ima2-gen 1.1.3 → 1.1.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/bin/commands/edit.js +2 -1
- package/bin/commands/gen.js +2 -1
- package/docs/API.md +1 -0
- package/lib/errorClassify.js +39 -1
- package/lib/generationErrors.js +51 -5
- package/lib/oauthProxy.js +128 -14
- package/lib/openDirectory.js +14 -4
- package/lib/referenceImageCompress.js +75 -0
- package/package.json +2 -1
- package/routes/generate.js +18 -3
- package/routes/nodes.js +12 -4
- package/ui/dist/assets/index-DHeTnSPD.css +1 -0
- package/ui/dist/assets/index-fDTlOt4w.js +23 -0
- package/ui/dist/assets/index-fDTlOt4w.js.map +1 -0
- package/ui/dist/index.html +2 -2
- package/ui/dist/assets/index-CGqx6Kly.js +0 -23
- package/ui/dist/assets/index-CGqx6Kly.js.map +0 -1
- package/ui/dist/assets/index-CwHxiNDv.css +0 -1
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
(function(){const i=document.createElement("link").relList;if(i&&i.supports&&i.supports("modulepreload"))return;for(const r of document.querySelectorAll('link[rel="modulepreload"]'))o(r);new MutationObserver(r=>{for(const u of r)if(u.type==="childList")for(const d of u.addedNodes)d.tagName==="LINK"&&d.rel==="modulepreload"&&o(d)}).observe(document,{childList:!0,subtree:!0});function l(r){const u={};return r.integrity&&(u.integrity=r.integrity),r.referrerPolicy&&(u.referrerPolicy=r.referrerPolicy),r.crossOrigin==="use-credentials"?u.credentials="include":r.crossOrigin==="anonymous"?u.credentials="omit":u.credentials="same-origin",u}function o(r){if(r.ep)return;r.ep=!0;const u=l(r);fetch(r.href,u)}})();function y0(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var Nd={exports:{}},uo={};var xp;function US(){if(xp)return uo;xp=1;var t=Symbol.for("react.transitional.element"),i=Symbol.for("react.fragment");function l(o,r,u){var d=null;if(u!==void 0&&(d=""+u),r.key!==void 0&&(d=""+r.key),"key"in r){u={};for(var m in r)m!=="key"&&(u[m]=r[m])}else u=r;return r=u.ref,{$$typeof:t,type:o,key:d,ref:r!==void 0?r:null,props:u}}return uo.Fragment=i,uo.jsx=l,uo.jsxs=l,uo}var bp;function GS(){return bp||(bp=1,Nd.exports=US()),Nd.exports}var h=GS(),_d={exports:{}},Ne={};var Sp;function qS(){if(Sp)return Ne;Sp=1;var t=Symbol.for("react.transitional.element"),i=Symbol.for("react.portal"),l=Symbol.for("react.fragment"),o=Symbol.for("react.strict_mode"),r=Symbol.for("react.profiler"),u=Symbol.for("react.consumer"),d=Symbol.for("react.context"),m=Symbol.for("react.forward_ref"),y=Symbol.for("react.suspense"),g=Symbol.for("react.memo"),p=Symbol.for("react.lazy"),v=Symbol.for("react.activity"),x=Symbol.iterator;function S(T){return T===null||typeof T!="object"?null:(T=x&&T[x]||T["@@iterator"],typeof T=="function"?T:null)}var w={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},A=Object.assign,C={};function j(T,k,ne){this.props=T,this.context=k,this.refs=C,this.updater=ne||w}j.prototype.isReactComponent={},j.prototype.setState=function(T,k){if(typeof T!="object"&&typeof T!="function"&&T!=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,T,k,"setState")},j.prototype.forceUpdate=function(T){this.updater.enqueueForceUpdate(this,T,"forceUpdate")};function R(){}R.prototype=j.prototype;function E(T,k,ne){this.props=T,this.context=k,this.refs=C,this.updater=ne||w}var _=E.prototype=new R;_.constructor=E,A(_,j.prototype),_.isPureReactComponent=!0;var U=Array.isArray;function M(){}var I={H:null,A:null,T:null,S:null},L=Object.prototype.hasOwnProperty;function $(T,k,ne){var ae=ne.ref;return{$$typeof:t,type:T,key:k,ref:ae!==void 0?ae:null,props:ne}}function ce(T,k){return $(T.type,k,T.props)}function K(T){return typeof T=="object"&&T!==null&&T.$$typeof===t}function te(T){var k={"=":"=0",":":"=2"};return"$"+T.replace(/[=:]/g,function(ne){return k[ne]})}var ue=/\/+/g;function D(T,k){return typeof T=="object"&&T!==null&&T.key!=null?te(""+T.key):k.toString(36)}function Z(T){switch(T.status){case"fulfilled":return T.value;case"rejected":throw T.reason;default:switch(typeof T.status=="string"?T.then(M,M):(T.status="pending",T.then(function(k){T.status==="pending"&&(T.status="fulfilled",T.value=k)},function(k){T.status==="pending"&&(T.status="rejected",T.reason=k)})),T.status){case"fulfilled":return T.value;case"rejected":throw T.reason}}throw T}function z(T,k,ne,ae,V){var se=typeof T;(se==="undefined"||se==="boolean")&&(T=null);var de=!1;if(T===null)de=!0;else switch(se){case"bigint":case"string":case"number":de=!0;break;case"object":switch(T.$$typeof){case t:case i:de=!0;break;case p:return de=T._init,z(de(T._payload),k,ne,ae,V)}}if(de)return V=V(T),de=ae===""?"."+D(T,0):ae,U(V)?(ne="",de!=null&&(ne=de.replace(ue,"$&/")+"/"),z(V,k,ne,"",function(be){return be})):V!=null&&(K(V)&&(V=ce(V,ne+(V.key==null||T&&T.key===V.key?"":(""+V.key).replace(ue,"$&/")+"/")+de)),k.push(V)),1;de=0;var le=ae===""?".":ae+":";if(U(T))for(var fe=0;fe<T.length;fe++)ae=T[fe],se=le+D(ae,fe),de+=z(ae,k,ne,se,V);else if(fe=S(T),typeof fe=="function")for(T=fe.call(T),fe=0;!(ae=T.next()).done;)ae=ae.value,se=le+D(ae,fe++),de+=z(ae,k,ne,se,V);else if(se==="object"){if(typeof T.then=="function")return z(Z(T),k,ne,ae,V);throw k=String(T),Error("Objects are not valid as a React child (found: "+(k==="[object Object]"?"object with keys {"+Object.keys(T).join(", ")+"}":k)+"). If you meant to render a collection of children, use an array instead.")}return de}function H(T,k,ne){if(T==null)return T;var ae=[],V=0;return z(T,ae,"","",function(se){return k.call(ne,se,V++)}),ae}function G(T){if(T._status===-1){var k=T._result;k=k(),k.then(function(ne){(T._status===0||T._status===-1)&&(T._status=1,T._result=ne)},function(ne){(T._status===0||T._status===-1)&&(T._status=2,T._result=ne)}),T._status===-1&&(T._status=0,T._result=k)}if(T._status===1)return T._result.default;throw T._result}var B=typeof reportError=="function"?reportError:function(T){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var k=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof T=="object"&&T!==null&&typeof T.message=="string"?String(T.message):String(T),error:T});if(!window.dispatchEvent(k))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",T);return}console.error(T)},J={map:H,forEach:function(T,k,ne){H(T,function(){k.apply(this,arguments)},ne)},count:function(T){var k=0;return H(T,function(){k++}),k},toArray:function(T){return H(T,function(k){return k})||[]},only:function(T){if(!K(T))throw Error("React.Children.only expected to receive a single React element child.");return T}};return Ne.Activity=v,Ne.Children=J,Ne.Component=j,Ne.Fragment=l,Ne.Profiler=r,Ne.PureComponent=E,Ne.StrictMode=o,Ne.Suspense=y,Ne.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=I,Ne.__COMPILER_RUNTIME={__proto__:null,c:function(T){return I.H.useMemoCache(T)}},Ne.cache=function(T){return function(){return T.apply(null,arguments)}},Ne.cacheSignal=function(){return null},Ne.cloneElement=function(T,k,ne){if(T==null)throw Error("The argument must be a React element, but you passed "+T+".");var ae=A({},T.props),V=T.key;if(k!=null)for(se in k.key!==void 0&&(V=""+k.key),k)!L.call(k,se)||se==="key"||se==="__self"||se==="__source"||se==="ref"&&k.ref===void 0||(ae[se]=k[se]);var se=arguments.length-2;if(se===1)ae.children=ne;else if(1<se){for(var de=Array(se),le=0;le<se;le++)de[le]=arguments[le+2];ae.children=de}return $(T.type,V,ae)},Ne.createContext=function(T){return T={$$typeof:d,_currentValue:T,_currentValue2:T,_threadCount:0,Provider:null,Consumer:null},T.Provider=T,T.Consumer={$$typeof:u,_context:T},T},Ne.createElement=function(T,k,ne){var ae,V={},se=null;if(k!=null)for(ae in k.key!==void 0&&(se=""+k.key),k)L.call(k,ae)&&ae!=="key"&&ae!=="__self"&&ae!=="__source"&&(V[ae]=k[ae]);var de=arguments.length-2;if(de===1)V.children=ne;else if(1<de){for(var le=Array(de),fe=0;fe<de;fe++)le[fe]=arguments[fe+2];V.children=le}if(T&&T.defaultProps)for(ae in de=T.defaultProps,de)V[ae]===void 0&&(V[ae]=de[ae]);return $(T,se,V)},Ne.createRef=function(){return{current:null}},Ne.forwardRef=function(T){return{$$typeof:m,render:T}},Ne.isValidElement=K,Ne.lazy=function(T){return{$$typeof:p,_payload:{_status:-1,_result:T},_init:G}},Ne.memo=function(T,k){return{$$typeof:g,type:T,compare:k===void 0?null:k}},Ne.startTransition=function(T){var k=I.T,ne={};I.T=ne;try{var ae=T(),V=I.S;V!==null&&V(ne,ae),typeof ae=="object"&&ae!==null&&typeof ae.then=="function"&&ae.then(M,B)}catch(se){B(se)}finally{k!==null&&ne.types!==null&&(k.types=ne.types),I.T=k}},Ne.unstable_useCacheRefresh=function(){return I.H.useCacheRefresh()},Ne.use=function(T){return I.H.use(T)},Ne.useActionState=function(T,k,ne){return I.H.useActionState(T,k,ne)},Ne.useCallback=function(T,k){return I.H.useCallback(T,k)},Ne.useContext=function(T){return I.H.useContext(T)},Ne.useDebugValue=function(){},Ne.useDeferredValue=function(T,k){return I.H.useDeferredValue(T,k)},Ne.useEffect=function(T,k){return I.H.useEffect(T,k)},Ne.useEffectEvent=function(T){return I.H.useEffectEvent(T)},Ne.useId=function(){return I.H.useId()},Ne.useImperativeHandle=function(T,k,ne){return I.H.useImperativeHandle(T,k,ne)},Ne.useInsertionEffect=function(T,k){return I.H.useInsertionEffect(T,k)},Ne.useLayoutEffect=function(T,k){return I.H.useLayoutEffect(T,k)},Ne.useMemo=function(T,k){return I.H.useMemo(T,k)},Ne.useOptimistic=function(T,k){return I.H.useOptimistic(T,k)},Ne.useReducer=function(T,k,ne){return I.H.useReducer(T,k,ne)},Ne.useRef=function(T){return I.H.useRef(T)},Ne.useState=function(T){return I.H.useState(T)},Ne.useSyncExternalStore=function(T,k,ne){return I.H.useSyncExternalStore(T,k,ne)},Ne.useTransition=function(){return I.H.useTransition()},Ne.version="19.2.5",Ne}var wp;function Ho(){return wp||(wp=1,_d.exports=qS()),_d.exports}var Y=Ho();const yo=y0(Y);var Ed={exports:{}},fo={},Cd={exports:{}},Td={};var Np;function YS(){return Np||(Np=1,(function(t){function i(z,H){var G=z.length;z.push(H);e:for(;0<G;){var B=G-1>>>1,J=z[B];if(0<r(J,H))z[B]=H,z[G]=J,G=B;else break e}}function l(z){return z.length===0?null:z[0]}function o(z){if(z.length===0)return null;var H=z[0],G=z.pop();if(G!==H){z[0]=G;e:for(var B=0,J=z.length,T=J>>>1;B<T;){var k=2*(B+1)-1,ne=z[k],ae=k+1,V=z[ae];if(0>r(ne,G))ae<J&&0>r(V,ne)?(z[B]=V,z[ae]=G,B=ae):(z[B]=ne,z[k]=G,B=k);else if(ae<J&&0>r(V,G))z[B]=V,z[ae]=G,B=ae;else break e}}return H}function r(z,H){var G=z.sortIndex-H.sortIndex;return G!==0?G:z.id-H.id}if(t.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var u=performance;t.unstable_now=function(){return u.now()}}else{var d=Date,m=d.now();t.unstable_now=function(){return d.now()-m}}var y=[],g=[],p=1,v=null,x=3,S=!1,w=!1,A=!1,C=!1,j=typeof setTimeout=="function"?setTimeout:null,R=typeof clearTimeout=="function"?clearTimeout:null,E=typeof setImmediate<"u"?setImmediate:null;function _(z){for(var H=l(g);H!==null;){if(H.callback===null)o(g);else if(H.startTime<=z)o(g),H.sortIndex=H.expirationTime,i(y,H);else break;H=l(g)}}function U(z){if(A=!1,_(z),!w)if(l(y)!==null)w=!0,M||(M=!0,te());else{var H=l(g);H!==null&&Z(U,H.startTime-z)}}var M=!1,I=-1,L=5,$=-1;function ce(){return C?!0:!(t.unstable_now()-$<L)}function K(){if(C=!1,M){var z=t.unstable_now();$=z;var H=!0;try{e:{w=!1,A&&(A=!1,R(I),I=-1),S=!0;var G=x;try{t:{for(_(z),v=l(y);v!==null&&!(v.expirationTime>z&&ce());){var B=v.callback;if(typeof B=="function"){v.callback=null,x=v.priorityLevel;var J=B(v.expirationTime<=z);if(z=t.unstable_now(),typeof J=="function"){v.callback=J,_(z),H=!0;break t}v===l(y)&&o(y),_(z)}else o(y);v=l(y)}if(v!==null)H=!0;else{var T=l(g);T!==null&&Z(U,T.startTime-z),H=!1}}break e}finally{v=null,x=G,S=!1}H=void 0}}finally{H?te():M=!1}}}var te;if(typeof E=="function")te=function(){E(K)};else if(typeof MessageChannel<"u"){var ue=new MessageChannel,D=ue.port2;ue.port1.onmessage=K,te=function(){D.postMessage(null)}}else te=function(){j(K,0)};function Z(z,H){I=j(function(){z(t.unstable_now())},H)}t.unstable_IdlePriority=5,t.unstable_ImmediatePriority=1,t.unstable_LowPriority=4,t.unstable_NormalPriority=3,t.unstable_Profiling=null,t.unstable_UserBlockingPriority=2,t.unstable_cancelCallback=function(z){z.callback=null},t.unstable_forceFrameRate=function(z){0>z||125<z?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):L=0<z?Math.floor(1e3/z):5},t.unstable_getCurrentPriorityLevel=function(){return x},t.unstable_next=function(z){switch(x){case 1:case 2:case 3:var H=3;break;default:H=x}var G=x;x=H;try{return z()}finally{x=G}},t.unstable_requestPaint=function(){C=!0},t.unstable_runWithPriority=function(z,H){switch(z){case 1:case 2:case 3:case 4:case 5:break;default:z=3}var G=x;x=z;try{return H()}finally{x=G}},t.unstable_scheduleCallback=function(z,H,G){var B=t.unstable_now();switch(typeof G=="object"&&G!==null?(G=G.delay,G=typeof G=="number"&&0<G?B+G:B):G=B,z){case 1:var J=-1;break;case 2:J=250;break;case 5:J=1073741823;break;case 4:J=1e4;break;default:J=5e3}return J=G+J,z={id:p++,callback:H,priorityLevel:z,startTime:G,expirationTime:J,sortIndex:-1},G>B?(z.sortIndex=G,i(g,z),l(y)===null&&z===l(g)&&(A?(R(I),I=-1):A=!0,Z(U,G-B))):(z.sortIndex=J,i(y,z),w||S||(w=!0,M||(M=!0,te()))),z},t.unstable_shouldYield=ce,t.unstable_wrapCallback=function(z){var H=x;return function(){var G=x;x=H;try{return z.apply(this,arguments)}finally{x=G}}}})(Td)),Td}var _p;function VS(){return _p||(_p=1,Cd.exports=YS()),Cd.exports}var Ad={exports:{}},vt={};var Ep;function XS(){if(Ep)return vt;Ep=1;var t=Ho();function i(y){var g="https://react.dev/errors/"+y;if(1<arguments.length){g+="?args[]="+encodeURIComponent(arguments[1]);for(var p=2;p<arguments.length;p++)g+="&args[]="+encodeURIComponent(arguments[p])}return"Minified React error #"+y+"; visit "+g+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function l(){}var o={d:{f:l,r:function(){throw Error(i(522))},D:l,C:l,L:l,m:l,X:l,S:l,M:l},p:0,findDOMNode:null},r=Symbol.for("react.portal");function u(y,g,p){var v=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:r,key:v==null?null:""+v,children:y,containerInfo:g,implementation:p}}var d=t.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function m(y,g){if(y==="font")return"";if(typeof g=="string")return g==="use-credentials"?g:""}return vt.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=o,vt.createPortal=function(y,g){var p=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!g||g.nodeType!==1&&g.nodeType!==9&&g.nodeType!==11)throw Error(i(299));return u(y,g,null,p)},vt.flushSync=function(y){var g=d.T,p=o.p;try{if(d.T=null,o.p=2,y)return y()}finally{d.T=g,o.p=p,o.d.f()}},vt.preconnect=function(y,g){typeof y=="string"&&(g?(g=g.crossOrigin,g=typeof g=="string"?g==="use-credentials"?g:"":void 0):g=null,o.d.C(y,g))},vt.prefetchDNS=function(y){typeof y=="string"&&o.d.D(y)},vt.preinit=function(y,g){if(typeof y=="string"&&g&&typeof g.as=="string"){var p=g.as,v=m(p,g.crossOrigin),x=typeof g.integrity=="string"?g.integrity:void 0,S=typeof g.fetchPriority=="string"?g.fetchPriority:void 0;p==="style"?o.d.S(y,typeof g.precedence=="string"?g.precedence:void 0,{crossOrigin:v,integrity:x,fetchPriority:S}):p==="script"&&o.d.X(y,{crossOrigin:v,integrity:x,fetchPriority:S,nonce:typeof g.nonce=="string"?g.nonce:void 0})}},vt.preinitModule=function(y,g){if(typeof y=="string")if(typeof g=="object"&&g!==null){if(g.as==null||g.as==="script"){var p=m(g.as,g.crossOrigin);o.d.M(y,{crossOrigin:p,integrity:typeof g.integrity=="string"?g.integrity:void 0,nonce:typeof g.nonce=="string"?g.nonce:void 0})}}else g==null&&o.d.M(y)},vt.preload=function(y,g){if(typeof y=="string"&&typeof g=="object"&&g!==null&&typeof g.as=="string"){var p=g.as,v=m(p,g.crossOrigin);o.d.L(y,p,{crossOrigin:v,integrity:typeof g.integrity=="string"?g.integrity:void 0,nonce:typeof g.nonce=="string"?g.nonce:void 0,type:typeof g.type=="string"?g.type:void 0,fetchPriority:typeof g.fetchPriority=="string"?g.fetchPriority:void 0,referrerPolicy:typeof g.referrerPolicy=="string"?g.referrerPolicy:void 0,imageSrcSet:typeof g.imageSrcSet=="string"?g.imageSrcSet:void 0,imageSizes:typeof g.imageSizes=="string"?g.imageSizes:void 0,media:typeof g.media=="string"?g.media:void 0})}},vt.preloadModule=function(y,g){if(typeof y=="string")if(g){var p=m(g.as,g.crossOrigin);o.d.m(y,{as:typeof g.as=="string"&&g.as!=="script"?g.as:void 0,crossOrigin:p,integrity:typeof g.integrity=="string"?g.integrity:void 0})}else o.d.m(y)},vt.requestFormReset=function(y){o.d.r(y)},vt.unstable_batchedUpdates=function(y,g){return y(g)},vt.useFormState=function(y,g,p){return d.H.useFormState(y,g,p)},vt.useFormStatus=function(){return d.H.useHostTransitionStatus()},vt.version="19.2.5",vt}var Cp;function v0(){if(Cp)return Ad.exports;Cp=1;function t(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(t)}catch(i){console.error(i)}}return t(),Ad.exports=XS(),Ad.exports}var Tp;function $S(){if(Tp)return fo;Tp=1;var t=VS(),i=Ho(),l=v0();function o(e){var n="https://react.dev/errors/"+e;if(1<arguments.length){n+="?args[]="+encodeURIComponent(arguments[1]);for(var a=2;a<arguments.length;a++)n+="&args[]="+encodeURIComponent(arguments[a])}return"Minified React error #"+e+"; visit "+n+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function r(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function u(e){var n=e,a=e;if(e.alternate)for(;n.return;)n=n.return;else{e=n;do n=e,(n.flags&4098)!==0&&(a=n.return),e=n.return;while(e)}return n.tag===3?a:null}function d(e){if(e.tag===13){var n=e.memoizedState;if(n===null&&(e=e.alternate,e!==null&&(n=e.memoizedState)),n!==null)return n.dehydrated}return null}function m(e){if(e.tag===31){var n=e.memoizedState;if(n===null&&(e=e.alternate,e!==null&&(n=e.memoizedState)),n!==null)return n.dehydrated}return null}function y(e){if(u(e)!==e)throw Error(o(188))}function g(e){var n=e.alternate;if(!n){if(n=u(e),n===null)throw Error(o(188));return n!==e?null:e}for(var a=e,s=n;;){var c=a.return;if(c===null)break;var f=c.alternate;if(f===null){if(s=c.return,s!==null){a=s;continue}break}if(c.child===f.child){for(f=c.child;f;){if(f===a)return y(c),e;if(f===s)return y(c),n;f=f.sibling}throw Error(o(188))}if(a.return!==s.return)a=c,s=f;else{for(var b=!1,N=c.child;N;){if(N===a){b=!0,a=c,s=f;break}if(N===s){b=!0,s=c,a=f;break}N=N.sibling}if(!b){for(N=f.child;N;){if(N===a){b=!0,a=f,s=c;break}if(N===s){b=!0,s=f,a=c;break}N=N.sibling}if(!b)throw Error(o(189))}}if(a.alternate!==s)throw Error(o(190))}if(a.tag!==3)throw Error(o(188));return a.stateNode.current===a?e:n}function p(e){var n=e.tag;if(n===5||n===26||n===27||n===6)return e;for(e=e.child;e!==null;){if(n=p(e),n!==null)return n;e=e.sibling}return null}var v=Object.assign,x=Symbol.for("react.element"),S=Symbol.for("react.transitional.element"),w=Symbol.for("react.portal"),A=Symbol.for("react.fragment"),C=Symbol.for("react.strict_mode"),j=Symbol.for("react.profiler"),R=Symbol.for("react.consumer"),E=Symbol.for("react.context"),_=Symbol.for("react.forward_ref"),U=Symbol.for("react.suspense"),M=Symbol.for("react.suspense_list"),I=Symbol.for("react.memo"),L=Symbol.for("react.lazy"),$=Symbol.for("react.activity"),ce=Symbol.for("react.memo_cache_sentinel"),K=Symbol.iterator;function te(e){return e===null||typeof e!="object"?null:(e=K&&e[K]||e["@@iterator"],typeof e=="function"?e:null)}var ue=Symbol.for("react.client.reference");function D(e){if(e==null)return null;if(typeof e=="function")return e.$$typeof===ue?null:e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case A:return"Fragment";case j:return"Profiler";case C:return"StrictMode";case U:return"Suspense";case M:return"SuspenseList";case $:return"Activity"}if(typeof e=="object")switch(e.$$typeof){case w:return"Portal";case E:return e.displayName||"Context";case R:return(e._context.displayName||"Context")+".Consumer";case _:var n=e.render;return e=e.displayName,e||(e=n.displayName||n.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case I:return n=e.displayName||null,n!==null?n:D(e.type)||"Memo";case L:n=e._payload,e=e._init;try{return D(e(n))}catch{}}return null}var Z=Array.isArray,z=i.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,H=l.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,G={pending:!1,data:null,method:null,action:null},B=[],J=-1;function T(e){return{current:e}}function k(e){0>J||(e.current=B[J],B[J]=null,J--)}function ne(e,n){J++,B[J]=e.current,e.current=n}var ae=T(null),V=T(null),se=T(null),de=T(null);function le(e,n){switch(ne(se,n),ne(V,e),ne(ae,null),n.nodeType){case 9:case 11:e=(e=n.documentElement)&&(e=e.namespaceURI)?qg(e):0;break;default:if(e=n.tagName,n=n.namespaceURI)n=qg(n),e=Yg(n,e);else switch(e){case"svg":e=1;break;case"math":e=2;break;default:e=0}}k(ae),ne(ae,e)}function fe(){k(ae),k(V),k(se)}function be(e){e.memoizedState!==null&&ne(de,e);var n=ae.current,a=Yg(n,e.type);n!==a&&(ne(V,e),ne(ae,a))}function _e(e){V.current===e&&(k(ae),k(V)),de.current===e&&(k(de),oo._currentValue=G)}var ye,we;function je(e){if(ye===void 0)try{throw Error()}catch(a){var n=a.stack.trim().match(/\n( *(at )?)/);ye=n&&n[1]||"",we=-1<a.stack.indexOf(`
|
|
2
|
+
at`)?" (<anonymous>)":-1<a.stack.indexOf("@")?"@unknown:0:0":""}return`
|
|
3
|
+
`+ye+e+we}var Ge=!1;function Be(e,n){if(!e||Ge)return"";Ge=!0;var a=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var s={DetermineComponentFrameRoot:function(){try{if(n){var re=function(){throw Error()};if(Object.defineProperty(re.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(re,[])}catch(ee){var P=ee}Reflect.construct(e,[],re)}else{try{re.call()}catch(ee){P=ee}e.call(re.prototype)}}else{try{throw Error()}catch(ee){P=ee}(re=e())&&typeof re.catch=="function"&&re.catch(function(){})}}catch(ee){if(ee&&P&&typeof ee.stack=="string")return[ee.stack,P.stack]}return[null,null]}};s.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var c=Object.getOwnPropertyDescriptor(s.DetermineComponentFrameRoot,"name");c&&c.configurable&&Object.defineProperty(s.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"});var f=s.DetermineComponentFrameRoot(),b=f[0],N=f[1];if(b&&N){var O=b.split(`
|
|
4
|
+
`),Q=N.split(`
|
|
5
|
+
`);for(c=s=0;s<O.length&&!O[s].includes("DetermineComponentFrameRoot");)s++;for(;c<Q.length&&!Q[c].includes("DetermineComponentFrameRoot");)c++;if(s===O.length||c===Q.length)for(s=O.length-1,c=Q.length-1;1<=s&&0<=c&&O[s]!==Q[c];)c--;for(;1<=s&&0<=c;s--,c--)if(O[s]!==Q[c]){if(s!==1||c!==1)do if(s--,c--,0>c||O[s]!==Q[c]){var ie=`
|
|
6
|
+
`+O[s].replace(" at new "," at ");return e.displayName&&ie.includes("<anonymous>")&&(ie=ie.replace("<anonymous>",e.displayName)),ie}while(1<=s&&0<=c);break}}}finally{Ge=!1,Error.prepareStackTrace=a}return(a=e?e.displayName||e.name:"")?je(a):""}function ut(e,n){switch(e.tag){case 26:case 27:case 5:return je(e.type);case 16:return je("Lazy");case 13:return e.child!==n&&n!==null?je("Suspense Fallback"):je("Suspense");case 19:return je("SuspenseList");case 0:case 15:return Be(e.type,!1);case 11:return Be(e.type.render,!1);case 1:return Be(e.type,!0);case 31:return je("Activity");default:return""}}function Ft(e){try{var n="",a=null;do n+=ut(e,a),a=e,e=e.return;while(e);return n}catch(s){return`
|
|
7
|
+
Error generating stack: `+s.message+`
|
|
8
|
+
`+s.stack}}var zt=Object.prototype.hasOwnProperty,Qt=t.unstable_scheduleCallback,vn=t.unstable_cancelCallback,Ta=t.unstable_shouldYield,Aa=t.unstable_requestPaint,ft=t.unstable_now,di=t.unstable_getCurrentPriorityLevel,xn=t.unstable_ImmediatePriority,$n=t.unstable_UserBlockingPriority,Ma=t.unstable_NormalPriority,oc=t.unstable_LowPriority,fi=t.unstable_IdlePriority,sc=t.log,rc=t.unstable_setDisableYieldValue,ja=null,xt=null;function sn(e){if(typeof sc=="function"&&rc(e),xt&&typeof xt.setStrictMode=="function")try{xt.setStrictMode(ja,e)}catch{}}var bt=Math.clz32?Math.clz32:dc,cc=Math.log,uc=Math.LN2;function dc(e){return e>>>=0,e===0?32:31-(cc(e)/uc|0)|0}var hi=256,mi=262144,gi=4194304;function bn(e){var n=e&42;if(n!==0)return n;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 pi(e,n,a){var s=e.pendingLanes;if(s===0)return 0;var c=0,f=e.suspendedLanes,b=e.pingedLanes;e=e.warmLanes;var N=s&134217727;return N!==0?(s=N&~f,s!==0?c=bn(s):(b&=N,b!==0?c=bn(b):a||(a=N&~e,a!==0&&(c=bn(a))))):(N=s&~f,N!==0?c=bn(N):b!==0?c=bn(b):a||(a=s&~e,a!==0&&(c=bn(a)))),c===0?0:n!==0&&n!==c&&(n&f)===0&&(f=c&-c,a=n&-n,f>=a||f===32&&(a&4194048)!==0)?n:c}function za(e,n){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&n)===0}function fc(e,n){switch(e){case 1:case 2:case 4:case 8:case 64:return n+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return n+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Yo(){var e=gi;return gi<<=1,(gi&62914560)===0&&(gi=4194304),e}function yl(e){for(var n=[],a=0;31>a;a++)n.push(e);return n}function Ra(e,n){e.pendingLanes|=n,n!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function hc(e,n,a,s,c,f){var b=e.pendingLanes;e.pendingLanes=a,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=a,e.entangledLanes&=a,e.errorRecoveryDisabledLanes&=a,e.shellSuspendCounter=0;var N=e.entanglements,O=e.expirationTimes,Q=e.hiddenUpdates;for(a=b&~a;0<a;){var ie=31-bt(a),re=1<<ie;N[ie]=0,O[ie]=-1;var P=Q[ie];if(P!==null)for(Q[ie]=null,ie=0;ie<P.length;ie++){var ee=P[ie];ee!==null&&(ee.lane&=-536870913)}a&=~re}s!==0&&Vo(e,s,0),f!==0&&c===0&&e.tag!==0&&(e.suspendedLanes|=f&~(b&~n))}function Vo(e,n,a){e.pendingLanes|=n,e.suspendedLanes&=~n;var s=31-bt(n);e.entangledLanes|=n,e.entanglements[s]=e.entanglements[s]|1073741824|a&261930}function Xo(e,n){var a=e.entangledLanes|=n;for(e=e.entanglements;a;){var s=31-bt(a),c=1<<s;c&n|e[s]&n&&(e[s]|=n),a&=~c}}function $o(e,n){var a=n&-n;return a=(a&42)!==0?1:vl(a),(a&(e.suspendedLanes|n))!==0?0:a}function vl(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 xl(e){return e&=-e,2<e?8<e?(e&134217727)!==0?32:268435456:8:2}function Zo(){var e=H.p;return e!==0?e:(e=window.event,e===void 0?32:fp(e.type))}function Ko(e,n){var a=H.p;try{return H.p=e,n()}finally{H.p=a}}var rn=Math.random().toString(36).slice(2),rt="__reactFiber$"+rn,yt="__reactProps$"+rn,Sn="__reactContainer$"+rn,yi="__reactEvents$"+rn,Fo="__reactListeners$"+rn,mc="__reactHandles$"+rn,Qo="__reactResources$"+rn,Da="__reactMarker$"+rn;function bl(e){delete e[rt],delete e[yt],delete e[yi],delete e[Fo],delete e[mc]}function Zn(e){var n=e[rt];if(n)return n;for(var a=e.parentNode;a;){if(n=a[Sn]||a[rt]){if(a=n.alternate,n.child!==null||a!==null&&a.child!==null)for(e=Qg(e);e!==null;){if(a=e[rt])return a;e=Qg(e)}return n}e=a,a=e.parentNode}return null}function Kn(e){if(e=e[rt]||e[Sn]){var n=e.tag;if(n===5||n===6||n===13||n===31||n===26||n===27||n===3)return e}return null}function Fn(e){var n=e.tag;if(n===5||n===26||n===27||n===6)return e.stateNode;throw Error(o(33))}function Qn(e){var n=e[Qo];return n||(n=e[Qo]={hoistableStyles:new Map,hoistableScripts:new Map}),n}function tt(e){e[Da]=!0}var Po=new Set,Jo={};function wn(e,n){Pn(e,n),Pn(e+"Capture",n)}function Pn(e,n){for(Jo[e]=n,e=0;e<n.length;e++)Po.add(n[e])}var gc=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]*$"),Sl={},Wo={};function pc(e){return zt.call(Wo,e)?!0:zt.call(Sl,e)?!1:gc.test(e)?Wo[e]=!0:(Sl[e]=!0,!1)}function vi(e,n,a){if(pc(n))if(a===null)e.removeAttribute(n);else{switch(typeof a){case"undefined":case"function":case"symbol":e.removeAttribute(n);return;case"boolean":var s=n.toLowerCase().slice(0,5);if(s!=="data-"&&s!=="aria-"){e.removeAttribute(n);return}}e.setAttribute(n,""+a)}}function xi(e,n,a){if(a===null)e.removeAttribute(n);else{switch(typeof a){case"undefined":case"function":case"symbol":case"boolean":e.removeAttribute(n);return}e.setAttribute(n,""+a)}}function Pt(e,n,a,s){if(s===null)e.removeAttribute(a);else{switch(typeof s){case"undefined":case"function":case"symbol":case"boolean":e.removeAttribute(a);return}e.setAttributeNS(n,a,""+s)}}function wt(e){switch(typeof e){case"bigint":case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function es(e){var n=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(n==="checkbox"||n==="radio")}function yc(e,n,a){var s=Object.getOwnPropertyDescriptor(e.constructor.prototype,n);if(!e.hasOwnProperty(n)&&typeof s<"u"&&typeof s.get=="function"&&typeof s.set=="function"){var c=s.get,f=s.set;return Object.defineProperty(e,n,{configurable:!0,get:function(){return c.call(this)},set:function(b){a=""+b,f.call(this,b)}}),Object.defineProperty(e,n,{enumerable:s.enumerable}),{getValue:function(){return a},setValue:function(b){a=""+b},stopTracking:function(){e._valueTracker=null,delete e[n]}}}}function bi(e){if(!e._valueTracker){var n=es(e)?"checked":"value";e._valueTracker=yc(e,n,""+e[n])}}function ts(e){if(!e)return!1;var n=e._valueTracker;if(!n)return!0;var a=n.getValue(),s="";return e&&(s=es(e)?e.checked?"true":"false":e.value),e=s,e!==a?(n.setValue(e),!0):!1}function Oa(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 vc=/[\n"\\]/g;function Nt(e){return e.replace(vc,function(n){return"\\"+n.charCodeAt(0).toString(16)+" "})}function Ha(e,n,a,s,c,f,b,N){e.name="",b!=null&&typeof b!="function"&&typeof b!="symbol"&&typeof b!="boolean"?e.type=b:e.removeAttribute("type"),n!=null?b==="number"?(n===0&&e.value===""||e.value!=n)&&(e.value=""+wt(n)):e.value!==""+wt(n)&&(e.value=""+wt(n)):b!=="submit"&&b!=="reset"||e.removeAttribute("value"),n!=null?wl(e,b,wt(n)):a!=null?wl(e,b,wt(a)):s!=null&&e.removeAttribute("value"),c==null&&f!=null&&(e.defaultChecked=!!f),c!=null&&(e.checked=c&&typeof c!="function"&&typeof c!="symbol"),N!=null&&typeof N!="function"&&typeof N!="symbol"&&typeof N!="boolean"?e.name=""+wt(N):e.removeAttribute("name")}function ns(e,n,a,s,c,f,b,N){if(f!=null&&typeof f!="function"&&typeof f!="symbol"&&typeof f!="boolean"&&(e.type=f),n!=null||a!=null){if(!(f!=="submit"&&f!=="reset"||n!=null)){bi(e);return}a=a!=null?""+wt(a):"",n=n!=null?""+wt(n):a,N||n===e.value||(e.value=n),e.defaultValue=n}s=s??c,s=typeof s!="function"&&typeof s!="symbol"&&!!s,e.checked=N?e.checked:!!s,e.defaultChecked=!!s,b!=null&&typeof b!="function"&&typeof b!="symbol"&&typeof b!="boolean"&&(e.name=b),bi(e)}function wl(e,n,a){n==="number"&&Oa(e.ownerDocument)===e||e.defaultValue===""+a||(e.defaultValue=""+a)}function Nn(e,n,a,s){if(e=e.options,n){n={};for(var c=0;c<a.length;c++)n["$"+a[c]]=!0;for(a=0;a<e.length;a++)c=n.hasOwnProperty("$"+e[a].value),e[a].selected!==c&&(e[a].selected=c),c&&s&&(e[a].defaultSelected=!0)}else{for(a=""+wt(a),n=null,c=0;c<e.length;c++){if(e[c].value===a){e[c].selected=!0,s&&(e[c].defaultSelected=!0);return}n!==null||e[c].disabled||(n=e[c])}n!==null&&(n.selected=!0)}}function Lf(e,n,a){if(n!=null&&(n=""+wt(n),n!==e.value&&(e.value=n),a==null)){e.defaultValue!==n&&(e.defaultValue=n);return}e.defaultValue=a!=null?""+wt(a):""}function Bf(e,n,a,s){if(n==null){if(s!=null){if(a!=null)throw Error(o(92));if(Z(s)){if(1<s.length)throw Error(o(93));s=s[0]}a=s}a==null&&(a=""),n=a}a=wt(n),e.defaultValue=a,s=e.textContent,s===a&&s!==""&&s!==null&&(e.value=s),bi(e)}function Si(e,n){if(n){var a=e.firstChild;if(a&&a===e.lastChild&&a.nodeType===3){a.nodeValue=n;return}}e.textContent=n}var Hx=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 kf(e,n,a){var s=n.indexOf("--")===0;a==null||typeof a=="boolean"||a===""?s?e.setProperty(n,""):n==="float"?e.cssFloat="":e[n]="":s?e.setProperty(n,a):typeof a!="number"||a===0||Hx.has(n)?n==="float"?e.cssFloat=a:e[n]=(""+a).trim():e[n]=a+"px"}function Uf(e,n,a){if(n!=null&&typeof n!="object")throw Error(o(62));if(e=e.style,a!=null){for(var s in a)!a.hasOwnProperty(s)||n!=null&&n.hasOwnProperty(s)||(s.indexOf("--")===0?e.setProperty(s,""):s==="float"?e.cssFloat="":e[s]="");for(var c in n)s=n[c],n.hasOwnProperty(c)&&a[c]!==s&&kf(e,c,s)}else for(var f in n)n.hasOwnProperty(f)&&kf(e,f,n[f])}function xc(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 Ix=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"]]),Lx=/^[\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 as(e){return Lx.test(""+e)?"javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')":e}function _n(){}var bc=null;function Sc(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var wi=null,Ni=null;function Gf(e){var n=Kn(e);if(n&&(e=n.stateNode)){var a=e[yt]||null;e:switch(e=n.stateNode,n.type){case"input":if(Ha(e,a.value,a.defaultValue,a.defaultValue,a.checked,a.defaultChecked,a.type,a.name),n=a.name,a.type==="radio"&&n!=null){for(a=e;a.parentNode;)a=a.parentNode;for(a=a.querySelectorAll('input[name="'+Nt(""+n)+'"][type="radio"]'),n=0;n<a.length;n++){var s=a[n];if(s!==e&&s.form===e.form){var c=s[yt]||null;if(!c)throw Error(o(90));Ha(s,c.value,c.defaultValue,c.defaultValue,c.checked,c.defaultChecked,c.type,c.name)}}for(n=0;n<a.length;n++)s=a[n],s.form===e.form&&ts(s)}break e;case"textarea":Lf(e,a.value,a.defaultValue);break e;case"select":n=a.value,n!=null&&Nn(e,!!a.multiple,n,!1)}}}var wc=!1;function qf(e,n,a){if(wc)return e(n,a);wc=!0;try{var s=e(n);return s}finally{if(wc=!1,(wi!==null||Ni!==null)&&(Vs(),wi&&(n=wi,e=Ni,Ni=wi=null,Gf(n),e)))for(n=0;n<e.length;n++)Gf(e[n])}}function Nl(e,n){var a=e.stateNode;if(a===null)return null;var s=a[yt]||null;if(s===null)return null;a=s[n];e:switch(n){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(s=!s.disabled)||(e=e.type,s=!(e==="button"||e==="input"||e==="select"||e==="textarea")),e=!s;break e;default:e=!1}if(e)return null;if(a&&typeof a!="function")throw Error(o(231,n,typeof a));return a}var En=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Nc=!1;if(En)try{var _l={};Object.defineProperty(_l,"passive",{get:function(){Nc=!0}}),window.addEventListener("test",_l,_l),window.removeEventListener("test",_l,_l)}catch{Nc=!1}var Jn=null,_c=null,is=null;function Yf(){if(is)return is;var e,n=_c,a=n.length,s,c="value"in Jn?Jn.value:Jn.textContent,f=c.length;for(e=0;e<a&&n[e]===c[e];e++);var b=a-e;for(s=1;s<=b&&n[a-s]===c[f-s];s++);return is=c.slice(e,1<s?1-s:void 0)}function ls(e){var n=e.keyCode;return"charCode"in e?(e=e.charCode,e===0&&n===13&&(e=13)):e=n,e===10&&(e=13),32<=e||e===13?e:0}function os(){return!0}function Vf(){return!1}function _t(e){function n(a,s,c,f,b){this._reactName=a,this._targetInst=c,this.type=s,this.nativeEvent=f,this.target=b,this.currentTarget=null;for(var N in e)e.hasOwnProperty(N)&&(a=e[N],this[N]=a?a(f):f[N]);return this.isDefaultPrevented=(f.defaultPrevented!=null?f.defaultPrevented:f.returnValue===!1)?os:Vf,this.isPropagationStopped=Vf,this}return v(n.prototype,{preventDefault:function(){this.defaultPrevented=!0;var a=this.nativeEvent;a&&(a.preventDefault?a.preventDefault():typeof a.returnValue!="unknown"&&(a.returnValue=!1),this.isDefaultPrevented=os)},stopPropagation:function(){var a=this.nativeEvent;a&&(a.stopPropagation?a.stopPropagation():typeof a.cancelBubble!="unknown"&&(a.cancelBubble=!0),this.isPropagationStopped=os)},persist:function(){},isPersistent:os}),n}var Ia={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},ss=_t(Ia),El=v({},Ia,{view:0,detail:0}),Bx=_t(El),Ec,Cc,Cl,rs=v({},El,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Ac,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!==Cl&&(Cl&&e.type==="mousemove"?(Ec=e.screenX-Cl.screenX,Cc=e.screenY-Cl.screenY):Cc=Ec=0,Cl=e),Ec)},movementY:function(e){return"movementY"in e?e.movementY:Cc}}),Xf=_t(rs),kx=v({},rs,{dataTransfer:0}),Ux=_t(kx),Gx=v({},El,{relatedTarget:0}),Tc=_t(Gx),qx=v({},Ia,{animationName:0,elapsedTime:0,pseudoElement:0}),Yx=_t(qx),Vx=v({},Ia,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),Xx=_t(Vx),$x=v({},Ia,{data:0}),$f=_t($x),Zx={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},Kx={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"},Fx={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function Qx(e){var n=this.nativeEvent;return n.getModifierState?n.getModifierState(e):(e=Fx[e])?!!n[e]:!1}function Ac(){return Qx}var Px=v({},El,{key:function(e){if(e.key){var n=Zx[e.key]||e.key;if(n!=="Unidentified")return n}return e.type==="keypress"?(e=ls(e),e===13?"Enter":String.fromCharCode(e)):e.type==="keydown"||e.type==="keyup"?Kx[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Ac,charCode:function(e){return e.type==="keypress"?ls(e):0},keyCode:function(e){return e.type==="keydown"||e.type==="keyup"?e.keyCode:0},which:function(e){return e.type==="keypress"?ls(e):e.type==="keydown"||e.type==="keyup"?e.keyCode:0}}),Jx=_t(Px),Wx=v({},rs,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),Zf=_t(Wx),eb=v({},El,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Ac}),tb=_t(eb),nb=v({},Ia,{propertyName:0,elapsedTime:0,pseudoElement:0}),ab=_t(nb),ib=v({},rs,{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}),lb=_t(ib),ob=v({},Ia,{newState:0,oldState:0}),sb=_t(ob),rb=[9,13,27,32],Mc=En&&"CompositionEvent"in window,Tl=null;En&&"documentMode"in document&&(Tl=document.documentMode);var cb=En&&"TextEvent"in window&&!Tl,Kf=En&&(!Mc||Tl&&8<Tl&&11>=Tl),Ff=" ",Qf=!1;function Pf(e,n){switch(e){case"keyup":return rb.indexOf(n.keyCode)!==-1;case"keydown":return n.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Jf(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var _i=!1;function ub(e,n){switch(e){case"compositionend":return Jf(n);case"keypress":return n.which!==32?null:(Qf=!0,Ff);case"textInput":return e=n.data,e===Ff&&Qf?null:e;default:return null}}function db(e,n){if(_i)return e==="compositionend"||!Mc&&Pf(e,n)?(e=Yf(),is=_c=Jn=null,_i=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(n.ctrlKey||n.altKey||n.metaKey)||n.ctrlKey&&n.altKey){if(n.char&&1<n.char.length)return n.char;if(n.which)return String.fromCharCode(n.which)}return null;case"compositionend":return Kf&&n.locale!=="ko"?null:n.data;default:return null}}var fb={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 Wf(e){var n=e&&e.nodeName&&e.nodeName.toLowerCase();return n==="input"?!!fb[e.type]:n==="textarea"}function eh(e,n,a,s){wi?Ni?Ni.push(s):Ni=[s]:wi=s,n=Ps(n,"onChange"),0<n.length&&(a=new ss("onChange","change",null,a,s),e.push({event:a,listeners:n}))}var Al=null,Ml=null;function hb(e){Ig(e,0)}function cs(e){var n=Fn(e);if(ts(n))return e}function th(e,n){if(e==="change")return n}var nh=!1;if(En){var jc;if(En){var zc="oninput"in document;if(!zc){var ah=document.createElement("div");ah.setAttribute("oninput","return;"),zc=typeof ah.oninput=="function"}jc=zc}else jc=!1;nh=jc&&(!document.documentMode||9<document.documentMode)}function ih(){Al&&(Al.detachEvent("onpropertychange",lh),Ml=Al=null)}function lh(e){if(e.propertyName==="value"&&cs(Ml)){var n=[];eh(n,Ml,e,Sc(e)),qf(hb,n)}}function mb(e,n,a){e==="focusin"?(ih(),Al=n,Ml=a,Al.attachEvent("onpropertychange",lh)):e==="focusout"&&ih()}function gb(e){if(e==="selectionchange"||e==="keyup"||e==="keydown")return cs(Ml)}function pb(e,n){if(e==="click")return cs(n)}function yb(e,n){if(e==="input"||e==="change")return cs(n)}function vb(e,n){return e===n&&(e!==0||1/e===1/n)||e!==e&&n!==n}var Rt=typeof Object.is=="function"?Object.is:vb;function jl(e,n){if(Rt(e,n))return!0;if(typeof e!="object"||e===null||typeof n!="object"||n===null)return!1;var a=Object.keys(e),s=Object.keys(n);if(a.length!==s.length)return!1;for(s=0;s<a.length;s++){var c=a[s];if(!zt.call(n,c)||!Rt(e[c],n[c]))return!1}return!0}function oh(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function sh(e,n){var a=oh(e);e=0;for(var s;a;){if(a.nodeType===3){if(s=e+a.textContent.length,e<=n&&s>=n)return{node:a,offset:n-e};e=s}e:{for(;a;){if(a.nextSibling){a=a.nextSibling;break e}a=a.parentNode}a=void 0}a=oh(a)}}function rh(e,n){return e&&n?e===n?!0:e&&e.nodeType===3?!1:n&&n.nodeType===3?rh(e,n.parentNode):"contains"in e?e.contains(n):e.compareDocumentPosition?!!(e.compareDocumentPosition(n)&16):!1:!1}function ch(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var n=Oa(e.document);n instanceof e.HTMLIFrameElement;){try{var a=typeof n.contentWindow.location.href=="string"}catch{a=!1}if(a)e=n.contentWindow;else break;n=Oa(e.document)}return n}function Rc(e){var n=e&&e.nodeName&&e.nodeName.toLowerCase();return n&&(n==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||n==="textarea"||e.contentEditable==="true")}var xb=En&&"documentMode"in document&&11>=document.documentMode,Ei=null,Dc=null,zl=null,Oc=!1;function uh(e,n,a){var s=a.window===a?a.document:a.nodeType===9?a:a.ownerDocument;Oc||Ei==null||Ei!==Oa(s)||(s=Ei,"selectionStart"in s&&Rc(s)?s={start:s.selectionStart,end:s.selectionEnd}:(s=(s.ownerDocument&&s.ownerDocument.defaultView||window).getSelection(),s={anchorNode:s.anchorNode,anchorOffset:s.anchorOffset,focusNode:s.focusNode,focusOffset:s.focusOffset}),zl&&jl(zl,s)||(zl=s,s=Ps(Dc,"onSelect"),0<s.length&&(n=new ss("onSelect","select",null,n,a),e.push({event:n,listeners:s}),n.target=Ei)))}function La(e,n){var a={};return a[e.toLowerCase()]=n.toLowerCase(),a["Webkit"+e]="webkit"+n,a["Moz"+e]="moz"+n,a}var Ci={animationend:La("Animation","AnimationEnd"),animationiteration:La("Animation","AnimationIteration"),animationstart:La("Animation","AnimationStart"),transitionrun:La("Transition","TransitionRun"),transitionstart:La("Transition","TransitionStart"),transitioncancel:La("Transition","TransitionCancel"),transitionend:La("Transition","TransitionEnd")},Hc={},dh={};En&&(dh=document.createElement("div").style,"AnimationEvent"in window||(delete Ci.animationend.animation,delete Ci.animationiteration.animation,delete Ci.animationstart.animation),"TransitionEvent"in window||delete Ci.transitionend.transition);function Ba(e){if(Hc[e])return Hc[e];if(!Ci[e])return e;var n=Ci[e],a;for(a in n)if(n.hasOwnProperty(a)&&a in dh)return Hc[e]=n[a];return e}var fh=Ba("animationend"),hh=Ba("animationiteration"),mh=Ba("animationstart"),bb=Ba("transitionrun"),Sb=Ba("transitionstart"),wb=Ba("transitioncancel"),gh=Ba("transitionend"),ph=new Map,Ic="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(" ");Ic.push("scrollEnd");function Jt(e,n){ph.set(e,n),wn(n,[e])}var us=typeof reportError=="function"?reportError:function(e){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var n=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(n))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",e);return}console.error(e)},Gt=[],Ti=0,Lc=0;function ds(){for(var e=Ti,n=Lc=Ti=0;n<e;){var a=Gt[n];Gt[n++]=null;var s=Gt[n];Gt[n++]=null;var c=Gt[n];Gt[n++]=null;var f=Gt[n];if(Gt[n++]=null,s!==null&&c!==null){var b=s.pending;b===null?c.next=c:(c.next=b.next,b.next=c),s.pending=c}f!==0&&yh(a,c,f)}}function fs(e,n,a,s){Gt[Ti++]=e,Gt[Ti++]=n,Gt[Ti++]=a,Gt[Ti++]=s,Lc|=s,e.lanes|=s,e=e.alternate,e!==null&&(e.lanes|=s)}function Bc(e,n,a,s){return fs(e,n,a,s),hs(e)}function ka(e,n){return fs(e,null,null,n),hs(e)}function yh(e,n,a){e.lanes|=a;var s=e.alternate;s!==null&&(s.lanes|=a);for(var c=!1,f=e.return;f!==null;)f.childLanes|=a,s=f.alternate,s!==null&&(s.childLanes|=a),f.tag===22&&(e=f.stateNode,e===null||e._visibility&1||(c=!0)),e=f,f=f.return;return e.tag===3?(f=e.stateNode,c&&n!==null&&(c=31-bt(a),e=f.hiddenUpdates,s=e[c],s===null?e[c]=[n]:s.push(n),n.lane=a|536870912),f):null}function hs(e){if(50<Wl)throw Wl=0,Zu=null,Error(o(185));for(var n=e.return;n!==null;)e=n,n=e.return;return e.tag===3?e.stateNode:null}var Ai={};function Nb(e,n,a,s){this.tag=e,this.key=a,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.refCleanup=this.ref=null,this.pendingProps=n,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=s,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Dt(e,n,a,s){return new Nb(e,n,a,s)}function kc(e){return e=e.prototype,!(!e||!e.isReactComponent)}function Cn(e,n){var a=e.alternate;return a===null?(a=Dt(e.tag,n,e.key,e.mode),a.elementType=e.elementType,a.type=e.type,a.stateNode=e.stateNode,a.alternate=e,e.alternate=a):(a.pendingProps=n,a.type=e.type,a.flags=0,a.subtreeFlags=0,a.deletions=null),a.flags=e.flags&65011712,a.childLanes=e.childLanes,a.lanes=e.lanes,a.child=e.child,a.memoizedProps=e.memoizedProps,a.memoizedState=e.memoizedState,a.updateQueue=e.updateQueue,n=e.dependencies,a.dependencies=n===null?null:{lanes:n.lanes,firstContext:n.firstContext},a.sibling=e.sibling,a.index=e.index,a.ref=e.ref,a.refCleanup=e.refCleanup,a}function vh(e,n){e.flags&=65011714;var a=e.alternate;return a===null?(e.childLanes=0,e.lanes=n,e.child=null,e.subtreeFlags=0,e.memoizedProps=null,e.memoizedState=null,e.updateQueue=null,e.dependencies=null,e.stateNode=null):(e.childLanes=a.childLanes,e.lanes=a.lanes,e.child=a.child,e.subtreeFlags=0,e.deletions=null,e.memoizedProps=a.memoizedProps,e.memoizedState=a.memoizedState,e.updateQueue=a.updateQueue,e.type=a.type,n=a.dependencies,e.dependencies=n===null?null:{lanes:n.lanes,firstContext:n.firstContext}),e}function ms(e,n,a,s,c,f){var b=0;if(s=e,typeof e=="function")kc(e)&&(b=1);else if(typeof e=="string")b=AS(e,a,ae.current)?26:e==="html"||e==="head"||e==="body"?27:5;else e:switch(e){case $:return e=Dt(31,a,n,c),e.elementType=$,e.lanes=f,e;case A:return Ua(a.children,c,f,n);case C:b=8,c|=24;break;case j:return e=Dt(12,a,n,c|2),e.elementType=j,e.lanes=f,e;case U:return e=Dt(13,a,n,c),e.elementType=U,e.lanes=f,e;case M:return e=Dt(19,a,n,c),e.elementType=M,e.lanes=f,e;default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case E:b=10;break e;case R:b=9;break e;case _:b=11;break e;case I:b=14;break e;case L:b=16,s=null;break e}b=29,a=Error(o(130,e===null?"null":typeof e,"")),s=null}return n=Dt(b,a,n,c),n.elementType=e,n.type=s,n.lanes=f,n}function Ua(e,n,a,s){return e=Dt(7,e,s,n),e.lanes=a,e}function Uc(e,n,a){return e=Dt(6,e,null,n),e.lanes=a,e}function xh(e){var n=Dt(18,null,null,0);return n.stateNode=e,n}function Gc(e,n,a){return n=Dt(4,e.children!==null?e.children:[],e.key,n),n.lanes=a,n.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},n}var bh=new WeakMap;function qt(e,n){if(typeof e=="object"&&e!==null){var a=bh.get(e);return a!==void 0?a:(n={value:e,source:n,stack:Ft(n)},bh.set(e,n),n)}return{value:e,source:n,stack:Ft(n)}}var Mi=[],ji=0,gs=null,Rl=0,Yt=[],Vt=0,Wn=null,cn=1,un="";function Tn(e,n){Mi[ji++]=Rl,Mi[ji++]=gs,gs=e,Rl=n}function Sh(e,n,a){Yt[Vt++]=cn,Yt[Vt++]=un,Yt[Vt++]=Wn,Wn=e;var s=cn;e=un;var c=32-bt(s)-1;s&=~(1<<c),a+=1;var f=32-bt(n)+c;if(30<f){var b=c-c%5;f=(s&(1<<b)-1).toString(32),s>>=b,c-=b,cn=1<<32-bt(n)+c|a<<c|s,un=f+e}else cn=1<<f|a<<c|s,un=e}function qc(e){e.return!==null&&(Tn(e,1),Sh(e,1,0))}function Yc(e){for(;e===gs;)gs=Mi[--ji],Mi[ji]=null,Rl=Mi[--ji],Mi[ji]=null;for(;e===Wn;)Wn=Yt[--Vt],Yt[Vt]=null,un=Yt[--Vt],Yt[Vt]=null,cn=Yt[--Vt],Yt[Vt]=null}function wh(e,n){Yt[Vt++]=cn,Yt[Vt++]=un,Yt[Vt++]=Wn,cn=n.id,un=n.overflow,Wn=e}var ht=null,$e=null,De=!1,ea=null,Xt=!1,Vc=Error(o(519));function ta(e){var n=Error(o(418,1<arguments.length&&arguments[1]!==void 0&&arguments[1]?"text":"HTML",""));throw Dl(qt(n,e)),Vc}function Nh(e){var n=e.stateNode,a=e.type,s=e.memoizedProps;switch(n[rt]=e,n[yt]=s,a){case"dialog":Me("cancel",n),Me("close",n);break;case"iframe":case"object":case"embed":Me("load",n);break;case"video":case"audio":for(a=0;a<to.length;a++)Me(to[a],n);break;case"source":Me("error",n);break;case"img":case"image":case"link":Me("error",n),Me("load",n);break;case"details":Me("toggle",n);break;case"input":Me("invalid",n),ns(n,s.value,s.defaultValue,s.checked,s.defaultChecked,s.type,s.name,!0);break;case"select":Me("invalid",n);break;case"textarea":Me("invalid",n),Bf(n,s.value,s.defaultValue,s.children)}a=s.children,typeof a!="string"&&typeof a!="number"&&typeof a!="bigint"||n.textContent===""+a||s.suppressHydrationWarning===!0||Ug(n.textContent,a)?(s.popover!=null&&(Me("beforetoggle",n),Me("toggle",n)),s.onScroll!=null&&Me("scroll",n),s.onScrollEnd!=null&&Me("scrollend",n),s.onClick!=null&&(n.onclick=_n),n=!0):n=!1,n||ta(e,!0)}function _h(e){for(ht=e.return;ht;)switch(ht.tag){case 5:case 31:case 13:Xt=!1;return;case 27:case 3:Xt=!0;return;default:ht=ht.return}}function zi(e){if(e!==ht)return!1;if(!De)return _h(e),De=!0,!1;var n=e.tag,a;if((a=n!==3&&n!==27)&&((a=n===5)&&(a=e.type,a=!(a!=="form"&&a!=="button")||rd(e.type,e.memoizedProps)),a=!a),a&&$e&&ta(e),_h(e),n===13){if(e=e.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(o(317));$e=Fg(e)}else if(n===31){if(e=e.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(o(317));$e=Fg(e)}else n===27?(n=$e,ga(e.type)?(e=hd,hd=null,$e=e):$e=n):$e=ht?Zt(e.stateNode.nextSibling):null;return!0}function Ga(){$e=ht=null,De=!1}function Xc(){var e=ea;return e!==null&&(At===null?At=e:At.push.apply(At,e),ea=null),e}function Dl(e){ea===null?ea=[e]:ea.push(e)}var $c=T(null),qa=null,An=null;function na(e,n,a){ne($c,n._currentValue),n._currentValue=a}function Mn(e){e._currentValue=$c.current,k($c)}function Zc(e,n,a){for(;e!==null;){var s=e.alternate;if((e.childLanes&n)!==n?(e.childLanes|=n,s!==null&&(s.childLanes|=n)):s!==null&&(s.childLanes&n)!==n&&(s.childLanes|=n),e===a)break;e=e.return}}function Kc(e,n,a,s){var c=e.child;for(c!==null&&(c.return=e);c!==null;){var f=c.dependencies;if(f!==null){var b=c.child;f=f.firstContext;e:for(;f!==null;){var N=f;f=c;for(var O=0;O<n.length;O++)if(N.context===n[O]){f.lanes|=a,N=f.alternate,N!==null&&(N.lanes|=a),Zc(f.return,a,e),s||(b=null);break e}f=N.next}}else if(c.tag===18){if(b=c.return,b===null)throw Error(o(341));b.lanes|=a,f=b.alternate,f!==null&&(f.lanes|=a),Zc(b,a,e),b=null}else b=c.child;if(b!==null)b.return=c;else for(b=c;b!==null;){if(b===e){b=null;break}if(c=b.sibling,c!==null){c.return=b.return,b=c;break}b=b.return}c=b}}function Ri(e,n,a,s){e=null;for(var c=n,f=!1;c!==null;){if(!f){if((c.flags&524288)!==0)f=!0;else if((c.flags&262144)!==0)break}if(c.tag===10){var b=c.alternate;if(b===null)throw Error(o(387));if(b=b.memoizedProps,b!==null){var N=c.type;Rt(c.pendingProps.value,b.value)||(e!==null?e.push(N):e=[N])}}else if(c===de.current){if(b=c.alternate,b===null)throw Error(o(387));b.memoizedState.memoizedState!==c.memoizedState.memoizedState&&(e!==null?e.push(oo):e=[oo])}c=c.return}e!==null&&Kc(n,e,a,s),n.flags|=262144}function ps(e){for(e=e.firstContext;e!==null;){if(!Rt(e.context._currentValue,e.memoizedValue))return!0;e=e.next}return!1}function Ya(e){qa=e,An=null,e=e.dependencies,e!==null&&(e.firstContext=null)}function mt(e){return Eh(qa,e)}function ys(e,n){return qa===null&&Ya(e),Eh(e,n)}function Eh(e,n){var a=n._currentValue;if(n={context:n,memoizedValue:a,next:null},An===null){if(e===null)throw Error(o(308));An=n,e.dependencies={lanes:0,firstContext:n},e.flags|=524288}else An=An.next=n;return a}var _b=typeof AbortController<"u"?AbortController:function(){var e=[],n=this.signal={aborted:!1,addEventListener:function(a,s){e.push(s)}};this.abort=function(){n.aborted=!0,e.forEach(function(a){return a()})}},Eb=t.unstable_scheduleCallback,Cb=t.unstable_NormalPriority,nt={$$typeof:E,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0};function Fc(){return{controller:new _b,data:new Map,refCount:0}}function Ol(e){e.refCount--,e.refCount===0&&Eb(Cb,function(){e.controller.abort()})}var Hl=null,Qc=0,Di=0,Oi=null;function Tb(e,n){if(Hl===null){var a=Hl=[];Qc=0,Di=Wu(),Oi={status:"pending",value:void 0,then:function(s){a.push(s)}}}return Qc++,n.then(Ch,Ch),n}function Ch(){if(--Qc===0&&Hl!==null){Oi!==null&&(Oi.status="fulfilled");var e=Hl;Hl=null,Di=0,Oi=null;for(var n=0;n<e.length;n++)(0,e[n])()}}function Ab(e,n){var a=[],s={status:"pending",value:null,reason:null,then:function(c){a.push(c)}};return e.then(function(){s.status="fulfilled",s.value=n;for(var c=0;c<a.length;c++)(0,a[c])(n)},function(c){for(s.status="rejected",s.reason=c,c=0;c<a.length;c++)(0,a[c])(void 0)}),s}var Th=z.S;z.S=function(e,n){ug=ft(),typeof n=="object"&&n!==null&&typeof n.then=="function"&&Tb(e,n),Th!==null&&Th(e,n)};var Va=T(null);function Pc(){var e=Va.current;return e!==null?e:Xe.pooledCache}function vs(e,n){n===null?ne(Va,Va.current):ne(Va,n.pool)}function Ah(){var e=Pc();return e===null?null:{parent:nt._currentValue,pool:e}}var Hi=Error(o(460)),Jc=Error(o(474)),xs=Error(o(542)),bs={then:function(){}};function Mh(e){return e=e.status,e==="fulfilled"||e==="rejected"}function jh(e,n,a){switch(a=e[a],a===void 0?e.push(n):a!==n&&(n.then(_n,_n),n=a),n.status){case"fulfilled":return n.value;case"rejected":throw e=n.reason,Rh(e),e;default:if(typeof n.status=="string")n.then(_n,_n);else{if(e=Xe,e!==null&&100<e.shellSuspendCounter)throw Error(o(482));e=n,e.status="pending",e.then(function(s){if(n.status==="pending"){var c=n;c.status="fulfilled",c.value=s}},function(s){if(n.status==="pending"){var c=n;c.status="rejected",c.reason=s}})}switch(n.status){case"fulfilled":return n.value;case"rejected":throw e=n.reason,Rh(e),e}throw $a=n,Hi}}function Xa(e){try{var n=e._init;return n(e._payload)}catch(a){throw a!==null&&typeof a=="object"&&typeof a.then=="function"?($a=a,Hi):a}}var $a=null;function zh(){if($a===null)throw Error(o(459));var e=$a;return $a=null,e}function Rh(e){if(e===Hi||e===xs)throw Error(o(483))}var Ii=null,Il=0;function Ss(e){var n=Il;return Il+=1,Ii===null&&(Ii=[]),jh(Ii,e,n)}function Ll(e,n){n=n.props.ref,e.ref=n!==void 0?n:null}function ws(e,n){throw n.$$typeof===x?Error(o(525)):(e=Object.prototype.toString.call(n),Error(o(31,e==="[object Object]"?"object with keys {"+Object.keys(n).join(", ")+"}":e)))}function Dh(e){function n(X,q){if(e){var F=X.deletions;F===null?(X.deletions=[q],X.flags|=16):F.push(q)}}function a(X,q){if(!e)return null;for(;q!==null;)n(X,q),q=q.sibling;return null}function s(X){for(var q=new Map;X!==null;)X.key!==null?q.set(X.key,X):q.set(X.index,X),X=X.sibling;return q}function c(X,q){return X=Cn(X,q),X.index=0,X.sibling=null,X}function f(X,q,F){return X.index=F,e?(F=X.alternate,F!==null?(F=F.index,F<q?(X.flags|=67108866,q):F):(X.flags|=67108866,q)):(X.flags|=1048576,q)}function b(X){return e&&X.alternate===null&&(X.flags|=67108866),X}function N(X,q,F,oe){return q===null||q.tag!==6?(q=Uc(F,X.mode,oe),q.return=X,q):(q=c(q,F),q.return=X,q)}function O(X,q,F,oe){var pe=F.type;return pe===A?ie(X,q,F.props.children,oe,F.key):q!==null&&(q.elementType===pe||typeof pe=="object"&&pe!==null&&pe.$$typeof===L&&Xa(pe)===q.type)?(q=c(q,F.props),Ll(q,F),q.return=X,q):(q=ms(F.type,F.key,F.props,null,X.mode,oe),Ll(q,F),q.return=X,q)}function Q(X,q,F,oe){return q===null||q.tag!==4||q.stateNode.containerInfo!==F.containerInfo||q.stateNode.implementation!==F.implementation?(q=Gc(F,X.mode,oe),q.return=X,q):(q=c(q,F.children||[]),q.return=X,q)}function ie(X,q,F,oe,pe){return q===null||q.tag!==7?(q=Ua(F,X.mode,oe,pe),q.return=X,q):(q=c(q,F),q.return=X,q)}function re(X,q,F){if(typeof q=="string"&&q!==""||typeof q=="number"||typeof q=="bigint")return q=Uc(""+q,X.mode,F),q.return=X,q;if(typeof q=="object"&&q!==null){switch(q.$$typeof){case S:return F=ms(q.type,q.key,q.props,null,X.mode,F),Ll(F,q),F.return=X,F;case w:return q=Gc(q,X.mode,F),q.return=X,q;case L:return q=Xa(q),re(X,q,F)}if(Z(q)||te(q))return q=Ua(q,X.mode,F,null),q.return=X,q;if(typeof q.then=="function")return re(X,Ss(q),F);if(q.$$typeof===E)return re(X,ys(X,q),F);ws(X,q)}return null}function P(X,q,F,oe){var pe=q!==null?q.key:null;if(typeof F=="string"&&F!==""||typeof F=="number"||typeof F=="bigint")return pe!==null?null:N(X,q,""+F,oe);if(typeof F=="object"&&F!==null){switch(F.$$typeof){case S:return F.key===pe?O(X,q,F,oe):null;case w:return F.key===pe?Q(X,q,F,oe):null;case L:return F=Xa(F),P(X,q,F,oe)}if(Z(F)||te(F))return pe!==null?null:ie(X,q,F,oe,null);if(typeof F.then=="function")return P(X,q,Ss(F),oe);if(F.$$typeof===E)return P(X,q,ys(X,F),oe);ws(X,F)}return null}function ee(X,q,F,oe,pe){if(typeof oe=="string"&&oe!==""||typeof oe=="number"||typeof oe=="bigint")return X=X.get(F)||null,N(q,X,""+oe,pe);if(typeof oe=="object"&&oe!==null){switch(oe.$$typeof){case S:return X=X.get(oe.key===null?F:oe.key)||null,O(q,X,oe,pe);case w:return X=X.get(oe.key===null?F:oe.key)||null,Q(q,X,oe,pe);case L:return oe=Xa(oe),ee(X,q,F,oe,pe)}if(Z(oe)||te(oe))return X=X.get(F)||null,ie(q,X,oe,pe,null);if(typeof oe.then=="function")return ee(X,q,F,Ss(oe),pe);if(oe.$$typeof===E)return ee(X,q,F,ys(q,oe),pe);ws(q,oe)}return null}function he(X,q,F,oe){for(var pe=null,He=null,me=q,Ce=q=0,Re=null;me!==null&&Ce<F.length;Ce++){me.index>Ce?(Re=me,me=null):Re=me.sibling;var Ie=P(X,me,F[Ce],oe);if(Ie===null){me===null&&(me=Re);break}e&&me&&Ie.alternate===null&&n(X,me),q=f(Ie,q,Ce),He===null?pe=Ie:He.sibling=Ie,He=Ie,me=Re}if(Ce===F.length)return a(X,me),De&&Tn(X,Ce),pe;if(me===null){for(;Ce<F.length;Ce++)me=re(X,F[Ce],oe),me!==null&&(q=f(me,q,Ce),He===null?pe=me:He.sibling=me,He=me);return De&&Tn(X,Ce),pe}for(me=s(me);Ce<F.length;Ce++)Re=ee(me,X,Ce,F[Ce],oe),Re!==null&&(e&&Re.alternate!==null&&me.delete(Re.key===null?Ce:Re.key),q=f(Re,q,Ce),He===null?pe=Re:He.sibling=Re,He=Re);return e&&me.forEach(function(ba){return n(X,ba)}),De&&Tn(X,Ce),pe}function xe(X,q,F,oe){if(F==null)throw Error(o(151));for(var pe=null,He=null,me=q,Ce=q=0,Re=null,Ie=F.next();me!==null&&!Ie.done;Ce++,Ie=F.next()){me.index>Ce?(Re=me,me=null):Re=me.sibling;var ba=P(X,me,Ie.value,oe);if(ba===null){me===null&&(me=Re);break}e&&me&&ba.alternate===null&&n(X,me),q=f(ba,q,Ce),He===null?pe=ba:He.sibling=ba,He=ba,me=Re}if(Ie.done)return a(X,me),De&&Tn(X,Ce),pe;if(me===null){for(;!Ie.done;Ce++,Ie=F.next())Ie=re(X,Ie.value,oe),Ie!==null&&(q=f(Ie,q,Ce),He===null?pe=Ie:He.sibling=Ie,He=Ie);return De&&Tn(X,Ce),pe}for(me=s(me);!Ie.done;Ce++,Ie=F.next())Ie=ee(me,X,Ce,Ie.value,oe),Ie!==null&&(e&&Ie.alternate!==null&&me.delete(Ie.key===null?Ce:Ie.key),q=f(Ie,q,Ce),He===null?pe=Ie:He.sibling=Ie,He=Ie);return e&&me.forEach(function(kS){return n(X,kS)}),De&&Tn(X,Ce),pe}function Ve(X,q,F,oe){if(typeof F=="object"&&F!==null&&F.type===A&&F.key===null&&(F=F.props.children),typeof F=="object"&&F!==null){switch(F.$$typeof){case S:e:{for(var pe=F.key;q!==null;){if(q.key===pe){if(pe=F.type,pe===A){if(q.tag===7){a(X,q.sibling),oe=c(q,F.props.children),oe.return=X,X=oe;break e}}else if(q.elementType===pe||typeof pe=="object"&&pe!==null&&pe.$$typeof===L&&Xa(pe)===q.type){a(X,q.sibling),oe=c(q,F.props),Ll(oe,F),oe.return=X,X=oe;break e}a(X,q);break}else n(X,q);q=q.sibling}F.type===A?(oe=Ua(F.props.children,X.mode,oe,F.key),oe.return=X,X=oe):(oe=ms(F.type,F.key,F.props,null,X.mode,oe),Ll(oe,F),oe.return=X,X=oe)}return b(X);case w:e:{for(pe=F.key;q!==null;){if(q.key===pe)if(q.tag===4&&q.stateNode.containerInfo===F.containerInfo&&q.stateNode.implementation===F.implementation){a(X,q.sibling),oe=c(q,F.children||[]),oe.return=X,X=oe;break e}else{a(X,q);break}else n(X,q);q=q.sibling}oe=Gc(F,X.mode,oe),oe.return=X,X=oe}return b(X);case L:return F=Xa(F),Ve(X,q,F,oe)}if(Z(F))return he(X,q,F,oe);if(te(F)){if(pe=te(F),typeof pe!="function")throw Error(o(150));return F=pe.call(F),xe(X,q,F,oe)}if(typeof F.then=="function")return Ve(X,q,Ss(F),oe);if(F.$$typeof===E)return Ve(X,q,ys(X,F),oe);ws(X,F)}return typeof F=="string"&&F!==""||typeof F=="number"||typeof F=="bigint"?(F=""+F,q!==null&&q.tag===6?(a(X,q.sibling),oe=c(q,F),oe.return=X,X=oe):(a(X,q),oe=Uc(F,X.mode,oe),oe.return=X,X=oe),b(X)):a(X,q)}return function(X,q,F,oe){try{Il=0;var pe=Ve(X,q,F,oe);return Ii=null,pe}catch(me){if(me===Hi||me===xs)throw me;var He=Dt(29,me,null,X.mode);return He.lanes=oe,He.return=X,He}}}var Za=Dh(!0),Oh=Dh(!1),aa=!1;function Wc(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function eu(e,n){e=e.updateQueue,n.updateQueue===e&&(n.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function ia(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function la(e,n,a){var s=e.updateQueue;if(s===null)return null;if(s=s.shared,(Le&2)!==0){var c=s.pending;return c===null?n.next=n:(n.next=c.next,c.next=n),s.pending=n,n=hs(e),yh(e,null,a),n}return fs(e,s,n,a),hs(e)}function Bl(e,n,a){if(n=n.updateQueue,n!==null&&(n=n.shared,(a&4194048)!==0)){var s=n.lanes;s&=e.pendingLanes,a|=s,n.lanes=a,Xo(e,a)}}function tu(e,n){var a=e.updateQueue,s=e.alternate;if(s!==null&&(s=s.updateQueue,a===s)){var c=null,f=null;if(a=a.firstBaseUpdate,a!==null){do{var b={lane:a.lane,tag:a.tag,payload:a.payload,callback:null,next:null};f===null?c=f=b:f=f.next=b,a=a.next}while(a!==null);f===null?c=f=n:f=f.next=n}else c=f=n;a={baseState:s.baseState,firstBaseUpdate:c,lastBaseUpdate:f,shared:s.shared,callbacks:s.callbacks},e.updateQueue=a;return}e=a.lastBaseUpdate,e===null?a.firstBaseUpdate=n:e.next=n,a.lastBaseUpdate=n}var nu=!1;function kl(){if(nu){var e=Oi;if(e!==null)throw e}}function Ul(e,n,a,s){nu=!1;var c=e.updateQueue;aa=!1;var f=c.firstBaseUpdate,b=c.lastBaseUpdate,N=c.shared.pending;if(N!==null){c.shared.pending=null;var O=N,Q=O.next;O.next=null,b===null?f=Q:b.next=Q,b=O;var ie=e.alternate;ie!==null&&(ie=ie.updateQueue,N=ie.lastBaseUpdate,N!==b&&(N===null?ie.firstBaseUpdate=Q:N.next=Q,ie.lastBaseUpdate=O))}if(f!==null){var re=c.baseState;b=0,ie=Q=O=null,N=f;do{var P=N.lane&-536870913,ee=P!==N.lane;if(ee?(ze&P)===P:(s&P)===P){P!==0&&P===Di&&(nu=!0),ie!==null&&(ie=ie.next={lane:0,tag:N.tag,payload:N.payload,callback:null,next:null});e:{var he=e,xe=N;P=n;var Ve=a;switch(xe.tag){case 1:if(he=xe.payload,typeof he=="function"){re=he.call(Ve,re,P);break e}re=he;break e;case 3:he.flags=he.flags&-65537|128;case 0:if(he=xe.payload,P=typeof he=="function"?he.call(Ve,re,P):he,P==null)break e;re=v({},re,P);break e;case 2:aa=!0}}P=N.callback,P!==null&&(e.flags|=64,ee&&(e.flags|=8192),ee=c.callbacks,ee===null?c.callbacks=[P]:ee.push(P))}else ee={lane:P,tag:N.tag,payload:N.payload,callback:N.callback,next:null},ie===null?(Q=ie=ee,O=re):ie=ie.next=ee,b|=P;if(N=N.next,N===null){if(N=c.shared.pending,N===null)break;ee=N,N=ee.next,ee.next=null,c.lastBaseUpdate=ee,c.shared.pending=null}}while(!0);ie===null&&(O=re),c.baseState=O,c.firstBaseUpdate=Q,c.lastBaseUpdate=ie,f===null&&(c.shared.lanes=0),ua|=b,e.lanes=b,e.memoizedState=re}}function Hh(e,n){if(typeof e!="function")throw Error(o(191,e));e.call(n)}function Ih(e,n){var a=e.callbacks;if(a!==null)for(e.callbacks=null,e=0;e<a.length;e++)Hh(a[e],n)}var Li=T(null),Ns=T(0);function Lh(e,n){e=Bn,ne(Ns,e),ne(Li,n),Bn=e|n.baseLanes}function au(){ne(Ns,Bn),ne(Li,Li.current)}function iu(){Bn=Ns.current,k(Li),k(Ns)}var Ot=T(null),$t=null;function oa(e){var n=e.alternate;ne(We,We.current&1),ne(Ot,e),$t===null&&(n===null||Li.current!==null||n.memoizedState!==null)&&($t=e)}function lu(e){ne(We,We.current),ne(Ot,e),$t===null&&($t=e)}function Bh(e){e.tag===22?(ne(We,We.current),ne(Ot,e),$t===null&&($t=e)):sa()}function sa(){ne(We,We.current),ne(Ot,Ot.current)}function Ht(e){k(Ot),$t===e&&($t=null),k(We)}var We=T(0);function _s(e){for(var n=e;n!==null;){if(n.tag===13){var a=n.memoizedState;if(a!==null&&(a=a.dehydrated,a===null||dd(a)||fd(a)))return n}else if(n.tag===19&&(n.memoizedProps.revealOrder==="forwards"||n.memoizedProps.revealOrder==="backwards"||n.memoizedProps.revealOrder==="unstable_legacy-backwards"||n.memoizedProps.revealOrder==="together")){if((n.flags&128)!==0)return n}else if(n.child!==null){n.child.return=n,n=n.child;continue}if(n===e)break;for(;n.sibling===null;){if(n.return===null||n.return===e)return null;n=n.return}n.sibling.return=n.return,n=n.sibling}return null}var jn=0,Ee=null,qe=null,at=null,Es=!1,Bi=!1,Ka=!1,Cs=0,Gl=0,ki=null,Mb=0;function Pe(){throw Error(o(321))}function ou(e,n){if(n===null)return!1;for(var a=0;a<n.length&&a<e.length;a++)if(!Rt(e[a],n[a]))return!1;return!0}function su(e,n,a,s,c,f){return jn=f,Ee=n,n.memoizedState=null,n.updateQueue=null,n.lanes=0,z.H=e===null||e.memoizedState===null?Sm:wu,Ka=!1,f=a(s,c),Ka=!1,Bi&&(f=Uh(n,a,s,c)),kh(e),f}function kh(e){z.H=Vl;var n=qe!==null&&qe.next!==null;if(jn=0,at=qe=Ee=null,Es=!1,Gl=0,ki=null,n)throw Error(o(300));e===null||it||(e=e.dependencies,e!==null&&ps(e)&&(it=!0))}function Uh(e,n,a,s){Ee=e;var c=0;do{if(Bi&&(ki=null),Gl=0,Bi=!1,25<=c)throw Error(o(301));if(c+=1,at=qe=null,e.updateQueue!=null){var f=e.updateQueue;f.lastEffect=null,f.events=null,f.stores=null,f.memoCache!=null&&(f.memoCache.index=0)}z.H=wm,f=n(a,s)}while(Bi);return f}function jb(){var e=z.H,n=e.useState()[0];return n=typeof n.then=="function"?ql(n):n,e=e.useState()[0],(qe!==null?qe.memoizedState:null)!==e&&(Ee.flags|=1024),n}function ru(){var e=Cs!==0;return Cs=0,e}function cu(e,n,a){n.updateQueue=e.updateQueue,n.flags&=-2053,e.lanes&=~a}function uu(e){if(Es){for(e=e.memoizedState;e!==null;){var n=e.queue;n!==null&&(n.pending=null),e=e.next}Es=!1}jn=0,at=qe=Ee=null,Bi=!1,Gl=Cs=0,ki=null}function St(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return at===null?Ee.memoizedState=at=e:at=at.next=e,at}function et(){if(qe===null){var e=Ee.alternate;e=e!==null?e.memoizedState:null}else e=qe.next;var n=at===null?Ee.memoizedState:at.next;if(n!==null)at=n,qe=e;else{if(e===null)throw Ee.alternate===null?Error(o(467)):Error(o(310));qe=e,e={memoizedState:qe.memoizedState,baseState:qe.baseState,baseQueue:qe.baseQueue,queue:qe.queue,next:null},at===null?Ee.memoizedState=at=e:at=at.next=e}return at}function Ts(){return{lastEffect:null,events:null,stores:null,memoCache:null}}function ql(e){var n=Gl;return Gl+=1,ki===null&&(ki=[]),e=jh(ki,e,n),n=Ee,(at===null?n.memoizedState:at.next)===null&&(n=n.alternate,z.H=n===null||n.memoizedState===null?Sm:wu),e}function As(e){if(e!==null&&typeof e=="object"){if(typeof e.then=="function")return ql(e);if(e.$$typeof===E)return mt(e)}throw Error(o(438,String(e)))}function du(e){var n=null,a=Ee.updateQueue;if(a!==null&&(n=a.memoCache),n==null){var s=Ee.alternate;s!==null&&(s=s.updateQueue,s!==null&&(s=s.memoCache,s!=null&&(n={data:s.data.map(function(c){return c.slice()}),index:0})))}if(n==null&&(n={data:[],index:0}),a===null&&(a=Ts(),Ee.updateQueue=a),a.memoCache=n,a=n.data[n.index],a===void 0)for(a=n.data[n.index]=Array(e),s=0;s<e;s++)a[s]=ce;return n.index++,a}function zn(e,n){return typeof n=="function"?n(e):n}function Ms(e){var n=et();return fu(n,qe,e)}function fu(e,n,a){var s=e.queue;if(s===null)throw Error(o(311));s.lastRenderedReducer=a;var c=e.baseQueue,f=s.pending;if(f!==null){if(c!==null){var b=c.next;c.next=f.next,f.next=b}n.baseQueue=c=f,s.pending=null}if(f=e.baseState,c===null)e.memoizedState=f;else{n=c.next;var N=b=null,O=null,Q=n,ie=!1;do{var re=Q.lane&-536870913;if(re!==Q.lane?(ze&re)===re:(jn&re)===re){var P=Q.revertLane;if(P===0)O!==null&&(O=O.next={lane:0,revertLane:0,gesture:null,action:Q.action,hasEagerState:Q.hasEagerState,eagerState:Q.eagerState,next:null}),re===Di&&(ie=!0);else if((jn&P)===P){Q=Q.next,P===Di&&(ie=!0);continue}else re={lane:0,revertLane:Q.revertLane,gesture:null,action:Q.action,hasEagerState:Q.hasEagerState,eagerState:Q.eagerState,next:null},O===null?(N=O=re,b=f):O=O.next=re,Ee.lanes|=P,ua|=P;re=Q.action,Ka&&a(f,re),f=Q.hasEagerState?Q.eagerState:a(f,re)}else P={lane:re,revertLane:Q.revertLane,gesture:Q.gesture,action:Q.action,hasEagerState:Q.hasEagerState,eagerState:Q.eagerState,next:null},O===null?(N=O=P,b=f):O=O.next=P,Ee.lanes|=re,ua|=re;Q=Q.next}while(Q!==null&&Q!==n);if(O===null?b=f:O.next=N,!Rt(f,e.memoizedState)&&(it=!0,ie&&(a=Oi,a!==null)))throw a;e.memoizedState=f,e.baseState=b,e.baseQueue=O,s.lastRenderedState=f}return c===null&&(s.lanes=0),[e.memoizedState,s.dispatch]}function hu(e){var n=et(),a=n.queue;if(a===null)throw Error(o(311));a.lastRenderedReducer=e;var s=a.dispatch,c=a.pending,f=n.memoizedState;if(c!==null){a.pending=null;var b=c=c.next;do f=e(f,b.action),b=b.next;while(b!==c);Rt(f,n.memoizedState)||(it=!0),n.memoizedState=f,n.baseQueue===null&&(n.baseState=f),a.lastRenderedState=f}return[f,s]}function Gh(e,n,a){var s=Ee,c=et(),f=De;if(f){if(a===void 0)throw Error(o(407));a=a()}else a=n();var b=!Rt((qe||c).memoizedState,a);if(b&&(c.memoizedState=a,it=!0),c=c.queue,pu(Vh.bind(null,s,c,e),[e]),c.getSnapshot!==n||b||at!==null&&at.memoizedState.tag&1){if(s.flags|=2048,Ui(9,{destroy:void 0},Yh.bind(null,s,c,a,n),null),Xe===null)throw Error(o(349));f||(jn&127)!==0||qh(s,n,a)}return a}function qh(e,n,a){e.flags|=16384,e={getSnapshot:n,value:a},n=Ee.updateQueue,n===null?(n=Ts(),Ee.updateQueue=n,n.stores=[e]):(a=n.stores,a===null?n.stores=[e]:a.push(e))}function Yh(e,n,a,s){n.value=a,n.getSnapshot=s,Xh(n)&&$h(e)}function Vh(e,n,a){return a(function(){Xh(n)&&$h(e)})}function Xh(e){var n=e.getSnapshot;e=e.value;try{var a=n();return!Rt(e,a)}catch{return!0}}function $h(e){var n=ka(e,2);n!==null&&Mt(n,e,2)}function mu(e){var n=St();if(typeof e=="function"){var a=e;if(e=a(),Ka){sn(!0);try{a()}finally{sn(!1)}}}return n.memoizedState=n.baseState=e,n.queue={pending:null,lanes:0,dispatch:null,lastRenderedReducer:zn,lastRenderedState:e},n}function Zh(e,n,a,s){return e.baseState=a,fu(e,qe,typeof s=="function"?s:zn)}function zb(e,n,a,s,c){if(Rs(e))throw Error(o(485));if(e=n.action,e!==null){var f={payload:c,action:e,next:null,isTransition:!0,status:"pending",value:null,reason:null,listeners:[],then:function(b){f.listeners.push(b)}};z.T!==null?a(!0):f.isTransition=!1,s(f),a=n.pending,a===null?(f.next=n.pending=f,Kh(n,f)):(f.next=a.next,n.pending=a.next=f)}}function Kh(e,n){var a=n.action,s=n.payload,c=e.state;if(n.isTransition){var f=z.T,b={};z.T=b;try{var N=a(c,s),O=z.S;O!==null&&O(b,N),Fh(e,n,N)}catch(Q){gu(e,n,Q)}finally{f!==null&&b.types!==null&&(f.types=b.types),z.T=f}}else try{f=a(c,s),Fh(e,n,f)}catch(Q){gu(e,n,Q)}}function Fh(e,n,a){a!==null&&typeof a=="object"&&typeof a.then=="function"?a.then(function(s){Qh(e,n,s)},function(s){return gu(e,n,s)}):Qh(e,n,a)}function Qh(e,n,a){n.status="fulfilled",n.value=a,Ph(n),e.state=a,n=e.pending,n!==null&&(a=n.next,a===n?e.pending=null:(a=a.next,n.next=a,Kh(e,a)))}function gu(e,n,a){var s=e.pending;if(e.pending=null,s!==null){s=s.next;do n.status="rejected",n.reason=a,Ph(n),n=n.next;while(n!==s)}e.action=null}function Ph(e){e=e.listeners;for(var n=0;n<e.length;n++)(0,e[n])()}function Jh(e,n){return n}function Wh(e,n){if(De){var a=Xe.formState;if(a!==null){e:{var s=Ee;if(De){if($e){t:{for(var c=$e,f=Xt;c.nodeType!==8;){if(!f){c=null;break t}if(c=Zt(c.nextSibling),c===null){c=null;break t}}f=c.data,c=f==="F!"||f==="F"?c:null}if(c){$e=Zt(c.nextSibling),s=c.data==="F!";break e}}ta(s)}s=!1}s&&(n=a[0])}}return a=St(),a.memoizedState=a.baseState=n,s={pending:null,lanes:0,dispatch:null,lastRenderedReducer:Jh,lastRenderedState:n},a.queue=s,a=vm.bind(null,Ee,s),s.dispatch=a,s=mu(!1),f=Su.bind(null,Ee,!1,s.queue),s=St(),c={state:n,dispatch:null,action:e,pending:null},s.queue=c,a=zb.bind(null,Ee,c,f,a),c.dispatch=a,s.memoizedState=e,[n,a,!1]}function em(e){var n=et();return tm(n,qe,e)}function tm(e,n,a){if(n=fu(e,n,Jh)[0],e=Ms(zn)[0],typeof n=="object"&&n!==null&&typeof n.then=="function")try{var s=ql(n)}catch(b){throw b===Hi?xs:b}else s=n;n=et();var c=n.queue,f=c.dispatch;return a!==n.memoizedState&&(Ee.flags|=2048,Ui(9,{destroy:void 0},Rb.bind(null,c,a),null)),[s,f,e]}function Rb(e,n){e.action=n}function nm(e){var n=et(),a=qe;if(a!==null)return tm(n,a,e);et(),n=n.memoizedState,a=et();var s=a.queue.dispatch;return a.memoizedState=e,[n,s,!1]}function Ui(e,n,a,s){return e={tag:e,create:a,deps:s,inst:n,next:null},n=Ee.updateQueue,n===null&&(n=Ts(),Ee.updateQueue=n),a=n.lastEffect,a===null?n.lastEffect=e.next=e:(s=a.next,a.next=e,e.next=s,n.lastEffect=e),e}function am(){return et().memoizedState}function js(e,n,a,s){var c=St();Ee.flags|=e,c.memoizedState=Ui(1|n,{destroy:void 0},a,s===void 0?null:s)}function zs(e,n,a,s){var c=et();s=s===void 0?null:s;var f=c.memoizedState.inst;qe!==null&&s!==null&&ou(s,qe.memoizedState.deps)?c.memoizedState=Ui(n,f,a,s):(Ee.flags|=e,c.memoizedState=Ui(1|n,f,a,s))}function im(e,n){js(8390656,8,e,n)}function pu(e,n){zs(2048,8,e,n)}function Db(e){Ee.flags|=4;var n=Ee.updateQueue;if(n===null)n=Ts(),Ee.updateQueue=n,n.events=[e];else{var a=n.events;a===null?n.events=[e]:a.push(e)}}function lm(e){var n=et().memoizedState;return Db({ref:n,nextImpl:e}),function(){if((Le&2)!==0)throw Error(o(440));return n.impl.apply(void 0,arguments)}}function om(e,n){return zs(4,2,e,n)}function sm(e,n){return zs(4,4,e,n)}function rm(e,n){if(typeof n=="function"){e=e();var a=n(e);return function(){typeof a=="function"?a():n(null)}}if(n!=null)return e=e(),n.current=e,function(){n.current=null}}function cm(e,n,a){a=a!=null?a.concat([e]):null,zs(4,4,rm.bind(null,n,e),a)}function yu(){}function um(e,n){var a=et();n=n===void 0?null:n;var s=a.memoizedState;return n!==null&&ou(n,s[1])?s[0]:(a.memoizedState=[e,n],e)}function dm(e,n){var a=et();n=n===void 0?null:n;var s=a.memoizedState;if(n!==null&&ou(n,s[1]))return s[0];if(s=e(),Ka){sn(!0);try{e()}finally{sn(!1)}}return a.memoizedState=[s,n],s}function vu(e,n,a){return a===void 0||(jn&1073741824)!==0&&(ze&261930)===0?e.memoizedState=n:(e.memoizedState=a,e=fg(),Ee.lanes|=e,ua|=e,a)}function fm(e,n,a,s){return Rt(a,n)?a:Li.current!==null?(e=vu(e,a,s),Rt(e,n)||(it=!0),e):(jn&42)===0||(jn&1073741824)!==0&&(ze&261930)===0?(it=!0,e.memoizedState=a):(e=fg(),Ee.lanes|=e,ua|=e,n)}function hm(e,n,a,s,c){var f=H.p;H.p=f!==0&&8>f?f:8;var b=z.T,N={};z.T=N,Su(e,!1,n,a);try{var O=c(),Q=z.S;if(Q!==null&&Q(N,O),O!==null&&typeof O=="object"&&typeof O.then=="function"){var ie=Ab(O,s);Yl(e,n,ie,Bt(e))}else Yl(e,n,s,Bt(e))}catch(re){Yl(e,n,{then:function(){},status:"rejected",reason:re},Bt())}finally{H.p=f,b!==null&&N.types!==null&&(b.types=N.types),z.T=b}}function Ob(){}function xu(e,n,a,s){if(e.tag!==5)throw Error(o(476));var c=mm(e).queue;hm(e,c,n,G,a===null?Ob:function(){return gm(e),a(s)})}function mm(e){var n=e.memoizedState;if(n!==null)return n;n={memoizedState:G,baseState:G,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:zn,lastRenderedState:G},next:null};var a={};return n.next={memoizedState:a,baseState:a,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:zn,lastRenderedState:a},next:null},e.memoizedState=n,e=e.alternate,e!==null&&(e.memoizedState=n),n}function gm(e){var n=mm(e);n.next===null&&(n=e.alternate.memoizedState),Yl(e,n.next.queue,{},Bt())}function bu(){return mt(oo)}function pm(){return et().memoizedState}function ym(){return et().memoizedState}function Hb(e){for(var n=e.return;n!==null;){switch(n.tag){case 24:case 3:var a=Bt();e=ia(a);var s=la(n,e,a);s!==null&&(Mt(s,n,a),Bl(s,n,a)),n={cache:Fc()},e.payload=n;return}n=n.return}}function Ib(e,n,a){var s=Bt();a={lane:s,revertLane:0,gesture:null,action:a,hasEagerState:!1,eagerState:null,next:null},Rs(e)?xm(n,a):(a=Bc(e,n,a,s),a!==null&&(Mt(a,e,s),bm(a,n,s)))}function vm(e,n,a){var s=Bt();Yl(e,n,a,s)}function Yl(e,n,a,s){var c={lane:s,revertLane:0,gesture:null,action:a,hasEagerState:!1,eagerState:null,next:null};if(Rs(e))xm(n,c);else{var f=e.alternate;if(e.lanes===0&&(f===null||f.lanes===0)&&(f=n.lastRenderedReducer,f!==null))try{var b=n.lastRenderedState,N=f(b,a);if(c.hasEagerState=!0,c.eagerState=N,Rt(N,b))return fs(e,n,c,0),Xe===null&&ds(),!1}catch{}if(a=Bc(e,n,c,s),a!==null)return Mt(a,e,s),bm(a,n,s),!0}return!1}function Su(e,n,a,s){if(s={lane:2,revertLane:Wu(),gesture:null,action:s,hasEagerState:!1,eagerState:null,next:null},Rs(e)){if(n)throw Error(o(479))}else n=Bc(e,a,s,2),n!==null&&Mt(n,e,2)}function Rs(e){var n=e.alternate;return e===Ee||n!==null&&n===Ee}function xm(e,n){Bi=Es=!0;var a=e.pending;a===null?n.next=n:(n.next=a.next,a.next=n),e.pending=n}function bm(e,n,a){if((a&4194048)!==0){var s=n.lanes;s&=e.pendingLanes,a|=s,n.lanes=a,Xo(e,a)}}var Vl={readContext:mt,use:As,useCallback:Pe,useContext:Pe,useEffect:Pe,useImperativeHandle:Pe,useLayoutEffect:Pe,useInsertionEffect:Pe,useMemo:Pe,useReducer:Pe,useRef:Pe,useState:Pe,useDebugValue:Pe,useDeferredValue:Pe,useTransition:Pe,useSyncExternalStore:Pe,useId:Pe,useHostTransitionStatus:Pe,useFormState:Pe,useActionState:Pe,useOptimistic:Pe,useMemoCache:Pe,useCacheRefresh:Pe};Vl.useEffectEvent=Pe;var Sm={readContext:mt,use:As,useCallback:function(e,n){return St().memoizedState=[e,n===void 0?null:n],e},useContext:mt,useEffect:im,useImperativeHandle:function(e,n,a){a=a!=null?a.concat([e]):null,js(4194308,4,rm.bind(null,n,e),a)},useLayoutEffect:function(e,n){return js(4194308,4,e,n)},useInsertionEffect:function(e,n){js(4,2,e,n)},useMemo:function(e,n){var a=St();n=n===void 0?null:n;var s=e();if(Ka){sn(!0);try{e()}finally{sn(!1)}}return a.memoizedState=[s,n],s},useReducer:function(e,n,a){var s=St();if(a!==void 0){var c=a(n);if(Ka){sn(!0);try{a(n)}finally{sn(!1)}}}else c=n;return s.memoizedState=s.baseState=c,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:c},s.queue=e,e=e.dispatch=Ib.bind(null,Ee,e),[s.memoizedState,e]},useRef:function(e){var n=St();return e={current:e},n.memoizedState=e},useState:function(e){e=mu(e);var n=e.queue,a=vm.bind(null,Ee,n);return n.dispatch=a,[e.memoizedState,a]},useDebugValue:yu,useDeferredValue:function(e,n){var a=St();return vu(a,e,n)},useTransition:function(){var e=mu(!1);return e=hm.bind(null,Ee,e.queue,!0,!1),St().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,n,a){var s=Ee,c=St();if(De){if(a===void 0)throw Error(o(407));a=a()}else{if(a=n(),Xe===null)throw Error(o(349));(ze&127)!==0||qh(s,n,a)}c.memoizedState=a;var f={value:a,getSnapshot:n};return c.queue=f,im(Vh.bind(null,s,f,e),[e]),s.flags|=2048,Ui(9,{destroy:void 0},Yh.bind(null,s,f,a,n),null),a},useId:function(){var e=St(),n=Xe.identifierPrefix;if(De){var a=un,s=cn;a=(s&~(1<<32-bt(s)-1)).toString(32)+a,n="_"+n+"R_"+a,a=Cs++,0<a&&(n+="H"+a.toString(32)),n+="_"}else a=Mb++,n="_"+n+"r_"+a.toString(32)+"_";return e.memoizedState=n},useHostTransitionStatus:bu,useFormState:Wh,useActionState:Wh,useOptimistic:function(e){var n=St();n.memoizedState=n.baseState=e;var a={pending:null,lanes:0,dispatch:null,lastRenderedReducer:null,lastRenderedState:null};return n.queue=a,n=Su.bind(null,Ee,!0,a),a.dispatch=n,[e,n]},useMemoCache:du,useCacheRefresh:function(){return St().memoizedState=Hb.bind(null,Ee)},useEffectEvent:function(e){var n=St(),a={impl:e};return n.memoizedState=a,function(){if((Le&2)!==0)throw Error(o(440));return a.impl.apply(void 0,arguments)}}},wu={readContext:mt,use:As,useCallback:um,useContext:mt,useEffect:pu,useImperativeHandle:cm,useInsertionEffect:om,useLayoutEffect:sm,useMemo:dm,useReducer:Ms,useRef:am,useState:function(){return Ms(zn)},useDebugValue:yu,useDeferredValue:function(e,n){var a=et();return fm(a,qe.memoizedState,e,n)},useTransition:function(){var e=Ms(zn)[0],n=et().memoizedState;return[typeof e=="boolean"?e:ql(e),n]},useSyncExternalStore:Gh,useId:pm,useHostTransitionStatus:bu,useFormState:em,useActionState:em,useOptimistic:function(e,n){var a=et();return Zh(a,qe,e,n)},useMemoCache:du,useCacheRefresh:ym};wu.useEffectEvent=lm;var wm={readContext:mt,use:As,useCallback:um,useContext:mt,useEffect:pu,useImperativeHandle:cm,useInsertionEffect:om,useLayoutEffect:sm,useMemo:dm,useReducer:hu,useRef:am,useState:function(){return hu(zn)},useDebugValue:yu,useDeferredValue:function(e,n){var a=et();return qe===null?vu(a,e,n):fm(a,qe.memoizedState,e,n)},useTransition:function(){var e=hu(zn)[0],n=et().memoizedState;return[typeof e=="boolean"?e:ql(e),n]},useSyncExternalStore:Gh,useId:pm,useHostTransitionStatus:bu,useFormState:nm,useActionState:nm,useOptimistic:function(e,n){var a=et();return qe!==null?Zh(a,qe,e,n):(a.baseState=e,[e,a.queue.dispatch])},useMemoCache:du,useCacheRefresh:ym};wm.useEffectEvent=lm;function Nu(e,n,a,s){n=e.memoizedState,a=a(s,n),a=a==null?n:v({},n,a),e.memoizedState=a,e.lanes===0&&(e.updateQueue.baseState=a)}var _u={enqueueSetState:function(e,n,a){e=e._reactInternals;var s=Bt(),c=ia(s);c.payload=n,a!=null&&(c.callback=a),n=la(e,c,s),n!==null&&(Mt(n,e,s),Bl(n,e,s))},enqueueReplaceState:function(e,n,a){e=e._reactInternals;var s=Bt(),c=ia(s);c.tag=1,c.payload=n,a!=null&&(c.callback=a),n=la(e,c,s),n!==null&&(Mt(n,e,s),Bl(n,e,s))},enqueueForceUpdate:function(e,n){e=e._reactInternals;var a=Bt(),s=ia(a);s.tag=2,n!=null&&(s.callback=n),n=la(e,s,a),n!==null&&(Mt(n,e,a),Bl(n,e,a))}};function Nm(e,n,a,s,c,f,b){return e=e.stateNode,typeof e.shouldComponentUpdate=="function"?e.shouldComponentUpdate(s,f,b):n.prototype&&n.prototype.isPureReactComponent?!jl(a,s)||!jl(c,f):!0}function _m(e,n,a,s){e=n.state,typeof n.componentWillReceiveProps=="function"&&n.componentWillReceiveProps(a,s),typeof n.UNSAFE_componentWillReceiveProps=="function"&&n.UNSAFE_componentWillReceiveProps(a,s),n.state!==e&&_u.enqueueReplaceState(n,n.state,null)}function Fa(e,n){var a=n;if("ref"in n){a={};for(var s in n)s!=="ref"&&(a[s]=n[s])}if(e=e.defaultProps){a===n&&(a=v({},a));for(var c in e)a[c]===void 0&&(a[c]=e[c])}return a}function Em(e){us(e)}function Cm(e){console.error(e)}function Tm(e){us(e)}function Ds(e,n){try{var a=e.onUncaughtError;a(n.value,{componentStack:n.stack})}catch(s){setTimeout(function(){throw s})}}function Am(e,n,a){try{var s=e.onCaughtError;s(a.value,{componentStack:a.stack,errorBoundary:n.tag===1?n.stateNode:null})}catch(c){setTimeout(function(){throw c})}}function Eu(e,n,a){return a=ia(a),a.tag=3,a.payload={element:null},a.callback=function(){Ds(e,n)},a}function Mm(e){return e=ia(e),e.tag=3,e}function jm(e,n,a,s){var c=a.type.getDerivedStateFromError;if(typeof c=="function"){var f=s.value;e.payload=function(){return c(f)},e.callback=function(){Am(n,a,s)}}var b=a.stateNode;b!==null&&typeof b.componentDidCatch=="function"&&(e.callback=function(){Am(n,a,s),typeof c!="function"&&(da===null?da=new Set([this]):da.add(this));var N=s.stack;this.componentDidCatch(s.value,{componentStack:N!==null?N:""})})}function Lb(e,n,a,s,c){if(a.flags|=32768,s!==null&&typeof s=="object"&&typeof s.then=="function"){if(n=a.alternate,n!==null&&Ri(n,a,c,!0),a=Ot.current,a!==null){switch(a.tag){case 31:case 13:return $t===null?Xs():a.alternate===null&&Je===0&&(Je=3),a.flags&=-257,a.flags|=65536,a.lanes=c,s===bs?a.flags|=16384:(n=a.updateQueue,n===null?a.updateQueue=new Set([s]):n.add(s),Qu(e,s,c)),!1;case 22:return a.flags|=65536,s===bs?a.flags|=16384:(n=a.updateQueue,n===null?(n={transitions:null,markerInstances:null,retryQueue:new Set([s])},a.updateQueue=n):(a=n.retryQueue,a===null?n.retryQueue=new Set([s]):a.add(s)),Qu(e,s,c)),!1}throw Error(o(435,a.tag))}return Qu(e,s,c),Xs(),!1}if(De)return n=Ot.current,n!==null?((n.flags&65536)===0&&(n.flags|=256),n.flags|=65536,n.lanes=c,s!==Vc&&(e=Error(o(422),{cause:s}),Dl(qt(e,a)))):(s!==Vc&&(n=Error(o(423),{cause:s}),Dl(qt(n,a))),e=e.current.alternate,e.flags|=65536,c&=-c,e.lanes|=c,s=qt(s,a),c=Eu(e.stateNode,s,c),tu(e,c),Je!==4&&(Je=2)),!1;var f=Error(o(520),{cause:s});if(f=qt(f,a),Jl===null?Jl=[f]:Jl.push(f),Je!==4&&(Je=2),n===null)return!0;s=qt(s,a),a=n;do{switch(a.tag){case 3:return a.flags|=65536,e=c&-c,a.lanes|=e,e=Eu(a.stateNode,s,e),tu(a,e),!1;case 1:if(n=a.type,f=a.stateNode,(a.flags&128)===0&&(typeof n.getDerivedStateFromError=="function"||f!==null&&typeof f.componentDidCatch=="function"&&(da===null||!da.has(f))))return a.flags|=65536,c&=-c,a.lanes|=c,c=Mm(c),jm(c,e,a,s),tu(a,c),!1}a=a.return}while(a!==null);return!1}var Cu=Error(o(461)),it=!1;function gt(e,n,a,s){n.child=e===null?Oh(n,null,a,s):Za(n,e.child,a,s)}function zm(e,n,a,s,c){a=a.render;var f=n.ref;if("ref"in s){var b={};for(var N in s)N!=="ref"&&(b[N]=s[N])}else b=s;return Ya(n),s=su(e,n,a,b,f,c),N=ru(),e!==null&&!it?(cu(e,n,c),Rn(e,n,c)):(De&&N&&qc(n),n.flags|=1,gt(e,n,s,c),n.child)}function Rm(e,n,a,s,c){if(e===null){var f=a.type;return typeof f=="function"&&!kc(f)&&f.defaultProps===void 0&&a.compare===null?(n.tag=15,n.type=f,Dm(e,n,f,s,c)):(e=ms(a.type,null,s,n,n.mode,c),e.ref=n.ref,e.return=n,n.child=e)}if(f=e.child,!Ou(e,c)){var b=f.memoizedProps;if(a=a.compare,a=a!==null?a:jl,a(b,s)&&e.ref===n.ref)return Rn(e,n,c)}return n.flags|=1,e=Cn(f,s),e.ref=n.ref,e.return=n,n.child=e}function Dm(e,n,a,s,c){if(e!==null){var f=e.memoizedProps;if(jl(f,s)&&e.ref===n.ref)if(it=!1,n.pendingProps=s=f,Ou(e,c))(e.flags&131072)!==0&&(it=!0);else return n.lanes=e.lanes,Rn(e,n,c)}return Tu(e,n,a,s,c)}function Om(e,n,a,s){var c=s.children,f=e!==null?e.memoizedState:null;if(e===null&&n.stateNode===null&&(n.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),s.mode==="hidden"){if((n.flags&128)!==0){if(f=f!==null?f.baseLanes|a:a,e!==null){for(s=n.child=e.child,c=0;s!==null;)c=c|s.lanes|s.childLanes,s=s.sibling;s=c&~f}else s=0,n.child=null;return Hm(e,n,f,a,s)}if((a&536870912)!==0)n.memoizedState={baseLanes:0,cachePool:null},e!==null&&vs(n,f!==null?f.cachePool:null),f!==null?Lh(n,f):au(),Bh(n);else return s=n.lanes=536870912,Hm(e,n,f!==null?f.baseLanes|a:a,a,s)}else f!==null?(vs(n,f.cachePool),Lh(n,f),sa(),n.memoizedState=null):(e!==null&&vs(n,null),au(),sa());return gt(e,n,c,a),n.child}function Xl(e,n){return e!==null&&e.tag===22||n.stateNode!==null||(n.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),n.sibling}function Hm(e,n,a,s,c){var f=Pc();return f=f===null?null:{parent:nt._currentValue,pool:f},n.memoizedState={baseLanes:a,cachePool:f},e!==null&&vs(n,null),au(),Bh(n),e!==null&&Ri(e,n,s,!0),n.childLanes=c,null}function Os(e,n){return n=Is({mode:n.mode,children:n.children},e.mode),n.ref=e.ref,e.child=n,n.return=e,n}function Im(e,n,a){return Za(n,e.child,null,a),e=Os(n,n.pendingProps),e.flags|=2,Ht(n),n.memoizedState=null,e}function Bb(e,n,a){var s=n.pendingProps,c=(n.flags&128)!==0;if(n.flags&=-129,e===null){if(De){if(s.mode==="hidden")return e=Os(n,s),n.lanes=536870912,Xl(null,e);if(lu(n),(e=$e)?(e=Kg(e,Xt),e=e!==null&&e.data==="&"?e:null,e!==null&&(n.memoizedState={dehydrated:e,treeContext:Wn!==null?{id:cn,overflow:un}:null,retryLane:536870912,hydrationErrors:null},a=xh(e),a.return=n,n.child=a,ht=n,$e=null)):e=null,e===null)throw ta(n);return n.lanes=536870912,null}return Os(n,s)}var f=e.memoizedState;if(f!==null){var b=f.dehydrated;if(lu(n),c)if(n.flags&256)n.flags&=-257,n=Im(e,n,a);else if(n.memoizedState!==null)n.child=e.child,n.flags|=128,n=null;else throw Error(o(558));else if(it||Ri(e,n,a,!1),c=(a&e.childLanes)!==0,it||c){if(s=Xe,s!==null&&(b=$o(s,a),b!==0&&b!==f.retryLane))throw f.retryLane=b,ka(e,b),Mt(s,e,b),Cu;Xs(),n=Im(e,n,a)}else e=f.treeContext,$e=Zt(b.nextSibling),ht=n,De=!0,ea=null,Xt=!1,e!==null&&wh(n,e),n=Os(n,s),n.flags|=4096;return n}return e=Cn(e.child,{mode:s.mode,children:s.children}),e.ref=n.ref,n.child=e,e.return=n,e}function Hs(e,n){var a=n.ref;if(a===null)e!==null&&e.ref!==null&&(n.flags|=4194816);else{if(typeof a!="function"&&typeof a!="object")throw Error(o(284));(e===null||e.ref!==a)&&(n.flags|=4194816)}}function Tu(e,n,a,s,c){return Ya(n),a=su(e,n,a,s,void 0,c),s=ru(),e!==null&&!it?(cu(e,n,c),Rn(e,n,c)):(De&&s&&qc(n),n.flags|=1,gt(e,n,a,c),n.child)}function Lm(e,n,a,s,c,f){return Ya(n),n.updateQueue=null,a=Uh(n,s,a,c),kh(e),s=ru(),e!==null&&!it?(cu(e,n,f),Rn(e,n,f)):(De&&s&&qc(n),n.flags|=1,gt(e,n,a,f),n.child)}function Bm(e,n,a,s,c){if(Ya(n),n.stateNode===null){var f=Ai,b=a.contextType;typeof b=="object"&&b!==null&&(f=mt(b)),f=new a(s,f),n.memoizedState=f.state!==null&&f.state!==void 0?f.state:null,f.updater=_u,n.stateNode=f,f._reactInternals=n,f=n.stateNode,f.props=s,f.state=n.memoizedState,f.refs={},Wc(n),b=a.contextType,f.context=typeof b=="object"&&b!==null?mt(b):Ai,f.state=n.memoizedState,b=a.getDerivedStateFromProps,typeof b=="function"&&(Nu(n,a,b,s),f.state=n.memoizedState),typeof a.getDerivedStateFromProps=="function"||typeof f.getSnapshotBeforeUpdate=="function"||typeof f.UNSAFE_componentWillMount!="function"&&typeof f.componentWillMount!="function"||(b=f.state,typeof f.componentWillMount=="function"&&f.componentWillMount(),typeof f.UNSAFE_componentWillMount=="function"&&f.UNSAFE_componentWillMount(),b!==f.state&&_u.enqueueReplaceState(f,f.state,null),Ul(n,s,f,c),kl(),f.state=n.memoizedState),typeof f.componentDidMount=="function"&&(n.flags|=4194308),s=!0}else if(e===null){f=n.stateNode;var N=n.memoizedProps,O=Fa(a,N);f.props=O;var Q=f.context,ie=a.contextType;b=Ai,typeof ie=="object"&&ie!==null&&(b=mt(ie));var re=a.getDerivedStateFromProps;ie=typeof re=="function"||typeof f.getSnapshotBeforeUpdate=="function",N=n.pendingProps!==N,ie||typeof f.UNSAFE_componentWillReceiveProps!="function"&&typeof f.componentWillReceiveProps!="function"||(N||Q!==b)&&_m(n,f,s,b),aa=!1;var P=n.memoizedState;f.state=P,Ul(n,s,f,c),kl(),Q=n.memoizedState,N||P!==Q||aa?(typeof re=="function"&&(Nu(n,a,re,s),Q=n.memoizedState),(O=aa||Nm(n,a,O,s,P,Q,b))?(ie||typeof f.UNSAFE_componentWillMount!="function"&&typeof f.componentWillMount!="function"||(typeof f.componentWillMount=="function"&&f.componentWillMount(),typeof f.UNSAFE_componentWillMount=="function"&&f.UNSAFE_componentWillMount()),typeof f.componentDidMount=="function"&&(n.flags|=4194308)):(typeof f.componentDidMount=="function"&&(n.flags|=4194308),n.memoizedProps=s,n.memoizedState=Q),f.props=s,f.state=Q,f.context=b,s=O):(typeof f.componentDidMount=="function"&&(n.flags|=4194308),s=!1)}else{f=n.stateNode,eu(e,n),b=n.memoizedProps,ie=Fa(a,b),f.props=ie,re=n.pendingProps,P=f.context,Q=a.contextType,O=Ai,typeof Q=="object"&&Q!==null&&(O=mt(Q)),N=a.getDerivedStateFromProps,(Q=typeof N=="function"||typeof f.getSnapshotBeforeUpdate=="function")||typeof f.UNSAFE_componentWillReceiveProps!="function"&&typeof f.componentWillReceiveProps!="function"||(b!==re||P!==O)&&_m(n,f,s,O),aa=!1,P=n.memoizedState,f.state=P,Ul(n,s,f,c),kl();var ee=n.memoizedState;b!==re||P!==ee||aa||e!==null&&e.dependencies!==null&&ps(e.dependencies)?(typeof N=="function"&&(Nu(n,a,N,s),ee=n.memoizedState),(ie=aa||Nm(n,a,ie,s,P,ee,O)||e!==null&&e.dependencies!==null&&ps(e.dependencies))?(Q||typeof f.UNSAFE_componentWillUpdate!="function"&&typeof f.componentWillUpdate!="function"||(typeof f.componentWillUpdate=="function"&&f.componentWillUpdate(s,ee,O),typeof f.UNSAFE_componentWillUpdate=="function"&&f.UNSAFE_componentWillUpdate(s,ee,O)),typeof f.componentDidUpdate=="function"&&(n.flags|=4),typeof f.getSnapshotBeforeUpdate=="function"&&(n.flags|=1024)):(typeof f.componentDidUpdate!="function"||b===e.memoizedProps&&P===e.memoizedState||(n.flags|=4),typeof f.getSnapshotBeforeUpdate!="function"||b===e.memoizedProps&&P===e.memoizedState||(n.flags|=1024),n.memoizedProps=s,n.memoizedState=ee),f.props=s,f.state=ee,f.context=O,s=ie):(typeof f.componentDidUpdate!="function"||b===e.memoizedProps&&P===e.memoizedState||(n.flags|=4),typeof f.getSnapshotBeforeUpdate!="function"||b===e.memoizedProps&&P===e.memoizedState||(n.flags|=1024),s=!1)}return f=s,Hs(e,n),s=(n.flags&128)!==0,f||s?(f=n.stateNode,a=s&&typeof a.getDerivedStateFromError!="function"?null:f.render(),n.flags|=1,e!==null&&s?(n.child=Za(n,e.child,null,c),n.child=Za(n,null,a,c)):gt(e,n,a,c),n.memoizedState=f.state,e=n.child):e=Rn(e,n,c),e}function km(e,n,a,s){return Ga(),n.flags|=256,gt(e,n,a,s),n.child}var Au={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null};function Mu(e){return{baseLanes:e,cachePool:Ah()}}function ju(e,n,a){return e=e!==null?e.childLanes&~a:0,n&&(e|=Lt),e}function Um(e,n,a){var s=n.pendingProps,c=!1,f=(n.flags&128)!==0,b;if((b=f)||(b=e!==null&&e.memoizedState===null?!1:(We.current&2)!==0),b&&(c=!0,n.flags&=-129),b=(n.flags&32)!==0,n.flags&=-33,e===null){if(De){if(c?oa(n):sa(),(e=$e)?(e=Kg(e,Xt),e=e!==null&&e.data!=="&"?e:null,e!==null&&(n.memoizedState={dehydrated:e,treeContext:Wn!==null?{id:cn,overflow:un}:null,retryLane:536870912,hydrationErrors:null},a=xh(e),a.return=n,n.child=a,ht=n,$e=null)):e=null,e===null)throw ta(n);return fd(e)?n.lanes=32:n.lanes=536870912,null}var N=s.children;return s=s.fallback,c?(sa(),c=n.mode,N=Is({mode:"hidden",children:N},c),s=Ua(s,c,a,null),N.return=n,s.return=n,N.sibling=s,n.child=N,s=n.child,s.memoizedState=Mu(a),s.childLanes=ju(e,b,a),n.memoizedState=Au,Xl(null,s)):(oa(n),zu(n,N))}var O=e.memoizedState;if(O!==null&&(N=O.dehydrated,N!==null)){if(f)n.flags&256?(oa(n),n.flags&=-257,n=Ru(e,n,a)):n.memoizedState!==null?(sa(),n.child=e.child,n.flags|=128,n=null):(sa(),N=s.fallback,c=n.mode,s=Is({mode:"visible",children:s.children},c),N=Ua(N,c,a,null),N.flags|=2,s.return=n,N.return=n,s.sibling=N,n.child=s,Za(n,e.child,null,a),s=n.child,s.memoizedState=Mu(a),s.childLanes=ju(e,b,a),n.memoizedState=Au,n=Xl(null,s));else if(oa(n),fd(N)){if(b=N.nextSibling&&N.nextSibling.dataset,b)var Q=b.dgst;b=Q,s=Error(o(419)),s.stack="",s.digest=b,Dl({value:s,source:null,stack:null}),n=Ru(e,n,a)}else if(it||Ri(e,n,a,!1),b=(a&e.childLanes)!==0,it||b){if(b=Xe,b!==null&&(s=$o(b,a),s!==0&&s!==O.retryLane))throw O.retryLane=s,ka(e,s),Mt(b,e,s),Cu;dd(N)||Xs(),n=Ru(e,n,a)}else dd(N)?(n.flags|=192,n.child=e.child,n=null):(e=O.treeContext,$e=Zt(N.nextSibling),ht=n,De=!0,ea=null,Xt=!1,e!==null&&wh(n,e),n=zu(n,s.children),n.flags|=4096);return n}return c?(sa(),N=s.fallback,c=n.mode,O=e.child,Q=O.sibling,s=Cn(O,{mode:"hidden",children:s.children}),s.subtreeFlags=O.subtreeFlags&65011712,Q!==null?N=Cn(Q,N):(N=Ua(N,c,a,null),N.flags|=2),N.return=n,s.return=n,s.sibling=N,n.child=s,Xl(null,s),s=n.child,N=e.child.memoizedState,N===null?N=Mu(a):(c=N.cachePool,c!==null?(O=nt._currentValue,c=c.parent!==O?{parent:O,pool:O}:c):c=Ah(),N={baseLanes:N.baseLanes|a,cachePool:c}),s.memoizedState=N,s.childLanes=ju(e,b,a),n.memoizedState=Au,Xl(e.child,s)):(oa(n),a=e.child,e=a.sibling,a=Cn(a,{mode:"visible",children:s.children}),a.return=n,a.sibling=null,e!==null&&(b=n.deletions,b===null?(n.deletions=[e],n.flags|=16):b.push(e)),n.child=a,n.memoizedState=null,a)}function zu(e,n){return n=Is({mode:"visible",children:n},e.mode),n.return=e,e.child=n}function Is(e,n){return e=Dt(22,e,null,n),e.lanes=0,e}function Ru(e,n,a){return Za(n,e.child,null,a),e=zu(n,n.pendingProps.children),e.flags|=2,n.memoizedState=null,e}function Gm(e,n,a){e.lanes|=n;var s=e.alternate;s!==null&&(s.lanes|=n),Zc(e.return,n,a)}function Du(e,n,a,s,c,f){var b=e.memoizedState;b===null?e.memoizedState={isBackwards:n,rendering:null,renderingStartTime:0,last:s,tail:a,tailMode:c,treeForkCount:f}:(b.isBackwards=n,b.rendering=null,b.renderingStartTime=0,b.last=s,b.tail=a,b.tailMode=c,b.treeForkCount=f)}function qm(e,n,a){var s=n.pendingProps,c=s.revealOrder,f=s.tail;s=s.children;var b=We.current,N=(b&2)!==0;if(N?(b=b&1|2,n.flags|=128):b&=1,ne(We,b),gt(e,n,s,a),s=De?Rl:0,!N&&e!==null&&(e.flags&128)!==0)e:for(e=n.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&Gm(e,a,n);else if(e.tag===19)Gm(e,a,n);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===n)break e;for(;e.sibling===null;){if(e.return===null||e.return===n)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}switch(c){case"forwards":for(a=n.child,c=null;a!==null;)e=a.alternate,e!==null&&_s(e)===null&&(c=a),a=a.sibling;a=c,a===null?(c=n.child,n.child=null):(c=a.sibling,a.sibling=null),Du(n,!1,c,a,f,s);break;case"backwards":case"unstable_legacy-backwards":for(a=null,c=n.child,n.child=null;c!==null;){if(e=c.alternate,e!==null&&_s(e)===null){n.child=c;break}e=c.sibling,c.sibling=a,a=c,c=e}Du(n,!0,a,null,f,s);break;case"together":Du(n,!1,null,null,void 0,s);break;default:n.memoizedState=null}return n.child}function Rn(e,n,a){if(e!==null&&(n.dependencies=e.dependencies),ua|=n.lanes,(a&n.childLanes)===0)if(e!==null){if(Ri(e,n,a,!1),(a&n.childLanes)===0)return null}else return null;if(e!==null&&n.child!==e.child)throw Error(o(153));if(n.child!==null){for(e=n.child,a=Cn(e,e.pendingProps),n.child=a,a.return=n;e.sibling!==null;)e=e.sibling,a=a.sibling=Cn(e,e.pendingProps),a.return=n;a.sibling=null}return n.child}function Ou(e,n){return(e.lanes&n)!==0?!0:(e=e.dependencies,!!(e!==null&&ps(e)))}function kb(e,n,a){switch(n.tag){case 3:le(n,n.stateNode.containerInfo),na(n,nt,e.memoizedState.cache),Ga();break;case 27:case 5:be(n);break;case 4:le(n,n.stateNode.containerInfo);break;case 10:na(n,n.type,n.memoizedProps.value);break;case 31:if(n.memoizedState!==null)return n.flags|=128,lu(n),null;break;case 13:var s=n.memoizedState;if(s!==null)return s.dehydrated!==null?(oa(n),n.flags|=128,null):(a&n.child.childLanes)!==0?Um(e,n,a):(oa(n),e=Rn(e,n,a),e!==null?e.sibling:null);oa(n);break;case 19:var c=(e.flags&128)!==0;if(s=(a&n.childLanes)!==0,s||(Ri(e,n,a,!1),s=(a&n.childLanes)!==0),c){if(s)return qm(e,n,a);n.flags|=128}if(c=n.memoizedState,c!==null&&(c.rendering=null,c.tail=null,c.lastEffect=null),ne(We,We.current),s)break;return null;case 22:return n.lanes=0,Om(e,n,a,n.pendingProps);case 24:na(n,nt,e.memoizedState.cache)}return Rn(e,n,a)}function Ym(e,n,a){if(e!==null)if(e.memoizedProps!==n.pendingProps)it=!0;else{if(!Ou(e,a)&&(n.flags&128)===0)return it=!1,kb(e,n,a);it=(e.flags&131072)!==0}else it=!1,De&&(n.flags&1048576)!==0&&Sh(n,Rl,n.index);switch(n.lanes=0,n.tag){case 16:e:{var s=n.pendingProps;if(e=Xa(n.elementType),n.type=e,typeof e=="function")kc(e)?(s=Fa(e,s),n.tag=1,n=Bm(null,n,e,s,a)):(n.tag=0,n=Tu(null,n,e,s,a));else{if(e!=null){var c=e.$$typeof;if(c===_){n.tag=11,n=zm(null,n,e,s,a);break e}else if(c===I){n.tag=14,n=Rm(null,n,e,s,a);break e}}throw n=D(e)||e,Error(o(306,n,""))}}return n;case 0:return Tu(e,n,n.type,n.pendingProps,a);case 1:return s=n.type,c=Fa(s,n.pendingProps),Bm(e,n,s,c,a);case 3:e:{if(le(n,n.stateNode.containerInfo),e===null)throw Error(o(387));s=n.pendingProps;var f=n.memoizedState;c=f.element,eu(e,n),Ul(n,s,null,a);var b=n.memoizedState;if(s=b.cache,na(n,nt,s),s!==f.cache&&Kc(n,[nt],a,!0),kl(),s=b.element,f.isDehydrated)if(f={element:s,isDehydrated:!1,cache:b.cache},n.updateQueue.baseState=f,n.memoizedState=f,n.flags&256){n=km(e,n,s,a);break e}else if(s!==c){c=qt(Error(o(424)),n),Dl(c),n=km(e,n,s,a);break e}else for(e=n.stateNode.containerInfo,e.nodeType===9?e=e.body:e=e.nodeName==="HTML"?e.ownerDocument.body:e,$e=Zt(e.firstChild),ht=n,De=!0,ea=null,Xt=!0,a=Oh(n,null,s,a),n.child=a;a;)a.flags=a.flags&-3|4096,a=a.sibling;else{if(Ga(),s===c){n=Rn(e,n,a);break e}gt(e,n,s,a)}n=n.child}return n;case 26:return Hs(e,n),e===null?(a=ep(n.type,null,n.pendingProps,null))?n.memoizedState=a:De||(a=n.type,e=n.pendingProps,s=Js(se.current).createElement(a),s[rt]=n,s[yt]=e,pt(s,a,e),tt(s),n.stateNode=s):n.memoizedState=ep(n.type,e.memoizedProps,n.pendingProps,e.memoizedState),null;case 27:return be(n),e===null&&De&&(s=n.stateNode=Pg(n.type,n.pendingProps,se.current),ht=n,Xt=!0,c=$e,ga(n.type)?(hd=c,$e=Zt(s.firstChild)):$e=c),gt(e,n,n.pendingProps.children,a),Hs(e,n),e===null&&(n.flags|=4194304),n.child;case 5:return e===null&&De&&((c=s=$e)&&(s=gS(s,n.type,n.pendingProps,Xt),s!==null?(n.stateNode=s,ht=n,$e=Zt(s.firstChild),Xt=!1,c=!0):c=!1),c||ta(n)),be(n),c=n.type,f=n.pendingProps,b=e!==null?e.memoizedProps:null,s=f.children,rd(c,f)?s=null:b!==null&&rd(c,b)&&(n.flags|=32),n.memoizedState!==null&&(c=su(e,n,jb,null,null,a),oo._currentValue=c),Hs(e,n),gt(e,n,s,a),n.child;case 6:return e===null&&De&&((e=a=$e)&&(a=pS(a,n.pendingProps,Xt),a!==null?(n.stateNode=a,ht=n,$e=null,e=!0):e=!1),e||ta(n)),null;case 13:return Um(e,n,a);case 4:return le(n,n.stateNode.containerInfo),s=n.pendingProps,e===null?n.child=Za(n,null,s,a):gt(e,n,s,a),n.child;case 11:return zm(e,n,n.type,n.pendingProps,a);case 7:return gt(e,n,n.pendingProps,a),n.child;case 8:return gt(e,n,n.pendingProps.children,a),n.child;case 12:return gt(e,n,n.pendingProps.children,a),n.child;case 10:return s=n.pendingProps,na(n,n.type,s.value),gt(e,n,s.children,a),n.child;case 9:return c=n.type._context,s=n.pendingProps.children,Ya(n),c=mt(c),s=s(c),n.flags|=1,gt(e,n,s,a),n.child;case 14:return Rm(e,n,n.type,n.pendingProps,a);case 15:return Dm(e,n,n.type,n.pendingProps,a);case 19:return qm(e,n,a);case 31:return Bb(e,n,a);case 22:return Om(e,n,a,n.pendingProps);case 24:return Ya(n),s=mt(nt),e===null?(c=Pc(),c===null&&(c=Xe,f=Fc(),c.pooledCache=f,f.refCount++,f!==null&&(c.pooledCacheLanes|=a),c=f),n.memoizedState={parent:s,cache:c},Wc(n),na(n,nt,c)):((e.lanes&a)!==0&&(eu(e,n),Ul(n,null,null,a),kl()),c=e.memoizedState,f=n.memoizedState,c.parent!==s?(c={parent:s,cache:s},n.memoizedState=c,n.lanes===0&&(n.memoizedState=n.updateQueue.baseState=c),na(n,nt,s)):(s=f.cache,na(n,nt,s),s!==c.cache&&Kc(n,[nt],a,!0))),gt(e,n,n.pendingProps.children,a),n.child;case 29:throw n.pendingProps}throw Error(o(156,n.tag))}function Dn(e){e.flags|=4}function Hu(e,n,a,s,c){if((n=(e.mode&32)!==0)&&(n=!1),n){if(e.flags|=16777216,(c&335544128)===c)if(e.stateNode.complete)e.flags|=8192;else if(pg())e.flags|=8192;else throw $a=bs,Jc}else e.flags&=-16777217}function Vm(e,n){if(n.type!=="stylesheet"||(n.state.loading&4)!==0)e.flags&=-16777217;else if(e.flags|=16777216,!lp(n))if(pg())e.flags|=8192;else throw $a=bs,Jc}function Ls(e,n){n!==null&&(e.flags|=4),e.flags&16384&&(n=e.tag!==22?Yo():536870912,e.lanes|=n,Vi|=n)}function $l(e,n){if(!De)switch(e.tailMode){case"hidden":n=e.tail;for(var a=null;n!==null;)n.alternate!==null&&(a=n),n=n.sibling;a===null?e.tail=null:a.sibling=null;break;case"collapsed":a=e.tail;for(var s=null;a!==null;)a.alternate!==null&&(s=a),a=a.sibling;s===null?n||e.tail===null?e.tail=null:e.tail.sibling=null:s.sibling=null}}function Ze(e){var n=e.alternate!==null&&e.alternate.child===e.child,a=0,s=0;if(n)for(var c=e.child;c!==null;)a|=c.lanes|c.childLanes,s|=c.subtreeFlags&65011712,s|=c.flags&65011712,c.return=e,c=c.sibling;else for(c=e.child;c!==null;)a|=c.lanes|c.childLanes,s|=c.subtreeFlags,s|=c.flags,c.return=e,c=c.sibling;return e.subtreeFlags|=s,e.childLanes=a,n}function Ub(e,n,a){var s=n.pendingProps;switch(Yc(n),n.tag){case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Ze(n),null;case 1:return Ze(n),null;case 3:return a=n.stateNode,s=null,e!==null&&(s=e.memoizedState.cache),n.memoizedState.cache!==s&&(n.flags|=2048),Mn(nt),fe(),a.pendingContext&&(a.context=a.pendingContext,a.pendingContext=null),(e===null||e.child===null)&&(zi(n)?Dn(n):e===null||e.memoizedState.isDehydrated&&(n.flags&256)===0||(n.flags|=1024,Xc())),Ze(n),null;case 26:var c=n.type,f=n.memoizedState;return e===null?(Dn(n),f!==null?(Ze(n),Vm(n,f)):(Ze(n),Hu(n,c,null,s,a))):f?f!==e.memoizedState?(Dn(n),Ze(n),Vm(n,f)):(Ze(n),n.flags&=-16777217):(e=e.memoizedProps,e!==s&&Dn(n),Ze(n),Hu(n,c,e,s,a)),null;case 27:if(_e(n),a=se.current,c=n.type,e!==null&&n.stateNode!=null)e.memoizedProps!==s&&Dn(n);else{if(!s){if(n.stateNode===null)throw Error(o(166));return Ze(n),null}e=ae.current,zi(n)?Nh(n):(e=Pg(c,s,a),n.stateNode=e,Dn(n))}return Ze(n),null;case 5:if(_e(n),c=n.type,e!==null&&n.stateNode!=null)e.memoizedProps!==s&&Dn(n);else{if(!s){if(n.stateNode===null)throw Error(o(166));return Ze(n),null}if(f=ae.current,zi(n))Nh(n);else{var b=Js(se.current);switch(f){case 1:f=b.createElementNS("http://www.w3.org/2000/svg",c);break;case 2:f=b.createElementNS("http://www.w3.org/1998/Math/MathML",c);break;default:switch(c){case"svg":f=b.createElementNS("http://www.w3.org/2000/svg",c);break;case"math":f=b.createElementNS("http://www.w3.org/1998/Math/MathML",c);break;case"script":f=b.createElement("div"),f.innerHTML="<script><\/script>",f=f.removeChild(f.firstChild);break;case"select":f=typeof s.is=="string"?b.createElement("select",{is:s.is}):b.createElement("select"),s.multiple?f.multiple=!0:s.size&&(f.size=s.size);break;default:f=typeof s.is=="string"?b.createElement(c,{is:s.is}):b.createElement(c)}}f[rt]=n,f[yt]=s;e:for(b=n.child;b!==null;){if(b.tag===5||b.tag===6)f.appendChild(b.stateNode);else if(b.tag!==4&&b.tag!==27&&b.child!==null){b.child.return=b,b=b.child;continue}if(b===n)break e;for(;b.sibling===null;){if(b.return===null||b.return===n)break e;b=b.return}b.sibling.return=b.return,b=b.sibling}n.stateNode=f;e:switch(pt(f,c,s),c){case"button":case"input":case"select":case"textarea":s=!!s.autoFocus;break e;case"img":s=!0;break e;default:s=!1}s&&Dn(n)}}return Ze(n),Hu(n,n.type,e===null?null:e.memoizedProps,n.pendingProps,a),null;case 6:if(e&&n.stateNode!=null)e.memoizedProps!==s&&Dn(n);else{if(typeof s!="string"&&n.stateNode===null)throw Error(o(166));if(e=se.current,zi(n)){if(e=n.stateNode,a=n.memoizedProps,s=null,c=ht,c!==null)switch(c.tag){case 27:case 5:s=c.memoizedProps}e[rt]=n,e=!!(e.nodeValue===a||s!==null&&s.suppressHydrationWarning===!0||Ug(e.nodeValue,a)),e||ta(n,!0)}else e=Js(e).createTextNode(s),e[rt]=n,n.stateNode=e}return Ze(n),null;case 31:if(a=n.memoizedState,e===null||e.memoizedState!==null){if(s=zi(n),a!==null){if(e===null){if(!s)throw Error(o(318));if(e=n.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(o(557));e[rt]=n}else Ga(),(n.flags&128)===0&&(n.memoizedState=null),n.flags|=4;Ze(n),e=!1}else a=Xc(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=a),e=!0;if(!e)return n.flags&256?(Ht(n),n):(Ht(n),null);if((n.flags&128)!==0)throw Error(o(558))}return Ze(n),null;case 13:if(s=n.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(c=zi(n),s!==null&&s.dehydrated!==null){if(e===null){if(!c)throw Error(o(318));if(c=n.memoizedState,c=c!==null?c.dehydrated:null,!c)throw Error(o(317));c[rt]=n}else Ga(),(n.flags&128)===0&&(n.memoizedState=null),n.flags|=4;Ze(n),c=!1}else c=Xc(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=c),c=!0;if(!c)return n.flags&256?(Ht(n),n):(Ht(n),null)}return Ht(n),(n.flags&128)!==0?(n.lanes=a,n):(a=s!==null,e=e!==null&&e.memoizedState!==null,a&&(s=n.child,c=null,s.alternate!==null&&s.alternate.memoizedState!==null&&s.alternate.memoizedState.cachePool!==null&&(c=s.alternate.memoizedState.cachePool.pool),f=null,s.memoizedState!==null&&s.memoizedState.cachePool!==null&&(f=s.memoizedState.cachePool.pool),f!==c&&(s.flags|=2048)),a!==e&&a&&(n.child.flags|=8192),Ls(n,n.updateQueue),Ze(n),null);case 4:return fe(),e===null&&ad(n.stateNode.containerInfo),Ze(n),null;case 10:return Mn(n.type),Ze(n),null;case 19:if(k(We),s=n.memoizedState,s===null)return Ze(n),null;if(c=(n.flags&128)!==0,f=s.rendering,f===null)if(c)$l(s,!1);else{if(Je!==0||e!==null&&(e.flags&128)!==0)for(e=n.child;e!==null;){if(f=_s(e),f!==null){for(n.flags|=128,$l(s,!1),e=f.updateQueue,n.updateQueue=e,Ls(n,e),n.subtreeFlags=0,e=a,a=n.child;a!==null;)vh(a,e),a=a.sibling;return ne(We,We.current&1|2),De&&Tn(n,s.treeForkCount),n.child}e=e.sibling}s.tail!==null&&ft()>qs&&(n.flags|=128,c=!0,$l(s,!1),n.lanes=4194304)}else{if(!c)if(e=_s(f),e!==null){if(n.flags|=128,c=!0,e=e.updateQueue,n.updateQueue=e,Ls(n,e),$l(s,!0),s.tail===null&&s.tailMode==="hidden"&&!f.alternate&&!De)return Ze(n),null}else 2*ft()-s.renderingStartTime>qs&&a!==536870912&&(n.flags|=128,c=!0,$l(s,!1),n.lanes=4194304);s.isBackwards?(f.sibling=n.child,n.child=f):(e=s.last,e!==null?e.sibling=f:n.child=f,s.last=f)}return s.tail!==null?(e=s.tail,s.rendering=e,s.tail=e.sibling,s.renderingStartTime=ft(),e.sibling=null,a=We.current,ne(We,c?a&1|2:a&1),De&&Tn(n,s.treeForkCount),e):(Ze(n),null);case 22:case 23:return Ht(n),iu(),s=n.memoizedState!==null,e!==null?e.memoizedState!==null!==s&&(n.flags|=8192):s&&(n.flags|=8192),s?(a&536870912)!==0&&(n.flags&128)===0&&(Ze(n),n.subtreeFlags&6&&(n.flags|=8192)):Ze(n),a=n.updateQueue,a!==null&&Ls(n,a.retryQueue),a=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(a=e.memoizedState.cachePool.pool),s=null,n.memoizedState!==null&&n.memoizedState.cachePool!==null&&(s=n.memoizedState.cachePool.pool),s!==a&&(n.flags|=2048),e!==null&&k(Va),null;case 24:return a=null,e!==null&&(a=e.memoizedState.cache),n.memoizedState.cache!==a&&(n.flags|=2048),Mn(nt),Ze(n),null;case 25:return null;case 30:return null}throw Error(o(156,n.tag))}function Gb(e,n){switch(Yc(n),n.tag){case 1:return e=n.flags,e&65536?(n.flags=e&-65537|128,n):null;case 3:return Mn(nt),fe(),e=n.flags,(e&65536)!==0&&(e&128)===0?(n.flags=e&-65537|128,n):null;case 26:case 27:case 5:return _e(n),null;case 31:if(n.memoizedState!==null){if(Ht(n),n.alternate===null)throw Error(o(340));Ga()}return e=n.flags,e&65536?(n.flags=e&-65537|128,n):null;case 13:if(Ht(n),e=n.memoizedState,e!==null&&e.dehydrated!==null){if(n.alternate===null)throw Error(o(340));Ga()}return e=n.flags,e&65536?(n.flags=e&-65537|128,n):null;case 19:return k(We),null;case 4:return fe(),null;case 10:return Mn(n.type),null;case 22:case 23:return Ht(n),iu(),e!==null&&k(Va),e=n.flags,e&65536?(n.flags=e&-65537|128,n):null;case 24:return Mn(nt),null;case 25:return null;default:return null}}function Xm(e,n){switch(Yc(n),n.tag){case 3:Mn(nt),fe();break;case 26:case 27:case 5:_e(n);break;case 4:fe();break;case 31:n.memoizedState!==null&&Ht(n);break;case 13:Ht(n);break;case 19:k(We);break;case 10:Mn(n.type);break;case 22:case 23:Ht(n),iu(),e!==null&&k(Va);break;case 24:Mn(nt)}}function Zl(e,n){try{var a=n.updateQueue,s=a!==null?a.lastEffect:null;if(s!==null){var c=s.next;a=c;do{if((a.tag&e)===e){s=void 0;var f=a.create,b=a.inst;s=f(),b.destroy=s}a=a.next}while(a!==c)}}catch(N){Ue(n,n.return,N)}}function ra(e,n,a){try{var s=n.updateQueue,c=s!==null?s.lastEffect:null;if(c!==null){var f=c.next;s=f;do{if((s.tag&e)===e){var b=s.inst,N=b.destroy;if(N!==void 0){b.destroy=void 0,c=n;var O=a,Q=N;try{Q()}catch(ie){Ue(c,O,ie)}}}s=s.next}while(s!==f)}}catch(ie){Ue(n,n.return,ie)}}function $m(e){var n=e.updateQueue;if(n!==null){var a=e.stateNode;try{Ih(n,a)}catch(s){Ue(e,e.return,s)}}}function Zm(e,n,a){a.props=Fa(e.type,e.memoizedProps),a.state=e.memoizedState;try{a.componentWillUnmount()}catch(s){Ue(e,n,s)}}function Kl(e,n){try{var a=e.ref;if(a!==null){switch(e.tag){case 26:case 27:case 5:var s=e.stateNode;break;case 30:s=e.stateNode;break;default:s=e.stateNode}typeof a=="function"?e.refCleanup=a(s):a.current=s}}catch(c){Ue(e,n,c)}}function dn(e,n){var a=e.ref,s=e.refCleanup;if(a!==null)if(typeof s=="function")try{s()}catch(c){Ue(e,n,c)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof a=="function")try{a(null)}catch(c){Ue(e,n,c)}else a.current=null}function Km(e){var n=e.type,a=e.memoizedProps,s=e.stateNode;try{e:switch(n){case"button":case"input":case"select":case"textarea":a.autoFocus&&s.focus();break e;case"img":a.src?s.src=a.src:a.srcSet&&(s.srcset=a.srcSet)}}catch(c){Ue(e,e.return,c)}}function Iu(e,n,a){try{var s=e.stateNode;cS(s,e.type,a,n),s[yt]=n}catch(c){Ue(e,e.return,c)}}function Fm(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&ga(e.type)||e.tag===4}function Lu(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||Fm(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&&ga(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 Bu(e,n,a){var s=e.tag;if(s===5||s===6)e=e.stateNode,n?(a.nodeType===9?a.body:a.nodeName==="HTML"?a.ownerDocument.body:a).insertBefore(e,n):(n=a.nodeType===9?a.body:a.nodeName==="HTML"?a.ownerDocument.body:a,n.appendChild(e),a=a._reactRootContainer,a!=null||n.onclick!==null||(n.onclick=_n));else if(s!==4&&(s===27&&ga(e.type)&&(a=e.stateNode,n=null),e=e.child,e!==null))for(Bu(e,n,a),e=e.sibling;e!==null;)Bu(e,n,a),e=e.sibling}function Bs(e,n,a){var s=e.tag;if(s===5||s===6)e=e.stateNode,n?a.insertBefore(e,n):a.appendChild(e);else if(s!==4&&(s===27&&ga(e.type)&&(a=e.stateNode),e=e.child,e!==null))for(Bs(e,n,a),e=e.sibling;e!==null;)Bs(e,n,a),e=e.sibling}function Qm(e){var n=e.stateNode,a=e.memoizedProps;try{for(var s=e.type,c=n.attributes;c.length;)n.removeAttributeNode(c[0]);pt(n,s,a),n[rt]=e,n[yt]=a}catch(f){Ue(e,e.return,f)}}var On=!1,lt=!1,ku=!1,Pm=typeof WeakSet=="function"?WeakSet:Set,dt=null;function qb(e,n){if(e=e.containerInfo,od=lr,e=ch(e),Rc(e)){if("selectionStart"in e)var a={start:e.selectionStart,end:e.selectionEnd};else e:{a=(a=e.ownerDocument)&&a.defaultView||window;var s=a.getSelection&&a.getSelection();if(s&&s.rangeCount!==0){a=s.anchorNode;var c=s.anchorOffset,f=s.focusNode;s=s.focusOffset;try{a.nodeType,f.nodeType}catch{a=null;break e}var b=0,N=-1,O=-1,Q=0,ie=0,re=e,P=null;t:for(;;){for(var ee;re!==a||c!==0&&re.nodeType!==3||(N=b+c),re!==f||s!==0&&re.nodeType!==3||(O=b+s),re.nodeType===3&&(b+=re.nodeValue.length),(ee=re.firstChild)!==null;)P=re,re=ee;for(;;){if(re===e)break t;if(P===a&&++Q===c&&(N=b),P===f&&++ie===s&&(O=b),(ee=re.nextSibling)!==null)break;re=P,P=re.parentNode}re=ee}a=N===-1||O===-1?null:{start:N,end:O}}else a=null}a=a||{start:0,end:0}}else a=null;for(sd={focusedElem:e,selectionRange:a},lr=!1,dt=n;dt!==null;)if(n=dt,e=n.child,(n.subtreeFlags&1028)!==0&&e!==null)e.return=n,dt=e;else for(;dt!==null;){switch(n=dt,f=n.alternate,e=n.flags,n.tag){case 0:if((e&4)!==0&&(e=n.updateQueue,e=e!==null?e.events:null,e!==null))for(a=0;a<e.length;a++)c=e[a],c.ref.impl=c.nextImpl;break;case 11:case 15:break;case 1:if((e&1024)!==0&&f!==null){e=void 0,a=n,c=f.memoizedProps,f=f.memoizedState,s=a.stateNode;try{var he=Fa(a.type,c);e=s.getSnapshotBeforeUpdate(he,f),s.__reactInternalSnapshotBeforeUpdate=e}catch(xe){Ue(a,a.return,xe)}}break;case 3:if((e&1024)!==0){if(e=n.stateNode.containerInfo,a=e.nodeType,a===9)ud(e);else if(a===1)switch(e.nodeName){case"HEAD":case"HTML":case"BODY":ud(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(o(163))}if(e=n.sibling,e!==null){e.return=n.return,dt=e;break}dt=n.return}}function Jm(e,n,a){var s=a.flags;switch(a.tag){case 0:case 11:case 15:In(e,a),s&4&&Zl(5,a);break;case 1:if(In(e,a),s&4)if(e=a.stateNode,n===null)try{e.componentDidMount()}catch(b){Ue(a,a.return,b)}else{var c=Fa(a.type,n.memoizedProps);n=n.memoizedState;try{e.componentDidUpdate(c,n,e.__reactInternalSnapshotBeforeUpdate)}catch(b){Ue(a,a.return,b)}}s&64&&$m(a),s&512&&Kl(a,a.return);break;case 3:if(In(e,a),s&64&&(e=a.updateQueue,e!==null)){if(n=null,a.child!==null)switch(a.child.tag){case 27:case 5:n=a.child.stateNode;break;case 1:n=a.child.stateNode}try{Ih(e,n)}catch(b){Ue(a,a.return,b)}}break;case 27:n===null&&s&4&&Qm(a);case 26:case 5:In(e,a),n===null&&s&4&&Km(a),s&512&&Kl(a,a.return);break;case 12:In(e,a);break;case 31:In(e,a),s&4&&tg(e,a);break;case 13:In(e,a),s&4&&ng(e,a),s&64&&(e=a.memoizedState,e!==null&&(e=e.dehydrated,e!==null&&(a=Pb.bind(null,a),yS(e,a))));break;case 22:if(s=a.memoizedState!==null||On,!s){n=n!==null&&n.memoizedState!==null||lt,c=On;var f=lt;On=s,(lt=n)&&!f?Ln(e,a,(a.subtreeFlags&8772)!==0):In(e,a),On=c,lt=f}break;case 30:break;default:In(e,a)}}function Wm(e){var n=e.alternate;n!==null&&(e.alternate=null,Wm(n)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(n=e.stateNode,n!==null&&bl(n)),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 Ke=null,Et=!1;function Hn(e,n,a){for(a=a.child;a!==null;)eg(e,n,a),a=a.sibling}function eg(e,n,a){if(xt&&typeof xt.onCommitFiberUnmount=="function")try{xt.onCommitFiberUnmount(ja,a)}catch{}switch(a.tag){case 26:lt||dn(a,n),Hn(e,n,a),a.memoizedState?a.memoizedState.count--:a.stateNode&&(a=a.stateNode,a.parentNode.removeChild(a));break;case 27:lt||dn(a,n);var s=Ke,c=Et;ga(a.type)&&(Ke=a.stateNode,Et=!1),Hn(e,n,a),ao(a.stateNode),Ke=s,Et=c;break;case 5:lt||dn(a,n);case 6:if(s=Ke,c=Et,Ke=null,Hn(e,n,a),Ke=s,Et=c,Ke!==null)if(Et)try{(Ke.nodeType===9?Ke.body:Ke.nodeName==="HTML"?Ke.ownerDocument.body:Ke).removeChild(a.stateNode)}catch(f){Ue(a,n,f)}else try{Ke.removeChild(a.stateNode)}catch(f){Ue(a,n,f)}break;case 18:Ke!==null&&(Et?(e=Ke,$g(e.nodeType===9?e.body:e.nodeName==="HTML"?e.ownerDocument.body:e,a.stateNode),Ji(e)):$g(Ke,a.stateNode));break;case 4:s=Ke,c=Et,Ke=a.stateNode.containerInfo,Et=!0,Hn(e,n,a),Ke=s,Et=c;break;case 0:case 11:case 14:case 15:ra(2,a,n),lt||ra(4,a,n),Hn(e,n,a);break;case 1:lt||(dn(a,n),s=a.stateNode,typeof s.componentWillUnmount=="function"&&Zm(a,n,s)),Hn(e,n,a);break;case 21:Hn(e,n,a);break;case 22:lt=(s=lt)||a.memoizedState!==null,Hn(e,n,a),lt=s;break;default:Hn(e,n,a)}}function tg(e,n){if(n.memoizedState===null&&(e=n.alternate,e!==null&&(e=e.memoizedState,e!==null))){e=e.dehydrated;try{Ji(e)}catch(a){Ue(n,n.return,a)}}}function ng(e,n){if(n.memoizedState===null&&(e=n.alternate,e!==null&&(e=e.memoizedState,e!==null&&(e=e.dehydrated,e!==null))))try{Ji(e)}catch(a){Ue(n,n.return,a)}}function Yb(e){switch(e.tag){case 31:case 13:case 19:var n=e.stateNode;return n===null&&(n=e.stateNode=new Pm),n;case 22:return e=e.stateNode,n=e._retryCache,n===null&&(n=e._retryCache=new Pm),n;default:throw Error(o(435,e.tag))}}function ks(e,n){var a=Yb(e);n.forEach(function(s){if(!a.has(s)){a.add(s);var c=Jb.bind(null,e,s);s.then(c,c)}})}function Ct(e,n){var a=n.deletions;if(a!==null)for(var s=0;s<a.length;s++){var c=a[s],f=e,b=n,N=b;e:for(;N!==null;){switch(N.tag){case 27:if(ga(N.type)){Ke=N.stateNode,Et=!1;break e}break;case 5:Ke=N.stateNode,Et=!1;break e;case 3:case 4:Ke=N.stateNode.containerInfo,Et=!0;break e}N=N.return}if(Ke===null)throw Error(o(160));eg(f,b,c),Ke=null,Et=!1,f=c.alternate,f!==null&&(f.return=null),c.return=null}if(n.subtreeFlags&13886)for(n=n.child;n!==null;)ag(n,e),n=n.sibling}var Wt=null;function ag(e,n){var a=e.alternate,s=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:Ct(n,e),Tt(e),s&4&&(ra(3,e,e.return),Zl(3,e),ra(5,e,e.return));break;case 1:Ct(n,e),Tt(e),s&512&&(lt||a===null||dn(a,a.return)),s&64&&On&&(e=e.updateQueue,e!==null&&(s=e.callbacks,s!==null&&(a=e.shared.hiddenCallbacks,e.shared.hiddenCallbacks=a===null?s:a.concat(s))));break;case 26:var c=Wt;if(Ct(n,e),Tt(e),s&512&&(lt||a===null||dn(a,a.return)),s&4){var f=a!==null?a.memoizedState:null;if(s=e.memoizedState,a===null)if(s===null)if(e.stateNode===null){e:{s=e.type,a=e.memoizedProps,c=c.ownerDocument||c;t:switch(s){case"title":f=c.getElementsByTagName("title")[0],(!f||f[Da]||f[rt]||f.namespaceURI==="http://www.w3.org/2000/svg"||f.hasAttribute("itemprop"))&&(f=c.createElement(s),c.head.insertBefore(f,c.querySelector("head > title"))),pt(f,s,a),f[rt]=e,tt(f),s=f;break e;case"link":var b=ap("link","href",c).get(s+(a.href||""));if(b){for(var N=0;N<b.length;N++)if(f=b[N],f.getAttribute("href")===(a.href==null||a.href===""?null:a.href)&&f.getAttribute("rel")===(a.rel==null?null:a.rel)&&f.getAttribute("title")===(a.title==null?null:a.title)&&f.getAttribute("crossorigin")===(a.crossOrigin==null?null:a.crossOrigin)){b.splice(N,1);break t}}f=c.createElement(s),pt(f,s,a),c.head.appendChild(f);break;case"meta":if(b=ap("meta","content",c).get(s+(a.content||""))){for(N=0;N<b.length;N++)if(f=b[N],f.getAttribute("content")===(a.content==null?null:""+a.content)&&f.getAttribute("name")===(a.name==null?null:a.name)&&f.getAttribute("property")===(a.property==null?null:a.property)&&f.getAttribute("http-equiv")===(a.httpEquiv==null?null:a.httpEquiv)&&f.getAttribute("charset")===(a.charSet==null?null:a.charSet)){b.splice(N,1);break t}}f=c.createElement(s),pt(f,s,a),c.head.appendChild(f);break;default:throw Error(o(468,s))}f[rt]=e,tt(f),s=f}e.stateNode=s}else ip(c,e.type,e.stateNode);else e.stateNode=np(c,s,e.memoizedProps);else f!==s?(f===null?a.stateNode!==null&&(a=a.stateNode,a.parentNode.removeChild(a)):f.count--,s===null?ip(c,e.type,e.stateNode):np(c,s,e.memoizedProps)):s===null&&e.stateNode!==null&&Iu(e,e.memoizedProps,a.memoizedProps)}break;case 27:Ct(n,e),Tt(e),s&512&&(lt||a===null||dn(a,a.return)),a!==null&&s&4&&Iu(e,e.memoizedProps,a.memoizedProps);break;case 5:if(Ct(n,e),Tt(e),s&512&&(lt||a===null||dn(a,a.return)),e.flags&32){c=e.stateNode;try{Si(c,"")}catch(he){Ue(e,e.return,he)}}s&4&&e.stateNode!=null&&(c=e.memoizedProps,Iu(e,c,a!==null?a.memoizedProps:c)),s&1024&&(ku=!0);break;case 6:if(Ct(n,e),Tt(e),s&4){if(e.stateNode===null)throw Error(o(162));s=e.memoizedProps,a=e.stateNode;try{a.nodeValue=s}catch(he){Ue(e,e.return,he)}}break;case 3:if(tr=null,c=Wt,Wt=Ws(n.containerInfo),Ct(n,e),Wt=c,Tt(e),s&4&&a!==null&&a.memoizedState.isDehydrated)try{Ji(n.containerInfo)}catch(he){Ue(e,e.return,he)}ku&&(ku=!1,ig(e));break;case 4:s=Wt,Wt=Ws(e.stateNode.containerInfo),Ct(n,e),Tt(e),Wt=s;break;case 12:Ct(n,e),Tt(e);break;case 31:Ct(n,e),Tt(e),s&4&&(s=e.updateQueue,s!==null&&(e.updateQueue=null,ks(e,s)));break;case 13:Ct(n,e),Tt(e),e.child.flags&8192&&e.memoizedState!==null!=(a!==null&&a.memoizedState!==null)&&(Gs=ft()),s&4&&(s=e.updateQueue,s!==null&&(e.updateQueue=null,ks(e,s)));break;case 22:c=e.memoizedState!==null;var O=a!==null&&a.memoizedState!==null,Q=On,ie=lt;if(On=Q||c,lt=ie||O,Ct(n,e),lt=ie,On=Q,Tt(e),s&8192)e:for(n=e.stateNode,n._visibility=c?n._visibility&-2:n._visibility|1,c&&(a===null||O||On||lt||Qa(e)),a=null,n=e;;){if(n.tag===5||n.tag===26){if(a===null){O=a=n;try{if(f=O.stateNode,c)b=f.style,typeof b.setProperty=="function"?b.setProperty("display","none","important"):b.display="none";else{N=O.stateNode;var re=O.memoizedProps.style,P=re!=null&&re.hasOwnProperty("display")?re.display:null;N.style.display=P==null||typeof P=="boolean"?"":(""+P).trim()}}catch(he){Ue(O,O.return,he)}}}else if(n.tag===6){if(a===null){O=n;try{O.stateNode.nodeValue=c?"":O.memoizedProps}catch(he){Ue(O,O.return,he)}}}else if(n.tag===18){if(a===null){O=n;try{var ee=O.stateNode;c?Zg(ee,!0):Zg(O.stateNode,!1)}catch(he){Ue(O,O.return,he)}}}else if((n.tag!==22&&n.tag!==23||n.memoizedState===null||n===e)&&n.child!==null){n.child.return=n,n=n.child;continue}if(n===e)break e;for(;n.sibling===null;){if(n.return===null||n.return===e)break e;a===n&&(a=null),n=n.return}a===n&&(a=null),n.sibling.return=n.return,n=n.sibling}s&4&&(s=e.updateQueue,s!==null&&(a=s.retryQueue,a!==null&&(s.retryQueue=null,ks(e,a))));break;case 19:Ct(n,e),Tt(e),s&4&&(s=e.updateQueue,s!==null&&(e.updateQueue=null,ks(e,s)));break;case 30:break;case 21:break;default:Ct(n,e),Tt(e)}}function Tt(e){var n=e.flags;if(n&2){try{for(var a,s=e.return;s!==null;){if(Fm(s)){a=s;break}s=s.return}if(a==null)throw Error(o(160));switch(a.tag){case 27:var c=a.stateNode,f=Lu(e);Bs(e,f,c);break;case 5:var b=a.stateNode;a.flags&32&&(Si(b,""),a.flags&=-33);var N=Lu(e);Bs(e,N,b);break;case 3:case 4:var O=a.stateNode.containerInfo,Q=Lu(e);Bu(e,Q,O);break;default:throw Error(o(161))}}catch(ie){Ue(e,e.return,ie)}e.flags&=-3}n&4096&&(e.flags&=-4097)}function ig(e){if(e.subtreeFlags&1024)for(e=e.child;e!==null;){var n=e;ig(n),n.tag===5&&n.flags&1024&&n.stateNode.reset(),e=e.sibling}}function In(e,n){if(n.subtreeFlags&8772)for(n=n.child;n!==null;)Jm(e,n.alternate,n),n=n.sibling}function Qa(e){for(e=e.child;e!==null;){var n=e;switch(n.tag){case 0:case 11:case 14:case 15:ra(4,n,n.return),Qa(n);break;case 1:dn(n,n.return);var a=n.stateNode;typeof a.componentWillUnmount=="function"&&Zm(n,n.return,a),Qa(n);break;case 27:ao(n.stateNode);case 26:case 5:dn(n,n.return),Qa(n);break;case 22:n.memoizedState===null&&Qa(n);break;case 30:Qa(n);break;default:Qa(n)}e=e.sibling}}function Ln(e,n,a){for(a=a&&(n.subtreeFlags&8772)!==0,n=n.child;n!==null;){var s=n.alternate,c=e,f=n,b=f.flags;switch(f.tag){case 0:case 11:case 15:Ln(c,f,a),Zl(4,f);break;case 1:if(Ln(c,f,a),s=f,c=s.stateNode,typeof c.componentDidMount=="function")try{c.componentDidMount()}catch(Q){Ue(s,s.return,Q)}if(s=f,c=s.updateQueue,c!==null){var N=s.stateNode;try{var O=c.shared.hiddenCallbacks;if(O!==null)for(c.shared.hiddenCallbacks=null,c=0;c<O.length;c++)Hh(O[c],N)}catch(Q){Ue(s,s.return,Q)}}a&&b&64&&$m(f),Kl(f,f.return);break;case 27:Qm(f);case 26:case 5:Ln(c,f,a),a&&s===null&&b&4&&Km(f),Kl(f,f.return);break;case 12:Ln(c,f,a);break;case 31:Ln(c,f,a),a&&b&4&&tg(c,f);break;case 13:Ln(c,f,a),a&&b&4&&ng(c,f);break;case 22:f.memoizedState===null&&Ln(c,f,a),Kl(f,f.return);break;case 30:break;default:Ln(c,f,a)}n=n.sibling}}function Uu(e,n){var a=null;e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(a=e.memoizedState.cachePool.pool),e=null,n.memoizedState!==null&&n.memoizedState.cachePool!==null&&(e=n.memoizedState.cachePool.pool),e!==a&&(e!=null&&e.refCount++,a!=null&&Ol(a))}function Gu(e,n){e=null,n.alternate!==null&&(e=n.alternate.memoizedState.cache),n=n.memoizedState.cache,n!==e&&(n.refCount++,e!=null&&Ol(e))}function en(e,n,a,s){if(n.subtreeFlags&10256)for(n=n.child;n!==null;)lg(e,n,a,s),n=n.sibling}function lg(e,n,a,s){var c=n.flags;switch(n.tag){case 0:case 11:case 15:en(e,n,a,s),c&2048&&Zl(9,n);break;case 1:en(e,n,a,s);break;case 3:en(e,n,a,s),c&2048&&(e=null,n.alternate!==null&&(e=n.alternate.memoizedState.cache),n=n.memoizedState.cache,n!==e&&(n.refCount++,e!=null&&Ol(e)));break;case 12:if(c&2048){en(e,n,a,s),e=n.stateNode;try{var f=n.memoizedProps,b=f.id,N=f.onPostCommit;typeof N=="function"&&N(b,n.alternate===null?"mount":"update",e.passiveEffectDuration,-0)}catch(O){Ue(n,n.return,O)}}else en(e,n,a,s);break;case 31:en(e,n,a,s);break;case 13:en(e,n,a,s);break;case 23:break;case 22:f=n.stateNode,b=n.alternate,n.memoizedState!==null?f._visibility&2?en(e,n,a,s):Fl(e,n):f._visibility&2?en(e,n,a,s):(f._visibility|=2,Gi(e,n,a,s,(n.subtreeFlags&10256)!==0||!1)),c&2048&&Uu(b,n);break;case 24:en(e,n,a,s),c&2048&&Gu(n.alternate,n);break;default:en(e,n,a,s)}}function Gi(e,n,a,s,c){for(c=c&&((n.subtreeFlags&10256)!==0||!1),n=n.child;n!==null;){var f=e,b=n,N=a,O=s,Q=b.flags;switch(b.tag){case 0:case 11:case 15:Gi(f,b,N,O,c),Zl(8,b);break;case 23:break;case 22:var ie=b.stateNode;b.memoizedState!==null?ie._visibility&2?Gi(f,b,N,O,c):Fl(f,b):(ie._visibility|=2,Gi(f,b,N,O,c)),c&&Q&2048&&Uu(b.alternate,b);break;case 24:Gi(f,b,N,O,c),c&&Q&2048&&Gu(b.alternate,b);break;default:Gi(f,b,N,O,c)}n=n.sibling}}function Fl(e,n){if(n.subtreeFlags&10256)for(n=n.child;n!==null;){var a=e,s=n,c=s.flags;switch(s.tag){case 22:Fl(a,s),c&2048&&Uu(s.alternate,s);break;case 24:Fl(a,s),c&2048&&Gu(s.alternate,s);break;default:Fl(a,s)}n=n.sibling}}var Ql=8192;function qi(e,n,a){if(e.subtreeFlags&Ql)for(e=e.child;e!==null;)og(e,n,a),e=e.sibling}function og(e,n,a){switch(e.tag){case 26:qi(e,n,a),e.flags&Ql&&e.memoizedState!==null&&MS(a,Wt,e.memoizedState,e.memoizedProps);break;case 5:qi(e,n,a);break;case 3:case 4:var s=Wt;Wt=Ws(e.stateNode.containerInfo),qi(e,n,a),Wt=s;break;case 22:e.memoizedState===null&&(s=e.alternate,s!==null&&s.memoizedState!==null?(s=Ql,Ql=16777216,qi(e,n,a),Ql=s):qi(e,n,a));break;default:qi(e,n,a)}}function sg(e){var n=e.alternate;if(n!==null&&(e=n.child,e!==null)){n.child=null;do n=e.sibling,e.sibling=null,e=n;while(e!==null)}}function Pl(e){var n=e.deletions;if((e.flags&16)!==0){if(n!==null)for(var a=0;a<n.length;a++){var s=n[a];dt=s,cg(s,e)}sg(e)}if(e.subtreeFlags&10256)for(e=e.child;e!==null;)rg(e),e=e.sibling}function rg(e){switch(e.tag){case 0:case 11:case 15:Pl(e),e.flags&2048&&ra(9,e,e.return);break;case 3:Pl(e);break;case 12:Pl(e);break;case 22:var n=e.stateNode;e.memoizedState!==null&&n._visibility&2&&(e.return===null||e.return.tag!==13)?(n._visibility&=-3,Us(e)):Pl(e);break;default:Pl(e)}}function Us(e){var n=e.deletions;if((e.flags&16)!==0){if(n!==null)for(var a=0;a<n.length;a++){var s=n[a];dt=s,cg(s,e)}sg(e)}for(e=e.child;e!==null;){switch(n=e,n.tag){case 0:case 11:case 15:ra(8,n,n.return),Us(n);break;case 22:a=n.stateNode,a._visibility&2&&(a._visibility&=-3,Us(n));break;default:Us(n)}e=e.sibling}}function cg(e,n){for(;dt!==null;){var a=dt;switch(a.tag){case 0:case 11:case 15:ra(8,a,n);break;case 23:case 22:if(a.memoizedState!==null&&a.memoizedState.cachePool!==null){var s=a.memoizedState.cachePool.pool;s!=null&&s.refCount++}break;case 24:Ol(a.memoizedState.cache)}if(s=a.child,s!==null)s.return=a,dt=s;else e:for(a=e;dt!==null;){s=dt;var c=s.sibling,f=s.return;if(Wm(s),s===a){dt=null;break e}if(c!==null){c.return=f,dt=c;break e}dt=f}}}var Vb={getCacheForType:function(e){var n=mt(nt),a=n.data.get(e);return a===void 0&&(a=e(),n.data.set(e,a)),a},cacheSignal:function(){return mt(nt).controller.signal}},Xb=typeof WeakMap=="function"?WeakMap:Map,Le=0,Xe=null,Ae=null,ze=0,ke=0,It=null,ca=!1,Yi=!1,qu=!1,Bn=0,Je=0,ua=0,Pa=0,Yu=0,Lt=0,Vi=0,Jl=null,At=null,Vu=!1,Gs=0,ug=0,qs=1/0,Ys=null,da=null,ct=0,fa=null,Xi=null,kn=0,Xu=0,$u=null,dg=null,Wl=0,Zu=null;function Bt(){return(Le&2)!==0&&ze!==0?ze&-ze:z.T!==null?Wu():Zo()}function fg(){if(Lt===0)if((ze&536870912)===0||De){var e=mi;mi<<=1,(mi&3932160)===0&&(mi=262144),Lt=e}else Lt=536870912;return e=Ot.current,e!==null&&(e.flags|=32),Lt}function Mt(e,n,a){(e===Xe&&(ke===2||ke===9)||e.cancelPendingCommit!==null)&&($i(e,0),ha(e,ze,Lt,!1)),Ra(e,a),((Le&2)===0||e!==Xe)&&(e===Xe&&((Le&2)===0&&(Pa|=a),Je===4&&ha(e,ze,Lt,!1)),fn(e))}function hg(e,n,a){if((Le&6)!==0)throw Error(o(327));var s=!a&&(n&127)===0&&(n&e.expiredLanes)===0||za(e,n),c=s?Kb(e,n):Fu(e,n,!0),f=s;do{if(c===0){Yi&&!s&&ha(e,n,0,!1);break}else{if(a=e.current.alternate,f&&!$b(a)){c=Fu(e,n,!1),f=!1;continue}if(c===2){if(f=n,e.errorRecoveryDisabledLanes&f)var b=0;else b=e.pendingLanes&-536870913,b=b!==0?b:b&536870912?536870912:0;if(b!==0){n=b;e:{var N=e;c=Jl;var O=N.current.memoizedState.isDehydrated;if(O&&($i(N,b).flags|=256),b=Fu(N,b,!1),b!==2){if(qu&&!O){N.errorRecoveryDisabledLanes|=f,Pa|=f,c=4;break e}f=At,At=c,f!==null&&(At===null?At=f:At.push.apply(At,f))}c=b}if(f=!1,c!==2)continue}}if(c===1){$i(e,0),ha(e,n,0,!0);break}e:{switch(s=e,f=c,f){case 0:case 1:throw Error(o(345));case 4:if((n&4194048)!==n)break;case 6:ha(s,n,Lt,!ca);break e;case 2:At=null;break;case 3:case 5:break;default:throw Error(o(329))}if((n&62914560)===n&&(c=Gs+300-ft(),10<c)){if(ha(s,n,Lt,!ca),pi(s,0,!0)!==0)break e;kn=n,s.timeoutHandle=Vg(mg.bind(null,s,a,At,Ys,Vu,n,Lt,Pa,Vi,ca,f,"Throttled",-0,0),c);break e}mg(s,a,At,Ys,Vu,n,Lt,Pa,Vi,ca,f,null,-0,0)}}break}while(!0);fn(e)}function mg(e,n,a,s,c,f,b,N,O,Q,ie,re,P,ee){if(e.timeoutHandle=-1,re=n.subtreeFlags,re&8192||(re&16785408)===16785408){re={stylesheets:null,count:0,imgCount:0,imgBytes:0,suspenseyImages:[],waitingForImages:!0,waitingForViewTransition:!1,unsuspend:_n},og(n,f,re);var he=(f&62914560)===f?Gs-ft():(f&4194048)===f?ug-ft():0;if(he=jS(re,he),he!==null){kn=f,e.cancelPendingCommit=he(wg.bind(null,e,n,f,a,s,c,b,N,O,ie,re,null,P,ee)),ha(e,f,b,!Q);return}}wg(e,n,f,a,s,c,b,N,O)}function $b(e){for(var n=e;;){var a=n.tag;if((a===0||a===11||a===15)&&n.flags&16384&&(a=n.updateQueue,a!==null&&(a=a.stores,a!==null)))for(var s=0;s<a.length;s++){var c=a[s],f=c.getSnapshot;c=c.value;try{if(!Rt(f(),c))return!1}catch{return!1}}if(a=n.child,n.subtreeFlags&16384&&a!==null)a.return=n,n=a;else{if(n===e)break;for(;n.sibling===null;){if(n.return===null||n.return===e)return!0;n=n.return}n.sibling.return=n.return,n=n.sibling}}return!0}function ha(e,n,a,s){n&=~Yu,n&=~Pa,e.suspendedLanes|=n,e.pingedLanes&=~n,s&&(e.warmLanes|=n),s=e.expirationTimes;for(var c=n;0<c;){var f=31-bt(c),b=1<<f;s[f]=-1,c&=~b}a!==0&&Vo(e,a,n)}function Vs(){return(Le&6)===0?(eo(0),!1):!0}function Ku(){if(Ae!==null){if(ke===0)var e=Ae.return;else e=Ae,An=qa=null,uu(e),Ii=null,Il=0,e=Ae;for(;e!==null;)Xm(e.alternate,e),e=e.return;Ae=null}}function $i(e,n){var a=e.timeoutHandle;a!==-1&&(e.timeoutHandle=-1,fS(a)),a=e.cancelPendingCommit,a!==null&&(e.cancelPendingCommit=null,a()),kn=0,Ku(),Xe=e,Ae=a=Cn(e.current,null),ze=n,ke=0,It=null,ca=!1,Yi=za(e,n),qu=!1,Vi=Lt=Yu=Pa=ua=Je=0,At=Jl=null,Vu=!1,(n&8)!==0&&(n|=n&32);var s=e.entangledLanes;if(s!==0)for(e=e.entanglements,s&=n;0<s;){var c=31-bt(s),f=1<<c;n|=e[c],s&=~f}return Bn=n,ds(),a}function gg(e,n){Ee=null,z.H=Vl,n===Hi||n===xs?(n=zh(),ke=3):n===Jc?(n=zh(),ke=4):ke=n===Cu?8:n!==null&&typeof n=="object"&&typeof n.then=="function"?6:1,It=n,Ae===null&&(Je=1,Ds(e,qt(n,e.current)))}function pg(){var e=Ot.current;return e===null?!0:(ze&4194048)===ze?$t===null:(ze&62914560)===ze||(ze&536870912)!==0?e===$t:!1}function yg(){var e=z.H;return z.H=Vl,e===null?Vl:e}function vg(){var e=z.A;return z.A=Vb,e}function Xs(){Je=4,ca||(ze&4194048)!==ze&&Ot.current!==null||(Yi=!0),(ua&134217727)===0&&(Pa&134217727)===0||Xe===null||ha(Xe,ze,Lt,!1)}function Fu(e,n,a){var s=Le;Le|=2;var c=yg(),f=vg();(Xe!==e||ze!==n)&&(Ys=null,$i(e,n)),n=!1;var b=Je;e:do try{if(ke!==0&&Ae!==null){var N=Ae,O=It;switch(ke){case 8:Ku(),b=6;break e;case 3:case 2:case 9:case 6:Ot.current===null&&(n=!0);var Q=ke;if(ke=0,It=null,Zi(e,N,O,Q),a&&Yi){b=0;break e}break;default:Q=ke,ke=0,It=null,Zi(e,N,O,Q)}}Zb(),b=Je;break}catch(ie){gg(e,ie)}while(!0);return n&&e.shellSuspendCounter++,An=qa=null,Le=s,z.H=c,z.A=f,Ae===null&&(Xe=null,ze=0,ds()),b}function Zb(){for(;Ae!==null;)xg(Ae)}function Kb(e,n){var a=Le;Le|=2;var s=yg(),c=vg();Xe!==e||ze!==n?(Ys=null,qs=ft()+500,$i(e,n)):Yi=za(e,n);e:do try{if(ke!==0&&Ae!==null){n=Ae;var f=It;t:switch(ke){case 1:ke=0,It=null,Zi(e,n,f,1);break;case 2:case 9:if(Mh(f)){ke=0,It=null,bg(n);break}n=function(){ke!==2&&ke!==9||Xe!==e||(ke=7),fn(e)},f.then(n,n);break e;case 3:ke=7;break e;case 4:ke=5;break e;case 7:Mh(f)?(ke=0,It=null,bg(n)):(ke=0,It=null,Zi(e,n,f,7));break;case 5:var b=null;switch(Ae.tag){case 26:b=Ae.memoizedState;case 5:case 27:var N=Ae;if(b?lp(b):N.stateNode.complete){ke=0,It=null;var O=N.sibling;if(O!==null)Ae=O;else{var Q=N.return;Q!==null?(Ae=Q,$s(Q)):Ae=null}break t}}ke=0,It=null,Zi(e,n,f,5);break;case 6:ke=0,It=null,Zi(e,n,f,6);break;case 8:Ku(),Je=6;break e;default:throw Error(o(462))}}Fb();break}catch(ie){gg(e,ie)}while(!0);return An=qa=null,z.H=s,z.A=c,Le=a,Ae!==null?0:(Xe=null,ze=0,ds(),Je)}function Fb(){for(;Ae!==null&&!Ta();)xg(Ae)}function xg(e){var n=Ym(e.alternate,e,Bn);e.memoizedProps=e.pendingProps,n===null?$s(e):Ae=n}function bg(e){var n=e,a=n.alternate;switch(n.tag){case 15:case 0:n=Lm(a,n,n.pendingProps,n.type,void 0,ze);break;case 11:n=Lm(a,n,n.pendingProps,n.type.render,n.ref,ze);break;case 5:uu(n);default:Xm(a,n),n=Ae=vh(n,Bn),n=Ym(a,n,Bn)}e.memoizedProps=e.pendingProps,n===null?$s(e):Ae=n}function Zi(e,n,a,s){An=qa=null,uu(n),Ii=null,Il=0;var c=n.return;try{if(Lb(e,c,n,a,ze)){Je=1,Ds(e,qt(a,e.current)),Ae=null;return}}catch(f){if(c!==null)throw Ae=c,f;Je=1,Ds(e,qt(a,e.current)),Ae=null;return}n.flags&32768?(De||s===1?e=!0:Yi||(ze&536870912)!==0?e=!1:(ca=e=!0,(s===2||s===9||s===3||s===6)&&(s=Ot.current,s!==null&&s.tag===13&&(s.flags|=16384))),Sg(n,e)):$s(n)}function $s(e){var n=e;do{if((n.flags&32768)!==0){Sg(n,ca);return}e=n.return;var a=Ub(n.alternate,n,Bn);if(a!==null){Ae=a;return}if(n=n.sibling,n!==null){Ae=n;return}Ae=n=e}while(n!==null);Je===0&&(Je=5)}function Sg(e,n){do{var a=Gb(e.alternate,e);if(a!==null){a.flags&=32767,Ae=a;return}if(a=e.return,a!==null&&(a.flags|=32768,a.subtreeFlags=0,a.deletions=null),!n&&(e=e.sibling,e!==null)){Ae=e;return}Ae=e=a}while(e!==null);Je=6,Ae=null}function wg(e,n,a,s,c,f,b,N,O){e.cancelPendingCommit=null;do Zs();while(ct!==0);if((Le&6)!==0)throw Error(o(327));if(n!==null){if(n===e.current)throw Error(o(177));if(f=n.lanes|n.childLanes,f|=Lc,hc(e,a,f,b,N,O),e===Xe&&(Ae=Xe=null,ze=0),Xi=n,fa=e,kn=a,Xu=f,$u=c,dg=s,(n.subtreeFlags&10256)!==0||(n.flags&10256)!==0?(e.callbackNode=null,e.callbackPriority=0,Wb(Ma,function(){return Tg(),null})):(e.callbackNode=null,e.callbackPriority=0),s=(n.flags&13878)!==0,(n.subtreeFlags&13878)!==0||s){s=z.T,z.T=null,c=H.p,H.p=2,b=Le,Le|=4;try{qb(e,n,a)}finally{Le=b,H.p=c,z.T=s}}ct=1,Ng(),_g(),Eg()}}function Ng(){if(ct===1){ct=0;var e=fa,n=Xi,a=(n.flags&13878)!==0;if((n.subtreeFlags&13878)!==0||a){a=z.T,z.T=null;var s=H.p;H.p=2;var c=Le;Le|=4;try{ag(n,e);var f=sd,b=ch(e.containerInfo),N=f.focusedElem,O=f.selectionRange;if(b!==N&&N&&N.ownerDocument&&rh(N.ownerDocument.documentElement,N)){if(O!==null&&Rc(N)){var Q=O.start,ie=O.end;if(ie===void 0&&(ie=Q),"selectionStart"in N)N.selectionStart=Q,N.selectionEnd=Math.min(ie,N.value.length);else{var re=N.ownerDocument||document,P=re&&re.defaultView||window;if(P.getSelection){var ee=P.getSelection(),he=N.textContent.length,xe=Math.min(O.start,he),Ve=O.end===void 0?xe:Math.min(O.end,he);!ee.extend&&xe>Ve&&(b=Ve,Ve=xe,xe=b);var X=sh(N,xe),q=sh(N,Ve);if(X&&q&&(ee.rangeCount!==1||ee.anchorNode!==X.node||ee.anchorOffset!==X.offset||ee.focusNode!==q.node||ee.focusOffset!==q.offset)){var F=re.createRange();F.setStart(X.node,X.offset),ee.removeAllRanges(),xe>Ve?(ee.addRange(F),ee.extend(q.node,q.offset)):(F.setEnd(q.node,q.offset),ee.addRange(F))}}}}for(re=[],ee=N;ee=ee.parentNode;)ee.nodeType===1&&re.push({element:ee,left:ee.scrollLeft,top:ee.scrollTop});for(typeof N.focus=="function"&&N.focus(),N=0;N<re.length;N++){var oe=re[N];oe.element.scrollLeft=oe.left,oe.element.scrollTop=oe.top}}lr=!!od,sd=od=null}finally{Le=c,H.p=s,z.T=a}}e.current=n,ct=2}}function _g(){if(ct===2){ct=0;var e=fa,n=Xi,a=(n.flags&8772)!==0;if((n.subtreeFlags&8772)!==0||a){a=z.T,z.T=null;var s=H.p;H.p=2;var c=Le;Le|=4;try{Jm(e,n.alternate,n)}finally{Le=c,H.p=s,z.T=a}}ct=3}}function Eg(){if(ct===4||ct===3){ct=0,Aa();var e=fa,n=Xi,a=kn,s=dg;(n.subtreeFlags&10256)!==0||(n.flags&10256)!==0?ct=5:(ct=0,Xi=fa=null,Cg(e,e.pendingLanes));var c=e.pendingLanes;if(c===0&&(da=null),xl(a),n=n.stateNode,xt&&typeof xt.onCommitFiberRoot=="function")try{xt.onCommitFiberRoot(ja,n,void 0,(n.current.flags&128)===128)}catch{}if(s!==null){n=z.T,c=H.p,H.p=2,z.T=null;try{for(var f=e.onRecoverableError,b=0;b<s.length;b++){var N=s[b];f(N.value,{componentStack:N.stack})}}finally{z.T=n,H.p=c}}(kn&3)!==0&&Zs(),fn(e),c=e.pendingLanes,(a&261930)!==0&&(c&42)!==0?e===Zu?Wl++:(Wl=0,Zu=e):Wl=0,eo(0)}}function Cg(e,n){(e.pooledCacheLanes&=n)===0&&(n=e.pooledCache,n!=null&&(e.pooledCache=null,Ol(n)))}function Zs(){return Ng(),_g(),Eg(),Tg()}function Tg(){if(ct!==5)return!1;var e=fa,n=Xu;Xu=0;var a=xl(kn),s=z.T,c=H.p;try{H.p=32>a?32:a,z.T=null,a=$u,$u=null;var f=fa,b=kn;if(ct=0,Xi=fa=null,kn=0,(Le&6)!==0)throw Error(o(331));var N=Le;if(Le|=4,rg(f.current),lg(f,f.current,b,a),Le=N,eo(0,!1),xt&&typeof xt.onPostCommitFiberRoot=="function")try{xt.onPostCommitFiberRoot(ja,f)}catch{}return!0}finally{H.p=c,z.T=s,Cg(e,n)}}function Ag(e,n,a){n=qt(a,n),n=Eu(e.stateNode,n,2),e=la(e,n,2),e!==null&&(Ra(e,2),fn(e))}function Ue(e,n,a){if(e.tag===3)Ag(e,e,a);else for(;n!==null;){if(n.tag===3){Ag(n,e,a);break}else if(n.tag===1){var s=n.stateNode;if(typeof n.type.getDerivedStateFromError=="function"||typeof s.componentDidCatch=="function"&&(da===null||!da.has(s))){e=qt(a,e),a=Mm(2),s=la(n,a,2),s!==null&&(jm(a,s,n,e),Ra(s,2),fn(s));break}}n=n.return}}function Qu(e,n,a){var s=e.pingCache;if(s===null){s=e.pingCache=new Xb;var c=new Set;s.set(n,c)}else c=s.get(n),c===void 0&&(c=new Set,s.set(n,c));c.has(a)||(qu=!0,c.add(a),e=Qb.bind(null,e,n,a),n.then(e,e))}function Qb(e,n,a){var s=e.pingCache;s!==null&&s.delete(n),e.pingedLanes|=e.suspendedLanes&a,e.warmLanes&=~a,Xe===e&&(ze&a)===a&&(Je===4||Je===3&&(ze&62914560)===ze&&300>ft()-Gs?(Le&2)===0&&$i(e,0):Yu|=a,Vi===ze&&(Vi=0)),fn(e)}function Mg(e,n){n===0&&(n=Yo()),e=ka(e,n),e!==null&&(Ra(e,n),fn(e))}function Pb(e){var n=e.memoizedState,a=0;n!==null&&(a=n.retryLane),Mg(e,a)}function Jb(e,n){var a=0;switch(e.tag){case 31:case 13:var s=e.stateNode,c=e.memoizedState;c!==null&&(a=c.retryLane);break;case 19:s=e.stateNode;break;case 22:s=e.stateNode._retryCache;break;default:throw Error(o(314))}s!==null&&s.delete(n),Mg(e,a)}function Wb(e,n){return Qt(e,n)}var Ks=null,Ki=null,Pu=!1,Fs=!1,Ju=!1,ma=0;function fn(e){e!==Ki&&e.next===null&&(Ki===null?Ks=Ki=e:Ki=Ki.next=e),Fs=!0,Pu||(Pu=!0,tS())}function eo(e,n){if(!Ju&&Fs){Ju=!0;do for(var a=!1,s=Ks;s!==null;){if(e!==0){var c=s.pendingLanes;if(c===0)var f=0;else{var b=s.suspendedLanes,N=s.pingedLanes;f=(1<<31-bt(42|e)+1)-1,f&=c&~(b&~N),f=f&201326741?f&201326741|1:f?f|2:0}f!==0&&(a=!0,Dg(s,f))}else f=ze,f=pi(s,s===Xe?f:0,s.cancelPendingCommit!==null||s.timeoutHandle!==-1),(f&3)===0||za(s,f)||(a=!0,Dg(s,f));s=s.next}while(a);Ju=!1}}function eS(){jg()}function jg(){Fs=Pu=!1;var e=0;ma!==0&&dS()&&(e=ma);for(var n=ft(),a=null,s=Ks;s!==null;){var c=s.next,f=zg(s,n);f===0?(s.next=null,a===null?Ks=c:a.next=c,c===null&&(Ki=a)):(a=s,(e!==0||(f&3)!==0)&&(Fs=!0)),s=c}ct!==0&&ct!==5||eo(e),ma!==0&&(ma=0)}function zg(e,n){for(var a=e.suspendedLanes,s=e.pingedLanes,c=e.expirationTimes,f=e.pendingLanes&-62914561;0<f;){var b=31-bt(f),N=1<<b,O=c[b];O===-1?((N&a)===0||(N&s)!==0)&&(c[b]=fc(N,n)):O<=n&&(e.expiredLanes|=N),f&=~N}if(n=Xe,a=ze,a=pi(e,e===n?a:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),s=e.callbackNode,a===0||e===n&&(ke===2||ke===9)||e.cancelPendingCommit!==null)return s!==null&&s!==null&&vn(s),e.callbackNode=null,e.callbackPriority=0;if((a&3)===0||za(e,a)){if(n=a&-a,n===e.callbackPriority)return n;switch(s!==null&&vn(s),xl(a)){case 2:case 8:a=$n;break;case 32:a=Ma;break;case 268435456:a=fi;break;default:a=Ma}return s=Rg.bind(null,e),a=Qt(a,s),e.callbackPriority=n,e.callbackNode=a,n}return s!==null&&s!==null&&vn(s),e.callbackPriority=2,e.callbackNode=null,2}function Rg(e,n){if(ct!==0&&ct!==5)return e.callbackNode=null,e.callbackPriority=0,null;var a=e.callbackNode;if(Zs()&&e.callbackNode!==a)return null;var s=ze;return s=pi(e,e===Xe?s:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),s===0?null:(hg(e,s,n),zg(e,ft()),e.callbackNode!=null&&e.callbackNode===a?Rg.bind(null,e):null)}function Dg(e,n){if(Zs())return null;hg(e,n,!0)}function tS(){hS(function(){(Le&6)!==0?Qt(xn,eS):jg()})}function Wu(){if(ma===0){var e=Di;e===0&&(e=hi,hi<<=1,(hi&261888)===0&&(hi=256)),ma=e}return ma}function Og(e){return e==null||typeof e=="symbol"||typeof e=="boolean"?null:typeof e=="function"?e:as(""+e)}function Hg(e,n){var a=n.ownerDocument.createElement("input");return a.name=n.name,a.value=n.value,e.id&&a.setAttribute("form",e.id),n.parentNode.insertBefore(a,n),e=new FormData(e),a.parentNode.removeChild(a),e}function nS(e,n,a,s,c){if(n==="submit"&&a&&a.stateNode===c){var f=Og((c[yt]||null).action),b=s.submitter;b&&(n=(n=b[yt]||null)?Og(n.formAction):b.getAttribute("formAction"),n!==null&&(f=n,b=null));var N=new ss("action","action",null,s,c);e.push({event:N,listeners:[{instance:null,listener:function(){if(s.defaultPrevented){if(ma!==0){var O=b?Hg(c,b):new FormData(c);xu(a,{pending:!0,data:O,method:c.method,action:f},null,O)}}else typeof f=="function"&&(N.preventDefault(),O=b?Hg(c,b):new FormData(c),xu(a,{pending:!0,data:O,method:c.method,action:f},f,O))},currentTarget:c}]})}}for(var ed=0;ed<Ic.length;ed++){var td=Ic[ed],aS=td.toLowerCase(),iS=td[0].toUpperCase()+td.slice(1);Jt(aS,"on"+iS)}Jt(fh,"onAnimationEnd"),Jt(hh,"onAnimationIteration"),Jt(mh,"onAnimationStart"),Jt("dblclick","onDoubleClick"),Jt("focusin","onFocus"),Jt("focusout","onBlur"),Jt(bb,"onTransitionRun"),Jt(Sb,"onTransitionStart"),Jt(wb,"onTransitionCancel"),Jt(gh,"onTransitionEnd"),Pn("onMouseEnter",["mouseout","mouseover"]),Pn("onMouseLeave",["mouseout","mouseover"]),Pn("onPointerEnter",["pointerout","pointerover"]),Pn("onPointerLeave",["pointerout","pointerover"]),wn("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),wn("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),wn("onBeforeInput",["compositionend","keypress","textInput","paste"]),wn("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),wn("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),wn("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var to="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(" "),lS=new Set("beforetoggle cancel close invalid load scroll scrollend toggle".split(" ").concat(to));function Ig(e,n){n=(n&4)!==0;for(var a=0;a<e.length;a++){var s=e[a],c=s.event;s=s.listeners;e:{var f=void 0;if(n)for(var b=s.length-1;0<=b;b--){var N=s[b],O=N.instance,Q=N.currentTarget;if(N=N.listener,O!==f&&c.isPropagationStopped())break e;f=N,c.currentTarget=Q;try{f(c)}catch(ie){us(ie)}c.currentTarget=null,f=O}else for(b=0;b<s.length;b++){if(N=s[b],O=N.instance,Q=N.currentTarget,N=N.listener,O!==f&&c.isPropagationStopped())break e;f=N,c.currentTarget=Q;try{f(c)}catch(ie){us(ie)}c.currentTarget=null,f=O}}}}function Me(e,n){var a=n[yi];a===void 0&&(a=n[yi]=new Set);var s=e+"__bubble";a.has(s)||(Lg(n,e,2,!1),a.add(s))}function nd(e,n,a){var s=0;n&&(s|=4),Lg(a,e,s,n)}var Qs="_reactListening"+Math.random().toString(36).slice(2);function ad(e){if(!e[Qs]){e[Qs]=!0,Po.forEach(function(a){a!=="selectionchange"&&(lS.has(a)||nd(a,!1,e),nd(a,!0,e))});var n=e.nodeType===9?e:e.ownerDocument;n===null||n[Qs]||(n[Qs]=!0,nd("selectionchange",!1,n))}}function Lg(e,n,a,s){switch(fp(n)){case 2:var c=DS;break;case 8:c=OS;break;default:c=vd}a=c.bind(null,n,a,e),c=void 0,!Nc||n!=="touchstart"&&n!=="touchmove"&&n!=="wheel"||(c=!0),s?c!==void 0?e.addEventListener(n,a,{capture:!0,passive:c}):e.addEventListener(n,a,!0):c!==void 0?e.addEventListener(n,a,{passive:c}):e.addEventListener(n,a,!1)}function id(e,n,a,s,c){var f=s;if((n&1)===0&&(n&2)===0&&s!==null)e:for(;;){if(s===null)return;var b=s.tag;if(b===3||b===4){var N=s.stateNode.containerInfo;if(N===c)break;if(b===4)for(b=s.return;b!==null;){var O=b.tag;if((O===3||O===4)&&b.stateNode.containerInfo===c)return;b=b.return}for(;N!==null;){if(b=Zn(N),b===null)return;if(O=b.tag,O===5||O===6||O===26||O===27){s=f=b;continue e}N=N.parentNode}}s=s.return}qf(function(){var Q=f,ie=Sc(a),re=[];e:{var P=ph.get(e);if(P!==void 0){var ee=ss,he=e;switch(e){case"keypress":if(ls(a)===0)break e;case"keydown":case"keyup":ee=Jx;break;case"focusin":he="focus",ee=Tc;break;case"focusout":he="blur",ee=Tc;break;case"beforeblur":case"afterblur":ee=Tc;break;case"click":if(a.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":ee=Xf;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":ee=Ux;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":ee=tb;break;case fh:case hh:case mh:ee=Yx;break;case gh:ee=ab;break;case"scroll":case"scrollend":ee=Bx;break;case"wheel":ee=lb;break;case"copy":case"cut":case"paste":ee=Xx;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":ee=Zf;break;case"toggle":case"beforetoggle":ee=sb}var xe=(n&4)!==0,Ve=!xe&&(e==="scroll"||e==="scrollend"),X=xe?P!==null?P+"Capture":null:P;xe=[];for(var q=Q,F;q!==null;){var oe=q;if(F=oe.stateNode,oe=oe.tag,oe!==5&&oe!==26&&oe!==27||F===null||X===null||(oe=Nl(q,X),oe!=null&&xe.push(no(q,oe,F))),Ve)break;q=q.return}0<xe.length&&(P=new ee(P,he,null,a,ie),re.push({event:P,listeners:xe}))}}if((n&7)===0){e:{if(P=e==="mouseover"||e==="pointerover",ee=e==="mouseout"||e==="pointerout",P&&a!==bc&&(he=a.relatedTarget||a.fromElement)&&(Zn(he)||he[Sn]))break e;if((ee||P)&&(P=ie.window===ie?ie:(P=ie.ownerDocument)?P.defaultView||P.parentWindow:window,ee?(he=a.relatedTarget||a.toElement,ee=Q,he=he?Zn(he):null,he!==null&&(Ve=u(he),xe=he.tag,he!==Ve||xe!==5&&xe!==27&&xe!==6)&&(he=null)):(ee=null,he=Q),ee!==he)){if(xe=Xf,oe="onMouseLeave",X="onMouseEnter",q="mouse",(e==="pointerout"||e==="pointerover")&&(xe=Zf,oe="onPointerLeave",X="onPointerEnter",q="pointer"),Ve=ee==null?P:Fn(ee),F=he==null?P:Fn(he),P=new xe(oe,q+"leave",ee,a,ie),P.target=Ve,P.relatedTarget=F,oe=null,Zn(ie)===Q&&(xe=new xe(X,q+"enter",he,a,ie),xe.target=F,xe.relatedTarget=Ve,oe=xe),Ve=oe,ee&&he)t:{for(xe=oS,X=ee,q=he,F=0,oe=X;oe;oe=xe(oe))F++;oe=0;for(var pe=q;pe;pe=xe(pe))oe++;for(;0<F-oe;)X=xe(X),F--;for(;0<oe-F;)q=xe(q),oe--;for(;F--;){if(X===q||q!==null&&X===q.alternate){xe=X;break t}X=xe(X),q=xe(q)}xe=null}else xe=null;ee!==null&&Bg(re,P,ee,xe,!1),he!==null&&Ve!==null&&Bg(re,Ve,he,xe,!0)}}e:{if(P=Q?Fn(Q):window,ee=P.nodeName&&P.nodeName.toLowerCase(),ee==="select"||ee==="input"&&P.type==="file")var He=th;else if(Wf(P))if(nh)He=yb;else{He=gb;var me=mb}else ee=P.nodeName,!ee||ee.toLowerCase()!=="input"||P.type!=="checkbox"&&P.type!=="radio"?Q&&xc(Q.elementType)&&(He=th):He=pb;if(He&&(He=He(e,Q))){eh(re,He,a,ie);break e}me&&me(e,P,Q),e==="focusout"&&Q&&P.type==="number"&&Q.memoizedProps.value!=null&&wl(P,"number",P.value)}switch(me=Q?Fn(Q):window,e){case"focusin":(Wf(me)||me.contentEditable==="true")&&(Ei=me,Dc=Q,zl=null);break;case"focusout":zl=Dc=Ei=null;break;case"mousedown":Oc=!0;break;case"contextmenu":case"mouseup":case"dragend":Oc=!1,uh(re,a,ie);break;case"selectionchange":if(xb)break;case"keydown":case"keyup":uh(re,a,ie)}var Ce;if(Mc)e:{switch(e){case"compositionstart":var Re="onCompositionStart";break e;case"compositionend":Re="onCompositionEnd";break e;case"compositionupdate":Re="onCompositionUpdate";break e}Re=void 0}else _i?Pf(e,a)&&(Re="onCompositionEnd"):e==="keydown"&&a.keyCode===229&&(Re="onCompositionStart");Re&&(Kf&&a.locale!=="ko"&&(_i||Re!=="onCompositionStart"?Re==="onCompositionEnd"&&_i&&(Ce=Yf()):(Jn=ie,_c="value"in Jn?Jn.value:Jn.textContent,_i=!0)),me=Ps(Q,Re),0<me.length&&(Re=new $f(Re,e,null,a,ie),re.push({event:Re,listeners:me}),Ce?Re.data=Ce:(Ce=Jf(a),Ce!==null&&(Re.data=Ce)))),(Ce=cb?ub(e,a):db(e,a))&&(Re=Ps(Q,"onBeforeInput"),0<Re.length&&(me=new $f("onBeforeInput","beforeinput",null,a,ie),re.push({event:me,listeners:Re}),me.data=Ce)),nS(re,e,Q,a,ie)}Ig(re,n)})}function no(e,n,a){return{instance:e,listener:n,currentTarget:a}}function Ps(e,n){for(var a=n+"Capture",s=[];e!==null;){var c=e,f=c.stateNode;if(c=c.tag,c!==5&&c!==26&&c!==27||f===null||(c=Nl(e,a),c!=null&&s.unshift(no(e,c,f)),c=Nl(e,n),c!=null&&s.push(no(e,c,f))),e.tag===3)return s;e=e.return}return[]}function oS(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5&&e.tag!==27);return e||null}function Bg(e,n,a,s,c){for(var f=n._reactName,b=[];a!==null&&a!==s;){var N=a,O=N.alternate,Q=N.stateNode;if(N=N.tag,O!==null&&O===s)break;N!==5&&N!==26&&N!==27||Q===null||(O=Q,c?(Q=Nl(a,f),Q!=null&&b.unshift(no(a,Q,O))):c||(Q=Nl(a,f),Q!=null&&b.push(no(a,Q,O)))),a=a.return}b.length!==0&&e.push({event:n,listeners:b})}var sS=/\r\n?/g,rS=/\u0000|\uFFFD/g;function kg(e){return(typeof e=="string"?e:""+e).replace(sS,`
|
|
9
|
+
`).replace(rS,"")}function Ug(e,n){return n=kg(n),kg(e)===n}function Ye(e,n,a,s,c,f){switch(a){case"children":typeof s=="string"?n==="body"||n==="textarea"&&s===""||Si(e,s):(typeof s=="number"||typeof s=="bigint")&&n!=="body"&&Si(e,""+s);break;case"className":xi(e,"class",s);break;case"tabIndex":xi(e,"tabindex",s);break;case"dir":case"role":case"viewBox":case"width":case"height":xi(e,a,s);break;case"style":Uf(e,s,f);break;case"data":if(n!=="object"){xi(e,"data",s);break}case"src":case"href":if(s===""&&(n!=="a"||a!=="href")){e.removeAttribute(a);break}if(s==null||typeof s=="function"||typeof s=="symbol"||typeof s=="boolean"){e.removeAttribute(a);break}s=as(""+s),e.setAttribute(a,s);break;case"action":case"formAction":if(typeof s=="function"){e.setAttribute(a,"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 f=="function"&&(a==="formAction"?(n!=="input"&&Ye(e,n,"name",c.name,c,null),Ye(e,n,"formEncType",c.formEncType,c,null),Ye(e,n,"formMethod",c.formMethod,c,null),Ye(e,n,"formTarget",c.formTarget,c,null)):(Ye(e,n,"encType",c.encType,c,null),Ye(e,n,"method",c.method,c,null),Ye(e,n,"target",c.target,c,null)));if(s==null||typeof s=="symbol"||typeof s=="boolean"){e.removeAttribute(a);break}s=as(""+s),e.setAttribute(a,s);break;case"onClick":s!=null&&(e.onclick=_n);break;case"onScroll":s!=null&&Me("scroll",e);break;case"onScrollEnd":s!=null&&Me("scrollend",e);break;case"dangerouslySetInnerHTML":if(s!=null){if(typeof s!="object"||!("__html"in s))throw Error(o(61));if(a=s.__html,a!=null){if(c.children!=null)throw Error(o(60));e.innerHTML=a}}break;case"multiple":e.multiple=s&&typeof s!="function"&&typeof s!="symbol";break;case"muted":e.muted=s&&typeof s!="function"&&typeof s!="symbol";break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"defaultValue":case"defaultChecked":case"innerHTML":case"ref":break;case"autoFocus":break;case"xlinkHref":if(s==null||typeof s=="function"||typeof s=="boolean"||typeof s=="symbol"){e.removeAttribute("xlink:href");break}a=as(""+s),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",a);break;case"contentEditable":case"spellCheck":case"draggable":case"value":case"autoReverse":case"externalResourcesRequired":case"focusable":case"preserveAlpha":s!=null&&typeof s!="function"&&typeof s!="symbol"?e.setAttribute(a,""+s):e.removeAttribute(a);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":s&&typeof s!="function"&&typeof s!="symbol"?e.setAttribute(a,""):e.removeAttribute(a);break;case"capture":case"download":s===!0?e.setAttribute(a,""):s!==!1&&s!=null&&typeof s!="function"&&typeof s!="symbol"?e.setAttribute(a,s):e.removeAttribute(a);break;case"cols":case"rows":case"size":case"span":s!=null&&typeof s!="function"&&typeof s!="symbol"&&!isNaN(s)&&1<=s?e.setAttribute(a,s):e.removeAttribute(a);break;case"rowSpan":case"start":s==null||typeof s=="function"||typeof s=="symbol"||isNaN(s)?e.removeAttribute(a):e.setAttribute(a,s);break;case"popover":Me("beforetoggle",e),Me("toggle",e),vi(e,"popover",s);break;case"xlinkActuate":Pt(e,"http://www.w3.org/1999/xlink","xlink:actuate",s);break;case"xlinkArcrole":Pt(e,"http://www.w3.org/1999/xlink","xlink:arcrole",s);break;case"xlinkRole":Pt(e,"http://www.w3.org/1999/xlink","xlink:role",s);break;case"xlinkShow":Pt(e,"http://www.w3.org/1999/xlink","xlink:show",s);break;case"xlinkTitle":Pt(e,"http://www.w3.org/1999/xlink","xlink:title",s);break;case"xlinkType":Pt(e,"http://www.w3.org/1999/xlink","xlink:type",s);break;case"xmlBase":Pt(e,"http://www.w3.org/XML/1998/namespace","xml:base",s);break;case"xmlLang":Pt(e,"http://www.w3.org/XML/1998/namespace","xml:lang",s);break;case"xmlSpace":Pt(e,"http://www.w3.org/XML/1998/namespace","xml:space",s);break;case"is":vi(e,"is",s);break;case"innerText":case"textContent":break;default:(!(2<a.length)||a[0]!=="o"&&a[0]!=="O"||a[1]!=="n"&&a[1]!=="N")&&(a=Ix.get(a)||a,vi(e,a,s))}}function ld(e,n,a,s,c,f){switch(a){case"style":Uf(e,s,f);break;case"dangerouslySetInnerHTML":if(s!=null){if(typeof s!="object"||!("__html"in s))throw Error(o(61));if(a=s.__html,a!=null){if(c.children!=null)throw Error(o(60));e.innerHTML=a}}break;case"children":typeof s=="string"?Si(e,s):(typeof s=="number"||typeof s=="bigint")&&Si(e,""+s);break;case"onScroll":s!=null&&Me("scroll",e);break;case"onScrollEnd":s!=null&&Me("scrollend",e);break;case"onClick":s!=null&&(e.onclick=_n);break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"innerHTML":case"ref":break;case"innerText":case"textContent":break;default:if(!Jo.hasOwnProperty(a))e:{if(a[0]==="o"&&a[1]==="n"&&(c=a.endsWith("Capture"),n=a.slice(2,c?a.length-7:void 0),f=e[yt]||null,f=f!=null?f[a]:null,typeof f=="function"&&e.removeEventListener(n,f,c),typeof s=="function")){typeof f!="function"&&f!==null&&(a in e?e[a]=null:e.hasAttribute(a)&&e.removeAttribute(a)),e.addEventListener(n,s,c);break e}a in e?e[a]=s:s===!0?e.setAttribute(a,""):vi(e,a,s)}}}function pt(e,n,a){switch(n){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"img":Me("error",e),Me("load",e);var s=!1,c=!1,f;for(f in a)if(a.hasOwnProperty(f)){var b=a[f];if(b!=null)switch(f){case"src":s=!0;break;case"srcSet":c=!0;break;case"children":case"dangerouslySetInnerHTML":throw Error(o(137,n));default:Ye(e,n,f,b,a,null)}}c&&Ye(e,n,"srcSet",a.srcSet,a,null),s&&Ye(e,n,"src",a.src,a,null);return;case"input":Me("invalid",e);var N=f=b=c=null,O=null,Q=null;for(s in a)if(a.hasOwnProperty(s)){var ie=a[s];if(ie!=null)switch(s){case"name":c=ie;break;case"type":b=ie;break;case"checked":O=ie;break;case"defaultChecked":Q=ie;break;case"value":f=ie;break;case"defaultValue":N=ie;break;case"children":case"dangerouslySetInnerHTML":if(ie!=null)throw Error(o(137,n));break;default:Ye(e,n,s,ie,a,null)}}ns(e,f,N,O,Q,b,c,!1);return;case"select":Me("invalid",e),s=b=f=null;for(c in a)if(a.hasOwnProperty(c)&&(N=a[c],N!=null))switch(c){case"value":f=N;break;case"defaultValue":b=N;break;case"multiple":s=N;default:Ye(e,n,c,N,a,null)}n=f,a=b,e.multiple=!!s,n!=null?Nn(e,!!s,n,!1):a!=null&&Nn(e,!!s,a,!0);return;case"textarea":Me("invalid",e),f=c=s=null;for(b in a)if(a.hasOwnProperty(b)&&(N=a[b],N!=null))switch(b){case"value":s=N;break;case"defaultValue":c=N;break;case"children":f=N;break;case"dangerouslySetInnerHTML":if(N!=null)throw Error(o(91));break;default:Ye(e,n,b,N,a,null)}Bf(e,s,c,f);return;case"option":for(O in a)a.hasOwnProperty(O)&&(s=a[O],s!=null)&&(O==="selected"?e.selected=s&&typeof s!="function"&&typeof s!="symbol":Ye(e,n,O,s,a,null));return;case"dialog":Me("beforetoggle",e),Me("toggle",e),Me("cancel",e),Me("close",e);break;case"iframe":case"object":Me("load",e);break;case"video":case"audio":for(s=0;s<to.length;s++)Me(to[s],e);break;case"image":Me("error",e),Me("load",e);break;case"details":Me("toggle",e);break;case"embed":case"source":case"link":Me("error",e),Me("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(Q in a)if(a.hasOwnProperty(Q)&&(s=a[Q],s!=null))switch(Q){case"children":case"dangerouslySetInnerHTML":throw Error(o(137,n));default:Ye(e,n,Q,s,a,null)}return;default:if(xc(n)){for(ie in a)a.hasOwnProperty(ie)&&(s=a[ie],s!==void 0&&ld(e,n,ie,s,a,void 0));return}}for(N in a)a.hasOwnProperty(N)&&(s=a[N],s!=null&&Ye(e,n,N,s,a,null))}function cS(e,n,a,s){switch(n){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"input":var c=null,f=null,b=null,N=null,O=null,Q=null,ie=null;for(ee in a){var re=a[ee];if(a.hasOwnProperty(ee)&&re!=null)switch(ee){case"checked":break;case"value":break;case"defaultValue":O=re;default:s.hasOwnProperty(ee)||Ye(e,n,ee,null,s,re)}}for(var P in s){var ee=s[P];if(re=a[P],s.hasOwnProperty(P)&&(ee!=null||re!=null))switch(P){case"type":f=ee;break;case"name":c=ee;break;case"checked":Q=ee;break;case"defaultChecked":ie=ee;break;case"value":b=ee;break;case"defaultValue":N=ee;break;case"children":case"dangerouslySetInnerHTML":if(ee!=null)throw Error(o(137,n));break;default:ee!==re&&Ye(e,n,P,ee,s,re)}}Ha(e,b,N,O,Q,ie,f,c);return;case"select":ee=b=N=P=null;for(f in a)if(O=a[f],a.hasOwnProperty(f)&&O!=null)switch(f){case"value":break;case"multiple":ee=O;default:s.hasOwnProperty(f)||Ye(e,n,f,null,s,O)}for(c in s)if(f=s[c],O=a[c],s.hasOwnProperty(c)&&(f!=null||O!=null))switch(c){case"value":P=f;break;case"defaultValue":N=f;break;case"multiple":b=f;default:f!==O&&Ye(e,n,c,f,s,O)}n=N,a=b,s=ee,P!=null?Nn(e,!!a,P,!1):!!s!=!!a&&(n!=null?Nn(e,!!a,n,!0):Nn(e,!!a,a?[]:"",!1));return;case"textarea":ee=P=null;for(N in a)if(c=a[N],a.hasOwnProperty(N)&&c!=null&&!s.hasOwnProperty(N))switch(N){case"value":break;case"children":break;default:Ye(e,n,N,null,s,c)}for(b in s)if(c=s[b],f=a[b],s.hasOwnProperty(b)&&(c!=null||f!=null))switch(b){case"value":P=c;break;case"defaultValue":ee=c;break;case"children":break;case"dangerouslySetInnerHTML":if(c!=null)throw Error(o(91));break;default:c!==f&&Ye(e,n,b,c,s,f)}Lf(e,P,ee);return;case"option":for(var he in a)P=a[he],a.hasOwnProperty(he)&&P!=null&&!s.hasOwnProperty(he)&&(he==="selected"?e.selected=!1:Ye(e,n,he,null,s,P));for(O in s)P=s[O],ee=a[O],s.hasOwnProperty(O)&&P!==ee&&(P!=null||ee!=null)&&(O==="selected"?e.selected=P&&typeof P!="function"&&typeof P!="symbol":Ye(e,n,O,P,s,ee));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 xe in a)P=a[xe],a.hasOwnProperty(xe)&&P!=null&&!s.hasOwnProperty(xe)&&Ye(e,n,xe,null,s,P);for(Q in s)if(P=s[Q],ee=a[Q],s.hasOwnProperty(Q)&&P!==ee&&(P!=null||ee!=null))switch(Q){case"children":case"dangerouslySetInnerHTML":if(P!=null)throw Error(o(137,n));break;default:Ye(e,n,Q,P,s,ee)}return;default:if(xc(n)){for(var Ve in a)P=a[Ve],a.hasOwnProperty(Ve)&&P!==void 0&&!s.hasOwnProperty(Ve)&&ld(e,n,Ve,void 0,s,P);for(ie in s)P=s[ie],ee=a[ie],!s.hasOwnProperty(ie)||P===ee||P===void 0&&ee===void 0||ld(e,n,ie,P,s,ee);return}}for(var X in a)P=a[X],a.hasOwnProperty(X)&&P!=null&&!s.hasOwnProperty(X)&&Ye(e,n,X,null,s,P);for(re in s)P=s[re],ee=a[re],!s.hasOwnProperty(re)||P===ee||P==null&&ee==null||Ye(e,n,re,P,s,ee)}function Gg(e){switch(e){case"css":case"script":case"font":case"img":case"image":case"input":case"link":return!0;default:return!1}}function uS(){if(typeof performance.getEntriesByType=="function"){for(var e=0,n=0,a=performance.getEntriesByType("resource"),s=0;s<a.length;s++){var c=a[s],f=c.transferSize,b=c.initiatorType,N=c.duration;if(f&&N&&Gg(b)){for(b=0,N=c.responseEnd,s+=1;s<a.length;s++){var O=a[s],Q=O.startTime;if(Q>N)break;var ie=O.transferSize,re=O.initiatorType;ie&&Gg(re)&&(O=O.responseEnd,b+=ie*(O<N?1:(N-Q)/(O-Q)))}if(--s,n+=8*(f+b)/(c.duration/1e3),e++,10<e)break}}if(0<e)return n/e/1e6}return navigator.connection&&(e=navigator.connection.downlink,typeof e=="number")?e:5}var od=null,sd=null;function Js(e){return e.nodeType===9?e:e.ownerDocument}function qg(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 Yg(e,n){if(e===0)switch(n){case"svg":return 1;case"math":return 2;default:return 0}return e===1&&n==="foreignObject"?0:e}function rd(e,n){return e==="textarea"||e==="noscript"||typeof n.children=="string"||typeof n.children=="number"||typeof n.children=="bigint"||typeof n.dangerouslySetInnerHTML=="object"&&n.dangerouslySetInnerHTML!==null&&n.dangerouslySetInnerHTML.__html!=null}var cd=null;function dS(){var e=window.event;return e&&e.type==="popstate"?e===cd?!1:(cd=e,!0):(cd=null,!1)}var Vg=typeof setTimeout=="function"?setTimeout:void 0,fS=typeof clearTimeout=="function"?clearTimeout:void 0,Xg=typeof Promise=="function"?Promise:void 0,hS=typeof queueMicrotask=="function"?queueMicrotask:typeof Xg<"u"?function(e){return Xg.resolve(null).then(e).catch(mS)}:Vg;function mS(e){setTimeout(function(){throw e})}function ga(e){return e==="head"}function $g(e,n){var a=n,s=0;do{var c=a.nextSibling;if(e.removeChild(a),c&&c.nodeType===8)if(a=c.data,a==="/$"||a==="/&"){if(s===0){e.removeChild(c),Ji(n);return}s--}else if(a==="$"||a==="$?"||a==="$~"||a==="$!"||a==="&")s++;else if(a==="html")ao(e.ownerDocument.documentElement);else if(a==="head"){a=e.ownerDocument.head,ao(a);for(var f=a.firstChild;f;){var b=f.nextSibling,N=f.nodeName;f[Da]||N==="SCRIPT"||N==="STYLE"||N==="LINK"&&f.rel.toLowerCase()==="stylesheet"||a.removeChild(f),f=b}}else a==="body"&&ao(e.ownerDocument.body);a=c}while(a);Ji(n)}function Zg(e,n){var a=e;e=0;do{var s=a.nextSibling;if(a.nodeType===1?n?(a._stashedDisplay=a.style.display,a.style.display="none"):(a.style.display=a._stashedDisplay||"",a.getAttribute("style")===""&&a.removeAttribute("style")):a.nodeType===3&&(n?(a._stashedText=a.nodeValue,a.nodeValue=""):a.nodeValue=a._stashedText||""),s&&s.nodeType===8)if(a=s.data,a==="/$"){if(e===0)break;e--}else a!=="$"&&a!=="$?"&&a!=="$~"&&a!=="$!"||e++;a=s}while(a)}function ud(e){var n=e.firstChild;for(n&&n.nodeType===10&&(n=n.nextSibling);n;){var a=n;switch(n=n.nextSibling,a.nodeName){case"HTML":case"HEAD":case"BODY":ud(a),bl(a);continue;case"SCRIPT":case"STYLE":continue;case"LINK":if(a.rel.toLowerCase()==="stylesheet")continue}e.removeChild(a)}}function gS(e,n,a,s){for(;e.nodeType===1;){var c=a;if(e.nodeName.toLowerCase()!==n.toLowerCase()){if(!s&&(e.nodeName!=="INPUT"||e.type!=="hidden"))break}else if(s){if(!e[Da])switch(n){case"meta":if(!e.hasAttribute("itemprop"))break;return e;case"link":if(f=e.getAttribute("rel"),f==="stylesheet"&&e.hasAttribute("data-precedence"))break;if(f!==c.rel||e.getAttribute("href")!==(c.href==null||c.href===""?null:c.href)||e.getAttribute("crossorigin")!==(c.crossOrigin==null?null:c.crossOrigin)||e.getAttribute("title")!==(c.title==null?null:c.title))break;return e;case"style":if(e.hasAttribute("data-precedence"))break;return e;case"script":if(f=e.getAttribute("src"),(f!==(c.src==null?null:c.src)||e.getAttribute("type")!==(c.type==null?null:c.type)||e.getAttribute("crossorigin")!==(c.crossOrigin==null?null:c.crossOrigin))&&f&&e.hasAttribute("async")&&!e.hasAttribute("itemprop"))break;return e;default:return e}}else if(n==="input"&&e.type==="hidden"){var f=c.name==null?null:""+c.name;if(c.type==="hidden"&&e.getAttribute("name")===f)return e}else return e;if(e=Zt(e.nextSibling),e===null)break}return null}function pS(e,n,a){if(n==="")return null;for(;e.nodeType!==3;)if((e.nodeType!==1||e.nodeName!=="INPUT"||e.type!=="hidden")&&!a||(e=Zt(e.nextSibling),e===null))return null;return e}function Kg(e,n){for(;e.nodeType!==8;)if((e.nodeType!==1||e.nodeName!=="INPUT"||e.type!=="hidden")&&!n||(e=Zt(e.nextSibling),e===null))return null;return e}function dd(e){return e.data==="$?"||e.data==="$~"}function fd(e){return e.data==="$!"||e.data==="$?"&&e.ownerDocument.readyState!=="loading"}function yS(e,n){var a=e.ownerDocument;if(e.data==="$~")e._reactRetry=n;else if(e.data!=="$?"||a.readyState!=="loading")n();else{var s=function(){n(),a.removeEventListener("DOMContentLoaded",s)};a.addEventListener("DOMContentLoaded",s),e._reactRetry=s}}function Zt(e){for(;e!=null;e=e.nextSibling){var n=e.nodeType;if(n===1||n===3)break;if(n===8){if(n=e.data,n==="$"||n==="$!"||n==="$?"||n==="$~"||n==="&"||n==="F!"||n==="F")break;if(n==="/$"||n==="/&")return null}}return e}var hd=null;function Fg(e){e=e.nextSibling;for(var n=0;e;){if(e.nodeType===8){var a=e.data;if(a==="/$"||a==="/&"){if(n===0)return Zt(e.nextSibling);n--}else a!=="$"&&a!=="$!"&&a!=="$?"&&a!=="$~"&&a!=="&"||n++}e=e.nextSibling}return null}function Qg(e){e=e.previousSibling;for(var n=0;e;){if(e.nodeType===8){var a=e.data;if(a==="$"||a==="$!"||a==="$?"||a==="$~"||a==="&"){if(n===0)return e;n--}else a!=="/$"&&a!=="/&"||n++}e=e.previousSibling}return null}function Pg(e,n,a){switch(n=Js(a),e){case"html":if(e=n.documentElement,!e)throw Error(o(452));return e;case"head":if(e=n.head,!e)throw Error(o(453));return e;case"body":if(e=n.body,!e)throw Error(o(454));return e;default:throw Error(o(451))}}function ao(e){for(var n=e.attributes;n.length;)e.removeAttributeNode(n[0]);bl(e)}var Kt=new Map,Jg=new Set;function Ws(e){return typeof e.getRootNode=="function"?e.getRootNode():e.nodeType===9?e:e.ownerDocument}var Un=H.d;H.d={f:vS,r:xS,D:bS,C:SS,L:wS,m:NS,X:ES,S:_S,M:CS};function vS(){var e=Un.f(),n=Vs();return e||n}function xS(e){var n=Kn(e);n!==null&&n.tag===5&&n.type==="form"?gm(n):Un.r(e)}var Fi=typeof document>"u"?null:document;function Wg(e,n,a){var s=Fi;if(s&&typeof n=="string"&&n){var c=Nt(n);c='link[rel="'+e+'"][href="'+c+'"]',typeof a=="string"&&(c+='[crossorigin="'+a+'"]'),Jg.has(c)||(Jg.add(c),e={rel:e,crossOrigin:a,href:n},s.querySelector(c)===null&&(n=s.createElement("link"),pt(n,"link",e),tt(n),s.head.appendChild(n)))}}function bS(e){Un.D(e),Wg("dns-prefetch",e,null)}function SS(e,n){Un.C(e,n),Wg("preconnect",e,n)}function wS(e,n,a){Un.L(e,n,a);var s=Fi;if(s&&e&&n){var c='link[rel="preload"][as="'+Nt(n)+'"]';n==="image"&&a&&a.imageSrcSet?(c+='[imagesrcset="'+Nt(a.imageSrcSet)+'"]',typeof a.imageSizes=="string"&&(c+='[imagesizes="'+Nt(a.imageSizes)+'"]')):c+='[href="'+Nt(e)+'"]';var f=c;switch(n){case"style":f=Qi(e);break;case"script":f=Pi(e)}Kt.has(f)||(e=v({rel:"preload",href:n==="image"&&a&&a.imageSrcSet?void 0:e,as:n},a),Kt.set(f,e),s.querySelector(c)!==null||n==="style"&&s.querySelector(io(f))||n==="script"&&s.querySelector(lo(f))||(n=s.createElement("link"),pt(n,"link",e),tt(n),s.head.appendChild(n)))}}function NS(e,n){Un.m(e,n);var a=Fi;if(a&&e){var s=n&&typeof n.as=="string"?n.as:"script",c='link[rel="modulepreload"][as="'+Nt(s)+'"][href="'+Nt(e)+'"]',f=c;switch(s){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":f=Pi(e)}if(!Kt.has(f)&&(e=v({rel:"modulepreload",href:e},n),Kt.set(f,e),a.querySelector(c)===null)){switch(s){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(a.querySelector(lo(f)))return}s=a.createElement("link"),pt(s,"link",e),tt(s),a.head.appendChild(s)}}}function _S(e,n,a){Un.S(e,n,a);var s=Fi;if(s&&e){var c=Qn(s).hoistableStyles,f=Qi(e);n=n||"default";var b=c.get(f);if(!b){var N={loading:0,preload:null};if(b=s.querySelector(io(f)))N.loading=5;else{e=v({rel:"stylesheet",href:e,"data-precedence":n},a),(a=Kt.get(f))&&md(e,a);var O=b=s.createElement("link");tt(O),pt(O,"link",e),O._p=new Promise(function(Q,ie){O.onload=Q,O.onerror=ie}),O.addEventListener("load",function(){N.loading|=1}),O.addEventListener("error",function(){N.loading|=2}),N.loading|=4,er(b,n,s)}b={type:"stylesheet",instance:b,count:1,state:N},c.set(f,b)}}}function ES(e,n){Un.X(e,n);var a=Fi;if(a&&e){var s=Qn(a).hoistableScripts,c=Pi(e),f=s.get(c);f||(f=a.querySelector(lo(c)),f||(e=v({src:e,async:!0},n),(n=Kt.get(c))&&gd(e,n),f=a.createElement("script"),tt(f),pt(f,"link",e),a.head.appendChild(f)),f={type:"script",instance:f,count:1,state:null},s.set(c,f))}}function CS(e,n){Un.M(e,n);var a=Fi;if(a&&e){var s=Qn(a).hoistableScripts,c=Pi(e),f=s.get(c);f||(f=a.querySelector(lo(c)),f||(e=v({src:e,async:!0,type:"module"},n),(n=Kt.get(c))&&gd(e,n),f=a.createElement("script"),tt(f),pt(f,"link",e),a.head.appendChild(f)),f={type:"script",instance:f,count:1,state:null},s.set(c,f))}}function ep(e,n,a,s){var c=(c=se.current)?Ws(c):null;if(!c)throw Error(o(446));switch(e){case"meta":case"title":return null;case"style":return typeof a.precedence=="string"&&typeof a.href=="string"?(n=Qi(a.href),a=Qn(c).hoistableStyles,s=a.get(n),s||(s={type:"style",instance:null,count:0,state:null},a.set(n,s)),s):{type:"void",instance:null,count:0,state:null};case"link":if(a.rel==="stylesheet"&&typeof a.href=="string"&&typeof a.precedence=="string"){e=Qi(a.href);var f=Qn(c).hoistableStyles,b=f.get(e);if(b||(c=c.ownerDocument||c,b={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},f.set(e,b),(f=c.querySelector(io(e)))&&!f._p&&(b.instance=f,b.state.loading=5),Kt.has(e)||(a={rel:"preload",as:"style",href:a.href,crossOrigin:a.crossOrigin,integrity:a.integrity,media:a.media,hrefLang:a.hrefLang,referrerPolicy:a.referrerPolicy},Kt.set(e,a),f||TS(c,e,a,b.state))),n&&s===null)throw Error(o(528,""));return b}if(n&&s!==null)throw Error(o(529,""));return null;case"script":return n=a.async,a=a.src,typeof a=="string"&&n&&typeof n!="function"&&typeof n!="symbol"?(n=Pi(a),a=Qn(c).hoistableScripts,s=a.get(n),s||(s={type:"script",instance:null,count:0,state:null},a.set(n,s)),s):{type:"void",instance:null,count:0,state:null};default:throw Error(o(444,e))}}function Qi(e){return'href="'+Nt(e)+'"'}function io(e){return'link[rel="stylesheet"]['+e+"]"}function tp(e){return v({},e,{"data-precedence":e.precedence,precedence:null})}function TS(e,n,a,s){e.querySelector('link[rel="preload"][as="style"]['+n+"]")?s.loading=1:(n=e.createElement("link"),s.preload=n,n.addEventListener("load",function(){return s.loading|=1}),n.addEventListener("error",function(){return s.loading|=2}),pt(n,"link",a),tt(n),e.head.appendChild(n))}function Pi(e){return'[src="'+Nt(e)+'"]'}function lo(e){return"script[async]"+e}function np(e,n,a){if(n.count++,n.instance===null)switch(n.type){case"style":var s=e.querySelector('style[data-href~="'+Nt(a.href)+'"]');if(s)return n.instance=s,tt(s),s;var c=v({},a,{"data-href":a.href,"data-precedence":a.precedence,href:null,precedence:null});return s=(e.ownerDocument||e).createElement("style"),tt(s),pt(s,"style",c),er(s,a.precedence,e),n.instance=s;case"stylesheet":c=Qi(a.href);var f=e.querySelector(io(c));if(f)return n.state.loading|=4,n.instance=f,tt(f),f;s=tp(a),(c=Kt.get(c))&&md(s,c),f=(e.ownerDocument||e).createElement("link"),tt(f);var b=f;return b._p=new Promise(function(N,O){b.onload=N,b.onerror=O}),pt(f,"link",s),n.state.loading|=4,er(f,a.precedence,e),n.instance=f;case"script":return f=Pi(a.src),(c=e.querySelector(lo(f)))?(n.instance=c,tt(c),c):(s=a,(c=Kt.get(f))&&(s=v({},a),gd(s,c)),e=e.ownerDocument||e,c=e.createElement("script"),tt(c),pt(c,"link",s),e.head.appendChild(c),n.instance=c);case"void":return null;default:throw Error(o(443,n.type))}else n.type==="stylesheet"&&(n.state.loading&4)===0&&(s=n.instance,n.state.loading|=4,er(s,a.precedence,e));return n.instance}function er(e,n,a){for(var s=a.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),c=s.length?s[s.length-1]:null,f=c,b=0;b<s.length;b++){var N=s[b];if(N.dataset.precedence===n)f=N;else if(f!==c)break}f?f.parentNode.insertBefore(e,f.nextSibling):(n=a.nodeType===9?a.head:a,n.insertBefore(e,n.firstChild))}function md(e,n){e.crossOrigin==null&&(e.crossOrigin=n.crossOrigin),e.referrerPolicy==null&&(e.referrerPolicy=n.referrerPolicy),e.title==null&&(e.title=n.title)}function gd(e,n){e.crossOrigin==null&&(e.crossOrigin=n.crossOrigin),e.referrerPolicy==null&&(e.referrerPolicy=n.referrerPolicy),e.integrity==null&&(e.integrity=n.integrity)}var tr=null;function ap(e,n,a){if(tr===null){var s=new Map,c=tr=new Map;c.set(a,s)}else c=tr,s=c.get(a),s||(s=new Map,c.set(a,s));if(s.has(e))return s;for(s.set(e,null),a=a.getElementsByTagName(e),c=0;c<a.length;c++){var f=a[c];if(!(f[Da]||f[rt]||e==="link"&&f.getAttribute("rel")==="stylesheet")&&f.namespaceURI!=="http://www.w3.org/2000/svg"){var b=f.getAttribute(n)||"";b=e+b;var N=s.get(b);N?N.push(f):s.set(b,[f])}}return s}function ip(e,n,a){e=e.ownerDocument||e,e.head.insertBefore(a,n==="title"?e.querySelector("head > title"):null)}function AS(e,n,a){if(a===1||n.itemProp!=null)return!1;switch(e){case"meta":case"title":return!0;case"style":if(typeof n.precedence!="string"||typeof n.href!="string"||n.href==="")break;return!0;case"link":if(typeof n.rel!="string"||typeof n.href!="string"||n.href===""||n.onLoad||n.onError)break;return n.rel==="stylesheet"?(e=n.disabled,typeof n.precedence=="string"&&e==null):!0;case"script":if(n.async&&typeof n.async!="function"&&typeof n.async!="symbol"&&!n.onLoad&&!n.onError&&n.src&&typeof n.src=="string")return!0}return!1}function lp(e){return!(e.type==="stylesheet"&&(e.state.loading&3)===0)}function MS(e,n,a,s){if(a.type==="stylesheet"&&(typeof s.media!="string"||matchMedia(s.media).matches!==!1)&&(a.state.loading&4)===0){if(a.instance===null){var c=Qi(s.href),f=n.querySelector(io(c));if(f){n=f._p,n!==null&&typeof n=="object"&&typeof n.then=="function"&&(e.count++,e=nr.bind(e),n.then(e,e)),a.state.loading|=4,a.instance=f,tt(f);return}f=n.ownerDocument||n,s=tp(s),(c=Kt.get(c))&&md(s,c),f=f.createElement("link"),tt(f);var b=f;b._p=new Promise(function(N,O){b.onload=N,b.onerror=O}),pt(f,"link",s),a.instance=f}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(a,n),(n=a.state.preload)&&(a.state.loading&3)===0&&(e.count++,a=nr.bind(e),n.addEventListener("load",a),n.addEventListener("error",a))}}var pd=0;function jS(e,n){return e.stylesheets&&e.count===0&&ir(e,e.stylesheets),0<e.count||0<e.imgCount?function(a){var s=setTimeout(function(){if(e.stylesheets&&ir(e,e.stylesheets),e.unsuspend){var f=e.unsuspend;e.unsuspend=null,f()}},6e4+n);0<e.imgBytes&&pd===0&&(pd=62500*uS());var c=setTimeout(function(){if(e.waitingForImages=!1,e.count===0&&(e.stylesheets&&ir(e,e.stylesheets),e.unsuspend)){var f=e.unsuspend;e.unsuspend=null,f()}},(e.imgBytes>pd?50:800)+n);return e.unsuspend=a,function(){e.unsuspend=null,clearTimeout(s),clearTimeout(c)}}:null}function nr(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)ir(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var ar=null;function ir(e,n){e.stylesheets=null,e.unsuspend!==null&&(e.count++,ar=new Map,n.forEach(zS,e),ar=null,nr.call(e))}function zS(e,n){if(!(n.state.loading&4)){var a=ar.get(e);if(a)var s=a.get(null);else{a=new Map,ar.set(e,a);for(var c=e.querySelectorAll("link[data-precedence],style[data-precedence]"),f=0;f<c.length;f++){var b=c[f];(b.nodeName==="LINK"||b.getAttribute("media")!=="not all")&&(a.set(b.dataset.precedence,b),s=b)}s&&a.set(null,s)}c=n.instance,b=c.getAttribute("data-precedence"),f=a.get(b)||s,f===s&&a.set(null,c),a.set(b,c),this.count++,s=nr.bind(this),c.addEventListener("load",s),c.addEventListener("error",s),f?f.parentNode.insertBefore(c,f.nextSibling):(e=e.nodeType===9?e.head:e,e.insertBefore(c,e.firstChild)),n.state.loading|=4}}var oo={$$typeof:E,Provider:null,Consumer:null,_currentValue:G,_currentValue2:G,_threadCount:0};function RS(e,n,a,s,c,f,b,N,O){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=yl(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=yl(0),this.hiddenUpdates=yl(null),this.identifierPrefix=s,this.onUncaughtError=c,this.onCaughtError=f,this.onRecoverableError=b,this.pooledCache=null,this.pooledCacheLanes=0,this.formState=O,this.incompleteTransitions=new Map}function op(e,n,a,s,c,f,b,N,O,Q,ie,re){return e=new RS(e,n,a,b,O,Q,ie,re,N),n=1,f===!0&&(n|=24),f=Dt(3,null,null,n),e.current=f,f.stateNode=e,n=Fc(),n.refCount++,e.pooledCache=n,n.refCount++,f.memoizedState={element:s,isDehydrated:a,cache:n},Wc(f),e}function sp(e){return e?(e=Ai,e):Ai}function rp(e,n,a,s,c,f){c=sp(c),s.context===null?s.context=c:s.pendingContext=c,s=ia(n),s.payload={element:a},f=f===void 0?null:f,f!==null&&(s.callback=f),a=la(e,s,n),a!==null&&(Mt(a,e,n),Bl(a,e,n))}function cp(e,n){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var a=e.retryLane;e.retryLane=a!==0&&a<n?a:n}}function yd(e,n){cp(e,n),(e=e.alternate)&&cp(e,n)}function up(e){if(e.tag===13||e.tag===31){var n=ka(e,67108864);n!==null&&Mt(n,e,67108864),yd(e,67108864)}}function dp(e){if(e.tag===13||e.tag===31){var n=Bt();n=vl(n);var a=ka(e,n);a!==null&&Mt(a,e,n),yd(e,n)}}var lr=!0;function DS(e,n,a,s){var c=z.T;z.T=null;var f=H.p;try{H.p=2,vd(e,n,a,s)}finally{H.p=f,z.T=c}}function OS(e,n,a,s){var c=z.T;z.T=null;var f=H.p;try{H.p=8,vd(e,n,a,s)}finally{H.p=f,z.T=c}}function vd(e,n,a,s){if(lr){var c=xd(s);if(c===null)id(e,n,s,or,a),hp(e,s);else if(IS(c,e,n,a,s))s.stopPropagation();else if(hp(e,s),n&4&&-1<HS.indexOf(e)){for(;c!==null;){var f=Kn(c);if(f!==null)switch(f.tag){case 3:if(f=f.stateNode,f.current.memoizedState.isDehydrated){var b=bn(f.pendingLanes);if(b!==0){var N=f;for(N.pendingLanes|=2,N.entangledLanes|=2;b;){var O=1<<31-bt(b);N.entanglements[1]|=O,b&=~O}fn(f),(Le&6)===0&&(qs=ft()+500,eo(0))}}break;case 31:case 13:N=ka(f,2),N!==null&&Mt(N,f,2),Vs(),yd(f,2)}if(f=xd(s),f===null&&id(e,n,s,or,a),f===c)break;c=f}c!==null&&s.stopPropagation()}else id(e,n,s,null,a)}}function xd(e){return e=Sc(e),bd(e)}var or=null;function bd(e){if(or=null,e=Zn(e),e!==null){var n=u(e);if(n===null)e=null;else{var a=n.tag;if(a===13){if(e=d(n),e!==null)return e;e=null}else if(a===31){if(e=m(n),e!==null)return e;e=null}else if(a===3){if(n.stateNode.current.memoizedState.isDehydrated)return n.tag===3?n.stateNode.containerInfo:null;e=null}else n!==e&&(e=null)}}return or=e,null}function fp(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(di()){case xn:return 2;case $n:return 8;case Ma:case oc:return 32;case fi:return 268435456;default:return 32}default:return 32}}var Sd=!1,pa=null,ya=null,va=null,so=new Map,ro=new Map,xa=[],HS="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 hp(e,n){switch(e){case"focusin":case"focusout":pa=null;break;case"dragenter":case"dragleave":ya=null;break;case"mouseover":case"mouseout":va=null;break;case"pointerover":case"pointerout":so.delete(n.pointerId);break;case"gotpointercapture":case"lostpointercapture":ro.delete(n.pointerId)}}function co(e,n,a,s,c,f){return e===null||e.nativeEvent!==f?(e={blockedOn:n,domEventName:a,eventSystemFlags:s,nativeEvent:f,targetContainers:[c]},n!==null&&(n=Kn(n),n!==null&&up(n)),e):(e.eventSystemFlags|=s,n=e.targetContainers,c!==null&&n.indexOf(c)===-1&&n.push(c),e)}function IS(e,n,a,s,c){switch(n){case"focusin":return pa=co(pa,e,n,a,s,c),!0;case"dragenter":return ya=co(ya,e,n,a,s,c),!0;case"mouseover":return va=co(va,e,n,a,s,c),!0;case"pointerover":var f=c.pointerId;return so.set(f,co(so.get(f)||null,e,n,a,s,c)),!0;case"gotpointercapture":return f=c.pointerId,ro.set(f,co(ro.get(f)||null,e,n,a,s,c)),!0}return!1}function mp(e){var n=Zn(e.target);if(n!==null){var a=u(n);if(a!==null){if(n=a.tag,n===13){if(n=d(a),n!==null){e.blockedOn=n,Ko(e.priority,function(){dp(a)});return}}else if(n===31){if(n=m(a),n!==null){e.blockedOn=n,Ko(e.priority,function(){dp(a)});return}}else if(n===3&&a.stateNode.current.memoizedState.isDehydrated){e.blockedOn=a.tag===3?a.stateNode.containerInfo:null;return}}}e.blockedOn=null}function sr(e){if(e.blockedOn!==null)return!1;for(var n=e.targetContainers;0<n.length;){var a=xd(e.nativeEvent);if(a===null){a=e.nativeEvent;var s=new a.constructor(a.type,a);bc=s,a.target.dispatchEvent(s),bc=null}else return n=Kn(a),n!==null&&up(n),e.blockedOn=a,!1;n.shift()}return!0}function gp(e,n,a){sr(e)&&a.delete(n)}function LS(){Sd=!1,pa!==null&&sr(pa)&&(pa=null),ya!==null&&sr(ya)&&(ya=null),va!==null&&sr(va)&&(va=null),so.forEach(gp),ro.forEach(gp)}function rr(e,n){e.blockedOn===n&&(e.blockedOn=null,Sd||(Sd=!0,t.unstable_scheduleCallback(t.unstable_NormalPriority,LS)))}var cr=null;function pp(e){cr!==e&&(cr=e,t.unstable_scheduleCallback(t.unstable_NormalPriority,function(){cr===e&&(cr=null);for(var n=0;n<e.length;n+=3){var a=e[n],s=e[n+1],c=e[n+2];if(typeof s!="function"){if(bd(s||a)===null)continue;break}var f=Kn(a);f!==null&&(e.splice(n,3),n-=3,xu(f,{pending:!0,data:c,method:a.method,action:s},s,c))}}))}function Ji(e){function n(O){return rr(O,e)}pa!==null&&rr(pa,e),ya!==null&&rr(ya,e),va!==null&&rr(va,e),so.forEach(n),ro.forEach(n);for(var a=0;a<xa.length;a++){var s=xa[a];s.blockedOn===e&&(s.blockedOn=null)}for(;0<xa.length&&(a=xa[0],a.blockedOn===null);)mp(a),a.blockedOn===null&&xa.shift();if(a=(e.ownerDocument||e).$$reactFormReplay,a!=null)for(s=0;s<a.length;s+=3){var c=a[s],f=a[s+1],b=c[yt]||null;if(typeof f=="function")b||pp(a);else if(b){var N=null;if(f&&f.hasAttribute("formAction")){if(c=f,b=f[yt]||null)N=b.formAction;else if(bd(c)!==null)continue}else N=b.action;typeof N=="function"?a[s+1]=N:(a.splice(s,3),s-=3),pp(a)}}}function yp(){function e(f){f.canIntercept&&f.info==="react-transition"&&f.intercept({handler:function(){return new Promise(function(b){return c=b})},focusReset:"manual",scroll:"manual"})}function n(){c!==null&&(c(),c=null),s||setTimeout(a,20)}function a(){if(!s&&!navigation.transition){var f=navigation.currentEntry;f&&f.url!=null&&navigation.navigate(f.url,{state:f.getState(),info:"react-transition",history:"replace"})}}if(typeof navigation=="object"){var s=!1,c=null;return navigation.addEventListener("navigate",e),navigation.addEventListener("navigatesuccess",n),navigation.addEventListener("navigateerror",n),setTimeout(a,100),function(){s=!0,navigation.removeEventListener("navigate",e),navigation.removeEventListener("navigatesuccess",n),navigation.removeEventListener("navigateerror",n),c!==null&&(c(),c=null)}}}function wd(e){this._internalRoot=e}ur.prototype.render=wd.prototype.render=function(e){var n=this._internalRoot;if(n===null)throw Error(o(409));var a=n.current,s=Bt();rp(a,s,e,n,null,null)},ur.prototype.unmount=wd.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var n=e.containerInfo;rp(e.current,2,null,e,null,null),Vs(),n[Sn]=null}};function ur(e){this._internalRoot=e}ur.prototype.unstable_scheduleHydration=function(e){if(e){var n=Zo();e={blockedOn:null,target:e,priority:n};for(var a=0;a<xa.length&&n!==0&&n<xa[a].priority;a++);xa.splice(a,0,e),a===0&&mp(e)}};var vp=i.version;if(vp!=="19.2.5")throw Error(o(527,vp,"19.2.5"));H.findDOMNode=function(e){var n=e._reactInternals;if(n===void 0)throw typeof e.render=="function"?Error(o(188)):(e=Object.keys(e).join(","),Error(o(268,e)));return e=g(n),e=e!==null?p(e):null,e=e===null?null:e.stateNode,e};var BS={bundleType:0,version:"19.2.5",rendererPackageName:"react-dom",currentDispatcherRef:z,reconcilerVersion:"19.2.5"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var dr=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!dr.isDisabled&&dr.supportsFiber)try{ja=dr.inject(BS),xt=dr}catch{}}return fo.createRoot=function(e,n){if(!r(e))throw Error(o(299));var a=!1,s="",c=Em,f=Cm,b=Tm;return n!=null&&(n.unstable_strictMode===!0&&(a=!0),n.identifierPrefix!==void 0&&(s=n.identifierPrefix),n.onUncaughtError!==void 0&&(c=n.onUncaughtError),n.onCaughtError!==void 0&&(f=n.onCaughtError),n.onRecoverableError!==void 0&&(b=n.onRecoverableError)),n=op(e,1,!1,null,null,a,s,null,c,f,b,yp),e[Sn]=n.current,ad(e),new wd(n)},fo.hydrateRoot=function(e,n,a){if(!r(e))throw Error(o(299));var s=!1,c="",f=Em,b=Cm,N=Tm,O=null;return a!=null&&(a.unstable_strictMode===!0&&(s=!0),a.identifierPrefix!==void 0&&(c=a.identifierPrefix),a.onUncaughtError!==void 0&&(f=a.onUncaughtError),a.onCaughtError!==void 0&&(b=a.onCaughtError),a.onRecoverableError!==void 0&&(N=a.onRecoverableError),a.formState!==void 0&&(O=a.formState)),n=op(e,1,!0,n,a??null,s,c,O,f,b,N,yp),n.context=sp(null),a=n.current,s=Bt(),s=vl(s),c=ia(s),c.callback=null,la(a,c,s),a=s,n.current.lanes=a,Ra(n,a),fn(n),e[Sn]=n.current,ad(e),new ur(n)},fo.version="19.2.5",fo}var Ap;function ZS(){if(Ap)return Ed.exports;Ap=1;function t(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(t)}catch(i){console.error(i)}}return t(),Ed.exports=$S(),Ed.exports}var KS=ZS();const Mp=t=>{let i;const l=new Set,o=(g,p)=>{const v=typeof g=="function"?g(i):g;if(!Object.is(v,i)){const x=i;i=p??(typeof v!="object"||v===null)?v:Object.assign({},i,v),l.forEach(S=>S(i,x))}},r=()=>i,m={setState:o,getState:r,getInitialState:()=>y,subscribe:g=>(l.add(g),()=>l.delete(g))},y=i=t(o,r,m);return m},FS=(t=>t?Mp(t):Mp),QS=t=>t;function PS(t,i=QS){const l=yo.useSyncExternalStore(t.subscribe,yo.useCallback(()=>i(t.getState()),[t,i]),yo.useCallback(()=>i(t.getInitialState()),[t,i]));return yo.useDebugValue(l),l}const jp=t=>{const i=FS(t),l=o=>PS(i,o);return Object.assign(l,i),l},x0=(t=>t?jp(t):jp),b0=["default","gpt","claude","gemini","grok"];function zp(t){return Array.isArray(t.images)}function JS(t){let i="message";const l=[];for(const r of t.split(`
|
|
10
|
+
`))r.startsWith("event:")&&(i=r.slice(6).trim()),r.startsWith("data:")&&l.push(r.slice(5).trimStart());if(l.length===0)return null;const o=l.join(`
|
|
11
|
+
`);return!o||o==="[DONE]"?null:{event:i,data:JSON.parse(o)}}async function WS(t,i={}){const l=await fetch("/api/node/generate",{method:"POST",headers:{"Content-Type":"application/json",Accept:"text/event-stream"},body:JSON.stringify(t)});if(!(l.headers.get("content-type")??"").includes("text/event-stream")){const y=await l.json().catch(()=>({}));if(!l.ok){const g=y,p=g?.error?.message??`Request failed: ${l.status}`,v=new Error(p);throw v.code=g?.error?.code,v.status=g?.status??l.status,v}return y}if(!l.ok||!l.body)throw new Error(`Request failed: ${l.status}`);const r=l.body.getReader(),u=new TextDecoder;let d="",m=null;for(;;){const{done:y,value:g}=await r.read();if(y)break;d+=u.decode(g,{stream:!0});let p=d.indexOf(`
|
|
12
|
+
|
|
13
|
+
`);for(;p!==-1;){const v=d.slice(0,p);d=d.slice(p+2);const x=JS(v);if(x){if(x.event==="partial")i.onPartial?.(x.data);else if(x.event==="phase")i.onPhase?.(x.data);else if(x.event==="done")m=x.data;else if(x.event==="error"){const S=x.data,w=S?.error?.message??"Node generation failed",A=new Error(w);throw A.code=S?.error?.code,A.status=S?.status,A}}p=d.indexOf(`
|
|
14
|
+
|
|
15
|
+
`)}}if(!m)throw new Error("Node stream ended without a final image");return m}async function ot(t,i){const l=await fetch(t,i),o=await l.json().catch(()=>({}));if(!l.ok){const r=o.error,u=o.code,d=typeof r=="string"?r:r?.message??`Request failed: ${l.status}`,m=new Error(d);throw m.status=l.status,typeof r!="string"&&r?.code?m.code=r.code:u&&(m.code=u),typeof o.currentVersion=="number"&&(m.currentVersion=o.currentVersion),m}return o}function Md(t){const i=new URLSearchParams;t?.kind&&i.set("kind",t.kind),t?.sessionId&&i.set("sessionId",t.sessionId),t?.includeTerminal&&i.set("includeTerminal","1");const l=i.size>0?`?${i.toString()}`:"";return ot(`/api/inflight${l}`)}async function Rp(t){await fetch(`/api/inflight/${encodeURIComponent(t)}`,{method:"DELETE"}).catch(()=>{})}function e1(){return ot("/api/oauth/status")}function t1(){return ot("/api/billing")}function n1(t){return ot("/api/generate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)})}function ef(t={}){const i=new URLSearchParams;return i.set("limit",String(t.limit??50)),t.since!=null&&i.set("since",String(t.since)),t.cursor&&(i.set("before",String(t.cursor.before)),i.set("beforeFilename",t.cursor.beforeFilename)),t.sessionId&&i.set("sessionId",t.sessionId),ot(`/api/history?${i.toString()}`)}function a1(t={}){const i=new URLSearchParams;return i.set("groupBy","session"),i.set("limit",String(t.limit??200)),t.cursor&&(i.set("before",String(t.cursor.before)),i.set("beforeFilename",t.cursor.beforeFilename)),ot(`/api/history?${i.toString()}`)}async function i1(){return(await ot("/api/storage/status")).data}function l1(){return ot("/api/storage/open-generated-dir",{method:"POST"})}function o1(t){return ot(`/api/history/${encodeURIComponent(t)}`,{method:"DELETE"})}function s1(t,i){return ot(`/api/history/${encodeURIComponent(t)}/restore`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({trashId:i})})}function r1(){return ot("/api/sessions")}function c1(t){return ot("/api/sessions",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({title:t})})}function S0(t){return ot(`/api/sessions/${encodeURIComponent(t)}`)}function u1(t,i){return ot(`/api/sessions/${encodeURIComponent(t)}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({title:i})})}function d1(t){return ot(`/api/sessions/${encodeURIComponent(t)}`,{method:"DELETE"})}function f1(t,i,l,o,r={}){const u={"Content-Type":"application/json","If-Match":String(i)};return r.saveId&&(u["X-Ima2-Graph-Save-Id"]=r.saveId),r.saveReason&&(u["X-Ima2-Graph-Save-Reason"]=r.saveReason),r.tabId&&(u["X-Ima2-Tab-Id"]=r.tabId),ot(`/api/sessions/${encodeURIComponent(t)}/graph`,{method:"PUT",headers:u,body:JSON.stringify({nodes:l,edges:o})})}function h1(t){return ot(`/api/sessions/${encodeURIComponent(t)}/style-sheet`)}function m1(t,i,l){return ot(`/api/sessions/${encodeURIComponent(t)}/style-sheet`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({styleSheet:i,enabled:l})})}function g1(t,i){return ot(`/api/sessions/${encodeURIComponent(t)}/style-sheet/enabled`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({enabled:i})})}function p1(t,i,l){return ot(`/api/sessions/${encodeURIComponent(t)}/style-sheet/extract`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({prompt:i,referenceDataUrl:l})})}function y1(t,i=256){return new Promise(l=>{const o=new Image;o.onload=()=>{const r=Math.min(1,i/Math.max(o.width,o.height)),u=document.createElement("canvas");u.width=o.width*r,u.height=o.height*r;const d=u.getContext("2d");if(!d)return l(t);d.drawImage(o,0,0,u.width,u.height),l(u.toDataURL("image/jpeg",.6))},o.onerror=()=>l(t),o.src=t})}const v1={maxB64Bytes:6e6,preserveTransparency:!1,maxEdge:4096,qualityLadder:[.85,.7,.55]},Dp=16777216;function x1(t,i,l){let o=t,r=i;if(o<=0||r<=0)return{w:1,h:1};const u=Math.max(o,r);if(u>l){const d=l/u;o=Math.round(o*d),r=Math.round(r*d)}if(o*r>Dp){const d=Math.sqrt(Dp/(o*r));o=Math.max(1,Math.floor(o*d)),r=Math.max(1,Math.floor(r*d))}return{w:o,h:r}}function jd(t){return new Promise((i,l)=>{const o=new FileReader;o.onload=()=>{typeof o.result=="string"?i(o.result):l(new Error("FileReader returned non-string"))},o.onerror=()=>l(o.error??new Error("FileReader failed")),o.readAsDataURL(t)})}function Op(t,i,l){return new Promise((o,r)=>{t.toBlob(u=>u?o(u):r(new Error("canvas.toBlob returned null")),i,l)})}function zd(t){const i=t.indexOf(",");return i<0?t.length:t.length-i-1}async function tf(t,i={}){const l={...v1,...i},o=await jd(t);if(zd(o)<=l.maxB64Bytes)return o;let r;try{r=await createImageBitmap(t)}catch(u){throw new Error("이미지 디코드 실패. JPEG/PNG로 변환 후 다시 시도해 주세요.",{cause:u})}try{const{w:u,h:d}=x1(r.width,r.height,l.maxEdge),m=document.createElement("canvas");m.width=u,m.height=d;const y=m.getContext("2d");if(!y)throw new Error("canvas 2d context unavailable");if(y.drawImage(r,0,0,u,d),l.preserveTransparency){const g=await Op(m,"image/png"),p=await jd(g);if(zd(p)>l.maxB64Bytes)throw new Error("이미지 압축 실패. JPEG/PNG로 미리 변환 후 다시 시도해 주세요.");return p}for(const g of l.qualityLadder){const p=await Op(m,"image/jpeg",g),v=await jd(p);if(zd(v)<=l.maxB64Bytes)return v}throw new Error("이미지 압축 실패. JPEG/PNG로 미리 변환 후 다시 시도해 주세요.")}finally{r.close?.()}}function fr(t){const i=(t.type||"").toLowerCase();if(i.includes("heic")||i.includes("heif"))return!0;const l=(t.name||"").toLowerCase();return l.endsWith(".heic")||l.endsWith(".heif")}function Hp(t){return(t.type||"").toLowerCase()==="image/png"}const b1={ok:"확인",cancel:"취소",delete:"삭제",close:"닫기"},S1={localStorageFull:"로컬 저장소가 가득 차서 최근 상태가 저장되지 않을 수 있습니다.",refLimitExceeded:"참조 이미지는 최대 5장까지 추가할 수 있습니다. 초과한 이미지는 제외되었습니다.",refTooLarge:"이미지가 너무 큽니다. JPEG/PNG로 미리 변환하거나 해상도를 낮춰 다시 시도해 주세요.",refNotBase64:"이미지 파일이 손상되었거나 지원하지 않는 형식입니다.",refEmpty:"빈 이미지 파일입니다. 다른 파일을 선택해 주세요.",refHeicUnsupported:"HEIC/HEIF는 지원하지 않습니다. JPEG 또는 PNG로 변환 후 다시 시도해 주세요.",noCurrentImageForRef:"참조로 사용할 현재 이미지가 없습니다.",refSlotFull:"참조 이미지 슬롯이 가득 찼습니다. 최대 5장까지 가능합니다.",currentImageLoadFailed:"현재 이미지를 불러오지 못했습니다.",addedCurrentAsRef:"현재 이미지를 참조에 추가했습니다.",sessionLoadFailed:"세션을 불러오지 못했습니다.",sessionCreateFailed:"세션을 만들지 못했습니다.",sessionRenameFailed:"세션 이름을 바꾸지 못했습니다.",sessionDeleteFailed:"세션을 삭제하지 못했습니다.",promptRequired:"프롬프트를 입력하세요.",nodeCreated:"노드 {id} 생성 완료 ({elapsed}초)",nodeCreateFailed:"노드 생성에 실패했습니다.",generatedBatch:"{count}장을 {elapsed}초 만에 생성했습니다.",generatedSingle:"{elapsed}초 만에 생성했습니다.",generateFailed:"생성에 실패했습니다.",sessionReloadedElsewhere:"그래프 버전이 달라져 최신 그래프를 다시 불러왔습니다.",promptCopied:"프롬프트를 복사했습니다",imageCopied:"클립보드에 복사했습니다",copyFailed:"복사에 실패했습니다",openGeneratedDirFailed:"이미지 폴더를 열지 못했습니다. ima2 doctor로 저장 경로를 확인해 주세요.",openGeneratedDirOpened:"생성 이미지 폴더를 열었습니다.",noPromptToFork:"가져올 프롬프트가 없습니다",forkStarted:"이 이미지의 프롬프트를 가져왔습니다. 수정 후 다시 생성하세요"},w1={queued:"대기 중",streaming:"생성 중",decoding:"마무리 중"},N1={title:"크기",width:"가로",height:"세로",hint:"한 변 최소 1024, 최대 3824, 16의 배수, 비율은 최대 3:1",autoLabel:"자동",autoSub:"모델 추천",customLabel:"직접 입력",customSub:"자유 설정"},_1={title:"크기 조정이 필요합니다",body:"입력한 크기가 이미지 생성 제한을 벗어나 자동 조정이 필요합니다.",requested:"요청한 크기",adjusted:"조정될 크기",approve:"승인 후 생성",cancel:"취소",reasonRatio:"비율 제한 3:1을 초과했습니다.",reasonPixels:"최대 픽셀 수 제한을 초과했습니다.",reasonMin:"최소 크기보다 작습니다.",reasonMax:"최대 크기보다 큽니다.",reasonSnap:"16px 단위에 맞춰야 합니다."},E1={title:"품질",lowLabel:"낮음",lowSub:"빠름",mediumLabel:"중간",mediumSub:"균형",highLabel:"높음",highSub:"최상"},C1={title:"모더레이션",autoLabel:"자동",autoSub:"표준 필터",lowLabel:"낮음",lowSub:"완화 필터",explain:"자동은 표준 안전 필터를 사용합니다. 낮음은 제한을 조금 완화해 경계선 프롬프트가 더 통과할 수 있습니다."},T1={title:"포맷"},A1={title:"개수"},M1={button:"생성",buttonLoading:"생성 중 ({n})"},j1={label:"API 상태",checking:"확인 중...",offline:"오프라인",remaining:"${remaining} 남음",thisMonth:"이번 달 ${amount}",oauthFree:"OAuth 무료 사용 가능",apiDisabled:"API 키 비활성화됨 (OAuth 전용)",oauthMode:"OAuth 모드"},z1={openGalleryAria:"갤러리 열기",openGalleryTitle:"전체 갤러리 열기"},R1={closeSettings:"설정 닫기",detailSettings:"세부 설정",toggleShow:"세부 설정 보기",toggleHide:"세부 설정 숨기기",open:"열기",close:"닫기"},D1={label:"프롬프트",refCount:"참조 {count}/{max}",refChipTitle:"참조 이미지 {n}",refChipAlt:"참조 이미지 {n}",refRemoveAria:"참조 이미지 {n} 제거",placeholder:"원하는 이미지를 설명하고, 드래그 앤 드롭이나 붙여넣기로 참조 이미지를 추가할 수 있어요...",placeholderWithRefs:"첨부한 이미지로 무엇을 만들지 설명해 주세요...",attach:"첨부",attachTitle:"참조 이미지 첨부",useCurrent:"현재 결과 사용",useCurrentTitle:"현재 결과를 참조로 사용",style:"스타일",styleTitle:"스타일 일관성 설정 열기",directMode:"Direct",directModeTitle:"프롬프트를 원문 그대로 전달 (Direct 모드)",hint:"Ctrl + Enter로 생성",dropHere:"놓아서 참조 이미지로 추가 ({max}장까지)"},O1={resultAlt:"생성 결과",imageViewerAria:"생성 이미지 뷰어. 좌우 방향키로 이전 또는 다음 이미지를 볼 수 있습니다.",tokens:"{n} 토큰"},H1={today:"오늘",yesterday:"어제",thisWeek:"이번 주",earlier:"이전",imageAltFallback:"생성 이미지",deleteTitle:"삭제 (10초 내 복구 가능)",deleteAria:"이미지 삭제",ariaLabel:"이미지 갤러리",title:"갤러리",total:"총 {n}장",totalFiltered:" / 전체 {n}장",sortByAria:"정렬 기준",sortByDate:"날짜",sortBySession:"세션",searchPlaceholder:"프롬프트나 파일명을 검색",searchDisabledPlaceholder:"세션 보기에서는 검색이 비활성화됩니다",closeAria:"갤러리 닫기",closeTitle:"닫기 (Esc)",sessionLabel:"세션 {name}",standalone:"독립 이미지",emptySessions:"아직 저장된 세션이 없습니다.",emptyAll:"아직 생성된 이미지가 없습니다. 먼저 하나 만들어보세요.",noResults:"검색 결과가 없습니다.",storageNoticeTitle:"저장 위치 안내",storageNoticeRecoverable:"놀라게 해드려 죄송합니다. 최근 버전에서 갤러리 저장 위치가 설치 폴더에서 사용자 데이터 폴더로 바뀌었습니다. 예전 이미지가 이전 generated 폴더에 남아 있을 수 있어요. ima2 doctor를 실행하거나 복구 안내를 확인해 주세요.",storageNoticeNotFound:"놀라게 해드려 죄송합니다. 현재 이 컴퓨터에서 이전 generated 폴더를 찾지 못했습니다. 업데이트 중 예전 전역 설치 폴더가 교체된 경우 자동 복구가 어려울 수 있습니다. ima2 doctor와 복구 안내의 수동 검색 방법을 확인해 주세요.",storageNoticeUnknown:"저장 위치 상태를 확인하지 못했습니다. 업데이트 후 갤러리가 비어 보인다면 ima2 doctor로 이미지 폴더를 확인해 주세요.",openGeneratedDir:"폴더 열기",openGeneratedDirTitle:"생성 이미지 폴더 열기",cardNewsSet:"카드뉴스 세트",cardNewsCard:"카드뉴스 카드",openCardNewsSet:"세트 열기",openCardNewsSetFailed:"카드뉴스 세트를 열지 못했습니다.",copyCardNewsSetPath:"경로 복사",cardNewsPathCopied:"카드뉴스 세트 경로를 복사했습니다.",downloadCardNewsManifest:"매니페스트",cardNewsCount:"{n}장",deleted:"삭제됨: {filename}",undo:"되돌리기",secondsSuffix:"{n}초"},I1={empty:"비어 있음",pending:"생성 중",reconciling:"동기화 중",reconcilingPhase:"동기화 중 · {phase}",ready:"완료 · {elapsed}s",readyWithSearch:"완료 · {elapsed}s · 검색 {searches}",stale:"오래된 상태",staleWithError:"오래된 상태: {error}",assetMissing:"에셋 누락",assetMissingWithError:"에셋 누락: {error}",error:"오류: {error}",errorUnknown:"알 수 없음",nodeImageAlt:"노드 이미지",partialImageAlt:"노드 중간 이미지 미리보기",noAsset:"에셋 없음",stateStale:"상태 오래됨",noImage:"이미지 없음",editPromptPlaceholder:"수정 프롬프트...",promptPlaceholder:"프롬프트...",regenerate:"재생성",newVariation:"새 변형",generate:"생성",generateTitle:"노드 이미지 생성",addChild:"자식",addChildTitle:"자식 노드 추가",duplicateBranch:"복제",duplicateBranchTitle:"새 브랜치 루트로 복제",deleteTitle:"삭제",regenerateTitle:"현재 노드 이미지를 제자리에서 다시 생성",newVariationTitle:"같은 부모 아래 새 변형 노드를 생성",parentImageRequired:"부모 이미지를 먼저 생성해야 합니다.",attachRef:"첨부",attachRefTitle:"노드 참조 이미지 첨부",refAlt:"노드 참조 이미지 {n}",removeRef:"참조 이미지 {n} 제거",dropRefs:"이미지를 여기에 놓기",nodeRefsUnsupportedForEdit:"추가 참조 이미지는 현재 루트 노드에서만 지원합니다.",nodeRefsUsedWithParent:"부모 이미지와 함께 참조로 사용됩니다.",classicRefsParkedTitle:"클래식 참조 이미지가 보관 중입니다",classicRefsParkedBody:"이 이미지는 클래식 작성창용이라 노드 모드 생성에는 사용되지 않습니다.",clearParkedRefs:"보관된 참조 비우기",styleSheetActive:"세션 스타일 시트 적용 중"},L1={selectionOn:"선택중",selectionOff:"선택",selectAll:"전체",summary:"선택 {selected} · 미생성 {missing} · 영향 {stale}",generateMissing:"미생성",regenerateSelected:"재생성",stopRemaining:"중단",stopping:"중단중",clear:"해제",noneSelected:"선택된 노드가 없습니다.",parentRequired:"부모 이미지가 준비되지 않은 선택 노드가 {count}개 있습니다.",nothingToRun:"생성할 선택 노드가 없습니다.",stopQueued:"현재 노드가 끝나면 남은 작업을 중단합니다.",failed:"{done}/{total} 완료 후 중단되었습니다.",finished:"{done}/{total} 노드 작업 완료",staleBecauseParentChanged:"상위 노드가 재생성되어 다시 확인이 필요합니다."},B1={disconnect:"끊기",disconnectTitle:"선택한 연결선 끊기",disconnected:"연결선을 끊었습니다.",parentConflict:"한 노드에는 부모 연결을 하나만 둘 수 있습니다."},k1={authTitle:"인증 방식",apiLabel:"API 키",oauthNotReady:"OAuth 프록시가 아직 준비되지 않았습니다.",codexLoginRequired:"Codex 로그인이 필요합니다.",codexLoginHint:"터미널에서 `codex login`을 실행한 뒤 이 페이지를 새로고침하세요.",oauthStarting:"OAuth 프록시가 시작 중입니다. 몇 초 후 다시 시도하세요.",serverUnreachable:"서버에 연결할 수 없습니다. 백엔드가 실행 중인지 확인하세요.",apiInvalid:"API 키가 없거나 유효하지 않습니다. 서버의 .env 파일에서 OPENAI_API_KEY를 확인하세요.",availableTitle:"{name} 사용 가능",availableAria:"{name}: 사용 가능",unavailableAria:"{name}: 사용 불가",availableSr:"(사용 가능)",unavailableSr:"(사용 불가)"},U1={free:"무료",approx:"약 ${amount}",label:"예상 비용"},G1={download:"다운로드",copyImage:"이미지 복사",copyPrompt:"프롬프트 복사",continueHere:"여기서 이어서",continueHereTitle:"이 이미지의 프롬프트를 가져와 이어서 작업"},q1={switchTitle:"세션 전환",loading:"불러오는 중...",newSession:"새 세션",newSessionTitle:"새 세션",renameTitle:"이름 변경",renamePrompt:"세션 이름",deleteTitle:"삭제",deleteConfirm:'"{title}" 세션을 삭제할까요? 이 작업은 되돌릴 수 없습니다.',empty:"아직 세션이 없습니다",firstGraph:"첫 번째 그래프",untitled:"제목 없는 세션",assetAbortedError:"생성이 정상적으로 끝나지 않았습니다. 이 노드에서 다시 시도하세요."},Y1={ariaLabel:"UI 모드",classic:"기본",node:"노드",cardNews:"카드뉴스"},V1={workspace:"카드뉴스 작업공간",composer:"카드뉴스",composerHint:"템플릿은 스냅샷 기준이고, 출력 크기는 별도로 지정합니다.",topic:"주제",topicPlaceholder:"예: 중간고사 역전 플랜",audience:"대상",audiencePlaceholder:"예: 학부모",goal:"목표",goalPlaceholder:"예: 상담 신청",brief:"내용",briefPlaceholder:"카드뉴스에 들어갈 핵심 내용과 금지사항을 적어주세요.",outputSize:"출력 크기",customSize:"직접",draft:"초안 만들기",drafting:"초안 작성 중...",generateSet:"세트 생성",batchGenerate:"일괄 생성",generating:"생성 중...",generated:"{count}장 생성 완료.",missingGeneratedCard:"생성 응답에 이 카드가 포함되지 않았습니다.",error:"카드 생성에 실패했습니다.",imageTemplate:"이미지 템플릿",roleTemplate:"카드 구조",newTemplateLater:"커스텀 템플릿은 dev MVP 이후에 지원합니다",emptyTitle:"초안 대기 중",emptyBody:"왼쪽 설정으로 카드 덱을 준비합니다.",inspector:"카드 편집",cardTitle:"카드 제목",headline:"제목",body:"본문",visualPrompt:"이미지 프롬프트",summaryCopy:"요약 문구",designPrompt:"장면 / 디자인 프롬프트",textFields:"텍스트 박스",addTextField:"텍스트 박스 추가",removeTextField:"삭제",noTextFields:"아직 텍스트 박스가 없습니다.",textFieldText:"텍스트",textKind:"종류",placement:"위치",renderMode:"표시 방식",hierarchyLabel:"위계",textTooLong:"권장 길이를 초과했습니다.",selectTextField:"텍스트 박스 선택: {text}",textKinds:{headline:"제목",body:"설명 텍스트",caption:"캡션",cta:"행동 유도",badge:"배지",number:"숫자"},renderModes:{"in-image":"이미지에 표시","ui-only":"메모만"},hierarchy:{primary:"주요",secondary:"보조",supporting:"부가"},placements:{"top-left":"좌측 상단","top-center":"상단 중앙","top-right":"우측 상단","center-left":"좌측 중앙",center:"중앙","center-right":"우측 중앙","bottom-left":"좌측 하단","bottom-center":"하단 중앙","bottom-right":"우측 하단",free:"직접 지정"},roles:{cover:"표지",hook:"후킹",problem:"문제",insight:"인사이트",example:"예시",data:"데이터",summary:"요약",cta:"행동 유도"},locked:"잠김",unlocked:"열림",noCard:"선택된 카드 없음",generatedMeta:"생성 메타데이터",lockedHelp:"잠긴 카드는 일괄 생성과 재시도에서 제외됩니다.",retryCard:"이 카드 재시도",actions:{copyPrompt:"프롬프트 복사",copyCopy:"문구 복사",openImage:"이미지 열기",downloadCard:"다운로드"},status:{draft:"초안",queued:"대기",generating:"생성 중",generated:"완료",error:"오류",skipped:"제외",locked:"잠김"},progress:{generating:"생성 중 {done}/{total}",summary:"완료 {done}/{total}",detail:"대기 {queued} · 오류 {errors} · 제외 {skipped}",cardGenerating:"이 카드를 생성 중입니다."},planner:{structured:"구조화 JSON",jsonMode:"JSON 모드",repaired:"보정됨",fallback:"기본 초안",jsonOnlyHelp:"초안은 JSON만 만들고 이미지는 나중에 생성합니다.",error:"초안 생성 실패"}},X1={appName:"이미지 생성기",imageModelLabel:"모델",imageModelAria:"이미지 모델 선택",nodeModeHint:"노드 모드에서는 노드를 눌러 프롬프트를 수정한 뒤 생성하세요. 오른쪽 패널의 설정 (품질/크기)은 새로 만드는 모든 결과에 적용됩니다."},$1={openAria:"설정 열기",openTitle:"설정",closeAria:"설정 닫기",closeTitle:"캔버스로 돌아가기",navAria:"설정 섹션",contentAria:"설정 내용",jumpTo:"{section} 섹션으로 이동",eyebrow:"작업공간 설정",title:"설정",subtitle:"계정, 화면, 앞으로 늘어날 작업공간 옵션을 이곳에 모아 생성 흐름은 가볍게 유지합니다.",sections:{account:{title:"계정",hint:"OAuth 상태"},generation:{title:"생성",hint:"모델 기본값"},appearance:{title:"화면",hint:"라이트/다크"},language:{title:"언어",hint:"UI 문구"},future:{title:"예정",hint:"확장 공간"}},account:{primaryEyebrow:"현재 공급자",oauthTitle:"OAuth 사용 중",oauthBody:"현재 생성은 Codex OAuth 세션으로 실행됩니다. 이 빌드에서는 API-Key 생성 모드가 비활성화되어 있습니다.",apiSourceEnv:"OPENAI_API_KEY 감지됨",apiSourceConfig:"config.json API 키 감지됨",apiTitle:"Configured but disabled",apiBody:"env/config에서 API 키를 찾았지만, 지금 ima2-gen은 OAuth 전용으로 동작합니다. 이 상태 표시를 숨기고 싶을 때만 키를 제거하세요.",apiDisabled:"비활성화",apiUnknown:"상태 불명"},imageModel:{title:"이미지 모델",body:"앞으로 생성 요청에 사용할 OAuth 이미지 모델을 선택합니다.",gpt54Mini:"GPT-5.4 Mini",gpt54:"GPT-5.4",gpt55:"GPT-5.5",gpt53CodexSpark:"GPT-5.3 Codex Spark — 이미지 생성 미지원",unsupportedHelp:"기본값은 GPT-5.4 Mini입니다. GPT-5.3 Codex Spark는 OAuth 모델 상태에 보일 수 있지만 image_generation 도구를 지원하지 않습니다."},appearance:{themeTitle:"테마",themeBody:"이 기기에서 사용할 테마 스타일과 밝기를 선택합니다."},language:{title:"언어",body:"생성 프롬프트와 무관하게 인터페이스 언어만 바꿉니다."},future:{title:"나중을 위한 자리",body:"OAuth 복구 도구나 작업공간 옵션이 실제로 필요해지면 이곳에 추가합니다."}},Z1={loading:"세션 불러오는 중...",addFirst:"+ 첫 노드 추가",addRootTitle:"루트 노드 추가",hint:"핸들을 빈 공간으로 드래그하면 새 브랜치가 생깁니다. Delete 또는 Backspace로 삭제할 수 있습니다."},K1={title:"{provider} 사용 불가",ariaLabel:"{provider} 사용 불가"},F1={label:"언어",ko:"한국어",en:"English"},Q1={label:"테마",modeLabel:"밝기",styleLabel:"테마 스타일",system:"시스템",dark:"다크",light:"라이트",family:{default:"기본",gpt:"GPT",claude:"Claude",gemini:"Gemini",grok:"Grok"}},P1={toggle:"스타일 일관성 적용",extract:"프롬프트에서 추출",extracting:"추출 중…",edit:"편집",save:"저장",cancel:"취소",emptyHint:"아직 스타일 시트가 없어요. 현재 프롬프트에서 추출해서 룩을 고정하세요.",noPrompt:"먼저 프롬프트를 입력하세요",extracted:"스타일 시트가 추출됐어요",editorTitle:"스타일 시트 편집",saved:"스타일 시트를 저장했어요",errNoKey:"스타일 시트 추출에는 OpenAI API 키가 필요해요. setup에서 연결해주세요.",errBadOutput:"모델이 사용 가능한 시트를 못 만들었어요 — 프롬프트를 더 구체적으로 적어주세요.",placeholderMedium:"예: 유화, 시네마틱 사진",placeholderComposition:"예: 중앙 인물, 와이드 풍경",placeholderMood:"예: 시네마틱, 몽환적",placeholderSubject:"예: 빨간 재킷 입은 젊은 여성",placeholderPalette:"#0a0a0a, #f97316, 따뜻한 앰버",placeholderNegative:"blur, 워터마크, 텍스트",fields:{medium:"매체",composition:"구도",mood:"분위기",subject:"피사체 디테일",palette:"팔레트 (쉼표로 구분된 hex 또는 이름)",negative:"네거티브 (쉼표로 구분)"}},J1={close:"닫기",details:"자세한 원본 오류 보기",unknown:{title:"알 수 없는 오류가 발생했어요",body:"잠시 후 다시 시도해 주세요. 문제가 계속되면 원본 오류 메시지를 복사해 제보해 주세요."},moderationRefused:{title:"프롬프트가 모더레이션에 걸렸어요",body:"표현 수위를 낮추거나 다른 문구로 바꿔 보세요. 레퍼런스 이미지의 선정적/폭력적 요소도 영향을 줄 수 있어요.",cta:"프롬프트 수정"},emptyResponse:{title:"이미지가 돌아오지 않았어요",body:"Codex가 응답을 보냈지만 이미지 데이터가 비어 있었어요. 모더레이션 문제가 아니라 일시적 오류이거나 지원되지 않는 옵션 조합일 수 있어요. 다시 시도하거나 크기·품질·모델을 바꿔 보세요.",cta:"다시 시도"},upstream5xx:{title:"OpenAI 서버가 혼잡합니다",body:"잠시 후 다시 시도하면 대부분 해결돼요. 상태 페이지(status.openai.com)도 확인해 보세요.",cta:"다시 시도"},authChatgptExpired:{title:"Codex ChatGPT 로그인이 만료됐어요",body:"터미널에서 `npx @openai/codex login`을 다시 실행한 뒤 앱을 새로고침해 주세요.",cta:"새로고침"},authApiKeyInvalid:{title:"API 키 인증 실패",body:"키가 잘못됐거나 한도/조직 권한 문제예요. 본 앱은 API-Key 모드가 비활성화되어 있어 OAuth(ChatGPT 로그인)로 전환하는 편이 좋아요.",cta:"확인"},networkFailed:{title:"네트워크 연결 실패",body:"OpenAI 또는 로컬 런타임 서비스에 연결하지 못했어요. 먼저 새로고침하고, 계속되면 VPN/방화벽과 `ima2 doctor`에 표시되는 포트를 확인해 주세요.",cta:"새로고침"},oauthUnavailable:{title:"OAuth 프록시를 사용할 수 없어요",body:"OAuth 프록시가 아직 시작 중이거나, 사용할 수 없거나, fallback 포트로 이동했을 수 있어요. 먼저 새로고침하고, 계속되면 `ima2 doctor`의 OAuth URL을 확인해 주세요.",cta:"새로고침"},invalidRequest:{title:"이미지 요청을 수정해야 해요",body:"생성 요청의 일부 값이 올바르지 않습니다. 아래 원본 오류를 확인한 뒤 프롬프트나 크기를 수정해 다시 시도해 주세요.",cta:"입력 수정"},apikeyDisabled:{title:"API-Key 모드가 비활성화되어 있어요",body:"본 앱은 OAuth(ChatGPT 로그인) 전용으로 동작합니다. 공급자를 OAuth로 전환해 주세요.",cta:"확인"}},W1={common:b1,toast:S1,inflight:w1,size:N1,sizeConfirm:_1,quality:E1,moderation:C1,format:T1,count:A1,generate:M1,billing:j1,history:z1,panel:R1,prompt:D1,canvas:O1,gallery:H1,node:I1,nodeBatch:L1,edge:B1,provider:k1,cost:U1,result:G1,session:q1,uiMode:Y1,cardNews:V1,sidebar:X1,settings:$1,nodeCanvas:Z1,apiDisabled:K1,language:F1,theme:Q1,styleSheet:P1,errorCard:J1},ew={ok:"OK",cancel:"Cancel",delete:"Delete",close:"Close"},tw={localStorageFull:"Local storage is full — recent state may not persist.",refLimitExceeded:"References are capped at 5. Extra images were dropped.",refTooLarge:"Image is too large. Convert to JPEG/PNG or lower the resolution and try again.",refNotBase64:"Image file is corrupted or uses an unsupported encoding.",refEmpty:"Empty image file. Please pick a different file.",refHeicUnsupported:"HEIC/HEIF is not supported. Convert to JPEG or PNG and try again.",noCurrentImageForRef:"No current image to use as reference.",refSlotFull:"Reference slots are full (max 5).",currentImageLoadFailed:"Failed to load current image.",addedCurrentAsRef:"Added current image as a reference.",sessionLoadFailed:"Failed to load session.",sessionCreateFailed:"Failed to create session.",sessionRenameFailed:"Failed to rename session.",sessionDeleteFailed:"Failed to delete session.",promptRequired:"Enter a prompt.",nodeCreated:"Node {id} created ({elapsed}s)",nodeCreateFailed:"Node generation failed.",generatedBatch:"Generated {count} images in {elapsed}s.",generatedSingle:"Generated in {elapsed}s.",generateFailed:"Generation failed.",sessionReloadedElsewhere:"Graph version changed, so the latest graph was reloaded.",promptCopied:"Prompt copied",imageCopied:"Copied to clipboard",copyFailed:"Copy failed",openGeneratedDirFailed:"Could not open the image folder. Run ima2 doctor to check the storage path.",openGeneratedDirOpened:"Opened the generated image folder.",noPromptToFork:"No prompt to fork",forkStarted:"Prompt imported. Edit and generate again."},nw={queued:"Queued",streaming:"Generating",decoding:"Finalizing"},aw={title:"Size",width:"Width",height:"Height",hint:"Each side 1024–3824, multiple of 16, ratio up to 3:1",autoLabel:"Auto",autoSub:"Model pick",customLabel:"Custom",customSub:"Free form"},iw={title:"Size adjustment required",body:"The requested size is outside the image generation limits.",requested:"Requested size",adjusted:"Adjusted size",approve:"Approve and generate",cancel:"Cancel",reasonRatio:"The ratio exceeds the 3:1 limit.",reasonPixels:"The maximum pixel limit is exceeded.",reasonMin:"The size is below the minimum.",reasonMax:"The size is above the maximum.",reasonSnap:"The size must align to 16px increments."},lw={title:"Quality",lowLabel:"Low",lowSub:"Fast",mediumLabel:"Medium",mediumSub:"Balanced",highLabel:"High",highSub:"Best"},ow={title:"Moderation",autoLabel:"Auto",autoSub:"Standard filter",lowLabel:"Low",lowSub:"Relaxed filter",explain:"Auto uses the standard safety filter. Low relaxes limits so borderline prompts may pass through."},sw={title:"Format"},rw={title:"Count"},cw={button:"Generate",buttonLoading:"Generating ({n})"},uw={label:"API Status",checking:"Checking...",offline:"Offline",remaining:"${remaining} remaining",thisMonth:"${amount} this month",oauthFree:"OAuth · free via codex",apiDisabled:"API key disabled (OAuth only)",oauthMode:"OAuth mode"},dw={openGalleryAria:"Open gallery",openGalleryTitle:"Open full gallery"},fw={closeSettings:"Close settings",detailSettings:"Settings",toggleShow:"Show settings",toggleHide:"Hide settings",open:"Open",close:"Close"},hw={label:"Prompt",refCount:"Refs {count}/{max}",refChipTitle:"Reference {n}",refChipAlt:"Reference {n}",refRemoveAria:"Remove reference {n}",placeholder:"Describe the image you want. Drag & drop or paste to attach reference images...",placeholderWithRefs:"Describe what to do with the attached images...",attach:"Attach",attachTitle:"Attach reference images",useCurrent:"Use current",useCurrentTitle:"Use current result as a reference",style:"Style",styleTitle:"Open style consistency settings",directMode:"Direct",directModeTitle:"Pass prompt through verbatim (Direct mode)",hint:"Ctrl + Enter to generate",dropHere:"Drop to attach as reference (up to {max})"},mw={resultAlt:"result",imageViewerAria:"Generated image viewer. Use left and right arrow keys to move between images.",tokens:"{n} tokens"},gw={today:"Today",yesterday:"Yesterday",thisWeek:"This week",earlier:"Earlier",imageAltFallback:"Generated image",deleteTitle:"Delete (10s undo)",deleteAria:"Delete image",ariaLabel:"Image gallery",title:"Gallery",total:"{n} total",totalFiltered:" / {n} total",sortByAria:"Sort by",sortByDate:"Date",sortBySession:"Session",searchPlaceholder:"Search prompts or filenames",searchDisabledPlaceholder:"Search is disabled in session view",closeAria:"Close gallery",closeTitle:"Close (Esc)",sessionLabel:"Session {name}",standalone:"Standalone images",emptySessions:"No sessions saved yet.",emptyAll:"No images yet. Create one first.",noResults:"No results.",storageNoticeTitle:"Storage notice",storageNoticeRecoverable:"Sorry for the scare. Recent versions moved the gallery folder from the installed package to your user data folder. Your old images may still be in the previous generated folder. Run ima2 doctor or open the recovery guide.",storageNoticeNotFound:"Sorry for the scare. We could not find a previous generated folder on this machine. If the old global install folder was replaced during update, automatic recovery may not be possible. Run ima2 doctor and check the recovery guide for manual search steps.",storageNoticeUnknown:"Storage status could not be checked. If the gallery looks empty after an update, run ima2 doctor to inspect the image folder.",openGeneratedDir:"Open folder",openGeneratedDirTitle:"Open generated image folder",cardNewsSet:"Card News set",cardNewsCard:"Card News card",openCardNewsSet:"Open set",openCardNewsSetFailed:"Could not open the Card News set.",copyCardNewsSetPath:"Copy path",cardNewsPathCopied:"Card News set path copied.",downloadCardNewsManifest:"Manifest",cardNewsCount:"{n} cards",deleted:"Deleted: {filename}",undo:"Undo",secondsSuffix:"{n}s"},pw={empty:"Empty",pending:"Generating",reconciling:"Syncing",reconcilingPhase:"Syncing · {phase}",ready:"Done · {elapsed}s",readyWithSearch:"Done · {elapsed}s · searched {searches}",stale:"Stale",staleWithError:"Stale: {error}",assetMissing:"Asset missing",assetMissingWithError:"Asset missing: {error}",error:"Error: {error}",errorUnknown:"unknown",nodeImageAlt:"Node image",partialImageAlt:"Partial node image preview",noAsset:"No asset",stateStale:"State stale",noImage:"No image",editPromptPlaceholder:"Edit prompt...",promptPlaceholder:"Prompt...",regenerate:"Regen",newVariation:"New variant",generate:"Gen",generateTitle:"Generate node image",addChild:"Child",addChildTitle:"Add child node",duplicateBranch:"Branch",duplicateBranchTitle:"Duplicate as a new branch root",deleteTitle:"Delete",regenerateTitle:"Regenerate this node in place",newVariationTitle:"Create a new sibling variant under the same parent",parentImageRequired:"Generate the parent image first.",attachRef:"Attach",attachRefTitle:"Attach node reference images",refAlt:"Node reference {n}",removeRef:"Remove reference {n}",dropRefs:"Drop images here",nodeRefsUnsupportedForEdit:"Extra references are only supported on root nodes for now.",nodeRefsUsedWithParent:"Used together with the parent image.",classicRefsParkedTitle:"Classic references are parked",classicRefsParkedBody:"These images belong to the classic composer and are inactive in node mode.",clearParkedRefs:"Clear parked references",styleSheetActive:"Session style sheet active"},yw={selectionOn:"Selecting",selectionOff:"Select",selectAll:"Select all",summary:"{selected} selected · {missing} missing · {stale} affected",generateMissing:"Generate missing",regenerateSelected:"Regenerate selected",stopRemaining:"Stop remaining",stopping:"Stopping",clear:"Clear",noneSelected:"No nodes selected.",parentRequired:"{count} selected node(s) need a ready parent image first.",nothingToRun:"No selected nodes need generation.",stopQueued:"The current node will finish, then the remaining queue will stop.",failed:"Stopped after {done}/{total} node(s).",finished:"Finished {done}/{total} node(s).",staleBecauseParentChanged:"An upstream node was regenerated; refresh this node when needed."},vw={disconnect:"Disconnect",disconnectTitle:"Disconnect selected edge",disconnected:"Connection removed.",parentConflict:"A node can only have one parent connection."},xw={authTitle:"Authentication",apiLabel:"API Key",oauthNotReady:"OAuth proxy is not ready yet.",codexLoginRequired:"Codex login required.",codexLoginHint:"Run `codex login` in your terminal, then refresh this page.",oauthStarting:"OAuth proxy is starting. Try again in a few seconds.",serverUnreachable:"Cannot reach the server. Make sure the backend is running.",apiInvalid:"API key is missing or invalid. Check OPENAI_API_KEY in the server's .env.",availableTitle:"{name} available",availableAria:"{name}: available",unavailableAria:"{name}: unavailable",availableSr:"(available)",unavailableSr:"(unavailable)"},bw={free:"free",approx:"~${amount}",label:"Est. cost"},Sw={download:"Download",copyImage:"Copy image",copyPrompt:"Copy prompt",continueHere:"Continue here",continueHereTitle:"Import this image's prompt and keep working"},ww={switchTitle:"Switch session",loading:"Loading...",newSession:"New session",newSessionTitle:"New session",renameTitle:"Rename",renamePrompt:"Session name",deleteTitle:"Delete",deleteConfirm:'Delete session "{title}"? This cannot be undone.',empty:"No sessions yet",firstGraph:"My first graph",untitled:"Untitled session",assetAbortedError:"Generation did not finish cleanly. Retry from this node."},Nw={ariaLabel:"UI mode",classic:"Classic",node:"Node",cardNews:"Card News"},_w={workspace:"Card News workspace",composer:"Card News",composerHint:"Templates are visual snapshots; output size is set separately.",topic:"Topic",topicPlaceholder:"e.g. Exam comeback plan",audience:"Audience",audiencePlaceholder:"e.g. Parents",goal:"Goal",goalPlaceholder:"e.g. Book a consultation",brief:"Brief",briefPlaceholder:"Describe the card news content, required points, and exclusions.",outputSize:"Output size",customSize:"Custom",draft:"Draft outline",drafting:"Drafting...",generateSet:"Generate set",batchGenerate:"Batch generate",generating:"Generating...",generated:"Generated {count} cards.",missingGeneratedCard:"The generation response did not include this card.",error:"Card generation failed.",imageTemplate:"Image template",roleTemplate:"Card structure",newTemplateLater:"Custom templates are planned after the dev MVP",emptyTitle:"Waiting for a draft",emptyBody:"Use the left setup panel to prepare the card deck.",inspector:"Card inspector",cardTitle:"Card title",headline:"Headline",body:"Body",visualPrompt:"Image prompt",summaryCopy:"Summary copy",designPrompt:"Scene / design prompt",textFields:"Text boxes",addTextField:"Add text box",removeTextField:"Remove",noTextFields:"No text boxes yet.",textFieldText:"Text",textKind:"Kind",placement:"Placement",renderMode:"Render mode",hierarchyLabel:"Hierarchy",textTooLong:"Text exceeds the suggested length.",selectTextField:"Select text box: {text}",textKinds:{headline:"Headline",body:"Supporting text",caption:"Caption",cta:"CTA",badge:"Badge",number:"Number"},renderModes:{"in-image":"In image","ui-only":"UI only"},hierarchy:{primary:"Primary",secondary:"Secondary",supporting:"Supporting"},placements:{"top-left":"Top-left","top-center":"Top-center","top-right":"Top-right","center-left":"Center-left",center:"Center","center-right":"Center-right","bottom-left":"Bottom-left","bottom-center":"Bottom-center","bottom-right":"Bottom-right",free:"Free"},roles:{cover:"Cover",hook:"Hook",problem:"Problem",insight:"Insight",example:"Example",data:"Data",summary:"Summary",cta:"CTA"},locked:"Locked",unlocked:"Unlocked",noCard:"No card selected",generatedMeta:"Generated metadata",lockedHelp:"Locked cards are excluded from batch generation and retry.",retryCard:"Retry this card",actions:{copyPrompt:"Copy prompt",copyCopy:"Copy copy",openImage:"Open image",downloadCard:"Download"},status:{draft:"Draft",queued:"Queued",generating:"Generating",generated:"Done",error:"Error",skipped:"Skipped",locked:"Locked"},progress:{generating:"Generating {done}/{total}",summary:"Done {done}/{total}",detail:"{queued} queued · {errors} errors · {skipped} skipped",cardGenerating:"Generating this card."},planner:{structured:"Structured JSON",jsonMode:"JSON mode",repaired:"Repaired",fallback:"Fallback draft",jsonOnlyHelp:"Draft creates JSON only. Images are generated later.",error:"Draft failed"}},Ew={appName:"Image Generator",imageModelLabel:"Model",imageModelAria:"Choose image model",nodeModeHint:"In node mode, click a node to edit its prompt and generate. Settings on the right panel (quality/size) apply to every new result."},Cw={openAria:"Open settings",openTitle:"Settings",closeAria:"Close settings",closeTitle:"Return to canvas",navAria:"Settings sections",contentAria:"Settings content",jumpTo:"Jump to {section}",eyebrow:"Workspace settings",title:"Settings",subtitle:"Account, display, and future workspace controls live here so the generator stays focused.",sections:{account:{title:"Account",hint:"OAuth status"},generation:{title:"Generation",hint:"Model defaults"},appearance:{title:"Appearance",hint:"Light and dark"},language:{title:"Language",hint:"Interface copy"},future:{title:"Future",hint:"Reserved"}},account:{primaryEyebrow:"Active provider",oauthTitle:"OAuth is active",oauthBody:"Generation currently runs through your Codex OAuth session. API-key generation remains disabled in this build.",apiSourceEnv:"OPENAI_API_KEY detected",apiSourceConfig:"config.json API key detected",apiTitle:"Configured but disabled",apiBody:"ima2-gen found an API key in env/config, but the app is OAuth-only right now. Remove the key only if you do not want this status shown.",apiDisabled:"Disabled",apiUnknown:"Status unknown"},imageModel:{title:"Image model",body:"Choose the OAuth model used for future image generations.",gpt54Mini:"GPT-5.4 Mini",gpt54:"GPT-5.4",gpt55:"GPT-5.5",gpt53CodexSpark:"GPT-5.3 Codex Spark — unsupported for images",unsupportedHelp:"Default is GPT-5.4 Mini. GPT-5.3 Codex Spark may appear in OAuth model status, but it does not support the image_generation tool."},appearance:{themeTitle:"Theme",themeBody:"Pick a theme style and brightness for this device."},language:{title:"Language",body:"Switch the UI language without changing generated content."},future:{title:"Reserved for later",body:"Future provider repair and workspace controls will appear here when they become useful."}},Tw={loading:"Loading session...",addFirst:"+ Add first node",addRootTitle:"Add root node",hint:"Drag a handle into empty space to branch. Press Delete or Backspace to remove."},Aw={title:"{provider} unavailable",ariaLabel:"{provider} unavailable"},Mw={label:"Language",ko:"한국어",en:"English"},jw={label:"Theme",modeLabel:"Brightness",styleLabel:"Theme style",system:"System",dark:"Dark",light:"Light",family:{default:"Default",gpt:"GPT",claude:"Claude",gemini:"Gemini",grok:"Grok"}},zw={toggle:"Apply style consistency",extract:"Extract from prompt",extracting:"Extracting…",edit:"Edit",save:"Save",cancel:"Cancel",emptyHint:"No style sheet yet. Extract from the current prompt to lock in a look.",noPrompt:"Enter a prompt first",extracted:"Style sheet extracted",editorTitle:"Edit style sheet",saved:"Style sheet saved",errNoKey:"Style-sheet extraction needs an OpenAI API key. Connect one via setup.",errBadOutput:"Model returned an unusable sheet — try a more specific prompt.",placeholderMedium:"e.g. oil painting, cinematic photo",placeholderComposition:"e.g. centered portrait, wide landscape",placeholderMood:"e.g. cinematic, dreamlike",placeholderSubject:"e.g. young woman in red jacket",placeholderPalette:"#0a0a0a, #f97316, warm amber",placeholderNegative:"blur, watermark, text",fields:{medium:"Medium",composition:"Composition",mood:"Mood",subject:"Subject details",palette:"Palette (comma-separated hex or names)",negative:"Negative (comma-separated)"}},Rw={close:"Close",details:"Show raw error details",unknown:{title:"An unexpected error occurred",body:"Please try again shortly. If it persists, copy the raw error message below and report it."},moderationRefused:{title:"Prompt blocked by moderation",body:"Soften the wording or rephrase. Sensitive/violent content in reference images can also trigger this.",cta:"Edit prompt"},emptyResponse:{title:"No image was returned",body:"Codex responded but didn't include image data. This isn't a moderation block — it's likely a transient hiccup or an unsupported size/quality/model combination. Retry, or try a different size or model.",cta:"Retry"},upstream5xx:{title:"OpenAI is currently busy",body:"Retrying usually resolves this. Check status.openai.com if it persists.",cta:"Retry"},authChatgptExpired:{title:"Codex ChatGPT session expired",body:"Run `npx @openai/codex login` in your terminal, then reload this app.",cta:"Reload"},authApiKeyInvalid:{title:"API key authentication failed",body:"The key is invalid, revoked, out of quota, or tied to the wrong org. This app runs in OAuth mode, so switch to ChatGPT login.",cta:"OK"},networkFailed:{title:"Network connection failed",body:"Could not reach OpenAI or the local runtime service. Reload first; if it persists, check VPN/firewall and the port shown by `ima2 doctor`.",cta:"Reload"},oauthUnavailable:{title:"OAuth proxy unavailable",body:"The OAuth proxy is starting, unavailable, or moved to a fallback port. Reload first; if it persists, run `ima2 doctor` and check the reported OAuth URL.",cta:"Reload"},invalidRequest:{title:"Image request needs changes",body:"One or more generation parameters are invalid. Check the raw error details below, then edit the prompt or size and try again.",cta:"Edit input"},apikeyDisabled:{title:"API-key mode is disabled",body:"This app is OAuth-only (ChatGPT login). Switch the provider to OAuth.",cta:"OK"}},Dw={common:ew,toast:tw,inflight:nw,size:aw,sizeConfirm:iw,quality:lw,moderation:ow,format:sw,count:rw,generate:cw,billing:uw,history:dw,panel:fw,prompt:hw,canvas:mw,gallery:gw,node:pw,nodeBatch:yw,edge:vw,provider:xw,cost:bw,result:Sw,session:ww,uiMode:Nw,cardNews:_w,sidebar:Ew,settings:Cw,nodeCanvas:Tw,apiDisabled:Aw,language:Mw,theme:jw,styleSheet:zw,errorCard:Rw},Ip={ko:W1,en:Dw};function Lp(t,i){return i.split(".").reduce((l,o)=>{if(l!=null)return l[o]},t)}function Ow(t,i){return t.replace(/\{(\w+)\}/g,(l,o)=>o in i?String(i[o]):`{${o}}`)}function ve(t,i){const l=W.getState().locale;return w0(l,t,i)}function w0(t,i,l){const o=Lp(Ip[t],i),r=typeof o=="string"?o:Lp(Ip.en,i),u=typeof r=="string"?r:i;return l?Ow(u,l):u}function Te(){const t=W(i=>i.locale);return{locale:t,t:(i,l)=>w0(t,i,l)}}const Hw=["ko","en"];function Iw(){try{const t=localStorage.getItem("ima2.locale");if(t==="ko"||t==="en")return t}catch{}return typeof navigator<"u"&&(navigator.language||"").toLowerCase().startsWith("ko")?"ko":"en"}function Lw(t){try{localStorage.setItem("ima2.locale",t)}catch{}}function Bw(t){return Math.round(t/16)*16}const N0=1024,_0=3824,hr=3,Rd=8294400;function Bp(t){return Math.floor(t/16)*16}function kp(t){return Math.ceil(t/16)*16}function ti(t){return Math.min(_0,Math.max(N0,t))}function rl(t,i){const l=typeof t=="number"?t:Number.parseInt(t,10);return Number.isFinite(l)?l:i}function cl(t,i){t.includes(i)||t.push(i)}function Up(t,i){const l=Bw(t);return l!==t&&cl(i,"snap"),l}function Gp(t,i){return t<N0&&cl(i,"min"),t>_0&&cl(i,"max"),ti(t)}function qp(t,i,l){return t>i*hr?(cl(l,"ratio"),{w:t,h:ti(kp(t/hr))}):i>t*hr?(cl(l,"ratio"),{w:ti(kp(i/hr)),h:i}):{w:t,h:i}}function kw(t,i,l){if(t*i<=Rd)return{w:t,h:i};cl(l,"pixels");const o=Math.sqrt(Rd/(t*i));let r=ti(Bp(t*o)),u=ti(Bp(i*o));for(;r*u>Rd;)r>=u?r=ti(r-16):u=ti(u-16);return{w:r,h:u}}function Uw(t,i,l,o){const r=[],u=rl(t,l),d=rl(i,o);let m=Gp(Up(u,r),r),y=Gp(Up(d,r),r);return{w:m,h:y}=qp(m,y,r),{w:m,h:y}=kw(m,y,r),{w:m,h:y}=qp(m,y,r),{requestedW:u,requestedH:d,w:m,h:y,adjusted:m!==u||y!==d,reasons:r}}const Gw=[{value:"1024x1024",label:"1024×1024",sub:"1:1"},{value:"1536x1024",label:"1536×1024",sub:"3:2"},{value:"1024x1536",label:"1024×1536",sub:"2:3"}],qw=[{value:"1360x1024",label:"1360×1024",sub:"4:3"},{value:"1024x1360",label:"1024×1360",sub:"3:4"},{value:"1824x1024",label:"1824×1024",sub:"16:9"}],Yw=[{value:"1024x1824",label:"1024×1824",sub:"9:16"},{value:"2048x2048",label:"2048×2048",sub:"2K 1:1"},{value:"2048x1152",label:"2048×1152",sub:"2K 16:9"}],Vw=[{value:"1152x2048",label:"1152×2048",sub:"2K 9:16"},{value:"3824x2160",label:"3824×2160",sub:"4K 16:9"},{value:"2160x3824",label:"2160×3824",sub:"4K 9:16"}];function Xw(){return[{value:"auto",label:ve("size.autoLabel"),sub:ve("size.autoSub")},{value:"custom",label:ve("size.customLabel"),sub:ve("size.customSub")}]}const $w="gpt-5.4-mini",E0="ima2.imageModel",nl=[{value:"gpt-5.4-mini",shortLabel:"5.4m",fullLabelKey:"settings.imageModel.gpt54Mini"},{value:"gpt-5.4",shortLabel:"5.4",fullLabelKey:"settings.imageModel.gpt54"},{value:"gpt-5.5",shortLabel:"5.5",fullLabelKey:"settings.imageModel.gpt55"}],Zw=[{value:"gpt-5.3-codex-spark",fullLabelKey:"settings.imageModel.gpt53CodexSpark"}];function Kw(t){return nl.some(i=>i.value===t)}function C0(t){return t?nl.find(i=>i.value===t)?.shortLabel??t:null}const Wi=()=>"nc_"+Math.random().toString(36).slice(2,10);function Yp(t,i){return{x:t*360,y:i*320}}function Fw(t,i){return t.find(l=>l.target===i)??null}function Qw(t,i,l){return t.some(o=>o.target===l&&o.source!==i)}function _a(t,i){const l=new Map(t.map(o=>[o.id,o]));return t.map(o=>{const r=Fw(i,o.id),d=(r?l.get(r.source):null)?.data.serverNodeId??null;return o.data.parentServerNodeId===d?o:{...o,data:{...o.data,parentServerNodeId:d}}})}const Pw=360,T0=320;function Jw(t,i,l){const o=new Set(l.filter(r=>r.source===t).map(r=>r.target));return i.filter(r=>o.has(r.id))}function Vp(t){const i=t.filter(o=>!o.data.parentServerNodeId);if(i.length===0)return Yp(0,0);const l=Math.max(...i.map(o=>o.position.y));return{x:Yp(0,0).x,y:l+T0}}function Xp(t,i,l){const o=Jw(t.id,i,l),r=t.position.x+Pw;if(o.length===0)return{x:r,y:t.position.y};const u=Math.max(...o.map(d=>d.position.y));return{x:r,y:u+T0}}const A0="ima2.nodeRefs.v1";function vf(){try{const t=localStorage.getItem(A0);if(!t)return{};const i=JSON.parse(t);return i&&typeof i=="object"?i:{}}catch{return{}}}function M0(t){try{localStorage.setItem(A0,JSON.stringify(t))}catch{}}function Ww(t,i){if(!t)return[];const l=vf()[t]?.[i];return Array.isArray(l)?l.filter(o=>typeof o=="string"):[]}function Tr(t,i,l){if(!t)return;const o=vf(),r={...o[t]??{}};l.length===0?delete r[i]:r[i]=l,o[t]=r,M0(o)}function Dd(t,i){Tr(t,i,[])}function eN(t,i){if(!t)return;const l=vf(),o=l[t];if(!o)return;const r=new Set(i);for(const u of Object.keys(o))r.has(u)||delete o[u];l[t]=o,M0(l)}function tN(t,i,l){const o=new Set(t.map(m=>m.id));if(!o.has(l))return[];const r=new Map;for(const m of o)r.set(m,new Set);for(const m of i)!o.has(m.source)||!o.has(m.target)||(r.get(m.source)?.add(m.target),r.get(m.target)?.add(m.source));const u=new Set,d=[l];for(let m=0;m<d.length;m++){const y=d[m];if(!u.has(y)){u.add(y);for(const g of r.get(y)??[])u.has(g)||d.push(g)}}return t.filter(m=>u.has(m.id)).map(m=>m.id)}function j0(t){return t.filter(i=>i.selected).map(i=>i.id)}function So(t,i){const l=new Set(i);return t.map(o=>({...o,selected:l.has(o.id)}))}function nN(t,i,l,o){const r=new Set(tN(t,i,l));if(!r.size)return t;if(!o)return So(t,r);const u=t.find(y=>y.id===l),d=t.some(y=>r.has(y.id)&&y.selected),m=new Set(j0(t));if(d)u?.selected?m.delete(l):m.add(l);else for(const y of r)m.add(y);return So(t,m)}function z0(t){return t.data.status==="ready"&&!!t.data.imageUrl}function aN(t,i,l){const o=new Set(l),r=new Set(t.map(v=>v.id)),u=new Map,d=new Map;for(const v of o)r.has(v)&&(u.set(v,0),d.set(v,[]));for(const v of i)!o.has(v.source)||!o.has(v.target)||(d.get(v.source)?.push(v.target),u.set(v.target,(u.get(v.target)??0)+1));const m=t.map(v=>v.id),y=m.filter(v=>o.has(v)&&(u.get(v)??0)===0),g=[];for(let v=0;v<y.length;v++){const x=y[v];g.push(x);for(const S of d.get(x)??[])u.set(S,(u.get(S)??0)-1),(u.get(S)??0)===0&&y.push(S)}const p=new Set(g);return g.concat(m.filter(v=>o.has(v)&&!p.has(v)))}function R0(t,i){const l=new Set(i),o=new Set,r=new Map;for(const d of t){const m=r.get(d.source)??[];m.push(d.target),r.set(d.source,m)}const u=[...l];for(let d=0;d<u.length;d++)for(const m of r.get(u[d])??[])l.has(m)||o.has(m)||(o.add(m),u.push(m));return[...o]}function iN(t,i,l){const o=new Set(l);return t.filter(r=>r.source===i&&!o.has(r.target)).map(r=>r.target)}function lN(t,i,l){const o=new Set(l),r=new Map(t.map(d=>[d.id,d])),u=[];for(const d of i){if(!o.has(d.target)||o.has(d.source))continue;r.get(d.source)?.data.serverNodeId||u.push(d.target)}return u}const wo={REF_TOO_LARGE:{surface:"toast",toastKey:"toast.refTooLarge"},REF_NOT_BASE64:{surface:"toast",toastKey:"toast.refNotBase64"},REF_EMPTY:{surface:"toast",toastKey:"toast.refEmpty"},REF_TOO_MANY:{surface:"toast",toastKey:"toast.refLimitExceeded"},MODERATION_REFUSED:{surface:"card",cardKey:"errorCard.moderationRefused",cta:"dismiss"},SAFETY_REFUSAL:{surface:"card",cardKey:"errorCard.moderationRefused",cta:"dismiss"},EMPTY_RESPONSE:{surface:"card",cardKey:"errorCard.emptyResponse",cta:"dismiss"},UPSTREAM_5XX:{surface:"card",cardKey:"errorCard.upstream5xx",cta:"retry"},AUTH_CHATGPT_EXPIRED:{surface:"card",cardKey:"errorCard.authChatgptExpired",cta:"reauth"},AUTH_API_KEY_INVALID:{surface:"card",cardKey:"errorCard.authApiKeyInvalid",cta:"dismiss"},NETWORK_FAILED:{surface:"card",cardKey:"errorCard.networkFailed",cta:"reload"},OAUTH_UNAVAILABLE:{surface:"card",cardKey:"errorCard.oauthUnavailable",cta:"reload"},INVALID_REQUEST:{surface:"card",cardKey:"errorCard.invalidRequest",cta:"dismiss"},INVALID_MODERATION:{surface:"toast",toastKey:"toast.generateFailed"},APIKEY_DISABLED:{surface:"card",cardKey:"errorCard.apikeyDisabled",cta:"dismiss"},DB_ERROR:{surface:"toast",toastKey:"toast.generateFailed"},UNKNOWN:{surface:"toast",toastKey:"toast.generateFailed"}};function oN(t){const i=(t||"").toLowerCase();return i?i.includes("moderation_blocked")||i.includes("moderation refused")?"MODERATION_REFUSED":i.includes("no image data returned")?"EMPTY_RESPONSE":i.includes("token is expired")||i.includes("sign in again")||i.includes("access token")&&i.includes("expired")||i.includes("token")&&i.includes("expired")&&!i.includes("api key")?"AUTH_CHATGPT_EXPIRED":i.includes("incorrect api key")||i.includes("invalid authentication")||i.includes("exceeded your current quota")||i.includes("incorrect organization")?"AUTH_API_KEY_INVALID":i.includes("failed to fetch")||i.includes("econnrefused")||i.includes("econnreset")||i.includes("enotfound")||i.includes("etimedout")||i.includes("network error")?"NETWORK_FAILED":i.includes("oauth")&&(i.includes("not running")||i.includes("unavailable")||i.includes("not ready"))?"OAUTH_UNAVAILABLE":i.includes("invalid_request_error")||i.includes("invalid_value")||i.includes("invalid size")||i.includes("invalid request")||i.includes("requested resolution")||i.includes("minimum pixel budget")||i.includes("unsupported value")?"INVALID_REQUEST":i.includes("an error occurred while processing")||/\b5\d\d\b/.test(i)?"UPSTREAM_5XX":"UNKNOWN":"UNKNOWN"}function sN(t){const i=t,l=typeof i?.message=="string"?i.message:String(t??""),o=typeof i?.code=="string"?i.code:"",r=o&&o in wo?o:oN(l),u=wo[r]??wo.UNKNOWN;return{code:r,spec:u,message:l}}function $p(t,i){const{code:l,spec:o,message:r}=sN(t);if(o.surface==="card")i.showErrorCard(l,{fallbackMessage:r});else{const u=o.toastKey?ve(o.toastKey):r||ve("toast.generateFailed");i.showToast(u,!0)}return{code:l,message:r}}const xf=!0,D0=!1;function rN(){try{const t=localStorage.getItem("ima2.rightPanelOpen");return t===null?!0:JSON.parse(t)===!0}catch{return!0}}function cN(){try{const t=localStorage.getItem("ima2.uiMode");if(t==="card-news")return D0?t:"classic";if(t==="node")return xf?t:"classic";if(t==="classic")return t}catch{}return"classic"}function Od(){try{const t=localStorage.getItem("ima2:theme");if(t==="system"||t==="dark"||t==="light")return t}catch{}return"system"}function Zp(){try{const t=localStorage.getItem("ima2:themeFamily");if(t&&b0.includes(t))return t}catch{}return"default"}function Kp(){try{const t=localStorage.getItem(E0);if(Kw(t))return t}catch{}return $w}function uN(t){try{localStorage.setItem(E0,t)}catch{}}function mr(t){return t==="dark"||t==="light"?t:typeof window>"u"||typeof window.matchMedia!="function"?"dark":window.matchMedia("(prefers-color-scheme: light)").matches?"light":"dark"}const O0=18e4;function Hd(t){const i=t.meta??{},l=t.kind==="classic"||t.kind==="node"?t.kind:i.kind==="classic"||i.kind==="node"?i.kind:void 0;return{id:t.requestId,prompt:typeof t.prompt=="string"?t.prompt:"",startedAt:t.startedAt,phase:typeof t.phase=="string"?t.phase:void 0,sessionId:typeof i.sessionId=="string"?i.sessionId:null,parentNodeId:typeof i.parentNodeId=="string"?i.parentNodeId:null,clientNodeId:typeof i.clientNodeId=="string"?i.clientNodeId:null,kind:l}}function Id(){try{const t=localStorage.getItem("ima2.inFlight");if(!t)return[];const i=JSON.parse(t);if(!Array.isArray(i))return[];const l=Date.now();return i.filter(o=>o&&typeof o.id=="string"&&typeof o.prompt=="string"&&typeof o.startedAt=="number"&&l-o.startedAt<O0).map(o=>({id:o.id,prompt:o.prompt,startedAt:o.startedAt,phase:typeof o.phase=="string"?o.phase:void 0,sessionId:typeof o.sessionId=="string"?o.sessionId:null,parentNodeId:typeof o.parentNodeId=="string"?o.parentNodeId:null,clientNodeId:typeof o.clientNodeId=="string"?o.clientNodeId:null,kind:o.kind==="classic"||o.kind==="node"?o.kind:void 0}))}catch{return[]}}function Ja(t){try{localStorage.setItem("ima2.inFlight",JSON.stringify(t))}catch(i){const l=window;if(!l.__ima2QuotaWarned){l.__ima2QuotaWarned=!0,console.warn("[ima2] localStorage write failed:",i);try{W.getState().showToast(ve("toast.localStorageFull"),!0)}catch{}}}}function Fp(){try{const t=localStorage.getItem("ima2.selectedFilename");return typeof t=="string"&&t.length>0?t:null}catch{return null}}function vo(t){try{t?localStorage.setItem("ima2.selectedFilename",t):localStorage.removeItem("ima2.selectedFilename")}catch{}}function dN(){try{const t=localStorage.getItem("ima2.activeSessionId");return typeof t=="string"&&t.length>0?t:null}catch{return null}}function Ld(t){try{t?localStorage.setItem("ima2.activeSessionId",t):localStorage.removeItem("ima2.activeSessionId")}catch{}}const al=500,Sa=5;function fN(t){return t==="classic"||t==="edit"||t==="generate"||t==="card-news-card"||t==="card-news-set"?t:null}function Qp(t){return{image:t.url,url:t.url,filename:t.filename,thumb:t.url,prompt:t.prompt??void 0,size:t.size??void 0,quality:t.quality??void 0,format:t.format,model:t.model??void 0,provider:t.provider,usage:t.usage??void 0,createdAt:t.createdAt,sessionId:t.sessionId??null,nodeId:t.nodeId??null,clientNodeId:t.clientNodeId??null,requestId:t.requestId??null,kind:fN(t.kind),setId:t.setId??null,cardId:t.cardId??null,cardOrder:t.cardOrder??null,headline:t.headline??null,body:t.body??null,cards:t.cards,refsCount:t.refsCount??0}}function Pp(t){return t.replace(/^data:[^;]+;base64,/,"")}async function Jp(t,i="reference.png"){const l=await fetch(t);if(!l.ok)throw new Error(`reference fetch failed: ${l.status}`);const o=await l.blob(),r=new File([o],i,{type:o.type||"image/png"});return tf(r,{preserveTransparency:!1})}function gr(t,i,l,o){return`${t}:${l??"auto"}->${i}:${o??"auto"}`}function H0(t){const i=t.nodes.map(o=>{const r=o.data??{},u=typeof r.imageUrl=="string"&&r.imageUrl.length>0?r.imageUrl:null,d=typeof r.serverNodeId=="string"&&r.serverNodeId.length>0?`/generated/${r.serverNodeId}.png`:null,m=u??d,y={clientId:o.id,serverNodeId:r.serverNodeId??null,parentServerNodeId:r.parentServerNodeId??null,prompt:typeof r.prompt=="string"?r.prompt:"",imageUrl:m,status:r.status??(m?"ready":"empty"),pendingRequestId:r.pendingRequestId??null,recoveryRequestId:r.recoveryRequestId??null,pendingPhase:r.pendingPhase??null,pendingStartedAt:typeof r.pendingStartedAt=="number"?r.pendingStartedAt:null,partialImageUrl:null,error:r.error,elapsed:r.elapsed,webSearchCalls:r.webSearchCalls,model:r.model??null,size:r.size??null,referenceImages:Ww(t.id,o.id)};return{id:o.id,type:"imageNode",position:{x:o.x,y:o.y},data:y}}),l=t.edges.map(o=>{const r=o.data??{};return{id:o.id,source:o.source,target:o.target,sourceHandle:typeof r.sourceHandle=="string"?r.sourceHandle:null,targetHandle:typeof r.targetHandle=="string"?r.targetHandle:null}});return{graphNodes:_a(i,l),graphEdges:l,graphVersion:t.graphVersion}}function hN(t,i){return`${t}x${i}`}function pr(t,i){if(t.sizePreset!=="custom")return null;const l=Uw(t.customW,t.customH,t.customW,t.customH);return l.adjusted?{requestedW:l.requestedW,requestedH:l.requestedH,adjustedW:l.w,adjustedH:l.h,reasons:l.reasons,continuation:i}:null}const W=x0((t,i)=>({provider:"oauth",quality:"medium",sizePreset:"1024x1024",customW:1920,customH:1088,format:"png",moderation:"low",count:1,promptMode:"auto",prompt:"",referenceImages:[],addReferences:async l=>{const o=Sa-i().referenceImages.length,r=l.slice(0,Math.max(0,o)),u=r.filter(fr),d=r.filter(p=>!fr(p)),y=(await Promise.all(d.map(async p=>{try{return await tf(p,{preserveTransparency:Hp(p)})}catch(v){return console.warn("[addReferences] compress failed",v),null}}))).filter(p=>!!p);t(p=>({referenceImages:[...p.referenceImages,...y].slice(0,Sa)})),u.length>0&&i().showToast(ve("toast.refHeicUnsupported"),!0),d.length-y.length>0&&i().showToast(ve("toast.refTooLarge"),!0),l.length>o&&i().showToast(ve("toast.refLimitExceeded"),!0)},addReferenceDataUrl:l=>{t(o=>o.referenceImages.length>=Sa?o:{referenceImages:[...o.referenceImages,l]})},removeReference:l=>{t(o=>({referenceImages:o.referenceImages.filter((r,u)=>u!==l)}))},clearReferences:()=>t({referenceImages:[]}),useCurrentAsReference:async()=>{const l=i().currentImage;if(!l){i().showToast(ve("toast.noCurrentImageForRef"),!0);return}if(i().referenceImages.length>=Sa){i().showToast(ve("toast.refSlotFull"),!0);return}let o;try{o=await Jp(l.image,l.filename||"current-reference.png")}catch{i().showToast(ve("toast.currentImageLoadFailed"),!0);return}t(r=>({referenceImages:[...r.referenceImages,o].slice(0,Sa)})),i().showToast(ve("toast.addedCurrentAsRef"))},activeGenerations:Id().length,inFlight:Id(),startInFlightPolling:()=>{if(typeof window>"u")return;const l=window;if(l.__ima2InflightTimer)return;const o=async()=>{if(i().inFlight.length===0){l.__ima2InflightTimer&&(clearInterval(l.__ima2InflightTimer),l.__ima2InflightTimer=void 0);return}try{const u=i().uiMode==="node"?"node":"classic",d=u==="node"?i().activeSessionId??void 0:void 0,{jobs:m}=await Md({kind:u,sessionId:d}),y=new Map(m.map(S=>[S.requestId,S]));let g=!1;const p=Date.now(),v=5e3,x=[];for(const S of i().inFlight){if(!((S.kind??"classic")===u&&(u!=="node"||(S.sessionId??null)===(d??null)))){x.push(S);continue}if(!y.has(S.id)&&p-S.startedAt>v){g=!0;continue}const C=y.get(S.id);if(C){const j=Hd(C),R={...S,phase:j.phase,sessionId:j.sessionId,parentNodeId:j.parentNodeId,clientNodeId:j.clientNodeId,kind:j.kind};(R.phase!==S.phase||R.sessionId!==S.sessionId||R.parentNodeId!==S.parentNodeId||R.clientNodeId!==S.clientNodeId||R.kind!==S.kind)&&(g=!0),x.push(R)}else x.push(S)}g&&(Ja(x),t({inFlight:x,activeGenerations:x.length}))}catch{}try{const u=i().history.reduce((x,S)=>S.createdAt&&S.createdAt>x?S.createdAt:x,0),{items:d}=await ef({limit:al,since:u}),m=d.map(Qp),y=i().history,g=m.filter(x=>!y.some(S=>S.filename===x.filename));g.length>0&&t(x=>{const S=x.currentImage??g[0];return!x.currentImage&&g[0]?.filename&&vo(g[0].filename),{history:[...g,...x.history].slice(0,al),currentImage:S}});const p=Date.now(),v=i().inFlight.filter(x=>p-x.startedAt<O0);v.length!==i().inFlight.length&&(Ja(v),t({inFlight:v,activeGenerations:v.length}))}catch{}};l.__ima2InflightTimer=window.setInterval(o,1500)},reconcileInflight:async()=>{try{const l=i().uiMode==="node"?"node":"classic",o=l==="node"?i().activeSessionId??void 0:void 0,{jobs:r}=await Md({kind:l,sessionId:o}),u=new Map(r.map(p=>[p.requestId,p])),d=Date.now(),y=i().inFlight.flatMap(p=>{const v=u.get(p.id);if(v){const w=Hd(v);return[{...p,...w,prompt:p.prompt||w.prompt}]}return(p.kind??"classic")===l&&(l!=="node"||(p.sessionId??null)===(o??null))?d-p.startedAt<1e4?[p]:[]:[p]}),g=new Set(y.map(p=>p.id));for(const p of r)g.has(p.requestId)||y.push(Hd(p));Ja(y),t({inFlight:y,activeGenerations:y.length}),y.length>0&&i().startInFlightPolling()}catch{}},syncFromStorage:()=>{const l=Id(),o=Fp(),r=Kp();t(u=>({inFlight:l,activeGenerations:l.length,imageModel:r,currentImage:o&&u.currentImage?.filename!==o?u.history.find(d=>d.filename===o)??u.currentImage:u.currentImage})),l.length>0&&i().startInFlightPolling()},currentImage:null,history:[],toast:null,customSizeConfirm:null,errorCard:null,rightPanelOpen:rN(),toggleRightPanel:()=>t(l=>{const o=!l.rightPanelOpen;try{localStorage.setItem("ima2.rightPanelOpen",JSON.stringify(o))}catch{}return{rightPanelOpen:o}}),galleryOpen:!1,openGallery:()=>t({galleryOpen:!0}),closeGallery:()=>t({galleryOpen:!1}),imageModel:Kp(),settingsOpen:!1,activeSettingsSection:"account",openSettings:(l="account")=>t({settingsOpen:!0,activeSettingsSection:l}),closeSettings:()=>t({settingsOpen:!1}),toggleSettings:()=>t(l=>({settingsOpen:!l.settingsOpen,activeSettingsSection:l.settingsOpen?l.activeSettingsSection:"account"})),setActiveSettingsSection:l=>t({activeSettingsSection:l}),uiMode:cN(),setUIMode:l=>{const o=l==="card-news"&&!D0?"classic":l;try{localStorage.setItem("ima2.uiMode",o)}catch{}t({uiMode:o})},theme:Od(),resolvedTheme:mr(Od()),themeFamily:Zp(),setTheme:l=>{try{localStorage.setItem("ima2:theme",l)}catch{}t({theme:l,resolvedTheme:mr(l)})},setThemeFamily:l=>{try{localStorage.setItem("ima2:themeFamily",l)}catch{}t({themeFamily:l})},syncThemeFromStorage:()=>{const l=Od();t({theme:l,resolvedTheme:mr(l)})},syncThemeFamilyFromStorage:()=>{t({themeFamily:Zp()})},refreshResolvedTheme:()=>{t(l=>({resolvedTheme:mr(l.theme)}))},locale:Iw(),setLocale:l=>{Lw(l),t({locale:l})},graphNodes:[],graphEdges:[],setGraphNodes:l=>{t({graphNodes:_a(l,i().graphEdges)}),i().scheduleGraphSave()},setGraphEdges:l=>{t({graphEdges:l,graphNodes:_a(i().graphNodes,l)}),i().scheduleGraphSave()},disconnectEdge:l=>{i().disconnectEdges([l])},disconnectEdges:l=>{const o=new Set(l);if(o.size===0)return;const r=i().graphEdges.filter(y=>o.has(y.id));if(r.length===0)return;const u=i().graphEdges.filter(y=>!o.has(y.id)),d=new Set(r.map(y=>y.target)),m=i().graphNodes.map(y=>{if(!d.has(y.id))return y;const g=u.find(v=>v.target===y.id),p=g?i().graphNodes.find(v=>v.id===g.source):null;return{...y,data:{...y.data,parentServerNodeId:p?.data.serverNodeId??null}}});t({graphNodes:_a(m,u),graphEdges:u}),i().scheduleGraphSave(),i().flushGraphSave("edge-disconnect"),i().showToast(ve("edge.disconnected"))},nodeSelectionMode:!1,nodeBatchRunning:!1,nodeBatchStopping:!1,toggleNodeSelectionMode:()=>{const l=!i().nodeSelectionMode;t({nodeSelectionMode:l,...l?{}:{graphNodes:So(i().graphNodes,[])}})},selectAllGraphNodes:()=>{t({graphNodes:So(i().graphNodes,i().graphNodes.map(l=>l.id))})},selectNodeGraph:(l,o)=>{t({graphNodes:nN(i().graphNodes,i().graphEdges,l,o)})},clearNodeSelection:()=>{t({graphNodes:So(i().graphNodes,[])})},cancelNodeBatch:()=>{i().nodeBatchRunning&&(t({nodeBatchStopping:!0}),i().showToast(ve("nodeBatch.stopQueued")))},sessions:[],activeSessionId:null,activeSessionGraphVersion:null,sessionLoading:!1,styleSheet:null,styleSheetEnabled:!1,styleSheetExtracting:!1,async loadStyleSheet(){const l=i().activeSessionId;if(!l){t({styleSheet:null,styleSheetEnabled:!1});return}try{const o=await h1(l);if(i().activeSessionId!==l)return;t({styleSheet:o.styleSheet,styleSheetEnabled:!!o.enabled})}catch(o){console.warn("[styleSheet] load failed:",o)}},async saveStyleSheet(l,o){const r=i().activeSessionId;if(r)try{if(await m1(r,l,o),i().activeSessionId!==r)return;t({styleSheet:l,...typeof o=="boolean"?{styleSheetEnabled:o}:{}}),i().showToast(ve("styleSheet.saved"))}catch(u){console.warn("[styleSheet] save failed:",u),i().showToast(u.message,!0)}},async toggleStyleSheetEnabled(){const l=i().activeSessionId;if(!l)return;const o=!i().styleSheetEnabled;try{if(await g1(l,o),i().activeSessionId!==l)return;t({styleSheetEnabled:o})}catch(r){console.warn("[styleSheet] toggle failed:",r),i().showToast(r.message,!0)}},async extractStyleSheet(){const l=i().activeSessionId;if(!l)return;const o=i().prompt.trim();if(!o){i().showToast(ve("styleSheet.noPrompt"),!0);return}const r=i().referenceImages[0];t({styleSheetExtracting:!0});try{const{styleSheet:u}=await p1(l,o,r);if(i().activeSessionId!==l){t({styleSheetExtracting:!1});return}t({styleSheet:u,styleSheetEnabled:!0,styleSheetExtracting:!1}),i().showToast(ve("styleSheet.extracted"))}catch(u){t({styleSheetExtracting:!1}),console.warn("[styleSheet] extract failed:",u);const d=u.code,m=d==="STYLE_SHEET_NO_KEY"?ve("styleSheet.errNoKey"):d==="STYLE_SHEET_EMPTY"||d==="STYLE_SHEET_PARSE"||d==="STYLE_SHEET_SHAPE"?ve("styleSheet.errBadOutput"):u.message;i().showToast(m,!0)}},async loadSessions(){try{const{sessions:l}=await r1();if(t({sessions:l}),!i().activeSessionId){const r=dN(),u=r?l.some(d=>d.id===r):!1;r&&u?await i().switchSession(r):await i().createAndSwitchSession(ve("session.firstGraph"))}}catch(l){console.warn("[sessions] load failed:",l)}},async switchSession(l){t({sessionLoading:!0}),await i().flushGraphSave("switch-session");try{const{session:o}=await S0(l),{graphNodes:r,graphEdges:u,graphVersion:d}=H0(o);t({activeSessionId:l,activeSessionGraphVersion:d,graphNodes:r,graphEdges:u,sessionLoading:!1}),Ld(l),await i().reconcileGraphPending().catch(()=>{}),i().loadStyleSheet().catch(()=>{})}catch(o){console.warn("[sessions] switch failed:",o),t({sessionLoading:!1}),i().showToast(ve("toast.sessionLoadFailed"),!0)}},async reconcileGraphPending(){const l=i().activeSessionId;if(!l)return;if(i().graphNodes.filter(r=>r.data?.pendingRequestId&&(r.data.status==="pending"||r.data.status==="reconciling")).length>0){let r=[];try{r=(await Md({kind:"node",sessionId:l})).jobs}catch{r=[]}const u=new Map(r.map(g=>[g.requestId,g.phase])),d=Date.now(),m=1e4,y=i().graphNodes.map(g=>{const p=g.data?.pendingRequestId;if(!p||g.data.status!=="pending"&&g.data.status!=="reconciling")return g;if(u.has(p)){const S=u.get(p)??null;return{...g,data:{...g.data,status:"reconciling",pendingPhase:S}}}const v=g.data.pendingStartedAt??0;if(v&&d-v<m)return{...g,data:{...g.data,status:"reconciling"}};const x=!!g.data.imageUrl||!!g.data.serverNodeId;return{...g,data:{...g.data,pendingRequestId:null,pendingPhase:null,pendingStartedAt:null,partialImageUrl:null,status:x?"ready":"stale",error:x?void 0:ve("session.assetAbortedError")}}});t({graphNodes:y})}await k0(i,t).catch(()=>{})},async createAndSwitchSession(l){l==null&&(l=ve("session.untitled"));try{const{session:o}=await c1(l);t({sessions:[o,...i().sessions],activeSessionId:o.id,activeSessionGraphVersion:o.graphVersion,graphNodes:[],graphEdges:[]}),Ld(o.id)}catch(o){console.warn("[sessions] create failed:",o),i().showToast(ve("toast.sessionCreateFailed"),!0)}},async renameCurrentSession(l){const o=i().activeSessionId;if(o)try{await u1(o,l),t({sessions:i().sessions.map(r=>r.id===o?{...r,title:l,updatedAt:Date.now()}:r)})}catch{i().showToast(ve("toast.sessionRenameFailed"),!0)}},async deleteSessionById(l){try{await d1(l);const o=i().sessions.filter(r=>r.id!==l);t({sessions:o}),i().activeSessionId===l&&(t({activeSessionId:null,activeSessionGraphVersion:null,graphNodes:[],graphEdges:[]}),Ld(null),o.length>0?await i().switchSession(o[0].id):await i().createAndSwitchSession(ve("session.firstGraph")))}catch{i().showToast(ve("toast.sessionDeleteFailed"),!0)}},scheduleGraphSave(){G0(i,t)},async flushGraphSave(l="manual"){await yN(i,t,l)},addRootNode:()=>{const l=Wi(),o={id:l,type:"imageNode",position:Vp(i().graphNodes),data:{clientId:l,serverNodeId:null,parentServerNodeId:null,prompt:"",imageUrl:null,status:"empty",pendingRequestId:null,pendingPhase:null}};return t({graphNodes:[...i().graphNodes,o]}),i().scheduleGraphSave(),l},addChildNode:l=>{const o=i().graphNodes.find(m=>m.id===l);if(!o)return l;const r=Wi(),u={id:r,type:"imageNode",position:Xp(o,i().graphNodes,i().graphEdges),data:{clientId:r,serverNodeId:null,parentServerNodeId:o.data.serverNodeId,prompt:"",imageUrl:null,status:"empty",pendingRequestId:null,pendingPhase:null}},d={id:gr(l,r),source:l,target:r};return t({graphNodes:[...i().graphNodes,u],graphEdges:[...i().graphEdges,d]}),i().scheduleGraphSave(),r},addSiblingNode:l=>{const o=i().graphNodes.find(p=>p.id===l);if(!o)return l;const r=i().graphEdges.find(p=>p.target===l);if(!r){const p=Wi(),v={id:p,type:"imageNode",position:Vp(i().graphNodes),data:{clientId:p,serverNodeId:null,parentServerNodeId:null,prompt:o.data.prompt,imageUrl:null,status:"empty",pendingRequestId:null,pendingPhase:null}};return t({graphNodes:[...i().graphNodes,v]}),i().scheduleGraphSave(),p}const u=r.source,d=i().graphNodes.find(p=>p.id===u);if(!d)return l;const m=Wi(),y={id:m,type:"imageNode",position:Xp(d,i().graphNodes,i().graphEdges),data:{clientId:m,serverNodeId:null,parentServerNodeId:o.data.parentServerNodeId,prompt:o.data.prompt,imageUrl:null,status:"empty",pendingRequestId:null,pendingPhase:null}},g={id:gr(u,m),source:u,target:m};return t({graphNodes:[...i().graphNodes,y],graphEdges:[...i().graphEdges,g]}),i().scheduleGraphSave(),m},updateNodePrompt:(l,o)=>{t({graphNodes:i().graphNodes.map(r=>r.id===l?{...r,data:{...r.data,prompt:o}}:r)}),i().scheduleGraphSave()},addNodeReferences:async(l,o)=>{const r=i().graphNodes.find(S=>S.id===l);if(!r)return;const u=r.data.referenceImages??[],d=Sa-u.length;if(d<=0){i().showToast(ve("toast.refLimitExceeded"),!0);return}const m=o.slice(0,Math.max(0,d)),y=m.filter(fr),g=m.filter(S=>!fr(S)),v=(await Promise.all(g.map(async S=>{try{return await tf(S,{preserveTransparency:Hp(S)})}catch(w){return console.warn("[addNodeReferences] compress failed",w),null}}))).filter(S=>!!S);if(v.length>0){const S=i().activeSessionId;t({graphNodes:i().graphNodes.map(w=>{if(w.id!==l)return w;const A=[...w.data.referenceImages??[],...v].slice(0,Sa);return Tr(S,l,A),{...w,data:{...w.data,referenceImages:A}}})}),i().scheduleGraphSave()}y.length>0&&i().showToast(ve("toast.refHeicUnsupported"),!0),g.length-v.length>0&&i().showToast(ve("toast.refTooLarge"),!0),o.length>d&&i().showToast(ve("toast.refLimitExceeded"),!0)},addNodeReferenceDataUrl:(l,o)=>{i().graphNodes.find(u=>u.id===l)&&(t({graphNodes:i().graphNodes.map(u=>{if(u.id!==l)return u;const d=u.data.referenceImages??[];if(d.length>=Sa)return u;const m=[...d,o];return Tr(i().activeSessionId,l,m),{...u,data:{...u.data,referenceImages:m}}})}),i().scheduleGraphSave())},removeNodeReference:(l,o)=>{t({graphNodes:i().graphNodes.map(r=>{if(r.id!==l)return r;const u=(r.data.referenceImages??[]).filter((d,m)=>m!==o);return Tr(i().activeSessionId,l,u),{...r,data:{...r.data,referenceImages:u}}})}),i().scheduleGraphSave()},clearNodeReferences:l=>{Dd(i().activeSessionId,l),t({graphNodes:i().graphNodes.map(o=>o.id===l?{...o,data:{...o.data,referenceImages:void 0}}:o)}),i().scheduleGraphSave()},duplicateBranchRoot:l=>{const o=i().graphNodes.find(d=>d.id===l);if(!o)return l;const r=Wi();i().graphNodes.filter(d=>!d.data.parentServerNodeId).length;const u={id:r,type:"imageNode",position:{x:o.position.x+420,y:o.position.y+40},data:{clientId:r,serverNodeId:null,parentServerNodeId:null,prompt:o.data.prompt,imageUrl:null,status:"empty",pendingRequestId:null,pendingPhase:null}};if(t({graphNodes:[...i().graphNodes,u]}),i().scheduleGraphSave(),o.data.imageUrl){const d=o.data.imageUrl;(async()=>{try{const m=await Jp(d,"node-reference.png");t({graphNodes:i().graphNodes.map(y=>y.id===r?{...y,data:{...y.data,referenceImages:[m]}}:y)})}catch{}})()}return r},async generateNode(l){const o=i().graphNodes.find(d=>d.id===l);if(!o)return;const{prompt:r}=o.data;if(!r.trim()){i().showToast(ve("toast.promptRequired"),!0);return}const u=pr(i(),{kind:"node",clientId:l});if(u){t({customSizeConfirm:u});return}await i().runGenerateNode(l)},async generateNodeInPlace(l){const o=i().graphNodes.find(u=>u.id===l);if(!o)return;if(!o.data.prompt.trim()){i().showToast(ve("toast.promptRequired"),!0);return}const r=pr(i(),{kind:"node-in-place",clientId:l});if(r){t({customSizeConfirm:r});return}await i().runGenerateNodeInPlace(l)},async generateNodeVariation(l,o){const r=i().graphNodes.find(d=>d.id===l);if(!r)return;if(!r.data.prompt.trim()){i().showToast(ve("toast.promptRequired"),!0);return}if(!o){const d=pr(i(),{kind:"node-variation",clientId:l});if(d){t({customSizeConfirm:d});return}}const u=i().addSiblingNode(l);await i().runGenerateNodeInPlace(u,{sizeOverride:o})},async runGenerateNode(l,o){const u=i().graphNodes.find(d=>d.id===l)?.data.status==="ready"?i().addSiblingNode(l):l;await i().runGenerateNodeInPlace(u,{sizeOverride:o})},async runGenerateNodeInPlace(l,o={}){const r=i().graphNodes,u=_a(r,i().graphEdges);u.some((_,U)=>_.data.parentServerNodeId!==r[U]?.data.parentServerNodeId)&&t({graphNodes:u});const d=u.find(_=>_.id===l);if(!d)return null;const{prompt:m,parentServerNodeId:y}=d.data;if(!m.trim())return i().showToast(ve("toast.promptRequired"),!0),null;const g=d.data.referenceImages??[],p=i(),v=o.sizeOverride??p.getResolvedSize(),x=o.parentServerNodeIdOverride!==void 0?o.parentServerNodeIdOverride:y;if(i().graphEdges.find(_=>_.target===l)&&!x)return i().showToast(ve("node.parentImageRequired"),!0),null;const w=p.activeSessionId,A=Date.now(),C=Math.random().toString(36).slice(2,6),j=`fn_${l}_${A}_${C}`,R=[...p.inFlight,{id:j,prompt:m,startedAt:A,kind:"node",sessionId:w,clientNodeId:l}];Ja(R),t({graphNodes:i().graphNodes.map(_=>_.id===l?{..._,data:{..._.data,status:"pending",pendingRequestId:j,recoveryRequestId:j,pendingPhase:"queued",pendingStartedAt:A,partialImageUrl:null,error:void 0,size:v}}:_),activeGenerations:p.activeGenerations+1,inFlight:R}),i().startInFlightPolling();let E=!0;try{const _=await WS({parentNodeId:x,prompt:m,quality:p.quality,size:v,format:p.format,moderation:p.moderation,model:p.imageModel,requestId:j,sessionId:w,clientNodeId:l,contextMode:"parent-plus-refs",searchMode:"off",...g.length?{references:g.map(Pp)}:{}},{onPartial:U=>{i().activeSessionId===w&&t({graphNodes:i().graphNodes.map(M=>M.id===l?{...M,data:{...M.data,status:"pending",partialImageUrl:U.image,pendingPhase:"partial"}}:M)})},onPhase:U=>{i().activeSessionId===w&&U.phase&&t({graphNodes:i().graphNodes.map(M=>M.id===l?{...M,data:{...M.data,pendingPhase:U.phase??M.data.pendingPhase}}:M)})}});return i().activeSessionId===w&&(t({graphNodes:i().graphNodes.map(U=>{if(U.id!==l)return U;const M={...U.data};return delete M.partialImageUrl,{...U,data:{...M,serverNodeId:_.nodeId,imageUrl:_.url,status:"ready",pendingRequestId:null,recoveryRequestId:null,pendingPhase:null,pendingStartedAt:null,elapsed:_.elapsed,webSearchCalls:_.webSearchCalls,model:_.model??null,size:_.size??v}}})}),E=!0,o.suppressToast||i().showToast(ve("toast.nodeCreated",{id:_.nodeId.slice(0,8),elapsed:_.elapsed}))),_.nodeId}catch(_){const U=_ instanceof Error?_.message:ve("toast.nodeCreateFailed");return i().activeSessionId===w&&(t({graphNodes:i().graphNodes.map(M=>M.id===l?{...M,data:{...M.data,status:"error",pendingRequestId:null,pendingPhase:null,pendingStartedAt:null,partialImageUrl:null,error:U}}:M)}),E=!0,$p(_,i())),null}finally{const _=i().inFlight.filter(U=>U.id!==j);Ja(_),t({activeGenerations:Math.max(0,i().activeGenerations-1),inFlight:_}),i().activeSessionId===w&&E&&i().scheduleGraphSave()}},async runNodeBatch(l){if(i().nodeBatchRunning)return;const o=j0(i().graphNodes);if(o.length===0){i().showToast(ve("nodeBatch.noneSelected"),!0);return}const r=lN(i().graphNodes,i().graphEdges,o);if(r.length>0){i().showToast(ve("nodeBatch.parentRequired",{count:r.length}),!0);return}const u=aN(i().graphNodes,i().graphEdges,o),d=new Set(o),m=u.filter(p=>{if(l==="regenerate-all")return!0;const v=i().graphNodes.find(x=>x.id===p);return v?!z0(v):!1});if(m.length===0){i().showToast(ve("nodeBatch.nothingToRun"));return}t({nodeBatchRunning:!0,nodeBatchStopping:!1});const y=new Map;let g=0;try{for(const p of m){if(i().nodeBatchStopping)break;const v=i().graphEdges.find(C=>C.target===p),x=v?y.get(v.source)??i().graphNodes.find(C=>C.id===p)?.data.parentServerNodeId??null:null,S=await i().runGenerateNodeInPlace(p,{parentServerNodeIdOverride:x,suppressToast:!0});if(!S){i().showToast(ve("nodeBatch.failed",{done:g,total:m.length}),!0);break}g+=1,y.set(p,S);const w=iN(i().graphEdges,p,d),A=new Set(R0(i().graphEdges,d));t({graphNodes:i().graphNodes.map(C=>A.has(C.id)?{...C,data:{...C.data,status:"stale",parentServerNodeId:w.includes(C.id)?S:C.data.parentServerNodeId,error:ve("nodeBatch.staleBecauseParentChanged")}}:C)})}i().showToast(ve("nodeBatch.finished",{done:g,total:m.length})),i().scheduleGraphSave()}finally{t({nodeBatchRunning:!1,nodeBatchStopping:!1})}},deleteNode:l=>{const r=i().graphNodes.find(m=>m.id===l)?.data?.pendingRequestId;r&&Rp(r),Dd(i().activeSessionId,l);const u=i().graphNodes.filter(m=>m.id!==l),d=i().graphEdges.filter(m=>m.source!==l&&m.target!==l);t({graphNodes:_a(u,d),graphEdges:d}),i().scheduleGraphSave()},deleteNodes:l=>{const o=new Set(l);for(const d of o)Dd(i().activeSessionId,d);for(const d of i().graphNodes)o.has(d.id)&&d.data?.pendingRequestId&&Rp(d.data.pendingRequestId);const r=i().graphNodes.filter(d=>!o.has(d.id)),u=i().graphEdges.filter(d=>!o.has(d.source)&&!o.has(d.target));t({graphNodes:_a(r,u),graphEdges:u}),i().scheduleGraphSave()},addChildNodeAt:(l,o)=>{const r=i().graphNodes.find(y=>y.id===l);if(!r)return l;const u=Wi(),d={id:u,type:"imageNode",position:o,data:{clientId:u,serverNodeId:null,parentServerNodeId:r.data.serverNodeId,prompt:"",imageUrl:null,status:"empty",pendingRequestId:null,pendingPhase:null}},m={id:gr(l,u),source:l,target:u};return t({graphNodes:[...i().graphNodes,d],graphEdges:[...i().graphEdges,m]}),i().scheduleGraphSave(),u},connectNodes:(l,o,r=null,u=null)=>{if(l===o||i().graphEdges.find(g=>g.source===l&&g.target===o))return;if(Qw(i().graphEdges,l,o)){i().showToast(ve("edge.parentConflict"),!0);return}if(!i().graphNodes.find(g=>g.id===l))return;const y=[...i().graphEdges,{id:gr(l,o,r,u),source:l,target:o,sourceHandle:r,targetHandle:u}];t({graphNodes:_a(i().graphNodes,y),graphEdges:y}),i().scheduleGraphSave()},setProvider:l=>t({provider:l}),setQuality:l=>t({quality:l}),setSizePreset:l=>t({sizePreset:l}),setCustomSize:(l,o)=>t(r=>({customW:rl(l,r.customW),customH:rl(o,r.customH)})),setFormat:l=>t({format:l}),setModeration:l=>t({moderation:l}),setImageModel:l=>{uN(l),t({imageModel:l})},setCount:l=>t({count:l}),setPromptMode:l=>t({promptMode:l}),setPrompt:l=>t({prompt:l}),selectHistory:l=>{vo(l.filename??null),t({currentImage:l})},removeFromHistory:l=>{const o=i(),r=o.history.filter(d=>d.filename!==l),u=o.currentImage&&o.currentImage.filename===l?null:o.currentImage;t({history:r,currentImage:u}),u===null&&vo(null)},addHistoryItem:l=>{const o=i();if(o.history.some(d=>l.filename&&d.filename===l.filename))return;const u={...l,createdAt:l.createdAt||Date.now()};t({history:[u,...o.history].slice(0,al)})},getResolvedSize:()=>{const{sizePreset:l,customW:o,customH:r}=i();return l==="custom"?`${o}x${r}`:l},async generate(){const l=i();if(!l.prompt.trim())return;const r=pr(l,{kind:"classic"});if(r){t({customSizeConfirm:r});return}await i().runGenerate()},async runGenerate(l){const o=i(),r=o.prompt.trim();if(!r)return;const u=l??o.getResolvedSize(),d=`f_${Date.now()}_${Math.random().toString(36).slice(2,7)}`,m=Date.now(),y=[...o.inFlight,{id:d,prompt:r,startedAt:m}];Ja(y),t({activeGenerations:o.activeGenerations+1,inFlight:y}),i().startInFlightPolling();try{const g={prompt:r,quality:o.quality,size:u,format:o.format,moderation:o.moderation,provider:o.provider,n:o.count,model:o.imageModel,requestId:d,mode:o.promptMode,...o.referenceImages.length?{references:o.referenceImages.map(Pp)}:{}},p=await n1(g);if(zp(p)&&p.images.length>1){for(const v of p.images){const x={image:v.image,filename:v.filename,prompt:r,elapsed:p.elapsed,provider:p.provider,usage:p.usage,quality:p.quality??o.quality,size:p.size??u,model:p.model??o.imageModel};await ey(x,t,i)}i().showToast(ve("toast.generatedBatch",{count:p.images.length,elapsed:p.elapsed}))}else{let v;if(zp(p)){const x=p.images[0];v={image:x.image,filename:x.filename,prompt:r,elapsed:p.elapsed,provider:p.provider,usage:p.usage,quality:p.quality??o.quality,size:p.size??u,model:p.model??o.imageModel}}else v={image:p.image,filename:p.filename,prompt:r,elapsed:p.elapsed,provider:p.provider,usage:p.usage,quality:p.quality??o.quality,size:p.size??u,model:p.model??o.imageModel};await ey(v,t,i),i().showToast(ve("toast.generatedSingle",{elapsed:p.elapsed}))}}catch(g){$p(g,i())}finally{const g=i().inFlight.filter(p=>p.id!==d);Ja(g),t({activeGenerations:Math.max(0,i().activeGenerations-1),inFlight:g})}},async confirmCustomSizeAdjustment(){const l=i().customSizeConfirm;if(!l)return;const o=hN(l.adjustedW,l.adjustedH);if(t({customW:l.adjustedW,customH:l.adjustedH,customSizeConfirm:null}),l.continuation.kind==="classic"){await i().runGenerate(o);return}if(l.continuation.kind==="node-in-place"){await i().runGenerateNodeInPlace(l.continuation.clientId,{sizeOverride:o});return}if(l.continuation.kind==="node-variation"){await i().generateNodeVariation(l.continuation.clientId,o);return}await i().runGenerateNode(l.continuation.clientId,o)},cancelCustomSizeAdjustment:()=>t({customSizeConfirm:null}),hydrateHistory(){(async()=>{try{const o=(await ef({limit:al})).items.map(Qp);if(o.length>0){const r=Fp(),u=r?o.find(d=>d.filename===r):null;t({history:o,currentImage:u??o[0]}),u||vo(o[0]?.filename??null)}}catch(l){console.warn("[history] load failed:",l)}})()},showToast(l,o=!1){t({toast:{message:l,error:o,id:Date.now()+Math.random()}})},showErrorCard(l,o){t({errorCard:{code:l,fallbackMessage:o?.fallbackMessage,id:Date.now()+Math.random()}})},dismissErrorCard(){t({errorCard:null})}})),mN=800,Wp="ima2.graphTabId";let mn=null,Ar=!1,Mr=!1,ei=null,I0=0;function L0(){try{const t=sessionStorage.getItem(Wp);if(t)return t;const i=`tab_${Date.now().toString(36)}_${Math.random().toString(36).slice(2,8)}`;return sessionStorage.setItem(Wp,i),i}catch{return"tab_unavailable"}}function B0(t){const i={...t};return delete i.referenceImages,delete i.partialImageUrl,t.status==="pending"||t.status==="reconciling"?{...i,status:"empty",pendingRequestId:null,recoveryRequestId:t.pendingRequestId??t.recoveryRequestId??null,pendingPhase:null,pendingStartedAt:null,error:void 0}:i}async function k0(t,i){const l=t().activeSessionId;if(!l||t().graphNodes.filter(m=>!m.data.imageUrl&&!m.data.serverNodeId).length===0)return;let r=[];try{r=(await ef({sessionId:l,limit:al})).items}catch{return}let u=!1;const d=t().graphNodes.map(m=>{if(m.data.imageUrl||m.data.serverNodeId)return m;const y=m.data.pendingStartedAt??0,g=m.data.pendingRequestId??m.data.recoveryRequestId??null,v=(g?r.find(x=>(x.sessionId??null)===l&&(x.requestId??null)===g):null)??r.find(x=>(x.sessionId??null)===l&&(x.clientNodeId??null)===m.id&&(!y||(x.createdAt??0)>=y));return v?(u=!0,{...m,data:{...m.data,status:"ready",imageUrl:v.url,serverNodeId:v.nodeId??m.data.serverNodeId,size:v.size??m.data.size??null,pendingRequestId:null,recoveryRequestId:null,pendingPhase:null,pendingStartedAt:null,partialImageUrl:null,error:void 0}}):m});u&&(i({graphNodes:d}),G0(t,i,"recovery"))}async function gN(t,i){const l=t().activeSessionId;if(!l)return;const{session:o}=await S0(l),{graphNodes:r,graphEdges:u,graphVersion:d}=H0(o);i({graphNodes:r,graphEdges:u,activeSessionGraphVersion:d}),t().showToast(ve("toast.sessionReloadedElsewhere"),!0),await k0(t,i).catch(()=>{})}async function pN(t,i,l){const o=t().activeSessionId,r=t().activeSessionGraphVersion;if(!o||r==null)return"skipped";const{graphNodes:u,graphEdges:d}=t(),m=u.map(p=>({id:p.id,x:p.position.x,y:p.position.y,data:B0(p.data)})),y=d.map(p=>({id:p.id,source:p.source,target:p.target,data:{sourceHandle:p.sourceHandle??null,targetHandle:p.targetHandle??null}})),g=`gs_${Date.now().toString(36)}_${++I0}`;try{const p=await f1(o,r,m,y,{saveId:g,saveReason:l,tabId:L0()});return t().activeSessionId!==o?"skipped":(eN(o,t().graphNodes.map(v=>v.id)),i({activeSessionGraphVersion:p.graphVersion}),"saved")}catch(p){return p.status===409?(await gN(t,i),"conflict"):(console.warn("[sessions] save failed:",p),"failed")}}async function U0(t,i,l){if(Ar){Mr=!0,ei&&await ei;return}Ar=!0,ei=(async()=>{let o=l;do{Mr=!1;const r=await pN(t,i,o);if(r==="conflict"||r==="failed")break;o="queued"}while(Mr)})().finally(()=>{Ar=!1,ei=null}),await ei}function G0(t,i,l="debounced"){const o=t();o.activeSessionId&&(o.sessionLoading||(mn&&clearTimeout(mn),mn=setTimeout(()=>{mn=null,U0(t,i,l)},mN)))}async function yN(t,i,l="manual"){let o=!1;if(mn&&(clearTimeout(mn),mn=null,o=!0),Ar){Mr=!0,ei&&await ei;return}o&&await U0(t,i,l)}function vN(t){const i=t();if(!i.activeSessionId||i.activeSessionGraphVersion==null)return;mn&&(clearTimeout(mn),mn=null);const l=i.graphNodes.map(d=>({id:d.id,x:d.position.x,y:d.position.y,data:B0(d.data)})),o=i.graphEdges.map(d=>({id:d.id,source:d.source,target:d.target,data:{}})),r=`/api/sessions/${encodeURIComponent(i.activeSessionId)}/graph`,u=JSON.stringify({nodes:l,edges:o});try{fetch(r,{method:"PUT",headers:{"Content-Type":"application/json","If-Match":String(i.activeSessionGraphVersion),"X-Ima2-Graph-Save-Id":`gs_${Date.now().toString(36)}_${++I0}`,"X-Ima2-Graph-Save-Reason":"beforeunload","X-Ima2-Tab-Id":L0()},body:u,keepalive:!0})}catch{}}async function ey(t,i,l){const o=await y1(t.image).catch(()=>t.image),r=t.filename?`/generated/${t.filename}`:t.image,u={...t,thumb:o,url:r,createdAt:t.createdAt||Date.now()},d=[u,...l().history].slice(0,al);vo(u.filename??null),i({history:d,currentImage:u})}function xN(){const{t}=Te(),i=W(o=>o.uiMode),l=W(o=>o.setUIMode);return h.jsxs("div",{className:"ui-mode-switch",role:"tablist","aria-label":t("uiMode.ariaLabel"),children:[h.jsx("button",{type:"button",role:"tab","aria-selected":i==="classic",className:`ui-mode-switch__tab${i==="classic"?" active":""}`,onClick:()=>l("classic"),children:t("uiMode.classic")}),h.jsx("button",{type:"button",role:"tab","aria-selected":i==="node",className:`ui-mode-switch__tab${i==="node"?" active":""}`,onClick:()=>l("node"),children:t("uiMode.node")}),null]})}const ty={palette:[],composition:"",mood:"",medium:"",subject_details:"",negative:[]};function q0({open:t,onClose:i}){const{t:l}=Te(),o=W(M=>M.styleSheet),r=W(M=>M.styleSheetEnabled),u=W(M=>M.styleSheetExtracting),d=W(M=>M.activeSessionId),m=W(M=>M.toggleStyleSheetEnabled),y=W(M=>M.extractStyleSheet),g=W(M=>M.saveStyleSheet),[p,v]=Y.useState(!1),[x,S]=Y.useState(o??ty),[w,A]=Y.useState(!1),[C,j]=Y.useState(!1);if(Y.useEffect(()=>{t?S(o??ty):(v(!1),A(!1))},[t,o]),Y.useEffect(()=>{if(!t)return;const M=I=>{I.key==="Escape"&&!w&&i()};return window.addEventListener("keydown",M),()=>window.removeEventListener("keydown",M)},[t,w,i]),!t||!d)return null;const R=!!o&&(o.composition||o.mood||o.medium||o.subject_details||o.palette.length>0),E=async()=>{if(!w){A(!0);try{await g(x,r),v(!1)}finally{A(!1)}}},_=async()=>{if(!C){j(!0);try{await m()}finally{j(!1)}}},U=M=>S(I=>({...I,...M}));return h.jsx("div",{className:"style-sheet-editor__backdrop",onClick:w?void 0:i,role:"presentation",children:h.jsxs("div",{className:"style-sheet-editor",role:"dialog","aria-modal":"true","aria-label":l("styleSheet.editorTitle"),onClick:M=>M.stopPropagation(),children:[h.jsxs("div",{className:"style-sheet-panel__header",children:[h.jsx("h3",{style:{margin:0,fontSize:16},children:l("styleSheet.editorTitle")}),h.jsxs("label",{className:"style-sheet-panel__toggle",style:{marginLeft:"auto"},children:[h.jsx("input",{type:"checkbox",checked:r,disabled:!R||C,onChange:()=>{_()}}),h.jsx("span",{children:l("styleSheet.toggle")})]})]}),!p&&h.jsxs(h.Fragment,{children:[R?h.jsxs("div",{className:"style-sheet-panel__summary",children:[o.medium&&h.jsxs("div",{children:[h.jsxs("b",{children:[l("styleSheet.fields.medium"),":"]})," ",o.medium]}),o.palette.length>0&&h.jsx("div",{className:"style-sheet-panel__chips",children:o.palette.slice(0,6).map((M,I)=>h.jsx("span",{className:"style-sheet-panel__chip",title:M,children:M},I))}),o.mood&&h.jsxs("div",{className:"style-sheet-panel__muted",children:[l("styleSheet.fields.mood"),": ",o.mood]})]}):h.jsx("div",{className:"style-sheet-panel__muted",children:l("styleSheet.emptyHint")}),h.jsxs("div",{className:"style-sheet-panel__actions",children:[h.jsx("button",{type:"button",className:"btn btn--secondary btn--sm",onClick:()=>{y()},disabled:u,children:l(u?"styleSheet.extracting":"styleSheet.extract")}),h.jsx("button",{type:"button",className:"btn btn--ghost btn--sm",onClick:()=>v(!0),disabled:u,children:l("styleSheet.edit")}),h.jsx("button",{type:"button",className:"btn btn--ghost btn--sm",style:{marginLeft:"auto"},onClick:i,children:l("styleSheet.cancel")})]})]}),p&&h.jsxs(h.Fragment,{children:[h.jsxs("label",{children:[l("styleSheet.fields.medium"),h.jsx("input",{value:x.medium,onChange:M=>U({medium:M.target.value}),placeholder:l("styleSheet.placeholderMedium")})]}),h.jsxs("label",{children:[l("styleSheet.fields.composition"),h.jsx("textarea",{rows:2,value:x.composition,onChange:M=>U({composition:M.target.value}),placeholder:l("styleSheet.placeholderComposition")})]}),h.jsxs("label",{children:[l("styleSheet.fields.mood"),h.jsx("input",{value:x.mood,onChange:M=>U({mood:M.target.value}),placeholder:l("styleSheet.placeholderMood")})]}),h.jsxs("label",{children:[l("styleSheet.fields.subject"),h.jsx("textarea",{rows:2,value:x.subject_details,onChange:M=>U({subject_details:M.target.value}),placeholder:l("styleSheet.placeholderSubject")})]}),h.jsxs("label",{children:[l("styleSheet.fields.palette"),h.jsx("input",{value:x.palette.join(", "),onChange:M=>U({palette:M.target.value.split(",").map(I=>I.trim()).filter(Boolean).slice(0,6)}),placeholder:l("styleSheet.placeholderPalette")})]}),h.jsxs("label",{children:[l("styleSheet.fields.negative"),h.jsx("input",{value:x.negative.join(", "),onChange:M=>U({negative:M.target.value.split(",").map(I=>I.trim()).filter(Boolean).slice(0,4)}),placeholder:l("styleSheet.placeholderNegative")})]}),h.jsxs("div",{className:"style-sheet-editor__actions",children:[h.jsx("button",{type:"button",className:"btn btn--ghost",onClick:()=>v(!1),disabled:w,children:l("styleSheet.cancel")}),h.jsx("button",{type:"button",className:"btn btn--primary",onClick:()=>{E()},disabled:w,children:l(w?"styleSheet.extracting":"styleSheet.save")})]})]})]})})}const el=5;function bN(){const t=W(L=>L.prompt),i=W(L=>L.setPrompt),l=W(L=>L.generate),{t:o}=Te(),r=W(L=>L.referenceImages),u=W(L=>L.addReferences),d=W(L=>L.removeReference),m=W(L=>L.useCurrentAsReference),y=W(L=>L.currentImage),g=Y.useRef(null),[p,v]=Y.useState(!1),[x,S]=Y.useState(!1),w=W(L=>L.activeSessionId),A=W(L=>L.styleSheetEnabled),C=W(L=>L.promptMode),j=W(L=>L.setPromptMode),R=r.length<el,E=L=>{L.preventDefault(),v(!1);const $=Array.from(L.dataTransfer.files).filter(ce=>ce.type.startsWith("image/"));$.length>0&&u($)},_=L=>{L.preventDefault(),p||v(!0)},U=L=>{L.currentTarget.contains(L.relatedTarget)||v(!1)},M=L=>{if(!L)return[];const $=[];for(const ce of Array.from(L)){if(ce.kind!=="file"||!ce.type.startsWith("image/"))continue;const K=ce.getAsFile();K&&$.push(K)}return $},I=L=>{if(!R)return;const $=M(L.clipboardData?.items??null);if($.length===0)return;L.preventDefault();const ce=el-r.length;u($.slice(0,ce))};return Y.useEffect(()=>{const L=$=>{const ce=$.target,K=ce?.tagName;if(K==="INPUT"||K==="TEXTAREA"||ce?.isContentEditable)return;const te=M($.clipboardData?.items??null);if(te.length===0||r.length>=el)return;$.preventDefault();const ue=el-r.length;u(te.slice(0,ue))};return window.addEventListener("paste",L),()=>window.removeEventListener("paste",L)},[r.length,u]),h.jsxs("div",{className:`composer${p?" composer--drag":""}`,onDrop:E,onDragOver:_,onDragLeave:U,onPaste:I,children:[h.jsxs("div",{className:"composer__header",children:[h.jsx("span",{className:"section-title composer__label",children:o("prompt.label")}),r.length>0&&h.jsx("span",{className:"composer__count",children:o("prompt.refCount",{count:r.length,max:el})})]}),r.length>0&&h.jsx("div",{className:"composer__chips",children:r.map((L,$)=>h.jsxs("div",{className:"composer__chip",title:o("prompt.refChipTitle",{n:$+1}),children:[h.jsx("img",{src:L,alt:o("prompt.refChipAlt",{n:$+1})}),h.jsx("button",{type:"button",className:"composer__chip-remove",onClick:()=>d($),"aria-label":o("prompt.refRemoveAria",{n:$+1}),children:"×"})]},$))}),h.jsx("textarea",{className:"prompt-area composer__textarea",value:t,placeholder:r.length>0?o("prompt.placeholderWithRefs"):o("prompt.placeholder"),onChange:L=>i(L.target.value),onKeyDown:L=>{L.key==="Enter"&&(L.metaKey||L.ctrlKey)&&(L.preventDefault(),l())}}),h.jsxs("div",{className:"composer__toolbar",children:[h.jsxs("button",{type:"button",className:"composer__tool",onClick:()=>R&&g.current?.click(),disabled:!R,title:o("prompt.attachTitle"),"aria-label":o("prompt.attachTitle"),children:[h.jsx("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:h.jsx("path",{d:"M21.44 11.05l-9.19 9.19a6 6 0 0 1-8.49-8.49l9.19-9.19a4 4 0 0 1 5.66 5.66l-9.2 9.19a2 2 0 0 1-2.83-2.83l8.49-8.48"})}),h.jsx("span",{children:o("prompt.attach")})]}),h.jsxs("button",{type:"button",className:"composer__tool",onClick:()=>{m()},disabled:!y||!R,title:o("prompt.useCurrentTitle"),children:[h.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:[h.jsx("polyline",{points:"23 4 23 10 17 10"}),h.jsx("path",{d:"M20.49 15a9 9 0 1 1-2.12-9.36L23 10"})]}),h.jsx("span",{children:o("prompt.useCurrent")})]}),w&&h.jsxs("button",{type:"button",className:`composer__tool${A?" composer__tool--on":""}`,onClick:()=>S(!0),title:o("prompt.styleTitle"),"aria-label":o("prompt.styleTitle"),"aria-pressed":A,children:[h.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:[h.jsx("circle",{cx:"12",cy:"12",r:"9"}),h.jsx("circle",{cx:"8",cy:"10",r:"1",fill:"currentColor"}),h.jsx("circle",{cx:"12",cy:"8",r:"1",fill:"currentColor"}),h.jsx("circle",{cx:"16",cy:"10",r:"1",fill:"currentColor"}),h.jsx("path",{d:"M14 14c2 0 3 1 3 3 0 1-1 2-2 2-2 0-3-2-5-2"})]}),h.jsx("span",{children:o("prompt.style")})]}),h.jsxs("button",{type:"button",className:`composer__tool${C==="direct"?" composer__tool--on":""}`,onClick:()=>j(C==="direct"?"auto":"direct"),title:o("prompt.directModeTitle"),"aria-label":o("prompt.directModeTitle"),"aria-pressed":C==="direct",children:[h.jsx("span",{"aria-hidden":"true",style:{fontWeight:700,fontSize:11},children:"1:1"}),h.jsx("span",{children:o("prompt.directMode")})]}),h.jsx("span",{className:"composer__hint",children:o("prompt.hint")})]}),p&&h.jsx("div",{className:"composer__dropzone","aria-hidden":"true",children:o("prompt.dropHere",{max:el})}),h.jsx("input",{ref:g,type:"file",accept:"image/*",multiple:!0,hidden:!0,onChange:L=>{const $=Array.from(L.target.files??[]);$.length>0&&u($),L.target.value=""}}),h.jsx(q0,{open:x,onClose:()=>S(!1)})]})}function SN(){const t=W(u=>u.activeGenerations),i=W(u=>u.generate),{t:l}=Te(),o=t>0,r=o?l("generate.buttonLoading",{n:t}):l("generate.button");return h.jsx("button",{type:"button",className:`generate-btn${o?" loading":""}`,onClick:()=>{i()},children:r})}function wN(t,i=28){const l=t.trim().replace(/\s+/g," ");return l.length>i?`${l.slice(0,i)}...`:l}function ny(){const t=W(o=>o.inFlight),{t:i}=Te(),l={queued:i("inflight.queued"),streaming:i("inflight.streaming"),decoding:i("inflight.decoding")};return t.length===0?null:h.jsx("ul",{className:"in-flight-list",children:t.map(o=>{const r=o.phase?l[o.phase]??o.phase:i("inflight.queued");return h.jsxs("li",{className:"in-flight-item","data-phase":o.phase??"queued",children:[h.jsx("span",{className:"in-flight-prompt",children:wN(o.prompt)}),h.jsx("span",{className:"in-flight-phase",children:r}),h.jsx("span",{className:"in-flight-spinner","aria-hidden":"true"})]},o.id)})})}function NN(){const{t}=Te(),i=W(x=>x.sessions),l=W(x=>x.activeSessionId),o=W(x=>x.switchSession),r=W(x=>x.createAndSwitchSession),u=W(x=>x.renameCurrentSession),d=W(x=>x.deleteSessionById),[m,y]=Y.useState(!1),g=i.find(x=>x.id===l),p=()=>{const x=window.prompt(t("session.renamePrompt"),g?.title??t("session.newSession"));x&&x.trim()&&u(x.trim())},v=(x,S)=>{window.confirm(t("session.deleteConfirm",{title:S}))&&d(x)};return h.jsxs("div",{className:"session-picker",children:[h.jsxs("div",{className:"session-picker-row",children:[h.jsxs("button",{type:"button",className:"session-current",onClick:()=>y(x=>!x),title:t("session.switchTitle"),children:[h.jsx("span",{className:"session-title",children:g?.title??t("session.loading")}),h.jsx("span",{className:"session-caret",children:m?"▴":"▾"})]}),h.jsx("button",{type:"button",className:"session-btn",onClick:()=>{r(t("session.newSession"))},title:t("session.newSessionTitle"),children:"+"}),h.jsx("button",{type:"button",className:"session-btn",onClick:p,title:t("session.renameTitle"),disabled:!g,children:"✎"})]}),m&&h.jsxs("ul",{className:"session-list",children:[i.map(x=>h.jsxs("li",{className:x.id===l?"is-active":"",children:[h.jsxs("button",{type:"button",className:"session-item",onClick:()=>{y(!1),o(x.id)},children:[h.jsx("span",{className:"session-item-title",children:x.title}),h.jsx("span",{className:"session-item-count",children:x.nodeCount})]}),h.jsx("button",{type:"button",className:"session-del",onClick:()=>v(x.id,x.title),title:t("session.deleteTitle"),children:"×"})]},x.id)),i.length===0&&h.jsx("li",{className:"session-empty",children:t("session.empty")})]})]})}function _N(){const{t}=Te(),i=W(u=>u.activeSessionId),l=W(u=>u.styleSheetEnabled),[o,r]=Y.useState(!1);return i?h.jsxs(h.Fragment,{children:[h.jsx("button",{type:"button",className:`btn btn--secondary btn--sm${l?" is-on":""}`,onClick:()=>r(!0),"aria-pressed":l,title:t("prompt.styleTitle"),children:t("prompt.style")}),h.jsx(q0,{open:o,onClose:()=>r(!1)})]}):null}function EN(){const{t}=Te(),i=W(o=>o.settingsOpen),l=W(o=>o.toggleSettings);return h.jsx("button",{type:"button",className:`settings-button${i?" is-active":""}`,onClick:l,"aria-label":t("settings.openAria"),"aria-pressed":i,title:t("settings.openTitle"),children:h.jsxs("svg",{viewBox:"0 0 24 24","aria-hidden":"true",children:[h.jsx("path",{d:"M12 8.2a3.8 3.8 0 1 0 0 7.6 3.8 3.8 0 0 0 0-7.6Zm0 5.7a1.9 1.9 0 1 1 0-3.8 1.9 1.9 0 0 1 0 3.8Z"}),h.jsx("path",{d:"m20.3 13.4.1-1.4-.1-1.4-2.2-.5a6.9 6.9 0 0 0-.6-1.3l1.2-1.9a9.6 9.6 0 0 0-2-2l-1.9 1.2c-.4-.2-.9-.4-1.3-.6L13 3.3a9.5 9.5 0 0 0-2.8 0l-.5 2.2c-.5.2-.9.3-1.3.6L6.5 4.9a9.6 9.6 0 0 0-2 2l1.2 1.9c-.2.4-.4.9-.6 1.3l-2.2.5a9.5 9.5 0 0 0 0 2.8l2.2.5c.2.5.3.9.6 1.3l-1.2 1.9a9.6 9.6 0 0 0 2 2l1.9-1.2c.4.2.9.4 1.3.6l.5 2.2a9.5 9.5 0 0 0 2.8 0l.5-2.2c.5-.2.9-.3 1.3-.6l1.9 1.2a9.6 9.6 0 0 0 2-2l-1.2-1.9c.2-.4.4-.9.6-1.3l2.2-.5Z"})]})})}function Y0({variant:t}){const{t:i}=Te(),[l,o]=Y.useState(!1),r=Y.useRef(null),u=W(p=>p.imageModel),d=W(p=>p.setImageModel),m=t==="settings"?"settings-image-model":"sidebar-image-model",y=nl.find(p=>p.value===u)??nl[0],g=p=>{d(p.target.value)};return Y.useEffect(()=>{if(t!=="sidebar"||!l)return;const p=x=>{const S=x.target;S instanceof Node&&(r.current?.contains(S)||o(!1))},v=x=>{x.key==="Escape"&&o(!1)};return document.addEventListener("pointerdown",p),document.addEventListener("keydown",v),()=>{document.removeEventListener("pointerdown",p),document.removeEventListener("keydown",v)}},[l,t]),t==="sidebar"?h.jsxs("div",{ref:r,className:"image-model-select image-model-select--sidebar",children:[h.jsx("button",{id:m,type:"button",className:"image-model-select__trigger","aria-haspopup":"listbox","aria-expanded":l,"aria-label":i("sidebar.imageModelAria"),onClick:()=>o(p=>!p),children:y.shortLabel}),l?h.jsx("div",{className:"image-model-select__menu",role:"listbox","aria-label":i("sidebar.imageModelAria"),children:nl.map(p=>h.jsxs("button",{type:"button",className:`image-model-select__item${p.value===u?" is-active":""}`,role:"option","aria-selected":p.value===u,onClick:()=>{d(p.value),o(!1)},children:[h.jsx("span",{children:p.shortLabel}),h.jsx("small",{children:i(p.fullLabelKey)})]},p.value))}):null]}):h.jsx("div",{className:"image-model-select image-model-select--settings",children:h.jsxs("select",{id:m,value:u,onChange:g,children:[nl.map(p=>h.jsx("option",{value:p.value,children:i(p.fullLabelKey)},p.value)),Zw.map(p=>h.jsx("option",{value:p.value,disabled:!0,children:i(p.fullLabelKey)},p.value))]})})}function V0(t){return{...t,textFields:Array.isArray(t.textFields)?t.textFields:[]}}function No(t){return{...t,cards:Array.isArray(t.cards)?t.cards.map(V0):[]}}async function ui(t,i){const l=await fetch(t,i),o=await l.json().catch(()=>({}));if(!l.ok){const r=o,u=typeof r.error=="string"?r.error:r.error?.message||`Request failed: ${l.status}`,d=new Error(u);throw typeof r.error!="string"&&(d.code=r.error?.code),d}return o}function CN(){return ui("/api/cardnews/image-templates")}function TN(){return ui("/api/cardnews/role-templates")}async function AN(t){const i=await ui("/api/cardnews/draft",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});return{...i,plan:No(i.plan)}}function MN(t){return ui("/api/cardnews/jobs",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)})}function jN(t){return ui(`/api/cardnews/jobs/${encodeURIComponent(t)}`)}async function zN(t){const l=(await ui(`/api/cardnews/cards/${encodeURIComponent(t.card.id)}/regenerate`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({...t,cards:[t.card]})})).cards.find(o=>o.id===t.card.id);if(!l)throw new Error("Regenerated card not found");return{card:l}}function ay(t){return ui(`/api/cardnews/sets/${encodeURIComponent(t)}`).then(i=>({...i,plan:No(i.plan)}))}function RN(t){return`/api/cardnews/sets/${encodeURIComponent(t)}/manifest?download=1`}function DN(t){return t[0]?.id||"academy-lesson-square"}function ON(t){return t.find(i=>i.id==="mid-5")?.id||t[0]?.id||"mid-5"}function HN(t){return Math.round(t/16)*16}function Ir(t){return Math.min(3824,Math.max(1024,HN(t)))}function iy(t){return t.outputSizePreset!=="custom"?t.outputSizePreset:`${Ir(t.customW)}x${Ir(t.customH)}`}function X0(t){if(t){if(typeof t=="string")return t;if(typeof t=="object"&&"message"in t){const i=t.message;return typeof i=="string"?i:void 0}return String(t)}}function IN(t,i){const l=i.status||"generated";return{...t,...i,textFields:Array.isArray(i.textFields)?i.textFields:t.textFields,status:l,error:l==="error"?X0(i.error)||ve("cardNews.error"):void 0}}function LN(t){return new Promise(i=>setTimeout(i,t))}function Bd(t,i){const l=new Map(i.cards.map(o=>[o.id,o]));return{...t,cards:t.cards.map(o=>{const r=l.get(o.id);return r?{...o,...r,textFields:Array.isArray(r.textFields)?r.textFields:o.textFields,status:r.status||o.status,error:X0(r.error)}:o})}}const Se=x0((t,i)=>({templates:[],roleTemplates:[],activePlan:null,selectedCardId:null,selectedTextFieldId:null,topic:"",audience:"",goal:"",contentBrief:"",imageTemplateId:"academy-lesson-square",roleTemplateId:"mid-5",outputSizePreset:"2048x2048",customW:2048,customH:2048,loading:!1,generating:!1,error:null,draftError:null,plannerMeta:null,async hydrate(){if(!(i().loading||i().templates.length>0)){t({loading:!0,error:null});try{const[l,o]=await Promise.all([CN(),TN()]);t({templates:l.templates,roleTemplates:o.templates,imageTemplateId:DN(l.templates),roleTemplateId:ON(o.templates),loading:!1})}catch(l){t({loading:!1,error:l instanceof Error?l.message:String(l)})}}},setBriefField(l,o){t({[l]:o})},setImageTemplate(l){t({imageTemplateId:l})},setRoleTemplate(l){t({roleTemplateId:l})},setOutputSizePreset(l){t({outputSizePreset:l})},setCustomSize(l,o){t({customW:Ir(l),customH:Ir(o)})},async draft(){const l=i();t({loading:!0,error:null,draftError:null});try{const{plan:o,planner:r}=await AN({topic:l.topic,audience:l.audience,goal:l.goal,contentBrief:l.contentBrief,imageTemplateId:l.imageTemplateId,roleTemplateId:l.roleTemplateId,size:iy(l)});t({activePlan:No(o),selectedCardId:o.cards[0]?.id||null,selectedTextFieldId:null,plannerMeta:r||null,loading:!1})}catch(o){const r=o instanceof Error?o.message:String(o);t({loading:!1,draftError:r,error:r})}},updateCard(l,o){t(r=>({activePlan:r.activePlan?{...r.activePlan,cards:r.activePlan.cards.map(u=>u.id===l?{...u,...o}:u)}:null}))},updateTextField(l,o,r){t(u=>({activePlan:u.activePlan?{...u.activePlan,cards:u.activePlan.cards.map(d=>d.id!==l||d.locked?d:{...d,textFields:d.textFields.map(m=>m.id===o?{...m,...r,source:r.source||"user"}:m)})}:null}))},addTextField(l,o){t(r=>({activePlan:r.activePlan?{...r.activePlan,cards:r.activePlan.cards.map(u=>u.id===l&&!u.locked?{...u,textFields:[...u.textFields,{...o,source:"user"}]}:u)}:null,selectedTextFieldId:o.id}))},removeTextField(l,o){t(r=>({activePlan:r.activePlan?{...r.activePlan,cards:r.activePlan.cards.map(u=>u.id===l&&!u.locked?{...u,textFields:u.textFields.filter(d=>d.id!==o)}:u)}:null,selectedTextFieldId:r.selectedTextFieldId===o?null:r.selectedTextFieldId}))},selectCard(l){t({selectedCardId:l,selectedTextFieldId:null})},selectTextField(l){t({selectedTextFieldId:l})},getGenerationSummary(){const l=i().activePlan?.cards||[];return{total:l.length,done:l.filter(o=>o.status==="generated").length,queued:l.filter(o=>o.status==="queued").length,generating:l.filter(o=>o.status==="generating").length,errors:l.filter(o=>o.status==="error").length,skipped:l.filter(o=>o.locked||o.status==="skipped").length}},async generateSet(){const l=i();if(!l.activePlan)return;const o=W.getState();t({generating:!0,error:null,activePlan:{...l.activePlan,cards:l.activePlan.cards.map(r=>r.locked?{...r,status:"skipped"}:{...r,status:"queued",error:void 0})}});try{const r=i().activePlan||l.activePlan;let d=await MN({...r,size:iy(l),quality:o.quality,moderation:o.moderation,model:o.imageModel,sessionId:o.activeSessionId});for(t(y=>({activePlan:y.activePlan?Bd(y.activePlan,d):y.activePlan}));["queued","running"].includes(d.status);)await LN(900),d=await jN(d.jobId),t(y=>({activePlan:y.activePlan?Bd(y.activePlan,d):y.activePlan}));const m=await ay(d.setId).catch(()=>null);t(y=>({generating:!1,activePlan:m?.plan?No(m.plan):y.activePlan?Bd(y.activePlan,d):y.activePlan,selectedTextFieldId:null})),o.showToast(ve("cardNews.generated",{count:d.generated}))}catch(r){const u=r instanceof Error?r.message:String(r);t(d=>({generating:!1,error:u,activePlan:d.activePlan?{...d.activePlan,cards:d.activePlan.cards.map(m=>m.status==="queued"||m.status==="generating"?{...m,status:"error",error:u}:m)}:d.activePlan}))}},async retryCard(l){const r=i().activePlan,u=r?.cards.find(m=>m.id===l);if(!r||!u||u.locked||!["draft","error"].includes(u.status))return;const d=W.getState();t({error:null,activePlan:{...r,cards:r.cards.map(m=>m.id===l?{...m,status:"generating",error:void 0}:m)}});try{const{card:m}=await zN({setId:r.setId,card:u,quality:d.quality,moderation:d.moderation,model:d.imageModel});t(y=>({activePlan:y.activePlan?{...y.activePlan,cards:y.activePlan.cards.map(g=>g.id===l?IN(g,V0(m)):g)}:y.activePlan}))}catch(m){const y=m instanceof Error?m.message:String(m);t(g=>({error:y,activePlan:g.activePlan?{...g.activePlan,cards:g.activePlan.cards.map(p=>p.id===l?{...p,status:"error",error:y}:p)}:g.activePlan}))}},async loadSet(l){t({loading:!0,error:null,selectedTextFieldId:null});try{const{plan:o}=await ay(l);t({activePlan:No(o),selectedCardId:o.cards[0]?.id||null,selectedTextFieldId:null,loading:!1})}catch(o){t({loading:!1,error:o instanceof Error?o.message:String(o)})}}}));function BN(){const{t}=Te(),i=Se(_=>_.hydrate),l=Se(_=>_.topic),o=Se(_=>_.audience),r=Se(_=>_.goal),u=Se(_=>_.contentBrief),d=Se(_=>_.outputSizePreset),m=Se(_=>_.customW),y=Se(_=>_.customH),g=Se(_=>_.setBriefField),p=Se(_=>_.setOutputSizePreset),v=Se(_=>_.setCustomSize),x=Se(_=>_.draft),S=Se(_=>_.loading),w=Se(_=>_.generating),A=Se(_=>_.draftError),C=Se(_=>_.generateSet),j=Se(_=>_.activePlan),R=j?.cards||[],E={total:R.length,done:R.filter(_=>_.status==="generated").length};return Y.useEffect(()=>{i()},[i]),h.jsxs("section",{className:"card-news-composer","aria-label":t("cardNews.composer"),children:[h.jsx("div",{className:"card-news-composer__head",children:h.jsxs("div",{children:[h.jsx("div",{className:"section-title",children:t("cardNews.composer")}),h.jsx("p",{children:t("cardNews.composerHint")})]})}),h.jsxs("label",{className:"card-news-field",children:[h.jsx("span",{children:t("cardNews.topic")}),h.jsx("input",{value:l,placeholder:t("cardNews.topicPlaceholder"),onChange:_=>g("topic",_.target.value)})]}),h.jsxs("label",{className:"card-news-field",children:[h.jsx("span",{children:t("cardNews.audience")}),h.jsx("input",{value:o,placeholder:t("cardNews.audiencePlaceholder"),onChange:_=>g("audience",_.target.value)})]}),h.jsxs("label",{className:"card-news-field",children:[h.jsx("span",{children:t("cardNews.goal")}),h.jsx("input",{value:r,placeholder:t("cardNews.goalPlaceholder"),onChange:_=>g("goal",_.target.value)})]}),h.jsxs("label",{className:"card-news-field",children:[h.jsx("span",{children:t("cardNews.brief")}),h.jsx("textarea",{value:u,placeholder:t("cardNews.briefPlaceholder"),onChange:_=>g("contentBrief",_.target.value)})]}),h.jsxs("div",{className:"card-news-field",children:[h.jsx("span",{children:t("cardNews.outputSize")}),h.jsx("div",{className:"card-news-size-row",role:"group","aria-label":t("cardNews.outputSize"),children:["1024x1024","2048x2048","custom"].map(_=>h.jsx("button",{type:"button",className:`option-btn${d===_?" active":""}`,onClick:()=>p(_),children:_==="custom"?t("cardNews.customSize"):_==="1024x1024"?"1024²":"2048²"},_))}),d==="custom"?h.jsxs("div",{className:"card-news-custom-size",children:[h.jsx("input",{className:"custom-size-input",type:"text",inputMode:"numeric",value:m,onChange:_=>v(Number.parseInt(_.target.value,10)||m,y),"aria-label":t("size.width")}),h.jsx("span",{children:"×"}),h.jsx("input",{className:"custom-size-input",type:"text",inputMode:"numeric",value:y,onChange:_=>v(m,Number.parseInt(_.target.value,10)||y),"aria-label":t("size.height")})]}):null]}),h.jsxs("button",{type:"button",className:"generate-btn card-news-draft-btn",onClick:()=>{x()},disabled:S||!l.trim(),children:[S?h.jsx("span",{className:"card-news-spinner","aria-hidden":"true"}):null,t(S?"cardNews.drafting":"cardNews.draft")]}),A?h.jsx("div",{className:"card-news-error",role:"alert",children:A}):null,S?h.jsxs("div",{className:"card-news-inline-status",role:"status",children:[h.jsx("span",{className:"card-news-spinner","aria-hidden":"true"}),h.jsx("span",{children:t("cardNews.drafting")})]}):null,h.jsxs("button",{type:"button",className:"composer__tool card-news-generate-btn",onClick:()=>{C()},disabled:!j||w||j.cards.every(_=>_.locked),children:[w?h.jsx("span",{className:"card-news-spinner","aria-hidden":"true"}):null,w?t("cardNews.progress.generating",{done:E.done,total:E.total}):t("cardNews.batchGenerate")]})]})}function kN(){const{t}=Te(),i=W(d=>d.uiMode),l=W(d=>d.referenceImages),o=W(d=>d.clearReferences),r=W(d=>d.styleSheetEnabled),u=i==="node"&&xf?"node":"classic";return h.jsx("aside",{className:"sidebar",children:h.jsxs("div",{className:"sidebar__scroll",children:[h.jsxs("div",{className:"logo",children:[h.jsx("div",{className:"logo-mark","aria-hidden":"true"}),h.jsxs("div",{className:"logo-copy",children:[h.jsx("div",{className:"logo-title",children:"ima2-gen"}),h.jsx("div",{className:"logo-subtitle",children:"gpt-image-2 studio"})]}),h.jsxs("div",{className:"logo-actions",children:[h.jsx(Y0,{variant:"sidebar"}),h.jsx(EN,{})]})]}),h.jsx(xN,{}),u==="classic"?h.jsxs(h.Fragment,{children:[h.jsx(bN,{}),h.jsx(SN,{}),h.jsx(ny,{})]}):u==="card-news"?h.jsx(h.Fragment,{children:h.jsx(BN,{})}):h.jsxs(h.Fragment,{children:[h.jsx(NN,{}),h.jsx(_N,{}),l.length>0?h.jsxs("div",{className:"node-mode-ref-warning",role:"status",children:[h.jsx("strong",{children:t("node.classicRefsParkedTitle")}),h.jsx("span",{children:t("node.classicRefsParkedBody")}),h.jsx("button",{type:"button",onClick:o,children:t("node.clearParkedRefs")})]}):null,r?h.jsx("div",{className:"node-mode-style-badge",role:"status",children:t("node.styleSheetActive")}):null,h.jsx("div",{className:"sidebar__node-hint",children:t("sidebar.nodeModeHint")}),h.jsx(ny,{})]})]})})}function UN(){const{t}=Te(),i=W(y=>y.currentImage),l=W(y=>y.showToast),o=W(y=>y.setPrompt);if(!i)return null;const r=()=>{const y=document.createElement("a");y.href=i.image,y.download=i.filename||"generated.png",y.click()},u=async()=>{try{const g=await(await fetch(i.image)).blob();await navigator.clipboard.write([new ClipboardItem({[g.type]:g})]),l(t("toast.imageCopied"))}catch{l(t("toast.copyFailed"),!0)}},d=()=>{i.prompt&&(navigator.clipboard.writeText(i.prompt),l(t("toast.promptCopied")))},m=async()=>{if(!i.prompt){l(t("toast.noPromptToFork"),!0);return}o(i.prompt);try{await W.getState().useCurrentAsReference()}catch{}const y=document.querySelector('textarea[name="prompt"], textarea#prompt, .sidebar textarea');y&&(y.focus(),y.setSelectionRange(y.value.length,y.value.length)),l(t("toast.forkStarted"))};return h.jsxs("div",{className:"result-actions",children:[h.jsx("button",{type:"button",className:"action-btn",onClick:r,children:t("result.download")}),h.jsx("button",{type:"button",className:"action-btn",onClick:u,children:t("result.copyImage")}),h.jsx("button",{type:"button",className:"action-btn",onClick:d,children:t("result.copyPrompt")}),h.jsx("button",{type:"button",className:"action-btn action-btn--primary",onClick:m,title:t("result.continueHereTitle"),children:t("result.continueHere")})]})}function GN(t){return t instanceof HTMLElement?t instanceof HTMLInputElement||t instanceof HTMLTextAreaElement||t instanceof HTMLSelectElement||t.isContentEditable:!1}function qN(t){return t==="low"?"l":t==="medium"?"m":t==="high"?"h":t??null}function YN(t){if(!t)return null;const i=t.match(/^(\d+)x\1$/);return i?`${i[1]}²`:t.replace("x","×")}function ly(){const t=W(S=>S.currentImage),i=W(S=>S.history),l=W(S=>S.selectHistory),o=W(S=>S.activeGenerations),r=W(S=>S.quality),u=W(S=>S.getResolvedSize),d=W(S=>S.showToast),{t:m}=Te(),y=()=>{t?.prompt&&(navigator.clipboard.writeText(t.prompt),d(m("toast.promptCopied")))},g=qN(t?.quality??r),p=YN(t?.size??u()),v=C0(t?.model),x=S=>{if(S.key!=="ArrowLeft"&&S.key!=="ArrowRight"||S.target!==S.currentTarget||GN(S.target))return;const w=i.findIndex(j=>t?.filename?j.filename===t.filename:j.image===t?.image);if(w<0)return;const A=S.key==="ArrowLeft"?w-1:w+1,C=i[A];C&&(S.preventDefault(),l(C))};return h.jsxs("main",{className:"canvas",children:[h.jsx("div",{className:`progress-bar${o>0?" active":""}`}),t?h.jsxs("div",{className:"result-container visible",tabIndex:0,onKeyDown:x,"aria-label":m("canvas.imageViewerAria"),children:[h.jsx("img",{className:"result-img",src:t.url??t.image,alt:m("canvas.resultAlt")},t.filename??t.url??t.image),t.prompt?h.jsx("div",{className:"result-prompt",onClick:y,children:t.prompt}):null,h.jsx("div",{className:"result-meta",children:[t.elapsed!=null?`${t.elapsed}s`:null,t.usage?m("canvas.tokens",{n:t.usage.total_tokens??"?"}):null,g,p,v,t.provider??null].filter(S=>!!S).join(" · ")}),h.jsx(UN,{})]}):null]})}function st(t){if(typeof t=="string"||typeof t=="number")return""+t;let i="";if(Array.isArray(t))for(let l=0,o;l<t.length;l++)(o=st(t[l]))!==""&&(i+=(i&&" ")+o);else for(let l in t)t[l]&&(i+=(i&&" ")+l);return i}var VN={value:()=>{}};function Kr(){for(var t=0,i=arguments.length,l={},o;t<i;++t){if(!(o=arguments[t]+"")||o in l||/[\s.]/.test(o))throw new Error("illegal type: "+o);l[o]=[]}return new jr(l)}function jr(t){this._=t}function XN(t,i){return t.trim().split(/^|\s+/).map(function(l){var o="",r=l.indexOf(".");if(r>=0&&(o=l.slice(r+1),l=l.slice(0,r)),l&&!i.hasOwnProperty(l))throw new Error("unknown type: "+l);return{type:l,name:o}})}jr.prototype=Kr.prototype={constructor:jr,on:function(t,i){var l=this._,o=XN(t+"",l),r,u=-1,d=o.length;if(arguments.length<2){for(;++u<d;)if((r=(t=o[u]).type)&&(r=$N(l[r],t.name)))return r;return}if(i!=null&&typeof i!="function")throw new Error("invalid callback: "+i);for(;++u<d;)if(r=(t=o[u]).type)l[r]=oy(l[r],t.name,i);else if(i==null)for(r in l)l[r]=oy(l[r],t.name,null);return this},copy:function(){var t={},i=this._;for(var l in i)t[l]=i[l].slice();return new jr(t)},call:function(t,i){if((r=arguments.length-2)>0)for(var l=new Array(r),o=0,r,u;o<r;++o)l[o]=arguments[o+2];if(!this._.hasOwnProperty(t))throw new Error("unknown type: "+t);for(u=this._[t],o=0,r=u.length;o<r;++o)u[o].value.apply(i,l)},apply:function(t,i,l){if(!this._.hasOwnProperty(t))throw new Error("unknown type: "+t);for(var o=this._[t],r=0,u=o.length;r<u;++r)o[r].value.apply(i,l)}};function $N(t,i){for(var l=0,o=t.length,r;l<o;++l)if((r=t[l]).name===i)return r.value}function oy(t,i,l){for(var o=0,r=t.length;o<r;++o)if(t[o].name===i){t[o]=VN,t=t.slice(0,o).concat(t.slice(o+1));break}return l!=null&&t.push({name:i,value:l}),t}var nf="http://www.w3.org/1999/xhtml";const sy={svg:"http://www.w3.org/2000/svg",xhtml:nf,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function Fr(t){var i=t+="",l=i.indexOf(":");return l>=0&&(i=t.slice(0,l))!=="xmlns"&&(t=t.slice(l+1)),sy.hasOwnProperty(i)?{space:sy[i],local:t}:t}function ZN(t){return function(){var i=this.ownerDocument,l=this.namespaceURI;return l===nf&&i.documentElement.namespaceURI===nf?i.createElement(t):i.createElementNS(l,t)}}function KN(t){return function(){return this.ownerDocument.createElementNS(t.space,t.local)}}function $0(t){var i=Fr(t);return(i.local?KN:ZN)(i)}function FN(){}function bf(t){return t==null?FN:function(){return this.querySelector(t)}}function QN(t){typeof t!="function"&&(t=bf(t));for(var i=this._groups,l=i.length,o=new Array(l),r=0;r<l;++r)for(var u=i[r],d=u.length,m=o[r]=new Array(d),y,g,p=0;p<d;++p)(y=u[p])&&(g=t.call(y,y.__data__,p,u))&&("__data__"in y&&(g.__data__=y.__data__),m[p]=g);return new Ut(o,this._parents)}function PN(t){return t==null?[]:Array.isArray(t)?t:Array.from(t)}function JN(){return[]}function Z0(t){return t==null?JN:function(){return this.querySelectorAll(t)}}function WN(t){return function(){return PN(t.apply(this,arguments))}}function e_(t){typeof t=="function"?t=WN(t):t=Z0(t);for(var i=this._groups,l=i.length,o=[],r=[],u=0;u<l;++u)for(var d=i[u],m=d.length,y,g=0;g<m;++g)(y=d[g])&&(o.push(t.call(y,y.__data__,g,d)),r.push(y));return new Ut(o,r)}function K0(t){return function(){return this.matches(t)}}function F0(t){return function(i){return i.matches(t)}}var t_=Array.prototype.find;function n_(t){return function(){return t_.call(this.children,t)}}function a_(){return this.firstElementChild}function i_(t){return this.select(t==null?a_:n_(typeof t=="function"?t:F0(t)))}var l_=Array.prototype.filter;function o_(){return Array.from(this.children)}function s_(t){return function(){return l_.call(this.children,t)}}function r_(t){return this.selectAll(t==null?o_:s_(typeof t=="function"?t:F0(t)))}function c_(t){typeof t!="function"&&(t=K0(t));for(var i=this._groups,l=i.length,o=new Array(l),r=0;r<l;++r)for(var u=i[r],d=u.length,m=o[r]=[],y,g=0;g<d;++g)(y=u[g])&&t.call(y,y.__data__,g,u)&&m.push(y);return new Ut(o,this._parents)}function Q0(t){return new Array(t.length)}function u_(){return new Ut(this._enter||this._groups.map(Q0),this._parents)}function Lr(t,i){this.ownerDocument=t.ownerDocument,this.namespaceURI=t.namespaceURI,this._next=null,this._parent=t,this.__data__=i}Lr.prototype={constructor:Lr,appendChild:function(t){return this._parent.insertBefore(t,this._next)},insertBefore:function(t,i){return this._parent.insertBefore(t,i)},querySelector:function(t){return this._parent.querySelector(t)},querySelectorAll:function(t){return this._parent.querySelectorAll(t)}};function d_(t){return function(){return t}}function f_(t,i,l,o,r,u){for(var d=0,m,y=i.length,g=u.length;d<g;++d)(m=i[d])?(m.__data__=u[d],o[d]=m):l[d]=new Lr(t,u[d]);for(;d<y;++d)(m=i[d])&&(r[d]=m)}function h_(t,i,l,o,r,u,d){var m,y,g=new Map,p=i.length,v=u.length,x=new Array(p),S;for(m=0;m<p;++m)(y=i[m])&&(x[m]=S=d.call(y,y.__data__,m,i)+"",g.has(S)?r[m]=y:g.set(S,y));for(m=0;m<v;++m)S=d.call(t,u[m],m,u)+"",(y=g.get(S))?(o[m]=y,y.__data__=u[m],g.delete(S)):l[m]=new Lr(t,u[m]);for(m=0;m<p;++m)(y=i[m])&&g.get(x[m])===y&&(r[m]=y)}function m_(t){return t.__data__}function g_(t,i){if(!arguments.length)return Array.from(this,m_);var l=i?h_:f_,o=this._parents,r=this._groups;typeof t!="function"&&(t=d_(t));for(var u=r.length,d=new Array(u),m=new Array(u),y=new Array(u),g=0;g<u;++g){var p=o[g],v=r[g],x=v.length,S=p_(t.call(p,p&&p.__data__,g,o)),w=S.length,A=m[g]=new Array(w),C=d[g]=new Array(w),j=y[g]=new Array(x);l(p,v,A,C,j,S,i);for(var R=0,E=0,_,U;R<w;++R)if(_=A[R]){for(R>=E&&(E=R+1);!(U=C[E])&&++E<w;);_._next=U||null}}return d=new Ut(d,o),d._enter=m,d._exit=y,d}function p_(t){return typeof t=="object"&&"length"in t?t:Array.from(t)}function y_(){return new Ut(this._exit||this._groups.map(Q0),this._parents)}function v_(t,i,l){var o=this.enter(),r=this,u=this.exit();return typeof t=="function"?(o=t(o),o&&(o=o.selection())):o=o.append(t+""),i!=null&&(r=i(r),r&&(r=r.selection())),l==null?u.remove():l(u),o&&r?o.merge(r).order():r}function x_(t){for(var i=t.selection?t.selection():t,l=this._groups,o=i._groups,r=l.length,u=o.length,d=Math.min(r,u),m=new Array(r),y=0;y<d;++y)for(var g=l[y],p=o[y],v=g.length,x=m[y]=new Array(v),S,w=0;w<v;++w)(S=g[w]||p[w])&&(x[w]=S);for(;y<r;++y)m[y]=l[y];return new Ut(m,this._parents)}function b_(){for(var t=this._groups,i=-1,l=t.length;++i<l;)for(var o=t[i],r=o.length-1,u=o[r],d;--r>=0;)(d=o[r])&&(u&&d.compareDocumentPosition(u)^4&&u.parentNode.insertBefore(d,u),u=d);return this}function S_(t){t||(t=w_);function i(v,x){return v&&x?t(v.__data__,x.__data__):!v-!x}for(var l=this._groups,o=l.length,r=new Array(o),u=0;u<o;++u){for(var d=l[u],m=d.length,y=r[u]=new Array(m),g,p=0;p<m;++p)(g=d[p])&&(y[p]=g);y.sort(i)}return new Ut(r,this._parents).order()}function w_(t,i){return t<i?-1:t>i?1:t>=i?0:NaN}function N_(){var t=arguments[0];return arguments[0]=this,t.apply(null,arguments),this}function __(){return Array.from(this)}function E_(){for(var t=this._groups,i=0,l=t.length;i<l;++i)for(var o=t[i],r=0,u=o.length;r<u;++r){var d=o[r];if(d)return d}return null}function C_(){let t=0;for(const i of this)++t;return t}function T_(){return!this.node()}function A_(t){for(var i=this._groups,l=0,o=i.length;l<o;++l)for(var r=i[l],u=0,d=r.length,m;u<d;++u)(m=r[u])&&t.call(m,m.__data__,u,r);return this}function M_(t){return function(){this.removeAttribute(t)}}function j_(t){return function(){this.removeAttributeNS(t.space,t.local)}}function z_(t,i){return function(){this.setAttribute(t,i)}}function R_(t,i){return function(){this.setAttributeNS(t.space,t.local,i)}}function D_(t,i){return function(){var l=i.apply(this,arguments);l==null?this.removeAttribute(t):this.setAttribute(t,l)}}function O_(t,i){return function(){var l=i.apply(this,arguments);l==null?this.removeAttributeNS(t.space,t.local):this.setAttributeNS(t.space,t.local,l)}}function H_(t,i){var l=Fr(t);if(arguments.length<2){var o=this.node();return l.local?o.getAttributeNS(l.space,l.local):o.getAttribute(l)}return this.each((i==null?l.local?j_:M_:typeof i=="function"?l.local?O_:D_:l.local?R_:z_)(l,i))}function P0(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView}function I_(t){return function(){this.style.removeProperty(t)}}function L_(t,i,l){return function(){this.style.setProperty(t,i,l)}}function B_(t,i,l){return function(){var o=i.apply(this,arguments);o==null?this.style.removeProperty(t):this.style.setProperty(t,o,l)}}function k_(t,i,l){return arguments.length>1?this.each((i==null?I_:typeof i=="function"?B_:L_)(t,i,l??"")):ul(this.node(),t)}function ul(t,i){return t.style.getPropertyValue(i)||P0(t).getComputedStyle(t,null).getPropertyValue(i)}function U_(t){return function(){delete this[t]}}function G_(t,i){return function(){this[t]=i}}function q_(t,i){return function(){var l=i.apply(this,arguments);l==null?delete this[t]:this[t]=l}}function Y_(t,i){return arguments.length>1?this.each((i==null?U_:typeof i=="function"?q_:G_)(t,i)):this.node()[t]}function J0(t){return t.trim().split(/^|\s+/)}function Sf(t){return t.classList||new W0(t)}function W0(t){this._node=t,this._names=J0(t.getAttribute("class")||"")}W0.prototype={add:function(t){var i=this._names.indexOf(t);i<0&&(this._names.push(t),this._node.setAttribute("class",this._names.join(" ")))},remove:function(t){var i=this._names.indexOf(t);i>=0&&(this._names.splice(i,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(t){return this._names.indexOf(t)>=0}};function ev(t,i){for(var l=Sf(t),o=-1,r=i.length;++o<r;)l.add(i[o])}function tv(t,i){for(var l=Sf(t),o=-1,r=i.length;++o<r;)l.remove(i[o])}function V_(t){return function(){ev(this,t)}}function X_(t){return function(){tv(this,t)}}function $_(t,i){return function(){(i.apply(this,arguments)?ev:tv)(this,t)}}function Z_(t,i){var l=J0(t+"");if(arguments.length<2){for(var o=Sf(this.node()),r=-1,u=l.length;++r<u;)if(!o.contains(l[r]))return!1;return!0}return this.each((typeof i=="function"?$_:i?V_:X_)(l,i))}function K_(){this.textContent=""}function F_(t){return function(){this.textContent=t}}function Q_(t){return function(){var i=t.apply(this,arguments);this.textContent=i??""}}function P_(t){return arguments.length?this.each(t==null?K_:(typeof t=="function"?Q_:F_)(t)):this.node().textContent}function J_(){this.innerHTML=""}function W_(t){return function(){this.innerHTML=t}}function eE(t){return function(){var i=t.apply(this,arguments);this.innerHTML=i??""}}function tE(t){return arguments.length?this.each(t==null?J_:(typeof t=="function"?eE:W_)(t)):this.node().innerHTML}function nE(){this.nextSibling&&this.parentNode.appendChild(this)}function aE(){return this.each(nE)}function iE(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function lE(){return this.each(iE)}function oE(t){var i=typeof t=="function"?t:$0(t);return this.select(function(){return this.appendChild(i.apply(this,arguments))})}function sE(){return null}function rE(t,i){var l=typeof t=="function"?t:$0(t),o=i==null?sE:typeof i=="function"?i:bf(i);return this.select(function(){return this.insertBefore(l.apply(this,arguments),o.apply(this,arguments)||null)})}function cE(){var t=this.parentNode;t&&t.removeChild(this)}function uE(){return this.each(cE)}function dE(){var t=this.cloneNode(!1),i=this.parentNode;return i?i.insertBefore(t,this.nextSibling):t}function fE(){var t=this.cloneNode(!0),i=this.parentNode;return i?i.insertBefore(t,this.nextSibling):t}function hE(t){return this.select(t?fE:dE)}function mE(t){return arguments.length?this.property("__data__",t):this.node().__data__}function gE(t){return function(i){t.call(this,i,this.__data__)}}function pE(t){return t.trim().split(/^|\s+/).map(function(i){var l="",o=i.indexOf(".");return o>=0&&(l=i.slice(o+1),i=i.slice(0,o)),{type:i,name:l}})}function yE(t){return function(){var i=this.__on;if(i){for(var l=0,o=-1,r=i.length,u;l<r;++l)u=i[l],(!t.type||u.type===t.type)&&u.name===t.name?this.removeEventListener(u.type,u.listener,u.options):i[++o]=u;++o?i.length=o:delete this.__on}}}function vE(t,i,l){return function(){var o=this.__on,r,u=gE(i);if(o){for(var d=0,m=o.length;d<m;++d)if((r=o[d]).type===t.type&&r.name===t.name){this.removeEventListener(r.type,r.listener,r.options),this.addEventListener(r.type,r.listener=u,r.options=l),r.value=i;return}}this.addEventListener(t.type,u,l),r={type:t.type,name:t.name,value:i,listener:u,options:l},o?o.push(r):this.__on=[r]}}function xE(t,i,l){var o=pE(t+""),r,u=o.length,d;if(arguments.length<2){var m=this.node().__on;if(m){for(var y=0,g=m.length,p;y<g;++y)for(r=0,p=m[y];r<u;++r)if((d=o[r]).type===p.type&&d.name===p.name)return p.value}return}for(m=i?vE:yE,r=0;r<u;++r)this.each(m(o[r],i,l));return this}function nv(t,i,l){var o=P0(t),r=o.CustomEvent;typeof r=="function"?r=new r(i,l):(r=o.document.createEvent("Event"),l?(r.initEvent(i,l.bubbles,l.cancelable),r.detail=l.detail):r.initEvent(i,!1,!1)),t.dispatchEvent(r)}function bE(t,i){return function(){return nv(this,t,i)}}function SE(t,i){return function(){return nv(this,t,i.apply(this,arguments))}}function wE(t,i){return this.each((typeof i=="function"?SE:bE)(t,i))}function*NE(){for(var t=this._groups,i=0,l=t.length;i<l;++i)for(var o=t[i],r=0,u=o.length,d;r<u;++r)(d=o[r])&&(yield d)}var av=[null];function Ut(t,i){this._groups=t,this._parents=i}function Io(){return new Ut([[document.documentElement]],av)}function _E(){return this}Ut.prototype=Io.prototype={constructor:Ut,select:QN,selectAll:e_,selectChild:i_,selectChildren:r_,filter:c_,data:g_,enter:u_,exit:y_,join:v_,merge:x_,selection:_E,order:b_,sort:S_,call:N_,nodes:__,node:E_,size:C_,empty:T_,each:A_,attr:H_,style:k_,property:Y_,classed:Z_,text:P_,html:tE,raise:aE,lower:lE,append:oE,insert:rE,remove:uE,clone:hE,datum:mE,on:xE,dispatch:wE,[Symbol.iterator]:NE};function kt(t){return typeof t=="string"?new Ut([[document.querySelector(t)]],[document.documentElement]):new Ut([[t]],av)}function EE(t){let i;for(;i=t.sourceEvent;)t=i;return t}function tn(t,i){if(t=EE(t),i===void 0&&(i=t.currentTarget),i){var l=i.ownerSVGElement||i;if(l.createSVGPoint){var o=l.createSVGPoint();return o.x=t.clientX,o.y=t.clientY,o=o.matrixTransform(i.getScreenCTM().inverse()),[o.x,o.y]}if(i.getBoundingClientRect){var r=i.getBoundingClientRect();return[t.clientX-r.left-i.clientLeft,t.clientY-r.top-i.clientTop]}}return[t.pageX,t.pageY]}const CE={passive:!1},Co={capture:!0,passive:!1};function kd(t){t.stopImmediatePropagation()}function ol(t){t.preventDefault(),t.stopImmediatePropagation()}function iv(t){var i=t.document.documentElement,l=kt(t).on("dragstart.drag",ol,Co);"onselectstart"in i?l.on("selectstart.drag",ol,Co):(i.__noselect=i.style.MozUserSelect,i.style.MozUserSelect="none")}function lv(t,i){var l=t.document.documentElement,o=kt(t).on("dragstart.drag",null);i&&(o.on("click.drag",ol,Co),setTimeout(function(){o.on("click.drag",null)},0)),"onselectstart"in l?o.on("selectstart.drag",null):(l.style.MozUserSelect=l.__noselect,delete l.__noselect)}const yr=t=>()=>t;function af(t,{sourceEvent:i,subject:l,target:o,identifier:r,active:u,x:d,y:m,dx:y,dy:g,dispatch:p}){Object.defineProperties(this,{type:{value:t,enumerable:!0,configurable:!0},sourceEvent:{value:i,enumerable:!0,configurable:!0},subject:{value:l,enumerable:!0,configurable:!0},target:{value:o,enumerable:!0,configurable:!0},identifier:{value:r,enumerable:!0,configurable:!0},active:{value:u,enumerable:!0,configurable:!0},x:{value:d,enumerable:!0,configurable:!0},y:{value:m,enumerable:!0,configurable:!0},dx:{value:y,enumerable:!0,configurable:!0},dy:{value:g,enumerable:!0,configurable:!0},_:{value:p}})}af.prototype.on=function(){var t=this._.on.apply(this._,arguments);return t===this._?this:t};function TE(t){return!t.ctrlKey&&!t.button}function AE(){return this.parentNode}function ME(t,i){return i??{x:t.x,y:t.y}}function jE(){return navigator.maxTouchPoints||"ontouchstart"in this}function ov(){var t=TE,i=AE,l=ME,o=jE,r={},u=Kr("start","drag","end"),d=0,m,y,g,p,v=0;function x(_){_.on("mousedown.drag",S).filter(o).on("touchstart.drag",C).on("touchmove.drag",j,CE).on("touchend.drag touchcancel.drag",R).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function S(_,U){if(!(p||!t.call(this,_,U))){var M=E(this,i.call(this,_,U),_,U,"mouse");M&&(kt(_.view).on("mousemove.drag",w,Co).on("mouseup.drag",A,Co),iv(_.view),kd(_),g=!1,m=_.clientX,y=_.clientY,M("start",_))}}function w(_){if(ol(_),!g){var U=_.clientX-m,M=_.clientY-y;g=U*U+M*M>v}r.mouse("drag",_)}function A(_){kt(_.view).on("mousemove.drag mouseup.drag",null),lv(_.view,g),ol(_),r.mouse("end",_)}function C(_,U){if(t.call(this,_,U)){var M=_.changedTouches,I=i.call(this,_,U),L=M.length,$,ce;for($=0;$<L;++$)(ce=E(this,I,_,U,M[$].identifier,M[$]))&&(kd(_),ce("start",_,M[$]))}}function j(_){var U=_.changedTouches,M=U.length,I,L;for(I=0;I<M;++I)(L=r[U[I].identifier])&&(ol(_),L("drag",_,U[I]))}function R(_){var U=_.changedTouches,M=U.length,I,L;for(p&&clearTimeout(p),p=setTimeout(function(){p=null},500),I=0;I<M;++I)(L=r[U[I].identifier])&&(kd(_),L("end",_,U[I]))}function E(_,U,M,I,L,$){var ce=u.copy(),K=tn($||M,U),te,ue,D;if((D=l.call(_,new af("beforestart",{sourceEvent:M,target:x,identifier:L,active:d,x:K[0],y:K[1],dx:0,dy:0,dispatch:ce}),I))!=null)return te=D.x-K[0]||0,ue=D.y-K[1]||0,function Z(z,H,G){var B=K,J;switch(z){case"start":r[L]=Z,J=d++;break;case"end":delete r[L],--d;case"drag":K=tn(G||H,U),J=d;break}ce.call(z,_,new af(z,{sourceEvent:H,subject:D,target:x,identifier:L,active:J,x:K[0]+te,y:K[1]+ue,dx:K[0]-B[0],dy:K[1]-B[1],dispatch:ce}),I)}}return x.filter=function(_){return arguments.length?(t=typeof _=="function"?_:yr(!!_),x):t},x.container=function(_){return arguments.length?(i=typeof _=="function"?_:yr(_),x):i},x.subject=function(_){return arguments.length?(l=typeof _=="function"?_:yr(_),x):l},x.touchable=function(_){return arguments.length?(o=typeof _=="function"?_:yr(!!_),x):o},x.on=function(){var _=u.on.apply(u,arguments);return _===u?x:_},x.clickDistance=function(_){return arguments.length?(v=(_=+_)*_,x):Math.sqrt(v)},x}function wf(t,i,l){t.prototype=i.prototype=l,l.constructor=t}function sv(t,i){var l=Object.create(t.prototype);for(var o in i)l[o]=i[o];return l}function Lo(){}var To=.7,Br=1/To,sl="\\s*([+-]?\\d+)\\s*",Ao="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",gn="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",zE=/^#([0-9a-f]{3,8})$/,RE=new RegExp(`^rgb\\(${sl},${sl},${sl}\\)$`),DE=new RegExp(`^rgb\\(${gn},${gn},${gn}\\)$`),OE=new RegExp(`^rgba\\(${sl},${sl},${sl},${Ao}\\)$`),HE=new RegExp(`^rgba\\(${gn},${gn},${gn},${Ao}\\)$`),IE=new RegExp(`^hsl\\(${Ao},${gn},${gn}\\)$`),LE=new RegExp(`^hsla\\(${Ao},${gn},${gn},${Ao}\\)$`),ry={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};wf(Lo,li,{copy(t){return Object.assign(new this.constructor,this,t)},displayable(){return this.rgb().displayable()},hex:cy,formatHex:cy,formatHex8:BE,formatHsl:kE,formatRgb:uy,toString:uy});function cy(){return this.rgb().formatHex()}function BE(){return this.rgb().formatHex8()}function kE(){return rv(this).formatHsl()}function uy(){return this.rgb().formatRgb()}function li(t){var i,l;return t=(t+"").trim().toLowerCase(),(i=zE.exec(t))?(l=i[1].length,i=parseInt(i[1],16),l===6?dy(i):l===3?new jt(i>>8&15|i>>4&240,i>>4&15|i&240,(i&15)<<4|i&15,1):l===8?vr(i>>24&255,i>>16&255,i>>8&255,(i&255)/255):l===4?vr(i>>12&15|i>>8&240,i>>8&15|i>>4&240,i>>4&15|i&240,((i&15)<<4|i&15)/255):null):(i=RE.exec(t))?new jt(i[1],i[2],i[3],1):(i=DE.exec(t))?new jt(i[1]*255/100,i[2]*255/100,i[3]*255/100,1):(i=OE.exec(t))?vr(i[1],i[2],i[3],i[4]):(i=HE.exec(t))?vr(i[1]*255/100,i[2]*255/100,i[3]*255/100,i[4]):(i=IE.exec(t))?my(i[1],i[2]/100,i[3]/100,1):(i=LE.exec(t))?my(i[1],i[2]/100,i[3]/100,i[4]):ry.hasOwnProperty(t)?dy(ry[t]):t==="transparent"?new jt(NaN,NaN,NaN,0):null}function dy(t){return new jt(t>>16&255,t>>8&255,t&255,1)}function vr(t,i,l,o){return o<=0&&(t=i=l=NaN),new jt(t,i,l,o)}function UE(t){return t instanceof Lo||(t=li(t)),t?(t=t.rgb(),new jt(t.r,t.g,t.b,t.opacity)):new jt}function lf(t,i,l,o){return arguments.length===1?UE(t):new jt(t,i,l,o??1)}function jt(t,i,l,o){this.r=+t,this.g=+i,this.b=+l,this.opacity=+o}wf(jt,lf,sv(Lo,{brighter(t){return t=t==null?Br:Math.pow(Br,t),new jt(this.r*t,this.g*t,this.b*t,this.opacity)},darker(t){return t=t==null?To:Math.pow(To,t),new jt(this.r*t,this.g*t,this.b*t,this.opacity)},rgb(){return this},clamp(){return new jt(ai(this.r),ai(this.g),ai(this.b),kr(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:fy,formatHex:fy,formatHex8:GE,formatRgb:hy,toString:hy}));function fy(){return`#${ni(this.r)}${ni(this.g)}${ni(this.b)}`}function GE(){return`#${ni(this.r)}${ni(this.g)}${ni(this.b)}${ni((isNaN(this.opacity)?1:this.opacity)*255)}`}function hy(){const t=kr(this.opacity);return`${t===1?"rgb(":"rgba("}${ai(this.r)}, ${ai(this.g)}, ${ai(this.b)}${t===1?")":`, ${t})`}`}function kr(t){return isNaN(t)?1:Math.max(0,Math.min(1,t))}function ai(t){return Math.max(0,Math.min(255,Math.round(t)||0))}function ni(t){return t=ai(t),(t<16?"0":"")+t.toString(16)}function my(t,i,l,o){return o<=0?t=i=l=NaN:l<=0||l>=1?t=i=NaN:i<=0&&(t=NaN),new nn(t,i,l,o)}function rv(t){if(t instanceof nn)return new nn(t.h,t.s,t.l,t.opacity);if(t instanceof Lo||(t=li(t)),!t)return new nn;if(t instanceof nn)return t;t=t.rgb();var i=t.r/255,l=t.g/255,o=t.b/255,r=Math.min(i,l,o),u=Math.max(i,l,o),d=NaN,m=u-r,y=(u+r)/2;return m?(i===u?d=(l-o)/m+(l<o)*6:l===u?d=(o-i)/m+2:d=(i-l)/m+4,m/=y<.5?u+r:2-u-r,d*=60):m=y>0&&y<1?0:d,new nn(d,m,y,t.opacity)}function qE(t,i,l,o){return arguments.length===1?rv(t):new nn(t,i,l,o??1)}function nn(t,i,l,o){this.h=+t,this.s=+i,this.l=+l,this.opacity=+o}wf(nn,qE,sv(Lo,{brighter(t){return t=t==null?Br:Math.pow(Br,t),new nn(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=t==null?To:Math.pow(To,t),new nn(this.h,this.s,this.l*t,this.opacity)},rgb(){var t=this.h%360+(this.h<0)*360,i=isNaN(t)||isNaN(this.s)?0:this.s,l=this.l,o=l+(l<.5?l:1-l)*i,r=2*l-o;return new jt(Ud(t>=240?t-240:t+120,r,o),Ud(t,r,o),Ud(t<120?t+240:t-120,r,o),this.opacity)},clamp(){return new nn(gy(this.h),xr(this.s),xr(this.l),kr(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const t=kr(this.opacity);return`${t===1?"hsl(":"hsla("}${gy(this.h)}, ${xr(this.s)*100}%, ${xr(this.l)*100}%${t===1?")":`, ${t})`}`}}));function gy(t){return t=(t||0)%360,t<0?t+360:t}function xr(t){return Math.max(0,Math.min(1,t||0))}function Ud(t,i,l){return(t<60?i+(l-i)*t/60:t<180?l:t<240?i+(l-i)*(240-t)/60:i)*255}const Nf=t=>()=>t;function YE(t,i){return function(l){return t+l*i}}function VE(t,i,l){return t=Math.pow(t,l),i=Math.pow(i,l)-t,l=1/l,function(o){return Math.pow(t+o*i,l)}}function XE(t){return(t=+t)==1?cv:function(i,l){return l-i?VE(i,l,t):Nf(isNaN(i)?l:i)}}function cv(t,i){var l=i-t;return l?YE(t,l):Nf(isNaN(t)?i:t)}const Ur=(function t(i){var l=XE(i);function o(r,u){var d=l((r=lf(r)).r,(u=lf(u)).r),m=l(r.g,u.g),y=l(r.b,u.b),g=cv(r.opacity,u.opacity);return function(p){return r.r=d(p),r.g=m(p),r.b=y(p),r.opacity=g(p),r+""}}return o.gamma=t,o})(1);function $E(t,i){i||(i=[]);var l=t?Math.min(i.length,t.length):0,o=i.slice(),r;return function(u){for(r=0;r<l;++r)o[r]=t[r]*(1-u)+i[r]*u;return o}}function ZE(t){return ArrayBuffer.isView(t)&&!(t instanceof DataView)}function KE(t,i){var l=i?i.length:0,o=t?Math.min(l,t.length):0,r=new Array(o),u=new Array(l),d;for(d=0;d<o;++d)r[d]=_o(t[d],i[d]);for(;d<l;++d)u[d]=i[d];return function(m){for(d=0;d<o;++d)u[d]=r[d](m);return u}}function FE(t,i){var l=new Date;return t=+t,i=+i,function(o){return l.setTime(t*(1-o)+i*o),l}}function hn(t,i){return t=+t,i=+i,function(l){return t*(1-l)+i*l}}function QE(t,i){var l={},o={},r;(t===null||typeof t!="object")&&(t={}),(i===null||typeof i!="object")&&(i={});for(r in i)r in t?l[r]=_o(t[r],i[r]):o[r]=i[r];return function(u){for(r in l)o[r]=l[r](u);return o}}var of=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,Gd=new RegExp(of.source,"g");function PE(t){return function(){return t}}function JE(t){return function(i){return t(i)+""}}function uv(t,i){var l=of.lastIndex=Gd.lastIndex=0,o,r,u,d=-1,m=[],y=[];for(t=t+"",i=i+"";(o=of.exec(t))&&(r=Gd.exec(i));)(u=r.index)>l&&(u=i.slice(l,u),m[d]?m[d]+=u:m[++d]=u),(o=o[0])===(r=r[0])?m[d]?m[d]+=r:m[++d]=r:(m[++d]=null,y.push({i:d,x:hn(o,r)})),l=Gd.lastIndex;return l<i.length&&(u=i.slice(l),m[d]?m[d]+=u:m[++d]=u),m.length<2?y[0]?JE(y[0].x):PE(i):(i=y.length,function(g){for(var p=0,v;p<i;++p)m[(v=y[p]).i]=v.x(g);return m.join("")})}function _o(t,i){var l=typeof i,o;return i==null||l==="boolean"?Nf(i):(l==="number"?hn:l==="string"?(o=li(i))?(i=o,Ur):uv:i instanceof li?Ur:i instanceof Date?FE:ZE(i)?$E:Array.isArray(i)?KE:typeof i.valueOf!="function"&&typeof i.toString!="function"||isNaN(i)?QE:hn)(t,i)}var py=180/Math.PI,sf={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function dv(t,i,l,o,r,u){var d,m,y;return(d=Math.sqrt(t*t+i*i))&&(t/=d,i/=d),(y=t*l+i*o)&&(l-=t*y,o-=i*y),(m=Math.sqrt(l*l+o*o))&&(l/=m,o/=m,y/=m),t*o<i*l&&(t=-t,i=-i,y=-y,d=-d),{translateX:r,translateY:u,rotate:Math.atan2(i,t)*py,skewX:Math.atan(y)*py,scaleX:d,scaleY:m}}var br;function WE(t){const i=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(t+"");return i.isIdentity?sf:dv(i.a,i.b,i.c,i.d,i.e,i.f)}function e2(t){return t==null||(br||(br=document.createElementNS("http://www.w3.org/2000/svg","g")),br.setAttribute("transform",t),!(t=br.transform.baseVal.consolidate()))?sf:(t=t.matrix,dv(t.a,t.b,t.c,t.d,t.e,t.f))}function fv(t,i,l,o){function r(g){return g.length?g.pop()+" ":""}function u(g,p,v,x,S,w){if(g!==v||p!==x){var A=S.push("translate(",null,i,null,l);w.push({i:A-4,x:hn(g,v)},{i:A-2,x:hn(p,x)})}else(v||x)&&S.push("translate("+v+i+x+l)}function d(g,p,v,x){g!==p?(g-p>180?p+=360:p-g>180&&(g+=360),x.push({i:v.push(r(v)+"rotate(",null,o)-2,x:hn(g,p)})):p&&v.push(r(v)+"rotate("+p+o)}function m(g,p,v,x){g!==p?x.push({i:v.push(r(v)+"skewX(",null,o)-2,x:hn(g,p)}):p&&v.push(r(v)+"skewX("+p+o)}function y(g,p,v,x,S,w){if(g!==v||p!==x){var A=S.push(r(S)+"scale(",null,",",null,")");w.push({i:A-4,x:hn(g,v)},{i:A-2,x:hn(p,x)})}else(v!==1||x!==1)&&S.push(r(S)+"scale("+v+","+x+")")}return function(g,p){var v=[],x=[];return g=t(g),p=t(p),u(g.translateX,g.translateY,p.translateX,p.translateY,v,x),d(g.rotate,p.rotate,v,x),m(g.skewX,p.skewX,v,x),y(g.scaleX,g.scaleY,p.scaleX,p.scaleY,v,x),g=p=null,function(S){for(var w=-1,A=x.length,C;++w<A;)v[(C=x[w]).i]=C.x(S);return v.join("")}}}var t2=fv(WE,"px, ","px)","deg)"),n2=fv(e2,", ",")",")"),a2=1e-12;function yy(t){return((t=Math.exp(t))+1/t)/2}function i2(t){return((t=Math.exp(t))-1/t)/2}function l2(t){return((t=Math.exp(2*t))-1)/(t+1)}const zr=(function t(i,l,o){function r(u,d){var m=u[0],y=u[1],g=u[2],p=d[0],v=d[1],x=d[2],S=p-m,w=v-y,A=S*S+w*w,C,j;if(A<a2)j=Math.log(x/g)/i,C=function(I){return[m+I*S,y+I*w,g*Math.exp(i*I*j)]};else{var R=Math.sqrt(A),E=(x*x-g*g+o*A)/(2*g*l*R),_=(x*x-g*g-o*A)/(2*x*l*R),U=Math.log(Math.sqrt(E*E+1)-E),M=Math.log(Math.sqrt(_*_+1)-_);j=(M-U)/i,C=function(I){var L=I*j,$=yy(U),ce=g/(l*R)*($*l2(i*L+U)-i2(U));return[m+ce*S,y+ce*w,g*$/yy(i*L+U)]}}return C.duration=j*1e3*i/Math.SQRT2,C}return r.rho=function(u){var d=Math.max(.001,+u),m=d*d,y=m*m;return t(d,m,y)},r})(Math.SQRT2,2,4);var dl=0,xo=0,ho=0,hv=1e3,Gr,bo,qr=0,oi=0,Qr=0,Mo=typeof performance=="object"&&performance.now?performance:Date,mv=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(t){setTimeout(t,17)};function _f(){return oi||(mv(o2),oi=Mo.now()+Qr)}function o2(){oi=0}function Yr(){this._call=this._time=this._next=null}Yr.prototype=gv.prototype={constructor:Yr,restart:function(t,i,l){if(typeof t!="function")throw new TypeError("callback is not a function");l=(l==null?_f():+l)+(i==null?0:+i),!this._next&&bo!==this&&(bo?bo._next=this:Gr=this,bo=this),this._call=t,this._time=l,rf()},stop:function(){this._call&&(this._call=null,this._time=1/0,rf())}};function gv(t,i,l){var o=new Yr;return o.restart(t,i,l),o}function s2(){_f(),++dl;for(var t=Gr,i;t;)(i=oi-t._time)>=0&&t._call.call(void 0,i),t=t._next;--dl}function vy(){oi=(qr=Mo.now())+Qr,dl=xo=0;try{s2()}finally{dl=0,c2(),oi=0}}function r2(){var t=Mo.now(),i=t-qr;i>hv&&(Qr-=i,qr=t)}function c2(){for(var t,i=Gr,l,o=1/0;i;)i._call?(o>i._time&&(o=i._time),t=i,i=i._next):(l=i._next,i._next=null,i=t?t._next=l:Gr=l);bo=t,rf(o)}function rf(t){if(!dl){xo&&(xo=clearTimeout(xo));var i=t-oi;i>24?(t<1/0&&(xo=setTimeout(vy,t-Mo.now()-Qr)),ho&&(ho=clearInterval(ho))):(ho||(qr=Mo.now(),ho=setInterval(r2,hv)),dl=1,mv(vy))}}function xy(t,i,l){var o=new Yr;return i=i==null?0:+i,o.restart(r=>{o.stop(),t(r+i)},i,l),o}var u2=Kr("start","end","cancel","interrupt"),d2=[],pv=0,by=1,cf=2,Rr=3,Sy=4,uf=5,Dr=6;function Pr(t,i,l,o,r,u){var d=t.__transition;if(!d)t.__transition={};else if(l in d)return;f2(t,l,{name:i,index:o,group:r,on:u2,tween:d2,time:u.time,delay:u.delay,duration:u.duration,ease:u.ease,timer:null,state:pv})}function Ef(t,i){var l=on(t,i);if(l.state>pv)throw new Error("too late; already scheduled");return l}function yn(t,i){var l=on(t,i);if(l.state>Rr)throw new Error("too late; already running");return l}function on(t,i){var l=t.__transition;if(!l||!(l=l[i]))throw new Error("transition not found");return l}function f2(t,i,l){var o=t.__transition,r;o[i]=l,l.timer=gv(u,0,l.time);function u(g){l.state=by,l.timer.restart(d,l.delay,l.time),l.delay<=g&&d(g-l.delay)}function d(g){var p,v,x,S;if(l.state!==by)return y();for(p in o)if(S=o[p],S.name===l.name){if(S.state===Rr)return xy(d);S.state===Sy?(S.state=Dr,S.timer.stop(),S.on.call("interrupt",t,t.__data__,S.index,S.group),delete o[p]):+p<i&&(S.state=Dr,S.timer.stop(),S.on.call("cancel",t,t.__data__,S.index,S.group),delete o[p])}if(xy(function(){l.state===Rr&&(l.state=Sy,l.timer.restart(m,l.delay,l.time),m(g))}),l.state=cf,l.on.call("start",t,t.__data__,l.index,l.group),l.state===cf){for(l.state=Rr,r=new Array(x=l.tween.length),p=0,v=-1;p<x;++p)(S=l.tween[p].value.call(t,t.__data__,l.index,l.group))&&(r[++v]=S);r.length=v+1}}function m(g){for(var p=g<l.duration?l.ease.call(null,g/l.duration):(l.timer.restart(y),l.state=uf,1),v=-1,x=r.length;++v<x;)r[v].call(t,p);l.state===uf&&(l.on.call("end",t,t.__data__,l.index,l.group),y())}function y(){l.state=Dr,l.timer.stop(),delete o[i];for(var g in o)return;delete t.__transition}}function Or(t,i){var l=t.__transition,o,r,u=!0,d;if(l){i=i==null?null:i+"";for(d in l){if((o=l[d]).name!==i){u=!1;continue}r=o.state>cf&&o.state<uf,o.state=Dr,o.timer.stop(),o.on.call(r?"interrupt":"cancel",t,t.__data__,o.index,o.group),delete l[d]}u&&delete t.__transition}}function h2(t){return this.each(function(){Or(this,t)})}function m2(t,i){var l,o;return function(){var r=yn(this,t),u=r.tween;if(u!==l){o=l=u;for(var d=0,m=o.length;d<m;++d)if(o[d].name===i){o=o.slice(),o.splice(d,1);break}}r.tween=o}}function g2(t,i,l){var o,r;if(typeof l!="function")throw new Error;return function(){var u=yn(this,t),d=u.tween;if(d!==o){r=(o=d).slice();for(var m={name:i,value:l},y=0,g=r.length;y<g;++y)if(r[y].name===i){r[y]=m;break}y===g&&r.push(m)}u.tween=r}}function p2(t,i){var l=this._id;if(t+="",arguments.length<2){for(var o=on(this.node(),l).tween,r=0,u=o.length,d;r<u;++r)if((d=o[r]).name===t)return d.value;return null}return this.each((i==null?m2:g2)(l,t,i))}function Cf(t,i,l){var o=t._id;return t.each(function(){var r=yn(this,o);(r.value||(r.value={}))[i]=l.apply(this,arguments)}),function(r){return on(r,o).value[i]}}function yv(t,i){var l;return(typeof i=="number"?hn:i instanceof li?Ur:(l=li(i))?(i=l,Ur):uv)(t,i)}function y2(t){return function(){this.removeAttribute(t)}}function v2(t){return function(){this.removeAttributeNS(t.space,t.local)}}function x2(t,i,l){var o,r=l+"",u;return function(){var d=this.getAttribute(t);return d===r?null:d===o?u:u=i(o=d,l)}}function b2(t,i,l){var o,r=l+"",u;return function(){var d=this.getAttributeNS(t.space,t.local);return d===r?null:d===o?u:u=i(o=d,l)}}function S2(t,i,l){var o,r,u;return function(){var d,m=l(this),y;return m==null?void this.removeAttribute(t):(d=this.getAttribute(t),y=m+"",d===y?null:d===o&&y===r?u:(r=y,u=i(o=d,m)))}}function w2(t,i,l){var o,r,u;return function(){var d,m=l(this),y;return m==null?void this.removeAttributeNS(t.space,t.local):(d=this.getAttributeNS(t.space,t.local),y=m+"",d===y?null:d===o&&y===r?u:(r=y,u=i(o=d,m)))}}function N2(t,i){var l=Fr(t),o=l==="transform"?n2:yv;return this.attrTween(t,typeof i=="function"?(l.local?w2:S2)(l,o,Cf(this,"attr."+t,i)):i==null?(l.local?v2:y2)(l):(l.local?b2:x2)(l,o,i))}function _2(t,i){return function(l){this.setAttribute(t,i.call(this,l))}}function E2(t,i){return function(l){this.setAttributeNS(t.space,t.local,i.call(this,l))}}function C2(t,i){var l,o;function r(){var u=i.apply(this,arguments);return u!==o&&(l=(o=u)&&E2(t,u)),l}return r._value=i,r}function T2(t,i){var l,o;function r(){var u=i.apply(this,arguments);return u!==o&&(l=(o=u)&&_2(t,u)),l}return r._value=i,r}function A2(t,i){var l="attr."+t;if(arguments.length<2)return(l=this.tween(l))&&l._value;if(i==null)return this.tween(l,null);if(typeof i!="function")throw new Error;var o=Fr(t);return this.tween(l,(o.local?C2:T2)(o,i))}function M2(t,i){return function(){Ef(this,t).delay=+i.apply(this,arguments)}}function j2(t,i){return i=+i,function(){Ef(this,t).delay=i}}function z2(t){var i=this._id;return arguments.length?this.each((typeof t=="function"?M2:j2)(i,t)):on(this.node(),i).delay}function R2(t,i){return function(){yn(this,t).duration=+i.apply(this,arguments)}}function D2(t,i){return i=+i,function(){yn(this,t).duration=i}}function O2(t){var i=this._id;return arguments.length?this.each((typeof t=="function"?R2:D2)(i,t)):on(this.node(),i).duration}function H2(t,i){if(typeof i!="function")throw new Error;return function(){yn(this,t).ease=i}}function I2(t){var i=this._id;return arguments.length?this.each(H2(i,t)):on(this.node(),i).ease}function L2(t,i){return function(){var l=i.apply(this,arguments);if(typeof l!="function")throw new Error;yn(this,t).ease=l}}function B2(t){if(typeof t!="function")throw new Error;return this.each(L2(this._id,t))}function k2(t){typeof t!="function"&&(t=K0(t));for(var i=this._groups,l=i.length,o=new Array(l),r=0;r<l;++r)for(var u=i[r],d=u.length,m=o[r]=[],y,g=0;g<d;++g)(y=u[g])&&t.call(y,y.__data__,g,u)&&m.push(y);return new Vn(o,this._parents,this._name,this._id)}function U2(t){if(t._id!==this._id)throw new Error;for(var i=this._groups,l=t._groups,o=i.length,r=l.length,u=Math.min(o,r),d=new Array(o),m=0;m<u;++m)for(var y=i[m],g=l[m],p=y.length,v=d[m]=new Array(p),x,S=0;S<p;++S)(x=y[S]||g[S])&&(v[S]=x);for(;m<o;++m)d[m]=i[m];return new Vn(d,this._parents,this._name,this._id)}function G2(t){return(t+"").trim().split(/^|\s+/).every(function(i){var l=i.indexOf(".");return l>=0&&(i=i.slice(0,l)),!i||i==="start"})}function q2(t,i,l){var o,r,u=G2(i)?Ef:yn;return function(){var d=u(this,t),m=d.on;m!==o&&(r=(o=m).copy()).on(i,l),d.on=r}}function Y2(t,i){var l=this._id;return arguments.length<2?on(this.node(),l).on.on(t):this.each(q2(l,t,i))}function V2(t){return function(){var i=this.parentNode;for(var l in this.__transition)if(+l!==t)return;i&&i.removeChild(this)}}function X2(){return this.on("end.remove",V2(this._id))}function $2(t){var i=this._name,l=this._id;typeof t!="function"&&(t=bf(t));for(var o=this._groups,r=o.length,u=new Array(r),d=0;d<r;++d)for(var m=o[d],y=m.length,g=u[d]=new Array(y),p,v,x=0;x<y;++x)(p=m[x])&&(v=t.call(p,p.__data__,x,m))&&("__data__"in p&&(v.__data__=p.__data__),g[x]=v,Pr(g[x],i,l,x,g,on(p,l)));return new Vn(u,this._parents,i,l)}function Z2(t){var i=this._name,l=this._id;typeof t!="function"&&(t=Z0(t));for(var o=this._groups,r=o.length,u=[],d=[],m=0;m<r;++m)for(var y=o[m],g=y.length,p,v=0;v<g;++v)if(p=y[v]){for(var x=t.call(p,p.__data__,v,y),S,w=on(p,l),A=0,C=x.length;A<C;++A)(S=x[A])&&Pr(S,i,l,A,x,w);u.push(x),d.push(p)}return new Vn(u,d,i,l)}var K2=Io.prototype.constructor;function F2(){return new K2(this._groups,this._parents)}function Q2(t,i){var l,o,r;return function(){var u=ul(this,t),d=(this.style.removeProperty(t),ul(this,t));return u===d?null:u===l&&d===o?r:r=i(l=u,o=d)}}function vv(t){return function(){this.style.removeProperty(t)}}function P2(t,i,l){var o,r=l+"",u;return function(){var d=ul(this,t);return d===r?null:d===o?u:u=i(o=d,l)}}function J2(t,i,l){var o,r,u;return function(){var d=ul(this,t),m=l(this),y=m+"";return m==null&&(y=m=(this.style.removeProperty(t),ul(this,t))),d===y?null:d===o&&y===r?u:(r=y,u=i(o=d,m))}}function W2(t,i){var l,o,r,u="style."+i,d="end."+u,m;return function(){var y=yn(this,t),g=y.on,p=y.value[u]==null?m||(m=vv(i)):void 0;(g!==l||r!==p)&&(o=(l=g).copy()).on(d,r=p),y.on=o}}function eC(t,i,l){var o=(t+="")=="transform"?t2:yv;return i==null?this.styleTween(t,Q2(t,o)).on("end.style."+t,vv(t)):typeof i=="function"?this.styleTween(t,J2(t,o,Cf(this,"style."+t,i))).each(W2(this._id,t)):this.styleTween(t,P2(t,o,i),l).on("end.style."+t,null)}function tC(t,i,l){return function(o){this.style.setProperty(t,i.call(this,o),l)}}function nC(t,i,l){var o,r;function u(){var d=i.apply(this,arguments);return d!==r&&(o=(r=d)&&tC(t,d,l)),o}return u._value=i,u}function aC(t,i,l){var o="style."+(t+="");if(arguments.length<2)return(o=this.tween(o))&&o._value;if(i==null)return this.tween(o,null);if(typeof i!="function")throw new Error;return this.tween(o,nC(t,i,l??""))}function iC(t){return function(){this.textContent=t}}function lC(t){return function(){var i=t(this);this.textContent=i??""}}function oC(t){return this.tween("text",typeof t=="function"?lC(Cf(this,"text",t)):iC(t==null?"":t+""))}function sC(t){return function(i){this.textContent=t.call(this,i)}}function rC(t){var i,l;function o(){var r=t.apply(this,arguments);return r!==l&&(i=(l=r)&&sC(r)),i}return o._value=t,o}function cC(t){var i="text";if(arguments.length<1)return(i=this.tween(i))&&i._value;if(t==null)return this.tween(i,null);if(typeof t!="function")throw new Error;return this.tween(i,rC(t))}function uC(){for(var t=this._name,i=this._id,l=xv(),o=this._groups,r=o.length,u=0;u<r;++u)for(var d=o[u],m=d.length,y,g=0;g<m;++g)if(y=d[g]){var p=on(y,i);Pr(y,t,l,g,d,{time:p.time+p.delay+p.duration,delay:0,duration:p.duration,ease:p.ease})}return new Vn(o,this._parents,t,l)}function dC(){var t,i,l=this,o=l._id,r=l.size();return new Promise(function(u,d){var m={value:d},y={value:function(){--r===0&&u()}};l.each(function(){var g=yn(this,o),p=g.on;p!==t&&(i=(t=p).copy(),i._.cancel.push(m),i._.interrupt.push(m),i._.end.push(y)),g.on=i}),r===0&&u()})}var fC=0;function Vn(t,i,l,o){this._groups=t,this._parents=i,this._name=l,this._id=o}function xv(){return++fC}var Gn=Io.prototype;Vn.prototype={constructor:Vn,select:$2,selectAll:Z2,selectChild:Gn.selectChild,selectChildren:Gn.selectChildren,filter:k2,merge:U2,selection:F2,transition:uC,call:Gn.call,nodes:Gn.nodes,node:Gn.node,size:Gn.size,empty:Gn.empty,each:Gn.each,on:Y2,attr:N2,attrTween:A2,style:eC,styleTween:aC,text:oC,textTween:cC,remove:X2,tween:p2,delay:z2,duration:O2,ease:I2,easeVarying:B2,end:dC,[Symbol.iterator]:Gn[Symbol.iterator]};function hC(t){return((t*=2)<=1?t*t*t:(t-=2)*t*t+2)/2}var mC={time:null,delay:0,duration:250,ease:hC};function gC(t,i){for(var l;!(l=t.__transition)||!(l=l[i]);)if(!(t=t.parentNode))throw new Error(`transition ${i} not found`);return l}function pC(t){var i,l;t instanceof Vn?(i=t._id,t=t._name):(i=xv(),(l=mC).time=_f(),t=t==null?null:t+"");for(var o=this._groups,r=o.length,u=0;u<r;++u)for(var d=o[u],m=d.length,y,g=0;g<m;++g)(y=d[g])&&Pr(y,t,i,g,d,l||gC(y,i));return new Vn(o,this._parents,t,i)}Io.prototype.interrupt=h2;Io.prototype.transition=pC;const Sr=t=>()=>t;function yC(t,{sourceEvent:i,target:l,transform:o,dispatch:r}){Object.defineProperties(this,{type:{value:t,enumerable:!0,configurable:!0},sourceEvent:{value:i,enumerable:!0,configurable:!0},target:{value:l,enumerable:!0,configurable:!0},transform:{value:o,enumerable:!0,configurable:!0},_:{value:r}})}function Yn(t,i,l){this.k=t,this.x=i,this.y=l}Yn.prototype={constructor:Yn,scale:function(t){return t===1?this:new Yn(this.k*t,this.x,this.y)},translate:function(t,i){return t===0&i===0?this:new Yn(this.k,this.x+this.k*t,this.y+this.k*i)},apply:function(t){return[t[0]*this.k+this.x,t[1]*this.k+this.y]},applyX:function(t){return t*this.k+this.x},applyY:function(t){return t*this.k+this.y},invert:function(t){return[(t[0]-this.x)/this.k,(t[1]-this.y)/this.k]},invertX:function(t){return(t-this.x)/this.k},invertY:function(t){return(t-this.y)/this.k},rescaleX:function(t){return t.copy().domain(t.range().map(this.invertX,this).map(t.invert,t))},rescaleY:function(t){return t.copy().domain(t.range().map(this.invertY,this).map(t.invert,t))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var Jr=new Yn(1,0,0);bv.prototype=Yn.prototype;function bv(t){for(;!t.__zoom;)if(!(t=t.parentNode))return Jr;return t.__zoom}function qd(t){t.stopImmediatePropagation()}function mo(t){t.preventDefault(),t.stopImmediatePropagation()}function vC(t){return(!t.ctrlKey||t.type==="wheel")&&!t.button}function xC(){var t=this;return t instanceof SVGElement?(t=t.ownerSVGElement||t,t.hasAttribute("viewBox")?(t=t.viewBox.baseVal,[[t.x,t.y],[t.x+t.width,t.y+t.height]]):[[0,0],[t.width.baseVal.value,t.height.baseVal.value]]):[[0,0],[t.clientWidth,t.clientHeight]]}function wy(){return this.__zoom||Jr}function bC(t){return-t.deltaY*(t.deltaMode===1?.05:t.deltaMode?1:.002)*(t.ctrlKey?10:1)}function SC(){return navigator.maxTouchPoints||"ontouchstart"in this}function wC(t,i,l){var o=t.invertX(i[0][0])-l[0][0],r=t.invertX(i[1][0])-l[1][0],u=t.invertY(i[0][1])-l[0][1],d=t.invertY(i[1][1])-l[1][1];return t.translate(r>o?(o+r)/2:Math.min(0,o)||Math.max(0,r),d>u?(u+d)/2:Math.min(0,u)||Math.max(0,d))}function Sv(){var t=vC,i=xC,l=wC,o=bC,r=SC,u=[0,1/0],d=[[-1/0,-1/0],[1/0,1/0]],m=250,y=zr,g=Kr("start","zoom","end"),p,v,x,S=500,w=150,A=0,C=10;function j(D){D.property("__zoom",wy).on("wheel.zoom",L,{passive:!1}).on("mousedown.zoom",$).on("dblclick.zoom",ce).filter(r).on("touchstart.zoom",K).on("touchmove.zoom",te).on("touchend.zoom touchcancel.zoom",ue).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}j.transform=function(D,Z,z,H){var G=D.selection?D.selection():D;G.property("__zoom",wy),D!==G?U(D,Z,z,H):G.interrupt().each(function(){M(this,arguments).event(H).start().zoom(null,typeof Z=="function"?Z.apply(this,arguments):Z).end()})},j.scaleBy=function(D,Z,z,H){j.scaleTo(D,function(){var G=this.__zoom.k,B=typeof Z=="function"?Z.apply(this,arguments):Z;return G*B},z,H)},j.scaleTo=function(D,Z,z,H){j.transform(D,function(){var G=i.apply(this,arguments),B=this.__zoom,J=z==null?_(G):typeof z=="function"?z.apply(this,arguments):z,T=B.invert(J),k=typeof Z=="function"?Z.apply(this,arguments):Z;return l(E(R(B,k),J,T),G,d)},z,H)},j.translateBy=function(D,Z,z,H){j.transform(D,function(){return l(this.__zoom.translate(typeof Z=="function"?Z.apply(this,arguments):Z,typeof z=="function"?z.apply(this,arguments):z),i.apply(this,arguments),d)},null,H)},j.translateTo=function(D,Z,z,H,G){j.transform(D,function(){var B=i.apply(this,arguments),J=this.__zoom,T=H==null?_(B):typeof H=="function"?H.apply(this,arguments):H;return l(Jr.translate(T[0],T[1]).scale(J.k).translate(typeof Z=="function"?-Z.apply(this,arguments):-Z,typeof z=="function"?-z.apply(this,arguments):-z),B,d)},H,G)};function R(D,Z){return Z=Math.max(u[0],Math.min(u[1],Z)),Z===D.k?D:new Yn(Z,D.x,D.y)}function E(D,Z,z){var H=Z[0]-z[0]*D.k,G=Z[1]-z[1]*D.k;return H===D.x&&G===D.y?D:new Yn(D.k,H,G)}function _(D){return[(+D[0][0]+ +D[1][0])/2,(+D[0][1]+ +D[1][1])/2]}function U(D,Z,z,H){D.on("start.zoom",function(){M(this,arguments).event(H).start()}).on("interrupt.zoom end.zoom",function(){M(this,arguments).event(H).end()}).tween("zoom",function(){var G=this,B=arguments,J=M(G,B).event(H),T=i.apply(G,B),k=z==null?_(T):typeof z=="function"?z.apply(G,B):z,ne=Math.max(T[1][0]-T[0][0],T[1][1]-T[0][1]),ae=G.__zoom,V=typeof Z=="function"?Z.apply(G,B):Z,se=y(ae.invert(k).concat(ne/ae.k),V.invert(k).concat(ne/V.k));return function(de){if(de===1)de=V;else{var le=se(de),fe=ne/le[2];de=new Yn(fe,k[0]-le[0]*fe,k[1]-le[1]*fe)}J.zoom(null,de)}})}function M(D,Z,z){return!z&&D.__zooming||new I(D,Z)}function I(D,Z){this.that=D,this.args=Z,this.active=0,this.sourceEvent=null,this.extent=i.apply(D,Z),this.taps=0}I.prototype={event:function(D){return D&&(this.sourceEvent=D),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(D,Z){return this.mouse&&D!=="mouse"&&(this.mouse[1]=Z.invert(this.mouse[0])),this.touch0&&D!=="touch"&&(this.touch0[1]=Z.invert(this.touch0[0])),this.touch1&&D!=="touch"&&(this.touch1[1]=Z.invert(this.touch1[0])),this.that.__zoom=Z,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(D){var Z=kt(this.that).datum();g.call(D,this.that,new yC(D,{sourceEvent:this.sourceEvent,target:j,transform:this.that.__zoom,dispatch:g}),Z)}};function L(D,...Z){if(!t.apply(this,arguments))return;var z=M(this,Z).event(D),H=this.__zoom,G=Math.max(u[0],Math.min(u[1],H.k*Math.pow(2,o.apply(this,arguments)))),B=tn(D);if(z.wheel)(z.mouse[0][0]!==B[0]||z.mouse[0][1]!==B[1])&&(z.mouse[1]=H.invert(z.mouse[0]=B)),clearTimeout(z.wheel);else{if(H.k===G)return;z.mouse=[B,H.invert(B)],Or(this),z.start()}mo(D),z.wheel=setTimeout(J,w),z.zoom("mouse",l(E(R(H,G),z.mouse[0],z.mouse[1]),z.extent,d));function J(){z.wheel=null,z.end()}}function $(D,...Z){if(x||!t.apply(this,arguments))return;var z=D.currentTarget,H=M(this,Z,!0).event(D),G=kt(D.view).on("mousemove.zoom",k,!0).on("mouseup.zoom",ne,!0),B=tn(D,z),J=D.clientX,T=D.clientY;iv(D.view),qd(D),H.mouse=[B,this.__zoom.invert(B)],Or(this),H.start();function k(ae){if(mo(ae),!H.moved){var V=ae.clientX-J,se=ae.clientY-T;H.moved=V*V+se*se>A}H.event(ae).zoom("mouse",l(E(H.that.__zoom,H.mouse[0]=tn(ae,z),H.mouse[1]),H.extent,d))}function ne(ae){G.on("mousemove.zoom mouseup.zoom",null),lv(ae.view,H.moved),mo(ae),H.event(ae).end()}}function ce(D,...Z){if(t.apply(this,arguments)){var z=this.__zoom,H=tn(D.changedTouches?D.changedTouches[0]:D,this),G=z.invert(H),B=z.k*(D.shiftKey?.5:2),J=l(E(R(z,B),H,G),i.apply(this,Z),d);mo(D),m>0?kt(this).transition().duration(m).call(U,J,H,D):kt(this).call(j.transform,J,H,D)}}function K(D,...Z){if(t.apply(this,arguments)){var z=D.touches,H=z.length,G=M(this,Z,D.changedTouches.length===H).event(D),B,J,T,k;for(qd(D),J=0;J<H;++J)T=z[J],k=tn(T,this),k=[k,this.__zoom.invert(k),T.identifier],G.touch0?!G.touch1&&G.touch0[2]!==k[2]&&(G.touch1=k,G.taps=0):(G.touch0=k,B=!0,G.taps=1+!!p);p&&(p=clearTimeout(p)),B&&(G.taps<2&&(v=k[0],p=setTimeout(function(){p=null},S)),Or(this),G.start())}}function te(D,...Z){if(this.__zooming){var z=M(this,Z).event(D),H=D.changedTouches,G=H.length,B,J,T,k;for(mo(D),B=0;B<G;++B)J=H[B],T=tn(J,this),z.touch0&&z.touch0[2]===J.identifier?z.touch0[0]=T:z.touch1&&z.touch1[2]===J.identifier&&(z.touch1[0]=T);if(J=z.that.__zoom,z.touch1){var ne=z.touch0[0],ae=z.touch0[1],V=z.touch1[0],se=z.touch1[1],de=(de=V[0]-ne[0])*de+(de=V[1]-ne[1])*de,le=(le=se[0]-ae[0])*le+(le=se[1]-ae[1])*le;J=R(J,Math.sqrt(de/le)),T=[(ne[0]+V[0])/2,(ne[1]+V[1])/2],k=[(ae[0]+se[0])/2,(ae[1]+se[1])/2]}else if(z.touch0)T=z.touch0[0],k=z.touch0[1];else return;z.zoom("touch",l(E(J,T,k),z.extent,d))}}function ue(D,...Z){if(this.__zooming){var z=M(this,Z).event(D),H=D.changedTouches,G=H.length,B,J;for(qd(D),x&&clearTimeout(x),x=setTimeout(function(){x=null},S),B=0;B<G;++B)J=H[B],z.touch0&&z.touch0[2]===J.identifier?delete z.touch0:z.touch1&&z.touch1[2]===J.identifier&&delete z.touch1;if(z.touch1&&!z.touch0&&(z.touch0=z.touch1,delete z.touch1),z.touch0)z.touch0[1]=this.__zoom.invert(z.touch0[0]);else if(z.end(),z.taps===2&&(J=tn(J,this),Math.hypot(v[0]-J[0],v[1]-J[1])<C)){var T=kt(this).on("dblclick.zoom");T&&T.apply(this,arguments)}}}return j.wheelDelta=function(D){return arguments.length?(o=typeof D=="function"?D:Sr(+D),j):o},j.filter=function(D){return arguments.length?(t=typeof D=="function"?D:Sr(!!D),j):t},j.touchable=function(D){return arguments.length?(r=typeof D=="function"?D:Sr(!!D),j):r},j.extent=function(D){return arguments.length?(i=typeof D=="function"?D:Sr([[+D[0][0],+D[0][1]],[+D[1][0],+D[1][1]]]),j):i},j.scaleExtent=function(D){return arguments.length?(u[0]=+D[0],u[1]=+D[1],j):[u[0],u[1]]},j.translateExtent=function(D){return arguments.length?(d[0][0]=+D[0][0],d[1][0]=+D[1][0],d[0][1]=+D[0][1],d[1][1]=+D[1][1],j):[[d[0][0],d[0][1]],[d[1][0],d[1][1]]]},j.constrain=function(D){return arguments.length?(l=D,j):l},j.duration=function(D){return arguments.length?(m=+D,j):m},j.interpolate=function(D){return arguments.length?(y=D,j):y},j.on=function(){var D=g.on.apply(g,arguments);return D===g?j:D},j.clickDistance=function(D){return arguments.length?(A=(D=+D)*D,j):Math.sqrt(A)},j.tapDistance=function(D){return arguments.length?(C=+D,j):C},j}const pn={error001:()=>"[React Flow]: Seems like you have not used zustand provider as an ancestor. Help: https://reactflow.dev/error#001",error002:()=>"It looks like you've created a new nodeTypes or edgeTypes object. If this wasn't on purpose please define the nodeTypes/edgeTypes outside of the component or memoize them.",error003:t=>`Node type "${t}" not found. Using fallback type "default".`,error004:()=>"The React Flow parent container needs a width and a height to render the graph.",error005:()=>"Only child nodes can use a parent extent.",error006:()=>"Can't create edge. An edge needs a source and a target.",error007:t=>`The old edge with id=${t} does not exist.`,error009:t=>`Marker type "${t}" doesn't exist.`,error008:(t,{id:i,sourceHandle:l,targetHandle:o})=>`Couldn't create edge for ${t} handle id: "${t==="source"?l:o}", edge id: ${i}.`,error010:()=>"Handle: No node id found. Make sure to only use a Handle inside a custom Node.",error011:t=>`Edge type "${t}" not found. Using fallback type "default".`,error012:t=>`Node with id "${t}" does not exist, it may have been removed. This can happen when a node is deleted before the "onNodeClick" handler is called.`,error013:(t="react")=>`It seems that you haven't loaded the styles. Please import '@xyflow/${t}/dist/style.css' or base.css to make sure everything is working properly.`,error014:()=>"useNodeConnections: No node ID found. Call useNodeConnections inside a custom Node or provide a node ID.",error015:()=>"It seems that you are trying to drag a node that is not initialized. Please use onNodesChange as explained in the docs."},jo=[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],wv=["Enter"," ","Escape"],Nv={"node.a11yDescription.default":"Press enter or space to select a node. Press delete to remove it and escape to cancel.","node.a11yDescription.keyboardDisabled":"Press enter or space to select a node. You can then use the arrow keys to move the node around. Press delete to remove it and escape to cancel.","node.a11yDescription.ariaLiveMessage":({direction:t,x:i,y:l})=>`Moved selected node ${t}. New position, x: ${i}, y: ${l}`,"edge.a11yDescription.default":"Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.","controls.ariaLabel":"Control Panel","controls.zoomIn.ariaLabel":"Zoom In","controls.zoomOut.ariaLabel":"Zoom Out","controls.fitView.ariaLabel":"Fit View","controls.interactive.ariaLabel":"Toggle Interactivity","minimap.ariaLabel":"Mini Map","handle.ariaLabel":"Handle"};var si;(function(t){t.Strict="strict",t.Loose="loose"})(si||(si={}));var ii;(function(t){t.Free="free",t.Vertical="vertical",t.Horizontal="horizontal"})(ii||(ii={}));var zo;(function(t){t.Partial="partial",t.Full="full"})(zo||(zo={}));const _v={inProgress:!1,isValid:null,from:null,fromHandle:null,fromPosition:null,fromNode:null,to:null,toHandle:null,toPosition:null,toNode:null,pointer:null};var Ea;(function(t){t.Bezier="default",t.Straight="straight",t.Step="step",t.SmoothStep="smoothstep",t.SimpleBezier="simplebezier"})(Ea||(Ea={}));var Vr;(function(t){t.Arrow="arrow",t.ArrowClosed="arrowclosed"})(Vr||(Vr={}));var ge;(function(t){t.Left="left",t.Top="top",t.Right="right",t.Bottom="bottom"})(ge||(ge={}));const Ny={[ge.Left]:ge.Right,[ge.Right]:ge.Left,[ge.Top]:ge.Bottom,[ge.Bottom]:ge.Top};function Ev(t){return t===null?null:t?"valid":"invalid"}const Cv=t=>"id"in t&&"source"in t&&"target"in t,NC=t=>"id"in t&&"position"in t&&!("source"in t)&&!("target"in t),Tf=t=>"id"in t&&"internals"in t&&!("source"in t)&&!("target"in t),Bo=(t,i=[0,0])=>{const{width:l,height:o}=Xn(t),r=t.origin??i,u=l*r[0],d=o*r[1];return{x:t.position.x-u,y:t.position.y-d}},_C=(t,i={nodeOrigin:[0,0]})=>{if(t.length===0)return{x:0,y:0,width:0,height:0};const l=t.reduce((o,r)=>{const u=typeof r=="string";let d=!i.nodeLookup&&!u?r:void 0;i.nodeLookup&&(d=u?i.nodeLookup.get(r):Tf(r)?r:i.nodeLookup.get(r.id));const m=d?Xr(d,i.nodeOrigin):{x:0,y:0,x2:0,y2:0};return Wr(o,m)},{x:1/0,y:1/0,x2:-1/0,y2:-1/0});return ec(l)},ko=(t,i={})=>{let l={x:1/0,y:1/0,x2:-1/0,y2:-1/0},o=!1;return t.forEach(r=>{(i.filter===void 0||i.filter(r))&&(l=Wr(l,Xr(r)),o=!0)}),o?ec(l):{x:0,y:0,width:0,height:0}},Af=(t,i,[l,o,r]=[0,0,1],u=!1,d=!1)=>{const m={...Go(i,[l,o,r]),width:i.width/r,height:i.height/r},y=[];for(const g of t.values()){const{measured:p,selectable:v=!0,hidden:x=!1}=g;if(d&&!v||x)continue;const S=p.width??g.width??g.initialWidth??null,w=p.height??g.height??g.initialHeight??null,A=Ro(m,hl(g)),C=(S??0)*(w??0),j=u&&A>0;(!g.internals.handleBounds||j||A>=C||g.dragging)&&y.push(g)}return y},EC=(t,i)=>{const l=new Set;return t.forEach(o=>{l.add(o.id)}),i.filter(o=>l.has(o.source)||l.has(o.target))};function CC(t,i){const l=new Map,o=i?.nodes?new Set(i.nodes.map(r=>r.id)):null;return t.forEach(r=>{r.measured.width&&r.measured.height&&(i?.includeHiddenNodes||!r.hidden)&&(!o||o.has(r.id))&&l.set(r.id,r)}),l}async function TC({nodes:t,width:i,height:l,panZoom:o,minZoom:r,maxZoom:u},d){if(t.size===0)return Promise.resolve(!0);const m=CC(t,d),y=ko(m),g=Mf(y,i,l,d?.minZoom??r,d?.maxZoom??u,d?.padding??.1);return await o.setViewport(g,{duration:d?.duration,ease:d?.ease,interpolate:d?.interpolate}),Promise.resolve(!0)}function Tv({nodeId:t,nextPosition:i,nodeLookup:l,nodeOrigin:o=[0,0],nodeExtent:r,onError:u}){const d=l.get(t),m=d.parentId?l.get(d.parentId):void 0,{x:y,y:g}=m?m.internals.positionAbsolute:{x:0,y:0},p=d.origin??o;let v=d.extent||r;if(d.extent==="parent"&&!d.expandParent)if(!m)u?.("005",pn.error005());else{const S=m.measured.width,w=m.measured.height;S&&w&&(v=[[y,g],[y+S,g+w]])}else m&&ml(d.extent)&&(v=[[d.extent[0][0]+y,d.extent[0][1]+g],[d.extent[1][0]+y,d.extent[1][1]+g]]);const x=ml(v)?ri(i,v,d.measured):i;return(d.measured.width===void 0||d.measured.height===void 0)&&u?.("015",pn.error015()),{position:{x:x.x-y+(d.measured.width??0)*p[0],y:x.y-g+(d.measured.height??0)*p[1]},positionAbsolute:x}}async function AC({nodesToRemove:t=[],edgesToRemove:i=[],nodes:l,edges:o,onBeforeDelete:r}){const u=new Set(t.map(x=>x.id)),d=[];for(const x of l){if(x.deletable===!1)continue;const S=u.has(x.id),w=!S&&x.parentId&&d.find(A=>A.id===x.parentId);(S||w)&&d.push(x)}const m=new Set(i.map(x=>x.id)),y=o.filter(x=>x.deletable!==!1),p=EC(d,y);for(const x of y)m.has(x.id)&&!p.find(w=>w.id===x.id)&&p.push(x);if(!r)return{edges:p,nodes:d};const v=await r({nodes:d,edges:p});return typeof v=="boolean"?v?{edges:p,nodes:d}:{edges:[],nodes:[]}:v}const fl=(t,i=0,l=1)=>Math.min(Math.max(t,i),l),ri=(t={x:0,y:0},i,l)=>({x:fl(t.x,i[0][0],i[1][0]-(l?.width??0)),y:fl(t.y,i[0][1],i[1][1]-(l?.height??0))});function Av(t,i,l){const{width:o,height:r}=Xn(l),{x:u,y:d}=l.internals.positionAbsolute;return ri(t,[[u,d],[u+o,d+r]],i)}const _y=(t,i,l)=>t<i?fl(Math.abs(t-i),1,i)/i:t>l?-fl(Math.abs(t-l),1,i)/i:0,Mv=(t,i,l=15,o=40)=>{const r=_y(t.x,o,i.width-o)*l,u=_y(t.y,o,i.height-o)*l;return[r,u]},Wr=(t,i)=>({x:Math.min(t.x,i.x),y:Math.min(t.y,i.y),x2:Math.max(t.x2,i.x2),y2:Math.max(t.y2,i.y2)}),df=({x:t,y:i,width:l,height:o})=>({x:t,y:i,x2:t+l,y2:i+o}),ec=({x:t,y:i,x2:l,y2:o})=>({x:t,y:i,width:l-t,height:o-i}),hl=(t,i=[0,0])=>{const{x:l,y:o}=Tf(t)?t.internals.positionAbsolute:Bo(t,i);return{x:l,y:o,width:t.measured?.width??t.width??t.initialWidth??0,height:t.measured?.height??t.height??t.initialHeight??0}},Xr=(t,i=[0,0])=>{const{x:l,y:o}=Tf(t)?t.internals.positionAbsolute:Bo(t,i);return{x:l,y:o,x2:l+(t.measured?.width??t.width??t.initialWidth??0),y2:o+(t.measured?.height??t.height??t.initialHeight??0)}},jv=(t,i)=>ec(Wr(df(t),df(i))),Ro=(t,i)=>{const l=Math.max(0,Math.min(t.x+t.width,i.x+i.width)-Math.max(t.x,i.x)),o=Math.max(0,Math.min(t.y+t.height,i.y+i.height)-Math.max(t.y,i.y));return Math.ceil(l*o)},Ey=t=>an(t.width)&&an(t.height)&&an(t.x)&&an(t.y),an=t=>!isNaN(t)&&isFinite(t),MC=(t,i)=>{},Uo=(t,i=[1,1])=>({x:i[0]*Math.round(t.x/i[0]),y:i[1]*Math.round(t.y/i[1])}),Go=({x:t,y:i},[l,o,r],u=!1,d=[1,1])=>{const m={x:(t-l)/r,y:(i-o)/r};return u?Uo(m,d):m},$r=({x:t,y:i},[l,o,r])=>({x:t*r+l,y:i*r+o});function tl(t,i){if(typeof t=="number")return Math.floor((i-i/(1+t))*.5);if(typeof t=="string"&&t.endsWith("px")){const l=parseFloat(t);if(!Number.isNaN(l))return Math.floor(l)}if(typeof t=="string"&&t.endsWith("%")){const l=parseFloat(t);if(!Number.isNaN(l))return Math.floor(i*l*.01)}return console.error(`[React Flow] The padding value "${t}" is invalid. Please provide a number or a string with a valid unit (px or %).`),0}function jC(t,i,l){if(typeof t=="string"||typeof t=="number"){const o=tl(t,l),r=tl(t,i);return{top:o,right:r,bottom:o,left:r,x:r*2,y:o*2}}if(typeof t=="object"){const o=tl(t.top??t.y??0,l),r=tl(t.bottom??t.y??0,l),u=tl(t.left??t.x??0,i),d=tl(t.right??t.x??0,i);return{top:o,right:d,bottom:r,left:u,x:u+d,y:o+r}}return{top:0,right:0,bottom:0,left:0,x:0,y:0}}function zC(t,i,l,o,r,u){const{x:d,y:m}=$r(t,[i,l,o]),{x:y,y:g}=$r({x:t.x+t.width,y:t.y+t.height},[i,l,o]),p=r-y,v=u-g;return{left:Math.floor(d),top:Math.floor(m),right:Math.floor(p),bottom:Math.floor(v)}}const Mf=(t,i,l,o,r,u)=>{const d=jC(u,i,l),m=(i-d.x)/t.width,y=(l-d.y)/t.height,g=Math.min(m,y),p=fl(g,o,r),v=t.x+t.width/2,x=t.y+t.height/2,S=i/2-v*p,w=l/2-x*p,A=zC(t,S,w,p,i,l),C={left:Math.min(A.left-d.left,0),top:Math.min(A.top-d.top,0),right:Math.min(A.right-d.right,0),bottom:Math.min(A.bottom-d.bottom,0)};return{x:S-C.left+C.right,y:w-C.top+C.bottom,zoom:p}},Do=()=>typeof navigator<"u"&&navigator?.userAgent?.indexOf("Mac")>=0;function ml(t){return t!=null&&t!=="parent"}function Xn(t){return{width:t.measured?.width??t.width??t.initialWidth??0,height:t.measured?.height??t.height??t.initialHeight??0}}function zv(t){return(t.measured?.width??t.width??t.initialWidth)!==void 0&&(t.measured?.height??t.height??t.initialHeight)!==void 0}function Rv(t,i={width:0,height:0},l,o,r){const u={...t},d=o.get(l);if(d){const m=d.origin||r;u.x+=d.internals.positionAbsolute.x-(i.width??0)*m[0],u.y+=d.internals.positionAbsolute.y-(i.height??0)*m[1]}return u}function Cy(t,i){if(t.size!==i.size)return!1;for(const l of t)if(!i.has(l))return!1;return!0}function RC(){let t,i;return{promise:new Promise((o,r)=>{t=o,i=r}),resolve:t,reject:i}}function DC(t){return{...Nv,...t||{}}}function Eo(t,{snapGrid:i=[0,0],snapToGrid:l=!1,transform:o,containerBounds:r}){const{x:u,y:d}=ln(t),m=Go({x:u-(r?.left??0),y:d-(r?.top??0)},o),{x:y,y:g}=l?Uo(m,i):m;return{xSnapped:y,ySnapped:g,...m}}const jf=t=>({width:t.offsetWidth,height:t.offsetHeight}),Dv=t=>t?.getRootNode?.()||window?.document,OC=["INPUT","SELECT","TEXTAREA"];function Ov(t){const i=t.composedPath?.()?.[0]||t.target;return i?.nodeType!==1?!1:OC.includes(i.nodeName)||i.hasAttribute("contenteditable")||!!i.closest(".nokey")}const Hv=t=>"clientX"in t,ln=(t,i)=>{const l=Hv(t),o=l?t.clientX:t.touches?.[0].clientX,r=l?t.clientY:t.touches?.[0].clientY;return{x:o-(i?.left??0),y:r-(i?.top??0)}},Ty=(t,i,l,o,r)=>{const u=i.querySelectorAll(`.${t}`);return!u||!u.length?null:Array.from(u).map(d=>{const m=d.getBoundingClientRect();return{id:d.getAttribute("data-handleid"),type:t,nodeId:r,position:d.getAttribute("data-handlepos"),x:(m.left-l.left)/o,y:(m.top-l.top)/o,...jf(d)}})};function Iv({sourceX:t,sourceY:i,targetX:l,targetY:o,sourceControlX:r,sourceControlY:u,targetControlX:d,targetControlY:m}){const y=t*.125+r*.375+d*.375+l*.125,g=i*.125+u*.375+m*.375+o*.125,p=Math.abs(y-t),v=Math.abs(g-i);return[y,g,p,v]}function wr(t,i){return t>=0?.5*t:i*25*Math.sqrt(-t)}function Ay({pos:t,x1:i,y1:l,x2:o,y2:r,c:u}){switch(t){case ge.Left:return[i-wr(i-o,u),l];case ge.Right:return[i+wr(o-i,u),l];case ge.Top:return[i,l-wr(l-r,u)];case ge.Bottom:return[i,l+wr(r-l,u)]}}function Lv({sourceX:t,sourceY:i,sourcePosition:l=ge.Bottom,targetX:o,targetY:r,targetPosition:u=ge.Top,curvature:d=.25}){const[m,y]=Ay({pos:l,x1:t,y1:i,x2:o,y2:r,c:d}),[g,p]=Ay({pos:u,x1:o,y1:r,x2:t,y2:i,c:d}),[v,x,S,w]=Iv({sourceX:t,sourceY:i,targetX:o,targetY:r,sourceControlX:m,sourceControlY:y,targetControlX:g,targetControlY:p});return[`M${t},${i} C${m},${y} ${g},${p} ${o},${r}`,v,x,S,w]}function Bv({sourceX:t,sourceY:i,targetX:l,targetY:o}){const r=Math.abs(l-t)/2,u=l<t?l+r:l-r,d=Math.abs(o-i)/2,m=o<i?o+d:o-d;return[u,m,r,d]}function HC({sourceNode:t,targetNode:i,selected:l=!1,zIndex:o=0,elevateOnSelect:r=!1,zIndexMode:u="basic"}){if(u==="manual")return o;const d=r&&l?o+1e3:o,m=Math.max(t.parentId||r&&t.selected?t.internals.z:0,i.parentId||r&&i.selected?i.internals.z:0);return d+m}function IC({sourceNode:t,targetNode:i,width:l,height:o,transform:r}){const u=Wr(Xr(t),Xr(i));u.x===u.x2&&(u.x2+=1),u.y===u.y2&&(u.y2+=1);const d={x:-r[0]/r[2],y:-r[1]/r[2],width:l/r[2],height:o/r[2]};return Ro(d,ec(u))>0}const LC=({source:t,sourceHandle:i,target:l,targetHandle:o})=>`xy-edge__${t}${i||""}-${l}${o||""}`,BC=(t,i)=>i.some(l=>l.source===t.source&&l.target===t.target&&(l.sourceHandle===t.sourceHandle||!l.sourceHandle&&!t.sourceHandle)&&(l.targetHandle===t.targetHandle||!l.targetHandle&&!t.targetHandle)),kC=(t,i,l={})=>{if(!t.source||!t.target)return i;const o=l.getEdgeId||LC;let r;return Cv(t)?r={...t}:r={...t,id:o(t)},BC(r,i)?i:(r.sourceHandle===null&&delete r.sourceHandle,r.targetHandle===null&&delete r.targetHandle,i.concat(r))};function kv({sourceX:t,sourceY:i,targetX:l,targetY:o}){const[r,u,d,m]=Bv({sourceX:t,sourceY:i,targetX:l,targetY:o});return[`M ${t},${i}L ${l},${o}`,r,u,d,m]}const My={[ge.Left]:{x:-1,y:0},[ge.Right]:{x:1,y:0},[ge.Top]:{x:0,y:-1},[ge.Bottom]:{x:0,y:1}},UC=({source:t,sourcePosition:i=ge.Bottom,target:l})=>i===ge.Left||i===ge.Right?t.x<l.x?{x:1,y:0}:{x:-1,y:0}:t.y<l.y?{x:0,y:1}:{x:0,y:-1},jy=(t,i)=>Math.sqrt(Math.pow(i.x-t.x,2)+Math.pow(i.y-t.y,2));function GC({source:t,sourcePosition:i=ge.Bottom,target:l,targetPosition:o=ge.Top,center:r,offset:u,stepPosition:d}){const m=My[i],y=My[o],g={x:t.x+m.x*u,y:t.y+m.y*u},p={x:l.x+y.x*u,y:l.y+y.y*u},v=UC({source:g,sourcePosition:i,target:p}),x=v.x!==0?"x":"y",S=v[x];let w=[],A,C;const j={x:0,y:0},R={x:0,y:0},[,,E,_]=Bv({sourceX:t.x,sourceY:t.y,targetX:l.x,targetY:l.y});if(m[x]*y[x]===-1){x==="x"?(A=r.x??g.x+(p.x-g.x)*d,C=r.y??(g.y+p.y)/2):(A=r.x??(g.x+p.x)/2,C=r.y??g.y+(p.y-g.y)*d);const L=[{x:A,y:g.y},{x:A,y:p.y}],$=[{x:g.x,y:C},{x:p.x,y:C}];m[x]===S?w=x==="x"?L:$:w=x==="x"?$:L}else{const L=[{x:g.x,y:p.y}],$=[{x:p.x,y:g.y}];if(x==="x"?w=m.x===S?$:L:w=m.y===S?L:$,i===o){const D=Math.abs(t[x]-l[x]);if(D<=u){const Z=Math.min(u-1,u-D);m[x]===S?j[x]=(g[x]>t[x]?-1:1)*Z:R[x]=(p[x]>l[x]?-1:1)*Z}}if(i!==o){const D=x==="x"?"y":"x",Z=m[x]===y[D],z=g[D]>p[D],H=g[D]<p[D];(m[x]===1&&(!Z&&z||Z&&H)||m[x]!==1&&(!Z&&H||Z&&z))&&(w=x==="x"?L:$)}const ce={x:g.x+j.x,y:g.y+j.y},K={x:p.x+R.x,y:p.y+R.y},te=Math.max(Math.abs(ce.x-w[0].x),Math.abs(K.x-w[0].x)),ue=Math.max(Math.abs(ce.y-w[0].y),Math.abs(K.y-w[0].y));te>=ue?(A=(ce.x+K.x)/2,C=w[0].y):(A=w[0].x,C=(ce.y+K.y)/2)}const U={x:g.x+j.x,y:g.y+j.y},M={x:p.x+R.x,y:p.y+R.y};return[[t,...U.x!==w[0].x||U.y!==w[0].y?[U]:[],...w,...M.x!==w[w.length-1].x||M.y!==w[w.length-1].y?[M]:[],l],A,C,E,_]}function qC(t,i,l,o){const r=Math.min(jy(t,i)/2,jy(i,l)/2,o),{x:u,y:d}=i;if(t.x===u&&u===l.x||t.y===d&&d===l.y)return`L${u} ${d}`;if(t.y===d){const g=t.x<l.x?-1:1,p=t.y<l.y?1:-1;return`L ${u+r*g},${d}Q ${u},${d} ${u},${d+r*p}`}const m=t.x<l.x?1:-1,y=t.y<l.y?-1:1;return`L ${u},${d+r*y}Q ${u},${d} ${u+r*m},${d}`}function ff({sourceX:t,sourceY:i,sourcePosition:l=ge.Bottom,targetX:o,targetY:r,targetPosition:u=ge.Top,borderRadius:d=5,centerX:m,centerY:y,offset:g=20,stepPosition:p=.5}){const[v,x,S,w,A]=GC({source:{x:t,y:i},sourcePosition:l,target:{x:o,y:r},targetPosition:u,center:{x:m,y},offset:g,stepPosition:p});let C=`M${v[0].x} ${v[0].y}`;for(let j=1;j<v.length-1;j++)C+=qC(v[j-1],v[j],v[j+1],d);return C+=`L${v[v.length-1].x} ${v[v.length-1].y}`,[C,x,S,w,A]}function zy(t){return t&&!!(t.internals.handleBounds||t.handles?.length)&&!!(t.measured.width||t.width||t.initialWidth)}function YC(t){const{sourceNode:i,targetNode:l}=t;if(!zy(i)||!zy(l))return null;const o=i.internals.handleBounds||Ry(i.handles),r=l.internals.handleBounds||Ry(l.handles),u=Dy(o?.source??[],t.sourceHandle),d=Dy(t.connectionMode===si.Strict?r?.target??[]:(r?.target??[]).concat(r?.source??[]),t.targetHandle);if(!u||!d)return t.onError?.("008",pn.error008(u?"target":"source",{id:t.id,sourceHandle:t.sourceHandle,targetHandle:t.targetHandle})),null;const m=u?.position||ge.Bottom,y=d?.position||ge.Top,g=ci(i,u,m),p=ci(l,d,y);return{sourceX:g.x,sourceY:g.y,targetX:p.x,targetY:p.y,sourcePosition:m,targetPosition:y}}function Ry(t){if(!t)return null;const i=[],l=[];for(const o of t)o.width=o.width??1,o.height=o.height??1,o.type==="source"?i.push(o):o.type==="target"&&l.push(o);return{source:i,target:l}}function ci(t,i,l=ge.Left,o=!1){const r=(i?.x??0)+t.internals.positionAbsolute.x,u=(i?.y??0)+t.internals.positionAbsolute.y,{width:d,height:m}=i??Xn(t);if(o)return{x:r+d/2,y:u+m/2};switch(i?.position??l){case ge.Top:return{x:r+d/2,y:u};case ge.Right:return{x:r+d,y:u+m/2};case ge.Bottom:return{x:r+d/2,y:u+m};case ge.Left:return{x:r,y:u+m/2}}}function Dy(t,i){return t&&(i?t.find(l=>l.id===i):t[0])||null}function hf(t,i){return t?typeof t=="string"?t:`${i?`${i}__`:""}${Object.keys(t).sort().map(o=>`${o}=${t[o]}`).join("&")}`:""}function VC(t,{id:i,defaultColor:l,defaultMarkerStart:o,defaultMarkerEnd:r}){const u=new Set;return t.reduce((d,m)=>([m.markerStart||o,m.markerEnd||r].forEach(y=>{if(y&&typeof y=="object"){const g=hf(y,i);u.has(g)||(d.push({id:g,color:y.color||l,...y}),u.add(g))}}),d),[]).sort((d,m)=>d.id.localeCompare(m.id))}const Uv=1e3,XC=10,zf={nodeOrigin:[0,0],nodeExtent:jo,elevateNodesOnSelect:!0,zIndexMode:"basic",defaults:{}},$C={...zf,checkEquality:!0};function Rf(t,i){const l={...t};for(const o in i)i[o]!==void 0&&(l[o]=i[o]);return l}function ZC(t,i,l){const o=Rf(zf,l);for(const r of t.values())if(r.parentId)Of(r,t,i,o);else{const u=Bo(r,o.nodeOrigin),d=ml(r.extent)?r.extent:o.nodeExtent,m=ri(u,d,Xn(r));r.internals.positionAbsolute=m}}function KC(t,i){if(!t.handles)return t.measured?i?.internals.handleBounds:void 0;const l=[],o=[];for(const r of t.handles){const u={id:r.id,width:r.width??1,height:r.height??1,nodeId:t.id,x:r.x,y:r.y,position:r.position,type:r.type};r.type==="source"?l.push(u):r.type==="target"&&o.push(u)}return{source:l,target:o}}function Df(t){return t==="manual"}function mf(t,i,l,o={}){const r=Rf($C,o),u={i:0},d=new Map(i),m=r?.elevateNodesOnSelect&&!Df(r.zIndexMode)?Uv:0;let y=t.length>0,g=!1;i.clear(),l.clear();for(const p of t){let v=d.get(p.id);if(r.checkEquality&&p===v?.internals.userNode)i.set(p.id,v);else{const x=Bo(p,r.nodeOrigin),S=ml(p.extent)?p.extent:r.nodeExtent,w=ri(x,S,Xn(p));v={...r.defaults,...p,measured:{width:p.measured?.width,height:p.measured?.height},internals:{positionAbsolute:w,handleBounds:KC(p,v),z:Gv(p,m,r.zIndexMode),userNode:p}},i.set(p.id,v)}(v.measured===void 0||v.measured.width===void 0||v.measured.height===void 0)&&!v.hidden&&(y=!1),p.parentId&&Of(v,i,l,o,u),g||=p.selected??!1}return{nodesInitialized:y,hasSelectedNodes:g}}function FC(t,i){if(!t.parentId)return;const l=i.get(t.parentId);l?l.set(t.id,t):i.set(t.parentId,new Map([[t.id,t]]))}function Of(t,i,l,o,r){const{elevateNodesOnSelect:u,nodeOrigin:d,nodeExtent:m,zIndexMode:y}=Rf(zf,o),g=t.parentId,p=i.get(g);if(!p){console.warn(`Parent node ${g} not found. Please make sure that parent nodes are in front of their child nodes in the nodes array.`);return}FC(t,l),r&&!p.parentId&&p.internals.rootParentIndex===void 0&&y==="auto"&&(p.internals.rootParentIndex=++r.i,p.internals.z=p.internals.z+r.i*XC),r&&p.internals.rootParentIndex!==void 0&&(r.i=p.internals.rootParentIndex);const v=u&&!Df(y)?Uv:0,{x,y:S,z:w}=QC(t,p,d,m,v,y),{positionAbsolute:A}=t.internals,C=x!==A.x||S!==A.y;(C||w!==t.internals.z)&&i.set(t.id,{...t,internals:{...t.internals,positionAbsolute:C?{x,y:S}:A,z:w}})}function Gv(t,i,l){const o=an(t.zIndex)?t.zIndex:0;return Df(l)?o:o+(t.selected?i:0)}function QC(t,i,l,o,r,u){const{x:d,y:m}=i.internals.positionAbsolute,y=Xn(t),g=Bo(t,l),p=ml(t.extent)?ri(g,t.extent,y):g;let v=ri({x:d+p.x,y:m+p.y},o,y);t.extent==="parent"&&(v=Av(v,y,i));const x=Gv(t,r,u),S=i.internals.z??0;return{x:v.x,y:v.y,z:S>=x?S+1:x}}function Hf(t,i,l,o=[0,0]){const r=[],u=new Map;for(const d of t){const m=i.get(d.parentId);if(!m)continue;const y=u.get(d.parentId)?.expandedRect??hl(m),g=jv(y,d.rect);u.set(d.parentId,{expandedRect:g,parent:m})}return u.size>0&&u.forEach(({expandedRect:d,parent:m},y)=>{const g=m.internals.positionAbsolute,p=Xn(m),v=m.origin??o,x=d.x<g.x?Math.round(Math.abs(g.x-d.x)):0,S=d.y<g.y?Math.round(Math.abs(g.y-d.y)):0,w=Math.max(p.width,Math.round(d.width)),A=Math.max(p.height,Math.round(d.height)),C=(w-p.width)*v[0],j=(A-p.height)*v[1];(x>0||S>0||C||j)&&(r.push({id:y,type:"position",position:{x:m.position.x-x+C,y:m.position.y-S+j}}),l.get(y)?.forEach(R=>{t.some(E=>E.id===R.id)||r.push({id:R.id,type:"position",position:{x:R.position.x+x,y:R.position.y+S}})})),(p.width<d.width||p.height<d.height||x||S)&&r.push({id:y,type:"dimensions",setAttributes:!0,dimensions:{width:w+(x?v[0]*x-C:0),height:A+(S?v[1]*S-j:0)}})}),r}function PC(t,i,l,o,r,u,d){const m=o?.querySelector(".xyflow__viewport");let y=!1;if(!m)return{changes:[],updatedInternals:y};const g=[],p=window.getComputedStyle(m),{m22:v}=new window.DOMMatrixReadOnly(p.transform),x=[];for(const S of t.values()){const w=i.get(S.id);if(!w)continue;if(w.hidden){i.set(w.id,{...w,internals:{...w.internals,handleBounds:void 0}}),y=!0;continue}const A=jf(S.nodeElement),C=w.measured.width!==A.width||w.measured.height!==A.height;if(!!(A.width&&A.height&&(C||!w.internals.handleBounds||S.force))){const R=S.nodeElement.getBoundingClientRect(),E=ml(w.extent)?w.extent:u;let{positionAbsolute:_}=w.internals;w.parentId&&w.extent==="parent"?_=Av(_,A,i.get(w.parentId)):E&&(_=ri(_,E,A));const U={...w,measured:A,internals:{...w.internals,positionAbsolute:_,handleBounds:{source:Ty("source",S.nodeElement,R,v,w.id),target:Ty("target",S.nodeElement,R,v,w.id)}}};i.set(w.id,U),w.parentId&&Of(U,i,l,{nodeOrigin:r,zIndexMode:d}),y=!0,C&&(g.push({id:w.id,type:"dimensions",dimensions:A}),w.expandParent&&w.parentId&&x.push({id:w.id,parentId:w.parentId,rect:hl(U,r)}))}}if(x.length>0){const S=Hf(x,i,l,r);g.push(...S)}return{changes:g,updatedInternals:y}}async function JC({delta:t,panZoom:i,transform:l,translateExtent:o,width:r,height:u}){if(!i||!t.x&&!t.y)return Promise.resolve(!1);const d=await i.setViewportConstrained({x:l[0]+t.x,y:l[1]+t.y,zoom:l[2]},[[0,0],[r,u]],o),m=!!d&&(d.x!==l[0]||d.y!==l[1]||d.k!==l[2]);return Promise.resolve(m)}function Oy(t,i,l,o,r,u){let d=r;const m=o.get(d)||new Map;o.set(d,m.set(l,i)),d=`${r}-${t}`;const y=o.get(d)||new Map;if(o.set(d,y.set(l,i)),u){d=`${r}-${t}-${u}`;const g=o.get(d)||new Map;o.set(d,g.set(l,i))}}function qv(t,i,l){t.clear(),i.clear();for(const o of l){const{source:r,target:u,sourceHandle:d=null,targetHandle:m=null}=o,y={edgeId:o.id,source:r,target:u,sourceHandle:d,targetHandle:m},g=`${r}-${d}--${u}-${m}`,p=`${u}-${m}--${r}-${d}`;Oy("source",y,p,t,r,d),Oy("target",y,g,t,u,m),i.set(o.id,o)}}function Yv(t,i){if(!t.parentId)return!1;const l=i.get(t.parentId);return l?l.selected?!0:Yv(l,i):!1}function Hy(t,i,l){let o=t;do{if(o?.matches?.(i))return!0;if(o===l)return!1;o=o?.parentElement}while(o);return!1}function WC(t,i,l,o){const r=new Map;for(const[u,d]of t)if((d.selected||d.id===o)&&(!d.parentId||!Yv(d,t))&&(d.draggable||i&&typeof d.draggable>"u")){const m=t.get(u);m&&r.set(u,{id:u,position:m.position||{x:0,y:0},distance:{x:l.x-m.internals.positionAbsolute.x,y:l.y-m.internals.positionAbsolute.y},extent:m.extent,parentId:m.parentId,origin:m.origin,expandParent:m.expandParent,internals:{positionAbsolute:m.internals.positionAbsolute||{x:0,y:0}},measured:{width:m.measured.width??0,height:m.measured.height??0}})}return r}function Yd({nodeId:t,dragItems:i,nodeLookup:l,dragging:o=!0}){const r=[];for(const[d,m]of i){const y=l.get(d)?.internals.userNode;y&&r.push({...y,position:m.position,dragging:o})}if(!t)return[r[0],r];const u=l.get(t)?.internals.userNode;return[u?{...u,position:i.get(t)?.position||u.position,dragging:o}:r[0],r]}function eT({dragItems:t,snapGrid:i,x:l,y:o}){const r=t.values().next().value;if(!r)return null;const u={x:l-r.distance.x,y:o-r.distance.y},d=Uo(u,i);return{x:d.x-u.x,y:d.y-u.y}}function tT({onNodeMouseDown:t,getStoreItems:i,onDragStart:l,onDrag:o,onDragStop:r}){let u={x:null,y:null},d=0,m=new Map,y=!1,g={x:0,y:0},p=null,v=!1,x=null,S=!1,w=!1,A=null;function C({noDragClassName:R,handleSelector:E,domNode:_,isSelectable:U,nodeId:M,nodeClickDistance:I=0}){x=kt(_);function L({x:te,y:ue}){const{nodeLookup:D,nodeExtent:Z,snapGrid:z,snapToGrid:H,nodeOrigin:G,onNodeDrag:B,onSelectionDrag:J,onError:T,updateNodePositions:k}=i();u={x:te,y:ue};let ne=!1;const ae=m.size>1,V=ae&&Z?df(ko(m)):null,se=ae&&H?eT({dragItems:m,snapGrid:z,x:te,y:ue}):null;for(const[de,le]of m){if(!D.has(de))continue;let fe={x:te-le.distance.x,y:ue-le.distance.y};H&&(fe=se?{x:Math.round(fe.x+se.x),y:Math.round(fe.y+se.y)}:Uo(fe,z));let be=null;if(ae&&Z&&!le.extent&&V){const{positionAbsolute:we}=le.internals,je=we.x-V.x+Z[0][0],Ge=we.x+le.measured.width-V.x2+Z[1][0],Be=we.y-V.y+Z[0][1],ut=we.y+le.measured.height-V.y2+Z[1][1];be=[[je,Be],[Ge,ut]]}const{position:_e,positionAbsolute:ye}=Tv({nodeId:de,nextPosition:fe,nodeLookup:D,nodeExtent:be||Z,nodeOrigin:G,onError:T});ne=ne||le.position.x!==_e.x||le.position.y!==_e.y,le.position=_e,le.internals.positionAbsolute=ye}if(w=w||ne,!!ne&&(k(m,!0),A&&(o||B||!M&&J))){const[de,le]=Yd({nodeId:M,dragItems:m,nodeLookup:D});o?.(A,m,de,le),B?.(A,de,le),M||J?.(A,le)}}async function $(){if(!p)return;const{transform:te,panBy:ue,autoPanSpeed:D,autoPanOnNodeDrag:Z}=i();if(!Z){y=!1,cancelAnimationFrame(d);return}const[z,H]=Mv(g,p,D);(z!==0||H!==0)&&(u.x=(u.x??0)-z/te[2],u.y=(u.y??0)-H/te[2],await ue({x:z,y:H})&&L(u)),d=requestAnimationFrame($)}function ce(te){const{nodeLookup:ue,multiSelectionActive:D,nodesDraggable:Z,transform:z,snapGrid:H,snapToGrid:G,selectNodesOnDrag:B,onNodeDragStart:J,onSelectionDragStart:T,unselectNodesAndEdges:k}=i();v=!0,(!B||!U)&&!D&&M&&(ue.get(M)?.selected||k()),U&&B&&M&&t?.(M);const ne=Eo(te.sourceEvent,{transform:z,snapGrid:H,snapToGrid:G,containerBounds:p});if(u=ne,m=WC(ue,Z,ne,M),m.size>0&&(l||J||!M&&T)){const[ae,V]=Yd({nodeId:M,dragItems:m,nodeLookup:ue});l?.(te.sourceEvent,m,ae,V),J?.(te.sourceEvent,ae,V),M||T?.(te.sourceEvent,V)}}const K=ov().clickDistance(I).on("start",te=>{const{domNode:ue,nodeDragThreshold:D,transform:Z,snapGrid:z,snapToGrid:H}=i();p=ue?.getBoundingClientRect()||null,S=!1,w=!1,A=te.sourceEvent,D===0&&ce(te),u=Eo(te.sourceEvent,{transform:Z,snapGrid:z,snapToGrid:H,containerBounds:p}),g=ln(te.sourceEvent,p)}).on("drag",te=>{const{autoPanOnNodeDrag:ue,transform:D,snapGrid:Z,snapToGrid:z,nodeDragThreshold:H,nodeLookup:G}=i(),B=Eo(te.sourceEvent,{transform:D,snapGrid:Z,snapToGrid:z,containerBounds:p});if(A=te.sourceEvent,(te.sourceEvent.type==="touchmove"&&te.sourceEvent.touches.length>1||M&&!G.has(M))&&(S=!0),!S){if(!y&&ue&&v&&(y=!0,$()),!v){const J=ln(te.sourceEvent,p),T=J.x-g.x,k=J.y-g.y;Math.sqrt(T*T+k*k)>H&&ce(te)}(u.x!==B.xSnapped||u.y!==B.ySnapped)&&m&&v&&(g=ln(te.sourceEvent,p),L(B))}}).on("end",te=>{if(!(!v||S)&&(y=!1,v=!1,cancelAnimationFrame(d),m.size>0)){const{nodeLookup:ue,updateNodePositions:D,onNodeDragStop:Z,onSelectionDragStop:z}=i();if(w&&(D(m,!1),w=!1),r||Z||!M&&z){const[H,G]=Yd({nodeId:M,dragItems:m,nodeLookup:ue,dragging:!1});r?.(te.sourceEvent,m,H,G),Z?.(te.sourceEvent,H,G),M||z?.(te.sourceEvent,G)}}}).filter(te=>{const ue=te.target;return!te.button&&(!R||!Hy(ue,`.${R}`,_))&&(!E||Hy(ue,E,_))});x.call(K)}function j(){x?.on(".drag",null)}return{update:C,destroy:j}}function nT(t,i,l){const o=[],r={x:t.x-l,y:t.y-l,width:l*2,height:l*2};for(const u of i.values())Ro(r,hl(u))>0&&o.push(u);return o}const aT=250;function iT(t,i,l,o){let r=[],u=1/0;const d=nT(t,l,i+aT);for(const m of d){const y=[...m.internals.handleBounds?.source??[],...m.internals.handleBounds?.target??[]];for(const g of y){if(o.nodeId===g.nodeId&&o.type===g.type&&o.id===g.id)continue;const{x:p,y:v}=ci(m,g,g.position,!0),x=Math.sqrt(Math.pow(p-t.x,2)+Math.pow(v-t.y,2));x>i||(x<u?(r=[{...g,x:p,y:v}],u=x):x===u&&r.push({...g,x:p,y:v}))}}if(!r.length)return null;if(r.length>1){const m=o.type==="source"?"target":"source";return r.find(y=>y.type===m)??r[0]}return r[0]}function Vv(t,i,l,o,r,u=!1){const d=o.get(t);if(!d)return null;const m=r==="strict"?d.internals.handleBounds?.[i]:[...d.internals.handleBounds?.source??[],...d.internals.handleBounds?.target??[]],y=(l?m?.find(g=>g.id===l):m?.[0])??null;return y&&u?{...y,...ci(d,y,y.position,!0)}:y}function Xv(t,i){return t||(i?.classList.contains("target")?"target":i?.classList.contains("source")?"source":null)}function lT(t,i){let l=null;return i?l=!0:t&&!i&&(l=!1),l}const $v=()=>!0;function oT(t,{connectionMode:i,connectionRadius:l,handleId:o,nodeId:r,edgeUpdaterType:u,isTarget:d,domNode:m,nodeLookup:y,lib:g,autoPanOnConnect:p,flowId:v,panBy:x,cancelConnection:S,onConnectStart:w,onConnect:A,onConnectEnd:C,isValidConnection:j=$v,onReconnectEnd:R,updateConnection:E,getTransform:_,getFromHandle:U,autoPanSpeed:M,dragThreshold:I=1,handleDomNode:L}){const $=Dv(t.target);let ce=0,K;const{x:te,y:ue}=ln(t),D=Xv(u,L),Z=m?.getBoundingClientRect();let z=!1;if(!Z||!D)return;const H=Vv(r,D,o,y,i);if(!H)return;let G=ln(t,Z),B=!1,J=null,T=!1,k=null;function ne(){if(!p||!Z)return;const[_e,ye]=Mv(G,Z,M);x({x:_e,y:ye}),ce=requestAnimationFrame(ne)}const ae={...H,nodeId:r,type:D,position:H.position},V=y.get(r);let de={inProgress:!0,isValid:null,from:ci(V,ae,ge.Left,!0),fromHandle:ae,fromPosition:ae.position,fromNode:V,to:G,toHandle:null,toPosition:Ny[ae.position],toNode:null,pointer:G};function le(){z=!0,E(de),w?.(t,{nodeId:r,handleId:o,handleType:D})}I===0&&le();function fe(_e){if(!z){const{x:ut,y:Ft}=ln(_e),zt=ut-te,Qt=Ft-ue;if(!(zt*zt+Qt*Qt>I*I))return;le()}if(!U()||!ae){be(_e);return}const ye=_();G=ln(_e,Z),K=iT(Go(G,ye,!1,[1,1]),l,y,ae),B||(ne(),B=!0);const we=Zv(_e,{handle:K,connectionMode:i,fromNodeId:r,fromHandleId:o,fromType:d?"target":"source",isValidConnection:j,doc:$,lib:g,flowId:v,nodeLookup:y});k=we.handleDomNode,J=we.connection,T=lT(!!K,we.isValid);const je=y.get(r),Ge=je?ci(je,ae,ge.Left,!0):de.from,Be={...de,from:Ge,isValid:T,to:we.toHandle&&T?$r({x:we.toHandle.x,y:we.toHandle.y},ye):G,toHandle:we.toHandle,toPosition:T&&we.toHandle?we.toHandle.position:Ny[ae.position],toNode:we.toHandle?y.get(we.toHandle.nodeId):null,pointer:G};E(Be),de=Be}function be(_e){if(!("touches"in _e&&_e.touches.length>0)){if(z){(K||k)&&J&&T&&A?.(J);const{inProgress:ye,...we}=de,je={...we,toPosition:de.toHandle?de.toPosition:null};C?.(_e,je),u&&R?.(_e,je)}S(),cancelAnimationFrame(ce),B=!1,T=!1,J=null,k=null,$.removeEventListener("mousemove",fe),$.removeEventListener("mouseup",be),$.removeEventListener("touchmove",fe),$.removeEventListener("touchend",be)}}$.addEventListener("mousemove",fe),$.addEventListener("mouseup",be),$.addEventListener("touchmove",fe),$.addEventListener("touchend",be)}function Zv(t,{handle:i,connectionMode:l,fromNodeId:o,fromHandleId:r,fromType:u,doc:d,lib:m,flowId:y,isValidConnection:g=$v,nodeLookup:p}){const v=u==="target",x=i?d.querySelector(`.${m}-flow__handle[data-id="${y}-${i?.nodeId}-${i?.id}-${i?.type}"]`):null,{x:S,y:w}=ln(t),A=d.elementFromPoint(S,w),C=A?.classList.contains(`${m}-flow__handle`)?A:x,j={handleDomNode:C,isValid:!1,connection:null,toHandle:null};if(C){const R=Xv(void 0,C),E=C.getAttribute("data-nodeid"),_=C.getAttribute("data-handleid"),U=C.classList.contains("connectable"),M=C.classList.contains("connectableend");if(!E||!R)return j;const I={source:v?E:o,sourceHandle:v?_:r,target:v?o:E,targetHandle:v?r:_};j.connection=I;const $=U&&M&&(l===si.Strict?v&&R==="source"||!v&&R==="target":E!==o||_!==r);j.isValid=$&&g(I),j.toHandle=Vv(E,R,_,p,l,!0)}return j}const gf={onPointerDown:oT,isValid:Zv};function sT({domNode:t,panZoom:i,getTransform:l,getViewScale:o}){const r=kt(t);function u({translateExtent:m,width:y,height:g,zoomStep:p=1,pannable:v=!0,zoomable:x=!0,inversePan:S=!1}){const w=E=>{if(E.sourceEvent.type!=="wheel"||!i)return;const _=l(),U=E.sourceEvent.ctrlKey&&Do()?10:1,M=-E.sourceEvent.deltaY*(E.sourceEvent.deltaMode===1?.05:E.sourceEvent.deltaMode?1:.002)*p,I=_[2]*Math.pow(2,M*U);i.scaleTo(I)};let A=[0,0];const C=E=>{(E.sourceEvent.type==="mousedown"||E.sourceEvent.type==="touchstart")&&(A=[E.sourceEvent.clientX??E.sourceEvent.touches[0].clientX,E.sourceEvent.clientY??E.sourceEvent.touches[0].clientY])},j=E=>{const _=l();if(E.sourceEvent.type!=="mousemove"&&E.sourceEvent.type!=="touchmove"||!i)return;const U=[E.sourceEvent.clientX??E.sourceEvent.touches[0].clientX,E.sourceEvent.clientY??E.sourceEvent.touches[0].clientY],M=[U[0]-A[0],U[1]-A[1]];A=U;const I=o()*Math.max(_[2],Math.log(_[2]))*(S?-1:1),L={x:_[0]-M[0]*I,y:_[1]-M[1]*I},$=[[0,0],[y,g]];i.setViewportConstrained({x:L.x,y:L.y,zoom:_[2]},$,m)},R=Sv().on("start",C).on("zoom",v?j:null).on("zoom.wheel",x?w:null);r.call(R,{})}function d(){r.on("zoom",null)}return{update:u,destroy:d,pointer:tn}}const tc=t=>({x:t.x,y:t.y,zoom:t.k}),Vd=({x:t,y:i,zoom:l})=>Jr.translate(t,i).scale(l),il=(t,i)=>t.target.closest(`.${i}`),Kv=(t,i)=>i===2&&Array.isArray(t)&&t.includes(2),rT=t=>((t*=2)<=1?t*t*t:(t-=2)*t*t+2)/2,Xd=(t,i=0,l=rT,o=()=>{})=>{const r=typeof i=="number"&&i>0;return r||o(),r?t.transition().duration(i).ease(l).on("end",o):t},Fv=t=>{const i=t.ctrlKey&&Do()?10:1;return-t.deltaY*(t.deltaMode===1?.05:t.deltaMode?1:.002)*i};function cT({zoomPanValues:t,noWheelClassName:i,d3Selection:l,d3Zoom:o,panOnScrollMode:r,panOnScrollSpeed:u,zoomOnPinch:d,onPanZoomStart:m,onPanZoom:y,onPanZoomEnd:g}){return p=>{if(il(p,i))return p.ctrlKey&&p.preventDefault(),!1;p.preventDefault(),p.stopImmediatePropagation();const v=l.property("__zoom").k||1;if(p.ctrlKey&&d){const C=tn(p),j=Fv(p),R=v*Math.pow(2,j);o.scaleTo(l,R,C,p);return}const x=p.deltaMode===1?20:1;let S=r===ii.Vertical?0:p.deltaX*x,w=r===ii.Horizontal?0:p.deltaY*x;!Do()&&p.shiftKey&&r!==ii.Vertical&&(S=p.deltaY*x,w=0),o.translateBy(l,-(S/v)*u,-(w/v)*u,{internal:!0});const A=tc(l.property("__zoom"));clearTimeout(t.panScrollTimeout),t.isPanScrolling?(y?.(p,A),t.panScrollTimeout=setTimeout(()=>{g?.(p,A),t.isPanScrolling=!1},150)):(t.isPanScrolling=!0,m?.(p,A))}}function uT({noWheelClassName:t,preventScrolling:i,d3ZoomHandler:l}){return function(o,r){const u=o.type==="wheel",d=!i&&u&&!o.ctrlKey,m=il(o,t);if(o.ctrlKey&&u&&m&&o.preventDefault(),d||m)return null;o.preventDefault(),l.call(this,o,r)}}function dT({zoomPanValues:t,onDraggingChange:i,onPanZoomStart:l}){return o=>{if(o.sourceEvent?.internal)return;const r=tc(o.transform);t.mouseButton=o.sourceEvent?.button||0,t.isZoomingOrPanning=!0,t.prevViewport=r,o.sourceEvent?.type==="mousedown"&&i(!0),l&&l?.(o.sourceEvent,r)}}function fT({zoomPanValues:t,panOnDrag:i,onPaneContextMenu:l,onTransformChange:o,onPanZoom:r}){return u=>{t.usedRightMouseButton=!!(l&&Kv(i,t.mouseButton??0)),u.sourceEvent?.sync||o([u.transform.x,u.transform.y,u.transform.k]),r&&!u.sourceEvent?.internal&&r?.(u.sourceEvent,tc(u.transform))}}function hT({zoomPanValues:t,panOnDrag:i,panOnScroll:l,onDraggingChange:o,onPanZoomEnd:r,onPaneContextMenu:u}){return d=>{if(!d.sourceEvent?.internal&&(t.isZoomingOrPanning=!1,u&&Kv(i,t.mouseButton??0)&&!t.usedRightMouseButton&&d.sourceEvent&&u(d.sourceEvent),t.usedRightMouseButton=!1,o(!1),r)){const m=tc(d.transform);t.prevViewport=m,clearTimeout(t.timerId),t.timerId=setTimeout(()=>{r?.(d.sourceEvent,m)},l?150:0)}}}function mT({zoomActivationKeyPressed:t,zoomOnScroll:i,zoomOnPinch:l,panOnDrag:o,panOnScroll:r,zoomOnDoubleClick:u,userSelectionActive:d,noWheelClassName:m,noPanClassName:y,lib:g,connectionInProgress:p}){return v=>{const x=t||i,S=l&&v.ctrlKey,w=v.type==="wheel";if(v.button===1&&v.type==="mousedown"&&(il(v,`${g}-flow__node`)||il(v,`${g}-flow__edge`)))return!0;if(!o&&!x&&!r&&!u&&!l||d||p&&!w||il(v,m)&&w||il(v,y)&&(!w||r&&w&&!t)||!l&&v.ctrlKey&&w)return!1;if(!l&&v.type==="touchstart"&&v.touches?.length>1)return v.preventDefault(),!1;if(!x&&!r&&!S&&w||!o&&(v.type==="mousedown"||v.type==="touchstart")||Array.isArray(o)&&!o.includes(v.button)&&v.type==="mousedown")return!1;const A=Array.isArray(o)&&o.includes(v.button)||!v.button||v.button<=1;return(!v.ctrlKey||w)&&A}}function gT({domNode:t,minZoom:i,maxZoom:l,translateExtent:o,viewport:r,onPanZoom:u,onPanZoomStart:d,onPanZoomEnd:m,onDraggingChange:y}){const g={isZoomingOrPanning:!1,usedRightMouseButton:!1,prevViewport:{},mouseButton:0,timerId:void 0,panScrollTimeout:void 0,isPanScrolling:!1},p=t.getBoundingClientRect(),v=Sv().scaleExtent([i,l]).translateExtent(o),x=kt(t).call(v);R({x:r.x,y:r.y,zoom:fl(r.zoom,i,l)},[[0,0],[p.width,p.height]],o);const S=x.on("wheel.zoom"),w=x.on("dblclick.zoom");v.wheelDelta(Fv);function A(K,te){return x?new Promise(ue=>{v?.interpolate(te?.interpolate==="linear"?_o:zr).transform(Xd(x,te?.duration,te?.ease,()=>ue(!0)),K)}):Promise.resolve(!1)}function C({noWheelClassName:K,noPanClassName:te,onPaneContextMenu:ue,userSelectionActive:D,panOnScroll:Z,panOnDrag:z,panOnScrollMode:H,panOnScrollSpeed:G,preventScrolling:B,zoomOnPinch:J,zoomOnScroll:T,zoomOnDoubleClick:k,zoomActivationKeyPressed:ne,lib:ae,onTransformChange:V,connectionInProgress:se,paneClickDistance:de,selectionOnDrag:le}){D&&!g.isZoomingOrPanning&&j();const fe=Z&&!ne&&!D;v.clickDistance(le?1/0:!an(de)||de<0?0:de);const be=fe?cT({zoomPanValues:g,noWheelClassName:K,d3Selection:x,d3Zoom:v,panOnScrollMode:H,panOnScrollSpeed:G,zoomOnPinch:J,onPanZoomStart:d,onPanZoom:u,onPanZoomEnd:m}):uT({noWheelClassName:K,preventScrolling:B,d3ZoomHandler:S});if(x.on("wheel.zoom",be,{passive:!1}),!D){const ye=dT({zoomPanValues:g,onDraggingChange:y,onPanZoomStart:d});v.on("start",ye);const we=fT({zoomPanValues:g,panOnDrag:z,onPaneContextMenu:!!ue,onPanZoom:u,onTransformChange:V});v.on("zoom",we);const je=hT({zoomPanValues:g,panOnDrag:z,panOnScroll:Z,onPaneContextMenu:ue,onPanZoomEnd:m,onDraggingChange:y});v.on("end",je)}const _e=mT({zoomActivationKeyPressed:ne,panOnDrag:z,zoomOnScroll:T,panOnScroll:Z,zoomOnDoubleClick:k,zoomOnPinch:J,userSelectionActive:D,noPanClassName:te,noWheelClassName:K,lib:ae,connectionInProgress:se});v.filter(_e),k?x.on("dblclick.zoom",w):x.on("dblclick.zoom",null)}function j(){v.on("zoom",null)}async function R(K,te,ue){const D=Vd(K),Z=v?.constrain()(D,te,ue);return Z&&await A(Z),new Promise(z=>z(Z))}async function E(K,te){const ue=Vd(K);return await A(ue,te),new Promise(D=>D(ue))}function _(K){if(x){const te=Vd(K),ue=x.property("__zoom");(ue.k!==K.zoom||ue.x!==K.x||ue.y!==K.y)&&v?.transform(x,te,null,{sync:!0})}}function U(){const K=x?bv(x.node()):{x:0,y:0,k:1};return{x:K.x,y:K.y,zoom:K.k}}function M(K,te){return x?new Promise(ue=>{v?.interpolate(te?.interpolate==="linear"?_o:zr).scaleTo(Xd(x,te?.duration,te?.ease,()=>ue(!0)),K)}):Promise.resolve(!1)}function I(K,te){return x?new Promise(ue=>{v?.interpolate(te?.interpolate==="linear"?_o:zr).scaleBy(Xd(x,te?.duration,te?.ease,()=>ue(!0)),K)}):Promise.resolve(!1)}function L(K){v?.scaleExtent(K)}function $(K){v?.translateExtent(K)}function ce(K){const te=!an(K)||K<0?0:K;v?.clickDistance(te)}return{update:C,destroy:j,setViewport:E,setViewportConstrained:R,getViewport:U,scaleTo:M,scaleBy:I,setScaleExtent:L,setTranslateExtent:$,syncViewport:_,setClickDistance:ce}}var gl;(function(t){t.Line="line",t.Handle="handle"})(gl||(gl={}));function pT({width:t,prevWidth:i,height:l,prevHeight:o,affectsX:r,affectsY:u}){const d=t-i,m=l-o,y=[d>0?1:d<0?-1:0,m>0?1:m<0?-1:0];return d&&r&&(y[0]=y[0]*-1),m&&u&&(y[1]=y[1]*-1),y}function Iy(t){const i=t.includes("right")||t.includes("left"),l=t.includes("bottom")||t.includes("top"),o=t.includes("left"),r=t.includes("top");return{isHorizontal:i,isVertical:l,affectsX:o,affectsY:r}}function wa(t,i){return Math.max(0,i-t)}function Na(t,i){return Math.max(0,t-i)}function Nr(t,i,l){return Math.max(0,i-t,t-l)}function Ly(t,i){return t?!i:i}function yT(t,i,l,o,r,u,d,m){let{affectsX:y,affectsY:g}=i;const{isHorizontal:p,isVertical:v}=i,x=p&&v,{xSnapped:S,ySnapped:w}=l,{minWidth:A,maxWidth:C,minHeight:j,maxHeight:R}=o,{x:E,y:_,width:U,height:M,aspectRatio:I}=t;let L=Math.floor(p?S-t.pointerX:0),$=Math.floor(v?w-t.pointerY:0);const ce=U+(y?-L:L),K=M+(g?-$:$),te=-u[0]*U,ue=-u[1]*M;let D=Nr(ce,A,C),Z=Nr(K,j,R);if(d){let G=0,B=0;y&&L<0?G=wa(E+L+te,d[0][0]):!y&&L>0&&(G=Na(E+ce+te,d[1][0])),g&&$<0?B=wa(_+$+ue,d[0][1]):!g&&$>0&&(B=Na(_+K+ue,d[1][1])),D=Math.max(D,G),Z=Math.max(Z,B)}if(m){let G=0,B=0;y&&L>0?G=Na(E+L,m[0][0]):!y&&L<0&&(G=wa(E+ce,m[1][0])),g&&$>0?B=Na(_+$,m[0][1]):!g&&$<0&&(B=wa(_+K,m[1][1])),D=Math.max(D,G),Z=Math.max(Z,B)}if(r){if(p){const G=Nr(ce/I,j,R)*I;if(D=Math.max(D,G),d){let B=0;!y&&!g||y&&!g&&x?B=Na(_+ue+ce/I,d[1][1])*I:B=wa(_+ue+(y?L:-L)/I,d[0][1])*I,D=Math.max(D,B)}if(m){let B=0;!y&&!g||y&&!g&&x?B=wa(_+ce/I,m[1][1])*I:B=Na(_+(y?L:-L)/I,m[0][1])*I,D=Math.max(D,B)}}if(v){const G=Nr(K*I,A,C)/I;if(Z=Math.max(Z,G),d){let B=0;!y&&!g||g&&!y&&x?B=Na(E+K*I+te,d[1][0])/I:B=wa(E+(g?$:-$)*I+te,d[0][0])/I,Z=Math.max(Z,B)}if(m){let B=0;!y&&!g||g&&!y&&x?B=wa(E+K*I,m[1][0])/I:B=Na(E+(g?$:-$)*I,m[0][0])/I,Z=Math.max(Z,B)}}}$=$+($<0?Z:-Z),L=L+(L<0?D:-D),r&&(x?ce>K*I?$=(Ly(y,g)?-L:L)/I:L=(Ly(y,g)?-$:$)*I:p?($=L/I,g=y):(L=$*I,y=g));const z=y?E+L:E,H=g?_+$:_;return{width:U+(y?-L:L),height:M+(g?-$:$),x:u[0]*L*(y?-1:1)+z,y:u[1]*$*(g?-1:1)+H}}const Qv={width:0,height:0,x:0,y:0},vT={...Qv,pointerX:0,pointerY:0,aspectRatio:1};function xT(t){return[[0,0],[t.measured.width,t.measured.height]]}function bT(t,i,l){const o=i.position.x+t.position.x,r=i.position.y+t.position.y,u=t.measured.width??0,d=t.measured.height??0,m=l[0]*u,y=l[1]*d;return[[o-m,r-y],[o+u-m,r+d-y]]}function ST({domNode:t,nodeId:i,getStoreItems:l,onChange:o,onEnd:r}){const u=kt(t);let d={controlDirection:Iy("bottom-right"),boundaries:{minWidth:0,minHeight:0,maxWidth:Number.MAX_VALUE,maxHeight:Number.MAX_VALUE},resizeDirection:void 0,keepAspectRatio:!1};function m({controlPosition:g,boundaries:p,keepAspectRatio:v,resizeDirection:x,onResizeStart:S,onResize:w,onResizeEnd:A,shouldResize:C}){let j={...Qv},R={...vT};d={boundaries:p,resizeDirection:x,keepAspectRatio:v,controlDirection:Iy(g)};let E,_=null,U=[],M,I,L,$=!1;const ce=ov().on("start",K=>{const{nodeLookup:te,transform:ue,snapGrid:D,snapToGrid:Z,nodeOrigin:z,paneDomNode:H}=l();if(E=te.get(i),!E)return;_=H?.getBoundingClientRect()??null;const{xSnapped:G,ySnapped:B}=Eo(K.sourceEvent,{transform:ue,snapGrid:D,snapToGrid:Z,containerBounds:_});j={width:E.measured.width??0,height:E.measured.height??0,x:E.position.x??0,y:E.position.y??0},R={...j,pointerX:G,pointerY:B,aspectRatio:j.width/j.height},M=void 0,E.parentId&&(E.extent==="parent"||E.expandParent)&&(M=te.get(E.parentId),I=M&&E.extent==="parent"?xT(M):void 0),U=[],L=void 0;for(const[J,T]of te)if(T.parentId===i&&(U.push({id:J,position:{...T.position},extent:T.extent}),T.extent==="parent"||T.expandParent)){const k=bT(T,E,T.origin??z);L?L=[[Math.min(k[0][0],L[0][0]),Math.min(k[0][1],L[0][1])],[Math.max(k[1][0],L[1][0]),Math.max(k[1][1],L[1][1])]]:L=k}S?.(K,{...j})}).on("drag",K=>{const{transform:te,snapGrid:ue,snapToGrid:D,nodeOrigin:Z}=l(),z=Eo(K.sourceEvent,{transform:te,snapGrid:ue,snapToGrid:D,containerBounds:_}),H=[];if(!E)return;const{x:G,y:B,width:J,height:T}=j,k={},ne=E.origin??Z,{width:ae,height:V,x:se,y:de}=yT(R,d.controlDirection,z,d.boundaries,d.keepAspectRatio,ne,I,L),le=ae!==J,fe=V!==T,be=se!==G&&le,_e=de!==B&&fe;if(!be&&!_e&&!le&&!fe)return;if((be||_e||ne[0]===1||ne[1]===1)&&(k.x=be?se:j.x,k.y=_e?de:j.y,j.x=k.x,j.y=k.y,U.length>0)){const Ge=se-G,Be=de-B;for(const ut of U)ut.position={x:ut.position.x-Ge+ne[0]*(ae-J),y:ut.position.y-Be+ne[1]*(V-T)},H.push(ut)}if((le||fe)&&(k.width=le&&(!d.resizeDirection||d.resizeDirection==="horizontal")?ae:j.width,k.height=fe&&(!d.resizeDirection||d.resizeDirection==="vertical")?V:j.height,j.width=k.width,j.height=k.height),M&&E.expandParent){const Ge=ne[0]*(k.width??0);k.x&&k.x<Ge&&(j.x=Ge,R.x=R.x-(k.x-Ge));const Be=ne[1]*(k.height??0);k.y&&k.y<Be&&(j.y=Be,R.y=R.y-(k.y-Be))}const ye=pT({width:j.width,prevWidth:J,height:j.height,prevHeight:T,affectsX:d.controlDirection.affectsX,affectsY:d.controlDirection.affectsY}),we={...j,direction:ye};C?.(K,we)!==!1&&($=!0,w?.(K,we),o(k,H))}).on("end",K=>{$&&(A?.(K,{...j}),r?.({...j}),$=!1)});u.call(ce)}function y(){u.on(".drag",null)}return{update:m,destroy:y}}var $d={exports:{}},Zd={},Kd={exports:{}},Fd={};var By;function wT(){if(By)return Fd;By=1;var t=Ho();function i(v,x){return v===x&&(v!==0||1/v===1/x)||v!==v&&x!==x}var l=typeof Object.is=="function"?Object.is:i,o=t.useState,r=t.useEffect,u=t.useLayoutEffect,d=t.useDebugValue;function m(v,x){var S=x(),w=o({inst:{value:S,getSnapshot:x}}),A=w[0].inst,C=w[1];return u(function(){A.value=S,A.getSnapshot=x,y(A)&&C({inst:A})},[v,S,x]),r(function(){return y(A)&&C({inst:A}),v(function(){y(A)&&C({inst:A})})},[v]),d(S),S}function y(v){var x=v.getSnapshot;v=v.value;try{var S=x();return!l(v,S)}catch{return!0}}function g(v,x){return x()}var p=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?g:m;return Fd.useSyncExternalStore=t.useSyncExternalStore!==void 0?t.useSyncExternalStore:p,Fd}var ky;function NT(){return ky||(ky=1,Kd.exports=wT()),Kd.exports}var Uy;function _T(){if(Uy)return Zd;Uy=1;var t=Ho(),i=NT();function l(g,p){return g===p&&(g!==0||1/g===1/p)||g!==g&&p!==p}var o=typeof Object.is=="function"?Object.is:l,r=i.useSyncExternalStore,u=t.useRef,d=t.useEffect,m=t.useMemo,y=t.useDebugValue;return Zd.useSyncExternalStoreWithSelector=function(g,p,v,x,S){var w=u(null);if(w.current===null){var A={hasValue:!1,value:null};w.current=A}else A=w.current;w=m(function(){function j(M){if(!R){if(R=!0,E=M,M=x(M),S!==void 0&&A.hasValue){var I=A.value;if(S(I,M))return _=I}return _=M}if(I=_,o(E,M))return I;var L=x(M);return S!==void 0&&S(I,L)?(E=M,I):(E=M,_=L)}var R=!1,E,_,U=v===void 0?null:v;return[function(){return j(p())},U===null?void 0:function(){return j(U())}]},[p,v,x,S]);var C=r(g,w[0],w[1]);return d(function(){A.hasValue=!0,A.value=C},[C]),y(C),C},Zd}var Gy;function ET(){return Gy||(Gy=1,$d.exports=_T()),$d.exports}var CT=ET();const TT=y0(CT),AT={},qy=t=>{let i;const l=new Set,o=(p,v)=>{const x=typeof p=="function"?p(i):p;if(!Object.is(x,i)){const S=i;i=v??(typeof x!="object"||x===null)?x:Object.assign({},i,x),l.forEach(w=>w(i,S))}},r=()=>i,y={setState:o,getState:r,getInitialState:()=>g,subscribe:p=>(l.add(p),()=>l.delete(p)),destroy:()=>{(AT?"production":void 0)!=="production"&&console.warn("[DEPRECATED] The `destroy` method will be unsupported in a future version. Instead use unsubscribe function returned by subscribe. Everything will be garbage-collected if store is garbage-collected."),l.clear()}},g=i=t(o,r,y);return y},MT=t=>t?qy(t):qy,{useDebugValue:jT}=yo,{useSyncExternalStoreWithSelector:zT}=TT,RT=t=>t;function Pv(t,i=RT,l){const o=zT(t.subscribe,t.getState,t.getServerState||t.getInitialState,i,l);return jT(o),o}const Yy=(t,i)=>{const l=MT(t),o=(r,u=i)=>Pv(l,r,u);return Object.assign(o,l),o},DT=(t,i)=>t?Yy(t,i):Yy;function Fe(t,i){if(Object.is(t,i))return!0;if(typeof t!="object"||t===null||typeof i!="object"||i===null)return!1;if(t instanceof Map&&i instanceof Map){if(t.size!==i.size)return!1;for(const[o,r]of t)if(!Object.is(r,i.get(o)))return!1;return!0}if(t instanceof Set&&i instanceof Set){if(t.size!==i.size)return!1;for(const o of t)if(!i.has(o))return!1;return!0}const l=Object.keys(t);if(l.length!==Object.keys(i).length)return!1;for(const o of l)if(!Object.prototype.hasOwnProperty.call(i,o)||!Object.is(t[o],i[o]))return!1;return!0}v0();const nc=Y.createContext(null),OT=nc.Provider,Jv=pn.error001();function Oe(t,i){const l=Y.useContext(nc);if(l===null)throw new Error(Jv);return Pv(l,t,i)}function Qe(){const t=Y.useContext(nc);if(t===null)throw new Error(Jv);return Y.useMemo(()=>({getState:t.getState,setState:t.setState,subscribe:t.subscribe}),[t])}const Vy={display:"none"},HT={position:"absolute",width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)",clipPath:"inset(100%)"},Wv="react-flow__node-desc",ex="react-flow__edge-desc",IT="react-flow__aria-live",LT=t=>t.ariaLiveMessage,BT=t=>t.ariaLabelConfig;function kT({rfId:t}){const i=Oe(LT);return h.jsx("div",{id:`${IT}-${t}`,"aria-live":"assertive","aria-atomic":"true",style:HT,children:i})}function UT({rfId:t,disableKeyboardA11y:i}){const l=Oe(BT);return h.jsxs(h.Fragment,{children:[h.jsx("div",{id:`${Wv}-${t}`,style:Vy,children:i?l["node.a11yDescription.default"]:l["node.a11yDescription.keyboardDisabled"]}),h.jsx("div",{id:`${ex}-${t}`,style:Vy,children:l["edge.a11yDescription.default"]}),!i&&h.jsx(kT,{rfId:t})]})}const qo=Y.forwardRef(({position:t="top-left",children:i,className:l,style:o,...r},u)=>{const d=`${t}`.split("-");return h.jsx("div",{className:st(["react-flow__panel",l,...d]),style:o,ref:u,...r,children:i})});qo.displayName="Panel";function GT({proOptions:t,position:i="bottom-right"}){return t?.hideAttribution?null:h.jsx(qo,{position:i,className:"react-flow__attribution","data-message":"Please only hide this attribution when you are subscribed to React Flow Pro: https://pro.reactflow.dev",children:h.jsx("a",{href:"https://reactflow.dev",target:"_blank",rel:"noopener noreferrer","aria-label":"React Flow attribution",children:"React Flow"})})}const qT=t=>{const i=[],l=[];for(const[,o]of t.nodeLookup)o.selected&&i.push(o.internals.userNode);for(const[,o]of t.edgeLookup)o.selected&&l.push(o);return{selectedNodes:i,selectedEdges:l}},_r=t=>t.id;function YT(t,i){return Fe(t.selectedNodes.map(_r),i.selectedNodes.map(_r))&&Fe(t.selectedEdges.map(_r),i.selectedEdges.map(_r))}function VT({onSelectionChange:t}){const i=Qe(),{selectedNodes:l,selectedEdges:o}=Oe(qT,YT);return Y.useEffect(()=>{const r={nodes:l,edges:o};t?.(r),i.getState().onSelectionChangeHandlers.forEach(u=>u(r))},[l,o,t]),null}const XT=t=>!!t.onSelectionChangeHandlers;function $T({onSelectionChange:t}){const i=Oe(XT);return t||i?h.jsx(VT,{onSelectionChange:t}):null}const pf=typeof window<"u"?Y.useLayoutEffect:Y.useEffect,tx=[0,0],ZT={x:0,y:0,zoom:1},KT=["nodes","edges","defaultNodes","defaultEdges","onConnect","onConnectStart","onConnectEnd","onClickConnectStart","onClickConnectEnd","nodesDraggable","autoPanOnNodeFocus","nodesConnectable","nodesFocusable","edgesFocusable","edgesReconnectable","elevateNodesOnSelect","elevateEdgesOnSelect","minZoom","maxZoom","nodeExtent","onNodesChange","onEdgesChange","elementsSelectable","connectionMode","snapGrid","snapToGrid","translateExtent","connectOnClick","defaultEdgeOptions","fitView","fitViewOptions","onNodesDelete","onEdgesDelete","onDelete","onNodeDrag","onNodeDragStart","onNodeDragStop","onSelectionDrag","onSelectionDragStart","onSelectionDragStop","onMoveStart","onMove","onMoveEnd","noPanClassName","nodeOrigin","autoPanOnConnect","autoPanOnNodeDrag","onError","connectionRadius","isValidConnection","selectNodesOnDrag","nodeDragThreshold","connectionDragThreshold","onBeforeDelete","debug","autoPanSpeed","ariaLabelConfig","zIndexMode"],Xy=[...KT,"rfId"],FT=t=>({setNodes:t.setNodes,setEdges:t.setEdges,setMinZoom:t.setMinZoom,setMaxZoom:t.setMaxZoom,setTranslateExtent:t.setTranslateExtent,setNodeExtent:t.setNodeExtent,reset:t.reset,setDefaultNodesAndEdges:t.setDefaultNodesAndEdges}),$y={translateExtent:jo,nodeOrigin:tx,minZoom:.5,maxZoom:2,elementsSelectable:!0,noPanClassName:"nopan",rfId:"1"};function QT(t){const{setNodes:i,setEdges:l,setMinZoom:o,setMaxZoom:r,setTranslateExtent:u,setNodeExtent:d,reset:m,setDefaultNodesAndEdges:y}=Oe(FT,Fe),g=Qe();pf(()=>(y(t.defaultNodes,t.defaultEdges),()=>{p.current=$y,m()}),[]);const p=Y.useRef($y);return pf(()=>{for(const v of Xy){const x=t[v],S=p.current[v];x!==S&&(typeof t[v]>"u"||(v==="nodes"?i(x):v==="edges"?l(x):v==="minZoom"?o(x):v==="maxZoom"?r(x):v==="translateExtent"?u(x):v==="nodeExtent"?d(x):v==="ariaLabelConfig"?g.setState({ariaLabelConfig:DC(x)}):v==="fitView"?g.setState({fitViewQueued:x}):v==="fitViewOptions"?g.setState({fitViewOptions:x}):g.setState({[v]:x})))}p.current=t},Xy.map(v=>t[v])),null}function Zy(){return typeof window>"u"||!window.matchMedia?null:window.matchMedia("(prefers-color-scheme: dark)")}function PT(t){const[i,l]=Y.useState(t==="system"?null:t);return Y.useEffect(()=>{if(t!=="system"){l(t);return}const o=Zy(),r=()=>l(o?.matches?"dark":"light");return r(),o?.addEventListener("change",r),()=>{o?.removeEventListener("change",r)}},[t]),i!==null?i:Zy()?.matches?"dark":"light"}const Ky=typeof document<"u"?document:null;function Oo(t=null,i={target:Ky,actInsideInputWithModifier:!0}){const[l,o]=Y.useState(!1),r=Y.useRef(!1),u=Y.useRef(new Set([])),[d,m]=Y.useMemo(()=>{if(t!==null){const g=(Array.isArray(t)?t:[t]).filter(v=>typeof v=="string").map(v=>v.replace("+",`
|
|
16
|
+
`).replace(`
|
|
17
|
+
|
|
18
|
+
`,`
|
|
19
|
+
+`).split(`
|
|
20
|
+
`)),p=g.reduce((v,x)=>v.concat(...x),[]);return[g,p]}return[[],[]]},[t]);return Y.useEffect(()=>{const y=i?.target??Ky,g=i?.actInsideInputWithModifier??!0;if(t!==null){const p=S=>{if(r.current=S.ctrlKey||S.metaKey||S.shiftKey||S.altKey,(!r.current||r.current&&!g)&&Ov(S))return!1;const A=Qy(S.code,m);if(u.current.add(S[A]),Fy(d,u.current,!1)){const C=S.composedPath?.()?.[0]||S.target,j=C?.nodeName==="BUTTON"||C?.nodeName==="A";i.preventDefault!==!1&&(r.current||!j)&&S.preventDefault(),o(!0)}},v=S=>{const w=Qy(S.code,m);Fy(d,u.current,!0)?(o(!1),u.current.clear()):u.current.delete(S[w]),S.key==="Meta"&&u.current.clear(),r.current=!1},x=()=>{u.current.clear(),o(!1)};return y?.addEventListener("keydown",p),y?.addEventListener("keyup",v),window.addEventListener("blur",x),window.addEventListener("contextmenu",x),()=>{y?.removeEventListener("keydown",p),y?.removeEventListener("keyup",v),window.removeEventListener("blur",x),window.removeEventListener("contextmenu",x)}}},[t,o]),l}function Fy(t,i,l){return t.filter(o=>l||o.length===i.size).some(o=>o.every(r=>i.has(r)))}function Qy(t,i){return i.includes(t)?"code":"key"}const JT=()=>{const t=Qe();return Y.useMemo(()=>({zoomIn:i=>{const{panZoom:l}=t.getState();return l?l.scaleBy(1.2,i):Promise.resolve(!1)},zoomOut:i=>{const{panZoom:l}=t.getState();return l?l.scaleBy(1/1.2,i):Promise.resolve(!1)},zoomTo:(i,l)=>{const{panZoom:o}=t.getState();return o?o.scaleTo(i,l):Promise.resolve(!1)},getZoom:()=>t.getState().transform[2],setViewport:async(i,l)=>{const{transform:[o,r,u],panZoom:d}=t.getState();return d?(await d.setViewport({x:i.x??o,y:i.y??r,zoom:i.zoom??u},l),Promise.resolve(!0)):Promise.resolve(!1)},getViewport:()=>{const[i,l,o]=t.getState().transform;return{x:i,y:l,zoom:o}},setCenter:async(i,l,o)=>t.getState().setCenter(i,l,o),fitBounds:async(i,l)=>{const{width:o,height:r,minZoom:u,maxZoom:d,panZoom:m}=t.getState(),y=Mf(i,o,r,u,d,l?.padding??.1);return m?(await m.setViewport(y,{duration:l?.duration,ease:l?.ease,interpolate:l?.interpolate}),Promise.resolve(!0)):Promise.resolve(!1)},screenToFlowPosition:(i,l={})=>{const{transform:o,snapGrid:r,snapToGrid:u,domNode:d}=t.getState();if(!d)return i;const{x:m,y}=d.getBoundingClientRect(),g={x:i.x-m,y:i.y-y},p=l.snapGrid??r,v=l.snapToGrid??u;return Go(g,o,v,p)},flowToScreenPosition:i=>{const{transform:l,domNode:o}=t.getState();if(!o)return i;const{x:r,y:u}=o.getBoundingClientRect(),d=$r(i,l);return{x:d.x+r,y:d.y+u}}}),[])};function nx(t,i){const l=[],o=new Map,r=[];for(const u of t)if(u.type==="add"){r.push(u);continue}else if(u.type==="remove"||u.type==="replace")o.set(u.id,[u]);else{const d=o.get(u.id);d?d.push(u):o.set(u.id,[u])}for(const u of i){const d=o.get(u.id);if(!d){l.push(u);continue}if(d[0].type==="remove")continue;if(d[0].type==="replace"){l.push({...d[0].item});continue}const m={...u};for(const y of d)WT(y,m);l.push(m)}return r.length&&r.forEach(u=>{u.index!==void 0?l.splice(u.index,0,{...u.item}):l.push({...u.item})}),l}function WT(t,i){switch(t.type){case"select":{i.selected=t.selected;break}case"position":{typeof t.position<"u"&&(i.position=t.position),typeof t.dragging<"u"&&(i.dragging=t.dragging);break}case"dimensions":{typeof t.dimensions<"u"&&(i.measured={...t.dimensions},t.setAttributes&&((t.setAttributes===!0||t.setAttributes==="width")&&(i.width=t.dimensions.width),(t.setAttributes===!0||t.setAttributes==="height")&&(i.height=t.dimensions.height))),typeof t.resizing=="boolean"&&(i.resizing=t.resizing);break}}}function ax(t,i){return nx(t,i)}function ix(t,i){return nx(t,i)}function Wa(t,i){return{id:t,type:"select",selected:i}}function ll(t,i=new Set,l=!1){const o=[];for(const[r,u]of t){const d=i.has(r);!(u.selected===void 0&&!d)&&u.selected!==d&&(l&&(u.selected=d),o.push(Wa(u.id,d)))}return o}function Py({items:t=[],lookup:i}){const l=[],o=new Map(t.map(r=>[r.id,r]));for(const[r,u]of t.entries()){const d=i.get(u.id),m=d?.internals?.userNode??d;m!==void 0&&m!==u&&l.push({id:u.id,item:u,type:"replace"}),m===void 0&&l.push({item:u,type:"add",index:r})}for(const[r]of i)o.get(r)===void 0&&l.push({id:r,type:"remove"});return l}function Jy(t){return{id:t.id,type:"remove"}}const Wy=t=>NC(t),eA=t=>Cv(t);function lx(t){return Y.forwardRef(t)}function e0(t){const[i,l]=Y.useState(BigInt(0)),[o]=Y.useState(()=>tA(()=>l(r=>r+BigInt(1))));return pf(()=>{const r=o.get();r.length&&(t(r),o.reset())},[i]),o}function tA(t){let i=[];return{get:()=>i,reset:()=>{i=[]},push:l=>{i.push(l),t()}}}const ox=Y.createContext(null);function nA({children:t}){const i=Qe(),l=Y.useCallback(m=>{const{nodes:y=[],setNodes:g,hasDefaultNodes:p,onNodesChange:v,nodeLookup:x,fitViewQueued:S,onNodesChangeMiddlewareMap:w}=i.getState();let A=y;for(const j of m)A=typeof j=="function"?j(A):j;let C=Py({items:A,lookup:x});for(const j of w.values())C=j(C);p&&g(A),C.length>0?v?.(C):S&&window.requestAnimationFrame(()=>{const{fitViewQueued:j,nodes:R,setNodes:E}=i.getState();j&&E(R)})},[]),o=e0(l),r=Y.useCallback(m=>{const{edges:y=[],setEdges:g,hasDefaultEdges:p,onEdgesChange:v,edgeLookup:x}=i.getState();let S=y;for(const w of m)S=typeof w=="function"?w(S):w;p?g(S):v&&v(Py({items:S,lookup:x}))},[]),u=e0(r),d=Y.useMemo(()=>({nodeQueue:o,edgeQueue:u}),[]);return h.jsx(ox.Provider,{value:d,children:t})}function aA(){const t=Y.useContext(ox);if(!t)throw new Error("useBatchContext must be used within a BatchProvider");return t}const iA=t=>!!t.panZoom;function ac(){const t=JT(),i=Qe(),l=aA(),o=Oe(iA),r=Y.useMemo(()=>{const u=v=>i.getState().nodeLookup.get(v),d=v=>{l.nodeQueue.push(v)},m=v=>{l.edgeQueue.push(v)},y=v=>{const{nodeLookup:x,nodeOrigin:S}=i.getState(),w=Wy(v)?v:x.get(v.id),A=w.parentId?Rv(w.position,w.measured,w.parentId,x,S):w.position,C={...w,position:A,width:w.measured?.width??w.width,height:w.measured?.height??w.height};return hl(C)},g=(v,x,S={replace:!1})=>{d(w=>w.map(A=>{if(A.id===v){const C=typeof x=="function"?x(A):x;return S.replace&&Wy(C)?C:{...A,...C}}return A}))},p=(v,x,S={replace:!1})=>{m(w=>w.map(A=>{if(A.id===v){const C=typeof x=="function"?x(A):x;return S.replace&&eA(C)?C:{...A,...C}}return A}))};return{getNodes:()=>i.getState().nodes.map(v=>({...v})),getNode:v=>u(v)?.internals.userNode,getInternalNode:u,getEdges:()=>{const{edges:v=[]}=i.getState();return v.map(x=>({...x}))},getEdge:v=>i.getState().edgeLookup.get(v),setNodes:d,setEdges:m,addNodes:v=>{const x=Array.isArray(v)?v:[v];l.nodeQueue.push(S=>[...S,...x])},addEdges:v=>{const x=Array.isArray(v)?v:[v];l.edgeQueue.push(S=>[...S,...x])},toObject:()=>{const{nodes:v=[],edges:x=[],transform:S}=i.getState(),[w,A,C]=S;return{nodes:v.map(j=>({...j})),edges:x.map(j=>({...j})),viewport:{x:w,y:A,zoom:C}}},deleteElements:async({nodes:v=[],edges:x=[]})=>{const{nodes:S,edges:w,onNodesDelete:A,onEdgesDelete:C,triggerNodeChanges:j,triggerEdgeChanges:R,onDelete:E,onBeforeDelete:_}=i.getState(),{nodes:U,edges:M}=await AC({nodesToRemove:v,edgesToRemove:x,nodes:S,edges:w,onBeforeDelete:_}),I=M.length>0,L=U.length>0;if(I){const $=M.map(Jy);C?.(M),R($)}if(L){const $=U.map(Jy);A?.(U),j($)}return(L||I)&&E?.({nodes:U,edges:M}),{deletedNodes:U,deletedEdges:M}},getIntersectingNodes:(v,x=!0,S)=>{const w=Ey(v),A=w?v:y(v),C=S!==void 0;return A?(S||i.getState().nodes).filter(j=>{const R=i.getState().nodeLookup.get(j.id);if(R&&!w&&(j.id===v.id||!R.internals.positionAbsolute))return!1;const E=hl(C?j:R),_=Ro(E,A);return x&&_>0||_>=E.width*E.height||_>=A.width*A.height}):[]},isNodeIntersecting:(v,x,S=!0)=>{const A=Ey(v)?v:y(v);if(!A)return!1;const C=Ro(A,x);return S&&C>0||C>=x.width*x.height||C>=A.width*A.height},updateNode:g,updateNodeData:(v,x,S={replace:!1})=>{g(v,w=>{const A=typeof x=="function"?x(w):x;return S.replace?{...w,data:A}:{...w,data:{...w.data,...A}}},S)},updateEdge:p,updateEdgeData:(v,x,S={replace:!1})=>{p(v,w=>{const A=typeof x=="function"?x(w):x;return S.replace?{...w,data:A}:{...w,data:{...w.data,...A}}},S)},getNodesBounds:v=>{const{nodeLookup:x,nodeOrigin:S}=i.getState();return _C(v,{nodeLookup:x,nodeOrigin:S})},getHandleConnections:({type:v,id:x,nodeId:S})=>Array.from(i.getState().connectionLookup.get(`${S}-${v}${x?`-${x}`:""}`)?.values()??[]),getNodeConnections:({type:v,handleId:x,nodeId:S})=>Array.from(i.getState().connectionLookup.get(`${S}${v?x?`-${v}-${x}`:`-${v}`:""}`)?.values()??[]),fitView:async v=>{const x=i.getState().fitViewResolver??RC();return i.setState({fitViewQueued:!0,fitViewOptions:v,fitViewResolver:x}),l.nodeQueue.push(S=>[...S]),x.promise}}},[]);return Y.useMemo(()=>({...r,...t,viewportInitialized:o}),[o])}const t0=t=>t.selected,lA=typeof window<"u"?window:void 0;function oA({deleteKeyCode:t,multiSelectionKeyCode:i}){const l=Qe(),{deleteElements:o}=ac(),r=Oo(t,{actInsideInputWithModifier:!1}),u=Oo(i,{target:lA});Y.useEffect(()=>{if(r){const{edges:d,nodes:m}=l.getState();o({nodes:m.filter(t0),edges:d.filter(t0)}),l.setState({nodesSelectionActive:!1})}},[r]),Y.useEffect(()=>{l.setState({multiSelectionActive:u})},[u])}function sA(t){const i=Qe();Y.useEffect(()=>{const l=()=>{if(!t.current||!(t.current.checkVisibility?.()??!0))return!1;const o=jf(t.current);(o.height===0||o.width===0)&&i.getState().onError?.("004",pn.error004()),i.setState({width:o.width||500,height:o.height||500})};if(t.current){l(),window.addEventListener("resize",l);const o=new ResizeObserver(()=>l());return o.observe(t.current),()=>{window.removeEventListener("resize",l),o&&t.current&&o.unobserve(t.current)}}},[])}const ic={position:"absolute",width:"100%",height:"100%",top:0,left:0},rA=t=>({userSelectionActive:t.userSelectionActive,lib:t.lib,connectionInProgress:t.connection.inProgress});function cA({onPaneContextMenu:t,zoomOnScroll:i=!0,zoomOnPinch:l=!0,panOnScroll:o=!1,panOnScrollSpeed:r=.5,panOnScrollMode:u=ii.Free,zoomOnDoubleClick:d=!0,panOnDrag:m=!0,defaultViewport:y,translateExtent:g,minZoom:p,maxZoom:v,zoomActivationKeyCode:x,preventScrolling:S=!0,children:w,noWheelClassName:A,noPanClassName:C,onViewportChange:j,isControlledViewport:R,paneClickDistance:E,selectionOnDrag:_}){const U=Qe(),M=Y.useRef(null),{userSelectionActive:I,lib:L,connectionInProgress:$}=Oe(rA,Fe),ce=Oo(x),K=Y.useRef();sA(M);const te=Y.useCallback(ue=>{j?.({x:ue[0],y:ue[1],zoom:ue[2]}),R||U.setState({transform:ue})},[j,R]);return Y.useEffect(()=>{if(M.current){K.current=gT({domNode:M.current,minZoom:p,maxZoom:v,translateExtent:g,viewport:y,onDraggingChange:z=>U.setState(H=>H.paneDragging===z?H:{paneDragging:z}),onPanZoomStart:(z,H)=>{const{onViewportChangeStart:G,onMoveStart:B}=U.getState();B?.(z,H),G?.(H)},onPanZoom:(z,H)=>{const{onViewportChange:G,onMove:B}=U.getState();B?.(z,H),G?.(H)},onPanZoomEnd:(z,H)=>{const{onViewportChangeEnd:G,onMoveEnd:B}=U.getState();B?.(z,H),G?.(H)}});const{x:ue,y:D,zoom:Z}=K.current.getViewport();return U.setState({panZoom:K.current,transform:[ue,D,Z],domNode:M.current.closest(".react-flow")}),()=>{K.current?.destroy()}}},[]),Y.useEffect(()=>{K.current?.update({onPaneContextMenu:t,zoomOnScroll:i,zoomOnPinch:l,panOnScroll:o,panOnScrollSpeed:r,panOnScrollMode:u,zoomOnDoubleClick:d,panOnDrag:m,zoomActivationKeyPressed:ce,preventScrolling:S,noPanClassName:C,userSelectionActive:I,noWheelClassName:A,lib:L,onTransformChange:te,connectionInProgress:$,selectionOnDrag:_,paneClickDistance:E})},[t,i,l,o,r,u,d,m,ce,S,C,I,A,L,te,$,_,E]),h.jsx("div",{className:"react-flow__renderer",ref:M,style:ic,children:w})}const uA=t=>({userSelectionActive:t.userSelectionActive,userSelectionRect:t.userSelectionRect});function dA(){const{userSelectionActive:t,userSelectionRect:i}=Oe(uA,Fe);return t&&i?h.jsx("div",{className:"react-flow__selection react-flow__container",style:{width:i.width,height:i.height,transform:`translate(${i.x}px, ${i.y}px)`}}):null}const Qd=(t,i)=>l=>{l.target===i.current&&t?.(l)},fA=t=>({userSelectionActive:t.userSelectionActive,elementsSelectable:t.elementsSelectable,connectionInProgress:t.connection.inProgress,dragging:t.paneDragging});function hA({isSelecting:t,selectionKeyPressed:i,selectionMode:l=zo.Full,panOnDrag:o,paneClickDistance:r,selectionOnDrag:u,onSelectionStart:d,onSelectionEnd:m,onPaneClick:y,onPaneContextMenu:g,onPaneScroll:p,onPaneMouseEnter:v,onPaneMouseMove:x,onPaneMouseLeave:S,children:w}){const A=Qe(),{userSelectionActive:C,elementsSelectable:j,dragging:R,connectionInProgress:E}=Oe(fA,Fe),_=j&&(t||C),U=Y.useRef(null),M=Y.useRef(),I=Y.useRef(new Set),L=Y.useRef(new Set),$=Y.useRef(!1),ce=G=>{if($.current||E){$.current=!1;return}y?.(G),A.getState().resetSelectedElements(),A.setState({nodesSelectionActive:!1})},K=G=>{if(Array.isArray(o)&&o?.includes(2)){G.preventDefault();return}g?.(G)},te=p?G=>p(G):void 0,ue=G=>{$.current&&(G.stopPropagation(),$.current=!1)},D=G=>{const{domNode:B}=A.getState();if(M.current=B?.getBoundingClientRect(),!M.current)return;const J=G.target===U.current;if(!J&&!!G.target.closest(".nokey")||!t||!(u&&J||i)||G.button!==0||!G.isPrimary)return;G.target?.setPointerCapture?.(G.pointerId),$.current=!1;const{x:ne,y:ae}=ln(G.nativeEvent,M.current);A.setState({userSelectionRect:{width:0,height:0,startX:ne,startY:ae,x:ne,y:ae}}),J||(G.stopPropagation(),G.preventDefault())},Z=G=>{const{userSelectionRect:B,transform:J,nodeLookup:T,edgeLookup:k,connectionLookup:ne,triggerNodeChanges:ae,triggerEdgeChanges:V,defaultEdgeOptions:se,resetSelectedElements:de}=A.getState();if(!M.current||!B)return;const{x:le,y:fe}=ln(G.nativeEvent,M.current),{startX:be,startY:_e}=B;if(!$.current){const Be=i?0:r;if(Math.hypot(le-be,fe-_e)<=Be)return;de(),d?.(G)}$.current=!0;const ye={startX:be,startY:_e,x:le<be?le:be,y:fe<_e?fe:_e,width:Math.abs(le-be),height:Math.abs(fe-_e)},we=I.current,je=L.current;I.current=new Set(Af(T,ye,J,l===zo.Partial,!0).map(Be=>Be.id)),L.current=new Set;const Ge=se?.selectable??!0;for(const Be of I.current){const ut=ne.get(Be);if(ut)for(const{edgeId:Ft}of ut.values()){const zt=k.get(Ft);zt&&(zt.selectable??Ge)&&L.current.add(Ft)}}if(!Cy(we,I.current)){const Be=ll(T,I.current,!0);ae(Be)}if(!Cy(je,L.current)){const Be=ll(k,L.current);V(Be)}A.setState({userSelectionRect:ye,userSelectionActive:!0,nodesSelectionActive:!1})},z=G=>{G.button===0&&(G.target?.releasePointerCapture?.(G.pointerId),!C&&G.target===U.current&&A.getState().userSelectionRect&&ce?.(G),A.setState({userSelectionActive:!1,userSelectionRect:null}),$.current&&(m?.(G),A.setState({nodesSelectionActive:I.current.size>0})))},H=o===!0||Array.isArray(o)&&o.includes(0);return h.jsxs("div",{className:st(["react-flow__pane",{draggable:H,dragging:R,selection:t}]),onClick:_?void 0:Qd(ce,U),onContextMenu:Qd(K,U),onWheel:Qd(te,U),onPointerEnter:_?void 0:v,onPointerMove:_?Z:x,onPointerUp:_?z:void 0,onPointerDownCapture:_?D:void 0,onClickCapture:_?ue:void 0,onPointerLeave:S,ref:U,style:ic,children:[w,h.jsx(dA,{})]})}function yf({id:t,store:i,unselect:l=!1,nodeRef:o}){const{addSelectedNodes:r,unselectNodesAndEdges:u,multiSelectionActive:d,nodeLookup:m,onError:y}=i.getState(),g=m.get(t);if(!g){y?.("012",pn.error012(t));return}i.setState({nodesSelectionActive:!1}),g.selected?(l||g.selected&&d)&&(u({nodes:[g],edges:[]}),requestAnimationFrame(()=>o?.current?.blur())):r([t])}function sx({nodeRef:t,disabled:i=!1,noDragClassName:l,handleSelector:o,nodeId:r,isSelectable:u,nodeClickDistance:d}){const m=Qe(),[y,g]=Y.useState(!1),p=Y.useRef();return Y.useEffect(()=>{p.current=tT({getStoreItems:()=>m.getState(),onNodeMouseDown:v=>{yf({id:v,store:m,nodeRef:t})},onDragStart:()=>{g(!0)},onDragStop:()=>{g(!1)}})},[]),Y.useEffect(()=>{if(!(i||!t.current||!p.current))return p.current.update({noDragClassName:l,handleSelector:o,domNode:t.current,isSelectable:u,nodeId:r,nodeClickDistance:d}),()=>{p.current?.destroy()}},[l,o,i,u,t,r,d]),y}const mA=t=>i=>i.selected&&(i.draggable||t&&typeof i.draggable>"u");function rx(){const t=Qe();return Y.useCallback(l=>{const{nodeExtent:o,snapToGrid:r,snapGrid:u,nodesDraggable:d,onError:m,updateNodePositions:y,nodeLookup:g,nodeOrigin:p}=t.getState(),v=new Map,x=mA(d),S=r?u[0]:5,w=r?u[1]:5,A=l.direction.x*S*l.factor,C=l.direction.y*w*l.factor;for(const[,j]of g){if(!x(j))continue;let R={x:j.internals.positionAbsolute.x+A,y:j.internals.positionAbsolute.y+C};r&&(R=Uo(R,u));const{position:E,positionAbsolute:_}=Tv({nodeId:j.id,nextPosition:R,nodeLookup:g,nodeExtent:o,nodeOrigin:p,onError:m});j.position=E,j.internals.positionAbsolute=_,v.set(j.id,j)}y(v)},[])}const If=Y.createContext(null),gA=If.Provider;If.Consumer;const cx=()=>Y.useContext(If),pA=t=>({connectOnClick:t.connectOnClick,noPanClassName:t.noPanClassName,rfId:t.rfId}),yA=(t,i,l)=>o=>{const{connectionClickStartHandle:r,connectionMode:u,connection:d}=o,{fromHandle:m,toHandle:y,isValid:g}=d,p=y?.nodeId===t&&y?.id===i&&y?.type===l;return{connectingFrom:m?.nodeId===t&&m?.id===i&&m?.type===l,connectingTo:p,clickConnecting:r?.nodeId===t&&r?.id===i&&r?.type===l,isPossibleEndHandle:u===si.Strict?m?.type!==l:t!==m?.nodeId||i!==m?.id,connectionInProcess:!!m,clickConnectionInProcess:!!r,valid:p&&g}};function vA({type:t="source",position:i=ge.Top,isValidConnection:l,isConnectable:o=!0,isConnectableStart:r=!0,isConnectableEnd:u=!0,id:d,onConnect:m,children:y,className:g,onMouseDown:p,onTouchStart:v,...x},S){const w=d||null,A=t==="target",C=Qe(),j=cx(),{connectOnClick:R,noPanClassName:E,rfId:_}=Oe(pA,Fe),{connectingFrom:U,connectingTo:M,clickConnecting:I,isPossibleEndHandle:L,connectionInProcess:$,clickConnectionInProcess:ce,valid:K}=Oe(yA(j,w,t),Fe);j||C.getState().onError?.("010",pn.error010());const te=Z=>{const{defaultEdgeOptions:z,onConnect:H,hasDefaultEdges:G}=C.getState(),B={...z,...Z};if(G){const{edges:J,setEdges:T}=C.getState();T(kC(B,J))}H?.(B),m?.(B)},ue=Z=>{if(!j)return;const z=Hv(Z.nativeEvent);if(r&&(z&&Z.button===0||!z)){const H=C.getState();gf.onPointerDown(Z.nativeEvent,{handleDomNode:Z.currentTarget,autoPanOnConnect:H.autoPanOnConnect,connectionMode:H.connectionMode,connectionRadius:H.connectionRadius,domNode:H.domNode,nodeLookup:H.nodeLookup,lib:H.lib,isTarget:A,handleId:w,nodeId:j,flowId:H.rfId,panBy:H.panBy,cancelConnection:H.cancelConnection,onConnectStart:H.onConnectStart,onConnectEnd:(...G)=>C.getState().onConnectEnd?.(...G),updateConnection:H.updateConnection,onConnect:te,isValidConnection:l||((...G)=>C.getState().isValidConnection?.(...G)??!0),getTransform:()=>C.getState().transform,getFromHandle:()=>C.getState().connection.fromHandle,autoPanSpeed:H.autoPanSpeed,dragThreshold:H.connectionDragThreshold})}z?p?.(Z):v?.(Z)},D=Z=>{const{onClickConnectStart:z,onClickConnectEnd:H,connectionClickStartHandle:G,connectionMode:B,isValidConnection:J,lib:T,rfId:k,nodeLookup:ne,connection:ae}=C.getState();if(!j||!G&&!r)return;if(!G){z?.(Z.nativeEvent,{nodeId:j,handleId:w,handleType:t}),C.setState({connectionClickStartHandle:{nodeId:j,type:t,id:w}});return}const V=Dv(Z.target),se=l||J,{connection:de,isValid:le}=gf.isValid(Z.nativeEvent,{handle:{nodeId:j,id:w,type:t},connectionMode:B,fromNodeId:G.nodeId,fromHandleId:G.id||null,fromType:G.type,isValidConnection:se,flowId:k,doc:V,lib:T,nodeLookup:ne});le&&de&&te(de);const fe=structuredClone(ae);delete fe.inProgress,fe.toPosition=fe.toHandle?fe.toHandle.position:null,H?.(Z,fe),C.setState({connectionClickStartHandle:null})};return h.jsx("div",{"data-handleid":w,"data-nodeid":j,"data-handlepos":i,"data-id":`${_}-${j}-${w}-${t}`,className:st(["react-flow__handle",`react-flow__handle-${i}`,"nodrag",E,g,{source:!A,target:A,connectable:o,connectablestart:r,connectableend:u,clickconnecting:I,connectingfrom:U,connectingto:M,valid:K,connectionindicator:o&&(!$||L)&&($||ce?u:r)}]),onMouseDown:ue,onTouchStart:ue,onClick:R?D:void 0,ref:S,...x,children:y})}const pl=Y.memo(lx(vA));function xA({data:t,isConnectable:i,sourcePosition:l=ge.Bottom}){return h.jsxs(h.Fragment,{children:[t?.label,h.jsx(pl,{type:"source",position:l,isConnectable:i})]})}function bA({data:t,isConnectable:i,targetPosition:l=ge.Top,sourcePosition:o=ge.Bottom}){return h.jsxs(h.Fragment,{children:[h.jsx(pl,{type:"target",position:l,isConnectable:i}),t?.label,h.jsx(pl,{type:"source",position:o,isConnectable:i})]})}function SA(){return null}function wA({data:t,isConnectable:i,targetPosition:l=ge.Top}){return h.jsxs(h.Fragment,{children:[h.jsx(pl,{type:"target",position:l,isConnectable:i}),t?.label]})}const Zr={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}},n0={input:xA,default:bA,output:wA,group:SA};function NA(t){return t.internals.handleBounds===void 0?{width:t.width??t.initialWidth??t.style?.width,height:t.height??t.initialHeight??t.style?.height}:{width:t.width??t.style?.width,height:t.height??t.style?.height}}const _A=t=>{const{width:i,height:l,x:o,y:r}=ko(t.nodeLookup,{filter:u=>!!u.selected});return{width:an(i)?i:null,height:an(l)?l:null,userSelectionActive:t.userSelectionActive,transformString:`translate(${t.transform[0]}px,${t.transform[1]}px) scale(${t.transform[2]}) translate(${o}px,${r}px)`}};function EA({onSelectionContextMenu:t,noPanClassName:i,disableKeyboardA11y:l}){const o=Qe(),{width:r,height:u,transformString:d,userSelectionActive:m}=Oe(_A,Fe),y=rx(),g=Y.useRef(null);Y.useEffect(()=>{l||g.current?.focus({preventScroll:!0})},[l]);const p=!m&&r!==null&&u!==null;if(sx({nodeRef:g,disabled:!p}),!p)return null;const v=t?S=>{const w=o.getState().nodes.filter(A=>A.selected);t(S,w)}:void 0,x=S=>{Object.prototype.hasOwnProperty.call(Zr,S.key)&&(S.preventDefault(),y({direction:Zr[S.key],factor:S.shiftKey?4:1}))};return h.jsx("div",{className:st(["react-flow__nodesselection","react-flow__container",i]),style:{transform:d},children:h.jsx("div",{ref:g,className:"react-flow__nodesselection-rect",onContextMenu:v,tabIndex:l?void 0:-1,onKeyDown:l?void 0:x,style:{width:r,height:u}})})}const a0=typeof window<"u"?window:void 0,CA=t=>({nodesSelectionActive:t.nodesSelectionActive,userSelectionActive:t.userSelectionActive});function ux({children:t,onPaneClick:i,onPaneMouseEnter:l,onPaneMouseMove:o,onPaneMouseLeave:r,onPaneContextMenu:u,onPaneScroll:d,paneClickDistance:m,deleteKeyCode:y,selectionKeyCode:g,selectionOnDrag:p,selectionMode:v,onSelectionStart:x,onSelectionEnd:S,multiSelectionKeyCode:w,panActivationKeyCode:A,zoomActivationKeyCode:C,elementsSelectable:j,zoomOnScroll:R,zoomOnPinch:E,panOnScroll:_,panOnScrollSpeed:U,panOnScrollMode:M,zoomOnDoubleClick:I,panOnDrag:L,defaultViewport:$,translateExtent:ce,minZoom:K,maxZoom:te,preventScrolling:ue,onSelectionContextMenu:D,noWheelClassName:Z,noPanClassName:z,disableKeyboardA11y:H,onViewportChange:G,isControlledViewport:B}){const{nodesSelectionActive:J,userSelectionActive:T}=Oe(CA,Fe),k=Oo(g,{target:a0}),ne=Oo(A,{target:a0}),ae=ne||L,V=ne||_,se=p&&ae!==!0,de=k||T||se;return oA({deleteKeyCode:y,multiSelectionKeyCode:w}),h.jsx(cA,{onPaneContextMenu:u,elementsSelectable:j,zoomOnScroll:R,zoomOnPinch:E,panOnScroll:V,panOnScrollSpeed:U,panOnScrollMode:M,zoomOnDoubleClick:I,panOnDrag:!k&&ae,defaultViewport:$,translateExtent:ce,minZoom:K,maxZoom:te,zoomActivationKeyCode:C,preventScrolling:ue,noWheelClassName:Z,noPanClassName:z,onViewportChange:G,isControlledViewport:B,paneClickDistance:m,selectionOnDrag:se,children:h.jsxs(hA,{onSelectionStart:x,onSelectionEnd:S,onPaneClick:i,onPaneMouseEnter:l,onPaneMouseMove:o,onPaneMouseLeave:r,onPaneContextMenu:u,onPaneScroll:d,panOnDrag:ae,isSelecting:!!de,selectionMode:v,selectionKeyPressed:k,paneClickDistance:m,selectionOnDrag:se,children:[t,J&&h.jsx(EA,{onSelectionContextMenu:D,noPanClassName:z,disableKeyboardA11y:H})]})})}ux.displayName="FlowRenderer";const TA=Y.memo(ux),AA=t=>i=>t?Af(i.nodeLookup,{x:0,y:0,width:i.width,height:i.height},i.transform,!0).map(l=>l.id):Array.from(i.nodeLookup.keys());function MA(t){return Oe(Y.useCallback(AA(t),[t]),Fe)}const jA=t=>t.updateNodeInternals;function zA(){const t=Oe(jA),[i]=Y.useState(()=>typeof ResizeObserver>"u"?null:new ResizeObserver(l=>{const o=new Map;l.forEach(r=>{const u=r.target.getAttribute("data-id");o.set(u,{id:u,nodeElement:r.target,force:!0})}),t(o)}));return Y.useEffect(()=>()=>{i?.disconnect()},[i]),i}function RA({node:t,nodeType:i,hasDimensions:l,resizeObserver:o}){const r=Qe(),u=Y.useRef(null),d=Y.useRef(null),m=Y.useRef(t.sourcePosition),y=Y.useRef(t.targetPosition),g=Y.useRef(i),p=l&&!!t.internals.handleBounds;return Y.useEffect(()=>{u.current&&!t.hidden&&(!p||d.current!==u.current)&&(d.current&&o?.unobserve(d.current),o?.observe(u.current),d.current=u.current)},[p,t.hidden]),Y.useEffect(()=>()=>{d.current&&(o?.unobserve(d.current),d.current=null)},[]),Y.useEffect(()=>{if(u.current){const v=g.current!==i,x=m.current!==t.sourcePosition,S=y.current!==t.targetPosition;(v||x||S)&&(g.current=i,m.current=t.sourcePosition,y.current=t.targetPosition,r.getState().updateNodeInternals(new Map([[t.id,{id:t.id,nodeElement:u.current,force:!0}]])))}},[t.id,i,t.sourcePosition,t.targetPosition]),u}function DA({id:t,onClick:i,onMouseEnter:l,onMouseMove:o,onMouseLeave:r,onContextMenu:u,onDoubleClick:d,nodesDraggable:m,elementsSelectable:y,nodesConnectable:g,nodesFocusable:p,resizeObserver:v,noDragClassName:x,noPanClassName:S,disableKeyboardA11y:w,rfId:A,nodeTypes:C,nodeClickDistance:j,onError:R}){const{node:E,internals:_,isParent:U}=Oe(le=>{const fe=le.nodeLookup.get(t),be=le.parentLookup.has(t);return{node:fe,internals:fe.internals,isParent:be}},Fe);let M=E.type||"default",I=C?.[M]||n0[M];I===void 0&&(R?.("003",pn.error003(M)),M="default",I=C?.default||n0.default);const L=!!(E.draggable||m&&typeof E.draggable>"u"),$=!!(E.selectable||y&&typeof E.selectable>"u"),ce=!!(E.connectable||g&&typeof E.connectable>"u"),K=!!(E.focusable||p&&typeof E.focusable>"u"),te=Qe(),ue=zv(E),D=RA({node:E,nodeType:M,hasDimensions:ue,resizeObserver:v}),Z=sx({nodeRef:D,disabled:E.hidden||!L,noDragClassName:x,handleSelector:E.dragHandle,nodeId:t,isSelectable:$,nodeClickDistance:j}),z=rx();if(E.hidden)return null;const H=Xn(E),G=NA(E),B=$||L||i||l||o||r,J=l?le=>l(le,{..._.userNode}):void 0,T=o?le=>o(le,{..._.userNode}):void 0,k=r?le=>r(le,{..._.userNode}):void 0,ne=u?le=>u(le,{..._.userNode}):void 0,ae=d?le=>d(le,{..._.userNode}):void 0,V=le=>{const{selectNodesOnDrag:fe,nodeDragThreshold:be}=te.getState();$&&(!fe||!L||be>0)&&yf({id:t,store:te,nodeRef:D}),i&&i(le,{..._.userNode})},se=le=>{if(!(Ov(le.nativeEvent)||w)){if(wv.includes(le.key)&&$){const fe=le.key==="Escape";yf({id:t,store:te,unselect:fe,nodeRef:D})}else if(L&&E.selected&&Object.prototype.hasOwnProperty.call(Zr,le.key)){le.preventDefault();const{ariaLabelConfig:fe}=te.getState();te.setState({ariaLiveMessage:fe["node.a11yDescription.ariaLiveMessage"]({direction:le.key.replace("Arrow","").toLowerCase(),x:~~_.positionAbsolute.x,y:~~_.positionAbsolute.y})}),z({direction:Zr[le.key],factor:le.shiftKey?4:1})}}},de=()=>{if(w||!D.current?.matches(":focus-visible"))return;const{transform:le,width:fe,height:be,autoPanOnNodeFocus:_e,setCenter:ye}=te.getState();if(!_e)return;Af(new Map([[t,E]]),{x:0,y:0,width:fe,height:be},le,!0).length>0||ye(E.position.x+H.width/2,E.position.y+H.height/2,{zoom:le[2]})};return h.jsx("div",{className:st(["react-flow__node",`react-flow__node-${M}`,{[S]:L},E.className,{selected:E.selected,selectable:$,parent:U,draggable:L,dragging:Z}]),ref:D,style:{zIndex:_.z,transform:`translate(${_.positionAbsolute.x}px,${_.positionAbsolute.y}px)`,pointerEvents:B?"all":"none",visibility:ue?"visible":"hidden",...E.style,...G},"data-id":t,"data-testid":`rf__node-${t}`,onMouseEnter:J,onMouseMove:T,onMouseLeave:k,onContextMenu:ne,onClick:V,onDoubleClick:ae,onKeyDown:K?se:void 0,tabIndex:K?0:void 0,onFocus:K?de:void 0,role:E.ariaRole??(K?"group":void 0),"aria-roledescription":"node","aria-describedby":w?void 0:`${Wv}-${A}`,"aria-label":E.ariaLabel,...E.domAttributes,children:h.jsx(gA,{value:t,children:h.jsx(I,{id:t,data:E.data,type:M,positionAbsoluteX:_.positionAbsolute.x,positionAbsoluteY:_.positionAbsolute.y,selected:E.selected??!1,selectable:$,draggable:L,deletable:E.deletable??!0,isConnectable:ce,sourcePosition:E.sourcePosition,targetPosition:E.targetPosition,dragging:Z,dragHandle:E.dragHandle,zIndex:_.z,parentId:E.parentId,...H})})})}var OA=Y.memo(DA);const HA=t=>({nodesDraggable:t.nodesDraggable,nodesConnectable:t.nodesConnectable,nodesFocusable:t.nodesFocusable,elementsSelectable:t.elementsSelectable,onError:t.onError});function dx(t){const{nodesDraggable:i,nodesConnectable:l,nodesFocusable:o,elementsSelectable:r,onError:u}=Oe(HA,Fe),d=MA(t.onlyRenderVisibleElements),m=zA();return h.jsx("div",{className:"react-flow__nodes",style:ic,children:d.map(y=>h.jsx(OA,{id:y,nodeTypes:t.nodeTypes,nodeExtent:t.nodeExtent,onClick:t.onNodeClick,onMouseEnter:t.onNodeMouseEnter,onMouseMove:t.onNodeMouseMove,onMouseLeave:t.onNodeMouseLeave,onContextMenu:t.onNodeContextMenu,onDoubleClick:t.onNodeDoubleClick,noDragClassName:t.noDragClassName,noPanClassName:t.noPanClassName,rfId:t.rfId,disableKeyboardA11y:t.disableKeyboardA11y,resizeObserver:m,nodesDraggable:i,nodesConnectable:l,nodesFocusable:o,elementsSelectable:r,nodeClickDistance:t.nodeClickDistance,onError:u},y))})}dx.displayName="NodeRenderer";const IA=Y.memo(dx);function LA(t){return Oe(Y.useCallback(l=>{if(!t)return l.edges.map(r=>r.id);const o=[];if(l.width&&l.height)for(const r of l.edges){const u=l.nodeLookup.get(r.source),d=l.nodeLookup.get(r.target);u&&d&&IC({sourceNode:u,targetNode:d,width:l.width,height:l.height,transform:l.transform})&&o.push(r.id)}return o},[t]),Fe)}const BA=({color:t="none",strokeWidth:i=1})=>{const l={strokeWidth:i,...t&&{stroke:t}};return h.jsx("polyline",{className:"arrow",style:l,strokeLinecap:"round",fill:"none",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4"})},kA=({color:t="none",strokeWidth:i=1})=>{const l={strokeWidth:i,...t&&{stroke:t,fill:t}};return h.jsx("polyline",{className:"arrowclosed",style:l,strokeLinecap:"round",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4 -5,-4"})},i0={[Vr.Arrow]:BA,[Vr.ArrowClosed]:kA};function UA(t){const i=Qe();return Y.useMemo(()=>Object.prototype.hasOwnProperty.call(i0,t)?i0[t]:(i.getState().onError?.("009",pn.error009(t)),null),[t])}const GA=({id:t,type:i,color:l,width:o=12.5,height:r=12.5,markerUnits:u="strokeWidth",strokeWidth:d,orient:m="auto-start-reverse"})=>{const y=UA(i);return y?h.jsx("marker",{className:"react-flow__arrowhead",id:t,markerWidth:`${o}`,markerHeight:`${r}`,viewBox:"-10 -10 20 20",markerUnits:u,orient:m,refX:"0",refY:"0",children:h.jsx(y,{color:l,strokeWidth:d})}):null},fx=({defaultColor:t,rfId:i})=>{const l=Oe(u=>u.edges),o=Oe(u=>u.defaultEdgeOptions),r=Y.useMemo(()=>VC(l,{id:i,defaultColor:t,defaultMarkerStart:o?.markerStart,defaultMarkerEnd:o?.markerEnd}),[l,o,i,t]);return r.length?h.jsx("svg",{className:"react-flow__marker","aria-hidden":"true",children:h.jsx("defs",{children:r.map(u=>h.jsx(GA,{id:u.id,type:u.type,color:u.color,width:u.width,height:u.height,markerUnits:u.markerUnits,strokeWidth:u.strokeWidth,orient:u.orient},u.id))})}):null};fx.displayName="MarkerDefinitions";var qA=Y.memo(fx);function hx({x:t,y:i,label:l,labelStyle:o,labelShowBg:r=!0,labelBgStyle:u,labelBgPadding:d=[2,4],labelBgBorderRadius:m=2,children:y,className:g,...p}){const[v,x]=Y.useState({x:1,y:0,width:0,height:0}),S=st(["react-flow__edge-textwrapper",g]),w=Y.useRef(null);return Y.useEffect(()=>{if(w.current){const A=w.current.getBBox();x({x:A.x,y:A.y,width:A.width,height:A.height})}},[l]),l?h.jsxs("g",{transform:`translate(${t-v.width/2} ${i-v.height/2})`,className:S,visibility:v.width?"visible":"hidden",...p,children:[r&&h.jsx("rect",{width:v.width+2*d[0],x:-d[0],y:-d[1],height:v.height+2*d[1],className:"react-flow__edge-textbg",style:u,rx:m,ry:m}),h.jsx("text",{className:"react-flow__edge-text",y:v.height/2,dy:"0.3em",ref:w,style:o,children:l}),y]}):null}hx.displayName="EdgeText";const YA=Y.memo(hx);function lc({path:t,labelX:i,labelY:l,label:o,labelStyle:r,labelShowBg:u,labelBgStyle:d,labelBgPadding:m,labelBgBorderRadius:y,interactionWidth:g=20,...p}){return h.jsxs(h.Fragment,{children:[h.jsx("path",{...p,d:t,fill:"none",className:st(["react-flow__edge-path",p.className])}),g?h.jsx("path",{d:t,fill:"none",strokeOpacity:0,strokeWidth:g,className:"react-flow__edge-interaction"}):null,o&&an(i)&&an(l)?h.jsx(YA,{x:i,y:l,label:o,labelStyle:r,labelShowBg:u,labelBgStyle:d,labelBgPadding:m,labelBgBorderRadius:y}):null]})}function l0({pos:t,x1:i,y1:l,x2:o,y2:r}){return t===ge.Left||t===ge.Right?[.5*(i+o),l]:[i,.5*(l+r)]}function mx({sourceX:t,sourceY:i,sourcePosition:l=ge.Bottom,targetX:o,targetY:r,targetPosition:u=ge.Top}){const[d,m]=l0({pos:l,x1:t,y1:i,x2:o,y2:r}),[y,g]=l0({pos:u,x1:o,y1:r,x2:t,y2:i}),[p,v,x,S]=Iv({sourceX:t,sourceY:i,targetX:o,targetY:r,sourceControlX:d,sourceControlY:m,targetControlX:y,targetControlY:g});return[`M${t},${i} C${d},${m} ${y},${g} ${o},${r}`,p,v,x,S]}function gx(t){return Y.memo(({id:i,sourceX:l,sourceY:o,targetX:r,targetY:u,sourcePosition:d,targetPosition:m,label:y,labelStyle:g,labelShowBg:p,labelBgStyle:v,labelBgPadding:x,labelBgBorderRadius:S,style:w,markerEnd:A,markerStart:C,interactionWidth:j})=>{const[R,E,_]=mx({sourceX:l,sourceY:o,sourcePosition:d,targetX:r,targetY:u,targetPosition:m}),U=t.isInternal?void 0:i;return h.jsx(lc,{id:U,path:R,labelX:E,labelY:_,label:y,labelStyle:g,labelShowBg:p,labelBgStyle:v,labelBgPadding:x,labelBgBorderRadius:S,style:w,markerEnd:A,markerStart:C,interactionWidth:j})})}const VA=gx({isInternal:!1}),px=gx({isInternal:!0});VA.displayName="SimpleBezierEdge";px.displayName="SimpleBezierEdgeInternal";function yx(t){return Y.memo(({id:i,sourceX:l,sourceY:o,targetX:r,targetY:u,label:d,labelStyle:m,labelShowBg:y,labelBgStyle:g,labelBgPadding:p,labelBgBorderRadius:v,style:x,sourcePosition:S=ge.Bottom,targetPosition:w=ge.Top,markerEnd:A,markerStart:C,pathOptions:j,interactionWidth:R})=>{const[E,_,U]=ff({sourceX:l,sourceY:o,sourcePosition:S,targetX:r,targetY:u,targetPosition:w,borderRadius:j?.borderRadius,offset:j?.offset,stepPosition:j?.stepPosition}),M=t.isInternal?void 0:i;return h.jsx(lc,{id:M,path:E,labelX:_,labelY:U,label:d,labelStyle:m,labelShowBg:y,labelBgStyle:g,labelBgPadding:p,labelBgBorderRadius:v,style:x,markerEnd:A,markerStart:C,interactionWidth:R})})}const vx=yx({isInternal:!1}),xx=yx({isInternal:!0});vx.displayName="SmoothStepEdge";xx.displayName="SmoothStepEdgeInternal";function bx(t){return Y.memo(({id:i,...l})=>{const o=t.isInternal?void 0:i;return h.jsx(vx,{...l,id:o,pathOptions:Y.useMemo(()=>({borderRadius:0,offset:l.pathOptions?.offset}),[l.pathOptions?.offset])})})}const XA=bx({isInternal:!1}),Sx=bx({isInternal:!0});XA.displayName="StepEdge";Sx.displayName="StepEdgeInternal";function wx(t){return Y.memo(({id:i,sourceX:l,sourceY:o,targetX:r,targetY:u,label:d,labelStyle:m,labelShowBg:y,labelBgStyle:g,labelBgPadding:p,labelBgBorderRadius:v,style:x,markerEnd:S,markerStart:w,interactionWidth:A})=>{const[C,j,R]=kv({sourceX:l,sourceY:o,targetX:r,targetY:u}),E=t.isInternal?void 0:i;return h.jsx(lc,{id:E,path:C,labelX:j,labelY:R,label:d,labelStyle:m,labelShowBg:y,labelBgStyle:g,labelBgPadding:p,labelBgBorderRadius:v,style:x,markerEnd:S,markerStart:w,interactionWidth:A})})}const $A=wx({isInternal:!1}),Nx=wx({isInternal:!0});$A.displayName="StraightEdge";Nx.displayName="StraightEdgeInternal";function _x(t){return Y.memo(({id:i,sourceX:l,sourceY:o,targetX:r,targetY:u,sourcePosition:d=ge.Bottom,targetPosition:m=ge.Top,label:y,labelStyle:g,labelShowBg:p,labelBgStyle:v,labelBgPadding:x,labelBgBorderRadius:S,style:w,markerEnd:A,markerStart:C,pathOptions:j,interactionWidth:R})=>{const[E,_,U]=Lv({sourceX:l,sourceY:o,sourcePosition:d,targetX:r,targetY:u,targetPosition:m,curvature:j?.curvature}),M=t.isInternal?void 0:i;return h.jsx(lc,{id:M,path:E,labelX:_,labelY:U,label:y,labelStyle:g,labelShowBg:p,labelBgStyle:v,labelBgPadding:x,labelBgBorderRadius:S,style:w,markerEnd:A,markerStart:C,interactionWidth:R})})}const ZA=_x({isInternal:!1}),Ex=_x({isInternal:!0});ZA.displayName="BezierEdge";Ex.displayName="BezierEdgeInternal";const o0={default:Ex,straight:Nx,step:Sx,smoothstep:xx,simplebezier:px},s0={sourceX:null,sourceY:null,targetX:null,targetY:null,sourcePosition:null,targetPosition:null},KA=(t,i,l)=>l===ge.Left?t-i:l===ge.Right?t+i:t,FA=(t,i,l)=>l===ge.Top?t-i:l===ge.Bottom?t+i:t,r0="react-flow__edgeupdater";function c0({position:t,centerX:i,centerY:l,radius:o=10,onMouseDown:r,onMouseEnter:u,onMouseOut:d,type:m}){return h.jsx("circle",{onMouseDown:r,onMouseEnter:u,onMouseOut:d,className:st([r0,`${r0}-${m}`]),cx:KA(i,o,t),cy:FA(l,o,t),r:o,stroke:"transparent",fill:"transparent"})}function QA({isReconnectable:t,reconnectRadius:i,edge:l,sourceX:o,sourceY:r,targetX:u,targetY:d,sourcePosition:m,targetPosition:y,onReconnect:g,onReconnectStart:p,onReconnectEnd:v,setReconnecting:x,setUpdateHover:S}){const w=Qe(),A=(_,U)=>{if(_.button!==0)return;const{autoPanOnConnect:M,domNode:I,connectionMode:L,connectionRadius:$,lib:ce,onConnectStart:K,cancelConnection:te,nodeLookup:ue,rfId:D,panBy:Z,updateConnection:z}=w.getState(),H=U.type==="target",G=(T,k)=>{x(!1),v?.(T,l,U.type,k)},B=T=>g?.(l,T),J=(T,k)=>{x(!0),p?.(_,l,U.type),K?.(T,k)};gf.onPointerDown(_.nativeEvent,{autoPanOnConnect:M,connectionMode:L,connectionRadius:$,domNode:I,handleId:U.id,nodeId:U.nodeId,nodeLookup:ue,isTarget:H,edgeUpdaterType:U.type,lib:ce,flowId:D,cancelConnection:te,panBy:Z,isValidConnection:(...T)=>w.getState().isValidConnection?.(...T)??!0,onConnect:B,onConnectStart:J,onConnectEnd:(...T)=>w.getState().onConnectEnd?.(...T),onReconnectEnd:G,updateConnection:z,getTransform:()=>w.getState().transform,getFromHandle:()=>w.getState().connection.fromHandle,dragThreshold:w.getState().connectionDragThreshold,handleDomNode:_.currentTarget})},C=_=>A(_,{nodeId:l.target,id:l.targetHandle??null,type:"target"}),j=_=>A(_,{nodeId:l.source,id:l.sourceHandle??null,type:"source"}),R=()=>S(!0),E=()=>S(!1);return h.jsxs(h.Fragment,{children:[(t===!0||t==="source")&&h.jsx(c0,{position:m,centerX:o,centerY:r,radius:i,onMouseDown:C,onMouseEnter:R,onMouseOut:E,type:"source"}),(t===!0||t==="target")&&h.jsx(c0,{position:y,centerX:u,centerY:d,radius:i,onMouseDown:j,onMouseEnter:R,onMouseOut:E,type:"target"})]})}function PA({id:t,edgesFocusable:i,edgesReconnectable:l,elementsSelectable:o,onClick:r,onDoubleClick:u,onContextMenu:d,onMouseEnter:m,onMouseMove:y,onMouseLeave:g,reconnectRadius:p,onReconnect:v,onReconnectStart:x,onReconnectEnd:S,rfId:w,edgeTypes:A,noPanClassName:C,onError:j,disableKeyboardA11y:R}){let E=Oe(ye=>ye.edgeLookup.get(t));const _=Oe(ye=>ye.defaultEdgeOptions);E=_?{..._,...E}:E;let U=E.type||"default",M=A?.[U]||o0[U];M===void 0&&(j?.("011",pn.error011(U)),U="default",M=A?.default||o0.default);const I=!!(E.focusable||i&&typeof E.focusable>"u"),L=typeof v<"u"&&(E.reconnectable||l&&typeof E.reconnectable>"u"),$=!!(E.selectable||o&&typeof E.selectable>"u"),ce=Y.useRef(null),[K,te]=Y.useState(!1),[ue,D]=Y.useState(!1),Z=Qe(),{zIndex:z,sourceX:H,sourceY:G,targetX:B,targetY:J,sourcePosition:T,targetPosition:k}=Oe(Y.useCallback(ye=>{const we=ye.nodeLookup.get(E.source),je=ye.nodeLookup.get(E.target);if(!we||!je)return{zIndex:E.zIndex,...s0};const Ge=YC({id:t,sourceNode:we,targetNode:je,sourceHandle:E.sourceHandle||null,targetHandle:E.targetHandle||null,connectionMode:ye.connectionMode,onError:j});return{zIndex:HC({selected:E.selected,zIndex:E.zIndex,sourceNode:we,targetNode:je,elevateOnSelect:ye.elevateEdgesOnSelect,zIndexMode:ye.zIndexMode}),...Ge||s0}},[E.source,E.target,E.sourceHandle,E.targetHandle,E.selected,E.zIndex]),Fe),ne=Y.useMemo(()=>E.markerStart?`url('#${hf(E.markerStart,w)}')`:void 0,[E.markerStart,w]),ae=Y.useMemo(()=>E.markerEnd?`url('#${hf(E.markerEnd,w)}')`:void 0,[E.markerEnd,w]);if(E.hidden||H===null||G===null||B===null||J===null)return null;const V=ye=>{const{addSelectedEdges:we,unselectNodesAndEdges:je,multiSelectionActive:Ge}=Z.getState();$&&(Z.setState({nodesSelectionActive:!1}),E.selected&&Ge?(je({nodes:[],edges:[E]}),ce.current?.blur()):we([t])),r&&r(ye,E)},se=u?ye=>{u(ye,{...E})}:void 0,de=d?ye=>{d(ye,{...E})}:void 0,le=m?ye=>{m(ye,{...E})}:void 0,fe=y?ye=>{y(ye,{...E})}:void 0,be=g?ye=>{g(ye,{...E})}:void 0,_e=ye=>{if(!R&&wv.includes(ye.key)&&$){const{unselectNodesAndEdges:we,addSelectedEdges:je}=Z.getState();ye.key==="Escape"?(ce.current?.blur(),we({edges:[E]})):je([t])}};return h.jsx("svg",{style:{zIndex:z},children:h.jsxs("g",{className:st(["react-flow__edge",`react-flow__edge-${U}`,E.className,C,{selected:E.selected,animated:E.animated,inactive:!$&&!r,updating:K,selectable:$}]),onClick:V,onDoubleClick:se,onContextMenu:de,onMouseEnter:le,onMouseMove:fe,onMouseLeave:be,onKeyDown:I?_e:void 0,tabIndex:I?0:void 0,role:E.ariaRole??(I?"group":"img"),"aria-roledescription":"edge","data-id":t,"data-testid":`rf__edge-${t}`,"aria-label":E.ariaLabel===null?void 0:E.ariaLabel||`Edge from ${E.source} to ${E.target}`,"aria-describedby":I?`${ex}-${w}`:void 0,ref:ce,...E.domAttributes,children:[!ue&&h.jsx(M,{id:t,source:E.source,target:E.target,type:E.type,selected:E.selected,animated:E.animated,selectable:$,deletable:E.deletable??!0,label:E.label,labelStyle:E.labelStyle,labelShowBg:E.labelShowBg,labelBgStyle:E.labelBgStyle,labelBgPadding:E.labelBgPadding,labelBgBorderRadius:E.labelBgBorderRadius,sourceX:H,sourceY:G,targetX:B,targetY:J,sourcePosition:T,targetPosition:k,data:E.data,style:E.style,sourceHandleId:E.sourceHandle,targetHandleId:E.targetHandle,markerStart:ne,markerEnd:ae,pathOptions:"pathOptions"in E?E.pathOptions:void 0,interactionWidth:E.interactionWidth}),L&&h.jsx(QA,{edge:E,isReconnectable:L,reconnectRadius:p,onReconnect:v,onReconnectStart:x,onReconnectEnd:S,sourceX:H,sourceY:G,targetX:B,targetY:J,sourcePosition:T,targetPosition:k,setUpdateHover:te,setReconnecting:D})]})})}var JA=Y.memo(PA);const WA=t=>({edgesFocusable:t.edgesFocusable,edgesReconnectable:t.edgesReconnectable,elementsSelectable:t.elementsSelectable,connectionMode:t.connectionMode,onError:t.onError});function Cx({defaultMarkerColor:t,onlyRenderVisibleElements:i,rfId:l,edgeTypes:o,noPanClassName:r,onReconnect:u,onEdgeContextMenu:d,onEdgeMouseEnter:m,onEdgeMouseMove:y,onEdgeMouseLeave:g,onEdgeClick:p,reconnectRadius:v,onEdgeDoubleClick:x,onReconnectStart:S,onReconnectEnd:w,disableKeyboardA11y:A}){const{edgesFocusable:C,edgesReconnectable:j,elementsSelectable:R,onError:E}=Oe(WA,Fe),_=LA(i);return h.jsxs("div",{className:"react-flow__edges",children:[h.jsx(qA,{defaultColor:t,rfId:l}),_.map(U=>h.jsx(JA,{id:U,edgesFocusable:C,edgesReconnectable:j,elementsSelectable:R,noPanClassName:r,onReconnect:u,onContextMenu:d,onMouseEnter:m,onMouseMove:y,onMouseLeave:g,onClick:p,reconnectRadius:v,onDoubleClick:x,onReconnectStart:S,onReconnectEnd:w,rfId:l,onError:E,edgeTypes:o,disableKeyboardA11y:A},U))]})}Cx.displayName="EdgeRenderer";const eM=Y.memo(Cx),tM=t=>`translate(${t.transform[0]}px,${t.transform[1]}px) scale(${t.transform[2]})`;function nM({children:t}){const i=Oe(tM);return h.jsx("div",{className:"react-flow__viewport xyflow__viewport react-flow__container",style:{transform:i},children:t})}function aM(t){const i=ac(),l=Y.useRef(!1);Y.useEffect(()=>{!l.current&&i.viewportInitialized&&t&&(setTimeout(()=>t(i),1),l.current=!0)},[t,i.viewportInitialized])}const iM=t=>t.panZoom?.syncViewport;function lM(t){const i=Oe(iM),l=Qe();return Y.useEffect(()=>{t&&(i?.(t),l.setState({transform:[t.x,t.y,t.zoom]}))},[t,i]),null}function oM(t){return t.connection.inProgress?{...t.connection,to:Go(t.connection.to,t.transform)}:{...t.connection}}function sM(t){return oM}function rM(t){const i=sM();return Oe(i,Fe)}const cM=t=>({nodesConnectable:t.nodesConnectable,isValid:t.connection.isValid,inProgress:t.connection.inProgress,width:t.width,height:t.height});function uM({containerStyle:t,style:i,type:l,component:o}){const{nodesConnectable:r,width:u,height:d,isValid:m,inProgress:y}=Oe(cM,Fe);return!(u&&r&&y)?null:h.jsx("svg",{style:t,width:u,height:d,className:"react-flow__connectionline react-flow__container",children:h.jsx("g",{className:st(["react-flow__connection",Ev(m)]),children:h.jsx(Tx,{style:i,type:l,CustomComponent:o,isValid:m})})})}const Tx=({style:t,type:i=Ea.Bezier,CustomComponent:l,isValid:o})=>{const{inProgress:r,from:u,fromNode:d,fromHandle:m,fromPosition:y,to:g,toNode:p,toHandle:v,toPosition:x,pointer:S}=rM();if(!r)return;if(l)return h.jsx(l,{connectionLineType:i,connectionLineStyle:t,fromNode:d,fromHandle:m,fromX:u.x,fromY:u.y,toX:g.x,toY:g.y,fromPosition:y,toPosition:x,connectionStatus:Ev(o),toNode:p,toHandle:v,pointer:S});let w="";const A={sourceX:u.x,sourceY:u.y,sourcePosition:y,targetX:g.x,targetY:g.y,targetPosition:x};switch(i){case Ea.Bezier:[w]=Lv(A);break;case Ea.SimpleBezier:[w]=mx(A);break;case Ea.Step:[w]=ff({...A,borderRadius:0});break;case Ea.SmoothStep:[w]=ff(A);break;default:[w]=kv(A)}return h.jsx("path",{d:w,fill:"none",className:"react-flow__connection-path",style:t})};Tx.displayName="ConnectionLine";const dM={};function u0(t=dM){Y.useRef(t),Qe(),Y.useEffect(()=>{},[t])}function fM(){Qe(),Y.useRef(!1),Y.useEffect(()=>{},[])}function Ax({nodeTypes:t,edgeTypes:i,onInit:l,onNodeClick:o,onEdgeClick:r,onNodeDoubleClick:u,onEdgeDoubleClick:d,onNodeMouseEnter:m,onNodeMouseMove:y,onNodeMouseLeave:g,onNodeContextMenu:p,onSelectionContextMenu:v,onSelectionStart:x,onSelectionEnd:S,connectionLineType:w,connectionLineStyle:A,connectionLineComponent:C,connectionLineContainerStyle:j,selectionKeyCode:R,selectionOnDrag:E,selectionMode:_,multiSelectionKeyCode:U,panActivationKeyCode:M,zoomActivationKeyCode:I,deleteKeyCode:L,onlyRenderVisibleElements:$,elementsSelectable:ce,defaultViewport:K,translateExtent:te,minZoom:ue,maxZoom:D,preventScrolling:Z,defaultMarkerColor:z,zoomOnScroll:H,zoomOnPinch:G,panOnScroll:B,panOnScrollSpeed:J,panOnScrollMode:T,zoomOnDoubleClick:k,panOnDrag:ne,onPaneClick:ae,onPaneMouseEnter:V,onPaneMouseMove:se,onPaneMouseLeave:de,onPaneScroll:le,onPaneContextMenu:fe,paneClickDistance:be,nodeClickDistance:_e,onEdgeContextMenu:ye,onEdgeMouseEnter:we,onEdgeMouseMove:je,onEdgeMouseLeave:Ge,reconnectRadius:Be,onReconnect:ut,onReconnectStart:Ft,onReconnectEnd:zt,noDragClassName:Qt,noWheelClassName:vn,noPanClassName:Ta,disableKeyboardA11y:Aa,nodeExtent:ft,rfId:di,viewport:xn,onViewportChange:$n}){return u0(t),u0(i),fM(),aM(l),lM(xn),h.jsx(TA,{onPaneClick:ae,onPaneMouseEnter:V,onPaneMouseMove:se,onPaneMouseLeave:de,onPaneContextMenu:fe,onPaneScroll:le,paneClickDistance:be,deleteKeyCode:L,selectionKeyCode:R,selectionOnDrag:E,selectionMode:_,onSelectionStart:x,onSelectionEnd:S,multiSelectionKeyCode:U,panActivationKeyCode:M,zoomActivationKeyCode:I,elementsSelectable:ce,zoomOnScroll:H,zoomOnPinch:G,zoomOnDoubleClick:k,panOnScroll:B,panOnScrollSpeed:J,panOnScrollMode:T,panOnDrag:ne,defaultViewport:K,translateExtent:te,minZoom:ue,maxZoom:D,onSelectionContextMenu:v,preventScrolling:Z,noDragClassName:Qt,noWheelClassName:vn,noPanClassName:Ta,disableKeyboardA11y:Aa,onViewportChange:$n,isControlledViewport:!!xn,children:h.jsxs(nM,{children:[h.jsx(eM,{edgeTypes:i,onEdgeClick:r,onEdgeDoubleClick:d,onReconnect:ut,onReconnectStart:Ft,onReconnectEnd:zt,onlyRenderVisibleElements:$,onEdgeContextMenu:ye,onEdgeMouseEnter:we,onEdgeMouseMove:je,onEdgeMouseLeave:Ge,reconnectRadius:Be,defaultMarkerColor:z,noPanClassName:Ta,disableKeyboardA11y:Aa,rfId:di}),h.jsx(uM,{style:A,type:w,component:C,containerStyle:j}),h.jsx("div",{className:"react-flow__edgelabel-renderer"}),h.jsx(IA,{nodeTypes:t,onNodeClick:o,onNodeDoubleClick:u,onNodeMouseEnter:m,onNodeMouseMove:y,onNodeMouseLeave:g,onNodeContextMenu:p,nodeClickDistance:_e,onlyRenderVisibleElements:$,noPanClassName:Ta,noDragClassName:Qt,disableKeyboardA11y:Aa,nodeExtent:ft,rfId:di}),h.jsx("div",{className:"react-flow__viewport-portal"})]})})}Ax.displayName="GraphView";const hM=Y.memo(Ax),d0=({nodes:t,edges:i,defaultNodes:l,defaultEdges:o,width:r,height:u,fitView:d,fitViewOptions:m,minZoom:y=.5,maxZoom:g=2,nodeOrigin:p,nodeExtent:v,zIndexMode:x="basic"}={})=>{const S=new Map,w=new Map,A=new Map,C=new Map,j=o??i??[],R=l??t??[],E=p??[0,0],_=v??jo;qv(A,C,j);const{nodesInitialized:U}=mf(R,S,w,{nodeOrigin:E,nodeExtent:_,zIndexMode:x});let M=[0,0,1];if(d&&r&&u){const I=ko(S,{filter:K=>!!((K.width||K.initialWidth)&&(K.height||K.initialHeight))}),{x:L,y:$,zoom:ce}=Mf(I,r,u,y,g,m?.padding??.1);M=[L,$,ce]}return{rfId:"1",width:r??0,height:u??0,transform:M,nodes:R,nodesInitialized:U,nodeLookup:S,parentLookup:w,edges:j,edgeLookup:C,connectionLookup:A,onNodesChange:null,onEdgesChange:null,hasDefaultNodes:l!==void 0,hasDefaultEdges:o!==void 0,panZoom:null,minZoom:y,maxZoom:g,translateExtent:jo,nodeExtent:_,nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,connectionMode:si.Strict,domNode:null,paneDragging:!1,noPanClassName:"nopan",nodeOrigin:E,nodeDragThreshold:1,connectionDragThreshold:1,snapGrid:[15,15],snapToGrid:!1,nodesDraggable:!0,nodesConnectable:!0,nodesFocusable:!0,edgesFocusable:!0,edgesReconnectable:!0,elementsSelectable:!0,elevateNodesOnSelect:!0,elevateEdgesOnSelect:!0,selectNodesOnDrag:!0,multiSelectionActive:!1,fitViewQueued:d??!1,fitViewOptions:m,fitViewResolver:null,connection:{..._v},connectionClickStartHandle:null,connectOnClick:!0,ariaLiveMessage:"",autoPanOnConnect:!0,autoPanOnNodeDrag:!0,autoPanOnNodeFocus:!0,autoPanSpeed:15,connectionRadius:20,onError:MC,isValidConnection:void 0,onSelectionChangeHandlers:[],lib:"react",debug:!1,ariaLabelConfig:Nv,zIndexMode:x,onNodesChangeMiddlewareMap:new Map,onEdgesChangeMiddlewareMap:new Map}},mM=({nodes:t,edges:i,defaultNodes:l,defaultEdges:o,width:r,height:u,fitView:d,fitViewOptions:m,minZoom:y,maxZoom:g,nodeOrigin:p,nodeExtent:v,zIndexMode:x})=>DT((S,w)=>{async function A(){const{nodeLookup:C,panZoom:j,fitViewOptions:R,fitViewResolver:E,width:_,height:U,minZoom:M,maxZoom:I}=w();j&&(await TC({nodes:C,width:_,height:U,panZoom:j,minZoom:M,maxZoom:I},R),E?.resolve(!0),S({fitViewResolver:null}))}return{...d0({nodes:t,edges:i,width:r,height:u,fitView:d,fitViewOptions:m,minZoom:y,maxZoom:g,nodeOrigin:p,nodeExtent:v,defaultNodes:l,defaultEdges:o,zIndexMode:x}),setNodes:C=>{const{nodeLookup:j,parentLookup:R,nodeOrigin:E,elevateNodesOnSelect:_,fitViewQueued:U,zIndexMode:M,nodesSelectionActive:I}=w(),{nodesInitialized:L,hasSelectedNodes:$}=mf(C,j,R,{nodeOrigin:E,nodeExtent:v,elevateNodesOnSelect:_,checkEquality:!0,zIndexMode:M}),ce=I&&$;U&&L?(A(),S({nodes:C,nodesInitialized:L,fitViewQueued:!1,fitViewOptions:void 0,nodesSelectionActive:ce})):S({nodes:C,nodesInitialized:L,nodesSelectionActive:ce})},setEdges:C=>{const{connectionLookup:j,edgeLookup:R}=w();qv(j,R,C),S({edges:C})},setDefaultNodesAndEdges:(C,j)=>{if(C){const{setNodes:R}=w();R(C),S({hasDefaultNodes:!0})}if(j){const{setEdges:R}=w();R(j),S({hasDefaultEdges:!0})}},updateNodeInternals:C=>{const{triggerNodeChanges:j,nodeLookup:R,parentLookup:E,domNode:_,nodeOrigin:U,nodeExtent:M,debug:I,fitViewQueued:L,zIndexMode:$}=w(),{changes:ce,updatedInternals:K}=PC(C,R,E,_,U,M,$);K&&(ZC(R,E,{nodeOrigin:U,nodeExtent:M,zIndexMode:$}),L?(A(),S({fitViewQueued:!1,fitViewOptions:void 0})):S({}),ce?.length>0&&(I&&console.log("React Flow: trigger node changes",ce),j?.(ce)))},updateNodePositions:(C,j=!1)=>{const R=[];let E=[];const{nodeLookup:_,triggerNodeChanges:U,connection:M,updateConnection:I,onNodesChangeMiddlewareMap:L}=w();for(const[$,ce]of C){const K=_.get($),te=!!(K?.expandParent&&K?.parentId&&ce?.position),ue={id:$,type:"position",position:te?{x:Math.max(0,ce.position.x),y:Math.max(0,ce.position.y)}:ce.position,dragging:j};if(K&&M.inProgress&&M.fromNode.id===K.id){const D=ci(K,M.fromHandle,ge.Left,!0);I({...M,from:D})}te&&K.parentId&&R.push({id:$,parentId:K.parentId,rect:{...ce.internals.positionAbsolute,width:ce.measured.width??0,height:ce.measured.height??0}}),E.push(ue)}if(R.length>0){const{parentLookup:$,nodeOrigin:ce}=w(),K=Hf(R,_,$,ce);E.push(...K)}for(const $ of L.values())E=$(E);U(E)},triggerNodeChanges:C=>{const{onNodesChange:j,setNodes:R,nodes:E,hasDefaultNodes:_,debug:U}=w();if(C?.length){if(_){const M=ax(C,E);R(M)}U&&console.log("React Flow: trigger node changes",C),j?.(C)}},triggerEdgeChanges:C=>{const{onEdgesChange:j,setEdges:R,edges:E,hasDefaultEdges:_,debug:U}=w();if(C?.length){if(_){const M=ix(C,E);R(M)}U&&console.log("React Flow: trigger edge changes",C),j?.(C)}},addSelectedNodes:C=>{const{multiSelectionActive:j,edgeLookup:R,nodeLookup:E,triggerNodeChanges:_,triggerEdgeChanges:U}=w();if(j){const M=C.map(I=>Wa(I,!0));_(M);return}_(ll(E,new Set([...C]),!0)),U(ll(R))},addSelectedEdges:C=>{const{multiSelectionActive:j,edgeLookup:R,nodeLookup:E,triggerNodeChanges:_,triggerEdgeChanges:U}=w();if(j){const M=C.map(I=>Wa(I,!0));U(M);return}U(ll(R,new Set([...C]))),_(ll(E,new Set,!0))},unselectNodesAndEdges:({nodes:C,edges:j}={})=>{const{edges:R,nodes:E,nodeLookup:_,triggerNodeChanges:U,triggerEdgeChanges:M}=w(),I=C||E,L=j||R,$=[];for(const K of I){if(!K.selected)continue;const te=_.get(K.id);te&&(te.selected=!1),$.push(Wa(K.id,!1))}const ce=[];for(const K of L)K.selected&&ce.push(Wa(K.id,!1));U($),M(ce)},setMinZoom:C=>{const{panZoom:j,maxZoom:R}=w();j?.setScaleExtent([C,R]),S({minZoom:C})},setMaxZoom:C=>{const{panZoom:j,minZoom:R}=w();j?.setScaleExtent([R,C]),S({maxZoom:C})},setTranslateExtent:C=>{w().panZoom?.setTranslateExtent(C),S({translateExtent:C})},resetSelectedElements:()=>{const{edges:C,nodes:j,triggerNodeChanges:R,triggerEdgeChanges:E,elementsSelectable:_}=w();if(!_)return;const U=j.reduce((I,L)=>L.selected?[...I,Wa(L.id,!1)]:I,[]),M=C.reduce((I,L)=>L.selected?[...I,Wa(L.id,!1)]:I,[]);R(U),E(M)},setNodeExtent:C=>{const{nodes:j,nodeLookup:R,parentLookup:E,nodeOrigin:_,elevateNodesOnSelect:U,nodeExtent:M,zIndexMode:I}=w();C[0][0]===M[0][0]&&C[0][1]===M[0][1]&&C[1][0]===M[1][0]&&C[1][1]===M[1][1]||(mf(j,R,E,{nodeOrigin:_,nodeExtent:C,elevateNodesOnSelect:U,checkEquality:!1,zIndexMode:I}),S({nodeExtent:C}))},panBy:C=>{const{transform:j,width:R,height:E,panZoom:_,translateExtent:U}=w();return JC({delta:C,panZoom:_,transform:j,translateExtent:U,width:R,height:E})},setCenter:async(C,j,R)=>{const{width:E,height:_,maxZoom:U,panZoom:M}=w();if(!M)return Promise.resolve(!1);const I=typeof R?.zoom<"u"?R.zoom:U;return await M.setViewport({x:E/2-C*I,y:_/2-j*I,zoom:I},{duration:R?.duration,ease:R?.ease,interpolate:R?.interpolate}),Promise.resolve(!0)},cancelConnection:()=>{S({connection:{..._v}})},updateConnection:C=>{S({connection:C})},reset:()=>S({...d0()})}},Object.is);function Mx({initialNodes:t,initialEdges:i,defaultNodes:l,defaultEdges:o,initialWidth:r,initialHeight:u,initialMinZoom:d,initialMaxZoom:m,initialFitViewOptions:y,fitView:g,nodeOrigin:p,nodeExtent:v,zIndexMode:x,children:S}){const[w]=Y.useState(()=>mM({nodes:t,edges:i,defaultNodes:l,defaultEdges:o,width:r,height:u,fitView:g,minZoom:d,maxZoom:m,fitViewOptions:y,nodeOrigin:p,nodeExtent:v,zIndexMode:x}));return h.jsx(OT,{value:w,children:h.jsx(nA,{children:S})})}function gM({children:t,nodes:i,edges:l,defaultNodes:o,defaultEdges:r,width:u,height:d,fitView:m,fitViewOptions:y,minZoom:g,maxZoom:p,nodeOrigin:v,nodeExtent:x,zIndexMode:S}){return Y.useContext(nc)?h.jsx(h.Fragment,{children:t}):h.jsx(Mx,{initialNodes:i,initialEdges:l,defaultNodes:o,defaultEdges:r,initialWidth:u,initialHeight:d,fitView:m,initialFitViewOptions:y,initialMinZoom:g,initialMaxZoom:p,nodeOrigin:v,nodeExtent:x,zIndexMode:S,children:t})}const pM={width:"100%",height:"100%",overflow:"hidden",position:"relative",zIndex:0};function yM({nodes:t,edges:i,defaultNodes:l,defaultEdges:o,className:r,nodeTypes:u,edgeTypes:d,onNodeClick:m,onEdgeClick:y,onInit:g,onMove:p,onMoveStart:v,onMoveEnd:x,onConnect:S,onConnectStart:w,onConnectEnd:A,onClickConnectStart:C,onClickConnectEnd:j,onNodeMouseEnter:R,onNodeMouseMove:E,onNodeMouseLeave:_,onNodeContextMenu:U,onNodeDoubleClick:M,onNodeDragStart:I,onNodeDrag:L,onNodeDragStop:$,onNodesDelete:ce,onEdgesDelete:K,onDelete:te,onSelectionChange:ue,onSelectionDragStart:D,onSelectionDrag:Z,onSelectionDragStop:z,onSelectionContextMenu:H,onSelectionStart:G,onSelectionEnd:B,onBeforeDelete:J,connectionMode:T,connectionLineType:k=Ea.Bezier,connectionLineStyle:ne,connectionLineComponent:ae,connectionLineContainerStyle:V,deleteKeyCode:se="Backspace",selectionKeyCode:de="Shift",selectionOnDrag:le=!1,selectionMode:fe=zo.Full,panActivationKeyCode:be="Space",multiSelectionKeyCode:_e=Do()?"Meta":"Control",zoomActivationKeyCode:ye=Do()?"Meta":"Control",snapToGrid:we,snapGrid:je,onlyRenderVisibleElements:Ge=!1,selectNodesOnDrag:Be,nodesDraggable:ut,autoPanOnNodeFocus:Ft,nodesConnectable:zt,nodesFocusable:Qt,nodeOrigin:vn=tx,edgesFocusable:Ta,edgesReconnectable:Aa,elementsSelectable:ft=!0,defaultViewport:di=ZT,minZoom:xn=.5,maxZoom:$n=2,translateExtent:Ma=jo,preventScrolling:oc=!0,nodeExtent:fi,defaultMarkerColor:sc="#b1b1b7",zoomOnScroll:rc=!0,zoomOnPinch:ja=!0,panOnScroll:xt=!1,panOnScrollSpeed:sn=.5,panOnScrollMode:bt=ii.Free,zoomOnDoubleClick:cc=!0,panOnDrag:uc=!0,onPaneClick:dc,onPaneMouseEnter:hi,onPaneMouseMove:mi,onPaneMouseLeave:gi,onPaneScroll:bn,onPaneContextMenu:pi,paneClickDistance:za=1,nodeClickDistance:fc=0,children:Yo,onReconnect:yl,onReconnectStart:Ra,onReconnectEnd:hc,onEdgeContextMenu:Vo,onEdgeDoubleClick:Xo,onEdgeMouseEnter:$o,onEdgeMouseMove:vl,onEdgeMouseLeave:xl,reconnectRadius:Zo=10,onNodesChange:Ko,onEdgesChange:rn,noDragClassName:rt="nodrag",noWheelClassName:yt="nowheel",noPanClassName:Sn="nopan",fitView:yi,fitViewOptions:Fo,connectOnClick:mc,attributionPosition:Qo,proOptions:Da,defaultEdgeOptions:bl,elevateNodesOnSelect:Zn=!0,elevateEdgesOnSelect:Kn=!1,disableKeyboardA11y:Fn=!1,autoPanOnConnect:Qn,autoPanOnNodeDrag:tt,autoPanSpeed:Po,connectionRadius:Jo,isValidConnection:wn,onError:Pn,style:gc,id:Sl,nodeDragThreshold:Wo,connectionDragThreshold:pc,viewport:vi,onViewportChange:xi,width:Pt,height:wt,colorMode:es="light",debug:yc,onScroll:bi,ariaLabelConfig:ts,zIndexMode:Oa="basic",...vc},Nt){const Ha=Sl||"1",ns=PT(es),wl=Y.useCallback(Nn=>{Nn.currentTarget.scrollTo({top:0,left:0,behavior:"instant"}),bi?.(Nn)},[bi]);return h.jsx("div",{"data-testid":"rf__wrapper",...vc,onScroll:wl,style:{...gc,...pM},ref:Nt,className:st(["react-flow",r,ns]),id:Sl,role:"application",children:h.jsxs(gM,{nodes:t,edges:i,width:Pt,height:wt,fitView:yi,fitViewOptions:Fo,minZoom:xn,maxZoom:$n,nodeOrigin:vn,nodeExtent:fi,zIndexMode:Oa,children:[h.jsx(QT,{nodes:t,edges:i,defaultNodes:l,defaultEdges:o,onConnect:S,onConnectStart:w,onConnectEnd:A,onClickConnectStart:C,onClickConnectEnd:j,nodesDraggable:ut,autoPanOnNodeFocus:Ft,nodesConnectable:zt,nodesFocusable:Qt,edgesFocusable:Ta,edgesReconnectable:Aa,elementsSelectable:ft,elevateNodesOnSelect:Zn,elevateEdgesOnSelect:Kn,minZoom:xn,maxZoom:$n,nodeExtent:fi,onNodesChange:Ko,onEdgesChange:rn,snapToGrid:we,snapGrid:je,connectionMode:T,translateExtent:Ma,connectOnClick:mc,defaultEdgeOptions:bl,fitView:yi,fitViewOptions:Fo,onNodesDelete:ce,onEdgesDelete:K,onDelete:te,onNodeDragStart:I,onNodeDrag:L,onNodeDragStop:$,onSelectionDrag:Z,onSelectionDragStart:D,onSelectionDragStop:z,onMove:p,onMoveStart:v,onMoveEnd:x,noPanClassName:Sn,nodeOrigin:vn,rfId:Ha,autoPanOnConnect:Qn,autoPanOnNodeDrag:tt,autoPanSpeed:Po,onError:Pn,connectionRadius:Jo,isValidConnection:wn,selectNodesOnDrag:Be,nodeDragThreshold:Wo,connectionDragThreshold:pc,onBeforeDelete:J,debug:yc,ariaLabelConfig:ts,zIndexMode:Oa}),h.jsx(hM,{onInit:g,onNodeClick:m,onEdgeClick:y,onNodeMouseEnter:R,onNodeMouseMove:E,onNodeMouseLeave:_,onNodeContextMenu:U,onNodeDoubleClick:M,nodeTypes:u,edgeTypes:d,connectionLineType:k,connectionLineStyle:ne,connectionLineComponent:ae,connectionLineContainerStyle:V,selectionKeyCode:de,selectionOnDrag:le,selectionMode:fe,deleteKeyCode:se,multiSelectionKeyCode:_e,panActivationKeyCode:be,zoomActivationKeyCode:ye,onlyRenderVisibleElements:Ge,defaultViewport:di,translateExtent:Ma,minZoom:xn,maxZoom:$n,preventScrolling:oc,zoomOnScroll:rc,zoomOnPinch:ja,zoomOnDoubleClick:cc,panOnScroll:xt,panOnScrollSpeed:sn,panOnScrollMode:bt,panOnDrag:uc,onPaneClick:dc,onPaneMouseEnter:hi,onPaneMouseMove:mi,onPaneMouseLeave:gi,onPaneScroll:bn,onPaneContextMenu:pi,paneClickDistance:za,nodeClickDistance:fc,onSelectionContextMenu:H,onSelectionStart:G,onSelectionEnd:B,onReconnect:yl,onReconnectStart:Ra,onReconnectEnd:hc,onEdgeContextMenu:Vo,onEdgeDoubleClick:Xo,onEdgeMouseEnter:$o,onEdgeMouseMove:vl,onEdgeMouseLeave:xl,reconnectRadius:Zo,defaultMarkerColor:sc,noDragClassName:rt,noWheelClassName:yt,noPanClassName:Sn,rfId:Ha,disableKeyboardA11y:Fn,nodeExtent:fi,viewport:vi,onViewportChange:xi}),h.jsx($T,{onSelectionChange:ue}),Yo,h.jsx(GT,{proOptions:Da,position:Qo}),h.jsx(UT,{rfId:Ha,disableKeyboardA11y:Fn})]})})}var vM=lx(yM);function xM({dimensions:t,lineWidth:i,variant:l,className:o}){return h.jsx("path",{strokeWidth:i,d:`M${t[0]/2} 0 V${t[1]} M0 ${t[1]/2} H${t[0]}`,className:st(["react-flow__background-pattern",l,o])})}function bM({radius:t,className:i}){return h.jsx("circle",{cx:t,cy:t,r:t,className:st(["react-flow__background-pattern","dots",i])})}var Ca;(function(t){t.Lines="lines",t.Dots="dots",t.Cross="cross"})(Ca||(Ca={}));const SM={[Ca.Dots]:1,[Ca.Lines]:1,[Ca.Cross]:6},wM=t=>({transform:t.transform,patternId:`pattern-${t.rfId}`});function jx({id:t,variant:i=Ca.Dots,gap:l=20,size:o,lineWidth:r=1,offset:u=0,color:d,bgColor:m,style:y,className:g,patternClassName:p}){const v=Y.useRef(null),{transform:x,patternId:S}=Oe(wM,Fe),w=o||SM[i],A=i===Ca.Dots,C=i===Ca.Cross,j=Array.isArray(l)?l:[l,l],R=[j[0]*x[2]||1,j[1]*x[2]||1],E=w*x[2],_=Array.isArray(u)?u:[u,u],U=C?[E,E]:R,M=[_[0]*x[2]||1+U[0]/2,_[1]*x[2]||1+U[1]/2],I=`${S}${t||""}`;return h.jsxs("svg",{className:st(["react-flow__background",g]),style:{...y,...ic,"--xy-background-color-props":m,"--xy-background-pattern-color-props":d},ref:v,"data-testid":"rf__background",children:[h.jsx("pattern",{id:I,x:x[0]%R[0],y:x[1]%R[1],width:R[0],height:R[1],patternUnits:"userSpaceOnUse",patternTransform:`translate(-${M[0]},-${M[1]})`,children:A?h.jsx(bM,{radius:E/2,className:p}):h.jsx(xM,{dimensions:U,lineWidth:r,variant:i,className:p})}),h.jsx("rect",{x:"0",y:"0",width:"100%",height:"100%",fill:`url(#${I})`})]})}jx.displayName="Background";const NM=Y.memo(jx);function _M(){return h.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",children:h.jsx("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"})})}function EM(){return h.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5",children:h.jsx("path",{d:"M0 0h32v4.2H0z"})})}function CM(){return h.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30",children:h.jsx("path",{d:"M3.692 4.63c0-.53.4-.938.939-.938h5.215V0H4.708C2.13 0 0 2.054 0 4.63v5.216h3.692V4.631zM27.354 0h-5.2v3.692h5.17c.53 0 .984.4.984.939v5.215H32V4.631A4.624 4.624 0 0027.354 0zm.954 24.83c0 .532-.4.94-.939.94h-5.215v3.768h5.215c2.577 0 4.631-2.13 4.631-4.707v-5.139h-3.692v5.139zm-23.677.94c-.531 0-.939-.4-.939-.94v-5.138H0v5.139c0 2.577 2.13 4.707 4.708 4.707h5.138V25.77H4.631z"})})}function TM(){return h.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:h.jsx("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0 8 0 4.571 3.429 4.571 7.619v3.048H3.048A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047zm4.724-13.866H7.467V7.619c0-2.59 2.133-4.724 4.723-4.724 2.591 0 4.724 2.133 4.724 4.724v3.048z"})})}function AM(){return h.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:h.jsx("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0c-4.114 1.828-1.37 2.133.305 2.438 1.676.305 4.42 2.59 4.42 5.181v3.048H3.047A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047z"})})}function Er({children:t,className:i,...l}){return h.jsx("button",{type:"button",className:st(["react-flow__controls-button",i]),...l,children:t})}const MM=t=>({isInteractive:t.nodesDraggable||t.nodesConnectable||t.elementsSelectable,minZoomReached:t.transform[2]<=t.minZoom,maxZoomReached:t.transform[2]>=t.maxZoom,ariaLabelConfig:t.ariaLabelConfig});function zx({style:t,showZoom:i=!0,showFitView:l=!0,showInteractive:o=!0,fitViewOptions:r,onZoomIn:u,onZoomOut:d,onFitView:m,onInteractiveChange:y,className:g,children:p,position:v="bottom-left",orientation:x="vertical","aria-label":S}){const w=Qe(),{isInteractive:A,minZoomReached:C,maxZoomReached:j,ariaLabelConfig:R}=Oe(MM,Fe),{zoomIn:E,zoomOut:_,fitView:U}=ac(),M=()=>{E(),u?.()},I=()=>{_(),d?.()},L=()=>{U(r),m?.()},$=()=>{w.setState({nodesDraggable:!A,nodesConnectable:!A,elementsSelectable:!A}),y?.(!A)},ce=x==="horizontal"?"horizontal":"vertical";return h.jsxs(qo,{className:st(["react-flow__controls",ce,g]),position:v,style:t,"data-testid":"rf__controls","aria-label":S??R["controls.ariaLabel"],children:[i&&h.jsxs(h.Fragment,{children:[h.jsx(Er,{onClick:M,className:"react-flow__controls-zoomin",title:R["controls.zoomIn.ariaLabel"],"aria-label":R["controls.zoomIn.ariaLabel"],disabled:j,children:h.jsx(_M,{})}),h.jsx(Er,{onClick:I,className:"react-flow__controls-zoomout",title:R["controls.zoomOut.ariaLabel"],"aria-label":R["controls.zoomOut.ariaLabel"],disabled:C,children:h.jsx(EM,{})})]}),l&&h.jsx(Er,{className:"react-flow__controls-fitview",onClick:L,title:R["controls.fitView.ariaLabel"],"aria-label":R["controls.fitView.ariaLabel"],children:h.jsx(CM,{})}),o&&h.jsx(Er,{className:"react-flow__controls-interactive",onClick:$,title:R["controls.interactive.ariaLabel"],"aria-label":R["controls.interactive.ariaLabel"],children:A?h.jsx(AM,{}):h.jsx(TM,{})}),p]})}zx.displayName="Controls";const jM=Y.memo(zx);function zM({id:t,x:i,y:l,width:o,height:r,style:u,color:d,strokeColor:m,strokeWidth:y,className:g,borderRadius:p,shapeRendering:v,selected:x,onClick:S}){const{background:w,backgroundColor:A}=u||{},C=d||w||A;return h.jsx("rect",{className:st(["react-flow__minimap-node",{selected:x},g]),x:i,y:l,rx:p,ry:p,width:o,height:r,style:{fill:C,stroke:m,strokeWidth:y},shapeRendering:v,onClick:S?j=>S(j,t):void 0})}const RM=Y.memo(zM),DM=t=>t.nodes.map(i=>i.id),Pd=t=>t instanceof Function?t:()=>t;function OM({nodeStrokeColor:t,nodeColor:i,nodeClassName:l="",nodeBorderRadius:o=5,nodeStrokeWidth:r,nodeComponent:u=RM,onClick:d}){const m=Oe(DM,Fe),y=Pd(i),g=Pd(t),p=Pd(l),v=typeof window>"u"||window.chrome?"crispEdges":"geometricPrecision";return h.jsx(h.Fragment,{children:m.map(x=>h.jsx(IM,{id:x,nodeColorFunc:y,nodeStrokeColorFunc:g,nodeClassNameFunc:p,nodeBorderRadius:o,nodeStrokeWidth:r,NodeComponent:u,onClick:d,shapeRendering:v},x))})}function HM({id:t,nodeColorFunc:i,nodeStrokeColorFunc:l,nodeClassNameFunc:o,nodeBorderRadius:r,nodeStrokeWidth:u,shapeRendering:d,NodeComponent:m,onClick:y}){const{node:g,x:p,y:v,width:x,height:S}=Oe(w=>{const A=w.nodeLookup.get(t);if(!A)return{node:void 0,x:0,y:0,width:0,height:0};const C=A.internals.userNode,{x:j,y:R}=A.internals.positionAbsolute,{width:E,height:_}=Xn(C);return{node:C,x:j,y:R,width:E,height:_}},Fe);return!g||g.hidden||!zv(g)?null:h.jsx(m,{x:p,y:v,width:x,height:S,style:g.style,selected:!!g.selected,className:o(g),color:i(g),borderRadius:r,strokeColor:l(g),strokeWidth:u,shapeRendering:d,onClick:y,id:g.id})}const IM=Y.memo(HM);var LM=Y.memo(OM);const BM=200,kM=150,UM=t=>!t.hidden,GM=t=>{const i={x:-t.transform[0]/t.transform[2],y:-t.transform[1]/t.transform[2],width:t.width/t.transform[2],height:t.height/t.transform[2]};return{viewBB:i,boundingRect:t.nodeLookup.size>0?jv(ko(t.nodeLookup,{filter:UM}),i):i,rfId:t.rfId,panZoom:t.panZoom,translateExtent:t.translateExtent,flowWidth:t.width,flowHeight:t.height,ariaLabelConfig:t.ariaLabelConfig}},qM="react-flow__minimap-desc";function Rx({style:t,className:i,nodeStrokeColor:l,nodeColor:o,nodeClassName:r="",nodeBorderRadius:u=5,nodeStrokeWidth:d,nodeComponent:m,bgColor:y,maskColor:g,maskStrokeColor:p,maskStrokeWidth:v,position:x="bottom-right",onClick:S,onNodeClick:w,pannable:A=!1,zoomable:C=!1,ariaLabel:j,inversePan:R,zoomStep:E=1,offsetScale:_=5}){const U=Qe(),M=Y.useRef(null),{boundingRect:I,viewBB:L,rfId:$,panZoom:ce,translateExtent:K,flowWidth:te,flowHeight:ue,ariaLabelConfig:D}=Oe(GM,Fe),Z=t?.width??BM,z=t?.height??kM,H=I.width/Z,G=I.height/z,B=Math.max(H,G),J=B*Z,T=B*z,k=_*B,ne=I.x-(J-I.width)/2-k,ae=I.y-(T-I.height)/2-k,V=J+k*2,se=T+k*2,de=`${qM}-${$}`,le=Y.useRef(0),fe=Y.useRef();le.current=B,Y.useEffect(()=>{if(M.current&&ce)return fe.current=sT({domNode:M.current,panZoom:ce,getTransform:()=>U.getState().transform,getViewScale:()=>le.current}),()=>{fe.current?.destroy()}},[ce]),Y.useEffect(()=>{fe.current?.update({translateExtent:K,width:te,height:ue,inversePan:R,pannable:A,zoomStep:E,zoomable:C})},[A,C,R,E,K,te,ue]);const be=S?we=>{const[je,Ge]=fe.current?.pointer(we)||[0,0];S(we,{x:je,y:Ge})}:void 0,_e=w?Y.useCallback((we,je)=>{const Ge=U.getState().nodeLookup.get(je).internals.userNode;w(we,Ge)},[]):void 0,ye=j??D["minimap.ariaLabel"];return h.jsx(qo,{position:x,style:{...t,"--xy-minimap-background-color-props":typeof y=="string"?y:void 0,"--xy-minimap-mask-background-color-props":typeof g=="string"?g:void 0,"--xy-minimap-mask-stroke-color-props":typeof p=="string"?p:void 0,"--xy-minimap-mask-stroke-width-props":typeof v=="number"?v*B:void 0,"--xy-minimap-node-background-color-props":typeof o=="string"?o:void 0,"--xy-minimap-node-stroke-color-props":typeof l=="string"?l:void 0,"--xy-minimap-node-stroke-width-props":typeof d=="number"?d:void 0},className:st(["react-flow__minimap",i]),"data-testid":"rf__minimap",children:h.jsxs("svg",{width:Z,height:z,viewBox:`${ne} ${ae} ${V} ${se}`,className:"react-flow__minimap-svg",role:"img","aria-labelledby":de,ref:M,onClick:be,children:[ye&&h.jsx("title",{id:de,children:ye}),h.jsx(LM,{onClick:_e,nodeColor:o,nodeStrokeColor:l,nodeBorderRadius:u,nodeClassName:r,nodeStrokeWidth:d,nodeComponent:m}),h.jsx("path",{className:"react-flow__minimap-mask",d:`M${ne-k},${ae-k}h${V+k*2}v${se+k*2}h${-V-k*2}z
|
|
21
|
+
M${L.x},${L.y}h${L.width}v${L.height}h${-L.width}z`,fillRule:"evenodd",pointerEvents:"none"})]})})}Rx.displayName="MiniMap";const YM=Y.memo(Rx),VM=t=>i=>t?`${Math.max(1/i.transform[2],1)}`:void 0,XM={[gl.Line]:"right",[gl.Handle]:"bottom-right"};function $M({nodeId:t,position:i,variant:l=gl.Handle,className:o,style:r=void 0,children:u,color:d,minWidth:m=10,minHeight:y=10,maxWidth:g=Number.MAX_VALUE,maxHeight:p=Number.MAX_VALUE,keepAspectRatio:v=!1,resizeDirection:x,autoScale:S=!0,shouldResize:w,onResizeStart:A,onResize:C,onResizeEnd:j}){const R=cx(),E=typeof t=="string"?t:R,_=Qe(),U=Y.useRef(null),M=l===gl.Handle,I=Oe(Y.useCallback(VM(M&&S),[M,S]),Fe),L=Y.useRef(null),$=i??XM[l];Y.useEffect(()=>{if(!(!U.current||!E))return L.current||(L.current=ST({domNode:U.current,nodeId:E,getStoreItems:()=>{const{nodeLookup:K,transform:te,snapGrid:ue,snapToGrid:D,nodeOrigin:Z,domNode:z}=_.getState();return{nodeLookup:K,transform:te,snapGrid:ue,snapToGrid:D,nodeOrigin:Z,paneDomNode:z}},onChange:(K,te)=>{const{triggerNodeChanges:ue,nodeLookup:D,parentLookup:Z,nodeOrigin:z}=_.getState(),H=[],G={x:K.x,y:K.y},B=D.get(E);if(B&&B.expandParent&&B.parentId){const J=B.origin??z,T=K.width??B.measured.width??0,k=K.height??B.measured.height??0,ne={id:B.id,parentId:B.parentId,rect:{width:T,height:k,...Rv({x:K.x??B.position.x,y:K.y??B.position.y},{width:T,height:k},B.parentId,D,J)}},ae=Hf([ne],D,Z,z);H.push(...ae),G.x=K.x?Math.max(J[0]*T,K.x):void 0,G.y=K.y?Math.max(J[1]*k,K.y):void 0}if(G.x!==void 0&&G.y!==void 0){const J={id:E,type:"position",position:{...G}};H.push(J)}if(K.width!==void 0&&K.height!==void 0){const T={id:E,type:"dimensions",resizing:!0,setAttributes:x?x==="horizontal"?"width":"height":!0,dimensions:{width:K.width,height:K.height}};H.push(T)}for(const J of te){const T={...J,type:"position"};H.push(T)}ue(H)},onEnd:({width:K,height:te})=>{const ue={id:E,type:"dimensions",resizing:!1,dimensions:{width:K,height:te}};_.getState().triggerNodeChanges([ue])}})),L.current.update({controlPosition:$,boundaries:{minWidth:m,minHeight:y,maxWidth:g,maxHeight:p},keepAspectRatio:v,resizeDirection:x,onResizeStart:A,onResize:C,onResizeEnd:j,shouldResize:w}),()=>{L.current?.destroy()}},[$,m,y,g,p,v,A,C,j,w]);const ce=$.split("-");return h.jsx("div",{className:st(["react-flow__resize-control","nodrag",...ce,l,o]),ref:U,style:{...r,scale:I,...d&&{[M?"backgroundColor":"borderColor"]:d}},children:u})}Y.memo($M);const Jd=5,Hr=240,ZM=180,KM=420,f0=[{id:"top",position:ge.Top},{id:"right",position:ge.Right},{id:"bottom",position:ge.Bottom},{id:"left",position:ge.Left}];function FM(t){const i=/^(\d+)x(\d+)$/.exec(t??"");if(!i)return Hr;const l=Number(i[1]),o=Number(i[2]);if(!Number.isFinite(l)||!Number.isFinite(o)||l<=0||o<=0)return Hr;const r=Hr*(l/o);return Math.round(Math.min(KM,Math.max(ZM,r)))}function QM({id:t,data:i,selected:l}){const{t:o}=Te(),r=i,u=W(B=>B.updateNodePrompt),d=W(B=>B.addNodeReferences),m=W(B=>B.removeNodeReference),y=W(B=>B.generateNode),g=W(B=>B.generateNodeInPlace),p=W(B=>B.generateNodeVariation),v=W(B=>B.addChildNode),x=W(B=>B.duplicateBranchRoot),S=W(B=>B.deleteNode),w=Y.useRef(null),[A,C]=Y.useState(!1),j=r.referenceImages??[],R=r.status==="pending"||r.status==="reconciling",E=!R&&j.length<Jd,_={"--node-preview-w":`${FM(r.size)}px`,"--node-preview-h":`${Hr}px`},U=Y.useCallback(B=>u(t,B.target.value),[t,u]),M=Y.useCallback(()=>{y(t)},[t,y]),I=Y.useCallback(()=>{g(t)},[t,g]),L=Y.useCallback(()=>{p(t)},[t,p]),$=Y.useCallback(()=>{r.status==="ready"&&v(t)},[t,r.status,v]),ce=Y.useCallback(()=>{x(t)},[t,x]),K=Y.useCallback(()=>S(t),[t,S]),te=B=>{if(!B)return[];const J=[];for(const T of Array.from(B)){if(T.kind!=="file"||!T.type.startsWith("image/"))continue;const k=T.getAsFile();k&&J.push(k)}return J},ue=B=>{if(B.preventDefault(),B.stopPropagation(),C(!1),!E)return;const J=Array.from(B.dataTransfer.files).filter(T=>T.type.startsWith("image/"));J.length>0&&d(t,J)},D=B=>{B.preventDefault(),B.stopPropagation(),E&&!A&&C(!0)},Z=B=>{B.currentTarget.contains(B.relatedTarget)||C(!1)},z=B=>{const J=te(B.clipboardData?.items??null);if(J.length===0||(B.preventDefault(),B.stopPropagation(),!E))return;const T=Jd-j.length;d(t,J.slice(0,T))},G=(()=>{switch(r.status){case"empty":return o("node.empty");case"pending":return o("node.pending");case"reconciling":return r.pendingPhase?o("node.reconcilingPhase",{phase:r.pendingPhase}):o("node.reconciling");case"ready":return[r.webSearchCalls?o("node.readyWithSearch",{elapsed:r.elapsed??"?",searches:r.webSearchCalls}):o("node.ready",{elapsed:r.elapsed??"?"}),C0(r.model)].filter(Boolean).join(" · ");case"stale":return r.error?o("node.staleWithError",{error:r.error}):o("node.stale");case"asset-missing":return r.error?o("node.assetMissingWithError",{error:r.error}):o("node.assetMissing");case"error":return o("node.error",{error:r.error??o("node.errorUnknown")});default:return""}})();return h.jsxs("div",{className:`image-node image-node--${r.status}${l?" image-node--selected":""}`,style:_,children:[f0.map(({id:B,position:J})=>h.jsx(pl,{type:"target",id:`target-${B}`,position:J,className:`image-node__handle image-node__handle--target image-node__handle--${B}`},`target-${B}`)),h.jsx("div",{className:"image-node__preview",children:r.imageUrl&&r.status!=="asset-missing"?h.jsx("img",{src:r.imageUrl,alt:o("node.nodeImageAlt")}):R&&r.partialImageUrl?h.jsx("img",{className:"image-node__partial",src:r.partialImageUrl,alt:o("node.partialImageAlt")}):R?h.jsx("div",{className:"image-node__skeleton"}):r.status==="asset-missing"?h.jsx("div",{className:"image-node__placeholder",children:o("node.noAsset")}):r.status==="stale"?h.jsx("div",{className:"image-node__placeholder",children:o("node.stateStale")}):h.jsx("div",{className:"image-node__placeholder",children:o("node.noImage")})}),h.jsxs("div",{className:`image-node__composer nodrag${A?" is-dragging":""}`,onDrop:ue,onDragOver:D,onDragLeave:Z,onPaste:z,children:[j.length>0?h.jsx("div",{className:"image-node__refs",children:j.map((B,J)=>h.jsxs("div",{className:"image-node__ref-chip",title:o("node.refAlt",{n:J+1}),children:[h.jsx("img",{src:B,alt:o("node.refAlt",{n:J+1})}),h.jsx("button",{type:"button",className:"image-node__ref-remove",onClick:()=>m(t,J),disabled:R,"aria-label":o("node.removeRef",{n:J+1}),children:"×"})]},J))}):null,h.jsx("textarea",{className:"image-node__prompt",value:r.prompt,onChange:U,onKeyDown:B=>B.stopPropagation(),placeholder:r.parentServerNodeId?o("node.editPromptPlaceholder"):o("node.promptPlaceholder"),rows:2,disabled:R}),h.jsxs("div",{className:"image-node__composer-bar",children:[h.jsx("button",{type:"button",className:"image-node__attach",onClick:()=>E&&w.current?.click(),disabled:!E,title:r.parentServerNodeId?o("node.nodeRefsUsedWithParent"):o("node.attachRefTitle"),children:o("node.attachRef")}),A?h.jsx("span",{className:"image-node__drop-hint",children:o("node.dropRefs")}):j.length>0?h.jsxs("span",{className:"image-node__ref-count",children:[j.length,"/",Jd]}):null]}),h.jsx("input",{ref:w,type:"file",accept:"image/*",multiple:!0,hidden:!0,onChange:B=>{const J=Array.from(B.target.files??[]);J.length>0&&d(t,J),B.target.value=""}})]}),h.jsxs("div",{className:"image-node__footer nodrag",children:[h.jsx("span",{className:"image-node__status",title:G,children:G}),h.jsxs("div",{className:"image-node__actions",children:[r.status==="ready"?h.jsxs(h.Fragment,{children:[h.jsx("button",{type:"button",onClick:I,disabled:R,title:o("node.regenerateTitle"),"aria-label":o("node.regenerateTitle"),children:"↻"}),h.jsx("button",{type:"button",onClick:L,disabled:R,title:o("node.newVariationTitle"),"aria-label":o("node.newVariationTitle"),children:o("node.newVariation")})]}):h.jsx("button",{type:"button",className:"image-node__generate",onClick:M,disabled:R,title:o("node.generateTitle"),"aria-label":o("node.generateTitle"),children:o("node.generate")}),r.status==="ready"?h.jsxs(h.Fragment,{children:[h.jsx("button",{type:"button",onClick:$,title:o("node.addChildTitle"),"aria-label":o("node.addChildTitle"),children:o("node.addChild")}),h.jsx("button",{type:"button",onClick:ce,title:o("node.duplicateBranchTitle"),"aria-label":o("node.duplicateBranchTitle"),children:o("node.duplicateBranch")})]}):null,h.jsx("button",{type:"button",onClick:K,className:"image-node__del",title:o("node.deleteTitle"),"aria-label":o("node.deleteTitle"),children:"×"})]})]}),f0.map(({id:B,position:J})=>h.jsx(pl,{type:"source",id:`source-${B}`,position:J,className:`image-node__handle image-node__handle--source image-node__handle--${B}`},`source-${B}`))]})}const PM=Y.memo(QM);function JM(){const{t}=Te(),i=W(R=>R.graphNodes),l=W(R=>R.graphEdges),o=W(R=>R.nodeSelectionMode),r=W(R=>R.nodeBatchRunning),u=W(R=>R.nodeBatchStopping),d=W(R=>R.toggleNodeSelectionMode),m=W(R=>R.selectAllGraphNodes),y=W(R=>R.clearNodeSelection),g=W(R=>R.runNodeBatch),p=W(R=>R.cancelNodeBatch),v=W(R=>R.disconnectEdges),x=i.filter(R=>R.selected).map(R=>R.id),S=l.filter(R=>R.selected).map(R=>R.id),w=new Set(x),A=i.filter(R=>w.has(R.id)&&!z0(R)).length,C=R0(l,x).length,j=R=>{g(R)};return h.jsxs(qo,{position:"top-center",className:"node-batch-bar nodrag",children:[h.jsx("button",{type:"button",onClick:d,"aria-pressed":o,children:t(o?"nodeBatch.selectionOn":"nodeBatch.selectionOff")}),h.jsx("button",{type:"button",onClick:m,disabled:i.length===0,children:t("nodeBatch.selectAll")}),S.length>0?h.jsx("button",{type:"button",className:"node-batch-bar__danger",onClick:()=>v(S),title:t("edge.disconnectTitle"),"aria-label":t("edge.disconnectTitle"),children:t("edge.disconnect")}):null,x.length>0?h.jsxs(h.Fragment,{children:[h.jsx("span",{className:"node-batch-bar__meta",children:t("nodeBatch.summary",{selected:x.length,missing:A,stale:C})}),h.jsx("button",{type:"button",onClick:()=>j("missing-only"),disabled:r,children:t("nodeBatch.generateMissing")}),h.jsx("button",{type:"button",onClick:()=>j("regenerate-all"),disabled:r,children:t("nodeBatch.regenerateSelected")}),r?h.jsx("button",{type:"button",onClick:p,disabled:u,children:t(u?"nodeBatch.stopping":"nodeBatch.stopRemaining")}):null,h.jsx("button",{type:"button",onClick:y,disabled:r,children:t("nodeBatch.clear")})]}):null]})}function WM(){const{t}=Te(),i=W(M=>M.graphNodes),l=W(M=>M.graphEdges),o=W(M=>M.setGraphNodes),r=W(M=>M.setGraphEdges),u=W(M=>M.disconnectEdges),d=W(M=>M.addRootNode),m=W(M=>M.addChildNodeAt),y=W(M=>M.connectNodes),g=W(M=>M.deleteNodes),p=W(M=>M.nodeSelectionMode),v=W(M=>M.selectNodeGraph),x=W(M=>M.sessionLoading),{screenToFlowPosition:S}=ac(),w=Y.useRef(null),A=Y.useMemo(()=>({imageNode:PM}),[]),C=Y.useCallback(M=>o(ax(M,i)),[i,o]),j=Y.useCallback(M=>{const I=M.filter(L=>L.type==="remove").map(L=>L.id);if(I.length>0){if(p)return;u(I);return}r(ix(M,l))},[u,l,p,r]),R=Y.useCallback(M=>{M.source&&M.target&&y(M.source,M.target,M.sourceHandle,M.targetHandle)},[y]),E=Y.useCallback((M,I)=>{if(I.isValid)return;const L=I.fromNode?.id;if(!L||I.toNode||I.toHandle)return;const $="touches"in M?M.changedTouches[0].clientX:M.clientX,ce="touches"in M?M.changedTouches[0].clientY:M.clientY,K=S({x:$,y:ce});m(L,K)},[m,S]),_=Y.useCallback(M=>g(M.map(I=>I.id)),[g]),U=Y.useCallback((M,I)=>{p&&(M.preventDefault(),v(I.id,M.metaKey||M.ctrlKey))},[p,v]);return h.jsxs("main",{className:"node-canvas",ref:w,children:[x&&h.jsx("div",{className:"node-canvas__loading",children:t("nodeCanvas.loading")}),i.length===0?h.jsx("button",{type:"button",className:"node-canvas__plus",onClick:()=>d(),children:t("nodeCanvas.addFirst")}):h.jsxs(h.Fragment,{children:[h.jsxs(vM,{nodes:i,edges:l,onNodesChange:C,onEdgesChange:j,onConnect:R,onConnectEnd:E,onNodesDelete:_,onNodeClick:U,nodeTypes:A,connectionMode:si.Loose,connectionRadius:32,selectionOnDrag:p,multiSelectionKeyCode:p?null:void 0,panOnDrag:p?[2]:!0,fitView:!0,deleteKeyCode:p?null:["Delete","Backspace"],proOptions:{hideAttribution:!0},children:[h.jsx(JM,{}),h.jsx(NM,{gap:24,color:"var(--canvas-grid)"}),h.jsx(jM,{className:"node-canvas__controls"}),h.jsx(YM,{pannable:!0,zoomable:!0,maskColor:"var(--minimap-mask)",nodeColor:"var(--minimap-node-fill)",nodeStrokeColor:"var(--minimap-node-stroke)",style:{background:"var(--minimap-bg)",border:"1px solid var(--minimap-border)"}})]}),h.jsx("button",{type:"button",className:"node-canvas__add-root",onClick:()=>d(),title:t("nodeCanvas.addRootTitle"),children:"+"}),h.jsx("div",{className:"node-canvas__hint",children:t("nodeCanvas.hint")})]})]})}function ej(){return h.jsx(Mx,{children:h.jsx(WM,{})})}function qn({title:t,help:i,items:l,value:o,onChange:r}){return h.jsxs("div",{className:"option-group",children:[t?h.jsx("div",{className:"section-title",children:t}):null,h.jsx("div",{className:"option-row",children:l.map(u=>h.jsxs("button",{className:`option-btn${u.value===o?" active":""}`,style:u.color?{color:u.color}:void 0,disabled:u.disabled,onClick:()=>r(u.value),type:"button",children:[u.label,u.sub?h.jsxs(h.Fragment,{children:[h.jsx("br",{}),h.jsx("span",{className:"option-sub",children:u.sub})]}):null]},u.value))}),i?h.jsx("p",{className:"option-help",children:i}):null]})}function go(t){return t.map(i=>({value:i.value,label:i.label,sub:i.sub}))}function tj(){const t=W(S=>S.sizePreset),i=W(S=>S.setSizePreset),l=W(S=>S.customW),o=W(S=>S.customH),r=W(S=>S.setCustomSize),{t:u}=Te(),[d,m]=Y.useState(String(l)),[y,g]=Y.useState(String(o)),p=t==="custom";Y.useEffect(()=>{m(String(l)),g(String(o))},[l,o]);function v(){const S=rl(d,l),w=rl(y,o);r(S,w),m(String(S)),g(String(w))}function x(S){S.key==="Enter"&&(S.preventDefault(),v())}return h.jsxs("div",{className:"option-group",children:[h.jsx("div",{className:"section-title",children:u("size.title")}),h.jsx(qn,{title:"",items:go(Gw),value:t,onChange:i}),h.jsx(qn,{title:"",items:go(qw),value:t,onChange:i}),h.jsx(qn,{title:"",items:go(Yw),value:t,onChange:i}),h.jsx(qn,{title:"",items:go(Vw),value:t,onChange:i}),h.jsx(qn,{title:"",items:go(Xw()),value:t,onChange:i}),p?h.jsxs(h.Fragment,{children:[h.jsxs("div",{className:"option-row",children:[h.jsx("input",{type:"text",inputMode:"numeric",pattern:"[0-9]*",className:"custom-size-input",value:d,onChange:S=>m(S.target.value.replace(/\D/g,"")),onBlur:v,onKeyDown:x,placeholder:u("size.width")}),h.jsx("span",{style:{color:"var(--text-dim)",alignSelf:"center",fontFamily:"var(--mono)",fontSize:12},children:"x"}),h.jsx("input",{type:"text",inputMode:"numeric",pattern:"[0-9]*",className:"custom-size-input",value:y,onChange:S=>g(S.target.value.replace(/\D/g,"")),onBlur:v,onKeyDown:x,placeholder:u("size.height")})]}),h.jsx("div",{className:"size-hint",children:u("size.hint")})]}):null]})}const nj={low:{"1024x1024":.006,"1024x1536":.005,"1536x1024":.005,"1024x1360":.005,"1360x1024":.005,"1024x1824":.006,"1824x1024":.006,"2048x2048":.012,"2048x1152":.009,"1152x2048":.009,"3824x2160":.023,"2160x3824":.023,auto:.006},medium:{"1024x1024":.053,"1024x1536":.041,"1536x1024":.041,"1024x1360":.041,"1360x1024":.041,"1024x1824":.05,"1824x1024":.05,"2048x2048":.106,"2048x1152":.08,"1152x2048":.08,"3824x2160":.2,"2160x3824":.2,auto:.053},high:{"1024x1024":.211,"1024x1536":.165,"1536x1024":.165,"1024x1360":.165,"1360x1024":.165,"1024x1824":.2,"1824x1024":.2,"2048x2048":.422,"2048x1152":.32,"1152x2048":.32,"3824x2160":.8,"2160x3824":.8,auto:.211}};function aj(t,i){return nj[t]?.[i]??0}function ij(){const{t}=Te(),i=W(g=>g.provider),l=W(g=>g.quality),r=W(g=>g.getResolvedSize)(),u=i==="oauth",d=aj(l,r),m=u?t("cost.free"):t("cost.approx",{amount:d.toFixed(3)}),y=u?"var(--green)":void 0;return h.jsxs("div",{className:"cost-estimate",children:[h.jsx("span",{children:t("cost.label")}),h.jsx("span",{className:"price",style:y?{color:y}:void 0,children:m})]})}const lj=[{value:"png",label:"PNG"},{value:"jpeg",label:"JPEG"},{value:"webp",label:"WebP"}],oj=[{value:"1",label:"1"},{value:"2",label:"2"},{value:"4",label:"4"}];function sj(){const t=W(C=>C.rightPanelOpen),i=W(C=>C.toggleRightPanel),{t:l}=Te(),[o,r]=Y.useState(typeof window<"u"?window.matchMedia("(max-width: 800px)").matches:!1);Y.useEffect(()=>{if(typeof window>"u")return;const C=window.matchMedia("(max-width: 800px)"),j=()=>r(C.matches);return C.addEventListener("change",j),()=>C.removeEventListener("change",j)},[]);const u=o?t:!0,d=W(C=>C.quality),m=W(C=>C.setQuality),y=W(C=>C.format),g=W(C=>C.setFormat),p=W(C=>C.moderation),v=W(C=>C.setModeration),x=W(C=>C.count),S=W(C=>C.setCount),w=[{value:"low",label:l("quality.lowLabel"),sub:l("quality.lowSub")},{value:"medium",label:l("quality.mediumLabel"),sub:l("quality.mediumSub")},{value:"high",label:l("quality.highLabel"),sub:l("quality.highSub")}],A=[{value:"auto",label:l("moderation.autoLabel"),sub:l("moderation.autoSub")},{value:"low",label:l("moderation.lowLabel"),sub:l("moderation.lowSub"),color:"var(--amber)"}];return h.jsxs(h.Fragment,{children:[o&&t?h.jsx("div",{className:"right-panel-backdrop",role:"button","aria-label":l("panel.closeSettings"),onClick:i}):null,h.jsxs("aside",{className:`right-panel${t?"":" collapsed"}${o&&u?" drawer-open":""}`,"aria-label":l("panel.detailSettings"),children:[h.jsx("button",{type:"button",className:"right-panel-toggle","aria-expanded":t,"aria-controls":"right-panel-body",onClick:i,title:l(t?"panel.toggleHide":"panel.toggleShow"),children:o?l(t?"panel.close":"panel.open"):t?">":"<"}),h.jsxs("div",{id:"right-panel-body",className:"right-panel-body",hidden:!t,children:[h.jsx("div",{className:"section-title",children:l("panel.detailSettings")}),h.jsx(qn,{title:l("quality.title"),items:w,value:d,onChange:m}),h.jsx(tj,{}),h.jsx(qn,{title:l("format.title"),items:lj,value:y,onChange:g}),h.jsx(qn,{title:l("moderation.title"),items:A,value:p,onChange:v}),h.jsx("p",{className:"option-help",children:l("moderation.explain")}),h.jsx(qn,{title:l("count.title"),items:oj,value:String(x),onChange:C=>S(Number(C))}),h.jsx(ij,{})]})]})]})}function Dx(t){const i=t.currentTarget;if(i.scrollWidth<=i.clientWidth||!(Math.abs(t.deltaY)>Math.abs(t.deltaX)))return;const o=i.scrollLeft<=0,r=i.scrollLeft+i.clientWidth>=i.scrollWidth-1,u=t.deltaY<0,d=t.deltaY>0;u&&o||d&&r||(t.preventDefault(),i.scrollLeft+=t.deltaY)}function h0(t){return t.filename??t.url??t.image}function rj(){const t=W(m=>m.history),i=W(m=>m.currentImage),l=W(m=>m.selectHistory),o=W(m=>m.openGallery),r=Y.useRef({}),{t:u}=Te(),d=i?h0(i):null;return Y.useEffect(()=>{d&&r.current[d]?.scrollIntoView({block:"nearest",inline:"nearest"})},[d,t]),h.jsxs("div",{className:"history-strip",onWheel:Dx,children:[h.jsx("button",{type:"button",className:"history-thumb history-thumb--add",onClick:o,"aria-label":u("history.openGalleryAria"),title:u("history.openGalleryTitle"),children:h.jsxs("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[h.jsx("rect",{x:"3",y:"3",width:"7",height:"7",rx:"1"}),h.jsx("rect",{x:"14",y:"3",width:"7",height:"7",rx:"1"}),h.jsx("rect",{x:"3",y:"14",width:"7",height:"7",rx:"1"}),h.jsx("rect",{x:"14",y:"14",width:"7",height:"7",rx:"1"})]})}),t.map((m,y)=>{const g=h0(m),p=d===g;return h.jsx("img",{ref:v=>{r.current[g]=v},src:m.thumb||m.url||m.image,alt:"",className:`history-thumb${p?" active":""}`,onClick:()=>l(m)},m.filename??`${y}-${m.image}`)})]})}function cj(){const[t,i]=Y.useState(null),[l,o]=Y.useState(!1);return Y.useEffect(()=>{let r=!1;return t1().then(u=>{r||i(u)}).catch(()=>{r||o(!0)}),()=>{r=!0}},[]),{data:t,error:l}}function uj(){const[t,i]=Y.useState(null);return Y.useEffect(()=>{let l=!1,o=null;const r=async()=>{try{const u=await e1();if(l)return;i(u),u.status==="starting"&&(o=setTimeout(r,3e3))}catch{l||i(null)}};return r(),()=>{l=!0,o&&clearTimeout(o)}},[]),t}function dj(t){return t==="ready"?"Ready":t==="auth_required"?"Login required":t==="starting"?"Starting":t==="offline"?"Offline":"Checking"}function fj(){const{t}=Te(),i=uj(),{data:l,error:o}=cj(),r=l?.apiKeySource==="env"||l?.apiKeySource==="config"||l?.apiKeyValid===!0,u=i?.status==="ready",d=l?.apiKeySource==="config"?t("settings.account.apiSourceConfig"):t("settings.account.apiSourceEnv");return h.jsxs(h.Fragment,{children:[h.jsxs("article",{className:"settings-row",children:[h.jsxs("div",{className:"settings-row__copy",children:[h.jsx("p",{className:"settings-eyebrow",children:t("settings.account.primaryEyebrow")}),h.jsx("h4",{children:t("settings.account.oauthTitle")}),h.jsx("p",{children:t("settings.account.oauthBody")})]}),h.jsxs("div",{className:`settings-status${u?" is-ok":""}`,children:[h.jsx("span",{"aria-hidden":"true"}),dj(i?.status)]})]}),r?h.jsxs("article",{className:"settings-row",children:[h.jsxs("div",{className:"settings-row__copy",children:[h.jsx("p",{className:"settings-eyebrow",children:d}),h.jsx("h4",{children:t("settings.account.apiTitle")}),h.jsx("p",{children:t("settings.account.apiBody")})]}),h.jsxs("div",{className:"settings-status is-muted",children:[h.jsx("span",{"aria-hidden":"true"}),t(o?"settings.account.apiUnknown":"settings.account.apiDisabled")]})]}):null]})}const hj={ko:"KO",en:"EN"};function mj(){const{t,locale:i}=Te(),l=W(o=>o.setLocale);return h.jsx("div",{className:"lang-toggle",role:"group","aria-label":t("language.label"),children:Hw.map(o=>h.jsx("button",{type:"button",className:`lang-toggle__btn ${i===o?"is-active":""}`,onClick:()=>l(o),"aria-pressed":i===o,title:t(`language.${o}`),children:h.jsx("span",{className:"lang-toggle__label",children:hj[o]})},o))})}const gj=["system","dark","light"];function pj(){const{t}=Te(),i=W(g=>g.theme),l=W(g=>g.setTheme),o=W(g=>g.themeFamily),r=W(g=>g.setThemeFamily),[u,d]=Y.useState(!1),m=Y.useRef(null);Y.useEffect(()=>{if(!u)return;const g=v=>{m.current&&(m.current.contains(v.target)||d(!1))},p=v=>{v.key==="Escape"&&d(!1)};return document.addEventListener("mousedown",g),document.addEventListener("keydown",p),()=>{document.removeEventListener("mousedown",g),document.removeEventListener("keydown",p)}},[u]);const y=g=>t(`theme.family.${g}`);return h.jsxs("div",{className:"theme-toggle","aria-label":t("theme.label"),children:[h.jsxs("div",{className:"theme-toggle__row",children:[h.jsx("span",{className:"theme-toggle__label",id:"theme-style-label",children:t("theme.styleLabel")}),h.jsxs("div",{className:"theme-toggle__family",ref:m,children:[h.jsxs("button",{type:"button",className:"theme-toggle__family-trigger","aria-haspopup":"listbox","aria-expanded":u,"aria-labelledby":"theme-style-label",onClick:()=>d(g=>!g),children:[h.jsx("span",{className:`theme-toggle__family-dot theme-toggle__family-dot--${o}`,"aria-hidden":"true"}),h.jsx("span",{className:"theme-toggle__family-name",children:y(o)}),h.jsx("span",{className:"theme-toggle__family-caret","aria-hidden":"true",children:"▾"})]}),u?h.jsx("ul",{className:"theme-toggle__family-menu",role:"listbox","aria-labelledby":"theme-style-label",children:b0.map(g=>h.jsx("li",{role:"none",children:h.jsxs("button",{type:"button",role:"option","aria-selected":o===g,className:`theme-toggle__family-option ${o===g?"is-active":""}`,onClick:()=>{r(g),d(!1)},children:[h.jsx("span",{className:`theme-toggle__family-dot theme-toggle__family-dot--${g}`,"aria-hidden":"true"}),h.jsx("span",{className:"theme-toggle__family-name",children:y(g)})]})},g))}):null]})]}),h.jsxs("div",{className:"theme-toggle__row",children:[h.jsx("span",{className:"theme-toggle__label",id:"theme-mode-label",children:t("theme.modeLabel")}),h.jsx("div",{className:"theme-toggle__mode",role:"group","aria-labelledby":"theme-mode-label",children:gj.map(g=>h.jsx("button",{type:"button",className:`theme-toggle__btn ${i===g?"is-active":""}`,onClick:()=>l(g),"aria-pressed":i===g,title:t(`theme.${g}`),children:t(`theme.${g}`)},g))})]})]})}const Wd=["account","generation","appearance","language","future"];function po({id:t,setRef:i,children:l}){const{t:o}=Te();return h.jsxs("section",{id:t,ref:r=>i(t,r),className:"settings-section","aria-labelledby":`settings-section-${t}`,children:[h.jsx("header",{className:"settings-section__header",children:h.jsxs("div",{children:[h.jsx("h3",{id:`settings-section-${t}`,children:o(`settings.sections.${t}.title`)}),h.jsx("p",{children:o(`settings.sections.${t}.hint`)})]})}),h.jsx("div",{className:"settings-section__body",children:l})]})}function yj(){const{t}=Te(),i=W(p=>p.activeSettingsSection),l=W(p=>p.setActiveSettingsSection),o=W(p=>p.closeSettings),r=Y.useRef(null),u=Y.useRef(null),d=Y.useRef(!1),m=Y.useRef({account:null,generation:null,appearance:null,language:null,future:null}),y=(p,v)=>{m.current[p]=v},g=p=>{l(p),d.current=!0,m.current[p]?.scrollIntoView({behavior:"auto",block:"start"}),u.current!==null&&window.clearTimeout(u.current),u.current=window.setTimeout(()=>{d.current=!1,u.current=null},120)};return Y.useEffect(()=>{const p=v=>{v.key==="Escape"&&o()};return window.addEventListener("keydown",p),()=>window.removeEventListener("keydown",p)},[o]),Y.useEffect(()=>{const p=r.current;if(!p||typeof IntersectionObserver!="function")return;const v=new IntersectionObserver(x=>{if(d.current)return;const w=x.filter(A=>A.isIntersecting).sort((A,C)=>C.intersectionRatio-A.intersectionRatio)[0]?.target.id;w&&Wd.includes(w)&&l(w)},{root:p,threshold:[.35,.6]});for(const x of Wd){const S=m.current[x];S&&v.observe(S)}return()=>v.disconnect()},[l]),Y.useEffect(()=>()=>{u.current!==null&&window.clearTimeout(u.current)},[]),h.jsx("main",{ref:r,className:"settings-workspace","aria-labelledby":"settings-title",children:h.jsxs("div",{className:"settings-shell",children:[h.jsxs("header",{className:"settings-header",children:[h.jsxs("div",{children:[h.jsx("p",{className:"settings-eyebrow",children:t("settings.eyebrow")}),h.jsx("h2",{id:"settings-title",children:t("settings.title")}),h.jsx("p",{children:t("settings.subtitle")})]}),h.jsx("button",{type:"button",className:"settings-close",onClick:o,"aria-label":t("settings.closeAria"),title:t("settings.closeTitle"),children:"X"})]}),h.jsxs("div",{className:"settings-layout",children:[h.jsx("nav",{className:"settings-nav","aria-label":t("settings.navAria"),children:Wd.map(p=>h.jsxs("button",{type:"button",className:`settings-nav__item${i===p?" is-active":""}`,onClick:()=>g(p),"aria-label":t("settings.jumpTo",{section:t(`settings.sections.${p}.title`)}),children:[h.jsx("span",{children:t(`settings.sections.${p}.title`)}),h.jsx("small",{children:t(`settings.sections.${p}.hint`)})]},p))}),h.jsxs("section",{className:"settings-content","aria-label":t("settings.contentAria"),children:[h.jsx(po,{id:"account",setRef:y,children:h.jsx(fj,{})}),h.jsx(po,{id:"generation",setRef:y,children:h.jsxs("article",{className:"settings-row",children:[h.jsxs("div",{className:"settings-row__copy",children:[h.jsx("h4",{children:t("settings.imageModel.title")}),h.jsx("p",{children:t("settings.imageModel.body")}),h.jsx("p",{className:"settings-row__microcopy",children:t("settings.imageModel.unsupportedHelp")})]}),h.jsx("div",{className:"settings-row__control",children:h.jsx(Y0,{variant:"settings"})})]})}),h.jsx(po,{id:"appearance",setRef:y,children:h.jsxs("article",{className:"settings-row",children:[h.jsxs("div",{className:"settings-row__copy",children:[h.jsx("h4",{children:t("settings.appearance.themeTitle")}),h.jsx("p",{children:t("settings.appearance.themeBody")})]}),h.jsx("div",{className:"settings-row__control",children:h.jsx(pj,{})})]})}),h.jsx(po,{id:"language",setRef:y,children:h.jsxs("article",{className:"settings-row",children:[h.jsxs("div",{className:"settings-row__copy",children:[h.jsx("h4",{children:t("settings.language.title")}),h.jsx("p",{children:t("settings.language.body")})]}),h.jsx("div",{className:"settings-row__control",children:h.jsx(mj,{})})]})}),h.jsx(po,{id:"future",setRef:y,children:h.jsxs("article",{className:"settings-note",children:[h.jsx("h4",{children:t("settings.future.title")}),h.jsx("p",{children:t("settings.future.body")})]})})]})]})]})})}function vj(){const t=W(r=>r.toast),[i,l]=Y.useState(!1);if(Y.useEffect(()=>{if(!t)return;l(!0);const r=setTimeout(()=>l(!1),3e3);return()=>clearTimeout(r)},[t]),!t)return null;const o=["toast",i?"visible":"",t.error?"error":""].filter(Boolean).join(" ");return h.jsx("div",{className:o,children:t.message})}function xj(){const{t}=Te(),i=W(v=>v.errorCard),l=W(v=>v.dismissErrorCard);if(!i)return null;const o=wo[i.code]??wo.UNKNOWN,r=`${o.cardKey??"errorCard.unknown"}.title`,u=`${o.cardKey??"errorCard.unknown"}.body`,d=o.cta?`${o.cardKey??"errorCard.unknown"}.cta`:null,m=t(r),y=t(u),g=d?t(d):null,p=()=>{if(o.cta==="reload"){window.location.reload();return}else l()};return h.jsx("div",{className:"error-card-backdrop",role:"alertdialog","aria-labelledby":"error-card-title",children:h.jsxs("div",{className:"error-card",children:[h.jsx("div",{className:"error-card__icon","aria-hidden":"true",children:h.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[h.jsx("circle",{cx:"12",cy:"12",r:"10"}),h.jsx("line",{x1:"12",y1:"8",x2:"12",y2:"12"}),h.jsx("line",{x1:"12",y1:"16",x2:"12.01",y2:"16"})]})}),h.jsxs("div",{className:"error-card__content",children:[h.jsx("h3",{id:"error-card-title",className:"error-card__title",children:m}),h.jsx("p",{className:"error-card__body",children:y}),i.fallbackMessage&&h.jsxs("details",{className:"error-card__details",children:[h.jsx("summary",{children:t("errorCard.details")}),h.jsx("pre",{children:i.fallbackMessage})]}),h.jsxs("div",{className:"error-card__actions",children:[h.jsx("button",{type:"button",className:"btn btn--ghost",onClick:l,children:t("errorCard.close")}),g&&h.jsx("button",{type:"button",className:"btn btn--primary",onClick:p,children:g})]})]})]})})}function bj(t){if(!t)return"earlier";const i=new Date(t);if(Number.isNaN(i.getTime()))return"earlier";const o=Math.floor((new Date().getTime()-i.getTime())/864e5);return o===0?"today":o===1?"yesterday":o<7?"thisWeek":i.toLocaleDateString("ko-KR",{year:"numeric",month:"short",day:"numeric"})}function m0(t){return t.filename||t.image}function Sj({item:t,onOpen:i,onCopyPath:l,onDownloadManifest:o}){const{t:r}=Te(),d=t.cards?.find(m=>m.headline)?.headline||t.headline||r("gallery.cardNewsSet");return h.jsxs(h.Fragment,{children:[h.jsxs("button",{type:"button",className:"gallery__tile",onClick:()=>i(t),title:d,children:[t.image?h.jsx("img",{src:t.image,alt:d,loading:"lazy"}):null,h.jsxs("div",{className:"gallery__caption",children:[h.jsx("small",{children:r("gallery.cardNewsSet")}),h.jsx("span",{className:"gallery__caption-text",children:d})]}),h.jsx("div",{className:"gallery-card-news-strip",children:(t.cards||[]).slice(0,5).map((m,y)=>h.jsxs("span",{children:[m.url?h.jsx("img",{src:m.url,alt:m.headline??"",loading:"lazy"}):null,h.jsx("em",{children:m.cardOrder??y+1})]},`${m.url}-${y}`))})]}),h.jsxs("div",{className:"gallery-card-news-actions",children:[h.jsx("span",{children:r("gallery.cardNewsCount",{n:t.cards?.length??0})}),h.jsx("button",{type:"button",onClick:()=>i(t),children:r("gallery.openCardNewsSet")}),h.jsx("button",{type:"button",onClick:m=>l(t,m),children:r("gallery.copyCardNewsSetPath")}),h.jsx("button",{type:"button",onClick:m=>o(t,m),children:r("gallery.downloadCardNewsManifest")})]})]})}function wj({item:t,active:i,itemRef:l,onSelect:o,onDelete:r,t:u}){return h.jsxs("div",{ref:l,className:`gallery__tile-wrap${i?" gallery__tile-wrap--active":""}`,children:[h.jsxs("button",{type:"button",className:`gallery__tile${i?" gallery__tile--active":""}`,onClick:()=>o(t),title:t.prompt??"",children:[h.jsx("img",{src:t.thumb||t.image,alt:t.prompt??u("gallery.imageAltFallback"),loading:"lazy",decoding:"async"}),t.prompt&&h.jsx("div",{className:"gallery__caption",children:h.jsx("span",{className:"gallery__caption-text",children:t.prompt})})]}),t.filename&&h.jsx("button",{type:"button",className:"gallery__delete",onClick:d=>r(t,d),title:u("gallery.deleteTitle"),"aria-label":u("gallery.deleteAria"),children:"×"})]})}const g0="ima2.storageNoticeDismissed.0.09.23";function Nj(){const{t}=Te(),i=W(V=>V.galleryOpen),l=W(V=>V.closeGallery),o=W(V=>V.history),r=W(V=>V.selectHistory),u=W(V=>V.currentImage),d=W(V=>V.removeFromHistory),m=W(V=>V.addHistoryItem),y=W(V=>V.showToast),[g,p]=Y.useState(""),[v,x]=Y.useState("date"),[S,w]=Y.useState([]),[A,C]=Y.useState([]),[j,R]=Y.useState(null),[E,_]=Y.useState(null),[U,M]=Y.useState(()=>{try{return localStorage.getItem(g0)==="1"}catch{return!1}}),I=Y.useRef(null),L=Y.useRef({}),$=Y.useRef(0);Y.useEffect(()=>{if(!i)return;const V=se=>{se.key==="Escape"&&l()};return window.addEventListener("keydown",V),()=>window.removeEventListener("keydown",V)},[i,l]),Y.useEffect(()=>{i||(p(""),R(null))},[i]),Y.useEffect(()=>{if(!i)return;let V=!1;return(async()=>{try{const se=await i1();V||_(se)}catch{V||_({generatedDirLabel:"~/.ima2/generated",generatedCount:0,legacyCandidatesScanned:0,legacySourcesFound:0,legacyFilesFound:0,state:"unknown",messageKind:"unknown",recoveryDocsPath:"docs/RECOVER_OLD_IMAGES.md",doctorCommand:"ima2 doctor",overrides:{generatedDir:!1,configDir:!1}})}})(),()=>{V=!0}},[i]),Y.useEffect(()=>{if(!i||v!=="session")return;let V=!1;return(async()=>{try{const se=await a1({limit:500});if(V)return;const de=le=>{const fe=le.kind,be=fe==="classic"||fe==="edit"||fe==="generate"||fe==="card-news-card"||fe==="card-news-set"?fe:null;return{image:le.url,url:le.url,filename:le.filename,prompt:le.prompt??void 0,size:le.size??void 0,quality:le.quality??void 0,model:le.model??void 0,provider:le.provider,createdAt:le.createdAt,sessionId:le.sessionId??null,nodeId:le.nodeId??null,clientNodeId:le.clientNodeId??null,kind:be,setId:le.setId??null,cardId:le.cardId??null,cardOrder:le.cardOrder??null,headline:le.headline??null,body:le.body??null,cards:le.cards}};w(se.sessions.map(le=>({sessionId:le.sessionId,title:le.title??null,label:le.label??null,displayLabel:le.title||le.label||le.sessionId.slice(0,8),items:le.items.map(de)}))),C(se.loose.map(de))}catch{}})(),()=>{V=!0}},[i,v]);const ce=Y.useMemo(()=>{const V=g.trim().toLowerCase().normalize("NFC");return V?o.filter(se=>(se.prompt??"").toLowerCase().normalize("NFC").includes(V)||(se.filename??"").toLowerCase().normalize("NFC").includes(V)):o},[o,g]),K=Y.useMemo(()=>{const V=new Map;for(const se of ce){const de=bj(se.createdAt);V.has(de)||V.set(de,[]),V.get(de).push(se)}return Array.from(V.entries())},[ce]),te=v==="session"?S.reduce((V,se)=>V+se.items.length,0)+A.length:ce.length;Y.useLayoutEffect(()=>{if(!i)return;const V=u?m0(u):null,se=V?L.current[V]:null;if(se){se.scrollIntoView({block:"center"});return}I.current&&(I.current.scrollTop=$.current)},[i,u?.filename,u?.image,v,te,K.length,S.length,A.length]),Y.useEffect(()=>{if(!j)return;const V=setInterval(()=>{R(se=>!se||Date.now()>=se.expiresAt?null:{...se})},500);return()=>clearInterval(V)},[j]);async function ue(V,se){if(se.stopPropagation(),!!V.filename)try{const de=await o1(V.filename);d(V.filename),R({filename:V.filename,trashId:de.trashId,item:V,expiresAt:Date.now()+9500})}catch(de){console.error("[gallery] delete failed",de)}}async function D(){if(j)try{await s1(j.filename,j.trashId),m(j.item)}catch(V){console.error("[gallery] restore failed",V)}finally{R(null)}}async function Z(){try{await l1(),y(t("toast.openGeneratedDirOpened"))}catch{y(t("toast.openGeneratedDirFailed"),!0)}}async function z(V){if(V.setId)try{await Se.getState().loadSet(V.setId),W.getState().setUIMode("card-news"),l()}catch{y(t("gallery.openCardNewsSetFailed"),!0)}}async function H(V,se){if(se.stopPropagation(),!V.setId)return;const de=`generated/cardnews/${V.setId}`;try{await navigator.clipboard?.writeText(de),y(t("gallery.cardNewsPathCopied"))}catch{y(t("toast.copyFailed"),!0)}}function G(V,se){se.stopPropagation(),V.setId&&window.open(RN(V.setId),"_blank","noopener,noreferrer")}function B(){M(!0);try{localStorage.setItem(g0,"1")}catch{}}if(!i)return null;const J=V=>V==="earlier"||V==="today"||V==="yesterday"||V==="thisWeek"?t(`gallery.${V}`):V,T=(V,se,de)=>{const le=u?.image===V.image,fe=be=>{L.current[m0(V)]=be};return V.kind==="card-news-set"?h.jsx("div",{ref:fe,className:"gallery__tile-wrap gallery-card-news-set",children:h.jsx(Sj,{item:V,onOpen:be=>{z(be)},onCopyPath:H,onDownloadManifest:G})},`${se}-${de}-${V.filename??de}`):h.jsx(wj,{item:V,active:le,itemRef:fe,onSelect:be=>{r(be),l()},onDelete:ue,t},`${se}-${de}-${V.filename??de}`)},k=v==="session",ne=E!=null&&E.state!=="ok"&&!U,ae=E?.state==="recoverable"?"gallery.storageNoticeRecoverable":E?.state==="not_found"?"gallery.storageNoticeNotFound":"gallery.storageNoticeUnknown";return h.jsx("div",{className:"gallery-backdrop",onClick:l,role:"presentation",children:h.jsxs("div",{className:"gallery",role:"dialog","aria-modal":"true","aria-label":t("gallery.ariaLabel"),onClick:V=>V.stopPropagation(),children:[h.jsxs("div",{className:"gallery__header",children:[h.jsxs("div",{className:"gallery__title-row",children:[h.jsx("div",{className:"gallery__title",children:t("gallery.title")}),h.jsxs("div",{className:"gallery__meta",children:[t("gallery.total",{n:te}),g?t("gallery.totalFiltered",{n:o.length}):""]}),h.jsxs("div",{className:"gallery__group-toggle",role:"tablist","aria-label":t("gallery.sortByAria"),children:[h.jsx("button",{type:"button",role:"tab","aria-selected":v==="date",className:v==="date"?"active":"",onClick:()=>x("date"),children:t("gallery.sortByDate")}),h.jsx("button",{type:"button",role:"tab","aria-selected":v==="session",className:v==="session"?"active":"",onClick:()=>x("session"),children:t("gallery.sortBySession")})]})]}),h.jsx("input",{type:"text",className:"gallery__search",placeholder:t(k?"gallery.searchDisabledPlaceholder":"gallery.searchPlaceholder"),value:g,onChange:V=>p(V.target.value),autoFocus:!0,disabled:k}),h.jsx("button",{type:"button",className:"gallery__close",onClick:l,"aria-label":t("gallery.closeAria"),title:t("gallery.closeTitle"),children:"×"})]}),h.jsxs("div",{className:`gallery__storage-bar${ne?" gallery__storage-bar--notice":""}`,children:[ne?h.jsxs("div",{className:"gallery__storage-copy",children:[h.jsx("div",{className:"gallery__storage-title",children:t("gallery.storageNoticeTitle")}),h.jsx("div",{className:"gallery__storage-text",children:t(ae)})]}):h.jsx("div",{className:"gallery__storage-copy gallery__storage-copy--quiet",children:E?.generatedDirLabel??"~/.ima2/generated"}),h.jsxs("div",{className:"gallery__storage-actions",children:[h.jsx("button",{type:"button",className:"gallery__storage-button",onClick:Z,title:t("gallery.openGeneratedDirTitle"),children:t("gallery.openGeneratedDir")}),ne&&h.jsx("button",{type:"button",className:"gallery__storage-button gallery__storage-button--ghost",onClick:B,children:t("common.close")})]})]}),h.jsx("div",{className:"gallery__scroll",ref:I,onScroll:()=>{$.current=I.current?.scrollTop??0},children:k?h.jsxs(h.Fragment,{children:[S.map(V=>h.jsxs("section",{className:"gallery__group",children:[h.jsxs("header",{className:"gallery__group-header",children:[h.jsx("span",{className:"gallery__group-label",title:V.sessionId,children:V.title?V.displayLabel:t("gallery.sessionLabel",{name:V.displayLabel})}),h.jsx("span",{className:"gallery__group-count",children:V.items.length})]}),h.jsx("div",{className:"gallery__grid",children:V.items.map((se,de)=>T(se,V.sessionId,de))})]},V.sessionId)),A.length>0&&h.jsxs("section",{className:"gallery__group",children:[h.jsxs("header",{className:"gallery__group-header",children:[h.jsx("span",{className:"gallery__group-label",children:t("gallery.standalone")}),h.jsx("span",{className:"gallery__group-count",children:A.length})]}),h.jsx("div",{className:"gallery__grid",children:A.map((V,se)=>T(V,"loose",se))})]}),S.length===0&&A.length===0&&h.jsx("div",{className:"gallery__empty",children:t("gallery.emptySessions")})]}):ce.length===0?h.jsx("div",{className:"gallery__empty",children:o.length===0?t("gallery.emptyAll"):t("gallery.noResults")}):K.map(([V,se])=>h.jsxs("section",{className:"gallery__group",children:[h.jsxs("header",{className:"gallery__group-header",children:[h.jsx("span",{className:"gallery__group-label",children:J(V)}),h.jsx("span",{className:"gallery__group-count",children:se.length})]}),h.jsx("div",{className:"gallery__grid",children:se.map((de,le)=>T(de,V,le))})]},V))}),j&&h.jsxs("div",{className:"gallery__undo",children:[h.jsx("span",{children:t("gallery.deleted",{filename:j.filename})}),h.jsx("button",{type:"button",onClick:D,children:t("gallery.undo")}),h.jsx("span",{className:"gallery__undo-timer",children:t("gallery.secondsSuffix",{n:Math.max(0,Math.ceil((j.expiresAt-Date.now())/1e3))})})]})]})})}function _j(t){return t.includes("ratio")?"sizeConfirm.reasonRatio":t.includes("pixels")?"sizeConfirm.reasonPixels":t.includes("min")?"sizeConfirm.reasonMin":t.includes("max")?"sizeConfirm.reasonMax":"sizeConfirm.reasonSnap"}function Ej(){const t=W(m=>m.customSizeConfirm),i=W(m=>m.confirmCustomSizeAdjustment),l=W(m=>m.cancelCustomSizeAdjustment),o=Y.useRef(null),{t:r}=Te();if(Y.useEffect(()=>{if(!t)return;o.current?.focus();const m=y=>{y.key==="Escape"&&l()};return window.addEventListener("keydown",m),()=>window.removeEventListener("keydown",m)},[l,t]),!t)return null;const u=`${t.requestedW}x${t.requestedH}`,d=`${t.adjustedW}x${t.adjustedH}`;return h.jsx("div",{className:"modal-backdrop custom-size-confirm-backdrop",role:"presentation",children:h.jsxs("div",{className:"modal custom-size-confirm",role:"dialog","aria-modal":"true","aria-labelledby":"custom-size-confirm-title","aria-describedby":"custom-size-confirm-body",children:[h.jsx("div",{id:"custom-size-confirm-title",className:"modal__title",children:r("sizeConfirm.title")}),h.jsxs("div",{id:"custom-size-confirm-body",className:"modal__body",children:[h.jsx("p",{children:r("sizeConfirm.body")}),h.jsxs("dl",{className:"size-confirm__pairs",children:[h.jsxs("div",{className:"size-confirm__pair",children:[h.jsx("dt",{children:r("sizeConfirm.requested")}),h.jsx("dd",{children:u})]}),h.jsxs("div",{className:"size-confirm__pair",children:[h.jsx("dt",{children:r("sizeConfirm.adjusted")}),h.jsx("dd",{children:d})]})]}),h.jsx("p",{className:"size-confirm__reason",children:r(_j(t.reasons))})]}),h.jsxs("div",{className:"modal__actions",children:[h.jsx("button",{ref:o,type:"button",className:"modal__btn modal__btn--secondary",onClick:l,children:r("sizeConfirm.cancel")}),h.jsx("button",{type:"button",className:"modal__btn",onClick:()=>{i()},children:r("sizeConfirm.approve")})]})]})})}function Cj(t){const i=t.slots.filter(o=>o.kind==="text"||o.textKind).length,l=t.slots.filter(o=>o.kind==="image").length;return`${i} text / ${l} image`}function Tj(){const{t}=Te(),i=Se(r=>r.templates),l=Se(r=>r.imageTemplateId),o=Se(r=>r.setImageTemplate);return h.jsxs("section",{className:"card-news-panel",children:[h.jsxs("div",{className:"card-news-panel__head",children:[h.jsx("span",{children:t("cardNews.imageTemplate")}),h.jsx("button",{type:"button",disabled:!0,title:t("cardNews.newTemplateLater"),children:"+"})]}),h.jsx("div",{className:"card-news-template-grid",children:i.map(r=>h.jsxs("button",{type:"button",className:`card-news-template${l===r.id?" selected":""}`,onClick:()=>o(r.id),children:[h.jsx("img",{src:r.previewUrl,alt:""}),h.jsxs("span",{className:"card-news-template__body",children:[h.jsx("span",{className:"card-news-template__name",children:r.name}),h.jsx("span",{className:"card-news-template__meta",children:Cj(r)}),h.jsx("span",{className:"card-news-template__sizes",children:r.recommendedOutputSizes.join(" · ")})]})]},r.id))})]})}function Aj(){const{t}=Te(),i=Se(r=>r.roleTemplates),l=Se(r=>r.roleTemplateId),o=Se(r=>r.setRoleTemplate);return h.jsxs("section",{className:"card-news-panel",children:[h.jsx("div",{className:"card-news-panel__head",children:h.jsx("span",{children:t("cardNews.roleTemplate")})}),h.jsx("div",{className:"card-news-role-row",children:i.map(r=>h.jsx("button",{type:"button",className:l===r.id?"selected":"",onClick:()=>o(r.id),children:r.name},r.id))})]})}function Mj({status:t,locked:i}){const{t:l}=Te(),o=i?"locked":t,r=o==="queued"||o==="generating";return h.jsxs("span",{className:`card-news-status-badge card-news-status-badge--${o}`,children:[r?h.jsx("span",{className:"card-news-spinner","aria-hidden":"true"}):null,l(`cardNews.status.${o}`)]})}function jj(t,i){const l=`cardNews.roles.${t}`,o=i(l);return o===l?t:o}function zj(){const{t}=Te(),i=Se(r=>r.activePlan),l=Se(r=>r.selectedCardId),o=Se(r=>r.selectCard);return i?h.jsx("div",{className:"card-news-deck","aria-label":"Card deck",onWheel:Dx,children:i.cards.map(r=>h.jsxs("button",{type:"button",className:`card-news-deck-card${l===r.id?" selected":""}`,onClick:()=>o(r.id),children:[h.jsx("span",{children:String(r.order).padStart(2,"0")}),r.url?h.jsx("img",{src:r.url,alt:"",className:"card-news-deck-card__thumb"}):null,h.jsx("strong",{children:jj(r.role,t)}),h.jsx("small",{children:r.headline||r.textFields.find(u=>u.renderMode==="in-image")?.text}),h.jsx(Mj,{status:r.status,locked:r.locked})]},r.id))}):null}const Rj=[];function Dj(){const{t}=Te(),i=Se(r=>r.activePlan?.cards??Rj),l=Se(r=>r.generating),o={total:i.length,done:i.filter(r=>r.status==="generated").length,queued:i.filter(r=>r.status==="queued").length,errors:i.filter(r=>r.status==="error").length,skipped:i.filter(r=>r.locked||r.status==="skipped").length};return o.total?h.jsxs("div",{className:"card-news-batch-bar","aria-live":"polite",children:[h.jsx("span",{children:l?t("cardNews.progress.generating",{done:o.done,total:o.total}):t("cardNews.progress.summary",{done:o.done,total:o.total})}),h.jsx("span",{children:t("cardNews.progress.detail",{queued:o.queued,errors:o.errors,skipped:o.skipped})})]}):null}function Oj({meta:t}){const{t:i}=Te();if(!t)return null;const l=t.mode==="structured-output"?i("cardNews.planner.structured"):t.mode==="json-mode"?i("cardNews.planner.jsonMode"):i("cardNews.planner.fallback");return h.jsxs("span",{className:"card-news-planner-badge",children:[l," · ",t.model,t.repaired?` · ${i("cardNews.planner.repaired")}`:""]})}function Hj(t){const i=t.textFields.filter(l=>l.renderMode==="in-image"&&l.text).map(l=>`[${l.placement}] ${l.text}`);return[t.headline,...i].filter(Boolean).join(`
|
|
22
|
+
`)}function Ij(t,i){const l=t.slotId?i?.slots.find(o=>o.id===t.slotId):null;return l?{left:`${l.x/20.48}%`,top:`${l.y/20.48}%`,width:`${l.w/20.48}%`,minHeight:`${l.h/20.48}%`}:Lj(t)}const p0={"top-left":{left:"10%",top:"10%",width:"34%"},"top-center":{left:"50%",top:"10%",width:"42%",transform:"translateX(-50%)"},"top-right":{right:"10%",top:"10%",width:"34%"},"center-left":{left:"10%",top:"50%",width:"34%",transform:"translateY(-50%)"},center:{left:"50%",top:"50%",width:"44%",transform:"translate(-50%, -50%)"},"center-right":{right:"10%",top:"50%",width:"34%",transform:"translateY(-50%)"},"bottom-left":{left:"10%",bottom:"10%",width:"34%"},"bottom-center":{left:"50%",bottom:"10%",width:"42%",transform:"translateX(-50%)"},"bottom-right":{right:"10%",bottom:"10%",width:"34%"},free:{left:"50%",top:"50%",width:"44%",transform:"translate(-50%, -50%)"}};function Lj(t){return p0[t.placement]||p0.center}function Bj(){const{t}=Te(),i=Se(v=>v.activePlan),l=Se(v=>v.selectedCardId),o=Se(v=>v.selectedTextFieldId),r=Se(v=>v.templates),u=Se(v=>v.plannerMeta),d=Se(v=>v.retryCard),m=Se(v=>v.selectTextField),y=i?.cards.find(v=>v.id===l)||i?.cards[0],g=i?r.find(v=>v.id===i.imageTemplateId):void 0,p=y?.textFields.filter(v=>v.renderMode==="in-image")||[];return!i||!y?h.jsxs("section",{className:"card-news-empty",children:[h.jsxs("div",{className:"card-news-empty__deck","aria-hidden":"true",children:[h.jsx("div",{className:"card-news-empty__card card-news-empty__card--back"}),h.jsx("div",{className:"card-news-empty__card card-news-empty__card--mid"}),h.jsxs("div",{className:"card-news-empty__card",children:[h.jsx("span",{}),h.jsx("strong",{}),h.jsx("em",{})]})]}),h.jsxs("div",{className:"card-news-empty__copy",children:[h.jsx("span",{children:t("uiMode.cardNews")}),h.jsx("h2",{children:t("cardNews.emptyTitle")}),h.jsx("p",{children:t("cardNews.emptyBody")})]})]}):h.jsxs("section",{className:"card-news-stage",children:[h.jsxs("div",{className:"card-news-stage__header",children:[h.jsxs("div",{children:[h.jsx("h2",{children:i.title}),h.jsx("p",{children:i.generationStrategy}),h.jsx(Oj,{meta:u})]}),h.jsxs("span",{children:[y.order," / ",i.cards.length]})]}),h.jsx(Dj,{}),h.jsxs("div",{className:"card-news-preview",children:[y.status==="queued"||y.status==="generating"?h.jsx("div",{className:"card-news-preview__loading",children:t("cardNews.progress.cardGenerating")}):y.status==="error"?h.jsxs("div",{className:"card-news-preview__error",children:[h.jsx("span",{children:y.error||t("cardNews.error")}),y.locked?null:h.jsx("button",{type:"button",onClick:()=>{d(y.id)},children:t("cardNews.retryCard")})]}):y.url?h.jsx("img",{src:y.url,alt:y.headline}):h.jsx("div",{className:"card-news-preview__slot"}),p.length?h.jsx("div",{className:"card-news-stage-overlay",children:p.map(v=>h.jsx("button",{type:"button",className:`card-news-stage-overlay__field card-news-stage-overlay__field--${v.placement}${o===v.id?" selected":""}`,style:Ij(v,g),onClick:()=>m(v.id),"aria-label":t("cardNews.selectTextField",{text:v.text||v.kind}),children:h.jsx("span",{children:v.text||v.kind})},v.id))}):null]}),y.url?h.jsxs("div",{className:"card-news-result-actions",children:[h.jsx("button",{type:"button",onClick:()=>navigator.clipboard?.writeText(y.visualPrompt),children:t("cardNews.actions.copyPrompt")}),h.jsx("button",{type:"button",onClick:()=>navigator.clipboard?.writeText(Hj(y)),children:t("cardNews.actions.copyCopy")}),h.jsx("a",{href:y.url,target:"_blank",rel:"noreferrer",children:t("cardNews.actions.openImage")}),h.jsx("a",{href:y.url,download:!0,children:t("cardNews.actions.downloadCard")})]}):null]})}function Ox(t,i){const l=`cardNews.placements.${t}`,o=i(l);return o===l?t:o}function kj({placement:t}){const{t:i}=Te();return h.jsx("span",{className:"card-news-placement-chip",children:Ox(t,i)})}const Uj=["headline","body","caption","cta","badge","number"],Gj=["top-left","top-center","top-right","center-left","center","center-right","bottom-left","bottom-center","bottom-right","free"],qj=["in-image","ui-only"],Yj=["primary","secondary","supporting"];function Cr(t,i,l){const o=`cardNews.${t}.${i}`,r=l(o);return r===o?i:r}function Vj({field:t,locked:i,selected:l=!1,onSelect:o,onChange:r,onRemove:u}){const{t:d}=Te(),m=t.text.length,y=typeof t.maxChars=="number"&&m>t.maxChars,g=t.maxChars===null||t.maxChars>80;return h.jsxs("div",{className:`card-news-text-field-card${l?" selected":""}`,onClick:o,children:[h.jsxs("div",{className:"card-news-text-field-card__header",children:[h.jsx("span",{children:Cr("textKinds",t.kind,d)}),h.jsx(kj,{placement:t.placement})]}),h.jsxs("label",{className:"card-news-field",children:[h.jsx("span",{children:d("cardNews.textFieldText")}),g?h.jsx("textarea",{value:t.text,disabled:i,onChange:p=>r({text:p.target.value,source:"user"})}):h.jsx("input",{value:t.text,disabled:i,onChange:p=>r({text:p.target.value,source:"user"})})]}),h.jsxs("div",{className:"card-news-text-field-card__grid",children:[h.jsxs("label",{className:"card-news-field",children:[h.jsx("span",{children:d("cardNews.textKind")}),h.jsx("select",{value:t.kind,disabled:i,onChange:p=>r({kind:p.target.value,source:"user"}),children:Uj.map(p=>h.jsx("option",{value:p,children:Cr("textKinds",p,d)},p))})]}),h.jsxs("label",{className:"card-news-field",children:[h.jsx("span",{children:d("cardNews.placement")}),h.jsx("select",{value:t.placement,disabled:i,onChange:p=>r({placement:p.target.value,source:"user"}),children:Gj.map(p=>h.jsx("option",{value:p,children:Ox(p,d)},p))})]}),h.jsxs("label",{className:"card-news-field",children:[h.jsx("span",{children:d("cardNews.renderMode")}),h.jsx("select",{value:t.renderMode,disabled:i,onChange:p=>r({renderMode:p.target.value,source:"user"}),children:qj.map(p=>h.jsx("option",{value:p,children:Cr("renderModes",p,d)},p))})]}),h.jsxs("label",{className:"card-news-field",children:[h.jsx("span",{children:d("cardNews.hierarchyLabel")}),h.jsx("select",{value:t.hierarchy,disabled:i,onChange:p=>r({hierarchy:p.target.value,source:"user"}),children:Yj.map(p=>h.jsx("option",{value:p,children:Cr("hierarchy",p,d)},p))})]})]}),h.jsxs("div",{className:`card-news-text-field-card__meta${y?" over":""}`,children:[h.jsx("span",{children:t.maxChars===null?m:`${m}/${t.maxChars}`}),y?h.jsx("span",{children:d("cardNews.textTooLong")}):null,u?h.jsx("button",{type:"button",disabled:i,onClick:u,children:d("cardNews.removeTextField")}):null]})]})}function Xj(){return{id:`tf_${Date.now().toString(36)}`,kind:"body",text:"",renderMode:"in-image",placement:"center",slotId:null,hierarchy:"supporting",maxChars:null,language:null,source:"user"}}function $j(){const{t}=Te(),i=Se(v=>v.activePlan),l=Se(v=>v.selectedCardId),o=Se(v=>v.selectedTextFieldId),r=Se(v=>v.updateCard),u=Se(v=>v.updateTextField),d=Se(v=>v.addTextField),m=Se(v=>v.removeTextField),y=Se(v=>v.selectTextField),g=Se(v=>v.retryCard),p=i?.cards.find(v=>v.id===l)||i?.cards[0];return p?h.jsxs("aside",{className:"card-news-inspector",children:[h.jsx("div",{className:"section-title",children:t("cardNews.inspector")}),h.jsxs("div",{className:"card-news-inspector-group",children:[h.jsx("span",{className:"card-news-inspector-label",children:t("cardNews.cardTitle")}),h.jsxs("label",{className:"card-news-field",children:[h.jsx("span",{children:t("cardNews.headline")}),h.jsx("input",{value:p.headline,disabled:p.locked,onChange:v=>r(p.id,{headline:v.target.value})})]})]}),h.jsxs("div",{className:"card-news-inspector-group",children:[h.jsxs("div",{className:"card-news-inspector-row",children:[h.jsx("span",{className:"card-news-inspector-label",children:t("cardNews.textFields")}),h.jsx("button",{type:"button",className:"secondary-btn",disabled:p.locked,onClick:()=>d(p.id,Xj()),children:t("cardNews.addTextField")})]}),p.textFields.length?p.textFields.map(v=>h.jsx(Vj,{field:v,locked:p.locked,selected:o===v.id,onSelect:()=>y(v.id),onChange:x=>u(p.id,v.id,x),onRemove:()=>m(p.id,v.id)},v.id)):h.jsx("p",{className:"card-news-muted",children:t("cardNews.noTextFields")})]}),h.jsxs("details",{className:"card-news-inspector-group card-news-advanced-prompt",children:[h.jsx("summary",{children:t("cardNews.designPrompt")}),h.jsxs("label",{className:"card-news-field",children:[h.jsx("span",{children:t("cardNews.visualPrompt")}),h.jsx("textarea",{value:p.visualPrompt,disabled:p.locked,onChange:v=>r(p.id,{visualPrompt:v.target.value})})]})]}),p.imageFilename?h.jsxs("div",{className:"card-news-generated-meta",children:[h.jsx("span",{children:t("cardNews.generatedMeta")}),h.jsx("code",{children:p.imageFilename}),h.jsx("span",{children:p.status})]}):null,p.locked?h.jsx("p",{className:"card-news-locked-help",children:t("cardNews.lockedHelp")}):null,h.jsx("button",{type:"button",className:`secondary-btn${p.locked?" active":""}`,onClick:()=>r(p.id,{locked:!p.locked}),children:p.locked?t("cardNews.locked"):t("cardNews.unlocked")}),h.jsx("button",{type:"button",className:"secondary-btn",disabled:p.locked||!["draft","error"].includes(p.status),onClick:()=>{g(p.id)},children:t("cardNews.retryCard")})]}):h.jsxs("aside",{className:"card-news-inspector card-news-inspector-empty",children:[h.jsx("div",{className:"section-title",children:t("cardNews.inspector")}),h.jsxs("div",{className:"card-news-inspector-empty__mock","aria-hidden":"true",children:[h.jsx("span",{}),h.jsx("strong",{}),h.jsx("i",{}),h.jsx("i",{})]}),h.jsx("p",{children:t("cardNews.noCard")})]})}function Zj(){const{t}=Te(),i=Se(o=>o.hydrate),l=Se(o=>o.error);return Y.useEffect(()=>{i()},[i]),h.jsxs("main",{className:"card-news-workspace","aria-label":t("cardNews.workspace"),children:[h.jsxs("div",{className:"card-news-setup",children:[h.jsx(Tj,{}),h.jsx(Aj,{})]}),h.jsxs("div",{className:"card-news-main",children:[l?h.jsx("div",{className:"card-news-error",role:"alert",children:l}):null,h.jsx(Bj,{}),h.jsx(zj,{})]}),h.jsx($j,{})]})}function Kj(){const t=W(w=>w.hydrateHistory),i=W(w=>w.loadSessions),l=W(w=>w.startInFlightPolling),o=W(w=>w.reconcileInflight),r=W(w=>w.syncFromStorage),u=W(w=>w.theme),d=W(w=>w.resolvedTheme),m=W(w=>w.themeFamily),y=W(w=>w.settingsOpen),g=W(w=>w.syncThemeFromStorage),p=W(w=>w.syncThemeFamilyFromStorage),v=W(w=>w.refreshResolvedTheme),S=W(w=>w.uiMode)==="node"&&xf?"node":"classic";return Y.useEffect(()=>{t(),i(),o(),l()},[t,i,o,l]),Y.useEffect(()=>{const w=A=>{A.key&&(A.key==="ima2.inFlight"||A.key==="ima2.selectedFilename"?r():A.key==="ima2:theme"?g():A.key==="ima2:themeFamily"&&p())};return window.addEventListener("storage",w),()=>window.removeEventListener("storage",w)},[r,g,p]),Y.useEffect(()=>{const w=document.documentElement;w.dataset.theme=d,w.dataset.themeMode=d,w.dataset.themeFamily=m,w.style.colorScheme=d},[d,m]),Y.useEffect(()=>{if(u!=="system")return;const w=window.matchMedia("(prefers-color-scheme: light)");return w.addEventListener("change",v),()=>w.removeEventListener("change",v)},[v,u]),Y.useEffect(()=>{const w=()=>{vN(W.getState)};return window.addEventListener("beforeunload",w),()=>{window.removeEventListener("beforeunload",w)}},[]),h.jsxs(h.Fragment,{children:[h.jsxs("div",{className:`app${y?" app--settings-open":""}`,"data-theme-mode":d,"data-theme-family":m,children:[h.jsx(kN,{}),h.jsx(rj,{}),y?h.jsx(yj,{}):S==="classic"?h.jsx(ly,{}):S==="node"?h.jsx(ej,{}):S==="card-news"?h.jsx(Zj,{}):h.jsx(ly,{}),S==="card-news"?null:h.jsx(sj,{})]}),h.jsx(Ej,{}),h.jsx(vj,{}),h.jsx(xj,{}),h.jsx(Nj,{})]})}KS.createRoot(document.getElementById("root")).render(h.jsx(Y.StrictMode,{children:h.jsx(Kj,{})}));
|
|
23
|
+
//# sourceMappingURL=index-fDTlOt4w.js.map
|