@tea-agent/loop-agent 0.24.4-beta.0 → 0.24.4
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/AGENTS.md +12 -4
- package/CHANGELOG.md +21 -1
- package/dist/application/dag/generate-task-dag.js +8 -5
- package/dist/commands/init.js +3 -3
- package/dist/task/task-demand-routing.js +14 -27
- package/dist/worker/console/operator-actions.js +135 -24
- package/dist/worker/console/static/assets/index-CSRIhuzh.js +29 -0
- package/dist/worker/console/static/assets/index-Yyn3ynVv.css +1 -0
- package/dist/worker/console/static/index.html +2 -2
- package/dist/worker/console/static-src/prd-file-import.js +218 -0
- package/dist/workflows/dag/backend-test-markdown-workflow.js +2 -2
- package/dist/workflows/dag/init-hybrid.js +8 -9
- package/dist/workflows/dag/l5-report-metrics.js +0 -3
- package/docs/architecture/evolution.md +1 -1
- package/docs/architecture/system-overview.md +1 -1
- package/docs/operations/local-development-environment.md +19 -0
- package/docs/templates/backend-test-dag.json +2 -2
- package/docs/templates/backend-test-dag.retrospect.prompt.md +0 -3
- package/harness.json +1 -1
- package/package.json +1 -1
- package/skills/loop-agent/references/command-reference.md +2 -2
- package/skills/loop-agent/references/hybrid-dag.md +2 -2
- package/dist/worker/console/static/assets/index-Cv68Ge5n.js +0 -27
- package/dist/worker/console/static/assets/index-Dp_2sKGk.css +0 -1
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
(function(){const o=document.createElement("link").relList;if(o&&o.supports&&o.supports("modulepreload"))return;for(const S of document.querySelectorAll('link[rel="modulepreload"]'))d(S);new MutationObserver(S=>{for(const R of S)if(R.type==="childList")for(const z of R.addedNodes)z.tagName==="LINK"&&z.rel==="modulepreload"&&d(z)}).observe(document,{childList:!0,subtree:!0});function m(S){const R={};return S.integrity&&(R.integrity=S.integrity),S.referrerPolicy&&(R.referrerPolicy=S.referrerPolicy),S.crossOrigin==="use-credentials"?R.credentials="include":S.crossOrigin==="anonymous"?R.credentials="omit":R.credentials="same-origin",R}function d(S){if(S.ep)return;S.ep=!0;const R=m(S);fetch(S.href,R)}})();var co={exports:{}},Zi={};var sm;function Hv(){if(sm)return Zi;sm=1;var c=Symbol.for("react.transitional.element"),o=Symbol.for("react.fragment");function m(d,S,R){var z=null;if(R!==void 0&&(z=""+R),S.key!==void 0&&(z=""+S.key),"key"in S){R={};for(var X in S)X!=="key"&&(R[X]=S[X])}else R=S;return S=R.ref,{$$typeof:c,type:d,key:z,ref:S!==void 0?S:null,props:R}}return Zi.Fragment=o,Zi.jsx=m,Zi.jsxs=m,Zi}var um;function Lv(){return um||(um=1,co.exports=Hv()),co.exports}var s=Lv(),oo={exports:{}},de={};var cm;function qv(){if(cm)return de;cm=1;var c=Symbol.for("react.transitional.element"),o=Symbol.for("react.portal"),m=Symbol.for("react.fragment"),d=Symbol.for("react.strict_mode"),S=Symbol.for("react.profiler"),R=Symbol.for("react.consumer"),z=Symbol.for("react.context"),X=Symbol.for("react.forward_ref"),G=Symbol.for("react.suspense"),O=Symbol.for("react.memo"),V=Symbol.for("react.lazy"),B=Symbol.for("react.activity"),ee=Symbol.iterator;function L(p){return p===null||typeof p!="object"?null:(p=ee&&p[ee]||p["@@iterator"],typeof p=="function"?p:null)}var le={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},se=Object.assign,et={};function oe(p,E,q){this.props=p,this.context=E,this.refs=et,this.updater=q||le}oe.prototype.isReactComponent={},oe.prototype.setState=function(p,E){if(typeof p!="object"&&typeof p!="function"&&p!=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,p,E,"setState")},oe.prototype.forceUpdate=function(p){this.updater.enqueueForceUpdate(this,p,"forceUpdate")};function _e(){}_e.prototype=oe.prototype;function Me(p,E,q){this.props=p,this.context=E,this.refs=et,this.updater=q||le}var St=Me.prototype=new _e;St.constructor=Me,se(St,oe.prototype),St.isPureReactComponent=!0;var ot=Array.isArray;function $e(){}var fe={H:null,A:null,T:null,S:null},Ne=Object.prototype.hasOwnProperty;function xt(p,E,q){var I=q.ref;return{$$typeof:c,type:p,key:E,ref:I!==void 0?I:null,props:q}}function rt(p,E){return xt(p.type,E,p.props)}function dt(p){return typeof p=="object"&&p!==null&&p.$$typeof===c}function ft(p){var E={"=":"=0",":":"=2"};return"$"+p.replace(/[=:]/g,function(q){return E[q]})}var Ft=/\/+/g;function nt(p,E){return typeof p=="object"&&p!==null&&p.key!=null?ft(""+p.key):E.toString(36)}function _t(p){switch(p.status){case"fulfilled":return p.value;case"rejected":throw p.reason;default:switch(typeof p.status=="string"?p.then($e,$e):(p.status="pending",p.then(function(E){p.status==="pending"&&(p.status="fulfilled",p.value=E)},function(E){p.status==="pending"&&(p.status="rejected",p.reason=E)})),p.status){case"fulfilled":return p.value;case"rejected":throw p.reason}}throw p}function D(p,E,q,I,ae){var he=typeof p;(he==="undefined"||he==="boolean")&&(p=null);var ge=!1;if(p===null)ge=!0;else switch(he){case"bigint":case"string":case"number":ge=!0;break;case"object":switch(p.$$typeof){case c:case o:ge=!0;break;case V:return ge=p._init,D(ge(p._payload),E,q,I,ae)}}if(ge)return ae=ae(p),ge=I===""?"."+nt(p,0):I,ot(ae)?(q="",ge!=null&&(q=ge.replace(Ft,"$&/")+"/"),D(ae,E,q,"",function(gl){return gl})):ae!=null&&(dt(ae)&&(ae=rt(ae,q+(ae.key==null||p&&p.key===ae.key?"":(""+ae.key).replace(Ft,"$&/")+"/")+ge)),E.push(ae)),1;ge=0;var tt=I===""?".":I+":";if(ot(p))for(var Ae=0;Ae<p.length;Ae++)I=p[Ae],he=tt+nt(I,Ae),ge+=D(I,E,q,he,ae);else if(Ae=L(p),typeof Ae=="function")for(p=Ae.call(p),Ae=0;!(I=p.next()).done;)I=I.value,he=tt+nt(I,Ae++),ge+=D(I,E,q,he,ae);else if(he==="object"){if(typeof p.then=="function")return D(_t(p),E,q,I,ae);throw E=String(p),Error("Objects are not valid as a React child (found: "+(E==="[object Object]"?"object with keys {"+Object.keys(p).join(", ")+"}":E)+"). If you meant to render a collection of children, use an array instead.")}return ge}function Q(p,E,q){if(p==null)return p;var I=[],ae=0;return D(p,I,"","",function(he){return E.call(q,he,ae++)}),I}function ne(p){if(p._status===-1){var E=p._result;E=E(),E.then(function(q){(p._status===0||p._status===-1)&&(p._status=1,p._result=q)},function(q){(p._status===0||p._status===-1)&&(p._status=2,p._result=q)}),p._status===-1&&(p._status=0,p._result=E)}if(p._status===1)return p._result.default;throw p._result}var Te=typeof reportError=="function"?reportError:function(p){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var E=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof p=="object"&&p!==null&&typeof p.message=="string"?String(p.message):String(p),error:p});if(!window.dispatchEvent(E))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",p);return}console.error(p)},Ee={map:Q,forEach:function(p,E,q){Q(p,function(){E.apply(this,arguments)},q)},count:function(p){var E=0;return Q(p,function(){E++}),E},toArray:function(p){return Q(p,function(E){return E})||[]},only:function(p){if(!dt(p))throw Error("React.Children.only expected to receive a single React element child.");return p}};return de.Activity=B,de.Children=Ee,de.Component=oe,de.Fragment=m,de.Profiler=S,de.PureComponent=Me,de.StrictMode=d,de.Suspense=G,de.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=fe,de.__COMPILER_RUNTIME={__proto__:null,c:function(p){return fe.H.useMemoCache(p)}},de.cache=function(p){return function(){return p.apply(null,arguments)}},de.cacheSignal=function(){return null},de.cloneElement=function(p,E,q){if(p==null)throw Error("The argument must be a React element, but you passed "+p+".");var I=se({},p.props),ae=p.key;if(E!=null)for(he in E.key!==void 0&&(ae=""+E.key),E)!Ne.call(E,he)||he==="key"||he==="__self"||he==="__source"||he==="ref"&&E.ref===void 0||(I[he]=E[he]);var he=arguments.length-2;if(he===1)I.children=q;else if(1<he){for(var ge=Array(he),tt=0;tt<he;tt++)ge[tt]=arguments[tt+2];I.children=ge}return xt(p.type,ae,I)},de.createContext=function(p){return p={$$typeof:z,_currentValue:p,_currentValue2:p,_threadCount:0,Provider:null,Consumer:null},p.Provider=p,p.Consumer={$$typeof:R,_context:p},p},de.createElement=function(p,E,q){var I,ae={},he=null;if(E!=null)for(I in E.key!==void 0&&(he=""+E.key),E)Ne.call(E,I)&&I!=="key"&&I!=="__self"&&I!=="__source"&&(ae[I]=E[I]);var ge=arguments.length-2;if(ge===1)ae.children=q;else if(1<ge){for(var tt=Array(ge),Ae=0;Ae<ge;Ae++)tt[Ae]=arguments[Ae+2];ae.children=tt}if(p&&p.defaultProps)for(I in ge=p.defaultProps,ge)ae[I]===void 0&&(ae[I]=ge[I]);return xt(p,he,ae)},de.createRef=function(){return{current:null}},de.forwardRef=function(p){return{$$typeof:X,render:p}},de.isValidElement=dt,de.lazy=function(p){return{$$typeof:V,_payload:{_status:-1,_result:p},_init:ne}},de.memo=function(p,E){return{$$typeof:O,type:p,compare:E===void 0?null:E}},de.startTransition=function(p){var E=fe.T,q={};fe.T=q;try{var I=p(),ae=fe.S;ae!==null&&ae(q,I),typeof I=="object"&&I!==null&&typeof I.then=="function"&&I.then($e,Te)}catch(he){Te(he)}finally{E!==null&&q.types!==null&&(E.types=q.types),fe.T=E}},de.unstable_useCacheRefresh=function(){return fe.H.useCacheRefresh()},de.use=function(p){return fe.H.use(p)},de.useActionState=function(p,E,q){return fe.H.useActionState(p,E,q)},de.useCallback=function(p,E){return fe.H.useCallback(p,E)},de.useContext=function(p){return fe.H.useContext(p)},de.useDebugValue=function(){},de.useDeferredValue=function(p,E){return fe.H.useDeferredValue(p,E)},de.useEffect=function(p,E){return fe.H.useEffect(p,E)},de.useEffectEvent=function(p){return fe.H.useEffectEvent(p)},de.useId=function(){return fe.H.useId()},de.useImperativeHandle=function(p,E,q){return fe.H.useImperativeHandle(p,E,q)},de.useInsertionEffect=function(p,E){return fe.H.useInsertionEffect(p,E)},de.useLayoutEffect=function(p,E){return fe.H.useLayoutEffect(p,E)},de.useMemo=function(p,E){return fe.H.useMemo(p,E)},de.useOptimistic=function(p,E){return fe.H.useOptimistic(p,E)},de.useReducer=function(p,E,q){return fe.H.useReducer(p,E,q)},de.useRef=function(p){return fe.H.useRef(p)},de.useState=function(p){return fe.H.useState(p)},de.useSyncExternalStore=function(p,E,q){return fe.H.useSyncExternalStore(p,E,q)},de.useTransition=function(){return fe.H.useTransition()},de.version="19.2.8",de}var om;function Ao(){return om||(om=1,oo.exports=qv()),oo.exports}var y=Ao(),ro={exports:{}},Vi={},fo={exports:{}},mo={};var rm;function Gv(){return rm||(rm=1,(function(c){function o(D,Q){var ne=D.length;D.push(Q);e:for(;0<ne;){var Te=ne-1>>>1,Ee=D[Te];if(0<S(Ee,Q))D[Te]=Q,D[ne]=Ee,ne=Te;else break e}}function m(D){return D.length===0?null:D[0]}function d(D){if(D.length===0)return null;var Q=D[0],ne=D.pop();if(ne!==Q){D[0]=ne;e:for(var Te=0,Ee=D.length,p=Ee>>>1;Te<p;){var E=2*(Te+1)-1,q=D[E],I=E+1,ae=D[I];if(0>S(q,ne))I<Ee&&0>S(ae,q)?(D[Te]=ae,D[I]=ne,Te=I):(D[Te]=q,D[E]=ne,Te=E);else if(I<Ee&&0>S(ae,ne))D[Te]=ae,D[I]=ne,Te=I;else break e}}return Q}function S(D,Q){var ne=D.sortIndex-Q.sortIndex;return ne!==0?ne:D.id-Q.id}if(c.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var R=performance;c.unstable_now=function(){return R.now()}}else{var z=Date,X=z.now();c.unstable_now=function(){return z.now()-X}}var G=[],O=[],V=1,B=null,ee=3,L=!1,le=!1,se=!1,et=!1,oe=typeof setTimeout=="function"?setTimeout:null,_e=typeof clearTimeout=="function"?clearTimeout:null,Me=typeof setImmediate<"u"?setImmediate:null;function St(D){for(var Q=m(O);Q!==null;){if(Q.callback===null)d(O);else if(Q.startTime<=D)d(O),Q.sortIndex=Q.expirationTime,o(G,Q);else break;Q=m(O)}}function ot(D){if(se=!1,St(D),!le)if(m(G)!==null)le=!0,$e||($e=!0,ft());else{var Q=m(O);Q!==null&&_t(ot,Q.startTime-D)}}var $e=!1,fe=-1,Ne=5,xt=-1;function rt(){return et?!0:!(c.unstable_now()-xt<Ne)}function dt(){if(et=!1,$e){var D=c.unstable_now();xt=D;var Q=!0;try{e:{le=!1,se&&(se=!1,_e(fe),fe=-1),L=!0;var ne=ee;try{t:{for(St(D),B=m(G);B!==null&&!(B.expirationTime>D&&rt());){var Te=B.callback;if(typeof Te=="function"){B.callback=null,ee=B.priorityLevel;var Ee=Te(B.expirationTime<=D);if(D=c.unstable_now(),typeof Ee=="function"){B.callback=Ee,St(D),Q=!0;break t}B===m(G)&&d(G),St(D)}else d(G);B=m(G)}if(B!==null)Q=!0;else{var p=m(O);p!==null&&_t(ot,p.startTime-D),Q=!1}}break e}finally{B=null,ee=ne,L=!1}Q=void 0}}finally{Q?ft():$e=!1}}}var ft;if(typeof Me=="function")ft=function(){Me(dt)};else if(typeof MessageChannel<"u"){var Ft=new MessageChannel,nt=Ft.port2;Ft.port1.onmessage=dt,ft=function(){nt.postMessage(null)}}else ft=function(){oe(dt,0)};function _t(D,Q){fe=oe(function(){D(c.unstable_now())},Q)}c.unstable_IdlePriority=5,c.unstable_ImmediatePriority=1,c.unstable_LowPriority=4,c.unstable_NormalPriority=3,c.unstable_Profiling=null,c.unstable_UserBlockingPriority=2,c.unstable_cancelCallback=function(D){D.callback=null},c.unstable_forceFrameRate=function(D){0>D||125<D?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):Ne=0<D?Math.floor(1e3/D):5},c.unstable_getCurrentPriorityLevel=function(){return ee},c.unstable_next=function(D){switch(ee){case 1:case 2:case 3:var Q=3;break;default:Q=ee}var ne=ee;ee=Q;try{return D()}finally{ee=ne}},c.unstable_requestPaint=function(){et=!0},c.unstable_runWithPriority=function(D,Q){switch(D){case 1:case 2:case 3:case 4:case 5:break;default:D=3}var ne=ee;ee=D;try{return Q()}finally{ee=ne}},c.unstable_scheduleCallback=function(D,Q,ne){var Te=c.unstable_now();switch(typeof ne=="object"&&ne!==null?(ne=ne.delay,ne=typeof ne=="number"&&0<ne?Te+ne:Te):ne=Te,D){case 1:var Ee=-1;break;case 2:Ee=250;break;case 5:Ee=1073741823;break;case 4:Ee=1e4;break;default:Ee=5e3}return Ee=ne+Ee,D={id:V++,callback:Q,priorityLevel:D,startTime:ne,expirationTime:Ee,sortIndex:-1},ne>Te?(D.sortIndex=ne,o(O,D),m(G)===null&&D===m(O)&&(se?(_e(fe),fe=-1):se=!0,_t(ot,ne-Te))):(D.sortIndex=Ee,o(G,D),le||L||(le=!0,$e||($e=!0,ft()))),D},c.unstable_shouldYield=rt,c.unstable_wrapCallback=function(D){var Q=ee;return function(){var ne=ee;ee=Q;try{return D.apply(this,arguments)}finally{ee=ne}}}})(mo)),mo}var dm;function Bv(){return dm||(dm=1,fo.exports=Gv()),fo.exports}var ho={exports:{}},Vt={};var fm;function Yv(){if(fm)return Vt;fm=1;var c=Ao();function o(G){var O="https://react.dev/errors/"+G;if(1<arguments.length){O+="?args[]="+encodeURIComponent(arguments[1]);for(var V=2;V<arguments.length;V++)O+="&args[]="+encodeURIComponent(arguments[V])}return"Minified React error #"+G+"; visit "+O+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function m(){}var d={d:{f:m,r:function(){throw Error(o(522))},D:m,C:m,L:m,m,X:m,S:m,M:m},p:0,findDOMNode:null},S=Symbol.for("react.portal");function R(G,O,V){var B=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:S,key:B==null?null:""+B,children:G,containerInfo:O,implementation:V}}var z=c.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function X(G,O){if(G==="font")return"";if(typeof O=="string")return O==="use-credentials"?O:""}return Vt.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=d,Vt.createPortal=function(G,O){var V=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!O||O.nodeType!==1&&O.nodeType!==9&&O.nodeType!==11)throw Error(o(299));return R(G,O,null,V)},Vt.flushSync=function(G){var O=z.T,V=d.p;try{if(z.T=null,d.p=2,G)return G()}finally{z.T=O,d.p=V,d.d.f()}},Vt.preconnect=function(G,O){typeof G=="string"&&(O?(O=O.crossOrigin,O=typeof O=="string"?O==="use-credentials"?O:"":void 0):O=null,d.d.C(G,O))},Vt.prefetchDNS=function(G){typeof G=="string"&&d.d.D(G)},Vt.preinit=function(G,O){if(typeof G=="string"&&O&&typeof O.as=="string"){var V=O.as,B=X(V,O.crossOrigin),ee=typeof O.integrity=="string"?O.integrity:void 0,L=typeof O.fetchPriority=="string"?O.fetchPriority:void 0;V==="style"?d.d.S(G,typeof O.precedence=="string"?O.precedence:void 0,{crossOrigin:B,integrity:ee,fetchPriority:L}):V==="script"&&d.d.X(G,{crossOrigin:B,integrity:ee,fetchPriority:L,nonce:typeof O.nonce=="string"?O.nonce:void 0})}},Vt.preinitModule=function(G,O){if(typeof G=="string")if(typeof O=="object"&&O!==null){if(O.as==null||O.as==="script"){var V=X(O.as,O.crossOrigin);d.d.M(G,{crossOrigin:V,integrity:typeof O.integrity=="string"?O.integrity:void 0,nonce:typeof O.nonce=="string"?O.nonce:void 0})}}else O==null&&d.d.M(G)},Vt.preload=function(G,O){if(typeof G=="string"&&typeof O=="object"&&O!==null&&typeof O.as=="string"){var V=O.as,B=X(V,O.crossOrigin);d.d.L(G,V,{crossOrigin:B,integrity:typeof O.integrity=="string"?O.integrity:void 0,nonce:typeof O.nonce=="string"?O.nonce:void 0,type:typeof O.type=="string"?O.type:void 0,fetchPriority:typeof O.fetchPriority=="string"?O.fetchPriority:void 0,referrerPolicy:typeof O.referrerPolicy=="string"?O.referrerPolicy:void 0,imageSrcSet:typeof O.imageSrcSet=="string"?O.imageSrcSet:void 0,imageSizes:typeof O.imageSizes=="string"?O.imageSizes:void 0,media:typeof O.media=="string"?O.media:void 0})}},Vt.preloadModule=function(G,O){if(typeof G=="string")if(O){var V=X(O.as,O.crossOrigin);d.d.m(G,{as:typeof O.as=="string"&&O.as!=="script"?O.as:void 0,crossOrigin:V,integrity:typeof O.integrity=="string"?O.integrity:void 0})}else d.d.m(G)},Vt.requestFormReset=function(G){d.d.r(G)},Vt.unstable_batchedUpdates=function(G,O){return G(O)},Vt.useFormState=function(G,O,V){return z.H.useFormState(G,O,V)},Vt.useFormStatus=function(){return z.H.useHostTransitionStatus()},Vt.version="19.2.8",Vt}var mm;function Qv(){if(mm)return ho.exports;mm=1;function c(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(c)}catch(o){console.error(o)}}return c(),ho.exports=Yv(),ho.exports}var hm;function Xv(){if(hm)return Vi;hm=1;var c=Bv(),o=Ao(),m=Qv();function d(e){var t="https://react.dev/errors/"+e;if(1<arguments.length){t+="?args[]="+encodeURIComponent(arguments[1]);for(var l=2;l<arguments.length;l++)t+="&args[]="+encodeURIComponent(arguments[l])}return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function S(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function R(e){var t=e,l=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,(t.flags&4098)!==0&&(l=t.return),e=t.return;while(e)}return t.tag===3?l:null}function z(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function X(e){if(e.tag===31){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function G(e){if(R(e)!==e)throw Error(d(188))}function O(e){var t=e.alternate;if(!t){if(t=R(e),t===null)throw Error(d(188));return t!==e?null:e}for(var l=e,n=t;;){var a=l.return;if(a===null)break;var i=a.alternate;if(i===null){if(n=a.return,n!==null){l=n;continue}break}if(a.child===i.child){for(i=a.child;i;){if(i===l)return G(a),e;if(i===n)return G(a),t;i=i.sibling}throw Error(d(188))}if(l.return!==n.return)l=a,n=i;else{for(var u=!1,r=a.child;r;){if(r===l){u=!0,l=a,n=i;break}if(r===n){u=!0,n=a,l=i;break}r=r.sibling}if(!u){for(r=i.child;r;){if(r===l){u=!0,l=i,n=a;break}if(r===n){u=!0,n=i,l=a;break}r=r.sibling}if(!u)throw Error(d(189))}}if(l.alternate!==n)throw Error(d(190))}if(l.tag!==3)throw Error(d(188));return l.stateNode.current===l?e:t}function V(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e;for(e=e.child;e!==null;){if(t=V(e),t!==null)return t;e=e.sibling}return null}var B=Object.assign,ee=Symbol.for("react.element"),L=Symbol.for("react.transitional.element"),le=Symbol.for("react.portal"),se=Symbol.for("react.fragment"),et=Symbol.for("react.strict_mode"),oe=Symbol.for("react.profiler"),_e=Symbol.for("react.consumer"),Me=Symbol.for("react.context"),St=Symbol.for("react.forward_ref"),ot=Symbol.for("react.suspense"),$e=Symbol.for("react.suspense_list"),fe=Symbol.for("react.memo"),Ne=Symbol.for("react.lazy"),xt=Symbol.for("react.activity"),rt=Symbol.for("react.memo_cache_sentinel"),dt=Symbol.iterator;function ft(e){return e===null||typeof e!="object"?null:(e=dt&&e[dt]||e["@@iterator"],typeof e=="function"?e:null)}var Ft=Symbol.for("react.client.reference");function nt(e){if(e==null)return null;if(typeof e=="function")return e.$$typeof===Ft?null:e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case se:return"Fragment";case oe:return"Profiler";case et:return"StrictMode";case ot:return"Suspense";case $e:return"SuspenseList";case xt:return"Activity"}if(typeof e=="object")switch(e.$$typeof){case le:return"Portal";case Me:return e.displayName||"Context";case _e:return(e._context.displayName||"Context")+".Consumer";case St:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case fe:return t=e.displayName||null,t!==null?t:nt(e.type)||"Memo";case Ne:t=e._payload,e=e._init;try{return nt(e(t))}catch{}}return null}var _t=Array.isArray,D=o.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,Q=m.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,ne={pending:!1,data:null,method:null,action:null},Te=[],Ee=-1;function p(e){return{current:e}}function E(e){0>Ee||(e.current=Te[Ee],Te[Ee]=null,Ee--)}function q(e,t){Ee++,Te[Ee]=e.current,e.current=t}var I=p(null),ae=p(null),he=p(null),ge=p(null);function tt(e,t){switch(q(he,t),q(ae,e),q(I,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?Df(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=Df(t),e=zf(t,e);else switch(e){case"svg":e=1;break;case"math":e=2;break;default:e=0}}E(I),q(I,e)}function Ae(){E(I),E(ae),E(he)}function gl(e){e.memoizedState!==null&&q(ge,e);var t=I.current,l=zf(t,e.type);t!==l&&(q(ae,e),q(I,l))}function bl(e){ae.current===e&&(E(I),E(ae)),ge.current===e&&(E(ge),Bi._currentValue=ne)}var ua,Sl;function xl(e){if(ua===void 0)try{throw Error()}catch(l){var t=l.stack.trim().match(/\n( *(at )?)/);ua=t&&t[1]||"",Sl=-1<l.stack.indexOf(`
|
|
2
|
-
at`)?" (<anonymous>)":-1<l.stack.indexOf("@")?"@unknown:0:0":""}return`
|
|
3
|
-
`+ua+e+Sl}var Je=!1;function Mt(e,t){if(!e||Je)return"";Je=!0;var l=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var n={DetermineComponentFrameRoot:function(){try{if(t){var w=function(){throw Error()};if(Object.defineProperty(w.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(w,[])}catch(A){var T=A}Reflect.construct(e,[],w)}else{try{w.call()}catch(A){T=A}e.call(w.prototype)}}else{try{throw Error()}catch(A){T=A}(w=e())&&typeof w.catch=="function"&&w.catch(function(){})}}catch(A){if(A&&T&&typeof A.stack=="string")return[A.stack,T.stack]}return[null,null]}};n.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var a=Object.getOwnPropertyDescriptor(n.DetermineComponentFrameRoot,"name");a&&a.configurable&&Object.defineProperty(n.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"});var i=n.DetermineComponentFrameRoot(),u=i[0],r=i[1];if(u&&r){var v=u.split(`
|
|
4
|
-
`),N=r.split(`
|
|
5
|
-
`);for(a=n=0;n<v.length&&!v[n].includes("DetermineComponentFrameRoot");)n++;for(;a<N.length&&!N[a].includes("DetermineComponentFrameRoot");)a++;if(n===v.length||a===N.length)for(n=v.length-1,a=N.length-1;1<=n&&0<=a&&v[n]!==N[a];)a--;for(;1<=n&&0<=a;n--,a--)if(v[n]!==N[a]){if(n!==1||a!==1)do if(n--,a--,0>a||v[n]!==N[a]){var _=`
|
|
6
|
-
`+v[n].replace(" at new "," at ");return e.displayName&&_.includes("<anonymous>")&&(_=_.replace("<anonymous>",e.displayName)),_}while(1<=n&&0<=a);break}}}finally{Je=!1,Error.prepareStackTrace=l}return(l=e?e.displayName||e.name:"")?xl(l):""}function fn(e,t){switch(e.tag){case 26:case 27:case 5:return xl(e.type);case 16:return xl("Lazy");case 13:return e.child!==t&&t!==null?xl("Suspense Fallback"):xl("Suspense");case 19:return xl("SuspenseList");case 0:case 15:return Mt(e.type,!1);case 11:return Mt(e.type.render,!1);case 1:return Mt(e.type,!0);case 31:return xl("Activity");default:return""}}function mn(e){try{var t="",l=null;do t+=fn(e,l),l=e,e=e.return;while(e);return t}catch(n){return`
|
|
7
|
-
Error generating stack: `+n.message+`
|
|
8
|
-
`+n.stack}}var Kt=Object.prototype.hasOwnProperty,re=c.unstable_scheduleCallback,jl=c.unstable_cancelCallback,Ra=c.unstable_shouldYield,Da=c.unstable_requestPaint,mt=c.unstable_now,Re=c.unstable_getCurrentPriorityLevel,hn=c.unstable_ImmediatePriority,He=c.unstable_UserBlockingPriority,Nl=c.unstable_NormalPriority,it=c.unstable_LowPriority,Yl=c.unstable_IdlePriority,vn=c.log,ol=c.unstable_setDisableYieldValue,Bt=null,K=null;function kt(e){if(typeof vn=="function"&&ol(e),K&&typeof K.setStrictMode=="function")try{K.setStrictMode(Bt,e)}catch{}}var Ct=Math.clz32?Math.clz32:Tl,wn=Math.log,Pl=Math.LN2;function Tl(e){return e>>>=0,e===0?32:31-(wn(e)/Pl|0)|0}var Yt=256,El=262144,en=4194304;function wt(e){var t=e&42;if(t!==0)return t;switch(e&-e){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 e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function Ze(e,t,l){var n=e.pendingLanes;if(n===0)return 0;var a=0,i=e.suspendedLanes,u=e.pingedLanes;e=e.warmLanes;var r=n&134217727;return r!==0?(n=r&~i,n!==0?a=wt(n):(u&=r,u!==0?a=wt(u):l||(l=r&~e,l!==0&&(a=wt(l))))):(r=n&~i,r!==0?a=wt(r):u!==0?a=wt(u):l||(l=n&~e,l!==0&&(a=wt(l)))),a===0?0:t!==0&&t!==a&&(t&i)===0&&(i=a&-a,l=t&-t,i>=l||i===32&&(l&4194048)!==0)?t:a}function Pt(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function Ql(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+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 t+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 Un(){var e=en;return en<<=1,(en&62914560)===0&&(en=4194304),e}function Qt(e){for(var t=[],l=0;31>l;l++)t.push(e);return t}function $t(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function Xl(e,t,l,n,a,i){var u=e.pendingLanes;e.pendingLanes=l,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=l,e.entangledLanes&=l,e.errorRecoveryDisabledLanes&=l,e.shellSuspendCounter=0;var r=e.entanglements,v=e.expirationTimes,N=e.hiddenUpdates;for(l=u&~l;0<l;){var _=31-Ct(l),w=1<<_;r[_]=0,v[_]=-1;var T=N[_];if(T!==null)for(N[_]=null,_=0;_<T.length;_++){var A=T[_];A!==null&&(A.lane&=-536870913)}l&=~w}n!==0&&Zl(e,n,0),i!==0&&a===0&&e.tag!==0&&(e.suspendedLanes|=i&~(u&~t))}function Zl(e,t,l){e.pendingLanes|=t,e.suspendedLanes&=~t;var n=31-Ct(t);e.entangledLanes|=t,e.entanglements[n]=e.entanglements[n]|1073741824|l&261930}function Ie(e,t){var l=e.entangledLanes|=t;for(e=e.entanglements;l;){var n=31-Ct(l),a=1<<n;a&t|e[n]&t&&(e[n]|=t),l&=~a}}function Jt(e,t){var l=t&-t;return l=(l&42)!==0?1:ht(l),(l&(e.suspendedLanes|t))!==0?0:l}function ht(e){switch(e){case 2:e=1;break;case 8:e=4;break;case 32:e=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:e=128;break;case 268435456:e=134217728;break;default:e=0}return e}function el(e){return e&=-e,2<e?8<e?(e&134217727)!==0?32:268435456:8:2}function Dt(){var e=Q.p;return e!==0?e:(e=window.event,e===void 0?32:Pf(e.type))}function tn(e,t){var l=Q.p;try{return Q.p=e,t()}finally{Q.p=l}}var at=Math.random().toString(36).slice(2),ue="__reactFiber$"+at,We="__reactProps$"+at,Cl="__reactContainer$"+at,Hn="__reactEvents$"+at,Al="__reactListeners$"+at,ln="__reactHandles$"+at,Rl="__reactResources$"+at,rl="__reactMarker$"+at;function nn(e){delete e[ue],delete e[We],delete e[Hn],delete e[Al],delete e[ln]}function It(e){var t=e[ue];if(t)return t;for(var l=e.parentNode;l;){if(t=l[Cl]||l[ue]){if(l=t.alternate,t.child!==null||l!==null&&l.child!==null)for(e=Hf(e);e!==null;){if(l=e[ue])return l;e=Hf(e)}return t}e=l,l=e.parentNode}return null}function tl(e){if(e=e[ue]||e[Cl]){var t=e.tag;if(t===5||t===6||t===13||t===31||t===26||t===27||t===3)return e}return null}function At(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e.stateNode;throw Error(d(33))}function Ut(e){var t=e[Rl];return t||(t=e[Rl]={hoistableStyles:new Map,hoistableScripts:new Map}),t}function Be(e){e[rl]=!0}var Vl=new Set,Dl={};function ll(e,t){zl(e,t),zl(e+"Capture",t)}function zl(e,t){for(Dl[e]=t,e=0;e<t.length;e++)Vl.add(t[e])}var ca=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]*$"),Ln={},ye={};function yn(e){return Kt.call(ye,e)?!0:Kt.call(Ln,e)?!1:ca.test(e)?ye[e]=!0:(Ln[e]=!0,!1)}function Ve(e,t,l){if(yn(t))if(l===null)e.removeAttribute(t);else{switch(typeof l){case"undefined":case"function":case"symbol":e.removeAttribute(t);return;case"boolean":var n=t.toLowerCase().slice(0,5);if(n!=="data-"&&n!=="aria-"){e.removeAttribute(t);return}}e.setAttribute(t,""+l)}}function an(e,t,l){if(l===null)e.removeAttribute(t);else{switch(typeof l){case"undefined":case"function":case"symbol":case"boolean":e.removeAttribute(t);return}e.setAttribute(t,""+l)}}function Xt(e,t,l,n){if(n===null)e.removeAttribute(l);else{switch(typeof n){case"undefined":case"function":case"symbol":case"boolean":e.removeAttribute(l);return}e.setAttributeNS(t,l,""+n)}}function Zt(e){switch(typeof e){case"bigint":case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function pn(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function gn(e,t,l){var n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t);if(!e.hasOwnProperty(t)&&typeof n<"u"&&typeof n.get=="function"&&typeof n.set=="function"){var a=n.get,i=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return a.call(this)},set:function(u){l=""+u,i.call(this,u)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return l},setValue:function(u){l=""+u},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function Ol(e){if(!e._valueTracker){var t=pn(e)?"checked":"value";e._valueTracker=gn(e,t,""+e[t])}}function za(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var l=t.getValue(),n="";return e&&(n=pn(e)?e.checked?"true":"false":e.value),e=n,e!==l?(t.setValue(e),!0):!1}function Kl(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}var sn=/[\n"\\]/g;function zt(e){return e.replace(sn,function(t){return"\\"+t.charCodeAt(0).toString(16)+" "})}function $l(e,t,l,n,a,i,u,r){e.name="",u!=null&&typeof u!="function"&&typeof u!="symbol"&&typeof u!="boolean"?e.type=u:e.removeAttribute("type"),t!=null?u==="number"?(t===0&&e.value===""||e.value!=t)&&(e.value=""+Zt(t)):e.value!==""+Zt(t)&&(e.value=""+Zt(t)):u!=="submit"&&u!=="reset"||e.removeAttribute("value"),t!=null?vt(e,u,Zt(t)):l!=null?vt(e,u,Zt(l)):n!=null&&e.removeAttribute("value"),a==null&&i!=null&&(e.defaultChecked=!!i),a!=null&&(e.checked=a&&typeof a!="function"&&typeof a!="symbol"),r!=null&&typeof r!="function"&&typeof r!="symbol"&&typeof r!="boolean"?e.name=""+Zt(r):e.removeAttribute("name")}function bn(e,t,l,n,a,i,u,r){if(i!=null&&typeof i!="function"&&typeof i!="symbol"&&typeof i!="boolean"&&(e.type=i),t!=null||l!=null){if(!(i!=="submit"&&i!=="reset"||t!=null)){Ol(e);return}l=l!=null?""+Zt(l):"",t=t!=null?""+Zt(t):l,r||t===e.value||(e.value=t),e.defaultValue=t}n=n??a,n=typeof n!="function"&&typeof n!="symbol"&&!!n,e.checked=r?e.checked:!!n,e.defaultChecked=!!n,u!=null&&typeof u!="function"&&typeof u!="symbol"&&typeof u!="boolean"&&(e.name=u),Ol(e)}function vt(e,t,l){t==="number"&&Kl(e.ownerDocument)===e||e.defaultValue===""+l||(e.defaultValue=""+l)}function f(e,t,l,n){if(e=e.options,t){t={};for(var a=0;a<l.length;a++)t["$"+l[a]]=!0;for(l=0;l<e.length;l++)a=t.hasOwnProperty("$"+e[l].value),e[l].selected!==a&&(e[l].selected=a),a&&n&&(e[l].defaultSelected=!0)}else{for(l=""+Zt(l),t=null,a=0;a<e.length;a++){if(e[a].value===l){e[a].selected=!0,n&&(e[a].defaultSelected=!0);return}t!==null||e[a].disabled||(t=e[a])}t!==null&&(t.selected=!0)}}function x(e,t,l){if(t!=null&&(t=""+Zt(t),t!==e.value&&(e.value=t),l==null)){e.defaultValue!==t&&(e.defaultValue=t);return}e.defaultValue=l!=null?""+Zt(l):""}function C(e,t,l,n){if(t==null){if(n!=null){if(l!=null)throw Error(d(92));if(_t(n)){if(1<n.length)throw Error(d(93));n=n[0]}l=n}l==null&&(l=""),t=l}l=Zt(t),e.defaultValue=l,n=e.textContent,n===l&&n!==""&&n!==null&&(e.value=n),Ol(e)}function k(e,t){if(t){var l=e.firstChild;if(l&&l===e.lastChild&&l.nodeType===3){l.nodeValue=t;return}}e.textContent=t}var $=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 H(e,t,l){var n=t.indexOf("--")===0;l==null||typeof l=="boolean"||l===""?n?e.setProperty(t,""):t==="float"?e.cssFloat="":e[t]="":n?e.setProperty(t,l):typeof l!="number"||l===0||$.has(t)?t==="float"?e.cssFloat=l:e[t]=(""+l).trim():e[t]=l+"px"}function ke(e,t,l){if(t!=null&&typeof t!="object")throw Error(d(62));if(e=e.style,l!=null){for(var n in l)!l.hasOwnProperty(n)||t!=null&&t.hasOwnProperty(n)||(n.indexOf("--")===0?e.setProperty(n,""):n==="float"?e.cssFloat="":e[n]="");for(var a in t)n=t[a],t.hasOwnProperty(a)&&l[a]!==n&&H(e,a,n)}else for(var i in t)t.hasOwnProperty(i)&&H(e,i,t[i])}function st(e){if(e.indexOf("-")===-1)return!1;switch(e){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 J=new Map([["acceptCharset","accept-charset"],["htmlFor","for"],["httpEquiv","http-equiv"],["crossOrigin","crossorigin"],["accentHeight","accent-height"],["alignmentBaseline","alignment-baseline"],["arabicForm","arabic-form"],["baselineShift","baseline-shift"],["capHeight","cap-height"],["clipPath","clip-path"],["clipRule","clip-rule"],["colorInterpolation","color-interpolation"],["colorInterpolationFilters","color-interpolation-filters"],["colorProfile","color-profile"],["colorRendering","color-rendering"],["dominantBaseline","dominant-baseline"],["enableBackground","enable-background"],["fillOpacity","fill-opacity"],["fillRule","fill-rule"],["floodColor","flood-color"],["floodOpacity","flood-opacity"],["fontFamily","font-family"],["fontSize","font-size"],["fontSizeAdjust","font-size-adjust"],["fontStretch","font-stretch"],["fontStyle","font-style"],["fontVariant","font-variant"],["fontWeight","font-weight"],["glyphName","glyph-name"],["glyphOrientationHorizontal","glyph-orientation-horizontal"],["glyphOrientationVertical","glyph-orientation-vertical"],["horizAdvX","horiz-adv-x"],["horizOriginX","horiz-origin-x"],["imageRendering","image-rendering"],["letterSpacing","letter-spacing"],["lightingColor","lighting-color"],["markerEnd","marker-end"],["markerMid","marker-mid"],["markerStart","marker-start"],["overlinePosition","overline-position"],["overlineThickness","overline-thickness"],["paintOrder","paint-order"],["panose-1","panose-1"],["pointerEvents","pointer-events"],["renderingIntent","rendering-intent"],["shapeRendering","shape-rendering"],["stopColor","stop-color"],["stopOpacity","stop-opacity"],["strikethroughPosition","strikethrough-position"],["strikethroughThickness","strikethrough-thickness"],["strokeDasharray","stroke-dasharray"],["strokeDashoffset","stroke-dashoffset"],["strokeLinecap","stroke-linecap"],["strokeLinejoin","stroke-linejoin"],["strokeMiterlimit","stroke-miterlimit"],["strokeOpacity","stroke-opacity"],["strokeWidth","stroke-width"],["textAnchor","text-anchor"],["textDecoration","text-decoration"],["textRendering","text-rendering"],["transformOrigin","transform-origin"],["underlinePosition","underline-position"],["underlineThickness","underline-thickness"],["unicodeBidi","unicode-bidi"],["unicodeRange","unicode-range"],["unitsPerEm","units-per-em"],["vAlphabetic","v-alphabetic"],["vHanging","v-hanging"],["vIdeographic","v-ideographic"],["vMathematical","v-mathematical"],["vectorEffect","vector-effect"],["vertAdvY","vert-adv-y"],["vertOriginX","vert-origin-x"],["vertOriginY","vert-origin-y"],["wordSpacing","word-spacing"],["writingMode","writing-mode"],["xmlnsXlink","xmlns:xlink"],["xHeight","x-height"]]),pe=/^[\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 yt(e){return pe.test(""+e)?"javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')":e}function h(){}var U=null;function Y(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var Z=null,F=null;function Ue(e){var t=tl(e);if(t&&(e=t.stateNode)){var l=e[We]||null;e:switch(e=t.stateNode,t.type){case"input":if($l(e,l.value,l.defaultValue,l.defaultValue,l.checked,l.defaultChecked,l.type,l.name),t=l.name,l.type==="radio"&&t!=null){for(l=e;l.parentNode;)l=l.parentNode;for(l=l.querySelectorAll('input[name="'+zt(""+t)+'"][type="radio"]'),t=0;t<l.length;t++){var n=l[t];if(n!==e&&n.form===e.form){var a=n[We]||null;if(!a)throw Error(d(90));$l(n,a.value,a.defaultValue,a.defaultValue,a.checked,a.defaultChecked,a.type,a.name)}}for(t=0;t<l.length;t++)n=l[t],n.form===e.form&&za(n)}break e;case"textarea":x(e,l.value,l.defaultValue);break e;case"select":t=l.value,t!=null&&f(e,!!l.multiple,t,!1)}}}var De=!1;function pt(e,t,l){if(De)return e(t,l);De=!0;try{var n=e(t);return n}finally{if(De=!1,(Z!==null||F!==null)&&(Us(),Z&&(t=Z,e=F,F=Z=null,Ue(t),e)))for(t=0;t<e.length;t++)Ue(e[t])}}function ce(e,t){var l=e.stateNode;if(l===null)return null;var n=l[We]||null;if(n===null)return null;l=n[t];e:switch(t){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(n=!n.disabled)||(e=e.type,n=!(e==="button"||e==="input"||e==="select"||e==="textarea")),e=!n;break e;default:e=!1}if(e)return null;if(l&&typeof l!="function")throw Error(d(231,t,typeof l));return l}var Le=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),un=!1;if(Le)try{var oa={};Object.defineProperty(oa,"passive",{get:function(){un=!0}}),window.addEventListener("test",oa,oa),window.removeEventListener("test",oa,oa)}catch{un=!1}var _l=null,ou=null,Ii=null;function Do(){if(Ii)return Ii;var e,t=ou,l=t.length,n,a="value"in _l?_l.value:_l.textContent,i=a.length;for(e=0;e<l&&t[e]===a[e];e++);var u=l-e;for(n=1;n<=u&&t[l-n]===a[i-n];n++);return Ii=a.slice(e,1<n?1-n:void 0)}function Wi(e){var t=e.keyCode;return"charCode"in e?(e=e.charCode,e===0&&t===13&&(e=13)):e=t,e===10&&(e=13),32<=e||e===13?e:0}function Fi(){return!0}function zo(){return!1}function nl(e){function t(l,n,a,i,u){this._reactName=l,this._targetInst=a,this.type=n,this.nativeEvent=i,this.target=u,this.currentTarget=null;for(var r in e)e.hasOwnProperty(r)&&(l=e[r],this[r]=l?l(i):i[r]);return this.isDefaultPrevented=(i.defaultPrevented!=null?i.defaultPrevented:i.returnValue===!1)?Fi:zo,this.isPropagationStopped=zo,this}return B(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var l=this.nativeEvent;l&&(l.preventDefault?l.preventDefault():typeof l.returnValue!="unknown"&&(l.returnValue=!1),this.isDefaultPrevented=Fi)},stopPropagation:function(){var l=this.nativeEvent;l&&(l.stopPropagation?l.stopPropagation():typeof l.cancelBubble!="unknown"&&(l.cancelBubble=!0),this.isPropagationStopped=Fi)},persist:function(){},isPersistent:Fi}),t}var ra={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},Pi=nl(ra),si=B({},ra,{view:0,detail:0}),wm=nl(si),ru,du,ui,es=B({},si,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:mu,button:0,buttons:0,relatedTarget:function(e){return e.relatedTarget===void 0?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return"movementX"in e?e.movementX:(e!==ui&&(ui&&e.type==="mousemove"?(ru=e.screenX-ui.screenX,du=e.screenY-ui.screenY):du=ru=0,ui=e),ru)},movementY:function(e){return"movementY"in e?e.movementY:du}}),Oo=nl(es),Um=B({},es,{dataTransfer:0}),Hm=nl(Um),Lm=B({},si,{relatedTarget:0}),fu=nl(Lm),qm=B({},ra,{animationName:0,elapsedTime:0,pseudoElement:0}),Gm=nl(qm),Bm=B({},ra,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),Ym=nl(Bm),Qm=B({},ra,{data:0}),_o=nl(Qm),Xm={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},Zm={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"},Vm={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function Km(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=Vm[e])?!!t[e]:!1}function mu(){return Km}var $m=B({},si,{key:function(e){if(e.key){var t=Xm[e.key]||e.key;if(t!=="Unidentified")return t}return e.type==="keypress"?(e=Wi(e),e===13?"Enter":String.fromCharCode(e)):e.type==="keydown"||e.type==="keyup"?Zm[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:mu,charCode:function(e){return e.type==="keypress"?Wi(e):0},keyCode:function(e){return e.type==="keydown"||e.type==="keyup"?e.keyCode:0},which:function(e){return e.type==="keypress"?Wi(e):e.type==="keydown"||e.type==="keyup"?e.keyCode:0}}),Jm=nl($m),Im=B({},es,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),Mo=nl(Im),Wm=B({},si,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:mu}),Fm=nl(Wm),Pm=B({},ra,{propertyName:0,elapsedTime:0,pseudoElement:0}),eh=nl(Pm),th=B({},es,{deltaX:function(e){return"deltaX"in e?e.deltaX:"wheelDeltaX"in e?-e.wheelDeltaX:0},deltaY:function(e){return"deltaY"in e?e.deltaY:"wheelDeltaY"in e?-e.wheelDeltaY:"wheelDelta"in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0}),lh=nl(th),nh=B({},ra,{newState:0,oldState:0}),ah=nl(nh),ih=[9,13,27,32],hu=Le&&"CompositionEvent"in window,ci=null;Le&&"documentMode"in document&&(ci=document.documentMode);var sh=Le&&"TextEvent"in window&&!ci,ko=Le&&(!hu||ci&&8<ci&&11>=ci),wo=" ",Uo=!1;function Ho(e,t){switch(e){case"keyup":return ih.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Lo(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var Oa=!1;function uh(e,t){switch(e){case"compositionend":return Lo(t);case"keypress":return t.which!==32?null:(Uo=!0,wo);case"textInput":return e=t.data,e===wo&&Uo?null:e;default:return null}}function ch(e,t){if(Oa)return e==="compositionend"||!hu&&Ho(e,t)?(e=Do(),Ii=ou=_l=null,Oa=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case"compositionend":return ko&&t.locale!=="ko"?null:t.data;default:return null}}var oh={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 qo(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t==="input"?!!oh[e.type]:t==="textarea"}function Go(e,t,l,n){Z?F?F.push(n):F=[n]:Z=n,t=Qs(t,"onChange"),0<t.length&&(l=new Pi("onChange","change",null,l,n),e.push({event:l,listeners:t}))}var oi=null,ri=null;function rh(e){Nf(e,0)}function ts(e){var t=At(e);if(za(t))return e}function Bo(e,t){if(e==="change")return t}var Yo=!1;if(Le){var vu;if(Le){var yu="oninput"in document;if(!yu){var Qo=document.createElement("div");Qo.setAttribute("oninput","return;"),yu=typeof Qo.oninput=="function"}vu=yu}else vu=!1;Yo=vu&&(!document.documentMode||9<document.documentMode)}function Xo(){oi&&(oi.detachEvent("onpropertychange",Zo),ri=oi=null)}function Zo(e){if(e.propertyName==="value"&&ts(ri)){var t=[];Go(t,ri,e,Y(e)),pt(rh,t)}}function dh(e,t,l){e==="focusin"?(Xo(),oi=t,ri=l,oi.attachEvent("onpropertychange",Zo)):e==="focusout"&&Xo()}function fh(e){if(e==="selectionchange"||e==="keyup"||e==="keydown")return ts(ri)}function mh(e,t){if(e==="click")return ts(t)}function hh(e,t){if(e==="input"||e==="change")return ts(t)}function vh(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var dl=typeof Object.is=="function"?Object.is:vh;function di(e,t){if(dl(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;var l=Object.keys(e),n=Object.keys(t);if(l.length!==n.length)return!1;for(n=0;n<l.length;n++){var a=l[n];if(!Kt.call(t,a)||!dl(e[a],t[a]))return!1}return!0}function Vo(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function Ko(e,t){var l=Vo(e);e=0;for(var n;l;){if(l.nodeType===3){if(n=e+l.textContent.length,e<=t&&n>=t)return{node:l,offset:t-e};e=n}e:{for(;l;){if(l.nextSibling){l=l.nextSibling;break e}l=l.parentNode}l=void 0}l=Vo(l)}}function $o(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?$o(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Jo(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=Kl(e.document);t instanceof e.HTMLIFrameElement;){try{var l=typeof t.contentWindow.location.href=="string"}catch{l=!1}if(l)e=t.contentWindow;else break;t=Kl(e.document)}return t}function pu(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}var yh=Le&&"documentMode"in document&&11>=document.documentMode,_a=null,gu=null,fi=null,bu=!1;function Io(e,t,l){var n=l.window===l?l.document:l.nodeType===9?l:l.ownerDocument;bu||_a==null||_a!==Kl(n)||(n=_a,"selectionStart"in n&&pu(n)?n={start:n.selectionStart,end:n.selectionEnd}:(n=(n.ownerDocument&&n.ownerDocument.defaultView||window).getSelection(),n={anchorNode:n.anchorNode,anchorOffset:n.anchorOffset,focusNode:n.focusNode,focusOffset:n.focusOffset}),fi&&di(fi,n)||(fi=n,n=Qs(gu,"onSelect"),0<n.length&&(t=new Pi("onSelect","select",null,t,l),e.push({event:t,listeners:n}),t.target=_a)))}function da(e,t){var l={};return l[e.toLowerCase()]=t.toLowerCase(),l["Webkit"+e]="webkit"+t,l["Moz"+e]="moz"+t,l}var Ma={animationend:da("Animation","AnimationEnd"),animationiteration:da("Animation","AnimationIteration"),animationstart:da("Animation","AnimationStart"),transitionrun:da("Transition","TransitionRun"),transitionstart:da("Transition","TransitionStart"),transitioncancel:da("Transition","TransitionCancel"),transitionend:da("Transition","TransitionEnd")},Su={},Wo={};Le&&(Wo=document.createElement("div").style,"AnimationEvent"in window||(delete Ma.animationend.animation,delete Ma.animationiteration.animation,delete Ma.animationstart.animation),"TransitionEvent"in window||delete Ma.transitionend.transition);function fa(e){if(Su[e])return Su[e];if(!Ma[e])return e;var t=Ma[e],l;for(l in t)if(t.hasOwnProperty(l)&&l in Wo)return Su[e]=t[l];return e}var Fo=fa("animationend"),Po=fa("animationiteration"),er=fa("animationstart"),ph=fa("transitionrun"),gh=fa("transitionstart"),bh=fa("transitioncancel"),tr=fa("transitionend"),lr=new Map,xu="abort auxClick beforeToggle cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");xu.push("scrollEnd");function Jl(e,t){lr.set(e,t),ll(t,[e])}var ls=typeof reportError=="function"?reportError:function(e){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var t=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof e=="object"&&e!==null&&typeof e.message=="string"?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",e);return}console.error(e)},Ml=[],ka=0,ju=0;function ns(){for(var e=ka,t=ju=ka=0;t<e;){var l=Ml[t];Ml[t++]=null;var n=Ml[t];Ml[t++]=null;var a=Ml[t];Ml[t++]=null;var i=Ml[t];if(Ml[t++]=null,n!==null&&a!==null){var u=n.pending;u===null?a.next=a:(a.next=u.next,u.next=a),n.pending=a}i!==0&&nr(l,a,i)}}function as(e,t,l,n){Ml[ka++]=e,Ml[ka++]=t,Ml[ka++]=l,Ml[ka++]=n,ju|=n,e.lanes|=n,e=e.alternate,e!==null&&(e.lanes|=n)}function Nu(e,t,l,n){return as(e,t,l,n),is(e)}function ma(e,t){return as(e,null,null,t),is(e)}function nr(e,t,l){e.lanes|=l;var n=e.alternate;n!==null&&(n.lanes|=l);for(var a=!1,i=e.return;i!==null;)i.childLanes|=l,n=i.alternate,n!==null&&(n.childLanes|=l),i.tag===22&&(e=i.stateNode,e===null||e._visibility&1||(a=!0)),e=i,i=i.return;return e.tag===3?(i=e.stateNode,a&&t!==null&&(a=31-Ct(l),e=i.hiddenUpdates,n=e[a],n===null?e[a]=[t]:n.push(t),t.lane=l|536870912),i):null}function is(e){if(50<ki)throw ki=0,_c=null,Error(d(185));for(var t=e.return;t!==null;)e=t,t=e.return;return e.tag===3?e.stateNode:null}var wa={};function Sh(e,t,l,n){this.tag=e,this.key=l,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.refCleanup=this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=n,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function fl(e,t,l,n){return new Sh(e,t,l,n)}function Tu(e){return e=e.prototype,!(!e||!e.isReactComponent)}function Sn(e,t){var l=e.alternate;return l===null?(l=fl(e.tag,t,e.key,e.mode),l.elementType=e.elementType,l.type=e.type,l.stateNode=e.stateNode,l.alternate=e,e.alternate=l):(l.pendingProps=t,l.type=e.type,l.flags=0,l.subtreeFlags=0,l.deletions=null),l.flags=e.flags&65011712,l.childLanes=e.childLanes,l.lanes=e.lanes,l.child=e.child,l.memoizedProps=e.memoizedProps,l.memoizedState=e.memoizedState,l.updateQueue=e.updateQueue,t=e.dependencies,l.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},l.sibling=e.sibling,l.index=e.index,l.ref=e.ref,l.refCleanup=e.refCleanup,l}function ar(e,t){e.flags&=65011714;var l=e.alternate;return l===null?(e.childLanes=0,e.lanes=t,e.child=null,e.subtreeFlags=0,e.memoizedProps=null,e.memoizedState=null,e.updateQueue=null,e.dependencies=null,e.stateNode=null):(e.childLanes=l.childLanes,e.lanes=l.lanes,e.child=l.child,e.subtreeFlags=0,e.deletions=null,e.memoizedProps=l.memoizedProps,e.memoizedState=l.memoizedState,e.updateQueue=l.updateQueue,e.type=l.type,t=l.dependencies,e.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext}),e}function ss(e,t,l,n,a,i){var u=0;if(n=e,typeof e=="function")Tu(e)&&(u=1);else if(typeof e=="string")u=Ev(e,l,I.current)?26:e==="html"||e==="head"||e==="body"?27:5;else e:switch(e){case xt:return e=fl(31,l,t,a),e.elementType=xt,e.lanes=i,e;case se:return ha(l.children,a,i,t);case et:u=8,a|=24;break;case oe:return e=fl(12,l,t,a|2),e.elementType=oe,e.lanes=i,e;case ot:return e=fl(13,l,t,a),e.elementType=ot,e.lanes=i,e;case $e:return e=fl(19,l,t,a),e.elementType=$e,e.lanes=i,e;default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case Me:u=10;break e;case _e:u=9;break e;case St:u=11;break e;case fe:u=14;break e;case Ne:u=16,n=null;break e}u=29,l=Error(d(130,e===null?"null":typeof e,"")),n=null}return t=fl(u,l,t,a),t.elementType=e,t.type=n,t.lanes=i,t}function ha(e,t,l,n){return e=fl(7,e,n,t),e.lanes=l,e}function Eu(e,t,l){return e=fl(6,e,null,t),e.lanes=l,e}function ir(e){var t=fl(18,null,null,0);return t.stateNode=e,t}function Cu(e,t,l){return t=fl(4,e.children!==null?e.children:[],e.key,t),t.lanes=l,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}var sr=new WeakMap;function kl(e,t){if(typeof e=="object"&&e!==null){var l=sr.get(e);return l!==void 0?l:(t={value:e,source:t,stack:mn(t)},sr.set(e,t),t)}return{value:e,source:t,stack:mn(t)}}var Ua=[],Ha=0,us=null,mi=0,wl=[],Ul=0,qn=null,cn=1,on="";function xn(e,t){Ua[Ha++]=mi,Ua[Ha++]=us,us=e,mi=t}function ur(e,t,l){wl[Ul++]=cn,wl[Ul++]=on,wl[Ul++]=qn,qn=e;var n=cn;e=on;var a=32-Ct(n)-1;n&=~(1<<a),l+=1;var i=32-Ct(t)+a;if(30<i){var u=a-a%5;i=(n&(1<<u)-1).toString(32),n>>=u,a-=u,cn=1<<32-Ct(t)+a|l<<a|n,on=i+e}else cn=1<<i|l<<a|n,on=e}function Au(e){e.return!==null&&(xn(e,1),ur(e,1,0))}function Ru(e){for(;e===us;)us=Ua[--Ha],Ua[Ha]=null,mi=Ua[--Ha],Ua[Ha]=null;for(;e===qn;)qn=wl[--Ul],wl[Ul]=null,on=wl[--Ul],wl[Ul]=null,cn=wl[--Ul],wl[Ul]=null}function cr(e,t){wl[Ul++]=cn,wl[Ul++]=on,wl[Ul++]=qn,cn=t.id,on=t.overflow,qn=e}var Ht=null,Fe=null,Ce=!1,Gn=null,Hl=!1,Du=Error(d(519));function Bn(e){var t=Error(d(418,1<arguments.length&&arguments[1]!==void 0&&arguments[1]?"text":"HTML",""));throw hi(kl(t,e)),Du}function or(e){var t=e.stateNode,l=e.type,n=e.memoizedProps;switch(t[ue]=e,t[We]=n,l){case"dialog":Se("cancel",t),Se("close",t);break;case"iframe":case"object":case"embed":Se("load",t);break;case"video":case"audio":for(l=0;l<Ui.length;l++)Se(Ui[l],t);break;case"source":Se("error",t);break;case"img":case"image":case"link":Se("error",t),Se("load",t);break;case"details":Se("toggle",t);break;case"input":Se("invalid",t),bn(t,n.value,n.defaultValue,n.checked,n.defaultChecked,n.type,n.name,!0);break;case"select":Se("invalid",t);break;case"textarea":Se("invalid",t),C(t,n.value,n.defaultValue,n.children)}l=n.children,typeof l!="string"&&typeof l!="number"&&typeof l!="bigint"||t.textContent===""+l||n.suppressHydrationWarning===!0||Af(t.textContent,l)?(n.popover!=null&&(Se("beforetoggle",t),Se("toggle",t)),n.onScroll!=null&&Se("scroll",t),n.onScrollEnd!=null&&Se("scrollend",t),n.onClick!=null&&(t.onclick=h),t=!0):t=!1,t||Bn(e,!0)}function rr(e){for(Ht=e.return;Ht;)switch(Ht.tag){case 5:case 31:case 13:Hl=!1;return;case 27:case 3:Hl=!0;return;default:Ht=Ht.return}}function La(e){if(e!==Ht)return!1;if(!Ce)return rr(e),Ce=!0,!1;var t=e.tag,l;if((l=t!==3&&t!==27)&&((l=t===5)&&(l=e.type,l=!(l!=="form"&&l!=="button")||Kc(e.type,e.memoizedProps)),l=!l),l&&Fe&&Bn(e),rr(e),t===13){if(e=e.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(d(317));Fe=Uf(e)}else if(t===31){if(e=e.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(d(317));Fe=Uf(e)}else t===27?(t=Fe,ta(e.type)?(e=Fc,Fc=null,Fe=e):Fe=t):Fe=Ht?ql(e.stateNode.nextSibling):null;return!0}function va(){Fe=Ht=null,Ce=!1}function zu(){var e=Gn;return e!==null&&(ul===null?ul=e:ul.push.apply(ul,e),Gn=null),e}function hi(e){Gn===null?Gn=[e]:Gn.push(e)}var Ou=p(null),ya=null,jn=null;function Yn(e,t,l){q(Ou,t._currentValue),t._currentValue=l}function Nn(e){e._currentValue=Ou.current,E(Ou)}function _u(e,t,l){for(;e!==null;){var n=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,n!==null&&(n.childLanes|=t)):n!==null&&(n.childLanes&t)!==t&&(n.childLanes|=t),e===l)break;e=e.return}}function Mu(e,t,l,n){var a=e.child;for(a!==null&&(a.return=e);a!==null;){var i=a.dependencies;if(i!==null){var u=a.child;i=i.firstContext;e:for(;i!==null;){var r=i;i=a;for(var v=0;v<t.length;v++)if(r.context===t[v]){i.lanes|=l,r=i.alternate,r!==null&&(r.lanes|=l),_u(i.return,l,e),n||(u=null);break e}i=r.next}}else if(a.tag===18){if(u=a.return,u===null)throw Error(d(341));u.lanes|=l,i=u.alternate,i!==null&&(i.lanes|=l),_u(u,l,e),u=null}else u=a.child;if(u!==null)u.return=a;else for(u=a;u!==null;){if(u===e){u=null;break}if(a=u.sibling,a!==null){a.return=u.return,u=a;break}u=u.return}a=u}}function qa(e,t,l,n){e=null;for(var a=t,i=!1;a!==null;){if(!i){if((a.flags&524288)!==0)i=!0;else if((a.flags&262144)!==0)break}if(a.tag===10){var u=a.alternate;if(u===null)throw Error(d(387));if(u=u.memoizedProps,u!==null){var r=a.type;dl(a.pendingProps.value,u.value)||(e!==null?e.push(r):e=[r])}}else if(a===ge.current){if(u=a.alternate,u===null)throw Error(d(387));u.memoizedState.memoizedState!==a.memoizedState.memoizedState&&(e!==null?e.push(Bi):e=[Bi])}a=a.return}e!==null&&Mu(t,e,l,n),t.flags|=262144}function cs(e){for(e=e.firstContext;e!==null;){if(!dl(e.context._currentValue,e.memoizedValue))return!0;e=e.next}return!1}function pa(e){ya=e,jn=null,e=e.dependencies,e!==null&&(e.firstContext=null)}function Lt(e){return dr(ya,e)}function os(e,t){return ya===null&&pa(e),dr(e,t)}function dr(e,t){var l=t._currentValue;if(t={context:t,memoizedValue:l,next:null},jn===null){if(e===null)throw Error(d(308));jn=t,e.dependencies={lanes:0,firstContext:t},e.flags|=524288}else jn=jn.next=t;return l}var xh=typeof AbortController<"u"?AbortController:function(){var e=[],t=this.signal={aborted:!1,addEventListener:function(l,n){e.push(n)}};this.abort=function(){t.aborted=!0,e.forEach(function(l){return l()})}},jh=c.unstable_scheduleCallback,Nh=c.unstable_NormalPriority,jt={$$typeof:Me,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0};function ku(){return{controller:new xh,data:new Map,refCount:0}}function vi(e){e.refCount--,e.refCount===0&&jh(Nh,function(){e.controller.abort()})}var yi=null,wu=0,Ga=0,Ba=null;function Th(e,t){if(yi===null){var l=yi=[];wu=0,Ga=Lc(),Ba={status:"pending",value:void 0,then:function(n){l.push(n)}}}return wu++,t.then(fr,fr),t}function fr(){if(--wu===0&&yi!==null){Ba!==null&&(Ba.status="fulfilled");var e=yi;yi=null,Ga=0,Ba=null;for(var t=0;t<e.length;t++)(0,e[t])()}}function Eh(e,t){var l=[],n={status:"pending",value:null,reason:null,then:function(a){l.push(a)}};return e.then(function(){n.status="fulfilled",n.value=t;for(var a=0;a<l.length;a++)(0,l[a])(t)},function(a){for(n.status="rejected",n.reason=a,a=0;a<l.length;a++)(0,l[a])(void 0)}),n}var mr=D.S;D.S=function(e,t){Id=mt(),typeof t=="object"&&t!==null&&typeof t.then=="function"&&Th(e,t),mr!==null&&mr(e,t)};var ga=p(null);function Uu(){var e=ga.current;return e!==null?e:Ke.pooledCache}function rs(e,t){t===null?q(ga,ga.current):q(ga,t.pool)}function hr(){var e=Uu();return e===null?null:{parent:jt._currentValue,pool:e}}var Ya=Error(d(460)),Hu=Error(d(474)),ds=Error(d(542)),fs={then:function(){}};function vr(e){return e=e.status,e==="fulfilled"||e==="rejected"}function yr(e,t,l){switch(l=e[l],l===void 0?e.push(t):l!==t&&(t.then(h,h),t=l),t.status){case"fulfilled":return t.value;case"rejected":throw e=t.reason,gr(e),e;default:if(typeof t.status=="string")t.then(h,h);else{if(e=Ke,e!==null&&100<e.shellSuspendCounter)throw Error(d(482));e=t,e.status="pending",e.then(function(n){if(t.status==="pending"){var a=t;a.status="fulfilled",a.value=n}},function(n){if(t.status==="pending"){var a=t;a.status="rejected",a.reason=n}})}switch(t.status){case"fulfilled":return t.value;case"rejected":throw e=t.reason,gr(e),e}throw Sa=t,Ya}}function ba(e){try{var t=e._init;return t(e._payload)}catch(l){throw l!==null&&typeof l=="object"&&typeof l.then=="function"?(Sa=l,Ya):l}}var Sa=null;function pr(){if(Sa===null)throw Error(d(459));var e=Sa;return Sa=null,e}function gr(e){if(e===Ya||e===ds)throw Error(d(483))}var Qa=null,pi=0;function ms(e){var t=pi;return pi+=1,Qa===null&&(Qa=[]),yr(Qa,e,t)}function gi(e,t){t=t.props.ref,e.ref=t!==void 0?t:null}function hs(e,t){throw t.$$typeof===ee?Error(d(525)):(e=Object.prototype.toString.call(t),Error(d(31,e==="[object Object]"?"object with keys {"+Object.keys(t).join(", ")+"}":e)))}function br(e){function t(b,g){if(e){var j=b.deletions;j===null?(b.deletions=[g],b.flags|=16):j.push(g)}}function l(b,g){if(!e)return null;for(;g!==null;)t(b,g),g=g.sibling;return null}function n(b){for(var g=new Map;b!==null;)b.key!==null?g.set(b.key,b):g.set(b.index,b),b=b.sibling;return g}function a(b,g){return b=Sn(b,g),b.index=0,b.sibling=null,b}function i(b,g,j){return b.index=j,e?(j=b.alternate,j!==null?(j=j.index,j<g?(b.flags|=67108866,g):j):(b.flags|=67108866,g)):(b.flags|=1048576,g)}function u(b){return e&&b.alternate===null&&(b.flags|=67108866),b}function r(b,g,j,M){return g===null||g.tag!==6?(g=Eu(j,b.mode,M),g.return=b,g):(g=a(g,j),g.return=b,g)}function v(b,g,j,M){var te=j.type;return te===se?_(b,g,j.props.children,M,j.key):g!==null&&(g.elementType===te||typeof te=="object"&&te!==null&&te.$$typeof===Ne&&ba(te)===g.type)?(g=a(g,j.props),gi(g,j),g.return=b,g):(g=ss(j.type,j.key,j.props,null,b.mode,M),gi(g,j),g.return=b,g)}function N(b,g,j,M){return g===null||g.tag!==4||g.stateNode.containerInfo!==j.containerInfo||g.stateNode.implementation!==j.implementation?(g=Cu(j,b.mode,M),g.return=b,g):(g=a(g,j.children||[]),g.return=b,g)}function _(b,g,j,M,te){return g===null||g.tag!==7?(g=ha(j,b.mode,M,te),g.return=b,g):(g=a(g,j),g.return=b,g)}function w(b,g,j){if(typeof g=="string"&&g!==""||typeof g=="number"||typeof g=="bigint")return g=Eu(""+g,b.mode,j),g.return=b,g;if(typeof g=="object"&&g!==null){switch(g.$$typeof){case L:return j=ss(g.type,g.key,g.props,null,b.mode,j),gi(j,g),j.return=b,j;case le:return g=Cu(g,b.mode,j),g.return=b,g;case Ne:return g=ba(g),w(b,g,j)}if(_t(g)||ft(g))return g=ha(g,b.mode,j,null),g.return=b,g;if(typeof g.then=="function")return w(b,ms(g),j);if(g.$$typeof===Me)return w(b,os(b,g),j);hs(b,g)}return null}function T(b,g,j,M){var te=g!==null?g.key:null;if(typeof j=="string"&&j!==""||typeof j=="number"||typeof j=="bigint")return te!==null?null:r(b,g,""+j,M);if(typeof j=="object"&&j!==null){switch(j.$$typeof){case L:return j.key===te?v(b,g,j,M):null;case le:return j.key===te?N(b,g,j,M):null;case Ne:return j=ba(j),T(b,g,j,M)}if(_t(j)||ft(j))return te!==null?null:_(b,g,j,M,null);if(typeof j.then=="function")return T(b,g,ms(j),M);if(j.$$typeof===Me)return T(b,g,os(b,j),M);hs(b,j)}return null}function A(b,g,j,M,te){if(typeof M=="string"&&M!==""||typeof M=="number"||typeof M=="bigint")return b=b.get(j)||null,r(g,b,""+M,te);if(typeof M=="object"&&M!==null){switch(M.$$typeof){case L:return b=b.get(M.key===null?j:M.key)||null,v(g,b,M,te);case le:return b=b.get(M.key===null?j:M.key)||null,N(g,b,M,te);case Ne:return M=ba(M),A(b,g,j,M,te)}if(_t(M)||ft(M))return b=b.get(j)||null,_(g,b,M,te,null);if(typeof M.then=="function")return A(b,g,j,ms(M),te);if(M.$$typeof===Me)return A(b,g,j,os(g,M),te);hs(g,M)}return null}function W(b,g,j,M){for(var te=null,ze=null,P=g,ve=g=0,je=null;P!==null&&ve<j.length;ve++){P.index>ve?(je=P,P=null):je=P.sibling;var Oe=T(b,P,j[ve],M);if(Oe===null){P===null&&(P=je);break}e&&P&&Oe.alternate===null&&t(b,P),g=i(Oe,g,ve),ze===null?te=Oe:ze.sibling=Oe,ze=Oe,P=je}if(ve===j.length)return l(b,P),Ce&&xn(b,ve),te;if(P===null){for(;ve<j.length;ve++)P=w(b,j[ve],M),P!==null&&(g=i(P,g,ve),ze===null?te=P:ze.sibling=P,ze=P);return Ce&&xn(b,ve),te}for(P=n(P);ve<j.length;ve++)je=A(P,b,ve,j[ve],M),je!==null&&(e&&je.alternate!==null&&P.delete(je.key===null?ve:je.key),g=i(je,g,ve),ze===null?te=je:ze.sibling=je,ze=je);return e&&P.forEach(function(sa){return t(b,sa)}),Ce&&xn(b,ve),te}function ie(b,g,j,M){if(j==null)throw Error(d(151));for(var te=null,ze=null,P=g,ve=g=0,je=null,Oe=j.next();P!==null&&!Oe.done;ve++,Oe=j.next()){P.index>ve?(je=P,P=null):je=P.sibling;var sa=T(b,P,Oe.value,M);if(sa===null){P===null&&(P=je);break}e&&P&&sa.alternate===null&&t(b,P),g=i(sa,g,ve),ze===null?te=sa:ze.sibling=sa,ze=sa,P=je}if(Oe.done)return l(b,P),Ce&&xn(b,ve),te;if(P===null){for(;!Oe.done;ve++,Oe=j.next())Oe=w(b,Oe.value,M),Oe!==null&&(g=i(Oe,g,ve),ze===null?te=Oe:ze.sibling=Oe,ze=Oe);return Ce&&xn(b,ve),te}for(P=n(P);!Oe.done;ve++,Oe=j.next())Oe=A(P,b,ve,Oe.value,M),Oe!==null&&(e&&Oe.alternate!==null&&P.delete(Oe.key===null?ve:Oe.key),g=i(Oe,g,ve),ze===null?te=Oe:ze.sibling=Oe,ze=Oe);return e&&P.forEach(function(Uv){return t(b,Uv)}),Ce&&xn(b,ve),te}function Xe(b,g,j,M){if(typeof j=="object"&&j!==null&&j.type===se&&j.key===null&&(j=j.props.children),typeof j=="object"&&j!==null){switch(j.$$typeof){case L:e:{for(var te=j.key;g!==null;){if(g.key===te){if(te=j.type,te===se){if(g.tag===7){l(b,g.sibling),M=a(g,j.props.children),M.return=b,b=M;break e}}else if(g.elementType===te||typeof te=="object"&&te!==null&&te.$$typeof===Ne&&ba(te)===g.type){l(b,g.sibling),M=a(g,j.props),gi(M,j),M.return=b,b=M;break e}l(b,g);break}else t(b,g);g=g.sibling}j.type===se?(M=ha(j.props.children,b.mode,M,j.key),M.return=b,b=M):(M=ss(j.type,j.key,j.props,null,b.mode,M),gi(M,j),M.return=b,b=M)}return u(b);case le:e:{for(te=j.key;g!==null;){if(g.key===te)if(g.tag===4&&g.stateNode.containerInfo===j.containerInfo&&g.stateNode.implementation===j.implementation){l(b,g.sibling),M=a(g,j.children||[]),M.return=b,b=M;break e}else{l(b,g);break}else t(b,g);g=g.sibling}M=Cu(j,b.mode,M),M.return=b,b=M}return u(b);case Ne:return j=ba(j),Xe(b,g,j,M)}if(_t(j))return W(b,g,j,M);if(ft(j)){if(te=ft(j),typeof te!="function")throw Error(d(150));return j=te.call(j),ie(b,g,j,M)}if(typeof j.then=="function")return Xe(b,g,ms(j),M);if(j.$$typeof===Me)return Xe(b,g,os(b,j),M);hs(b,j)}return typeof j=="string"&&j!==""||typeof j=="number"||typeof j=="bigint"?(j=""+j,g!==null&&g.tag===6?(l(b,g.sibling),M=a(g,j),M.return=b,b=M):(l(b,g),M=Eu(j,b.mode,M),M.return=b,b=M),u(b)):l(b,g)}return function(b,g,j,M){try{pi=0;var te=Xe(b,g,j,M);return Qa=null,te}catch(P){if(P===Ya||P===ds)throw P;var ze=fl(29,P,null,b.mode);return ze.lanes=M,ze.return=b,ze}}}var xa=br(!0),Sr=br(!1),Qn=!1;function Lu(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function qu(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function Xn(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function Zn(e,t,l){var n=e.updateQueue;if(n===null)return null;if(n=n.shared,(we&2)!==0){var a=n.pending;return a===null?t.next=t:(t.next=a.next,a.next=t),n.pending=t,t=is(e),nr(e,null,l),t}return as(e,n,t,l),is(e)}function bi(e,t,l){if(t=t.updateQueue,t!==null&&(t=t.shared,(l&4194048)!==0)){var n=t.lanes;n&=e.pendingLanes,l|=n,t.lanes=l,Ie(e,l)}}function Gu(e,t){var l=e.updateQueue,n=e.alternate;if(n!==null&&(n=n.updateQueue,l===n)){var a=null,i=null;if(l=l.firstBaseUpdate,l!==null){do{var u={lane:l.lane,tag:l.tag,payload:l.payload,callback:null,next:null};i===null?a=i=u:i=i.next=u,l=l.next}while(l!==null);i===null?a=i=t:i=i.next=t}else a=i=t;l={baseState:n.baseState,firstBaseUpdate:a,lastBaseUpdate:i,shared:n.shared,callbacks:n.callbacks},e.updateQueue=l;return}e=l.lastBaseUpdate,e===null?l.firstBaseUpdate=t:e.next=t,l.lastBaseUpdate=t}var Bu=!1;function Si(){if(Bu){var e=Ba;if(e!==null)throw e}}function xi(e,t,l,n){Bu=!1;var a=e.updateQueue;Qn=!1;var i=a.firstBaseUpdate,u=a.lastBaseUpdate,r=a.shared.pending;if(r!==null){a.shared.pending=null;var v=r,N=v.next;v.next=null,u===null?i=N:u.next=N,u=v;var _=e.alternate;_!==null&&(_=_.updateQueue,r=_.lastBaseUpdate,r!==u&&(r===null?_.firstBaseUpdate=N:r.next=N,_.lastBaseUpdate=v))}if(i!==null){var w=a.baseState;u=0,_=N=v=null,r=i;do{var T=r.lane&-536870913,A=T!==r.lane;if(A?(xe&T)===T:(n&T)===T){T!==0&&T===Ga&&(Bu=!0),_!==null&&(_=_.next={lane:0,tag:r.tag,payload:r.payload,callback:null,next:null});e:{var W=e,ie=r;T=t;var Xe=l;switch(ie.tag){case 1:if(W=ie.payload,typeof W=="function"){w=W.call(Xe,w,T);break e}w=W;break e;case 3:W.flags=W.flags&-65537|128;case 0:if(W=ie.payload,T=typeof W=="function"?W.call(Xe,w,T):W,T==null)break e;w=B({},w,T);break e;case 2:Qn=!0}}T=r.callback,T!==null&&(e.flags|=64,A&&(e.flags|=8192),A=a.callbacks,A===null?a.callbacks=[T]:A.push(T))}else A={lane:T,tag:r.tag,payload:r.payload,callback:r.callback,next:null},_===null?(N=_=A,v=w):_=_.next=A,u|=T;if(r=r.next,r===null){if(r=a.shared.pending,r===null)break;A=r,r=A.next,A.next=null,a.lastBaseUpdate=A,a.shared.pending=null}}while(!0);_===null&&(v=w),a.baseState=v,a.firstBaseUpdate=N,a.lastBaseUpdate=_,i===null&&(a.shared.lanes=0),In|=u,e.lanes=u,e.memoizedState=w}}function xr(e,t){if(typeof e!="function")throw Error(d(191,e));e.call(t)}function jr(e,t){var l=e.callbacks;if(l!==null)for(e.callbacks=null,e=0;e<l.length;e++)xr(l[e],t)}var Xa=p(null),vs=p(0);function Nr(e,t){e=_n,q(vs,e),q(Xa,t),_n=e|t.baseLanes}function Yu(){q(vs,_n),q(Xa,Xa.current)}function Qu(){_n=vs.current,E(Xa),E(vs)}var ml=p(null),Ll=null;function Vn(e){var t=e.alternate;q(gt,gt.current&1),q(ml,e),Ll===null&&(t===null||Xa.current!==null||t.memoizedState!==null)&&(Ll=e)}function Xu(e){q(gt,gt.current),q(ml,e),Ll===null&&(Ll=e)}function Tr(e){e.tag===22?(q(gt,gt.current),q(ml,e),Ll===null&&(Ll=e)):Kn()}function Kn(){q(gt,gt.current),q(ml,ml.current)}function hl(e){E(ml),Ll===e&&(Ll=null),E(gt)}var gt=p(0);function ys(e){for(var t=e;t!==null;){if(t.tag===13){var l=t.memoizedState;if(l!==null&&(l=l.dehydrated,l===null||Ic(l)||Wc(l)))return t}else if(t.tag===19&&(t.memoizedProps.revealOrder==="forwards"||t.memoizedProps.revealOrder==="backwards"||t.memoizedProps.revealOrder==="unstable_legacy-backwards"||t.memoizedProps.revealOrder==="together")){if((t.flags&128)!==0)return t}else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var Tn=0,me=null,Ye=null,Nt=null,ps=!1,Za=!1,ja=!1,gs=0,ji=0,Va=null,Ch=0;function ut(){throw Error(d(321))}function Zu(e,t){if(t===null)return!1;for(var l=0;l<t.length&&l<e.length;l++)if(!dl(e[l],t[l]))return!1;return!0}function Vu(e,t,l,n,a,i){return Tn=i,me=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,D.H=e===null||e.memoizedState===null?ud:uc,ja=!1,i=l(n,a),ja=!1,Za&&(i=Cr(t,l,n,a)),Er(e),i}function Er(e){D.H=Ei;var t=Ye!==null&&Ye.next!==null;if(Tn=0,Nt=Ye=me=null,ps=!1,ji=0,Va=null,t)throw Error(d(300));e===null||Tt||(e=e.dependencies,e!==null&&cs(e)&&(Tt=!0))}function Cr(e,t,l,n){me=e;var a=0;do{if(Za&&(Va=null),ji=0,Za=!1,25<=a)throw Error(d(301));if(a+=1,Nt=Ye=null,e.updateQueue!=null){var i=e.updateQueue;i.lastEffect=null,i.events=null,i.stores=null,i.memoCache!=null&&(i.memoCache.index=0)}D.H=cd,i=t(l,n)}while(Za);return i}function Ah(){var e=D.H,t=e.useState()[0];return t=typeof t.then=="function"?Ni(t):t,e=e.useState()[0],(Ye!==null?Ye.memoizedState:null)!==e&&(me.flags|=1024),t}function Ku(){var e=gs!==0;return gs=0,e}function $u(e,t,l){t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~l}function Ju(e){if(ps){for(e=e.memoizedState;e!==null;){var t=e.queue;t!==null&&(t.pending=null),e=e.next}ps=!1}Tn=0,Nt=Ye=me=null,Za=!1,ji=gs=0,Va=null}function Wt(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return Nt===null?me.memoizedState=Nt=e:Nt=Nt.next=e,Nt}function bt(){if(Ye===null){var e=me.alternate;e=e!==null?e.memoizedState:null}else e=Ye.next;var t=Nt===null?me.memoizedState:Nt.next;if(t!==null)Nt=t,Ye=e;else{if(e===null)throw me.alternate===null?Error(d(467)):Error(d(310));Ye=e,e={memoizedState:Ye.memoizedState,baseState:Ye.baseState,baseQueue:Ye.baseQueue,queue:Ye.queue,next:null},Nt===null?me.memoizedState=Nt=e:Nt=Nt.next=e}return Nt}function bs(){return{lastEffect:null,events:null,stores:null,memoCache:null}}function Ni(e){var t=ji;return ji+=1,Va===null&&(Va=[]),e=yr(Va,e,t),t=me,(Nt===null?t.memoizedState:Nt.next)===null&&(t=t.alternate,D.H=t===null||t.memoizedState===null?ud:uc),e}function Ss(e){if(e!==null&&typeof e=="object"){if(typeof e.then=="function")return Ni(e);if(e.$$typeof===Me)return Lt(e)}throw Error(d(438,String(e)))}function Iu(e){var t=null,l=me.updateQueue;if(l!==null&&(t=l.memoCache),t==null){var n=me.alternate;n!==null&&(n=n.updateQueue,n!==null&&(n=n.memoCache,n!=null&&(t={data:n.data.map(function(a){return a.slice()}),index:0})))}if(t==null&&(t={data:[],index:0}),l===null&&(l=bs(),me.updateQueue=l),l.memoCache=t,l=t.data[t.index],l===void 0)for(l=t.data[t.index]=Array(e),n=0;n<e;n++)l[n]=rt;return t.index++,l}function En(e,t){return typeof t=="function"?t(e):t}function xs(e){var t=bt();return Wu(t,Ye,e)}function Wu(e,t,l){var n=e.queue;if(n===null)throw Error(d(311));n.lastRenderedReducer=l;var a=e.baseQueue,i=n.pending;if(i!==null){if(a!==null){var u=a.next;a.next=i.next,i.next=u}t.baseQueue=a=i,n.pending=null}if(i=e.baseState,a===null)e.memoizedState=i;else{t=a.next;var r=u=null,v=null,N=t,_=!1;do{var w=N.lane&-536870913;if(w!==N.lane?(xe&w)===w:(Tn&w)===w){var T=N.revertLane;if(T===0)v!==null&&(v=v.next={lane:0,revertLane:0,gesture:null,action:N.action,hasEagerState:N.hasEagerState,eagerState:N.eagerState,next:null}),w===Ga&&(_=!0);else if((Tn&T)===T){N=N.next,T===Ga&&(_=!0);continue}else w={lane:0,revertLane:N.revertLane,gesture:null,action:N.action,hasEagerState:N.hasEagerState,eagerState:N.eagerState,next:null},v===null?(r=v=w,u=i):v=v.next=w,me.lanes|=T,In|=T;w=N.action,ja&&l(i,w),i=N.hasEagerState?N.eagerState:l(i,w)}else T={lane:w,revertLane:N.revertLane,gesture:N.gesture,action:N.action,hasEagerState:N.hasEagerState,eagerState:N.eagerState,next:null},v===null?(r=v=T,u=i):v=v.next=T,me.lanes|=w,In|=w;N=N.next}while(N!==null&&N!==t);if(v===null?u=i:v.next=r,!dl(i,e.memoizedState)&&(Tt=!0,_&&(l=Ba,l!==null)))throw l;e.memoizedState=i,e.baseState=u,e.baseQueue=v,n.lastRenderedState=i}return a===null&&(n.lanes=0),[e.memoizedState,n.dispatch]}function Fu(e){var t=bt(),l=t.queue;if(l===null)throw Error(d(311));l.lastRenderedReducer=e;var n=l.dispatch,a=l.pending,i=t.memoizedState;if(a!==null){l.pending=null;var u=a=a.next;do i=e(i,u.action),u=u.next;while(u!==a);dl(i,t.memoizedState)||(Tt=!0),t.memoizedState=i,t.baseQueue===null&&(t.baseState=i),l.lastRenderedState=i}return[i,n]}function Ar(e,t,l){var n=me,a=bt(),i=Ce;if(i){if(l===void 0)throw Error(d(407));l=l()}else l=t();var u=!dl((Ye||a).memoizedState,l);if(u&&(a.memoizedState=l,Tt=!0),a=a.queue,tc(zr.bind(null,n,a,e),[e]),a.getSnapshot!==t||u||Nt!==null&&Nt.memoizedState.tag&1){if(n.flags|=2048,Ka(9,{destroy:void 0},Dr.bind(null,n,a,l,t),null),Ke===null)throw Error(d(349));i||(Tn&127)!==0||Rr(n,t,l)}return l}function Rr(e,t,l){e.flags|=16384,e={getSnapshot:t,value:l},t=me.updateQueue,t===null?(t=bs(),me.updateQueue=t,t.stores=[e]):(l=t.stores,l===null?t.stores=[e]:l.push(e))}function Dr(e,t,l,n){t.value=l,t.getSnapshot=n,Or(t)&&_r(e)}function zr(e,t,l){return l(function(){Or(t)&&_r(e)})}function Or(e){var t=e.getSnapshot;e=e.value;try{var l=t();return!dl(e,l)}catch{return!0}}function _r(e){var t=ma(e,2);t!==null&&cl(t,e,2)}function Pu(e){var t=Wt();if(typeof e=="function"){var l=e;if(e=l(),ja){kt(!0);try{l()}finally{kt(!1)}}}return t.memoizedState=t.baseState=e,t.queue={pending:null,lanes:0,dispatch:null,lastRenderedReducer:En,lastRenderedState:e},t}function Mr(e,t,l,n){return e.baseState=l,Wu(e,Ye,typeof n=="function"?n:En)}function Rh(e,t,l,n,a){if(Ts(e))throw Error(d(485));if(e=t.action,e!==null){var i={payload:a,action:e,next:null,isTransition:!0,status:"pending",value:null,reason:null,listeners:[],then:function(u){i.listeners.push(u)}};D.T!==null?l(!0):i.isTransition=!1,n(i),l=t.pending,l===null?(i.next=t.pending=i,kr(t,i)):(i.next=l.next,t.pending=l.next=i)}}function kr(e,t){var l=t.action,n=t.payload,a=e.state;if(t.isTransition){var i=D.T,u={};D.T=u;try{var r=l(a,n),v=D.S;v!==null&&v(u,r),wr(e,t,r)}catch(N){ec(e,t,N)}finally{i!==null&&u.types!==null&&(i.types=u.types),D.T=i}}else try{i=l(a,n),wr(e,t,i)}catch(N){ec(e,t,N)}}function wr(e,t,l){l!==null&&typeof l=="object"&&typeof l.then=="function"?l.then(function(n){Ur(e,t,n)},function(n){return ec(e,t,n)}):Ur(e,t,l)}function Ur(e,t,l){t.status="fulfilled",t.value=l,Hr(t),e.state=l,t=e.pending,t!==null&&(l=t.next,l===t?e.pending=null:(l=l.next,t.next=l,kr(e,l)))}function ec(e,t,l){var n=e.pending;if(e.pending=null,n!==null){n=n.next;do t.status="rejected",t.reason=l,Hr(t),t=t.next;while(t!==n)}e.action=null}function Hr(e){e=e.listeners;for(var t=0;t<e.length;t++)(0,e[t])()}function Lr(e,t){return t}function qr(e,t){if(Ce){var l=Ke.formState;if(l!==null){e:{var n=me;if(Ce){if(Fe){t:{for(var a=Fe,i=Hl;a.nodeType!==8;){if(!i){a=null;break t}if(a=ql(a.nextSibling),a===null){a=null;break t}}i=a.data,a=i==="F!"||i==="F"?a:null}if(a){Fe=ql(a.nextSibling),n=a.data==="F!";break e}}Bn(n)}n=!1}n&&(t=l[0])}}return l=Wt(),l.memoizedState=l.baseState=t,n={pending:null,lanes:0,dispatch:null,lastRenderedReducer:Lr,lastRenderedState:t},l.queue=n,l=ad.bind(null,me,n),n.dispatch=l,n=Pu(!1),i=sc.bind(null,me,!1,n.queue),n=Wt(),a={state:t,dispatch:null,action:e,pending:null},n.queue=a,l=Rh.bind(null,me,a,i,l),a.dispatch=l,n.memoizedState=e,[t,l,!1]}function Gr(e){var t=bt();return Br(t,Ye,e)}function Br(e,t,l){if(t=Wu(e,t,Lr)[0],e=xs(En)[0],typeof t=="object"&&t!==null&&typeof t.then=="function")try{var n=Ni(t)}catch(u){throw u===Ya?ds:u}else n=t;t=bt();var a=t.queue,i=a.dispatch;return l!==t.memoizedState&&(me.flags|=2048,Ka(9,{destroy:void 0},Dh.bind(null,a,l),null)),[n,i,e]}function Dh(e,t){e.action=t}function Yr(e){var t=bt(),l=Ye;if(l!==null)return Br(t,l,e);bt(),t=t.memoizedState,l=bt();var n=l.queue.dispatch;return l.memoizedState=e,[t,n,!1]}function Ka(e,t,l,n){return e={tag:e,create:l,deps:n,inst:t,next:null},t=me.updateQueue,t===null&&(t=bs(),me.updateQueue=t),l=t.lastEffect,l===null?t.lastEffect=e.next=e:(n=l.next,l.next=e,e.next=n,t.lastEffect=e),e}function Qr(){return bt().memoizedState}function js(e,t,l,n){var a=Wt();me.flags|=e,a.memoizedState=Ka(1|t,{destroy:void 0},l,n===void 0?null:n)}function Ns(e,t,l,n){var a=bt();n=n===void 0?null:n;var i=a.memoizedState.inst;Ye!==null&&n!==null&&Zu(n,Ye.memoizedState.deps)?a.memoizedState=Ka(t,i,l,n):(me.flags|=e,a.memoizedState=Ka(1|t,i,l,n))}function Xr(e,t){js(8390656,8,e,t)}function tc(e,t){Ns(2048,8,e,t)}function zh(e){me.flags|=4;var t=me.updateQueue;if(t===null)t=bs(),me.updateQueue=t,t.events=[e];else{var l=t.events;l===null?t.events=[e]:l.push(e)}}function Zr(e){var t=bt().memoizedState;return zh({ref:t,nextImpl:e}),function(){if((we&2)!==0)throw Error(d(440));return t.impl.apply(void 0,arguments)}}function Vr(e,t){return Ns(4,2,e,t)}function Kr(e,t){return Ns(4,4,e,t)}function $r(e,t){if(typeof t=="function"){e=e();var l=t(e);return function(){typeof l=="function"?l():t(null)}}if(t!=null)return e=e(),t.current=e,function(){t.current=null}}function Jr(e,t,l){l=l!=null?l.concat([e]):null,Ns(4,4,$r.bind(null,t,e),l)}function lc(){}function Ir(e,t){var l=bt();t=t===void 0?null:t;var n=l.memoizedState;return t!==null&&Zu(t,n[1])?n[0]:(l.memoizedState=[e,t],e)}function Wr(e,t){var l=bt();t=t===void 0?null:t;var n=l.memoizedState;if(t!==null&&Zu(t,n[1]))return n[0];if(n=e(),ja){kt(!0);try{e()}finally{kt(!1)}}return l.memoizedState=[n,t],n}function nc(e,t,l){return l===void 0||(Tn&1073741824)!==0&&(xe&261930)===0?e.memoizedState=t:(e.memoizedState=l,e=Fd(),me.lanes|=e,In|=e,l)}function Fr(e,t,l,n){return dl(l,t)?l:Xa.current!==null?(e=nc(e,l,n),dl(e,t)||(Tt=!0),e):(Tn&42)===0||(Tn&1073741824)!==0&&(xe&261930)===0?(Tt=!0,e.memoizedState=l):(e=Fd(),me.lanes|=e,In|=e,t)}function Pr(e,t,l,n,a){var i=Q.p;Q.p=i!==0&&8>i?i:8;var u=D.T,r={};D.T=r,sc(e,!1,t,l);try{var v=a(),N=D.S;if(N!==null&&N(r,v),v!==null&&typeof v=="object"&&typeof v.then=="function"){var _=Eh(v,n);Ti(e,t,_,pl(e))}else Ti(e,t,n,pl(e))}catch(w){Ti(e,t,{then:function(){},status:"rejected",reason:w},pl())}finally{Q.p=i,u!==null&&r.types!==null&&(u.types=r.types),D.T=u}}function Oh(){}function ac(e,t,l,n){if(e.tag!==5)throw Error(d(476));var a=ed(e).queue;Pr(e,a,t,ne,l===null?Oh:function(){return td(e),l(n)})}function ed(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:ne,baseState:ne,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:En,lastRenderedState:ne},next:null};var l={};return t.next={memoizedState:l,baseState:l,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:En,lastRenderedState:l},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function td(e){var t=ed(e);t.next===null&&(t=e.alternate.memoizedState),Ti(e,t.next.queue,{},pl())}function ic(){return Lt(Bi)}function ld(){return bt().memoizedState}function nd(){return bt().memoizedState}function _h(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var l=pl();e=Xn(l);var n=Zn(t,e,l);n!==null&&(cl(n,t,l),bi(n,t,l)),t={cache:ku()},e.payload=t;return}t=t.return}}function Mh(e,t,l){var n=pl();l={lane:n,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},Ts(e)?id(t,l):(l=Nu(e,t,l,n),l!==null&&(cl(l,e,n),sd(l,t,n)))}function ad(e,t,l){var n=pl();Ti(e,t,l,n)}function Ti(e,t,l,n){var a={lane:n,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null};if(Ts(e))id(t,a);else{var i=e.alternate;if(e.lanes===0&&(i===null||i.lanes===0)&&(i=t.lastRenderedReducer,i!==null))try{var u=t.lastRenderedState,r=i(u,l);if(a.hasEagerState=!0,a.eagerState=r,dl(r,u))return as(e,t,a,0),Ke===null&&ns(),!1}catch{}if(l=Nu(e,t,a,n),l!==null)return cl(l,e,n),sd(l,t,n),!0}return!1}function sc(e,t,l,n){if(n={lane:2,revertLane:Lc(),gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},Ts(e)){if(t)throw Error(d(479))}else t=Nu(e,l,n,2),t!==null&&cl(t,e,2)}function Ts(e){var t=e.alternate;return e===me||t!==null&&t===me}function id(e,t){Za=ps=!0;var l=e.pending;l===null?t.next=t:(t.next=l.next,l.next=t),e.pending=t}function sd(e,t,l){if((l&4194048)!==0){var n=t.lanes;n&=e.pendingLanes,l|=n,t.lanes=l,Ie(e,l)}}var Ei={readContext:Lt,use:Ss,useCallback:ut,useContext:ut,useEffect:ut,useImperativeHandle:ut,useLayoutEffect:ut,useInsertionEffect:ut,useMemo:ut,useReducer:ut,useRef:ut,useState:ut,useDebugValue:ut,useDeferredValue:ut,useTransition:ut,useSyncExternalStore:ut,useId:ut,useHostTransitionStatus:ut,useFormState:ut,useActionState:ut,useOptimistic:ut,useMemoCache:ut,useCacheRefresh:ut};Ei.useEffectEvent=ut;var ud={readContext:Lt,use:Ss,useCallback:function(e,t){return Wt().memoizedState=[e,t===void 0?null:t],e},useContext:Lt,useEffect:Xr,useImperativeHandle:function(e,t,l){l=l!=null?l.concat([e]):null,js(4194308,4,$r.bind(null,t,e),l)},useLayoutEffect:function(e,t){return js(4194308,4,e,t)},useInsertionEffect:function(e,t){js(4,2,e,t)},useMemo:function(e,t){var l=Wt();t=t===void 0?null:t;var n=e();if(ja){kt(!0);try{e()}finally{kt(!1)}}return l.memoizedState=[n,t],n},useReducer:function(e,t,l){var n=Wt();if(l!==void 0){var a=l(t);if(ja){kt(!0);try{l(t)}finally{kt(!1)}}}else a=t;return n.memoizedState=n.baseState=a,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:a},n.queue=e,e=e.dispatch=Mh.bind(null,me,e),[n.memoizedState,e]},useRef:function(e){var t=Wt();return e={current:e},t.memoizedState=e},useState:function(e){e=Pu(e);var t=e.queue,l=ad.bind(null,me,t);return t.dispatch=l,[e.memoizedState,l]},useDebugValue:lc,useDeferredValue:function(e,t){var l=Wt();return nc(l,e,t)},useTransition:function(){var e=Pu(!1);return e=Pr.bind(null,me,e.queue,!0,!1),Wt().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,l){var n=me,a=Wt();if(Ce){if(l===void 0)throw Error(d(407));l=l()}else{if(l=t(),Ke===null)throw Error(d(349));(xe&127)!==0||Rr(n,t,l)}a.memoizedState=l;var i={value:l,getSnapshot:t};return a.queue=i,Xr(zr.bind(null,n,i,e),[e]),n.flags|=2048,Ka(9,{destroy:void 0},Dr.bind(null,n,i,l,t),null),l},useId:function(){var e=Wt(),t=Ke.identifierPrefix;if(Ce){var l=on,n=cn;l=(n&~(1<<32-Ct(n)-1)).toString(32)+l,t="_"+t+"R_"+l,l=gs++,0<l&&(t+="H"+l.toString(32)),t+="_"}else l=Ch++,t="_"+t+"r_"+l.toString(32)+"_";return e.memoizedState=t},useHostTransitionStatus:ic,useFormState:qr,useActionState:qr,useOptimistic:function(e){var t=Wt();t.memoizedState=t.baseState=e;var l={pending:null,lanes:0,dispatch:null,lastRenderedReducer:null,lastRenderedState:null};return t.queue=l,t=sc.bind(null,me,!0,l),l.dispatch=t,[e,t]},useMemoCache:Iu,useCacheRefresh:function(){return Wt().memoizedState=_h.bind(null,me)},useEffectEvent:function(e){var t=Wt(),l={impl:e};return t.memoizedState=l,function(){if((we&2)!==0)throw Error(d(440));return l.impl.apply(void 0,arguments)}}},uc={readContext:Lt,use:Ss,useCallback:Ir,useContext:Lt,useEffect:tc,useImperativeHandle:Jr,useInsertionEffect:Vr,useLayoutEffect:Kr,useMemo:Wr,useReducer:xs,useRef:Qr,useState:function(){return xs(En)},useDebugValue:lc,useDeferredValue:function(e,t){var l=bt();return Fr(l,Ye.memoizedState,e,t)},useTransition:function(){var e=xs(En)[0],t=bt().memoizedState;return[typeof e=="boolean"?e:Ni(e),t]},useSyncExternalStore:Ar,useId:ld,useHostTransitionStatus:ic,useFormState:Gr,useActionState:Gr,useOptimistic:function(e,t){var l=bt();return Mr(l,Ye,e,t)},useMemoCache:Iu,useCacheRefresh:nd};uc.useEffectEvent=Zr;var cd={readContext:Lt,use:Ss,useCallback:Ir,useContext:Lt,useEffect:tc,useImperativeHandle:Jr,useInsertionEffect:Vr,useLayoutEffect:Kr,useMemo:Wr,useReducer:Fu,useRef:Qr,useState:function(){return Fu(En)},useDebugValue:lc,useDeferredValue:function(e,t){var l=bt();return Ye===null?nc(l,e,t):Fr(l,Ye.memoizedState,e,t)},useTransition:function(){var e=Fu(En)[0],t=bt().memoizedState;return[typeof e=="boolean"?e:Ni(e),t]},useSyncExternalStore:Ar,useId:ld,useHostTransitionStatus:ic,useFormState:Yr,useActionState:Yr,useOptimistic:function(e,t){var l=bt();return Ye!==null?Mr(l,Ye,e,t):(l.baseState=e,[e,l.queue.dispatch])},useMemoCache:Iu,useCacheRefresh:nd};cd.useEffectEvent=Zr;function cc(e,t,l,n){t=e.memoizedState,l=l(n,t),l=l==null?t:B({},t,l),e.memoizedState=l,e.lanes===0&&(e.updateQueue.baseState=l)}var oc={enqueueSetState:function(e,t,l){e=e._reactInternals;var n=pl(),a=Xn(n);a.payload=t,l!=null&&(a.callback=l),t=Zn(e,a,n),t!==null&&(cl(t,e,n),bi(t,e,n))},enqueueReplaceState:function(e,t,l){e=e._reactInternals;var n=pl(),a=Xn(n);a.tag=1,a.payload=t,l!=null&&(a.callback=l),t=Zn(e,a,n),t!==null&&(cl(t,e,n),bi(t,e,n))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var l=pl(),n=Xn(l);n.tag=2,t!=null&&(n.callback=t),t=Zn(e,n,l),t!==null&&(cl(t,e,l),bi(t,e,l))}};function od(e,t,l,n,a,i,u){return e=e.stateNode,typeof e.shouldComponentUpdate=="function"?e.shouldComponentUpdate(n,i,u):t.prototype&&t.prototype.isPureReactComponent?!di(l,n)||!di(a,i):!0}function rd(e,t,l,n){e=t.state,typeof t.componentWillReceiveProps=="function"&&t.componentWillReceiveProps(l,n),typeof t.UNSAFE_componentWillReceiveProps=="function"&&t.UNSAFE_componentWillReceiveProps(l,n),t.state!==e&&oc.enqueueReplaceState(t,t.state,null)}function Na(e,t){var l=t;if("ref"in t){l={};for(var n in t)n!=="ref"&&(l[n]=t[n])}if(e=e.defaultProps){l===t&&(l=B({},l));for(var a in e)l[a]===void 0&&(l[a]=e[a])}return l}function dd(e){ls(e)}function fd(e){console.error(e)}function md(e){ls(e)}function Es(e,t){try{var l=e.onUncaughtError;l(t.value,{componentStack:t.stack})}catch(n){setTimeout(function(){throw n})}}function hd(e,t,l){try{var n=e.onCaughtError;n(l.value,{componentStack:l.stack,errorBoundary:t.tag===1?t.stateNode:null})}catch(a){setTimeout(function(){throw a})}}function rc(e,t,l){return l=Xn(l),l.tag=3,l.payload={element:null},l.callback=function(){Es(e,t)},l}function vd(e){return e=Xn(e),e.tag=3,e}function yd(e,t,l,n){var a=l.type.getDerivedStateFromError;if(typeof a=="function"){var i=n.value;e.payload=function(){return a(i)},e.callback=function(){hd(t,l,n)}}var u=l.stateNode;u!==null&&typeof u.componentDidCatch=="function"&&(e.callback=function(){hd(t,l,n),typeof a!="function"&&(Wn===null?Wn=new Set([this]):Wn.add(this));var r=n.stack;this.componentDidCatch(n.value,{componentStack:r!==null?r:""})})}function kh(e,t,l,n,a){if(l.flags|=32768,n!==null&&typeof n=="object"&&typeof n.then=="function"){if(t=l.alternate,t!==null&&qa(t,l,a,!0),l=ml.current,l!==null){switch(l.tag){case 31:case 13:return Ll===null?Hs():l.alternate===null&&ct===0&&(ct=3),l.flags&=-257,l.flags|=65536,l.lanes=a,n===fs?l.flags|=16384:(t=l.updateQueue,t===null?l.updateQueue=new Set([n]):t.add(n),wc(e,n,a)),!1;case 22:return l.flags|=65536,n===fs?l.flags|=16384:(t=l.updateQueue,t===null?(t={transitions:null,markerInstances:null,retryQueue:new Set([n])},l.updateQueue=t):(l=t.retryQueue,l===null?t.retryQueue=new Set([n]):l.add(n)),wc(e,n,a)),!1}throw Error(d(435,l.tag))}return wc(e,n,a),Hs(),!1}if(Ce)return t=ml.current,t!==null?((t.flags&65536)===0&&(t.flags|=256),t.flags|=65536,t.lanes=a,n!==Du&&(e=Error(d(422),{cause:n}),hi(kl(e,l)))):(n!==Du&&(t=Error(d(423),{cause:n}),hi(kl(t,l))),e=e.current.alternate,e.flags|=65536,a&=-a,e.lanes|=a,n=kl(n,l),a=rc(e.stateNode,n,a),Gu(e,a),ct!==4&&(ct=2)),!1;var i=Error(d(520),{cause:n});if(i=kl(i,l),Mi===null?Mi=[i]:Mi.push(i),ct!==4&&(ct=2),t===null)return!0;n=kl(n,l),l=t;do{switch(l.tag){case 3:return l.flags|=65536,e=a&-a,l.lanes|=e,e=rc(l.stateNode,n,e),Gu(l,e),!1;case 1:if(t=l.type,i=l.stateNode,(l.flags&128)===0&&(typeof t.getDerivedStateFromError=="function"||i!==null&&typeof i.componentDidCatch=="function"&&(Wn===null||!Wn.has(i))))return l.flags|=65536,a&=-a,l.lanes|=a,a=vd(a),yd(a,e,l,n),Gu(l,a),!1}l=l.return}while(l!==null);return!1}var dc=Error(d(461)),Tt=!1;function qt(e,t,l,n){t.child=e===null?Sr(t,null,l,n):xa(t,e.child,l,n)}function pd(e,t,l,n,a){l=l.render;var i=t.ref;if("ref"in n){var u={};for(var r in n)r!=="ref"&&(u[r]=n[r])}else u=n;return pa(t),n=Vu(e,t,l,u,i,a),r=Ku(),e!==null&&!Tt?($u(e,t,a),Cn(e,t,a)):(Ce&&r&&Au(t),t.flags|=1,qt(e,t,n,a),t.child)}function gd(e,t,l,n,a){if(e===null){var i=l.type;return typeof i=="function"&&!Tu(i)&&i.defaultProps===void 0&&l.compare===null?(t.tag=15,t.type=i,bd(e,t,i,n,a)):(e=ss(l.type,null,n,t,t.mode,a),e.ref=t.ref,e.return=t,t.child=e)}if(i=e.child,!bc(e,a)){var u=i.memoizedProps;if(l=l.compare,l=l!==null?l:di,l(u,n)&&e.ref===t.ref)return Cn(e,t,a)}return t.flags|=1,e=Sn(i,n),e.ref=t.ref,e.return=t,t.child=e}function bd(e,t,l,n,a){if(e!==null){var i=e.memoizedProps;if(di(i,n)&&e.ref===t.ref)if(Tt=!1,t.pendingProps=n=i,bc(e,a))(e.flags&131072)!==0&&(Tt=!0);else return t.lanes=e.lanes,Cn(e,t,a)}return fc(e,t,l,n,a)}function Sd(e,t,l,n){var a=n.children,i=e!==null?e.memoizedState:null;if(e===null&&t.stateNode===null&&(t.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),n.mode==="hidden"){if((t.flags&128)!==0){if(i=i!==null?i.baseLanes|l:l,e!==null){for(n=t.child=e.child,a=0;n!==null;)a=a|n.lanes|n.childLanes,n=n.sibling;n=a&~i}else n=0,t.child=null;return xd(e,t,i,l,n)}if((l&536870912)!==0)t.memoizedState={baseLanes:0,cachePool:null},e!==null&&rs(t,i!==null?i.cachePool:null),i!==null?Nr(t,i):Yu(),Tr(t);else return n=t.lanes=536870912,xd(e,t,i!==null?i.baseLanes|l:l,l,n)}else i!==null?(rs(t,i.cachePool),Nr(t,i),Kn(),t.memoizedState=null):(e!==null&&rs(t,null),Yu(),Kn());return qt(e,t,a,l),t.child}function Ci(e,t){return e!==null&&e.tag===22||t.stateNode!==null||(t.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),t.sibling}function xd(e,t,l,n,a){var i=Uu();return i=i===null?null:{parent:jt._currentValue,pool:i},t.memoizedState={baseLanes:l,cachePool:i},e!==null&&rs(t,null),Yu(),Tr(t),e!==null&&qa(e,t,n,!0),t.childLanes=a,null}function Cs(e,t){return t=Rs({mode:t.mode,children:t.children},e.mode),t.ref=e.ref,e.child=t,t.return=e,t}function jd(e,t,l){return xa(t,e.child,null,l),e=Cs(t,t.pendingProps),e.flags|=2,hl(t),t.memoizedState=null,e}function wh(e,t,l){var n=t.pendingProps,a=(t.flags&128)!==0;if(t.flags&=-129,e===null){if(Ce){if(n.mode==="hidden")return e=Cs(t,n),t.lanes=536870912,Ci(null,e);if(Xu(t),(e=Fe)?(e=wf(e,Hl),e=e!==null&&e.data==="&"?e:null,e!==null&&(t.memoizedState={dehydrated:e,treeContext:qn!==null?{id:cn,overflow:on}:null,retryLane:536870912,hydrationErrors:null},l=ir(e),l.return=t,t.child=l,Ht=t,Fe=null)):e=null,e===null)throw Bn(t);return t.lanes=536870912,null}return Cs(t,n)}var i=e.memoizedState;if(i!==null){var u=i.dehydrated;if(Xu(t),a)if(t.flags&256)t.flags&=-257,t=jd(e,t,l);else if(t.memoizedState!==null)t.child=e.child,t.flags|=128,t=null;else throw Error(d(558));else if(Tt||qa(e,t,l,!1),a=(l&e.childLanes)!==0,Tt||a){if(n=Ke,n!==null&&(u=Jt(n,l),u!==0&&u!==i.retryLane))throw i.retryLane=u,ma(e,u),cl(n,e,u),dc;Hs(),t=jd(e,t,l)}else e=i.treeContext,Fe=ql(u.nextSibling),Ht=t,Ce=!0,Gn=null,Hl=!1,e!==null&&cr(t,e),t=Cs(t,n),t.flags|=4096;return t}return e=Sn(e.child,{mode:n.mode,children:n.children}),e.ref=t.ref,t.child=e,e.return=t,e}function As(e,t){var l=t.ref;if(l===null)e!==null&&e.ref!==null&&(t.flags|=4194816);else{if(typeof l!="function"&&typeof l!="object")throw Error(d(284));(e===null||e.ref!==l)&&(t.flags|=4194816)}}function fc(e,t,l,n,a){return pa(t),l=Vu(e,t,l,n,void 0,a),n=Ku(),e!==null&&!Tt?($u(e,t,a),Cn(e,t,a)):(Ce&&n&&Au(t),t.flags|=1,qt(e,t,l,a),t.child)}function Nd(e,t,l,n,a,i){return pa(t),t.updateQueue=null,l=Cr(t,n,l,a),Er(e),n=Ku(),e!==null&&!Tt?($u(e,t,i),Cn(e,t,i)):(Ce&&n&&Au(t),t.flags|=1,qt(e,t,l,i),t.child)}function Td(e,t,l,n,a){if(pa(t),t.stateNode===null){var i=wa,u=l.contextType;typeof u=="object"&&u!==null&&(i=Lt(u)),i=new l(n,i),t.memoizedState=i.state!==null&&i.state!==void 0?i.state:null,i.updater=oc,t.stateNode=i,i._reactInternals=t,i=t.stateNode,i.props=n,i.state=t.memoizedState,i.refs={},Lu(t),u=l.contextType,i.context=typeof u=="object"&&u!==null?Lt(u):wa,i.state=t.memoizedState,u=l.getDerivedStateFromProps,typeof u=="function"&&(cc(t,l,u,n),i.state=t.memoizedState),typeof l.getDerivedStateFromProps=="function"||typeof i.getSnapshotBeforeUpdate=="function"||typeof i.UNSAFE_componentWillMount!="function"&&typeof i.componentWillMount!="function"||(u=i.state,typeof i.componentWillMount=="function"&&i.componentWillMount(),typeof i.UNSAFE_componentWillMount=="function"&&i.UNSAFE_componentWillMount(),u!==i.state&&oc.enqueueReplaceState(i,i.state,null),xi(t,n,i,a),Si(),i.state=t.memoizedState),typeof i.componentDidMount=="function"&&(t.flags|=4194308),n=!0}else if(e===null){i=t.stateNode;var r=t.memoizedProps,v=Na(l,r);i.props=v;var N=i.context,_=l.contextType;u=wa,typeof _=="object"&&_!==null&&(u=Lt(_));var w=l.getDerivedStateFromProps;_=typeof w=="function"||typeof i.getSnapshotBeforeUpdate=="function",r=t.pendingProps!==r,_||typeof i.UNSAFE_componentWillReceiveProps!="function"&&typeof i.componentWillReceiveProps!="function"||(r||N!==u)&&rd(t,i,n,u),Qn=!1;var T=t.memoizedState;i.state=T,xi(t,n,i,a),Si(),N=t.memoizedState,r||T!==N||Qn?(typeof w=="function"&&(cc(t,l,w,n),N=t.memoizedState),(v=Qn||od(t,l,v,n,T,N,u))?(_||typeof i.UNSAFE_componentWillMount!="function"&&typeof i.componentWillMount!="function"||(typeof i.componentWillMount=="function"&&i.componentWillMount(),typeof i.UNSAFE_componentWillMount=="function"&&i.UNSAFE_componentWillMount()),typeof i.componentDidMount=="function"&&(t.flags|=4194308)):(typeof i.componentDidMount=="function"&&(t.flags|=4194308),t.memoizedProps=n,t.memoizedState=N),i.props=n,i.state=N,i.context=u,n=v):(typeof i.componentDidMount=="function"&&(t.flags|=4194308),n=!1)}else{i=t.stateNode,qu(e,t),u=t.memoizedProps,_=Na(l,u),i.props=_,w=t.pendingProps,T=i.context,N=l.contextType,v=wa,typeof N=="object"&&N!==null&&(v=Lt(N)),r=l.getDerivedStateFromProps,(N=typeof r=="function"||typeof i.getSnapshotBeforeUpdate=="function")||typeof i.UNSAFE_componentWillReceiveProps!="function"&&typeof i.componentWillReceiveProps!="function"||(u!==w||T!==v)&&rd(t,i,n,v),Qn=!1,T=t.memoizedState,i.state=T,xi(t,n,i,a),Si();var A=t.memoizedState;u!==w||T!==A||Qn||e!==null&&e.dependencies!==null&&cs(e.dependencies)?(typeof r=="function"&&(cc(t,l,r,n),A=t.memoizedState),(_=Qn||od(t,l,_,n,T,A,v)||e!==null&&e.dependencies!==null&&cs(e.dependencies))?(N||typeof i.UNSAFE_componentWillUpdate!="function"&&typeof i.componentWillUpdate!="function"||(typeof i.componentWillUpdate=="function"&&i.componentWillUpdate(n,A,v),typeof i.UNSAFE_componentWillUpdate=="function"&&i.UNSAFE_componentWillUpdate(n,A,v)),typeof i.componentDidUpdate=="function"&&(t.flags|=4),typeof i.getSnapshotBeforeUpdate=="function"&&(t.flags|=1024)):(typeof i.componentDidUpdate!="function"||u===e.memoizedProps&&T===e.memoizedState||(t.flags|=4),typeof i.getSnapshotBeforeUpdate!="function"||u===e.memoizedProps&&T===e.memoizedState||(t.flags|=1024),t.memoizedProps=n,t.memoizedState=A),i.props=n,i.state=A,i.context=v,n=_):(typeof i.componentDidUpdate!="function"||u===e.memoizedProps&&T===e.memoizedState||(t.flags|=4),typeof i.getSnapshotBeforeUpdate!="function"||u===e.memoizedProps&&T===e.memoizedState||(t.flags|=1024),n=!1)}return i=n,As(e,t),n=(t.flags&128)!==0,i||n?(i=t.stateNode,l=n&&typeof l.getDerivedStateFromError!="function"?null:i.render(),t.flags|=1,e!==null&&n?(t.child=xa(t,e.child,null,a),t.child=xa(t,null,l,a)):qt(e,t,l,a),t.memoizedState=i.state,e=t.child):e=Cn(e,t,a),e}function Ed(e,t,l,n){return va(),t.flags|=256,qt(e,t,l,n),t.child}var mc={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null};function hc(e){return{baseLanes:e,cachePool:hr()}}function vc(e,t,l){return e=e!==null?e.childLanes&~l:0,t&&(e|=yl),e}function Cd(e,t,l){var n=t.pendingProps,a=!1,i=(t.flags&128)!==0,u;if((u=i)||(u=e!==null&&e.memoizedState===null?!1:(gt.current&2)!==0),u&&(a=!0,t.flags&=-129),u=(t.flags&32)!==0,t.flags&=-33,e===null){if(Ce){if(a?Vn(t):Kn(),(e=Fe)?(e=wf(e,Hl),e=e!==null&&e.data!=="&"?e:null,e!==null&&(t.memoizedState={dehydrated:e,treeContext:qn!==null?{id:cn,overflow:on}:null,retryLane:536870912,hydrationErrors:null},l=ir(e),l.return=t,t.child=l,Ht=t,Fe=null)):e=null,e===null)throw Bn(t);return Wc(e)?t.lanes=32:t.lanes=536870912,null}var r=n.children;return n=n.fallback,a?(Kn(),a=t.mode,r=Rs({mode:"hidden",children:r},a),n=ha(n,a,l,null),r.return=t,n.return=t,r.sibling=n,t.child=r,n=t.child,n.memoizedState=hc(l),n.childLanes=vc(e,u,l),t.memoizedState=mc,Ci(null,n)):(Vn(t),yc(t,r))}var v=e.memoizedState;if(v!==null&&(r=v.dehydrated,r!==null)){if(i)t.flags&256?(Vn(t),t.flags&=-257,t=pc(e,t,l)):t.memoizedState!==null?(Kn(),t.child=e.child,t.flags|=128,t=null):(Kn(),r=n.fallback,a=t.mode,n=Rs({mode:"visible",children:n.children},a),r=ha(r,a,l,null),r.flags|=2,n.return=t,r.return=t,n.sibling=r,t.child=n,xa(t,e.child,null,l),n=t.child,n.memoizedState=hc(l),n.childLanes=vc(e,u,l),t.memoizedState=mc,t=Ci(null,n));else if(Vn(t),Wc(r)){if(u=r.nextSibling&&r.nextSibling.dataset,u)var N=u.dgst;u=N,n=Error(d(419)),n.stack="",n.digest=u,hi({value:n,source:null,stack:null}),t=pc(e,t,l)}else if(Tt||qa(e,t,l,!1),u=(l&e.childLanes)!==0,Tt||u){if(u=Ke,u!==null&&(n=Jt(u,l),n!==0&&n!==v.retryLane))throw v.retryLane=n,ma(e,n),cl(u,e,n),dc;Ic(r)||Hs(),t=pc(e,t,l)}else Ic(r)?(t.flags|=192,t.child=e.child,t=null):(e=v.treeContext,Fe=ql(r.nextSibling),Ht=t,Ce=!0,Gn=null,Hl=!1,e!==null&&cr(t,e),t=yc(t,n.children),t.flags|=4096);return t}return a?(Kn(),r=n.fallback,a=t.mode,v=e.child,N=v.sibling,n=Sn(v,{mode:"hidden",children:n.children}),n.subtreeFlags=v.subtreeFlags&65011712,N!==null?r=Sn(N,r):(r=ha(r,a,l,null),r.flags|=2),r.return=t,n.return=t,n.sibling=r,t.child=n,Ci(null,n),n=t.child,r=e.child.memoizedState,r===null?r=hc(l):(a=r.cachePool,a!==null?(v=jt._currentValue,a=a.parent!==v?{parent:v,pool:v}:a):a=hr(),r={baseLanes:r.baseLanes|l,cachePool:a}),n.memoizedState=r,n.childLanes=vc(e,u,l),t.memoizedState=mc,Ci(e.child,n)):(Vn(t),l=e.child,e=l.sibling,l=Sn(l,{mode:"visible",children:n.children}),l.return=t,l.sibling=null,e!==null&&(u=t.deletions,u===null?(t.deletions=[e],t.flags|=16):u.push(e)),t.child=l,t.memoizedState=null,l)}function yc(e,t){return t=Rs({mode:"visible",children:t},e.mode),t.return=e,e.child=t}function Rs(e,t){return e=fl(22,e,null,t),e.lanes=0,e}function pc(e,t,l){return xa(t,e.child,null,l),e=yc(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function Ad(e,t,l){e.lanes|=t;var n=e.alternate;n!==null&&(n.lanes|=t),_u(e.return,t,l)}function gc(e,t,l,n,a,i){var u=e.memoizedState;u===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:n,tail:l,tailMode:a,treeForkCount:i}:(u.isBackwards=t,u.rendering=null,u.renderingStartTime=0,u.last=n,u.tail=l,u.tailMode=a,u.treeForkCount=i)}function Rd(e,t,l){var n=t.pendingProps,a=n.revealOrder,i=n.tail;n=n.children;var u=gt.current,r=(u&2)!==0;if(r?(u=u&1|2,t.flags|=128):u&=1,q(gt,u),qt(e,t,n,l),n=Ce?mi:0,!r&&e!==null&&(e.flags&128)!==0)e:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&Ad(e,l,t);else if(e.tag===19)Ad(e,l,t);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;e.sibling===null;){if(e.return===null||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}switch(a){case"forwards":for(l=t.child,a=null;l!==null;)e=l.alternate,e!==null&&ys(e)===null&&(a=l),l=l.sibling;l=a,l===null?(a=t.child,t.child=null):(a=l.sibling,l.sibling=null),gc(t,!1,a,l,i,n);break;case"backwards":case"unstable_legacy-backwards":for(l=null,a=t.child,t.child=null;a!==null;){if(e=a.alternate,e!==null&&ys(e)===null){t.child=a;break}e=a.sibling,a.sibling=l,l=a,a=e}gc(t,!0,l,null,i,n);break;case"together":gc(t,!1,null,null,void 0,n);break;default:t.memoizedState=null}return t.child}function Cn(e,t,l){if(e!==null&&(t.dependencies=e.dependencies),In|=t.lanes,(l&t.childLanes)===0)if(e!==null){if(qa(e,t,l,!1),(l&t.childLanes)===0)return null}else return null;if(e!==null&&t.child!==e.child)throw Error(d(153));if(t.child!==null){for(e=t.child,l=Sn(e,e.pendingProps),t.child=l,l.return=t;e.sibling!==null;)e=e.sibling,l=l.sibling=Sn(e,e.pendingProps),l.return=t;l.sibling=null}return t.child}function bc(e,t){return(e.lanes&t)!==0?!0:(e=e.dependencies,!!(e!==null&&cs(e)))}function Uh(e,t,l){switch(t.tag){case 3:tt(t,t.stateNode.containerInfo),Yn(t,jt,e.memoizedState.cache),va();break;case 27:case 5:gl(t);break;case 4:tt(t,t.stateNode.containerInfo);break;case 10:Yn(t,t.type,t.memoizedProps.value);break;case 31:if(t.memoizedState!==null)return t.flags|=128,Xu(t),null;break;case 13:var n=t.memoizedState;if(n!==null)return n.dehydrated!==null?(Vn(t),t.flags|=128,null):(l&t.child.childLanes)!==0?Cd(e,t,l):(Vn(t),e=Cn(e,t,l),e!==null?e.sibling:null);Vn(t);break;case 19:var a=(e.flags&128)!==0;if(n=(l&t.childLanes)!==0,n||(qa(e,t,l,!1),n=(l&t.childLanes)!==0),a){if(n)return Rd(e,t,l);t.flags|=128}if(a=t.memoizedState,a!==null&&(a.rendering=null,a.tail=null,a.lastEffect=null),q(gt,gt.current),n)break;return null;case 22:return t.lanes=0,Sd(e,t,l,t.pendingProps);case 24:Yn(t,jt,e.memoizedState.cache)}return Cn(e,t,l)}function Dd(e,t,l){if(e!==null)if(e.memoizedProps!==t.pendingProps)Tt=!0;else{if(!bc(e,l)&&(t.flags&128)===0)return Tt=!1,Uh(e,t,l);Tt=(e.flags&131072)!==0}else Tt=!1,Ce&&(t.flags&1048576)!==0&&ur(t,mi,t.index);switch(t.lanes=0,t.tag){case 16:e:{var n=t.pendingProps;if(e=ba(t.elementType),t.type=e,typeof e=="function")Tu(e)?(n=Na(e,n),t.tag=1,t=Td(null,t,e,n,l)):(t.tag=0,t=fc(null,t,e,n,l));else{if(e!=null){var a=e.$$typeof;if(a===St){t.tag=11,t=pd(null,t,e,n,l);break e}else if(a===fe){t.tag=14,t=gd(null,t,e,n,l);break e}}throw t=nt(e)||e,Error(d(306,t,""))}}return t;case 0:return fc(e,t,t.type,t.pendingProps,l);case 1:return n=t.type,a=Na(n,t.pendingProps),Td(e,t,n,a,l);case 3:e:{if(tt(t,t.stateNode.containerInfo),e===null)throw Error(d(387));n=t.pendingProps;var i=t.memoizedState;a=i.element,qu(e,t),xi(t,n,null,l);var u=t.memoizedState;if(n=u.cache,Yn(t,jt,n),n!==i.cache&&Mu(t,[jt],l,!0),Si(),n=u.element,i.isDehydrated)if(i={element:n,isDehydrated:!1,cache:u.cache},t.updateQueue.baseState=i,t.memoizedState=i,t.flags&256){t=Ed(e,t,n,l);break e}else if(n!==a){a=kl(Error(d(424)),t),hi(a),t=Ed(e,t,n,l);break e}else for(e=t.stateNode.containerInfo,e.nodeType===9?e=e.body:e=e.nodeName==="HTML"?e.ownerDocument.body:e,Fe=ql(e.firstChild),Ht=t,Ce=!0,Gn=null,Hl=!0,l=Sr(t,null,n,l),t.child=l;l;)l.flags=l.flags&-3|4096,l=l.sibling;else{if(va(),n===a){t=Cn(e,t,l);break e}qt(e,t,n,l)}t=t.child}return t;case 26:return As(e,t),e===null?(l=Bf(t.type,null,t.pendingProps,null))?t.memoizedState=l:Ce||(l=t.type,e=t.pendingProps,n=Xs(he.current).createElement(l),n[ue]=t,n[We]=e,Gt(n,l,e),Be(n),t.stateNode=n):t.memoizedState=Bf(t.type,e.memoizedProps,t.pendingProps,e.memoizedState),null;case 27:return gl(t),e===null&&Ce&&(n=t.stateNode=Lf(t.type,t.pendingProps,he.current),Ht=t,Hl=!0,a=Fe,ta(t.type)?(Fc=a,Fe=ql(n.firstChild)):Fe=a),qt(e,t,t.pendingProps.children,l),As(e,t),e===null&&(t.flags|=4194304),t.child;case 5:return e===null&&Ce&&((a=n=Fe)&&(n=fv(n,t.type,t.pendingProps,Hl),n!==null?(t.stateNode=n,Ht=t,Fe=ql(n.firstChild),Hl=!1,a=!0):a=!1),a||Bn(t)),gl(t),a=t.type,i=t.pendingProps,u=e!==null?e.memoizedProps:null,n=i.children,Kc(a,i)?n=null:u!==null&&Kc(a,u)&&(t.flags|=32),t.memoizedState!==null&&(a=Vu(e,t,Ah,null,null,l),Bi._currentValue=a),As(e,t),qt(e,t,n,l),t.child;case 6:return e===null&&Ce&&((e=l=Fe)&&(l=mv(l,t.pendingProps,Hl),l!==null?(t.stateNode=l,Ht=t,Fe=null,e=!0):e=!1),e||Bn(t)),null;case 13:return Cd(e,t,l);case 4:return tt(t,t.stateNode.containerInfo),n=t.pendingProps,e===null?t.child=xa(t,null,n,l):qt(e,t,n,l),t.child;case 11:return pd(e,t,t.type,t.pendingProps,l);case 7:return qt(e,t,t.pendingProps,l),t.child;case 8:return qt(e,t,t.pendingProps.children,l),t.child;case 12:return qt(e,t,t.pendingProps.children,l),t.child;case 10:return n=t.pendingProps,Yn(t,t.type,n.value),qt(e,t,n.children,l),t.child;case 9:return a=t.type._context,n=t.pendingProps.children,pa(t),a=Lt(a),n=n(a),t.flags|=1,qt(e,t,n,l),t.child;case 14:return gd(e,t,t.type,t.pendingProps,l);case 15:return bd(e,t,t.type,t.pendingProps,l);case 19:return Rd(e,t,l);case 31:return wh(e,t,l);case 22:return Sd(e,t,l,t.pendingProps);case 24:return pa(t),n=Lt(jt),e===null?(a=Uu(),a===null&&(a=Ke,i=ku(),a.pooledCache=i,i.refCount++,i!==null&&(a.pooledCacheLanes|=l),a=i),t.memoizedState={parent:n,cache:a},Lu(t),Yn(t,jt,a)):((e.lanes&l)!==0&&(qu(e,t),xi(t,null,null,l),Si()),a=e.memoizedState,i=t.memoizedState,a.parent!==n?(a={parent:n,cache:n},t.memoizedState=a,t.lanes===0&&(t.memoizedState=t.updateQueue.baseState=a),Yn(t,jt,n)):(n=i.cache,Yn(t,jt,n),n!==a.cache&&Mu(t,[jt],l,!0))),qt(e,t,t.pendingProps.children,l),t.child;case 29:throw t.pendingProps}throw Error(d(156,t.tag))}function An(e){e.flags|=4}function Sc(e,t,l,n,a){if((t=(e.mode&32)!==0)&&(t=!1),t){if(e.flags|=16777216,(a&335544128)===a)if(e.stateNode.complete)e.flags|=8192;else if(lf())e.flags|=8192;else throw Sa=fs,Hu}else e.flags&=-16777217}function zd(e,t){if(t.type!=="stylesheet"||(t.state.loading&4)!==0)e.flags&=-16777217;else if(e.flags|=16777216,!Vf(t))if(lf())e.flags|=8192;else throw Sa=fs,Hu}function Ds(e,t){t!==null&&(e.flags|=4),e.flags&16384&&(t=e.tag!==22?Un():536870912,e.lanes|=t,Wa|=t)}function Ai(e,t){if(!Ce)switch(e.tailMode){case"hidden":t=e.tail;for(var l=null;t!==null;)t.alternate!==null&&(l=t),t=t.sibling;l===null?e.tail=null:l.sibling=null;break;case"collapsed":l=e.tail;for(var n=null;l!==null;)l.alternate!==null&&(n=l),l=l.sibling;n===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:n.sibling=null}}function Pe(e){var t=e.alternate!==null&&e.alternate.child===e.child,l=0,n=0;if(t)for(var a=e.child;a!==null;)l|=a.lanes|a.childLanes,n|=a.subtreeFlags&65011712,n|=a.flags&65011712,a.return=e,a=a.sibling;else for(a=e.child;a!==null;)l|=a.lanes|a.childLanes,n|=a.subtreeFlags,n|=a.flags,a.return=e,a=a.sibling;return e.subtreeFlags|=n,e.childLanes=l,t}function Hh(e,t,l){var n=t.pendingProps;switch(Ru(t),t.tag){case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Pe(t),null;case 1:return Pe(t),null;case 3:return l=t.stateNode,n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),Nn(jt),Ae(),l.pendingContext&&(l.context=l.pendingContext,l.pendingContext=null),(e===null||e.child===null)&&(La(t)?An(t):e===null||e.memoizedState.isDehydrated&&(t.flags&256)===0||(t.flags|=1024,zu())),Pe(t),null;case 26:var a=t.type,i=t.memoizedState;return e===null?(An(t),i!==null?(Pe(t),zd(t,i)):(Pe(t),Sc(t,a,null,n,l))):i?i!==e.memoizedState?(An(t),Pe(t),zd(t,i)):(Pe(t),t.flags&=-16777217):(e=e.memoizedProps,e!==n&&An(t),Pe(t),Sc(t,a,e,n,l)),null;case 27:if(bl(t),l=he.current,a=t.type,e!==null&&t.stateNode!=null)e.memoizedProps!==n&&An(t);else{if(!n){if(t.stateNode===null)throw Error(d(166));return Pe(t),null}e=I.current,La(t)?or(t):(e=Lf(a,n,l),t.stateNode=e,An(t))}return Pe(t),null;case 5:if(bl(t),a=t.type,e!==null&&t.stateNode!=null)e.memoizedProps!==n&&An(t);else{if(!n){if(t.stateNode===null)throw Error(d(166));return Pe(t),null}if(i=I.current,La(t))or(t);else{var u=Xs(he.current);switch(i){case 1:i=u.createElementNS("http://www.w3.org/2000/svg",a);break;case 2:i=u.createElementNS("http://www.w3.org/1998/Math/MathML",a);break;default:switch(a){case"svg":i=u.createElementNS("http://www.w3.org/2000/svg",a);break;case"math":i=u.createElementNS("http://www.w3.org/1998/Math/MathML",a);break;case"script":i=u.createElement("div"),i.innerHTML="<script><\/script>",i=i.removeChild(i.firstChild);break;case"select":i=typeof n.is=="string"?u.createElement("select",{is:n.is}):u.createElement("select"),n.multiple?i.multiple=!0:n.size&&(i.size=n.size);break;default:i=typeof n.is=="string"?u.createElement(a,{is:n.is}):u.createElement(a)}}i[ue]=t,i[We]=n;e:for(u=t.child;u!==null;){if(u.tag===5||u.tag===6)i.appendChild(u.stateNode);else if(u.tag!==4&&u.tag!==27&&u.child!==null){u.child.return=u,u=u.child;continue}if(u===t)break e;for(;u.sibling===null;){if(u.return===null||u.return===t)break e;u=u.return}u.sibling.return=u.return,u=u.sibling}t.stateNode=i;e:switch(Gt(i,a,n),a){case"button":case"input":case"select":case"textarea":n=!!n.autoFocus;break e;case"img":n=!0;break e;default:n=!1}n&&An(t)}}return Pe(t),Sc(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,l),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==n&&An(t);else{if(typeof n!="string"&&t.stateNode===null)throw Error(d(166));if(e=he.current,La(t)){if(e=t.stateNode,l=t.memoizedProps,n=null,a=Ht,a!==null)switch(a.tag){case 27:case 5:n=a.memoizedProps}e[ue]=t,e=!!(e.nodeValue===l||n!==null&&n.suppressHydrationWarning===!0||Af(e.nodeValue,l)),e||Bn(t,!0)}else e=Xs(e).createTextNode(n),e[ue]=t,t.stateNode=e}return Pe(t),null;case 31:if(l=t.memoizedState,e===null||e.memoizedState!==null){if(n=La(t),l!==null){if(e===null){if(!n)throw Error(d(318));if(e=t.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(d(557));e[ue]=t}else va(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Pe(t),e=!1}else l=zu(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=l),e=!0;if(!e)return t.flags&256?(hl(t),t):(hl(t),null);if((t.flags&128)!==0)throw Error(d(558))}return Pe(t),null;case 13:if(n=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(a=La(t),n!==null&&n.dehydrated!==null){if(e===null){if(!a)throw Error(d(318));if(a=t.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(d(317));a[ue]=t}else va(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Pe(t),a=!1}else a=zu(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=a),a=!0;if(!a)return t.flags&256?(hl(t),t):(hl(t),null)}return hl(t),(t.flags&128)!==0?(t.lanes=l,t):(l=n!==null,e=e!==null&&e.memoizedState!==null,l&&(n=t.child,a=null,n.alternate!==null&&n.alternate.memoizedState!==null&&n.alternate.memoizedState.cachePool!==null&&(a=n.alternate.memoizedState.cachePool.pool),i=null,n.memoizedState!==null&&n.memoizedState.cachePool!==null&&(i=n.memoizedState.cachePool.pool),i!==a&&(n.flags|=2048)),l!==e&&l&&(t.child.flags|=8192),Ds(t,t.updateQueue),Pe(t),null);case 4:return Ae(),e===null&&Yc(t.stateNode.containerInfo),Pe(t),null;case 10:return Nn(t.type),Pe(t),null;case 19:if(E(gt),n=t.memoizedState,n===null)return Pe(t),null;if(a=(t.flags&128)!==0,i=n.rendering,i===null)if(a)Ai(n,!1);else{if(ct!==0||e!==null&&(e.flags&128)!==0)for(e=t.child;e!==null;){if(i=ys(e),i!==null){for(t.flags|=128,Ai(n,!1),e=i.updateQueue,t.updateQueue=e,Ds(t,e),t.subtreeFlags=0,e=l,l=t.child;l!==null;)ar(l,e),l=l.sibling;return q(gt,gt.current&1|2),Ce&&xn(t,n.treeForkCount),t.child}e=e.sibling}n.tail!==null&&mt()>ks&&(t.flags|=128,a=!0,Ai(n,!1),t.lanes=4194304)}else{if(!a)if(e=ys(i),e!==null){if(t.flags|=128,a=!0,e=e.updateQueue,t.updateQueue=e,Ds(t,e),Ai(n,!0),n.tail===null&&n.tailMode==="hidden"&&!i.alternate&&!Ce)return Pe(t),null}else 2*mt()-n.renderingStartTime>ks&&l!==536870912&&(t.flags|=128,a=!0,Ai(n,!1),t.lanes=4194304);n.isBackwards?(i.sibling=t.child,t.child=i):(e=n.last,e!==null?e.sibling=i:t.child=i,n.last=i)}return n.tail!==null?(e=n.tail,n.rendering=e,n.tail=e.sibling,n.renderingStartTime=mt(),e.sibling=null,l=gt.current,q(gt,a?l&1|2:l&1),Ce&&xn(t,n.treeForkCount),e):(Pe(t),null);case 22:case 23:return hl(t),Qu(),n=t.memoizedState!==null,e!==null?e.memoizedState!==null!==n&&(t.flags|=8192):n&&(t.flags|=8192),n?(l&536870912)!==0&&(t.flags&128)===0&&(Pe(t),t.subtreeFlags&6&&(t.flags|=8192)):Pe(t),l=t.updateQueue,l!==null&&Ds(t,l.retryQueue),l=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(l=e.memoizedState.cachePool.pool),n=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(n=t.memoizedState.cachePool.pool),n!==l&&(t.flags|=2048),e!==null&&E(ga),null;case 24:return l=null,e!==null&&(l=e.memoizedState.cache),t.memoizedState.cache!==l&&(t.flags|=2048),Nn(jt),Pe(t),null;case 25:return null;case 30:return null}throw Error(d(156,t.tag))}function Lh(e,t){switch(Ru(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Nn(jt),Ae(),e=t.flags,(e&65536)!==0&&(e&128)===0?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return bl(t),null;case 31:if(t.memoizedState!==null){if(hl(t),t.alternate===null)throw Error(d(340));va()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(hl(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(d(340));va()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return E(gt),null;case 4:return Ae(),null;case 10:return Nn(t.type),null;case 22:case 23:return hl(t),Qu(),e!==null&&E(ga),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return Nn(jt),null;case 25:return null;default:return null}}function Od(e,t){switch(Ru(t),t.tag){case 3:Nn(jt),Ae();break;case 26:case 27:case 5:bl(t);break;case 4:Ae();break;case 31:t.memoizedState!==null&&hl(t);break;case 13:hl(t);break;case 19:E(gt);break;case 10:Nn(t.type);break;case 22:case 23:hl(t),Qu(),e!==null&&E(ga);break;case 24:Nn(jt)}}function Ri(e,t){try{var l=t.updateQueue,n=l!==null?l.lastEffect:null;if(n!==null){var a=n.next;l=a;do{if((l.tag&e)===e){n=void 0;var i=l.create,u=l.inst;n=i(),u.destroy=n}l=l.next}while(l!==a)}}catch(r){Ge(t,t.return,r)}}function $n(e,t,l){try{var n=t.updateQueue,a=n!==null?n.lastEffect:null;if(a!==null){var i=a.next;n=i;do{if((n.tag&e)===e){var u=n.inst,r=u.destroy;if(r!==void 0){u.destroy=void 0,a=t;var v=l,N=r;try{N()}catch(_){Ge(a,v,_)}}}n=n.next}while(n!==i)}}catch(_){Ge(t,t.return,_)}}function _d(e){var t=e.updateQueue;if(t!==null){var l=e.stateNode;try{jr(t,l)}catch(n){Ge(e,e.return,n)}}}function Md(e,t,l){l.props=Na(e.type,e.memoizedProps),l.state=e.memoizedState;try{l.componentWillUnmount()}catch(n){Ge(e,t,n)}}function Di(e,t){try{var l=e.ref;if(l!==null){switch(e.tag){case 26:case 27:case 5:var n=e.stateNode;break;case 30:n=e.stateNode;break;default:n=e.stateNode}typeof l=="function"?e.refCleanup=l(n):l.current=n}}catch(a){Ge(e,t,a)}}function rn(e,t){var l=e.ref,n=e.refCleanup;if(l!==null)if(typeof n=="function")try{n()}catch(a){Ge(e,t,a)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof l=="function")try{l(null)}catch(a){Ge(e,t,a)}else l.current=null}function kd(e){var t=e.type,l=e.memoizedProps,n=e.stateNode;try{e:switch(t){case"button":case"input":case"select":case"textarea":l.autoFocus&&n.focus();break e;case"img":l.src?n.src=l.src:l.srcSet&&(n.srcset=l.srcSet)}}catch(a){Ge(e,e.return,a)}}function xc(e,t,l){try{var n=e.stateNode;sv(n,e.type,l,t),n[We]=t}catch(a){Ge(e,e.return,a)}}function wd(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&ta(e.type)||e.tag===4}function jc(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||wd(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.tag===27&&ta(e.type)||e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function Nc(e,t,l){var n=e.tag;if(n===5||n===6)e=e.stateNode,t?(l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l).insertBefore(e,t):(t=l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l,t.appendChild(e),l=l._reactRootContainer,l!=null||t.onclick!==null||(t.onclick=h));else if(n!==4&&(n===27&&ta(e.type)&&(l=e.stateNode,t=null),e=e.child,e!==null))for(Nc(e,t,l),e=e.sibling;e!==null;)Nc(e,t,l),e=e.sibling}function zs(e,t,l){var n=e.tag;if(n===5||n===6)e=e.stateNode,t?l.insertBefore(e,t):l.appendChild(e);else if(n!==4&&(n===27&&ta(e.type)&&(l=e.stateNode),e=e.child,e!==null))for(zs(e,t,l),e=e.sibling;e!==null;)zs(e,t,l),e=e.sibling}function Ud(e){var t=e.stateNode,l=e.memoizedProps;try{for(var n=e.type,a=t.attributes;a.length;)t.removeAttributeNode(a[0]);Gt(t,n,l),t[ue]=e,t[We]=l}catch(i){Ge(e,e.return,i)}}var Rn=!1,Et=!1,Tc=!1,Hd=typeof WeakSet=="function"?WeakSet:Set,Ot=null;function qh(e,t){if(e=e.containerInfo,Zc=Ws,e=Jo(e),pu(e)){if("selectionStart"in e)var l={start:e.selectionStart,end:e.selectionEnd};else e:{l=(l=e.ownerDocument)&&l.defaultView||window;var n=l.getSelection&&l.getSelection();if(n&&n.rangeCount!==0){l=n.anchorNode;var a=n.anchorOffset,i=n.focusNode;n=n.focusOffset;try{l.nodeType,i.nodeType}catch{l=null;break e}var u=0,r=-1,v=-1,N=0,_=0,w=e,T=null;t:for(;;){for(var A;w!==l||a!==0&&w.nodeType!==3||(r=u+a),w!==i||n!==0&&w.nodeType!==3||(v=u+n),w.nodeType===3&&(u+=w.nodeValue.length),(A=w.firstChild)!==null;)T=w,w=A;for(;;){if(w===e)break t;if(T===l&&++N===a&&(r=u),T===i&&++_===n&&(v=u),(A=w.nextSibling)!==null)break;w=T,T=w.parentNode}w=A}l=r===-1||v===-1?null:{start:r,end:v}}else l=null}l=l||{start:0,end:0}}else l=null;for(Vc={focusedElem:e,selectionRange:l},Ws=!1,Ot=t;Ot!==null;)if(t=Ot,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,Ot=e;else for(;Ot!==null;){switch(t=Ot,i=t.alternate,e=t.flags,t.tag){case 0:if((e&4)!==0&&(e=t.updateQueue,e=e!==null?e.events:null,e!==null))for(l=0;l<e.length;l++)a=e[l],a.ref.impl=a.nextImpl;break;case 11:case 15:break;case 1:if((e&1024)!==0&&i!==null){e=void 0,l=t,a=i.memoizedProps,i=i.memoizedState,n=l.stateNode;try{var W=Na(l.type,a);e=n.getSnapshotBeforeUpdate(W,i),n.__reactInternalSnapshotBeforeUpdate=e}catch(ie){Ge(l,l.return,ie)}}break;case 3:if((e&1024)!==0){if(e=t.stateNode.containerInfo,l=e.nodeType,l===9)Jc(e);else if(l===1)switch(e.nodeName){case"HEAD":case"HTML":case"BODY":Jc(e);break;default:e.textContent=""}}break;case 5:case 26:case 27:case 6:case 4:case 17:break;default:if((e&1024)!==0)throw Error(d(163))}if(e=t.sibling,e!==null){e.return=t.return,Ot=e;break}Ot=t.return}}function Ld(e,t,l){var n=l.flags;switch(l.tag){case 0:case 11:case 15:zn(e,l),n&4&&Ri(5,l);break;case 1:if(zn(e,l),n&4)if(e=l.stateNode,t===null)try{e.componentDidMount()}catch(u){Ge(l,l.return,u)}else{var a=Na(l.type,t.memoizedProps);t=t.memoizedState;try{e.componentDidUpdate(a,t,e.__reactInternalSnapshotBeforeUpdate)}catch(u){Ge(l,l.return,u)}}n&64&&_d(l),n&512&&Di(l,l.return);break;case 3:if(zn(e,l),n&64&&(e=l.updateQueue,e!==null)){if(t=null,l.child!==null)switch(l.child.tag){case 27:case 5:t=l.child.stateNode;break;case 1:t=l.child.stateNode}try{jr(e,t)}catch(u){Ge(l,l.return,u)}}break;case 27:t===null&&n&4&&Ud(l);case 26:case 5:zn(e,l),t===null&&n&4&&kd(l),n&512&&Di(l,l.return);break;case 12:zn(e,l);break;case 31:zn(e,l),n&4&&Bd(e,l);break;case 13:zn(e,l),n&4&&Yd(e,l),n&64&&(e=l.memoizedState,e!==null&&(e=e.dehydrated,e!==null&&(l=$h.bind(null,l),hv(e,l))));break;case 22:if(n=l.memoizedState!==null||Rn,!n){t=t!==null&&t.memoizedState!==null||Et,a=Rn;var i=Et;Rn=n,(Et=t)&&!i?On(e,l,(l.subtreeFlags&8772)!==0):zn(e,l),Rn=a,Et=i}break;case 30:break;default:zn(e,l)}}function qd(e){var t=e.alternate;t!==null&&(e.alternate=null,qd(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&nn(t)),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}var lt=null,al=!1;function Dn(e,t,l){for(l=l.child;l!==null;)Gd(e,t,l),l=l.sibling}function Gd(e,t,l){if(K&&typeof K.onCommitFiberUnmount=="function")try{K.onCommitFiberUnmount(Bt,l)}catch{}switch(l.tag){case 26:Et||rn(l,t),Dn(e,t,l),l.memoizedState?l.memoizedState.count--:l.stateNode&&(l=l.stateNode,l.parentNode.removeChild(l));break;case 27:Et||rn(l,t);var n=lt,a=al;ta(l.type)&&(lt=l.stateNode,al=!1),Dn(e,t,l),Li(l.stateNode),lt=n,al=a;break;case 5:Et||rn(l,t);case 6:if(n=lt,a=al,lt=null,Dn(e,t,l),lt=n,al=a,lt!==null)if(al)try{(lt.nodeType===9?lt.body:lt.nodeName==="HTML"?lt.ownerDocument.body:lt).removeChild(l.stateNode)}catch(i){Ge(l,t,i)}else try{lt.removeChild(l.stateNode)}catch(i){Ge(l,t,i)}break;case 18:lt!==null&&(al?(e=lt,Mf(e.nodeType===9?e.body:e.nodeName==="HTML"?e.ownerDocument.body:e,l.stateNode),ii(e)):Mf(lt,l.stateNode));break;case 4:n=lt,a=al,lt=l.stateNode.containerInfo,al=!0,Dn(e,t,l),lt=n,al=a;break;case 0:case 11:case 14:case 15:$n(2,l,t),Et||$n(4,l,t),Dn(e,t,l);break;case 1:Et||(rn(l,t),n=l.stateNode,typeof n.componentWillUnmount=="function"&&Md(l,t,n)),Dn(e,t,l);break;case 21:Dn(e,t,l);break;case 22:Et=(n=Et)||l.memoizedState!==null,Dn(e,t,l),Et=n;break;default:Dn(e,t,l)}}function Bd(e,t){if(t.memoizedState===null&&(e=t.alternate,e!==null&&(e=e.memoizedState,e!==null))){e=e.dehydrated;try{ii(e)}catch(l){Ge(t,t.return,l)}}}function Yd(e,t){if(t.memoizedState===null&&(e=t.alternate,e!==null&&(e=e.memoizedState,e!==null&&(e=e.dehydrated,e!==null))))try{ii(e)}catch(l){Ge(t,t.return,l)}}function Gh(e){switch(e.tag){case 31:case 13:case 19:var t=e.stateNode;return t===null&&(t=e.stateNode=new Hd),t;case 22:return e=e.stateNode,t=e._retryCache,t===null&&(t=e._retryCache=new Hd),t;default:throw Error(d(435,e.tag))}}function Os(e,t){var l=Gh(e);t.forEach(function(n){if(!l.has(n)){l.add(n);var a=Jh.bind(null,e,n);n.then(a,a)}})}function il(e,t){var l=t.deletions;if(l!==null)for(var n=0;n<l.length;n++){var a=l[n],i=e,u=t,r=u;e:for(;r!==null;){switch(r.tag){case 27:if(ta(r.type)){lt=r.stateNode,al=!1;break e}break;case 5:lt=r.stateNode,al=!1;break e;case 3:case 4:lt=r.stateNode.containerInfo,al=!0;break e}r=r.return}if(lt===null)throw Error(d(160));Gd(i,u,a),lt=null,al=!1,i=a.alternate,i!==null&&(i.return=null),a.return=null}if(t.subtreeFlags&13886)for(t=t.child;t!==null;)Qd(t,e),t=t.sibling}var Il=null;function Qd(e,t){var l=e.alternate,n=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:il(t,e),sl(e),n&4&&($n(3,e,e.return),Ri(3,e),$n(5,e,e.return));break;case 1:il(t,e),sl(e),n&512&&(Et||l===null||rn(l,l.return)),n&64&&Rn&&(e=e.updateQueue,e!==null&&(n=e.callbacks,n!==null&&(l=e.shared.hiddenCallbacks,e.shared.hiddenCallbacks=l===null?n:l.concat(n))));break;case 26:var a=Il;if(il(t,e),sl(e),n&512&&(Et||l===null||rn(l,l.return)),n&4){var i=l!==null?l.memoizedState:null;if(n=e.memoizedState,l===null)if(n===null)if(e.stateNode===null){e:{n=e.type,l=e.memoizedProps,a=a.ownerDocument||a;t:switch(n){case"title":i=a.getElementsByTagName("title")[0],(!i||i[rl]||i[ue]||i.namespaceURI==="http://www.w3.org/2000/svg"||i.hasAttribute("itemprop"))&&(i=a.createElement(n),a.head.insertBefore(i,a.querySelector("head > title"))),Gt(i,n,l),i[ue]=e,Be(i),n=i;break e;case"link":var u=Xf("link","href",a).get(n+(l.href||""));if(u){for(var r=0;r<u.length;r++)if(i=u[r],i.getAttribute("href")===(l.href==null||l.href===""?null:l.href)&&i.getAttribute("rel")===(l.rel==null?null:l.rel)&&i.getAttribute("title")===(l.title==null?null:l.title)&&i.getAttribute("crossorigin")===(l.crossOrigin==null?null:l.crossOrigin)){u.splice(r,1);break t}}i=a.createElement(n),Gt(i,n,l),a.head.appendChild(i);break;case"meta":if(u=Xf("meta","content",a).get(n+(l.content||""))){for(r=0;r<u.length;r++)if(i=u[r],i.getAttribute("content")===(l.content==null?null:""+l.content)&&i.getAttribute("name")===(l.name==null?null:l.name)&&i.getAttribute("property")===(l.property==null?null:l.property)&&i.getAttribute("http-equiv")===(l.httpEquiv==null?null:l.httpEquiv)&&i.getAttribute("charset")===(l.charSet==null?null:l.charSet)){u.splice(r,1);break t}}i=a.createElement(n),Gt(i,n,l),a.head.appendChild(i);break;default:throw Error(d(468,n))}i[ue]=e,Be(i),n=i}e.stateNode=n}else Zf(a,e.type,e.stateNode);else e.stateNode=Qf(a,n,e.memoizedProps);else i!==n?(i===null?l.stateNode!==null&&(l=l.stateNode,l.parentNode.removeChild(l)):i.count--,n===null?Zf(a,e.type,e.stateNode):Qf(a,n,e.memoizedProps)):n===null&&e.stateNode!==null&&xc(e,e.memoizedProps,l.memoizedProps)}break;case 27:il(t,e),sl(e),n&512&&(Et||l===null||rn(l,l.return)),l!==null&&n&4&&xc(e,e.memoizedProps,l.memoizedProps);break;case 5:if(il(t,e),sl(e),n&512&&(Et||l===null||rn(l,l.return)),e.flags&32){a=e.stateNode;try{k(a,"")}catch(W){Ge(e,e.return,W)}}n&4&&e.stateNode!=null&&(a=e.memoizedProps,xc(e,a,l!==null?l.memoizedProps:a)),n&1024&&(Tc=!0);break;case 6:if(il(t,e),sl(e),n&4){if(e.stateNode===null)throw Error(d(162));n=e.memoizedProps,l=e.stateNode;try{l.nodeValue=n}catch(W){Ge(e,e.return,W)}}break;case 3:if(Ks=null,a=Il,Il=Zs(t.containerInfo),il(t,e),Il=a,sl(e),n&4&&l!==null&&l.memoizedState.isDehydrated)try{ii(t.containerInfo)}catch(W){Ge(e,e.return,W)}Tc&&(Tc=!1,Xd(e));break;case 4:n=Il,Il=Zs(e.stateNode.containerInfo),il(t,e),sl(e),Il=n;break;case 12:il(t,e),sl(e);break;case 31:il(t,e),sl(e),n&4&&(n=e.updateQueue,n!==null&&(e.updateQueue=null,Os(e,n)));break;case 13:il(t,e),sl(e),e.child.flags&8192&&e.memoizedState!==null!=(l!==null&&l.memoizedState!==null)&&(Ms=mt()),n&4&&(n=e.updateQueue,n!==null&&(e.updateQueue=null,Os(e,n)));break;case 22:a=e.memoizedState!==null;var v=l!==null&&l.memoizedState!==null,N=Rn,_=Et;if(Rn=N||a,Et=_||v,il(t,e),Et=_,Rn=N,sl(e),n&8192)e:for(t=e.stateNode,t._visibility=a?t._visibility&-2:t._visibility|1,a&&(l===null||v||Rn||Et||Ta(e)),l=null,t=e;;){if(t.tag===5||t.tag===26){if(l===null){v=l=t;try{if(i=v.stateNode,a)u=i.style,typeof u.setProperty=="function"?u.setProperty("display","none","important"):u.display="none";else{r=v.stateNode;var w=v.memoizedProps.style,T=w!=null&&w.hasOwnProperty("display")?w.display:null;r.style.display=T==null||typeof T=="boolean"?"":(""+T).trim()}}catch(W){Ge(v,v.return,W)}}}else if(t.tag===6){if(l===null){v=t;try{v.stateNode.nodeValue=a?"":v.memoizedProps}catch(W){Ge(v,v.return,W)}}}else if(t.tag===18){if(l===null){v=t;try{var A=v.stateNode;a?kf(A,!0):kf(v.stateNode,!1)}catch(W){Ge(v,v.return,W)}}}else if((t.tag!==22&&t.tag!==23||t.memoizedState===null||t===e)&&t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break e;for(;t.sibling===null;){if(t.return===null||t.return===e)break e;l===t&&(l=null),t=t.return}l===t&&(l=null),t.sibling.return=t.return,t=t.sibling}n&4&&(n=e.updateQueue,n!==null&&(l=n.retryQueue,l!==null&&(n.retryQueue=null,Os(e,l))));break;case 19:il(t,e),sl(e),n&4&&(n=e.updateQueue,n!==null&&(e.updateQueue=null,Os(e,n)));break;case 30:break;case 21:break;default:il(t,e),sl(e)}}function sl(e){var t=e.flags;if(t&2){try{for(var l,n=e.return;n!==null;){if(wd(n)){l=n;break}n=n.return}if(l==null)throw Error(d(160));switch(l.tag){case 27:var a=l.stateNode,i=jc(e);zs(e,i,a);break;case 5:var u=l.stateNode;l.flags&32&&(k(u,""),l.flags&=-33);var r=jc(e);zs(e,r,u);break;case 3:case 4:var v=l.stateNode.containerInfo,N=jc(e);Nc(e,N,v);break;default:throw Error(d(161))}}catch(_){Ge(e,e.return,_)}e.flags&=-3}t&4096&&(e.flags&=-4097)}function Xd(e){if(e.subtreeFlags&1024)for(e=e.child;e!==null;){var t=e;Xd(t),t.tag===5&&t.flags&1024&&t.stateNode.reset(),e=e.sibling}}function zn(e,t){if(t.subtreeFlags&8772)for(t=t.child;t!==null;)Ld(e,t.alternate,t),t=t.sibling}function Ta(e){for(e=e.child;e!==null;){var t=e;switch(t.tag){case 0:case 11:case 14:case 15:$n(4,t,t.return),Ta(t);break;case 1:rn(t,t.return);var l=t.stateNode;typeof l.componentWillUnmount=="function"&&Md(t,t.return,l),Ta(t);break;case 27:Li(t.stateNode);case 26:case 5:rn(t,t.return),Ta(t);break;case 22:t.memoizedState===null&&Ta(t);break;case 30:Ta(t);break;default:Ta(t)}e=e.sibling}}function On(e,t,l){for(l=l&&(t.subtreeFlags&8772)!==0,t=t.child;t!==null;){var n=t.alternate,a=e,i=t,u=i.flags;switch(i.tag){case 0:case 11:case 15:On(a,i,l),Ri(4,i);break;case 1:if(On(a,i,l),n=i,a=n.stateNode,typeof a.componentDidMount=="function")try{a.componentDidMount()}catch(N){Ge(n,n.return,N)}if(n=i,a=n.updateQueue,a!==null){var r=n.stateNode;try{var v=a.shared.hiddenCallbacks;if(v!==null)for(a.shared.hiddenCallbacks=null,a=0;a<v.length;a++)xr(v[a],r)}catch(N){Ge(n,n.return,N)}}l&&u&64&&_d(i),Di(i,i.return);break;case 27:Ud(i);case 26:case 5:On(a,i,l),l&&n===null&&u&4&&kd(i),Di(i,i.return);break;case 12:On(a,i,l);break;case 31:On(a,i,l),l&&u&4&&Bd(a,i);break;case 13:On(a,i,l),l&&u&4&&Yd(a,i);break;case 22:i.memoizedState===null&&On(a,i,l),Di(i,i.return);break;case 30:break;default:On(a,i,l)}t=t.sibling}}function Ec(e,t){var l=null;e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(l=e.memoizedState.cachePool.pool),e=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(e=t.memoizedState.cachePool.pool),e!==l&&(e!=null&&e.refCount++,l!=null&&vi(l))}function Cc(e,t){e=null,t.alternate!==null&&(e=t.alternate.memoizedState.cache),t=t.memoizedState.cache,t!==e&&(t.refCount++,e!=null&&vi(e))}function Wl(e,t,l,n){if(t.subtreeFlags&10256)for(t=t.child;t!==null;)Zd(e,t,l,n),t=t.sibling}function Zd(e,t,l,n){var a=t.flags;switch(t.tag){case 0:case 11:case 15:Wl(e,t,l,n),a&2048&&Ri(9,t);break;case 1:Wl(e,t,l,n);break;case 3:Wl(e,t,l,n),a&2048&&(e=null,t.alternate!==null&&(e=t.alternate.memoizedState.cache),t=t.memoizedState.cache,t!==e&&(t.refCount++,e!=null&&vi(e)));break;case 12:if(a&2048){Wl(e,t,l,n),e=t.stateNode;try{var i=t.memoizedProps,u=i.id,r=i.onPostCommit;typeof r=="function"&&r(u,t.alternate===null?"mount":"update",e.passiveEffectDuration,-0)}catch(v){Ge(t,t.return,v)}}else Wl(e,t,l,n);break;case 31:Wl(e,t,l,n);break;case 13:Wl(e,t,l,n);break;case 23:break;case 22:i=t.stateNode,u=t.alternate,t.memoizedState!==null?i._visibility&2?Wl(e,t,l,n):zi(e,t):i._visibility&2?Wl(e,t,l,n):(i._visibility|=2,$a(e,t,l,n,(t.subtreeFlags&10256)!==0||!1)),a&2048&&Ec(u,t);break;case 24:Wl(e,t,l,n),a&2048&&Cc(t.alternate,t);break;default:Wl(e,t,l,n)}}function $a(e,t,l,n,a){for(a=a&&((t.subtreeFlags&10256)!==0||!1),t=t.child;t!==null;){var i=e,u=t,r=l,v=n,N=u.flags;switch(u.tag){case 0:case 11:case 15:$a(i,u,r,v,a),Ri(8,u);break;case 23:break;case 22:var _=u.stateNode;u.memoizedState!==null?_._visibility&2?$a(i,u,r,v,a):zi(i,u):(_._visibility|=2,$a(i,u,r,v,a)),a&&N&2048&&Ec(u.alternate,u);break;case 24:$a(i,u,r,v,a),a&&N&2048&&Cc(u.alternate,u);break;default:$a(i,u,r,v,a)}t=t.sibling}}function zi(e,t){if(t.subtreeFlags&10256)for(t=t.child;t!==null;){var l=e,n=t,a=n.flags;switch(n.tag){case 22:zi(l,n),a&2048&&Ec(n.alternate,n);break;case 24:zi(l,n),a&2048&&Cc(n.alternate,n);break;default:zi(l,n)}t=t.sibling}}var Oi=8192;function Ja(e,t,l){if(e.subtreeFlags&Oi)for(e=e.child;e!==null;)Vd(e,t,l),e=e.sibling}function Vd(e,t,l){switch(e.tag){case 26:Ja(e,t,l),e.flags&Oi&&e.memoizedState!==null&&Cv(l,Il,e.memoizedState,e.memoizedProps);break;case 5:Ja(e,t,l);break;case 3:case 4:var n=Il;Il=Zs(e.stateNode.containerInfo),Ja(e,t,l),Il=n;break;case 22:e.memoizedState===null&&(n=e.alternate,n!==null&&n.memoizedState!==null?(n=Oi,Oi=16777216,Ja(e,t,l),Oi=n):Ja(e,t,l));break;default:Ja(e,t,l)}}function Kd(e){var t=e.alternate;if(t!==null&&(e=t.child,e!==null)){t.child=null;do t=e.sibling,e.sibling=null,e=t;while(e!==null)}}function _i(e){var t=e.deletions;if((e.flags&16)!==0){if(t!==null)for(var l=0;l<t.length;l++){var n=t[l];Ot=n,Jd(n,e)}Kd(e)}if(e.subtreeFlags&10256)for(e=e.child;e!==null;)$d(e),e=e.sibling}function $d(e){switch(e.tag){case 0:case 11:case 15:_i(e),e.flags&2048&&$n(9,e,e.return);break;case 3:_i(e);break;case 12:_i(e);break;case 22:var t=e.stateNode;e.memoizedState!==null&&t._visibility&2&&(e.return===null||e.return.tag!==13)?(t._visibility&=-3,_s(e)):_i(e);break;default:_i(e)}}function _s(e){var t=e.deletions;if((e.flags&16)!==0){if(t!==null)for(var l=0;l<t.length;l++){var n=t[l];Ot=n,Jd(n,e)}Kd(e)}for(e=e.child;e!==null;){switch(t=e,t.tag){case 0:case 11:case 15:$n(8,t,t.return),_s(t);break;case 22:l=t.stateNode,l._visibility&2&&(l._visibility&=-3,_s(t));break;default:_s(t)}e=e.sibling}}function Jd(e,t){for(;Ot!==null;){var l=Ot;switch(l.tag){case 0:case 11:case 15:$n(8,l,t);break;case 23:case 22:if(l.memoizedState!==null&&l.memoizedState.cachePool!==null){var n=l.memoizedState.cachePool.pool;n!=null&&n.refCount++}break;case 24:vi(l.memoizedState.cache)}if(n=l.child,n!==null)n.return=l,Ot=n;else e:for(l=e;Ot!==null;){n=Ot;var a=n.sibling,i=n.return;if(qd(n),n===l){Ot=null;break e}if(a!==null){a.return=i,Ot=a;break e}Ot=i}}}var Bh={getCacheForType:function(e){var t=Lt(jt),l=t.data.get(e);return l===void 0&&(l=e(),t.data.set(e,l)),l},cacheSignal:function(){return Lt(jt).controller.signal}},Yh=typeof WeakMap=="function"?WeakMap:Map,we=0,Ke=null,be=null,xe=0,qe=0,vl=null,Jn=!1,Ia=!1,Ac=!1,_n=0,ct=0,In=0,Ea=0,Rc=0,yl=0,Wa=0,Mi=null,ul=null,Dc=!1,Ms=0,Id=0,ks=1/0,ws=null,Wn=null,Rt=0,Fn=null,Fa=null,Mn=0,zc=0,Oc=null,Wd=null,ki=0,_c=null;function pl(){return(we&2)!==0&&xe!==0?xe&-xe:D.T!==null?Lc():Dt()}function Fd(){if(yl===0)if((xe&536870912)===0||Ce){var e=El;El<<=1,(El&3932160)===0&&(El=262144),yl=e}else yl=536870912;return e=ml.current,e!==null&&(e.flags|=32),yl}function cl(e,t,l){(e===Ke&&(qe===2||qe===9)||e.cancelPendingCommit!==null)&&(Pa(e,0),Pn(e,xe,yl,!1)),$t(e,l),((we&2)===0||e!==Ke)&&(e===Ke&&((we&2)===0&&(Ea|=l),ct===4&&Pn(e,xe,yl,!1)),dn(e))}function Pd(e,t,l){if((we&6)!==0)throw Error(d(327));var n=!l&&(t&127)===0&&(t&e.expiredLanes)===0||Pt(e,t),a=n?Zh(e,t):kc(e,t,!0),i=n;do{if(a===0){Ia&&!n&&Pn(e,t,0,!1);break}else{if(l=e.current.alternate,i&&!Qh(l)){a=kc(e,t,!1),i=!1;continue}if(a===2){if(i=t,e.errorRecoveryDisabledLanes&i)var u=0;else u=e.pendingLanes&-536870913,u=u!==0?u:u&536870912?536870912:0;if(u!==0){t=u;e:{var r=e;a=Mi;var v=r.current.memoizedState.isDehydrated;if(v&&(Pa(r,u).flags|=256),u=kc(r,u,!1),u!==2){if(Ac&&!v){r.errorRecoveryDisabledLanes|=i,Ea|=i,a=4;break e}i=ul,ul=a,i!==null&&(ul===null?ul=i:ul.push.apply(ul,i))}a=u}if(i=!1,a!==2)continue}}if(a===1){Pa(e,0),Pn(e,t,0,!0);break}e:{switch(n=e,i=a,i){case 0:case 1:throw Error(d(345));case 4:if((t&4194048)!==t)break;case 6:Pn(n,t,yl,!Jn);break e;case 2:ul=null;break;case 3:case 5:break;default:throw Error(d(329))}if((t&62914560)===t&&(a=Ms+300-mt(),10<a)){if(Pn(n,t,yl,!Jn),Ze(n,0,!0)!==0)break e;Mn=t,n.timeoutHandle=Of(ef.bind(null,n,l,ul,ws,Dc,t,yl,Ea,Wa,Jn,i,"Throttled",-0,0),a);break e}ef(n,l,ul,ws,Dc,t,yl,Ea,Wa,Jn,i,null,-0,0)}}break}while(!0);dn(e)}function ef(e,t,l,n,a,i,u,r,v,N,_,w,T,A){if(e.timeoutHandle=-1,w=t.subtreeFlags,w&8192||(w&16785408)===16785408){w={stylesheets:null,count:0,imgCount:0,imgBytes:0,suspenseyImages:[],waitingForImages:!0,waitingForViewTransition:!1,unsuspend:h},Vd(t,i,w);var W=(i&62914560)===i?Ms-mt():(i&4194048)===i?Id-mt():0;if(W=Av(w,W),W!==null){Mn=i,e.cancelPendingCommit=W(of.bind(null,e,t,i,l,n,a,u,r,v,_,w,null,T,A)),Pn(e,i,u,!N);return}}of(e,t,i,l,n,a,u,r,v)}function Qh(e){for(var t=e;;){var l=t.tag;if((l===0||l===11||l===15)&&t.flags&16384&&(l=t.updateQueue,l!==null&&(l=l.stores,l!==null)))for(var n=0;n<l.length;n++){var a=l[n],i=a.getSnapshot;a=a.value;try{if(!dl(i(),a))return!1}catch{return!1}}if(l=t.child,t.subtreeFlags&16384&&l!==null)l.return=t,t=l;else{if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return!0;t=t.return}t.sibling.return=t.return,t=t.sibling}}return!0}function Pn(e,t,l,n){t&=~Rc,t&=~Ea,e.suspendedLanes|=t,e.pingedLanes&=~t,n&&(e.warmLanes|=t),n=e.expirationTimes;for(var a=t;0<a;){var i=31-Ct(a),u=1<<i;n[i]=-1,a&=~u}l!==0&&Zl(e,l,t)}function Us(){return(we&6)===0?(wi(0),!1):!0}function Mc(){if(be!==null){if(qe===0)var e=be.return;else e=be,jn=ya=null,Ju(e),Qa=null,pi=0,e=be;for(;e!==null;)Od(e.alternate,e),e=e.return;be=null}}function Pa(e,t){var l=e.timeoutHandle;l!==-1&&(e.timeoutHandle=-1,ov(l)),l=e.cancelPendingCommit,l!==null&&(e.cancelPendingCommit=null,l()),Mn=0,Mc(),Ke=e,be=l=Sn(e.current,null),xe=t,qe=0,vl=null,Jn=!1,Ia=Pt(e,t),Ac=!1,Wa=yl=Rc=Ea=In=ct=0,ul=Mi=null,Dc=!1,(t&8)!==0&&(t|=t&32);var n=e.entangledLanes;if(n!==0)for(e=e.entanglements,n&=t;0<n;){var a=31-Ct(n),i=1<<a;t|=e[a],n&=~i}return _n=t,ns(),l}function tf(e,t){me=null,D.H=Ei,t===Ya||t===ds?(t=pr(),qe=3):t===Hu?(t=pr(),qe=4):qe=t===dc?8:t!==null&&typeof t=="object"&&typeof t.then=="function"?6:1,vl=t,be===null&&(ct=1,Es(e,kl(t,e.current)))}function lf(){var e=ml.current;return e===null?!0:(xe&4194048)===xe?Ll===null:(xe&62914560)===xe||(xe&536870912)!==0?e===Ll:!1}function nf(){var e=D.H;return D.H=Ei,e===null?Ei:e}function af(){var e=D.A;return D.A=Bh,e}function Hs(){ct=4,Jn||(xe&4194048)!==xe&&ml.current!==null||(Ia=!0),(In&134217727)===0&&(Ea&134217727)===0||Ke===null||Pn(Ke,xe,yl,!1)}function kc(e,t,l){var n=we;we|=2;var a=nf(),i=af();(Ke!==e||xe!==t)&&(ws=null,Pa(e,t)),t=!1;var u=ct;e:do try{if(qe!==0&&be!==null){var r=be,v=vl;switch(qe){case 8:Mc(),u=6;break e;case 3:case 2:case 9:case 6:ml.current===null&&(t=!0);var N=qe;if(qe=0,vl=null,ei(e,r,v,N),l&&Ia){u=0;break e}break;default:N=qe,qe=0,vl=null,ei(e,r,v,N)}}Xh(),u=ct;break}catch(_){tf(e,_)}while(!0);return t&&e.shellSuspendCounter++,jn=ya=null,we=n,D.H=a,D.A=i,be===null&&(Ke=null,xe=0,ns()),u}function Xh(){for(;be!==null;)sf(be)}function Zh(e,t){var l=we;we|=2;var n=nf(),a=af();Ke!==e||xe!==t?(ws=null,ks=mt()+500,Pa(e,t)):Ia=Pt(e,t);e:do try{if(qe!==0&&be!==null){t=be;var i=vl;t:switch(qe){case 1:qe=0,vl=null,ei(e,t,i,1);break;case 2:case 9:if(vr(i)){qe=0,vl=null,uf(t);break}t=function(){qe!==2&&qe!==9||Ke!==e||(qe=7),dn(e)},i.then(t,t);break e;case 3:qe=7;break e;case 4:qe=5;break e;case 7:vr(i)?(qe=0,vl=null,uf(t)):(qe=0,vl=null,ei(e,t,i,7));break;case 5:var u=null;switch(be.tag){case 26:u=be.memoizedState;case 5:case 27:var r=be;if(u?Vf(u):r.stateNode.complete){qe=0,vl=null;var v=r.sibling;if(v!==null)be=v;else{var N=r.return;N!==null?(be=N,Ls(N)):be=null}break t}}qe=0,vl=null,ei(e,t,i,5);break;case 6:qe=0,vl=null,ei(e,t,i,6);break;case 8:Mc(),ct=6;break e;default:throw Error(d(462))}}Vh();break}catch(_){tf(e,_)}while(!0);return jn=ya=null,D.H=n,D.A=a,we=l,be!==null?0:(Ke=null,xe=0,ns(),ct)}function Vh(){for(;be!==null&&!Ra();)sf(be)}function sf(e){var t=Dd(e.alternate,e,_n);e.memoizedProps=e.pendingProps,t===null?Ls(e):be=t}function uf(e){var t=e,l=t.alternate;switch(t.tag){case 15:case 0:t=Nd(l,t,t.pendingProps,t.type,void 0,xe);break;case 11:t=Nd(l,t,t.pendingProps,t.type.render,t.ref,xe);break;case 5:Ju(t);default:Od(l,t),t=be=ar(t,_n),t=Dd(l,t,_n)}e.memoizedProps=e.pendingProps,t===null?Ls(e):be=t}function ei(e,t,l,n){jn=ya=null,Ju(t),Qa=null,pi=0;var a=t.return;try{if(kh(e,a,t,l,xe)){ct=1,Es(e,kl(l,e.current)),be=null;return}}catch(i){if(a!==null)throw be=a,i;ct=1,Es(e,kl(l,e.current)),be=null;return}t.flags&32768?(Ce||n===1?e=!0:Ia||(xe&536870912)!==0?e=!1:(Jn=e=!0,(n===2||n===9||n===3||n===6)&&(n=ml.current,n!==null&&n.tag===13&&(n.flags|=16384))),cf(t,e)):Ls(t)}function Ls(e){var t=e;do{if((t.flags&32768)!==0){cf(t,Jn);return}e=t.return;var l=Hh(t.alternate,t,_n);if(l!==null){be=l;return}if(t=t.sibling,t!==null){be=t;return}be=t=e}while(t!==null);ct===0&&(ct=5)}function cf(e,t){do{var l=Lh(e.alternate,e);if(l!==null){l.flags&=32767,be=l;return}if(l=e.return,l!==null&&(l.flags|=32768,l.subtreeFlags=0,l.deletions=null),!t&&(e=e.sibling,e!==null)){be=e;return}be=e=l}while(e!==null);ct=6,be=null}function of(e,t,l,n,a,i,u,r,v){e.cancelPendingCommit=null;do qs();while(Rt!==0);if((we&6)!==0)throw Error(d(327));if(t!==null){if(t===e.current)throw Error(d(177));if(i=t.lanes|t.childLanes,i|=ju,Xl(e,l,i,u,r,v),e===Ke&&(be=Ke=null,xe=0),Fa=t,Fn=e,Mn=l,zc=i,Oc=a,Wd=n,(t.subtreeFlags&10256)!==0||(t.flags&10256)!==0?(e.callbackNode=null,e.callbackPriority=0,Ih(Nl,function(){return hf(),null})):(e.callbackNode=null,e.callbackPriority=0),n=(t.flags&13878)!==0,(t.subtreeFlags&13878)!==0||n){n=D.T,D.T=null,a=Q.p,Q.p=2,u=we,we|=4;try{qh(e,t,l)}finally{we=u,Q.p=a,D.T=n}}Rt=1,rf(),df(),ff()}}function rf(){if(Rt===1){Rt=0;var e=Fn,t=Fa,l=(t.flags&13878)!==0;if((t.subtreeFlags&13878)!==0||l){l=D.T,D.T=null;var n=Q.p;Q.p=2;var a=we;we|=4;try{Qd(t,e);var i=Vc,u=Jo(e.containerInfo),r=i.focusedElem,v=i.selectionRange;if(u!==r&&r&&r.ownerDocument&&$o(r.ownerDocument.documentElement,r)){if(v!==null&&pu(r)){var N=v.start,_=v.end;if(_===void 0&&(_=N),"selectionStart"in r)r.selectionStart=N,r.selectionEnd=Math.min(_,r.value.length);else{var w=r.ownerDocument||document,T=w&&w.defaultView||window;if(T.getSelection){var A=T.getSelection(),W=r.textContent.length,ie=Math.min(v.start,W),Xe=v.end===void 0?ie:Math.min(v.end,W);!A.extend&&ie>Xe&&(u=Xe,Xe=ie,ie=u);var b=Ko(r,ie),g=Ko(r,Xe);if(b&&g&&(A.rangeCount!==1||A.anchorNode!==b.node||A.anchorOffset!==b.offset||A.focusNode!==g.node||A.focusOffset!==g.offset)){var j=w.createRange();j.setStart(b.node,b.offset),A.removeAllRanges(),ie>Xe?(A.addRange(j),A.extend(g.node,g.offset)):(j.setEnd(g.node,g.offset),A.addRange(j))}}}}for(w=[],A=r;A=A.parentNode;)A.nodeType===1&&w.push({element:A,left:A.scrollLeft,top:A.scrollTop});for(typeof r.focus=="function"&&r.focus(),r=0;r<w.length;r++){var M=w[r];M.element.scrollLeft=M.left,M.element.scrollTop=M.top}}Ws=!!Zc,Vc=Zc=null}finally{we=a,Q.p=n,D.T=l}}e.current=t,Rt=2}}function df(){if(Rt===2){Rt=0;var e=Fn,t=Fa,l=(t.flags&8772)!==0;if((t.subtreeFlags&8772)!==0||l){l=D.T,D.T=null;var n=Q.p;Q.p=2;var a=we;we|=4;try{Ld(e,t.alternate,t)}finally{we=a,Q.p=n,D.T=l}}Rt=3}}function ff(){if(Rt===4||Rt===3){Rt=0,Da();var e=Fn,t=Fa,l=Mn,n=Wd;(t.subtreeFlags&10256)!==0||(t.flags&10256)!==0?Rt=5:(Rt=0,Fa=Fn=null,mf(e,e.pendingLanes));var a=e.pendingLanes;if(a===0&&(Wn=null),el(l),t=t.stateNode,K&&typeof K.onCommitFiberRoot=="function")try{K.onCommitFiberRoot(Bt,t,void 0,(t.current.flags&128)===128)}catch{}if(n!==null){t=D.T,a=Q.p,Q.p=2,D.T=null;try{for(var i=e.onRecoverableError,u=0;u<n.length;u++){var r=n[u];i(r.value,{componentStack:r.stack})}}finally{D.T=t,Q.p=a}}(Mn&3)!==0&&qs(),dn(e),a=e.pendingLanes,(l&261930)!==0&&(a&42)!==0?e===_c?ki++:(ki=0,_c=e):ki=0,wi(0)}}function mf(e,t){(e.pooledCacheLanes&=t)===0&&(t=e.pooledCache,t!=null&&(e.pooledCache=null,vi(t)))}function qs(){return rf(),df(),ff(),hf()}function hf(){if(Rt!==5)return!1;var e=Fn,t=zc;zc=0;var l=el(Mn),n=D.T,a=Q.p;try{Q.p=32>l?32:l,D.T=null,l=Oc,Oc=null;var i=Fn,u=Mn;if(Rt=0,Fa=Fn=null,Mn=0,(we&6)!==0)throw Error(d(331));var r=we;if(we|=4,$d(i.current),Zd(i,i.current,u,l),we=r,wi(0,!1),K&&typeof K.onPostCommitFiberRoot=="function")try{K.onPostCommitFiberRoot(Bt,i)}catch{}return!0}finally{Q.p=a,D.T=n,mf(e,t)}}function vf(e,t,l){t=kl(l,t),t=rc(e.stateNode,t,2),e=Zn(e,t,2),e!==null&&($t(e,2),dn(e))}function Ge(e,t,l){if(e.tag===3)vf(e,e,l);else for(;t!==null;){if(t.tag===3){vf(t,e,l);break}else if(t.tag===1){var n=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof n.componentDidCatch=="function"&&(Wn===null||!Wn.has(n))){e=kl(l,e),l=vd(2),n=Zn(t,l,2),n!==null&&(yd(l,n,t,e),$t(n,2),dn(n));break}}t=t.return}}function wc(e,t,l){var n=e.pingCache;if(n===null){n=e.pingCache=new Yh;var a=new Set;n.set(t,a)}else a=n.get(t),a===void 0&&(a=new Set,n.set(t,a));a.has(l)||(Ac=!0,a.add(l),e=Kh.bind(null,e,t,l),t.then(e,e))}function Kh(e,t,l){var n=e.pingCache;n!==null&&n.delete(t),e.pingedLanes|=e.suspendedLanes&l,e.warmLanes&=~l,Ke===e&&(xe&l)===l&&(ct===4||ct===3&&(xe&62914560)===xe&&300>mt()-Ms?(we&2)===0&&Pa(e,0):Rc|=l,Wa===xe&&(Wa=0)),dn(e)}function yf(e,t){t===0&&(t=Un()),e=ma(e,t),e!==null&&($t(e,t),dn(e))}function $h(e){var t=e.memoizedState,l=0;t!==null&&(l=t.retryLane),yf(e,l)}function Jh(e,t){var l=0;switch(e.tag){case 31:case 13:var n=e.stateNode,a=e.memoizedState;a!==null&&(l=a.retryLane);break;case 19:n=e.stateNode;break;case 22:n=e.stateNode._retryCache;break;default:throw Error(d(314))}n!==null&&n.delete(t),yf(e,l)}function Ih(e,t){return re(e,t)}var Gs=null,ti=null,Uc=!1,Bs=!1,Hc=!1,ea=0;function dn(e){e!==ti&&e.next===null&&(ti===null?Gs=ti=e:ti=ti.next=e),Bs=!0,Uc||(Uc=!0,Fh())}function wi(e,t){if(!Hc&&Bs){Hc=!0;do for(var l=!1,n=Gs;n!==null;){if(e!==0){var a=n.pendingLanes;if(a===0)var i=0;else{var u=n.suspendedLanes,r=n.pingedLanes;i=(1<<31-Ct(42|e)+1)-1,i&=a&~(u&~r),i=i&201326741?i&201326741|1:i?i|2:0}i!==0&&(l=!0,Sf(n,i))}else i=xe,i=Ze(n,n===Ke?i:0,n.cancelPendingCommit!==null||n.timeoutHandle!==-1),(i&3)===0||Pt(n,i)||(l=!0,Sf(n,i));n=n.next}while(l);Hc=!1}}function Wh(){pf()}function pf(){Bs=Uc=!1;var e=0;ea!==0&&cv()&&(e=ea);for(var t=mt(),l=null,n=Gs;n!==null;){var a=n.next,i=gf(n,t);i===0?(n.next=null,l===null?Gs=a:l.next=a,a===null&&(ti=l)):(l=n,(e!==0||(i&3)!==0)&&(Bs=!0)),n=a}Rt!==0&&Rt!==5||wi(e),ea!==0&&(ea=0)}function gf(e,t){for(var l=e.suspendedLanes,n=e.pingedLanes,a=e.expirationTimes,i=e.pendingLanes&-62914561;0<i;){var u=31-Ct(i),r=1<<u,v=a[u];v===-1?((r&l)===0||(r&n)!==0)&&(a[u]=Ql(r,t)):v<=t&&(e.expiredLanes|=r),i&=~r}if(t=Ke,l=xe,l=Ze(e,e===t?l:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),n=e.callbackNode,l===0||e===t&&(qe===2||qe===9)||e.cancelPendingCommit!==null)return n!==null&&n!==null&&jl(n),e.callbackNode=null,e.callbackPriority=0;if((l&3)===0||Pt(e,l)){if(t=l&-l,t===e.callbackPriority)return t;switch(n!==null&&jl(n),el(l)){case 2:case 8:l=He;break;case 32:l=Nl;break;case 268435456:l=Yl;break;default:l=Nl}return n=bf.bind(null,e),l=re(l,n),e.callbackPriority=t,e.callbackNode=l,t}return n!==null&&n!==null&&jl(n),e.callbackPriority=2,e.callbackNode=null,2}function bf(e,t){if(Rt!==0&&Rt!==5)return e.callbackNode=null,e.callbackPriority=0,null;var l=e.callbackNode;if(qs()&&e.callbackNode!==l)return null;var n=xe;return n=Ze(e,e===Ke?n:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),n===0?null:(Pd(e,n,t),gf(e,mt()),e.callbackNode!=null&&e.callbackNode===l?bf.bind(null,e):null)}function Sf(e,t){if(qs())return null;Pd(e,t,!0)}function Fh(){rv(function(){(we&6)!==0?re(hn,Wh):pf()})}function Lc(){if(ea===0){var e=Ga;e===0&&(e=Yt,Yt<<=1,(Yt&261888)===0&&(Yt=256)),ea=e}return ea}function xf(e){return e==null||typeof e=="symbol"||typeof e=="boolean"?null:typeof e=="function"?e:yt(""+e)}function jf(e,t){var l=t.ownerDocument.createElement("input");return l.name=t.name,l.value=t.value,e.id&&l.setAttribute("form",e.id),t.parentNode.insertBefore(l,t),e=new FormData(e),l.parentNode.removeChild(l),e}function Ph(e,t,l,n,a){if(t==="submit"&&l&&l.stateNode===a){var i=xf((a[We]||null).action),u=n.submitter;u&&(t=(t=u[We]||null)?xf(t.formAction):u.getAttribute("formAction"),t!==null&&(i=t,u=null));var r=new Pi("action","action",null,n,a);e.push({event:r,listeners:[{instance:null,listener:function(){if(n.defaultPrevented){if(ea!==0){var v=u?jf(a,u):new FormData(a);ac(l,{pending:!0,data:v,method:a.method,action:i},null,v)}}else typeof i=="function"&&(r.preventDefault(),v=u?jf(a,u):new FormData(a),ac(l,{pending:!0,data:v,method:a.method,action:i},i,v))},currentTarget:a}]})}}for(var qc=0;qc<xu.length;qc++){var Gc=xu[qc],ev=Gc.toLowerCase(),tv=Gc[0].toUpperCase()+Gc.slice(1);Jl(ev,"on"+tv)}Jl(Fo,"onAnimationEnd"),Jl(Po,"onAnimationIteration"),Jl(er,"onAnimationStart"),Jl("dblclick","onDoubleClick"),Jl("focusin","onFocus"),Jl("focusout","onBlur"),Jl(ph,"onTransitionRun"),Jl(gh,"onTransitionStart"),Jl(bh,"onTransitionCancel"),Jl(tr,"onTransitionEnd"),zl("onMouseEnter",["mouseout","mouseover"]),zl("onMouseLeave",["mouseout","mouseover"]),zl("onPointerEnter",["pointerout","pointerover"]),zl("onPointerLeave",["pointerout","pointerover"]),ll("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),ll("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),ll("onBeforeInput",["compositionend","keypress","textInput","paste"]),ll("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),ll("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),ll("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var Ui="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(" "),lv=new Set("beforetoggle cancel close invalid load scroll scrollend toggle".split(" ").concat(Ui));function Nf(e,t){t=(t&4)!==0;for(var l=0;l<e.length;l++){var n=e[l],a=n.event;n=n.listeners;e:{var i=void 0;if(t)for(var u=n.length-1;0<=u;u--){var r=n[u],v=r.instance,N=r.currentTarget;if(r=r.listener,v!==i&&a.isPropagationStopped())break e;i=r,a.currentTarget=N;try{i(a)}catch(_){ls(_)}a.currentTarget=null,i=v}else for(u=0;u<n.length;u++){if(r=n[u],v=r.instance,N=r.currentTarget,r=r.listener,v!==i&&a.isPropagationStopped())break e;i=r,a.currentTarget=N;try{i(a)}catch(_){ls(_)}a.currentTarget=null,i=v}}}}function Se(e,t){var l=t[Hn];l===void 0&&(l=t[Hn]=new Set);var n=e+"__bubble";l.has(n)||(Tf(t,e,2,!1),l.add(n))}function Bc(e,t,l){var n=0;t&&(n|=4),Tf(l,e,n,t)}var Ys="_reactListening"+Math.random().toString(36).slice(2);function Yc(e){if(!e[Ys]){e[Ys]=!0,Vl.forEach(function(l){l!=="selectionchange"&&(lv.has(l)||Bc(l,!1,e),Bc(l,!0,e))});var t=e.nodeType===9?e:e.ownerDocument;t===null||t[Ys]||(t[Ys]=!0,Bc("selectionchange",!1,t))}}function Tf(e,t,l,n){switch(Pf(t)){case 2:var a=zv;break;case 8:a=Ov;break;default:a=no}l=a.bind(null,t,l,e),a=void 0,!un||t!=="touchstart"&&t!=="touchmove"&&t!=="wheel"||(a=!0),n?a!==void 0?e.addEventListener(t,l,{capture:!0,passive:a}):e.addEventListener(t,l,!0):a!==void 0?e.addEventListener(t,l,{passive:a}):e.addEventListener(t,l,!1)}function Qc(e,t,l,n,a){var i=n;if((t&1)===0&&(t&2)===0&&n!==null)e:for(;;){if(n===null)return;var u=n.tag;if(u===3||u===4){var r=n.stateNode.containerInfo;if(r===a)break;if(u===4)for(u=n.return;u!==null;){var v=u.tag;if((v===3||v===4)&&u.stateNode.containerInfo===a)return;u=u.return}for(;r!==null;){if(u=It(r),u===null)return;if(v=u.tag,v===5||v===6||v===26||v===27){n=i=u;continue e}r=r.parentNode}}n=n.return}pt(function(){var N=i,_=Y(l),w=[];e:{var T=lr.get(e);if(T!==void 0){var A=Pi,W=e;switch(e){case"keypress":if(Wi(l)===0)break e;case"keydown":case"keyup":A=Jm;break;case"focusin":W="focus",A=fu;break;case"focusout":W="blur",A=fu;break;case"beforeblur":case"afterblur":A=fu;break;case"click":if(l.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":A=Oo;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":A=Hm;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":A=Fm;break;case Fo:case Po:case er:A=Gm;break;case tr:A=eh;break;case"scroll":case"scrollend":A=wm;break;case"wheel":A=lh;break;case"copy":case"cut":case"paste":A=Ym;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":A=Mo;break;case"toggle":case"beforetoggle":A=ah}var ie=(t&4)!==0,Xe=!ie&&(e==="scroll"||e==="scrollend"),b=ie?T!==null?T+"Capture":null:T;ie=[];for(var g=N,j;g!==null;){var M=g;if(j=M.stateNode,M=M.tag,M!==5&&M!==26&&M!==27||j===null||b===null||(M=ce(g,b),M!=null&&ie.push(Hi(g,M,j))),Xe)break;g=g.return}0<ie.length&&(T=new A(T,W,null,l,_),w.push({event:T,listeners:ie}))}}if((t&7)===0){e:{if(T=e==="mouseover"||e==="pointerover",A=e==="mouseout"||e==="pointerout",T&&l!==U&&(W=l.relatedTarget||l.fromElement)&&(It(W)||W[Cl]))break e;if((A||T)&&(T=_.window===_?_:(T=_.ownerDocument)?T.defaultView||T.parentWindow:window,A?(W=l.relatedTarget||l.toElement,A=N,W=W?It(W):null,W!==null&&(Xe=R(W),ie=W.tag,W!==Xe||ie!==5&&ie!==27&&ie!==6)&&(W=null)):(A=null,W=N),A!==W)){if(ie=Oo,M="onMouseLeave",b="onMouseEnter",g="mouse",(e==="pointerout"||e==="pointerover")&&(ie=Mo,M="onPointerLeave",b="onPointerEnter",g="pointer"),Xe=A==null?T:At(A),j=W==null?T:At(W),T=new ie(M,g+"leave",A,l,_),T.target=Xe,T.relatedTarget=j,M=null,It(_)===N&&(ie=new ie(b,g+"enter",W,l,_),ie.target=j,ie.relatedTarget=Xe,M=ie),Xe=M,A&&W)t:{for(ie=nv,b=A,g=W,j=0,M=b;M;M=ie(M))j++;M=0;for(var te=g;te;te=ie(te))M++;for(;0<j-M;)b=ie(b),j--;for(;0<M-j;)g=ie(g),M--;for(;j--;){if(b===g||g!==null&&b===g.alternate){ie=b;break t}b=ie(b),g=ie(g)}ie=null}else ie=null;A!==null&&Ef(w,T,A,ie,!1),W!==null&&Xe!==null&&Ef(w,Xe,W,ie,!0)}}e:{if(T=N?At(N):window,A=T.nodeName&&T.nodeName.toLowerCase(),A==="select"||A==="input"&&T.type==="file")var ze=Bo;else if(qo(T))if(Yo)ze=hh;else{ze=fh;var P=dh}else A=T.nodeName,!A||A.toLowerCase()!=="input"||T.type!=="checkbox"&&T.type!=="radio"?N&&st(N.elementType)&&(ze=Bo):ze=mh;if(ze&&(ze=ze(e,N))){Go(w,ze,l,_);break e}P&&P(e,T,N),e==="focusout"&&N&&T.type==="number"&&N.memoizedProps.value!=null&&vt(T,"number",T.value)}switch(P=N?At(N):window,e){case"focusin":(qo(P)||P.contentEditable==="true")&&(_a=P,gu=N,fi=null);break;case"focusout":fi=gu=_a=null;break;case"mousedown":bu=!0;break;case"contextmenu":case"mouseup":case"dragend":bu=!1,Io(w,l,_);break;case"selectionchange":if(yh)break;case"keydown":case"keyup":Io(w,l,_)}var ve;if(hu)e:{switch(e){case"compositionstart":var je="onCompositionStart";break e;case"compositionend":je="onCompositionEnd";break e;case"compositionupdate":je="onCompositionUpdate";break e}je=void 0}else Oa?Ho(e,l)&&(je="onCompositionEnd"):e==="keydown"&&l.keyCode===229&&(je="onCompositionStart");je&&(ko&&l.locale!=="ko"&&(Oa||je!=="onCompositionStart"?je==="onCompositionEnd"&&Oa&&(ve=Do()):(_l=_,ou="value"in _l?_l.value:_l.textContent,Oa=!0)),P=Qs(N,je),0<P.length&&(je=new _o(je,e,null,l,_),w.push({event:je,listeners:P}),ve?je.data=ve:(ve=Lo(l),ve!==null&&(je.data=ve)))),(ve=sh?uh(e,l):ch(e,l))&&(je=Qs(N,"onBeforeInput"),0<je.length&&(P=new _o("onBeforeInput","beforeinput",null,l,_),w.push({event:P,listeners:je}),P.data=ve)),Ph(w,e,N,l,_)}Nf(w,t)})}function Hi(e,t,l){return{instance:e,listener:t,currentTarget:l}}function Qs(e,t){for(var l=t+"Capture",n=[];e!==null;){var a=e,i=a.stateNode;if(a=a.tag,a!==5&&a!==26&&a!==27||i===null||(a=ce(e,l),a!=null&&n.unshift(Hi(e,a,i)),a=ce(e,t),a!=null&&n.push(Hi(e,a,i))),e.tag===3)return n;e=e.return}return[]}function nv(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5&&e.tag!==27);return e||null}function Ef(e,t,l,n,a){for(var i=t._reactName,u=[];l!==null&&l!==n;){var r=l,v=r.alternate,N=r.stateNode;if(r=r.tag,v!==null&&v===n)break;r!==5&&r!==26&&r!==27||N===null||(v=N,a?(N=ce(l,i),N!=null&&u.unshift(Hi(l,N,v))):a||(N=ce(l,i),N!=null&&u.push(Hi(l,N,v)))),l=l.return}u.length!==0&&e.push({event:t,listeners:u})}var av=/\r\n?/g,iv=/\u0000|\uFFFD/g;function Cf(e){return(typeof e=="string"?e:""+e).replace(av,`
|
|
9
|
-
`).replace(iv,"")}function Af(e,t){return t=Cf(t),Cf(e)===t}function Qe(e,t,l,n,a,i){switch(l){case"children":typeof n=="string"?t==="body"||t==="textarea"&&n===""||k(e,n):(typeof n=="number"||typeof n=="bigint")&&t!=="body"&&k(e,""+n);break;case"className":an(e,"class",n);break;case"tabIndex":an(e,"tabindex",n);break;case"dir":case"role":case"viewBox":case"width":case"height":an(e,l,n);break;case"style":ke(e,n,i);break;case"data":if(t!=="object"){an(e,"data",n);break}case"src":case"href":if(n===""&&(t!=="a"||l!=="href")){e.removeAttribute(l);break}if(n==null||typeof n=="function"||typeof n=="symbol"||typeof n=="boolean"){e.removeAttribute(l);break}n=yt(""+n),e.setAttribute(l,n);break;case"action":case"formAction":if(typeof n=="function"){e.setAttribute(l,"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 i=="function"&&(l==="formAction"?(t!=="input"&&Qe(e,t,"name",a.name,a,null),Qe(e,t,"formEncType",a.formEncType,a,null),Qe(e,t,"formMethod",a.formMethod,a,null),Qe(e,t,"formTarget",a.formTarget,a,null)):(Qe(e,t,"encType",a.encType,a,null),Qe(e,t,"method",a.method,a,null),Qe(e,t,"target",a.target,a,null)));if(n==null||typeof n=="symbol"||typeof n=="boolean"){e.removeAttribute(l);break}n=yt(""+n),e.setAttribute(l,n);break;case"onClick":n!=null&&(e.onclick=h);break;case"onScroll":n!=null&&Se("scroll",e);break;case"onScrollEnd":n!=null&&Se("scrollend",e);break;case"dangerouslySetInnerHTML":if(n!=null){if(typeof n!="object"||!("__html"in n))throw Error(d(61));if(l=n.__html,l!=null){if(a.children!=null)throw Error(d(60));e.innerHTML=l}}break;case"multiple":e.multiple=n&&typeof n!="function"&&typeof n!="symbol";break;case"muted":e.muted=n&&typeof n!="function"&&typeof n!="symbol";break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"defaultValue":case"defaultChecked":case"innerHTML":case"ref":break;case"autoFocus":break;case"xlinkHref":if(n==null||typeof n=="function"||typeof n=="boolean"||typeof n=="symbol"){e.removeAttribute("xlink:href");break}l=yt(""+n),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",l);break;case"contentEditable":case"spellCheck":case"draggable":case"value":case"autoReverse":case"externalResourcesRequired":case"focusable":case"preserveAlpha":n!=null&&typeof n!="function"&&typeof n!="symbol"?e.setAttribute(l,""+n):e.removeAttribute(l);break;case"inert":case"allowFullScreen":case"async":case"autoPlay":case"controls":case"default":case"defer":case"disabled":case"disablePictureInPicture":case"disableRemotePlayback":case"formNoValidate":case"hidden":case"loop":case"noModule":case"noValidate":case"open":case"playsInline":case"readOnly":case"required":case"reversed":case"scoped":case"seamless":case"itemScope":n&&typeof n!="function"&&typeof n!="symbol"?e.setAttribute(l,""):e.removeAttribute(l);break;case"capture":case"download":n===!0?e.setAttribute(l,""):n!==!1&&n!=null&&typeof n!="function"&&typeof n!="symbol"?e.setAttribute(l,n):e.removeAttribute(l);break;case"cols":case"rows":case"size":case"span":n!=null&&typeof n!="function"&&typeof n!="symbol"&&!isNaN(n)&&1<=n?e.setAttribute(l,n):e.removeAttribute(l);break;case"rowSpan":case"start":n==null||typeof n=="function"||typeof n=="symbol"||isNaN(n)?e.removeAttribute(l):e.setAttribute(l,n);break;case"popover":Se("beforetoggle",e),Se("toggle",e),Ve(e,"popover",n);break;case"xlinkActuate":Xt(e,"http://www.w3.org/1999/xlink","xlink:actuate",n);break;case"xlinkArcrole":Xt(e,"http://www.w3.org/1999/xlink","xlink:arcrole",n);break;case"xlinkRole":Xt(e,"http://www.w3.org/1999/xlink","xlink:role",n);break;case"xlinkShow":Xt(e,"http://www.w3.org/1999/xlink","xlink:show",n);break;case"xlinkTitle":Xt(e,"http://www.w3.org/1999/xlink","xlink:title",n);break;case"xlinkType":Xt(e,"http://www.w3.org/1999/xlink","xlink:type",n);break;case"xmlBase":Xt(e,"http://www.w3.org/XML/1998/namespace","xml:base",n);break;case"xmlLang":Xt(e,"http://www.w3.org/XML/1998/namespace","xml:lang",n);break;case"xmlSpace":Xt(e,"http://www.w3.org/XML/1998/namespace","xml:space",n);break;case"is":Ve(e,"is",n);break;case"innerText":case"textContent":break;default:(!(2<l.length)||l[0]!=="o"&&l[0]!=="O"||l[1]!=="n"&&l[1]!=="N")&&(l=J.get(l)||l,Ve(e,l,n))}}function Xc(e,t,l,n,a,i){switch(l){case"style":ke(e,n,i);break;case"dangerouslySetInnerHTML":if(n!=null){if(typeof n!="object"||!("__html"in n))throw Error(d(61));if(l=n.__html,l!=null){if(a.children!=null)throw Error(d(60));e.innerHTML=l}}break;case"children":typeof n=="string"?k(e,n):(typeof n=="number"||typeof n=="bigint")&&k(e,""+n);break;case"onScroll":n!=null&&Se("scroll",e);break;case"onScrollEnd":n!=null&&Se("scrollend",e);break;case"onClick":n!=null&&(e.onclick=h);break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"innerHTML":case"ref":break;case"innerText":case"textContent":break;default:if(!Dl.hasOwnProperty(l))e:{if(l[0]==="o"&&l[1]==="n"&&(a=l.endsWith("Capture"),t=l.slice(2,a?l.length-7:void 0),i=e[We]||null,i=i!=null?i[l]:null,typeof i=="function"&&e.removeEventListener(t,i,a),typeof n=="function")){typeof i!="function"&&i!==null&&(l in e?e[l]=null:e.hasAttribute(l)&&e.removeAttribute(l)),e.addEventListener(t,n,a);break e}l in e?e[l]=n:n===!0?e.setAttribute(l,""):Ve(e,l,n)}}}function Gt(e,t,l){switch(t){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"img":Se("error",e),Se("load",e);var n=!1,a=!1,i;for(i in l)if(l.hasOwnProperty(i)){var u=l[i];if(u!=null)switch(i){case"src":n=!0;break;case"srcSet":a=!0;break;case"children":case"dangerouslySetInnerHTML":throw Error(d(137,t));default:Qe(e,t,i,u,l,null)}}a&&Qe(e,t,"srcSet",l.srcSet,l,null),n&&Qe(e,t,"src",l.src,l,null);return;case"input":Se("invalid",e);var r=i=u=a=null,v=null,N=null;for(n in l)if(l.hasOwnProperty(n)){var _=l[n];if(_!=null)switch(n){case"name":a=_;break;case"type":u=_;break;case"checked":v=_;break;case"defaultChecked":N=_;break;case"value":i=_;break;case"defaultValue":r=_;break;case"children":case"dangerouslySetInnerHTML":if(_!=null)throw Error(d(137,t));break;default:Qe(e,t,n,_,l,null)}}bn(e,i,r,v,N,u,a,!1);return;case"select":Se("invalid",e),n=u=i=null;for(a in l)if(l.hasOwnProperty(a)&&(r=l[a],r!=null))switch(a){case"value":i=r;break;case"defaultValue":u=r;break;case"multiple":n=r;default:Qe(e,t,a,r,l,null)}t=i,l=u,e.multiple=!!n,t!=null?f(e,!!n,t,!1):l!=null&&f(e,!!n,l,!0);return;case"textarea":Se("invalid",e),i=a=n=null;for(u in l)if(l.hasOwnProperty(u)&&(r=l[u],r!=null))switch(u){case"value":n=r;break;case"defaultValue":a=r;break;case"children":i=r;break;case"dangerouslySetInnerHTML":if(r!=null)throw Error(d(91));break;default:Qe(e,t,u,r,l,null)}C(e,n,a,i);return;case"option":for(v in l)l.hasOwnProperty(v)&&(n=l[v],n!=null)&&(v==="selected"?e.selected=n&&typeof n!="function"&&typeof n!="symbol":Qe(e,t,v,n,l,null));return;case"dialog":Se("beforetoggle",e),Se("toggle",e),Se("cancel",e),Se("close",e);break;case"iframe":case"object":Se("load",e);break;case"video":case"audio":for(n=0;n<Ui.length;n++)Se(Ui[n],e);break;case"image":Se("error",e),Se("load",e);break;case"details":Se("toggle",e);break;case"embed":case"source":case"link":Se("error",e),Se("load",e);case"area":case"base":case"br":case"col":case"hr":case"keygen":case"meta":case"param":case"track":case"wbr":case"menuitem":for(N in l)if(l.hasOwnProperty(N)&&(n=l[N],n!=null))switch(N){case"children":case"dangerouslySetInnerHTML":throw Error(d(137,t));default:Qe(e,t,N,n,l,null)}return;default:if(st(t)){for(_ in l)l.hasOwnProperty(_)&&(n=l[_],n!==void 0&&Xc(e,t,_,n,l,void 0));return}}for(r in l)l.hasOwnProperty(r)&&(n=l[r],n!=null&&Qe(e,t,r,n,l,null))}function sv(e,t,l,n){switch(t){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"input":var a=null,i=null,u=null,r=null,v=null,N=null,_=null;for(A in l){var w=l[A];if(l.hasOwnProperty(A)&&w!=null)switch(A){case"checked":break;case"value":break;case"defaultValue":v=w;default:n.hasOwnProperty(A)||Qe(e,t,A,null,n,w)}}for(var T in n){var A=n[T];if(w=l[T],n.hasOwnProperty(T)&&(A!=null||w!=null))switch(T){case"type":i=A;break;case"name":a=A;break;case"checked":N=A;break;case"defaultChecked":_=A;break;case"value":u=A;break;case"defaultValue":r=A;break;case"children":case"dangerouslySetInnerHTML":if(A!=null)throw Error(d(137,t));break;default:A!==w&&Qe(e,t,T,A,n,w)}}$l(e,u,r,v,N,_,i,a);return;case"select":A=u=r=T=null;for(i in l)if(v=l[i],l.hasOwnProperty(i)&&v!=null)switch(i){case"value":break;case"multiple":A=v;default:n.hasOwnProperty(i)||Qe(e,t,i,null,n,v)}for(a in n)if(i=n[a],v=l[a],n.hasOwnProperty(a)&&(i!=null||v!=null))switch(a){case"value":T=i;break;case"defaultValue":r=i;break;case"multiple":u=i;default:i!==v&&Qe(e,t,a,i,n,v)}t=r,l=u,n=A,T!=null?f(e,!!l,T,!1):!!n!=!!l&&(t!=null?f(e,!!l,t,!0):f(e,!!l,l?[]:"",!1));return;case"textarea":A=T=null;for(r in l)if(a=l[r],l.hasOwnProperty(r)&&a!=null&&!n.hasOwnProperty(r))switch(r){case"value":break;case"children":break;default:Qe(e,t,r,null,n,a)}for(u in n)if(a=n[u],i=l[u],n.hasOwnProperty(u)&&(a!=null||i!=null))switch(u){case"value":T=a;break;case"defaultValue":A=a;break;case"children":break;case"dangerouslySetInnerHTML":if(a!=null)throw Error(d(91));break;default:a!==i&&Qe(e,t,u,a,n,i)}x(e,T,A);return;case"option":for(var W in l)T=l[W],l.hasOwnProperty(W)&&T!=null&&!n.hasOwnProperty(W)&&(W==="selected"?e.selected=!1:Qe(e,t,W,null,n,T));for(v in n)T=n[v],A=l[v],n.hasOwnProperty(v)&&T!==A&&(T!=null||A!=null)&&(v==="selected"?e.selected=T&&typeof T!="function"&&typeof T!="symbol":Qe(e,t,v,T,n,A));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 ie in l)T=l[ie],l.hasOwnProperty(ie)&&T!=null&&!n.hasOwnProperty(ie)&&Qe(e,t,ie,null,n,T);for(N in n)if(T=n[N],A=l[N],n.hasOwnProperty(N)&&T!==A&&(T!=null||A!=null))switch(N){case"children":case"dangerouslySetInnerHTML":if(T!=null)throw Error(d(137,t));break;default:Qe(e,t,N,T,n,A)}return;default:if(st(t)){for(var Xe in l)T=l[Xe],l.hasOwnProperty(Xe)&&T!==void 0&&!n.hasOwnProperty(Xe)&&Xc(e,t,Xe,void 0,n,T);for(_ in n)T=n[_],A=l[_],!n.hasOwnProperty(_)||T===A||T===void 0&&A===void 0||Xc(e,t,_,T,n,A);return}}for(var b in l)T=l[b],l.hasOwnProperty(b)&&T!=null&&!n.hasOwnProperty(b)&&Qe(e,t,b,null,n,T);for(w in n)T=n[w],A=l[w],!n.hasOwnProperty(w)||T===A||T==null&&A==null||Qe(e,t,w,T,n,A)}function Rf(e){switch(e){case"css":case"script":case"font":case"img":case"image":case"input":case"link":return!0;default:return!1}}function uv(){if(typeof performance.getEntriesByType=="function"){for(var e=0,t=0,l=performance.getEntriesByType("resource"),n=0;n<l.length;n++){var a=l[n],i=a.transferSize,u=a.initiatorType,r=a.duration;if(i&&r&&Rf(u)){for(u=0,r=a.responseEnd,n+=1;n<l.length;n++){var v=l[n],N=v.startTime;if(N>r)break;var _=v.transferSize,w=v.initiatorType;_&&Rf(w)&&(v=v.responseEnd,u+=_*(v<r?1:(r-N)/(v-N)))}if(--n,t+=8*(i+u)/(a.duration/1e3),e++,10<e)break}}if(0<e)return t/e/1e6}return navigator.connection&&(e=navigator.connection.downlink,typeof e=="number")?e:5}var Zc=null,Vc=null;function Xs(e){return e.nodeType===9?e:e.ownerDocument}function Df(e){switch(e){case"http://www.w3.org/2000/svg":return 1;case"http://www.w3.org/1998/Math/MathML":return 2;default:return 0}}function zf(e,t){if(e===0)switch(t){case"svg":return 1;case"math":return 2;default:return 0}return e===1&&t==="foreignObject"?0:e}function Kc(e,t){return e==="textarea"||e==="noscript"||typeof t.children=="string"||typeof t.children=="number"||typeof t.children=="bigint"||typeof t.dangerouslySetInnerHTML=="object"&&t.dangerouslySetInnerHTML!==null&&t.dangerouslySetInnerHTML.__html!=null}var $c=null;function cv(){var e=window.event;return e&&e.type==="popstate"?e===$c?!1:($c=e,!0):($c=null,!1)}var Of=typeof setTimeout=="function"?setTimeout:void 0,ov=typeof clearTimeout=="function"?clearTimeout:void 0,_f=typeof Promise=="function"?Promise:void 0,rv=typeof queueMicrotask=="function"?queueMicrotask:typeof _f<"u"?function(e){return _f.resolve(null).then(e).catch(dv)}:Of;function dv(e){setTimeout(function(){throw e})}function ta(e){return e==="head"}function Mf(e,t){var l=t,n=0;do{var a=l.nextSibling;if(e.removeChild(l),a&&a.nodeType===8)if(l=a.data,l==="/$"||l==="/&"){if(n===0){e.removeChild(a),ii(t);return}n--}else if(l==="$"||l==="$?"||l==="$~"||l==="$!"||l==="&")n++;else if(l==="html")Li(e.ownerDocument.documentElement);else if(l==="head"){l=e.ownerDocument.head,Li(l);for(var i=l.firstChild;i;){var u=i.nextSibling,r=i.nodeName;i[rl]||r==="SCRIPT"||r==="STYLE"||r==="LINK"&&i.rel.toLowerCase()==="stylesheet"||l.removeChild(i),i=u}}else l==="body"&&Li(e.ownerDocument.body);l=a}while(l);ii(t)}function kf(e,t){var l=e;e=0;do{var n=l.nextSibling;if(l.nodeType===1?t?(l._stashedDisplay=l.style.display,l.style.display="none"):(l.style.display=l._stashedDisplay||"",l.getAttribute("style")===""&&l.removeAttribute("style")):l.nodeType===3&&(t?(l._stashedText=l.nodeValue,l.nodeValue=""):l.nodeValue=l._stashedText||""),n&&n.nodeType===8)if(l=n.data,l==="/$"){if(e===0)break;e--}else l!=="$"&&l!=="$?"&&l!=="$~"&&l!=="$!"||e++;l=n}while(l)}function Jc(e){var t=e.firstChild;for(t&&t.nodeType===10&&(t=t.nextSibling);t;){var l=t;switch(t=t.nextSibling,l.nodeName){case"HTML":case"HEAD":case"BODY":Jc(l),nn(l);continue;case"SCRIPT":case"STYLE":continue;case"LINK":if(l.rel.toLowerCase()==="stylesheet")continue}e.removeChild(l)}}function fv(e,t,l,n){for(;e.nodeType===1;){var a=l;if(e.nodeName.toLowerCase()!==t.toLowerCase()){if(!n&&(e.nodeName!=="INPUT"||e.type!=="hidden"))break}else if(n){if(!e[rl])switch(t){case"meta":if(!e.hasAttribute("itemprop"))break;return e;case"link":if(i=e.getAttribute("rel"),i==="stylesheet"&&e.hasAttribute("data-precedence"))break;if(i!==a.rel||e.getAttribute("href")!==(a.href==null||a.href===""?null:a.href)||e.getAttribute("crossorigin")!==(a.crossOrigin==null?null:a.crossOrigin)||e.getAttribute("title")!==(a.title==null?null:a.title))break;return e;case"style":if(e.hasAttribute("data-precedence"))break;return e;case"script":if(i=e.getAttribute("src"),(i!==(a.src==null?null:a.src)||e.getAttribute("type")!==(a.type==null?null:a.type)||e.getAttribute("crossorigin")!==(a.crossOrigin==null?null:a.crossOrigin))&&i&&e.hasAttribute("async")&&!e.hasAttribute("itemprop"))break;return e;default:return e}}else if(t==="input"&&e.type==="hidden"){var i=a.name==null?null:""+a.name;if(a.type==="hidden"&&e.getAttribute("name")===i)return e}else return e;if(e=ql(e.nextSibling),e===null)break}return null}function mv(e,t,l){if(t==="")return null;for(;e.nodeType!==3;)if((e.nodeType!==1||e.nodeName!=="INPUT"||e.type!=="hidden")&&!l||(e=ql(e.nextSibling),e===null))return null;return e}function wf(e,t){for(;e.nodeType!==8;)if((e.nodeType!==1||e.nodeName!=="INPUT"||e.type!=="hidden")&&!t||(e=ql(e.nextSibling),e===null))return null;return e}function Ic(e){return e.data==="$?"||e.data==="$~"}function Wc(e){return e.data==="$!"||e.data==="$?"&&e.ownerDocument.readyState!=="loading"}function hv(e,t){var l=e.ownerDocument;if(e.data==="$~")e._reactRetry=t;else if(e.data!=="$?"||l.readyState!=="loading")t();else{var n=function(){t(),l.removeEventListener("DOMContentLoaded",n)};l.addEventListener("DOMContentLoaded",n),e._reactRetry=n}}function ql(e){for(;e!=null;e=e.nextSibling){var t=e.nodeType;if(t===1||t===3)break;if(t===8){if(t=e.data,t==="$"||t==="$!"||t==="$?"||t==="$~"||t==="&"||t==="F!"||t==="F")break;if(t==="/$"||t==="/&")return null}}return e}var Fc=null;function Uf(e){e=e.nextSibling;for(var t=0;e;){if(e.nodeType===8){var l=e.data;if(l==="/$"||l==="/&"){if(t===0)return ql(e.nextSibling);t--}else l!=="$"&&l!=="$!"&&l!=="$?"&&l!=="$~"&&l!=="&"||t++}e=e.nextSibling}return null}function Hf(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var l=e.data;if(l==="$"||l==="$!"||l==="$?"||l==="$~"||l==="&"){if(t===0)return e;t--}else l!=="/$"&&l!=="/&"||t++}e=e.previousSibling}return null}function Lf(e,t,l){switch(t=Xs(l),e){case"html":if(e=t.documentElement,!e)throw Error(d(452));return e;case"head":if(e=t.head,!e)throw Error(d(453));return e;case"body":if(e=t.body,!e)throw Error(d(454));return e;default:throw Error(d(451))}}function Li(e){for(var t=e.attributes;t.length;)e.removeAttributeNode(t[0]);nn(e)}var Gl=new Map,qf=new Set;function Zs(e){return typeof e.getRootNode=="function"?e.getRootNode():e.nodeType===9?e:e.ownerDocument}var kn=Q.d;Q.d={f:vv,r:yv,D:pv,C:gv,L:bv,m:Sv,X:jv,S:xv,M:Nv};function vv(){var e=kn.f(),t=Us();return e||t}function yv(e){var t=tl(e);t!==null&&t.tag===5&&t.type==="form"?td(t):kn.r(e)}var li=typeof document>"u"?null:document;function Gf(e,t,l){var n=li;if(n&&typeof t=="string"&&t){var a=zt(t);a='link[rel="'+e+'"][href="'+a+'"]',typeof l=="string"&&(a+='[crossorigin="'+l+'"]'),qf.has(a)||(qf.add(a),e={rel:e,crossOrigin:l,href:t},n.querySelector(a)===null&&(t=n.createElement("link"),Gt(t,"link",e),Be(t),n.head.appendChild(t)))}}function pv(e){kn.D(e),Gf("dns-prefetch",e,null)}function gv(e,t){kn.C(e,t),Gf("preconnect",e,t)}function bv(e,t,l){kn.L(e,t,l);var n=li;if(n&&e&&t){var a='link[rel="preload"][as="'+zt(t)+'"]';t==="image"&&l&&l.imageSrcSet?(a+='[imagesrcset="'+zt(l.imageSrcSet)+'"]',typeof l.imageSizes=="string"&&(a+='[imagesizes="'+zt(l.imageSizes)+'"]')):a+='[href="'+zt(e)+'"]';var i=a;switch(t){case"style":i=ni(e);break;case"script":i=ai(e)}Gl.has(i)||(e=B({rel:"preload",href:t==="image"&&l&&l.imageSrcSet?void 0:e,as:t},l),Gl.set(i,e),n.querySelector(a)!==null||t==="style"&&n.querySelector(qi(i))||t==="script"&&n.querySelector(Gi(i))||(t=n.createElement("link"),Gt(t,"link",e),Be(t),n.head.appendChild(t)))}}function Sv(e,t){kn.m(e,t);var l=li;if(l&&e){var n=t&&typeof t.as=="string"?t.as:"script",a='link[rel="modulepreload"][as="'+zt(n)+'"][href="'+zt(e)+'"]',i=a;switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":i=ai(e)}if(!Gl.has(i)&&(e=B({rel:"modulepreload",href:e},t),Gl.set(i,e),l.querySelector(a)===null)){switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(l.querySelector(Gi(i)))return}n=l.createElement("link"),Gt(n,"link",e),Be(n),l.head.appendChild(n)}}}function xv(e,t,l){kn.S(e,t,l);var n=li;if(n&&e){var a=Ut(n).hoistableStyles,i=ni(e);t=t||"default";var u=a.get(i);if(!u){var r={loading:0,preload:null};if(u=n.querySelector(qi(i)))r.loading=5;else{e=B({rel:"stylesheet",href:e,"data-precedence":t},l),(l=Gl.get(i))&&Pc(e,l);var v=u=n.createElement("link");Be(v),Gt(v,"link",e),v._p=new Promise(function(N,_){v.onload=N,v.onerror=_}),v.addEventListener("load",function(){r.loading|=1}),v.addEventListener("error",function(){r.loading|=2}),r.loading|=4,Vs(u,t,n)}u={type:"stylesheet",instance:u,count:1,state:r},a.set(i,u)}}}function jv(e,t){kn.X(e,t);var l=li;if(l&&e){var n=Ut(l).hoistableScripts,a=ai(e),i=n.get(a);i||(i=l.querySelector(Gi(a)),i||(e=B({src:e,async:!0},t),(t=Gl.get(a))&&eo(e,t),i=l.createElement("script"),Be(i),Gt(i,"link",e),l.head.appendChild(i)),i={type:"script",instance:i,count:1,state:null},n.set(a,i))}}function Nv(e,t){kn.M(e,t);var l=li;if(l&&e){var n=Ut(l).hoistableScripts,a=ai(e),i=n.get(a);i||(i=l.querySelector(Gi(a)),i||(e=B({src:e,async:!0,type:"module"},t),(t=Gl.get(a))&&eo(e,t),i=l.createElement("script"),Be(i),Gt(i,"link",e),l.head.appendChild(i)),i={type:"script",instance:i,count:1,state:null},n.set(a,i))}}function Bf(e,t,l,n){var a=(a=he.current)?Zs(a):null;if(!a)throw Error(d(446));switch(e){case"meta":case"title":return null;case"style":return typeof l.precedence=="string"&&typeof l.href=="string"?(t=ni(l.href),l=Ut(a).hoistableStyles,n=l.get(t),n||(n={type:"style",instance:null,count:0,state:null},l.set(t,n)),n):{type:"void",instance:null,count:0,state:null};case"link":if(l.rel==="stylesheet"&&typeof l.href=="string"&&typeof l.precedence=="string"){e=ni(l.href);var i=Ut(a).hoistableStyles,u=i.get(e);if(u||(a=a.ownerDocument||a,u={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},i.set(e,u),(i=a.querySelector(qi(e)))&&!i._p&&(u.instance=i,u.state.loading=5),Gl.has(e)||(l={rel:"preload",as:"style",href:l.href,crossOrigin:l.crossOrigin,integrity:l.integrity,media:l.media,hrefLang:l.hrefLang,referrerPolicy:l.referrerPolicy},Gl.set(e,l),i||Tv(a,e,l,u.state))),t&&n===null)throw Error(d(528,""));return u}if(t&&n!==null)throw Error(d(529,""));return null;case"script":return t=l.async,l=l.src,typeof l=="string"&&t&&typeof t!="function"&&typeof t!="symbol"?(t=ai(l),l=Ut(a).hoistableScripts,n=l.get(t),n||(n={type:"script",instance:null,count:0,state:null},l.set(t,n)),n):{type:"void",instance:null,count:0,state:null};default:throw Error(d(444,e))}}function ni(e){return'href="'+zt(e)+'"'}function qi(e){return'link[rel="stylesheet"]['+e+"]"}function Yf(e){return B({},e,{"data-precedence":e.precedence,precedence:null})}function Tv(e,t,l,n){e.querySelector('link[rel="preload"][as="style"]['+t+"]")?n.loading=1:(t=e.createElement("link"),n.preload=t,t.addEventListener("load",function(){return n.loading|=1}),t.addEventListener("error",function(){return n.loading|=2}),Gt(t,"link",l),Be(t),e.head.appendChild(t))}function ai(e){return'[src="'+zt(e)+'"]'}function Gi(e){return"script[async]"+e}function Qf(e,t,l){if(t.count++,t.instance===null)switch(t.type){case"style":var n=e.querySelector('style[data-href~="'+zt(l.href)+'"]');if(n)return t.instance=n,Be(n),n;var a=B({},l,{"data-href":l.href,"data-precedence":l.precedence,href:null,precedence:null});return n=(e.ownerDocument||e).createElement("style"),Be(n),Gt(n,"style",a),Vs(n,l.precedence,e),t.instance=n;case"stylesheet":a=ni(l.href);var i=e.querySelector(qi(a));if(i)return t.state.loading|=4,t.instance=i,Be(i),i;n=Yf(l),(a=Gl.get(a))&&Pc(n,a),i=(e.ownerDocument||e).createElement("link"),Be(i);var u=i;return u._p=new Promise(function(r,v){u.onload=r,u.onerror=v}),Gt(i,"link",n),t.state.loading|=4,Vs(i,l.precedence,e),t.instance=i;case"script":return i=ai(l.src),(a=e.querySelector(Gi(i)))?(t.instance=a,Be(a),a):(n=l,(a=Gl.get(i))&&(n=B({},l),eo(n,a)),e=e.ownerDocument||e,a=e.createElement("script"),Be(a),Gt(a,"link",n),e.head.appendChild(a),t.instance=a);case"void":return null;default:throw Error(d(443,t.type))}else t.type==="stylesheet"&&(t.state.loading&4)===0&&(n=t.instance,t.state.loading|=4,Vs(n,l.precedence,e));return t.instance}function Vs(e,t,l){for(var n=l.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=n.length?n[n.length-1]:null,i=a,u=0;u<n.length;u++){var r=n[u];if(r.dataset.precedence===t)i=r;else if(i!==a)break}i?i.parentNode.insertBefore(e,i.nextSibling):(t=l.nodeType===9?l.head:l,t.insertBefore(e,t.firstChild))}function Pc(e,t){e.crossOrigin==null&&(e.crossOrigin=t.crossOrigin),e.referrerPolicy==null&&(e.referrerPolicy=t.referrerPolicy),e.title==null&&(e.title=t.title)}function eo(e,t){e.crossOrigin==null&&(e.crossOrigin=t.crossOrigin),e.referrerPolicy==null&&(e.referrerPolicy=t.referrerPolicy),e.integrity==null&&(e.integrity=t.integrity)}var Ks=null;function Xf(e,t,l){if(Ks===null){var n=new Map,a=Ks=new Map;a.set(l,n)}else a=Ks,n=a.get(l),n||(n=new Map,a.set(l,n));if(n.has(e))return n;for(n.set(e,null),l=l.getElementsByTagName(e),a=0;a<l.length;a++){var i=l[a];if(!(i[rl]||i[ue]||e==="link"&&i.getAttribute("rel")==="stylesheet")&&i.namespaceURI!=="http://www.w3.org/2000/svg"){var u=i.getAttribute(t)||"";u=e+u;var r=n.get(u);r?r.push(i):n.set(u,[i])}}return n}function Zf(e,t,l){e=e.ownerDocument||e,e.head.insertBefore(l,t==="title"?e.querySelector("head > title"):null)}function Ev(e,t,l){if(l===1||t.itemProp!=null)return!1;switch(e){case"meta":case"title":return!0;case"style":if(typeof t.precedence!="string"||typeof t.href!="string"||t.href==="")break;return!0;case"link":if(typeof t.rel!="string"||typeof t.href!="string"||t.href===""||t.onLoad||t.onError)break;return t.rel==="stylesheet"?(e=t.disabled,typeof t.precedence=="string"&&e==null):!0;case"script":if(t.async&&typeof t.async!="function"&&typeof t.async!="symbol"&&!t.onLoad&&!t.onError&&t.src&&typeof t.src=="string")return!0}return!1}function Vf(e){return!(e.type==="stylesheet"&&(e.state.loading&3)===0)}function Cv(e,t,l,n){if(l.type==="stylesheet"&&(typeof n.media!="string"||matchMedia(n.media).matches!==!1)&&(l.state.loading&4)===0){if(l.instance===null){var a=ni(n.href),i=t.querySelector(qi(a));if(i){t=i._p,t!==null&&typeof t=="object"&&typeof t.then=="function"&&(e.count++,e=$s.bind(e),t.then(e,e)),l.state.loading|=4,l.instance=i,Be(i);return}i=t.ownerDocument||t,n=Yf(n),(a=Gl.get(a))&&Pc(n,a),i=i.createElement("link"),Be(i);var u=i;u._p=new Promise(function(r,v){u.onload=r,u.onerror=v}),Gt(i,"link",n),l.instance=i}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(l,t),(t=l.state.preload)&&(l.state.loading&3)===0&&(e.count++,l=$s.bind(e),t.addEventListener("load",l),t.addEventListener("error",l))}}var to=0;function Av(e,t){return e.stylesheets&&e.count===0&&Is(e,e.stylesheets),0<e.count||0<e.imgCount?function(l){var n=setTimeout(function(){if(e.stylesheets&&Is(e,e.stylesheets),e.unsuspend){var i=e.unsuspend;e.unsuspend=null,i()}},6e4+t);0<e.imgBytes&&to===0&&(to=62500*uv());var a=setTimeout(function(){if(e.waitingForImages=!1,e.count===0&&(e.stylesheets&&Is(e,e.stylesheets),e.unsuspend)){var i=e.unsuspend;e.unsuspend=null,i()}},(e.imgBytes>to?50:800)+t);return e.unsuspend=l,function(){e.unsuspend=null,clearTimeout(n),clearTimeout(a)}}:null}function $s(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Is(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var Js=null;function Is(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,Js=new Map,t.forEach(Rv,e),Js=null,$s.call(e))}function Rv(e,t){if(!(t.state.loading&4)){var l=Js.get(e);if(l)var n=l.get(null);else{l=new Map,Js.set(e,l);for(var a=e.querySelectorAll("link[data-precedence],style[data-precedence]"),i=0;i<a.length;i++){var u=a[i];(u.nodeName==="LINK"||u.getAttribute("media")!=="not all")&&(l.set(u.dataset.precedence,u),n=u)}n&&l.set(null,n)}a=t.instance,u=a.getAttribute("data-precedence"),i=l.get(u)||n,i===n&&l.set(null,a),l.set(u,a),this.count++,n=$s.bind(this),a.addEventListener("load",n),a.addEventListener("error",n),i?i.parentNode.insertBefore(a,i.nextSibling):(e=e.nodeType===9?e.head:e,e.insertBefore(a,e.firstChild)),t.state.loading|=4}}var Bi={$$typeof:Me,Provider:null,Consumer:null,_currentValue:ne,_currentValue2:ne,_threadCount:0};function Dv(e,t,l,n,a,i,u,r,v){this.tag=1,this.containerInfo=e,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=Qt(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Qt(0),this.hiddenUpdates=Qt(null),this.identifierPrefix=n,this.onUncaughtError=a,this.onCaughtError=i,this.onRecoverableError=u,this.pooledCache=null,this.pooledCacheLanes=0,this.formState=v,this.incompleteTransitions=new Map}function Kf(e,t,l,n,a,i,u,r,v,N,_,w){return e=new Dv(e,t,l,u,v,N,_,w,r),t=1,i===!0&&(t|=24),i=fl(3,null,null,t),e.current=i,i.stateNode=e,t=ku(),t.refCount++,e.pooledCache=t,t.refCount++,i.memoizedState={element:n,isDehydrated:l,cache:t},Lu(i),e}function $f(e){return e?(e=wa,e):wa}function Jf(e,t,l,n,a,i){a=$f(a),n.context===null?n.context=a:n.pendingContext=a,n=Xn(t),n.payload={element:l},i=i===void 0?null:i,i!==null&&(n.callback=i),l=Zn(e,n,t),l!==null&&(cl(l,e,t),bi(l,e,t))}function If(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var l=e.retryLane;e.retryLane=l!==0&&l<t?l:t}}function lo(e,t){If(e,t),(e=e.alternate)&&If(e,t)}function Wf(e){if(e.tag===13||e.tag===31){var t=ma(e,67108864);t!==null&&cl(t,e,67108864),lo(e,67108864)}}function Ff(e){if(e.tag===13||e.tag===31){var t=pl();t=ht(t);var l=ma(e,t);l!==null&&cl(l,e,t),lo(e,t)}}var Ws=!0;function zv(e,t,l,n){var a=D.T;D.T=null;var i=Q.p;try{Q.p=2,no(e,t,l,n)}finally{Q.p=i,D.T=a}}function Ov(e,t,l,n){var a=D.T;D.T=null;var i=Q.p;try{Q.p=8,no(e,t,l,n)}finally{Q.p=i,D.T=a}}function no(e,t,l,n){if(Ws){var a=ao(n);if(a===null)Qc(e,t,n,Fs,l),em(e,n);else if(Mv(a,e,t,l,n))n.stopPropagation();else if(em(e,n),t&4&&-1<_v.indexOf(e)){for(;a!==null;){var i=tl(a);if(i!==null)switch(i.tag){case 3:if(i=i.stateNode,i.current.memoizedState.isDehydrated){var u=wt(i.pendingLanes);if(u!==0){var r=i;for(r.pendingLanes|=2,r.entangledLanes|=2;u;){var v=1<<31-Ct(u);r.entanglements[1]|=v,u&=~v}dn(i),(we&6)===0&&(ks=mt()+500,wi(0))}}break;case 31:case 13:r=ma(i,2),r!==null&&cl(r,i,2),Us(),lo(i,2)}if(i=ao(n),i===null&&Qc(e,t,n,Fs,l),i===a)break;a=i}a!==null&&n.stopPropagation()}else Qc(e,t,n,null,l)}}function ao(e){return e=Y(e),io(e)}var Fs=null;function io(e){if(Fs=null,e=It(e),e!==null){var t=R(e);if(t===null)e=null;else{var l=t.tag;if(l===13){if(e=z(t),e!==null)return e;e=null}else if(l===31){if(e=X(t),e!==null)return e;e=null}else if(l===3){if(t.stateNode.current.memoizedState.isDehydrated)return t.tag===3?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null)}}return Fs=e,null}function Pf(e){switch(e){case"beforetoggle":case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"toggle":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 2;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 8;case"message":switch(Re()){case hn:return 2;case He:return 8;case Nl:case it:return 32;case Yl:return 268435456;default:return 32}default:return 32}}var so=!1,la=null,na=null,aa=null,Yi=new Map,Qi=new Map,ia=[],_v="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 em(e,t){switch(e){case"focusin":case"focusout":la=null;break;case"dragenter":case"dragleave":na=null;break;case"mouseover":case"mouseout":aa=null;break;case"pointerover":case"pointerout":Yi.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":Qi.delete(t.pointerId)}}function Xi(e,t,l,n,a,i){return e===null||e.nativeEvent!==i?(e={blockedOn:t,domEventName:l,eventSystemFlags:n,nativeEvent:i,targetContainers:[a]},t!==null&&(t=tl(t),t!==null&&Wf(t)),e):(e.eventSystemFlags|=n,t=e.targetContainers,a!==null&&t.indexOf(a)===-1&&t.push(a),e)}function Mv(e,t,l,n,a){switch(t){case"focusin":return la=Xi(la,e,t,l,n,a),!0;case"dragenter":return na=Xi(na,e,t,l,n,a),!0;case"mouseover":return aa=Xi(aa,e,t,l,n,a),!0;case"pointerover":var i=a.pointerId;return Yi.set(i,Xi(Yi.get(i)||null,e,t,l,n,a)),!0;case"gotpointercapture":return i=a.pointerId,Qi.set(i,Xi(Qi.get(i)||null,e,t,l,n,a)),!0}return!1}function tm(e){var t=It(e.target);if(t!==null){var l=R(t);if(l!==null){if(t=l.tag,t===13){if(t=z(l),t!==null){e.blockedOn=t,tn(e.priority,function(){Ff(l)});return}}else if(t===31){if(t=X(l),t!==null){e.blockedOn=t,tn(e.priority,function(){Ff(l)});return}}else if(t===3&&l.stateNode.current.memoizedState.isDehydrated){e.blockedOn=l.tag===3?l.stateNode.containerInfo:null;return}}}e.blockedOn=null}function Ps(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var l=ao(e.nativeEvent);if(l===null){l=e.nativeEvent;var n=new l.constructor(l.type,l);U=n,l.target.dispatchEvent(n),U=null}else return t=tl(l),t!==null&&Wf(t),e.blockedOn=l,!1;t.shift()}return!0}function lm(e,t,l){Ps(e)&&l.delete(t)}function kv(){so=!1,la!==null&&Ps(la)&&(la=null),na!==null&&Ps(na)&&(na=null),aa!==null&&Ps(aa)&&(aa=null),Yi.forEach(lm),Qi.forEach(lm)}function eu(e,t){e.blockedOn===t&&(e.blockedOn=null,so||(so=!0,c.unstable_scheduleCallback(c.unstable_NormalPriority,kv)))}var tu=null;function nm(e){tu!==e&&(tu=e,c.unstable_scheduleCallback(c.unstable_NormalPriority,function(){tu===e&&(tu=null);for(var t=0;t<e.length;t+=3){var l=e[t],n=e[t+1],a=e[t+2];if(typeof n!="function"){if(io(n||l)===null)continue;break}var i=tl(l);i!==null&&(e.splice(t,3),t-=3,ac(i,{pending:!0,data:a,method:l.method,action:n},n,a))}}))}function ii(e){function t(v){return eu(v,e)}la!==null&&eu(la,e),na!==null&&eu(na,e),aa!==null&&eu(aa,e),Yi.forEach(t),Qi.forEach(t);for(var l=0;l<ia.length;l++){var n=ia[l];n.blockedOn===e&&(n.blockedOn=null)}for(;0<ia.length&&(l=ia[0],l.blockedOn===null);)tm(l),l.blockedOn===null&&ia.shift();if(l=(e.ownerDocument||e).$$reactFormReplay,l!=null)for(n=0;n<l.length;n+=3){var a=l[n],i=l[n+1],u=a[We]||null;if(typeof i=="function")u||nm(l);else if(u){var r=null;if(i&&i.hasAttribute("formAction")){if(a=i,u=i[We]||null)r=u.formAction;else if(io(a)!==null)continue}else r=u.action;typeof r=="function"?l[n+1]=r:(l.splice(n,3),n-=3),nm(l)}}}function am(){function e(i){i.canIntercept&&i.info==="react-transition"&&i.intercept({handler:function(){return new Promise(function(u){return a=u})},focusReset:"manual",scroll:"manual"})}function t(){a!==null&&(a(),a=null),n||setTimeout(l,20)}function l(){if(!n&&!navigation.transition){var i=navigation.currentEntry;i&&i.url!=null&&navigation.navigate(i.url,{state:i.getState(),info:"react-transition",history:"replace"})}}if(typeof navigation=="object"){var n=!1,a=null;return navigation.addEventListener("navigate",e),navigation.addEventListener("navigatesuccess",t),navigation.addEventListener("navigateerror",t),setTimeout(l,100),function(){n=!0,navigation.removeEventListener("navigate",e),navigation.removeEventListener("navigatesuccess",t),navigation.removeEventListener("navigateerror",t),a!==null&&(a(),a=null)}}}function uo(e){this._internalRoot=e}lu.prototype.render=uo.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(d(409));var l=t.current,n=pl();Jf(l,n,e,t,null,null)},lu.prototype.unmount=uo.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var t=e.containerInfo;Jf(e.current,2,null,e,null,null),Us(),t[Cl]=null}};function lu(e){this._internalRoot=e}lu.prototype.unstable_scheduleHydration=function(e){if(e){var t=Dt();e={blockedOn:null,target:e,priority:t};for(var l=0;l<ia.length&&t!==0&&t<ia[l].priority;l++);ia.splice(l,0,e),l===0&&tm(e)}};var im=o.version;if(im!=="19.2.8")throw Error(d(527,im,"19.2.8"));Q.findDOMNode=function(e){var t=e._reactInternals;if(t===void 0)throw typeof e.render=="function"?Error(d(188)):(e=Object.keys(e).join(","),Error(d(268,e)));return e=O(t),e=e!==null?V(e):null,e=e===null?null:e.stateNode,e};var wv={bundleType:0,version:"19.2.8",rendererPackageName:"react-dom",currentDispatcherRef:D,reconcilerVersion:"19.2.8"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var nu=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!nu.isDisabled&&nu.supportsFiber)try{Bt=nu.inject(wv),K=nu}catch{}}return Vi.createRoot=function(e,t){if(!S(e))throw Error(d(299));var l=!1,n="",a=dd,i=fd,u=md;return t!=null&&(t.unstable_strictMode===!0&&(l=!0),t.identifierPrefix!==void 0&&(n=t.identifierPrefix),t.onUncaughtError!==void 0&&(a=t.onUncaughtError),t.onCaughtError!==void 0&&(i=t.onCaughtError),t.onRecoverableError!==void 0&&(u=t.onRecoverableError)),t=Kf(e,1,!1,null,null,l,n,null,a,i,u,am),e[Cl]=t.current,Yc(e),new uo(t)},Vi.hydrateRoot=function(e,t,l){if(!S(e))throw Error(d(299));var n=!1,a="",i=dd,u=fd,r=md,v=null;return l!=null&&(l.unstable_strictMode===!0&&(n=!0),l.identifierPrefix!==void 0&&(a=l.identifierPrefix),l.onUncaughtError!==void 0&&(i=l.onUncaughtError),l.onCaughtError!==void 0&&(u=l.onCaughtError),l.onRecoverableError!==void 0&&(r=l.onRecoverableError),l.formState!==void 0&&(v=l.formState)),t=Kf(e,1,!0,t,l??null,n,a,v,i,u,r,am),t.context=$f(null),l=t.current,n=pl(),n=ht(n),a=Xn(n),a.callback=null,Zn(l,a,n),l=n,t.current.lanes=l,$t(t,l),dn(t),e[Cl]=t.current,Yc(e),new lu(t)},Vi.version="19.2.8",Vi}var vm;function Zv(){if(vm)return ro.exports;vm=1;function c(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(c)}catch(o){console.error(o)}}return c(),ro.exports=Xv(),ro.exports}var Vv=Zv();function Ca(c){if(c==null)return null;if(typeof c=="string")return c.trim()||null;if(typeof c=="number"||typeof c=="boolean")return String(c);if(typeof c=="object"){const o=c;if(typeof o.text=="string"&&o.text.trim())return o.text.trim();if(typeof o.errorMessage=="string"&&o.errorMessage.trim())return o.errorMessage.trim();if(Array.isArray(o.content)){const m=o.content.map(d=>{if(typeof d=="string")return d;if(d&&typeof d=="object"){const S=d;if(typeof S.text=="string")return S.text}return""}).filter(Boolean);if(m.length)return m.join(`
|
|
10
|
-
`).slice(0,240)}if(typeof o.role=="string")return`${o.role} 消息`}return null}function Kv(c){const o=Ca(c.at)??Ca(c.timestamp)??Ca(c.recordedAt)??"",m=Ca(c.errorMessage)??Ca(c.label)??Ca(c.type)??Ca(c.message)??"运行事件";return o?`${o} · ${m}`:m}function Ji(c){return String(c.nodeId??c.id??"").trim()}function vo(c){const o=Ji(c);return String(c.label??c.name??(o||"未命名节点"))}function ym(c,o){if(c.length===0)return;const m=o?.trim();if(m){const R=c.find(z=>Ji(z)===m);if(R)return R}const d=c.find(R=>{const z=String(R.status??"").toLowerCase();return z.includes("fail")||z.includes("error")||z==="blocked"});return d||(c.find(R=>{const z=String(R.status??"").toLowerCase();return z==="running"||z==="in_progress"||z==="active"})??c[0])}function $v({dagRunId:c,nodeId:o,onClose:m,onOpenFull:d}){const S=y.useRef(null),[R,z]=y.useState(null),[X,G]=y.useState([]),[O,V]=y.useState(null),[B,ee]=y.useState(!0);y.useEffect(()=>{S.current?.focus();const oe=_e=>{_e.key==="Escape"&&m()};return document.addEventListener("keydown",oe),document.title=`检视 · DAG ${c} · Loop Operator`,()=>document.removeEventListener("keydown",oe)},[c,m]),y.useEffect(()=>{const oe=new AbortController;return ee(!0),V(null),G([]),(async()=>{try{const _e=await fetch(`/api/dag-runs/${encodeURIComponent(c)}`,{signal:oe.signal,credentials:"same-origin"});if(!_e.ok)throw new Error(`DAG 查询失败(HTTP ${_e.status})`);const Me=await _e.json();if(oe.signal.aborted)return;z(Me);const St=Array.isArray(Me.nodes)?Me.nodes:[],ot=ym(St,o),$e=ot?Ji(ot):o?.trim();if($e){const fe=await fetch(`/api/dag-runs/${encodeURIComponent(c)}/nodes/${encodeURIComponent($e)}/session-events`,{signal:oe.signal,credentials:"same-origin"});if(fe.ok){const Ne=await fe.json();oe.signal.aborted||G((Ne.events??[]).slice(-20))}}}catch(_e){oe.signal.aborted||V(_e instanceof Error?_e.message:String(_e))}finally{oe.signal.aborted||ee(!1)}})(),()=>oe.abort()},[c,o]);const L=y.useMemo(()=>Array.isArray(R?.nodes)?R.nodes:[],[R]),le=ym(L,o),se=le?Ji(le):"",et=String(R?.effectiveStatus??R?.status??(B?"加载中…":"未知"));return s.jsxs("aside",{className:"inspect-split-panel","aria-label":"DAG 紧凑检视",children:[s.jsxs("div",{className:"inspect-split-header",children:[s.jsxs("div",{children:[s.jsx("p",{className:"inspect-split-kicker",children:"Inspect"}),s.jsx("h2",{children:"检视 DAG"})]}),s.jsx("button",{ref:S,type:"button","aria-label":"关闭检视面板",onClick:m,children:"关闭"})]}),s.jsx("p",{className:"inspect-split-id",children:s.jsx("code",{children:c})}),O?s.jsx("p",{className:"error",children:O}):null,B&&!R?s.jsx("p",{className:"muted",children:"正在加载 DAG…"}):null,s.jsxs("dl",{className:"inspect-split-facts",children:[s.jsxs("div",{children:[s.jsx("dt",{children:"状态"}),s.jsx("dd",{children:et})]}),s.jsxs("div",{children:[s.jsx("dt",{children:"当前节点"}),s.jsx("dd",{children:le?vo(le):"暂无节点"})]}),s.jsxs("div",{children:[s.jsx("dt",{children:"节点状态"}),s.jsx("dd",{children:le?.status??"—"})]}),le?.errorPreview?s.jsxs("div",{children:[s.jsx("dt",{children:"错误摘要"}),s.jsx("dd",{children:le.errorPreview})]}):null]}),s.jsxs("section",{children:[s.jsxs("h3",{children:["节点(",L.length,")"]}),L.length?s.jsx("ul",{className:"inspect-split-nodes",children:L.slice(0,24).map(oe=>{const _e=Ji(oe)||vo(oe),Me=_e===se;return s.jsxs("li",{"data-active":Me?"true":void 0,className:Me?"is-active":void 0,children:[s.jsx("span",{children:vo(oe)}),s.jsx("code",{children:oe.status??"—"})]},_e)})}):s.jsx("p",{className:"muted",children:B?"加载节点中…":"该运行暂无节点。"})]}),s.jsxs("section",{children:[s.jsxs("h3",{children:["最近事件",se?` · ${se}`:""]}),X.length?s.jsx("ul",{className:"inspect-split-events",children:X.map((oe,_e)=>s.jsx("li",{children:Kv(oe)},`${oe.at??_e}-${_e}`))}):s.jsx("p",{className:"muted",children:B?"加载事件中…":"节点事件将在可用时显示。"})]}),s.jsx("button",{type:"button",className:"btn btn-secondary",onClick:d,children:"全屏观测"}),s.jsx("p",{className:"muted",children:"全屏后点顶栏「返回操作台」可回来。"})]})}function Jv(c){const o=[],m=c.split(`
|
|
11
|
-
`);let d=0,S=[];const R=()=>{const z=S.join(`
|
|
12
|
-
`).trimEnd();z&&o.push({type:"text",text:z}),S=[]};for(;d<m.length;){const z=m[d],X=z.match(/^\s*(`{3,}|~{3,})\s*([^\s`~]*)\s*$/);if(X){R();const G=X[1][0],O=(X[2]??"").trim(),V=[];for(d+=1;d<m.length;){const B=m[d];if(B.trim()===G.repeat(X[1].length)){d+=1;break}if(new RegExp(`^\\s*${G}{3,}`).test(B)){d+=1;break}V.push(B),d+=1}o.push({type:"code",lang:O,text:V.join(`
|
|
13
|
-
`)});continue}S.push(z),d+=1}return R(),o}const Iv=/(`[^`]+`)|(\*\*[^*]+\*\*)|(\*[^*]+\*|_[^_]+_)|(~~[^~]+~~)|(\[[^\]]+\]\([^)\s]+\))/;function Ki(c,o){const m=[];let d=c,S=0;for(;d.length>0;){const R=Iv.exec(d);if(!R||R.index===void 0){m.push(d);break}R.index>0&&m.push(d.slice(0,R.index));const z=R[0],X=`${o}-i${S++}`;if(z.startsWith("`"))m.push(s.jsx("code",{children:z.slice(1,-1)},X));else if(z.startsWith("**"))m.push(s.jsx("strong",{children:z.slice(2,-2)},X));else if(z.startsWith("*")||z.startsWith("_"))m.push(s.jsx("em",{children:z.slice(1,-1)},X));else if(z.startsWith("~~"))m.push(s.jsx("s",{children:z.slice(2,-2)},X));else if(z.startsWith("[")){const G=z.match(/^\[([^\]]+)\]\(([^)\s]+)\)$/);G?m.push(s.jsx("a",{href:G[2],target:"_blank",rel:"noreferrer noopener",children:G[1]},X)):m.push(z)}d=d.slice(R.index+z.length)}return m}function Wv({lang:c,text:o}){const[m,d]=y.useState(!1),S=()=>{navigator.clipboard?.writeText(o).then(()=>{d(!0),window.setTimeout(()=>d(!1),1600)},()=>{})};return s.jsxs("div",{className:"oc-codeblock",children:[s.jsxs("div",{className:"oc-codeblock-head",children:[s.jsx("span",{className:"oc-codeblock-lang",children:c||"text"}),s.jsx("button",{type:"button",className:"oc-codeblock-copy",onClick:S,children:m?"已复制":"复制"})]}),s.jsx("pre",{children:s.jsx("code",{children:o})})]})}function Fv(c,o){const m=[],d=c.split(`
|
|
14
|
-
`);let S=0,R=0;for(;R<d.length;){const X=d[R].trim();if(X===""){R+=1;continue}const G=X.match(/^(#{1,4})\s+(.*)$/);if(G){const B=`h${G[1].length}`;m.push(s.jsx(B,{children:Ki(G[2],`${o}-h${S}`)},`${o}-h${S++}`)),R+=1;continue}if(/^(---|\*\*\*|___)\s*$/.test(X)){m.push(s.jsx("hr",{},`${o}-hr${S++}`)),R+=1;continue}if(X.startsWith(">")){const V=[];for(;R<d.length&&d[R].trim().startsWith(">");)V.push(d[R].trim().replace(/^>\s?/,"")),R+=1;m.push(s.jsx("blockquote",{children:V.map((B,ee)=>s.jsx("p",{children:Ki(B,`${o}-bq${S}-${ee}`)},ee))},`${o}-bq${S++}`));continue}if(/^[-*+]\s+/.test(X)){const V=[];for(;R<d.length&&/^\s*[-*+]\s+/.test(d[R]);)V.push(d[R].trim().replace(/^[-*+]\s+/,"")),R+=1;m.push(s.jsx("ul",{children:V.map((B,ee)=>s.jsx("li",{children:Ki(B,`${o}-ul${S}-${ee}`)},ee))},`${o}-ul${S++}`));continue}if(/^\d+\.\s+/.test(X)){const V=[];for(;R<d.length&&/^\s*\d+\.\s+/.test(d[R]);)V.push(d[R].trim().replace(/^\d+\.\s+/,"")),R+=1;m.push(s.jsx("ol",{children:V.map((B,ee)=>s.jsx("li",{children:Ki(B,`${o}-ol${S}-${ee}`)},ee))},`${o}-ol${S++}`));continue}const O=[];for(;R<d.length&&d[R].trim()!==""&&!/^(#{1,4})\s+/.test(d[R].trim())&&!/^(---|\*\*\*|___)\s*$/.test(d[R].trim())&&!d[R].trim().startsWith(">")&&!/^[-*+]\s+/.test(d[R].trim())&&!/^\d+\.\s+/.test(d[R].trim());)O.push(d[R].trim()),R+=1;m.push(s.jsx("p",{children:Ki(O.join(" "),`${o}-p${S}`)},`${o}-p${S++}`))}return m}function Pv({text:c}){const o=Jv(c);return s.jsx("div",{className:"oc-md",children:o.map((m,d)=>m.type==="code"?s.jsx(Wv,{lang:m.lang,text:m.text},`cb-${d}`):s.jsx("div",{children:Fv(m.text,`tx-${d}`)},`tx-${d}`))})}const yo=()=>window.__CONSOLE_CONFIRMATION_TOKEN__??"";function ey({origin:c}){const[o,m]=y.useState(null),[d,S]=y.useState(null),[R,z]=y.useState(null),[X,G]=y.useState(!1),O=async L=>{m(L),S(null),z(null);const le=L==="models"?"/api/operator/v1/pi/models-config":L==="skills"?"/api/operator/v1/chat/instruction-skills":"/api/operator/v1/pi/packages";try{const se=await fetch(`${c}${le}`,{credentials:"include"}),et=await se.json();if(!se.ok)throw new Error(et.error?.message??"读取失败");S(et.data)}catch(se){z(se instanceof Error?se.message:String(se))}},V=async L=>{G(!0),z(null);try{const le=await fetch(`${c}/api/operator/v1/pi/models-config`,{method:"PATCH",credentials:"include",headers:{"content-type":"application/json","x-loop-console-confirmation":yo()},body:JSON.stringify(L)}),se=await le.json();if(!le.ok)throw new Error(se.error?.message??"模型配置保存失败");S(se.data)}catch(le){z(le instanceof Error?le.message:String(le))}finally{G(!1)}},B=async(L,le)=>{G(!0),z(null);try{const se=await fetch(`${c}/api/operator/v1/pi/models-config/test`,{method:"POST",credentials:"include",headers:{"content-type":"application/json","x-loop-console-confirmation":yo()},body:JSON.stringify({provider:L,modelId:le})}),et=await se.json();if(!se.ok)throw new Error(et.error?.message??"模型测试失败");return et.data?.available===!0}catch(se){return z(se instanceof Error?se.message:String(se)),!1}finally{G(!1)}},ee=async(L,le)=>{const se=d,et=le?[...se.disabledNames??[],L]:(se.disabledNames??[]).filter(_e=>_e!==L);(await fetch(`${c}/api/operator/v1/chat/instruction-skills/preferences`,{method:"PUT",credentials:"include",headers:{"content-type":"application/json","x-loop-console-confirmation":yo()},body:JSON.stringify({disabledNames:et})})).ok?S({...se,disabledNames:[...new Set(et)]}):z("偏好保存失败")};return s.jsxs("div",{className:"oc-governance",children:[s.jsxs("div",{className:"oc-governance-links",children:[s.jsx("button",{type:"button",onClick:()=>{O("models")},children:"Models"}),s.jsx("button",{type:"button",onClick:()=>{O("skills")},children:"Skills"}),s.jsx("button",{type:"button",onClick:()=>{O("packages")},children:"Packages"})]}),o&&s.jsxs("section",{className:"oc-governance-panel",children:[s.jsxs("header",{children:[s.jsx("strong",{children:o==="models"?"Models":o==="skills"?"Skills":"Packages(只读)"}),s.jsx("button",{type:"button",onClick:()=>m(null),children:"关闭"})]}),R&&s.jsx("p",{className:"oc-governance-error",children:R}),o==="models"&&s.jsx(ty,{busy:X,data:d,onMutate:V,onTest:B}),o==="skills"&&s.jsx(ly,{data:d,onToggle:ee}),o==="packages"&&s.jsx(ny,{data:d})]})]})}function ty({busy:c,data:o,onMutate:m,onTest:d}){const[S,R]=y.useState(""),[z,X]=y.useState(""),[G,O]=y.useState(""),[V,B]=y.useState(null),ee=async L=>{L.preventDefault(),!(!o||!S.trim()||!z.trim())&&(await m({expectedRevision:o.revision,action:"upsert-model",provider:S.trim(),model:{id:z.trim(),...G.trim()?{name:G.trim()}:{}}}),X(""),O(""))};return o?s.jsxs("div",{className:"oc-models-config",children:[s.jsx("p",{children:"Console 不读取或写入 API key;credential 请通过 Pi CLI 配置。"}),o.providers.map(L=>s.jsxs("article",{className:"oc-model-provider",children:[s.jsxs("div",{children:[s.jsx("strong",{children:L.name}),s.jsx("span",{children:L.credential.configured?"credential configured":"credential 未配置"})]}),L.models.map(le=>s.jsxs("div",{className:"oc-model-row",children:[s.jsx("span",{children:le.name?`${le.name} (${le.id})`:le.id}),s.jsxs("div",{children:[s.jsx("button",{type:"button",disabled:c,onClick:()=>{d(L.name,le.id).then(se=>B(`${L.name}/${le.id}: ${se?"可用":"不可用"}`))},children:"测试"}),s.jsx("button",{type:"button",disabled:c,onClick:()=>{window.confirm(`确认删除模型 ${L.name}/${le.id}?`)&&m({expectedRevision:o.revision,action:"remove-model",provider:L.name,model:{id:le.id}})},children:"删除"})]})]},le.id)),s.jsx("button",{type:"button",disabled:c,onClick:()=>{window.confirm(`确认删除 Provider ${L.name}?`)&&m({expectedRevision:o.revision,action:"remove-provider",provider:L.name})},children:"删除 Provider"})]},L.name)),V&&s.jsx("p",{className:"oc-model-test-result",children:V}),s.jsxs("form",{className:"oc-model-form",onSubmit:L=>{ee(L)},children:[s.jsx("strong",{children:"新增或更新模型"}),s.jsx("input",{required:!0,placeholder:"Provider",value:S,onChange:L=>R(L.target.value)}),s.jsx("input",{required:!0,placeholder:"Model ID",value:z,onChange:L=>X(L.target.value)}),s.jsx("input",{placeholder:"显示名称(可选)",value:G,onChange:L=>O(L.target.value)}),s.jsx("button",{type:"submit",disabled:c,children:c?"保存中…":"保存模型"})]})]}):s.jsx("p",{children:"正在读取模型配置…"})}function ly({data:c,onToggle:o}){return s.jsxs("div",{children:[c?.allowed?.map(m=>{const d=typeof m=="string"?m:m.name,S=c.disabledNames?.includes(d)===!0;return s.jsxs("label",{children:[s.jsx("input",{type:"checkbox",checked:!S,onChange:R=>o(d,!R.target.checked)}),d,typeof m!="string"&&m.description?s.jsx("small",{children:m.description}):null]},d)}),s.jsx("small",{children:"偏好仅影响之后创建的新会话;denied/conditional 策略不可在此绕过。"})]})}function ny({data:c}){return s.jsxs("div",{children:[s.jsx("p",{children:"此处仅展示 Pi 配置;不会扩大 Operator Chat 工具面。"}),c?.packages?.map(o=>s.jsxs("article",{children:[s.jsx("strong",{children:o.spec}),s.jsx("span",{children:o.scope})]},`${o.scope}:${o.spec}`))]})}const To=10;function ay(c){return[...c].sort((o,m)=>o.kind!==m.kind?o.kind==="directory"?-1:1:o.name.localeCompare(m.name,void 0,{sensitivity:"base"}))}function iy({open:c}){return s.jsx("svg",{className:`oc-tree-chevron${c?" is-open":""}`,width:"12",height:"12",viewBox:"0 0 12 12","aria-hidden":"true",children:s.jsx("path",{d:"M4.2 2.4 7.8 6 4.2 9.6",fill:"none",stroke:"currentColor",strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round"})})}function sy({open:c}){return c?s.jsxs("svg",{className:"oc-tree-glyph is-folder-open",width:"14",height:"14",viewBox:"0 0 14 14","aria-hidden":"true",children:[s.jsx("path",{d:"M1.5 4.2h3.1l1.1 1.2H12a.8.8 0 0 1 .8.8v5a.8.8 0 0 1-.8.8H2a.8.8 0 0 1-.8-.8V5a.8.8 0 0 1 .8-.8Z",fill:"currentColor",opacity:"0.88"}),s.jsx("path",{d:"M1.8 5.8h10.4l-.7 5.2H2.5L1.8 5.8Z",fill:"currentColor",opacity:"0.55"})]}):s.jsx("svg",{className:"oc-tree-glyph is-folder",width:"14",height:"14",viewBox:"0 0 14 14","aria-hidden":"true",children:s.jsx("path",{d:"M1.5 3.8h3.2l1 1.1H12a.8.8 0 0 1 .8.8v5.5a.8.8 0 0 1-.8.8H2a.8.8 0 0 1-.8-.8V4.6a.8.8 0 0 1 .8-.8Z",fill:"currentColor",opacity:"0.78"})})}function uy(){return s.jsxs("svg",{className:"oc-tree-glyph is-file",width:"14",height:"14",viewBox:"0 0 14 14","aria-hidden":"true",children:[s.jsx("path",{d:"M3.2 1.6h5.1L10.8 4v8.4a.8.8 0 0 1-.8.8H3.2a.8.8 0 0 1-.8-.8V2.4a.8.8 0 0 1 .8-.8Z",fill:"currentColor",opacity:"0.55"}),s.jsx("path",{d:"M8.3 1.7v2.5h2.4",fill:"none",stroke:"currentColor",strokeWidth:"1.1",strokeLinejoin:"round",opacity:"0.75"})]})}function cy(c){const o=c.sessions.slice(0,To);return s.jsx("aside",{className:`oc-sidebar${c.open?"":" is-collapsed"}`,"aria-label":"会话与仓库",children:c.open?s.jsxs(s.Fragment,{children:[s.jsxs("section",{className:"oc-sidebar-section oc-sessions",children:[s.jsxs("header",{children:[s.jsx("strong",{children:"会话"}),s.jsxs("div",{className:"oc-sidebar-header-actions",children:[s.jsx("button",{type:"button",className:"btn btn-ghost",onClick:c.onCreate,children:"新建"}),s.jsx("button",{type:"button",className:"oc-sidebar-toggle",onClick:c.onToggleOpen,"aria-expanded":!0,"aria-label":"收起侧栏",title:"收起侧栏",children:s.jsx("svg",{width:"14",height:"14",viewBox:"0 0 14 14","aria-hidden":"true",children:s.jsx("path",{d:"M8.8 2.6 5.2 7l3.6 4.4",fill:"none",stroke:"currentColor",strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round"})})})]})]}),s.jsxs("div",{className:"oc-session-scroll",children:[["active","archived"].map(m=>{const d=o.filter(S=>S.state===m);return d.length?s.jsxs("div",{className:"oc-session-group",children:[s.jsx("small",{children:m==="active"?"进行中":"已归档"}),d.map(S=>s.jsxs("div",{className:`oc-session-item${c.activeSessionId===S.sessionId?" is-active":""}`,children:[s.jsxs("button",{type:"button",className:"oc-session-main",onClick:()=>c.onActivate(S.sessionId),children:[s.jsxs("strong",{children:[S.title||"未命名对话",S.activeTurnId?" · 运行中":""]}),s.jsx("span",{children:new Date(S.updatedAt).toLocaleString()})]}),s.jsxs("div",{className:"oc-session-actions",children:[s.jsx("button",{type:"button",className:"oc-session-menu",onClick:()=>{const R=window.prompt("会话名称",S.title??"");R!==null&&c.onRename(S.sessionId,R)},children:"重命名"}),s.jsx("button",{type:"button",className:"oc-session-menu",onClick:()=>c.onSetState(S.sessionId,m==="active"?"archived":"active"),children:m==="active"?"归档":"恢复"}),s.jsx("button",{type:"button",className:"oc-session-menu oc-session-delete",onClick:()=>c.onDelete(S.sessionId),children:"删除"})]})]},S.sessionId))]},m):null}),o.length===0?s.jsx("p",{className:"oc-tree-empty",children:"暂无会话,点击上方新建。"}):null]})]}),s.jsxs("section",{className:"oc-sidebar-section oc-explorer",children:[s.jsxs("header",{children:[s.jsx("strong",{children:"仓库"}),s.jsx("button",{type:"button",className:"btn btn-ghost",onClick:c.onRefreshTree,children:"刷新"})]}),s.jsx("p",{className:"oc-explorer-hint",children:"单击插入 @路径 · 双击预览"}),c.treeError&&s.jsx("p",{className:"oc-sidebar-error",children:c.treeError}),s.jsx("div",{className:"oc-tree-scroll",children:s.jsx(Am,{entries:c.tree[""]??[],tree:c.tree,expanded:c.expanded,depth:0,onToggle:c.onToggleDir,onInsert:c.onInsert,onPreview:c.onPreview})})]}),s.jsx(ey,{origin:c.origin})]}):s.jsx("button",{type:"button",className:"oc-sidebar-toggle is-collapsed",onClick:c.onToggleOpen,"aria-expanded":!1,"aria-label":"展开侧栏",title:"展开侧栏",children:s.jsx("svg",{width:"14",height:"14",viewBox:"0 0 14 14","aria-hidden":"true",children:s.jsx("path",{d:"M5.2 2.6 8.8 7 5.2 11.4",fill:"none",stroke:"currentColor",strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round"})})})})}function Am(c){const o=y.useMemo(()=>ay(c.entries),[c.entries]);return o.length?s.jsx("ul",{className:"oc-tree",role:c.depth===0?"tree":"group",children:o.map(m=>{const d=m.name.startsWith(".");if(m.kind==="directory"){const S=c.expanded.has(m.path);return s.jsxs("li",{className:`oc-tree-node is-dir${S?" is-open":""}${d?" is-dot":""}`,role:"treeitem","aria-expanded":S,children:[s.jsxs("button",{type:"button",className:"oc-tree-row oc-tree-dir",onClick:()=>c.onToggle(m.path),style:{paddingLeft:`${8+c.depth*12}px`},children:[s.jsx(iy,{open:S}),s.jsx(sy,{open:S}),s.jsx("span",{className:"oc-tree-label",children:m.name})]}),S?s.jsx("div",{className:"oc-tree-children",style:{"--oc-tree-guide":`${14+c.depth*12}px`},children:s.jsx(Am,{entries:c.tree[m.path]??[],tree:c.tree,expanded:c.expanded,depth:c.depth+1,onToggle:c.onToggle,onInsert:c.onInsert,onPreview:c.onPreview})}):null]},m.path)}return s.jsx("li",{className:`oc-tree-node is-file${d?" is-dot":""}`,role:"treeitem",children:s.jsx(oy,{entry:m,depth:c.depth,onInsert:c.onInsert,onPreview:c.onPreview})},m.path)})}):s.jsx("p",{className:"oc-tree-empty",children:"此目录为空或没有可安全浏览的文件。"})}function oy(c){const o=y.useRef(null);return y.useEffect(()=>()=>{o.current!==null&&window.clearTimeout(o.current)},[]),s.jsxs("button",{type:"button",className:"oc-tree-row oc-tree-file",style:{paddingLeft:`${8+c.depth*12}px`},title:"单击插入引用;双击预览",onClick:()=>{o.current!==null&&window.clearTimeout(o.current),o.current=window.setTimeout(()=>{c.onInsert(c.entry.path),o.current=null},220)},onDoubleClick:()=>{o.current!==null&&window.clearTimeout(o.current),o.current=null,c.onPreview(c.entry.path)},children:[s.jsx("span",{className:"oc-tree-chevron-spacer","aria-hidden":"true"}),s.jsx(uy,{}),s.jsx("span",{className:"oc-tree-label",children:c.entry.name})]})}function ry(c){const o=c.previews.find(m=>m.path===c.activePath);return!o&&!c.loading?null:s.jsxs(s.Fragment,{children:[o&&s.jsxs("section",{className:"oc-file-preview","aria-label":`文件预览 ${o.path}`,children:[s.jsxs("header",{children:[s.jsx("div",{className:"oc-file-tabs",role:"tablist","aria-label":"文件预览 Tabs",children:c.previews.map(m=>s.jsx("button",{type:"button",role:"tab","aria-selected":m.path===o.path,className:m.path===o.path?"is-active":"",onClick:()=>c.onActivate(m.path),children:m.path},m.path))}),s.jsxs("span",{children:[o.bytes," bytes",o.truncated?" · 已截断":""]}),s.jsx("button",{type:"button",className:"btn btn-ghost",onClick:()=>c.onClose(o.path),children:"关闭预览"})]}),s.jsx("pre",{children:s.jsx("code",{children:o.content})})]}),c.loading&&s.jsx("div",{className:"oc-file-preview-loading",children:"正在读取文件…"})]})}function dy(c,o){const m=c.findIndex(d=>d.operationId===o.operationId);return m<0?[...c,o]:c.map((d,S)=>S===m?{...d,...o}:d)}function fy(c){const o=c.operation;if(!o||typeof o!="object")return;const m=o;if(!(m.schemaVersion!==1||typeof m.operationId!="string"||typeof m.action!="string"||typeof m.state!="string"||typeof m.inspectHref!="string"||typeof m.createdAt!="string"||typeof m.updatedAt!="string"||typeof m.previewHash!="string"))return m}function my(c){if(!c||typeof c!="object")return;const o=c;if(!(o.schemaVersion!==1||typeof o.cardId!="string"||o.gateType!=="contract-apply"&&o.gateType!=="dag-run"||typeof o.taskId!="string"||typeof o.state!="string"||typeof o.expiresAt!="string"||typeof o.inspectHref!="string"||typeof o.previewHash!="string"))return o}function hy(c,o){const m=c.findIndex(S=>S.cardId===o.cardId);if(m<0)return[...c,o];const d=[...c];return d[m]=o,d}const vy=["operation","contract","dag","report","html"];function yy(c){const o=c.artifact;if(!o||typeof o!="object")return;const m=o;if(!(m.schemaVersion!==1||typeof m.artifactId!="string"||!m.artifactId||typeof m.kind!="string"||!vy.includes(m.kind)||typeof m.previewHash!="string")){for(const d of["title","summary","htmlPreview","reportText","inspectHref"])if(m[d]!==void 0&&typeof m[d]!="string")return;return m}}function py(c,o){const m=c.findIndex(d=>d.artifactId===o.artifactId);return m<0?[...c,o]:c.map((d,S)=>S===m?{...d,...o}:d)}function Aa(c,o){return`${c}/${o}`}function po(c){return{...c.modelProvider&&c.modelId?{model:{provider:c.modelProvider,modelId:c.modelId}}:{},...c.thinkingLevel?{thinkingLevel:c.thinkingLevel}:{}}}function Eo(c,o){return{...c,model:o.model??c.model,thinkingLevel:o.thinkingLevel??c.thinkingLevel}}function pm(c,o){const m=Eo(c,o);return m.model?.provider===c.model?.provider&&m.model?.modelId===c.model?.modelId&&m.thinkingLevel===c.thinkingLevel}const Co=[{command:"/task",label:"Task context",description:"查看当前任务、Draft 与 assessment",action:"focus-panel:task"},{command:"/contract",label:"Contract",description:"查看 contract diff 与 apply gate",action:"focus-panel:contract"},{command:"/dag",label:"DAG",description:"查看 DAG spine、确认与运行状态",action:"focus-panel:dag"},{command:"/interview",label:"Interview",description:"打开 Requirement Interview",action:"focus:interview"},{command:"/help",label:"Shortcuts",description:"显示可用 shortcut",action:"show-help"}];function gy(c){const o=c.trim().split(/\s+/,1)[0]?.toLowerCase();if(!o?.startsWith("/"))return;const m=Co.find(d=>d.command===o);return m?{command:m.command,action:m.action}:{command:o,action:"unknown"}}const Fl="loop-console.operator-chat.active-session.v1",by="loop-console.operator-chat.default-landing.v1";function uu(c){const o=c?.trim().toLowerCase();if(o==="chat")return"chat";if(o==="tasks")return"tasks"}function Sy(c){const o=c?.trim().toLowerCase();if(o==="chat"||o==="tasks"||o==="recovery")return o}function xy(c){if(!c)return;const o=new URLSearchParams(c.search),m=uu(o.get("landing")??o.get("workspace"));if(m)return m;const d=c.hash.startsWith("#")?c.hash.slice(1):c.hash;return uu(new URLSearchParams(d).get("workspace"))}function jy(c){return xy(c.location)??uu(c.storage?.getItem(by))??uu(c.env)??"tasks"}function Ny(c,o={}){const m=new URLSearchParams({workspace:c});for(const[d,S]of Object.entries(o))S?.trim()&&m.set(d,S.trim());return`/?${m.toString()}`}function Ty(c){const o=new URLSearchParams(c.search),m=c.hash.startsWith("#")?c.hash.slice(1):c.hash,d=new URLSearchParams(m),S=Sy(o.get("workspace")??o.get("landing")??d.get("workspace"));if(!S)return null;const R=z=>o.get(z)?.trim()||void 0;return{workspace:S,...R("taskId")?{taskId:R("taskId")}:{},...R("dagRunId")?{dagRunId:R("dagRunId")}:{},...R("fromNodeId")?{fromNodeId:R("fromNodeId")}:{},...R("featureId")?{featureId:R("featureId")}:{}}}const Ey=[{toolId:"safe-read",kind:"explore",description:"安全读取仓库相对路径文件;拒绝敏感文件并自动脱敏 secret。"},{toolId:"safe-grep",kind:"explore",description:"安全搜索仓库内容;跳过敏感文件并自动脱敏搜索结果。"},{toolId:"git-status",kind:"explore",description:"固定参数执行 git status --porcelain(无 shell)。"},{toolId:"git-diff",kind:"explore",description:"固定参数查看 git diff;敏感路径不可查看且结果自动脱敏。"},{toolId:"find",kind:"explore",description:"按名称查找文件路径。"},{toolId:"ls",kind:"explore",description:"列出目录内容。"}];function gm(c){switch(c){case"mutation":return"变更";case"long-running":return"长任务";case"explore":return"探查";default:return"只读"}}function Bl(){return window.__CONSOLE_CONFIRMATION_TOKEN__??""}function $i(c){return`${c}-${Math.random().toString(36).slice(2,10)}`}function go(c,o){return new Promise((m,d)=>{if(o?.aborted){d(new DOMException("Aborted","AbortError"));return}const S=setTimeout(()=>{o?.removeEventListener("abort",R),m()},c),R=()=>{clearTimeout(S),d(new DOMException("Aborted","AbortError"))};o?.addEventListener("abort",R)})}function Rm(c){return new Date(c).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})}function bo(c){const o=new Date(c),m=new Date;return o.getFullYear()===m.getFullYear()&&o.getMonth()===m.getMonth()&&o.getDate()===m.getDate()?"今天":o.toLocaleDateString([],{month:"long",day:"numeric"})}function Cy(c){if(c==null)return"";try{const o=typeof c=="string"?c:JSON.stringify(c);return o?o.length>120?`${o.slice(0,120)}…`:o:""}catch{return String(c)}}const Ay=[{label:"新建任务",hint:"从需求描述导入并创建任务",prompt:"帮我新建一个任务:我描述需求,你引导我用 PRD/需求描述导入(bootstrapFromPrd),并给出建议的 taskKind(如后端研发 backend-feature / 后端测试 backend-test)。"},{label:"查看任务状态",hint:"列出任务与就绪/阻塞状态",prompt:"列出当前所有 task 及其状态,重点说明哪些是 Ready 可以推进、哪些 Blocked 及阻塞原因。"},{label:"诊断 DAG 运行",hint:"对失败运行跑 Doctor",prompt:"帮我诊断最近失败或异常的 DAG 运行:先列出最近的 DAG 运行,对有问题的运行执行 doctor,总结根因和可执行的恢复方案。"},{label:"恢复或重跑任务",hint:"从节点重跑 / 完整重跑",prompt:"我要恢复一个卡住或失败的 DAG 运行。请先列出最近的 DAG 运行和可选节点,说明「从节点重跑 dagRerun」「完整重跑任务 standaloneTaskRerun」「Worker Task 重排队 workerTaskRetry」分别适用于什么情况,确定后直接帮我发起重跑。"}];function bm(c){const o=c.readiness==="setup-required",m=!!c.disabled||o,d=c.mode==="no-session"?"开始一段新的对话":"今天想推进什么?",S=c.mode==="no-session"?"用自然语言编排 loop-agent:查询状态、诊断问题、创建与恢复任务。可先点选下方建议,或新建空白对话。":"会话已就绪。点选建议快速开场,或在下方输入框直接描述目标。业务写入仍经受治理 DAG。";return s.jsxs("div",{className:"oc-empty",role:"status",children:[s.jsxs("div",{className:"oc-empty-hero",children:[s.jsx("div",{className:"oc-empty-icon","aria-hidden":"true",children:"π"}),s.jsxs("div",{className:"oc-empty-copy",children:[s.jsx("h3",{children:d}),s.jsx("p",{children:S})]})]}),s.jsx("div",{className:"oc-suggestions","aria-label":"开场建议",children:Ay.map(R=>s.jsxs("button",{type:"button",className:"oc-suggestion",onClick:()=>c.onSuggest(R.prompt),disabled:m,children:[s.jsx("strong",{children:R.label}),s.jsx("span",{children:R.hint})]},R.label))}),s.jsxs("ul",{className:"oc-empty-tips",children:[s.jsxs("li",{children:[s.jsx("kbd",{children:"@"}),s.jsx("span",{children:"引用仓库文件"})]}),s.jsxs("li",{children:[s.jsx("kbd",{children:"/"}),s.jsx("span",{children:"快捷命令"})]}),s.jsxs("li",{children:[s.jsx("kbd",{children:"Enter"}),s.jsx("span",{children:"发送 · Shift+Enter 换行"})]})]}),c.mode==="no-session"&&c.onCreateSession?s.jsx("button",{type:"button",className:"btn btn-primary oc-empty-cta",onClick:c.onCreateSession,disabled:o,children:o?"需先完成 Pi setup":"新建空白对话"}):null]})}function Ry(c,o){return c?c.taskId===o.taskId&&c.updatedAt===o.updatedAt&&c.lastEventId===o.lastEventId&&c.operations.length===o.operations.length:!1}function Dy(c){const{origin:o,surface:m="standalone"}=c,d=m==="workspace",[S,R]=y.useState(null),[z,X]=y.useState(null),[G,O]=y.useState([]),[V,B]=y.useState(!0),[ee,L]=y.useState({}),[le,se]=y.useState(new Set),[et,oe]=y.useState(null),[_e,Me]=y.useState([]),[St,ot]=y.useState(null),[$e,fe]=y.useState(!1),[Ne,xt]=y.useState([]),[rt,dt]=y.useState([]),[ft,Ft]=y.useState([]),[nt,_t]=y.useState([]),[D,Q]=y.useState(50),[ne,Te]=y.useState(0),[Ee,p]=y.useState([]),[E,q]=y.useState(null),[I,ae]=y.useState(null),[he,ge]=y.useState(!1),[tt,Ae]=y.useState(!1),[gl,bl]=y.useState(0),ua=y.useRef(null),[Sl,xl]=y.useState(""),[Je,Mt]=y.useState(""),[fn,mn]=y.useState([]),[Kt,re]=y.useState([]),[jl,Ra]=y.useState([]),[Da,mt]=y.useState([]),[Re,hn]=y.useState(null),[He,Nl]=y.useState({inputTokens:0,outputTokens:0,totalTokens:0}),[it,Yl]=y.useState(!1),[vn,ol]=y.useState(null),[Bt,K]=y.useState(null),[kt,Ct]=y.useState(!0),[wn]=y.useState(!1),[Pl,Tl]=y.useState(!1),[Yt,El]=y.useState(!1),[en,wt]=y.useState(!1),Ze=y.useRef(null),Pt=y.useRef(null),Ql=y.useRef(null),Un=y.useRef(null),Qt=y.useRef(null),$t=y.useRef(null),Xl=y.useRef(new Map),Zl=y.useRef(new Set),Ie=y.useRef(null),Jt=y.useRef(null),ht=y.useRef(new Set),el=y.useRef(new Map),Dt=y.useRef(null),tn=y.useRef(!1),at=y.useRef(0),ue=y.useRef(null),We=y.useRef(!1),Cl=y.useCallback(async()=>{try{const f=await fetch(`${o}/api/operator/v1/chat/capabilities`);if(!f.ok)return;const x=await f.json();R(x)}catch{}},[o]),Hn=y.useCallback(async f=>{try{const x=await fetch(`${o}/api/operator/v1/chat/sessions/${encodeURIComponent(f)}`,{credentials:"include"}),C=await x.json();if(!x.ok||!C.session)throw new Error(C.error?.message??"会话不可用");const k={sessionId:C.session.sessionId,...po(C.session)};ue.current=k,We.current=!!C.session.activeTurnId,ht.current=new Set,el.current=new Map,Jt.current=null,X(k),Yl(!!C.session.activeTurnId),ol(null),Ie.current=null,$t.current=Xl.current.get(f)??null,re([]),Me([]),Mt(C.session.composerDraft??""),xt((C.session.messages??[]).filter($=>$.role==="user"||$.role==="assistant").map($=>({id:$.id,role:$.role,text:$.text,createdAt:Date.parse($.at)||Date.now()}))),dt([]),Ft([]),p([]),_t([]),ae(null),q(null),Nl({inputTokens:0,outputTokens:0,totalTokens:0}),window.localStorage.setItem(Fl,f),ot(null)}catch(x){K(x instanceof Error?x.message:String(x))}},[o]);y.useEffect(()=>{Cl()},[Cl]);const Al=y.useCallback(async()=>{try{const f=await fetch(`${o}/api/operator/v1/chat/sessions`,{credentials:"include"});if(!f.ok)return;const x=(await f.json()).sessions??[],C=x.slice(0,To),k=x.slice(To);if(O(C),k.length===0)return;await Promise.all(k.map(H=>fetch(`${o}/api/operator/v1/chat/sessions/${encodeURIComponent(H.sessionId)}`,{method:"DELETE",credentials:"include",headers:{"x-loop-console-confirmation":Bl()}}).catch(()=>{})));const $=ue.current?.sessionId;$&&k.some(H=>H.sessionId===$)&&(ue.current=null,X(null),window.localStorage.removeItem(Fl))}catch{}},[o]),ln=y.useCallback(async f=>{if(window.confirm("确定删除该会话?删除后不可恢复。"))try{if(!(await fetch(`${o}/api/operator/v1/chat/sessions/${encodeURIComponent(f)}`,{method:"DELETE",credentials:"include",headers:{"x-loop-console-confirmation":Bl()}})).ok){K("删除会话失败");return}ue.current?.sessionId===f&&(ue.current=null,X(null),xt([]),dt([]),Ft([]),p([]),_t([]),ae(null),q(null),Mt(""),Tl(!1),window.localStorage.removeItem(Fl)),await Al()}catch(x){K(x instanceof Error?x.message:String(x))}},[o,Al]);y.useEffect(()=>{Al()},[Al]);const Rl=y.useCallback(async(f="")=>{try{oe(null);const x=await fetch(`${o}/api/operator/v1/chat/repo/tree?path=${encodeURIComponent(f)}`,{credentials:"include"}),C=await x.json();if(!x.ok)throw new Error(C.error?.message??"无法读取仓库目录");L(k=>({...k,[f]:C.data?.entries??[]}))}catch(x){oe(x instanceof Error?x.message:String(x))}},[o]);y.useEffect(()=>{Rl()},[Rl]);const rl=y.useCallback(async f=>{fe(!0);try{const x=await fetch(`${o}/api/operator/v1/chat/repo/file?path=${encodeURIComponent(f)}`,{credentials:"include"}),C=await x.json();if(!x.ok||!C.data)throw new Error(C.error?.message??"无法预览文件");Me(k=>{const $=[...k.filter(ke=>ke.path!==C.data.path),C.data],H=ue.current?.sessionId;return H&&window.localStorage.setItem(`${Fl}.previews.${H}`,JSON.stringify($.map(ke=>ke.path))),$}),ot(C.data.path)}catch(x){K(x instanceof Error?x.message:String(x))}finally{fe(!1)}},[o]);y.useEffect(()=>{if(!z)return;const f=z.sessionId;let x=[];try{const C=JSON.parse(window.localStorage.getItem(`${Fl}.previews.${f}`)??"[]");Array.isArray(C)&&(x=C.filter(k=>typeof k=="string").slice(0,10))}catch{}x.length&&Promise.all(x.map(async C=>{const k=await fetch(`${o}/api/operator/v1/chat/repo/file?path=${encodeURIComponent(C)}`,{credentials:"include"});if(k.ok)return(await k.json()).data})).then(C=>{if(ue.current?.sessionId!==f)return;const k=C.filter($=>!!$);Me(k),ot(k.at(-1)?.path??null)})},[o,z?.sessionId]),y.useEffect(()=>{let f=!1;const x=window.localStorage.getItem(Fl);if(x)return(async()=>{try{const C=await fetch(`${o}/api/operator/v1/chat/sessions/${encodeURIComponent(x)}`,{credentials:"include"});if(!C.ok){window.localStorage.removeItem(Fl);return}const k=await C.json();if(f||!k.session)return;const $={sessionId:k.session.sessionId,...po(k.session)};ue.current=$,ht.current=new Set,el.current=new Map,Jt.current=null,X($),Mt(k.session.composerDraft??""),xt((k.session.messages??[]).filter(H=>H.role==="user"||H.role==="assistant").map(H=>({id:H.id,role:H.role,text:H.text,createdAt:Date.parse(H.at)||Date.now()})))}catch{}})(),()=>{f=!0}},[o]),y.useEffect(()=>{if(!z)return;const f=window.setTimeout(()=>{fetch(`${o}/api/operator/v1/chat/sessions/${encodeURIComponent(z.sessionId)}/draft`,{method:"PUT",credentials:"include",headers:{"content-type":"application/json","x-loop-console-confirmation":Bl()},body:JSON.stringify({text:Je})})},400);return()=>window.clearTimeout(f)},[o,z,Je]),y.useEffect(()=>{if(!z){Ra([]),hn(null);return}const f=z.sessionId,x=`${o}/api/operator/v1/chat/sessions/${encodeURIComponent(f)}`;fetch(`${x}/models`,{credentials:"include"}).then(C=>C.ok?C.json():null).then(C=>{!C||ue.current?.sessionId!==f||(Ra(C.models??[]),mt(C.thinkingLevels??[]))}),fetch(`${x}/runtime-context`,{credentials:"include"}).then(C=>C.ok?C.json():null).then(C=>{if(!C?.context||ue.current?.sessionId!==f)return;hn(C.context);const k=C.context,$={model:k.model,thinkingLevel:k.thinkingLevel};X(H=>{if(!H||H.sessionId!==f||pm(H,$))return H;const ke=Eo(H,$);return ue.current=ke,ke})})},[o,z?.sessionId]),y.useEffect(()=>{if(!z)return;const f=Je.slice(0,Ql.current?.selectionStart??Je.length).match(/(?:^|\s)@([^\s@]*)$/);if(!f){mn([]);return}const x=window.setTimeout(()=>{fetch(`${o}/api/operator/v1/chat/sessions/${encodeURIComponent(z.sessionId)}/files?q=${encodeURIComponent(f[1]??"")}`).then(C=>C.ok?C.json():null).then(C=>mn((C?.files??[]).map(k=>k.path)))},150);return()=>window.clearTimeout(x)},[o,z,Je]);const nn=y.useCallback(f=>{const x=Ql.current?.selectionStart??Je.length,k=Je.slice(0,x).search(/@[^\s@]*$/);k<0||(Mt(`${Je.slice(0,k)}@${f} ${Je.slice(x)}`),mn([]))},[Je]),It=y.useCallback(async f=>{if(!z)return;const x=z.sessionId,C=await fetch(`${o}/api/operator/v1/chat/sessions/${encodeURIComponent(z.sessionId)}/model`,{method:"POST",credentials:"include",headers:{"content-type":"application/json","x-loop-console-confirmation":Bl()},body:JSON.stringify(f)});if(!C.ok){ue.current?.sessionId===x&&K("模型或思考等级切换失败");return}const k=await C.json().catch(()=>({}));k.session&&ue.current?.sessionId===x&&(X($=>{if(!$||$.sessionId!==x)return $;const H=po(k.session);if(pm($,H))return $;const ke=Eo($,H);return ue.current=ke,ke}),hn($=>$&&{...$,...k.session.modelProvider&&k.session.modelId?{model:{provider:k.session.modelProvider,modelId:k.session.modelId}}:{},...k.session.thinkingLevel?{thinkingLevel:k.session.thinkingLevel}:f.thinkingLevel?{thinkingLevel:f.thinkingLevel}:{}}))},[o,z]);y.useEffect(()=>{if(!Yt)return;const f=C=>{const k=Un.current;k&&C.target instanceof Node&&!k.contains(C.target)&&El(!1)},x=C=>{C.key==="Escape"&&El(!1)};return document.addEventListener("mousedown",f),document.addEventListener("keydown",x),()=>{document.removeEventListener("mousedown",f),document.removeEventListener("keydown",x)}},[Yt]),y.useEffect(()=>{if(!en)return;const f=C=>{const k=Qt.current;k&&C.target instanceof Node&&!k.contains(C.target)&&wt(!1)},x=C=>{C.key==="Escape"&&wt(!1)};return document.addEventListener("mousedown",f),document.addEventListener("keydown",x),()=>{document.removeEventListener("mousedown",f),document.removeEventListener("keydown",x)}},[en]),y.useLayoutEffect(()=>{const f=Ql.current;f&&(f.style.height="auto",f.style.height=`${Math.min(f.scrollHeight,280)}px`)},[Je]);const tl=y.useCallback(()=>{const f=Pt.current;if(!f)return;const x=f.scrollHeight-f.scrollTop-f.clientHeight<80;Ct(x)},[]);y.useEffect(()=>{kt&&Ze.current?.scrollIntoView({behavior:"smooth",block:"end"})},[Ne,kt,it]);const At=y.useCallback(async(f,x)=>{const C=x?.background===!0;C||ge(!0);try{const k=await fetch(`${o}/api/operator/v1/chat/sessions/${encodeURIComponent(f)}/context`,{credentials:"include"});if(!k.ok)return;const $=await k.json();$.context&&ue.current?.sessionId===f&&ae(H=>Ry(H,$.context)?H:$.context)}finally{C||ge(!1)}},[o]),Ut=y.useCallback(async f=>{K(null),xt([]),dt([]),Ft([]),p([]),q(null),ae(null),Tl(!1),Ct(!0);try{const x=await fetch(`${o}/api/operator/v1/chat/sessions`,{method:"POST",headers:{"Content-Type":"application/json","x-loop-console-confirmation":Bl()},credentials:"include",body:JSON.stringify(f??{})});if(!x.ok){const $=await x.json().catch(()=>({}));throw new Error($.error?.message??`HTTP ${x.status}`)}const C=await x.json(),k={sessionId:C.sessionId,...C.model?{model:C.model}:{}};return ue.current=k,window.localStorage.setItem(Fl,k.sessionId),X(k),Al(),k}catch(x){return K(x instanceof Error?x.message:String(x)),null}},[o,Al]),Be=y.useCallback((f,x,C,k)=>{const $=k?.replay===!0;if(f==="reconcile"){const J=typeof x.reason=="string"?x.reason:"cursor_expired";K(`会话事件窗口已过期(${J}),建议刷新历史或新建会话。`);return}const H=x.data&&typeof x.data=="object"?x.data:x,ke=typeof x.turnId=="string"?x.turnId:void 0;let st=C;if(ke){const J=el.current.get(ke);J?st=J:el.current.set(ke,C)}if(f==="interview-turn"){q(J=>({...J??{},interviewSessionId:typeof H.interviewSessionId=="string"?H.interviewSessionId:J?.interviewSessionId,taskId:typeof H.taskId=="string"?H.taskId:J?.taskId,state:typeof H.state=="string"?H.state:J?.state,question:H.question&&typeof H.question=="object"?H.question:void 0}));return}if(f==="draft"){q(J=>({...J??{},taskId:typeof H.taskId=="string"?H.taskId:J?.taskId,draft:H.draft&&typeof H.draft=="object"?H.draft:J?.draft,draftSha256:typeof H.draftSha256=="string"?H.draftSha256:J?.draftSha256,taskKindRecommendation:typeof H.taskKindRecommendation=="string"?H.taskKindRecommendation:J?.taskKindRecommendation}));return}if(f==="assessment"){q(J=>({...J??{},assessment:H}));return}if(f==="taskKind-confirmed"){q(J=>({...J??{},confirmedTaskKind:typeof H.taskKind=="string"?H.taskKind:J?.confirmedTaskKind,taskKindRecommendation:void 0}));return}if(f==="human-gate-card"){const J=my(H);J&&p(pe=>hy(pe,J));return}if(f==="artifact-ref"){const J=yy(H);J&&_t(pe=>py(pe,J));return}if(f==="agent_start"){Yl(!0),ol(st);return}if(f==="agent_settled"){Yl(!1),ol(null),!$&&document.hidden&&Te(J=>J+1);return}if(f==="operation-ref"||f==="operation-status"){const J=fy(H);J&&Ft(pe=>dy(pe,J));return}if(f==="usage"){if($)return;const J=H;Nl(pe=>({inputTokens:pe.inputTokens+(J.inputTokens??0),outputTokens:pe.outputTokens+(J.outputTokens??0),totalTokens:pe.totalTokens+(J.totalTokens??0),cost:J.cost===void 0?pe.cost:(pe.cost??0)+J.cost}));return}if(f==="message_update"||f==="message_end"){if($)return;const J=typeof H.text=="string"?H.text:"";xt(pe=>pe.some(h=>h.id===st)?pe.map(h=>h.id===st?{...h,text:J}:h):[...pe,{id:st,role:"assistant",text:J,createdAt:Date.now()}])}else if(f==="tool_call"){const J=typeof H.toolCallId=="string"?H.toolCallId:$i("t"),pe=typeof H.toolName=="string"?H.toolName:"tool",yt=typeof H.argsPreview=="string"?H.argsPreview:"{}";dt(h=>h.some(U=>U.id===J)?h.map(U=>U.id===J?{...U,args:yt,status:"running"}:U):[...h,{id:J,toolName:pe,args:yt,status:"running",createdAt:Date.now()}])}else if(f==="tool_result"){const J=typeof H.toolCallId=="string"?H.toolCallId:$i("r"),pe=typeof H.toolName=="string"?H.toolName:"tool",yt=H.isError===!0,h=typeof H.resultPreview=="string"?H.resultPreview:"{}";yt&&Tl(!0),dt(U=>U.find(Z=>Z.id===J)?U.map(Z=>Z.id===J?{...Z,result:h,resultText:h,status:yt?"error":"ok"}:Z):[...U,{id:J,toolName:pe,result:h,resultText:h,status:yt?"error":"ok",createdAt:Date.now()}])}else f==="error"&&K(typeof H.message=="string"?H.message:"chat error")},[]),Vl=y.useCallback((f,x,C)=>{if(C?.targetSessionId&&ue.current?.sessionId!==C.targetSessionId)return null;const k=f.split(`
|
|
15
|
-
`);let $="message",H="",ke=null;for(const pe of k)pe.startsWith("event: ")?$=pe.slice(7).trim():pe.startsWith("data: ")?H+=pe.slice(6):pe.startsWith("id: ")&&(ke=pe.slice(4).trim());if(!H)return ke;let st;try{st=JSON.parse(H)}catch{return ke}const J=ke??(typeof st.eventId=="string"?st.eventId:null);if(J){if(ht.current.has(J))return J;ht.current.add(J)}return Be($,st,x,C),ke??J},[Be]),Dl=y.useCallback(async f=>{const x=ue.current;if(!x||!f.trim()&&Kt.length===0||We.current)return;const C={id:$i("u"),role:"user",text:f.trim(),createdAt:Date.now()};xt(H=>[...H,C]),Mt(""),Dt.current?.abort(),Dt.current=null,We.current=!0,Yl(!0),Ct(!0),K(null);const k=$i("a");Ie.current=k,ol(k),xt(H=>[...H,{id:k,role:"assistant",text:"",createdAt:Date.now()}]);const $=new AbortController;$t.current=$,Xl.current.set(x.sessionId,$),Zl.current.add(x.sessionId);try{const H=await fetch(`${o}/api/operator/v1/chat/sessions/${x.sessionId}/prompt`,{method:"POST",headers:{"Content-Type":"application/json","x-loop-console-confirmation":Bl(),Accept:"text/event-stream"},credentials:"include",body:JSON.stringify({text:f.trim()||"请查看附件图片。",images:Kt.map(({type:pe,mimeType:yt,data:h})=>({type:pe,mimeType:yt,data:h}))}),signal:$.signal});if(!H.ok||!H.body){const pe=await H.json().catch(()=>({}));throw new Error(pe.error?.message??`HTTP ${H.status}`)}const ke=H.body.getReader(),st=new TextDecoder;let J="";for(;;){const{done:pe,value:yt}=await ke.read();if(pe)break;J+=st.decode(yt,{stream:!0});const h=J.split(`
|
|
16
|
-
|
|
17
|
-
`);J=h.pop()??"";for(const U of h){const Y=Vl(U,k,{targetSessionId:x.sessionId});Y&&(Jt.current=Y)}}}catch(H){H?.name==="AbortError"||ue.current?.sessionId===x.sessionId&&K(H instanceof Error?H.message:String(H))}finally{ue.current?.sessionId===x.sessionId&&(We.current=!1,Yl(!1),ol(null),$t.current=null,Ie.current=null,re([])),Zl.current.delete(x.sessionId),Xl.current.delete(x.sessionId)}},[o,Kt]),ll=y.useCallback(()=>{$t.current?.abort(),We.current=!1,Yl(!1),ol(null)},[]),zl=y.useCallback(async(f,x)=>{for(;!x.aborted;)try{const C={Accept:"text/event-stream"},k=Jt.current;k&&(C["Last-Event-ID"]=k);const $=await fetch(`${o}/api/operator/v1/chat/sessions/${f}/events`,{headers:C,credentials:"include",signal:x});if(!$.ok||!$.body){if($.status===404)return;await go(2e3,x);continue}const H=$.body.getReader(),ke=new TextDecoder;let st="",J=Ie.current;for(J||(J=$i("a"),Ie.current=J);;){const{done:pe,value:yt}=await H.read();if(pe)break;st+=ke.decode(yt,{stream:!0});const h=st.split(`
|
|
18
|
-
|
|
19
|
-
`);st=h.pop()??"";for(const U of h){const Y=Vl(U,J,{replay:!0,targetSessionId:f});Y&&(Jt.current=Y)}}await go(1e3,x)}catch{if(x.aborted)return;await go(2e3,x)}},[o,Vl]);y.useEffect(()=>{if(!z||it&&Zl.current.has(z.sessionId))return;const f=new AbortController;return Dt.current=f,zl(z.sessionId,f.signal),()=>{f.abort(),Dt.current===f&&(Dt.current=null)}},[z,it,zl]);const ca=y.useCallback(async()=>{const f=ue.current;if(!f)return;const x=window.prompt("Task ID(例如 2026-07-26-my-task)")?.trim();if(!x)return;const C=await fetch(`${o}/api/operator/v1/chat/sessions/${f.sessionId}/interviews`,{method:"POST",headers:{"Content-Type":"application/json","x-loop-console-confirmation":Bl()},credentials:"include",body:JSON.stringify({taskId:x})}),k=await C.json();if(!C.ok){K(k.error?.message??`HTTP ${C.status}`);return}q({interviewSessionId:k.interview?.sessionId,taskId:x,state:k.interview?.state,question:k.question,draft:k.draft?.draft,draftSha256:k.draft?.draftSha256,assessment:k.assessment})},[o]),Ln=y.useCallback(async f=>{const x=ue.current;if(!x||!E?.interviewSessionId||!E.question)return;const C=await fetch(`${o}/api/operator/v1/chat/sessions/${x.sessionId}/interviews/${E.interviewSessionId}/answers`,{method:"POST",headers:{"Content-Type":"application/json","x-loop-console-confirmation":Bl()},credentials:"include",body:JSON.stringify({questionId:E.question.id,response:f,...f==="override"?{text:Sl}:{}})}),k=await C.json();if(!C.ok){K(k.error?.message??`HTTP ${C.status}`);return}q($=>({...$??{},state:k.interview?.state,question:k.question,draft:k.draft?.draft,draftSha256:k.draft?.draftSha256,assessment:k.assessment,taskKindRecommendation:k.taskKindRecommendation??$?.taskKindRecommendation})),xl("")},[o,E,Sl]),ye=y.useCallback(async()=>{const f=ue.current;if(!f||!E?.interviewSessionId||!E.taskKindRecommendation)return;const x=await fetch(`${o}/api/operator/v1/chat/sessions/${f.sessionId}/interviews/${E.interviewSessionId}/task-kind/confirm`,{method:"POST",headers:{"Content-Type":"application/json","x-loop-console-confirmation":Bl()},credentials:"include",body:JSON.stringify({taskKind:E.taskKindRecommendation})}),C=await x.json();if(!x.ok){K(C.error?.message??`HTTP ${x.status}`);return}q(k=>({...k??{},confirmedTaskKind:k?.taskKindRecommendation,taskKindRecommendation:void 0,draft:C.draft?.draft,draftSha256:C.draft?.draftSha256,assessment:C.assessment}))},[o,E]);y.useEffect(()=>{z?.sessionId&&At(z.sessionId)},[z?.sessionId,At]),y.useEffect(()=>{const f=z?.sessionId;if(!f)return;const x=window.setTimeout(()=>{At(f,{background:!0})},350);return()=>window.clearTimeout(x)},[z?.sessionId,ft,Ee,E,At]);const yn=y.useCallback(f=>{const x=gy(f);Mt(""),Ae(!1),x&&(x.action==="focus:interview"?ca():x.action==="show-help"?K(`可用 shortcuts:${Co.map(C=>C.command).join("、")}`):x.action.startsWith("focus-panel:")?ua.current?.scrollIntoView({behavior:"smooth",block:"nearest"}):K(`未知 shortcut:${x.command}`))},[ca]),Ve=y.useMemo(()=>Je.startsWith("/")?Co.filter(f=>f.command.startsWith(Je.trim().split(/\s+/,1)[0].toLowerCase())):[],[Je]),an=y.useCallback(f=>{if(tt&&Ve.length>0&&!f.nativeEvent.isComposing){if(f.key==="ArrowDown"||f.key==="ArrowUp"){f.preventDefault(),bl(k=>(k+(f.key==="ArrowDown"?1:Ve.length-1))%Ve.length);return}if(f.key==="Escape"){f.preventDefault(),Ae(!1);return}if(f.key==="Enter"){f.preventDefault(),yn(Ve[gl]?.command??Ve[0].command);return}}const x=Date.now()-at.current<100,C=tn.current||f.nativeEvent.isComposing;if(f.key==="Enter"&&!f.shiftKey&&(C||x)){x&&f.preventDefault();return}if(f.key==="Enter"&&!f.shiftKey){f.preventDefault(),Dl(Je);return}},[Je,Dl,tt,Ve,gl,yn]),Xt=y.useMemo(()=>Ne.filter(f=>f.role!=="system"||wn).slice(-D),[Ne,wn,D]);y.useEffect(()=>{const f=()=>{document.hidden||Te(0)};return document.addEventListener("visibilitychange",f),()=>document.removeEventListener("visibilitychange",f)},[]);const Zt=y.useCallback(async()=>{const f=ue.current;if(!(!f||We.current))try{const x=await fetch(`${o}/api/operator/v1/chat/sessions/${encodeURIComponent(f.sessionId)}/compact`,{method:"POST",credentials:"include",headers:{"x-loop-console-confirmation":Bl()}}),C=await x.json().catch(()=>({}));if(!x.ok){K(C.error?.message??"上下文压缩失败");return}K(null)}catch(x){K(x instanceof Error?x.message:"上下文压缩失败")}},[o]),pn=y.useMemo(()=>{if(rt.length===0)return null;const f=rt.filter(H=>H.status==="running"),x=rt.filter(H=>H.status==="error"),C=f[f.length-1];let k="完成",$="ok";return x.length>0?(k=`${x.length} 出错`,$="error"):f.length>0&&(k=C?`正在调用 ${C.toolName}`:"运行中",$="running"),{count:rt.length,statusLabel:k,statusKind:$}},[rt]),gn=z?.model??Re?.model,Ol=gn?Aa(gn.provider,gn.modelId):"",za=z?.thinkingLevel??Re?.thinkingLevel??"",Kl=!Ol||jl.some(f=>Aa(f.provider,f.id)===Ol),sn=y.useMemo(()=>{if(!S)return null;const f=(S.tools??[]).map(C=>({toolId:C.toolId,action:C.action,description:C.description,kind:C.kind??"read",cli:C.cli})),x=[...Ey];return{explore:x,operator:f,total:x.length+f.length}},[S]),zt=c.readiness==="setup-required"?"⚠ Pi 未就绪(setup-required):Chat 需要先完成 Pi 认证 / 模型配置。":c.readiness==="degraded"?"⚠ Pi 降级(degraded):可继续对话,但部分能力不可用。":null,$l=async(f,x)=>{if(!(await fetch(`${o}/api/operator/v1/chat/sessions/${encodeURIComponent(f)}`,{method:"PATCH",credentials:"include",headers:{"content-type":"application/json","x-loop-console-confirmation":Bl()},body:JSON.stringify(x)})).ok){K("会话更新失败");return}await Al(),x.state==="archived"&&ue.current?.sessionId===f&&(ue.current=null,X(null),window.localStorage.removeItem(Fl))},bn=s.jsx(cy,{origin:o,open:V,activeSessionId:z?.sessionId,sessions:G,tree:ee,expanded:le,treeError:et,onToggleOpen:()=>B(f=>!f),onCreate:()=>{Ut()},onActivate:f=>{Hn(f)},onRename:(f,x)=>{$l(f,{title:x})},onSetState:(f,x)=>{$l(f,{state:x})},onDelete:f=>{ln(f)},onRefreshTree:()=>{Rl()},onToggleDir:f=>{se(x=>{const C=new Set(x);return C.has(f)?C.delete(f):C.add(f),C}),ee[f]||Rl(f)},onInsert:f=>Mt(x=>`${x}${x&&!x.endsWith(" ")?" ":""}@${f} `),onPreview:f=>{rl(f)}}),vt=Xt.length>0||ft.length>0||Ee.length>0||nt.length>0||!!E;return s.jsxs("div",{className:"oc-shell",children:[d?null:s.jsxs("div",{className:"oc-banner",children:[s.jsxs("span",{className:"oc-banner-title",children:[s.jsx("span",{className:"oc-banner-dot","aria-hidden":"true"}),"对话"]}),s.jsxs("span",{className:"oc-banner-body",children:["用自然语言编排 loop-agent / agent-worker 的",s.jsx("strong",{children:"全部能力"}),"。这是 ",s.jsx("strong",{children:"Operator"})," ","面:可通过 safe-read/safe-grep/git-status/git-diff/find/ls 探查仓库、调用受策略约束的 operator action;",s.jsx("strong",{children:"无 bash 或直接写文件工具"}),"(业务写入仍应经受治理 DAG 的 implement-pi / repair-pi)。"]})]}),zt&&s.jsx("div",{className:"oc-alert oc-alert-warning",children:zt}),Bt&&s.jsxs("div",{className:"oc-alert oc-alert-error",children:[s.jsx("strong",{children:"出错了:"}),Bt]}),z?s.jsxs("div",{className:`oc-workspace${Pl?" has-process":""}`,children:[bn,s.jsxs("div",{className:`oc-main${vt?"":" is-landing"}`,children:[s.jsx(ry,{previews:_e,activePath:St,loading:$e,onActivate:ot,onClose:f=>{Me(x=>{const C=x.filter(k=>k.path!==f);return z&&window.localStorage.setItem(`${Fl}.previews.${z.sessionId}`,JSON.stringify(C.map(k=>k.path))),C}),ot(x=>x===f?_e.find(C=>C.path!==f)?.path??null:x)}}),s.jsxs("div",{ref:Pt,className:`oc-messages${vt?" has-thread":" is-empty"}`,onScroll:tl,children:[vt?null:s.jsx(bm,{mode:"empty-session",readiness:c.readiness,disabled:it,onSuggest:f=>{Dl(f)}}),vt&&Ne.length>Xt.length&&s.jsx("button",{type:"button",className:"btn btn-ghost oc-load-history",onClick:()=>Q(f=>f+50),children:"加载更早消息"}),vt&&Xt.map((f,x)=>{const C=Xt[x-1],k=!C||bo(C.createdAt)!==bo(f.createdAt);return s.jsxs("div",{children:[k&&s.jsx("div",{className:"oc-day-sep",children:bo(f.createdAt)}),f.role==="system"?s.jsx("div",{className:"oc-row is-tool",children:s.jsx("div",{className:"oc-bubble oc-bubble-tool",children:f.text})}):s.jsx(My,{message:f,streaming:it,activeAssistantId:vn})]},`row-${f.id}`)}),E&&s.jsxs("section",{className:"oc-draft-card","aria-label":"Requirement Interview",children:[s.jsxs("header",{children:[s.jsx("strong",{children:"Requirement Interview"}),s.jsx("span",{children:E.state})]}),E.question&&s.jsxs("div",{className:"oc-interview-bubble",children:[s.jsx("strong",{children:E.question.text}),s.jsxs("p",{children:["建议:",E.question.recommendation]}),s.jsx("textarea",{value:Sl,onChange:f=>xl(f.target.value),placeholder:"输入答案"}),s.jsxs("div",{children:[s.jsx("button",{className:"btn btn-primary",type:"button",onClick:()=>{Ln("override")},disabled:!Sl.trim(),children:"提交答案"}),s.jsx("button",{className:"btn btn-ghost",type:"button",onClick:()=>{Ln("accept-recommendation")},children:"接受建议"})]})]}),E.draft&&s.jsxs("details",{open:!0,children:[s.jsxs("summary",{children:["TaskContractDraftV1 ·"," ",E.draftSha256?.slice(0,12)]}),s.jsx("pre",{children:JSON.stringify(E.draft,null,2)})]}),E.assessment&&s.jsxs("div",{className:`oc-assessment${E.assessment.fresh?" is-fresh":""}`,children:[s.jsxs("strong",{children:["完整性:",E.assessment.outcome]}),(E.assessment.missingFields??[]).length>0&&s.jsxs("p",{children:["缺失:",E.assessment.missingFields?.join("、")]})]}),E.taskKindRecommendation&&s.jsxs("div",{className:"oc-task-kind-card",children:[s.jsx("span",{children:"taskKind 建议"}),s.jsx("strong",{children:E.taskKindRecommendation}),s.jsx("button",{className:"btn btn-primary",type:"button",onClick:()=>{ye()},children:"由我确认"}),s.jsx("small",{children:"模型不能代替人类确认。"})]}),E.confirmedTaskKind&&s.jsxs("div",{className:"oc-task-kind-card is-confirmed",children:["已由人类确认:",s.jsx("strong",{children:E.confirmedTaskKind})]})]}),Ee.map(f=>s.jsx(zy,{card:f,origin:o,sessionId:z.sessionId},f.cardId)),ft.map(f=>s.jsx(Oy,{operation:f,origin:o,onNavigateWorkspace:c.onNavigateWorkspace},f.operationId)),nt.map(f=>s.jsx(_y,{artifact:f},f.artifactId)),s.jsx("div",{ref:Ze})]}),s.jsx("div",{className:"oc-composer",children:s.jsxs("div",{className:"oc-composer-inner",children:[fn.length>0&&s.jsx("div",{className:"oc-file-palette",role:"listbox","aria-label":"Repository files",children:fn.map(f=>s.jsx("button",{type:"button",role:"option",onMouseDown:x=>x.preventDefault(),onClick:()=>nn(f),children:s.jsxs("code",{children:["@",f]})},f))}),Kt.length>0&&s.jsx("div",{className:"oc-attachment-list",children:Kt.map(f=>s.jsxs("span",{children:[f.name,s.jsx("button",{type:"button","aria-label":`移除 ${f.name}`,onClick:()=>re(x=>x.filter(C=>C!==f)),children:"×"})]},f.name))}),s.jsxs("div",{className:"oc-composer-toolbar",children:[s.jsxs("label",{className:"oc-attach-button",children:["添加图片",s.jsx("input",{type:"file",accept:"image/png,image/jpeg,image/gif,image/webp",multiple:!0,hidden:!0,onChange:f=>{const x=Array.from(f.target.files??[]).slice(0,4);for(const C of x){if(!C.type.startsWith("image/")||C.size>5*1024*1024){K("图片仅支持 PNG/JPEG/GIF/WebP,单张不超过 5 MiB");continue}const k=new FileReader;k.onload=()=>{const $=String(k.result??""),H=$.slice($.indexOf(",")+1);re(ke=>[...ke,{name:C.name,type:"image",mimeType:C.type,data:H}].slice(0,4))},k.readAsDataURL(C)}f.target.value=""}})]}),s.jsxs("span",{className:"oc-composer-hint",children:[s.jsx("span",{className:"oc-kbd",children:"Enter"})," 发送"]}),s.jsxs("span",{className:"oc-composer-hint",children:[s.jsx("span",{className:"oc-kbd",children:"Shift"}),"+",s.jsx("span",{className:"oc-kbd",children:"Enter"})," 换行"]})]}),tt&&Ve.length>0&&s.jsx("div",{className:"oc-shortcut-palette",role:"listbox","aria-label":"Chat shortcuts",children:Ve.map((f,x)=>s.jsxs("button",{type:"button",role:"option","aria-selected":x===gl,className:x===gl?"is-active":"",onMouseDown:C=>C.preventDefault(),onClick:()=>yn(f.command),children:[s.jsx("code",{children:f.command}),s.jsxs("span",{children:[s.jsx("strong",{children:f.label}),s.jsx("small",{children:f.description})]})]},f.command))}),s.jsxs("div",{className:`oc-composer-shell${it?" is-busy":""}`,children:[s.jsx("textarea",{ref:Ql,className:"oc-textarea",value:Je,rows:3,placeholder:it?"正在生成回复…(可直接发起新问题)":vt?"输入消息… Enter 发送 · Shift+Enter 换行":"描述目标,或点选上方建议开始…",onChange:f=>{Mt(f.target.value),Ae(f.target.value.startsWith("/")),bl(0)},onKeyDown:an,onCompositionStart:()=>{tn.current=!0},onCompositionEnd:()=>{tn.current=!1,at.current=Date.now()},disabled:it}),it?s.jsx("button",{type:"button",className:"oc-stop",title:"停止生成","aria-label":"停止生成",onClick:ll,children:s.jsx(Gy,{})}):s.jsx("button",{type:"button",className:"oc-send",title:"发送","aria-label":"发送",onClick:()=>{Dl(Je)},disabled:!Je.trim()&&Kt.length===0,children:s.jsx(qy,{})})]}),s.jsxs("div",{className:"oc-runtime-controls",children:[s.jsxs("select",{className:"oc-model-select","aria-label":"Model",value:Ol,onChange:f=>{const x=jl.find(C=>Aa(C.provider,C.id)===f.target.value);x&&It({provider:x.provider,modelId:x.id})},children:[s.jsx("option",{value:"",children:"选择模型"}),gn&&!Kl?s.jsx("option",{value:Ol,children:Ol}):null,jl.filter(f=>f.hasCredentials!==!1).map(f=>s.jsx("option",{value:Aa(f.provider,f.id),children:Aa(f.provider,f.id)},Aa(f.provider,f.id)))]}),s.jsxs("select",{className:"oc-thinking-select","aria-label":"Thinking level",value:za,onChange:f=>{It({thinkingLevel:f.target.value})},children:[s.jsx("option",{value:"",children:"思考等级"}),Da.map(f=>s.jsx("option",{value:f,children:f},f))]}),s.jsxs("span",{className:"oc-usage",children:[it?"运行中":"空闲",ne>0?` · ${ne} 未读`:""," ·"," ",He.inputTokens," in · ",He.outputTokens," out ·"," ",He.totalTokens," tokens ·"," ",He.cost===void 0?"—":`$${He.cost.toFixed(4)}`]}),s.jsx("button",{type:"button",className:"btn btn-ghost",onClick:()=>{Zt()},disabled:it||!vt,title:vt?it?"生成中,暂不可压缩":"压缩上下文,释放 token":"先进行对话后再压缩上下文",children:"Compact"}),sn?s.jsxs("div",{className:"oc-tools-menu oc-tools-menu--composer",ref:Un,children:[s.jsxs("button",{type:"button",className:`oc-cap-chip oc-tools-toggle${Yt?" is-active":""}`,"aria-pressed":Yt,"aria-expanded":Yt,"aria-controls":"oc-tools-catalog",onClick:()=>{El(f=>!f),Yt||Tl(!1)},children:[sn.total," 工具"]}),Yt&&s.jsxs("div",{id:"oc-tools-catalog",className:"oc-tools-catalog",role:"dialog","aria-label":"可用工具列表",children:[s.jsxs("header",{className:"oc-tools-catalog-head",children:[s.jsx("strong",{children:"可用工具"}),s.jsxs("span",{className:"oc-tools-catalog-meta",children:[sn.total," 个 · 点选了解简介"]}),s.jsx("button",{type:"button",className:"btn btn-ghost oc-tools-catalog-close","aria-label":"关闭工具列表",onClick:()=>El(!1),children:"关闭"})]}),s.jsxs("div",{className:"oc-tools-catalog-body",children:[sn.explore.length>0&&s.jsxs("section",{className:"oc-tools-group",children:[s.jsx("h4",{className:"oc-tools-group-title",children:"仓库探查"}),s.jsx("ul",{className:"oc-tools-list",children:sn.explore.map(f=>s.jsxs("li",{className:"oc-tools-item",children:[s.jsxs("div",{className:"oc-tools-item-head",children:[s.jsx("code",{className:"oc-tools-name",children:f.toolId}),s.jsx("span",{className:"oc-tools-kind is-explore",children:gm(f.kind)})]}),s.jsx("p",{className:"oc-tools-desc",children:f.description})]},f.toolId))})]}),s.jsxs("section",{className:"oc-tools-group",children:[s.jsx("h4",{className:"oc-tools-group-title",children:"Operator 动作"}),s.jsx("ul",{className:"oc-tools-list",children:sn.operator.map(f=>s.jsxs("li",{className:"oc-tools-item",children:[s.jsxs("div",{className:"oc-tools-item-head",children:[s.jsx("code",{className:"oc-tools-name",children:f.toolId}),s.jsx("span",{className:`oc-tools-kind is-${f.kind??"read"}`,children:gm(f.kind)})]}),s.jsx("p",{className:"oc-tools-desc",children:f.description}),f.cli&&s.jsxs("p",{className:"oc-tools-cli",children:["CLI: ",s.jsx("code",{children:f.cli})]})]},f.toolId))})]})]})]})]}):null,pn&&s.jsxs("button",{type:"button",className:`oc-process-summary is-${pn.statusKind}${Pl?" is-open":""}`,"aria-pressed":Pl,"aria-controls":"oc-process-panel",onClick:()=>{Tl(f=>!f),Pl||El(!1)},children:["执行过程 · ",pn.count," 工具 ·"," ",pn.statusLabel]}),Re&&s.jsx(ky,{ref:Qt,open:en,onToggle:()=>wt(f=>!f),onClose:()=>wt(!1),context:Re})]})]})})]}),Pl&&s.jsxs("aside",{id:"oc-process-panel",className:"oc-process","aria-label":"执行过程",children:[s.jsxs("header",{className:"oc-process-head",children:[s.jsxs("div",{className:"oc-process-title",children:[s.jsx("span",{className:"oc-process-title-mark","aria-hidden":"true"}),"执行过程",s.jsx("span",{className:"oc-process-count",children:rt.length})]}),s.jsx("button",{type:"button",className:"btn btn-ghost oc-process-close","aria-label":"关闭执行过程",onClick:()=>Tl(!1),children:"关闭"})]}),s.jsx("div",{className:"oc-process-timeline",children:rt.length===0?s.jsx("div",{className:"oc-process-empty",children:"本轮对话尚无工具调用。诊断细节会在这里按时间线展示。"}):rt.map((f,x)=>s.jsxs("div",{className:`oc-process-item${x===0?" is-first":""}${x===rt.length-1?" is-last":""}${f.status==="error"?" is-error":""}${f.status==="running"?" is-running":""}`,children:[s.jsx("div",{className:"oc-process-rail","aria-hidden":"true",children:s.jsx("span",{className:"oc-process-dot"})}),s.jsx("div",{className:"oc-process-time",children:Rm(f.createdAt)}),s.jsx("div",{className:"oc-process-body",children:s.jsx(Uy,{entry:f})})]},f.id))})]})]}):s.jsxs("div",{className:"oc-workspace",children:[bn,s.jsx("div",{className:"oc-main is-landing",children:s.jsx("div",{className:"oc-messages is-empty",children:s.jsx(bm,{mode:"no-session",readiness:c.readiness,onSuggest:async f=>{await Ut()&&await Dl(f)},onCreateSession:()=>{Ut()}})})})]})]})}y.memo(y.forwardRef(function({context:o,loading:m},d){return s.jsxs("section",{ref:d,className:"oc-task-context","aria-label":"Task context",children:[s.jsxs("header",{children:[s.jsxs("div",{children:[s.jsx("small",{children:"Durable task context"}),s.jsx("strong",{children:o?.taskId??"当前任务"})]}),s.jsx("span",{children:m&&!o?"同步中…":o?.updatedAt?"已恢复":"等待事件"})]}),o?.taskId?s.jsxs("div",{className:"oc-task-context-grid",children:[s.jsxs("div",{children:[s.jsx("b",{children:"Draft"}),s.jsx("span",{children:o.draft?o.draft.draftSha256.slice(0,12):"未生成"})]}),s.jsxs("div",{children:[s.jsx("b",{children:"Assessment"}),s.jsx("span",{children:o.assessment?`${o.assessment.outcome}${o.assessment.fresh?" · fresh":""}`:"未评估"})]}),s.jsxs("div",{children:[s.jsx("b",{children:"Task kind"}),s.jsx("span",{children:o.taskKind?.value??o.draft?.taskKindRecommendation??"待确认"})]}),s.jsxs("div",{children:[s.jsx("b",{children:"Contract"}),s.jsx("span",{children:o.contract?.confirmationState??"待准备"}),o.contract?.diffSummary&&s.jsx("small",{children:o.contract.diffSummary})]}),s.jsxs("div",{children:[s.jsx("b",{children:"DAG"}),s.jsx("span",{children:o.dag?.confirmationState??"待生成"}),o.dag?.spine&&s.jsx("small",{children:o.dag.spine.join(" → ")})]}),s.jsxs("div",{children:[s.jsx("b",{children:"Operations"}),s.jsx("span",{children:o.operations.length?o.operations.map(S=>`${S.action}: ${S.state}`).join(" · "):"无"})]})]}):s.jsx("p",{className:"oc-task-context-empty",children:"Draft、assessment、Contract 与 DAG 状态会在此实时聚合。"})]})}));function zy({card:c,origin:o,sessionId:m}){const[d,S]=y.useState(!1),[R,z]=y.useState(),X=async()=>{S(!0),z(void 0);try{const B=c.gateType==="dag-run"?c.state==="prepared"?"dag-confirm":"dag-run":c.gateType==="mutation"?"mutation-apply":"contract-apply",ee=c.gateType==="dag-run"?{confirmationId:c.confirmationId,...c.state==="prepared"?{humanGateToken:c.humanGateToken}:{}}:{receiptId:c.receiptId,humanGateToken:c.humanGateToken},L=await fetch(`${o}/api/operator/v1/chat/sessions/${encodeURIComponent(m)}/human-gate/${B}`,{method:"POST",credentials:"include",headers:{"Content-Type":"application/json","x-loop-console-confirmation":Bl()},body:JSON.stringify(ee)}),le=await L.json();if(!L.ok)throw new Error(le.error?.message??`HTTP ${L.status}`)}catch(B){z(B instanceof Error?B.message:String(B))}finally{S(!1)}},G=c.state==="prepared"||c.gateType==="dag-run"&&c.state==="confirmed",O=c.gateType==="contract-apply"?"Contract apply":c.gateType==="mutation"?"Mutation":"DAG run",V=c.gateType==="contract-apply"?"Apply":c.gateType==="mutation"?"Execute":c.state==="prepared"?"Confirm":"Run";return s.jsxs("section",{className:`oc-human-gate-card is-${c.state}`,"aria-label":`Human gate ${c.cardId}`,children:[s.jsxs("header",{children:[s.jsxs("div",{children:[s.jsx("small",{children:"HumanGateCard · 仅人类可确认"}),s.jsx("strong",{children:O})]}),s.jsx("span",{children:c.state})]}),c.contractDiffSummary&&s.jsx("p",{children:c.contractDiffSummary}),c.displayOnlyChallenges&&s.jsxs("div",{className:"oc-human-gate-challenges",children:[s.jsx("b",{children:"Challenge(仅展示,不是确认信号)"}),s.jsx("ul",{children:c.displayOnlyChallenges.map(B=>s.jsx("li",{children:B},B))})]}),c.dagSpine&&c.dagSpine.length>0&&s.jsxs("div",{children:[s.jsx("b",{children:"DAG spine"}),s.jsx("ol",{children:c.dagSpine.map(B=>s.jsx("li",{children:s.jsx("code",{children:B})},B))})]}),s.jsxs("footer",{children:[s.jsx("a",{href:c.inspectHref,children:"Inspect"}),s.jsx("button",{className:"btn btn-primary",type:"button",disabled:!G||d,onClick:()=>{X()},children:d?"提交中…":V})]}),R&&s.jsx("div",{className:"oc-human-gate-error",children:R})]})}function Oy(c){const{operation:o}=c,m=o.inspectHref.startsWith("/")?`${c.origin}${o.inspectHref}`:o.inspectHref,d=o.state==="failed"||o.state==="timed-out"||o.state==="needs-reconcile",S=(z,X)=>{c.onNavigateWorkspace?c.onNavigateWorkspace(z,X):window.location.assign(Ny(z,X))},R=[o.taskId?["task",o.taskId]:void 0,o.dagRunId?["dag",o.dagRunId]:void 0,o.featureId?["feature",o.featureId]:void 0,o.workerRunId?["worker",o.workerRunId]:void 0].filter(z=>!!z);return s.jsxs("section",{className:`oc-operation-card is-${o.state}`,"aria-label":`Operation ${o.operationId}`,children:[s.jsxs("header",{className:"oc-operation-head",children:[s.jsxs("div",{children:[s.jsx("div",{className:"oc-operation-kicker",children:"Operation"}),s.jsx("strong",{children:o.action})]}),s.jsx("span",{className:`oc-operation-state is-${o.state}`,children:o.state})]}),s.jsx("div",{className:"oc-operation-id",children:s.jsx("code",{children:o.operationId})}),R.length>0&&s.jsx("div",{className:"oc-operation-identities",children:R.map(([z,X])=>s.jsxs("span",{children:[s.jsx("b",{children:z})," ",X]},`${z}:${X}`))}),o.controller&&s.jsxs("div",{className:"oc-operation-controller",children:["controller: ",o.controller]}),o.summaryPreview&&s.jsx("pre",{className:"oc-operation-preview",children:o.summaryPreview}),o.stderrPreview&&s.jsx("pre",{className:"oc-operation-preview is-error",children:o.stderrPreview}),o.stdoutPreview&&s.jsx("pre",{className:"oc-operation-preview",children:o.stdoutPreview}),s.jsxs("footer",{className:"oc-operation-actions",children:[s.jsx("a",{className:"btn btn-ghost",href:m,target:"_blank",rel:"noreferrer",children:"Inspect"}),o.taskId&&s.jsx("button",{className:"btn btn-ghost",type:"button",onClick:()=>S("tasks",{taskId:o.taskId}),children:"打开 Task Ops"}),o.dagRunId&&s.jsx("a",{className:"btn btn-ghost",href:`${c.origin}/inspect/#/dag/${encodeURIComponent(o.dagRunId)}`,target:"_blank",rel:"noreferrer",children:"打开 Run / Inspect"}),d&&(o.dagRunId||o.taskId)&&s.jsx("button",{className:"btn btn-primary",type:"button",onClick:()=>S("recovery",{taskId:o.taskId,dagRunId:o.dagRunId}),children:"打开 Recovery"}),s.jsx("time",{dateTime:o.updatedAt,children:new Date(o.updatedAt).toLocaleString()})]})]})}function _y(c){const{artifact:o}=c;return s.jsxs("section",{className:"oc-artifact-card","aria-label":`${o.kind} artifact`,children:[s.jsxs("header",{children:[s.jsx("strong",{children:o.title??o.artifactId}),s.jsx("span",{children:o.kind})]}),o.summary&&s.jsx("p",{children:o.summary}),o.reportText&&s.jsx("pre",{children:o.reportText}),o.htmlPreview&&s.jsx("iframe",{title:`${o.title??o.artifactId} preview`,sandbox:"",srcDoc:o.htmlPreview}),o.inspectHref&&s.jsx("a",{href:o.inspectHref,children:"查看详情"})]})}function My(c){const{message:o,streaming:m,activeAssistantId:d}=c,S=o.role==="user",R=S?"你":"π",z=S?"你":"助手",X=!S&&m&&d!==null&&o.id===d,G=X&&o.text.length===0,O=o.text.trim().length>0;return s.jsxs("div",{className:`oc-row ${S?"is-user":"is-assistant"}`,children:[s.jsxs("div",{className:"oc-meta",children:[s.jsx("span",{className:`oc-avatar ${S?"oc-avatar-user":"oc-avatar-assistant"}`,"aria-hidden":"true",children:R}),s.jsx("span",{className:"oc-role",children:z}),s.jsx("span",{className:"oc-time",children:Rm(o.createdAt)}),O&&s.jsx(wy,{text:o.text})]}),s.jsxs("div",{className:`oc-bubble ${S?"oc-bubble-user":"oc-bubble-assistant"}`,children:[O?S?s.jsx("div",{style:{whiteSpace:"pre-wrap"},children:o.text}):s.jsx(Pv,{text:o.text}):G?s.jsx("span",{className:"oc-cursor","aria-hidden":"true"}):s.jsx("span",{style:{color:"var(--muted-soft)"},children:"…"}),X&&O&&s.jsx("span",{className:"oc-cursor","aria-hidden":"true"})]})]})}const ky=y.forwardRef(function({open:o,onToggle:m,onClose:d,context:S},R){const z=Object.keys(S.resources??{}).length;return s.jsxs("div",{className:"oc-runtime-context-menu",ref:R,children:[s.jsx("button",{type:"button",className:`btn btn-ghost oc-runtime-context-toggle${o?" is-active":""}`,"aria-expanded":o,"aria-controls":"oc-runtime-context-panel",onClick:m,children:"注入上下文"}),o&&s.jsxs("div",{id:"oc-runtime-context-panel",className:"oc-runtime-context-panel",role:"dialog","aria-label":"注入上下文",children:[s.jsxs("header",{className:"oc-runtime-context-head",children:[s.jsx("strong",{children:"注入上下文"}),s.jsx("span",{className:"oc-runtime-context-meta",children:"只读 · 本轮请求实际注入"}),s.jsx("button",{type:"button",className:"btn btn-ghost oc-runtime-context-close","aria-label":"关闭",onClick:d,children:"关闭"})]}),s.jsxs("div",{className:"oc-runtime-context-body",children:[s.jsxs("dl",{className:"oc-runtime-context-dl",children:[s.jsxs("div",{children:[s.jsx("dt",{children:"System prompt"}),s.jsxs("dd",{children:[S.systemPrompt.summary??"—",s.jsxs("code",{className:"oc-runtime-context-hash",children:[S.systemPrompt.hash.slice(0,12),"…"]})]})]}),S.model&&s.jsxs("div",{children:[s.jsx("dt",{children:"Model"}),s.jsx("dd",{children:s.jsx("code",{children:Aa(S.model.provider,S.model.modelId)})})]}),S.thinkingLevel&&s.jsxs("div",{children:[s.jsx("dt",{children:"Thinking"}),s.jsx("dd",{children:S.thinkingLevel})]}),s.jsxs("div",{children:[s.jsx("dt",{children:"Skills"}),s.jsx("dd",{children:S.skills.length===0?"无":s.jsx("ul",{className:"oc-runtime-context-skills",children:S.skills.map(X=>s.jsxs("li",{children:[s.jsx("code",{children:X.name}),s.jsxs("span",{children:[X.charCount.toLocaleString()," 字"]})]},X.name))})})]}),s.jsxs("div",{children:[s.jsx("dt",{children:"Suffix"}),s.jsx("dd",{children:S.suffix.present?S.suffix.summary??"已注入":"未注入"})]}),s.jsxs("div",{children:[s.jsx("dt",{children:"Resources"}),s.jsx("dd",{children:z>0?`${z} 项`:"无"})]})]}),s.jsxs("details",{className:"oc-runtime-context-raw",children:[s.jsx("summary",{children:"原始 JSON"}),s.jsx("pre",{children:JSON.stringify(S,null,2)})]})]})]})]})});function wy(c){const[o,m]=y.useState(!1),d=()=>{navigator.clipboard?.writeText(c.text).then(()=>{m(!0),window.setTimeout(()=>m(!1),1600)},()=>{})};return s.jsx("button",{type:"button",className:`oc-message-copy${o?" is-copied":""}`,"aria-label":o?"已复制":"复制消息",title:o?"已复制":"复制",onClick:d,children:o?s.jsx(Ly,{}):s.jsx(Hy,{})})}function Uy(c){const{entry:o}=c,[m,d]=y.useState(o.status==="error"),S=o.status==="running"?"运行中":o.status==="error"?"出错":"完成",R=`is-${o.status}`,z=Cy(o.args);return s.jsxs("div",{className:`oc-tool ${o.status==="error"?"is-error":""} ${o.status==="running"?"is-running":""}`,children:[s.jsxs("button",{type:"button",className:"oc-tool-head","aria-expanded":m,onClick:()=>d(X=>!X),children:[s.jsx(By,{}),s.jsx("span",{className:"oc-tool-icon","aria-hidden":"true",children:s.jsx(Yy,{})}),s.jsx("span",{className:"oc-tool-name",children:o.toolName}),z&&s.jsx("span",{className:"oc-tool-args",children:z}),s.jsx("span",{className:`oc-tool-status ${R}`,children:S})]}),m&&s.jsxs("div",{className:"oc-tool-body",children:[o.args!==void 0&&s.jsxs("div",{className:"oc-tool-section",children:[s.jsx("div",{className:"oc-tool-label",children:"入参"}),s.jsx("pre",{className:"oc-tool-code",children:typeof o.args=="string"?o.args:JSON.stringify(o.args,null,2)})]}),o.resultText!==void 0&&s.jsxs("div",{className:"oc-tool-section",children:[s.jsx("div",{className:"oc-tool-label",children:o.status==="error"?"错误":"结果"}),s.jsx("pre",{className:"oc-tool-code",children:o.resultText})]}),o.status==="running"&&o.resultText===void 0&&o.args===void 0&&s.jsx("div",{className:"oc-tool-section",children:s.jsx("div",{className:"oc-tool-waiting",children:"等待结果…"})})]})]})}function Hy(){return s.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[s.jsx("rect",{x:"9",y:"9",width:"13",height:"13",rx:"2",ry:"2"}),s.jsx("path",{d:"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"})]})}function Ly(){return s.jsx("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:s.jsx("polyline",{points:"20 6 9 17 4 12"})})}function qy(){return s.jsxs("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[s.jsx("line",{x1:"22",y1:"2",x2:"11",y2:"13"}),s.jsx("polygon",{points:"22 2 15 22 11 13 2 9 22 2"})]})}function Gy(){return s.jsx("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true",children:s.jsx("rect",{x:"6",y:"6",width:"12",height:"12",rx:"2"})})}function By(){return s.jsx("svg",{className:"oc-tool-chevron",viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:s.jsx("polyline",{points:"4 2.5 7.5 6 4 9.5"})})}function Yy(){return s.jsx("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:s.jsx("path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94l-3.76 3.76z"})})}function au(c){const o=(c??"").trim();return o?/controller identity changed|package fingerprint changed|entry binary sha256 changed/i.test(o)?"控制器版本已变更(Console 启动后代码被重新编译)。请重启 Console 后再试,一次会话中途不要升级/重建控制器。":o:"操作失败"}const Qy={report:{id:"report",label:"查看报告",action:"dagReport",lane:"dag",guide:"看失败分类与建议动作(交接报告摘要)",commandHint:"loop-agent dag report --run-id <run-id> --json"},doctor:{id:"doctor",label:"Doctor 诊断",action:"doctor",lane:"dag",guide:"只读诊断:检查 Console / Pi / 仓库就绪,不是重跑前置",commandHint:"agent-worker console doctor --repo ."},decision:{id:"decision",label:"人工决策",lane:"dag",guide:"暂停等人时:先看 doctor 输出再做决策(经 CLI)",commandHint:"loop-agent dag doctor --run-id <run-id> --markdown"},resume:{id:"resume",label:"恢复运行",lane:"dag",guide:"仅当运行可安全 resume 时使用(经 CLI)",commandHint:"loop-agent run-dag --resume --run-id <run-id>"},reconcile:{id:"reconcile",label:"对账 / reconcile",requiresReason:!0,lane:"dag",guide:"状态不一致时先对账,再决定是否重跑(需原因)",commandHint:"loop-agent dag reconcile-run --run-id <run-id> --reason <structured-reason>"},regenerate:{id:"regenerate",label:"重新生成契约/计划",lane:"dag",guide:"契约/计划过期时:回任务页或经 CLI 重新 run-task(本页仅提示)",commandHint:"loop-agent dag run-task <task-id> --profile auto"},observeLink:{id:"observeLink",label:"全屏观测",action:"observeLink",lane:"dag",guide:"打开完整 Inspect 画布;顶栏可返回操作台",commandHint:"agent-worker console serve --repo . --port 8790"},dagRerun:{id:"dagRerun",label:"从节点重跑",requiresReason:!0,action:"dagRerun",lane:"dag",guide:"子图重跑:需选起点且 plan 合格;含 writer 的早期节点常不可用",commandHint:"loop-agent dag rerun --run-id <run-id> --from-node <node-id> --plan"},standaloneTaskRerun:{id:"standaloneTaskRerun",label:"完整重跑任务",requiresReason:!0,action:"standaloneTaskRerun",lane:"dag",guide:"整单重跑:失败类默认首选;需确认原因后提交",commandHint:"loop-agent dag rerun-task --run-id <run-id> --reason <reason> --request-id <key>"},workerTaskRetry:{id:"workerTaskRetry",label:"重新排队 Worker Task",requiresReason:!0,action:"workerTaskRetry",lane:"worker",guide:"仅 Worker 队列任务失败时使用,不要与 DAG 重跑混用",commandHint:"agent-worker task retry <task-id> --feature-id <feature-id> --repo . --reason <reason>"}},Sm={"validation-failed":["report","doctor","regenerate"],"contract-drift":["report","doctor","decision","reconcile","regenerate"],"runtime-mismatch":["report","doctor","reconcile","regenerate"],"pause-on-human":["decision","resume","report","doctor"],"verification-failed":["report","doctor","standaloneTaskRerun","dagRerun","resume","regenerate"],"orphan-unknown":["report","doctor","reconcile"],"terminal-failed":["report","doctor","dagRerun","standaloneTaskRerun","workerTaskRetry","regenerate"],"terminal-succeeded":["report","observeLink"],"needs-reconcile":["report","doctor","reconcile","regenerate"]};function Xy(c){return(Sm[c]??Sm["orphan-unknown"]).map(m=>Qy[m])}function Zy(c){const o=[],m=[];for(const d of c)d.lane==="worker"?m.push(d):o.push(d);return{dag:o,worker:m}}function Vy(c){return typeof c.action=="string"&&c.action.trim().length>0}function Dm(c){return Xy(c).filter(Vy)}function Ky(c){const o=new Set(Dm(c).map(d=>d.id)),m=(...d)=>{for(const S of d)if(o.has(S))return S;return null};switch(c){case"terminal-failed":case"verification-failed":return m("standaloneTaskRerun","dagRerun","doctor","report");case"pause-on-human":return m("doctor","report");case"needs-reconcile":case"runtime-mismatch":case"contract-drift":return m("doctor","report");case"validation-failed":return m("doctor","report");case"terminal-succeeded":return m("observeLink","report");default:return m("doctor","report")}}function $y(c){if(c.needsReconcile)return"needs-reconcile";const o=(c.errorCode??"").toLowerCase(),m=(c.operationState??"").toLowerCase(),d=(c.dagStatus??"").toLowerCase();return o.includes("validation")||o.includes("invalid")||m.includes("validation")?"validation-failed":o.includes("contract")||o.includes("drift")||o.includes("binding")?"contract-drift":o.includes("runtime")||o.includes("mismatch")||o.includes("fingerprint")?"runtime-mismatch":o.includes("human")||m.includes("paused")||d.includes("paused")||m.includes("awaiting")?"pause-on-human":o.includes("verif")||m.includes("verif")?"verification-failed":m==="succeeded"||m==="completed"||d==="succeeded"||d==="completed"?"terminal-succeeded":m==="failed"||m.includes("fail")||d==="failed"||o.includes("fail")?"terminal-failed":o.includes("reconcil")||m.includes("reconcil")?"needs-reconcile":"orphan-unknown"}const Ro=new Set(["failed","error","partial_failed"]),zm=new Set(["blocked","paused","awaiting_human"]);function cu(c){return(c??"").trim().toLowerCase()}function Jy(c){return Ro.has(cu(c))}function xm(c){const o=cu(c.status);return Ro.has(o)||o.includes("fail")?0:c.lifecycle==="paused"||o==="paused"?1:c.lifecycle==="active"?2:3}function Iy(c){return[...c].sort((o,m)=>{const d=xm(o)-xm(m);return d!==0?d:m.mtimeMs-o.mtimeMs})}function Wy(c){return Iy(c)[0]?.dagRunId}function jm(c){const o=cu(c.status);return Ro.has(o)?0:zm.has(o)?1:2}function Om(c){return[...c].sort((o,m)=>{const d=jm(o)-jm(m);return d!==0?d:o.nodeId.localeCompare(m.nodeId)})}function Fy(c){const o=Om(c);return o.find(d=>Jy(d.status)||zm.has(cu(d.status)))?.nodeId??o[0]?.nodeId}function Py(c){const o=c.status?.trim()||c.lifecycle;return`${c.dagRunId.length>36?`${c.dagRunId.slice(0,18)}…${c.dagRunId.slice(-8)}`:c.dagRunId} · ${o}`}function ep(c){const o=c.status?.trim()||"unknown",m=c.label?.trim();return m&&m!==c.nodeId?`${c.nodeId} · ${o} · ${m}`:`${c.nodeId} · ${o}`}function tp(c){const m=[`operator-recovery: ${c.actionLabel?.trim()||"恢复"}`],d=c.dagRunId?.trim();if(d){const X=c.runStatus?.trim();m.push(X?`run=${d} (${X})`:`run=${d}`)}const S=c.fromNodeId?.trim();if(S){const X=c.nodeStatus?.trim();m.push(X?`from-node=${S} (${X})`:`from-node=${S}`)}const R=c.factClassLabel?.trim();R&&m.push(`fact=${R}`);const z=c.nodeError?.trim()||c.errorMessage?.trim()||(c.errorCode?.trim()?`code=${c.errorCode.trim()}`:"");return z&&m.push(`detail=${z.replace(/\s+/g," ").slice(0,280)}`),m.join(`
|
|
20
|
-
`).slice(0,500)}function Nm(c){const o=c.trim();return o?o==="operator-recovery"||o.startsWith("operator-recovery:")||o.startsWith("recovery:"):!0}function lp(c){return c==="validate"||c==="apply"||c==="spine"?"contract":c}const _m="X-Loop-Console-Confirmation",np="agent-worker console doctor --repo .",So=[{kind:"standard",label:"后端研发(默认 DAG)",hint:"生成标准 hybrid DAG(contract → implement → verify)"},{kind:"frontend-implementation",label:"前端研发",hint:"生成 frontend-implementation 专用节点链"},{kind:"backend-test",label:"后端测试",hint:"生成 backend-test-dag(分析 / 用例 / pytest)"},{kind:"frontend-test",label:"前端测试",hint:"生成 frontend-test-dag(RAG 用例 + Playwright CLI)"}],xo={"setup-required":"需要设置",ready:"已就绪",degraded:"降级可用",unknown:"未知"},ap={idle:"未探测",match:"匹配",mismatch:"仓库不匹配",unavailable:"不可用"},Tm={low:"低",medium:"中",high:"高"},Em={"validation-failed":"校验失败","contract-drift":"契约漂移","runtime-mismatch":"运行时不匹配","pause-on-human":"等待人工","verification-failed":"验证失败","orphan-unknown":"孤立/未知","terminal-failed":"已终止(失败)","terminal-succeeded":"已终止(成功)","needs-reconcile":"需要对账"},ip={idle:"空闲","not-started":"未开始","not-run":"未运行","n/a (MVP)":"不适用(MVP)",accepted:"已接受",succeeded:"已成功",running:"运行中",ran:"已执行"};function iu(c){return ip[c]??c}function Mm(){return window.__CONSOLE_CONFIRMATION_TOKEN__??""}function su(c){return`${c}-${Date.now().toString(36)}-${Math.random().toString(36).slice(2,8)}`}async function jo(c,o={},m){const d={"Content-Type":"application/json",[_m]:Mm()},S=await fetch("/api/operator/v1/operations",{method:"POST",credentials:"same-origin",headers:d,body:JSON.stringify({action:c,actionParams:o,...m?{clientRequestId:m}:{}})});let R={};try{R=await S.json()}catch{R={ok:!1,error:{code:"INVALID_INPUT",message:"操作响应不是合法 JSON"}}}return{status:S.status,body:R}}const sp=new Set(["runDag","dagRerun","standaloneTaskRerun"]);function No(c){const o=(c.blockedReasons??[]).map(String),m=(c.blockingNodes??[]).map(S=>[S.nodeId,S.reasonCode].filter(Boolean).join(":")),d=[...o,...m].filter(Boolean);return d.length===0?"从节点重跑不具备安全资格(子图含 writer / unsafe shell / decision-gate 等)。可改用「完整重跑任务」,或另选只读安全子图的起始节点。":`从节点重跑不具备安全资格:${d.slice(0,6).join("; ")}${d.length>6?"…":""}。可改用「完整重跑任务」。`}async function Cm(c,o=9e4){const m=Date.now();for(;Date.now()-m<o;){const d=await fetch(`/api/operator/v1/operations/${encodeURIComponent(c)}`,{credentials:"same-origin"});if(!d.ok)return null;const S=await d.json(),R=S.operation??S,z=R.state??"";if(z==="succeeded"||z==="failed"||z==="needs-reconcile"||z==="timed-out")return R;await new Promise(X=>setTimeout(X,250))}return{state:"needs-reconcile",errorMessage:"等待操作结果超时"}}function up(){const[c,o]=y.useState(()=>jy({env:void 0,storage:window.localStorage,location:window.location})),[m,d]=y.useState(null),[S,R]=y.useState("setup-required"),[z,X]=y.useState(null),[G,O]=y.useState(null),[V,B]=y.useState("setup"),ee=y.useCallback(h=>{B(U=>lp(typeof h=="function"?h(U):h))},[]),[L,le]=y.useState(""),[se,et]=y.useState(""),[oe,_e]=y.useState("standard"),Me=So.find(h=>h.kind===oe)??So[0],[St,ot]=y.useState(`# 需求
|
|
21
|
-
|
|
22
|
-
实现 Loop Operator Console Happy Path:Interview → 契约落地 → DAG confirm → run。
|
|
23
|
-
`),[$e,fe]=y.useState(null),[Ne,xt]=y.useState(null),[rt,dt]=y.useState(""),[ft,Ft]=y.useState(null),[nt,_t]=y.useState(null),[D,Q]=y.useState(null),[ne,Te]=y.useState(null),[Ee,p]=y.useState(null),[E,q]=y.useState(!1),[I,ae]=y.useState(null),[he,ge]=y.useState(null),tt=y.useRef(!1),[Ae,gl]=y.useState(null),[bl,ua]=y.useState(null),[Sl,xl]=y.useState(null),[Je,Mt]=y.useState([]),[fn,mn]=y.useState(!0),Kt=y.useRef(null),[re,jl]=y.useState(!1),[Ra,Da]=y.useState(!1),[mt,Re]=y.useState(null),[hn,He]=y.useState(null),[Nl,it]=y.useState(null),[Yl,vn]=y.useState(null),[ol,Bt]=y.useState({command:"idle",dag:"not-started",verification:"not-run",promote:"n/a (MVP)"}),[K,kt]=y.useState(""),[Ct,wn]=y.useState("idle"),[Pl,Tl]=y.useState(null),[Yt,El]=y.useState(null),[en,wt]=y.useState(!1),[Ze,Pt]=y.useState(""),[Ql,Un]=y.useState(""),[Qt,$t]=y.useState(""),[Xl,Zl]=y.useState(!1),[Ie,Jt]=y.useState(null),[ht,el]=y.useState(null),[Dt,tn]=y.useState([]),[at,ue]=y.useState([]),[We,Cl]=y.useState(!1),[Hn,Al]=y.useState(!1),[ln,Rl]=y.useState(null),[rl,nn]=y.useState(!1),[It,tl]=y.useState(!1),[At,Ut]=y.useState(null),Be=S==="setup-required",Vl=S==="degraded",Dl=y.useCallback((h,U={})=>{o(h),U.taskId&&le(U.taskId),U.dagRunId&&kt(U.dagRunId),U.fromNodeId&&Pt(U.fromNodeId),U.featureId&&Un(U.featureId)},[]);y.useEffect(()=>{const h=Ty(window.location);h&&Dl(h.workspace,h)},[Dl]);const ll=y.useCallback(async()=>{try{const U=await(await fetch("/api/health")).json();d(U);const Y=U.piReadiness??"setup-required";R(Y),O(null),ee(Y==="ready"||Y==="degraded"?Z=>Z==="setup"?"import-prd":Z:"setup")}catch(h){O(h instanceof Error?h.message:String(h))}try{const U=await(await fetch("/api/operator/v1/readiness")).json();X(U),U.state&&R(U.state)}catch{}},[]);y.useEffect(()=>{ll()},[ll]);const zl=y.useCallback(()=>{Q(null),Te(null),p(null),q(!1),ae(null),ge(null),tt.current=!1},[]),ca=y.useCallback(()=>{zl(),ee("contract")},[zl,ee]),Ln=y.useCallback(h=>{const U=h.session;U?.sessionId&&fe(U.sessionId);const Y=h.question;xt(Y),Ft(h.summary??null);const Z=h.assessmentId;typeof Z=="string"&&Z&&_t(Z),(h.complete===!0||typeof Z=="string"&&Z)&&(ca(),He(h.skipped===!0?"已跳过访谈:已按推荐补齐草稿并签发评估":"访谈已完成:草稿已绑定完整评估结果"))},[ca]),ye=y.useCallback(async(h,U={},Y)=>{jl(!0),Re(null),it(null),He(null);try{const{status:Z,body:F}=await jo(h,U,Y?.clientRequestId);if(Z===412||F.error?.code==="PI_SETUP_REQUIRED")return Re(au(F.error?.message??"Pi 未就绪或已降级:该操作暂不可用")),it(F.error?.code??"PI_SETUP_REQUIRED"),R("setup-required"),ee("setup"),o("models"),F;if(Z>=400||F.ok===!1)return Re(au(F.error?.message??F.message??`操作失败(HTTP ${Z})`)),it(F.error?.code??String(Z)),vn(F.state??`failed:${Z}`),Bt(pt=>({...pt,command:F.error?.message??`failed:${F.error?.code??Z}`})),F;if(F.operationId){const pt=window.localStorage.getItem(Fl)?.trim();if(pt&&fetch(`/api/operator/v1/chat/sessions/${encodeURIComponent(pt)}/operation-links`,{method:"POST",credentials:"same-origin",headers:{"Content-Type":"application/json",[_m]:Mm()},body:JSON.stringify({operationId:F.operationId})}).then(ce=>{ce.ok||console.warn("Operator Chat operation link failed",ce.status)}).catch(ce=>console.warn("Operator Chat operation link failed",ce)),xl(F.operationId),vn(F.state??"accepted"),Bt(ce=>({...ce,command:F.state??"accepted",dag:h==="runDag"?"running":ce.dag})),sp.has(h)){mn(!0),He(`操作已接受,后台运行中:${F.operationId}(请看事件流;可同时打开 Observe)`);const ce=F.operationId;Cm(ce,30*6e4).then(Le=>{if(Le){if(vn(Le.state??null),Le.state==="failed"||Le.state==="needs-reconcile"||Le.state==="timed-out"){Re(au(Le.errorMessage??Le.stderrPreview??`操作失败:${Le.state}`)),it(Le.errorCode??Le.state??null),Bt(un=>({...un,command:`failed:${Le.errorCode??Le.state}`}));return}Le.state==="succeeded"&&(He(`${h} 已成功`),Bt(un=>({...un,command:"succeeded"})))}})}else{He(`操作已接受:${F.operationId}`);const ce=await Cm(F.operationId);if(ce){if(vn(ce.state??null),ce.state==="failed"||ce.state==="needs-reconcile"||ce.state==="timed-out")return Re(au(ce.errorMessage??ce.stderrPreview??`操作失败:${ce.state}`)),it(ce.errorCode??ce.state??null),Bt(Le=>({...Le,command:`failed:${ce.errorCode??ce.state}`})),{ok:!1,operationId:F.operationId,state:ce.state,error:{code:ce.errorCode??ce.state??"INTERNAL_ERROR",message:ce.errorMessage??ce.stderrPreview??`操作失败:${ce.state}`}};He(ce.errorMessage?`${h}:${ce.errorMessage}`:`${h} 已成功`),Bt(Le=>({...Le,command:ce.state??"succeeded"}))}}}else He(`${h} 已完成`),vn(F.state??"succeeded"),Bt(pt=>({...pt,command:"succeeded",verification:h==="contractValidate"||h==="spineCheck"?"ran":pt.verification}));const Ue=F.result??{};(h==="interviewStart"||h==="interviewTurn"||h==="interviewSkip")&&Ln(Ue);const De=Ue.confirmation;return De?.confirmationId&&(gl(De.confirmationId),ua(Ue)),Y?.advanceTo&&ee(Y.advanceTo),F}catch(Z){Re(Z instanceof Error?Z.message:String(Z));return}finally{jl(!1)}},[Ln]),yn=y.useCallback(h=>{if(!h)return"无响应";if(h.error?.message)return h.error.message;if(h.message)return h.message;const U=h.result;if(U&&typeof U=="object")try{return JSON.stringify(U).slice(0,1200)}catch{return"已返回结果"}return h.ok===!1?"失败":"成功"},[]),Ve=y.useCallback(h=>{if(!h||h.ok===!1||h.error)return!1;const U=h.result;if(!U)return!0;if(typeof U.valid=="boolean")return U.valid;const Y=U.result;return Y&&typeof Y.valid=="boolean"?Y.valid:!0},[]),an=y.useCallback(async(h=!1)=>{const U=L.trim();if(!U)return;const Y=`${U}:${nt??""}`;if(!(!h&&he===Y&&D!==null)&&!tt.current){tt.current=!0,Q(null),Te(null),p(null),ae(null),q(!1);try{const Z=await ye("contractValidate",{taskId:U}),F=Ve(Z);if(Q(F),Te(yn(Z)),!F){ge(Y),He("契约校验未通过:请先修正草稿后再应用");return}const Ue=await ye("contractDiff",{taskId:U});p(yn(Ue)),ge(Y),He(Ve(Ue)?"校验与差异已就绪:确认后可应用契约":"校验通过,但差异查询失败(仍可查看下方摘要)")}finally{tt.current=!1}}},[nt,he,D,Ve,ye,yn,L]),Xt=y.useCallback(async()=>{const h=L.trim();if(!h||!nt)return;const U=await ye("contractApply",{taskId:h,assessmentId:nt},{clientRequestId:su("apply")});if(!Ve(U)){q(!1);return}q(!0);const Y=await ye("spineCheck",{taskId:h});if(Ve(Y)){ae(!0),ee("dag-confirm"),He("契约已应用并通过 Spine 审计,可生成并运行 DAG");return}ae(!1),He("契约已应用,但 Spine 审计未通过:可重试 Spine")},[nt,Ve,ye,ee,L]),Zt=y.useCallback(async()=>{const h=L.trim();if(!h)return;const U=await ye("spineCheck",{taskId:h});if(Ve(U)){ae(!0),ee("dag-confirm"),He("Spine 审计已通过,可生成并运行 DAG");return}ae(!1)},[Ve,ye,ee,L]),pn=y.useCallback(async()=>{const h=Ae?.trim();if(!h)return;const U=bl?.confirmation?.humanGateToken,Y=await ye("confirmDagConfirmation",{confirmationId:h,humanGateToken:U});Ve(Y)&&(ee("run"),await ye("runDag",{confirmationId:h},{clientRequestId:su("run")}))},[Ae,bl,Ve,ye,ee]);y.useEffect(()=>{V==="contract"&&L.trim()&&an(!1)},[V,L,nt,an]);const gn=y.useCallback(async h=>{Kt.current?.abort();const U=new AbortController;Kt.current=U,Mt(Y=>[...Y,`开始跟随事件流 ${h}`]);try{const Y=await fetch(`/api/operator/v1/operations/${encodeURIComponent(h)}/events`,{credentials:"same-origin",signal:U.signal});if(!Y.ok||!Y.body){Mt(De=>[...De,`事件流 HTTP ${Y.status}`]);return}const Z=Y.body.getReader(),F=new TextDecoder;let Ue="";for(;fn;){const{done:De,value:pt}=await Z.read();if(De)break;Ue+=F.decode(pt,{stream:!0});const ce=Ue.split(`
|
|
24
|
-
|
|
25
|
-
`);Ue=ce.pop()??"";for(const Le of ce){const un=Le.split(`
|
|
26
|
-
`).find(_l=>_l.startsWith("data:"));if(!un)continue;const oa=un.slice(5).trim();Mt(_l=>[..._l.slice(-80),oa.slice(0,240)])}}}catch(Y){Y.name!=="AbortError"&&Mt(Z=>[...Z,`事件流错误:${Y instanceof Error?Y.message:String(Y)}`])}},[fn]);y.useEffect(()=>(Sl&&fn&&(V==="run"||c==="recovery")&&gn(Sl),()=>Kt.current?.abort()),[Sl,fn,V,c,gn]);const Ol=y.useCallback(()=>K.trim()?`/inspect/#/dag/${encodeURIComponent(K.trim())}`:"/inspect/#/",[K]),za=y.useCallback(()=>{window.location.assign(Ol())},[Ol]),Kl=y.useCallback(async()=>{if(K.trim())return K.trim();const h=L.trim();if(!h)return Re("打开 DAG 检视需要任务 ID 或 DAG 运行 ID"),null;Da(!0),Re(null);try{const{status:U,body:Y}=await jo("observeLink",{taskId:h}),Z=Y.result??{};if(U>=400||Y.ok===!1)return Re(Y.error?.message??"无法解析 DAG 画布地址"),wn("unavailable"),Tl(Y.error?.message??null),null;const F=typeof Z.dagRunId=="string"?Z.dagRunId.trim():"";return F?(kt(F),wn("match"),Tl(null),El(`/inspect/#/dag/${encodeURIComponent(F)}`),F):(Re("尚未找到该任务的 DAG 运行,请稍后再打开检视"),wn("unavailable"),Tl(Z.message??"未解析到 DAG run"),null)}catch(U){return Re(U instanceof Error?U.message:String(U)),null}finally{Da(!1)}},[K,L]),sn=y.useCallback(async()=>{await Kl()&&wt(!0)},[Kl]),zt=y.useCallback(async()=>{const h=await Kl();h&&window.location.assign(`/inspect/#/dag/${encodeURIComponent(h)}`)},[Kl]),$l=y.useCallback(async()=>{Cl(!0);try{const h=L.trim(),U=new URLSearchParams;h&&U.set("taskId",h),U.set("limit","40");const Y=await fetch(`/api/operator/v1/recovery/candidates?${U.toString()}`,{credentials:"same-origin"});if(!Y.ok){tn([]);return}const Z=await Y.json();tn(Array.isArray(Z.runs)?Z.runs:[])}catch{tn([])}finally{Cl(!1)}},[L]),bn=y.useCallback(async h=>{const U=h.trim();if(!U){ue([]),Rl(null);return}Al(!0);try{const Y=await fetch(`/api/dag-runs/${encodeURIComponent(U)}`,{credentials:"same-origin"});if(!Y.ok){ue([]),Rl(null);return}const Z=await Y.json();Rl(typeof Z.status=="string"?Z.status:null);const F=Array.isArray(Z.nodes)?Z.nodes:[],Ue=Om(F.map(De=>{const pt=(De.nodeId??De.id??"").trim();return pt?{nodeId:pt,status:De.status,label:De.label??De.name,errorPreview:De.errorPreview}:null}).filter(De=>De!==null));ue(Ue)}catch{ue([]),Rl(null)}finally{Al(!1)}},[]);y.useEffect(()=>{c==="recovery"&&$l()},[c,L,$l]),y.useEffect(()=>{if(c!=="recovery"||rl||Dt.length===0)return;const h=K.trim(),U=h?Dt.some(Y=>Y.dagRunId===h):!1;if(!h||!U){const Y=Wy(Dt);Y&&Y!==h&&kt(Y)}},[c,Dt,K,rl]),y.useEffect(()=>{c==="recovery"&&bn(K)},[c,K,bn]),y.useEffect(()=>{if(c!=="recovery"||It||at.length===0)return;const h=Ze.trim(),U=h?at.some(Y=>Y.nodeId===h):!1;if(!h||!U){const Y=Fy(at);Y&&Y!==h&&Pt(Y)}},[c,at,Ze,It]);const vt=$y({operationState:ln?null:Yl,errorCode:ln?null:Nl,dagStatus:ln}),f=y.useMemo(()=>Dm(vt),[vt]),x=y.useMemo(()=>Zy(f),[f]),C=y.useMemo(()=>Ky(vt),[vt]),k=y.useMemo(()=>at.find(h=>h.nodeId===Ze.trim()),[at,Ze]),$=y.useRef(null);y.useEffect(()=>{ht&&$.current?.scrollIntoView({behavior:"smooth",block:"nearest"})},[ht?.id]);const H=y.useCallback(h=>tp({actionLabel:h,dagRunId:K.trim()||void 0,fromNodeId:Ze.trim()||void 0,runStatus:ln,nodeStatus:k?.status,nodeError:k?.errorPreview,factClassLabel:Em[vt],errorMessage:mt,errorCode:Nl}),[K,Ze,mt,Nl,vt,ln,k?.errorPreview,k?.status]);y.useEffect(()=>{if(c!=="recovery"||Xl&&!Nm(Qt))return;const h=H(ht?.label);h&&h!==Qt&&$t(h)},[c,K,Ze,ln,k,vt,mt,Nl,ht?.label,Xl,Qt,H]);const ke=y.useCallback(async h=>{if(h.requiresReason||(el(null),Jt(null)),h.action==="doctor"){Ut(null),ye("doctor",{});return}if(h.action==="dagReport"||h.id==="report"){const U=K.trim();if(U){el(null),Jt(null);const Y=await ye("dagReport",{runId:U}),Z=Y?.result??{},F=(Z.raw?.runs??Z.runs)?.[0];Y&&Y.ok!==!1&&!Y.error&&F&&(Ut({runId:F.runId??U,title:F.title,status:F.status,category:F.productLineFailureCategory,recommendation:F.recoveryRecommendation?.summary??F.recommendedFollowUp??void 0}),He(null));return}if(L.trim()){Ut(null),ye("status",{taskId:L});return}Re("查看报告需要先选择 DAG 运行 ID(或填写任务 ID)");return}if(h.action==="observeLink"){Ut(null),zt();return}if(h.requiresReason){if(Ut(null),el(h),Jt(null),h.id!=="dagRerun"&&(Re(null),it(null)),(!Xl||Nm(Qt))&&($t(H(h.label)),Zl(!1)),h.id==="dagRerun"&&K.trim()&&Ze.trim()){jl(!0);try{const{status:U,body:Y}=await jo("dagRerunPlan",{runId:K.trim(),fromNode:Ze.trim()}),Z=Y.result??{};Z&&typeof Z=="object"&&("eligible"in Z||Z.planHash)&&Jt(Z),U<400&&Y.ok!==!1&&Z.eligible!==!1?He(null):Z.eligible===!1?Re(Y.error?.message??No(Z)):He(Y.error?.message??"无法预检重跑计划;确认后仍将尝试提交(CLI 可能尚未就绪)")}finally{jl(!1)}}return}Re(null),it(null),He(`${h.label}:请经 CLI — ${h.commandHint??""}`)},[H,K,Ze,zt,Qt,Xl,ye,L]),st=y.useCallback(async()=>{const h=ht;if(!h)return;const U=Qt.trim();if(!U){Re("恢复操作需要结构化原因");return}const Y=su(`recovery-${h.id}`);if(el(null),h.id==="dagRerun"){const Z=K.trim(),F=Ze.trim();if(!Z||!F){Re("从节点重跑需要 DAG 运行 ID 与起始节点 ID");return}let Ue=Ie?.planHash?.trim(),De=Ie?.eligible;if(!Ue||De===void 0){const pt=await ye("dagRerunPlan",{runId:Z,fromNode:F}),ce=pt?.result??{};if((ce.planHash||ce.eligible!==void 0)&&Jt(ce),Ue=ce.planHash?.trim()||Ue,De=ce.eligible,ce.eligible===!1){Re(pt?.error?.message??No(ce));return}if(pt&&pt.ok===!1&&!Ue){Re(pt.error?.message??"无法获取 planHash;请确认 loop-agent dag rerun --plan 可用");return}}if(De===!1){Re(No(Ie??{}));return}if(!Ue){Re("无法获取 planHash;请确认 loop-agent dag rerun --plan 可用");return}await ye("dagRerun",{runId:Z,fromNode:F,planHash:Ue,reason:U},{clientRequestId:Y});return}if(h.id==="standaloneTaskRerun"){const Z=K.trim();if(!Z){Re("完整重跑任务需要 DAG 运行 ID");return}const F={runId:Z,reason:U,...L.trim()?{taskId:L.trim()}:{}},Ue=await ye("prepareMutationGate",{action:"standaloneTaskRerun",actionParams:F});if(!Ve(Ue))return;const De=Ue?.result??Ue;if(!De.receiptId||!De.humanGateToken){Re("prepareMutationGate 未返回可消费的 Human Gate receipt");return}await ye("standaloneTaskRerun",{...F,confirmationId:De.receiptId,humanGateToken:De.humanGateToken},{clientRequestId:Y});return}if(h.id==="workerTaskRetry"){const Z=L.trim();if(!Z){Re("重新排队 Worker Task 需要任务 ID");return}const F={taskId:Z,reason:U,...Ql.trim()?{featureId:Ql.trim()}:{}},Ue=await ye("prepareMutationGate",{action:"workerTaskRetry",actionParams:F});if(!Ve(Ue))return;const De=Ue?.result??Ue;if(!De.receiptId||!De.humanGateToken){Re("prepareMutationGate 未返回可消费的 Human Gate receipt");return}await ye("workerTaskRetry",{...F,confirmationId:De.receiptId,humanGateToken:De.humanGateToken},{clientRequestId:Y});return}if(h.id==="reconcile"){if(!K.trim()){Re("对账恢复需要 DAG 运行 ID");return}He(`${h.label}:请经 CLI — ${h.commandHint??""}`);return}He(`${h.label}:请经 CLI — ${h.commandHint??""}`)},[K,Ql,Ze,ht,Ie?.planHash,Qt,ye,Ve,L]),J=[{id:"setup",label:"就绪检查"},{id:"import-prd",label:"导入需求"},{id:"interview",label:"需求访谈(可跳过)"},{id:"contract",label:"契约落地"},{id:"dag-confirm",label:"确认 DAG"},{id:"run",label:"运行"}],pe=J.findIndex(h=>h.id===V),yt=h=>!ht||ht.lane!==h?null:s.jsxs("div",{ref:$,className:"recovery-confirm","data-testid":"recovery-confirm",children:[s.jsxs("h3",{children:["待确认:",ht.label]}),s.jsx("p",{className:"muted",children:"请核对上方运行 / 节点与恢复原因,再点「确定」执行。"}),Ie?s.jsxs("div",{className:"recovery-plan-summary",children:[s.jsxs("p",{className:"muted",children:["计划 eligible=",String(Ie.eligible??"—")," · 风险=",Tm[Ie.risk??""]??Ie.risk??"—"]}),Ie.effectiveFromNodeId?s.jsxs("p",{className:"muted",children:["有效起点:",Ie.effectiveFromNodeId]}):null,Ie.estimatedExecution?s.jsxs("p",{className:"muted",children:["将执行 ",Ie.estimatedExecution.nodeCount??"?"," ","个节点 / ",Ie.estimatedExecution.piCallCount??"?"," ","次 Pi;预计避免"," ",Ie.estimatedExecution.avoidedNodeCount??"?"," ","个节点"]}):null,Ie.planHash?s.jsxs("p",{className:"muted",children:["planHash: ",s.jsxs("code",{children:[Ie.planHash.slice(0,16),"…"]})]}):null]}):ht.id==="dagRerun"?s.jsx("p",{className:"muted",children:"未加载计划摘要;点「确定」前将再次尝试资格检查。"}):null,s.jsxs("div",{className:"cta-row",children:[s.jsx("button",{type:"button",className:"btn btn-primary",disabled:re||!Qt.trim(),"data-testid":"recovery-confirm-submit",onClick:()=>{st()},children:"确定"}),s.jsx("button",{type:"button",className:"btn btn-secondary",disabled:re,"data-testid":"recovery-confirm-cancel",onClick:()=>{el(null),Jt(null)},children:"取消"})]})]});return s.jsx(s.Fragment,{children:s.jsxs("div",{className:`console-app${c==="chat"?" is-chat-focus":""}`,children:[s.jsxs("nav",{className:"embedded-operator-nav","aria-label":"Operator 导航",children:[s.jsx("span",{"aria-current":"page",children:"操作"}),s.jsx("a",{href:"/inspect/#/",children:"观测"})]}),s.jsxs("div",{className:`console-shell${c==="chat"?" is-chat-focus":""}`,children:[s.jsxs("nav",{className:"top-nav","aria-label":"控制台导航",children:[[["tasks","任务"],["recovery","恢复"],["chat","对话"],["models","模型与认证"],["settings","设置"]].map(([h,U])=>s.jsx("button",{type:"button",className:c===h?"nav-link nav-link-active":"nav-link",onClick:()=>o(h),children:U},h)),s.jsxs("button",{type:"button",className:"readiness","data-state":S,"data-testid":"readiness-state",title:Be?"Pi SDK / 认证 / 模型未就绪。不提供纯表单兜底。点击前往模型与认证。":Vl?"Pi 暂时降级:仍可恢复草稿与需求访谈。点击查看详情。":"Pi 已就绪。点击打开设置查看详情。","aria-label":`Pi 就绪:${xo[S]??S}`,onClick:()=>o(Be||Vl?"models":"settings"),children:[s.jsx("span",{className:"readiness-label",children:"Pi"}),s.jsx("strong",{children:xo[S]??S})]})]}),mt?s.jsxs("div",{className:"flash flash-error","data-testid":"op-error",children:[s.jsx("span",{className:"flash-label",children:"错误"}),s.jsx("p",{className:"flash-body",children:mt})]}):null,hn?s.jsxs("div",{className:"flash flash-info","data-testid":"op-message",children:[s.jsx("span",{className:"flash-label",children:"状态"}),s.jsx("p",{className:"flash-body",children:hn})]}):null,s.jsxs("main",{className:`console-main${c==="chat"?" console-main--fill":""}`,children:[c==="tasks"?s.jsxs("section",{className:"panel task-ops","aria-labelledby":"task-ops-title",children:[s.jsx("h2",{id:"task-ops-title",children:"任务操作"}),s.jsx("p",{className:"panel-lead",children:"按 Happy Path 推进;契约落地一步内自动校验,人工确认写入。"}),s.jsx("ol",{className:"wizard-steps","data-testid":"wizard-steps",children:J.map((h,U)=>s.jsxs("li",{"data-active":V===h.id,"data-done":U<pe,children:[s.jsx("span",{className:"step-index",children:String(U+1).padStart(2,"0")}),s.jsx("span",{className:"step-label",children:h.label})]},h.id))}),s.jsxs("label",{className:"field",children:[s.jsx("span",{className:"muted",children:"任务 ID"}),s.jsx("input",{"data-testid":"task-id-input",value:L,disabled:re||Be||V==="import-prd",placeholder:V==="import-prd"?"导入需求后自动生成":"task-id",onChange:h=>le(h.target.value.trim())})]}),se?s.jsxs("p",{className:"workflow-hint","data-testid":"task-title-chip",children:["任务名称:",se]}):null,V!=="import-prd"&&!Be?s.jsxs("p",{className:"workflow-hint","data-testid":"workflow-kind-chip",children:["当前流程:",Me.label," · ",s.jsx("code",{children:oe})]}):null,Be||V==="setup"?s.jsxs("div",{className:"empty-state","data-testid":"setup-gate",children:[s.jsx("p",{className:"empty-title",children:"需要先完成设置"}),s.jsx("p",{className:"muted",children:"请先在「模型与认证」完成 Pi 就绪,再导入需求与访谈。"}),s.jsxs("div",{className:"cta-row",children:[s.jsx("button",{type:"button",className:"btn btn-primary",disabled:re,onClick:()=>{o("models"),ye("refreshReadiness",{}).then(()=>ll())},children:"刷新就绪状态"}),s.jsx("button",{type:"button",className:"btn btn-primary",disabled:re,onClick:()=>{ye("doctor",{})},children:"运行诊断"}),s.jsx("pre",{className:"cmd",children:np})]})]}):s.jsxs("div",{className:"wizard-body","data-testid":"wizard-body",children:[V==="import-prd"&&s.jsxs("div",{"data-testid":"panel-import-prd",children:[s.jsx("h3",{children:"导入需求"}),s.jsx("p",{className:"muted",children:"粘贴 PRD / 需求 Markdown。系统会根据正文自动生成任务名称与 taskId,并创建任务、写入不可变引用。"}),s.jsxs("label",{className:"field",children:[s.jsx("span",{className:"muted",children:"流程类型"}),s.jsx("select",{"data-testid":"workflow-kind-select",value:oe,disabled:re,onChange:h=>_e(h.target.value),children:So.map(h=>s.jsx("option",{value:h.kind,children:h.label},h.kind))})]}),s.jsxs("p",{className:"workflow-hint","data-testid":"workflow-kind-hint",children:[Me.hint," · taskKind=",s.jsx("code",{children:oe})]}),s.jsxs("label",{className:"field",children:[s.jsx("span",{className:"muted",children:"PRD Markdown"}),s.jsx("textarea",{rows:10,value:St,disabled:re,onChange:h=>ot(h.target.value)})]}),s.jsx("div",{className:"cta-row",children:s.jsx("button",{type:"button",className:"btn btn-primary",disabled:re||!St.trim(),onClick:()=>{(async()=>{const h=await ye("bootstrapFromPrd",{content:St,taskKind:oe});if(!h||h.ok===!1)return;const U=h.result??{};U.taskId&&le(U.taskId),U.title&&et(U.title),He(`已创建任务「${U.title??""}」(${U.taskId??""}),来源:${U.identitySource??"prd"}`),ee("interview")})()},children:"导入并创建任务"})})]}),V==="interview"&&s.jsxs("div",{"data-testid":"panel-interview",children:[s.jsx("h3",{children:"需求访谈(grill-me)"}),s.jsx("p",{className:"muted",children:"一次一问;也可跳过:系统会按推荐补齐草稿并签发评估,随后进入校验。 访谈中不可应用契约 / 运行 DAG / 对账。"}),ft?s.jsx("pre",{className:"cmd","data-testid":"draft-summary",children:JSON.stringify(ft,null,2)}):null,s.jsxs("div",{className:"cta-row",style:{marginBottom:"0.75rem"},children:[!$e||!Ne?s.jsx("button",{type:"button",className:"btn btn-primary",disabled:re||!L.trim(),onClick:()=>{ye("interviewStart",{taskId:L,title:se,taskKind:oe})},children:"开始 / 继续访谈"}):null,s.jsx("button",{type:"button",className:"btn btn-ghost","data-testid":"interview-skip",disabled:re||!L.trim(),onClick:()=>{ye("interviewSkip",{taskId:L,title:se,taskKind:oe})},children:"跳过访谈"})]}),$e&&Ne?s.jsxs("div",{className:"interview-card",children:[s.jsxs("p",{className:"interview-q",children:[s.jsx("strong",{children:Ne.id})," · 风险=",Tm[Ne.risk??""]??Ne.risk??"—"]}),s.jsx("p",{children:Ne.text}),Ne.recommendation?s.jsxs("p",{className:"muted",children:["推荐:",Ne.recommendation]}):null,s.jsxs("label",{className:"field",children:[s.jsx("span",{className:"muted",children:"你的回答(覆盖推荐)"}),s.jsx("textarea",{rows:3,value:rt,disabled:re,onChange:h=>dt(h.target.value)})]}),s.jsxs("div",{className:"cta-row",children:[s.jsx("button",{type:"button",className:"btn btn-primary",disabled:re,onClick:()=>{ye("interviewTurn",{sessionId:$e,questionId:Ne.id,response:"accept-recommendation"}).then(()=>dt(""))},children:"接受推荐"}),s.jsx("button",{type:"button",className:"btn btn-primary",disabled:re||!rt.trim(),onClick:()=>{ye("interviewTurn",{sessionId:$e,questionId:Ne.id,response:"override",text:rt}).then(()=>dt(""))},children:"提交自定义回答"}),s.jsx("button",{type:"button",className:"btn btn-secondary",disabled:re||Ne.risk==="high",onClick:()=>{ye("interviewTurn",{sessionId:$e,questionId:Ne.id,response:"defer",text:rt||Ne.recommendation}).then(()=>dt(""))},children:"暂缓(非高风险)"})]})]}):null,nt?s.jsxs("p",{className:"muted",children:["评估 ID: ",s.jsx("code",{children:nt})]}):null]}),V==="contract"&&s.jsxs("div",{"data-testid":"panel-contract",children:[s.jsx("h3",{children:"契约落地"}),s.jsx("p",{className:"muted",children:"进入本步后自动跑确定性校验与差异(非 AI 代判)。写入仓库仍需你人工确认一次;应用成功后会自动跑 Spine 审计。"}),s.jsxs("p",{className:"muted",children:["评估 ID: ",s.jsx("code",{children:nt??"—"})]}),s.jsxs("div",{className:"contract-checks",children:[s.jsxs("p",{children:[s.jsx("strong",{children:"校验"}),":"," ",D===null?re?"进行中…":"等待开始":D?"通过":"未通过"]}),ne?s.jsx("pre",{className:"cmd","data-testid":"contract-validate-summary",children:ne}):null,s.jsxs("p",{children:[s.jsx("strong",{children:"差异"}),Ee?"":":尚未拉取"]}),Ee?s.jsx("pre",{className:"cmd","data-testid":"contract-diff-summary",children:Ee}):null,E?s.jsxs("p",{children:[s.jsx("strong",{children:"Spine"}),":"," ",I===null?"待检查":I?"通过":"未通过"]}):null]}),s.jsxs("div",{className:"cta-row",children:[s.jsx("button",{type:"button",className:"btn btn-secondary",disabled:re||!L.trim(),onClick:()=>{an(!0)},children:"重新校验"}),s.jsx("button",{type:"button",className:"btn btn-primary","data-testid":"contract-apply",disabled:re||Vl||!nt||D!==!0||E,onClick:()=>{Xt()},children:"确认并应用契约"}),E&&I===!1?s.jsx("button",{type:"button",className:"btn btn-primary",disabled:re,onClick:()=>{Zt()},children:"重试 Spine"}):null]})]}),V==="dag-confirm"&&s.jsxs("div",{"data-testid":"panel-dag-confirm",children:[s.jsx("h3",{children:"DAG 确认(§5.5)"}),s.jsxs("ul",{className:"checklist",children:[s.jsx("li",{children:"源绑定(source)"}),s.jsx("li",{children:"Writer 写集范围(writer-scope)"}),s.jsx("li",{children:"验证命令(verification)"}),s.jsx("li",{children:"人工门禁(human-gates)"})]}),bl?s.jsx("pre",{className:"cmd",children:JSON.stringify(bl,null,2).slice(0,4e3)}):null,s.jsxs("div",{className:"cta-row",children:[s.jsx("button",{type:"button",className:"btn btn-primary",disabled:re,onClick:()=>{ye("prepareDagConfirmation",{taskId:L,dagHandle:`${L}.dag.json`,profile:"auto"})},children:"生成 DAG 并准备确认"}),s.jsx("button",{type:"button",className:"btn btn-primary",disabled:re||!Ae,onClick:()=>{pn()},children:"开始运行"})]}),Ae?s.jsxs("p",{className:"muted",children:["确认 ID: ",s.jsx("code",{children:Ae})]}):null]}),V==="run"&&s.jsxs("div",{"data-testid":"panel-run",children:[s.jsx("h3",{children:"运行详情"}),s.jsxs("div",{className:"meta-row",children:[s.jsxs("div",{children:["操作 ID: ",s.jsx("code",{children:Sl??"—"})]}),s.jsxs("div",{children:["确认 ID: ",s.jsx("code",{children:Ae??"—"})]})]}),s.jsxs("div",{className:"cta-row",children:[s.jsx("button",{type:"button",className:"btn btn-primary",disabled:re||!Ae,onClick:()=>{ye("runDag",{confirmationId:Ae},{clientRequestId:su("run")})},children:"重新运行"}),s.jsx("button",{type:"button",className:"btn btn-secondary",onClick:()=>{mn(!1),Kt.current?.abort(),He("已停止跟随日志(未取消子进程)")},children:"停止跟随日志"}),s.jsx("button",{type:"button",className:"btn btn-secondary",disabled:!K.trim(),onClick:()=>wt(!0),children:"打开检视"}),s.jsx("button",{type:"button",className:"btn btn-ghost",disabled:Ra||!K.trim()&&!L.trim(),title:"在本页侧栏预览,可关闭返回",onClick:()=>{sn()},children:"侧栏预览"})]}),s.jsx("pre",{className:"cmd","data-testid":"sse-log",children:Je.join(`
|
|
27
|
-
`)||"(尚无事件)"})]})]})]}):null,c==="recovery"?s.jsxs("section",{className:"panel","aria-labelledby":"recovery-title",children:[s.jsx("h2",{id:"recovery-title",children:"恢复"}),s.jsxs("p",{className:"muted",children:["事实分类:",Em[vt]," · 无 Cancel · 无「直接改代码」"]}),s.jsxs("ol",{className:"muted recovery-steps",children:[s.jsx("li",{children:"上方选 DAG 运行 / 节点,用「DAG 运行恢复」动作"}),s.jsx("li",{children:"Worker 队列失败才用下方「Worker Task 重排队」(二者不要混用)"}),s.jsx("li",{children:"带 * 的动作:核对预填原因 → 点下方「确定」"})]}),s.jsxs("p",{className:"muted",children:[L.trim()?`按任务 ${L.trim()} 拉取候选。`:"未填任务 ID 时列出最近 DAG 运行。","Doctor 诊断可选,不是重跑前置。"," ",s.jsx("button",{type:"button",className:"btn btn-secondary",disabled:re||We,"data-testid":"recovery-refresh-candidates",onClick:()=>{$l()},children:We?"刷新中…":"刷新候选"})]}),s.jsxs("label",{className:"field",children:[s.jsx("span",{className:"muted",children:"DAG 运行 ID"}),!rl&&Dt.length>0?s.jsxs("select",{"data-testid":"recovery-run-select",value:K,disabled:re||We,onChange:h=>{nn(!1),tl(!1),Pt(""),kt(h.target.value),Xl||Zl(!1)},children:[Dt.some(h=>h.dagRunId===K)?null:s.jsx("option",{value:K||"",children:K?`${K}(当前)`:"— 请选择 —"}),Dt.map(h=>s.jsx("option",{value:h.dagRunId,children:Py(h)},h.dagRunId))]}):s.jsx("input",{"data-testid":"recovery-run-input",value:K,disabled:re,onChange:h=>{nn(!0),kt(h.target.value.trim())},placeholder:"dag-run-id(子图/完整重跑)"}),s.jsx("button",{type:"button",className:"btn btn-secondary",disabled:re,"data-testid":"recovery-run-manual-toggle",onClick:()=>{if(!rl&&Dt.length>0){nn(!0);return}nn(!1),$l()},children:!rl&&Dt.length>0?"手动输入运行 ID":"刷新并改用下拉"})]}),s.jsxs("label",{className:"field",children:[s.jsxs("span",{className:"muted",children:["起始节点 ID(从节点重跑)",Hn?" · 加载节点…":""]}),!It&&at.length>0?s.jsxs("select",{"data-testid":"recovery-node-select",value:Ze,disabled:re||Hn,onChange:h=>{tl(!1),Pt(h.target.value)},children:[at.some(h=>h.nodeId===Ze)?null:s.jsx("option",{value:Ze||"",children:Ze?`${Ze}(当前)`:"— 请选择 —"}),at.map(h=>s.jsx("option",{value:h.nodeId,children:ep(h)},h.nodeId))]}):s.jsx("input",{"data-testid":"recovery-node-input",value:Ze,disabled:re,onChange:h=>{tl(!0),Pt(h.target.value.trim())},placeholder:"例如 review-verdict-recovery-pi"}),s.jsx("button",{type:"button",className:"btn btn-secondary",disabled:re,"data-testid":"recovery-node-manual-toggle",onClick:()=>{if(!It&&at.length>0){tl(!0);return}tl(!1),bn(K)},children:!It&&at.length>0?"手动输入节点 ID":"刷新并改用下拉"})]}),s.jsxs("label",{className:"field",children:[s.jsx("span",{className:"muted",children:"恢复原因(已按 run/节点失败事实自动预填,可编辑)"}),s.jsx("textarea",{"data-testid":"recovery-reason",value:Qt,disabled:re,rows:4,onChange:h=>{Zl(!0),$t(h.target.value)},placeholder:"将自动预填 operator-recovery / run / from-node / detail"}),s.jsx("button",{type:"button",className:"btn btn-secondary",disabled:re,"data-testid":"recovery-reason-refresh",onClick:()=>{Zl(!1),$t(H(ht?.label))},children:"重新预填原因"})]}),s.jsxs("div",{className:"recovery-lane","data-testid":"recovery-lane-dag",children:[s.jsx("h3",{children:"DAG 运行恢复"}),s.jsx("p",{className:"muted",children:"针对 `.harness/dag-runs` 的 Agent DAG 运行。橙色为当前建议;带 * 需确认原因。"}),s.jsxs("div",{className:"recovery-cta-row","data-testid":"recovery-cta-row-dag",children:[x.dag.map(h=>{const U=h.id===C;return s.jsxs("button",{type:"button",className:U?"btn btn-primary":"btn btn-secondary",disabled:re,title:h.guide,"aria-pressed":ht?.id===h.id?!0:void 0,"data-testid":`recovery-cta-${h.id}`,"data-recommended":U?"true":void 0,onClick:()=>{ke(h)},children:[h.label,h.requiresReason?" *":""]},h.id)}),s.jsx("button",{type:"button",className:"btn btn-secondary",disabled:!K.trim(),"data-testid":"recovery-dag-preview",title:"在本页侧栏预览,可关闭返回",onClick:()=>{if(!K.trim()){Re("侧栏预览需要先选择 DAG 运行 ID");return}wt(!0)},children:"侧栏预览"})]}),At?s.jsxs("div",{className:"recovery-report","data-testid":"recovery-report",children:[s.jsxs("div",{className:"recovery-report-header",children:[s.jsx("h3",{children:"交接报告摘要"}),s.jsx("button",{type:"button",className:"btn btn-ghost","data-testid":"recovery-report-close",onClick:()=>Ut(null),children:"关闭"})]}),s.jsxs("dl",{className:"recovery-report-facts",children:[s.jsxs("div",{children:[s.jsx("dt",{children:"运行"}),s.jsx("dd",{children:s.jsx("code",{children:At.runId})})]}),At.title?s.jsxs("div",{children:[s.jsx("dt",{children:"标题"}),s.jsx("dd",{children:At.title})]}):null,s.jsxs("div",{children:[s.jsx("dt",{children:"状态"}),s.jsx("dd",{children:At.status??"—"})]}),s.jsxs("div",{children:[s.jsx("dt",{children:"失败分类"}),s.jsx("dd",{children:At.category??"—"})]}),s.jsxs("div",{children:[s.jsx("dt",{children:"建议"}),s.jsx("dd",{children:At.recommendation??"暂无结构化建议"})]})]}),s.jsxs("p",{className:"muted",children:["完整 Markdown 可用 CLI:",s.jsxs("code",{children:["loop-agent dag report --run-id ",At.runId," ","--markdown"]})]})]}):null,yt("dag")]}),s.jsxs("div",{className:"recovery-lane","data-testid":"recovery-lane-worker",children:[s.jsx("h3",{children:"Worker Task 重排队"}),s.jsx("p",{className:"muted",children:"针对 agent-worker Task Pool,不是 DAG run。需要 Task ID;Feature ID 可选。"}),s.jsxs("label",{className:"field",children:[s.jsx("span",{className:"muted",children:"Task ID(Worker 重排队必填)"}),s.jsx("input",{"data-testid":"recovery-worker-task-id",value:L,disabled:re,onChange:h=>le(h.target.value.trim()),placeholder:"harness / worker task-id"})]}),s.jsxs("label",{className:"field",children:[s.jsx("span",{className:"muted",children:"Feature ID(可选)"}),s.jsx("input",{"data-testid":"recovery-feature-id",value:Ql,disabled:re,onChange:h=>Un(h.target.value.trim()),placeholder:"feature-id"})]}),s.jsx("div",{className:"recovery-cta-row","data-testid":"recovery-cta-row-worker",children:x.worker.length>0?x.worker.map(h=>s.jsxs("button",{type:"button",className:h.id===C?"btn btn-primary":"btn btn-secondary",disabled:re,title:h.guide,"data-testid":`recovery-cta-${h.id}`,"data-recommended":h.id===C?"true":void 0,onClick:()=>{ke(h)},children:[h.label,h.requiresReason?" *":""]},h.id)):s.jsx("p",{className:"muted","data-testid":"recovery-worker-unavailable",children:"当前事实分类下不提供 Worker 重排队。"})}),yt("worker")]}),s.jsx("div",{className:"recovery-cta-row","data-testid":"recovery-cta-row",hidden:!0,children:f.map(h=>s.jsx("span",{children:h.id},h.id))}),Pl?s.jsxs("p",{className:"muted",children:["[",ap[Ct],"] ",Pl]}):null,Yt?s.jsx("p",{className:"muted",children:s.jsx("a",{className:"external-link",href:Yt,children:Yt})}):null]}):null,c==="models"?s.jsxs("section",{className:"panel","aria-labelledby":"models-title",children:[s.jsx("h2",{id:"models-title",children:"模型与认证"}),s.jsxs("p",{className:"muted",children:["复用 Pi ModelRuntime 凭据平面;密钥不会回传到页面。请用"," ",s.jsx("code",{children:"pi"})," / Pi 认证存储完成配置,然后刷新就绪探测。"]}),s.jsx("button",{type:"button",className:"btn btn-primary",disabled:re,onClick:()=>{ye("refreshReadiness",{}).then(()=>ll())},children:"刷新就绪探测"}),s.jsx("pre",{className:"cmd","data-testid":"readiness-details",children:JSON.stringify(z??{state:S,health:m},null,2)})]}):null,c==="chat"?s.jsxs("section",{className:"panel panel--chat","aria-labelledby":"chat-title",children:[s.jsx("h2",{id:"chat-title",className:"sr-only",children:"对话"}),s.jsx(Dy,{origin:"",readiness:S,surface:"workspace",onNavigateWorkspace:Dl})]}):null,c==="settings"?s.jsxs("section",{className:"panel","aria-labelledby":"settings-title",children:[s.jsx("h2",{id:"settings-title",children:"设置"}),s.jsxs("dl",{className:"kv",children:[s.jsxs("div",{children:[s.jsx("dt",{children:"产品"}),s.jsx("dd",{children:m?.productName??"Loop Operator Console"})]}),s.jsxs("div",{children:[s.jsx("dt",{children:"仓库根目录"}),s.jsx("dd",{children:s.jsx("code",{children:m?.repoRoot??"—"})})]}),s.jsxs("div",{children:[s.jsx("dt",{children:"仓库指纹"}),s.jsx("dd",{children:s.jsx("code",{children:m?.repoFingerprint??"—"})})]}),s.jsxs("div",{children:[s.jsx("dt",{children:"Pi 就绪"}),s.jsxs("dd",{children:[s.jsxs("code",{children:[xo[S]??S,"(",S,")"]}),Be?s.jsx("p",{className:"muted",children:"Pi SDK / 认证 / 模型未就绪。不提供纯表单兜底。请前往「模型与认证」。"}):Vl?s.jsx("p",{className:"muted",children:"Pi 暂时降级:仍可恢复草稿与需求访谈。"}):null]})]}),s.jsxs("div",{children:[s.jsx("dt",{children:"Inspect"}),s.jsxs("dd",{children:[s.jsx("code",{children:"/inspect/"}),"(同一 Console 进程)"]})]})]}),G?s.jsx("p",{className:"error",children:G}):null]}):null,c==="settings"?s.jsxs("section",{className:"panel","aria-labelledby":"layers-title",children:[s.jsx("h2",{id:"layers-title",children:"完成语义分层"}),s.jsx("p",{className:"muted",children:"MVP 不执行收尾提交;不显示「任务已关闭/已交付」。"}),s.jsxs("dl",{className:"kv","data-testid":"completion-layers",children:[s.jsxs("div",{children:[s.jsx("dt",{children:"命令"}),s.jsx("dd",{children:iu(ol.command)})]}),s.jsxs("div",{children:[s.jsx("dt",{children:"DAG 生命周期"}),s.jsx("dd",{children:iu(ol.dag)})]}),s.jsxs("div",{children:[s.jsx("dt",{children:"最终验证"}),s.jsx("dd",{children:iu(ol.verification)})]}),s.jsxs("div",{children:[s.jsx("dt",{children:"晋升"}),s.jsx("dd",{children:iu(ol.promote)})]}),s.jsxs("div",{children:[s.jsx("dt",{children:"任务关闭"}),s.jsx("dd",{children:"不可用(MVP)"})]})]})]}):null]}),en&&K.trim()?s.jsx($v,{dagRunId:K.trim(),nodeId:Ze.trim()||void 0,onClose:()=>wt(!1),onOpenFull:za}):null]})]})})}const km=document.getElementById("root");if(!km)throw new Error("Loop Operator Console: #root missing");Vv.createRoot(km).render(s.jsx(y.StrictMode,{children:s.jsx(up,{})}));
|