@bibobonking/opensol 0.0.0-stage → 3.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.github/workflows/build.yml +25 -0
- package/README.md +74 -2
- package/dist/assets/index-BmN7pBji.css +1 -0
- package/dist/assets/index-DgNDjkOz.js +301 -0
- package/dist/favicon.svg +15 -0
- package/dist/index.html +55 -0
- package/dist/preview-host.html +33 -0
- package/index.html +54 -0
- package/package.json +43 -4
- package/postcss.config.js +6 -0
- package/public/favicon.svg +15 -0
- package/public/preview-host.html +33 -0
- package/shared/plugin-builder.test.mjs +43 -0
- package/shared/plugin-package.d.mts +34 -0
- package/shared/plugin-package.mjs +197 -0
- package/shared/plugin-package.test.mjs +94 -0
- package/src/App.tsx +152 -0
- package/src/agent/adapters/anthropic.ts +233 -0
- package/src/agent/adapters/gemini.ts +225 -0
- package/src/agent/adapters/openai-responses.ts +215 -0
- package/src/agent/adapters/openai.ts +200 -0
- package/src/agent/adapters/shared.ts +96 -0
- package/src/agent/approval.ts +20 -0
- package/src/agent/compact.ts +234 -0
- package/src/agent/index.ts +36 -0
- package/src/agent/model.ts +20 -0
- package/src/agent/prompt.ts +107 -0
- package/src/agent/queue.test.mjs +111 -0
- package/src/agent/queue.ts +84 -0
- package/src/agent/subagent.ts +109 -0
- package/src/agent/tools.ts +541 -0
- package/src/components/ChatView.tsx +403 -0
- package/src/components/CommandPalette.tsx +416 -0
- package/src/components/Composer.tsx +678 -0
- package/src/components/ContextBar.tsx +58 -0
- package/src/components/DeployModal.tsx +512 -0
- package/src/components/ErrorBoundary.tsx +75 -0
- package/src/components/HomeDashboard.tsx +189 -0
- package/src/components/Logo.tsx +41 -0
- package/src/components/Markdown.tsx +232 -0
- package/src/components/MessageItem.tsx +655 -0
- package/src/components/ModelPicker.tsx +487 -0
- package/src/components/PixleSol.tsx +243 -0
- package/src/components/PluginBuilder.tsx +285 -0
- package/src/components/PluginManager.tsx +341 -0
- package/src/components/PreviewPane.tsx +166 -0
- package/src/components/SettingsModal.tsx +2052 -0
- package/src/components/Sidebar.tsx +504 -0
- package/src/components/Splash.tsx +104 -0
- package/src/components/ToolCallCard.tsx +177 -0
- package/src/components/TopBar.tsx +182 -0
- package/src/components/TrajectoryView.tsx +178 -0
- package/src/components/WorkspacePanel.tsx +710 -0
- package/src/components/ui.tsx +311 -0
- package/src/core/kernel.ts +45 -0
- package/src/core/plugins/tools/fs.ts +219 -0
- package/src/core/plugins/tools/git.ts +83 -0
- package/src/core/plugins/tools/grep.ts +98 -0
- package/src/core/plugins/tools/shell.ts +88 -0
- package/src/core/plugins/tools/subagent.ts +36 -0
- package/src/core/plugins/tools/web.ts +97 -0
- package/src/core/services/agent-loop.ts +417 -0
- package/src/core/services/approval.ts +66 -0
- package/src/core/services/compaction.ts +45 -0
- package/src/core/services/llm.ts +32 -0
- package/src/core/services/sessions.ts +47 -0
- package/src/core/services/subagents.ts +15 -0
- package/src/core/services/system-prompt.ts +177 -0
- package/src/core/services/tools.ts +135 -0
- package/src/core/services/ui.ts +109 -0
- package/src/core/types.ts +139 -0
- package/src/data/providers.ts +125 -0
- package/src/data/skills.ts +68 -0
- package/src/index.css +776 -0
- package/src/lib/boot.ts +94 -0
- package/src/lib/context.ts +75 -0
- package/src/lib/conversation.test.mjs +64 -0
- package/src/lib/conversation.ts +59 -0
- package/src/lib/daemon.ts +475 -0
- package/src/lib/hooks.ts +33 -0
- package/src/lib/permissions.ts +60 -0
- package/src/lib/pixlesol.test.mjs +51 -0
- package/src/lib/pixlesol.ts +55 -0
- package/src/lib/plugin-folder.test.mjs +145 -0
- package/src/lib/plugin-folder.ts +96 -0
- package/src/lib/reasoning.ts +87 -0
- package/src/lib/sse.ts +75 -0
- package/src/lib/themes.test.mjs +72 -0
- package/src/lib/themes.ts +52 -0
- package/src/lib/usage.test.mjs +72 -0
- package/src/lib/usage.ts +155 -0
- package/src/lib/utils.ts +73 -0
- package/src/main.tsx +16 -0
- package/src/plugins/api.test.mjs +77 -0
- package/src/plugins/api.ts +113 -0
- package/src/plugins/bridge.d.mts +1 -0
- package/src/plugins/bridge.mjs +26 -0
- package/src/plugins/bridge.test.mjs +17 -0
- package/src/plugins/index.ts +52 -0
- package/src/plugins/preview.test.mjs +18 -0
- package/src/plugins/preview.ts +34 -0
- package/src/plugins/runtime.ts +194 -0
- package/src/plugins/types.ts +40 -0
- package/src/store/chats.ts +278 -0
- package/src/store/models.ts +120 -0
- package/src/store/settings.ts +445 -0
- package/src/store/ui.ts +132 -0
- package/src/store/workspace.ts +299 -0
- package/src/types.ts +337 -0
- package/src/vite-env.d.ts +1 -0
- package/tailwind.config.js +83 -0
- package/tsconfig.json +22 -0
- package/tsconfig.tsbuildinfo +1 -0
- package/vite.config.ts +19 -0
|
@@ -0,0 +1,301 @@
|
|
|
1
|
+
(function(){const i=document.createElement("link").relList;if(i&&i.supports&&i.supports("modulepreload"))return;for(const o of document.querySelectorAll('link[rel="modulepreload"]'))s(o);new MutationObserver(o=>{for(const u of o)if(u.type==="childList")for(const d of u.addedNodes)d.tagName==="LINK"&&d.rel==="modulepreload"&&s(d)}).observe(document,{childList:!0,subtree:!0});function a(o){const u={};return o.integrity&&(u.integrity=o.integrity),o.referrerPolicy&&(u.referrerPolicy=o.referrerPolicy),o.crossOrigin==="use-credentials"?u.credentials="include":o.crossOrigin==="anonymous"?u.credentials="omit":u.credentials="same-origin",u}function s(o){if(o.ep)return;o.ep=!0;const u=a(o);fetch(o.href,u)}})();function Pu(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Up={exports:{}},io={};var p1;function ZN(){if(p1)return io;p1=1;var e=Symbol.for("react.transitional.element"),i=Symbol.for("react.fragment");function a(s,o,u){var d=null;if(u!==void 0&&(d=""+u),o.key!==void 0&&(d=""+o.key),"key"in o){u={};for(var p in o)p!=="key"&&(u[p]=o[p])}else u=o;return o=u.ref,{$$typeof:e,type:s,key:d,ref:o!==void 0?o:null,props:u}}return io.Fragment=i,io.jsx=a,io.jsxs=a,io}var h1;function QN(){return h1||(h1=1,Up.exports=ZN()),Up.exports}var c=QN(),Bp={exports:{}},Ye={};var m1;function JN(){if(m1)return Ye;m1=1;var e=Symbol.for("react.transitional.element"),i=Symbol.for("react.portal"),a=Symbol.for("react.fragment"),s=Symbol.for("react.strict_mode"),o=Symbol.for("react.profiler"),u=Symbol.for("react.consumer"),d=Symbol.for("react.context"),p=Symbol.for("react.forward_ref"),m=Symbol.for("react.suspense"),g=Symbol.for("react.memo"),x=Symbol.for("react.lazy"),b=Symbol.for("react.activity"),v=Symbol.for("react.view_transition"),y=Symbol.iterator;function k(j){return j===null||typeof j!="object"?null:(j=y&&j[y]||j["@@iterator"],typeof j=="function"?j:null)}var N={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},_=Object.assign,S={};function C(j,ie,he){this.props=j,this.context=ie,this.refs=S,this.updater=he||N}C.prototype.isReactComponent={},C.prototype.setState=function(j,ie){if(typeof j!="object"&&typeof j!="function"&&j!=null)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,j,ie,"setState")},C.prototype.forceUpdate=function(j){this.updater.enqueueForceUpdate(this,j,"forceUpdate")};function M(){}M.prototype=C.prototype;function I(j,ie,he){this.props=j,this.context=ie,this.refs=S,this.updater=he||N}var F=I.prototype=new M;F.constructor=I,_(F,C.prototype),F.isPureReactComponent=!0;var R=Array.isArray;function A(){}var L={H:null,A:null,T:null,S:null},V=Object.prototype.hasOwnProperty;function D(j,ie,he){var Z=he.ref;return{$$typeof:e,type:j,key:ie,ref:Z!==void 0?Z:null,props:he}}function U(j,ie){return D(j.type,ie,j.props)}function ee(j){return typeof j=="object"&&j!==null&&j.$$typeof===e}function ue(j){var ie={"=":"=0",":":"=2"};return"$"+j.replace(/[=:]/g,function(he){return ie[he]})}var re=/\/+/g;function ne(j,ie){return typeof j=="object"&&j!==null&&j.key!=null?ue(""+j.key):ie.toString(36)}function P(j){switch(j.status){case"fulfilled":return j.value;case"rejected":throw j.reason;default:switch(typeof j.status=="string"?j.then(A,A):(j.status="pending",j.then(function(ie){j.status==="pending"&&(j.status="fulfilled",j.value=ie)},function(ie){j.status==="pending"&&(j.status="rejected",j.reason=ie)})),j.status){case"fulfilled":return j.value;case"rejected":throw j.reason}}throw j}function ae(j,ie,he,Z,we){var Ce=typeof j;(Ce==="undefined"||Ce==="boolean")&&(j=null);var J=!1;if(j===null)J=!0;else switch(Ce){case"bigint":case"string":case"number":J=!0;break;case"object":switch(j.$$typeof){case e:case i:J=!0;break;case x:return J=j._init,ae(J(j._payload),ie,he,Z,we)}}if(J)return we=we(j),J=Z===""?"."+ne(j,0):Z,R(we)?(he="",J!=null&&(he=J.replace(re,"$&/")+"/"),ae(we,ie,he,"",function(Dt){return Dt})):we!=null&&(ee(we)&&(we=U(we,he+(we.key==null||j&&j.key===we.key?"":(""+we.key).replace(re,"$&/")+"/")+J)),ie.push(we)),1;J=0;var ge=Z===""?".":Z+":";if(R(j))for(var ke=0;ke<j.length;ke++)Z=j[ke],Ce=ge+ne(Z,ke),J+=ae(Z,ie,he,Ce,we);else if(ke=k(j),typeof ke=="function")for(j=ke.call(j),ke=0;!(Z=j.next()).done;)Z=Z.value,Ce=ge+ne(Z,ke++),J+=ae(Z,ie,he,Ce,we);else if(Ce==="object"){if(typeof j.then=="function")return ae(P(j),ie,he,Z,we);throw ie=String(j),Error("Objects are not valid as a React child (found: "+(ie==="[object Object]"?"object with keys {"+Object.keys(j).join(", ")+"}":ie)+"). If you meant to render a collection of children, use an array instead.")}return J}function $(j,ie,he){if(j==null)return j;var Z=[],we=0;return ae(j,Z,"","",function(Ce){return ie.call(he,Ce,we++)}),Z}function de(j){if(j._status===-1){var ie=j._result,he=ie();he.then(function(Z){(j._status===0||j._status===-1)&&(j._status=1,j._result=Z,he.status===void 0&&(he.status="fulfilled",he.value=Z))},function(Z){(j._status===0||j._status===-1)&&(j._status=2,j._result=Z,he.status===void 0&&(he.status="rejected",he.reason=Z))}),j._status===-1&&(j._status=0,j._result=he)}if(j._status===1)return j._result.default;throw j._result}var O=typeof reportError=="function"?reportError:function(j){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var ie=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof j=="object"&&j!==null&&typeof j.message=="string"?String(j.message):String(j),error:j});if(!window.dispatchEvent(ie))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",j);return}console.error(j)};function Ie(j){var ie=L.T,he={};he.types=ie!==null?ie.types:null,L.T=he;try{var Z=j(),we=L.S;we!==null&&we(he,Z),typeof Z=="object"&&Z!==null&&typeof Z.then=="function"&&Z.then(A,O)}catch(Ce){O(Ce)}finally{ie!==null&&he.types!==null&&(ie.types=he.types),L.T=ie}}function fe(j){var ie=L.T;if(ie!==null){var he=ie.types;he===null?ie.types=[j]:he.indexOf(j)===-1&&he.push(j)}else Ie(fe.bind(null,j))}var T={map:$,forEach:function(j,ie,he){$(j,function(){ie.apply(this,arguments)},he)},count:function(j){var ie=0;return $(j,function(){ie++}),ie},toArray:function(j){return $(j,function(ie){return ie})||[]},only:function(j){if(!ee(j))throw Error("React.Children.only expected to receive a single React element child.");return j}};return Ye.Activity=b,Ye.Children=T,Ye.Component=C,Ye.Fragment=a,Ye.Profiler=o,Ye.PureComponent=I,Ye.StrictMode=s,Ye.Suspense=m,Ye.ViewTransition=v,Ye.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=L,Ye.__COMPILER_RUNTIME={__proto__:null,c:function(j){return L.H.useMemoCache(j)}},Ye.addTransitionType=fe,Ye.cache=function(j){return function(){return j.apply(null,arguments)}},Ye.cacheSignal=function(){return null},Ye.cloneElement=function(j,ie,he){if(j==null)throw Error("The argument must be a React element, but you passed "+j+".");var Z=_({},j.props),we=j.key;if(ie!=null)for(Ce in ie.key!==void 0&&(we=""+ie.key),ie)!V.call(ie,Ce)||Ce==="key"||Ce==="__self"||Ce==="__source"||Ce==="ref"&&ie.ref===void 0||(Z[Ce]=ie[Ce]);var Ce=arguments.length-2;if(Ce===1)Z.children=he;else if(1<Ce){for(var J=Array(Ce),ge=0;ge<Ce;ge++)J[ge]=arguments[ge+2];Z.children=J}return D(j.type,we,Z)},Ye.createContext=function(j){return j={$$typeof:d,_currentValue:j,_currentValue2:j,_threadCount:0,Provider:null,Consumer:null},j.Provider=j,j.Consumer={$$typeof:u,_context:j},j},Ye.createElement=function(j,ie,he){var Z,we={},Ce=null;if(ie!=null)for(Z in ie.key!==void 0&&(Ce=""+ie.key),ie)V.call(ie,Z)&&Z!=="key"&&Z!=="__self"&&Z!=="__source"&&(we[Z]=ie[Z]);var J=arguments.length-2;if(J===1)we.children=he;else if(1<J){for(var ge=Array(J),ke=0;ke<J;ke++)ge[ke]=arguments[ke+2];we.children=ge}if(j&&j.defaultProps)for(Z in J=j.defaultProps,J)we[Z]===void 0&&(we[Z]=J[Z]);return D(j,Ce,we)},Ye.createRef=function(){return{current:null}},Ye.forwardRef=function(j){return{$$typeof:p,render:j}},Ye.isValidElement=ee,Ye.lazy=function(j){return{$$typeof:x,_payload:{_status:-1,_result:j},_init:de}},Ye.memo=function(j,ie){return{$$typeof:g,type:j,compare:ie===void 0?null:ie}},Ye.startTransition=Ie,Ye.unstable_useCacheRefresh=function(){return L.H.useCacheRefresh()},Ye.use=function(j){return L.H.use(j)},Ye.useActionState=function(j,ie,he){return L.H.useActionState(j,ie,he)},Ye.useCallback=function(j,ie){return L.H.useCallback(j,ie)},Ye.useContext=function(j){return L.H.useContext(j)},Ye.useDebugValue=function(){},Ye.useDeferredValue=function(j,ie){return L.H.useDeferredValue(j,ie)},Ye.useEffect=function(j,ie){return L.H.useEffect(j,ie)},Ye.useEffectEvent=function(j){return L.H.useEffectEvent(j)},Ye.useId=function(){return L.H.useId()},Ye.useImperativeHandle=function(j,ie,he){return L.H.useImperativeHandle(j,ie,he)},Ye.useInsertionEffect=function(j,ie){return L.H.useInsertionEffect(j,ie)},Ye.useLayoutEffect=function(j,ie){return L.H.useLayoutEffect(j,ie)},Ye.useMemo=function(j,ie){return L.H.useMemo(j,ie)},Ye.useOptimistic=function(j,ie){return L.H.useOptimistic(j,ie)},Ye.useReducer=function(j,ie,he){return L.H.useReducer(j,ie,he)},Ye.useRef=function(j){return L.H.useRef(j)},Ye.useState=function(j){return L.H.useState(j)},Ye.useSyncExternalStore=function(j,ie,he){return L.H.useSyncExternalStore(j,ie,he)},Ye.useTransition=function(){return L.H.useTransition()},Ye.version="19.3.1",Ye}var g1;function gm(){return g1||(g1=1,Bp.exports=JN()),Bp.exports}var q=gm();const $p=Pu(q);var Hp={exports:{}},ao={},Pp={exports:{}},Fp={};var b1;function WN(){return b1||(b1=1,(function(e){function i(P,ae){var $=P.length;P.push(ae);e:for(;0<$;){var de=$-1>>>1,O=P[de];if(0<o(O,ae))P[de]=ae,P[$]=O,$=de;else break e}}function a(P){return P.length===0?null:P[0]}function s(P){if(P.length===0)return null;var ae=P[0],$=P.pop();if($!==ae){P[0]=$;e:for(var de=0,O=P.length,Ie=O>>>1;de<Ie;){var fe=2*(de+1)-1,T=P[fe],j=fe+1,ie=P[j];if(0>o(T,$))j<O&&0>o(ie,T)?(P[de]=ie,P[j]=$,de=j):(P[de]=T,P[fe]=$,de=fe);else if(j<O&&0>o(ie,$))P[de]=ie,P[j]=$,de=j;else break e}}return ae}function o(P,ae){var $=P.sortIndex-ae.sortIndex;return $!==0?$:P.id-ae.id}if(e.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var u=performance;e.unstable_now=function(){return u.now()}}else{var d=Date,p=d.now();e.unstable_now=function(){return d.now()-p}}var m=[],g=[],x=1,b=null,v=3,y=!1,k=!1,N=!1,_=!1,S=typeof setTimeout=="function"?setTimeout:null,C=typeof clearTimeout=="function"?clearTimeout:null,M=typeof setImmediate<"u"?setImmediate:null;function I(P){for(var ae=a(g);ae!==null;){if(ae.callback===null)s(g);else if(ae.startTime<=P)s(g),ae.sortIndex=ae.expirationTime,i(m,ae);else break;ae=a(g)}}function F(P){if(N=!1,I(P),!k)if(a(m)!==null)k=!0,R||(R=!0,ee());else{var ae=a(g);ae!==null&&ne(F,ae.startTime-P)}}var R=!1,A=-1,L=5,V=-1;function D(){return _?!0:!(e.unstable_now()-V<L)}function U(){if(_=!1,R){var P=e.unstable_now();V=P;var ae=!0;try{e:{k=!1,N&&(N=!1,C(A),A=-1),y=!0;var $=v;try{t:{for(I(P),b=a(m);b!==null&&!(b.expirationTime>P&&D());){var de=b.callback;if(typeof de=="function"){b.callback=null,v=b.priorityLevel;var O=de(b.expirationTime<=P);if(P=e.unstable_now(),typeof O=="function"){b.callback=O,I(P),ae=!0;break t}b===a(m)&&s(m),I(P)}else s(m);b=a(m)}if(b!==null)ae=!0;else{var Ie=a(g);Ie!==null&&ne(F,Ie.startTime-P),ae=!1}}break e}finally{b=null,v=$,y=!1}ae=void 0}}finally{ae?ee():R=!1}}}var ee;if(typeof M=="function")ee=function(){M(U)};else if(typeof MessageChannel<"u"){var ue=new MessageChannel,re=ue.port2;ue.port1.onmessage=U,ee=function(){re.postMessage(null)}}else ee=function(){S(U,0)};function ne(P,ae){A=S(function(){P(e.unstable_now())},ae)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(P){P.callback=null},e.unstable_forceFrameRate=function(P){0>P||125<P?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):L=0<P?Math.floor(1e3/P):5},e.unstable_getCurrentPriorityLevel=function(){return v},e.unstable_next=function(P){switch(v){case 1:case 2:case 3:var ae=3;break;default:ae=v}var $=v;v=ae;try{return P()}finally{v=$}},e.unstable_requestPaint=function(){_=!0},e.unstable_runWithPriority=function(P,ae){switch(P){case 1:case 2:case 3:case 4:case 5:break;default:P=3}var $=v;v=P;try{return ae()}finally{v=$}},e.unstable_scheduleCallback=function(P,ae,$){var de=e.unstable_now();switch(typeof $=="object"&&$!==null?($=$.delay,$=typeof $=="number"&&0<$?de+$:de):$=de,P){case 1:var O=-1;break;case 2:O=250;break;case 5:O=1073741823;break;case 4:O=1e4;break;default:O=5e3}return O=$+O,P={id:x++,callback:ae,priorityLevel:P,startTime:$,expirationTime:O,sortIndex:-1},$>de?(P.sortIndex=$,i(g,P),a(m)===null&&P===a(g)&&(N?(C(A),A=-1):N=!0,ne(F,$-de))):(P.sortIndex=O,i(m,P),k||y||(k=!0,R||(R=!0,ee()))),P},e.unstable_shouldYield=D,e.unstable_wrapCallback=function(P){var ae=v;return function(){var $=v;v=ae;try{return P.apply(this,arguments)}finally{v=$}}}})(Fp)),Fp}var x1;function eS(){return x1||(x1=1,Pp.exports=WN()),Pp.exports}var qp={exports:{}},_n={};var y1;function tS(){if(y1)return _n;y1=1;var e=gm();function i(x){var b="https://react.dev/errors/"+x;if(1<arguments.length){b+="?args[]="+encodeURIComponent(arguments[1]);for(var v=2;v<arguments.length;v++)b+="&args[]="+encodeURIComponent(arguments[v])}return"Minified React error #"+x+"; visit "+b+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function a(){}var s={d:{f:a,r:function(){throw Error(i(522))},D:a,C:a,L:a,m:a,X:a,S:a,M:a},p:0,findDOMNode:null},o=Symbol.for("react.portal"),u=Symbol.for("react.recoverable"),d=Symbol.for("react.optimistic_key");function p(x,b,v){var y=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:o,key:y==null?null:y===d?d:""+y,children:x,containerInfo:b,implementation:v}}var m=e.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function g(x,b){if(x==="font")return"";if(typeof b=="string")return b==="use-credentials"?b:""}return _n.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=s,_n.browser=function(x){return{$$typeof:u,_reason:x}},_n.createPortal=function(x,b){var v=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!b||b.nodeType!==1&&b.nodeType!==9&&b.nodeType!==11)throw Error(i(299));return p(x,b,null,v)},_n.flushSync=function(x){var b=m.T,v=s.p;try{if(m.T=null,s.p=2,x)return x()}finally{m.T=b,s.p=v,s.d.f()}},_n.preconnect=function(x,b){typeof x=="string"&&(b?(b=b.crossOrigin,b=typeof b=="string"?b==="use-credentials"?b:"":void 0):b=null,s.d.C(x,b))},_n.prefetchDNS=function(x){typeof x=="string"&&s.d.D(x)},_n.preinit=function(x,b){if(typeof x=="string"&&b&&typeof b.as=="string"){var v=b.as,y=g(v,b.crossOrigin),k=typeof b.integrity=="string"?b.integrity:void 0,N=typeof b.fetchPriority=="string"?b.fetchPriority:void 0;v==="style"?s.d.S(x,typeof b.precedence=="string"?b.precedence:void 0,{crossOrigin:y,integrity:k,fetchPriority:N}):v==="script"&&s.d.X(x,{crossOrigin:y,integrity:k,fetchPriority:N,nonce:typeof b.nonce=="string"?b.nonce:void 0})}},_n.preinitModule=function(x,b){if(typeof x=="string")if(typeof b=="object"&&b!==null){if(b.as==null||b.as==="script"){var v=g(b.as,b.crossOrigin);s.d.M(x,{crossOrigin:v,integrity:typeof b.integrity=="string"?b.integrity:void 0,nonce:typeof b.nonce=="string"?b.nonce:void 0,fetchPriority:typeof b.fetchPriority=="string"?b.fetchPriority:void 0})}}else b==null&&s.d.M(x)},_n.preload=function(x,b){if(typeof x=="string"&&typeof b=="object"&&b!==null&&typeof b.as=="string"){var v=b.as,y=g(v,b.crossOrigin);s.d.L(x,v,{crossOrigin:y,integrity:typeof b.integrity=="string"?b.integrity:void 0,nonce:typeof b.nonce=="string"?b.nonce:void 0,type:typeof b.type=="string"?b.type:void 0,fetchPriority:typeof b.fetchPriority=="string"?b.fetchPriority:void 0,referrerPolicy:typeof b.referrerPolicy=="string"?b.referrerPolicy:void 0,imageSrcSet:typeof b.imageSrcSet=="string"?b.imageSrcSet:void 0,imageSizes:typeof b.imageSizes=="string"?b.imageSizes:void 0,media:typeof b.media=="string"?b.media:void 0})}},_n.preloadModule=function(x,b){if(typeof x=="string")if(b){var v=g(b.as,b.crossOrigin);s.d.m(x,{as:typeof b.as=="string"&&b.as!=="script"?b.as:void 0,crossOrigin:v,integrity:typeof b.integrity=="string"?b.integrity:void 0,nonce:typeof b.nonce=="string"?b.nonce:void 0,fetchPriority:typeof b.fetchPriority=="string"?b.fetchPriority:void 0})}else s.d.m(x)},_n.requestFormReset=function(x){s.d.r(x)},_n.unstable_batchedUpdates=function(x,b){return x(b)},_n.useFormState=function(x,b,v){return m.H.useFormState(x,b,v)},_n.useFormStatus=function(){return m.H.useHostTransitionStatus()},_n.version="19.3.1",_n}var v1;function cv(){if(v1)return qp.exports;v1=1;function e(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(i){console.error(i)}}return e(),qp.exports=tS(),qp.exports}var w1;function nS(){if(w1)return ao;w1=1;var e=eS(),i=gm(),a=cv();function s(t){var n="https://react.dev/errors/"+t;if(1<arguments.length){n+="?args[]="+encodeURIComponent(arguments[1]);for(var r=2;r<arguments.length;r++)n+="&args[]="+encodeURIComponent(arguments[r])}return"Minified React error #"+t+"; visit "+n+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function o(t){return!(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11)}function u(t){for(var n=t,r=n;r&&!r.alternate;)n=r,(n.flags&4098)!==0&&(t=n.return),r=n.return;for(;n.return;)n=n.return;return n.tag===3?t:null}function d(t){if(t.tag===13){var n=t.memoizedState;if(n===null&&(t=t.alternate,t!==null&&(n=t.memoizedState)),n!==null)return n.dehydrated}return null}function p(t){if(t.tag===31){var n=t.memoizedState;if(n===null&&(t=t.alternate,t!==null&&(n=t.memoizedState)),n!==null)return n.dehydrated}return null}function m(t){if(u(t)!==t)throw Error(s(188))}function g(t){var n=t.alternate;if(!n){if(n=u(t),n===null)throw Error(s(188));return n!==t?null:t}for(var r=t,l=n;;){var f=r.return;if(f===null)break;var h=f.alternate;if(h===null){if(l=f.return,l!==null){r=l;continue}break}if(f.child===h.child){for(h=f.child;h;){if(h===r)return m(f),t;if(h===l)return m(f),n;h=h.sibling}throw Error(s(188))}if(r.return!==l.return)r=f,l=h;else{for(var w=!1,E=f.child;E;){if(E===r){w=!0,r=f,l=h;break}if(E===l){w=!0,l=f,r=h;break}E=E.sibling}if(!w){for(E=h.child;E;){if(E===r){w=!0,r=h,l=f;break}if(E===l){w=!0,l=h,r=f;break}E=E.sibling}if(!w)throw Error(s(189))}}if(r.alternate!==l)throw Error(s(190))}if(r.tag!==3)throw Error(s(188));return r.stateNode.current===r?t:n}function x(t){var n=t.tag;if(n===5||n===26||n===27||n===6)return t;for(t=t.child;t!==null;){if(n=x(t),n!==null)return n;t=t.sibling}return null}function b(t,n,r,l,f,h){for(;t!==null;){if((t.tag===5||t.tag===27||t.tag===6)&&r(t,l,f,h)||(t.tag!==22||t.memoizedState===null)&&(n||t.tag!==5&&t.tag!==27)&&b(t.child,n,r,l,f,h))return!0;t=t.sibling}return!1}function v(t){for(t=t.return;t!==null;){if(t.tag===3||t.tag===5||t.tag===27)return t;t=t.return}return null}function y(t){var n=!1;for(t=t.return;t!==null&&(t.tag===4&&(n=!0),!(t.tag===3||t.tag===5||t.tag===27));)t=t.return;return n}function k(t){var n=[null,null],r=v(t);return r===null||N(n,t,r.child,{foundSelf:!1}),n}function N(t,n,r,l){for(;r!==null;){if(r===n)l.foundSelf=!0;else if(r.tag===5||r.tag===27||r.tag===6){if(l.foundSelf)return t[1]=r,!0;t[0]=r}else if((r.tag!==22||r.memoizedState===null)&&N(t,n,r.child,l))return!0;r=r.sibling}return!1}function _(t){switch(t.tag){case 5:case 27:case 6:return t.stateNode;case 3:return t.stateNode.containerInfo;default:throw Error(s(559))}}var S=null,C=null;function M(t,n,r){return t===r?!0:t===n?(S=t,!0):!1}function I(t,n,r){return t===r?(C=t,!1):t===n?(C!==null&&(S=t),!0):!1}function F(t){if(t===null)return null;do t=t===null?null:t.return;while(t&&t.tag!==5&&t.tag!==27&&t.tag!==3);return t||null}function R(t,n,r){for(var l=0,f=t;f;f=r(f))l++;f=0;for(var h=n;h;h=r(h))f++;for(;0<l-f;)t=r(t),l--;for(;0<f-l;)n=r(n),f--;for(;l--;){if(t===n||n!==null&&t===n.alternate)return t;t=r(t),n=r(n)}return null}var A=Object.assign,L=Symbol.for("react.element"),V=Symbol.for("react.transitional.element"),D=Symbol.for("react.portal"),U=Symbol.for("react.fragment"),ee=Symbol.for("react.strict_mode"),ue=Symbol.for("react.profiler"),re=Symbol.for("react.consumer"),ne=Symbol.for("react.context"),P=Symbol.for("react.forward_ref"),ae=Symbol.for("react.suspense"),$=Symbol.for("react.suspense_list"),de=Symbol.for("react.memo"),O=Symbol.for("react.lazy"),Ie=Symbol.for("react.activity"),fe=Symbol.for("react.legacy_hidden"),T=Symbol.for("react.memo_cache_sentinel"),j=Symbol.for("react.view_transition"),ie=Symbol.for("react.recoverable"),he=Symbol.iterator;function Z(t){return t===null||typeof t!="object"?null:(t=he&&t[he]||t["@@iterator"],typeof t=="function"?t:null)}var we=Symbol.for("react.client.reference");function Ce(t){if(t==null)return null;if(typeof t=="function")return t.$$typeof===we?null:t.displayName||t.name||null;if(typeof t=="string")return t;switch(t){case U:return"Fragment";case ue:return"Profiler";case ee:return"StrictMode";case ae:return"Suspense";case $:return"SuspenseList";case Ie:return"Activity";case j:return"ViewTransition"}if(typeof t=="object")switch(t.$$typeof){case D:return"Portal";case ne:return t.displayName||"Context";case re:return(t._context.displayName||"Context")+".Consumer";case P:var n=t.render;return t=t.displayName,t||(t=n.displayName||n.name||"",t=t!==""?"ForwardRef("+t+")":"ForwardRef"),t;case de:return n=t.displayName||null,n!==null?n:Ce(t.type)||"Memo";case O:n=t._payload,t=t._init;try{return Ce(t(n))}catch{}}return null}var J=Array.isArray,ge=i.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,ke=a.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,Dt={pending:!1,data:null,method:null,action:null},Ut=[],$t=-1;function Fe(t){return{current:t}}function vt(t){0>$t||(t.current=Ut[$t],Ut[$t]=null,$t--)}function et(t,n){$t++,Ut[$t]=t.current,t.current=n}var cn=Fe(null),$n=Fe(null),jn=Fe(null),oe=Fe(null);function Xe(t,n){switch(et(jn,n),et($n,t),et(cn,null),n.nodeType){case 9:case 11:t=(t=n.documentElement)&&(t=t.namespaceURI)?ky(t):0;break;default:if(t=n.tagName,n=n.namespaceURI)n=ky(n),t=Ey(n,t);else switch(t){case"svg":t=1;break;case"math":t=2;break;default:t=0}}vt(cn),et(cn,t)}function pt(){vt(cn),vt($n),vt(jn)}function ft(t){var n=t.memoizedState;n!==null&&(Ps._currentValue=n.memoizedState,et(oe,t)),n=cn.current;var r=Ey(n,t.type);n!==r&&(et($n,t),et(cn,r))}function rn(t){$n.current===t&&(vt(cn),vt($n)),oe.current===t&&(vt(oe),Ps._currentValue=Dt)}var te,ye;function Ue(t){if(te===void 0)try{throw Error()}catch(r){var n=r.stack.trim().match(/\n( *(at )?)/);te=n&&n[1]||"",ye=-1<r.stack.indexOf(`
|
|
2
|
+
at`)?" (<anonymous>)":-1<r.stack.indexOf("@")?"@unknown:0:0":""}return`
|
|
3
|
+
`+te+t+ye}var qe=!1;function Yt(t,n){if(!t||qe)return"";qe=!0;var r=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var l={DetermineComponentFrameRoot:function(){try{if(n){var le=function(){throw Error()};if(Object.defineProperty(le.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(le,[])}catch(_e){var G=_e}Reflect.construct(t,[],le)}else{try{le.call()}catch(_e){G=_e}le=!1;try{var Q=Object.getOwnPropertyDescriptor(t.prototype,"props");Object.defineProperty(t.prototype,"props",{configurable:!0,set:function(){throw Error()}}),le=!0,new t}finally{le&&(Q!==void 0?Object.defineProperty(t.prototype,"props",Q):delete t.prototype.props)}}}else{try{throw Error()}catch(_e){G=_e}(le=t())&&typeof le.catch=="function"&&le.catch(function(){})}}catch(_e){if(_e&&G&&typeof _e.stack=="string")return[_e.stack,G.stack]}return[null,null]}};l.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var f=Object.getOwnPropertyDescriptor(l.DetermineComponentFrameRoot,"name");f&&f.configurable&&Object.defineProperty(l.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"});var h=l.DetermineComponentFrameRoot(),w=h[0],E=h[1];if(w&&E){var z=w.split(`
|
|
4
|
+
`),K=E.split(`
|
|
5
|
+
`);for(f=l=0;l<z.length&&!z[l].includes("DetermineComponentFrameRoot");)l++;for(;f<K.length&&!K[f].includes("DetermineComponentFrameRoot");)f++;if(l===z.length||f===K.length)for(l=z.length-1,f=K.length-1;1<=l&&0<=f&&z[l]!==K[f];)f--;for(;1<=l&&0<=f;l--,f--)if(z[l]!==K[f]){if(l!==1||f!==1)do if(l--,f--,0>f||z[l]!==K[f]){var W=`
|
|
6
|
+
`+z[l].replace(" at new "," at ");return t.displayName&&W.includes("<anonymous>")&&(W=W.replace("<anonymous>",t.displayName)),W}while(1<=l&&0<=f);break}}}finally{qe=!1,Error.prepareStackTrace=r}return(r=t?t.displayName||t.name:"")?Ue(r):""}function wt(t,n){switch(t.tag){case 26:case 27:case 5:return Ue(t.type);case 16:return Ue("Lazy");case 13:return t.child!==n&&n!==null?Ue("Suspense Fallback"):Ue("Suspense");case 19:return Ue("SuspenseList");case 0:case 15:return Yt(t.type,!1);case 11:return Yt(t.type.render,!1);case 1:return Yt(t.type,!0);case 31:return Ue("Activity");case 30:return Ue("ViewTransition");default:return""}}function sn(t){try{var n="",r=null;do n+=wt(t,r),r=t,t=t.return;while(t);return n}catch(l){return`
|
|
7
|
+
Error generating stack: `+l.message+`
|
|
8
|
+
`+l.stack}}var gn=Object.prototype.hasOwnProperty,yi=e.unstable_scheduleCallback,vi=e.unstable_cancelCallback,na=e.unstable_shouldYield,Oa=e.unstable_requestPaint,Kt=e.unstable_now,un=e.unstable_getCurrentPriorityLevel,wi=e.unstable_ImmediatePriority,Rn=e.unstable_UserBlockingPriority,ki=e.unstable_NormalPriority,B=e.unstable_LowPriority,ce=e.unstable_IdlePriority,Se=e.log,Ge=e.unstable_setDisableYieldValue,Ot=null,ot=null;function Ae(t){if(typeof Se=="function"&&Ge(t),ot&&typeof ot.setStrictMode=="function")try{ot.setStrictMode(Ot,t)}catch{}}var Ne=Math.clz32?Math.clz32:Ht,Pe=Math.log,Vt=Math.LN2;function Ht(t){return t>>>=0,t===0?32:31-(Pe(t)/Vt|0)|0}var Li=256,Ma=262144,ja=4194304;function ia(t){var n=t&42;if(n!==0)return n;switch(t&-t){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return t&-t;case 262144:case 524288:case 1048576:case 2097152:return t&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return t&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return t}}function Ra(t,n,r){var l=t.pendingLanes;if(l===0)return 0;var f=0,h=t.suspendedLanes,w=t.pingedLanes;t=t.warmLanes;var E=l&134217727;return E!==0?(l=E&~h,l!==0?f=ia(l):(w&=E,w!==0?f=ia(w):r||(r=E&~t,r!==0&&(f=ia(r))))):(E=l&~h,E!==0?f=ia(E):w!==0?f=ia(w):r||(r=l&~t,r!==0&&(f=ia(r)))),f===0?0:n!==0&&n!==f&&(n&h)===0&&(h=f&-f,r=n&-n,h>=r||h===32&&(r&4194048)!==0)?n:f}function br(t,n){return(t.pendingLanes&~(t.suspendedLanes&~t.pingedLanes)&n)===0}function Do(t,n){(n&8)!==0&&(n|=n&32);var r=t.entangledLanes;if(r!==0)for(t=t.entanglements,r&=n;0<r;){var l=31-Ne(r),f=1<<l;n|=t[l],r&=~f}return n}function hd(t,n){switch(t){case 1:case 2:case 4:case 8:case 64:return n+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return n+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function dl(){var t=ja;return ja<<=1,(ja&62914560)===0&&(ja=4194304),t}function Da(t){for(var n=[],r=0;31>r;r++)n.push(t);return n}function xr(t,n){t.pendingLanes|=n,n!==268435456&&(t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0)}function md(t,n,r,l,f,h){var w=t.pendingLanes;t.pendingLanes=r,t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0,t.expiredLanes&=r,t.entangledLanes&=r,t.errorRecoveryDisabledLanes&=r,t.shellSuspendCounter=0;var E=t.entanglements,z=t.expirationTimes,K=t.hiddenUpdates;for(r=w&~r;0<r;){var W=31-Ne(r),le=1<<W;E[W]=0,z[W]=-1;var G=K[W];if(G!==null)for(K[W]=null,W=0;W<G.length;W++){var Q=G[W];Q!==null&&(Q.lane&=-536870913)}r&=~le}l!==0&&zo(t,l,0),h!==0&&f===0&&t.tag!==0&&(t.suspendedLanes|=h&~(w&~n))}function zo(t,n,r){t.pendingLanes|=n,t.suspendedLanes&=~n;var l=31-Ne(n);t.entangledLanes|=n,t.entanglements[l]=t.entanglements[l]|1073741824|r&261930}function Ei(t,n){var r=t.entangledLanes|=n;for(t=t.entanglements;r;){var l=31-Ne(r),f=1<<l;f&n|t[l]&n&&(t[l]|=n),r&=~f}}function fl(t,n){var r=n&-n;return r=(r&42)!==0?1:is(r),(r&(t.suspendedLanes|n))!==0?0:r}function is(t){switch(t){case 2:t=1;break;case 8:t=4;break;case 32:t=16;break;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:t=128;break;case 268435456:t=134217728;break;default:t=0}return t}function pl(t){return t&=-t,2<t?8<t?(t&134217727)!==0?32:268435456:8:2}function Lo(){var t=ke.p;return t!==0?t:(t=window.event,t===void 0?32:s1(t.type))}function Io(t,n){var r=ke.p;try{return ke.p=t,n()}finally{ke.p=r}}var Hn=Math.random().toString(36).slice(2),ln="__reactFiber$"+Hn,me="__reactProps$"+Hn,De="__reactContainer$"+Hn,it="__reactEvents$"+Hn,St="__reactListeners$"+Hn,qt="__reactHandles$"+Hn,Pn="__reactResources$"+Hn,Fn="__reactMarker$"+Hn,aa="__reactLoad$"+Hn;function dn(t){delete t[ln],delete t[me],delete t[St],delete t[qt]}function fn(t){var n;if(n=t[ln])return n;for(var r=t.parentNode;r;){if(n=r[De]||r[ln]){if(r=n.alternate,n.child!==null||r!==null&&r.child!==null)for(t=$y(t);t!==null;){if(r=t[ln])return r;t=$y(t)}return n}t=r,r=t.parentNode}return null}function ra(t){if(t=t[ln]||t[De]){var n=t.tag;if(n===5||n===6||n===13||n===31||n===26||n===27||n===3)return t}return null}function za(t){var n=t.tag;if(n===5||n===26||n===27||n===6)return t.stateNode;throw Error(s(33))}function sa(t){var n=t[Pn];return n||(n=t[Pn]={hoistableStyles:new Map,hoistableScripts:new Map}),n}function Xt(t){t[Fn]=!0}function Uo(t){t[aa]=void 0}var Bo=new Set,$o={};function si(t,n){la(t,n),la(t+"Capture",n)}function la(t,n){for($o[t]=n,t=0;t<n.length;t++)Bo.add(n[t])}var li=RegExp("^[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD][:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$"),Ho={},as={};function Ke(t){return gn.call(as,t)?!0:gn.call(Ho,t)?!1:li.test(t)?as[t]=!0:(Ho[t]=!0,!1)}var ct=!1;function Zt(){var t=ct;return ct=!1,t}function mt(t,n,r){if(Ke(n))if(r===null)t.removeAttribute(n);else{switch(typeof r){case"undefined":case"function":case"symbol":t.removeAttribute(n);return;case"boolean":var l=n.toLowerCase().slice(0,5);if(l!=="data-"&&l!=="aria-"){t.removeAttribute(n);return}}t.setAttribute(n,r)}}function oa(t,n,r){if(r===null)t.removeAttribute(n);else{switch(typeof r){case"undefined":case"function":case"symbol":case"boolean":t.removeAttribute(n);return}t.setAttribute(n,r)}}function bn(t,n,r,l){if(l===null)t.removeAttribute(r);else{switch(typeof l){case"undefined":case"function":case"symbol":case"boolean":t.removeAttribute(r);return}t.setAttributeNS(n,r,l)}}function xn(t){switch(typeof t){case"bigint":case"boolean":case"number":case"string":case"undefined":return t;case"object":return t;default:return""}}function rs(t){var n=t.type;return(t=t.nodeName)&&t.toLowerCase()==="input"&&(n==="checkbox"||n==="radio")}function Te(t,n,r){var l=Object.getOwnPropertyDescriptor(t.constructor.prototype,n);if(!t.hasOwnProperty(n)&&typeof l<"u"&&typeof l.get=="function"&&typeof l.set=="function"){var f=l.get,h=l.set;return Object.defineProperty(t,n,{configurable:!0,get:function(){return f.call(this)},set:function(w){r=""+w,h.call(this,w)}}),Object.defineProperty(t,n,{enumerable:l.enumerable}),{getValue:function(){return r},setValue:function(w){r=""+w},stopTracking:function(){t._valueTracker=null,delete t[n]}}}}function ze(t){if(!t._valueTracker){var n=rs(t)?"checked":"value";t._valueTracker=Te(t,n,""+t[n])}}function Ze(t){if(!t)return!1;var n=t._valueTracker;if(!n)return!0;var r=n.getValue(),l="";return t&&(l=rs(t)?t.checked?"true":"false":t.value),t=l,t!==r?(n.setValue(t),!0):!1}var gt=/[\n"\\]/g;function kt(t){return t.replace(gt,function(n){return"\\"+n.charCodeAt(0).toString(16)+" "})}function Qn(t,n,r,l,f,h,w,E){t.name="",w!=null&&typeof w!="function"&&typeof w!="symbol"&&typeof w!="boolean"?t.type=w:t.removeAttribute("type"),n!=null?w==="number"?(n===0&&t.value===""||t.value!=n)&&(t.value=""+xn(n)):t.value!==""+xn(n)&&(t.value=""+xn(n)):w!=="submit"&&w!=="reset"||t.removeAttribute("value"),n!=null?w==="number"&&t.value==n?hl(t,xn(t.value)):hl(t,xn(n)):r!=null?hl(t,xn(r)):l!=null&&t.removeAttribute("value"),f==null&&h!=null&&(t.defaultChecked=!!h),f!=null&&(t.checked=f&&typeof f!="function"&&typeof f!="symbol"),E!=null&&typeof E!="function"&&typeof E!="symbol"&&typeof E!="boolean"?t.name=""+xn(E):t.removeAttribute("name")}function Po(t,n,r,l,f,h,w,E){if(h!=null&&typeof h!="function"&&typeof h!="symbol"&&typeof h!="boolean"&&(t.type=h),n!=null||r!=null){if(!(h!=="submit"&&h!=="reset"||n!=null)){ze(t);return}r=r!=null?""+xn(r):"",n=n!=null?""+xn(n):r,E||n===t.value||(t.value=n),t.defaultValue=n}l=l??f,l=typeof l!="function"&&typeof l!="symbol"&&!!l,t.checked=E?t.checked:!!l,t.defaultChecked=!!l,w!=null&&typeof w!="function"&&typeof w!="symbol"&&typeof w!="boolean"&&(t.name=w),ze(t)}function hl(t,n){t.defaultValue!==""+n&&(t.defaultValue=""+n)}function ss(t,n,r,l){if(t=t.options,n){n={};for(var f=0;f<r.length;f++)n["$"+r[f]]=!0;for(r=0;r<t.length;r++)f=n.hasOwnProperty("$"+t[r].value),t[r].selected!==f&&(t[r].selected=f),f&&l&&(t[r].defaultSelected=!0)}else{for(r=""+xn(r),n=null,f=0;f<t.length;f++){if(t[f].value===r){t[f].selected=!0,l&&(t[f].defaultSelected=!0);return}n!==null||t[f].disabled||(n=t[f])}n!==null&&(n.selected=!0)}}function fg(t,n,r){if(n!=null&&(n=""+xn(n),n!==t.value&&(t.value=n),r==null)){t.defaultValue!==n&&(t.defaultValue=n);return}t.defaultValue=r!=null?""+xn(r):""}function pg(t,n,r,l){if(n==null){if(l!=null){if(r!=null)throw Error(s(92));if(J(l)){if(1<l.length)throw Error(s(93));l=l[0]}r=l}r==null&&(r=""),n=r}r=xn(n),t.defaultValue=r,l=t.textContent,l===r&&l!==""&&l!==null&&(t.value=l),ze(t)}function ls(t,n){if(n){var r=t.firstChild;if(r&&r===t.lastChild&&r.nodeType===3){r.nodeValue=n;return}}t.textContent=n}var xE=new Set("animationIterationCount aspectRatio borderImageOutset borderImageSlice borderImageWidth boxFlex boxFlexGroup boxOrdinalGroup columnCount columns flex flexGrow flexPositive flexShrink flexNegative flexOrder gridArea gridRow gridRowEnd gridRowSpan gridRowStart gridColumn gridColumnEnd gridColumnSpan gridColumnStart fontWeight lineClamp lineHeight opacity order orphans scale tabSize widows zIndex zoom fillOpacity floodOpacity stopOpacity strokeDasharray strokeDashoffset strokeMiterlimit strokeOpacity strokeWidth MozAnimationIterationCount MozBoxFlex MozBoxFlexGroup MozLineClamp msAnimationIterationCount msFlex msZoom msFlexGrow msFlexNegative msFlexOrder msFlexPositive msFlexShrink msGridColumn msGridColumnSpan msGridRow msGridRowSpan WebkitAnimationIterationCount WebkitBoxFlex WebKitBoxFlexGroup WebkitBoxOrdinalGroup WebkitColumnCount WebkitColumns WebkitFlex WebkitFlexGrow WebkitFlexPositive WebkitFlexShrink WebkitLineClamp".split(" "));function hg(t,n,r){var l=n.indexOf("--")===0;r==null||typeof r=="boolean"||r===""?l?t.setProperty(n,""):n==="float"?t.cssFloat="":t[n]="":l?t.setProperty(n,r):typeof r!="number"||r===0||xE.has(n)?n==="float"?t.cssFloat=r:t[n]=(""+r).trim():t[n]=r+"px"}function mg(t,n,r){if(n!=null&&typeof n!="object")throw Error(s(62));if(t=t.style,r!=null){for(var l in r)!r.hasOwnProperty(l)||n!=null&&n.hasOwnProperty(l)||(l.indexOf("--")===0?t.setProperty(l,""):l==="float"?t.cssFloat="":t[l]="",ct=!0);for(var f in n)l=n[f],n.hasOwnProperty(f)&&r[f]!==l&&(hg(t,f,l),ct=!0)}else for(var h in n)n.hasOwnProperty(h)&&hg(t,h,n[h])}function gd(t){if(t.indexOf("-")===-1)return!1;switch(t){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 yE=new Map([["acceptCharset","accept-charset"],["htmlFor","for"],["httpEquiv","http-equiv"],["crossOrigin","crossorigin"],["accentHeight","accent-height"],["alignmentBaseline","alignment-baseline"],["arabicForm","arabic-form"],["baselineShift","baseline-shift"],["capHeight","cap-height"],["clipPath","clip-path"],["clipRule","clip-rule"],["colorInterpolation","color-interpolation"],["colorInterpolationFilters","color-interpolation-filters"],["colorProfile","color-profile"],["colorRendering","color-rendering"],["dominantBaseline","dominant-baseline"],["enableBackground","enable-background"],["fillOpacity","fill-opacity"],["fillRule","fill-rule"],["floodColor","flood-color"],["floodOpacity","flood-opacity"],["fontFamily","font-family"],["fontSize","font-size"],["fontSizeAdjust","font-size-adjust"],["fontStretch","font-stretch"],["fontStyle","font-style"],["fontVariant","font-variant"],["fontWeight","font-weight"],["glyphName","glyph-name"],["glyphOrientationHorizontal","glyph-orientation-horizontal"],["glyphOrientationVertical","glyph-orientation-vertical"],["horizAdvX","horiz-adv-x"],["horizOriginX","horiz-origin-x"],["imageRendering","image-rendering"],["letterSpacing","letter-spacing"],["lightingColor","lighting-color"],["markerEnd","marker-end"],["markerMid","marker-mid"],["markerStart","marker-start"],["maskType","mask-type"],["overlinePosition","overline-position"],["overlineThickness","overline-thickness"],["paintOrder","paint-order"],["panose-1","panose-1"],["pointerEvents","pointer-events"],["renderingIntent","rendering-intent"],["shapeRendering","shape-rendering"],["stopColor","stop-color"],["stopOpacity","stop-opacity"],["strikethroughPosition","strikethrough-position"],["strikethroughThickness","strikethrough-thickness"],["strokeDasharray","stroke-dasharray"],["strokeDashoffset","stroke-dashoffset"],["strokeLinecap","stroke-linecap"],["strokeLinejoin","stroke-linejoin"],["strokeMiterlimit","stroke-miterlimit"],["strokeOpacity","stroke-opacity"],["strokeWidth","stroke-width"],["textAnchor","text-anchor"],["textDecoration","text-decoration"],["textRendering","text-rendering"],["transformOrigin","transform-origin"],["underlinePosition","underline-position"],["underlineThickness","underline-thickness"],["unicodeBidi","unicode-bidi"],["unicodeRange","unicode-range"],["unitsPerEm","units-per-em"],["vAlphabetic","v-alphabetic"],["vHanging","v-hanging"],["vIdeographic","v-ideographic"],["vMathematical","v-mathematical"],["vectorEffect","vector-effect"],["vertAdvY","vert-adv-y"],["vertOriginX","vert-origin-x"],["vertOriginY","vert-origin-y"],["wordSpacing","word-spacing"],["writingMode","writing-mode"],["xmlnsXlink","xmlns:xlink"],["xHeight","x-height"]]),vE=/^[\u0000-\u001F ]*j[\r\n\t]*a[\r\n\t]*v[\r\n\t]*a[\r\n\t]*s[\r\n\t]*c[\r\n\t]*r[\r\n\t]*i[\r\n\t]*p[\r\n\t]*t[\r\n\t]*:/i;function Fo(t){return vE.test(""+t)?"javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')":t}function Ii(){}var bd=null;function xd(t){return t=t.target||t.srcElement||window,t.correspondingUseElement&&(t=t.correspondingUseElement),t.nodeType===3?t.parentNode:t}var os=null,cs=null;function gg(t){var n=ra(t);if(n&&(t=n.stateNode)){var r=t[me]||null;e:switch(t=n.stateNode,n.type){case"input":if(Qn(t,r.value,r.defaultValue,r.defaultValue,r.checked,r.defaultChecked,r.type,r.name),n=r.name,r.type==="radio"&&n!=null){for(r=t;r.parentNode;)r=r.parentNode;for(r=r.querySelectorAll('input[name="'+kt(""+n)+'"][type="radio"]'),n=0;n<r.length;n++){var l=r[n];if(l!==t&&l.form===t.form){var f=l[me]||null;if(!f)throw Error(s(90));Qn(l,f.value,f.defaultValue,f.defaultValue,f.checked,f.defaultChecked,f.type,f.name)}}for(n=0;n<r.length;n++)l=r[n],l.form===t.form&&Ze(l)}break e;case"textarea":fg(t,r.value,r.defaultValue);break e;case"select":n=r.value,n!=null&&ss(t,!!r.multiple,n,!1)}}}var yd=!1;function bg(t,n,r){if(yd)return t(n,r);yd=!0;try{var l=t(n);return l}finally{if(yd=!1,(os!==null||cs!==null)&&(Fc(),os&&(n=os,t=cs,cs=os=null,gg(n),t)))for(n=0;n<t.length;n++)gg(t[n])}}function ml(t,n){var r=t.stateNode;if(r===null)return null;var l=r[me]||null;if(l===null)return null;r=l[n];e:switch(n){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(l=!l.disabled)||(t=t.type,l=!(t==="button"||t==="input"||t==="select"||t==="textarea")),t=!l;break e;default:t=!1}if(t)return null;if(r&&typeof r!="function")throw Error(s(231,n,typeof r));return r}var ca=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),vd=!1;if(ca)try{var gl={};Object.defineProperty(gl,"passive",{get:function(){vd=!0}}),window.addEventListener("test",gl,gl),window.removeEventListener("test",gl,gl)}catch{vd=!1}var La=null,wd=null,qo=null;function xg(){if(qo)return qo;var t,n=wd,r=n.length,l,f="value"in La?La.value:La.textContent,h=f.length;for(t=0;t<r&&n[t]===f[t];t++);var w=r-t;for(l=1;l<=w&&n[r-l]===f[h-l];l++);return qo=f.slice(t,1<l?1-l:void 0)}function Go(t){var n=t.keyCode;return"charCode"in t?(t=t.charCode,t===0&&n===13&&(t=13)):t=n,t===10&&(t=13),32<=t||t===13?t:0}function Yo(){return!0}function yg(){return!1}function Dn(t){function n(r,l,f,h,w){this._reactName=r,this._targetInst=f,this.type=l,this.nativeEvent=h,this.target=w,this.currentTarget=null;for(var E in t)t.hasOwnProperty(E)&&(r=t[E],this[E]=r?r(h):h[E]);return this.isDefaultPrevented=(h.defaultPrevented!=null?h.defaultPrevented:h.returnValue===!1)?Yo:yg,this.isPropagationStopped=yg,this}return A(n.prototype,{preventDefault:function(){this.defaultPrevented=!0;var r=this.nativeEvent;r&&(r.preventDefault?r.preventDefault():typeof r.returnValue!="unknown"&&(r.returnValue=!1),this.isDefaultPrevented=Yo)},stopPropagation:function(){var r=this.nativeEvent;r&&(r.stopPropagation?r.stopPropagation():typeof r.cancelBubble!="unknown"&&(r.cancelBubble=!0),this.isPropagationStopped=Yo)},persist:function(){},isPersistent:Yo}),n}var Ia={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(t){return t.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},Ko=Dn(Ia),bl=A({},Ia,{view:0,detail:0}),wE=Dn(bl),kd,Ed,xl,Vo=A({},bl,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Nd,button:0,buttons:0,relatedTarget:function(t){return t.relatedTarget===void 0?t.fromElement===t.srcElement?t.toElement:t.fromElement:t.relatedTarget},movementX:function(t){return"movementX"in t?t.movementX:(t!==xl&&(xl&&t.type==="mousemove"?(kd=t.screenX-xl.screenX,Ed=t.screenY-xl.screenY):Ed=kd=0,xl=t),kd)},movementY:function(t){return"movementY"in t?t.movementY:Ed}}),vg=Dn(Vo),kE=A({},Vo,{dataTransfer:0}),EE=Dn(kE),_E=A({},bl,{relatedTarget:0}),_d=Dn(_E),NE=A({},Ia,{animationName:0,elapsedTime:0,pseudoElement:0}),SE=Dn(NE),TE=A({},Ia,{clipboardData:function(t){return"clipboardData"in t?t.clipboardData:window.clipboardData}}),CE=Dn(TE),AE=A({},Ia,{data:0}),wg=Dn(AE),OE={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},ME={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"},jE={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function RE(t){var n=this.nativeEvent;return n.getModifierState?n.getModifierState(t):(t=jE[t])?!!n[t]:!1}function Nd(){return RE}var DE=A({},bl,{key:function(t){if(t.key){var n=OE[t.key]||t.key;if(n!=="Unidentified")return n}return t.type==="keypress"?(t=Go(t),t===13?"Enter":String.fromCharCode(t)):t.type==="keydown"||t.type==="keyup"?ME[t.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Nd,charCode:function(t){return t.type==="keypress"?Go(t):0},keyCode:function(t){return t.type==="keydown"||t.type==="keyup"?t.keyCode:0},which:function(t){return t.type==="keypress"?Go(t):t.type==="keydown"||t.type==="keyup"?t.keyCode:0}}),zE=Dn(DE),LE=A({},Vo,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),kg=Dn(LE),IE=A({},Ia,{submitter:0}),UE=Dn(IE),BE=A({},bl,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Nd}),$E=Dn(BE),HE=A({},Ia,{propertyName:0,elapsedTime:0,pseudoElement:0}),PE=Dn(HE),FE=A({},Vo,{deltaX:function(t){return"deltaX"in t?t.deltaX:"wheelDeltaX"in t?-t.wheelDeltaX:0},deltaY:function(t){return"deltaY"in t?t.deltaY:"wheelDeltaY"in t?-t.wheelDeltaY:"wheelDelta"in t?-t.wheelDelta:0},deltaZ:0,deltaMode:0}),qE=Dn(FE),GE=A({},Ia,{newState:0,oldState:0,source:0}),YE=Dn(GE),KE=[9,13,27,32],Sd=ca&&"CompositionEvent"in window,yl=null;ca&&"documentMode"in document&&(yl=document.documentMode);var VE=ca&&"TextEvent"in window&&!yl,Eg=ca&&(!Sd||yl&&8<yl&&11>=yl),_g=" ",Ng=!1;function Sg(t,n){switch(t){case"keyup":return KE.indexOf(n.keyCode)!==-1;case"keydown":return n.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Tg(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var us=!1;function XE(t,n){switch(t){case"compositionend":return Tg(n);case"keypress":return n.which!==32?null:(Ng=!0,_g);case"textInput":return t=n.data,t===_g&&Ng?null:t;default:return null}}function ZE(t,n){if(us)return t==="compositionend"||!Sd&&Sg(t,n)?(t=xg(),qo=wd=La=null,us=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(n.ctrlKey||n.altKey||n.metaKey)||n.ctrlKey&&n.altKey){if(n.char&&1<n.char.length)return n.char;if(n.which)return String.fromCharCode(n.which)}return null;case"compositionend":return Eg&&n.locale!=="ko"?null:n.data;default:return null}}var QE={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 Cg(t){var n=t&&t.nodeName&&t.nodeName.toLowerCase();return n==="input"?!!QE[t.type]:n==="textarea"}function Ag(t,n,r,l){os?cs?cs.push(l):cs=[l]:os=l,n=Xc(n,"onChange"),0<n.length&&(r=new Ko("onChange","change",null,r,l),t.push({event:r,listeners:n}))}var vl=null,wl=null;function JE(t){gy(t,0)}function Xo(t){var n=za(t);if(Ze(n))return t}function Og(t,n){if(t==="change")return n}var Mg=!1;if(ca){var Td;if(ca){var Cd="oninput"in document;if(!Cd){var jg=document.createElement("div");jg.setAttribute("oninput","return;"),Cd=typeof jg.oninput=="function"}Td=Cd}else Td=!1;Mg=Td&&(!document.documentMode||9<document.documentMode)}function Rg(){vl&&(vl.detachEvent("onpropertychange",Dg),wl=vl=null)}function Dg(t){if(t.propertyName==="value"&&Xo(wl)){var n=[];Ag(n,wl,t,xd(t)),bg(JE,n)}}function WE(t,n,r){t==="focusin"?(Rg(),vl=n,wl=r,vl.attachEvent("onpropertychange",Dg)):t==="focusout"&&Rg()}function e_(t){if(t==="selectionchange"||t==="keyup"||t==="keydown")return Xo(wl)}function t_(t,n){if(t==="click")return Xo(n)}function n_(t,n){if(t==="input"||t==="change")return Xo(n)}function i_(t,n){return t===n&&(t!==0||1/t===1/n)||t!==t&&n!==n}var Jn=typeof Object.is=="function"?Object.is:i_;function kl(t,n){if(Jn(t,n))return!0;if(typeof t!="object"||t===null||typeof n!="object"||n===null)return!1;var r=Object.keys(t),l=Object.keys(n);if(r.length!==l.length)return!1;for(l=0;l<r.length;l++){var f=r[l];if(!gn.call(n,f)||!Jn(t[f],n[f]))return!1}return!0}function Ad(t){if(t=t||(typeof document<"u"?document:void 0),typeof t>"u")return null;try{return t.activeElement||t.body}catch{return t.body}}function zg(t){for(;t&&t.firstChild;)t=t.firstChild;return t}function Lg(t,n){var r=zg(t);t=0;for(var l;r;){if(r.nodeType===3){if(l=t+r.textContent.length,t<=n&&l>=n)return{node:r,offset:n-t};t=l}e:{for(;r;){if(r.nextSibling){r=r.nextSibling;break e}r=r.parentNode}r=void 0}r=zg(r)}}function Ig(t,n){return t&&n?t===n?!0:t&&t.nodeType===3?!1:n&&n.nodeType===3?Ig(t,n.parentNode):"contains"in t?t.contains(n):t.compareDocumentPosition?!!(t.compareDocumentPosition(n)&16):!1:!1}function Ug(t){t=t!=null&&t.ownerDocument!=null&&t.ownerDocument.defaultView!=null?t.ownerDocument.defaultView:window;for(var n=Ad(t.document);n instanceof t.HTMLIFrameElement;){try{var r=typeof n.contentWindow.location.href=="string"}catch{r=!1}if(r)t=n.contentWindow;else break;n=Ad(t.document)}return n}function Od(t){var n=t&&t.nodeName&&t.nodeName.toLowerCase();return n&&(n==="input"&&(t.type==="text"||t.type==="search"||t.type==="tel"||t.type==="url"||t.type==="password")||n==="textarea"||t.contentEditable==="true")}var a_=ca&&"documentMode"in document&&11>=document.documentMode,ds=null,Md=null,El=null,jd=!1;function Bg(t,n,r){var l=r.window===r?r.document:r.nodeType===9?r:r.ownerDocument;jd||ds==null||ds!==Ad(l)||(l=ds,"selectionStart"in l&&Od(l)?l={start:l.selectionStart,end:l.selectionEnd}:(l=(l.ownerDocument&&l.ownerDocument.defaultView||window).getSelection(),l={anchorNode:l.anchorNode,anchorOffset:l.anchorOffset,focusNode:l.focusNode,focusOffset:l.focusOffset}),El&&kl(El,l)||(El=l,l=Xc(Md,"onSelect"),0<l.length&&(n=new Ko("onSelect","select",null,n,r),t.push({event:n,listeners:l}),n.target=ds)))}function yr(t,n){var r={};return r[t.toLowerCase()]=n.toLowerCase(),r["Webkit"+t]="webkit"+n,r["Moz"+t]="moz"+n,r}var fs={animationend:yr("Animation","AnimationEnd"),animationiteration:yr("Animation","AnimationIteration"),animationstart:yr("Animation","AnimationStart"),transitionrun:yr("Transition","TransitionRun"),transitionstart:yr("Transition","TransitionStart"),transitioncancel:yr("Transition","TransitionCancel"),transitionend:yr("Transition","TransitionEnd")},Rd={},$g={};ca&&($g=document.createElement("div").style,"AnimationEvent"in window||(delete fs.animationend.animation,delete fs.animationiteration.animation,delete fs.animationstart.animation),"TransitionEvent"in window||delete fs.transitionend.transition);function vr(t){if(Rd[t])return Rd[t];if(!fs[t])return t;var n=fs[t],r;for(r in n)if(n.hasOwnProperty(r)&&r in $g)return Rd[t]=n[r];return t}var Hg=vr("animationend"),Pg=vr("animationiteration"),Fg=vr("animationstart"),r_=vr("transitionrun"),s_=vr("transitionstart"),l_=vr("transitioncancel"),qg=vr("transitionend"),Gg=new Map,Dd="abort auxClick beforeToggle cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error fullscreenChange fullscreenError 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(" ");Dd.push("scrollEnd");function _i(t,n){Gg.set(t,n),si(n,[t])}var o_=0;function ua(t,n){if(t.name!=null&&t.name!=="auto")return t.name;if(n.autoName!==null)return n.autoName;t=Ci.identifierPrefix;var r=o_++;return t="_"+t+"t_"+r.toString(32)+"_",n.autoName=t}function Yg(t){if(t==null||typeof t=="string")return t;var n=null,r=js;if(r!==null)for(var l=0;l<r.length;l++){var f=t[r[l]];if(f!=null){if(f==="none")return"none";n=n==null?f:n+(" "+f)}}return n??t.default}function da(t,n){return t=Yg(t),n=Yg(n),n==null?t==="auto"?null:t:n==="auto"?null:n}var Zo=typeof reportError=="function"?reportError:function(t){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var n=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof t=="object"&&t!==null&&typeof t.message=="string"?String(t.message):String(t),error:t});if(!window.dispatchEvent(n))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",t);return}console.error(t)},oi=[],ps=0,zd=0;function Qo(){for(var t=ps,n=zd=ps=0;n<t;){var r=oi[n];oi[n++]=null;var l=oi[n];oi[n++]=null;var f=oi[n];oi[n++]=null;var h=oi[n];if(oi[n++]=null,l!==null&&f!==null){var w=l.pending;w===null?f.next=f:(f.next=w.next,w.next=f),l.pending=f}h!==0&&Kg(r,f,h)}}function Jo(t,n,r,l){oi[ps++]=t,oi[ps++]=n,oi[ps++]=r,oi[ps++]=l,zd|=l,t.lanes|=l,t=t.alternate,t!==null&&(t.lanes|=l)}function Ld(t,n,r,l){return Jo(t,n,r,l),Wo(t)}function wr(t,n){return Jo(t,null,null,n),Wo(t)}function Kg(t,n,r){t.lanes|=r;var l=t.alternate;l!==null&&(l.lanes|=r);for(var f=!1,h=t.return;h!==null;)h.childLanes|=r,l=h.alternate,l!==null&&(l.childLanes|=r),h.tag===22&&(t=h.stateNode,t===null||t._visibility&1||(f=!0)),t=h,h=h.return;return t.tag===3?(h=t.stateNode,f&&n!==null&&(f=31-Ne(r),t=h.hiddenUpdates,l=t[f],l===null?t[f]=[n]:l.push(n),n.lane=r|536870912),h):null}function Wo(t){if(50<Gl)throw Gl=0,Pc=null,Error(s(185));for(var n=t.return;n!==null;)t=n,n=t.return;return t.tag===3?t.stateNode:null}var hs={};function c_(t,n,r,l){this.tag=t,this.key=r,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.refCleanup=this.ref=null,this.pendingProps=n,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=l,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function qn(t,n,r,l){return new c_(t,n,r,l)}function Id(t){return t=t.prototype,!(!t||!t.isReactComponent)}function fa(t,n){var r=t.alternate;return r===null?(r=qn(t.tag,n,t.key,t.mode),r.elementType=t.elementType,r.type=t.type,r.stateNode=t.stateNode,r.alternate=t,t.alternate=r):(r.pendingProps=n,r.type=t.type,r.flags=0,r.subtreeFlags=0,r.deletions=null),r.flags=t.flags&1206910976,r.childLanes=t.childLanes,r.lanes=t.lanes,r.child=t.child,r.memoizedProps=t.memoizedProps,r.memoizedState=t.memoizedState,r.updateQueue=t.updateQueue,n=t.dependencies,r.dependencies=n===null?null:{lanes:n.lanes,firstContext:n.firstContext},r.sibling=t.sibling,r.index=t.index,r.ref=t.ref,r.refCleanup=t.refCleanup,r}function Vg(t,n){t.flags&=1206910978;var r=t.alternate;return r===null?(t.childLanes=0,t.lanes=n,t.child=null,t.subtreeFlags=0,t.memoizedProps=null,t.memoizedState=null,t.updateQueue=null,t.dependencies=null,t.stateNode=null):(t.childLanes=r.childLanes,t.lanes=r.lanes,t.child=r.child,t.subtreeFlags=0,t.deletions=null,t.memoizedProps=r.memoizedProps,t.memoizedState=r.memoizedState,t.updateQueue=r.updateQueue,t.type=r.type,n=r.dependencies,t.dependencies=n===null?null:{lanes:n.lanes,firstContext:n.firstContext}),t}function ec(t,n,r,l,f,h){var w=0;if(l=t,typeof l=="function")Id(l)&&(w=1);else if(typeof l=="string")w=IN(t,r,cn.current)?26:t==="html"||t==="head"||t==="body"?27:5;else e:switch(l){case Ie:return t=qn(31,r,n,f),t.elementType=Ie,t.lanes=h,t;case U:return kr(r.children,f,h,n);case ee:w=8,f|=24;break;case ue:return t=qn(12,r,n,f|2),t.elementType=ue,t.lanes=h,t;case ae:return t=qn(13,r,n,f),t.elementType=ae,t.lanes=h,t;case $:return t=qn(19,r,n,f),t.elementType=$,t.lanes=h,t;case fe:case j:return t=f|32,t=qn(30,r,n,t),t.elementType=j,t.lanes=h,t.stateNode={autoName:null,paired:null,clones:null,ref:null},t;default:if(typeof l=="object"&&l!==null)switch(l.$$typeof){case ne:w=10;break e;case re:w=9;break e;case P:w=11;break e;case de:w=14;break e;case O:w=16,l=null;break e}w=29,r=Error(s(130,t===null?"null":typeof t,"")),l=null}return n=qn(w,r,n,f),n.elementType=t,n.type=l,n.lanes=h,n}function kr(t,n,r,l){return t=qn(7,t,l,n),t.lanes=r,t}function Ud(t,n,r){return t=qn(6,t,null,n),t.lanes=r,t}function Xg(t){var n=qn(18,null,null,0);return n.stateNode=t,n}function Bd(t,n,r){return n=qn(4,t.children!==null?t.children:[],t.key,n),n.lanes=r,n.stateNode={containerInfo:t.containerInfo,pendingChildren:null,implementation:t.implementation},n}var Zg=new WeakMap;function ci(t,n){if(typeof t=="object"&&t!==null){var r=Zg.get(t);return r!==void 0?r:(n={value:t,source:n,stack:sn(n)},Zg.set(t,n),n)}return{value:t,source:n,stack:sn(n)}}var ms=[],gs=0,tc=null,_l=0,ui=[],di=0,Ua=null,Ui=1,Bi="";function pa(t,n){ms[gs++]=_l,ms[gs++]=tc,tc=t,_l=n}function Qg(t,n,r){ui[di++]=Ui,ui[di++]=Bi,ui[di++]=Ua,Ua=t;var l=Ui;t=Bi;var f=32-Ne(l)-1;l&=~(1<<f),r+=1;var h=32-Ne(n)+f;if(30<h){var w=f-f%5;h=(l&(1<<w)-1).toString(32),l>>=w,f-=w,Ui=1<<32-Ne(n)+f|r<<f|l,Bi=h+t}else Ui=1<<h|r<<f|l,Bi=t}function nc(t){t.return!==null&&(pa(t,1),Qg(t,1,0))}function $d(t){for(;t===tc;)tc=ms[--gs],ms[gs]=null,_l=ms[--gs],ms[gs]=null;for(;t===Ua;)Ua=ui[--di],ui[di]=null,Bi=ui[--di],ui[di]=null,Ui=ui[--di],ui[di]=null}function Jg(t,n){ui[di++]=Ui,ui[di++]=Bi,ui[di++]=Ua,Ui=n.id,Bi=n.overflow,Ua=t}var pn=null,zt=null,tt=!1,Ba=null,fi=!1,Hd=Error(s(519));function $a(t){var n=Error(s(418,1<arguments.length&&arguments[1]!==void 0&&arguments[1]?"text":"HTML",""));throw Nl(ci(n,t)),Hd}function Wg(t){var n=t.stateNode,r=t.type,l=t.memoizedProps;switch(n[ln]=t,n[me]=l,r){case"dialog":rt("cancel",n),rt("close",n);break;case"iframe":case"object":case"embed":rt("load",n);break;case"video":case"audio":for(r=0;r<Kl.length;r++)rt(Kl[r],n);break;case"source":rt("error",n);break;case"img":case"image":case"link":rt("error",n),rt("load",n);break;case"details":rt("toggle",n);break;case"input":rt("invalid",n),Po(n,l.value,l.defaultValue,l.checked,l.defaultChecked,l.type,l.name,!0);break;case"select":rt("invalid",n);break;case"textarea":rt("invalid",n),pg(n,l.value,l.defaultValue,l.children)}r=l.children,typeof r!="string"&&typeof r!="number"&&typeof r!="bigint"||n.textContent===""+r||l.suppressHydrationWarning===!0||vy(n.textContent,r)?(l.popover!=null&&(rt("beforetoggle",n),rt("toggle",n)),l.onScroll!=null&&rt("scroll",n),l.onScrollEnd!=null&&rt("scrollend",n),l.onClick!=null&&(n.onclick=Ii),n=!0):n=!1,n||$a(t,!0)}function ic(t){for(pn=t.return;pn;)switch(pn.tag){case 5:case 31:case 13:fi=!1;return;case 27:case 3:fi=!0;return;default:pn=pn.return}}function bs(t){if(t!==pn)return!1;if(!tt)return ic(t),tt=!0,!1;var n=t.tag,r;if((r=n!==3&&n!==27)&&((r=n===5)&&(r=t.type,r=!(r!=="form"&&r!=="button")||xp(t.type,t.memoizedProps)),r=!r),r&&zt&&$a(t),ic(t),n===13){if(t=t.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(s(317));zt=By(t)}else if(n===31){if(t=t.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(s(317));zt=By(t)}else n===27?(n=zt,nr(t.type)?(t=Tp,Tp=null,zt=t):zt=n):zt=pn?hi(t.stateNode.nextSibling):null;return!0}function Er(){zt=pn=null,tt=!1}function Pd(){var t=Ba;return t!==null&&(Kn===null?Kn=t:Kn.push.apply(Kn,t),Ba=null),t}function Nl(t){Ba===null?Ba=[t]:Ba.push(t)}var Fd=Fe(null),_r=null,ha=null;function Ha(t,n,r){et(Fd,n._currentValue),n._currentValue=r}function ma(t){t._currentValue=Fd.current,vt(Fd)}function ac(t,n,r){for(;t!==null;){var l=t.alternate;if((t.childLanes&n)!==n?(t.childLanes|=n,l!==null&&(l.childLanes|=n)):l!==null&&(l.childLanes&n)!==n&&(l.childLanes|=n),t===r)break;t=t.return}}function qd(t,n,r,l){var f=t.child;for(f!==null&&(f.return=t);f!==null;){var h=f.dependencies;if(h!==null){var w=f.child;h=h.firstContext;e:for(;h!==null;){var E=h;h=f;for(var z=0;z<n.length;z++)if(E.context===n[z]){h.lanes|=r,E=h.alternate,E!==null&&(E.lanes|=r),ac(h.return,r,t),l||(w=null);break e}h=E.next}}else if(f.tag===18){if(w=f.return,w===null)throw Error(s(341));w.lanes|=r,h=w.alternate,h!==null&&(h.lanes|=r),ac(w,r,t),w=null}else f.tag===13&&f.memoizedState!==null&&f.memoizedState.dehydrated===null?(f.lanes|=r,w=f.alternate,w!==null&&(w.lanes|=r),ac(f.return,r,t),w=f.child,w=w!==null?w.sibling:null):w=f.child;if(w!==null)w.return=f;else for(w=f;w!==null;){if(w===t){w=null;break}if(f=w.sibling,f!==null){f.return=w.return,w=f;break}w=w.return}f=w}}function Nr(t,n,r,l){t=null;for(var f=n,h=!1;f!==null;){if(!h){if((f.flags&524288)!==0)h=!0;else if((f.flags&262144)!==0)break}if(f.tag===10){var w=f.alternate;if(w===null)throw Error(s(387));if(w=w.memoizedProps,w!==null){var E=f.type;Jn(f.pendingProps.value,w.value)||(t!==null?t.push(E):t=[E])}}else if(f===oe.current){if(w=f.alternate,w===null)throw Error(s(387));w.memoizedState.memoizedState!==f.memoizedState.memoizedState&&(t!==null?t.push(Ps):t=[Ps])}f=f.return}return t!==null&&qd(n,t,r,l),n.flags|=262144,t!==null}function rc(t){for(t=t.firstContext;t!==null;){if(!Jn(t.context._currentValue,t.memoizedValue))return!0;t=t.next}return!1}function Sr(t){_r=t,ha=null,t=t.dependencies,t!==null&&(t.firstContext=null)}function yn(t){return eb(_r,t)}function sc(t,n){return _r===null&&Sr(t),eb(t,n)}function eb(t,n){var r=n._currentValue;if(n={context:n,memoizedValue:r,next:null},ha===null){if(t===null)throw Error(s(308));ha=n,t.dependencies={lanes:0,firstContext:n},t.flags|=524288}else ha=ha.next=n;return r}var u_=typeof AbortController<"u"?AbortController:function(){var t=[],n=this.signal={aborted:!1,addEventListener:function(r,l){t.push(l)}};this.abort=function(){n.aborted=!0,t.forEach(function(r){return r()})}},d_=e.unstable_scheduleCallback,f_=e.unstable_NormalPriority,Qt={$$typeof:ne,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0};function Gd(){return{controller:new u_,data:new Map,refCount:0}}function Sl(t){t.refCount--,t.refCount===0&&d_(f_,function(){t.controller.abort()})}function tb(t,n){if((t.pendingLanes&4194048)!==0){var r=t.transitionTypes;for(r===null&&(r=t.transitionTypes=[]),t=0;t<n.length;t++){var l=n[t];r.indexOf(l)===-1&&r.push(l)}}}var Tl=null;function p_(t){var n=t.transitionTypes;return t.transitionTypes=null,n}var Cl=null,Yd=0,Tr=0,xs=null;function h_(t,n){if(Cl===null){var r=Cl=[];Yd=0,Tr=cp(),xs={status:"pending",value:void 0,then:function(l){r.push(l)}}}return Yd++,n.then(nb,nb),n}function nb(){if(--Yd===0&&(Tl=null,Cl!==null)){xs!==null&&(xs.status="fulfilled");var t=Cl;Cl=null,Tr=0,xs=null;for(var n=0;n<t.length;n++)(0,t[n])()}}function m_(t,n){var r=[],l={status:"pending",value:null,reason:null,then:function(f){r.push(f)}};return t.then(function(){l.status="fulfilled",l.value=n;for(var f=0;f<r.length;f++)(0,r[f])(n)},function(f){for(l.status="rejected",l.reason=f,f=0;f<r.length;f++)(0,r[f])(void 0)}),l}var ib=ge.S;ge.S=function(t,n){if(Xx=Kt(),typeof n=="object"&&n!==null&&typeof n.then=="function"&&h_(t,n),Tl!==null)for(var r=Ls;r!==null;)tb(r,Tl),r=r.next;if(r=t.types,r!==null){for(var l=Ls;l!==null;)tb(l,r),l=l.next;if(Tr!==0){l=Tl,l===null&&(l=Tl=[]);for(var f=0;f<r.length;f++){var h=r[f];l.indexOf(h)===-1&&l.push(h)}}}ib!==null&&ib(t,n)};var Cr=Fe(null);function Kd(){var t=Cr.current;return t!==null?t:Mt.pooledCache}function lc(t,n){n===null?et(Cr,Cr.current):et(Cr,n.pool)}function ab(){var t=Kd();return t===null?null:{parent:Qt._currentValue,pool:t}}var ys=Error(s(460)),Vd=Error(s(474)),oc=Error(s(542)),cc={then:function(){}};function rb(t){return t=t.status,t==="fulfilled"||t==="rejected"}function sb(t,n,r){switch(r=t[r],r===void 0?t.push(n):r!==n&&(n.then(Ii,Ii),n=r),n.status){case"fulfilled":return n.value;case"rejected":throw t=n.reason,ob(t),t===void 0&&!("reason"in n)?Error(s(600)):t;default:if(typeof n.status=="string")n.then(Ii,Ii);else{if(t=Mt,t!==null&&100<t.shellSuspendCounter)throw Error(s(482));t=n,t.status="pending",t.then(function(l){if(n.status==="pending"){var f=n;f.status="fulfilled",f.value=l}},function(l){if(n.status==="pending"){var f=n;f.status="rejected",f.reason=l}})}switch(n.status){case"fulfilled":return n.value;case"rejected":throw t=n.reason,ob(t),t}throw Or=n,ys}}function Ar(t){try{var n=t._init;return n(t._payload)}catch(r){throw r!==null&&typeof r=="object"&&typeof r.then=="function"?(Or=r,ys):r}}var Or=null;function lb(){if(Or===null)throw Error(s(459));var t=Or;return Or=null,t}function ob(t){if(t===ys||t===oc)throw Error(s(483))}var vs=null,Al=0;function uc(t){var n=Al;return Al+=1,vs===null&&(vs=[]),sb(vs,t,n)}function Pa(t,n){n=n.props.ref,t.ref=n!==void 0?n:null}function dc(t,n){throw n.$$typeof===L?Error(s(525)):(t=Object.prototype.toString.call(n),Error(s(31,t==="[object Object]"?"object with keys {"+Object.keys(n).join(", ")+"}":t)))}function cb(t){function n(Y,H){if(t){var X=Y.deletions;X===null?(Y.deletions=[H],Y.flags|=16):X.push(H)}}function r(Y,H){if(!t)return null;for(;H!==null;)n(Y,H),H=H.sibling;return null}function l(Y){for(var H=new Map;Y!==null;)Y.key===null?H.set(Y.index,Y):H.set(Y.key,Y),Y=Y.sibling;return H}function f(Y,H){return Y=fa(Y,H),Y.index=0,Y.sibling=null,Y}function h(Y,H,X){return Y.index=X,t?(X=Y.alternate,X!==null?(X=X.index,X<H?(Y.flags|=2,H):X):(Y.flags|=134217730,H)):(Y.flags|=1048576,H)}function w(Y){return t&&Y.alternate===null&&(Y.flags|=134217730),Y}function E(Y,H,X,se){return H===null||H.tag!==6?(H=Ud(X,Y.mode,se),H.return=Y,H):(H=f(H,X),H.return=Y,H)}function z(Y,H,X,se){var Oe=X.type;return Oe===U?(Y=W(Y,H,X.props.children,se,X.key),Pa(Y,X),Y):H!==null&&(H.elementType===Oe||typeof Oe=="object"&&Oe!==null&&Oe.$$typeof===O&&Ar(Oe)===H.type)?(H=f(H,X.props),Pa(H,X),H.return=Y,H):(H=ec(X.type,X.key,X.props,null,Y.mode,se),Pa(H,X),H.return=Y,H)}function K(Y,H,X,se){return H===null||H.tag!==4||H.stateNode.containerInfo!==X.containerInfo||H.stateNode.implementation!==X.implementation?(H=Bd(X,Y.mode,se),H.return=Y,H):(H=f(H,X.children||[]),H.return=Y,H)}function W(Y,H,X,se,Oe){return H===null||H.tag!==7?(H=kr(X,Y.mode,se,Oe),H.return=Y,H):(H=f(H,X),H.return=Y,H)}function le(Y,H,X){if(typeof H=="string"&&H!==""||typeof H=="number"||typeof H=="bigint")return H=Ud(""+H,Y.mode,X),H.return=Y,H;if(typeof H=="object"&&H!==null){switch(H.$$typeof){case V:return X=ec(H.type,H.key,H.props,null,Y.mode,X),Pa(X,H),X.return=Y,X;case D:return H=Bd(H,Y.mode,X),H.return=Y,H;case O:return H=Ar(H),le(Y,H,X)}if(J(H)||Z(H))return H=kr(H,Y.mode,X,null),H.return=Y,H;if(typeof H.then=="function")return le(Y,uc(H),X);if(H.$$typeof===ne)return le(Y,sc(Y,H),X);dc(Y,H)}return null}function G(Y,H,X,se){var Oe=H!==null?H.key:null;if(typeof X=="string"&&X!==""||typeof X=="number"||typeof X=="bigint")return Oe!==null?null:E(Y,H,""+X,se);if(typeof X=="object"&&X!==null){switch(X.$$typeof){case V:return X.key===Oe?z(Y,H,X,se):null;case D:return X.key===Oe?K(Y,H,X,se):null;case O:return X=Ar(X),G(Y,H,X,se)}if(J(X)||Z(X))return Oe!==null?null:W(Y,H,X,se,null);if(typeof X.then=="function")return G(Y,H,uc(X),se);if(X.$$typeof===ne)return G(Y,H,sc(Y,X),se);dc(Y,X)}return null}function Q(Y,H,X,se,Oe){if(typeof se=="string"&&se!==""||typeof se=="number"||typeof se=="bigint")return Y=Y.get(X)||null,E(H,Y,""+se,Oe);if(typeof se=="object"&&se!==null){switch(se.$$typeof){case V:return Y=Y.get(se.key===null?X:se.key)||null,z(H,Y,se,Oe);case D:return Y=Y.get(se.key===null?X:se.key)||null,K(H,Y,se,Oe);case O:return se=Ar(se),Q(Y,H,X,se,Oe)}if(J(se)||Z(se))return Y=Y.get(X)||null,W(H,Y,se,Oe,null);if(typeof se.then=="function")return Q(Y,H,X,uc(se),Oe);if(se.$$typeof===ne)return Q(Y,H,X,sc(H,se),Oe);dc(H,se)}return null}function _e(Y,H,X,se){for(var Oe=null,lt=null,Le=H,He=H=0,en=null;Le!==null&&He<X.length;He++){Le.index>He?(en=Le,Le=null):en=Le.sibling;var ut=G(Y,Le,X[He],se);if(ut===null){Le===null&&(Le=en);break}t&&Le&&ut.alternate===null&&n(Y,Le),H=h(ut,H,He),lt===null?Oe=ut:lt.sibling=ut,lt=ut,Le=en}if(He===X.length)return r(Y,Le),tt&&pa(Y,He),Oe;if(Le===null){for(;He<X.length;He++)Le=le(Y,X[He],se),Le!==null&&(H=h(Le,H,He),lt===null?Oe=Le:lt.sibling=Le,lt=Le);return tt&&pa(Y,He),Oe}for(Le=l(Le);He<X.length;He++)en=Q(Le,Y,He,X[He],se),en!==null&&(t&&(ut=en.alternate,ut!==null&&Le.delete(ut.key===null?He:ut.key)),H=h(en,H,He),lt===null?Oe=en:lt.sibling=en,lt=en);return t&&Le.forEach(function(lr){return n(Y,lr)}),tt&&pa(Y,He),Oe}function je(Y,H,X,se){if(X==null)throw Error(s(151));for(var Oe=null,lt=null,Le=H,He=H=0,en=null,ut=X.next();Le!==null&&!ut.done;He++,ut=X.next()){Le.index>He?(en=Le,Le=null):en=Le.sibling;var lr=G(Y,Le,ut.value,se);if(lr===null){Le===null&&(Le=en);break}t&&Le&&lr.alternate===null&&n(Y,Le),H=h(lr,H,He),lt===null?Oe=lr:lt.sibling=lr,lt=lr,Le=en}if(ut.done)return r(Y,Le),tt&&pa(Y,He),Oe;if(Le===null){for(;!ut.done;He++,ut=X.next())ut=le(Y,ut.value,se),ut!==null&&(H=h(ut,H,He),lt===null?Oe=ut:lt.sibling=ut,lt=ut);return tt&&pa(Y,He),Oe}for(Le=l(Le);!ut.done;He++,ut=X.next())ut=Q(Le,Y,He,ut.value,se),ut!==null&&(t&&(en=ut.alternate,en!==null&&Le.delete(en.key===null?He:en.key)),H=h(ut,H,He),lt===null?Oe=ut:lt.sibling=ut,lt=ut);return t&&Le.forEach(function(XN){return n(Y,XN)}),tt&&pa(Y,He),Oe}function Je(Y,H,X,se){if(typeof X=="object"&&X!==null&&X.type===U&&X.key===null&&X.props.ref===void 0&&(X=X.props.children),typeof X=="object"&&X!==null){switch(X.$$typeof){case V:e:{for(var Oe=X.key;H!==null;){if(H.key===Oe){if(Oe=X.type,Oe===U){if(H.tag===7){r(Y,H.sibling),se=f(H,X.props.children),Pa(se,X),se.return=Y,Y=se;break e}}else if(H.elementType===Oe||typeof Oe=="object"&&Oe!==null&&Oe.$$typeof===O&&Ar(Oe)===H.type){r(Y,H.sibling),se=f(H,X.props),Pa(se,X),se.return=Y,Y=se;break e}r(Y,H);break}else n(Y,H);H=H.sibling}X.type===U?(se=kr(X.props.children,Y.mode,se,X.key),Pa(se,X),se.return=Y,Y=se):(se=ec(X.type,X.key,X.props,null,Y.mode,se),Pa(se,X),se.return=Y,Y=se)}return w(Y);case D:e:{for(Oe=X.key;H!==null;){if(H.key===Oe)if(H.tag===4&&H.stateNode.containerInfo===X.containerInfo&&H.stateNode.implementation===X.implementation){r(Y,H.sibling),se=f(H,X.children||[]),se.return=Y,Y=se;break e}else{r(Y,H);break}else n(Y,H);H=H.sibling}se=Bd(X,Y.mode,se),se.return=Y,Y=se}return w(Y);case O:return X=Ar(X),Je(Y,H,X,se)}if(J(X))return _e(Y,H,X,se);if(Z(X)){if(Oe=Z(X),typeof Oe!="function")throw Error(s(150));return X=Oe.call(X),je(Y,H,X,se)}if(typeof X.then=="function")return Je(Y,H,uc(X),se);if(X.$$typeof===ne)return Je(Y,H,sc(Y,X),se);dc(Y,X)}return typeof X=="string"&&X!==""||typeof X=="number"||typeof X=="bigint"?(X=""+X,H!==null&&H.tag===6?(r(Y,H.sibling),se=f(H,X),se.return=Y,Y=se):(r(Y,H),se=Ud(X,Y.mode,se),se.return=Y,Y=se),w(Y)):r(Y,H)}return function(Y,H,X,se){try{Al=0;var Oe=Je(Y,H,X,se);return vs=null,Oe}catch(Le){if(Le===ys||Le===oc)throw Le;var lt=qn(29,Le,null,Y.mode);return lt.lanes=se,lt.return=Y,lt}}}var Mr=cb(!0),ub=cb(!1),Fa=!1;function Xd(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function Zd(t,n){t=t.updateQueue,n.updateQueue===t&&(n.updateQueue={baseState:t.baseState,firstBaseUpdate:t.firstBaseUpdate,lastBaseUpdate:t.lastBaseUpdate,shared:t.shared,callbacks:null})}function qa(t){return{lane:t,tag:0,payload:null,callback:null,next:null}}function Ga(t,n,r){var l=t.updateQueue;if(l===null)return null;if(l=l.shared,(bt&2)!==0){var f=l.pending;return f===null?n.next=n:(n.next=f.next,f.next=n),l.pending=n,n=Wo(t),Kg(t,null,r),n}return Jo(t,l,n,r),Wo(t)}function Ol(t,n,r){if(n=n.updateQueue,n!==null&&(n=n.shared,(r&4194048)!==0)){var l=n.lanes;l&=t.pendingLanes,r|=l,n.lanes=r,Ei(t,r)}}function Qd(t,n){var r=t.updateQueue,l=t.alternate;if(l!==null&&(l=l.updateQueue,r===l)){var f=null,h=null;if(r=r.firstBaseUpdate,r!==null){do{var w={lane:r.lane,tag:r.tag,payload:r.payload,callback:null,next:null};h===null?f=h=w:h=h.next=w,r=r.next}while(r!==null);h===null?f=h=n:h=h.next=n}else f=h=n;r={baseState:l.baseState,firstBaseUpdate:f,lastBaseUpdate:h,shared:l.shared,callbacks:l.callbacks},t.updateQueue=r;return}t=r.lastBaseUpdate,t===null?r.firstBaseUpdate=n:t.next=n,r.lastBaseUpdate=n}var Jd=!1;function Ml(){if(Jd){var t=xs;if(t!==null)throw t}}function jl(t,n,r,l){Jd=!1;var f=t.updateQueue;Fa=!1;var h=f.firstBaseUpdate,w=f.lastBaseUpdate,E=f.shared.pending;if(E!==null){f.shared.pending=null;var z=E,K=z.next;z.next=null,w===null?h=K:w.next=K,w=z;var W=t.alternate;W!==null&&(W=W.updateQueue,E=W.lastBaseUpdate,E!==w&&(E===null?W.firstBaseUpdate=K:E.next=K,W.lastBaseUpdate=z))}if(h!==null){var le=f.baseState;w=0,W=K=z=null,E=h;do{var G=E.lane&-536870913,Q=G!==E.lane;if(Q?(st&G)===G:(l&G)===G){G!==0&&G===Tr&&(Jd=!0),W!==null&&(W=W.next={lane:0,tag:E.tag,payload:E.payload,callback:null,next:null});e:{var _e=t,je=E;G=n;var Je=r;switch(je.tag){case 1:if(_e=je.payload,typeof _e=="function"){le=_e.call(Je,le,G);break e}le=_e;break e;case 3:_e.flags=_e.flags&-65537|128;case 0:if(_e=je.payload,G=typeof _e=="function"?_e.call(Je,le,G):_e,G==null)break e;le=A({},le,G);break e;case 2:Fa=!0}}G=E.callback,G!==null&&(t.flags|=64,Q&&(t.flags|=8192),Q=f.callbacks,Q===null?f.callbacks=[G]:Q.push(G))}else Q={lane:G,tag:E.tag,payload:E.payload,callback:E.callback,next:null},W===null?(K=W=Q,z=le):W=W.next=Q,w|=G;if(E=E.next,E===null){if(E=f.shared.pending,E===null)break;Q=E,E=Q.next,Q.next=null,f.lastBaseUpdate=Q,f.shared.pending=null}}while(!0);W===null&&(z=le),f.baseState=z,f.firstBaseUpdate=K,f.lastBaseUpdate=W,h===null&&(f.shared.lanes=0),Ja|=w,t.lanes=w,t.memoizedState=le}}function db(t,n){if(typeof t!="function")throw Error(s(191,t));t.call(n)}function fb(t,n){var r=t.callbacks;if(r!==null)for(t.callbacks=null,t=0;t<r.length;t++)db(r[t],n)}var Ya=Fe(null),fc=Fe(0);function pb(t,n){t=va,et(fc,t),et(Ya,n),va=t|n.baseLanes}function Wd(){et(fc,va),et(Ya,Ya.current)}function ef(){va=fc.current,vt(Ya),vt(fc)}var vn=Fe(null),Cn=null;function Ka(t){var n=t.alternate;et(wn,wn.current&1),et(vn,t),Cn===null&&(n===null||Ya.current!==null||n.memoizedState!==null)&&(Cn=t)}function tf(t){et(wn,wn.current),et(vn,t),Cn===null&&(Cn=t)}function hb(t){t.tag===22?(et(wn,wn.current),et(vn,t),Cn===null&&(Cn=t)):Va()}function Va(){et(wn,wn.current),et(vn,vn.current)}function Wn(t){vt(vn),Cn===t&&(Cn=null),vt(wn)}var wn=Fe(0);function Rl(t,n){et(vn,vn.current),et(wn,n)}function nf(t){vt(wn),vt(vn),Cn===t&&(Cn=null)}function pc(t){for(var n=t;n!==null;){if(n.tag===13){var r=n.memoizedState;if(r!==null&&(r=r.dehydrated,r===null||Np(r)||Sp(r)))return n}else if(n.tag===19&&n.memoizedProps.revealOrder!=="independent"){if((n.flags&128)!==0)return n}else if(n.child!==null){n.child.return=n,n=n.child;continue}if(n===t)break;for(;n.sibling===null;){if(n.return===null||n.return===t)return null;n=n.return}n.sibling.return=n.return,n=n.sibling}return null}var ga=0,Qe=null,Tt=null,Jt=null,hc=!1,ws=!1,jr=!1,mc=0,Dl=0,ks=null,g_=0;function Pt(){throw Error(s(321))}function af(t,n){if(n===null)return!1;for(var r=0;r<n.length&&r<t.length;r++)if(!Jn(t[r],n[r]))return!1;return!0}function rf(t,n,r,l,f,h){return ga=h,Qe=n,n.memoizedState=null,n.updateQueue=null,n.lanes=0,ge.H=t===null||t.memoizedState===null?Qb:Jb,jr=!1,h=r(l,f),jr=!1,ws&&(h=gb(n,r,l,f)),mb(t),h}function mb(t){ge.H=kc;var n=Tt!==null&&Tt.next!==null;if(ga=0,Jt=Tt=Qe=null,hc=!1,Dl=0,ks=null,n)throw Error(s(300));t===null||Wt||(t=t.dependencies,t!==null&&rc(t)&&(Wt=!0))}function gb(t,n,r,l){Qe=t;var f=0;do{if(ws&&(ks=null),Dl=0,ws=!1,25<=f)throw Error(s(301));if(f+=1,Jt=Tt=null,t.updateQueue!=null){var h=t.updateQueue;h.lastEffect=null,h.events=null,h.stores=null,h.memoCache!=null&&(h.memoCache.index=0)}ge.H=__,h=n(r,l)}while(ws);return h}function b_(){var t=ge.H,n=t.useState()[0];return n=typeof n.then=="function"?zl(n):n,t=t.useState()[0],(Tt!==null?Tt.memoizedState:null)!==t&&(Qe.flags|=1024),n}function sf(){var t=mc!==0;return mc=0,t}function lf(t,n,r){n.updateQueue=t.updateQueue,n.flags&=-2053,t.lanes&=~r}function of(t){if(hc){for(t=t.memoizedState;t!==null;){var n=t.queue;n!==null&&(n.pending=null),t=t.next}hc=!1}ga=0,Jt=Tt=Qe=null,ws=!1,Dl=mc=0,ks=null}function zn(){var t={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return Jt===null?Qe.memoizedState=Jt=t:Jt=Jt.next=t,Jt}function Gt(){if(Tt===null){var t=Qe.alternate;t=t!==null?t.memoizedState:null}else t=Tt.next;var n=Jt===null?Qe.memoizedState:Jt.next;if(n!==null)Jt=n,Tt=t;else{if(t===null)throw Qe.alternate===null?Error(s(467)):Error(s(310));Tt=t,t={memoizedState:Tt.memoizedState,baseState:Tt.baseState,baseQueue:Tt.baseQueue,queue:Tt.queue,next:null},Jt===null?Qe.memoizedState=Jt=t:Jt=Jt.next=t}return Jt}function gc(){return{lastEffect:null,events:null,stores:null,memoCache:null}}function zl(t){var n=Dl;return Dl+=1,ks===null&&(ks=[]),t=sb(ks,t,n),n=Qe,(Jt===null?n.memoizedState:Jt.next)===null&&(n=n.alternate,ge.H=n===null||n.memoizedState===null?Qb:Jb),t}function bc(t){if(t!==null&&typeof t=="object"){if(typeof t.then=="function")return zl(t);if(t.$$typeof===ie)return;if(t.$$typeof===ne)return yn(t)}throw Error(s(438,String(t)))}function cf(t){var n=null,r=Qe.updateQueue;if(r!==null&&(n=r.memoCache),n==null){var l=Qe.alternate;l!==null&&(l=l.updateQueue,l!==null&&(l=l.memoCache,l!=null&&(n={data:l.data.map(function(f){return f.slice()}),index:0})))}if(n==null&&(n={data:[],index:0}),r===null&&(r=gc(),Qe.updateQueue=r),r.memoCache=n,r=n.data[n.index],r===void 0)for(r=n.data[n.index]=Array(t),l=0;l<t;l++)r[l]=T;return n.index++,r}function ba(t,n){return typeof n=="function"?n(t):n}function xc(t){var n=Gt();return uf(n,Tt,t)}function uf(t,n,r){var l=t.queue;if(l===null)throw Error(s(311));l.lastRenderedReducer=r;var f=t.baseQueue,h=l.pending;if(h!==null){if(f!==null){var w=f.next;f.next=h.next,h.next=w}n.baseQueue=f=h,l.pending=null}if(h=t.baseState,f===null)t.memoizedState=h;else{n=f.next;var E=w=null,z=null,K=n,W=!1;do{var le=K.lane&-536870913;if(le!==K.lane?(st&le)===le:(ga&le)===le){var G=K.revertLane;if(G===0)z!==null&&(z=z.next={lane:0,revertLane:0,gesture:null,action:K.action,hasEagerState:K.hasEagerState,eagerState:K.eagerState,next:null}),le===Tr&&(W=!0);else if((ga&G)===G){K=K.next,G===Tr&&(W=!0);continue}else le={lane:0,revertLane:K.revertLane,gesture:null,action:K.action,hasEagerState:K.hasEagerState,eagerState:K.eagerState,next:null},z===null?(E=z=le,w=h):z=z.next=le,Qe.lanes|=G,Ja|=G;le=K.action,jr&&r(h,le),h=K.hasEagerState?K.eagerState:r(h,le)}else G={lane:le,revertLane:K.revertLane,gesture:K.gesture,action:K.action,hasEagerState:K.hasEagerState,eagerState:K.eagerState,next:null},z===null?(E=z=G,w=h):z=z.next=G,Qe.lanes|=le,Ja|=le;K=K.next}while(K!==null&&K!==n);if(z===null?w=h:z.next=E,!Jn(h,t.memoizedState)&&(Wt=!0,W&&(r=xs,r!==null)))throw r;t.memoizedState=h,t.baseState=w,t.baseQueue=z,l.lastRenderedState=h}return f===null&&(l.lanes=0),[t.memoizedState,l.dispatch]}function df(t){var n=Gt(),r=n.queue;if(r===null)throw Error(s(311));r.lastRenderedReducer=t;var l=r.dispatch,f=r.pending,h=n.memoizedState;if(f!==null){r.pending=null;var w=f=f.next;do h=t(h,w.action),w=w.next;while(w!==f);Jn(h,n.memoizedState)||(Wt=!0),n.memoizedState=h,n.baseQueue===null&&(n.baseState=h),r.lastRenderedState=h}return[h,l]}function bb(t,n,r){var l=Qe,f=Gt(),h=tt;if(h){if(r===void 0)throw Error(s(407));r=r()}else r=n();var w=!Jn((Tt||f).memoizedState,r);if(w&&(f.memoizedState=r,Wt=!0),f=f.queue,hf(vb.bind(null,l,f,t),[t]),t=f.getSnapshot!==n||w||Jt!==null&&(Jt.memoizedState.tag&1)!==0,Es(t?9:8,{destroy:void 0},yb.bind(null,l,f,r,n),null),t){if(l.flags|=2048,Mt===null)throw Error(s(349));h||(ga&127)!==0||xb(l,n,r)}return r}function xb(t,n,r){t.flags|=16384,t={getSnapshot:n,value:r},n=Qe.updateQueue,n===null?(n=gc(),Qe.updateQueue=n,n.stores=[t]):(r=n.stores,r===null?n.stores=[t]:r.push(t))}function yb(t,n,r,l){n.value=r,n.getSnapshot=l,wb(n)&&kb(t)}function vb(t,n,r){return r(function(){wb(n)&&kb(t)})}function wb(t){var n=t.getSnapshot;t=t.value;try{var r=n();return!Jn(t,r)}catch{return!0}}function kb(t){var n=wr(t,2);n!==null&&Vn(n,t,2)}function ff(t){var n=zn();if(typeof t=="function"){var r=t;if(t=r(),jr){Ae(!0);try{r()}finally{Ae(!1)}}}return n.memoizedState=n.baseState=t,n.queue={pending:null,lanes:0,dispatch:null,lastRenderedReducer:ba,lastRenderedState:t},n}function Eb(t,n,r,l){return t.baseState=r,uf(t,Tt,typeof l=="function"?l:ba)}function x_(t,n,r,l,f){if(wc(t))throw Error(s(485));if(t=n.action,t!==null){var h={payload:f,action:t,next:null,isTransition:!0,status:"pending",value:null,reason:null,listeners:[],then:function(w){h.listeners.push(w)}};ge.T!==null?r(!0):h.isTransition=!1,l(h),r=n.pending,r===null?(h.next=n.pending=h,_b(n,h)):(h.next=r.next,n.pending=r.next=h)}}function _b(t,n){var r=n.action,l=n.payload,f=t.state;if(n.isTransition){var h=ge.T,w={};w.types=h!==null?h.types:null,ge.T=w;try{var E=r(f,l),z=ge.S;z!==null&&z(w,E),Nb(t,n,E)}catch(K){pf(t,n,K)}finally{h!==null&&w.types!==null&&(h.types=w.types),ge.T=h}}else try{h=r(f,l),Nb(t,n,h)}catch(K){pf(t,n,K)}}function Nb(t,n,r){r!==null&&typeof r=="object"&&typeof r.then=="function"?r.then(function(l){Sb(t,n,l)},function(l){return pf(t,n,l)}):Sb(t,n,r)}function Sb(t,n,r){n.status="fulfilled",n.value=r,Tb(n),t.state=r,n=t.pending,n!==null&&(r=n.next,r===n?t.pending=null:(r=r.next,n.next=r,_b(t,r)))}function pf(t,n,r){var l=t.pending;if(t.pending=null,l!==null){l=l.next;do n.status="rejected",n.reason=r,Tb(n),n=n.next;while(n!==l)}t.action=null}function Tb(t){t=t.listeners;for(var n=0;n<t.length;n++)(0,t[n])()}function Cb(t,n){return n}function Ab(t,n){if(tt){var r=Mt.formState;if(r!==null){e:{var l=Qe;if(tt){if(zt){t:{for(var f=zt,h=fi;f.nodeType!==8;){if(!h){f=null;break t}if(f=hi(f.nextSibling),f===null){f=null;break t}}h=f.data,f=h==="F!"||h==="F"?f:null}if(f){zt=hi(f.nextSibling),l=f.data==="F!";break e}}$a(l)}l=!1}l&&(n=r[0])}}return r=zn(),r.memoizedState=r.baseState=n,l={pending:null,lanes:0,dispatch:null,lastRenderedReducer:Cb,lastRenderedState:n},r.queue=l,r=Vb.bind(null,Qe,l),l.dispatch=r,l=ff(!1),h=yf.bind(null,Qe,!1,l.queue),l=zn(),f={state:n,dispatch:null,action:t,pending:null},l.queue=f,r=x_.bind(null,Qe,f,h,r),f.dispatch=r,l.memoizedState=t,[n,r,!1]}function Ob(t){var n=Gt();return Mb(n,Tt,t)}function Mb(t,n,r){if(n=uf(t,n,Cb)[0],t=xc(ba)[0],typeof n=="object"&&n!==null&&typeof n.then=="function")try{var l=zl(n)}catch(w){throw w===ys?oc:w}else l=n;n=Gt();var f=n.queue,h=f.dispatch;return r!==n.memoizedState&&(Qe.flags|=2048,Es(9,{destroy:void 0},y_.bind(null,f,r),null)),[l,h,t]}function y_(t,n){t.action=n}function jb(t){var n=Gt(),r=Tt;if(r!==null)return Mb(n,r,t);Gt(),n=n.memoizedState,r=Gt();var l=r.queue.dispatch;return r.memoizedState=t,[n,l,!1]}function Es(t,n,r,l){return t={tag:t,create:r,deps:l,inst:n,next:null},n=Qe.updateQueue,n===null&&(n=gc(),Qe.updateQueue=n),r=n.lastEffect,r===null?n.lastEffect=t.next=t:(l=r.next,r.next=t,t.next=l,n.lastEffect=t),t}function Rb(){return Gt().memoizedState}function yc(t,n,r,l){var f=zn();Qe.flags|=t,f.memoizedState=Es(1|n,{destroy:void 0},r,l===void 0?null:l)}function vc(t,n,r,l){var f=Gt();l=l===void 0?null:l;var h=f.memoizedState.inst;Tt!==null&&l!==null&&af(l,Tt.memoizedState.deps)?f.memoizedState=Es(n,h,r,l):(Qe.flags|=t,f.memoizedState=Es(1|n,h,r,l))}function Db(t,n){yc(8390656,8,t,n)}function hf(t,n){vc(2048,8,t,n)}function v_(t){Qe.flags|=4;var n=Qe.updateQueue;if(n===null)n=gc(),Qe.updateQueue=n,n.events=[t];else{var r=n.events;r===null?n.events=[t]:r.push(t)}}function zb(t){var n=Gt().memoizedState;return v_({ref:n,nextImpl:t}),function(){if((bt&2)!==0)throw Error(s(440));return n.impl.apply(void 0,arguments)}}function Lb(t,n){return vc(4,2,t,n)}function Ib(t,n){return vc(4,4,t,n)}function Ub(t,n){if(typeof n=="function"){t=t();var r=n(t);return function(){typeof r=="function"?r():n(null)}}if(n!=null)return t=t(),n.current=t,function(){n.current=null}}function Bb(t,n,r){r=r!=null?r.concat([t]):null,vc(4,4,Ub.bind(null,n,t),r)}function mf(){}function $b(t,n){var r=Gt();n=n===void 0?null:n;var l=r.memoizedState;return n!==null&&af(n,l[1])?l[0]:(r.memoizedState=[t,n],t)}function Hb(t,n){var r=Gt();n=n===void 0?null:n;var l=r.memoizedState;if(n!==null&&af(n,l[1]))return l[0];if(l=t(),jr){Ae(!0);try{t()}finally{Ae(!1)}}return r.memoizedState=[l,n],l}function gf(t,n,r){return r===void 0||(ga&1073741824)!==0&&(st&261930)===0?t.memoizedState=n:(t.memoizedState=r,t=Qx(),Qe.lanes|=t,Ja|=t,r)}function Pb(t,n,r,l){return Jn(r,n)?r:Ya.current!==null?(t=gf(t,r,l),Jn(t,n)||(Wt=!0),t):(ga&106)===0||(ga&1073741824)!==0&&(st&261930)===0?(Wt=!0,t.memoizedState=r):(t=Qx(),Qe.lanes|=t,Ja|=t,n)}function Fb(t,n,r,l,f){var h=ke.p;ke.p=h!==0&&8>h?h:8;var w=ge.T,E={};E.types=w!==null?w.types:null,ge.T=E,yf(t,!1,n,r);try{var z=f(),K=ge.S;if(K!==null&&K(E,z),z!==null&&typeof z=="object"&&typeof z.then=="function"){var W=m_(z,l);Ll(t,n,W,ii(t))}else Ll(t,n,l,ii(t))}catch(le){Ll(t,n,{then:function(){},status:"rejected",reason:le},ii())}finally{ke.p=h,w!==null&&E.types!==null&&(w.types=E.types),ge.T=w}}function w_(){}function bf(t,n,r,l){if(t.tag!==5)throw Error(s(476));var f=qb(t).queue;Fb(t,f,n,Dt,r===null?w_:function(){return Gb(t),r(l)})}function qb(t){var n=t.memoizedState;if(n!==null)return n;n={memoizedState:Dt,baseState:Dt,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:ba,lastRenderedState:Dt},next:null};var r={};return n.next={memoizedState:r,baseState:r,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:ba,lastRenderedState:r},next:null},t.memoizedState=n,t=t.alternate,t!==null&&(t.memoizedState=n),n}function Gb(t){var n=qb(t);n.next===null&&(n=t.alternate.memoizedState),Ll(t,n.next.queue,{},ii())}function xf(){return yn(Ps)}function Yb(){return Gt().memoizedState}function Kb(){return Gt().memoizedState}function k_(t){for(var n=t.return;n!==null;){switch(n.tag){case 24:case 3:var r=ii();t=qa(r);var l=Ga(n,t,r);l!==null&&(Vn(l,n,r),Ol(l,n,r)),n={cache:Gd()},t.payload=n;return}n=n.return}}function E_(t,n,r){var l=ii();r={lane:l,revertLane:0,gesture:null,action:r,hasEagerState:!1,eagerState:null,next:null},wc(t)?Xb(n,r):(r=Ld(t,n,r,l),r!==null&&(Vn(r,t,l),Zb(r,n,l)))}function Vb(t,n,r){var l=ii();Ll(t,n,r,l)}function Ll(t,n,r,l){var f={lane:l,revertLane:0,gesture:null,action:r,hasEagerState:!1,eagerState:null,next:null};if(wc(t))Xb(n,f);else{var h=t.alternate;if(t.lanes===0&&(h===null||h.lanes===0)&&(h=n.lastRenderedReducer,h!==null))try{var w=n.lastRenderedState,E=h(w,r);if(f.hasEagerState=!0,f.eagerState=E,Jn(E,w))return Jo(t,n,f,0),Mt===null&&Qo(),!1}catch{}if(r=Ld(t,n,f,l),r!==null)return Vn(r,t,l),Zb(r,n,l),!0}return!1}function yf(t,n,r,l){if(l={lane:2,revertLane:cp(),gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},wc(t)){if(n)throw Error(s(479))}else n=Ld(t,r,l,2),n!==null&&Vn(n,t,2)}function wc(t){var n=t.alternate;return t===Qe||n!==null&&n===Qe}function Xb(t,n){ws=hc=!0;var r=t.pending;r===null?n.next=n:(n.next=r.next,r.next=n),t.pending=n}function Zb(t,n,r){if((r&4194048)!==0){var l=n.lanes;l&=t.pendingLanes,r|=l,n.lanes=r,Ei(t,r)}}var kc={readContext:yn,use:bc,useCallback:Pt,useContext:Pt,useEffect:Pt,useImperativeHandle:Pt,useLayoutEffect:Pt,useInsertionEffect:Pt,useMemo:Pt,useReducer:Pt,useRef:Pt,useState:Pt,useDebugValue:Pt,useDeferredValue:Pt,useTransition:Pt,useSyncExternalStore:Pt,useId:Pt,useHostTransitionStatus:Pt,useFormState:Pt,useActionState:Pt,useOptimistic:Pt,useMemoCache:Pt,useCacheRefresh:Pt,useEffectEvent:Pt},Qb={readContext:yn,use:bc,useCallback:function(t,n){return zn().memoizedState=[t,n===void 0?null:n],t},useContext:yn,useEffect:Db,useImperativeHandle:function(t,n,r){r=r!=null?r.concat([t]):null,yc(4194308,4,Ub.bind(null,n,t),r)},useLayoutEffect:function(t,n){return yc(4194308,4,t,n)},useInsertionEffect:function(t,n){yc(4,2,t,n)},useMemo:function(t,n){var r=zn();n=n===void 0?null:n;var l=t();if(jr){Ae(!0);try{t()}finally{Ae(!1)}}return r.memoizedState=[l,n],l},useReducer:function(t,n,r){var l=zn();if(r!==void 0){var f=r(n);if(jr){Ae(!0);try{r(n)}finally{Ae(!1)}}}else f=n;return l.memoizedState=l.baseState=f,t={pending:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:f},l.queue=t,t=t.dispatch=E_.bind(null,Qe,t),[l.memoizedState,t]},useRef:function(t){var n=zn();return t={current:t},n.memoizedState=t},useState:function(t){t=ff(t);var n=t.queue,r=Vb.bind(null,Qe,n);return n.dispatch=r,[t.memoizedState,r]},useDebugValue:mf,useDeferredValue:function(t,n){var r=zn();return gf(r,t,n)},useTransition:function(){var t=ff(!1);return t=Fb.bind(null,Qe,t.queue,!0,!1),zn().memoizedState=t,[!1,t]},useSyncExternalStore:function(t,n,r){var l=Qe,f=zn();if(tt){if(r===void 0)throw Error(s(407));r=r()}else{if(r=n(),Mt===null)throw Error(s(349));(st&127)!==0||xb(l,n,r)}f.memoizedState=r;var h={value:r,getSnapshot:n};return f.queue=h,Db(vb.bind(null,l,h,t),[t]),l.flags|=2048,Es(9,{destroy:void 0},yb.bind(null,l,h,r,n),null),r},useId:function(){var t=zn(),n=Mt.identifierPrefix;if(tt){var r=Bi,l=Ui;r=(l&~(1<<32-Ne(l)-1)).toString(32)+r,n="_"+n+"R_"+r,r=mc++,0<r&&(n+="H"+r.toString(32)),n+="_"}else r=g_++,n="_"+n+"r_"+r.toString(32)+"_";return t.memoizedState=n},useHostTransitionStatus:xf,useFormState:Ab,useActionState:Ab,useOptimistic:function(t){var n=zn();n.memoizedState=n.baseState=t;var r={pending:null,lanes:0,dispatch:null,lastRenderedReducer:null,lastRenderedState:null};return n.queue=r,n=yf.bind(null,Qe,!0,r),r.dispatch=n,[t,n]},useMemoCache:cf,useCacheRefresh:function(){return zn().memoizedState=k_.bind(null,Qe)},useEffectEvent:function(t){var n=zn(),r={impl:t};return n.memoizedState=r,function(){if((bt&2)!==0)throw Error(s(440));return r.impl.apply(void 0,arguments)}}},Jb={readContext:yn,use:bc,useCallback:$b,useContext:yn,useEffect:hf,useImperativeHandle:Bb,useInsertionEffect:Lb,useLayoutEffect:Ib,useMemo:Hb,useReducer:xc,useRef:Rb,useState:function(){return xc(ba)},useDebugValue:mf,useDeferredValue:function(t,n){var r=Gt();return Pb(r,Tt.memoizedState,t,n)},useTransition:function(){var t=xc(ba)[0],n=Gt().memoizedState;return[typeof t=="boolean"?t:zl(t),n]},useSyncExternalStore:bb,useId:Yb,useHostTransitionStatus:xf,useFormState:Ob,useActionState:Ob,useOptimistic:function(t,n){var r=Gt();return Eb(r,Tt,t,n)},useMemoCache:cf,useCacheRefresh:Kb,useEffectEvent:zb},__={readContext:yn,use:bc,useCallback:$b,useContext:yn,useEffect:hf,useImperativeHandle:Bb,useInsertionEffect:Lb,useLayoutEffect:Ib,useMemo:Hb,useReducer:df,useRef:Rb,useState:function(){return df(ba)},useDebugValue:mf,useDeferredValue:function(t,n){var r=Gt();return Tt===null?gf(r,t,n):Pb(r,Tt.memoizedState,t,n)},useTransition:function(){var t=df(ba)[0],n=Gt().memoizedState;return[typeof t=="boolean"?t:zl(t),n]},useSyncExternalStore:bb,useId:Yb,useHostTransitionStatus:xf,useFormState:jb,useActionState:jb,useOptimistic:function(t,n){var r=Gt();return Tt!==null?Eb(r,Tt,t,n):(r.baseState=t,[t,r.queue.dispatch])},useMemoCache:cf,useCacheRefresh:Kb,useEffectEvent:zb};function vf(t,n,r,l){n=t.memoizedState,r=r(l,n),r=r==null?n:A({},n,r),t.memoizedState=r,t.lanes===0&&(t.updateQueue.baseState=r)}var wf={enqueueSetState:function(t,n,r){t=t._reactInternals;var l=ii(),f=qa(l);f.payload=n,r!=null&&(f.callback=r),n=Ga(t,f,l),n!==null&&(Vn(n,t,l),Ol(n,t,l))},enqueueReplaceState:function(t,n,r){t=t._reactInternals;var l=ii(),f=qa(l);f.tag=1,f.payload=n,r!=null&&(f.callback=r),n=Ga(t,f,l),n!==null&&(Vn(n,t,l),Ol(n,t,l))},enqueueForceUpdate:function(t,n){t=t._reactInternals;var r=ii(),l=qa(r);l.tag=2,n!=null&&(l.callback=n),n=Ga(t,l,r),n!==null&&(Vn(n,t,r),Ol(n,t,r))}};function Wb(t,n,r,l,f,h,w){return t=t.stateNode,typeof t.shouldComponentUpdate=="function"?t.shouldComponentUpdate(l,h,w):n.prototype&&n.prototype.isPureReactComponent?!kl(r,l)||!kl(f,h):!0}function ex(t,n,r,l){t=n.state,typeof n.componentWillReceiveProps=="function"&&n.componentWillReceiveProps(r,l),typeof n.UNSAFE_componentWillReceiveProps=="function"&&n.UNSAFE_componentWillReceiveProps(r,l),n.state!==t&&wf.enqueueReplaceState(n,n.state,null)}function Rr(t,n){var r=n;if("ref"in n){r={};for(var l in n)l!=="ref"&&(r[l]=n[l])}if(t=t.defaultProps){r===n&&(r=A({},r));for(var f in t)r[f]===void 0&&(r[f]=t[f])}return r}function tx(t){Zo(t)}function nx(t){console.error(t)}function ix(t){Zo(t)}function Ec(t,n){try{var r=t.onUncaughtError;r(n.value,{componentStack:n.stack})}catch(l){setTimeout(function(){throw l})}}function ax(t,n,r){try{var l=t.onCaughtError;l(r.value,{componentStack:r.stack,errorBoundary:n.tag===1?n.stateNode:null})}catch(f){setTimeout(function(){throw f})}}function kf(t,n,r){return r=qa(r),r.tag=3,r.payload={element:null},r.callback=function(){Ec(t,n)},r}function rx(t){return t=qa(t),t.tag=3,t}function sx(t,n,r,l){var f=r.type.getDerivedStateFromError;if(typeof f=="function"){var h=l.value;t.payload=function(){return f(h)},t.callback=function(){ax(n,r,l)}}var w=r.stateNode;w!==null&&typeof w.componentDidCatch=="function"&&(t.callback=function(){ax(n,r,l),typeof f!="function"&&(Wa===null?Wa=new Set([this]):Wa.add(this));var E=l.stack;this.componentDidCatch(l.value,{componentStack:E!==null?E:""})})}function N_(t,n,r,l,f){if(r.flags|=32768,l!==null&&typeof l=="object"&&typeof l.then=="function"){if(n=r.alternate,n!==null&&Nr(n,r,f,!0),r=vn.current,r!==null){switch(r.tag){case 31:case 13:case 19:return Cn===null?qc():r.alternate===null&&Ft===0&&(Ft=3),r.flags&=-257,r.flags|=65536,r.lanes=f,l===cc?r.flags|=16384:(n=r.updateQueue,n===null?r.updateQueue=new Set([l]):n.add(l),sp(t,l,f)),!1;case 22:return r.flags|=65536,l===cc?r.flags|=16384:(n=r.updateQueue,n===null?(n={transitions:null,markerInstances:null,retryQueue:new Set([l])},r.updateQueue=n):(r=n.retryQueue,r===null?n.retryQueue=new Set([l]):r.add(l)),sp(t,l,f)),!1}throw Error(s(435,r.tag))}return sp(t,l,f),qc(),!1}if(tt)return n=vn.current,n!==null?((n.flags&65536)===0&&(n.flags|=256),n.flags|=65536,n.lanes=f,l!==Hd&&(t=Error(s(422),{cause:l}),Nl(ci(t,r)))):(l!==Hd&&(n=Error(s(423),{cause:l}),Nl(ci(n,r))),t=t.current.alternate,t.flags|=65536,f&=-f,t.lanes|=f,l=ci(l,r),f=kf(t.stateNode,l,f),Qd(t,f),Ft!==4&&(Ft=2)),!1;var h=Error(s(520),{cause:l});if(h=ci(h,r),ql===null?ql=[h]:ql.push(h),Ft!==4&&(Ft=2),n===null)return!0;l=ci(l,r),r=n;do{switch(r.tag){case 3:return r.flags|=65536,t=f&-f,r.lanes|=t,t=kf(r.stateNode,l,t),Qd(r,t),!1;case 1:if(n=r.type,h=r.stateNode,(r.flags&128)===0&&(typeof n.getDerivedStateFromError=="function"||h!==null&&typeof h.componentDidCatch=="function"&&(Wa===null||!Wa.has(h))))return r.flags|=65536,f&=-f,r.lanes|=f,f=rx(f),sx(f,t,r,l),Qd(r,f),!1;break;case 22:if(r.memoizedState!==null)return r.flags|=65536,!1}r=r.return}while(r!==null);return!1}var Ef=Error(s(461)),Wt=!1;function on(t,n,r,l){n.child=t===null?ub(n,null,r,l):Mr(n,t.child,r,l)}function lx(t,n,r,l,f){r=r.render;var h=n.ref;if("ref"in l){var w={};for(var E in l)E!=="ref"&&(w[E]=l[E])}else w=l;return Sr(n),l=rf(t,n,r,w,h,f),E=sf(),t!==null&&!Wt?(lf(t,n,f),xa(t,n,f)):(tt&&E&&nc(n),n.flags|=1,on(t,n,l,f),n.child)}function ox(t,n,r,l,f){if(t===null){var h=r.type;return typeof h=="function"&&!Id(h)&&h.defaultProps===void 0&&r.compare===null?(n.tag=15,n.type=h,cx(t,n,h,l,f)):(t=ec(r.type,null,l,n,n.mode,f),t.ref=n.ref,t.return=n,n.child=t)}if(h=t.child,!Mf(t,f)){var w=h.memoizedProps;if(r=r.compare,r=r!==null?r:kl,r(w,l)&&t.ref===n.ref)return xa(t,n,f)}return n.flags|=1,t=fa(h,l),t.ref=n.ref,t.return=n,n.child=t}function cx(t,n,r,l,f){if(t!==null){var h=t.memoizedProps;if(kl(h,l)&&t.ref===n.ref)if(Wt=!1,n.pendingProps=l=h,Mf(t,f))(t.flags&131072)!==0&&(Wt=!0);else return n.lanes=t.lanes,xa(t,n,f)}return _f(t,n,r,l,f)}function ux(t,n,r,l){var f=l.children,h=t!==null?t.memoizedState:null;if(t===null&&n.stateNode===null&&(n.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),l.mode==="hidden"){if((n.flags&128)!==0){if(h=h!==null?h.baseLanes|r:r,t!==null){for(l=n.child=t.child,f=0;l!==null;)f=f|l.lanes|l.childLanes,l=l.sibling;l=f&~h}else l=0,n.child=null;return dx(t,n,h,r,l)}if((r&536870912)!==0)n.memoizedState={baseLanes:0,cachePool:null},t!==null&&lc(n,h!==null?h.cachePool:null),h!==null?pb(n,h):Wd(),hb(n);else return l=n.lanes=536870912,dx(t,n,h!==null?h.baseLanes|r:r,r,l)}else h!==null?(lc(n,h.cachePool),pb(n,h),Va(),n.memoizedState=null):(t!==null&&lc(n,null),Wd(),Va());return on(t,n,f,r),n.child}function Il(t,n){return t!==null&&t.tag===22||n.stateNode!==null||(n.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),n.sibling}function dx(t,n,r,l,f){var h=Kd();return h=h===null?null:{parent:Qt._currentValue,pool:h},n.memoizedState={baseLanes:r,cachePool:h},t!==null&&lc(n,null),Wd(),hb(n),t!==null&&Nr(t,n,l,!0),n.childLanes=f,null}function _c(t,n){return n=Nc({mode:n.mode,children:n.children},t.mode),n.ref=t.ref,t.child=n,n.return=t,n}function fx(t,n,r){return Mr(n,t.child,null,r),t=_c(n,n.pendingProps),t.flags|=2,Wn(n),n.memoizedState=null,t}function S_(t,n,r){var l=n.pendingProps,f=(n.flags&128)!==0;if(n.flags&=-129,t===null){if(tt){if(l.mode==="hidden")return t=_c(n,l),n.lanes=536870912,t.memoizedState={baseLanes:0,cachePool:null},Il(null,t);if(tf(n),(t=zt)?(t=Uy(t,fi),t=t!==null&&t.data==="&"?t:null,t!==null&&(n.memoizedState={dehydrated:t,treeContext:Ua!==null?{id:Ui,overflow:Bi}:null,retryLane:536870912,hydrationErrors:null},r=Xg(t),r.return=n,n.child=r,pn=n,zt=null)):t=null,t===null)throw $a(n);return n.lanes=536870912,null}return _c(n,l)}var h=t.memoizedState;if(h!==null){var w=h.dehydrated;if(tf(n),f)if(n.flags&256)n.flags&=-257,n=fx(t,n,r);else if(n.memoizedState!==null)n.child=t.child,n.flags|=128,n=null;else throw Error(s(558));else if(Wt||Nr(t,n,r,!1),f=(r&t.childLanes)!==0,Wt||f){if(Ya.current===null){if(l=Mt,l!==null&&(w=fl(l,r),w!==0&&w!==h.retryLane))throw h.retryLane=w,wr(t,w),Vn(l,t,w),Ef;qc()}n=fx(t,n,r)}else t=h.treeContext,zt=hi(w.nextSibling),pn=n,tt=!0,Ba=null,fi=!1,t!==null&&Jg(n,t),n=_c(n,l),n.flags|=134221824;return n}return t=fa(t.child,{mode:l.mode,children:l.children}),t.ref=n.ref,n.child=t,t.return=n,t}function _s(t,n){var r=n.ref;if(r===null)t!==null&&t.ref!==null&&(n.flags|=4194816);else{if(typeof r!="function"&&typeof r!="object")throw Error(s(284));(t===null||t.ref!==r)&&(n.flags|=4194816)}}function _f(t,n,r,l,f){return Sr(n),r=rf(t,n,r,l,void 0,f),l=sf(),t!==null&&!Wt?(lf(t,n,f),xa(t,n,f)):(tt&&l&&nc(n),n.flags|=1,on(t,n,r,f),n.child)}function px(t,n,r,l,f,h){return Sr(n),n.updateQueue=null,r=gb(n,l,r,f),mb(t),l=sf(),t!==null&&!Wt?(lf(t,n,h),xa(t,n,h)):(tt&&l&&nc(n),n.flags|=1,on(t,n,r,h),n.child)}function hx(t,n,r,l,f){if(Sr(n),n.stateNode===null){var h=hs,w=r.contextType;typeof w=="object"&&w!==null&&(h=yn(w)),h=new r(l,h),n.memoizedState=h.state!==null&&h.state!==void 0?h.state:null,h.updater=wf,n.stateNode=h,h._reactInternals=n,h=n.stateNode,h.props=l,h.state=n.memoizedState,h.refs={},Xd(n),w=r.contextType,h.context=typeof w=="object"&&w!==null?yn(w):hs,h.state=n.memoizedState,w=r.getDerivedStateFromProps,typeof w=="function"&&(vf(n,r,w,l),h.state=n.memoizedState),typeof r.getDerivedStateFromProps=="function"||typeof h.getSnapshotBeforeUpdate=="function"||typeof h.UNSAFE_componentWillMount!="function"&&typeof h.componentWillMount!="function"||(w=h.state,typeof h.componentWillMount=="function"&&h.componentWillMount(),typeof h.UNSAFE_componentWillMount=="function"&&h.UNSAFE_componentWillMount(),w!==h.state&&wf.enqueueReplaceState(h,h.state,null),jl(n,l,h,f),Ml(),h.state=n.memoizedState),typeof h.componentDidMount=="function"&&(n.flags|=4194308),l=!0}else if(t===null){h=n.stateNode;var E=n.memoizedProps,z=Rr(r,E);h.props=z;var K=h.context,W=r.contextType;w=hs,typeof W=="object"&&W!==null&&(w=yn(W));var le=r.getDerivedStateFromProps;W=typeof le=="function"||typeof h.getSnapshotBeforeUpdate=="function",E=n.pendingProps!==E,W||typeof h.UNSAFE_componentWillReceiveProps!="function"&&typeof h.componentWillReceiveProps!="function"||(E||K!==w)&&ex(n,h,l,w),Fa=!1;var G=n.memoizedState;h.state=G,jl(n,l,h,f),Ml(),K=n.memoizedState,E||G!==K||Fa?(typeof le=="function"&&(vf(n,r,le,l),K=n.memoizedState),(z=Fa||Wb(n,r,z,l,G,K,w))?(W||typeof h.UNSAFE_componentWillMount!="function"&&typeof h.componentWillMount!="function"||(typeof h.componentWillMount=="function"&&h.componentWillMount(),typeof h.UNSAFE_componentWillMount=="function"&&h.UNSAFE_componentWillMount()),typeof h.componentDidMount=="function"&&(n.flags|=4194308)):(typeof h.componentDidMount=="function"&&(n.flags|=4194308),n.memoizedProps=l,n.memoizedState=K),h.props=l,h.state=K,h.context=w,l=z):(typeof h.componentDidMount=="function"&&(n.flags|=4194308),l=!1)}else{h=n.stateNode,Zd(t,n),w=n.memoizedProps,W=Rr(r,w),h.props=W,le=n.pendingProps,G=h.context,K=r.contextType,z=hs,typeof K=="object"&&K!==null&&(z=yn(K)),E=r.getDerivedStateFromProps,(K=typeof E=="function"||typeof h.getSnapshotBeforeUpdate=="function")||typeof h.UNSAFE_componentWillReceiveProps!="function"&&typeof h.componentWillReceiveProps!="function"||(w!==le||G!==z)&&ex(n,h,l,z),Fa=!1,G=n.memoizedState,h.state=G,jl(n,l,h,f),Ml();var Q=n.memoizedState;w!==le||G!==Q||Fa||t!==null&&t.dependencies!==null&&rc(t.dependencies)?(typeof E=="function"&&(vf(n,r,E,l),Q=n.memoizedState),(W=Fa||Wb(n,r,W,l,G,Q,z)||t!==null&&t.dependencies!==null&&rc(t.dependencies))?(K||typeof h.UNSAFE_componentWillUpdate!="function"&&typeof h.componentWillUpdate!="function"||(typeof h.componentWillUpdate=="function"&&h.componentWillUpdate(l,Q,z),typeof h.UNSAFE_componentWillUpdate=="function"&&h.UNSAFE_componentWillUpdate(l,Q,z)),typeof h.componentDidUpdate=="function"&&(n.flags|=4),typeof h.getSnapshotBeforeUpdate=="function"&&(n.flags|=1024)):(typeof h.componentDidUpdate!="function"||w===t.memoizedProps&&G===t.memoizedState||(n.flags|=4),typeof h.getSnapshotBeforeUpdate!="function"||w===t.memoizedProps&&G===t.memoizedState||(n.flags|=1024),n.memoizedProps=l,n.memoizedState=Q),h.props=l,h.state=Q,h.context=z,l=W):(typeof h.componentDidUpdate!="function"||w===t.memoizedProps&&G===t.memoizedState||(n.flags|=4),typeof h.getSnapshotBeforeUpdate!="function"||w===t.memoizedProps&&G===t.memoizedState||(n.flags|=1024),l=!1)}return h=l,_s(t,n),l=(n.flags&128)!==0,h||l?(h=n.stateNode,r=l&&typeof r.getDerivedStateFromError!="function"?null:h.render(),n.flags|=1,t!==null&&l?(n.child=Mr(n,t.child,null,f),n.child=Mr(n,null,r,f)):on(t,n,r,f),n.memoizedState=h.state,t=n.child):t=xa(t,n,f),t}function mx(t,n,r,l){return Er(),n.flags|=256,on(t,n,r,l),n.child}var Nf={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null};function Sf(t){return{baseLanes:t,cachePool:ab()}}function Tf(t,n,r){return t=t!==null?t.childLanes&~r:0,n&&(t|=ni),t}function gx(t,n,r){var l=n.pendingProps,f=!1,h=(n.flags&128)!==0,w;if((w=h)||(w=t!==null&&t.memoizedState===null?!1:(wn.current&2)!==0),w&&(f=!0,n.flags&=-129),w=(n.flags&32)!==0,n.flags&=-33,t===null){if(tt){if(f?Ka(n):Va(),(t=zt)?(t=Uy(t,fi),t=t!==null&&t.data!=="&"?t:null,t!==null&&(n.memoizedState={dehydrated:t,treeContext:Ua!==null?{id:Ui,overflow:Bi}:null,retryLane:536870912,hydrationErrors:null},r=Xg(t),r.return=n,n.child=r,pn=n,zt=null)):t=null,t===null)throw $a(n);return Sp(t)?n.lanes=32:n.lanes=536870912,null}return h=l.children,l=l.fallback,f?(Va(),f=n.mode,h=Nc({mode:"hidden",children:h},f),l=kr(l,f,r,null),h.return=n,l.return=n,h.sibling=l,n.child=h,l=n.child,l.memoizedState=Sf(r),l.childLanes=Tf(t,w,r),n.memoizedState=Nf,Il(null,l)):(Ka(n),Cf(n,h))}var E=t.memoizedState;if(E!==null){var z=E.dehydrated;if(z!==null)return T_(t,n,h,w,l,z,E,r)}return f?(Va(),f=l.fallback,h=n.mode,E=t.child,z=E.sibling,l=fa(E,{mode:"hidden",children:l.children}),l.subtreeFlags=E.subtreeFlags&1206910976,z!==null?f=fa(z,f):(f=kr(f,h,r,null),f.flags|=2),f.return=n,l.return=n,l.sibling=f,n.child=l,Il(null,l),l=n.child,f=t.child.memoizedState,f===null?f=Sf(r):(h=f.cachePool,h!==null?(E=Qt._currentValue,h=h.parent!==E?{parent:E,pool:E}:h):h=ab(),f={baseLanes:f.baseLanes|r,cachePool:h}),l.memoizedState=f,l.childLanes=Tf(t,w,r),n.memoizedState=Nf,Il(t.child,l)):(Ka(n),r=t.child,t=r.sibling,r=fa(r,{mode:"visible",children:l.children}),r.return=n,r.sibling=null,t!==null&&(w=n.deletions,w===null?(n.deletions=[t],n.flags|=16):w.push(t)),n.child=r,n.memoizedState=null,r)}function Cf(t,n){return n=Nc({mode:"visible",children:n},t.mode),n.return=t,t.child=n}function Nc(t,n){return t=qn(22,t,null,n),t.lanes=0,t}function Sc(t,n,r){return Mr(n,t.child,null,r),t=Cf(n,n.pendingProps.children),t.flags|=2,n.memoizedState=null,t}function T_(t,n,r,l,f,h,w,E){if(r)return n.flags&256?(Ka(n),n.flags&=-257,Sc(t,n,E)):n.memoizedState!==null?(Va(),n.child=t.child,n.flags|=128,null):(Va(),h=f.fallback,w=n.mode,f=Nc({mode:"visible",children:f.children},w),h=kr(h,w,E,null),h.flags|=2,f.return=n,h.return=n,f.sibling=h,n.child=f,Mr(n,t.child,null,E),f=n.child,f.memoizedState=Sf(E),f.childLanes=Tf(t,l,E),n.memoizedState=Nf,Il(null,f));if(Ka(n),Sp(h)){if(l=h.nextSibling&&h.nextSibling.dataset,l)var z=l.dgst;return l=z,l!==""&&(f=Error(s(419)),f.stack="",f.digest=l,Nl({value:f,source:null,stack:null})),Sc(t,n,E)}if(Wt||Nr(t,n,E,!1),l=(E&t.childLanes)!==0,Wt||l){if(Ya.current!==null)return Sc(t,n,E);if(l=Mt,l!==null&&(f=fl(l,E),f!==0&&f!==w.retryLane))throw w.retryLane=f,wr(t,f),Vn(l,t,f),Ef;return Np(h)||qc(),Sc(t,n,E)}return Np(h)?(n.flags|=192,n.child=t.child,null):(t=w.treeContext,zt=hi(h.nextSibling),pn=n,tt=!0,Ba=null,fi=!1,t!==null&&Jg(n,t),n=Cf(n,f.children),n.flags|=134221824,n)}function bx(t,n,r){t.lanes|=n;var l=t.alternate;l!==null&&(l.lanes|=n),ac(t.return,n,r)}function xx(t){for(var n=null;t!==null;){var r=t.alternate;r!==null&&pc(r)===null&&(n=t),t=t.sibling}return n}function Tc(t,n,r,l,f,h){var w=t.memoizedState;w===null?t.memoizedState={isBackwards:n,rendering:null,renderingStartTime:0,last:l,tail:r,tailMode:f,treeForkCount:h}:(w.isBackwards=n,w.rendering=null,w.renderingStartTime=0,w.last=l,w.tail=r,w.tailMode=f,w.treeForkCount=h)}function Af(t){var n=t.child;for(t.child=null;n!==null;){var r=n.sibling;n.sibling=t.child,t.child=n,n=r}}function Of(t,n,r){var l=n.pendingProps,f=l.revealOrder,h=l.tail;l=l.children;var w=wn.current;if(n.flags&128)return Rl(n,w),null;var E=(w&2)!==0;if(E?(w=w&1|2,n.flags|=128):w&=1,Rl(n,w),f==="backwards"&&t!==null?(Af(t),on(t,n,l,r),Af(t)):on(t,n,l,r),l=tt?_l:0,!E&&t!==null&&(t.flags&128)!==0)e:for(t=n.child;t!==null;){if(t.tag===13)t.memoizedState!==null&&bx(t,r,n);else if(t.tag===19)bx(t,r,n);else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===n)break e;for(;t.sibling===null;){if(t.return===null||t.return===n)break e;t=t.return}t.sibling.return=t.return,t=t.sibling}switch(f){case"backwards":r=xx(n.child),r===null?(f=n.child,n.child=null):(f=r.sibling,r.sibling=null,Af(n)),Tc(n,!0,f,null,h,l);break;case"unstable_legacy-backwards":for(r=null,f=n.child,n.child=null;f!==null;){if(t=f.alternate,t!==null&&pc(t)===null){n.child=f;break}t=f.sibling,f.sibling=r,r=f,f=t}Tc(n,!0,r,null,h,l);break;case"together":Tc(n,!1,null,null,void 0,l);break;case"independent":n.memoizedState=null;break;default:r=xx(n.child),r===null?(f=n.child,n.child=null):(f=r.sibling,r.sibling=null),Tc(n,!1,f,r,h,l)}return n.child}function yx(t,n,r){var l=n.pendingProps;return Ha(n,n.type,l.value),on(t,n,l.children,r),n.child}function xa(t,n,r){if(t!==null&&(n.dependencies=t.dependencies),Ja|=n.lanes,(r&n.childLanes)===0)if(t!==null){if(Nr(t,n,r,!1),(r&n.childLanes)===0)return null}else return null;if(t!==null&&n.child!==t.child)throw Error(s(153));if(n.child!==null){for(t=n.child,r=fa(t,t.pendingProps),n.child=r,r.return=n;t.sibling!==null;)t=t.sibling,r=r.sibling=fa(t,t.pendingProps),r.return=n;r.sibling=null}return n.child}function Mf(t,n){return(t.lanes&n)!==0?!0:(t=t.dependencies,!!(t!==null&&rc(t)))}function C_(t,n,r){switch(n.tag){case 3:Xe(n,n.stateNode.containerInfo),Ha(n,Qt,t.memoizedState.cache),Er();break;case 27:case 5:ft(n);break;case 4:Xe(n,n.stateNode.containerInfo);break;case 10:Ha(n,n.type,n.memoizedProps.value);break;case 31:if(n.memoizedState!==null)return n.flags|=128,tf(n),null;break;case 13:var l=n.memoizedState;if(l!==null){if(l.dehydrated!==null)return Ka(n),n.flags|=128,null;l=Nr(t,n,r,!1);var f=n.child.childLanes;return l||(r&f)!==0?gx(t,n,r):(Ka(n),t=xa(t,n,r),t!==null?t.sibling:null)}Ka(n);break;case 19:if(n.flags&128)return Of(t,n,r);if(f=(t.flags&128)!==0,l=(r&n.childLanes)!==0,l||(Nr(t,n,r,!1),l=(r&n.childLanes)!==0),f){if(l)return Of(t,n,r);n.flags|=128}if(f=n.memoizedState,f!==null&&(f.rendering=null,f.tail=null,f.lastEffect=null),Rl(n,wn.current),l)break;return null;case 22:return n.lanes=0,ux(t,n,r,n.pendingProps);case 24:Ha(n,Qt,t.memoizedState.cache)}return xa(t,n,r)}function vx(t,n,r){if(t!==null)if(t.memoizedProps!==n.pendingProps)Wt=!0;else{if(!Mf(t,r)&&(n.flags&128)===0)return Wt=!1,C_(t,n,r);Wt=(t.flags&131072)!==0}else Wt=!1,tt&&(n.flags&1048576)!==0&&Qg(n,_l,n.index);switch(n.lanes=0,n.tag){case 16:e:{var l=n.pendingProps;if(t=Ar(n.elementType),n.type=t,typeof t=="function")Id(t)?(l=Rr(t,l),n.tag=1,n=hx(null,n,t,l,r)):(n.tag=0,n=_f(null,n,t,l,r));else{if(t!=null){var f=t.$$typeof;if(f===P){n.tag=11,n=lx(null,n,t,l,r);break e}else if(f===de){n.tag=14,n=ox(null,n,t,l,r);break e}else if(f===ne){n.tag=10,n.type=t,n=yx(null,n,r);break e}}throw n=Ce(t)||t,Error(s(306,n,""))}}return n;case 0:return _f(t,n,n.type,n.pendingProps,r);case 1:return l=n.type,f=Rr(l,n.pendingProps),hx(t,n,l,f,r);case 3:e:{if(Xe(n,n.stateNode.containerInfo),t===null)throw Error(s(387));l=n.pendingProps;var h=n.memoizedState;f=h.element,Zd(t,n),jl(n,l,null,r);var w=n.memoizedState;if(l=w.cache,Ha(n,Qt,l),l!==h.cache&&qd(n,[Qt],r,!0),Ml(),l=w.element,h.isDehydrated)if(h={element:l,isDehydrated:!1,cache:w.cache},n.updateQueue.baseState=h,n.memoizedState=h,n.flags&256){n=mx(t,n,l,r);break e}else if(l!==f){f=ci(Error(s(424)),n),Nl(f),n=mx(t,n,l,r);break e}else for(t=n.stateNode.containerInfo,t.nodeType===9?t=t.body:t=t.nodeName==="HTML"?t.ownerDocument.body:t,zt=hi(t.firstChild),pn=n,tt=!0,Ba=null,fi=!0,r=ub(n,null,l,r),n.child=r;r;)r.flags=r.flags&-3|134221824,r=r.sibling;else{if(Er(),l===f){n=xa(t,n,r);break e}on(t,n,l,r)}n=n.child}return n;case 26:return _s(t,n),t===null?(r=Gy(n.type,null,n.pendingProps,null))?n.memoizedState=r:tt||(n.stateNode=_y(n.type,n.pendingProps,jn.current,n)):n.memoizedState=Gy(n.type,t.memoizedProps,n.pendingProps,t.memoizedState),null;case 27:return ft(n),t===null&&tt&&(l=n.stateNode=Hy(n.type,n.pendingProps,jn.current),pn=n,fi=!0,f=zt,nr(n.type)?(Tp=f,zt=hi(l.firstChild)):zt=f),on(t,n,n.pendingProps.children,r),_s(t,n),t===null&&(n.flags|=4194304),n.child;case 5:return t===null&&tt&&((f=l=zt)&&(l=kN(l,n.type,n.pendingProps,fi),l!==null?(n.stateNode=l,pn=n,zt=hi(l.firstChild),fi=!1,f=!0):f=!1),f||$a(n)),ft(n),f=n.type,h=n.pendingProps,w=t!==null?t.memoizedProps:null,l=h.children,xp(f,h)?l=null:w!==null&&xp(f,w)&&(n.flags|=32),n.memoizedState!==null&&(f=rf(t,n,b_,null,null,r),Ps._currentValue=f),_s(t,n),on(t,n,l,r),n.child;case 6:return t===null&&tt&&((t=r=zt)&&(r=EN(r,n.pendingProps,fi),r!==null?(n.stateNode=r,pn=n,zt=null,t=!0):t=!1),t||$a(n)),null;case 13:return gx(t,n,r);case 4:return Xe(n,n.stateNode.containerInfo),l=n.pendingProps,t===null?n.child=Mr(n,null,l,r):on(t,n,l,r),n.child;case 11:return lx(t,n,n.type,n.pendingProps,r);case 7:return l=n.pendingProps,_s(t,n),on(t,n,l,r),n.child;case 8:return on(t,n,n.pendingProps.children,r),n.child;case 12:return on(t,n,n.pendingProps.children,r),n.child;case 10:return yx(t,n,r);case 9:return f=n.type._context,l=n.pendingProps.children,Sr(n),f=yn(f),l=l(f),n.flags|=1,on(t,n,l,r),n.child;case 14:return ox(t,n,n.type,n.pendingProps,r);case 15:return cx(t,n,n.type,n.pendingProps,r);case 19:return Of(t,n,r);case 31:return S_(t,n,r);case 22:return ux(t,n,r,n.pendingProps);case 24:return Sr(n),l=yn(Qt),t===null?(f=Kd(),f===null&&(f=Mt,h=Gd(),f.pooledCache=h,h.refCount++,h!==null&&(f.pooledCacheLanes|=r),f=h),n.memoizedState={parent:l,cache:f},Xd(n),Ha(n,Qt,f)):((t.lanes&r)!==0&&(Zd(t,n),jl(n,null,null,r),Ml()),f=t.memoizedState,h=n.memoizedState,f.parent!==l?(f={parent:l,cache:l},n.memoizedState=f,n.lanes===0&&(n.memoizedState=n.updateQueue.baseState=f),Ha(n,Qt,l)):(l=h.cache,Ha(n,Qt,l),l!==f.cache&&qd(n,[Qt],r,!0))),on(t,n,n.pendingProps.children,r),n.child;case 30:return n.stateNode===null&&(n.stateNode={autoName:null,paired:null,clones:null,ref:null}),l=n.pendingProps,l.name!=null&&l.name!=="auto"?n.flags|=t===null?18882560:18874368:tt&&nc(n),t!==null&&t.memoizedProps.name!==l.name?n.flags|=4194816:_s(t,n),on(t,n,l.children,r),n.child;case 29:throw n.pendingProps}throw Error(s(156,n.tag))}function ya(t){t.flags|=4}function jf(t,n,r,l,f){var h;if((h=(t.mode&32)!==0)&&(h=r===null?Xy(n,l):Xy(n,l)&&(l.src!==r.src||l.srcSet!==r.srcSet)),h){if(t.flags|=16777216,(f&335544128)===f)if(t.stateNode.complete)t.flags|=8192;else if(ty())t.flags|=8192;else throw Or=cc,Vd}else t.flags&=-16777217}function wx(t,n){if(n.type!=="stylesheet"||(n.state.loading&4)!==0)t.flags&=-16777217;else if(t.flags|=16777216,!Zy(n))if(ty())t.flags|=8192;else throw Or=cc,Vd}function Cc(t,n){n!==null&&(t.flags|=4),t.flags&16384&&(n=t.tag!==22?dl():536870912,t.lanes|=n,As|=n)}function Ul(t,n){if(!tt)switch(t.tailMode){case"visible":break;case"collapsed":for(var r=t.tail,l=null;r!==null;)r.alternate!==null&&(l=r),r=r.sibling;l===null?n||t.tail===null?t.tail=null:t.tail.sibling=null:l.sibling=null;break;default:for(n=t.tail,r=null;n!==null;)n.alternate!==null&&(r=n),n=n.sibling;r===null?t.tail=null:r.sibling=null}}function Lt(t){var n=t.alternate!==null&&t.alternate.child===t.child,r=0,l=0;if(n)for(var f=t.child;f!==null;)r|=f.lanes|f.childLanes,l|=f.subtreeFlags&1206910976,l|=f.flags&1206910976,f.return=t,f=f.sibling;else for(f=t.child;f!==null;)r|=f.lanes|f.childLanes,l|=f.subtreeFlags,l|=f.flags,f.return=t,f=f.sibling;return t.subtreeFlags|=l,t.childLanes=r,n}function A_(t,n,r){var l=n.pendingProps;switch($d(n),n.tag){case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Lt(n),null;case 1:return Lt(n),null;case 3:return r=n.stateNode,l=null,t!==null&&(l=t.memoizedState.cache),n.memoizedState.cache!==l&&(n.flags|=2048),ma(Qt),pt(),r.pendingContext&&(r.context=r.pendingContext,r.pendingContext=null),(t===null||t.child===null)&&(bs(n)?ya(n):t===null||t.memoizedState.isDehydrated&&(n.flags&256)===0||(n.flags|=1024,Pd())),Lt(n),null;case 26:var f=n.type,h=n.memoizedState;return t===null?(ya(n),h!==null?(Lt(n),wx(n,h)):(Lt(n),jf(n,f,null,l,r))):h?h!==t.memoizedState?(ya(n),Lt(n),wx(n,h)):(Lt(n),n.flags&=-16777217):(t=t.memoizedProps,t!==l&&ya(n),Lt(n),jf(n,f,t,l,r)),null;case 27:if(rn(n),r=jn.current,f=n.type,t!==null&&n.stateNode!=null)t.memoizedProps!==l&&ya(n);else{if(!l){if(n.stateNode===null)throw Error(s(166));return Lt(n),n.subtreeFlags&=-33554433,null}t=cn.current,bs(n)?Wg(n):(t=Hy(f,l,r),n.stateNode=t,ya(n))}return Lt(n),n.subtreeFlags&=-33554433,null;case 5:if(rn(n),f=n.type,t!==null&&n.stateNode!=null)t.memoizedProps!==l&&ya(n);else{if(!l){if(n.stateNode===null)throw Error(s(166));return Lt(n),n.subtreeFlags&=-33554433,null}if(h=cn.current,bs(n))Wg(n);else{var w=Xl(jn.current);switch(h){case 1:h=w.createElementNS("http://www.w3.org/2000/svg",f);break;case 2:h=w.createElementNS("http://www.w3.org/1998/Math/MathML",f);break;default:switch(f){case"svg":h=w.createElementNS("http://www.w3.org/2000/svg",f);break;case"math":h=w.createElementNS("http://www.w3.org/1998/Math/MathML",f);break;case"script":h=w.createElement("div"),h.innerHTML="<script><\/script>",h=h.removeChild(h.firstChild);break;case"select":h=typeof l.is=="string"?w.createElement("select",{is:l.is}):w.createElement("select"),l.multiple?h.multiple=!0:l.size&&(h.size=l.size);break;default:h=typeof l.is=="string"?w.createElement(f,{is:l.is}):w.createElement(f)}}h[ln]=n,h[me]=l;e:for(w=n.child;w!==null;){if(w.tag===5||w.tag===6)h.appendChild(w.stateNode);else if(w.tag!==4&&w.tag!==27&&w.child!==null){w.child.return=w,w=w.child;continue}if(w===n)break e;for(;w.sibling===null;){if(w.return===null||w.return===n)break e;w=w.return}w.sibling.return=w.return,w=w.sibling}n.stateNode=h;e:switch(En(h,f,l),f){case"button":case"input":case"select":case"textarea":l=!!l.autoFocus;break e;case"img":l=!0;break e;default:l=!1}l&&ya(n)}}return Lt(n),n.subtreeFlags&=-33554433,jf(n,n.type,t===null?null:t.memoizedProps,n.pendingProps,r),null;case 6:if(t&&n.stateNode!=null)t.memoizedProps!==l&&ya(n);else{if(typeof l!="string"&&n.stateNode===null)throw Error(s(166));if(t=jn.current,bs(n)){if(t=n.stateNode,r=n.memoizedProps,l=null,f=pn,f!==null)switch(f.tag){case 27:case 5:l=f.memoizedProps}t[ln]=n,t=!!(t.nodeValue===r||l!==null&&l.suppressHydrationWarning===!0||vy(t.nodeValue,r)),t||$a(n,!0)}else t=Xl(t).createTextNode(l),t[ln]=n,n.stateNode=t}return Lt(n),null;case 31:if(r=n.memoizedState,t===null||t.memoizedState!==null){if(l=bs(n),r!==null){if(t===null){if(!l)throw Error(s(318));if(t=n.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(s(557));t[ln]=n}else Er(),(n.flags&128)===0&&(n.memoizedState=null),n.flags|=4;Lt(n),t=!1}else r=Pd(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=r),t=!0;if(!t)return n.flags&256?(Wn(n),n):(Wn(n),null);if((n.flags&128)!==0)throw Error(s(558))}return Lt(n),null;case 13:if(l=n.memoizedState,t===null||t.memoizedState!==null&&t.memoizedState.dehydrated!==null){if(f=bs(n),l!==null&&l.dehydrated!==null){if(t===null){if(!f)throw Error(s(318));if(f=n.memoizedState,f=f!==null?f.dehydrated:null,!f)throw Error(s(317));f[ln]=n}else Er(),(n.flags&128)===0&&(n.memoizedState=null),n.flags|=4;Lt(n),f=!1}else f=Pd(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=f),f=!0;if(!f)return n.flags&256?(Wn(n),n):(Wn(n),null)}return Wn(n),(n.flags&128)!==0?(n.lanes=r,n):(r=l!==null,t=t!==null&&t.memoizedState!==null,r&&(l=n.child,f=null,l.alternate!==null&&l.alternate.memoizedState!==null&&l.alternate.memoizedState.cachePool!==null&&(f=l.alternate.memoizedState.cachePool.pool),h=null,l.memoizedState!==null&&l.memoizedState.cachePool!==null&&(h=l.memoizedState.cachePool.pool),h!==f&&(l.flags|=2048)),r!==t&&r&&(n.child.flags|=8192),Cc(n,n.updateQueue),Lt(n),null);case 4:return pt(),t===null&&pp(n.stateNode.containerInfo),n.flags|=67108864,Lt(n),null;case 10:return ma(n.type),Lt(n),null;case 19:if(nf(n),l=n.memoizedState,l===null)return Lt(n),null;if(f=(n.flags&128)!==0,h=l.rendering,h===null)if(f)Ul(l,!1);else{if(Ft!==0||t!==null&&(t.flags&128)!==0)for(t=n.child;t!==null;){if(h=pc(t),h!==null){for(n.flags|=128,Ul(l,!1),t=h.updateQueue,n.updateQueue=t,Cc(n,t),n.subtreeFlags=0,t=r,r=n.child;r!==null;)Vg(r,t),r=r.sibling;return Rl(n,wn.current&1|2),tt&&pa(n,l.treeForkCount),n.child}t=t.sibling}l.tail!==null&&Kt()>$c&&(n.flags|=128,f=!0,Ul(l,!1),n.lanes=4194304)}else{if(!f)if(t=pc(h),t!==null){if(n.flags|=128,f=!0,t=t.updateQueue,n.updateQueue=t,Cc(n,t),Ul(l,!0),l.tail===null&&l.tailMode!=="collapsed"&&l.tailMode!=="visible"&&!h.alternate&&!tt)return Lt(n),null}else 2*Kt()-l.renderingStartTime>$c&&r!==536870912&&(n.flags|=128,f=!0,Ul(l,!1),n.lanes=4194304);l.isBackwards?(h.sibling=n.child,n.child=h):(t=l.last,t!==null?t.sibling=h:n.child=h,l.last=h)}if(l.tail!==null){t=l.tail;e:{for(r=t;r!==null;){if(r.alternate!==null){r=!1;break e}r=r.sibling}r=!0}return l.rendering=t,l.tail=t.sibling,l.renderingStartTime=Kt(),t.sibling=null,h=wn.current,h=f?h&1|2:h&1,l.tailMode==="visible"||l.tailMode==="collapsed"||!r||tt?Rl(n,h):(r=h,et(vn,n),et(wn,r),Cn===null&&(Cn=n)),tt&&pa(n,l.treeForkCount),t}return Lt(n),null;case 22:case 23:return Wn(n),ef(),l=n.memoizedState!==null,t!==null?t.memoizedState!==null!==l&&(n.flags|=8192):l&&(n.flags|=8192),l?(r&536870912)!==0&&(n.flags&128)===0&&(Lt(n),n.subtreeFlags&6&&(n.flags|=8192)):Lt(n),r=n.updateQueue,r!==null&&Cc(n,r.retryQueue),r=null,t!==null&&t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(r=t.memoizedState.cachePool.pool),l=null,n.memoizedState!==null&&n.memoizedState.cachePool!==null&&(l=n.memoizedState.cachePool.pool),l!==r&&(n.flags|=2048),t!==null&&vt(Cr),null;case 24:return r=null,t!==null&&(r=t.memoizedState.cache),n.memoizedState.cache!==r&&(n.flags|=2048),ma(Qt),Lt(n),null;case 25:return null;case 30:return n.flags|=33554432,Lt(n),null}throw Error(s(156,n.tag))}function O_(t,n){switch($d(n),n.tag){case 1:return t=n.flags,t&65536?(n.flags=t&-65537|128,n):null;case 3:return ma(Qt),pt(),t=n.flags,(t&65536)!==0&&(t&128)===0?(n.flags=t&-65537|128,n):null;case 26:case 27:case 5:return rn(n),null;case 31:if(n.memoizedState!==null){if(Wn(n),n.alternate===null)throw Error(s(340));Er()}return t=n.flags,t&65536?(n.flags=t&-65537|128,n):null;case 13:if(Wn(n),t=n.memoizedState,t!==null&&t.dehydrated!==null){if(n.alternate===null)throw Error(s(340));Er()}return t=n.flags,t&65536?(n.flags=t&-65537|128,n):null;case 19:return nf(n),t=n.flags,t&65536?(n.flags=t&-65537|128,t=n.memoizedState,t!==null&&(t.rendering=null,t.tail=null),n.flags|=4,n):null;case 4:return pt(),null;case 10:return ma(n.type),null;case 22:case 23:return Wn(n),ef(),t!==null&&vt(Cr),t=n.flags,t&65536?(n.flags=t&-65537|128,n):null;case 24:return ma(Qt),null;case 25:return null;default:return null}}function kx(t,n){switch($d(n),n.tag){case 3:ma(Qt),pt();break;case 26:case 27:case 5:rn(n);break;case 4:pt();break;case 31:n.memoizedState!==null&&Wn(n);break;case 13:Wn(n);break;case 19:nf(n);break;case 10:ma(n.type);break;case 22:case 23:Wn(n),ef(),t!==null&&vt(Cr);break;case 24:ma(Qt)}}function Bl(t,n){try{var r=n.updateQueue,l=r!==null?r.lastEffect:null;if(l!==null){var f=l.next;r=f;do{if((r.tag&t)===t){l=void 0;var h=r.create,w=r.inst;l=h(),w.destroy=l}r=r.next}while(r!==f)}}catch(E){_t(n,n.return,E)}}function Xa(t,n,r){try{var l=n.updateQueue,f=l!==null?l.lastEffect:null;if(f!==null){var h=f.next;l=h;do{if((l.tag&t)===t){var w=l.inst,E=w.destroy;if(E!==void 0){w.destroy=void 0,f=n;var z=r,K=E;try{K()}catch(W){_t(f,z,W)}}}l=l.next}while(l!==h)}}catch(W){_t(n,n.return,W)}}function Ex(t){var n=t.updateQueue;if(n!==null){var r=t.stateNode;try{fb(n,r)}catch(l){_t(t,t.return,l)}}}function _x(t,n,r){r.props=Rr(t.type,t.memoizedProps),r.state=t.memoizedState;try{r.componentWillUnmount()}catch(l){_t(t,n,l)}}function $i(t,n){try{var r=t.ref;if(r!==null){switch(t.tag){case 26:case 27:case 5:var l=t.stateNode;break;case 30:var f=t.stateNode,h=ua(t.memoizedProps,f);(f.ref===null||f.ref.name!==h)&&(f.ref=My(h)),l=f.ref;break;case 7:if(t.stateNode===null){var w=new ai(t);b(t.child,!1,vN,w,void 0,void 0),t.stateNode=w}l=t.stateNode;break;default:l=t.stateNode}typeof r=="function"?t.refCleanup=r(l):r.current=l}}catch(E){_t(t,n,E)}}function kn(t,n){var r=t.ref,l=t.refCleanup;if(r!==null)if(typeof l=="function")try{l()}catch(f){_t(t,n,f)}finally{t.refCleanup=null,t=t.alternate,t!=null&&(t.refCleanup=null)}else if(typeof r=="function")try{r(null)}catch(f){_t(t,n,f)}else r.current=null}function Ac(t,n){if((t.tag===5||t.tag===27||t.tag===6)&&t.alternate===null&&n!==null)for(var r=0;r<n.length;r++)Iy(t.stateNode,n[r])}function Nx(t){for(var n=t.return;n!==null&&(Df(n)&&Iy(t.stateNode,n.stateNode),!Rf(n));)n=n.return}function $l(t){for(var n=t.return;n!==null&&(Df(n)&&wN(t.stateNode,n.stateNode),!Rf(n));)n=n.return}function Rf(t){return t.tag===5||t.tag===3||t.tag===27}function Df(t){return t&&t.tag===7&&t.stateNode!==null}function zf(t){var n=t.type,r=t.memoizedProps,l=t.stateNode;try{e:switch(n){case"button":case"input":case"select":case"textarea":r.autoFocus&&l.focus();break e;case"img":r.src?l.src=r.src:r.srcSet&&(l.srcset=r.srcSet)}}catch(f){_t(t,t.return,f)}}function Lf(t,n,r){try{var l=t.stateNode;nN(l,t.type,r,n),l[me]=n}catch(f){_t(t,t.return,f)}}function Sx(t){return t.tag===5||t.tag===3||t.tag===26||t.tag===27&&nr(t.type)||t.tag===4}function If(t){e:for(;;){for(;t.sibling===null;){if(t.return===null||Sx(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.tag===27&&nr(t.type)||t.flags&2||t.child===null||t.tag===4)continue e;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function Uf(t,n,r,l){var f=t.tag;if(f===5||f===6)f=t.stateNode,n?(r.nodeType===9?r.body:r.nodeName==="HTML"?r.ownerDocument.body:r).insertBefore(f,n):(n=r.nodeType===9?r.body:r.nodeName==="HTML"?r.ownerDocument.body:r,n.appendChild(f),r=r._reactRootContainer,r!=null||n.onclick!==null||(n.onclick=Ii)),Ac(t,l),ct=!0;else if(f!==4&&(f===27&&(Ac(t,l),l=null,nr(t.type)&&(r=t.stateNode,n=null)),t=t.child,t!==null))for(Uf(t,n,r,l),t=t.sibling;t!==null;)Uf(t,n,r,l),t=t.sibling}function Oc(t,n,r,l){var f=t.tag;if(f===5||f===6)f=t.stateNode,n?r.insertBefore(f,n):r.appendChild(f),Ac(t,l),ct=!0;else if(f!==4&&(f===27&&(Ac(t,l),l=null,nr(t.type)&&(r=t.stateNode)),t=t.child,t!==null))for(Oc(t,n,r,l),t=t.sibling;t!==null;)Oc(t,n,r,l),t=t.sibling}function Tx(t){var n=t.stateNode,r=t.memoizedProps;try{for(var l=t.type,f=n.attributes;f.length;)n.removeAttributeNode(f[0]);En(n,l,r),n[ln]=t,n[me]=r}catch(h){_t(t,t.return,h)}}var Mc=!1,ei=null;function Cx(t){(t.tag===30||(t.subtreeFlags&33554432)!==0)&&(Mc=!0)}var Hi=null;function Ax(){var t=Hi;return Hi=null,t}var Gn=0;function Ns(t,n,r,l,f){return Gn=0,Ox(t.child,n,r,l,f)}function Ox(t,n,r,l,f){for(var h=!1;t!==null;){if(t.tag===5){var w=t.stateNode;if(l!==null){var E=wp(w);l.push(E),E.view&&(h=!0)}else h||wp(w).view&&(h=!0);Mc=!0,Ay(w,Gn===0?n:n+"_"+Gn,r),Gn++}else(t.tag!==22||t.memoizedState===null)&&(t.tag===30&&f||Ox(t.child,n,r,l,f)&&(h=!0));t=t.sibling}return h}function Pi(t,n){for(;t!==null;)t.tag===5?Oy(t.stateNode,t.memoizedProps):(t.tag!==22||t.memoizedState===null)&&(t.tag===30&&n||Pi(t.child,n)),t=t.sibling}function jc(t){if((t.subtreeFlags&18874368)!==0)for(t=t.child;t!==null;){if((t.tag!==22||t.memoizedState===null)&&(jc(t),t.tag===30&&(t.flags&18874368)!==0&&t.stateNode.paired)){var n=t.memoizedProps;if(n.name==null||n.name==="auto")throw Error(s(544));var r=n.name;n=da(n.default,n.share),n!=="none"&&(Ns(t,r,n,null,!1)||Pi(t.child,!1))}t=t.sibling}}function Bf(t,n){if(t.tag===30){var r=t.stateNode,l=t.memoizedProps,f=ua(l,r),h=da(l.default,r.paired?l.share:l.enter);h!=="none"?Ns(t,f,h,null,!1)?(jc(t),r.paired||n||Rs(t,l.onEnter)):Pi(t.child,!1):jc(t)}else if((t.subtreeFlags&33554432)!==0)for(t=t.child;t!==null;)Bf(t,n),t=t.sibling;else jc(t)}function $f(t){if(ei!==null&&ei.size!==0){var n=ei;if((t.subtreeFlags&18874368)!==0)for(t=t.child;t!==null;){if(t.tag!==22||t.memoizedState===null){if(t.tag===30&&(t.flags&18874368)!==0){var r=t.memoizedProps,l=r.name;if(l!=null&&l!=="auto"){var f=n.get(l);if(f!==void 0){var h=da(r.default,r.share);if(h!=="none"&&(Ns(t,l,h,null,!1)?(h=t.stateNode,f.paired=h,h.paired=f,Rs(t,r.onShare)):Pi(t.child,!1)),n.delete(l),n.size===0)break}}}$f(t)}t=t.sibling}}}function Hf(t){if(t.tag===30){var n=t.memoizedProps,r=ua(n,t.stateNode),l=ei!==null?ei.get(r):void 0,f=da(n.default,l!==void 0?n.share:n.exit);f!=="none"&&(Ns(t,r,f,null,!1)?l!==void 0?(f=t.stateNode,l.paired=f,f.paired=l,ei.delete(r),Rs(t,n.onShare)):Rs(t,n.onExit):Pi(t.child,!1)),ei!==null&&$f(t)}else if((t.subtreeFlags&33554432)!==0)for(t=t.child;t!==null;)Hf(t),t=t.sibling;else ei!==null&&$f(t)}function Mx(t){for(t=t.child;t!==null;){if(t.tag===30){var n=t.memoizedProps,r=ua(n,t.stateNode);n=da(n.default,n.update),t.flags&=-5,n!=="none"&&Ns(t,r,n,t.memoizedState=[],!1)}else(t.subtreeFlags&33554432)!==0&&Mx(t);t=t.sibling}}function Pf(t){if((t.subtreeFlags&18874368)!==0)for(t=t.child;t!==null;){if(t.tag!==22||t.memoizedState===null){if(t.tag===30&&(t.flags&18874368)!==0){var n=t.stateNode;n.paired!==null&&(n.paired=null,Pi(t.child,!1))}Pf(t)}t=t.sibling}}function Rc(t){if(t.tag===30)t.stateNode.paired=null,Pi(t.child,!1),Pf(t);else if((t.subtreeFlags&33554432)!==0)for(t=t.child;t!==null;)Rc(t),t=t.sibling;else Pf(t)}function jx(t){for(t=t.child;t!==null;)t.tag===30?Pi(t.child,!1):(t.subtreeFlags&33554432)!==0&&jx(t),t=t.sibling}function Ff(t,n,r,l,f,h,w){for(var E=!1;n!==null;){if(n.tag===5){var z=n.stateNode;if(h!==null&&Gn<h.length){var K=h[Gn],W=wp(z);(K.view||W.view)&&(E=!0);var le;if(le=(t.flags&4)===0)if(W.clip)le=!0;else{le=K.rect;var G=W.rect;le=le.y!==G.y||le.x!==G.x||le.height!==G.height||le.width!==G.width}le&&(t.flags|=4),W.abs?W=!K.abs:(K=K.rect,W=W.rect,W=K.height!==W.height||K.width!==W.width),W&&(t.flags|=32)}else t.flags|=32;(t.flags&4)!==0&&Ay(z,Gn===0?r:r+"_"+Gn,f),E&&(t.flags&4)!==0||(Hi===null&&(Hi=[]),Hi.push(z,Gn===0?l:l+"_"+Gn,n.memoizedProps)),Gn++}else(n.tag!==22||n.memoizedState===null)&&(n.tag===30&&w?t.flags|=n.flags&32:Ff(t,n.child,r,l,f,h,w)&&(E=!0));n=n.sibling}return E}function Rx(t,n){for(t=t.child;t!==null;){if(t.tag===30){var r=t.memoizedProps,l=t.stateNode,f=ua(r,l),h=da(r.default,r.update),w;w=t.memoizedState,t.memoizedState=null,l=t;var E=t.child;Gn=0,f=Ff(l,E,f,f,h,w,!1),(t.flags&4)!==0&&f&&Rs(t,r.onUpdate)}else(t.subtreeFlags&33554432)!==0&&Rx(t);t=t.sibling}}var hn=!1,yt=!1,Fi=!1,qf=!1,Dx=typeof WeakSet=="function"?WeakSet:Set,mn=null,qi=!1,Hl=!1,Dc=!1,Gf=!1;function M_(t,n,r){if(t=t.containerInfo,gp=Fs,t=Ug(t),Od(t)){if("selectionStart"in t)var l={start:t.selectionStart,end:t.selectionEnd};else e:{l=(l=t.ownerDocument)&&l.defaultView||window;var f=l.getSelection&&l.getSelection();if(f&&f.rangeCount!==0){l=f.anchorNode;var h=f.anchorOffset,w=f.focusNode;f=f.focusOffset;try{l.nodeType,w.nodeType}catch{l=null;break e}var E=0,z=-1,K=-1,W=0,le=0,G=t,Q=null;t:for(;;){for(var _e;G!==l||h!==0&&G.nodeType!==3||(z=E+h),G!==w||f!==0&&G.nodeType!==3||(K=E+f),G.nodeType===3&&(E+=G.nodeValue.length),(_e=G.firstChild)!==null;)Q=G,G=_e;for(;;){if(G===t)break t;if(Q===l&&++W===h&&(z=E),Q===w&&++le===f&&(K=E),(_e=G.nextSibling)!==null)break;G=Q,Q=G.parentNode}G=_e}l=z===-1||K===-1?null:{start:z,end:K}}else l=null}l=l||{start:0,end:0}}else l=null;for(bp={focusedElem:t,selectionRange:l},Fs=!1,r=(r&335544064)===r,mn=n,n=r?9270:1024;mn!==null;){if(t=mn,r&&(l=t.deletions,l!==null))for(h=0;h<l.length;h++)r&&Hf(l[h]);if(t.alternate===null&&(t.flags&2)!==0)r&&Cx(t),zc(r);else{if(t.tag===22){if(l=t.alternate,t.memoizedState!==null){l!==null&&l.memoizedState===null&&r&&Hf(l),zc(r);continue}else if(l!==null&&l.memoizedState!==null){r&&Cx(t),zc(r);continue}}l=t.child,(t.subtreeFlags&n)!==0&&l!==null?(l.return=t,mn=l):(r&&Mx(t),zc(r))}}ei=null}function zc(t){for(;mn!==null;){var n=mn,r=t,l=n.alternate,f=n.flags;switch(n.tag){case 0:case 11:case 15:break;case 1:if((f&1024)!==0&&l!==null){r=void 0,f=l.memoizedProps,l=l.memoizedState;var h=n.stateNode;try{var w=Rr(n.type,f);r=h.getSnapshotBeforeUpdate(w,l),h.__reactInternalSnapshotBeforeUpdate=r}catch(E){_t(n,n.return,E)}}break;case 3:if((f&1024)!==0){if(l=n.stateNode.containerInfo,r=l.nodeType,r===9)_p(l);else if(r===1)switch(l.nodeName){case"HEAD":case"HTML":case"BODY":_p(l);break;default:l.textContent=""}}break;case 5:case 26:case 27:case 6:case 4:case 17:break;case 30:r&&l!==null&&(r=ua(l.memoizedProps,l.stateNode),f=n.memoizedProps,f=da(f.default,f.update),f!=="none"&&Ns(l,r,f,l.memoizedState=[],!0));break;default:if((f&1024)!==0)throw Error(s(163))}if(l=n.sibling,l!==null){l.return=n.return,mn=l;break}mn=n.return}}function zx(t,n,r){var l=r.flags;switch(r.tag){case 0:case 11:case 15:Gi(t,r),l&4&&Bl(5,r);break;case 1:if(Gi(t,r),l&4)if(t=r.stateNode,n===null)try{t.componentDidMount()}catch(w){_t(r,r.return,w)}else{var f=Rr(r.type,n.memoizedProps);n=n.memoizedState;try{t.componentDidUpdate(f,n,t.__reactInternalSnapshotBeforeUpdate)}catch(w){_t(r,r.return,w)}}l&64&&Ex(r),l&512&&$i(r,r.return);break;case 3:if(Gi(t,r),l&64&&(t=r.updateQueue,t!==null)){if(n=null,r.child!==null)switch(r.child.tag){case 27:case 5:n=r.child.stateNode;break;case 1:n=r.child.stateNode}try{fb(t,n)}catch(w){_t(r,r.return,w)}}break;case 27:n===null&&l&4&&Tx(r);case 26:case 5:Gi(t,r),n===null&&l&4&&zf(r),l&512&&$i(r,r.return);break;case 12:Gi(t,r);break;case 31:Gi(t,r),l&4&&Bx(t,r);break;case 13:Gi(t,r),l&4&&$x(t,r),l&64&&(t=r.memoizedState,t!==null&&(t=t.dehydrated,t!==null&&(r=F_.bind(null,r),_N(t,r))));break;case 22:if(l=r.memoizedState!==null||hn,!l){var h=n!==null&&n.memoizedState!==null||yt;n=hn,f=yt,hn=l,(yt=h)&&!f?(l=2,(r.subtreeFlags&8772)!==0&&(l|=1),Ti(t,r,l)):Gi(t,r),hn=n,yt=f}break;case 30:Gi(t,r),l&512&&$i(r,r.return);break;case 7:l&512&&$i(r,r.return);default:Gi(t,r)}}function Yf(t,n){for(t=t.child;t!==null;)Lx(t,n),t=t.sibling}function Lx(t,n){switch(t.tag){case 5:case 26:try{var r=t.stateNode;if(n){var l=r.style;typeof l.setProperty=="function"?l.setProperty("display","none","important"):l.display="none"}else{var f=t.stateNode,h=t.memoizedProps.style,w=h!=null&&h.hasOwnProperty("display")?h.display:null;f.style.display=w==null||typeof w=="boolean"?"":(""+w).trim()}}catch(z){_t(t,t.return,z)}Kf(t,n);break;case 6:try{t.stateNode.nodeValue=n?"":t.memoizedProps,ct=!0}catch(z){_t(t,t.return,z)}break;case 18:try{var E=t.stateNode;n?Cy(E,!0):Cy(t.stateNode,!1)}catch(z){_t(t,t.return,z)}break;case 22:case 23:t.memoizedState===null&&Yf(t,n);break;default:Yf(t,n)}}function Kf(t,n){if(t.subtreeFlags&67108864)for(t=t.child;t!==null;){e:{var r=t,l=n;switch(r.tag){case 4:Lx(r,l);break e;case 22:r.memoizedState===null&&Kf(r,l);break e;default:Kf(r,l)}}t=t.sibling}}function Ix(t){var n=t.alternate;n!==null&&(t.alternate=null,Ix(n)),t.child=null,t.deletions=null,t.sibling=null,t.tag===5&&(n=t.stateNode,n!==null&&dn(n)),t.stateNode=null,t.return=null,t.dependencies=null,t.memoizedProps=null,t.memoizedState=null,t.pendingProps=null,t.stateNode=null,t.updateQueue=null}var It=null,Yn=!1;function Ni(t,n,r){for(r=r.child;r!==null;)Ux(t,n,r),r=r.sibling}function Ux(t,n,r){if(ot&&typeof ot.onCommitFiberUnmount=="function")try{ot.onCommitFiberUnmount(Ot,r)}catch{}switch(r.tag){case 26:yt||kn(r,n),Ni(t,n,r),r.memoizedState?r.memoizedState.count--:r.stateNode&&!yt&&(r=r.stateNode,r.parentNode.removeChild(r));break;case 27:yt||kn(r,n),$l(r);var l=It,f=Yn;nr(r.type)&&(It=r.stateNode,Yn=!1),Ni(t,n,r),Py(r.stateNode,r.type,r.memoizedProps),It=l,Yn=f;break;case 5:yt||kn(r,n),$l(r);case 6:if(r.tag===6&&$l(r),l=It,f=Yn,It=null,Ni(t,n,r),It=l,Yn=f,It!==null)if(Yn)try{(It.nodeType===9?It.body:It.nodeName==="HTML"?It.ownerDocument.body:It).removeChild(r.stateNode),ct=!0}catch(h){_t(r,n,h)}else try{It.removeChild(r.stateNode),ct=!0}catch(h){_t(r,n,h)}break;case 18:It!==null&&(Yn?(t=It,Ty(t.nodeType===9?t.body:t.nodeName==="HTML"?t.ownerDocument.body:t,r.stateNode),qs(t)):Ty(It,r.stateNode));break;case 4:l=It,f=Yn,It=r.stateNode.containerInfo,Yn=!0,Ni(t,n,r),It=l,Yn=f;break;case 0:case 11:case 14:case 15:Xa(2,r,n),yt||Xa(4,r,n),Ni(t,n,r);break;case 1:yt||(kn(r,n),l=r.stateNode,typeof l.componentWillUnmount=="function"&&_x(r,n,l)),Ni(t,n,r);break;case 21:Ni(t,n,r);break;case 22:yt=(l=yt)||r.memoizedState!==null,Ni(t,n,r),yt=l;break;case 30:kn(r,n),Ni(t,n,r);break;case 7:yt||kn(r,n),Ni(t,n,r);break;default:Ni(t,n,r)}}function Bx(t,n){if(n.memoizedState===null&&(t=n.alternate,t!==null&&(t=t.memoizedState,t!==null))){t=t.dehydrated;try{qs(t)}catch(r){_t(n,n.return,r)}}}function $x(t,n){if(n.memoizedState===null&&(t=n.alternate,t!==null&&(t=t.memoizedState,t!==null&&(t=t.dehydrated,t!==null))))try{qs(t)}catch(r){_t(n,n.return,r)}}function j_(t){switch(t.tag){case 31:case 13:case 19:var n=t.stateNode;return n===null&&(n=t.stateNode=new Dx),n;case 22:return t=t.stateNode,n=t._retryCache,n===null&&(n=t._retryCache=new Dx),n;default:throw Error(s(435,t.tag))}}function Lc(t,n){var r=j_(t);n.forEach(function(l){if(!r.has(l)){r.add(l);var f=q_.bind(null,t,l);l.then(f,f)}})}function Ln(t,n,r){var l=n.deletions;if(l!==null)for(var f=0;f<l.length;f++){var h=l[f],w=t,E=n,z=E;e:for(;z!==null;){switch(z.tag){case 27:if(nr(z.type)){It=z.stateNode,Yn=!1;break e}break;case 5:It=z.stateNode,Yn=!1;break e;case 3:case 4:It=z.stateNode.containerInfo,Yn=!0;break e}z=z.return}if(It===null)throw Error(s(160));Ux(w,E,h),It=null,Yn=!1,w=h.alternate,w!==null&&(w.return=null),h.return=null}if(n.subtreeFlags&13886)for(n=n.child;n!==null;)Hx(n,t,r),n=n.sibling}var Si=null;function Hx(t,n,r){var l=t.alternate,f=t.flags;switch(t.tag){case 0:case 11:case 14:case 15:if(f&4&&(l=t.updateQueue,l=l!==null?l.events:null,l!==null))for(var h=0;h<l.length;h++){var w=l[h];w.ref.impl=w.nextImpl}Ln(n,t,r),In(t),f&4&&(Xa(3,t,t.return),Bl(3,t),Xa(5,t,t.return));break;case 1:Ln(n,t,r),In(t),f&512&&(yt||l===null||kn(l,l.return)),f&64&&hn&&(t=t.updateQueue,t!==null&&(n=t.callbacks,n!==null&&(r=t.shared.hiddenCallbacks,t.shared.hiddenCallbacks=r===null?n:r.concat(n))));break;case 26:if(h=Si,Ln(n,t,r),In(t),f&512&&(yt||l===null||kn(l,l.return)),f&4)if(f=l!==null?l.memoizedState:null,r=t.memoizedState,l===null)if(r===null)if(t.stateNode===null)if(hn)t.stateNode=_y(t.type,t.memoizedProps,n.containerInfo,t);else{e:{n=t.type,r=t.memoizedProps,f=h.ownerDocument||h;t:switch(n){case"title":l=f.getElementsByTagName("title")[0],(!l||l[Fn]||l[ln]||l.namespaceURI==="http://www.w3.org/2000/svg"||l.hasAttribute("itemprop"))&&(l=f.createElement(n),f.head.insertBefore(l,f.querySelector("head > title"))),En(l,n,r),l[ln]=t,Xt(l),n=l;break e;case"link":if(h=Vy("link","href",f).get(n+(r.href||""))){for(w=0;w<h.length;w++)if(l=h[w],l.getAttribute("href")===(r.href==null||r.href===""?null:r.href)&&l.getAttribute("rel")===(r.rel==null?null:r.rel)&&l.getAttribute("title")===(r.title==null?null:r.title)&&l.getAttribute("crossorigin")===(r.crossOrigin==null?null:r.crossOrigin)){h.splice(w,1);break t}}l=f.createElement(n),En(l,n,r),f.head.appendChild(l);break;case"meta":if(h=Vy("meta","content",f).get(n+(r.content||""))){for(w=0;w<h.length;w++)if(l=h[w],l.getAttribute("content")===(r.content==null?null:""+r.content)&&l.getAttribute("name")===(r.name==null?null:r.name)&&l.getAttribute("property")===(r.property==null?null:r.property)&&l.getAttribute("http-equiv")===(r.httpEquiv==null?null:r.httpEquiv)&&l.getAttribute("charset")===(r.charSet==null?null:r.charSet)){h.splice(w,1);break t}}l=f.createElement(n),En(l,n,r),f.head.appendChild(l);break;default:throw Error(s(468,n))}l[ln]=t,Xt(l),n=l}t.stateNode=n}else hn||Mp(h,t.type,t.stateNode);else t.stateNode=Ky(h,r,t.memoizedProps);else f!==r?(f===null?(n=l.stateNode,n===null||yt||n.parentNode.removeChild(n)):f.count--,r===null?hn||Mp(h,t.type,t.stateNode):Ky(h,r,t.memoizedProps)):r===null&&t.stateNode!==null&&Lf(t,t.memoizedProps,l.memoizedProps);break;case 27:Ln(n,t,r),In(t),f&512&&(yt||l===null||kn(l,l.return)),l!==null&&f&4&&Lf(t,t.memoizedProps,l.memoizedProps);break;case 5:if(h=Fi,Fi=!1,Ln(n,t,r),Fi=h,In(t),f&512&&(yt||l===null||kn(l,l.return)),t.flags&32){n=t.stateNode;try{ls(n,""),ct=!0}catch(W){_t(t,t.return,W)}}f&4&&t.stateNode!=null&&(n=t.memoizedProps,Lf(t,n,l!==null?l.memoizedProps:n)),f&1024&&(qf=!0);break;case 6:if(Ln(n,t,r),In(t),f&4){if(t.stateNode===null)throw Error(s(162));n=t.memoizedProps,r=t.stateNode;try{r.nodeValue=n,ct=!0}catch(W){_t(t,t.return,W)}}break;case 3:if(ct=!1,Qc=null,h=Si,Si=Zl(n.containerInfo),Ln(n,t,r),Si=h,In(t),f&4&&l!==null&&l.memoizedState.isDehydrated)try{qs(n.containerInfo)}catch(W){_t(t,t.return,W)}qf&&(qf=!1,Px(t)),ct=!1;break;case 4:f=Fi,Fi=hn,l=Zt(),h=Si,Si=Zl(t.stateNode.containerInfo),Ln(n,t,r),In(t),Si=h,ct&&Hl&&(Dc=!0),ct=l,Fi=f;break;case 12:Ln(n,t,r),In(t);break;case 31:Ln(n,t,r),In(t),f&4&&(n=t.updateQueue,n!==null&&(t.updateQueue=null,Lc(t,n)));break;case 13:Ln(n,t,r),In(t),t.child.flags&8192&&t.memoizedState!==null!=(l!==null&&l.memoizedState!==null)&&(Bc=Kt()),f&4&&(n=t.updateQueue,n!==null&&(t.updateQueue=null,Lc(t,n)));break;case 22:h=t.memoizedState!==null,w=l!==null&&l.memoizedState!==null;var E=hn,z=yt,K=Fi;hn=E||h,Fi=K||h,yt=z||w,Ln(n,t,r),yt=z,Fi=K,hn=E,In(t),f&8192&&(n=t.stateNode,n._visibility=h?n._visibility&-2:n._visibility|1,!h||l===null||w||hn||yt||(n=w||yt,r=hn,l=yt,hn=h||hn,yt=n,Za(t,2),hn=r,yt=l),!h&&Fi||Yf(t,h)),f&4&&(n=t.updateQueue,n!==null&&(r=n.retryQueue,r!==null&&(n.retryQueue=null,Lc(t,r))));break;case 19:Ln(n,t,r),In(t),f&4&&(n=t.updateQueue,n!==null&&(t.updateQueue=null,Lc(t,n)));break;case 30:f&512&&(yt||l===null||kn(l,l.return)),f=Zt(),h=Hl,w=(r&335544064)===r,E=t.memoizedProps,Hl=w&&da(E.default,E.update)!=="none",Ln(n,t,r),In(t),w&&l!==null&&ct&&(t.flags|=4),Hl=h,ct=f;break;case 21:break;case 7:f&512&&(yt||l===null||kn(l,l.return)),l&&l.stateNode!==null&&(l.stateNode._fragmentFiber=t);default:Ln(n,t,r),In(t)}}function In(t){var n=t.flags;if(n&2){try{for(var r,l=t.return;l!==null;){if(Sx(l)){r=l;break}l=l.return}l=null;for(var f=t.return;f!==null;){if(Df(f)){var h=f.stateNode;l===null?l=[h]:l.push(h)}if(Rf(f))break;f=f.return}var w=l;if(r==null)throw Error(s(160));switch(r.tag){case 27:var E=r.stateNode,z=If(t);Oc(t,z,E,w);break;case 5:var K=r.stateNode;r.flags&32&&(ls(K,""),r.flags&=-33);var W=If(t);Oc(t,W,K,w);break;case 3:case 4:var le=r.stateNode.containerInfo,G=If(t);Uf(t,G,le,w);break;default:throw Error(s(161))}}catch(Q){_t(t,t.return,Q)}t.flags&=-3}n&4096&&(t.flags&=-4097)}function Px(t){if(t.subtreeFlags&1024)for(t=t.child;t!==null;){var n=t;Px(n),n.tag===5&&n.flags&1024&&(n=n.stateNode,Fs=!0,n.reset(),Fs=!1),t=t.sibling}}function Ss(t,n){if(n.subtreeFlags&9270)for(n=n.child;n!==null;)Fx(n,t),n=n.sibling;else Rx(n)}function Fx(t,n){var r=t.alternate;if(r===null)Bf(t,!1);else switch(t.tag){case 3:if(Gf=qi=!1,Ax(),Ss(n,t),!qi&&!Dc){if(t=Hi,t!==null)for(var l=0;l<t.length;l+=3){r=t[l];var f=t[l+1];Oy(r,t[l+2]),r=r.ownerDocument.documentElement,r!==null&&r.animate({opacity:[0,0],pointerEvents:["none","none"]},{duration:0,fill:"forwards",pseudoElement:"::view-transition-group("+f+")"})}t=n.containerInfo,t=t.nodeType===9?t.documentElement:t.ownerDocument.documentElement,t!==null&&t.style.viewTransitionName===""&&(t.style.viewTransitionName="none",t.animate({opacity:[0,0],pointerEvents:["none","none"]},{duration:0,fill:"forwards",pseudoElement:"::view-transition-group(root)"}),t.animate({width:[0,0],height:[0,0]},{duration:0,fill:"forwards",pseudoElement:"::view-transition"})),Gf=!0}Hi=null;break;case 5:Ss(n,t);break;case 4:l=qi,qi=!1,Ss(n,t),qi&&(Dc=!0),qi=l;break;case 22:t.memoizedState===null&&(r.memoizedState!==null?Bf(t,!1):Ss(n,t));break;case 30:l=qi,f=Ax(),qi=!1,Ss(n,t),qi&&(t.flags|=4);var h=t.memoizedProps,w=t.stateNode;n=ua(h,w),w=ua(r.memoizedProps,w);var E=da(h.default,h.update);E==="none"?n=!1:(h=r.memoizedState,r.memoizedState=null,r=t.child,Gn=0,n=Ff(t,r,n,w,E,h,!0),Gn!==(h===null?0:h.length)&&(t.flags|=32)),(t.flags&4)!==0&&n?(Rs(t,t.memoizedProps.onUpdate),Hi=f):f!==null&&(f.push.apply(f,Hi),Hi=f),qi=(t.flags&32)!==0?!0:l;break;default:Ss(n,t)}}function Gi(t,n){if(n.subtreeFlags&8772)for(n=n.child;n!==null;)zx(t,n.alternate,n),n=n.sibling}function Za(t,n){for(t=t.child;t!==null;){var r=t,l=n;switch(r.tag){case 0:case 11:case 14:case 15:Xa(4,r,r.return),Za(r,l);break;case 1:kn(r,r.return);var f=r.stateNode;typeof f.componentWillUnmount=="function"&&_x(r,r.return,f),Za(r,l);break;case 27:(l&2)!==0&&Py(r.stateNode,r.type,r.memoizedProps);case 5:kn(r,r.return),r.tag!==5&&r.tag!==27||$l(r),Za(r,l);break;case 6:$l(r);break;case 26:kn(r,r.return),f=r.stateNode,r.memoizedState!==null||f===null||yt||f.parentNode.removeChild(f),Za(r,l);break;case 22:r.memoizedState===null&&Za(r,l);break;case 30:kn(r,r.return),Za(r,l);break;case 7:kn(r,r.return);default:Za(r,l)}t=t.sibling}}function Ti(t,n,r){for(r=(n.subtreeFlags&8772)!==0?r:r&-2,n=n.child;n!==null;){var l=n.alternate,f=t,h=n,w=h.flags,E=(r&1)!==0;switch(h.tag){case 0:case 11:case 15:Ti(f,h,r),Bl(4,h);break;case 1:if(Ti(f,h,r),l=h,f=l.stateNode,typeof f.componentDidMount=="function")try{f.componentDidMount()}catch(W){_t(l,l.return,W)}if(l=h,f=l.updateQueue,f!==null){var z=l.stateNode;try{var K=f.shared.hiddenCallbacks;if(K!==null)for(f.shared.hiddenCallbacks=null,f=0;f<K.length;f++)db(K[f],z)}catch(W){_t(l,l.return,W)}}E&&w&64&&Ex(h),$i(h,h.return);break;case 27:(r&2)!==0&&Tx(h);case 5:h.tag!==5&&h.tag!==27||Nx(h),Ti(f,h,r),E&&l===null&&w&4&&zf(h),$i(h,h.return);break;case 6:Nx(h);break;case 26:z=h.stateNode,h.memoizedState!==null||z===null||hn||Mp(Zl(z.ownerDocument),h.type,z),Ti(f,h,r),E&&l===null&&w&4&&zf(h),$i(h,h.return);break;case 12:Ti(f,h,r);break;case 31:Ti(f,h,r),E&&w&4&&Bx(f,h);break;case 13:Ti(f,h,r),E&&w&4&&$x(f,h);break;case 22:h.memoizedState===null&&Ti(f,h,r),$i(h,h.return);break;case 30:Ti(f,h,r),$i(h,h.return);break;case 7:$i(h,h.return);default:Ti(f,h,r)}n=n.sibling}}function Vf(t,n){var r=null;t!==null&&t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(r=t.memoizedState.cachePool.pool),t=null,n.memoizedState!==null&&n.memoizedState.cachePool!==null&&(t=n.memoizedState.cachePool.pool),t!==r&&(t!=null&&t.refCount++,r!=null&&Sl(r))}function Xf(t,n){t=null,n.alternate!==null&&(t=n.alternate.memoizedState.cache),n=n.memoizedState.cache,n!==t&&(n.refCount++,t!=null&&Sl(t))}function pi(t,n,r,l){var f=(r&335544064)===r;if(n.subtreeFlags&(f?10262:10256))for(n=n.child;n!==null;)qx(t,n,r,l),n=n.sibling;else f&&jx(n)}function qx(t,n,r,l){var f=(r&335544064)===r;f&&n.alternate===null&&n.return!==null&&n.return.alternate!==null&&Rc(n);var h=n.flags;switch(n.tag){case 0:case 11:case 15:pi(t,n,r,l),h&2048&&Bl(9,n);break;case 1:pi(t,n,r,l);break;case 3:pi(t,n,r,l),f&&Gf&&(t=t.containerInfo,t=t.nodeType===9?t.body:t.nodeName==="HTML"?t.ownerDocument.body:t,t.style.viewTransitionName==="root"&&(t.style.viewTransitionName=""),t=t.ownerDocument.documentElement,t!==null&&t.style.viewTransitionName==="none"&&(t.style.viewTransitionName="")),h&2048&&(h=null,n.alternate!==null&&(h=n.alternate.memoizedState.cache),n=n.memoizedState.cache,n!==h&&(n.refCount++,h!=null&&Sl(h)));break;case 12:if(h&2048){pi(t,n,r,l),h=n.stateNode;try{var w=n.memoizedProps,E=w.id,z=w.onPostCommit;typeof z=="function"&&z(E,n.alternate===null?"mount":"update",h.passiveEffectDuration,-0)}catch(K){_t(n,n.return,K)}}else pi(t,n,r,l);break;case 31:pi(t,n,r,l);break;case 13:pi(t,n,r,l);break;case 23:break;case 22:w=n.stateNode,E=n.alternate,n.memoizedState!==null?(f&&E!==null&&E.memoizedState===null&&Rc(E),w._visibility&2?pi(t,n,r,l):Pl(t,n)):(f&&E!==null&&E.memoizedState!==null&&Rc(n),w._visibility&2?pi(t,n,r,l):(w._visibility|=2,Ts(t,n,r,l,(n.subtreeFlags&10256)!==0||!1))),h&2048&&Vf(E,n);break;case 24:pi(t,n,r,l),h&2048&&Xf(n.alternate,n);break;case 30:f&&(h=n.alternate,h!==null&&(Pi(h.child,!0),Pi(n.child,!0))),pi(t,n,r,l);break;default:pi(t,n,r,l)}}function Ts(t,n,r,l,f){for(f=f&&((n.subtreeFlags&10256)!==0||!1),n=n.child;n!==null;){var h=t,w=n,E=r,z=l,K=w.flags;switch(w.tag){case 0:case 11:case 15:Ts(h,w,E,z,f),Bl(8,w);break;case 23:break;case 22:var W=w.stateNode;w.memoizedState!==null?W._visibility&2?Ts(h,w,E,z,f):Pl(h,w):(W._visibility|=2,Ts(h,w,E,z,f)),f&&K&2048&&Vf(w.alternate,w);break;case 24:Ts(h,w,E,z,f),f&&K&2048&&Xf(w.alternate,w);break;default:Ts(h,w,E,z,f)}n=n.sibling}}function Pl(t,n){if(n.subtreeFlags&10256)for(n=n.child;n!==null;){var r=t,l=n,f=l.flags;switch(l.tag){case 22:Pl(r,l),f&2048&&Vf(l.alternate,l);break;case 24:Pl(r,l),f&2048&&Xf(l.alternate,l);break;default:Pl(r,l)}n=n.sibling}}var Dr=8192;function zr(t,n,r){if(t.subtreeFlags&Dr)for(t=t.child;t!==null;)Gx(t,n,r),t=t.sibling}function Gx(t,n,r){switch(t.tag){case 26:zr(t,n,r),t.flags&Dr&&(t.memoizedState!==null?UN(r,Si,t.memoizedState,t.memoizedProps):(t=t.stateNode,(n&335544128)===n&&Jy(r,t)));break;case 5:zr(t,n,r),t.flags&Dr&&(t=t.stateNode,(n&335544128)===n&&Jy(r,t));break;case 3:case 4:var l=Si;Si=Zl(t.stateNode.containerInfo),zr(t,n,r),Si=l;break;case 22:t.memoizedState===null&&(l=t.alternate,l!==null&&l.memoizedState!==null?(l=Dr,Dr=16777216,zr(t,n,r),Dr=l):zr(t,n,r));break;case 30:if((t.flags&Dr)!==0&&(l=t.memoizedProps.name,l!=null&&l!=="auto")){var f=t.stateNode;f.paired=null,ei===null&&(ei=new Map),ei.set(l,f)}zr(t,n,r);break;default:zr(t,n,r)}}function Yx(t){var n=t.alternate;if(n!==null&&(t=n.child,t!==null)){n.child=null;do n=t.sibling,t.sibling=null,t=n;while(t!==null)}}function Fl(t){var n=t.deletions;if((t.flags&16)!==0){if(n!==null)for(var r=0;r<n.length;r++){var l=n[r];mn=l,Vx(l,t)}Yx(t)}if(t.subtreeFlags&10256)for(t=t.child;t!==null;)Kx(t),t=t.sibling}function Kx(t){switch(t.tag){case 0:case 11:case 15:Fl(t),t.flags&2048&&Xa(9,t,t.return);break;case 3:Fl(t);break;case 12:Fl(t);break;case 22:var n=t.stateNode;t.memoizedState!==null&&n._visibility&2&&(t.return===null||t.return.tag!==13)?(n._visibility&=-3,Ic(t)):Fl(t);break;default:Fl(t)}}function Ic(t){var n=t.deletions;if((t.flags&16)!==0){if(n!==null)for(var r=0;r<n.length;r++){var l=n[r];mn=l,Vx(l,t)}Yx(t)}for(t=t.child;t!==null;){switch(n=t,n.tag){case 0:case 11:case 15:Xa(8,n,n.return),Ic(n);break;case 22:r=n.stateNode,r._visibility&2&&(r._visibility&=-3,Ic(n));break;default:Ic(n)}t=t.sibling}}function Vx(t,n){for(;mn!==null;){var r=mn;switch(r.tag){case 0:case 11:case 15:Xa(8,r,n);break;case 23:case 22:if(r.memoizedState!==null&&r.memoizedState.cachePool!==null){var l=r.memoizedState.cachePool.pool;l!=null&&l.refCount++}break;case 24:Sl(r.memoizedState.cache)}if(l=r.child,l!==null)l.return=r,mn=l;else e:for(r=t;mn!==null;){l=mn;var f=l.sibling,h=l.return;if(Ix(l),l===r){mn=null;break e}if(f!==null){f.return=h,mn=f;break e}mn=h}}}var R_={getCacheForType:function(t){var n=yn(Qt),r=n.data.get(t);return r===void 0&&(r=t(),n.data.set(t,r)),r},cacheSignal:function(){return yn(Qt).controller.signal}},D_=typeof WeakMap=="function"?WeakMap:Map,bt=0,Mt=null,at=null,st=0,Et=0,ti=null,Qa=!1,Cs=!1,Zf=!1,va=0,Ft=0,Ja=0,Lr=0,Uc=0,ni=0,As=0,ql=null,Kn=null,Qf=!1,Bc=0,Xx=0,$c=1/0,Hc=null,Wa=null,Bt=0,Ci=null,Ir=null,Yi=0,Jf=0,Wf=null,Zx=null,Os=null,Ms=null,js=null,Gl=0,Pc=null;function ii(){return(bt&2)!==0&&st!==0?st&-st:ge.T!==null?cp():Lo()}function Qx(){if(ni===0)if((st&536870912)===0||tt){var t=Ma;Ma<<=1,(Ma&3932160)===0&&(Ma=262144),ni=t}else ni=536870912;return t=vn.current,t!==null&&(t.flags|=32),ni}function Rs(t,n){if(n!=null){var r=t.stateNode,l=r.ref;l===null&&(l=r.ref=My(ua(t.memoizedProps,r))),Ms===null&&(Ms=[]),Ms.push(n.bind(null,l))}}function Vn(t,n,r){(t===Mt&&(Et===2||Et===9)||t.cancelPendingCommit!==null)&&(Ds(t,0),er(t,st,ni,!1)),xr(t,r),((bt&2)===0||t!==Mt)&&(t===Mt&&((bt&2)===0&&(Lr|=r),Ft===4&&er(t,st,ni,!1)),Ki(t))}function Jx(t,n,r){if((bt&6)!==0)throw Error(s(327));var l=!r&&(n&127)===0&&(n&t.expiredLanes)===0||br(t,n),f=l?I_(t,n):tp(t,n,!0),h=l;do{if(f===0){Cs&&!l&&er(t,n,0,!1);break}else{if(r=t.current.alternate,h&&!z_(r)){f=tp(t,n,!1),h=!1;continue}if(f===2){if(h=n,t.errorRecoveryDisabledLanes&h)var w=0;else w=t.pendingLanes&-536870913,w=w!==0?w:w&536870912?536870912:0;if(w!==0){n=w;e:{var E=t;f=ql;var z=E.current.memoizedState.isDehydrated;if(z&&(Ds(E,w).flags|=256),w=tp(E,w,!1),w!==2&&w!==6){if(Zf&&!z){E.errorRecoveryDisabledLanes|=h,Lr|=h,f=4;break e}h=Kn,Kn=f,h!==null&&(Kn===null?Kn=h:Kn.push.apply(Kn,h))}f=w}if(h=!1,f!==2)continue}}if(f===1){Ds(t,0),er(t,n,0,!0);break}e:{switch(l=t,h=f,h){case 0:case 1:throw Error(s(345));case 4:if((n&4194048)!==n&&(n&62914560)!==n)break;case 6:er(l,n,ni,!Qa);break e;case 2:Kn=null;break;case 3:case 5:break;default:throw Error(s(329))}if((n&62914560)===n&&(f=Bc+300-Kt(),10<f)){if(er(l,n,ni,!Qa),Ra(l,0,!0)!==0)break e;Yi=n,l.timeoutHandle=vp(Wx.bind(null,l,r,Kn,Hc,Qf,n,ni,Lr,As,Qa,h,"Throttled",-0,0),f);break e}Wx(l,r,Kn,Hc,Qf,n,ni,Lr,As,Qa,h,null,-0,0)}}break}while(!0);Ki(t)}function Wx(t,n,r,l,f,h,w,E,z,K,W,le,G,Q){t.timeoutHandle=-1;var _e=n.subtreeFlags,je=(h&335544064)===h;if(le=null,(je||_e&8192||(_e&16785408)===16785408)&&(le={stylesheets:null,count:0,imgCount:0,imgBytes:0,suspenseyImages:[],waitingForImages:!0,waitingForViewTransition:!1,unsuspend:Ii},ei=null,Gx(n,h,le),je&&(_e=le,je=t.containerInfo,je=(je.nodeType===9?je:je.ownerDocument).__reactViewTransition,je!=null&&(_e.count++,_e.waitingForViewTransition=!0,_e=Wl.bind(_e),je.finished.then(_e,_e))),_e=(h&62914560)===h?Bc-Kt():(h&4194048)===h?Xx-Kt():0,_e=BN(le,_e),_e!==null)){Yi=h,t.cancelPendingCommit=_e(ly.bind(null,t,n,h,r,l,f,w,E,z,K,W,le,null,G,Q)),er(t,h,w,!K);return}ly(t,n,h,r,l,f,w,E,z,K,W,le)}function z_(t){for(var n=t;;){var r=n.tag;if((r===0||r===11||r===15)&&n.flags&16384&&(r=n.updateQueue,r!==null&&(r=r.stores,r!==null)))for(var l=0;l<r.length;l++){var f=r[l],h=f.getSnapshot;f=f.value;try{if(!Jn(h(),f))return!1}catch{return!1}}if(r=n.child,n.subtreeFlags&16384&&r!==null)r.return=n,n=r;else{if(n===t)break;for(;n.sibling===null;){if(n.return===null||n.return===t)return!0;n=n.return}n.sibling.return=n.return,n=n.sibling}}return!0}function er(t,n,r,l){n=Do(t,n),n&=~Uc,n&=~Lr,t.suspendedLanes|=n,t.pingedLanes&=~n,l&&(t.warmLanes|=n),l=t.expirationTimes;for(var f=n;0<f;){var h=31-Ne(f),w=1<<h;l[h]=-1,f&=~w}r!==0&&zo(t,r,n)}function Fc(){return(bt&6)===0?(Yl(0),!1):!0}function ep(){if(at!==null){if(Et===0)var t=at.return;else t=at,ha=_r=null,of(t),vs=null,Al=0,t=at;for(;t!==null;)kx(t.alternate,t),t=t.return;at=null}}function Ds(t,n){var r=t.timeoutHandle;return r!==-1&&(t.timeoutHandle=-1,rN(r)),r=t.cancelPendingCommit,r!==null&&(t.cancelPendingCommit=null,r()),Yi=0,ep(),Mt=t,at=r=fa(t.current,null),st=n,Et=0,ti=null,Qa=!1,Cs=br(t,n),Zf=!1,As=ni=Uc=Lr=Ja=Ft=0,Kn=ql=null,Qf=!1,va=Do(t,n),Qo(),r}function ey(t,n){Qe=null,ge.H=kc,n===ys||n===oc?(n=lb(),Et=3):n===Vd?(n=lb(),Et=4):Et=n===Ef?8:n!==null&&typeof n=="object"&&typeof n.then=="function"?6:1,ti=n,at===null&&(Ft=1,Ec(t,ci(n,t.current)))}function ty(){var t=vn.current;return t===null?!0:(st&4194048)===st?Cn===null:(st&62914560)===st||(st&536870912)!==0?t===Cn:!1}function ny(){var t=ge.H;return ge.H=kc,t===null?kc:t}function iy(){var t=ge.A;return ge.A=R_,t}function qc(){Ft=4,Qa||(st&4194048)!==st&&vn.current!==null||(Cs=!0),(Ja&134217727)===0&&(Lr&134217727)===0||Mt===null||er(Mt,st,ni,!1)}function tp(t,n,r){var l=bt;bt|=2;var f=ny(),h=iy();(Mt!==t||st!==n)&&(Hc=null,Ds(t,n)),n=!1;var w=Ft;e:do try{if(Et!==0&&at!==null){var E=at,z=ti;switch(Et){case 8:ep(),w=6;break e;case 3:case 2:case 9:case 6:vn.current===null&&(n=!0);var K=Et;if(Et=0,ti=null,zs(t,E,z,K),r&&Cs){w=0;break e}break;default:K=Et,Et=0,ti=null,zs(t,E,z,K)}}L_(),w=Ft;break}catch(W){ey(t,W)}while(!0);return n&&t.shellSuspendCounter++,ha=_r=null,bt=l,ge.H=f,ge.A=h,at===null&&(Mt=null,st=0,Qo()),w}function L_(){for(;at!==null;)ay(at)}function I_(t,n){var r=bt;bt|=2;var l=ny(),f=iy();Mt!==t||st!==n?(Hc=null,$c=Kt()+500,Ds(t,n)):Cs=br(t,n);e:do try{if(Et!==0&&at!==null){n=at;var h=ti;t:switch(Et){case 1:Et=0,ti=null,zs(t,n,h,1);break;case 2:case 9:if(rb(h)){Et=0,ti=null,ry(n);break}n=function(){Et!==2&&Et!==9||Mt!==t||(Et=7),Ki(t)},h.then(n,n);break e;case 3:Et=7;break e;case 4:Et=5;break e;case 7:rb(h)?(Et=0,ti=null,ry(n)):(Et=0,ti=null,zs(t,n,h,7));break;case 5:var w=null;switch(at.tag){case 26:w=at.memoizedState;case 5:case 27:var E=at;if(w?Zy(w):E.stateNode.complete){Et=0,ti=null;var z=E.sibling;if(z!==null)at=z;else{var K=E.return;K!==null?(at=K,Gc(K)):at=null}break t}}Et=0,ti=null,zs(t,n,h,5);break;case 6:Et=0,ti=null,zs(t,n,h,6);break;case 8:ep(),Ft=6;break e;default:throw Error(s(462))}}U_();break}catch(W){ey(t,W)}while(!0);return ha=_r=null,ge.H=l,ge.A=f,bt=r,at!==null?0:(Mt=null,st=0,Qo(),Ft)}function U_(){for(;at!==null&&!na();)ay(at)}function ay(t){var n=vx(t.alternate,t,va);t.memoizedProps=t.pendingProps,n===null?Gc(t):at=n}function ry(t){var n=t,r=n.alternate;switch(n.tag){case 15:case 0:n=px(r,n,n.pendingProps,n.type,void 0,st);break;case 11:n=px(r,n,n.pendingProps,n.type.render,n.ref,st);break;case 5:of(n);var l=n;l===pn&&(tt?(ic(l),l.tag===5&&l.stateNode!=null&&(zt=l.stateNode)):(ic(l),tt=!0));default:kx(r,n),n=at=Vg(n,va),n=vx(r,n,va)}t.memoizedProps=t.pendingProps,n===null?Gc(t):at=n}function zs(t,n,r,l){ha=_r=null,of(n),vs=null,Al=0;var f=n.return;try{if(N_(t,f,n,r,st)){Ft=1,Ec(t,ci(r,t.current)),at=null;return}}catch(h){if(f!==null)throw at=f,h;Ft=1,Ec(t,ci(r,t.current)),at=null;return}n.flags&32768?(tt||l===1?t=!0:Cs||(st&536870912)!==0?t=!1:(Qa=t=!0,(l===2||l===9||l===3||l===6)&&(l=vn.current,l!==null&&l.tag===13&&(l.flags|=16384))),sy(n,t)):Gc(n)}function Gc(t){var n=t;do{if((n.flags&32768)!==0){sy(n,Qa);return}t=n.return;var r=A_(n.alternate,n,va);if(r!==null){at=r;return}if(n=n.sibling,n!==null){at=n;return}at=n=t}while(n!==null);Ft===0&&(Ft=5)}function sy(t,n){do{var r=O_(t.alternate,t);if(r!==null){r.flags&=32767,at=r;return}if(r=t.return,r!==null&&(r.flags|=32768,r.subtreeFlags=0,r.deletions=null),!n&&(t=t.sibling,t!==null)){at=t;return}at=t=r}while(t!==null);Ft=6,at=null}function ly(t,n,r,l,f,h,w,E,z,K,W,le){t.cancelPendingCommit=null;do Yc();while(Bt!==0);if((bt&6)!==0)throw Error(s(327));if(n!==null){if(n===t.current)throw Error(s(177));t===Mt&&(at=Mt=null,st=0),Ir=n,Ci=t,Yi=r,Wf=f,Zx=l,B_(t,n,r,w,E,z,le)}}function B_(t,n,r,l,f,h,w){var E=n.lanes|n.childLanes;if(Jf=E,E|=zd,md(t,r,E,l,f,h),Ms=null,(r&335544064)===r?(js=p_(t),l=10262):(js=null,l=10256),(n.subtreeFlags&l)!==0||(n.flags&l)!==0?(t.callbackNode=null,t.callbackPriority=0,G_(ki,function(){return rp(),null})):(t.callbackNode=null,t.callbackPriority=0),Mc=!1,l=(n.flags&13878)!==0,(n.subtreeFlags&13878)!==0||l){l=ge.T,ge.T=null,f=ke.p,ke.p=2,h=bt,bt|=4;try{M_(t,n,r)}finally{bt=h,ke.p=f,ge.T=l}}Bt=1,Mc?Os=dN(w,t.containerInfo,js,np,ip,H_,ap,rp,$_):(np(),ip(),ap())}function $_(t){if(Bt!==0){var n=Ci.onRecoverableError;n(t,{componentStack:null})}}function H_(){Bt===3&&(Bt=0,Fx(Ir,Ci),Bt=4)}function np(){if(Bt===1){Bt=0;var t=Ci,n=Ir,r=Yi,l=(n.flags&13878)!==0;if((n.subtreeFlags&13878)!==0||l){l=ge.T,ge.T=null;var f=ke.p;ke.p=2;var h=bt;bt|=4;try{Hl=Dc=!1,Hx(n,t,r),r=bp;var w=Ug(t.containerInfo),E=r.focusedElem,z=r.selectionRange;if(w!==E&&E&&E.ownerDocument&&Ig(E.ownerDocument.documentElement,E)){if(z!==null&&Od(E)){var K=z.start,W=z.end;if(W===void 0&&(W=K),"selectionStart"in E)E.selectionStart=K,E.selectionEnd=Math.min(W,E.value.length);else{var le=E.ownerDocument||document,G=le&&le.defaultView||window;if(G.getSelection){var Q=G.getSelection(),_e=E.textContent.length,je=Math.min(z.start,_e),Je=z.end===void 0?je:Math.min(z.end,_e);!Q.extend&&je>Je&&(w=Je,Je=je,je=w);var Y=Lg(E,je),H=Lg(E,Je);if(Y&&H&&(Q.rangeCount!==1||Q.anchorNode!==Y.node||Q.anchorOffset!==Y.offset||Q.focusNode!==H.node||Q.focusOffset!==H.offset)){var X=le.createRange();X.setStart(Y.node,Y.offset),Q.removeAllRanges(),je>Je?(Q.addRange(X),Q.extend(H.node,H.offset)):(X.setEnd(H.node,H.offset),Q.addRange(X))}}}}for(le=[],Q=E;Q=Q.parentNode;)Q.nodeType===1&&le.push({element:Q,left:Q.scrollLeft,top:Q.scrollTop});for(typeof E.focus=="function"&&E.focus(),E=0;E<le.length;E++){var se=le[E];se.element.scrollLeft=se.left,se.element.scrollTop=se.top}}Fs=!!gp,bp=gp=null}finally{bt=h,ke.p=f,ge.T=l}}t.current=n,Bt=2}}function ip(){if(Bt===2){Bt=0;var t=Ci,n=Ir,r=(n.flags&8772)!==0;if((n.subtreeFlags&8772)!==0||r){r=ge.T,ge.T=null;var l=ke.p;ke.p=2;var f=bt;bt|=4;try{zx(t,n.alternate,n)}finally{bt=f,ke.p=l,ge.T=r}}Bt=3}}function ap(){if(Bt===4||Bt===3){Bt=0;var t=Os;Os=null,Oa();var n=Ci,r=Ir,l=Yi,f=Zx,h=(l&335544064)===l?10262:10256;if((r.subtreeFlags&h)!==0||(r.flags&h)!==0?Bt=5:(Bt=0,Ir=Ci=null,oy(n,n.pendingLanes)),h=n.pendingLanes,h===0&&(Wa=null),pl(l),r=r.stateNode,ot&&typeof ot.onCommitFiberRoot=="function")try{ot.onCommitFiberRoot(Ot,r,void 0,(r.current.flags&128)===128)}catch{}if(f!==null){r=ge.T,h=ke.p,ke.p=2,ge.T=null;try{for(var w=n.onRecoverableError,E=0;E<f.length;E++){var z=f[E];w(z.value,{componentStack:z.stack})}}finally{ge.T=r,ke.p=h}}if(f=Ms,w=js,js=null,f!==null&&(Ms=null,w===null&&(w=[]),t!==null))for(z=0;z<f.length;z++)r=(0,f[z])(w),r!==void 0&&t.finished.finally(r);(Yi&3)!==0&&Yc(),Ki(n),h=n.pendingLanes,(l&261930)!==0&&(h&42)!==0?n===Pc?Gl++:(Gl=0,Pc=n):(Gl=0,Pc=null),Yl(0)}}function oy(t,n){(t.pooledCacheLanes&=n)===0&&(n=t.pooledCache,n!=null&&(t.pooledCache=null,Sl(n)))}function Yc(){return Os!==null&&(Os.skipTransition(),Os=null),np(),ip(),ap(),rp()}function rp(){if(Bt!==5)return!1;var t=Ci,n=Jf;Jf=0;var r=pl(Yi),l=ge.T,f=ke.p;try{ke.p=32>r?32:r,ge.T=null,r=Wf,Wf=null;var h=Ci,w=Yi;if(Bt=0,Ir=Ci=null,Yi=0,(bt&6)!==0)throw Error(s(331));var E=bt;if(bt|=4,Kx(h.current),qx(h,h.current,w,r),bt=E,Yl(0,!1),ot&&typeof ot.onPostCommitFiberRoot=="function")try{ot.onPostCommitFiberRoot(Ot,h)}catch{}return!0}finally{ke.p=f,ge.T=l,oy(t,n)}}function cy(t,n,r){n=ci(r,n),n=kf(t.stateNode,n,2),t=Ga(t,n,2),t!==null&&(xr(t,2),Ki(t))}function _t(t,n,r){if(t.tag===3)cy(t,t,r);else for(;n!==null;){if(n.tag===3){cy(n,t,r);break}else if(n.tag===1){var l=n.stateNode;if(typeof n.type.getDerivedStateFromError=="function"||typeof l.componentDidCatch=="function"&&(Wa===null||!Wa.has(l))){t=ci(r,t),r=rx(2),l=Ga(n,r,2),l!==null&&(sx(r,l,n,t),xr(l,2),Ki(l));break}}n=n.return}}function sp(t,n,r){var l=t.pingCache;if(l===null){l=t.pingCache=new D_;var f=new Set;l.set(n,f)}else f=l.get(n),f===void 0&&(f=new Set,l.set(n,f));f.has(r)||(Zf=!0,f.add(r),t=P_.bind(null,t,n,r),n.then(t,t))}function P_(t,n,r){var l=t.pingCache;l!==null&&l.delete(n),t.pingedLanes|=t.suspendedLanes&r,t.warmLanes&=~r,Mt===t&&(st&r)===r&&((Ft===4||Ft===3&&(st&62914560)===st&&300>Kt()-Bc)&&(bt&2)===0?Ds(t,0):Uc|=r,As===st&&(As=0)),Ki(t)}function uy(t,n){n===0&&(n=dl()),t=wr(t,n),t!==null&&(xr(t,n),Ki(t))}function F_(t){var n=t.memoizedState,r=0;n!==null&&(r=n.retryLane),uy(t,r)}function q_(t,n){var r=0;switch(t.tag){case 31:case 13:var l=t.stateNode,f=t.memoizedState;f!==null&&(r=f.retryLane);break;case 19:l=t.stateNode;break;case 22:l=t.stateNode._retryCache;break;default:throw Error(s(314))}l!==null&&l.delete(n),uy(t,r)}function G_(t,n){return yi(t,n)}var Ls=null,Is=null,lp=!1,Kc=!1,op=!1,tr=0;function Ki(t){t!==Is&&t.next===null&&(Is===null?Ls=Is=t:Is=Is.next=t),Kc=!0,lp||(lp=!0,K_())}function Yl(t,n){if(!op&&Kc){op=!0;do for(var r=!1,l=Ls;l!==null;){if(t!==0){var f=l.pendingLanes;if(f===0)var h=0;else{var w=l.suspendedLanes,E=l.pingedLanes;h=(1<<31-Ne(42|t)+1)-1,h&=f&~(w&~E),h=h&201326741?h&201326741|1:h?h|2:0}h!==0&&(r=!0,hy(l,h))}else h=st,h=Ra(l,l===Mt?h:0,l.cancelPendingCommit!==null||l.timeoutHandle!==-1),(h&3)===0||br(l,h)||(r=!0,hy(l,h));l=l.next}while(r);op=!1}}function Y_(){dy()}function dy(){Kc=lp=!1;var t=0;tr!==0&&aN()&&(t=tr);for(var n=Kt(),r=null,l=Ls;l!==null;){var f=l.next,h=fy(l,n);h===0?(l.next=null,r===null?Ls=f:r.next=f,f===null&&(Is=r)):(r=l,(t!==0||(h&3)!==0)&&(Kc=!0)),l=f}Bt!==0&&Bt!==5||Yl(t),tr!==0&&(tr=0)}function fy(t,n){for(var r=t.suspendedLanes,l=t.pingedLanes,f=t.expirationTimes,h=t.pendingLanes&-62914561;0<h;){var w=31-Ne(h),E=1<<w,z=f[w];z===-1?((E&r)===0||(E&l)!==0)&&(f[w]=hd(E,n)):z<=n&&(t.expiredLanes|=E),h&=~E}if(n=Mt,r=st,r=Ra(t,t===n?r:0,t.cancelPendingCommit!==null||t.timeoutHandle!==-1),l=t.callbackNode,r===0||t===n&&(Et===2||Et===9)||t.cancelPendingCommit!==null)return l!==null&&l!==null&&vi(l),t.callbackNode=null,t.callbackPriority=0;if((r&3)===0||br(t,r)){if(n=r&-r,n===t.callbackPriority)return n;switch(l!==null&&vi(l),pl(r)){case 2:case 8:r=Rn;break;case 32:r=ki;break;case 268435456:r=ce;break;default:r=ki}return l=py.bind(null,t),r=yi(r,l),t.callbackPriority=n,t.callbackNode=r,n}return l!==null&&l!==null&&vi(l),t.callbackPriority=2,t.callbackNode=null,2}function py(t,n){if(Bt!==0&&Bt!==5)return t.callbackNode=null,t.callbackPriority=0,null;var r=t.callbackNode;if(Yc()&&t.callbackNode!==r)return null;var l=st;return l=Ra(t,t===Mt?l:0,t.cancelPendingCommit!==null||t.timeoutHandle!==-1),l===0?null:(Jx(t,l,n),fy(t,Kt()),t.callbackNode!=null&&t.callbackNode===r?py.bind(null,t):null)}function hy(t,n){if(Yc())return null;Jx(t,n,!0)}function K_(){sN(function(){(bt&6)!==0?yi(wi,Y_):dy()})}function cp(){if(tr===0){var t=Tr;t===0&&(t=Li,Li<<=1,(Li&261888)===0&&(Li=256)),tr=t}return tr}function my(t){return t==null||typeof t=="symbol"||typeof t=="boolean"?null:typeof t=="function"?t:Fo(t)}function V_(t,n,r,l,f){if(n==="submit"&&r&&r.stateNode===f){var h=my((f[me]||null).action),w=l.submitter;w&&(n=(n=w[me]||null)?my(n.formAction):w.getAttribute("formAction"),n!==null&&(h=n,w=null));var E=new Ko("action","action",null,l,f);t.push({event:E,listeners:[{instance:null,listener:function(){if(l.defaultPrevented){if(tr!==0){var z=new FormData(f,w);bf(r,{pending:!0,data:z,method:f.method,action:h},null,z)}}else typeof h=="function"&&(E.preventDefault(),z=new FormData(f,w),bf(r,{pending:!0,data:z,method:f.method,action:h},h,z))},currentTarget:f}]})}}for(var up=0;up<Dd.length;up++){var dp=Dd[up],X_=dp.toLowerCase(),Z_=dp[0].toUpperCase()+dp.slice(1);_i(X_,"on"+Z_)}_i(Hg,"onAnimationEnd"),_i(Pg,"onAnimationIteration"),_i(Fg,"onAnimationStart"),_i("dblclick","onDoubleClick"),_i("focusin","onFocus"),_i("focusout","onBlur"),_i(r_,"onTransitionRun"),_i(s_,"onTransitionStart"),_i(l_,"onTransitionCancel"),_i(qg,"onTransitionEnd"),la("onMouseEnter",["mouseout","mouseover"]),la("onMouseLeave",["mouseout","mouseover"]),la("onPointerEnter",["pointerout","pointerover"]),la("onPointerLeave",["pointerout","pointerover"]),si("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),si("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),si("onBeforeInput",["compositionend","keypress","textInput","paste"]),si("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),si("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),si("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var Kl="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(" "),Q_=new Set("beforetoggle cancel close invalid load scroll scrollend toggle".split(" ").concat(Kl));function gy(t,n){n=(n&4)!==0;for(var r=0;r<t.length;r++){var l=t[r],f=l.event;l=l.listeners;e:{var h=void 0;if(n)for(var w=l.length-1;0<=w;w--){var E=l[w],z=E.instance,K=E.currentTarget;if(E=E.listener,z!==h&&f.isPropagationStopped())break e;h=E,f.currentTarget=K;try{h(f)}catch(W){Zo(W)}f.currentTarget=null,h=z}else for(w=0;w<l.length;w++){if(E=l[w],z=E.instance,K=E.currentTarget,E=E.listener,z!==h&&f.isPropagationStopped())break e;h=E,f.currentTarget=K;try{h(f)}catch(W){Zo(W)}f.currentTarget=null,h=z}}}}function rt(t,n){var r=n[it];r===void 0&&(r=n[it]=new Set);var l=t+"__bubble";r.has(l)||(by(n,t,2,!1),r.add(l))}function fp(t,n,r){var l=0;n&&(l|=4),by(r,t,l,n)}var Vc="_reactListening"+Math.random().toString(36).slice(2);function pp(t){if(!t[Vc]){t[Vc]=!0,Bo.forEach(function(r){r!=="selectionchange"&&(Q_.has(r)||fp(r,!1,t),fp(r,!0,t))});var n=t.nodeType===9?t:t.ownerDocument;n===null||n[Vc]||(n[Vc]=!0,fp("selectionchange",!1,n))}}function by(t,n,r,l){switch(s1(n)){case 2:var f=FN;break;case 8:f=qN;break;default:f=Rp}r=f.bind(null,n,r,t),f=void 0,!vd||n!=="touchstart"&&n!=="touchmove"&&n!=="wheel"||(f=!0),l?f!==void 0?t.addEventListener(n,r,{capture:!0,passive:f}):t.addEventListener(n,r,!0):f!==void 0?t.addEventListener(n,r,{passive:f}):t.addEventListener(n,r,!1)}function hp(t,n,r,l,f){var h=l;if((n&1)===0&&(n&2)===0&&l!==null)e:for(;;){if(l===null)return;var w=l.tag;if(w===3||w===4){var E=l.stateNode.containerInfo;if(E===f)break;if(w===4)for(w=l.return;w!==null;){var z=w.tag;if((z===3||z===4)&&w.stateNode.containerInfo===f)return;w=w.return}for(;E!==null;){if(w=fn(E),w===null)return;if(z=w.tag,z===5||z===6||z===26||z===27){l=h=w;continue e}E=E.parentNode}}l=l.return}bg(function(){var K=h,W=xd(r),le=[];e:{var G=Gg.get(t);if(G!==void 0){var Q=Ko,_e=t;switch(t){case"keypress":if(Go(r)===0)break e;case"keydown":case"keyup":Q=zE;break;case"focusin":_e="focus",Q=_d;break;case"focusout":_e="blur",Q=_d;break;case"beforeblur":case"afterblur":Q=_d;break;case"click":if(r.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":Q=vg;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":Q=EE;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":Q=$E;break;case Hg:case Pg:case Fg:Q=SE;break;case qg:Q=PE;break;case"scroll":case"scrollend":Q=wE;break;case"wheel":Q=qE;break;case"copy":case"cut":case"paste":Q=CE;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":Q=kg;break;case"submit":Q=UE;break;case"toggle":case"beforetoggle":Q=YE}var je=(n&4)!==0,Je=!je&&(t==="scroll"||t==="scrollend"),Y=je?G!==null?G+"Capture":null:G;je=[];for(var H=K,X;H!==null;){var se=H;if(X=se.stateNode,se=se.tag,se!==5&&se!==26&&se!==27||X===null||Y===null||(se=ml(H,Y),se!=null&&je.push(Vl(H,se,X))),Je)break;H=H.return}0<je.length&&(G=new Q(G,_e,null,r,W),le.push({event:G,listeners:je}))}}if((n&7)===0){e:{if(Q=t==="mouseover"||t==="pointerover",G=t==="mouseout"||t==="pointerout",Q&&r!==bd&&(_e=r.relatedTarget||r.fromElement)&&(fn(_e)||_e[De]))break e;(G||Q)&&(_e=W.window===W?W:(Q=W.ownerDocument)?Q.defaultView||Q.parentWindow:window,G?(Q=r.relatedTarget||r.toElement,G=K,Q=Q?fn(Q):null,Q!==null&&(Je=u(Q),je=Q.tag,Q!==Je||je!==5&&je!==27&&je!==6)&&(Q=null)):(G=null,Q=K),G!==Q&&(je=vg,se="onMouseLeave",Y="onMouseEnter",H="mouse",(t==="pointerout"||t==="pointerover")&&(je=kg,se="onPointerLeave",Y="onPointerEnter",H="pointer"),Je=G==null?_e:za(G),X=Q==null?_e:za(Q),_e=new je(se,H+"leave",G,r,W),_e.target=Je,_e.relatedTarget=X,se=null,fn(W)===K&&(je=new je(Y,H+"enter",Q,r,W),je.target=X,je.relatedTarget=Je,se=je),Je=se,je=G&&Q?R(G,Q,J_):null,G!==null&&xy(le,_e,G,je,!1),Q!==null&&Je!==null&&xy(le,Je,Q,je,!0)))}e:{if(G=K?za(K):window,Q=G.nodeName&&G.nodeName.toLowerCase(),Q==="select"||Q==="input"&&G.type==="file")var Oe=Og;else if(Cg(G))if(Mg)Oe=n_;else{Oe=e_;var lt=WE}else Q=G.nodeName,!Q||Q.toLowerCase()!=="input"||G.type!=="checkbox"&&G.type!=="radio"?K&&gd(K.elementType)&&(Oe=Og):Oe=t_;if(Oe&&(Oe=Oe(t,K))){Ag(le,Oe,r,W);break e}lt&<(t,G,K)}switch(lt=K?za(K):window,t){case"focusin":(Cg(lt)||lt.contentEditable==="true")&&(ds=lt,Md=K,El=null);break;case"focusout":El=Md=ds=null;break;case"mousedown":jd=!0;break;case"contextmenu":case"mouseup":case"dragend":jd=!1,Bg(le,r,W);break;case"selectionchange":if(a_)break;case"keydown":case"keyup":Bg(le,r,W)}var Le;if(Sd)e:{switch(t){case"compositionstart":var He="onCompositionStart";break e;case"compositionend":He="onCompositionEnd";break e;case"compositionupdate":He="onCompositionUpdate";break e}He=void 0}else us?Sg(t,r)&&(He="onCompositionEnd"):t==="keydown"&&r.keyCode===229&&(He="onCompositionStart");He&&(Eg&&r.locale!=="ko"&&(us||He!=="onCompositionStart"?He==="onCompositionEnd"&&us&&(Le=xg()):(La=W,wd="value"in La?La.value:La.textContent,us=!0)),lt=Xc(K,He),0<lt.length&&(He=new wg(He,t,null,r,W),le.push({event:He,listeners:lt}),Le?He.data=Le:(Le=Tg(r),Le!==null&&(He.data=Le)))),(Le=VE?XE(t,r):ZE(t,r))&&(He=Xc(K,"onBeforeInput"),0<He.length&&(lt=new wg("onBeforeInput","beforeinput",null,r,W),le.push({event:lt,listeners:He}),lt.data=Le)),V_(le,t,K,r,W)}gy(le,n)})}function Vl(t,n,r){return{instance:t,listener:n,currentTarget:r}}function Xc(t,n){for(var r=n+"Capture",l=[];t!==null;){var f=t,h=f.stateNode;if(f=f.tag,f!==5&&f!==26&&f!==27||h===null||(f=ml(t,r),f!=null&&l.unshift(Vl(t,f,h)),f=ml(t,n),f!=null&&l.push(Vl(t,f,h))),t.tag===3)return l;t=t.return}return[]}function J_(t){if(t===null)return null;do t=t.return;while(t&&t.tag!==5&&t.tag!==27);return t||null}function xy(t,n,r,l,f){for(var h=n._reactName,w=[];r!==null&&r!==l;){var E=r,z=E.alternate,K=E.stateNode;if(E=E.tag,z!==null&&z===l)break;E!==5&&E!==26&&E!==27||K===null||(z=K,f?(K=ml(r,h),K!=null&&w.unshift(Vl(r,K,z))):f||(K=ml(r,h),K!=null&&w.push(Vl(r,K,z)))),r=r.return}w.length!==0&&t.push({event:n,listeners:w})}var W_=/\r\n?/g,eN=/\u0000|\uFFFD/g;function yy(t){return(typeof t=="string"?t:""+t).replace(W_,`
|
|
9
|
+
`).replace(eN,"")}function vy(t,n){return n=yy(n),yy(t)===n}function Nt(t,n,r,l,f,h){switch(r){case"children":if(typeof l=="string")n==="body"||n==="textarea"&&l===""||ls(t,l);else if(typeof l=="number"||typeof l=="bigint")n!=="body"&&ls(t,""+l);else return;break;case"className":oa(t,"class",l);break;case"tabIndex":oa(t,"tabindex",l);break;case"dir":case"role":case"viewBox":case"width":case"height":oa(t,r,l);break;case"style":mg(t,l,h);return;case"data":if(n!=="object"){oa(t,"data",l);break}case"src":case"href":if(l===""&&(n!=="a"||r!=="href")){t.removeAttribute(r);break}if(l==null||typeof l=="function"||typeof l=="symbol"||typeof l=="boolean"){t.removeAttribute(r);break}l=Fo(l),t.setAttribute(r,l);break;case"action":case"formAction":if(typeof l=="function"){t.setAttribute(r,"javascript:throw new Error('A React form was unexpectedly submitted. If you called form.submit() manually, consider using form.requestSubmit() instead. If you\\'re trying to use event.stopPropagation() in a submit event handler, consider also calling event.preventDefault().')");break}else typeof h=="function"&&(r==="formAction"?(n!=="input"&&Nt(t,n,"name",f.name,f,null),Nt(t,n,"formEncType",f.formEncType,f,null),Nt(t,n,"formMethod",f.formMethod,f,null),Nt(t,n,"formTarget",f.formTarget,f,null)):(Nt(t,n,"encType",f.encType,f,null),Nt(t,n,"method",f.method,f,null),Nt(t,n,"target",f.target,f,null)));if(l==null||typeof l=="symbol"||typeof l=="boolean"){t.removeAttribute(r);break}l=Fo(l),t.setAttribute(r,l);break;case"onClick":l!=null&&(t.onclick=Ii);return;case"onScroll":l!=null&&rt("scroll",t);return;case"onScrollEnd":l!=null&&rt("scrollend",t);return;case"dangerouslySetInnerHTML":if(l!=null){if(typeof l!="object"||!("__html"in l))throw Error(s(61));if(r=l.__html,r!=null){if(f.children!=null)throw Error(s(60));h?.__html!==r&&(t.innerHTML=r)}}break;case"multiple":t.multiple=l&&typeof l!="function"&&typeof l!="symbol";break;case"muted":t.muted=l&&typeof l!="function"&&typeof l!="symbol";break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"defaultValue":case"defaultChecked":case"innerHTML":case"ref":break;case"autoFocus":break;case"xlinkHref":if(l==null||typeof l=="function"||typeof l=="boolean"||typeof l=="symbol"){t.removeAttribute("xlink:href");break}r=Fo(l),t.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",r);break;case"contentEditable":case"spellCheck":case"draggable":case"value":case"autoReverse":case"externalResourcesRequired":case"focusable":case"preserveAlpha":l!=null&&typeof l!="function"&&typeof l!="symbol"?t.setAttribute(r,l):t.removeAttribute(r);break;case"inert":case"allowFullScreen":case"async":case"autoPlay":case"controls":case"credentialless":case"default":case"defer":case"disabled":case"disablePictureInPicture":case"disableRemotePlayback":case"formNoValidate":case"hidden":case"loop":case"noModule":case"noValidate":case"open":case"playsInline":case"readOnly":case"required":case"reversed":case"scoped":case"seamless":case"itemScope":l&&typeof l!="function"&&typeof l!="symbol"?t.setAttribute(r,""):t.removeAttribute(r);break;case"capture":case"download":l===!0?t.setAttribute(r,""):l!==!1&&l!=null&&typeof l!="function"&&typeof l!="symbol"?t.setAttribute(r,l):t.removeAttribute(r);break;case"cols":case"rows":case"size":case"span":l!=null&&typeof l!="function"&&typeof l!="symbol"&&!isNaN(l)&&1<=l?t.setAttribute(r,l):t.removeAttribute(r);break;case"rowSpan":case"start":l==null||typeof l=="function"||typeof l=="symbol"||isNaN(l)?t.removeAttribute(r):t.setAttribute(r,l);break;case"popover":rt("beforetoggle",t),rt("toggle",t),mt(t,"popover",l);break;case"xlinkActuate":bn(t,"http://www.w3.org/1999/xlink","xlink:actuate",l);break;case"xlinkArcrole":bn(t,"http://www.w3.org/1999/xlink","xlink:arcrole",l);break;case"xlinkRole":bn(t,"http://www.w3.org/1999/xlink","xlink:role",l);break;case"xlinkShow":bn(t,"http://www.w3.org/1999/xlink","xlink:show",l);break;case"xlinkTitle":bn(t,"http://www.w3.org/1999/xlink","xlink:title",l);break;case"xlinkType":bn(t,"http://www.w3.org/1999/xlink","xlink:type",l);break;case"xmlBase":bn(t,"http://www.w3.org/XML/1998/namespace","xml:base",l);break;case"xmlLang":bn(t,"http://www.w3.org/XML/1998/namespace","xml:lang",l);break;case"xmlSpace":bn(t,"http://www.w3.org/XML/1998/namespace","xml:space",l);break;case"is":mt(t,"is",l);break;case"innerText":case"textContent":return;default:if(!(2<r.length)||r[0]!=="o"&&r[0]!=="O"||r[1]!=="n"&&r[1]!=="N")r=yE.get(r)||r,mt(t,r,l);else return}ct=!0}function mp(t,n,r,l,f,h){switch(r){case"style":mg(t,l,h);return;case"dangerouslySetInnerHTML":if(l!=null){if(typeof l!="object"||!("__html"in l))throw Error(s(61));if(r=l.__html,r!=null){if(f.children!=null)throw Error(s(60));h?.__html!==r&&(t.innerHTML=r)}}break;case"children":if(typeof l=="string")ls(t,l);else if(typeof l=="number"||typeof l=="bigint")ls(t,""+l);else return;break;case"onScroll":l!=null&&rt("scroll",t);return;case"onScrollEnd":l!=null&&rt("scrollend",t);return;case"onClick":l!=null&&(t.onclick=Ii);return;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"innerHTML":case"ref":return;case"innerText":case"textContent":return;default:if(!$o.hasOwnProperty(r))e:{if(r[0]==="o"&&r[1]==="n"&&(f=r.endsWith("Capture"),h=r.slice(2,f?r.length-7:void 0),n=t[me]||null,n=n!=null?n[r]:null,typeof n=="function"&&t.removeEventListener(h,n,f),typeof l=="function")){typeof n!="function"&&n!==null&&(r in t?t[r]=null:t.hasAttribute(r)&&t.removeAttribute(r)),t.addEventListener(h,l,f);break e}ct=!0,r in t?t[r]=l:l===!0?t.setAttribute(r,""):mt(t,r,l)}return}ct=!0}function En(t,n,r){switch(n){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"img":rt("error",t),rt("load",t);var l=!1,f=!1,h;for(h in r)if(r.hasOwnProperty(h)){var w=r[h];if(w!=null)switch(h){case"src":l=!0;break;case"srcSet":f=!0;break;case"children":case"dangerouslySetInnerHTML":throw Error(s(137,n));default:Nt(t,n,h,w,r,null)}}f&&Nt(t,n,"srcSet",r.srcSet,r,null),l&&Nt(t,n,"src",r.src,r,null);return;case"input":rt("invalid",t);var E=h=w=f=null,z=null,K=null;for(l in r)if(r.hasOwnProperty(l)){var W=r[l];if(W!=null)switch(l){case"name":f=W;break;case"type":w=W;break;case"checked":z=W;break;case"defaultChecked":K=W;break;case"value":h=W;break;case"defaultValue":E=W;break;case"children":case"dangerouslySetInnerHTML":if(W!=null)throw Error(s(137,n));break;default:Nt(t,n,l,W,r,null)}}Po(t,h,E,z,K,w,f,!1);return;case"select":rt("invalid",t),l=w=h=null;for(f in r)if(r.hasOwnProperty(f)&&(E=r[f],E!=null))switch(f){case"value":h=E;break;case"defaultValue":w=E;break;case"multiple":l=E;default:Nt(t,n,f,E,r,null)}n=h,r=w,t.multiple=!!l,n!=null?ss(t,!!l,n,!1):r!=null&&ss(t,!!l,r,!0);return;case"textarea":rt("invalid",t),h=f=l=null;for(w in r)if(r.hasOwnProperty(w)&&(E=r[w],E!=null))switch(w){case"value":l=E;break;case"defaultValue":f=E;break;case"children":h=E;break;case"dangerouslySetInnerHTML":if(E!=null)throw Error(s(91));break;default:Nt(t,n,w,E,r,null)}pg(t,l,f,h);return;case"option":for(z in r)r.hasOwnProperty(z)&&(l=r[z],l!=null)&&(z==="selected"?t.selected=l&&typeof l!="function"&&typeof l!="symbol":Nt(t,n,z,l,r,null));return;case"dialog":rt("beforetoggle",t),rt("toggle",t),rt("cancel",t),rt("close",t);break;case"iframe":case"object":rt("load",t);break;case"video":case"audio":for(l=0;l<Kl.length;l++)rt(Kl[l],t);break;case"image":rt("error",t),rt("load",t);break;case"details":rt("toggle",t);break;case"embed":case"source":case"link":rt("error",t),rt("load",t);case"area":case"base":case"br":case"col":case"hr":case"keygen":case"meta":case"param":case"track":case"wbr":case"menuitem":for(K in r)if(r.hasOwnProperty(K)&&(l=r[K],l!=null))switch(K){case"children":case"dangerouslySetInnerHTML":throw Error(s(137,n));default:Nt(t,n,K,l,r,null)}return;default:if(gd(n)){for(W in r)r.hasOwnProperty(W)&&(l=r[W],l!==void 0&&mp(t,n,W,l,r,void 0));return}}for(E in r)r.hasOwnProperty(E)&&(l=r[E],l!=null&&Nt(t,n,E,l,r,null))}var tN={};function nN(t,n,r,l){switch(n){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"input":var f=null,h=null,w=null,E=null,z=null,K=null,W=null;for(Q in r){var le=r[Q];if(r.hasOwnProperty(Q)&&le!=null)switch(Q){case"checked":break;case"value":break;case"defaultValue":z=le;default:l.hasOwnProperty(Q)||Nt(t,n,Q,null,l,le)}}for(var G in l){var Q=l[G];if(le=r[G],l.hasOwnProperty(G)&&(Q!=null||le!=null))switch(G){case"type":Q!==le&&(ct=!0),h=Q;break;case"name":Q!==le&&(ct=!0),f=Q;break;case"checked":Q!==le&&(ct=!0),K=Q;break;case"defaultChecked":Q!==le&&(ct=!0),W=Q;break;case"value":Q!==le&&(ct=!0),w=Q;break;case"defaultValue":Q!==le&&(ct=!0),E=Q;break;case"children":case"dangerouslySetInnerHTML":if(Q!=null)throw Error(s(137,n));break;default:Q!==le&&Nt(t,n,G,Q,l,le)}}Qn(t,w,E,z,K,W,h,f);return;case"select":Q=w=E=G=null;for(h in r)if(z=r[h],r.hasOwnProperty(h)&&z!=null)switch(h){case"value":break;case"multiple":Q=z;default:l.hasOwnProperty(h)||Nt(t,n,h,null,l,z)}for(f in l)if(h=l[f],z=r[f],l.hasOwnProperty(f)&&(h!=null||z!=null))switch(f){case"value":h!==z&&(ct=!0),G=h;break;case"defaultValue":h!==z&&(ct=!0),E=h;break;case"multiple":h!==z&&(ct=!0),w=h;default:h!==z&&Nt(t,n,f,h,l,z)}n=E,r=w,l=Q,G!=null?ss(t,!!r,G,!1):!!l!=!!r&&(n!=null?ss(t,!!r,n,!0):ss(t,!!r,r?[]:"",!1));return;case"textarea":Q=G=null;for(E in r)if(f=r[E],r.hasOwnProperty(E)&&f!=null&&!l.hasOwnProperty(E))switch(E){case"value":break;case"children":break;default:Nt(t,n,E,null,l,f)}for(w in l)if(f=l[w],h=r[w],l.hasOwnProperty(w)&&(f!=null||h!=null))switch(w){case"value":f!==h&&(ct=!0),G=f;break;case"defaultValue":f!==h&&(ct=!0),Q=f;break;case"children":break;case"dangerouslySetInnerHTML":if(f!=null)throw Error(s(91));break;default:f!==h&&Nt(t,n,w,f,l,h)}fg(t,G,Q);return;case"option":for(var _e in r)G=r[_e],r.hasOwnProperty(_e)&&G!=null&&!l.hasOwnProperty(_e)&&(_e==="selected"?t.selected=!1:Nt(t,n,_e,null,l,G));for(z in l)G=l[z],Q=r[z],l.hasOwnProperty(z)&&G!==Q&&(G!=null||Q!=null)&&(z==="selected"?(G!==Q&&(ct=!0),t.selected=G&&typeof G!="function"&&typeof G!="symbol"):Nt(t,n,z,G,l,Q));return;case"img":case"link":case"area":case"base":case"br":case"col":case"embed":case"hr":case"keygen":case"meta":case"param":case"source":case"track":case"wbr":case"menuitem":for(var je in r)G=r[je],r.hasOwnProperty(je)&&G!=null&&!l.hasOwnProperty(je)&&Nt(t,n,je,null,l,G);for(K in l)if(G=l[K],Q=r[K],l.hasOwnProperty(K)&&G!==Q&&(G!=null||Q!=null))switch(K){case"children":case"dangerouslySetInnerHTML":if(G!=null)throw Error(s(137,n));break;default:Nt(t,n,K,G,l,Q)}return;default:if(gd(n)){for(var Je in r)G=r[Je],r.hasOwnProperty(Je)&&G!==void 0&&!l.hasOwnProperty(Je)&&mp(t,n,Je,void 0,l,G);for(W in l)G=l[W],Q=r[W],!l.hasOwnProperty(W)||G===Q||G===void 0&&Q===void 0||mp(t,n,W,G,l,Q);return}}for(var Y in r)G=r[Y],r.hasOwnProperty(Y)&&G!=null&&!l.hasOwnProperty(Y)&&Nt(t,n,Y,null,l,G);for(le in l)G=l[le],Q=r[le],!l.hasOwnProperty(le)||G===Q||G==null&&Q==null||Nt(t,n,le,G,l,Q)}function wy(t){switch(t){case"css":case"script":case"font":case"img":case"image":case"input":case"link":return!0;default:return!1}}function iN(){if(typeof performance.getEntriesByType=="function"){for(var t=0,n=0,r=performance.getEntriesByType("resource"),l=0;l<r.length;l++){var f=r[l],h=f.transferSize,w=f.initiatorType,E=f.duration;if(h&&E&&wy(w)){for(w=0,E=f.responseEnd,l+=1;l<r.length;l++){var z=r[l],K=z.startTime;if(K>E)break;var W=z.transferSize,le=z.initiatorType;W&&wy(le)&&(z=z.responseEnd,w+=W*(z<E?1:(E-K)/(z-K)))}if(--l,n+=8*(h+w)/(f.duration/1e3),t++,10<t)break}}if(0<t)return n/t/1e6}return navigator.connection&&(t=navigator.connection.downlink,typeof t=="number")?t:5}var gp=null,bp=null;function Xl(t){return t.nodeType===9?t:t.ownerDocument}function ky(t){switch(t){case"http://www.w3.org/2000/svg":return 1;case"http://www.w3.org/1998/Math/MathML":return 2;default:return 0}}function Ey(t,n){if(t===0)switch(n){case"svg":return 1;case"math":return 2;default:return 0}return t===1&&n==="foreignObject"?0:t}function _y(t,n,r,l){return r=Xl(r).createElement(t),r[ln]=l,r[me]=n,En(r,t,n),Xt(r),r}function xp(t,n){return t==="textarea"||t==="noscript"||typeof n.children=="string"||typeof n.children=="number"||typeof n.children=="bigint"||typeof n.dangerouslySetInnerHTML=="object"&&n.dangerouslySetInnerHTML!==null&&n.dangerouslySetInnerHTML.__html!=null}var yp=null;function aN(){var t=window.event;return t&&t.type==="popstate"?t===yp?!1:(yp=t,!0):(yp=null,!1)}var vp=typeof setTimeout=="function"?setTimeout:void 0,rN=typeof clearTimeout=="function"?clearTimeout:void 0,Ny=typeof Promise=="function"?Promise:void 0,Sy=typeof requestAnimationFrame=="function"?requestAnimationFrame:vp,sN=typeof queueMicrotask=="function"?queueMicrotask:typeof Ny<"u"?function(t){return Ny.resolve(null).then(t).catch(lN)}:vp;function lN(t){setTimeout(function(){throw t})}function nr(t){return t==="head"}function Ty(t,n){var r=n,l=0;do{var f=r.nextSibling;if(t.removeChild(r),f&&f.nodeType===8)if(r=f.data,r==="/$"||r==="/&"){if(l===0){t.removeChild(f),qs(n);return}l--}else if(r==="$"||r==="$?"||r==="$~"||r==="$!"||r==="&")l++;else if(r==="html")Cp(t.ownerDocument.documentElement);else if(r==="head"){r=t.ownerDocument.head,Cp(r);for(var h=r.firstChild;h;){var w=h.nextSibling,E=h.nodeName;h[Fn]||E==="SCRIPT"||E==="STYLE"||E==="LINK"&&h.rel.toLowerCase()==="stylesheet"||r.removeChild(h),h=w}}else r==="body"&&Cp(t.ownerDocument.body);r=f}while(r);qs(n)}function Cy(t,n){var r=t;t=0;do{var l=r.nextSibling;if(r.nodeType===1?n?(r._stashedDisplay=r.style.display,r.style.display="none"):(r.style.display=r._stashedDisplay||"",r.getAttribute("style")===""&&r.removeAttribute("style")):r.nodeType===3&&(n?(r._stashedText=r.nodeValue,r.nodeValue=""):r.nodeValue=r._stashedText||""),l&&l.nodeType===8)if(r=l.data,r==="/$"){if(t===0)break;t--}else r!=="$"&&r!=="$?"&&r!=="$~"&&r!=="$!"||t++;r=l}while(r)}function Ay(t,n,r){if(n=CSS.escape(n)!==n?"r-"+btoa(n).replace(/=/g,""):n,t.style.viewTransitionName=n,r!=null&&(t.style.viewTransitionClass=r),r=getComputedStyle(t),r.display==="inline"){if(n=t.getClientRects(),n.length===1)var l=1;else for(var f=l=0;f<n.length;f++){var h=n[f];0<h.width&&0<h.height&&l++}l===1&&(t=t.style,t.display=n.length===1?"inline-block":"block",t.marginTop="-"+r.paddingTop,t.marginBottom="-"+r.paddingBottom)}}function Oy(t,n){t=t.style,n=n.style;var r=n!=null?n.hasOwnProperty("viewTransitionName")?n.viewTransitionName:n.hasOwnProperty("view-transition-name")?n["view-transition-name"]:null:null;t.viewTransitionName=r==null||typeof r=="boolean"?"":(""+r).trim(),r=n!=null?n.hasOwnProperty("viewTransitionClass")?n.viewTransitionClass:n.hasOwnProperty("view-transition-class")?n["view-transition-class"]:null:null,t.viewTransitionClass=r==null||typeof r=="boolean"?"":(""+r).trim(),t.display==="inline-block"&&(n==null?t.display=t.margin="":(r=n.display,t.display=r==null||typeof r=="boolean"?"":r,r=n.margin,r!=null?t.margin=r:(r=n.hasOwnProperty("marginTop")?n.marginTop:n["margin-top"],t.marginTop=r==null||typeof r=="boolean"?"":r,n=n.hasOwnProperty("marginBottom")?n.marginBottom:n["margin-bottom"],t.marginBottom=n==null||typeof n=="boolean"?"":n)))}function oN(t,n,r){return r=r.ownerDocument.defaultView,{rect:t,abs:n.position==="absolute"||n.position==="fixed",clip:n.clipPath!=="none"||n.overflow!=="visible"||n.filter!=="none"||n.mask!=="none"||n.mask!=="none"||n.borderRadius!=="0px",view:0<=t.bottom&&0<=t.right&&t.top<=r.innerHeight&&t.left<=r.innerWidth}}function wp(t){var n=t.getBoundingClientRect(),r=getComputedStyle(t);return oN(n,r,t)}function cN(t){return t.documentElement.clientHeight}function uN(t){this.addEventListener("load",t),this.addEventListener("error",t)}function dN(t,n,r,l,f,h,w,E,z){var K=n.nodeType===9?n:n.ownerDocument;try{var W=K.startViewTransition({update:function(){var G=K.defaultView,Q=G.navigation&&G.navigation.transition,_e=K.fonts.status;l();var je=[];if(_e==="loaded"&&(cN(K),K.fonts.status==="loading"&&je.push(K.fonts.ready)),_e=je.length,t!==null)for(var Je=t.suspenseyImages,Y=0,H=0;H<Je.length;H++){var X=Je[H];if(!X.complete){var se=X.getBoundingClientRect();if(0<se.bottom&&0<se.right&&se.top<G.innerHeight&&se.left<G.innerWidth){if(Y+=Qy(X),Y>Jc){je.length=_e;break}X=new Promise(uN.bind(X)),je.push(X)}}}if(0<je.length)return G=Promise.race([Promise.all(je),new Promise(function(Oe){return setTimeout(Oe,500)})]).then(f,f),(Q?Promise.allSettled([Q.finished,G]):G).then(h,h);if(f(),Q)return Q.finished.then(h,h);h()},types:r});K.__reactViewTransition=W;var le=[];return W.ready.then(function(){for(var G=K.documentElement.getAnimations({subtree:!0}),Q=0;Q<G.length;Q++){var _e=G[Q],je=_e.effect,Je=je.pseudoElement;if(Je!=null&&Je.startsWith("::view-transition")){le.push(_e),_e=je.getKeyframes();for(var Y=Je=void 0,H=!0,X=0;X<_e.length;X++){var se=_e[X],Oe=se.width;if(Je===void 0)Je=Oe;else if(Je!==Oe){H=!1;break}if(Oe=se.height,Y===void 0)Y=Oe;else if(Y!==Oe){H=!1;break}delete se.width,delete se.height,se.transform==="none"&&delete se.transform}H&&Je!==void 0&&Y!==void 0&&(je.setKeyframes(_e),H=getComputedStyle(je.target,je.pseudoElement),H.width!==Je||H.height!==Y)&&(H=_e[0],H.width=Je,H.height=Y,H=_e[_e.length-1],H.width=Je,H.height=Y,je.setKeyframes(_e))}}w()},function(G){K.__reactViewTransition===W&&(K.__reactViewTransition=null);try{typeof G=="object"&&G!==null&&G.name==="InvalidStateError"&&(G.message==="View transition was skipped because document visibility state is hidden."||G.message==="Skipping view transition because document visibility state has become hidden."||G.message==="Skipping view transition because viewport size changed."||G.message==="Transition was aborted because of invalid state")&&(G=null),G!==null&&z(G)}finally{l(),f(),w()}}),W.finished.finally(function(){for(var G=0;G<le.length;G++)le[G].cancel();K.__reactViewTransition===W&&(K.__reactViewTransition=null),E()}),W}catch{return l(),f(),w(),null}}function Ur(t,n){this._scope=document.documentElement,this._selector="::view-transition-"+t+"("+n+")"}Ur.prototype.animate=function(t,n){return n=typeof n=="number"?{duration:n}:A({},n),n.pseudoElement=this._selector,this._scope.animate(t,n)},Ur.prototype.getAnimations=function(){for(var t=this._scope,n=this._selector,r=t.getAnimations({subtree:!0}),l=[],f=0;f<r.length;f++){var h=r[f].effect;h!==null&&h.target===t&&h.pseudoElement===n&&l.push(r[f])}return l},Ur.prototype.getComputedStyle=function(){return getComputedStyle(this._scope,this._selector)};function My(t){return{name:t,group:new Ur("group",t),imagePair:new Ur("image-pair",t),old:new Ur("old",t),new:new Ur("new",t)}}function ai(t){this._fragmentFiber=t,this._observers=this._eventListeners=null}ai.prototype.addEventListener=function(t,n,r){var l=null,f=null;if(!(r!=null&&typeof r!="boolean"&&(l=r.signal||null,l!==null&&l.aborted))){this._eventListeners===null&&(this._eventListeners=[]);var h=this._eventListeners;if(Ry(h,t,n,r)===-1){var w=this,E=n;r!=null&&typeof r!="boolean"&&r.once===!0&&(E=function(z){w.removeEventListener(t,n,r),typeof n=="function"?n.call(this,z):n.handleEvent(z)}),l!==null&&(f=w.removeEventListener.bind(w,t,n,r),l.addEventListener("abort",f,{once:!0}),f=l.removeEventListener.bind(l,"abort",f)),l=Us(r),h.push({type:t,listener:n,optionsOrUseCapture:r,attachedListener:E,cleanup:f}),b(this._fragmentFiber.child,!1,fN,t,E,l)}this._eventListeners=h}};function fN(t,n,r,l){return _(t).addEventListener(n,r,l),!1}ai.prototype.removeEventListener=function(t,n,r){var l=this._eventListeners;if(l!==null&&(n=Ry(l,t,n,r),n!==-1)){var f=l[n];r=f.attachedListener;var h=f.cleanup;f=Us(f.optionsOrUseCapture),b(this._fragmentFiber.child,!1,pN,t,r,f),l.splice(n,1),h!==null&&h()}};function pN(t,n,r,l){return _(t).removeEventListener(n,r,l),!1}function Us(t){return t!=null&&typeof t!="boolean"&&(t.once===!0||t.signal instanceof AbortSignal)?{capture:t.capture,passive:t.passive}:t}function jy(t){return t==null?"c=0":typeof t=="boolean"?"c="+(t?"1":"0"):"c="+(t.capture?"1":"0")}function Ry(t,n,r,l){if(t.length===0)return-1;l=jy(l);for(var f=0;f<t.length;f++){var h=t[f];if(h.type===n&&h.listener===r&&jy(h.optionsOrUseCapture)===l)return f}return-1}ai.prototype.dispatchEvent=function(t){var n=v(this._fragmentFiber);if(n===null)return!0;n=_(n);var r=this._eventListeners;if(r!==null&&0<r.length||!t.bubbles){var l=n.nodeType===9?n.createComment(""):document.createTextNode("");if(r)for(var f=0;f<r.length;f++){var h=r[f];l.addEventListener(h.type,h.attachedListener,Us(h.optionsOrUseCapture))}if(n.appendChild(l),t=l.dispatchEvent(t),r)for(f=0;f<r.length;f++)h=r[f],l.removeEventListener(h.type,h.attachedListener,Us(h.optionsOrUseCapture));return n.removeChild(l),t}return n.dispatchEvent(t)},ai.prototype.focus=function(t){b(this._fragmentFiber.child,!0,Dy,t,void 0,void 0)};function Dy(t,n){return t.tag===6?!1:(t=_(t),NN(t,n))}ai.prototype.focusLast=function(t){var n=[];b(this._fragmentFiber.child,!0,kp,n,void 0,void 0);for(var r=n.length-1;0<=r&&!Dy(n[r],t);r--);};function kp(t,n){return n.push(t),!1}ai.prototype.blur=function(){var t=v(this._fragmentFiber);t!==null&&(t=_(t),t=Xl(t).activeElement,t!==null&&b(this._fragmentFiber.child,!1,hN,t,void 0,void 0))};function hN(t,n){return t.tag===6?!1:(t=_(t),t===n||t.contains(n)?(n.blur(),!0):!1)}ai.prototype.observeUsing=function(t){this._observers===null&&(this._observers=new Set),this._observers.add(t),b(this._fragmentFiber.child,!1,mN,t,void 0,void 0)};function mN(t,n){return t.tag===6||(t=_(t),n.observe(t)),!1}ai.prototype.unobserveUsing=function(t){var n=this._observers;if(n!==null&&n.has(t)){n.delete(t),b(this._fragmentFiber.child,!1,gN,t,void 0,void 0);for(var r=n=0;r<Ai.length;r++){var l=Ai[r];l.fragmentInstance===this&&l.observer===t?t.unobserve(l.instance):Ai[n++]=l}Ai.length=n}};function gN(t,n){return t.tag===6||(t=_(t),n.unobserve(t)),!1}var Ai=[],Ep=!1;function bN(t,n,r){Ai.push({fragmentInstance:t,observer:n,instance:r}),Ep||(Ep=!0,SN(function(){Ep=!1;var l=Ai;Ai=[];for(var f=0;f<l.length;f++){var h=l[f];h.observer.unobserve(h.instance)}}))}ai.prototype.getClientRects=function(){var t=[];return b(this._fragmentFiber.child,!1,xN,t,void 0,void 0),t};function xN(t,n){if(t.tag===6){t=t.stateNode;var r=t.ownerDocument.createRange();r.selectNodeContents(t),n.push.apply(n,r.getClientRects())}else t=_(t),n.push.apply(n,t.getClientRects());return!1}ai.prototype.getRootNode=function(t){var n=v(this._fragmentFiber);return n===null?this:_(n).getRootNode(t)},ai.prototype.compareDocumentPosition=function(t){var n=v(this._fragmentFiber);if(n===null)return Node.DOCUMENT_POSITION_DISCONNECTED;var r=[];b(this._fragmentFiber.child,!1,kp,r,void 0,void 0);var l=_(n);if(r.length===0){if(r=l,y(this._fragmentFiber)){e:{for(n=this._fragmentFiber.return;n!==null;){if(n.tag===4){n=n.stateNode.containerInfo;break e}if(n.tag===3||n.tag===5||n.tag===27)break;n=n.return}n=null}n!=null&&(r=n)}n=this._fragmentFiber;var f=l=r.compareDocumentPosition(t);return r===t?f=Node.DOCUMENT_POSITION_CONTAINS:l&Node.DOCUMENT_POSITION_CONTAINED_BY&&(r=k(n)[1],r===null?f=Node.DOCUMENT_POSITION_PRECEDING:(t=_(r).compareDocumentPosition(t),f=t===0||t&Node.DOCUMENT_POSITION_FOLLOWING?Node.DOCUMENT_POSITION_FOLLOWING:Node.DOCUMENT_POSITION_PRECEDING)),f|=Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC}n=_(r[0]),f=_(r[r.length-1]);var h=y(this._fragmentFiber)?n.parentElement:l;if(h==null)return Node.DOCUMENT_POSITION_DISCONNECTED;l=h.compareDocumentPosition(n)&Node.DOCUMENT_POSITION_CONTAINED_BY,h=h.compareDocumentPosition(f)&Node.DOCUMENT_POSITION_CONTAINED_BY;var w=n.compareDocumentPosition(t),E=f.compareDocumentPosition(t),z=w&Node.DOCUMENT_POSITION_CONTAINED_BY||E&Node.DOCUMENT_POSITION_CONTAINED_BY;return E=l&&h&&w&Node.DOCUMENT_POSITION_FOLLOWING&&E&Node.DOCUMENT_POSITION_PRECEDING,n=l&&n===t||h&&f===t||z||E?Node.DOCUMENT_POSITION_CONTAINED_BY:!l&&n===t||!h&&f===t?Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC:w,n&Node.DOCUMENT_POSITION_DISCONNECTED||n&Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC||yN(n,this._fragmentFiber,r[0],r[r.length-1],t)?n:Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC};function yN(t,n,r,l,f){var h=fn(f);if(t&Node.DOCUMENT_POSITION_CONTAINED_BY){if(r=!!h)e:{for(;h!==null;){if(h.tag===7&&(h===n||h.alternate===n)){r=!0;break e}h=h.return}r=!1}return r}if(t&Node.DOCUMENT_POSITION_CONTAINS){if(h===null)return h=f.ownerDocument,f===h||f===h.documentElement||f===h.body;e:{for(h=n,n=v(n);h!==null;){if(!(h.tag!==5&&h.tag!==3&&h.tag!==27||h!==n&&h.alternate!==n)){h=!0;break e}h=h.return}h=!1}return h}return t&Node.DOCUMENT_POSITION_PRECEDING?((n=!!h)&&!(n=h===r)&&(n=R(r,h,F),n===null?n=!1:(b(n,!0,M,h,r),h=S,S=null,n=h!==null)),n):t&Node.DOCUMENT_POSITION_FOLLOWING?((n=!!h)&&!(n=h===l)&&(n=R(l,h,F),n===null?n=!1:(b(n,!0,I,h,l),h=S,C=S=null,n=h!==null)),n):!1}function zy(t,n){var r=t.ownerDocument.createRange();r.selectNodeContents(t),t=r.getBoundingClientRect(),window.scrollTo(window.scrollX+t.left,n?window.scrollY+t.top:window.scrollY+t.bottom-window.innerHeight)}ai.prototype.scrollIntoView=function(t){if(typeof t=="object")throw Error(s(566));var n=[];b(this._fragmentFiber.child,!1,kp,n,void 0,void 0);var r=t!==!1;if(n.length===0){var l=k(this._fragmentFiber);if(l=r?l[1]||l[0]||v(this._fragmentFiber):l[0]||l[1],l===null)return;if(l.tag===6){t=_(l),zy(t,r);return}if(l=_(l),l.nodeType!==9){if(l.nodeType===11){r="host"in l?l.host:null,r!==null&&r.scrollIntoView(t);return}l.scrollIntoView(t)}}for(l=r?n.length-1:0;l!==(r?-1:n.length);){var f=n[l];f.tag===6?(f=_(f),zy(f,r)):_(f).scrollIntoView(t),l+=r?-1:1}};function vN(t,n){return t=_(t),Ly(t,n),!1}function Ly(t,n){t.reactFragments==null&&(t.reactFragments=new Set),t.reactFragments.add(n)}function Iy(t,n){var r=n._eventListeners;if(r!==null)for(var l=0;l<r.length;l++){var f=r[l];t.addEventListener(f.type,f.attachedListener,Us(f.optionsOrUseCapture))}t.nodeType!==3&&(r=n._observers,r!==null&&r.forEach(function(h){for(var w=0,E=0;E<Ai.length;E++){var z=Ai[E];(z.fragmentInstance!==n||z.observer!==h||z.instance!==t)&&(Ai[w++]=z)}Ai.length=w,h.observe(t)}),Ly(t,n))}function wN(t,n){var r=n._eventListeners;if(r!==null)for(var l=0;l<r.length;l++){var f=r[l];t.removeEventListener(f.type,f.attachedListener,Us(f.optionsOrUseCapture))}t.nodeType!==3&&(r=n._observers,r!==null&&r.forEach(function(h){typeof h.rootMargin=="string"?bN(n,h,t):h.unobserve(t)}),t.reactFragments!=null&&t.reactFragments.delete(n))}function _p(t){var n=t.firstChild;for(n&&n.nodeType===10&&(n=n.nextSibling);n;){var r=n;switch(n=n.nextSibling,r.nodeName){case"HTML":case"HEAD":case"BODY":_p(r),dn(r);continue;case"SCRIPT":case"STYLE":continue;case"LINK":if(r.rel.toLowerCase()==="stylesheet")continue}t.removeChild(r)}}function kN(t,n,r,l){for(;t.nodeType===1;){var f=r;if(t.nodeName.toLowerCase()!==n.toLowerCase()){if(!l&&(t.nodeName!=="INPUT"||t.type!=="hidden"))break}else if(l){if(!t[Fn])switch(n){case"meta":if(!t.hasAttribute("itemprop"))break;return t;case"link":if(h=t.getAttribute("rel"),h==="stylesheet"&&t.hasAttribute("data-precedence"))break;if(h!==f.rel||t.getAttribute("href")!==(f.href==null||f.href===""?null:f.href)||t.getAttribute("crossorigin")!==(f.crossOrigin==null?null:f.crossOrigin)||t.getAttribute("title")!==(f.title==null?null:f.title))break;return t;case"style":if(t.hasAttribute("data-precedence"))break;return t;case"script":if(h=t.getAttribute("src"),(h!==(f.src==null?null:f.src)||t.getAttribute("type")!==(f.type==null?null:f.type)||t.getAttribute("crossorigin")!==(f.crossOrigin==null?null:f.crossOrigin))&&h&&t.hasAttribute("async")&&!t.hasAttribute("itemprop"))break;return t;default:return t}}else if(n==="input"&&t.type==="hidden"){var h=f.name==null?null:""+f.name;if(f.type==="hidden"&&t.getAttribute("name")===h)return t}else return t;if(t=hi(t.nextSibling),t===null)break}return null}function EN(t,n,r){if(n==="")return null;for(;t.nodeType!==3;)if((t.nodeType!==1||t.nodeName!=="INPUT"||t.type!=="hidden")&&!r||(t=hi(t.nextSibling),t===null))return null;return t}function Uy(t,n){for(;t.nodeType!==8;)if((t.nodeType!==1||t.nodeName!=="INPUT"||t.type!=="hidden")&&!n||(t=hi(t.nextSibling),t===null))return null;return t}function Np(t){return t.data==="$?"||t.data==="$~"}function Sp(t){return t.data==="$!"||t.data==="$?"&&t.ownerDocument.readyState!=="loading"}function _N(t,n){var r=t.ownerDocument;if(t.data==="$~")t._reactRetry=n;else if(t.data!=="$?"||r.readyState!=="loading")n();else{var l=function(){n(),r.removeEventListener("DOMContentLoaded",l)};r.addEventListener("DOMContentLoaded",l),t._reactRetry=l}}function hi(t){for(;t!=null;t=t.nextSibling){var n=t.nodeType;if(n===1||n===3)break;if(n===8){if(n=t.data,n==="$"||n==="$!"||n==="$?"||n==="$~"||n==="&"||n==="F!"||n==="F")break;if(n==="/$"||n==="/&")return null}}return t}var Tp=null;function By(t){t=t.nextSibling;for(var n=0;t;){if(t.nodeType===8){var r=t.data;if(r==="/$"||r==="/&"){if(n===0)return hi(t.nextSibling);n--}else r!=="$"&&r!=="$!"&&r!=="$?"&&r!=="$~"&&r!=="&"||n++}t=t.nextSibling}return null}function $y(t){t=t.previousSibling;for(var n=0;t;){if(t.nodeType===8){var r=t.data;if(r==="$"||r==="$!"||r==="$?"||r==="$~"||r==="&"){if(n===0)return t;n--}else r!=="/$"&&r!=="/&"||n++}t=t.previousSibling}return null}function NN(t,n){function r(){l=!0}if(t.ownerDocument.activeElement===t)return!0;var l=!1;try{t.ownerDocument.addEventListener("focus",r,!0),(t.focus||HTMLElement.prototype.focus).call(t,n)}finally{t.ownerDocument.removeEventListener("focus",r,!0)}return l}function SN(t){Sy(function(){Sy(function(n){return t(n)})})}function Hy(t,n,r){switch(n=Xl(r),t){case"html":if(t=n.documentElement,!t)throw Error(s(452));return t;case"head":if(t=n.head,!t)throw Error(s(453));return t;case"body":if(t=n.body,!t)throw Error(s(454));return t;default:throw Error(s(451))}}function Py(t,n,r){for(var l in r){var f=r[l];r.hasOwnProperty(l)&&f!=null&&Nt(t,n,l,null,tN,f)}r.dangerouslySetInnerHTML!=null&&(t.textContent=""),t.onclick===Ii&&(t.onclick=null),dn(t)}function Cp(t){for(var n=t.attributes;n.length;)t.removeAttributeNode(n[0]);dn(t)}var mi=new Map,Fy=new Set;function Zl(t){if(typeof t.getRootNode=="function"){var n=t.getRootNode();if(n.nodeType===9||n.nodeType===11)return n}return t.nodeType===9?t:t.ownerDocument}var wa=ke.d;ke.d={f:TN,r:CN,D:AN,C:ON,L:MN,m:jN,X:DN,S:RN,M:zN};function TN(){var t=wa.f(),n=Fc();return t||n}function CN(t){var n=ra(t);n!==null&&n.tag===5&&n.type==="form"?Gb(n):wa.r(t)}var Bs=typeof document>"u"?null:document;function qy(t,n,r){var l=Bs;if(l&&typeof n=="string"&&n){var f=kt(n);f='link[rel="'+t+'"][href="'+f+'"]',typeof r=="string"&&(f+='[crossorigin="'+r+'"]'),Fy.has(f)||(Fy.add(f),t={rel:t,crossOrigin:r,href:n},l.querySelector(f)===null&&(n=l.createElement("link"),En(n,"link",t),Xt(n),l.head.appendChild(n)))}}function AN(t){wa.D(t),qy("dns-prefetch",t,null)}function ON(t,n){wa.C(t,n),qy("preconnect",t,n)}function MN(t,n,r){wa.L(t,n,r);var l=Bs;if(l&&t&&n){var f='link[rel="preload"][as="'+kt(n)+'"]';n==="image"&&r&&r.imageSrcSet?(f+='[imagesrcset="'+kt(r.imageSrcSet)+'"]',typeof r.imageSizes=="string"&&(f+='[imagesizes="'+kt(r.imageSizes)+'"]')):f+='[href="'+kt(t)+'"]';var h=f;switch(n){case"style":h=$s(t);break;case"script":h=Hs(t)}if(!(mi.has(h)||(t=A({rel:"preload",href:n==="image"&&r&&r.imageSrcSet?void 0:t,as:n},r),mi.set(h,t),l.querySelector(f)!==null||n==="style"&&l.querySelector(Ql(h))||n==="script"&&l.querySelector(Jl(h))))){var w=l.createElement("link");En(w,"link",t),n==="style"&&(w[aa]=!0,w.onload=w.onerror=function(){Uo(w)}),Xt(w),l.head.appendChild(w)}}}function jN(t,n){wa.m(t,n);var r=Bs;if(r&&t){var l=n&&typeof n.as=="string"?n.as:"script",f='link[rel="modulepreload"][as="'+kt(l)+'"][href="'+kt(t)+'"]',h=f;switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":h=Hs(t)}if(!mi.has(h)&&(t=A({rel:"modulepreload",href:t},n),mi.set(h,t),r.querySelector(f)===null)){switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(r.querySelector(Jl(h)))return}l=r.createElement("link"),En(l,"link",t),Xt(l),r.head.appendChild(l)}}}function RN(t,n,r){wa.S(t,n,r);var l=Bs;if(l&&t){var f=sa(l).hoistableStyles,h=$s(t);n=n||"default";var w=f.get(h);if(!w){var E={loading:0,preload:null};if(w=l.querySelector(Ql(h)))E.loading=5;else{t=A({rel:"stylesheet",href:t,"data-precedence":n},r),(r=mi.get(h))&&Ap(t,r);var z=w=l.createElement("link");Xt(z),En(z,"link",t),z._p=new Promise(function(K,W){z.onload=K,z.onerror=W}),z.addEventListener("load",function(){E.loading|=1}),z.addEventListener("error",function(){E.loading|=2}),E.loading|=4,Zc(w,n,l)}w={type:"stylesheet",instance:w,count:1,state:E},f.set(h,w)}}}function DN(t,n){wa.X(t,n);var r=Bs;if(r&&t){var l=sa(r).hoistableScripts,f=Hs(t),h=l.get(f);h||(h=r.querySelector(Jl(f)),h||(t=A({src:t,async:!0},n),(n=mi.get(f))&&Op(t,n),h=r.createElement("script"),Xt(h),En(h,"link",t),r.head.appendChild(h)),h={type:"script",instance:h,count:1,state:null},l.set(f,h))}}function zN(t,n){wa.M(t,n);var r=Bs;if(r&&t){var l=sa(r).hoistableScripts,f=Hs(t),h=l.get(f);h||(h=r.querySelector(Jl(f)),h||(t=A({src:t,async:!0,type:"module"},n),(n=mi.get(f))&&Op(t,n),h=r.createElement("script"),Xt(h),En(h,"link",t),r.head.appendChild(h)),h={type:"script",instance:h,count:1,state:null},l.set(f,h))}}function Gy(t,n,r,l){var f=(f=jn.current)?Zl(f):null;if(!f)throw Error(s(446));switch(t){case"meta":case"title":return null;case"style":return typeof r.precedence=="string"&&typeof r.href=="string"?(r=$s(r.href),n=sa(f).hoistableStyles,l=n.get(r),l||(l={type:"style",instance:null,count:0,state:null},n.set(r,l)),l):{type:"void",instance:null,count:0,state:null};case"link":if(r.rel==="stylesheet"&&typeof r.href=="string"&&typeof r.precedence=="string"){t=$s(r.href);var h=sa(f).hoistableStyles,w=h.get(t);if(w||(f=f.ownerDocument||f,w={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},h.set(t,w),(h=f.querySelector(Ql(t)))?h._p||(w.instance=h,w.state.loading=5):(h=mi.get(t),h||(h={rel:"preload",as:"style",href:r.href,crossOrigin:r.crossOrigin,integrity:r.integrity,media:r.media,hrefLang:r.hrefLang,referrerPolicy:r.referrerPolicy},mi.set(t,h)),LN(f,t,h,w.state))),n&&l===null)throw Error(s(528,""));return w}if(n&&l!==null)throw Error(s(529,""));return null;case"script":return n=r.async,r=r.src,typeof r=="string"&&n&&typeof n!="function"&&typeof n!="symbol"?(r=Hs(r),n=sa(f).hoistableScripts,l=n.get(r),l||(l={type:"script",instance:null,count:0,state:null},n.set(r,l)),l):{type:"void",instance:null,count:0,state:null};default:throw Error(s(444,t))}}function $s(t){return'href="'+kt(t)+'"'}function Ql(t){return'link[rel="stylesheet"]['+t+"]"}function Yy(t){return A({},t,{"data-precedence":t.precedence,precedence:null})}function LN(t,n,r,l){if(n=t.querySelector('link[rel="preload"][as="style"]['+n+"]")){if(n[aa]!==!0){l.loading=1;return}}else n=t.createElement("link"),n[aa]=!0,n.onload=n.onerror=Uo.bind(null,n),En(n,"link",r),Xt(n),t.head.appendChild(n);l.preload=n,n.addEventListener("load",function(){return l.loading|=1}),n.addEventListener("error",function(){return l.loading|=2})}function Hs(t){return'[src="'+kt(t)+'"]'}function Jl(t){return"script[async]"+t}function Ky(t,n,r){if(n.count++,n.instance===null)switch(n.type){case"style":var l=t.querySelector('style[data-href~="'+kt(r.href)+'"]');if(l)return n.instance=l,Xt(l),l;var f=A({},r,{"data-href":r.href,"data-precedence":r.precedence,href:null,precedence:null});return l=(t.ownerDocument||t).createElement("style"),Xt(l),En(l,"style",f),Zc(l,r.precedence,t),n.instance=l;case"stylesheet":f=$s(r.href);var h=t.querySelector(Ql(f));if(h)return n.state.loading|=4,n.instance=h,Xt(h),h;l=Yy(r),(f=mi.get(f))&&Ap(l,f),h=(t.ownerDocument||t).createElement("link"),Xt(h);var w=h;return w._p=new Promise(function(E,z){w.onload=E,w.onerror=z}),En(h,"link",l),n.state.loading|=4,Zc(h,r.precedence,t),n.instance=h;case"script":return h=Hs(r.src),(f=t.querySelector(Jl(h)))?(n.instance=f,Xt(f),f):(l=r,(f=mi.get(h))&&(l=A({},r),Op(l,f)),t=t.ownerDocument||t,f=t.createElement("script"),Xt(f),En(f,"link",l),t.head.appendChild(f),n.instance=f);case"void":return null;default:throw Error(s(443,n.type))}else n.type==="stylesheet"&&(n.state.loading&4)===0&&(l=n.instance,n.state.loading|=4,Zc(l,r.precedence,t));return n.instance}function Zc(t,n,r){for(var l=r.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),f=l.length?l[l.length-1]:null,h=f,w=0;w<l.length;w++){var E=l[w];if(E.dataset.precedence===n)h=E;else if(h!==f)break}h?h.parentNode.insertBefore(t,h.nextSibling):(n=r.nodeType===9?r.head:r,n.insertBefore(t,n.firstChild))}function Ap(t,n){t.crossOrigin==null&&(t.crossOrigin=n.crossOrigin),t.referrerPolicy==null&&(t.referrerPolicy=n.referrerPolicy),t.title==null&&(t.title=n.title)}function Op(t,n){t.crossOrigin==null&&(t.crossOrigin=n.crossOrigin),t.referrerPolicy==null&&(t.referrerPolicy=n.referrerPolicy),t.integrity==null&&(t.integrity=n.integrity)}var Qc=null;function Vy(t,n,r){if(Qc===null){var l=new Map,f=Qc=new Map;f.set(r,l)}else f=Qc,l=f.get(r),l||(l=new Map,f.set(r,l));if(l.has(t))return l;for(l.set(t,null),r=r.getElementsByTagName(t),f=0;f<r.length;f++){var h=r[f];if(!(h[Fn]||h[ln]||t==="link"&&h.getAttribute("rel")==="stylesheet")&&h.namespaceURI!=="http://www.w3.org/2000/svg"){var w=h.getAttribute(n)||"";w=t+w;var E=l.get(w);E?E.push(h):l.set(w,[h])}}return l}function Mp(t,n,r){t=t.ownerDocument||t,t.head.insertBefore(r,n==="title"?t.querySelector("head > title"):null)}function IN(t,n,r){if(r===1||n.itemProp!=null)return!1;switch(t){case"meta":case"title":return!0;case"style":if(typeof n.precedence!="string"||typeof n.href!="string"||n.href==="")break;return!0;case"link":if(typeof n.rel!="string"||typeof n.href!="string"||n.href===""||n.onLoad||n.onError)break;return n.rel==="stylesheet"?(t=n.disabled,typeof n.precedence=="string"&&t==null):!0;case"script":if(n.async&&typeof n.async!="function"&&typeof n.async!="symbol"&&!n.onLoad&&!n.onError&&n.src&&typeof n.src=="string")return!0}return!1}function Xy(t,n){return t==="img"&&n.src!=null&&n.src!==""&&n.onLoad==null&&n.loading!=="lazy"}function Zy(t){return!(t.type==="stylesheet"&&(t.state.loading&3)===0)}function Qy(t){return(t.width||100)*(t.height||100)*(typeof devicePixelRatio=="number"?devicePixelRatio:1)*.25}function Jy(t,n){typeof n.decode=="function"&&(t.imgCount++,n.complete||(t.imgBytes+=Qy(n),t.suspenseyImages.push(n)),t=$N.bind(t),n.decode().then(t,t))}function UN(t,n,r,l){if(r.type==="stylesheet"&&(typeof l.media!="string"||matchMedia(l.media).matches!==!1)&&(r.state.loading&4)===0){if(r.instance===null){var f=$s(l.href),h=n.querySelector(Ql(f));if(h){n=h._p,n!==null&&typeof n=="object"&&typeof n.then=="function"&&(t.count++,t=Wl.bind(t),n.then(t,t)),r.state.loading|=4,r.instance=h,Xt(h);return}h=n.ownerDocument||n,l=Yy(l),(f=mi.get(f))&&Ap(l,f),h=h.createElement("link"),Xt(h);var w=h;w._p=new Promise(function(E,z){w.onload=E,w.onerror=z}),En(h,"link",l),r.instance=h}t.stylesheets===null&&(t.stylesheets=new Map),t.stylesheets.set(r,n),(n=r.state.preload)&&(r.state.loading&3)===0&&(t.count++,r=Wl.bind(t),n.addEventListener("load",r),n.addEventListener("error",r))}}var Jc=0;function BN(t,n){return t.stylesheets&&t.count===0&&eu(t,t.stylesheets),0<t.count||0<t.imgCount?function(r){var l=setTimeout(function(){if(t.stylesheets&&eu(t,t.stylesheets),t.unsuspend){var h=t.unsuspend;t.unsuspend=null,h()}},6e4+n);0<t.imgBytes&&Jc===0&&(Jc=62500*iN());var f=setTimeout(function(){if(t.waitingForImages=!1,t.count===0&&(t.stylesheets&&eu(t,t.stylesheets),t.unsuspend)){var h=t.unsuspend;t.unsuspend=null,h()}},(t.imgBytes>Jc?50:800)+n);return t.unsuspend=r,function(){t.unsuspend=null,clearTimeout(l),clearTimeout(f)}}:null}function Wy(t){if(t.count===0&&(t.imgCount===0||!t.waitingForImages)){if(t.stylesheets)eu(t,t.stylesheets);else if(t.unsuspend){var n=t.unsuspend;t.unsuspend=null,n()}}}function Wl(){this.count--,Wy(this)}function $N(){this.imgCount--,Wy(this)}var Wc=null;function eu(t,n){t.stylesheets=null,t.unsuspend!==null&&(t.count++,Wc=new Map,n.forEach(HN,t),Wc=null,Wl.call(t))}function HN(t,n){if(!(n.state.loading&4)){var r=Wc.get(t);if(r)var l=r.get(null);else{r=new Map,Wc.set(t,r);for(var f=t.querySelectorAll("link[data-precedence],style[data-precedence]"),h=0;h<f.length;h++){var w=f[h];(w.nodeName==="LINK"||w.getAttribute("media")!=="not all")&&(r.set(w.dataset.precedence,w),l=w)}l&&r.set(null,l)}f=n.instance,w=f.getAttribute("data-precedence"),h=r.get(w)||l,h===l&&r.set(null,f),r.set(w,f),this.count++,l=Wl.bind(this),f.addEventListener("load",l),f.addEventListener("error",l),h?h.parentNode.insertBefore(f,h.nextSibling):(t=t.nodeType===9?t.head:t,t.insertBefore(f,t.firstChild)),n.state.loading|=4}}var Ps={$$typeof:ne,Provider:null,Consumer:null,_currentValue:Dt,_currentValue2:Dt,_threadCount:0};function PN(t,n,r,l,f,h,w,E,z){this.tag=1,this.containerInfo=t,this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.next=this.pendingContext=this.context=this.cancelPendingCommit=null,this.callbackPriority=0,this.expirationTimes=Da(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Da(0),this.hiddenUpdates=Da(null),this.identifierPrefix=l,this.onUncaughtError=f,this.onCaughtError=h,this.onRecoverableError=w,this.pooledCache=null,this.pooledCacheLanes=0,this.formState=z,this.transitionTypes=null,this.incompleteTransitions=new Map}function e1(t,n,r,l,f,h,w,E,z,K,W,le){return t=new PN(t,n,r,w,z,K,W,le,E),n=1,h===!0&&(n|=24),h=qn(3,null,null,n),t.current=h,h.stateNode=t,n=Gd(),n.refCount++,t.pooledCache=n,n.refCount++,h.memoizedState={element:l,isDehydrated:r,cache:n},Xd(h),t}function t1(t){return t?(t=hs,t):hs}function n1(t,n,r,l,f,h){f=t1(f),l.context===null?l.context=f:l.pendingContext=f,l=qa(n),l.payload={element:r},h=h===void 0?null:h,h!==null&&(l.callback=h),r=Ga(t,l,n),r!==null&&(Vn(r,t,n),Ol(r,t,n))}function i1(t,n){if(t=t.memoizedState,t!==null&&t.dehydrated!==null){var r=t.retryLane;t.retryLane=r!==0&&r<n?r:n}}function jp(t,n){i1(t,n),(t=t.alternate)&&i1(t,n)}function a1(t){if(t.tag===13||t.tag===31){var n=wr(t,67108864);n!==null&&Vn(n,t,67108864),jp(t,67108864)}}function r1(t){if(t.tag===13||t.tag===31){var n=ii();n=is(n);var r=wr(t,n);r!==null&&Vn(r,t,n),jp(t,n)}}var Fs=!0;function FN(t,n,r,l){var f=ge.T;ge.T=null;var h=ke.p;try{ke.p=2,Rp(t,n,r,l)}finally{ke.p=h,ge.T=f}}function qN(t,n,r,l){var f=ge.T;ge.T=null;var h=ke.p;try{ke.p=8,Rp(t,n,r,l)}finally{ke.p=h,ge.T=f}}function Rp(t,n,r,l){if(Fs){var f=Dp(l);if(f===null)hp(t,n,l,tu,r),l1(t,l);else if(YN(f,t,n,r,l))l.stopPropagation();else if(l1(t,l),n&4&&-1<GN.indexOf(t)){for(;f!==null;){var h=ra(f);if(h!==null)switch(h.tag){case 3:if(h=h.stateNode,h.current.memoizedState.isDehydrated){var w=ia(h.pendingLanes);if(w!==0){var E=h;for(E.pendingLanes|=2,E.entangledLanes|=2;w;){var z=1<<31-Ne(w);E.entanglements[1]|=z,w&=~z}Ki(h),(bt&6)===0&&($c=Kt()+500,Yl(0))}}break;case 31:case 13:E=wr(h,2),E!==null&&Vn(E,h,2),Fc(),jp(h,2)}if(h=Dp(l),h===null&&hp(t,n,l,tu,r),h===f)break;f=h}f!==null&&l.stopPropagation()}else hp(t,n,l,null,r)}}function Dp(t){return t=xd(t),zp(t)}var tu=null;function zp(t){if(tu=null,t=fn(t),t!==null){var n=u(t);if(n===null)t=null;else{var r=n.tag;if(r===13){if(t=d(n),t!==null)return t;t=null}else if(r===31){if(t=p(n),t!==null)return t;t=null}else if(r===3){if(n.stateNode.current.memoizedState.isDehydrated)return n.tag===3?n.stateNode.containerInfo:null;t=null}else n!==t&&(t=null)}}return tu=t,null}function s1(t){switch(t){case"beforetoggle":case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"seeked":case"submit":case"toggle":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"fullscreenerror":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 2;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"resize":case"scroll":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 8;case"message":switch(un()){case wi:return 2;case Rn:return 8;case ki:case B:return 32;case ce:return 268435456;default:return 32}default:return 32}}var Lp=!1,ir=null,ar=null,rr=null,eo=new Map,to=new Map,sr=[],GN="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset".split(" ");function l1(t,n){switch(t){case"focusin":case"focusout":ir=null;break;case"dragenter":case"dragleave":ar=null;break;case"mouseover":case"mouseout":rr=null;break;case"pointerover":case"pointerout":eo.delete(n.pointerId);break;case"gotpointercapture":case"lostpointercapture":to.delete(n.pointerId)}}function no(t,n,r,l,f,h){return t===null||t.nativeEvent!==h?(t={blockedOn:n,domEventName:r,eventSystemFlags:l,nativeEvent:h,targetContainers:[f]},n!==null&&(n=ra(n),n!==null&&a1(n)),t):(t.eventSystemFlags|=l,n=t.targetContainers,f!==null&&n.indexOf(f)===-1&&n.push(f),t)}function YN(t,n,r,l,f){switch(n){case"focusin":return ir=no(ir,t,n,r,l,f),!0;case"dragenter":return ar=no(ar,t,n,r,l,f),!0;case"mouseover":return rr=no(rr,t,n,r,l,f),!0;case"pointerover":var h=f.pointerId;return eo.set(h,no(eo.get(h)||null,t,n,r,l,f)),!0;case"gotpointercapture":return h=f.pointerId,to.set(h,no(to.get(h)||null,t,n,r,l,f)),!0}return!1}function o1(t){var n=fn(t.target);if(n!==null){var r=u(n);if(r!==null){if(n=r.tag,n===13){if(n=d(r),n!==null){t.blockedOn=n,Io(t.priority,function(){r1(r)});return}}else if(n===31){if(n=p(r),n!==null){t.blockedOn=n,Io(t.priority,function(){r1(r)});return}}else if(n===3&&r.stateNode.current.memoizedState.isDehydrated){t.blockedOn=r.tag===3?r.stateNode.containerInfo:null;return}}}t.blockedOn=null}function nu(t){if(t.blockedOn!==null)return!1;for(var n=t.targetContainers;0<n.length;){var r=Dp(t.nativeEvent);if(r===null){r=t.nativeEvent;var l=new r.constructor(r.type,r);bd=l,r.target.dispatchEvent(l),bd=null}else return n=ra(r),n!==null&&a1(n),t.blockedOn=r,!1;n.shift()}return!0}function c1(t,n,r){nu(t)&&r.delete(n)}function KN(){Lp=!1,ir!==null&&nu(ir)&&(ir=null),ar!==null&&nu(ar)&&(ar=null),rr!==null&&nu(rr)&&(rr=null),eo.forEach(c1),to.forEach(c1)}function iu(t,n){t.blockedOn===n&&(t.blockedOn=null,Lp||(Lp=!0,e.unstable_scheduleCallback(e.unstable_NormalPriority,KN)))}var au=null;function u1(t){au!==t&&(au=t,e.unstable_scheduleCallback(e.unstable_NormalPriority,function(){au===t&&(au=null);for(var n=0;n<t.length;n+=3){var r=t[n],l=t[n+1],f=t[n+2];if(typeof l!="function"){if(zp(l||r)===null)continue;break}var h=ra(r);h!==null&&(t.splice(n,3),n-=3,bf(h,{pending:!0,data:f,method:r.method,action:l},l,f))}}))}function qs(t){function n(z){return iu(z,t)}ir!==null&&iu(ir,t),ar!==null&&iu(ar,t),rr!==null&&iu(rr,t),eo.forEach(n),to.forEach(n);for(var r=0;r<sr.length;r++){var l=sr[r];l.blockedOn===t&&(l.blockedOn=null)}for(;0<sr.length&&(r=sr[0],r.blockedOn===null);)o1(r),r.blockedOn===null&&sr.shift();if(r=(t.ownerDocument||t).$$reactFormReplay,r!=null)for(l=0;l<r.length;l+=3){var f=r[l],h=r[l+1],w=f[me]||null;if(typeof h=="function")w||u1(r);else if(w){var E=null;if(h&&h.hasAttribute("formAction")){if(f=h,w=h[me]||null)E=w.formAction;else if(zp(f)!==null)continue}else E=w.action;typeof E=="function"?r[l+1]=E:(r.splice(l,3),l-=3),u1(r)}}}function d1(){function t(h){h.canIntercept&&h.info==="react-transition"&&h.intercept({handler:function(){return new Promise(function(w){return f=w})},focusReset:"manual",scroll:"manual"})}function n(){f!==null&&(f(),f=null),l||setTimeout(r,20)}function r(){if(!l&&!navigation.transition){var h=navigation.currentEntry;h&&h.url!=null&&navigation.navigate(h.url,{state:h.getState(),info:"react-transition",history:"replace"})}}if(typeof navigation=="object"){var l=!1,f=null;return navigation.addEventListener("navigate",t),navigation.addEventListener("navigatesuccess",n),navigation.addEventListener("navigateerror",n),setTimeout(r,100),function(){l=!0,navigation.removeEventListener("navigate",t),navigation.removeEventListener("navigatesuccess",n),navigation.removeEventListener("navigateerror",n),f!==null&&(f(),f=null)}}}function Ip(t){this._internalRoot=t}ru.prototype.render=Ip.prototype.render=function(t){var n=this._internalRoot;if(n===null)throw Error(s(409));var r=n.current,l=ii();n1(r,l,t,n,null,null)},ru.prototype.unmount=Ip.prototype.unmount=function(){var t=this._internalRoot;if(t!==null){this._internalRoot=null;var n=t.containerInfo;n1(t.current,2,null,t,null,null),Fc(),n[De]=null}};function ru(t){this._internalRoot=t}ru.prototype.unstable_scheduleHydration=function(t){if(t){var n=Lo();t={blockedOn:null,target:t,priority:n};for(var r=0;r<sr.length&&n!==0&&n<sr[r].priority;r++);sr.splice(r,0,t),r===0&&o1(t)}};var f1=i.version;if(f1!=="19.3.1")throw Error(s(527,f1,"19.3.1"));ke.findDOMNode=function(t){var n=t._reactInternals;if(n===void 0)throw typeof t.render=="function"?Error(s(188)):(t=Object.keys(t).join(","),Error(s(268,t)));return t=g(n),t=t!==null?x(t):null,t=t===null?null:t.stateNode,t};var VN={bundleType:0,version:"19.3.1",rendererPackageName:"react-dom",currentDispatcherRef:ge,reconcilerVersion:"19.3.1"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var su=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!su.isDisabled&&su.supportsFiber)try{Ot=su.inject(VN),ot=su}catch{}}return ao.createRoot=function(t,n){if(!o(t))throw Error(s(299));var r=!1,l="",f=tx,h=nx,w=ix;return n!=null&&(n.unstable_strictMode===!0&&(r=!0),n.identifierPrefix!==void 0&&(l=n.identifierPrefix),n.onUncaughtError!==void 0&&(f=n.onUncaughtError),n.onCaughtError!==void 0&&(h=n.onCaughtError),n.onRecoverableError!==void 0&&(w=n.onRecoverableError)),n=e1(t,1,!1,null,null,r,l,null,f,h,w,d1),t[De]=n.current,pp(t),new Ip(n)},ao.hydrateRoot=function(t,n,r){if(!o(t))throw Error(s(299));var l=!1,f="",h=tx,w=nx,E=ix,z=null;return r!=null&&(r.unstable_strictMode===!0&&(l=!0),r.identifierPrefix!==void 0&&(f=r.identifierPrefix),r.onUncaughtError!==void 0&&(h=r.onUncaughtError),r.onCaughtError!==void 0&&(w=r.onCaughtError),r.onRecoverableError!==void 0&&(E=r.onRecoverableError),r.formState!==void 0&&(z=r.formState)),n=e1(t,1,!0,n,r??null,l,f,z,h,w,E,d1),n.context=t1(null),r=n.current,l=ii(),l=is(l),f=qa(l),f.callback=null,Ga(r,f,l),r=l,n.current.lanes=r,xr(n,r),Ki(n),t[De]=n.current,pp(t),new ru(n)},ao.version="19.3.1",ao}var k1;function iS(){if(k1)return Hp.exports;k1=1;function e(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(i){console.error(i)}}return e(),Hp.exports=nS(),Hp.exports}var aS=iS();const rS=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),sS=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(i,a,s)=>s?s.toUpperCase():a.toLowerCase()),E1=e=>{const i=sS(e);return i.charAt(0).toUpperCase()+i.slice(1)},uv=(...e)=>e.filter((i,a,s)=>!!i&&i.trim()!==""&&s.indexOf(i)===a).join(" ").trim(),lS=e=>{for(const i in e)if(i.startsWith("aria-")||i==="role"||i==="title")return!0};var oS={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};const cS=q.forwardRef(({color:e="currentColor",size:i=24,strokeWidth:a=2,absoluteStrokeWidth:s,className:o="",children:u,iconNode:d,...p},m)=>q.createElement("svg",{ref:m,...oS,width:i,height:i,stroke:e,strokeWidth:s?Number(a)*24/Number(i):a,className:uv("lucide",o),...!u&&!lS(p)&&{"aria-hidden":"true"},...p},[...d.map(([g,x])=>q.createElement(g,x)),...Array.isArray(u)?u:[u]]));const ve=(e,i)=>{const a=q.forwardRef(({className:s,...o},u)=>q.createElement(cS,{ref:u,iconNode:i,className:uv(`lucide-${rS(E1(e))}`,`lucide-${e}`,s),...o}));return a.displayName=E1(e),a};const uS=[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]],dS=ve("activity",uS);const fS=[["path",{d:"M12 17V3",key:"1cwfxf"}],["path",{d:"m6 11 6 6 6-6",key:"12ii2o"}],["path",{d:"M19 21H5",key:"150jfl"}]],dv=ve("arrow-down-to-line",fS);const pS=[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]],hS=ve("arrow-left",pS);const mS=[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]],bm=ve("arrow-right",mS);const gS=[["path",{d:"M7 7h10v10",key:"1tivn9"}],["path",{d:"M7 17 17 7",key:"1vkiza"}]],bS=ve("arrow-up-right",gS);const xS=[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]],yS=ve("arrow-up",xS);const vS=[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]],wS=ve("bot",vS);const kS=[["path",{d:"M12 18V5",key:"adv99a"}],["path",{d:"M15 13a4.17 4.17 0 0 1-3-4 4.17 4.17 0 0 1-3 4",key:"1e3is1"}],["path",{d:"M17.598 6.5A3 3 0 1 0 12 5a3 3 0 1 0-5.598 1.5",key:"1gqd8o"}],["path",{d:"M17.997 5.125a4 4 0 0 1 2.526 5.77",key:"iwvgf7"}],["path",{d:"M18 18a4 4 0 0 0 2-7.464",key:"efp6ie"}],["path",{d:"M19.967 17.483A4 4 0 1 1 12 18a4 4 0 1 1-7.967-.517",key:"1gq6am"}],["path",{d:"M6 18a4 4 0 0 1-2-7.464",key:"k1g0md"}],["path",{d:"M6.003 5.125a4 4 0 0 0-2.526 5.77",key:"q97ue3"}]],Ah=ve("brain",kS);const ES=[["path",{d:"M12 20v-9",key:"1qisl0"}],["path",{d:"M14 7a4 4 0 0 1 4 4v3a6 6 0 0 1-12 0v-3a4 4 0 0 1 4-4z",key:"uouzyp"}],["path",{d:"M14.12 3.88 16 2",key:"qol33r"}],["path",{d:"M21 21a4 4 0 0 0-3.81-4",key:"1b0z45"}],["path",{d:"M21 5a4 4 0 0 1-3.55 3.97",key:"5cxbf6"}],["path",{d:"M22 13h-4",key:"1jl80f"}],["path",{d:"M3 21a4 4 0 0 1 3.81-4",key:"1fjd4g"}],["path",{d:"M3 5a4 4 0 0 0 3.55 3.97",key:"1d7oge"}],["path",{d:"M6 13H2",key:"82j7cp"}],["path",{d:"m8 2 1.88 1.88",key:"fmnt4t"}],["path",{d:"M9 7.13V6a3 3 0 1 1 6 0v1.13",key:"1vgav8"}]],_S=ve("bug",ES);const NS=[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}],["path",{d:"M8 14h.01",key:"6423bh"}],["path",{d:"M12 14h.01",key:"1etili"}],["path",{d:"M16 14h.01",key:"1gbofw"}],["path",{d:"M8 18h.01",key:"lrp35t"}],["path",{d:"M12 18h.01",key:"mhygvu"}],["path",{d:"M16 18h.01",key:"kzsmim"}]],SS=ve("calendar-days",NS);const TS=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],Sn=ve("check",TS);const CS=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],Gr=ve("chevron-down",CS);const AS=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],fv=ve("chevron-right",AS);const OS=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]],Fu=ve("circle-alert",OS);const MS=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]],jS=ve("circle-check",MS);const RS=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]],DS=ve("circle-x",RS);const zS=[["path",{d:"M12 6v6h4",key:"135r8i"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],LS=ve("clock-3",zS);const IS=[["path",{d:"M17.5 19H9a7 7 0 1 1 6.71-9h1.79a4.5 4.5 0 1 1 0 9Z",key:"p7xjir"}]],Oh=ve("cloud",IS);const US=[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]],qu=ve("copy",US);const BS=[["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M17 20v2",key:"1rnc9c"}],["path",{d:"M17 2v2",key:"11trls"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M2 17h2",key:"7oei6x"}],["path",{d:"M2 7h2",key:"asdhe0"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"M20 17h2",key:"1fpfkl"}],["path",{d:"M20 7h2",key:"1o8tra"}],["path",{d:"M7 20v2",key:"4gnj0m"}],["path",{d:"M7 2v2",key:"1i4yhu"}],["rect",{x:"4",y:"4",width:"16",height:"16",rx:"2",key:"1vbyd7"}],["rect",{x:"8",y:"8",width:"8",height:"8",rx:"1",key:"z9xiuo"}]],Yr=ve("cpu",BS);const $S=[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]],pv=ve("download",$S);const HS=[["path",{d:"M21.54 15H17a2 2 0 0 0-2 2v4.54",key:"1djwo0"}],["path",{d:"M7 3.34V5a3 3 0 0 0 3 3a2 2 0 0 1 2 2c0 1.1.9 2 2 2a2 2 0 0 0 2-2c0-1.1.9-2 2-2h3.17",key:"1tzkfa"}],["path",{d:"M11 21.95V18a2 2 0 0 0-2-2a2 2 0 0 1-2-2v-1a2 2 0 0 0-2-2H2.05",key:"14pb5j"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],Jr=ve("earth",HS);const PS=[["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}],["circle",{cx:"19",cy:"12",r:"1",key:"1wjl8i"}],["circle",{cx:"5",cy:"12",r:"1",key:"1pcz8c"}]],FS=ve("ellipsis",PS);const qS=[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]],hv=ve("external-link",qS);const GS=[["path",{d:"M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49",key:"ct8e1f"}],["path",{d:"M14.084 14.158a3 3 0 0 1-4.242-4.242",key:"151rxh"}],["path",{d:"M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143",key:"13bj9a"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]],YS=ve("eye-off",GS);const KS=[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]],mv=ve("eye",KS);const VS=[["path",{d:"m18 5-2.414-2.414A2 2 0 0 0 14.172 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2",key:"142zxg"}],["path",{d:"M21.378 12.626a1 1 0 0 0-3.004-3.004l-4.01 4.012a2 2 0 0 0-.506.854l-.837 2.87a.5.5 0 0 0 .62.62l2.87-.837a2 2 0 0 0 .854-.506z",key:"2t3380"}],["path",{d:"M8 18h1",key:"13wk12"}]],Mh=ve("file-pen-line",VS);const XS=[["path",{d:"M4 22h14a2 2 0 0 0 2-2V7l-5-5H6a2 2 0 0 0-2 2v4",key:"1pf5j1"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M3 15h6",key:"4e2qda"}],["path",{d:"M6 12v6",key:"1u72j0"}]],gv=ve("file-plus-2",XS);const ZS=[["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M4.268 21a2 2 0 0 0 1.727 1H18a2 2 0 0 0 2-2V7l-5-5H6a2 2 0 0 0-2 2v3",key:"ms7g94"}],["path",{d:"m9 18-1.5-1.5",key:"1j6qii"}],["circle",{cx:"5",cy:"14",r:"3",key:"ufru5t"}]],QS=ve("file-search",ZS);const JS=[["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z",key:"1rqfz7"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]],Na=ve("file-text",JS);const WS=[["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z",key:"1rqfz7"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M12 12v6",key:"3ahymv"}],["path",{d:"m15 15-3-3-3 3",key:"15xj92"}]],e2=ve("file-up",WS);const t2=[["path",{d:"M14 2v6a2 2 0 0 0 .245.96l5.51 10.08A2 2 0 0 1 18 22H6a2 2 0 0 1-1.755-2.96l5.51-10.08A2 2 0 0 0 10 8V2",key:"18mbvz"}],["path",{d:"M6.453 15h11.094",key:"3shlmq"}],["path",{d:"M8.5 2h7",key:"csnxdl"}]],n2=ve("flask-conical",t2);const i2=[["path",{d:"m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2",key:"usdka0"}]],Kr=ve("folder-open",i2);const a2=[["path",{d:"M12 10v6",key:"1bos4e"}],["path",{d:"M9 13h6",key:"1uhe8q"}],["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]],r2=ve("folder-plus",a2);const s2=[["path",{d:"M10.7 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v4.1",key:"1bw5m7"}],["path",{d:"m21 21-1.9-1.9",key:"1g2n9r"}],["circle",{cx:"17",cy:"17",r:"3",key:"18b49y"}]],l2=ve("folder-search",s2);const o2=[["path",{d:"M20 10a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1h-2.5a1 1 0 0 1-.8-.4l-.9-1.2A1 1 0 0 0 15 3h-2a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1Z",key:"hod4my"}],["path",{d:"M20 21a1 1 0 0 0 1-1v-3a1 1 0 0 0-1-1h-2.9a1 1 0 0 1-.88-.55l-.42-.85a1 1 0 0 0-.92-.6H13a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1Z",key:"w4yl2u"}],["path",{d:"M3 5a2 2 0 0 0 2 2h3",key:"f2jnh7"}],["path",{d:"M3 3v13a2 2 0 0 0 2 2h3",key:"k8epm1"}]],bv=ve("folder-tree",o2);const c2=[["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]],el=ve("folder",c2);const u2=[["line",{x1:"6",x2:"10",y1:"11",y2:"11",key:"1gktln"}],["line",{x1:"8",x2:"8",y1:"9",y2:"13",key:"qnk9ow"}],["line",{x1:"15",x2:"15.01",y1:"12",y2:"12",key:"krot7o"}],["line",{x1:"18",x2:"18.01",y1:"10",y2:"10",key:"1lcuu1"}],["path",{d:"M17.32 5H6.68a4 4 0 0 0-3.978 3.59c-.006.052-.01.101-.017.152C2.604 9.416 2 14.456 2 16a3 3 0 0 0 3 3c1 0 1.5-.5 2-1l1.414-1.414A2 2 0 0 1 9.828 16h4.344a2 2 0 0 1 1.414.586L17 18c.5.5 1 1 2 1a3 3 0 0 0 3-3c0-1.545-.604-6.584-.685-7.258-.007-.05-.011-.1-.017-.151A4 4 0 0 0 17.32 5z",key:"mfqc10"}]],d2=ve("gamepad-2",u2);const f2=[["line",{x1:"6",x2:"6",y1:"3",y2:"15",key:"17qcm7"}],["circle",{cx:"18",cy:"6",r:"3",key:"1h7g24"}],["circle",{cx:"6",cy:"18",r:"3",key:"fqmcym"}],["path",{d:"M18 9a9 9 0 0 1-9 9",key:"n2h4wq"}]],xv=ve("git-branch",f2);const p2=[["path",{d:"m15 12-9.373 9.373a1 1 0 0 1-3.001-3L12 9",key:"1hayfq"}],["path",{d:"m18 15 4-4",key:"16gjal"}],["path",{d:"m21.5 11.5-1.914-1.914A2 2 0 0 1 19 8.172v-.344a2 2 0 0 0-.586-1.414l-1.657-1.657A6 6 0 0 0 12.516 3H9l1.243 1.243A6 6 0 0 1 12 8.485V10l2 2h1.172a2 2 0 0 1 1.414.586L18.5 14.5",key:"15ts47"}]],h2=ve("hammer",p2);const m2=[["line",{x1:"22",x2:"2",y1:"12",y2:"12",key:"1y58io"}],["path",{d:"M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z",key:"oot6mr"}],["line",{x1:"6",x2:"6.01",y1:"16",y2:"16",key:"sgf278"}],["line",{x1:"10",x2:"10.01",y1:"16",y2:"16",key:"1l4acy"}]],Gu=ve("hard-drive",m2);const g2=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]],xm=ve("info",g2);const b2=[["path",{d:"M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z",key:"1s6t7t"}],["circle",{cx:"16.5",cy:"7.5",r:".5",fill:"currentColor",key:"w0ekpg"}]],jh=ve("key-round",b2);const x2=[["rect",{width:"18",height:"7",x:"3",y:"3",rx:"1",key:"f1a2em"}],["rect",{width:"9",height:"7",x:"3",y:"14",rx:"1",key:"jqznyg"}],["rect",{width:"5",height:"7",x:"16",y:"14",rx:"1",key:"q5h2i8"}]],y2=ve("layout-template",x2);const v2=[["path",{d:"M9 17H7A5 5 0 0 1 7 7h2",key:"8i5ue5"}],["path",{d:"M15 7h2a5 5 0 1 1 0 10h-2",key:"1b9ql8"}],["line",{x1:"8",x2:"16",y1:"12",y2:"12",key:"1jonct"}]],w2=ve("link-2",v2);const k2=[["path",{d:"M13 5h8",key:"a7qcls"}],["path",{d:"M13 12h8",key:"h98zly"}],["path",{d:"M13 19h8",key:"c3s6r1"}],["path",{d:"m3 17 2 2 4-4",key:"1jhpwq"}],["path",{d:"m3 7 2 2 4-4",key:"1obspn"}]],ym=ve("list-checks",k2);const E2=[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]],vm=ve("loader-circle",E2);const _2=[["circle",{cx:"12",cy:"16",r:"1",key:"1au0dj"}],["rect",{x:"3",y:"10",width:"18",height:"12",rx:"2",key:"6s8ecr"}],["path",{d:"M7 10V7a5 5 0 0 1 10 0v3",key:"1pqi11"}]],Yu=ve("lock-keyhole",_2);const N2=[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"m21 3-7 7",key:"1l2asr"}],["path",{d:"m3 21 7-7",key:"tjx5ai"}],["path",{d:"M9 21H3v-6",key:"wtvkvv"}]],S2=ve("maximize-2",N2);const T2=[["path",{d:"M4 5h16",key:"1tepv9"}],["path",{d:"M4 12h16",key:"1lakjw"}],["path",{d:"M4 19h16",key:"1djgab"}]],C2=ve("menu",T2);const A2=[["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",key:"18887p"}]],yv=ve("message-square",A2);const O2=[["rect",{width:"20",height:"14",x:"2",y:"3",rx:"2",key:"48i651"}],["line",{x1:"8",x2:"16",y1:"21",y2:"21",key:"1svkeh"}],["line",{x1:"12",x2:"12",y1:"17",y2:"21",key:"vw1qmm"}]],wm=ve("monitor",O2);const M2=[["path",{d:"M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401",key:"kfwtm"}]],km=ve("moon",M2);const j2=[["path",{d:"M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z",key:"1a0edw"}],["path",{d:"M12 22V12",key:"d0xqtd"}],["polyline",{points:"3.29 7 12 12 20.71 7",key:"ousv84"}],["path",{d:"m7.5 4.27 9 5.15",key:"1c824w"}]],Em=ve("package",j2);const R2=[["path",{d:"M12 22a1 1 0 0 1 0-20 10 9 0 0 1 10 9 5 5 0 0 1-5 5h-2.25a1.75 1.75 0 0 0-1.4 2.8l.3.4a1.75 1.75 0 0 1-1.4 2.8z",key:"e79jfc"}],["circle",{cx:"13.5",cy:"6.5",r:".5",fill:"currentColor",key:"1okk4w"}],["circle",{cx:"17.5",cy:"10.5",r:".5",fill:"currentColor",key:"f64h9f"}],["circle",{cx:"6.5",cy:"12.5",r:".5",fill:"currentColor",key:"qy21gx"}],["circle",{cx:"8.5",cy:"7.5",r:".5",fill:"currentColor",key:"fotxhn"}]],vv=ve("palette",R2);const D2=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}],["path",{d:"m16 15-3-3 3-3",key:"14y99z"}]],z2=ve("panel-left-close",D2);const L2=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}],["path",{d:"m14 9 3 3-3 3",key:"8010ee"}]],I2=ve("panel-left-open",L2);const U2=[["path",{d:"m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551",key:"1miecu"}]],B2=ve("paperclip",U2);const $2=[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]],_m=ve("pencil",$2);const H2=[["path",{d:"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",key:"10ikf1"}]],P2=ve("play",H2);const F2=[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]],wo=ve("plus",F2);const q2=[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]],Wi=ve("refresh-cw",q2);const G2=[["path",{d:"M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09z",key:"m3kijz"}],["path",{d:"m12 15-3-3a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.35 22.35 0 0 1-4 2z",key:"1fmvmk"}],["path",{d:"M9 12H4s.55-3.03 2-4c1.62-1.08 5 0 5 0",key:"1f8sc4"}],["path",{d:"M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5",key:"qeys4"}]],pr=ve("rocket",G2);const Y2=[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]],wv=ve("rotate-ccw",Y2);const K2=[["path",{d:"M21 12a9 9 0 1 1-9-9c2.52 0 4.93 1 6.74 2.74L21 8",key:"1p45f6"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}]],kv=ve("rotate-cw",K2);const V2=[["path",{d:"M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z",key:"1c8476"}],["path",{d:"M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7",key:"1ydtos"}],["path",{d:"M7 3v4a1 1 0 0 0 1 1h7",key:"t51u73"}]],X2=ve("save",V2);const Z2=[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]],ll=ve("search",Z2);const Q2=[["path",{d:"M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915",key:"1i5ecw"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]],Ev=ve("settings",Q2);const J2=[["path",{d:"M14 17H5",key:"gfn3mx"}],["path",{d:"M19 7h-9",key:"6i9tg"}],["circle",{cx:"17",cy:"17",r:"3",key:"18b49y"}],["circle",{cx:"7",cy:"7",r:"3",key:"dfmy0x"}]],_v=ve("settings-2",J2);const W2=[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"M12 8v4",key:"1got3b"}],["path",{d:"M12 16h.01",key:"1drbdi"}]],eT=ve("shield-alert",W2);const tT=[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]],Vr=ve("shield-check",tT);const nT=[["path",{d:"M22 2 2 22",key:"y4kqgn"}]],iT=ve("slash",nT);const aT=[["path",{d:"M10 5H3",key:"1qgfaw"}],["path",{d:"M12 19H3",key:"yhmn1j"}],["path",{d:"M14 3v4",key:"1sua03"}],["path",{d:"M16 17v4",key:"1q0r14"}],["path",{d:"M21 12h-9",key:"1o4lsq"}],["path",{d:"M21 19h-5",key:"1rlt1p"}],["path",{d:"M21 5h-7",key:"1oszz2"}],["path",{d:"M8 10v4",key:"tgpxqk"}],["path",{d:"M8 12H3",key:"a7s4jb"}]],Nv=ve("sliders-horizontal",aT);const rT=[["rect",{width:"14",height:"20",x:"5",y:"2",rx:"2",ry:"2",key:"1yt0o3"}],["path",{d:"M12 18h.01",key:"mhygvu"}]],sT=ve("smartphone",rT);const lT=[["path",{d:"M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z",key:"1s2grr"}],["path",{d:"M20 2v4",key:"1rf3ol"}],["path",{d:"M22 4h-4",key:"gwowj6"}],["circle",{cx:"4",cy:"20",r:"2",key:"6kqj1y"}]],hr=ve("sparkles",lT);const oT=[["path",{d:"m7 11 2-2-2-2",key:"1lz0vl"}],["path",{d:"M11 13h4",key:"1p7l4v"}],["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}]],Sv=ve("square-terminal",oT);const cT=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]],Nm=ve("square",cT);const uT=[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"m4.93 4.93 1.41 1.41",key:"149t6j"}],["path",{d:"m17.66 17.66 1.41 1.41",key:"ptbguv"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"m6.34 17.66-1.41 1.41",key:"1m8zz5"}],["path",{d:"m19.07 4.93-1.41 1.41",key:"1shlcs"}]],Sm=ve("sun",uT);const dT=[["rect",{width:"16",height:"20",x:"4",y:"2",rx:"2",ry:"2",key:"76otgf"}],["line",{x1:"12",x2:"12.01",y1:"18",y2:"18",key:"1dp563"}]],fT=ve("tablet",dT);const pT=[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]],Tv=ve("terminal",pT);const hT=[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]],Xr=ve("trash-2",hT);const mT=[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]],gT=ve("triangle-alert",mT);const bT=[["path",{d:"M13.73 4a2 2 0 0 0-3.46 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3Z",key:"14u9p9"}]],xT=ve("triangle",bT);const yT=[["path",{d:"M12 3v12",key:"1x0j5s"}],["path",{d:"m17 8-5-5-5 5",key:"7q97r8"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}]],Tm=ve("upload",yT);const vT=[["circle",{cx:"12",cy:"8",r:"5",key:"1hypcn"}],["path",{d:"M20 21a8 8 0 0 0-16 0",key:"rfgkzh"}]],wT=ve("user-round",vT);const kT=[["path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z",key:"1ngwbx"}]],Su=ve("wrench",kT);const ET=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],Ta=ve("x",ET),_1=e=>{let i;const a=new Set,s=(g,x)=>{const b=typeof g=="function"?g(i):g;if(!Object.is(b,i)){const v=i;i=x??(typeof b!="object"||b===null)?b:Object.assign({},i,b),a.forEach(y=>y(i,v))}},o=()=>i,p={setState:s,getState:o,getInitialState:()=>m,subscribe:g=>(a.add(g),()=>a.delete(g))},m=i=e(s,o,p);return p},_T=(e=>e?_1(e):_1),NT=e=>e;function ST(e,i=NT){const a=$p.useSyncExternalStore(e.subscribe,$p.useCallback(()=>i(e.getState()),[e,i]),()=>i(e.getInitialState()));return $p.useDebugValue(a),a}const TT=e=>{const i=_T(e),a=s=>ST(i,s);return Object.assign(a,i),a},Wr=(e=>TT);class Zr extends Error{status;code;constructor(i,a=0,s="daemon_error"){super(i),this.name="DaemonError",this.status=a,this.code=s}}let So="",ro=null;function CT(){return So}async function Ku(e){const i=await e.text().catch(()=>"");if(i)try{const a=JSON.parse(i);if(a.error?.message)return new Zr(a.error.message,a.error.status??e.status,a.error.code??"daemon_error")}catch{}return new Zr(i.trim().slice(0,400)||`The local daemon returned ${e.status}.`,e.status,"daemon_error")}async function al(e=!1){return ro&&!e||(ro=(async()=>{let i;try{i=await fetch("/api/session",{method:"POST",headers:{"Content-Type":"application/json"},credentials:"same-origin"})}catch{throw new Zr("OpenSol’s local daemon is not reachable. Start it with “npm start” in the OpenSol folder, then reload this page.",0,"daemon_unreachable")}if(!i.ok)throw await Ku(i);const a=await i.json();So=typeof a.csrf=="string"?a.csrf:""})().catch(i=>{throw ro=null,i})),ro}async function dt(e,i={},a=!0){await al();const s=(i.method??"GET").toUpperCase(),o=new Headers(i.headers);i.body&&!o.has("Content-Type")&&o.set("Content-Type","application/json"),["GET","HEAD"].includes(s)||o.set("x-maxcode-csrf",So);let u;try{u=await fetch(e,{...i,method:s,headers:o,credentials:"same-origin"})}catch{throw new Zr("Lost the connection to the local daemon. Check that it is still running.",0,"daemon_unreachable")}if(u.status===401&&a)return await al(!0),dt(e,i,!1);if(!u.ok)throw await Ku(u);return u.status===204?void 0:(u.headers.get("content-type")??"").includes("application/json")?await u.json():await u.text()}function Vu(e){return{method:"POST",body:JSON.stringify(e)}}function AT(){return dt("/api/state")}function Cv(){return dt("/api/plugins")}function OT(e){const i=atob(e),a=new Uint8Array(i.length);for(let s=0;s<i.length;s+=1)a[s]=i.charCodeAt(s);return a}async function Av(e){const i=await dt(`/api/plugins/${encodeURIComponent(e)}/package`);return OT(i.archive)}function MT(e){let i="";for(let a=0;a<e.length;a+=32768)i+=String.fromCharCode(...e.subarray(a,a+32768));return btoa(i)}function Ov(e){return dt("/api/plugins",{method:"POST",body:JSON.stringify({archive:MT(e)})})}function jT(e,i){return dt(`/api/plugins/${encodeURIComponent(e)}/grants`,{method:"PUT",body:JSON.stringify(i)})}function N1(e,i){return dt(`/api/plugins/${encodeURIComponent(e)}/safe`,{method:"PUT",body:JSON.stringify({safe:i})})}function RT(e,i){return dt(`/api/plugins/${encodeURIComponent(e)}/enabled`,{method:"PUT",body:JSON.stringify({enabled:i})})}function DT(e){return dt(`/api/plugins/${encodeURIComponent(e)}`,{method:"DELETE"})}function zT(e,i){return dt(`/api/plugins/${encodeURIComponent(e)}/network`,{method:"POST",body:JSON.stringify(i)})}function LT(e){return dt("/api/settings",{method:"PATCH",body:JSON.stringify(e)})}function Mv(e){return dt("/api/chats",{method:"PUT",body:JSON.stringify(e)})}function IT(e){return dt("/api/migrate",Vu(e))}function UT(){return dt("/api/providers")}function BT(e){return dt(`/api/models?provider=${encodeURIComponent(e)}`)}function $T(e,i){return i?dt(`/api/providers/${e}/key`,{method:"PUT",body:JSON.stringify({apiKey:i})}):dt(`/api/providers/${e}/key`,{method:"DELETE"})}function HT(e){return dt("/api/search/key",{method:"PUT",body:JSON.stringify({apiKey:e})})}function PT(e,i){return dt(`/api/deploy/credentials/${e}`,{method:"PUT",body:JSON.stringify(i)})}function FT(e){return dt("/api/reset",Vu({scope:e}))}function qT(e){return dt("/api/workspaces",Vu({path:e}))}function GT(){return dt("/api/workspaces",{method:"DELETE"})}function YT(e){return dt(`/api/workspaces/browse?path=${encodeURIComponent(e)}`)}function jv(e="",i=6){return dt(`/api/workspace/tree?depth=${i}&path=${encodeURIComponent(e)}`)}function Rh(e){return dt(`/api/workspace/file?path=${encodeURIComponent(e)}`)}function Dh(e,i){return dt("/api/workspace/file",{method:"PUT",body:JSON.stringify({path:e,content:i})})}function KT(e,i){return dt("/api/workspace/file",{method:"POST",body:JSON.stringify({action:"create",path:e,type:i})})}function VT(e,i){return dt("/api/workspace/file",{method:"POST",body:JSON.stringify({action:"rename",from:e,to:i})})}function XT(e){return dt("/api/workspace/file",{method:"POST",body:JSON.stringify({action:"delete",path:e})})}function ZT(){return dt("/api/git")}function nn(e,i,a,s,o){return dt("/api/tools/execute",{...Vu({name:e,args:i,mode:a,checkpoint:o}),signal:s})}function QT(){return dt("/api/preview/token")}function JT(){return dt("/api/workspace/instructions")}function WT(e){return dt(`/api/checkpoints/${encodeURIComponent(e)}/restore`,{method:"POST",body:JSON.stringify({})})}async function To(e,i,a,s,o,u=!0){await al();let d;try{d=await fetch("/api/llm",{method:"POST",headers:{"Content-Type":"application/json","x-maxcode-csrf":So},body:JSON.stringify({provider:e,kind:i,model:a,body:s}),signal:o,credentials:"same-origin"})}catch(p){throw p instanceof DOMException&&p.name==="AbortError"?p:new Zr("Lost the connection to the local daemon while calling the model.",0,"daemon_unreachable")}if(d.status===401&&u)return await al(!0),To(e,i,a,s,o,!1);if(!d.ok)throw await Ku(d);return d}async function*eC(e,i){await al();let a;try{a=await fetch("/api/deploy",{method:"POST",headers:{"Content-Type":"application/json","x-maxcode-csrf":So},body:JSON.stringify(e),signal:i,credentials:"same-origin"})}catch(d){throw d instanceof DOMException&&d.name==="AbortError"?d:new Zr("Lost the connection to the local daemon while deploying.",0,"daemon_unreachable")}if(!a.ok)throw await Ku(a);if(!a.body)throw new Zr("The deploy stream was empty.",502,"empty_stream");const s=a.body.getReader(),o=new TextDecoder;let u="";try{for(;;){const{done:p,value:m}=await s.read();if(p)break;u+=o.decode(m,{stream:!0});let g=u.indexOf(`
|
|
10
|
+
`);for(;g!==-1;){const x=u.slice(0,g).trim();if(u=u.slice(g+1),x)try{yield JSON.parse(x)}catch{yield{type:"log",stream:"meta",text:x}}g=u.indexOf(`
|
|
11
|
+
`)}}const d=u.trim();if(d)try{yield JSON.parse(d)}catch{yield{type:"log",stream:"meta",text:d}}}finally{s.releaseLock()}}function Mi(e){const i=typeof crypto<"u"&&"randomUUID"in crypto?crypto.randomUUID():`${Date.now().toString(36)}-${Math.random().toString(36).slice(2,9)}`;return`${e}_${i}`}function Rv(e){if(!e||typeof e!="object")return!1;const i=e;return typeof i.id=="string"&&typeof i.title=="string"&&Array.isArray(i.messages)}function Dv(e){let i=0;const a=e.messages.filter(s=>!!(s&&typeof s=="object")).map((s,o)=>{if(s.role==="user")return o>0&&(i+=1),s;const u=typeof s.round=="number"?s.round:i;return s.role==="assistant"?{...s,content:typeof s.content=="string"?s.content:"",reasoning:typeof s.reasoning=="string"?s.reasoning:"",toolCalls:Array.isArray(s.toolCalls)?s.toolCalls:[],round:u}:{...s,round:u}});return{...e,title:e.title.trim()||"New conversation",messages:a,createdAt:typeof e.createdAt=="number"?e.createdAt:Date.now(),updatedAt:typeof e.updatedAt=="number"?e.updatedAt:Date.now(),mode:e.mode==="plan"?"plan":e.mode==="build"?"build":void 0}}function tC(e){const i=e.replace(/\s+/g," ").trim();return i?i.length>56?`${i.slice(0,56).trim()}…`:i:"New conversation"}const We=Wr()((e,i)=>({sessions:[],activeId:null,hydrated:!1,hydrate:a=>{const s=(a.sessions??[]).filter(Rv).map(Dv).sort((u,d)=>d.updatedAt-u.updatedAt),o=typeof a.activeId=="string"&&s.some(u=>u.id===a.activeId)?a.activeId:s[0]?.id??null;e({sessions:s,activeId:o,hydrated:!0})},setActive:a=>e({activeId:a}),newChat:()=>e({activeId:null}),createSession:(a,s,o)=>{const u=Mi("chat"),d=Date.now(),p={id:u,title:"New conversation",createdAt:d,updatedAt:d,messages:[],provider:a,model:s,mode:o};return e(m=>({sessions:[p,...m.sessions],activeId:u})),u},addMessage:(a,s)=>{e(o=>({sessions:o.sessions.map(u=>{if(u.id!==a)return u;const d={messages:[...u.messages,s],updatedAt:Date.now()};return s.role==="user"&&u.messages.length===0&&(d.title=tC(s.content)),{...u,...d}})}))},updateMessage:(a,s,o)=>{e(u=>({sessions:u.sessions.map(d=>{if(d.id!==a)return d;let p=!1;const m=d.messages.map(g=>{if(g.id!==s)return g;const x=typeof o=="function"?o(g):o;return!x||Object.keys(x).length===0?g:(p=!0,{...g,...x})});return p?{...d,messages:m,updatedAt:Date.now()}:d})}))},updateSession:(a,s)=>{e(o=>({sessions:o.sessions.map(u=>u.id===a?{...u,...s,updatedAt:Date.now()}:u)}))},renameSession:(a,s)=>{const o=s.trim();o&&i().updateSession(a,{title:o})},deleteSession:a=>{e(s=>{const o=s.sessions.filter(u=>u.id!==a);return{sessions:o,activeId:s.activeId===a?o[0]?.id??null:s.activeId}})},clearAll:()=>e({sessions:[],activeId:null}),persistNow:async()=>{const{sessions:a,activeId:s}=i();await Mv({sessions:a,activeId:s})}}));let Xu=!1,Fr,tl;function nC(){Xu=!0}function iC(){!Xu||typeof window>"u"||(Fr!==void 0&&window.clearTimeout(Fr),Fr=window.setTimeout(()=>{Fr=void 0,S1()},900),tl===void 0&&(tl=window.setTimeout(()=>{tl=void 0,S1()},6e3)))}async function S1(){if(!Xu)return;Fr!==void 0&&(window.clearTimeout(Fr),Fr=void 0),tl!==void 0&&(window.clearTimeout(tl),tl=void 0);const{sessions:e,activeId:i}=We.getState();try{await Mv({sessions:e,activeId:i})}catch(a){window.dispatchEvent(new CustomEvent("maxcode:notice",{detail:{message:a instanceof Error?a.message:"Could not save conversations to the local daemon.",tone:"error"}}))}}We.subscribe(iC);if(typeof window<"u"){const e=()=>{if(!Xu)return;const{sessions:i,activeId:a}=We.getState();try{const s=JSON.stringify({sessions:i,activeId:a});if(s.length>6e4)return;fetch("/api/chats",{method:"PUT",keepalive:!0,headers:{"Content-Type":"application/json","x-maxcode-csrf":CT()},body:s}).catch(()=>{})}catch{}};window.addEventListener("beforeunload",e),document.addEventListener("visibilitychange",()=>{document.visibilityState==="hidden"&&e()})}function zv(){const e=We.getState().sessions,i=new Blob([JSON.stringify({app:"OpenSol",exportedAt:new Date().toISOString(),sessions:e},null,2)],{type:"application/json"}),a=URL.createObjectURL(i),s=document.createElement("a");s.href=a,s.download=`maxcode-history-${new Date().toISOString().slice(0,10)}.json`,s.click(),URL.revokeObjectURL(a)}function aC(e){return e.text().then(i=>{const a=JSON.parse(i);if(!Array.isArray(a.sessions))throw new Error("This file does not contain a OpenSol history.");const s=a.sessions.filter(Rv).map(Dv);if(s.length===0)throw new Error("No valid conversations were found in this file.");const o=new Set(We.getState().sessions.map(d=>d.id)),u=s.filter(d=>!o.has(d.id));return We.setState(d=>({sessions:[...u,...d.sessions],activeId:u[0]?.id??d.activeId})),u.length})}const Lv=[{id:"skill-debugger",name:"Systematic debugger",description:"Reproduce, isolate and verify a bug before fixing it.",enabled:!1,builtIn:!0,instructions:`When debugging:
|
|
12
|
+
1. Reproduce the failure and capture the exact output.
|
|
13
|
+
2. Read the relevant source before changing anything.
|
|
14
|
+
3. Form one hypothesis at a time. Prove or disprove it with a command or a focused test.
|
|
15
|
+
4. Fix the root cause, not the symptom. Add a regression test when a test setup exists.
|
|
16
|
+
5. Re-run the reproduction and report the real result. Never claim a fix without evidence.`},{id:"skill-reviewer",name:"Code reviewer",description:"Review changes for correctness, regressions and clarity.",enabled:!1,builtIn:!0,instructions:`Act as a rigorous senior reviewer. Inspect the whole change, then report only issues that matter:
|
|
17
|
+
- correctness and edge cases
|
|
18
|
+
- security and data loss risks
|
|
19
|
+
- broken public behavior or missing migrations
|
|
20
|
+
- needless abstraction, duplicated logic and swallowed errors
|
|
21
|
+
Order findings by severity and cite the file and line. Do not rewrite code unless asked. If you find nothing substantive, say so plainly.`},{id:"skill-brainstorm",name:"Brainstorm",description:"Explore the problem space before committing to a design.",enabled:!1,builtIn:!0,instructions:`When brainstorming:
|
|
22
|
+
1. Restate the real problem and the constraints that cannot move. Ask one short question only if a decision genuinely blocks progress.
|
|
23
|
+
2. Produce several genuinely different directions, not variations of the first idea. Name the trade-off each one makes.
|
|
24
|
+
3. Look for the smallest version that proves the idea. Prefer reversible steps.
|
|
25
|
+
4. Stress-test the leading option against failure modes, cost, maintenance and the user's actual workflow.
|
|
26
|
+
5. Finish with a recommendation, the assumptions behind it, and what would change your mind.
|
|
27
|
+
Do not start editing until the direction is chosen.`},{id:"skill-frontend",name:"Frontend craftsman",description:"Build interfaces with considered typography, spacing and states.",enabled:!1,builtIn:!0,instructions:`For interface work:
|
|
28
|
+
- Establish a small token system: base palette, one accent, type scale, spacing rhythm.
|
|
29
|
+
- Prefer one distinctive, purposeful moment over scattered decoration.
|
|
30
|
+
- Design empty, loading, error, disabled and mobile states, not just the happy path.
|
|
31
|
+
- Keep contrast accessible, focus rings visible, and respect reduced motion.
|
|
32
|
+
- Use real copy that names things by what people understand. No filler labels.`}],rC=`# Skill name
|
|
33
|
+
|
|
34
|
+
Describe what this skill is for in one sentence.
|
|
35
|
+
|
|
36
|
+
## Instructions
|
|
37
|
+
|
|
38
|
+
- What the agent should do
|
|
39
|
+
- Constraints it must respect
|
|
40
|
+
- How to verify the result
|
|
41
|
+
`,Cm=[{id:"openai",name:"OpenAI",format:"openai",baseUrl:"https://api.openai.com/v1",keyHint:"sk-…",note:"GPT and Codex models. Requests are made by your local daemon, never by OpenSoft."},{id:"anthropic",name:"Anthropic",format:"anthropic",baseUrl:"https://api.anthropic.com/v1",keyHint:"sk-ant-…",note:"Claude models, including extended thinking where the model supports it."},{id:"google",name:"Google",format:"gemini",baseUrl:"https://generativelanguage.googleapis.com/v1beta",keyHint:"AIza…",note:"Gemini models through the Generative Language API."},{id:"opencode",name:"OpenCode",format:"openai",baseUrl:"https://opencode.ai/inference/v1",keyHint:"OpenCode API key",note:"OpenCode routes each model to its native API. Free-tier models only work inside OpenCode and are hidden."},{id:"deepseek",name:"DeepSeek",format:"openai",baseUrl:"https://api.deepseek.com",keyHint:"sk-…",note:"DeepSeek chat and reasoning models."},{id:"openrouter",name:"OpenRouter",format:"openai",baseUrl:"https://openrouter.ai/api/v1",keyHint:"sk-or-…",note:"One key for hundreds of models and providers."},{id:"groq",name:"Groq",format:"openai",baseUrl:"https://api.groq.com/openai/v1",keyHint:"gsk_…"},{id:"mistral",name:"Mistral",format:"openai",baseUrl:"https://api.mistral.ai/v1",keyHint:"…"},{id:"xai",name:"xAI",format:"openai",baseUrl:"https://api.x.ai/v1",keyHint:"xai-…"},{id:"together",name:"Together AI",format:"openai",baseUrl:"https://api.together.xyz/v1",keyHint:"…"},{id:"ollama",name:"Ollama",format:"openai",baseUrl:"http://localhost:11434/v1",keyless:!0,keyHint:"Not required",note:"Runs on your machine. The daemon reaches it at localhost; no data leaves your computer."},{id:"custom",name:"Custom endpoint",format:"openai",baseUrl:"",keyHint:"Optional",note:"Any OpenAI-compatible endpoint or proxy you control."}],ji=Object.fromEntries(Cm.map(e=>[e.id,e]));function Am(e){return ji[e]?.name??e}const T1=["none","minimal","low","medium","high","xhigh","max"],Iv={none:{label:"None",description:"Disable extra reasoning"},minimal:{label:"Minimal",description:"Very light reasoning"},low:{label:"Low",description:"Fast, lighter reasoning"},medium:{label:"Medium",description:"Balanced reasoning"},high:{label:"High",description:"Deeper reasoning, slower"},xhigh:{label:"Extra high",description:"Very deep reasoning"},max:{label:"Max",description:"Maximum effort the model allows"}};function Uv(e){return Iv[e]?.label??e}function mr(e){return e?.reasoningOptions.find(a=>a.type==="effort")?.values??[]}function Bv(e){return e?.reasoningOptions.find(i=>i.type==="budget_tokens")}function Tu(e){return!!Bv(e)}function $v(e){return!!e?.reasoningOptions.some(i=>i.type==="toggle")}function Hv(e){const i=mr(e);if(i.length===0)return"medium";for(const a of["medium","high","low"])if(i.includes(a))return a;return i[0]}function Zu(e,i){const a=mr(i);return a.length===0||a.includes(e)?e:Hv(i)}function sC(e,i){const a=Bv(i),s=Math.max(0,a?.min??1024),o=Math.max(s,a?.max??32768);return Math.max(s,Math.min(o,e))}const lC={none:1024,minimal:1024,low:2048,medium:8192,high:16384,xhigh:24576,max:32768};function Pv(e,i){return sC(lC[e]??8192,i)}function Om(e){return[...mr(e)].sort((a,s)=>T1.indexOf(a)-T1.indexOf(s))}function Fv(e){if(!e)return"Choose a model to see live reasoning controls.";const i=mr(e);return i.length>0?`Effort levels from this model: ${i.join(", ")}.`:Tu(e)?"This model accepts a thinking token budget, derived from the effort level.":$v(e)?"This model controls reasoning itself; no effort value is sent.":"This model advertises no reasoning controls, so effort does not apply."}const qv=[{id:"light",label:"Light",dark:!1},{id:"dark",label:"Dark",dark:!0},{id:"night-owl",label:"Night Owl",dark:!0},{id:"claude-code",label:"Claude Code",dark:!0},{id:"flame",label:"Flame",dark:!0}],oC=/^[a-z0-9][a-z0-9:_-]{0,79}$/,Mm=new Map(qv.map(e=>[e.id,e]));function Gv(e){Mm.set(e.id,e)}function Yv(e){qv.some(i=>i.id===e)||Mm.delete(e)}function Kv(e){return typeof e=="string"&&oC.test(e)}function Vv(e,i){return e==="system"?i?"dark":"light":Kv(e)?e:"light"}function zh(e,i){return Mm.get(Vv(e,i))?.dark??!1}function cC(e){return e==="system"?"system":Kv(e)?e:"system"}const Cu=`You are OpenSol, a senior web engineer and coding agent built by OpenSoft.
|
|
42
|
+
|
|
43
|
+
You work directly in the user's open folder through a local daemon. The shell, file, git, search and deploy tools are real. Never describe tool output you did not receive.
|
|
44
|
+
|
|
45
|
+
Engineering standard:
|
|
46
|
+
- Read every file you change. Match the existing stack, style, naming and conventions. Never invent APIs, versions, flags, package names or paths.
|
|
47
|
+
- Make the smallest correct change. One concern per edit. No speculative abstraction, dead code, placeholder TODOs or swallowed errors.
|
|
48
|
+
- Keep public behavior stable unless the task explicitly changes it.
|
|
49
|
+
- Security: never expose secrets, never weaken auth, CSRF, CSP or validation to make something pass, and validate untrusted input at boundaries.
|
|
50
|
+
- Accessibility: semantic HTML, keyboard paths, visible focus, sufficient contrast.
|
|
51
|
+
- Performance: avoid needless work; measure before optimizing.
|
|
52
|
+
- Every bug fix gets a regression test when a test setup exists. Tests assert behavior, not implementation.
|
|
53
|
+
|
|
54
|
+
Working loop:
|
|
55
|
+
1. Inspect before editing: list files, read the relevant source, grep for call sites, check git status.
|
|
56
|
+
2. For non-trivial work, state a short plan.
|
|
57
|
+
3. Edit in small, coherent steps.
|
|
58
|
+
4. Verify with the project's real commands (typecheck, lint, tests, build) and read the output.
|
|
59
|
+
5. Report what changed, which files, and what was verified. If a check fails or cannot run, say so plainly and explain why.
|
|
60
|
+
|
|
61
|
+
Never claim a check passed without running it. Ask only when a decision is genuinely ambiguous or destructive. Answer in the user's language. Cite web sources as links, and only when you actually read them.`,Lh={shell:{enabled:!0,approval:"ask"},read_file:{enabled:!0,approval:"auto"},list_files:{enabled:!0,approval:"auto"},write_file:{enabled:!0,approval:"auto"},edit_file:{enabled:!0,approval:"auto"},rewrite_file:{enabled:!0,approval:"auto"},grep:{enabled:!0,approval:"auto"},web_search:{enabled:!0,approval:"auto"},read_url:{enabled:!0,approval:"auto"},git:{enabled:!0,approval:"ask"},subagent:{enabled:!0,approval:"ask"}},Ea={provider:"openai",model:"",effort:"medium",webSearchEnabled:!0,temperature:.4,maxTokens:8192,systemPrompt:Cu,providers:{},searchProvider:"duckduckgo",tools:Lh,skills:Lv,theme:"system",showTokenEstimate:!0,mode:"build",chatFontSize:15,workDetail:"detailed",autoCollapseWork:!0},uC=new Set(["none","minimal","low","medium","high","xhigh","max"]);function Xv(e,i="error"){typeof window>"u"||window.dispatchEvent(new CustomEvent("maxcode:notice",{detail:{message:e,tone:i}}))}function dC(e){const i={};for(const a of Object.keys(Lh))i[a]={...Lh[a],...e?.[a]??{}};return i}function fC(e){const i=new Map;for(const a of Lv)i.set(a.id,a);for(const a of e??[])!a||typeof a.id!="string"||i.set(a.id,{...i.get(a.id)??{},...a,builtIn:a.builtIn??i.has(a.id)});return[...i.values()]}function pC(e){return typeof e!="string"||!e.trim()||/sandboxed workspace stored in the user's browser/i.test(e)||/There is no node, npm, git or network in the shell/i.test(e)||/workspace root is \/workspace/i.test(e)?Cu:e}function hC(e){const i={};for(const[a,s]of Object.entries(e??{}))!(a in ji)||!s||typeof s!="object"||typeof s.baseUrl=="string"&&s.baseUrl.trim()&&(i[a]={baseUrl:s.baseUrl.trim()});return i}function mC(e){const i=e??{},a=typeof i.provider=="string"&&i.provider in ji?i.provider:Ea.provider,s=i.mode==="plan"?"plan":i.mode==="build"?"build":Ea.mode;return{...Ea,...i,provider:a,model:typeof i.model=="string"?i.model.trim():"",mode:s,effort:typeof i.effort=="string"&&uC.has(i.effort)?i.effort:Ea.effort,webSearchEnabled:i.webSearchEnabled!==!1,showTokenEstimate:i.showTokenEstimate!==!1,temperature:typeof i.temperature=="number"&&Number.isFinite(i.temperature)?Math.max(0,Math.min(2,i.temperature)):Ea.temperature,maxTokens:typeof i.maxTokens=="number"&&Number.isFinite(i.maxTokens)?Math.max(256,Math.min(2e5,Math.round(i.maxTokens))):Ea.maxTokens,systemPrompt:pC(i.systemPrompt),providers:hC(i.providers),searchProvider:i.searchProvider&&["duckduckgo","tavily","brave","serper"].includes(i.searchProvider)?i.searchProvider:Ea.searchProvider,tools:dC(i.tools),skills:fC(i.skills),theme:cC(i.theme),chatFontSize:typeof i.chatFontSize=="number"&&Number.isFinite(i.chatFontSize)?Math.max(12,Math.min(20,Math.round(i.chatFontSize))):Ea.chatFontSize,workDetail:i.workDetail==="concise"?"concise":"detailed",autoCollapseWork:i.autoCollapseWork!==!1}}let jm=!1,nl={},il,mo;function Zv(e){const i={},a=["provider","model","effort","webSearchEnabled","temperature","maxTokens","systemPrompt","providers","searchProvider","tools","skills","theme","showTokenEstimate","mode","chatFontSize","workDetail","autoCollapseWork"];for(const s of a)s in e&&(i[s]=e[s]);return i}function Ih(){if(!jm||Object.keys(nl).length===0)return Promise.resolve();const e=Zv(nl);return nl={},il!==void 0&&window.clearTimeout(il),mo!==void 0&&window.clearTimeout(mo),il=void 0,mo=void 0,LT(e).then(()=>{}).catch(i=>{Xv(i instanceof Error?i.message:"Could not save settings to the local daemon.")})}function _a(e){jm&&(nl={...nl,...Zv(e)},il!==void 0&&window.clearTimeout(il),il=window.setTimeout(()=>{Ih()},550),mo===void 0&&(mo=window.setTimeout(()=>{Ih()},4e3)))}function gC(){jm=!0,Object.keys(nl).length>0&&_a({})}const Re=Wr()((e,i)=>({...Ea,hydrated:!1,daemon:null,secretStatus:null,providerStatus:[],deployTools:null,deploySecrets:null,secretsError:"",hydrate:a=>{const s=mC(a.settings),o=a.providers,u=o.filter(d=>d.configured);!Uh(s,o,s.provider)&&u.length>0&&(s.provider=u[0].id,s.model=""),Uh(s,o,s.provider)||(s.model=""),e({...s,hydrated:!0,daemon:a,secretStatus:a.secrets,providerStatus:o,deployTools:a.deployTools,deploySecrets:a.deploySecrets,secretsError:a.secretsError})},update:a=>{e(a),_a(a)},selectModel:(a,s,o)=>{const u=o??i().effort,d={provider:a,model:s.trim(),effort:u};e(d),_a(d)},updateProvider:(a,s)=>{const o={providers:{...i().providers,[a]:{...i().providers[a]??{},...s}}};e(o),_a(o)},saveProviderKey:async(a,s)=>{const o=await $T(a,s.trim()),u=Qu(i(),a);e(d=>{const p=d.secretStatus?{...d.secretStatus,providers:{...d.secretStatus.providers,[a]:{configured:o.configured,hint:o.hint}}}:d.secretStatus,m=d.providerStatus.map(v=>v.id===a?{...v,configured:o.configured,hint:o.hint}:v),g=o.configured?!rl(d)||d.provider===a:!1,x=d.provider===a&&!o.configured,b={};return g&&(b.provider=a),x&&(b.model=""),{secretStatus:p,providerStatus:m,...b}}),!u&&o.configured&&Xv(`${ji[a]?.name??a} is connected.`,"success")},saveSearchKey:async a=>{const s=await HT(a.trim());e(o=>({secretStatus:o.secretStatus?{...o.secretStatus,search:{configured:s.configured,hint:s.hint}}:o.secretStatus}))},saveDeployCredentials:async(a,s)=>{const o=await PT(a,s);e(u=>({secretStatus:u.secretStatus?{...u.secretStatus,deploy:{...u.secretStatus.deploy,[a]:o}}:u.secretStatus,deploySecrets:u.deploySecrets?{...u.deploySecrets,[a]:o}:u.deploySecrets}))},refreshProviders:async()=>{const a=await UT();e({providerStatus:a.providers})},updateTool:(a,s)=>{const o={tools:{...i().tools,[a]:{...i().tools[a],...s}}};e(o),_a(o)},addSkill:a=>{const s={skills:[...i().skills,a]};e(s),_a(s)},updateSkill:(a,s)=>{const o={skills:i().skills.map(u=>u.id===a?{...u,...s}:u)};e(o),_a(o)},removeSkill:a=>{const s={skills:i().skills.filter(o=>o.id!==a)};e(s),_a(s)},setMode:a=>{const s={mode:a};e(s),_a(s)},flush:()=>Ih()}));function xi(e){return e.model.trim()}function Qu(e,i){return Uh(e,Re.getState().providerStatus,i)}function Uh(e,i,a){const s=ji[a];if(!s)return!1;const o=i.find(u=>u.id===a);return o?o.configured:a==="custom"?!!e.providers.custom?.baseUrl?.trim():!!s.keyless}function rl(e){return Qu(e,e.provider)}typeof window<"u"&&(window.addEventListener("beforeunload",()=>{Re.getState().flush()}),document.addEventListener("visibilitychange",()=>{document.visibilityState==="hidden"&&Re.getState().flush()}));const Au=Wr()(e=>({streaming:{},setStreaming:(i,a)=>e(s=>{if(!!s.streaming[i]===a)return s;const o={...s.streaming};return a?o[i]=!0:delete o[i],{streaming:o}})}));function bC(){try{return localStorage.getItem("maxcode.sidebar-collapsed")==="1"}catch{return!1}}function xC(e){try{localStorage.setItem("maxcode.sidebar-collapsed",e?"1":"0")}catch{}}const be=Wr()((e,i)=>({sidebarCollapsed:bC(),toggleSidebar:()=>e(a=>{const s=!a.sidebarCollapsed;return xC(s),{sidebarCollapsed:s}}),mobileSidebarOpen:!1,setMobileSidebarOpen:a=>e({mobileSidebarOpen:a}),workspaceOpen:!1,setWorkspaceOpen:a=>e({workspaceOpen:a}),settingsOpen:!1,settingsTab:"general",openSettings:(a="general")=>e({settingsOpen:!0,settingsTab:a,mobileSidebarOpen:!1}),closeSettings:()=>e({settingsOpen:!1}),deployOpen:!1,setDeployOpen:a=>e({deployOpen:a}),paletteOpen:!1,setPaletteOpen:a=>e({paletteOpen:a}),composerFocus:0,focusComposer:()=>e(a=>({composerFocus:a.composerFocus+1})),toast:null,notify:(a,s="info")=>e({toast:{id:Date.now()+Math.random(),message:a,tone:s}}),dismissToast:a=>e(s=>s.toast?.id===a?{toast:null}:s),confirm:null,askConfirm:a=>new Promise(s=>{i().confirm&&i().confirm?.resolve(!1),e({confirm:{...a,resolve:s}})}),resolveConfirm:a=>{const s=i().confirm;e({confirm:null}),s?.resolve(a)}}));window.addEventListener("maxcode:notice",e=>{const i=e.detail;i?.message&&be.getState().notify(i.message,i.tone??"info")});const yC={root:"",name:"",available:!1,error:"",workspaces:[]},lu={available:!1,root:"",branch:"",entries:[],error:""};function C1(e,i){return!!(e&&(e===i||e.startsWith(`${i}/`)))}const Be=Wr()((e,i)=>({info:yC,root:"",entries:[],truncated:!1,loadingTree:!1,treeError:"",activeFile:null,file:null,content:"",dirty:!1,saving:!1,openingFile:!1,git:lu,gitLoading:!1,instructions:{file:"",content:"",truncated:!1},hydrate:async a=>{e({info:a,root:a.root,treeError:a.available?"":a.error,entries:a.available?i().entries:[],activeFile:a.available?i().activeFile:null,file:a.available?i().file:null,content:a.available?i().content:"",dirty:!1,git:a.available?i().git:lu}),a.available?(await i().loadTree(),i().loadGit(),i().loadInstructions()):e({instructions:{file:"",content:"",truncated:!1}})},loadInstructions:async()=>{if(i().info.available)try{e({instructions:await JT()})}catch{e({instructions:{file:"",content:"",truncated:!1}})}},loadTree:async()=>{const a=i().info;if(!a.available||!a.root){e({entries:[],loadingTree:!1,treeError:a.error});return}e({loadingTree:!0,treeError:""});try{const s=await jv("",7);e({entries:s.entries,truncated:s.truncated,loadingTree:!1,root:s.root,info:s.workspace}),i().loadInstructions()}catch(s){e({loadingTree:!1,treeError:s instanceof Error?s.message:"Could not read the workspace."})}},refresh:async({treeOnly:a=!1}={})=>{if(await i().loadTree(),a)return;const s=i().activeFile;if(!s||i().dirty)return;if(!i().entries.some(u=>u.path===s&&u.type==="file")){e({activeFile:null,file:null,content:"",dirty:!1});return}try{await i().openFile(s,{force:!0})}catch{}},openFile:async(a,{force:s=!1}={})=>{if(!(!a||i().openingFile)&&!(!s&&i().activeFile===a&&i().file)&&!(i().dirty&&!await i().saveFile())){e({openingFile:!0,treeError:""});try{const o=await Rh(a);e({activeFile:a,file:o,content:o.content,dirty:!1,openingFile:!1})}catch(o){e({openingFile:!1,treeError:o instanceof Error?o.message:"Could not open that file."}),be.getState().notify(o instanceof Error?o.message:"Could not open that file.","error")}}},closeFile:()=>e({activeFile:null,file:null,content:"",dirty:!1}),setContent:a=>{i().file?.binary||a!==i().content&&e({content:a,dirty:!0})},saveFile:async()=>{const{activeFile:a,content:s,dirty:o,file:u,saving:d}=i();if(!a||!o||d||u?.binary)return!0;e({saving:!0});try{const p=await Dh(a,s);return e({saving:!1,dirty:!1,file:u&&{...u,size:p.size,mtime:p.mtime,hash:p.hash,truncated:!1}}),be.getState().notify(`Saved ${a}`,"success"),!0}catch(p){return e({saving:!1}),be.getState().notify(p instanceof Error?p.message:"Could not save that file.","error"),!1}},createEntry:async(a,s)=>{await KT(a,s),await i().loadTree(),s==="file"&&await i().openFile(a),be.getState().notify(`${s==="dir"?"Folder":"File"} created: ${a}`,"success")},renameEntry:async(a,s)=>{if(await VT(a,s),await i().loadTree(),C1(i().activeFile,a)){const o=i().activeFile===a?s:`${s}${i().activeFile?.slice(a.length)??""}`;e({activeFile:null,file:null,content:"",dirty:!1}),await i().openFile(o)}be.getState().notify(`Renamed to ${s}`,"success")},deleteEntry:async a=>{await XT(a),C1(i().activeFile,a)&&e({activeFile:null,file:null,content:"",dirty:!1}),await i().loadTree(),be.getState().notify(`Deleted ${a}`,"success")},addWorkspace:async a=>{const s=await qT(a);e({activeFile:null,file:null,content:"",dirty:!1,entries:[]}),await i().hydrate(s.workspace),be.getState().notify(`Workspace set to ${s.entry.name}`,"success")},forgetWorkspace:async()=>{if(i().dirty&&!await i().saveFile())return;const a=await GT();e({info:a,root:"",entries:[],activeFile:null,file:null,content:"",dirty:!1,git:lu,instructions:{file:"",content:"",truncated:!1}})},loadGit:async()=>{if(i().info.available){e({gitLoading:!0});try{const a=await ZT();e({git:{...a},gitLoading:!1})}catch(a){e({git:{...lu,error:a instanceof Error?a.message:"Git status failed."},gitLoading:!1})}}},setActiveFile:a=>{a?i().openFile(a):i().closeFile()}}));function Ou(e){return e==null}function Ca(e,i,a){return Object.defineProperty(e,i,{writable:!0,value:a,enumerable:!1})}function Bh(e,i){return arguments.length===1?a=>Bh(e,a):e in globalThis&&i instanceof globalThis[e]||Object.prototype.toString.call(i).slice(8,-1)===e}function Qv(e){return Bh("ArrayBuffer",e)||Bh("SharedArrayBuffer",e)}function vC(e){return Qv(e)||ArrayBuffer.isView(e)}var sl;(e=>{e.is=Qv,e.isSource=vC;function i(d){return ArrayBuffer.isView(d)?d.buffer.slice(d.byteOffset,d.byteOffset+d.byteLength):d}e.fromSource=i;function a(d){if(d=i(d),typeof Buffer<"u")return Buffer.from(d).toString("base64");let p="";const m=new Uint8Array(d);for(let g=0;g<m.byteLength;g++)p+=String.fromCharCode(m[g]);return btoa(p)}e.toBase64=a;function s(d){return typeof Buffer<"u"?i(Buffer.from(d,"base64")):Uint8Array.from(atob(d),p=>p.charCodeAt(0))}e.fromBase64=s;function o(d){return d=i(d),typeof Buffer<"u"?Buffer.from(d).toString("hex"):Array.from(new Uint8Array(d),p=>p.toString(16).padStart(2,"0")).join("")}e.toHex=o;function u(d){if(typeof Buffer<"u")return i(Buffer.from(d,"hex"));const p=d.length%2===0?d:d.slice(0,d.length-1),m=[];for(let g=0;g<p.length;g+=2)m.push(parseInt(`${p[g]}${p[g+1]}`,16));return Uint8Array.from(m).buffer}e.fromHex=u})(sl||(sl={}));sl.fromBase64;sl.toBase64;sl.fromHex;sl.toHex;function wC(e,i,a){const s=[];let o=0;for(let u=0;u<e.length;u++){const d=e.charCodeAt(u);if(d>=65&&d<=90){if(o===1){const p=e.charCodeAt(u+1);p>=97&&p<=122&&s.push(a),s.push(d+32)}else o!==0&&s.push(a),s.push(d+32);o=1}else d>=97&&d<=122?(s.push(d),o=2):i.includes(d)?(o!==0&&s.push(a),o=0):s.push(d)}return String.fromCharCode(...s)}function kC(e){return wC(e,[45,95],45)}var EC=kC,A1;(e=>{e.millisecond=1,e.second=1e3,e.minute=e.second*60,e.hour=e.minute*60,e.day=e.hour*24,e.week=e.day*7;let i=new Date().getTimezoneOffset();function a(y){i=y}e.setTimezoneOffset=a;function s(){return i}e.getTimezoneOffset=s;function o(y=new Date,k){return typeof y=="number"&&(y=new Date(y)),k===void 0&&(k=i),Math.floor((y.valueOf()/e.minute-k)/1440)}e.getDateNumber=o;function u(y,k){const N=new Date(y*e.day);return k===void 0&&(k=i),new Date(+N+k*e.minute)}e.fromDateNumber=u;const d=/\d+(?:\.\d+)?/.source,p=new RegExp(`^${["w(?:eek(?:s)?)?","d(?:ay(?:s)?)?","h(?:our(?:s)?)?","m(?:in(?:ute)?(?:s)?)?","s(?:ec(?:ond)?(?:s)?)?"].map(y=>`(${d}${y})?`).join("")}$`);function m(y){const k=p.exec(y);return k?(parseFloat(k[1])*e.week||0)+(parseFloat(k[2])*e.day||0)+(parseFloat(k[3])*e.hour||0)+(parseFloat(k[4])*e.minute||0)+(parseFloat(k[5])*e.second||0):0}e.parseTime=m;function g(y){const k=m(y);return k?y=Date.now()+k:/^\d{1,2}(:\d{1,2}){1,2}$/.test(y)?y=`${new Date().toLocaleDateString()}-${y}`:/^\d{1,2}-\d{1,2}-\d{1,2}(:\d{1,2}){1,2}$/.test(y)&&(y=`${new Date().getFullYear()}-${y}`),y?new Date(y):new Date}e.parseDate=g;function x(y){const k=Math.abs(y);return k>=e.day-e.hour/2?Math.round(y/e.day)+"d":k>=e.hour-e.minute/2?Math.round(y/e.hour)+"h":k>=e.minute-e.second/2?Math.round(y/e.minute)+"m":k>=e.second?Math.round(y/e.second)+"s":y+"ms"}e.format=x;function b(y,k=2){return y.toString().padStart(k,"0")}e.toDigits=b;function v(y,k=new Date){return y.replace("yyyy",k.getFullYear().toString()).replace("yy",k.getFullYear().toString().slice(2)).replace("MM",b(k.getMonth()+1)).replace("dd",b(k.getDate())).replace("hh",b(k.getHours())).replace("mm",b(k.getMinutes())).replace("ss",b(k.getSeconds())).replace("SSS",b(k.getMilliseconds(),3))}e.template=v})(A1||(A1={}));var _C=Object.defineProperty,Me=(e,i)=>_C(e,"name",{value:i,configurable:!0}),Rm=class{static{Me(this,"DisposableList")}sn=0;map=new Map;weak=new WeakMap;get length(){return this.map.size}push(e){const i=++this.sn;return this.map.set(i,e),this.weak.set(e,i),()=>this.map.delete(i)}delete(e){const i=this.weak.get(e);return i?this.map.delete(i):!1}clear(){const e=[...this.map.values()];return this.map.clear(),e.reverse()}[Symbol.iterator](){return this.map.values()}[Symbol.for("nodejs.util.inspect.custom")](){return[...this]}},Ee={shadow:Symbol.for("cordis.shadow"),caller:Symbol.for("cordis.caller"),receiver:Symbol.for("cordis.receiver"),original:Symbol.for("cordis.original"),decorator:Symbol.for("cordis.decorator"),initHooks:Symbol.for("cordis.initHooks"),checkProto:Symbol.for("cordis.checkProto"),root:Symbol.for("cordis.root"),effect:Symbol.for("cordis.effect"),filter:Symbol.for("cordis.filter"),isolate:Symbol.for("cordis.isolate"),intercept:Symbol.for("cordis.intercept"),init:Symbol.for("cordis.init"),check:Symbol.for("cordis.check"),invoke:Symbol.for("cordis.invoke"),metadata:Symbol.for("cordis.metadata"),extend:Symbol.for("cordis.extend"),tracker:Symbol.for("cordis.tracker"),mergeIntercept:Symbol.for("cordis.mergeIntercept"),resolveIntercept:Symbol.for("cordis.resolveIntercept")},NC=function*(){}.constructor,O1=async function*(){}.constructor;function Jv(e){return!(!e.prototype||e instanceof NC||O1!==Function&&e instanceof O1)}Me(Jv,"isConstructor");function Ju(e,i){if(e===Object.prototype)return i;const a=Object.create(Ju(Object.getPrototypeOf(e),i));for(const s of Reflect.ownKeys(e))Object.defineProperty(a,s,Object.getOwnPropertyDescriptor(e,s));return a}Me(Ju,"joinPrototype");function ko(e){return e&&(typeof e=="object"||typeof e=="function")}Me(ko,"isObject");function Dm(e,i){let a=e;for(;a;){const s=Reflect.getOwnPropertyDescriptor(a,i);if(s)return s;a=Object.getPrototypeOf(a)}}Me(Dm,"getPropertyDescriptor");function fr(e,i){if(!ko(i))return i;if(Object.hasOwn(i,Ee.shadow))return Object.getPrototypeOf(i);const a=i[Ee.tracker];return a?Wu(e,i,a):i}Me(fr,"getTraceable");function Eo(e,i){return i?new Proxy(e,{get:Me((a,s,o)=>s in i&&s!=="constructor"?Reflect.get(i,s,o):Reflect.get(a,s,o),"get"),set:Me((a,s,o,u)=>s in i&&s!=="constructor"?Reflect.set(i,s,o,u):Reflect.set(a,s,o,u),"set")}):e}Me(Eo,"withProps");function Mu(e,i,a){return Eo(e,Object.defineProperty(Object.create(null),i,{value:a,writable:!1}))}Me(Mu,"withProp");function po(e,i,a,s){if(!a)return s;const o=Dm(i,a)?.value;if(!o)return s;const u=o[Ee.shadow]??o;return Mu(s,a,e.extend({[Ee.shadow]:u}))}Me(po,"createShadow");function Wv(e,i,a,s){return new Proxy(i,{apply:Me((o,u,d)=>(u===a&&(u=s),fr(e,Reflect.apply(o,u,d))),"apply")})}Me(Wv,"createShadowMethod");function Wu(e,i,a){const s=e[Ee.shadow]??e,o=e[Ee.shadow]?Object.getPrototypeOf(e):e,u=new Proxy(i,{get:Me((d,p,m)=>{if(p===Ee.original)return d;if(p===Ee.caller)return s;if(p===a.property)return o;if(typeof p=="symbol")return Reflect.get(d,p,m);if(a.associate&&o.reflect.props[`${a.associate}.${p}`])return Reflect.get(e,`${a.associate}.${p}`,Mu(e,Ee.receiver,m));let g,x;const b=Dm(d,p);b&&"value"in b?x=b.value:(g=po(o,d,a.property,m),x=Reflect.get(d,p,g));const v=x?.[Ee.tracker];return v?Wu(o,x,v):!a.noShadow&&typeof x=="function"?(g??=po(o,d,a.property,m),Wv(o,x,m,g)):x},"get"),set:Me((d,p,m,g)=>{if(p===Ee.original||p===Ee.caller||p===a.property)return!1;if(typeof p=="symbol")return Reflect.set(d,p,m,g);if(a.associate&&o.reflect.props[`${a.associate}.${p}`])return Reflect.set(e,`${a.associate}.${p}`,m,Mu(e,Ee.receiver,g));const x=po(o,d,a.property,g);return Reflect.set(d,p,m,x)},"set"),apply:Me((d,p,m)=>{const g=a.noShadow?u:po(o,d,a.property,u);return ew(g,d,p,m)},"apply")});return u}Me(Wu,"createTraceable");function ew(e,i,a,s){return i[Ee.invoke]?i[Ee.invoke].apply(e,s):Reflect.apply(i,a,s)}Me(ew,"applyTraceable");function ju(e,i,a){const s=Me(function(...o){const u=Wu(s.ctx,s,a);return Reflect.apply(u,this,o)},"self");return Ca(s,"name",e),Object.setPrototypeOf(s,i)}Me(ju,"createCallable");function $h(e,i,a){const s=e.error.stack.split(`
|
|
62
|
+
`);if(typeof i?.stack!="string"){const d=new Error(i),p=d.stack.split(`
|
|
63
|
+
`);throw p.splice(1,1/0,...a()),d.stack=p.join(`
|
|
64
|
+
`),d}const o=i.stack.split(`
|
|
65
|
+
`);let u=o.indexOf(s[2]);if(u===-1)throw i;for(u-=e.offset;u>0&&o[u-1].endsWith(" (<anonymous>)");)u-=1;throw o.splice(u,1/0,...a()),i.stack=o.join(`
|
|
66
|
+
`),i}Me($h,"handleError");function Hh(e,i=ed()){const a={offset:1,error:new Error};try{const s=e(a);return ko(s)&&"then"in s?s.then(void 0,o=>$h(a,o,i)):s}catch(s){$h(a,s,i)}}Me(Hh,"composeError");function ed(e=0){const i=new Error;return()=>i.stack.split(`
|
|
67
|
+
`).slice(3+e)}Me(ed,"buildOuterStack");var tw=Symbol.for("ValidationError"),nw=class Ph extends TypeError{constructor(i){super(`invalid config:
|
|
68
|
+
`+i.map(a=>a.path?.length?` - ${a.message} (at ${Ph.formatPath(a.path)})`:` - ${a.message}`).join(`
|
|
69
|
+
`)),this.issues=i}issues;static{Me(this,"ValidationError")}name="ValidationError";static is(i){return!!i?.[tw]}static normalizePath(i=[]){return i.map(a=>typeof a=="object"?a.key:a)}static formatPath(i){return Ph.normalizePath(i).map(String).join(".")}};Object.defineProperty(nw.prototype,tw,{value:!0});function iw(e,i){if(!e.Config)return i;const a=e.Config["~standard"].validate(i);if("then"in a)throw new TypeError("Async config validation is not supported");if(a.issues)throw new nw(a.issues);return a.value}Me(iw,"resolveConfig");var Fh=class aw extends Error{constructor(i,a){super(a??aw.Code[i]),this.code=i}code;static{Me(this,"CordisError")}};(e=>{e.Code={INACTIVE_EFFECT:"cannot create effect on inactive context"}})(Fh||(Fh={}));var ka="__INACTIVE__",rw=class{constructor(e,i,a,s,o){this.parent=e,this.config=i,this.inject=a,this.runtime=s;const u=Me(d=>{this._disposables.push(d)},"collect");if(s){this.uid=e.registry.counter,this.ctx=this.context=e.extend({fiber:this}),this._runner={epoch:ka,getOuterStack:o,execute:Me(function(){const d=this._resolve(this.config);if(Jv(s.callback)){const p=new s.callback(this.ctx,d);for(const m of p?.[Ee.initHooks]??[])m();return p?.[Ee.init]?.()}else return s.callback(this.ctx,d)},"execute"),collect:u},this.context.emit("internal/plugin",this);for(const d of Object.keys(this.inject))this._checkImpl(d);this.dispose=e.fiber.effect(()=>{const d=s.fibers.push(this);try{this._refresh()}catch(p){this.ctx.logger.error(p),this._error=p}return async()=>{for(this.uid=null,this.context.emit("internal/plugin",this),this.ctx.registry.has(s.callback)&&(d(),s.fibers.length||this.ctx.registry.delete(s.callback)),this._setEpoch(ka);this.inertia;)await this.inertia;this._updateState(()=>{})}},"ctx.plugin()")}else this.uid=0,this.ctx=this.context=e,this.state=2,this.committed=Object.create(null),this._runner={epoch:"0",getOuterStack:o,execute:Me(()=>{},"execute"),collect:u},this.dispose=()=>this.restart()}parent;config;inject;runtime;static{Me(this,"Fiber")}uid;ctx;state=0;dispose;committed;provisions=new Set;inertia;_hooks=Object.create(null);_disposables=new Rm;context;_error;_revision=0;_runner;_store=Object.create(null);_release;get name(){let e=this;do{if(e.runtime?.name)return e.runtime.name;e=e.parent.fiber}while(e!==e.parent.fiber);return"root"}assertActive(){if(this.uid===null)throw new Fh("INACTIVE_EFFECT")}_resolve(e){return this.context.waterfall("internal/config",this,()=>e)}_execute(e){const i=e.epoch;return Hh(a=>{const s=Me(u=>{if(typeof u=="function")e.collect(u);else if(!Ou(u))throw new TypeError("Invalid effect")},"safeCollect"),o=e.execute.call(this);if(typeof o=="function")return e.collect(o);if(!Ou(o))if(ko(o)){if("then"in o)return o.then(s);if(Symbol.iterator in o){a.error=new Error;const u=o[Symbol.iterator]();for(;;){const d=u.next();if(s(d.value),d.done)return}}else if(Symbol.asyncIterator in o){const u=o[Symbol.asyncIterator]();return(async()=>{for(await Promise.resolve(),a.error=new Error;;){if(e.epoch!==i)return;const d=await u.next();if(s(d.value),d.done)return}})()}else throw new TypeError("Invalid effect")}else throw new TypeError("Invalid effect")},e.getOuterStack)}effect(e,i="anonymous"){this.assertActive();const a=[],s=Me(()=>{let g;for(const x of a.splice(0).reverse())if(g)g=g.then(x);else{const b=x();ko(b)&&"then"in b&&(g=b)}return g},"dispose"),o={label:i,children:[]},u={execute:e,epoch:!0,collect:Me(g=>{a.push(g),this._disposables.delete(g),g[Ee.effect]&&o.children.push(g[Ee.effect])},"collect"),getOuterStack:ed()};let d;try{d=this._execute(u)}catch(g){throw s(),g}d?.catch(s).catch(g=>this.ctx.logger.error(g));const p=Ca(()=>{if(u.epoch)return u.epoch=!1,d?d.then(s):s()},Ee.effect,o),m=Me(()=>{if(u.epoch)return u.epoch=!1,s()},"disposeAsync");return p.then=async(g,x)=>Promise.resolve(d).then(()=>m).then(g,x),a.push(this._disposables.push(p)),p}getEffects(){return[...this._disposables].map(e=>e[Ee.effect]).filter(Boolean)}_getState(){return this.uid===null?4:this._error?3:this._runner.epoch!==ka?2:0}_updateState(e){const i=this.state;if(this.state=e()??this._getState(),i!==this.state&&(this.context.emit("internal/status",this,i),!(i!==2&&this.state!==2)))for(const a of Reflect.ownKeys(this.ctx.reflect.store)){const s=this.ctx.reflect.store[a];s.ctx.fiber===this&&this.ctx.isolate(s.name,s.isolate).reflect.notify([s.name])}}_checkImpl(e){const i=this.ctx.reflect._getImpl(e,!0);if(!i)return delete this._store[e];try{if(i.check&&!i.check.call(fr(this.ctx,i.value)))return delete this._store[e]}catch(a){return i.ctx.logger.error(a),delete this._store[e]}this._store[e]=i}_refresh(){let e=`${this._revision}`;for(const i of Object.keys(this.inject)){const a=this._store[i];if(!a){e=ka;break}e+=":"+a.uid}this._setEpoch(e)}_setEpoch(e){const i=this._runner.epoch;e!==i&&(this._error||(this._runner.epoch=e,!this.inertia&&this._updateState(()=>e!==ka&&i===ka?(this.inertia=this._reload(),1):(this.inertia=this._unload(),5))))}async _reload(){this.committed={...this._store};for(const i of Object.values(this.committed))i.ctx.fiber!==this&&i.dependents.add(this);const e=this._runner.epoch;try{await Promise.resolve(),this._runner.epoch===e&&await this._execute(this._runner)}catch(i){this.ctx.logger.error(i),this._runner.epoch===e&&(this._error=i,this._runner.epoch=ka)}this._updateState(()=>{if(this._runner.epoch===e)this.inertia=void 0;else return this.inertia=this._unload(),5})}async _unload(){for(;[...this.provisions].some(e=>e.dependents.size);)await new Promise(e=>this._release=e);this._release=void 0,await Promise.all(this._disposables.clear().map(async e=>{try{await Hh(async i=>{await Promise.resolve(),i.error=new Error,await e()},this._runner.getOuterStack)}catch(i){this.ctx.logger.error(i)}}));for(const e of Object.values(this.committed??{}))!e.dependents.delete(this)||e.dependents.size||(e.release?.(),e.ctx.fiber._release?.());this.committed=void 0,this._updateState(()=>{if(this._runner.epoch===ka)this.inertia=void 0;else return this.inertia=this._reload(),1})}async await(){for(;this.inertia;)await this.inertia;if(this._error)throw this._error;return this}async restart(){const e=this.ctx.fiber;e.assertActive(),e._revision++,e._refresh(),await e.await()}update(e,i=!1){const a=this.ctx.fiber;a.assertActive();const s=a._runner.epoch!==ka,o=s?a._resolve(e):void 0;i||a.context.emit("internal/commit",a,e),a.config=e,a._error=void 0;const u=Me(()=>a.restart(),"restart"),d=s?a.context.waterfall(a,"internal/update",o,u):u();if(d===void 0)return;const p=Promise.resolve(d);return p.catch(()=>{}),p}};function qh(e){return e!==null&&e!==!1&&e!==void 0}Me(qh,"isBailed");var SC=class{constructor(e){this.ctx=e,Ca(this,Ee.tracker,{property:"ctx",noShadow:!0}),this.on("internal/listener",function(i,a,s){if(i==="internal/update"&&!s.global){const o=this.fiber._hooks["internal/update"]??=new Rm,u=s.prepend?"unshift":"push";return this.fiber.effect(()=>o[u](a),'ctx.on("internal/update")')}}),this.on("internal/update",function(i,a){const s=[...this._hooks["internal/update"]||[]],o=Me(()=>(s.shift()??a).call(this,i,o),"_next");return o()},{global:!0,prepend:!0}),this.on("internal/config",(i,a)=>iw(i.runtime,a()))}ctx;static{Me(this,"EventsService")}_hooks=Object.create(null);_resolve(e,i){const a=typeof i[0]=="object"||typeof i[0]=="function"?i.shift():null,s=i.shift();(typeof s!="string"||!s.startsWith("internal/"))&&this._hooks["internal/dispatch"]?.length&&this.emit("internal/dispatch",e,s,i,a);const o=a?.[Lm.filter],u=(this._hooks[s]||[]).filter(d=>d.global||!o||o.call(a,d.ctx)).map(d=>d.callback);return[a,u,s]}dispatch(e,i){const[a,s]=this._resolve(e,i);return s.map(o=>o.bind(a))}async parallel(...e){const[i,a,s]=this._resolve("parallel",e),u=(await Promise.allSettled(a.map(async p=>Reflect.apply(p,i,e)))).filter(p=>p.status==="rejected");if(!u.length)return;const d=typeof s=="symbol"?String(s):`"${s}"`;throw new AggregateError(u.map(p=>p.reason),`one or more listeners of event ${d} failed`)}emit(...e){const[i,a]=this._resolve("emit",e);for(const s of a)Reflect.apply(s,i,e)}async serial(...e){const[i,a]=this._resolve("serial",e);for(const s of a){const o=await Reflect.apply(s,i,e);if(qh(o))return o}}bail(...e){const[i,a]=this._resolve("bail",e);for(const s of a){const o=Reflect.apply(s,i,e);if(qh(o))return o}}waterfall(...e){const[i,a]=this._resolve("waterfall",e),s=e.pop(),o=Me(()=>{const u=a.shift();if(!u)return s();let d=!1;const p=Me(()=>{if(d)throw new Error("next() called multiple times");return d=!0,o()},"next");return Reflect.apply(u,i,[...e,p])},"dispatch");return o()}register(e,i,a,s){const o=s.prepend?"unshift":"push";return this.ctx.fiber.effect(()=>((this._hooks[i]??=[])[o]({ctx:this.ctx,callback:a,...s}),()=>this.unregister(i,a)),e)}unregister(e,i){const a=this._hooks[e];if(!a)return;const s=a.findIndex(o=>o.callback===i);if(s>=0)return a.splice(s,1),a.length||delete this._hooks[e],!0}on(e,i,a){typeof a!="object"&&(a={prepend:a}),this.ctx.fiber.assertActive(),i=this.ctx.reflect.bind(i);const s=this.bail(this.ctx,"internal/listener",e,i,a);if(s)return s;const o=`ctx.on(${typeof e=="string"?JSON.stringify(e):e.toString()})`;return this.register(o,e,i,a)}once(e,i,a){const s=this.on(e,function(...o){return s(),i.apply(this,o)},a);return s}};function yu(e){const i=e.stack.split(`
|
|
70
|
+
`);return i.splice(0,2,`Error: ${e.message}`),e.stack=i.join(`
|
|
71
|
+
`),e}Me(yu,"enhanceError");var TC=["prototype","then"];function vu(e){return typeof e=="symbol"||TC.includes(e)||parseInt(e).toString()===e||e.startsWith("_")}Me(vu,"isSpecialProperty");function zm(e,i){const a=e[Ee.isolate][i];let s=e[Ee.isolate],o=e.fiber;for(;;){let u;for(const d of o.provisions)d.name===i&&d.ctx[Ee.isolate][i]===a&&(u=d);if(u)return{impl:u};for(;s!==o.ctx[Ee.isolate];){if(!s||Object.hasOwn(s,i))return;s=Object.getPrototypeOf(s)}if(u=o.committed?.[i],u||i in o.inject)return{fiber:o,impl:u};if(!o.runtime)return;o=o.parent.fiber}}Me(zm,"locate");var M1=class{constructor(e){this.ctx=e,Ca(this,Ee.tracker,{property:"ctx",noShadow:!0}),this.mixin("reflect",["get","set","provide","accessor","mixin"]),this.mixin("fiber",["runtime","effect"]),this.mixin("registry",["inject","plugin"]),this.mixin("events",["on","once","parallel","emit","serial","bail","waterfall"])}ctx;static{Me(this,"ReflectService")}static handler={get:Me((e,i,a)=>{if(vu(i))return Reflect.get(e,i,a);if(Reflect.has(e,i))return fr(a,Reflect.get(e,i,a));const s=new Error(`cannot get property "${i}" without inject`);try{const o=e.reflect.props[i];if(o?.type==="accessor")return o.get.call(a,a[Ee.receiver],s);const u=a[Ee.shadow]??a;return u.fiber.runtime?a.events.waterfall("internal/get",a,i,s,()=>{const d=zm(u,i);if(!d)throw s;if(d.impl)return fr(a,d.impl.value);throw s.message=`cannot get required service "${i}" in inactive context`,s}):a.reflect.get(i,!1)}catch(o){throw o===s?yu(o):o}},"get"),set:Me((e,i,a,s)=>{if(vu(i))return Reflect.set(e,i,a,s);const o=new Error(`cannot set property "${i}" without provide`),u=e.reflect.props[i];if(!u){if(!s.fiber.runtime)return Reflect.set(e,i,a,s);throw yu(o)}try{return u.type==="accessor"?u.set?u.set.call(s,a,s[Ee.receiver],o):!1:s.events.waterfall("internal/set",s,i,a,o,()=>s.reflect.set(i,a,o))}catch(d){throw d===o?yu(d):d}},"set"),has:Me((e,i)=>vu(i)?Reflect.has(e,i):Reflect.has(e,i)?!0:!!e.reflect.props[i],"has")};store=Object.create(null);props=Object.create(null);_implCounter=0;get(e,i=!0){return fr(this.ctx,this._getImpl(e,i)?.value)}_getImpl(e,i=!0){const a=this.ctx[Ee.isolate][e],s=a&&this.store[a];if(s&&!(i&&s.ctx.fiber.state!==2))return s}set(e,i,a){const s=this.ctx[Ee.isolate][e],o=this.store[s];if(!o)throw new Error(`cannot set property "${e}" without provide`);if(o.ctx.fiber!==this.ctx.fiber)throw new Error(`cannot set property "${e}" in multiple fibers`);return o.value=i,!0}provide(e,i,a){return this.ctx.fiber.effect(()=>{if(!this.props[e])this.props[e]??={type:"service"};else if(this.props[e].type!=="service")throw new Error(`property "${e}" is already declared as ${this.props[e].type}`);this.props[e]={type:"service"},this.ctx[Ee.root][Ee.isolate][e]??=Symbol(e);const s=this.ctx[Ee.isolate][e],o={uid:++this._implCounter,name:e,value:i,ctx:this.ctx,check:a,isolate:s,dependents:new Set};if(this.store[s])throw new Error(`service "${e}" has been registered at <${this.store[s].ctx.fiber.name}>`);return this.store[s]=o,this.ctx.fiber.provisions.add(o),this.ctx.fiber.state===2&&this.notify([e]),async()=>{this.store[o.isolate]===o&&delete this.store[o.isolate],this.ctx.isolate(e,o.isolate).reflect.notify([e]),await new Promise(u=>{o.release=u,o.dependents.size||u()}),o.release=void 0,this.ctx.fiber.provisions.delete(o)}},`ctx.provide(${JSON.stringify(e)})`)}notify(e,i=(a,s)=>a[Ee.isolate][s]===this.ctx[Ee.isolate][s]){for(const a of this.ctx.registry.values())for(const s of a.fibers){let o=!1;for(const u of e)u in s.inject&&i(s.ctx,u)&&(o=!0,s._checkImpl(u));o&&s._refresh()}for(const a of e){const s=Object.create(this.ctx);s[Ee.filter]=o=>i(o,a),this.ctx.events.emit(s,"internal/service",a,this._getImpl(a,!1)?.value)}}accessor(e,i){return this.ctx.fiber.effect(()=>{if(e in this.props)throw new Error(`property "${e}" is already declared as ${this.props[e].type}`);return this.props[e]={type:"accessor",...i},()=>delete this.props[e]},`ctx.accessor(${JSON.stringify(e)})`)}mixin(e,i){const a=this;return this.ctx.fiber.effect(function*(){const s=Array.isArray(i)?i.map(u=>[u,u]):Object.entries(i),o=Me((u,d)=>u[e],"getTarget");for(const[u,d]of s)yield a.accessor(d,{get(p,m){const g=o(this,m);if(Ou(g))return g;const x=p?Eo(p,g):g,b=Reflect.get(g,u,x);return typeof b!="function"?b:b.bind(x??g)},set(p,m,g){const x=o(this,g),b=m?Eo(m,x):x;return Reflect.set(x,u,p,b)}})},`ctx.mixin(${JSON.stringify(e)})`)}trace(e){return fr(this.ctx,e)}bind(e){return new Proxy(e,{apply:Me((i,a,s)=>Reflect.apply(i,this.trace(a),s.map(o=>this.trace(o))),"apply"),construct:Me((i,a,s)=>Reflect.construct(i,a.map(o=>this.trace(o)),s),"construct")})}},zi=class Gh{constructor(i,a){this.ctx=i,a??=this.constructor.provide;let s=this;const o={associate:a,property:"ctx"};return s[Ee.invoke]&&(s=ju(a,Ju(Object.getPrototypeOf(this),Function.prototype),o)),s.ctx=i,s.name=a,Ca(s,Ee.tracker,o),s.ctx.reflect.provide(a,s,this[Ee.check]),s}ctx;static{Me(this,"Service")}static init=Ee.init;static check=Ee.check;static invoke=Ee.invoke;static metadata=Ee.metadata;static extend=Ee.extend;static tracker=Ee.tracker;static mergeIntercept=Ee.mergeIntercept;static resolveIntercept=Ee.resolveIntercept;name;[Ee.filter](i){return i[Ee.isolate][this.name]===this.ctx[Ee.isolate][this.name]}[Ee.extend](i){let a;return this[Gh.invoke]?a=ju(this.name,this,this[Ee.tracker]):a=Object.create(this),Object.assign(a,i)}[Ee.mergeIntercept](...i){return Object.assign({},...i)}[Ee.resolveIntercept](){const i=[];let a=this.ctx[Lm.intercept];for(;this.name in a;)Object.hasOwn(a,this.name)&&i.unshift(a[this.name]),a=Object.getPrototypeOf(a);const s=zm(this[Ee.caller]??this.ctx,this.name)?.fiber?.inject[this.name];return Ou(s)||i.unshift(s),(this[Ee.mergeIntercept]??Gh.prototype[Ee.mergeIntercept]).apply(this,i)}static[Symbol.hasInstance](i){if(!i)return!1;let a=i.constructor;for(;a;){if(a=a.prototype?.constructor,a===this)return!0;a&&=Object.getPrototypeOf(a)}return!1}},j1={s:Me(e=>String(e),"s"),d:Me(e=>Math.trunc(Number(e)),"d"),i:Me(e=>Math.trunc(Number(e)),"i"),f:Me(e=>Number(e),"f"),o:Me(e=>JSON.stringify(e),"o"),O:Me(e=>JSON.stringify(e),"O"),c:Me(()=>"","c"),C:Me((e,i,a)=>Yh.color(i,Yh.code(a.name,i.colors),e),"C")};function sw(e){return e instanceof Error&&Array.isArray(e.errors)}Me(sw,"isAggregateError");var Yh=class{constructor(e,i){this.service=i,Object.assign(this,e),this.error=this._method("error",0),this.info=this._method("info",2),this.warn=this._method("warn",1),this.debug=this._method("debug",3)}service;static{Me(this,"Logger")}static color(e,i,a,s=""){return e.colors?`\x1B[3${i<8?i:"8;5;"+i}${e.colors>=2?s:""}m${a}\x1B[0m`:""+a}static code(e,i){let a=0;for(let o=0;o<e.length;o++)a=(a<<3)-a+e.charCodeAt(o)+13,a|=0;const s=i?i>=2?AC:CC:[];return s[Math.abs(a)%s.length]}static format(e,i){const a=i.args.slice();a[0]instanceof Error?(a[0]=a[0].stack||a[0].message,a.unshift("%s")):typeof a[0]!="string"&&a.unshift("%o");let s=a.shift();s=s.replace(/%([a-zA-Z%])/g,(d,p)=>{if(d==="%%")return"%";const m=e.formatters?.[p]??j1[p];if(typeof m=="function"){const g=a.shift();return m(g,e,i)}return d});const o=e.formatters?.o??j1.o;for(let d of a)typeof d=="object"&&d&&(d=o(d,e,i)),s+=" "+d;const{maxLength:u=10240}=e;return s.split(/\r?\n/g).map(d=>d.slice(0,u)+(d.length>u?"...":"")).join(`
|
|
72
|
+
`)}_method(e,i){return(...a)=>{if(a.length===1&&a[0]instanceof Error){if(a[0].cause)this[e](a[0].cause);else if(sw(a[0])&&a[0].errors.length){a[0].errors.forEach(u=>this[e](u));return}}const s=++this.service._snMessage,o=Date.now();for(const u of this.service.exporters.values()){if((u.levels?.[this.name]??u.levels?.default??this.level??2)<i)continue;const p={sn:s,ts:o,type:e,level:i,name:this.name,...this.meta,args:a};u.export(p)}}}},CC=[6,2,3,4,5,1],AC=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221],OC=class lw{static{Me(this,"LoggerService")}bufferSize=1e3;buffer=[];ctx;_snMessage=0;_snExporter=0;exporters=new Map;constructor(i){const a={property:"ctx",noShadow:!0},s=ju("logger",Ju(Object.getPrototypeOf(this),Function.prototype),a);return Object.assign(s,this),s.ctx=i,Ca(s,Ee.tracker,a),s.exporter({colors:3,export:Me(o=>{s.buffer.push(o);const u=s.buffer.length-s.bufferSize;u===1?s.buffer.shift():u>1&&s.buffer.splice(0,u)},"export")}),s}exporter(i){return this.ctx.effect(()=>{const a=++this._snExporter;return this.exporters.set(a,i),()=>this.exporters.delete(a)},"ctx.logger.exporter()")}[Ee.invoke](i){const a=this[Ee.caller],s=zi.prototype[zi.resolveIntercept].call(this),o=(a??this.ctx).fiber;return i??=s.name,i??=EC(o.name),new Yh({name:i,level:s.level,meta:{fiber:new WeakRef(o)}},this)}static{for(const i of["error","info","warn","debug"])lw.prototype[i]=function(...a){return this()[i](...a)}}};function ow(e){return e&&typeof e=="object"&&typeof e.apply=="function"}Me(ow,"isApplicable");function Ru(e,i){return function(a,s){if(s.kind==="class")Object.hasOwn(a,"inject")||(Ca(a,"inject",Object.create(Object.getPrototypeOf(a).inject??null)),Ca(a.inject,Ee.checkProto,!0)),a.inject[e]=i;else if(s.kind==="method"){const o=(a[Ee.decorator]??={}).inject??=Object.create(null);o[e]=i,s.addInitializer(function(){const u=this[Ee.tracker]?.property;(this[Ee.initHooks]??=[]).push(()=>{this.ctx.inject(o,d=>a.call(u?Eo(this,{[u]:d}):this))})})}else throw new Error("@Inject() can only be used on class or class methods")}}Me(Ru,"Inject");(e=>{function i(a,s=Object.create(null)){if(!a)return s;if(Array.isArray(a))for(const o of a)s[o]=null;else if(Reflect.has(a,Ee.checkProto)){Object.assign(s,i(Object.getPrototypeOf(a)));for(const o of Object.keys(a))s[o]=a[o]??null}else for(const o of Object.keys(a))s[o]=a[o]??null;return s}e.resolve=i,Me(i,"resolve")})(Ru||(Ru={}));var MC=class{constructor(e){this.ctx=e,Ca(this,Ee.tracker,{property:"ctx",noShadow:!0})}ctx;static{Me(this,"RegistryService")}_counter=0;_internal=new Map;get counter(){return++this._counter}get size(){return this._internal.size}resolve(e){try{if(typeof e=="function")return e;if(ow(e))return e.apply}catch{}}get(e){const i=this.resolve(e);return i&&this._internal.get(i)}has(e){const i=this.resolve(e);return!!i&&this._internal.has(i)}delete(e){const i=this.resolve(e),a=i&&this._internal.get(i);if(a){this._internal.delete(i);for(const s of a.fibers)s.dispose();return a}}keys(){return this._internal.keys()}values(){return this._internal.values()}entries(){return this._internal.entries()}forEach(e){return this._internal.forEach(e)}inject(e,i){return this.plugin({inject:e,apply:i,name:i.name})}plugin(e,i,a=ed()){const s=this.resolve(e);if(!s)throw new Error('invalid plugin, expect function or object with an "apply" method, received '+typeof e);this.ctx.fiber.assertActive();let o=this._internal.get(s);if(!o){let p=e.name;p==="apply"&&(p=void 0),o={name:p,callback:s,fibers:new Rm,Config:e.Config},this._internal.set(s,o)}const u=new rw(this.ctx,i,Ru.resolve(e.inject),o,a),d=Object.create(u);return d.then=(p,m)=>u.await().then(p,m),d}},Lm=class ho{static{Me(this,"Context")}static root=Ee.root;static effect=Ee.effect;static filter=Ee.filter;static isolate=Ee.isolate;static intercept=Ee.intercept;static is(i){return!!i?.[ho.is]}static{ho.is[Symbol.toPrimitive]=()=>Symbol.for("cordis.is"),ho.prototype[ho.is]=!0}constructor(){this[Ee.isolate]=Object.create(null),this[Ee.intercept]=Object.create(null);const i=new Proxy(this,M1.handler);return this[Ee.root]=i,this.baseUrl=void 0,this.fiber=new rw(i,{},Object.create(null),null,()=>[]),this.reflect=new M1(i),this.registry=new MC(i),this.events=new SC(i),this.logger=new OC(i),this.fiber._disposables.clear(),i}[Symbol.for("nodejs.util.inspect.custom")](){return`Context <${this.fiber.name}>`}extend(i={}){const a=Reflect.getOwnPropertyDescriptor(this,Ee.shadow)?.value,s=Object.create(fr(this,this));for(const o of Reflect.ownKeys(i))Object.defineProperty(s,o,Reflect.getOwnPropertyDescriptor(i,o));return a?Object.assign(Object.create(s),{[Ee.shadow]:a}):s}isolate(i,a){const s=Object.create(this[Ee.isolate]);return s[i]=a??Symbol(i),this.extend({[Ee.isolate]:s})}intercept(i,a){const s=Object.create(this[Ee.intercept]);return s[i]=a,this.extend({[Ee.intercept]:s})}};function jC(e,i){const a=e.findIndex(s=>s.id===i);if(a===-1)return null;for(let s=a+1;s<e.length;s+=1)if(e[s].role==="user")return e.slice(0,s);return e.slice()}function Gp(e){for(let i=e.length-1;i>=0;i-=1){const a=e[i];if(a.role==="user")return a.id}return null}function RC(e){const i=new Map;return{isBusy:a=>i.has(a),isIdle:()=>i.size===0,clear(a){const s=i.get(a);s&&i.set(a,{chain:s.chain,token:{}})},clearAll(){for(const[a,s]of i)i.set(a,{chain:s.chain,token:{}})},push(a,s){const o=i.get(a)??{chain:Promise.resolve(),token:{}},u=o.token,p=o.chain.then(()=>i.get(a)?.token===u?e(a,s):void 0,()=>i.get(a)?.token===u?e(a,s):void 0).then(()=>{},()=>{});return i.set(a,{chain:p,token:u}),p.then(()=>{i.get(a)?.chain===p&&i.delete(a)}),p}}}class DC extends zi{static provide="sessions";constructor(i){super(i,"sessions")}current(i){return We.getState().sessions.find(a=>a.id===i)}all(){return We.getState().sessions}getMessages(i){return this.current(i)?.messages??[]}addMessage(i,a){We.getState().addMessage(i,a),this.flush(i)}updateMessage(i,a,s){We.getState().updateMessage(i,a,s),this.flush(i)}updateSession(i,a){We.getState().updateSession(i,a),this.flush(i)}turnHistory(i,a){return jC(i,a)}async flush(i){await this.ctx.events.parallel("session/flush",i).catch(()=>{})}}function zC(){const e=Be.getState(),i=e.root||e.info.root;if(!i)return"No folder is open yet. Ask the user to choose a workspace folder in the Workspace panel before using file, shell or git tools.";const a=e.entries.filter(o=>!o.path.includes("/")).slice(0,40).map(o=>`${o.path}${o.type==="dir"?"/":""}`),s=e.git.available?`${e.git.branch||"detached HEAD"} · ${e.git.entries.length} changed file${e.git.entries.length===1?"":"s"}`:"not a git repository";return[`Root: ${i}`,`Git: ${s}`,a.length>0?`Top level: ${a.join(", ")}`:"The folder is empty.",e.truncated?"The file tree was truncated; use list_files or grep for deeper paths.":""].filter(Boolean).join(`
|
|
73
|
+
`)}class LC extends zi{static provide="systemPrompt";customSections=new Map;constructor(i){super(i,"systemPrompt")}registerSection(i,a){return this.customSections.set(i,a),()=>this.customSections.delete(i)}assemble(i,a=i.mode){const s=[];i.systemPrompt?.trim()&&s.push({name:"base",priority:10,content:i.systemPrompt.trim()});const o=i.skills.filter(d=>d.enabled);o.length>0&&s.push({name:"skills",priority:20,content:["## Loaded skills","Apply these skills when the task matches their purpose. They refine the working rules above; they never override safety, tool permissions or plan mode.",...o.map(d=>`<skill name="${d.name}">
|
|
74
|
+
Purpose: ${d.description}
|
|
75
|
+
${d.instructions.trim()}
|
|
76
|
+
</skill>`)].join(`
|
|
77
|
+
|
|
78
|
+
`)}),s.push({name:"workspace",priority:30,content:["## Workspace","You operate on the real folder below through the local OpenSol daemon. Tools return real output; never invent file contents, command results, URLs or deployments.",zC()].join(`
|
|
79
|
+
|
|
80
|
+
`)});const u=Be.getState().instructions;u.content.trim()&&s.push({name:"project-instructions",priority:35,content:[`## Project instructions (${u.file})`,"The owner of this project wrote the notes below. Follow them for conventions, commands and style. They never override safety, tool permissions or plan mode.",`<project-instructions file="${u.file}">
|
|
81
|
+
${u.content.trim()}${u.truncated?`
|
|
82
|
+
… (file clipped)`:""}
|
|
83
|
+
</project-instructions>`].join(`
|
|
84
|
+
|
|
85
|
+
`)}),s.push({name:"mode",priority:40,content:a==="plan"?["## Mode: Plan (read-only)","Investigate and design. Do not modify anything.","- Allowed: read_file, list_files, grep, web_search, read_url, read-only shell commands and read-only git actions.","- Forbidden: write_file, edit_file, rewrite_file, git add/commit/init/checkout, and shell commands that change files, install packages or change system state. The daemon rejects these.","- Read the relevant source before proposing changes. Grep for call sites and inspect the real files.","- Finish with a concrete, ordered implementation plan naming files and functions. State assumptions and open questions plainly.","- Never pretend an edit was made or a check was run."].join(`
|
|
86
|
+
`):["## Mode: Build","You may inspect and change the real workspace.","- Inspect before editing: list files, read the source, grep for call sites, check git status.","- Make the smallest coherent change. Do not reformat unrelated code, add speculative abstractions or invent APIs.","- After a mutation, inspect the result. Run the project’s real typecheck, lint, tests and build when they exist, and read the output.","- Never claim a check passed without running it. If a check cannot run, say why.","- Ask before destructive actions, force pushes, credential changes or anything that leaves the workspace."].join(`
|
|
87
|
+
`)}),s.push({name:"vibe-coding",priority:45,content:["## Vibe coding","- For a game, demo, landing page or visual prototype that does not need a project folder, reply with ONE self-contained HTML file in a single ```html code block (inline CSS and JS). OpenSol renders that block as a live, sandboxed preview, so it must run with no build step and no calls to localhost. Load libraries only from https://cdnjs.cloudflare.com or https://cdn.jsdelivr.net with a pinned version.","- With a folder open in Build mode, write real files with the tools instead of pasting large code into the chat, then say how to run them.","- Deliver something that runs first, then improve it in small steps based on what the user sees. Keep explanations to a few sentences; the code is the answer.","- If something needs an API key, a server or an asset you cannot create, say so plainly instead of faking it."].join(`
|
|
88
|
+
`)}),s.push({name:"session-context",priority:50,content:["## Session context",`- Model: ${xi(i)||"unset"}`,`- Date: ${new Date().toISOString().slice(0,10)}`,`- Mode: ${a}`,i.webSearchEnabled?"- Web search is enabled. Use it when facts may be current or when the user asks for sources.":"- Web search is turned off for this session.","- Use relative paths from the workspace root. Do not use /workspace paths."].join(`
|
|
89
|
+
`)});for(const d of this.customSections.values()){const p=d(i,a);p&&p.content&&s.push(p)}return this.ctx.events.waterfall("system-prompt/assemble",s,a,()=>(s.sort((d,p)=>d.priority-p.priority),s.map(d=>d.content).filter(Boolean).join(`
|
|
90
|
+
|
|
91
|
+
`)))}buildSubagentPrompt(i){return[this.assemble(i,"plan"),["## Subagent","You are a focused read-only investigator. Work only on the assigned task.","- Inspect the real workspace with read-only file, grep, shell and web tools.","- Do not edit files, change git state or run commands that mutate the machine. The daemon enforces this.","- Be concise: return findings, exact file paths and line references, and any uncertainty.","- Do not repeat the task back. Do not invent evidence. If something cannot be verified, say so."].join(`
|
|
92
|
+
`)].join(`
|
|
93
|
+
|
|
94
|
+
`)}}const IC=new Set(["read_file","list_files","grep","web_search","read_url"]);function R1(e,i){return i==="build"?!0:IC.has(e)||e==="shell"||e==="git"||e==="subagent"}class UC extends zi{static provide="tools";definitions=new Map;constructor(i){super(i,"tools")}register(i){return this.definitions.set(i.name,i),()=>{this.definitions.get(i.name)===i&&this.definitions.delete(i.name)}}get(i){return this.definitions.get(i)}list(){return[...this.definitions.values()]}schemas(i,a="build",{subagent:s=!1}={}){const o=[];for(const u of this.definitions.values())u.name==="subagent"&&s||!i.tools[u.name]?.enabled||!(u.allowedInMode?u.allowedInMode(a):R1(u.name,a))||(u.name==="web_search"||u.name==="read_url")&&!i.webSearchEnabled||o.push({name:u.name,description:u.description,parameters:u.parameters});return o}async execute(i,a,s,o,u,d,p){const m={name:i,args:a,settings:s,mode:o,signal:u,callId:d,turnId:p},g=await this.ctx.events.waterfall("tools/pre-execute",m,async()=>{if(!s.tools[i]?.enabled)return{decision:"deny",reason:"This tool is disabled in Settings → Tools."};const v=this.definitions.get(i);return(v?.allowedInMode?v.allowedInMode(o):R1(i,o))?(i==="web_search"||i==="read_url")&&!s.webSearchEnabled?{decision:"deny",reason:"Web access is turned off for this session."}:{decision:"allow"}:{decision:"deny",reason:"Plan mode is read-only. Do not edit files or change git state. Finish with an implementation plan instead."}});if(g.decision==="deny"){const v={output:g.reason??"Tool call denied.",isError:!0};return this.ctx.events.emit("tools/result",v,m),v}if(u.aborted)throw new DOMException("Aborted","AbortError");const x=await this.ctx.events.waterfall("tools/execute",m,async()=>{const v=this.definitions.get(i);return v?await v.execute(a,m):{output:`Tool "${i}" is not registered.`,isError:!0}}),b=await this.ctx.events.waterfall("tools/post-execute",x,m,async()=>x);return this.ctx.events.emit("tools/result",b,m),b}}const wu=new Map;class BC extends zi{static provide="approval";static inject=["tools"];constructor(i){super(i,"approval"),this.ctx.on("tools/pre-execute",async(a,s)=>a.settings.tools[a.name]?.approval==="ask"&&a.callId&&!await this.waitForApproval(a.callId,a.signal)?{decision:"deny",reason:a.signal.aborted?"Stopped before the tool ran.":"You denied this tool call."}:s())}waitForApproval(i,a){return $C(i,a)}resolveApproval(i,a){cw(i,a)}}function $C(e,i){return i.aborted?Promise.resolve(!1):new Promise(a=>{const s=u=>{const d=wu.get(e);d&&(d.cleanup(),wu.delete(e),a(u))},o=()=>s(!1);i.addEventListener("abort",o,{once:!0}),wu.set(e,{toolCallId:e,resolve:s,cleanup:()=>i.removeEventListener("abort",o)})})}function cw(e,i){wu.get(e)?.resolve(i)}async function*td(e){if(!e.body)throw new Error("The provider returned an empty response body.");const i=e.body.getReader(),a=new TextDecoder;let s="";try{for(;;){const{done:o,value:u}=await i.read();if(o)break;s+=a.decode(u,{stream:!0}),s=s.replace(/\r\n/g,`
|
|
95
|
+
`);let d=s.indexOf(`
|
|
96
|
+
|
|
97
|
+
`);for(;d!==-1;){const p=s.slice(0,d);s=s.slice(d+2);for(const m of p.split(`
|
|
98
|
+
`)){if(!m.startsWith("data:"))continue;const g=m.slice(5).trim();g&&(yield g)}d=s.indexOf(`
|
|
99
|
+
|
|
100
|
+
`)}}for(const o of s.split(`
|
|
101
|
+
`))if(o.startsWith("data:")){const u=o.slice(5).trim();u&&(yield u)}}finally{i.releaseLock()}}function HC(e,i){return e instanceof DOMException&&e.name==="AbortError"?"Stopped.":e instanceof Error?/daemon is not reachable|lost the connection/i.test(e.message)?"The local OpenSol daemon is not reachable. Start it with “npm start”, then try again.":/failed to fetch|networkerror|load failed/i.test(e.message)?`The local daemon could not reach ${i}. Check the network and the provider base URL, then try again.`:/401|403/.test(e.message)&&/key|auth|permission|refus|reject/i.test(e.message)?`${e.message} Check the API key in Settings → Models, or choose a model this key can access.`:e.message:"The request failed for an unknown reason."}const PC=28e3,FC=new Set(["read_file","list_files","grep","web_search","read_url"]);function Gs(e,i=PC){return e.length<=i?e:`${e.slice(0,i)}
|
|
102
|
+
… truncated (${e.length-i} more characters)`}function gi(e){return e&&typeof e=="object"?e:{}}function At(e){return typeof e=="string"?e:""}function Oi(e){return typeof e=="number"&&Number.isFinite(e)?e:void 0}function Vi(e,i){const a=e[i];if(typeof a!="string"||!a.trim())throw new Error(`Missing string argument "${i}".`);return a}function D1(e,i){const a=e[i];return typeof a=="string"?a:void 0}function so(e,i,a){const s=e[i];return typeof s=="number"&&Number.isFinite(s)?s:typeof s=="string"&&Number.isFinite(Number(s))?Number(s):a}function uw(e,i){return i==="build"?!0:FC.has(e)||e==="shell"||e==="git"||e==="subagent"}function nd(e,i="build",{subagent:a=!1}={}){if(an.tools)return an.tools.schemas(e,i,{subagent:a});const s=[{name:"shell",description:"Run a shell command in the workspace root. The working directory resets between calls. Prefer dedicated file and git tools for edits. In Plan mode only read-only commands are accepted.",parameters:{type:"object",properties:{command:{type:"string",description:"The shell command to run."},timeoutMs:{type:"number",description:"Timeout in milliseconds (max 600000)."}},required:["command"],additionalProperties:!1}},{name:"read_file",description:"Read a text file from the workspace. Use offset and limit for large files.",parameters:{type:"object",properties:{path:{type:"string",description:"Relative path from the workspace root."},offset:{type:"number",description:"1-based first line. Defaults to 1."},limit:{type:"number",description:"Maximum lines. Defaults to 400."}},required:["path"],additionalProperties:!1}},{name:"list_files",description:"List files and folders below a workspace path.",parameters:{type:"object",properties:{path:{type:"string",description:"Folder path. Defaults to the workspace root."},depth:{type:"number",description:"Recursion depth, 1–8. Defaults to 3."}},additionalProperties:!1}},{name:"write_file",description:"Create a file or replace its full contents. Prefer edit_file for small changes.",parameters:{type:"object",properties:{path:{type:"string",description:"Relative file path."},content:{type:"string",description:"Complete file content."}},required:["path","content"],additionalProperties:!1}},{name:"edit_file",description:"Replace an exact text occurrence in a file. oldText must match whitespace exactly and be unique unless replaceAll is true.",parameters:{type:"object",properties:{path:{type:"string",description:"Relative file path."},oldText:{type:"string",description:"Exact text to replace."},newText:{type:"string",description:"Replacement text."},replaceAll:{type:"boolean",description:"Replace every occurrence. Defaults to false."}},required:["path","oldText","newText"],additionalProperties:!1}},{name:"rewrite_file",description:"Replace the complete contents of an existing file. Use when most of the file changes.",parameters:{type:"object",properties:{path:{type:"string",description:"Relative file path."},content:{type:"string",description:"The new complete file content."}},required:["path","content"],additionalProperties:!1}},{name:"grep",description:"Search workspace contents with a regular expression. Returns path, line and matching text.",parameters:{type:"object",properties:{pattern:{type:"string",description:"Regular expression to search for."},path:{type:"string",description:"File or folder. Defaults to the workspace root."},ignoreCase:{type:"boolean",description:"Case-insensitive search. Defaults to false."},maxResults:{type:"number",description:"Maximum matches. Defaults to 80."}},required:["pattern"],additionalProperties:!1}},{name:"web_search",description:"Search the web for current information. Returns titles, URLs and snippets. Cite URLs you use.",parameters:{type:"object",properties:{query:{type:"string",description:"Search query."}},required:["query"],additionalProperties:!1}},{name:"read_url",description:"Read a public web page as plain text.",parameters:{type:"object",properties:{url:{type:"string",description:"The http(s) URL to read."}},required:["url"],additionalProperties:!1}},{name:"git",description:"Inspect or change git state. In Plan mode only status, diff, log, show and branch are accepted.",parameters:{type:"object",properties:{action:{type:"string",enum:["status","diff","log","show","branch","add","commit","init","checkout"]},path:{type:"string",description:"Limit diff to this file."},staged:{type:"boolean",description:"Diff the staged changes."},ref:{type:"string",description:"Commit or ref for show."},limit:{type:"number",description:"Log limit."},paths:{type:"array",items:{type:"string"},description:"Files to stage."},message:{type:"string",description:"Commit message."},branch:{type:"string",description:"Branch to create or check out."},create:{type:"boolean",description:"Create a new branch. Defaults to true."}},required:["action"],additionalProperties:!1}}];return a||s.push({name:"subagent",description:"Delegate a focused investigation to a read-only subagent. Use it to explore a large area, trace a bug or verify assumptions without changing files. The subagent returns a concise report.",parameters:{type:"object",properties:{task:{type:"string",description:"The specific question or investigation to perform."},context:{type:"string",description:"Optional context, constraints or files to start from."}},required:["task"],additionalProperties:!1}}),s.filter(o=>!(!e.tools[o.name]?.enabled||!uw(o.name,i)||(o.name==="web_search"||o.name==="read_url")&&!e.webSearchEnabled))}async function qC(){await Be.getState().refresh({treeOnly:!0}).catch(()=>{})}async function z1(){await Be.getState().refresh().catch(()=>{})}function GC(e){const i=Array.isArray(e.entries)?e.entries:[];if(i.length===0)return"This folder is empty.";const a=i.map(o=>{const u=gi(o),d=At(u.path);return u.type==="dir"?`${d}/`:u.type==="link"?`${d} -> link`:`${d}${Oi(u.size)!==void 0?` (${Oi(u.size)} B)`:""}`}),s=e.truncated===!0?`
|
|
103
|
+
… listing truncated. Narrow the path or reduce depth.`:"";return`${At(e.root)?`Root: ${At(e.root)}
|
|
104
|
+
`:""}${a.join(`
|
|
105
|
+
`)}${s}`}function YC(e,i){const a=[`$ ${i}`,At(e.stdout)];At(e.stderr)&&a.push(`stderr:
|
|
106
|
+
${At(e.stderr)}`);const s=Oi(e.code);return s!==void 0&&s!==0&&a.push(`exit code: ${s}`),e.timedOut===!0&&a.push("The command timed out."),a.filter(o=>o!=="").join(`
|
|
107
|
+
`)}function KC(e,i){const a=Array.isArray(e.matches)?e.matches:[];if(a.length===0)return`No matches for ${i}.`;const s=a.map(u=>{const d=gi(u);return`${At(d.file)}:${Oi(d.line)??0}: ${At(d.text)}`}),o=e.truncated===!0?`
|
|
108
|
+
… more matches exist. Narrow the pattern or path.`:"";return s.join(`
|
|
109
|
+
`)+o}function VC(e){const i=[];At(e.current)&&i.push(`Current branch: ${At(e.current)}`),At(e.branches)&&i.push(At(e.branches)),At(e.stdout)&&i.push(At(e.stdout)),At(e.stderr)&&i.push(`stderr:
|
|
110
|
+
${At(e.stderr)}`);const a=Oi(e.code);return a!==void 0&&a!==0&&i.push(`exit code: ${a}`),i.filter(Boolean).join(`
|
|
111
|
+
`)||"Git completed with no output."}async function XC(e,i,a,s,o){if(o.aborted)throw new DOMException("Aborted","AbortError");if(e==="read_file"){const m=Vi(i,"path"),g=gi((await nn("read_file",{path:m},s,o)).result);if(g.binary===!0)return{output:`${m} is binary (${Oi(g.size)??0} bytes).`,isError:!1};const x=Math.max(1,Math.round(so(i,"offset",1))),b=Math.min(Math.max(1,Math.round(so(i,"limit",400))),2e3),v=At(g.content).split(`
|
|
112
|
+
`),y=v.slice(x-1,x-1+b),k=v.length-(x-1+b),N=`${At(g.path)||m} · ${v.length} lines${g.truncated===!0?" · file clipped by daemon":""}`,_=k>0?`
|
|
113
|
+
… ${k} more lines. Read again with offset ${x+b}.`:"";return{output:Gs(`${N}
|
|
114
|
+
────
|
|
115
|
+
${y.join(`
|
|
116
|
+
`)}${_}`),isError:!1}}if(e==="list_files"){const m=gi((await nn("list_files",{path:D1(i,"path")??"",depth:Math.min(Math.max(1,so(i,"depth",3)),8)},s,o)).result);return{output:GC(m),isError:!1}}if(e==="write_file"||e==="rewrite_file"){const m=Vi(i,"path"),g=Vi(i,"content"),x=gi((await nn(e,{path:m,content:g},s,o)).result);return await z1(),{output:`${x.created===!0?"Created":e==="rewrite_file"?"Rewrote":"Updated"} ${At(x.path)||m} · ${g.split(`
|
|
117
|
+
`).length} lines, ${Oi(x.size)??g.length} bytes.`,isError:!1}}if(e==="edit_file"){const m=Vi(i,"path"),g=Vi(i,"oldText"),x=typeof i.newText=="string"?i.newText:"",b=gi((await nn("edit_file",{path:m,oldText:g,newText:x,replaceAll:i.replaceAll===!0},s,o)).result);return await z1(),{output:`Edited ${At(b.path)||m} · ${Oi(b.replacements)??1} replacement${Oi(b.replacements)===1?"":"s"}.`,isError:!1}}if(e==="shell"){const m=Vi(i,"command"),g=gi((await nn("shell",{command:m,timeoutMs:so(i,"timeoutMs",12e4)},s,o)).result);return qC(),{output:Gs(YC(g,m)),isError:(Oi(g.code)??0)!==0||g.timedOut===!0}}if(e==="grep"){const m=Vi(i,"pattern"),g=gi((await nn("grep",{pattern:m,path:D1(i,"path")??"",ignoreCase:i.ignoreCase===!0},s,o)).result),x=Math.min(Math.max(1,Math.round(so(i,"maxResults",80))),200),b=Array.isArray(g.matches)?g.matches.slice(0,x):[],v={...g,matches:b,truncated:g.truncated===!0||Array.isArray(g.matches)&&g.matches.length>x};return{output:Gs(KC(v,m)),isError:!1}}if(e==="web_search"){const m=Vi(i,"query"),g=gi((await nn("web_search",{query:m,provider:a.searchProvider},s,o)).result),x=Array.isArray(g.results)?g.results:[];if(x.length===0)return{output:"No results found.",isError:!1};const b=x.map((v,y)=>{const k=gi(v);return`${y+1}. ${At(k.title)}
|
|
118
|
+
${At(k.url)}${At(k.snippet)?`
|
|
119
|
+
${At(k.snippet)}`:""}`}).join(`
|
|
120
|
+
|
|
121
|
+
`);return{output:Gs(`Search: ${m}
|
|
122
|
+
Provider: ${At(g.provider)||"web"}
|
|
123
|
+
|
|
124
|
+
${b}`),isError:!1}}if(e==="read_url"){const m=Vi(i,"url"),g=gi((await nn("read_url",{url:m},s,o)).result),x=At(g.title);return{output:Gs(`Source: ${At(g.url)||m}${x?`
|
|
125
|
+
Title: ${x}`:""}
|
|
126
|
+
|
|
127
|
+
${At(g.content)}${g.truncated===!0?`
|
|
128
|
+
|
|
129
|
+
… page truncated.`:""}`),isError:!1}}const u=Vi(i,"action"),d={...i};delete d.action;const p=gi((await nn("git",{action:u,...d},s,o)).result);return(u==="add"||u==="commit"||u==="init"||u==="checkout")&&await Be.getState().loadGit().catch(()=>{}),{output:Gs(VC(p)),isError:(Oi(p.code)??0)!==0}}async function ZC(e,i,a,s,o){if(an.tools)return await an.tools.execute(e,i,a,s,o);if(!a.tools[e]?.enabled)return{output:"This tool is disabled in Settings → Tools.",isError:!0};if(!uw(e,s))return{output:"Plan mode is read-only. Do not edit files or change git state. Finish with an implementation plan instead.",isError:!0};if((e==="web_search"||e==="read_url")&&!a.webSearchEnabled)return{output:"Web access is turned off for this session.",isError:!0};if(e==="subagent")return{output:"Subagents are handled by the agent loop.",isError:!0};try{return await XC(e,i,a,s,o)}catch(u){if(u instanceof DOMException&&u.name==="AbortError")throw u;return{output:u instanceof Error?u.message:"The tool failed.",isError:!0}}}function Im(e){return{shell:"Shell",read_file:"Read file",list_files:"List files",write_file:"Write file",edit_file:"Edit file",rewrite_file:"Rewrite file",grep:"Grep",web_search:"Web search",read_url:"Read URL",git:"Git",subagent:"Subagent"}[e]??"Tool"}function dw(e,i){const a=e==="shell"?i.command:e==="grep"?i.pattern:e==="web_search"?i.query:e==="read_url"?i.url:e==="git"?i.action:e==="subagent"?i.task:i.path??"";return typeof a=="string"?a:""}const fw={onText:()=>{},onReasoning:()=>{},onToolCalls:()=>{},onUsage:()=>{}};function _o(e){const i=[e.content];for(const a of e.attachments??[])a.kind==="text"&&a.text&&i.push(`
|
|
130
|
+
|
|
131
|
+
--- Attached file: ${a.name} ---
|
|
132
|
+
${a.text}`);return i.filter(Boolean).join("")}function id(e){return!!(e.content.trim()||e.toolCalls.length>0)}function ad(e){return(e.attachments??[]).filter(i=>i.kind==="image"&&i.dataUrl)}function Um(e,i){if(!e.trim())return{};try{const a=JSON.parse(e);if(a&&typeof a=="object"&&!Array.isArray(a))return a;throw new Error("arguments must be a JSON object")}catch(a){throw new Error(`The model returned invalid arguments for ${i}: ${a.message}`)}}function rd(e,i){return i==="done"?e??"(no output)":i==="denied"?"The user denied this tool call.":i==="error"?`Tool error: ${e??"unknown error"}`:i==="awaiting"?"The tool call was interrupted before approval.":e??"(no output)"}function QC(e){const i=[],a=(s,o)=>{if(o.length===0)return;const u=i[i.length-1];u?.role===s?u.content.push(...o):i.push({role:s,content:o})};for(const s of e){if(s.role==="user"){const o=[];for(const d of ad(s)){const p=/^data:(image\/[a-z0-9.+-]+);base64,(.+)$/i.exec(d.dataUrl??"");p&&o.push({type:"image",source:{type:"base64",media_type:p[1],data:p[2]}})}const u=_o(s);u.trim()&&o.push({type:"text",text:u}),o.length===0&&o.push({type:"text",text:"(empty message)"}),a("user",o);continue}if(s.role==="assistant"){if(!id(s))continue;const o=[];for(const u of s.thinkingBlocks??[])u.signature&&o.push({type:"thinking",thinking:u.text,signature:u.signature});s.content.trim()&&o.push({type:"text",text:s.content});for(const u of s.toolCalls)o.push({type:"tool_use",id:u.id,name:u.name,input:u.args});a("assistant",o);continue}a("user",[{type:"tool_result",tool_use_id:s.call.id,content:rd(s.result,s.status),is_error:s.status==="error"||s.status==="denied"}])}return i}async function pw(e){const{settings:i,model:a,history:s,system:o,mode:u,signal:d,handlers:p}=e,m=i.model.trim();if(!m)throw new Error("Choose a model before sending a message.");const g=mr(a),x=Zu(i.effort,a),b=x!=="none"&&(g.length>0||Tu(a));let v=i.maxTokens,y=0;b&&g.length===0&&Tu(a)&&(y=Pv(x,a),v=Math.max(i.maxTokens,y+1024),a?.maxOutput&&(v=Math.min(v,a.maxOutput)),y=Math.min(y,v-1024),y<1024&&(y=0));const k=nd(i,u).map(L=>({name:L.name,description:L.description,input_schema:L.parameters})),N={model:m,max_tokens:v,system:o,messages:QC(s),stream:!0};if(k.length>0&&(N.tools=k),b&&g.length>0){const L=x==="minimal"?"low":x;N.output_config={effort:L}}else y>0?N.thinking={type:"enabled",budget_tokens:y}:b||(!a||a.temperature)&&(N.temperature=i.temperature);const _=await To(i.provider,"anthropic",m,N,d);let S="",C="",M={};const I=new Map;for await(const L of td(_)){let V;try{V=JSON.parse(L)}catch{continue}const D=V.type;if(D==="error"){const U=V.error;throw new Error(typeof U=="string"?U:U?.message??"Anthropic returned an error.")}if(D==="message_start"){const U=V.message;M={...M,input:U?.usage?.input_tokens};continue}if(D==="content_block_start"){const U=Number(V.index??I.size),ee=V.content_block;I.set(U,{type:String(ee.type??""),text:typeof ee.text=="string"?ee.text:typeof ee.thinking=="string"?ee.thinking:"",signature:typeof ee.signature=="string"?ee.signature:"",id:typeof ee.id=="string"?ee.id:"",name:typeof ee.name=="string"?ee.name:"",json:"",input:ee.input});continue}if(D==="content_block_delta"){const U=Number(V.index??0),ee=I.get(U),ue=V.delta;if(!ee||!ue)continue;ue.type==="text_delta"&&typeof ue.text=="string"?(ee.text+=ue.text,S+=ue.text,p.onText(ue.text)):ue.type==="thinking_delta"&&typeof ue.thinking=="string"?(ee.text+=ue.thinking,C+=ue.thinking,p.onReasoning(ue.thinking)):ue.type==="signature_delta"&&typeof ue.signature=="string"?ee.signature+=ue.signature:ue.type==="input_json_delta"&&typeof ue.partial_json=="string"&&(ee.json+=ue.partial_json);continue}if(D==="message_delta"){const U=V.usage;M={...M,output:U?.output_tokens??M.output},p.onUsage(M);continue}if(D==="message_stop")break}const F=new Set(k.map(L=>L.name)),R=[],A=[];for(const[,L]of[...I.entries()].sort((V,D)=>V[0]-D[0])){if(L.type==="tool_use"&&L.name){if(!F.has(L.name))throw new Error(`The model requested a tool that is not enabled: ${L.name}`);const V=L.json?Um(L.json,L.name):L.input&&typeof L.input=="object"?L.input:{};R.push({id:L.id||`call_${Date.now().toString(36)}_${R.length}`,name:L.name,args:V})}L.type==="thinking"&&L.text&&A.push({text:L.text,signature:L.signature||void 0})}return R.length>0&&p.onToolCalls(R),{content:S,reasoning:C,toolCalls:R,thinkingBlocks:A,usage:M}}function JC(e){const i=[],a=(s,o)=>{if(o.length===0)return;const u=i[i.length-1];u?.role===s?u.parts.push(...o):i.push({role:s,parts:o})};for(const s of e){if(s.role==="user"){const o=[];for(const d of ad(s)){const p=/^data:([^;]+);base64,(.+)$/i.exec(d.dataUrl??"");p&&o.push({inlineData:{mimeType:p[1],data:p[2]}})}const u=_o(s);u.trim()&&o.push({text:u}),o.length===0&&o.push({text:"(empty message)"}),a("user",o);continue}if(s.role==="assistant"){if(!id(s))continue;const o=[];s.content.trim()&&o.push({text:s.content});for(const u of s.toolCalls)o.push({functionCall:{name:u.name,args:u.args},...u.thoughtSignature?{thoughtSignature:u.thoughtSignature}:{}});a("model",o);continue}a("user",[{functionResponse:{name:s.call.name,response:{result:rd(s.result,s.status),...s.status==="error"||s.status==="denied"?{isError:!0}:{}}}}])}return i}function Kh(e){if(Array.isArray(e))return e.map(Kh);if(!e||typeof e!="object")return e;const i={};for(const[a,s]of Object.entries(e))a==="additionalProperties"||a==="$schema"||(i[a]=Kh(s));return i}async function hw(e){const{settings:i,model:a,history:s,system:o,mode:u,signal:d,handlers:p}=e,m=i.model.trim();if(!m)throw new Error("Choose a model before sending a message.");const g=mr(a),x=Zu(i.effort,a),b=Tu(a)?Pv(x,a):0,v=x!=="none"&&(g.length>0||b>0);let y=i.maxTokens;v&&b>0&&(y=Math.max(y,b+2048),a?.maxOutput&&(y=Math.min(y,a.maxOutput)));const k=nd(i,u),N={maxOutputTokens:y};(!a||a.temperature)&&(N.temperature=i.temperature),v&&g.length>0?N.thinkingConfig={thinkingLevel:x.toUpperCase(),includeThoughts:!0}:v&&b>0?N.thinkingConfig={thinkingBudget:Math.min(b,Math.max(1024,y-1024)),includeThoughts:!0}:v&&$v(a)&&(N.thinkingConfig={includeThoughts:!0});const _={systemInstruction:{parts:[{text:o}]},contents:JC(s),generationConfig:N};k.length>0&&(_.tools=[{functionDeclarations:k.map(D=>({name:D.name,description:D.description,parameters:Kh(D.parameters)}))}],_.toolConfig={functionCallingConfig:{mode:"AUTO"}});const S=await To(i.provider,"gemini",m,_,d);let C="",M="",I={},F="";const R=[],A=new Set(k.map(D=>D.name));let L;for await(const D of td(S)){let U;try{U=JSON.parse(D)}catch{continue}const ee=U.error;if(ee?.message)throw new Error(ee.message);const ue=U.promptFeedback;if(ue?.blockReason)throw new Error(`Gemini blocked this request (${ue.blockReason}).`);const re=U.usageMetadata;re&&(I={input:re.promptTokenCount,output:(re.candidatesTokenCount??0)+(re.thoughtsTokenCount??0)||re.candidatesTokenCount},p.onUsage(I));const P=U.candidates?.[0];P?.finishReason&&(F=P.finishReason);for(const ae of P?.content?.parts??[]){const $=typeof ae.thoughtSignature=="string"?ae.thoughtSignature:void 0;$&&(L=$),typeof ae.text=="string"&&ae.text&&(ae.thought===!0?(M+=ae.text,p.onReasoning(ae.text)):(C+=ae.text,p.onText(ae.text)));const de=ae.functionCall;if(de?.name){if(!A.has(de.name))throw new Error(`Gemini requested a tool that is not enabled: ${de.name}`);R.push({name:de.name,args:de.args??{},signature:$??L}),L=void 0}}}if(F==="SAFETY"||F==="RECITATION")throw new Error(`Gemini stopped the response (${F.toLowerCase()}).`);const V=R.map((D,U)=>({id:`gemini_${Date.now().toString(36)}_${U}`,name:D.name,args:D.args,thoughtSignature:D.signature}));return V.length>0&&p.onToolCalls(V),{content:C,reasoning:M,toolCalls:V,usage:I}}function WC(e){const i=[];for(const a of e){if(a.role==="user"){const s=ad(a);if(s.length>0){const o=[{type:"text",text:_o(a)||"See the attached image."}];for(const u of s)o.push({type:"image_url",image_url:{url:u.dataUrl,detail:"auto"}});i.push({role:"user",content:o})}else{const o=_o(a);o.trim()&&i.push({role:"user",content:o})}continue}if(a.role==="assistant"){if(!id(a))continue;const s={role:"assistant",content:a.content||null};a.toolCalls.length>0&&(s.tool_calls=a.toolCalls.map(o=>({id:o.id,type:"function",function:{name:o.name,arguments:JSON.stringify(o.args)}}))),i.push(s);continue}i.push({role:"tool",tool_call_id:a.call.id,content:rd(a.result,a.status)})}return i}function L1(e,i){return e!=="openai"?!1:/^(gpt-5|o[1-9]|codex)/i.test(i)}async function mw(e){const{settings:i,model:a,history:s,system:o,mode:u,signal:d,handlers:p}=e,m=i.model.trim();if(!m)throw new Error("Choose a model before sending a message.");const g=nd(i,u),x=new Set(g.map(R=>R.name)),b=g.map(R=>({type:"function",function:{name:R.name,description:R.description,parameters:R.parameters}})),v={model:m,messages:[{role:"system",content:o},...WC(s)],stream:!0};b.length>0&&(v.tools=b,v.tool_choice="auto"),(i.provider==="openai"||i.provider==="openrouter")&&(v.stream_options={include_usage:!0}),L1(i.provider,m)?v.max_completion_tokens=i.maxTokens:v.max_tokens=i.maxTokens;let k=mr(a).length>0?Zu(i.effort,a):"";k==="none"&&(k=""),k&&(i.provider==="openrouter"?v.reasoning={effort:k}:v.reasoning_effort=k);const N=a?a.temperature:!L1(i.provider,m);!k&&N&&(v.temperature=i.temperature);const _=await To(i.provider,"openai-chat",m,v,d);let S="",C="",M={};const I=new Map;for await(const R of td(_)){if(R==="[DONE]")break;let A;try{A=JSON.parse(R)}catch{continue}if(A.error){const U=A.error;throw new Error(typeof U=="string"?U:U.message??"The provider returned an error.")}if(A.usage&&typeof A.usage=="object"){const U=A.usage;M={input:U.prompt_tokens,output:U.completion_tokens},p.onUsage(M)}const V=A.choices?.[0]?.delta;if(!V)continue;typeof V.content=="string"&&V.content&&(S+=V.content,p.onText(V.content));const D=typeof V.reasoning_content=="string"?V.reasoning_content:typeof V.reasoning=="string"?V.reasoning:(V.reasoning_details??[]).map(U=>U.text??"").join("");D&&(C+=D,p.onReasoning(D));for(const[U,ee]of(V.tool_calls??[]).entries()){const ue=typeof ee.index=="number"?ee.index:U,re=I.get(ue)??{id:"",name:"",arguments:""};ee.id&&(re.id=ee.id),ee.function?.name&&(re.name=ee.function.name),ee.function?.arguments&&(re.arguments+=ee.function.arguments),I.set(ue,re)}}const F=[];for(const[R,A]of[...I.entries()].sort((L,V)=>L[0]-V[0]))if(A.name){if(!x.has(A.name))throw new Error(`The model requested a tool that is not enabled: ${A.name}`);F.push({id:A.id||`call_${Date.now().toString(36)}_${R}`,name:A.name,args:Um(A.arguments,A.name)})}return F.length>0&&p.onToolCalls(F),{content:S,reasoning:C,toolCalls:F,usage:M}}function eA(e){const i=[];for(const a of e){if(a.role==="user"){const s=ad(a),o=_o(a)||(s.length>0?"See the attached image.":"");if(!o.trim()&&s.length===0)continue;if(s.length===0){i.push({role:"user",content:o});continue}const u=[{type:"input_text",text:o}];for(const d of s)u.push({type:"input_image",image_url:d.dataUrl,detail:"auto"});i.push({role:"user",content:u});continue}if(a.role==="assistant"){if(!id(a))continue;a.content.trim()&&i.push({role:"assistant",content:a.content});for(const s of a.toolCalls)i.push({type:"function_call",call_id:s.id,name:s.name,arguments:JSON.stringify(s.args)});continue}i.push({type:"function_call_output",call_id:a.call.id,output:rd(a.result,a.status)})}return i}function Ys(e){return e&&typeof e=="object"?e:{}}async function gw(e){const{settings:i,model:a,history:s,system:o,mode:u,signal:d,handlers:p}=e,m=i.model.trim();if(!m)throw new Error("Choose a model before sending a message.");const g=nd(i,u),x=new Set(g.map(A=>A.name)),b={model:m,instructions:o,input:eA(s),max_output_tokens:i.maxTokens,tool_choice:"auto"};g.length>0&&(b.tools=g.map(A=>({type:"function",name:A.name,description:A.description,parameters:A.parameters,strict:!1})));const y=mr(a).length>0?Zu(i.effort,a):"none";y!=="none"&&(b.reasoning={effort:y});const k=await To(i.provider,"openai-responses",m,b,d);let N="",_="",S={};const C=new Map;let M=0;const I=(A,L)=>{const V=C.get(A),D=typeof L.call_id=="string"?L.call_id:V?.id||A,U=typeof L.name=="string"?L.name:V?.name||"",ee=typeof L.arguments=="string"?L.arguments:V?.args||"";C.set(A,{id:D,name:U,args:ee,order:V?.order??M++})};for await(const A of td(k)){if(A==="[DONE]")break;let L;try{L=JSON.parse(A)}catch{continue}const V=typeof L.type=="string"?L.type:"";if(V==="error"||V==="response.failed"){const D=Ys(L.response).error??L.error??L.message,U=Ys(D);throw new Error(typeof D=="string"?D:typeof U.message=="string"?U.message:"The model request failed.")}if(V==="response.output_text.delta"&&typeof L.delta=="string"){N+=L.delta,p.onText(L.delta);continue}if((V==="response.reasoning_summary_text.delta"||V==="response.reasoning_text.delta")&&typeof L.delta=="string"){_+=L.delta,p.onReasoning(L.delta);continue}if(V==="response.output_item.added"){const D=Ys(L.item);if(D.type==="function_call"){const U=typeof D.id=="string"?D.id:typeof D.call_id=="string"?D.call_id:"";U&&I(U,D)}continue}if(V==="response.function_call_arguments.delta"){const D=typeof L.item_id=="string"?L.item_id:"",U=D?C.get(D):void 0;U&&typeof L.delta=="string"&&(U.args+=L.delta);continue}if(V==="response.function_call_arguments.done"){const D=typeof L.item_id=="string"?L.item_id:"",U=D?C.get(D):void 0;U&&typeof L.arguments=="string"&&(U.args=L.arguments);continue}if(V==="response.output_item.done"){const D=Ys(L.item);if(D.type==="function_call"){const U=typeof D.id=="string"?D.id:typeof D.call_id=="string"?D.call_id:"";U&&I(U,D)}continue}if(V==="response.completed"){const D=Ys(L.response),U=Ys(D.usage);(typeof U.input_tokens=="number"||typeof U.output_tokens=="number")&&(S={input:Number(U.input_tokens)||void 0,output:Number(U.output_tokens)||void 0},p.onUsage(S))}}const F=[],R=[...C.entries()].sort((A,L)=>A[1].order-L[1].order);for(const[A,L]of R)if(L.name){if(!x.has(L.name))throw new Error(`The model requested a tool that is not enabled: ${L.name}`);F.push({id:L.id||A,name:L.name,args:Um(L.args,L.name)})}return F.length>0&&p.onToolCalls(F),{content:N,reasoning:_,toolCalls:F,usage:S}}const go=[],bw=600*1e3,Nn=Wr()((e,i)=>({byProvider:{},loading:{},errors:{},notes:{},source:{},fetchedAt:{},fetchModels:async(a,s=!1)=>{if(i().loading[a])return i().byProvider[a]??go;if(!s){const o=i().byProvider[a]??go,u=i().fetchedAt[a]??0;if(o.length>0&&Date.now()-u<bw)return o}e(o=>({loading:{...o.loading,[a]:!0},errors:{...o.errors,[a]:""}}));try{const o=await BT(a);return e(u=>({byProvider:{...u.byProvider,[a]:o.models},loading:{...u.loading,[a]:!1},errors:{...u.errors,[a]:""},notes:{...u.notes,[a]:o.note||o.catalogError||""},source:{...u.source,[a]:o.source},fetchedAt:{...u.fetchedAt,[a]:o.fetchedAt||Date.now()}})),o.models}catch(o){const u=o instanceof Error?o.message:"Could not load models from this provider.";return e(d=>({loading:{...d.loading,[a]:!1},errors:{...d.errors,[a]:u},source:{...d.source,[a]:""}})),i().byProvider[a]??go}}}));function tA(e){return Nn(i=>i.byProvider[e])??go}function sd(){const e=Re(a=>a.provider),i=Re(a=>a.model);return Nn(a=>i?a.byProvider[e]?.find(s=>s.id===i)??null:null)}function ld(e,i){return i?Nn.getState().byProvider[e]?.find(a=>a.id===i)??null:null}function nA(){const e=Re(a=>a.hydrated),i=Re(a=>a.provider);q.useEffect(()=>{if(!e)return;const a=Re.getState();if(!rl(a))return;const s=Nn.getState(),o=s.byProvider[i]??go,u=s.fetchedAt[i]??0;o.length>0&&Date.now()-u<bw||s.fetchModels(i)},[e,i])}function xw(e,i,a){if(a?.apiKind)return a.apiKind;const s=ji[e];if(e!=="opencode")return s?.format==="anthropic"?"anthropic":s?.format==="gemini"?"gemini":"openai-chat";const o=i.toLowerCase();return/gemini|gemma/.test(o)?"gemini":/claude|qwen.*(flash|plus)/.test(o)?"anthropic":/gpt|grok|muse|codex/.test(o)?"openai-responses":"openai-chat"}class iA extends zi{static provide="llm";constructor(i){super(i,"llm")}async stream(i){return await this.ctx.events.waterfall("agent/request",i,async()=>{switch(xw(i.settings.provider,i.settings.model,i.model)){case"anthropic":return await pw(i);case"gemini":return await hw(i);case"openai-responses":return await gw(i);default:return await mw(i)}})}}function yw(e){switch(xw(e.settings.provider,e.settings.model,e.model)){case"anthropic":return pw(e);case"gemini":return hw(e);case"openai-responses":return gw(e);default:return mw(e)}}const aA=`You are a session compactor. Your ONLY job is to produce a detailed, structured summary of the conversation you are given. This summary will replace the original messages so the AI agent can continue the task without losing important context.
|
|
133
|
+
|
|
134
|
+
The summary MUST include, in clear sections:
|
|
135
|
+
|
|
136
|
+
## Task & Goal
|
|
137
|
+
What the user originally asked for. The full scope, requirements, and any constraints they stated.
|
|
138
|
+
|
|
139
|
+
## Work Completed So Far
|
|
140
|
+
Every meaningful action taken: files read, files created or modified (list each file path and what changed), commands run (and their output), API calls made, decisions reached, bugs found and fixed.
|
|
141
|
+
|
|
142
|
+
## Current State
|
|
143
|
+
What is the exact state of the workspace right now? Which files are in what state? What has been verified to work? What is broken or incomplete?
|
|
144
|
+
|
|
145
|
+
## Open Tasks & Next Steps
|
|
146
|
+
What remains to be done? List concrete next actions with enough detail that the agent can pick up exactly where things left off.
|
|
147
|
+
|
|
148
|
+
## Key Facts & Decisions
|
|
149
|
+
Important technical facts discovered during the session: library versions, APIs used, architectural decisions made, pitfalls encountered.
|
|
150
|
+
|
|
151
|
+
## Files Modified or Created
|
|
152
|
+
An exhaustive list of every file path that was touched and a one-line description of what was done.
|
|
153
|
+
|
|
154
|
+
Be exhaustive and precise. Do not summarize tool output vaguely — include actual file paths, function names, error messages, command outputs. The agent continuing the work must be able to act on this summary without access to the original messages.`,ku=new Set;function vw(e){return ku.has(e)}async function rA(e){if(ku.has(e))return!1;ku.add(e);try{const i=We.getState().sessions.find(k=>k.id===e);if(!i||i.messages.length<4)return!1;const a=Re.getState(),s=xi(a);if(!s)return!1;const o=ld(a.provider,s),u=sA(i.messages),d=[{id:Mi("msg"),role:"user",content:`Below is a complete transcript of a coding session. Produce the detailed summary as instructed.
|
|
155
|
+
|
|
156
|
+
${u}`,createdAt:Date.now()}];let p="";try{const k=await yw({settings:a,model:o,history:d,system:aA,mode:"build",signal:new AbortController().signal,handlers:{...fw,onText:N=>{p+=N}}});k.content.trim()&&(p=k.content)}catch(k){return window.dispatchEvent(new CustomEvent("maxcode:notice",{detail:{message:`Auto-compact failed: ${k instanceof Error?k.message:"Unknown error"}. Continuing with full context.`,tone:"error"}})),!1}if(!p.trim())return!1;const m=i.messages.find(k=>k.role==="user"),g=Date.now(),x=[];m&&x.push({...m});const b={id:Mi("msg"),role:"assistant",content:p.trim(),reasoning:"",toolCalls:[],round:0,model:s,provider:a.provider,createdAt:g,durationMs:0};x.push(b);const v=lA(i.messages),y={id:Mi("msg"),role:"user",content:v,createdAt:g};return x.push(y),We.getState().updateSession(e,{messages:x}),window.dispatchEvent(new CustomEvent("maxcode:notice",{detail:{message:"✦ Context compacted — session summary saved, continuing with fresh context.",tone:"success"}})),!0}finally{ku.delete(e)}}function sA(e){const i=[];for(const a of e)if(a.role==="user"){const s=a.attachments&&a.attachments.length>0?`
|
|
157
|
+
[Attachments: ${a.attachments.map(o=>o.name).join(", ")}]`:"";i.push(`[USER]
|
|
158
|
+
${a.content}${s}`)}else if(a.role==="assistant"){const s=[];a.reasoning.trim()&&s.push(`<thinking>
|
|
159
|
+
${a.reasoning.trim()}
|
|
160
|
+
</thinking>`),a.content.trim()&&s.push(a.content.trim());for(const o of a.toolCalls)s.push(`<tool_call name="${o.name}">
|
|
161
|
+
${JSON.stringify(o.args,null,2)}
|
|
162
|
+
</tool_call>`);s.length>0&&i.push(`[ASSISTANT]
|
|
163
|
+
${s.join(`
|
|
164
|
+
|
|
165
|
+
`)}`)}else if(a.role==="tool"){const s=a.status==="done"?"OK":a.status.toUpperCase(),o=(a.result??"").slice(0,8e3),u=(a.result??"").length>8e3?`
|
|
166
|
+
… (truncated)`:"";i.push(`[TOOL: ${a.call.name} — ${s}]
|
|
167
|
+
${o}${u}`)}return i.join(`
|
|
168
|
+
|
|
169
|
+
---
|
|
170
|
+
|
|
171
|
+
`)}function lA(e){const s=[...e].reverse().find(d=>d.role==="user")?.content?.trim()??"",o=e.filter(d=>d.role==="tool").length;return[`[CONTEXT COMPACTED — ${e.filter(d=>d.role==="user").length} user turns, ${o} tool calls summarised above]`,"","The summary above contains the full record of work done so far. Please:","1. Read the summary carefully before acting — it contains critical state information.","2. Continue exactly where you left off.","3. Do not repeat work already marked as completed in the summary.",s?`
|
|
172
|
+
The most recent task/request was:
|
|
173
|
+
${s}`:""].filter(d=>d!==void 0).join(`
|
|
174
|
+
`)}const Yp=3;function oA(e){if(e.role==="user"){const i=(e.attachments??[]).reduce((a,s)=>a+(s.text?.length??0),0);return Math.ceil((e.content.length+i)/Yp)+4}if(e.role==="assistant"){const i=e.toolCalls.reduce((a,s)=>a+JSON.stringify(s.args).length+s.name.length+10,0);return Math.ceil((e.content.length+e.reasoning.length+i)/Yp)+4}return Math.ceil((e.result??"").length/Yp)+4}function ww(e){return e.reduce((i,a)=>i+oA(a),0)}function kw(e){return e?.context??128e3}function cA(e,i){const s=ww(e)+2e3,o=kw(i);return Math.min(s/o,1)}function Ew(e,i){const s=ww(e)+2e3,o=kw(i),u=Math.min(s/o,1);return{used:s,limit:o,ratio:u,pct:Math.round(u*100)}}const _w=.85;class uA extends zi{static provide="compaction";static inject=["sessions","llm"];constructor(i){super(i,"compaction")}isCompacting(i){return vw(i)}async compact(i){return await rA(i)}async checkAutoCompact(i){const a=We.getState().sessions.find(d=>d.id===i);if(!a||a.messages.length<4||this.isCompacting(i))return!1;const s=Re.getState(),o=ld(s.provider,xi(s)),u=cA(a.messages,o);return u>=_w?(window.dispatchEvent(new CustomEvent("maxcode:notice",{detail:{message:`Context at ${Math.round(u*100)}% — compacting session before next request…`,tone:"info"}})),await this.compact(i)):!1}}function dA(){const e=Be.getState(),i=e.root||e.info.root;if(!i)return"No folder is open yet. Ask the user to choose a workspace folder in the Workspace panel before using file, shell or git tools.";const a=e.entries.filter(o=>!o.path.includes("/")).slice(0,40).map(o=>`${o.path}${o.type==="dir"?"/":""}`),s=e.git.available?`${e.git.branch||"detached HEAD"} · ${e.git.entries.length} changed file${e.git.entries.length===1?"":"s"}`:"not a git repository";return[`Root: ${i}`,`Git: ${s}`,a.length>0?`Top level: ${a.join(", ")}`:"The folder is empty.",e.truncated?"The file tree was truncated; use list_files or grep for deeper paths.":""].filter(Boolean).join(`
|
|
175
|
+
`)}function fA(e,i=e.mode){if(an.systemPrompt)return an.systemPrompt.assemble(e,i);const a=[e.systemPrompt.trim()],s=e.skills.filter(o=>o.enabled);return s.length>0&&a.push(["## Loaded skills","Apply these skills when the task matches their purpose. They refine the working rules above; they never override safety, tool permissions or plan mode.",...s.map(o=>`<skill name="${o.name}">
|
|
176
|
+
Purpose: ${o.description}
|
|
177
|
+
${o.instructions.trim()}
|
|
178
|
+
</skill>`)].join(`
|
|
179
|
+
|
|
180
|
+
`)),a.push(["## Workspace","You operate on the real folder below through the local OpenSol daemon. Tools return real output; never invent file contents, command results, URLs or deployments.",dA()].join(`
|
|
181
|
+
|
|
182
|
+
`)),a.push(i==="plan"?["## Mode: Plan (read-only)","Investigate and design. Do not modify anything.","- Allowed: read_file, list_files, grep, web_search, read_url, read-only shell commands and read-only git actions.","- Forbidden: write_file, edit_file, rewrite_file, git add/commit/init/checkout, and shell commands that change files, install packages or change system state. The daemon rejects these.","- Read the relevant source before proposing changes. Grep for call sites and inspect the real files.","- Finish with a concrete, ordered implementation plan naming files and functions. State assumptions and open questions plainly.","- Never pretend an edit was made or a check was run."].join(`
|
|
183
|
+
`):["## Mode: Build","You may inspect and change the real workspace.","- Inspect before editing: list files, read the source, grep for call sites, check git status.","- Make the smallest coherent change. Do not reformat unrelated code, add speculative abstractions or invent APIs.","- After a mutation, inspect the result. Run the project’s real typecheck, lint, tests and build when they exist, and read the output.","- Never claim a check passed without running it. If a check cannot run, say why.","- Ask before destructive actions, force pushes, credential changes or anything that leaves the workspace."].join(`
|
|
184
|
+
`)),a.push(["## Session context",`- Model: ${xi(e)||"unset"}`,`- Date: ${new Date().toISOString().slice(0,10)}`,`- Mode: ${i}`,e.webSearchEnabled?"- Web search is enabled. Use it when facts may be current or when the user asks for sources.":"- Web search is turned off for this session.","- Use relative paths from the workspace root. Do not use /workspace paths."].join(`
|
|
185
|
+
`)),a.filter(Boolean).join(`
|
|
186
|
+
|
|
187
|
+
`)}function pA(e){return[fA(e,"plan"),["## Subagent","You are a focused read-only investigator. Work only on the assigned task.","- Inspect the real workspace with read-only file, grep, shell and web tools.","- Do not edit files, change git state or run commands that mutate the machine. The daemon enforces this.","- Be concise: return findings, exact file paths and line references, and any uncertainty.","- Do not repeat the task back. Do not invent evidence. If something cannot be verified, say so."].join(`
|
|
188
|
+
`)].join(`
|
|
189
|
+
|
|
190
|
+
`)}const I1=6;function Kp(e){const i=typeof crypto<"u"&&"randomUUID"in crypto?crypto.randomUUID():`${Date.now().toString(36)}-${Math.random().toString(36).slice(2,9)}`;return`${e}_${i}`}function Vp(){return new DOMException("Aborted","AbortError")}async function hA(e,i,a){const s=e.trim();if(!s)return"The subagent was not given a task.";if(a.aborted)throw Vp();const o=Re.getState(),u=ld(o.provider,o.model),d=pA(o),p=Date.now(),g=[{id:Kp("sub"),role:"user",content:[`Task: ${s}`,i.trim()?`
|
|
191
|
+
Context from the main agent:
|
|
192
|
+
${i.trim()}`:"",`
|
|
193
|
+
Investigate now. Return a concise report with file paths and evidence.`].filter(Boolean).join(`
|
|
194
|
+
`),createdAt:p}];let x="";for(let b=0;b<I1;b+=1){if(a.aborted)throw Vp();const v=await yw({settings:o,model:u,history:g,system:d,mode:"plan",signal:a,handlers:fw});v.content.trim()&&(x=v.content.trim());const y={id:Kp("submsg"),role:"assistant",content:v.content,reasoning:v.reasoning,thinkingBlocks:v.thinkingBlocks,toolCalls:v.toolCalls,round:b,createdAt:Date.now()};if(g.push(y),v.toolCalls.length===0)return y.content.trim()||"The subagent returned no report.";if(a.aborted)throw Vp();for(const k of v.toolCalls){const N=await ZC(k.name,k.args,o,"plan",a),_={id:Kp("subtool"),role:"tool",call:k,status:N.isError?"error":"done",result:N.output,round:b,createdAt:Date.now()};g.push(_)}}return[x,`The subagent stopped after ${I1} investigation rounds. Continue with the evidence above or ask a narrower question.`].filter(Boolean).join(`
|
|
195
|
+
|
|
196
|
+
`)}class mA extends zi{static provide="subagents";static inject=["tools","llm","systemPrompt"];constructor(i){super(i,"subagents")}async run(i,a,s){return await hA(i,a,s)}}const Vh=e=>`maxcode-plugin-theme-${e}`;function gA(e){return Object.entries(e).filter(([i,a])=>/^[a-z][a-z0-9-]*$/.test(i)&&/^[\d\s.]+$/.test(a))}function bA(e){const i=(e.canvas??"").trim().split(/\s+/).map(Number),[a,s,o]=i.length===3?i:[255,255,255];return .2126*a+.7152*s+.0722*o<110}function xA(e,i){const a=gA(i).map(([s,o])=>`--${s}:${o.trim()}`);return a.length===0?"":`[data-theme='${e}']{${a.join(";")}}`}function yA(e,i){if(typeof document>"u")return;let a=document.getElementById(Vh(e));a||(a=document.createElement("style"),a.id=Vh(e),document.head.append(a)),a.textContent=i}function vA(e){typeof document>"u"||document.getElementById(Vh(e))?.remove()}class wA extends zi{static provide="ui";_commands=new Map;_panels=new Map;_themes=new Map;constructor(i){super(i,"ui")}registerCommand(i,a,s){const o={id:i,label:a,run:s};return this._commands.set(i,o),()=>{this._commands.get(i)===o&&this._commands.delete(i)}}registerPanel(i,a,s){const o={id:i,label:a,render:s};return this._panels.set(i,o),()=>{this._panels.get(i)===o&&this._panels.delete(i)}}registerTheme(i,a,s){const o={id:i,label:a,palette:s};return this._themes.set(i,o),Gv({id:i,label:a,dark:bA(s)}),yA(i,xA(i,s)),()=>{this._themes.get(i)===o&&(this._themes.delete(i),Yv(i),vA(i))}}commands(){return[...this._commands.values()]}panels(){return[...this._panels.values()]}themes(){return[...this._themes.values()].map(i=>({id:i.id,label:i.label}))}}const Xp=16,U1=2,kA=/\b(429|500|502|503|504|529)\b|rate.?limit|overloaded|temporar|timed out|could not be reached|lost the connection|failed to fetch|networkerror/i;function EA(e,i){return new Promise(a=>{const s=()=>{window.clearTimeout(o),i.removeEventListener("abort",s),a()},o=window.setTimeout(s,e);i.addEventListener("abort",s,{once:!0})})}function B1(e){return e instanceof DOMException&&e.name==="AbortError"||e instanceof Error&&e.name==="AbortError"}function _A(e,i=4e4){return e.length<=i?e:`${e.slice(0,i)}
|
|
197
|
+
… truncated (${e.length-i} more characters)`}class NA extends zi{static provide="agentLoop";static inject=["sessions","systemPrompt","tools","llm","approval","compaction","subagents"];controllers=new Map;queue=RC((i,a)=>this.runTurn(i,a));constructor(i){super(i,"agentLoop")}isBusy(i){return this.queue.isBusy(i)}stopRun(i){this.queue.clear(i),this.controllers.get(i)?.abort(),this.ctx.events.serial("agent/turn-stopping",i)}stopAllRuns(){this.queue.clearAll(),this.controllers.forEach((i,a)=>{i.abort(),this.ctx.events.serial("agent/turn-stopping",a)})}runAgent(i,a){const s=this.ctx.sessions.current(i);if(!s)return;const o=a??Gp(s.messages);o&&this.queue.push(i,o)}regenerateLastTurn(i){const a=this.ctx.sessions.current(i);if(!a||this.queue.isBusy(i))return!1;let s=-1;for(let u=a.messages.length-1;u>=0;u-=1)if(a.messages[u].role==="user"){s=u;break}if(s<0)return!1;const o=a.messages[s].id;return this.ctx.sessions.updateSession(i,{messages:a.messages.slice(0,s+1)}),this.runAgent(i,o),!0}async runTurn(i,a){const s=this.ctx.sessions.current(i);if(!s||!this.ctx.sessions.turnHistory(s.messages,a))return;const o=new AbortController;this.controllers.set(i,o),Au.getState().setStreaming(i,!0);const u=Re.getState(),d=Am(u.provider),p=s.mode??u.mode,m=Date.now();let g=0,x;try{e:for(let v=0;v<Xp&&(g=v+1,!o.signal.aborted);v+=1){let y=this.ctx.sessions.current(i);if(!y)break;if(v===0&&Gp(y.messages)===a&&await this.ctx.compaction.checkAutoCompact(i)){const ee=this.ctx.sessions.current(i);if(!ee)break;const ue=Gp(ee.messages);if(!ue)break;a=ue,y=ee}const k=this.ctx.sessions.turnHistory(y.messages,a);if(!k)break;const N=Mi("msg"),_={id:N,role:"assistant",content:"",reasoning:"",toolCalls:[],round:v,model:xi(u),provider:u.provider,createdAt:Date.now()};this.ctx.sessions.addMessage(i,_);let S="",C="",M,I={};const F=()=>{M===void 0&&(M=window.setTimeout(()=>{M=void 0,this.ctx.sessions.updateMessage(i,N,{content:S,reasoning:C})},40))},R={sessionId:i,round:v,history:k,settings:u,mode:p,signal:o.signal,assistantId:N};await this.ctx.events.waterfall("agent/pre-step",R,()=>{});let A,L=0;for(;;)try{A=await this.ctx.llm.stream({settings:u,model:ld(u.provider,xi(u)),history:k,system:this.ctx.systemPrompt.assemble(u,p),mode:p,signal:o.signal,handlers:{onText:U=>{S+=U,F()},onReasoning:U=>{C+=U,F()},onToolCalls:()=>{},onUsage:U=>{I=U}}});break}catch(U){const ee=B1(U)||o.signal.aborted;if(!ee&&L<U1&&!S&&!C&&kA.test(U instanceof Error?U.message:"")){if(L+=1,window.dispatchEvent(new CustomEvent("maxcode:notice",{detail:{message:`${d} is busy. Retrying (${L}/${U1})…`,tone:"info"}})),await EA(1200*L*L,o.signal),o.signal.aborted)continue;continue}M!==void 0&&window.clearTimeout(M),x=ee?void 0:HC(U,d),this.ctx.sessions.updateMessage(i,N,{content:S,reasoning:C,stopped:ee,durationMs:Date.now()-m,error:x}),await this.ctx.events.waterfall("agent/request-error",U,R,()=>{});break e}if(M!==void 0&&window.clearTimeout(M),this.ctx.sessions.updateMessage(i,N,{content:A.content,reasoning:A.reasoning,thinkingBlocks:A.thinkingBlocks,toolCalls:A.toolCalls,usage:I.input||I.output?I:A.usage,durationMs:Date.now()-m,stopped:o.signal.aborted||void 0}),this.ctx.sessions.updateSession(i,{provider:u.provider,model:xi(u),mode:p}),o.signal.aborted)break;if(A.toolCalls.length===0){const U={sessionId:i,round:v,assistant:_,toolResults:[],stopped:o.signal.aborted};this.ctx.events.emit("agent/step-finish",U);break}const V=[];for(const U of A.toolCalls){if(o.signal.aborted)break;const ee=u.tools[U.name];if(!ee?.enabled){const ae={id:Mi("tool"),role:"tool",call:U,status:"error",result:"This tool is disabled in Settings → Tools.",round:v,createdAt:Date.now()};this.ctx.sessions.addMessage(i,ae),V.push(ae);continue}const ue=Mi("tool"),re=ee.approval==="ask",ne={id:ue,role:"tool",call:U,status:re?"awaiting":"running",round:v,createdAt:Date.now()};this.ctx.sessions.addMessage(i,ne);const P=Date.now();try{const ae=U.name==="subagent"?{output:_A(await this.ctx.subagents.run(typeof U.args.task=="string"?U.args.task:"",typeof U.args.context=="string"?U.args.context:"",o.signal)),isError:!1}:await this.ctx.tools.execute(U.name,U.args,u,p,o.signal,U.id,a),$={...ne,status:ae.isError?"error":"done",result:ae.output,durationMs:Date.now()-P};this.ctx.sessions.updateMessage(i,ue,$),V.push($)}catch(ae){const $=B1(ae),de={...ne,status:"error",result:$?"Stopped.":ae instanceof Error?ae.message:"The tool failed.",durationMs:Date.now()-P};if(this.ctx.sessions.updateMessage(i,ue,de),V.push(de),$)break}}const D={sessionId:i,round:v,assistant:_,toolResults:V,stopped:o.signal.aborted};if(this.ctx.events.emit("agent/step-finish",D),o.signal.aborted){const U=this.ctx.sessions.current(i);if(U){const ee=new Set(U.messages.filter(ue=>ue.role==="tool").map(ue=>ue.call.id));for(const ue of A.toolCalls)ee.has(ue.id)||this.ctx.sessions.addMessage(i,{id:Mi("tool"),role:"tool",call:ue,status:"error",result:"Stopped before the tool ran.",round:v,createdAt:Date.now()})}break}}const b=this.ctx.sessions.current(i);if(!o.signal.aborted&&b&&b.messages[b.messages.length-1]?.role==="tool"){const y={id:Mi("msg"),role:"assistant",content:"",reasoning:"",toolCalls:[],round:Xp,createdAt:Date.now(),error:`Stopped after ${Xp} tool rounds. Send another message to continue.`};this.ctx.sessions.addMessage(i,y)}}finally{this.controllers.delete(i),Au.getState().setStreaming(i,!1);const b={sessionId:i,userMessageId:a,rounds:g,durationMs:Date.now()-m,stopped:o.signal.aborted,error:x};this.ctx.events.emit("agent/turn-finish",b)}}}const SA=28e3;function TA(e,i=SA){return e.length<=i?e:`${e.slice(0,i)}
|
|
198
|
+
… truncated (${e.length-i} more characters)`}function Xs(e){return e&&typeof e=="object"?e:{}}function dr(e){return typeof e=="string"?e:""}function Pr(e){return typeof e=="number"&&Number.isFinite(e)?e:void 0}function Br(e,i){const a=e[i];if(typeof a!="string"||!a.trim())throw new Error(`Missing string argument "${i}".`);return a}function CA(e,i){const a=e[i];return typeof a=="string"?a:void 0}function Zp(e,i,a){const s=e[i];return typeof s=="number"&&Number.isFinite(s)?s:typeof s=="string"&&Number.isFinite(Number(s))?Number(s):a}function AA(e){const i=Array.isArray(e.entries)?e.entries:[];if(i.length===0)return"This folder is empty.";const a=i.map(o=>{const u=Xs(o),d=dr(u.path);return u.type==="dir"?`${d}/`:u.type==="link"?`${d} -> link`:`${d}${Pr(u.size)!==void 0?` (${Pr(u.size)} B)`:""}`}),s=e.truncated===!0?`
|
|
199
|
+
… listing truncated. Narrow the path or reduce depth.`:"";return`${dr(e.root)?`Root: ${dr(e.root)}
|
|
200
|
+
`:""}${a.join(`
|
|
201
|
+
`)}${s}`}async function Qp(){await Be.getState().refresh().catch(()=>{})}const OA="tool-fs",MA=["tools"];function jA(e){const i=[e.tools.register({name:"read_file",description:"Read a text file from the workspace. Use offset and limit for large files.",parameters:{type:"object",properties:{path:{type:"string",description:"Relative path from the workspace root."},offset:{type:"number",description:"1-based first line. Defaults to 1."},limit:{type:"number",description:"Maximum lines. Defaults to 400."}},required:["path"],additionalProperties:!1},allowedInMode:()=>!0,async execute(a,s){const o=Br(a,"path"),u=Xs((await nn("read_file",{path:o},s.mode,s.signal)).result);if(u.binary===!0)return{output:`${o} is binary (${Pr(u.size)??0} bytes).`,isError:!1};const d=Math.max(1,Math.round(Zp(a,"offset",1))),p=Math.min(Math.max(1,Math.round(Zp(a,"limit",400))),2e3),m=dr(u.content).split(`
|
|
202
|
+
`),g=m.slice(d-1,d-1+p),x=m.length-(d-1+p),b=`${dr(u.path)||o} · ${m.length} lines${u.truncated===!0?" · file clipped by daemon":""}`,v=x>0?`
|
|
203
|
+
… ${x} more lines. Read again with offset ${d+p}.`:"";return{output:TA(`${b}
|
|
204
|
+
────
|
|
205
|
+
${g.join(`
|
|
206
|
+
`)}${v}`),isError:!1}}}),e.tools.register({name:"list_files",description:"List files and folders below a workspace path.",parameters:{type:"object",properties:{path:{type:"string",description:"Folder path. Defaults to the workspace root."},depth:{type:"number",description:"Recursion depth, 1–8. Defaults to 3."}},additionalProperties:!1},allowedInMode:()=>!0,async execute(a,s){const o=Xs((await nn("list_files",{path:CA(a,"path")??"",depth:Math.min(Math.max(1,Zp(a,"depth",3)),8)},s.mode,s.signal)).result);return{output:AA(o),isError:!1}}}),e.tools.register({name:"write_file",description:"Create a file or replace its full contents. Prefer edit_file for small changes.",parameters:{type:"object",properties:{path:{type:"string",description:"Relative file path."},content:{type:"string",description:"Complete file content."}},required:["path","content"],additionalProperties:!1},allowedInMode:a=>a==="build",async execute(a,s){const o=Br(a,"path"),u=Br(a,"content"),d=Xs((await nn("write_file",{path:o,content:u},s.mode,s.signal,s.turnId)).result);return await Qp(),{output:`${d.created===!0?"Created":"Updated"} ${dr(d.path)||o} · ${u.split(`
|
|
207
|
+
`).length} lines, ${Pr(d.size)??u.length} bytes.`,isError:!1}}}),e.tools.register({name:"rewrite_file",description:"Replace the complete contents of an existing file. Use when most of the file changes.",parameters:{type:"object",properties:{path:{type:"string",description:"Relative file path."},content:{type:"string",description:"The new complete file content."}},required:["path","content"],additionalProperties:!1},allowedInMode:a=>a==="build",async execute(a,s){const o=Br(a,"path"),u=Br(a,"content"),d=Xs((await nn("rewrite_file",{path:o,content:u},s.mode,s.signal,s.turnId)).result);return await Qp(),{output:`Rewrote ${dr(d.path)||o} · ${u.split(`
|
|
208
|
+
`).length} lines, ${Pr(d.size)??u.length} bytes.`,isError:!1}}}),e.tools.register({name:"edit_file",description:"Replace an exact text occurrence in a file. oldText must match whitespace exactly and be unique unless replaceAll is true.",parameters:{type:"object",properties:{path:{type:"string",description:"Relative file path."},oldText:{type:"string",description:"Exact text to replace."},newText:{type:"string",description:"Replacement text."},replaceAll:{type:"boolean",description:"Replace every occurrence. Defaults to false."}},required:["path","oldText","newText"],additionalProperties:!1},allowedInMode:a=>a==="build",async execute(a,s){const o=Br(a,"path"),u=Br(a,"oldText"),d=typeof a.newText=="string"?a.newText:"",p=Xs((await nn("edit_file",{path:o,oldText:u,newText:d,replaceAll:a.replaceAll===!0},s.mode,s.signal,s.turnId)).result);return await Qp(),{output:`Edited ${dr(p.path)||o} · ${Pr(p.replacements)??1} replacement${Pr(p.replacements)===1?"":"s"}.`,isError:!1}}})];return()=>i.forEach(a=>a())}const RA=Object.freeze(Object.defineProperty({__proto__:null,apply:jA,inject:MA,name:OA},Symbol.toStringTag,{value:"Module"})),DA=28e3;function zA(e,i=DA){return e.length<=i?e:`${e.slice(0,i)}
|
|
209
|
+
… truncated (${e.length-i} more characters)`}function LA(e){return e&&typeof e=="object"?e:{}}function Jp(e){return typeof e=="string"?e:""}function Nw(e){return typeof e=="number"&&Number.isFinite(e)?e:void 0}function IA(e,i){const a=e[i];if(typeof a!="string"||!a.trim())throw new Error(`Missing string argument "${i}".`);return a}function UA(e,i,a){const s=e[i];return typeof s=="number"&&Number.isFinite(s)?s:typeof s=="string"&&Number.isFinite(Number(s))?Number(s):a}function BA(e,i){const a=[`$ ${i}`,Jp(e.stdout)];Jp(e.stderr)&&a.push(`stderr:
|
|
210
|
+
${Jp(e.stderr)}`);const s=Nw(e.code);return s!==void 0&&s!==0&&a.push(`exit code: ${s}`),e.timedOut===!0&&a.push("The command timed out."),a.filter(o=>o!=="").join(`
|
|
211
|
+
`)}async function $A(){await Be.getState().refresh({treeOnly:!0}).catch(()=>{})}const HA="tool-shell",PA=["tools"];function FA(e){return e.tools.register({name:"shell",description:"Run a shell command in the workspace root. The working directory resets between calls. Prefer dedicated file and git tools for edits. In Plan mode only read-only commands are accepted.",parameters:{type:"object",properties:{command:{type:"string",description:"The shell command to run."},timeoutMs:{type:"number",description:"Timeout in milliseconds (max 600000)."}},required:["command"],additionalProperties:!1},allowedInMode:()=>!0,async execute(i,a){const s=IA(i,"command"),o=LA((await nn("shell",{command:s,timeoutMs:UA(i,"timeoutMs",12e4)},a.mode,a.signal)).result);return $A(),{output:zA(BA(o,s)),isError:(Nw(o.code)??0)!==0||o.timedOut===!0}}})}const qA=Object.freeze(Object.defineProperty({__proto__:null,apply:FA,inject:PA,name:HA},Symbol.toStringTag,{value:"Module"})),GA=28e3;function YA(e,i=GA){return e.length<=i?e:`${e.slice(0,i)}
|
|
212
|
+
… truncated (${e.length-i} more characters)`}function Sw(e){return e&&typeof e=="object"?e:{}}function $1(e){return typeof e=="string"?e:""}function KA(e){return typeof e=="number"&&Number.isFinite(e)?e:void 0}function VA(e,i){const a=e[i];if(typeof a!="string"||!a.trim())throw new Error(`Missing string argument "${i}".`);return a}function XA(e,i){const a=e[i];return typeof a=="string"?a:void 0}function ZA(e,i,a){const s=e[i];return typeof s=="number"&&Number.isFinite(s)?s:typeof s=="string"&&Number.isFinite(Number(s))?Number(s):a}function QA(e,i){const a=Array.isArray(e.matches)?e.matches:[];if(a.length===0)return`No matches for ${i}.`;const s=a.map(u=>{const d=Sw(u);return`${$1(d.file)}:${KA(d.line)??0}: ${$1(d.text)}`}),o=e.truncated===!0?`
|
|
213
|
+
… more matches exist. Narrow the pattern or path.`:"";return s.join(`
|
|
214
|
+
`)+o}const JA="tool-grep",WA=["tools"];function eO(e){return e.tools.register({name:"grep",description:"Search workspace contents with a regular expression. Returns path, line and matching text.",parameters:{type:"object",properties:{pattern:{type:"string",description:"Regular expression to search for."},path:{type:"string",description:"File or folder. Defaults to the workspace root."},ignoreCase:{type:"boolean",description:"Case-insensitive search. Defaults to false."},maxResults:{type:"number",description:"Maximum matches. Defaults to 80."}},required:["pattern"],additionalProperties:!1},allowedInMode:()=>!0,async execute(i,a){const s=VA(i,"pattern"),o=Sw((await nn("grep",{pattern:s,path:XA(i,"path")??"",ignoreCase:i.ignoreCase===!0},a.mode,a.signal)).result),u=Math.min(Math.max(1,Math.round(ZA(i,"maxResults",80))),200),d=Array.isArray(o.matches)?o.matches.slice(0,u):[],p={...o,matches:d,truncated:o.truncated===!0||Array.isArray(o.matches)&&o.matches.length>u};return{output:YA(QA(p,s)),isError:!1}}})}const tO=Object.freeze(Object.defineProperty({__proto__:null,apply:eO,inject:WA,name:JA},Symbol.toStringTag,{value:"Module"})),nO=28e3;function iO(e,i=nO){return e.length<=i?e:`${e.slice(0,i)}
|
|
215
|
+
… truncated (${e.length-i} more characters)`}function aO(e){return e&&typeof e=="object"?e:{}}function or(e){return typeof e=="string"?e:""}function Tw(e){return typeof e=="number"&&Number.isFinite(e)?e:void 0}function rO(e,i){const a=e[i];if(typeof a!="string"||!a.trim())throw new Error(`Missing string argument "${i}".`);return a}function sO(e){const i=[];or(e.current)&&i.push(`Current branch: ${or(e.current)}`),or(e.branches)&&i.push(or(e.branches)),or(e.stdout)&&i.push(or(e.stdout)),or(e.stderr)&&i.push(`stderr:
|
|
216
|
+
${or(e.stderr)}`);const a=Tw(e.code);return a!==void 0&&a!==0&&i.push(`exit code: ${a}`),i.filter(Boolean).join(`
|
|
217
|
+
`)||"Git completed with no output."}const lO="tool-git",oO=["tools"];function cO(e){return e.tools.register({name:"git",description:"Inspect or change git state. In Plan mode only status, diff, log, show and branch are accepted.",parameters:{type:"object",properties:{action:{type:"string",enum:["status","diff","log","show","branch","add","commit","init","checkout"]},path:{type:"string",description:"Limit diff to this file."},staged:{type:"boolean",description:"Diff the staged changes."},ref:{type:"string",description:"Commit or ref for show."},limit:{type:"number",description:"Log limit."},paths:{type:"array",items:{type:"string"},description:"Files to stage."},message:{type:"string",description:"Commit message."},branch:{type:"string",description:"Branch to create or check out."},create:{type:"boolean",description:"Create a new branch. Defaults to true."}},required:["action"],additionalProperties:!1},allowedInMode:()=>!0,async execute(i,a){const s=rO(i,"action"),o={...i};delete o.action;const u=aO((await nn("git",{action:s,...o},a.mode,a.signal)).result);return(s==="add"||s==="commit"||s==="init"||s==="checkout")&&await Be.getState().loadGit().catch(()=>{}),{output:iO(sO(u)),isError:(Tw(u.code)??0)!==0}}})}const uO=Object.freeze(Object.defineProperty({__proto__:null,apply:cO,inject:oO,name:lO},Symbol.toStringTag,{value:"Module"})),dO=28e3;function H1(e,i=dO){return e.length<=i?e:`${e.slice(0,i)}
|
|
218
|
+
… truncated (${e.length-i} more characters)`}function Wp(e){return e&&typeof e=="object"?e:{}}function cr(e){return typeof e=="string"?e:""}function P1(e,i){const a=e[i];if(typeof a!="string"||!a.trim())throw new Error(`Missing string argument "${i}".`);return a}const fO="tool-web",pO=["tools"];function hO(e){const i=[e.tools.register({name:"web_search",description:"Search the web for current information. Returns titles, URLs and snippets. Cite URLs you use.",parameters:{type:"object",properties:{query:{type:"string",description:"Search query."}},required:["query"],additionalProperties:!1},allowedInMode:()=>!0,async execute(a,s){const o=P1(a,"query"),u=Wp((await nn("web_search",{query:o,provider:s.settings.searchProvider},s.mode,s.signal)).result),d=Array.isArray(u.results)?u.results:[];if(d.length===0)return{output:"No results found.",isError:!1};const p=d.map((m,g)=>{const x=Wp(m);return`${g+1}. ${cr(x.title)}
|
|
219
|
+
${cr(x.url)}${cr(x.snippet)?`
|
|
220
|
+
${cr(x.snippet)}`:""}`}).join(`
|
|
221
|
+
|
|
222
|
+
`);return{output:H1(`Search: ${o}
|
|
223
|
+
Provider: ${cr(u.provider)||"web"}
|
|
224
|
+
|
|
225
|
+
${p}`),isError:!1}}}),e.tools.register({name:"read_url",description:"Read a public web page as plain text.",parameters:{type:"object",properties:{url:{type:"string",description:"The http(s) URL to read."}},required:["url"],additionalProperties:!1},allowedInMode:()=>!0,async execute(a,s){const o=P1(a,"url"),u=Wp((await nn("read_url",{url:o},s.mode,s.signal)).result),d=cr(u.title);return{output:H1(`Source: ${cr(u.url)||o}${d?`
|
|
226
|
+
Title: ${d}`:""}
|
|
227
|
+
|
|
228
|
+
${cr(u.content)}${u.truncated===!0?`
|
|
229
|
+
|
|
230
|
+
… page truncated.`:""}`),isError:!1}}})];return()=>i.forEach(a=>a())}const mO=Object.freeze(Object.defineProperty({__proto__:null,apply:hO,inject:pO,name:fO},Symbol.toStringTag,{value:"Module"})),gO=28e3;function bO(e,i=gO){return e.length<=i?e:`${e.slice(0,i)}
|
|
231
|
+
… truncated (${e.length-i} more characters)`}const xO="tool-subagent",yO=["tools","subagents"];function vO(e){return e.tools.register({name:"subagent",description:"Delegate a focused investigation to a read-only subagent. Use it to explore a large area, trace a bug or verify assumptions without changing files. The subagent returns a concise report.",parameters:{type:"object",properties:{task:{type:"string",description:"The specific question or investigation to perform."},context:{type:"string",description:"Optional context, constraints or files to start from."}},required:["task"],additionalProperties:!1},allowedInMode:()=>!0,async execute(i,a){const s=typeof i.task=="string"?i.task:"",o=typeof i.context=="string"?i.context:"",u=await e.subagents.run(s,o,a.signal);return{output:bO(u),isError:!1}}})}const wO=Object.freeze(Object.defineProperty({__proto__:null,apply:vO,inject:yO,name:xO},Symbol.toStringTag,{value:"Module"}));function kO(){const e=new Lm;return e.plugin(DC),e.plugin(LC),e.plugin(UC),e.plugin(BC),e.plugin(iA),e.plugin(uA),e.plugin(mA),e.plugin(wA),e.plugin(NA),e.plugin(RA),e.plugin(qA),e.plugin(tO),e.plugin(uO),e.plugin(mO),e.plugin(wO),e}const an=kO();function Xh(e){an.agentLoop?an.agentLoop.stopRun(e):queueMicrotask(()=>an.agentLoop?.stopRun(e))}function EO(){an.agentLoop?an.agentLoop.stopAllRuns():queueMicrotask(()=>an.agentLoop?.stopAllRuns())}function Cw(e,i){an.agentLoop?an.agentLoop.runAgent(e,i):queueMicrotask(()=>an.agentLoop?.runAgent(e,i))}function eh(e){return an.agentLoop?an.agentLoop.regenerateLastTurn(e):!1}function Aw(e){var i,a,s="";if(typeof e=="string"||typeof e=="number")s+=e;else if(typeof e=="object")if(Array.isArray(e)){var o=e.length;for(i=0;i<o;i++)e[i]&&(a=Aw(e[i]))&&(s&&(s+=" "),s+=a)}else for(a in e)e[a]&&(s&&(s+=" "),s+=a);return s}function _O(){for(var e,i,a=0,s="",o=arguments.length;a<o;a++)(e=arguments[a])&&(i=Aw(e))&&(s&&(s+=" "),s+=i);return s}function pe(...e){return _O(e)}function Co(e){return e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:`${(e/1024/1024).toFixed(1)} MB`}function Zh(e){const i=Math.round((Date.now()-e)/1e3);return i<60?"now":i<3600?`${Math.floor(i/60)}m`:i<86400?`${Math.floor(i/3600)}h`:i<604800?`${Math.floor(i/86400)}d`:new Date(e).toLocaleDateString(void 0,{month:"short",day:"numeric"})}function NO(e){const i=new Date,a=new Date(i.getFullYear(),i.getMonth(),i.getDate()).getTime(),s=a-864e5,o=a-6*864e5,u=a-29*864e5,d=[{label:"Today",items:[]},{label:"Yesterday",items:[]},{label:"Previous 7 days",items:[]},{label:"Previous 30 days",items:[]},{label:"Older",items:[]}],p=[...e].sort((m,g)=>g.updatedAt-m.updatedAt);for(const m of p){let g=4;m.updatedAt>=a?g=0:m.updatedAt>=s?g=1:m.updatedAt>=o?g=2:m.updatedAt>=u&&(g=3),d[g].items.push(m)}return d.filter(m=>m.items.length>0)}function SO(e){return new Promise((i,a)=>{const s=new FileReader;s.onload=()=>i(String(s.result)),s.onerror=()=>a(s.error??new Error("Could not read this file.")),s.readAsDataURL(e)})}function Ow(e){return new Promise((i,a)=>{const s=new FileReader;s.onload=()=>i(String(s.result)),s.onerror=()=>a(s.error??new Error("Could not read this file.")),s.readAsText(e)})}function Qh(e,i,a="text/plain"){const s=new Blob([i],{type:a}),o=URL.createObjectURL(s),u=document.createElement("a");u.href=o,u.download=e,u.click(),URL.revokeObjectURL(o)}function ol({size:e=28,className:i,spin:a=!1}){return c.jsx("span",{className:pe("inline-flex shrink-0 items-center justify-center text-accent",i),style:{width:e,height:e},"aria-hidden":"true",children:c.jsxs("svg",{viewBox:"0 0 32 32",width:e,height:e,fill:"none",className:pe(a&&"animate-spin-slow"),children:[c.jsx("circle",{cx:"16",cy:"16",r:"6.2",fill:"currentColor"}),c.jsxs("g",{stroke:"currentColor",strokeWidth:"2.4",strokeLinecap:"round",children:[c.jsx("path",{d:"M16 3.6v3.2M16 25.2v3.2M3.6 16h3.2M25.2 16h3.2"}),c.jsx("path",{d:"M7.2 7.2l2.2 2.2M22.6 22.6l2.2 2.2M7.2 24.8l2.2-2.2M22.6 9.4l2.2-2.2",opacity:"0.55"})]})]})})}function TO({compact:e=!1}){return c.jsxs("div",{className:"group/logo flex items-center gap-2",children:[c.jsx(ol,{size:e?20:22,className:"transition-transform duration-500 ease-out group-hover/logo:rotate-90"}),!e&&c.jsxs("span",{className:"text-[15px] font-semibold leading-none tracking-[-0.025em] text-ink",children:["Open",c.jsx("span",{className:"text-accent",children:"Sol"})]})]})}function CO(){return c.jsxs("p",{className:"text-[11px] tracking-[0.01em] text-faint",children:["OpenSol ",c.jsx("span",{className:"px-1 text-line",children:"/"})," by OpenSoft"]})}function AO(e){return new Date(e).toLocaleTimeString(void 0,{hour:"2-digit",minute:"2-digit"})}function OO(){const e=We(Z=>Z.sessions),i=We(Z=>Z.activeId),a=We(Z=>Z.setActive),s=We(Z=>Z.newChat),o=We(Z=>Z.renameSession),u=We(Z=>Z.deleteSession),d=Re(),p=Be(Z=>Z.info),m=Be(Z=>Z.addWorkspace),g=be(Z=>Z.sidebarCollapsed),x=be(Z=>Z.toggleSidebar),b=be(Z=>Z.mobileSidebarOpen),v=be(Z=>Z.setMobileSidebarOpen),y=be(Z=>Z.openSettings),k=be(Z=>Z.setWorkspaceOpen),N=be(Z=>Z.setDeployOpen),_=be(Z=>Z.askConfirm),S=be(Z=>Z.notify),C=be(Z=>Z.focusComposer),M=Au(Z=>Z.streaming),[I,F]=q.useState(""),[R,A]=q.useState(null),[L,V]=q.useState(null),[D,U]=q.useState(""),[ee,ue]=q.useState(""),re=q.useMemo(()=>{const Z=I.trim().toLowerCase();return Z?e.filter(we=>we.title.toLowerCase().includes(Z)):e},[e,I]),ne=q.useMemo(()=>NO(re),[re]),P=q.useMemo(()=>[...p.workspaces].sort((Z,we)=>we.lastOpened-Z.lastOpened),[p.workspaces]),ae=rl(d),$=(d.daemon?.home??"").split(/[\\/]/).filter(Boolean).pop()||p.name||"Local",de=()=>{s(),v(!1),A(null),C()},O=Z=>{a(Z),v(!1),A(null)},Ie=async Z=>{if(Z===p.root){k(!0),v(!1);return}ue(Z);try{await m(Z),v(!1)}catch(we){S(we instanceof Error?we.message:"Could not open that folder.","error")}finally{ue("")}},fe=(Z,we)=>{V(Z),U(we),A(null)},T=()=>{L&&(D.trim()&&o(L,D),V(null),U(""))},j=async(Z,we)=>{A(null),await _({title:"Delete this conversation?",body:`“${we}” and its messages will be removed from this computer. This cannot be undone.`,confirmLabel:"Delete conversation",tone:"danger"})&&(Xh(Z),u(Z))},ie=Z=>{const we=e.find(J=>J.id===Z);if(!we)return;A(null);const Ce=we.messages.flatMap(J=>J.role==="user"?[`## You
|
|
232
|
+
|
|
233
|
+
${J.content}`]:J.role==="assistant"&&J.content.trim()?[`## OpenSol
|
|
234
|
+
|
|
235
|
+
${J.content.trim()}`]:[]).join(`
|
|
236
|
+
|
|
237
|
+
`);Qh(`opensol-${we.title.toLowerCase().replace(/[^a-z0-9]+/g,"-").slice(0,40)||"conversation"}.md`,`# ${we.title}
|
|
238
|
+
|
|
239
|
+
${Ce}
|
|
240
|
+
`,"text/markdown"),S("Conversation exported as Markdown.","success")},he=Z=>{const we=e.find(Ce=>Ce.id===Z);we&&(A(null),Qh(`opensol-${we.title.toLowerCase().replace(/[^a-z0-9]+/g,"-").slice(0,40)||"conversation"}.json`,JSON.stringify({app:"OpenSol",exportedAt:new Date().toISOString(),session:we},null,2),"application/json"),S("Conversation exported.","success"))};return c.jsxs("aside",{className:pe("fixed inset-y-0 left-0 z-50 flex h-dvh w-[264px] shrink-0 flex-col bg-canvas shadow-float transition-transform duration-300 ease-out lg:static lg:z-auto lg:shadow-none",b?"translate-x-0":"-translate-x-full lg:translate-x-0",g&&"lg:hidden"),children:[c.jsxs("div",{className:"flex h-12 items-center gap-1 pl-3 pr-2",children:[c.jsx(TO,{}),c.jsx("button",{type:"button",className:"icon-button ml-auto hidden lg:inline-flex",onClick:x,title:"Collapse sidebar (Ctrl B)","aria-label":"Collapse sidebar",children:c.jsx(z2,{size:16,strokeWidth:1.7})}),c.jsx("button",{type:"button",className:"icon-button ml-auto lg:hidden",onClick:()=>v(!1),"aria-label":"Close menu",children:c.jsx(Ta,{size:17})})]}),c.jsxs("nav",{className:"space-y-0.5 px-2 pt-1",children:[c.jsxs("button",{type:"button",onClick:de,className:"group/new mb-2 flex h-9 w-full items-center gap-2 rounded-lg border border-line bg-panel px-2.5 text-left text-[13px] font-medium text-ink shadow-pill transition-all duration-150 hover:border-accent/40 hover:shadow-composer active:scale-[0.985]",children:[c.jsx(wo,{size:15,strokeWidth:2,className:"text-accent transition-transform duration-300 group-hover/new:rotate-90"}),"New chat"]}),c.jsxs("button",{type:"button",onClick:()=>{v(!1),y("skills")},className:"nav-item",children:[c.jsx(hr,{size:15,strokeWidth:1.7,className:"shrink-0 text-faint"}),"Skills"]}),c.jsxs("button",{type:"button",onClick:()=>{v(!1),y("plugins")},className:"nav-item",children:[c.jsx(Em,{size:15,strokeWidth:1.7,className:"shrink-0 text-faint"}),"Plugins"]}),c.jsxs("button",{type:"button",onClick:()=>{v(!1),N(!0)},className:"nav-item",children:[c.jsx(pr,{size:15,strokeWidth:1.7,className:"shrink-0 text-faint"}),"Deploy"]}),c.jsxs("div",{className:"relative",children:[c.jsx(ll,{size:15,strokeWidth:1.7,className:"pointer-events-none absolute left-2.5 top-1/2 -translate-y-1/2 text-faint"}),c.jsx("input",{value:I,onChange:Z=>F(Z.target.value),placeholder:"Search",className:"mt-1 h-8 w-full rounded-lg border border-transparent bg-transparent pl-[34px] pr-2.5 text-[13px] text-ink outline-none transition-colors placeholder:text-muted hover:bg-raised/80 focus:border-line focus:bg-panel","aria-label":"Search conversations"})]})]}),c.jsxs("div",{className:"thin-scroll min-h-0 flex-1 overflow-y-auto px-2 pb-2 pt-5",children:[c.jsxs("div",{className:"mb-5",children:[c.jsxs("div",{className:"flex items-center justify-between px-2.5 pb-1.5",children:[c.jsx("p",{className:"eyebrow",children:"Workspaces"}),c.jsx("button",{type:"button",onClick:()=>{v(!1),k(!0)},className:"flex h-6 w-6 items-center justify-center rounded-md text-faint transition-colors hover:bg-raised hover:text-ink",title:"Open another folder","aria-label":"Open another folder",children:c.jsx(wo,{size:13})})]}),P.length===0?c.jsxs("button",{type:"button",onClick:()=>{v(!1),k(!0)},className:"flex w-full items-center gap-2 rounded-lg border border-dashed border-line px-2.5 py-2.5 text-left text-[13px] text-muted transition-colors hover:border-faint/50 hover:text-ink",children:[c.jsx(el,{size:15,strokeWidth:1.6,className:"text-faint"}),"Open a project folder"]}):c.jsx("div",{className:"space-y-0.5",children:P.map(Z=>{const we=Z.path===p.root;return c.jsxs("button",{type:"button",onClick:()=>{Ie(Z.path)},title:Z.path,className:pe("flex h-8 w-full items-center gap-2.5 rounded-lg px-2.5 text-left text-[13px] transition-all duration-150",we?"bg-raised text-ink":"text-muted hover:bg-raised/80 hover:text-ink"),children:[c.jsx(el,{size:15,strokeWidth:1.6,className:pe("shrink-0",we?"text-accent":"text-faint")}),c.jsx("span",{className:"min-w-0 flex-1 truncate",children:Z.name}),ee===Z.path?c.jsx(vm,{size:11,className:"shrink-0 animate-spin text-faint"}):we?c.jsx(Sn,{size:11,className:"shrink-0 text-accent"}):c.jsx("span",{className:"shrink-0 text-[10px] tabular-nums text-faint",children:Zh(Z.lastOpened)})]},Z.path)})})]}),c.jsxs("div",{children:[c.jsxs("div",{className:"flex items-center justify-between px-2.5 pb-1.5",children:[c.jsx("p",{className:"eyebrow",children:"Recents"}),c.jsx("span",{className:"text-[11px] tabular-nums text-faint",children:re.length})]}),ne.length===0&&c.jsxs("div",{className:"px-2 py-7 text-center",children:[c.jsx("p",{className:"text-[13px] font-medium text-muted",children:I?"No conversations match":"No conversations yet"}),c.jsx("p",{className:"mt-1 text-[11.5px] leading-relaxed text-faint",children:I?"Try a shorter search.":"Start with a task, a question or a file."})]}),ne.map((Z,we)=>c.jsxs("div",{className:"mb-3",children:[c.jsx("p",{className:"px-2.5 pb-1 pt-1 text-[11px] font-medium text-faint/80",children:Z.label}),c.jsx("div",{className:"space-y-0.5",children:Z.items.map((Ce,J)=>c.jsx("div",{className:"group/item relative animate-slideleft",style:{animationDelay:`${Math.min(we*40+J*18,320)}ms`},children:L===Ce.id?c.jsx("input",{value:D,onChange:ge=>U(ge.target.value),onBlur:T,onKeyDown:ge=>{ge.key==="Enter"&&T(),ge.key==="Escape"&&(V(null),U(""))},autoFocus:!0,className:"h-8 w-full rounded-lg border border-accent/50 bg-panel px-2.5 text-[13px] text-ink outline-none","aria-label":"Rename conversation"}):c.jsxs(c.Fragment,{children:[c.jsxs("button",{type:"button",onClick:()=>O(Ce.id),onDoubleClick:()=>fe(Ce.id,Ce.title),title:`${Ce.title} · ${Zh(Ce.updatedAt)}`,className:pe("sidebar-item pr-9",i===Ce.id&&"sidebar-item-active"),children:[c.jsx("span",{className:"min-w-0 flex-1 truncate",children:Ce.title}),M[Ce.id]&&c.jsxs("span",{className:"flex shrink-0 items-center gap-1 text-[10.5px] font-medium text-accent group-hover/item:hidden",title:"Agent is running",children:[c.jsx("span",{className:"h-1.5 w-1.5 animate-breathe rounded-full bg-accent"}),"running"]})]}),c.jsx("button",{type:"button",onClick:ge=>{if(ge.stopPropagation(),R?.id===Ce.id){A(null);return}const ke=ge.currentTarget.getBoundingClientRect(),Dt=176,Ut=138,$t=Math.max(8,Math.min(ke.right-Dt,window.innerWidth-Dt-8)),Fe=ke.bottom+Ut+8>window.innerHeight?Math.max(8,ke.top-Ut-4):ke.bottom+4;A({id:Ce.id,x:$t,y:Fe})},className:pe("absolute right-1 top-1/2 flex h-7 w-7 -translate-y-1/2 items-center justify-center rounded-md text-faint transition-all hover:bg-panel hover:text-ink",R?.id===Ce.id?"flex bg-panel text-ink opacity-100":"opacity-0 group-hover/item:opacity-100 focus:opacity-100"),"aria-label":`Actions for ${Ce.title}`,title:"Conversation actions",children:c.jsx(FS,{size:14})})]})},Ce.id))})]},Z.label))]})]}),c.jsx("div",{className:"p-2",children:c.jsxs("div",{className:"flex items-center gap-2.5 rounded-lg px-1.5 py-1.5 transition-colors hover:bg-raised/80",children:[c.jsx("div",{className:"flex h-7 w-7 shrink-0 items-center justify-center rounded-md bg-ink text-[12px] font-semibold text-panel",children:$.charAt(0).toUpperCase()}),c.jsxs("button",{type:"button",onClick:()=>{v(!1),y("models")},className:"min-w-0 flex-1 text-left",children:[c.jsx("p",{className:"truncate text-[13px] font-medium leading-tight text-ink",children:$}),c.jsx("p",{className:"mt-0.5 truncate text-[11px] leading-tight text-faint",children:ae?`${Am(d.provider)}${d.provider==="ollama"?" · local":" · your key"}`:"Add a provider key"})]}),c.jsx("button",{type:"button",className:"icon-button h-8 w-8",onClick:()=>{v(!1),y("appearance")},title:"Preferences","aria-label":"Preferences",children:c.jsx(Ev,{size:16,strokeWidth:1.7})})]})}),R&&c.jsxs(c.Fragment,{children:[c.jsx("button",{type:"button",tabIndex:-1,"aria-label":"Close conversation menu",className:"fixed inset-0 z-[60] cursor-default bg-transparent",onClick:()=>A(null)}),c.jsx("div",{className:"surface-lift fixed z-[70] w-[184px] overflow-hidden rounded-xl border border-line p-1 shadow-float",style:{left:R.x,top:R.y},children:(()=>{const Z=e.find(we=>we.id===R.id);return Z?c.jsxs(c.Fragment,{children:[c.jsxs("button",{type:"button",onClick:()=>fe(Z.id,Z.title),className:"flex h-7 w-full items-center gap-2 rounded-md px-2 text-left text-[11.5px] text-muted hover:bg-raised hover:text-ink",children:[c.jsx(_m,{size:12})," Rename"]}),c.jsxs("button",{type:"button",onClick:()=>he(Z.id),className:"flex h-7 w-full items-center gap-2 rounded-md px-2 text-left text-[11.5px] text-muted hover:bg-raised hover:text-ink",children:[c.jsx(pv,{size:12})," Export JSON"]}),c.jsxs("button",{type:"button",onClick:()=>ie(Z.id),className:"flex h-7 w-full items-center gap-2 rounded-md px-2 text-left text-[11.5px] text-muted hover:bg-raised hover:text-ink",children:[c.jsx(Na,{size:12})," Export Markdown"]}),c.jsx("div",{className:"my-1 border-t border-line"}),c.jsxs("button",{type:"button",onClick:()=>{j(Z.id,Z.title)},className:"flex h-7 w-full items-center gap-2 rounded-md px-2 text-left text-[11.5px] text-danger hover:bg-danger/[0.06]",children:[c.jsx(Xr,{size:12})," Delete"]}),c.jsxs("p",{className:"px-2 pb-1 pt-1.5 text-[9px] text-faint",children:["Updated ",AO(Z.updatedAt)]})]}):null})()})]})]})}const MO={wave:"Ready when you are",idle:"Standing by",thinking:"Thinking it through…",working:"Running tools…",typing:"Writing the answer…",happy:"Answer ready",alert:"Needs your approval",error:"Hit a snag",sleepy:"Waiting for the next turn",party:"All steps finished"};function jO(e,i){if(e.length===0)return"wave";const a=e[e.length-1];return a.role==="tool"?a.status==="awaiting"?"alert":a.status==="error"?"error":i||a.status==="running"?"working":"party":a.role==="assistant"?a.error?"error":i?a.reasoning.trim()&&!a.content.trim()?"thinking":"typing":a.stopped?"sleepy":a.content.trim()?"happy":"idle":i?"working":"idle"}const Mw=864e5,F1=26;function Bm(e){const i=new Date(e);return i.setHours(0,0,0,0),i.getTime()}function jw(e){const i=new Date(e);return`${i.getFullYear()}-${String(i.getMonth()+1).padStart(2,"0")}-${String(i.getDate()).padStart(2,"0")}`}function RO(e,i){return e==="all"?0:Bm(i)-(e==="7d"?6:29)*Mw}function q1(e,i){return typeof e.createdAt=="number"?e.createdAt:i}function DO(e){if(e.role!=="assistant")return 0;const i=e.usage;if(i&&(i.input||i.output))return(i.input??0)+(i.output??0);const a=`${e.content??""}${e.reasoning??""}`;return a.trim()?Math.ceil(a.length/4):0}function zO(e){return e===0?"12 AM":e===12?"12 PM":e<12?`${e} AM`:`${e-12} PM`}function LO(e,i,a=Date.now()){const s=RO(i,a),o=e.filter(_=>_.updatedAt>=s),u=[];for(const _ of o)for(const S of _.messages)q1(S,_.updatedAt)>=s&&u.push({message:S,session:_});const d=new Array(24).fill(0),p=new Map,m=new Map;let g=0;for(const{message:_,session:S}of u){const C=q1(_,S.updatedAt),M=jw(C),I=p.get(M);if(I?I.count+=1:p.set(M,{key:M,count:1,date:Bm(C)}),d[new Date(C).getHours()]+=1,_.role!=="assistant")continue;const F=DO(_);g+=F;const R=typeof _.model=="string"?_.model.trim():"";if(!R)continue;const A=m.get(R)??{model:R,messages:0,tokens:0};A.messages+=1,A.tokens+=F,m.set(R,A)}const x=[...m.values()].sort((_,S)=>S.tokens-_.tokens||S.messages-_.messages||_.model.localeCompare(S.model)),b=x[0],v=u.filter(_=>_.message.role==="assistant").length;let y=0;for(let _=1;_<24;_+=1)d[_]>d[y]&&(y=_);const k=IO(p,a),N=k.reduce((_,S)=>Math.max(_,S.count),0);return{sessions:o.length,messages:u.length,tokens:g,activeDays:p.size,peakHour:u.length?zO(y):"—",favoriteModel:b?.model??"—",favoriteShare:b&&v?Math.round(b.messages/v*100):0,models:x,heatmap:k,busiestDay:N}}function IO(e,i){const a=new Date(Bm(i)),s=new Date(a);s.setDate(s.getDate()-s.getDay()-(F1-1)*7);const o=[];for(let u=0;u<F1*7;u+=1){const d=s.getTime()+u*Mw,p=jw(d);o.push(e.get(p)??{key:p,count:0,date:d})}return o}function bo(e){return e>=1e6?`${(e/1e6).toFixed(e>=1e7?0:1)}M`:e>=1e3?`${(e/1e3).toFixed(e>=1e4?0:1)}k`:String(e)}function th(e){if(!e||e==="—")return e;const i=e.split("/");return i[i.length-1]||e}function UO(e){return!!(e.content.trim()||e.reasoning.trim()||e.error||e.stopped)}function BO(e){const i=[];let a=null,s=[];const o=()=>{s.length>0&&a?.segments.push({kind:"tools",tools:s}),s=[]};for(const u of e){if(u.role==="tool"){if(!a)continue;s.push(u);continue}if(u.role==="user"){o(),a={id:u.id,user:u,segments:[]},i.push(a);continue}!UO(u)&&u.toolCalls.length>0||(a||(a={id:u.id,segments:[]},i.push(a)),o(),a.segments.push({kind:"assistant",message:u}))}return o(),i}function G1(e){return e>=1e6?`${(e/1e6).toFixed(1)}M`:e>=1e3?`${(e/1e3).toFixed(0)}k`:String(e)}function $O({messages:e,model:i,sessionId:a}){const s=q.useMemo(()=>Ew(e,i),[e,i]),o=a?vw(a):!1;if(e.length===0)return null;const{pct:u,used:d,limit:p}=s,m=u>=_w*100,g=u>=70&&!m;return c.jsx("div",{className:pe("hidden items-baseline gap-1.5 text-[11.5px] tabular-nums text-muted sm:flex",g&&"text-warning",m&&"text-danger"),title:`Context window: ~${d.toLocaleString()} of ${p.toLocaleString()} tokens used (${u}%)`,children:o?c.jsx("span",{className:"text-shimmer",children:"Compacting…"}):c.jsxs(c.Fragment,{children:[c.jsx("span",{className:"text-ink/80",children:G1(d)}),c.jsxs("span",{className:"text-faint",children:["/ ",G1(p)," tokens"]}),c.jsx("span",{className:"text-faint",children:"·"}),c.jsxs("span",{children:[u,"%"]})]})})}const HO=typeof navigator<"u"&&/Mac|iPhone|iPad/.test(navigator.platform);function PO({session:e,view:i,onViewChange:a}){const s=Re(),o=Re(C=>C.update),u=be(C=>C.sidebarCollapsed),d=be(C=>C.toggleSidebar),p=be(C=>C.setMobileSidebarOpen),m=be(C=>C.setPaletteOpen),g=be(C=>C.openSettings),x=be(C=>C.workspaceOpen),b=be(C=>C.setWorkspaceOpen),v=be(C=>C.setDeployOpen),y=Be(C=>C.info),k=sd(),N=zh(s.theme,typeof window<"u"&&window.matchMedia("(prefers-color-scheme: dark)").matches),_=!!(e&&e.messages.length>0),S=e?.messages.filter(C=>C.role==="user").length??0;return c.jsxs("header",{className:"relative flex h-12 shrink-0 items-center gap-2 border-b border-line/60 bg-panel/80 px-3 backdrop-blur-xl sm:px-4",children:[c.jsx("button",{type:"button",className:"icon-button lg:hidden",onClick:()=>p(!0),"aria-label":"Open menu",children:c.jsx(C2,{size:18})}),u&&c.jsx("button",{type:"button",className:"icon-button hidden lg:inline-flex",onClick:d,title:"Expand sidebar","aria-label":"Expand sidebar",children:c.jsx(I2,{size:17})}),c.jsxs("div",{className:"flex min-w-0 flex-1 items-center gap-2",children:[!e&&c.jsx(ol,{size:19,className:"lg:hidden"}),y.available&&c.jsxs(c.Fragment,{children:[c.jsx("span",{className:"hidden max-w-[120px] shrink-0 truncate text-[13px] text-faint md:inline",children:y.name}),c.jsx("span",{className:"hidden text-faint/50 md:inline",children:"/"})]}),c.jsx("h1",{className:"min-w-0 truncate text-[13.5px] font-medium tracking-[-0.01em] text-ink",children:e?.title??"New conversation"}),_&&c.jsxs("span",{className:"hidden shrink-0 items-center gap-1 rounded-md border border-line bg-canvas px-1.5 py-0.5 text-[10.5px] font-medium text-muted sm:inline-flex",children:[s.mode==="plan"?c.jsx(ym,{size:11}):c.jsx(hr,{size:11}),s.mode==="plan"?"Plan mode":"Build mode"]}),_&&c.jsxs("span",{className:"hidden shrink-0 text-[11.5px] tabular-nums text-faint md:inline",children:[S," turn",S===1?"":"s"]})]}),_&&c.jsx("div",{className:"absolute left-1/2 hidden -translate-x-1/2 items-center rounded-lg bg-raised p-0.5 md:inline-flex",children:["chat","trajectory"].map(C=>c.jsx("button",{type:"button",onClick:()=>a(C),"aria-pressed":i===C,className:pe("h-6 rounded-md px-3 text-[11.5px] font-medium capitalize transition-all duration-200",i===C?"bg-panel text-ink shadow-pill":"text-muted hover:text-ink"),children:C},C))}),c.jsxs("div",{className:"flex shrink-0 items-center gap-0.5",children:[_&&c.jsx("div",{className:"mr-3 hidden sm:block",children:c.jsx($O,{messages:e?.messages??[],model:k,sessionId:e?.id??null})}),c.jsxs("button",{type:"button",onClick:()=>b(!x),title:y.available?y.root:"Choose a workspace folder",className:pe("mr-1 hidden min-w-0 items-center gap-1.5 rounded-lg border px-2.5 py-1 text-[12px] transition-all duration-150 sm:inline-flex",x?"border-accent/30 bg-accent-soft text-accent":"border-line text-muted hover:bg-raised/60 hover:text-ink"),children:[c.jsx(Kr,{size:13,className:"shrink-0"}),c.jsx("span",{className:"max-w-[140px] truncate",children:y.available?y.name:"No folder"})]}),c.jsx("button",{type:"button",className:"icon-button hidden sm:inline-flex",onClick:()=>v(!0),title:"Deploy the open workspace or another project","aria-label":"Deploy",children:c.jsx(pr,{size:16,strokeWidth:1.7})}),c.jsx("button",{type:"button",className:"icon-button",onClick:()=>m(!0),title:`Search and commands (${HO?"⌘":"Ctrl"} K)`,"aria-label":"Open search and commands",children:c.jsx(ll,{size:16})}),c.jsx("button",{type:"button",className:"icon-button hidden sm:inline-flex",onClick:()=>o({theme:N?"light":"dark"}),title:N?"Switch to light theme":"Switch to dark theme","aria-label":"Toggle theme",children:N?c.jsx(Sm,{size:16}):c.jsx(km,{size:16})}),c.jsx("button",{type:"button",className:"icon-button",onClick:()=>g("general"),title:"Settings","aria-label":"Open settings",children:c.jsx(Ev,{size:16})})]})]})}const $m=[{value:"ask",label:"Ask first",description:"Confirm shell commands, edits and git changes before they run."},{value:"accept-edits",label:"Accept edits",description:"Apply file edits automatically; still confirm shell and git."},{value:"full",label:"Full access",description:"Run every enabled tool without asking. Use only in trusted folders."}],Jh=["write_file","edit_file","rewrite_file"],Wh=["shell","git","subagent"];function Rw(e){const i=Jh.every(s=>e[s]?.approval==="auto"),a=Wh.every(s=>e[s]?.approval==="auto");return i&&a?"full":i?"accept-edits":"ask"}function Dw(e,i){const a={};for(const s of Object.keys(e)){const o=Jh.includes(s)||Wh.includes(s),u=i==="full"?"auto":i==="accept-edits"?Jh.includes(s)?"auto":Wh.includes(s)?"ask":e[s].approval:o?"ask":e[s].approval;a[s]={...e[s],approval:u}}return a}function FO(e){return $m.find(i=>i.value===e)?.label??"Ask first"}function zw(e,i,a=!0,s){const o=q.useRef(i);o.current=i,q.useEffect(()=>{if(!a)return;const u=p=>{const m=e.current;if(!m)return;const g=p.target;g instanceof Node&&(m.contains(g)||s?.current?.contains(g)||o.current())},d=p=>{p.key==="Escape"&&o.current()};return document.addEventListener("pointerdown",u,!0),document.addEventListener("keydown",d),()=>{document.removeEventListener("pointerdown",u,!0),document.removeEventListener("keydown",d)}},[a,e,s])}var Ao=cv();function Hm({open:e,onClose:i,children:a,className:s,labelledBy:o,wide:u=!1}){const d=q.useRef(null),p=q.useRef(null),m=q.useRef(i);return m.current=i,q.useEffect(()=>{if(!e)return;p.current=document.activeElement instanceof HTMLElement?document.activeElement:null;const g=d.current,x=()=>Array.from(g?.querySelectorAll('button:not([disabled]), a[href], input:not([disabled]), textarea:not([disabled]), select:not([disabled]), [tabindex]:not([tabindex="-1"])')??[]).filter(k=>k.offsetParent!==null),b=window.setTimeout(()=>{(g?.querySelector("[data-autofocus]")??x()[0]??g)?.focus()},30),v=k=>{if(k.key==="Escape"){k.preventDefault(),m.current();return}if(k.key!=="Tab")return;const N=x();if(N.length===0)return;const _=N[0],S=N[N.length-1];k.shiftKey&&document.activeElement===_?(k.preventDefault(),S.focus()):!k.shiftKey&&document.activeElement===S&&(k.preventDefault(),_.focus())};document.addEventListener("keydown",v);const y=document.body.style.overflow;return document.body.style.overflow="hidden",()=>{window.clearTimeout(b),document.removeEventListener("keydown",v),document.body.style.overflow=y,p.current?.focus()}},[e]),e?Ao.createPortal(c.jsxs("div",{className:"fixed inset-0 z-[80] flex items-end justify-center p-0 sm:items-center sm:p-6",children:[c.jsx("button",{type:"button","aria-label":"Close dialog",tabIndex:-1,onClick:i,className:"modal-scrim absolute inset-0 cursor-default bg-black/35 backdrop-blur-[3px] dark:bg-black/60"}),c.jsx("div",{ref:d,role:"dialog","aria-modal":"true","aria-labelledby":o,tabIndex:-1,className:pe("modal-panel relative flex max-h-[92dvh] w-full flex-col overflow-hidden rounded-t-2xl border border-line surface-lift shadow-float sm:max-h-[86dvh] sm:rounded-xl",u?"sm:w-[min(920px,94vw)]":"sm:w-[min(760px,94vw)]",s),children:a})]}),document.body):null}function Tn({size:e=14,className:i}){return c.jsx(vm,{size:e,className:pe("animate-spin text-current",i),"aria-hidden":"true"})}function es({checked:e,onChange:i,label:a,disabled:s=!1}){return c.jsx("button",{type:"button",role:"switch","aria-label":a,"aria-checked":e,disabled:s,onClick:()=>i(!e),className:pe("relative inline-flex h-[22px] w-[38px] shrink-0 items-center rounded-full border transition-colors duration-200 disabled:opacity-40",e?"border-accent bg-accent":"border-line bg-raised"),children:c.jsx("span",{className:pe("pointer-events-none block h-[16px] w-[16px] rounded-full bg-white shadow-sm transition-transform duration-300 ease-spring",e?"translate-x-[19px]":"translate-x-[3px]")})})}function qO({options:e,value:i,onChange:a,disabled:s,className:o,size:u="sm"}){return c.jsx("div",{className:pe("inline-flex items-center rounded-lg bg-raised p-0.5",u==="md"?"text-[12.5px]":"text-[11.5px]",s&&"opacity-50",o),children:e.map(d=>c.jsx("button",{type:"button",title:d.title,disabled:s,onClick:()=>a(d.value),className:pe("rounded-md font-medium transition-all duration-200 disabled:cursor-not-allowed",u==="md"?"px-3 py-1.5":"px-2.5 py-1",i===d.value?"bg-panel text-ink shadow-[0_1px_2px_rgba(20,22,30,0.08)]":"text-muted hover:text-ink"),children:d.label},d.value))})}const GO={info:{icon:xm,className:"text-accent"},success:{icon:jS,className:"text-success"},error:{icon:DS,className:"text-danger"}};function YO(){const e=be(o=>o.toast),i=be(o=>o.dismissToast);if(q.useEffect(()=>{if(!e)return;const o=window.setTimeout(()=>i(e.id),4500);return()=>window.clearTimeout(o)},[e,i]),!e)return null;const a=GO[e.tone],s=a.icon;return Ao.createPortal(c.jsxs("div",{className:"pointer-events-none fixed bottom-56 left-1/2 z-[100] flex w-[min(92vw,440px)] -translate-x-1/2 animate-scalein items-start gap-2.5 rounded-xl border border-line surface-lift px-3.5 py-3 text-[12.5px] text-ink shadow-float sm:bottom-48",role:"status",children:[c.jsx(s,{size:16,className:pe("mt-0.5 shrink-0",a.className)}),c.jsx("p",{className:"flex-1 leading-relaxed",children:e.message}),c.jsx("button",{type:"button",className:"pointer-events-auto icon-button -mr-1 -mt-1 h-6 w-6",onClick:()=>i(e.id),"aria-label":"Dismiss",children:c.jsx(Ta,{size:13})})]}),document.body)}function KO(){const e=be(s=>s.confirm),i=be(s=>s.resolveConfirm),a=e?.tone==="danger";return c.jsx(Hm,{open:!!e,onClose:()=>i(!1),className:"sm:w-[420px]",children:c.jsxs("div",{className:"p-5 sm:p-6",children:[c.jsxs("div",{className:"flex items-start gap-3",children:[c.jsx("span",{className:pe("mt-0.5 flex h-9 w-9 shrink-0 items-center justify-center rounded-full",a?"bg-danger/10 text-danger":"bg-accent-soft text-accent"),children:c.jsx(gT,{size:17})}),c.jsxs("div",{className:"min-w-0",children:[c.jsx("h2",{className:"text-[15px] font-semibold tracking-[-0.01em]",children:e?.title}),c.jsx("p",{className:"mt-1.5 text-[12.5px] leading-relaxed text-muted",children:e?.body})]})]}),c.jsxs("div",{className:"mt-6 flex justify-end gap-2",children:[c.jsx("button",{type:"button",className:"chip",onClick:()=>i(!1),children:"Cancel"}),c.jsxs("button",{type:"button","data-autofocus":!0,onClick:()=>i(!0),className:pe("inline-flex h-8 items-center gap-1.5 rounded-lg px-3 text-[12.5px] font-medium text-on-accent transition-all active:scale-95",a?"bg-danger hover:bg-danger/90":"bg-accent hover:bg-accent/90"),children:[c.jsx(Sn,{size:14}),e?.confirmLabel??"Confirm"]})]})]})})}const VO=[];function Y1(e){return Qu(Re.getState(),e)}function K1(e){return e?e>=1e6?`${(e/1e6).toFixed(e%1e6?1:0)}M`:`${Math.round(e/1e3)}k`:""}function XO({open:e,onClose:i,triggerRef:a}){const s=Re(),o=Re($=>$.selectModel),u=Re($=>$.update),d=be($=>$.openSettings),p=q.useRef(null),[m,g]=q.useState(""),[x,b]=q.useState(""),[v,y]=q.useState(!1),[k,N]=q.useState(!1),_=s.provider,S=Nn($=>$.byProvider[_])??VO,C=Nn($=>!!$.loading[_]),M=Nn($=>$.errors[_]??""),I=Nn($=>$.notes[_]??""),F=Nn($=>$.source[_]??""),R=Nn($=>$.fetchModels);zw(p,i,e,a);const[A,L]=q.useState(null),V=q.useCallback(()=>{const $=a.current;if(!$)return;const de=$.getBoundingClientRect(),O=window.innerWidth,Ie=window.innerHeight,fe=Math.min(O-24,440);let T=de.left;T+fe>O-12&&(T=Math.max(12,O-fe-12)),T<12&&(T=12);const j=de.top-16,ie=Ie-de.bottom-16;if(j>=320||j>=ie){const Z=Math.min(560,Math.max(220,j));L({placement:"top",bottom:Ie-de.top+8,left:T,width:fe,maxHeight:Z})}else{const Z=Math.min(560,Math.max(220,ie));L({placement:"bottom",top:de.bottom+8,left:T,width:fe,maxHeight:Z})}},[a]);q.useLayoutEffect(()=>{if(!e){L(null);return}return V(),window.addEventListener("resize",V),window.addEventListener("scroll",V,!0),()=>{window.removeEventListener("resize",V),window.removeEventListener("scroll",V,!0)}},[e,V]);const D=xi(s),U=S.find($=>$.id===D)??null,ee=Y1(_);q.useEffect(()=>{e&&(ee||_==="custom"||ji[_]?.keyless)&&R(_)},[e,_,ee,R]),q.useEffect(()=>{e||(N(!1),y(!1),g(""))},[e]);const ue=q.useMemo(()=>{const $=m.trim().toLowerCase();return $?S.filter(de=>de.name.toLowerCase().includes($)||de.id.toLowerCase().includes($)):S},[S,m]),re=Om(U),ne=$=>{const de=re.length>0?Hv($):s.effort;o(_,$.id,de),i()},P=$=>{$?.preventDefault();const de=x.trim();de&&(o(_,de,s.effort),b(""),y(!1),i())},ae=$=>{u({provider:$,model:""}),N(!1),g(""),R($)};return!e||!A?null:Ao.createPortal(c.jsxs("div",{ref:p,style:{position:"fixed",left:`${A.left}px`,width:`${A.width}px`,maxHeight:`${A.maxHeight}px`,...A.placement==="top"?{bottom:`${A.bottom}px`}:{top:`${A.top}px`}},className:"z-50 flex flex-col overflow-hidden rounded-2xl border border-line surface-lift shadow-float",role:"dialog","aria-label":"Choose a model",children:[c.jsxs("div",{className:"flex shrink-0 items-center gap-2 border-b border-line px-3 py-2.5",children:[c.jsx("span",{className:"flex h-7 w-7 items-center justify-center rounded-lg bg-accent-soft text-accent",children:c.jsx(Yr,{size:14})}),c.jsxs("div",{className:"min-w-0 flex-1",children:[c.jsx("p",{className:"text-[12px] font-semibold text-ink",children:"Model"}),c.jsxs("p",{className:"text-[9.5px] text-faint",children:[S.length>0?`${S.length} live models`:"Load models from this provider",F==="catalog"?" · catalog fallback":""]})]}),c.jsx("button",{type:"button",className:"icon-button h-7 w-7",onClick:()=>{R(_,!0)},disabled:C,title:"Refresh live models","aria-label":"Refresh live models",children:c.jsx(Wi,{size:12,className:pe(C&&"animate-spin")})}),c.jsx("button",{type:"button",className:"icon-button h-7 w-7",onClick:()=>{i(),d("models")},title:"Provider settings","aria-label":"Provider settings",children:c.jsx(_v,{size:13})})]}),c.jsxs("div",{className:"shrink-0 border-b border-line",children:[c.jsxs("button",{type:"button",onClick:()=>N($=>!$),className:"flex w-full items-center gap-2 px-3 py-2 text-left","aria-expanded":k,children:[c.jsx("span",{className:"text-[10px] font-medium uppercase tracking-[0.12em] text-faint",children:"Provider"}),c.jsx("span",{className:"text-[11.5px] font-medium text-ink",children:ji[_]?.name??_}),ee?c.jsxs("span",{className:"flex items-center gap-1 text-[9.5px] text-success",children:[c.jsx("span",{className:"h-1.5 w-1.5 rounded-full bg-success"})," connected"]}):c.jsxs("span",{className:"flex items-center gap-1 text-[9.5px] text-warning",children:[c.jsx(jh,{size:9})," key needed"]}),c.jsx(Gr,{size:12,className:pe("ml-auto text-faint transition-transform",k&&"rotate-180")})]}),k&&c.jsx("div",{className:"thin-scroll max-h-44 overflow-y-auto border-t border-line/70 px-1.5 py-1.5",children:Cm.map($=>{const de=Y1($.id)||$.keyless||$.id==="custom";return c.jsxs("button",{type:"button",onClick:()=>ae($.id),className:pe("flex w-full items-center gap-2 rounded-md px-2 py-1.5 text-left text-[11px] transition-colors",$.id===_?"bg-accent-soft text-accent":"text-muted hover:bg-raised hover:text-ink"),children:[c.jsx("span",{className:"min-w-0 flex-1 truncate",children:$.name}),!de&&c.jsx("span",{className:"text-[9px] text-warning",children:"key"}),$.id===_&&c.jsx(Sn,{size:11})]},$.id)})})]}),!ee&&_!=="custom"&&!ji[_]?.keyless?c.jsxs("div",{className:"flex flex-col items-center gap-2 px-6 py-8 text-center",children:[c.jsx("span",{className:"flex h-9 w-9 items-center justify-center rounded-xl bg-warning/10 text-warning",children:c.jsx(jh,{size:16})}),c.jsxs("p",{className:"text-[12px] font-medium text-ink",children:["Connect ",ji[_]?.name??_]}),c.jsx("p",{className:"max-w-[280px] text-[10.5px] leading-relaxed text-muted",children:"Keys are encrypted by the local daemon before they are written to disk. They never enter this page after saving."}),c.jsx("button",{type:"button",onClick:()=>{i(),d("models")},className:"mt-1 inline-flex h-7 items-center gap-1.5 rounded-lg bg-ink px-3 text-[11px] font-medium text-panel",children:"Add API key"})]}):c.jsxs(c.Fragment,{children:[c.jsxs("div",{className:"shrink-0 px-3 py-2",children:[c.jsxs("div",{className:"relative",children:[c.jsx(ll,{size:11,className:"pointer-events-none absolute left-2 top-1/2 -translate-y-1/2 text-faint"}),c.jsx("input",{value:m,onChange:$=>g($.target.value),placeholder:"Search models",className:"h-7 w-full rounded-md border border-transparent bg-raised/60 pl-7 pr-2 text-[10.5px] text-ink outline-none focus:border-line focus:bg-panel","aria-label":"Search models"})]}),C&&S.length===0&&c.jsxs("p",{className:"flex items-center gap-1.5 px-1 pt-2 text-[10.5px] text-faint",children:[c.jsx(Tn,{size:11})," Loading live models…"]}),M&&c.jsxs("div",{className:"mt-2 flex items-start gap-1.5 rounded-md border border-danger/20 bg-danger/[0.04] px-2 py-1.5",children:[c.jsx(Fu,{size:11,className:"mt-0.5 shrink-0 text-danger"}),c.jsx("p",{className:"min-w-0 flex-1 text-[10px] leading-relaxed text-danger",children:M}),c.jsx("button",{type:"button",onClick:()=>{R(_,!0)},className:"text-[10px] font-medium text-danger",children:"Retry"})]}),I&&!M&&c.jsx("p",{className:"mt-1.5 px-1 text-[9.5px] leading-relaxed text-faint",children:I})]}),c.jsxs("div",{className:"thin-scroll min-h-0 flex-1 overflow-y-auto px-1.5 pb-2",children:[ue.map($=>{const de=$.id===D;return c.jsxs("button",{type:"button",onClick:()=>ne($),className:pe("flex w-full items-start gap-2 rounded-lg px-2 py-2 text-left transition-colors",de?"bg-accent-soft":"hover:bg-raised"),children:[c.jsx("span",{className:pe("mt-0.5 flex h-5 w-5 shrink-0 items-center justify-center rounded-md",de?"bg-accent text-on-accent":"bg-raised text-faint"),children:de?c.jsx(Sn,{size:11}):c.jsx(Yr,{size:10})}),c.jsxs("span",{className:"min-w-0 flex-1",children:[c.jsxs("span",{className:"flex items-center gap-1.5",children:[c.jsx("span",{className:pe("truncate text-[11.5px] font-medium",de?"text-accent":"text-ink"),children:$.name||$.id}),$.free&&c.jsx("span",{className:"rounded-full border border-success/25 px-1.5 py-px text-[8.5px] font-medium text-success",children:"free"})]}),c.jsxs("span",{className:"mt-0.5 flex flex-wrap items-center gap-1.5 text-[9px] text-faint",children:[c.jsx("span",{className:"truncate font-mono",children:$.id}),$.context?c.jsxs("span",{children:[K1($.context)," ctx"]}):null,$.reasoningOptions.length>0?c.jsxs("span",{className:"inline-flex items-center gap-0.5 text-accent/80",children:[c.jsx(Ah,{size:8})," reasoning"]}):null,$.vision?c.jsx("span",{children:"vision"}):null,$.toolCall?null:c.jsx("span",{className:"text-warning",children:"no tools"})]})]})]},$.id)}),!C&&ue.length===0&&S.length>0&&c.jsxs("p",{className:"px-2 py-4 text-center text-[10.5px] text-faint",children:["No model matches “",m,"”."]}),!C&&S.length===0&&!M&&c.jsxs("div",{className:"px-2 py-4 text-center",children:[c.jsx("p",{className:"text-[10.5px] text-faint",children:"This provider returned no usable chat models."}),c.jsx("button",{type:"button",onClick:()=>y(!0),className:"mt-1.5 text-[10.5px] font-medium text-accent hover:underline",children:"Enter a model ID manually"})]})]}),c.jsxs("div",{className:"shrink-0 border-t border-line px-3 py-2.5",children:[U?c.jsxs(c.Fragment,{children:[c.jsxs("div",{className:"flex items-center justify-between gap-2",children:[c.jsxs("span",{className:"flex items-center gap-1.5 text-[10.5px] font-medium text-muted",children:[c.jsx(Ah,{size:11}),"Effort"]}),re.length>0?c.jsx("select",{value:s.effort,onChange:$=>{o(_,U.id,$.target.value)},className:"h-6 rounded-md border border-line bg-panel px-1.5 text-[10px] text-ink outline-none","aria-label":"Reasoning effort",children:re.map($=>c.jsx("option",{value:$,children:Uv($)},$))}):null]}),c.jsx("p",{className:"mt-1 text-[9.5px] leading-relaxed text-faint",children:Fv(U)}),c.jsxs("div",{className:"mt-2 flex flex-wrap items-center gap-2 text-[9px] text-faint",children:[U.maxOutput?c.jsxs("span",{children:["max output ",K1(U.maxOutput)]}):null,U.family?c.jsx("span",{children:U.family}):null,c.jsx("span",{className:"rounded border border-line px-1 py-px font-mono",children:U.apiKind})]})]}):c.jsxs("div",{className:"flex items-center justify-between gap-2",children:[c.jsx("p",{className:"text-[10px] text-faint",children:"Select a model to see live reasoning controls."}),c.jsxs("button",{type:"button",onClick:()=>y($=>!$),className:"inline-flex items-center gap-1 text-[10px] font-medium text-accent",children:[c.jsx(Nv,{size:10})," ID"]})]}),(v||U&&D!==U.id)&&c.jsxs("form",{onSubmit:P,className:"mt-2 flex items-center gap-1.5",children:[c.jsx("input",{value:x,onChange:$=>b($.target.value),placeholder:"model-id",className:"h-7 min-w-0 flex-1 rounded-md border border-line bg-panel px-2 font-mono text-[10.5px] outline-none","aria-label":"Model ID"}),c.jsx("button",{type:"submit",disabled:!x.trim(),className:"inline-flex h-7 items-center rounded-md bg-ink px-2.5 text-[10px] font-medium text-panel disabled:opacity-40",children:"Use"})]}),U&&c.jsx("button",{type:"button",onClick:()=>y($=>!$),className:"mt-1.5 text-[9.5px] font-medium text-faint hover:text-ink",children:v?"Hide manual ID":"Use a model ID that is not listed"})]})]})]}),document.body)}const Xi={outline:"#6b3410",body:"#fbbf24",shade:"#f59e0b",highlight:"#fef3c7",ray:"#f59e0b",eye:"#1a0f06",mark:"#4a2508",blush:"#fb7185",sweat:"#38bdf8",mint:"#34d399",sky:"#60a5fa",rose:"#fb7185"},ZO={wave:"animate-bob",idle:"animate-float-slow",thinking:"animate-float",working:"animate-bob-fast",typing:"animate-bob",happy:"animate-pop",alert:"animate-bounce",error:"animate-shake",sleepy:"animate-float-slow",party:"animate-pop"},QO=new Set(["thinking","working","typing","party","wave"]),Lw=[[4,6,9],[5,5,10],[6,4,11],[7,4,11],[8,4,11],[9,4,11],[10,5,10],[11,6,9]],Zs=new Set;for(const[e,i,a]of Lw)for(let s=i;s<=a;s++)Zs.add(`${s},${e}`);const Iw=[];for(let e=2;e<=13;e++)for(let i=2;i<=13;i++){if(Zs.has(`${i},${e}`))continue;(Zs.has(`${i-1},${e}`)||Zs.has(`${i+1},${e}`)||Zs.has(`${i},${e-1}`)||Zs.has(`${i},${e+1}`))&&Iw.push([i,e])}const JO=[[7,0,2,2,"ray"],[7,14,2,2,"ray"],[0,7,2,2,"ray"],[14,7,2,2,"ray"]],WO=[[2,2,1,1,"ray"],[13,2,1,1,"ray"],[2,13,1,1,"ray"],[13,13,1,1,"ray"],[3,3,1,1,"ray"],[12,3,1,1,"ray"],[3,12,1,1,"ray"],[12,12,1,1,"ray"]];function Zi(e,i=0,a=0){const[s,o]=e==="sm"?[1,1]:e==="md"?[1,2]:e==="lg"?[2,2]:[2,1],u=(e==="sm"||e==="flat"?8:7)+a;return[[(e==="lg"||e==="flat"?5:6)+i,u,s,o,"eye"],[9+i,u,s,o,"eye"]]}const V1=[[4,9,1,1,"blush"],[11,9,1,1,"blush"]];function eM(e){switch(e){case"wave":return{eyes:Zi("md"),extras:V1,eyeClass:"pxs-blink"};case"happy":return{eyes:Zi("lg"),extras:[...V1,[13,1,1,3,"ray"],[12,2,3,1,"ray"]],clearCorner:!0};case"party":return{eyes:Zi("lg"),extras:[[1,3,1,1,"rose"],[14,2,1,1,"mint"],[0,11,1,1,"sky"],[15,12,1,1,"rose"],[4,0,1,1,"mint"],[11,0,1,1,"sky"],[2,14,1,1,"mint"],[13,14,1,1,"rose"]],clearCorner:!0};case"thinking":return{eyes:Zi("md",1,-1),extras:[[10,1,1,1,"mark"],[12,1,1,1,"mark"],[14,1,1,1,"mark"]],clearCorner:!0};case"working":return{eyes:Zi("sm",0,1),extras:[],eyeClass:"pxs-scan"};case"typing":return{eyes:Zi("md",0,1),extras:[],eyeClass:"pxs-scan"};case"alert":return{eyes:Zi("lg"),extras:[[13,0,1,3,"mark"],[13,4,1,1,"mark"]],clearCorner:!0};case"error":return{eyes:Zi("sm",0,1),extras:[[12,3,1,1,"sweat"],[12,4,1,2,"sweat"]],clearCorner:!0};case"sleepy":return{eyes:Zi("flat"),extras:[[12,1,4,1,"mark"],[14,2,1,1,"mark"],[13,3,1,1,"mark"],[12,4,4,1,"mark"]],clearCorner:!0};default:return{eyes:Zi("md"),extras:[],eyeClass:"pxs-blink"}}}function Uw({mood:e="idle",size:i=40,className:a,animate:s=!0}){const o=MO[e],u=s&&QO.has(e),d=eM(e);return c.jsx("span",{className:pe("inline-flex shrink-0 select-none",s&&ZO[e],a),role:"img","aria-label":`PixleSol — ${o}`,title:`PixleSol — ${o}`,children:c.jsxs("svg",{viewBox:"0 0 16 16",width:i,height:i,shapeRendering:"crispEdges","aria-hidden":"true",children:[c.jsx("g",{className:u?"pxs-a":void 0,children:JO.map(([p,m,g,x,b],v)=>c.jsx("rect",{x:p,y:m,width:g,height:x,fill:Xi[b]},v))}),c.jsx("g",{className:u?"pxs-b":void 0,opacity:d.clearCorner?.35:void 0,children:WO.map(([p,m,g,x,b],v)=>c.jsx("rect",{x:p,y:m,width:g,height:x,fill:Xi[b]},v))}),Iw.map(([p,m])=>c.jsx("rect",{x:p,y:m,width:1,height:1,fill:Xi.outline},`o${p},${m}`)),Lw.map(([p,m,g])=>c.jsx("rect",{x:m,y:p,width:g-m+1,height:1,fill:Xi.body},`b${p}`)),c.jsx("rect",{x:5,y:11,width:6,height:1,fill:Xi.shade}),c.jsx("rect",{x:9,y:10,width:2,height:1,fill:Xi.shade}),c.jsx("rect",{x:6,y:4,width:2,height:1,fill:Xi.highlight}),c.jsx("rect",{x:5,y:5,width:1,height:1,fill:Xi.highlight}),c.jsx("g",{className:s?d.eyeClass:void 0,children:d.eyes.map(([p,m,g,x,b],v)=>c.jsx("rect",{x:p,y:m,width:g,height:x,fill:Xi[b]},v))}),d.extras.map(([p,m,g,x,b],v)=>c.jsx("rect",{x:p,y:m,width:g,height:x,fill:Xi[b]},`x${v}`))]})})}const tM=/\.(txt|md|markdown|ts|tsx|js|jsx|mjs|cjs|json|css|scss|html|vue|svelte|py|go|rs|rb|java|kt|cs|c|h|cpp|hpp|php|swift|sh|bash|zsh|yml|yaml|toml|ini|sql|csv|xml|gitignore|env)$/i,nh=6,nM=5*1024*1024,iM=512*1024,ih=[{name:"search",usage:"/search <query>",description:"Search the web and answer with sources",takesArgs:!0},{name:"plan",usage:"/plan [task]",description:"Read-only investigation, then a plan",takesArgs:!1},{name:"build",usage:"/build [task]",description:"Allow edits and commands",takesArgs:!1},{name:"new",usage:"/new",description:"Start a new conversation",takesArgs:!1},{name:"workspace",usage:"/workspace",description:"Open the folder panel",takesArgs:!1},{name:"deploy",usage:"/deploy",description:"Deploy a project folder",takesArgs:!1},{name:"settings",usage:"/settings",description:"Open settings",takesArgs:!1},{name:"clear",usage:"/clear",description:"Clear this conversation",takesArgs:!1}];function X1(){return typeof crypto<"u"&&"randomUUID"in crypto?crypto.randomUUID():`${Date.now()}-${Math.random().toString(36).slice(2)}`}function Z1({value:e,onChange:i,onSend:a,onStop:s,onCommand:o,streaming:u,hints:d=!1,autoFocus:p=!1,placeholder:m="How can I help you today?",contextPct:g,contextTitle:x,pixleMood:b}){const v=Re(),y=Re(oe=>oe.update),k=Re(oe=>oe.setMode),N=be(oe=>oe.notify),_=be(oe=>oe.openSettings),S=be(oe=>oe.composerFocus),C=be(oe=>oe.setWorkspaceOpen),M=Be(oe=>oe.info),[I,F]=q.useState([]),[R,A]=q.useState(!1),[L,V]=q.useState(!1),[D,U]=q.useState(!1),[ee,ue]=q.useState(!1),[re,ne]=q.useState(!1),[P,ae]=q.useState(0),$=q.useRef(null),de=q.useRef(null),O=q.useRef(null),Ie=q.useRef(null),fe=q.useRef(null);zw(Ie,()=>ue(!1),ee,fe);const T=xi(v),j=tA(v.provider),ie=sd(),he=rl(v),Z=Om(ie),we=v.skills.filter(oe=>oe.enabled).length,Ce=Rw(v.tools),J=he?T?j.find(oe=>oe.id===T)?.name??T:"Select model":"No provider",ge=q.useMemo(()=>{if(!e.startsWith("/")||e.includes(`
|
|
241
|
+
`))return null;const oe=e.slice(1).split(/\s/)[0];return e.slice(1).includes(" ")?null:oe.toLowerCase()},[e]),ke=q.useMemo(()=>ge===null?[]:ih.filter(oe=>oe.name.startsWith(ge)),[ge]);q.useEffect(()=>{ae(0)},[ge]),q.useLayoutEffect(()=>{const oe=$.current;oe&&(oe.style.height="auto",oe.style.height=`${Math.min(Math.max(oe.scrollHeight,52),220)}px`)},[e]),q.useEffect(()=>{if(!p||!window.matchMedia("(pointer: fine)").matches)return;const oe=window.setTimeout(()=>$.current?.focus(),80);return()=>window.clearTimeout(oe)},[p]),q.useEffect(()=>{S>0&&$.current?.focus()},[S]),q.useEffect(()=>{he||U(!1)},[he]),q.useEffect(()=>{ie&&!Z.length&&y({effort:"medium"})},[ie,Z.length,y]);const Dt=async oe=>{if(oe.length===0)return;let Xe=nh-I.length;if(Xe<=0){N(`You can attach up to ${nh} files per message.`,"error");return}const pt=[];for(const ft of oe){if(Xe<=0){N(`Only ${nh} attachments were added.`,"info");break}const rn=/^image\/(png|jpeg|webp|gif)$/i.test(ft.type),te=ft.type.startsWith("text/")||tM.test(ft.name);if(rn){if(ft.size>nM){N(`${ft.name} is larger than 5 MB.`,"error");continue}pt.push({id:X1(),name:ft.name,kind:"image",mime:ft.type,dataUrl:await SO(ft),size:ft.size}),Xe-=1}else if(te){if(ft.size>iM){N(`${ft.name} is larger than 512 KB.`,"error");continue}pt.push({id:X1(),name:ft.name,kind:"text",mime:ft.type||"text/plain",text:await Ow(ft),size:ft.size}),Xe-=1}else N(`Can't attach ${ft.name}. Use an image, text or code file.`,"error")}pt.length>0&&F(ft=>[...ft,...pt])},Ut=async()=>{if(u||re)return;const oe=e.trim();if(!(!oe&&I.length===0)){if(oe.startsWith("/")&&!I.length){const[Xe,...pt]=oe.slice(1).split(/\s+/),ft=ih.find(rn=>rn.name===Xe.toLowerCase());if(ft){const rn=pt.join(" ").trim();if(o){ne(!0);try{await o(ft.name,rn)&&(i(""),requestAnimationFrame(()=>$.current?.focus()))}catch(te){N(te instanceof Error?te.message:"That command failed.","error")}finally{ne(!1)}return}}}ne(!0),U(!1);try{await a(e,I)&&(i(""),F([]),requestAnimationFrame(()=>$.current?.focus()))}catch(Xe){N(Xe instanceof Error?Xe.message:"The message could not be sent.","error")}finally{ne(!1)}}},$t=(oe,Xe)=>{if(Xe){i(`/${oe} `),$.current?.focus();return}i(`/${oe}`),window.setTimeout(()=>{Fe(`/${oe}`)},0)},Fe=async oe=>{const[Xe]=oe.slice(1).split(/\s+/),pt=ih.find(ft=>ft.name===Xe.toLowerCase());if(!(!pt||!o)){ne(!0);try{await o(pt.name,oe.slice(1).split(/\s+/).slice(1).join(" "))&&i("")}finally{ne(!1)}}},vt=oe=>{if(ke.length>0){if(oe.key==="ArrowDown"){oe.preventDefault(),ae(Xe=>(Xe+1)%ke.length);return}if(oe.key==="ArrowUp"){oe.preventDefault(),ae(Xe=>(Xe-1+ke.length)%ke.length);return}if(oe.key==="Enter"&&!oe.shiftKey&&!oe.nativeEvent.isComposing){oe.preventDefault();const Xe=ke[P];Xe&&$t(Xe.name,Xe.takesArgs);return}if(oe.key==="Escape"){oe.preventDefault(),i("");return}}if(oe.key==="Enter"&&!oe.shiftKey&&!oe.nativeEvent.isComposing){if(oe.preventDefault(),u)return;Ut()}oe.key==="Escape"&&U(!1)},et=oe=>{const Xe=Array.from(oe.clipboardData.files);Xe.length>0&&(oe.preventDefault(),Dt(Xe))},cn=oe=>{oe.preventDefault(),V(!1),Dt(Array.from(oe.dataTransfer.files))},$n=!e.trim()&&I.length===0||re||u,jn=g===void 0?"":g>=95?"text-danger":g>=70?"text-warning":"text-faint";return c.jsxs("div",{className:"relative w-full",children:[c.jsx(XO,{open:D&&he,onClose:()=>U(!1),triggerRef:O}),ke.length>0&&c.jsxs("div",{className:"absolute bottom-[calc(100%+8px)] left-0 z-40 w-[min(94vw,360px)] overflow-hidden rounded-xl border border-line surface-lift shadow-float",children:[c.jsxs("div",{className:"flex items-center gap-1.5 border-b border-line px-3 py-2 text-[10px] font-medium uppercase tracking-[0.12em] text-faint",children:[c.jsx(iT,{size:10})," Commands"]}),ke.map((oe,Xe)=>c.jsxs("button",{type:"button",onMouseDown:pt=>pt.preventDefault(),onClick:()=>$t(oe.name,oe.takesArgs),className:pe("flex w-full items-center gap-2 px-3 py-2 text-left",Xe===P?"bg-accent-soft":"hover:bg-raised"),children:[c.jsx("span",{className:pe("font-mono text-[10.5px]",Xe===P?"text-accent":"text-ink"),children:oe.usage}),c.jsx("span",{className:"min-w-0 flex-1 truncate text-[10px] text-faint",children:oe.description})]},oe.name))]}),c.jsxs("div",{className:"mb-2 flex flex-wrap items-center gap-1.5",children:[c.jsxs("button",{type:"button",onClick:()=>C(!0),className:"chip h-7 max-w-[220px] gap-1.5 px-2.5 text-[11px]",title:M.available?M.root:"Choose a project folder",children:[c.jsx(Kr,{size:12,className:"shrink-0 text-faint"}),c.jsx("span",{className:"truncate",children:M.available?M.name:"No folder"})]}),c.jsxs("button",{type:"button",onClick:()=>k(v.mode==="plan"?"build":"plan"),className:"chip h-7 gap-1.5 px-2.5 text-[11px]",title:v.mode==="plan"?"Switch to Build mode":"Switch to Plan mode (read-only)",children:[v.mode==="plan"?c.jsx(ym,{size:12,className:"text-faint"}):c.jsx(hr,{size:12,className:"text-faint"}),v.mode==="plan"?"Plan mode":"Build mode"]}),c.jsxs("button",{type:"button",onClick:()=>y({webSearchEnabled:!v.webSearchEnabled}),className:pe("chip h-7 gap-1.5 px-2.5 text-[11px]",v.webSearchEnabled&&"chip-active"),title:"Allow OpenSol to search the web and read pages","aria-pressed":v.webSearchEnabled,children:[c.jsx(Jr,{size:12}),"Search"]}),c.jsxs("label",{className:pe("chip h-7 cursor-pointer gap-1 px-2",!Z.length&&"cursor-not-allowed opacity-45"),title:Z.length?"Reasoning effort sent to the model":"This model advertises no effort levels",children:[c.jsx(Ah,{size:12}),c.jsx("select",{value:v.effort,disabled:!Z.length,onChange:oe=>y({effort:oe.target.value}),className:"bg-transparent text-[11px] font-medium text-ink outline-none disabled:cursor-not-allowed","aria-label":"Reasoning effort",children:(Z.length?Z:[v.effort]).map(oe=>c.jsx("option",{value:oe,children:Uv(oe)},oe))})]}),we>0&&c.jsxs("button",{type:"button",onClick:()=>_("skills"),className:"chip h-7 gap-1 px-2.5 text-[11px]",title:"Manage loaded skills",children:[we," skill",we===1?"":"s"]})]}),c.jsxs("div",{onDragOver:oe=>{oe.dataTransfer.types.includes("Files")&&(oe.preventDefault(),V(!0))},onDragLeave:oe=>{oe.currentTarget.contains(oe.relatedTarget)||V(!1)},onDrop:cn,className:pe("surface-lift composer-shadow relative rounded-2xl border transition-all duration-200",R||L?"border-accent/35":"border-line",u&&"composer-glow border-accent/30",L&&"ring-4 ring-accent/10"),children:[R&&!L&&c.jsx("div",{className:"pointer-events-none absolute inset-0 rounded-2xl ring-4 ring-accent/[0.03]","aria-hidden":"true"}),c.jsxs("div",{className:"relative px-3.5 pb-1 pt-3",children:[I.length>0&&c.jsx("div",{className:"flex flex-wrap gap-2 px-1 pb-2",children:I.map(oe=>oe.kind==="image"?c.jsxs("div",{className:"relative",children:[c.jsx("img",{src:oe.dataUrl,alt:oe.name,className:"h-14 w-14 rounded-lg border border-line object-cover"}),c.jsx("button",{type:"button",onClick:()=>F(Xe=>Xe.filter(pt=>pt.id!==oe.id)),className:"absolute -right-1.5 -top-1.5 flex h-[18px] w-[18px] items-center justify-center rounded-full border border-line bg-panel text-muted shadow-sm transition-colors hover:text-ink","aria-label":`Remove ${oe.name}`,children:c.jsx(Ta,{size:10})})]},oe.id):c.jsxs("span",{className:"inline-flex h-8 max-w-[220px] items-center gap-1.5 rounded-lg border border-line bg-raised/70 pl-2 pr-1 text-[10.5px] text-muted",children:[c.jsx(Na,{size:11,className:"shrink-0"}),c.jsx("span",{className:"min-w-0 flex-1 truncate",children:oe.name}),c.jsx("span",{className:"shrink-0 text-faint",children:Co(oe.size)}),c.jsx("button",{type:"button",onClick:()=>F(Xe=>Xe.filter(pt=>pt.id!==oe.id)),className:"flex h-5 w-5 shrink-0 items-center justify-center rounded text-faint hover:bg-panel hover:text-ink","aria-label":`Remove ${oe.name}`,children:c.jsx(Ta,{size:10})})]},oe.id))}),c.jsx("textarea",{ref:$,value:e,onChange:oe=>i(oe.target.value),onKeyDown:vt,onPaste:et,onFocus:()=>A(!0),onBlur:()=>A(!1),placeholder:m,rows:1,"aria-label":"Message OpenSol",className:"block w-full resize-none bg-transparent px-2 py-1.5 text-[15.5px] leading-[1.6] text-ink outline-none placeholder:text-faint",style:{minHeight:52,maxHeight:220}})]}),c.jsxs("div",{className:"flex items-end justify-between gap-2 px-2.5 pb-2 pt-1",children:[c.jsxs("div",{className:"flex min-w-0 items-center gap-0.5",children:[c.jsxs("div",{className:"relative",children:[c.jsxs("button",{ref:fe,type:"button",onClick:()=>ue(oe=>!oe),className:"flex h-8 items-center gap-1.5 rounded-lg px-2 text-[11px] font-medium text-muted transition-colors hover:bg-raised hover:text-ink",title:"Choose how much OpenSol can do without asking","aria-expanded":ee,children:[c.jsx(Vr,{size:13,className:"text-faint"}),FO(Ce),c.jsx(Gr,{size:11,className:pe("text-faint transition-transform",ee&&"rotate-180")})]}),ee&&c.jsxs("div",{ref:Ie,className:"surface-lift absolute bottom-[calc(100%+8px)] left-0 z-40 w-[290px] overflow-hidden rounded-2xl border border-line p-1.5 shadow-float",children:[c.jsx("p",{className:"px-2 pb-1 pt-1.5 text-[10px] font-medium uppercase tracking-[0.1em] text-faint",children:"Permissions"}),$m.map(oe=>c.jsxs("button",{type:"button",onClick:()=>{y({tools:Dw(v.tools,oe.value)}),ue(!1)},className:"flex w-full items-start gap-2 rounded-lg px-2 py-1.5 text-left transition-colors hover:bg-raised",children:[c.jsx("span",{className:"mt-0.5 flex h-4 w-4 shrink-0 items-center justify-center",children:Ce===oe.value?c.jsx(Sn,{size:12,className:"text-accent"}):c.jsx("span",{className:"h-1.5 w-1.5 rounded-full bg-line"})}),c.jsxs("span",{className:"min-w-0",children:[c.jsx("span",{className:"block text-[11.5px] font-medium text-ink",children:oe.label}),c.jsx("span",{className:"mt-0.5 block text-[10px] leading-relaxed text-faint",children:oe.description})]})]},oe.value))]})]}),c.jsx("button",{type:"button",className:"icon-button h-8 w-8",onClick:()=>de.current?.click(),title:"Attach images or text files","aria-label":"Attach files",children:c.jsx(B2,{size:15})}),c.jsx("input",{ref:de,type:"file",multiple:!0,accept:"image/png,image/jpeg,image/webp,image/gif,.md,.markdown,.txt,.ts,.tsx,.js,.jsx,.json,.css,.html,.py,.go,.rs,.rb,.java,.cs,.sh,.yml,.yaml,.toml,.sql",className:"hidden",onChange:oe=>{oe.target.files&&Dt(Array.from(oe.target.files)),oe.target.value=""}})]}),c.jsxs("div",{className:"flex min-w-0 shrink-0 items-center gap-1",children:[g!==void 0&&c.jsxs("span",{className:pe("hidden items-center gap-1 px-1 text-[10.5px] tabular-nums sm:flex",jn),title:x,children:[c.jsx("span",{className:"h-1.5 w-1.5 rounded-full bg-current"}),g,"%"]}),c.jsxs("button",{ref:O,type:"button",disabled:!he,onClick:()=>U(oe=>!oe),className:"flex h-8 max-w-[190px] items-center gap-1.5 rounded-lg px-2 text-[11px] font-medium text-muted transition-colors hover:bg-raised hover:text-ink disabled:cursor-not-allowed disabled:opacity-45 sm:max-w-[260px]",title:he?"Choose model and reasoning effort":"Add a provider key in Settings first",children:[c.jsx(Yr,{size:12,className:"shrink-0 text-faint"}),c.jsx("span",{className:"truncate",children:J}),c.jsx(Gr,{size:11,className:pe("shrink-0 text-faint transition-transform duration-150",D&&"rotate-180")})]}),u?c.jsx("button",{type:"button",onClick:s,className:"flex h-8 w-8 items-center justify-center rounded-full bg-ink text-panel transition-opacity hover:opacity-85","aria-label":"Stop generating",title:"Stop",children:c.jsx(Nm,{size:11,fill:"currentColor"})}):c.jsx("button",{type:"button",onClick:()=>{Ut()},disabled:$n,className:pe("flex h-8 w-8 items-center justify-center rounded-full transition-all duration-150",$n?"cursor-not-allowed bg-raised text-faint":"bg-accent text-on-accent hover:brightness-110"),"aria-label":"Send message",title:"Send (Enter)",children:re?c.jsx("span",{className:"h-3 w-3 animate-spin rounded-full border border-current border-t-transparent"}):c.jsx(aM,{})})]})]}),L&&c.jsxs("div",{className:"absolute inset-0 z-20 flex flex-col items-center justify-center gap-1.5 rounded-2xl border-2 border-dashed border-accent/45 bg-panel/95",children:[c.jsx(Tm,{size:18,className:"text-accent"}),c.jsx("p",{className:"text-[12px] font-medium text-ink",children:"Drop files to attach"}),c.jsx("p",{className:"text-[10.5px] text-faint",children:"Images up to 5 MB · text up to 512 KB"})]}),b&&c.jsx(Uw,{mood:b,size:44,className:"pointer-events-none absolute -top-[34px] right-4 z-10 hidden sm:inline-flex"})]}),d&&c.jsxs("div",{className:"mt-2.5 flex items-center justify-between gap-4 px-2 text-[11px] text-faint",children:[c.jsx("span",{className:"hidden sm:inline",children:"Enter to send · Shift + Enter for a new line · / for commands"}),c.jsxs("span",{className:"flex items-center gap-1 sm:ml-auto",children:[c.jsx(Vr,{size:11}),"Local daemon · keys encrypted at rest"]})]})]})}function aM(){return c.jsx("svg",{viewBox:"0 0 16 16",width:"15",height:"15",fill:"none","aria-hidden":"true",children:c.jsx("path",{d:"M8 12.5V3.5M4.2 7.2L8 3.4l3.8 3.8",stroke:"currentColor",strokeWidth:"1.7",strokeLinecap:"round",strokeLinejoin:"round"})})}function rM(e,i){const a={};return(e[e.length-1]===""?[...e,""]:e).join((a.padRight?" ":"")+","+(a.padLeft===!1?"":" ")).trim()}const sM=/^[$_\p{ID_Start}][$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,lM=/^[$_\p{ID_Start}][-$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,oM={};function Q1(e,i){return(oM.jsx?lM:sM).test(e)}const cM=/[ \t\n\f\r]/g;function uM(e){return typeof e=="object"?e.type==="text"?J1(e.value):!1:J1(e)}function J1(e){return e.replace(cM,"")===""}class Oo{constructor(i,a,s){this.normal=a,this.property=i,s&&(this.space=s)}}Oo.prototype.normal={};Oo.prototype.property={};Oo.prototype.space=void 0;function Bw(e,i){const a={},s={};for(const o of e)Object.assign(a,o.property),Object.assign(s,o.normal);return new Oo(a,s,i)}function em(e){return e.toLowerCase()}class Zn{constructor(i,a){this.attribute=a,this.property=i}}Zn.prototype.attribute="";Zn.prototype.booleanish=!1;Zn.prototype.boolean=!1;Zn.prototype.commaOrSpaceSeparated=!1;Zn.prototype.commaSeparated=!1;Zn.prototype.defined=!1;Zn.prototype.mustUseProperty=!1;Zn.prototype.number=!1;Zn.prototype.overloadedBoolean=!1;Zn.prototype.property="";Zn.prototype.spaceSeparated=!1;Zn.prototype.space=void 0;let dM=0;const Ve=ts(),tn=ts(),tm=ts(),xe=ts(),jt=ts(),qr=ts(),ri=ts();function ts(){return 2**++dM}const nm=Object.freeze(Object.defineProperty({__proto__:null,boolean:Ve,booleanish:tn,commaOrSpaceSeparated:ri,commaSeparated:qr,number:xe,overloadedBoolean:tm,spaceSeparated:jt},Symbol.toStringTag,{value:"Module"})),ah=Object.keys(nm);class Pm extends Zn{constructor(i,a,s,o){let u=-1;if(super(i,a),W1(this,"space",o),typeof s=="number")for(;++u<ah.length;){const d=ah[u];W1(this,ah[u],(s&nm[d])===nm[d])}}}Pm.prototype.defined=!0;function W1(e,i,a){a&&(e[i]=a)}function cl(e){const i={},a={};for(const[s,o]of Object.entries(e.properties)){const u=new Pm(s,e.transform(e.attributes||{},s),o,e.space);e.mustUseProperty&&e.mustUseProperty.includes(s)&&(u.mustUseProperty=!0),i[s]=u,a[em(s)]=s,a[em(u.attribute)]=s}return new Oo(i,a,e.space)}const $w=cl({properties:{ariaActiveDescendant:null,ariaAtomic:tn,ariaAutoComplete:null,ariaBusy:tn,ariaChecked:tn,ariaColCount:xe,ariaColIndex:xe,ariaColSpan:xe,ariaControls:jt,ariaCurrent:null,ariaDescribedBy:jt,ariaDetails:null,ariaDisabled:tn,ariaDropEffect:jt,ariaErrorMessage:null,ariaExpanded:tn,ariaFlowTo:jt,ariaGrabbed:tn,ariaHasPopup:null,ariaHidden:tn,ariaInvalid:null,ariaKeyShortcuts:null,ariaLabel:null,ariaLabelledBy:jt,ariaLevel:xe,ariaLive:null,ariaModal:tn,ariaMultiLine:tn,ariaMultiSelectable:tn,ariaOrientation:null,ariaOwns:jt,ariaPlaceholder:null,ariaPosInSet:xe,ariaPressed:tn,ariaReadOnly:tn,ariaRelevant:null,ariaRequired:tn,ariaRoleDescription:jt,ariaRowCount:xe,ariaRowIndex:xe,ariaRowSpan:xe,ariaSelected:tn,ariaSetSize:xe,ariaSort:null,ariaValueMax:xe,ariaValueMin:xe,ariaValueNow:xe,ariaValueText:null,role:null},transform(e,i){return i==="role"?i:"aria-"+i.slice(4).toLowerCase()}});function Hw(e,i){return i in e?e[i]:i}function Pw(e,i){return Hw(e,i.toLowerCase())}const fM=cl({attributes:{acceptcharset:"accept-charset",classname:"class",htmlfor:"for",httpequiv:"http-equiv"},mustUseProperty:["checked","multiple","muted","selected"],properties:{abbr:null,accept:qr,acceptCharset:jt,accessKey:jt,action:null,allow:null,allowFullScreen:Ve,allowPaymentRequest:Ve,allowUserMedia:Ve,alpha:Ve,alt:null,as:null,async:Ve,autoCapitalize:null,autoComplete:jt,autoFocus:Ve,autoPlay:Ve,blocking:jt,capture:null,charSet:null,checked:Ve,cite:null,className:jt,closedBy:null,colorSpace:null,cols:xe,colSpan:xe,command:null,commandFor:null,content:null,contentEditable:tn,controls:Ve,controlsList:jt,coords:xe|qr,crossOrigin:null,data:null,dateTime:null,decoding:null,default:Ve,defer:Ve,dir:null,dirName:null,disabled:Ve,download:tm,draggable:tn,encType:null,enterKeyHint:null,fetchPriority:null,form:null,formAction:null,formEncType:null,formMethod:null,formNoValidate:Ve,formTarget:null,headers:jt,height:xe,hidden:tm,high:xe,href:null,hrefLang:null,htmlFor:jt,httpEquiv:jt,id:null,imageSizes:null,imageSrcSet:null,inert:Ve,inputMode:null,integrity:null,is:null,isMap:Ve,itemId:null,itemProp:jt,itemRef:jt,itemScope:Ve,itemType:jt,kind:null,label:null,lang:null,language:null,list:null,loading:null,loop:Ve,low:xe,manifest:null,max:null,maxLength:xe,media:null,method:null,min:null,minLength:xe,multiple:Ve,muted:Ve,name:null,nonce:null,noModule:Ve,noValidate:Ve,onAbort:null,onAfterPrint:null,onAuxClick:null,onBeforeMatch:null,onBeforePrint:null,onBeforeToggle:null,onBeforeUnload:null,onBlur:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onContextLost:null,onContextMenu:null,onContextRestored:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnded:null,onError:null,onFocus:null,onFormData:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLanguageChange:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadEnd:null,onLoadStart:null,onMessage:null,onMessageError:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRejectionHandled:null,onReset:null,onResize:null,onScroll:null,onScrollEnd:null,onSecurityPolicyViolation:null,onSeeked:null,onSeeking:null,onSelect:null,onSlotChange:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnhandledRejection:null,onUnload:null,onVolumeChange:null,onWaiting:null,onWheel:null,open:Ve,optimum:xe,pattern:null,ping:jt,placeholder:null,playsInline:Ve,popover:null,popoverTarget:null,popoverTargetAction:null,poster:null,preload:null,readOnly:Ve,referrerPolicy:null,rel:jt,required:Ve,reversed:Ve,rows:xe,rowSpan:xe,sandbox:jt,scope:null,scoped:Ve,seamless:Ve,selected:Ve,shadowRootClonable:Ve,shadowRootCustomElementRegistry:Ve,shadowRootDelegatesFocus:Ve,shadowRootMode:null,shadowRootSerializable:Ve,shape:null,size:xe,sizes:null,slot:null,span:xe,spellCheck:tn,src:null,srcDoc:null,srcLang:null,srcSet:null,start:xe,step:null,style:null,tabIndex:xe,target:null,title:null,translate:null,type:null,typeMustMatch:Ve,useMap:null,value:tn,width:xe,wrap:null,writingSuggestions:null,align:null,aLink:null,archive:jt,axis:null,background:null,bgColor:null,border:xe,borderColor:null,bottomMargin:xe,cellPadding:null,cellSpacing:null,char:null,charOff:null,classId:null,clear:null,code:null,codeBase:null,codeType:null,color:null,compact:Ve,declare:Ve,event:null,face:null,frame:null,frameBorder:null,hSpace:xe,leftMargin:xe,link:null,longDesc:null,lowSrc:null,marginHeight:xe,marginWidth:xe,noResize:Ve,noHref:Ve,noShade:Ve,noWrap:Ve,object:null,profile:null,prompt:null,rev:null,rightMargin:xe,rules:null,scheme:null,scrolling:tn,standby:null,summary:null,text:null,topMargin:xe,valueType:null,version:null,vAlign:null,vLink:null,vSpace:xe,allowTransparency:null,autoCorrect:null,autoSave:null,credentialless:Ve,disablePictureInPicture:Ve,disableRemotePlayback:Ve,exportParts:qr,part:jt,prefix:null,property:null,results:xe,security:null,unselectable:null},space:"html",transform:Pw}),pM=cl({attributes:{accentHeight:"accent-height",alignmentBaseline:"alignment-baseline",arabicForm:"arabic-form",baselineShift:"baseline-shift",capHeight:"cap-height",className:"class",clipPath:"clip-path",clipRule:"clip-rule",colorInterpolation:"color-interpolation",colorInterpolationFilters:"color-interpolation-filters",colorProfile:"color-profile",colorRendering:"color-rendering",crossOrigin:"crossorigin",dataType:"datatype",dominantBaseline:"dominant-baseline",enableBackground:"enable-background",fillOpacity:"fill-opacity",fillRule:"fill-rule",floodColor:"flood-color",floodOpacity:"flood-opacity",fontFamily:"font-family",fontSize:"font-size",fontSizeAdjust:"font-size-adjust",fontStretch:"font-stretch",fontStyle:"font-style",fontVariant:"font-variant",fontWeight:"font-weight",glyphName:"glyph-name",glyphOrientationHorizontal:"glyph-orientation-horizontal",glyphOrientationVertical:"glyph-orientation-vertical",hrefLang:"hreflang",horizAdvX:"horiz-adv-x",horizOriginX:"horiz-origin-x",horizOriginY:"horiz-origin-y",imageRendering:"image-rendering",letterSpacing:"letter-spacing",lightingColor:"lighting-color",markerEnd:"marker-end",markerMid:"marker-mid",markerStart:"marker-start",maskType:"mask-type",navDown:"nav-down",navDownLeft:"nav-down-left",navDownRight:"nav-down-right",navLeft:"nav-left",navNext:"nav-next",navPrev:"nav-prev",navRight:"nav-right",navUp:"nav-up",navUpLeft:"nav-up-left",navUpRight:"nav-up-right",onAbort:"onabort",onActivate:"onactivate",onAfterPrint:"onafterprint",onBeforePrint:"onbeforeprint",onBegin:"onbegin",onCancel:"oncancel",onCanPlay:"oncanplay",onCanPlayThrough:"oncanplaythrough",onChange:"onchange",onClick:"onclick",onClose:"onclose",onCopy:"oncopy",onCueChange:"oncuechange",onCut:"oncut",onDblClick:"ondblclick",onDrag:"ondrag",onDragEnd:"ondragend",onDragEnter:"ondragenter",onDragExit:"ondragexit",onDragLeave:"ondragleave",onDragOver:"ondragover",onDragStart:"ondragstart",onDrop:"ondrop",onDurationChange:"ondurationchange",onEmptied:"onemptied",onEnd:"onend",onEnded:"onended",onError:"onerror",onFocus:"onfocus",onFocusIn:"onfocusin",onFocusOut:"onfocusout",onHashChange:"onhashchange",onInput:"oninput",onInvalid:"oninvalid",onKeyDown:"onkeydown",onKeyPress:"onkeypress",onKeyUp:"onkeyup",onLoad:"onload",onLoadedData:"onloadeddata",onLoadedMetadata:"onloadedmetadata",onLoadStart:"onloadstart",onMessage:"onmessage",onMouseDown:"onmousedown",onMouseEnter:"onmouseenter",onMouseLeave:"onmouseleave",onMouseMove:"onmousemove",onMouseOut:"onmouseout",onMouseOver:"onmouseover",onMouseUp:"onmouseup",onMouseWheel:"onmousewheel",onOffline:"onoffline",onOnline:"ononline",onPageHide:"onpagehide",onPageShow:"onpageshow",onPaste:"onpaste",onPause:"onpause",onPlay:"onplay",onPlaying:"onplaying",onPopState:"onpopstate",onProgress:"onprogress",onRateChange:"onratechange",onRepeat:"onrepeat",onReset:"onreset",onResize:"onresize",onScroll:"onscroll",onSeeked:"onseeked",onSeeking:"onseeking",onSelect:"onselect",onShow:"onshow",onStalled:"onstalled",onStorage:"onstorage",onSubmit:"onsubmit",onSuspend:"onsuspend",onTimeUpdate:"ontimeupdate",onToggle:"ontoggle",onUnload:"onunload",onVolumeChange:"onvolumechange",onWaiting:"onwaiting",onZoom:"onzoom",overlinePosition:"overline-position",overlineThickness:"overline-thickness",paintOrder:"paint-order",panose1:"panose-1",pointerEvents:"pointer-events",referrerPolicy:"referrerpolicy",renderingIntent:"rendering-intent",shapeRendering:"shape-rendering",stopColor:"stop-color",stopOpacity:"stop-opacity",strikethroughPosition:"strikethrough-position",strikethroughThickness:"strikethrough-thickness",strokeDashArray:"stroke-dasharray",strokeDashOffset:"stroke-dashoffset",strokeLineCap:"stroke-linecap",strokeLineJoin:"stroke-linejoin",strokeMiterLimit:"stroke-miterlimit",strokeOpacity:"stroke-opacity",strokeWidth:"stroke-width",tabIndex:"tabindex",textAnchor:"text-anchor",textDecoration:"text-decoration",textRendering:"text-rendering",transformOrigin:"transform-origin",typeOf:"typeof",underlinePosition:"underline-position",underlineThickness:"underline-thickness",unicodeBidi:"unicode-bidi",unicodeRange:"unicode-range",unitsPerEm:"units-per-em",vAlphabetic:"v-alphabetic",vHanging:"v-hanging",vIdeographic:"v-ideographic",vMathematical:"v-mathematical",vectorEffect:"vector-effect",vertAdvY:"vert-adv-y",vertOriginX:"vert-origin-x",vertOriginY:"vert-origin-y",wordSpacing:"word-spacing",writingMode:"writing-mode",xHeight:"x-height",playbackOrder:"playbackorder",timelineBegin:"timelinebegin"},properties:{about:ri,accentHeight:xe,accumulate:null,additive:null,alignmentBaseline:null,alphabetic:xe,amplitude:xe,arabicForm:null,ascent:xe,attributeName:null,attributeType:null,azimuth:xe,bandwidth:null,baselineShift:null,baseFrequency:null,baseProfile:null,bbox:null,begin:null,bias:xe,by:null,calcMode:null,capHeight:xe,className:jt,clip:null,clipPath:null,clipPathUnits:null,clipRule:null,color:null,colorInterpolation:null,colorInterpolationFilters:null,colorProfile:null,colorRendering:null,content:null,contentScriptType:null,contentStyleType:null,crossOrigin:null,cursor:null,cx:null,cy:null,d:null,dataType:null,defaultAction:null,descent:xe,diffuseConstant:xe,direction:null,display:null,dur:null,divisor:xe,dominantBaseline:null,download:Ve,dx:null,dy:null,edgeMode:null,editable:null,elevation:xe,enableBackground:null,end:null,event:null,exponent:xe,externalResourcesRequired:null,fill:null,fillOpacity:xe,fillRule:null,filter:null,filterRes:null,filterUnits:null,floodColor:null,floodOpacity:null,focusable:null,focusHighlight:null,fontFamily:null,fontSize:null,fontSizeAdjust:null,fontStretch:null,fontStyle:null,fontVariant:null,fontWeight:null,format:null,fr:null,from:null,fx:null,fy:null,g1:qr,g2:qr,glyphName:qr,glyphOrientationHorizontal:null,glyphOrientationVertical:null,glyphRef:null,gradientTransform:null,gradientUnits:null,handler:null,hanging:xe,hatchContentUnits:null,hatchUnits:null,height:null,href:null,hrefLang:null,horizAdvX:xe,horizOriginX:xe,horizOriginY:xe,id:null,ideographic:xe,imageRendering:null,initialVisibility:null,in:null,in2:null,intercept:xe,k:xe,k1:xe,k2:xe,k3:xe,k4:xe,kernelMatrix:ri,kernelUnitLength:null,keyPoints:null,keySplines:null,keyTimes:null,kerning:null,lang:null,lengthAdjust:null,letterSpacing:null,lightingColor:null,limitingConeAngle:xe,local:null,markerEnd:null,markerMid:null,markerStart:null,markerHeight:null,markerUnits:null,markerWidth:null,mask:null,maskContentUnits:null,maskType:null,maskUnits:null,mathematical:null,max:null,media:null,mediaCharacterEncoding:null,mediaContentEncodings:null,mediaSize:xe,mediaTime:null,method:null,min:null,mode:null,name:null,navDown:null,navDownLeft:null,navDownRight:null,navLeft:null,navNext:null,navPrev:null,navRight:null,navUp:null,navUpLeft:null,navUpRight:null,numOctaves:null,observer:null,offset:null,onAbort:null,onActivate:null,onAfterPrint:null,onBeforePrint:null,onBegin:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnd:null,onEnded:null,onError:null,onFocus:null,onFocusIn:null,onFocusOut:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadStart:null,onMessage:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onMouseWheel:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRepeat:null,onReset:null,onResize:null,onScroll:null,onSeeked:null,onSeeking:null,onSelect:null,onShow:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnload:null,onVolumeChange:null,onWaiting:null,onZoom:null,opacity:null,operator:null,order:null,orient:null,orientation:null,origin:null,overflow:null,overlay:null,overlinePosition:xe,overlineThickness:xe,paintOrder:null,panose1:null,path:null,pathLength:xe,patternContentUnits:null,patternTransform:null,patternUnits:null,phase:null,ping:jt,pitch:null,playbackOrder:null,pointerEvents:null,points:null,pointsAtX:xe,pointsAtY:xe,pointsAtZ:xe,preserveAlpha:null,preserveAspectRatio:null,primitiveUnits:null,propagate:null,property:ri,r:null,radius:null,referrerPolicy:null,refX:null,refY:null,rel:ri,rev:ri,renderingIntent:null,repeatCount:null,repeatDur:null,requiredExtensions:ri,requiredFeatures:ri,requiredFonts:ri,requiredFormats:ri,resource:null,restart:null,result:null,rotate:null,rx:null,ry:null,scale:null,seed:null,shapeRendering:null,side:null,slope:null,snapshotTime:null,specularConstant:xe,specularExponent:xe,spreadMethod:null,spacing:null,startOffset:null,stdDeviation:null,stemh:null,stemv:null,stitchTiles:null,stopColor:null,stopOpacity:null,strikethroughPosition:xe,strikethroughThickness:xe,string:null,stroke:null,strokeDashArray:ri,strokeDashOffset:null,strokeLineCap:null,strokeLineJoin:null,strokeMiterLimit:xe,strokeOpacity:xe,strokeWidth:null,style:null,surfaceScale:xe,syncBehavior:null,syncBehaviorDefault:null,syncMaster:null,syncTolerance:null,syncToleranceDefault:null,systemLanguage:ri,tabIndex:xe,tableValues:null,target:null,targetX:xe,targetY:xe,textAnchor:null,textDecoration:null,textRendering:null,textLength:null,timelineBegin:null,title:null,transformBehavior:null,type:null,typeOf:ri,to:null,transform:null,transformOrigin:null,u1:null,u2:null,underlinePosition:xe,underlineThickness:xe,unicode:null,unicodeBidi:null,unicodeRange:null,unitsPerEm:xe,values:null,vAlphabetic:xe,vMathematical:xe,vectorEffect:null,vHanging:xe,vIdeographic:xe,version:null,vertAdvY:xe,vertOriginX:xe,vertOriginY:xe,viewBox:null,viewTarget:null,visibility:null,width:null,widths:null,wordSpacing:null,writingMode:null,x:null,x1:null,x2:null,xChannelSelector:null,xHeight:xe,y:null,y1:null,y2:null,yChannelSelector:null,z:null,zoomAndPan:null},space:"svg",transform:Hw}),Fw=cl({properties:{xLinkActuate:null,xLinkArcRole:null,xLinkHref:null,xLinkRole:null,xLinkShow:null,xLinkTitle:null,xLinkType:null},space:"xlink",transform(e,i){return"xlink:"+i.slice(5).toLowerCase()}}),qw=cl({attributes:{xmlnsxlink:"xmlns:xlink"},properties:{xmlnsXLink:null,xmlns:null},space:"xmlns",transform:Pw}),Gw=cl({properties:{xmlBase:null,xmlLang:null,xmlSpace:null},space:"xml",transform(e,i){return"xml:"+i.slice(3).toLowerCase()}}),hM={classId:"classID",dataType:"datatype",itemId:"itemID",strokeDashArray:"strokeDasharray",strokeDashOffset:"strokeDashoffset",strokeLineCap:"strokeLinecap",strokeLineJoin:"strokeLinejoin",strokeMiterLimit:"strokeMiterlimit",typeOf:"typeof",xLinkActuate:"xlinkActuate",xLinkArcRole:"xlinkArcrole",xLinkHref:"xlinkHref",xLinkRole:"xlinkRole",xLinkShow:"xlinkShow",xLinkTitle:"xlinkTitle",xLinkType:"xlinkType",xmlnsXLink:"xmlnsXlink"},mM=/[A-Z]/g,e0=/-[a-z]/g,gM=/^data[-\w.:]+$/i;function bM(e,i){const a=em(i);let s=i,o=Zn;if(a in e.normal)return e.property[e.normal[a]];if(a.length>4&&a.slice(0,4)==="data"&&gM.test(i)){if(i.charAt(4)==="-"){const u=i.slice(5).replace(e0,yM);s="data"+u.charAt(0).toUpperCase()+u.slice(1)}else{const u=i.slice(4);if(!e0.test(u)){let d=u.replace(mM,xM);d.charAt(0)!=="-"&&(d="-"+d),i="data"+d}}o=Pm}return new o(s,i)}function xM(e){return"-"+e.toLowerCase()}function yM(e){return e.charAt(1).toUpperCase()}const vM=Bw([$w,fM,Fw,qw,Gw],"html"),Fm=Bw([$w,pM,Fw,qw,Gw],"svg");function wM(e){return e.join(" ").trim()}var Ks={},rh,t0;function kM(){if(t0)return rh;t0=1;var e=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,i=/\n/g,a=/^\s*/,s=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,o=/^:\s*/,u=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,d=/^[;\s]*/,p=/^\s+|\s+$/g,m=`
|
|
242
|
+
`,g="/",x="*",b="",v="comment",y="declaration";function k(_,S){if(typeof _!="string")throw new TypeError("First argument must be a string");if(!_)return[];S=S||{};var C=1,M=1;function I(re){var ne=re.match(i);ne&&(C+=ne.length);var P=re.lastIndexOf(m);M=~P?re.length-P:M+re.length}function F(){var re={line:C,column:M};return function(ne){return ne.position=new R(re),V(),ne}}function R(re){this.start=re,this.end={line:C,column:M},this.source=S.source}R.prototype.content=_;function A(re){var ne=new Error(S.source+":"+C+":"+M+": "+re);if(ne.reason=re,ne.filename=S.source,ne.line=C,ne.column=M,ne.source=_,!S.silent)throw ne}function L(re){var ne=re.exec(_);if(ne){var P=ne[0];return I(P),_=_.slice(P.length),ne}}function V(){L(a)}function D(re){var ne;for(re=re||[];ne=U();)ne!==!1&&re.push(ne);return re}function U(){var re=F();if(!(g!=_.charAt(0)||x!=_.charAt(1))){for(var ne=2;b!=_.charAt(ne)&&(x!=_.charAt(ne)||g!=_.charAt(ne+1));)++ne;if(ne+=2,b===_.charAt(ne-1))return A("End of comment missing");var P=_.slice(2,ne-2);return M+=2,I(P),_=_.slice(ne),M+=2,re({type:v,comment:P})}}function ee(){var re=F(),ne=L(s);if(ne){if(U(),!L(o))return A("property missing ':'");var P=L(u),ae=re({type:y,property:N(ne[0].replace(e,b)),value:P?N(P[0].replace(e,b)):b});return L(d),ae}}function ue(){var re=[];D(re);for(var ne;ne=ee();)ne!==!1&&(re.push(ne),D(re));return re}return V(),ue()}function N(_){return _?_.replace(p,b):b}return rh=k,rh}var n0;function EM(){if(n0)return Ks;n0=1;var e=Ks&&Ks.__importDefault||function(s){return s&&s.__esModule?s:{default:s}};Object.defineProperty(Ks,"__esModule",{value:!0}),Ks.default=a;const i=e(kM());function a(s,o){let u=null;if(!s||typeof s!="string")return u;const d=(0,i.default)(s),p=typeof o=="function";return d.forEach(m=>{if(m.type!=="declaration")return;const{property:g,value:x}=m;p?o(g,x,m):x&&(u=u||{},u[g]=x)}),u}return Ks}var lo={},i0;function _M(){if(i0)return lo;i0=1,Object.defineProperty(lo,"__esModule",{value:!0}),lo.camelCase=void 0;var e=/^--[a-zA-Z0-9_-]+$/,i=/-([a-z])/g,a=/^[^-]+$/,s=/^-(webkit|moz|ms|o|khtml)-/,o=/^-(ms)-/,u=function(g){return!g||a.test(g)||e.test(g)},d=function(g,x){return x.toUpperCase()},p=function(g,x){return"".concat(x,"-")},m=function(g,x){return x===void 0&&(x={}),u(g)?g:(g=g.toLowerCase(),x.reactCompat?g=g.replace(o,p):g=g.replace(s,p),g.replace(i,d))};return lo.camelCase=m,lo}var oo,a0;function NM(){if(a0)return oo;a0=1;var e=oo&&oo.__importDefault||function(o){return o&&o.__esModule?o:{default:o}},i=e(EM()),a=_M();function s(o,u){var d={};return!o||typeof o!="string"||(0,i.default)(o,function(p,m){p&&m&&(d[(0,a.camelCase)(p,u)]=m)}),d}return s.default=s,oo=s,oo}var SM=NM();const TM=Pu(SM),Yw=Kw("end"),qm=Kw("start");function Kw(e){return i;function i(a){const s=a&&a.position&&a.position[e]||{};if(typeof s.line=="number"&&s.line>0&&typeof s.column=="number"&&s.column>0)return{line:s.line,column:s.column,offset:typeof s.offset=="number"&&s.offset>-1?s.offset:void 0}}}function CM(e){const i=qm(e),a=Yw(e);if(i&&a)return{start:i,end:a}}function xo(e){return!e||typeof e!="object"?"":"position"in e||"type"in e?r0(e.position):"start"in e||"end"in e?r0(e):"line"in e||"column"in e?im(e):""}function im(e){return s0(e&&e.line)+":"+s0(e&&e.column)}function r0(e){return im(e&&e.start)+"-"+im(e&&e.end)}function s0(e){return e&&typeof e=="number"?e:1}class Mn extends Error{constructor(i,a,s){super(),typeof a=="string"&&(s=a,a=void 0);let o="",u={},d=!1;if(a&&("line"in a&&"column"in a?u={place:a}:"start"in a&&"end"in a?u={place:a}:"type"in a?u={ancestors:[a],place:a.position}:u={...a}),typeof i=="string"?o=i:!u.cause&&i&&(d=!0,o=i.message,u.cause=i),!u.ruleId&&!u.source&&typeof s=="string"){const m=s.indexOf(":");m===-1?u.ruleId=s:(u.source=s.slice(0,m),u.ruleId=s.slice(m+1))}if(!u.place&&u.ancestors&&u.ancestors){const m=u.ancestors[u.ancestors.length-1];m&&(u.place=m.position)}const p=u.place&&"start"in u.place?u.place.start:u.place;this.ancestors=u.ancestors||void 0,this.cause=u.cause||void 0,this.column=p?p.column:void 0,this.fatal=void 0,this.file="",this.message=o,this.line=p?p.line:void 0,this.name=xo(u.place)||"1:1",this.place=u.place||void 0,this.reason=this.message,this.ruleId=u.ruleId||void 0,this.source=u.source||void 0,this.stack=d&&u.cause&&typeof u.cause.stack=="string"?u.cause.stack:"",this.actual=void 0,this.expected=void 0,this.note=void 0,this.url=void 0}}Mn.prototype.file="";Mn.prototype.name="";Mn.prototype.reason="";Mn.prototype.message="";Mn.prototype.stack="";Mn.prototype.column=void 0;Mn.prototype.line=void 0;Mn.prototype.ancestors=void 0;Mn.prototype.cause=void 0;Mn.prototype.fatal=void 0;Mn.prototype.place=void 0;Mn.prototype.ruleId=void 0;Mn.prototype.source=void 0;const Gm={}.hasOwnProperty,AM=new Map,OM=/[A-Z]/g,MM=new Set(["table","tbody","thead","tfoot","tr"]),jM=new Set(["td","th"]),Vw="https://github.com/syntax-tree/hast-util-to-jsx-runtime";function RM(e,i){if(!i||i.Fragment===void 0)throw new TypeError("Expected `Fragment` in options");const a=i.filePath||void 0;let s;if(i.development){if(typeof i.jsxDEV!="function")throw new TypeError("Expected `jsxDEV` in options when `development: true`");s=HM(a,i.jsxDEV)}else{if(typeof i.jsx!="function")throw new TypeError("Expected `jsx` in production options");if(typeof i.jsxs!="function")throw new TypeError("Expected `jsxs` in production options");s=$M(a,i.jsx,i.jsxs)}const o={Fragment:i.Fragment,ancestors:[],components:i.components||{},create:s,elementAttributeNameCase:i.elementAttributeNameCase||"react",evaluater:i.createEvaluater?i.createEvaluater():void 0,filePath:a,ignoreInvalidStyle:i.ignoreInvalidStyle||!1,passKeys:i.passKeys!==!1,passNode:i.passNode||!1,schema:i.space==="svg"?Fm:vM,stylePropertyNameCase:i.stylePropertyNameCase||"dom",tableCellAlignToStyle:i.tableCellAlignToStyle!==!1},u=Xw(o,e,void 0);return u&&typeof u!="string"?u:o.create(e,o.Fragment,{children:u||void 0},void 0)}function Xw(e,i,a){if(i.type==="element")return DM(e,i,a);if(i.type==="mdxFlowExpression"||i.type==="mdxTextExpression")return zM(e,i);if(i.type==="mdxJsxFlowElement"||i.type==="mdxJsxTextElement")return IM(e,i,a);if(i.type==="mdxjsEsm")return LM(e,i);if(i.type==="root")return UM(e,i,a);if(i.type==="text")return BM(e,i)}function DM(e,i,a){const s=e.schema;let o=s;i.tagName.toLowerCase()==="svg"&&s.space==="html"&&(o=Fm,e.schema=o),e.ancestors.push(i);const u=Qw(e,i.tagName,!1),d=PM(e,i);let p=Km(e,i);return MM.has(i.tagName)&&(p=p.filter(function(m){return typeof m=="string"?!uM(m):!0})),Zw(e,d,u,i),Ym(d,p),e.ancestors.pop(),e.schema=s,e.create(i,u,d,a)}function zM(e,i){if(i.data&&i.data.estree&&e.evaluater){const s=i.data.estree.body[0];return s.type,e.evaluater.evaluateExpression(s.expression)}No(e,i.position)}function LM(e,i){if(i.data&&i.data.estree&&e.evaluater)return e.evaluater.evaluateProgram(i.data.estree);No(e,i.position)}function IM(e,i,a){const s=e.schema;let o=s;i.name==="svg"&&s.space==="html"&&(o=Fm,e.schema=o),e.ancestors.push(i);const u=i.name===null?e.Fragment:Qw(e,i.name,!0),d=FM(e,i),p=Km(e,i);return Zw(e,d,u,i),Ym(d,p),e.ancestors.pop(),e.schema=s,e.create(i,u,d,a)}function UM(e,i,a){const s={};return Ym(s,Km(e,i)),e.create(i,e.Fragment,s,a)}function BM(e,i){return i.value}function Zw(e,i,a,s){typeof a!="string"&&a!==e.Fragment&&e.passNode&&(i.node=s)}function Ym(e,i){if(i.length>0){const a=i.length>1?i:i[0];a&&(e.children=a)}}function $M(e,i,a){return s;function s(o,u,d,p){const g=Array.isArray(d.children)?a:i;return p?g(u,d,p):g(u,d)}}function HM(e,i){return a;function a(s,o,u,d){const p=Array.isArray(u.children),m=qm(s);return i(o,u,d,p,{columnNumber:m?m.column-1:void 0,fileName:e,lineNumber:m?m.line:void 0},void 0)}}function PM(e,i){const a={};let s,o;for(o in i.properties)if(o!=="children"&&Gm.call(i.properties,o)){const u=qM(e,o,i.properties[o]);if(u){const[d,p]=u;e.tableCellAlignToStyle&&d==="align"&&typeof p=="string"&&jM.has(i.tagName)?s=p:a[d]=p}}if(s){const u=a.style||(a.style={});u[e.stylePropertyNameCase==="css"?"text-align":"textAlign"]=s}return a}function FM(e,i){const a={};for(const s of i.attributes)if(s.type==="mdxJsxExpressionAttribute")if(s.data&&s.data.estree&&e.evaluater){const u=s.data.estree.body[0];u.type;const d=u.expression;d.type;const p=d.properties[0];p.type,Object.assign(a,e.evaluater.evaluateExpression(p.argument))}else No(e,i.position);else{const o=s.name;let u;if(s.value&&typeof s.value=="object")if(s.value.data&&s.value.data.estree&&e.evaluater){const p=s.value.data.estree.body[0];p.type,u=e.evaluater.evaluateExpression(p.expression)}else No(e,i.position);else u=s.value===null?!0:s.value;a[o]=u}return a}function Km(e,i){const a=[];let s=-1;const o=e.passKeys?new Map:AM;for(;++s<i.children.length;){const u=i.children[s];let d;if(e.passKeys){const m=u.type==="element"?u.tagName:u.type==="mdxJsxFlowElement"||u.type==="mdxJsxTextElement"?u.name:void 0;if(m){const g=o.get(m)||0;d=m+"-"+g,o.set(m,g+1)}}const p=Xw(e,u,d);p!==void 0&&a.push(p)}return a}function qM(e,i,a){const s=bM(e.schema,i);if(!(a==null||typeof a=="number"&&Number.isNaN(a))){if(Array.isArray(a)&&(a=s.commaSeparated?rM(a):wM(a)),s.property==="style"){let o=typeof a=="object"?a:GM(e,String(a));return e.stylePropertyNameCase==="css"&&(o=YM(o)),["style",o]}return[e.elementAttributeNameCase==="react"&&s.space?hM[s.property]||s.property:s.attribute,a]}}function GM(e,i){try{return TM(i,{reactCompat:!0})}catch(a){if(e.ignoreInvalidStyle)return{};const s=a,o=new Mn("Cannot parse `style` attribute",{ancestors:e.ancestors,cause:s,ruleId:"style",source:"hast-util-to-jsx-runtime"});throw o.file=e.filePath||void 0,o.url=Vw+"#cannot-parse-style-attribute",o}}function Qw(e,i,a){let s;if(!a)s={type:"Literal",value:i};else if(i.includes(".")){const o=i.split(".");let u=-1,d;for(;++u<o.length;){const p=Q1(o[u])?{type:"Identifier",name:o[u]}:{type:"Literal",value:o[u]};d=d?{type:"MemberExpression",object:d,property:p,computed:!!(u&&p.type==="Literal"),optional:!1}:p}s=d}else s=Q1(i)&&!/^[a-z]/.test(i)?{type:"Identifier",name:i}:{type:"Literal",value:i};if(s.type==="Literal"){const o=s.value;return Gm.call(e.components,o)?e.components[o]:o}if(e.evaluater)return e.evaluater.evaluateExpression(s);No(e)}function No(e,i){const a=new Mn("Cannot handle MDX estrees without `createEvaluater`",{ancestors:e.ancestors,place:i,ruleId:"mdx-estree",source:"hast-util-to-jsx-runtime"});throw a.file=e.filePath||void 0,a.url=Vw+"#cannot-handle-mdx-estrees-without-createevaluater",a}function YM(e){const i={};let a;for(a in e)Gm.call(e,a)&&(i[KM(a)]=e[a]);return i}function KM(e){let i=e.replace(OM,VM);return i.slice(0,3)==="ms-"&&(i="-"+i),i}function VM(e){return"-"+e.toLowerCase()}const sh={action:["form"],cite:["blockquote","del","ins","q"],data:["object"],formAction:["button","input"],href:["a","area","base","link"],icon:["menuitem"],itemId:null,manifest:["html"],ping:["a","area"],poster:["video"],src:["audio","embed","iframe","img","input","script","source","track","video"]},XM={};function Vm(e,i){const a=XM,s=typeof a.includeImageAlt=="boolean"?a.includeImageAlt:!0,o=typeof a.includeHtml=="boolean"?a.includeHtml:!0;return Jw(e,s,o)}function Jw(e,i,a){if(ZM(e)){if("value"in e)return e.type==="html"&&!a?"":e.value;if(i&&"alt"in e&&e.alt)return e.alt;if("children"in e)return l0(e.children,i,a)}return Array.isArray(e)?l0(e,i,a):""}function l0(e,i,a){const s=[];let o=-1;for(;++o<e.length;)s[o]=Jw(e[o],i,a);return s.join("")}function ZM(e){return!!(e&&typeof e=="object")}const o0=document.createElement("i");function Xm(e){const i="&"+e+";";o0.innerHTML=i;const a=o0.textContent;return a.charCodeAt(a.length-1)===59&&e!=="semi"||a===i?!1:a}function Ri(e,i,a,s){const o=e.length;let u=0,d;if(i<0?i=-i>o?0:o+i:i=i>o?o:i,a=a>0?a:0,s.length<1e4)d=Array.from(s),d.unshift(i,a),e.splice(...d);else for(a&&e.splice(i,a);u<s.length;)d=s.slice(u,u+1e4),d.unshift(i,0),e.splice(...d),u+=1e4,i+=1e4}function bi(e,i){return e.length>0?(Ri(e,e.length,0,i),e):i}const c0={}.hasOwnProperty;function Ww(e){const i={};let a=-1;for(;++a<e.length;)QM(i,e[a]);return i}function QM(e,i){let a;for(a in i){const o=(c0.call(e,a)?e[a]:void 0)||(e[a]={}),u=i[a];let d;if(u)for(d in u){c0.call(o,d)||(o[d]=[]);const p=u[d];JM(o[d],Array.isArray(p)?p:p?[p]:[])}}}function JM(e,i){let a=-1;const s=[];for(;++a<i.length;)(i[a].add==="after"?e:s).push(i[a]);Ri(e,0,0,s)}function ek(e,i){const a=Number.parseInt(e,i);return a<9||a===11||a>13&&a<32||a>126&&a<160||a>55295&&a<57344||a>64975&&a<65008||(a&65535)===65535||(a&65535)===65534||a>1114111?"�":String.fromCodePoint(a)}function Di(e){return e.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}const Bn=gr(/[A-Za-z]/),An=gr(/[\dA-Za-z]/),WM=gr(/[#-'*+\--9=?A-Z^-~]/);function Du(e){return e!==null&&(e<32||e===127)}const am=gr(/\d/),ej=gr(/[\dA-Fa-f]/),tj=gr(/[!-/:-@[-`{-~]/);function $e(e){return e!==null&&e<-2}function Rt(e){return e!==null&&(e<0||e===32)}function nt(e){return e===-2||e===-1||e===32}const od=gr(/\p{P}|\p{S}/u),Qr=gr(/\s/);function gr(e){return i;function i(a){return a!==null&&a>-1&&e.test(String.fromCharCode(a))}}function ul(e){const i=[];let a=-1,s=0,o=0;for(;++a<e.length;){const u=e.charCodeAt(a);let d="";if(u===37&&An(e.charCodeAt(a+1))&&An(e.charCodeAt(a+2)))o=2;else if(u<128)/[!#$&-;=?-Z_a-z~]/.test(String.fromCharCode(u))||(d=String.fromCharCode(u));else if(u>55295&&u<57344){const p=e.charCodeAt(a+1);u<56320&&p>56319&&p<57344?(d=String.fromCharCode(u,p),o=1):d="�"}else d=String.fromCharCode(u);d&&(i.push(e.slice(s,a),encodeURIComponent(d)),s=a+o+1,d=""),o&&(a+=o,o=0)}return i.join("")+e.slice(s)}function ht(e,i,a,s){const o=s?s-1:1/0;let u=0;return d;function d(m){return nt(m)?(e.enter(a),p(m)):i(m)}function p(m){return nt(m)&&u++<o?(e.consume(m),p):(e.exit(a),i(m))}}function tk(e,i,a,s,o,u){let d=0;return p;function p(x){return nt(x)?(e.enter(s),m(x)):g(x)}function m(x){return nt(x)&&d<u?(e.consume(x),d++,m):(e.exit(s),g(x))}function g(x){return d>=o?i(x):a(x)}}const nj={tokenize:ij};function ij(e){const i=e.attempt(this.parser.constructs.contentInitial,s,o);let a;return i;function s(p){if(p===null){e.consume(p);return}return e.enter("lineEnding"),e.consume(p),e.exit("lineEnding"),ht(e,i,"linePrefix")}function o(p){return e.enter("paragraph"),u(p)}function u(p){const m=e.enter("chunkText",{contentType:"text",previous:a});return a&&(a.next=m),a=m,d(p)}function d(p){if(p===null){e.exit("chunkText"),e.exit("paragraph"),e.consume(p);return}return $e(p)?(e.consume(p),e.exit("chunkText"),u):(e.consume(p),d)}}let zu=class{constructor(){this.index=new Map,this.map=[]}add(i,a,s){u0(this,i,a,s,!1)}addBefore(i,a,s){u0(this,i,a,s,!0)}consume(i){if(this.map.sort(function(u,d){return u[0]-d[0]}),this.map.length===0)return;let a=this.map.length;const s=[];for(;a>0;)a-=1,s.push(i.slice(this.map[a][0]+this.map[a][1]),this.map[a][2]),i.length=this.map[a][0];s.push(i.slice()),i.length=0;let o=s.pop();for(;o;){for(const u of o)i.push(u);o=s.pop()}this.map.length=0,this.index.clear()}};function u0(e,i,a,s,o){if(a===0&&s.length===0)return;const u=e.index.get(i);if(u){u[1]+=a,o?(s.push(...u[2]),u[2]=s):u[2].push(...s);return}const d=[i,a,s];e.map.push(d),e.index.set(i,d)}const aj={tokenize:rj},d0={tokenize:sj};function rj(e){const i=this,a=[];let s=0,o,u,d;return p;function p(M){if(s<a.length){const I=a[s];return i.containerState=I[1],e.attempt(I[0].continuation,m,g)(M)}return g(M)}function m(M){if(s++,i.containerState._closeFlow){i.containerState._closeFlow=void 0,o&&C();const I=i.events.length;let F=I,R;for(;F--;)if(i.events[F][0]==="exit"&&i.events[F][1].type==="chunkFlow"){R=i.events[F][1].end;break}S(s);let A=I;for(;A<i.events.length;)i.events[A][1].end={...R},A++;const L=new zu;return L.add(F+1,0,i.events.slice(I)),L.add(I,A-I,[]),L.consume(i.events),g(M)}return p(M)}function g(M){if(s===a.length){if(!o)return v(M);if(o.currentConstruct&&o.currentConstruct.concrete)return k(M);i.interrupt=!!(o.currentConstruct&&!o._gfmTableDynamicInterruptHack)}return i.containerState={},e.check(d0,x,b)(M)}function x(M){return o&&C(),S(s),v(M)}function b(M){return i.parser.lazy[i.now().line]=s!==a.length,d=i.now().offset,k(M)}function v(M){return i.containerState={},e.attempt(d0,y,k)(M)}function y(M){return s++,a.push([i.currentConstruct,i.containerState]),v(M)}function k(M){if(M===null){o&&C(),S(0),e.consume(M);return}return o=o||i.parser.flow(i.now()),e.enter("chunkFlow",{_tokenizer:o,contentType:"flow",previous:u}),N(M)}function N(M){if(M===null){_(e.exit("chunkFlow"),!0),S(0),e.consume(M);return}return $e(M)?(e.consume(M),_(e.exit("chunkFlow")),s=0,i.interrupt=void 0,p):(e.consume(M),N)}function _(M,I){const F=i.sliceStream(M);if(I&&F.push(null),M.previous=u,u&&(u.next=M),u=M,o.defineSkip(M.start),o.write(F),i.parser.lazy[M.start.line]){let R=o.events.length;for(;R--;)if(o.events[R][1].start.offset<d&&(!o.events[R][1].end||o.events[R][1].end.offset>d))return;const A=i.events.length;let L=A,V,D;for(;L--;)if(i.events[L][0]==="exit"&&i.events[L][1].type==="chunkFlow"){if(V){D=i.events[L][1].end;break}V=!0}for(S(s),R=A;R<i.events.length;)i.events[R][1].end={...D},R++;const U=new zu;U.add(L+1,0,i.events.slice(A)),U.add(A,R-A,[]),U.consume(i.events)}}function S(M){let I=a.length;for(;I-- >M;){const F=a[I];i.containerState=F[1],F[0].exit.call(i,e)}a.length=M}function C(){o.write([null]),u=void 0,o=void 0,i.containerState._closeFlow=void 0}}function sj(e,i,a){return ht(e,e.attempt(this.parser.constructs.document,i,a),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}function Lu(e){if(e===null||Rt(e)||Qr(e))return 1;if(od(e))return 2}function cd(e,i,a){const s=[];let o=-1;for(;++o<e.length;){const u=e[o].resolveAll;u&&!s.includes(u)&&(i=u(i,a),s.push(u))}return i}const rm={name:"attention",resolveAll:lj,tokenize:oj};function lj(e,i){let a=-1,s;for(;++a<e.length;)if(e[a][0]==="enter"&&e[a][1].type==="attentionSequence"&&e[a][1]._close){let o=a;for(;o--;)if(e[o][0]==="exit"&&e[o][1].type==="attentionSequence"&&e[o][1]._open&&i.sliceSerialize(e[o][1]).charCodeAt(0)===i.sliceSerialize(e[a][1]).charCodeAt(0)){if((e[o][1]._close||e[a][1]._open)&&(e[a][1].end.offset-e[a][1].start.offset)%3&&!((e[o][1].end.offset-e[o][1].start.offset+e[a][1].end.offset-e[a][1].start.offset)%3))continue;const u=e[o][1].end.offset-e[o][1].start.offset>1&&e[a][1].end.offset-e[a][1].start.offset>1?2:1,d={...e[o][1].end},p={...e[a][1].start};f0(d,-u),f0(p,u);const m={type:u>1?"strongSequence":"emphasisSequence",start:d,end:{...e[o][1].end}},g={type:u>1?"strongSequence":"emphasisSequence",start:{...e[a][1].start},end:p},x={type:u>1?"strongText":"emphasisText",start:{...e[o][1].end},end:{...e[a][1].start}},b={type:u>1?"strong":"emphasis",start:{...m.start},end:{...g.end}};e[o][1].end={...m.start},e[a][1].start={...g.end},s=[],e[o][1].end.offset-e[o][1].start.offset&&(s=bi(s,[["enter",e[o][1],i],["exit",e[o][1],i]])),s=bi(s,[["enter",b,i],["enter",m,i],["exit",m,i],["enter",x,i]]),s=bi(s,cd(i.parser.constructs.insideSpan.null,e.slice(o+1,a),i)),s=bi(s,[["exit",x,i],["enter",g,i],["exit",g,i],["exit",b,i]]);let v=0;e[a][1].end.offset-e[a][1].start.offset&&(v=2,s=bi(s,[["enter",e[a][1],i],["exit",e[a][1],i]])),Ri(e,o-1,a-o+3,s),a=o+s.length-v-2;break}}for(a=-1;++a<e.length;)e[a][1].type==="attentionSequence"&&(e[a][1].type="data");return e}function oj(e,i){const a=this.parser.constructs.attentionMarkers.null,s=this.previous,o=Lu(s);let u;return d;function d(m){return u=m,e.enter("attentionSequence"),p(m)}function p(m){if(m===u)return e.consume(m),p;const g=e.exit("attentionSequence"),x=Lu(m),b=!x||x===2&&o||a.includes(m)&&m!==42&&m!==95,v=!o||o===2&&x||a.includes(s)&&s!==42&&s!==95;return g._open=!!(u===42?b:b&&(o||!v)),g._close=!!(u===42?v:v&&(x||!b)),i(m)}}function f0(e,i){e.column+=i,e.offset+=i,e._bufferIndex+=i}const cj={name:"autolink",tokenize:uj};function uj(e,i,a){let s=0;return o;function o(y){return e.enter("autolink"),e.enter("autolinkMarker"),e.consume(y),e.exit("autolinkMarker"),e.enter("autolinkProtocol"),u}function u(y){return Bn(y)?(e.consume(y),d):y===64?a(y):g(y)}function d(y){return y===43||y===45||y===46||An(y)?(s=1,p(y)):g(y)}function p(y){return y===58?(e.consume(y),s=0,m):(y===43||y===45||y===46||An(y))&&s++<32?(e.consume(y),p):(s=0,g(y))}function m(y){return y===62?(e.exit("autolinkProtocol"),e.enter("autolinkMarker"),e.consume(y),e.exit("autolinkMarker"),e.exit("autolink"),i):y===null||y===32||y===60||Du(y)?a(y):(e.consume(y),m)}function g(y){return y===64?(e.consume(y),x):WM(y)?(e.consume(y),g):a(y)}function x(y){return An(y)?b(y):a(y)}function b(y){return y===46?(e.consume(y),s=0,x):y===62?(e.exit("autolinkProtocol").type="autolinkEmail",e.enter("autolinkMarker"),e.consume(y),e.exit("autolinkMarker"),e.exit("autolink"),i):v(y)}function v(y){if((y===45||An(y))&&s++<63){const k=y===45?v:b;return e.consume(y),k}return a(y)}}const Mo={partial:!0,tokenize:dj};function dj(e,i,a){return s;function s(u){return nt(u)?ht(e,o,"linePrefix")(u):o(u)}function o(u){return u===null||$e(u)?i(u):a(u)}}const nk={continuation:{tokenize:pj},exit:hj,name:"blockQuote",tokenize:fj};function fj(e,i,a){const s=this;return o;function o(d){if(d===62){const p=s.containerState;return p.open||(e.enter("blockQuote",{_container:!0}),p.open=!0),e.enter("blockQuotePrefix"),e.enter("blockQuoteMarker"),e.consume(d),e.exit("blockQuoteMarker"),u}return a(d)}function u(d){return nt(d)?(e.enter("blockQuotePrefixWhitespace"),e.consume(d),e.exit("blockQuotePrefixWhitespace"),e.exit("blockQuotePrefix"),i):(e.exit("blockQuotePrefix"),i(d))}}function pj(e,i,a){const s=this;return o;function o(d){return nt(d)?ht(e,u,"linePrefix",s.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(d):u(d)}function u(d){return e.attempt(nk,i,a)(d)}}function hj(e){e.exit("blockQuote")}const ik={name:"characterEscape",tokenize:mj};function mj(e,i,a){return s;function s(u){return e.enter("characterEscape"),e.enter("escapeMarker"),e.consume(u),e.exit("escapeMarker"),o}function o(u){return tj(u)?(e.enter("characterEscapeValue"),e.consume(u),e.exit("characterEscapeValue"),e.exit("characterEscape"),i):a(u)}}const ak={name:"characterReference",tokenize:gj};function gj(e,i,a){const s=this;let o=0,u,d;return p;function p(b){return e.enter("characterReference"),e.enter("characterReferenceMarker"),e.consume(b),e.exit("characterReferenceMarker"),m}function m(b){return b===35?(e.enter("characterReferenceMarkerNumeric"),e.consume(b),e.exit("characterReferenceMarkerNumeric"),g):(e.enter("characterReferenceValue"),u=31,d=An,x(b))}function g(b){return b===88||b===120?(e.enter("characterReferenceMarkerHexadecimal"),e.consume(b),e.exit("characterReferenceMarkerHexadecimal"),e.enter("characterReferenceValue"),u=6,d=ej,x):(e.enter("characterReferenceValue"),u=7,d=am,x(b))}function x(b){if(b===59&&o){const v=e.exit("characterReferenceValue");return d===An&&!Xm(s.sliceSerialize(v))?a(b):(e.enter("characterReferenceMarker"),e.consume(b),e.exit("characterReferenceMarker"),e.exit("characterReference"),i)}return d(b)&&o++<u?(e.consume(b),x):a(b)}}const sm={partial:!0,tokenize:bj};function bj(e,i,a){const s=this;return o;function o(d){return d===null?a(d):(e.enter("lineEnding"),e.consume(d),e.exit("lineEnding"),u)}function u(d){return s.parser.lazy[s.now().line]?a(d):i(d)}}const p0={concrete:!0,name:"codeFenced",tokenize:xj};function xj(e,i,a){const s=this,o={partial:!0,tokenize:F};let u=0,d=0,p;return m;function m(R){return g(R)}function g(R){const A=s.events[s.events.length-1];return u=A&&A[1].type==="linePrefix"?A[2].sliceSerialize(A[1],!0).length:0,p=R,e.enter("codeFenced"),e.enter("codeFencedFence"),e.enter("codeFencedFenceSequence"),x(R)}function x(R){return R===p?(d++,e.consume(R),x):d<3?a(R):(e.exit("codeFencedFenceSequence"),nt(R)?ht(e,b,"whitespace")(R):b(R))}function b(R){return R===null||$e(R)?(e.exit("codeFencedFence"),s.interrupt?i(R):e.check(sm,N,I)(R)):(e.enter("codeFencedFenceInfo"),e.enter("chunkString",{contentType:"string"}),v(R))}function v(R){return R===null||$e(R)?(e.exit("chunkString"),e.exit("codeFencedFenceInfo"),b(R)):nt(R)?(e.exit("chunkString"),e.exit("codeFencedFenceInfo"),ht(e,y,"whitespace")(R)):R===96&&R===p?a(R):(e.consume(R),v)}function y(R){return R===null||$e(R)?b(R):(e.enter("codeFencedFenceMeta"),e.enter("chunkString",{contentType:"string"}),k(R))}function k(R){return R===null||$e(R)?(e.exit("chunkString"),e.exit("codeFencedFenceMeta"),b(R)):R===96&&R===p?a(R):(e.consume(R),k)}function N(R){return e.attempt(o,I,_)(R)}function _(R){return e.enter("lineEnding"),e.consume(R),e.exit("lineEnding"),S}function S(R){return u>0&&nt(R)?ht(e,C,"linePrefix",u+1)(R):C(R)}function C(R){return R===null||$e(R)?e.check(sm,N,I)(R):(e.enter("codeFlowValue"),M(R))}function M(R){return R===null||$e(R)?(e.exit("codeFlowValue"),C(R)):(e.consume(R),M)}function I(R){return e.exit("codeFenced"),i(R)}function F(R,A,L){let V=0;return D;function D(ne){return R.enter("lineEnding"),R.consume(ne),R.exit("lineEnding"),U}function U(ne){return R.enter("codeFencedFence"),nt(ne)?ht(R,ee,"linePrefix",s.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(ne):ee(ne)}function ee(ne){return ne===p?(R.enter("codeFencedFenceSequence"),ue(ne)):L(ne)}function ue(ne){return ne===p?(V++,R.consume(ne),ue):V>=d?(R.exit("codeFencedFenceSequence"),nt(ne)?ht(R,re,"whitespace")(ne):re(ne)):L(ne)}function re(ne){return ne===null||$e(ne)?(R.exit("codeFencedFence"),A(ne)):L(ne)}}}const lh={name:"codeIndented",tokenize:vj},yj={partial:!0,tokenize:wj};function vj(e,i,a){return s;function s(p){return e.enter("codeIndented"),tk(e,o,a,"linePrefix",4,4)(p)}function o(p){return p===null?d(p):$e(p)?e.attempt(yj,o,d)(p):(e.enter("codeFlowValue"),u(p))}function u(p){return p===null||$e(p)?(e.exit("codeFlowValue"),o(p)):(e.consume(p),u)}function d(p){return e.exit("codeIndented"),i(p)}}function wj(e,i,a){const s=this;return o;function o(d){return s.parser.lazy[s.now().line]?a(d):$e(d)?(e.enter("lineEnding"),e.consume(d),e.exit("lineEnding"),o):tk(e,i,u,"linePrefix",4,4)(d)}function u(d){return $e(d)?o(d):a(d)}}const kj={name:"codeText",previous:_j,resolve:Ej,tokenize:Nj};function Ej(e){let i=e.length-4,a=3,s,o;if((e[a][1].type==="lineEnding"||e[a][1].type==="space")&&(e[i][1].type==="lineEnding"||e[i][1].type==="space")){for(s=a;++s<i;)if(e[s][1].type==="codeTextData"){e[a][1].type="codeTextPadding",e[i][1].type="codeTextPadding",a+=2,i-=2;break}}for(s=a-1,i++;++s<=i;)o===void 0?s!==i&&e[s][1].type!=="lineEnding"&&(o=s):(s===i||e[s][1].type==="lineEnding")&&(e[o][1].type="codeTextData",s!==o+2&&(e[o][1].end=e[s-1][1].end,e.splice(o+2,s-o-2),i-=s-o-2,s=o+2),o=void 0);return e}function _j(e){return e!==96||this.events[this.events.length-1][1].type==="characterEscape"}function Nj(e,i,a){let s=0,o,u;return d;function d(b){return e.enter("codeText"),e.enter("codeTextSequence"),p(b)}function p(b){return b===96?(e.consume(b),s++,p):(e.exit("codeTextSequence"),m(b))}function m(b){return b===null?a(b):b===32?(e.enter("space"),e.consume(b),e.exit("space"),m):b===96?(u=e.enter("codeTextSequence"),o=0,x(b)):$e(b)?(e.enter("lineEnding"),e.consume(b),e.exit("lineEnding"),m):(e.enter("codeTextData"),g(b))}function g(b){return b===null||b===32||b===96||$e(b)?(e.exit("codeTextData"),m(b)):(e.consume(b),g)}function x(b){return b===96?(e.consume(b),o++,x):o===s?(e.exit("codeTextSequence"),e.exit("codeText"),i(b)):(u.type="codeTextData",g(b))}}class Sj{constructor(i){this.left=i?[...i]:[],this.right=[]}get(i){if(i<0||i>=this.left.length+this.right.length)throw new RangeError("Cannot access index `"+i+"` in a splice buffer of size `"+(this.left.length+this.right.length)+"`");return i<this.left.length?this.left[i]:this.right[this.right.length-i+this.left.length-1]}get length(){return this.left.length+this.right.length}shift(){return this.setCursor(0),this.right.pop()}slice(i,a){const s=a??Number.POSITIVE_INFINITY;return s<this.left.length?this.left.slice(i,s):i>this.left.length?this.right.slice(this.right.length-s+this.left.length,this.right.length-i+this.left.length).reverse():this.left.slice(i).concat(this.right.slice(this.right.length-s+this.left.length).reverse())}splice(i,a,s){const o=a||0;this.setCursor(Math.trunc(i));const u=this.right.splice(this.right.length-o,Number.POSITIVE_INFINITY);return s&&co(this.left,s),u.reverse()}pop(){return this.setCursor(Number.POSITIVE_INFINITY),this.left.pop()}push(i){this.setCursor(Number.POSITIVE_INFINITY),this.left.push(i)}pushMany(i){this.setCursor(Number.POSITIVE_INFINITY),co(this.left,i)}unshift(i){this.setCursor(0),this.right.push(i)}unshiftMany(i){this.setCursor(0),co(this.right,i.reverse())}setCursor(i){if(!(i===this.left.length||i>this.left.length&&this.right.length===0||i<0&&this.left.length===0))if(i<this.left.length){const a=this.left.splice(i,Number.POSITIVE_INFINITY);co(this.right,a.reverse())}else{const a=this.right.splice(this.left.length+this.right.length-i,Number.POSITIVE_INFINITY);co(this.left,a.reverse())}}}function co(e,i){let a=0;if(i.length<1e4)e.push(...i);else for(;a<i.length;)e.push(...i.slice(a,a+1e4)),a+=1e4}function rk(e){const i={};let a=-1,s,o,u,d,p,m,g;const x=new Sj(e);for(;++a<x.length;){for(;a in i;)a=i[a];if(s=x.get(a),a&&s[1].type==="chunkFlow"&&x.get(a-1)[1].type==="listItemPrefix"&&(m=s[1]._tokenizer.events,u=0,u<m.length&&m[u][1].type==="lineEndingBlank"&&(u+=2),u<m.length&&m[u][1].type==="content"))for(;++u<m.length&&m[u][1].type!=="content";)m[u][1].type==="chunkText"&&(m[u][1]._isInFirstContentOfListItem=!0,u++);if(s[0]==="enter")s[1].contentType&&(Object.assign(i,Tj(x,a)),a=i[a],g=!0);else if(s[1]._container){for(u=a,o=void 0;u--;)if(d=x.get(u),d[1].type==="lineEnding"||d[1].type==="lineEndingBlank")d[0]==="enter"&&(o&&(x.get(o)[1].type="lineEndingBlank"),d[1].type="lineEnding",o=u);else if(!(d[1].type==="linePrefix"||d[1].type==="listItemIndent"))break;o&&(s[1].end={...x.get(o)[1].start},p=x.slice(o,a),p.unshift(s),x.splice(o,a-o+1,p))}}return Ri(e,0,Number.POSITIVE_INFINITY,x.slice(0)),!g}function Tj(e,i){const a=e.get(i)[1],s=e.get(i)[2];let o=i-1;const u=[];let d=a._tokenizer;d||(d=s.parser[a.contentType](a.start),a._contentTypeTextTrailing&&(d._contentTypeTextTrailing=!0));const p=d.events,m=[],g={};let x,b,v=-1,y=a,k=0,N=0;const _=[N];for(;y;){for(;e.get(++o)[1]!==y;);u.push(o),y._tokenizer||(x=s.sliceStream(y),y.next||x.push(null),b&&d.defineSkip(y.start),y._isInFirstContentOfListItem&&(d._gfmTasklistFirstContentOfListItem=!0),d.write(x),y._isInFirstContentOfListItem&&(d._gfmTasklistFirstContentOfListItem=void 0)),b=y,y=y.next}for(y=a;++v<p.length;)p[v][0]==="exit"&&p[v-1][0]==="enter"&&p[v][1].type===p[v-1][1].type&&p[v][1].start.line!==p[v][1].end.line&&(N=v+1,_.push(N),y._tokenizer=void 0,y.previous=void 0,y=y.next);for(d.events=[],y?(y._tokenizer=void 0,y.previous=void 0):_.pop(),v=_.length;v--;){const S=p.slice(_[v],_[v+1]),C=u.pop();m.push([C,C+S.length-1]),e.splice(C,2,S)}for(m.reverse(),v=-1;++v<m.length;)g[k+m[v][0]]=k+m[v][1],k+=m[v][1]-m[v][0]-1;return g}const Cj={resolve:Oj,tokenize:Mj},Aj={partial:!0,tokenize:jj};function Oj(e){return rk(e),e}function Mj(e,i){let a;return s;function s(p){return e.enter("content"),a=e.enter("chunkContent",{contentType:"content"}),o(p)}function o(p){return p===null?u(p):$e(p)?e.check(Aj,d,u)(p):(e.consume(p),o)}function u(p){return e.exit("chunkContent"),e.exit("content"),i(p)}function d(p){return e.consume(p),e.exit("chunkContent"),a.next=e.enter("chunkContent",{contentType:"content",previous:a}),a=a.next,o}}function jj(e,i,a){const s=this;return o;function o(d){return e.exit("chunkContent"),e.enter("lineEnding"),e.consume(d),e.exit("lineEnding"),ht(e,u,"linePrefix")}function u(d){if(d===null||$e(d))return a(d);const p=s.events[s.events.length-1];return!s.parser.constructs.disable.null.includes("codeIndented")&&p&&p[1].type==="linePrefix"&&p[2].sliceSerialize(p[1],!0).length>=4?i(d):e.interrupt(s.parser.constructs.flow,a,i)(d)}}function sk(e,i,a,s,o,u,d,p,m){const g=m||Number.POSITIVE_INFINITY;let x=0;return b;function b(S){return S===60?(e.enter(s),e.enter(o),e.enter(u),e.consume(S),e.exit(u),v):S===null||S===32||S===41||Du(S)?a(S):(e.enter(s),e.enter(d),e.enter(p),e.enter("chunkString",{contentType:"string"}),N(S))}function v(S){return S===62?(e.enter(u),e.consume(S),e.exit(u),e.exit(o),e.exit(s),i):(e.enter(p),e.enter("chunkString",{contentType:"string"}),y(S))}function y(S){return S===62?(e.exit("chunkString"),e.exit(p),v(S)):S===null||S===60||$e(S)?a(S):(e.consume(S),S===92?k:y)}function k(S){return S===60||S===62||S===92?(e.consume(S),y):y(S)}function N(S){return!x&&(S===null||S===41||Rt(S))?(e.exit("chunkString"),e.exit(p),e.exit(d),e.exit(s),i(S)):x<g&&S===40?(e.consume(S),x++,N):S===41?(e.consume(S),x--,N):S===null||S===32||S===40||Du(S)?a(S):(e.consume(S),S===92?_:N)}function _(S){return S===40||S===41||S===92?(e.consume(S),N):N(S)}}function lk(e,i,a,s,o,u){const d=this;let p=0,m;return g;function g(y){return e.enter(s),e.enter(o),e.consume(y),e.exit(o),e.enter(u),x}function x(y){return p>999||y===null||y===91||y===93&&!m||y===94&&!p&&"_hiddenFootnoteSupport"in d.parser.constructs?a(y):y===93?(e.exit(u),e.enter(o),e.consume(y),e.exit(o),e.exit(s),i):$e(y)?(e.enter("lineEnding"),e.consume(y),e.exit("lineEnding"),x):(e.enter("chunkString",{contentType:"string"}),b(y))}function b(y){return y===null||y===91||y===93||$e(y)||p++>999?(e.exit("chunkString"),x(y)):(e.consume(y),m||(m=!nt(y)),y===92?v:b)}function v(y){return y===91||y===92||y===93?(e.consume(y),p++,b):b(y)}}function ok(e,i,a,s,o,u){let d;return p;function p(v){return v===34||v===39||v===40?(e.enter(s),e.enter(o),e.consume(v),e.exit(o),d=v===40?41:v,m):a(v)}function m(v){return v===d?(e.enter(o),e.consume(v),e.exit(o),e.exit(s),i):(e.enter(u),g(v))}function g(v){return v===d?(e.exit(u),m(d)):v===null?a(v):$e(v)?(e.enter("lineEnding"),e.consume(v),e.exit("lineEnding"),ht(e,g,"linePrefix")):(e.enter("chunkString",{contentType:"string"}),x(v))}function x(v){return v===d||v===null||$e(v)?(e.exit("chunkString"),g(v)):(e.consume(v),v===92?b:x)}function b(v){return v===d||v===92?(e.consume(v),x):x(v)}}function yo(e,i){let a;return s;function s(o){return $e(o)?(e.enter("lineEnding"),e.consume(o),e.exit("lineEnding"),a=!0,s):nt(o)?ht(e,s,a?"linePrefix":"lineSuffix")(o):i(o)}}const Rj={name:"definition",tokenize:zj},Dj={partial:!0,tokenize:Lj};function zj(e,i,a){const s=this;let o;return u;function u(y){return e.enter("definition"),d(y)}function d(y){return lk.call(s,e,p,a,"definitionLabel","definitionLabelMarker","definitionLabelString")(y)}function p(y){return o=Di(s.sliceSerialize(s.events[s.events.length-1][1]).slice(1,-1)),y===58?(e.enter("definitionMarker"),e.consume(y),e.exit("definitionMarker"),m):a(y)}function m(y){return Rt(y)?yo(e,g)(y):g(y)}function g(y){return sk(e,x,a,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString")(y)}function x(y){return e.attempt(Dj,b,b)(y)}function b(y){return nt(y)?ht(e,v,"whitespace")(y):v(y)}function v(y){return y===null||$e(y)?(e.exit("definition"),s.parser.defined.push(o),i(y)):a(y)}}function Lj(e,i,a){return s;function s(p){return Rt(p)?yo(e,o)(p):a(p)}function o(p){return ok(e,u,a,"definitionTitle","definitionTitleMarker","definitionTitleString")(p)}function u(p){return nt(p)?ht(e,d,"whitespace")(p):d(p)}function d(p){return p===null||$e(p)?i(p):a(p)}}const Ij={name:"hardBreakEscape",tokenize:Uj};function Uj(e,i,a){return s;function s(u){return e.enter("hardBreakEscape"),e.consume(u),o}function o(u){return $e(u)?(e.exit("hardBreakEscape"),i(u)):a(u)}}const Bj={name:"headingAtx",resolve:$j,tokenize:Hj};function $j(e,i){let a=e.length-2,s=3;if(e[s][1].type==="whitespace"&&(s+=2),a-2>s&&e[a][1].type==="whitespace"&&(a-=2),e[a][1].type==="atxHeadingSequence"&&(s===a-1||a-4>s&&e[a-2][1].type==="whitespace")&&(a-=s+1===a?2:4),a>s){const o={type:"atxHeadingText",start:e[s][1].start,end:e[a][1].end},u={type:"chunkText",start:e[s][1].start,end:e[a][1].end,contentType:"text"};Ri(e,s,a-s+1,[["enter",o,i],["enter",u,i],["exit",u,i],["exit",o,i]])}return e}function Hj(e,i,a){let s=0;return o;function o(x){return e.enter("atxHeading"),u(x)}function u(x){return e.enter("atxHeadingSequence"),d(x)}function d(x){return x===35&&s++<6?(e.consume(x),d):x===null||Rt(x)?(e.exit("atxHeadingSequence"),p(x)):a(x)}function p(x){return x===35?(e.enter("atxHeadingSequence"),m(x)):x===null||$e(x)?(e.exit("atxHeading"),i(x)):nt(x)?ht(e,p,"whitespace")(x):(e.enter("atxHeadingText"),g(x))}function m(x){return x===35?(e.consume(x),m):(e.exit("atxHeadingSequence"),p(x))}function g(x){return x===null||x===35||Rt(x)?(e.exit("atxHeadingText"),p(x)):(e.consume(x),g)}}const Pj=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],h0=["pre","script","style","textarea"],Fj={concrete:!0,name:"htmlFlow",resolveTo:Gj,tokenize:Yj},qj={partial:!0,tokenize:Kj};function Gj(e){let i=e.length;for(;i--&&!(e[i][0]==="enter"&&e[i][1].type==="htmlFlow"););return i>1&&e[i-2][1].type==="linePrefix"&&(e[i][1].start=e[i-2][1].start,e[i+1][1].start=e[i-2][1].start,e.splice(i-2,2)),e}function Yj(e,i,a){const s=this;let o,u,d,p,m;return g;function g(T){return x(T)}function x(T){return e.enter("htmlFlow"),e.enter("htmlFlowData"),e.consume(T),b}function b(T){return T===33?(e.consume(T),v):T===47?(e.consume(T),u=!0,N):T===63?(e.consume(T),o=3,s.interrupt?i:O):Bn(T)?(e.consume(T),d=String.fromCharCode(T),_):a(T)}function v(T){return T===45?(e.consume(T),o=2,y):T===91?(e.consume(T),o=5,p=0,k):Bn(T)?(e.consume(T),o=4,s.interrupt?i:O):a(T)}function y(T){return T===45?(e.consume(T),s.interrupt?i:O):a(T)}function k(T){const j="CDATA[";return T===j.charCodeAt(p++)?(e.consume(T),p===j.length?s.interrupt?i:ee:k):a(T)}function N(T){return Bn(T)?(e.consume(T),d=String.fromCharCode(T),_):a(T)}function _(T){if(T===null||T===47||T===62||Rt(T)){const j=T===47,ie=d.toLowerCase();return!j&&!u&&h0.includes(ie)?(o=1,s.interrupt?i(T):ee(T)):Pj.includes(d.toLowerCase())?(o=6,j?(e.consume(T),S):s.interrupt?i(T):ee(T)):(o=7,s.interrupt&&!s.parser.lazy[s.now().line]?a(T):u?C(T):M(T))}return T===45||An(T)?(e.consume(T),d+=String.fromCharCode(T),_):a(T)}function S(T){return T===62?(e.consume(T),s.interrupt?i:ee):a(T)}function C(T){return nt(T)?(e.consume(T),C):D(T)}function M(T){return T===47?(e.consume(T),D):T===58||T===95||Bn(T)?(e.consume(T),I):nt(T)?(e.consume(T),M):D(T)}function I(T){return T===45||T===46||T===58||T===95||An(T)?(e.consume(T),I):F(T)}function F(T){return T===61?(e.consume(T),R):nt(T)?(e.consume(T),F):M(T)}function R(T){return T===null||T===60||T===61||T===62||T===96?a(T):T===34||T===39?(e.consume(T),m=T,A):nt(T)?(e.consume(T),R):L(T)}function A(T){return T===m?(e.consume(T),m=null,V):T===null||$e(T)?a(T):(e.consume(T),A)}function L(T){return T===null||T===34||T===39||T===47||T===60||T===61||T===62||T===96||Rt(T)?F(T):(e.consume(T),L)}function V(T){return T===47||T===62||nt(T)?M(T):a(T)}function D(T){return T===62?(e.consume(T),U):a(T)}function U(T){return T===null||$e(T)?ee(T):nt(T)?(e.consume(T),U):a(T)}function ee(T){return T===45&&o===2?(e.consume(T),P):T===60&&o===1?(e.consume(T),ae):T===62&&o===4?(e.consume(T),Ie):T===63&&o===3?(e.consume(T),O):T===93&&o===5?(e.consume(T),de):$e(T)&&(o===6||o===7)?(e.exit("htmlFlowData"),e.check(qj,fe,ue)(T)):T===null||$e(T)?(e.exit("htmlFlowData"),ue(T)):(e.consume(T),ee)}function ue(T){return e.check(sm,re,fe)(T)}function re(T){return e.enter("lineEnding"),e.consume(T),e.exit("lineEnding"),ne}function ne(T){return T===null||$e(T)?ue(T):(e.enter("htmlFlowData"),ee(T))}function P(T){return T===45?(e.consume(T),O):ee(T)}function ae(T){return T===47?(e.consume(T),d="",$):ee(T)}function $(T){if(T===62){const j=d.toLowerCase();return h0.includes(j)?(e.consume(T),Ie):ee(T)}return Bn(T)&&d.length<8?(e.consume(T),d+=String.fromCharCode(T),$):ee(T)}function de(T){return T===93?(e.consume(T),O):ee(T)}function O(T){return T===62?(e.consume(T),Ie):T===45&&o===2?(e.consume(T),O):ee(T)}function Ie(T){return T===null||$e(T)?(e.exit("htmlFlowData"),fe(T)):(e.consume(T),Ie)}function fe(T){return e.exit("htmlFlow"),i(T)}}function Kj(e,i,a){return s;function s(o){return e.enter("lineEnding"),e.consume(o),e.exit("lineEnding"),e.attempt(Mo,i,a)}}const Vj={name:"htmlText",tokenize:Xj};function Xj(e,i,a){const s=this;let o,u,d;return p;function p(O){return e.enter("htmlText"),e.enter("htmlTextData"),e.consume(O),m}function m(O){return O===33?(e.consume(O),g):O===47?(e.consume(O),F):O===63?(e.consume(O),M):Bn(O)?(e.consume(O),L):a(O)}function g(O){return O===45?(e.consume(O),x):O===91?(e.consume(O),u=0,k):Bn(O)?(e.consume(O),C):a(O)}function x(O){return O===45?(e.consume(O),y):a(O)}function b(O){return O===null?a(O):O===45?(e.consume(O),v):$e(O)?(d=b,ae(O)):(e.consume(O),b)}function v(O){return O===45?(e.consume(O),y):b(O)}function y(O){return O===62?P(O):O===45?v(O):b(O)}function k(O){const Ie="CDATA[";return O===Ie.charCodeAt(u++)?(e.consume(O),u===Ie.length?N:k):a(O)}function N(O){return O===null?a(O):O===93?(e.consume(O),_):$e(O)?(d=N,ae(O)):(e.consume(O),N)}function _(O){return O===93?(e.consume(O),S):N(O)}function S(O){return O===62?P(O):O===93?(e.consume(O),S):N(O)}function C(O){return O===null||O===62?P(O):$e(O)?(d=C,ae(O)):(e.consume(O),C)}function M(O){return O===null?a(O):O===63?(e.consume(O),I):$e(O)?(d=M,ae(O)):(e.consume(O),M)}function I(O){return O===62?P(O):M(O)}function F(O){return Bn(O)?(e.consume(O),R):a(O)}function R(O){return O===45||An(O)?(e.consume(O),R):A(O)}function A(O){return $e(O)?(d=A,ae(O)):nt(O)?(e.consume(O),A):P(O)}function L(O){return O===45||An(O)?(e.consume(O),L):O===47||O===62||Rt(O)?V(O):a(O)}function V(O){return O===47?(e.consume(O),P):O===58||O===95||Bn(O)?(e.consume(O),D):$e(O)?(d=V,ae(O)):nt(O)?(e.consume(O),V):P(O)}function D(O){return O===45||O===46||O===58||O===95||An(O)?(e.consume(O),D):U(O)}function U(O){return O===61?(e.consume(O),ee):$e(O)?(d=U,ae(O)):nt(O)?(e.consume(O),U):V(O)}function ee(O){return O===null||O===60||O===61||O===62||O===96?a(O):O===34||O===39?(e.consume(O),o=O,ue):$e(O)?(d=ee,ae(O)):nt(O)?(e.consume(O),ee):(e.consume(O),re)}function ue(O){return O===o?(e.consume(O),o=void 0,ne):O===null?a(O):$e(O)?(d=ue,ae(O)):(e.consume(O),ue)}function re(O){return O===null||O===34||O===39||O===60||O===61||O===96?a(O):O===47||O===62||Rt(O)?V(O):(e.consume(O),re)}function ne(O){return O===47||O===62||Rt(O)?V(O):a(O)}function P(O){return O===62?(e.consume(O),e.exit("htmlTextData"),e.exit("htmlText"),i):a(O)}function ae(O){return e.exit("htmlTextData"),e.enter("lineEnding"),e.consume(O),e.exit("lineEnding"),$}function $(O){return nt(O)?ht(e,de,"linePrefix",s.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(O):de(O)}function de(O){return e.enter("htmlTextData"),d(O)}}const Zm={name:"labelEnd",resolveAll:Wj,resolveTo:eR,tokenize:tR},Zj={tokenize:nR},Qj={tokenize:iR},Jj={tokenize:aR};function Wj(e){let i=-1;const a=[];for(;++i<e.length;){const s=e[i][1];if(a.push(e[i]),s.type==="labelImage"||s.type==="labelLink"||s.type==="labelEnd"){const o=s.type==="labelImage"?4:2;s.type="data",i+=o}}return e.length!==a.length&&Ri(e,0,e.length,a),e}function eR(e,i){let a=e.length,s=0,o,u,d;for(;a--;){const x=e[a][1];if(o){if(x.type==="link"||x.type==="labelLink"&&x._inactive)break;e[a][0]==="enter"&&x.type==="labelLink"&&(x._inactive=!0)}else if(u){if(e[a][0]==="enter"&&(x.type==="labelImage"||x.type==="labelLink")&&!x._balanced&&(o=a,x.type!=="labelLink")){s=2;break}}else x.type==="labelEnd"&&(u=a)}const p={type:e[o][1].type==="labelLink"?"link":"image",start:{...e[o][1].start},end:{...e[e.length-1][1].end}},m={type:"label",start:{...e[o][1].start},end:{...e[u][1].end}},g={type:"labelText",start:{...e[o+s+2][1].end},end:{...e[u-2][1].start}};return d=[["enter",p,i],["enter",m,i]],d=bi(d,e.slice(o+1,o+s+3)),d=bi(d,[["enter",g,i]]),d=bi(d,cd(i.parser.constructs.insideSpan.null,e.slice(o+s+4,u-3),i)),d=bi(d,[["exit",g,i],e[u-2],e[u-1],["exit",m,i]]),d=bi(d,e.slice(u+1)),d=bi(d,[["exit",p,i]]),Ri(e,o,e.length,d),e}function tR(e,i,a){const s=this,o=s._labelStarts;let u,d;if(o){for(;o.length>0&&o[o.length-1]._balanced;)o.pop();u=o[o.length-1]}return p;function p(v){return u?u._inactive?b(v):(d=s.parser.defined.includes(Di(s.sliceSerialize({start:u.end,end:s.now()}))),e.enter("labelEnd"),e.enter("labelMarker"),e.consume(v),e.exit("labelMarker"),e.exit("labelEnd"),m):a(v)}function m(v){return v===40?e.attempt(Zj,x,d?x:b)(v):v===91?e.attempt(Qj,x,d?g:b)(v):d?x(v):b(v)}function g(v){return e.attempt(Jj,x,b)(v)}function x(v){return o.pop(),i(v)}function b(v){return u._balanced=!0,a(v)}}function nR(e,i,a){return s;function s(b){return e.enter("resource"),e.enter("resourceMarker"),e.consume(b),e.exit("resourceMarker"),o}function o(b){return Rt(b)?yo(e,u)(b):u(b)}function u(b){return b===41?x(b):sk(e,d,p,"resourceDestination","resourceDestinationLiteral","resourceDestinationLiteralMarker","resourceDestinationRaw","resourceDestinationString",32)(b)}function d(b){return Rt(b)?yo(e,m)(b):x(b)}function p(b){return a(b)}function m(b){return b===34||b===39||b===40?ok(e,g,a,"resourceTitle","resourceTitleMarker","resourceTitleString")(b):x(b)}function g(b){return Rt(b)?yo(e,x)(b):x(b)}function x(b){return b===41?(e.enter("resourceMarker"),e.consume(b),e.exit("resourceMarker"),e.exit("resource"),i):a(b)}}function iR(e,i,a){const s=this;return o;function o(p){return lk.call(s,e,u,d,"reference","referenceMarker","referenceString")(p)}function u(p){return s.parser.defined.includes(Di(s.sliceSerialize(s.events[s.events.length-1][1]).slice(1,-1)))?i(p):a(p)}function d(p){return a(p)}}function aR(e,i,a){return s;function s(u){return e.enter("reference"),e.enter("referenceMarker"),e.consume(u),e.exit("referenceMarker"),o}function o(u){return u===93?(e.enter("referenceMarker"),e.consume(u),e.exit("referenceMarker"),e.exit("reference"),i):a(u)}}const rR={name:"labelStartImage",resolveAll:Zm.resolveAll,tokenize:sR};function sR(e,i,a){const s=this;let o;return u;function u(m){return e.enter("labelImage"),e.enter("labelImageMarker"),e.consume(m),e.exit("labelImageMarker"),d}function d(m){return m===91?(e.enter("labelMarker"),e.consume(m),e.exit("labelMarker"),o=e.exit("labelImage"),p):a(m)}function p(m){return m===94&&"_hiddenFootnoteSupport"in s.parser.constructs?a(m):(s._labelStarts=s._labelStarts||[],s._labelStarts.push(o),i(m))}}const lR={name:"labelStartLink",resolveAll:Zm.resolveAll,tokenize:oR};function oR(e,i,a){const s=this;let o;return u;function u(p){return e.enter("labelLink"),e.enter("labelMarker"),e.consume(p),e.exit("labelMarker"),o=e.exit("labelLink"),d}function d(p){return p===94&&"_hiddenFootnoteSupport"in s.parser.constructs?a(p):(s._labelStarts=s._labelStarts||[],s._labelStarts.push(o),i(p))}}const oh={name:"lineEnding",tokenize:cR};function cR(e,i){return a;function a(s){return e.enter("lineEnding"),e.consume(s),e.exit("lineEnding"),ht(e,i,"linePrefix")}}const Eu={name:"thematicBreak",tokenize:uR};function uR(e,i,a){let s=0,o;return u;function u(g){return e.enter("thematicBreak"),d(g)}function d(g){return o=g,p(g)}function p(g){return g===o?(e.enter("thematicBreakSequence"),m(g)):s>=3&&(g===null||$e(g))?(e.exit("thematicBreak"),i(g)):a(g)}function m(g){return g===o?(e.consume(g),s++,m):(e.exit("thematicBreakSequence"),nt(g)?ht(e,p,"whitespace")(g):p(g))}}const Xn={continuation:{tokenize:hR},exit:gR,name:"list",tokenize:pR},dR={partial:!0,tokenize:bR},fR={partial:!0,tokenize:mR};function pR(e,i,a){const s=this,o=s.events[s.events.length-1];let u=o&&o[1].type==="linePrefix"?o[2].sliceSerialize(o[1],!0).length:0,d=0;return p;function p(y){const k=s.containerState.type||(y===42||y===43||y===45?"listUnordered":"listOrdered");if(k==="listUnordered"?!s.containerState.marker||y===s.containerState.marker:am(y)){if(s.containerState.type||(s.containerState.type=k,e.enter(k,{_container:!0})),k==="listUnordered")return e.enter("listItemPrefix"),y===42||y===45?e.check(Eu,a,g)(y):g(y);if(!s.interrupt||y===49)return e.enter("listItemPrefix"),e.enter("listItemValue"),m(y)}return a(y)}function m(y){return am(y)&&++d<10?(e.consume(y),m):(!s.interrupt||d<2)&&(s.containerState.marker?y===s.containerState.marker:y===41||y===46)?(e.exit("listItemValue"),g(y)):a(y)}function g(y){return e.enter("listItemMarker"),e.consume(y),e.exit("listItemMarker"),s.containerState.marker=s.containerState.marker||y,e.check(Mo,s.interrupt?a:x,e.attempt(dR,v,b))}function x(y){return s.containerState.initialBlankLine=!0,u++,v(y)}function b(y){return nt(y)?(e.enter("listItemPrefixWhitespace"),e.consume(y),e.exit("listItemPrefixWhitespace"),v):a(y)}function v(y){return s.containerState.size=u+s.sliceSerialize(e.exit("listItemPrefix"),!0).length,i(y)}}function hR(e,i,a){const s=this;return s.containerState._closeFlow=void 0,e.check(Mo,o,u);function o(p){return s.containerState.furtherBlankLines=s.containerState.furtherBlankLines||s.containerState.initialBlankLine,ht(e,i,"listItemIndent",s.containerState.size+1)(p)}function u(p){return s.containerState.furtherBlankLines||!nt(p)?(s.containerState.furtherBlankLines=void 0,s.containerState.initialBlankLine=void 0,d(p)):(s.containerState.furtherBlankLines=void 0,s.containerState.initialBlankLine=void 0,e.attempt(fR,i,d)(p))}function d(p){return s.containerState._closeFlow=!0,s.interrupt=void 0,ht(e,e.attempt(Xn,i,a),"linePrefix",s.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(p)}}function mR(e,i,a){const s=this;return ht(e,o,"listItemIndent",s.containerState.size+1);function o(u){const d=s.events[s.events.length-1];return d&&d[1].type==="listItemIndent"&&d[2].sliceSerialize(d[1],!0).length===s.containerState.size?i(u):a(u)}}function gR(e){e.exit(this.containerState.type)}function bR(e,i,a){const s=this;return ht(e,o,"listItemPrefixWhitespace",s.parser.constructs.disable.null.includes("codeIndented")?void 0:5);function o(u){const d=s.events[s.events.length-1];return!nt(u)&&d&&d[1].type==="listItemPrefixWhitespace"?i(u):a(u)}}const m0={name:"setextUnderline",resolveTo:xR,tokenize:yR};function xR(e,i){const a=new zu;let s=e.length,o,u,d;for(;s--;)if(e[s][0]==="enter"){if(e[s][1].type==="content"){o=s;break}e[s][1].type==="paragraph"&&(u=s)}else e[s][1].type==="content"&&a.add(s,1,[]),!d&&e[s][1].type==="definition"&&(d=s);const p={type:"setextHeading",start:{...e[o][1].start},end:{...e[e.length-1][1].end}};return e[u][1].type="setextHeadingText",d?(a.add(u,0,[["enter",p,i]]),a.add(d+1,0,[["exit",e[o][1],i]]),e[o][1].end={...e[d][1].end}):e[o][1]=p,a.add(e.length,0,[["exit",p,i]]),a.consume(e),e}function yR(e,i,a){const s=this;let o;return u;function u(g){let x=s.events.length,b;for(;x--;)if(s.events[x][1].type!=="lineEnding"&&s.events[x][1].type!=="linePrefix"&&s.events[x][1].type!=="content"){b=s.events[x][1].type==="paragraph";break}return!s.parser.lazy[s.now().line]&&(s.interrupt||b)?(e.enter("setextHeadingLine"),o=g,d(g)):a(g)}function d(g){return e.enter("setextHeadingLineSequence"),p(g)}function p(g){return g===o?(e.consume(g),p):(e.exit("setextHeadingLineSequence"),nt(g)?ht(e,m,"lineSuffix")(g):m(g))}function m(g){return g===null||$e(g)?(e.exit("setextHeadingLine"),i(g)):a(g)}}const vR={tokenize:wR};function wR(e){const i=this,a=e.attempt(Mo,s,e.attempt(this.parser.constructs.flowInitial,o,ht(e,e.attempt(this.parser.constructs.flow,o,e.attempt(Cj,o)),"linePrefix")));return a;function s(u){if(u===null){e.consume(u);return}return e.enter("lineEndingBlank"),e.consume(u),e.exit("lineEndingBlank"),i.currentConstruct=void 0,a}function o(u){if(u===null){e.consume(u);return}return e.enter("lineEnding"),e.consume(u),e.exit("lineEnding"),i.currentConstruct=void 0,a}}const kR={resolveAll:uk()},ER=ck("string"),_R=ck("text");function ck(e){return{resolveAll:uk(e==="text"?NR:void 0),tokenize:i};function i(a){const s=this,o=this.parser.constructs[e],u=a.attempt(o,d,p);return d;function d(x){return g(x)?u(x):p(x)}function p(x){if(x===null){a.consume(x);return}return a.enter("data"),a.consume(x),m}function m(x){return g(x)?(a.exit("data"),u(x)):(a.consume(x),m)}function g(x){if(x===null)return!0;const b=o[x];let v=-1;if(b)for(;++v<b.length;){const y=b[v];if(!y.previous||y.previous.call(s,s.previous))return!0}return!1}}}function uk(e){return i;function i(a,s){let o=-1,u;for(;++o<=a.length;)u===void 0?a[o]&&a[o][1].type==="data"&&(u=o,o++):(!a[o]||a[o][1].type!=="data")&&(o!==u+2&&(a[u][1].end=a[o-1][1].end,a.splice(u+2,o-u-2),o=u+2),u=void 0);return e?e(a,s):a}}function NR(e,i){const a=new zu;let s=0;for(;++s<=e.length;)if((s===e.length||e[s][1].type==="lineEnding")&&e[s-1][1].type==="data"){const o=e[s-1][1],u=i.sliceStream(o);let d=u.length,p=-1,m=0,g;for(;d--;){const x=u[d];if(typeof x=="string"){for(p=x.length;x.charCodeAt(p-1)===32;)m++,p--;if(p)break;p=-1}else if(x===-2)g=!0,m++;else if(x!==-1){d++;break}}if(i._contentTypeTextTrailing&&s===e.length&&(m=0),m){const x={type:s===e.length||g||m<2?"lineSuffix":"hardBreakTrailing",start:{_bufferIndex:d?p:o.start._bufferIndex+p,_index:o.start._index+d,line:o.end.line,column:o.end.column-m,offset:o.end.offset-m},end:{...o.end}};o.end={...x.start},o.start.offset===o.end.offset?Object.assign(o,x):a.add(s,0,[["enter",x,i],["exit",x,i]])}s++}return a.consume(e),e}const SR={42:Xn,43:Xn,45:Xn,48:Xn,49:Xn,50:Xn,51:Xn,52:Xn,53:Xn,54:Xn,55:Xn,56:Xn,57:Xn,62:nk},TR={91:Rj},CR={[-2]:lh,[-1]:lh,32:lh},AR={35:Bj,42:Eu,45:[m0,Eu],60:Fj,61:m0,95:Eu,96:p0,126:p0},OR={38:ak,92:ik},MR={[-5]:oh,[-4]:oh,[-3]:oh,33:rR,38:ak,42:rm,60:[cj,Vj],91:lR,92:[Ij,ik],93:Zm,95:rm,96:kj},jR={null:[rm,kR]},RR={null:[42,95]},DR={null:[]},zR=Object.freeze(Object.defineProperty({__proto__:null,attentionMarkers:RR,contentInitial:TR,disable:DR,document:SR,flow:AR,flowInitial:CR,insideSpan:jR,string:OR,text:MR},Symbol.toStringTag,{value:"Module"}));function LR(e,i,a){let s={_bufferIndex:-1,_index:0,line:a&&a.line||1,column:a&&a.column||1,offset:a&&a.offset||0};const o={},u=[];let d=[],p=[];const m={attempt:A(F),check:A(R),consume:C,enter:M,exit:I,interrupt:A(R,{interrupt:!0})},g={code:null,containerState:{},defineSkip:N,events:[],now:k,parser:e,previous:null,sliceSerialize:v,sliceStream:y,write:b};let x=i.tokenize.call(g,m);return i.resolveAll&&u.push(i),g;function b(U){return d=bi(d,U),_(),d[d.length-1]!==null?[]:(L(i,0),g.events=cd(u,g.events,g),g.events)}function v(U,ee){return UR(y(U),ee)}function y(U){return IR(d,U)}function k(){const{_bufferIndex:U,_index:ee,line:ue,column:re,offset:ne}=s;return{_bufferIndex:U,_index:ee,line:ue,column:re,offset:ne}}function N(U){o[U.line]=U.column,D()}function _(){for(;s._index<d.length;){const U=d[s._index];if(typeof U=="string"){const ee=s._index;for(s._bufferIndex<0&&(s._bufferIndex=0);s._index===ee&&s._bufferIndex<U.length;)S(U.charCodeAt(s._bufferIndex))}else S(U)}}function S(U){x=x(U)}function C(U){$e(U)?(s.line++,s.column=1,s.offset+=U===-3?2:1,D()):U!==-1&&(s.column++,s.offset++),s._bufferIndex<0?s._index++:(s._bufferIndex++,s._bufferIndex===d[s._index].length&&(s._bufferIndex=-1,s._index++)),g.previous=U}function M(U,ee){const ue=ee||{};return ue.type=U,ue.start=k(),g.events.push(["enter",ue,g]),p.push(ue),ue}function I(U){const ee=p.pop();return ee.end=k(),g.events.push(["exit",ee,g]),ee}function F(U,ee){L(U,ee.from)}function R(U,ee){ee.restore()}function A(U,ee){return ue;function ue(re,ne,P){let ae,$,de,O;return Array.isArray(re)?fe(re):"tokenize"in re?fe([re]):Ie(re);function Ie(he){return Z;function Z(we){const Ce=we!==null&&he[we],J=we!==null&&he.null,ge=[...Array.isArray(Ce)?Ce:Ce?[Ce]:[],...Array.isArray(J)?J:J?[J]:[]];return fe(ge)(we)}}function fe(he){return ae=he,$=0,he.length===0?P:T(he[$])}function T(he){return Z;function Z(we){return O=V(),de=he,he.partial||(g.currentConstruct=he),he.name&&g.parser.constructs.disable.null.includes(he.name)?ie():he.tokenize.call(ee?Object.assign(Object.create(g),ee):g,m,j,ie)(we)}}function j(he){return U(de,O),ne}function ie(he){return O.restore(),++$<ae.length?T(ae[$]):P}}}function L(U,ee){U.resolveAll&&!u.includes(U)&&u.push(U),U.resolve&&Ri(g.events,ee,g.events.length-ee,U.resolve(g.events.slice(ee),g)),U.resolveTo&&(g.events=U.resolveTo(g.events,g))}function V(){const U=k(),ee=g.previous,ue=g.currentConstruct,re=g.events.length,ne=Array.from(p);return{from:re,restore:P};function P(){s=U,g.previous=ee,g.currentConstruct=ue,g.events.length=re,p=ne,D()}}function D(){s.line in o&&s.column<2&&(s.column=o[s.line],s.offset+=o[s.line]-1)}}function IR(e,i){const a=i.start._index,s=i.start._bufferIndex,o=i.end._index,u=i.end._bufferIndex;let d;if(a===o)d=[e[a].slice(s,u)];else{if(d=e.slice(a,o),s>-1){const p=d[0];typeof p=="string"?d[0]=p.slice(s):d.shift()}u>0&&d.push(e[o].slice(0,u))}return d}function UR(e,i){let a=-1;const s=[];let o;for(;++a<e.length;){const u=e[a];let d;if(typeof u=="string")d=u;else switch(u){case-5:{d="\r";break}case-4:{d=`
|
|
243
|
+
`;break}case-3:{d=`\r
|
|
244
|
+
`;break}case-2:{d=i?" ":" ";break}case-1:{if(!i&&o)continue;d=" ";break}default:d=String.fromCharCode(u)}o=u===-2,s.push(d)}return s.join("")}function BR(e){const s={constructs:Ww([zR,...(e||{}).extensions||[]]),content:o(nj),defined:[],document:o(aj),flow:o(vR),lazy:{},string:o(ER),text:o(_R)};return s;function o(u){return d;function d(p){return LR(s,u,p)}}}function $R(e){for(;!rk(e););return e}const g0=/[\0\t\n\r]/g;function HR(){let e=1,i="",a=!0,s;return o;function o(u,d,p){u=i+(typeof u=="string"?u.toString():new TextDecoder(d||void 0).decode(u));const m=[];let g=0;for(i="",a&&(u.charCodeAt(0)===65279&&g++,a=void 0);g<u.length;){g0.lastIndex=g;const x=g0.exec(u),b=x&&x.index!==void 0?x.index:u.length,v=u.charCodeAt(b);if(!x){i=u.slice(g);break}if(v===10&&g===b&&s)m.push(-3),s=void 0;else switch(s&&(m.push(-5),s=void 0),g<b&&(m.push(u.slice(g,b)),e+=b-g),v){case 0:{m.push(65533),e++;break}case 9:{const y=Math.ceil(e/4)*4;for(m.push(-2);e++<y;)m.push(-1);break}case 10:{m.push(-4),e=1;break}default:s=!0,e=1}g=b+1}return p&&(s&&m.push(-5),i&&m.push(i),m.push(null)),m}}const PR=/\\([!-/:-@[-`{-~])|&(#(?:\d{1,7}|x[\da-f]{1,6})|[\da-z]{1,31});/gi;function FR(e){return e.replace(PR,qR)}function qR(e,i,a){if(i)return i;if(a.charCodeAt(0)===35){const o=a.charCodeAt(1),u=o===120||o===88;return ek(a.slice(u?2:1),u?16:10)}return Xm(a)||e}const dk={}.hasOwnProperty;function GR(e,i,a){return i&&typeof i=="object"&&(a=i,i=void 0),YR(a)($R(BR(a).document().write(HR()(e,i,!0))))}function YR(e){const i={afterExit:[],beforeEnter:[],transforms:[],canContainEols:["emphasis","fragment","heading","paragraph","strong"],enter:{autolink:d($n),autolinkProtocol:D,autolinkEmail:D,atxHeading:d(Fe),blockQuote:d(ge),characterEscape:D,characterReference:D,codeFenced:d(ke),codeFencedFenceInfo:p,codeFencedFenceMeta:p,codeIndented:d(ke,p),codeText:d(Dt,p),codeTextData:D,data:D,codeFlowValue:D,definition:d(Ut),definitionDestinationString:p,definitionLabelString:p,definitionTitleString:p,emphasis:d($t),hardBreakEscape:d(vt),hardBreakTrailing:d(vt),htmlFlow:d(et,p),htmlFlowData:D,htmlText:d(et,p),htmlTextData:D,image:d(cn),label:p,link:d($n),listItem:d(oe),listItemValue:y,listOrdered:d(jn,v),listUnordered:d(jn),paragraph:d(Xe),reference:j,referenceString:p,resourceDestinationString:p,resourceTitleString:p,setextHeading:d(Fe),strong:d(pt),thematicBreak:d(rn)},exit:{atxHeading:g(),atxHeadingSequence:R,autolink:g(),autolinkEmail:J,autolinkProtocol:Ce,blockQuote:g(),characterEscapeValue:U,characterReferenceMarkerHexadecimal:he,characterReferenceMarkerNumeric:he,characterReferenceValue:Z,characterReference:we,codeFenced:g(S),codeFencedFence:_,codeFencedFenceInfo:k,codeFencedFenceMeta:N,codeFlowValue:U,codeIndented:g(C),codeText:g(P),codeTextData:U,data:U,definition:g(),definitionDestinationString:F,definitionLabelString:M,definitionTitleString:I,emphasis:g(),hardBreakEscape:g(ue),hardBreakTrailing:g(ue),htmlFlow:g(re),htmlFlowData:U,htmlText:g(ne),htmlTextData:U,image:g($),label:O,labelText:de,lineEnding:ee,link:g(ae),listItem:g(),listOrdered:g(),listUnordered:g(),paragraph:g(),referenceString:ie,resourceDestinationString:Ie,resourceTitleString:fe,resource:T,setextHeading:g(V),setextHeadingLineSequence:L,setextHeadingText:A,strong:g(),thematicBreak:g()}};fk(i,(e||{}).mdastExtensions||[]);const a={};return s;function s(te){let ye={type:"root",children:[],position:void 0};const Ue={stack:[ye],tokenStack:[],config:i,enter:m,exit:x,buffer:p,resume:b,data:a},qe=[],Yt=[];let wt=-1;for(;++wt<te.length;)if(Yt.push(te[wt]),te[wt][1].type==="listOrdered"||te[wt][1].type==="listUnordered")if(te[wt][0]==="enter")qe.push(Yt.length-1);else{const sn=qe.pop();u(Yt,sn)}for(te=Yt,wt=-1;++wt<te.length;){const sn=i[te[wt][0]];te[wt][0]==="enter"&&i.beforeEnter.length>0&&o(i.beforeEnter,{...Ue,sliceSerialize:te[wt][2].sliceSerialize},te[wt][1]),dk.call(sn,te[wt][1].type)&&sn[te[wt][1].type].call({...Ue,sliceSerialize:te[wt][2].sliceSerialize},te[wt][1]),te[wt][0]==="exit"&&i.afterExit.length>0&&o(i.afterExit,{...Ue,sliceSerialize:te[wt][2].sliceSerialize},te[wt][1])}if(Ue.tokenStack.length>0){const sn=Ue.tokenStack[Ue.tokenStack.length-1];(sn[1]||b0).call(Ue,void 0,sn[0])}for(ye.position={start:ur(te.length>0?te[0][1].start:{line:1,column:1,offset:0}),end:ur(te.length>0?te[te.length-2][1].end:{line:1,column:1,offset:0})},wt=-1;++wt<i.transforms.length;)ye=i.transforms[wt](ye)||ye;return ye}function o(te,ye,Ue){let qe=-1;for(;++qe<te.length;)te[qe].call(ye,Ue)}function u(te,ye){const Ue=te.length-1;let qe=ye-1,Yt=-1,wt=!1,sn,gn,yi,vi;const na=[];for(;++qe<=Ue;){const un=te[qe];switch(un[1].type){case"listUnordered":case"listOrdered":case"blockQuote":{un[0]==="enter"?Yt++:Yt--,vi=void 0;break}case"lineEndingBlank":{un[0]==="enter"&&(sn&&!vi&&!Yt&&!yi&&(yi=qe),vi=void 0);break}case"linePrefix":case"listItemValue":case"listItemMarker":case"listItemPrefix":case"listItemPrefixWhitespace":break;default:vi=void 0}if(!Yt&&un[0]==="enter"&&un[1].type==="listItemPrefix"||Yt===-1&&un[0]==="exit"&&(un[1].type==="listUnordered"||un[1].type==="listOrdered")){if(sn){let wi=qe;for(gn=void 0;wi--;){const Rn=te[wi];if(Rn[1].type==="lineEnding"||Rn[1].type==="lineEndingBlank"){if(Rn[0]==="exit")continue;gn&&(te[gn][1].type="lineEndingBlank",wt=!0),Rn[1].type="lineEnding",gn=wi}else if(!(Rn[1].type==="linePrefix"||Rn[1].type==="blockQuotePrefix"||Rn[1].type==="blockQuotePrefixWhitespace"||Rn[1].type==="blockQuoteMarker"||Rn[1].type==="listItemIndent"))break}yi&&(!gn||yi<gn)&&(sn._spread=!0),sn.end=Object.assign({},gn?te[gn][1].start:un[1].end),na.push({at:gn||qe,event:["exit",sn,un[2]]})}if(un[1].type==="listItemPrefix"){const wi={type:"listItem",_spread:!1,start:Object.assign({},un[1].start),end:void 0};sn=wi,na.push({at:qe,event:["enter",wi,un[2]]}),yi=void 0,vi=!0}}}const Oa=te.splice(ye);let Kt=0;for(qe=-1;++qe<Oa.length;){for(;Kt<na.length&&na[Kt].at===ye+qe;)te.push(na[Kt++].event);te.push(Oa[qe])}te[ye][1]._spread=wt}function d(te,ye){return Ue;function Ue(qe){m.call(this,te(qe),qe),ye&&ye.call(this,qe)}}function p(){this.stack.push({type:"fragment",children:[]})}function m(te,ye,Ue){this.stack[this.stack.length-1].children.push(te),this.stack.push(te),this.tokenStack.push([ye,Ue||void 0]),te.position={start:ur(ye.start),end:void 0}}function g(te){return ye;function ye(Ue){te&&te.call(this,Ue),x.call(this,Ue)}}function x(te,ye){const Ue=this.stack.pop(),qe=this.tokenStack.pop();if(!qe)throw new Error("Cannot close `"+te.type+"` ("+xo({start:te.start,end:te.end})+"): it’s not open");qe[0].type!==te.type&&(ye?ye.call(this,te,qe[0]):(qe[1]||b0).call(this,te,qe[0])),Ue.position.end=ur(te.end)}function b(){return Vm(this.stack.pop())}function v(){this.data.expectingFirstListItemValue=!0}function y(te){if(this.data.expectingFirstListItemValue){const ye=this.stack[this.stack.length-2];ye.start=Number.parseInt(this.sliceSerialize(te),10),this.data.expectingFirstListItemValue=void 0}}function k(){const te=this.resume(),ye=this.stack[this.stack.length-1];ye.lang=te}function N(){const te=this.resume(),ye=this.stack[this.stack.length-1];ye.meta=te}function _(){this.data.flowCodeInside||(this.buffer(),this.data.flowCodeInside=!0)}function S(){const te=this.resume(),ye=this.stack[this.stack.length-1];ye.value=te.replace(/^(\r?\n|\r)|(\r?\n|\r)$/g,""),this.data.flowCodeInside=void 0}function C(){const te=this.resume(),ye=this.stack[this.stack.length-1];ye.value=te.replace(/(\r?\n|\r)$/g,"")}function M(te){const ye=this.resume(),Ue=this.stack[this.stack.length-1];Ue.label=ye,Ue.identifier=Di(this.sliceSerialize(te)).toLowerCase()}function I(){const te=this.resume(),ye=this.stack[this.stack.length-1];ye.title=te}function F(){const te=this.resume(),ye=this.stack[this.stack.length-1];ye.url=te}function R(te){const ye=this.stack[this.stack.length-1];if(!ye.depth){const Ue=this.sliceSerialize(te).length;ye.depth=Ue}}function A(){this.data.setextHeadingSlurpLineEnding=!0}function L(te){const ye=this.stack[this.stack.length-1];ye.depth=this.sliceSerialize(te).codePointAt(0)===61?1:2}function V(){this.data.setextHeadingSlurpLineEnding=void 0}function D(te){const Ue=this.stack[this.stack.length-1].children;let qe=Ue[Ue.length-1];(!qe||qe.type!=="text")&&(qe=ft(),qe.position={start:ur(te.start),end:void 0},Ue.push(qe)),this.stack.push(qe)}function U(te){const ye=this.stack.pop();ye.value+=this.sliceSerialize(te),ye.position.end=ur(te.end)}function ee(te){const ye=this.stack[this.stack.length-1];if(this.data.atHardBreak){const Ue=ye.children[ye.children.length-1];Ue.position.end=ur(te.end),this.data.atHardBreak=void 0;return}!this.data.setextHeadingSlurpLineEnding&&i.canContainEols.includes(ye.type)&&(D.call(this,te),U.call(this,te))}function ue(){this.data.atHardBreak=!0}function re(){const te=this.resume(),ye=this.stack[this.stack.length-1];ye.value=te}function ne(){const te=this.resume(),ye=this.stack[this.stack.length-1];ye.value=te}function P(){const te=this.resume(),ye=this.stack[this.stack.length-1];ye.value=te}function ae(){const te=this.stack[this.stack.length-1];if(this.data.inReference){const ye=this.data.referenceType||"shortcut";te.type+="Reference",te.referenceType=ye,delete te.url,delete te.title}else delete te.identifier,delete te.label;this.data.referenceType=void 0}function $(){const te=this.stack[this.stack.length-1];if(this.data.inReference){const ye=this.data.referenceType||"shortcut";te.type+="Reference",te.referenceType=ye,delete te.url,delete te.title}else delete te.identifier,delete te.label;this.data.referenceType=void 0}function de(te){const ye=this.sliceSerialize(te),Ue=this.stack[this.stack.length-2];Ue.label=FR(ye),Ue.identifier=Di(ye).toLowerCase()}function O(){const te=this.stack[this.stack.length-1],ye=this.resume(),Ue=this.stack[this.stack.length-1];if(this.data.inReference=!0,Ue.type==="link"){const qe=te.children;Ue.children=qe}else Ue.alt=ye}function Ie(){const te=this.resume(),ye=this.stack[this.stack.length-1];ye.url=te}function fe(){const te=this.resume(),ye=this.stack[this.stack.length-1];ye.title=te}function T(){this.data.inReference=void 0}function j(){this.data.referenceType="collapsed"}function ie(te){const ye=this.resume(),Ue=this.stack[this.stack.length-1];Ue.label=ye,Ue.identifier=Di(this.sliceSerialize(te)).toLowerCase(),this.data.referenceType="full"}function he(te){this.data.characterReferenceType=te.type}function Z(te){const ye=this.sliceSerialize(te),Ue=this.data.characterReferenceType;let qe;Ue?(qe=ek(ye,Ue==="characterReferenceMarkerNumeric"?10:16),this.data.characterReferenceType=void 0):qe=Xm(ye);const Yt=this.stack[this.stack.length-1];Yt.value+=qe}function we(te){const ye=this.stack.pop();ye.position.end=ur(te.end)}function Ce(te){U.call(this,te);const ye=this.stack[this.stack.length-1];ye.url=this.sliceSerialize(te)}function J(te){U.call(this,te);const ye=this.stack[this.stack.length-1];ye.url="mailto:"+this.sliceSerialize(te)}function ge(){return{type:"blockquote",children:[],position:void 0}}function ke(){return{type:"code",lang:null,meta:null,value:"",position:void 0}}function Dt(){return{type:"inlineCode",value:"",position:void 0}}function Ut(){return{type:"definition",identifier:"",label:null,title:null,url:"",position:void 0}}function $t(){return{type:"emphasis",children:[],position:void 0}}function Fe(){return{type:"heading",depth:0,children:[],position:void 0}}function vt(){return{type:"break",position:void 0}}function et(){return{type:"html",value:"",position:void 0}}function cn(){return{type:"image",title:null,url:"",alt:null,position:void 0}}function $n(){return{type:"link",title:null,url:"",children:[],position:void 0}}function jn(te){return{type:"list",ordered:te.type==="listOrdered",start:null,spread:te._spread,children:[],position:void 0}}function oe(te){return{type:"listItem",spread:te._spread,checked:null,children:[],position:void 0}}function Xe(){return{type:"paragraph",children:[],position:void 0}}function pt(){return{type:"strong",children:[],position:void 0}}function ft(){return{type:"text",value:"",position:void 0}}function rn(){return{type:"thematicBreak",position:void 0}}}function ur(e){return{line:e.line,column:e.column,offset:e.offset}}function fk(e,i){let a=-1;for(;++a<i.length;){const s=i[a];Array.isArray(s)?fk(e,s):KR(e,s)}}function KR(e,i){let a;for(a in i)if(dk.call(i,a))switch(a){case"canContainEols":{const s=i[a];s&&e[a].push(...s);break}case"transforms":{const s=i[a];s&&e[a].push(...s);break}case"afterExit":case"beforeEnter":{const s=i[a];s&&e[a].push(s);break}case"enter":case"exit":{const s=i[a];s&&Object.assign(e[a],s);break}}}function b0(e,i){throw e?new Error("Cannot close `"+e.type+"` ("+xo({start:e.start,end:e.end})+"): a different token (`"+i.type+"`, "+xo({start:i.start,end:i.end})+") is open"):new Error("Cannot close document, a token (`"+i.type+"`, "+xo({start:i.start,end:i.end})+") is still open")}function VR(e){const i=this;i.parser=a;function a(s){return GR(s,{...i.data("settings"),...e,extensions:i.data("micromarkExtensions")||[],mdastExtensions:i.data("fromMarkdownExtensions")||[]})}}function XR(e,i){const a={type:"element",tagName:"blockquote",properties:{},children:e.wrap(e.all(i),!0)};return e.patch(i,a),e.applyData(i,a)}function ZR(e,i){const a={type:"element",tagName:"br",properties:{},children:[]};return e.patch(i,a),[e.applyData(i,a),{type:"text",value:`
|
|
245
|
+
`}]}function QR(e,i){const a=i.value?i.value+`
|
|
246
|
+
`:"",s={},o=i.lang?i.lang.split(/\s+/):[];o.length>0&&(s.className=["language-"+o[0]]);let u={type:"element",tagName:"code",properties:s,children:[{type:"text",value:a}]};return i.meta&&(u.data={meta:i.meta}),e.patch(i,u),u=e.applyData(i,u),u={type:"element",tagName:"pre",properties:{},children:[u]},e.patch(i,u),u}function JR(e,i){const a={type:"element",tagName:"del",properties:{},children:e.all(i)};return e.patch(i,a),e.applyData(i,a)}function WR(e,i){const a={type:"element",tagName:"em",properties:{},children:e.all(i)};return e.patch(i,a),e.applyData(i,a)}function e5(e,i){const a=typeof e.options.clobberPrefix=="string"?e.options.clobberPrefix:"user-content-",s=String(i.identifier).toUpperCase(),o=ul(s.toLowerCase()),u=e.footnoteOrder.indexOf(s);let d,p=e.footnoteCounts.get(s);p===void 0?(p=0,e.footnoteOrder.push(s),d=e.footnoteOrder.length):d=u+1,p+=1,e.footnoteCounts.set(s,p);const m={type:"element",tagName:"a",properties:{href:"#"+a+"fn-"+o,id:a+"fnref-"+o+(p>1?"-"+p:""),dataFootnoteRef:!0,ariaDescribedBy:["footnote-label"]},children:[{type:"text",value:String(d)}]};e.patch(i,m);const g={type:"element",tagName:"sup",properties:{},children:[m]};return e.patch(i,g),e.applyData(i,g)}function t5(e,i){const a={type:"element",tagName:"h"+i.depth,properties:{},children:e.all(i)};return e.patch(i,a),e.applyData(i,a)}function n5(e,i){if(e.options.allowDangerousHtml){const a={type:"raw",value:i.value};return e.patch(i,a),e.applyData(i,a)}}function pk(e,i){const a=i.referenceType;let s="]";if(a==="collapsed"?s+="[]":a==="full"&&(s+="["+(i.label||i.identifier)+"]"),i.type==="imageReference")return[{type:"text",value:"!["+i.alt+s}];const o=e.all(i),u=o[0];u&&u.type==="text"?u.value="["+u.value:o.unshift({type:"text",value:"["});const d=o[o.length-1];return d&&d.type==="text"?d.value+=s:o.push({type:"text",value:s}),o}function i5(e,i){const a=String(i.identifier).toUpperCase(),s=e.definitionById.get(a);if(!s)return pk(e,i);const o={src:ul(s.url||""),alt:i.alt};s.title!==null&&s.title!==void 0&&(o.title=s.title);const u={type:"element",tagName:"img",properties:o,children:[]};return e.patch(i,u),e.applyData(i,u)}function a5(e,i){const a={src:ul(i.url)};i.alt!==null&&i.alt!==void 0&&(a.alt=i.alt),i.title!==null&&i.title!==void 0&&(a.title=i.title);const s={type:"element",tagName:"img",properties:a,children:[]};return e.patch(i,s),e.applyData(i,s)}function r5(e,i){const a={type:"text",value:i.value.replace(/\r?\n|\r/g," ")};e.patch(i,a);const s={type:"element",tagName:"code",properties:{},children:[a]};return e.patch(i,s),e.applyData(i,s)}function s5(e,i){const a=String(i.identifier).toUpperCase(),s=e.definitionById.get(a);if(!s)return pk(e,i);const o={href:ul(s.url||"")};s.title!==null&&s.title!==void 0&&(o.title=s.title);const u={type:"element",tagName:"a",properties:o,children:e.all(i)};return e.patch(i,u),e.applyData(i,u)}function l5(e,i){const a={href:ul(i.url)};i.title!==null&&i.title!==void 0&&(a.title=i.title);const s={type:"element",tagName:"a",properties:a,children:e.all(i)};return e.patch(i,s),e.applyData(i,s)}function o5(e,i,a){const s=e.all(i),o=a?c5(a):hk(i),u={},d=[];if(typeof i.checked=="boolean"){const x=s[0];let b;x&&x.type==="element"&&x.tagName==="p"?b=x:(b={type:"element",tagName:"p",properties:{},children:[]},s.unshift(b)),b.children.length>0&&b.children.unshift({type:"text",value:" "}),b.children.unshift({type:"element",tagName:"input",properties:{type:"checkbox",checked:i.checked,disabled:!0},children:[]}),u.className=["task-list-item"]}let p=-1;for(;++p<s.length;){const x=s[p];(o||p!==0||x.type!=="element"||x.tagName!=="p")&&d.push({type:"text",value:`
|
|
247
|
+
`}),x.type==="element"&&x.tagName==="p"&&!o?d.push(...x.children):d.push(x)}const m=s[s.length-1];m&&(o||m.type!=="element"||m.tagName!=="p")&&d.push({type:"text",value:`
|
|
248
|
+
`});const g={type:"element",tagName:"li",properties:u,children:d};return e.patch(i,g),e.applyData(i,g)}function c5(e){let i=!1;if(e.type==="list"){i=e.spread||!1;const a=e.children;let s=-1;for(;!i&&++s<a.length;)i=hk(a[s])}return i}function hk(e){const i=e.spread;return i??e.children.length>1}function u5(e,i){const a={},s=e.all(i);let o=-1;for(typeof i.start=="number"&&i.start!==1&&(a.start=i.start);++o<s.length;){const d=s[o];if(d.type==="element"&&d.tagName==="li"&&d.properties&&Array.isArray(d.properties.className)&&d.properties.className.includes("task-list-item")){a.className=["contains-task-list"];break}}const u={type:"element",tagName:i.ordered?"ol":"ul",properties:a,children:e.wrap(s,!0)};return e.patch(i,u),e.applyData(i,u)}function d5(e,i){const a={type:"element",tagName:"p",properties:{},children:e.all(i)};return e.patch(i,a),e.applyData(i,a)}function f5(e,i){const a={type:"root",children:e.wrap(e.all(i))};return e.patch(i,a),e.applyData(i,a)}function p5(e,i){const a={type:"element",tagName:"strong",properties:{},children:e.all(i)};return e.patch(i,a),e.applyData(i,a)}function h5(e,i){const a=e.all(i),s=a.shift(),o=[];if(s){const d={type:"element",tagName:"thead",properties:{},children:e.wrap([s],!0)};e.patch(i.children[0],d),o.push(d)}if(a.length>0){const d={type:"element",tagName:"tbody",properties:{},children:e.wrap(a,!0)},p=qm(i.children[1]),m=Yw(i.children[i.children.length-1]);p&&m&&(d.position={start:p,end:m}),o.push(d)}const u={type:"element",tagName:"table",properties:{},children:e.wrap(o,!0)};return e.patch(i,u),e.applyData(i,u)}function m5(e,i,a){const s=a?a.children:void 0,u=(s?s.indexOf(i):1)===0?"th":"td",d=a&&a.type==="table"?a.align:void 0,p=d?d.length:i.children.length;let m=-1;const g=[];for(;++m<p;){const b=i.children[m],v={},y=d?d[m]:void 0;y&&(v.align=y);let k={type:"element",tagName:u,properties:v,children:[]};b&&(k.children=e.all(b),e.patch(b,k),k=e.applyData(b,k)),g.push(k)}const x={type:"element",tagName:"tr",properties:{},children:e.wrap(g,!0)};return e.patch(i,x),e.applyData(i,x)}function g5(e,i){const a={type:"element",tagName:"td",properties:{},children:e.all(i)};return e.patch(i,a),e.applyData(i,a)}const x0=9,y0=32;function b5(e){const i=String(e),a=/\r?\n|\r/g;let s=a.exec(i),o=0;const u=[];for(;s;)u.push(v0(i.slice(o,s.index),o>0,!0),s[0]),o=s.index+s[0].length,s=a.exec(i);return u.push(v0(i.slice(o),o>0,!1)),u.join("")}function v0(e,i,a){let s=0,o=e.length;if(i){let u=e.codePointAt(s);for(;u===x0||u===y0;)s++,u=e.codePointAt(s)}if(a){let u=e.codePointAt(o-1);for(;u===x0||u===y0;)o--,u=e.codePointAt(o-1)}return o>s?e.slice(s,o):""}function x5(e,i){const a={type:"text",value:b5(String(i.value))};return e.patch(i,a),e.applyData(i,a)}function y5(e,i){const a={type:"element",tagName:"hr",properties:{},children:[]};return e.patch(i,a),e.applyData(i,a)}const v5={blockquote:XR,break:ZR,code:QR,delete:JR,emphasis:WR,footnoteReference:e5,heading:t5,html:n5,imageReference:i5,image:a5,inlineCode:r5,linkReference:s5,link:l5,listItem:o5,list:u5,paragraph:d5,root:f5,strong:p5,table:h5,tableCell:g5,tableRow:m5,text:x5,thematicBreak:y5,toml:ou,yaml:ou,definition:ou,footnoteDefinition:ou};function ou(){}const mk=-1,ud=0,vo=1,Iu=2,Qm=3,Jm=4,Wm=5,eg=6,gk=7,bk=8,{defineProperty:w5}=Object,xk=typeof self=="object"?self:globalThis,w0=(e,i)=>{switch(e){case"Function":case"SharedWorker":case"Worker":case"eval":case"setInterval":case"setTimeout":throw new TypeError("unable to deserialize "+e)}return new xk[e](i)},k5=(e,i)=>{const a=(o,u)=>(e.set(u,o),o),s=o=>{if(e.has(o))return e.get(o);const[u,d]=i[o];switch(u){case ud:case mk:return a(d,o);case vo:{const p=a([],o);for(const m of d)p.push(s(m));return p}case Iu:{const p=a({},o);for(const[m,g]of d){const x=s(m),b=s(g);x==="__proto__"?w5(p,x,{value:b,configurable:!0,enumerable:!0,writable:!0}):p[x]=b}return p}case Qm:return a(new Date(d),o);case Jm:{const{source:p,flags:m}=d;return a(new RegExp(p,m),o)}case Wm:{const p=a(new Map,o);for(const[m,g]of d)p.set(s(m),s(g));return p}case eg:{const p=a(new Set,o);for(const m of d)p.add(s(m));return p}case gk:{const{name:p,message:m}=d;return a(typeof xk[p]=="function"?w0(p,m):new Error(m),o)}case bk:return a(BigInt(d),o);case"BigInt":return a(Object(BigInt(d)),o);case"ArrayBuffer":return a(new Uint8Array(d).buffer,d);case"DataView":{const{buffer:p}=new Uint8Array(d);return a(new DataView(p),d)}case"-0":return-0}return a(w0(u,d),o)};return s},k0=e=>k5(new Map,e)(0),Hr="",{toString:E5}={},{keys:_5,is:N5}=Object,uo=e=>{const i=typeof e;if(i!=="object"||!e)return[ud,i];const a=E5.call(e).slice(8,-1);switch(a){case"Array":return[vo,Hr];case"Object":return[Iu,Hr];case"Date":return[Qm,Hr];case"RegExp":return[Jm,Hr];case"Map":return[Wm,Hr];case"Set":return[eg,Hr];case"DataView":return[vo,a]}return a.includes("Array")?[vo,a]:e instanceof Error?[gk,e.name||"Error"]:[Iu,a]},cu=([e,i])=>e===ud&&(i==="function"||i==="symbol"),S5=(e,i,a,s)=>{const o=(d,p)=>{const m=s.push(d)-1;return a.set(p,m),m},u=d=>{if(a.has(d))return a.get(d);let[p,m]=uo(d);switch(p){case ud:{let x=d;switch(m){case"bigint":p=bk,x=d.toString();break;case"number":if(!d&&N5(d,-0))return s.push(["-0"])-1;break;case"function":case"symbol":if(e)throw new TypeError("unable to serialize "+m);x=null;break;case"undefined":return o([mk],d)}return o([p,x],d)}case vo:{if(m){let v=d;return m==="DataView"?v=new Uint8Array(d.buffer):m==="ArrayBuffer"&&(v=new Uint8Array(d)),o([m,[...v]],d)}const x=[],b=o([p,x],d);for(const v of d)x.push(u(v));return b}case Iu:{if(m)switch(m){case"BigInt":return o([m,d.toString()],d);case"Boolean":case"Number":case"String":return o([m,d.valueOf()],d)}if(i&&"toJSON"in d)return u(d.toJSON());const x=[],b=o([p,x],d);for(const v of _5(d))(e||!cu(uo(d[v])))&&x.push([u(v),u(d[v])]);return b}case Qm:return o([p,isNaN(d.getTime())?Hr:d.toISOString()],d);case Jm:{const{source:x,flags:b}=d;return o([p,{source:x,flags:b}],d)}case Wm:{const x=[],b=o([p,x],d);for(const[v,y]of d)(e||!(cu(uo(v))||cu(uo(y))))&&x.push([u(v),u(y)]);return b}case eg:{const x=[],b=o([p,x],d);for(const v of d)(e||!cu(uo(v)))&&x.push(u(v));return b}}const{message:g}=d;return o([p,{name:m,message:g}],d)};return u},E0=(e,{json:i,lossy:a}={})=>{const s=[];return S5(!(i||a),!!i,new Map,s)(e),s},Uu=typeof structuredClone=="function"?(e,i)=>i&&("json"in i||"lossy"in i)?k0(E0(e,i)):structuredClone(e):(e,i)=>k0(E0(e,i));function T5(e,i){const a=[{type:"text",value:"↩"}];return i>1&&a.push({type:"element",tagName:"sup",properties:{},children:[{type:"text",value:String(i)}]}),a}function C5(e,i){return"Back to reference "+(e+1)+(i>1?"-"+i:"")}function A5(e){const i=typeof e.options.clobberPrefix=="string"?e.options.clobberPrefix:"user-content-",a=e.options.footnoteBackContent||T5,s=e.options.footnoteBackLabel||C5,o=e.options.footnoteLabel||"Footnotes",u=e.options.footnoteLabelTagName||"h2",d=e.options.footnoteLabelProperties||{className:["sr-only"]},p=[];let m=-1;for(;++m<e.footnoteOrder.length;){const g=e.footnoteById.get(e.footnoteOrder[m]);if(!g)continue;const x=e.all(g),b=String(g.identifier).toUpperCase(),v=ul(b.toLowerCase());let y=0;const k=[],N=e.footnoteCounts.get(b);for(;N!==void 0&&++y<=N;){k.length>0&&k.push({type:"text",value:" "});let C=typeof a=="string"?a:a(m,y);typeof C=="string"&&(C={type:"text",value:C}),k.push({type:"element",tagName:"a",properties:{href:"#"+i+"fnref-"+v+(y>1?"-"+y:""),dataFootnoteBackref:"",ariaLabel:typeof s=="string"?s:s(m,y),className:["data-footnote-backref"]},children:Array.isArray(C)?C:[C]})}const _=x[x.length-1];if(_&&_.type==="element"&&_.tagName==="p"){const C=_.children[_.children.length-1];C&&C.type==="text"?C.value+=" ":_.children.push({type:"text",value:" "}),_.children.push(...k)}else x.push(...k);const S={type:"element",tagName:"li",properties:{id:i+"fn-"+v},children:e.wrap(x,!0)};e.patch(g,S),p.push(S)}if(p.length!==0)return{type:"element",tagName:"section",properties:{dataFootnotes:!0,className:["footnotes"]},children:[{type:"element",tagName:u,properties:{...Uu(d),id:"footnote-label"},children:[{type:"text",value:o}]},{type:"text",value:`
|
|
249
|
+
`},{type:"element",tagName:"ol",properties:{},children:e.wrap(p,!0)},{type:"text",value:`
|
|
250
|
+
`}]}}const jo=(function(e){if(e==null)return R5;if(typeof e=="function")return dd(e);if(typeof e=="object")return Array.isArray(e)?O5(e):M5(e);if(typeof e=="string")return j5(e);throw new Error("Expected function, string, or object as test")});function O5(e){const i=[];let a=-1;for(;++a<e.length;)i[a]=jo(e[a]);return dd(s);function s(...o){let u=-1;for(;++u<i.length;)if(i[u].apply(this,o))return!0;return!1}}function M5(e){const i=e;return dd(a);function a(s){const o=s;let u;for(u in e)if(o[u]!==i[u])return!1;return!0}}function j5(e){return dd(i);function i(a){return a&&a.type===e}}function dd(e){return i;function i(a,s,o){return!!(D5(a)&&e.call(this,a,typeof s=="number"?s:void 0,o||void 0))}}function R5(){return!0}function D5(e){return e!==null&&typeof e=="object"&&"type"in e}const yk=[],z5=!0,lm=!1,L5="skip";function vk(e,i,a,s){let o;typeof i=="function"&&typeof a!="function"?(s=a,a=i):o=i;const u=jo(o),d=s?-1:1;p(e,void 0,[])();function p(m,g,x){const b=m&&typeof m=="object"?m:{};if(typeof b.type=="string"){const y=typeof b.tagName=="string"?b.tagName:typeof b.name=="string"?b.name:void 0;Object.defineProperty(v,"name",{value:"node ("+(m.type+(y?"<"+y+">":""))+")"})}return v;function v(){let y=yk,k,N,_;if((!i||u(m,g,x[x.length-1]||void 0))&&(y=I5(a(m,x)),y[0]===lm))return y;if("children"in m&&m.children){const S=m;if(S.children&&y[0]!==L5)for(N=(s?S.children.length:-1)+d,_=x.concat(S);N>-1&&N<S.children.length;){const C=S.children[N];if(k=p(C,N,_)(),k[0]===lm)return k;N=typeof k[1]=="number"?k[1]:N+d}}return y}}}function I5(e){return Array.isArray(e)?e:typeof e=="number"?[z5,e]:e==null?yk:[e]}function fd(e,i,a,s){let o,u,d;typeof i=="function"&&typeof a!="function"?(u=void 0,d=i,o=a):(u=i,d=a,o=s),vk(e,u,p,o);function p(m,g){const x=g[g.length-1],b=x?x.children.indexOf(m):void 0;return d(m,b,x)}}const om={}.hasOwnProperty,U5={};function B5(e,i){const a=i||U5,s=new Map,o=new Map,u=new Map,d={...v5,...a.handlers},p={all:g,applyData:H5,definitionById:s,footnoteById:o,footnoteCounts:u,footnoteOrder:[],handlers:d,one:m,options:a,patch:$5,wrap:F5};return fd(e,function(x){if(x.type==="definition"||x.type==="footnoteDefinition"){const b=x.type==="definition"?s:o,v=String(x.identifier).toUpperCase();b.has(v)||b.set(v,x)}}),p;function m(x,b){const v=x.type,y=p.handlers[v];if(om.call(p.handlers,v)&&y)return y(p,x,b);if(p.options.passThrough&&p.options.passThrough.includes(v)){if("children"in x){const{children:N,..._}=x,S=Uu(_);return S.children=p.all(x),S}return Uu(x)}return(p.options.unknownHandler||P5)(p,x,b)}function g(x){const b=[];if("children"in x){const v=x.children;let y=-1;for(;++y<v.length;){const k=p.one(v[y],x);if(k){if(y&&v[y-1].type==="break"&&(!Array.isArray(k)&&k.type==="text"&&(k.value=_0(k.value)),!Array.isArray(k)&&k.type==="element")){const N=k.children[0];N&&N.type==="text"&&(N.value=_0(N.value))}Array.isArray(k)?b.push(...k):b.push(k)}}}return b}}function $5(e,i){e.position&&(i.position=CM(e))}function H5(e,i){let a=i;if(e&&e.data){const s=e.data.hName,o=e.data.hChildren,u=e.data.hProperties;if(typeof s=="string")if(a.type==="element")a.tagName=s;else{const d="children"in a?a.children:[a];a={type:"element",tagName:s,properties:{},children:d}}a.type==="element"&&u&&Object.assign(a.properties,Uu(u)),"children"in a&&a.children&&o!==null&&o!==void 0&&(a.children=o)}return a}function P5(e,i){const a=i.data||{},s="value"in i&&!(om.call(a,"hProperties")||om.call(a,"hChildren"))?{type:"text",value:i.value}:{type:"element",tagName:"div",properties:{},children:e.all(i)};return e.patch(i,s),e.applyData(i,s)}function F5(e,i){const a=[];let s=-1;for(i&&a.push({type:"text",value:`
|
|
251
|
+
`});++s<e.length;)s&&a.push({type:"text",value:`
|
|
252
|
+
`}),a.push(e[s]);return i&&e.length>0&&a.push({type:"text",value:`
|
|
253
|
+
`}),a}function _0(e){let i=0,a=e.charCodeAt(i);for(;a===9||a===32;)i++,a=e.charCodeAt(i);return e.slice(i)}function N0(e,i){const a=B5(e,i),s=a.one(e,void 0),o=A5(a),u=Array.isArray(s)?{type:"root",children:s}:s||{type:"root",children:[]};return o&&u.children.push({type:"text",value:`
|
|
254
|
+
`},o),u}function q5(e,i){return e&&"run"in e?async function(a,s){const o=N0(a,{file:s,...i});await e.run(o,s)}:function(a,s){return N0(a,{file:s,...e||i})}}function S0(e){if(e)throw e}var ch,T0;function G5(){if(T0)return ch;T0=1;var e=Object.prototype.hasOwnProperty,i=Object.prototype.toString,a=Object.defineProperty,s=Object.getOwnPropertyDescriptor,o=function(g){return typeof Array.isArray=="function"?Array.isArray(g):i.call(g)==="[object Array]"},u=function(g){if(!g||i.call(g)!=="[object Object]")return!1;var x=e.call(g,"constructor"),b=g.constructor&&g.constructor.prototype&&e.call(g.constructor.prototype,"isPrototypeOf");if(g.constructor&&!x&&!b)return!1;var v;for(v in g);return typeof v>"u"||e.call(g,v)},d=function(g,x){a&&x.name==="__proto__"?a(g,x.name,{enumerable:!0,configurable:!0,value:x.newValue,writable:!0}):g[x.name]=x.newValue},p=function(g,x){if(x==="__proto__")if(e.call(g,x)){if(s)return s(g,x).value}else return;return g[x]};return ch=function m(){var g,x,b,v,y,k,N=arguments[0],_=1,S=arguments.length,C=!1;for(typeof N=="boolean"&&(C=N,N=arguments[1]||{},_=2),(N==null||typeof N!="object"&&typeof N!="function")&&(N={});_<S;++_)if(g=arguments[_],g!=null)for(x in g)b=p(N,x),v=p(g,x),N!==v&&(C&&v&&(u(v)||(y=o(v)))?(y?(y=!1,k=b&&o(b)?b:[]):k=b&&u(b)?b:{},d(N,{name:x,newValue:m(C,k,v)})):typeof v<"u"&&d(N,{name:x,newValue:v}));return N},ch}var Y5=G5();const uh=Pu(Y5);function cm(e){if(typeof e!="object"||e===null)return!1;const i=Object.getPrototypeOf(e);return(i===null||i===Object.prototype||Object.getPrototypeOf(i)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)}function K5(){const e=[],i={run:a,use:s};return i;function a(...o){let u=-1;const d=o.pop();if(typeof d!="function")throw new TypeError("Expected function as last argument, not "+d);p(null,...o);function p(m,...g){const x=e[++u];let b=-1;if(m){d(m);return}for(;++b<o.length;)(g[b]===null||g[b]===void 0)&&(g[b]=o[b]);o=g,x?V5(x,p)(...g):d(null,...g)}}function s(o){if(typeof o!="function")throw new TypeError("Expected `middelware` to be a function, not "+o);return e.push(o),i}}function V5(e,i){let a;return s;function s(...d){const p=e.length>d.length;let m;p&&d.push(o);try{m=e.apply(this,d)}catch(g){const x=g;if(p&&a)throw x;return o(x)}p||(m&&m.then&&typeof m.then=="function"?m.then(u,o):m instanceof Error?o(m):u(m))}function o(d,...p){a||(a=!0,i(d,...p))}function u(d){o(null,d)}}const Ji={basename:X5,dirname:Z5,extname:Q5,join:J5,sep:"/"};function X5(e,i){if(i!==void 0&&typeof i!="string")throw new TypeError('"ext" argument must be a string');Ro(e);let a=0,s=-1,o=e.length,u;if(i===void 0||i.length===0||i.length>e.length){for(;o--;)if(e.codePointAt(o)===47){if(u){a=o+1;break}}else s<0&&(u=!0,s=o+1);return s<0?"":e.slice(a,s)}if(i===e)return"";let d=-1,p=i.length-1;for(;o--;)if(e.codePointAt(o)===47){if(u){a=o+1;break}}else d<0&&(u=!0,d=o+1),p>-1&&(e.codePointAt(o)===i.codePointAt(p--)?p<0&&(s=o):(p=-1,s=d));return a===s?s=d:s<0&&(s=e.length),e.slice(a,s)}function Z5(e){if(Ro(e),e.length===0)return".";let i=-1,a=e.length,s;for(;--a;)if(e.codePointAt(a)===47){if(s){i=a;break}}else s||(s=!0);return i<0?e.codePointAt(0)===47?"/":".":i===1&&e.codePointAt(0)===47?"//":e.slice(0,i)}function Q5(e){Ro(e);let i=e.length,a=-1,s=0,o=-1,u=0,d;for(;i--;){const p=e.codePointAt(i);if(p===47){if(d){s=i+1;break}continue}a<0&&(d=!0,a=i+1),p===46?o<0?o=i:u!==1&&(u=1):o>-1&&(u=-1)}return o<0||a<0||u===0||u===1&&o===a-1&&o===s+1?"":e.slice(o,a)}function J5(...e){let i=-1,a;for(;++i<e.length;)Ro(e[i]),e[i]&&(a=a===void 0?e[i]:a+"/"+e[i]);return a===void 0?".":W5(a)}function W5(e){Ro(e);const i=e.codePointAt(0)===47;let a=eD(e,!i);return a.length===0&&!i&&(a="."),a.length>0&&e.codePointAt(e.length-1)===47&&(a+="/"),i?"/"+a:a}function eD(e,i){let a="",s=0,o=-1,u=0,d=-1,p,m;for(;++d<=e.length;){if(d<e.length)p=e.codePointAt(d);else{if(p===47)break;p=47}if(p===47){if(!(o===d-1||u===1))if(o!==d-1&&u===2){if(a.length<2||s!==2||a.codePointAt(a.length-1)!==46||a.codePointAt(a.length-2)!==46){if(a.length>2){if(m=a.lastIndexOf("/"),m!==a.length-1){m<0?(a="",s=0):(a=a.slice(0,m),s=a.length-1-a.lastIndexOf("/")),o=d,u=0;continue}}else if(a.length>0){a="",s=0,o=d,u=0;continue}}i&&(a=a.length>0?a+"/..":"..",s=2)}else a.length>0?a+="/"+e.slice(o+1,d):a=e.slice(o+1,d),s=d-o-1;o=d,u=0}else p===46&&u>-1?u++:u=-1}return a}function Ro(e){if(typeof e!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(e))}const tD={cwd:nD};function nD(){return"/"}function um(e){return!!(e!==null&&typeof e=="object"&&"href"in e&&e.href&&"protocol"in e&&e.protocol&&e.auth===void 0)}function iD(e){if(typeof e=="string")e=new URL(e);else if(!um(e)){const i=new TypeError('The "path" argument must be of type string or an instance of URL. Received `'+e+"`");throw i.code="ERR_INVALID_ARG_TYPE",i}if(e.protocol!=="file:"){const i=new TypeError("The URL must be of scheme file");throw i.code="ERR_INVALID_URL_SCHEME",i}return aD(e)}function aD(e){if(e.hostname!==""){const s=new TypeError('File URL host must be "localhost" or empty on darwin');throw s.code="ERR_INVALID_FILE_URL_HOST",s}const i=e.pathname;let a=-1;for(;++a<i.length;)if(i.codePointAt(a)===37&&i.codePointAt(a+1)===50){const s=i.codePointAt(a+2);if(s===70||s===102){const o=new TypeError("File URL path must not include encoded / characters");throw o.code="ERR_INVALID_FILE_URL_PATH",o}}return decodeURIComponent(i)}const dh=["history","path","basename","stem","extname","dirname"];class wk{constructor(i){let a;i?um(i)?a={path:i}:typeof i=="string"||rD(i)?a={value:i}:a=i:a={},this.cwd="cwd"in a?"":tD.cwd(),this.data={},this.history=[],this.messages=[],this.value,this.map,this.result,this.stored;let s=-1;for(;++s<dh.length;){const u=dh[s];u in a&&a[u]!==void 0&&a[u]!==null&&(this[u]=u==="history"?[...a[u]]:a[u])}let o;for(o in a)dh.includes(o)||(this[o]=a[o])}get basename(){return typeof this.path=="string"?Ji.basename(this.path):void 0}set basename(i){ph(i,"basename"),fh(i,"basename"),this.path=Ji.join(this.dirname||"",i)}get dirname(){return typeof this.path=="string"?Ji.dirname(this.path):void 0}set dirname(i){C0(this.basename,"dirname"),this.path=Ji.join(i||"",this.basename)}get extname(){return typeof this.path=="string"?Ji.extname(this.path):void 0}set extname(i){if(fh(i,"extname"),C0(this.dirname,"extname"),i){if(i.codePointAt(0)!==46)throw new Error("`extname` must start with `.`");if(i.includes(".",1))throw new Error("`extname` cannot contain multiple dots")}this.path=Ji.join(this.dirname,this.stem+(i||""))}get path(){return this.history[this.history.length-1]}set path(i){um(i)&&(i=iD(i)),ph(i,"path"),this.path!==i&&this.history.push(i)}get stem(){return typeof this.path=="string"?Ji.basename(this.path,this.extname):void 0}set stem(i){ph(i,"stem"),fh(i,"stem"),this.path=Ji.join(this.dirname||"",i+(this.extname||""))}fail(i,a,s){const o=this.message(i,a,s);throw o.fatal=!0,o}info(i,a,s){const o=this.message(i,a,s);return o.fatal=void 0,o}message(i,a,s){const o=new Mn(i,a,s);return this.path&&(o.name=this.path+":"+o.name,o.file=this.path),o.fatal=!1,this.messages.push(o),o}toString(i){return this.value===void 0?"":typeof this.value=="string"?this.value:new TextDecoder(i||void 0).decode(this.value)}}function fh(e,i){if(e&&e.includes(Ji.sep))throw new Error("`"+i+"` cannot be a path: did not expect `"+Ji.sep+"`")}function ph(e,i){if(!e)throw new Error("`"+i+"` cannot be empty")}function C0(e,i){if(!e)throw new Error("Setting `"+i+"` requires `path` to be set too")}function rD(e){return!!(e&&typeof e=="object"&&"byteLength"in e&&"byteOffset"in e)}const sD=(function(e){const s=this.constructor.prototype,o=s[e],u=function(){return o.apply(u,arguments)};return Object.setPrototypeOf(u,s),u}),lD={}.hasOwnProperty;class tg extends sD{constructor(){super("copy"),this.Compiler=void 0,this.Parser=void 0,this.attachers=[],this.compiler=void 0,this.freezeIndex=-1,this.frozen=void 0,this.namespace={},this.parser=void 0,this.transformers=K5()}copy(){const i=new tg;let a=-1;for(;++a<this.attachers.length;){const s=this.attachers[a];i.use(...s)}return i.data(uh(!0,{},this.namespace)),i}data(i,a){return typeof i=="string"?arguments.length===2?(gh("data",this.frozen),this.namespace[i]=a,this):lD.call(this.namespace,i)&&this.namespace[i]||void 0:i?(gh("data",this.frozen),this.namespace=i,this):this.namespace}freeze(){if(this.frozen)return this;const i=this;for(;++this.freezeIndex<this.attachers.length;){const[a,...s]=this.attachers[this.freezeIndex];if(s[0]===!1)continue;s[0]===!0&&(s[0]=void 0);const o=a.call(i,...s);typeof o=="function"&&this.transformers.use(o)}return this.frozen=!0,this.freezeIndex=Number.POSITIVE_INFINITY,this}parse(i){this.freeze();const a=uu(i),s=this.parser||this.Parser;return hh("parse",s),s(String(a),a)}process(i,a){const s=this;return this.freeze(),hh("process",this.parser||this.Parser),mh("process",this.compiler||this.Compiler),a?o(void 0,a):new Promise(o);function o(u,d){const p=uu(i),m=s.parse(p);s.run(m,p,function(x,b,v){if(x||!b||!v)return g(x);const y=b,k=s.stringify(y,v);uD(k)?v.value=k:v.result=k,g(x,v)});function g(x,b){x||!b?d(x):u?u(b):a(void 0,b)}}}processSync(i){let a=!1,s;return this.freeze(),hh("processSync",this.parser||this.Parser),mh("processSync",this.compiler||this.Compiler),this.process(i,o),O0("processSync","process",a),s;function o(u,d){a=!0,S0(u),s=d}}run(i,a,s){A0(i),this.freeze();const o=this.transformers;return!s&&typeof a=="function"&&(s=a,a=void 0),s?u(void 0,s):new Promise(u);function u(d,p){const m=uu(a);o.run(i,m,g);function g(x,b,v){const y=b||i;x?p(x):d?d(y):s(void 0,y,v)}}}runSync(i,a){let s=!1,o;return this.run(i,a,u),O0("runSync","run",s),o;function u(d,p){S0(d),o=p,s=!0}}stringify(i,a){this.freeze();const s=uu(a),o=this.compiler||this.Compiler;return mh("stringify",o),A0(i),o(i,s)}use(i,...a){const s=this.attachers,o=this.namespace;if(gh("use",this.frozen),i!=null)if(typeof i=="function")m(i,a);else if(typeof i=="object")Array.isArray(i)?p(i):d(i);else throw new TypeError("Expected usable value, not `"+i+"`");return this;function u(g){if(typeof g=="function")m(g,[]);else if(typeof g=="object")if(Array.isArray(g)){const[x,...b]=g;m(x,b)}else d(g);else throw new TypeError("Expected usable value, not `"+g+"`")}function d(g){if(!("plugins"in g)&&!("settings"in g))throw new Error("Expected usable value but received an empty preset, which is probably a mistake: presets typically come with `plugins` and sometimes with `settings`, but this has neither");p(g.plugins),g.settings&&(o.settings=uh(!0,o.settings,g.settings))}function p(g){let x=-1;if(g!=null)if(Array.isArray(g))for(;++x<g.length;){const b=g[x];u(b)}else throw new TypeError("Expected a list of plugins, not `"+g+"`")}function m(g,x){let b=-1,v=-1;for(;++b<s.length;)if(s[b][0]===g){v=b;break}if(v===-1)s.push([g,...x]);else if(x.length>0){let[y,...k]=x;const N=s[v][1];cm(N)&&cm(y)&&(y=uh(!0,N,y)),s[v]=[g,y,...k]}}}}const oD=new tg().freeze();function hh(e,i){if(typeof i!="function")throw new TypeError("Cannot `"+e+"` without `parser`")}function mh(e,i){if(typeof i!="function")throw new TypeError("Cannot `"+e+"` without `compiler`")}function gh(e,i){if(i)throw new Error("Cannot call `"+e+"` on a frozen processor.\nCreate a new processor first, by calling it: use `processor()` instead of `processor`.")}function A0(e){if(!cm(e)||typeof e.type!="string")throw new TypeError("Expected node, got `"+e+"`")}function O0(e,i,a){if(!a)throw new Error("`"+e+"` finished async. Use `"+i+"` instead")}function uu(e){return cD(e)?e:new wk(e)}function cD(e){return!!(e&&typeof e=="object"&&"message"in e&&"messages"in e)}function uD(e){return typeof e=="string"||dD(e)}function dD(e){return!!(e&&typeof e=="object"&&"byteLength"in e&&"byteOffset"in e)}const fD="https://github.com/remarkjs/react-markdown/blob/main/changelog.md",M0=[],j0={allowDangerousHtml:!0},pD=/^(https?|ircs?|mailto|xmpp)$/i,hD=[{from:"astPlugins",id:"remove-buggy-html-in-markdown-parser"},{from:"allowDangerousHtml",id:"remove-buggy-html-in-markdown-parser"},{from:"allowNode",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"allowElement"},{from:"allowedTypes",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"allowedElements"},{from:"className",id:"remove-classname"},{from:"disallowedTypes",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"disallowedElements"},{from:"escapeHtml",id:"remove-buggy-html-in-markdown-parser"},{from:"includeElementIndex",id:"#remove-includeelementindex"},{from:"includeNodeIndex",id:"change-includenodeindex-to-includeelementindex"},{from:"linkTarget",id:"remove-linktarget"},{from:"plugins",id:"change-plugins-to-remarkplugins",to:"remarkPlugins"},{from:"rawSourcePos",id:"#remove-rawsourcepos"},{from:"renderers",id:"change-renderers-to-components",to:"components"},{from:"source",id:"change-source-to-children",to:"children"},{from:"sourcePos",id:"#remove-sourcepos"},{from:"transformImageUri",id:"#add-urltransform",to:"urlTransform"},{from:"transformLinkUri",id:"#add-urltransform",to:"urlTransform"}];function mD(e){const i=gD(e),a=bD(e);return xD(i.runSync(i.parse(a),a),e)}function gD(e){const i=e.rehypePlugins||M0,a=e.remarkPlugins||M0,s=e.remarkRehypeOptions?{...e.remarkRehypeOptions,...j0}:j0;return oD().use(VR).use(a).use(q5,s).use(i)}function bD(e){const i=e.children||"",a=new wk;return typeof i=="string"&&(a.value=i),a}function xD(e,i){const a=i.allowedElements,s=i.allowElement,o=i.components,u=i.disallowedElements,d=i.skipHtml,p=i.unwrapDisallowed,m=i.urlTransform||yD;for(const x of hD)Object.hasOwn(i,x.from)&&(""+x.from+(x.to?"use `"+x.to+"` instead":"remove it")+fD+x.id,void 0);return fd(e,g),RM(e,{Fragment:c.Fragment,components:o,ignoreInvalidStyle:!0,jsx:c.jsx,jsxs:c.jsxs,passKeys:!0,passNode:!0});function g(x,b,v){if(x.type==="raw"&&v&&typeof b=="number")return d?v.children.splice(b,1):v.children[b]={type:"text",value:x.value},b;if(x.type==="element"){let y;for(y in sh)if(Object.hasOwn(sh,y)&&Object.hasOwn(x.properties,y)){const k=x.properties[y],N=sh[y];(N===null||N.includes(x.tagName))&&(x.properties[y]=m(String(k||""),y,x))}}if(x.type==="element"){let y=a?!a.includes(x.tagName):u?u.includes(x.tagName):!1;if(!y&&s&&typeof b=="number"&&(y=!s(x,b,v)),y&&v&&typeof b=="number")return p&&x.children?v.children.splice(b,1,...x.children):v.children.splice(b,1),b}}}function yD(e){const i=e.indexOf(":"),a=e.indexOf("?"),s=e.indexOf("#"),o=e.indexOf("/");return i===-1||o!==-1&&i>o||a!==-1&&i>a||s!==-1&&i>s||pD.test(e.slice(0,i))?e:""}function R0(e,i){const a=String(e);if(typeof i!="string")throw new TypeError("Expected character");let s=0,o=a.indexOf(i);for(;o!==-1;)s++,o=a.indexOf(i,o+i.length);return s}function vD(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}function wD(e,i,a){const o=jo((a||{}).ignore||[]),u=kD(i);let d=-1;for(;++d<u.length;)vk(e,"text",p);function p(g,x){let b=-1,v;for(;++b<x.length;){const y=x[b],k=v?v.children:void 0;if(o(y,k?k.indexOf(y):void 0,v))return;v=y}if(v)return m(g,x)}function m(g,x){const b=x[x.length-1],v=u[d][0],y=u[d][1];let k=0;const _=b.children.indexOf(g);let S=!1,C=[];v.lastIndex=0;let M=v.exec(g.value);for(;M;){const F=M.index,R={index:M.index,input:M.input,stack:[...x,g]};let A=y(...M,R);if(typeof A=="string"&&(A=A.length>0?{type:"text",value:A}:void 0),A===!1)v.lastIndex=F+1;else{if(k!==F&&I({type:"text",value:g.value.slice(k,F)}),Array.isArray(A))for(const L of A)I(L);else A&&I(A);k=F+M[0].length,S=!0}if(!v.global)break;M=v.exec(g.value)}return S?(k<g.value.length&&I({type:"text",value:g.value.slice(k)}),b.children.splice(_,1,...C)):C=[g],_+C.length;function I(F){const R=C[C.length-1];R&&R.type==="text"&&F.type==="text"?R.value+=F.value:C.push(F)}}}function kD(e){if(!Array.isArray(e))throw new TypeError("Expected find and replace tuple or list of tuples");const i=[],a=!e[0]||Array.isArray(e[0])?e:[e];let s=-1;for(;++s<a.length;){const o=a[s];i.push([ED(o[0]),_D(o[1])])}return i}function ED(e){return typeof e=="string"?new RegExp(vD(e),"g"):e}function _D(e){return typeof e=="function"?e:function(){return e}}const bh="phrasing",xh=["autolink","link","image","label"];function ND(){return{transforms:[jD],enter:{literalAutolink:TD,literalAutolinkEmail:yh,literalAutolinkHttp:yh,literalAutolinkWww:yh},exit:{literalAutolink:MD,literalAutolinkEmail:OD,literalAutolinkHttp:CD,literalAutolinkWww:AD}}}function SD(){return{unsafe:[{character:"@",before:"[+\\-.\\w]",after:"[\\-.\\w]",inConstruct:bh,notInConstruct:xh},{character:".",before:"[Ww]",after:"[\\-.\\w]",inConstruct:bh,notInConstruct:xh},{character:":",before:"[ps]",after:"\\/",inConstruct:bh,notInConstruct:xh}]}}function TD(e){this.enter({type:"link",title:null,url:"",children:[]},e)}function yh(e){this.config.enter.autolinkProtocol.call(this,e)}function CD(e){this.config.exit.autolinkProtocol.call(this,e)}function AD(e){this.config.exit.data.call(this,e);const i=this.stack[this.stack.length-1];i.type,i.url="http://"+this.sliceSerialize(e)}function OD(e){this.config.exit.autolinkEmail.call(this,e)}function MD(e){this.exit(e)}function jD(e){wD(e,[[/(https?:\/\/|www(?=\.))([-.\w]+)([^ \t\r\n]*)/gi,RD],[/(?<=^|\s|\p{P}|\p{S})([-.\w+]+)@([-\w]+(?:\.[-\w]+)+)/gu,DD]],{ignore:["link","linkReference"]})}function RD(e,i,a,s,o){let u="";if(!kk(o)||(/^w/i.test(i)&&(a=i+a,i="",u="http://"),!zD(a)))return!1;const d=LD(a+s);if(!d[0])return!1;const p={type:"link",title:null,url:u+i+d[0],children:[{type:"text",value:i+d[0]}]};return d[1]?[p,{type:"text",value:d[1]}]:p}function DD(e,i,a,s){return!kk(s,!0)||/[-\d_]$/.test(a)?!1:{type:"link",title:null,url:"mailto:"+i+"@"+a,children:[{type:"text",value:i+"@"+a}]}}function zD(e){const i=e.split(".");return!(i.length<2||i[i.length-1]&&(/_/.test(i[i.length-1])||!/[a-zA-Z\d]/.test(i[i.length-1]))||i[i.length-2]&&(/_/.test(i[i.length-2])||!/[a-zA-Z\d]/.test(i[i.length-2])))}function LD(e){const i=/[!"&'),.:;<>?\]}]+$/.exec(e);if(!i)return[e,void 0];e=e.slice(0,i.index);let a=i[0],s=a.indexOf(")");const o=R0(e,"(");let u=R0(e,")");for(;s!==-1&&o>u;)e+=a.slice(0,s+1),a=a.slice(s+1),s=a.indexOf(")"),u++;return[e,a]}function kk(e,i){const a=e.input.charCodeAt(e.index-1);return(e.index===0||Qr(a)||od(a))&&(!i||a!==47)}Ek.peek=GD;function ID(){this.buffer()}function UD(e){this.enter({type:"footnoteReference",identifier:"",label:""},e)}function BD(){this.buffer()}function $D(e){this.enter({type:"footnoteDefinition",identifier:"",label:"",children:[]},e)}function HD(e){const i=this.resume(),a=this.stack[this.stack.length-1];a.type,a.identifier=Di(this.sliceSerialize(e)).toLowerCase(),a.label=i}function PD(e){this.exit(e)}function FD(e){const i=this.resume(),a=this.stack[this.stack.length-1];a.type,a.identifier=Di(this.sliceSerialize(e)).toLowerCase(),a.label=i}function qD(e){this.exit(e)}function GD(){return"["}function Ek(e,i,a,s){const o=a.createTracker(s);let u=o.move("[^");const d=a.enter("footnoteReference"),p=a.enter("reference");return u+=o.move(a.safe(a.associationId(e),{after:"]",before:u})),p(),d(),u+=o.move("]"),u}function YD(){return{enter:{gfmFootnoteCallString:ID,gfmFootnoteCall:UD,gfmFootnoteDefinitionLabelString:BD,gfmFootnoteDefinition:$D},exit:{gfmFootnoteCallString:HD,gfmFootnoteCall:PD,gfmFootnoteDefinitionLabelString:FD,gfmFootnoteDefinition:qD}}}function KD(e){let i=!1;return e&&e.firstLineBlank&&(i=!0),{handlers:{footnoteDefinition:a,footnoteReference:Ek},unsafe:[{character:"[",inConstruct:["label","phrasing","reference"]}]};function a(s,o,u,d){const p=u.createTracker(d);let m=p.move("[^");const g=u.enter("footnoteDefinition"),x=u.enter("label");return m+=p.move(u.safe(u.associationId(s),{before:m,after:"]"})),x(),m+=p.move("]:"),s.children&&s.children.length>0&&(p.shift(4),m+=p.move((i?`
|
|
255
|
+
`:" ")+u.indentLines(u.containerFlow(s,p.current()),i?_k:VD))),g(),m}}function VD(e,i,a){return i===0?e:_k(e,i,a)}function _k(e,i,a){return(a?"":" ")+e}const XD=["autolink","destinationLiteral","destinationRaw","reference","titleQuote","titleApostrophe"];ng.attention=e3;ng.peek=t3;function ZD(){return{canContainEols:["delete"],enter:{strikethrough:JD},exit:{strikethrough:WD}}}function QD(){return{handlers:{delete:ng},unsafe:[{character:"~",inConstruct:"phrasing",notInConstruct:XD}]}}function JD(e){this.enter({type:"delete",children:[],position:void 0},e)}function WD(e){this.exit(e)}function ng(e,i,a,s){const o=a.createTracker(s),u=a.stack.includes("strikethrough")?"~":"~~",d=a.enter("strikethrough");let p=o.move(u);return p+=a.containerPhrasing(e,{...o.current(),before:p,after:"~"}),p+=o.move(u),d(),p}function e3(){return{construct:"strikethrough",markers:["~"],sizes:[2,1]}}function t3(){return"~"}function n3(e){return e.length}function i3(e,i){const a=i||{},s=(a.align||[]).concat(),o=a.stringLength||n3,u=[],d=[],p=[],m=[];let g=0,x=-1;for(;++x<e.length;){const N=[],_=[];let S=-1;for(e[x].length>g&&(g=e[x].length);++S<e[x].length;){const C=a3(e[x][S]);if(a.alignDelimiters!==!1){const M=o(C);_[S]=M,(m[S]===void 0||M>m[S])&&(m[S]=M)}N.push(C)}d[x]=N,p[x]=_}let b=-1;if(typeof s=="object"&&"length"in s)for(;++b<g;)u[b]=D0(s[b]);else{const N=D0(s);for(;++b<g;)u[b]=N}b=-1;const v=[],y=[];for(;++b<g;){const N=u[b];let _="",S="";N===99?(_=":",S=":"):N===108?_=":":N===114&&(S=":");let C=a.alignDelimiters===!1?1:Math.max(1,m[b]-_.length-S.length);const M=_+"-".repeat(C)+S;a.alignDelimiters!==!1&&(C=_.length+C+S.length,C>m[b]&&(m[b]=C),y[b]=C),v[b]=M}d.splice(1,0,v),p.splice(1,0,y),x=-1;const k=[];for(;++x<d.length;){const N=d[x],_=p[x];b=-1;const S=[];for(;++b<g;){const C=N[b]||"";let M="",I="";if(a.alignDelimiters!==!1){const F=m[b]-(_[b]||0),R=u[b];R===114?M=" ".repeat(F):R===99?F%2?(M=" ".repeat(F/2+.5),I=" ".repeat(F/2-.5)):(M=" ".repeat(F/2),I=M):I=" ".repeat(F)}a.delimiterStart!==!1&&!b&&S.push("|"),a.padding!==!1&&!(a.alignDelimiters===!1&&C==="")&&(a.delimiterStart!==!1||b)&&S.push(" "),a.alignDelimiters!==!1&&S.push(M),S.push(C),a.alignDelimiters!==!1&&S.push(I),a.padding!==!1&&S.push(" "),(a.delimiterEnd!==!1||b!==g-1)&&S.push("|")}k.push(a.delimiterEnd===!1?S.join("").replace(/ +$/,""):S.join(""))}return k.join(`
|
|
256
|
+
`)}function a3(e){return e==null?"":String(e)}function D0(e){const i=typeof e=="string"?e.codePointAt(0):0;return i===67||i===99?99:i===76||i===108?108:i===82||i===114?114:0}const r3=jo(["break","delete","emphasis","footnote","footnoteReference","image","imageReference","inlineCode","inlineMath","link","linkReference","mdxJsxTextElement","mdxTextExpression","strong","text","textDirective"]);function s3(e,i,a,s){const o=a.enter("blockquote"),u=a.createTracker(s);u.move("> "),u.shift(2);const d=a.indentLines(a.containerFlow(e,u.current()),l3);return o(),d}function l3(e,i,a){return">"+(a?"":" ")+e}function o3(e,i){return z0(e,i.inConstruct,!0)&&!z0(e,i.notInConstruct,!1)}function z0(e,i,a){if(typeof i=="string"&&(i=[i]),!i||i.length===0)return a;let s=-1;for(;++s<i.length;)if(e.includes(i[s]))return!0;return!1}function L0(e,i,a,s){let o=-1;for(;++o<a.unsafe.length;){const u=a.unsafe[o];if(u.character===`
|
|
257
|
+
`&&!u.before&&!u.after&&o3(a.stack,u))return/[\t ]/.test(s.before)?"":" "}return`\\
|
|
258
|
+
`}function c3(e,i){const a=String(e);let s=a.indexOf(i),o=s,u=0,d=0;if(typeof i!="string")throw new TypeError("Expected substring");for(;s!==-1;)s===o?++u>d&&(d=u):u=1,o=s+i.length,s=a.indexOf(i,o);return d}function u3(e,i){return!!(i.options.fences===!1&&e.value&&!e.lang&&/[^\n\r ]/.test(e.value)&&!/^[\t ]*(?:[\n\r]|$)|(?:^|[\n\r])[\t ]*$/.test(e.value))}function d3(e){const i=e.options.fence||"`";if(i!=="`"&&i!=="~")throw new Error("Cannot serialize code with `"+i+"` for `options.fence`, expected `` ` `` or `~`");return i}function f3(e,i,a,s){const o=d3(a),u=e.value||"";if(u3(e,a)){const b=a.enter("codeIndented"),v=a.indentLines(u,p3);return b(),v}const d=a.createTracker(s),p=o.repeat(Math.max(c3(u,o)+1,3)),m=a.enter("codeFenced"),g=o==="`"?"GraveAccent":"Tilde";let x=d.move(p);if(e.lang){const b=a.enter(`codeFencedLang${g}`);x+=d.move(a.safe(e.lang,{before:x,after:" ",encode:["`"],...d.current()})),b()}if(e.lang&&e.meta){const b=a.enter(`codeFencedMeta${g}`);x+=d.move(" "),x+=d.move(a.safe(e.meta,{before:x,after:`
|
|
259
|
+
`,encode:["`"],...d.current()})),b()}return x+=d.move(`
|
|
260
|
+
`),u&&(x+=d.move(u+`
|
|
261
|
+
`)),x+=d.move(p),m(),x}function p3(e,i,a){return(a?"":" ")+e}function ig(e){const i=e.options.quote||'"';if(i!=='"'&&i!=="'")throw new Error("Cannot serialize title with `"+i+"` for `options.quote`, expected `\"`, or `'`");return i}function h3(e,i,a,s){const o=ig(a),u=o==='"'?"Quote":"Apostrophe",d=a.enter("definition");let p=a.enter("label");const m=a.createTracker(s);let g=m.move("[");return g+=m.move(a.safe(a.associationId(e),{before:g,after:"]",...m.current()})),g+=m.move("]: "),p(),!e.url||/[\0- \u007F]/.test(e.url)?(p=a.enter("destinationLiteral"),g+=m.move("<"),g+=m.move(a.safe(e.url,{before:g,after:">",...m.current()})),g+=m.move(">")):(p=a.enter("destinationRaw"),g+=m.move(a.safe(e.url,{before:g,after:e.title?" ":`
|
|
262
|
+
`,...m.current()}))),p(),e.title&&(p=a.enter(`title${u}`),g+=m.move(" "+o),g+=m.move(a.safe(e.title,{before:g,after:o,...m.current()})),g+=m.move(o),p()),d(),g}function m3(e){const i=e.options.emphasis||"*";if(i!=="*"&&i!=="_")throw new Error("Cannot serialize emphasis with `"+i+"` for `options.emphasis`, expected `*`, or `_`");return i}ag.attention=g3;ag.peek=b3;function ag(e,i,a,s){const o=a.enter("phrasing"),u=a.containerPhrasing({type:"root",children:[e]},s);return o(),u}function g3(e,i){return{construct:"emphasis",markers:m3(i)==="*"?["*","_"]:["_","*"],sizes:[1]}}function b3(e,i,a){return a.options.emphasis||"*"}function x3(e){return"&#x"+e.toString(16).toUpperCase()+";"}function y3(e,i){let a=!1;return fd(e,function(s){if("value"in s&&/\r?\n|\r/.test(s.value)||s.type==="break")return a=!0,lm}),!!((!e.depth||e.depth<3)&&Vm(e)&&(i.options.setext||a))}function v3(e,i,a,s){const o=Math.max(Math.min(6,e.depth||1),1),u=a.createTracker(s);if(y3(e,a)){const b=a.enter("headingSetext"),v=a.enter("phrasing"),y=a.containerPhrasing(e,{...u.current(),before:`
|
|
263
|
+
`,after:`
|
|
264
|
+
`});return v(),b(),y+`
|
|
265
|
+
`+(o===1?"=":"-").repeat(y.length-(Math.max(y.lastIndexOf("\r"),y.lastIndexOf(`
|
|
266
|
+
`))+1))}const d="#".repeat(o),p=a.enter("headingAtx"),m=a.enter("phrasing");u.move(d+" ");let g=a.containerPhrasing(e,{before:"# ",after:`
|
|
267
|
+
`,...u.current()});const x=g.charCodeAt(0);return(x===9||x===32)&&(g=x3(x)+g.slice(1)),g=g?d+" "+g:d,a.options.closeAtx&&(g+=" "+d),m(),p(),g}Nk.peek=w3;function Nk(e){return e.value||""}function w3(){return"<"}Sk.peek=k3;function Sk(e,i,a,s){const o=ig(a),u=o==='"'?"Quote":"Apostrophe",d=a.enter("image");let p=a.enter("label");const m=a.createTracker(s);let g=m.move("![");return g+=m.move(a.safe(e.alt,{before:g,after:"]",...m.current()})),g+=m.move("]("),p(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(p=a.enter("destinationLiteral"),g+=m.move("<"),g+=m.move(a.safe(e.url,{before:g,after:">",...m.current()})),g+=m.move(">")):(p=a.enter("destinationRaw"),g+=m.move(a.safe(e.url,{before:g,after:e.title?" ":")",...m.current()}))),p(),e.title&&(p=a.enter(`title${u}`),g+=m.move(" "+o),g+=m.move(a.safe(e.title,{before:g,after:o,...m.current()})),g+=m.move(o),p()),g+=m.move(")"),d(),g}function k3(){return"!"}Tk.peek=E3;function Tk(e,i,a,s){const o=e.referenceType,u=a.enter("imageReference");let d=a.enter("label");const p=a.createTracker(s);let m=p.move("![");const g=a.safe(e.alt,{before:m,after:"]",...p.current()});m+=p.move(g+"]["),d();const x=a.stack;a.stack=x.filter(function(v){return v!=="phrasing"}),d=a.enter("reference");const b=a.safe(a.associationId(e),{before:m,after:"]",...p.current()});return d(),a.stack=x,u(),o==="full"||!g||g!==b?m+=p.move(b+"]"):o==="shortcut"?m=m.slice(0,-1):m+=p.move("]"),m}function E3(){return"!"}Ck.peek=_3;function Ck(e,i,a){let s=e.value||"",o="`",u=-1;for(;new RegExp("(^|[^`])"+o+"([^`]|$)").test(s);)o+="`";for(/[^\n\r ]/.test(s)&&(/^[\n\r ]/.test(s)&&/[\n\r ]$/.test(s)||/^`|`$/.test(s))&&(s=" "+s+" ");++u<a.unsafe.length;){const d=a.unsafe[u],p=a.compilePattern(d);if(!d.atBreak)continue;let m;for(;m=p.exec(s);){let g=m.index;s.charCodeAt(g)===10&&s.charCodeAt(g-1)===13&&g--,s=s.slice(0,g)+" "+s.slice(m.index+1)}}return o+s+o}function _3(){return"`"}function Ak(e,i){const a=Vm(e);return!!(!i.options.resourceLink&&e.url&&!e.title&&e.children&&e.children.length===1&&e.children[0].type==="text"&&(a===e.url||"mailto:"+a===e.url)&&/^[a-z][+\-.a-z]+:/i.test(e.url)&&!/[\0- <>\u007F]/.test(e.url))}Ok.peek=N3;function Ok(e,i,a,s){const o=ig(a),u=o==='"'?"Quote":"Apostrophe",d=a.createTracker(s);if(Ak(e,a)){const x=a.stack;a.stack=x.filter(function(y){return y!=="phrasing"});const b=a.enter("autolink");let v=d.move("<");return v+=d.move(a.containerPhrasing(e,{before:v,after:">",...d.current()})),v+=d.move(">"),b(),a.stack=x,v}const p=a.enter("link");let m=a.enter("label"),g=d.move("[");return g+=d.move(a.containerPhrasing(e,{before:g,after:"](",...d.current()})),g+=d.move("]("),m(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(m=a.enter("destinationLiteral"),g+=d.move("<"),g+=d.move(a.safe(e.url,{before:g,after:">",...d.current()})),g+=d.move(">")):(m=a.enter("destinationRaw"),g+=d.move(a.safe(e.url,{before:g,after:e.title?" ":")",...d.current()}))),m(),e.title&&(m=a.enter(`title${u}`),g+=d.move(" "+o),g+=d.move(a.safe(e.title,{before:g,after:o,...d.current()})),g+=d.move(o),m()),g+=d.move(")"),p(),g}function N3(e,i,a){return Ak(e,a)?"<":"["}Mk.peek=S3;function Mk(e,i,a,s){const o=e.referenceType,u=a.enter("linkReference");let d=a.enter("label");const p=a.createTracker(s);let m=p.move("[");const g=a.containerPhrasing(e,{before:m,after:"]",...p.current()});m+=p.move(g+"]["),d();const x=a.stack;a.stack=x.filter(function(v){return v!=="phrasing"}),d=a.enter("reference");const b=a.safe(a.associationId(e),{before:m,after:"]",...p.current()});return d(),a.stack=x,u(),o==="full"||!g||g!==b?m+=p.move(b+"]"):o==="shortcut"?m=m.slice(0,-1):m+=p.move("]"),m}function S3(){return"["}function rg(e){const i=e.options.bullet||"*";if(i!=="*"&&i!=="+"&&i!=="-")throw new Error("Cannot serialize items with `"+i+"` for `options.bullet`, expected `*`, `+`, or `-`");return i}function T3(e){const i=rg(e),a=e.options.bulletOther;if(!a)return i==="*"?"-":"*";if(a!=="*"&&a!=="+"&&a!=="-")throw new Error("Cannot serialize items with `"+a+"` for `options.bulletOther`, expected `*`, `+`, or `-`");if(a===i)throw new Error("Expected `bullet` (`"+i+"`) and `bulletOther` (`"+a+"`) to be different");return a}function C3(e){const i=e.options.bulletOrdered||".";if(i!=="."&&i!==")")throw new Error("Cannot serialize items with `"+i+"` for `options.bulletOrdered`, expected `.` or `)`");return i}function jk(e){const i=e.options.rule||"*";if(i!=="*"&&i!=="-"&&i!=="_")throw new Error("Cannot serialize rules with `"+i+"` for `options.rule`, expected `*`, `-`, or `_`");return i}function A3(e,i,a,s){const o=a.enter("list"),u=a.bulletCurrent;let d=e.ordered?C3(a):rg(a);const p=e.ordered?d==="."?")":".":T3(a);let m=i&&a.bulletLastUsed?d===a.bulletLastUsed:!1;if(!e.ordered){const x=e.children?e.children[0]:void 0;if((d==="*"||d==="-")&&x&&(!x.children||!x.children[0])&&a.stack[a.stack.length-1]==="list"&&a.stack[a.stack.length-2]==="listItem"&&a.stack[a.stack.length-3]==="list"&&a.stack[a.stack.length-4]==="listItem"&&a.indexStack[a.indexStack.length-1]===0&&a.indexStack[a.indexStack.length-2]===0&&a.indexStack[a.indexStack.length-3]===0&&(m=!0),jk(a)===d&&x){let b=-1;for(;++b<e.children.length;){const v=e.children[b];if(v&&v.type==="listItem"&&v.children&&v.children[0]&&v.children[0].type==="thematicBreak"){m=!0;break}}}}m&&(d=p),a.bulletCurrent=d;const g=a.containerFlow(e,s);return a.bulletLastUsed=d,a.bulletCurrent=u,o(),g}function O3(e){const i=e.options.listItemIndent||"one";if(i!=="tab"&&i!=="one"&&i!=="mixed")throw new Error("Cannot serialize items with `"+i+"` for `options.listItemIndent`, expected `tab`, `one`, or `mixed`");return i}function M3(e,i,a,s){const o=O3(a);let u=a.bulletCurrent||rg(a);i&&i.type==="list"&&i.ordered&&(u=(typeof i.start=="number"&&i.start>-1?i.start:1)+(a.options.incrementListMarker===!1?0:i.children.indexOf(e))+u);let d=u.length+1;(o==="tab"||o==="mixed"&&(i&&i.type==="list"&&i.spread||e.spread))&&(d=Math.ceil(d/4)*4);const p=a.createTracker(s);p.move(u+" ".repeat(d-u.length)),p.shift(d);const m=a.enter("listItem"),g=a.indentLines(a.containerFlow(e,p.current()),x);return m(),g;function x(b,v,y){return v?(y?"":" ".repeat(d))+b:(y?u:u+" ".repeat(d-u.length))+b}}function j3(e,i,a,s){const o=a.enter("paragraph"),u=a.enter("phrasing"),d=a.containerPhrasing(e,s);return u(),o(),d}function R3(e,i,a,s){if(!e.children.some(function(p){return r3(p)}))return a.containerFlow(e,s);const u=a.enter("phrasing"),d=a.containerPhrasing(e,s);return u(),d}function D3(e){const i=e.options.strong||"*";if(i!=="*"&&i!=="_")throw new Error("Cannot serialize strong with `"+i+"` for `options.strong`, expected `*`, or `_`");return i}sg.attention=z3;sg.peek=L3;function sg(e,i,a,s){const o=a.enter("phrasing"),u=a.containerPhrasing({type:"root",children:[e]},s);return o(),u}function z3(e,i){return{construct:"strong",markers:D3(i)==="*"?["*","_"]:["_","*"],sizes:[2]}}function L3(e,i,a){return a.options.strong||"*"}function I3(e,i,a,s){const o=i?i.children:[],u=o.indexOf(e);return a.safe(e.value,{...s,afterNode:o[u+1],beforeNode:o[u-1]})}function U3(e){const i=e.options.ruleRepetition||3;if(i<3)throw new Error("Cannot serialize rules with repetition `"+i+"` for `options.ruleRepetition`, expected `3` or more");return i}function B3(e,i,a){const s=(jk(a)+(a.options.ruleSpaces?" ":"")).repeat(U3(a));return a.options.ruleSpaces?s.slice(0,-1):s}const Rk={blockquote:s3,break:L0,code:f3,definition:h3,emphasis:ag,hardBreak:L0,heading:v3,html:Nk,image:Sk,imageReference:Tk,inlineCode:Ck,link:Ok,linkReference:Mk,list:A3,listItem:M3,paragraph:j3,root:R3,strong:sg,text:I3,thematicBreak:B3};function $3(){return{enter:{table:H3,tableData:I0,tableHeader:I0,tableRow:F3},exit:{codeText:q3,table:P3,tableData:vh,tableHeader:vh,tableRow:vh}}}function H3(e){const i=e._align;this.enter({type:"table",align:i.map(function(a){return a==="none"?null:a}),children:[]},e),this.data.inTable=!0}function P3(e){this.exit(e),this.data.inTable=void 0}function F3(e){this.enter({type:"tableRow",children:[]},e)}function vh(e){this.exit(e)}function I0(e){this.enter({type:"tableCell",children:[]},e)}function q3(e){let i=this.resume();this.data.inTable&&(i=i.replace(/\\([\\|])/g,G3));const a=this.stack[this.stack.length-1];a.type,a.value=i,this.exit(e)}function G3(e,i){return i==="|"?i:e}function Y3(e){const i=e||{},a=i.tableCellPadding,s=i.tablePipeAlign,o=i.stringLength,u=a?" ":"|";return{unsafe:[{character:"\r",inConstruct:"tableCell"},{character:`
|
|
268
|
+
`,inConstruct:"tableCell"},{atBreak:!0,character:"|",after:"[ :-]"},{character:"|",inConstruct:"tableCell"},{atBreak:!0,character:":",after:"-"},{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{inlineCode:v,table:d,tableCell:m,tableRow:p}};function d(y,k,N,_){return g(x(y,N,_),y.align)}function p(y,k,N,_){const S=b(y,N,_),C=g([S]);return C.slice(0,C.indexOf(`
|
|
269
|
+
`))}function m(y,k,N,_){const S=N.enter("tableCell"),C=N.enter("phrasing"),M=N.containerPhrasing(y,{..._,before:u,after:u});return C(),S(),M}function g(y,k){return i3(y,{align:k,alignDelimiters:s,padding:a,stringLength:o})}function x(y,k,N){const _=y.children;let S=-1;const C=[],M=k.enter("table");for(;++S<_.length;)C[S]=b(_[S],k,N);return M(),C}function b(y,k,N){const _=y.children;let S=-1;const C=[],M=k.enter("tableRow");for(;++S<_.length;)C[S]=m(_[S],y,k,N);return M(),C}function v(y,k,N){let _=Rk.inlineCode(y,k,N);return N.stack.includes("tableCell")&&(_=_.replace(/\|/g,"\\$&")),_}}function K3(){return{exit:{taskListCheckValueChecked:U0,taskListCheckValueUnchecked:U0,paragraph:X3}}}function V3(){return{unsafe:[{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{listItem:Z3}}}function U0(e){const i=this.stack[this.stack.length-2];i.type,i.checked=e.type==="taskListCheckValueChecked"}function X3(e){const i=this.stack[this.stack.length-2];if(i&&i.type==="listItem"&&typeof i.checked=="boolean"){const a=this.stack[this.stack.length-1];a.type;const s=a.children[0];if(s&&s.type==="text"){const o=i.children;let u=-1,d;for(;++u<o.length;){const p=o[u];if(p.type==="paragraph"){d=p;break}}d===a&&(s.value=s.value.slice(1),s.value.length===0?a.children.shift():a.position&&s.position&&typeof s.position.start.offset=="number"&&(s.position.start.column++,s.position.start.offset++,a.position.start=Object.assign({},s.position.start)))}}this.exit(e)}function Z3(e,i,a,s){const o=e.children[0],u=typeof e.checked=="boolean"&&o&&o.type==="paragraph",d="["+(e.checked?"x":" ")+"] ",p=a.createTracker(s);u&&p.move(d);let m=Rk.listItem(e,i,a,{...s,...p.current()});return u&&(m=m.replace(/^(?:[*+-]|\d+\.)([\r\n]| {1,3})/,g)),m;function g(x){return x+d}}function Q3(){return[ND(),YD(),ZD(),$3(),K3()]}function J3(e){return{extensions:[SD(),KD(e),QD(),Y3(e),V3()]}}const W3={tokenize:r4,partial:!0},Dk={tokenize:s4,partial:!0},zk={tokenize:l4,partial:!0},Lk={tokenize:o4,partial:!0},e4={tokenize:c4,partial:!0},Ik={name:"wwwAutolink",tokenize:i4,previous:Bk},Uk={name:"protocolAutolink",tokenize:a4,previous:$k},Aa={name:"emailAutolink",tokenize:n4,previous:Hk},ta={};function t4(){return{text:ta}}let $r=48;for(;$r<123;)ta[$r]=Aa,$r++,$r===58?$r=65:$r===91&&($r=97);ta[43]=Aa;ta[45]=Aa;ta[46]=Aa;ta[95]=Aa;ta[72]=[Aa,Uk];ta[104]=[Aa,Uk];ta[87]=[Aa,Ik];ta[119]=[Aa,Ik];function n4(e,i,a){const s=this;let o,u;return d;function d(b){return!dm(b)||!Hk.call(s,s.previous)||lg(s.events)?a(b):(e.enter("literalAutolink"),e.enter("literalAutolinkEmail"),p(b))}function p(b){return dm(b)?(e.consume(b),p):b===64?(e.consume(b),m):a(b)}function m(b){return b===46?e.check(e4,x,g)(b):b===45||b===95||An(b)?(u=!0,e.consume(b),m):x(b)}function g(b){return e.consume(b),o=!0,m}function x(b){return u&&o&&Bn(s.previous)?(e.exit("literalAutolinkEmail"),e.exit("literalAutolink"),i(b)):a(b)}}function i4(e,i,a){const s=this;return o;function o(d){return d!==87&&d!==119||!Bk.call(s,s.previous)||lg(s.events)?a(d):(e.enter("literalAutolink"),e.enter("literalAutolinkWww"),e.check(W3,e.attempt(Dk,e.attempt(zk,u),a),a)(d))}function u(d){return e.exit("literalAutolinkWww"),e.exit("literalAutolink"),i(d)}}function a4(e,i,a){const s=this;let o="",u=!1;return d;function d(b){return(b===72||b===104)&&$k.call(s,s.previous)&&!lg(s.events)?(e.enter("literalAutolink"),e.enter("literalAutolinkHttp"),o+=String.fromCodePoint(b),e.consume(b),p):a(b)}function p(b){if(Bn(b)&&o.length<5)return o+=String.fromCodePoint(b),e.consume(b),p;if(b===58){const v=o.toLowerCase();if(v==="http"||v==="https")return e.consume(b),m}return a(b)}function m(b){return b===47?(e.consume(b),u?g:(u=!0,m)):a(b)}function g(b){return b===null||Du(b)||Rt(b)||Qr(b)||od(b)?a(b):e.attempt(Dk,e.attempt(zk,x),a)(b)}function x(b){return e.exit("literalAutolinkHttp"),e.exit("literalAutolink"),i(b)}}function r4(e,i,a){let s=0;return o;function o(d){return(d===87||d===119)&&s<3?(s++,e.consume(d),o):d===46&&s===3?(e.consume(d),u):a(d)}function u(d){return d===null?a(d):i(d)}}function s4(e,i,a){let s,o,u;return d;function d(g){return g===46||g===95?e.check(Lk,m,p)(g):g===null||Rt(g)||Qr(g)||g!==45&&od(g)?m(g):(u=!0,e.consume(g),d)}function p(g){return g===95?s=!0:(o=s,s=void 0),e.consume(g),d}function m(g){return o||s||!u?a(g):i(g)}}function l4(e,i){let a=0,s=0;return o;function o(d){return d===40?(a++,e.consume(d),o):d===41&&s<a?u(d):d===33||d===34||d===38||d===39||d===41||d===42||d===44||d===46||d===58||d===59||d===60||d===63||d===93||d===95||d===126?e.check(Lk,i,u)(d):d===null||Rt(d)||Qr(d)?i(d):(e.consume(d),o)}function u(d){return d===41&&s++,e.consume(d),o}}function o4(e,i,a){return s;function s(p){return p===33||p===34||p===39||p===41||p===42||p===44||p===46||p===58||p===59||p===63||p===95||p===126?(e.consume(p),s):p===38?(e.consume(p),u):p===93?(e.consume(p),o):p===60||p===null||Rt(p)||Qr(p)?i(p):a(p)}function o(p){return p===null||p===40||p===91||Rt(p)||Qr(p)?i(p):s(p)}function u(p){return Bn(p)?d(p):a(p)}function d(p){return p===59?(e.consume(p),s):Bn(p)?(e.consume(p),d):a(p)}}function c4(e,i,a){return s;function s(u){return e.consume(u),o}function o(u){return An(u)?a(u):i(u)}}function Bk(e){return e===null||e===40||e===42||e===95||e===91||e===93||e===126||Rt(e)}function $k(e){return!Bn(e)}function Hk(e){return!(e===47||dm(e))}function dm(e){return e===43||e===45||e===46||e===95||An(e)}function lg(e){let i=e.length,a=!1;for(;i--;){const s=e[i][1];if((s.type==="labelLink"||s.type==="labelImage")&&!s._balanced){a=!0;break}if(s._gfmAutolinkLiteralWalkedInto){a=!1;break}}return e.length>0&&!a&&(e[e.length-1][1]._gfmAutolinkLiteralWalkedInto=!0),a}const u4={tokenize:x4,partial:!0};function d4(){return{document:{91:{name:"gfmFootnoteDefinition",tokenize:m4,continuation:{tokenize:g4},exit:b4}},text:{91:{name:"gfmFootnoteCall",tokenize:h4},93:{name:"gfmPotentialFootnoteCall",add:"after",tokenize:f4,resolveTo:p4}}}}function f4(e,i,a){const s=this;let o=s.events.length;const u=s.parser.gfmFootnotes||(s.parser.gfmFootnotes=[]);let d;for(;o--;){const m=s.events[o][1];if(m.type==="labelImage"){d=m;break}if(m.type==="gfmFootnoteCall"||m.type==="labelLink"||m.type==="label"||m.type==="image"||m.type==="link")break}return p;function p(m){if(!d||!d._balanced)return a(m);const g=Di(s.sliceSerialize({start:d.end,end:s.now()}));return g.codePointAt(0)!==94||!u.includes(g.slice(1))?a(m):(e.enter("gfmFootnoteCallLabelMarker"),e.consume(m),e.exit("gfmFootnoteCallLabelMarker"),i(m))}}function p4(e,i){let a=e.length;for(;a--;)if(e[a][1].type==="labelImage"&&e[a][0]==="enter"){e[a][1];break}e[a+1][1].type="data",e[a+3][1].type="gfmFootnoteCallLabelMarker";const s={type:"gfmFootnoteCall",start:Object.assign({},e[a+3][1].start),end:Object.assign({},e[e.length-1][1].end)},o={type:"gfmFootnoteCallMarker",start:Object.assign({},e[a+3][1].end),end:Object.assign({},e[a+3][1].end)};o.end.column++,o.end.offset++,o.end._bufferIndex++;const u={type:"gfmFootnoteCallString",start:Object.assign({},o.end),end:Object.assign({},e[e.length-1][1].start)},d={type:"chunkString",contentType:"string",start:Object.assign({},u.start),end:Object.assign({},u.end)},p=[e[a+1],e[a+2],["enter",s,i],e[a+3],e[a+4],["enter",o,i],["exit",o,i],["enter",u,i],["enter",d,i],["exit",d,i],["exit",u,i],e[e.length-2],e[e.length-1],["exit",s,i]];return e.splice(a,e.length-a+1,...p),e}function h4(e,i,a){const s=this,o=s.parser.gfmFootnotes||(s.parser.gfmFootnotes=[]);let u=0,d;return p;function p(b){return e.enter("gfmFootnoteCall"),e.enter("gfmFootnoteCallLabelMarker"),e.consume(b),e.exit("gfmFootnoteCallLabelMarker"),m}function m(b){return b!==94?a(b):(e.enter("gfmFootnoteCallMarker"),e.consume(b),e.exit("gfmFootnoteCallMarker"),e.enter("gfmFootnoteCallString"),e.enter("chunkString").contentType="string",g)}function g(b){if(u>999||b===93&&!d||b===null||b===91||Rt(b))return a(b);if(b===93){e.exit("chunkString");const v=e.exit("gfmFootnoteCallString");return o.includes(Di(s.sliceSerialize(v)))?(e.enter("gfmFootnoteCallLabelMarker"),e.consume(b),e.exit("gfmFootnoteCallLabelMarker"),e.exit("gfmFootnoteCall"),i):a(b)}return Rt(b)||(d=!0),u++,e.consume(b),b===92?x:g}function x(b){return b===91||b===92||b===93?(e.consume(b),u++,g):g(b)}}function m4(e,i,a){const s=this,o=s.parser.gfmFootnotes||(s.parser.gfmFootnotes=[]);let u,d=0,p;return m;function m(k){return e.enter("gfmFootnoteDefinition")._container=!0,e.enter("gfmFootnoteDefinitionLabel"),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(k),e.exit("gfmFootnoteDefinitionLabelMarker"),g}function g(k){return k===94?(e.enter("gfmFootnoteDefinitionMarker"),e.consume(k),e.exit("gfmFootnoteDefinitionMarker"),e.enter("gfmFootnoteDefinitionLabelString"),e.enter("chunkString").contentType="string",x):a(k)}function x(k){if(d>999||k===93&&!p||k===null||k===91||Rt(k))return a(k);if(k===93){e.exit("chunkString");const N=e.exit("gfmFootnoteDefinitionLabelString");return u=Di(s.sliceSerialize(N)),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(k),e.exit("gfmFootnoteDefinitionLabelMarker"),e.exit("gfmFootnoteDefinitionLabel"),v}return Rt(k)||(p=!0),d++,e.consume(k),k===92?b:x}function b(k){return k===91||k===92||k===93?(e.consume(k),d++,x):x(k)}function v(k){return k===58?(e.enter("definitionMarker"),e.consume(k),e.exit("definitionMarker"),o.includes(u)||o.push(u),ht(e,y,"gfmFootnoteDefinitionWhitespace")):a(k)}function y(k){return i(k)}}function g4(e,i,a){return e.check(Mo,i,e.attempt(u4,i,a))}function b4(e){e.exit("gfmFootnoteDefinition")}function x4(e,i,a){const s=this;return ht(e,o,"gfmFootnoteDefinitionIndent",5);function o(u){const d=s.events[s.events.length-1];return d&&d[1].type==="gfmFootnoteDefinitionIndent"&&d[2].sliceSerialize(d[1],!0).length===4?i(u):a(u)}}function y4(e){let a=(e||{}).singleTilde;const s={name:"strikethrough",tokenize:u,resolveAll:o};return a==null&&(a=!0),{text:{126:s},insideSpan:{null:[s]},attentionMarkers:{null:[126]}};function o(d,p){let m=-1;for(;++m<d.length;)if(d[m][0]==="enter"&&d[m][1].type==="strikethroughSequenceTemporary"&&d[m][1]._close){let g=m;for(;g--;)if(d[g][0]==="exit"&&d[g][1].type==="strikethroughSequenceTemporary"&&d[g][1]._open&&d[m][1].end.offset-d[m][1].start.offset===d[g][1].end.offset-d[g][1].start.offset){d[m][1].type="strikethroughSequence",d[g][1].type="strikethroughSequence";const x={type:"strikethrough",start:Object.assign({},d[g][1].start),end:Object.assign({},d[m][1].end)},b={type:"strikethroughText",start:Object.assign({},d[g][1].end),end:Object.assign({},d[m][1].start)},v=[["enter",x,p],["enter",d[g][1],p],["exit",d[g][1],p],["enter",b,p]],y=p.parser.constructs.insideSpan.null;y&&Ri(v,v.length,0,cd(y,d.slice(g+1,m),p)),Ri(v,v.length,0,[["exit",b,p],["enter",d[m][1],p],["exit",d[m][1],p],["exit",x,p]]),Ri(d,g-1,m-g+3,v),m=g+v.length-2;break}}for(m=-1;++m<d.length;)d[m][1].type==="strikethroughSequenceTemporary"&&(d[m][1].type="data");return d}function u(d,p,m){const g=this.previous,x=this.events;let b=0;return v;function v(k){return g===126&&x[x.length-1][1].type!=="characterEscape"?m(k):(d.enter("strikethroughSequenceTemporary"),y(k))}function y(k){const N=Lu(g);if(k===126)return b>1?m(k):(d.consume(k),b++,y);if(b<2&&!a)return m(k);const _=d.exit("strikethroughSequenceTemporary"),S=Lu(k);return _._open=!S||S===2&&!!N,_._close=!N||N===2&&!!S,p(k)}}}class v4{constructor(){this.map=[],this.index=new Map}add(i,a,s){w4(this,i,a,s)}consume(i){if(this.map.sort(function(u,d){return u[0]-d[0]}),this.map.length===0)return;let a=this.map.length;const s=[];for(;a>0;)a-=1,s.push(i.slice(this.map[a][0]+this.map[a][1]),this.map[a][2]),i.length=this.map[a][0];s.push(i.slice()),i.length=0;let o=s.pop();for(;o;){for(const u of o)i.push(u);o=s.pop()}this.map.length=0,this.index.clear()}}function w4(e,i,a,s){if(a===0&&s.length===0)return;const o=e.index.get(i);if(o){o[1]+=a,o[2].push(...s);return}const u=[i,a,s];e.map.push(u),e.index.set(i,u)}function k4(e,i){let a=!1;const s=[];for(;i<e.length;){const o=e[i];if(a){if(o[0]==="enter")o[1].type==="tableContent"&&s.push(e[i+1][1].type==="tableDelimiterMarker"?"left":"none");else if(o[1].type==="tableContent"){if(e[i-1][1].type==="tableDelimiterMarker"){const u=s.length-1;s[u]=s[u]==="left"?"center":"right"}}else if(o[1].type==="tableDelimiterRow")break}else o[0]==="enter"&&o[1].type==="tableDelimiterRow"&&(a=!0);i+=1}return s}function E4(){return{flow:{null:{name:"table",tokenize:_4,resolveAll:N4}}}}function _4(e,i,a){const s=this;let o=0,u=0,d;return p;function p(D){let U=s.events.length-1;for(;U>-1;){const{type:re}=s.events[U][1];if(re==="lineEnding"||re==="linePrefix")U--;else break}const ee=U>-1?s.events[U][1].type:null,ue=ee==="tableHead"||ee==="tableRow"?R:m;return ue===R&&s.parser.lazy[s.now().line]?a(D):ue(D)}function m(D){return e.enter("tableHead"),e.enter("tableRow"),g(D)}function g(D){return D===124||(d=!0,u+=1),x(D)}function x(D){return D===null?a(D):$e(D)?u>1?(u=0,s.interrupt=!0,e.exit("tableRow"),e.enter("lineEnding"),e.consume(D),e.exit("lineEnding"),y):a(D):nt(D)?ht(e,x,"whitespace")(D):(u+=1,d&&(d=!1,o+=1),D===124?(e.enter("tableCellDivider"),e.consume(D),e.exit("tableCellDivider"),d=!0,x):(e.enter("data"),b(D)))}function b(D){return D===null||D===124||Rt(D)?(e.exit("data"),x(D)):(e.consume(D),D===92?v:b)}function v(D){return D===92||D===124?(e.consume(D),b):b(D)}function y(D){return s.interrupt=!1,s.parser.lazy[s.now().line]?a(D):(e.enter("tableDelimiterRow"),d=!1,nt(D)?ht(e,k,"linePrefix",s.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(D):k(D))}function k(D){return D===45||D===58?_(D):D===124?(d=!0,e.enter("tableCellDivider"),e.consume(D),e.exit("tableCellDivider"),N):F(D)}function N(D){return nt(D)?ht(e,_,"whitespace")(D):_(D)}function _(D){return D===58?(u+=1,d=!0,e.enter("tableDelimiterMarker"),e.consume(D),e.exit("tableDelimiterMarker"),S):D===45?(u+=1,S(D)):D===null||$e(D)?I(D):F(D)}function S(D){return D===45?(e.enter("tableDelimiterFiller"),C(D)):F(D)}function C(D){return D===45?(e.consume(D),C):D===58?(d=!0,e.exit("tableDelimiterFiller"),e.enter("tableDelimiterMarker"),e.consume(D),e.exit("tableDelimiterMarker"),M):(e.exit("tableDelimiterFiller"),M(D))}function M(D){return nt(D)?ht(e,I,"whitespace")(D):I(D)}function I(D){return D===124?k(D):D===null||$e(D)?!d||o!==u?F(D):(e.exit("tableDelimiterRow"),e.exit("tableHead"),i(D)):F(D)}function F(D){return a(D)}function R(D){return e.enter("tableRow"),A(D)}function A(D){return D===124?(e.enter("tableCellDivider"),e.consume(D),e.exit("tableCellDivider"),A):D===null||$e(D)?(e.exit("tableRow"),i(D)):nt(D)?ht(e,A,"whitespace")(D):(e.enter("data"),L(D))}function L(D){return D===null||D===124||Rt(D)?(e.exit("data"),A(D)):(e.consume(D),D===92?V:L)}function V(D){return D===92||D===124?(e.consume(D),L):L(D)}}function N4(e,i){let a=-1,s=!0,o=0,u=[0,0,0,0],d=[0,0,0,0],p=!1,m=0,g,x,b;const v=new v4;for(;++a<e.length;){const y=e[a],k=y[1];y[0]==="enter"?k.type==="tableHead"?(p=!1,m!==0&&(B0(v,i,m,g,x),x=void 0,m=0),g={type:"table",start:Object.assign({},k.start),end:Object.assign({},k.end)},v.add(a,0,[["enter",g,i]])):k.type==="tableRow"||k.type==="tableDelimiterRow"?(s=!0,b=void 0,u=[0,0,0,0],d=[0,a+1,0,0],p&&(p=!1,x={type:"tableBody",start:Object.assign({},k.start),end:Object.assign({},k.end)},v.add(a,0,[["enter",x,i]])),o=k.type==="tableDelimiterRow"?2:x?3:1):o&&(k.type==="data"||k.type==="tableDelimiterMarker"||k.type==="tableDelimiterFiller")?(s=!1,d[2]===0&&(u[1]!==0&&(d[0]=d[1],b=du(v,i,u,o,void 0,b),u=[0,0,0,0]),d[2]=a)):k.type==="tableCellDivider"&&(s?s=!1:(u[1]!==0&&(d[0]=d[1],b=du(v,i,u,o,void 0,b)),u=d,d=[u[1],a,0,0])):k.type==="tableHead"?(p=!0,m=a):k.type==="tableRow"||k.type==="tableDelimiterRow"?(m=a,u[1]!==0?(d[0]=d[1],b=du(v,i,u,o,a,b)):d[1]!==0&&(b=du(v,i,d,o,a,b)),o=0):o&&(k.type==="data"||k.type==="tableDelimiterMarker"||k.type==="tableDelimiterFiller")&&(d[3]=a)}for(m!==0&&B0(v,i,m,g,x),v.consume(i.events),a=-1;++a<i.events.length;){const y=i.events[a];y[0]==="enter"&&y[1].type==="table"&&(y[1]._align=k4(i.events,a))}return e}function du(e,i,a,s,o,u){const d=s===1?"tableHeader":s===2?"tableDelimiter":"tableData",p="tableContent";a[0]!==0&&(u.end=Object.assign({},Qs(i.events,a[0])),e.add(a[0],0,[["exit",u,i]]));const m=Qs(i.events,a[1]);if(u={type:d,start:Object.assign({},m),end:Object.assign({},m)},e.add(a[1],0,[["enter",u,i]]),a[2]!==0){const g=Qs(i.events,a[2]),x=Qs(i.events,a[3]),b={type:p,start:Object.assign({},g),end:Object.assign({},x)};if(e.add(a[2],0,[["enter",b,i]]),s!==2){const v=i.events[a[2]],y=i.events[a[3]];if(v[1].end=Object.assign({},y[1].end),v[1].type="chunkText",v[1].contentType="text",a[3]>a[2]+1){const k=a[2]+1,N=a[3]-a[2]-1;e.add(k,N,[])}}e.add(a[3]+1,0,[["exit",b,i]])}return o!==void 0&&(u.end=Object.assign({},Qs(i.events,o)),e.add(o,0,[["exit",u,i]]),u=void 0),u}function B0(e,i,a,s,o){const u=[],d=Qs(i.events,a);o&&(o.end=Object.assign({},d),u.push(["exit",o,i])),s.end=Object.assign({},d),u.push(["exit",s,i]),e.add(a+1,0,u)}function Qs(e,i){const a=e[i],s=a[0]==="enter"?"start":"end";return a[1][s]}const S4={name:"tasklistCheck",tokenize:C4};function T4(){return{text:{91:S4}}}function C4(e,i,a){const s=this;return o;function o(m){return s.previous!==null||!s._gfmTasklistFirstContentOfListItem?a(m):(e.enter("taskListCheck"),e.enter("taskListCheckMarker"),e.consume(m),e.exit("taskListCheckMarker"),u)}function u(m){return Rt(m)?(e.enter("taskListCheckValueUnchecked"),e.consume(m),e.exit("taskListCheckValueUnchecked"),d):m===88||m===120?(e.enter("taskListCheckValueChecked"),e.consume(m),e.exit("taskListCheckValueChecked"),d):a(m)}function d(m){return m===93?(e.enter("taskListCheckMarker"),e.consume(m),e.exit("taskListCheckMarker"),e.exit("taskListCheck"),p):a(m)}function p(m){return $e(m)?i(m):nt(m)?e.check({tokenize:A4},i,a)(m):a(m)}}function A4(e,i,a){return ht(e,s,"whitespace");function s(o){return o===null?a(o):i(o)}}function O4(e){return Ww([t4(),d4(),y4(e),E4(),T4()])}const M4={};function j4(e){const i=this,a=e||M4,s=i.data(),o=s.micromarkExtensions||(s.micromarkExtensions=[]),u=s.fromMarkdownExtensions||(s.fromMarkdownExtensions=[]),d=s.toMarkdownExtensions||(s.toMarkdownExtensions=[]);o.push(O4(a)),u.push(Q3()),d.push(J3(a))}const $0=(function(e,i,a){const s=jo(a);if(!e||!e.type||!e.children)throw new Error("Expected parent node");if(typeof i=="number"){if(i<0||i===Number.POSITIVE_INFINITY)throw new Error("Expected positive finite number as index")}else if(i=e.children.indexOf(i),i<0)throw new Error("Expected child node or index");for(;++i<e.children.length;)if(s(e.children[i],i,e))return e.children[i]}),ns=(function(e){if(e==null)return z4;if(typeof e=="string")return D4(e);if(typeof e=="object")return R4(e);if(typeof e=="function")return og(e);throw new Error("Expected function, string, or array as `test`")});function R4(e){const i=[];let a=-1;for(;++a<e.length;)i[a]=ns(e[a]);return og(s);function s(...o){let u=-1;for(;++u<i.length;)if(i[u].apply(this,o))return!0;return!1}}function D4(e){return og(i);function i(a){return a.tagName===e}}function og(e){return i;function i(a,s,o){return!!(L4(a)&&e.call(this,a,typeof s=="number"?s:void 0,o||void 0))}}function z4(e){return!!(e&&typeof e=="object"&&"type"in e&&e.type==="element"&&"tagName"in e&&typeof e.tagName=="string")}function L4(e){return e!==null&&typeof e=="object"&&"type"in e&&"tagName"in e}const H0=/\n/g,P0=/[\t ]+/g,fm=ns("br"),F0=ns(q4),I4=ns("p"),q0=ns("tr"),U4=ns(["datalist","head","noembed","noframes","noscript","rp","script","style","template","title",F4,G4]),Pk=ns(["address","article","aside","blockquote","body","caption","center","dd","dialog","dir","dl","dt","div","figure","figcaption","footer","form,","h1","h2","h3","h4","h5","h6","header","hgroup","hr","html","legend","li","listing","main","menu","nav","ol","p","plaintext","pre","section","ul","xmp"]);function B4(e,i){const a=i||{},s="children"in e?e.children:[],o=Pk(e),u=Gk(e,{whitespace:a.whitespace||"normal"}),d=[];(e.type==="text"||e.type==="comment")&&d.push(...qk(e,{breakBefore:!0,breakAfter:!0}));let p=-1;for(;++p<s.length;)d.push(...Fk(s[p],e,{whitespace:u,breakBefore:p?void 0:o,breakAfter:p<s.length-1?fm(s[p+1]):o}));const m=[];let g;for(p=-1;++p<d.length;){const x=d[p];typeof x=="number"?g!==void 0&&x>g&&(g=x):x&&(g!==void 0&&g>-1&&m.push(`
|
|
270
|
+
`.repeat(g)||" "),g=-1,m.push(x))}return m.join("")}function Fk(e,i,a){return e.type==="element"?$4(e,i,a):e.type==="text"?a.whitespace==="normal"?qk(e,a):H4(e):[]}function $4(e,i,a){const s=Gk(e,a),o=e.children||[];let u=-1,d=[];if(U4(e))return d;let p,m;for(fm(e)||q0(e)&&$0(i,e,q0)?m=`
|
|
271
|
+
`:I4(e)?(p=2,m=2):Pk(e)&&(p=1,m=1);++u<o.length;)d=d.concat(Fk(o[u],e,{whitespace:s,breakBefore:u?void 0:p,breakAfter:u<o.length-1?fm(o[u+1]):m}));return F0(e)&&$0(i,e,F0)&&d.push(" "),p&&d.unshift(p),m&&d.push(m),d}function qk(e,i){const a=String(e.value),s=[],o=[];let u=0;for(;u<=a.length;){H0.lastIndex=u;const m=H0.exec(a),g=m&&"index"in m?m.index:a.length;s.push(P4(a.slice(u,g).replace(/[\u061C\u200E\u200F\u202A-\u202E\u2066-\u2069]/g,""),u===0?i.breakBefore:!0,g===a.length?i.breakAfter:!0)),u=g+1}let d=-1,p;for(;++d<s.length;)s[d].charCodeAt(s[d].length-1)===8203||d<s.length-1&&s[d+1].charCodeAt(0)===8203?(o.push(s[d]),p=void 0):s[d]?(typeof p=="number"&&o.push(p),o.push(s[d]),p=0):(d===0||d===s.length-1)&&o.push(0);return o}function H4(e){return[String(e.value)]}function P4(e,i,a){const s=[];let o=0,u;for(;o<e.length;){P0.lastIndex=o;const d=P0.exec(e);u=d?d.index:e.length,!o&&!u&&d&&!i&&s.push(""),o!==u&&s.push(e.slice(o,u)),o=d?u+d[0].length:u}return o!==u&&!a&&s.push(""),s.join(" ")}function Gk(e,i){if(e.type==="element"){const a=e.properties||{};switch(e.tagName){case"listing":case"plaintext":case"xmp":return"pre";case"nobr":return"nowrap";case"pre":return a.wrap?"pre-wrap":"pre";case"td":case"th":return a.noWrap?"nowrap":i.whitespace;case"textarea":return"pre-wrap"}}return i.whitespace}function F4(e){return!!(e.properties||{}).hidden}function q4(e){return e.tagName==="td"||e.tagName==="th"}function G4(e){return e.tagName==="dialog"&&!(e.properties||{}).open}function Y4(e){const i=e.regex,a=e.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),s="decltype\\(auto\\)",o="[a-zA-Z_]\\w*::",d="(?!struct)("+s+"|"+i.optional(o)+"[a-zA-Z_]\\w*"+i.optional("<[^<>]+>")+")",p={className:"type",begin:"\\b[a-z\\d_]*_t\\b"},g={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'("+"\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)"+"|.)",end:"'",illegal:"."},e.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},x={className:"number",variants:[{begin:"[+-]?(?:(?:[0-9](?:'?[0-9])*\\.(?:[0-9](?:'?[0-9])*)?|\\.[0-9](?:'?[0-9])*)(?:[Ee][+-]?[0-9](?:'?[0-9])*)?|[0-9](?:'?[0-9])*[Ee][+-]?[0-9](?:'?[0-9])*|0[Xx](?:[0-9A-Fa-f](?:'?[0-9A-Fa-f])*(?:\\.(?:[0-9A-Fa-f](?:'?[0-9A-Fa-f])*)?)?|\\.[0-9A-Fa-f](?:'?[0-9A-Fa-f])*)[Pp][+-]?[0-9](?:'?[0-9])*)(?:[Ff](?:16|32|64|128)?|(BF|bf)16|[Ll]|)"},{begin:"[+-]?\\b(?:0[Bb][01](?:'?[01])*|0[Xx][0-9A-Fa-f](?:'?[0-9A-Fa-f])*|0(?:'?[0-7])*|[1-9](?:'?[0-9])*)(?:[Uu](?:LL?|ll?)|[Uu][Zz]?|(?:LL?|ll?)[Uu]?|[Zz][Uu]|)"}],relevance:0},b={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{keyword:"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(g,{className:"string"}),{className:"string",begin:/<.*?>/},a,e.C_BLOCK_COMMENT_MODE]},v={className:"title",begin:i.optional(o)+e.IDENT_RE,relevance:0},y=i.optional(o)+e.IDENT_RE+"\\s*\\(",k=["alignas","alignof","and","and_eq","asm","atomic_cancel","atomic_commit","atomic_noexcept","auto","bitand","bitor","break","case","catch","class","co_await","co_return","co_yield","compl","concept","const_cast|10","consteval","constexpr","constinit","continue","decltype","default","delete","do","dynamic_cast|10","else","enum","explicit","export","extern","false","final","for","friend","goto","if","import","inline","module","mutable","namespace","new","noexcept","not","not_eq","nullptr","operator","or","or_eq","override","private","protected","public","reflexpr","register","reinterpret_cast|10","requires","return","sizeof","static_assert","static_cast|10","struct","switch","synchronized","template","this","thread_local","throw","transaction_safe","transaction_safe_dynamic","true","try","typedef","typeid","typename","union","using","virtual","volatile","while","xor","xor_eq"],N=["bool","char","char16_t","char32_t","char8_t","double","float","int","long","short","void","wchar_t","unsigned","signed","const","static"],_=["any","auto_ptr","barrier","binary_semaphore","bitset","complex","condition_variable","condition_variable_any","counting_semaphore","deque","false_type","flat_map","flat_set","future","imaginary","initializer_list","istringstream","jthread","latch","lock_guard","multimap","multiset","mutex","optional","ostringstream","packaged_task","pair","promise","priority_queue","queue","recursive_mutex","recursive_timed_mutex","scoped_lock","set","shared_future","shared_lock","shared_mutex","shared_timed_mutex","shared_ptr","stack","string_view","stringstream","timed_mutex","thread","true_type","tuple","unique_lock","unique_ptr","unordered_map","unordered_multimap","unordered_multiset","unordered_set","variant","vector","weak_ptr","wstring","wstring_view"],S=["abort","abs","acos","apply","as_const","asin","atan","atan2","calloc","ceil","cerr","cin","clog","cos","cosh","cout","declval","endl","exchange","exit","exp","fabs","floor","fmod","forward","fprintf","fputs","free","frexp","fscanf","future","invoke","isalnum","isalpha","iscntrl","isdigit","isgraph","islower","isprint","ispunct","isspace","isupper","isxdigit","labs","launder","ldexp","log","log10","make_pair","make_shared","make_shared_for_overwrite","make_tuple","make_unique","malloc","memchr","memcmp","memcpy","memset","modf","move","pow","printf","putchar","puts","realloc","scanf","sin","sinh","snprintf","sprintf","sqrt","sscanf","std","stderr","stdin","stdout","strcat","strchr","strcmp","strcpy","strcspn","strlen","strncat","strncmp","strncpy","strpbrk","strrchr","strspn","strstr","swap","tan","tanh","terminate","to_underlying","tolower","toupper","vfprintf","visit","vprintf","vsprintf"],I={type:N,keyword:k,literal:["NULL","false","nullopt","nullptr","true"],built_in:["_Pragma"],_type_hints:_},F={className:"function.dispatch",relevance:0,keywords:{_hint:S},begin:i.concat(/\b/,`(?!${k.join("|")})`,e.IDENT_RE,i.lookahead(/(<[^<>]+>|)\s*\(/))},R=[F,b,p,a,e.C_BLOCK_COMMENT_MODE,x,g],A={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:I,contains:R.concat([{begin:/\(/,end:/\)/,keywords:I,contains:R.concat(["self"]),relevance:0}]),relevance:0},L={className:"function",begin:"("+d+"[\\*&\\s]+)+"+y,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:I,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:s,keywords:I,relevance:0},{begin:y,returnBegin:!0,contains:[v],relevance:0},{begin:/::/,relevance:0},{begin:/:/,endsWithParent:!0,contains:[g,x]},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:I,relevance:0,contains:[a,e.C_BLOCK_COMMENT_MODE,g,x,p,{begin:/\(/,end:/\)/,keywords:I,relevance:0,contains:["self",a,e.C_BLOCK_COMMENT_MODE,g,x,p]}]},p,a,e.C_BLOCK_COMMENT_MODE,b]};return{name:"C++",aliases:["cc","c++","h++","hpp","hh","hxx","cxx"],keywords:I,illegal:"</",classNameAliases:{"function.dispatch":"built_in"},contains:[].concat(A,L,F,R,[b,{begin:"\\b(deque|list|queue|priority_queue|pair|stack|vector|map|set|bitset|multiset|multimap|unordered_map|unordered_set|unordered_multiset|unordered_multimap|array|tuple|optional|variant|function|flat_map|flat_set)\\s*<(?!<)",end:">",keywords:I,contains:["self",p]},{begin:e.IDENT_RE+"::",keywords:I},{match:[/\b(?:enum(?:\s+(?:class|struct))?|class|struct|union)/,/\s+/,/\w+/],className:{1:"keyword",3:"title.class"}}])}}function K4(e){const i={type:["boolean","byte","word","String"],built_in:["KeyboardController","MouseController","SoftwareSerial","EthernetServer","EthernetClient","LiquidCrystal","RobotControl","GSMVoiceCall","EthernetUDP","EsploraTFT","HttpClient","RobotMotor","WiFiClient","GSMScanner","FileSystem","Scheduler","GSMServer","YunClient","YunServer","IPAddress","GSMClient","GSMModem","Keyboard","Ethernet","Console","GSMBand","Esplora","Stepper","Process","WiFiUDP","GSM_SMS","Mailbox","USBHost","Firmata","PImage","Client","Server","GSMPIN","FileIO","Bridge","Serial","EEPROM","Stream","Mouse","Audio","Servo","File","Task","GPRS","WiFi","Wire","TFT","GSM","SPI","SD"],_hints:["setup","loop","runShellCommandAsynchronously","analogWriteResolution","retrieveCallingNumber","printFirmwareVersion","analogReadResolution","sendDigitalPortPair","noListenOnLocalhost","readJoystickButton","setFirmwareVersion","readJoystickSwitch","scrollDisplayRight","getVoiceCallStatus","scrollDisplayLeft","writeMicroseconds","delayMicroseconds","beginTransmission","getSignalStrength","runAsynchronously","getAsynchronously","listenOnLocalhost","getCurrentCarrier","readAccelerometer","messageAvailable","sendDigitalPorts","lineFollowConfig","countryNameWrite","runShellCommand","readStringUntil","rewindDirectory","readTemperature","setClockDivider","readLightSensor","endTransmission","analogReference","detachInterrupt","countryNameRead","attachInterrupt","encryptionType","readBytesUntil","robotNameWrite","readMicrophone","robotNameRead","cityNameWrite","userNameWrite","readJoystickY","readJoystickX","mouseReleased","openNextFile","scanNetworks","noInterrupts","digitalWrite","beginSpeaker","mousePressed","isActionDone","mouseDragged","displayLogos","noAutoscroll","addParameter","remoteNumber","getModifiers","keyboardRead","userNameRead","waitContinue","processInput","parseCommand","printVersion","readNetworks","writeMessage","blinkVersion","cityNameRead","readMessage","setDataMode","parsePacket","isListening","setBitOrder","beginPacket","isDirectory","motorsWrite","drawCompass","digitalRead","clearScreen","serialEvent","rightToLeft","setTextSize","leftToRight","requestFrom","keyReleased","compassRead","analogWrite","interrupts","WiFiServer","disconnect","playMelody","parseFloat","autoscroll","getPINUsed","setPINUsed","setTimeout","sendAnalog","readSlider","analogRead","beginWrite","createChar","motorsStop","keyPressed","tempoWrite","readButton","subnetMask","debugPrint","macAddress","writeGreen","randomSeed","attachGPRS","readString","sendString","remotePort","releaseAll","mouseMoved","background","getXChange","getYChange","answerCall","getResult","voiceCall","endPacket","constrain","getSocket","writeJSON","getButton","available","connected","findUntil","readBytes","exitValue","readGreen","writeBlue","startLoop","IPAddress","isPressed","sendSysex","pauseMode","gatewayIP","setCursor","getOemKey","tuneWrite","noDisplay","loadImage","switchPIN","onRequest","onReceive","changePIN","playFile","noBuffer","parseInt","overflow","checkPIN","knobRead","beginTFT","bitClear","updateIR","bitWrite","position","writeRGB","highByte","writeRed","setSpeed","readBlue","noStroke","remoteIP","transfer","shutdown","hangCall","beginSMS","endWrite","attached","maintain","noCursor","checkReg","checkPUK","shiftOut","isValid","shiftIn","pulseIn","connect","println","localIP","pinMode","getIMEI","display","noBlink","process","getBand","running","beginSD","drawBMP","lowByte","setBand","release","bitRead","prepare","pointTo","readRed","setMode","noFill","remove","listen","stroke","detach","attach","noTone","exists","buffer","height","bitSet","circle","config","cursor","random","IRread","setDNS","endSMS","getKey","micros","millis","begin","print","write","ready","flush","width","isPIN","blink","clear","press","mkdir","rmdir","close","point","yield","image","BSSID","click","delay","read","text","move","peek","beep","rect","line","open","seek","fill","size","turn","stop","home","find","step","tone","sqrt","RSSI","SSID","end","bit","tan","cos","sin","pow","map","abs","max","min","get","run","put"],literal:["DIGITAL_MESSAGE","FIRMATA_STRING","ANALOG_MESSAGE","REPORT_DIGITAL","REPORT_ANALOG","INPUT_PULLUP","SET_PIN_MODE","INTERNAL2V56","SYSTEM_RESET","LED_BUILTIN","INTERNAL1V1","SYSEX_START","INTERNAL","EXTERNAL","DEFAULT","OUTPUT","INPUT","HIGH","LOW"]},a=Y4(e),s=a.keywords;return s.type=[...s.type,...i.type],s.literal=[...s.literal,...i.literal],s.built_in=[...s.built_in,...i.built_in],s._hints=i._hints,a.name="Arduino",a.aliases=["ino"],a.supersetOf="cpp",a}function V4(e){const i=e.regex,a={},s={begin:/\$\{/,end:/\}/,contains:["self",{begin:/:-/,contains:[a]}]};Object.assign(a,{className:"variable",variants:[{begin:i.concat(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},s]});const o={className:"subst",begin:/\$\(/,end:/\)/,contains:[e.BACKSLASH_ESCAPE]},u=e.inherit(e.COMMENT(),{match:[/(^|\s)/,/#.*$/],scope:{2:"comment"}}),d={begin:/<<-?\s*(?=\w+)/,starts:{contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,className:"string"})]}},p={className:"string",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,a,o]};o.contains.push(p);const m={match:/\\"/},g={className:"string",begin:/'/,end:/'/},x={match:/\\'/},b={begin:/\$?\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},e.NUMBER_MODE,a]},v=["fish","bash","zsh","sh","csh","ksh","tcsh","dash","scsh"],y=e.SHEBANG({binary:`(${v.join("|")})`,relevance:10}),k={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[e.inherit(e.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0},N=["if","then","else","elif","fi","time","for","while","until","in","do","done","case","esac","coproc","function","select"],_=["true","false"],S={match:/(\/[a-z._-]+)+/},C=["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset"],M=["alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","sudo","type","typeset","ulimit","unalias"],I=["autoload","bg","bindkey","bye","cap","chdir","clone","comparguments","compcall","compctl","compdescribe","compfiles","compgroups","compquote","comptags","comptry","compvalues","dirs","disable","disown","echotc","echoti","emulate","fc","fg","float","functions","getcap","getln","history","integer","jobs","kill","limit","log","noglob","popd","print","pushd","pushln","rehash","sched","setcap","setopt","stat","suspend","ttyctl","unfunction","unhash","unlimit","unsetopt","vared","wait","whence","where","which","zcompile","zformat","zftp","zle","zmodload","zparseopts","zprof","zpty","zregexparse","zsocket","zstyle","ztcp"],F=["chcon","chgrp","chown","chmod","cp","dd","df","dir","dircolors","ln","ls","mkdir","mkfifo","mknod","mktemp","mv","realpath","rm","rmdir","shred","sync","touch","truncate","vdir","b2sum","base32","base64","cat","cksum","comm","csplit","cut","expand","fmt","fold","head","join","md5sum","nl","numfmt","od","paste","ptx","pr","sha1sum","sha224sum","sha256sum","sha384sum","sha512sum","shuf","sort","split","sum","tac","tail","tr","tsort","unexpand","uniq","wc","arch","basename","chroot","date","dirname","du","echo","env","expr","factor","groups","hostid","id","link","logname","nice","nohup","nproc","pathchk","pinky","printenv","printf","pwd","readlink","runcon","seq","sleep","stat","stdbuf","stty","tee","test","timeout","tty","uname","unlink","uptime","users","who","whoami","yes"];return{name:"Bash",aliases:["sh","zsh"],keywords:{$pattern:/\b[a-z][a-z0-9._-]+\b/,keyword:N,literal:_,built_in:[...C,...M,"set","shopt",...I,...F]},contains:[y,e.SHEBANG(),k,b,u,d,S,p,m,g,x,a]}}function X4(e){const i=e.regex,a=e.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),s="decltype\\(auto\\)",o="[a-zA-Z_]\\w*::",d="("+s+"|"+i.optional(o)+"[a-zA-Z_]\\w*"+i.optional("<[^<>]+>")+")",p={className:"type",variants:[{begin:"\\b[a-z\\d_]*_t\\b"},{match:/\batomic_[a-z]{3,6}\b/}]},g={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'("+"\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)"+"|.)",end:"'",illegal:"."},e.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},x={className:"number",variants:[{match:/\b(0b[01']+)/},{match:/(-?)\b([\d']+(\.[\d']*)?|\.[\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)/},{match:/(-?)\b(0[xX][a-fA-F0-9]+(?:'[a-fA-F0-9]+)*(?:\.[a-fA-F0-9]*(?:'[a-fA-F0-9]*)*)?(?:[pP][-+]?[0-9]+)?(l|L)?(u|U)?)/},{match:/(-?)\b\d+(?:'\d+)*(?:\.\d*(?:'\d*)*)?(?:[eE][-+]?\d+)?/}],relevance:0},b={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{keyword:"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef elifdef elifndef include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(g,{className:"string"}),{className:"string",begin:/<.*?>/},a,e.C_BLOCK_COMMENT_MODE]},v={className:"title",begin:i.optional(o)+e.IDENT_RE,relevance:0},y=i.optional(o)+e.IDENT_RE+"\\s*\\(",_={keyword:["asm","auto","break","case","continue","default","do","else","enum","extern","for","fortran","goto","if","inline","register","restrict","return","sizeof","typeof","typeof_unqual","struct","switch","typedef","union","volatile","while","_Alignas","_Alignof","_Atomic","_Generic","_Noreturn","_Static_assert","_Thread_local","alignas","alignof","noreturn","static_assert","thread_local","_Pragma"],type:["float","double","signed","unsigned","int","short","long","char","void","_Bool","_BitInt","_Complex","_Imaginary","_Decimal32","_Decimal64","_Decimal96","_Decimal128","_Decimal64x","_Decimal128x","_Float16","_Float32","_Float64","_Float128","_Float32x","_Float64x","_Float128x","const","static","constexpr","complex","bool","imaginary"],literal:"true false NULL",built_in:"std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set pair bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap priority_queue make_pair array shared_ptr abort terminate abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr"},S=[b,p,a,e.C_BLOCK_COMMENT_MODE,x,g],C={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:_,contains:S.concat([{begin:/\(/,end:/\)/,keywords:_,contains:S.concat(["self"]),relevance:0}]),relevance:0},M={begin:"("+d+"[\\*&\\s]+)+"+y,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:_,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:s,keywords:_,relevance:0},{begin:y,returnBegin:!0,contains:[e.inherit(v,{className:"title.function"})],relevance:0},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:_,relevance:0,contains:[a,e.C_BLOCK_COMMENT_MODE,g,x,p,{begin:/\(/,end:/\)/,keywords:_,relevance:0,contains:["self",a,e.C_BLOCK_COMMENT_MODE,g,x,p]}]},p,a,e.C_BLOCK_COMMENT_MODE,b]};return{name:"C",aliases:["h"],keywords:_,disableAutodetect:!0,illegal:"</",contains:[].concat(C,M,S,[b,{begin:e.IDENT_RE+"::",keywords:_},{className:"class",beginKeywords:"enum class struct union",end:/[{;:<>=]/,contains:[{beginKeywords:"final class struct"},e.TITLE_MODE]}]),exports:{preprocessor:b,strings:g,keywords:_}}}function Z4(e){const i=e.regex,a=e.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),s="decltype\\(auto\\)",o="[a-zA-Z_]\\w*::",d="(?!struct)("+s+"|"+i.optional(o)+"[a-zA-Z_]\\w*"+i.optional("<[^<>]+>")+")",p={className:"type",begin:"\\b[a-z\\d_]*_t\\b"},g={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'("+"\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)"+"|.)",end:"'",illegal:"."},e.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},x={className:"number",variants:[{begin:"[+-]?(?:(?:[0-9](?:'?[0-9])*\\.(?:[0-9](?:'?[0-9])*)?|\\.[0-9](?:'?[0-9])*)(?:[Ee][+-]?[0-9](?:'?[0-9])*)?|[0-9](?:'?[0-9])*[Ee][+-]?[0-9](?:'?[0-9])*|0[Xx](?:[0-9A-Fa-f](?:'?[0-9A-Fa-f])*(?:\\.(?:[0-9A-Fa-f](?:'?[0-9A-Fa-f])*)?)?|\\.[0-9A-Fa-f](?:'?[0-9A-Fa-f])*)[Pp][+-]?[0-9](?:'?[0-9])*)(?:[Ff](?:16|32|64|128)?|(BF|bf)16|[Ll]|)"},{begin:"[+-]?\\b(?:0[Bb][01](?:'?[01])*|0[Xx][0-9A-Fa-f](?:'?[0-9A-Fa-f])*|0(?:'?[0-7])*|[1-9](?:'?[0-9])*)(?:[Uu](?:LL?|ll?)|[Uu][Zz]?|(?:LL?|ll?)[Uu]?|[Zz][Uu]|)"}],relevance:0},b={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{keyword:"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(g,{className:"string"}),{className:"string",begin:/<.*?>/},a,e.C_BLOCK_COMMENT_MODE]},v={className:"title",begin:i.optional(o)+e.IDENT_RE,relevance:0},y=i.optional(o)+e.IDENT_RE+"\\s*\\(",k=["alignas","alignof","and","and_eq","asm","atomic_cancel","atomic_commit","atomic_noexcept","auto","bitand","bitor","break","case","catch","class","co_await","co_return","co_yield","compl","concept","const_cast|10","consteval","constexpr","constinit","continue","decltype","default","delete","do","dynamic_cast|10","else","enum","explicit","export","extern","false","final","for","friend","goto","if","import","inline","module","mutable","namespace","new","noexcept","not","not_eq","nullptr","operator","or","or_eq","override","private","protected","public","reflexpr","register","reinterpret_cast|10","requires","return","sizeof","static_assert","static_cast|10","struct","switch","synchronized","template","this","thread_local","throw","transaction_safe","transaction_safe_dynamic","true","try","typedef","typeid","typename","union","using","virtual","volatile","while","xor","xor_eq"],N=["bool","char","char16_t","char32_t","char8_t","double","float","int","long","short","void","wchar_t","unsigned","signed","const","static"],_=["any","auto_ptr","barrier","binary_semaphore","bitset","complex","condition_variable","condition_variable_any","counting_semaphore","deque","false_type","flat_map","flat_set","future","imaginary","initializer_list","istringstream","jthread","latch","lock_guard","multimap","multiset","mutex","optional","ostringstream","packaged_task","pair","promise","priority_queue","queue","recursive_mutex","recursive_timed_mutex","scoped_lock","set","shared_future","shared_lock","shared_mutex","shared_timed_mutex","shared_ptr","stack","string_view","stringstream","timed_mutex","thread","true_type","tuple","unique_lock","unique_ptr","unordered_map","unordered_multimap","unordered_multiset","unordered_set","variant","vector","weak_ptr","wstring","wstring_view"],S=["abort","abs","acos","apply","as_const","asin","atan","atan2","calloc","ceil","cerr","cin","clog","cos","cosh","cout","declval","endl","exchange","exit","exp","fabs","floor","fmod","forward","fprintf","fputs","free","frexp","fscanf","future","invoke","isalnum","isalpha","iscntrl","isdigit","isgraph","islower","isprint","ispunct","isspace","isupper","isxdigit","labs","launder","ldexp","log","log10","make_pair","make_shared","make_shared_for_overwrite","make_tuple","make_unique","malloc","memchr","memcmp","memcpy","memset","modf","move","pow","printf","putchar","puts","realloc","scanf","sin","sinh","snprintf","sprintf","sqrt","sscanf","std","stderr","stdin","stdout","strcat","strchr","strcmp","strcpy","strcspn","strlen","strncat","strncmp","strncpy","strpbrk","strrchr","strspn","strstr","swap","tan","tanh","terminate","to_underlying","tolower","toupper","vfprintf","visit","vprintf","vsprintf"],I={type:N,keyword:k,literal:["NULL","false","nullopt","nullptr","true"],built_in:["_Pragma"],_type_hints:_},F={className:"function.dispatch",relevance:0,keywords:{_hint:S},begin:i.concat(/\b/,`(?!${k.join("|")})`,e.IDENT_RE,i.lookahead(/(<[^<>]+>|)\s*\(/))},R=[F,b,p,a,e.C_BLOCK_COMMENT_MODE,x,g],A={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:I,contains:R.concat([{begin:/\(/,end:/\)/,keywords:I,contains:R.concat(["self"]),relevance:0}]),relevance:0},L={className:"function",begin:"("+d+"[\\*&\\s]+)+"+y,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:I,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:s,keywords:I,relevance:0},{begin:y,returnBegin:!0,contains:[v],relevance:0},{begin:/::/,relevance:0},{begin:/:/,endsWithParent:!0,contains:[g,x]},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:I,relevance:0,contains:[a,e.C_BLOCK_COMMENT_MODE,g,x,p,{begin:/\(/,end:/\)/,keywords:I,relevance:0,contains:["self",a,e.C_BLOCK_COMMENT_MODE,g,x,p]}]},p,a,e.C_BLOCK_COMMENT_MODE,b]};return{name:"C++",aliases:["cc","c++","h++","hpp","hh","hxx","cxx"],keywords:I,illegal:"</",classNameAliases:{"function.dispatch":"built_in"},contains:[].concat(A,L,F,R,[b,{begin:"\\b(deque|list|queue|priority_queue|pair|stack|vector|map|set|bitset|multiset|multimap|unordered_map|unordered_set|unordered_multiset|unordered_multimap|array|tuple|optional|variant|function|flat_map|flat_set)\\s*<(?!<)",end:">",keywords:I,contains:["self",p]},{begin:e.IDENT_RE+"::",keywords:I},{match:[/\b(?:enum(?:\s+(?:class|struct))?|class|struct|union)/,/\s+/,/\w+/],className:{1:"keyword",3:"title.class"}}])}}function Q4(e){const i=["bool","byte","char","decimal","delegate","double","dynamic","enum","float","int","long","nint","nuint","object","sbyte","short","string","ulong","uint","ushort"],a=["public","private","protected","static","internal","protected","abstract","async","extern","override","unsafe","virtual","new","sealed","partial"],s=["default","false","null","true"],o=["abstract","as","base","break","case","catch","class","const","continue","do","else","event","explicit","extern","finally","fixed","for","foreach","goto","if","implicit","in","interface","internal","is","lock","namespace","new","operator","out","override","params","private","protected","public","readonly","record","ref","return","scoped","sealed","sizeof","stackalloc","static","struct","switch","this","throw","try","typeof","unchecked","unsafe","using","virtual","void","volatile","while"],u=["add","alias","and","ascending","args","async","await","by","descending","dynamic","equals","file","from","get","global","group","init","into","join","let","nameof","not","notnull","on","or","orderby","partial","record","remove","required","scoped","select","set","unmanaged","value|0","var","when","where","with","yield"],d={keyword:o.concat(u),built_in:i,literal:s},p=e.inherit(e.TITLE_MODE,{begin:"[a-zA-Z](\\.?\\w)*"}),m={className:"number",variants:[{begin:"\\b(0b[01']+)"},{begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)(u|U|l|L|ul|UL|f|F|b|B)"},{begin:"(-?)(\\b0[xX][a-fA-F0-9'_]+|(\\b[\\d'_]+(\\.[\\d'_]*)?|\\.[\\d'_]+)([eE][-+]?[\\d'_]+)?)"}],relevance:0},g={className:"string",begin:/"""("*)(?!")(.|\n)*?"""\1/,relevance:1},x={className:"string",begin:'@"',end:'"',contains:[{begin:'""'}]},b=e.inherit(x,{illegal:/\n/}),v={className:"subst",begin:/\{/,end:/\}/,keywords:d},y=e.inherit(v,{illegal:/\n/}),k={className:"string",begin:/\$"/,end:'"',illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},e.BACKSLASH_ESCAPE,y]},N={className:"string",begin:/\$@"/,end:'"',contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},v]},_=e.inherit(N,{illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},y]});v.contains=[N,k,x,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,m,e.C_BLOCK_COMMENT_MODE],y.contains=[_,k,b,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,m,e.inherit(e.C_BLOCK_COMMENT_MODE,{illegal:/\n/})];const S={variants:[g,N,k,x,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},C={begin:"<",end:">",contains:[{beginKeywords:"in out"},p]},M=e.IDENT_RE+"(<"+e.IDENT_RE+"(\\s*,\\s*"+e.IDENT_RE+")*>)?(\\[\\])?",I={begin:"@"+e.IDENT_RE,relevance:0};return{name:"C#",aliases:["cs","c#"],keywords:d,illegal:/::/,contains:[e.COMMENT("///","$",{returnBegin:!0,contains:[{className:"doctag",variants:[{begin:"///",relevance:0},{begin:"<!--|-->"},{begin:"</?",end:">"}]}]}),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"meta",begin:"#",end:"$",keywords:{keyword:"if else elif endif define undef warning error line region endregion pragma checksum"}},S,m,{beginKeywords:"class interface",relevance:0,end:/[{;=]/,illegal:/[^\s:,]/,contains:[{beginKeywords:"where class"},p,C,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:"namespace",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[p,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:"record",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[p,C,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{className:"meta",begin:"^\\s*\\[(?=[\\w])",excludeBegin:!0,end:"\\]",excludeEnd:!0,contains:[{className:"string",begin:/"/,end:/"/}]},{beginKeywords:"new return throw await else",relevance:0},{className:"function",begin:"("+M+"\\s+)+"+e.IDENT_RE+"\\s*(<[^=]+>\\s*)?\\(",returnBegin:!0,end:/\s*[{;=]/,excludeEnd:!0,keywords:d,contains:[{beginKeywords:a.join(" "),relevance:0},{begin:e.IDENT_RE+"\\s*(<[^=]+>\\s*)?\\(",returnBegin:!0,contains:[e.TITLE_MODE,C],relevance:0},{match:/\(\)/},{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:d,relevance:0,contains:[S,m,e.C_BLOCK_COMMENT_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},I]}}const J4=e=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:e.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},UNICODE_RANGE:{scope:"number",begin:/\b[Uu]\+[0-9A-Fa-f][0-9A-Fa-f?]{0,4}(-[0-9A-Fa-f][0-9A-Fa-f]{0,4})?/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:e.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z_][A-Za-z0-9_-]*/}}),W4=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","optgroup","option","p","picture","q","quote","samp","section","select","source","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],ez=["defs","g","marker","mask","pattern","svg","switch","symbol","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feFlood","feGaussianBlur","feImage","feMerge","feMorphology","feOffset","feSpecularLighting","feTile","feTurbulence","linearGradient","radialGradient","stop","circle","ellipse","image","line","path","polygon","polyline","rect","text","use","textPath","tspan","foreignObject","clipPath"],tz=[...W4,...ez],nz=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"].sort().reverse(),iz=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"].sort().reverse(),az=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),rz=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","unicode-range","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse();function sz(e){const i=e.regex,a=J4(e),s={begin:/-(webkit|moz|ms|o)-(?=[a-z])/},o="and or not only",u=/@-?\w[\w]*(-\w+)*/,d="[a-zA-Z-][a-zA-Z0-9_-]*",p=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE];return{name:"CSS",case_insensitive:!0,illegal:/[=|'\$]/,keywords:{keyframePosition:"from to"},classNameAliases:{keyframePosition:"selector-tag"},contains:[a.BLOCK_COMMENT,s,a.CSS_NUMBER_MODE,{className:"selector-id",begin:/#[A-Za-z0-9_-]+/,relevance:0},{className:"selector-class",begin:"\\."+d,relevance:0},a.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",variants:[{begin:":("+iz.join("|")+")"},{begin:":(:)?("+az.join("|")+")"}]},a.CSS_VARIABLE,{className:"attribute",begin:"\\b("+rz.join("|")+")\\b"},{begin:/:/,end:/[;}{]/,contains:[a.BLOCK_COMMENT,a.HEXCOLOR,a.IMPORTANT,a.CSS_NUMBER_MODE,a.UNICODE_RANGE,...p,{begin:/(url|data-uri)\(/,end:/\)/,relevance:0,keywords:{built_in:"url data-uri"},contains:[...p,{className:"string",begin:/[^)]/,endsWithParent:!0,excludeEnd:!0}]},a.FUNCTION_DISPATCH]},{begin:i.lookahead(/@/),end:"[{;]",relevance:0,illegal:/:/,contains:[{className:"keyword",begin:u},{begin:/\s/,endsWithParent:!0,excludeEnd:!0,relevance:0,keywords:{$pattern:/[a-z-]+/,keyword:o,attribute:nz.join(" ")},contains:[{begin:/[a-z-]+(?=:)/,className:"attribute"},...p,a.CSS_NUMBER_MODE]}]},{className:"selector-tag",begin:"\\b("+tz.join("|")+")\\b"}]}}function lz(e){const i=e.regex;return{name:"Diff",aliases:["patch"],contains:[{className:"meta",relevance:10,match:i.either(/^@@ +-\d+,\d+ +\+\d+,\d+ +@@/,/^@@ +-\d+ +\+\d+,\d+ +@@/,/^@@ +-\d+,\d+ +\+\d+ +@@/,/^@@ +-\d+ +\+\d+ +@@/,/^\*\*\* +\d+,\d+ +\*\*\*\*$/,/^--- +\d+,\d+ +----$/)},{className:"comment",variants:[{begin:i.either(/Index: /,/^index/,/={3,}/,/^-{3}/,/^\*{3} /,/^\+{3}/,/^diff --git/),end:/$/},{match:/^\*{15}$/}]},{className:"addition",begin:/^\+/,end:/$/},{className:"deletion",begin:/^-/,end:/$/},{className:"addition",begin:/^!/,end:/$/}]}}function oz(e){const u={keyword:["break","case","chan","const","continue","default","defer","else","fallthrough","for","func","go","goto","if","import","interface","map","package","range","return","select","struct","switch","type","var"],type:["bool","byte","complex64","complex128","error","float32","float64","int8","int16","int32","int64","string","uint8","uint16","uint32","uint64","int","uint","uintptr","rune"],literal:["true","false","iota","nil"],built_in:["append","cap","close","complex","copy","imag","len","make","new","panic","print","println","real","recover","delete"]};return{name:"Go",aliases:["golang"],keywords:u,illegal:"</",contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"string",variants:[e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,{begin:"`",end:"`"}]},{className:"number",variants:[{match:/-?\b0[xX]\.[a-fA-F0-9](_?[a-fA-F0-9])*[pP][+-]?\d(_?\d)*i?/,relevance:0},{match:/-?\b0[xX](_?[a-fA-F0-9])+((\.([a-fA-F0-9](_?[a-fA-F0-9])*)?)?[pP][+-]?\d(_?\d)*)?i?/,relevance:0},{match:/-?\b0[oO](_?[0-7])*i?/,relevance:0},{match:/-?\.\d(_?\d)*([eE][+-]?\d(_?\d)*)?i?/,relevance:0},{match:/-?\b\d(_?\d)*(\.(\d(_?\d)*)?)?([eE][+-]?\d(_?\d)*)?i?/,relevance:0}]},{begin:/:=/},{className:"function",beginKeywords:"func",end:"\\s*(\\{|$)",excludeEnd:!0,contains:[e.TITLE_MODE,{className:"params",begin:/\(/,end:/\)/,endsParent:!0,keywords:u,illegal:/["']/}]}]}}function cz(e){const i=e.regex,a=/[_A-Za-z][_0-9A-Za-z]*/;return{name:"GraphQL",aliases:["gql"],case_insensitive:!0,disableAutodetect:!1,keywords:{keyword:["query","mutation","subscription","type","input","schema","directive","interface","union","scalar","fragment","enum","on"],literal:["true","false","null"]},contains:[e.HASH_COMMENT_MODE,e.QUOTE_STRING_MODE,e.NUMBER_MODE,{scope:"punctuation",match:/[.]{3}/,relevance:0},{scope:"punctuation",begin:/[\!\(\)\:\=\[\]\{\|\}]{1}/,relevance:0},{scope:"variable",begin:/\$/,end:/\W/,excludeEnd:!0,relevance:0},{scope:"meta",match:/@\w+/,excludeEnd:!0},{scope:"symbol",begin:i.concat(a,i.lookahead(/\s*:/)),relevance:0}],illegal:[/[;<']/,/BEGIN/]}}function uz(e){const i=e.regex,a={className:"number",relevance:0,variants:[{begin:/([+-]+)?[\d]+_[\d_]+/},{begin:e.NUMBER_RE}]},s=e.COMMENT();s.variants=[{begin:/;/,end:/$/},{begin:/#/,end:/$/}];const o={className:"variable",variants:[{begin:/\$[\w\d"][\w\d_]*/},{begin:/\$\{(.*?)\}/}]},u={className:"literal",begin:/\bon|off|true|false|yes|no\b/},d={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:"'''",end:"'''",relevance:10},{begin:'"""',end:'"""',relevance:10},{begin:'"',end:'"'},{begin:"'",end:"'"}]},p={begin:/\[/,end:/\]/,contains:[s,u,o,d,a,"self"],relevance:0},m=/[A-Za-z0-9_-]+/,g=/"(\\"|[^"])*"/,x=/'[^']*'/,b=i.either(m,g,x),v=i.concat(b,"(\\s*\\.\\s*",b,")*",i.lookahead(/\s*=\s*[^#\s]/));return{name:"TOML, also INI",aliases:["toml"],case_insensitive:!0,illegal:/\S/,contains:[s,{className:"section",begin:/\[+/,end:/\]+/},{begin:v,className:"attr",starts:{end:/$/,contains:[s,p,u,o,d,a]}}]}}var Js="[0-9](_*[0-9])*",fu=`\\.(${Js})`,pu="[0-9a-fA-F](_*[0-9a-fA-F])*",G0={className:"number",variants:[{begin:`(\\b(${Js})((${fu})|\\.)?|(${fu}))[eE][+-]?(${Js})[fFdD]?\\b`},{begin:`\\b(${Js})((${fu})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${fu})[fFdD]?\\b`},{begin:`\\b(${Js})[fFdD]\\b`},{begin:`\\b0[xX]((${pu})\\.?|(${pu})?\\.(${pu}))[pP][+-]?(${Js})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${pu})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function Yk(e,i,a){return a===-1?"":e.replace(i,s=>Yk(e,i,a-1))}function dz(e){const i=e.regex,a="[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*",s=a+Yk("(?:<"+a+"~~~(?:\\s*,\\s*"+a+"~~~)*>)?",/~~~/g,2),m={keyword:["synchronized","abstract","private","var","static","if","const ","for","while","strictfp","finally","protected","import","native","final","void","enum","else","break","transient","catch","instanceof","volatile","case","assert","package","default","public","try","switch","continue","throws","protected","public","private","module","requires","exports","do","sealed","yield","permits","goto","when"],literal:["false","true","null"],type:["char","boolean","long","float","int","byte","short","double"],built_in:["super","this"]},g={className:"meta",begin:"@"+a,contains:[{begin:/\(/,end:/\)/,contains:["self"]}]},x={className:"params",begin:/\(/,end:/\)/,keywords:m,relevance:0,contains:[e.C_BLOCK_COMMENT_MODE],endsParent:!0};return{name:"Java",aliases:["jsp"],keywords:m,illegal:/<\/|#/,contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),{begin:/import java\.[a-z]+\./,keywords:"import",relevance:2},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{begin:/"""/,end:/"""/,className:"string",contains:[e.BACKSLASH_ESCAPE]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{match:[/\b(?:class|interface|enum|extends|implements|new)/,/\s+/,a],className:{1:"keyword",3:"title.class"}},{match:/non-sealed/,scope:"keyword"},{begin:[i.concat(/(?!else)/,a),/\s+/,a,/\s+/,/=(?!=)/],className:{1:"type",3:"variable",5:"operator"}},{begin:[/record/,/\s+/,a],className:{1:"keyword",3:"title.class"},contains:[x,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:"new throw return else",relevance:0},{begin:["(?:"+s+"\\s+)",e.UNDERSCORE_IDENT_RE,/\s*(?=\()/],className:{2:"title.function"},keywords:m,contains:[{className:"params",begin:/\(/,end:/\)/,keywords:m,relevance:0,contains:[g,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,G0,e.C_BLOCK_COMMENT_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},G0,g]}}const Y0="[A-Za-z$_][0-9A-Za-z$_]*",fz=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends","using"],pz=["true","false","null","undefined","NaN","Infinity"],Kk=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],Vk=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],Xk=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],hz=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],mz=[].concat(Xk,Kk,Vk);function gz(e){const i=e.regex,a=($,{after:de})=>{const O="</"+$[0].slice(1);return $.input.indexOf(O,de)!==-1},s=Y0,o={begin:"<>",end:"</>"},u=/<[A-Za-z0-9\\._:-]+\s*\/>/,d={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:($,de)=>{const O=$[0].length+$.index,Ie=$.input[O];if(Ie==="<"||Ie===","){de.ignoreMatch();return}Ie===">"&&(a($,{after:O})||de.ignoreMatch());let fe;const T=$.input.substring(O);if(fe=T.match(/^\s*=/)){de.ignoreMatch();return}if((fe=T.match(/^\s+extends\s+/))&&fe.index===0){de.ignoreMatch();return}}},p={$pattern:Y0,keyword:fz,literal:pz,built_in:mz,"variable.language":hz},m="[0-9](_?[0-9])*",g=`\\.(${m})`,x="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",b={className:"number",variants:[{begin:`(\\b(${x})((${g})|\\.)?|(${g}))[eE][+-]?(${m})\\b`},{begin:`\\b(${x})\\b((${g})\\b|\\.)?|(${g})\\b`},{begin:"\\b(0|[1-9](_?[0-9])*)n\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{begin:"\\b0[0-7]+n?\\b"}],relevance:0},v={className:"subst",begin:"\\$\\{",end:"\\}",keywords:p,contains:[]},y={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,v],subLanguage:"xml"}},k={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,v],subLanguage:"css"}},N={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,v],subLanguage:"graphql"}},_={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,v]},C={className:"comment",variants:[e.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:!0,excludeBegin:!0,relevance:0},{className:"variable",begin:s+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]},M=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,y,k,N,_,{match:/\$\d+/},b];v.contains=M.concat({begin:/\{/,end:/\}/,keywords:p,contains:["self"].concat(M)});const I=[].concat(C,v.contains),F=I.concat([{begin:/(\s*)\(/,end:/\)/,keywords:p,contains:["self"].concat(I)}]),R={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:p,contains:F},A={variants:[{match:[/class/,/\s+/,s,/\s+/,/extends/,/\s+/,i.concat(s,"(",i.concat(/\./,s),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,s],scope:{1:"keyword",3:"title.class"}}]},L={relevance:0,match:i.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:"title.class",keywords:{_:[...Kk,...Vk]}},V={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},D={variants:[{match:[/function/,/\s+/,s,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[R],illegal:/%/},U={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function ee($){return i.concat("(?!",$.join("|"),")")}const ue={match:i.concat(/\b/,ee([...Xk,"super","import","await"].map($=>`${$}\\s*\\(`)),s,i.lookahead(/\s*\(/)),className:"title.function",relevance:0},re={begin:i.concat(/\./,i.lookahead(i.concat(s,/(?![0-9A-Za-z$_(])/))),end:s,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},ne={match:[/get|set/,/\s+/,s,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},R]},P="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+e.UNDERSCORE_IDENT_RE+")\\s*=>",ae={match:[/const|var|let/,/\s+/,s,/\s*/,/=\s*/,/(async\s*)?/,i.lookahead(P)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[R]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:p,exports:{PARAMS_CONTAINS:F,CLASS_REFERENCE:L},illegal:/#(?![$_A-Za-z])/,contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),V,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,y,k,N,_,C,{match:/\$\d+/},b,L,{scope:"attr",match:s+i.lookahead(":"),relevance:0},ae,{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[C,e.REGEXP_MODE,{className:"function",begin:P,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:e.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:p,contains:F}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:o.begin,end:o.end},{match:u},{begin:d.begin,"on:begin":d.isTrulyOpeningTag,end:d.end}],subLanguage:"xml",contains:[{begin:d.begin,end:d.end,skip:!0,contains:["self"]}]}]},D,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[R,e.inherit(e.TITLE_MODE,{begin:s,className:"title.function"})]},{match:/\.\.\./,relevance:0},re,{match:"\\$"+s,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[R]},ue,U,A,ne,{match:/\$[(.]/}]}}const bz="([-+]?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)|NaN|[-+]?Infinity",xz={scope:"number",match:bz,relevance:0};function yz(e){const i={className:"attr",begin:/(("(\\.|[^\\"\r\n])*")|('(\\.|[^\\'\r\n])*'))(?=\s*:)/,relevance:1.01},a={match:/[{}[\],:]/,className:"punctuation",relevance:0},s=["true","false","null"],o={scope:"literal",beginKeywords:s.join(" ")};return{name:"JSON",aliases:["jsonc","json5"],keywords:{literal:s},contains:[i,a,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,o,xz,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}var Ws="[0-9](_*[0-9])*",hu=`\\.(${Ws})`,mu="[0-9a-fA-F](_*[0-9a-fA-F])*",vz={className:"number",variants:[{begin:`(\\b(${Ws})((${hu})|\\.)?|(${hu}))[eE][+-]?(${Ws})[fFdD]?\\b`},{begin:`\\b(${Ws})((${hu})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${hu})[fFdD]?\\b`},{begin:`\\b(${Ws})[fFdD]\\b`},{begin:`\\b0[xX]((${mu})\\.?|(${mu})?\\.(${mu}))[pP][+-]?(${Ws})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${mu})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function wz(e){const i={keyword:"abstract as val var vararg get set class object open private protected public noinline crossinline dynamic final enum if else do while for when throw try catch finally import package is in fun override companion reified inline lateinit init interface annotation data sealed internal infix operator out by constructor super tailrec where const inner suspend typealias external expect actual",built_in:"Byte Short Char Int Long Boolean Float Double Void Unit Nothing",literal:"true false null"},a={className:"keyword",begin:/\b(break|continue|return|this)\b/,starts:{contains:[{className:"symbol",begin:/@\w+/}]}},s={className:"symbol",begin:e.UNDERSCORE_IDENT_RE+"@"},o={className:"subst",begin:/\$\{/,end:/\}/,contains:[e.C_NUMBER_MODE]},u={className:"variable",begin:"\\$"+e.UNDERSCORE_IDENT_RE},d={className:"string",variants:[{begin:'"""',end:'"""(?=[^"])',contains:[u,o]},{begin:"'",end:"'",illegal:/\n/,contains:[e.BACKSLASH_ESCAPE]},{begin:'"',end:'"',illegal:/\n/,contains:[e.BACKSLASH_ESCAPE,u,o]}]};o.contains.push(d);const p={className:"meta",begin:"@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\s*:(?:\\s*"+e.UNDERSCORE_IDENT_RE+")?"},m={className:"meta",begin:"@"+e.UNDERSCORE_IDENT_RE,contains:[{begin:/\(/,end:/\)/,contains:[e.inherit(d,{className:"string"}),"self"]}]},g=vz,x=e.COMMENT("/\\*","\\*/",{contains:[e.C_BLOCK_COMMENT_MODE]}),b={variants:[{className:"type",begin:e.UNDERSCORE_IDENT_RE},{begin:/\(/,end:/\)/,contains:[]}]},v=b;return v.variants[1].contains=[b],b.variants[1].contains=[v],{name:"Kotlin",aliases:["kt","kts"],keywords:i,contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"}]}),e.C_LINE_COMMENT_MODE,x,a,s,p,m,{className:"function",beginKeywords:"fun",end:"[(]|$",returnBegin:!0,excludeEnd:!0,keywords:i,relevance:5,contains:[{begin:e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,relevance:0,contains:[e.UNDERSCORE_TITLE_MODE]},{className:"type",begin:/</,end:/>/,keywords:"reified",relevance:0},{className:"params",begin:/\(/,end:/\)/,endsParent:!0,keywords:i,relevance:0,contains:[{begin:/:/,end:/[=,\/]/,endsWithParent:!0,contains:[b,e.C_LINE_COMMENT_MODE,x],relevance:0},e.C_LINE_COMMENT_MODE,x,p,m,d,e.C_NUMBER_MODE]},x]},{begin:[/class|interface|trait/,/\s+/,e.UNDERSCORE_IDENT_RE],beginScope:{3:"title.class"},keywords:"class interface trait",end:/[:\{(]|$/,excludeEnd:!0,illegal:"extends implements",contains:[{beginKeywords:"public protected internal private constructor"},e.UNDERSCORE_TITLE_MODE,{className:"type",begin:/</,end:/>/,excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:/[,:]\s*/,end:/[<\(,){\s]|$/,excludeBegin:!0,returnEnd:!0},p,m]},d,{className:"meta",begin:"^#!/usr/bin/env",end:"$",illegal:`
|
|
272
|
+
`},g]}}const kz=e=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:e.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},UNICODE_RANGE:{scope:"number",begin:/\b[Uu]\+[0-9A-Fa-f][0-9A-Fa-f?]{0,4}(-[0-9A-Fa-f][0-9A-Fa-f]{0,4})?/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:e.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z_][A-Za-z0-9_-]*/}}),Ez=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","optgroup","option","p","picture","q","quote","samp","section","select","source","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],_z=["defs","g","marker","mask","pattern","svg","switch","symbol","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feFlood","feGaussianBlur","feImage","feMerge","feMorphology","feOffset","feSpecularLighting","feTile","feTurbulence","linearGradient","radialGradient","stop","circle","ellipse","image","line","path","polygon","polyline","rect","text","use","textPath","tspan","foreignObject","clipPath"],Nz=[...Ez,..._z],Sz=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"].sort().reverse(),Zk=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"].sort().reverse(),Qk=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),Tz=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","unicode-range","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse(),Cz=Zk.concat(Qk).sort().reverse();function Az(e){const i=kz(e),a=Cz,s="and or not only",o="[\\w-]+",u="("+o+"|@\\{"+o+"\\})",d=[],p=[],m=function(M){return{className:"string",begin:"~?"+M+".*?"+M}},g=function(M,I,F){return{className:M,begin:I,relevance:F}},x={$pattern:/[a-z-]+/,keyword:s,attribute:Sz.join(" ")},b={begin:"\\(",end:"\\)",contains:p,keywords:x,relevance:0};p.push(e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,m("'"),m('"'),i.CSS_NUMBER_MODE,{begin:"(url|data-uri)\\(",starts:{className:"string",end:"[\\)\\n]",excludeEnd:!0}},i.UNICODE_RANGE,i.HEXCOLOR,b,g("variable","@@?"+o,10),g("variable","@\\{"+o+"\\}"),g("built_in","~?`[^`]*?`"),{className:"attribute",begin:o+"\\s*:",end:":",returnBegin:!0,excludeEnd:!0},i.IMPORTANT,{beginKeywords:"and not"},i.FUNCTION_DISPATCH);const v=p.concat({begin:/\{/,end:/\}/,contains:d}),y={beginKeywords:"when",endsWithParent:!0,contains:[{beginKeywords:"and not"}].concat(p)},k={begin:u+"\\s*:",returnBegin:!0,end:/[;}]/,relevance:0,contains:[{begin:/-(webkit|moz|ms|o)-/},i.CSS_VARIABLE,{className:"attribute",begin:"\\b("+Tz.join("|")+")\\b",end:/(?=:)/,starts:{endsWithParent:!0,illegal:"[<=$]",relevance:0,contains:p}}]},N={className:"keyword",begin:"@(import|media|charset|font-face|(-[a-z]+-)?keyframes|supports|document|namespace|page|viewport|host)\\b",starts:{end:"[;{}]",keywords:x,returnEnd:!0,contains:p,relevance:0}},_={className:"variable",variants:[{begin:"@"+o+"\\s*:",relevance:15},{begin:"@"+o}],starts:{end:"[;}]",returnEnd:!0,contains:v}},S={variants:[{begin:"[\\.#:&\\[>]",end:"[;{}]"},{begin:u,end:/\{/}],returnBegin:!0,returnEnd:!0,illegal:`[<='$"]`,relevance:0,contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,y,g("keyword","all\\b"),g("variable","@\\{"+o+"\\}"),{begin:"\\b("+Nz.join("|")+")\\b",className:"selector-tag"},i.CSS_NUMBER_MODE,g("selector-tag",u,0),g("selector-id","#"+u),g("selector-class","\\."+u,0),g("selector-tag","&",0),i.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",begin:":("+Zk.join("|")+")"},{className:"selector-pseudo",begin:":(:)?("+Qk.join("|")+")"},{begin:/\(/,end:/\)/,relevance:0,contains:v},{begin:"!important"},i.FUNCTION_DISPATCH]},C={begin:o+`:(:)?(${a.join("|")})`,returnBegin:!0,contains:[S]};return d.push(e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,N,_,C,k,S,y,i.FUNCTION_DISPATCH),{name:"Less",case_insensitive:!0,illegal:`[=>'/<($"]`,contains:d}}function Oz(e){const i="\\[=*\\[",a="\\]=*\\]",s={begin:i,end:a,contains:["self"]},o=[e.COMMENT("--(?!"+i+")","$"),e.COMMENT("--"+i,a,{contains:[s],relevance:10})];return{name:"Lua",aliases:["pluto"],keywords:{$pattern:e.UNDERSCORE_IDENT_RE,literal:"true false nil",keyword:"and break do else elseif end for goto if in local not or repeat return then until while",built_in:"_G _ENV _VERSION __index __newindex __mode __call __metatable __tostring __len __gc __add __sub __mul __div __mod __pow __concat __unm __eq __lt __le assert collectgarbage dofile error getfenv getmetatable ipairs load loadfile loadstring module next pairs pcall print rawequal rawget rawset require select setfenv setmetatable tonumber tostring type unpack xpcall arg self coroutine resume yield status wrap create running debug getupvalue debug sethook getmetatable gethook setmetatable setlocal traceback setfenv getinfo setupvalue getlocal getregistry getfenv io lines write close flush open output type read stderr stdin input stdout popen tmpfile math log max acos huge ldexp pi cos tanh pow deg tan cosh sinh random randomseed frexp ceil floor rad abs sqrt modf asin min mod fmod log10 atan2 exp sin atan os exit setlocale date getenv difftime remove time clock tmpname rename execute package preload loadlib loaded loaders cpath config path seeall string sub upper len gfind rep find match char dump gmatch reverse byte format gsub lower table setn insert getn foreachi maxn foreach concat sort remove"},contains:o.concat([{className:"function",beginKeywords:"function",end:"\\)",contains:[e.inherit(e.TITLE_MODE,{begin:"([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*"}),{className:"params",begin:"\\(",endsWithParent:!0,contains:o}].concat(o)},e.C_NUMBER_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{className:"string",begin:i,end:a,contains:[s],relevance:5}])}}function Mz(e){const i={className:"variable",variants:[{begin:"\\$\\("+e.UNDERSCORE_IDENT_RE+"\\)",contains:[e.BACKSLASH_ESCAPE]},{begin:/\$[@%<?\^\+\*]/}]},a={className:"string",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,i]},s={className:"variable",begin:/\$\([\w-]+\s/,end:/\)/,keywords:{built_in:"subst patsubst strip findstring filter filter-out sort word wordlist firstword lastword dir notdir suffix basename addsuffix addprefix join wildcard realpath abspath error warning shell origin flavor foreach if or and call eval file value"},contains:[i,a]},o={begin:"^"+e.UNDERSCORE_IDENT_RE+"\\s*(?=[:+?]?=)"},u={className:"meta",begin:/^\.PHONY:/,end:/$/,keywords:{$pattern:/[\.\w]+/,keyword:".PHONY"}},d={className:"section",begin:/^[^\s]+:/,end:/$/,contains:[i]};return{name:"Makefile",aliases:["mk","mak","make"],keywords:{$pattern:/[\w-]+/,keyword:"define endef undefine ifdef ifndef ifeq ifneq else endif include -include sinclude override export unexport private vpath"},contains:[e.HASH_COMMENT_MODE,i,a,s,o,u,d]}}function jz(e){const i=e.regex,a={begin:/<\/?[A-Za-z_]/,end:">",subLanguage:"xml",relevance:0},s={begin:"^[-\\*]{3,}",end:"$"},o={className:"code",variants:[{begin:"(`{3,})[^`](.|\\n)*?\\1`*[ ]*"},{begin:"(~{3,})[^~](.|\\n)*?\\1~*[ ]*"},{begin:"```",end:"```+[ ]*$"},{begin:"~~~",end:"~~~+[ ]*$"},{begin:"`.+?`"},{begin:"(?=^( {4}|\\t))",contains:[{begin:"^( {4}|\\t)",end:"(\\n)$"}],relevance:0}]},u={className:"bullet",begin:"^[ ]*([*+-]|(\\d+\\.))(?=\\s+)",end:"\\s+",excludeEnd:!0},d={begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]},p=/[A-Za-z][A-Za-z0-9+.-]*/,m={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0},{begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/,relevance:2},{begin:i.concat(/\[.+?\]\(/,p,/:\/\/.*?\)/),relevance:2},{begin:/\[.+?\]\([./?&#].*?\)/,relevance:1},{begin:/\[.*?\]\(.*?\)/,relevance:0}],returnBegin:!0,contains:[{match:/\[(?=\])/},{className:"string",relevance:0,begin:"\\[",end:"\\]",excludeBegin:!0,returnEnd:!0},{className:"link",relevance:0,begin:"\\]\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0},{className:"symbol",relevance:0,begin:"\\]\\[",end:"\\]",excludeBegin:!0,excludeEnd:!0}]},g={className:"strong",contains:[],variants:[{begin:/_{2}(?!\s)/,end:/_{2}/},{begin:/\*{2}(?!\s)/,end:/\*{2}/}]},x={className:"emphasis",contains:[],variants:[{begin:/\*(?![*\s])/,end:/\*/},{begin:/_(?![_\s])/,end:/_/,relevance:0}]},b=e.inherit(g,{contains:[]}),v=e.inherit(x,{contains:[]});g.contains.push(v),x.contains.push(b);let y=[a,m];return[g,x,b,v].forEach(S=>{S.contains=S.contains.concat(y)}),y=y.concat(g,x),{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[{className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:y},{begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n",contains:y}]}]},a,u,g,x,{className:"quote",begin:"^>\\s+",contains:y,end:"$"},o,s,m,d,{scope:"literal",match:/&([a-zA-Z0-9]+|#[0-9]{1,7}|#[Xx][0-9a-fA-F]{1,6});/}]}}function Rz(e){const i={className:"built_in",begin:"\\b(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)\\w+"},a=/[a-zA-Z@][a-zA-Z0-9_]*/,p={"variable.language":["this","super"],$pattern:a,keyword:["while","export","sizeof","typedef","const","struct","for","union","volatile","static","mutable","if","do","return","goto","enum","else","break","extern","asm","case","default","register","explicit","typename","switch","continue","inline","readonly","assign","readwrite","self","@synchronized","id","typeof","nonatomic","IBOutlet","IBAction","strong","weak","copy","in","out","inout","bycopy","byref","oneway","__strong","__weak","__block","__autoreleasing","@private","@protected","@public","@try","@property","@end","@throw","@catch","@finally","@autoreleasepool","@synthesize","@dynamic","@selector","@optional","@required","@encode","@package","@import","@defs","@compatibility_alias","__bridge","__bridge_transfer","__bridge_retained","__bridge_retain","__covariant","__contravariant","__kindof","_Nonnull","_Nullable","_Null_unspecified","__FUNCTION__","__PRETTY_FUNCTION__","__attribute__","getter","setter","retain","unsafe_unretained","nonnull","nullable","null_unspecified","null_resettable","class","instancetype","NS_DESIGNATED_INITIALIZER","NS_UNAVAILABLE","NS_REQUIRES_SUPER","NS_RETURNS_INNER_POINTER","NS_INLINE","NS_AVAILABLE","NS_DEPRECATED","NS_ENUM","NS_OPTIONS","NS_SWIFT_UNAVAILABLE","NS_ASSUME_NONNULL_BEGIN","NS_ASSUME_NONNULL_END","NS_REFINED_FOR_SWIFT","NS_SWIFT_NAME","NS_SWIFT_NOTHROW","NS_DURING","NS_HANDLER","NS_ENDHANDLER","NS_VALUERETURN","NS_VOIDRETURN"],literal:["false","true","FALSE","TRUE","nil","YES","NO","NULL"],built_in:["dispatch_once_t","dispatch_queue_t","dispatch_sync","dispatch_async","dispatch_once"],type:["int","float","char","unsigned","signed","short","long","double","wchar_t","unichar","void","bool","BOOL","id|0","_Bool"]},m={$pattern:a,keyword:["@interface","@class","@protocol","@implementation"]};return{name:"Objective-C",aliases:["mm","objc","obj-c","obj-c++","objective-c++"],keywords:p,illegal:"</",contains:[i,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.C_NUMBER_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,{className:"string",variants:[{begin:'@"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]}]},{className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{keyword:"if else elif endif define undef warning error line pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(e.QUOTE_STRING_MODE,{className:"string"}),{className:"string",begin:/<.*?>/,end:/$/,illegal:"\\n"},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{className:"class",begin:"("+m.keyword.join("|")+")\\b",end:/(\{|$)/,excludeEnd:!0,keywords:m,contains:[e.UNDERSCORE_TITLE_MODE]},{begin:"\\."+e.UNDERSCORE_IDENT_RE,relevance:0}]}}function Dz(e){const i=e.regex,a=["abs","accept","alarm","and","atan2","bind","binmode","bless","break","caller","chdir","chmod","chomp","chop","chown","chr","chroot","class","close","closedir","connect","continue","cos","crypt","dbmclose","dbmopen","defined","delete","die","do","dump","each","else","elsif","endgrent","endhostent","endnetent","endprotoent","endpwent","endservent","eof","eval","exec","exists","exit","exp","fcntl","field","fileno","flock","for","foreach","fork","format","formline","getc","getgrent","getgrgid","getgrnam","gethostbyaddr","gethostbyname","gethostent","getlogin","getnetbyaddr","getnetbyname","getnetent","getpeername","getpgrp","getpriority","getprotobyname","getprotobynumber","getprotoent","getpwent","getpwnam","getpwuid","getservbyname","getservbyport","getservent","getsockname","getsockopt","given","glob","gmtime","goto","grep","gt","hex","if","index","int","ioctl","join","keys","kill","last","lc","lcfirst","length","link","listen","local","localtime","log","lstat","lt","ma","map","method","mkdir","msgctl","msgget","msgrcv","msgsnd","my","ne","next","no","not","oct","open","opendir","or","ord","our","pack","package","pipe","pop","pos","print","printf","prototype","push","q|0","qq","quotemeta","qw","qx","rand","read","readdir","readline","readlink","readpipe","recv","redo","ref","rename","require","reset","return","reverse","rewinddir","rindex","rmdir","say","scalar","seek","seekdir","select","semctl","semget","semop","send","setgrent","sethostent","setnetent","setpgrp","setpriority","setprotoent","setpwent","setservent","setsockopt","shift","shmctl","shmget","shmread","shmwrite","shutdown","sin","sleep","socket","socketpair","sort","splice","split","sprintf","sqrt","srand","stat","state","study","sub","substr","symlink","syscall","sysopen","sysread","sysseek","system","syswrite","tell","telldir","tie","tied","time","times","tr","truncate","uc","ucfirst","umask","undef","unless","unlink","unpack","unshift","untie","until","use","utime","values","vec","wait","waitpid","wantarray","warn","when","while","write","x|0","xor","y|0"],s=/[dualxmsipngr]{0,12}/,o={$pattern:/[\w.]+/,keyword:a.join(" ")},u={className:"subst",begin:"[$@]\\{",end:"\\}",keywords:o},d={begin:/->\{/,end:/\}/},p={scope:"attr",match:/\s+:\s*\w+(\s*\(.*?\))?/},m={scope:"variable",variants:[{begin:/\$\d/},{begin:i.concat(/[$%@](?!")(\^\w\b|#\w+(::\w+)*|\{\w+\}|\w+(::\w*)*)/,"(?![A-Za-z])(?![@$%])")},{begin:/[$%@](?!")[^\s\w{=]|\$=/,relevance:0}],contains:[p]},g={className:"number",variants:[{match:/0?\.[0-9][0-9_]+\b/},{match:/\bv?(0|[1-9][0-9_]*(\.[0-9_]+)?|[1-9][0-9_]*)\b/},{match:/\b0[0-7][0-7_]*\b/},{match:/\b0x[0-9a-fA-F][0-9a-fA-F_]*\b/},{match:/\b0b[0-1][0-1_]*\b/}],relevance:0},x=[e.BACKSLASH_ESCAPE,u,m],b=[/!/,/\//,/\|/,/\?/,/'/,/"/,/#/],v=(N,_,S="\\1")=>{const C=S==="\\1"?S:i.concat(S,_);return i.concat(i.concat("(?:",N,")"),_,/(?:\\.|[^\\\/])*?/,C,/(?:\\.|[^\\\/])*?/,S,s)},y=(N,_,S)=>i.concat(i.concat("(?:",N,")"),_,/(?:\\.|[^\\\/])*?/,S,s),k=[m,e.HASH_COMMENT_MODE,e.COMMENT(/^=\w/,/=cut/,{endsWithParent:!0}),d,{className:"string",contains:x,variants:[{begin:"q[qwxr]?\\s*\\(",end:"\\)",relevance:5},{begin:"q[qwxr]?\\s*\\[",end:"\\]",relevance:5},{begin:"q[qwxr]?\\s*\\{",end:"\\}",relevance:5},{begin:"q[qwxr]?\\s*\\|",end:"\\|",relevance:5},{begin:"q[qwxr]?\\s*<",end:">",relevance:5},{begin:"qw\\s+q",end:"q",relevance:5},{begin:"'",end:"'",contains:[e.BACKSLASH_ESCAPE]},{begin:'"',end:'"'},{begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE]},{begin:/\{\w+\}/,relevance:0},{begin:"-?\\w+\\s*=>",relevance:0}]},g,{begin:"(\\/\\/|"+e.RE_STARTERS_RE+"|\\b(split|return|print|reverse|grep)\\b)\\s*",keywords:"split return print reverse grep",relevance:0,contains:[e.HASH_COMMENT_MODE,{className:"regexp",variants:[{begin:v("s|tr|y",i.either(...b,{capture:!0}))},{begin:v("s|tr|y","\\(","\\)")},{begin:v("s|tr|y","\\[","\\]")},{begin:v("s|tr|y","\\{","\\}")}],relevance:2},{className:"regexp",variants:[{begin:/(m|qr)\/\//,relevance:0},{begin:y("(?:m|qr)?",/\//,/\//)},{begin:y("m|qr",i.either(...b,{capture:!0}),/\1/)},{begin:y("m|qr",/\(/,/\)/)},{begin:y("m|qr",/\[/,/\]/)},{begin:y("m|qr",/\{/,/\}/)}]}]},{className:"function",beginKeywords:"sub method",end:"(\\s*\\(.*?\\))?[;{]",excludeEnd:!0,relevance:5,contains:[e.TITLE_MODE,p]},{className:"class",beginKeywords:"class",end:"[;{]",excludeEnd:!0,relevance:5,contains:[e.TITLE_MODE,p,g]},{begin:"-\\w\\b",relevance:0},{begin:"^__DATA__$",end:"^__END__$",subLanguage:"mojolicious",contains:[{begin:"^@@.*",end:"$",className:"comment"}]}];return u.contains=k,d.contains=k,{name:"Perl",aliases:["pl","pm"],keywords:o,contains:k}}function zz(e){const i=e.regex,a=/(?![A-Za-z0-9])(?![$])/,s=i.concat(/[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/,a),o=i.concat(/(\\?[A-Z][a-z0-9_\x7f-\xff]+|\\?[A-Z]+(?=[A-Z][a-z0-9_\x7f-\xff])){1,}/,a),u=i.concat(/[A-Z]+/,a),d={scope:"variable",match:"\\$+"+s},p={scope:"meta",variants:[{begin:/<\?php/,relevance:10},{begin:/<\?=/},{begin:/<\?/,relevance:.1},{begin:/\?>/}]},m={scope:"subst",variants:[{begin:/\$\w+/},{begin:/\{\$/,end:/\}/}]},g=e.inherit(e.APOS_STRING_MODE,{illegal:null}),x=e.inherit(e.QUOTE_STRING_MODE,{illegal:null,contains:e.QUOTE_STRING_MODE.contains.concat(m)}),b={begin:/<<<[ \t]*(?:(\w+)|"(\w+)")\n/,end:/[ \t]*(\w+)\b/,contains:e.QUOTE_STRING_MODE.contains.concat(m),"on:begin":(re,ne)=>{ne.data._beginMatch=re[1]||re[2]},"on:end":(re,ne)=>{ne.data._beginMatch!==re[1]&&ne.ignoreMatch()}},v=e.END_SAME_AS_BEGIN({begin:/<<<[ \t]*'(\w+)'\n/,end:/[ \t]*(\w+)\b/}),y=`[
|
|
273
|
+
]`,k={scope:"string",variants:[x,g,b,v]},N={scope:"number",variants:[{begin:"\\b0[bB][01]+(?:_[01]+)*\\b"},{begin:"\\b0[oO][0-7]+(?:_[0-7]+)*\\b"},{begin:"\\b0[xX][\\da-fA-F]+(?:_[\\da-fA-F]+)*\\b"},{begin:"(?:\\b\\d+(?:_\\d+)*(\\.(?:\\d+(?:_\\d+)*))?|\\B\\.\\d+)(?:[eE][+-]?\\d+)?"}],relevance:0},_=["false","null","true"],S=["__CLASS__","__DIR__","__FILE__","__FUNCTION__","__COMPILER_HALT_OFFSET__","__LINE__","__METHOD__","__NAMESPACE__","__TRAIT__","die","echo","exit","include","include_once","print","require","require_once","array","abstract","and","as","binary","bool","boolean","break","callable","case","catch","class","clone","const","continue","declare","default","do","double","else","elseif","empty","enddeclare","endfor","endforeach","endif","endswitch","endwhile","enum","eval","extends","final","finally","float","for","foreach","from","global","goto","if","implements","instanceof","insteadof","int","integer","interface","isset","iterable","list","match|0","mixed","new","never","object","or","private","protected","public","readonly","real","return","string","switch","throw","trait","try","unset","use","var","void","while","xor","yield"],C=["Error|0","AppendIterator","ArgumentCountError","ArithmeticError","ArrayIterator","ArrayObject","AssertionError","BadFunctionCallException","BadMethodCallException","CachingIterator","CallbackFilterIterator","CompileError","Countable","DirectoryIterator","DivisionByZeroError","DomainException","EmptyIterator","ErrorException","Exception","FilesystemIterator","FilterIterator","GlobIterator","InfiniteIterator","InvalidArgumentException","IteratorIterator","LengthException","LimitIterator","LogicException","MultipleIterator","NoRewindIterator","OutOfBoundsException","OutOfRangeException","OuterIterator","OverflowException","ParentIterator","ParseError","RangeException","RecursiveArrayIterator","RecursiveCachingIterator","RecursiveCallbackFilterIterator","RecursiveDirectoryIterator","RecursiveFilterIterator","RecursiveIterator","RecursiveIteratorIterator","RecursiveRegexIterator","RecursiveTreeIterator","RegexIterator","RuntimeException","SeekableIterator","SplDoublyLinkedList","SplFileInfo","SplFileObject","SplFixedArray","SplHeap","SplMaxHeap","SplMinHeap","SplObjectStorage","SplObserver","SplPriorityQueue","SplQueue","SplStack","SplSubject","SplTempFileObject","TypeError","UnderflowException","UnexpectedValueException","UnhandledMatchError","ArrayAccess","BackedEnum","Closure","Fiber","Generator","Iterator","IteratorAggregate","Serializable","Stringable","Throwable","Traversable","UnitEnum","WeakReference","WeakMap","Directory","__PHP_Incomplete_Class","parent","php_user_filter","self","static","stdClass"],I={keyword:S,literal:(re=>{const ne=[];return re.forEach(P=>{ne.push(P),P.toLowerCase()===P?ne.push(P.toUpperCase()):ne.push(P.toLowerCase())}),ne})(_),built_in:C},F=re=>re.map(ne=>ne.replace(/\|\d+$/,"")),R={variants:[{match:[/new/,i.concat(y,"+"),i.concat("(?!",F(C).join("\\b|"),"\\b)"),o],scope:{1:"keyword",4:"title.class"}}]},A=i.concat(s,"\\b(?!\\()"),L={variants:[{match:[i.concat(/::/,i.lookahead(/(?!class\b)/)),A],scope:{2:"variable.constant"}},{match:[/::/,/class/],scope:{2:"variable.language"}},{match:[o,i.concat(/::/,i.lookahead(/(?!class\b)/)),A],scope:{1:"title.class",3:"variable.constant"}},{match:[o,i.concat("::",i.lookahead(/(?!class\b)/))],scope:{1:"title.class"}},{match:[o,/::/,/class/],scope:{1:"title.class",3:"variable.language"}}]},V={scope:"attr",match:i.concat(s,i.lookahead(":"),i.lookahead(/(?!::)/))},D={relevance:0,begin:/\(/,end:/\)/,keywords:I,contains:[V,d,L,e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE,e.HASH_COMMENT_MODE,k,N,R]},U={relevance:0,match:[/\b/,i.concat("(?!fn\\b|function\\b|",F(S).join("\\b|"),"|",F(C).join("\\b|"),"\\b)"),s,i.concat(y,"*"),i.lookahead(/(?=\()/)],scope:{3:"title.function.invoke"},contains:[D]};D.contains.push(U);const ee=[V,L,e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE,e.HASH_COMMENT_MODE,k,N,R],ue={begin:i.concat(/#\[\s*\\?/,i.either(o,u)),beginScope:"meta",end:/]/,endScope:"meta",keywords:{literal:_,keyword:["new","array"]},contains:[{begin:/\[/,end:/]/,keywords:{literal:_,keyword:["new","array"]},contains:["self",...ee]},...ee,{scope:"meta",variants:[{match:o},{match:u}]}]};return{case_insensitive:!1,keywords:I,contains:[ue,e.HASH_COMMENT_MODE,e.COMMENT("//","$"),e.COMMENT("/\\*","\\*/",{contains:[{scope:"doctag",match:"@[A-Za-z]+"}]}),{match:/__halt_compiler\(\);/,keywords:"__halt_compiler",starts:{scope:"comment",end:e.MATCH_NOTHING_RE,contains:[{match:/\?>/,scope:"meta",endsParent:!0}]}},p,{scope:"variable.language",match:/\$this\b/},d,U,L,{match:[/const/,/\s/,s],scope:{1:"keyword",3:"variable.constant"}},R,{scope:"function",relevance:0,beginKeywords:"fn function",end:/[;{]/,excludeEnd:!0,illegal:"[$%\\[]",contains:[{beginKeywords:"use"},e.UNDERSCORE_TITLE_MODE,{begin:"=>",endsParent:!0},{scope:"params",begin:"\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0,keywords:I,contains:["self",ue,d,L,e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE,e.HASH_COMMENT_MODE,k,N]}]},{scope:"class",variants:[{beginKeywords:"enum",illegal:/[($"]/},{beginKeywords:"class interface trait",illegal:/[:($"]/}],relevance:0,end:/\{/,excludeEnd:!0,contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]},{beginKeywords:"namespace",relevance:0,end:";",illegal:/[.']/,contains:[e.inherit(e.UNDERSCORE_TITLE_MODE,{scope:"title.class"})]},{beginKeywords:"use",relevance:0,end:";",contains:[{match:/\b(as|const|function)\b/,scope:"keyword"},e.UNDERSCORE_TITLE_MODE]},k,N]}}function Lz(e){return{name:"PHP template",subLanguage:"xml",contains:[{begin:/<\?(php|=)?/,end:/\?>/,subLanguage:"php",contains:[{begin:"/\\*",end:"\\*/",skip:!0},{begin:'b"',end:'"',skip:!0},{begin:"b'",end:"'",skip:!0},e.inherit(e.APOS_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0})]}]}}function Iz(e){return{name:"Plain text",aliases:["text","txt"],disableAutodetect:!0}}function Uz(e){const i=e.regex,a=/[\p{XID_Start}_]\p{XID_Continue}*/u,s=["and","as","assert","async","await","break","case","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","in","is","lambda","match","nonlocal|10","not","or","pass","raise","return","try","while","with","yield"],p={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:s,built_in:["__import__","abs","all","any","ascii","bin","bool","breakpoint","bytearray","bytes","callable","chr","classmethod","compile","complex","delattr","dict","dir","divmod","enumerate","eval","exec","filter","float","format","frozenset","getattr","globals","hasattr","hash","help","hex","id","input","int","isinstance","issubclass","iter","len","list","locals","map","max","memoryview","min","next","object","oct","open","ord","pow","print","property","range","repr","reversed","round","set","setattr","slice","sorted","staticmethod","str","sum","super","tuple","type","vars","zip"],literal:["__debug__","Ellipsis","False","None","NotImplemented","True"],type:["Any","Callable","Coroutine","Dict","List","Literal","Generic","Optional","Sequence","Set","Tuple","Type","Union"]},m={className:"meta",begin:/^(>>>|\.\.\.) /},g={className:"subst",begin:/\{/,end:/\}/,keywords:p,illegal:/#/},x={begin:/\{\{/,relevance:0},b={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,m],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,m],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,m,x,g]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,m,x,g]},{begin:/([uU]|[rR])'/,end:/'/,relevance:10},{begin:/([uU]|[rR])"/,end:/"/,relevance:10},{begin:/([bB]|[bB][rR]|[rR][bB])'/,end:/'/},{begin:/([bB]|[bB][rR]|[rR][bB])"/,end:/"/},{begin:/([fF][rR]|[rR][fF]|[fF])'/,end:/'/,contains:[e.BACKSLASH_ESCAPE,x,g]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,x,g]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},v="[0-9](_?[0-9])*",y=`(\\b(${v}))?\\.(${v})|\\b(${v})\\.`,k=`\\b|${s.join("|")}`,N={className:"number",relevance:0,variants:[{begin:`(\\b(${v})|(${y}))[eE][+-]?(${v})[jJ]?(?=${k})`},{begin:`(${y})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${k})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${k})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${k})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${k})`},{begin:`\\b(${v})[jJ](?=${k})`}]},_={className:"comment",begin:i.lookahead(/# type:/),end:/$/,keywords:p,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},S={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:p,contains:["self",m,N,b,e.HASH_COMMENT_MODE]}]};return g.contains=[b,N,m],{name:"Python",aliases:["py","gyp","ipython"],unicodeRegex:!0,keywords:p,illegal:/(<\/|\?)|=>/,contains:[m,N,{scope:"variable.language",match:/\bself\b/},{beginKeywords:"if",relevance:0},{match:/\bor\b/,scope:"keyword"},b,_,e.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,a],scope:{1:"keyword",3:"title.function"},contains:[S]},{variants:[{match:[/\bclass/,/\s+/,a,/\s*/,/\(\s*/,a,/\s*\)/]},{match:[/\bclass/,/\s+/,a]}],scope:{1:"keyword",3:"title.class",6:"title.class.inherited"}},{className:"meta",begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[N,S,b]}]}}function Bz(e){return{aliases:["pycon"],contains:[{className:"meta.prompt",starts:{end:/ |$/,starts:{end:"$",subLanguage:"python"}},variants:[{begin:/^>>>(?=[ ]|$)/},{begin:/^\.\.\.(?=[ ]|$)/}]}]}}function $z(e){const i=e.regex,a=/(?:(?:[a-zA-Z]|\.[._a-zA-Z])[._a-zA-Z0-9]*)|\.(?!\d)/,s=i.either(/0[xX][0-9a-fA-F]+\.[0-9a-fA-F]*[pP][+-]?\d+i?/,/0[xX][0-9a-fA-F]+(?:[pP][+-]?\d+)?[Li]?/,/(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?[Li]?/),o=/[=!<>:]=|\|\||&&|:::?|<-|<<-|->>|->|\|>|[-+*\/?!$&|:<=>@^~]|\*\*/,u=i.either(/[()]/,/[{}]/,/\[\[/,/[[\]]/,/\\/,/,/);return{name:"R",keywords:{$pattern:a,keyword:"function if in break next repeat else for while",literal:"NULL NA TRUE FALSE Inf NaN NA_integer_|10 NA_real_|10 NA_character_|10 NA_complex_|10",built_in:"LETTERS letters month.abb month.name pi T F abs acos acosh all any anyNA Arg as.call as.character as.complex as.double as.environment as.integer as.logical as.null.default as.numeric as.raw asin asinh atan atanh attr attributes baseenv browser c call ceiling class Conj cos cosh cospi cummax cummin cumprod cumsum digamma dim dimnames emptyenv exp expression floor forceAndCall gamma gc.time globalenv Im interactive invisible is.array is.atomic is.call is.character is.complex is.double is.environment is.expression is.finite is.function is.infinite is.integer is.language is.list is.logical is.matrix is.na is.name is.nan is.null is.numeric is.object is.pairlist is.raw is.recursive is.single is.symbol lazyLoadDBfetch length lgamma list log max min missing Mod names nargs nzchar oldClass on.exit pos.to.env proc.time prod quote range Re rep retracemem return round seq_along seq_len seq.int sign signif sin sinh sinpi sqrt standardGeneric substitute sum switch tan tanh tanpi tracemem trigamma trunc unclass untracemem UseMethod xtfrm"},contains:[e.COMMENT(/#'/,/$/,{contains:[{scope:"doctag",match:/@examples/,starts:{end:i.lookahead(i.either(/\n^#'\s*(?=@[a-zA-Z]+)/,/\n^(?!#')/)),endsParent:!0}},{scope:"doctag",begin:"@param",end:/$/,contains:[{scope:"variable",variants:[{match:a},{match:/`(?:\\.|[^`\\])+`/}],endsParent:!0}]},{scope:"doctag",match:/@[a-zA-Z]+/},{scope:"keyword",match:/\\[a-zA-Z]+/}]}),e.HASH_COMMENT_MODE,{scope:"string",contains:[e.BACKSLASH_ESCAPE],variants:[e.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\(/,end:/\)(-*)"/}),e.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\{/,end:/\}(-*)"/}),e.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\[/,end:/\](-*)"/}),e.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\(/,end:/\)(-*)'/}),e.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\{/,end:/\}(-*)'/}),e.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\[/,end:/\](-*)'/}),{begin:'"',end:'"',relevance:0},{begin:"'",end:"'",relevance:0}]},{relevance:0,variants:[{scope:{1:"operator",2:"number"},match:[o,s]},{scope:{1:"operator",2:"number"},match:[/%[^%]*%/,s]},{scope:{1:"punctuation",2:"number"},match:[u,s]},{scope:{2:"number"},match:[/[^a-zA-Z0-9._]|^/,s]}]},{scope:{3:"operator"},match:[a,/\s+/,/<-/,/\s+/]},{scope:"operator",relevance:0,variants:[{match:o},{match:/%[^%]*%/}]},{scope:"punctuation",relevance:0,match:u},{begin:"`",end:"`",contains:[{begin:/\\./}]}]}}function Hz(e){const i=e.regex,a="([a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?)",s=i.either(/\b([A-Z]+[a-z0-9]+)+/,/\b([A-Z]+[a-z0-9]+)+[A-Z]+/),o=i.concat(s,/(::\w+)*/),d={"variable.constant":["__FILE__","__LINE__","__ENCODING__"],"variable.language":["self","super"],keyword:["alias","and","begin","BEGIN","break","case","class","defined","do","else","elsif","end","END","ensure","for","if","in","module","next","not","or","redo","require","rescue","retry","return","then","undef","unless","until","when","while","yield",...["include","extend","prepend","public","private","protected","raise","throw"]],built_in:["proc","lambda","attr_accessor","attr_reader","attr_writer","define_method","private_constant","module_function"],literal:["true","false","nil"]},p={className:"doctag",begin:"@[A-Za-z]+"},m={begin:"#<",end:">"},g=[e.COMMENT("#","$",{contains:[p]}),e.COMMENT("^=begin","^=end",{contains:[p],relevance:10}),e.COMMENT("^__END__",e.MATCH_NOTHING_RE)],x={className:"subst",begin:/#\{/,end:/\}/,keywords:d},b={className:"string",contains:[e.BACKSLASH_ESCAPE,x],variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/`/,end:/`/},{begin:/%[qQwWx]?\(/,end:/\)/},{begin:/%[qQwWx]?\[/,end:/\]/},{begin:/%[qQwWx]?\{/,end:/\}/},{begin:/%[qQwWx]?</,end:/>/},{begin:/%[qQwWx]?\//,end:/\//},{begin:/%[qQwWx]?%/,end:/%/},{begin:/%[qQwWx]?-/,end:/-/},{begin:/%[qQwWx]?\|/,end:/\|/},{begin:/\B\?(\\\d{1,3})/},{begin:/\B\?(\\x[A-Fa-f0-9]{1,2})/},{begin:/\B\?(\\u\{?[A-Fa-f0-9]{1,6}\}?)/},{begin:/\B\?(\\M-\\C-|\\M-\\c|\\c\\M-|\\M-|\\C-\\M-)[\x20-\x7e]/},{begin:/\B\?\\(c|C-)[\x20-\x7e]/},{begin:/\B\?\\?\S/},{begin:i.concat(/<<[-~]?'?/,i.lookahead(/(\w+)(?=\W)[^\n]*\n(?:[^\n]*\n)*?\s*\1\b/)),contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,contains:[e.BACKSLASH_ESCAPE,x]})]}]},v="[1-9](_?[0-9])*|0",y="[0-9](_?[0-9])*",k={className:"number",relevance:0,variants:[{begin:`\\b(${v})(\\.(${y}))?([eE][+-]?(${y})|r)?i?\\b`},{begin:"\\b0[dD][0-9](_?[0-9])*r?i?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*r?i?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*r?i?\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*r?i?\\b"},{begin:"\\b0(_?[0-7])+r?i?\\b"}]},N={variants:[{match:/\(\)/},{className:"params",begin:/\(/,end:/(?=\))/,excludeBegin:!0,endsParent:!0,keywords:d}]},R=[b,{variants:[{match:[/class\s+/,o,/\s+<\s+/,o]},{match:[/\b(class|module)\s+/,o]}],scope:{2:"title.class",4:"title.class.inherited"},keywords:d},{match:[/(include|extend)\s+/,o],scope:{2:"title.class"},keywords:d},{relevance:0,match:[o,/\.new[. (]/],scope:{1:"title.class"}},{relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"},{relevance:0,match:s,scope:"title.class"},{match:[/def/,/\s+/,a],scope:{1:"keyword",3:"title.function"},contains:[N]},{begin:e.IDENT_RE+"::"},{className:"symbol",begin:e.UNDERSCORE_IDENT_RE+"(!|\\?)?:",relevance:0},{className:"symbol",begin:":(?!\\s)",contains:[b,{begin:a}],relevance:0},k,{className:"variable",begin:"(\\$\\W)|((\\$|@@?)(\\w+))(?=[^@$?])(?![A-Za-z])(?![@$?'])"},{className:"params",begin:/\|(?!=)/,end:/\|/,excludeBegin:!0,excludeEnd:!0,relevance:0,keywords:d},{begin:"("+e.RE_STARTERS_RE+"|unless)\\s*",keywords:"unless",contains:[{className:"regexp",contains:[e.BACKSLASH_ESCAPE,x],illegal:/\n/,variants:[{begin:"/",end:"/[a-z]*"},{begin:/%r\{/,end:/\}[a-z]*/},{begin:"%r\\(",end:"\\)[a-z]*"},{begin:"%r!",end:"![a-z]*"},{begin:"%r\\[",end:"\\][a-z]*"}]}].concat(m,g),relevance:0}].concat(m,g);x.contains=R,N.contains=R;const D=[{begin:/^\s*=>/,starts:{end:"$",contains:R}},{className:"meta.prompt",begin:"^("+"[>?]>"+"|"+"[\\w#]+\\(\\w+\\):\\d+:\\d+[>*]"+"|"+"(\\w+-)?\\d+\\.\\d+\\.\\d+(p\\d+)?[^\\d][^>]+>"+")(?=[ ])",starts:{end:"$",keywords:d,contains:R}}];return g.unshift(m),{name:"Ruby",aliases:["rb","gemspec","podspec","thor","irb"],keywords:d,illegal:/\/\*/,contains:[e.SHEBANG({binary:"ruby"})].concat(D).concat(g).concat(R)}}function Pz(e){const i=e.regex,a=/(r#)?/,s=i.concat(a,e.UNDERSCORE_IDENT_RE),o=i.concat(a,e.IDENT_RE),u={className:"title.function.invoke",relevance:0,begin:i.concat(/\b/,/(?!let|for|while|if|else|match\b)/,o,i.lookahead(/\s*\(/))},d="([ui](8|16|32|64|128|size)|f(32|64))?",p=["abstract","as","async","await","become","box","break","const","continue","crate","do","dyn","else","enum","extern","false","final","fn","for","if","impl","in","let","loop","macro","match","mod","move","mut","override","priv","pub","ref","return","self","Self","static","struct","super","trait","true","try","type","typeof","union","unsafe","unsized","use","virtual","where","while","yield"],m=["true","false","Some","None","Ok","Err"],g=["drop ","Copy","Send","Sized","Sync","Drop","Fn","FnMut","FnOnce","ToOwned","Clone","Debug","PartialEq","PartialOrd","Eq","Ord","AsRef","AsMut","Into","From","Default","Iterator","Extend","IntoIterator","DoubleEndedIterator","ExactSizeIterator","SliceConcatExt","ToString","assert!","assert_eq!","bitflags!","bytes!","cfg!","col!","concat!","concat_idents!","debug_assert!","debug_assert_eq!","env!","eprintln!","panic!","file!","format!","format_args!","include_bytes!","include_str!","line!","local_data_key!","module_path!","option_env!","print!","println!","select!","stringify!","try!","unimplemented!","unreachable!","vec!","write!","writeln!","macro_rules!","assert_ne!","debug_assert_ne!"],x=["i8","i16","i32","i64","i128","isize","u8","u16","u32","u64","u128","usize","f32","f64","str","char","bool","Box","Option","Result","String","Vec"];return{name:"Rust",aliases:["rs"],keywords:{$pattern:e.IDENT_RE+"!?",type:x,keyword:p,literal:m,built_in:g},illegal:"</",contains:[e.C_LINE_COMMENT_MODE,e.COMMENT("/\\*","\\*/",{contains:["self"]}),e.inherit(e.QUOTE_STRING_MODE,{begin:/b?"/,illegal:null}),{className:"symbol",begin:/'[a-zA-Z_][a-zA-Z0-9_]*(?!')/},{scope:"string",variants:[{begin:/b?r(#*)"(.|\n)*?"\1(?!#)/},{begin:/b?'/,end:/'/,contains:[{scope:"char.escape",match:/\\('|\w|x\w{2}|u\w{4}|U\w{8})/}]}]},{className:"number",variants:[{begin:"\\b0b([01_]+)"+d},{begin:"\\b0o([0-7_]+)"+d},{begin:"\\b0x([A-Fa-f0-9_]+)"+d},{begin:"\\b(\\d[\\d_]*(\\.[0-9_]+)?([eE][+-]?[0-9_]+)?)"+d}],relevance:0},{begin:[/fn/,/\s+/,s],className:{1:"keyword",3:"title.function"}},{className:"meta",begin:"#!?\\[",end:"\\]",contains:[{className:"string",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE]}]},{begin:[/let/,/\s+/,/(?:mut\s+)?/,s],className:{1:"keyword",3:"keyword",4:"variable"}},{begin:[/for/,/\s+/,s,/\s+/,/in/],className:{1:"keyword",3:"variable",5:"keyword"}},{begin:[/type/,/\s+/,s],className:{1:"keyword",3:"title.class"}},{begin:[/(?:trait|enum|struct|union|impl|for)/,/\s+/,s],className:{1:"keyword",3:"title.class"}},{begin:e.IDENT_RE+"::",keywords:{keyword:"Self",built_in:g,type:x}},{className:"punctuation",begin:"->"},u]}}const Fz=e=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:e.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},UNICODE_RANGE:{scope:"number",begin:/\b[Uu]\+[0-9A-Fa-f][0-9A-Fa-f?]{0,4}(-[0-9A-Fa-f][0-9A-Fa-f]{0,4})?/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:e.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z_][A-Za-z0-9_-]*/}}),qz=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","optgroup","option","p","picture","q","quote","samp","section","select","source","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],Gz=["defs","g","marker","mask","pattern","svg","switch","symbol","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feFlood","feGaussianBlur","feImage","feMerge","feMorphology","feOffset","feSpecularLighting","feTile","feTurbulence","linearGradient","radialGradient","stop","circle","ellipse","image","line","path","polygon","polyline","rect","text","use","textPath","tspan","foreignObject","clipPath"],Yz=[...qz,...Gz],Kz=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"].sort().reverse(),Vz=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"].sort().reverse(),Xz=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),Zz=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","unicode-range","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse();function Qz(e){const i=Fz(e),a=Xz,s=Vz,o="@[a-z-]+",u="and or not only",p={className:"variable",begin:"(\\$"+"[a-zA-Z-][a-zA-Z0-9_-]*"+")\\b",relevance:0};return{name:"SCSS",case_insensitive:!0,illegal:"[=/|']",contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,i.CSS_NUMBER_MODE,{className:"selector-id",begin:"#[A-Za-z0-9_-]+",relevance:0},{className:"selector-class",begin:"\\.[A-Za-z0-9_-]+",relevance:0},i.ATTRIBUTE_SELECTOR_MODE,{className:"selector-tag",begin:"\\b("+Yz.join("|")+")\\b",relevance:0},{className:"selector-pseudo",begin:":("+s.join("|")+")"},{className:"selector-pseudo",begin:":(:)?("+a.join("|")+")"},p,{begin:/\(/,end:/\)/,contains:[i.CSS_NUMBER_MODE]},i.CSS_VARIABLE,{className:"attribute",begin:"\\b("+Zz.join("|")+")\\b"},{begin:"\\b(whitespace|wait|w-resize|visible|vertical-text|vertical-ideographic|uppercase|upper-roman|upper-alpha|underline|transparent|top|thin|thick|text|text-top|text-bottom|tb-rl|table-header-group|table-footer-group|sw-resize|super|strict|static|square|solid|small-caps|separate|se-resize|scroll|s-resize|rtl|row-resize|ridge|right|repeat|repeat-y|repeat-x|relative|progress|pointer|overline|outside|outset|oblique|nowrap|not-allowed|normal|none|nw-resize|no-repeat|no-drop|newspaper|ne-resize|n-resize|move|middle|medium|ltr|lr-tb|lowercase|lower-roman|lower-alpha|loose|list-item|line|line-through|line-edge|lighter|left|keep-all|justify|italic|inter-word|inter-ideograph|inside|inset|inline|inline-block|inherit|inactive|ideograph-space|ideograph-parenthesis|ideograph-numeric|ideograph-alpha|horizontal|hidden|help|hand|groove|fixed|ellipsis|e-resize|double|dotted|distribute|distribute-space|distribute-letter|distribute-all-lines|disc|disabled|default|decimal|dashed|crosshair|collapse|col-resize|circle|char|center|capitalize|break-word|break-all|bottom|both|bolder|bold|block|bidi-override|below|baseline|auto|always|all-scroll|absolute|table|table-cell)\\b"},{begin:/:/,end:/[;}{]/,relevance:0,contains:[i.BLOCK_COMMENT,p,i.HEXCOLOR,i.CSS_NUMBER_MODE,i.UNICODE_RANGE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,i.IMPORTANT,i.FUNCTION_DISPATCH]},{begin:"@(page|font-face)",keywords:{$pattern:o,keyword:"@page @font-face"}},{begin:"@",end:"[{;]",returnBegin:!0,keywords:{$pattern:/[a-z-]+/,keyword:u,attribute:Kz.join(" ")},contains:[{begin:o,className:"keyword"},{begin:/[a-z-]+(?=:)/,className:"attribute"},p,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,i.HEXCOLOR,i.CSS_NUMBER_MODE]},i.FUNCTION_DISPATCH]}}function Jz(e){return{name:"Shell Session",aliases:["console","shellsession"],contains:[{className:"meta.prompt",begin:/^\s{0,3}[/~\w\d[\]()@-]*[>%$#][ ]?/,starts:{end:/[^\\](?=\s*$)/,subLanguage:"bash"}}]}}function Wz(e){const i=e.regex,a=e.COMMENT("--","$"),s={scope:"string",variants:[{begin:/'/,end:/'/,contains:[{match:/''/}]}]},o={begin:/"/,end:/"/,contains:[{match:/""/}]},u=["true","false","unknown"],d=["double precision","large object","with timezone","without timezone"],p=["bigint","binary","blob","boolean","char","character","clob","date","dec","decfloat","decimal","float","int","integer","interval","nchar","nclob","national","numeric","real","row","smallint","time","timestamp","varchar","varying","varbinary"],m=["add","asc","collation","desc","final","first","last","view"],g=["abs","acos","all","allocate","alter","and","any","are","array","array_agg","array_max_cardinality","as","asensitive","asin","asymmetric","at","atan","atomic","authorization","avg","begin","begin_frame","begin_partition","between","bigint","binary","blob","boolean","both","by","call","called","cardinality","cascaded","case","cast","ceil","ceiling","char","char_length","character","character_length","check","classifier","clob","close","coalesce","collate","collect","column","commit","condition","connect","constraint","contains","convert","copy","corr","corresponding","cos","cosh","count","covar_pop","covar_samp","create","cross","cube","cume_dist","current","current_catalog","current_date","current_default_transform_group","current_path","current_role","current_row","current_schema","current_time","current_timestamp","current_path","current_role","current_transform_group_for_type","current_user","cursor","cycle","date","day","deallocate","dec","decimal","decfloat","declare","default","define","delete","dense_rank","deref","describe","deterministic","disconnect","distinct","double","drop","dynamic","each","element","else","empty","end","end_frame","end_partition","end-exec","equals","escape","every","except","exec","execute","exists","exp","external","extract","false","fetch","filter","first_value","float","floor","for","foreign","frame_row","free","from","full","function","fusion","get","global","grant","group","grouping","groups","having","hold","hour","identity","in","indicator","initial","inner","inout","insensitive","insert","int","integer","intersect","intersection","interval","into","is","join","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","language","large","last_value","lateral","lead","leading","left","like","like_regex","listagg","ln","local","localtime","localtimestamp","log","log10","lower","match","match_number","match_recognize","matches","max","member","merge","method","min","minute","mod","modifies","module","month","multiset","national","natural","nchar","nclob","new","no","none","normalize","not","nth_value","ntile","null","nullif","numeric","octet_length","occurrences_regex","of","offset","old","omit","on","one","only","open","or","order","out","outer","over","overlaps","overlay","parameter","partition","pattern","per","percent","percent_rank","percentile_cont","percentile_disc","period","portion","position","position_regex","power","precedes","precision","prepare","primary","procedure","ptf","range","rank","reads","real","recursive","ref","references","referencing","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","release","result","return","returns","revoke","right","rollback","rollup","row","row_number","rows","running","savepoint","scope","scroll","search","second","seek","select","sensitive","session_user","set","show","similar","sin","sinh","skip","smallint","some","specific","specifictype","sql","sqlexception","sqlstate","sqlwarning","sqrt","start","static","stddev_pop","stddev_samp","submultiset","subset","substring","substring_regex","succeeds","sum","symmetric","system","system_time","system_user","table","tablesample","tan","tanh","then","time","timestamp","timezone_hour","timezone_minute","to","trailing","translate","translate_regex","translation","treat","trigger","trim","trim_array","true","truncate","uescape","union","unique","unknown","unnest","update","upper","user","using","value","values","value_of","var_pop","var_samp","varbinary","varchar","varying","versioning","when","whenever","where","width_bucket","window","with","within","without","year"],x=["abs","acos","array_agg","asin","atan","avg","cast","ceil","ceiling","coalesce","corr","cos","cosh","count","covar_pop","covar_samp","cume_dist","dense_rank","deref","element","exp","extract","first_value","floor","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","last_value","lead","listagg","ln","log","log10","lower","max","min","mod","nth_value","ntile","nullif","percent_rank","percentile_cont","percentile_disc","position","position_regex","power","rank","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","row_number","sin","sinh","sqrt","stddev_pop","stddev_samp","substring","substring_regex","sum","tan","tanh","translate","translate_regex","treat","trim","trim_array","unnest","upper","value_of","var_pop","var_samp","width_bucket"],b=["current_catalog","current_date","current_default_transform_group","current_path","current_role","current_schema","current_transform_group_for_type","current_user","session_user","system_time","system_user","current_time","localtime","current_timestamp","localtimestamp"],v=["create table","insert into","primary key","foreign key","not null","alter table","add constraint","grouping sets","on overflow","character set","respect nulls","ignore nulls","nulls first","nulls last","depth first","breadth first"],y=x,k=[...g,...m].filter(F=>!x.includes(F)),N={scope:"variable",match:/@[a-z0-9][a-z0-9_]*/},_={scope:"operator",match:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0},S={match:i.concat(/\b/,i.either(...y),/\s*\(/),relevance:0,keywords:{built_in:y}};function C(F){return i.concat(/\b/,i.either(...F.map(R=>R.replace(/\s+/,"\\s+"))),/\b/)}const M={scope:"keyword",match:C(v),relevance:0};function I(F,{exceptions:R,when:A}={}){const L=A;return R=R||[],F.map(V=>V.match(/\|\d+$/)||R.includes(V)?V:L(V)?`${V}|0`:V)}return{name:"SQL",case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:I(k,{when:F=>F.length<3}),literal:u,type:p,built_in:b},contains:[{scope:"type",match:C(d)},M,S,N,s,o,e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE,a,_]}}function Jk(e){return e?typeof e=="string"?e:e.source:null}function fo(e){return Ct("(?=",e,")")}function Ct(...e){return e.map(a=>Jk(a)).join("")}function eL(e){const i=e[e.length-1];return typeof i=="object"&&i.constructor===Object?(e.splice(e.length-1,1),i):{}}function Un(...e){return"("+(eL(e).capture?"":"?:")+e.map(s=>Jk(s)).join("|")+")"}const cg=e=>Ct(/\b/,e,/\w$/.test(e)?/\b/:/\B/),tL=["Protocol","Type"].map(cg),K0=["init","self"].map(cg),nL=["Any","Self"],wh=["actor","any","associatedtype","async","await",/as\?/,/as!/,"as","borrowing","break","case","catch","class","consume","consuming","continue","convenience","copy","default","defer","deinit","didSet","distributed","do","dynamic","each","else","enum","extension","fallthrough",/fileprivate\(set\)/,"fileprivate","final","for","func","get","guard","if","import","indirect","infix",/init\?/,/init!/,"inout",/internal\(set\)/,"internal","in","is","isolated","nonisolated","lazy","let","macro","mutating","nonmutating",/open\(set\)/,"open","operator","optional","override","package","postfix","precedencegroup","prefix",/private\(set\)/,"private","protocol",/public\(set\)/,"public","repeat","required","rethrows","return","set","some","static","struct","subscript","super","switch","throws","throw",/try\?/,/try!/,"try","typealias",/unowned\(safe\)/,/unowned\(unsafe\)/,"unowned","var","weak","where","while","willSet"],V0=["false","nil","true"],iL=["assignment","associativity","higherThan","left","lowerThan","none","right"],aL=["#colorLiteral","#column","#dsohandle","#else","#elseif","#endif","#error","#file","#fileID","#fileLiteral","#filePath","#function","#if","#imageLiteral","#keyPath","#line","#selector","#sourceLocation","#warning"],X0=["abs","all","any","assert","assertionFailure","debugPrint","dump","fatalError","getVaList","isKnownUniquelyReferenced","max","min","numericCast","pointwiseMax","pointwiseMin","precondition","preconditionFailure","print","readLine","repeatElement","sequence","stride","swap","swift_unboxFromSwiftValueWithType","transcode","type","unsafeBitCast","unsafeDowncast","withExtendedLifetime","withUnsafeMutablePointer","withUnsafePointer","withVaList","withoutActuallyEscaping","zip"],Wk=Un(/[/=\-+!*%<>&|^~?]/,/[\u00A1-\u00A7]/,/[\u00A9\u00AB]/,/[\u00AC\u00AE]/,/[\u00B0\u00B1]/,/[\u00B6\u00BB\u00BF\u00D7\u00F7]/,/[\u2016-\u2017]/,/[\u2020-\u2027]/,/[\u2030-\u203E]/,/[\u2041-\u2053]/,/[\u2055-\u205E]/,/[\u2190-\u23FF]/,/[\u2500-\u2775]/,/[\u2794-\u2BFF]/,/[\u2E00-\u2E7F]/,/[\u3001-\u3003]/,/[\u3008-\u3020]/,/[\u3030]/),eE=Un(Wk,/[\u0300-\u036F]/,/[\u1DC0-\u1DFF]/,/[\u20D0-\u20FF]/,/[\uFE00-\uFE0F]/,/[\uFE20-\uFE2F]/),kh=Ct(Wk,eE,"*"),tE=Un(/[a-zA-Z_]/,/[\u00A8\u00AA\u00AD\u00AF\u00B2-\u00B5\u00B7-\u00BA]/,/[\u00BC-\u00BE\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF]/,/[\u0100-\u02FF\u0370-\u167F\u1681-\u180D\u180F-\u1DBF]/,/[\u1E00-\u1FFF]/,/[\u200B-\u200D\u202A-\u202E\u203F-\u2040\u2054\u2060-\u206F]/,/[\u2070-\u20CF\u2100-\u218F\u2460-\u24FF\u2776-\u2793]/,/[\u2C00-\u2DFF\u2E80-\u2FFF]/,/[\u3004-\u3007\u3021-\u302F\u3031-\u303F\u3040-\uD7FF]/,/[\uF900-\uFD3D\uFD40-\uFDCF\uFDF0-\uFE1F\uFE30-\uFE44]/,/[\uFE47-\uFEFE\uFF00-\uFFFD]/),Bu=Un(tE,/\d/,/[\u0300-\u036F\u1DC0-\u1DFF\u20D0-\u20FF\uFE20-\uFE2F]/),Qi=Ct(tE,Bu,"*"),gu=Ct(/[A-Z]/,Bu,"*"),rL=["attached","autoclosure",Ct(/convention\(/,Un("swift","block","c"),/\)/),"discardableResult","dynamicCallable","dynamicMemberLookup","escaping","freestanding","frozen","GKInspectable","IBAction","IBDesignable","IBInspectable","IBOutlet","IBSegueAction","inlinable","main","nonobjc","NSApplicationMain","NSCopying","NSManaged",Ct(/objc\(/,Qi,/\)/),"objc","objcMembers","propertyWrapper","requires_stored_property_inits","resultBuilder","Sendable","testable","UIApplicationMain","unchecked","unknown","usableFromInline","warn_unqualified_access"],sL=["iOS","iOSApplicationExtension","macOS","macOSApplicationExtension","macCatalyst","macCatalystApplicationExtension","watchOS","watchOSApplicationExtension","tvOS","tvOSApplicationExtension","swift"];function lL(e){const i={match:/\s+/,relevance:0},a=e.COMMENT("/\\*","\\*/",{contains:["self"]}),s=[e.C_LINE_COMMENT_MODE,a],o={match:[/\./,Un(...tL,...K0)],className:{2:"keyword"}},u={match:Ct(/\./,Un(...wh)),relevance:0},d=wh.filter(Fe=>typeof Fe=="string").concat(["_|0"]),p=wh.filter(Fe=>typeof Fe!="string").concat(nL).map(cg),m={variants:[{className:"keyword",match:Un(...p,...K0)}]},g={$pattern:Un(/\b\w+/,/#\w+/),keyword:d.concat(aL),literal:V0},x=[o,u,m],b={match:Ct(/\./,Un(...X0)),relevance:0},v={className:"built_in",match:Ct(/\b/,Un(...X0),/(?=\()/)},y=[b,v],k={match:/->/,relevance:0},N={className:"operator",relevance:0,variants:[{match:kh},{match:`\\.(\\.|${eE})+`}]},_=[k,N],S="([0-9]_*)+",C="([0-9a-fA-F]_*)+",M={className:"number",relevance:0,variants:[{match:`\\b(${S})(\\.(${S}))?([eE][+-]?(${S}))?\\b`},{match:`\\b0x(${C})(\\.(${C}))?([pP][+-]?(${S}))?\\b`},{match:/\b0o([0-7]_*)+\b/},{match:/\b0b([01]_*)+\b/}]},I=(Fe="")=>({className:"subst",variants:[{match:Ct(/\\/,Fe,/[0\\tnr"']/)},{match:Ct(/\\/,Fe,/u\{[0-9a-fA-F]{1,8}\}/)}]}),F=(Fe="")=>({className:"subst",match:Ct(/\\/,Fe,/[\t ]*(?:[\r\n]|\r\n)/)}),R=(Fe="")=>({className:"subst",label:"interpol",begin:Ct(/\\/,Fe,/\(/),end:/\)/}),A=(Fe="")=>({begin:Ct(Fe,/"""/),end:Ct(/"""/,Fe),contains:[I(Fe),F(Fe),R(Fe)]}),L=(Fe="")=>({begin:Ct(Fe,/"/),end:Ct(/"/,Fe),contains:[I(Fe),R(Fe)]}),V={className:"string",variants:[A(),A("#"),A("##"),A("###"),L(),L("#"),L("##"),L("###")]},D=[e.BACKSLASH_ESCAPE,{begin:/\[/,end:/\]/,relevance:0,contains:[e.BACKSLASH_ESCAPE]}],U={begin:/\/[^\s](?=[^/\n]*\/)/,end:/\//,contains:D},ee=Fe=>{const vt=Ct(Fe,/\//),et=Ct(/\//,Fe);return{begin:vt,end:et,contains:[...D,{scope:"comment",begin:`#(?!.*${et})`,end:/$/}]}},ue={scope:"regexp",variants:[ee("###"),ee("##"),ee("#"),U]},re={match:Ct(/`/,Qi,/`/)},ne={className:"variable",match:/\$\d+/},P={className:"variable",match:`\\$${Bu}+`},ae=[re,ne,P],$={match:/(@|#(un)?)available/,scope:"keyword",starts:{contains:[{begin:/\(/,end:/\)/,keywords:sL,contains:[..._,M,V]}]}},de={scope:"keyword",match:Ct(/@/,Un(...rL),fo(Un(/\(/,/\s+/)))},O={scope:"meta",match:Ct(/@/,Qi)},Ie=[$,de,O],fe={match:fo(/\b[A-Z]/),relevance:0,contains:[{className:"type",match:Ct(/(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)/,Bu,"+")},{className:"type",match:gu,relevance:0},{match:/[?!]+/,relevance:0},{match:/\.\.\./,relevance:0},{match:Ct(/\s+&\s+/,fo(gu)),relevance:0}]},T={begin:/</,end:/>/,keywords:g,contains:[...s,...x,...Ie,k,fe]};fe.contains.push(T);const j={match:Ct(Qi,/\s*:/),keywords:"_|0",relevance:0},ie={begin:/\(/,end:/\)/,relevance:0,keywords:g,contains:["self",j,...s,ue,...x,...y,..._,M,V,...ae,...Ie,fe]},he={begin:/</,end:/>/,keywords:"repeat each",contains:[...s,fe]},Z={begin:Un(fo(Ct(Qi,/\s*:/)),fo(Ct(Qi,/\s+/,Qi,/\s*:/))),end:/:/,relevance:0,contains:[{className:"keyword",match:/\b_\b/},{className:"params",match:Qi}]},we={begin:/\(/,end:/\)/,keywords:g,contains:[Z,...s,...x,..._,M,V,...Ie,fe,ie],endsParent:!0,illegal:/["']/},Ce={match:[/(func|macro)/,/\s+/,Un(re.match,Qi,kh)],className:{1:"keyword",3:"title.function"},contains:[he,we,i],illegal:[/\[/,/%/]},J={match:[/\b(?:subscript|init[?!]?)/,/\s*(?=[<(])/],className:{1:"keyword"},contains:[he,we,i],illegal:/\[|%/},ge={match:[/operator/,/\s+/,kh],className:{1:"keyword",3:"title"}},ke={begin:[/precedencegroup/,/\s+/,gu],className:{1:"keyword",3:"title"},contains:[fe],keywords:[...iL,...V0],end:/}/},Dt={match:[/class\b/,/\s+/,/func\b/,/\s+/,/\b[A-Za-z_][A-Za-z0-9_]*\b/],scope:{1:"keyword",3:"keyword",5:"title.function"}},Ut={match:[/class\b/,/\s+/,/var\b/],scope:{1:"keyword",3:"keyword"}},$t={begin:[/(struct|protocol|class|extension|enum|actor)/,/\s+/,Qi,/\s*/],beginScope:{1:"keyword",3:"title.class"},keywords:g,contains:[he,...x,{begin:/:/,end:/\{/,keywords:g,contains:[{scope:"title.class.inherited",match:gu},...x],relevance:0}]};for(const Fe of V.variants){const vt=Fe.contains.find(cn=>cn.label==="interpol");vt.keywords=g;const et=[...x,...y,..._,M,V,...ae];vt.contains=[...et,{begin:/\(/,end:/\)/,contains:["self",...et]}]}return{name:"Swift",keywords:g,contains:[...s,Ce,J,Dt,Ut,$t,ge,ke,{beginKeywords:"import",end:/$/,contains:[...s],relevance:0},ue,...x,...y,..._,M,V,...ae,...Ie,fe,ie]}}const $u="[A-Za-z$_][0-9A-Za-z$_]*",nE=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends","using"],iE=["true","false","null","undefined","NaN","Infinity"],aE=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],rE=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],sE=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],lE=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],oE=[].concat(sE,aE,rE);function oL(e){const i=e.regex,a=($,{after:de})=>{const O="</"+$[0].slice(1);return $.input.indexOf(O,de)!==-1},s=$u,o={begin:"<>",end:"</>"},u=/<[A-Za-z0-9\\._:-]+\s*\/>/,d={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:($,de)=>{const O=$[0].length+$.index,Ie=$.input[O];if(Ie==="<"||Ie===","){de.ignoreMatch();return}Ie===">"&&(a($,{after:O})||de.ignoreMatch());let fe;const T=$.input.substring(O);if(fe=T.match(/^\s*=/)){de.ignoreMatch();return}if((fe=T.match(/^\s+extends\s+/))&&fe.index===0){de.ignoreMatch();return}}},p={$pattern:$u,keyword:nE,literal:iE,built_in:oE,"variable.language":lE},m="[0-9](_?[0-9])*",g=`\\.(${m})`,x="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",b={className:"number",variants:[{begin:`(\\b(${x})((${g})|\\.)?|(${g}))[eE][+-]?(${m})\\b`},{begin:`\\b(${x})\\b((${g})\\b|\\.)?|(${g})\\b`},{begin:"\\b(0|[1-9](_?[0-9])*)n\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{begin:"\\b0[0-7]+n?\\b"}],relevance:0},v={className:"subst",begin:"\\$\\{",end:"\\}",keywords:p,contains:[]},y={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,v],subLanguage:"xml"}},k={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,v],subLanguage:"css"}},N={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,v],subLanguage:"graphql"}},_={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,v]},C={className:"comment",variants:[e.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:!0,excludeBegin:!0,relevance:0},{className:"variable",begin:s+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]},M=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,y,k,N,_,{match:/\$\d+/},b];v.contains=M.concat({begin:/\{/,end:/\}/,keywords:p,contains:["self"].concat(M)});const I=[].concat(C,v.contains),F=I.concat([{begin:/(\s*)\(/,end:/\)/,keywords:p,contains:["self"].concat(I)}]),R={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:p,contains:F},A={variants:[{match:[/class/,/\s+/,s,/\s+/,/extends/,/\s+/,i.concat(s,"(",i.concat(/\./,s),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,s],scope:{1:"keyword",3:"title.class"}}]},L={relevance:0,match:i.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:"title.class",keywords:{_:[...aE,...rE]}},V={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},D={variants:[{match:[/function/,/\s+/,s,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[R],illegal:/%/},U={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function ee($){return i.concat("(?!",$.join("|"),")")}const ue={match:i.concat(/\b/,ee([...sE,"super","import","await"].map($=>`${$}\\s*\\(`)),s,i.lookahead(/\s*\(/)),className:"title.function",relevance:0},re={begin:i.concat(/\./,i.lookahead(i.concat(s,/(?![0-9A-Za-z$_(])/))),end:s,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},ne={match:[/get|set/,/\s+/,s,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},R]},P="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+e.UNDERSCORE_IDENT_RE+")\\s*=>",ae={match:[/const|var|let/,/\s+/,s,/\s*/,/=\s*/,/(async\s*)?/,i.lookahead(P)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[R]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:p,exports:{PARAMS_CONTAINS:F,CLASS_REFERENCE:L},illegal:/#(?![$_A-Za-z])/,contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),V,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,y,k,N,_,C,{match:/\$\d+/},b,L,{scope:"attr",match:s+i.lookahead(":"),relevance:0},ae,{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[C,e.REGEXP_MODE,{className:"function",begin:P,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:e.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:p,contains:F}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:o.begin,end:o.end},{match:u},{begin:d.begin,"on:begin":d.isTrulyOpeningTag,end:d.end}],subLanguage:"xml",contains:[{begin:d.begin,end:d.end,skip:!0,contains:["self"]}]}]},D,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[R,e.inherit(e.TITLE_MODE,{begin:s,className:"title.function"})]},{match:/\.\.\./,relevance:0},re,{match:"\\$"+s,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[R]},ue,U,A,ne,{match:/\$[(.]/}]}}function cL(e){const i=e.regex,a=oL(e),s=$u,o=["any","void","number","boolean","string","object","never","symbol","bigint","unknown"],u={begin:[/namespace/,/\s+/,e.IDENT_RE],beginScope:{1:"keyword",3:"title.class"}},d={beginKeywords:"interface",end:/\{/,excludeEnd:!0,keywords:{keyword:"interface extends",built_in:o},contains:[a.exports.CLASS_REFERENCE]},p={className:"meta",relevance:10,begin:/^\s*['"]use strict['"]/},m=["type","interface","public","private","protected","implements","declare","abstract","readonly","enum","override","satisfies"],g={$pattern:$u,keyword:nE.concat(m),literal:iE,built_in:oE.concat(o),"variable.language":lE},x={className:"meta",begin:"@"+s},b=(N,_,S)=>{const C=N.contains.findIndex(M=>M.label===_);if(C===-1)throw new Error("can not find mode to replace");N.contains.splice(C,1,S)};Object.assign(a.keywords,g),a.exports.PARAMS_CONTAINS.push(x);const v=a.contains.find(N=>N.scope==="attr"),y=Object.assign({},v,{match:i.concat(s,i.lookahead(/\s*\?:/))});a.exports.PARAMS_CONTAINS.push([a.exports.CLASS_REFERENCE,v,y]),a.contains=a.contains.concat([x,u,d,y]),b(a,"shebang",e.SHEBANG()),b(a,"use_strict",p);const k=a.contains.find(N=>N.label==="func.def");return k.relevance=0,Object.assign(a,{name:"TypeScript",aliases:["ts","tsx","mts","cts"]}),a}function uL(e){const i=e.regex,a={className:"string",begin:/"(""|[^/n])"C\b/},s={className:"string",begin:/"/,end:/"/,illegal:/\n/,contains:[{begin:/""/}]},o=/\d{1,2}\/\d{1,2}\/\d{4}/,u=/\d{4}-\d{1,2}-\d{1,2}/,d=/(\d|1[012])(:\d+){0,2} *(AM|PM)/,p=/\d{1,2}(:\d{1,2}){1,2}/,m={className:"literal",variants:[{begin:i.concat(/# */,i.either(u,o),/ *#/)},{begin:i.concat(/# */,p,/ *#/)},{begin:i.concat(/# */,d,/ *#/)},{begin:i.concat(/# */,i.either(u,o),/ +/,i.either(d,p),/ *#/)}]},g={className:"number",relevance:0,variants:[{begin:/\b\d[\d_]*((\.[\d_]+(E[+-]?[\d_]+)?)|(E[+-]?[\d_]+))[RFD@!#]?/},{begin:/\b\d[\d_]*((U?[SIL])|[%&])?/},{begin:/&H[\dA-F_]+((U?[SIL])|[%&])?/},{begin:/&O[0-7_]+((U?[SIL])|[%&])?/},{begin:/&B[01_]+((U?[SIL])|[%&])?/}]},x={className:"label",begin:/^\w+:/},b=e.COMMENT(/'''/,/$/,{contains:[{className:"doctag",begin:/<\/?/,end:/>/}]}),v=e.COMMENT(null,/$/,{variants:[{begin:/'/},{begin:/([\t ]|^)REM(?=\s)/}]});return{name:"Visual Basic .NET",aliases:["vb"],case_insensitive:!0,classNameAliases:{label:"symbol"},keywords:{keyword:"addhandler alias aggregate ansi as async assembly auto binary by byref byval call case catch class compare const continue custom declare default delegate dim distinct do each equals else elseif end enum erase error event exit explicit finally for friend from function get global goto group handles if implements imports in inherits interface into iterator join key let lib loop me mid module mustinherit mustoverride mybase myclass namespace narrowing new next notinheritable notoverridable of off on operator option optional order overloads overridable overrides paramarray partial preserve private property protected public raiseevent readonly redim removehandler resume return select set shadows shared skip static step stop structure strict sub synclock take text then throw to try unicode until using when where while widening with withevents writeonly yield",built_in:"addressof and andalso await directcast gettype getxmlnamespace is isfalse isnot istrue like mod nameof new not or orelse trycast typeof xor cbool cbyte cchar cdate cdbl cdec cint clng cobj csbyte cshort csng cstr cuint culng cushort",type:"boolean byte char date decimal double integer long object sbyte short single string uinteger ulong ushort",literal:"true false nothing"},illegal:"//|\\{|\\}|endif|gosub|variant|wend|^\\$ ",contains:[a,s,m,g,x,b,v,{className:"meta",begin:/[\t ]*#(const|disable|else|elseif|enable|end|externalsource|if|region)\b/,end:/$/,keywords:{keyword:"const disable else elseif enable end externalsource if region then"},contains:[v]}]}}function dL(e){e.regex;const i=e.COMMENT(/\(;/,/;\)/);i.contains.push("self");const a=e.COMMENT(/;;/,/$/),s=["anyfunc","block","br","br_if","br_table","call","call_indirect","data","drop","elem","else","end","export","func","global.get","global.set","local.get","local.set","local.tee","get_global","get_local","global","if","import","local","loop","memory","memory.grow","memory.size","module","mut","nop","offset","param","result","return","select","set_global","set_local","start","table","tee_local","then","type","unreachable"],o={begin:[/(?:func|call|call_indirect)/,/\s+/,/\$[^\s)]+/],className:{1:"keyword",3:"title.function"}},u={className:"variable",begin:/\$[\w_]+/},d={match:/(\((?!;)|\))+/,className:"punctuation",relevance:0},p={className:"number",relevance:0,match:/[+-]?\b(?:\d(?:_?\d)*(?:\.\d(?:_?\d)*)?(?:[eE][+-]?\d(?:_?\d)*)?|0x[\da-fA-F](?:_?[\da-fA-F])*(?:\.[\da-fA-F](?:_?[\da-fA-D])*)?(?:[pP][+-]?\d(?:_?\d)*)?)\b|\binf\b|\bnan(?::0x[\da-fA-F](?:_?[\da-fA-D])*)?\b/},m={match:/(i32|i64|f32|f64)(?!\.)/,className:"type"},g={className:"keyword",match:/\b(f32|f64|i32|i64)(?:\.(?:abs|add|and|ceil|clz|const|convert_[su]\/i(?:32|64)|copysign|ctz|demote\/f64|div(?:_[su])?|eqz?|extend_[su]\/i32|floor|ge(?:_[su])?|gt(?:_[su])?|le(?:_[su])?|load(?:(?:8|16|32)_[su])?|lt(?:_[su])?|max|min|mul|nearest|neg?|or|popcnt|promote\/f32|reinterpret\/[fi](?:32|64)|rem_[su]|rot[lr]|shl|shr_[su]|store(?:8|16|32)?|sqrt|sub|trunc(?:_[su]\/f(?:32|64))?|wrap\/i64|xor))\b/};return{name:"WebAssembly",keywords:{$pattern:/[\w.]+/,keyword:s},contains:[a,i,{match:[/(?:offset|align)/,/\s*/,/=/],className:{1:"keyword",3:"operator"}},u,d,o,e.QUOTE_STRING_MODE,m,g,p]}}function fL(e){const i=e.regex,a=i.concat(/[\p{L}_]/u,i.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),s=/[\p{L}0-9._:-]+/u,o={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},u={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},d=e.inherit(u,{begin:/\(/,end:/\)/}),p=e.inherit(e.APOS_STRING_MODE,{className:"string"}),m=e.inherit(e.QUOTE_STRING_MODE,{className:"string"}),g={endsWithParent:!0,illegal:/</,relevance:0,contains:[{className:"attr",begin:s,relevance:0},{begin:/=\s*/,relevance:0,contains:[{className:"string",endsParent:!0,variants:[{begin:/"/,end:/"/,contains:[o]},{begin:/'/,end:/'/,contains:[o]},{begin:/[^\s"'=<>`]+/}]}]}]};return{name:"HTML, XML",aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"],case_insensitive:!0,unicodeRegex:!0,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,relevance:10,contains:[u,m,p,d,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,contains:[u,d,m,p]}]}]},e.COMMENT(/<!--/,/-->/,{relevance:10}),{begin:/<!\[CDATA\[/,end:/\]\]>/,relevance:10},o,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[m]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",begin:/<style(?=\s|>)/,end:/>/,keywords:{name:"style"},contains:[g],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:/<script(?=\s|>)/,end:/>/,keywords:{name:"script"},contains:[g],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:/<>|<\/>/},{className:"tag",begin:i.concat(/</,i.lookahead(i.concat(a,i.either(/\/>/,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name",begin:a,relevance:0,starts:g}]},{className:"tag",begin:i.concat(/<\//,i.lookahead(i.concat(a,/>/))),contains:[{className:"name",begin:a,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}function pL(e){const i="true false yes no null",a="[\\w#;/?:@&=+$,.~*'()[\\]]+",s={className:"attr",variants:[{begin:/[\w*@][\w*@ :()\./-]*:(?=[ \t]|$)/},{begin:/"[\w*@][\w*@ :()\./-]*":(?=[ \t]|$)/},{begin:/'[\w*@][\w*@ :()\./-]*':(?=[ \t]|$)/}]},o={className:"template-variable",variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]},u={className:"string",relevance:0,begin:/'/,end:/'/,contains:[{match:/''/,scope:"char.escape",relevance:0}]},d={className:"string",relevance:0,variants:[{begin:/"/,end:/"/},{begin:/\S+/}],contains:[e.BACKSLASH_ESCAPE,o]},p=e.inherit(d,{variants:[{begin:/'/,end:/'/,contains:[{begin:/''/,relevance:0}]},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),v={className:"number",begin:"\\b"+"[0-9]{4}(-[0-9][0-9]){0,2}"+"([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?"+"(\\.[0-9]*)?"+"([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?"+"\\b"},y={end:",",endsWithParent:!0,excludeEnd:!0,keywords:i,relevance:0},k={begin:/\{/,end:/\}/,contains:[y],illegal:"\\n",relevance:0},N={begin:"\\[",end:"\\]",contains:[y],illegal:"\\n",relevance:0},_=[s,{className:"meta",begin:"^---\\s*$",relevance:10},{className:"string",begin:"[\\|>]([1-9]?[+-])?[ ]*\\n( +)[^ ][^\\n]*\\n(\\2[^\\n]+\\n?)*"},{begin:"<%[%=-]?",end:"[%-]?%>",subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:"!\\w+!"+a},{className:"type",begin:"!<"+a+">"},{className:"type",begin:"!"+a},{className:"type",begin:"!!"+a},{className:"meta",begin:"&"+e.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+e.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)",relevance:0},e.HASH_COMMENT_MODE,{beginKeywords:i,keywords:{literal:i}},v,{className:"number",begin:e.C_NUMBER_RE+"\\b",relevance:0},k,N,u,d],S=[..._];return S.pop(),S.push(p),y.contains=S,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:_}}const hL={arduino:K4,bash:V4,c:X4,cpp:Z4,csharp:Q4,css:sz,diff:lz,go:oz,graphql:cz,ini:uz,java:dz,javascript:gz,json:yz,kotlin:wz,less:Az,lua:Oz,makefile:Mz,markdown:jz,objectivec:Rz,perl:Dz,php:zz,"php-template":Lz,plaintext:Iz,python:Uz,"python-repl":Bz,r:$z,ruby:Hz,rust:Pz,scss:Qz,shell:Jz,sql:Wz,swift:lL,typescript:cL,vbnet:uL,wasm:dL,xml:fL,yaml:pL};var Eh,Z0;function mL(){if(Z0)return Eh;Z0=1;function e(B){return B instanceof Map?B.clear=B.delete=B.set=function(){throw new Error("map is read-only")}:B instanceof Set&&(B.add=B.clear=B.delete=function(){throw new Error("set is read-only")}),Object.freeze(B),Object.getOwnPropertyNames(B).forEach(ce=>{const Se=B[ce],Ge=typeof Se;(Ge==="object"||Ge==="function")&&!Object.isFrozen(Se)&&e(Se)}),B}class i{constructor(ce){ce.data===void 0&&(ce.data={}),this.data=ce.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}}function a(B){return B.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function s(B,...ce){const Se=Object.create(null);for(const Ge in B)Se[Ge]=B[Ge];return ce.forEach(function(Ge){for(const Ot in Ge)Se[Ot]=Ge[Ot]}),Se}const o="</span>",u=B=>!!B.scope,d=(B,{prefix:ce})=>{if(B.startsWith("language:"))return B.replace("language:","language-");if(B.includes(".")){const Se=B.split(".");return[`${ce}${Se.shift()}`,...Se.map((Ge,Ot)=>`${Ge}${"_".repeat(Ot+1)}`)].join(" ")}return`${ce}${B}`};class p{constructor(ce,Se){this.buffer="",this.classPrefix=Se.classPrefix,ce.walk(this)}addText(ce){this.buffer+=a(ce)}openNode(ce){if(!u(ce))return;const Se=d(ce.scope,{prefix:this.classPrefix});this.span(Se)}closeNode(ce){u(ce)&&(this.buffer+=o)}value(){return this.buffer}span(ce){this.buffer+=`<span class="${ce}">`}}const m=(B={})=>{const ce={children:[]};return Object.assign(ce,B),ce};class g{constructor(){this.rootNode=m(),this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(ce){this.top.children.push(ce)}openNode(ce){const Se=m({scope:ce});this.add(Se),this.stack.push(Se)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(ce){return this.constructor._walk(ce,this.rootNode)}static _walk(ce,Se){return typeof Se=="string"?ce.addText(Se):Se.children&&(ce.openNode(Se),Se.children.forEach(Ge=>this._walk(ce,Ge)),ce.closeNode(Se)),ce}static _collapse(ce){typeof ce!="string"&&ce.children&&(ce.children.every(Se=>typeof Se=="string")?ce.children=[ce.children.join("")]:ce.children.forEach(Se=>{g._collapse(Se)}))}}class x extends g{constructor(ce){super(),this.options=ce}addText(ce){ce!==""&&this.add(ce)}startScope(ce){this.openNode(ce)}endScope(){this.closeNode()}__addSublanguage(ce,Se){const Ge=ce.root;Se&&(Ge.scope=`language:${Se}`),this.add(Ge)}toHTML(){return new p(this,this.options).value()}finalize(){return this.closeAllNodes(),!0}}function b(B){return B?typeof B=="string"?B:B.source:null}function v(B){return N("(?=",B,")")}function y(B){return N("(?:",B,")*")}function k(B){return N("(?:",B,")?")}function N(...B){return B.map(Se=>b(Se)).join("")}function _(B){const ce=B[B.length-1];return typeof ce=="object"&&ce.constructor===Object?(B.splice(B.length-1,1),ce):{}}function S(...B){return"("+(_(B).capture?"":"?:")+B.map(Ge=>b(Ge)).join("|")+")"}function C(B){return new RegExp(B.toString()+"|").exec("").length-1}function M(B,ce){const Se=B&&B.exec(ce);return Se&&Se.index===0}const I=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function F(B,{joinWith:ce}){let Se=0;return B.map(Ge=>{Se+=1;const Ot=Se;let ot=b(Ge),Ae="";for(;ot.length>0;){const Ne=I.exec(ot);if(!Ne){Ae+=ot;break}Ae+=ot.substring(0,Ne.index),ot=ot.substring(Ne.index+Ne[0].length),Ne[0][0]==="\\"&&Ne[1]?Ae+="\\"+String(Number(Ne[1])+Ot):(Ae+=Ne[0],Ne[0]==="("&&Se++)}return Ae}).map(Ge=>`(${Ge})`).join(ce)}const R=/\b\B/,A="[a-zA-Z]\\w*",L="[a-zA-Z_]\\w*",V="\\b\\d+(\\.\\d+)?",D="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",U="\\b(0b[01]+)",ee="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",ue=(B={})=>{const ce=/^#![ ]*\//;return B.binary&&(B.begin=N(ce,/.*\b/,B.binary,/\b.*/)),s({scope:"meta",begin:ce,end:/$/,relevance:0,"on:begin":(Se,Ge)=>{Se.index!==0&&Ge.ignoreMatch()}},B)},re={begin:"\\\\[\\s\\S]",relevance:0},ne={scope:"string",begin:"'",end:"'",illegal:"\\n",contains:[re]},P={scope:"string",begin:'"',end:'"',illegal:"\\n",contains:[re]},ae={begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},$=function(B,ce,Se={}){const Ge=s({scope:"comment",begin:B,end:ce,contains:[]},Se);Ge.contains.push({scope:"doctag",begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)",end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0});const Ot=S("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/);return Ge.contains.push({begin:N(/[ ]+/,"(",Ot,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),Ge},de=$("//","$"),O=$("/\\*","\\*/"),Ie=$("#","$"),fe={scope:"number",begin:V,relevance:0},T={scope:"number",begin:D,relevance:0},j={scope:"number",begin:U,relevance:0},ie={scope:"regexp",begin:/\/(?=[^/\n]*\/)/,end:/\/[gimuy]*/,contains:[re,{begin:/\[/,end:/\]/,relevance:0,contains:[re]}]},he={scope:"title",begin:A,relevance:0},Z={scope:"title",begin:L,relevance:0},we={begin:"\\.\\s*"+L,relevance:0};var J=Object.freeze({__proto__:null,APOS_STRING_MODE:ne,BACKSLASH_ESCAPE:re,BINARY_NUMBER_MODE:j,BINARY_NUMBER_RE:U,COMMENT:$,C_BLOCK_COMMENT_MODE:O,C_LINE_COMMENT_MODE:de,C_NUMBER_MODE:T,C_NUMBER_RE:D,END_SAME_AS_BEGIN:function(B){return Object.assign(B,{"on:begin":(ce,Se)=>{Se.data._beginMatch=ce[1]},"on:end":(ce,Se)=>{Se.data._beginMatch!==ce[1]&&Se.ignoreMatch()}})},HASH_COMMENT_MODE:Ie,IDENT_RE:A,MATCH_NOTHING_RE:R,METHOD_GUARD:we,NUMBER_MODE:fe,NUMBER_RE:V,PHRASAL_WORDS_MODE:ae,QUOTE_STRING_MODE:P,REGEXP_MODE:ie,RE_STARTERS_RE:ee,SHEBANG:ue,TITLE_MODE:he,UNDERSCORE_IDENT_RE:L,UNDERSCORE_TITLE_MODE:Z});function ge(B,ce){B.input[B.index-1]==="."&&ce.ignoreMatch()}function ke(B,ce){B.className!==void 0&&(B.scope=B.className,delete B.className)}function Dt(B,ce){ce&&B.beginKeywords&&(B.begin="\\b("+B.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",B.__beforeBegin=ge,B.keywords=B.keywords||B.beginKeywords,delete B.beginKeywords,B.relevance===void 0&&(B.relevance=0))}function Ut(B,ce){Array.isArray(B.illegal)&&(B.illegal=S(...B.illegal))}function $t(B,ce){if(B.match){if(B.begin||B.end)throw new Error("begin & end are not supported with match");B.begin=B.match,delete B.match}}function Fe(B,ce){B.relevance===void 0&&(B.relevance=1)}const vt=(B,ce)=>{if(!B.beforeMatch)return;if(B.starts)throw new Error("beforeMatch cannot be used with starts");const Se=Object.assign({},B);Object.keys(B).forEach(Ge=>{delete B[Ge]}),B.keywords=Se.keywords,B.begin=N(Se.beforeMatch,v(Se.begin)),B.starts={relevance:0,contains:[Object.assign(Se,{endsParent:!0})]},B.relevance=0,delete Se.beforeMatch},et=["of","and","for","in","not","or","if","then","parent","list","value"],cn="keyword";function $n(B,ce,Se=cn){const Ge=Object.create(null);return typeof B=="string"?Ot(Se,B.split(" ")):Array.isArray(B)?Ot(Se,B):Object.keys(B).forEach(function(ot){Object.assign(Ge,$n(B[ot],ce,ot))}),Ge;function Ot(ot,Ae){ce&&(Ae=Ae.map(Ne=>Ne.toLowerCase())),Ae.forEach(function(Ne){const Pe=Ne.split("|");Ge[Pe[0]]=[ot,jn(Pe[0],Pe[1])]})}}function jn(B,ce){return ce?Number(ce):oe(B)?0:1}function oe(B){return et.includes(B.toLowerCase())}const Xe={},pt=B=>{console.error(B)},ft=(B,...ce)=>{console.log(`WARN: ${B}`,...ce)},rn=(B,ce)=>{Xe[`${B}/${ce}`]||(console.log(`Deprecated as of ${B}. ${ce}`),Xe[`${B}/${ce}`]=!0)},te=new Error;function ye(B,ce,{key:Se}){let Ge=0;const Ot=B[Se],ot={},Ae={};for(let Ne=1;Ne<=ce.length;Ne++)Ae[Ne+Ge]=Ot[Ne],ot[Ne+Ge]=!0,Ge+=C(ce[Ne-1]);B[Se]=Ae,B[Se]._emit=ot,B[Se]._multi=!0}function Ue(B){if(Array.isArray(B.begin)){if(B.skip||B.excludeBegin||B.returnBegin)throw pt("skip, excludeBegin, returnBegin not compatible with beginScope: {}"),te;if(typeof B.beginScope!="object"||B.beginScope===null)throw pt("beginScope must be object"),te;ye(B,B.begin,{key:"beginScope"}),B.begin=F(B.begin,{joinWith:""})}}function qe(B){if(Array.isArray(B.end)){if(B.skip||B.excludeEnd||B.returnEnd)throw pt("skip, excludeEnd, returnEnd not compatible with endScope: {}"),te;if(typeof B.endScope!="object"||B.endScope===null)throw pt("endScope must be object"),te;ye(B,B.end,{key:"endScope"}),B.end=F(B.end,{joinWith:""})}}function Yt(B){B.scope&&typeof B.scope=="object"&&B.scope!==null&&(B.beginScope=B.scope,delete B.scope)}function wt(B){Yt(B),typeof B.beginScope=="string"&&(B.beginScope={_wrap:B.beginScope}),typeof B.endScope=="string"&&(B.endScope={_wrap:B.endScope}),Ue(B),qe(B)}function sn(B){function ce(Ae,Ne){return new RegExp(b(Ae),"m"+(B.case_insensitive?"i":"")+(B.unicodeRegex?"u":"")+(Ne?"g":""))}class Se{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(Ne,Pe){Pe.position=this.position++,this.matchIndexes[this.matchAt]=Pe,this.regexes.push([Pe,Ne]),this.matchAt+=C(Ne)+1}compile(){this.regexes.length===0&&(this.exec=()=>null);const Ne=this.regexes.map(Pe=>Pe[1]);this.matcherRe=ce(F(Ne,{joinWith:"|"}),!0),this.lastIndex=0}exec(Ne){this.matcherRe.lastIndex=this.lastIndex;const Pe=this.matcherRe.exec(Ne);if(!Pe)return null;const Vt=Pe.findIndex((Li,Ma)=>Ma>0&&Li!==void 0),Ht=this.matchIndexes[Vt];return Pe.splice(0,Vt),Object.assign(Pe,Ht)}}class Ge{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(Ne){if(this.multiRegexes[Ne])return this.multiRegexes[Ne];const Pe=new Se;return this.rules.slice(Ne).forEach(([Vt,Ht])=>Pe.addRule(Vt,Ht)),Pe.compile(),this.multiRegexes[Ne]=Pe,Pe}resumingScanAtSamePosition(){return this.regexIndex!==0}considerAll(){this.regexIndex=0}addRule(Ne,Pe){this.rules.push([Ne,Pe]),Pe.type==="begin"&&this.count++}exec(Ne){const Pe=this.getMatcher(this.regexIndex);Pe.lastIndex=this.lastIndex;let Vt=Pe.exec(Ne);if(this.resumingScanAtSamePosition()&&!(Vt&&Vt.index===this.lastIndex)){const Ht=this.getMatcher(0);Ht.lastIndex=this.lastIndex+1,Vt=Ht.exec(Ne)}return Vt&&(this.regexIndex+=Vt.position+1,this.regexIndex===this.count&&this.considerAll()),Vt}}function Ot(Ae){const Ne=new Ge;return Ae.contains.forEach(Pe=>Ne.addRule(Pe.begin,{rule:Pe,type:"begin"})),Ae.terminatorEnd&&Ne.addRule(Ae.terminatorEnd,{type:"end"}),Ae.illegal&&Ne.addRule(Ae.illegal,{type:"illegal"}),Ne}function ot(Ae,Ne){const Pe=Ae;if(Ae.isCompiled)return Pe;[ke,$t,wt,vt].forEach(Ht=>Ht(Ae,Ne)),B.compilerExtensions.forEach(Ht=>Ht(Ae,Ne)),Ae.__beforeBegin=null,[Dt,Ut,Fe].forEach(Ht=>Ht(Ae,Ne)),Ae.isCompiled=!0;let Vt=null;return typeof Ae.keywords=="object"&&Ae.keywords.$pattern&&(Ae.keywords=Object.assign({},Ae.keywords),Vt=Ae.keywords.$pattern,delete Ae.keywords.$pattern),Vt=Vt||/\w+/,Ae.keywords&&(Ae.keywords=$n(Ae.keywords,B.case_insensitive)),Pe.keywordPatternRe=ce(Vt,!0),Ne&&(Ae.begin||(Ae.begin=/\B|\b/),Pe.beginRe=ce(Pe.begin),!Ae.end&&!Ae.endsWithParent&&(Ae.end=/\B|\b/),Ae.end&&(Pe.endRe=ce(Pe.end)),Pe.terminatorEnd=b(Pe.end)||"",Ae.endsWithParent&&Ne.terminatorEnd&&(Pe.terminatorEnd+=(Ae.end?"|":"")+Ne.terminatorEnd)),Ae.illegal&&(Pe.illegalRe=ce(Ae.illegal)),Ae.contains||(Ae.contains=[]),Ae.contains=[].concat(...Ae.contains.map(function(Ht){return yi(Ht==="self"?Ae:Ht)})),Ae.contains.forEach(function(Ht){ot(Ht,Pe)}),Ae.starts&&ot(Ae.starts,Ne),Pe.matcher=Ot(Pe),Pe}if(B.compilerExtensions||(B.compilerExtensions=[]),B.contains&&B.contains.includes("self"))throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return B.classNameAliases=s(B.classNameAliases||{}),ot(B)}function gn(B){return B?B.endsWithParent||gn(B.starts):!1}function yi(B){return B.variants&&!B.cachedVariants&&(B.cachedVariants=B.variants.map(function(ce){return s(B,{variants:null},ce)})),B.cachedVariants?B.cachedVariants:gn(B)?s(B,{starts:B.starts?s(B.starts):null}):Object.isFrozen(B)?s(B):B}var vi="11.11.2";class na extends Error{constructor(ce,Se){super(ce),this.name="HTMLInjectionError",this.html=Se}}const Oa=a,Kt=s,un=Symbol("nomatch"),wi=7,Rn=function(B){const ce=Object.create(null),Se=Object.create(null),Ge=[];let Ot=!0;const ot="Could not find the language '{}', did you forget to load/include a language module?",Ae={disableAutodetect:!0,name:"Plain text",contains:[]};let Ne={ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",cssSelector:"pre code",languages:null,__emitter:x};function Pe(me){return Ne.noHighlightRe.test(me)}function Vt(me){let De=me.className+" ";De+=me.parentNode?me.parentNode.className:"";const it=Ne.languageDetectRe.exec(De);if(it){const St=Ei(it[1]);return St||(ft(ot.replace("{}",it[1])),ft("Falling back to no-highlight mode for this block.",me)),St?it[1]:"no-highlight"}return De.split(/\s+/).find(St=>Pe(St)||Ei(St))}function Ht(me,De,it){let St="",qt="";typeof De=="object"?(St=me,it=De.ignoreIllegals,qt=De.language):(rn("10.7.0","highlight(lang, code, ...args) has been deprecated."),rn("10.7.0",`Please use highlight(code, options) instead.
|
|
274
|
+
https://github.com/highlightjs/highlight.js/issues/2277`),qt=me,St=De),it===void 0&&(it=!0);const Pn={code:St,language:qt};Hn("before:highlight",Pn);const Fn=Pn.result?Pn.result:Li(Pn.language,Pn.code,it);return Fn.code=Pn.code,Hn("after:highlight",Fn),Fn}function Li(me,De,it,St){const qt=Object.create(null);function Pn(Te,ze){return Te.keywords[ze]}function Fn(){if(!Ke.keywords){Zt.addText(mt);return}let Te=0;Ke.keywordPatternRe.lastIndex=0;let ze=Ke.keywordPatternRe.exec(mt),Ze="";for(;ze;){Ze+=mt.substring(Te,ze.index);const gt=li.case_insensitive?ze[0].toLowerCase():ze[0],kt=Pn(Ke,gt);if(kt){const[Qn,Po]=kt;if(Zt.addText(Ze),Ze="",qt[gt]=(qt[gt]||0)+1,qt[gt]<=wi&&(oa+=Po),Qn.startsWith("_"))Ze+=ze[0];else{const hl=li.classNameAliases[Qn]||Qn;fn(ze[0],hl)}}else Ze+=ze[0];Te=Ke.keywordPatternRe.lastIndex,ze=Ke.keywordPatternRe.exec(mt)}Ze+=mt.substring(Te),Zt.addText(Ze)}function aa(){if(mt==="")return;let Te=null;if(typeof Ke.subLanguage=="string"){if(!ce[Ke.subLanguage]){Zt.addText(mt);return}Te=Li(Ke.subLanguage,mt,!0,ct[Ke.subLanguage]),ct[Ke.subLanguage]=Te._top}else Te=ja(mt,Ke.subLanguage.length?Ke.subLanguage:null);Ke.relevance>0&&(oa+=Te.relevance),Zt.__addSublanguage(Te._emitter,Te.language)}function dn(){Ke.subLanguage!=null?aa():Fn(),mt=""}function fn(Te,ze){Te!==""&&(Zt.startScope(ze),Zt.addText(Te),Zt.endScope())}function ra(Te,ze){let Ze=1;const gt=ze.length-1;for(;Ze<=gt;){if(!Te._emit[Ze]){Ze++;continue}const kt=li.classNameAliases[Te[Ze]]||Te[Ze],Qn=ze[Ze];kt?fn(Qn,kt):(mt=Qn,Fn(),mt=""),Ze++}}function za(Te,ze){return Te.scope&&typeof Te.scope=="string"&&Zt.openNode(li.classNameAliases[Te.scope]||Te.scope),Te.beginScope&&(Te.beginScope._wrap?(fn(mt,li.classNameAliases[Te.beginScope._wrap]||Te.beginScope._wrap),mt=""):Te.beginScope._multi&&(ra(Te.beginScope,ze),mt="")),Ke=Object.create(Te,{parent:{value:Ke}}),Ke}function sa(Te,ze,Ze){let gt=M(Te.endRe,Ze);if(gt){if(Te["on:end"]){const kt=new i(Te);Te["on:end"](ze,kt),kt.isMatchIgnored&&(gt=!1)}if(gt){for(;Te.endsParent&&Te.parent;)Te=Te.parent;return Te}}if(Te.endsWithParent)return sa(Te.parent,ze,Ze)}function Xt(Te){return Ke.matcher.regexIndex===0?(mt+=Te[0],1):(rs=!0,0)}function Uo(Te){const ze=Te[0],Ze=Te.rule,gt=new i(Ze),kt=[Ze.__beforeBegin,Ze["on:begin"]];for(const Qn of kt)if(Qn&&(Qn(Te,gt),gt.isMatchIgnored))return Xt(ze);return Ze.skip?mt+=ze:(Ze.excludeBegin&&(mt+=ze),dn(),!Ze.returnBegin&&!Ze.excludeBegin&&(mt=ze)),za(Ze,Te),Ze.returnBegin?0:ze.length}function Bo(Te){const ze=Te[0],Ze=De.substring(Te.index),gt=sa(Ke,Te,Ze);if(!gt)return un;const kt=Ke;Ke.endScope&&Ke.endScope._wrap?(dn(),fn(ze,Ke.endScope._wrap)):Ke.endScope&&Ke.endScope._multi?(dn(),ra(Ke.endScope,Te)):kt.skip?mt+=ze:(kt.returnEnd||kt.excludeEnd||(mt+=ze),dn(),kt.excludeEnd&&(mt=ze));do Ke.scope&&Zt.closeNode(),!Ke.skip&&!Ke.subLanguage&&(oa+=Ke.relevance),Ke=Ke.parent;while(Ke!==gt.parent);return gt.starts&&za(gt.starts,Te),kt.returnEnd?0:ze.length}function $o(){const Te=[];for(let ze=Ke;ze!==li;ze=ze.parent)ze.scope&&Te.unshift(ze.scope);Te.forEach(ze=>Zt.openNode(ze))}let si={};function la(Te,ze){const Ze=ze&&ze[0];if(mt+=Te,Ze==null)return dn(),0;if(si.type==="begin"&&ze.type==="end"&&si.index===ze.index&&Ze===""){if(mt+=De.slice(ze.index,ze.index+1),!Ot){const gt=new Error(`0 width match regex (${me})`);throw gt.languageName=me,gt.badRule=si.rule,gt}return 1}if(si=ze,ze.type==="begin")return Uo(ze);if(ze.type==="illegal"&&!it){const gt=new Error('Illegal lexeme "'+Ze+'" for mode "'+(Ke.scope||"<unnamed>")+'"');throw gt.mode=Ke,gt}else if(ze.type==="end"){const gt=Bo(ze);if(gt!==un)return gt}if(ze.type==="illegal"&&Ze==="")return ze.index===De.length||(mt+=`
|
|
275
|
+
`),1;if(xn>1e5&&xn>ze.index*3)throw new Error("potential infinite loop, way more iterations than matches");return mt+=Ze,Ze.length}const li=Ei(me);if(!li)throw pt(ot.replace("{}",me)),new Error('Unknown language: "'+me+'"');const Ho=sn(li);let as="",Ke=St||Ho;const ct={},Zt=new Ne.__emitter(Ne);$o();let mt="",oa=0,bn=0,xn=0,rs=!1;try{if(li.__emitTokens)li.__emitTokens(De,Zt);else{for(Ke.matcher.considerAll();;){xn++,rs?rs=!1:Ke.matcher.considerAll(),Ke.matcher.lastIndex=bn;const Te=Ke.matcher.exec(De);if(!Te)break;const ze=De.substring(bn,Te.index),Ze=la(ze,Te);bn=Te.index+Ze}la(De.substring(bn))}return Zt.finalize(),as=Zt.toHTML(),{language:me,value:as,relevance:oa,illegal:!1,_emitter:Zt,_top:Ke}}catch(Te){if(Te.message&&Te.message.includes("Illegal"))return{language:me,value:Oa(De),illegal:!0,relevance:0,_illegalBy:{message:Te.message,index:bn,context:De.slice(bn-100,bn+100),mode:Te.mode,resultSoFar:as},_emitter:Zt};if(Ot)return{language:me,value:Oa(De),illegal:!1,relevance:0,errorRaised:Te,_emitter:Zt,_top:Ke};throw Te}}function Ma(me){const De={value:Oa(me),illegal:!1,relevance:0,_top:Ae,_emitter:new Ne.__emitter(Ne)};return De._emitter.addText(me),De}function ja(me,De){De=De||Ne.languages||Object.keys(ce);const it=Ma(me),St=De.filter(Ei).filter(is).map(dn=>Li(dn,me,!1));St.unshift(it);const qt=St.sort((dn,fn)=>{if(dn.relevance!==fn.relevance)return fn.relevance-dn.relevance;if(dn.language&&fn.language){if(Ei(dn.language).supersetOf===fn.language)return 1;if(Ei(fn.language).supersetOf===dn.language)return-1}return 0}),[Pn,Fn]=qt,aa=Pn;return aa.secondBest=Fn,aa}function ia(me,De,it){const St=De&&Se[De]||it;me.classList.add("hljs"),me.classList.add(`language-${St}`)}function Ra(me){let De=null;const it=Vt(me);if(Pe(it))return;if(Hn("before:highlightElement",{el:me,language:it}),me.dataset.highlighted){console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",me);return}if(me.children.length>0&&(Ne.ignoreUnescapedHTML||(console.warn("One of your code blocks includes unescaped HTML. This is a potentially serious security risk."),console.warn("https://github.com/highlightjs/highlight.js/wiki/security"),console.warn("The element with unescaped HTML:"),console.warn(me)),Ne.throwUnescapedHTML))throw new na("One of your code blocks includes unescaped HTML.",me.innerHTML);De=me;const St=De.textContent,qt=it?Ht(St,{language:it,ignoreIllegals:!0}):ja(St);me.innerHTML=qt.value,me.dataset.highlighted="yes",ia(me,it,qt.language),me.result={language:qt.language,re:qt.relevance,relevance:qt.relevance},qt.secondBest&&(me.secondBest={language:qt.secondBest.language,relevance:qt.secondBest.relevance}),Hn("after:highlightElement",{el:me,result:qt,text:St})}function br(me){Ne=Kt(Ne,me)}const Do=()=>{Da(),rn("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")};function hd(){Da(),rn("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")}let dl=!1;function Da(){function me(){Da()}if(document.readyState==="loading"){dl||window.addEventListener("DOMContentLoaded",me,!1),dl=!0;return}document.querySelectorAll(Ne.cssSelector).forEach(Ra)}function xr(me,De){let it=null;try{it=De(B)}catch(St){if(pt("Language definition for '{}' could not be registered.".replace("{}",me)),Ot)pt(St);else throw St;it=Ae}it.name||(it.name=me),ce[me]=it,it.rawDefinition=De.bind(null,B),it.aliases&&fl(it.aliases,{languageName:me})}function md(me){delete ce[me];for(const De of Object.keys(Se))Se[De]===me&&delete Se[De]}function zo(){return Object.keys(ce)}function Ei(me){return me=(me||"").toLowerCase(),ce[me]||ce[Se[me]]}function fl(me,{languageName:De}){typeof me=="string"&&(me=[me]),me.forEach(it=>{Se[it.toLowerCase()]=De})}function is(me){const De=Ei(me);return De&&!De.disableAutodetect}function pl(me){me["before:highlightBlock"]&&!me["before:highlightElement"]&&(me["before:highlightElement"]=De=>{me["before:highlightBlock"](Object.assign({block:De.el},De))}),me["after:highlightBlock"]&&!me["after:highlightElement"]&&(me["after:highlightElement"]=De=>{me["after:highlightBlock"](Object.assign({block:De.el},De))})}function Lo(me){pl(me),Ge.push(me)}function Io(me){const De=Ge.indexOf(me);De!==-1&&Ge.splice(De,1)}function Hn(me,De){const it=me;Ge.forEach(function(St){St[it]&&St[it](De)})}function ln(me){return rn("10.7.0","highlightBlock will be removed entirely in v12.0"),rn("10.7.0","Please use highlightElement now."),Ra(me)}Object.assign(B,{highlight:Ht,highlightAuto:ja,highlightAll:Da,highlightElement:Ra,highlightBlock:ln,configure:br,initHighlighting:Do,initHighlightingOnLoad:hd,registerLanguage:xr,unregisterLanguage:md,listLanguages:zo,getLanguage:Ei,registerAliases:fl,autoDetection:is,inherit:Kt,addPlugin:Lo,removePlugin:Io}),B.debugMode=function(){Ot=!1},B.safeMode=function(){Ot=!0},B.versionString=vi,B.regex={concat:N,lookahead:v,either:S,optional:k,anyNumberOfTimes:y};for(const me in J)typeof J[me]=="object"&&e(J[me]);return Object.assign(B,J),B},ki=Rn({});return ki.newInstance=()=>Rn({}),Eh=ki,ki.HighlightJS=ki,ki.default=ki,Eh}var gL=mL();const bL=Pu(gL),Q0={},xL="hljs-";function yL(e){const i=bL.newInstance();return e&&u(e),{highlight:a,highlightAuto:s,listLanguages:o,register:u,registerAlias:d,registered:p};function a(m,g,x){const b=x||Q0,v=typeof b.prefix=="string"?b.prefix:xL;if(!i.getLanguage(m))throw new Error("Unknown language: `"+m+"` is not registered");i.configure({__emitter:vL,classPrefix:v});const y=i.highlight(g,{ignoreIllegals:!0,language:m});if(y.errorRaised)throw new Error("Could not highlight with `Highlight.js`",{cause:y.errorRaised});const k=y._emitter.root,N=k.data;return N.language=y.language,N.relevance=y.relevance,k}function s(m,g){const b=(g||Q0).subset||o();let v=-1,y=0,k;for(;++v<b.length;){const N=b[v];if(!i.getLanguage(N))continue;const _=a(N,m,g);_.data&&_.data.relevance!==void 0&&_.data.relevance>y&&(y=_.data.relevance,k=_)}return k||{type:"root",children:[],data:{language:void 0,relevance:y}}}function o(){return i.listLanguages()}function u(m,g){if(typeof m=="string")i.registerLanguage(m,g);else{let x;for(x in m)Object.hasOwn(m,x)&&i.registerLanguage(x,m[x])}}function d(m,g){if(typeof m=="string")i.registerAliases(typeof g=="string"?g:[...g],{languageName:m});else{let x;for(x in m)if(Object.hasOwn(m,x)){const b=m[x];i.registerAliases(typeof b=="string"?b:[...b],{languageName:x})}}}function p(m){return!!i.getLanguage(m)}}class vL{constructor(i){this.options=i,this.root={type:"root",children:[],data:{language:void 0,relevance:0}},this.stack=[this.root]}addText(i){if(i==="")return;const a=this.stack[this.stack.length-1],s=a.children[a.children.length-1];s&&s.type==="text"?s.value+=i:a.children.push({type:"text",value:i})}startScope(i){this.openNode(String(i))}endScope(){this.closeNode()}__addSublanguage(i,a){const s=this.stack[this.stack.length-1],o=i.root.children;a?s.children.push({type:"element",tagName:"span",properties:{className:[a]},children:o}):s.children.push(...o)}openNode(i){const a=this,s=i.split(".").map(function(d,p){return p?d+"_".repeat(p):a.options.classPrefix+d}),o=this.stack[this.stack.length-1],u={type:"element",tagName:"span",properties:{className:s},children:[]};o.children.push(u),this.stack.push(u)}closeNode(){this.stack.pop()}finalize(){}toHTML(){return""}}const wL={};function kL(e){const i=e||wL,a=i.aliases,s=i.detect||!1,o=i.languages||hL,u=i.plainText,d=i.prefix,p=i.subset;let m="hljs";const g=yL(o);if(a&&g.registerAlias(a),d){const x=d.indexOf("-");m=x===-1?d:d.slice(0,x)}return function(x,b){fd(x,"element",function(v,y,k){if(v.tagName!=="code"||!k||k.type!=="element"||k.tagName!=="pre")return;const N=EL(v);if(N===!1||!N&&!s||N&&u&&u.includes(N))return;Array.isArray(v.properties.className)||(v.properties.className=[]),v.properties.className.includes(m)||v.properties.className.unshift(m);const _=B4(v,{whitespace:"pre"});let S;try{S=N?g.highlight(N,_,{prefix:d}):g.highlightAuto(_,{prefix:d,subset:p})}catch(C){const M=C;if(N&&/Unknown language/.test(M.message)){b.message("Cannot highlight as `"+N+"`, it’s not registered",{ancestors:[k,v],cause:M,place:v.position,ruleId:"missing-language",source:"rehype-highlight"});return}throw M}!N&&S.data&&S.data.language&&v.properties.className.push("language-"+S.data.language),S.children.length>0&&(v.children=S.children)})}}function EL(e){const i=e.properties.className;let a=-1;if(!Array.isArray(i))return;let s;for(;++a<i.length;){const o=String(i[a]);if(o==="no-highlight"||o==="nohighlight")return!1;!s&&o.slice(0,5)==="lang-"&&(s=o.slice(5)),!s&&o.slice(0,9)==="language-"&&(s=o.slice(9))}return s}function _L(e){const i=Array.isArray(e)?e[0]:e;if(i&&typeof i=="object"&&"props"in i){const a=i.props,s=/language-([\w-]+)/.exec(a?.className??"");if(s)return s[1]}return""}function pm(e){return e==null||typeof e=="boolean"?"":typeof e=="string"||typeof e=="number"?String(e):Array.isArray(e)?e.map(pm).join(""):q.isValidElement(e)?pm(e.props.children):""}function NL(e,i){return e==="svg"?/<svg[\s>]/i.test(i):e==="html"||e==="htm"?/<(html|body|canvas|script|style|svg|main|section|div|h1|button)\b/i.test(i):!1}function SL(e,i){if(/<!doctype|<html[\s>]/i.test(i))return i;const a='<!doctype html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1">';return e==="svg"?`${a}<style>html,body{margin:0;min-height:100%}body{display:grid;place-items:center;background:#fff}svg{max-width:100%;height:auto}</style></head><body>${i}</body></html>`:`${a}</head><body>${i}</body></html>`}function cE({html:e,reloadKey:i,className:a}){const s=q.useRef(null);return q.useEffect(()=>{const o=s.current;if(!o)return;const u=d=>{d.source===o.contentWindow&&d.data?.type==="maxcode-preview-ready"&&o.contentWindow?.postMessage({type:"maxcode-preview",html:e},"*")};return window.addEventListener("message",u),()=>window.removeEventListener("message",u)},[e,i]),c.jsx("iframe",{ref:s,src:"/preview-host.html",title:"Live preview",sandbox:"allow-scripts allow-pointer-lock allow-forms allow-modals",allow:"fullscreen",className:pe("block h-full w-full border-0 bg-white",a)},i)}function TL({html:e,onClose:i}){const[a,s]=q.useState(0);return q.useEffect(()=>{const o=u=>{u.key==="Escape"&&i()};return window.addEventListener("keydown",o),()=>window.removeEventListener("keydown",o)},[i]),Ao.createPortal(c.jsxs("div",{className:"fixed inset-0 z-[90] flex flex-col bg-canvas/95 p-3 backdrop-blur-sm sm:p-5",role:"dialog","aria-label":"Live preview",children:[c.jsxs("div",{className:"mb-3 flex items-center justify-between",children:[c.jsx("p",{className:"text-[13.5px] font-medium text-ink",children:"Live preview"}),c.jsxs("div",{className:"flex items-center gap-1",children:[c.jsx("button",{type:"button",className:"icon-button",onClick:()=>s(o=>o+1),title:"Restart","aria-label":"Restart preview",children:c.jsx(kv,{size:16})}),c.jsx("button",{type:"button",className:"icon-button",onClick:i,title:"Close (Esc)","aria-label":"Close preview",children:c.jsx(Ta,{size:18})})]})]}),c.jsx("div",{className:"min-h-0 flex-1 overflow-hidden rounded-2xl border border-line bg-white shadow-float",children:c.jsx(cE,{html:e,reloadKey:a})})]}),document.body)}function CL({children:e,streaming:i}){const[a,s]=q.useState(!1),[o,u]=q.useState("code"),[d,p]=q.useState(0),[m,g]=q.useState(!1),x=_L(e)||"text",b=q.useMemo(()=>pm(e),[e]),v=!i&&NL(x,b),y=q.useMemo(()=>v?SL(x,b):"",[v,x,b]),k=v&&o==="preview",N=async()=>{try{await navigator.clipboard.writeText(b),s(!0),window.setTimeout(()=>s(!1),1600)}catch{}};return c.jsxs("div",{className:"code-shell group/code",children:[c.jsxs("div",{className:"code-head",children:[v?c.jsx("div",{className:"inline-flex items-center rounded-lg bg-raised/80 p-0.5",role:"tablist","aria-label":"Code or preview",children:["code","preview"].map(_=>c.jsx("button",{type:"button",role:"tab","aria-selected":o===_,onClick:()=>u(_),className:pe("h-6 rounded-md px-2.5 text-[11.5px] font-medium capitalize transition-colors",o===_?"bg-panel text-ink shadow-pill":"text-muted hover:text-ink"),children:_},_))}):c.jsx("span",{className:"code-lang",children:x}),c.jsxs("div",{className:"flex items-center gap-0.5",children:[k&&c.jsxs(c.Fragment,{children:[c.jsx("button",{type:"button",onClick:()=>p(_=>_+1),className:"inline-flex h-7 w-7 items-center justify-center rounded-md text-faint transition-colors hover:bg-panel hover:text-ink",title:"Restart","aria-label":"Restart preview",children:c.jsx(kv,{size:13})}),c.jsx("button",{type:"button",onClick:()=>g(!0),className:"inline-flex h-7 w-7 items-center justify-center rounded-md text-faint transition-colors hover:bg-panel hover:text-ink",title:"Full screen","aria-label":"Open preview full screen",children:c.jsx(S2,{size:13})})]}),v&&c.jsx("button",{type:"button",onClick:()=>Qh(x==="svg"?"image.svg":"index.html",x==="svg"?b:y,x==="svg"?"image/svg+xml":"text/html"),className:"inline-flex h-7 w-7 items-center justify-center rounded-md text-faint transition-colors hover:bg-panel hover:text-ink",title:"Download file","aria-label":"Download file",children:c.jsx(pv,{size:13})}),c.jsxs("button",{type:"button",onClick:N,className:"inline-flex h-7 items-center gap-1 rounded-md px-1.5 text-[11.5px] font-medium text-faint transition-colors hover:bg-panel hover:text-ink","aria-label":"Copy code",children:[a?c.jsx(Sn,{size:13}):c.jsx(qu,{size:13}),a?"Copied":"Copy"]})]})]}),k?c.jsx("div",{className:"h-[420px] min-h-[220px] resize-y overflow-hidden border-t border-line/60 bg-white",children:c.jsx(cE,{html:y,reloadKey:d})}):c.jsx("pre",{className:"code-pre thin-scroll",children:e}),m&&c.jsx(TL,{html:y,onClose:()=>g(!1)})]})}function AL({content:e,streaming:i}){return c.jsx("div",{className:pe("md",i&&"is-streaming"),children:c.jsx(mD,{remarkPlugins:[j4],rehypePlugins:[[kL,{detect:!0,ignoreMissing:!0}]],components:{pre:({children:a})=>c.jsx(CL,{streaming:i,children:a}),a:({children:a,href:s})=>c.jsx("a",{href:s,target:"_blank",rel:"noreferrer noopener",children:a})},children:e})})}const uE=q.memo(AL);function J0(e,i){an.approval?an.approval.resolveApproval(e,i):cw(e,i)}function OL(e){switch(e){case"awaiting":return{label:"Needs approval",className:"text-warning",dot:"bg-warning"};case"running":return{label:"Running",className:"text-accent",dot:"bg-accent"};case"done":return{label:"Done",className:"text-success",dot:"bg-success"};case"denied":return{label:"Denied",className:"text-muted",dot:"bg-faint"};default:return{label:"Failed",className:"text-danger",dot:"bg-danger"}}}function ML(e){return e===void 0?"":e<1e3?`${e}ms`:`${(e/1e3).toFixed(1)}s`}function jL(e){switch(e){case"shell":return"OpenSol wants to run this command in the open workspace.";case"write_file":return"OpenSol wants to create or overwrite this file on disk.";case"edit_file":case"rewrite_file":return"OpenSol wants to change this file on disk.";case"git":return"OpenSol wants to change the Git state of this repository.";case"subagent":return"OpenSol wants to start a read-only subagent to investigate.";case"web_search":return"OpenSol wants to search the web.";case"read_url":return"OpenSol wants to read this public page.";default:return"OpenSol wants to use this tool."}}function dE({message:e,compact:i=!1}){const[a,s]=q.useState(!i&&e.status==="awaiting"||e.status==="error"),[o,u]=q.useState(!1),d=be(k=>k.notify),p=OL(e.status),m=dw(e.call.name,e.call.args),g=e.call.args,x=typeof g.command=="string"?g.command:"",b=typeof g.content=="string"?g.content:typeof g.newText=="string"?g.newText:typeof g.oldText=="string"?g.oldText:"";q.useEffect(()=>{(e.status==="awaiting"||e.status==="error")&&s(!0)},[e.status]);const v=async()=>{try{await navigator.clipboard.writeText(e.result??""),u(!0),window.setTimeout(()=>u(!1),1600)}catch{d("Clipboard access was blocked by the browser.","error")}},y=e.status==="done"&&e.durationMs!==void 0?ML(e.durationMs):e.status==="done"?"":p.label.toLowerCase();return c.jsxs("div",{className:"text-[12.5px]",children:[c.jsxs("button",{type:"button",onClick:()=>s(k=>!k),className:"group/row flex w-full min-w-0 items-baseline gap-1.5 py-[3px] text-left","aria-expanded":a,children:[c.jsx(bm,{size:12,strokeWidth:2,className:pe("relative top-[1px] shrink-0 self-center text-faint transition-transform duration-200 ease-out group-hover/row:text-ink",a&&"rotate-90")}),c.jsx("span",{className:"shrink-0 font-medium text-ink",children:Im(e.call.name)}),c.jsx("span",{className:"min-w-0 flex-1 truncate font-mono text-[11.5px] text-muted",children:m||"—"}),y&&c.jsx("span",{className:pe("shrink-0 text-[11px]",e.status==="running"?"text-shimmer":e.status==="done"?"text-faint":p.className),children:y})]}),e.status==="awaiting"&&c.jsxs("div",{className:"animate-fade py-1 pl-[18px]",children:[c.jsx("p",{className:"text-[12px] leading-relaxed text-warning",children:jL(e.call.name)}),c.jsxs("p",{className:"mt-1 flex items-center gap-4 text-[12px] font-medium",children:[c.jsx("button",{type:"button",onClick:()=>J0(e.call.id,!0),className:"text-ink underline decoration-ink/30 underline-offset-[3px] transition-colors hover:decoration-ink",children:"Allow once →"}),c.jsx("button",{type:"button",onClick:()=>J0(e.call.id,!1),className:"text-muted transition-colors hover:text-ink",children:"Deny"})]})]}),a&&c.jsxs("div",{className:"animate-fade space-y-2 pb-1.5 pl-[18px] pt-0.5",children:[x&&c.jsxs("pre",{className:"thin-scroll max-h-40 overflow-auto whitespace-pre-wrap break-words font-mono text-[11.5px] leading-relaxed text-ink",children:["$ ",x]}),b&&c.jsx("pre",{className:"thin-scroll max-h-48 overflow-auto whitespace-pre-wrap break-words font-mono text-[11px] leading-relaxed text-muted",children:b.length>4e3?`${b.slice(0,4e3)}
|
|
276
|
+
… ${b.length-4e3} more characters`:b}),e.result!==void 0&&c.jsxs("div",{children:[c.jsxs("p",{className:"mb-1 flex items-center gap-3 text-[11px] text-faint",children:[c.jsx("span",{children:e.status==="error"?"Error":"Output"}),c.jsx("button",{type:"button",onClick:v,className:"transition-colors hover:text-ink",children:o?"Copied":"Copy"})]}),c.jsx("pre",{className:pe("thin-scroll max-h-72 overflow-auto whitespace-pre-wrap break-words font-mono text-[11.5px] leading-[1.65]",e.status==="error"?"text-danger":"text-muted"),children:e.result||"(no output)"})]}),e.result===void 0&&!x&&!b&&e.status!=="awaiting"&&c.jsx("p",{className:"text-[11.5px] text-muted",children:e.status==="running"?"Working…":"No result was recorded."})]})]})}function _h(e){return e?e>=1e3?`${(e/1e3).toFixed(1)}k`:String(e):""}function Nh({message:e,sessionId:i,canEdit:a}){const[s,o]=q.useState(!1),[u,d]=q.useState(e.content),p=()=>{const x=u.trim();if(!x)return;const b=We.getState().sessions.find(k=>k.id===i),v=b?.messages.findIndex(k=>k.id===e.id)??-1;if(!b||v<0)return;const y=Mi("msg");We.getState().updateSession(i,{messages:b.messages.slice(0,v)}),We.getState().addMessage(i,{...e,id:y,content:x,createdAt:Date.now()}),o(!1),Cw(i,y)},m=(e.attachments??[]).filter(x=>x.kind==="image"),g=(e.attachments??[]).filter(x=>x.kind==="text");return s?c.jsx("div",{className:"flex justify-end",children:c.jsxs("div",{className:"w-full max-w-[88%] rounded-2xl border border-accent/40 bg-canvas p-2.5 sm:max-w-[82%]",children:[c.jsx("textarea",{value:u,onChange:x=>d(x.target.value),onKeyDown:x=>{x.key==="Enter"&&!x.shiftKey&&!x.nativeEvent.isComposing&&(x.preventDefault(),p()),x.key==="Escape"&&o(!1)},autoFocus:!0,rows:Math.min(10,Math.max(2,u.split(`
|
|
277
|
+
`).length)),className:"chat-text block w-full resize-none bg-transparent px-2 py-1 leading-[1.65] text-ink outline-none","aria-label":"Edit message"}),c.jsxs("div",{className:"mt-1 flex items-center justify-between gap-2 px-1",children:[c.jsx("p",{className:"text-[11.5px] text-faint",children:"Sending replaces the reply below."}),c.jsxs("div",{className:"flex items-center gap-1.5",children:[c.jsx("button",{type:"button",onClick:()=>o(!1),className:"h-8 rounded-full px-3 text-[12.5px] text-muted transition-colors hover:text-ink",children:"Cancel"}),c.jsx("button",{type:"button",onClick:p,disabled:!u.trim(),className:"h-8 rounded-full bg-accent px-3.5 text-[12.5px] font-medium text-on-accent transition hover:brightness-110 disabled:opacity-40",children:"Send"})]})]})]})}):c.jsxs("div",{className:"group/user flex items-start justify-end gap-1.5",children:[a&&e.content&&c.jsx("button",{type:"button",onClick:()=>{d(e.content),o(!0)},className:"mt-2 inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-lg text-faint opacity-0 transition hover:bg-raised hover:text-ink focus-visible:opacity-100 group-hover/user:opacity-100",title:"Edit and resend","aria-label":"Edit and resend message",children:c.jsx(_m,{size:14,strokeWidth:1.7})}),c.jsxs("div",{className:"max-w-[88%] sm:max-w-[82%]",children:[m.length>0&&c.jsx("div",{className:pe("mb-2 grid gap-2",m.length>1?"grid-cols-2":"grid-cols-1"),children:m.map(x=>c.jsx("img",{src:x.dataUrl,alt:x.name,className:"max-h-52 w-full rounded-xl border border-line object-cover"},x.id))}),c.jsxs("div",{className:"rounded-2xl rounded-br-md border border-line/70 bg-canvas px-4 py-2.5",children:[g.length>0&&c.jsx("div",{className:"mb-2 flex flex-wrap gap-1.5",children:g.map(x=>c.jsxs("span",{className:"inline-flex items-center gap-1.5 rounded-md border border-line bg-panel px-2 py-1 text-[10.5px] text-muted",children:[c.jsx(Na,{size:11}),c.jsx("span",{className:"max-w-[180px] truncate",children:x.name}),c.jsx("span",{className:"text-faint",children:Co(x.size)})]},x.id))}),e.content&&c.jsx("p",{className:"chat-text whitespace-pre-wrap break-words leading-[1.65] text-ink",children:e.content})]})]})]})}const RL=new Set(["write_file","rewrite_file","edit_file"]);function W0(e){const i=new Set;for(const a of e){if(a.status!=="done"||!RL.has(a.call.name))continue;const s=a.call.args.path;typeof s=="string"&&s&&i.add(s)}return[...i]}function DL({turnId:e,files:i}){const a=be(g=>g.askConfirm),s=be(g=>g.notify),[o,u]=q.useState("idle"),d=i.slice(0,2).join(", "),p=i.length-2,m=async()=>{if(await a({title:"Undo these file changes?",body:`${i.length===1?"This file goes":`These ${i.length} files go`} back to how ${i.length===1?"it was":"they were"} before this answer. Changes made through shell commands are not affected.`,confirmLabel:"Undo changes"})){u("working");try{const x=await WT(e),b=[x.restored.length?`restored ${x.restored.length}`:"",x.removed.length?`removed ${x.removed.length}`:"",x.skipped.length?`${x.skipped.length} too large to restore`:""].filter(Boolean);s(`Undone: ${b.join(", ")||"nothing to change"}.`,"success"),u("undone"),await Be.getState().refresh().catch(()=>{})}catch(x){u("idle"),s(x instanceof Error?x.message:"Could not undo those changes.","error")}}};return c.jsxs("p",{className:"flex items-baseline gap-2 text-[12.5px] text-muted",children:[c.jsx("span",{className:"min-w-0 truncate",children:o==="undone"?"Changes undone":`Changed ${d}${p>0?` and ${p} more`:""}`}),o!=="undone"&&c.jsx("button",{type:"button",onClick:()=>{m()},disabled:o==="working",className:"shrink-0 font-medium text-ink underline decoration-ink/30 underline-offset-[3px] transition-colors hover:decoration-ink disabled:opacity-50",children:o==="working"?"Undoing…":"Undo"})]})}function zL({tools:e,intermediateMessages:i=[],streaming:a=!1}){const[s,o]=q.useState(!1),u=q.useRef(!1),d=Re(k=>k.autoCollapseWork),p=Re(k=>k.workDetail==="detailed"),m=e.some(k=>k.status==="awaiting"),g=a||e.some(k=>k.status==="running");if(q.useEffect(()=>{m?o(!0):g?(u.current=!0,o(!0)):u.current&&d&&(u.current=!1,o(!1))},[g,m,d]),e.length===0&&i.length===0)return null;const x=[...new Set(e.map(k=>Im(k.call.name)))],b=e.filter(k=>k.status==="error"||k.status==="denied").length,v=x.length<=3?x.join(" · "):`${x.slice(0,3).join(" · ")} +${x.length-3}`,y=[...e.map(k=>({kind:"tool",tool:k,time:k.createdAt})),...i.map(k=>({kind:"assistant",message:k,time:k.createdAt}))].sort((k,N)=>k.time-N.time);return c.jsxs("div",{className:"my-1",children:[c.jsxs("button",{type:"button",onClick:()=>{u.current=!1,o(k=>!k)},className:"group/task flex max-w-full items-baseline gap-1.5 py-0.5 text-left text-[13px]","aria-expanded":s,children:[c.jsx(bm,{size:13,strokeWidth:2,className:pe("relative top-[1px] shrink-0 self-center text-faint transition-transform duration-200 ease-out group-hover/task:text-ink",s&&"rotate-90")}),c.jsx("span",{className:pe("shrink-0 font-medium transition-colors",m?"text-warning":g?"text-shimmer":"text-ink/80 group-hover/task:text-ink"),children:m?"Action required":g?"Running task…":"Task completed"}),c.jsxs("span",{className:"min-w-0 truncate text-[12px] text-faint",children:[e.length>0&&`Used ${e.length} tool${e.length===1?"":"s"}`,v?` (${v})`:""]}),b>0&&c.jsxs("span",{className:"shrink-0 text-[12px] text-danger",children:["· ",b," failed"]})]}),s&&c.jsx("div",{className:"animate-fade space-y-0.5 pb-1 pl-[19px] pt-1",children:y.map(k=>k.kind==="tool"?c.jsx(dE,{message:k.tool,compact:!p},k.tool.id):c.jsxs("div",{className:"py-1",children:[k.message.reasoning.trim()&&c.jsx("div",{className:"thin-scroll max-h-40 overflow-y-auto whitespace-pre-wrap font-mono text-[11px] leading-relaxed text-faint",children:k.message.reasoning}),k.message.content.trim()&&c.jsx("div",{className:"mt-1 text-[12.5px] leading-relaxed text-muted",children:c.jsx(uE,{content:k.message.content})})]},k.message.id))})]})}function Sh({message:e,sessionId:i,streaming:a,isLastAssistant:s,showHeader:o,turnUsage:u}){const d=be(R=>R.notify),p=be(R=>R.openSettings),m=Re(R=>R.showTokenEstimate),g=Nn(R=>e.provider?R.byProvider[e.provider]:void 0),[x,b]=q.useState(!1),[v,y]=q.useState(a),k=!!(e.content.trim()||e.reasoning.trim()||e.error),N=g?.find(R=>R.id===e.model)?.name??e.model??"",_=!!(e.error&&/api key|base url|settings|credential|403|401/i.test(e.error)),S=[],C=u?.input||e.usage?.input,M=u?.output||e.usage?.output;C&&S.push(`${_h(C)} in`),M?S.push(`${_h(M)} out`):m&&e.content.trim()&&S.push(`~${_h(Math.ceil(e.content.length/4))} out`);const I=[N,...S,e.durationMs?`${(e.durationMs/1e3).toFixed(1)}s`:""].filter(Boolean).join(" · ");q.useEffect(()=>{a&&y(!0)},[a]);const F=async()=>{try{await navigator.clipboard.writeText(e.content),b(!0),window.setTimeout(()=>b(!1),1600)}catch{d("Clipboard access was blocked by the browser.","error")}};return!k&&!a?c.jsx("div",{className:"group",children:c.jsxs("div",{className:"min-w-0",children:[o&&c.jsxs("div",{className:"flex items-center gap-2 text-[12px] font-semibold text-ink",children:["OpenSol",N&&c.jsx("span",{className:"font-normal text-faint",children:N})]}),c.jsx("p",{className:"mt-2 text-[13px] text-muted",children:"The model returned an empty response."}),s&&c.jsxs("button",{type:"button",onClick:()=>eh(i),className:"mt-2 inline-flex items-center gap-1.5 text-[11.5px] font-medium text-accent hover:underline",children:[c.jsx(Wi,{size:12})," Try again"]})]})}):c.jsx("div",{className:"group",children:c.jsxs("div",{className:"min-w-0",children:[(o||e.stopped)&&c.jsxs("div",{className:"flex min-h-[22px] items-center gap-1.5",children:[o&&c.jsxs(c.Fragment,{children:[c.jsx(ol,{size:15}),c.jsx("span",{className:"text-[12px] font-medium text-muted",children:"OpenSol"}),N&&c.jsx("span",{className:"truncate text-[11.5px] text-faint",children:N})]}),e.stopped&&c.jsxs("span",{className:"inline-flex items-center gap-1 rounded-full border border-line px-1.5 py-0.5 text-[9.5px] font-medium text-muted",children:[c.jsx(Nm,{size:7,fill:"currentColor"}),"Stopped"]})]}),e.reasoning.trim()&&c.jsxs("div",{className:"mt-1",children:[c.jsxs("button",{type:"button",onClick:()=>y(R=>!R),className:"group/think flex max-w-full items-baseline gap-1.5 py-0.5 text-left text-[12.5px]","aria-expanded":v,children:[c.jsx(bm,{size:12,strokeWidth:2,className:pe("relative top-[1px] shrink-0 self-center text-faint transition-transform duration-200 ease-out group-hover/think:text-ink",v&&"rotate-90")}),c.jsx("span",{className:pe("shrink-0 font-medium",a?"text-shimmer":"text-muted group-hover/think:text-ink"),children:a?"Thinking…":"Thought"}),!v&&c.jsx("span",{className:"min-w-0 truncate text-[11.5px] text-faint",children:e.reasoning.replace(/\s+/g," ").trim().slice(0,120)})]}),v&&c.jsx("div",{className:"thin-scroll animate-fade max-h-72 overflow-y-auto whitespace-pre-wrap break-words py-1 pl-[18px] font-mono text-[11px] leading-[1.65] text-faint",children:e.reasoning})]}),e.content&&c.jsx("div",{className:"mt-1.5",children:c.jsx(uE,{content:e.content,streaming:a})}),a&&!e.content&&!e.reasoning&&c.jsxs("div",{className:"mt-2 flex items-center gap-2 text-[13px] text-muted",children:[c.jsxs("span",{className:"flex items-center gap-1",children:[c.jsx("span",{className:"h-1.5 w-1.5 animate-breathe rounded-full bg-accent"}),c.jsx("span",{className:"h-1.5 w-1.5 animate-breathe rounded-full bg-accent [animation-delay:160ms]"}),c.jsx("span",{className:"h-1.5 w-1.5 animate-breathe rounded-full bg-accent [animation-delay:320ms]"})]}),"Working"]}),e.error&&c.jsx("div",{className:"mt-3 rounded-xl border border-danger/25 bg-danger/[0.045] px-3.5 py-3",children:c.jsxs("div",{className:"flex items-start gap-2",children:[c.jsx(Fu,{size:15,className:"mt-0.5 shrink-0 text-danger"}),c.jsxs("div",{className:"min-w-0 flex-1",children:[c.jsx("p",{className:"text-[12px] font-medium text-ink",children:"The request did not finish"}),c.jsx("p",{className:"mt-1 whitespace-pre-wrap text-[11.5px] leading-relaxed text-muted",children:e.error}),c.jsxs("div",{className:"mt-2.5 flex flex-wrap items-center gap-2",children:[_&&c.jsxs("button",{type:"button",onClick:()=>p("models"),className:"inline-flex h-7 items-center gap-1.5 rounded-lg border border-line bg-panel px-2.5 text-[11.5px] font-medium text-ink hover:bg-raised",children:[c.jsx(_v,{size:12}),"Open model settings"]}),s&&c.jsxs("button",{type:"button",onClick:()=>eh(i),className:"inline-flex h-7 items-center gap-1.5 rounded-lg border border-line bg-panel px-2.5 text-[11.5px] font-medium text-ink hover:bg-raised",children:[c.jsx(Wi,{size:12}),"Try again"]})]})]})]})}),k&&!a&&c.jsxs("div",{className:"mt-2 flex min-h-[28px] flex-wrap items-center gap-0.5 text-[11.5px] text-faint",children:[e.content&&c.jsx("button",{type:"button",onClick:F,className:"inline-flex h-7 w-7 items-center justify-center rounded-lg transition-colors hover:bg-raised hover:text-ink","aria-label":"Copy response",title:x?"Copied":"Copy",children:x?c.jsx(Sn,{size:14,className:"text-success"}):c.jsx(qu,{size:14,strokeWidth:1.7})}),s&&c.jsx("button",{type:"button",onClick:()=>eh(i),className:"inline-flex h-7 w-7 items-center justify-center rounded-lg transition-colors hover:bg-raised hover:text-ink","aria-label":"Regenerate response",title:"Regenerate",children:c.jsx(Wi,{size:14,strokeWidth:1.7})}),c.jsx("span",{className:"ml-2 tabular-nums text-muted",children:I})]})]})})}function LL({turn:e,sessionId:i,streaming:a,lastAssistantId:s,activeTurn:o=!1}){const u=[],d=[];for(const v of e.segments)v.kind==="tools"?u.push(...v.tools):v.kind==="assistant"&&d.push(v.message);const p=u.length>0,m=d[0]?.id,g=d[d.length-1]??null;if(o&&p)return c.jsxs("div",{className:"flex flex-col gap-2.5",children:[e.user&&c.jsx(Nh,{message:e.user,sessionId:i,canEdit:!a}),e.segments.map((v,y)=>v.kind==="tools"?c.jsx("div",{className:"space-y-0.5",children:v.tools.map(k=>c.jsx(dE,{message:k},k.id))},`tools-${y}`):c.jsx(Sh,{message:v.message,sessionId:i,streaming:a&&v.message.id===s,isLastAssistant:v.message.id===s,showHeader:v.message.id===m},v.message.id))]});if(!p){let v=0;return c.jsxs("div",{className:"flex flex-col gap-2.5",children:[e.user&&c.jsx(Nh,{message:e.user,sessionId:i,canEdit:!a}),d.map(y=>c.jsx(Sh,{message:y,sessionId:i,streaming:a&&y.id===s,isLastAssistant:y.id===s,showHeader:v++===0},y.id))]})}const x=d.slice(0,-1),b=d.reduce((v,y)=>({input:v.input+(y.usage?.input??0),output:v.output+(y.usage?.output??0)}),{input:0,output:0});return c.jsxs("div",{className:"flex flex-col gap-2.5",children:[e.user&&c.jsx(Nh,{message:e.user,sessionId:i,canEdit:!a}),c.jsx(zL,{tools:u,intermediateMessages:x}),g&&c.jsx(Sh,{message:g,sessionId:i,streaming:!1,isLastAssistant:g.id===s,showHeader:!0,turnUsage:b},g.id),e.user&&W0(u).length>0&&c.jsx(DL,{turnId:e.user.id,files:W0(u)})]})}const IL=[{value:"all",label:"All"},{value:"30d",label:"30d"},{value:"7d",label:"7d"}],UL=["bg-raised","bg-accent/20","bg-accent/35","bg-accent/55","bg-accent/80"];function BL(e,i){return e<=0?0:i<=1?2:Math.min(4,1+Math.floor(e/i*3))}function Vs({icon:e,label:i,value:a}){return c.jsxs("div",{className:"min-w-0 rounded-lg border border-line/70 bg-canvas px-3 py-2.5",children:[c.jsxs("p",{className:"flex items-center gap-1.5 text-[11.5px] text-muted",children:[c.jsx(e,{size:12,className:"shrink-0 text-faint"}),c.jsx("span",{className:"truncate",children:i})]}),c.jsx("p",{className:"mt-0.5 truncate text-[20px] font-semibold tracking-[-0.03em] text-ink",title:a,children:a})]})}function $L(){const e=Re(o=>o.daemon),i=Be(o=>o.info),s=(e?.home??"").split(/[\\/]/).filter(Boolean).pop()||i.name||"there";return c.jsxs("div",{className:"flex flex-col items-center gap-4 text-center",children:[c.jsxs("div",{className:"relative",children:[c.jsx("span",{className:"absolute inset-0 -z-10 m-auto h-16 w-16 rounded-full bg-accent/20 blur-2xl","aria-hidden":"true"}),c.jsx(Uw,{mood:"wave",size:60})]}),c.jsxs("h1",{className:"text-[28px] font-semibold leading-tight tracking-[-0.035em] text-ink sm:text-[34px]",children:["What should we build, ",c.jsx("span",{className:"text-solar",children:s}),"?"]}),c.jsx("p",{className:"-mt-2 text-[13.5px] text-muted",children:"Local-first agent. Your folder, your keys, your machine."})]})}function HL(){const e=We(m=>m.sessions),[i,a]=q.useState("30d"),[s,o]=q.useState("overview"),u=q.useMemo(()=>LO(e,i),[e,i]),d=q.useMemo(()=>{const m=[];for(let g=0;g<u.heatmap.length;g+=7)m.push(u.heatmap.slice(g,g+7));return m},[u.heatmap]),p=u.models[0]?.tokens??0;return c.jsx("div",{className:"relative w-full",children:c.jsxs("section",{className:"relative overflow-hidden rounded-xl border border-line bg-panel",children:[c.jsxs("div",{className:"relative flex flex-wrap items-center justify-between gap-2 border-b border-line/70 px-3 py-2.5",children:[c.jsx("div",{className:"inline-flex items-center rounded-lg bg-raised p-0.5",children:["overview","models"].map(m=>c.jsx("button",{type:"button",onClick:()=>o(m),className:pe("h-6 rounded-md px-2.5 text-[11.5px] font-medium capitalize transition-colors",s===m?"bg-panel text-ink shadow-pill":"text-muted hover:text-ink"),children:m},m))}),c.jsx("div",{className:"inline-flex items-center gap-0.5 rounded-lg bg-raised p-0.5",children:IL.map(m=>c.jsx("button",{type:"button",onClick:()=>a(m.value),className:pe("h-6 rounded-md px-2.5 text-[11.5px] font-medium transition-colors",i===m.value?"bg-panel text-ink shadow-pill":"text-muted hover:text-ink"),children:m.label},m.value))})]}),s==="overview"?c.jsxs("div",{className:"relative p-3",children:[c.jsxs("div",{className:"grid grid-cols-2 gap-1.5 sm:grid-cols-3",children:[c.jsx(Vs,{icon:dS,label:"Sessions",value:String(u.sessions)}),c.jsx(Vs,{icon:yv,label:"Messages",value:String(u.messages)}),c.jsx(Vs,{icon:hr,label:"Total tokens",value:u.tokens?bo(u.tokens):"0"}),c.jsx(Vs,{icon:SS,label:"Active days",value:String(u.activeDays)}),c.jsx(Vs,{icon:LS,label:"Peak hour",value:u.peakHour}),c.jsx(Vs,{icon:Yr,label:"Favorite model",value:th(u.favoriteModel)})]}),c.jsx("div",{className:"mt-3 overflow-x-auto",children:c.jsx("div",{className:"flex w-max gap-[3px]",children:d.map((m,g)=>c.jsx("div",{className:"grid grid-rows-7 gap-[3px]",children:m.map(x=>c.jsx("span",{className:pe("h-[11px] w-[11px] rounded-[2px]",UL[BL(x.count,u.busiestDay)]),title:`${x.key} · ${x.count} message${x.count===1?"":"s"}`},x.key))},g))})}),c.jsxs("p",{className:"mt-2.5 text-[11px] leading-relaxed text-muted",children:[u.messages===0?"No activity in this range yet. Send a message to start the graph.":`You've used ~${bo(u.tokens)} tokens across ${u.messages} messages.`,u.favoriteModel!=="—"&&c.jsxs(c.Fragment,{children:[c.jsx("span",{className:"px-1.5 text-line",children:"·"}),u.favoriteShare,"% on ",th(u.favoriteModel)]})]})]}):c.jsx("div",{className:"relative p-3",children:u.models.length===0?c.jsxs("div",{className:"rounded-xl border border-dashed border-line px-4 py-8 text-center",children:[c.jsx(Yr,{size:18,className:"mx-auto text-faint"}),c.jsx("p",{className:"mt-2 text-[12px] font-medium text-ink",children:"No model usage yet"}),c.jsx("p",{className:"mt-1 text-[11px] text-muted",children:"Models appear here after you send a message."})]}):c.jsx("div",{className:"space-y-2.5",children:u.models.slice(0,6).map(m=>c.jsxs("div",{children:[c.jsxs("div",{className:"flex items-baseline justify-between gap-3",children:[c.jsx("span",{className:"min-w-0 truncate text-[12px] font-medium text-ink",title:m.model,children:th(m.model)}),c.jsxs("span",{className:"shrink-0 text-[10.5px] tabular-nums text-faint",children:[bo(m.tokens)," · ",m.messages," msg"]})]}),c.jsx("div",{className:"mt-1 h-1.5 overflow-hidden rounded-full bg-raised",children:c.jsx("div",{className:"h-full rounded-full bg-accent/70",style:{width:`${p?Math.max(4,m.tokens/p*100):4}%`}})})]},m.model))})})]})})}function ev(e){return new Date(e).toLocaleTimeString(void 0,{hour:"2-digit",minute:"2-digit"})}function tv(e,i=180){const a=e.replace(/\s+/g," ").trim();return a.length>i?`${a.slice(0,i)}…`:a}function PL(e){switch(e.status){case"running":return{label:"Running",className:"text-accent",dot:"bg-accent animate-pulse"};case"awaiting":return{label:"Needs approval",className:"text-warning",dot:"bg-warning"};case"done":return{label:"Done",className:"text-success",dot:"bg-success"};case"denied":return{label:"Denied",className:"text-muted",dot:"bg-faint"};default:return{label:"Failed",className:"text-danger",dot:"bg-danger"}}}function FL({session:e}){const i=q.useMemo(()=>e.messages,[e.messages]),a=i.filter(s=>s.role==="tool").length;return i.length===0?c.jsx("div",{className:"flex h-full items-center justify-center px-6",children:c.jsxs("div",{className:"text-center",children:[c.jsx(Su,{size:20,className:"mx-auto text-faint"}),c.jsx("p",{className:"mt-2 text-[13px] font-medium text-ink",children:"No trajectory yet"}),c.jsx("p",{className:"mt-1 text-[11.5px] text-muted",children:"Send a message to see every step here."})]})}):c.jsx("div",{className:"thin-scroll h-full overflow-y-auto",children:c.jsxs("div",{className:"mx-auto w-full max-w-[800px] px-4 pb-12 pt-7 sm:px-6",children:[c.jsxs("div",{className:"mb-5 flex items-center justify-between gap-3 border-b border-line pb-3",children:[c.jsxs("div",{children:[c.jsx("p",{className:"text-[13px] font-medium text-ink",children:"Trajectory"}),c.jsxs("p",{className:"mt-0.5 text-[11px] text-muted",children:[i.length," step",i.length===1?"":"s"," · ",a," tool call",a===1?"":"s"]})]}),c.jsx("span",{className:"rounded-full border border-line px-2 py-0.5 text-[10px] text-faint",children:"Read-only view"})]}),c.jsxs("div",{className:"relative",children:[c.jsx("span",{className:"absolute bottom-3 left-[13px] top-3 w-px bg-line","aria-hidden":"true"}),c.jsx("div",{className:"space-y-4",children:i.map(s=>{if(s.role==="user")return c.jsxs("div",{className:"relative flex gap-3",children:[c.jsx("span",{className:"relative z-10 flex h-7 w-7 shrink-0 items-center justify-center rounded-full border border-line bg-panel text-muted",children:c.jsx(wT,{size:13})}),c.jsxs("div",{className:"min-w-0 flex-1 rounded-xl border border-line bg-panel px-3 py-2",children:[c.jsxs("div",{className:"flex items-center justify-between gap-2",children:[c.jsx("span",{className:"text-[11.5px] font-medium text-ink",children:"You"}),c.jsx("span",{className:"text-[9.5px] tabular-nums text-faint",children:ev(s.createdAt)})]}),c.jsx("p",{className:"mt-1 line-clamp-3 text-[12px] leading-relaxed text-muted",children:s.content||"Attachment only"})]})]},s.id);if(s.role==="assistant"){const m=!!(s.content.trim()||s.reasoning.trim());return c.jsxs("div",{className:"relative flex gap-3",children:[c.jsx("span",{className:"relative z-10 flex h-7 w-7 shrink-0 items-center justify-center rounded-full border border-line bg-panel",children:c.jsx(ol,{size:15})}),c.jsxs("div",{className:"min-w-0 flex-1 rounded-xl border border-line bg-panel px-3 py-2",children:[c.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-2",children:[c.jsxs("span",{className:"flex min-w-0 items-center gap-1.5 text-[11.5px] font-medium text-ink",children:["OpenSol",s.model&&c.jsx("span",{className:"truncate text-[10px] font-normal text-faint",children:s.model})]}),c.jsxs("span",{className:"flex items-center gap-1.5 text-[9.5px] tabular-nums text-faint",children:[s.stopped&&c.jsx("span",{className:"text-muted",children:"Stopped"}),ev(s.createdAt)]})]}),m?c.jsx("p",{className:"mt-1 line-clamp-4 whitespace-pre-wrap text-[12px] leading-relaxed text-muted",children:tv(s.content||s.reasoning)}):c.jsx("p",{className:"mt-1 text-[11px] italic text-faint",children:"Model turn with no text."}),s.error&&c.jsxs("p",{className:"mt-1.5 flex items-start gap-1.5 text-[11px] leading-relaxed text-danger",children:[c.jsx(Fu,{size:11,className:"mt-0.5 shrink-0"}),s.error]}),s.toolCalls.length>0&&c.jsxs("p",{className:"mt-1.5 text-[10px] text-faint",children:[s.toolCalls.length," tool call",s.toolCalls.length===1?"":"s"," in this round"]})]})]},s.id)}const o=PL(s),u=s.call.name==="shell",d=["read_file","write_file","edit_file","rewrite_file"].includes(s.call.name),p=u?Sv:d?Na:Su;return c.jsxs("div",{className:"relative flex gap-3",children:[c.jsx("span",{className:"relative z-10 flex h-7 w-7 shrink-0 items-center justify-center rounded-full border border-line bg-panel text-muted",children:c.jsx(p,{size:12})}),c.jsxs("div",{className:"min-w-0 flex-1 rounded-xl border border-line/80 bg-raised/25 px-3 py-2",children:[c.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[c.jsx("span",{className:"text-[11.5px] font-medium text-ink",children:Im(s.call.name)}),c.jsx("span",{className:"min-w-0 flex-1 truncate font-mono text-[10.5px] text-muted",children:dw(s.call.name,s.call.args)||"—"}),c.jsxs("span",{className:pe("flex shrink-0 items-center gap-1 text-[10px] font-medium",o.className),children:[s.status==="done"?c.jsx(Sn,{size:10}):c.jsx("span",{className:pe("h-1.5 w-1.5 rounded-full",o.dot)}),o.label,s.durationMs!==void 0&&s.status==="done"?` · ${s.durationMs<1e3?`${s.durationMs}ms`:`${(s.durationMs/1e3).toFixed(1)}s`}`:""]})]}),s.result&&c.jsx("p",{className:"mt-1.5 line-clamp-2 whitespace-pre-wrap break-words font-mono text-[10.5px] leading-relaxed text-faint",children:tv(s.result,160)})]})]},s.id)})})]}),c.jsxs("p",{className:"mt-6 flex items-center justify-center gap-1 text-[10px] text-faint",children:["End of trajectory ",c.jsx(fv,{size:10})]})]})})}const qL=[{icon:d2,label:"Build a game",prompt:"Build a small browser game as one self-contained index.html (canvas, no build step). Make it playable with keyboard and touch, with a score and a restart button. Put the whole file in a single html code block so I can preview it."},{icon:y2,label:"Design a landing page",prompt:"Design a polished, responsive landing page for a small indie game studio. Choose a distinctive typographic style, keep it to one file, and put everything in a single html code block so I can preview it."},{icon:_S,label:"Trace a bug",prompt:"Inspect this workspace for a real bug. Explain the root cause, make the smallest correct fix, and run the project checks."},{icon:l2,label:"Audit this folder",prompt:"Audit this workspace. Read the key files first, then list the three most important improvements with file references and a short plan."},{icon:n2,label:"Write tests",prompt:"Find the least-tested, highest-risk module in this workspace, write focused tests for it, run them, and fix anything they reveal."},{icon:Jr,label:"Research with sources",prompt:"Search the web for the current release notes of the main framework in this project, then summarise what matters and cite the pages you read."}];function GL(){const e=We(fe=>fe.sessions),i=We(fe=>fe.activeId),a=e.find(fe=>fe.id===i)??null,s=Au(fe=>i?!!fe.streaming[i]:!1),o=Re(),u=Re(fe=>fe.setMode),d=Re(fe=>fe.update),p=be(fe=>fe.notify),m=be(fe=>fe.openSettings),g=be(fe=>fe.focusComposer),x=be(fe=>fe.setWorkspaceOpen),b=be(fe=>fe.setDeployOpen),v=be(fe=>fe.askConfirm),y=Be(fe=>fe.info),k=Be(fe=>fe.git),N=sd(),[_,S]=q.useState(""),[C,M]=q.useState("chat"),I=q.useRef(null),[F,R]=q.useState(!0),A=q.useRef(i),L=q.useRef(null),V=a?.messages??[],D=V[V.length-1],U=[...V].reverse().find(fe=>fe.role==="assistant")?.id,ee=rl(o),ue=xi(o),re=o.skills.filter(fe=>fe.enabled).length,ne=BO(V),P=Ew(V,N),ae=jO(V,s),$=(fe="auto")=>{const T=I.current;T&&T.scrollTo({top:T.scrollHeight,behavior:fe})};q.useEffect(()=>{if(A.current!==i){A.current=i,R(!0),M("chat"),requestAnimationFrame(()=>$("auto"));const fe=We.getState().sessions.find(T=>T.id===i);fe?.mode&&u(fe.mode)}},[i,u]),q.useEffect(()=>{D&&(D.id!==L.current?(L.current=D.id,D.role==="user"?(R(!0),requestAnimationFrame(()=>$("auto"))):F&&requestAnimationFrame(()=>$("auto"))):F&&$("auto"))},[D,F]),q.useEffect(()=>{if(!F)return;const fe=window.setTimeout(()=>$("auto"),40);return()=>window.clearTimeout(fe)},[V,F]);const de=async(fe,T)=>{const j=Re.getState();if(!rl(j))return p(j.provider==="custom"?"Add a base URL for your custom endpoint in Settings → Models.":`Add an API key for ${Am(j.provider)} in Settings → Models.`,"error"),m("models"),!1;const ie=xi(j);if(!ie)return p("Choose a model before sending a message.","error"),m("models"),!1;let he=i;(!he||!We.getState().sessions.some(Ce=>Ce.id===he))&&(he=We.getState().createSession(j.provider,ie,j.mode));const Z=fe.trim(),we=Mi("msg");return We.getState().addMessage(he,{id:we,role:"user",content:Z,attachments:T.length>0?T:void 0,createdAt:Date.now()}),We.getState().updateSession(he,{mode:j.mode}),S(""),R(!0),Cw(he,we),!0},O=fe=>{S(fe),g()},Ie=async(fe,T)=>{switch(fe){case"search":return T.trim()?(d({webSearchEnabled:!0}),de(`Use the web to research this: ${T.trim()}
|
|
278
|
+
|
|
279
|
+
Read the most useful sources, cite the URLs you actually opened, and answer for this workspace.`,[])):(S("/search "),p("Type what you want OpenSol to research.","info"),g(),!1);case"plan":return u("plan"),T.trim()?de(T.trim(),[]):(p("Plan mode is on: investigation only until you switch to Build.","info"),g(),!0);case"build":return u("build"),T.trim()?de(T.trim(),[]):(p("Build mode is on: OpenSol can edit files and run commands.","info"),g(),!0);case"new":return We.getState().newChat(),g(),!0;case"workspace":return x(!0),!0;case"deploy":return b(!0),!0;case"settings":return m("models"),!0;case"clear":{const j=We.getState().sessions.find(he=>he.id===i);return!j||j.messages.length===0||!await v({title:"Clear this conversation?",body:"The messages in this conversation will be removed from your local history. The workspace files are not touched.",confirmLabel:"Clear conversation",tone:"danger"})||(Xh(j.id),We.getState().updateSession(j.id,{messages:[]}),We.getState().updateSession(j.id,{title:"New conversation"}),p("Conversation cleared.","success")),!0}default:return!1}};return c.jsxs("div",{className:"flex min-h-0 min-w-0 flex-1 flex-col bg-panel",children:[c.jsx(PO,{session:a,view:C,onViewChange:M}),!a||V.length===0?c.jsxs("div",{className:"thin-scroll relative min-h-0 flex-1 overflow-y-auto",children:[c.jsx("div",{className:"hero-wash pointer-events-none absolute inset-0","aria-hidden":"true"}),c.jsx("div",{className:"bg-dots pointer-events-none absolute inset-0 opacity-70","aria-hidden":"true"}),c.jsxs("div",{className:"relative mx-auto flex min-h-full w-full max-w-[720px] flex-col justify-center px-4 py-10 sm:px-6",children:[c.jsx("div",{className:"animate-blurin",children:c.jsx($L,{})}),c.jsxs("div",{className:"mt-8 w-full animate-rise [animation-delay:120ms]",children:[(!ee||!ue)&&c.jsxs("button",{type:"button",onClick:()=>m("models"),className:"mb-3 flex w-full items-center gap-2 rounded-xl border border-accent/30 bg-accent-soft px-4 py-2.5 text-left text-[12.5px] font-medium text-accent transition-all hover:border-accent/50",children:[c.jsx(jh,{size:14,className:"shrink-0"}),c.jsx("span",{className:"flex-1",children:ee?"Choose a model to start":"Connect a provider to start"}),c.jsx("span",{className:"text-[11px] font-normal opacity-70",children:"Open settings →"})]}),c.jsx(Z1,{value:_,onChange:S,onSend:de,onStop:()=>{},onCommand:Ie,streaming:!1,hints:!0,autoFocus:!0,placeholder:ee?"How can I help you today?":"Add a provider key to start",pixleMood:ee?"idle":"sleepy"}),c.jsx("div",{className:"stagger mt-5 grid grid-cols-2 gap-2 sm:grid-cols-3",children:qL.slice(0,6).map(fe=>c.jsxs("button",{type:"button",onClick:()=>O(fe.prompt),className:"card-lift group/starter flex items-center gap-2.5 rounded-xl border border-line bg-panel px-3 py-2.5 text-left text-[12.5px] font-medium text-muted hover:text-ink",children:[c.jsx("span",{className:"flex h-7 w-7 shrink-0 items-center justify-center rounded-lg bg-raised text-faint transition-colors duration-200 group-hover/starter:bg-accent-soft group-hover/starter:text-accent",children:c.jsx(fe.icon,{size:14,strokeWidth:1.8})}),c.jsx("span",{className:"min-w-0 truncate",children:fe.label})]},fe.label))}),c.jsxs("div",{className:"mt-2.5 flex items-center justify-center gap-3 px-1 text-[11px] text-faint",children:[c.jsxs("span",{className:"truncate",children:[y.available?y.name:"No folder open",y.available&&k.available&&k.branch?` · ${k.branch}`:""]}),c.jsx("span",{"aria-hidden":"true",children:"·"}),c.jsxs("span",{className:"shrink-0",children:[re," skill",re===1?"":"s"," ·"," ",ee?ue?"Ready":"Model needed":"Provider needed"]})]})]}),c.jsx("div",{className:"mt-10 animate-rise [animation-delay:420ms]",children:c.jsx(HL,{})})]})]}):c.jsxs(c.Fragment,{children:[c.jsx("div",{className:"relative min-h-0 flex-1",children:C==="trajectory"?c.jsx(FL,{session:a}):c.jsxs(c.Fragment,{children:[c.jsx("div",{ref:I,onScroll:fe=>{const T=fe.currentTarget,j=T.scrollHeight-T.scrollTop-T.clientHeight;R(j<90)},className:"thin-scroll h-full overflow-y-auto",children:c.jsx("div",{className:"mx-auto w-full max-w-[760px] px-4 pb-12 pt-8 sm:px-6 sm:pt-10",children:ne.map((fe,T)=>c.jsx("div",{className:T===0?"animate-rise":"mt-10 animate-rise",children:c.jsx(LL,{turn:fe,sessionId:a.id,streaming:s,lastAssistantId:U,activeTurn:s&&T===ne.length-1})},fe.id))})}),!F&&c.jsx("button",{type:"button",onClick:()=>{R(!0),$("smooth")},className:"surface-lift absolute bottom-4 left-1/2 -translate-x-1/2 animate-scalein rounded-full border border-line px-3.5 py-1.5 text-[11.5px] font-medium text-muted shadow-composer transition-colors hover:text-ink",children:c.jsxs("span",{className:"inline-flex items-center gap-1.5",children:[c.jsx(yS,{size:11}),"Jump to latest"]})})]})}),c.jsx("div",{className:"shrink-0 bg-panel px-3 pb-3 pt-1 sm:px-6 sm:pb-4",children:c.jsxs("div",{className:"mx-auto w-full max-w-[760px]",children:[c.jsx(Z1,{value:_,onChange:S,onSend:de,onStop:()=>a&&Xh(a.id),onCommand:Ie,streaming:s,placeholder:ee?"How can I help you today?":"Add a provider key to start",contextPct:P.pct,contextTitle:`Context: ~${bo(P.used)} / ${bo(P.limit)} tokens`,pixleMood:ae}),c.jsxs("div",{className:"mt-2 flex items-center justify-between gap-3 px-2 text-[11px] text-faint",children:[c.jsxs("span",{className:"flex items-center gap-1",children:[o.mode==="plan"?c.jsx(ym,{size:10}):c.jsx(hr,{size:10}),o.mode==="plan"?"Plan mode · read-only tools":re>0?`${re} skill${re===1?"":"s"} loaded`:"Build mode · full tools"]}),c.jsx("span",{className:"hidden sm:inline",children:y.available?`Working in ${y.name}`:"No workspace open"}),c.jsx("span",{className:"sm:hidden",children:o.tools.shell.approval==="ask"?"Shell asks first":"Shell auto-runs"})]})]})})]})]})}const nv=[{id:"desktop",label:"Desktop",icon:wm,width:"100%"},{id:"tablet",label:"Tablet",icon:fT,width:"768px"},{id:"phone",label:"Phone",icon:sT,width:"390px"}];function YL(e){return e.includes("index.html")?"index.html":[...e].sort((i,a)=>i.split("/").length-a.split("/").length||i.localeCompare(a))[0]??""}function KL(){const e=Be(S=>S.entries),[i,a]=q.useState(""),[s,o]=q.useState(""),[u,d]=q.useState(""),[p,m]=q.useState("desktop"),[g,x]=q.useState(0),b=q.useMemo(()=>e.filter(S=>S.type==="file"&&/\.html?$/i.test(S.path)).map(S=>S.path),[e]),v=q.useMemo(()=>{const S=e.filter(C=>C.type==="file");return`${S.length}-${S.reduce((C,M)=>Math.max(C,M.mtime),0)}`},[e]),y=b.includes(u)?u:YL(b),k=q.useCallback(async()=>{o("");try{a((await QT()).token)}catch(S){a(""),o(S instanceof Error?S.message:"Could not start the preview.")}},[]);q.useEffect(()=>{k()},[k]);const N=i&&y?`/preview/${i}/${encodeURI(y)}?v=${v}.${g}`:"",_=nv.find(S=>S.id===p)?.width??"100%";return b.length===0?c.jsxs("div",{className:"flex min-h-0 flex-1 flex-col items-center justify-center gap-2 px-8 text-center",children:[c.jsx("span",{className:"flex h-10 w-10 items-center justify-center rounded-xl bg-raised text-faint",children:c.jsx(wm,{size:18})}),c.jsx("p",{className:"text-[13px] font-medium text-ink",children:"Nothing to preview yet"}),c.jsx("p",{className:"max-w-[260px] text-[11.5px] leading-relaxed text-muted",children:"Ask OpenSol to build a page or a game. The first HTML file it writes shows up here and reloads as it changes."})]}):c.jsxs("div",{className:"flex min-h-0 flex-1 flex-col",children:[c.jsxs("div",{className:"flex shrink-0 items-center gap-1.5 border-b border-line px-2.5 py-2",children:[c.jsx("select",{value:y,onChange:S=>d(S.target.value),className:"h-8 min-w-0 flex-1 truncate rounded-lg border border-line bg-transparent px-2 font-mono text-[11.5px] text-ink outline-none focus:border-accent/50","aria-label":"Page to preview",children:b.map(S=>c.jsx("option",{value:S,children:S},S))}),c.jsx("div",{className:"flex items-center rounded-lg bg-raised/70 p-0.5",children:nv.map(S=>c.jsx("button",{type:"button",onClick:()=>m(S.id),"aria-pressed":p===S.id,title:S.label,"aria-label":S.label,className:pe("flex h-7 w-7 items-center justify-center rounded-md transition-colors",p===S.id?"bg-panel text-ink shadow-pill":"text-muted hover:text-ink"),children:c.jsx(S.icon,{size:14,strokeWidth:1.7})},S.id))}),c.jsx("button",{type:"button",className:"icon-button h-8 w-8",onClick:()=>{k(),x(S=>S+1)},title:"Reload preview","aria-label":"Reload preview",children:c.jsx(Wi,{size:14,strokeWidth:1.7})}),c.jsx("button",{type:"button",className:"icon-button h-8 w-8",disabled:!N,onClick:()=>window.open(N,"_blank","noopener"),title:"Open in a new tab","aria-label":"Open in a new tab",children:c.jsx(hv,{size:14,strokeWidth:1.7})})]}),c.jsxs("div",{className:"relative min-h-0 flex-1 overflow-auto bg-raised/40 p-2",children:[s&&c.jsxs("div",{className:"mx-auto mt-6 max-w-[300px] rounded-xl border border-danger/25 bg-danger/[0.05] px-3.5 py-3 text-center",children:[c.jsx("p",{className:"text-[12px] font-medium text-ink",children:"The preview could not start"}),c.jsx("p",{className:"mt-1 text-[11.5px] leading-relaxed text-muted",children:s}),c.jsx("button",{type:"button",onClick:()=>{k()},className:"mt-2 text-[11.5px] font-medium text-accent hover:underline",children:"Try again"})]}),!s&&!N&&c.jsxs("p",{className:"flex items-center justify-center gap-2 py-8 text-[11.5px] text-faint",children:[c.jsx(Tn,{size:12})," Starting preview…"]}),N&&c.jsx("iframe",{title:`Preview of ${y}`,src:N,sandbox:"allow-scripts allow-forms allow-modals allow-popups allow-pointer-lock",className:"mx-auto block h-full min-h-[320px] max-w-full rounded-lg border border-line bg-white shadow-pill",style:{width:_}},`${y}-${g}`)]}),c.jsx("p",{className:"shrink-0 border-t border-line px-3 py-1.5 text-[11px] text-faint",children:"Runs in a sandbox: it can load your files and public CDNs, but cannot reach OpenSol or your keys."})]})}function VL(e){const i=new Map;for(const u of e)i.set(u.path,{entry:u,children:[]});const a=[],s=[...e].sort((u,d)=>u.path.split("/").length-d.path.split("/").length);for(const u of s){const d=i.get(u.path);if(!d)continue;const p=u.path.lastIndexOf("/"),m=p===-1?null:i.get(u.path.slice(0,p));m?m.children.push(d):a.push(d)}const o=u=>{u.sort((d,p)=>d.entry.type===p.entry.type?d.entry.name.localeCompare(p.entry.name):d.entry.type==="dir"?-1:1),u.forEach(d=>o(d.children))};return o(a),a}function XL(e){const i=/\.([a-z0-9]+)$/i.exec(e);return i?i[1].toUpperCase():"TEXT"}function ZL({onDone:e}){const i=Be(I=>I.addWorkspace),a=Be(I=>I.info.workspaces),s=be(I=>I.notify),[o,u]=q.useState(""),[d,p]=q.useState(""),[m,g]=q.useState(""),[x,b]=q.useState([]),[v,y]=q.useState(!0),[k,N]=q.useState(""),[_,S]=q.useState(!1),C=async I=>{y(!0),N("");try{const F=await YT(I);u(F.path),p(F.parent),g(F.home),b(F.entries)}catch(F){N(F instanceof Error?F.message:"Could not read that folder.")}finally{y(!1)}};q.useEffect(()=>{C("")},[]);const M=async I=>{S(!0);try{await i(I),e?.()}catch(F){s(F instanceof Error?F.message:"Could not open that folder.","error")}finally{S(!1)}};return c.jsxs("div",{className:"flex min-h-0 flex-1 flex-col",children:[c.jsxs("div",{className:"border-b border-line px-4 py-4",children:[c.jsx("p",{className:"font-display text-[19px] font-semibold tracking-[-0.02em] text-ink",children:"Choose a real folder"}),c.jsx("p",{className:"mt-1 text-[11.5px] leading-relaxed text-muted",children:"OpenSol works directly in this folder through the local daemon. Nothing is uploaded."})]}),c.jsxs("div",{className:"flex items-center gap-1.5 border-b border-line px-3 py-2",children:[c.jsx("button",{type:"button",className:"icon-button h-7 w-7",onClick:()=>{C(d)},disabled:!d||v,"aria-label":"Parent folder",children:c.jsx(hS,{size:13})}),c.jsx("button",{type:"button",className:"icon-button h-7 w-7",onClick:()=>{C(m)},disabled:!m||v,"aria-label":"Home folder",children:c.jsx(Gu,{size:13})}),c.jsx("p",{className:"min-w-0 flex-1 truncate font-mono text-[10px] text-muted",title:o,children:o||"Home"}),v&&c.jsx(Tn,{size:12}),c.jsxs("button",{type:"button",onClick:()=>{M(o)},disabled:!o||_,className:"inline-flex h-7 items-center gap-1 rounded-lg bg-ink px-2.5 text-[10.5px] font-medium text-panel disabled:opacity-40",children:[_?c.jsx(Tn,{size:11}):c.jsx(Sn,{size:11}),"Open"]})]}),a.length>0&&c.jsxs("div",{className:"border-b border-line px-3 py-2",children:[c.jsx("p",{className:"mb-1.5 text-[9px] font-semibold uppercase tracking-[0.13em] text-faint",children:"Recent"}),c.jsx("div",{className:"flex flex-wrap gap-1",children:a.slice(0,6).map(I=>c.jsx("button",{type:"button",onClick:()=>{M(I.path)},className:"max-w-full truncate rounded-md border border-line bg-raised/60 px-2 py-1 text-left text-[10px] text-muted hover:text-ink",title:I.path,children:I.name},I.path))})]}),c.jsxs("div",{className:"thin-scroll min-h-0 flex-1 overflow-y-auto px-2 py-2",children:[k&&c.jsx("p",{className:"px-2 py-3 text-[11px] text-danger",children:k}),!v&&!k&&x.length===0&&c.jsx("p",{className:"px-2 py-4 text-[11px] text-faint",children:"This folder has no subfolders."}),x.map(I=>c.jsxs("div",{className:"group flex items-center gap-1",children:[c.jsxs("button",{type:"button",onClick:()=>{C(I.path)},className:"flex h-8 min-w-0 flex-1 items-center gap-2 rounded-md px-2 text-left text-[11.5px] text-muted transition-colors hover:bg-raised hover:text-ink",children:[c.jsx(el,{size:13,className:"shrink-0 text-faint"}),c.jsx("span",{className:"truncate",children:I.name})]}),c.jsx("button",{type:"button",onClick:()=>{M(I.path)},className:"hidden h-7 rounded-md px-2 text-[10px] font-medium text-accent group-hover:block",children:"Use"})]},I.path))]})]})}function QL(){const e=be(J=>J.workspaceOpen),i=be(J=>J.setWorkspaceOpen),a=be(J=>J.notify),s=be(J=>J.askConfirm),o=Be(J=>J.info),u=Be(J=>J.root),d=Be(J=>J.entries),p=Be(J=>J.loadingTree),m=Be(J=>J.treeError),g=Be(J=>J.activeFile),x=Be(J=>J.file),b=Be(J=>J.content),v=Be(J=>J.dirty),y=Be(J=>J.saving),k=Be(J=>J.openingFile),N=Be(J=>J.git),_=Be(J=>J.gitLoading),S=Be(J=>J.setActiveFile),C=Be(J=>J.saveFile),M=Be(J=>J.setContent),I=Be(J=>J.createEntry),F=Be(J=>J.renameEntry),R=Be(J=>J.deleteEntry),A=Be(J=>J.forgetWorkspace),L=Be(J=>J.loadGit),V=Be(J=>J.refresh),[D,U]=q.useState(""),[ee,ue]=q.useState(new Set),[re,ne]=q.useState("files"),[P,ae]=q.useState(!o.available),[$,de]=q.useState(null),[O,Ie]=q.useState(!1),fe=q.useRef(null),T=q.useMemo(()=>VL(d),[d]),j=q.useMemo(()=>{const J=D.trim().toLowerCase();return J?d.filter(ge=>ge.path.toLowerCase().includes(J)).slice(0,300):null},[d,D]),ie=b?b.split(`
|
|
280
|
+
`).length:0;if(q.useEffect(()=>{$&&fe.current?.focus()},[$]),q.useEffect(()=>{ae(!o.available)},[o.available]),q.useEffect(()=>{const J=ge=>{!(ge.metaKey||ge.ctrlKey)||ge.key.toLowerCase()!=="s"||!be.getState().workspaceOpen||!Be.getState().activeFile||(ge.preventDefault(),Be.getState().saveFile())};return window.addEventListener("keydown",J),()=>window.removeEventListener("keydown",J)},[]),!e)return null;const he=async()=>{if(!$)return;const J=$.value.trim().replace(/^\/+/,"");if(!J)return de(null);try{if($.mode==="rename"){if(!g)return;await F(g,J)}else await I(J,$.mode==="create-dir"?"dir":"file");de(null)}catch(ge){a(ge instanceof Error?ge.message:"That change failed.","error")}},Z=async J=>{if(await s({title:"Delete this path?",body:`${J} will be deleted from disk. This cannot be undone.`,confirmLabel:"Delete",tone:"danger"}))try{await R(J)}catch(ke){a(ke instanceof Error?ke.message:"Could not delete that path.","error")}},we=async()=>{try{await navigator.clipboard.writeText(b),Ie(!0),window.setTimeout(()=>Ie(!1),1500)}catch{a("Clipboard access was blocked.","error")}},Ce=(J,ge)=>{const ke=J.entry.path;if(J.entry.type==="dir"){const Dt=ee.has(ke);return c.jsxs("div",{children:[c.jsxs("button",{type:"button",onClick:()=>ue(Ut=>{const $t=new Set(Ut);return $t.has(ke)?$t.delete(ke):$t.add(ke),$t}),className:"group flex h-7 w-full items-center gap-1.5 rounded-md pr-1.5 text-left text-[11.5px] font-medium text-muted transition-colors hover:bg-raised hover:text-ink",style:{paddingLeft:8+ge*13},title:ke,children:[c.jsx(fv,{size:10,className:pe("shrink-0 text-faint transition-transform",!Dt&&"rotate-90")}),Dt?c.jsx(el,{size:12,className:"shrink-0 text-faint"}):c.jsx(Kr,{size:12,className:"shrink-0 text-faint"}),c.jsx("span",{className:"min-w-0 flex-1 truncate",children:J.entry.name}),c.jsx("span",{role:"button",tabIndex:0,onClick:Ut=>{Ut.stopPropagation(),Z(ke)},onKeyDown:Ut=>{Ut.key==="Enter"&&Z(ke)},className:"hidden h-5 w-5 items-center justify-center rounded text-faint hover:text-danger group-hover:flex","aria-label":`Delete ${ke}`,children:c.jsx(Xr,{size:10})})]}),!Dt&&J.children.map(Ut=>Ce(Ut,ge+1))]},ke)}return c.jsxs("button",{type:"button",onClick:()=>S(ke),className:pe("flex h-7 w-full items-center gap-1.5 rounded-md pr-1.5 text-left font-mono text-[10.5px] transition-colors",g===ke?"bg-accent-soft font-medium text-accent":"text-muted hover:bg-raised hover:text-ink"),style:{paddingLeft:8+ge*13+10},title:ke,children:[c.jsx(Na,{size:11,className:pe("shrink-0",g===ke?"text-accent":"text-faint")}),c.jsx("span",{className:"min-w-0 flex-1 truncate",children:J.entry.name})]},ke)};return c.jsxs(c.Fragment,{children:[c.jsx("button",{type:"button","aria-label":"Close workspace",onClick:()=>i(!1),className:"fixed inset-0 z-40 cursor-default bg-ink/20 backdrop-blur-[1px] xl:hidden"}),c.jsxs("aside",{className:pe("fixed inset-y-0 right-0 z-50 flex h-dvh w-[min(96vw,440px)] flex-col border-l border-line surface-lift shadow-float transition-[width] duration-200 xl:static xl:z-auto xl:shadow-none",re==="preview"&&o.available&&!P?"sm:w-[min(96vw,620px)] xl:w-[560px]":"xl:w-[390px]"),children:[c.jsxs("div",{className:"flex h-14 shrink-0 items-center gap-2 border-b border-line px-3",children:[c.jsx("span",{className:"flex h-7 w-7 items-center justify-center rounded-lg bg-accent-soft text-accent",children:c.jsx(Kr,{size:14})}),c.jsxs("div",{className:"min-w-0 flex-1",children:[c.jsx("p",{className:"truncate text-[12px] font-semibold tracking-[-0.01em] text-ink",children:o.available?o.name:"Workspace"}),c.jsx("p",{className:"truncate text-[9px] text-faint",title:u,children:o.available?u:"No folder open"})]}),o.available&&c.jsxs(c.Fragment,{children:[c.jsx("button",{type:"button",className:"icon-button h-7 w-7",onClick:()=>ae(!0),title:"Change folder","aria-label":"Change folder",children:c.jsx(el,{size:14})}),c.jsx("button",{type:"button",className:"icon-button h-7 w-7",onClick:()=>{V().catch(()=>{})},title:"Refresh tree","aria-label":"Refresh tree",children:c.jsx(Wi,{size:13,className:pe(p&&"animate-spin")})})]}),c.jsx("button",{type:"button",className:"icon-button h-7 w-7",onClick:()=>i(!1),title:"Close workspace","aria-label":"Close workspace",children:c.jsx(Ta,{size:15})})]}),P||!o.available?c.jsx(ZL,{onDone:()=>ae(!1)}):c.jsxs(c.Fragment,{children:[c.jsxs("div",{className:"flex shrink-0 items-center gap-1 border-b border-line px-2 py-1.5",children:[c.jsx("button",{type:"button",onClick:()=>ne("files"),className:pe("h-7 rounded-md px-2.5 text-[11px] font-medium",re==="files"?"bg-raised text-ink":"text-muted hover:text-ink"),children:"Files"}),c.jsx("button",{type:"button",onClick:()=>ne("preview"),className:pe("h-7 rounded-md px-2.5 text-[11px] font-medium",re==="preview"?"bg-raised text-ink":"text-muted hover:text-ink"),children:"Preview"}),c.jsxs("button",{type:"button",onClick:()=>ne("git"),className:pe("h-7 rounded-md px-2.5 text-[11px] font-medium",re==="git"?"bg-raised text-ink":"text-muted hover:text-ink"),children:["Git ",N.entries.length>0&&c.jsxs("span",{className:"text-warning",children:["· ",N.entries.length]})]}),c.jsxs("div",{className:"ml-auto flex items-center gap-0.5",children:[c.jsx("button",{type:"button",className:"icon-button h-7 w-7",onClick:()=>de({mode:"create-file",value:""}),title:"New file","aria-label":"New file",children:c.jsx(gv,{size:13})}),c.jsx("button",{type:"button",className:"icon-button h-7 w-7",onClick:()=>de({mode:"create-dir",value:""}),title:"New folder","aria-label":"New folder",children:c.jsx(r2,{size:13})})]})]}),re==="files"?c.jsxs(c.Fragment,{children:[c.jsxs("div",{className:"shrink-0 border-b border-line px-2.5 py-2",children:[c.jsxs("div",{className:"relative",children:[c.jsx(ll,{size:11,className:"pointer-events-none absolute left-2 top-1/2 -translate-y-1/2 text-faint"}),c.jsx("input",{value:D,onChange:J=>U(J.target.value),placeholder:"Find a file",className:"h-7 w-full rounded-md border border-transparent bg-raised/60 pl-7 pr-2 text-[10.5px] text-ink outline-none transition-colors placeholder:text-faint focus:border-line focus:bg-panel","aria-label":"Find a file"})]}),$&&c.jsxs("div",{className:"mt-1.5 flex items-center gap-1",children:[c.jsx("input",{ref:fe,value:$.value,onChange:J=>de({...$,value:J.target.value}),onKeyDown:J=>{J.key==="Enter"&&he(),J.key==="Escape"&&de(null)},placeholder:$.mode==="rename"?g??"new/path":"folder/file.ts",className:"h-7 min-w-0 flex-1 rounded-md border border-accent/40 bg-panel px-2 font-mono text-[10.5px] outline-none"}),c.jsx("button",{type:"button",onClick:()=>{he()},className:"flex h-7 items-center rounded-md bg-ink px-2 text-[10px] font-medium text-panel",children:c.jsx(wo,{size:10})}),c.jsx("button",{type:"button",onClick:()=>de(null),className:"icon-button h-7 w-7",children:c.jsx(Ta,{size:12})})]})]}),c.jsxs("div",{className:"thin-scroll max-h-[32dvh] min-h-[92px] shrink-0 overflow-y-auto px-1.5 py-1.5 xl:max-h-[38%]",children:[m&&c.jsx("p",{className:"px-2 py-2 text-[10.5px] text-danger",children:m}),p&&d.length===0&&c.jsxs("p",{className:"flex items-center gap-1.5 px-2 py-3 text-[10.5px] text-faint",children:[c.jsx(Tn,{size:11})," Reading folder…"]}),j?j.map(J=>c.jsxs("button",{type:"button",onClick:()=>J.type==="file"&&S(J.path),className:pe("flex h-7 w-full items-center gap-1.5 rounded-md px-2 text-left font-mono text-[10.5px]",g===J.path?"bg-accent-soft font-medium text-accent":"text-muted hover:bg-raised hover:text-ink"),children:[J.type==="dir"?c.jsx(el,{size:11}):c.jsx(Na,{size:11}),c.jsx("span",{className:"truncate",children:J.path})]},J.path)):T.map(J=>Ce(J,0)),!p&&!m&&d.length===0&&c.jsx("p",{className:"px-2 py-4 text-center text-[10.5px] text-faint",children:"This folder is empty."})]}),c.jsx("div",{className:"flex min-h-0 flex-1 flex-col border-t border-line",children:g&&x?c.jsxs(c.Fragment,{children:[c.jsxs("div",{className:"flex shrink-0 items-center gap-1.5 border-b border-line px-3 py-2",children:[c.jsxs("div",{className:"min-w-0 flex-1",children:[c.jsx("p",{className:"truncate font-mono text-[10.5px] font-medium text-ink",children:g}),c.jsxs("p",{className:"mt-0.5 text-[9px] text-faint",children:[XL(g)," · ",ie," lines · ",Co(x.size),v?" · unsaved":" · saved"]})]}),k&&c.jsx(Tn,{size:11}),c.jsx("button",{type:"button",className:"icon-button h-7 w-7",onClick:()=>de({mode:"rename",value:g}),title:"Rename","aria-label":"Rename",children:c.jsx(_m,{size:12})}),c.jsx("button",{type:"button",className:"icon-button h-7 w-7",onClick:we,title:"Copy","aria-label":"Copy",children:O?c.jsx(Sn,{size:12,className:"text-success"}):c.jsx(qu,{size:12})}),c.jsx("button",{type:"button",className:"icon-button h-7 w-7 hover:text-danger",onClick:()=>{Z(g)},title:"Delete","aria-label":"Delete",children:c.jsx(Xr,{size:12})}),c.jsxs("button",{type:"button",onClick:()=>{C()},disabled:!v||y,className:"inline-flex h-7 items-center gap-1 rounded-md bg-ink px-2 text-[10px] font-medium text-panel disabled:opacity-35",children:[y?c.jsx(Tn,{size:10}):c.jsx(X2,{size:10}),"Save"]})]}),x.binary?c.jsx("div",{className:"flex flex-1 items-center justify-center px-6 text-center text-[11px] text-faint",children:"This file is binary and cannot be edited here."}):c.jsx("textarea",{value:b,onChange:J=>M(J.target.value),spellCheck:!1,wrap:"off","aria-label":`Edit ${g}`,className:"thin-scroll min-h-0 flex-1 resize-none overflow-auto bg-panel p-3.5 font-mono text-[11.5px] leading-[1.75] text-ink outline-none"}),c.jsxs("div",{className:"flex h-6 shrink-0 items-center justify-between border-t border-line px-3 text-[8.5px] text-faint",children:[c.jsxs("span",{className:"flex items-center gap-1",children:[c.jsx("span",{className:pe("h-1 w-1 rounded-full",v?"bg-warning":"bg-success")}),v?"Unsaved changes":"Saved to disk"]}),c.jsx("span",{children:"⌘S to save · UTF-8"})]})]}):c.jsxs("div",{className:"flex flex-1 flex-col items-center justify-center gap-2 px-6 text-center",children:[c.jsx("span",{className:"flex h-9 w-9 items-center justify-center rounded-xl bg-raised text-faint",children:c.jsx(Na,{size:16})}),c.jsx("p",{className:"text-[11.5px] font-medium text-ink",children:"No file selected"}),c.jsx("p",{className:"max-w-[230px] text-[10px] leading-relaxed text-faint",children:"Pick a file from the tree. The agent reads and writes these same files."})]})})]}):re==="preview"?c.jsx(KL,{}):c.jsxs("div",{className:"thin-scroll min-h-0 flex-1 overflow-y-auto",children:[c.jsxs("div",{className:"flex items-center gap-2 border-b border-line px-3 py-3",children:[c.jsx(xv,{size:14,className:"text-faint"}),c.jsxs("div",{className:"min-w-0 flex-1",children:[c.jsx("p",{className:"truncate text-[11.5px] font-medium text-ink",children:N.available?N.branch||"detached HEAD":"Not a git repository"}),c.jsx("p",{className:"text-[9.5px] text-faint",children:N.available?`${N.entries.length} changed path${N.entries.length===1?"":"s"}`:N.error})]}),c.jsx("button",{type:"button",className:"icon-button h-7 w-7",onClick:()=>{L()},"aria-label":"Refresh git",children:c.jsx(Wi,{size:12,className:pe(_&&"animate-spin")})})]}),N.entries.length===0?c.jsx("p",{className:"px-3 py-5 text-[10.5px] text-faint",children:"The working tree is clean."}):N.entries.map(J=>c.jsxs("button",{type:"button",onClick:()=>S(J.path),className:"flex w-full items-center gap-2 px-3 py-1.5 text-left font-mono text-[10px] hover:bg-raised",title:J.path,children:[c.jsx("span",{className:"w-6 shrink-0 text-warning",children:J.status}),c.jsx("span",{className:"truncate text-muted",children:J.path})]},`${J.status}-${J.path}`)),c.jsx("div",{className:"border-t border-line p-3",children:c.jsx("button",{type:"button",onClick:async()=>{await s({title:"Forget this workspace?",body:"The folder stays on disk. OpenSol stops showing it and closes the current file.",confirmLabel:"Forget workspace"})&&await A()},className:"text-[10.5px] font-medium text-faint hover:text-danger",children:"Forget this workspace"})})]})]}),o.available&&!P&&c.jsxs("div",{className:"flex h-8 shrink-0 items-center gap-1.5 border-t border-line px-3 text-[9px] text-faint",children:[c.jsx(vm,{size:10,className:pe(p&&"animate-spin")}),"Real folder · daemon-scoped access",c.jsxs("span",{className:"ml-auto",children:[d.length," entries"]})]})]})]})}const _u={settings:"maxcode-settings-v1",chats:"maxcode-chats-v1",workspace:"maxcode-workspace-v1"},bu=Wr()((e,i)=>({phase:"idle",error:"",startedAt:0,boot:async(a=!1)=>{if(i().phase!=="loading"&&!(i().phase==="ready"&&!a)){e({phase:"loading",error:"",startedAt:Date.now()});try{await al();let s=await AT();const o=JL();o.found&&(s.migration?.migratedAt||(s=(await IT({settings:o.settings,chats:o.chats})).state),WL()),await fE(s),gC(),nC(),e({phase:"ready",error:""})}catch(s){e({phase:"error",error:s instanceof Error?s.message:"OpenSol could not reach its local daemon."})}}}}));async function fE(e){Re.getState().hydrate(e),We.getState().hydrate(e.chats),await Be.getState().hydrate(e.workspace)}function iv(e){if(e)try{return JSON.parse(e)}catch{return}}function JL(){if(typeof window>"u")return{found:!1,settings:void 0,chats:void 0};let e,i,a=!1;try{e=iv(window.localStorage.getItem(_u.settings)),i=iv(window.localStorage.getItem(_u.chats)),a=!!(e||i||window.localStorage.getItem(_u.workspace))}catch{}return{found:a,settings:e,chats:i}}function WL(){try{for(const e of Object.values(_u))window.localStorage.removeItem(e)}catch{}}const e6=/^[a-z0-9][a-z0-9-]{0,47}$/;function t6(e){if(!e||typeof e!="object"||Array.isArray(e))return!1;const i=Object.getPrototypeOf(e);return i!==Object.prototype&&i!==null?!1:e.type==="ready"?Object.keys(e).length===1:e.type==="command"||e.type==="panel"?Object.keys(e).every(a=>["type","id","label"].includes(a))&&typeof e.id=="string"&&e6.test(e.id)&&typeof e.label=="string"&&e.label.trim().length>0&&e.label.length<=80:e.type==="log"||e.type==="error"?Object.keys(e).every(a=>["type","message"].includes(a))&&typeof e.message=="string"&&e.message.length<=500:!1}function n6(e,i,a){const s=`
|
|
281
|
+
const send = (message) => parent.postMessage(message, '*')
|
|
282
|
+
const api = {
|
|
283
|
+
manifest: ${JSON.stringify({id:e.id,name:e.name})},
|
|
284
|
+
command: (id, label) => send({ type: 'command', id, label }),
|
|
285
|
+
panel: (id, label) => send({ type: 'panel', id, label }),
|
|
286
|
+
log: (message) => send({ type: 'log', message: String(message).slice(0, 500) }),
|
|
287
|
+
network: () => { throw new Error('The sandboxed preview has no network access.') },
|
|
288
|
+
workspace: { list: () => [], read: () => '', write: () => {}, edit: () => false },
|
|
289
|
+
}
|
|
290
|
+
try { ;(function (maxcode) { ${i} })(api) } catch (error) {
|
|
291
|
+
send({ type: 'error', message: String(error && error.message ? error.message : error).slice(0, 500) })
|
|
292
|
+
}
|
|
293
|
+
send({ type: 'ready' })
|
|
294
|
+
`;return`<!doctype html><html><head><meta charset="utf-8"><style>${a}</style></head><body><script>${s}<\/script></body></html>`}function i6(e,i){const a=s=>{s.source===e.contentWindow&&t6(s.data)&&i(s.data)};return window.addEventListener("message",a),()=>window.removeEventListener("message",a)}const a6=5*1024*1024,r6=10*1024*1024,s6=100,l6=64*1024,o6=new Set(["workspace.list","workspace.read","workspace.write","workspace.edit","ui.commands","ui.panels","ui.themes","network.request"]),c6=new Set(["id","name","version","apiVersion","entry","stylesheet","capabilities","domains"]);function xt(e){throw new Error(`Invalid plugin package: ${e}`)}function pE(e){return typeof e=="string"?e:new TextDecoder("utf-8").decode(e)}function Hu(e){return new TextEncoder().encode(e)}function u6(e,i,a){if(a===2)return;const s=pE(i),o=e.endsWith(".js")?[/\b(?:import|export)\b|\b(?:fetch|XMLHttpRequest|WebSocket|EventSource|importScripts)\s*\(|\bnavigator\s*\.\s*sendBeacon\s*\(/i,"module imports and unmanaged network calls are forbidden"]:e.endsWith(".css")?[/@import\b|url\s*\(\s*(['"]?)(?!data:image\/(?:png|jpeg|gif|webp);base64,)[^)]*\)/i,"external CSS resources and imports are forbidden"]:null;if(!o)return;const u=o[0].exec(s);if(!u)return;const d=s.slice(0,u.index).split(`
|
|
295
|
+
`).length,p=u[0].length>60?`${u[0].slice(0,60)}…`:u[0];xt(`${o[1]}: found "${p}" at ${e}:${d}`)}function hm(e){return(typeof e!="string"||!e||e.includes("\0")||e.includes("\\")||e.startsWith("/")||/^[a-zA-Z]:/.test(e)||e.split("/").some(i=>!i||i==="."||i===".."))&&xt(`unsafe path "${String(e)}"`),e}function d6(e){(typeof e!="string"||e.length>253||e.endsWith("."))&&xt("invalid domain");const i=e.split(".");return(i.length<2||i.some(a=>!/^(?=.{1,63}$)[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i.test(a)))&&xt(`invalid domain "${e}"`),e.toLowerCase()}function pd(e){(!e||typeof e!="object"||Array.isArray(e))&&xt("manifest must be an object"),Object.keys(e).some(b=>!c6.has(b))&&xt("unknown manifest field");const{id:i,name:a,version:s,apiVersion:o,entry:u,stylesheet:d,capabilities:p,domains:m}=e;(typeof i!="string"||!/^[a-z0-9][a-z0-9-]{1,63}$/.test(i))&&xt("invalid plugin id"),(typeof a!="string"||!a.trim()||a.length>100)&&xt("invalid plugin name"),(typeof s!="string"||!/^\d+\.\d+\.\d+(?:-[0-9A-Za-z.-]+)?$/.test(s))&&xt("invalid plugin version"),o!==1&&o!==2&&xt("unsupported API version"),hm(u),hm(d),(!u.endsWith(".js")||!d.endsWith(".css"))&&xt("entry must be JavaScript and stylesheet must be CSS");const g=p??[];Array.isArray(g)||xt("capabilities must be an array"),o===1&&g.some(b=>!o6.has(b))&&xt("invalid capability"),m!==void 0&&!Array.isArray(m)&&xt("domains must be an array");const x=(m??[]).map(d6);return new Set(x).size!==x.length&&xt("duplicate domain"),{id:i,name:a.trim(),version:s,apiVersion:o,entry:u,stylesheet:d,capabilities:[...new Set(g)],domains:x}}function f6(e,i){(!e||typeof e!="object"||Array.isArray(e))&&xt("files must be a path-to-source object");const a=Object.keys(e);a.length>s6&&xt("too many files");const s={};let o=0;for(const u of a){const d=hm(u);d==="manifest.json"&&xt("manifest is generated from the manifest field"),/\.(?:mjs|cjs|jsx|ts|tsx)$/i.test(d)&&d!==i.entry&&xt(`undeclared executable file "${d}"`),d!==i.entry&&d!==i.stylesheet&&/\.(?:js|css)$/i.test(d)&&xt(`undeclared executable file "${d}"`);const p=e[u];typeof p!="string"&&!(p instanceof Uint8Array)&&xt(`file "${d}" must be text or bytes`);const m=typeof p=="string"?Hu(p):p;o+=m.byteLength,o>r6&&xt("package is too large"),(d===i.entry||d===i.stylesheet)&&u6(d,m,i.apiVersion),s[d]=typeof p=="string"?p:pE(m)}return i.entry in s||xt("entry file is missing"),i.stylesheet in s||xt("stylesheet file is missing"),Hu(s[i.entry]).byteLength>2*1024*1024&&xt("entry file is too large"),s}function p6(e){const i=pd(e?.manifest),a=f6(e?.files,i),s=JSON.stringify(i);Hu(s).byteLength>l6&&xt("manifest is too large");const u=Hu(JSON.stringify({format:"cordis-plugin",manifest:i,files:a}));return u.byteLength>a6&&xt("package is too large"),u}function ug(e){(!e||!(e instanceof Uint8Array)||e.byteLength===0)&&xt("package archive is empty or invalid");let i;try{const o=new TextDecoder("utf-8").decode(e);i=JSON.parse(o)}catch{xt("package is not a valid JSON archive")}(!i||typeof i!="object")&&xt("invalid package format");const a=pd(i.manifest),s=i.files;return(!s||typeof s!="object")&&xt("missing package files"),{manifest:a,files:s}}const h6=/\.(?:png|jpe?g|gif|webp|ico|woff2?|ttf|otf|eot|wasm|zip|pdf|mp3|mp4)$/i;function m6(e){return h6.test(e)}function g6(e){const i=e[0]?.indexOf("/")??-1;if(i<0)return e;const a=e[0].slice(0,i+1);return e.every(s=>s.startsWith(a))?e.map(s=>s.slice(a.length)):e}function b6(e){if(typeof e!="string")throw new Error("manifest.json must be text.");let i;try{i=JSON.parse(e)}catch{throw new Error("manifest.json is not valid JSON.")}return pd(i)}function x6(e){const i=g6(e.map(v=>v.path)),a={};let s;e.forEach((v,y)=>{const k=i[y];k==="manifest.json"?s=v.content:a[k]=v.content});const o=Object.keys(a),u=(v,y)=>v!==void 0&&v.endsWith(y)&&o.includes(v)?v:void 0,d=(v,y)=>{if(o.includes(v))return v;const k=o.filter(N=>N.endsWith(y)).sort();return k.find(N=>N.slice(N.lastIndexOf("/")+1)===v)??k[0]};let p,m;if(s!==void 0)try{p=b6(s)}catch(v){m=v instanceof Error?v.message:"manifest.json could not be read."}const g=u(p?.entry,".js")??d("main.js",".js");if(!g)throw new Error("A plugin needs one .js entry file. Pick a folder that has one.");const x=u(p?.stylesheet,".css")??d("main.css",".css")??"main.css",b=o.filter(v=>v!==g&&v!==x&&/\.(?:m?js|cjs|jsx|tsx?|css)$/i.test(v));if(b.length>0)throw new Error(`A plugin package holds one script and one stylesheet. Remove or merge: ${b.join(", ")}.`);return{entry:g,stylesheet:x,files:a,manifest:p,manifestError:m}}const y6=["workspace.list","workspace.read","workspace.write","workspace.edit","ui.commands","ui.panels","ui.themes","network.request"],v6=".js,.css,.json,.txt,.html,.svg,.png,.jpg,.jpeg,.gif,.webp,.woff,.woff2",xu="h-8 w-full rounded-lg border border-line bg-panel px-2.5 text-[12px] text-ink outline-none transition-colors placeholder:text-faint focus:border-accent/50";async function w6(e){const i=e.webkitRelativePath||e.name;return{path:i,content:m6(i)?new Uint8Array(await e.arrayBuffer()):await e.text()}}function k6({onInstalled:e}){const i=be(A=>A.notify),[a,s]=q.useState("my-plugin"),[o,u]=q.useState("My plugin"),[d,p]=q.useState("1.0.0"),[m,g]=q.useState(1),[x,b]=q.useState(["ui.commands"]),[v,y]=q.useState(""),[k,N]=q.useState(null),_=q.useRef(null),S=q.useRef(null),C=async A=>{if(A?.length)try{const L=await Promise.all([...A].map(w6)),V=x6(L);N(V),V.manifest&&(s(V.manifest.id),u(V.manifest.name),p(V.manifest.version),g(V.manifest.apiVersion===2?2:1),b(V.manifest.capabilities),y(V.manifest.domains.join(", "))),i(V.manifestError?`Loaded ${Object.keys(V.files).length} file(s). Its manifest.json was ignored: ${V.manifestError}`:`Loaded ${Object.keys(V.files).length} file(s) — entry ${V.entry}.`,V.manifestError?"error":"info")}catch(L){N(null),i(L instanceof Error?L.message:"Those files are not a plugin folder.","error")}},M=()=>{try{if(!k)throw new Error("Load a plugin folder or its files first.");const A={id:a.trim(),name:o.trim(),version:d.trim(),apiVersion:m,entry:k.entry,stylesheet:k.stylesheet,capabilities:m===2?[]:x,domains:v.split(/[\s,]+/).map(V=>V.trim()).filter(Boolean)};pd(A);const L={...k.files};return L[A.stylesheet]??="",{archive:p6({manifest:A,files:L})}}catch(A){return i(A instanceof Error?A.message:"That package could not be built.","error"),null}},I=()=>{const A=M();if(!A)return;const L=URL.createObjectURL(new Blob([A.archive],{type:"application/json"})),V=document.createElement("a");V.href=L,V.download=`${a.trim()||"plugin"}.plugin.json`,V.click(),URL.revokeObjectURL(L)},F=async()=>{const A=M();if(A)try{const{plugin:L}=await Ov(A.archive);e?.(L),i(`${L.manifest.name} installed. It starts sandboxed and disabled.`,"success")}catch(L){i(L instanceof Error?L.message:"The daemon rejected this package.","error")}},R=k?Object.keys(k.files):[];return c.jsxs("details",{className:"rounded-xl border border-line bg-raised/20",children:[c.jsxs("summary",{className:"flex cursor-pointer items-center gap-2 px-3 py-2.5 text-[11.5px] font-medium text-ink",children:[c.jsx(h2,{size:13,className:"text-faint"}),"Build a plugin package from a folder"]}),c.jsxs("div",{className:"space-y-2.5 border-t border-line px-3 py-3",children:[c.jsxs("p",{className:"text-[10.5px] leading-relaxed text-faint",children:["Load a plugin folder, or the files themselves. One ",c.jsx("code",{className:"font-mono",children:".js"})," entry and one optional ",c.jsx("code",{className:"font-mono",children:".css"})," stylesheet become the package. A"," ",c.jsx("code",{className:"font-mono",children:"manifest.json"})," in the folder fills these fields in; the fields win."]}),c.jsxs("div",{className:"flex items-center gap-2 rounded-lg border border-line bg-panel px-2.5 py-2",children:[c.jsx(es,{checked:m===2,onChange:A=>g(A?2:1),label:"API v2"}),c.jsx("span",{className:"text-[10.5px] font-medium text-ink",children:"API v2 — free plugin (full app access)"}),m===2&&c.jsx("span",{className:"ml-auto text-[9.5px] text-accent",children:"ctx = Cordis kernel scope"})]}),c.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[c.jsxs("button",{type:"button",onClick:()=>_.current?.click(),className:"inline-flex h-8 items-center gap-1.5 rounded-lg bg-accent px-3 text-[10.5px] font-medium text-on-accent hover:bg-accent/90",children:[c.jsx(bv,{size:12}),"Load folder"]}),c.jsxs("button",{type:"button",onClick:()=>S.current?.click(),className:"inline-flex h-8 items-center gap-1.5 rounded-lg border border-line bg-panel px-3 text-[10.5px] font-medium text-ink hover:bg-raised",children:[c.jsx(e2,{size:12}),"Load files"]}),c.jsx("input",{type:"file",multiple:!0,ref:A=>{_.current=A,A&&(A.webkitdirectory=!0)},className:"hidden",onChange:A=>{C(A.target.files),A.target.value=""}}),c.jsx("input",{ref:S,type:"file",multiple:!0,accept:v6,className:"hidden",onChange:A=>{C(A.target.files),A.target.value=""}})]}),k&&c.jsxs("div",{className:"rounded-lg border border-line bg-panel/60 px-2.5 py-2",children:[c.jsxs("p",{className:"text-[10.5px] text-muted",children:[c.jsxs("span",{className:"font-medium text-ink",children:[R.length," file(s)"]})," · entry"," ",c.jsx("code",{className:"font-mono",children:k.entry})," · stylesheet"," ",c.jsx("code",{className:"font-mono",children:k.stylesheet})]}),c.jsxs("ul",{className:"mt-1 space-y-0.5",children:[R.slice(0,6).map(A=>c.jsxs("li",{className:"truncate font-mono text-[9.5px] text-faint",children:[A," · ",Co(typeof k.files[A]=="string"?new TextEncoder().encode(k.files[A]).length:k.files[A].byteLength)]},A)),R.length>6&&c.jsxs("li",{className:"font-mono text-[9.5px] text-faint",children:["+",R.length-6," more"]})]})]}),c.jsxs("div",{className:"grid gap-2 sm:grid-cols-3",children:[c.jsxs("label",{className:"block",children:[c.jsx("span",{className:"text-[10px] font-medium text-muted",children:"Id"}),c.jsx("input",{className:xu,value:a,onChange:A=>s(A.target.value)})]}),c.jsxs("label",{className:"block",children:[c.jsx("span",{className:"text-[10px] font-medium text-muted",children:"Name"}),c.jsx("input",{className:xu,value:o,onChange:A=>u(A.target.value)})]}),c.jsxs("label",{className:"block",children:[c.jsx("span",{className:"text-[10px] font-medium text-muted",children:"Version"}),c.jsx("input",{className:xu,value:d,onChange:A=>p(A.target.value)})]})]}),c.jsxs("div",{children:[c.jsx("span",{className:"text-[10px] font-medium text-muted",children:"Capabilities"}),c.jsx("div",{className:"mt-1 flex flex-wrap gap-1.5",children:m===2?c.jsx("p",{className:"text-[10px] text-faint",children:"Not needed — API v2 plugin has full access via the Cordis context."}):y6.map(A=>{const L=x.includes(A);return c.jsx("button",{type:"button",onClick:()=>b(V=>L?V.filter(D=>D!==A):[...V,A]),className:`rounded-full border px-2 py-1 font-mono text-[9.5px] ${L?"border-accent/40 bg-accent-soft text-ink":"border-line text-faint"}`,children:A},A)})})]}),c.jsxs("label",{className:"block",children:[c.jsx("span",{className:"text-[10px] font-medium text-muted",children:"Network domains (optional, comma separated)"}),c.jsx("input",{className:xu,value:v,placeholder:"Leave empty — a plugin that needs no network declares none",onChange:A=>y(A.target.value)})]}),c.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[c.jsx("button",{type:"button",onClick:I,className:"inline-flex h-8 items-center gap-1.5 rounded-lg bg-accent px-3 text-[10.5px] font-medium text-on-accent hover:bg-accent/90",children:"Download plugin package"}),c.jsx("button",{type:"button",onClick:()=>{F()},className:"inline-flex h-8 items-center gap-1.5 rounded-lg border border-line bg-panel px-3 text-[10.5px] font-medium text-ink hover:bg-raised",children:"Build and install"})]})]})]})}function E6({plugin:e}){const i=be(x=>x.notify),[a,s]=q.useState(null),[o,u]=q.useState([]),d=q.useRef(null),[p,m]=q.useState(!1);q.useEffect(()=>{if(!(!d.current||!a))return i6(d.current,x=>{const b=x,v=b.type==="ready"?"Sandbox ready — no app access, no network.":`${b.type}: ${b.message??b.label??""}`;u(y=>[...y.slice(-5),v])})},[a]);const g=async()=>{m(!0);try{const x=await Av(e.id),{files:b,manifest:v}=ug(x);u([]),s(n6(v,b[v.entry]??"",b[v.stylesheet]??""))}catch(x){i(x instanceof Error?x.message:"This plugin could not be previewed.","error")}finally{m(!1)}};return c.jsxs(c.Fragment,{children:[c.jsxs("button",{type:"button",disabled:p,onClick:()=>a?s(null):void g(),className:"inline-flex h-7 items-center gap-1.5 rounded-lg border border-line px-2.5 text-[10.5px] font-medium text-muted hover:text-ink disabled:opacity-40",children:[c.jsx(mv,{size:11}),a?"Stop preview":"Preview in sandbox"]}),a&&c.jsxs("div",{className:"w-full overflow-hidden rounded-lg border border-line",children:[c.jsx("iframe",{ref:d,title:`${e.manifest.name} preview`,sandbox:"allow-scripts",srcDoc:a,className:"h-52 w-full bg-panel"}),c.jsx("div",{className:"max-h-24 overflow-y-auto border-t border-line bg-raised/40 px-2.5 py-1.5 font-mono text-[9.5px] leading-relaxed text-faint",children:o.map((x,b)=>c.jsx("p",{className:"truncate",children:x},b))})]})]})}const _6={"workspace.list":"List files in the open workspace","workspace.read":"Read workspace files","workspace.write":"Create and overwrite workspace files","workspace.edit":"Edit workspace files in place","ui.commands":"Add commands to OpenSol","ui.panels":"Add panels to OpenSol","ui.themes":"Add themes to OpenSol","network.request":"Call the HTTPS domains it declared"};function N6(){const e=be(k=>k.notify),i=be(k=>k.askConfirm),[a,s]=q.useState([]),[o,u]=q.useState(!1),[d,p]=q.useState(null),m=q.useRef(null),g=async()=>{try{s((await Cv()).plugins)}catch(k){e(k instanceof Error?k.message:"Could not list plugins.","error")}};q.useEffect(()=>{g()},[]);const x=k=>{s(N=>N.map(_=>_.id===k.id?k:_))},b=async k=>{u(!0);try{ug(new Uint8Array(await k.arrayBuffer()));const{plugin:N}=await Ov(new Uint8Array(await k.arrayBuffer()));s(_=>[..._.filter(S=>S.id!==N.id),N]),p(N.id),e(`${N.manifest.name} installed. It starts sandboxed and disabled.`,"success")}catch(N){e(N instanceof Error?N.message:"That file is not a valid plugin package.","error")}finally{u(!1)}},v=async(k,N,_)=>{try{x((await jT(k.id,{capabilities:N,domains:_})).plugin)}catch(S){e(S instanceof Error?S.message:"Could not save plugin permissions.","error")}},y=async k=>{if(k.safe){x((await N1(k.id,!1)).plugin);return}await i({title:`Run ${k.manifest.name} outside the sandbox?`,body:"Safe plugins run as real JavaScript inside OpenSol. They can do anything this app can, so only mark plugins you wrote or have reviewed.",confirmLabel:"Mark as Safe",tone:"danger"})&&x((await N1(k.id,!0)).plugin)};return c.jsxs(c.Fragment,{children:[c.jsxs("section",{className:"rounded-xl border border-line bg-raised/20 p-3",children:[c.jsx("h3",{className:"text-[12px] font-medium text-ink",children:"Install a local plugin"}),c.jsxs("p",{className:"mt-1 text-[10.5px] leading-relaxed text-faint",children:["OpenSol installs ",c.jsx("code",{className:"font-mono",children:".plugin.json"})," packages you pick from this machine. New plugins start sandboxed and disabled until you review them."]}),c.jsxs("div",{className:"mt-2.5 flex flex-wrap items-center gap-2",children:[c.jsxs("button",{type:"button",disabled:o,onClick:()=>m.current?.click(),className:"inline-flex h-8 items-center gap-1.5 rounded-lg bg-accent px-3 text-[10.5px] font-medium text-on-accent hover:bg-accent/90 disabled:opacity-40",children:[c.jsx(Kr,{size:12}),"Choose plugin package"]}),c.jsx("input",{ref:m,type:"file",accept:".plugin.json,.pluginmax,application/json,application/zip",className:"hidden",onChange:k=>{const N=k.target.files?.[0];k.target.value="",N&&b(N)}})]})]}),a.length===0?c.jsx("p",{className:"rounded-lg border border-line bg-raised/30 px-3 py-3 text-[10.5px] text-faint",children:"No plugins installed."}):c.jsx("div",{className:"space-y-2",children:a.map(k=>{const N=d===k.id;return c.jsxs("div",{className:"overflow-hidden rounded-xl border border-line",children:[c.jsxs("div",{className:"flex items-center gap-2 px-3 py-2.5",children:[c.jsx(Em,{size:14,className:"shrink-0 text-faint"}),c.jsxs("button",{type:"button",onClick:()=>p(N?null:k.id),className:"min-w-0 flex-1 text-left",children:[c.jsx("span",{className:"block truncate text-[11.5px] font-medium text-ink",children:k.manifest.name}),c.jsxs("span",{className:"block truncate text-[9.5px] text-faint",children:[k.id," · v",k.manifest.version," ·"," ",k.safe?"Safe — runs unsandboxed":"Sandboxed"]})]}),c.jsx(es,{checked:k.enabled,disabled:!k.safe,label:`Enable ${k.manifest.name}`,onChange:async _=>{x((await RT(k.id,_)).plugin)}})]}),N&&c.jsxs("div",{className:"space-y-2.5 border-t border-line px-3 py-3",children:[c.jsxs("div",{className:pe("flex items-start gap-2 rounded-lg px-2.5 py-2 text-[10px] leading-relaxed",k.safe?"bg-warning/10 text-ink":"bg-raised/60 text-muted"),children:[k.safe?c.jsx(eT,{size:13,className:"mt-0.5 shrink-0 text-warning"}):c.jsx(Vr,{size:13,className:"mt-0.5 shrink-0 text-faint"}),c.jsx("span",{children:k.safe?"This plugin runs as real JavaScript in OpenSol with the permissions below. It is not sandboxed any more.":"This plugin is sandboxed. Mark it Safe to run its code, or preview it first."})]}),c.jsxs("div",{children:[c.jsx("p",{className:"text-[10.5px] font-medium text-ink",children:"Capabilities"}),c.jsxs("div",{className:"mt-1.5 space-y-1",children:[k.manifest.capabilities.length===0&&c.jsx("p",{className:"text-[10px] text-faint",children:"This plugin requests no capabilities."}),k.manifest.capabilities.map(_=>c.jsxs("label",{className:"flex items-center gap-2 text-[10.5px] text-muted",children:[c.jsx("input",{type:"checkbox",className:"accent-[rgb(var(--accent))]",checked:k.grants.capabilities.includes(_),onChange:S=>{v(k,S.target.checked?[...k.grants.capabilities,_]:k.grants.capabilities.filter(C=>C!==_),k.grants.domains)}}),c.jsx("span",{className:"flex-1",children:_6[_]}),c.jsx("code",{className:"font-mono text-[9.5px] text-faint",children:_})]},_))]})]}),c.jsxs("div",{children:[c.jsx("p",{className:"text-[10.5px] font-medium text-ink",children:"Network domains"}),k.manifest.domains.length===0?c.jsx("p",{className:"mt-1 text-[10px] text-faint",children:"This plugin declares no network access."}):c.jsx("div",{className:"mt-1.5 space-y-1",children:k.manifest.domains.map(_=>c.jsxs("label",{className:"flex items-center gap-2 text-[10.5px] text-muted",children:[c.jsx("input",{type:"checkbox",className:"accent-[rgb(var(--accent))]",checked:k.grants.domains.includes(_),onChange:S=>{v(k,k.grants.capabilities,S.target.checked?[...k.grants.domains,_]:k.grants.domains.filter(C=>C!==_))}}),c.jsx("code",{className:"flex-1 font-mono text-[10px]",children:_})]},_))})]}),c.jsxs("div",{className:"flex flex-wrap items-center gap-2 pt-0.5",children:[c.jsx(E6,{plugin:k}),c.jsx("button",{type:"button",onClick:()=>{y(k)},className:pe("inline-flex h-7 items-center gap-1.5 rounded-lg border px-2.5 text-[10.5px] font-medium",k.safe?"border-line bg-panel text-muted hover:text-ink":"border-warning/40 bg-warning/10 text-ink"),children:k.safe?"Return to sandbox":"Mark as Safe"}),c.jsxs("button",{type:"button",onClick:async()=>{await i({title:`Uninstall ${k.manifest.name}?`,body:"Its permissions, styles and commands are removed from OpenSol.",confirmLabel:"Uninstall",tone:"danger"})&&(await DT(k.id),s(S=>S.filter(C=>C.id!==k.id)))},className:"inline-flex h-7 items-center gap-1.5 rounded-lg border border-line px-2.5 text-[10.5px] font-medium text-muted hover:text-danger",children:[c.jsx(Xr,{size:11}),"Uninstall"]})]})]})]},k.id)})}),c.jsx(k6,{onInstalled:k=>s(N=>[...N.filter(_=>_.id!==k.id),k])})]})}const S6=/^[a-z0-9][a-z0-9-]{0,47}$/;function T6(e,i){return!!e?.capabilities.includes(i)}function C6(e,i,a){let s;try{const o=new URL(a);if(o.protocol!=="https:"||o.port&&o.port!=="443")return null;s=o.hostname.toLowerCase()}catch{return null}return!i.includes(s)||!e?.domains.includes(s)?null:s}function mm(){return{commands:new Map,panels:new Map,themes:new Map}}function A6(e){throw new Error(`The plugin was not granted ${e}.`)}function O6(e,i,a,s=mm()){const o=d=>{T6(i,d)||A6(d)},u=d=>{if(!S6.test(d))throw new Error("A plugin contribution id must be lowercase letters, digits and dashes.")};return{manifest:Object.freeze({...e.manifest}),version:1,registerCommand(d,p,m){if(o("ui.commands"),u(d),typeof m!="function")throw new Error("A command needs a function.");s.commands.set(d,{label:String(p).slice(0,80),run:m})},registerPanel(d,p,m){if(o("ui.panels"),u(d),typeof m!="function")throw new Error("A panel needs a render function.");s.panels.set(d,{label:String(p).slice(0,80),render:m})},registerTheme(d,p,m){if(o("ui.themes"),u(d),!m||typeof m!="object")throw new Error("A theme needs a palette.");s.themes.set(d,{label:String(p).slice(0,80),palette:{...m}})},workspace:{list:async d=>(o("workspace.list"),a.workspace.list(d)),read:async d=>(o("workspace.read"),a.workspace.read(d)),write:async(d,p)=>(o("workspace.write"),a.workspace.write(d,p)),edit:async(d,p,m)=>(o("workspace.edit"),a.workspace.edit(d,p,m))},network:{request(d,p){if(o("network.request"),!C6(i,e.manifest.domains,d))throw new Error("This plugin may only call HTTPS hosts it declared and you granted.");return a.network(e.id,{url:d,...p})}},log(d){console.info(`[plugin:${e.id}]`,d)}}}const hE=e=>`maxcode-plugin-style-${e}`,Th="plugin-";function M6(e){return Object.entries(e).filter(([i,a])=>/^[a-z][a-z0-9-]*$/.test(i)&&/^[\d\s.]+$/.test(a))}function j6(e){const i=(e.canvas??"").trim().split(/\s+/).map(Number),[a,s,o]=i.length===3?i:[255,255,255];return .2126*a+.7152*s+.0722*o<110}function R6(e,i){const a=M6(i).map(([s,o])=>`--${s}:${o.trim()}`);return a.length===0?"":`[data-theme='${e}']{${a.join(";")}}`}function mE(e){return document.getElementById(hE(e))}function av(e,i){let a=mE(e);a||(a=document.createElement("style"),a.id=hE(e),document.head.append(a)),a.textContent=i}function D6(e){mE(e)?.remove()}async function rv(e,i){const a=globalThis,s=URL.createObjectURL(new Blob([`const maxcode = globalThis.__maxcodePluginApi;
|
|
296
|
+
${e}
|
|
297
|
+
`],{type:"text/javascript"}));a.__maxcodePluginApi=i;try{await import(s)}finally{delete a.__maxcodePluginApi,URL.revokeObjectURL(s)}}function z6(){const e=new Map,i=new Map,a=s=>{const o=i.get(s);o&&(i.delete(s),o.dispose());const u=e.get(s);if(u)for(const d of u.themes.keys())Yv(`${Th}${s}:${d}`);e.delete(s),D6(s)};return{contributions:e,contributionsFor:s=>e.get(s)??mm(),themes(){const s=[];for(const[o,u]of e)for(const[d,p]of u.themes)s.push({id:`${Th}${o}:${d}`,label:p.label});return s},commands(){const s=[];for(const[o,u]of e)for(const[d,p]of u.commands)s.push({pluginId:o,id:d,label:p.label,run:p.run});return s},async activate(s,o){if(a(s.id),!s.safe||!s.enabled)return;const{files:u,manifest:d}=ug(await Av(s.id));if(d.apiVersion===2){let p,m;const g=new Promise((v,y)=>{p=v,m=y}),x=async v=>{const y=u[d.stylesheet]??"";y&&av(s.id,y);try{await rv(u[d.entry]??"",v),p()}catch(k){m(k)}},b=an.plugin(x);i.set(s.id,b);try{await g}catch(v){throw a(s.id),new Error(`Plugin ${s.id} failed to start: ${v instanceof Error?v.message:String(v)}`)}}else{const p=e.get(s.id)??mm();e.set(s.id,p);const m=O6(s,s.grants,o,p);try{await rv(u[d.entry]??"",Object.freeze(m));const g=[...p.themes.entries()].map(([x,b])=>{const v=`${Th}${s.id}:${x}`;return Gv({id:v,label:b.label,dark:j6(b.palette)}),R6(v,b.palette)}).join(`
|
|
298
|
+
`);av(s.id,`${u[d.stylesheet]??""}
|
|
299
|
+
${g}`)}catch(g){throw a(s.id),new Error(`Plugin ${s.id} failed to start: ${g instanceof Error?g.message:String(g)}`)}}},deactivate:a,deactivateAll(){const s=[...new Set([...e.keys(),...i.keys()])];for(const o of s)a(o)}}}const L6={workspace:{async list(e=""){return(await jv(e)).entries.map(a=>({path:a.path,name:a.name,type:a.type}))},async read(e){return(await Rh(e)).content},async write(e,i){await Dh(e,i)},async edit(e,i,a){const s=await Rh(e);return s.content.includes(i)?(await Dh(e,s.content.replace(i,a)),!0):!1}},network:(e,i)=>zT(e,i)};let sv=null;function gE(){return sv??=z6(),sv}async function I6(e){const i=new Set(e.filter(s=>s.safe&&s.enabled).map(s=>s.id)),a=gE();for(const s of[...a.contributions.keys()])i.has(s)||a.deactivate(s);for(const s of e)if(i.has(s.id))try{await a.activate(s,L6)}catch(o){console.error(o)}}const lv=[{id:"general",label:"General",icon:Nv,description:"Permissions, appearance and conversation display."},{id:"models",label:"Models",icon:Yr,description:"Providers, encrypted keys, live models and reasoning defaults."},{id:"tools",label:"Tools",icon:Su,description:"What OpenSol can do on this machine, and when it must ask."},{id:"search",label:"Search",icon:Jr,description:"Give the agent current web results with your own key."},{id:"skills",label:"Skills",icon:hr,description:"Instructions added to every request when enabled."},{id:"plugins",label:"Plugins",icon:Em,description:"Install local plugin packages, review what they ask for, and run them once you trust the code."},{id:"deploy",label:"Deploy",icon:pr,description:"Hosting credentials and command-line tools."},{id:"appearance",label:"Appearance",icon:vv,description:"Theme and interface preferences."},{id:"about",label:"About",icon:xm,description:"Local storage, history and reset controls."}],Sa="h-8 w-full rounded-lg border border-line bg-panel px-2.5 text-[12px] text-ink outline-none transition-colors placeholder:text-faint focus:border-accent/50 disabled:opacity-50";function ea({children:e,hint:i}){return c.jsxs("div",{className:"mb-1 flex items-baseline justify-between gap-3",children:[c.jsx("span",{className:"text-[11px] font-medium text-ink",children:e}),i&&c.jsx("span",{className:"text-[9.5px] text-faint",children:i})]})}function On({title:e,description:i,children:a,action:s}){return c.jsxs("section",{className:"border-b border-line px-5 py-5 last:border-b-0 sm:px-7",children:[c.jsxs("div",{className:"flex items-start justify-between gap-3",children:[c.jsxs("div",{className:"min-w-0",children:[c.jsx("h3",{className:"font-display text-[14px] font-semibold tracking-[-0.01em] text-ink",children:e}),i&&c.jsx("p",{className:"mt-1 max-w-[620px] text-[11px] leading-relaxed text-muted",children:i})]}),s&&c.jsx("div",{className:"shrink-0",children:s})]}),c.jsx("div",{className:"mt-3.5",children:a})]})}function dg({value:e,onChange:i,placeholder:a,disabled:s,label:o}){const[u,d]=q.useState(!1);return c.jsxs("div",{className:"relative",children:[c.jsx("input",{type:u?"text":"password",value:e,onChange:p=>i(p.target.value),placeholder:a,disabled:s,autoComplete:"off",spellCheck:!1,"aria-label":o,className:pe(Sa,"pr-8 font-mono text-[11px]")}),c.jsx("button",{type:"button",onClick:()=>d(p=>!p),className:"absolute right-1.5 top-1/2 flex h-5 w-5 -translate-y-1/2 items-center justify-center rounded text-faint hover:text-ink","aria-label":u?"Hide secret":"Show secret",tabIndex:-1,children:u?c.jsx(YS,{size:12}):c.jsx(mv,{size:12})})]})}const U6=[];function B6(e){return e?e>=1e3?`${Math.round(e/1e3)}k`:String(e):""}const $6={openrouter:{prefix:"sk-or-",label:"OpenRouter"},anthropic:{prefix:"sk-ant-",label:"Anthropic"},google:{prefix:"AIza",label:"Google"},groq:{prefix:"gsk_",label:"Groq"},xai:{prefix:"xai-",label:"xAI"}};function H6({providerId:e,open:i,onToggle:a}){const s=Re(),o=Re(P=>P.selectModel),u=Re(P=>P.updateProvider),d=Re(P=>P.saveProviderKey),p=be(P=>P.notify),m=be(P=>P.askConfirm),g=Nn(P=>P.fetchModels),x=Nn(P=>P.byProvider[e])??U6,b=Nn(P=>!!P.loading[e]),v=Nn(P=>P.errors[e]??""),y=Nn(P=>P.notes[e]??""),k=Nn(P=>P.source[e]??""),[N,_]=q.useState(""),[S,C]=q.useState(""),[M,I]=q.useState(!1),F=ji[e],R=s.providerStatus.find(P=>P.id===e),A=Qu(s,e),L=s.provider===e,V=s.providers[e]?.baseUrl??"",D=R?.hint??"",U=xi(s),ee=x.find(P=>P.id===U);q.useEffect(()=>{if(!i||!A)return;const P=window.setTimeout(()=>{g(e)},400);return()=>window.clearTimeout(P)},[i,A,e,V,g]);const ue=async()=>{const P=N.trim();if(!P){p(`Paste a ${F.name} API key first.`,"error");return}const ae=$6[e];if(ae&&!P.startsWith(ae.prefix)){let $="";e==="openrouter"&&P.startsWith("sk-")&&($=" (looks like a DeepSeek or OpenAI key). If you are using DeepSeek, please paste it under DeepSeek instead."),p(`A key for ${ae.label} must start with "${ae.prefix}"${$}`,"error");return}I(!0);try{await d(e,P),_(""),p(`${F.name} key saved and encrypted.`,"success"),g(e,!0)}catch($){p($ instanceof Error?$.message:"Could not save that key.","error")}finally{I(!1)}},re=async()=>{if(await m({title:`Remove the ${F.name} key?`,body:"The encrypted key is deleted from this computer. You can add it again at any time.",confirmLabel:"Remove key",tone:"danger"}))try{await d(e,""),p(`${F.name} key removed.`,"success")}catch(ae){p(ae instanceof Error?ae.message:"Could not remove that key.","error")}},ne=async()=>{if(x.length===0){const P=await g(e,!0);P[0]?o(e,P[0].id):p("No usable model was returned by this provider.","error");return}o(e,x[0].id)};return c.jsxs("div",{className:pe("rounded-xl border transition-colors",i?"border-line bg-raised/25":"border-line bg-panel"),children:[c.jsxs("button",{type:"button",onClick:a,className:"flex w-full items-center gap-3 px-3 py-2.5 text-left",children:[c.jsx("span",{className:"flex h-7 w-7 shrink-0 items-center justify-center rounded-lg border border-line bg-panel font-display text-[12px] font-semibold text-muted",children:F.name.slice(0,1)}),c.jsxs("span",{className:"min-w-0 flex-1",children:[c.jsxs("span",{className:"flex items-center gap-2",children:[c.jsx("span",{className:"text-[12px] font-medium text-ink",children:F.name}),L&&c.jsx("span",{className:"rounded bg-accent-soft px-1.5 py-0.5 text-[8.5px] font-medium text-accent",children:"Active"})]}),c.jsxs("span",{className:pe("mt-0.5 flex items-center gap-1 text-[9.5px]",A?"text-success":"text-faint"),children:[c.jsx("span",{className:pe("h-1 w-1 rounded-full",A?"bg-success":"bg-faint")}),A?e==="custom"?"Endpoint configured":F.keyless?"No key needed":`Connected ${D}`:F.keyless?"Local endpoint":"No key"]})]}),!i&&c.jsx("span",{className:"hidden max-w-[170px] truncate text-[9.5px] text-faint sm:block",children:L&&U?ee?.name??U:x.length?`${x.length} live models`:""}),c.jsx(Gr,{size:14,className:pe("shrink-0 text-faint transition-transform",i&&"rotate-180")})]}),i&&c.jsxs("div",{className:"border-t border-line px-3 pb-3 pt-3",children:[!F.keyless&&c.jsxs("div",{className:"mb-2.5",children:[c.jsx(ea,{hint:A?"Saved and encrypted":"Required",children:"API key"}),c.jsxs("div",{className:"flex items-center gap-1.5",children:[c.jsx("div",{className:"min-w-0 flex-1",children:c.jsx(dg,{value:N,onChange:_,placeholder:A?`Replace key ${D}`:F.keyHint,label:`${F.name} API key`})}),c.jsxs("button",{type:"button",onClick:()=>{ue()},disabled:!N.trim()||M,className:"inline-flex h-8 shrink-0 items-center gap-1 rounded-lg bg-ink px-2.5 text-[10px] font-medium text-panel disabled:opacity-40",children:[M?c.jsx(Tn,{size:10}):c.jsx(Yu,{size:10}),"Save"]})]}),A&&c.jsx("button",{type:"button",onClick:()=>{re()},className:"mt-1.5 text-[9.5px] font-medium text-faint transition-colors hover:text-danger",children:"Remove saved key"})]}),c.jsxs("div",{className:"mb-2.5",children:[c.jsx(ea,{hint:e==="custom"?"Required":"Optional",children:"Base URL"}),c.jsx("input",{value:V,onChange:P=>u(e,{baseUrl:P.target.value}),placeholder:F.baseUrl||"https://example.com/v1",spellCheck:!1,className:pe(Sa,"font-mono text-[11px]")}),c.jsx("p",{className:"mt-1 text-[9px] leading-relaxed text-faint",children:e==="custom"?"Point this at an OpenAI-compatible endpoint or proxy you control.":`Leave blank for ${F.baseUrl||"the provider default"}. Useful for a gateway or local proxy.`})]}),F.note&&c.jsx("p",{className:"mb-2.5 text-[9.5px] leading-relaxed text-faint",children:F.note}),c.jsxs("div",{children:[c.jsxs("div",{className:"mb-1 flex items-center justify-between gap-2",children:[c.jsx("span",{className:"text-[11px] font-medium text-ink",children:"Model"}),c.jsxs("button",{type:"button",onClick:()=>{g(e,!0)},disabled:!A||b,className:"inline-flex items-center gap-1 text-[9.5px] font-medium text-faint transition-colors hover:text-ink disabled:cursor-not-allowed disabled:opacity-40",children:[b?c.jsx(Tn,{size:10}):c.jsx(Wi,{size:10}),b?"Loading":"Refresh live models"]})]}),v&&c.jsx("p",{className:"mb-1.5 rounded-md border border-danger/20 bg-danger/[0.04] px-2 py-1.5 text-[9.5px] leading-relaxed text-danger",children:v}),y&&!v&&c.jsx("p",{className:"mb-1.5 text-[9px] leading-relaxed text-faint",children:y}),x.length>0?c.jsxs(c.Fragment,{children:[c.jsxs("select",{value:L?U:"",onChange:P=>{P.target.value&&o(e,P.target.value)},className:pe(Sa,"font-mono text-[11px]"),"aria-label":`${F.name} model`,children:[c.jsx("option",{value:"",children:"Choose a model…"}),L&&U&&!x.some(P=>P.id===U)&&c.jsxs("option",{value:U,children:[U," (not listed)"]}),x.map(P=>c.jsxs("option",{value:P.id,children:[P.name||P.id,P.context?` · ${B6(P.context)} ctx`:""]},P.id))]}),c.jsxs("p",{className:"mt-1 text-[9px] text-faint",children:[x.length," usable chat model",x.length===1?"":"s",k==="catalog"?" from the models.dev fallback":" loaded live from the provider","."]})]}):c.jsx("p",{className:"text-[9.5px] leading-relaxed text-faint",children:b?"Loading the provider’s current models…":A?"No usable models were returned. You can still enter an exact model ID.":e==="custom"?"Set a base URL, then refresh.":F.keyless?"Start the local server, then refresh.":"Add a key to load the provider’s current models."}),c.jsxs("div",{className:"mt-2 flex items-center gap-1.5",children:[c.jsx("input",{value:S,onChange:P=>C(P.target.value),placeholder:"or enter a model ID",spellCheck:!1,"aria-label":`${F.name} model ID`,className:pe(Sa,"font-mono text-[10.5px]")}),c.jsx("button",{type:"button",onClick:()=>{const P=S.trim();P&&(o(e,P),C(""))},disabled:!S.trim(),className:"inline-flex h-8 shrink-0 items-center rounded-lg border border-line px-2.5 text-[10px] font-medium text-ink disabled:opacity-40",children:"Use ID"})]})]}),c.jsxs("div",{className:"mt-2.5 flex items-center justify-between gap-3",children:[c.jsx("p",{className:"text-[9px] leading-relaxed text-faint",children:F.keyless?"No key is stored for this provider.":A?"The daemon decrypts the key only when it calls the provider.":"The key never enters the page after saving."}),A&&!L&&c.jsxs("button",{type:"button",onClick:()=>{ne()},className:"shrink-0 text-[9.5px] font-medium text-accent hover:underline",children:["Use ",F.name]})]})]})]})}function P6(){const e=Re(),i=Re(x=>x.update),a=Re(x=>x.refreshProviders),[s,o]=q.useState(e.provider),[u,d]=q.useState(!1),p=sd(),m=Om(p),g=m.includes(e.effort)?e.effort:m[0];return c.jsxs(c.Fragment,{children:[c.jsxs(On,{title:"Providers",description:"Keys and base URLs are stored by the local daemon. Model lists are fetched live from the provider; the bundled catalog is only a fallback when the provider list cannot be reached.",action:c.jsxs("button",{type:"button",onClick:async()=>{d(!0);try{await a()}catch(x){be.getState().notify(x instanceof Error?x.message:"Could not refresh providers.","error")}finally{d(!1)}},className:"inline-flex h-7 items-center gap-1 rounded-lg border border-line px-2 text-[10px] font-medium text-muted hover:text-ink",children:[u?c.jsx(Tn,{size:10}):c.jsx(Wi,{size:10}),"Refresh"]}),children:[c.jsxs("div",{className:"mb-3 flex items-start gap-2 rounded-lg border border-line bg-raised/50 px-3 py-2.5",children:[c.jsx(Vr,{size:14,className:"mt-0.5 shrink-0 text-success"}),c.jsxs("p",{className:"text-[10.5px] leading-relaxed text-muted",children:["Keys are encrypted with AES-256-GCM under ",c.jsx("code",{className:"font-mono text-[10px]",children:"~/.maxcode"}),". The browser only receives a masked hint; the daemon decrypts a key in memory for the provider request."]})]}),c.jsx("div",{className:"space-y-2",children:Cm.map(x=>c.jsx(H6,{providerId:x.id,open:s===x.id,onToggle:()=>o(s===x.id?null:x.id)},x.id))})]}),c.jsx(On,{title:"Reasoning defaults",description:"Only controls advertised by the live model are offered; an unsupported field is never sent.",children:p?c.jsx("div",{className:"space-y-2.5",children:m.length>0?c.jsxs("div",{className:"flex items-center justify-between gap-4 rounded-lg border border-line bg-raised/30 px-3 py-2.5",children:[c.jsxs("div",{children:[c.jsx("p",{className:"text-[11.5px] font-medium text-ink",children:"Effort"}),c.jsxs("p",{className:"mt-0.5 text-[9.5px] text-faint",children:["Options come from ",p.name||p.id," · ",p.apiKind]})]}),c.jsx("select",{value:g,onChange:x=>i({effort:x.target.value}),className:"h-8 rounded-lg border border-line bg-panel px-2 text-[11px] text-ink outline-none","aria-label":"Reasoning effort",children:m.map(x=>c.jsx("option",{value:x,children:Iv[x].label},x))})]}):c.jsx("p",{className:"rounded-lg border border-line bg-raised/30 px-3 py-2.5 text-[10px] leading-relaxed text-faint",children:Fv(p)})}):c.jsx("p",{className:"rounded-lg border border-line bg-raised/30 px-3 py-3 text-[10.5px] leading-relaxed text-faint",children:"Choose a model in the composer to see the reasoning controls this provider actually advertises."})}),c.jsx(On,{title:"Advanced request settings",description:"Defaults for every provider. The adapter ignores fields the selected model cannot accept.",children:c.jsxs("details",{className:"group/advanced rounded-xl border border-line bg-raised/20",children:[c.jsxs("summary",{className:"flex cursor-pointer list-none items-center justify-between px-3 py-2.5 text-[11.5px] font-medium text-ink [&::-webkit-details-marker]:hidden",children:["Request controls and system prompt",c.jsx(Gr,{size:13,className:"text-faint transition-transform group-open/advanced:rotate-180"})]}),c.jsxs("div",{className:"border-t border-line px-3 py-3",children:[c.jsxs("div",{className:"grid gap-3 sm:grid-cols-2",children:[c.jsxs("div",{children:[c.jsx(ea,{hint:"0 – 2",children:"Temperature"}),c.jsx("input",{type:"number",min:0,max:2,step:.1,value:e.temperature,onChange:x=>{const b=Number(x.target.value);Number.isFinite(b)&&i({temperature:Math.min(2,Math.max(0,b))})},className:Sa})]}),c.jsxs("div",{children:[c.jsx(ea,{hint:"256 – 200,000",children:"Max output tokens"}),c.jsx("input",{type:"number",min:256,max:2e5,step:256,value:e.maxTokens,onChange:x=>{const b=Number(x.target.value);Number.isFinite(b)&&i({maxTokens:Math.min(2e5,Math.max(256,Math.round(b)))})},className:Sa})]})]}),c.jsxs("div",{className:"mt-3",children:[c.jsxs("div",{className:"mb-1 flex items-center justify-between gap-3",children:[c.jsx("span",{className:"text-[11px] font-medium text-ink",children:"System prompt"}),c.jsxs("button",{type:"button",onClick:()=>i({systemPrompt:Cu}),className:"inline-flex items-center gap-1 text-[9.5px] font-medium text-faint hover:text-ink",children:[c.jsx(wv,{size:10})," Restore default"]})]}),c.jsx("textarea",{value:e.systemPrompt,onChange:x=>i({systemPrompt:x.target.value}),rows:9,spellCheck:!1,className:"thin-scroll w-full resize-y rounded-lg border border-line bg-panel px-2.5 py-2 font-mono text-[10.5px] leading-relaxed text-ink outline-none focus:border-accent/50"}),c.jsx("p",{className:"mt-1 text-[9px] leading-relaxed text-faint",children:"Enabled skill instructions and the current workspace/git context are appended after this prompt."})]})]})]})})]})}const F6=[{title:"Workspace and shell",tools:["read_file","list_files","grep","write_file","edit_file","rewrite_file","shell","git"]},{title:"Web",tools:["web_search","read_url"]},{title:"Delegation",tools:["subagent"]}],q6={shell:Sv,read_file:Na,list_files:bv,write_file:gv,edit_file:Mh,rewrite_file:Mh,grep:QS,web_search:Jr,read_url:w2,git:xv,subagent:wS},G6={shell:{label:"Shell",description:"Run commands in the workspace root. Plan mode allows read-only commands only."},read_file:{label:"Read file",description:"Inspect a file on disk before changing it."},list_files:{label:"List files",description:"Explore the real workspace tree."},write_file:{label:"Write file",description:"Create a file or replace its complete contents."},edit_file:{label:"Edit file",description:"Replace an exact passage in a file."},rewrite_file:{label:"Rewrite file",description:"Replace the entire content of an existing file."},grep:{label:"Grep",description:"Search file contents with a regular expression."},web_search:{label:"Web search",description:"Find current pages and cite the sources."},read_url:{label:"Read URL",description:"Open a public http(s) page as plain text."},git:{label:"Git",description:"Inspect or change repository state. Plan mode is read-only."},subagent:{label:"Subagent",description:"Delegate a read-only investigation and return a concise report."}};function Y6(){const e=Re(),i=Re(s=>s.updateTool),a=be(s=>s.openSettings);return c.jsxs(On,{title:"Tool permissions",description:"Ask adds an approval card to the conversation. Auto runs immediately. Disabled tools are not sent to the model at all. Plan mode always hides write tools.",children:[c.jsx("div",{className:"space-y-5",children:F6.map(s=>c.jsxs("div",{children:[c.jsx("p",{className:"mb-2 text-[10px] font-medium text-faint",children:s.title}),c.jsx("div",{className:"overflow-hidden rounded-xl border border-line",children:s.tools.map((o,u)=>{const d=e.tools[o],p=q6[o],m=G6[o];return c.jsxs("div",{className:pe("flex flex-col gap-2.5 px-3 py-3 sm:flex-row sm:items-center",u!==0&&"border-t border-line",!d.enabled&&"opacity-60"),children:[c.jsx("span",{className:"flex h-7 w-7 shrink-0 items-center justify-center rounded-lg border border-line bg-panel text-muted",children:c.jsx(p,{size:13})}),c.jsxs("div",{className:"min-w-0 flex-1",children:[c.jsxs("div",{className:"flex items-center gap-2",children:[c.jsx("p",{className:"text-[11.5px] font-medium text-ink",children:m.label}),c.jsx("span",{className:"font-mono text-[8.5px] text-faint",children:o})]}),c.jsx("p",{className:"mt-0.5 text-[9.5px] leading-relaxed text-muted",children:m.description}),s.title==="Web"&&!e.webSearchEnabled&&c.jsx("button",{type:"button",onClick:()=>a("search"),className:"mt-1 text-[9.5px] font-medium text-warning hover:underline",children:"Web access is off. Turn it on in Search."})]}),c.jsxs("div",{className:"flex shrink-0 items-center gap-2 pl-9 sm:pl-0",children:[d.enabled&&c.jsx(qO,{value:d.approval,onChange:g=>i(o,{approval:g}),options:[{value:"auto",label:"Auto",title:"Run without asking"},{value:"ask",label:"Ask",title:"Ask before running"}]}),c.jsx(es,{checked:d.enabled,onChange:g=>i(o,{enabled:g}),label:`Enable ${m.label}`})]})]},o)})})]},s.title))}),c.jsxs("div",{className:"mt-3 flex items-start gap-1.5 rounded-lg border border-line bg-raised/40 px-3 py-2.5 text-[9.5px] leading-relaxed text-faint",children:[c.jsx(Vr,{size:11,className:"mt-0.5 shrink-0"}),"Shell and Git approval are on by default. Approvals apply to the open workspace only; the daemon rejects paths outside it with ",c.jsx("code",{className:"font-mono",children:".."})," or absolute escapes."]})]})}const K6=[{id:"duckduckgo",name:"DuckDuckGo",description:"No key. HTML results with a Wikipedia fallback; coverage is limited.",keyless:!0},{id:"tavily",name:"Tavily",description:"Built for AI agents. Search in, clean results out."},{id:"brave",name:"Brave Search",description:"Independent web index with a free tier."},{id:"serper",name:"Serper",description:"Google results through a simple API."}];function V6(){const e=Re(),i=Re(C=>C.update),a=Re(C=>C.saveSearchKey),s=be(C=>C.notify),[o,u]=q.useState(""),[d,p]=q.useState(!1),[m,g]=q.useState(!1),[x,b]=q.useState(null),v=e.secretStatus?.search,y=e.searchProvider==="duckduckgo",k=!!v?.configured,N=async()=>{if(!o.trim()){s("Paste a search API key first.","error");return}p(!0);try{await a(o.trim()),u(""),b(null),s("Search key saved and encrypted.","success")}catch(C){s(C instanceof Error?C.message:"Could not save that key.","error")}finally{p(!1)}},_=async()=>{try{await a(""),b(null),s("Search key removed.","success")}catch(C){s(C instanceof Error?C.message:"Could not remove that key.","error")}},S=async()=>{g(!0),b(null);try{const C=await nn("web_search",{query:"OpenSol local coding agent",provider:e.searchProvider},"build"),M=C.result&&typeof C.result=="object"?C.result:{},I=Array.isArray(M.results)?M.results:[];b({ok:I.length>0,message:I.length>0?`${I.length} results via ${String(M.provider??e.searchProvider)}.`:"No results were returned. Try another provider or query."})}catch(C){b({ok:!1,message:C instanceof Error?C.message:"Search failed."})}finally{g(!1)}};return c.jsxs(c.Fragment,{children:[c.jsx(On,{title:"Web access",description:"When enabled, the agent may search and read public pages. The daemon performs the requests; this page never sees the raw results.",children:c.jsxs("div",{className:"flex items-center justify-between gap-4 rounded-lg border border-line bg-raised/30 px-3 py-2.5",children:[c.jsxs("div",{children:[c.jsx("p",{className:"text-[11.5px] font-medium text-ink",children:"Allow web tools"}),c.jsx("p",{className:"mt-0.5 text-[9.5px] text-faint",children:"Adds web_search and read_url when they are also enabled under Tools."})]}),c.jsx(es,{checked:e.webSearchEnabled,onChange:C=>i({webSearchEnabled:C}),label:"Allow web tools"})]})}),c.jsxs(On,{title:"Search provider",description:"Choose where current results come from. A key is encrypted by the daemon.",children:[c.jsx("div",{className:"grid gap-2 sm:grid-cols-2",children:K6.map(C=>{const M=e.searchProvider===C.id;return c.jsxs("button",{type:"button",onClick:()=>{i({searchProvider:C.id}),b(null)},className:pe("rounded-lg border p-3 text-left transition-colors",M?"border-accent/35 bg-accent-soft/40":"border-line bg-panel hover:bg-raised/40"),children:[c.jsxs("span",{className:"flex items-center justify-between gap-2",children:[c.jsx("span",{className:"text-[11.5px] font-medium text-ink",children:C.name}),c.jsx("span",{className:pe("flex h-3.5 w-3.5 items-center justify-center rounded-full border",M?"border-accent bg-accent text-on-accent":"border-line"),children:M&&c.jsx(Sn,{size:8,strokeWidth:3})})]}),c.jsx("span",{className:"mt-1 block text-[9.5px] leading-relaxed text-muted",children:C.description}),C.keyless&&c.jsx("span",{className:"mt-1.5 inline-block rounded bg-raised px-1.5 py-0.5 text-[8.5px] font-medium text-faint",children:"No key"})]},C.id)})}),!y&&c.jsxs("div",{className:"mt-3",children:[c.jsx(ea,{hint:k?`Saved ${v?.hint??""}`:"Required",children:e.searchProvider==="tavily"?"Tavily API key":e.searchProvider==="brave"?"Brave Search API key":"Serper API key"}),c.jsxs("div",{className:"flex items-center gap-1.5",children:[c.jsx("div",{className:"min-w-0 flex-1",children:c.jsx(dg,{value:o,onChange:u,placeholder:e.searchProvider==="tavily"?"tvly-…":e.searchProvider==="brave"?"BSA…":"…",label:"Search API key"})}),c.jsxs("button",{type:"button",onClick:()=>{N()},disabled:!o.trim()||d,className:"inline-flex h-8 shrink-0 items-center gap-1 rounded-lg bg-ink px-2.5 text-[10px] font-medium text-panel disabled:opacity-40",children:[d?c.jsx(Tn,{size:10}):c.jsx(Yu,{size:10}),"Save"]})]}),k&&c.jsx("button",{type:"button",onClick:()=>{_()},className:"mt-1.5 text-[9.5px] font-medium text-faint hover:text-danger",children:"Remove saved key"}),c.jsx("p",{className:"mt-1 text-[9px] leading-relaxed text-faint",children:"One key is stored. If you switch providers, replace the key with one issued by the new provider."})]}),c.jsxs("div",{className:"mt-3 flex flex-wrap items-center gap-2",children:[c.jsxs("button",{type:"button",onClick:()=>{S()},disabled:m||!y&&!k,className:"inline-flex h-8 items-center gap-1.5 rounded-lg border border-line bg-panel px-2.5 text-[10.5px] font-medium text-ink transition-colors hover:bg-raised disabled:cursor-not-allowed disabled:opacity-40",children:[m?c.jsx(Tn,{size:12}):c.jsx(ll,{size:12}),m?"Testing…":"Test search"]}),!y&&!k&&c.jsx("span",{className:"text-[9.5px] text-faint",children:"Add a key to test."})]}),x&&c.jsx("div",{className:pe("mt-2.5 rounded-lg border px-3 py-2 text-[10px] leading-relaxed",x.ok?"border-success/25 bg-success/[0.04] text-success":"border-warning/30 bg-warning/[0.04] text-warning"),children:x.message})]})]})}function X6(){return typeof crypto<"u"&&"randomUUID"in crypto?`skill_${crypto.randomUUID()}`:`skill_${Date.now()}`}function Z6(){const e=Re(),i=Re(y=>y.addSkill),a=Re(y=>y.updateSkill),s=Re(y=>y.removeSkill),o=be(y=>y.askConfirm),u=be(y=>y.notify),[d,p]=q.useState(null),m=q.useRef(null),g=e.skills.filter(y=>y.enabled).length,x=async y=>{try{const k=await Ow(y),N=/^#\s+(.+)$/m.exec(k),_=N?.[1]?.trim()||y.name.replace(/\.[^.]+$/,""),C=(N?k.replace(N[0],"").trim():k.trim()).split(/\n\s*\n/).find(M=>M.trim()&&!M.trim().startsWith("#"));p({name:_,description:(C??"").replace(/[#>*`]/g,"").replace(/\s+/g," ").trim().slice(0,180),instructions:k.trim()}),u(`Loaded ${y.name}. Review it, then save the skill.`,"info")}catch(k){u(k instanceof Error?k.message:"Could not read that skill.","error")}},b=()=>{if(!d)return;const y=d.name.trim();if(!y){u("Give the skill a name.","error");return}if(!d.instructions.trim()){u("Add instructions for the skill.","error");return}d.id?(a(d.id,{name:y,description:d.description.trim(),instructions:d.instructions.trim()}),u("Skill updated.","success")):(i({id:X6(),name:y,description:d.description.trim()||"Custom skill",instructions:d.instructions.trim(),enabled:!0}),u("Skill saved and enabled.","success")),p(null)},v=async y=>{await o({title:"Delete this skill?",body:`“${y.name}” will be removed from this computer.`,confirmLabel:"Delete skill",tone:"danger"})&&s(y.id)};return c.jsxs(On,{title:"Loaded skills",description:`${g} of ${e.skills.length} enabled. Enabled instructions are appended to the system prompt for every request.`,children:[c.jsxs("div",{className:"mb-3 flex flex-wrap gap-2",children:[c.jsxs("button",{type:"button",onClick:()=>p({name:"",description:"",instructions:""}),className:"inline-flex h-8 items-center gap-1.5 rounded-lg bg-ink px-2.5 text-[10.5px] font-medium text-panel",children:[c.jsx(wo,{size:12})," New skill"]}),c.jsxs("button",{type:"button",onClick:()=>m.current?.click(),className:"inline-flex h-8 items-center gap-1.5 rounded-lg border border-line bg-panel px-2.5 text-[10.5px] font-medium text-ink hover:bg-raised",children:[c.jsx(Tm,{size:12})," Load skill file"]}),c.jsx("input",{ref:m,type:"file",accept:".md,.markdown,.txt",className:"hidden",onChange:y=>{const k=y.target.files?.[0];k&&x(k),y.target.value=""}})]}),d&&c.jsxs("div",{className:"mb-3 rounded-xl border border-accent/30 bg-accent-soft/20 p-3",children:[c.jsxs("div",{className:"mb-2 flex items-center justify-between",children:[c.jsx("p",{className:"text-[11px] font-medium text-ink",children:d.id?"Edit skill":"Load a skill"}),c.jsx("button",{type:"button",className:"icon-button h-6 w-6",onClick:()=>p(null),"aria-label":"Close editor",children:c.jsx(Ta,{size:12})})]}),c.jsxs("div",{className:"grid gap-2 sm:grid-cols-2",children:[c.jsxs("div",{children:[c.jsx(ea,{children:"Name"}),c.jsx("input",{value:d.name,onChange:y=>p({...d,name:y.target.value}),placeholder:"API contract reviewer",className:Sa,autoFocus:!0})]}),c.jsxs("div",{children:[c.jsx(ea,{hint:"Shown in the skills list",children:"Description"}),c.jsx("input",{value:d.description,onChange:y=>p({...d,description:y.target.value}),placeholder:"Checks a diff against an API contract",className:Sa})]})]}),c.jsxs("div",{className:"mt-2",children:[c.jsx(ea,{hint:"Markdown",children:"Instructions"}),c.jsx("textarea",{value:d.instructions,onChange:y=>p({...d,instructions:y.target.value}),placeholder:rC,rows:8,className:"thin-scroll w-full resize-y rounded-lg border border-line bg-panel px-2.5 py-2 font-mono text-[10.5px] leading-relaxed text-ink outline-none focus:border-accent/50"})]}),c.jsxs("div",{className:"mt-2 flex justify-end gap-2",children:[c.jsx("button",{type:"button",className:"chip h-7 text-[10.5px]",onClick:()=>p(null),children:"Cancel"}),c.jsxs("button",{type:"button",onClick:b,className:"inline-flex h-7 items-center gap-1 rounded-lg bg-accent px-2.5 text-[10.5px] font-medium text-on-accent hover:bg-accent/90",children:[c.jsx(Sn,{size:11})," Save skill"]})]})]}),c.jsx("div",{className:"overflow-hidden rounded-xl border border-line",children:e.skills.map((y,k)=>c.jsx("div",{className:pe("px-3 py-3",k!==0&&"border-t border-line"),children:c.jsxs("div",{className:"flex items-start gap-2.5",children:[c.jsx("span",{className:"mt-0.5 flex h-6 w-6 shrink-0 items-center justify-center rounded-md bg-accent-soft text-accent",children:c.jsx(hr,{size:11})}),c.jsxs("div",{className:"min-w-0 flex-1",children:[c.jsxs("div",{className:"flex flex-wrap items-center gap-1.5",children:[c.jsx("p",{className:"text-[11.5px] font-medium text-ink",children:y.name}),y.builtIn&&c.jsx("span",{className:"rounded bg-raised px-1.5 py-0.5 text-[8px] font-medium text-faint",children:"Built-in"}),c.jsx("span",{className:pe("text-[8.5px]",y.enabled?"text-success":"text-faint"),children:y.enabled?"Enabled":"Off"})]}),c.jsx("p",{className:"mt-0.5 text-[9.5px] leading-relaxed text-muted",children:y.description}),c.jsxs("details",{className:"group/skill mt-1",children:[c.jsxs("summary",{className:"inline-flex cursor-pointer list-none items-center gap-1 text-[9px] font-medium text-faint hover:text-muted [&::-webkit-details-marker]:hidden",children:["View instructions",c.jsx(Gr,{size:9,className:"transition-transform group-open/skill:rotate-180"})]}),c.jsx("pre",{className:"thin-scroll mt-1.5 max-h-44 overflow-auto whitespace-pre-wrap rounded-lg border border-line bg-raised/40 p-2 font-mono text-[9.5px] leading-relaxed text-muted",children:y.instructions})]})]}),c.jsxs("div",{className:"flex shrink-0 items-center gap-1",children:[!y.builtIn&&c.jsxs(c.Fragment,{children:[c.jsx("button",{type:"button",onClick:()=>p({id:y.id,name:y.name,description:y.description,instructions:y.instructions}),className:"icon-button h-7 w-7","aria-label":`Edit ${y.name}`,title:"Edit skill",children:c.jsx(Mh,{size:12})}),c.jsx("button",{type:"button",onClick:()=>{v(y)},className:"icon-button h-7 w-7 hover:text-danger","aria-label":`Delete ${y.name}`,title:"Delete skill",children:c.jsx(Xr,{size:12})})]}),c.jsx(es,{checked:y.enabled,onChange:N=>a(y.id,{enabled:N}),label:`Enable ${y.name}`})]})]})},y.id))})]})}const Nu={cloudflare:{label:"Cloudflare Pages",short:"Cloudflare",icon:Oh,description:"API token + account id. Create a token with the Cloudflare Pages edit permission.",fields:[{key:"apiToken",label:"API token",secret:!0,hint:"Required",placeholder:"Cloudflare API token"},{key:"accountId",label:"Account ID",secret:!1,hint:"Required",placeholder:"a1b2c3…"}]},netlify:{label:"Netlify",short:"Netlify",icon:Jr,description:"Personal access token. A new site is created when no site id is set.",fields:[{key:"authToken",label:"Personal access token",secret:!0,hint:"Required",placeholder:"nfp_…"},{key:"siteId",label:"Site ID",secret:!1,hint:"Optional",placeholder:"Existing site id"}]},vercel:{label:"Vercel",short:"Vercel",icon:Oh,description:"Access token. The CLI deploys a new production build through npx when needed.",fields:[{key:"token",label:"Access token",secret:!0,hint:"Required",placeholder:"vercel token"},{key:"teamId",label:"Team / scope ID",secret:!1,hint:"Optional",placeholder:"team_…"}]}};function Q6({providerId:e}){const i=Nu[e],a=Re(I=>I.deploySecrets?.[e]),s=Re(I=>I.deployTools?.[e]),o=Re(I=>I.saveDeployCredentials),u=be(I=>I.notify),d=be(I=>I.askConfirm),[p,m]=q.useState(!1),[g,x]=q.useState({}),[b,v]=q.useState(""),[y,k]=q.useState(!1),N=i.fields.filter(I=>!I.secret),_=i.fields.find(I=>I.secret);q.useEffect(()=>{const I={};for(const F of N)I[F.key]=a?.fields?.[F.key]??"";x(I)},[a,N.length]);const S=async()=>{k(!0);try{const I={...g};b.trim()&&_&&(I[_.key]=b.trim()),await o(e,I),v(""),u(`${i.label} credentials saved and encrypted.`,"success")}catch(I){u(I instanceof Error?I.message:"Could not save those credentials.","error")}finally{k(!1)}},C=async()=>{if(await d({title:`Remove ${i.label} credentials?`,body:"The encrypted token and ids are deleted from this computer. Deployments for this host will stop until you add them again.",confirmLabel:"Remove credentials",tone:"danger"}))try{const F={};for(const R of i.fields)F[R.key]="";await o(e,F),v(""),u(`${i.label} credentials removed.`,"success")}catch(F){u(F instanceof Error?F.message:"Could not remove those credentials.","error")}},M=i.icon;return c.jsxs("div",{className:"rounded-xl border border-line bg-panel",children:[c.jsxs("button",{type:"button",onClick:()=>m(I=>!I),className:"flex w-full items-center gap-3 px-3 py-2.5 text-left",children:[c.jsx("span",{className:"flex h-7 w-7 shrink-0 items-center justify-center rounded-lg border border-line bg-raised/60 text-muted",children:c.jsx(M,{size:13})}),c.jsxs("span",{className:"min-w-0 flex-1",children:[c.jsxs("span",{className:"flex items-center gap-2",children:[c.jsx("span",{className:"text-[11.5px] font-medium text-ink",children:i.label}),a?.configured?c.jsxs("span",{className:"flex items-center gap-1 text-[9px] text-success",children:[c.jsx("span",{className:"h-1 w-1 rounded-full bg-success"})," configured"]}):c.jsx("span",{className:"text-[9px] text-faint",children:"not configured"})]}),c.jsxs("span",{className:"mt-0.5 block text-[9px] text-faint",children:[s?.installed?`${s.label} ${s.version||"installed"}`:"Uses npx on deploy",a?.hint?` · token ${a.hint}`:""]})]}),c.jsx(Gr,{size:13,className:pe("shrink-0 text-faint transition-transform",p&&"rotate-180")})]}),p&&c.jsxs("div",{className:"border-t border-line px-3 py-3",children:[c.jsx("p",{className:"mb-2.5 text-[9.5px] leading-relaxed text-faint",children:i.description}),_&&c.jsxs("div",{className:"mb-2.5",children:[c.jsx(ea,{hint:a?.configured?"Saved; leave blank to keep":"Required",children:_.label}),c.jsx(dg,{value:b,onChange:v,placeholder:a?.configured?`Replace token ${a.hint}`:_.placeholder,label:`${i.label} ${_.label}`})]}),c.jsx("div",{className:"grid gap-2 sm:grid-cols-2",children:N.map(I=>c.jsxs("div",{children:[c.jsx(ea,{hint:I.hint,children:I.label}),c.jsx("input",{value:g[I.key]??"",onChange:F=>x(R=>({...R,[I.key]:F.target.value})),placeholder:I.placeholder,spellCheck:!1,className:pe(Sa,"font-mono text-[10.5px]")})]},I.key))}),c.jsxs("div",{className:"mt-2.5 flex items-center justify-between gap-2",children:[a?.configured?c.jsx("button",{type:"button",onClick:()=>{C()},className:"text-[9.5px] font-medium text-faint hover:text-danger",children:"Remove credentials"}):c.jsx("span",{className:"text-[9px] text-faint",children:"Values are encrypted at rest."}),c.jsxs("button",{type:"button",onClick:()=>{S()},disabled:y,className:"inline-flex h-7 items-center gap-1 rounded-lg bg-ink px-2.5 text-[10px] font-medium text-panel disabled:opacity-40",children:[y?c.jsx(Tn,{size:10}):c.jsx(Sn,{size:10}),"Save"]})]})]})]})}function J6(){const e=Re(a=>a.deployTools),i=Re(a=>a.secretsError);return c.jsxs(c.Fragment,{children:[c.jsxs(On,{title:"Hosting credentials",description:"Tokens are encrypted by the local daemon and passed to the deploy CLI through environment variables. They are never written to logs or returned to this page.",children:[i&&c.jsx("p",{className:"mb-3 rounded-lg border border-warning/30 bg-warning/[0.04] px-3 py-2 text-[10px] text-warning",children:i}),c.jsx("div",{className:"space-y-2",children:Object.keys(Nu).map(a=>c.jsx(Q6,{providerId:a},a))})]}),c.jsxs(On,{title:"Command-line tools",description:"OpenSol uses an installed CLI when available and falls back to npx. Node.js must be on PATH.",children:[c.jsx("div",{className:"overflow-hidden rounded-xl border border-line",children:Object.keys(Nu).map((a,s)=>{const o=e?.[a],u=Nu[a];return c.jsxs("div",{className:pe("flex items-center gap-3 px-3 py-2.5",s!==0&&"border-t border-line"),children:[c.jsx(Tv,{size:13,className:"shrink-0 text-faint"}),c.jsxs("div",{className:"min-w-0 flex-1",children:[c.jsx("p",{className:"text-[11px] font-medium text-ink",children:u.short}),c.jsxs("p",{className:"truncate font-mono text-[9px] text-faint",children:[o?.bin??"—"," ",o?.installed?`· ${o.version||"installed"}`:"· not installed, uses npx"]})]}),c.jsx("span",{className:pe("shrink-0 rounded-full border px-1.5 py-0.5 text-[8.5px] font-medium",o?.installed?"border-success/25 text-success":"border-line text-faint"),children:o?.installed?"installed":"npx fallback"})]},a)})}),c.jsxs("button",{type:"button",onClick:()=>be.getState().setDeployOpen(!0),className:"mt-3 inline-flex h-8 items-center gap-1.5 rounded-lg bg-accent px-3 text-[10.5px] font-medium text-on-accent hover:bg-accent/90",children:[c.jsx(pr,{size:12})," Open deploy panel"]})]})]})}function W6(){return c.jsx(On,{title:"Local plugins",description:"OpenSol only installs plugin packages you choose from this machine. A plugin stays sandboxed and disabled until you review its permissions and mark it Safe.",children:c.jsx(N6,{})})}function eI(){const e=Re(),i=Re(p=>p.update),a=be(p=>p.openSettings),s=be(p=>p.notify),o=Rw(e.tools),u=[{id:"light",label:"Light",icon:Sm},{id:"dark",label:"Dark",icon:km},{id:"system",label:"System",icon:wm}],d=async()=>{const p=e.daemon?.dataDir??"~/.maxcode";try{await navigator.clipboard.writeText(p),s(`Copied the data folder path: ${p}`,"success")}catch{s(`Data folder: ${p}`,"info")}};return c.jsxs("div",{className:"px-5 py-2 sm:px-7",children:[c.jsxs("div",{className:"settings-row",children:[c.jsxs("div",{className:"min-w-0",children:[c.jsx("p",{className:"settings-label",children:"Permission"}),c.jsx("p",{className:"settings-hint",children:"Choose the default permission mode for new sessions."})]}),c.jsx("select",{value:o,onChange:p=>i({tools:Dw(e.tools,p.target.value)}),className:pe("settings-select w-full sm:w-[210px]"),"aria-label":"Default permission mode",children:$m.map(p=>c.jsx("option",{value:p.value,children:p.label},p.value))})]}),c.jsxs("div",{className:"settings-row",children:[c.jsxs("div",{className:"min-w-0",children:[c.jsx("p",{className:"settings-label",children:"Appearance"}),c.jsx("p",{className:"settings-hint",children:"Follow the system or pick a fixed theme."})]}),c.jsxs("div",{className:"w-full sm:w-[360px]",children:[c.jsx("div",{className:"grid grid-cols-3 gap-2",children:u.map(p=>{const m=p.icon,g=e.theme===p.id;return c.jsxs("button",{type:"button",onClick:()=>i({theme:p.id}),className:pe("flex flex-col items-center gap-1.5 rounded-xl border px-2 py-2.5 transition-colors",g?"border-accent/60 bg-panel text-ink ring-2 ring-accent/10":"border-line text-muted hover:border-faint/50 hover:text-ink"),children:[c.jsx(m,{size:16}),c.jsx("span",{className:"text-[11px] font-medium",children:p.label})]},p.id)})}),c.jsx("button",{type:"button",onClick:()=>a("appearance"),className:"mt-2 text-[11px] font-medium text-muted transition-colors hover:text-ink",children:"More themes and theme previews →"})]})]}),c.jsxs("div",{className:"settings-row",children:[c.jsxs("div",{className:"min-w-0",children:[c.jsx("p",{className:"settings-label",children:"Font size"}),c.jsx("p",{className:"settings-hint",children:"Only affects conversation content."})]}),c.jsxs("div",{className:"flex items-center gap-2",children:[c.jsx("select",{value:e.chatFontSize,onChange:p=>i({chatFontSize:Number(p.target.value)}),className:pe("settings-select w-[84px] text-center"),"aria-label":"Conversation font size",children:Array.from({length:9},(p,m)=>m+12).map(p=>c.jsx("option",{value:p,children:p},p))}),c.jsx("span",{className:"text-[11px] text-faint",children:"px"})]})]}),c.jsxs("div",{className:"settings-row",children:[c.jsxs("div",{className:"min-w-0",children:[c.jsx("p",{className:"settings-label",children:"Work details"}),c.jsx("p",{className:"settings-hint",children:"Choose how much detail to show for tool calls."})]}),c.jsxs("select",{value:e.workDetail,onChange:p=>i({workDetail:p.target.value==="concise"?"concise":"detailed"}),className:pe("settings-select w-full sm:w-[180px]"),"aria-label":"Work details",children:[c.jsx("option",{value:"concise",children:"Concise"}),c.jsx("option",{value:"detailed",children:"Detailed"})]})]}),c.jsxs("div",{className:"settings-row",children:[c.jsxs("div",{className:"min-w-0",children:[c.jsx("p",{className:"settings-label",children:"When to collapse work details"}),c.jsx("p",{className:"settings-hint",children:"Choose when to automatically collapse work details."})]}),c.jsxs("select",{value:e.autoCollapseWork?"completion":"never",onChange:p=>i({autoCollapseWork:p.target.value==="completion"}),className:pe("settings-select w-full sm:w-[180px]"),"aria-label":"When to collapse work details",children:[c.jsx("option",{value:"completion",children:"On completion"}),c.jsx("option",{value:"never",children:"Never"})]})]}),c.jsxs("div",{className:"settings-row",children:[c.jsxs("div",{className:"min-w-0",children:[c.jsx("p",{className:"settings-label",children:"Show token estimates"}),c.jsx("p",{className:"settings-hint",children:"When a provider does not report usage, show a rough output estimate."})]}),c.jsx(es,{checked:e.showTokenEstimate,onChange:p=>i({showTokenEstimate:p}),label:"Show token estimates"})]}),c.jsxs("div",{className:"settings-row",children:[c.jsxs("div",{className:"min-w-0",children:[c.jsx("p",{className:"settings-label",children:"Local configuration"}),c.jsx("p",{className:"settings-hint",children:"Settings, conversations and encrypted keys live in this folder."})]}),c.jsxs("button",{type:"button",onClick:()=>{d()},className:"inline-flex h-9 shrink-0 items-center gap-1.5 rounded-lg border border-line bg-panel px-3 text-[11.5px] font-medium text-ink transition-colors hover:bg-raised",title:e.daemon?.dataDir??"~/.maxcode",children:[c.jsx(Gu,{size:13}),"Copy data folder path"]})]}),c.jsx("p",{className:"py-4 text-[10.5px] text-faint",children:"Changes are saved automatically to this computer."})]})}function tI(){const e=Re(),i=Re(s=>s.update),a=[{id:"light",label:"Light",className:"bg-[#fcfcfc]",line:"bg-[#e2e2e5]"},{id:"dark",label:"Dark",className:"bg-[#09090b]",line:"bg-[#2a2a31]"},{id:"night-owl",label:"Night Owl",className:"bg-[#011627]",line:"bg-[#1a3e5a]"},{id:"claude-code",label:"Claude Code",className:"bg-[#262624]",line:"bg-[#42423e]"},{id:"flame",label:"Flame",className:"bg-[#130d0c]",line:"bg-[#3e2621]"},{id:"system",label:"System",className:"bg-gradient-to-br from-[#fcfcfc] to-[#09090b]",line:"bg-[#8a8a92]"},...gE().themes().map(s=>({id:s.id,label:s.label,className:"bg-gradient-to-br from-accent-soft to-panel",line:"bg-line"}))];return c.jsxs(c.Fragment,{children:[c.jsx(On,{title:"Theme",description:"System follows your OS preference and updates when it changes.",children:c.jsx("div",{className:"grid grid-cols-2 gap-2 sm:grid-cols-3",children:a.map(s=>{const o=e.theme===s.id;return c.jsxs("button",{type:"button",onClick:()=>i({theme:s.id}),className:pe("rounded-xl border p-2 text-left transition-all",o?"border-accent ring-2 ring-accent/10":"border-line hover:border-faint/50"),children:[c.jsxs("span",{className:pe("block h-14 w-full overflow-hidden rounded-lg border border-line/60 p-2",s.className),children:[c.jsx("span",{className:pe("block h-1.5 w-8 rounded-full",s.line)}),c.jsx("span",{className:pe("mt-1.5 block h-1.5 w-12 rounded-full opacity-60",s.line)}),c.jsx("span",{className:"mt-3 block h-2 w-5 rounded-full bg-accent"})]}),c.jsxs("span",{className:"mt-1.5 flex items-center justify-between px-0.5",children:[c.jsx("span",{className:"text-[10.5px] font-medium text-ink",children:s.label}),o&&c.jsx(Sn,{size:11,className:"text-accent"})]})]},s.id)})})}),c.jsx(On,{title:"Interface",children:c.jsxs("div",{className:"flex items-center justify-between gap-4 rounded-lg border border-line bg-raised/30 px-3 py-2.5",children:[c.jsxs("div",{children:[c.jsx("p",{className:"text-[11.5px] font-medium text-ink",children:"Show token estimates"}),c.jsx("p",{className:"mt-0.5 text-[9.5px] text-faint",children:"When a provider does not report usage, show a rough output estimate."})]}),c.jsx(es,{checked:e.showTokenEstimate,onChange:s=>i({showTokenEstimate:s}),label:"Show token estimates"})]})}),c.jsx(On,{title:"Shortcuts",children:c.jsx("div",{className:"space-y-1.5 text-[10.5px]",children:[["Search and commands","⌘ K / Ctrl K"],["Send message","Enter"],["New line","Shift Enter"],["Save file in the editor","⌘ S / Ctrl S"]].map(([s,o])=>c.jsxs("div",{className:"flex items-center justify-between rounded-lg px-1 py-1",children:[c.jsx("span",{className:"text-muted",children:s}),c.jsx("kbd",{className:"rounded border border-line bg-raised px-1.5 py-0.5 font-sans text-[9.5px] text-faint",children:o})]},s))})})]})}function nI(){const e=We(y=>y.sessions),i=Re(y=>y.daemon),a=Re(y=>y.secretStatus),s=Be(y=>y.entries),o=Be(y=>y.info),u=be(y=>y.askConfirm),d=be(y=>y.notify),p=q.useRef(null),[m,g]=q.useState(""),x=e.reduce((y,k)=>y+k.messages.length,0),b=s.filter(y=>y.type==="file").length,v=async(y,k)=>{if(await u({...k,tone:"danger",confirmLabel:k.label})){g(y);try{EO();const _=await FT(y);await fE(_),d(y==="history"?"Conversation history cleared.":y==="settings"?"Settings restored to defaults.":"OpenSol was reset.","success")}catch(_){d(_ instanceof Error?_.message:"Could not reset that data.","error")}finally{g("")}}};return c.jsxs(c.Fragment,{children:[c.jsxs(On,{title:"About",children:[c.jsxs("div",{className:"flex items-start gap-3.5",children:[c.jsx(ol,{size:46}),c.jsxs("div",{children:[c.jsxs("div",{className:"flex flex-wrap items-baseline gap-2",children:[c.jsx("h3",{className:"font-display text-[20px] font-semibold tracking-[-0.03em] text-ink",children:"OpenSol"}),c.jsxs("span",{className:"text-[10px] text-faint",children:["v",i?.version??"1.0.0"]})]}),c.jsx("p",{className:"mt-0.5 text-[10.5px] font-medium text-muted",children:"A OpenSoft product"}),c.jsx("p",{className:"mt-2 max-w-[520px] text-[10.5px] leading-relaxed text-muted",children:"A local-first coding agent with a real workspace, shell, git, web research, subagents and deploy flows. No OpenSol account and no OpenSoft server. Your keys never leave this machine."})]})]}),c.jsx("div",{className:"mt-4 grid grid-cols-2 gap-2 sm:grid-cols-3",children:[["Conversations",String(e.length)],["Messages",String(x)],["Workspace files",o.available?String(b):"None"]].map(([y,k])=>c.jsxs("div",{className:"rounded-lg border border-line bg-raised/30 px-3 py-2",children:[c.jsx("p",{className:"text-[9px] text-faint",children:y}),c.jsx("p",{className:"mt-0.5 text-[15px] font-semibold tracking-[-0.02em] text-ink",children:k})]},y))})]}),c.jsxs(On,{title:"Local data",description:"Everything is stored under ~/.maxcode. Clearing that folder removes OpenSol’s local state.",children:[c.jsxs("div",{className:"space-y-1.5 rounded-lg border border-line bg-raised/30 px-3 py-2.5 text-[10px]",children:[c.jsxs("p",{className:"flex items-center justify-between gap-3",children:[c.jsx("span",{className:"text-faint",children:"Data folder"}),c.jsx("span",{className:"min-w-0 truncate font-mono text-ink",title:i?.dataDir,children:i?.dataDir??"~/.maxcode"})]}),c.jsxs("p",{className:"flex items-center justify-between gap-3",children:[c.jsx("span",{className:"text-faint",children:"Encryption"}),c.jsx("span",{className:"text-muted",children:a?.encryption??"AES-256-GCM"})]}),c.jsxs("p",{className:"flex items-center justify-between gap-3",children:[c.jsx("span",{className:"text-faint",children:"Runtime"}),c.jsxs("span",{className:"truncate text-muted",children:[i?.platform??"—"," · Node ",i?.node??"—"]})]}),c.jsxs("p",{className:"flex items-center justify-between gap-3",children:[c.jsx("span",{className:"text-faint",children:"Workspace"}),c.jsx("span",{className:"min-w-0 truncate font-mono text-muted",title:o.root,children:o.available?o.root:"No folder open"})]})]}),c.jsxs("div",{className:"mt-3 flex flex-wrap gap-2",children:[c.jsxs("button",{type:"button",onClick:zv,className:"inline-flex h-8 items-center gap-1.5 rounded-lg border border-line bg-panel px-2.5 text-[10.5px] font-medium text-ink hover:bg-raised",children:[c.jsx(dv,{size:12})," Export conversations"]}),c.jsxs("button",{type:"button",onClick:()=>p.current?.click(),className:"inline-flex h-8 items-center gap-1.5 rounded-lg border border-line bg-panel px-2.5 text-[10.5px] font-medium text-ink hover:bg-raised",children:[c.jsx(Tm,{size:12})," Import conversations"]}),c.jsx("input",{ref:p,type:"file",accept:"application/json,.json",className:"hidden",onChange:y=>{const k=y.target.files?.[0];k&&(aC(k).then(N=>d(N>0?`Imported ${N} conversation${N===1?"":"s"}.`:"Those conversations are already in your history.",N>0?"success":"info")).catch(N=>d(N instanceof Error?N.message:"Could not import that file.","error")),y.target.value="")}}),c.jsxs("button",{type:"button",onClick:()=>{v("history",{title:"Clear conversation history?",body:"Every conversation saved on this computer will be deleted. Keys, skills and workspace files are kept.",label:"Clear history"})},disabled:m==="history",className:"inline-flex h-8 items-center gap-1.5 rounded-lg border border-line bg-panel px-2.5 text-[10.5px] font-medium text-ink hover:bg-raised disabled:opacity-40",children:[m==="history"?c.jsx(Tn,{size:12}):c.jsx(Xr,{size:12})," Clear history"]})]}),c.jsxs("p",{className:"mt-3 flex items-center gap-2 text-[9.5px] text-faint",children:[c.jsx(Gu,{size:11}),Co(new Blob([JSON.stringify(e)]).size)," of conversation history",c.jsx("span",{className:"text-line",children:"·"}),c.jsx(Yu,{size:10}),"secrets encrypted at rest"]})]}),c.jsx(On,{title:"Danger zone",children:c.jsxs("div",{className:"space-y-2",children:[c.jsxs("div",{className:"flex flex-col gap-2 rounded-lg border border-line px-3 py-2.5 sm:flex-row sm:items-center sm:justify-between",children:[c.jsxs("div",{children:[c.jsx("p",{className:"text-[11px] font-medium text-ink",children:"Restore default settings"}),c.jsx("p",{className:"mt-0.5 text-[9.5px] text-muted",children:"Reset prompt, modes, tool permissions and skills. Keys and chats stay."})]}),c.jsxs("button",{type:"button",onClick:()=>{v("settings",{title:"Restore default settings?",body:"Your prompt, tool permissions, skills and interface settings return to their defaults. Conversations and encrypted keys are kept.",label:"Restore defaults"})},disabled:m==="settings",className:"inline-flex h-7 shrink-0 items-center gap-1 self-start rounded-lg border border-line px-2.5 text-[10px] font-medium text-muted hover:border-warning/30 hover:text-warning disabled:opacity-40 sm:self-auto",children:[m==="settings"?c.jsx(Tn,{size:11}):c.jsx(wv,{size:11})," Restore defaults"]})]}),c.jsxs("div",{className:"flex flex-col gap-2 rounded-lg border border-danger/20 bg-danger/[0.02] px-3 py-2.5 sm:flex-row sm:items-center sm:justify-between",children:[c.jsxs("div",{children:[c.jsx("p",{className:"text-[11px] font-medium text-ink",children:"Reset OpenSol"}),c.jsx("p",{className:"mt-0.5 text-[9.5px] text-muted",children:"Delete conversations, encrypted keys, skills, settings and the remembered workspace."})]}),c.jsxs("button",{type:"button",onClick:()=>{v("all",{title:"Reset everything?",body:"Conversations, API keys, hosting credentials, skills, settings and the workspace list will be permanently removed from this computer. Files in your project folder are never deleted.",label:"Reset everything"})},disabled:m==="all",className:"inline-flex h-7 shrink-0 items-center gap-1 self-start rounded-lg bg-danger px-2.5 text-[10px] font-medium text-on-accent hover:bg-danger/90 disabled:opacity-40 sm:self-auto",children:[m==="all"?c.jsx(Tn,{size:11}):c.jsx(Xr,{size:11})," Reset everything"]})]})]})})]})}function iI(){const e=be(m=>m.settingsOpen),i=be(m=>m.settingsTab),a=be(m=>m.closeSettings),s=be(m=>m.openSettings),o=be(m=>m.notify),u=Re(m=>m.daemon),d=q.useRef(null);q.useEffect(()=>{e&&d.current?.scrollTo({top:0})},[e,i]);const p=async()=>{const m=u?.dataDir??"~/.maxcode";try{await navigator.clipboard.writeText(m),o(`Copied the data folder path: ${m}`,"success")}catch{o(`Data folder: ${m}`,"info")}};return c.jsx(Hm,{open:e,onClose:a,labelledBy:"settings-title",className:"h-[92dvh] p-0 sm:h-[min(88dvh,780px)] sm:w-[min(980px,94vw)]",children:c.jsxs("div",{className:"flex min-h-0 flex-1 flex-col",children:[c.jsxs("div",{className:"flex h-14 shrink-0 items-center justify-between gap-3 border-b border-line px-4 sm:px-5",children:[c.jsx("h2",{id:"settings-title",className:"text-[16px] font-semibold tracking-[-0.02em] text-ink",children:"Settings"}),c.jsxs("div",{className:"flex shrink-0 items-center gap-1.5",children:[c.jsxs("button",{type:"button",onClick:()=>{p()},className:"hidden h-8 items-center gap-1.5 rounded-lg border border-line bg-panel px-2.5 text-[11px] font-medium text-ink transition-colors hover:bg-raised sm:inline-flex",title:u?.dataDir??"~/.maxcode",children:[c.jsx(Gu,{size:12}),"Data folder"]}),c.jsx("button",{type:"button",className:"icon-button",onClick:a,"aria-label":"Close settings",children:c.jsx(Ta,{size:16})})]})]}),c.jsxs("div",{className:"flex min-h-0 flex-1",children:[c.jsxs("aside",{className:"hidden w-[200px] shrink-0 flex-col border-r border-line bg-canvas sm:flex",children:[c.jsx("nav",{className:"flex-1 space-y-0.5 overflow-y-auto p-2",children:lv.map(m=>{const g=m.icon,x=i===m.id;return c.jsxs("button",{type:"button",onClick:()=>s(m.id),title:m.description,className:pe("flex h-9 w-full items-center gap-2.5 rounded-lg px-2.5 text-left text-[12.5px] transition-colors",x?"bg-raised font-medium text-ink":"text-muted hover:bg-raised/60 hover:text-ink"),children:[c.jsx(g,{size:14,className:pe(x?"text-ink":"text-faint")}),m.label]},m.id)})}),c.jsxs("div",{className:"border-t border-line p-3",children:[c.jsxs("p",{className:"flex items-center gap-1.5 text-[9px] text-faint",children:[c.jsx(Yu,{size:10}),"Keys encrypted on this machine"]}),c.jsx("p",{className:"mt-1 text-[9px] text-faint",children:"OpenSol 1.0 · OpenSoft"})]})]}),c.jsxs("div",{className:"flex min-h-0 min-w-0 flex-1 flex-col",children:[c.jsx("div",{className:"thin-scroll flex shrink-0 gap-1 overflow-x-auto border-b border-line px-3 py-2 sm:hidden",children:lv.map(m=>c.jsx("button",{type:"button",onClick:()=>s(m.id),className:pe("shrink-0 rounded-full px-2.5 py-1 text-[10.5px] font-medium transition-colors",i===m.id?"bg-ink text-panel":"text-muted hover:bg-raised"),children:m.label},m.id))}),c.jsxs("div",{ref:d,className:"thin-scroll min-h-0 flex-1 overflow-y-auto",children:[i==="general"&&c.jsx(eI,{}),i==="models"&&c.jsx(P6,{}),i==="tools"&&c.jsx(Y6,{}),i==="search"&&c.jsx(V6,{}),i==="skills"&&c.jsx(Z6,{}),i==="plugins"&&c.jsx(W6,{}),i==="deploy"&&c.jsx(J6,{}),i==="appearance"&&c.jsx(tI,{}),i==="about"&&c.jsx(nI,{})]})]})]})]})})}const Ch=[{id:"cloudflare",label:"Cloudflare Pages",short:"Pages",icon:Oh,blurb:"Fast global hosting with a generous free tier.",needs:"API token + account id"},{id:"netlify",label:"Netlify",short:"Netlify",icon:Jr,blurb:"Create a site and publish a folder in one step.",needs:"Personal access token"},{id:"vercel",label:"Vercel",short:"Vercel",icon:xT,blurb:"Production deploys through the Vercel CLI.",needs:"Access token"}];function aI(){const e=be(T=>T.deployOpen),i=be(T=>T.setDeployOpen),a=be(T=>T.openSettings),s=be(T=>T.notify),o=Be(T=>T.root),u=Be(T=>T.info.name),d=Be(T=>T.info.available),p=Re(T=>T.deployTools),m=Re(T=>T.deploySecrets),[g,x]=q.useState("cloudflare"),[b,v]=q.useState(""),[y,k]=q.useState("dist"),[N,_]=q.useState(""),[S,C]=q.useState(""),[M,I]=q.useState(!1),[F,R]=q.useState([]),[A,L]=q.useState(null),[V,D]=q.useState(""),[U,ee]=q.useState(!1),ue=q.useRef(null),re=q.useRef(null),ne=q.useRef(0),P=Ch.find(T=>T.id===g)??Ch[0],ae=p?.[g],$=!!m?.[g]?.configured;q.useEffect(()=>{e&&(v(o),L(null),D(""),R([]),I(!1),ee(!1))},[e,o]),q.useEffect(()=>{if(!e)return;const T=re.current;T&&(T.scrollTop=T.scrollHeight)},[F,e]),q.useEffect(()=>()=>ue.current?.abort(),[]);const de=(T,j)=>{const ie=j.trimEnd();if(!ie)return;ne.current+=1;const he=ne.current;R(Z=>[...Z.slice(-500),{id:he,stream:T,text:ie}])},O=()=>{ue.current?.abort(),i(!1)},Ie=async()=>{if(M)return;if(!b.trim()){D("Choose the project folder to deploy.");return}I(!0),L(null),D(""),R([]);const T=new AbortController;ue.current=T,de("meta",`Preparing ${P.label} deploy from ${b.trim()}`);try{for await(const j of eC({provider:g,path:b.trim(),outputDir:y.trim()||void 0,buildCommand:N.trim()||void 0,projectName:S.trim()||void 0},T.signal))if(j.type==="log")de(j.stream,j.text);else if(j.type==="start")de("meta",`Deploying ${j.provider}${j.path?` · ${j.path}`:""}`);else if(j.type==="done"){L(j.result),de("meta",`Published ${j.result.url}`);break}else if(j.type==="error"){D(j.message),de("stderr",j.message);break}}catch(j){if(j instanceof DOMException&&j.name==="AbortError")de("meta","Deployment stopped.");else{const ie=j instanceof Error?j.message:"The deployment failed.";D(ie),de("stderr",ie)}}finally{ue.current=null,I(!1)}},fe=async()=>{if(A?.url)try{await navigator.clipboard.writeText(A.url),ee(!0),window.setTimeout(()=>ee(!1),1600)}catch{s("Clipboard access was blocked by the browser.","error")}};return c.jsxs(Hm,{open:e,onClose:O,labelledBy:"deploy-title",wide:!0,className:"h-[92dvh] p-0 sm:h-[min(90dvh,760px)]",children:[c.jsxs("div",{className:"flex shrink-0 items-start justify-between gap-4 border-b border-line px-5 py-4 sm:px-6",children:[c.jsxs("div",{className:"flex min-w-0 items-start gap-3",children:[c.jsx("span",{className:"mt-0.5 flex h-9 w-9 shrink-0 items-center justify-center rounded-xl bg-accent-soft text-accent",children:c.jsx(pr,{size:17})}),c.jsxs("div",{className:"min-w-0",children:[c.jsx("h2",{id:"deploy-title",className:"font-display text-[20px] font-semibold tracking-[-0.02em] text-ink",children:"Deploy a site"}),c.jsx("p",{className:"mt-0.5 text-[11.5px] leading-relaxed text-muted",children:"Publish the open workspace or another project folder. Tokens stay encrypted on this machine."})]})]}),c.jsx("button",{type:"button",className:"icon-button -mr-1 shrink-0",onClick:O,"aria-label":"Close deploy panel",children:c.jsx("span",{className:"text-[18px] leading-none",children:"×"})})]}),c.jsxs("div",{className:"grid min-h-0 flex-1 lg:grid-cols-[minmax(0,380px)_minmax(0,1fr)]",children:[c.jsx("div",{className:"thin-scroll min-h-0 overflow-y-auto border-b border-line lg:border-b-0 lg:border-r",children:c.jsxs("div",{className:"space-y-5 p-5",children:[c.jsxs("div",{children:[c.jsx("p",{className:"mb-2 text-[10px] font-semibold uppercase tracking-[0.14em] text-faint",children:"Host"}),c.jsx("div",{className:"grid gap-1.5",children:Ch.map(T=>{const j=T.icon,ie=g===T.id;return c.jsxs("button",{type:"button",onClick:()=>x(T.id),disabled:M,className:pe("flex items-start gap-2.5 rounded-xl border px-3 py-2.5 text-left transition-colors disabled:opacity-60",ie?"border-accent/35 bg-accent-soft/45":"border-line bg-panel hover:bg-raised/50"),children:[c.jsx("span",{className:pe("mt-0.5 flex h-7 w-7 shrink-0 items-center justify-center rounded-lg",ie?"bg-accent text-on-accent":"bg-raised text-muted"),children:c.jsx(j,{size:13})}),c.jsxs("span",{className:"min-w-0 flex-1",children:[c.jsxs("span",{className:"flex items-center gap-2",children:[c.jsx("span",{className:pe("text-[12px] font-medium",ie?"text-accent":"text-ink"),children:T.label}),m?.[T.id]?.configured?c.jsx(Sn,{size:11,className:"text-success"}):c.jsx("span",{className:"text-[9px] text-warning",children:"needs token"})]}),c.jsx("span",{className:"mt-0.5 block text-[10px] leading-relaxed text-faint",children:T.blurb})]})]},T.id)})})]}),!$&&c.jsxs("div",{className:"rounded-xl border border-warning/25 bg-warning/[0.045] p-3",children:[c.jsxs("p",{className:"flex items-start gap-1.5 text-[10.5px] leading-relaxed text-muted",children:[c.jsx(Vr,{size:12,className:"mt-0.5 shrink-0 text-warning"}),P.label," needs ",P.needs,". Add it once in Settings → Deploy; it is encrypted with AES-256-GCM and never appears in the page again."]}),c.jsxs("button",{type:"button",onClick:()=>{i(!1),a("deploy")},className:"mt-2 inline-flex h-7 items-center rounded-lg bg-ink px-2.5 text-[10.5px] font-medium text-panel",children:["Add ",P.label," credentials"]})]}),c.jsxs("div",{children:[c.jsxs("div",{className:"mb-1.5 flex items-center justify-between gap-2",children:[c.jsx("label",{htmlFor:"deploy-path",className:"text-[10px] font-semibold uppercase tracking-[0.14em] text-faint",children:"Project folder"}),d&&c.jsxs("button",{type:"button",onClick:()=>v(o),disabled:M,className:"inline-flex items-center gap-1 text-[9.5px] font-medium text-accent disabled:opacity-40",children:[c.jsx(Kr,{size:10}),"Use open workspace"]})]}),c.jsx("input",{id:"deploy-path",value:b,onChange:T=>v(T.target.value),disabled:M,placeholder:"/absolute/path/to/project or ~/Projects/site",spellCheck:!1,className:"h-9 w-full rounded-lg border border-line bg-panel px-2.5 font-mono text-[10.5px] text-ink outline-none transition-colors placeholder:text-faint focus:border-accent/50 disabled:opacity-60"}),c.jsxs("p",{className:"mt-1 text-[9px] leading-relaxed text-faint",children:[d?`Open workspace: ${u}`:"No workspace open."," Another folder must already exist on this machine."]})]}),c.jsxs("div",{className:"grid grid-cols-2 gap-2.5",children:[c.jsxs("div",{children:[c.jsx("label",{htmlFor:"deploy-output",className:"mb-1.5 block text-[10px] font-semibold uppercase tracking-[0.14em] text-faint",children:"Output folder"}),c.jsx("input",{id:"deploy-output",value:y,onChange:T=>k(T.target.value),disabled:M,placeholder:"dist",spellCheck:!1,className:"h-8 w-full rounded-lg border border-line bg-panel px-2 font-mono text-[10.5px] text-ink outline-none focus:border-accent/50 disabled:opacity-60"})]}),c.jsxs("div",{children:[c.jsx("label",{htmlFor:"deploy-name",className:"mb-1.5 block text-[10px] font-semibold uppercase tracking-[0.14em] text-faint",children:"Project name"}),c.jsx("input",{id:"deploy-name",value:S,onChange:T=>C(T.target.value),disabled:M,placeholder:"my-site",spellCheck:!1,className:"h-8 w-full rounded-lg border border-line bg-panel px-2 font-mono text-[10.5px] text-ink outline-none focus:border-accent/50 disabled:opacity-60"})]})]}),c.jsx("div",{className:"flex flex-wrap gap-1",children:["dist","build","out","."].map(T=>c.jsx("button",{type:"button",onClick:()=>k(T),disabled:M,className:pe("chip h-7 px-2 text-[9.5px]",y===T&&"chip-active"),children:T},T))}),c.jsxs("div",{children:[c.jsxs("label",{htmlFor:"deploy-build",className:"mb-1.5 block text-[10px] font-semibold uppercase tracking-[0.14em] text-faint",children:["Build command ",c.jsx("span",{className:"font-normal normal-case tracking-normal text-faint",children:"optional"})]}),c.jsx("input",{id:"deploy-build",value:N,onChange:T=>_(T.target.value),disabled:M,placeholder:"npm run build",spellCheck:!1,className:"h-8 w-full rounded-lg border border-line bg-panel px-2 font-mono text-[10.5px] text-ink outline-none focus:border-accent/50 disabled:opacity-60"}),c.jsxs("div",{className:"mt-1.5 flex flex-wrap gap-1",children:[["npm run build","pnpm build","yarn build"].map(T=>c.jsx("button",{type:"button",onClick:()=>_(T),disabled:M,className:"rounded-md border border-line px-1.5 py-0.5 text-[9px] text-faint transition-colors hover:text-ink",children:T},T)),N&&c.jsx("button",{type:"button",onClick:()=>_(""),disabled:M,className:"px-1.5 py-0.5 text-[9px] text-faint hover:text-danger",children:"clear"})]})]}),c.jsxs("div",{className:"flex items-start gap-1.5 rounded-lg border border-line bg-raised/40 px-2.5 py-2 text-[9.5px] leading-relaxed text-faint",children:[c.jsx(Tv,{size:11,className:"mt-0.5 shrink-0"}),ae?.installed?`${ae.label} ${ae.version?`(${ae.version})`:""} is installed locally.`:`${ae?.label??P.short} CLI is not installed; OpenSol will use npx for this deploy.`]})]})}),c.jsxs("div",{className:"flex min-h-0 flex-col",children:[c.jsxs("div",{className:"flex shrink-0 items-center gap-2 border-b border-line px-4 py-2.5",children:[c.jsx("span",{className:pe("h-1.5 w-1.5 rounded-full",M?"animate-breathe bg-accent":A?"bg-success":"bg-faint")}),c.jsx("p",{className:"min-w-0 flex-1 truncate text-[11px] font-medium text-muted",children:M?`Deploying with ${P.label}…`:A?"Deployment complete":"Deploy output"}),M&&c.jsxs("button",{type:"button",onClick:()=>ue.current?.abort(),className:"inline-flex h-7 items-center gap-1 rounded-lg border border-line px-2 text-[10px] font-medium text-muted hover:text-ink",children:[c.jsx(Nm,{size:9,fill:"currentColor"})," Stop"]}),!M&&c.jsxs("button",{type:"button",onClick:()=>{Ie()},disabled:!$||!b.trim(),className:"inline-flex h-7 items-center gap-1.5 rounded-lg bg-accent px-2.5 text-[10.5px] font-medium text-on-accent transition-colors hover:bg-accent/90 disabled:cursor-not-allowed disabled:opacity-40",children:[c.jsx(P2,{size:10,fill:"currentColor"}),"Deploy"]})]}),A&&c.jsx("div",{className:"shrink-0 border-b border-line bg-success/[0.045] px-4 py-3",children:c.jsxs("div",{className:"flex items-start gap-2",children:[c.jsx(Sn,{size:14,className:"mt-0.5 shrink-0 text-success"}),c.jsxs("div",{className:"min-w-0 flex-1",children:[c.jsx("p",{className:"text-[11.5px] font-medium text-ink",children:"Published successfully"}),c.jsx("a",{href:A.url,target:"_blank",rel:"noreferrer",className:"mt-0.5 block truncate text-[11px] text-accent hover:underline",children:A.url})]}),c.jsx("button",{type:"button",onClick:fe,className:"icon-button h-7 w-7",title:"Copy URL","aria-label":"Copy URL",children:U?c.jsx(Sn,{size:12,className:"text-success"}):c.jsx(qu,{size:12})}),c.jsx("a",{href:A.url,target:"_blank",rel:"noreferrer",className:"icon-button h-7 w-7",title:"Open site","aria-label":"Open site",children:c.jsx(hv,{size:12})})]})}),V&&c.jsx("div",{className:"shrink-0 border-b border-danger/20 bg-danger/[0.045] px-4 py-2.5 text-[10.5px] leading-relaxed text-danger",children:V}),c.jsx("div",{ref:re,className:"thin-scroll min-h-0 flex-1 overflow-y-auto bg-canvas/40 px-4 py-3",children:F.length===0&&!M?c.jsxs("div",{className:"flex h-full min-h-[180px] flex-col items-center justify-center gap-2 px-6 text-center",children:[c.jsx("span",{className:"flex h-10 w-10 items-center justify-center rounded-xl bg-raised text-faint",children:c.jsx(pr,{size:17})}),c.jsx("p",{className:"text-[11.5px] font-medium text-muted",children:"Ready when you are"}),c.jsx("p",{className:"max-w-[260px] text-[10px] leading-relaxed text-faint",children:"The build and deploy output appears here. Credentials are passed to the CLI through the environment, never printed in the log."})]}):c.jsxs("pre",{className:"whitespace-pre-wrap break-words font-mono text-[10px] leading-[1.7] text-muted",children:[F.map(T=>c.jsxs("span",{className:pe("block",T.stream==="stderr"&&"text-danger",T.stream==="meta"&&"text-accent"),children:[T.stream==="meta"?"› ":"",T.text]},T.id)),M&&c.jsxs("span",{className:"mt-1 flex items-center gap-1.5 text-accent",children:[c.jsx(Tn,{size:10})," working…"]})]})}),c.jsxs("div",{className:"flex h-9 shrink-0 items-center gap-2 border-t border-line px-4 text-[9px] text-faint",children:[c.jsx(Vr,{size:10}),"Tokens encrypted at rest",c.jsx("span",{className:"ml-auto",children:b.trim()?b.trim().split(/[\\/]/).filter(Boolean).pop():"No folder"})]})]})]})]})}function rI(){const e=be(C=>C.paletteOpen),i=be(C=>C.setPaletteOpen),a=be(C=>C.openSettings),s=be(C=>C.setWorkspaceOpen),o=be(C=>C.setDeployOpen),u=be(C=>C.focusComposer),d=be(C=>C.notify),p=We(C=>C.sessions),m=Be(C=>C.entries),[g,x]=q.useState(""),[b,v]=q.useState(0),y=q.useRef(null),k=q.useRef(null);q.useEffect(()=>{if(!e)return;x(""),v(0),k.current=document.activeElement instanceof HTMLElement?document.activeElement:null;const C=document.body.style.overflow;document.body.style.overflow="hidden";const M=window.setTimeout(()=>y.current?.focus(),30);return()=>{window.clearTimeout(M),document.body.style.overflow=C,k.current?.focus()}},[e]);const N=q.useMemo(()=>{const C=document.documentElement.classList.contains("dark"),M=()=>i(!1),I=[{id:"action-new-chat",label:"New chat",hint:"Start a clean conversation",group:"Actions",icon:wo,action:()=>{We.getState().newChat(),u(),M()}},{id:"action-workspace",label:"Toggle workspace panel",hint:"Browse and edit files in the open folder",group:"Actions",icon:Kr,action:()=>{s(!be.getState().workspaceOpen),M()}},{id:"action-deploy",label:"Deploy a page",hint:"Cloudflare Pages, Netlify or Vercel",group:"Actions",icon:pr,action:()=>{o(!0),M()}},{id:"action-theme",label:C?"Switch to light theme":"Switch to dark theme",group:"Actions",icon:C?Sm:km,action:()=>{Re.getState().update({theme:C?"light":"dark"}),M()}},{id:"action-models",label:"Model settings",hint:"Providers, encrypted keys and reasoning",group:"Settings",icon:Yr,action:()=>{a("models"),M()}},{id:"action-tools",label:"Tool permissions",hint:"Approval and enablement",group:"Settings",icon:Su,action:()=>{a("tools"),M()}},{id:"action-search",label:"Search settings",hint:"Tavily, Brave, Serper, DuckDuckGo",group:"Settings",icon:Jr,action:()=>{a("search"),M()}},{id:"action-skills",label:"Skills",hint:"Load and manage reusable instructions",group:"Settings",icon:hr,action:()=>{a("skills"),M()}},{id:"action-deploy-settings",label:"Hosting credentials",hint:"Cloudflare, Netlify and Vercel tokens",group:"Settings",icon:pr,action:()=>{a("deploy"),M()}},{id:"action-appearance",label:"Appearance",hint:"Theme and token estimates",group:"Settings",icon:vv,action:()=>{a("appearance"),M()}},{id:"action-about",label:"About OpenSol",hint:"Local storage and reset controls",group:"Settings",icon:xm,action:()=>{a("about"),M()}},{id:"action-export",label:"Export conversations",hint:"Download a JSON history file",group:"Actions",icon:dv,action:()=>{zv(),d("Conversation history exported.","success"),M()}}],F=[...p].sort((A,L)=>L.updatedAt-A.updatedAt).map(A=>({id:`chat-${A.id}`,label:A.title,hint:`${A.messages.length} messages · ${Zh(A.updatedAt)}`,group:"Conversations",icon:yv,keywords:A.messages.filter(L=>L.role==="user").map(L=>L.content).join(" ").slice(0,1e3),action:()=>{We.getState().setActive(A.id),M()}})),R=m.filter(A=>A.type==="file").slice(0,1500).map(A=>({id:`file-${A.path}`,label:A.name,hint:A.path,group:"Workspace files",icon:Na,keywords:A.path,action:()=>{Be.getState().setActiveFile(A.path),s(!0),M()}}));return[...I,...F,...R]},[p,m,u,d,a,i,s,o]),_=q.useMemo(()=>{const C=g.trim().toLowerCase(),M=C?40:18;if(!C){const I=new Set([...p].sort((F,R)=>R.updatedAt-F.updatedAt).slice(0,2).map(F=>`chat-${F.id}`));return N.filter(F=>F.group!=="Conversations"||I.has(F.id)).filter((F,R,A)=>A.findIndex(L=>L.id===F.id)===R).slice(0,M)}return N.filter(I=>`${I.label} ${I.hint??""} ${I.keywords??""} ${I.group}`.toLowerCase().includes(C)).slice(0,M)},[N,g,p]);if(q.useEffect(()=>{v(0)},[g]),q.useEffect(()=>{if(!e)return;document.querySelector(`[data-palette-index="${b}"]`)?.scrollIntoView({block:"nearest"})},[b,e]),q.useEffect(()=>{b>_.length-1&&v(Math.max(0,_.length-1))},[_.length,b]),!e)return null;const S=C=>{const M=_[C];M&&M.action()};return Ao.createPortal(c.jsxs("div",{className:"fixed inset-0 z-[90] flex items-start justify-center px-3 pt-[10vh] sm:pt-[14vh]",children:[c.jsx("button",{type:"button","aria-label":"Close command palette",tabIndex:-1,className:"absolute inset-0 cursor-default bg-ink/20 backdrop-blur-[2px] dark:bg-black/45",onClick:()=>i(!1)}),c.jsxs("div",{role:"dialog","aria-modal":"true","aria-label":"Search and commands",className:"modal-panel relative flex max-h-[min(72dvh,560px)] w-full max-w-[560px] flex-col overflow-hidden rounded-2xl border border-line surface-lift shadow-float",children:[c.jsxs("div",{className:"flex h-12 shrink-0 items-center gap-2.5 border-b border-line px-3.5",children:[c.jsx(ll,{size:15,className:"shrink-0 text-faint"}),c.jsx("input",{ref:y,value:g,onChange:C=>x(C.target.value),onKeyDown:C=>{C.key==="ArrowDown"?(C.preventDefault(),_.length>0&&v(M=>Math.min(M+1,_.length-1))):C.key==="ArrowUp"?(C.preventDefault(),v(M=>Math.max(M-1,0))):C.key==="Enter"?(C.preventDefault(),S(b)):C.key==="Escape"&&i(!1)},placeholder:"Search chats, files, settings, actions…",className:"h-full min-w-0 flex-1 bg-transparent text-[13px] text-ink outline-none placeholder:text-faint",role:"combobox","aria-expanded":"true","aria-controls":"palette-results","aria-activedescendant":_[b]?`palette-${_[b].id}`:void 0}),c.jsx("kbd",{className:"hidden rounded border border-line bg-raised px-1.5 py-0.5 text-[9px] text-faint sm:block",children:"Esc"})]}),c.jsxs("div",{id:"palette-results",role:"listbox",className:"thin-scroll min-h-0 flex-1 overflow-y-auto p-1.5",children:[_.length===0&&c.jsxs("div",{className:"px-4 py-10 text-center",children:[c.jsx("p",{className:"text-[12px] font-medium text-muted",children:"No matches"}),c.jsx("p",{className:"mt-1 text-[10.5px] text-faint",children:"Try a chat title, a file name or “deploy”."})]}),_.map((C,M)=>{const I=C.icon,F=M===0||_[M-1].group!==C.group;return c.jsxs(q.Fragment,{children:[F&&c.jsx("p",{className:"px-2 pb-1 pt-2 text-[9.5px] font-medium uppercase tracking-[0.08em] text-faint",children:C.group}),c.jsxs("button",{type:"button",id:`palette-${C.id}`,"data-palette-index":M,role:"option","aria-selected":b===M,onMouseMove:()=>v(M),onClick:()=>S(M),className:pe("flex w-full items-center gap-2.5 rounded-lg px-2 py-2 text-left transition-colors",b===M?"bg-raised":"hover:bg-raised/60"),children:[c.jsx("span",{className:pe("flex h-6 w-6 shrink-0 items-center justify-center rounded-md border border-line bg-panel",b===M?"text-accent":"text-muted"),children:c.jsx(I,{size:12})}),c.jsxs("span",{className:"min-w-0 flex-1",children:[c.jsx("span",{className:"block truncate text-[11.5px] font-medium text-ink",children:C.label}),C.hint&&c.jsx("span",{className:"mt-0.5 block truncate text-[9.5px] text-faint",children:C.hint})]}),c.jsx(bS,{size:11,className:pe("shrink-0 text-faint transition-opacity",b===M?"opacity-100":"opacity-0")})]})]},C.id)})]}),c.jsxs("div",{className:"flex h-8 shrink-0 items-center justify-between border-t border-line bg-raised/30 px-3 text-[9px] text-faint",children:[c.jsxs("span",{className:"flex items-center gap-2",children:[c.jsxs("span",{children:[c.jsx("kbd",{className:"rounded border border-line bg-panel px-1",children:"↑"})," ",c.jsx("kbd",{className:"rounded border border-line bg-panel px-1",children:"↓"})," navigate"]}),c.jsxs("span",{children:[c.jsx("kbd",{className:"rounded border border-line bg-panel px-1",children:"↵"})," open"]})]}),c.jsx("span",{children:"OpenSol"})]})]})]}),document.body)}const ov=["Waking the local daemon","Unlocking your keys","Loading workspace","Almost there"],sI=["M32 7v8","M32 49v8","M7 32h8","M49 32h8"],lI=["M14.3 14.3l5.5 5.5","M44.2 44.2l5.5 5.5","M14.3 49.7l5.5-5.5","M44.2 19.8l5.5-5.5"];function oI({size:e=64}){return c.jsxs("div",{className:"relative",style:{width:e*1.7,height:e*1.7},children:[c.jsx("span",{className:"absolute inset-0 m-auto animate-ping rounded-full bg-accent/20",style:{width:e*.7,height:e*.7}}),c.jsx("span",{className:"absolute inset-0 m-auto rounded-full bg-accent/10 blur-2xl",style:{width:e*1.4,height:e*1.4}}),c.jsxs("svg",{viewBox:"0 0 64 64",width:e,height:e,fill:"none",className:"splash-sun absolute inset-0 m-auto text-accent",children:[c.jsx("circle",{className:"core",cx:"32",cy:"32",r:"12",fill:"currentColor"}),c.jsxs("g",{className:"rays",stroke:"currentColor",strokeWidth:"4.4",strokeLinecap:"round",children:[sI.map((i,a)=>c.jsx("path",{d:i,className:"ray",pathLength:8,style:{animationDelay:`${.35+a*.07}s`}},i)),lI.map((i,a)=>c.jsx("path",{d:i,className:"ray",pathLength:8,opacity:.55,style:{animationDelay:`${.65+a*.07}s`}},i))]})]})]})}function cI({phase:e,error:i,leaving:a,onRetry:s}){const[o,u]=q.useState(0);return q.useEffect(()=>{if(e==="error")return;const d=window.setInterval(()=>u(p=>Math.min(ov.length-1,p+1)),650);return()=>window.clearInterval(d)},[e]),c.jsxs("div",{className:pe("splash",a&&"is-leaving"),role:"status","aria-live":"polite",children:[c.jsx("div",{className:"hero-wash pointer-events-none absolute inset-0","aria-hidden":"true"}),c.jsxs("div",{className:"relative flex w-full max-w-[400px] flex-col items-center px-6 text-center",children:[c.jsx(oI,{}),c.jsx("h1",{className:"splash-word -mt-1 text-[26px] font-semibold leading-none tracking-[-0.04em] text-ink","aria-label":"OpenSol",children:"OpenSol".split("").map((d,p)=>c.jsx("span",{style:{animationDelay:`${.5+p*.05}s`},className:p>=4?"text-accent":void 0,children:d},p))}),c.jsx("p",{className:"mt-2 animate-fade text-[11px] font-medium uppercase tracking-[0.22em] text-faint [animation-delay:1s]",children:"by OpenSoft"}),e==="error"?c.jsxs("div",{className:"mt-8 w-full animate-rise",children:[c.jsxs("div",{className:"w-full rounded-xl border border-danger/25 bg-danger/[0.05] px-4 py-3 text-left",children:[c.jsxs("p",{className:"flex items-center gap-1.5 text-[12.5px] font-medium text-ink",children:[c.jsx(Fu,{size:14,className:"text-danger"}),"The local daemon did not answer"]}),c.jsx("p",{className:"mt-1.5 whitespace-pre-wrap break-words text-[11.5px] leading-relaxed text-muted",children:i})]}),c.jsxs("button",{type:"button",onClick:s,className:"mt-4 inline-flex h-9 items-center gap-1.5 rounded-lg bg-ink px-4 text-[12.5px] font-medium text-panel transition-all hover:opacity-85 active:scale-95",children:[c.jsx(Wi,{size:13}),"Try again"]}),c.jsxs("p",{className:"mt-3 text-[11px] leading-relaxed text-faint",children:["Start OpenSol with ",c.jsx("code",{className:"rounded bg-raised px-1 py-0.5 font-mono text-[10.5px]",children:"npm start"})," in the OpenSol folder, then reload this page."]})]}):c.jsxs("div",{className:"mt-9 flex animate-fade flex-col items-center gap-3 [animation-delay:0.8s]",children:[c.jsx("div",{className:"loading-bar h-[2px] w-32 rounded-full"}),c.jsxs("p",{className:"animate-rise text-[12px] text-muted",children:[ov[o],"…"]},o)]}),c.jsx("div",{className:"mt-12 animate-fade [animation-delay:1.2s]",children:c.jsx(CO,{})})]})]})}const uI=1600;function dI(){const e=bu(b=>b.phase),i=bu(b=>b.error),a=bu(b=>b.boot),s=Re(b=>b.theme),o=Re(b=>b.chatFontSize),u=be(b=>b.mobileSidebarOpen),d=be(b=>b.setMobileSidebarOpen),p=be(b=>b.setPaletteOpen);nA();const[m,g]=q.useState("show");q.useEffect(()=>{if(e!=="ready"||m!=="show")return;const b=bu.getState().startedAt||Date.now(),v=Math.max(0,uI-(Date.now()-b)),y=window.setTimeout(()=>g("leaving"),v);return()=>window.clearTimeout(y)},[e,m]),q.useEffect(()=>{if(m!=="leaving")return;const b=window.setTimeout(()=>g("gone"),520);return()=>window.clearTimeout(b)},[m]),q.useEffect(()=>{a()},[a]),q.useEffect(()=>{e==="ready"&&Cv().then(b=>I6(b.plugins)).catch(()=>{})},[e]),q.useEffect(()=>{const b=document.documentElement,v=window.matchMedia("(prefers-color-scheme: dark)"),y=()=>{const k=Vv(s,v.matches);b.dataset.theme=k,b.classList.toggle("dark",zh(s,v.matches)),document.querySelector('meta[name="theme-color"]')?.setAttribute("content",zh(s,v.matches)?"#141413":"#ffffff");try{localStorage.setItem("opensol.theme",s)}catch{}};if(y(),s==="system")return v.addEventListener("change",y),()=>v.removeEventListener("change",y)},[s]),q.useEffect(()=>{document.documentElement.style.setProperty("--chat-font-size",`${o}px`)},[o]),q.useEffect(()=>{const b=v=>{const y=v.metaKey||v.ctrlKey,k=v.key.toLowerCase();if(y&&k==="k"){v.preventDefault(),p(!be.getState().paletteOpen);return}if(y&&!v.shiftKey&&!v.altKey){if(k==="b"){v.preventDefault(),be.getState().toggleSidebar();return}if(k===","){v.preventDefault(),be.getState().openSettings("general");return}if(k==="."){v.preventDefault();const N=be.getState();N.setWorkspaceOpen(!N.workspaceOpen);return}}v.key==="Escape"&&be.getState().mobileSidebarOpen&&d(!1)};return window.addEventListener("keydown",b),()=>window.removeEventListener("keydown",b)},[d,p]);const x=e==="ready";return c.jsxs("div",{className:"flex h-dvh min-h-0 overflow-hidden bg-canvas text-ink",children:[x&&c.jsxs(c.Fragment,{children:[c.jsx(OO,{}),u&&c.jsx("button",{type:"button","aria-label":"Close sidebar",onClick:()=>d(!1),className:"modal-scrim fixed inset-0 z-40 cursor-default bg-black/30 backdrop-blur-[2px] lg:hidden"}),c.jsxs("div",{className:"relative flex min-h-0 min-w-0 flex-1 bg-panel lg:my-1.5 lg:mr-1.5 lg:overflow-hidden lg:rounded-xl lg:border lg:border-line lg:shadow-pill",children:[c.jsx(GL,{}),c.jsx(QL,{})]}),c.jsx(iI,{}),c.jsx(aI,{}),c.jsx(rI,{}),c.jsx(KO,{})]}),c.jsx(YO,{}),m!=="gone"&&c.jsx(cI,{phase:e,error:i,leaving:m==="leaving",onRetry:()=>{a(!0)}})]})}class fI extends q.Component{state={error:null,copied:!1};static getDerivedStateFromError(i){return{error:i,copied:!1}}componentDidCatch(i,a){console.error("[maxcode] render error",i,a.componentStack)}details(){const{error:i}=this.state;return`${i?.name}: ${i?.message}
|
|
300
|
+
|
|
301
|
+
${i?.stack??""}`}copy=async()=>{try{await navigator.clipboard.writeText(this.details()),this.setState({copied:!0})}catch{}};render(){return this.state.error?c.jsx("div",{className:"flex h-dvh items-center justify-center bg-panel px-5 text-ink",children:c.jsxs("div",{className:"w-full max-w-[460px]",children:[c.jsx(ol,{size:34}),c.jsx("h1",{className:"mt-4 font-display text-[28px] font-normal tracking-[-0.02em]",children:"Something broke on this screen"}),c.jsx("p",{className:"mt-2 text-[14px] leading-relaxed text-muted",children:"Your conversations are saved on this computer. Try the screen again, or reload the app."}),c.jsx("pre",{className:"thin-scroll mt-4 max-h-40 overflow-auto rounded-xl border border-line bg-canvas p-3 font-mono text-[11.5px] leading-relaxed text-muted",children:this.state.error.message}),c.jsxs("div",{className:"mt-5 flex flex-wrap items-center gap-2",children:[c.jsx("button",{type:"button",onClick:()=>this.setState({error:null}),className:"inline-flex h-9 items-center rounded-full bg-accent px-4 text-[13px] font-medium text-on-accent transition hover:brightness-110",children:"Try again"}),c.jsx("button",{type:"button",onClick:()=>window.location.reload(),className:"inline-flex h-9 items-center rounded-full border border-line px-4 text-[13px] font-medium text-ink transition-colors hover:bg-raised",children:"Reload app"}),c.jsx("button",{type:"button",onClick:()=>{this.copy()},className:"inline-flex h-9 items-center rounded-full px-3 text-[13px] text-muted transition-colors hover:text-ink",children:this.state.copied?"Copied":"Copy details"})]})]})}):this.props.children}}const bE=document.getElementById("root");if(!bE)throw new Error("Root element not found.");aS.createRoot(bE).render(c.jsx(q.StrictMode,{children:c.jsx(fI,{children:c.jsx(dI,{})})}));
|