From d64cfe2d465b82acd51e1d3220ac302da1a98fe5 Mon Sep 17 00:00:00 2001 From: legop3 Date: Sat, 15 Nov 2025 04:05:01 -0500 Subject: [PATCH 01/61] first lol --- server/index.js | 2 + server/public/assets/index-APFDmmUd.js | 9 + server/public/assets/index-DoNH_msu.css | 1 + server/public/index.html | 95 +- server/public/loader.js | 22 - server/public/spectate/index.html | 33 - server/public/spectate/spectator.js | 131 - server/public/src/globals/socket.js | 8 - server/public/src/helpers/formatters.js | 11 - server/public/src/main.js | 7 - server/public/src/services/alertFeed.js | 25 - server/public/src/services/authControls.js | 35 - server/public/src/services/driveControls.js | 127 - server/public/src/services/roverUI.js | 185 - server/public/src/services/state.js | 34 - server/public/src/services/videoPlayer.js | 152 - server/public/vite.svg | 1 + server/src/globals/logger.js | 36 + server/src/services/assignmentService.js | 26 + server/src/services/authService.js | 14 +- server/src/services/commandService.js | 12 +- server/src/services/logStreamService.js | 40 + server/src/services/roverManager.js | 67 +- server/src/services/sessionService.js | 68 + webui/.gitignore | 24 + webui/README.md | 16 + webui/eslint.config.js | 29 + webui/index.html | 13 + webui/package-lock.json | 4177 +++++++++++++++++++ webui/package.json | 30 + webui/postcss.config.js | 6 + webui/public/vite.svg | 1 + webui/src/App.css | 42 + webui/src/App.jsx | 241 ++ webui/src/assets/react.svg | 1 + webui/src/context/SessionContext.jsx | 96 + webui/src/context/SocketContext.jsx | 9 + webui/src/index.css | 16 + webui/src/lib/socket.js | 11 + webui/src/main.jsx | 16 + webui/tailwind.config.js | 11 + webui/vite.config.js | 11 + 42 files changed, 5011 insertions(+), 880 deletions(-) create mode 100644 server/public/assets/index-APFDmmUd.js create mode 100644 server/public/assets/index-DoNH_msu.css delete mode 100644 server/public/loader.js delete mode 100644 server/public/spectate/index.html delete mode 100644 server/public/spectate/spectator.js delete mode 100644 server/public/src/globals/socket.js delete mode 100644 server/public/src/helpers/formatters.js delete mode 100644 server/public/src/main.js delete mode 100644 server/public/src/services/alertFeed.js delete mode 100644 server/public/src/services/authControls.js delete mode 100644 server/public/src/services/driveControls.js delete mode 100644 server/public/src/services/roverUI.js delete mode 100644 server/public/src/services/state.js delete mode 100644 server/public/src/services/videoPlayer.js create mode 100644 server/public/vite.svg create mode 100644 server/src/services/logStreamService.js create mode 100644 server/src/services/sessionService.js create mode 100644 webui/.gitignore create mode 100644 webui/README.md create mode 100644 webui/eslint.config.js create mode 100644 webui/index.html create mode 100644 webui/package-lock.json create mode 100644 webui/package.json create mode 100644 webui/postcss.config.js create mode 100644 webui/public/vite.svg create mode 100644 webui/src/App.css create mode 100644 webui/src/App.jsx create mode 100644 webui/src/assets/react.svg create mode 100644 webui/src/context/SessionContext.jsx create mode 100644 webui/src/context/SocketContext.jsx create mode 100644 webui/src/index.css create mode 100644 webui/src/lib/socket.js create mode 100644 webui/src/main.jsx create mode 100644 webui/tailwind.config.js create mode 100644 webui/vite.config.js diff --git a/server/index.js b/server/index.js index dee223b0..2f7bce17 100644 --- a/server/index.js +++ b/server/index.js @@ -17,4 +17,6 @@ require('./src/services/assignmentService'); require('./src/services/videoSessions'); require('./src/services/videoAuthService'); require('./src/services/videoSocketService'); +require('./src/services/logStreamService'); +require('./src/services/sessionService'); require('./src/services/httpServer'); diff --git a/server/public/assets/index-APFDmmUd.js b/server/public/assets/index-APFDmmUd.js new file mode 100644 index 00000000..da40a959 --- /dev/null +++ b/server/public/assets/index-APFDmmUd.js @@ -0,0 +1,9 @@ +(function(){const i=document.createElement("link").relList;if(i&&i.supports&&i.supports("modulepreload"))return;for(const m of document.querySelectorAll('link[rel="modulepreload"]'))s(m);new MutationObserver(m=>{for(const E of m)if(E.type==="childList")for(const R of E.addedNodes)R.tagName==="LINK"&&R.rel==="modulepreload"&&s(R)}).observe(document,{childList:!0,subtree:!0});function f(m){const E={};return m.integrity&&(E.integrity=m.integrity),m.referrerPolicy&&(E.referrerPolicy=m.referrerPolicy),m.crossOrigin==="use-credentials"?E.credentials="include":m.crossOrigin==="anonymous"?E.credentials="omit":E.credentials="same-origin",E}function s(m){if(m.ep)return;m.ep=!0;const E=f(m);fetch(m.href,E)}})();var Af={exports:{}},Ra={};var Jh;function Jm(){if(Jh)return Ra;Jh=1;var o=Symbol.for("react.transitional.element"),i=Symbol.for("react.fragment");function f(s,m,E){var R=null;if(E!==void 0&&(R=""+E),m.key!==void 0&&(R=""+m.key),"key"in m){E={};for(var B in m)B!=="key"&&(E[B]=m[B])}else E=m;return m=E.ref,{$$typeof:o,type:s,key:R,ref:m!==void 0?m:null,props:E}}return Ra.Fragment=i,Ra.jsx=f,Ra.jsxs=f,Ra}var kh;function km(){return kh||(kh=1,Af.exports=Jm()),Af.exports}var Y=km(),zf={exports:{}},G={};var Wh;function Wm(){if(Wh)return G;Wh=1;var o=Symbol.for("react.transitional.element"),i=Symbol.for("react.portal"),f=Symbol.for("react.fragment"),s=Symbol.for("react.strict_mode"),m=Symbol.for("react.profiler"),E=Symbol.for("react.consumer"),R=Symbol.for("react.context"),B=Symbol.for("react.forward_ref"),M=Symbol.for("react.suspense"),A=Symbol.for("react.memo"),Q=Symbol.for("react.lazy"),x=Symbol.for("react.activity"),K=Symbol.iterator;function Yt(y){return y===null||typeof y!="object"?null:(y=K&&y[K]||y["@@iterator"],typeof y=="function"?y:null)}var _t={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},Ut=Object.assign,qe={};function It(y,N,U){this.props=y,this.context=N,this.refs=qe,this.updater=U||_t}It.prototype.isReactComponent={},It.prototype.setState=function(y,N){if(typeof y!="object"&&typeof y!="function"&&y!=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,y,N,"setState")},It.prototype.forceUpdate=function(y){this.updater.enqueueForceUpdate(this,y,"forceUpdate")};function el(){}el.prototype=It.prototype;function jt(y,N,U){this.props=y,this.context=N,this.refs=qe,this.updater=U||_t}var se=jt.prototype=new el;se.constructor=jt,Ut(se,It.prototype),se.isPureReactComponent=!0;var Oe=Array.isArray;function Gt(){}var I={H:null,A:null,T:null,S:null},Vt=Object.prototype.hasOwnProperty;function Ne(y,N,U){var q=U.ref;return{$$typeof:o,type:y,key:N,ref:q!==void 0?q:null,props:U}}function kl(y,N){return Ne(y.type,N,y.props)}function Me(y){return typeof y=="object"&&y!==null&&y.$$typeof===o}function Zt(y){var N={"=":"=0",":":"=2"};return"$"+y.replace(/[=:]/g,function(U){return N[U]})}var Ml=/\/+/g;function He(y,N){return typeof y=="object"&&y!==null&&y.key!=null?Zt(""+y.key):N.toString(36)}function _e(y){switch(y.status){case"fulfilled":return y.value;case"rejected":throw y.reason;default:switch(typeof y.status=="string"?y.then(Gt,Gt):(y.status="pending",y.then(function(N){y.status==="pending"&&(y.status="fulfilled",y.value=N)},function(N){y.status==="pending"&&(y.status="rejected",y.reason=N)})),y.status){case"fulfilled":return y.value;case"rejected":throw y.reason}}throw y}function T(y,N,U,q,V){var J=typeof y;(J==="undefined"||J==="boolean")&&(y=null);var at=!1;if(y===null)at=!0;else switch(J){case"bigint":case"string":case"number":at=!0;break;case"object":switch(y.$$typeof){case o:case i:at=!0;break;case Q:return at=y._init,T(at(y._payload),N,U,q,V)}}if(at)return V=V(y),at=q===""?"."+He(y,0):q,Oe(V)?(U="",at!=null&&(U=at.replace(Ml,"$&/")+"/"),T(V,N,U,"",function(Hn){return Hn})):V!=null&&(Me(V)&&(V=kl(V,U+(V.key==null||y&&y.key===V.key?"":(""+V.key).replace(Ml,"$&/")+"/")+at)),N.push(V)),1;at=0;var Xt=q===""?".":q+":";if(Oe(y))for(var pt=0;pt>>1,rt=T[ct];if(0>>1;ctm(U,X))qm(V,U)?(T[ct]=V,T[q]=X,ct=q):(T[ct]=U,T[N]=X,ct=N);else if(qm(V,X))T[ct]=V,T[q]=X,ct=q;else break t}}return D}function m(T,D){var X=T.sortIndex-D.sortIndex;return X!==0?X:T.id-D.id}if(o.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var E=performance;o.unstable_now=function(){return E.now()}}else{var R=Date,B=R.now();o.unstable_now=function(){return R.now()-B}}var M=[],A=[],Q=1,x=null,K=3,Yt=!1,_t=!1,Ut=!1,qe=!1,It=typeof setTimeout=="function"?setTimeout:null,el=typeof clearTimeout=="function"?clearTimeout:null,jt=typeof setImmediate<"u"?setImmediate:null;function se(T){for(var D=f(A);D!==null;){if(D.callback===null)s(A);else if(D.startTime<=T)s(A),D.sortIndex=D.expirationTime,i(M,D);else break;D=f(A)}}function Oe(T){if(Ut=!1,se(T),!_t)if(f(M)!==null)_t=!0,Gt||(Gt=!0,Zt());else{var D=f(A);D!==null&&_e(Oe,D.startTime-T)}}var Gt=!1,I=-1,Vt=5,Ne=-1;function kl(){return qe?!0:!(o.unstable_now()-NeT&&kl());){var ct=x.callback;if(typeof ct=="function"){x.callback=null,K=x.priorityLevel;var rt=ct(x.expirationTime<=T);if(T=o.unstable_now(),typeof rt=="function"){x.callback=rt,se(T),D=!0;break e}x===f(M)&&s(M),se(T)}else s(M);x=f(M)}if(x!==null)D=!0;else{var y=f(A);y!==null&&_e(Oe,y.startTime-T),D=!1}}break t}finally{x=null,K=X,Yt=!1}D=void 0}}finally{D?Zt():Gt=!1}}}var Zt;if(typeof jt=="function")Zt=function(){jt(Me)};else if(typeof MessageChannel<"u"){var Ml=new MessageChannel,He=Ml.port2;Ml.port1.onmessage=Me,Zt=function(){He.postMessage(null)}}else Zt=function(){It(Me,0)};function _e(T,D){I=It(function(){T(o.unstable_now())},D)}o.unstable_IdlePriority=5,o.unstable_ImmediatePriority=1,o.unstable_LowPriority=4,o.unstable_NormalPriority=3,o.unstable_Profiling=null,o.unstable_UserBlockingPriority=2,o.unstable_cancelCallback=function(T){T.callback=null},o.unstable_forceFrameRate=function(T){0>T||125ct?(T.sortIndex=X,i(A,T),f(M)===null&&T===f(A)&&(Ut?(el(I),I=-1):Ut=!0,_e(Oe,X-ct))):(T.sortIndex=rt,i(M,T),_t||Yt||(_t=!0,Gt||(Gt=!0,Zt()))),T},o.unstable_shouldYield=kl,o.unstable_wrapCallback=function(T){var D=K;return function(){var X=K;K=D;try{return T.apply(this,arguments)}finally{K=X}}}})(Mf)),Mf}var Ih;function Fm(){return Ih||(Ih=1,Nf.exports=$m()),Nf.exports}var Rf={exports:{}},Lt={};var Ph;function Im(){if(Ph)return Lt;Ph=1;var o=Lf();function i(M){var A="https://react.dev/errors/"+M;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(o)}catch(i){console.error(i)}}return o(),Rf.exports=Im(),Rf.exports}var ed;function t0(){if(ed)return Da;ed=1;var o=Fm(),i=Lf(),f=Pm();function s(t){var e="https://react.dev/errors/"+t;if(1rt||(t.current=ct[rt],ct[rt]=null,rt--)}function U(t,e){rt++,ct[rt]=t.current,t.current=e}var q=y(null),V=y(null),J=y(null),at=y(null);function Xt(t,e){switch(U(J,e),U(V,t),U(q,null),e.nodeType){case 9:case 11:t=(t=e.documentElement)&&(t=t.namespaceURI)?vh(t):0;break;default:if(t=e.tagName,e=e.namespaceURI)e=vh(e),t=gh(e,t);else switch(t){case"svg":t=1;break;case"math":t=2;break;default:t=0}}N(q),U(q,t)}function pt(){N(q),N(V),N(J)}function Hn(t){t.memoizedState!==null&&U(at,t);var e=q.current,l=gh(e,t.type);e!==l&&(U(V,t),U(q,l))}function Ca(t){V.current===t&&(N(q),N(V)),at.current===t&&(N(at),za._currentValue=X)}var ui,wf;function Rl(t){if(ui===void 0)try{throw Error()}catch(l){var e=l.stack.trim().match(/\n( *(at )?)/);ui=e&&e[1]||"",wf=-1)":-1a||h[n]!==p[a]){var _=` +`+h[n].replace(" at new "," at ");return t.displayName&&_.includes("")&&(_=_.replace("",t.displayName)),_}while(1<=n&&0<=a);break}}}finally{ii=!1,Error.prepareStackTrace=l}return(l=t?t.displayName||t.name:"")?Rl(l):""}function Ad(t,e){switch(t.tag){case 26:case 27:case 5:return Rl(t.type);case 16:return Rl("Lazy");case 13:return t.child!==e&&e!==null?Rl("Suspense Fallback"):Rl("Suspense");case 19:return Rl("SuspenseList");case 0:case 15:return ci(t.type,!1);case 11:return ci(t.type.render,!1);case 1:return ci(t.type,!0);case 31:return Rl("Activity");default:return""}}function Kf(t){try{var e="",l=null;do e+=Ad(t,l),l=t,t=t.return;while(t);return e}catch(n){return` +Error generating stack: `+n.message+` +`+n.stack}}var fi=Object.prototype.hasOwnProperty,si=o.unstable_scheduleCallback,oi=o.unstable_cancelCallback,zd=o.unstable_shouldYield,Od=o.unstable_requestPaint,Pt=o.unstable_now,Nd=o.unstable_getCurrentPriorityLevel,Jf=o.unstable_ImmediatePriority,kf=o.unstable_UserBlockingPriority,Ba=o.unstable_NormalPriority,Md=o.unstable_LowPriority,Wf=o.unstable_IdlePriority,Rd=o.log,Dd=o.unstable_setDisableYieldValue,Yn=null,te=null;function ll(t){if(typeof Rd=="function"&&Dd(t),te&&typeof te.setStrictMode=="function")try{te.setStrictMode(Yn,t)}catch{}}var ee=Math.clz32?Math.clz32:Cd,Ud=Math.log,xd=Math.LN2;function Cd(t){return t>>>=0,t===0?32:31-(Ud(t)/xd|0)|0}var qa=256,Ha=262144,Ya=4194304;function Dl(t){var e=t&42;if(e!==0)return e;switch(t&-t){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return t&261888;case 262144:case 524288:case 1048576:case 2097152:return t&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return t&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return t}}function ja(t,e,l){var n=t.pendingLanes;if(n===0)return 0;var a=0,u=t.suspendedLanes,c=t.pingedLanes;t=t.warmLanes;var r=n&134217727;return r!==0?(n=r&~u,n!==0?a=Dl(n):(c&=r,c!==0?a=Dl(c):l||(l=r&~t,l!==0&&(a=Dl(l))))):(r=n&~u,r!==0?a=Dl(r):c!==0?a=Dl(c):l||(l=n&~t,l!==0&&(a=Dl(l)))),a===0?0:e!==0&&e!==a&&(e&u)===0&&(u=a&-a,l=e&-e,u>=l||u===32&&(l&4194048)!==0)?e:a}function jn(t,e){return(t.pendingLanes&~(t.suspendedLanes&~t.pingedLanes)&e)===0}function Bd(t,e){switch(t){case 1:case 2:case 4:case 8:case 64:return e+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 e+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 $f(){var t=Ya;return Ya<<=1,(Ya&62914560)===0&&(Ya=4194304),t}function ri(t){for(var e=[],l=0;31>l;l++)e.push(t);return e}function Ln(t,e){t.pendingLanes|=e,e!==268435456&&(t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0)}function qd(t,e,l,n,a,u){var c=t.pendingLanes;t.pendingLanes=l,t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0,t.expiredLanes&=l,t.entangledLanes&=l,t.errorRecoveryDisabledLanes&=l,t.shellSuspendCounter=0;var r=t.entanglements,h=t.expirationTimes,p=t.hiddenUpdates;for(l=c&~l;0"u")return null;try{return t.activeElement||t.body}catch{return t.body}}var Qd=/[\n"\\]/g;function re(t){return t.replace(Qd,function(e){return"\\"+e.charCodeAt(0).toString(16)+" "})}function gi(t,e,l,n,a,u,c,r){t.name="",c!=null&&typeof c!="function"&&typeof c!="symbol"&&typeof c!="boolean"?t.type=c:t.removeAttribute("type"),e!=null?c==="number"?(e===0&&t.value===""||t.value!=e)&&(t.value=""+oe(e)):t.value!==""+oe(e)&&(t.value=""+oe(e)):c!=="submit"&&c!=="reset"||t.removeAttribute("value"),e!=null?pi(t,c,oe(e)):l!=null?pi(t,c,oe(l)):n!=null&&t.removeAttribute("value"),a==null&&u!=null&&(t.defaultChecked=!!u),a!=null&&(t.checked=a&&typeof a!="function"&&typeof a!="symbol"),r!=null&&typeof r!="function"&&typeof r!="symbol"&&typeof r!="boolean"?t.name=""+oe(r):t.removeAttribute("name")}function ss(t,e,l,n,a,u,c,r){if(u!=null&&typeof u!="function"&&typeof u!="symbol"&&typeof u!="boolean"&&(t.type=u),e!=null||l!=null){if(!(u!=="submit"&&u!=="reset"||e!=null)){vi(t);return}l=l!=null?""+oe(l):"",e=e!=null?""+oe(e):l,r||e===t.value||(t.value=e),t.defaultValue=e}n=n??a,n=typeof n!="function"&&typeof n!="symbol"&&!!n,t.checked=r?t.checked:!!n,t.defaultChecked=!!n,c!=null&&typeof c!="function"&&typeof c!="symbol"&&typeof c!="boolean"&&(t.name=c),vi(t)}function pi(t,e,l){e==="number"&&Qa(t.ownerDocument)===t||t.defaultValue===""+l||(t.defaultValue=""+l)}function tn(t,e,l,n){if(t=t.options,e){e={};for(var a=0;a"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Ti=!1;if(Le)try{var Vn={};Object.defineProperty(Vn,"passive",{get:function(){Ti=!0}}),window.addEventListener("test",Vn,Vn),window.removeEventListener("test",Vn,Vn)}catch{Ti=!1}var al=null,Ai=null,Va=null;function vs(){if(Va)return Va;var t,e=Ai,l=e.length,n,a="value"in al?al.value:al.textContent,u=a.length;for(t=0;t=Kn),Es=" ",Ts=!1;function As(t,e){switch(t){case"keyup":return my.indexOf(e.keyCode)!==-1;case"keydown":return e.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function zs(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var an=!1;function gy(t,e){switch(t){case"compositionend":return zs(e);case"keypress":return e.which!==32?null:(Ts=!0,Es);case"textInput":return t=e.data,t===Es&&Ts?null:t;default:return null}}function py(t,e){if(an)return t==="compositionend"||!Ri&&As(t,e)?(t=vs(),Va=Ai=al=null,an=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(e.ctrlKey||e.altKey||e.metaKey)||e.ctrlKey&&e.altKey){if(e.char&&1=e)return{node:l,offset:e-t};t=n}t:{for(;l;){if(l.nextSibling){l=l.nextSibling;break t}l=l.parentNode}l=void 0}l=Cs(l)}}function qs(t,e){return t&&e?t===e?!0:t&&t.nodeType===3?!1:e&&e.nodeType===3?qs(t,e.parentNode):"contains"in t?t.contains(e):t.compareDocumentPosition?!!(t.compareDocumentPosition(e)&16):!1:!1}function Hs(t){t=t!=null&&t.ownerDocument!=null&&t.ownerDocument.defaultView!=null?t.ownerDocument.defaultView:window;for(var e=Qa(t.document);e instanceof t.HTMLIFrameElement;){try{var l=typeof e.contentWindow.location.href=="string"}catch{l=!1}if(l)t=e.contentWindow;else break;e=Qa(t.document)}return e}function xi(t){var e=t&&t.nodeName&&t.nodeName.toLowerCase();return e&&(e==="input"&&(t.type==="text"||t.type==="search"||t.type==="tel"||t.type==="url"||t.type==="password")||e==="textarea"||t.contentEditable==="true")}var Oy=Le&&"documentMode"in document&&11>=document.documentMode,un=null,Ci=null,$n=null,Bi=!1;function Ys(t,e,l){var n=l.window===l?l.document:l.nodeType===9?l:l.ownerDocument;Bi||un==null||un!==Qa(n)||(n=un,"selectionStart"in n&&xi(n)?n={start:n.selectionStart,end:n.selectionEnd}:(n=(n.ownerDocument&&n.ownerDocument.defaultView||window).getSelection(),n={anchorNode:n.anchorNode,anchorOffset:n.anchorOffset,focusNode:n.focusNode,focusOffset:n.focusOffset}),$n&&Wn($n,n)||($n=n,n=Hu(Ci,"onSelect"),0>=c,a-=c,Re=1<<32-ee(e)+a|l<w?(F=H,H=null):F=H.sibling;var lt=b(v,H,g[w],z);if(lt===null){H===null&&(H=F);break}t&&H&<.alternate===null&&e(v,H),d=u(lt,d,w),et===null?j=lt:et.sibling=lt,et=lt,H=F}if(w===g.length)return l(v,H),P&&Qe(v,w),j;if(H===null){for(;ww?(F=H,H=null):F=H.sibling;var Ol=b(v,H,lt.value,z);if(Ol===null){H===null&&(H=F);break}t&&H&&Ol.alternate===null&&e(v,H),d=u(Ol,d,w),et===null?j=Ol:et.sibling=Ol,et=Ol,H=F}if(lt.done)return l(v,H),P&&Qe(v,w),j;if(H===null){for(;!lt.done;w++,lt=g.next())lt=O(v,lt.value,z),lt!==null&&(d=u(lt,d,w),et===null?j=lt:et.sibling=lt,et=lt);return P&&Qe(v,w),j}for(H=n(H);!lt.done;w++,lt=g.next())lt=S(H,v,w,lt.value,z),lt!==null&&(t&<.alternate!==null&&H.delete(lt.key===null?w:lt.key),d=u(lt,d,w),et===null?j=lt:et.sibling=lt,et=lt);return t&&H.forEach(function(Km){return e(v,Km)}),P&&Qe(v,w),j}function ot(v,d,g,z){if(typeof g=="object"&&g!==null&&g.type===Ut&&g.key===null&&(g=g.props.children),typeof g=="object"&&g!==null){switch(g.$$typeof){case Yt:t:{for(var j=g.key;d!==null;){if(d.key===j){if(j=g.type,j===Ut){if(d.tag===7){l(v,d.sibling),z=a(d,g.props.children),z.return=v,v=z;break t}}else if(d.elementType===j||typeof j=="object"&&j!==null&&j.$$typeof===Vt&&Ql(j)===d.type){l(v,d.sibling),z=a(d,g.props),la(z,g),z.return=v,v=z;break t}l(v,d);break}else e(v,d);d=d.sibling}g.type===Ut?(z=Hl(g.props.children,v.mode,z,g.key),z.return=v,v=z):(z=Pa(g.type,g.key,g.props,null,v.mode,z),la(z,g),z.return=v,v=z)}return c(v);case _t:t:{for(j=g.key;d!==null;){if(d.key===j)if(d.tag===4&&d.stateNode.containerInfo===g.containerInfo&&d.stateNode.implementation===g.implementation){l(v,d.sibling),z=a(d,g.children||[]),z.return=v,v=z;break t}else{l(v,d);break}else e(v,d);d=d.sibling}z=Qi(g,v.mode,z),z.return=v,v=z}return c(v);case Vt:return g=Ql(g),ot(v,d,g,z)}if(_e(g))return C(v,d,g,z);if(Zt(g)){if(j=Zt(g),typeof j!="function")throw Error(s(150));return g=j.call(g),L(v,d,g,z)}if(typeof g.then=="function")return ot(v,d,iu(g),z);if(g.$$typeof===jt)return ot(v,d,lu(v,g),z);cu(v,g)}return typeof g=="string"&&g!==""||typeof g=="number"||typeof g=="bigint"?(g=""+g,d!==null&&d.tag===6?(l(v,d.sibling),z=a(d,g),z.return=v,v=z):(l(v,d),z=Xi(g,v.mode,z),z.return=v,v=z),c(v)):l(v,d)}return function(v,d,g,z){try{ea=0;var j=ot(v,d,g,z);return gn=null,j}catch(H){if(H===vn||H===au)throw H;var et=ne(29,H,null,v.mode);return et.lanes=z,et.return=v,et}finally{}}}var Vl=io(!0),co=io(!1),sl=!1;function Pi(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function tc(t,e){t=t.updateQueue,e.updateQueue===t&&(e.updateQueue={baseState:t.baseState,firstBaseUpdate:t.firstBaseUpdate,lastBaseUpdate:t.lastBaseUpdate,shared:t.shared,callbacks:null})}function ol(t){return{lane:t,tag:0,payload:null,callback:null,next:null}}function rl(t,e,l){var n=t.updateQueue;if(n===null)return null;if(n=n.shared,(nt&2)!==0){var a=n.pending;return a===null?e.next=e:(e.next=a.next,a.next=e),n.pending=e,e=Ia(t),Zs(t,null,l),e}return Fa(t,n,e,l),Ia(t)}function na(t,e,l){if(e=e.updateQueue,e!==null&&(e=e.shared,(l&4194048)!==0)){var n=e.lanes;n&=t.pendingLanes,l|=n,e.lanes=l,If(t,l)}}function ec(t,e){var l=t.updateQueue,n=t.alternate;if(n!==null&&(n=n.updateQueue,l===n)){var a=null,u=null;if(l=l.firstBaseUpdate,l!==null){do{var c={lane:l.lane,tag:l.tag,payload:l.payload,callback:null,next:null};u===null?a=u=c:u=u.next=c,l=l.next}while(l!==null);u===null?a=u=e:u=u.next=e}else a=u=e;l={baseState:n.baseState,firstBaseUpdate:a,lastBaseUpdate:u,shared:n.shared,callbacks:n.callbacks},t.updateQueue=l;return}t=l.lastBaseUpdate,t===null?l.firstBaseUpdate=e:t.next=e,l.lastBaseUpdate=e}var lc=!1;function aa(){if(lc){var t=mn;if(t!==null)throw t}}function ua(t,e,l,n){lc=!1;var a=t.updateQueue;sl=!1;var u=a.firstBaseUpdate,c=a.lastBaseUpdate,r=a.shared.pending;if(r!==null){a.shared.pending=null;var h=r,p=h.next;h.next=null,c===null?u=p:c.next=p,c=h;var _=t.alternate;_!==null&&(_=_.updateQueue,r=_.lastBaseUpdate,r!==c&&(r===null?_.firstBaseUpdate=p:r.next=p,_.lastBaseUpdate=h))}if(u!==null){var O=a.baseState;c=0,_=p=h=null,r=u;do{var b=r.lane&-536870913,S=b!==r.lane;if(S?($&b)===b:(n&b)===b){b!==0&&b===yn&&(lc=!0),_!==null&&(_=_.next={lane:0,tag:r.tag,payload:r.payload,callback:null,next:null});t:{var C=t,L=r;b=e;var ot=l;switch(L.tag){case 1:if(C=L.payload,typeof C=="function"){O=C.call(ot,O,b);break t}O=C;break t;case 3:C.flags=C.flags&-65537|128;case 0:if(C=L.payload,b=typeof C=="function"?C.call(ot,O,b):C,b==null)break t;O=x({},O,b);break t;case 2:sl=!0}}b=r.callback,b!==null&&(t.flags|=64,S&&(t.flags|=8192),S=a.callbacks,S===null?a.callbacks=[b]:S.push(b))}else S={lane:b,tag:r.tag,payload:r.payload,callback:r.callback,next:null},_===null?(p=_=S,h=O):_=_.next=S,c|=b;if(r=r.next,r===null){if(r=a.shared.pending,r===null)break;S=r,r=S.next,S.next=null,a.lastBaseUpdate=S,a.shared.pending=null}}while(!0);_===null&&(h=O),a.baseState=h,a.firstBaseUpdate=p,a.lastBaseUpdate=_,u===null&&(a.shared.lanes=0),vl|=c,t.lanes=c,t.memoizedState=O}}function fo(t,e){if(typeof t!="function")throw Error(s(191,t));t.call(e)}function so(t,e){var l=t.callbacks;if(l!==null)for(t.callbacks=null,t=0;tu?u:8;var c=T.T,r={};T.T=r,_c(t,!1,e,l);try{var h=a(),p=T.S;if(p!==null&&p(r,h),h!==null&&typeof h=="object"&&typeof h.then=="function"){var _=qy(h,n);fa(t,e,_,fe(t))}else fa(t,e,n,fe(t))}catch(O){fa(t,e,{then:function(){},status:"rejected",reason:O},fe())}finally{D.p=u,c!==null&&r.types!==null&&(c.types=r.types),T.T=c}}function Qy(){}function bc(t,e,l,n){if(t.tag!==5)throw Error(s(476));var a=Go(t).queue;Qo(t,a,e,X,l===null?Qy:function(){return Vo(t),l(n)})}function Go(t){var e=t.memoizedState;if(e!==null)return e;e={memoizedState:X,baseState:X,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:we,lastRenderedState:X},next:null};var l={};return e.next={memoizedState:l,baseState:l,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:we,lastRenderedState:l},next:null},t.memoizedState=e,t=t.alternate,t!==null&&(t.memoizedState=e),e}function Vo(t){var e=Go(t);e.next===null&&(e=t.alternate.memoizedState),fa(t,e.next.queue,{},fe())}function Sc(){return Bt(za)}function Zo(){return St().memoizedState}function wo(){return St().memoizedState}function Gy(t){for(var e=t.return;e!==null;){switch(e.tag){case 24:case 3:var l=fe();t=ol(l);var n=rl(e,t,l);n!==null&&(Ft(n,e,l),na(n,e,l)),e={cache:Wi()},t.payload=e;return}e=e.return}}function Vy(t,e,l){var n=fe();l={lane:n,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},gu(t)?Jo(e,l):(l=ji(t,e,l,n),l!==null&&(Ft(l,t,n),ko(l,e,n)))}function Ko(t,e,l){var n=fe();fa(t,e,l,n)}function fa(t,e,l,n){var a={lane:n,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null};if(gu(t))Jo(e,a);else{var u=t.alternate;if(t.lanes===0&&(u===null||u.lanes===0)&&(u=e.lastRenderedReducer,u!==null))try{var c=e.lastRenderedState,r=u(c,l);if(a.hasEagerState=!0,a.eagerState=r,le(r,c))return Fa(t,e,a,0),ht===null&&$a(),!1}catch{}finally{}if(l=ji(t,e,a,n),l!==null)return Ft(l,t,n),ko(l,e,n),!0}return!1}function _c(t,e,l,n){if(n={lane:2,revertLane:Pc(),gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},gu(t)){if(e)throw Error(s(479))}else e=ji(t,l,n,2),e!==null&&Ft(e,t,2)}function gu(t){var e=t.alternate;return t===Z||e!==null&&e===Z}function Jo(t,e){bn=ou=!0;var l=t.pending;l===null?e.next=e:(e.next=l.next,l.next=e),t.pending=e}function ko(t,e,l){if((l&4194048)!==0){var n=e.lanes;n&=t.pendingLanes,l|=n,e.lanes=l,If(t,l)}}var sa={readContext:Bt,use:du,useCallback:vt,useContext:vt,useEffect:vt,useImperativeHandle:vt,useLayoutEffect:vt,useInsertionEffect:vt,useMemo:vt,useReducer:vt,useRef:vt,useState:vt,useDebugValue:vt,useDeferredValue:vt,useTransition:vt,useSyncExternalStore:vt,useId:vt,useHostTransitionStatus:vt,useFormState:vt,useActionState:vt,useOptimistic:vt,useMemoCache:vt,useCacheRefresh:vt};sa.useEffectEvent=vt;var Wo={readContext:Bt,use:du,useCallback:function(t,e){return Qt().memoizedState=[t,e===void 0?null:e],t},useContext:Bt,useEffect:xo,useImperativeHandle:function(t,e,l){l=l!=null?l.concat([t]):null,mu(4194308,4,Ho.bind(null,e,t),l)},useLayoutEffect:function(t,e){return mu(4194308,4,t,e)},useInsertionEffect:function(t,e){mu(4,2,t,e)},useMemo:function(t,e){var l=Qt();e=e===void 0?null:e;var n=t();if(Zl){ll(!0);try{t()}finally{ll(!1)}}return l.memoizedState=[n,e],n},useReducer:function(t,e,l){var n=Qt();if(l!==void 0){var a=l(e);if(Zl){ll(!0);try{l(e)}finally{ll(!1)}}}else a=e;return n.memoizedState=n.baseState=a,t={pending:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:a},n.queue=t,t=t.dispatch=Vy.bind(null,Z,t),[n.memoizedState,t]},useRef:function(t){var e=Qt();return t={current:t},e.memoizedState=t},useState:function(t){t=yc(t);var e=t.queue,l=Ko.bind(null,Z,e);return e.dispatch=l,[t.memoizedState,l]},useDebugValue:gc,useDeferredValue:function(t,e){var l=Qt();return pc(l,t,e)},useTransition:function(){var t=yc(!1);return t=Qo.bind(null,Z,t.queue,!0,!1),Qt().memoizedState=t,[!1,t]},useSyncExternalStore:function(t,e,l){var n=Z,a=Qt();if(P){if(l===void 0)throw Error(s(407));l=l()}else{if(l=e(),ht===null)throw Error(s(349));($&127)!==0||vo(n,e,l)}a.memoizedState=l;var u={value:l,getSnapshot:e};return a.queue=u,xo(po.bind(null,n,u,t),[t]),n.flags|=2048,_n(9,{destroy:void 0},go.bind(null,n,u,l,e),null),l},useId:function(){var t=Qt(),e=ht.identifierPrefix;if(P){var l=De,n=Re;l=(n&~(1<<32-ee(n)-1)).toString(32)+l,e="_"+e+"R_"+l,l=ru++,0<\/script>",u=u.removeChild(u.firstChild);break;case"select":u=typeof n.is=="string"?c.createElement("select",{is:n.is}):c.createElement("select"),n.multiple?u.multiple=!0:n.size&&(u.size=n.size);break;default:u=typeof n.is=="string"?c.createElement(a,{is:n.is}):c.createElement(a)}}u[xt]=e,u[wt]=n;t:for(c=e.child;c!==null;){if(c.tag===5||c.tag===6)u.appendChild(c.stateNode);else if(c.tag!==4&&c.tag!==27&&c.child!==null){c.child.return=c,c=c.child;continue}if(c===e)break t;for(;c.sibling===null;){if(c.return===null||c.return===e)break t;c=c.return}c.sibling.return=c.return,c=c.sibling}e.stateNode=u;t:switch(Ht(u,a,n),a){case"button":case"input":case"select":case"textarea":n=!!n.autoFocus;break t;case"img":n=!0;break t;default:n=!1}n&&Je(e)}}return yt(e),qc(e,e.type,t===null?null:t.memoizedProps,e.pendingProps,l),null;case 6:if(t&&e.stateNode!=null)t.memoizedProps!==n&&Je(e);else{if(typeof n!="string"&&e.stateNode===null)throw Error(s(166));if(t=J.current,hn(e)){if(t=e.stateNode,l=e.memoizedProps,n=null,a=Ct,a!==null)switch(a.tag){case 27:case 5:n=a.memoizedProps}t[xt]=e,t=!!(t.nodeValue===l||n!==null&&n.suppressHydrationWarning===!0||yh(t.nodeValue,l)),t||cl(e,!0)}else t=Yu(t).createTextNode(n),t[xt]=e,e.stateNode=t}return yt(e),null;case 31:if(l=e.memoizedState,t===null||t.memoizedState!==null){if(n=hn(e),l!==null){if(t===null){if(!n)throw Error(s(318));if(t=e.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(s(557));t[xt]=e}else Yl(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;yt(e),t=!1}else l=wi(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=l),t=!0;if(!t)return e.flags&256?(ue(e),e):(ue(e),null);if((e.flags&128)!==0)throw Error(s(558))}return yt(e),null;case 13:if(n=e.memoizedState,t===null||t.memoizedState!==null&&t.memoizedState.dehydrated!==null){if(a=hn(e),n!==null&&n.dehydrated!==null){if(t===null){if(!a)throw Error(s(318));if(a=e.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(s(317));a[xt]=e}else Yl(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;yt(e),a=!1}else a=wi(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=a),a=!0;if(!a)return e.flags&256?(ue(e),e):(ue(e),null)}return ue(e),(e.flags&128)!==0?(e.lanes=l,e):(l=n!==null,t=t!==null&&t.memoizedState!==null,l&&(n=e.child,a=null,n.alternate!==null&&n.alternate.memoizedState!==null&&n.alternate.memoizedState.cachePool!==null&&(a=n.alternate.memoizedState.cachePool.pool),u=null,n.memoizedState!==null&&n.memoizedState.cachePool!==null&&(u=n.memoizedState.cachePool.pool),u!==a&&(n.flags|=2048)),l!==t&&l&&(e.child.flags|=8192),Eu(e,e.updateQueue),yt(e),null);case 4:return pt(),t===null&&nf(e.stateNode.containerInfo),yt(e),null;case 10:return Ve(e.type),yt(e),null;case 19:if(N(bt),n=e.memoizedState,n===null)return yt(e),null;if(a=(e.flags&128)!==0,u=n.rendering,u===null)if(a)ra(n,!1);else{if(gt!==0||t!==null&&(t.flags&128)!==0)for(t=e.child;t!==null;){if(u=su(t),u!==null){for(e.flags|=128,ra(n,!1),t=u.updateQueue,e.updateQueue=t,Eu(e,t),e.subtreeFlags=0,t=l,l=e.child;l!==null;)ws(l,t),l=l.sibling;return U(bt,bt.current&1|2),P&&Qe(e,n.treeForkCount),e.child}t=t.sibling}n.tail!==null&&Pt()>Nu&&(e.flags|=128,a=!0,ra(n,!1),e.lanes=4194304)}else{if(!a)if(t=su(u),t!==null){if(e.flags|=128,a=!0,t=t.updateQueue,e.updateQueue=t,Eu(e,t),ra(n,!0),n.tail===null&&n.tailMode==="hidden"&&!u.alternate&&!P)return yt(e),null}else 2*Pt()-n.renderingStartTime>Nu&&l!==536870912&&(e.flags|=128,a=!0,ra(n,!1),e.lanes=4194304);n.isBackwards?(u.sibling=e.child,e.child=u):(t=n.last,t!==null?t.sibling=u:e.child=u,n.last=u)}return n.tail!==null?(t=n.tail,n.rendering=t,n.tail=t.sibling,n.renderingStartTime=Pt(),t.sibling=null,l=bt.current,U(bt,a?l&1|2:l&1),P&&Qe(e,n.treeForkCount),t):(yt(e),null);case 22:case 23:return ue(e),ac(),n=e.memoizedState!==null,t!==null?t.memoizedState!==null!==n&&(e.flags|=8192):n&&(e.flags|=8192),n?(l&536870912)!==0&&(e.flags&128)===0&&(yt(e),e.subtreeFlags&6&&(e.flags|=8192)):yt(e),l=e.updateQueue,l!==null&&Eu(e,l.retryQueue),l=null,t!==null&&t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(l=t.memoizedState.cachePool.pool),n=null,e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),n!==l&&(e.flags|=2048),t!==null&&N(Xl),null;case 24:return l=null,t!==null&&(l=t.memoizedState.cache),e.memoizedState.cache!==l&&(e.flags|=2048),Ve(Et),yt(e),null;case 25:return null;case 30:return null}throw Error(s(156,e.tag))}function ky(t,e){switch(Vi(e),e.tag){case 1:return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 3:return Ve(Et),pt(),t=e.flags,(t&65536)!==0&&(t&128)===0?(e.flags=t&-65537|128,e):null;case 26:case 27:case 5:return Ca(e),null;case 31:if(e.memoizedState!==null){if(ue(e),e.alternate===null)throw Error(s(340));Yl()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 13:if(ue(e),t=e.memoizedState,t!==null&&t.dehydrated!==null){if(e.alternate===null)throw Error(s(340));Yl()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 19:return N(bt),null;case 4:return pt(),null;case 10:return Ve(e.type),null;case 22:case 23:return ue(e),ac(),t!==null&&N(Xl),t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 24:return Ve(Et),null;case 25:return null;default:return null}}function br(t,e){switch(Vi(e),e.tag){case 3:Ve(Et),pt();break;case 26:case 27:case 5:Ca(e);break;case 4:pt();break;case 31:e.memoizedState!==null&&ue(e);break;case 13:ue(e);break;case 19:N(bt);break;case 10:Ve(e.type);break;case 22:case 23:ue(e),ac(),t!==null&&N(Xl);break;case 24:Ve(Et)}}function ha(t,e){try{var l=e.updateQueue,n=l!==null?l.lastEffect:null;if(n!==null){var a=n.next;l=a;do{if((l.tag&t)===t){n=void 0;var u=l.create,c=l.inst;n=u(),c.destroy=n}l=l.next}while(l!==a)}}catch(r){it(e,e.return,r)}}function yl(t,e,l){try{var n=e.updateQueue,a=n!==null?n.lastEffect:null;if(a!==null){var u=a.next;n=u;do{if((n.tag&t)===t){var c=n.inst,r=c.destroy;if(r!==void 0){c.destroy=void 0,a=e;var h=l,p=r;try{p()}catch(_){it(a,h,_)}}}n=n.next}while(n!==u)}}catch(_){it(e,e.return,_)}}function Sr(t){var e=t.updateQueue;if(e!==null){var l=t.stateNode;try{so(e,l)}catch(n){it(t,t.return,n)}}}function _r(t,e,l){l.props=wl(t.type,t.memoizedProps),l.state=t.memoizedState;try{l.componentWillUnmount()}catch(n){it(t,e,n)}}function da(t,e){try{var l=t.ref;if(l!==null){switch(t.tag){case 26:case 27:case 5:var n=t.stateNode;break;case 30:n=t.stateNode;break;default:n=t.stateNode}typeof l=="function"?t.refCleanup=l(n):l.current=n}}catch(a){it(t,e,a)}}function Ue(t,e){var l=t.ref,n=t.refCleanup;if(l!==null)if(typeof n=="function")try{n()}catch(a){it(t,e,a)}finally{t.refCleanup=null,t=t.alternate,t!=null&&(t.refCleanup=null)}else if(typeof l=="function")try{l(null)}catch(a){it(t,e,a)}else l.current=null}function Er(t){var e=t.type,l=t.memoizedProps,n=t.stateNode;try{t:switch(e){case"button":case"input":case"select":case"textarea":l.autoFocus&&n.focus();break t;case"img":l.src?n.src=l.src:l.srcSet&&(n.srcset=l.srcSet)}}catch(a){it(t,t.return,a)}}function Hc(t,e,l){try{var n=t.stateNode;vm(n,t.type,l,e),n[wt]=e}catch(a){it(t,t.return,a)}}function Tr(t){return t.tag===5||t.tag===3||t.tag===26||t.tag===27&&_l(t.type)||t.tag===4}function Yc(t){t:for(;;){for(;t.sibling===null;){if(t.return===null||Tr(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.tag===27&&_l(t.type)||t.flags&2||t.child===null||t.tag===4)continue t;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function jc(t,e,l){var n=t.tag;if(n===5||n===6)t=t.stateNode,e?(l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l).insertBefore(t,e):(e=l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l,e.appendChild(t),l=l._reactRootContainer,l!=null||e.onclick!==null||(e.onclick=je));else if(n!==4&&(n===27&&_l(t.type)&&(l=t.stateNode,e=null),t=t.child,t!==null))for(jc(t,e,l),t=t.sibling;t!==null;)jc(t,e,l),t=t.sibling}function Tu(t,e,l){var n=t.tag;if(n===5||n===6)t=t.stateNode,e?l.insertBefore(t,e):l.appendChild(t);else if(n!==4&&(n===27&&_l(t.type)&&(l=t.stateNode),t=t.child,t!==null))for(Tu(t,e,l),t=t.sibling;t!==null;)Tu(t,e,l),t=t.sibling}function Ar(t){var e=t.stateNode,l=t.memoizedProps;try{for(var n=t.type,a=e.attributes;a.length;)e.removeAttributeNode(a[0]);Ht(e,n,l),e[xt]=t,e[wt]=l}catch(u){it(t,t.return,u)}}var ke=!1,zt=!1,Lc=!1,zr=typeof WeakSet=="function"?WeakSet:Set,Dt=null;function Wy(t,e){if(t=t.containerInfo,cf=Zu,t=Hs(t),xi(t)){if("selectionStart"in t)var l={start:t.selectionStart,end:t.selectionEnd};else t:{l=(l=t.ownerDocument)&&l.defaultView||window;var n=l.getSelection&&l.getSelection();if(n&&n.rangeCount!==0){l=n.anchorNode;var a=n.anchorOffset,u=n.focusNode;n=n.focusOffset;try{l.nodeType,u.nodeType}catch{l=null;break t}var c=0,r=-1,h=-1,p=0,_=0,O=t,b=null;e:for(;;){for(var S;O!==l||a!==0&&O.nodeType!==3||(r=c+a),O!==u||n!==0&&O.nodeType!==3||(h=c+n),O.nodeType===3&&(c+=O.nodeValue.length),(S=O.firstChild)!==null;)b=O,O=S;for(;;){if(O===t)break e;if(b===l&&++p===a&&(r=c),b===u&&++_===n&&(h=c),(S=O.nextSibling)!==null)break;O=b,b=O.parentNode}O=S}l=r===-1||h===-1?null:{start:r,end:h}}else l=null}l=l||{start:0,end:0}}else l=null;for(ff={focusedElem:t,selectionRange:l},Zu=!1,Dt=e;Dt!==null;)if(e=Dt,t=e.child,(e.subtreeFlags&1028)!==0&&t!==null)t.return=e,Dt=t;else for(;Dt!==null;){switch(e=Dt,u=e.alternate,t=e.flags,e.tag){case 0:if((t&4)!==0&&(t=e.updateQueue,t=t!==null?t.events:null,t!==null))for(l=0;l title"))),Ht(u,n,l),u[xt]=t,Rt(u),n=u;break t;case"link":var c=Uh("link","href",a).get(n+(l.href||""));if(c){for(var r=0;rot&&(c=ot,ot=L,L=c);var v=Bs(r,L),d=Bs(r,ot);if(v&&d&&(S.rangeCount!==1||S.anchorNode!==v.node||S.anchorOffset!==v.offset||S.focusNode!==d.node||S.focusOffset!==d.offset)){var g=O.createRange();g.setStart(v.node,v.offset),S.removeAllRanges(),L>ot?(S.addRange(g),S.extend(d.node,d.offset)):(g.setEnd(d.node,d.offset),S.addRange(g))}}}}for(O=[],S=r;S=S.parentNode;)S.nodeType===1&&O.push({element:S,left:S.scrollLeft,top:S.scrollTop});for(typeof r.focus=="function"&&r.focus(),r=0;rl?32:l,T.T=null,l=Kc,Kc=null;var u=pl,c=Pe;if(Nt=0,On=pl=null,Pe=0,(nt&6)!==0)throw Error(s(331));var r=nt;if(nt|=4,Hr(u.current),Cr(u,u.current,c,l),nt=r,ba(0,!1),te&&typeof te.onPostCommitFiberRoot=="function")try{te.onPostCommitFiberRoot(Yn,u)}catch{}return!0}finally{D.p=a,T.T=n,th(t,e)}}function lh(t,e,l){e=de(l,e),e=zc(t.stateNode,e,2),t=rl(t,e,2),t!==null&&(Ln(t,2),xe(t))}function it(t,e,l){if(t.tag===3)lh(t,t,l);else for(;e!==null;){if(e.tag===3){lh(e,t,l);break}else if(e.tag===1){var n=e.stateNode;if(typeof e.type.getDerivedStateFromError=="function"||typeof n.componentDidCatch=="function"&&(gl===null||!gl.has(n))){t=de(l,t),l=nr(2),n=rl(e,l,2),n!==null&&(ar(l,n,e,t),Ln(n,2),xe(n));break}}e=e.return}}function $c(t,e,l){var n=t.pingCache;if(n===null){n=t.pingCache=new Iy;var a=new Set;n.set(e,a)}else a=n.get(e),a===void 0&&(a=new Set,n.set(e,a));a.has(l)||(Gc=!0,a.add(l),t=nm.bind(null,t,e,l),e.then(t,t))}function nm(t,e,l){var n=t.pingCache;n!==null&&n.delete(e),t.pingedLanes|=t.suspendedLanes&l,t.warmLanes&=~l,ht===t&&($&l)===l&&(gt===4||gt===3&&($&62914560)===$&&300>Pt()-Ou?(nt&2)===0&&Nn(t,0):Vc|=l,zn===$&&(zn=0)),xe(t)}function nh(t,e){e===0&&(e=$f()),t=ql(t,e),t!==null&&(Ln(t,e),xe(t))}function am(t){var e=t.memoizedState,l=0;e!==null&&(l=e.retryLane),nh(t,l)}function um(t,e){var l=0;switch(t.tag){case 31:case 13:var n=t.stateNode,a=t.memoizedState;a!==null&&(l=a.retryLane);break;case 19:n=t.stateNode;break;case 22:n=t.stateNode._retryCache;break;default:throw Error(s(314))}n!==null&&n.delete(e),nh(t,l)}function im(t,e){return si(t,e)}var Cu=null,Rn=null,Fc=!1,Bu=!1,Ic=!1,Sl=0;function xe(t){t!==Rn&&t.next===null&&(Rn===null?Cu=Rn=t:Rn=Rn.next=t),Bu=!0,Fc||(Fc=!0,fm())}function ba(t,e){if(!Ic&&Bu){Ic=!0;do for(var l=!1,n=Cu;n!==null;){if(t!==0){var a=n.pendingLanes;if(a===0)var u=0;else{var c=n.suspendedLanes,r=n.pingedLanes;u=(1<<31-ee(42|t)+1)-1,u&=a&~(c&~r),u=u&201326741?u&201326741|1:u?u|2:0}u!==0&&(l=!0,ch(n,u))}else u=$,u=ja(n,n===ht?u:0,n.cancelPendingCommit!==null||n.timeoutHandle!==-1),(u&3)===0||jn(n,u)||(l=!0,ch(n,u));n=n.next}while(l);Ic=!1}}function cm(){ah()}function ah(){Bu=Fc=!1;var t=0;Sl!==0&&pm()&&(t=Sl);for(var e=Pt(),l=null,n=Cu;n!==null;){var a=n.next,u=uh(n,e);u===0?(n.next=null,l===null?Cu=a:l.next=a,a===null&&(Rn=l)):(l=n,(t!==0||(u&3)!==0)&&(Bu=!0)),n=a}Nt!==0&&Nt!==5||ba(t),Sl!==0&&(Sl=0)}function uh(t,e){for(var l=t.suspendedLanes,n=t.pingedLanes,a=t.expirationTimes,u=t.pendingLanes&-62914561;0r)break;var _=h.transferSize,O=h.initiatorType;_&&mh(O)&&(h=h.responseEnd,c+=_*(h"u"?null:document;function Nh(t,e,l){var n=Dn;if(n&&typeof e=="string"&&e){var a=re(e);a='link[rel="'+t+'"][href="'+a+'"]',typeof l=="string"&&(a+='[crossorigin="'+l+'"]'),Oh.has(a)||(Oh.add(a),t={rel:t,crossOrigin:l,href:e},n.querySelector(a)===null&&(e=n.createElement("link"),Ht(e,"link",t),Rt(e),n.head.appendChild(e)))}}function Nm(t){tl.D(t),Nh("dns-prefetch",t,null)}function Mm(t,e){tl.C(t,e),Nh("preconnect",t,e)}function Rm(t,e,l){tl.L(t,e,l);var n=Dn;if(n&&t&&e){var a='link[rel="preload"][as="'+re(e)+'"]';e==="image"&&l&&l.imageSrcSet?(a+='[imagesrcset="'+re(l.imageSrcSet)+'"]',typeof l.imageSizes=="string"&&(a+='[imagesizes="'+re(l.imageSizes)+'"]')):a+='[href="'+re(t)+'"]';var u=a;switch(e){case"style":u=Un(t);break;case"script":u=xn(t)}be.has(u)||(t=x({rel:"preload",href:e==="image"&&l&&l.imageSrcSet?void 0:t,as:e},l),be.set(u,t),n.querySelector(a)!==null||e==="style"&&n.querySelector(Ta(u))||e==="script"&&n.querySelector(Aa(u))||(e=n.createElement("link"),Ht(e,"link",t),Rt(e),n.head.appendChild(e)))}}function Dm(t,e){tl.m(t,e);var l=Dn;if(l&&t){var n=e&&typeof e.as=="string"?e.as:"script",a='link[rel="modulepreload"][as="'+re(n)+'"][href="'+re(t)+'"]',u=a;switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":u=xn(t)}if(!be.has(u)&&(t=x({rel:"modulepreload",href:t},e),be.set(u,t),l.querySelector(a)===null)){switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(l.querySelector(Aa(u)))return}n=l.createElement("link"),Ht(n,"link",t),Rt(n),l.head.appendChild(n)}}}function Um(t,e,l){tl.S(t,e,l);var n=Dn;if(n&&t){var a=Il(n).hoistableStyles,u=Un(t);e=e||"default";var c=a.get(u);if(!c){var r={loading:0,preload:null};if(c=n.querySelector(Ta(u)))r.loading=5;else{t=x({rel:"stylesheet",href:t,"data-precedence":e},l),(l=be.get(u))&&mf(t,l);var h=c=n.createElement("link");Rt(h),Ht(h,"link",t),h._p=new Promise(function(p,_){h.onload=p,h.onerror=_}),h.addEventListener("load",function(){r.loading|=1}),h.addEventListener("error",function(){r.loading|=2}),r.loading|=4,Lu(c,e,n)}c={type:"stylesheet",instance:c,count:1,state:r},a.set(u,c)}}}function xm(t,e){tl.X(t,e);var l=Dn;if(l&&t){var n=Il(l).hoistableScripts,a=xn(t),u=n.get(a);u||(u=l.querySelector(Aa(a)),u||(t=x({src:t,async:!0},e),(e=be.get(a))&&vf(t,e),u=l.createElement("script"),Rt(u),Ht(u,"link",t),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(a,u))}}function Cm(t,e){tl.M(t,e);var l=Dn;if(l&&t){var n=Il(l).hoistableScripts,a=xn(t),u=n.get(a);u||(u=l.querySelector(Aa(a)),u||(t=x({src:t,async:!0,type:"module"},e),(e=be.get(a))&&vf(t,e),u=l.createElement("script"),Rt(u),Ht(u,"link",t),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(a,u))}}function Mh(t,e,l,n){var a=(a=J.current)?ju(a):null;if(!a)throw Error(s(446));switch(t){case"meta":case"title":return null;case"style":return typeof l.precedence=="string"&&typeof l.href=="string"?(e=Un(l.href),l=Il(a).hoistableStyles,n=l.get(e),n||(n={type:"style",instance:null,count:0,state:null},l.set(e,n)),n):{type:"void",instance:null,count:0,state:null};case"link":if(l.rel==="stylesheet"&&typeof l.href=="string"&&typeof l.precedence=="string"){t=Un(l.href);var u=Il(a).hoistableStyles,c=u.get(t);if(c||(a=a.ownerDocument||a,c={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},u.set(t,c),(u=a.querySelector(Ta(t)))&&!u._p&&(c.instance=u,c.state.loading=5),be.has(t)||(l={rel:"preload",as:"style",href:l.href,crossOrigin:l.crossOrigin,integrity:l.integrity,media:l.media,hrefLang:l.hrefLang,referrerPolicy:l.referrerPolicy},be.set(t,l),u||Bm(a,t,l,c.state))),e&&n===null)throw Error(s(528,""));return c}if(e&&n!==null)throw Error(s(529,""));return null;case"script":return e=l.async,l=l.src,typeof l=="string"&&e&&typeof e!="function"&&typeof e!="symbol"?(e=xn(l),l=Il(a).hoistableScripts,n=l.get(e),n||(n={type:"script",instance:null,count:0,state:null},l.set(e,n)),n):{type:"void",instance:null,count:0,state:null};default:throw Error(s(444,t))}}function Un(t){return'href="'+re(t)+'"'}function Ta(t){return'link[rel="stylesheet"]['+t+"]"}function Rh(t){return x({},t,{"data-precedence":t.precedence,precedence:null})}function Bm(t,e,l,n){t.querySelector('link[rel="preload"][as="style"]['+e+"]")?n.loading=1:(e=t.createElement("link"),n.preload=e,e.addEventListener("load",function(){return n.loading|=1}),e.addEventListener("error",function(){return n.loading|=2}),Ht(e,"link",l),Rt(e),t.head.appendChild(e))}function xn(t){return'[src="'+re(t)+'"]'}function Aa(t){return"script[async]"+t}function Dh(t,e,l){if(e.count++,e.instance===null)switch(e.type){case"style":var n=t.querySelector('style[data-href~="'+re(l.href)+'"]');if(n)return e.instance=n,Rt(n),n;var a=x({},l,{"data-href":l.href,"data-precedence":l.precedence,href:null,precedence:null});return n=(t.ownerDocument||t).createElement("style"),Rt(n),Ht(n,"style",a),Lu(n,l.precedence,t),e.instance=n;case"stylesheet":a=Un(l.href);var u=t.querySelector(Ta(a));if(u)return e.state.loading|=4,e.instance=u,Rt(u),u;n=Rh(l),(a=be.get(a))&&mf(n,a),u=(t.ownerDocument||t).createElement("link"),Rt(u);var c=u;return c._p=new Promise(function(r,h){c.onload=r,c.onerror=h}),Ht(u,"link",n),e.state.loading|=4,Lu(u,l.precedence,t),e.instance=u;case"script":return u=xn(l.src),(a=t.querySelector(Aa(u)))?(e.instance=a,Rt(a),a):(n=l,(a=be.get(u))&&(n=x({},l),vf(n,a)),t=t.ownerDocument||t,a=t.createElement("script"),Rt(a),Ht(a,"link",n),t.head.appendChild(a),e.instance=a);case"void":return null;default:throw Error(s(443,e.type))}else e.type==="stylesheet"&&(e.state.loading&4)===0&&(n=e.instance,e.state.loading|=4,Lu(n,l.precedence,t));return e.instance}function Lu(t,e,l){for(var n=l.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=n.length?n[n.length-1]:null,u=a,c=0;c title"):null)}function qm(t,e,l){if(l===1||e.itemProp!=null)return!1;switch(t){case"meta":case"title":return!0;case"style":if(typeof e.precedence!="string"||typeof e.href!="string"||e.href==="")break;return!0;case"link":if(typeof e.rel!="string"||typeof e.href!="string"||e.href===""||e.onLoad||e.onError)break;switch(e.rel){case"stylesheet":return t=e.disabled,typeof e.precedence=="string"&&t==null;default:return!0}case"script":if(e.async&&typeof e.async!="function"&&typeof e.async!="symbol"&&!e.onLoad&&!e.onError&&e.src&&typeof e.src=="string")return!0}return!1}function Ch(t){return!(t.type==="stylesheet"&&(t.state.loading&3)===0)}function Hm(t,e,l,n){if(l.type==="stylesheet"&&(typeof n.media!="string"||matchMedia(n.media).matches!==!1)&&(l.state.loading&4)===0){if(l.instance===null){var a=Un(n.href),u=e.querySelector(Ta(a));if(u){e=u._p,e!==null&&typeof e=="object"&&typeof e.then=="function"&&(t.count++,t=Qu.bind(t),e.then(t,t)),l.state.loading|=4,l.instance=u,Rt(u);return}u=e.ownerDocument||e,n=Rh(n),(a=be.get(a))&&mf(n,a),u=u.createElement("link"),Rt(u);var c=u;c._p=new Promise(function(r,h){c.onload=r,c.onerror=h}),Ht(u,"link",n),l.instance=u}t.stylesheets===null&&(t.stylesheets=new Map),t.stylesheets.set(l,e),(e=l.state.preload)&&(l.state.loading&3)===0&&(t.count++,l=Qu.bind(t),e.addEventListener("load",l),e.addEventListener("error",l))}}var gf=0;function Ym(t,e){return t.stylesheets&&t.count===0&&Vu(t,t.stylesheets),0gf?50:800)+e);return t.unsuspend=l,function(){t.unsuspend=null,clearTimeout(n),clearTimeout(a)}}:null}function Qu(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Vu(this,this.stylesheets);else if(this.unsuspend){var t=this.unsuspend;this.unsuspend=null,t()}}}var Gu=null;function Vu(t,e){t.stylesheets=null,t.unsuspend!==null&&(t.count++,Gu=new Map,e.forEach(jm,t),Gu=null,Qu.call(t))}function jm(t,e){if(!(e.state.loading&4)){var l=Gu.get(t);if(l)var n=l.get(null);else{l=new Map,Gu.set(t,l);for(var a=t.querySelectorAll("link[data-precedence],style[data-precedence]"),u=0;u"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(o)}catch(i){console.error(i)}}return o(),Of.exports=t0(),Of.exports}var l0=e0();const Be=Object.create(null);Be.open="0";Be.close="1";Be.ping="2";Be.pong="3";Be.message="4";Be.upgrade="5";Be.noop="6";const Pu=Object.create(null);Object.keys(Be).forEach(o=>{Pu[Be[o]]=o});const Cf={type:"error",data:"parser error"},fd=typeof Blob=="function"||typeof Blob<"u"&&Object.prototype.toString.call(Blob)==="[object BlobConstructor]",sd=typeof ArrayBuffer=="function",od=o=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(o):o&&o.buffer instanceof ArrayBuffer,Xf=({type:o,data:i},f,s)=>fd&&i instanceof Blob?f?s(i):nd(i,s):sd&&(i instanceof ArrayBuffer||od(i))?f?s(i):nd(new Blob([i]),s):s(Be[o]+(i||"")),nd=(o,i)=>{const f=new FileReader;return f.onload=function(){const s=f.result.split(",")[1];i("b"+(s||""))},f.readAsDataURL(o)};function ad(o){return o instanceof Uint8Array?o:o instanceof ArrayBuffer?new Uint8Array(o):new Uint8Array(o.buffer,o.byteOffset,o.byteLength)}let Df;function n0(o,i){if(fd&&o.data instanceof Blob)return o.data.arrayBuffer().then(ad).then(i);if(sd&&(o.data instanceof ArrayBuffer||od(o.data)))return i(ad(o.data));Xf(o,!1,f=>{Df||(Df=new TextEncoder),i(Df.encode(f))})}const ud="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",xa=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(let o=0;o{let i=o.length*.75,f=o.length,s,m=0,E,R,B,M;o[o.length-1]==="="&&(i--,o[o.length-2]==="="&&i--);const A=new ArrayBuffer(i),Q=new Uint8Array(A);for(s=0;s>4,Q[m++]=(R&15)<<4|B>>2,Q[m++]=(B&3)<<6|M&63;return A},u0=typeof ArrayBuffer=="function",Qf=(o,i)=>{if(typeof o!="string")return{type:"message",data:rd(o,i)};const f=o.charAt(0);return f==="b"?{type:"message",data:i0(o.substring(1),i)}:Pu[f]?o.length>1?{type:Pu[f],data:o.substring(1)}:{type:Pu[f]}:Cf},i0=(o,i)=>{if(u0){const f=a0(o);return rd(f,i)}else return{base64:!0,data:o}},rd=(o,i)=>{switch(i){case"blob":return o instanceof Blob?o:new Blob([o]);case"arraybuffer":default:return o instanceof ArrayBuffer?o:o.buffer}},hd="",c0=(o,i)=>{const f=o.length,s=new Array(f);let m=0;o.forEach((E,R)=>{Xf(E,!1,B=>{s[R]=B,++m===f&&i(s.join(hd))})})},f0=(o,i)=>{const f=o.split(hd),s=[];for(let m=0;m{const s=f.length;let m;if(s<126)m=new Uint8Array(1),new DataView(m.buffer).setUint8(0,s);else if(s<65536){m=new Uint8Array(3);const E=new DataView(m.buffer);E.setUint8(0,126),E.setUint16(1,s)}else{m=new Uint8Array(9);const E=new DataView(m.buffer);E.setUint8(0,127),E.setBigUint64(1,BigInt(s))}o.data&&typeof o.data!="string"&&(m[0]|=128),i.enqueue(m),i.enqueue(f)})}})}let Uf;function Fu(o){return o.reduce((i,f)=>i+f.length,0)}function Iu(o,i){if(o[0].length===i)return o.shift();const f=new Uint8Array(i);let s=0;for(let m=0;mMath.pow(2,21)-1){B.enqueue(Cf);break}m=Q*Math.pow(2,32)+A.getUint32(4),s=3}else{if(Fu(f)o){B.enqueue(Cf);break}}}})}const dd=4;function Ot(o){if(o)return r0(o)}function r0(o){for(var i in Ot.prototype)o[i]=Ot.prototype[i];return o}Ot.prototype.on=Ot.prototype.addEventListener=function(o,i){return this._callbacks=this._callbacks||{},(this._callbacks["$"+o]=this._callbacks["$"+o]||[]).push(i),this};Ot.prototype.once=function(o,i){function f(){this.off(o,f),i.apply(this,arguments)}return f.fn=i,this.on(o,f),this};Ot.prototype.off=Ot.prototype.removeListener=Ot.prototype.removeAllListeners=Ot.prototype.removeEventListener=function(o,i){if(this._callbacks=this._callbacks||{},arguments.length==0)return this._callbacks={},this;var f=this._callbacks["$"+o];if(!f)return this;if(arguments.length==1)return delete this._callbacks["$"+o],this;for(var s,m=0;mPromise.resolve().then(i):(i,f)=>f(i,0),Se=typeof self<"u"?self:typeof window<"u"?window:Function("return this")(),h0="arraybuffer";function yd(o,...i){return i.reduce((f,s)=>(o.hasOwnProperty(s)&&(f[s]=o[s]),f),{})}const d0=Se.setTimeout,y0=Se.clearTimeout;function ai(o,i){i.useNativeTimers?(o.setTimeoutFn=d0.bind(Se),o.clearTimeoutFn=y0.bind(Se)):(o.setTimeoutFn=Se.setTimeout.bind(Se),o.clearTimeoutFn=Se.clearTimeout.bind(Se))}const m0=1.33;function v0(o){return typeof o=="string"?g0(o):Math.ceil((o.byteLength||o.size)*m0)}function g0(o){let i=0,f=0;for(let s=0,m=o.length;s=57344?f+=3:(s++,f+=4);return f}function md(){return Date.now().toString(36).substring(3)+Math.random().toString(36).substring(2,5)}function p0(o){let i="";for(let f in o)o.hasOwnProperty(f)&&(i.length&&(i+="&"),i+=encodeURIComponent(f)+"="+encodeURIComponent(o[f]));return i}function b0(o){let i={},f=o.split("&");for(let s=0,m=f.length;s{this.readyState="paused",i()};if(this._polling||!this.writable){let s=0;this._polling&&(s++,this.once("pollComplete",function(){--s||f()})),this.writable||(s++,this.once("drain",function(){--s||f()}))}else f()}_poll(){this._polling=!0,this.doPoll(),this.emitReserved("poll")}onData(i){const f=s=>{if(this.readyState==="opening"&&s.type==="open"&&this.onOpen(),s.type==="close")return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(s)};f0(i,this.socket.binaryType).forEach(f),this.readyState!=="closed"&&(this._polling=!1,this.emitReserved("pollComplete"),this.readyState==="open"&&this._poll())}doClose(){const i=()=>{this.write([{type:"close"}])};this.readyState==="open"?i():this.once("open",i)}write(i){this.writable=!1,c0(i,f=>{this.doWrite(f,()=>{this.writable=!0,this.emitReserved("drain")})})}uri(){const i=this.opts.secure?"https":"http",f=this.query||{};return this.opts.timestampRequests!==!1&&(f[this.opts.timestampParam]=md()),!this.supportsBinary&&!f.sid&&(f.b64=1),this.createUri(i,f)}}let vd=!1;try{vd=typeof XMLHttpRequest<"u"&&"withCredentials"in new XMLHttpRequest}catch{}const E0=vd;function T0(){}class A0 extends _0{constructor(i){if(super(i),typeof location<"u"){const f=location.protocol==="https:";let s=location.port;s||(s=f?"443":"80"),this.xd=typeof location<"u"&&i.hostname!==location.hostname||s!==i.port}}doWrite(i,f){const s=this.request({method:"POST",data:i});s.on("success",f),s.on("error",(m,E)=>{this.onError("xhr post error",m,E)})}doPoll(){const i=this.request();i.on("data",this.onData.bind(this)),i.on("error",(f,s)=>{this.onError("xhr poll error",f,s)}),this.pollXhr=i}}class Ce extends Ot{constructor(i,f,s){super(),this.createRequest=i,ai(this,s),this._opts=s,this._method=s.method||"GET",this._uri=f,this._data=s.data!==void 0?s.data:null,this._create()}_create(){var i;const f=yd(this._opts,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");f.xdomain=!!this._opts.xd;const s=this._xhr=this.createRequest(f);try{s.open(this._method,this._uri,!0);try{if(this._opts.extraHeaders){s.setDisableHeaderCheck&&s.setDisableHeaderCheck(!0);for(let m in this._opts.extraHeaders)this._opts.extraHeaders.hasOwnProperty(m)&&s.setRequestHeader(m,this._opts.extraHeaders[m])}}catch{}if(this._method==="POST")try{s.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch{}try{s.setRequestHeader("Accept","*/*")}catch{}(i=this._opts.cookieJar)===null||i===void 0||i.addCookies(s),"withCredentials"in s&&(s.withCredentials=this._opts.withCredentials),this._opts.requestTimeout&&(s.timeout=this._opts.requestTimeout),s.onreadystatechange=()=>{var m;s.readyState===3&&((m=this._opts.cookieJar)===null||m===void 0||m.parseCookies(s.getResponseHeader("set-cookie"))),s.readyState===4&&(s.status===200||s.status===1223?this._onLoad():this.setTimeoutFn(()=>{this._onError(typeof s.status=="number"?s.status:0)},0))},s.send(this._data)}catch(m){this.setTimeoutFn(()=>{this._onError(m)},0);return}typeof document<"u"&&(this._index=Ce.requestsCount++,Ce.requests[this._index]=this)}_onError(i){this.emitReserved("error",i,this._xhr),this._cleanup(!0)}_cleanup(i){if(!(typeof this._xhr>"u"||this._xhr===null)){if(this._xhr.onreadystatechange=T0,i)try{this._xhr.abort()}catch{}typeof document<"u"&&delete Ce.requests[this._index],this._xhr=null}}_onLoad(){const i=this._xhr.responseText;i!==null&&(this.emitReserved("data",i),this.emitReserved("success"),this._cleanup())}abort(){this._cleanup()}}Ce.requestsCount=0;Ce.requests={};if(typeof document<"u"){if(typeof attachEvent=="function")attachEvent("onunload",id);else if(typeof addEventListener=="function"){const o="onpagehide"in Se?"pagehide":"unload";addEventListener(o,id,!1)}}function id(){for(let o in Ce.requests)Ce.requests.hasOwnProperty(o)&&Ce.requests[o].abort()}const z0=(function(){const o=gd({xdomain:!1});return o&&o.responseType!==null})();class O0 extends A0{constructor(i){super(i);const f=i&&i.forceBase64;this.supportsBinary=z0&&!f}request(i={}){return Object.assign(i,{xd:this.xd},this.opts),new Ce(gd,this.uri(),i)}}function gd(o){const i=o.xdomain;try{if(typeof XMLHttpRequest<"u"&&(!i||E0))return new XMLHttpRequest}catch{}if(!i)try{return new Se[["Active"].concat("Object").join("X")]("Microsoft.XMLHTTP")}catch{}}const pd=typeof navigator<"u"&&typeof navigator.product=="string"&&navigator.product.toLowerCase()==="reactnative";class N0 extends Gf{get name(){return"websocket"}doOpen(){const i=this.uri(),f=this.opts.protocols,s=pd?{}:yd(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(s.headers=this.opts.extraHeaders);try{this.ws=this.createSocket(i,f,s)}catch(m){return this.emitReserved("error",m)}this.ws.binaryType=this.socket.binaryType,this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=i=>this.onClose({description:"websocket connection closed",context:i}),this.ws.onmessage=i=>this.onData(i.data),this.ws.onerror=i=>this.onError("websocket error",i)}write(i){this.writable=!1;for(let f=0;f{try{this.doWrite(s,E)}catch{}m&&ni(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){typeof this.ws<"u"&&(this.ws.onerror=()=>{},this.ws.close(),this.ws=null)}uri(){const i=this.opts.secure?"wss":"ws",f=this.query||{};return this.opts.timestampRequests&&(f[this.opts.timestampParam]=md()),this.supportsBinary||(f.b64=1),this.createUri(i,f)}}const xf=Se.WebSocket||Se.MozWebSocket;class M0 extends N0{createSocket(i,f,s){return pd?new xf(i,f,s):f?new xf(i,f):new xf(i)}doWrite(i,f){this.ws.send(f)}}class R0 extends Gf{get name(){return"webtransport"}doOpen(){try{this._transport=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name])}catch(i){return this.emitReserved("error",i)}this._transport.closed.then(()=>{this.onClose()}).catch(i=>{this.onError("webtransport error",i)}),this._transport.ready.then(()=>{this._transport.createBidirectionalStream().then(i=>{const f=o0(Number.MAX_SAFE_INTEGER,this.socket.binaryType),s=i.readable.pipeThrough(f).getReader(),m=s0();m.readable.pipeTo(i.writable),this._writer=m.writable.getWriter();const E=()=>{s.read().then(({done:B,value:M})=>{B||(this.onPacket(M),E())}).catch(B=>{})};E();const R={type:"open"};this.query.sid&&(R.data=`{"sid":"${this.query.sid}"}`),this._writer.write(R).then(()=>this.onOpen())})})}write(i){this.writable=!1;for(let f=0;f{m&&ni(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){var i;(i=this._transport)===null||i===void 0||i.close()}}const D0={websocket:M0,webtransport:R0,polling:O0},U0=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,x0=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function Bf(o){if(o.length>8e3)throw"URI too long";const i=o,f=o.indexOf("["),s=o.indexOf("]");f!=-1&&s!=-1&&(o=o.substring(0,f)+o.substring(f,s).replace(/:/g,";")+o.substring(s,o.length));let m=U0.exec(o||""),E={},R=14;for(;R--;)E[x0[R]]=m[R]||"";return f!=-1&&s!=-1&&(E.source=i,E.host=E.host.substring(1,E.host.length-1).replace(/;/g,":"),E.authority=E.authority.replace("[","").replace("]","").replace(/;/g,":"),E.ipv6uri=!0),E.pathNames=C0(E,E.path),E.queryKey=B0(E,E.query),E}function C0(o,i){const f=/\/{2,9}/g,s=i.replace(f,"/").split("/");return(i.slice(0,1)=="/"||i.length===0)&&s.splice(0,1),i.slice(-1)=="/"&&s.splice(s.length-1,1),s}function B0(o,i){const f={};return i.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,function(s,m,E){m&&(f[m]=E)}),f}const qf=typeof addEventListener=="function"&&typeof removeEventListener=="function",ti=[];qf&&addEventListener("offline",()=>{ti.forEach(o=>o())},!1);class Nl extends Ot{constructor(i,f){if(super(),this.binaryType=h0,this.writeBuffer=[],this._prevBufferLen=0,this._pingInterval=-1,this._pingTimeout=-1,this._maxPayload=-1,this._pingTimeoutTime=1/0,i&&typeof i=="object"&&(f=i,i=null),i){const s=Bf(i);f.hostname=s.host,f.secure=s.protocol==="https"||s.protocol==="wss",f.port=s.port,s.query&&(f.query=s.query)}else f.host&&(f.hostname=Bf(f.host).host);ai(this,f),this.secure=f.secure!=null?f.secure:typeof location<"u"&&location.protocol==="https:",f.hostname&&!f.port&&(f.port=this.secure?"443":"80"),this.hostname=f.hostname||(typeof location<"u"?location.hostname:"localhost"),this.port=f.port||(typeof location<"u"&&location.port?location.port:this.secure?"443":"80"),this.transports=[],this._transportsByName={},f.transports.forEach(s=>{const m=s.prototype.name;this.transports.push(m),this._transportsByName[m]=s}),this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},f),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),typeof this.opts.query=="string"&&(this.opts.query=b0(this.opts.query)),qf&&(this.opts.closeOnBeforeunload&&(this._beforeunloadEventListener=()=>{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this._beforeunloadEventListener,!1)),this.hostname!=="localhost"&&(this._offlineEventListener=()=>{this._onClose("transport close",{description:"network connection lost"})},ti.push(this._offlineEventListener))),this.opts.withCredentials&&(this._cookieJar=void 0),this._open()}createTransport(i){const f=Object.assign({},this.opts.query);f.EIO=dd,f.transport=i,this.id&&(f.sid=this.id);const s=Object.assign({},this.opts,{query:f,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[i]);return new this._transportsByName[i](s)}_open(){if(this.transports.length===0){this.setTimeoutFn(()=>{this.emitReserved("error","No transports available")},0);return}const i=this.opts.rememberUpgrade&&Nl.priorWebsocketSuccess&&this.transports.indexOf("websocket")!==-1?"websocket":this.transports[0];this.readyState="opening";const f=this.createTransport(i);f.open(),this.setTransport(f)}setTransport(i){this.transport&&this.transport.removeAllListeners(),this.transport=i,i.on("drain",this._onDrain.bind(this)).on("packet",this._onPacket.bind(this)).on("error",this._onError.bind(this)).on("close",f=>this._onClose("transport close",f))}onOpen(){this.readyState="open",Nl.priorWebsocketSuccess=this.transport.name==="websocket",this.emitReserved("open"),this.flush()}_onPacket(i){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing")switch(this.emitReserved("packet",i),this.emitReserved("heartbeat"),i.type){case"open":this.onHandshake(JSON.parse(i.data));break;case"ping":this._sendPacket("pong"),this.emitReserved("ping"),this.emitReserved("pong"),this._resetPingTimeout();break;case"error":const f=new Error("server error");f.code=i.data,this._onError(f);break;case"message":this.emitReserved("data",i.data),this.emitReserved("message",i.data);break}}onHandshake(i){this.emitReserved("handshake",i),this.id=i.sid,this.transport.query.sid=i.sid,this._pingInterval=i.pingInterval,this._pingTimeout=i.pingTimeout,this._maxPayload=i.maxPayload,this.onOpen(),this.readyState!=="closed"&&this._resetPingTimeout()}_resetPingTimeout(){this.clearTimeoutFn(this._pingTimeoutTimer);const i=this._pingInterval+this._pingTimeout;this._pingTimeoutTime=Date.now()+i,this._pingTimeoutTimer=this.setTimeoutFn(()=>{this._onClose("ping timeout")},i),this.opts.autoUnref&&this._pingTimeoutTimer.unref()}_onDrain(){this.writeBuffer.splice(0,this._prevBufferLen),this._prevBufferLen=0,this.writeBuffer.length===0?this.emitReserved("drain"):this.flush()}flush(){if(this.readyState!=="closed"&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){const i=this._getWritablePackets();this.transport.send(i),this._prevBufferLen=i.length,this.emitReserved("flush")}}_getWritablePackets(){if(!(this._maxPayload&&this.transport.name==="polling"&&this.writeBuffer.length>1))return this.writeBuffer;let f=1;for(let s=0;s0&&f>this._maxPayload)return this.writeBuffer.slice(0,s);f+=2}return this.writeBuffer}_hasPingExpired(){if(!this._pingTimeoutTime)return!0;const i=Date.now()>this._pingTimeoutTime;return i&&(this._pingTimeoutTime=0,ni(()=>{this._onClose("ping timeout")},this.setTimeoutFn)),i}write(i,f,s){return this._sendPacket("message",i,f,s),this}send(i,f,s){return this._sendPacket("message",i,f,s),this}_sendPacket(i,f,s,m){if(typeof f=="function"&&(m=f,f=void 0),typeof s=="function"&&(m=s,s=null),this.readyState==="closing"||this.readyState==="closed")return;s=s||{},s.compress=s.compress!==!1;const E={type:i,data:f,options:s};this.emitReserved("packetCreate",E),this.writeBuffer.push(E),m&&this.once("flush",m),this.flush()}close(){const i=()=>{this._onClose("forced close"),this.transport.close()},f=()=>{this.off("upgrade",f),this.off("upgradeError",f),i()},s=()=>{this.once("upgrade",f),this.once("upgradeError",f)};return(this.readyState==="opening"||this.readyState==="open")&&(this.readyState="closing",this.writeBuffer.length?this.once("drain",()=>{this.upgrading?s():i()}):this.upgrading?s():i()),this}_onError(i){if(Nl.priorWebsocketSuccess=!1,this.opts.tryAllTransports&&this.transports.length>1&&this.readyState==="opening")return this.transports.shift(),this._open();this.emitReserved("error",i),this._onClose("transport error",i)}_onClose(i,f){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing"){if(this.clearTimeoutFn(this._pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),qf&&(this._beforeunloadEventListener&&removeEventListener("beforeunload",this._beforeunloadEventListener,!1),this._offlineEventListener)){const s=ti.indexOf(this._offlineEventListener);s!==-1&&ti.splice(s,1)}this.readyState="closed",this.id=null,this.emitReserved("close",i,f),this.writeBuffer=[],this._prevBufferLen=0}}}Nl.protocol=dd;class q0 extends Nl{constructor(){super(...arguments),this._upgrades=[]}onOpen(){if(super.onOpen(),this.readyState==="open"&&this.opts.upgrade)for(let i=0;i{s||(f.send([{type:"ping",data:"probe"}]),f.once("packet",x=>{if(!s)if(x.type==="pong"&&x.data==="probe"){if(this.upgrading=!0,this.emitReserved("upgrading",f),!f)return;Nl.priorWebsocketSuccess=f.name==="websocket",this.transport.pause(()=>{s||this.readyState!=="closed"&&(Q(),this.setTransport(f),f.send([{type:"upgrade"}]),this.emitReserved("upgrade",f),f=null,this.upgrading=!1,this.flush())})}else{const K=new Error("probe error");K.transport=f.name,this.emitReserved("upgradeError",K)}}))};function E(){s||(s=!0,Q(),f.close(),f=null)}const R=x=>{const K=new Error("probe error: "+x);K.transport=f.name,E(),this.emitReserved("upgradeError",K)};function B(){R("transport closed")}function M(){R("socket closed")}function A(x){f&&x.name!==f.name&&E()}const Q=()=>{f.removeListener("open",m),f.removeListener("error",R),f.removeListener("close",B),this.off("close",M),this.off("upgrading",A)};f.once("open",m),f.once("error",R),f.once("close",B),this.once("close",M),this.once("upgrading",A),this._upgrades.indexOf("webtransport")!==-1&&i!=="webtransport"?this.setTimeoutFn(()=>{s||f.open()},200):f.open()}onHandshake(i){this._upgrades=this._filterUpgrades(i.upgrades),super.onHandshake(i)}_filterUpgrades(i){const f=[];for(let s=0;sD0[m]).filter(m=>!!m)),super(i,s)}};function Y0(o,i="",f){let s=o;f=f||typeof location<"u"&&location,o==null&&(o=f.protocol+"//"+f.host),typeof o=="string"&&(o.charAt(0)==="/"&&(o.charAt(1)==="/"?o=f.protocol+o:o=f.host+o),/^(https?|wss?):\/\//.test(o)||(typeof f<"u"?o=f.protocol+"//"+o:o="https://"+o),s=Bf(o)),s.port||(/^(http|ws)$/.test(s.protocol)?s.port="80":/^(http|ws)s$/.test(s.protocol)&&(s.port="443")),s.path=s.path||"/";const E=s.host.indexOf(":")!==-1?"["+s.host+"]":s.host;return s.id=s.protocol+"://"+E+":"+s.port+i,s.href=s.protocol+"://"+E+(f&&f.port===s.port?"":":"+s.port),s}const j0=typeof ArrayBuffer=="function",L0=o=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(o):o.buffer instanceof ArrayBuffer,bd=Object.prototype.toString,X0=typeof Blob=="function"||typeof Blob<"u"&&bd.call(Blob)==="[object BlobConstructor]",Q0=typeof File=="function"||typeof File<"u"&&bd.call(File)==="[object FileConstructor]";function Vf(o){return j0&&(o instanceof ArrayBuffer||L0(o))||X0&&o instanceof Blob||Q0&&o instanceof File}function ei(o,i){if(!o||typeof o!="object")return!1;if(Array.isArray(o)){for(let f=0,s=o.length;f=0&&o.num{delete this.acks[i];for(let B=0;B{this.io.clearTimeoutFn(E),f.apply(this,B)};R.withError=!0,this.acks[i]=R}emitWithAck(i,...f){return new Promise((s,m)=>{const E=(R,B)=>R?m(R):s(B);E.withError=!0,f.push(E),this.emit(i,...f)})}_addToQueue(i){let f;typeof i[i.length-1]=="function"&&(f=i.pop());const s={id:this._queueSeq++,tryCount:0,pending:!1,args:i,flags:Object.assign({fromQueue:!0},this.flags)};i.push((m,...E)=>s!==this._queue[0]?void 0:(m!==null?s.tryCount>this._opts.retries&&(this._queue.shift(),f&&f(m)):(this._queue.shift(),f&&f(null,...E)),s.pending=!1,this._drainQueue())),this._queue.push(s),this._drainQueue()}_drainQueue(i=!1){if(!this.connected||this._queue.length===0)return;const f=this._queue[0];f.pending&&!i||(f.pending=!0,f.tryCount++,this.flags=f.flags,this.emit.apply(this,f.args))}packet(i){i.nsp=this.nsp,this.io._packet(i)}onopen(){typeof this.auth=="function"?this.auth(i=>{this._sendConnectPacket(i)}):this._sendConnectPacket(this.auth)}_sendConnectPacket(i){this.packet({type:tt.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},i):i})}onerror(i){this.connected||this.emitReserved("connect_error",i)}onclose(i,f){this.connected=!1,delete this.id,this.emitReserved("disconnect",i,f),this._clearAcks()}_clearAcks(){Object.keys(this.acks).forEach(i=>{if(!this.sendBuffer.some(s=>String(s.id)===i)){const s=this.acks[i];delete this.acks[i],s.withError&&s.call(this,new Error("socket has been disconnected"))}})}onpacket(i){if(i.nsp===this.nsp)switch(i.type){case tt.CONNECT:i.data&&i.data.sid?this.onconnect(i.data.sid,i.data.pid):this.emitReserved("connect_error",new Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case tt.EVENT:case tt.BINARY_EVENT:this.onevent(i);break;case tt.ACK:case tt.BINARY_ACK:this.onack(i);break;case tt.DISCONNECT:this.ondisconnect();break;case tt.CONNECT_ERROR:this.destroy();const s=new Error(i.data.message);s.data=i.data.data,this.emitReserved("connect_error",s);break}}onevent(i){const f=i.data||[];i.id!=null&&f.push(this.ack(i.id)),this.connected?this.emitEvent(f):this.receiveBuffer.push(Object.freeze(f))}emitEvent(i){if(this._anyListeners&&this._anyListeners.length){const f=this._anyListeners.slice();for(const s of f)s.apply(this,i)}super.emit.apply(this,i),this._pid&&i.length&&typeof i[i.length-1]=="string"&&(this._lastOffset=i[i.length-1])}ack(i){const f=this;let s=!1;return function(...m){s||(s=!0,f.packet({type:tt.ACK,id:i,data:m}))}}onack(i){const f=this.acks[i.id];typeof f=="function"&&(delete this.acks[i.id],f.withError&&i.data.unshift(null),f.apply(this,i.data))}onconnect(i,f){this.id=i,this.recovered=f&&this._pid===f,this._pid=f,this.connected=!0,this.emitBuffered(),this.emitReserved("connect"),this._drainQueue(!0)}emitBuffered(){this.receiveBuffer.forEach(i=>this.emitEvent(i)),this.receiveBuffer=[],this.sendBuffer.forEach(i=>{this.notifyOutgoingListeners(i),this.packet(i)}),this.sendBuffer=[]}ondisconnect(){this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach(i=>i()),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&this.packet({type:tt.DISCONNECT}),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(i){return this.flags.compress=i,this}get volatile(){return this.flags.volatile=!0,this}timeout(i){return this.flags.timeout=i,this}onAny(i){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(i),this}prependAny(i){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(i),this}offAny(i){if(!this._anyListeners)return this;if(i){const f=this._anyListeners;for(let s=0;s0&&o.jitter<=1?o.jitter:0,this.attempts=0}Bn.prototype.duration=function(){var o=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var i=Math.random(),f=Math.floor(i*this.jitter*o);o=(Math.floor(i*10)&1)==0?o-f:o+f}return Math.min(o,this.max)|0};Bn.prototype.reset=function(){this.attempts=0};Bn.prototype.setMin=function(o){this.ms=o};Bn.prototype.setMax=function(o){this.max=o};Bn.prototype.setJitter=function(o){this.jitter=o};class jf extends Ot{constructor(i,f){var s;super(),this.nsps={},this.subs=[],i&&typeof i=="object"&&(f=i,i=void 0),f=f||{},f.path=f.path||"/socket.io",this.opts=f,ai(this,f),this.reconnection(f.reconnection!==!1),this.reconnectionAttempts(f.reconnectionAttempts||1/0),this.reconnectionDelay(f.reconnectionDelay||1e3),this.reconnectionDelayMax(f.reconnectionDelayMax||5e3),this.randomizationFactor((s=f.randomizationFactor)!==null&&s!==void 0?s:.5),this.backoff=new Bn({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(f.timeout==null?2e4:f.timeout),this._readyState="closed",this.uri=i;const m=f.parser||k0;this.encoder=new m.Encoder,this.decoder=new m.Decoder,this._autoConnect=f.autoConnect!==!1,this._autoConnect&&this.open()}reconnection(i){return arguments.length?(this._reconnection=!!i,i||(this.skipReconnect=!0),this):this._reconnection}reconnectionAttempts(i){return i===void 0?this._reconnectionAttempts:(this._reconnectionAttempts=i,this)}reconnectionDelay(i){var f;return i===void 0?this._reconnectionDelay:(this._reconnectionDelay=i,(f=this.backoff)===null||f===void 0||f.setMin(i),this)}randomizationFactor(i){var f;return i===void 0?this._randomizationFactor:(this._randomizationFactor=i,(f=this.backoff)===null||f===void 0||f.setJitter(i),this)}reconnectionDelayMax(i){var f;return i===void 0?this._reconnectionDelayMax:(this._reconnectionDelayMax=i,(f=this.backoff)===null||f===void 0||f.setMax(i),this)}timeout(i){return arguments.length?(this._timeout=i,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&this.backoff.attempts===0&&this.reconnect()}open(i){if(~this._readyState.indexOf("open"))return this;this.engine=new H0(this.uri,this.opts);const f=this.engine,s=this;this._readyState="opening",this.skipReconnect=!1;const m=ze(f,"open",function(){s.onopen(),i&&i()}),E=B=>{this.cleanup(),this._readyState="closed",this.emitReserved("error",B),i?i(B):this.maybeReconnectOnOpen()},R=ze(f,"error",E);if(this._timeout!==!1){const B=this._timeout,M=this.setTimeoutFn(()=>{m(),E(new Error("timeout")),f.close()},B);this.opts.autoUnref&&M.unref(),this.subs.push(()=>{this.clearTimeoutFn(M)})}return this.subs.push(m),this.subs.push(R),this}connect(i){return this.open(i)}onopen(){this.cleanup(),this._readyState="open",this.emitReserved("open");const i=this.engine;this.subs.push(ze(i,"ping",this.onping.bind(this)),ze(i,"data",this.ondata.bind(this)),ze(i,"error",this.onerror.bind(this)),ze(i,"close",this.onclose.bind(this)),ze(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(i){try{this.decoder.add(i)}catch(f){this.onclose("parse error",f)}}ondecoded(i){ni(()=>{this.emitReserved("packet",i)},this.setTimeoutFn)}onerror(i){this.emitReserved("error",i)}socket(i,f){let s=this.nsps[i];return s?this._autoConnect&&!s.active&&s.connect():(s=new Sd(this,i,f),this.nsps[i]=s),s}_destroy(i){const f=Object.keys(this.nsps);for(const s of f)if(this.nsps[s].active)return;this._close()}_packet(i){const f=this.encoder.encode(i);for(let s=0;si()),this.subs.length=0,this.decoder.destroy()}_close(){this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close")}disconnect(){return this._close()}onclose(i,f){var s;this.cleanup(),(s=this.engine)===null||s===void 0||s.close(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",i,f),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;const i=this;if(this.backoff.attempts>=this._reconnectionAttempts)this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{const f=this.backoff.duration();this._reconnecting=!0;const s=this.setTimeoutFn(()=>{i.skipReconnect||(this.emitReserved("reconnect_attempt",i.backoff.attempts),!i.skipReconnect&&i.open(m=>{m?(i._reconnecting=!1,i.reconnect(),this.emitReserved("reconnect_error",m)):i.onreconnect()}))},f);this.opts.autoUnref&&s.unref(),this.subs.push(()=>{this.clearTimeoutFn(s)})}}onreconnect(){const i=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",i)}}const Ua={};function li(o,i){typeof o=="object"&&(i=o,o=void 0),i=i||{};const f=Y0(o,i.path||"/socket.io"),s=f.source,m=f.id,E=f.path,R=Ua[m]&&E in Ua[m].nsps,B=i.forceNew||i["force new connection"]||i.multiplex===!1||R;let M;return B?M=new jf(s,i):(Ua[m]||(Ua[m]=new jf(s,i)),M=Ua[m]),f.query&&!i.query&&(i.query=f.queryKey),M.socket(f.path,i)}Object.assign(li,{Manager:jf,Socket:Sd,io:li,connect:li});console.log("socket.io client loaded");const $0="http://192.168.0.86:8080",_d=li($0,{transports:["websocket"],query:{role:"user"}}),Ed=Mt.createContext(_d),F0=({children:o})=>Y.jsx(Ed.Provider,{value:_d,children:o}),I0=()=>Mt.useContext(Ed),Td=Mt.createContext({connected:!1,session:null,logs:[],login:async()=>{},setRole:async()=>{},requestControl:async()=>{},releaseControl:async()=>{},subscribeAll:async()=>{}});function P0(o){return Mt.useCallback((i,f={})=>new Promise((s,m)=>{o.emit(i,f,(E={})=>{E.error?m(new Error(E.error)):s(E)})}),[o])}function tv({children:o}){const i=I0(),f=P0(i),[s,m]=Mt.useState(null),[E,R]=Mt.useState([]),[B,M]=Mt.useState(i.connected);Mt.useEffect(()=>{const x=()=>M(!0),K=()=>M(!1);return i.on("connect",x),i.on("disconnect",K),()=>{i.off("connect",x),i.off("disconnect",K)}},[i]),Mt.useEffect(()=>{function x(_t){m(_t)}function K(_t=[]){R(_t)}function Yt(_t){R(Ut=>[...Ut.slice(-199),_t])}return i.on("session:sync",x),i.on("log:init",K),i.on("log:entry",Yt),()=>{i.off("session:sync",x),i.off("log:init",K),i.off("log:entry",Yt)}},[i]);const A=Mt.useMemo(()=>({login:(x,K)=>f("auth:login",{username:x,password:K}),setRole:x=>f("session:setRole",{role:x}),requestControl:(x,K={})=>f("session:requestControl",{roverId:x,...K}),releaseControl:x=>f("session:releaseControl",{roverId:x}),subscribeAll:()=>f("session:subscribeAll")}),[f]),Q=Mt.useMemo(()=>({connected:B,session:s,logs:E,...A}),[A,B,E,s]);return Y.jsx(Td.Provider,{value:Q,children:o})}function qn(){return Mt.useContext(Td)}function ev({connected:o,role:i,mode:f}){const s=o?"bg-emerald-500/20 text-emerald-300":"bg-red-500/20 text-red-200";return Y.jsxs("div",{className:"flex flex-wrap items-center gap-3 text-sm",children:[Y.jsx("span",{className:`rounded-full px-3 py-1 font-medium ${s}`,children:o?"Connected":"Disconnected"}),Y.jsxs("span",{className:"rounded-full bg-slate-800/80 px-3 py-1 text-slate-200",children:["Role: ",i||"unknown"]}),Y.jsxs("span",{className:"rounded-full bg-slate-800/80 px-3 py-1 text-slate-200",children:["Mode: ",f||"--"]})]})}function lv(){const{logs:o}=qn();return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/70 p-4",children:[Y.jsxs("header",{className:"mb-3 flex items-center justify-between",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Server logs"}),Y.jsxs("span",{className:"text-xs uppercase tracking-[0.2em] text-slate-500",children:[o.length," entries"]})]}),Y.jsx("div",{className:"h-64 overflow-y-auto rounded-xl bg-slate-950/40 p-3 text-xs font-mono text-slate-300",children:o.length===0?Y.jsx("p",{children:"No logs yet."}):o.slice().reverse().map(i=>Y.jsxs("div",{className:"mb-2",children:[Y.jsx("span",{className:"text-slate-500",children:i.timestamp})," ",Y.jsxs("span",{className:"text-cyan-300",children:["[",i.level,"]"]})," ",i.label&&Y.jsxs("span",{className:"text-pink-300",children:["[",i.label,"]"]})," ",Y.jsx("span",{children:i.message})]},i.id))})]})}function nv(){const{session:o,requestControl:i}=qn(),f=o?.roster??[],[s,m]=Mt.useState({});async function E(R){m(B=>({...B,[R]:!0}));try{await i(R)}catch(B){alert(B.message)}finally{m(B=>({...B,[R]:!1}))}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Rovers"}),Y.jsxs("div",{className:"mt-4 space-y-3",children:[f.length===0&&Y.jsx("p",{className:"text-slate-400",children:"No rovers registered."}),f.map(R=>Y.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-3 rounded-xl bg-slate-950/40 px-4 py-3",children:[Y.jsxs("div",{children:[Y.jsx("p",{className:"text-white",children:R.name}),Y.jsxs("p",{className:"text-xs text-slate-400",children:["Locked: ",R.locked?"yes":"no"]})]}),Y.jsx("button",{type:"button",onClick:()=>E(R.id),disabled:s[R.id],className:"rounded-full bg-blue-600 px-4 py-1 text-sm font-semibold text-white disabled:opacity-50",children:s[R.id]?"Requesting…":"Request control"})]},R.id))]})]})}function av(){const{session:o,releaseControl:i}=qn(),f=o?.assignment,s=f?.roverId,[m,E]=Mt.useState(!1);async function R(){if(s){E(!0);try{await i(s)}catch(B){alert(B.message)}finally{E(!1)}}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Assignment"}),s?Y.jsxs("div",{className:"mt-4 space-y-3",children:[Y.jsxs("p",{className:"text-slate-300",children:["Currently driving rover ",s]}),Y.jsx("button",{type:"button",onClick:R,disabled:m,className:"rounded-full bg-red-600 px-4 py-1 text-sm font-semibold text-white disabled:opacity-50",children:m?"Releasing…":"Release control"})]}):Y.jsxs("div",{className:"mt-4 text-slate-400",children:[Y.jsxs("p",{children:["Status: ",f?.status??"not assigned"]}),f?.queuePosition&&Y.jsxs("p",{children:["Queue position: ",f.queuePosition]})]})]})}function uv(){const{session:o}=qn(),i=Mt.useMemo(()=>JSON.stringify(o??{},null,2),[o]);return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Session snapshot"}),Y.jsx("pre",{className:"mt-4 max-h-64 overflow-y-auto text-sm text-teal-200",children:i})]})}function iv(){const{login:o,setRole:i}=qn(),[f,s]=Mt.useState(""),[m,E]=Mt.useState(""),[R,B]=Mt.useState(!1);async function M(A){A.preventDefault(),B(!0);try{await o(f,m),s(""),E("")}catch(Q){alert(Q.message)}finally{B(!1)}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Authentication"}),Y.jsxs("form",{className:"mt-4 flex flex-col gap-3",onSubmit:M,children:[Y.jsx("input",{className:"rounded-lg border border-slate-800 bg-slate-950/60 px-3 py-2 text-white",placeholder:"Username",value:f,onChange:A=>s(A.target.value)}),Y.jsx("input",{className:"rounded-lg border border-slate-800 bg-slate-950/60 px-3 py-2 text-white",placeholder:"Password",type:"password",value:m,onChange:A=>E(A.target.value)}),Y.jsx("button",{type:"submit",disabled:R,className:"rounded-lg bg-emerald-600 py-2 font-semibold text-white disabled:opacity-50",children:R?"Logging in…":"Login as admin"})]}),Y.jsxs("div",{className:"mt-4 flex gap-3",children:[Y.jsx("button",{type:"button",onClick:()=>i("user"),className:"rounded-lg border border-slate-700 px-3 py-1 text-sm text-slate-200",children:"Driver mode"}),Y.jsx("button",{type:"button",onClick:()=>i("spectator"),className:"rounded-lg border border-slate-700 px-3 py-1 text-sm text-slate-200",children:"Spectator mode"})]})]})}function cv(){const{connected:o,session:i}=qn();return Y.jsx("div",{className:"min-h-screen bg-slate-950 text-slate-50",children:Y.jsxs("main",{className:"mx-auto flex max-w-6xl flex-col gap-6 px-6 py-10",children:[Y.jsxs("header",{className:"space-y-4",children:[Y.jsx("h1",{className:"text-4xl font-semibold text-white",children:"Multi Roomba Rover Console"}),Y.jsx(ev,{connected:o,role:i?.role,mode:i?.mode})]}),Y.jsxs("section",{className:"grid gap-6 lg:grid-cols-2",children:[Y.jsx(nv,{}),Y.jsx(av,{}),Y.jsx(iv,{}),Y.jsx(uv,{})]}),Y.jsx(lv,{})]})})}l0.createRoot(document.getElementById("root")).render(Y.jsx(Mt.StrictMode,{children:Y.jsx(F0,{children:Y.jsx(tv,{children:Y.jsx(cv,{})})})})); diff --git a/server/public/assets/index-DoNH_msu.css b/server/public/assets/index-DoNH_msu.css new file mode 100644 index 00000000..e588916d --- /dev/null +++ b/server/public/assets/index-DoNH_msu.css @@ -0,0 +1 @@ +*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.mx-auto{margin-left:auto;margin-right:auto}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mt-4{margin-top:1rem}.flex{display:flex}.grid{display:grid}.h-64{height:16rem}.max-h-64{max-height:16rem}.min-h-screen{min-height:100vh}.max-w-6xl{max-width:72rem}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-3{gap:.75rem}.gap-6{gap:1.5rem}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.overflow-y-auto{overflow-y:auto}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-slate-700{--tw-border-opacity: 1;border-color:rgb(51 65 85 / var(--tw-border-opacity))}.border-slate-800{--tw-border-opacity: 1;border-color:rgb(30 41 59 / var(--tw-border-opacity))}.bg-blue-600{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity))}.bg-emerald-500\/20{background-color:#10b98133}.bg-emerald-600{--tw-bg-opacity: 1;background-color:rgb(5 150 105 / var(--tw-bg-opacity))}.bg-red-500\/20{background-color:#ef444433}.bg-red-600{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity))}.bg-slate-800\/80{background-color:#1e293bcc}.bg-slate-900\/60{background-color:#0f172a99}.bg-slate-900\/70{background-color:#0f172ab3}.bg-slate-950{--tw-bg-opacity: 1;background-color:rgb(2 6 23 / var(--tw-bg-opacity))}.bg-slate-950\/40{background-color:#02061766}.bg-slate-950\/60{background-color:#02061799}.p-3{padding:.75rem}.p-4{padding:1rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.tracking-\[0\.2em\]{letter-spacing:.2em}.text-cyan-300{--tw-text-opacity: 1;color:rgb(103 232 249 / var(--tw-text-opacity))}.text-emerald-300{--tw-text-opacity: 1;color:rgb(110 231 183 / var(--tw-text-opacity))}.text-pink-300{--tw-text-opacity: 1;color:rgb(249 168 212 / var(--tw-text-opacity))}.text-red-200{--tw-text-opacity: 1;color:rgb(254 202 202 / var(--tw-text-opacity))}.text-slate-200{--tw-text-opacity: 1;color:rgb(226 232 240 / var(--tw-text-opacity))}.text-slate-300{--tw-text-opacity: 1;color:rgb(203 213 225 / var(--tw-text-opacity))}.text-slate-400{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity))}.text-slate-50{--tw-text-opacity: 1;color:rgb(248 250 252 / var(--tw-text-opacity))}.text-slate-500{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity))}.text-teal-200{--tw-text-opacity: 1;color:rgb(153 246 228 / var(--tw-text-opacity))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#0f172a;background-color:#f8fafc}body{margin:0;min-height:100vh;background-color:#0f172a}.disabled\:opacity-50:disabled{opacity:.5}@media(min-width:1024px){.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}} diff --git a/server/public/index.html b/server/public/index.html index bb34ee51..16bf7679 100644 --- a/server/public/index.html +++ b/server/public/index.html @@ -1,93 +1,14 @@ - + - - Multi Roomba Rover - + + + + webui + + -

Multi Roomba Rover

-
Connecting…
-
- - - - Role: user -
-
-
- - -
- - -
- -
- - - - - -
-
- -
-
- -
-
-
-

Sensor Frames

-
Active rover: --
-
Driver: --
-
-
- -
-
No rover selected
- -
-

-        

Use WASD keys to drive the selected rover. Shift increases speed.

-
-
-
- - - - - - - - - - - -

Open spectator view

+
diff --git a/server/public/loader.js b/server/public/loader.js deleted file mode 100644 index 82c6b53f..00000000 --- a/server/public/loader.js +++ /dev/null @@ -1,22 +0,0 @@ -(function () { - const modules = {}; - const cache = {}; - - window.registerModule = function (name, factory) { - modules[name] = factory; - }; - - window.requireModule = function (name) { - if (cache[name]) { - return cache[name]; - } - const factory = modules[name]; - if (!factory) { - throw new Error(`Module ${name} not found`); - } - const exports = {}; - cache[name] = exports; - factory(requireModule, exports); - return exports; - }; -})(); diff --git a/server/public/spectate/index.html b/server/public/spectate/index.html deleted file mode 100644 index 5938b2eb..00000000 --- a/server/public/spectate/index.html +++ /dev/null @@ -1,33 +0,0 @@ - - - - - Rover Spectator - - - -

Rover Spectator

-
Connecting…
-
- - - - - - - - - diff --git a/server/public/spectate/spectator.js b/server/public/spectate/spectator.js deleted file mode 100644 index add8941e..00000000 --- a/server/public/spectate/spectator.js +++ /dev/null @@ -1,131 +0,0 @@ -registerModule('spectator/main', (require, exports) => { - const { socket } = require('globals/socket'); - const videoPlayer = require('services/videoPlayer'); - - const statusEl = document.getElementById('status'); - const grid = document.getElementById('grid'); - const cards = new Map(); - - socket.on('connect', () => { - statusEl.textContent = 'Connected'; - }); - - socket.on('disconnect', () => { - statusEl.textContent = 'Disconnected'; - stopAllVideos(); - }); - - socket.on('lockdown', ({ message }) => { - statusEl.textContent = message || 'Spectator mode disabled'; - stopAllVideos(); - }); - - socket.on('rovers', (list) => { - list.forEach((rover) => { - const card = ensureCard(rover.id); - card.querySelector('.meta').textContent = `Locked: ${rover.locked ? 'yes' : 'no'} | Last seen: ${new Date(rover.lastSeen).toLocaleTimeString()}`; - if (!card.dataset.videoActive) { - connectVideo(rover.id); - } - }); - Array.from(cards.keys()).forEach((id) => { - if (!list.find((r) => r.id === id)) { - removeCard(id); - } - }); - }); - - socket.on('sensorFrame', ({ roverId, sensors }) => { - const card = ensureCard(roverId); - card.querySelector('.sensor').textContent = sensors ? JSON.stringify(sensors, null, 2) : 'No data'; - }); - - function ensureCard(roverId) { - if (cards.has(roverId)) { - return cards.get(roverId); - } - const card = document.createElement('div'); - card.className = 'rover-card'; - card.dataset.videoActive = ''; - card.innerHTML = ` -

${roverId}

-
-
-
Video not connected
- -
Waiting for data...
- `; - const reconnectBtn = card.querySelector('.video-reconnect'); - reconnectBtn.addEventListener('click', () => connectVideo(roverId, true)); - grid.appendChild(card); - cards.set(roverId, card); - connectVideo(roverId, true); - return card; - } - - function connectVideo(roverId, force = false) { - const card = ensureCard(roverId); - const status = card.querySelector('.video-status'); - const wrap = card.querySelector('.video-wrap'); - const playerId = `spectator-${roverId}`; - if (!force && card.dataset.videoActive === 'yes') { - return; - } - status.textContent = 'Connecting video…'; - socket.emit('video:request', { roverId }, (resp = {}) => { - if (resp.error) { - status.textContent = `Video error: ${resp.error}`; - videoPlayer.stopStream(playerId); - card.dataset.videoActive = ''; - return; - } - videoPlayer - .startStream(playerId, { - url: resp.url, - token: resp.token, - mount: wrap, - onStatus: (state, detail) => { - if (state === 'playing') { - status.textContent = 'Video live'; - card.dataset.videoActive = 'yes'; - } else if (state === 'connecting') { - status.textContent = 'Connecting video…'; - } else if (state === 'error') { - status.textContent = `Video error: ${detail}`; - card.dataset.videoActive = ''; - } else if (state === 'stopped') { - status.textContent = 'Video stopped'; - card.dataset.videoActive = ''; - } - }, - }) - .catch((err) => { - status.textContent = `Video error: ${err.message}`; - card.dataset.videoActive = ''; - }); - }); - } - - function removeCard(roverId) { - const card = cards.get(roverId); - if (card) { - videoPlayer.stopStream(`spectator-${roverId}`); - card.remove(); - cards.delete(roverId); - } - } - - function stopAllVideos() { - Array.from(cards.keys()).forEach((id) => { - videoPlayer.stopStream(`spectator-${id}`); - const card = cards.get(id); - if (card) { - const status = card.querySelector('.video-status'); - status.textContent = 'Video stopped'; - card.dataset.videoActive = ''; - } - }); - } -}); - -requireModule('spectator/main'); diff --git a/server/public/src/globals/socket.js b/server/public/src/globals/socket.js deleted file mode 100644 index a3f50f70..00000000 --- a/server/public/src/globals/socket.js +++ /dev/null @@ -1,8 +0,0 @@ -registerModule('globals/socket', (require, exports) => { - const query = {}; - if (window.__desiredRole) { - query.role = window.__desiredRole; - } - const socket = io(query.role ? { query } : undefined); - exports.socket = socket; -}); diff --git a/server/public/src/helpers/formatters.js b/server/public/src/helpers/formatters.js deleted file mode 100644 index d4bf4e0f..00000000 --- a/server/public/src/helpers/formatters.js +++ /dev/null @@ -1,11 +0,0 @@ -registerModule('helpers/formatters', (require, exports) => { - function formatHex(base64) { - if (!base64) return ''; - const buffer = Uint8Array.from(atob(base64), (c) => c.charCodeAt(0)); - return Array.from(buffer) - .map((b) => b.toString(16).padStart(2, '0')) - .join(' '); - } - - exports.formatHex = formatHex; -}); diff --git a/server/public/src/main.js b/server/public/src/main.js deleted file mode 100644 index c188854d..00000000 --- a/server/public/src/main.js +++ /dev/null @@ -1,7 +0,0 @@ -requireModule('globals/socket'); -requireModule('helpers/formatters'); -requireModule('services/state'); -requireModule('services/alertFeed'); -requireModule('services/authControls'); -requireModule('services/roverUI'); -requireModule('services/driveControls'); diff --git a/server/public/src/services/alertFeed.js b/server/public/src/services/alertFeed.js deleted file mode 100644 index 04305874..00000000 --- a/server/public/src/services/alertFeed.js +++ /dev/null @@ -1,25 +0,0 @@ -registerModule('services/alertFeed', (require, exports) => { - const { socket } = require('globals/socket'); - - const container = document.getElementById('alerts'); - if (!container) return; - - function pushAlert({ color = '#2196f3', title, message, ts }) { - const div = document.createElement('div'); - div.className = 'alert'; - div.style.borderColor = color; - div.style.background = color + '22'; - div.innerHTML = `${title || 'Notice'} - ${message || ''}`; - container.prepend(div); - while (container.children.length > 5) { - container.removeChild(container.lastChild); - } - setTimeout(() => { - if (div.parentElement === container) { - container.removeChild(div); - } - }, 15000); - } - - socket.on('alert', pushAlert); -}); diff --git a/server/public/src/services/authControls.js b/server/public/src/services/authControls.js deleted file mode 100644 index b3f730f0..00000000 --- a/server/public/src/services/authControls.js +++ /dev/null @@ -1,35 +0,0 @@ -registerModule('services/authControls', (require, exports) => { - const { socket } = require('globals/socket'); - const state = require('services/state'); - - const usernameInput = document.getElementById('username'); - const passwordInput = document.getElementById('password'); - const loginBtn = document.getElementById('loginBtn'); - const roleStatus = document.getElementById('roleStatus'); - - function updateRole(role) { - if (roleStatus) { - roleStatus.textContent = `Role: ${role}`; - } - state.setRole(role); - } - - loginBtn?.addEventListener('click', () => { - const username = usernameInput.value.trim(); - const password = passwordInput.value; - socket.emit('auth:login', { username, password }, (resp = {}) => { - if (!resp.success) { - alert(resp.error || 'Login failed'); - } else { - updateRole(resp.role); - } - passwordInput.value = ''; - }); - }); - - socket.on('auth:role', ({ role }) => { - updateRole(role); - }); - // initialize from default role - updateRole(state.getRole()); -}); diff --git a/server/public/src/services/driveControls.js b/server/public/src/services/driveControls.js deleted file mode 100644 index e502ecbe..00000000 --- a/server/public/src/services/driveControls.js +++ /dev/null @@ -1,127 +0,0 @@ -registerModule('services/driveControls', (require, exports) => { - const { socket } = require('globals/socket'); - const state = require('services/state'); - - const motorsStopBtn = document.getElementById('motorsStop'); - const sensorToggleBtn = document.getElementById('sensorToggle'); - const modeButtons = document.querySelectorAll('[data-oi]'); - - let sensorEnabled = false; - let lastDrive = { left: 0, right: 0 }; - const keys = new Set(); - - window.addEventListener('keydown', (event) => { - const key = event.key.toLowerCase(); - if (keys.has(key)) return; - keys.add(key); - maybeSendDriveUpdate(); - }); - - window.addEventListener('keyup', (event) => { - const key = event.key.toLowerCase(); - if (!keys.has(key)) return; - keys.delete(key); - maybeSendDriveUpdate(); - }); - - function maybeSendDriveUpdate() { - const roverId = state.getSelected(); - if (!roverId) return; - const speeds = computeDrive(); - if (speeds.left === lastDrive.left && speeds.right === lastDrive.right) return; - lastDrive = speeds; - socket.emit('command', { - roverId, - type: 'drive', - data: { driveDirect: speeds }, - }); - } - - function computeDrive() { - const forward = keys.has('w'); - const backward = keys.has('s'); - const left = keys.has('a'); - const right = keys.has('d'); - const fast = keys.has('shift'); - const base = fast ? 300 : 150; - let leftSpeed = 0; - let rightSpeed = 0; - - if (forward && !backward) { - leftSpeed += base; - rightSpeed += base; - } else if (backward && !forward) { - leftSpeed -= base; - rightSpeed -= base; - } - - if (left && !right) { - leftSpeed -= base; - rightSpeed += base; - } else if (right && !left) { - leftSpeed += base; - rightSpeed -= base; - } - - if (!forward && !backward && (left || right)) { - leftSpeed = left ? -base : base; - rightSpeed = left ? base : -base; - } - - return { - left: clamp(leftSpeed, -500, 500), - right: clamp(rightSpeed, -500, 500), - }; - } - - function clamp(value, min, max) { - return Math.max(min, Math.min(max, value)); - } - - motorsStopBtn?.addEventListener('click', () => { - const roverId = state.getSelected(); - if (!roverId) return; - socket.emit('command', { - roverId, - type: 'motors', - data: { motorPwm: { main: 0, side: 0, vacuum: 0 } }, - }); - }); - - sensorToggleBtn?.addEventListener('click', () => { - sensorEnabled = !sensorEnabled; - sensorToggleBtn.textContent = sensorEnabled ? 'Disable Sensor Stream' : 'Enable Sensor Stream'; - const roverId = state.getSelected(); - socket.emit('command', { - roverId, - type: 'sensorStream', - data: { sensorStream: { enable: sensorEnabled } }, - }); - }); - - const OI_COMMANDS = { - start: [128], - safe: [131], - full: [132], - passive: [128], - dock: [143], - }; - - modeButtons.forEach((btn) => { - btn.addEventListener('click', () => { - const cmd = btn.dataset.oi; - const bytes = OI_COMMANDS[cmd]; - if (!bytes) return; - const roverId = state.getSelected(); - socket.emit('command', { - roverId, - type: 'raw', - data: { raw: bytesToBase64(bytes) }, - }); - }); - }); - - function bytesToBase64(bytes) { - return btoa(String.fromCharCode(...bytes)); - } -}); diff --git a/server/public/src/services/roverUI.js b/server/public/src/services/roverUI.js deleted file mode 100644 index a30dfaa9..00000000 --- a/server/public/src/services/roverUI.js +++ /dev/null @@ -1,185 +0,0 @@ -registerModule('services/roverUI', (require, exports) => { - const { socket } = require('globals/socket'); - const { formatHex } = require('helpers/formatters'); - const videoPlayer = require('services/videoPlayer'); - const state = require('services/state'); - - const statusEl = document.getElementById('status'); - const roverSelect = document.getElementById('roverSelect'); - const sensorOutput = document.getElementById('sensorOutput'); - const lockBtn = document.getElementById('lockToggle'); - const forceCheckbox = document.getElementById('forceControl'); - const adminControls = document.getElementById('adminControls'); - const modeControls = document.getElementById('modeControls'); - const modeSelect = document.getElementById('modeSelect'); - const activeDriverEl = document.getElementById('activeDriver'); - const currentRoverEl = document.getElementById('currentRover'); - const videoContainer = document.getElementById('videoContainer'); - const driverVideo = document.getElementById('driverVideo'); - const videoStatus = document.getElementById('videoStatus'); - const videoReconnect = document.getElementById('videoReconnect'); - - let roster = []; - let lastSelection = null; - let currentVideoRover = null; - - state.onRoleChange((role) => { - const isAdmin = role === 'admin' || role === 'lockdown'; - if (lockBtn) lockBtn.disabled = !isAdmin; - if (roverSelect) roverSelect.disabled = !isAdmin; - if (adminControls) { - adminControls.style.display = isAdmin ? 'flex' : 'none'; - } - if (modeControls) { - modeControls.style.display = isAdmin ? 'block' : 'none'; - if (modeSelect) modeSelect.disabled = !isAdmin; - } - }); - - socket.on('rovers', (list) => { - roster = list; - roverSelect.innerHTML = ''; - list.forEach((rover) => { - const option = document.createElement('option'); - option.value = rover.id; - option.textContent = `${rover.name}${rover.locked ? ' (locked)' : ''}`; - roverSelect.appendChild(option); - }); - const selected = state.getSelected(); - if ((!selected || !list.find((r) => r.id === selected)) && list.length) { - state.setSelected(list[0].id); - } else if (!list.length) { - state.setSelected(null); - } - renderSelection(true); - }); - - roverSelect.addEventListener('change', () => { - const roverId = roverSelect.value; - const role = state.getRole(); - state.setSelected(roverId); - renderSelection(true); - if (role === 'admin' || role === 'lockdown') { - socket.emit('requestControl', { roverId, force: !!forceCheckbox?.checked }); - } - }); - - socket.on('controlGranted', ({ roverId }) => { - state.setSelected(roverId); - renderSelection(true); - statusEl.textContent = `Driving ${roverId}`; - maybeConnectVideo(true); - }); - - socket.on('sensorFrame', ({ roverId, frame, sensors }) => { - if (roverId !== state.getSelected()) return; - const lines = []; - if (sensors) { - Object.entries(sensors).forEach(([key, value]) => { - lines.push(`${key}: ${typeof value === 'object' ? JSON.stringify(value) : value}`); - }); - } - lines.push('', 'raw:', formatHex(frame?.data)); - sensorOutput.textContent = lines.join('\n'); - }); - - socket.on('activeDriver', ({ roverId, socketId }) => { - if (roverId !== state.getSelected()) return; - if (activeDriverEl) { - activeDriverEl.textContent = `Active driver: ${socketId || 'none'}`; - } - }); - - lockBtn?.addEventListener('click', () => { - const roverId = state.getSelected(); - const rover = roster.find((r) => r.id === roverId); - if (!rover) return; - socket.emit('lockRover', { roverId, locked: !rover.locked }); - }); - - modeSelect?.addEventListener('change', () => { - socket.emit('setMode', { mode: modeSelect.value }); - }); - - socket.on('mode', ({ mode }) => { - if (modeSelect) { - modeSelect.value = mode; - } - }); - - videoReconnect?.addEventListener('click', () => maybeConnectVideo(true)); - - socket.on('connect', () => { - statusEl.textContent = 'Connected'; - }); - socket.on('disconnect', () => { - statusEl.textContent = 'Disconnected'; - }); - - function renderSelection(clearOutput) { - const roverId = state.getSelected(); - if (roverSelect && roverId) { - roverSelect.value = roverId; - } else if (roverSelect && !roverId) { - roverSelect.value = ''; - } - if (currentRoverEl) { - currentRoverEl.textContent = `Active rover: ${roverId || '--'}`; - } - if (sensorOutput && (clearOutput || roverId !== lastSelection)) { - sensorOutput.textContent = roverId ? 'Waiting for sensor data...' : ''; - } - lastSelection = roverId; - maybeConnectVideo(clearOutput); - } - - function maybeConnectVideo(force = false) { - const roverId = state.getSelected(); - if (!roverId) { - currentVideoRover = null; - videoPlayer.stopStream('driver'); - setVideoStatus('No rover selected'); - return; - } - if (!force && roverId === currentVideoRover) { - return; - } - currentVideoRover = roverId; - setVideoStatus('Connecting video…'); - socket.emit('video:request', { roverId }, (resp = {}) => { - if (resp.error) { - setVideoStatus(`Video error: ${resp.error}`); - videoPlayer.stopStream('driver'); - return; - } - const { url, token } = resp; - videoPlayer - .startStream('driver', { - url, - token, - mount: videoContainer, - videoEl: driverVideo, - onStatus: (state, detail) => { - if (state === 'playing') { - setVideoStatus('Video live'); - } else if (state === 'connecting') { - setVideoStatus('Connecting video…'); - } else if (state === 'error') { - setVideoStatus(`Video error: ${detail}`); - } else if (state === 'stopped') { - setVideoStatus('Video stopped'); - } - }, - }) - .catch((err) => { - setVideoStatus(`Video error: ${err.message}`); - }); - }); - } - - function setVideoStatus(message) { - if (videoStatus) { - videoStatus.textContent = message; - } - } -}); diff --git a/server/public/src/services/state.js b/server/public/src/services/state.js deleted file mode 100644 index b1c55bef..00000000 --- a/server/public/src/services/state.js +++ /dev/null @@ -1,34 +0,0 @@ -registerModule('services/state', (require, exports) => { - let selectedRover = null; - let role = 'user'; - const roleListeners = new Set(); - - function setSelected(roverId) { - selectedRover = roverId; - } - - function getSelected() { - return selectedRover; - } - - function setRole(nextRole) { - role = nextRole; - roleListeners.forEach((cb) => cb(role)); - } - - function getRole() { - return role; - } - - function onRoleChange(cb) { - roleListeners.add(cb); - cb(role); - return () => roleListeners.delete(cb); - } - - exports.setSelected = setSelected; - exports.getSelected = getSelected; - exports.setRole = setRole; - exports.getRole = getRole; - exports.onRoleChange = onRoleChange; -}); diff --git a/server/public/src/services/videoPlayer.js b/server/public/src/services/videoPlayer.js deleted file mode 100644 index 80c45232..00000000 --- a/server/public/src/services/videoPlayer.js +++ /dev/null @@ -1,152 +0,0 @@ -registerModule('services/videoPlayer', (require, exports) => { - const players = new Map(); - - class Player { - constructor(id, options = {}) { - this.id = id; - this.options = options; - this.onStatus = options.onStatus || (() => {}); - this.mount = options.mount || null; - this.externalVideo = options.videoEl || null; - this.video = this.externalVideo || this.createVideoElement(); - this.video.muted = true; - this.status('idle'); - } - - createVideoElement() { - const el = document.createElement('video'); - el.autoplay = true; - el.playsInline = true; - el.controls = false; - el.muted = true; - el.style.width = '100%'; - el.style.maxHeight = '360px'; - if (this.mount) { - this.mount.innerHTML = ''; - this.mount.appendChild(el); - } - return el; - } - - attachAutoPlayLoop() { - this.autoPlayTimer = window.setInterval(() => { - if (!this.video) return; - if (!this.video.paused && !this.video.muted) { - clearInterval(this.autoPlayTimer); - this.autoPlayTimer = null; - return; - } - const attempt = () => this.video.play().catch(() => {}); - if (this.video.paused) { - attempt(); - } - if (this.video.muted) { - this.video.muted = false; - attempt(); - } - }, 2500); - } - - status(state, detail) { - this.onStatus(state, detail); - } - - async start(url, token) { - this.stopPeer(); - this.status('connecting'); - this.pc = new RTCPeerConnection(); - this.stream = new MediaStream(); - this.video.srcObject = this.stream; - this.pc.addTransceiver('video', { direction: 'recvonly' }); - this.pc.addTransceiver('audio', { direction: 'recvonly' }); - this.pc.ontrack = (event) => { - const [remoteStream] = event.streams; - if (remoteStream) { - this.video.srcObject = remoteStream; - } else { - this.stream.addTrack(event.track); - } - this.video.play().catch(() => {}); - }; - this.attachAutoPlayLoop(); - - if (!token) { - throw new Error('Missing video session token'); - } - const offer = await this.pc.createOffer(); - await this.pc.setLocalDescription(offer); - const response = await fetch(url, { - method: 'POST', - headers: { - 'Content-Type': 'application/sdp', - Authorization: `Basic ${btoa(`${token}:${token}`)}`, - }, - body: offer.sdp, - }); - if (!response.ok) { - throw new Error(`WHEP HTTP ${response.status}`); - } - const answer = await response.text(); - await this.pc.setRemoteDescription({ type: 'answer', sdp: answer }); - this.status('playing'); - } - - stopPeer() { - if (this.autoPlayTimer) { - clearInterval(this.autoPlayTimer); - this.autoPlayTimer = null; - } - if (this.pc) { - this.pc.getSenders().forEach((sender) => sender.track && sender.track.stop()); - this.pc.getReceivers().forEach((receiver) => receiver.track && receiver.track.stop()); - this.pc.close(); - this.pc = null; - } - if (this.video) { - const tracks = this.video.srcObject?.getTracks() || []; - tracks.forEach((t) => t.stop()); - this.video.pause(); - this.video.srcObject = null; - } - } - - stop() { - this.stopPeer(); - if (!this.externalVideo && this.video && this.video.parentElement) { - this.video.parentElement.removeChild(this.video); - } - this.status('stopped'); - } - } - - async function startStream(id, { url, token, mount, videoEl, onStatus } = {}) { - stopStream(id); - const player = new Player(id, { mount, videoEl, onStatus }); - players.set(id, player); - try { - await player.start(url, token); - return player.video; - } catch (err) { - player.status('error', err.message); - player.stop(); - players.delete(id); - throw err; - } - } - - function stopStream(id) { - const existing = players.get(id); - if (existing) { - existing.stop(); - players.delete(id); - } - } - - function stopAll() { - Array.from(players.keys()).forEach(stopStream); - } - - exports.startStream = startStream; - exports.stopStream = stopStream; - exports.stopAll = stopAll; -}); diff --git a/server/public/vite.svg b/server/public/vite.svg new file mode 100644 index 00000000..e7b8dfb1 --- /dev/null +++ b/server/public/vite.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/server/src/globals/logger.js b/server/src/globals/logger.js index 3f9ffe12..78401109 100644 --- a/server/src/globals/logger.js +++ b/server/src/globals/logger.js @@ -1,8 +1,37 @@ +const sinks = new Set(); + +function notifySinks(level, label, args) { + if (!sinks.size) return; + const entry = { + level, + label: label || null, + args, + message: args.map((value) => { + if (typeof value === 'string') return value; + try { + return JSON.stringify(value); + } catch (err) { + return String(value); + } + }).join(' '), + timestamp: new Date().toISOString(), + }; + sinks.forEach((sink) => { + try { + sink(entry); + } catch (err) { + // avoid recursive logging + console.error(entry.timestamp, '[ERROR]', '[logger]', 'Log sink failed', err); + } + }); +} + function stamp(level, label, args) { const fields = [new Date().toISOString(), `[${level}]`]; if (label) { fields.push(`[${label}]`); } + notifySinks(level, label, args); return [...fields, ...args]; } @@ -14,7 +43,14 @@ function baseLogger(label) { }; } +function registerSink(fn) { + if (typeof fn !== 'function') return () => {}; + sinks.add(fn); + return () => sinks.delete(fn); +} + module.exports = { ...baseLogger(), child: (label) => baseLogger(label), + registerSink, }; diff --git a/server/src/services/assignmentService.js b/server/src/services/assignmentService.js index d7436851..d40798b4 100644 --- a/server/src/services/assignmentService.js +++ b/server/src/services/assignmentService.js @@ -1,3 +1,4 @@ +const EventEmitter = require('events'); const io = require('../globals/io'); const logger = require('../globals/logger').child('assignment'); const { MODES, getMode, modeEvents } = require('./modeManager'); @@ -7,6 +8,7 @@ const roverManager = require('./roverManager'); const socketRefs = new Map(); // socketId -> socket const assignments = new Map(); // socketId -> roverId const waiting = new Set(); // socketIds waiting for placement +const assignmentEvents = new EventEmitter(); io.on('connection', (socket) => { socketRefs.set(socket.id, socket); @@ -64,6 +66,7 @@ function assignSocket(socket) { if (!target) { waiting.add(socket.id); logger.info('No rover available, user waiting', socket.id); + assignmentEvents.emit('update', socket.id); return; } try { @@ -71,9 +74,11 @@ function assignSocket(socket) { assignments.set(socket.id, target.id); waiting.delete(socket.id); logger.info('Assigned user to rover', socket.id, target.id); + assignmentEvents.emit('update', socket.id); } catch (err) { logger.warn('Failed to assign user', err.message); waiting.add(socket.id); + assignmentEvents.emit('update', socket.id); } } @@ -84,6 +89,8 @@ function unassignSocket(socket) { if (roverId) { roverManager.releaseControl(roverId, socket); assignments.delete(socket.id); + logger.info('Unassigned socket from rover', socket.id, roverId); + assignmentEvents.emit('update', socket.id); } } @@ -98,6 +105,7 @@ function reassignFromRover(roverId) { roverManager.releaseControl(rid, socket); assignments.delete(socketId); assignSocket(socket); + assignmentEvents.emit('update', socketId); } } @@ -109,6 +117,7 @@ function reassignWaiting() { } else { waiting.delete(socketId); } + assignmentEvents.emit('update', socketId); } } @@ -116,6 +125,8 @@ function releaseAssignment(socket, roverId) { roverManager.releaseControl(roverId, socket); assignments.delete(socket.id); waiting.add(socket.id); + logger.info('Released assignment back to queue', socket.id, roverId); + assignmentEvents.emit('update', socket.id); } function pickRover() { @@ -133,3 +144,18 @@ function pickRover() { candidates.sort((a, b) => a.drivers.size - b.drivers.size); return candidates[0]; } + +function describeAssignment(socketId) { + const roverId = assignments.get(socketId) || null; + const waitingIndex = waiting.has(socketId) ? Array.from(waiting).indexOf(socketId) : -1; + return { + roverId, + status: roverId ? 'assigned' : waiting.has(socketId) ? 'waiting' : null, + queuePosition: waitingIndex >= 0 ? waitingIndex + 1 : null, + }; +} + +module.exports = { + assignmentEvents, + describeAssignment, +}; diff --git a/server/src/services/authService.js b/server/src/services/authService.js index 98e0677f..552faaad 100644 --- a/server/src/services/authService.js +++ b/server/src/services/authService.js @@ -36,6 +36,7 @@ io.on('connection', (socket) => { const requestedRole = socket.handshake?.query?.role; const initialRole = requestedRole === 'spectator' ? 'spectator' : 'user'; setRole(socket, initialRole); + logger.info('Socket connected with role', socket.id, initialRole); socket.emit('auth:role', { role: initialRole }); socket.on('auth:login', async ({ username, password }, cb = () => {}) => { try { @@ -45,18 +46,27 @@ io.on('connection', (socket) => { setRole(socket, role); socket.emit('auth:role', { role }); clearLockdownTimer(socket); + logger.info('Login success', socket.id, role); cb({ success: true, role: socket.data.role }); } catch (err) { + logger.warn('Login failed', socket.id, err.message); cb({ success: false, error: err.message }); } }); - socket.on('role:set', ({ role }) => { + function handleRoleChange({ role } = {}, cb = () => {}) { if (role === 'spectator' || role === 'user') { setRole(socket, role); socket.emit('auth:role', { role }); + logger.info('Role changed via client request', socket.id, role); + cb({ success: true, role }); + } else { + cb({ error: 'Invalid role' }); } - }); + } + + socket.on('role:set', handleRoleChange); + socket.on('session:setRole', handleRoleChange); }); module.exports = { diff --git a/server/src/services/commandService.js b/server/src/services/commandService.js index 7988d7c8..5db67e35 100644 --- a/server/src/services/commandService.js +++ b/server/src/services/commandService.js @@ -1,6 +1,7 @@ const { v4: uuidv4 } = require('uuid'); const io = require('../globals/io'); const roverManager = require('./roverManager'); +const logger = require('../globals/logger').child('commandService'); const pendingCommands = new Map(); // id -> { roverId } @@ -13,6 +14,7 @@ function issueCommand(roverId, payload) { const message = { ...payload, id }; record.ws.send(JSON.stringify(message)); pendingCommands.set(id, { roverId, ts: Date.now(), type: payload.type }); + logger.info('Issued command', roverId, payload.type, id); return id; } @@ -20,6 +22,7 @@ function handleAck(msg) { const pending = pendingCommands.get(msg.id); if (!pending) return; pendingCommands.delete(msg.id); + logger.info('Command acknowledged', pending.roverId, pending.type, msg.status); io.emit('commandAck', { roverId: pending.roverId, id: msg.id, @@ -34,7 +37,7 @@ module.exports = { }; io.on('connection', (socket) => { - socket.on('command', ({ roverId, type, data } = {}, cb = () => {}) => { + function handleCommand({ roverId, type, data } = {}, cb = () => {}) { try { if (!roverId) { throw new Error('roverId required'); @@ -44,9 +47,14 @@ io.on('connection', (socket) => { } const payload = data ? { ...data } : {}; const id = issueCommand(roverId, { type, ...payload }); + logger.info('Queued command', socket.id, roverId, type); cb({ id }); } catch (err) { + logger.warn('Command rejected', socket.id, err.message); cb({ error: err.message }); } - }); + } + + socket.on('command', handleCommand); + socket.on('command:issue', handleCommand); }); diff --git a/server/src/services/logStreamService.js b/server/src/services/logStreamService.js new file mode 100644 index 00000000..4dc07a23 --- /dev/null +++ b/server/src/services/logStreamService.js @@ -0,0 +1,40 @@ +const { v4: uuidv4 } = require('uuid'); +const io = require('../globals/io'); +const loggerRoot = require('../globals/logger'); +const logger = loggerRoot.child('logStream'); + +const MAX_HISTORY = 200; +const history = []; + +function pushEntry(entry) { + history.push(entry); + if (history.length > MAX_HISTORY) { + history.shift(); + } +} + +function broadcast(entry) { + io.emit('log:entry', entry); +} + +function hydrateSocket(socket) { + if (!socket) return; + socket.emit('log:init', history); +} + +loggerRoot.registerSink(({ level, label, message, timestamp }) => { + const entry = { + id: uuidv4(), + level, + label, + message, + timestamp, + }; + pushEntry(entry); + broadcast(entry); +}); + +io.on('connection', (socket) => { + logger.info('Hydrating log history for', socket.id); + hydrateSocket(socket); +}); diff --git a/server/src/services/roverManager.js b/server/src/services/roverManager.js index fff5a215..70f65c58 100644 --- a/server/src/services/roverManager.js +++ b/server/src/services/roverManager.js @@ -212,43 +212,72 @@ io.on('connection', (socket) => { enableSpectator(socket); } - socket.on('requestControl', ({ roverId, force } = {}) => { + function handleRequestControl({ roverId, force } = {}, cb = () => {}) { try { const targetId = roverId || Array.from(rovers.keys())[0]; if (!targetId) { throw new Error('No rovers available'); } + logger.info('Request control', socket.id, targetId, { force }); requestControl(targetId, socket, { force: Boolean(force) }); socket.emit('controlGranted', { roverId: targetId }); + cb({ success: true, roverId: targetId }); } catch (err) { + logger.warn('Request control failed', socket.id, err.message); sendAlert({ color: COLORS.warn, title: 'Control denied', message: err.message }); + cb({ error: err.message }); } - }); + } - socket.on('releaseControl', ({ roverId }) => { - if (!roverId) return; - releaseControl(roverId, socket); - }); - - socket.on('lockRover', ({ roverId, locked }) => { - if (!isAdmin(socket)) return; - try { - lockRover(roverId, locked); - } catch (err) { - sendAlert({ color: COLORS.error, title: 'Lock failed', message: err.message }); - } - }); - - socket.on('subscribeAll', () => { - if (socket.data?.role !== 'spectator') { + function handleReleaseControl({ roverId } = {}, cb = () => {}) { + if (!roverId) { + cb({ error: 'roverId required' }); return; } + logger.info('Release control', socket.id, roverId); + releaseControl(roverId, socket); + cb({ success: true, roverId }); + } + + function handleLockToggle({ roverId, locked } = {}, cb = () => {}) { + if (!isAdmin(socket)) { + cb({ error: 'Not authorized' }); + return; + } + try { + lockRover(roverId, locked); + logger.info('Lock state changed', roverId, locked); + cb({ success: true }); + } catch (err) { + logger.warn('Lock change failed', roverId, err.message); + sendAlert({ color: COLORS.error, title: 'Lock failed', message: err.message }); + cb({ error: err.message }); + } + } + + function handleSubscribeAll(_, cb = () => {}) { + if (socket.data?.role !== 'spectator') { + cb({ error: 'Spectator role required' }); + return; + } + logger.info('Spectator subscribing to all rovers', socket.id); for (const record of rovers.values()) { socket.join(record.room); } - }); + cb({ success: true }); + } + + socket.on('requestControl', handleRequestControl); + socket.on('session:requestControl', handleRequestControl); + socket.on('releaseControl', handleReleaseControl); + socket.on('session:releaseControl', handleReleaseControl); + socket.on('lockRover', handleLockToggle); + socket.on('session:lockRover', handleLockToggle); + socket.on('subscribeAll', handleSubscribeAll); + socket.on('session:subscribeAll', handleSubscribeAll); socket.on('disconnect', () => { + logger.info('Socket disconnected', socket.id); removeSocket(socket); }); }); diff --git a/server/src/services/sessionService.js b/server/src/services/sessionService.js new file mode 100644 index 00000000..db8568e6 --- /dev/null +++ b/server/src/services/sessionService.js @@ -0,0 +1,68 @@ +const io = require('../globals/io'); +const logger = require('../globals/logger').child('sessionService'); +const { getRole, roleEvents } = require('./roleService'); +const { getMode, modeEvents } = require('./modeManager'); +const roverManager = require('./roverManager'); +const { managerEvents } = roverManager; +const assignmentService = require('./assignmentService'); + +function buildSession(socket) { + return { + role: getRole(socket), + mode: getMode(), + roster: roverManager.getRoster(), + assignment: assignmentService.describeAssignment(socket?.id || ''), + }; +} + +function syncSocket(socket) { + if (!socket) return; + const payload = buildSession(socket); + logger.info('Syncing session', socket.id, payload.role, payload.assignment); + socket.emit('session:sync', payload); +} + +function syncAll() { + logger.info('Broadcasting session sync to all sockets'); + io.sockets.sockets.forEach((socket) => syncSocket(socket)); +} + +io.on('connection', (socket) => { + logger.info('New socket connected', socket.id); + syncSocket(socket); +}); + +roleEvents.on('change', ({ socket }) => { + if (!socket) return; + logger.info('Role changed; syncing session', socket.id); + syncSocket(socket); +}); + +assignmentService.assignmentEvents.on('update', (socketId) => { + const socket = io.sockets.sockets.get(socketId); + if (socket) { + logger.info('Assignment update; syncing session', socketId); + syncSocket(socket); + } +}); + +modeEvents.on('change', () => { + logger.info('Mode change detected; syncing all clients'); + syncAll(); +}); + +managerEvents.on('rover', () => { + logger.info('Rover roster change; syncing all clients'); + syncAll(); +}); + +managerEvents.on('lock', ({ roverId, locked }) => { + logger.info('Rover lock change', roverId, locked); + syncAll(); +}); + +module.exports = { + buildSession, + syncSocket, + syncAll, +}; diff --git a/webui/.gitignore b/webui/.gitignore new file mode 100644 index 00000000..a547bf36 --- /dev/null +++ b/webui/.gitignore @@ -0,0 +1,24 @@ +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* +pnpm-debug.log* +lerna-debug.log* + +node_modules +dist +dist-ssr +*.local + +# Editor directories and files +.vscode/* +!.vscode/extensions.json +.idea +.DS_Store +*.suo +*.ntvs* +*.njsproj +*.sln +*.sw? diff --git a/webui/README.md b/webui/README.md new file mode 100644 index 00000000..18bc70eb --- /dev/null +++ b/webui/README.md @@ -0,0 +1,16 @@ +# React + Vite + +This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules. + +Currently, two official plugins are available: + +- [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react) uses [Babel](https://babeljs.io/) (or [oxc](https://oxc.rs) when used in [rolldown-vite](https://vite.dev/guide/rolldown)) for Fast Refresh +- [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react-swc) uses [SWC](https://swc.rs/) for Fast Refresh + +## React Compiler + +The React Compiler is not enabled on this template because of its impact on dev & build performances. To add it, see [this documentation](https://react.dev/learn/react-compiler/installation). + +## Expanding the ESLint configuration + +If you are developing a production application, we recommend using TypeScript with type-aware lint rules enabled. Check out the [TS template](https://github.com/vitejs/vite/tree/main/packages/create-vite/template-react-ts) for information on how to integrate TypeScript and [`typescript-eslint`](https://typescript-eslint.io) in your project. diff --git a/webui/eslint.config.js b/webui/eslint.config.js new file mode 100644 index 00000000..4fa125da --- /dev/null +++ b/webui/eslint.config.js @@ -0,0 +1,29 @@ +import js from '@eslint/js' +import globals from 'globals' +import reactHooks from 'eslint-plugin-react-hooks' +import reactRefresh from 'eslint-plugin-react-refresh' +import { defineConfig, globalIgnores } from 'eslint/config' + +export default defineConfig([ + globalIgnores(['dist']), + { + files: ['**/*.{js,jsx}'], + extends: [ + js.configs.recommended, + reactHooks.configs.flat.recommended, + reactRefresh.configs.vite, + ], + languageOptions: { + ecmaVersion: 2020, + globals: globals.browser, + parserOptions: { + ecmaVersion: 'latest', + ecmaFeatures: { jsx: true }, + sourceType: 'module', + }, + }, + rules: { + 'no-unused-vars': ['error', { varsIgnorePattern: '^[A-Z_]' }], + }, + }, +]) diff --git a/webui/index.html b/webui/index.html new file mode 100644 index 00000000..c0b1721b --- /dev/null +++ b/webui/index.html @@ -0,0 +1,13 @@ + + + + + + + webui + + +
+ + + diff --git a/webui/package-lock.json b/webui/package-lock.json new file mode 100644 index 00000000..738ad02a --- /dev/null +++ b/webui/package-lock.json @@ -0,0 +1,4177 @@ +{ + "name": "webui", + "version": "0.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "webui", + "version": "0.0.0", + "dependencies": { + "react": "^19.2.0", + "react-dom": "^19.2.0" + }, + "devDependencies": { + "@eslint/js": "^9.39.1", + "@types/react": "^19.2.2", + "@types/react-dom": "^19.2.2", + "@vitejs/plugin-react": "^5.1.0", + "autoprefixer": "^10.4.22", + "eslint": "^9.39.1", + "eslint-plugin-react-hooks": "^7.0.1", + "eslint-plugin-react-refresh": "^0.4.24", + "globals": "^16.5.0", + "postcss": "^8.5.6", + "tailwindcss": "^3.4.14", + "vite": "^7.2.2" + } + }, + "node_modules/@alloc/quick-lru": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz", + "integrity": "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz", + "integrity": "sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.27.1", + "js-tokens": "^4.0.0", + "picocolors": "^1.1.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.28.5.tgz", + "integrity": "sha512-6uFXyCayocRbqhZOB+6XcuZbkMNimwfVGFji8CTZnCzOHVGvDqzvitu1re2AU5LROliz7eQPhB8CpAMvnx9EjA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.28.5.tgz", + "integrity": "sha512-e7jT4DxYvIDLk1ZHmU/m/mB19rex9sv0c2ftBtjSBv+kVM/902eh0fINUzD7UwLLNR+jU585GxUJ8/EBfAM5fw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.27.1", + "@babel/generator": "^7.28.5", + "@babel/helper-compilation-targets": "^7.27.2", + "@babel/helper-module-transforms": "^7.28.3", + "@babel/helpers": "^7.28.4", + "@babel/parser": "^7.28.5", + "@babel/template": "^7.27.2", + "@babel/traverse": "^7.28.5", + "@babel/types": "^7.28.5", + "@jridgewell/remapping": "^2.3.5", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/generator": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.28.5.tgz", + "integrity": "sha512-3EwLFhZ38J4VyIP6WNtt2kUdW9dokXA9Cr4IVIFHuCpZ3H8/YFOl5JjZHisrn1fATPBmKKqXzDFvh9fUwHz6CQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.28.5", + "@babel/types": "^7.28.5", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.27.2", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.27.2.tgz", + "integrity": "sha512-2+1thGUUWWjLTYTHZWK1n8Yga0ijBz1XAhUXcKy81rd5g6yh7hGqMp45v7cadSbEHc9G3OTv45SyneRN3ps4DQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.27.2", + "@babel/helper-validator-option": "^7.27.1", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-globals": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz", + "integrity": "sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.27.1.tgz", + "integrity": "sha512-0gSFWUPNXNopqtIPQvlD5WgXYI5GY2kP2cCvoT8kczjbfcfuIljTbcWrulD1CIPIX2gt1wghbDy08yE1p+/r3w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.27.1", + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.28.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.28.3.tgz", + "integrity": "sha512-gytXUbs8k2sXS9PnQptz5o0QnpLL51SwASIORY6XaBKF88nsOT0Zw9szLqlSGQDP/4TljBAD5y98p2U1fqkdsw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.27.1", + "@babel/helper-validator-identifier": "^7.27.1", + "@babel/traverse": "^7.28.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.27.1.tgz", + "integrity": "sha512-1gn1Up5YXka3YYAHGKpbideQ5Yjf1tDa9qYcgysz+cNCXukyLl6DjPXhD3VRwSb8c0J9tA4b2+rHEZtc6R0tlw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", + "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz", + "integrity": "sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz", + "integrity": "sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.28.4", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.28.4.tgz", + "integrity": "sha512-HFN59MmQXGHVyYadKLVumYsA9dBFun/ldYxipEjzA4196jpLZd8UjEEBLkbEkvfYreDqJhZxYAWFPtrfhNpj4w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/template": "^7.27.2", + "@babel/types": "^7.28.4" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.28.5.tgz", + "integrity": "sha512-KKBU1VGYR7ORr3At5HAtUQ+TV3SzRCXmA/8OdDZiLDBIZxVyzXuztPjfLd3BV1PRAQGCMWWSHYhL0F8d5uHBDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.28.5" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-self": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.27.1.tgz", + "integrity": "sha512-6UzkCs+ejGdZ5mFFC/OCUrv028ab2fp1znZmCZjAOBKiBK2jXD1O+BPSfX8X2qjJ75fZBMSnQn3Rq2mrBJK2mw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-source": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.27.1.tgz", + "integrity": "sha512-zbwoTsBruTeKB9hSq73ha66iFeJHuaFkUbwvqElnygoNbj/jHRsSeokowZFN3CZ64IvEqcmmkVe89OPXc7ldAw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/template": { + "version": "7.27.2", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.2.tgz", + "integrity": "sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.27.1", + "@babel/parser": "^7.27.2", + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.28.5.tgz", + "integrity": "sha512-TCCj4t55U90khlYkVV/0TfkJkAkUg3jZFA3Neb7unZT8CPok7iiRfaX0F+WnqWqt7OxhOn0uBKXCw4lbL8W0aQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.27.1", + "@babel/generator": "^7.28.5", + "@babel/helper-globals": "^7.28.0", + "@babel/parser": "^7.28.5", + "@babel/template": "^7.27.2", + "@babel/types": "^7.28.5", + "debug": "^4.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.5.tgz", + "integrity": "sha512-qQ5m48eI/MFLQ5PxQj4PFaprjyCTLI37ElWMmNs0K8Lk3dVeOdNpB3ks8jc7yM5CDmVC73eMVk/trk3fgmrUpA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.28.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.12.tgz", + "integrity": "sha512-Hhmwd6CInZ3dwpuGTF8fJG6yoWmsToE+vYgD4nytZVxcu1ulHpUQRAB1UJ8+N1Am3Mz4+xOByoQoSZf4D+CpkA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.12.tgz", + "integrity": "sha512-VJ+sKvNA/GE7Ccacc9Cha7bpS8nyzVv0jdVgwNDaR4gDMC/2TTRc33Ip8qrNYUcpkOHUT5OZ0bUcNNVZQ9RLlg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.12.tgz", + "integrity": "sha512-6AAmLG7zwD1Z159jCKPvAxZd4y/VTO0VkprYy+3N2FtJ8+BQWFXU+OxARIwA46c5tdD9SsKGZ/1ocqBS/gAKHg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.12.tgz", + "integrity": "sha512-5jbb+2hhDHx5phYR2By8GTWEzn6I9UqR11Kwf22iKbNpYrsmRB18aX/9ivc5cabcUiAT/wM+YIZ6SG9QO6a8kg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.12.tgz", + "integrity": "sha512-N3zl+lxHCifgIlcMUP5016ESkeQjLj/959RxxNYIthIg+CQHInujFuXeWbWMgnTo4cp5XVHqFPmpyu9J65C1Yg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.12.tgz", + "integrity": "sha512-HQ9ka4Kx21qHXwtlTUVbKJOAnmG1ipXhdWTmNXiPzPfWKpXqASVcWdnf2bnL73wgjNrFXAa3yYvBSd9pzfEIpA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.12.tgz", + "integrity": "sha512-gA0Bx759+7Jve03K1S0vkOu5Lg/85dou3EseOGUes8flVOGxbhDDh/iZaoek11Y8mtyKPGF3vP8XhnkDEAmzeg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.12.tgz", + "integrity": "sha512-TGbO26Yw2xsHzxtbVFGEXBFH0FRAP7gtcPE7P5yP7wGy7cXK2oO7RyOhL5NLiqTlBh47XhmIUXuGciXEqYFfBQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.12.tgz", + "integrity": "sha512-lPDGyC1JPDou8kGcywY0YILzWlhhnRjdof3UlcoqYmS9El818LLfJJc3PXXgZHrHCAKs/Z2SeZtDJr5MrkxtOw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.12.tgz", + "integrity": "sha512-8bwX7a8FghIgrupcxb4aUmYDLp8pX06rGh5HqDT7bB+8Rdells6mHvrFHHW2JAOPZUbnjUpKTLg6ECyzvas2AQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.12.tgz", + "integrity": "sha512-0y9KrdVnbMM2/vG8KfU0byhUN+EFCny9+8g202gYqSSVMonbsCfLjUO+rCci7pM0WBEtz+oK/PIwHkzxkyharA==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.12.tgz", + "integrity": "sha512-h///Lr5a9rib/v1GGqXVGzjL4TMvVTv+s1DPoxQdz7l/AYv6LDSxdIwzxkrPW438oUXiDtwM10o9PmwS/6Z0Ng==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.12.tgz", + "integrity": "sha512-iyRrM1Pzy9GFMDLsXn1iHUm18nhKnNMWscjmp4+hpafcZjrr2WbT//d20xaGljXDBYHqRcl8HnxbX6uaA/eGVw==", + "cpu": [ + "mips64el" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.12.tgz", + "integrity": "sha512-9meM/lRXxMi5PSUqEXRCtVjEZBGwB7P/D4yT8UG/mwIdze2aV4Vo6U5gD3+RsoHXKkHCfSxZKzmDssVlRj1QQA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.12.tgz", + "integrity": "sha512-Zr7KR4hgKUpWAwb1f3o5ygT04MzqVrGEGXGLnj15YQDJErYu/BGg+wmFlIDOdJp0PmB0lLvxFIOXZgFRrdjR0w==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.12.tgz", + "integrity": "sha512-MsKncOcgTNvdtiISc/jZs/Zf8d0cl/t3gYWX8J9ubBnVOwlk65UIEEvgBORTiljloIWnBzLs4qhzPkJcitIzIg==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.12.tgz", + "integrity": "sha512-uqZMTLr/zR/ed4jIGnwSLkaHmPjOjJvnm6TVVitAa08SLS9Z0VM8wIRx7gWbJB5/J54YuIMInDquWyYvQLZkgw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/netbsd-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.12.tgz", + "integrity": "sha512-xXwcTq4GhRM7J9A8Gv5boanHhRa/Q9KLVmcyXHCTaM4wKfIpWkdXiMog/KsnxzJ0A1+nD+zoecuzqPmCRyBGjg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.12.tgz", + "integrity": "sha512-Ld5pTlzPy3YwGec4OuHh1aCVCRvOXdH8DgRjfDy/oumVovmuSzWfnSJg+VtakB9Cm0gxNO9BzWkj6mtO1FMXkQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openbsd-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.12.tgz", + "integrity": "sha512-fF96T6KsBo/pkQI950FARU9apGNTSlZGsv1jZBAlcLL1MLjLNIWPBkj5NlSz8aAzYKg+eNqknrUJ24QBybeR5A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.12.tgz", + "integrity": "sha512-MZyXUkZHjQxUvzK7rN8DJ3SRmrVrke8ZyRusHlP+kuwqTcfWLyqMOE3sScPPyeIXN/mDJIfGXvcMqCgYKekoQw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openharmony-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.25.12.tgz", + "integrity": "sha512-rm0YWsqUSRrjncSXGA7Zv78Nbnw4XL6/dzr20cyrQf7ZmRcsovpcRBdhD43Nuk3y7XIoW2OxMVvwuRvk9XdASg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.12.tgz", + "integrity": "sha512-3wGSCDyuTHQUzt0nV7bocDy72r2lI33QL3gkDNGkod22EsYl04sMf0qLb8luNKTOmgF/eDEDP5BFNwoBKH441w==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.12.tgz", + "integrity": "sha512-rMmLrur64A7+DKlnSuwqUdRKyd3UE7oPJZmnljqEptesKM8wx9J8gx5u0+9Pq0fQQW8vqeKebwNXdfOyP+8Bsg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.12.tgz", + "integrity": "sha512-HkqnmmBoCbCwxUKKNPBixiWDGCpQGVsrQfJoVGYLPT41XWF8lHuE5N6WhVia2n4o5QK5M4tYr21827fNhi4byQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.12.tgz", + "integrity": "sha512-alJC0uCZpTFrSL0CCDjcgleBXPnCrEAhTBILpeAp7M/OFgoqtAetfBzX0xM00MUsVVPpVjlPuMbREqnZCXaTnA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.9.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.9.0.tgz", + "integrity": "sha512-ayVFHdtZ+hsq1t2Dy24wCmGXGe4q9Gu3smhLYALJrr473ZH27MsnSL+LKUlimp4BWJqMDMLmPpx/Q9R3OAlL4g==", + "dev": true, + "license": "MIT", + "dependencies": { + "eslint-visitor-keys": "^3.4.3" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.12.2", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.2.tgz", + "integrity": "sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/config-array": { + "version": "0.21.1", + "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.21.1.tgz", + "integrity": "sha512-aw1gNayWpdI/jSYVgzN5pL0cfzU02GT3NBpeT/DXbx1/1x7ZKxFPd9bwrzygx/qiwIQiJ1sw/zD8qY/kRvlGHA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@eslint/object-schema": "^2.1.7", + "debug": "^4.3.1", + "minimatch": "^3.1.2" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/config-helpers": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.4.2.tgz", + "integrity": "sha512-gBrxN88gOIf3R7ja5K9slwNayVcZgK6SOUORm2uBzTeIEfeVaIhOpCtTox3P6R7o2jLFwLFTLnC7kU/RGcYEgw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@eslint/core": "^0.17.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/core": { + "version": "0.17.0", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.17.0.tgz", + "integrity": "sha512-yL/sLrpmtDaFEiUj1osRP4TI2MDz1AddJL+jZ7KSqvBuliN4xqYY54IfdN8qD8Toa6g1iloph1fxQNkjOxrrpQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@types/json-schema": "^7.0.15" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.1.tgz", + "integrity": "sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^10.0.1", + "globals": "^14.0.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/eslintrc/node_modules/globals": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz", + "integrity": "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@eslint/js": { + "version": "9.39.1", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.39.1.tgz", + "integrity": "sha512-S26Stp4zCy88tH94QbBv3XCuzRQiZ9yXofEILmglYTh/Ug/a9/umqvgFtYBAo3Lp0nsI/5/qH1CCrbdK3AP1Tw==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://eslint.org/donate" + } + }, + "node_modules/@eslint/object-schema": { + "version": "2.1.7", + "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.7.tgz", + "integrity": "sha512-VtAOaymWVfZcmZbp6E2mympDIHvyjXs/12LqWYjVw6qjrfF+VK+fyG33kChz3nnK+SU5/NeHOqrTEHS8sXO3OA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/plugin-kit": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.4.1.tgz", + "integrity": "sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@eslint/core": "^0.17.0", + "levn": "^0.4.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@humanfs/core": { + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz", + "integrity": "sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanfs/node": { + "version": "0.16.7", + "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.7.tgz", + "integrity": "sha512-/zUx+yOsIrG4Y43Eh2peDeKCxlRt/gET6aHfaKpuq267qXdYDFViVHfMaLyygZOnl0kGWxFIgsBy8QFuTLUXEQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@humanfs/core": "^0.19.1", + "@humanwhocodes/retry": "^0.4.0" + }, + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/retry": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.3.tgz", + "integrity": "sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=18.18" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "dev": true, + "license": "ISC", + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.13", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz", + "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.0", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "node_modules/@jridgewell/remapping": { + "version": "2.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz", + "integrity": "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", + "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==", + "dev": true, + "license": "MIT" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.31", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz", + "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "dev": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/@rolldown/pluginutils": { + "version": "1.0.0-beta.47", + "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-beta.47.tgz", + "integrity": "sha512-8QagwMH3kNCuzD8EWL8R2YPW5e4OrHNSAHRFDdmFqEwEaD/KcNKjVoumo+gP2vW5eKB2UPbM6vTYiGZX0ixLnw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.53.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.53.2.tgz", + "integrity": "sha512-yDPzwsgiFO26RJA4nZo8I+xqzh7sJTZIWQOxn+/XOdPE31lAvLIYCKqjV+lNH/vxE2L2iH3plKxDCRK6i+CwhA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.53.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.53.2.tgz", + "integrity": "sha512-k8FontTxIE7b0/OGKeSN5B6j25EuppBcWM33Z19JoVT7UTXFSo3D9CdU39wGTeb29NO3XxpMNauh09B+Ibw+9g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.53.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.53.2.tgz", + "integrity": "sha512-A6s4gJpomNBtJ2yioj8bflM2oogDwzUiMl2yNJ2v9E7++sHrSrsQ29fOfn5DM/iCzpWcebNYEdXpaK4tr2RhfQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.53.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.53.2.tgz", + "integrity": "sha512-e6XqVmXlHrBlG56obu9gDRPW3O3hLxpwHpLsBJvuI8qqnsrtSZ9ERoWUXtPOkY8c78WghyPHZdmPhHLWNdAGEw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-freebsd-arm64": { + "version": "4.53.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.53.2.tgz", + "integrity": "sha512-v0E9lJW8VsrwPux5Qe5CwmH/CF/2mQs6xU1MF3nmUxmZUCHazCjLgYvToOk+YuuUqLQBio1qkkREhxhc656ViA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-freebsd-x64": { + "version": "4.53.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.53.2.tgz", + "integrity": "sha512-ClAmAPx3ZCHtp6ysl4XEhWU69GUB1D+s7G9YjHGhIGCSrsg00nEGRRZHmINYxkdoJehde8VIsDC5t9C0gb6yqA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.53.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.53.2.tgz", + "integrity": "sha512-EPlb95nUsz6Dd9Qy13fI5kUPXNSljaG9FiJ4YUGU1O/Q77i5DYFW5KR8g1OzTcdZUqQQ1KdDqsTohdFVwCwjqg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm-musleabihf": { + "version": "4.53.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.53.2.tgz", + "integrity": "sha512-BOmnVW+khAUX+YZvNfa0tGTEMVVEerOxN0pDk2E6N6DsEIa2Ctj48FOMfNDdrwinocKaC7YXUZ1pHlKpnkja/Q==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.53.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.53.2.tgz", + "integrity": "sha512-Xt2byDZ+6OVNuREgBXr4+CZDJtrVso5woFtpKdGPhpTPHcNG7D8YXeQzpNbFRxzTVqJf7kvPMCub/pcGUWgBjA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.53.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.53.2.tgz", + "integrity": "sha512-+LdZSldy/I9N8+klim/Y1HsKbJ3BbInHav5qE9Iy77dtHC/pibw1SR/fXlWyAk0ThnpRKoODwnAuSjqxFRDHUQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-loong64-gnu": { + "version": "4.53.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-gnu/-/rollup-linux-loong64-gnu-4.53.2.tgz", + "integrity": "sha512-8ms8sjmyc1jWJS6WdNSA23rEfdjWB30LH8Wqj0Cqvv7qSHnvw6kgMMXRdop6hkmGPlyYBdRPkjJnj3KCUHV/uQ==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-ppc64-gnu": { + "version": "4.53.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.53.2.tgz", + "integrity": "sha512-3HRQLUQbpBDMmzoxPJYd3W6vrVHOo2cVW8RUo87Xz0JPJcBLBr5kZ1pGcQAhdZgX9VV7NbGNipah1omKKe23/g==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.53.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.53.2.tgz", + "integrity": "sha512-fMjKi+ojnmIvhk34gZP94vjogXNNUKMEYs+EDaB/5TG/wUkoeua7p7VCHnE6T2Tx+iaghAqQX8teQzcvrYpaQA==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-musl": { + "version": "4.53.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.53.2.tgz", + "integrity": "sha512-XuGFGU+VwUUV5kLvoAdi0Wz5Xbh2SrjIxCtZj6Wq8MDp4bflb/+ThZsVxokM7n0pcbkEr2h5/pzqzDYI7cCgLQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-s390x-gnu": { + "version": "4.53.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.53.2.tgz", + "integrity": "sha512-w6yjZF0P+NGzWR3AXWX9zc0DNEGdtvykB03uhonSHMRa+oWA6novflo2WaJr6JZakG2ucsyb+rvhrKac6NIy+w==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.53.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.53.2.tgz", + "integrity": "sha512-yo8d6tdfdeBArzC7T/PnHd7OypfI9cbuZzPnzLJIyKYFhAQ8SvlkKtKBMbXDxe1h03Rcr7u++nFS7tqXz87Gtw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.53.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.53.2.tgz", + "integrity": "sha512-ah59c1YkCxKExPP8O9PwOvs+XRLKwh/mV+3YdKqQ5AMQ0r4M4ZDuOrpWkUaqO7fzAHdINzV9tEVu8vNw48z0lA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-openharmony-arm64": { + "version": "4.53.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.53.2.tgz", + "integrity": "sha512-4VEd19Wmhr+Zy7hbUsFZ6YXEiP48hE//KPLCSVNY5RMGX2/7HZ+QkN55a3atM1C/BZCGIgqN+xrVgtdak2S9+A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ] + }, + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.53.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.53.2.tgz", + "integrity": "sha512-IlbHFYc/pQCgew/d5fslcy1KEaYVCJ44G8pajugd8VoOEI8ODhtb/j8XMhLpwHCMB3yk2J07ctup10gpw2nyMA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.53.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.53.2.tgz", + "integrity": "sha512-lNlPEGgdUfSzdCWU176ku/dQRnA7W+Gp8d+cWv73jYrb8uT7HTVVxq62DUYxjbaByuf1Yk0RIIAbDzp+CnOTFg==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-gnu": { + "version": "4.53.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-gnu/-/rollup-win32-x64-gnu-4.53.2.tgz", + "integrity": "sha512-S6YojNVrHybQis2lYov1sd+uj7K0Q05NxHcGktuMMdIQ2VixGwAfbJ23NnlvvVV1bdpR2m5MsNBViHJKcA4ADw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.53.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.53.2.tgz", + "integrity": "sha512-k+/Rkcyx//P6fetPoLMb8pBeqJBNGx81uuf7iljX9++yNBVRDQgD04L+SVXmXmh5ZP4/WOp4mWF0kmi06PW2tA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@types/babel__core": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", + "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.27.0.tgz", + "integrity": "sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__template": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", + "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.28.0.tgz", + "integrity": "sha512-8PvcXf70gTDZBgt9ptxJ8elBeBjcLOAcOtoO/mPJjtji1+CdGbHgm77om1GrsPxsiE+uXIpNSK64UYaIwQXd4Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.28.2" + } + }, + "node_modules/@types/estree": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz", + "integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/react": { + "version": "19.2.5", + "resolved": "https://registry.npmjs.org/@types/react/-/react-19.2.5.tgz", + "integrity": "sha512-keKxkZMqnDicuvFoJbzrhbtdLSPhj/rZThDlKWCDbgXmUg0rEUFtRssDXKYmtXluZlIqiC5VqkCgRwzuyLHKHw==", + "dev": true, + "license": "MIT", + "dependencies": { + "csstype": "^3.0.2" + } + }, + "node_modules/@types/react-dom": { + "version": "19.2.3", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-19.2.3.tgz", + "integrity": "sha512-jp2L/eY6fn+KgVVQAOqYItbF0VY/YApe5Mz2F0aykSO8gx31bYCZyvSeYxCHKvzHG5eZjc+zyaS5BrBWya2+kQ==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "@types/react": "^19.2.0" + } + }, + "node_modules/@vitejs/plugin-react": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-5.1.1.tgz", + "integrity": "sha512-WQfkSw0QbQ5aJ2CHYw23ZGkqnRwqKHD/KYsMeTkZzPT4Jcf0DcBxBtwMJxnu6E7oxw5+JC6ZAiePgh28uJ1HBA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.28.5", + "@babel/plugin-transform-react-jsx-self": "^7.27.1", + "@babel/plugin-transform-react-jsx-source": "^7.27.1", + "@rolldown/pluginutils": "1.0.0-beta.47", + "@types/babel__core": "^7.20.5", + "react-refresh": "^0.18.0" + }, + "engines": { + "node": "^20.19.0 || >=22.12.0" + }, + "peerDependencies": { + "vite": "^4.2.0 || ^5.0.0 || ^6.0.0 || ^7.0.0" + } + }, + "node_modules/acorn": { + "version": "8.15.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz", + "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", + "dev": true, + "license": "MIT", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ansi-regex": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.2.2.tgz", + "integrity": "sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", + "dev": true, + "license": "MIT" + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "license": "ISC", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/anymatch/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/arg": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", + "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==", + "dev": true, + "license": "MIT" + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true, + "license": "Python-2.0" + }, + "node_modules/autoprefixer": { + "version": "10.4.22", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.22.tgz", + "integrity": "sha512-ARe0v/t9gO28Bznv6GgqARmVqcWOV3mfgUPn9becPHMiD3o9BwlRgaeccZnwTpZ7Zwqrm+c1sUSsMxIzQzc8Xg==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "browserslist": "^4.27.0", + "caniuse-lite": "^1.0.30001754", + "fraction.js": "^5.3.4", + "normalize-range": "^0.1.2", + "picocolors": "^1.1.1", + "postcss-value-parser": "^4.2.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true, + "license": "MIT" + }, + "node_modules/baseline-browser-mapping": { + "version": "2.8.28", + "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.8.28.tgz", + "integrity": "sha512-gYjt7OIqdM0PcttNYP2aVrr2G0bMALkBaoehD4BuRGjAOtipg0b6wHg1yNL+s5zSnLZZrGHOw4IrND8CD+3oIQ==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "baseline-browser-mapping": "dist/cli.js" + } + }, + "node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "dev": true, + "license": "MIT", + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.28.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.0.tgz", + "integrity": "sha512-tbydkR/CxfMwelN0vwdP/pLkDwyAASZ+VfWm4EOwlB6SWhx1sYnWLqo8N5j0rAzPfzfRaxt0mM/4wPU/Su84RQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "baseline-browser-mapping": "^2.8.25", + "caniuse-lite": "^1.0.30001754", + "electron-to-chromium": "^1.5.249", + "node-releases": "^2.0.27", + "update-browserslist-db": "^1.1.4" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase-css": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", + "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001754", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001754.tgz", + "integrity": "sha512-x6OeBXueoAceOmotzx3PO4Zpt4rzpeIFsSr6AAePTZxSkXiYDUmpypEl7e2+8NCd9bD7bXjqyef8CJYPC1jfxg==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "CC-BY-4.0" + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "dev": true, + "license": "MIT", + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chokidar/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true, + "license": "MIT" + }, + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true, + "license": "MIT" + }, + "node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true, + "license": "MIT", + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/csstype": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.2.0.tgz", + "integrity": "sha512-si++xzRAY9iPp60roQiFta7OFbhrgvcthrhlNAGeQptSY25uJjkfUV8OArC3KLocB8JT8ohz+qgxWCmz8RhjIg==", + "dev": true, + "license": "MIT" + }, + "node_modules/debug": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/didyoumean": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", + "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==", + "dev": true, + "license": "Apache-2.0" + }, + "node_modules/dlv": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", + "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==", + "dev": true, + "license": "MIT" + }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "dev": true, + "license": "MIT" + }, + "node_modules/electron-to-chromium": { + "version": "1.5.253", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.253.tgz", + "integrity": "sha512-O0tpQ/35rrgdiGQ0/OFWhy1itmd9A6TY9uQzlqj3hKSu/aYpe7UIn5d7CU2N9myH6biZiWF3VMZVuup8pw5U9w==", + "dev": true, + "license": "ISC" + }, + "node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true, + "license": "MIT" + }, + "node_modules/esbuild": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.12.tgz", + "integrity": "sha512-bbPBYYrtZbkt6Os6FiTLCTFxvq4tt3JKall1vRwshA3fdVztsLAatFaZobhkBC8/BrPetoa0oksYoKXoG4ryJg==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.25.12", + "@esbuild/android-arm": "0.25.12", + "@esbuild/android-arm64": "0.25.12", + "@esbuild/android-x64": "0.25.12", + "@esbuild/darwin-arm64": "0.25.12", + "@esbuild/darwin-x64": "0.25.12", + "@esbuild/freebsd-arm64": "0.25.12", + "@esbuild/freebsd-x64": "0.25.12", + "@esbuild/linux-arm": "0.25.12", + "@esbuild/linux-arm64": "0.25.12", + "@esbuild/linux-ia32": "0.25.12", + "@esbuild/linux-loong64": "0.25.12", + "@esbuild/linux-mips64el": "0.25.12", + "@esbuild/linux-ppc64": "0.25.12", + "@esbuild/linux-riscv64": "0.25.12", + "@esbuild/linux-s390x": "0.25.12", + "@esbuild/linux-x64": "0.25.12", + "@esbuild/netbsd-arm64": "0.25.12", + "@esbuild/netbsd-x64": "0.25.12", + "@esbuild/openbsd-arm64": "0.25.12", + "@esbuild/openbsd-x64": "0.25.12", + "@esbuild/openharmony-arm64": "0.25.12", + "@esbuild/sunos-x64": "0.25.12", + "@esbuild/win32-arm64": "0.25.12", + "@esbuild/win32-ia32": "0.25.12", + "@esbuild/win32-x64": "0.25.12" + } + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint": { + "version": "9.39.1", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.39.1.tgz", + "integrity": "sha512-BhHmn2yNOFA9H9JmmIVKJmd288g9hrVRDkdoIgRCRuSySRUHH7r/DI6aAXW9T1WwUuY3DFgrcaqB+deURBLR5g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/eslint-utils": "^4.8.0", + "@eslint-community/regexpp": "^4.12.1", + "@eslint/config-array": "^0.21.1", + "@eslint/config-helpers": "^0.4.2", + "@eslint/core": "^0.17.0", + "@eslint/eslintrc": "^3.3.1", + "@eslint/js": "9.39.1", + "@eslint/plugin-kit": "^0.4.1", + "@humanfs/node": "^0.16.6", + "@humanwhocodes/module-importer": "^1.0.1", + "@humanwhocodes/retry": "^0.4.2", + "@types/estree": "^1.0.6", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.6", + "debug": "^4.3.2", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^8.4.0", + "eslint-visitor-keys": "^4.2.1", + "espree": "^10.4.0", + "esquery": "^1.5.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^8.0.0", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://eslint.org/donate" + }, + "peerDependencies": { + "jiti": "*" + }, + "peerDependenciesMeta": { + "jiti": { + "optional": true + } + } + }, + "node_modules/eslint-plugin-react-hooks": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-7.0.1.tgz", + "integrity": "sha512-O0d0m04evaNzEPoSW+59Mezf8Qt0InfgGIBJnpC0h3NH/WjUAR7BIKUfysC6todmtiZ/A0oUVS8Gce0WhBrHsA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.24.4", + "@babel/parser": "^7.24.4", + "hermes-parser": "^0.25.1", + "zod": "^3.25.0 || ^4.0.0", + "zod-validation-error": "^3.5.0 || ^4.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0" + } + }, + "node_modules/eslint-plugin-react-refresh": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-refresh/-/eslint-plugin-react-refresh-0.4.24.tgz", + "integrity": "sha512-nLHIW7TEq3aLrEYWpVaJ1dRgFR+wLDPN8e8FpYAql/bMV2oBEfC37K0gLEGgv9fy66juNShSMV8OkTqzltcG/w==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "eslint": ">=8.40" + } + }, + "node_modules/eslint-scope": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.4.0.tgz", + "integrity": "sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", + "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/espree": { + "version": "10.4.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-10.4.0.tgz", + "integrity": "sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "acorn": "^8.15.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^4.2.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/esquery": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", + "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-glob": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", + "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.8" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-glob/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true, + "license": "MIT" + }, + "node_modules/fastq": { + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz", + "integrity": "sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/fdir": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", + "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, + "node_modules/file-entry-cache": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz", + "integrity": "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "flat-cache": "^4.0.0" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "dev": true, + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "license": "MIT", + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat-cache": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz", + "integrity": "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==", + "dev": true, + "license": "MIT", + "dependencies": { + "flatted": "^3.2.9", + "keyv": "^4.5.4" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/flatted": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz", + "integrity": "sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==", + "dev": true, + "license": "ISC" + }, + "node_modules/foreground-child": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.1.tgz", + "integrity": "sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==", + "dev": true, + "license": "ISC", + "dependencies": { + "cross-spawn": "^7.0.6", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/fraction.js": { + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-5.3.4.tgz", + "integrity": "sha512-1X1NTtiJphryn/uLQz3whtY6jK3fTqoE3ohKs0tT+Ujr1W59oopxmoEh7Lu5p6vBaPbgoM0bzveAW4Qi5RyWDQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": "*" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/rawify" + } + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/glob": { + "version": "10.4.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", + "dev": true, + "license": "ISC", + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/glob/node_modules/brace-expansion": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/glob/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/globals": { + "version": "16.5.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-16.5.0.tgz", + "integrity": "sha512-c/c15i26VrJ4IRt5Z89DnIzCGDn9EcebibhAOjw5ibqEHsE1wLUgkPn9RDmNcUKyU87GeaL633nyJ+pplFR2ZQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/hermes-estree": { + "version": "0.25.1", + "resolved": "https://registry.npmjs.org/hermes-estree/-/hermes-estree-0.25.1.tgz", + "integrity": "sha512-0wUoCcLp+5Ev5pDW2OriHC2MJCbwLwuRx+gAqMTOkGKJJiBCLjtrvy4PWUGn6MIVefecRpzoOZ/UV6iGdOr+Cw==", + "dev": true, + "license": "MIT" + }, + "node_modules/hermes-parser": { + "version": "0.25.1", + "resolved": "https://registry.npmjs.org/hermes-parser/-/hermes-parser-0.25.1.tgz", + "integrity": "sha512-6pEjquH3rqaI6cYAXYPcz9MS4rY6R4ngRgrgfDshRptUZIc3lw0MCIJIGDj9++mfySOuPTHB4nrSW99BCvOPIA==", + "dev": true, + "license": "MIT", + "dependencies": { + "hermes-estree": "0.25.1" + } + }, + "node_modules/ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/import-fresh": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", + "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "license": "MIT", + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-core-module": { + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", + "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", + "dev": true, + "license": "MIT", + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true, + "license": "ISC" + }, + "node_modules/jackspeak": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", + "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, + "node_modules/jiti": { + "version": "1.21.7", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.7.tgz", + "integrity": "sha512-/imKNG4EbWNrVjoNC/1H5/9GFy+tqjGBHCaSsN+P2RnPqjsLmv6UD3Ej+Kj8nBWaRAwyk7kK5ZUc+OEatnTR3A==", + "dev": true, + "license": "MIT", + "bin": { + "jiti": "bin/jiti.js" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/js-yaml": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz", + "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==", + "dev": true, + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsesc": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", + "dev": true, + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true, + "license": "MIT" + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true, + "license": "MIT" + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "license": "MIT", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "dev": true, + "license": "MIT", + "dependencies": { + "json-buffer": "3.0.1" + } + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/lilconfig": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz", + "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true, + "license": "MIT" + }, + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "dev": true, + "license": "MIT", + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/micromatch/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true, + "license": "MIT" + }, + "node_modules/mz": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", + "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "any-promise": "^1.0.0", + "object-assign": "^4.0.1", + "thenify-all": "^1.0.0" + } + }, + "node_modules/nanoid": { + "version": "3.3.11", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", + "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true, + "license": "MIT" + }, + "node_modules/node-releases": { + "version": "2.0.27", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.27.tgz", + "integrity": "sha512-nmh3lCkYZ3grZvqcCH+fjmQ7X+H0OeZgP40OierEaAptX4XofMh5kwNbWh7lBduUzCcV/8kZ+NDLCwm2iorIlA==", + "dev": true, + "license": "MIT" + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-hash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz", + "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/optionator": { + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", + "dev": true, + "license": "MIT", + "dependencies": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.5" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/package-json-from-dist": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", + "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==", + "dev": true, + "license": "BlueOak-1.0.0" + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "license": "MIT", + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true, + "license": "MIT" + }, + "node_modules/path-scurry": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", + "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "engines": { + "node": ">=16 || 14 >=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/path-scurry/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "dev": true, + "license": "ISC" + }, + "node_modules/picomatch": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", + "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pirates": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.7.tgz", + "integrity": "sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/postcss": { + "version": "8.5.6", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.6.tgz", + "integrity": "sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "nanoid": "^3.3.11", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-import": { + "version": "15.1.0", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-15.1.0.tgz", + "integrity": "sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==", + "dev": true, + "license": "MIT", + "dependencies": { + "postcss-value-parser": "^4.0.0", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "postcss": "^8.0.0" + } + }, + "node_modules/postcss-js": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.1.0.tgz", + "integrity": "sha512-oIAOTqgIo7q2EOwbhb8UalYePMvYoIeRY2YKntdpFQXNosSu3vLrniGgmH9OKs/qAkfoj5oB3le/7mINW1LCfw==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "camelcase-css": "^2.0.1" + }, + "engines": { + "node": "^12 || ^14 || >= 16" + }, + "peerDependencies": { + "postcss": "^8.4.21" + } + }, + "node_modules/postcss-load-config": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-4.0.2.tgz", + "integrity": "sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "lilconfig": "^3.0.0", + "yaml": "^2.3.4" + }, + "engines": { + "node": ">= 14" + }, + "peerDependencies": { + "postcss": ">=8.0.9", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "postcss": { + "optional": true + }, + "ts-node": { + "optional": true + } + } + }, + "node_modules/postcss-load-config/node_modules/lilconfig": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.3.tgz", + "integrity": "sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antonk52" + } + }, + "node_modules/postcss-nested": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.2.0.tgz", + "integrity": "sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "postcss-selector-parser": "^6.1.1" + }, + "engines": { + "node": ">=12.0" + }, + "peerDependencies": { + "postcss": "^8.2.14" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dev": true, + "license": "MIT", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/react": { + "version": "19.2.0", + "resolved": "https://registry.npmjs.org/react/-/react-19.2.0.tgz", + "integrity": "sha512-tmbWg6W31tQLeB5cdIBOicJDJRR2KzXsV7uSK9iNfLWQ5bIZfxuPEHp7M8wiHyHnn0DD1i7w3Zmin0FtkrwoCQ==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-dom": { + "version": "19.2.0", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.2.0.tgz", + "integrity": "sha512-UlbRu4cAiGaIewkPyiRGJk0imDN2T3JjieT6spoL2UeSf5od4n5LB/mQ4ejmxhCFT1tYe8IvaFulzynWovsEFQ==", + "license": "MIT", + "dependencies": { + "scheduler": "^0.27.0" + }, + "peerDependencies": { + "react": "^19.2.0" + } + }, + "node_modules/react-refresh": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.18.0.tgz", + "integrity": "sha512-QgT5//D3jfjJb6Gsjxv0Slpj23ip+HtOpnNgnb2S5zU3CB26G/IDPGoy4RJB42wzFE46DRsstbW6tKHoKbhAxw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/read-cache": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", + "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", + "dev": true, + "license": "MIT", + "dependencies": { + "pify": "^2.3.0" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "license": "MIT", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/readdirp/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/resolve": { + "version": "1.22.11", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.11.tgz", + "integrity": "sha512-RfqAvLnMl313r7c9oclB1HhUEAezcpLjz95wFH4LVuhk9JF/r22qmVP9AMmOU4vMX7Q8pN8jwNg/CSpdFnMjTQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-core-module": "^2.16.1", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/reusify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", + "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", + "dev": true, + "license": "MIT", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rollup": { + "version": "4.53.2", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.53.2.tgz", + "integrity": "sha512-MHngMYwGJVi6Fmnk6ISmnk7JAHRNF0UkuucA0CUW3N3a4KnONPEZz+vUanQP/ZC/iY1Qkf3bwPWzyY84wEks1g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "1.0.8" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.53.2", + "@rollup/rollup-android-arm64": "4.53.2", + "@rollup/rollup-darwin-arm64": "4.53.2", + "@rollup/rollup-darwin-x64": "4.53.2", + "@rollup/rollup-freebsd-arm64": "4.53.2", + "@rollup/rollup-freebsd-x64": "4.53.2", + "@rollup/rollup-linux-arm-gnueabihf": "4.53.2", + "@rollup/rollup-linux-arm-musleabihf": "4.53.2", + "@rollup/rollup-linux-arm64-gnu": "4.53.2", + "@rollup/rollup-linux-arm64-musl": "4.53.2", + "@rollup/rollup-linux-loong64-gnu": "4.53.2", + "@rollup/rollup-linux-ppc64-gnu": "4.53.2", + "@rollup/rollup-linux-riscv64-gnu": "4.53.2", + "@rollup/rollup-linux-riscv64-musl": "4.53.2", + "@rollup/rollup-linux-s390x-gnu": "4.53.2", + "@rollup/rollup-linux-x64-gnu": "4.53.2", + "@rollup/rollup-linux-x64-musl": "4.53.2", + "@rollup/rollup-openharmony-arm64": "4.53.2", + "@rollup/rollup-win32-arm64-msvc": "4.53.2", + "@rollup/rollup-win32-ia32-msvc": "4.53.2", + "@rollup/rollup-win32-x64-gnu": "4.53.2", + "@rollup/rollup-win32-x64-msvc": "4.53.2", + "fsevents": "~2.3.2" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/scheduler": { + "version": "0.27.0", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.27.0.tgz", + "integrity": "sha512-eNv+WrVbKu1f3vbYJT/xtiF5syA5HPIMtf9IgY/nKg0sWqzAUEvqY/xm7OcZc/qafLx/iO9FgOmeSAp4v5ti/Q==", + "license": "MIT" + }, + "node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dev": true, + "license": "MIT", + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true, + "license": "MIT" + }, + "node_modules/string-width-cjs/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.2.tgz", + "integrity": "sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/sucrase": { + "version": "3.35.0", + "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.35.0.tgz", + "integrity": "sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.2", + "commander": "^4.0.0", + "glob": "^10.3.10", + "lines-and-columns": "^1.1.6", + "mz": "^2.7.0", + "pirates": "^4.0.1", + "ts-interface-checker": "^0.1.9" + }, + "bin": { + "sucrase": "bin/sucrase", + "sucrase-node": "bin/sucrase-node" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/tailwindcss": { + "version": "3.4.14", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.14.tgz", + "integrity": "sha512-IcSvOcTRcUtQQ7ILQL5quRDg7Xs93PdJEk1ZLbhhvJc7uj/OAhYOnruEiwnGgBvUtaUAJ8/mhSw1o8L2jCiENA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@alloc/quick-lru": "^5.2.0", + "arg": "^5.0.2", + "chokidar": "^3.5.3", + "didyoumean": "^1.2.2", + "dlv": "^1.1.3", + "fast-glob": "^3.3.0", + "glob-parent": "^6.0.2", + "is-glob": "^4.0.3", + "jiti": "^1.21.0", + "lilconfig": "^2.1.0", + "micromatch": "^4.0.5", + "normalize-path": "^3.0.0", + "object-hash": "^3.0.0", + "picocolors": "^1.0.0", + "postcss": "^8.4.23", + "postcss-import": "^15.1.0", + "postcss-js": "^4.0.1", + "postcss-load-config": "^4.0.1", + "postcss-nested": "^6.0.1", + "postcss-selector-parser": "^6.0.11", + "resolve": "^1.22.2", + "sucrase": "^3.32.0" + }, + "bin": { + "tailwind": "lib/cli.js", + "tailwindcss": "lib/cli.js" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/thenify": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", + "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", + "dev": true, + "license": "MIT", + "dependencies": { + "any-promise": "^1.0.0" + } + }, + "node_modules/thenify-all": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", + "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", + "dev": true, + "license": "MIT", + "dependencies": { + "thenify": ">= 3.1.0 < 4" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/tinyglobby": { + "version": "0.2.15", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz", + "integrity": "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "fdir": "^6.5.0", + "picomatch": "^4.0.3" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/ts-interface-checker": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz", + "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==", + "dev": true, + "license": "Apache-2.0" + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "license": "MIT", + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.4.tgz", + "integrity": "sha512-q0SPT4xyU84saUX+tomz1WLkxUbuaJnR1xWt17M7fJtEJigJeWUNGUqrauFXsHnqev9y9JTRGwk13tFBuKby4A==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "escalade": "^3.2.0", + "picocolors": "^1.1.1" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true, + "license": "MIT" + }, + "node_modules/vite": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/vite/-/vite-7.2.2.tgz", + "integrity": "sha512-BxAKBWmIbrDgrokdGZH1IgkIk/5mMHDreLDmCJ0qpyJaAteP8NvMhkwr/ZCQNqNH97bw/dANTE9PDzqwJghfMQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "esbuild": "^0.25.0", + "fdir": "^6.5.0", + "picomatch": "^4.0.3", + "postcss": "^8.5.6", + "rollup": "^4.43.0", + "tinyglobby": "^0.2.15" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^20.19.0 || >=22.12.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^20.19.0 || >=22.12.0", + "jiti": ">=1.21.0", + "less": "^4.0.0", + "lightningcss": "^1.21.0", + "sass": "^1.70.0", + "sass-embedded": "^1.70.0", + "stylus": ">=0.54.8", + "sugarss": "^5.0.0", + "terser": "^5.16.0", + "tsx": "^4.8.1", + "yaml": "^2.4.2" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "jiti": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + }, + "tsx": { + "optional": true + }, + "yaml": { + "optional": true + } + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/word-wrap": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true, + "license": "MIT" + }, + "node_modules/wrap-ansi-cjs/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "6.2.3", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.3.tgz", + "integrity": "sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true, + "license": "ISC" + }, + "node_modules/yaml": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.8.1.tgz", + "integrity": "sha512-lcYcMxX2PO9XMGvAJkJ3OsNMw+/7FKes7/hgerGUYWIoWu5j/+YQqcZr5JnPZWzOsEBgMbSbiSTn/dv/69Mkpw==", + "dev": true, + "license": "ISC", + "bin": { + "yaml": "bin.mjs" + }, + "engines": { + "node": ">= 14.6" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/zod": { + "version": "4.1.12", + "resolved": "https://registry.npmjs.org/zod/-/zod-4.1.12.tgz", + "integrity": "sha512-JInaHOamG8pt5+Ey8kGmdcAcg3OL9reK8ltczgHTAwNhMys/6ThXHityHxVV2p3fkw/c+MAvBHFVYHFZDmjMCQ==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/colinhacks" + } + }, + "node_modules/zod-validation-error": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/zod-validation-error/-/zod-validation-error-4.0.2.tgz", + "integrity": "sha512-Q6/nZLe6jxuU80qb/4uJ4t5v2VEZ44lzQjPDhYJNztRQ4wyWc6VF3D3Kb/fAuPetZQnhS3hnajCf9CsWesghLQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18.0.0" + }, + "peerDependencies": { + "zod": "^3.25.0 || ^4.0.0" + } + } + } +} diff --git a/webui/package.json b/webui/package.json new file mode 100644 index 00000000..e1791115 --- /dev/null +++ b/webui/package.json @@ -0,0 +1,30 @@ +{ + "name": "webui", + "private": true, + "version": "0.0.0", + "type": "module", + "scripts": { + "dev": "vite", + "build": "vite build", + "lint": "eslint .", + "preview": "vite preview" + }, + "dependencies": { + "react": "^19.2.0", + "react-dom": "^19.2.0" + }, + "devDependencies": { + "@eslint/js": "^9.39.1", + "@types/react": "^19.2.2", + "@types/react-dom": "^19.2.2", + "@vitejs/plugin-react": "^5.1.0", + "autoprefixer": "^10.4.22", + "eslint": "^9.39.1", + "eslint-plugin-react-hooks": "^7.0.1", + "eslint-plugin-react-refresh": "^0.4.24", + "globals": "^16.5.0", + "postcss": "^8.5.6", + "tailwindcss": "^3.4.14", + "vite": "^7.2.2" + } +} diff --git a/webui/postcss.config.js b/webui/postcss.config.js new file mode 100644 index 00000000..2e7af2b7 --- /dev/null +++ b/webui/postcss.config.js @@ -0,0 +1,6 @@ +export default { + plugins: { + tailwindcss: {}, + autoprefixer: {}, + }, +} diff --git a/webui/public/vite.svg b/webui/public/vite.svg new file mode 100644 index 00000000..e7b8dfb1 --- /dev/null +++ b/webui/public/vite.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/webui/src/App.css b/webui/src/App.css new file mode 100644 index 00000000..b9d355df --- /dev/null +++ b/webui/src/App.css @@ -0,0 +1,42 @@ +#root { + max-width: 1280px; + margin: 0 auto; + padding: 2rem; + text-align: center; +} + +.logo { + height: 6em; + padding: 1.5em; + will-change: filter; + transition: filter 300ms; +} +.logo:hover { + filter: drop-shadow(0 0 2em #646cffaa); +} +.logo.react:hover { + filter: drop-shadow(0 0 2em #61dafbaa); +} + +@keyframes logo-spin { + from { + transform: rotate(0deg); + } + to { + transform: rotate(360deg); + } +} + +@media (prefers-reduced-motion: no-preference) { + a:nth-of-type(2) .logo { + animation: logo-spin infinite 20s linear; + } +} + +.card { + padding: 2em; +} + +.read-the-docs { + color: #888; +} diff --git a/webui/src/App.jsx b/webui/src/App.jsx new file mode 100644 index 00000000..957c5e02 --- /dev/null +++ b/webui/src/App.jsx @@ -0,0 +1,241 @@ +import { useMemo, useState } from 'react'; +import { useSession } from './context/SessionContext.jsx'; + +function StatusBadge({ connected, role, mode }) { + const color = connected ? 'bg-emerald-500/20 text-emerald-300' : 'bg-red-500/20 text-red-200'; + return ( +
+ + {connected ? 'Connected' : 'Disconnected'} + + + Role: {role || 'unknown'} + + + Mode: {mode || '--'} + +
+ ); +} + +function LogPanel() { + const { logs } = useSession(); + return ( +
+
+

Server logs

+ + {logs.length} entries + +
+
+ {logs.length === 0 ? ( +

No logs yet.

+ ) : ( + logs + .slice() + .reverse() + .map((entry) => ( +
+ {entry.timestamp}{' '} + [{entry.level}]{' '} + {entry.label && [{entry.label}]}{' '} + {entry.message} +
+ )) + )} +
+
+ ); +} + +function RosterPanel() { + const { session, requestControl } = useSession(); + const roster = session?.roster ?? []; + const [pending, setPending] = useState({}); + + async function handleRequest(roverId) { + setPending((prev) => ({ ...prev, [roverId]: true })); + try { + await requestControl(roverId); + } catch (err) { + alert(err.message); + } finally { + setPending((prev) => ({ ...prev, [roverId]: false })); + } + } + + return ( +
+

Rovers

+
+ {roster.length === 0 &&

No rovers registered.

} + {roster.map((rover) => ( +
+
+

{rover.name}

+

Locked: {rover.locked ? 'yes' : 'no'}

+
+ +
+ ))} +
+
+ ); +} + +function AssignmentCard() { + const { session, releaseControl } = useSession(); + const assignment = session?.assignment; + const roverId = assignment?.roverId; + + const [busy, setBusy] = useState(false); + + async function handleRelease() { + if (!roverId) return; + setBusy(true); + try { + await releaseControl(roverId); + } catch (err) { + alert(err.message); + } finally { + setBusy(false); + } + } + + return ( +
+

Assignment

+ {roverId ? ( +
+

Currently driving rover {roverId}

+ +
+ ) : ( +
+

Status: {assignment?.status ?? 'not assigned'}

+ {assignment?.queuePosition && ( +

Queue position: {assignment.queuePosition}

+ )} +
+ )} +
+ ); +} + +function SessionInspector() { + const { session } = useSession(); + const formatted = useMemo(() => JSON.stringify(session ?? {}, null, 2), [session]); + return ( +
+

Session snapshot

+
{formatted}
+
+ ); +} + +function AuthPanel() { + const { login, setRole } = useSession(); + const [username, setUsername] = useState(''); + const [password, setPassword] = useState(''); + const [loading, setLoading] = useState(false); + + async function handleLogin(event) { + event.preventDefault(); + setLoading(true); + try { + await login(username, password); + setUsername(''); + setPassword(''); + } catch (err) { + alert(err.message); + } finally { + setLoading(false); + } + } + + return ( +
+

Authentication

+
+ setUsername(e.target.value)} + /> + setPassword(e.target.value)} + /> + +
+
+ + +
+
+ ); +} + +function App() { + const { connected, session } = useSession(); + + return ( +
+
+
+

Multi Roomba Rover Console

+ +
+
+ + + + +
+ +
+
+ ); +} + +export default App; diff --git a/webui/src/assets/react.svg b/webui/src/assets/react.svg new file mode 100644 index 00000000..6c87de9b --- /dev/null +++ b/webui/src/assets/react.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/webui/src/context/SessionContext.jsx b/webui/src/context/SessionContext.jsx new file mode 100644 index 00000000..ad4fc025 --- /dev/null +++ b/webui/src/context/SessionContext.jsx @@ -0,0 +1,96 @@ +import { createContext, useCallback, useContext, useEffect, useMemo, useState } from 'react'; +import { useSocket } from './SocketContext.jsx'; + +const SessionContext = createContext({ + connected: false, + session: null, + logs: [], + login: async () => {}, + setRole: async () => {}, + requestControl: async () => {}, + releaseControl: async () => {}, + subscribeAll: async () => {}, +}); + +function useAckEmitter(socket) { + return useCallback( + (event, payload = {}) => + new Promise((resolve, reject) => { + socket.emit(event, payload, (resp = {}) => { + if (resp.error) { + reject(new Error(resp.error)); + } else { + resolve(resp); + } + }); + }), + [socket], + ); +} + +export function SessionProvider({ children }) { + const socket = useSocket(); + const emitWithAck = useAckEmitter(socket); + const [session, setSession] = useState(null); + const [logs, setLogs] = useState([]); + const [connected, setConnected] = useState(socket.connected); + + useEffect(() => { + const onConnect = () => setConnected(true); + const onDisconnect = () => setConnected(false); + socket.on('connect', onConnect); + socket.on('disconnect', onDisconnect); + return () => { + socket.off('connect', onConnect); + socket.off('disconnect', onDisconnect); + }; + }, [socket]); + + useEffect(() => { + function handleSession(payload) { + setSession(payload); + } + function handleLogInit(entries = []) { + setLogs(entries); + } + function handleLogEntry(entry) { + setLogs((prev) => [...prev.slice(-199), entry]); + } + socket.on('session:sync', handleSession); + socket.on('log:init', handleLogInit); + socket.on('log:entry', handleLogEntry); + return () => { + socket.off('session:sync', handleSession); + socket.off('log:init', handleLogInit); + socket.off('log:entry', handleLogEntry); + }; + }, [socket]); + + const actions = useMemo( + () => ({ + login: (username, password) => emitWithAck('auth:login', { username, password }), + setRole: (role) => emitWithAck('session:setRole', { role }), + requestControl: (roverId, options = {}) => + emitWithAck('session:requestControl', { roverId, ...options }), + releaseControl: (roverId) => emitWithAck('session:releaseControl', { roverId }), + subscribeAll: () => emitWithAck('session:subscribeAll'), + }), + [emitWithAck], + ); + + const value = useMemo( + () => ({ + connected, + session, + logs, + ...actions, + }), + [actions, connected, logs, session], + ); + + return {children}; +} + +export function useSession() { + return useContext(SessionContext); +} diff --git a/webui/src/context/SocketContext.jsx b/webui/src/context/SocketContext.jsx new file mode 100644 index 00000000..c464e304 --- /dev/null +++ b/webui/src/context/SocketContext.jsx @@ -0,0 +1,9 @@ +// src/context/SocketContext.jsx +import { createContext, useContext } from "react"; +import { socket } from "../lib/socket"; + +const SocketContext = createContext(socket); +export const SocketProvider = ({ children }) => ( + {children} +); +export const useSocket = () => useContext(SocketContext); diff --git a/webui/src/index.css b/webui/src/index.css new file mode 100644 index 00000000..39ef9bfd --- /dev/null +++ b/webui/src/index.css @@ -0,0 +1,16 @@ +@tailwind base; +@tailwind components; +@tailwind utilities; + +:root { + font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', + sans-serif; + color: #0f172a; + background-color: #f8fafc; +} + +body { + margin: 0; + min-height: 100vh; + background-color: #0f172a; +} diff --git a/webui/src/lib/socket.js b/webui/src/lib/socket.js new file mode 100644 index 00000000..0684a23e --- /dev/null +++ b/webui/src/lib/socket.js @@ -0,0 +1,11 @@ +import { io } from "socket.io-client"; + +console.log('socket.io client loaded') + +const serverUrl = import.meta.env.VITE_ROVERD_URL ?? "http://localhost:8080"; +export const socket = io(serverUrl, { + transports: ["websocket"], // skip polling if your backend supports it + query: { + role: "user" + } +}); diff --git a/webui/src/main.jsx b/webui/src/main.jsx new file mode 100644 index 00000000..424fdb5d --- /dev/null +++ b/webui/src/main.jsx @@ -0,0 +1,16 @@ +import { StrictMode } from 'react' +import { createRoot } from 'react-dom/client' +import './index.css' +import App from './App.jsx' +import { SocketProvider } from './context/SocketContext.jsx' +import { SessionProvider } from './context/SessionContext.jsx' + +createRoot(document.getElementById('root')).render( + + + + + + + , +) diff --git a/webui/tailwind.config.js b/webui/tailwind.config.js new file mode 100644 index 00000000..dca8ba02 --- /dev/null +++ b/webui/tailwind.config.js @@ -0,0 +1,11 @@ +/** @type {import('tailwindcss').Config} */ +export default { + content: [ + "./index.html", + "./src/**/*.{js,ts,jsx,tsx}", + ], + theme: { + extend: {}, + }, + plugins: [], +} diff --git a/webui/vite.config.js b/webui/vite.config.js new file mode 100644 index 00000000..16e25075 --- /dev/null +++ b/webui/vite.config.js @@ -0,0 +1,11 @@ +import { defineConfig } from 'vite' +import react from '@vitejs/plugin-react' + +// https://vite.dev/config/ +export default defineConfig({ + plugins: [react()], + build: { + outDir: '../server/public', + emptyOutDir: true, + }, +}) From 85d0c9cfd354f5ea96119ebc681171933e7c464d Mon Sep 17 00:00:00 2001 From: legop3 Date: Sat, 15 Nov 2025 04:13:18 -0500 Subject: [PATCH 02/61] oopsie --- server/public/assets/{index-APFDmmUd.js => index-0y51eWnL.js} | 2 +- server/public/index.html | 2 +- webui/src/lib/socket.js | 3 ++- 3 files changed, 4 insertions(+), 3 deletions(-) rename server/public/assets/{index-APFDmmUd.js => index-0y51eWnL.js} (96%) diff --git a/server/public/assets/index-APFDmmUd.js b/server/public/assets/index-0y51eWnL.js similarity index 96% rename from server/public/assets/index-APFDmmUd.js rename to server/public/assets/index-0y51eWnL.js index da40a959..c37dad04 100644 --- a/server/public/assets/index-APFDmmUd.js +++ b/server/public/assets/index-0y51eWnL.js @@ -6,4 +6,4 @@ `+h[n].replace(" at new "," at ");return t.displayName&&_.includes("")&&(_=_.replace("",t.displayName)),_}while(1<=n&&0<=a);break}}}finally{ii=!1,Error.prepareStackTrace=l}return(l=t?t.displayName||t.name:"")?Rl(l):""}function Ad(t,e){switch(t.tag){case 26:case 27:case 5:return Rl(t.type);case 16:return Rl("Lazy");case 13:return t.child!==e&&e!==null?Rl("Suspense Fallback"):Rl("Suspense");case 19:return Rl("SuspenseList");case 0:case 15:return ci(t.type,!1);case 11:return ci(t.type.render,!1);case 1:return ci(t.type,!0);case 31:return Rl("Activity");default:return""}}function Kf(t){try{var e="",l=null;do e+=Ad(t,l),l=t,t=t.return;while(t);return e}catch(n){return` Error generating stack: `+n.message+` `+n.stack}}var fi=Object.prototype.hasOwnProperty,si=o.unstable_scheduleCallback,oi=o.unstable_cancelCallback,zd=o.unstable_shouldYield,Od=o.unstable_requestPaint,Pt=o.unstable_now,Nd=o.unstable_getCurrentPriorityLevel,Jf=o.unstable_ImmediatePriority,kf=o.unstable_UserBlockingPriority,Ba=o.unstable_NormalPriority,Md=o.unstable_LowPriority,Wf=o.unstable_IdlePriority,Rd=o.log,Dd=o.unstable_setDisableYieldValue,Yn=null,te=null;function ll(t){if(typeof Rd=="function"&&Dd(t),te&&typeof te.setStrictMode=="function")try{te.setStrictMode(Yn,t)}catch{}}var ee=Math.clz32?Math.clz32:Cd,Ud=Math.log,xd=Math.LN2;function Cd(t){return t>>>=0,t===0?32:31-(Ud(t)/xd|0)|0}var qa=256,Ha=262144,Ya=4194304;function Dl(t){var e=t&42;if(e!==0)return e;switch(t&-t){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return t&261888;case 262144:case 524288:case 1048576:case 2097152:return t&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return t&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return t}}function ja(t,e,l){var n=t.pendingLanes;if(n===0)return 0;var a=0,u=t.suspendedLanes,c=t.pingedLanes;t=t.warmLanes;var r=n&134217727;return r!==0?(n=r&~u,n!==0?a=Dl(n):(c&=r,c!==0?a=Dl(c):l||(l=r&~t,l!==0&&(a=Dl(l))))):(r=n&~u,r!==0?a=Dl(r):c!==0?a=Dl(c):l||(l=n&~t,l!==0&&(a=Dl(l)))),a===0?0:e!==0&&e!==a&&(e&u)===0&&(u=a&-a,l=e&-e,u>=l||u===32&&(l&4194048)!==0)?e:a}function jn(t,e){return(t.pendingLanes&~(t.suspendedLanes&~t.pingedLanes)&e)===0}function Bd(t,e){switch(t){case 1:case 2:case 4:case 8:case 64:return e+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 e+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 $f(){var t=Ya;return Ya<<=1,(Ya&62914560)===0&&(Ya=4194304),t}function ri(t){for(var e=[],l=0;31>l;l++)e.push(t);return e}function Ln(t,e){t.pendingLanes|=e,e!==268435456&&(t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0)}function qd(t,e,l,n,a,u){var c=t.pendingLanes;t.pendingLanes=l,t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0,t.expiredLanes&=l,t.entangledLanes&=l,t.errorRecoveryDisabledLanes&=l,t.shellSuspendCounter=0;var r=t.entanglements,h=t.expirationTimes,p=t.hiddenUpdates;for(l=c&~l;0"u")return null;try{return t.activeElement||t.body}catch{return t.body}}var Qd=/[\n"\\]/g;function re(t){return t.replace(Qd,function(e){return"\\"+e.charCodeAt(0).toString(16)+" "})}function gi(t,e,l,n,a,u,c,r){t.name="",c!=null&&typeof c!="function"&&typeof c!="symbol"&&typeof c!="boolean"?t.type=c:t.removeAttribute("type"),e!=null?c==="number"?(e===0&&t.value===""||t.value!=e)&&(t.value=""+oe(e)):t.value!==""+oe(e)&&(t.value=""+oe(e)):c!=="submit"&&c!=="reset"||t.removeAttribute("value"),e!=null?pi(t,c,oe(e)):l!=null?pi(t,c,oe(l)):n!=null&&t.removeAttribute("value"),a==null&&u!=null&&(t.defaultChecked=!!u),a!=null&&(t.checked=a&&typeof a!="function"&&typeof a!="symbol"),r!=null&&typeof r!="function"&&typeof r!="symbol"&&typeof r!="boolean"?t.name=""+oe(r):t.removeAttribute("name")}function ss(t,e,l,n,a,u,c,r){if(u!=null&&typeof u!="function"&&typeof u!="symbol"&&typeof u!="boolean"&&(t.type=u),e!=null||l!=null){if(!(u!=="submit"&&u!=="reset"||e!=null)){vi(t);return}l=l!=null?""+oe(l):"",e=e!=null?""+oe(e):l,r||e===t.value||(t.value=e),t.defaultValue=e}n=n??a,n=typeof n!="function"&&typeof n!="symbol"&&!!n,t.checked=r?t.checked:!!n,t.defaultChecked=!!n,c!=null&&typeof c!="function"&&typeof c!="symbol"&&typeof c!="boolean"&&(t.name=c),vi(t)}function pi(t,e,l){e==="number"&&Qa(t.ownerDocument)===t||t.defaultValue===""+l||(t.defaultValue=""+l)}function tn(t,e,l,n){if(t=t.options,e){e={};for(var a=0;a"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Ti=!1;if(Le)try{var Vn={};Object.defineProperty(Vn,"passive",{get:function(){Ti=!0}}),window.addEventListener("test",Vn,Vn),window.removeEventListener("test",Vn,Vn)}catch{Ti=!1}var al=null,Ai=null,Va=null;function vs(){if(Va)return Va;var t,e=Ai,l=e.length,n,a="value"in al?al.value:al.textContent,u=a.length;for(t=0;t=Kn),Es=" ",Ts=!1;function As(t,e){switch(t){case"keyup":return my.indexOf(e.keyCode)!==-1;case"keydown":return e.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function zs(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var an=!1;function gy(t,e){switch(t){case"compositionend":return zs(e);case"keypress":return e.which!==32?null:(Ts=!0,Es);case"textInput":return t=e.data,t===Es&&Ts?null:t;default:return null}}function py(t,e){if(an)return t==="compositionend"||!Ri&&As(t,e)?(t=vs(),Va=Ai=al=null,an=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(e.ctrlKey||e.altKey||e.metaKey)||e.ctrlKey&&e.altKey){if(e.char&&1=e)return{node:l,offset:e-t};t=n}t:{for(;l;){if(l.nextSibling){l=l.nextSibling;break t}l=l.parentNode}l=void 0}l=Cs(l)}}function qs(t,e){return t&&e?t===e?!0:t&&t.nodeType===3?!1:e&&e.nodeType===3?qs(t,e.parentNode):"contains"in t?t.contains(e):t.compareDocumentPosition?!!(t.compareDocumentPosition(e)&16):!1:!1}function Hs(t){t=t!=null&&t.ownerDocument!=null&&t.ownerDocument.defaultView!=null?t.ownerDocument.defaultView:window;for(var e=Qa(t.document);e instanceof t.HTMLIFrameElement;){try{var l=typeof e.contentWindow.location.href=="string"}catch{l=!1}if(l)t=e.contentWindow;else break;e=Qa(t.document)}return e}function xi(t){var e=t&&t.nodeName&&t.nodeName.toLowerCase();return e&&(e==="input"&&(t.type==="text"||t.type==="search"||t.type==="tel"||t.type==="url"||t.type==="password")||e==="textarea"||t.contentEditable==="true")}var Oy=Le&&"documentMode"in document&&11>=document.documentMode,un=null,Ci=null,$n=null,Bi=!1;function Ys(t,e,l){var n=l.window===l?l.document:l.nodeType===9?l:l.ownerDocument;Bi||un==null||un!==Qa(n)||(n=un,"selectionStart"in n&&xi(n)?n={start:n.selectionStart,end:n.selectionEnd}:(n=(n.ownerDocument&&n.ownerDocument.defaultView||window).getSelection(),n={anchorNode:n.anchorNode,anchorOffset:n.anchorOffset,focusNode:n.focusNode,focusOffset:n.focusOffset}),$n&&Wn($n,n)||($n=n,n=Hu(Ci,"onSelect"),0>=c,a-=c,Re=1<<32-ee(e)+a|l<w?(F=H,H=null):F=H.sibling;var lt=b(v,H,g[w],z);if(lt===null){H===null&&(H=F);break}t&&H&<.alternate===null&&e(v,H),d=u(lt,d,w),et===null?j=lt:et.sibling=lt,et=lt,H=F}if(w===g.length)return l(v,H),P&&Qe(v,w),j;if(H===null){for(;ww?(F=H,H=null):F=H.sibling;var Ol=b(v,H,lt.value,z);if(Ol===null){H===null&&(H=F);break}t&&H&&Ol.alternate===null&&e(v,H),d=u(Ol,d,w),et===null?j=Ol:et.sibling=Ol,et=Ol,H=F}if(lt.done)return l(v,H),P&&Qe(v,w),j;if(H===null){for(;!lt.done;w++,lt=g.next())lt=O(v,lt.value,z),lt!==null&&(d=u(lt,d,w),et===null?j=lt:et.sibling=lt,et=lt);return P&&Qe(v,w),j}for(H=n(H);!lt.done;w++,lt=g.next())lt=S(H,v,w,lt.value,z),lt!==null&&(t&<.alternate!==null&&H.delete(lt.key===null?w:lt.key),d=u(lt,d,w),et===null?j=lt:et.sibling=lt,et=lt);return t&&H.forEach(function(Km){return e(v,Km)}),P&&Qe(v,w),j}function ot(v,d,g,z){if(typeof g=="object"&&g!==null&&g.type===Ut&&g.key===null&&(g=g.props.children),typeof g=="object"&&g!==null){switch(g.$$typeof){case Yt:t:{for(var j=g.key;d!==null;){if(d.key===j){if(j=g.type,j===Ut){if(d.tag===7){l(v,d.sibling),z=a(d,g.props.children),z.return=v,v=z;break t}}else if(d.elementType===j||typeof j=="object"&&j!==null&&j.$$typeof===Vt&&Ql(j)===d.type){l(v,d.sibling),z=a(d,g.props),la(z,g),z.return=v,v=z;break t}l(v,d);break}else e(v,d);d=d.sibling}g.type===Ut?(z=Hl(g.props.children,v.mode,z,g.key),z.return=v,v=z):(z=Pa(g.type,g.key,g.props,null,v.mode,z),la(z,g),z.return=v,v=z)}return c(v);case _t:t:{for(j=g.key;d!==null;){if(d.key===j)if(d.tag===4&&d.stateNode.containerInfo===g.containerInfo&&d.stateNode.implementation===g.implementation){l(v,d.sibling),z=a(d,g.children||[]),z.return=v,v=z;break t}else{l(v,d);break}else e(v,d);d=d.sibling}z=Qi(g,v.mode,z),z.return=v,v=z}return c(v);case Vt:return g=Ql(g),ot(v,d,g,z)}if(_e(g))return C(v,d,g,z);if(Zt(g)){if(j=Zt(g),typeof j!="function")throw Error(s(150));return g=j.call(g),L(v,d,g,z)}if(typeof g.then=="function")return ot(v,d,iu(g),z);if(g.$$typeof===jt)return ot(v,d,lu(v,g),z);cu(v,g)}return typeof g=="string"&&g!==""||typeof g=="number"||typeof g=="bigint"?(g=""+g,d!==null&&d.tag===6?(l(v,d.sibling),z=a(d,g),z.return=v,v=z):(l(v,d),z=Xi(g,v.mode,z),z.return=v,v=z),c(v)):l(v,d)}return function(v,d,g,z){try{ea=0;var j=ot(v,d,g,z);return gn=null,j}catch(H){if(H===vn||H===au)throw H;var et=ne(29,H,null,v.mode);return et.lanes=z,et.return=v,et}finally{}}}var Vl=io(!0),co=io(!1),sl=!1;function Pi(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function tc(t,e){t=t.updateQueue,e.updateQueue===t&&(e.updateQueue={baseState:t.baseState,firstBaseUpdate:t.firstBaseUpdate,lastBaseUpdate:t.lastBaseUpdate,shared:t.shared,callbacks:null})}function ol(t){return{lane:t,tag:0,payload:null,callback:null,next:null}}function rl(t,e,l){var n=t.updateQueue;if(n===null)return null;if(n=n.shared,(nt&2)!==0){var a=n.pending;return a===null?e.next=e:(e.next=a.next,a.next=e),n.pending=e,e=Ia(t),Zs(t,null,l),e}return Fa(t,n,e,l),Ia(t)}function na(t,e,l){if(e=e.updateQueue,e!==null&&(e=e.shared,(l&4194048)!==0)){var n=e.lanes;n&=t.pendingLanes,l|=n,e.lanes=l,If(t,l)}}function ec(t,e){var l=t.updateQueue,n=t.alternate;if(n!==null&&(n=n.updateQueue,l===n)){var a=null,u=null;if(l=l.firstBaseUpdate,l!==null){do{var c={lane:l.lane,tag:l.tag,payload:l.payload,callback:null,next:null};u===null?a=u=c:u=u.next=c,l=l.next}while(l!==null);u===null?a=u=e:u=u.next=e}else a=u=e;l={baseState:n.baseState,firstBaseUpdate:a,lastBaseUpdate:u,shared:n.shared,callbacks:n.callbacks},t.updateQueue=l;return}t=l.lastBaseUpdate,t===null?l.firstBaseUpdate=e:t.next=e,l.lastBaseUpdate=e}var lc=!1;function aa(){if(lc){var t=mn;if(t!==null)throw t}}function ua(t,e,l,n){lc=!1;var a=t.updateQueue;sl=!1;var u=a.firstBaseUpdate,c=a.lastBaseUpdate,r=a.shared.pending;if(r!==null){a.shared.pending=null;var h=r,p=h.next;h.next=null,c===null?u=p:c.next=p,c=h;var _=t.alternate;_!==null&&(_=_.updateQueue,r=_.lastBaseUpdate,r!==c&&(r===null?_.firstBaseUpdate=p:r.next=p,_.lastBaseUpdate=h))}if(u!==null){var O=a.baseState;c=0,_=p=h=null,r=u;do{var b=r.lane&-536870913,S=b!==r.lane;if(S?($&b)===b:(n&b)===b){b!==0&&b===yn&&(lc=!0),_!==null&&(_=_.next={lane:0,tag:r.tag,payload:r.payload,callback:null,next:null});t:{var C=t,L=r;b=e;var ot=l;switch(L.tag){case 1:if(C=L.payload,typeof C=="function"){O=C.call(ot,O,b);break t}O=C;break t;case 3:C.flags=C.flags&-65537|128;case 0:if(C=L.payload,b=typeof C=="function"?C.call(ot,O,b):C,b==null)break t;O=x({},O,b);break t;case 2:sl=!0}}b=r.callback,b!==null&&(t.flags|=64,S&&(t.flags|=8192),S=a.callbacks,S===null?a.callbacks=[b]:S.push(b))}else S={lane:b,tag:r.tag,payload:r.payload,callback:r.callback,next:null},_===null?(p=_=S,h=O):_=_.next=S,c|=b;if(r=r.next,r===null){if(r=a.shared.pending,r===null)break;S=r,r=S.next,S.next=null,a.lastBaseUpdate=S,a.shared.pending=null}}while(!0);_===null&&(h=O),a.baseState=h,a.firstBaseUpdate=p,a.lastBaseUpdate=_,u===null&&(a.shared.lanes=0),vl|=c,t.lanes=c,t.memoizedState=O}}function fo(t,e){if(typeof t!="function")throw Error(s(191,t));t.call(e)}function so(t,e){var l=t.callbacks;if(l!==null)for(t.callbacks=null,t=0;tu?u:8;var c=T.T,r={};T.T=r,_c(t,!1,e,l);try{var h=a(),p=T.S;if(p!==null&&p(r,h),h!==null&&typeof h=="object"&&typeof h.then=="function"){var _=qy(h,n);fa(t,e,_,fe(t))}else fa(t,e,n,fe(t))}catch(O){fa(t,e,{then:function(){},status:"rejected",reason:O},fe())}finally{D.p=u,c!==null&&r.types!==null&&(c.types=r.types),T.T=c}}function Qy(){}function bc(t,e,l,n){if(t.tag!==5)throw Error(s(476));var a=Go(t).queue;Qo(t,a,e,X,l===null?Qy:function(){return Vo(t),l(n)})}function Go(t){var e=t.memoizedState;if(e!==null)return e;e={memoizedState:X,baseState:X,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:we,lastRenderedState:X},next:null};var l={};return e.next={memoizedState:l,baseState:l,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:we,lastRenderedState:l},next:null},t.memoizedState=e,t=t.alternate,t!==null&&(t.memoizedState=e),e}function Vo(t){var e=Go(t);e.next===null&&(e=t.alternate.memoizedState),fa(t,e.next.queue,{},fe())}function Sc(){return Bt(za)}function Zo(){return St().memoizedState}function wo(){return St().memoizedState}function Gy(t){for(var e=t.return;e!==null;){switch(e.tag){case 24:case 3:var l=fe();t=ol(l);var n=rl(e,t,l);n!==null&&(Ft(n,e,l),na(n,e,l)),e={cache:Wi()},t.payload=e;return}e=e.return}}function Vy(t,e,l){var n=fe();l={lane:n,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},gu(t)?Jo(e,l):(l=ji(t,e,l,n),l!==null&&(Ft(l,t,n),ko(l,e,n)))}function Ko(t,e,l){var n=fe();fa(t,e,l,n)}function fa(t,e,l,n){var a={lane:n,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null};if(gu(t))Jo(e,a);else{var u=t.alternate;if(t.lanes===0&&(u===null||u.lanes===0)&&(u=e.lastRenderedReducer,u!==null))try{var c=e.lastRenderedState,r=u(c,l);if(a.hasEagerState=!0,a.eagerState=r,le(r,c))return Fa(t,e,a,0),ht===null&&$a(),!1}catch{}finally{}if(l=ji(t,e,a,n),l!==null)return Ft(l,t,n),ko(l,e,n),!0}return!1}function _c(t,e,l,n){if(n={lane:2,revertLane:Pc(),gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},gu(t)){if(e)throw Error(s(479))}else e=ji(t,l,n,2),e!==null&&Ft(e,t,2)}function gu(t){var e=t.alternate;return t===Z||e!==null&&e===Z}function Jo(t,e){bn=ou=!0;var l=t.pending;l===null?e.next=e:(e.next=l.next,l.next=e),t.pending=e}function ko(t,e,l){if((l&4194048)!==0){var n=e.lanes;n&=t.pendingLanes,l|=n,e.lanes=l,If(t,l)}}var sa={readContext:Bt,use:du,useCallback:vt,useContext:vt,useEffect:vt,useImperativeHandle:vt,useLayoutEffect:vt,useInsertionEffect:vt,useMemo:vt,useReducer:vt,useRef:vt,useState:vt,useDebugValue:vt,useDeferredValue:vt,useTransition:vt,useSyncExternalStore:vt,useId:vt,useHostTransitionStatus:vt,useFormState:vt,useActionState:vt,useOptimistic:vt,useMemoCache:vt,useCacheRefresh:vt};sa.useEffectEvent=vt;var Wo={readContext:Bt,use:du,useCallback:function(t,e){return Qt().memoizedState=[t,e===void 0?null:e],t},useContext:Bt,useEffect:xo,useImperativeHandle:function(t,e,l){l=l!=null?l.concat([t]):null,mu(4194308,4,Ho.bind(null,e,t),l)},useLayoutEffect:function(t,e){return mu(4194308,4,t,e)},useInsertionEffect:function(t,e){mu(4,2,t,e)},useMemo:function(t,e){var l=Qt();e=e===void 0?null:e;var n=t();if(Zl){ll(!0);try{t()}finally{ll(!1)}}return l.memoizedState=[n,e],n},useReducer:function(t,e,l){var n=Qt();if(l!==void 0){var a=l(e);if(Zl){ll(!0);try{l(e)}finally{ll(!1)}}}else a=e;return n.memoizedState=n.baseState=a,t={pending:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:a},n.queue=t,t=t.dispatch=Vy.bind(null,Z,t),[n.memoizedState,t]},useRef:function(t){var e=Qt();return t={current:t},e.memoizedState=t},useState:function(t){t=yc(t);var e=t.queue,l=Ko.bind(null,Z,e);return e.dispatch=l,[t.memoizedState,l]},useDebugValue:gc,useDeferredValue:function(t,e){var l=Qt();return pc(l,t,e)},useTransition:function(){var t=yc(!1);return t=Qo.bind(null,Z,t.queue,!0,!1),Qt().memoizedState=t,[!1,t]},useSyncExternalStore:function(t,e,l){var n=Z,a=Qt();if(P){if(l===void 0)throw Error(s(407));l=l()}else{if(l=e(),ht===null)throw Error(s(349));($&127)!==0||vo(n,e,l)}a.memoizedState=l;var u={value:l,getSnapshot:e};return a.queue=u,xo(po.bind(null,n,u,t),[t]),n.flags|=2048,_n(9,{destroy:void 0},go.bind(null,n,u,l,e),null),l},useId:function(){var t=Qt(),e=ht.identifierPrefix;if(P){var l=De,n=Re;l=(n&~(1<<32-ee(n)-1)).toString(32)+l,e="_"+e+"R_"+l,l=ru++,0<\/script>",u=u.removeChild(u.firstChild);break;case"select":u=typeof n.is=="string"?c.createElement("select",{is:n.is}):c.createElement("select"),n.multiple?u.multiple=!0:n.size&&(u.size=n.size);break;default:u=typeof n.is=="string"?c.createElement(a,{is:n.is}):c.createElement(a)}}u[xt]=e,u[wt]=n;t:for(c=e.child;c!==null;){if(c.tag===5||c.tag===6)u.appendChild(c.stateNode);else if(c.tag!==4&&c.tag!==27&&c.child!==null){c.child.return=c,c=c.child;continue}if(c===e)break t;for(;c.sibling===null;){if(c.return===null||c.return===e)break t;c=c.return}c.sibling.return=c.return,c=c.sibling}e.stateNode=u;t:switch(Ht(u,a,n),a){case"button":case"input":case"select":case"textarea":n=!!n.autoFocus;break t;case"img":n=!0;break t;default:n=!1}n&&Je(e)}}return yt(e),qc(e,e.type,t===null?null:t.memoizedProps,e.pendingProps,l),null;case 6:if(t&&e.stateNode!=null)t.memoizedProps!==n&&Je(e);else{if(typeof n!="string"&&e.stateNode===null)throw Error(s(166));if(t=J.current,hn(e)){if(t=e.stateNode,l=e.memoizedProps,n=null,a=Ct,a!==null)switch(a.tag){case 27:case 5:n=a.memoizedProps}t[xt]=e,t=!!(t.nodeValue===l||n!==null&&n.suppressHydrationWarning===!0||yh(t.nodeValue,l)),t||cl(e,!0)}else t=Yu(t).createTextNode(n),t[xt]=e,e.stateNode=t}return yt(e),null;case 31:if(l=e.memoizedState,t===null||t.memoizedState!==null){if(n=hn(e),l!==null){if(t===null){if(!n)throw Error(s(318));if(t=e.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(s(557));t[xt]=e}else Yl(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;yt(e),t=!1}else l=wi(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=l),t=!0;if(!t)return e.flags&256?(ue(e),e):(ue(e),null);if((e.flags&128)!==0)throw Error(s(558))}return yt(e),null;case 13:if(n=e.memoizedState,t===null||t.memoizedState!==null&&t.memoizedState.dehydrated!==null){if(a=hn(e),n!==null&&n.dehydrated!==null){if(t===null){if(!a)throw Error(s(318));if(a=e.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(s(317));a[xt]=e}else Yl(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;yt(e),a=!1}else a=wi(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=a),a=!0;if(!a)return e.flags&256?(ue(e),e):(ue(e),null)}return ue(e),(e.flags&128)!==0?(e.lanes=l,e):(l=n!==null,t=t!==null&&t.memoizedState!==null,l&&(n=e.child,a=null,n.alternate!==null&&n.alternate.memoizedState!==null&&n.alternate.memoizedState.cachePool!==null&&(a=n.alternate.memoizedState.cachePool.pool),u=null,n.memoizedState!==null&&n.memoizedState.cachePool!==null&&(u=n.memoizedState.cachePool.pool),u!==a&&(n.flags|=2048)),l!==t&&l&&(e.child.flags|=8192),Eu(e,e.updateQueue),yt(e),null);case 4:return pt(),t===null&&nf(e.stateNode.containerInfo),yt(e),null;case 10:return Ve(e.type),yt(e),null;case 19:if(N(bt),n=e.memoizedState,n===null)return yt(e),null;if(a=(e.flags&128)!==0,u=n.rendering,u===null)if(a)ra(n,!1);else{if(gt!==0||t!==null&&(t.flags&128)!==0)for(t=e.child;t!==null;){if(u=su(t),u!==null){for(e.flags|=128,ra(n,!1),t=u.updateQueue,e.updateQueue=t,Eu(e,t),e.subtreeFlags=0,t=l,l=e.child;l!==null;)ws(l,t),l=l.sibling;return U(bt,bt.current&1|2),P&&Qe(e,n.treeForkCount),e.child}t=t.sibling}n.tail!==null&&Pt()>Nu&&(e.flags|=128,a=!0,ra(n,!1),e.lanes=4194304)}else{if(!a)if(t=su(u),t!==null){if(e.flags|=128,a=!0,t=t.updateQueue,e.updateQueue=t,Eu(e,t),ra(n,!0),n.tail===null&&n.tailMode==="hidden"&&!u.alternate&&!P)return yt(e),null}else 2*Pt()-n.renderingStartTime>Nu&&l!==536870912&&(e.flags|=128,a=!0,ra(n,!1),e.lanes=4194304);n.isBackwards?(u.sibling=e.child,e.child=u):(t=n.last,t!==null?t.sibling=u:e.child=u,n.last=u)}return n.tail!==null?(t=n.tail,n.rendering=t,n.tail=t.sibling,n.renderingStartTime=Pt(),t.sibling=null,l=bt.current,U(bt,a?l&1|2:l&1),P&&Qe(e,n.treeForkCount),t):(yt(e),null);case 22:case 23:return ue(e),ac(),n=e.memoizedState!==null,t!==null?t.memoizedState!==null!==n&&(e.flags|=8192):n&&(e.flags|=8192),n?(l&536870912)!==0&&(e.flags&128)===0&&(yt(e),e.subtreeFlags&6&&(e.flags|=8192)):yt(e),l=e.updateQueue,l!==null&&Eu(e,l.retryQueue),l=null,t!==null&&t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(l=t.memoizedState.cachePool.pool),n=null,e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),n!==l&&(e.flags|=2048),t!==null&&N(Xl),null;case 24:return l=null,t!==null&&(l=t.memoizedState.cache),e.memoizedState.cache!==l&&(e.flags|=2048),Ve(Et),yt(e),null;case 25:return null;case 30:return null}throw Error(s(156,e.tag))}function ky(t,e){switch(Vi(e),e.tag){case 1:return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 3:return Ve(Et),pt(),t=e.flags,(t&65536)!==0&&(t&128)===0?(e.flags=t&-65537|128,e):null;case 26:case 27:case 5:return Ca(e),null;case 31:if(e.memoizedState!==null){if(ue(e),e.alternate===null)throw Error(s(340));Yl()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 13:if(ue(e),t=e.memoizedState,t!==null&&t.dehydrated!==null){if(e.alternate===null)throw Error(s(340));Yl()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 19:return N(bt),null;case 4:return pt(),null;case 10:return Ve(e.type),null;case 22:case 23:return ue(e),ac(),t!==null&&N(Xl),t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 24:return Ve(Et),null;case 25:return null;default:return null}}function br(t,e){switch(Vi(e),e.tag){case 3:Ve(Et),pt();break;case 26:case 27:case 5:Ca(e);break;case 4:pt();break;case 31:e.memoizedState!==null&&ue(e);break;case 13:ue(e);break;case 19:N(bt);break;case 10:Ve(e.type);break;case 22:case 23:ue(e),ac(),t!==null&&N(Xl);break;case 24:Ve(Et)}}function ha(t,e){try{var l=e.updateQueue,n=l!==null?l.lastEffect:null;if(n!==null){var a=n.next;l=a;do{if((l.tag&t)===t){n=void 0;var u=l.create,c=l.inst;n=u(),c.destroy=n}l=l.next}while(l!==a)}}catch(r){it(e,e.return,r)}}function yl(t,e,l){try{var n=e.updateQueue,a=n!==null?n.lastEffect:null;if(a!==null){var u=a.next;n=u;do{if((n.tag&t)===t){var c=n.inst,r=c.destroy;if(r!==void 0){c.destroy=void 0,a=e;var h=l,p=r;try{p()}catch(_){it(a,h,_)}}}n=n.next}while(n!==u)}}catch(_){it(e,e.return,_)}}function Sr(t){var e=t.updateQueue;if(e!==null){var l=t.stateNode;try{so(e,l)}catch(n){it(t,t.return,n)}}}function _r(t,e,l){l.props=wl(t.type,t.memoizedProps),l.state=t.memoizedState;try{l.componentWillUnmount()}catch(n){it(t,e,n)}}function da(t,e){try{var l=t.ref;if(l!==null){switch(t.tag){case 26:case 27:case 5:var n=t.stateNode;break;case 30:n=t.stateNode;break;default:n=t.stateNode}typeof l=="function"?t.refCleanup=l(n):l.current=n}}catch(a){it(t,e,a)}}function Ue(t,e){var l=t.ref,n=t.refCleanup;if(l!==null)if(typeof n=="function")try{n()}catch(a){it(t,e,a)}finally{t.refCleanup=null,t=t.alternate,t!=null&&(t.refCleanup=null)}else if(typeof l=="function")try{l(null)}catch(a){it(t,e,a)}else l.current=null}function Er(t){var e=t.type,l=t.memoizedProps,n=t.stateNode;try{t:switch(e){case"button":case"input":case"select":case"textarea":l.autoFocus&&n.focus();break t;case"img":l.src?n.src=l.src:l.srcSet&&(n.srcset=l.srcSet)}}catch(a){it(t,t.return,a)}}function Hc(t,e,l){try{var n=t.stateNode;vm(n,t.type,l,e),n[wt]=e}catch(a){it(t,t.return,a)}}function Tr(t){return t.tag===5||t.tag===3||t.tag===26||t.tag===27&&_l(t.type)||t.tag===4}function Yc(t){t:for(;;){for(;t.sibling===null;){if(t.return===null||Tr(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.tag===27&&_l(t.type)||t.flags&2||t.child===null||t.tag===4)continue t;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function jc(t,e,l){var n=t.tag;if(n===5||n===6)t=t.stateNode,e?(l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l).insertBefore(t,e):(e=l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l,e.appendChild(t),l=l._reactRootContainer,l!=null||e.onclick!==null||(e.onclick=je));else if(n!==4&&(n===27&&_l(t.type)&&(l=t.stateNode,e=null),t=t.child,t!==null))for(jc(t,e,l),t=t.sibling;t!==null;)jc(t,e,l),t=t.sibling}function Tu(t,e,l){var n=t.tag;if(n===5||n===6)t=t.stateNode,e?l.insertBefore(t,e):l.appendChild(t);else if(n!==4&&(n===27&&_l(t.type)&&(l=t.stateNode),t=t.child,t!==null))for(Tu(t,e,l),t=t.sibling;t!==null;)Tu(t,e,l),t=t.sibling}function Ar(t){var e=t.stateNode,l=t.memoizedProps;try{for(var n=t.type,a=e.attributes;a.length;)e.removeAttributeNode(a[0]);Ht(e,n,l),e[xt]=t,e[wt]=l}catch(u){it(t,t.return,u)}}var ke=!1,zt=!1,Lc=!1,zr=typeof WeakSet=="function"?WeakSet:Set,Dt=null;function Wy(t,e){if(t=t.containerInfo,cf=Zu,t=Hs(t),xi(t)){if("selectionStart"in t)var l={start:t.selectionStart,end:t.selectionEnd};else t:{l=(l=t.ownerDocument)&&l.defaultView||window;var n=l.getSelection&&l.getSelection();if(n&&n.rangeCount!==0){l=n.anchorNode;var a=n.anchorOffset,u=n.focusNode;n=n.focusOffset;try{l.nodeType,u.nodeType}catch{l=null;break t}var c=0,r=-1,h=-1,p=0,_=0,O=t,b=null;e:for(;;){for(var S;O!==l||a!==0&&O.nodeType!==3||(r=c+a),O!==u||n!==0&&O.nodeType!==3||(h=c+n),O.nodeType===3&&(c+=O.nodeValue.length),(S=O.firstChild)!==null;)b=O,O=S;for(;;){if(O===t)break e;if(b===l&&++p===a&&(r=c),b===u&&++_===n&&(h=c),(S=O.nextSibling)!==null)break;O=b,b=O.parentNode}O=S}l=r===-1||h===-1?null:{start:r,end:h}}else l=null}l=l||{start:0,end:0}}else l=null;for(ff={focusedElem:t,selectionRange:l},Zu=!1,Dt=e;Dt!==null;)if(e=Dt,t=e.child,(e.subtreeFlags&1028)!==0&&t!==null)t.return=e,Dt=t;else for(;Dt!==null;){switch(e=Dt,u=e.alternate,t=e.flags,e.tag){case 0:if((t&4)!==0&&(t=e.updateQueue,t=t!==null?t.events:null,t!==null))for(l=0;l title"))),Ht(u,n,l),u[xt]=t,Rt(u),n=u;break t;case"link":var c=Uh("link","href",a).get(n+(l.href||""));if(c){for(var r=0;rot&&(c=ot,ot=L,L=c);var v=Bs(r,L),d=Bs(r,ot);if(v&&d&&(S.rangeCount!==1||S.anchorNode!==v.node||S.anchorOffset!==v.offset||S.focusNode!==d.node||S.focusOffset!==d.offset)){var g=O.createRange();g.setStart(v.node,v.offset),S.removeAllRanges(),L>ot?(S.addRange(g),S.extend(d.node,d.offset)):(g.setEnd(d.node,d.offset),S.addRange(g))}}}}for(O=[],S=r;S=S.parentNode;)S.nodeType===1&&O.push({element:S,left:S.scrollLeft,top:S.scrollTop});for(typeof r.focus=="function"&&r.focus(),r=0;rl?32:l,T.T=null,l=Kc,Kc=null;var u=pl,c=Pe;if(Nt=0,On=pl=null,Pe=0,(nt&6)!==0)throw Error(s(331));var r=nt;if(nt|=4,Hr(u.current),Cr(u,u.current,c,l),nt=r,ba(0,!1),te&&typeof te.onPostCommitFiberRoot=="function")try{te.onPostCommitFiberRoot(Yn,u)}catch{}return!0}finally{D.p=a,T.T=n,th(t,e)}}function lh(t,e,l){e=de(l,e),e=zc(t.stateNode,e,2),t=rl(t,e,2),t!==null&&(Ln(t,2),xe(t))}function it(t,e,l){if(t.tag===3)lh(t,t,l);else for(;e!==null;){if(e.tag===3){lh(e,t,l);break}else if(e.tag===1){var n=e.stateNode;if(typeof e.type.getDerivedStateFromError=="function"||typeof n.componentDidCatch=="function"&&(gl===null||!gl.has(n))){t=de(l,t),l=nr(2),n=rl(e,l,2),n!==null&&(ar(l,n,e,t),Ln(n,2),xe(n));break}}e=e.return}}function $c(t,e,l){var n=t.pingCache;if(n===null){n=t.pingCache=new Iy;var a=new Set;n.set(e,a)}else a=n.get(e),a===void 0&&(a=new Set,n.set(e,a));a.has(l)||(Gc=!0,a.add(l),t=nm.bind(null,t,e,l),e.then(t,t))}function nm(t,e,l){var n=t.pingCache;n!==null&&n.delete(e),t.pingedLanes|=t.suspendedLanes&l,t.warmLanes&=~l,ht===t&&($&l)===l&&(gt===4||gt===3&&($&62914560)===$&&300>Pt()-Ou?(nt&2)===0&&Nn(t,0):Vc|=l,zn===$&&(zn=0)),xe(t)}function nh(t,e){e===0&&(e=$f()),t=ql(t,e),t!==null&&(Ln(t,e),xe(t))}function am(t){var e=t.memoizedState,l=0;e!==null&&(l=e.retryLane),nh(t,l)}function um(t,e){var l=0;switch(t.tag){case 31:case 13:var n=t.stateNode,a=t.memoizedState;a!==null&&(l=a.retryLane);break;case 19:n=t.stateNode;break;case 22:n=t.stateNode._retryCache;break;default:throw Error(s(314))}n!==null&&n.delete(e),nh(t,l)}function im(t,e){return si(t,e)}var Cu=null,Rn=null,Fc=!1,Bu=!1,Ic=!1,Sl=0;function xe(t){t!==Rn&&t.next===null&&(Rn===null?Cu=Rn=t:Rn=Rn.next=t),Bu=!0,Fc||(Fc=!0,fm())}function ba(t,e){if(!Ic&&Bu){Ic=!0;do for(var l=!1,n=Cu;n!==null;){if(t!==0){var a=n.pendingLanes;if(a===0)var u=0;else{var c=n.suspendedLanes,r=n.pingedLanes;u=(1<<31-ee(42|t)+1)-1,u&=a&~(c&~r),u=u&201326741?u&201326741|1:u?u|2:0}u!==0&&(l=!0,ch(n,u))}else u=$,u=ja(n,n===ht?u:0,n.cancelPendingCommit!==null||n.timeoutHandle!==-1),(u&3)===0||jn(n,u)||(l=!0,ch(n,u));n=n.next}while(l);Ic=!1}}function cm(){ah()}function ah(){Bu=Fc=!1;var t=0;Sl!==0&&pm()&&(t=Sl);for(var e=Pt(),l=null,n=Cu;n!==null;){var a=n.next,u=uh(n,e);u===0?(n.next=null,l===null?Cu=a:l.next=a,a===null&&(Rn=l)):(l=n,(t!==0||(u&3)!==0)&&(Bu=!0)),n=a}Nt!==0&&Nt!==5||ba(t),Sl!==0&&(Sl=0)}function uh(t,e){for(var l=t.suspendedLanes,n=t.pingedLanes,a=t.expirationTimes,u=t.pendingLanes&-62914561;0r)break;var _=h.transferSize,O=h.initiatorType;_&&mh(O)&&(h=h.responseEnd,c+=_*(h"u"?null:document;function Nh(t,e,l){var n=Dn;if(n&&typeof e=="string"&&e){var a=re(e);a='link[rel="'+t+'"][href="'+a+'"]',typeof l=="string"&&(a+='[crossorigin="'+l+'"]'),Oh.has(a)||(Oh.add(a),t={rel:t,crossOrigin:l,href:e},n.querySelector(a)===null&&(e=n.createElement("link"),Ht(e,"link",t),Rt(e),n.head.appendChild(e)))}}function Nm(t){tl.D(t),Nh("dns-prefetch",t,null)}function Mm(t,e){tl.C(t,e),Nh("preconnect",t,e)}function Rm(t,e,l){tl.L(t,e,l);var n=Dn;if(n&&t&&e){var a='link[rel="preload"][as="'+re(e)+'"]';e==="image"&&l&&l.imageSrcSet?(a+='[imagesrcset="'+re(l.imageSrcSet)+'"]',typeof l.imageSizes=="string"&&(a+='[imagesizes="'+re(l.imageSizes)+'"]')):a+='[href="'+re(t)+'"]';var u=a;switch(e){case"style":u=Un(t);break;case"script":u=xn(t)}be.has(u)||(t=x({rel:"preload",href:e==="image"&&l&&l.imageSrcSet?void 0:t,as:e},l),be.set(u,t),n.querySelector(a)!==null||e==="style"&&n.querySelector(Ta(u))||e==="script"&&n.querySelector(Aa(u))||(e=n.createElement("link"),Ht(e,"link",t),Rt(e),n.head.appendChild(e)))}}function Dm(t,e){tl.m(t,e);var l=Dn;if(l&&t){var n=e&&typeof e.as=="string"?e.as:"script",a='link[rel="modulepreload"][as="'+re(n)+'"][href="'+re(t)+'"]',u=a;switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":u=xn(t)}if(!be.has(u)&&(t=x({rel:"modulepreload",href:t},e),be.set(u,t),l.querySelector(a)===null)){switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(l.querySelector(Aa(u)))return}n=l.createElement("link"),Ht(n,"link",t),Rt(n),l.head.appendChild(n)}}}function Um(t,e,l){tl.S(t,e,l);var n=Dn;if(n&&t){var a=Il(n).hoistableStyles,u=Un(t);e=e||"default";var c=a.get(u);if(!c){var r={loading:0,preload:null};if(c=n.querySelector(Ta(u)))r.loading=5;else{t=x({rel:"stylesheet",href:t,"data-precedence":e},l),(l=be.get(u))&&mf(t,l);var h=c=n.createElement("link");Rt(h),Ht(h,"link",t),h._p=new Promise(function(p,_){h.onload=p,h.onerror=_}),h.addEventListener("load",function(){r.loading|=1}),h.addEventListener("error",function(){r.loading|=2}),r.loading|=4,Lu(c,e,n)}c={type:"stylesheet",instance:c,count:1,state:r},a.set(u,c)}}}function xm(t,e){tl.X(t,e);var l=Dn;if(l&&t){var n=Il(l).hoistableScripts,a=xn(t),u=n.get(a);u||(u=l.querySelector(Aa(a)),u||(t=x({src:t,async:!0},e),(e=be.get(a))&&vf(t,e),u=l.createElement("script"),Rt(u),Ht(u,"link",t),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(a,u))}}function Cm(t,e){tl.M(t,e);var l=Dn;if(l&&t){var n=Il(l).hoistableScripts,a=xn(t),u=n.get(a);u||(u=l.querySelector(Aa(a)),u||(t=x({src:t,async:!0,type:"module"},e),(e=be.get(a))&&vf(t,e),u=l.createElement("script"),Rt(u),Ht(u,"link",t),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(a,u))}}function Mh(t,e,l,n){var a=(a=J.current)?ju(a):null;if(!a)throw Error(s(446));switch(t){case"meta":case"title":return null;case"style":return typeof l.precedence=="string"&&typeof l.href=="string"?(e=Un(l.href),l=Il(a).hoistableStyles,n=l.get(e),n||(n={type:"style",instance:null,count:0,state:null},l.set(e,n)),n):{type:"void",instance:null,count:0,state:null};case"link":if(l.rel==="stylesheet"&&typeof l.href=="string"&&typeof l.precedence=="string"){t=Un(l.href);var u=Il(a).hoistableStyles,c=u.get(t);if(c||(a=a.ownerDocument||a,c={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},u.set(t,c),(u=a.querySelector(Ta(t)))&&!u._p&&(c.instance=u,c.state.loading=5),be.has(t)||(l={rel:"preload",as:"style",href:l.href,crossOrigin:l.crossOrigin,integrity:l.integrity,media:l.media,hrefLang:l.hrefLang,referrerPolicy:l.referrerPolicy},be.set(t,l),u||Bm(a,t,l,c.state))),e&&n===null)throw Error(s(528,""));return c}if(e&&n!==null)throw Error(s(529,""));return null;case"script":return e=l.async,l=l.src,typeof l=="string"&&e&&typeof e!="function"&&typeof e!="symbol"?(e=xn(l),l=Il(a).hoistableScripts,n=l.get(e),n||(n={type:"script",instance:null,count:0,state:null},l.set(e,n)),n):{type:"void",instance:null,count:0,state:null};default:throw Error(s(444,t))}}function Un(t){return'href="'+re(t)+'"'}function Ta(t){return'link[rel="stylesheet"]['+t+"]"}function Rh(t){return x({},t,{"data-precedence":t.precedence,precedence:null})}function Bm(t,e,l,n){t.querySelector('link[rel="preload"][as="style"]['+e+"]")?n.loading=1:(e=t.createElement("link"),n.preload=e,e.addEventListener("load",function(){return n.loading|=1}),e.addEventListener("error",function(){return n.loading|=2}),Ht(e,"link",l),Rt(e),t.head.appendChild(e))}function xn(t){return'[src="'+re(t)+'"]'}function Aa(t){return"script[async]"+t}function Dh(t,e,l){if(e.count++,e.instance===null)switch(e.type){case"style":var n=t.querySelector('style[data-href~="'+re(l.href)+'"]');if(n)return e.instance=n,Rt(n),n;var a=x({},l,{"data-href":l.href,"data-precedence":l.precedence,href:null,precedence:null});return n=(t.ownerDocument||t).createElement("style"),Rt(n),Ht(n,"style",a),Lu(n,l.precedence,t),e.instance=n;case"stylesheet":a=Un(l.href);var u=t.querySelector(Ta(a));if(u)return e.state.loading|=4,e.instance=u,Rt(u),u;n=Rh(l),(a=be.get(a))&&mf(n,a),u=(t.ownerDocument||t).createElement("link"),Rt(u);var c=u;return c._p=new Promise(function(r,h){c.onload=r,c.onerror=h}),Ht(u,"link",n),e.state.loading|=4,Lu(u,l.precedence,t),e.instance=u;case"script":return u=xn(l.src),(a=t.querySelector(Aa(u)))?(e.instance=a,Rt(a),a):(n=l,(a=be.get(u))&&(n=x({},l),vf(n,a)),t=t.ownerDocument||t,a=t.createElement("script"),Rt(a),Ht(a,"link",n),t.head.appendChild(a),e.instance=a);case"void":return null;default:throw Error(s(443,e.type))}else e.type==="stylesheet"&&(e.state.loading&4)===0&&(n=e.instance,e.state.loading|=4,Lu(n,l.precedence,t));return e.instance}function Lu(t,e,l){for(var n=l.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=n.length?n[n.length-1]:null,u=a,c=0;c title"):null)}function qm(t,e,l){if(l===1||e.itemProp!=null)return!1;switch(t){case"meta":case"title":return!0;case"style":if(typeof e.precedence!="string"||typeof e.href!="string"||e.href==="")break;return!0;case"link":if(typeof e.rel!="string"||typeof e.href!="string"||e.href===""||e.onLoad||e.onError)break;switch(e.rel){case"stylesheet":return t=e.disabled,typeof e.precedence=="string"&&t==null;default:return!0}case"script":if(e.async&&typeof e.async!="function"&&typeof e.async!="symbol"&&!e.onLoad&&!e.onError&&e.src&&typeof e.src=="string")return!0}return!1}function Ch(t){return!(t.type==="stylesheet"&&(t.state.loading&3)===0)}function Hm(t,e,l,n){if(l.type==="stylesheet"&&(typeof n.media!="string"||matchMedia(n.media).matches!==!1)&&(l.state.loading&4)===0){if(l.instance===null){var a=Un(n.href),u=e.querySelector(Ta(a));if(u){e=u._p,e!==null&&typeof e=="object"&&typeof e.then=="function"&&(t.count++,t=Qu.bind(t),e.then(t,t)),l.state.loading|=4,l.instance=u,Rt(u);return}u=e.ownerDocument||e,n=Rh(n),(a=be.get(a))&&mf(n,a),u=u.createElement("link"),Rt(u);var c=u;c._p=new Promise(function(r,h){c.onload=r,c.onerror=h}),Ht(u,"link",n),l.instance=u}t.stylesheets===null&&(t.stylesheets=new Map),t.stylesheets.set(l,e),(e=l.state.preload)&&(l.state.loading&3)===0&&(t.count++,l=Qu.bind(t),e.addEventListener("load",l),e.addEventListener("error",l))}}var gf=0;function Ym(t,e){return t.stylesheets&&t.count===0&&Vu(t,t.stylesheets),0gf?50:800)+e);return t.unsuspend=l,function(){t.unsuspend=null,clearTimeout(n),clearTimeout(a)}}:null}function Qu(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Vu(this,this.stylesheets);else if(this.unsuspend){var t=this.unsuspend;this.unsuspend=null,t()}}}var Gu=null;function Vu(t,e){t.stylesheets=null,t.unsuspend!==null&&(t.count++,Gu=new Map,e.forEach(jm,t),Gu=null,Qu.call(t))}function jm(t,e){if(!(e.state.loading&4)){var l=Gu.get(t);if(l)var n=l.get(null);else{l=new Map,Gu.set(t,l);for(var a=t.querySelectorAll("link[data-precedence],style[data-precedence]"),u=0;u"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(o)}catch(i){console.error(i)}}return o(),Of.exports=t0(),Of.exports}var l0=e0();const Be=Object.create(null);Be.open="0";Be.close="1";Be.ping="2";Be.pong="3";Be.message="4";Be.upgrade="5";Be.noop="6";const Pu=Object.create(null);Object.keys(Be).forEach(o=>{Pu[Be[o]]=o});const Cf={type:"error",data:"parser error"},fd=typeof Blob=="function"||typeof Blob<"u"&&Object.prototype.toString.call(Blob)==="[object BlobConstructor]",sd=typeof ArrayBuffer=="function",od=o=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(o):o&&o.buffer instanceof ArrayBuffer,Xf=({type:o,data:i},f,s)=>fd&&i instanceof Blob?f?s(i):nd(i,s):sd&&(i instanceof ArrayBuffer||od(i))?f?s(i):nd(new Blob([i]),s):s(Be[o]+(i||"")),nd=(o,i)=>{const f=new FileReader;return f.onload=function(){const s=f.result.split(",")[1];i("b"+(s||""))},f.readAsDataURL(o)};function ad(o){return o instanceof Uint8Array?o:o instanceof ArrayBuffer?new Uint8Array(o):new Uint8Array(o.buffer,o.byteOffset,o.byteLength)}let Df;function n0(o,i){if(fd&&o.data instanceof Blob)return o.data.arrayBuffer().then(ad).then(i);if(sd&&(o.data instanceof ArrayBuffer||od(o.data)))return i(ad(o.data));Xf(o,!1,f=>{Df||(Df=new TextEncoder),i(Df.encode(f))})}const ud="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",xa=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(let o=0;o{let i=o.length*.75,f=o.length,s,m=0,E,R,B,M;o[o.length-1]==="="&&(i--,o[o.length-2]==="="&&i--);const A=new ArrayBuffer(i),Q=new Uint8Array(A);for(s=0;s>4,Q[m++]=(R&15)<<4|B>>2,Q[m++]=(B&3)<<6|M&63;return A},u0=typeof ArrayBuffer=="function",Qf=(o,i)=>{if(typeof o!="string")return{type:"message",data:rd(o,i)};const f=o.charAt(0);return f==="b"?{type:"message",data:i0(o.substring(1),i)}:Pu[f]?o.length>1?{type:Pu[f],data:o.substring(1)}:{type:Pu[f]}:Cf},i0=(o,i)=>{if(u0){const f=a0(o);return rd(f,i)}else return{base64:!0,data:o}},rd=(o,i)=>{switch(i){case"blob":return o instanceof Blob?o:new Blob([o]);case"arraybuffer":default:return o instanceof ArrayBuffer?o:o.buffer}},hd="",c0=(o,i)=>{const f=o.length,s=new Array(f);let m=0;o.forEach((E,R)=>{Xf(E,!1,B=>{s[R]=B,++m===f&&i(s.join(hd))})})},f0=(o,i)=>{const f=o.split(hd),s=[];for(let m=0;m{const s=f.length;let m;if(s<126)m=new Uint8Array(1),new DataView(m.buffer).setUint8(0,s);else if(s<65536){m=new Uint8Array(3);const E=new DataView(m.buffer);E.setUint8(0,126),E.setUint16(1,s)}else{m=new Uint8Array(9);const E=new DataView(m.buffer);E.setUint8(0,127),E.setBigUint64(1,BigInt(s))}o.data&&typeof o.data!="string"&&(m[0]|=128),i.enqueue(m),i.enqueue(f)})}})}let Uf;function Fu(o){return o.reduce((i,f)=>i+f.length,0)}function Iu(o,i){if(o[0].length===i)return o.shift();const f=new Uint8Array(i);let s=0;for(let m=0;mMath.pow(2,21)-1){B.enqueue(Cf);break}m=Q*Math.pow(2,32)+A.getUint32(4),s=3}else{if(Fu(f)o){B.enqueue(Cf);break}}}})}const dd=4;function Ot(o){if(o)return r0(o)}function r0(o){for(var i in Ot.prototype)o[i]=Ot.prototype[i];return o}Ot.prototype.on=Ot.prototype.addEventListener=function(o,i){return this._callbacks=this._callbacks||{},(this._callbacks["$"+o]=this._callbacks["$"+o]||[]).push(i),this};Ot.prototype.once=function(o,i){function f(){this.off(o,f),i.apply(this,arguments)}return f.fn=i,this.on(o,f),this};Ot.prototype.off=Ot.prototype.removeListener=Ot.prototype.removeAllListeners=Ot.prototype.removeEventListener=function(o,i){if(this._callbacks=this._callbacks||{},arguments.length==0)return this._callbacks={},this;var f=this._callbacks["$"+o];if(!f)return this;if(arguments.length==1)return delete this._callbacks["$"+o],this;for(var s,m=0;mPromise.resolve().then(i):(i,f)=>f(i,0),Se=typeof self<"u"?self:typeof window<"u"?window:Function("return this")(),h0="arraybuffer";function yd(o,...i){return i.reduce((f,s)=>(o.hasOwnProperty(s)&&(f[s]=o[s]),f),{})}const d0=Se.setTimeout,y0=Se.clearTimeout;function ai(o,i){i.useNativeTimers?(o.setTimeoutFn=d0.bind(Se),o.clearTimeoutFn=y0.bind(Se)):(o.setTimeoutFn=Se.setTimeout.bind(Se),o.clearTimeoutFn=Se.clearTimeout.bind(Se))}const m0=1.33;function v0(o){return typeof o=="string"?g0(o):Math.ceil((o.byteLength||o.size)*m0)}function g0(o){let i=0,f=0;for(let s=0,m=o.length;s=57344?f+=3:(s++,f+=4);return f}function md(){return Date.now().toString(36).substring(3)+Math.random().toString(36).substring(2,5)}function p0(o){let i="";for(let f in o)o.hasOwnProperty(f)&&(i.length&&(i+="&"),i+=encodeURIComponent(f)+"="+encodeURIComponent(o[f]));return i}function b0(o){let i={},f=o.split("&");for(let s=0,m=f.length;s{this.readyState="paused",i()};if(this._polling||!this.writable){let s=0;this._polling&&(s++,this.once("pollComplete",function(){--s||f()})),this.writable||(s++,this.once("drain",function(){--s||f()}))}else f()}_poll(){this._polling=!0,this.doPoll(),this.emitReserved("poll")}onData(i){const f=s=>{if(this.readyState==="opening"&&s.type==="open"&&this.onOpen(),s.type==="close")return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(s)};f0(i,this.socket.binaryType).forEach(f),this.readyState!=="closed"&&(this._polling=!1,this.emitReserved("pollComplete"),this.readyState==="open"&&this._poll())}doClose(){const i=()=>{this.write([{type:"close"}])};this.readyState==="open"?i():this.once("open",i)}write(i){this.writable=!1,c0(i,f=>{this.doWrite(f,()=>{this.writable=!0,this.emitReserved("drain")})})}uri(){const i=this.opts.secure?"https":"http",f=this.query||{};return this.opts.timestampRequests!==!1&&(f[this.opts.timestampParam]=md()),!this.supportsBinary&&!f.sid&&(f.b64=1),this.createUri(i,f)}}let vd=!1;try{vd=typeof XMLHttpRequest<"u"&&"withCredentials"in new XMLHttpRequest}catch{}const E0=vd;function T0(){}class A0 extends _0{constructor(i){if(super(i),typeof location<"u"){const f=location.protocol==="https:";let s=location.port;s||(s=f?"443":"80"),this.xd=typeof location<"u"&&i.hostname!==location.hostname||s!==i.port}}doWrite(i,f){const s=this.request({method:"POST",data:i});s.on("success",f),s.on("error",(m,E)=>{this.onError("xhr post error",m,E)})}doPoll(){const i=this.request();i.on("data",this.onData.bind(this)),i.on("error",(f,s)=>{this.onError("xhr poll error",f,s)}),this.pollXhr=i}}class Ce extends Ot{constructor(i,f,s){super(),this.createRequest=i,ai(this,s),this._opts=s,this._method=s.method||"GET",this._uri=f,this._data=s.data!==void 0?s.data:null,this._create()}_create(){var i;const f=yd(this._opts,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");f.xdomain=!!this._opts.xd;const s=this._xhr=this.createRequest(f);try{s.open(this._method,this._uri,!0);try{if(this._opts.extraHeaders){s.setDisableHeaderCheck&&s.setDisableHeaderCheck(!0);for(let m in this._opts.extraHeaders)this._opts.extraHeaders.hasOwnProperty(m)&&s.setRequestHeader(m,this._opts.extraHeaders[m])}}catch{}if(this._method==="POST")try{s.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch{}try{s.setRequestHeader("Accept","*/*")}catch{}(i=this._opts.cookieJar)===null||i===void 0||i.addCookies(s),"withCredentials"in s&&(s.withCredentials=this._opts.withCredentials),this._opts.requestTimeout&&(s.timeout=this._opts.requestTimeout),s.onreadystatechange=()=>{var m;s.readyState===3&&((m=this._opts.cookieJar)===null||m===void 0||m.parseCookies(s.getResponseHeader("set-cookie"))),s.readyState===4&&(s.status===200||s.status===1223?this._onLoad():this.setTimeoutFn(()=>{this._onError(typeof s.status=="number"?s.status:0)},0))},s.send(this._data)}catch(m){this.setTimeoutFn(()=>{this._onError(m)},0);return}typeof document<"u"&&(this._index=Ce.requestsCount++,Ce.requests[this._index]=this)}_onError(i){this.emitReserved("error",i,this._xhr),this._cleanup(!0)}_cleanup(i){if(!(typeof this._xhr>"u"||this._xhr===null)){if(this._xhr.onreadystatechange=T0,i)try{this._xhr.abort()}catch{}typeof document<"u"&&delete Ce.requests[this._index],this._xhr=null}}_onLoad(){const i=this._xhr.responseText;i!==null&&(this.emitReserved("data",i),this.emitReserved("success"),this._cleanup())}abort(){this._cleanup()}}Ce.requestsCount=0;Ce.requests={};if(typeof document<"u"){if(typeof attachEvent=="function")attachEvent("onunload",id);else if(typeof addEventListener=="function"){const o="onpagehide"in Se?"pagehide":"unload";addEventListener(o,id,!1)}}function id(){for(let o in Ce.requests)Ce.requests.hasOwnProperty(o)&&Ce.requests[o].abort()}const z0=(function(){const o=gd({xdomain:!1});return o&&o.responseType!==null})();class O0 extends A0{constructor(i){super(i);const f=i&&i.forceBase64;this.supportsBinary=z0&&!f}request(i={}){return Object.assign(i,{xd:this.xd},this.opts),new Ce(gd,this.uri(),i)}}function gd(o){const i=o.xdomain;try{if(typeof XMLHttpRequest<"u"&&(!i||E0))return new XMLHttpRequest}catch{}if(!i)try{return new Se[["Active"].concat("Object").join("X")]("Microsoft.XMLHTTP")}catch{}}const pd=typeof navigator<"u"&&typeof navigator.product=="string"&&navigator.product.toLowerCase()==="reactnative";class N0 extends Gf{get name(){return"websocket"}doOpen(){const i=this.uri(),f=this.opts.protocols,s=pd?{}:yd(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(s.headers=this.opts.extraHeaders);try{this.ws=this.createSocket(i,f,s)}catch(m){return this.emitReserved("error",m)}this.ws.binaryType=this.socket.binaryType,this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=i=>this.onClose({description:"websocket connection closed",context:i}),this.ws.onmessage=i=>this.onData(i.data),this.ws.onerror=i=>this.onError("websocket error",i)}write(i){this.writable=!1;for(let f=0;f{try{this.doWrite(s,E)}catch{}m&&ni(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){typeof this.ws<"u"&&(this.ws.onerror=()=>{},this.ws.close(),this.ws=null)}uri(){const i=this.opts.secure?"wss":"ws",f=this.query||{};return this.opts.timestampRequests&&(f[this.opts.timestampParam]=md()),this.supportsBinary||(f.b64=1),this.createUri(i,f)}}const xf=Se.WebSocket||Se.MozWebSocket;class M0 extends N0{createSocket(i,f,s){return pd?new xf(i,f,s):f?new xf(i,f):new xf(i)}doWrite(i,f){this.ws.send(f)}}class R0 extends Gf{get name(){return"webtransport"}doOpen(){try{this._transport=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name])}catch(i){return this.emitReserved("error",i)}this._transport.closed.then(()=>{this.onClose()}).catch(i=>{this.onError("webtransport error",i)}),this._transport.ready.then(()=>{this._transport.createBidirectionalStream().then(i=>{const f=o0(Number.MAX_SAFE_INTEGER,this.socket.binaryType),s=i.readable.pipeThrough(f).getReader(),m=s0();m.readable.pipeTo(i.writable),this._writer=m.writable.getWriter();const E=()=>{s.read().then(({done:B,value:M})=>{B||(this.onPacket(M),E())}).catch(B=>{})};E();const R={type:"open"};this.query.sid&&(R.data=`{"sid":"${this.query.sid}"}`),this._writer.write(R).then(()=>this.onOpen())})})}write(i){this.writable=!1;for(let f=0;f{m&&ni(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){var i;(i=this._transport)===null||i===void 0||i.close()}}const D0={websocket:M0,webtransport:R0,polling:O0},U0=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,x0=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function Bf(o){if(o.length>8e3)throw"URI too long";const i=o,f=o.indexOf("["),s=o.indexOf("]");f!=-1&&s!=-1&&(o=o.substring(0,f)+o.substring(f,s).replace(/:/g,";")+o.substring(s,o.length));let m=U0.exec(o||""),E={},R=14;for(;R--;)E[x0[R]]=m[R]||"";return f!=-1&&s!=-1&&(E.source=i,E.host=E.host.substring(1,E.host.length-1).replace(/;/g,":"),E.authority=E.authority.replace("[","").replace("]","").replace(/;/g,":"),E.ipv6uri=!0),E.pathNames=C0(E,E.path),E.queryKey=B0(E,E.query),E}function C0(o,i){const f=/\/{2,9}/g,s=i.replace(f,"/").split("/");return(i.slice(0,1)=="/"||i.length===0)&&s.splice(0,1),i.slice(-1)=="/"&&s.splice(s.length-1,1),s}function B0(o,i){const f={};return i.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,function(s,m,E){m&&(f[m]=E)}),f}const qf=typeof addEventListener=="function"&&typeof removeEventListener=="function",ti=[];qf&&addEventListener("offline",()=>{ti.forEach(o=>o())},!1);class Nl extends Ot{constructor(i,f){if(super(),this.binaryType=h0,this.writeBuffer=[],this._prevBufferLen=0,this._pingInterval=-1,this._pingTimeout=-1,this._maxPayload=-1,this._pingTimeoutTime=1/0,i&&typeof i=="object"&&(f=i,i=null),i){const s=Bf(i);f.hostname=s.host,f.secure=s.protocol==="https"||s.protocol==="wss",f.port=s.port,s.query&&(f.query=s.query)}else f.host&&(f.hostname=Bf(f.host).host);ai(this,f),this.secure=f.secure!=null?f.secure:typeof location<"u"&&location.protocol==="https:",f.hostname&&!f.port&&(f.port=this.secure?"443":"80"),this.hostname=f.hostname||(typeof location<"u"?location.hostname:"localhost"),this.port=f.port||(typeof location<"u"&&location.port?location.port:this.secure?"443":"80"),this.transports=[],this._transportsByName={},f.transports.forEach(s=>{const m=s.prototype.name;this.transports.push(m),this._transportsByName[m]=s}),this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},f),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),typeof this.opts.query=="string"&&(this.opts.query=b0(this.opts.query)),qf&&(this.opts.closeOnBeforeunload&&(this._beforeunloadEventListener=()=>{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this._beforeunloadEventListener,!1)),this.hostname!=="localhost"&&(this._offlineEventListener=()=>{this._onClose("transport close",{description:"network connection lost"})},ti.push(this._offlineEventListener))),this.opts.withCredentials&&(this._cookieJar=void 0),this._open()}createTransport(i){const f=Object.assign({},this.opts.query);f.EIO=dd,f.transport=i,this.id&&(f.sid=this.id);const s=Object.assign({},this.opts,{query:f,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[i]);return new this._transportsByName[i](s)}_open(){if(this.transports.length===0){this.setTimeoutFn(()=>{this.emitReserved("error","No transports available")},0);return}const i=this.opts.rememberUpgrade&&Nl.priorWebsocketSuccess&&this.transports.indexOf("websocket")!==-1?"websocket":this.transports[0];this.readyState="opening";const f=this.createTransport(i);f.open(),this.setTransport(f)}setTransport(i){this.transport&&this.transport.removeAllListeners(),this.transport=i,i.on("drain",this._onDrain.bind(this)).on("packet",this._onPacket.bind(this)).on("error",this._onError.bind(this)).on("close",f=>this._onClose("transport close",f))}onOpen(){this.readyState="open",Nl.priorWebsocketSuccess=this.transport.name==="websocket",this.emitReserved("open"),this.flush()}_onPacket(i){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing")switch(this.emitReserved("packet",i),this.emitReserved("heartbeat"),i.type){case"open":this.onHandshake(JSON.parse(i.data));break;case"ping":this._sendPacket("pong"),this.emitReserved("ping"),this.emitReserved("pong"),this._resetPingTimeout();break;case"error":const f=new Error("server error");f.code=i.data,this._onError(f);break;case"message":this.emitReserved("data",i.data),this.emitReserved("message",i.data);break}}onHandshake(i){this.emitReserved("handshake",i),this.id=i.sid,this.transport.query.sid=i.sid,this._pingInterval=i.pingInterval,this._pingTimeout=i.pingTimeout,this._maxPayload=i.maxPayload,this.onOpen(),this.readyState!=="closed"&&this._resetPingTimeout()}_resetPingTimeout(){this.clearTimeoutFn(this._pingTimeoutTimer);const i=this._pingInterval+this._pingTimeout;this._pingTimeoutTime=Date.now()+i,this._pingTimeoutTimer=this.setTimeoutFn(()=>{this._onClose("ping timeout")},i),this.opts.autoUnref&&this._pingTimeoutTimer.unref()}_onDrain(){this.writeBuffer.splice(0,this._prevBufferLen),this._prevBufferLen=0,this.writeBuffer.length===0?this.emitReserved("drain"):this.flush()}flush(){if(this.readyState!=="closed"&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){const i=this._getWritablePackets();this.transport.send(i),this._prevBufferLen=i.length,this.emitReserved("flush")}}_getWritablePackets(){if(!(this._maxPayload&&this.transport.name==="polling"&&this.writeBuffer.length>1))return this.writeBuffer;let f=1;for(let s=0;s0&&f>this._maxPayload)return this.writeBuffer.slice(0,s);f+=2}return this.writeBuffer}_hasPingExpired(){if(!this._pingTimeoutTime)return!0;const i=Date.now()>this._pingTimeoutTime;return i&&(this._pingTimeoutTime=0,ni(()=>{this._onClose("ping timeout")},this.setTimeoutFn)),i}write(i,f,s){return this._sendPacket("message",i,f,s),this}send(i,f,s){return this._sendPacket("message",i,f,s),this}_sendPacket(i,f,s,m){if(typeof f=="function"&&(m=f,f=void 0),typeof s=="function"&&(m=s,s=null),this.readyState==="closing"||this.readyState==="closed")return;s=s||{},s.compress=s.compress!==!1;const E={type:i,data:f,options:s};this.emitReserved("packetCreate",E),this.writeBuffer.push(E),m&&this.once("flush",m),this.flush()}close(){const i=()=>{this._onClose("forced close"),this.transport.close()},f=()=>{this.off("upgrade",f),this.off("upgradeError",f),i()},s=()=>{this.once("upgrade",f),this.once("upgradeError",f)};return(this.readyState==="opening"||this.readyState==="open")&&(this.readyState="closing",this.writeBuffer.length?this.once("drain",()=>{this.upgrading?s():i()}):this.upgrading?s():i()),this}_onError(i){if(Nl.priorWebsocketSuccess=!1,this.opts.tryAllTransports&&this.transports.length>1&&this.readyState==="opening")return this.transports.shift(),this._open();this.emitReserved("error",i),this._onClose("transport error",i)}_onClose(i,f){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing"){if(this.clearTimeoutFn(this._pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),qf&&(this._beforeunloadEventListener&&removeEventListener("beforeunload",this._beforeunloadEventListener,!1),this._offlineEventListener)){const s=ti.indexOf(this._offlineEventListener);s!==-1&&ti.splice(s,1)}this.readyState="closed",this.id=null,this.emitReserved("close",i,f),this.writeBuffer=[],this._prevBufferLen=0}}}Nl.protocol=dd;class q0 extends Nl{constructor(){super(...arguments),this._upgrades=[]}onOpen(){if(super.onOpen(),this.readyState==="open"&&this.opts.upgrade)for(let i=0;i{s||(f.send([{type:"ping",data:"probe"}]),f.once("packet",x=>{if(!s)if(x.type==="pong"&&x.data==="probe"){if(this.upgrading=!0,this.emitReserved("upgrading",f),!f)return;Nl.priorWebsocketSuccess=f.name==="websocket",this.transport.pause(()=>{s||this.readyState!=="closed"&&(Q(),this.setTransport(f),f.send([{type:"upgrade"}]),this.emitReserved("upgrade",f),f=null,this.upgrading=!1,this.flush())})}else{const K=new Error("probe error");K.transport=f.name,this.emitReserved("upgradeError",K)}}))};function E(){s||(s=!0,Q(),f.close(),f=null)}const R=x=>{const K=new Error("probe error: "+x);K.transport=f.name,E(),this.emitReserved("upgradeError",K)};function B(){R("transport closed")}function M(){R("socket closed")}function A(x){f&&x.name!==f.name&&E()}const Q=()=>{f.removeListener("open",m),f.removeListener("error",R),f.removeListener("close",B),this.off("close",M),this.off("upgrading",A)};f.once("open",m),f.once("error",R),f.once("close",B),this.once("close",M),this.once("upgrading",A),this._upgrades.indexOf("webtransport")!==-1&&i!=="webtransport"?this.setTimeoutFn(()=>{s||f.open()},200):f.open()}onHandshake(i){this._upgrades=this._filterUpgrades(i.upgrades),super.onHandshake(i)}_filterUpgrades(i){const f=[];for(let s=0;sD0[m]).filter(m=>!!m)),super(i,s)}};function Y0(o,i="",f){let s=o;f=f||typeof location<"u"&&location,o==null&&(o=f.protocol+"//"+f.host),typeof o=="string"&&(o.charAt(0)==="/"&&(o.charAt(1)==="/"?o=f.protocol+o:o=f.host+o),/^(https?|wss?):\/\//.test(o)||(typeof f<"u"?o=f.protocol+"//"+o:o="https://"+o),s=Bf(o)),s.port||(/^(http|ws)$/.test(s.protocol)?s.port="80":/^(http|ws)s$/.test(s.protocol)&&(s.port="443")),s.path=s.path||"/";const E=s.host.indexOf(":")!==-1?"["+s.host+"]":s.host;return s.id=s.protocol+"://"+E+":"+s.port+i,s.href=s.protocol+"://"+E+(f&&f.port===s.port?"":":"+s.port),s}const j0=typeof ArrayBuffer=="function",L0=o=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(o):o.buffer instanceof ArrayBuffer,bd=Object.prototype.toString,X0=typeof Blob=="function"||typeof Blob<"u"&&bd.call(Blob)==="[object BlobConstructor]",Q0=typeof File=="function"||typeof File<"u"&&bd.call(File)==="[object FileConstructor]";function Vf(o){return j0&&(o instanceof ArrayBuffer||L0(o))||X0&&o instanceof Blob||Q0&&o instanceof File}function ei(o,i){if(!o||typeof o!="object")return!1;if(Array.isArray(o)){for(let f=0,s=o.length;f=0&&o.num{delete this.acks[i];for(let B=0;B{this.io.clearTimeoutFn(E),f.apply(this,B)};R.withError=!0,this.acks[i]=R}emitWithAck(i,...f){return new Promise((s,m)=>{const E=(R,B)=>R?m(R):s(B);E.withError=!0,f.push(E),this.emit(i,...f)})}_addToQueue(i){let f;typeof i[i.length-1]=="function"&&(f=i.pop());const s={id:this._queueSeq++,tryCount:0,pending:!1,args:i,flags:Object.assign({fromQueue:!0},this.flags)};i.push((m,...E)=>s!==this._queue[0]?void 0:(m!==null?s.tryCount>this._opts.retries&&(this._queue.shift(),f&&f(m)):(this._queue.shift(),f&&f(null,...E)),s.pending=!1,this._drainQueue())),this._queue.push(s),this._drainQueue()}_drainQueue(i=!1){if(!this.connected||this._queue.length===0)return;const f=this._queue[0];f.pending&&!i||(f.pending=!0,f.tryCount++,this.flags=f.flags,this.emit.apply(this,f.args))}packet(i){i.nsp=this.nsp,this.io._packet(i)}onopen(){typeof this.auth=="function"?this.auth(i=>{this._sendConnectPacket(i)}):this._sendConnectPacket(this.auth)}_sendConnectPacket(i){this.packet({type:tt.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},i):i})}onerror(i){this.connected||this.emitReserved("connect_error",i)}onclose(i,f){this.connected=!1,delete this.id,this.emitReserved("disconnect",i,f),this._clearAcks()}_clearAcks(){Object.keys(this.acks).forEach(i=>{if(!this.sendBuffer.some(s=>String(s.id)===i)){const s=this.acks[i];delete this.acks[i],s.withError&&s.call(this,new Error("socket has been disconnected"))}})}onpacket(i){if(i.nsp===this.nsp)switch(i.type){case tt.CONNECT:i.data&&i.data.sid?this.onconnect(i.data.sid,i.data.pid):this.emitReserved("connect_error",new Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case tt.EVENT:case tt.BINARY_EVENT:this.onevent(i);break;case tt.ACK:case tt.BINARY_ACK:this.onack(i);break;case tt.DISCONNECT:this.ondisconnect();break;case tt.CONNECT_ERROR:this.destroy();const s=new Error(i.data.message);s.data=i.data.data,this.emitReserved("connect_error",s);break}}onevent(i){const f=i.data||[];i.id!=null&&f.push(this.ack(i.id)),this.connected?this.emitEvent(f):this.receiveBuffer.push(Object.freeze(f))}emitEvent(i){if(this._anyListeners&&this._anyListeners.length){const f=this._anyListeners.slice();for(const s of f)s.apply(this,i)}super.emit.apply(this,i),this._pid&&i.length&&typeof i[i.length-1]=="string"&&(this._lastOffset=i[i.length-1])}ack(i){const f=this;let s=!1;return function(...m){s||(s=!0,f.packet({type:tt.ACK,id:i,data:m}))}}onack(i){const f=this.acks[i.id];typeof f=="function"&&(delete this.acks[i.id],f.withError&&i.data.unshift(null),f.apply(this,i.data))}onconnect(i,f){this.id=i,this.recovered=f&&this._pid===f,this._pid=f,this.connected=!0,this.emitBuffered(),this.emitReserved("connect"),this._drainQueue(!0)}emitBuffered(){this.receiveBuffer.forEach(i=>this.emitEvent(i)),this.receiveBuffer=[],this.sendBuffer.forEach(i=>{this.notifyOutgoingListeners(i),this.packet(i)}),this.sendBuffer=[]}ondisconnect(){this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach(i=>i()),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&this.packet({type:tt.DISCONNECT}),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(i){return this.flags.compress=i,this}get volatile(){return this.flags.volatile=!0,this}timeout(i){return this.flags.timeout=i,this}onAny(i){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(i),this}prependAny(i){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(i),this}offAny(i){if(!this._anyListeners)return this;if(i){const f=this._anyListeners;for(let s=0;s0&&o.jitter<=1?o.jitter:0,this.attempts=0}Bn.prototype.duration=function(){var o=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var i=Math.random(),f=Math.floor(i*this.jitter*o);o=(Math.floor(i*10)&1)==0?o-f:o+f}return Math.min(o,this.max)|0};Bn.prototype.reset=function(){this.attempts=0};Bn.prototype.setMin=function(o){this.ms=o};Bn.prototype.setMax=function(o){this.max=o};Bn.prototype.setJitter=function(o){this.jitter=o};class jf extends Ot{constructor(i,f){var s;super(),this.nsps={},this.subs=[],i&&typeof i=="object"&&(f=i,i=void 0),f=f||{},f.path=f.path||"/socket.io",this.opts=f,ai(this,f),this.reconnection(f.reconnection!==!1),this.reconnectionAttempts(f.reconnectionAttempts||1/0),this.reconnectionDelay(f.reconnectionDelay||1e3),this.reconnectionDelayMax(f.reconnectionDelayMax||5e3),this.randomizationFactor((s=f.randomizationFactor)!==null&&s!==void 0?s:.5),this.backoff=new Bn({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(f.timeout==null?2e4:f.timeout),this._readyState="closed",this.uri=i;const m=f.parser||k0;this.encoder=new m.Encoder,this.decoder=new m.Decoder,this._autoConnect=f.autoConnect!==!1,this._autoConnect&&this.open()}reconnection(i){return arguments.length?(this._reconnection=!!i,i||(this.skipReconnect=!0),this):this._reconnection}reconnectionAttempts(i){return i===void 0?this._reconnectionAttempts:(this._reconnectionAttempts=i,this)}reconnectionDelay(i){var f;return i===void 0?this._reconnectionDelay:(this._reconnectionDelay=i,(f=this.backoff)===null||f===void 0||f.setMin(i),this)}randomizationFactor(i){var f;return i===void 0?this._randomizationFactor:(this._randomizationFactor=i,(f=this.backoff)===null||f===void 0||f.setJitter(i),this)}reconnectionDelayMax(i){var f;return i===void 0?this._reconnectionDelayMax:(this._reconnectionDelayMax=i,(f=this.backoff)===null||f===void 0||f.setMax(i),this)}timeout(i){return arguments.length?(this._timeout=i,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&this.backoff.attempts===0&&this.reconnect()}open(i){if(~this._readyState.indexOf("open"))return this;this.engine=new H0(this.uri,this.opts);const f=this.engine,s=this;this._readyState="opening",this.skipReconnect=!1;const m=ze(f,"open",function(){s.onopen(),i&&i()}),E=B=>{this.cleanup(),this._readyState="closed",this.emitReserved("error",B),i?i(B):this.maybeReconnectOnOpen()},R=ze(f,"error",E);if(this._timeout!==!1){const B=this._timeout,M=this.setTimeoutFn(()=>{m(),E(new Error("timeout")),f.close()},B);this.opts.autoUnref&&M.unref(),this.subs.push(()=>{this.clearTimeoutFn(M)})}return this.subs.push(m),this.subs.push(R),this}connect(i){return this.open(i)}onopen(){this.cleanup(),this._readyState="open",this.emitReserved("open");const i=this.engine;this.subs.push(ze(i,"ping",this.onping.bind(this)),ze(i,"data",this.ondata.bind(this)),ze(i,"error",this.onerror.bind(this)),ze(i,"close",this.onclose.bind(this)),ze(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(i){try{this.decoder.add(i)}catch(f){this.onclose("parse error",f)}}ondecoded(i){ni(()=>{this.emitReserved("packet",i)},this.setTimeoutFn)}onerror(i){this.emitReserved("error",i)}socket(i,f){let s=this.nsps[i];return s?this._autoConnect&&!s.active&&s.connect():(s=new Sd(this,i,f),this.nsps[i]=s),s}_destroy(i){const f=Object.keys(this.nsps);for(const s of f)if(this.nsps[s].active)return;this._close()}_packet(i){const f=this.encoder.encode(i);for(let s=0;si()),this.subs.length=0,this.decoder.destroy()}_close(){this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close")}disconnect(){return this._close()}onclose(i,f){var s;this.cleanup(),(s=this.engine)===null||s===void 0||s.close(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",i,f),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;const i=this;if(this.backoff.attempts>=this._reconnectionAttempts)this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{const f=this.backoff.duration();this._reconnecting=!0;const s=this.setTimeoutFn(()=>{i.skipReconnect||(this.emitReserved("reconnect_attempt",i.backoff.attempts),!i.skipReconnect&&i.open(m=>{m?(i._reconnecting=!1,i.reconnect(),this.emitReserved("reconnect_error",m)):i.onreconnect()}))},f);this.opts.autoUnref&&s.unref(),this.subs.push(()=>{this.clearTimeoutFn(s)})}}onreconnect(){const i=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",i)}}const Ua={};function li(o,i){typeof o=="object"&&(i=o,o=void 0),i=i||{};const f=Y0(o,i.path||"/socket.io"),s=f.source,m=f.id,E=f.path,R=Ua[m]&&E in Ua[m].nsps,B=i.forceNew||i["force new connection"]||i.multiplex===!1||R;let M;return B?M=new jf(s,i):(Ua[m]||(Ua[m]=new jf(s,i)),M=Ua[m]),f.query&&!i.query&&(i.query=f.queryKey),M.socket(f.path,i)}Object.assign(li,{Manager:jf,Socket:Sd,io:li,connect:li});console.log("socket.io client loaded");const $0="http://192.168.0.86:8080",_d=li($0,{transports:["websocket"],query:{role:"user"}}),Ed=Mt.createContext(_d),F0=({children:o})=>Y.jsx(Ed.Provider,{value:_d,children:o}),I0=()=>Mt.useContext(Ed),Td=Mt.createContext({connected:!1,session:null,logs:[],login:async()=>{},setRole:async()=>{},requestControl:async()=>{},releaseControl:async()=>{},subscribeAll:async()=>{}});function P0(o){return Mt.useCallback((i,f={})=>new Promise((s,m)=>{o.emit(i,f,(E={})=>{E.error?m(new Error(E.error)):s(E)})}),[o])}function tv({children:o}){const i=I0(),f=P0(i),[s,m]=Mt.useState(null),[E,R]=Mt.useState([]),[B,M]=Mt.useState(i.connected);Mt.useEffect(()=>{const x=()=>M(!0),K=()=>M(!1);return i.on("connect",x),i.on("disconnect",K),()=>{i.off("connect",x),i.off("disconnect",K)}},[i]),Mt.useEffect(()=>{function x(_t){m(_t)}function K(_t=[]){R(_t)}function Yt(_t){R(Ut=>[...Ut.slice(-199),_t])}return i.on("session:sync",x),i.on("log:init",K),i.on("log:entry",Yt),()=>{i.off("session:sync",x),i.off("log:init",K),i.off("log:entry",Yt)}},[i]);const A=Mt.useMemo(()=>({login:(x,K)=>f("auth:login",{username:x,password:K}),setRole:x=>f("session:setRole",{role:x}),requestControl:(x,K={})=>f("session:requestControl",{roverId:x,...K}),releaseControl:x=>f("session:releaseControl",{roverId:x}),subscribeAll:()=>f("session:subscribeAll")}),[f]),Q=Mt.useMemo(()=>({connected:B,session:s,logs:E,...A}),[A,B,E,s]);return Y.jsx(Td.Provider,{value:Q,children:o})}function qn(){return Mt.useContext(Td)}function ev({connected:o,role:i,mode:f}){const s=o?"bg-emerald-500/20 text-emerald-300":"bg-red-500/20 text-red-200";return Y.jsxs("div",{className:"flex flex-wrap items-center gap-3 text-sm",children:[Y.jsx("span",{className:`rounded-full px-3 py-1 font-medium ${s}`,children:o?"Connected":"Disconnected"}),Y.jsxs("span",{className:"rounded-full bg-slate-800/80 px-3 py-1 text-slate-200",children:["Role: ",i||"unknown"]}),Y.jsxs("span",{className:"rounded-full bg-slate-800/80 px-3 py-1 text-slate-200",children:["Mode: ",f||"--"]})]})}function lv(){const{logs:o}=qn();return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/70 p-4",children:[Y.jsxs("header",{className:"mb-3 flex items-center justify-between",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Server logs"}),Y.jsxs("span",{className:"text-xs uppercase tracking-[0.2em] text-slate-500",children:[o.length," entries"]})]}),Y.jsx("div",{className:"h-64 overflow-y-auto rounded-xl bg-slate-950/40 p-3 text-xs font-mono text-slate-300",children:o.length===0?Y.jsx("p",{children:"No logs yet."}):o.slice().reverse().map(i=>Y.jsxs("div",{className:"mb-2",children:[Y.jsx("span",{className:"text-slate-500",children:i.timestamp})," ",Y.jsxs("span",{className:"text-cyan-300",children:["[",i.level,"]"]})," ",i.label&&Y.jsxs("span",{className:"text-pink-300",children:["[",i.label,"]"]})," ",Y.jsx("span",{children:i.message})]},i.id))})]})}function nv(){const{session:o,requestControl:i}=qn(),f=o?.roster??[],[s,m]=Mt.useState({});async function E(R){m(B=>({...B,[R]:!0}));try{await i(R)}catch(B){alert(B.message)}finally{m(B=>({...B,[R]:!1}))}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Rovers"}),Y.jsxs("div",{className:"mt-4 space-y-3",children:[f.length===0&&Y.jsx("p",{className:"text-slate-400",children:"No rovers registered."}),f.map(R=>Y.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-3 rounded-xl bg-slate-950/40 px-4 py-3",children:[Y.jsxs("div",{children:[Y.jsx("p",{className:"text-white",children:R.name}),Y.jsxs("p",{className:"text-xs text-slate-400",children:["Locked: ",R.locked?"yes":"no"]})]}),Y.jsx("button",{type:"button",onClick:()=>E(R.id),disabled:s[R.id],className:"rounded-full bg-blue-600 px-4 py-1 text-sm font-semibold text-white disabled:opacity-50",children:s[R.id]?"Requesting…":"Request control"})]},R.id))]})]})}function av(){const{session:o,releaseControl:i}=qn(),f=o?.assignment,s=f?.roverId,[m,E]=Mt.useState(!1);async function R(){if(s){E(!0);try{await i(s)}catch(B){alert(B.message)}finally{E(!1)}}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Assignment"}),s?Y.jsxs("div",{className:"mt-4 space-y-3",children:[Y.jsxs("p",{className:"text-slate-300",children:["Currently driving rover ",s]}),Y.jsx("button",{type:"button",onClick:R,disabled:m,className:"rounded-full bg-red-600 px-4 py-1 text-sm font-semibold text-white disabled:opacity-50",children:m?"Releasing…":"Release control"})]}):Y.jsxs("div",{className:"mt-4 text-slate-400",children:[Y.jsxs("p",{children:["Status: ",f?.status??"not assigned"]}),f?.queuePosition&&Y.jsxs("p",{children:["Queue position: ",f.queuePosition]})]})]})}function uv(){const{session:o}=qn(),i=Mt.useMemo(()=>JSON.stringify(o??{},null,2),[o]);return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Session snapshot"}),Y.jsx("pre",{className:"mt-4 max-h-64 overflow-y-auto text-sm text-teal-200",children:i})]})}function iv(){const{login:o,setRole:i}=qn(),[f,s]=Mt.useState(""),[m,E]=Mt.useState(""),[R,B]=Mt.useState(!1);async function M(A){A.preventDefault(),B(!0);try{await o(f,m),s(""),E("")}catch(Q){alert(Q.message)}finally{B(!1)}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Authentication"}),Y.jsxs("form",{className:"mt-4 flex flex-col gap-3",onSubmit:M,children:[Y.jsx("input",{className:"rounded-lg border border-slate-800 bg-slate-950/60 px-3 py-2 text-white",placeholder:"Username",value:f,onChange:A=>s(A.target.value)}),Y.jsx("input",{className:"rounded-lg border border-slate-800 bg-slate-950/60 px-3 py-2 text-white",placeholder:"Password",type:"password",value:m,onChange:A=>E(A.target.value)}),Y.jsx("button",{type:"submit",disabled:R,className:"rounded-lg bg-emerald-600 py-2 font-semibold text-white disabled:opacity-50",children:R?"Logging in…":"Login as admin"})]}),Y.jsxs("div",{className:"mt-4 flex gap-3",children:[Y.jsx("button",{type:"button",onClick:()=>i("user"),className:"rounded-lg border border-slate-700 px-3 py-1 text-sm text-slate-200",children:"Driver mode"}),Y.jsx("button",{type:"button",onClick:()=>i("spectator"),className:"rounded-lg border border-slate-700 px-3 py-1 text-sm text-slate-200",children:"Spectator mode"})]})]})}function cv(){const{connected:o,session:i}=qn();return Y.jsx("div",{className:"min-h-screen bg-slate-950 text-slate-50",children:Y.jsxs("main",{className:"mx-auto flex max-w-6xl flex-col gap-6 px-6 py-10",children:[Y.jsxs("header",{className:"space-y-4",children:[Y.jsx("h1",{className:"text-4xl font-semibold text-white",children:"Multi Roomba Rover Console"}),Y.jsx(ev,{connected:o,role:i?.role,mode:i?.mode})]}),Y.jsxs("section",{className:"grid gap-6 lg:grid-cols-2",children:[Y.jsx(nv,{}),Y.jsx(av,{}),Y.jsx(iv,{}),Y.jsx(uv,{})]}),Y.jsx(lv,{})]})})}l0.createRoot(document.getElementById("root")).render(Y.jsx(Mt.StrictMode,{children:Y.jsx(F0,{children:Y.jsx(tv,{children:Y.jsx(cv,{})})})})); +`).replace(mm,"")}function yh(t,e){return e=dh(e),dh(t)===e}function st(t,e,l,n,a,u){switch(l){case"children":typeof n=="string"?e==="body"||e==="textarea"&&n===""||en(t,n):(typeof n=="number"||typeof n=="bigint")&&e!=="body"&&en(t,""+n);break;case"className":Xa(t,"class",n);break;case"tabIndex":Xa(t,"tabindex",n);break;case"dir":case"role":case"viewBox":case"width":case"height":Xa(t,l,n);break;case"style":ds(t,n,u);break;case"data":if(e!=="object"){Xa(t,"data",n);break}case"src":case"href":if(n===""&&(e!=="a"||l!=="href")){t.removeAttribute(l);break}if(n==null||typeof n=="function"||typeof n=="symbol"||typeof n=="boolean"){t.removeAttribute(l);break}n=Ga(""+n),t.setAttribute(l,n);break;case"action":case"formAction":if(typeof n=="function"){t.setAttribute(l,"javascript:throw new Error('A React form was unexpectedly submitted. If you called form.submit() manually, consider using form.requestSubmit() instead. If you\\'re trying to use event.stopPropagation() in a submit event handler, consider also calling event.preventDefault().')");break}else typeof u=="function"&&(l==="formAction"?(e!=="input"&&st(t,e,"name",a.name,a,null),st(t,e,"formEncType",a.formEncType,a,null),st(t,e,"formMethod",a.formMethod,a,null),st(t,e,"formTarget",a.formTarget,a,null)):(st(t,e,"encType",a.encType,a,null),st(t,e,"method",a.method,a,null),st(t,e,"target",a.target,a,null)));if(n==null||typeof n=="symbol"||typeof n=="boolean"){t.removeAttribute(l);break}n=Ga(""+n),t.setAttribute(l,n);break;case"onClick":n!=null&&(t.onclick=je);break;case"onScroll":n!=null&&W("scroll",t);break;case"onScrollEnd":n!=null&&W("scrollend",t);break;case"dangerouslySetInnerHTML":if(n!=null){if(typeof n!="object"||!("__html"in n))throw Error(s(61));if(l=n.__html,l!=null){if(a.children!=null)throw Error(s(60));t.innerHTML=l}}break;case"multiple":t.multiple=n&&typeof n!="function"&&typeof n!="symbol";break;case"muted":t.muted=n&&typeof n!="function"&&typeof n!="symbol";break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"defaultValue":case"defaultChecked":case"innerHTML":case"ref":break;case"autoFocus":break;case"xlinkHref":if(n==null||typeof n=="function"||typeof n=="boolean"||typeof n=="symbol"){t.removeAttribute("xlink:href");break}l=Ga(""+n),t.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",l);break;case"contentEditable":case"spellCheck":case"draggable":case"value":case"autoReverse":case"externalResourcesRequired":case"focusable":case"preserveAlpha":n!=null&&typeof n!="function"&&typeof n!="symbol"?t.setAttribute(l,""+n):t.removeAttribute(l);break;case"inert":case"allowFullScreen":case"async":case"autoPlay":case"controls":case"default":case"defer":case"disabled":case"disablePictureInPicture":case"disableRemotePlayback":case"formNoValidate":case"hidden":case"loop":case"noModule":case"noValidate":case"open":case"playsInline":case"readOnly":case"required":case"reversed":case"scoped":case"seamless":case"itemScope":n&&typeof n!="function"&&typeof n!="symbol"?t.setAttribute(l,""):t.removeAttribute(l);break;case"capture":case"download":n===!0?t.setAttribute(l,""):n!==!1&&n!=null&&typeof n!="function"&&typeof n!="symbol"?t.setAttribute(l,n):t.removeAttribute(l);break;case"cols":case"rows":case"size":case"span":n!=null&&typeof n!="function"&&typeof n!="symbol"&&!isNaN(n)&&1<=n?t.setAttribute(l,n):t.removeAttribute(l);break;case"rowSpan":case"start":n==null||typeof n=="function"||typeof n=="symbol"||isNaN(n)?t.removeAttribute(l):t.setAttribute(l,n);break;case"popover":W("beforetoggle",t),W("toggle",t),La(t,"popover",n);break;case"xlinkActuate":Ye(t,"http://www.w3.org/1999/xlink","xlink:actuate",n);break;case"xlinkArcrole":Ye(t,"http://www.w3.org/1999/xlink","xlink:arcrole",n);break;case"xlinkRole":Ye(t,"http://www.w3.org/1999/xlink","xlink:role",n);break;case"xlinkShow":Ye(t,"http://www.w3.org/1999/xlink","xlink:show",n);break;case"xlinkTitle":Ye(t,"http://www.w3.org/1999/xlink","xlink:title",n);break;case"xlinkType":Ye(t,"http://www.w3.org/1999/xlink","xlink:type",n);break;case"xmlBase":Ye(t,"http://www.w3.org/XML/1998/namespace","xml:base",n);break;case"xmlLang":Ye(t,"http://www.w3.org/XML/1998/namespace","xml:lang",n);break;case"xmlSpace":Ye(t,"http://www.w3.org/XML/1998/namespace","xml:space",n);break;case"is":La(t,"is",n);break;case"innerText":case"textContent":break;default:(!(2r)break;var _=h.transferSize,O=h.initiatorType;_&&mh(O)&&(h=h.responseEnd,c+=_*(h"u"?null:document;function Nh(t,e,l){var n=Dn;if(n&&typeof e=="string"&&e){var a=re(e);a='link[rel="'+t+'"][href="'+a+'"]',typeof l=="string"&&(a+='[crossorigin="'+l+'"]'),Oh.has(a)||(Oh.add(a),t={rel:t,crossOrigin:l,href:e},n.querySelector(a)===null&&(e=n.createElement("link"),Ht(e,"link",t),Rt(e),n.head.appendChild(e)))}}function Nm(t){tl.D(t),Nh("dns-prefetch",t,null)}function Mm(t,e){tl.C(t,e),Nh("preconnect",t,e)}function Rm(t,e,l){tl.L(t,e,l);var n=Dn;if(n&&t&&e){var a='link[rel="preload"][as="'+re(e)+'"]';e==="image"&&l&&l.imageSrcSet?(a+='[imagesrcset="'+re(l.imageSrcSet)+'"]',typeof l.imageSizes=="string"&&(a+='[imagesizes="'+re(l.imageSizes)+'"]')):a+='[href="'+re(t)+'"]';var u=a;switch(e){case"style":u=Un(t);break;case"script":u=xn(t)}be.has(u)||(t=x({rel:"preload",href:e==="image"&&l&&l.imageSrcSet?void 0:t,as:e},l),be.set(u,t),n.querySelector(a)!==null||e==="style"&&n.querySelector(Ta(u))||e==="script"&&n.querySelector(Aa(u))||(e=n.createElement("link"),Ht(e,"link",t),Rt(e),n.head.appendChild(e)))}}function Dm(t,e){tl.m(t,e);var l=Dn;if(l&&t){var n=e&&typeof e.as=="string"?e.as:"script",a='link[rel="modulepreload"][as="'+re(n)+'"][href="'+re(t)+'"]',u=a;switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":u=xn(t)}if(!be.has(u)&&(t=x({rel:"modulepreload",href:t},e),be.set(u,t),l.querySelector(a)===null)){switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(l.querySelector(Aa(u)))return}n=l.createElement("link"),Ht(n,"link",t),Rt(n),l.head.appendChild(n)}}}function Um(t,e,l){tl.S(t,e,l);var n=Dn;if(n&&t){var a=Il(n).hoistableStyles,u=Un(t);e=e||"default";var c=a.get(u);if(!c){var r={loading:0,preload:null};if(c=n.querySelector(Ta(u)))r.loading=5;else{t=x({rel:"stylesheet",href:t,"data-precedence":e},l),(l=be.get(u))&&mf(t,l);var h=c=n.createElement("link");Rt(h),Ht(h,"link",t),h._p=new Promise(function(p,_){h.onload=p,h.onerror=_}),h.addEventListener("load",function(){r.loading|=1}),h.addEventListener("error",function(){r.loading|=2}),r.loading|=4,Lu(c,e,n)}c={type:"stylesheet",instance:c,count:1,state:r},a.set(u,c)}}}function xm(t,e){tl.X(t,e);var l=Dn;if(l&&t){var n=Il(l).hoistableScripts,a=xn(t),u=n.get(a);u||(u=l.querySelector(Aa(a)),u||(t=x({src:t,async:!0},e),(e=be.get(a))&&vf(t,e),u=l.createElement("script"),Rt(u),Ht(u,"link",t),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(a,u))}}function Cm(t,e){tl.M(t,e);var l=Dn;if(l&&t){var n=Il(l).hoistableScripts,a=xn(t),u=n.get(a);u||(u=l.querySelector(Aa(a)),u||(t=x({src:t,async:!0,type:"module"},e),(e=be.get(a))&&vf(t,e),u=l.createElement("script"),Rt(u),Ht(u,"link",t),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(a,u))}}function Mh(t,e,l,n){var a=(a=J.current)?ju(a):null;if(!a)throw Error(s(446));switch(t){case"meta":case"title":return null;case"style":return typeof l.precedence=="string"&&typeof l.href=="string"?(e=Un(l.href),l=Il(a).hoistableStyles,n=l.get(e),n||(n={type:"style",instance:null,count:0,state:null},l.set(e,n)),n):{type:"void",instance:null,count:0,state:null};case"link":if(l.rel==="stylesheet"&&typeof l.href=="string"&&typeof l.precedence=="string"){t=Un(l.href);var u=Il(a).hoistableStyles,c=u.get(t);if(c||(a=a.ownerDocument||a,c={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},u.set(t,c),(u=a.querySelector(Ta(t)))&&!u._p&&(c.instance=u,c.state.loading=5),be.has(t)||(l={rel:"preload",as:"style",href:l.href,crossOrigin:l.crossOrigin,integrity:l.integrity,media:l.media,hrefLang:l.hrefLang,referrerPolicy:l.referrerPolicy},be.set(t,l),u||Bm(a,t,l,c.state))),e&&n===null)throw Error(s(528,""));return c}if(e&&n!==null)throw Error(s(529,""));return null;case"script":return e=l.async,l=l.src,typeof l=="string"&&e&&typeof e!="function"&&typeof e!="symbol"?(e=xn(l),l=Il(a).hoistableScripts,n=l.get(e),n||(n={type:"script",instance:null,count:0,state:null},l.set(e,n)),n):{type:"void",instance:null,count:0,state:null};default:throw Error(s(444,t))}}function Un(t){return'href="'+re(t)+'"'}function Ta(t){return'link[rel="stylesheet"]['+t+"]"}function Rh(t){return x({},t,{"data-precedence":t.precedence,precedence:null})}function Bm(t,e,l,n){t.querySelector('link[rel="preload"][as="style"]['+e+"]")?n.loading=1:(e=t.createElement("link"),n.preload=e,e.addEventListener("load",function(){return n.loading|=1}),e.addEventListener("error",function(){return n.loading|=2}),Ht(e,"link",l),Rt(e),t.head.appendChild(e))}function xn(t){return'[src="'+re(t)+'"]'}function Aa(t){return"script[async]"+t}function Dh(t,e,l){if(e.count++,e.instance===null)switch(e.type){case"style":var n=t.querySelector('style[data-href~="'+re(l.href)+'"]');if(n)return e.instance=n,Rt(n),n;var a=x({},l,{"data-href":l.href,"data-precedence":l.precedence,href:null,precedence:null});return n=(t.ownerDocument||t).createElement("style"),Rt(n),Ht(n,"style",a),Lu(n,l.precedence,t),e.instance=n;case"stylesheet":a=Un(l.href);var u=t.querySelector(Ta(a));if(u)return e.state.loading|=4,e.instance=u,Rt(u),u;n=Rh(l),(a=be.get(a))&&mf(n,a),u=(t.ownerDocument||t).createElement("link"),Rt(u);var c=u;return c._p=new Promise(function(r,h){c.onload=r,c.onerror=h}),Ht(u,"link",n),e.state.loading|=4,Lu(u,l.precedence,t),e.instance=u;case"script":return u=xn(l.src),(a=t.querySelector(Aa(u)))?(e.instance=a,Rt(a),a):(n=l,(a=be.get(u))&&(n=x({},l),vf(n,a)),t=t.ownerDocument||t,a=t.createElement("script"),Rt(a),Ht(a,"link",n),t.head.appendChild(a),e.instance=a);case"void":return null;default:throw Error(s(443,e.type))}else e.type==="stylesheet"&&(e.state.loading&4)===0&&(n=e.instance,e.state.loading|=4,Lu(n,l.precedence,t));return e.instance}function Lu(t,e,l){for(var n=l.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=n.length?n[n.length-1]:null,u=a,c=0;c title"):null)}function qm(t,e,l){if(l===1||e.itemProp!=null)return!1;switch(t){case"meta":case"title":return!0;case"style":if(typeof e.precedence!="string"||typeof e.href!="string"||e.href==="")break;return!0;case"link":if(typeof e.rel!="string"||typeof e.href!="string"||e.href===""||e.onLoad||e.onError)break;switch(e.rel){case"stylesheet":return t=e.disabled,typeof e.precedence=="string"&&t==null;default:return!0}case"script":if(e.async&&typeof e.async!="function"&&typeof e.async!="symbol"&&!e.onLoad&&!e.onError&&e.src&&typeof e.src=="string")return!0}return!1}function Ch(t){return!(t.type==="stylesheet"&&(t.state.loading&3)===0)}function Hm(t,e,l,n){if(l.type==="stylesheet"&&(typeof n.media!="string"||matchMedia(n.media).matches!==!1)&&(l.state.loading&4)===0){if(l.instance===null){var a=Un(n.href),u=e.querySelector(Ta(a));if(u){e=u._p,e!==null&&typeof e=="object"&&typeof e.then=="function"&&(t.count++,t=Qu.bind(t),e.then(t,t)),l.state.loading|=4,l.instance=u,Rt(u);return}u=e.ownerDocument||e,n=Rh(n),(a=be.get(a))&&mf(n,a),u=u.createElement("link"),Rt(u);var c=u;c._p=new Promise(function(r,h){c.onload=r,c.onerror=h}),Ht(u,"link",n),l.instance=u}t.stylesheets===null&&(t.stylesheets=new Map),t.stylesheets.set(l,e),(e=l.state.preload)&&(l.state.loading&3)===0&&(t.count++,l=Qu.bind(t),e.addEventListener("load",l),e.addEventListener("error",l))}}var gf=0;function Ym(t,e){return t.stylesheets&&t.count===0&&Vu(t,t.stylesheets),0gf?50:800)+e);return t.unsuspend=l,function(){t.unsuspend=null,clearTimeout(n),clearTimeout(a)}}:null}function Qu(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Vu(this,this.stylesheets);else if(this.unsuspend){var t=this.unsuspend;this.unsuspend=null,t()}}}var Gu=null;function Vu(t,e){t.stylesheets=null,t.unsuspend!==null&&(t.count++,Gu=new Map,e.forEach(jm,t),Gu=null,Qu.call(t))}function jm(t,e){if(!(e.state.loading&4)){var l=Gu.get(t);if(l)var n=l.get(null);else{l=new Map,Gu.set(t,l);for(var a=t.querySelectorAll("link[data-precedence],style[data-precedence]"),u=0;u"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(o)}catch(i){console.error(i)}}return o(),Of.exports=t0(),Of.exports}var l0=e0();const Be=Object.create(null);Be.open="0";Be.close="1";Be.ping="2";Be.pong="3";Be.message="4";Be.upgrade="5";Be.noop="6";const Pu=Object.create(null);Object.keys(Be).forEach(o=>{Pu[Be[o]]=o});const Cf={type:"error",data:"parser error"},fd=typeof Blob=="function"||typeof Blob<"u"&&Object.prototype.toString.call(Blob)==="[object BlobConstructor]",sd=typeof ArrayBuffer=="function",od=o=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(o):o&&o.buffer instanceof ArrayBuffer,Xf=({type:o,data:i},f,s)=>fd&&i instanceof Blob?f?s(i):nd(i,s):sd&&(i instanceof ArrayBuffer||od(i))?f?s(i):nd(new Blob([i]),s):s(Be[o]+(i||"")),nd=(o,i)=>{const f=new FileReader;return f.onload=function(){const s=f.result.split(",")[1];i("b"+(s||""))},f.readAsDataURL(o)};function ad(o){return o instanceof Uint8Array?o:o instanceof ArrayBuffer?new Uint8Array(o):new Uint8Array(o.buffer,o.byteOffset,o.byteLength)}let Df;function n0(o,i){if(fd&&o.data instanceof Blob)return o.data.arrayBuffer().then(ad).then(i);if(sd&&(o.data instanceof ArrayBuffer||od(o.data)))return i(ad(o.data));Xf(o,!1,f=>{Df||(Df=new TextEncoder),i(Df.encode(f))})}const ud="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",xa=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(let o=0;o{let i=o.length*.75,f=o.length,s,m=0,E,R,B,M;o[o.length-1]==="="&&(i--,o[o.length-2]==="="&&i--);const A=new ArrayBuffer(i),Q=new Uint8Array(A);for(s=0;s>4,Q[m++]=(R&15)<<4|B>>2,Q[m++]=(B&3)<<6|M&63;return A},u0=typeof ArrayBuffer=="function",Qf=(o,i)=>{if(typeof o!="string")return{type:"message",data:rd(o,i)};const f=o.charAt(0);return f==="b"?{type:"message",data:i0(o.substring(1),i)}:Pu[f]?o.length>1?{type:Pu[f],data:o.substring(1)}:{type:Pu[f]}:Cf},i0=(o,i)=>{if(u0){const f=a0(o);return rd(f,i)}else return{base64:!0,data:o}},rd=(o,i)=>{switch(i){case"blob":return o instanceof Blob?o:new Blob([o]);case"arraybuffer":default:return o instanceof ArrayBuffer?o:o.buffer}},hd="",c0=(o,i)=>{const f=o.length,s=new Array(f);let m=0;o.forEach((E,R)=>{Xf(E,!1,B=>{s[R]=B,++m===f&&i(s.join(hd))})})},f0=(o,i)=>{const f=o.split(hd),s=[];for(let m=0;m{const s=f.length;let m;if(s<126)m=new Uint8Array(1),new DataView(m.buffer).setUint8(0,s);else if(s<65536){m=new Uint8Array(3);const E=new DataView(m.buffer);E.setUint8(0,126),E.setUint16(1,s)}else{m=new Uint8Array(9);const E=new DataView(m.buffer);E.setUint8(0,127),E.setBigUint64(1,BigInt(s))}o.data&&typeof o.data!="string"&&(m[0]|=128),i.enqueue(m),i.enqueue(f)})}})}let Uf;function Fu(o){return o.reduce((i,f)=>i+f.length,0)}function Iu(o,i){if(o[0].length===i)return o.shift();const f=new Uint8Array(i);let s=0;for(let m=0;mMath.pow(2,21)-1){B.enqueue(Cf);break}m=Q*Math.pow(2,32)+A.getUint32(4),s=3}else{if(Fu(f)o){B.enqueue(Cf);break}}}})}const dd=4;function Ot(o){if(o)return r0(o)}function r0(o){for(var i in Ot.prototype)o[i]=Ot.prototype[i];return o}Ot.prototype.on=Ot.prototype.addEventListener=function(o,i){return this._callbacks=this._callbacks||{},(this._callbacks["$"+o]=this._callbacks["$"+o]||[]).push(i),this};Ot.prototype.once=function(o,i){function f(){this.off(o,f),i.apply(this,arguments)}return f.fn=i,this.on(o,f),this};Ot.prototype.off=Ot.prototype.removeListener=Ot.prototype.removeAllListeners=Ot.prototype.removeEventListener=function(o,i){if(this._callbacks=this._callbacks||{},arguments.length==0)return this._callbacks={},this;var f=this._callbacks["$"+o];if(!f)return this;if(arguments.length==1)return delete this._callbacks["$"+o],this;for(var s,m=0;mPromise.resolve().then(i):(i,f)=>f(i,0),Se=typeof self<"u"?self:typeof window<"u"?window:Function("return this")(),h0="arraybuffer";function yd(o,...i){return i.reduce((f,s)=>(o.hasOwnProperty(s)&&(f[s]=o[s]),f),{})}const d0=Se.setTimeout,y0=Se.clearTimeout;function ai(o,i){i.useNativeTimers?(o.setTimeoutFn=d0.bind(Se),o.clearTimeoutFn=y0.bind(Se)):(o.setTimeoutFn=Se.setTimeout.bind(Se),o.clearTimeoutFn=Se.clearTimeout.bind(Se))}const m0=1.33;function v0(o){return typeof o=="string"?g0(o):Math.ceil((o.byteLength||o.size)*m0)}function g0(o){let i=0,f=0;for(let s=0,m=o.length;s=57344?f+=3:(s++,f+=4);return f}function md(){return Date.now().toString(36).substring(3)+Math.random().toString(36).substring(2,5)}function p0(o){let i="";for(let f in o)o.hasOwnProperty(f)&&(i.length&&(i+="&"),i+=encodeURIComponent(f)+"="+encodeURIComponent(o[f]));return i}function b0(o){let i={},f=o.split("&");for(let s=0,m=f.length;s{this.readyState="paused",i()};if(this._polling||!this.writable){let s=0;this._polling&&(s++,this.once("pollComplete",function(){--s||f()})),this.writable||(s++,this.once("drain",function(){--s||f()}))}else f()}_poll(){this._polling=!0,this.doPoll(),this.emitReserved("poll")}onData(i){const f=s=>{if(this.readyState==="opening"&&s.type==="open"&&this.onOpen(),s.type==="close")return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(s)};f0(i,this.socket.binaryType).forEach(f),this.readyState!=="closed"&&(this._polling=!1,this.emitReserved("pollComplete"),this.readyState==="open"&&this._poll())}doClose(){const i=()=>{this.write([{type:"close"}])};this.readyState==="open"?i():this.once("open",i)}write(i){this.writable=!1,c0(i,f=>{this.doWrite(f,()=>{this.writable=!0,this.emitReserved("drain")})})}uri(){const i=this.opts.secure?"https":"http",f=this.query||{};return this.opts.timestampRequests!==!1&&(f[this.opts.timestampParam]=md()),!this.supportsBinary&&!f.sid&&(f.b64=1),this.createUri(i,f)}}let vd=!1;try{vd=typeof XMLHttpRequest<"u"&&"withCredentials"in new XMLHttpRequest}catch{}const E0=vd;function T0(){}class A0 extends _0{constructor(i){if(super(i),typeof location<"u"){const f=location.protocol==="https:";let s=location.port;s||(s=f?"443":"80"),this.xd=typeof location<"u"&&i.hostname!==location.hostname||s!==i.port}}doWrite(i,f){const s=this.request({method:"POST",data:i});s.on("success",f),s.on("error",(m,E)=>{this.onError("xhr post error",m,E)})}doPoll(){const i=this.request();i.on("data",this.onData.bind(this)),i.on("error",(f,s)=>{this.onError("xhr poll error",f,s)}),this.pollXhr=i}}class Ce extends Ot{constructor(i,f,s){super(),this.createRequest=i,ai(this,s),this._opts=s,this._method=s.method||"GET",this._uri=f,this._data=s.data!==void 0?s.data:null,this._create()}_create(){var i;const f=yd(this._opts,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");f.xdomain=!!this._opts.xd;const s=this._xhr=this.createRequest(f);try{s.open(this._method,this._uri,!0);try{if(this._opts.extraHeaders){s.setDisableHeaderCheck&&s.setDisableHeaderCheck(!0);for(let m in this._opts.extraHeaders)this._opts.extraHeaders.hasOwnProperty(m)&&s.setRequestHeader(m,this._opts.extraHeaders[m])}}catch{}if(this._method==="POST")try{s.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch{}try{s.setRequestHeader("Accept","*/*")}catch{}(i=this._opts.cookieJar)===null||i===void 0||i.addCookies(s),"withCredentials"in s&&(s.withCredentials=this._opts.withCredentials),this._opts.requestTimeout&&(s.timeout=this._opts.requestTimeout),s.onreadystatechange=()=>{var m;s.readyState===3&&((m=this._opts.cookieJar)===null||m===void 0||m.parseCookies(s.getResponseHeader("set-cookie"))),s.readyState===4&&(s.status===200||s.status===1223?this._onLoad():this.setTimeoutFn(()=>{this._onError(typeof s.status=="number"?s.status:0)},0))},s.send(this._data)}catch(m){this.setTimeoutFn(()=>{this._onError(m)},0);return}typeof document<"u"&&(this._index=Ce.requestsCount++,Ce.requests[this._index]=this)}_onError(i){this.emitReserved("error",i,this._xhr),this._cleanup(!0)}_cleanup(i){if(!(typeof this._xhr>"u"||this._xhr===null)){if(this._xhr.onreadystatechange=T0,i)try{this._xhr.abort()}catch{}typeof document<"u"&&delete Ce.requests[this._index],this._xhr=null}}_onLoad(){const i=this._xhr.responseText;i!==null&&(this.emitReserved("data",i),this.emitReserved("success"),this._cleanup())}abort(){this._cleanup()}}Ce.requestsCount=0;Ce.requests={};if(typeof document<"u"){if(typeof attachEvent=="function")attachEvent("onunload",id);else if(typeof addEventListener=="function"){const o="onpagehide"in Se?"pagehide":"unload";addEventListener(o,id,!1)}}function id(){for(let o in Ce.requests)Ce.requests.hasOwnProperty(o)&&Ce.requests[o].abort()}const z0=(function(){const o=gd({xdomain:!1});return o&&o.responseType!==null})();class O0 extends A0{constructor(i){super(i);const f=i&&i.forceBase64;this.supportsBinary=z0&&!f}request(i={}){return Object.assign(i,{xd:this.xd},this.opts),new Ce(gd,this.uri(),i)}}function gd(o){const i=o.xdomain;try{if(typeof XMLHttpRequest<"u"&&(!i||E0))return new XMLHttpRequest}catch{}if(!i)try{return new Se[["Active"].concat("Object").join("X")]("Microsoft.XMLHTTP")}catch{}}const pd=typeof navigator<"u"&&typeof navigator.product=="string"&&navigator.product.toLowerCase()==="reactnative";class N0 extends Gf{get name(){return"websocket"}doOpen(){const i=this.uri(),f=this.opts.protocols,s=pd?{}:yd(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(s.headers=this.opts.extraHeaders);try{this.ws=this.createSocket(i,f,s)}catch(m){return this.emitReserved("error",m)}this.ws.binaryType=this.socket.binaryType,this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=i=>this.onClose({description:"websocket connection closed",context:i}),this.ws.onmessage=i=>this.onData(i.data),this.ws.onerror=i=>this.onError("websocket error",i)}write(i){this.writable=!1;for(let f=0;f{try{this.doWrite(s,E)}catch{}m&&ni(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){typeof this.ws<"u"&&(this.ws.onerror=()=>{},this.ws.close(),this.ws=null)}uri(){const i=this.opts.secure?"wss":"ws",f=this.query||{};return this.opts.timestampRequests&&(f[this.opts.timestampParam]=md()),this.supportsBinary||(f.b64=1),this.createUri(i,f)}}const xf=Se.WebSocket||Se.MozWebSocket;class M0 extends N0{createSocket(i,f,s){return pd?new xf(i,f,s):f?new xf(i,f):new xf(i)}doWrite(i,f){this.ws.send(f)}}class R0 extends Gf{get name(){return"webtransport"}doOpen(){try{this._transport=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name])}catch(i){return this.emitReserved("error",i)}this._transport.closed.then(()=>{this.onClose()}).catch(i=>{this.onError("webtransport error",i)}),this._transport.ready.then(()=>{this._transport.createBidirectionalStream().then(i=>{const f=o0(Number.MAX_SAFE_INTEGER,this.socket.binaryType),s=i.readable.pipeThrough(f).getReader(),m=s0();m.readable.pipeTo(i.writable),this._writer=m.writable.getWriter();const E=()=>{s.read().then(({done:B,value:M})=>{B||(this.onPacket(M),E())}).catch(B=>{})};E();const R={type:"open"};this.query.sid&&(R.data=`{"sid":"${this.query.sid}"}`),this._writer.write(R).then(()=>this.onOpen())})})}write(i){this.writable=!1;for(let f=0;f{m&&ni(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){var i;(i=this._transport)===null||i===void 0||i.close()}}const D0={websocket:M0,webtransport:R0,polling:O0},U0=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,x0=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function Bf(o){if(o.length>8e3)throw"URI too long";const i=o,f=o.indexOf("["),s=o.indexOf("]");f!=-1&&s!=-1&&(o=o.substring(0,f)+o.substring(f,s).replace(/:/g,";")+o.substring(s,o.length));let m=U0.exec(o||""),E={},R=14;for(;R--;)E[x0[R]]=m[R]||"";return f!=-1&&s!=-1&&(E.source=i,E.host=E.host.substring(1,E.host.length-1).replace(/;/g,":"),E.authority=E.authority.replace("[","").replace("]","").replace(/;/g,":"),E.ipv6uri=!0),E.pathNames=C0(E,E.path),E.queryKey=B0(E,E.query),E}function C0(o,i){const f=/\/{2,9}/g,s=i.replace(f,"/").split("/");return(i.slice(0,1)=="/"||i.length===0)&&s.splice(0,1),i.slice(-1)=="/"&&s.splice(s.length-1,1),s}function B0(o,i){const f={};return i.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,function(s,m,E){m&&(f[m]=E)}),f}const qf=typeof addEventListener=="function"&&typeof removeEventListener=="function",ti=[];qf&&addEventListener("offline",()=>{ti.forEach(o=>o())},!1);class Nl extends Ot{constructor(i,f){if(super(),this.binaryType=h0,this.writeBuffer=[],this._prevBufferLen=0,this._pingInterval=-1,this._pingTimeout=-1,this._maxPayload=-1,this._pingTimeoutTime=1/0,i&&typeof i=="object"&&(f=i,i=null),i){const s=Bf(i);f.hostname=s.host,f.secure=s.protocol==="https"||s.protocol==="wss",f.port=s.port,s.query&&(f.query=s.query)}else f.host&&(f.hostname=Bf(f.host).host);ai(this,f),this.secure=f.secure!=null?f.secure:typeof location<"u"&&location.protocol==="https:",f.hostname&&!f.port&&(f.port=this.secure?"443":"80"),this.hostname=f.hostname||(typeof location<"u"?location.hostname:"localhost"),this.port=f.port||(typeof location<"u"&&location.port?location.port:this.secure?"443":"80"),this.transports=[],this._transportsByName={},f.transports.forEach(s=>{const m=s.prototype.name;this.transports.push(m),this._transportsByName[m]=s}),this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},f),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),typeof this.opts.query=="string"&&(this.opts.query=b0(this.opts.query)),qf&&(this.opts.closeOnBeforeunload&&(this._beforeunloadEventListener=()=>{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this._beforeunloadEventListener,!1)),this.hostname!=="localhost"&&(this._offlineEventListener=()=>{this._onClose("transport close",{description:"network connection lost"})},ti.push(this._offlineEventListener))),this.opts.withCredentials&&(this._cookieJar=void 0),this._open()}createTransport(i){const f=Object.assign({},this.opts.query);f.EIO=dd,f.transport=i,this.id&&(f.sid=this.id);const s=Object.assign({},this.opts,{query:f,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[i]);return new this._transportsByName[i](s)}_open(){if(this.transports.length===0){this.setTimeoutFn(()=>{this.emitReserved("error","No transports available")},0);return}const i=this.opts.rememberUpgrade&&Nl.priorWebsocketSuccess&&this.transports.indexOf("websocket")!==-1?"websocket":this.transports[0];this.readyState="opening";const f=this.createTransport(i);f.open(),this.setTransport(f)}setTransport(i){this.transport&&this.transport.removeAllListeners(),this.transport=i,i.on("drain",this._onDrain.bind(this)).on("packet",this._onPacket.bind(this)).on("error",this._onError.bind(this)).on("close",f=>this._onClose("transport close",f))}onOpen(){this.readyState="open",Nl.priorWebsocketSuccess=this.transport.name==="websocket",this.emitReserved("open"),this.flush()}_onPacket(i){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing")switch(this.emitReserved("packet",i),this.emitReserved("heartbeat"),i.type){case"open":this.onHandshake(JSON.parse(i.data));break;case"ping":this._sendPacket("pong"),this.emitReserved("ping"),this.emitReserved("pong"),this._resetPingTimeout();break;case"error":const f=new Error("server error");f.code=i.data,this._onError(f);break;case"message":this.emitReserved("data",i.data),this.emitReserved("message",i.data);break}}onHandshake(i){this.emitReserved("handshake",i),this.id=i.sid,this.transport.query.sid=i.sid,this._pingInterval=i.pingInterval,this._pingTimeout=i.pingTimeout,this._maxPayload=i.maxPayload,this.onOpen(),this.readyState!=="closed"&&this._resetPingTimeout()}_resetPingTimeout(){this.clearTimeoutFn(this._pingTimeoutTimer);const i=this._pingInterval+this._pingTimeout;this._pingTimeoutTime=Date.now()+i,this._pingTimeoutTimer=this.setTimeoutFn(()=>{this._onClose("ping timeout")},i),this.opts.autoUnref&&this._pingTimeoutTimer.unref()}_onDrain(){this.writeBuffer.splice(0,this._prevBufferLen),this._prevBufferLen=0,this.writeBuffer.length===0?this.emitReserved("drain"):this.flush()}flush(){if(this.readyState!=="closed"&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){const i=this._getWritablePackets();this.transport.send(i),this._prevBufferLen=i.length,this.emitReserved("flush")}}_getWritablePackets(){if(!(this._maxPayload&&this.transport.name==="polling"&&this.writeBuffer.length>1))return this.writeBuffer;let f=1;for(let s=0;s0&&f>this._maxPayload)return this.writeBuffer.slice(0,s);f+=2}return this.writeBuffer}_hasPingExpired(){if(!this._pingTimeoutTime)return!0;const i=Date.now()>this._pingTimeoutTime;return i&&(this._pingTimeoutTime=0,ni(()=>{this._onClose("ping timeout")},this.setTimeoutFn)),i}write(i,f,s){return this._sendPacket("message",i,f,s),this}send(i,f,s){return this._sendPacket("message",i,f,s),this}_sendPacket(i,f,s,m){if(typeof f=="function"&&(m=f,f=void 0),typeof s=="function"&&(m=s,s=null),this.readyState==="closing"||this.readyState==="closed")return;s=s||{},s.compress=s.compress!==!1;const E={type:i,data:f,options:s};this.emitReserved("packetCreate",E),this.writeBuffer.push(E),m&&this.once("flush",m),this.flush()}close(){const i=()=>{this._onClose("forced close"),this.transport.close()},f=()=>{this.off("upgrade",f),this.off("upgradeError",f),i()},s=()=>{this.once("upgrade",f),this.once("upgradeError",f)};return(this.readyState==="opening"||this.readyState==="open")&&(this.readyState="closing",this.writeBuffer.length?this.once("drain",()=>{this.upgrading?s():i()}):this.upgrading?s():i()),this}_onError(i){if(Nl.priorWebsocketSuccess=!1,this.opts.tryAllTransports&&this.transports.length>1&&this.readyState==="opening")return this.transports.shift(),this._open();this.emitReserved("error",i),this._onClose("transport error",i)}_onClose(i,f){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing"){if(this.clearTimeoutFn(this._pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),qf&&(this._beforeunloadEventListener&&removeEventListener("beforeunload",this._beforeunloadEventListener,!1),this._offlineEventListener)){const s=ti.indexOf(this._offlineEventListener);s!==-1&&ti.splice(s,1)}this.readyState="closed",this.id=null,this.emitReserved("close",i,f),this.writeBuffer=[],this._prevBufferLen=0}}}Nl.protocol=dd;class q0 extends Nl{constructor(){super(...arguments),this._upgrades=[]}onOpen(){if(super.onOpen(),this.readyState==="open"&&this.opts.upgrade)for(let i=0;i{s||(f.send([{type:"ping",data:"probe"}]),f.once("packet",x=>{if(!s)if(x.type==="pong"&&x.data==="probe"){if(this.upgrading=!0,this.emitReserved("upgrading",f),!f)return;Nl.priorWebsocketSuccess=f.name==="websocket",this.transport.pause(()=>{s||this.readyState!=="closed"&&(Q(),this.setTransport(f),f.send([{type:"upgrade"}]),this.emitReserved("upgrade",f),f=null,this.upgrading=!1,this.flush())})}else{const K=new Error("probe error");K.transport=f.name,this.emitReserved("upgradeError",K)}}))};function E(){s||(s=!0,Q(),f.close(),f=null)}const R=x=>{const K=new Error("probe error: "+x);K.transport=f.name,E(),this.emitReserved("upgradeError",K)};function B(){R("transport closed")}function M(){R("socket closed")}function A(x){f&&x.name!==f.name&&E()}const Q=()=>{f.removeListener("open",m),f.removeListener("error",R),f.removeListener("close",B),this.off("close",M),this.off("upgrading",A)};f.once("open",m),f.once("error",R),f.once("close",B),this.once("close",M),this.once("upgrading",A),this._upgrades.indexOf("webtransport")!==-1&&i!=="webtransport"?this.setTimeoutFn(()=>{s||f.open()},200):f.open()}onHandshake(i){this._upgrades=this._filterUpgrades(i.upgrades),super.onHandshake(i)}_filterUpgrades(i){const f=[];for(let s=0;sD0[m]).filter(m=>!!m)),super(i,s)}};function Y0(o,i="",f){let s=o;f=f||typeof location<"u"&&location,o==null&&(o=f.protocol+"//"+f.host),typeof o=="string"&&(o.charAt(0)==="/"&&(o.charAt(1)==="/"?o=f.protocol+o:o=f.host+o),/^(https?|wss?):\/\//.test(o)||(typeof f<"u"?o=f.protocol+"//"+o:o="https://"+o),s=Bf(o)),s.port||(/^(http|ws)$/.test(s.protocol)?s.port="80":/^(http|ws)s$/.test(s.protocol)&&(s.port="443")),s.path=s.path||"/";const E=s.host.indexOf(":")!==-1?"["+s.host+"]":s.host;return s.id=s.protocol+"://"+E+":"+s.port+i,s.href=s.protocol+"://"+E+(f&&f.port===s.port?"":":"+s.port),s}const j0=typeof ArrayBuffer=="function",L0=o=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(o):o.buffer instanceof ArrayBuffer,bd=Object.prototype.toString,X0=typeof Blob=="function"||typeof Blob<"u"&&bd.call(Blob)==="[object BlobConstructor]",Q0=typeof File=="function"||typeof File<"u"&&bd.call(File)==="[object FileConstructor]";function Vf(o){return j0&&(o instanceof ArrayBuffer||L0(o))||X0&&o instanceof Blob||Q0&&o instanceof File}function ei(o,i){if(!o||typeof o!="object")return!1;if(Array.isArray(o)){for(let f=0,s=o.length;f=0&&o.num{delete this.acks[i];for(let B=0;B{this.io.clearTimeoutFn(E),f.apply(this,B)};R.withError=!0,this.acks[i]=R}emitWithAck(i,...f){return new Promise((s,m)=>{const E=(R,B)=>R?m(R):s(B);E.withError=!0,f.push(E),this.emit(i,...f)})}_addToQueue(i){let f;typeof i[i.length-1]=="function"&&(f=i.pop());const s={id:this._queueSeq++,tryCount:0,pending:!1,args:i,flags:Object.assign({fromQueue:!0},this.flags)};i.push((m,...E)=>s!==this._queue[0]?void 0:(m!==null?s.tryCount>this._opts.retries&&(this._queue.shift(),f&&f(m)):(this._queue.shift(),f&&f(null,...E)),s.pending=!1,this._drainQueue())),this._queue.push(s),this._drainQueue()}_drainQueue(i=!1){if(!this.connected||this._queue.length===0)return;const f=this._queue[0];f.pending&&!i||(f.pending=!0,f.tryCount++,this.flags=f.flags,this.emit.apply(this,f.args))}packet(i){i.nsp=this.nsp,this.io._packet(i)}onopen(){typeof this.auth=="function"?this.auth(i=>{this._sendConnectPacket(i)}):this._sendConnectPacket(this.auth)}_sendConnectPacket(i){this.packet({type:tt.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},i):i})}onerror(i){this.connected||this.emitReserved("connect_error",i)}onclose(i,f){this.connected=!1,delete this.id,this.emitReserved("disconnect",i,f),this._clearAcks()}_clearAcks(){Object.keys(this.acks).forEach(i=>{if(!this.sendBuffer.some(s=>String(s.id)===i)){const s=this.acks[i];delete this.acks[i],s.withError&&s.call(this,new Error("socket has been disconnected"))}})}onpacket(i){if(i.nsp===this.nsp)switch(i.type){case tt.CONNECT:i.data&&i.data.sid?this.onconnect(i.data.sid,i.data.pid):this.emitReserved("connect_error",new Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case tt.EVENT:case tt.BINARY_EVENT:this.onevent(i);break;case tt.ACK:case tt.BINARY_ACK:this.onack(i);break;case tt.DISCONNECT:this.ondisconnect();break;case tt.CONNECT_ERROR:this.destroy();const s=new Error(i.data.message);s.data=i.data.data,this.emitReserved("connect_error",s);break}}onevent(i){const f=i.data||[];i.id!=null&&f.push(this.ack(i.id)),this.connected?this.emitEvent(f):this.receiveBuffer.push(Object.freeze(f))}emitEvent(i){if(this._anyListeners&&this._anyListeners.length){const f=this._anyListeners.slice();for(const s of f)s.apply(this,i)}super.emit.apply(this,i),this._pid&&i.length&&typeof i[i.length-1]=="string"&&(this._lastOffset=i[i.length-1])}ack(i){const f=this;let s=!1;return function(...m){s||(s=!0,f.packet({type:tt.ACK,id:i,data:m}))}}onack(i){const f=this.acks[i.id];typeof f=="function"&&(delete this.acks[i.id],f.withError&&i.data.unshift(null),f.apply(this,i.data))}onconnect(i,f){this.id=i,this.recovered=f&&this._pid===f,this._pid=f,this.connected=!0,this.emitBuffered(),this.emitReserved("connect"),this._drainQueue(!0)}emitBuffered(){this.receiveBuffer.forEach(i=>this.emitEvent(i)),this.receiveBuffer=[],this.sendBuffer.forEach(i=>{this.notifyOutgoingListeners(i),this.packet(i)}),this.sendBuffer=[]}ondisconnect(){this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach(i=>i()),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&this.packet({type:tt.DISCONNECT}),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(i){return this.flags.compress=i,this}get volatile(){return this.flags.volatile=!0,this}timeout(i){return this.flags.timeout=i,this}onAny(i){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(i),this}prependAny(i){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(i),this}offAny(i){if(!this._anyListeners)return this;if(i){const f=this._anyListeners;for(let s=0;s0&&o.jitter<=1?o.jitter:0,this.attempts=0}Bn.prototype.duration=function(){var o=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var i=Math.random(),f=Math.floor(i*this.jitter*o);o=(Math.floor(i*10)&1)==0?o-f:o+f}return Math.min(o,this.max)|0};Bn.prototype.reset=function(){this.attempts=0};Bn.prototype.setMin=function(o){this.ms=o};Bn.prototype.setMax=function(o){this.max=o};Bn.prototype.setJitter=function(o){this.jitter=o};class jf extends Ot{constructor(i,f){var s;super(),this.nsps={},this.subs=[],i&&typeof i=="object"&&(f=i,i=void 0),f=f||{},f.path=f.path||"/socket.io",this.opts=f,ai(this,f),this.reconnection(f.reconnection!==!1),this.reconnectionAttempts(f.reconnectionAttempts||1/0),this.reconnectionDelay(f.reconnectionDelay||1e3),this.reconnectionDelayMax(f.reconnectionDelayMax||5e3),this.randomizationFactor((s=f.randomizationFactor)!==null&&s!==void 0?s:.5),this.backoff=new Bn({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(f.timeout==null?2e4:f.timeout),this._readyState="closed",this.uri=i;const m=f.parser||k0;this.encoder=new m.Encoder,this.decoder=new m.Decoder,this._autoConnect=f.autoConnect!==!1,this._autoConnect&&this.open()}reconnection(i){return arguments.length?(this._reconnection=!!i,i||(this.skipReconnect=!0),this):this._reconnection}reconnectionAttempts(i){return i===void 0?this._reconnectionAttempts:(this._reconnectionAttempts=i,this)}reconnectionDelay(i){var f;return i===void 0?this._reconnectionDelay:(this._reconnectionDelay=i,(f=this.backoff)===null||f===void 0||f.setMin(i),this)}randomizationFactor(i){var f;return i===void 0?this._randomizationFactor:(this._randomizationFactor=i,(f=this.backoff)===null||f===void 0||f.setJitter(i),this)}reconnectionDelayMax(i){var f;return i===void 0?this._reconnectionDelayMax:(this._reconnectionDelayMax=i,(f=this.backoff)===null||f===void 0||f.setMax(i),this)}timeout(i){return arguments.length?(this._timeout=i,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&this.backoff.attempts===0&&this.reconnect()}open(i){if(~this._readyState.indexOf("open"))return this;this.engine=new H0(this.uri,this.opts);const f=this.engine,s=this;this._readyState="opening",this.skipReconnect=!1;const m=ze(f,"open",function(){s.onopen(),i&&i()}),E=B=>{this.cleanup(),this._readyState="closed",this.emitReserved("error",B),i?i(B):this.maybeReconnectOnOpen()},R=ze(f,"error",E);if(this._timeout!==!1){const B=this._timeout,M=this.setTimeoutFn(()=>{m(),E(new Error("timeout")),f.close()},B);this.opts.autoUnref&&M.unref(),this.subs.push(()=>{this.clearTimeoutFn(M)})}return this.subs.push(m),this.subs.push(R),this}connect(i){return this.open(i)}onopen(){this.cleanup(),this._readyState="open",this.emitReserved("open");const i=this.engine;this.subs.push(ze(i,"ping",this.onping.bind(this)),ze(i,"data",this.ondata.bind(this)),ze(i,"error",this.onerror.bind(this)),ze(i,"close",this.onclose.bind(this)),ze(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(i){try{this.decoder.add(i)}catch(f){this.onclose("parse error",f)}}ondecoded(i){ni(()=>{this.emitReserved("packet",i)},this.setTimeoutFn)}onerror(i){this.emitReserved("error",i)}socket(i,f){let s=this.nsps[i];return s?this._autoConnect&&!s.active&&s.connect():(s=new Sd(this,i,f),this.nsps[i]=s),s}_destroy(i){const f=Object.keys(this.nsps);for(const s of f)if(this.nsps[s].active)return;this._close()}_packet(i){const f=this.encoder.encode(i);for(let s=0;si()),this.subs.length=0,this.decoder.destroy()}_close(){this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close")}disconnect(){return this._close()}onclose(i,f){var s;this.cleanup(),(s=this.engine)===null||s===void 0||s.close(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",i,f),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;const i=this;if(this.backoff.attempts>=this._reconnectionAttempts)this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{const f=this.backoff.duration();this._reconnecting=!0;const s=this.setTimeoutFn(()=>{i.skipReconnect||(this.emitReserved("reconnect_attempt",i.backoff.attempts),!i.skipReconnect&&i.open(m=>{m?(i._reconnecting=!1,i.reconnect(),this.emitReserved("reconnect_error",m)):i.onreconnect()}))},f);this.opts.autoUnref&&s.unref(),this.subs.push(()=>{this.clearTimeoutFn(s)})}}onreconnect(){const i=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",i)}}const Ua={};function li(o,i){typeof o=="object"&&(i=o,o=void 0),i=i||{};const f=Y0(o,i.path||"/socket.io"),s=f.source,m=f.id,E=f.path,R=Ua[m]&&E in Ua[m].nsps,B=i.forceNew||i["force new connection"]||i.multiplex===!1||R;let M;return B?M=new jf(s,i):(Ua[m]||(Ua[m]=new jf(s,i)),M=Ua[m]),f.query&&!i.query&&(i.query=f.queryKey),M.socket(f.path,i)}Object.assign(li,{Manager:jf,Socket:Sd,io:li,connect:li});console.log("socket.io client loaded");const _d=li({transports:["websocket"],query:{role:"user"}}),Ed=Mt.createContext(_d),$0=({children:o})=>Y.jsx(Ed.Provider,{value:_d,children:o}),F0=()=>Mt.useContext(Ed),Td=Mt.createContext({connected:!1,session:null,logs:[],login:async()=>{},setRole:async()=>{},requestControl:async()=>{},releaseControl:async()=>{},subscribeAll:async()=>{}});function I0(o){return Mt.useCallback((i,f={})=>new Promise((s,m)=>{o.emit(i,f,(E={})=>{E.error?m(new Error(E.error)):s(E)})}),[o])}function P0({children:o}){const i=F0(),f=I0(i),[s,m]=Mt.useState(null),[E,R]=Mt.useState([]),[B,M]=Mt.useState(i.connected);Mt.useEffect(()=>{const x=()=>M(!0),K=()=>M(!1);return i.on("connect",x),i.on("disconnect",K),()=>{i.off("connect",x),i.off("disconnect",K)}},[i]),Mt.useEffect(()=>{function x(_t){m(_t)}function K(_t=[]){R(_t)}function Yt(_t){R(Ut=>[...Ut.slice(-199),_t])}return i.on("session:sync",x),i.on("log:init",K),i.on("log:entry",Yt),()=>{i.off("session:sync",x),i.off("log:init",K),i.off("log:entry",Yt)}},[i]);const A=Mt.useMemo(()=>({login:(x,K)=>f("auth:login",{username:x,password:K}),setRole:x=>f("session:setRole",{role:x}),requestControl:(x,K={})=>f("session:requestControl",{roverId:x,...K}),releaseControl:x=>f("session:releaseControl",{roverId:x}),subscribeAll:()=>f("session:subscribeAll")}),[f]),Q=Mt.useMemo(()=>({connected:B,session:s,logs:E,...A}),[A,B,E,s]);return Y.jsx(Td.Provider,{value:Q,children:o})}function qn(){return Mt.useContext(Td)}function tv({connected:o,role:i,mode:f}){const s=o?"bg-emerald-500/20 text-emerald-300":"bg-red-500/20 text-red-200";return Y.jsxs("div",{className:"flex flex-wrap items-center gap-3 text-sm",children:[Y.jsx("span",{className:`rounded-full px-3 py-1 font-medium ${s}`,children:o?"Connected":"Disconnected"}),Y.jsxs("span",{className:"rounded-full bg-slate-800/80 px-3 py-1 text-slate-200",children:["Role: ",i||"unknown"]}),Y.jsxs("span",{className:"rounded-full bg-slate-800/80 px-3 py-1 text-slate-200",children:["Mode: ",f||"--"]})]})}function ev(){const{logs:o}=qn();return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/70 p-4",children:[Y.jsxs("header",{className:"mb-3 flex items-center justify-between",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Server logs"}),Y.jsxs("span",{className:"text-xs uppercase tracking-[0.2em] text-slate-500",children:[o.length," entries"]})]}),Y.jsx("div",{className:"h-64 overflow-y-auto rounded-xl bg-slate-950/40 p-3 text-xs font-mono text-slate-300",children:o.length===0?Y.jsx("p",{children:"No logs yet."}):o.slice().reverse().map(i=>Y.jsxs("div",{className:"mb-2",children:[Y.jsx("span",{className:"text-slate-500",children:i.timestamp})," ",Y.jsxs("span",{className:"text-cyan-300",children:["[",i.level,"]"]})," ",i.label&&Y.jsxs("span",{className:"text-pink-300",children:["[",i.label,"]"]})," ",Y.jsx("span",{children:i.message})]},i.id))})]})}function lv(){const{session:o,requestControl:i}=qn(),f=o?.roster??[],[s,m]=Mt.useState({});async function E(R){m(B=>({...B,[R]:!0}));try{await i(R)}catch(B){alert(B.message)}finally{m(B=>({...B,[R]:!1}))}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Rovers"}),Y.jsxs("div",{className:"mt-4 space-y-3",children:[f.length===0&&Y.jsx("p",{className:"text-slate-400",children:"No rovers registered."}),f.map(R=>Y.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-3 rounded-xl bg-slate-950/40 px-4 py-3",children:[Y.jsxs("div",{children:[Y.jsx("p",{className:"text-white",children:R.name}),Y.jsxs("p",{className:"text-xs text-slate-400",children:["Locked: ",R.locked?"yes":"no"]})]}),Y.jsx("button",{type:"button",onClick:()=>E(R.id),disabled:s[R.id],className:"rounded-full bg-blue-600 px-4 py-1 text-sm font-semibold text-white disabled:opacity-50",children:s[R.id]?"Requesting…":"Request control"})]},R.id))]})]})}function nv(){const{session:o,releaseControl:i}=qn(),f=o?.assignment,s=f?.roverId,[m,E]=Mt.useState(!1);async function R(){if(s){E(!0);try{await i(s)}catch(B){alert(B.message)}finally{E(!1)}}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Assignment"}),s?Y.jsxs("div",{className:"mt-4 space-y-3",children:[Y.jsxs("p",{className:"text-slate-300",children:["Currently driving rover ",s]}),Y.jsx("button",{type:"button",onClick:R,disabled:m,className:"rounded-full bg-red-600 px-4 py-1 text-sm font-semibold text-white disabled:opacity-50",children:m?"Releasing…":"Release control"})]}):Y.jsxs("div",{className:"mt-4 text-slate-400",children:[Y.jsxs("p",{children:["Status: ",f?.status??"not assigned"]}),f?.queuePosition&&Y.jsxs("p",{children:["Queue position: ",f.queuePosition]})]})]})}function av(){const{session:o}=qn(),i=Mt.useMemo(()=>JSON.stringify(o??{},null,2),[o]);return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Session snapshot"}),Y.jsx("pre",{className:"mt-4 max-h-64 overflow-y-auto text-sm text-teal-200",children:i})]})}function uv(){const{login:o,setRole:i}=qn(),[f,s]=Mt.useState(""),[m,E]=Mt.useState(""),[R,B]=Mt.useState(!1);async function M(A){A.preventDefault(),B(!0);try{await o(f,m),s(""),E("")}catch(Q){alert(Q.message)}finally{B(!1)}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Authentication"}),Y.jsxs("form",{className:"mt-4 flex flex-col gap-3",onSubmit:M,children:[Y.jsx("input",{className:"rounded-lg border border-slate-800 bg-slate-950/60 px-3 py-2 text-white",placeholder:"Username",value:f,onChange:A=>s(A.target.value)}),Y.jsx("input",{className:"rounded-lg border border-slate-800 bg-slate-950/60 px-3 py-2 text-white",placeholder:"Password",type:"password",value:m,onChange:A=>E(A.target.value)}),Y.jsx("button",{type:"submit",disabled:R,className:"rounded-lg bg-emerald-600 py-2 font-semibold text-white disabled:opacity-50",children:R?"Logging in…":"Login as admin"})]}),Y.jsxs("div",{className:"mt-4 flex gap-3",children:[Y.jsx("button",{type:"button",onClick:()=>i("user"),className:"rounded-lg border border-slate-700 px-3 py-1 text-sm text-slate-200",children:"Driver mode"}),Y.jsx("button",{type:"button",onClick:()=>i("spectator"),className:"rounded-lg border border-slate-700 px-3 py-1 text-sm text-slate-200",children:"Spectator mode"})]})]})}function iv(){const{connected:o,session:i}=qn();return Y.jsx("div",{className:"min-h-screen bg-slate-950 text-slate-50",children:Y.jsxs("main",{className:"mx-auto flex max-w-6xl flex-col gap-6 px-6 py-10",children:[Y.jsxs("header",{className:"space-y-4",children:[Y.jsx("h1",{className:"text-4xl font-semibold text-white",children:"Multi Roomba Rover Console"}),Y.jsx(tv,{connected:o,role:i?.role,mode:i?.mode})]}),Y.jsxs("section",{className:"grid gap-6 lg:grid-cols-2",children:[Y.jsx(lv,{}),Y.jsx(nv,{}),Y.jsx(uv,{}),Y.jsx(av,{})]}),Y.jsx(ev,{})]})})}l0.createRoot(document.getElementById("root")).render(Y.jsx(Mt.StrictMode,{children:Y.jsx($0,{children:Y.jsx(P0,{children:Y.jsx(iv,{})})})})); diff --git a/server/public/index.html b/server/public/index.html index 16bf7679..3a642766 100644 --- a/server/public/index.html +++ b/server/public/index.html @@ -5,7 +5,7 @@ webui - + diff --git a/webui/src/lib/socket.js b/webui/src/lib/socket.js index 0684a23e..aa7aa7ea 100644 --- a/webui/src/lib/socket.js +++ b/webui/src/lib/socket.js @@ -3,7 +3,8 @@ import { io } from "socket.io-client"; console.log('socket.io client loaded') const serverUrl = import.meta.env.VITE_ROVERD_URL ?? "http://localhost:8080"; -export const socket = io(serverUrl, { +export const socket = io({ +// export const socket = io(serverUrl, { transports: ["websocket"], // skip polling if your backend supports it query: { role: "user" From b3f181ec4514816bc019b35b7f7444971f5da186 Mon Sep 17 00:00:00 2001 From: legop3 Date: Sat, 15 Nov 2025 04:17:35 -0500 Subject: [PATCH 03/61] guh --- .../{index-0y51eWnL.js => index-CtTKxUTT.js} | 10 +++++----- server/public/index.html | 2 +- webui/src/lib/socket.js | 19 ++++++++++--------- 3 files changed, 16 insertions(+), 15 deletions(-) rename server/public/assets/{index-0y51eWnL.js => index-CtTKxUTT.js} (70%) diff --git a/server/public/assets/index-0y51eWnL.js b/server/public/assets/index-CtTKxUTT.js similarity index 70% rename from server/public/assets/index-0y51eWnL.js rename to server/public/assets/index-CtTKxUTT.js index c37dad04..c71d0e42 100644 --- a/server/public/assets/index-0y51eWnL.js +++ b/server/public/assets/index-CtTKxUTT.js @@ -1,9 +1,9 @@ -(function(){const i=document.createElement("link").relList;if(i&&i.supports&&i.supports("modulepreload"))return;for(const m of document.querySelectorAll('link[rel="modulepreload"]'))s(m);new MutationObserver(m=>{for(const E of m)if(E.type==="childList")for(const R of E.addedNodes)R.tagName==="LINK"&&R.rel==="modulepreload"&&s(R)}).observe(document,{childList:!0,subtree:!0});function f(m){const E={};return m.integrity&&(E.integrity=m.integrity),m.referrerPolicy&&(E.referrerPolicy=m.referrerPolicy),m.crossOrigin==="use-credentials"?E.credentials="include":m.crossOrigin==="anonymous"?E.credentials="omit":E.credentials="same-origin",E}function s(m){if(m.ep)return;m.ep=!0;const E=f(m);fetch(m.href,E)}})();var Af={exports:{}},Ra={};var Jh;function Jm(){if(Jh)return Ra;Jh=1;var o=Symbol.for("react.transitional.element"),i=Symbol.for("react.fragment");function f(s,m,E){var R=null;if(E!==void 0&&(R=""+E),m.key!==void 0&&(R=""+m.key),"key"in m){E={};for(var B in m)B!=="key"&&(E[B]=m[B])}else E=m;return m=E.ref,{$$typeof:o,type:s,key:R,ref:m!==void 0?m:null,props:E}}return Ra.Fragment=i,Ra.jsx=f,Ra.jsxs=f,Ra}var kh;function km(){return kh||(kh=1,Af.exports=Jm()),Af.exports}var Y=km(),zf={exports:{}},G={};var Wh;function Wm(){if(Wh)return G;Wh=1;var o=Symbol.for("react.transitional.element"),i=Symbol.for("react.portal"),f=Symbol.for("react.fragment"),s=Symbol.for("react.strict_mode"),m=Symbol.for("react.profiler"),E=Symbol.for("react.consumer"),R=Symbol.for("react.context"),B=Symbol.for("react.forward_ref"),M=Symbol.for("react.suspense"),A=Symbol.for("react.memo"),Q=Symbol.for("react.lazy"),x=Symbol.for("react.activity"),K=Symbol.iterator;function Yt(y){return y===null||typeof y!="object"?null:(y=K&&y[K]||y["@@iterator"],typeof y=="function"?y:null)}var _t={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},Ut=Object.assign,qe={};function It(y,N,U){this.props=y,this.context=N,this.refs=qe,this.updater=U||_t}It.prototype.isReactComponent={},It.prototype.setState=function(y,N){if(typeof y!="object"&&typeof y!="function"&&y!=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,y,N,"setState")},It.prototype.forceUpdate=function(y){this.updater.enqueueForceUpdate(this,y,"forceUpdate")};function el(){}el.prototype=It.prototype;function jt(y,N,U){this.props=y,this.context=N,this.refs=qe,this.updater=U||_t}var se=jt.prototype=new el;se.constructor=jt,Ut(se,It.prototype),se.isPureReactComponent=!0;var Oe=Array.isArray;function Gt(){}var I={H:null,A:null,T:null,S:null},Vt=Object.prototype.hasOwnProperty;function Ne(y,N,U){var q=U.ref;return{$$typeof:o,type:y,key:N,ref:q!==void 0?q:null,props:U}}function kl(y,N){return Ne(y.type,N,y.props)}function Me(y){return typeof y=="object"&&y!==null&&y.$$typeof===o}function Zt(y){var N={"=":"=0",":":"=2"};return"$"+y.replace(/[=:]/g,function(U){return N[U]})}var Ml=/\/+/g;function He(y,N){return typeof y=="object"&&y!==null&&y.key!=null?Zt(""+y.key):N.toString(36)}function _e(y){switch(y.status){case"fulfilled":return y.value;case"rejected":throw y.reason;default:switch(typeof y.status=="string"?y.then(Gt,Gt):(y.status="pending",y.then(function(N){y.status==="pending"&&(y.status="fulfilled",y.value=N)},function(N){y.status==="pending"&&(y.status="rejected",y.reason=N)})),y.status){case"fulfilled":return y.value;case"rejected":throw y.reason}}throw y}function T(y,N,U,q,V){var J=typeof y;(J==="undefined"||J==="boolean")&&(y=null);var at=!1;if(y===null)at=!0;else switch(J){case"bigint":case"string":case"number":at=!0;break;case"object":switch(y.$$typeof){case o:case i:at=!0;break;case Q:return at=y._init,T(at(y._payload),N,U,q,V)}}if(at)return V=V(y),at=q===""?"."+He(y,0):q,Oe(V)?(U="",at!=null&&(U=at.replace(Ml,"$&/")+"/"),T(V,N,U,"",function(Hn){return Hn})):V!=null&&(Me(V)&&(V=kl(V,U+(V.key==null||y&&y.key===V.key?"":(""+V.key).replace(Ml,"$&/")+"/")+at)),N.push(V)),1;at=0;var Xt=q===""?".":q+":";if(Oe(y))for(var pt=0;pt>>1,rt=T[ct];if(0>>1;ctm(U,X))qm(V,U)?(T[ct]=V,T[q]=X,ct=q):(T[ct]=U,T[N]=X,ct=N);else if(qm(V,X))T[ct]=V,T[q]=X,ct=q;else break t}}return D}function m(T,D){var X=T.sortIndex-D.sortIndex;return X!==0?X:T.id-D.id}if(o.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var E=performance;o.unstable_now=function(){return E.now()}}else{var R=Date,B=R.now();o.unstable_now=function(){return R.now()-B}}var M=[],A=[],Q=1,x=null,K=3,Yt=!1,_t=!1,Ut=!1,qe=!1,It=typeof setTimeout=="function"?setTimeout:null,el=typeof clearTimeout=="function"?clearTimeout:null,jt=typeof setImmediate<"u"?setImmediate:null;function se(T){for(var D=f(A);D!==null;){if(D.callback===null)s(A);else if(D.startTime<=T)s(A),D.sortIndex=D.expirationTime,i(M,D);else break;D=f(A)}}function Oe(T){if(Ut=!1,se(T),!_t)if(f(M)!==null)_t=!0,Gt||(Gt=!0,Zt());else{var D=f(A);D!==null&&_e(Oe,D.startTime-T)}}var Gt=!1,I=-1,Vt=5,Ne=-1;function kl(){return qe?!0:!(o.unstable_now()-NeT&&kl());){var ct=x.callback;if(typeof ct=="function"){x.callback=null,K=x.priorityLevel;var rt=ct(x.expirationTime<=T);if(T=o.unstable_now(),typeof rt=="function"){x.callback=rt,se(T),D=!0;break e}x===f(M)&&s(M),se(T)}else s(M);x=f(M)}if(x!==null)D=!0;else{var y=f(A);y!==null&&_e(Oe,y.startTime-T),D=!1}}break t}finally{x=null,K=X,Yt=!1}D=void 0}}finally{D?Zt():Gt=!1}}}var Zt;if(typeof jt=="function")Zt=function(){jt(Me)};else if(typeof MessageChannel<"u"){var Ml=new MessageChannel,He=Ml.port2;Ml.port1.onmessage=Me,Zt=function(){He.postMessage(null)}}else Zt=function(){It(Me,0)};function _e(T,D){I=It(function(){T(o.unstable_now())},D)}o.unstable_IdlePriority=5,o.unstable_ImmediatePriority=1,o.unstable_LowPriority=4,o.unstable_NormalPriority=3,o.unstable_Profiling=null,o.unstable_UserBlockingPriority=2,o.unstable_cancelCallback=function(T){T.callback=null},o.unstable_forceFrameRate=function(T){0>T||125ct?(T.sortIndex=X,i(A,T),f(M)===null&&T===f(A)&&(Ut?(el(I),I=-1):Ut=!0,_e(Oe,X-ct))):(T.sortIndex=rt,i(M,T),_t||Yt||(_t=!0,Gt||(Gt=!0,Zt()))),T},o.unstable_shouldYield=kl,o.unstable_wrapCallback=function(T){var D=K;return function(){var X=K;K=D;try{return T.apply(this,arguments)}finally{K=X}}}})(Mf)),Mf}var Ih;function Fm(){return Ih||(Ih=1,Nf.exports=$m()),Nf.exports}var Rf={exports:{}},Lt={};var Ph;function Im(){if(Ph)return Lt;Ph=1;var o=Lf();function i(M){var A="https://react.dev/errors/"+M;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(o)}catch(i){console.error(i)}}return o(),Rf.exports=Im(),Rf.exports}var ed;function t0(){if(ed)return Da;ed=1;var o=Fm(),i=Lf(),f=Pm();function s(t){var e="https://react.dev/errors/"+t;if(1rt||(t.current=ct[rt],ct[rt]=null,rt--)}function U(t,e){rt++,ct[rt]=t.current,t.current=e}var q=y(null),V=y(null),J=y(null),at=y(null);function Xt(t,e){switch(U(J,e),U(V,t),U(q,null),e.nodeType){case 9:case 11:t=(t=e.documentElement)&&(t=t.namespaceURI)?vh(t):0;break;default:if(t=e.tagName,e=e.namespaceURI)e=vh(e),t=gh(e,t);else switch(t){case"svg":t=1;break;case"math":t=2;break;default:t=0}}N(q),U(q,t)}function pt(){N(q),N(V),N(J)}function Hn(t){t.memoizedState!==null&&U(at,t);var e=q.current,l=gh(e,t.type);e!==l&&(U(V,t),U(q,l))}function Ca(t){V.current===t&&(N(q),N(V)),at.current===t&&(N(at),za._currentValue=X)}var ui,wf;function Rl(t){if(ui===void 0)try{throw Error()}catch(l){var e=l.stack.trim().match(/\n( *(at )?)/);ui=e&&e[1]||"",wf=-1{for(const E of m)if(E.type==="childList")for(const R of E.addedNodes)R.tagName==="LINK"&&R.rel==="modulepreload"&&s(R)}).observe(document,{childList:!0,subtree:!0});function f(m){const E={};return m.integrity&&(E.integrity=m.integrity),m.referrerPolicy&&(E.referrerPolicy=m.referrerPolicy),m.crossOrigin==="use-credentials"?E.credentials="include":m.crossOrigin==="anonymous"?E.credentials="omit":E.credentials="same-origin",E}function s(m){if(m.ep)return;m.ep=!0;const E=f(m);fetch(m.href,E)}})();var Af={exports:{}},Ra={};var Wh;function km(){if(Wh)return Ra;Wh=1;var o=Symbol.for("react.transitional.element"),i=Symbol.for("react.fragment");function f(s,m,E){var R=null;if(E!==void 0&&(R=""+E),m.key!==void 0&&(R=""+m.key),"key"in m){E={};for(var B in m)B!=="key"&&(E[B]=m[B])}else E=m;return m=E.ref,{$$typeof:o,type:s,key:R,ref:m!==void 0?m:null,props:E}}return Ra.Fragment=i,Ra.jsx=f,Ra.jsxs=f,Ra}var $h;function Wm(){return $h||($h=1,Af.exports=km()),Af.exports}var Y=Wm(),zf={exports:{}},G={};var Fh;function $m(){if(Fh)return G;Fh=1;var o=Symbol.for("react.transitional.element"),i=Symbol.for("react.portal"),f=Symbol.for("react.fragment"),s=Symbol.for("react.strict_mode"),m=Symbol.for("react.profiler"),E=Symbol.for("react.consumer"),R=Symbol.for("react.context"),B=Symbol.for("react.forward_ref"),M=Symbol.for("react.suspense"),A=Symbol.for("react.memo"),Q=Symbol.for("react.lazy"),x=Symbol.for("react.activity"),K=Symbol.iterator;function Yt(y){return y===null||typeof y!="object"?null:(y=K&&y[K]||y["@@iterator"],typeof y=="function"?y:null)}var _t={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},Ut=Object.assign,qe={};function It(y,N,U){this.props=y,this.context=N,this.refs=qe,this.updater=U||_t}It.prototype.isReactComponent={},It.prototype.setState=function(y,N){if(typeof y!="object"&&typeof y!="function"&&y!=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,y,N,"setState")},It.prototype.forceUpdate=function(y){this.updater.enqueueForceUpdate(this,y,"forceUpdate")};function el(){}el.prototype=It.prototype;function jt(y,N,U){this.props=y,this.context=N,this.refs=qe,this.updater=U||_t}var se=jt.prototype=new el;se.constructor=jt,Ut(se,It.prototype),se.isPureReactComponent=!0;var Oe=Array.isArray;function Gt(){}var I={H:null,A:null,T:null,S:null},Vt=Object.prototype.hasOwnProperty;function Ne(y,N,U){var q=U.ref;return{$$typeof:o,type:y,key:N,ref:q!==void 0?q:null,props:U}}function kl(y,N){return Ne(y.type,N,y.props)}function Me(y){return typeof y=="object"&&y!==null&&y.$$typeof===o}function Zt(y){var N={"=":"=0",":":"=2"};return"$"+y.replace(/[=:]/g,function(U){return N[U]})}var Ml=/\/+/g;function He(y,N){return typeof y=="object"&&y!==null&&y.key!=null?Zt(""+y.key):N.toString(36)}function _e(y){switch(y.status){case"fulfilled":return y.value;case"rejected":throw y.reason;default:switch(typeof y.status=="string"?y.then(Gt,Gt):(y.status="pending",y.then(function(N){y.status==="pending"&&(y.status="fulfilled",y.value=N)},function(N){y.status==="pending"&&(y.status="rejected",y.reason=N)})),y.status){case"fulfilled":return y.value;case"rejected":throw y.reason}}throw y}function T(y,N,U,q,V){var J=typeof y;(J==="undefined"||J==="boolean")&&(y=null);var at=!1;if(y===null)at=!0;else switch(J){case"bigint":case"string":case"number":at=!0;break;case"object":switch(y.$$typeof){case o:case i:at=!0;break;case Q:return at=y._init,T(at(y._payload),N,U,q,V)}}if(at)return V=V(y),at=q===""?"."+He(y,0):q,Oe(V)?(U="",at!=null&&(U=at.replace(Ml,"$&/")+"/"),T(V,N,U,"",function(Hn){return Hn})):V!=null&&(Me(V)&&(V=kl(V,U+(V.key==null||y&&y.key===V.key?"":(""+V.key).replace(Ml,"$&/")+"/")+at)),N.push(V)),1;at=0;var Xt=q===""?".":q+":";if(Oe(y))for(var pt=0;pt>>1,rt=T[ct];if(0>>1;ctm(U,X))qm(V,U)?(T[ct]=V,T[q]=X,ct=q):(T[ct]=U,T[N]=X,ct=N);else if(qm(V,X))T[ct]=V,T[q]=X,ct=q;else break t}}return D}function m(T,D){var X=T.sortIndex-D.sortIndex;return X!==0?X:T.id-D.id}if(o.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var E=performance;o.unstable_now=function(){return E.now()}}else{var R=Date,B=R.now();o.unstable_now=function(){return R.now()-B}}var M=[],A=[],Q=1,x=null,K=3,Yt=!1,_t=!1,Ut=!1,qe=!1,It=typeof setTimeout=="function"?setTimeout:null,el=typeof clearTimeout=="function"?clearTimeout:null,jt=typeof setImmediate<"u"?setImmediate:null;function se(T){for(var D=f(A);D!==null;){if(D.callback===null)s(A);else if(D.startTime<=T)s(A),D.sortIndex=D.expirationTime,i(M,D);else break;D=f(A)}}function Oe(T){if(Ut=!1,se(T),!_t)if(f(M)!==null)_t=!0,Gt||(Gt=!0,Zt());else{var D=f(A);D!==null&&_e(Oe,D.startTime-T)}}var Gt=!1,I=-1,Vt=5,Ne=-1;function kl(){return qe?!0:!(o.unstable_now()-NeT&&kl());){var ct=x.callback;if(typeof ct=="function"){x.callback=null,K=x.priorityLevel;var rt=ct(x.expirationTime<=T);if(T=o.unstable_now(),typeof rt=="function"){x.callback=rt,se(T),D=!0;break e}x===f(M)&&s(M),se(T)}else s(M);x=f(M)}if(x!==null)D=!0;else{var y=f(A);y!==null&&_e(Oe,y.startTime-T),D=!1}}break t}finally{x=null,K=X,Yt=!1}D=void 0}}finally{D?Zt():Gt=!1}}}var Zt;if(typeof jt=="function")Zt=function(){jt(Me)};else if(typeof MessageChannel<"u"){var Ml=new MessageChannel,He=Ml.port2;Ml.port1.onmessage=Me,Zt=function(){He.postMessage(null)}}else Zt=function(){It(Me,0)};function _e(T,D){I=It(function(){T(o.unstable_now())},D)}o.unstable_IdlePriority=5,o.unstable_ImmediatePriority=1,o.unstable_LowPriority=4,o.unstable_NormalPriority=3,o.unstable_Profiling=null,o.unstable_UserBlockingPriority=2,o.unstable_cancelCallback=function(T){T.callback=null},o.unstable_forceFrameRate=function(T){0>T||125ct?(T.sortIndex=X,i(A,T),f(M)===null&&T===f(A)&&(Ut?(el(I),I=-1):Ut=!0,_e(Oe,X-ct))):(T.sortIndex=rt,i(M,T),_t||Yt||(_t=!0,Gt||(Gt=!0,Zt()))),T},o.unstable_shouldYield=kl,o.unstable_wrapCallback=function(T){var D=K;return function(){var X=K;K=D;try{return T.apply(this,arguments)}finally{K=X}}}})(Mf)),Mf}var td;function Im(){return td||(td=1,Nf.exports=Fm()),Nf.exports}var Rf={exports:{}},Lt={};var ed;function Pm(){if(ed)return Lt;ed=1;var o=Xf();function i(M){var A="https://react.dev/errors/"+M;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(o)}catch(i){console.error(i)}}return o(),Rf.exports=Pm(),Rf.exports}var nd;function e0(){if(nd)return Da;nd=1;var o=Im(),i=Xf(),f=t0();function s(t){var e="https://react.dev/errors/"+t;if(1rt||(t.current=ct[rt],ct[rt]=null,rt--)}function U(t,e){rt++,ct[rt]=t.current,t.current=e}var q=y(null),V=y(null),J=y(null),at=y(null);function Xt(t,e){switch(U(J,e),U(V,t),U(q,null),e.nodeType){case 9:case 11:t=(t=e.documentElement)&&(t=t.namespaceURI)?ph(t):0;break;default:if(t=e.tagName,e=e.namespaceURI)e=ph(e),t=Sh(e,t);else switch(t){case"svg":t=1;break;case"math":t=2;break;default:t=0}}N(q),U(q,t)}function pt(){N(q),N(V),N(J)}function Hn(t){t.memoizedState!==null&&U(at,t);var e=q.current,l=Sh(e,t.type);e!==l&&(U(V,t),U(q,l))}function Ca(t){V.current===t&&(N(q),N(V)),at.current===t&&(N(at),za._currentValue=X)}var ui,Jf;function Rl(t){if(ui===void 0)try{throw Error()}catch(l){var e=l.stack.trim().match(/\n( *(at )?)/);ui=e&&e[1]||"",Jf=-1)":-1a||h[n]!==p[a]){var _=` -`+h[n].replace(" at new "," at ");return t.displayName&&_.includes("")&&(_=_.replace("",t.displayName)),_}while(1<=n&&0<=a);break}}}finally{ii=!1,Error.prepareStackTrace=l}return(l=t?t.displayName||t.name:"")?Rl(l):""}function Ad(t,e){switch(t.tag){case 26:case 27:case 5:return Rl(t.type);case 16:return Rl("Lazy");case 13:return t.child!==e&&e!==null?Rl("Suspense Fallback"):Rl("Suspense");case 19:return Rl("SuspenseList");case 0:case 15:return ci(t.type,!1);case 11:return ci(t.type.render,!1);case 1:return ci(t.type,!0);case 31:return Rl("Activity");default:return""}}function Kf(t){try{var e="",l=null;do e+=Ad(t,l),l=t,t=t.return;while(t);return e}catch(n){return` +`+h[n].replace(" at new "," at ");return t.displayName&&_.includes("")&&(_=_.replace("",t.displayName)),_}while(1<=n&&0<=a);break}}}finally{ii=!1,Error.prepareStackTrace=l}return(l=t?t.displayName||t.name:"")?Rl(l):""}function zd(t,e){switch(t.tag){case 26:case 27:case 5:return Rl(t.type);case 16:return Rl("Lazy");case 13:return t.child!==e&&e!==null?Rl("Suspense Fallback"):Rl("Suspense");case 19:return Rl("SuspenseList");case 0:case 15:return ci(t.type,!1);case 11:return ci(t.type.render,!1);case 1:return ci(t.type,!0);case 31:return Rl("Activity");default:return""}}function kf(t){try{var e="",l=null;do e+=zd(t,l),l=t,t=t.return;while(t);return e}catch(n){return` Error generating stack: `+n.message+` -`+n.stack}}var fi=Object.prototype.hasOwnProperty,si=o.unstable_scheduleCallback,oi=o.unstable_cancelCallback,zd=o.unstable_shouldYield,Od=o.unstable_requestPaint,Pt=o.unstable_now,Nd=o.unstable_getCurrentPriorityLevel,Jf=o.unstable_ImmediatePriority,kf=o.unstable_UserBlockingPriority,Ba=o.unstable_NormalPriority,Md=o.unstable_LowPriority,Wf=o.unstable_IdlePriority,Rd=o.log,Dd=o.unstable_setDisableYieldValue,Yn=null,te=null;function ll(t){if(typeof Rd=="function"&&Dd(t),te&&typeof te.setStrictMode=="function")try{te.setStrictMode(Yn,t)}catch{}}var ee=Math.clz32?Math.clz32:Cd,Ud=Math.log,xd=Math.LN2;function Cd(t){return t>>>=0,t===0?32:31-(Ud(t)/xd|0)|0}var qa=256,Ha=262144,Ya=4194304;function Dl(t){var e=t&42;if(e!==0)return e;switch(t&-t){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return t&261888;case 262144:case 524288:case 1048576:case 2097152:return t&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return t&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return t}}function ja(t,e,l){var n=t.pendingLanes;if(n===0)return 0;var a=0,u=t.suspendedLanes,c=t.pingedLanes;t=t.warmLanes;var r=n&134217727;return r!==0?(n=r&~u,n!==0?a=Dl(n):(c&=r,c!==0?a=Dl(c):l||(l=r&~t,l!==0&&(a=Dl(l))))):(r=n&~u,r!==0?a=Dl(r):c!==0?a=Dl(c):l||(l=n&~t,l!==0&&(a=Dl(l)))),a===0?0:e!==0&&e!==a&&(e&u)===0&&(u=a&-a,l=e&-e,u>=l||u===32&&(l&4194048)!==0)?e:a}function jn(t,e){return(t.pendingLanes&~(t.suspendedLanes&~t.pingedLanes)&e)===0}function Bd(t,e){switch(t){case 1:case 2:case 4:case 8:case 64:return e+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 e+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 $f(){var t=Ya;return Ya<<=1,(Ya&62914560)===0&&(Ya=4194304),t}function ri(t){for(var e=[],l=0;31>l;l++)e.push(t);return e}function Ln(t,e){t.pendingLanes|=e,e!==268435456&&(t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0)}function qd(t,e,l,n,a,u){var c=t.pendingLanes;t.pendingLanes=l,t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0,t.expiredLanes&=l,t.entangledLanes&=l,t.errorRecoveryDisabledLanes&=l,t.shellSuspendCounter=0;var r=t.entanglements,h=t.expirationTimes,p=t.hiddenUpdates;for(l=c&~l;0"u")return null;try{return t.activeElement||t.body}catch{return t.body}}var Qd=/[\n"\\]/g;function re(t){return t.replace(Qd,function(e){return"\\"+e.charCodeAt(0).toString(16)+" "})}function gi(t,e,l,n,a,u,c,r){t.name="",c!=null&&typeof c!="function"&&typeof c!="symbol"&&typeof c!="boolean"?t.type=c:t.removeAttribute("type"),e!=null?c==="number"?(e===0&&t.value===""||t.value!=e)&&(t.value=""+oe(e)):t.value!==""+oe(e)&&(t.value=""+oe(e)):c!=="submit"&&c!=="reset"||t.removeAttribute("value"),e!=null?pi(t,c,oe(e)):l!=null?pi(t,c,oe(l)):n!=null&&t.removeAttribute("value"),a==null&&u!=null&&(t.defaultChecked=!!u),a!=null&&(t.checked=a&&typeof a!="function"&&typeof a!="symbol"),r!=null&&typeof r!="function"&&typeof r!="symbol"&&typeof r!="boolean"?t.name=""+oe(r):t.removeAttribute("name")}function ss(t,e,l,n,a,u,c,r){if(u!=null&&typeof u!="function"&&typeof u!="symbol"&&typeof u!="boolean"&&(t.type=u),e!=null||l!=null){if(!(u!=="submit"&&u!=="reset"||e!=null)){vi(t);return}l=l!=null?""+oe(l):"",e=e!=null?""+oe(e):l,r||e===t.value||(t.value=e),t.defaultValue=e}n=n??a,n=typeof n!="function"&&typeof n!="symbol"&&!!n,t.checked=r?t.checked:!!n,t.defaultChecked=!!n,c!=null&&typeof c!="function"&&typeof c!="symbol"&&typeof c!="boolean"&&(t.name=c),vi(t)}function pi(t,e,l){e==="number"&&Qa(t.ownerDocument)===t||t.defaultValue===""+l||(t.defaultValue=""+l)}function tn(t,e,l,n){if(t=t.options,e){e={};for(var a=0;a"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Ti=!1;if(Le)try{var Vn={};Object.defineProperty(Vn,"passive",{get:function(){Ti=!0}}),window.addEventListener("test",Vn,Vn),window.removeEventListener("test",Vn,Vn)}catch{Ti=!1}var al=null,Ai=null,Va=null;function vs(){if(Va)return Va;var t,e=Ai,l=e.length,n,a="value"in al?al.value:al.textContent,u=a.length;for(t=0;t=Kn),Es=" ",Ts=!1;function As(t,e){switch(t){case"keyup":return my.indexOf(e.keyCode)!==-1;case"keydown":return e.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function zs(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var an=!1;function gy(t,e){switch(t){case"compositionend":return zs(e);case"keypress":return e.which!==32?null:(Ts=!0,Es);case"textInput":return t=e.data,t===Es&&Ts?null:t;default:return null}}function py(t,e){if(an)return t==="compositionend"||!Ri&&As(t,e)?(t=vs(),Va=Ai=al=null,an=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(e.ctrlKey||e.altKey||e.metaKey)||e.ctrlKey&&e.altKey){if(e.char&&1=e)return{node:l,offset:e-t};t=n}t:{for(;l;){if(l.nextSibling){l=l.nextSibling;break t}l=l.parentNode}l=void 0}l=Cs(l)}}function qs(t,e){return t&&e?t===e?!0:t&&t.nodeType===3?!1:e&&e.nodeType===3?qs(t,e.parentNode):"contains"in t?t.contains(e):t.compareDocumentPosition?!!(t.compareDocumentPosition(e)&16):!1:!1}function Hs(t){t=t!=null&&t.ownerDocument!=null&&t.ownerDocument.defaultView!=null?t.ownerDocument.defaultView:window;for(var e=Qa(t.document);e instanceof t.HTMLIFrameElement;){try{var l=typeof e.contentWindow.location.href=="string"}catch{l=!1}if(l)t=e.contentWindow;else break;e=Qa(t.document)}return e}function xi(t){var e=t&&t.nodeName&&t.nodeName.toLowerCase();return e&&(e==="input"&&(t.type==="text"||t.type==="search"||t.type==="tel"||t.type==="url"||t.type==="password")||e==="textarea"||t.contentEditable==="true")}var Oy=Le&&"documentMode"in document&&11>=document.documentMode,un=null,Ci=null,$n=null,Bi=!1;function Ys(t,e,l){var n=l.window===l?l.document:l.nodeType===9?l:l.ownerDocument;Bi||un==null||un!==Qa(n)||(n=un,"selectionStart"in n&&xi(n)?n={start:n.selectionStart,end:n.selectionEnd}:(n=(n.ownerDocument&&n.ownerDocument.defaultView||window).getSelection(),n={anchorNode:n.anchorNode,anchorOffset:n.anchorOffset,focusNode:n.focusNode,focusOffset:n.focusOffset}),$n&&Wn($n,n)||($n=n,n=Hu(Ci,"onSelect"),0>=c,a-=c,Re=1<<32-ee(e)+a|l<w?(F=H,H=null):F=H.sibling;var lt=b(v,H,g[w],z);if(lt===null){H===null&&(H=F);break}t&&H&<.alternate===null&&e(v,H),d=u(lt,d,w),et===null?j=lt:et.sibling=lt,et=lt,H=F}if(w===g.length)return l(v,H),P&&Qe(v,w),j;if(H===null){for(;ww?(F=H,H=null):F=H.sibling;var Ol=b(v,H,lt.value,z);if(Ol===null){H===null&&(H=F);break}t&&H&&Ol.alternate===null&&e(v,H),d=u(Ol,d,w),et===null?j=Ol:et.sibling=Ol,et=Ol,H=F}if(lt.done)return l(v,H),P&&Qe(v,w),j;if(H===null){for(;!lt.done;w++,lt=g.next())lt=O(v,lt.value,z),lt!==null&&(d=u(lt,d,w),et===null?j=lt:et.sibling=lt,et=lt);return P&&Qe(v,w),j}for(H=n(H);!lt.done;w++,lt=g.next())lt=S(H,v,w,lt.value,z),lt!==null&&(t&<.alternate!==null&&H.delete(lt.key===null?w:lt.key),d=u(lt,d,w),et===null?j=lt:et.sibling=lt,et=lt);return t&&H.forEach(function(Km){return e(v,Km)}),P&&Qe(v,w),j}function ot(v,d,g,z){if(typeof g=="object"&&g!==null&&g.type===Ut&&g.key===null&&(g=g.props.children),typeof g=="object"&&g!==null){switch(g.$$typeof){case Yt:t:{for(var j=g.key;d!==null;){if(d.key===j){if(j=g.type,j===Ut){if(d.tag===7){l(v,d.sibling),z=a(d,g.props.children),z.return=v,v=z;break t}}else if(d.elementType===j||typeof j=="object"&&j!==null&&j.$$typeof===Vt&&Ql(j)===d.type){l(v,d.sibling),z=a(d,g.props),la(z,g),z.return=v,v=z;break t}l(v,d);break}else e(v,d);d=d.sibling}g.type===Ut?(z=Hl(g.props.children,v.mode,z,g.key),z.return=v,v=z):(z=Pa(g.type,g.key,g.props,null,v.mode,z),la(z,g),z.return=v,v=z)}return c(v);case _t:t:{for(j=g.key;d!==null;){if(d.key===j)if(d.tag===4&&d.stateNode.containerInfo===g.containerInfo&&d.stateNode.implementation===g.implementation){l(v,d.sibling),z=a(d,g.children||[]),z.return=v,v=z;break t}else{l(v,d);break}else e(v,d);d=d.sibling}z=Qi(g,v.mode,z),z.return=v,v=z}return c(v);case Vt:return g=Ql(g),ot(v,d,g,z)}if(_e(g))return C(v,d,g,z);if(Zt(g)){if(j=Zt(g),typeof j!="function")throw Error(s(150));return g=j.call(g),L(v,d,g,z)}if(typeof g.then=="function")return ot(v,d,iu(g),z);if(g.$$typeof===jt)return ot(v,d,lu(v,g),z);cu(v,g)}return typeof g=="string"&&g!==""||typeof g=="number"||typeof g=="bigint"?(g=""+g,d!==null&&d.tag===6?(l(v,d.sibling),z=a(d,g),z.return=v,v=z):(l(v,d),z=Xi(g,v.mode,z),z.return=v,v=z),c(v)):l(v,d)}return function(v,d,g,z){try{ea=0;var j=ot(v,d,g,z);return gn=null,j}catch(H){if(H===vn||H===au)throw H;var et=ne(29,H,null,v.mode);return et.lanes=z,et.return=v,et}finally{}}}var Vl=io(!0),co=io(!1),sl=!1;function Pi(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function tc(t,e){t=t.updateQueue,e.updateQueue===t&&(e.updateQueue={baseState:t.baseState,firstBaseUpdate:t.firstBaseUpdate,lastBaseUpdate:t.lastBaseUpdate,shared:t.shared,callbacks:null})}function ol(t){return{lane:t,tag:0,payload:null,callback:null,next:null}}function rl(t,e,l){var n=t.updateQueue;if(n===null)return null;if(n=n.shared,(nt&2)!==0){var a=n.pending;return a===null?e.next=e:(e.next=a.next,a.next=e),n.pending=e,e=Ia(t),Zs(t,null,l),e}return Fa(t,n,e,l),Ia(t)}function na(t,e,l){if(e=e.updateQueue,e!==null&&(e=e.shared,(l&4194048)!==0)){var n=e.lanes;n&=t.pendingLanes,l|=n,e.lanes=l,If(t,l)}}function ec(t,e){var l=t.updateQueue,n=t.alternate;if(n!==null&&(n=n.updateQueue,l===n)){var a=null,u=null;if(l=l.firstBaseUpdate,l!==null){do{var c={lane:l.lane,tag:l.tag,payload:l.payload,callback:null,next:null};u===null?a=u=c:u=u.next=c,l=l.next}while(l!==null);u===null?a=u=e:u=u.next=e}else a=u=e;l={baseState:n.baseState,firstBaseUpdate:a,lastBaseUpdate:u,shared:n.shared,callbacks:n.callbacks},t.updateQueue=l;return}t=l.lastBaseUpdate,t===null?l.firstBaseUpdate=e:t.next=e,l.lastBaseUpdate=e}var lc=!1;function aa(){if(lc){var t=mn;if(t!==null)throw t}}function ua(t,e,l,n){lc=!1;var a=t.updateQueue;sl=!1;var u=a.firstBaseUpdate,c=a.lastBaseUpdate,r=a.shared.pending;if(r!==null){a.shared.pending=null;var h=r,p=h.next;h.next=null,c===null?u=p:c.next=p,c=h;var _=t.alternate;_!==null&&(_=_.updateQueue,r=_.lastBaseUpdate,r!==c&&(r===null?_.firstBaseUpdate=p:r.next=p,_.lastBaseUpdate=h))}if(u!==null){var O=a.baseState;c=0,_=p=h=null,r=u;do{var b=r.lane&-536870913,S=b!==r.lane;if(S?($&b)===b:(n&b)===b){b!==0&&b===yn&&(lc=!0),_!==null&&(_=_.next={lane:0,tag:r.tag,payload:r.payload,callback:null,next:null});t:{var C=t,L=r;b=e;var ot=l;switch(L.tag){case 1:if(C=L.payload,typeof C=="function"){O=C.call(ot,O,b);break t}O=C;break t;case 3:C.flags=C.flags&-65537|128;case 0:if(C=L.payload,b=typeof C=="function"?C.call(ot,O,b):C,b==null)break t;O=x({},O,b);break t;case 2:sl=!0}}b=r.callback,b!==null&&(t.flags|=64,S&&(t.flags|=8192),S=a.callbacks,S===null?a.callbacks=[b]:S.push(b))}else S={lane:b,tag:r.tag,payload:r.payload,callback:r.callback,next:null},_===null?(p=_=S,h=O):_=_.next=S,c|=b;if(r=r.next,r===null){if(r=a.shared.pending,r===null)break;S=r,r=S.next,S.next=null,a.lastBaseUpdate=S,a.shared.pending=null}}while(!0);_===null&&(h=O),a.baseState=h,a.firstBaseUpdate=p,a.lastBaseUpdate=_,u===null&&(a.shared.lanes=0),vl|=c,t.lanes=c,t.memoizedState=O}}function fo(t,e){if(typeof t!="function")throw Error(s(191,t));t.call(e)}function so(t,e){var l=t.callbacks;if(l!==null)for(t.callbacks=null,t=0;tu?u:8;var c=T.T,r={};T.T=r,_c(t,!1,e,l);try{var h=a(),p=T.S;if(p!==null&&p(r,h),h!==null&&typeof h=="object"&&typeof h.then=="function"){var _=qy(h,n);fa(t,e,_,fe(t))}else fa(t,e,n,fe(t))}catch(O){fa(t,e,{then:function(){},status:"rejected",reason:O},fe())}finally{D.p=u,c!==null&&r.types!==null&&(c.types=r.types),T.T=c}}function Qy(){}function bc(t,e,l,n){if(t.tag!==5)throw Error(s(476));var a=Go(t).queue;Qo(t,a,e,X,l===null?Qy:function(){return Vo(t),l(n)})}function Go(t){var e=t.memoizedState;if(e!==null)return e;e={memoizedState:X,baseState:X,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:we,lastRenderedState:X},next:null};var l={};return e.next={memoizedState:l,baseState:l,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:we,lastRenderedState:l},next:null},t.memoizedState=e,t=t.alternate,t!==null&&(t.memoizedState=e),e}function Vo(t){var e=Go(t);e.next===null&&(e=t.alternate.memoizedState),fa(t,e.next.queue,{},fe())}function Sc(){return Bt(za)}function Zo(){return St().memoizedState}function wo(){return St().memoizedState}function Gy(t){for(var e=t.return;e!==null;){switch(e.tag){case 24:case 3:var l=fe();t=ol(l);var n=rl(e,t,l);n!==null&&(Ft(n,e,l),na(n,e,l)),e={cache:Wi()},t.payload=e;return}e=e.return}}function Vy(t,e,l){var n=fe();l={lane:n,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},gu(t)?Jo(e,l):(l=ji(t,e,l,n),l!==null&&(Ft(l,t,n),ko(l,e,n)))}function Ko(t,e,l){var n=fe();fa(t,e,l,n)}function fa(t,e,l,n){var a={lane:n,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null};if(gu(t))Jo(e,a);else{var u=t.alternate;if(t.lanes===0&&(u===null||u.lanes===0)&&(u=e.lastRenderedReducer,u!==null))try{var c=e.lastRenderedState,r=u(c,l);if(a.hasEagerState=!0,a.eagerState=r,le(r,c))return Fa(t,e,a,0),ht===null&&$a(),!1}catch{}finally{}if(l=ji(t,e,a,n),l!==null)return Ft(l,t,n),ko(l,e,n),!0}return!1}function _c(t,e,l,n){if(n={lane:2,revertLane:Pc(),gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},gu(t)){if(e)throw Error(s(479))}else e=ji(t,l,n,2),e!==null&&Ft(e,t,2)}function gu(t){var e=t.alternate;return t===Z||e!==null&&e===Z}function Jo(t,e){bn=ou=!0;var l=t.pending;l===null?e.next=e:(e.next=l.next,l.next=e),t.pending=e}function ko(t,e,l){if((l&4194048)!==0){var n=e.lanes;n&=t.pendingLanes,l|=n,e.lanes=l,If(t,l)}}var sa={readContext:Bt,use:du,useCallback:vt,useContext:vt,useEffect:vt,useImperativeHandle:vt,useLayoutEffect:vt,useInsertionEffect:vt,useMemo:vt,useReducer:vt,useRef:vt,useState:vt,useDebugValue:vt,useDeferredValue:vt,useTransition:vt,useSyncExternalStore:vt,useId:vt,useHostTransitionStatus:vt,useFormState:vt,useActionState:vt,useOptimistic:vt,useMemoCache:vt,useCacheRefresh:vt};sa.useEffectEvent=vt;var Wo={readContext:Bt,use:du,useCallback:function(t,e){return Qt().memoizedState=[t,e===void 0?null:e],t},useContext:Bt,useEffect:xo,useImperativeHandle:function(t,e,l){l=l!=null?l.concat([t]):null,mu(4194308,4,Ho.bind(null,e,t),l)},useLayoutEffect:function(t,e){return mu(4194308,4,t,e)},useInsertionEffect:function(t,e){mu(4,2,t,e)},useMemo:function(t,e){var l=Qt();e=e===void 0?null:e;var n=t();if(Zl){ll(!0);try{t()}finally{ll(!1)}}return l.memoizedState=[n,e],n},useReducer:function(t,e,l){var n=Qt();if(l!==void 0){var a=l(e);if(Zl){ll(!0);try{l(e)}finally{ll(!1)}}}else a=e;return n.memoizedState=n.baseState=a,t={pending:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:a},n.queue=t,t=t.dispatch=Vy.bind(null,Z,t),[n.memoizedState,t]},useRef:function(t){var e=Qt();return t={current:t},e.memoizedState=t},useState:function(t){t=yc(t);var e=t.queue,l=Ko.bind(null,Z,e);return e.dispatch=l,[t.memoizedState,l]},useDebugValue:gc,useDeferredValue:function(t,e){var l=Qt();return pc(l,t,e)},useTransition:function(){var t=yc(!1);return t=Qo.bind(null,Z,t.queue,!0,!1),Qt().memoizedState=t,[!1,t]},useSyncExternalStore:function(t,e,l){var n=Z,a=Qt();if(P){if(l===void 0)throw Error(s(407));l=l()}else{if(l=e(),ht===null)throw Error(s(349));($&127)!==0||vo(n,e,l)}a.memoizedState=l;var u={value:l,getSnapshot:e};return a.queue=u,xo(po.bind(null,n,u,t),[t]),n.flags|=2048,_n(9,{destroy:void 0},go.bind(null,n,u,l,e),null),l},useId:function(){var t=Qt(),e=ht.identifierPrefix;if(P){var l=De,n=Re;l=(n&~(1<<32-ee(n)-1)).toString(32)+l,e="_"+e+"R_"+l,l=ru++,0<\/script>",u=u.removeChild(u.firstChild);break;case"select":u=typeof n.is=="string"?c.createElement("select",{is:n.is}):c.createElement("select"),n.multiple?u.multiple=!0:n.size&&(u.size=n.size);break;default:u=typeof n.is=="string"?c.createElement(a,{is:n.is}):c.createElement(a)}}u[xt]=e,u[wt]=n;t:for(c=e.child;c!==null;){if(c.tag===5||c.tag===6)u.appendChild(c.stateNode);else if(c.tag!==4&&c.tag!==27&&c.child!==null){c.child.return=c,c=c.child;continue}if(c===e)break t;for(;c.sibling===null;){if(c.return===null||c.return===e)break t;c=c.return}c.sibling.return=c.return,c=c.sibling}e.stateNode=u;t:switch(Ht(u,a,n),a){case"button":case"input":case"select":case"textarea":n=!!n.autoFocus;break t;case"img":n=!0;break t;default:n=!1}n&&Je(e)}}return yt(e),qc(e,e.type,t===null?null:t.memoizedProps,e.pendingProps,l),null;case 6:if(t&&e.stateNode!=null)t.memoizedProps!==n&&Je(e);else{if(typeof n!="string"&&e.stateNode===null)throw Error(s(166));if(t=J.current,hn(e)){if(t=e.stateNode,l=e.memoizedProps,n=null,a=Ct,a!==null)switch(a.tag){case 27:case 5:n=a.memoizedProps}t[xt]=e,t=!!(t.nodeValue===l||n!==null&&n.suppressHydrationWarning===!0||yh(t.nodeValue,l)),t||cl(e,!0)}else t=Yu(t).createTextNode(n),t[xt]=e,e.stateNode=t}return yt(e),null;case 31:if(l=e.memoizedState,t===null||t.memoizedState!==null){if(n=hn(e),l!==null){if(t===null){if(!n)throw Error(s(318));if(t=e.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(s(557));t[xt]=e}else Yl(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;yt(e),t=!1}else l=wi(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=l),t=!0;if(!t)return e.flags&256?(ue(e),e):(ue(e),null);if((e.flags&128)!==0)throw Error(s(558))}return yt(e),null;case 13:if(n=e.memoizedState,t===null||t.memoizedState!==null&&t.memoizedState.dehydrated!==null){if(a=hn(e),n!==null&&n.dehydrated!==null){if(t===null){if(!a)throw Error(s(318));if(a=e.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(s(317));a[xt]=e}else Yl(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;yt(e),a=!1}else a=wi(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=a),a=!0;if(!a)return e.flags&256?(ue(e),e):(ue(e),null)}return ue(e),(e.flags&128)!==0?(e.lanes=l,e):(l=n!==null,t=t!==null&&t.memoizedState!==null,l&&(n=e.child,a=null,n.alternate!==null&&n.alternate.memoizedState!==null&&n.alternate.memoizedState.cachePool!==null&&(a=n.alternate.memoizedState.cachePool.pool),u=null,n.memoizedState!==null&&n.memoizedState.cachePool!==null&&(u=n.memoizedState.cachePool.pool),u!==a&&(n.flags|=2048)),l!==t&&l&&(e.child.flags|=8192),Eu(e,e.updateQueue),yt(e),null);case 4:return pt(),t===null&&nf(e.stateNode.containerInfo),yt(e),null;case 10:return Ve(e.type),yt(e),null;case 19:if(N(bt),n=e.memoizedState,n===null)return yt(e),null;if(a=(e.flags&128)!==0,u=n.rendering,u===null)if(a)ra(n,!1);else{if(gt!==0||t!==null&&(t.flags&128)!==0)for(t=e.child;t!==null;){if(u=su(t),u!==null){for(e.flags|=128,ra(n,!1),t=u.updateQueue,e.updateQueue=t,Eu(e,t),e.subtreeFlags=0,t=l,l=e.child;l!==null;)ws(l,t),l=l.sibling;return U(bt,bt.current&1|2),P&&Qe(e,n.treeForkCount),e.child}t=t.sibling}n.tail!==null&&Pt()>Nu&&(e.flags|=128,a=!0,ra(n,!1),e.lanes=4194304)}else{if(!a)if(t=su(u),t!==null){if(e.flags|=128,a=!0,t=t.updateQueue,e.updateQueue=t,Eu(e,t),ra(n,!0),n.tail===null&&n.tailMode==="hidden"&&!u.alternate&&!P)return yt(e),null}else 2*Pt()-n.renderingStartTime>Nu&&l!==536870912&&(e.flags|=128,a=!0,ra(n,!1),e.lanes=4194304);n.isBackwards?(u.sibling=e.child,e.child=u):(t=n.last,t!==null?t.sibling=u:e.child=u,n.last=u)}return n.tail!==null?(t=n.tail,n.rendering=t,n.tail=t.sibling,n.renderingStartTime=Pt(),t.sibling=null,l=bt.current,U(bt,a?l&1|2:l&1),P&&Qe(e,n.treeForkCount),t):(yt(e),null);case 22:case 23:return ue(e),ac(),n=e.memoizedState!==null,t!==null?t.memoizedState!==null!==n&&(e.flags|=8192):n&&(e.flags|=8192),n?(l&536870912)!==0&&(e.flags&128)===0&&(yt(e),e.subtreeFlags&6&&(e.flags|=8192)):yt(e),l=e.updateQueue,l!==null&&Eu(e,l.retryQueue),l=null,t!==null&&t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(l=t.memoizedState.cachePool.pool),n=null,e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),n!==l&&(e.flags|=2048),t!==null&&N(Xl),null;case 24:return l=null,t!==null&&(l=t.memoizedState.cache),e.memoizedState.cache!==l&&(e.flags|=2048),Ve(Et),yt(e),null;case 25:return null;case 30:return null}throw Error(s(156,e.tag))}function ky(t,e){switch(Vi(e),e.tag){case 1:return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 3:return Ve(Et),pt(),t=e.flags,(t&65536)!==0&&(t&128)===0?(e.flags=t&-65537|128,e):null;case 26:case 27:case 5:return Ca(e),null;case 31:if(e.memoizedState!==null){if(ue(e),e.alternate===null)throw Error(s(340));Yl()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 13:if(ue(e),t=e.memoizedState,t!==null&&t.dehydrated!==null){if(e.alternate===null)throw Error(s(340));Yl()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 19:return N(bt),null;case 4:return pt(),null;case 10:return Ve(e.type),null;case 22:case 23:return ue(e),ac(),t!==null&&N(Xl),t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 24:return Ve(Et),null;case 25:return null;default:return null}}function br(t,e){switch(Vi(e),e.tag){case 3:Ve(Et),pt();break;case 26:case 27:case 5:Ca(e);break;case 4:pt();break;case 31:e.memoizedState!==null&&ue(e);break;case 13:ue(e);break;case 19:N(bt);break;case 10:Ve(e.type);break;case 22:case 23:ue(e),ac(),t!==null&&N(Xl);break;case 24:Ve(Et)}}function ha(t,e){try{var l=e.updateQueue,n=l!==null?l.lastEffect:null;if(n!==null){var a=n.next;l=a;do{if((l.tag&t)===t){n=void 0;var u=l.create,c=l.inst;n=u(),c.destroy=n}l=l.next}while(l!==a)}}catch(r){it(e,e.return,r)}}function yl(t,e,l){try{var n=e.updateQueue,a=n!==null?n.lastEffect:null;if(a!==null){var u=a.next;n=u;do{if((n.tag&t)===t){var c=n.inst,r=c.destroy;if(r!==void 0){c.destroy=void 0,a=e;var h=l,p=r;try{p()}catch(_){it(a,h,_)}}}n=n.next}while(n!==u)}}catch(_){it(e,e.return,_)}}function Sr(t){var e=t.updateQueue;if(e!==null){var l=t.stateNode;try{so(e,l)}catch(n){it(t,t.return,n)}}}function _r(t,e,l){l.props=wl(t.type,t.memoizedProps),l.state=t.memoizedState;try{l.componentWillUnmount()}catch(n){it(t,e,n)}}function da(t,e){try{var l=t.ref;if(l!==null){switch(t.tag){case 26:case 27:case 5:var n=t.stateNode;break;case 30:n=t.stateNode;break;default:n=t.stateNode}typeof l=="function"?t.refCleanup=l(n):l.current=n}}catch(a){it(t,e,a)}}function Ue(t,e){var l=t.ref,n=t.refCleanup;if(l!==null)if(typeof n=="function")try{n()}catch(a){it(t,e,a)}finally{t.refCleanup=null,t=t.alternate,t!=null&&(t.refCleanup=null)}else if(typeof l=="function")try{l(null)}catch(a){it(t,e,a)}else l.current=null}function Er(t){var e=t.type,l=t.memoizedProps,n=t.stateNode;try{t:switch(e){case"button":case"input":case"select":case"textarea":l.autoFocus&&n.focus();break t;case"img":l.src?n.src=l.src:l.srcSet&&(n.srcset=l.srcSet)}}catch(a){it(t,t.return,a)}}function Hc(t,e,l){try{var n=t.stateNode;vm(n,t.type,l,e),n[wt]=e}catch(a){it(t,t.return,a)}}function Tr(t){return t.tag===5||t.tag===3||t.tag===26||t.tag===27&&_l(t.type)||t.tag===4}function Yc(t){t:for(;;){for(;t.sibling===null;){if(t.return===null||Tr(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.tag===27&&_l(t.type)||t.flags&2||t.child===null||t.tag===4)continue t;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function jc(t,e,l){var n=t.tag;if(n===5||n===6)t=t.stateNode,e?(l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l).insertBefore(t,e):(e=l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l,e.appendChild(t),l=l._reactRootContainer,l!=null||e.onclick!==null||(e.onclick=je));else if(n!==4&&(n===27&&_l(t.type)&&(l=t.stateNode,e=null),t=t.child,t!==null))for(jc(t,e,l),t=t.sibling;t!==null;)jc(t,e,l),t=t.sibling}function Tu(t,e,l){var n=t.tag;if(n===5||n===6)t=t.stateNode,e?l.insertBefore(t,e):l.appendChild(t);else if(n!==4&&(n===27&&_l(t.type)&&(l=t.stateNode),t=t.child,t!==null))for(Tu(t,e,l),t=t.sibling;t!==null;)Tu(t,e,l),t=t.sibling}function Ar(t){var e=t.stateNode,l=t.memoizedProps;try{for(var n=t.type,a=e.attributes;a.length;)e.removeAttributeNode(a[0]);Ht(e,n,l),e[xt]=t,e[wt]=l}catch(u){it(t,t.return,u)}}var ke=!1,zt=!1,Lc=!1,zr=typeof WeakSet=="function"?WeakSet:Set,Dt=null;function Wy(t,e){if(t=t.containerInfo,cf=Zu,t=Hs(t),xi(t)){if("selectionStart"in t)var l={start:t.selectionStart,end:t.selectionEnd};else t:{l=(l=t.ownerDocument)&&l.defaultView||window;var n=l.getSelection&&l.getSelection();if(n&&n.rangeCount!==0){l=n.anchorNode;var a=n.anchorOffset,u=n.focusNode;n=n.focusOffset;try{l.nodeType,u.nodeType}catch{l=null;break t}var c=0,r=-1,h=-1,p=0,_=0,O=t,b=null;e:for(;;){for(var S;O!==l||a!==0&&O.nodeType!==3||(r=c+a),O!==u||n!==0&&O.nodeType!==3||(h=c+n),O.nodeType===3&&(c+=O.nodeValue.length),(S=O.firstChild)!==null;)b=O,O=S;for(;;){if(O===t)break e;if(b===l&&++p===a&&(r=c),b===u&&++_===n&&(h=c),(S=O.nextSibling)!==null)break;O=b,b=O.parentNode}O=S}l=r===-1||h===-1?null:{start:r,end:h}}else l=null}l=l||{start:0,end:0}}else l=null;for(ff={focusedElem:t,selectionRange:l},Zu=!1,Dt=e;Dt!==null;)if(e=Dt,t=e.child,(e.subtreeFlags&1028)!==0&&t!==null)t.return=e,Dt=t;else for(;Dt!==null;){switch(e=Dt,u=e.alternate,t=e.flags,e.tag){case 0:if((t&4)!==0&&(t=e.updateQueue,t=t!==null?t.events:null,t!==null))for(l=0;l title"))),Ht(u,n,l),u[xt]=t,Rt(u),n=u;break t;case"link":var c=Uh("link","href",a).get(n+(l.href||""));if(c){for(var r=0;rot&&(c=ot,ot=L,L=c);var v=Bs(r,L),d=Bs(r,ot);if(v&&d&&(S.rangeCount!==1||S.anchorNode!==v.node||S.anchorOffset!==v.offset||S.focusNode!==d.node||S.focusOffset!==d.offset)){var g=O.createRange();g.setStart(v.node,v.offset),S.removeAllRanges(),L>ot?(S.addRange(g),S.extend(d.node,d.offset)):(g.setEnd(d.node,d.offset),S.addRange(g))}}}}for(O=[],S=r;S=S.parentNode;)S.nodeType===1&&O.push({element:S,left:S.scrollLeft,top:S.scrollTop});for(typeof r.focus=="function"&&r.focus(),r=0;rl?32:l,T.T=null,l=Kc,Kc=null;var u=pl,c=Pe;if(Nt=0,On=pl=null,Pe=0,(nt&6)!==0)throw Error(s(331));var r=nt;if(nt|=4,Hr(u.current),Cr(u,u.current,c,l),nt=r,ba(0,!1),te&&typeof te.onPostCommitFiberRoot=="function")try{te.onPostCommitFiberRoot(Yn,u)}catch{}return!0}finally{D.p=a,T.T=n,th(t,e)}}function lh(t,e,l){e=de(l,e),e=zc(t.stateNode,e,2),t=rl(t,e,2),t!==null&&(Ln(t,2),xe(t))}function it(t,e,l){if(t.tag===3)lh(t,t,l);else for(;e!==null;){if(e.tag===3){lh(e,t,l);break}else if(e.tag===1){var n=e.stateNode;if(typeof e.type.getDerivedStateFromError=="function"||typeof n.componentDidCatch=="function"&&(gl===null||!gl.has(n))){t=de(l,t),l=nr(2),n=rl(e,l,2),n!==null&&(ar(l,n,e,t),Ln(n,2),xe(n));break}}e=e.return}}function $c(t,e,l){var n=t.pingCache;if(n===null){n=t.pingCache=new Iy;var a=new Set;n.set(e,a)}else a=n.get(e),a===void 0&&(a=new Set,n.set(e,a));a.has(l)||(Gc=!0,a.add(l),t=nm.bind(null,t,e,l),e.then(t,t))}function nm(t,e,l){var n=t.pingCache;n!==null&&n.delete(e),t.pingedLanes|=t.suspendedLanes&l,t.warmLanes&=~l,ht===t&&($&l)===l&&(gt===4||gt===3&&($&62914560)===$&&300>Pt()-Ou?(nt&2)===0&&Nn(t,0):Vc|=l,zn===$&&(zn=0)),xe(t)}function nh(t,e){e===0&&(e=$f()),t=ql(t,e),t!==null&&(Ln(t,e),xe(t))}function am(t){var e=t.memoizedState,l=0;e!==null&&(l=e.retryLane),nh(t,l)}function um(t,e){var l=0;switch(t.tag){case 31:case 13:var n=t.stateNode,a=t.memoizedState;a!==null&&(l=a.retryLane);break;case 19:n=t.stateNode;break;case 22:n=t.stateNode._retryCache;break;default:throw Error(s(314))}n!==null&&n.delete(e),nh(t,l)}function im(t,e){return si(t,e)}var Cu=null,Rn=null,Fc=!1,Bu=!1,Ic=!1,Sl=0;function xe(t){t!==Rn&&t.next===null&&(Rn===null?Cu=Rn=t:Rn=Rn.next=t),Bu=!0,Fc||(Fc=!0,fm())}function ba(t,e){if(!Ic&&Bu){Ic=!0;do for(var l=!1,n=Cu;n!==null;){if(t!==0){var a=n.pendingLanes;if(a===0)var u=0;else{var c=n.suspendedLanes,r=n.pingedLanes;u=(1<<31-ee(42|t)+1)-1,u&=a&~(c&~r),u=u&201326741?u&201326741|1:u?u|2:0}u!==0&&(l=!0,ch(n,u))}else u=$,u=ja(n,n===ht?u:0,n.cancelPendingCommit!==null||n.timeoutHandle!==-1),(u&3)===0||jn(n,u)||(l=!0,ch(n,u));n=n.next}while(l);Ic=!1}}function cm(){ah()}function ah(){Bu=Fc=!1;var t=0;Sl!==0&&pm()&&(t=Sl);for(var e=Pt(),l=null,n=Cu;n!==null;){var a=n.next,u=uh(n,e);u===0?(n.next=null,l===null?Cu=a:l.next=a,a===null&&(Rn=l)):(l=n,(t!==0||(u&3)!==0)&&(Bu=!0)),n=a}Nt!==0&&Nt!==5||ba(t),Sl!==0&&(Sl=0)}function uh(t,e){for(var l=t.suspendedLanes,n=t.pingedLanes,a=t.expirationTimes,u=t.pendingLanes&-62914561;0r)break;var _=h.transferSize,O=h.initiatorType;_&&mh(O)&&(h=h.responseEnd,c+=_*(h"u"?null:document;function Nh(t,e,l){var n=Dn;if(n&&typeof e=="string"&&e){var a=re(e);a='link[rel="'+t+'"][href="'+a+'"]',typeof l=="string"&&(a+='[crossorigin="'+l+'"]'),Oh.has(a)||(Oh.add(a),t={rel:t,crossOrigin:l,href:e},n.querySelector(a)===null&&(e=n.createElement("link"),Ht(e,"link",t),Rt(e),n.head.appendChild(e)))}}function Nm(t){tl.D(t),Nh("dns-prefetch",t,null)}function Mm(t,e){tl.C(t,e),Nh("preconnect",t,e)}function Rm(t,e,l){tl.L(t,e,l);var n=Dn;if(n&&t&&e){var a='link[rel="preload"][as="'+re(e)+'"]';e==="image"&&l&&l.imageSrcSet?(a+='[imagesrcset="'+re(l.imageSrcSet)+'"]',typeof l.imageSizes=="string"&&(a+='[imagesizes="'+re(l.imageSizes)+'"]')):a+='[href="'+re(t)+'"]';var u=a;switch(e){case"style":u=Un(t);break;case"script":u=xn(t)}be.has(u)||(t=x({rel:"preload",href:e==="image"&&l&&l.imageSrcSet?void 0:t,as:e},l),be.set(u,t),n.querySelector(a)!==null||e==="style"&&n.querySelector(Ta(u))||e==="script"&&n.querySelector(Aa(u))||(e=n.createElement("link"),Ht(e,"link",t),Rt(e),n.head.appendChild(e)))}}function Dm(t,e){tl.m(t,e);var l=Dn;if(l&&t){var n=e&&typeof e.as=="string"?e.as:"script",a='link[rel="modulepreload"][as="'+re(n)+'"][href="'+re(t)+'"]',u=a;switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":u=xn(t)}if(!be.has(u)&&(t=x({rel:"modulepreload",href:t},e),be.set(u,t),l.querySelector(a)===null)){switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(l.querySelector(Aa(u)))return}n=l.createElement("link"),Ht(n,"link",t),Rt(n),l.head.appendChild(n)}}}function Um(t,e,l){tl.S(t,e,l);var n=Dn;if(n&&t){var a=Il(n).hoistableStyles,u=Un(t);e=e||"default";var c=a.get(u);if(!c){var r={loading:0,preload:null};if(c=n.querySelector(Ta(u)))r.loading=5;else{t=x({rel:"stylesheet",href:t,"data-precedence":e},l),(l=be.get(u))&&mf(t,l);var h=c=n.createElement("link");Rt(h),Ht(h,"link",t),h._p=new Promise(function(p,_){h.onload=p,h.onerror=_}),h.addEventListener("load",function(){r.loading|=1}),h.addEventListener("error",function(){r.loading|=2}),r.loading|=4,Lu(c,e,n)}c={type:"stylesheet",instance:c,count:1,state:r},a.set(u,c)}}}function xm(t,e){tl.X(t,e);var l=Dn;if(l&&t){var n=Il(l).hoistableScripts,a=xn(t),u=n.get(a);u||(u=l.querySelector(Aa(a)),u||(t=x({src:t,async:!0},e),(e=be.get(a))&&vf(t,e),u=l.createElement("script"),Rt(u),Ht(u,"link",t),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(a,u))}}function Cm(t,e){tl.M(t,e);var l=Dn;if(l&&t){var n=Il(l).hoistableScripts,a=xn(t),u=n.get(a);u||(u=l.querySelector(Aa(a)),u||(t=x({src:t,async:!0,type:"module"},e),(e=be.get(a))&&vf(t,e),u=l.createElement("script"),Rt(u),Ht(u,"link",t),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(a,u))}}function Mh(t,e,l,n){var a=(a=J.current)?ju(a):null;if(!a)throw Error(s(446));switch(t){case"meta":case"title":return null;case"style":return typeof l.precedence=="string"&&typeof l.href=="string"?(e=Un(l.href),l=Il(a).hoistableStyles,n=l.get(e),n||(n={type:"style",instance:null,count:0,state:null},l.set(e,n)),n):{type:"void",instance:null,count:0,state:null};case"link":if(l.rel==="stylesheet"&&typeof l.href=="string"&&typeof l.precedence=="string"){t=Un(l.href);var u=Il(a).hoistableStyles,c=u.get(t);if(c||(a=a.ownerDocument||a,c={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},u.set(t,c),(u=a.querySelector(Ta(t)))&&!u._p&&(c.instance=u,c.state.loading=5),be.has(t)||(l={rel:"preload",as:"style",href:l.href,crossOrigin:l.crossOrigin,integrity:l.integrity,media:l.media,hrefLang:l.hrefLang,referrerPolicy:l.referrerPolicy},be.set(t,l),u||Bm(a,t,l,c.state))),e&&n===null)throw Error(s(528,""));return c}if(e&&n!==null)throw Error(s(529,""));return null;case"script":return e=l.async,l=l.src,typeof l=="string"&&e&&typeof e!="function"&&typeof e!="symbol"?(e=xn(l),l=Il(a).hoistableScripts,n=l.get(e),n||(n={type:"script",instance:null,count:0,state:null},l.set(e,n)),n):{type:"void",instance:null,count:0,state:null};default:throw Error(s(444,t))}}function Un(t){return'href="'+re(t)+'"'}function Ta(t){return'link[rel="stylesheet"]['+t+"]"}function Rh(t){return x({},t,{"data-precedence":t.precedence,precedence:null})}function Bm(t,e,l,n){t.querySelector('link[rel="preload"][as="style"]['+e+"]")?n.loading=1:(e=t.createElement("link"),n.preload=e,e.addEventListener("load",function(){return n.loading|=1}),e.addEventListener("error",function(){return n.loading|=2}),Ht(e,"link",l),Rt(e),t.head.appendChild(e))}function xn(t){return'[src="'+re(t)+'"]'}function Aa(t){return"script[async]"+t}function Dh(t,e,l){if(e.count++,e.instance===null)switch(e.type){case"style":var n=t.querySelector('style[data-href~="'+re(l.href)+'"]');if(n)return e.instance=n,Rt(n),n;var a=x({},l,{"data-href":l.href,"data-precedence":l.precedence,href:null,precedence:null});return n=(t.ownerDocument||t).createElement("style"),Rt(n),Ht(n,"style",a),Lu(n,l.precedence,t),e.instance=n;case"stylesheet":a=Un(l.href);var u=t.querySelector(Ta(a));if(u)return e.state.loading|=4,e.instance=u,Rt(u),u;n=Rh(l),(a=be.get(a))&&mf(n,a),u=(t.ownerDocument||t).createElement("link"),Rt(u);var c=u;return c._p=new Promise(function(r,h){c.onload=r,c.onerror=h}),Ht(u,"link",n),e.state.loading|=4,Lu(u,l.precedence,t),e.instance=u;case"script":return u=xn(l.src),(a=t.querySelector(Aa(u)))?(e.instance=a,Rt(a),a):(n=l,(a=be.get(u))&&(n=x({},l),vf(n,a)),t=t.ownerDocument||t,a=t.createElement("script"),Rt(a),Ht(a,"link",n),t.head.appendChild(a),e.instance=a);case"void":return null;default:throw Error(s(443,e.type))}else e.type==="stylesheet"&&(e.state.loading&4)===0&&(n=e.instance,e.state.loading|=4,Lu(n,l.precedence,t));return e.instance}function Lu(t,e,l){for(var n=l.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=n.length?n[n.length-1]:null,u=a,c=0;c title"):null)}function qm(t,e,l){if(l===1||e.itemProp!=null)return!1;switch(t){case"meta":case"title":return!0;case"style":if(typeof e.precedence!="string"||typeof e.href!="string"||e.href==="")break;return!0;case"link":if(typeof e.rel!="string"||typeof e.href!="string"||e.href===""||e.onLoad||e.onError)break;switch(e.rel){case"stylesheet":return t=e.disabled,typeof e.precedence=="string"&&t==null;default:return!0}case"script":if(e.async&&typeof e.async!="function"&&typeof e.async!="symbol"&&!e.onLoad&&!e.onError&&e.src&&typeof e.src=="string")return!0}return!1}function Ch(t){return!(t.type==="stylesheet"&&(t.state.loading&3)===0)}function Hm(t,e,l,n){if(l.type==="stylesheet"&&(typeof n.media!="string"||matchMedia(n.media).matches!==!1)&&(l.state.loading&4)===0){if(l.instance===null){var a=Un(n.href),u=e.querySelector(Ta(a));if(u){e=u._p,e!==null&&typeof e=="object"&&typeof e.then=="function"&&(t.count++,t=Qu.bind(t),e.then(t,t)),l.state.loading|=4,l.instance=u,Rt(u);return}u=e.ownerDocument||e,n=Rh(n),(a=be.get(a))&&mf(n,a),u=u.createElement("link"),Rt(u);var c=u;c._p=new Promise(function(r,h){c.onload=r,c.onerror=h}),Ht(u,"link",n),l.instance=u}t.stylesheets===null&&(t.stylesheets=new Map),t.stylesheets.set(l,e),(e=l.state.preload)&&(l.state.loading&3)===0&&(t.count++,l=Qu.bind(t),e.addEventListener("load",l),e.addEventListener("error",l))}}var gf=0;function Ym(t,e){return t.stylesheets&&t.count===0&&Vu(t,t.stylesheets),0gf?50:800)+e);return t.unsuspend=l,function(){t.unsuspend=null,clearTimeout(n),clearTimeout(a)}}:null}function Qu(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Vu(this,this.stylesheets);else if(this.unsuspend){var t=this.unsuspend;this.unsuspend=null,t()}}}var Gu=null;function Vu(t,e){t.stylesheets=null,t.unsuspend!==null&&(t.count++,Gu=new Map,e.forEach(jm,t),Gu=null,Qu.call(t))}function jm(t,e){if(!(e.state.loading&4)){var l=Gu.get(t);if(l)var n=l.get(null);else{l=new Map,Gu.set(t,l);for(var a=t.querySelectorAll("link[data-precedence],style[data-precedence]"),u=0;u"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(o)}catch(i){console.error(i)}}return o(),Of.exports=t0(),Of.exports}var l0=e0();const Be=Object.create(null);Be.open="0";Be.close="1";Be.ping="2";Be.pong="3";Be.message="4";Be.upgrade="5";Be.noop="6";const Pu=Object.create(null);Object.keys(Be).forEach(o=>{Pu[Be[o]]=o});const Cf={type:"error",data:"parser error"},fd=typeof Blob=="function"||typeof Blob<"u"&&Object.prototype.toString.call(Blob)==="[object BlobConstructor]",sd=typeof ArrayBuffer=="function",od=o=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(o):o&&o.buffer instanceof ArrayBuffer,Xf=({type:o,data:i},f,s)=>fd&&i instanceof Blob?f?s(i):nd(i,s):sd&&(i instanceof ArrayBuffer||od(i))?f?s(i):nd(new Blob([i]),s):s(Be[o]+(i||"")),nd=(o,i)=>{const f=new FileReader;return f.onload=function(){const s=f.result.split(",")[1];i("b"+(s||""))},f.readAsDataURL(o)};function ad(o){return o instanceof Uint8Array?o:o instanceof ArrayBuffer?new Uint8Array(o):new Uint8Array(o.buffer,o.byteOffset,o.byteLength)}let Df;function n0(o,i){if(fd&&o.data instanceof Blob)return o.data.arrayBuffer().then(ad).then(i);if(sd&&(o.data instanceof ArrayBuffer||od(o.data)))return i(ad(o.data));Xf(o,!1,f=>{Df||(Df=new TextEncoder),i(Df.encode(f))})}const ud="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",xa=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(let o=0;o{let i=o.length*.75,f=o.length,s,m=0,E,R,B,M;o[o.length-1]==="="&&(i--,o[o.length-2]==="="&&i--);const A=new ArrayBuffer(i),Q=new Uint8Array(A);for(s=0;s>4,Q[m++]=(R&15)<<4|B>>2,Q[m++]=(B&3)<<6|M&63;return A},u0=typeof ArrayBuffer=="function",Qf=(o,i)=>{if(typeof o!="string")return{type:"message",data:rd(o,i)};const f=o.charAt(0);return f==="b"?{type:"message",data:i0(o.substring(1),i)}:Pu[f]?o.length>1?{type:Pu[f],data:o.substring(1)}:{type:Pu[f]}:Cf},i0=(o,i)=>{if(u0){const f=a0(o);return rd(f,i)}else return{base64:!0,data:o}},rd=(o,i)=>{switch(i){case"blob":return o instanceof Blob?o:new Blob([o]);case"arraybuffer":default:return o instanceof ArrayBuffer?o:o.buffer}},hd="",c0=(o,i)=>{const f=o.length,s=new Array(f);let m=0;o.forEach((E,R)=>{Xf(E,!1,B=>{s[R]=B,++m===f&&i(s.join(hd))})})},f0=(o,i)=>{const f=o.split(hd),s=[];for(let m=0;m{const s=f.length;let m;if(s<126)m=new Uint8Array(1),new DataView(m.buffer).setUint8(0,s);else if(s<65536){m=new Uint8Array(3);const E=new DataView(m.buffer);E.setUint8(0,126),E.setUint16(1,s)}else{m=new Uint8Array(9);const E=new DataView(m.buffer);E.setUint8(0,127),E.setBigUint64(1,BigInt(s))}o.data&&typeof o.data!="string"&&(m[0]|=128),i.enqueue(m),i.enqueue(f)})}})}let Uf;function Fu(o){return o.reduce((i,f)=>i+f.length,0)}function Iu(o,i){if(o[0].length===i)return o.shift();const f=new Uint8Array(i);let s=0;for(let m=0;mMath.pow(2,21)-1){B.enqueue(Cf);break}m=Q*Math.pow(2,32)+A.getUint32(4),s=3}else{if(Fu(f)o){B.enqueue(Cf);break}}}})}const dd=4;function Ot(o){if(o)return r0(o)}function r0(o){for(var i in Ot.prototype)o[i]=Ot.prototype[i];return o}Ot.prototype.on=Ot.prototype.addEventListener=function(o,i){return this._callbacks=this._callbacks||{},(this._callbacks["$"+o]=this._callbacks["$"+o]||[]).push(i),this};Ot.prototype.once=function(o,i){function f(){this.off(o,f),i.apply(this,arguments)}return f.fn=i,this.on(o,f),this};Ot.prototype.off=Ot.prototype.removeListener=Ot.prototype.removeAllListeners=Ot.prototype.removeEventListener=function(o,i){if(this._callbacks=this._callbacks||{},arguments.length==0)return this._callbacks={},this;var f=this._callbacks["$"+o];if(!f)return this;if(arguments.length==1)return delete this._callbacks["$"+o],this;for(var s,m=0;mPromise.resolve().then(i):(i,f)=>f(i,0),Se=typeof self<"u"?self:typeof window<"u"?window:Function("return this")(),h0="arraybuffer";function yd(o,...i){return i.reduce((f,s)=>(o.hasOwnProperty(s)&&(f[s]=o[s]),f),{})}const d0=Se.setTimeout,y0=Se.clearTimeout;function ai(o,i){i.useNativeTimers?(o.setTimeoutFn=d0.bind(Se),o.clearTimeoutFn=y0.bind(Se)):(o.setTimeoutFn=Se.setTimeout.bind(Se),o.clearTimeoutFn=Se.clearTimeout.bind(Se))}const m0=1.33;function v0(o){return typeof o=="string"?g0(o):Math.ceil((o.byteLength||o.size)*m0)}function g0(o){let i=0,f=0;for(let s=0,m=o.length;s=57344?f+=3:(s++,f+=4);return f}function md(){return Date.now().toString(36).substring(3)+Math.random().toString(36).substring(2,5)}function p0(o){let i="";for(let f in o)o.hasOwnProperty(f)&&(i.length&&(i+="&"),i+=encodeURIComponent(f)+"="+encodeURIComponent(o[f]));return i}function b0(o){let i={},f=o.split("&");for(let s=0,m=f.length;s{this.readyState="paused",i()};if(this._polling||!this.writable){let s=0;this._polling&&(s++,this.once("pollComplete",function(){--s||f()})),this.writable||(s++,this.once("drain",function(){--s||f()}))}else f()}_poll(){this._polling=!0,this.doPoll(),this.emitReserved("poll")}onData(i){const f=s=>{if(this.readyState==="opening"&&s.type==="open"&&this.onOpen(),s.type==="close")return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(s)};f0(i,this.socket.binaryType).forEach(f),this.readyState!=="closed"&&(this._polling=!1,this.emitReserved("pollComplete"),this.readyState==="open"&&this._poll())}doClose(){const i=()=>{this.write([{type:"close"}])};this.readyState==="open"?i():this.once("open",i)}write(i){this.writable=!1,c0(i,f=>{this.doWrite(f,()=>{this.writable=!0,this.emitReserved("drain")})})}uri(){const i=this.opts.secure?"https":"http",f=this.query||{};return this.opts.timestampRequests!==!1&&(f[this.opts.timestampParam]=md()),!this.supportsBinary&&!f.sid&&(f.b64=1),this.createUri(i,f)}}let vd=!1;try{vd=typeof XMLHttpRequest<"u"&&"withCredentials"in new XMLHttpRequest}catch{}const E0=vd;function T0(){}class A0 extends _0{constructor(i){if(super(i),typeof location<"u"){const f=location.protocol==="https:";let s=location.port;s||(s=f?"443":"80"),this.xd=typeof location<"u"&&i.hostname!==location.hostname||s!==i.port}}doWrite(i,f){const s=this.request({method:"POST",data:i});s.on("success",f),s.on("error",(m,E)=>{this.onError("xhr post error",m,E)})}doPoll(){const i=this.request();i.on("data",this.onData.bind(this)),i.on("error",(f,s)=>{this.onError("xhr poll error",f,s)}),this.pollXhr=i}}class Ce extends Ot{constructor(i,f,s){super(),this.createRequest=i,ai(this,s),this._opts=s,this._method=s.method||"GET",this._uri=f,this._data=s.data!==void 0?s.data:null,this._create()}_create(){var i;const f=yd(this._opts,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");f.xdomain=!!this._opts.xd;const s=this._xhr=this.createRequest(f);try{s.open(this._method,this._uri,!0);try{if(this._opts.extraHeaders){s.setDisableHeaderCheck&&s.setDisableHeaderCheck(!0);for(let m in this._opts.extraHeaders)this._opts.extraHeaders.hasOwnProperty(m)&&s.setRequestHeader(m,this._opts.extraHeaders[m])}}catch{}if(this._method==="POST")try{s.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch{}try{s.setRequestHeader("Accept","*/*")}catch{}(i=this._opts.cookieJar)===null||i===void 0||i.addCookies(s),"withCredentials"in s&&(s.withCredentials=this._opts.withCredentials),this._opts.requestTimeout&&(s.timeout=this._opts.requestTimeout),s.onreadystatechange=()=>{var m;s.readyState===3&&((m=this._opts.cookieJar)===null||m===void 0||m.parseCookies(s.getResponseHeader("set-cookie"))),s.readyState===4&&(s.status===200||s.status===1223?this._onLoad():this.setTimeoutFn(()=>{this._onError(typeof s.status=="number"?s.status:0)},0))},s.send(this._data)}catch(m){this.setTimeoutFn(()=>{this._onError(m)},0);return}typeof document<"u"&&(this._index=Ce.requestsCount++,Ce.requests[this._index]=this)}_onError(i){this.emitReserved("error",i,this._xhr),this._cleanup(!0)}_cleanup(i){if(!(typeof this._xhr>"u"||this._xhr===null)){if(this._xhr.onreadystatechange=T0,i)try{this._xhr.abort()}catch{}typeof document<"u"&&delete Ce.requests[this._index],this._xhr=null}}_onLoad(){const i=this._xhr.responseText;i!==null&&(this.emitReserved("data",i),this.emitReserved("success"),this._cleanup())}abort(){this._cleanup()}}Ce.requestsCount=0;Ce.requests={};if(typeof document<"u"){if(typeof attachEvent=="function")attachEvent("onunload",id);else if(typeof addEventListener=="function"){const o="onpagehide"in Se?"pagehide":"unload";addEventListener(o,id,!1)}}function id(){for(let o in Ce.requests)Ce.requests.hasOwnProperty(o)&&Ce.requests[o].abort()}const z0=(function(){const o=gd({xdomain:!1});return o&&o.responseType!==null})();class O0 extends A0{constructor(i){super(i);const f=i&&i.forceBase64;this.supportsBinary=z0&&!f}request(i={}){return Object.assign(i,{xd:this.xd},this.opts),new Ce(gd,this.uri(),i)}}function gd(o){const i=o.xdomain;try{if(typeof XMLHttpRequest<"u"&&(!i||E0))return new XMLHttpRequest}catch{}if(!i)try{return new Se[["Active"].concat("Object").join("X")]("Microsoft.XMLHTTP")}catch{}}const pd=typeof navigator<"u"&&typeof navigator.product=="string"&&navigator.product.toLowerCase()==="reactnative";class N0 extends Gf{get name(){return"websocket"}doOpen(){const i=this.uri(),f=this.opts.protocols,s=pd?{}:yd(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(s.headers=this.opts.extraHeaders);try{this.ws=this.createSocket(i,f,s)}catch(m){return this.emitReserved("error",m)}this.ws.binaryType=this.socket.binaryType,this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=i=>this.onClose({description:"websocket connection closed",context:i}),this.ws.onmessage=i=>this.onData(i.data),this.ws.onerror=i=>this.onError("websocket error",i)}write(i){this.writable=!1;for(let f=0;f{try{this.doWrite(s,E)}catch{}m&&ni(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){typeof this.ws<"u"&&(this.ws.onerror=()=>{},this.ws.close(),this.ws=null)}uri(){const i=this.opts.secure?"wss":"ws",f=this.query||{};return this.opts.timestampRequests&&(f[this.opts.timestampParam]=md()),this.supportsBinary||(f.b64=1),this.createUri(i,f)}}const xf=Se.WebSocket||Se.MozWebSocket;class M0 extends N0{createSocket(i,f,s){return pd?new xf(i,f,s):f?new xf(i,f):new xf(i)}doWrite(i,f){this.ws.send(f)}}class R0 extends Gf{get name(){return"webtransport"}doOpen(){try{this._transport=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name])}catch(i){return this.emitReserved("error",i)}this._transport.closed.then(()=>{this.onClose()}).catch(i=>{this.onError("webtransport error",i)}),this._transport.ready.then(()=>{this._transport.createBidirectionalStream().then(i=>{const f=o0(Number.MAX_SAFE_INTEGER,this.socket.binaryType),s=i.readable.pipeThrough(f).getReader(),m=s0();m.readable.pipeTo(i.writable),this._writer=m.writable.getWriter();const E=()=>{s.read().then(({done:B,value:M})=>{B||(this.onPacket(M),E())}).catch(B=>{})};E();const R={type:"open"};this.query.sid&&(R.data=`{"sid":"${this.query.sid}"}`),this._writer.write(R).then(()=>this.onOpen())})})}write(i){this.writable=!1;for(let f=0;f{m&&ni(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){var i;(i=this._transport)===null||i===void 0||i.close()}}const D0={websocket:M0,webtransport:R0,polling:O0},U0=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,x0=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function Bf(o){if(o.length>8e3)throw"URI too long";const i=o,f=o.indexOf("["),s=o.indexOf("]");f!=-1&&s!=-1&&(o=o.substring(0,f)+o.substring(f,s).replace(/:/g,";")+o.substring(s,o.length));let m=U0.exec(o||""),E={},R=14;for(;R--;)E[x0[R]]=m[R]||"";return f!=-1&&s!=-1&&(E.source=i,E.host=E.host.substring(1,E.host.length-1).replace(/;/g,":"),E.authority=E.authority.replace("[","").replace("]","").replace(/;/g,":"),E.ipv6uri=!0),E.pathNames=C0(E,E.path),E.queryKey=B0(E,E.query),E}function C0(o,i){const f=/\/{2,9}/g,s=i.replace(f,"/").split("/");return(i.slice(0,1)=="/"||i.length===0)&&s.splice(0,1),i.slice(-1)=="/"&&s.splice(s.length-1,1),s}function B0(o,i){const f={};return i.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,function(s,m,E){m&&(f[m]=E)}),f}const qf=typeof addEventListener=="function"&&typeof removeEventListener=="function",ti=[];qf&&addEventListener("offline",()=>{ti.forEach(o=>o())},!1);class Nl extends Ot{constructor(i,f){if(super(),this.binaryType=h0,this.writeBuffer=[],this._prevBufferLen=0,this._pingInterval=-1,this._pingTimeout=-1,this._maxPayload=-1,this._pingTimeoutTime=1/0,i&&typeof i=="object"&&(f=i,i=null),i){const s=Bf(i);f.hostname=s.host,f.secure=s.protocol==="https"||s.protocol==="wss",f.port=s.port,s.query&&(f.query=s.query)}else f.host&&(f.hostname=Bf(f.host).host);ai(this,f),this.secure=f.secure!=null?f.secure:typeof location<"u"&&location.protocol==="https:",f.hostname&&!f.port&&(f.port=this.secure?"443":"80"),this.hostname=f.hostname||(typeof location<"u"?location.hostname:"localhost"),this.port=f.port||(typeof location<"u"&&location.port?location.port:this.secure?"443":"80"),this.transports=[],this._transportsByName={},f.transports.forEach(s=>{const m=s.prototype.name;this.transports.push(m),this._transportsByName[m]=s}),this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},f),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),typeof this.opts.query=="string"&&(this.opts.query=b0(this.opts.query)),qf&&(this.opts.closeOnBeforeunload&&(this._beforeunloadEventListener=()=>{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this._beforeunloadEventListener,!1)),this.hostname!=="localhost"&&(this._offlineEventListener=()=>{this._onClose("transport close",{description:"network connection lost"})},ti.push(this._offlineEventListener))),this.opts.withCredentials&&(this._cookieJar=void 0),this._open()}createTransport(i){const f=Object.assign({},this.opts.query);f.EIO=dd,f.transport=i,this.id&&(f.sid=this.id);const s=Object.assign({},this.opts,{query:f,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[i]);return new this._transportsByName[i](s)}_open(){if(this.transports.length===0){this.setTimeoutFn(()=>{this.emitReserved("error","No transports available")},0);return}const i=this.opts.rememberUpgrade&&Nl.priorWebsocketSuccess&&this.transports.indexOf("websocket")!==-1?"websocket":this.transports[0];this.readyState="opening";const f=this.createTransport(i);f.open(),this.setTransport(f)}setTransport(i){this.transport&&this.transport.removeAllListeners(),this.transport=i,i.on("drain",this._onDrain.bind(this)).on("packet",this._onPacket.bind(this)).on("error",this._onError.bind(this)).on("close",f=>this._onClose("transport close",f))}onOpen(){this.readyState="open",Nl.priorWebsocketSuccess=this.transport.name==="websocket",this.emitReserved("open"),this.flush()}_onPacket(i){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing")switch(this.emitReserved("packet",i),this.emitReserved("heartbeat"),i.type){case"open":this.onHandshake(JSON.parse(i.data));break;case"ping":this._sendPacket("pong"),this.emitReserved("ping"),this.emitReserved("pong"),this._resetPingTimeout();break;case"error":const f=new Error("server error");f.code=i.data,this._onError(f);break;case"message":this.emitReserved("data",i.data),this.emitReserved("message",i.data);break}}onHandshake(i){this.emitReserved("handshake",i),this.id=i.sid,this.transport.query.sid=i.sid,this._pingInterval=i.pingInterval,this._pingTimeout=i.pingTimeout,this._maxPayload=i.maxPayload,this.onOpen(),this.readyState!=="closed"&&this._resetPingTimeout()}_resetPingTimeout(){this.clearTimeoutFn(this._pingTimeoutTimer);const i=this._pingInterval+this._pingTimeout;this._pingTimeoutTime=Date.now()+i,this._pingTimeoutTimer=this.setTimeoutFn(()=>{this._onClose("ping timeout")},i),this.opts.autoUnref&&this._pingTimeoutTimer.unref()}_onDrain(){this.writeBuffer.splice(0,this._prevBufferLen),this._prevBufferLen=0,this.writeBuffer.length===0?this.emitReserved("drain"):this.flush()}flush(){if(this.readyState!=="closed"&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){const i=this._getWritablePackets();this.transport.send(i),this._prevBufferLen=i.length,this.emitReserved("flush")}}_getWritablePackets(){if(!(this._maxPayload&&this.transport.name==="polling"&&this.writeBuffer.length>1))return this.writeBuffer;let f=1;for(let s=0;s0&&f>this._maxPayload)return this.writeBuffer.slice(0,s);f+=2}return this.writeBuffer}_hasPingExpired(){if(!this._pingTimeoutTime)return!0;const i=Date.now()>this._pingTimeoutTime;return i&&(this._pingTimeoutTime=0,ni(()=>{this._onClose("ping timeout")},this.setTimeoutFn)),i}write(i,f,s){return this._sendPacket("message",i,f,s),this}send(i,f,s){return this._sendPacket("message",i,f,s),this}_sendPacket(i,f,s,m){if(typeof f=="function"&&(m=f,f=void 0),typeof s=="function"&&(m=s,s=null),this.readyState==="closing"||this.readyState==="closed")return;s=s||{},s.compress=s.compress!==!1;const E={type:i,data:f,options:s};this.emitReserved("packetCreate",E),this.writeBuffer.push(E),m&&this.once("flush",m),this.flush()}close(){const i=()=>{this._onClose("forced close"),this.transport.close()},f=()=>{this.off("upgrade",f),this.off("upgradeError",f),i()},s=()=>{this.once("upgrade",f),this.once("upgradeError",f)};return(this.readyState==="opening"||this.readyState==="open")&&(this.readyState="closing",this.writeBuffer.length?this.once("drain",()=>{this.upgrading?s():i()}):this.upgrading?s():i()),this}_onError(i){if(Nl.priorWebsocketSuccess=!1,this.opts.tryAllTransports&&this.transports.length>1&&this.readyState==="opening")return this.transports.shift(),this._open();this.emitReserved("error",i),this._onClose("transport error",i)}_onClose(i,f){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing"){if(this.clearTimeoutFn(this._pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),qf&&(this._beforeunloadEventListener&&removeEventListener("beforeunload",this._beforeunloadEventListener,!1),this._offlineEventListener)){const s=ti.indexOf(this._offlineEventListener);s!==-1&&ti.splice(s,1)}this.readyState="closed",this.id=null,this.emitReserved("close",i,f),this.writeBuffer=[],this._prevBufferLen=0}}}Nl.protocol=dd;class q0 extends Nl{constructor(){super(...arguments),this._upgrades=[]}onOpen(){if(super.onOpen(),this.readyState==="open"&&this.opts.upgrade)for(let i=0;i{s||(f.send([{type:"ping",data:"probe"}]),f.once("packet",x=>{if(!s)if(x.type==="pong"&&x.data==="probe"){if(this.upgrading=!0,this.emitReserved("upgrading",f),!f)return;Nl.priorWebsocketSuccess=f.name==="websocket",this.transport.pause(()=>{s||this.readyState!=="closed"&&(Q(),this.setTransport(f),f.send([{type:"upgrade"}]),this.emitReserved("upgrade",f),f=null,this.upgrading=!1,this.flush())})}else{const K=new Error("probe error");K.transport=f.name,this.emitReserved("upgradeError",K)}}))};function E(){s||(s=!0,Q(),f.close(),f=null)}const R=x=>{const K=new Error("probe error: "+x);K.transport=f.name,E(),this.emitReserved("upgradeError",K)};function B(){R("transport closed")}function M(){R("socket closed")}function A(x){f&&x.name!==f.name&&E()}const Q=()=>{f.removeListener("open",m),f.removeListener("error",R),f.removeListener("close",B),this.off("close",M),this.off("upgrading",A)};f.once("open",m),f.once("error",R),f.once("close",B),this.once("close",M),this.once("upgrading",A),this._upgrades.indexOf("webtransport")!==-1&&i!=="webtransport"?this.setTimeoutFn(()=>{s||f.open()},200):f.open()}onHandshake(i){this._upgrades=this._filterUpgrades(i.upgrades),super.onHandshake(i)}_filterUpgrades(i){const f=[];for(let s=0;sD0[m]).filter(m=>!!m)),super(i,s)}};function Y0(o,i="",f){let s=o;f=f||typeof location<"u"&&location,o==null&&(o=f.protocol+"//"+f.host),typeof o=="string"&&(o.charAt(0)==="/"&&(o.charAt(1)==="/"?o=f.protocol+o:o=f.host+o),/^(https?|wss?):\/\//.test(o)||(typeof f<"u"?o=f.protocol+"//"+o:o="https://"+o),s=Bf(o)),s.port||(/^(http|ws)$/.test(s.protocol)?s.port="80":/^(http|ws)s$/.test(s.protocol)&&(s.port="443")),s.path=s.path||"/";const E=s.host.indexOf(":")!==-1?"["+s.host+"]":s.host;return s.id=s.protocol+"://"+E+":"+s.port+i,s.href=s.protocol+"://"+E+(f&&f.port===s.port?"":":"+s.port),s}const j0=typeof ArrayBuffer=="function",L0=o=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(o):o.buffer instanceof ArrayBuffer,bd=Object.prototype.toString,X0=typeof Blob=="function"||typeof Blob<"u"&&bd.call(Blob)==="[object BlobConstructor]",Q0=typeof File=="function"||typeof File<"u"&&bd.call(File)==="[object FileConstructor]";function Vf(o){return j0&&(o instanceof ArrayBuffer||L0(o))||X0&&o instanceof Blob||Q0&&o instanceof File}function ei(o,i){if(!o||typeof o!="object")return!1;if(Array.isArray(o)){for(let f=0,s=o.length;f=0&&o.num{delete this.acks[i];for(let B=0;B{this.io.clearTimeoutFn(E),f.apply(this,B)};R.withError=!0,this.acks[i]=R}emitWithAck(i,...f){return new Promise((s,m)=>{const E=(R,B)=>R?m(R):s(B);E.withError=!0,f.push(E),this.emit(i,...f)})}_addToQueue(i){let f;typeof i[i.length-1]=="function"&&(f=i.pop());const s={id:this._queueSeq++,tryCount:0,pending:!1,args:i,flags:Object.assign({fromQueue:!0},this.flags)};i.push((m,...E)=>s!==this._queue[0]?void 0:(m!==null?s.tryCount>this._opts.retries&&(this._queue.shift(),f&&f(m)):(this._queue.shift(),f&&f(null,...E)),s.pending=!1,this._drainQueue())),this._queue.push(s),this._drainQueue()}_drainQueue(i=!1){if(!this.connected||this._queue.length===0)return;const f=this._queue[0];f.pending&&!i||(f.pending=!0,f.tryCount++,this.flags=f.flags,this.emit.apply(this,f.args))}packet(i){i.nsp=this.nsp,this.io._packet(i)}onopen(){typeof this.auth=="function"?this.auth(i=>{this._sendConnectPacket(i)}):this._sendConnectPacket(this.auth)}_sendConnectPacket(i){this.packet({type:tt.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},i):i})}onerror(i){this.connected||this.emitReserved("connect_error",i)}onclose(i,f){this.connected=!1,delete this.id,this.emitReserved("disconnect",i,f),this._clearAcks()}_clearAcks(){Object.keys(this.acks).forEach(i=>{if(!this.sendBuffer.some(s=>String(s.id)===i)){const s=this.acks[i];delete this.acks[i],s.withError&&s.call(this,new Error("socket has been disconnected"))}})}onpacket(i){if(i.nsp===this.nsp)switch(i.type){case tt.CONNECT:i.data&&i.data.sid?this.onconnect(i.data.sid,i.data.pid):this.emitReserved("connect_error",new Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case tt.EVENT:case tt.BINARY_EVENT:this.onevent(i);break;case tt.ACK:case tt.BINARY_ACK:this.onack(i);break;case tt.DISCONNECT:this.ondisconnect();break;case tt.CONNECT_ERROR:this.destroy();const s=new Error(i.data.message);s.data=i.data.data,this.emitReserved("connect_error",s);break}}onevent(i){const f=i.data||[];i.id!=null&&f.push(this.ack(i.id)),this.connected?this.emitEvent(f):this.receiveBuffer.push(Object.freeze(f))}emitEvent(i){if(this._anyListeners&&this._anyListeners.length){const f=this._anyListeners.slice();for(const s of f)s.apply(this,i)}super.emit.apply(this,i),this._pid&&i.length&&typeof i[i.length-1]=="string"&&(this._lastOffset=i[i.length-1])}ack(i){const f=this;let s=!1;return function(...m){s||(s=!0,f.packet({type:tt.ACK,id:i,data:m}))}}onack(i){const f=this.acks[i.id];typeof f=="function"&&(delete this.acks[i.id],f.withError&&i.data.unshift(null),f.apply(this,i.data))}onconnect(i,f){this.id=i,this.recovered=f&&this._pid===f,this._pid=f,this.connected=!0,this.emitBuffered(),this.emitReserved("connect"),this._drainQueue(!0)}emitBuffered(){this.receiveBuffer.forEach(i=>this.emitEvent(i)),this.receiveBuffer=[],this.sendBuffer.forEach(i=>{this.notifyOutgoingListeners(i),this.packet(i)}),this.sendBuffer=[]}ondisconnect(){this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach(i=>i()),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&this.packet({type:tt.DISCONNECT}),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(i){return this.flags.compress=i,this}get volatile(){return this.flags.volatile=!0,this}timeout(i){return this.flags.timeout=i,this}onAny(i){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(i),this}prependAny(i){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(i),this}offAny(i){if(!this._anyListeners)return this;if(i){const f=this._anyListeners;for(let s=0;s0&&o.jitter<=1?o.jitter:0,this.attempts=0}Bn.prototype.duration=function(){var o=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var i=Math.random(),f=Math.floor(i*this.jitter*o);o=(Math.floor(i*10)&1)==0?o-f:o+f}return Math.min(o,this.max)|0};Bn.prototype.reset=function(){this.attempts=0};Bn.prototype.setMin=function(o){this.ms=o};Bn.prototype.setMax=function(o){this.max=o};Bn.prototype.setJitter=function(o){this.jitter=o};class jf extends Ot{constructor(i,f){var s;super(),this.nsps={},this.subs=[],i&&typeof i=="object"&&(f=i,i=void 0),f=f||{},f.path=f.path||"/socket.io",this.opts=f,ai(this,f),this.reconnection(f.reconnection!==!1),this.reconnectionAttempts(f.reconnectionAttempts||1/0),this.reconnectionDelay(f.reconnectionDelay||1e3),this.reconnectionDelayMax(f.reconnectionDelayMax||5e3),this.randomizationFactor((s=f.randomizationFactor)!==null&&s!==void 0?s:.5),this.backoff=new Bn({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(f.timeout==null?2e4:f.timeout),this._readyState="closed",this.uri=i;const m=f.parser||k0;this.encoder=new m.Encoder,this.decoder=new m.Decoder,this._autoConnect=f.autoConnect!==!1,this._autoConnect&&this.open()}reconnection(i){return arguments.length?(this._reconnection=!!i,i||(this.skipReconnect=!0),this):this._reconnection}reconnectionAttempts(i){return i===void 0?this._reconnectionAttempts:(this._reconnectionAttempts=i,this)}reconnectionDelay(i){var f;return i===void 0?this._reconnectionDelay:(this._reconnectionDelay=i,(f=this.backoff)===null||f===void 0||f.setMin(i),this)}randomizationFactor(i){var f;return i===void 0?this._randomizationFactor:(this._randomizationFactor=i,(f=this.backoff)===null||f===void 0||f.setJitter(i),this)}reconnectionDelayMax(i){var f;return i===void 0?this._reconnectionDelayMax:(this._reconnectionDelayMax=i,(f=this.backoff)===null||f===void 0||f.setMax(i),this)}timeout(i){return arguments.length?(this._timeout=i,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&this.backoff.attempts===0&&this.reconnect()}open(i){if(~this._readyState.indexOf("open"))return this;this.engine=new H0(this.uri,this.opts);const f=this.engine,s=this;this._readyState="opening",this.skipReconnect=!1;const m=ze(f,"open",function(){s.onopen(),i&&i()}),E=B=>{this.cleanup(),this._readyState="closed",this.emitReserved("error",B),i?i(B):this.maybeReconnectOnOpen()},R=ze(f,"error",E);if(this._timeout!==!1){const B=this._timeout,M=this.setTimeoutFn(()=>{m(),E(new Error("timeout")),f.close()},B);this.opts.autoUnref&&M.unref(),this.subs.push(()=>{this.clearTimeoutFn(M)})}return this.subs.push(m),this.subs.push(R),this}connect(i){return this.open(i)}onopen(){this.cleanup(),this._readyState="open",this.emitReserved("open");const i=this.engine;this.subs.push(ze(i,"ping",this.onping.bind(this)),ze(i,"data",this.ondata.bind(this)),ze(i,"error",this.onerror.bind(this)),ze(i,"close",this.onclose.bind(this)),ze(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(i){try{this.decoder.add(i)}catch(f){this.onclose("parse error",f)}}ondecoded(i){ni(()=>{this.emitReserved("packet",i)},this.setTimeoutFn)}onerror(i){this.emitReserved("error",i)}socket(i,f){let s=this.nsps[i];return s?this._autoConnect&&!s.active&&s.connect():(s=new Sd(this,i,f),this.nsps[i]=s),s}_destroy(i){const f=Object.keys(this.nsps);for(const s of f)if(this.nsps[s].active)return;this._close()}_packet(i){const f=this.encoder.encode(i);for(let s=0;si()),this.subs.length=0,this.decoder.destroy()}_close(){this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close")}disconnect(){return this._close()}onclose(i,f){var s;this.cleanup(),(s=this.engine)===null||s===void 0||s.close(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",i,f),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;const i=this;if(this.backoff.attempts>=this._reconnectionAttempts)this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{const f=this.backoff.duration();this._reconnecting=!0;const s=this.setTimeoutFn(()=>{i.skipReconnect||(this.emitReserved("reconnect_attempt",i.backoff.attempts),!i.skipReconnect&&i.open(m=>{m?(i._reconnecting=!1,i.reconnect(),this.emitReserved("reconnect_error",m)):i.onreconnect()}))},f);this.opts.autoUnref&&s.unref(),this.subs.push(()=>{this.clearTimeoutFn(s)})}}onreconnect(){const i=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",i)}}const Ua={};function li(o,i){typeof o=="object"&&(i=o,o=void 0),i=i||{};const f=Y0(o,i.path||"/socket.io"),s=f.source,m=f.id,E=f.path,R=Ua[m]&&E in Ua[m].nsps,B=i.forceNew||i["force new connection"]||i.multiplex===!1||R;let M;return B?M=new jf(s,i):(Ua[m]||(Ua[m]=new jf(s,i)),M=Ua[m]),f.query&&!i.query&&(i.query=f.queryKey),M.socket(f.path,i)}Object.assign(li,{Manager:jf,Socket:Sd,io:li,connect:li});console.log("socket.io client loaded");const _d=li({transports:["websocket"],query:{role:"user"}}),Ed=Mt.createContext(_d),$0=({children:o})=>Y.jsx(Ed.Provider,{value:_d,children:o}),F0=()=>Mt.useContext(Ed),Td=Mt.createContext({connected:!1,session:null,logs:[],login:async()=>{},setRole:async()=>{},requestControl:async()=>{},releaseControl:async()=>{},subscribeAll:async()=>{}});function I0(o){return Mt.useCallback((i,f={})=>new Promise((s,m)=>{o.emit(i,f,(E={})=>{E.error?m(new Error(E.error)):s(E)})}),[o])}function P0({children:o}){const i=F0(),f=I0(i),[s,m]=Mt.useState(null),[E,R]=Mt.useState([]),[B,M]=Mt.useState(i.connected);Mt.useEffect(()=>{const x=()=>M(!0),K=()=>M(!1);return i.on("connect",x),i.on("disconnect",K),()=>{i.off("connect",x),i.off("disconnect",K)}},[i]),Mt.useEffect(()=>{function x(_t){m(_t)}function K(_t=[]){R(_t)}function Yt(_t){R(Ut=>[...Ut.slice(-199),_t])}return i.on("session:sync",x),i.on("log:init",K),i.on("log:entry",Yt),()=>{i.off("session:sync",x),i.off("log:init",K),i.off("log:entry",Yt)}},[i]);const A=Mt.useMemo(()=>({login:(x,K)=>f("auth:login",{username:x,password:K}),setRole:x=>f("session:setRole",{role:x}),requestControl:(x,K={})=>f("session:requestControl",{roverId:x,...K}),releaseControl:x=>f("session:releaseControl",{roverId:x}),subscribeAll:()=>f("session:subscribeAll")}),[f]),Q=Mt.useMemo(()=>({connected:B,session:s,logs:E,...A}),[A,B,E,s]);return Y.jsx(Td.Provider,{value:Q,children:o})}function qn(){return Mt.useContext(Td)}function tv({connected:o,role:i,mode:f}){const s=o?"bg-emerald-500/20 text-emerald-300":"bg-red-500/20 text-red-200";return Y.jsxs("div",{className:"flex flex-wrap items-center gap-3 text-sm",children:[Y.jsx("span",{className:`rounded-full px-3 py-1 font-medium ${s}`,children:o?"Connected":"Disconnected"}),Y.jsxs("span",{className:"rounded-full bg-slate-800/80 px-3 py-1 text-slate-200",children:["Role: ",i||"unknown"]}),Y.jsxs("span",{className:"rounded-full bg-slate-800/80 px-3 py-1 text-slate-200",children:["Mode: ",f||"--"]})]})}function ev(){const{logs:o}=qn();return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/70 p-4",children:[Y.jsxs("header",{className:"mb-3 flex items-center justify-between",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Server logs"}),Y.jsxs("span",{className:"text-xs uppercase tracking-[0.2em] text-slate-500",children:[o.length," entries"]})]}),Y.jsx("div",{className:"h-64 overflow-y-auto rounded-xl bg-slate-950/40 p-3 text-xs font-mono text-slate-300",children:o.length===0?Y.jsx("p",{children:"No logs yet."}):o.slice().reverse().map(i=>Y.jsxs("div",{className:"mb-2",children:[Y.jsx("span",{className:"text-slate-500",children:i.timestamp})," ",Y.jsxs("span",{className:"text-cyan-300",children:["[",i.level,"]"]})," ",i.label&&Y.jsxs("span",{className:"text-pink-300",children:["[",i.label,"]"]})," ",Y.jsx("span",{children:i.message})]},i.id))})]})}function lv(){const{session:o,requestControl:i}=qn(),f=o?.roster??[],[s,m]=Mt.useState({});async function E(R){m(B=>({...B,[R]:!0}));try{await i(R)}catch(B){alert(B.message)}finally{m(B=>({...B,[R]:!1}))}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Rovers"}),Y.jsxs("div",{className:"mt-4 space-y-3",children:[f.length===0&&Y.jsx("p",{className:"text-slate-400",children:"No rovers registered."}),f.map(R=>Y.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-3 rounded-xl bg-slate-950/40 px-4 py-3",children:[Y.jsxs("div",{children:[Y.jsx("p",{className:"text-white",children:R.name}),Y.jsxs("p",{className:"text-xs text-slate-400",children:["Locked: ",R.locked?"yes":"no"]})]}),Y.jsx("button",{type:"button",onClick:()=>E(R.id),disabled:s[R.id],className:"rounded-full bg-blue-600 px-4 py-1 text-sm font-semibold text-white disabled:opacity-50",children:s[R.id]?"Requesting…":"Request control"})]},R.id))]})]})}function nv(){const{session:o,releaseControl:i}=qn(),f=o?.assignment,s=f?.roverId,[m,E]=Mt.useState(!1);async function R(){if(s){E(!0);try{await i(s)}catch(B){alert(B.message)}finally{E(!1)}}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Assignment"}),s?Y.jsxs("div",{className:"mt-4 space-y-3",children:[Y.jsxs("p",{className:"text-slate-300",children:["Currently driving rover ",s]}),Y.jsx("button",{type:"button",onClick:R,disabled:m,className:"rounded-full bg-red-600 px-4 py-1 text-sm font-semibold text-white disabled:opacity-50",children:m?"Releasing…":"Release control"})]}):Y.jsxs("div",{className:"mt-4 text-slate-400",children:[Y.jsxs("p",{children:["Status: ",f?.status??"not assigned"]}),f?.queuePosition&&Y.jsxs("p",{children:["Queue position: ",f.queuePosition]})]})]})}function av(){const{session:o}=qn(),i=Mt.useMemo(()=>JSON.stringify(o??{},null,2),[o]);return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Session snapshot"}),Y.jsx("pre",{className:"mt-4 max-h-64 overflow-y-auto text-sm text-teal-200",children:i})]})}function uv(){const{login:o,setRole:i}=qn(),[f,s]=Mt.useState(""),[m,E]=Mt.useState(""),[R,B]=Mt.useState(!1);async function M(A){A.preventDefault(),B(!0);try{await o(f,m),s(""),E("")}catch(Q){alert(Q.message)}finally{B(!1)}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Authentication"}),Y.jsxs("form",{className:"mt-4 flex flex-col gap-3",onSubmit:M,children:[Y.jsx("input",{className:"rounded-lg border border-slate-800 bg-slate-950/60 px-3 py-2 text-white",placeholder:"Username",value:f,onChange:A=>s(A.target.value)}),Y.jsx("input",{className:"rounded-lg border border-slate-800 bg-slate-950/60 px-3 py-2 text-white",placeholder:"Password",type:"password",value:m,onChange:A=>E(A.target.value)}),Y.jsx("button",{type:"submit",disabled:R,className:"rounded-lg bg-emerald-600 py-2 font-semibold text-white disabled:opacity-50",children:R?"Logging in…":"Login as admin"})]}),Y.jsxs("div",{className:"mt-4 flex gap-3",children:[Y.jsx("button",{type:"button",onClick:()=>i("user"),className:"rounded-lg border border-slate-700 px-3 py-1 text-sm text-slate-200",children:"Driver mode"}),Y.jsx("button",{type:"button",onClick:()=>i("spectator"),className:"rounded-lg border border-slate-700 px-3 py-1 text-sm text-slate-200",children:"Spectator mode"})]})]})}function iv(){const{connected:o,session:i}=qn();return Y.jsx("div",{className:"min-h-screen bg-slate-950 text-slate-50",children:Y.jsxs("main",{className:"mx-auto flex max-w-6xl flex-col gap-6 px-6 py-10",children:[Y.jsxs("header",{className:"space-y-4",children:[Y.jsx("h1",{className:"text-4xl font-semibold text-white",children:"Multi Roomba Rover Console"}),Y.jsx(tv,{connected:o,role:i?.role,mode:i?.mode})]}),Y.jsxs("section",{className:"grid gap-6 lg:grid-cols-2",children:[Y.jsx(lv,{}),Y.jsx(nv,{}),Y.jsx(uv,{}),Y.jsx(av,{})]}),Y.jsx(ev,{})]})})}l0.createRoot(document.getElementById("root")).render(Y.jsx(Mt.StrictMode,{children:Y.jsx($0,{children:Y.jsx(P0,{children:Y.jsx(iv,{})})})})); +`+n.stack}}var fi=Object.prototype.hasOwnProperty,si=o.unstable_scheduleCallback,oi=o.unstable_cancelCallback,Od=o.unstable_shouldYield,Nd=o.unstable_requestPaint,Pt=o.unstable_now,Md=o.unstable_getCurrentPriorityLevel,Wf=o.unstable_ImmediatePriority,$f=o.unstable_UserBlockingPriority,Ba=o.unstable_NormalPriority,Rd=o.unstable_LowPriority,Ff=o.unstable_IdlePriority,Dd=o.log,Ud=o.unstable_setDisableYieldValue,Yn=null,te=null;function ll(t){if(typeof Dd=="function"&&Ud(t),te&&typeof te.setStrictMode=="function")try{te.setStrictMode(Yn,t)}catch{}}var ee=Math.clz32?Math.clz32:Bd,xd=Math.log,Cd=Math.LN2;function Bd(t){return t>>>=0,t===0?32:31-(xd(t)/Cd|0)|0}var qa=256,Ha=262144,Ya=4194304;function Dl(t){var e=t&42;if(e!==0)return e;switch(t&-t){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return t&261888;case 262144:case 524288:case 1048576:case 2097152:return t&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return t&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return t}}function ja(t,e,l){var n=t.pendingLanes;if(n===0)return 0;var a=0,u=t.suspendedLanes,c=t.pingedLanes;t=t.warmLanes;var r=n&134217727;return r!==0?(n=r&~u,n!==0?a=Dl(n):(c&=r,c!==0?a=Dl(c):l||(l=r&~t,l!==0&&(a=Dl(l))))):(r=n&~u,r!==0?a=Dl(r):c!==0?a=Dl(c):l||(l=n&~t,l!==0&&(a=Dl(l)))),a===0?0:e!==0&&e!==a&&(e&u)===0&&(u=a&-a,l=e&-e,u>=l||u===32&&(l&4194048)!==0)?e:a}function jn(t,e){return(t.pendingLanes&~(t.suspendedLanes&~t.pingedLanes)&e)===0}function qd(t,e){switch(t){case 1:case 2:case 4:case 8:case 64:return e+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 e+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 If(){var t=Ya;return Ya<<=1,(Ya&62914560)===0&&(Ya=4194304),t}function ri(t){for(var e=[],l=0;31>l;l++)e.push(t);return e}function Ln(t,e){t.pendingLanes|=e,e!==268435456&&(t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0)}function Hd(t,e,l,n,a,u){var c=t.pendingLanes;t.pendingLanes=l,t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0,t.expiredLanes&=l,t.entangledLanes&=l,t.errorRecoveryDisabledLanes&=l,t.shellSuspendCounter=0;var r=t.entanglements,h=t.expirationTimes,p=t.hiddenUpdates;for(l=c&~l;0"u")return null;try{return t.activeElement||t.body}catch{return t.body}}var Gd=/[\n"\\]/g;function re(t){return t.replace(Gd,function(e){return"\\"+e.charCodeAt(0).toString(16)+" "})}function gi(t,e,l,n,a,u,c,r){t.name="",c!=null&&typeof c!="function"&&typeof c!="symbol"&&typeof c!="boolean"?t.type=c:t.removeAttribute("type"),e!=null?c==="number"?(e===0&&t.value===""||t.value!=e)&&(t.value=""+oe(e)):t.value!==""+oe(e)&&(t.value=""+oe(e)):c!=="submit"&&c!=="reset"||t.removeAttribute("value"),e!=null?pi(t,c,oe(e)):l!=null?pi(t,c,oe(l)):n!=null&&t.removeAttribute("value"),a==null&&u!=null&&(t.defaultChecked=!!u),a!=null&&(t.checked=a&&typeof a!="function"&&typeof a!="symbol"),r!=null&&typeof r!="function"&&typeof r!="symbol"&&typeof r!="boolean"?t.name=""+oe(r):t.removeAttribute("name")}function rs(t,e,l,n,a,u,c,r){if(u!=null&&typeof u!="function"&&typeof u!="symbol"&&typeof u!="boolean"&&(t.type=u),e!=null||l!=null){if(!(u!=="submit"&&u!=="reset"||e!=null)){vi(t);return}l=l!=null?""+oe(l):"",e=e!=null?""+oe(e):l,r||e===t.value||(t.value=e),t.defaultValue=e}n=n??a,n=typeof n!="function"&&typeof n!="symbol"&&!!n,t.checked=r?t.checked:!!n,t.defaultChecked=!!n,c!=null&&typeof c!="function"&&typeof c!="symbol"&&typeof c!="boolean"&&(t.name=c),vi(t)}function pi(t,e,l){e==="number"&&Qa(t.ownerDocument)===t||t.defaultValue===""+l||(t.defaultValue=""+l)}function tn(t,e,l,n){if(t=t.options,e){e={};for(var a=0;a"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Ti=!1;if(Le)try{var Vn={};Object.defineProperty(Vn,"passive",{get:function(){Ti=!0}}),window.addEventListener("test",Vn,Vn),window.removeEventListener("test",Vn,Vn)}catch{Ti=!1}var al=null,Ai=null,Va=null;function ps(){if(Va)return Va;var t,e=Ai,l=e.length,n,a="value"in al?al.value:al.textContent,u=a.length;for(t=0;t=Kn),As=" ",zs=!1;function Os(t,e){switch(t){case"keyup":return vy.indexOf(e.keyCode)!==-1;case"keydown":return e.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Ns(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var an=!1;function py(t,e){switch(t){case"compositionend":return Ns(e);case"keypress":return e.which!==32?null:(zs=!0,As);case"textInput":return t=e.data,t===As&&zs?null:t;default:return null}}function Sy(t,e){if(an)return t==="compositionend"||!Ri&&Os(t,e)?(t=ps(),Va=Ai=al=null,an=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(e.ctrlKey||e.altKey||e.metaKey)||e.ctrlKey&&e.altKey){if(e.char&&1=e)return{node:l,offset:e-t};t=n}t:{for(;l;){if(l.nextSibling){l=l.nextSibling;break t}l=l.parentNode}l=void 0}l=qs(l)}}function Ys(t,e){return t&&e?t===e?!0:t&&t.nodeType===3?!1:e&&e.nodeType===3?Ys(t,e.parentNode):"contains"in t?t.contains(e):t.compareDocumentPosition?!!(t.compareDocumentPosition(e)&16):!1:!1}function js(t){t=t!=null&&t.ownerDocument!=null&&t.ownerDocument.defaultView!=null?t.ownerDocument.defaultView:window;for(var e=Qa(t.document);e instanceof t.HTMLIFrameElement;){try{var l=typeof e.contentWindow.location.href=="string"}catch{l=!1}if(l)t=e.contentWindow;else break;e=Qa(t.document)}return e}function xi(t){var e=t&&t.nodeName&&t.nodeName.toLowerCase();return e&&(e==="input"&&(t.type==="text"||t.type==="search"||t.type==="tel"||t.type==="url"||t.type==="password")||e==="textarea"||t.contentEditable==="true")}var Ny=Le&&"documentMode"in document&&11>=document.documentMode,un=null,Ci=null,$n=null,Bi=!1;function Ls(t,e,l){var n=l.window===l?l.document:l.nodeType===9?l:l.ownerDocument;Bi||un==null||un!==Qa(n)||(n=un,"selectionStart"in n&&xi(n)?n={start:n.selectionStart,end:n.selectionEnd}:(n=(n.ownerDocument&&n.ownerDocument.defaultView||window).getSelection(),n={anchorNode:n.anchorNode,anchorOffset:n.anchorOffset,focusNode:n.focusNode,focusOffset:n.focusOffset}),$n&&Wn($n,n)||($n=n,n=Hu(Ci,"onSelect"),0>=c,a-=c,Re=1<<32-ee(e)+a|l<w?(F=H,H=null):F=H.sibling;var lt=S(v,H,g[w],z);if(lt===null){H===null&&(H=F);break}t&&H&<.alternate===null&&e(v,H),d=u(lt,d,w),et===null?j=lt:et.sibling=lt,et=lt,H=F}if(w===g.length)return l(v,H),P&&Qe(v,w),j;if(H===null){for(;ww?(F=H,H=null):F=H.sibling;var Ol=S(v,H,lt.value,z);if(Ol===null){H===null&&(H=F);break}t&&H&&Ol.alternate===null&&e(v,H),d=u(Ol,d,w),et===null?j=Ol:et.sibling=Ol,et=Ol,H=F}if(lt.done)return l(v,H),P&&Qe(v,w),j;if(H===null){for(;!lt.done;w++,lt=g.next())lt=O(v,lt.value,z),lt!==null&&(d=u(lt,d,w),et===null?j=lt:et.sibling=lt,et=lt);return P&&Qe(v,w),j}for(H=n(H);!lt.done;w++,lt=g.next())lt=b(H,v,w,lt.value,z),lt!==null&&(t&<.alternate!==null&&H.delete(lt.key===null?w:lt.key),d=u(lt,d,w),et===null?j=lt:et.sibling=lt,et=lt);return t&&H.forEach(function(Jm){return e(v,Jm)}),P&&Qe(v,w),j}function ot(v,d,g,z){if(typeof g=="object"&&g!==null&&g.type===Ut&&g.key===null&&(g=g.props.children),typeof g=="object"&&g!==null){switch(g.$$typeof){case Yt:t:{for(var j=g.key;d!==null;){if(d.key===j){if(j=g.type,j===Ut){if(d.tag===7){l(v,d.sibling),z=a(d,g.props.children),z.return=v,v=z;break t}}else if(d.elementType===j||typeof j=="object"&&j!==null&&j.$$typeof===Vt&&Ql(j)===d.type){l(v,d.sibling),z=a(d,g.props),la(z,g),z.return=v,v=z;break t}l(v,d);break}else e(v,d);d=d.sibling}g.type===Ut?(z=Hl(g.props.children,v.mode,z,g.key),z.return=v,v=z):(z=Pa(g.type,g.key,g.props,null,v.mode,z),la(z,g),z.return=v,v=z)}return c(v);case _t:t:{for(j=g.key;d!==null;){if(d.key===j)if(d.tag===4&&d.stateNode.containerInfo===g.containerInfo&&d.stateNode.implementation===g.implementation){l(v,d.sibling),z=a(d,g.children||[]),z.return=v,v=z;break t}else{l(v,d);break}else e(v,d);d=d.sibling}z=Qi(g,v.mode,z),z.return=v,v=z}return c(v);case Vt:return g=Ql(g),ot(v,d,g,z)}if(_e(g))return C(v,d,g,z);if(Zt(g)){if(j=Zt(g),typeof j!="function")throw Error(s(150));return g=j.call(g),L(v,d,g,z)}if(typeof g.then=="function")return ot(v,d,iu(g),z);if(g.$$typeof===jt)return ot(v,d,lu(v,g),z);cu(v,g)}return typeof g=="string"&&g!==""||typeof g=="number"||typeof g=="bigint"?(g=""+g,d!==null&&d.tag===6?(l(v,d.sibling),z=a(d,g),z.return=v,v=z):(l(v,d),z=Xi(g,v.mode,z),z.return=v,v=z),c(v)):l(v,d)}return function(v,d,g,z){try{ea=0;var j=ot(v,d,g,z);return gn=null,j}catch(H){if(H===vn||H===au)throw H;var et=ne(29,H,null,v.mode);return et.lanes=z,et.return=v,et}finally{}}}var Vl=fo(!0),so=fo(!1),sl=!1;function Pi(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function tc(t,e){t=t.updateQueue,e.updateQueue===t&&(e.updateQueue={baseState:t.baseState,firstBaseUpdate:t.firstBaseUpdate,lastBaseUpdate:t.lastBaseUpdate,shared:t.shared,callbacks:null})}function ol(t){return{lane:t,tag:0,payload:null,callback:null,next:null}}function rl(t,e,l){var n=t.updateQueue;if(n===null)return null;if(n=n.shared,(nt&2)!==0){var a=n.pending;return a===null?e.next=e:(e.next=a.next,a.next=e),n.pending=e,e=Ia(t),Ks(t,null,l),e}return Fa(t,n,e,l),Ia(t)}function na(t,e,l){if(e=e.updateQueue,e!==null&&(e=e.shared,(l&4194048)!==0)){var n=e.lanes;n&=t.pendingLanes,l|=n,e.lanes=l,ts(t,l)}}function ec(t,e){var l=t.updateQueue,n=t.alternate;if(n!==null&&(n=n.updateQueue,l===n)){var a=null,u=null;if(l=l.firstBaseUpdate,l!==null){do{var c={lane:l.lane,tag:l.tag,payload:l.payload,callback:null,next:null};u===null?a=u=c:u=u.next=c,l=l.next}while(l!==null);u===null?a=u=e:u=u.next=e}else a=u=e;l={baseState:n.baseState,firstBaseUpdate:a,lastBaseUpdate:u,shared:n.shared,callbacks:n.callbacks},t.updateQueue=l;return}t=l.lastBaseUpdate,t===null?l.firstBaseUpdate=e:t.next=e,l.lastBaseUpdate=e}var lc=!1;function aa(){if(lc){var t=mn;if(t!==null)throw t}}function ua(t,e,l,n){lc=!1;var a=t.updateQueue;sl=!1;var u=a.firstBaseUpdate,c=a.lastBaseUpdate,r=a.shared.pending;if(r!==null){a.shared.pending=null;var h=r,p=h.next;h.next=null,c===null?u=p:c.next=p,c=h;var _=t.alternate;_!==null&&(_=_.updateQueue,r=_.lastBaseUpdate,r!==c&&(r===null?_.firstBaseUpdate=p:r.next=p,_.lastBaseUpdate=h))}if(u!==null){var O=a.baseState;c=0,_=p=h=null,r=u;do{var S=r.lane&-536870913,b=S!==r.lane;if(b?($&S)===S:(n&S)===S){S!==0&&S===yn&&(lc=!0),_!==null&&(_=_.next={lane:0,tag:r.tag,payload:r.payload,callback:null,next:null});t:{var C=t,L=r;S=e;var ot=l;switch(L.tag){case 1:if(C=L.payload,typeof C=="function"){O=C.call(ot,O,S);break t}O=C;break t;case 3:C.flags=C.flags&-65537|128;case 0:if(C=L.payload,S=typeof C=="function"?C.call(ot,O,S):C,S==null)break t;O=x({},O,S);break t;case 2:sl=!0}}S=r.callback,S!==null&&(t.flags|=64,b&&(t.flags|=8192),b=a.callbacks,b===null?a.callbacks=[S]:b.push(S))}else b={lane:S,tag:r.tag,payload:r.payload,callback:r.callback,next:null},_===null?(p=_=b,h=O):_=_.next=b,c|=S;if(r=r.next,r===null){if(r=a.shared.pending,r===null)break;b=r,r=b.next,b.next=null,a.lastBaseUpdate=b,a.shared.pending=null}}while(!0);_===null&&(h=O),a.baseState=h,a.firstBaseUpdate=p,a.lastBaseUpdate=_,u===null&&(a.shared.lanes=0),vl|=c,t.lanes=c,t.memoizedState=O}}function oo(t,e){if(typeof t!="function")throw Error(s(191,t));t.call(e)}function ro(t,e){var l=t.callbacks;if(l!==null)for(t.callbacks=null,t=0;tu?u:8;var c=T.T,r={};T.T=r,_c(t,!1,e,l);try{var h=a(),p=T.S;if(p!==null&&p(r,h),h!==null&&typeof h=="object"&&typeof h.then=="function"){var _=Hy(h,n);fa(t,e,_,fe(t))}else fa(t,e,n,fe(t))}catch(O){fa(t,e,{then:function(){},status:"rejected",reason:O},fe())}finally{D.p=u,c!==null&&r.types!==null&&(c.types=r.types),T.T=c}}function Gy(){}function Sc(t,e,l,n){if(t.tag!==5)throw Error(s(476));var a=Zo(t).queue;Vo(t,a,e,X,l===null?Gy:function(){return wo(t),l(n)})}function Zo(t){var e=t.memoizedState;if(e!==null)return e;e={memoizedState:X,baseState:X,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:we,lastRenderedState:X},next:null};var l={};return e.next={memoizedState:l,baseState:l,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:we,lastRenderedState:l},next:null},t.memoizedState=e,t=t.alternate,t!==null&&(t.memoizedState=e),e}function wo(t){var e=Zo(t);e.next===null&&(e=t.alternate.memoizedState),fa(t,e.next.queue,{},fe())}function bc(){return Bt(za)}function Ko(){return bt().memoizedState}function Jo(){return bt().memoizedState}function Vy(t){for(var e=t.return;e!==null;){switch(e.tag){case 24:case 3:var l=fe();t=ol(l);var n=rl(e,t,l);n!==null&&(Ft(n,e,l),na(n,e,l)),e={cache:Wi()},t.payload=e;return}e=e.return}}function Zy(t,e,l){var n=fe();l={lane:n,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},gu(t)?Wo(e,l):(l=ji(t,e,l,n),l!==null&&(Ft(l,t,n),$o(l,e,n)))}function ko(t,e,l){var n=fe();fa(t,e,l,n)}function fa(t,e,l,n){var a={lane:n,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null};if(gu(t))Wo(e,a);else{var u=t.alternate;if(t.lanes===0&&(u===null||u.lanes===0)&&(u=e.lastRenderedReducer,u!==null))try{var c=e.lastRenderedState,r=u(c,l);if(a.hasEagerState=!0,a.eagerState=r,le(r,c))return Fa(t,e,a,0),ht===null&&$a(),!1}catch{}finally{}if(l=ji(t,e,a,n),l!==null)return Ft(l,t,n),$o(l,e,n),!0}return!1}function _c(t,e,l,n){if(n={lane:2,revertLane:Pc(),gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},gu(t)){if(e)throw Error(s(479))}else e=ji(t,l,n,2),e!==null&&Ft(e,t,2)}function gu(t){var e=t.alternate;return t===Z||e!==null&&e===Z}function Wo(t,e){Sn=ou=!0;var l=t.pending;l===null?e.next=e:(e.next=l.next,l.next=e),t.pending=e}function $o(t,e,l){if((l&4194048)!==0){var n=e.lanes;n&=t.pendingLanes,l|=n,e.lanes=l,ts(t,l)}}var sa={readContext:Bt,use:du,useCallback:vt,useContext:vt,useEffect:vt,useImperativeHandle:vt,useLayoutEffect:vt,useInsertionEffect:vt,useMemo:vt,useReducer:vt,useRef:vt,useState:vt,useDebugValue:vt,useDeferredValue:vt,useTransition:vt,useSyncExternalStore:vt,useId:vt,useHostTransitionStatus:vt,useFormState:vt,useActionState:vt,useOptimistic:vt,useMemoCache:vt,useCacheRefresh:vt};sa.useEffectEvent=vt;var Fo={readContext:Bt,use:du,useCallback:function(t,e){return Qt().memoizedState=[t,e===void 0?null:e],t},useContext:Bt,useEffect:Bo,useImperativeHandle:function(t,e,l){l=l!=null?l.concat([t]):null,mu(4194308,4,jo.bind(null,e,t),l)},useLayoutEffect:function(t,e){return mu(4194308,4,t,e)},useInsertionEffect:function(t,e){mu(4,2,t,e)},useMemo:function(t,e){var l=Qt();e=e===void 0?null:e;var n=t();if(Zl){ll(!0);try{t()}finally{ll(!1)}}return l.memoizedState=[n,e],n},useReducer:function(t,e,l){var n=Qt();if(l!==void 0){var a=l(e);if(Zl){ll(!0);try{l(e)}finally{ll(!1)}}}else a=e;return n.memoizedState=n.baseState=a,t={pending:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:a},n.queue=t,t=t.dispatch=Zy.bind(null,Z,t),[n.memoizedState,t]},useRef:function(t){var e=Qt();return t={current:t},e.memoizedState=t},useState:function(t){t=yc(t);var e=t.queue,l=ko.bind(null,Z,e);return e.dispatch=l,[t.memoizedState,l]},useDebugValue:gc,useDeferredValue:function(t,e){var l=Qt();return pc(l,t,e)},useTransition:function(){var t=yc(!1);return t=Vo.bind(null,Z,t.queue,!0,!1),Qt().memoizedState=t,[!1,t]},useSyncExternalStore:function(t,e,l){var n=Z,a=Qt();if(P){if(l===void 0)throw Error(s(407));l=l()}else{if(l=e(),ht===null)throw Error(s(349));($&127)!==0||po(n,e,l)}a.memoizedState=l;var u={value:l,getSnapshot:e};return a.queue=u,Bo(bo.bind(null,n,u,t),[t]),n.flags|=2048,_n(9,{destroy:void 0},So.bind(null,n,u,l,e),null),l},useId:function(){var t=Qt(),e=ht.identifierPrefix;if(P){var l=De,n=Re;l=(n&~(1<<32-ee(n)-1)).toString(32)+l,e="_"+e+"R_"+l,l=ru++,0<\/script>",u=u.removeChild(u.firstChild);break;case"select":u=typeof n.is=="string"?c.createElement("select",{is:n.is}):c.createElement("select"),n.multiple?u.multiple=!0:n.size&&(u.size=n.size);break;default:u=typeof n.is=="string"?c.createElement(a,{is:n.is}):c.createElement(a)}}u[xt]=e,u[wt]=n;t:for(c=e.child;c!==null;){if(c.tag===5||c.tag===6)u.appendChild(c.stateNode);else if(c.tag!==4&&c.tag!==27&&c.child!==null){c.child.return=c,c=c.child;continue}if(c===e)break t;for(;c.sibling===null;){if(c.return===null||c.return===e)break t;c=c.return}c.sibling.return=c.return,c=c.sibling}e.stateNode=u;t:switch(Ht(u,a,n),a){case"button":case"input":case"select":case"textarea":n=!!n.autoFocus;break t;case"img":n=!0;break t;default:n=!1}n&&Je(e)}}return yt(e),qc(e,e.type,t===null?null:t.memoizedProps,e.pendingProps,l),null;case 6:if(t&&e.stateNode!=null)t.memoizedProps!==n&&Je(e);else{if(typeof n!="string"&&e.stateNode===null)throw Error(s(166));if(t=J.current,hn(e)){if(t=e.stateNode,l=e.memoizedProps,n=null,a=Ct,a!==null)switch(a.tag){case 27:case 5:n=a.memoizedProps}t[xt]=e,t=!!(t.nodeValue===l||n!==null&&n.suppressHydrationWarning===!0||vh(t.nodeValue,l)),t||cl(e,!0)}else t=Yu(t).createTextNode(n),t[xt]=e,e.stateNode=t}return yt(e),null;case 31:if(l=e.memoizedState,t===null||t.memoizedState!==null){if(n=hn(e),l!==null){if(t===null){if(!n)throw Error(s(318));if(t=e.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(s(557));t[xt]=e}else Yl(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;yt(e),t=!1}else l=wi(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=l),t=!0;if(!t)return e.flags&256?(ue(e),e):(ue(e),null);if((e.flags&128)!==0)throw Error(s(558))}return yt(e),null;case 13:if(n=e.memoizedState,t===null||t.memoizedState!==null&&t.memoizedState.dehydrated!==null){if(a=hn(e),n!==null&&n.dehydrated!==null){if(t===null){if(!a)throw Error(s(318));if(a=e.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(s(317));a[xt]=e}else Yl(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;yt(e),a=!1}else a=wi(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=a),a=!0;if(!a)return e.flags&256?(ue(e),e):(ue(e),null)}return ue(e),(e.flags&128)!==0?(e.lanes=l,e):(l=n!==null,t=t!==null&&t.memoizedState!==null,l&&(n=e.child,a=null,n.alternate!==null&&n.alternate.memoizedState!==null&&n.alternate.memoizedState.cachePool!==null&&(a=n.alternate.memoizedState.cachePool.pool),u=null,n.memoizedState!==null&&n.memoizedState.cachePool!==null&&(u=n.memoizedState.cachePool.pool),u!==a&&(n.flags|=2048)),l!==t&&l&&(e.child.flags|=8192),Eu(e,e.updateQueue),yt(e),null);case 4:return pt(),t===null&&nf(e.stateNode.containerInfo),yt(e),null;case 10:return Ve(e.type),yt(e),null;case 19:if(N(St),n=e.memoizedState,n===null)return yt(e),null;if(a=(e.flags&128)!==0,u=n.rendering,u===null)if(a)ra(n,!1);else{if(gt!==0||t!==null&&(t.flags&128)!==0)for(t=e.child;t!==null;){if(u=su(t),u!==null){for(e.flags|=128,ra(n,!1),t=u.updateQueue,e.updateQueue=t,Eu(e,t),e.subtreeFlags=0,t=l,l=e.child;l!==null;)Js(l,t),l=l.sibling;return U(St,St.current&1|2),P&&Qe(e,n.treeForkCount),e.child}t=t.sibling}n.tail!==null&&Pt()>Nu&&(e.flags|=128,a=!0,ra(n,!1),e.lanes=4194304)}else{if(!a)if(t=su(u),t!==null){if(e.flags|=128,a=!0,t=t.updateQueue,e.updateQueue=t,Eu(e,t),ra(n,!0),n.tail===null&&n.tailMode==="hidden"&&!u.alternate&&!P)return yt(e),null}else 2*Pt()-n.renderingStartTime>Nu&&l!==536870912&&(e.flags|=128,a=!0,ra(n,!1),e.lanes=4194304);n.isBackwards?(u.sibling=e.child,e.child=u):(t=n.last,t!==null?t.sibling=u:e.child=u,n.last=u)}return n.tail!==null?(t=n.tail,n.rendering=t,n.tail=t.sibling,n.renderingStartTime=Pt(),t.sibling=null,l=St.current,U(St,a?l&1|2:l&1),P&&Qe(e,n.treeForkCount),t):(yt(e),null);case 22:case 23:return ue(e),ac(),n=e.memoizedState!==null,t!==null?t.memoizedState!==null!==n&&(e.flags|=8192):n&&(e.flags|=8192),n?(l&536870912)!==0&&(e.flags&128)===0&&(yt(e),e.subtreeFlags&6&&(e.flags|=8192)):yt(e),l=e.updateQueue,l!==null&&Eu(e,l.retryQueue),l=null,t!==null&&t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(l=t.memoizedState.cachePool.pool),n=null,e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),n!==l&&(e.flags|=2048),t!==null&&N(Xl),null;case 24:return l=null,t!==null&&(l=t.memoizedState.cache),e.memoizedState.cache!==l&&(e.flags|=2048),Ve(Et),yt(e),null;case 25:return null;case 30:return null}throw Error(s(156,e.tag))}function Wy(t,e){switch(Vi(e),e.tag){case 1:return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 3:return Ve(Et),pt(),t=e.flags,(t&65536)!==0&&(t&128)===0?(e.flags=t&-65537|128,e):null;case 26:case 27:case 5:return Ca(e),null;case 31:if(e.memoizedState!==null){if(ue(e),e.alternate===null)throw Error(s(340));Yl()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 13:if(ue(e),t=e.memoizedState,t!==null&&t.dehydrated!==null){if(e.alternate===null)throw Error(s(340));Yl()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 19:return N(St),null;case 4:return pt(),null;case 10:return Ve(e.type),null;case 22:case 23:return ue(e),ac(),t!==null&&N(Xl),t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 24:return Ve(Et),null;case 25:return null;default:return null}}function _r(t,e){switch(Vi(e),e.tag){case 3:Ve(Et),pt();break;case 26:case 27:case 5:Ca(e);break;case 4:pt();break;case 31:e.memoizedState!==null&&ue(e);break;case 13:ue(e);break;case 19:N(St);break;case 10:Ve(e.type);break;case 22:case 23:ue(e),ac(),t!==null&&N(Xl);break;case 24:Ve(Et)}}function ha(t,e){try{var l=e.updateQueue,n=l!==null?l.lastEffect:null;if(n!==null){var a=n.next;l=a;do{if((l.tag&t)===t){n=void 0;var u=l.create,c=l.inst;n=u(),c.destroy=n}l=l.next}while(l!==a)}}catch(r){it(e,e.return,r)}}function yl(t,e,l){try{var n=e.updateQueue,a=n!==null?n.lastEffect:null;if(a!==null){var u=a.next;n=u;do{if((n.tag&t)===t){var c=n.inst,r=c.destroy;if(r!==void 0){c.destroy=void 0,a=e;var h=l,p=r;try{p()}catch(_){it(a,h,_)}}}n=n.next}while(n!==u)}}catch(_){it(e,e.return,_)}}function Er(t){var e=t.updateQueue;if(e!==null){var l=t.stateNode;try{ro(e,l)}catch(n){it(t,t.return,n)}}}function Tr(t,e,l){l.props=wl(t.type,t.memoizedProps),l.state=t.memoizedState;try{l.componentWillUnmount()}catch(n){it(t,e,n)}}function da(t,e){try{var l=t.ref;if(l!==null){switch(t.tag){case 26:case 27:case 5:var n=t.stateNode;break;case 30:n=t.stateNode;break;default:n=t.stateNode}typeof l=="function"?t.refCleanup=l(n):l.current=n}}catch(a){it(t,e,a)}}function Ue(t,e){var l=t.ref,n=t.refCleanup;if(l!==null)if(typeof n=="function")try{n()}catch(a){it(t,e,a)}finally{t.refCleanup=null,t=t.alternate,t!=null&&(t.refCleanup=null)}else if(typeof l=="function")try{l(null)}catch(a){it(t,e,a)}else l.current=null}function Ar(t){var e=t.type,l=t.memoizedProps,n=t.stateNode;try{t:switch(e){case"button":case"input":case"select":case"textarea":l.autoFocus&&n.focus();break t;case"img":l.src?n.src=l.src:l.srcSet&&(n.srcset=l.srcSet)}}catch(a){it(t,t.return,a)}}function Hc(t,e,l){try{var n=t.stateNode;gm(n,t.type,l,e),n[wt]=e}catch(a){it(t,t.return,a)}}function zr(t){return t.tag===5||t.tag===3||t.tag===26||t.tag===27&&_l(t.type)||t.tag===4}function Yc(t){t:for(;;){for(;t.sibling===null;){if(t.return===null||zr(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.tag===27&&_l(t.type)||t.flags&2||t.child===null||t.tag===4)continue t;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function jc(t,e,l){var n=t.tag;if(n===5||n===6)t=t.stateNode,e?(l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l).insertBefore(t,e):(e=l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l,e.appendChild(t),l=l._reactRootContainer,l!=null||e.onclick!==null||(e.onclick=je));else if(n!==4&&(n===27&&_l(t.type)&&(l=t.stateNode,e=null),t=t.child,t!==null))for(jc(t,e,l),t=t.sibling;t!==null;)jc(t,e,l),t=t.sibling}function Tu(t,e,l){var n=t.tag;if(n===5||n===6)t=t.stateNode,e?l.insertBefore(t,e):l.appendChild(t);else if(n!==4&&(n===27&&_l(t.type)&&(l=t.stateNode),t=t.child,t!==null))for(Tu(t,e,l),t=t.sibling;t!==null;)Tu(t,e,l),t=t.sibling}function Or(t){var e=t.stateNode,l=t.memoizedProps;try{for(var n=t.type,a=e.attributes;a.length;)e.removeAttributeNode(a[0]);Ht(e,n,l),e[xt]=t,e[wt]=l}catch(u){it(t,t.return,u)}}var ke=!1,zt=!1,Lc=!1,Nr=typeof WeakSet=="function"?WeakSet:Set,Dt=null;function $y(t,e){if(t=t.containerInfo,cf=Zu,t=js(t),xi(t)){if("selectionStart"in t)var l={start:t.selectionStart,end:t.selectionEnd};else t:{l=(l=t.ownerDocument)&&l.defaultView||window;var n=l.getSelection&&l.getSelection();if(n&&n.rangeCount!==0){l=n.anchorNode;var a=n.anchorOffset,u=n.focusNode;n=n.focusOffset;try{l.nodeType,u.nodeType}catch{l=null;break t}var c=0,r=-1,h=-1,p=0,_=0,O=t,S=null;e:for(;;){for(var b;O!==l||a!==0&&O.nodeType!==3||(r=c+a),O!==u||n!==0&&O.nodeType!==3||(h=c+n),O.nodeType===3&&(c+=O.nodeValue.length),(b=O.firstChild)!==null;)S=O,O=b;for(;;){if(O===t)break e;if(S===l&&++p===a&&(r=c),S===u&&++_===n&&(h=c),(b=O.nextSibling)!==null)break;O=S,S=O.parentNode}O=b}l=r===-1||h===-1?null:{start:r,end:h}}else l=null}l=l||{start:0,end:0}}else l=null;for(ff={focusedElem:t,selectionRange:l},Zu=!1,Dt=e;Dt!==null;)if(e=Dt,t=e.child,(e.subtreeFlags&1028)!==0&&t!==null)t.return=e,Dt=t;else for(;Dt!==null;){switch(e=Dt,u=e.alternate,t=e.flags,e.tag){case 0:if((t&4)!==0&&(t=e.updateQueue,t=t!==null?t.events:null,t!==null))for(l=0;l title"))),Ht(u,n,l),u[xt]=t,Rt(u),n=u;break t;case"link":var c=Ch("link","href",a).get(n+(l.href||""));if(c){for(var r=0;rot&&(c=ot,ot=L,L=c);var v=Hs(r,L),d=Hs(r,ot);if(v&&d&&(b.rangeCount!==1||b.anchorNode!==v.node||b.anchorOffset!==v.offset||b.focusNode!==d.node||b.focusOffset!==d.offset)){var g=O.createRange();g.setStart(v.node,v.offset),b.removeAllRanges(),L>ot?(b.addRange(g),b.extend(d.node,d.offset)):(g.setEnd(d.node,d.offset),b.addRange(g))}}}}for(O=[],b=r;b=b.parentNode;)b.nodeType===1&&O.push({element:b,left:b.scrollLeft,top:b.scrollTop});for(typeof r.focus=="function"&&r.focus(),r=0;rl?32:l,T.T=null,l=Kc,Kc=null;var u=pl,c=Pe;if(Nt=0,On=pl=null,Pe=0,(nt&6)!==0)throw Error(s(331));var r=nt;if(nt|=4,jr(u.current),qr(u,u.current,c,l),nt=r,Sa(0,!1),te&&typeof te.onPostCommitFiberRoot=="function")try{te.onPostCommitFiberRoot(Yn,u)}catch{}return!0}finally{D.p=a,T.T=n,lh(t,e)}}function ah(t,e,l){e=de(l,e),e=zc(t.stateNode,e,2),t=rl(t,e,2),t!==null&&(Ln(t,2),xe(t))}function it(t,e,l){if(t.tag===3)ah(t,t,l);else for(;e!==null;){if(e.tag===3){ah(e,t,l);break}else if(e.tag===1){var n=e.stateNode;if(typeof e.type.getDerivedStateFromError=="function"||typeof n.componentDidCatch=="function"&&(gl===null||!gl.has(n))){t=de(l,t),l=ur(2),n=rl(e,l,2),n!==null&&(ir(l,n,e,t),Ln(n,2),xe(n));break}}e=e.return}}function $c(t,e,l){var n=t.pingCache;if(n===null){n=t.pingCache=new Py;var a=new Set;n.set(e,a)}else a=n.get(e),a===void 0&&(a=new Set,n.set(e,a));a.has(l)||(Gc=!0,a.add(l),t=am.bind(null,t,e,l),e.then(t,t))}function am(t,e,l){var n=t.pingCache;n!==null&&n.delete(e),t.pingedLanes|=t.suspendedLanes&l,t.warmLanes&=~l,ht===t&&($&l)===l&&(gt===4||gt===3&&($&62914560)===$&&300>Pt()-Ou?(nt&2)===0&&Nn(t,0):Vc|=l,zn===$&&(zn=0)),xe(t)}function uh(t,e){e===0&&(e=If()),t=ql(t,e),t!==null&&(Ln(t,e),xe(t))}function um(t){var e=t.memoizedState,l=0;e!==null&&(l=e.retryLane),uh(t,l)}function im(t,e){var l=0;switch(t.tag){case 31:case 13:var n=t.stateNode,a=t.memoizedState;a!==null&&(l=a.retryLane);break;case 19:n=t.stateNode;break;case 22:n=t.stateNode._retryCache;break;default:throw Error(s(314))}n!==null&&n.delete(e),uh(t,l)}function cm(t,e){return si(t,e)}var Cu=null,Rn=null,Fc=!1,Bu=!1,Ic=!1,bl=0;function xe(t){t!==Rn&&t.next===null&&(Rn===null?Cu=Rn=t:Rn=Rn.next=t),Bu=!0,Fc||(Fc=!0,sm())}function Sa(t,e){if(!Ic&&Bu){Ic=!0;do for(var l=!1,n=Cu;n!==null;){if(t!==0){var a=n.pendingLanes;if(a===0)var u=0;else{var c=n.suspendedLanes,r=n.pingedLanes;u=(1<<31-ee(42|t)+1)-1,u&=a&~(c&~r),u=u&201326741?u&201326741|1:u?u|2:0}u!==0&&(l=!0,sh(n,u))}else u=$,u=ja(n,n===ht?u:0,n.cancelPendingCommit!==null||n.timeoutHandle!==-1),(u&3)===0||jn(n,u)||(l=!0,sh(n,u));n=n.next}while(l);Ic=!1}}function fm(){ih()}function ih(){Bu=Fc=!1;var t=0;bl!==0&&Sm()&&(t=bl);for(var e=Pt(),l=null,n=Cu;n!==null;){var a=n.next,u=ch(n,e);u===0?(n.next=null,l===null?Cu=a:l.next=a,a===null&&(Rn=l)):(l=n,(t!==0||(u&3)!==0)&&(Bu=!0)),n=a}Nt!==0&&Nt!==5||Sa(t),bl!==0&&(bl=0)}function ch(t,e){for(var l=t.suspendedLanes,n=t.pingedLanes,a=t.expirationTimes,u=t.pendingLanes&-62914561;0r)break;var _=h.transferSize,O=h.initiatorType;_&&gh(O)&&(h=h.responseEnd,c+=_*(h"u"?null:document;function Rh(t,e,l){var n=Dn;if(n&&typeof e=="string"&&e){var a=re(e);a='link[rel="'+t+'"][href="'+a+'"]',typeof l=="string"&&(a+='[crossorigin="'+l+'"]'),Mh.has(a)||(Mh.add(a),t={rel:t,crossOrigin:l,href:e},n.querySelector(a)===null&&(e=n.createElement("link"),Ht(e,"link",t),Rt(e),n.head.appendChild(e)))}}function Mm(t){tl.D(t),Rh("dns-prefetch",t,null)}function Rm(t,e){tl.C(t,e),Rh("preconnect",t,e)}function Dm(t,e,l){tl.L(t,e,l);var n=Dn;if(n&&t&&e){var a='link[rel="preload"][as="'+re(e)+'"]';e==="image"&&l&&l.imageSrcSet?(a+='[imagesrcset="'+re(l.imageSrcSet)+'"]',typeof l.imageSizes=="string"&&(a+='[imagesizes="'+re(l.imageSizes)+'"]')):a+='[href="'+re(t)+'"]';var u=a;switch(e){case"style":u=Un(t);break;case"script":u=xn(t)}Se.has(u)||(t=x({rel:"preload",href:e==="image"&&l&&l.imageSrcSet?void 0:t,as:e},l),Se.set(u,t),n.querySelector(a)!==null||e==="style"&&n.querySelector(Ta(u))||e==="script"&&n.querySelector(Aa(u))||(e=n.createElement("link"),Ht(e,"link",t),Rt(e),n.head.appendChild(e)))}}function Um(t,e){tl.m(t,e);var l=Dn;if(l&&t){var n=e&&typeof e.as=="string"?e.as:"script",a='link[rel="modulepreload"][as="'+re(n)+'"][href="'+re(t)+'"]',u=a;switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":u=xn(t)}if(!Se.has(u)&&(t=x({rel:"modulepreload",href:t},e),Se.set(u,t),l.querySelector(a)===null)){switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(l.querySelector(Aa(u)))return}n=l.createElement("link"),Ht(n,"link",t),Rt(n),l.head.appendChild(n)}}}function xm(t,e,l){tl.S(t,e,l);var n=Dn;if(n&&t){var a=Il(n).hoistableStyles,u=Un(t);e=e||"default";var c=a.get(u);if(!c){var r={loading:0,preload:null};if(c=n.querySelector(Ta(u)))r.loading=5;else{t=x({rel:"stylesheet",href:t,"data-precedence":e},l),(l=Se.get(u))&&mf(t,l);var h=c=n.createElement("link");Rt(h),Ht(h,"link",t),h._p=new Promise(function(p,_){h.onload=p,h.onerror=_}),h.addEventListener("load",function(){r.loading|=1}),h.addEventListener("error",function(){r.loading|=2}),r.loading|=4,Lu(c,e,n)}c={type:"stylesheet",instance:c,count:1,state:r},a.set(u,c)}}}function Cm(t,e){tl.X(t,e);var l=Dn;if(l&&t){var n=Il(l).hoistableScripts,a=xn(t),u=n.get(a);u||(u=l.querySelector(Aa(a)),u||(t=x({src:t,async:!0},e),(e=Se.get(a))&&vf(t,e),u=l.createElement("script"),Rt(u),Ht(u,"link",t),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(a,u))}}function Bm(t,e){tl.M(t,e);var l=Dn;if(l&&t){var n=Il(l).hoistableScripts,a=xn(t),u=n.get(a);u||(u=l.querySelector(Aa(a)),u||(t=x({src:t,async:!0,type:"module"},e),(e=Se.get(a))&&vf(t,e),u=l.createElement("script"),Rt(u),Ht(u,"link",t),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(a,u))}}function Dh(t,e,l,n){var a=(a=J.current)?ju(a):null;if(!a)throw Error(s(446));switch(t){case"meta":case"title":return null;case"style":return typeof l.precedence=="string"&&typeof l.href=="string"?(e=Un(l.href),l=Il(a).hoistableStyles,n=l.get(e),n||(n={type:"style",instance:null,count:0,state:null},l.set(e,n)),n):{type:"void",instance:null,count:0,state:null};case"link":if(l.rel==="stylesheet"&&typeof l.href=="string"&&typeof l.precedence=="string"){t=Un(l.href);var u=Il(a).hoistableStyles,c=u.get(t);if(c||(a=a.ownerDocument||a,c={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},u.set(t,c),(u=a.querySelector(Ta(t)))&&!u._p&&(c.instance=u,c.state.loading=5),Se.has(t)||(l={rel:"preload",as:"style",href:l.href,crossOrigin:l.crossOrigin,integrity:l.integrity,media:l.media,hrefLang:l.hrefLang,referrerPolicy:l.referrerPolicy},Se.set(t,l),u||qm(a,t,l,c.state))),e&&n===null)throw Error(s(528,""));return c}if(e&&n!==null)throw Error(s(529,""));return null;case"script":return e=l.async,l=l.src,typeof l=="string"&&e&&typeof e!="function"&&typeof e!="symbol"?(e=xn(l),l=Il(a).hoistableScripts,n=l.get(e),n||(n={type:"script",instance:null,count:0,state:null},l.set(e,n)),n):{type:"void",instance:null,count:0,state:null};default:throw Error(s(444,t))}}function Un(t){return'href="'+re(t)+'"'}function Ta(t){return'link[rel="stylesheet"]['+t+"]"}function Uh(t){return x({},t,{"data-precedence":t.precedence,precedence:null})}function qm(t,e,l,n){t.querySelector('link[rel="preload"][as="style"]['+e+"]")?n.loading=1:(e=t.createElement("link"),n.preload=e,e.addEventListener("load",function(){return n.loading|=1}),e.addEventListener("error",function(){return n.loading|=2}),Ht(e,"link",l),Rt(e),t.head.appendChild(e))}function xn(t){return'[src="'+re(t)+'"]'}function Aa(t){return"script[async]"+t}function xh(t,e,l){if(e.count++,e.instance===null)switch(e.type){case"style":var n=t.querySelector('style[data-href~="'+re(l.href)+'"]');if(n)return e.instance=n,Rt(n),n;var a=x({},l,{"data-href":l.href,"data-precedence":l.precedence,href:null,precedence:null});return n=(t.ownerDocument||t).createElement("style"),Rt(n),Ht(n,"style",a),Lu(n,l.precedence,t),e.instance=n;case"stylesheet":a=Un(l.href);var u=t.querySelector(Ta(a));if(u)return e.state.loading|=4,e.instance=u,Rt(u),u;n=Uh(l),(a=Se.get(a))&&mf(n,a),u=(t.ownerDocument||t).createElement("link"),Rt(u);var c=u;return c._p=new Promise(function(r,h){c.onload=r,c.onerror=h}),Ht(u,"link",n),e.state.loading|=4,Lu(u,l.precedence,t),e.instance=u;case"script":return u=xn(l.src),(a=t.querySelector(Aa(u)))?(e.instance=a,Rt(a),a):(n=l,(a=Se.get(u))&&(n=x({},l),vf(n,a)),t=t.ownerDocument||t,a=t.createElement("script"),Rt(a),Ht(a,"link",n),t.head.appendChild(a),e.instance=a);case"void":return null;default:throw Error(s(443,e.type))}else e.type==="stylesheet"&&(e.state.loading&4)===0&&(n=e.instance,e.state.loading|=4,Lu(n,l.precedence,t));return e.instance}function Lu(t,e,l){for(var n=l.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=n.length?n[n.length-1]:null,u=a,c=0;c title"):null)}function Hm(t,e,l){if(l===1||e.itemProp!=null)return!1;switch(t){case"meta":case"title":return!0;case"style":if(typeof e.precedence!="string"||typeof e.href!="string"||e.href==="")break;return!0;case"link":if(typeof e.rel!="string"||typeof e.href!="string"||e.href===""||e.onLoad||e.onError)break;switch(e.rel){case"stylesheet":return t=e.disabled,typeof e.precedence=="string"&&t==null;default:return!0}case"script":if(e.async&&typeof e.async!="function"&&typeof e.async!="symbol"&&!e.onLoad&&!e.onError&&e.src&&typeof e.src=="string")return!0}return!1}function qh(t){return!(t.type==="stylesheet"&&(t.state.loading&3)===0)}function Ym(t,e,l,n){if(l.type==="stylesheet"&&(typeof n.media!="string"||matchMedia(n.media).matches!==!1)&&(l.state.loading&4)===0){if(l.instance===null){var a=Un(n.href),u=e.querySelector(Ta(a));if(u){e=u._p,e!==null&&typeof e=="object"&&typeof e.then=="function"&&(t.count++,t=Qu.bind(t),e.then(t,t)),l.state.loading|=4,l.instance=u,Rt(u);return}u=e.ownerDocument||e,n=Uh(n),(a=Se.get(a))&&mf(n,a),u=u.createElement("link"),Rt(u);var c=u;c._p=new Promise(function(r,h){c.onload=r,c.onerror=h}),Ht(u,"link",n),l.instance=u}t.stylesheets===null&&(t.stylesheets=new Map),t.stylesheets.set(l,e),(e=l.state.preload)&&(l.state.loading&3)===0&&(t.count++,l=Qu.bind(t),e.addEventListener("load",l),e.addEventListener("error",l))}}var gf=0;function jm(t,e){return t.stylesheets&&t.count===0&&Vu(t,t.stylesheets),0gf?50:800)+e);return t.unsuspend=l,function(){t.unsuspend=null,clearTimeout(n),clearTimeout(a)}}:null}function Qu(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Vu(this,this.stylesheets);else if(this.unsuspend){var t=this.unsuspend;this.unsuspend=null,t()}}}var Gu=null;function Vu(t,e){t.stylesheets=null,t.unsuspend!==null&&(t.count++,Gu=new Map,e.forEach(Lm,t),Gu=null,Qu.call(t))}function Lm(t,e){if(!(e.state.loading&4)){var l=Gu.get(t);if(l)var n=l.get(null);else{l=new Map,Gu.set(t,l);for(var a=t.querySelectorAll("link[data-precedence],style[data-precedence]"),u=0;u"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(o)}catch(i){console.error(i)}}return o(),Of.exports=e0(),Of.exports}var n0=l0();const Be=Object.create(null);Be.open="0";Be.close="1";Be.ping="2";Be.pong="3";Be.message="4";Be.upgrade="5";Be.noop="6";const Pu=Object.create(null);Object.keys(Be).forEach(o=>{Pu[Be[o]]=o});const Bf={type:"error",data:"parser error"},od=typeof Blob=="function"||typeof Blob<"u"&&Object.prototype.toString.call(Blob)==="[object BlobConstructor]",rd=typeof ArrayBuffer=="function",hd=o=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(o):o&&o.buffer instanceof ArrayBuffer,Qf=({type:o,data:i},f,s)=>od&&i instanceof Blob?f?s(i):ud(i,s):rd&&(i instanceof ArrayBuffer||hd(i))?f?s(i):ud(new Blob([i]),s):s(Be[o]+(i||"")),ud=(o,i)=>{const f=new FileReader;return f.onload=function(){const s=f.result.split(",")[1];i("b"+(s||""))},f.readAsDataURL(o)};function id(o){return o instanceof Uint8Array?o:o instanceof ArrayBuffer?new Uint8Array(o):new Uint8Array(o.buffer,o.byteOffset,o.byteLength)}let Df;function a0(o,i){if(od&&o.data instanceof Blob)return o.data.arrayBuffer().then(id).then(i);if(rd&&(o.data instanceof ArrayBuffer||hd(o.data)))return i(id(o.data));Qf(o,!1,f=>{Df||(Df=new TextEncoder),i(Df.encode(f))})}const cd="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",xa=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(let o=0;o{let i=o.length*.75,f=o.length,s,m=0,E,R,B,M;o[o.length-1]==="="&&(i--,o[o.length-2]==="="&&i--);const A=new ArrayBuffer(i),Q=new Uint8Array(A);for(s=0;s>4,Q[m++]=(R&15)<<4|B>>2,Q[m++]=(B&3)<<6|M&63;return A},i0=typeof ArrayBuffer=="function",Gf=(o,i)=>{if(typeof o!="string")return{type:"message",data:dd(o,i)};const f=o.charAt(0);return f==="b"?{type:"message",data:c0(o.substring(1),i)}:Pu[f]?o.length>1?{type:Pu[f],data:o.substring(1)}:{type:Pu[f]}:Bf},c0=(o,i)=>{if(i0){const f=u0(o);return dd(f,i)}else return{base64:!0,data:o}},dd=(o,i)=>{switch(i){case"blob":return o instanceof Blob?o:new Blob([o]);case"arraybuffer":default:return o instanceof ArrayBuffer?o:o.buffer}},yd="",f0=(o,i)=>{const f=o.length,s=new Array(f);let m=0;o.forEach((E,R)=>{Qf(E,!1,B=>{s[R]=B,++m===f&&i(s.join(yd))})})},s0=(o,i)=>{const f=o.split(yd),s=[];for(let m=0;m{const s=f.length;let m;if(s<126)m=new Uint8Array(1),new DataView(m.buffer).setUint8(0,s);else if(s<65536){m=new Uint8Array(3);const E=new DataView(m.buffer);E.setUint8(0,126),E.setUint16(1,s)}else{m=new Uint8Array(9);const E=new DataView(m.buffer);E.setUint8(0,127),E.setBigUint64(1,BigInt(s))}o.data&&typeof o.data!="string"&&(m[0]|=128),i.enqueue(m),i.enqueue(f)})}})}let Uf;function Fu(o){return o.reduce((i,f)=>i+f.length,0)}function Iu(o,i){if(o[0].length===i)return o.shift();const f=new Uint8Array(i);let s=0;for(let m=0;mMath.pow(2,21)-1){B.enqueue(Bf);break}m=Q*Math.pow(2,32)+A.getUint32(4),s=3}else{if(Fu(f)o){B.enqueue(Bf);break}}}})}const md=4;function Ot(o){if(o)return h0(o)}function h0(o){for(var i in Ot.prototype)o[i]=Ot.prototype[i];return o}Ot.prototype.on=Ot.prototype.addEventListener=function(o,i){return this._callbacks=this._callbacks||{},(this._callbacks["$"+o]=this._callbacks["$"+o]||[]).push(i),this};Ot.prototype.once=function(o,i){function f(){this.off(o,f),i.apply(this,arguments)}return f.fn=i,this.on(o,f),this};Ot.prototype.off=Ot.prototype.removeListener=Ot.prototype.removeAllListeners=Ot.prototype.removeEventListener=function(o,i){if(this._callbacks=this._callbacks||{},arguments.length==0)return this._callbacks={},this;var f=this._callbacks["$"+o];if(!f)return this;if(arguments.length==1)return delete this._callbacks["$"+o],this;for(var s,m=0;mPromise.resolve().then(i):(i,f)=>f(i,0),be=typeof self<"u"?self:typeof window<"u"?window:Function("return this")(),d0="arraybuffer";function vd(o,...i){return i.reduce((f,s)=>(o.hasOwnProperty(s)&&(f[s]=o[s]),f),{})}const y0=be.setTimeout,m0=be.clearTimeout;function ai(o,i){i.useNativeTimers?(o.setTimeoutFn=y0.bind(be),o.clearTimeoutFn=m0.bind(be)):(o.setTimeoutFn=be.setTimeout.bind(be),o.clearTimeoutFn=be.clearTimeout.bind(be))}const v0=1.33;function g0(o){return typeof o=="string"?p0(o):Math.ceil((o.byteLength||o.size)*v0)}function p0(o){let i=0,f=0;for(let s=0,m=o.length;s=57344?f+=3:(s++,f+=4);return f}function gd(){return Date.now().toString(36).substring(3)+Math.random().toString(36).substring(2,5)}function S0(o){let i="";for(let f in o)o.hasOwnProperty(f)&&(i.length&&(i+="&"),i+=encodeURIComponent(f)+"="+encodeURIComponent(o[f]));return i}function b0(o){let i={},f=o.split("&");for(let s=0,m=f.length;s{this.readyState="paused",i()};if(this._polling||!this.writable){let s=0;this._polling&&(s++,this.once("pollComplete",function(){--s||f()})),this.writable||(s++,this.once("drain",function(){--s||f()}))}else f()}_poll(){this._polling=!0,this.doPoll(),this.emitReserved("poll")}onData(i){const f=s=>{if(this.readyState==="opening"&&s.type==="open"&&this.onOpen(),s.type==="close")return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(s)};s0(i,this.socket.binaryType).forEach(f),this.readyState!=="closed"&&(this._polling=!1,this.emitReserved("pollComplete"),this.readyState==="open"&&this._poll())}doClose(){const i=()=>{this.write([{type:"close"}])};this.readyState==="open"?i():this.once("open",i)}write(i){this.writable=!1,f0(i,f=>{this.doWrite(f,()=>{this.writable=!0,this.emitReserved("drain")})})}uri(){const i=this.opts.secure?"https":"http",f=this.query||{};return this.opts.timestampRequests!==!1&&(f[this.opts.timestampParam]=gd()),!this.supportsBinary&&!f.sid&&(f.b64=1),this.createUri(i,f)}}let pd=!1;try{pd=typeof XMLHttpRequest<"u"&&"withCredentials"in new XMLHttpRequest}catch{}const T0=pd;function A0(){}class z0 extends E0{constructor(i){if(super(i),typeof location<"u"){const f=location.protocol==="https:";let s=location.port;s||(s=f?"443":"80"),this.xd=typeof location<"u"&&i.hostname!==location.hostname||s!==i.port}}doWrite(i,f){const s=this.request({method:"POST",data:i});s.on("success",f),s.on("error",(m,E)=>{this.onError("xhr post error",m,E)})}doPoll(){const i=this.request();i.on("data",this.onData.bind(this)),i.on("error",(f,s)=>{this.onError("xhr poll error",f,s)}),this.pollXhr=i}}class Ce extends Ot{constructor(i,f,s){super(),this.createRequest=i,ai(this,s),this._opts=s,this._method=s.method||"GET",this._uri=f,this._data=s.data!==void 0?s.data:null,this._create()}_create(){var i;const f=vd(this._opts,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");f.xdomain=!!this._opts.xd;const s=this._xhr=this.createRequest(f);try{s.open(this._method,this._uri,!0);try{if(this._opts.extraHeaders){s.setDisableHeaderCheck&&s.setDisableHeaderCheck(!0);for(let m in this._opts.extraHeaders)this._opts.extraHeaders.hasOwnProperty(m)&&s.setRequestHeader(m,this._opts.extraHeaders[m])}}catch{}if(this._method==="POST")try{s.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch{}try{s.setRequestHeader("Accept","*/*")}catch{}(i=this._opts.cookieJar)===null||i===void 0||i.addCookies(s),"withCredentials"in s&&(s.withCredentials=this._opts.withCredentials),this._opts.requestTimeout&&(s.timeout=this._opts.requestTimeout),s.onreadystatechange=()=>{var m;s.readyState===3&&((m=this._opts.cookieJar)===null||m===void 0||m.parseCookies(s.getResponseHeader("set-cookie"))),s.readyState===4&&(s.status===200||s.status===1223?this._onLoad():this.setTimeoutFn(()=>{this._onError(typeof s.status=="number"?s.status:0)},0))},s.send(this._data)}catch(m){this.setTimeoutFn(()=>{this._onError(m)},0);return}typeof document<"u"&&(this._index=Ce.requestsCount++,Ce.requests[this._index]=this)}_onError(i){this.emitReserved("error",i,this._xhr),this._cleanup(!0)}_cleanup(i){if(!(typeof this._xhr>"u"||this._xhr===null)){if(this._xhr.onreadystatechange=A0,i)try{this._xhr.abort()}catch{}typeof document<"u"&&delete Ce.requests[this._index],this._xhr=null}}_onLoad(){const i=this._xhr.responseText;i!==null&&(this.emitReserved("data",i),this.emitReserved("success"),this._cleanup())}abort(){this._cleanup()}}Ce.requestsCount=0;Ce.requests={};if(typeof document<"u"){if(typeof attachEvent=="function")attachEvent("onunload",fd);else if(typeof addEventListener=="function"){const o="onpagehide"in be?"pagehide":"unload";addEventListener(o,fd,!1)}}function fd(){for(let o in Ce.requests)Ce.requests.hasOwnProperty(o)&&Ce.requests[o].abort()}const O0=(function(){const o=Sd({xdomain:!1});return o&&o.responseType!==null})();class N0 extends z0{constructor(i){super(i);const f=i&&i.forceBase64;this.supportsBinary=O0&&!f}request(i={}){return Object.assign(i,{xd:this.xd},this.opts),new Ce(Sd,this.uri(),i)}}function Sd(o){const i=o.xdomain;try{if(typeof XMLHttpRequest<"u"&&(!i||T0))return new XMLHttpRequest}catch{}if(!i)try{return new be[["Active"].concat("Object").join("X")]("Microsoft.XMLHTTP")}catch{}}const bd=typeof navigator<"u"&&typeof navigator.product=="string"&&navigator.product.toLowerCase()==="reactnative";class M0 extends Vf{get name(){return"websocket"}doOpen(){const i=this.uri(),f=this.opts.protocols,s=bd?{}:vd(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(s.headers=this.opts.extraHeaders);try{this.ws=this.createSocket(i,f,s)}catch(m){return this.emitReserved("error",m)}this.ws.binaryType=this.socket.binaryType,this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=i=>this.onClose({description:"websocket connection closed",context:i}),this.ws.onmessage=i=>this.onData(i.data),this.ws.onerror=i=>this.onError("websocket error",i)}write(i){this.writable=!1;for(let f=0;f{try{this.doWrite(s,E)}catch{}m&&ni(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){typeof this.ws<"u"&&(this.ws.onerror=()=>{},this.ws.close(),this.ws=null)}uri(){const i=this.opts.secure?"wss":"ws",f=this.query||{};return this.opts.timestampRequests&&(f[this.opts.timestampParam]=gd()),this.supportsBinary||(f.b64=1),this.createUri(i,f)}}const xf=be.WebSocket||be.MozWebSocket;class R0 extends M0{createSocket(i,f,s){return bd?new xf(i,f,s):f?new xf(i,f):new xf(i)}doWrite(i,f){this.ws.send(f)}}class D0 extends Vf{get name(){return"webtransport"}doOpen(){try{this._transport=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name])}catch(i){return this.emitReserved("error",i)}this._transport.closed.then(()=>{this.onClose()}).catch(i=>{this.onError("webtransport error",i)}),this._transport.ready.then(()=>{this._transport.createBidirectionalStream().then(i=>{const f=r0(Number.MAX_SAFE_INTEGER,this.socket.binaryType),s=i.readable.pipeThrough(f).getReader(),m=o0();m.readable.pipeTo(i.writable),this._writer=m.writable.getWriter();const E=()=>{s.read().then(({done:B,value:M})=>{B||(this.onPacket(M),E())}).catch(B=>{})};E();const R={type:"open"};this.query.sid&&(R.data=`{"sid":"${this.query.sid}"}`),this._writer.write(R).then(()=>this.onOpen())})})}write(i){this.writable=!1;for(let f=0;f{m&&ni(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){var i;(i=this._transport)===null||i===void 0||i.close()}}const U0={websocket:R0,webtransport:D0,polling:N0},x0=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,C0=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function qf(o){if(o.length>8e3)throw"URI too long";const i=o,f=o.indexOf("["),s=o.indexOf("]");f!=-1&&s!=-1&&(o=o.substring(0,f)+o.substring(f,s).replace(/:/g,";")+o.substring(s,o.length));let m=x0.exec(o||""),E={},R=14;for(;R--;)E[C0[R]]=m[R]||"";return f!=-1&&s!=-1&&(E.source=i,E.host=E.host.substring(1,E.host.length-1).replace(/;/g,":"),E.authority=E.authority.replace("[","").replace("]","").replace(/;/g,":"),E.ipv6uri=!0),E.pathNames=B0(E,E.path),E.queryKey=q0(E,E.query),E}function B0(o,i){const f=/\/{2,9}/g,s=i.replace(f,"/").split("/");return(i.slice(0,1)=="/"||i.length===0)&&s.splice(0,1),i.slice(-1)=="/"&&s.splice(s.length-1,1),s}function q0(o,i){const f={};return i.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,function(s,m,E){m&&(f[m]=E)}),f}const Hf=typeof addEventListener=="function"&&typeof removeEventListener=="function",ti=[];Hf&&addEventListener("offline",()=>{ti.forEach(o=>o())},!1);class Nl extends Ot{constructor(i,f){if(super(),this.binaryType=d0,this.writeBuffer=[],this._prevBufferLen=0,this._pingInterval=-1,this._pingTimeout=-1,this._maxPayload=-1,this._pingTimeoutTime=1/0,i&&typeof i=="object"&&(f=i,i=null),i){const s=qf(i);f.hostname=s.host,f.secure=s.protocol==="https"||s.protocol==="wss",f.port=s.port,s.query&&(f.query=s.query)}else f.host&&(f.hostname=qf(f.host).host);ai(this,f),this.secure=f.secure!=null?f.secure:typeof location<"u"&&location.protocol==="https:",f.hostname&&!f.port&&(f.port=this.secure?"443":"80"),this.hostname=f.hostname||(typeof location<"u"?location.hostname:"localhost"),this.port=f.port||(typeof location<"u"&&location.port?location.port:this.secure?"443":"80"),this.transports=[],this._transportsByName={},f.transports.forEach(s=>{const m=s.prototype.name;this.transports.push(m),this._transportsByName[m]=s}),this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},f),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),typeof this.opts.query=="string"&&(this.opts.query=b0(this.opts.query)),Hf&&(this.opts.closeOnBeforeunload&&(this._beforeunloadEventListener=()=>{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this._beforeunloadEventListener,!1)),this.hostname!=="localhost"&&(this._offlineEventListener=()=>{this._onClose("transport close",{description:"network connection lost"})},ti.push(this._offlineEventListener))),this.opts.withCredentials&&(this._cookieJar=void 0),this._open()}createTransport(i){const f=Object.assign({},this.opts.query);f.EIO=md,f.transport=i,this.id&&(f.sid=this.id);const s=Object.assign({},this.opts,{query:f,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[i]);return new this._transportsByName[i](s)}_open(){if(this.transports.length===0){this.setTimeoutFn(()=>{this.emitReserved("error","No transports available")},0);return}const i=this.opts.rememberUpgrade&&Nl.priorWebsocketSuccess&&this.transports.indexOf("websocket")!==-1?"websocket":this.transports[0];this.readyState="opening";const f=this.createTransport(i);f.open(),this.setTransport(f)}setTransport(i){this.transport&&this.transport.removeAllListeners(),this.transport=i,i.on("drain",this._onDrain.bind(this)).on("packet",this._onPacket.bind(this)).on("error",this._onError.bind(this)).on("close",f=>this._onClose("transport close",f))}onOpen(){this.readyState="open",Nl.priorWebsocketSuccess=this.transport.name==="websocket",this.emitReserved("open"),this.flush()}_onPacket(i){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing")switch(this.emitReserved("packet",i),this.emitReserved("heartbeat"),i.type){case"open":this.onHandshake(JSON.parse(i.data));break;case"ping":this._sendPacket("pong"),this.emitReserved("ping"),this.emitReserved("pong"),this._resetPingTimeout();break;case"error":const f=new Error("server error");f.code=i.data,this._onError(f);break;case"message":this.emitReserved("data",i.data),this.emitReserved("message",i.data);break}}onHandshake(i){this.emitReserved("handshake",i),this.id=i.sid,this.transport.query.sid=i.sid,this._pingInterval=i.pingInterval,this._pingTimeout=i.pingTimeout,this._maxPayload=i.maxPayload,this.onOpen(),this.readyState!=="closed"&&this._resetPingTimeout()}_resetPingTimeout(){this.clearTimeoutFn(this._pingTimeoutTimer);const i=this._pingInterval+this._pingTimeout;this._pingTimeoutTime=Date.now()+i,this._pingTimeoutTimer=this.setTimeoutFn(()=>{this._onClose("ping timeout")},i),this.opts.autoUnref&&this._pingTimeoutTimer.unref()}_onDrain(){this.writeBuffer.splice(0,this._prevBufferLen),this._prevBufferLen=0,this.writeBuffer.length===0?this.emitReserved("drain"):this.flush()}flush(){if(this.readyState!=="closed"&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){const i=this._getWritablePackets();this.transport.send(i),this._prevBufferLen=i.length,this.emitReserved("flush")}}_getWritablePackets(){if(!(this._maxPayload&&this.transport.name==="polling"&&this.writeBuffer.length>1))return this.writeBuffer;let f=1;for(let s=0;s0&&f>this._maxPayload)return this.writeBuffer.slice(0,s);f+=2}return this.writeBuffer}_hasPingExpired(){if(!this._pingTimeoutTime)return!0;const i=Date.now()>this._pingTimeoutTime;return i&&(this._pingTimeoutTime=0,ni(()=>{this._onClose("ping timeout")},this.setTimeoutFn)),i}write(i,f,s){return this._sendPacket("message",i,f,s),this}send(i,f,s){return this._sendPacket("message",i,f,s),this}_sendPacket(i,f,s,m){if(typeof f=="function"&&(m=f,f=void 0),typeof s=="function"&&(m=s,s=null),this.readyState==="closing"||this.readyState==="closed")return;s=s||{},s.compress=s.compress!==!1;const E={type:i,data:f,options:s};this.emitReserved("packetCreate",E),this.writeBuffer.push(E),m&&this.once("flush",m),this.flush()}close(){const i=()=>{this._onClose("forced close"),this.transport.close()},f=()=>{this.off("upgrade",f),this.off("upgradeError",f),i()},s=()=>{this.once("upgrade",f),this.once("upgradeError",f)};return(this.readyState==="opening"||this.readyState==="open")&&(this.readyState="closing",this.writeBuffer.length?this.once("drain",()=>{this.upgrading?s():i()}):this.upgrading?s():i()),this}_onError(i){if(Nl.priorWebsocketSuccess=!1,this.opts.tryAllTransports&&this.transports.length>1&&this.readyState==="opening")return this.transports.shift(),this._open();this.emitReserved("error",i),this._onClose("transport error",i)}_onClose(i,f){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing"){if(this.clearTimeoutFn(this._pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),Hf&&(this._beforeunloadEventListener&&removeEventListener("beforeunload",this._beforeunloadEventListener,!1),this._offlineEventListener)){const s=ti.indexOf(this._offlineEventListener);s!==-1&&ti.splice(s,1)}this.readyState="closed",this.id=null,this.emitReserved("close",i,f),this.writeBuffer=[],this._prevBufferLen=0}}}Nl.protocol=md;class H0 extends Nl{constructor(){super(...arguments),this._upgrades=[]}onOpen(){if(super.onOpen(),this.readyState==="open"&&this.opts.upgrade)for(let i=0;i{s||(f.send([{type:"ping",data:"probe"}]),f.once("packet",x=>{if(!s)if(x.type==="pong"&&x.data==="probe"){if(this.upgrading=!0,this.emitReserved("upgrading",f),!f)return;Nl.priorWebsocketSuccess=f.name==="websocket",this.transport.pause(()=>{s||this.readyState!=="closed"&&(Q(),this.setTransport(f),f.send([{type:"upgrade"}]),this.emitReserved("upgrade",f),f=null,this.upgrading=!1,this.flush())})}else{const K=new Error("probe error");K.transport=f.name,this.emitReserved("upgradeError",K)}}))};function E(){s||(s=!0,Q(),f.close(),f=null)}const R=x=>{const K=new Error("probe error: "+x);K.transport=f.name,E(),this.emitReserved("upgradeError",K)};function B(){R("transport closed")}function M(){R("socket closed")}function A(x){f&&x.name!==f.name&&E()}const Q=()=>{f.removeListener("open",m),f.removeListener("error",R),f.removeListener("close",B),this.off("close",M),this.off("upgrading",A)};f.once("open",m),f.once("error",R),f.once("close",B),this.once("close",M),this.once("upgrading",A),this._upgrades.indexOf("webtransport")!==-1&&i!=="webtransport"?this.setTimeoutFn(()=>{s||f.open()},200):f.open()}onHandshake(i){this._upgrades=this._filterUpgrades(i.upgrades),super.onHandshake(i)}_filterUpgrades(i){const f=[];for(let s=0;sU0[m]).filter(m=>!!m)),super(i,s)}};function j0(o,i="",f){let s=o;f=f||typeof location<"u"&&location,o==null&&(o=f.protocol+"//"+f.host),typeof o=="string"&&(o.charAt(0)==="/"&&(o.charAt(1)==="/"?o=f.protocol+o:o=f.host+o),/^(https?|wss?):\/\//.test(o)||(typeof f<"u"?o=f.protocol+"//"+o:o="https://"+o),s=qf(o)),s.port||(/^(http|ws)$/.test(s.protocol)?s.port="80":/^(http|ws)s$/.test(s.protocol)&&(s.port="443")),s.path=s.path||"/";const E=s.host.indexOf(":")!==-1?"["+s.host+"]":s.host;return s.id=s.protocol+"://"+E+":"+s.port+i,s.href=s.protocol+"://"+E+(f&&f.port===s.port?"":":"+s.port),s}const L0=typeof ArrayBuffer=="function",X0=o=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(o):o.buffer instanceof ArrayBuffer,_d=Object.prototype.toString,Q0=typeof Blob=="function"||typeof Blob<"u"&&_d.call(Blob)==="[object BlobConstructor]",G0=typeof File=="function"||typeof File<"u"&&_d.call(File)==="[object FileConstructor]";function Zf(o){return L0&&(o instanceof ArrayBuffer||X0(o))||Q0&&o instanceof Blob||G0&&o instanceof File}function ei(o,i){if(!o||typeof o!="object")return!1;if(Array.isArray(o)){for(let f=0,s=o.length;f=0&&o.num{delete this.acks[i];for(let B=0;B{this.io.clearTimeoutFn(E),f.apply(this,B)};R.withError=!0,this.acks[i]=R}emitWithAck(i,...f){return new Promise((s,m)=>{const E=(R,B)=>R?m(R):s(B);E.withError=!0,f.push(E),this.emit(i,...f)})}_addToQueue(i){let f;typeof i[i.length-1]=="function"&&(f=i.pop());const s={id:this._queueSeq++,tryCount:0,pending:!1,args:i,flags:Object.assign({fromQueue:!0},this.flags)};i.push((m,...E)=>s!==this._queue[0]?void 0:(m!==null?s.tryCount>this._opts.retries&&(this._queue.shift(),f&&f(m)):(this._queue.shift(),f&&f(null,...E)),s.pending=!1,this._drainQueue())),this._queue.push(s),this._drainQueue()}_drainQueue(i=!1){if(!this.connected||this._queue.length===0)return;const f=this._queue[0];f.pending&&!i||(f.pending=!0,f.tryCount++,this.flags=f.flags,this.emit.apply(this,f.args))}packet(i){i.nsp=this.nsp,this.io._packet(i)}onopen(){typeof this.auth=="function"?this.auth(i=>{this._sendConnectPacket(i)}):this._sendConnectPacket(this.auth)}_sendConnectPacket(i){this.packet({type:tt.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},i):i})}onerror(i){this.connected||this.emitReserved("connect_error",i)}onclose(i,f){this.connected=!1,delete this.id,this.emitReserved("disconnect",i,f),this._clearAcks()}_clearAcks(){Object.keys(this.acks).forEach(i=>{if(!this.sendBuffer.some(s=>String(s.id)===i)){const s=this.acks[i];delete this.acks[i],s.withError&&s.call(this,new Error("socket has been disconnected"))}})}onpacket(i){if(i.nsp===this.nsp)switch(i.type){case tt.CONNECT:i.data&&i.data.sid?this.onconnect(i.data.sid,i.data.pid):this.emitReserved("connect_error",new Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case tt.EVENT:case tt.BINARY_EVENT:this.onevent(i);break;case tt.ACK:case tt.BINARY_ACK:this.onack(i);break;case tt.DISCONNECT:this.ondisconnect();break;case tt.CONNECT_ERROR:this.destroy();const s=new Error(i.data.message);s.data=i.data.data,this.emitReserved("connect_error",s);break}}onevent(i){const f=i.data||[];i.id!=null&&f.push(this.ack(i.id)),this.connected?this.emitEvent(f):this.receiveBuffer.push(Object.freeze(f))}emitEvent(i){if(this._anyListeners&&this._anyListeners.length){const f=this._anyListeners.slice();for(const s of f)s.apply(this,i)}super.emit.apply(this,i),this._pid&&i.length&&typeof i[i.length-1]=="string"&&(this._lastOffset=i[i.length-1])}ack(i){const f=this;let s=!1;return function(...m){s||(s=!0,f.packet({type:tt.ACK,id:i,data:m}))}}onack(i){const f=this.acks[i.id];typeof f=="function"&&(delete this.acks[i.id],f.withError&&i.data.unshift(null),f.apply(this,i.data))}onconnect(i,f){this.id=i,this.recovered=f&&this._pid===f,this._pid=f,this.connected=!0,this.emitBuffered(),this.emitReserved("connect"),this._drainQueue(!0)}emitBuffered(){this.receiveBuffer.forEach(i=>this.emitEvent(i)),this.receiveBuffer=[],this.sendBuffer.forEach(i=>{this.notifyOutgoingListeners(i),this.packet(i)}),this.sendBuffer=[]}ondisconnect(){this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach(i=>i()),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&this.packet({type:tt.DISCONNECT}),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(i){return this.flags.compress=i,this}get volatile(){return this.flags.volatile=!0,this}timeout(i){return this.flags.timeout=i,this}onAny(i){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(i),this}prependAny(i){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(i),this}offAny(i){if(!this._anyListeners)return this;if(i){const f=this._anyListeners;for(let s=0;s0&&o.jitter<=1?o.jitter:0,this.attempts=0}Bn.prototype.duration=function(){var o=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var i=Math.random(),f=Math.floor(i*this.jitter*o);o=(Math.floor(i*10)&1)==0?o-f:o+f}return Math.min(o,this.max)|0};Bn.prototype.reset=function(){this.attempts=0};Bn.prototype.setMin=function(o){this.ms=o};Bn.prototype.setMax=function(o){this.max=o};Bn.prototype.setJitter=function(o){this.jitter=o};class Lf extends Ot{constructor(i,f){var s;super(),this.nsps={},this.subs=[],i&&typeof i=="object"&&(f=i,i=void 0),f=f||{},f.path=f.path||"/socket.io",this.opts=f,ai(this,f),this.reconnection(f.reconnection!==!1),this.reconnectionAttempts(f.reconnectionAttempts||1/0),this.reconnectionDelay(f.reconnectionDelay||1e3),this.reconnectionDelayMax(f.reconnectionDelayMax||5e3),this.randomizationFactor((s=f.randomizationFactor)!==null&&s!==void 0?s:.5),this.backoff=new Bn({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(f.timeout==null?2e4:f.timeout),this._readyState="closed",this.uri=i;const m=f.parser||W0;this.encoder=new m.Encoder,this.decoder=new m.Decoder,this._autoConnect=f.autoConnect!==!1,this._autoConnect&&this.open()}reconnection(i){return arguments.length?(this._reconnection=!!i,i||(this.skipReconnect=!0),this):this._reconnection}reconnectionAttempts(i){return i===void 0?this._reconnectionAttempts:(this._reconnectionAttempts=i,this)}reconnectionDelay(i){var f;return i===void 0?this._reconnectionDelay:(this._reconnectionDelay=i,(f=this.backoff)===null||f===void 0||f.setMin(i),this)}randomizationFactor(i){var f;return i===void 0?this._randomizationFactor:(this._randomizationFactor=i,(f=this.backoff)===null||f===void 0||f.setJitter(i),this)}reconnectionDelayMax(i){var f;return i===void 0?this._reconnectionDelayMax:(this._reconnectionDelayMax=i,(f=this.backoff)===null||f===void 0||f.setMax(i),this)}timeout(i){return arguments.length?(this._timeout=i,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&this.backoff.attempts===0&&this.reconnect()}open(i){if(~this._readyState.indexOf("open"))return this;this.engine=new Y0(this.uri,this.opts);const f=this.engine,s=this;this._readyState="opening",this.skipReconnect=!1;const m=ze(f,"open",function(){s.onopen(),i&&i()}),E=B=>{this.cleanup(),this._readyState="closed",this.emitReserved("error",B),i?i(B):this.maybeReconnectOnOpen()},R=ze(f,"error",E);if(this._timeout!==!1){const B=this._timeout,M=this.setTimeoutFn(()=>{m(),E(new Error("timeout")),f.close()},B);this.opts.autoUnref&&M.unref(),this.subs.push(()=>{this.clearTimeoutFn(M)})}return this.subs.push(m),this.subs.push(R),this}connect(i){return this.open(i)}onopen(){this.cleanup(),this._readyState="open",this.emitReserved("open");const i=this.engine;this.subs.push(ze(i,"ping",this.onping.bind(this)),ze(i,"data",this.ondata.bind(this)),ze(i,"error",this.onerror.bind(this)),ze(i,"close",this.onclose.bind(this)),ze(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(i){try{this.decoder.add(i)}catch(f){this.onclose("parse error",f)}}ondecoded(i){ni(()=>{this.emitReserved("packet",i)},this.setTimeoutFn)}onerror(i){this.emitReserved("error",i)}socket(i,f){let s=this.nsps[i];return s?this._autoConnect&&!s.active&&s.connect():(s=new Ed(this,i,f),this.nsps[i]=s),s}_destroy(i){const f=Object.keys(this.nsps);for(const s of f)if(this.nsps[s].active)return;this._close()}_packet(i){const f=this.encoder.encode(i);for(let s=0;si()),this.subs.length=0,this.decoder.destroy()}_close(){this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close")}disconnect(){return this._close()}onclose(i,f){var s;this.cleanup(),(s=this.engine)===null||s===void 0||s.close(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",i,f),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;const i=this;if(this.backoff.attempts>=this._reconnectionAttempts)this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{const f=this.backoff.duration();this._reconnecting=!0;const s=this.setTimeoutFn(()=>{i.skipReconnect||(this.emitReserved("reconnect_attempt",i.backoff.attempts),!i.skipReconnect&&i.open(m=>{m?(i._reconnecting=!1,i.reconnect(),this.emitReserved("reconnect_error",m)):i.onreconnect()}))},f);this.opts.autoUnref&&s.unref(),this.subs.push(()=>{this.clearTimeoutFn(s)})}}onreconnect(){const i=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",i)}}const Ua={};function li(o,i){typeof o=="object"&&(i=o,o=void 0),i=i||{};const f=j0(o,i.path||"/socket.io"),s=f.source,m=f.id,E=f.path,R=Ua[m]&&E in Ua[m].nsps,B=i.forceNew||i["force new connection"]||i.multiplex===!1||R;let M;return B?M=new Lf(s,i):(Ua[m]||(Ua[m]=new Lf(s,i)),M=Ua[m]),f.query&&!i.query&&(i.query=f.queryKey),M.socket(f.path,i)}Object.assign(li,{Manager:Lf,Socket:Ed,io:li,connect:li});const Cf="http://192.168.0.86:8080".trim(),F0=Cf&&Cf.length>0?Cf:void 0,Kf=li(F0,{transports:["websocket"],query:{role:"user"}});Kf.on("connect_error",o=>{console.error("Socket connection error:",o.message)});const Td=Mt.createContext(Kf),I0=({children:o})=>Y.jsx(Td.Provider,{value:Kf,children:o}),P0=()=>Mt.useContext(Td),Ad=Mt.createContext({connected:!1,session:null,logs:[],login:async()=>{},setRole:async()=>{},requestControl:async()=>{},releaseControl:async()=>{},subscribeAll:async()=>{}});function tv(o){return Mt.useCallback((i,f={})=>new Promise((s,m)=>{o.emit(i,f,(E={})=>{E.error?m(new Error(E.error)):s(E)})}),[o])}function ev({children:o}){const i=P0(),f=tv(i),[s,m]=Mt.useState(null),[E,R]=Mt.useState([]),[B,M]=Mt.useState(i.connected);Mt.useEffect(()=>{const x=()=>M(!0),K=()=>M(!1);return i.on("connect",x),i.on("disconnect",K),()=>{i.off("connect",x),i.off("disconnect",K)}},[i]),Mt.useEffect(()=>{function x(_t){m(_t)}function K(_t=[]){R(_t)}function Yt(_t){R(Ut=>[...Ut.slice(-199),_t])}return i.on("session:sync",x),i.on("log:init",K),i.on("log:entry",Yt),()=>{i.off("session:sync",x),i.off("log:init",K),i.off("log:entry",Yt)}},[i]);const A=Mt.useMemo(()=>({login:(x,K)=>f("auth:login",{username:x,password:K}),setRole:x=>f("session:setRole",{role:x}),requestControl:(x,K={})=>f("session:requestControl",{roverId:x,...K}),releaseControl:x=>f("session:releaseControl",{roverId:x}),subscribeAll:()=>f("session:subscribeAll")}),[f]),Q=Mt.useMemo(()=>({connected:B,session:s,logs:E,...A}),[A,B,E,s]);return Y.jsx(Ad.Provider,{value:Q,children:o})}function qn(){return Mt.useContext(Ad)}function lv({connected:o,role:i,mode:f}){const s=o?"bg-emerald-500/20 text-emerald-300":"bg-red-500/20 text-red-200";return Y.jsxs("div",{className:"flex flex-wrap items-center gap-3 text-sm",children:[Y.jsx("span",{className:`rounded-full px-3 py-1 font-medium ${s}`,children:o?"Connected":"Disconnected"}),Y.jsxs("span",{className:"rounded-full bg-slate-800/80 px-3 py-1 text-slate-200",children:["Role: ",i||"unknown"]}),Y.jsxs("span",{className:"rounded-full bg-slate-800/80 px-3 py-1 text-slate-200",children:["Mode: ",f||"--"]})]})}function nv(){const{logs:o}=qn();return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/70 p-4",children:[Y.jsxs("header",{className:"mb-3 flex items-center justify-between",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Server logs"}),Y.jsxs("span",{className:"text-xs uppercase tracking-[0.2em] text-slate-500",children:[o.length," entries"]})]}),Y.jsx("div",{className:"h-64 overflow-y-auto rounded-xl bg-slate-950/40 p-3 text-xs font-mono text-slate-300",children:o.length===0?Y.jsx("p",{children:"No logs yet."}):o.slice().reverse().map(i=>Y.jsxs("div",{className:"mb-2",children:[Y.jsx("span",{className:"text-slate-500",children:i.timestamp})," ",Y.jsxs("span",{className:"text-cyan-300",children:["[",i.level,"]"]})," ",i.label&&Y.jsxs("span",{className:"text-pink-300",children:["[",i.label,"]"]})," ",Y.jsx("span",{children:i.message})]},i.id))})]})}function av(){const{session:o,requestControl:i}=qn(),f=o?.roster??[],[s,m]=Mt.useState({});async function E(R){m(B=>({...B,[R]:!0}));try{await i(R)}catch(B){alert(B.message)}finally{m(B=>({...B,[R]:!1}))}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Rovers"}),Y.jsxs("div",{className:"mt-4 space-y-3",children:[f.length===0&&Y.jsx("p",{className:"text-slate-400",children:"No rovers registered."}),f.map(R=>Y.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-3 rounded-xl bg-slate-950/40 px-4 py-3",children:[Y.jsxs("div",{children:[Y.jsx("p",{className:"text-white",children:R.name}),Y.jsxs("p",{className:"text-xs text-slate-400",children:["Locked: ",R.locked?"yes":"no"]})]}),Y.jsx("button",{type:"button",onClick:()=>E(R.id),disabled:s[R.id],className:"rounded-full bg-blue-600 px-4 py-1 text-sm font-semibold text-white disabled:opacity-50",children:s[R.id]?"Requesting…":"Request control"})]},R.id))]})]})}function uv(){const{session:o,releaseControl:i}=qn(),f=o?.assignment,s=f?.roverId,[m,E]=Mt.useState(!1);async function R(){if(s){E(!0);try{await i(s)}catch(B){alert(B.message)}finally{E(!1)}}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Assignment"}),s?Y.jsxs("div",{className:"mt-4 space-y-3",children:[Y.jsxs("p",{className:"text-slate-300",children:["Currently driving rover ",s]}),Y.jsx("button",{type:"button",onClick:R,disabled:m,className:"rounded-full bg-red-600 px-4 py-1 text-sm font-semibold text-white disabled:opacity-50",children:m?"Releasing…":"Release control"})]}):Y.jsxs("div",{className:"mt-4 text-slate-400",children:[Y.jsxs("p",{children:["Status: ",f?.status??"not assigned"]}),f?.queuePosition&&Y.jsxs("p",{children:["Queue position: ",f.queuePosition]})]})]})}function iv(){const{session:o}=qn(),i=Mt.useMemo(()=>JSON.stringify(o??{},null,2),[o]);return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Session snapshot"}),Y.jsx("pre",{className:"mt-4 max-h-64 overflow-y-auto text-sm text-teal-200",children:i})]})}function cv(){const{login:o,setRole:i}=qn(),[f,s]=Mt.useState(""),[m,E]=Mt.useState(""),[R,B]=Mt.useState(!1);async function M(A){A.preventDefault(),B(!0);try{await o(f,m),s(""),E("")}catch(Q){alert(Q.message)}finally{B(!1)}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Authentication"}),Y.jsxs("form",{className:"mt-4 flex flex-col gap-3",onSubmit:M,children:[Y.jsx("input",{className:"rounded-lg border border-slate-800 bg-slate-950/60 px-3 py-2 text-white",placeholder:"Username",value:f,onChange:A=>s(A.target.value)}),Y.jsx("input",{className:"rounded-lg border border-slate-800 bg-slate-950/60 px-3 py-2 text-white",placeholder:"Password",type:"password",value:m,onChange:A=>E(A.target.value)}),Y.jsx("button",{type:"submit",disabled:R,className:"rounded-lg bg-emerald-600 py-2 font-semibold text-white disabled:opacity-50",children:R?"Logging in…":"Login as admin"})]}),Y.jsxs("div",{className:"mt-4 flex gap-3",children:[Y.jsx("button",{type:"button",onClick:()=>i("user"),className:"rounded-lg border border-slate-700 px-3 py-1 text-sm text-slate-200",children:"Driver mode"}),Y.jsx("button",{type:"button",onClick:()=>i("spectator"),className:"rounded-lg border border-slate-700 px-3 py-1 text-sm text-slate-200",children:"Spectator mode"})]})]})}function fv(){const{connected:o,session:i}=qn();return Y.jsx("div",{className:"min-h-screen bg-slate-950 text-slate-50",children:Y.jsxs("main",{className:"mx-auto flex max-w-6xl flex-col gap-6 px-6 py-10",children:[Y.jsxs("header",{className:"space-y-4",children:[Y.jsx("h1",{className:"text-4xl font-semibold text-white",children:"Multi Roomba Rover Console"}),Y.jsx(lv,{connected:o,role:i?.role,mode:i?.mode})]}),Y.jsxs("section",{className:"grid gap-6 lg:grid-cols-2",children:[Y.jsx(av,{}),Y.jsx(uv,{}),Y.jsx(cv,{}),Y.jsx(iv,{})]}),Y.jsx(nv,{})]})})}n0.createRoot(document.getElementById("root")).render(Y.jsx(Mt.StrictMode,{children:Y.jsx(I0,{children:Y.jsx(ev,{children:Y.jsx(fv,{})})})})); diff --git a/server/public/index.html b/server/public/index.html index 3a642766..16e0ccfd 100644 --- a/server/public/index.html +++ b/server/public/index.html @@ -5,7 +5,7 @@ webui - + diff --git a/webui/src/lib/socket.js b/webui/src/lib/socket.js index aa7aa7ea..28177dec 100644 --- a/webui/src/lib/socket.js +++ b/webui/src/lib/socket.js @@ -1,12 +1,13 @@ -import { io } from "socket.io-client"; +import { io } from 'socket.io-client'; -console.log('socket.io client loaded') +const configuredUrl = import.meta.env.VITE_ROVERD_URL?.trim(); +const serverUrl = configuredUrl && configuredUrl.length > 0 ? configuredUrl : undefined; -const serverUrl = import.meta.env.VITE_ROVERD_URL ?? "http://localhost:8080"; -export const socket = io({ -// export const socket = io(serverUrl, { - transports: ["websocket"], // skip polling if your backend supports it - query: { - role: "user" - } +export const socket = io(serverUrl, { + transports: ['websocket'], + query: { role: 'user' }, +}); + +socket.on('connect_error', (error) => { + console.error('Socket connection error:', error.message); }); From 49253a620764237eb7b52b6264156a30b8331f8b Mon Sep 17 00:00:00 2001 From: legop3 Date: Sat, 15 Nov 2025 04:23:01 -0500 Subject: [PATCH 04/61] guh --- .../assets/{index-CtTKxUTT.js => index-DA6EAiU9.js} | 10 +++++----- server/public/index.html | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) rename server/public/assets/{index-CtTKxUTT.js => index-DA6EAiU9.js} (75%) diff --git a/server/public/assets/index-CtTKxUTT.js b/server/public/assets/index-DA6EAiU9.js similarity index 75% rename from server/public/assets/index-CtTKxUTT.js rename to server/public/assets/index-DA6EAiU9.js index c71d0e42..d7a72f8d 100644 --- a/server/public/assets/index-CtTKxUTT.js +++ b/server/public/assets/index-DA6EAiU9.js @@ -1,9 +1,9 @@ -(function(){const i=document.createElement("link").relList;if(i&&i.supports&&i.supports("modulepreload"))return;for(const m of document.querySelectorAll('link[rel="modulepreload"]'))s(m);new MutationObserver(m=>{for(const E of m)if(E.type==="childList")for(const R of E.addedNodes)R.tagName==="LINK"&&R.rel==="modulepreload"&&s(R)}).observe(document,{childList:!0,subtree:!0});function f(m){const E={};return m.integrity&&(E.integrity=m.integrity),m.referrerPolicy&&(E.referrerPolicy=m.referrerPolicy),m.crossOrigin==="use-credentials"?E.credentials="include":m.crossOrigin==="anonymous"?E.credentials="omit":E.credentials="same-origin",E}function s(m){if(m.ep)return;m.ep=!0;const E=f(m);fetch(m.href,E)}})();var Af={exports:{}},Ra={};var Wh;function km(){if(Wh)return Ra;Wh=1;var o=Symbol.for("react.transitional.element"),i=Symbol.for("react.fragment");function f(s,m,E){var R=null;if(E!==void 0&&(R=""+E),m.key!==void 0&&(R=""+m.key),"key"in m){E={};for(var B in m)B!=="key"&&(E[B]=m[B])}else E=m;return m=E.ref,{$$typeof:o,type:s,key:R,ref:m!==void 0?m:null,props:E}}return Ra.Fragment=i,Ra.jsx=f,Ra.jsxs=f,Ra}var $h;function Wm(){return $h||($h=1,Af.exports=km()),Af.exports}var Y=Wm(),zf={exports:{}},G={};var Fh;function $m(){if(Fh)return G;Fh=1;var o=Symbol.for("react.transitional.element"),i=Symbol.for("react.portal"),f=Symbol.for("react.fragment"),s=Symbol.for("react.strict_mode"),m=Symbol.for("react.profiler"),E=Symbol.for("react.consumer"),R=Symbol.for("react.context"),B=Symbol.for("react.forward_ref"),M=Symbol.for("react.suspense"),A=Symbol.for("react.memo"),Q=Symbol.for("react.lazy"),x=Symbol.for("react.activity"),K=Symbol.iterator;function Yt(y){return y===null||typeof y!="object"?null:(y=K&&y[K]||y["@@iterator"],typeof y=="function"?y:null)}var _t={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},Ut=Object.assign,qe={};function It(y,N,U){this.props=y,this.context=N,this.refs=qe,this.updater=U||_t}It.prototype.isReactComponent={},It.prototype.setState=function(y,N){if(typeof y!="object"&&typeof y!="function"&&y!=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,y,N,"setState")},It.prototype.forceUpdate=function(y){this.updater.enqueueForceUpdate(this,y,"forceUpdate")};function el(){}el.prototype=It.prototype;function jt(y,N,U){this.props=y,this.context=N,this.refs=qe,this.updater=U||_t}var se=jt.prototype=new el;se.constructor=jt,Ut(se,It.prototype),se.isPureReactComponent=!0;var Oe=Array.isArray;function Gt(){}var I={H:null,A:null,T:null,S:null},Vt=Object.prototype.hasOwnProperty;function Ne(y,N,U){var q=U.ref;return{$$typeof:o,type:y,key:N,ref:q!==void 0?q:null,props:U}}function kl(y,N){return Ne(y.type,N,y.props)}function Me(y){return typeof y=="object"&&y!==null&&y.$$typeof===o}function Zt(y){var N={"=":"=0",":":"=2"};return"$"+y.replace(/[=:]/g,function(U){return N[U]})}var Ml=/\/+/g;function He(y,N){return typeof y=="object"&&y!==null&&y.key!=null?Zt(""+y.key):N.toString(36)}function _e(y){switch(y.status){case"fulfilled":return y.value;case"rejected":throw y.reason;default:switch(typeof y.status=="string"?y.then(Gt,Gt):(y.status="pending",y.then(function(N){y.status==="pending"&&(y.status="fulfilled",y.value=N)},function(N){y.status==="pending"&&(y.status="rejected",y.reason=N)})),y.status){case"fulfilled":return y.value;case"rejected":throw y.reason}}throw y}function T(y,N,U,q,V){var J=typeof y;(J==="undefined"||J==="boolean")&&(y=null);var at=!1;if(y===null)at=!0;else switch(J){case"bigint":case"string":case"number":at=!0;break;case"object":switch(y.$$typeof){case o:case i:at=!0;break;case Q:return at=y._init,T(at(y._payload),N,U,q,V)}}if(at)return V=V(y),at=q===""?"."+He(y,0):q,Oe(V)?(U="",at!=null&&(U=at.replace(Ml,"$&/")+"/"),T(V,N,U,"",function(Hn){return Hn})):V!=null&&(Me(V)&&(V=kl(V,U+(V.key==null||y&&y.key===V.key?"":(""+V.key).replace(Ml,"$&/")+"/")+at)),N.push(V)),1;at=0;var Xt=q===""?".":q+":";if(Oe(y))for(var pt=0;pt>>1,rt=T[ct];if(0>>1;ctm(U,X))qm(V,U)?(T[ct]=V,T[q]=X,ct=q):(T[ct]=U,T[N]=X,ct=N);else if(qm(V,X))T[ct]=V,T[q]=X,ct=q;else break t}}return D}function m(T,D){var X=T.sortIndex-D.sortIndex;return X!==0?X:T.id-D.id}if(o.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var E=performance;o.unstable_now=function(){return E.now()}}else{var R=Date,B=R.now();o.unstable_now=function(){return R.now()-B}}var M=[],A=[],Q=1,x=null,K=3,Yt=!1,_t=!1,Ut=!1,qe=!1,It=typeof setTimeout=="function"?setTimeout:null,el=typeof clearTimeout=="function"?clearTimeout:null,jt=typeof setImmediate<"u"?setImmediate:null;function se(T){for(var D=f(A);D!==null;){if(D.callback===null)s(A);else if(D.startTime<=T)s(A),D.sortIndex=D.expirationTime,i(M,D);else break;D=f(A)}}function Oe(T){if(Ut=!1,se(T),!_t)if(f(M)!==null)_t=!0,Gt||(Gt=!0,Zt());else{var D=f(A);D!==null&&_e(Oe,D.startTime-T)}}var Gt=!1,I=-1,Vt=5,Ne=-1;function kl(){return qe?!0:!(o.unstable_now()-NeT&&kl());){var ct=x.callback;if(typeof ct=="function"){x.callback=null,K=x.priorityLevel;var rt=ct(x.expirationTime<=T);if(T=o.unstable_now(),typeof rt=="function"){x.callback=rt,se(T),D=!0;break e}x===f(M)&&s(M),se(T)}else s(M);x=f(M)}if(x!==null)D=!0;else{var y=f(A);y!==null&&_e(Oe,y.startTime-T),D=!1}}break t}finally{x=null,K=X,Yt=!1}D=void 0}}finally{D?Zt():Gt=!1}}}var Zt;if(typeof jt=="function")Zt=function(){jt(Me)};else if(typeof MessageChannel<"u"){var Ml=new MessageChannel,He=Ml.port2;Ml.port1.onmessage=Me,Zt=function(){He.postMessage(null)}}else Zt=function(){It(Me,0)};function _e(T,D){I=It(function(){T(o.unstable_now())},D)}o.unstable_IdlePriority=5,o.unstable_ImmediatePriority=1,o.unstable_LowPriority=4,o.unstable_NormalPriority=3,o.unstable_Profiling=null,o.unstable_UserBlockingPriority=2,o.unstable_cancelCallback=function(T){T.callback=null},o.unstable_forceFrameRate=function(T){0>T||125ct?(T.sortIndex=X,i(A,T),f(M)===null&&T===f(A)&&(Ut?(el(I),I=-1):Ut=!0,_e(Oe,X-ct))):(T.sortIndex=rt,i(M,T),_t||Yt||(_t=!0,Gt||(Gt=!0,Zt()))),T},o.unstable_shouldYield=kl,o.unstable_wrapCallback=function(T){var D=K;return function(){var X=K;K=D;try{return T.apply(this,arguments)}finally{K=X}}}})(Mf)),Mf}var td;function Im(){return td||(td=1,Nf.exports=Fm()),Nf.exports}var Rf={exports:{}},Lt={};var ed;function Pm(){if(ed)return Lt;ed=1;var o=Xf();function i(M){var A="https://react.dev/errors/"+M;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(o)}catch(i){console.error(i)}}return o(),Rf.exports=Pm(),Rf.exports}var nd;function e0(){if(nd)return Da;nd=1;var o=Im(),i=Xf(),f=t0();function s(t){var e="https://react.dev/errors/"+t;if(1rt||(t.current=ct[rt],ct[rt]=null,rt--)}function U(t,e){rt++,ct[rt]=t.current,t.current=e}var q=y(null),V=y(null),J=y(null),at=y(null);function Xt(t,e){switch(U(J,e),U(V,t),U(q,null),e.nodeType){case 9:case 11:t=(t=e.documentElement)&&(t=t.namespaceURI)?ph(t):0;break;default:if(t=e.tagName,e=e.namespaceURI)e=ph(e),t=Sh(e,t);else switch(t){case"svg":t=1;break;case"math":t=2;break;default:t=0}}N(q),U(q,t)}function pt(){N(q),N(V),N(J)}function Hn(t){t.memoizedState!==null&&U(at,t);var e=q.current,l=Sh(e,t.type);e!==l&&(U(V,t),U(q,l))}function Ca(t){V.current===t&&(N(q),N(V)),at.current===t&&(N(at),za._currentValue=X)}var ui,Jf;function Rl(t){if(ui===void 0)try{throw Error()}catch(l){var e=l.stack.trim().match(/\n( *(at )?)/);ui=e&&e[1]||"",Jf=-1{for(const E of m)if(E.type==="childList")for(const R of E.addedNodes)R.tagName==="LINK"&&R.rel==="modulepreload"&&s(R)}).observe(document,{childList:!0,subtree:!0});function f(m){const E={};return m.integrity&&(E.integrity=m.integrity),m.referrerPolicy&&(E.referrerPolicy=m.referrerPolicy),m.crossOrigin==="use-credentials"?E.credentials="include":m.crossOrigin==="anonymous"?E.credentials="omit":E.credentials="same-origin",E}function s(m){if(m.ep)return;m.ep=!0;const E=f(m);fetch(m.href,E)}})();var Af={exports:{}},Ra={};var kh;function Jm(){if(kh)return Ra;kh=1;var o=Symbol.for("react.transitional.element"),i=Symbol.for("react.fragment");function f(s,m,E){var R=null;if(E!==void 0&&(R=""+E),m.key!==void 0&&(R=""+m.key),"key"in m){E={};for(var B in m)B!=="key"&&(E[B]=m[B])}else E=m;return m=E.ref,{$$typeof:o,type:s,key:R,ref:m!==void 0?m:null,props:E}}return Ra.Fragment=i,Ra.jsx=f,Ra.jsxs=f,Ra}var Wh;function km(){return Wh||(Wh=1,Af.exports=Jm()),Af.exports}var Y=km(),zf={exports:{}},G={};var $h;function Wm(){if($h)return G;$h=1;var o=Symbol.for("react.transitional.element"),i=Symbol.for("react.portal"),f=Symbol.for("react.fragment"),s=Symbol.for("react.strict_mode"),m=Symbol.for("react.profiler"),E=Symbol.for("react.consumer"),R=Symbol.for("react.context"),B=Symbol.for("react.forward_ref"),M=Symbol.for("react.suspense"),A=Symbol.for("react.memo"),Q=Symbol.for("react.lazy"),x=Symbol.for("react.activity"),K=Symbol.iterator;function Yt(y){return y===null||typeof y!="object"?null:(y=K&&y[K]||y["@@iterator"],typeof y=="function"?y:null)}var _t={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},Ut=Object.assign,qe={};function It(y,N,U){this.props=y,this.context=N,this.refs=qe,this.updater=U||_t}It.prototype.isReactComponent={},It.prototype.setState=function(y,N){if(typeof y!="object"&&typeof y!="function"&&y!=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,y,N,"setState")},It.prototype.forceUpdate=function(y){this.updater.enqueueForceUpdate(this,y,"forceUpdate")};function el(){}el.prototype=It.prototype;function jt(y,N,U){this.props=y,this.context=N,this.refs=qe,this.updater=U||_t}var se=jt.prototype=new el;se.constructor=jt,Ut(se,It.prototype),se.isPureReactComponent=!0;var Oe=Array.isArray;function Gt(){}var I={H:null,A:null,T:null,S:null},Vt=Object.prototype.hasOwnProperty;function Ne(y,N,U){var q=U.ref;return{$$typeof:o,type:y,key:N,ref:q!==void 0?q:null,props:U}}function kl(y,N){return Ne(y.type,N,y.props)}function Me(y){return typeof y=="object"&&y!==null&&y.$$typeof===o}function Zt(y){var N={"=":"=0",":":"=2"};return"$"+y.replace(/[=:]/g,function(U){return N[U]})}var Ml=/\/+/g;function He(y,N){return typeof y=="object"&&y!==null&&y.key!=null?Zt(""+y.key):N.toString(36)}function _e(y){switch(y.status){case"fulfilled":return y.value;case"rejected":throw y.reason;default:switch(typeof y.status=="string"?y.then(Gt,Gt):(y.status="pending",y.then(function(N){y.status==="pending"&&(y.status="fulfilled",y.value=N)},function(N){y.status==="pending"&&(y.status="rejected",y.reason=N)})),y.status){case"fulfilled":return y.value;case"rejected":throw y.reason}}throw y}function T(y,N,U,q,V){var J=typeof y;(J==="undefined"||J==="boolean")&&(y=null);var at=!1;if(y===null)at=!0;else switch(J){case"bigint":case"string":case"number":at=!0;break;case"object":switch(y.$$typeof){case o:case i:at=!0;break;case Q:return at=y._init,T(at(y._payload),N,U,q,V)}}if(at)return V=V(y),at=q===""?"."+He(y,0):q,Oe(V)?(U="",at!=null&&(U=at.replace(Ml,"$&/")+"/"),T(V,N,U,"",function(Hn){return Hn})):V!=null&&(Me(V)&&(V=kl(V,U+(V.key==null||y&&y.key===V.key?"":(""+V.key).replace(Ml,"$&/")+"/")+at)),N.push(V)),1;at=0;var Xt=q===""?".":q+":";if(Oe(y))for(var pt=0;pt>>1,rt=T[ct];if(0>>1;ctm(U,X))qm(V,U)?(T[ct]=V,T[q]=X,ct=q):(T[ct]=U,T[N]=X,ct=N);else if(qm(V,X))T[ct]=V,T[q]=X,ct=q;else break t}}return D}function m(T,D){var X=T.sortIndex-D.sortIndex;return X!==0?X:T.id-D.id}if(o.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var E=performance;o.unstable_now=function(){return E.now()}}else{var R=Date,B=R.now();o.unstable_now=function(){return R.now()-B}}var M=[],A=[],Q=1,x=null,K=3,Yt=!1,_t=!1,Ut=!1,qe=!1,It=typeof setTimeout=="function"?setTimeout:null,el=typeof clearTimeout=="function"?clearTimeout:null,jt=typeof setImmediate<"u"?setImmediate:null;function se(T){for(var D=f(A);D!==null;){if(D.callback===null)s(A);else if(D.startTime<=T)s(A),D.sortIndex=D.expirationTime,i(M,D);else break;D=f(A)}}function Oe(T){if(Ut=!1,se(T),!_t)if(f(M)!==null)_t=!0,Gt||(Gt=!0,Zt());else{var D=f(A);D!==null&&_e(Oe,D.startTime-T)}}var Gt=!1,I=-1,Vt=5,Ne=-1;function kl(){return qe?!0:!(o.unstable_now()-NeT&&kl());){var ct=x.callback;if(typeof ct=="function"){x.callback=null,K=x.priorityLevel;var rt=ct(x.expirationTime<=T);if(T=o.unstable_now(),typeof rt=="function"){x.callback=rt,se(T),D=!0;break e}x===f(M)&&s(M),se(T)}else s(M);x=f(M)}if(x!==null)D=!0;else{var y=f(A);y!==null&&_e(Oe,y.startTime-T),D=!1}}break t}finally{x=null,K=X,Yt=!1}D=void 0}}finally{D?Zt():Gt=!1}}}var Zt;if(typeof jt=="function")Zt=function(){jt(Me)};else if(typeof MessageChannel<"u"){var Ml=new MessageChannel,He=Ml.port2;Ml.port1.onmessage=Me,Zt=function(){He.postMessage(null)}}else Zt=function(){It(Me,0)};function _e(T,D){I=It(function(){T(o.unstable_now())},D)}o.unstable_IdlePriority=5,o.unstable_ImmediatePriority=1,o.unstable_LowPriority=4,o.unstable_NormalPriority=3,o.unstable_Profiling=null,o.unstable_UserBlockingPriority=2,o.unstable_cancelCallback=function(T){T.callback=null},o.unstable_forceFrameRate=function(T){0>T||125ct?(T.sortIndex=X,i(A,T),f(M)===null&&T===f(A)&&(Ut?(el(I),I=-1):Ut=!0,_e(Oe,X-ct))):(T.sortIndex=rt,i(M,T),_t||Yt||(_t=!0,Gt||(Gt=!0,Zt()))),T},o.unstable_shouldYield=kl,o.unstable_wrapCallback=function(T){var D=K;return function(){var X=K;K=D;try{return T.apply(this,arguments)}finally{K=X}}}})(Mf)),Mf}var Ph;function Fm(){return Ph||(Ph=1,Nf.exports=$m()),Nf.exports}var Rf={exports:{}},Lt={};var td;function Im(){if(td)return Lt;td=1;var o=Lf();function i(M){var A="https://react.dev/errors/"+M;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(o)}catch(i){console.error(i)}}return o(),Rf.exports=Im(),Rf.exports}var ld;function t0(){if(ld)return Da;ld=1;var o=Fm(),i=Lf(),f=Pm();function s(t){var e="https://react.dev/errors/"+t;if(1rt||(t.current=ct[rt],ct[rt]=null,rt--)}function U(t,e){rt++,ct[rt]=t.current,t.current=e}var q=y(null),V=y(null),J=y(null),at=y(null);function Xt(t,e){switch(U(J,e),U(V,t),U(q,null),e.nodeType){case 9:case 11:t=(t=e.documentElement)&&(t=t.namespaceURI)?gh(t):0;break;default:if(t=e.tagName,e=e.namespaceURI)e=gh(e),t=ph(e,t);else switch(t){case"svg":t=1;break;case"math":t=2;break;default:t=0}}N(q),U(q,t)}function pt(){N(q),N(V),N(J)}function Hn(t){t.memoizedState!==null&&U(at,t);var e=q.current,l=ph(e,t.type);e!==l&&(U(V,t),U(q,l))}function Ca(t){V.current===t&&(N(q),N(V)),at.current===t&&(N(at),za._currentValue=X)}var ui,Kf;function Rl(t){if(ui===void 0)try{throw Error()}catch(l){var e=l.stack.trim().match(/\n( *(at )?)/);ui=e&&e[1]||"",Kf=-1)":-1a||h[n]!==p[a]){var _=` -`+h[n].replace(" at new "," at ");return t.displayName&&_.includes("")&&(_=_.replace("",t.displayName)),_}while(1<=n&&0<=a);break}}}finally{ii=!1,Error.prepareStackTrace=l}return(l=t?t.displayName||t.name:"")?Rl(l):""}function zd(t,e){switch(t.tag){case 26:case 27:case 5:return Rl(t.type);case 16:return Rl("Lazy");case 13:return t.child!==e&&e!==null?Rl("Suspense Fallback"):Rl("Suspense");case 19:return Rl("SuspenseList");case 0:case 15:return ci(t.type,!1);case 11:return ci(t.type.render,!1);case 1:return ci(t.type,!0);case 31:return Rl("Activity");default:return""}}function kf(t){try{var e="",l=null;do e+=zd(t,l),l=t,t=t.return;while(t);return e}catch(n){return` +`+h[n].replace(" at new "," at ");return t.displayName&&_.includes("")&&(_=_.replace("",t.displayName)),_}while(1<=n&&0<=a);break}}}finally{ii=!1,Error.prepareStackTrace=l}return(l=t?t.displayName||t.name:"")?Rl(l):""}function Ad(t,e){switch(t.tag){case 26:case 27:case 5:return Rl(t.type);case 16:return Rl("Lazy");case 13:return t.child!==e&&e!==null?Rl("Suspense Fallback"):Rl("Suspense");case 19:return Rl("SuspenseList");case 0:case 15:return ci(t.type,!1);case 11:return ci(t.type.render,!1);case 1:return ci(t.type,!0);case 31:return Rl("Activity");default:return""}}function Jf(t){try{var e="",l=null;do e+=Ad(t,l),l=t,t=t.return;while(t);return e}catch(n){return` Error generating stack: `+n.message+` -`+n.stack}}var fi=Object.prototype.hasOwnProperty,si=o.unstable_scheduleCallback,oi=o.unstable_cancelCallback,Od=o.unstable_shouldYield,Nd=o.unstable_requestPaint,Pt=o.unstable_now,Md=o.unstable_getCurrentPriorityLevel,Wf=o.unstable_ImmediatePriority,$f=o.unstable_UserBlockingPriority,Ba=o.unstable_NormalPriority,Rd=o.unstable_LowPriority,Ff=o.unstable_IdlePriority,Dd=o.log,Ud=o.unstable_setDisableYieldValue,Yn=null,te=null;function ll(t){if(typeof Dd=="function"&&Ud(t),te&&typeof te.setStrictMode=="function")try{te.setStrictMode(Yn,t)}catch{}}var ee=Math.clz32?Math.clz32:Bd,xd=Math.log,Cd=Math.LN2;function Bd(t){return t>>>=0,t===0?32:31-(xd(t)/Cd|0)|0}var qa=256,Ha=262144,Ya=4194304;function Dl(t){var e=t&42;if(e!==0)return e;switch(t&-t){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return t&261888;case 262144:case 524288:case 1048576:case 2097152:return t&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return t&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return t}}function ja(t,e,l){var n=t.pendingLanes;if(n===0)return 0;var a=0,u=t.suspendedLanes,c=t.pingedLanes;t=t.warmLanes;var r=n&134217727;return r!==0?(n=r&~u,n!==0?a=Dl(n):(c&=r,c!==0?a=Dl(c):l||(l=r&~t,l!==0&&(a=Dl(l))))):(r=n&~u,r!==0?a=Dl(r):c!==0?a=Dl(c):l||(l=n&~t,l!==0&&(a=Dl(l)))),a===0?0:e!==0&&e!==a&&(e&u)===0&&(u=a&-a,l=e&-e,u>=l||u===32&&(l&4194048)!==0)?e:a}function jn(t,e){return(t.pendingLanes&~(t.suspendedLanes&~t.pingedLanes)&e)===0}function qd(t,e){switch(t){case 1:case 2:case 4:case 8:case 64:return e+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 e+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 If(){var t=Ya;return Ya<<=1,(Ya&62914560)===0&&(Ya=4194304),t}function ri(t){for(var e=[],l=0;31>l;l++)e.push(t);return e}function Ln(t,e){t.pendingLanes|=e,e!==268435456&&(t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0)}function Hd(t,e,l,n,a,u){var c=t.pendingLanes;t.pendingLanes=l,t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0,t.expiredLanes&=l,t.entangledLanes&=l,t.errorRecoveryDisabledLanes&=l,t.shellSuspendCounter=0;var r=t.entanglements,h=t.expirationTimes,p=t.hiddenUpdates;for(l=c&~l;0"u")return null;try{return t.activeElement||t.body}catch{return t.body}}var Gd=/[\n"\\]/g;function re(t){return t.replace(Gd,function(e){return"\\"+e.charCodeAt(0).toString(16)+" "})}function gi(t,e,l,n,a,u,c,r){t.name="",c!=null&&typeof c!="function"&&typeof c!="symbol"&&typeof c!="boolean"?t.type=c:t.removeAttribute("type"),e!=null?c==="number"?(e===0&&t.value===""||t.value!=e)&&(t.value=""+oe(e)):t.value!==""+oe(e)&&(t.value=""+oe(e)):c!=="submit"&&c!=="reset"||t.removeAttribute("value"),e!=null?pi(t,c,oe(e)):l!=null?pi(t,c,oe(l)):n!=null&&t.removeAttribute("value"),a==null&&u!=null&&(t.defaultChecked=!!u),a!=null&&(t.checked=a&&typeof a!="function"&&typeof a!="symbol"),r!=null&&typeof r!="function"&&typeof r!="symbol"&&typeof r!="boolean"?t.name=""+oe(r):t.removeAttribute("name")}function rs(t,e,l,n,a,u,c,r){if(u!=null&&typeof u!="function"&&typeof u!="symbol"&&typeof u!="boolean"&&(t.type=u),e!=null||l!=null){if(!(u!=="submit"&&u!=="reset"||e!=null)){vi(t);return}l=l!=null?""+oe(l):"",e=e!=null?""+oe(e):l,r||e===t.value||(t.value=e),t.defaultValue=e}n=n??a,n=typeof n!="function"&&typeof n!="symbol"&&!!n,t.checked=r?t.checked:!!n,t.defaultChecked=!!n,c!=null&&typeof c!="function"&&typeof c!="symbol"&&typeof c!="boolean"&&(t.name=c),vi(t)}function pi(t,e,l){e==="number"&&Qa(t.ownerDocument)===t||t.defaultValue===""+l||(t.defaultValue=""+l)}function tn(t,e,l,n){if(t=t.options,e){e={};for(var a=0;a"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Ti=!1;if(Le)try{var Vn={};Object.defineProperty(Vn,"passive",{get:function(){Ti=!0}}),window.addEventListener("test",Vn,Vn),window.removeEventListener("test",Vn,Vn)}catch{Ti=!1}var al=null,Ai=null,Va=null;function ps(){if(Va)return Va;var t,e=Ai,l=e.length,n,a="value"in al?al.value:al.textContent,u=a.length;for(t=0;t=Kn),As=" ",zs=!1;function Os(t,e){switch(t){case"keyup":return vy.indexOf(e.keyCode)!==-1;case"keydown":return e.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Ns(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var an=!1;function py(t,e){switch(t){case"compositionend":return Ns(e);case"keypress":return e.which!==32?null:(zs=!0,As);case"textInput":return t=e.data,t===As&&zs?null:t;default:return null}}function Sy(t,e){if(an)return t==="compositionend"||!Ri&&Os(t,e)?(t=ps(),Va=Ai=al=null,an=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(e.ctrlKey||e.altKey||e.metaKey)||e.ctrlKey&&e.altKey){if(e.char&&1=e)return{node:l,offset:e-t};t=n}t:{for(;l;){if(l.nextSibling){l=l.nextSibling;break t}l=l.parentNode}l=void 0}l=qs(l)}}function Ys(t,e){return t&&e?t===e?!0:t&&t.nodeType===3?!1:e&&e.nodeType===3?Ys(t,e.parentNode):"contains"in t?t.contains(e):t.compareDocumentPosition?!!(t.compareDocumentPosition(e)&16):!1:!1}function js(t){t=t!=null&&t.ownerDocument!=null&&t.ownerDocument.defaultView!=null?t.ownerDocument.defaultView:window;for(var e=Qa(t.document);e instanceof t.HTMLIFrameElement;){try{var l=typeof e.contentWindow.location.href=="string"}catch{l=!1}if(l)t=e.contentWindow;else break;e=Qa(t.document)}return e}function xi(t){var e=t&&t.nodeName&&t.nodeName.toLowerCase();return e&&(e==="input"&&(t.type==="text"||t.type==="search"||t.type==="tel"||t.type==="url"||t.type==="password")||e==="textarea"||t.contentEditable==="true")}var Ny=Le&&"documentMode"in document&&11>=document.documentMode,un=null,Ci=null,$n=null,Bi=!1;function Ls(t,e,l){var n=l.window===l?l.document:l.nodeType===9?l:l.ownerDocument;Bi||un==null||un!==Qa(n)||(n=un,"selectionStart"in n&&xi(n)?n={start:n.selectionStart,end:n.selectionEnd}:(n=(n.ownerDocument&&n.ownerDocument.defaultView||window).getSelection(),n={anchorNode:n.anchorNode,anchorOffset:n.anchorOffset,focusNode:n.focusNode,focusOffset:n.focusOffset}),$n&&Wn($n,n)||($n=n,n=Hu(Ci,"onSelect"),0>=c,a-=c,Re=1<<32-ee(e)+a|l<w?(F=H,H=null):F=H.sibling;var lt=S(v,H,g[w],z);if(lt===null){H===null&&(H=F);break}t&&H&<.alternate===null&&e(v,H),d=u(lt,d,w),et===null?j=lt:et.sibling=lt,et=lt,H=F}if(w===g.length)return l(v,H),P&&Qe(v,w),j;if(H===null){for(;ww?(F=H,H=null):F=H.sibling;var Ol=S(v,H,lt.value,z);if(Ol===null){H===null&&(H=F);break}t&&H&&Ol.alternate===null&&e(v,H),d=u(Ol,d,w),et===null?j=Ol:et.sibling=Ol,et=Ol,H=F}if(lt.done)return l(v,H),P&&Qe(v,w),j;if(H===null){for(;!lt.done;w++,lt=g.next())lt=O(v,lt.value,z),lt!==null&&(d=u(lt,d,w),et===null?j=lt:et.sibling=lt,et=lt);return P&&Qe(v,w),j}for(H=n(H);!lt.done;w++,lt=g.next())lt=b(H,v,w,lt.value,z),lt!==null&&(t&<.alternate!==null&&H.delete(lt.key===null?w:lt.key),d=u(lt,d,w),et===null?j=lt:et.sibling=lt,et=lt);return t&&H.forEach(function(Jm){return e(v,Jm)}),P&&Qe(v,w),j}function ot(v,d,g,z){if(typeof g=="object"&&g!==null&&g.type===Ut&&g.key===null&&(g=g.props.children),typeof g=="object"&&g!==null){switch(g.$$typeof){case Yt:t:{for(var j=g.key;d!==null;){if(d.key===j){if(j=g.type,j===Ut){if(d.tag===7){l(v,d.sibling),z=a(d,g.props.children),z.return=v,v=z;break t}}else if(d.elementType===j||typeof j=="object"&&j!==null&&j.$$typeof===Vt&&Ql(j)===d.type){l(v,d.sibling),z=a(d,g.props),la(z,g),z.return=v,v=z;break t}l(v,d);break}else e(v,d);d=d.sibling}g.type===Ut?(z=Hl(g.props.children,v.mode,z,g.key),z.return=v,v=z):(z=Pa(g.type,g.key,g.props,null,v.mode,z),la(z,g),z.return=v,v=z)}return c(v);case _t:t:{for(j=g.key;d!==null;){if(d.key===j)if(d.tag===4&&d.stateNode.containerInfo===g.containerInfo&&d.stateNode.implementation===g.implementation){l(v,d.sibling),z=a(d,g.children||[]),z.return=v,v=z;break t}else{l(v,d);break}else e(v,d);d=d.sibling}z=Qi(g,v.mode,z),z.return=v,v=z}return c(v);case Vt:return g=Ql(g),ot(v,d,g,z)}if(_e(g))return C(v,d,g,z);if(Zt(g)){if(j=Zt(g),typeof j!="function")throw Error(s(150));return g=j.call(g),L(v,d,g,z)}if(typeof g.then=="function")return ot(v,d,iu(g),z);if(g.$$typeof===jt)return ot(v,d,lu(v,g),z);cu(v,g)}return typeof g=="string"&&g!==""||typeof g=="number"||typeof g=="bigint"?(g=""+g,d!==null&&d.tag===6?(l(v,d.sibling),z=a(d,g),z.return=v,v=z):(l(v,d),z=Xi(g,v.mode,z),z.return=v,v=z),c(v)):l(v,d)}return function(v,d,g,z){try{ea=0;var j=ot(v,d,g,z);return gn=null,j}catch(H){if(H===vn||H===au)throw H;var et=ne(29,H,null,v.mode);return et.lanes=z,et.return=v,et}finally{}}}var Vl=fo(!0),so=fo(!1),sl=!1;function Pi(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function tc(t,e){t=t.updateQueue,e.updateQueue===t&&(e.updateQueue={baseState:t.baseState,firstBaseUpdate:t.firstBaseUpdate,lastBaseUpdate:t.lastBaseUpdate,shared:t.shared,callbacks:null})}function ol(t){return{lane:t,tag:0,payload:null,callback:null,next:null}}function rl(t,e,l){var n=t.updateQueue;if(n===null)return null;if(n=n.shared,(nt&2)!==0){var a=n.pending;return a===null?e.next=e:(e.next=a.next,a.next=e),n.pending=e,e=Ia(t),Ks(t,null,l),e}return Fa(t,n,e,l),Ia(t)}function na(t,e,l){if(e=e.updateQueue,e!==null&&(e=e.shared,(l&4194048)!==0)){var n=e.lanes;n&=t.pendingLanes,l|=n,e.lanes=l,ts(t,l)}}function ec(t,e){var l=t.updateQueue,n=t.alternate;if(n!==null&&(n=n.updateQueue,l===n)){var a=null,u=null;if(l=l.firstBaseUpdate,l!==null){do{var c={lane:l.lane,tag:l.tag,payload:l.payload,callback:null,next:null};u===null?a=u=c:u=u.next=c,l=l.next}while(l!==null);u===null?a=u=e:u=u.next=e}else a=u=e;l={baseState:n.baseState,firstBaseUpdate:a,lastBaseUpdate:u,shared:n.shared,callbacks:n.callbacks},t.updateQueue=l;return}t=l.lastBaseUpdate,t===null?l.firstBaseUpdate=e:t.next=e,l.lastBaseUpdate=e}var lc=!1;function aa(){if(lc){var t=mn;if(t!==null)throw t}}function ua(t,e,l,n){lc=!1;var a=t.updateQueue;sl=!1;var u=a.firstBaseUpdate,c=a.lastBaseUpdate,r=a.shared.pending;if(r!==null){a.shared.pending=null;var h=r,p=h.next;h.next=null,c===null?u=p:c.next=p,c=h;var _=t.alternate;_!==null&&(_=_.updateQueue,r=_.lastBaseUpdate,r!==c&&(r===null?_.firstBaseUpdate=p:r.next=p,_.lastBaseUpdate=h))}if(u!==null){var O=a.baseState;c=0,_=p=h=null,r=u;do{var S=r.lane&-536870913,b=S!==r.lane;if(b?($&S)===S:(n&S)===S){S!==0&&S===yn&&(lc=!0),_!==null&&(_=_.next={lane:0,tag:r.tag,payload:r.payload,callback:null,next:null});t:{var C=t,L=r;S=e;var ot=l;switch(L.tag){case 1:if(C=L.payload,typeof C=="function"){O=C.call(ot,O,S);break t}O=C;break t;case 3:C.flags=C.flags&-65537|128;case 0:if(C=L.payload,S=typeof C=="function"?C.call(ot,O,S):C,S==null)break t;O=x({},O,S);break t;case 2:sl=!0}}S=r.callback,S!==null&&(t.flags|=64,b&&(t.flags|=8192),b=a.callbacks,b===null?a.callbacks=[S]:b.push(S))}else b={lane:S,tag:r.tag,payload:r.payload,callback:r.callback,next:null},_===null?(p=_=b,h=O):_=_.next=b,c|=S;if(r=r.next,r===null){if(r=a.shared.pending,r===null)break;b=r,r=b.next,b.next=null,a.lastBaseUpdate=b,a.shared.pending=null}}while(!0);_===null&&(h=O),a.baseState=h,a.firstBaseUpdate=p,a.lastBaseUpdate=_,u===null&&(a.shared.lanes=0),vl|=c,t.lanes=c,t.memoizedState=O}}function oo(t,e){if(typeof t!="function")throw Error(s(191,t));t.call(e)}function ro(t,e){var l=t.callbacks;if(l!==null)for(t.callbacks=null,t=0;tu?u:8;var c=T.T,r={};T.T=r,_c(t,!1,e,l);try{var h=a(),p=T.S;if(p!==null&&p(r,h),h!==null&&typeof h=="object"&&typeof h.then=="function"){var _=Hy(h,n);fa(t,e,_,fe(t))}else fa(t,e,n,fe(t))}catch(O){fa(t,e,{then:function(){},status:"rejected",reason:O},fe())}finally{D.p=u,c!==null&&r.types!==null&&(c.types=r.types),T.T=c}}function Gy(){}function Sc(t,e,l,n){if(t.tag!==5)throw Error(s(476));var a=Zo(t).queue;Vo(t,a,e,X,l===null?Gy:function(){return wo(t),l(n)})}function Zo(t){var e=t.memoizedState;if(e!==null)return e;e={memoizedState:X,baseState:X,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:we,lastRenderedState:X},next:null};var l={};return e.next={memoizedState:l,baseState:l,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:we,lastRenderedState:l},next:null},t.memoizedState=e,t=t.alternate,t!==null&&(t.memoizedState=e),e}function wo(t){var e=Zo(t);e.next===null&&(e=t.alternate.memoizedState),fa(t,e.next.queue,{},fe())}function bc(){return Bt(za)}function Ko(){return bt().memoizedState}function Jo(){return bt().memoizedState}function Vy(t){for(var e=t.return;e!==null;){switch(e.tag){case 24:case 3:var l=fe();t=ol(l);var n=rl(e,t,l);n!==null&&(Ft(n,e,l),na(n,e,l)),e={cache:Wi()},t.payload=e;return}e=e.return}}function Zy(t,e,l){var n=fe();l={lane:n,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},gu(t)?Wo(e,l):(l=ji(t,e,l,n),l!==null&&(Ft(l,t,n),$o(l,e,n)))}function ko(t,e,l){var n=fe();fa(t,e,l,n)}function fa(t,e,l,n){var a={lane:n,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null};if(gu(t))Wo(e,a);else{var u=t.alternate;if(t.lanes===0&&(u===null||u.lanes===0)&&(u=e.lastRenderedReducer,u!==null))try{var c=e.lastRenderedState,r=u(c,l);if(a.hasEagerState=!0,a.eagerState=r,le(r,c))return Fa(t,e,a,0),ht===null&&$a(),!1}catch{}finally{}if(l=ji(t,e,a,n),l!==null)return Ft(l,t,n),$o(l,e,n),!0}return!1}function _c(t,e,l,n){if(n={lane:2,revertLane:Pc(),gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},gu(t)){if(e)throw Error(s(479))}else e=ji(t,l,n,2),e!==null&&Ft(e,t,2)}function gu(t){var e=t.alternate;return t===Z||e!==null&&e===Z}function Wo(t,e){Sn=ou=!0;var l=t.pending;l===null?e.next=e:(e.next=l.next,l.next=e),t.pending=e}function $o(t,e,l){if((l&4194048)!==0){var n=e.lanes;n&=t.pendingLanes,l|=n,e.lanes=l,ts(t,l)}}var sa={readContext:Bt,use:du,useCallback:vt,useContext:vt,useEffect:vt,useImperativeHandle:vt,useLayoutEffect:vt,useInsertionEffect:vt,useMemo:vt,useReducer:vt,useRef:vt,useState:vt,useDebugValue:vt,useDeferredValue:vt,useTransition:vt,useSyncExternalStore:vt,useId:vt,useHostTransitionStatus:vt,useFormState:vt,useActionState:vt,useOptimistic:vt,useMemoCache:vt,useCacheRefresh:vt};sa.useEffectEvent=vt;var Fo={readContext:Bt,use:du,useCallback:function(t,e){return Qt().memoizedState=[t,e===void 0?null:e],t},useContext:Bt,useEffect:Bo,useImperativeHandle:function(t,e,l){l=l!=null?l.concat([t]):null,mu(4194308,4,jo.bind(null,e,t),l)},useLayoutEffect:function(t,e){return mu(4194308,4,t,e)},useInsertionEffect:function(t,e){mu(4,2,t,e)},useMemo:function(t,e){var l=Qt();e=e===void 0?null:e;var n=t();if(Zl){ll(!0);try{t()}finally{ll(!1)}}return l.memoizedState=[n,e],n},useReducer:function(t,e,l){var n=Qt();if(l!==void 0){var a=l(e);if(Zl){ll(!0);try{l(e)}finally{ll(!1)}}}else a=e;return n.memoizedState=n.baseState=a,t={pending:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:a},n.queue=t,t=t.dispatch=Zy.bind(null,Z,t),[n.memoizedState,t]},useRef:function(t){var e=Qt();return t={current:t},e.memoizedState=t},useState:function(t){t=yc(t);var e=t.queue,l=ko.bind(null,Z,e);return e.dispatch=l,[t.memoizedState,l]},useDebugValue:gc,useDeferredValue:function(t,e){var l=Qt();return pc(l,t,e)},useTransition:function(){var t=yc(!1);return t=Vo.bind(null,Z,t.queue,!0,!1),Qt().memoizedState=t,[!1,t]},useSyncExternalStore:function(t,e,l){var n=Z,a=Qt();if(P){if(l===void 0)throw Error(s(407));l=l()}else{if(l=e(),ht===null)throw Error(s(349));($&127)!==0||po(n,e,l)}a.memoizedState=l;var u={value:l,getSnapshot:e};return a.queue=u,Bo(bo.bind(null,n,u,t),[t]),n.flags|=2048,_n(9,{destroy:void 0},So.bind(null,n,u,l,e),null),l},useId:function(){var t=Qt(),e=ht.identifierPrefix;if(P){var l=De,n=Re;l=(n&~(1<<32-ee(n)-1)).toString(32)+l,e="_"+e+"R_"+l,l=ru++,0<\/script>",u=u.removeChild(u.firstChild);break;case"select":u=typeof n.is=="string"?c.createElement("select",{is:n.is}):c.createElement("select"),n.multiple?u.multiple=!0:n.size&&(u.size=n.size);break;default:u=typeof n.is=="string"?c.createElement(a,{is:n.is}):c.createElement(a)}}u[xt]=e,u[wt]=n;t:for(c=e.child;c!==null;){if(c.tag===5||c.tag===6)u.appendChild(c.stateNode);else if(c.tag!==4&&c.tag!==27&&c.child!==null){c.child.return=c,c=c.child;continue}if(c===e)break t;for(;c.sibling===null;){if(c.return===null||c.return===e)break t;c=c.return}c.sibling.return=c.return,c=c.sibling}e.stateNode=u;t:switch(Ht(u,a,n),a){case"button":case"input":case"select":case"textarea":n=!!n.autoFocus;break t;case"img":n=!0;break t;default:n=!1}n&&Je(e)}}return yt(e),qc(e,e.type,t===null?null:t.memoizedProps,e.pendingProps,l),null;case 6:if(t&&e.stateNode!=null)t.memoizedProps!==n&&Je(e);else{if(typeof n!="string"&&e.stateNode===null)throw Error(s(166));if(t=J.current,hn(e)){if(t=e.stateNode,l=e.memoizedProps,n=null,a=Ct,a!==null)switch(a.tag){case 27:case 5:n=a.memoizedProps}t[xt]=e,t=!!(t.nodeValue===l||n!==null&&n.suppressHydrationWarning===!0||vh(t.nodeValue,l)),t||cl(e,!0)}else t=Yu(t).createTextNode(n),t[xt]=e,e.stateNode=t}return yt(e),null;case 31:if(l=e.memoizedState,t===null||t.memoizedState!==null){if(n=hn(e),l!==null){if(t===null){if(!n)throw Error(s(318));if(t=e.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(s(557));t[xt]=e}else Yl(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;yt(e),t=!1}else l=wi(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=l),t=!0;if(!t)return e.flags&256?(ue(e),e):(ue(e),null);if((e.flags&128)!==0)throw Error(s(558))}return yt(e),null;case 13:if(n=e.memoizedState,t===null||t.memoizedState!==null&&t.memoizedState.dehydrated!==null){if(a=hn(e),n!==null&&n.dehydrated!==null){if(t===null){if(!a)throw Error(s(318));if(a=e.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(s(317));a[xt]=e}else Yl(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;yt(e),a=!1}else a=wi(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=a),a=!0;if(!a)return e.flags&256?(ue(e),e):(ue(e),null)}return ue(e),(e.flags&128)!==0?(e.lanes=l,e):(l=n!==null,t=t!==null&&t.memoizedState!==null,l&&(n=e.child,a=null,n.alternate!==null&&n.alternate.memoizedState!==null&&n.alternate.memoizedState.cachePool!==null&&(a=n.alternate.memoizedState.cachePool.pool),u=null,n.memoizedState!==null&&n.memoizedState.cachePool!==null&&(u=n.memoizedState.cachePool.pool),u!==a&&(n.flags|=2048)),l!==t&&l&&(e.child.flags|=8192),Eu(e,e.updateQueue),yt(e),null);case 4:return pt(),t===null&&nf(e.stateNode.containerInfo),yt(e),null;case 10:return Ve(e.type),yt(e),null;case 19:if(N(St),n=e.memoizedState,n===null)return yt(e),null;if(a=(e.flags&128)!==0,u=n.rendering,u===null)if(a)ra(n,!1);else{if(gt!==0||t!==null&&(t.flags&128)!==0)for(t=e.child;t!==null;){if(u=su(t),u!==null){for(e.flags|=128,ra(n,!1),t=u.updateQueue,e.updateQueue=t,Eu(e,t),e.subtreeFlags=0,t=l,l=e.child;l!==null;)Js(l,t),l=l.sibling;return U(St,St.current&1|2),P&&Qe(e,n.treeForkCount),e.child}t=t.sibling}n.tail!==null&&Pt()>Nu&&(e.flags|=128,a=!0,ra(n,!1),e.lanes=4194304)}else{if(!a)if(t=su(u),t!==null){if(e.flags|=128,a=!0,t=t.updateQueue,e.updateQueue=t,Eu(e,t),ra(n,!0),n.tail===null&&n.tailMode==="hidden"&&!u.alternate&&!P)return yt(e),null}else 2*Pt()-n.renderingStartTime>Nu&&l!==536870912&&(e.flags|=128,a=!0,ra(n,!1),e.lanes=4194304);n.isBackwards?(u.sibling=e.child,e.child=u):(t=n.last,t!==null?t.sibling=u:e.child=u,n.last=u)}return n.tail!==null?(t=n.tail,n.rendering=t,n.tail=t.sibling,n.renderingStartTime=Pt(),t.sibling=null,l=St.current,U(St,a?l&1|2:l&1),P&&Qe(e,n.treeForkCount),t):(yt(e),null);case 22:case 23:return ue(e),ac(),n=e.memoizedState!==null,t!==null?t.memoizedState!==null!==n&&(e.flags|=8192):n&&(e.flags|=8192),n?(l&536870912)!==0&&(e.flags&128)===0&&(yt(e),e.subtreeFlags&6&&(e.flags|=8192)):yt(e),l=e.updateQueue,l!==null&&Eu(e,l.retryQueue),l=null,t!==null&&t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(l=t.memoizedState.cachePool.pool),n=null,e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),n!==l&&(e.flags|=2048),t!==null&&N(Xl),null;case 24:return l=null,t!==null&&(l=t.memoizedState.cache),e.memoizedState.cache!==l&&(e.flags|=2048),Ve(Et),yt(e),null;case 25:return null;case 30:return null}throw Error(s(156,e.tag))}function Wy(t,e){switch(Vi(e),e.tag){case 1:return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 3:return Ve(Et),pt(),t=e.flags,(t&65536)!==0&&(t&128)===0?(e.flags=t&-65537|128,e):null;case 26:case 27:case 5:return Ca(e),null;case 31:if(e.memoizedState!==null){if(ue(e),e.alternate===null)throw Error(s(340));Yl()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 13:if(ue(e),t=e.memoizedState,t!==null&&t.dehydrated!==null){if(e.alternate===null)throw Error(s(340));Yl()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 19:return N(St),null;case 4:return pt(),null;case 10:return Ve(e.type),null;case 22:case 23:return ue(e),ac(),t!==null&&N(Xl),t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 24:return Ve(Et),null;case 25:return null;default:return null}}function _r(t,e){switch(Vi(e),e.tag){case 3:Ve(Et),pt();break;case 26:case 27:case 5:Ca(e);break;case 4:pt();break;case 31:e.memoizedState!==null&&ue(e);break;case 13:ue(e);break;case 19:N(St);break;case 10:Ve(e.type);break;case 22:case 23:ue(e),ac(),t!==null&&N(Xl);break;case 24:Ve(Et)}}function ha(t,e){try{var l=e.updateQueue,n=l!==null?l.lastEffect:null;if(n!==null){var a=n.next;l=a;do{if((l.tag&t)===t){n=void 0;var u=l.create,c=l.inst;n=u(),c.destroy=n}l=l.next}while(l!==a)}}catch(r){it(e,e.return,r)}}function yl(t,e,l){try{var n=e.updateQueue,a=n!==null?n.lastEffect:null;if(a!==null){var u=a.next;n=u;do{if((n.tag&t)===t){var c=n.inst,r=c.destroy;if(r!==void 0){c.destroy=void 0,a=e;var h=l,p=r;try{p()}catch(_){it(a,h,_)}}}n=n.next}while(n!==u)}}catch(_){it(e,e.return,_)}}function Er(t){var e=t.updateQueue;if(e!==null){var l=t.stateNode;try{ro(e,l)}catch(n){it(t,t.return,n)}}}function Tr(t,e,l){l.props=wl(t.type,t.memoizedProps),l.state=t.memoizedState;try{l.componentWillUnmount()}catch(n){it(t,e,n)}}function da(t,e){try{var l=t.ref;if(l!==null){switch(t.tag){case 26:case 27:case 5:var n=t.stateNode;break;case 30:n=t.stateNode;break;default:n=t.stateNode}typeof l=="function"?t.refCleanup=l(n):l.current=n}}catch(a){it(t,e,a)}}function Ue(t,e){var l=t.ref,n=t.refCleanup;if(l!==null)if(typeof n=="function")try{n()}catch(a){it(t,e,a)}finally{t.refCleanup=null,t=t.alternate,t!=null&&(t.refCleanup=null)}else if(typeof l=="function")try{l(null)}catch(a){it(t,e,a)}else l.current=null}function Ar(t){var e=t.type,l=t.memoizedProps,n=t.stateNode;try{t:switch(e){case"button":case"input":case"select":case"textarea":l.autoFocus&&n.focus();break t;case"img":l.src?n.src=l.src:l.srcSet&&(n.srcset=l.srcSet)}}catch(a){it(t,t.return,a)}}function Hc(t,e,l){try{var n=t.stateNode;gm(n,t.type,l,e),n[wt]=e}catch(a){it(t,t.return,a)}}function zr(t){return t.tag===5||t.tag===3||t.tag===26||t.tag===27&&_l(t.type)||t.tag===4}function Yc(t){t:for(;;){for(;t.sibling===null;){if(t.return===null||zr(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.tag===27&&_l(t.type)||t.flags&2||t.child===null||t.tag===4)continue t;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function jc(t,e,l){var n=t.tag;if(n===5||n===6)t=t.stateNode,e?(l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l).insertBefore(t,e):(e=l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l,e.appendChild(t),l=l._reactRootContainer,l!=null||e.onclick!==null||(e.onclick=je));else if(n!==4&&(n===27&&_l(t.type)&&(l=t.stateNode,e=null),t=t.child,t!==null))for(jc(t,e,l),t=t.sibling;t!==null;)jc(t,e,l),t=t.sibling}function Tu(t,e,l){var n=t.tag;if(n===5||n===6)t=t.stateNode,e?l.insertBefore(t,e):l.appendChild(t);else if(n!==4&&(n===27&&_l(t.type)&&(l=t.stateNode),t=t.child,t!==null))for(Tu(t,e,l),t=t.sibling;t!==null;)Tu(t,e,l),t=t.sibling}function Or(t){var e=t.stateNode,l=t.memoizedProps;try{for(var n=t.type,a=e.attributes;a.length;)e.removeAttributeNode(a[0]);Ht(e,n,l),e[xt]=t,e[wt]=l}catch(u){it(t,t.return,u)}}var ke=!1,zt=!1,Lc=!1,Nr=typeof WeakSet=="function"?WeakSet:Set,Dt=null;function $y(t,e){if(t=t.containerInfo,cf=Zu,t=js(t),xi(t)){if("selectionStart"in t)var l={start:t.selectionStart,end:t.selectionEnd};else t:{l=(l=t.ownerDocument)&&l.defaultView||window;var n=l.getSelection&&l.getSelection();if(n&&n.rangeCount!==0){l=n.anchorNode;var a=n.anchorOffset,u=n.focusNode;n=n.focusOffset;try{l.nodeType,u.nodeType}catch{l=null;break t}var c=0,r=-1,h=-1,p=0,_=0,O=t,S=null;e:for(;;){for(var b;O!==l||a!==0&&O.nodeType!==3||(r=c+a),O!==u||n!==0&&O.nodeType!==3||(h=c+n),O.nodeType===3&&(c+=O.nodeValue.length),(b=O.firstChild)!==null;)S=O,O=b;for(;;){if(O===t)break e;if(S===l&&++p===a&&(r=c),S===u&&++_===n&&(h=c),(b=O.nextSibling)!==null)break;O=S,S=O.parentNode}O=b}l=r===-1||h===-1?null:{start:r,end:h}}else l=null}l=l||{start:0,end:0}}else l=null;for(ff={focusedElem:t,selectionRange:l},Zu=!1,Dt=e;Dt!==null;)if(e=Dt,t=e.child,(e.subtreeFlags&1028)!==0&&t!==null)t.return=e,Dt=t;else for(;Dt!==null;){switch(e=Dt,u=e.alternate,t=e.flags,e.tag){case 0:if((t&4)!==0&&(t=e.updateQueue,t=t!==null?t.events:null,t!==null))for(l=0;l title"))),Ht(u,n,l),u[xt]=t,Rt(u),n=u;break t;case"link":var c=Ch("link","href",a).get(n+(l.href||""));if(c){for(var r=0;rot&&(c=ot,ot=L,L=c);var v=Hs(r,L),d=Hs(r,ot);if(v&&d&&(b.rangeCount!==1||b.anchorNode!==v.node||b.anchorOffset!==v.offset||b.focusNode!==d.node||b.focusOffset!==d.offset)){var g=O.createRange();g.setStart(v.node,v.offset),b.removeAllRanges(),L>ot?(b.addRange(g),b.extend(d.node,d.offset)):(g.setEnd(d.node,d.offset),b.addRange(g))}}}}for(O=[],b=r;b=b.parentNode;)b.nodeType===1&&O.push({element:b,left:b.scrollLeft,top:b.scrollTop});for(typeof r.focus=="function"&&r.focus(),r=0;rl?32:l,T.T=null,l=Kc,Kc=null;var u=pl,c=Pe;if(Nt=0,On=pl=null,Pe=0,(nt&6)!==0)throw Error(s(331));var r=nt;if(nt|=4,jr(u.current),qr(u,u.current,c,l),nt=r,Sa(0,!1),te&&typeof te.onPostCommitFiberRoot=="function")try{te.onPostCommitFiberRoot(Yn,u)}catch{}return!0}finally{D.p=a,T.T=n,lh(t,e)}}function ah(t,e,l){e=de(l,e),e=zc(t.stateNode,e,2),t=rl(t,e,2),t!==null&&(Ln(t,2),xe(t))}function it(t,e,l){if(t.tag===3)ah(t,t,l);else for(;e!==null;){if(e.tag===3){ah(e,t,l);break}else if(e.tag===1){var n=e.stateNode;if(typeof e.type.getDerivedStateFromError=="function"||typeof n.componentDidCatch=="function"&&(gl===null||!gl.has(n))){t=de(l,t),l=ur(2),n=rl(e,l,2),n!==null&&(ir(l,n,e,t),Ln(n,2),xe(n));break}}e=e.return}}function $c(t,e,l){var n=t.pingCache;if(n===null){n=t.pingCache=new Py;var a=new Set;n.set(e,a)}else a=n.get(e),a===void 0&&(a=new Set,n.set(e,a));a.has(l)||(Gc=!0,a.add(l),t=am.bind(null,t,e,l),e.then(t,t))}function am(t,e,l){var n=t.pingCache;n!==null&&n.delete(e),t.pingedLanes|=t.suspendedLanes&l,t.warmLanes&=~l,ht===t&&($&l)===l&&(gt===4||gt===3&&($&62914560)===$&&300>Pt()-Ou?(nt&2)===0&&Nn(t,0):Vc|=l,zn===$&&(zn=0)),xe(t)}function uh(t,e){e===0&&(e=If()),t=ql(t,e),t!==null&&(Ln(t,e),xe(t))}function um(t){var e=t.memoizedState,l=0;e!==null&&(l=e.retryLane),uh(t,l)}function im(t,e){var l=0;switch(t.tag){case 31:case 13:var n=t.stateNode,a=t.memoizedState;a!==null&&(l=a.retryLane);break;case 19:n=t.stateNode;break;case 22:n=t.stateNode._retryCache;break;default:throw Error(s(314))}n!==null&&n.delete(e),uh(t,l)}function cm(t,e){return si(t,e)}var Cu=null,Rn=null,Fc=!1,Bu=!1,Ic=!1,bl=0;function xe(t){t!==Rn&&t.next===null&&(Rn===null?Cu=Rn=t:Rn=Rn.next=t),Bu=!0,Fc||(Fc=!0,sm())}function Sa(t,e){if(!Ic&&Bu){Ic=!0;do for(var l=!1,n=Cu;n!==null;){if(t!==0){var a=n.pendingLanes;if(a===0)var u=0;else{var c=n.suspendedLanes,r=n.pingedLanes;u=(1<<31-ee(42|t)+1)-1,u&=a&~(c&~r),u=u&201326741?u&201326741|1:u?u|2:0}u!==0&&(l=!0,sh(n,u))}else u=$,u=ja(n,n===ht?u:0,n.cancelPendingCommit!==null||n.timeoutHandle!==-1),(u&3)===0||jn(n,u)||(l=!0,sh(n,u));n=n.next}while(l);Ic=!1}}function fm(){ih()}function ih(){Bu=Fc=!1;var t=0;bl!==0&&Sm()&&(t=bl);for(var e=Pt(),l=null,n=Cu;n!==null;){var a=n.next,u=ch(n,e);u===0?(n.next=null,l===null?Cu=a:l.next=a,a===null&&(Rn=l)):(l=n,(t!==0||(u&3)!==0)&&(Bu=!0)),n=a}Nt!==0&&Nt!==5||Sa(t),bl!==0&&(bl=0)}function ch(t,e){for(var l=t.suspendedLanes,n=t.pingedLanes,a=t.expirationTimes,u=t.pendingLanes&-62914561;0r)break;var _=h.transferSize,O=h.initiatorType;_&&gh(O)&&(h=h.responseEnd,c+=_*(h"u"?null:document;function Rh(t,e,l){var n=Dn;if(n&&typeof e=="string"&&e){var a=re(e);a='link[rel="'+t+'"][href="'+a+'"]',typeof l=="string"&&(a+='[crossorigin="'+l+'"]'),Mh.has(a)||(Mh.add(a),t={rel:t,crossOrigin:l,href:e},n.querySelector(a)===null&&(e=n.createElement("link"),Ht(e,"link",t),Rt(e),n.head.appendChild(e)))}}function Mm(t){tl.D(t),Rh("dns-prefetch",t,null)}function Rm(t,e){tl.C(t,e),Rh("preconnect",t,e)}function Dm(t,e,l){tl.L(t,e,l);var n=Dn;if(n&&t&&e){var a='link[rel="preload"][as="'+re(e)+'"]';e==="image"&&l&&l.imageSrcSet?(a+='[imagesrcset="'+re(l.imageSrcSet)+'"]',typeof l.imageSizes=="string"&&(a+='[imagesizes="'+re(l.imageSizes)+'"]')):a+='[href="'+re(t)+'"]';var u=a;switch(e){case"style":u=Un(t);break;case"script":u=xn(t)}Se.has(u)||(t=x({rel:"preload",href:e==="image"&&l&&l.imageSrcSet?void 0:t,as:e},l),Se.set(u,t),n.querySelector(a)!==null||e==="style"&&n.querySelector(Ta(u))||e==="script"&&n.querySelector(Aa(u))||(e=n.createElement("link"),Ht(e,"link",t),Rt(e),n.head.appendChild(e)))}}function Um(t,e){tl.m(t,e);var l=Dn;if(l&&t){var n=e&&typeof e.as=="string"?e.as:"script",a='link[rel="modulepreload"][as="'+re(n)+'"][href="'+re(t)+'"]',u=a;switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":u=xn(t)}if(!Se.has(u)&&(t=x({rel:"modulepreload",href:t},e),Se.set(u,t),l.querySelector(a)===null)){switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(l.querySelector(Aa(u)))return}n=l.createElement("link"),Ht(n,"link",t),Rt(n),l.head.appendChild(n)}}}function xm(t,e,l){tl.S(t,e,l);var n=Dn;if(n&&t){var a=Il(n).hoistableStyles,u=Un(t);e=e||"default";var c=a.get(u);if(!c){var r={loading:0,preload:null};if(c=n.querySelector(Ta(u)))r.loading=5;else{t=x({rel:"stylesheet",href:t,"data-precedence":e},l),(l=Se.get(u))&&mf(t,l);var h=c=n.createElement("link");Rt(h),Ht(h,"link",t),h._p=new Promise(function(p,_){h.onload=p,h.onerror=_}),h.addEventListener("load",function(){r.loading|=1}),h.addEventListener("error",function(){r.loading|=2}),r.loading|=4,Lu(c,e,n)}c={type:"stylesheet",instance:c,count:1,state:r},a.set(u,c)}}}function Cm(t,e){tl.X(t,e);var l=Dn;if(l&&t){var n=Il(l).hoistableScripts,a=xn(t),u=n.get(a);u||(u=l.querySelector(Aa(a)),u||(t=x({src:t,async:!0},e),(e=Se.get(a))&&vf(t,e),u=l.createElement("script"),Rt(u),Ht(u,"link",t),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(a,u))}}function Bm(t,e){tl.M(t,e);var l=Dn;if(l&&t){var n=Il(l).hoistableScripts,a=xn(t),u=n.get(a);u||(u=l.querySelector(Aa(a)),u||(t=x({src:t,async:!0,type:"module"},e),(e=Se.get(a))&&vf(t,e),u=l.createElement("script"),Rt(u),Ht(u,"link",t),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(a,u))}}function Dh(t,e,l,n){var a=(a=J.current)?ju(a):null;if(!a)throw Error(s(446));switch(t){case"meta":case"title":return null;case"style":return typeof l.precedence=="string"&&typeof l.href=="string"?(e=Un(l.href),l=Il(a).hoistableStyles,n=l.get(e),n||(n={type:"style",instance:null,count:0,state:null},l.set(e,n)),n):{type:"void",instance:null,count:0,state:null};case"link":if(l.rel==="stylesheet"&&typeof l.href=="string"&&typeof l.precedence=="string"){t=Un(l.href);var u=Il(a).hoistableStyles,c=u.get(t);if(c||(a=a.ownerDocument||a,c={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},u.set(t,c),(u=a.querySelector(Ta(t)))&&!u._p&&(c.instance=u,c.state.loading=5),Se.has(t)||(l={rel:"preload",as:"style",href:l.href,crossOrigin:l.crossOrigin,integrity:l.integrity,media:l.media,hrefLang:l.hrefLang,referrerPolicy:l.referrerPolicy},Se.set(t,l),u||qm(a,t,l,c.state))),e&&n===null)throw Error(s(528,""));return c}if(e&&n!==null)throw Error(s(529,""));return null;case"script":return e=l.async,l=l.src,typeof l=="string"&&e&&typeof e!="function"&&typeof e!="symbol"?(e=xn(l),l=Il(a).hoistableScripts,n=l.get(e),n||(n={type:"script",instance:null,count:0,state:null},l.set(e,n)),n):{type:"void",instance:null,count:0,state:null};default:throw Error(s(444,t))}}function Un(t){return'href="'+re(t)+'"'}function Ta(t){return'link[rel="stylesheet"]['+t+"]"}function Uh(t){return x({},t,{"data-precedence":t.precedence,precedence:null})}function qm(t,e,l,n){t.querySelector('link[rel="preload"][as="style"]['+e+"]")?n.loading=1:(e=t.createElement("link"),n.preload=e,e.addEventListener("load",function(){return n.loading|=1}),e.addEventListener("error",function(){return n.loading|=2}),Ht(e,"link",l),Rt(e),t.head.appendChild(e))}function xn(t){return'[src="'+re(t)+'"]'}function Aa(t){return"script[async]"+t}function xh(t,e,l){if(e.count++,e.instance===null)switch(e.type){case"style":var n=t.querySelector('style[data-href~="'+re(l.href)+'"]');if(n)return e.instance=n,Rt(n),n;var a=x({},l,{"data-href":l.href,"data-precedence":l.precedence,href:null,precedence:null});return n=(t.ownerDocument||t).createElement("style"),Rt(n),Ht(n,"style",a),Lu(n,l.precedence,t),e.instance=n;case"stylesheet":a=Un(l.href);var u=t.querySelector(Ta(a));if(u)return e.state.loading|=4,e.instance=u,Rt(u),u;n=Uh(l),(a=Se.get(a))&&mf(n,a),u=(t.ownerDocument||t).createElement("link"),Rt(u);var c=u;return c._p=new Promise(function(r,h){c.onload=r,c.onerror=h}),Ht(u,"link",n),e.state.loading|=4,Lu(u,l.precedence,t),e.instance=u;case"script":return u=xn(l.src),(a=t.querySelector(Aa(u)))?(e.instance=a,Rt(a),a):(n=l,(a=Se.get(u))&&(n=x({},l),vf(n,a)),t=t.ownerDocument||t,a=t.createElement("script"),Rt(a),Ht(a,"link",n),t.head.appendChild(a),e.instance=a);case"void":return null;default:throw Error(s(443,e.type))}else e.type==="stylesheet"&&(e.state.loading&4)===0&&(n=e.instance,e.state.loading|=4,Lu(n,l.precedence,t));return e.instance}function Lu(t,e,l){for(var n=l.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=n.length?n[n.length-1]:null,u=a,c=0;c title"):null)}function Hm(t,e,l){if(l===1||e.itemProp!=null)return!1;switch(t){case"meta":case"title":return!0;case"style":if(typeof e.precedence!="string"||typeof e.href!="string"||e.href==="")break;return!0;case"link":if(typeof e.rel!="string"||typeof e.href!="string"||e.href===""||e.onLoad||e.onError)break;switch(e.rel){case"stylesheet":return t=e.disabled,typeof e.precedence=="string"&&t==null;default:return!0}case"script":if(e.async&&typeof e.async!="function"&&typeof e.async!="symbol"&&!e.onLoad&&!e.onError&&e.src&&typeof e.src=="string")return!0}return!1}function qh(t){return!(t.type==="stylesheet"&&(t.state.loading&3)===0)}function Ym(t,e,l,n){if(l.type==="stylesheet"&&(typeof n.media!="string"||matchMedia(n.media).matches!==!1)&&(l.state.loading&4)===0){if(l.instance===null){var a=Un(n.href),u=e.querySelector(Ta(a));if(u){e=u._p,e!==null&&typeof e=="object"&&typeof e.then=="function"&&(t.count++,t=Qu.bind(t),e.then(t,t)),l.state.loading|=4,l.instance=u,Rt(u);return}u=e.ownerDocument||e,n=Uh(n),(a=Se.get(a))&&mf(n,a),u=u.createElement("link"),Rt(u);var c=u;c._p=new Promise(function(r,h){c.onload=r,c.onerror=h}),Ht(u,"link",n),l.instance=u}t.stylesheets===null&&(t.stylesheets=new Map),t.stylesheets.set(l,e),(e=l.state.preload)&&(l.state.loading&3)===0&&(t.count++,l=Qu.bind(t),e.addEventListener("load",l),e.addEventListener("error",l))}}var gf=0;function jm(t,e){return t.stylesheets&&t.count===0&&Vu(t,t.stylesheets),0gf?50:800)+e);return t.unsuspend=l,function(){t.unsuspend=null,clearTimeout(n),clearTimeout(a)}}:null}function Qu(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Vu(this,this.stylesheets);else if(this.unsuspend){var t=this.unsuspend;this.unsuspend=null,t()}}}var Gu=null;function Vu(t,e){t.stylesheets=null,t.unsuspend!==null&&(t.count++,Gu=new Map,e.forEach(Lm,t),Gu=null,Qu.call(t))}function Lm(t,e){if(!(e.state.loading&4)){var l=Gu.get(t);if(l)var n=l.get(null);else{l=new Map,Gu.set(t,l);for(var a=t.querySelectorAll("link[data-precedence],style[data-precedence]"),u=0;u"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(o)}catch(i){console.error(i)}}return o(),Of.exports=e0(),Of.exports}var n0=l0();const Be=Object.create(null);Be.open="0";Be.close="1";Be.ping="2";Be.pong="3";Be.message="4";Be.upgrade="5";Be.noop="6";const Pu=Object.create(null);Object.keys(Be).forEach(o=>{Pu[Be[o]]=o});const Bf={type:"error",data:"parser error"},od=typeof Blob=="function"||typeof Blob<"u"&&Object.prototype.toString.call(Blob)==="[object BlobConstructor]",rd=typeof ArrayBuffer=="function",hd=o=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(o):o&&o.buffer instanceof ArrayBuffer,Qf=({type:o,data:i},f,s)=>od&&i instanceof Blob?f?s(i):ud(i,s):rd&&(i instanceof ArrayBuffer||hd(i))?f?s(i):ud(new Blob([i]),s):s(Be[o]+(i||"")),ud=(o,i)=>{const f=new FileReader;return f.onload=function(){const s=f.result.split(",")[1];i("b"+(s||""))},f.readAsDataURL(o)};function id(o){return o instanceof Uint8Array?o:o instanceof ArrayBuffer?new Uint8Array(o):new Uint8Array(o.buffer,o.byteOffset,o.byteLength)}let Df;function a0(o,i){if(od&&o.data instanceof Blob)return o.data.arrayBuffer().then(id).then(i);if(rd&&(o.data instanceof ArrayBuffer||hd(o.data)))return i(id(o.data));Qf(o,!1,f=>{Df||(Df=new TextEncoder),i(Df.encode(f))})}const cd="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",xa=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(let o=0;o{let i=o.length*.75,f=o.length,s,m=0,E,R,B,M;o[o.length-1]==="="&&(i--,o[o.length-2]==="="&&i--);const A=new ArrayBuffer(i),Q=new Uint8Array(A);for(s=0;s>4,Q[m++]=(R&15)<<4|B>>2,Q[m++]=(B&3)<<6|M&63;return A},i0=typeof ArrayBuffer=="function",Gf=(o,i)=>{if(typeof o!="string")return{type:"message",data:dd(o,i)};const f=o.charAt(0);return f==="b"?{type:"message",data:c0(o.substring(1),i)}:Pu[f]?o.length>1?{type:Pu[f],data:o.substring(1)}:{type:Pu[f]}:Bf},c0=(o,i)=>{if(i0){const f=u0(o);return dd(f,i)}else return{base64:!0,data:o}},dd=(o,i)=>{switch(i){case"blob":return o instanceof Blob?o:new Blob([o]);case"arraybuffer":default:return o instanceof ArrayBuffer?o:o.buffer}},yd="",f0=(o,i)=>{const f=o.length,s=new Array(f);let m=0;o.forEach((E,R)=>{Qf(E,!1,B=>{s[R]=B,++m===f&&i(s.join(yd))})})},s0=(o,i)=>{const f=o.split(yd),s=[];for(let m=0;m{const s=f.length;let m;if(s<126)m=new Uint8Array(1),new DataView(m.buffer).setUint8(0,s);else if(s<65536){m=new Uint8Array(3);const E=new DataView(m.buffer);E.setUint8(0,126),E.setUint16(1,s)}else{m=new Uint8Array(9);const E=new DataView(m.buffer);E.setUint8(0,127),E.setBigUint64(1,BigInt(s))}o.data&&typeof o.data!="string"&&(m[0]|=128),i.enqueue(m),i.enqueue(f)})}})}let Uf;function Fu(o){return o.reduce((i,f)=>i+f.length,0)}function Iu(o,i){if(o[0].length===i)return o.shift();const f=new Uint8Array(i);let s=0;for(let m=0;mMath.pow(2,21)-1){B.enqueue(Bf);break}m=Q*Math.pow(2,32)+A.getUint32(4),s=3}else{if(Fu(f)o){B.enqueue(Bf);break}}}})}const md=4;function Ot(o){if(o)return h0(o)}function h0(o){for(var i in Ot.prototype)o[i]=Ot.prototype[i];return o}Ot.prototype.on=Ot.prototype.addEventListener=function(o,i){return this._callbacks=this._callbacks||{},(this._callbacks["$"+o]=this._callbacks["$"+o]||[]).push(i),this};Ot.prototype.once=function(o,i){function f(){this.off(o,f),i.apply(this,arguments)}return f.fn=i,this.on(o,f),this};Ot.prototype.off=Ot.prototype.removeListener=Ot.prototype.removeAllListeners=Ot.prototype.removeEventListener=function(o,i){if(this._callbacks=this._callbacks||{},arguments.length==0)return this._callbacks={},this;var f=this._callbacks["$"+o];if(!f)return this;if(arguments.length==1)return delete this._callbacks["$"+o],this;for(var s,m=0;mPromise.resolve().then(i):(i,f)=>f(i,0),be=typeof self<"u"?self:typeof window<"u"?window:Function("return this")(),d0="arraybuffer";function vd(o,...i){return i.reduce((f,s)=>(o.hasOwnProperty(s)&&(f[s]=o[s]),f),{})}const y0=be.setTimeout,m0=be.clearTimeout;function ai(o,i){i.useNativeTimers?(o.setTimeoutFn=y0.bind(be),o.clearTimeoutFn=m0.bind(be)):(o.setTimeoutFn=be.setTimeout.bind(be),o.clearTimeoutFn=be.clearTimeout.bind(be))}const v0=1.33;function g0(o){return typeof o=="string"?p0(o):Math.ceil((o.byteLength||o.size)*v0)}function p0(o){let i=0,f=0;for(let s=0,m=o.length;s=57344?f+=3:(s++,f+=4);return f}function gd(){return Date.now().toString(36).substring(3)+Math.random().toString(36).substring(2,5)}function S0(o){let i="";for(let f in o)o.hasOwnProperty(f)&&(i.length&&(i+="&"),i+=encodeURIComponent(f)+"="+encodeURIComponent(o[f]));return i}function b0(o){let i={},f=o.split("&");for(let s=0,m=f.length;s{this.readyState="paused",i()};if(this._polling||!this.writable){let s=0;this._polling&&(s++,this.once("pollComplete",function(){--s||f()})),this.writable||(s++,this.once("drain",function(){--s||f()}))}else f()}_poll(){this._polling=!0,this.doPoll(),this.emitReserved("poll")}onData(i){const f=s=>{if(this.readyState==="opening"&&s.type==="open"&&this.onOpen(),s.type==="close")return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(s)};s0(i,this.socket.binaryType).forEach(f),this.readyState!=="closed"&&(this._polling=!1,this.emitReserved("pollComplete"),this.readyState==="open"&&this._poll())}doClose(){const i=()=>{this.write([{type:"close"}])};this.readyState==="open"?i():this.once("open",i)}write(i){this.writable=!1,f0(i,f=>{this.doWrite(f,()=>{this.writable=!0,this.emitReserved("drain")})})}uri(){const i=this.opts.secure?"https":"http",f=this.query||{};return this.opts.timestampRequests!==!1&&(f[this.opts.timestampParam]=gd()),!this.supportsBinary&&!f.sid&&(f.b64=1),this.createUri(i,f)}}let pd=!1;try{pd=typeof XMLHttpRequest<"u"&&"withCredentials"in new XMLHttpRequest}catch{}const T0=pd;function A0(){}class z0 extends E0{constructor(i){if(super(i),typeof location<"u"){const f=location.protocol==="https:";let s=location.port;s||(s=f?"443":"80"),this.xd=typeof location<"u"&&i.hostname!==location.hostname||s!==i.port}}doWrite(i,f){const s=this.request({method:"POST",data:i});s.on("success",f),s.on("error",(m,E)=>{this.onError("xhr post error",m,E)})}doPoll(){const i=this.request();i.on("data",this.onData.bind(this)),i.on("error",(f,s)=>{this.onError("xhr poll error",f,s)}),this.pollXhr=i}}class Ce extends Ot{constructor(i,f,s){super(),this.createRequest=i,ai(this,s),this._opts=s,this._method=s.method||"GET",this._uri=f,this._data=s.data!==void 0?s.data:null,this._create()}_create(){var i;const f=vd(this._opts,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");f.xdomain=!!this._opts.xd;const s=this._xhr=this.createRequest(f);try{s.open(this._method,this._uri,!0);try{if(this._opts.extraHeaders){s.setDisableHeaderCheck&&s.setDisableHeaderCheck(!0);for(let m in this._opts.extraHeaders)this._opts.extraHeaders.hasOwnProperty(m)&&s.setRequestHeader(m,this._opts.extraHeaders[m])}}catch{}if(this._method==="POST")try{s.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch{}try{s.setRequestHeader("Accept","*/*")}catch{}(i=this._opts.cookieJar)===null||i===void 0||i.addCookies(s),"withCredentials"in s&&(s.withCredentials=this._opts.withCredentials),this._opts.requestTimeout&&(s.timeout=this._opts.requestTimeout),s.onreadystatechange=()=>{var m;s.readyState===3&&((m=this._opts.cookieJar)===null||m===void 0||m.parseCookies(s.getResponseHeader("set-cookie"))),s.readyState===4&&(s.status===200||s.status===1223?this._onLoad():this.setTimeoutFn(()=>{this._onError(typeof s.status=="number"?s.status:0)},0))},s.send(this._data)}catch(m){this.setTimeoutFn(()=>{this._onError(m)},0);return}typeof document<"u"&&(this._index=Ce.requestsCount++,Ce.requests[this._index]=this)}_onError(i){this.emitReserved("error",i,this._xhr),this._cleanup(!0)}_cleanup(i){if(!(typeof this._xhr>"u"||this._xhr===null)){if(this._xhr.onreadystatechange=A0,i)try{this._xhr.abort()}catch{}typeof document<"u"&&delete Ce.requests[this._index],this._xhr=null}}_onLoad(){const i=this._xhr.responseText;i!==null&&(this.emitReserved("data",i),this.emitReserved("success"),this._cleanup())}abort(){this._cleanup()}}Ce.requestsCount=0;Ce.requests={};if(typeof document<"u"){if(typeof attachEvent=="function")attachEvent("onunload",fd);else if(typeof addEventListener=="function"){const o="onpagehide"in be?"pagehide":"unload";addEventListener(o,fd,!1)}}function fd(){for(let o in Ce.requests)Ce.requests.hasOwnProperty(o)&&Ce.requests[o].abort()}const O0=(function(){const o=Sd({xdomain:!1});return o&&o.responseType!==null})();class N0 extends z0{constructor(i){super(i);const f=i&&i.forceBase64;this.supportsBinary=O0&&!f}request(i={}){return Object.assign(i,{xd:this.xd},this.opts),new Ce(Sd,this.uri(),i)}}function Sd(o){const i=o.xdomain;try{if(typeof XMLHttpRequest<"u"&&(!i||T0))return new XMLHttpRequest}catch{}if(!i)try{return new be[["Active"].concat("Object").join("X")]("Microsoft.XMLHTTP")}catch{}}const bd=typeof navigator<"u"&&typeof navigator.product=="string"&&navigator.product.toLowerCase()==="reactnative";class M0 extends Vf{get name(){return"websocket"}doOpen(){const i=this.uri(),f=this.opts.protocols,s=bd?{}:vd(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(s.headers=this.opts.extraHeaders);try{this.ws=this.createSocket(i,f,s)}catch(m){return this.emitReserved("error",m)}this.ws.binaryType=this.socket.binaryType,this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=i=>this.onClose({description:"websocket connection closed",context:i}),this.ws.onmessage=i=>this.onData(i.data),this.ws.onerror=i=>this.onError("websocket error",i)}write(i){this.writable=!1;for(let f=0;f{try{this.doWrite(s,E)}catch{}m&&ni(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){typeof this.ws<"u"&&(this.ws.onerror=()=>{},this.ws.close(),this.ws=null)}uri(){const i=this.opts.secure?"wss":"ws",f=this.query||{};return this.opts.timestampRequests&&(f[this.opts.timestampParam]=gd()),this.supportsBinary||(f.b64=1),this.createUri(i,f)}}const xf=be.WebSocket||be.MozWebSocket;class R0 extends M0{createSocket(i,f,s){return bd?new xf(i,f,s):f?new xf(i,f):new xf(i)}doWrite(i,f){this.ws.send(f)}}class D0 extends Vf{get name(){return"webtransport"}doOpen(){try{this._transport=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name])}catch(i){return this.emitReserved("error",i)}this._transport.closed.then(()=>{this.onClose()}).catch(i=>{this.onError("webtransport error",i)}),this._transport.ready.then(()=>{this._transport.createBidirectionalStream().then(i=>{const f=r0(Number.MAX_SAFE_INTEGER,this.socket.binaryType),s=i.readable.pipeThrough(f).getReader(),m=o0();m.readable.pipeTo(i.writable),this._writer=m.writable.getWriter();const E=()=>{s.read().then(({done:B,value:M})=>{B||(this.onPacket(M),E())}).catch(B=>{})};E();const R={type:"open"};this.query.sid&&(R.data=`{"sid":"${this.query.sid}"}`),this._writer.write(R).then(()=>this.onOpen())})})}write(i){this.writable=!1;for(let f=0;f{m&&ni(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){var i;(i=this._transport)===null||i===void 0||i.close()}}const U0={websocket:R0,webtransport:D0,polling:N0},x0=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,C0=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function qf(o){if(o.length>8e3)throw"URI too long";const i=o,f=o.indexOf("["),s=o.indexOf("]");f!=-1&&s!=-1&&(o=o.substring(0,f)+o.substring(f,s).replace(/:/g,";")+o.substring(s,o.length));let m=x0.exec(o||""),E={},R=14;for(;R--;)E[C0[R]]=m[R]||"";return f!=-1&&s!=-1&&(E.source=i,E.host=E.host.substring(1,E.host.length-1).replace(/;/g,":"),E.authority=E.authority.replace("[","").replace("]","").replace(/;/g,":"),E.ipv6uri=!0),E.pathNames=B0(E,E.path),E.queryKey=q0(E,E.query),E}function B0(o,i){const f=/\/{2,9}/g,s=i.replace(f,"/").split("/");return(i.slice(0,1)=="/"||i.length===0)&&s.splice(0,1),i.slice(-1)=="/"&&s.splice(s.length-1,1),s}function q0(o,i){const f={};return i.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,function(s,m,E){m&&(f[m]=E)}),f}const Hf=typeof addEventListener=="function"&&typeof removeEventListener=="function",ti=[];Hf&&addEventListener("offline",()=>{ti.forEach(o=>o())},!1);class Nl extends Ot{constructor(i,f){if(super(),this.binaryType=d0,this.writeBuffer=[],this._prevBufferLen=0,this._pingInterval=-1,this._pingTimeout=-1,this._maxPayload=-1,this._pingTimeoutTime=1/0,i&&typeof i=="object"&&(f=i,i=null),i){const s=qf(i);f.hostname=s.host,f.secure=s.protocol==="https"||s.protocol==="wss",f.port=s.port,s.query&&(f.query=s.query)}else f.host&&(f.hostname=qf(f.host).host);ai(this,f),this.secure=f.secure!=null?f.secure:typeof location<"u"&&location.protocol==="https:",f.hostname&&!f.port&&(f.port=this.secure?"443":"80"),this.hostname=f.hostname||(typeof location<"u"?location.hostname:"localhost"),this.port=f.port||(typeof location<"u"&&location.port?location.port:this.secure?"443":"80"),this.transports=[],this._transportsByName={},f.transports.forEach(s=>{const m=s.prototype.name;this.transports.push(m),this._transportsByName[m]=s}),this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},f),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),typeof this.opts.query=="string"&&(this.opts.query=b0(this.opts.query)),Hf&&(this.opts.closeOnBeforeunload&&(this._beforeunloadEventListener=()=>{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this._beforeunloadEventListener,!1)),this.hostname!=="localhost"&&(this._offlineEventListener=()=>{this._onClose("transport close",{description:"network connection lost"})},ti.push(this._offlineEventListener))),this.opts.withCredentials&&(this._cookieJar=void 0),this._open()}createTransport(i){const f=Object.assign({},this.opts.query);f.EIO=md,f.transport=i,this.id&&(f.sid=this.id);const s=Object.assign({},this.opts,{query:f,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[i]);return new this._transportsByName[i](s)}_open(){if(this.transports.length===0){this.setTimeoutFn(()=>{this.emitReserved("error","No transports available")},0);return}const i=this.opts.rememberUpgrade&&Nl.priorWebsocketSuccess&&this.transports.indexOf("websocket")!==-1?"websocket":this.transports[0];this.readyState="opening";const f=this.createTransport(i);f.open(),this.setTransport(f)}setTransport(i){this.transport&&this.transport.removeAllListeners(),this.transport=i,i.on("drain",this._onDrain.bind(this)).on("packet",this._onPacket.bind(this)).on("error",this._onError.bind(this)).on("close",f=>this._onClose("transport close",f))}onOpen(){this.readyState="open",Nl.priorWebsocketSuccess=this.transport.name==="websocket",this.emitReserved("open"),this.flush()}_onPacket(i){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing")switch(this.emitReserved("packet",i),this.emitReserved("heartbeat"),i.type){case"open":this.onHandshake(JSON.parse(i.data));break;case"ping":this._sendPacket("pong"),this.emitReserved("ping"),this.emitReserved("pong"),this._resetPingTimeout();break;case"error":const f=new Error("server error");f.code=i.data,this._onError(f);break;case"message":this.emitReserved("data",i.data),this.emitReserved("message",i.data);break}}onHandshake(i){this.emitReserved("handshake",i),this.id=i.sid,this.transport.query.sid=i.sid,this._pingInterval=i.pingInterval,this._pingTimeout=i.pingTimeout,this._maxPayload=i.maxPayload,this.onOpen(),this.readyState!=="closed"&&this._resetPingTimeout()}_resetPingTimeout(){this.clearTimeoutFn(this._pingTimeoutTimer);const i=this._pingInterval+this._pingTimeout;this._pingTimeoutTime=Date.now()+i,this._pingTimeoutTimer=this.setTimeoutFn(()=>{this._onClose("ping timeout")},i),this.opts.autoUnref&&this._pingTimeoutTimer.unref()}_onDrain(){this.writeBuffer.splice(0,this._prevBufferLen),this._prevBufferLen=0,this.writeBuffer.length===0?this.emitReserved("drain"):this.flush()}flush(){if(this.readyState!=="closed"&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){const i=this._getWritablePackets();this.transport.send(i),this._prevBufferLen=i.length,this.emitReserved("flush")}}_getWritablePackets(){if(!(this._maxPayload&&this.transport.name==="polling"&&this.writeBuffer.length>1))return this.writeBuffer;let f=1;for(let s=0;s0&&f>this._maxPayload)return this.writeBuffer.slice(0,s);f+=2}return this.writeBuffer}_hasPingExpired(){if(!this._pingTimeoutTime)return!0;const i=Date.now()>this._pingTimeoutTime;return i&&(this._pingTimeoutTime=0,ni(()=>{this._onClose("ping timeout")},this.setTimeoutFn)),i}write(i,f,s){return this._sendPacket("message",i,f,s),this}send(i,f,s){return this._sendPacket("message",i,f,s),this}_sendPacket(i,f,s,m){if(typeof f=="function"&&(m=f,f=void 0),typeof s=="function"&&(m=s,s=null),this.readyState==="closing"||this.readyState==="closed")return;s=s||{},s.compress=s.compress!==!1;const E={type:i,data:f,options:s};this.emitReserved("packetCreate",E),this.writeBuffer.push(E),m&&this.once("flush",m),this.flush()}close(){const i=()=>{this._onClose("forced close"),this.transport.close()},f=()=>{this.off("upgrade",f),this.off("upgradeError",f),i()},s=()=>{this.once("upgrade",f),this.once("upgradeError",f)};return(this.readyState==="opening"||this.readyState==="open")&&(this.readyState="closing",this.writeBuffer.length?this.once("drain",()=>{this.upgrading?s():i()}):this.upgrading?s():i()),this}_onError(i){if(Nl.priorWebsocketSuccess=!1,this.opts.tryAllTransports&&this.transports.length>1&&this.readyState==="opening")return this.transports.shift(),this._open();this.emitReserved("error",i),this._onClose("transport error",i)}_onClose(i,f){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing"){if(this.clearTimeoutFn(this._pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),Hf&&(this._beforeunloadEventListener&&removeEventListener("beforeunload",this._beforeunloadEventListener,!1),this._offlineEventListener)){const s=ti.indexOf(this._offlineEventListener);s!==-1&&ti.splice(s,1)}this.readyState="closed",this.id=null,this.emitReserved("close",i,f),this.writeBuffer=[],this._prevBufferLen=0}}}Nl.protocol=md;class H0 extends Nl{constructor(){super(...arguments),this._upgrades=[]}onOpen(){if(super.onOpen(),this.readyState==="open"&&this.opts.upgrade)for(let i=0;i{s||(f.send([{type:"ping",data:"probe"}]),f.once("packet",x=>{if(!s)if(x.type==="pong"&&x.data==="probe"){if(this.upgrading=!0,this.emitReserved("upgrading",f),!f)return;Nl.priorWebsocketSuccess=f.name==="websocket",this.transport.pause(()=>{s||this.readyState!=="closed"&&(Q(),this.setTransport(f),f.send([{type:"upgrade"}]),this.emitReserved("upgrade",f),f=null,this.upgrading=!1,this.flush())})}else{const K=new Error("probe error");K.transport=f.name,this.emitReserved("upgradeError",K)}}))};function E(){s||(s=!0,Q(),f.close(),f=null)}const R=x=>{const K=new Error("probe error: "+x);K.transport=f.name,E(),this.emitReserved("upgradeError",K)};function B(){R("transport closed")}function M(){R("socket closed")}function A(x){f&&x.name!==f.name&&E()}const Q=()=>{f.removeListener("open",m),f.removeListener("error",R),f.removeListener("close",B),this.off("close",M),this.off("upgrading",A)};f.once("open",m),f.once("error",R),f.once("close",B),this.once("close",M),this.once("upgrading",A),this._upgrades.indexOf("webtransport")!==-1&&i!=="webtransport"?this.setTimeoutFn(()=>{s||f.open()},200):f.open()}onHandshake(i){this._upgrades=this._filterUpgrades(i.upgrades),super.onHandshake(i)}_filterUpgrades(i){const f=[];for(let s=0;sU0[m]).filter(m=>!!m)),super(i,s)}};function j0(o,i="",f){let s=o;f=f||typeof location<"u"&&location,o==null&&(o=f.protocol+"//"+f.host),typeof o=="string"&&(o.charAt(0)==="/"&&(o.charAt(1)==="/"?o=f.protocol+o:o=f.host+o),/^(https?|wss?):\/\//.test(o)||(typeof f<"u"?o=f.protocol+"//"+o:o="https://"+o),s=qf(o)),s.port||(/^(http|ws)$/.test(s.protocol)?s.port="80":/^(http|ws)s$/.test(s.protocol)&&(s.port="443")),s.path=s.path||"/";const E=s.host.indexOf(":")!==-1?"["+s.host+"]":s.host;return s.id=s.protocol+"://"+E+":"+s.port+i,s.href=s.protocol+"://"+E+(f&&f.port===s.port?"":":"+s.port),s}const L0=typeof ArrayBuffer=="function",X0=o=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(o):o.buffer instanceof ArrayBuffer,_d=Object.prototype.toString,Q0=typeof Blob=="function"||typeof Blob<"u"&&_d.call(Blob)==="[object BlobConstructor]",G0=typeof File=="function"||typeof File<"u"&&_d.call(File)==="[object FileConstructor]";function Zf(o){return L0&&(o instanceof ArrayBuffer||X0(o))||Q0&&o instanceof Blob||G0&&o instanceof File}function ei(o,i){if(!o||typeof o!="object")return!1;if(Array.isArray(o)){for(let f=0,s=o.length;f=0&&o.num{delete this.acks[i];for(let B=0;B{this.io.clearTimeoutFn(E),f.apply(this,B)};R.withError=!0,this.acks[i]=R}emitWithAck(i,...f){return new Promise((s,m)=>{const E=(R,B)=>R?m(R):s(B);E.withError=!0,f.push(E),this.emit(i,...f)})}_addToQueue(i){let f;typeof i[i.length-1]=="function"&&(f=i.pop());const s={id:this._queueSeq++,tryCount:0,pending:!1,args:i,flags:Object.assign({fromQueue:!0},this.flags)};i.push((m,...E)=>s!==this._queue[0]?void 0:(m!==null?s.tryCount>this._opts.retries&&(this._queue.shift(),f&&f(m)):(this._queue.shift(),f&&f(null,...E)),s.pending=!1,this._drainQueue())),this._queue.push(s),this._drainQueue()}_drainQueue(i=!1){if(!this.connected||this._queue.length===0)return;const f=this._queue[0];f.pending&&!i||(f.pending=!0,f.tryCount++,this.flags=f.flags,this.emit.apply(this,f.args))}packet(i){i.nsp=this.nsp,this.io._packet(i)}onopen(){typeof this.auth=="function"?this.auth(i=>{this._sendConnectPacket(i)}):this._sendConnectPacket(this.auth)}_sendConnectPacket(i){this.packet({type:tt.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},i):i})}onerror(i){this.connected||this.emitReserved("connect_error",i)}onclose(i,f){this.connected=!1,delete this.id,this.emitReserved("disconnect",i,f),this._clearAcks()}_clearAcks(){Object.keys(this.acks).forEach(i=>{if(!this.sendBuffer.some(s=>String(s.id)===i)){const s=this.acks[i];delete this.acks[i],s.withError&&s.call(this,new Error("socket has been disconnected"))}})}onpacket(i){if(i.nsp===this.nsp)switch(i.type){case tt.CONNECT:i.data&&i.data.sid?this.onconnect(i.data.sid,i.data.pid):this.emitReserved("connect_error",new Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case tt.EVENT:case tt.BINARY_EVENT:this.onevent(i);break;case tt.ACK:case tt.BINARY_ACK:this.onack(i);break;case tt.DISCONNECT:this.ondisconnect();break;case tt.CONNECT_ERROR:this.destroy();const s=new Error(i.data.message);s.data=i.data.data,this.emitReserved("connect_error",s);break}}onevent(i){const f=i.data||[];i.id!=null&&f.push(this.ack(i.id)),this.connected?this.emitEvent(f):this.receiveBuffer.push(Object.freeze(f))}emitEvent(i){if(this._anyListeners&&this._anyListeners.length){const f=this._anyListeners.slice();for(const s of f)s.apply(this,i)}super.emit.apply(this,i),this._pid&&i.length&&typeof i[i.length-1]=="string"&&(this._lastOffset=i[i.length-1])}ack(i){const f=this;let s=!1;return function(...m){s||(s=!0,f.packet({type:tt.ACK,id:i,data:m}))}}onack(i){const f=this.acks[i.id];typeof f=="function"&&(delete this.acks[i.id],f.withError&&i.data.unshift(null),f.apply(this,i.data))}onconnect(i,f){this.id=i,this.recovered=f&&this._pid===f,this._pid=f,this.connected=!0,this.emitBuffered(),this.emitReserved("connect"),this._drainQueue(!0)}emitBuffered(){this.receiveBuffer.forEach(i=>this.emitEvent(i)),this.receiveBuffer=[],this.sendBuffer.forEach(i=>{this.notifyOutgoingListeners(i),this.packet(i)}),this.sendBuffer=[]}ondisconnect(){this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach(i=>i()),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&this.packet({type:tt.DISCONNECT}),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(i){return this.flags.compress=i,this}get volatile(){return this.flags.volatile=!0,this}timeout(i){return this.flags.timeout=i,this}onAny(i){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(i),this}prependAny(i){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(i),this}offAny(i){if(!this._anyListeners)return this;if(i){const f=this._anyListeners;for(let s=0;s0&&o.jitter<=1?o.jitter:0,this.attempts=0}Bn.prototype.duration=function(){var o=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var i=Math.random(),f=Math.floor(i*this.jitter*o);o=(Math.floor(i*10)&1)==0?o-f:o+f}return Math.min(o,this.max)|0};Bn.prototype.reset=function(){this.attempts=0};Bn.prototype.setMin=function(o){this.ms=o};Bn.prototype.setMax=function(o){this.max=o};Bn.prototype.setJitter=function(o){this.jitter=o};class Lf extends Ot{constructor(i,f){var s;super(),this.nsps={},this.subs=[],i&&typeof i=="object"&&(f=i,i=void 0),f=f||{},f.path=f.path||"/socket.io",this.opts=f,ai(this,f),this.reconnection(f.reconnection!==!1),this.reconnectionAttempts(f.reconnectionAttempts||1/0),this.reconnectionDelay(f.reconnectionDelay||1e3),this.reconnectionDelayMax(f.reconnectionDelayMax||5e3),this.randomizationFactor((s=f.randomizationFactor)!==null&&s!==void 0?s:.5),this.backoff=new Bn({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(f.timeout==null?2e4:f.timeout),this._readyState="closed",this.uri=i;const m=f.parser||W0;this.encoder=new m.Encoder,this.decoder=new m.Decoder,this._autoConnect=f.autoConnect!==!1,this._autoConnect&&this.open()}reconnection(i){return arguments.length?(this._reconnection=!!i,i||(this.skipReconnect=!0),this):this._reconnection}reconnectionAttempts(i){return i===void 0?this._reconnectionAttempts:(this._reconnectionAttempts=i,this)}reconnectionDelay(i){var f;return i===void 0?this._reconnectionDelay:(this._reconnectionDelay=i,(f=this.backoff)===null||f===void 0||f.setMin(i),this)}randomizationFactor(i){var f;return i===void 0?this._randomizationFactor:(this._randomizationFactor=i,(f=this.backoff)===null||f===void 0||f.setJitter(i),this)}reconnectionDelayMax(i){var f;return i===void 0?this._reconnectionDelayMax:(this._reconnectionDelayMax=i,(f=this.backoff)===null||f===void 0||f.setMax(i),this)}timeout(i){return arguments.length?(this._timeout=i,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&this.backoff.attempts===0&&this.reconnect()}open(i){if(~this._readyState.indexOf("open"))return this;this.engine=new Y0(this.uri,this.opts);const f=this.engine,s=this;this._readyState="opening",this.skipReconnect=!1;const m=ze(f,"open",function(){s.onopen(),i&&i()}),E=B=>{this.cleanup(),this._readyState="closed",this.emitReserved("error",B),i?i(B):this.maybeReconnectOnOpen()},R=ze(f,"error",E);if(this._timeout!==!1){const B=this._timeout,M=this.setTimeoutFn(()=>{m(),E(new Error("timeout")),f.close()},B);this.opts.autoUnref&&M.unref(),this.subs.push(()=>{this.clearTimeoutFn(M)})}return this.subs.push(m),this.subs.push(R),this}connect(i){return this.open(i)}onopen(){this.cleanup(),this._readyState="open",this.emitReserved("open");const i=this.engine;this.subs.push(ze(i,"ping",this.onping.bind(this)),ze(i,"data",this.ondata.bind(this)),ze(i,"error",this.onerror.bind(this)),ze(i,"close",this.onclose.bind(this)),ze(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(i){try{this.decoder.add(i)}catch(f){this.onclose("parse error",f)}}ondecoded(i){ni(()=>{this.emitReserved("packet",i)},this.setTimeoutFn)}onerror(i){this.emitReserved("error",i)}socket(i,f){let s=this.nsps[i];return s?this._autoConnect&&!s.active&&s.connect():(s=new Ed(this,i,f),this.nsps[i]=s),s}_destroy(i){const f=Object.keys(this.nsps);for(const s of f)if(this.nsps[s].active)return;this._close()}_packet(i){const f=this.encoder.encode(i);for(let s=0;si()),this.subs.length=0,this.decoder.destroy()}_close(){this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close")}disconnect(){return this._close()}onclose(i,f){var s;this.cleanup(),(s=this.engine)===null||s===void 0||s.close(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",i,f),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;const i=this;if(this.backoff.attempts>=this._reconnectionAttempts)this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{const f=this.backoff.duration();this._reconnecting=!0;const s=this.setTimeoutFn(()=>{i.skipReconnect||(this.emitReserved("reconnect_attempt",i.backoff.attempts),!i.skipReconnect&&i.open(m=>{m?(i._reconnecting=!1,i.reconnect(),this.emitReserved("reconnect_error",m)):i.onreconnect()}))},f);this.opts.autoUnref&&s.unref(),this.subs.push(()=>{this.clearTimeoutFn(s)})}}onreconnect(){const i=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",i)}}const Ua={};function li(o,i){typeof o=="object"&&(i=o,o=void 0),i=i||{};const f=j0(o,i.path||"/socket.io"),s=f.source,m=f.id,E=f.path,R=Ua[m]&&E in Ua[m].nsps,B=i.forceNew||i["force new connection"]||i.multiplex===!1||R;let M;return B?M=new Lf(s,i):(Ua[m]||(Ua[m]=new Lf(s,i)),M=Ua[m]),f.query&&!i.query&&(i.query=f.queryKey),M.socket(f.path,i)}Object.assign(li,{Manager:Lf,Socket:Ed,io:li,connect:li});const Cf="http://192.168.0.86:8080".trim(),F0=Cf&&Cf.length>0?Cf:void 0,Kf=li(F0,{transports:["websocket"],query:{role:"user"}});Kf.on("connect_error",o=>{console.error("Socket connection error:",o.message)});const Td=Mt.createContext(Kf),I0=({children:o})=>Y.jsx(Td.Provider,{value:Kf,children:o}),P0=()=>Mt.useContext(Td),Ad=Mt.createContext({connected:!1,session:null,logs:[],login:async()=>{},setRole:async()=>{},requestControl:async()=>{},releaseControl:async()=>{},subscribeAll:async()=>{}});function tv(o){return Mt.useCallback((i,f={})=>new Promise((s,m)=>{o.emit(i,f,(E={})=>{E.error?m(new Error(E.error)):s(E)})}),[o])}function ev({children:o}){const i=P0(),f=tv(i),[s,m]=Mt.useState(null),[E,R]=Mt.useState([]),[B,M]=Mt.useState(i.connected);Mt.useEffect(()=>{const x=()=>M(!0),K=()=>M(!1);return i.on("connect",x),i.on("disconnect",K),()=>{i.off("connect",x),i.off("disconnect",K)}},[i]),Mt.useEffect(()=>{function x(_t){m(_t)}function K(_t=[]){R(_t)}function Yt(_t){R(Ut=>[...Ut.slice(-199),_t])}return i.on("session:sync",x),i.on("log:init",K),i.on("log:entry",Yt),()=>{i.off("session:sync",x),i.off("log:init",K),i.off("log:entry",Yt)}},[i]);const A=Mt.useMemo(()=>({login:(x,K)=>f("auth:login",{username:x,password:K}),setRole:x=>f("session:setRole",{role:x}),requestControl:(x,K={})=>f("session:requestControl",{roverId:x,...K}),releaseControl:x=>f("session:releaseControl",{roverId:x}),subscribeAll:()=>f("session:subscribeAll")}),[f]),Q=Mt.useMemo(()=>({connected:B,session:s,logs:E,...A}),[A,B,E,s]);return Y.jsx(Ad.Provider,{value:Q,children:o})}function qn(){return Mt.useContext(Ad)}function lv({connected:o,role:i,mode:f}){const s=o?"bg-emerald-500/20 text-emerald-300":"bg-red-500/20 text-red-200";return Y.jsxs("div",{className:"flex flex-wrap items-center gap-3 text-sm",children:[Y.jsx("span",{className:`rounded-full px-3 py-1 font-medium ${s}`,children:o?"Connected":"Disconnected"}),Y.jsxs("span",{className:"rounded-full bg-slate-800/80 px-3 py-1 text-slate-200",children:["Role: ",i||"unknown"]}),Y.jsxs("span",{className:"rounded-full bg-slate-800/80 px-3 py-1 text-slate-200",children:["Mode: ",f||"--"]})]})}function nv(){const{logs:o}=qn();return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/70 p-4",children:[Y.jsxs("header",{className:"mb-3 flex items-center justify-between",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Server logs"}),Y.jsxs("span",{className:"text-xs uppercase tracking-[0.2em] text-slate-500",children:[o.length," entries"]})]}),Y.jsx("div",{className:"h-64 overflow-y-auto rounded-xl bg-slate-950/40 p-3 text-xs font-mono text-slate-300",children:o.length===0?Y.jsx("p",{children:"No logs yet."}):o.slice().reverse().map(i=>Y.jsxs("div",{className:"mb-2",children:[Y.jsx("span",{className:"text-slate-500",children:i.timestamp})," ",Y.jsxs("span",{className:"text-cyan-300",children:["[",i.level,"]"]})," ",i.label&&Y.jsxs("span",{className:"text-pink-300",children:["[",i.label,"]"]})," ",Y.jsx("span",{children:i.message})]},i.id))})]})}function av(){const{session:o,requestControl:i}=qn(),f=o?.roster??[],[s,m]=Mt.useState({});async function E(R){m(B=>({...B,[R]:!0}));try{await i(R)}catch(B){alert(B.message)}finally{m(B=>({...B,[R]:!1}))}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Rovers"}),Y.jsxs("div",{className:"mt-4 space-y-3",children:[f.length===0&&Y.jsx("p",{className:"text-slate-400",children:"No rovers registered."}),f.map(R=>Y.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-3 rounded-xl bg-slate-950/40 px-4 py-3",children:[Y.jsxs("div",{children:[Y.jsx("p",{className:"text-white",children:R.name}),Y.jsxs("p",{className:"text-xs text-slate-400",children:["Locked: ",R.locked?"yes":"no"]})]}),Y.jsx("button",{type:"button",onClick:()=>E(R.id),disabled:s[R.id],className:"rounded-full bg-blue-600 px-4 py-1 text-sm font-semibold text-white disabled:opacity-50",children:s[R.id]?"Requesting…":"Request control"})]},R.id))]})]})}function uv(){const{session:o,releaseControl:i}=qn(),f=o?.assignment,s=f?.roverId,[m,E]=Mt.useState(!1);async function R(){if(s){E(!0);try{await i(s)}catch(B){alert(B.message)}finally{E(!1)}}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Assignment"}),s?Y.jsxs("div",{className:"mt-4 space-y-3",children:[Y.jsxs("p",{className:"text-slate-300",children:["Currently driving rover ",s]}),Y.jsx("button",{type:"button",onClick:R,disabled:m,className:"rounded-full bg-red-600 px-4 py-1 text-sm font-semibold text-white disabled:opacity-50",children:m?"Releasing…":"Release control"})]}):Y.jsxs("div",{className:"mt-4 text-slate-400",children:[Y.jsxs("p",{children:["Status: ",f?.status??"not assigned"]}),f?.queuePosition&&Y.jsxs("p",{children:["Queue position: ",f.queuePosition]})]})]})}function iv(){const{session:o}=qn(),i=Mt.useMemo(()=>JSON.stringify(o??{},null,2),[o]);return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Session snapshot"}),Y.jsx("pre",{className:"mt-4 max-h-64 overflow-y-auto text-sm text-teal-200",children:i})]})}function cv(){const{login:o,setRole:i}=qn(),[f,s]=Mt.useState(""),[m,E]=Mt.useState(""),[R,B]=Mt.useState(!1);async function M(A){A.preventDefault(),B(!0);try{await o(f,m),s(""),E("")}catch(Q){alert(Q.message)}finally{B(!1)}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Authentication"}),Y.jsxs("form",{className:"mt-4 flex flex-col gap-3",onSubmit:M,children:[Y.jsx("input",{className:"rounded-lg border border-slate-800 bg-slate-950/60 px-3 py-2 text-white",placeholder:"Username",value:f,onChange:A=>s(A.target.value)}),Y.jsx("input",{className:"rounded-lg border border-slate-800 bg-slate-950/60 px-3 py-2 text-white",placeholder:"Password",type:"password",value:m,onChange:A=>E(A.target.value)}),Y.jsx("button",{type:"submit",disabled:R,className:"rounded-lg bg-emerald-600 py-2 font-semibold text-white disabled:opacity-50",children:R?"Logging in…":"Login as admin"})]}),Y.jsxs("div",{className:"mt-4 flex gap-3",children:[Y.jsx("button",{type:"button",onClick:()=>i("user"),className:"rounded-lg border border-slate-700 px-3 py-1 text-sm text-slate-200",children:"Driver mode"}),Y.jsx("button",{type:"button",onClick:()=>i("spectator"),className:"rounded-lg border border-slate-700 px-3 py-1 text-sm text-slate-200",children:"Spectator mode"})]})]})}function fv(){const{connected:o,session:i}=qn();return Y.jsx("div",{className:"min-h-screen bg-slate-950 text-slate-50",children:Y.jsxs("main",{className:"mx-auto flex max-w-6xl flex-col gap-6 px-6 py-10",children:[Y.jsxs("header",{className:"space-y-4",children:[Y.jsx("h1",{className:"text-4xl font-semibold text-white",children:"Multi Roomba Rover Console"}),Y.jsx(lv,{connected:o,role:i?.role,mode:i?.mode})]}),Y.jsxs("section",{className:"grid gap-6 lg:grid-cols-2",children:[Y.jsx(av,{}),Y.jsx(uv,{}),Y.jsx(cv,{}),Y.jsx(iv,{})]}),Y.jsx(nv,{})]})})}n0.createRoot(document.getElementById("root")).render(Y.jsx(Mt.StrictMode,{children:Y.jsx(I0,{children:Y.jsx(ev,{children:Y.jsx(fv,{})})})})); +`+n.stack}}var fi=Object.prototype.hasOwnProperty,si=o.unstable_scheduleCallback,oi=o.unstable_cancelCallback,zd=o.unstable_shouldYield,Od=o.unstable_requestPaint,Pt=o.unstable_now,Nd=o.unstable_getCurrentPriorityLevel,kf=o.unstable_ImmediatePriority,Wf=o.unstable_UserBlockingPriority,Ba=o.unstable_NormalPriority,Md=o.unstable_LowPriority,$f=o.unstable_IdlePriority,Rd=o.log,Dd=o.unstable_setDisableYieldValue,Yn=null,te=null;function ll(t){if(typeof Rd=="function"&&Dd(t),te&&typeof te.setStrictMode=="function")try{te.setStrictMode(Yn,t)}catch{}}var ee=Math.clz32?Math.clz32:Cd,Ud=Math.log,xd=Math.LN2;function Cd(t){return t>>>=0,t===0?32:31-(Ud(t)/xd|0)|0}var qa=256,Ha=262144,Ya=4194304;function Dl(t){var e=t&42;if(e!==0)return e;switch(t&-t){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return t&261888;case 262144:case 524288:case 1048576:case 2097152:return t&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return t&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return t}}function ja(t,e,l){var n=t.pendingLanes;if(n===0)return 0;var a=0,u=t.suspendedLanes,c=t.pingedLanes;t=t.warmLanes;var r=n&134217727;return r!==0?(n=r&~u,n!==0?a=Dl(n):(c&=r,c!==0?a=Dl(c):l||(l=r&~t,l!==0&&(a=Dl(l))))):(r=n&~u,r!==0?a=Dl(r):c!==0?a=Dl(c):l||(l=n&~t,l!==0&&(a=Dl(l)))),a===0?0:e!==0&&e!==a&&(e&u)===0&&(u=a&-a,l=e&-e,u>=l||u===32&&(l&4194048)!==0)?e:a}function jn(t,e){return(t.pendingLanes&~(t.suspendedLanes&~t.pingedLanes)&e)===0}function Bd(t,e){switch(t){case 1:case 2:case 4:case 8:case 64:return e+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 e+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 Ff(){var t=Ya;return Ya<<=1,(Ya&62914560)===0&&(Ya=4194304),t}function ri(t){for(var e=[],l=0;31>l;l++)e.push(t);return e}function Ln(t,e){t.pendingLanes|=e,e!==268435456&&(t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0)}function qd(t,e,l,n,a,u){var c=t.pendingLanes;t.pendingLanes=l,t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0,t.expiredLanes&=l,t.entangledLanes&=l,t.errorRecoveryDisabledLanes&=l,t.shellSuspendCounter=0;var r=t.entanglements,h=t.expirationTimes,p=t.hiddenUpdates;for(l=c&~l;0"u")return null;try{return t.activeElement||t.body}catch{return t.body}}var Qd=/[\n"\\]/g;function re(t){return t.replace(Qd,function(e){return"\\"+e.charCodeAt(0).toString(16)+" "})}function gi(t,e,l,n,a,u,c,r){t.name="",c!=null&&typeof c!="function"&&typeof c!="symbol"&&typeof c!="boolean"?t.type=c:t.removeAttribute("type"),e!=null?c==="number"?(e===0&&t.value===""||t.value!=e)&&(t.value=""+oe(e)):t.value!==""+oe(e)&&(t.value=""+oe(e)):c!=="submit"&&c!=="reset"||t.removeAttribute("value"),e!=null?pi(t,c,oe(e)):l!=null?pi(t,c,oe(l)):n!=null&&t.removeAttribute("value"),a==null&&u!=null&&(t.defaultChecked=!!u),a!=null&&(t.checked=a&&typeof a!="function"&&typeof a!="symbol"),r!=null&&typeof r!="function"&&typeof r!="symbol"&&typeof r!="boolean"?t.name=""+oe(r):t.removeAttribute("name")}function os(t,e,l,n,a,u,c,r){if(u!=null&&typeof u!="function"&&typeof u!="symbol"&&typeof u!="boolean"&&(t.type=u),e!=null||l!=null){if(!(u!=="submit"&&u!=="reset"||e!=null)){vi(t);return}l=l!=null?""+oe(l):"",e=e!=null?""+oe(e):l,r||e===t.value||(t.value=e),t.defaultValue=e}n=n??a,n=typeof n!="function"&&typeof n!="symbol"&&!!n,t.checked=r?t.checked:!!n,t.defaultChecked=!!n,c!=null&&typeof c!="function"&&typeof c!="symbol"&&typeof c!="boolean"&&(t.name=c),vi(t)}function pi(t,e,l){e==="number"&&Qa(t.ownerDocument)===t||t.defaultValue===""+l||(t.defaultValue=""+l)}function tn(t,e,l,n){if(t=t.options,e){e={};for(var a=0;a"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Ti=!1;if(Le)try{var Vn={};Object.defineProperty(Vn,"passive",{get:function(){Ti=!0}}),window.addEventListener("test",Vn,Vn),window.removeEventListener("test",Vn,Vn)}catch{Ti=!1}var al=null,Ai=null,Va=null;function gs(){if(Va)return Va;var t,e=Ai,l=e.length,n,a="value"in al?al.value:al.textContent,u=a.length;for(t=0;t=Kn),Ts=" ",As=!1;function zs(t,e){switch(t){case"keyup":return my.indexOf(e.keyCode)!==-1;case"keydown":return e.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Os(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var an=!1;function gy(t,e){switch(t){case"compositionend":return Os(e);case"keypress":return e.which!==32?null:(As=!0,Ts);case"textInput":return t=e.data,t===Ts&&As?null:t;default:return null}}function py(t,e){if(an)return t==="compositionend"||!Ri&&zs(t,e)?(t=gs(),Va=Ai=al=null,an=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(e.ctrlKey||e.altKey||e.metaKey)||e.ctrlKey&&e.altKey){if(e.char&&1=e)return{node:l,offset:e-t};t=n}t:{for(;l;){if(l.nextSibling){l=l.nextSibling;break t}l=l.parentNode}l=void 0}l=Bs(l)}}function Hs(t,e){return t&&e?t===e?!0:t&&t.nodeType===3?!1:e&&e.nodeType===3?Hs(t,e.parentNode):"contains"in t?t.contains(e):t.compareDocumentPosition?!!(t.compareDocumentPosition(e)&16):!1:!1}function Ys(t){t=t!=null&&t.ownerDocument!=null&&t.ownerDocument.defaultView!=null?t.ownerDocument.defaultView:window;for(var e=Qa(t.document);e instanceof t.HTMLIFrameElement;){try{var l=typeof e.contentWindow.location.href=="string"}catch{l=!1}if(l)t=e.contentWindow;else break;e=Qa(t.document)}return e}function xi(t){var e=t&&t.nodeName&&t.nodeName.toLowerCase();return e&&(e==="input"&&(t.type==="text"||t.type==="search"||t.type==="tel"||t.type==="url"||t.type==="password")||e==="textarea"||t.contentEditable==="true")}var Oy=Le&&"documentMode"in document&&11>=document.documentMode,un=null,Ci=null,$n=null,Bi=!1;function js(t,e,l){var n=l.window===l?l.document:l.nodeType===9?l:l.ownerDocument;Bi||un==null||un!==Qa(n)||(n=un,"selectionStart"in n&&xi(n)?n={start:n.selectionStart,end:n.selectionEnd}:(n=(n.ownerDocument&&n.ownerDocument.defaultView||window).getSelection(),n={anchorNode:n.anchorNode,anchorOffset:n.anchorOffset,focusNode:n.focusNode,focusOffset:n.focusOffset}),$n&&Wn($n,n)||($n=n,n=Hu(Ci,"onSelect"),0>=c,a-=c,Re=1<<32-ee(e)+a|l<w?(F=H,H=null):F=H.sibling;var lt=S(v,H,g[w],z);if(lt===null){H===null&&(H=F);break}t&&H&<.alternate===null&&e(v,H),d=u(lt,d,w),et===null?j=lt:et.sibling=lt,et=lt,H=F}if(w===g.length)return l(v,H),P&&Qe(v,w),j;if(H===null){for(;ww?(F=H,H=null):F=H.sibling;var Ol=S(v,H,lt.value,z);if(Ol===null){H===null&&(H=F);break}t&&H&&Ol.alternate===null&&e(v,H),d=u(Ol,d,w),et===null?j=Ol:et.sibling=Ol,et=Ol,H=F}if(lt.done)return l(v,H),P&&Qe(v,w),j;if(H===null){for(;!lt.done;w++,lt=g.next())lt=O(v,lt.value,z),lt!==null&&(d=u(lt,d,w),et===null?j=lt:et.sibling=lt,et=lt);return P&&Qe(v,w),j}for(H=n(H);!lt.done;w++,lt=g.next())lt=b(H,v,w,lt.value,z),lt!==null&&(t&<.alternate!==null&&H.delete(lt.key===null?w:lt.key),d=u(lt,d,w),et===null?j=lt:et.sibling=lt,et=lt);return t&&H.forEach(function(Km){return e(v,Km)}),P&&Qe(v,w),j}function ot(v,d,g,z){if(typeof g=="object"&&g!==null&&g.type===Ut&&g.key===null&&(g=g.props.children),typeof g=="object"&&g!==null){switch(g.$$typeof){case Yt:t:{for(var j=g.key;d!==null;){if(d.key===j){if(j=g.type,j===Ut){if(d.tag===7){l(v,d.sibling),z=a(d,g.props.children),z.return=v,v=z;break t}}else if(d.elementType===j||typeof j=="object"&&j!==null&&j.$$typeof===Vt&&Ql(j)===d.type){l(v,d.sibling),z=a(d,g.props),la(z,g),z.return=v,v=z;break t}l(v,d);break}else e(v,d);d=d.sibling}g.type===Ut?(z=Hl(g.props.children,v.mode,z,g.key),z.return=v,v=z):(z=Pa(g.type,g.key,g.props,null,v.mode,z),la(z,g),z.return=v,v=z)}return c(v);case _t:t:{for(j=g.key;d!==null;){if(d.key===j)if(d.tag===4&&d.stateNode.containerInfo===g.containerInfo&&d.stateNode.implementation===g.implementation){l(v,d.sibling),z=a(d,g.children||[]),z.return=v,v=z;break t}else{l(v,d);break}else e(v,d);d=d.sibling}z=Qi(g,v.mode,z),z.return=v,v=z}return c(v);case Vt:return g=Ql(g),ot(v,d,g,z)}if(_e(g))return C(v,d,g,z);if(Zt(g)){if(j=Zt(g),typeof j!="function")throw Error(s(150));return g=j.call(g),L(v,d,g,z)}if(typeof g.then=="function")return ot(v,d,iu(g),z);if(g.$$typeof===jt)return ot(v,d,lu(v,g),z);cu(v,g)}return typeof g=="string"&&g!==""||typeof g=="number"||typeof g=="bigint"?(g=""+g,d!==null&&d.tag===6?(l(v,d.sibling),z=a(d,g),z.return=v,v=z):(l(v,d),z=Xi(g,v.mode,z),z.return=v,v=z),c(v)):l(v,d)}return function(v,d,g,z){try{ea=0;var j=ot(v,d,g,z);return gn=null,j}catch(H){if(H===vn||H===au)throw H;var et=ne(29,H,null,v.mode);return et.lanes=z,et.return=v,et}finally{}}}var Vl=co(!0),fo=co(!1),sl=!1;function Pi(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function tc(t,e){t=t.updateQueue,e.updateQueue===t&&(e.updateQueue={baseState:t.baseState,firstBaseUpdate:t.firstBaseUpdate,lastBaseUpdate:t.lastBaseUpdate,shared:t.shared,callbacks:null})}function ol(t){return{lane:t,tag:0,payload:null,callback:null,next:null}}function rl(t,e,l){var n=t.updateQueue;if(n===null)return null;if(n=n.shared,(nt&2)!==0){var a=n.pending;return a===null?e.next=e:(e.next=a.next,a.next=e),n.pending=e,e=Ia(t),ws(t,null,l),e}return Fa(t,n,e,l),Ia(t)}function na(t,e,l){if(e=e.updateQueue,e!==null&&(e=e.shared,(l&4194048)!==0)){var n=e.lanes;n&=t.pendingLanes,l|=n,e.lanes=l,Pf(t,l)}}function ec(t,e){var l=t.updateQueue,n=t.alternate;if(n!==null&&(n=n.updateQueue,l===n)){var a=null,u=null;if(l=l.firstBaseUpdate,l!==null){do{var c={lane:l.lane,tag:l.tag,payload:l.payload,callback:null,next:null};u===null?a=u=c:u=u.next=c,l=l.next}while(l!==null);u===null?a=u=e:u=u.next=e}else a=u=e;l={baseState:n.baseState,firstBaseUpdate:a,lastBaseUpdate:u,shared:n.shared,callbacks:n.callbacks},t.updateQueue=l;return}t=l.lastBaseUpdate,t===null?l.firstBaseUpdate=e:t.next=e,l.lastBaseUpdate=e}var lc=!1;function aa(){if(lc){var t=mn;if(t!==null)throw t}}function ua(t,e,l,n){lc=!1;var a=t.updateQueue;sl=!1;var u=a.firstBaseUpdate,c=a.lastBaseUpdate,r=a.shared.pending;if(r!==null){a.shared.pending=null;var h=r,p=h.next;h.next=null,c===null?u=p:c.next=p,c=h;var _=t.alternate;_!==null&&(_=_.updateQueue,r=_.lastBaseUpdate,r!==c&&(r===null?_.firstBaseUpdate=p:r.next=p,_.lastBaseUpdate=h))}if(u!==null){var O=a.baseState;c=0,_=p=h=null,r=u;do{var S=r.lane&-536870913,b=S!==r.lane;if(b?($&S)===S:(n&S)===S){S!==0&&S===yn&&(lc=!0),_!==null&&(_=_.next={lane:0,tag:r.tag,payload:r.payload,callback:null,next:null});t:{var C=t,L=r;S=e;var ot=l;switch(L.tag){case 1:if(C=L.payload,typeof C=="function"){O=C.call(ot,O,S);break t}O=C;break t;case 3:C.flags=C.flags&-65537|128;case 0:if(C=L.payload,S=typeof C=="function"?C.call(ot,O,S):C,S==null)break t;O=x({},O,S);break t;case 2:sl=!0}}S=r.callback,S!==null&&(t.flags|=64,b&&(t.flags|=8192),b=a.callbacks,b===null?a.callbacks=[S]:b.push(S))}else b={lane:S,tag:r.tag,payload:r.payload,callback:r.callback,next:null},_===null?(p=_=b,h=O):_=_.next=b,c|=S;if(r=r.next,r===null){if(r=a.shared.pending,r===null)break;b=r,r=b.next,b.next=null,a.lastBaseUpdate=b,a.shared.pending=null}}while(!0);_===null&&(h=O),a.baseState=h,a.firstBaseUpdate=p,a.lastBaseUpdate=_,u===null&&(a.shared.lanes=0),vl|=c,t.lanes=c,t.memoizedState=O}}function so(t,e){if(typeof t!="function")throw Error(s(191,t));t.call(e)}function oo(t,e){var l=t.callbacks;if(l!==null)for(t.callbacks=null,t=0;tu?u:8;var c=T.T,r={};T.T=r,_c(t,!1,e,l);try{var h=a(),p=T.S;if(p!==null&&p(r,h),h!==null&&typeof h=="object"&&typeof h.then=="function"){var _=qy(h,n);fa(t,e,_,fe(t))}else fa(t,e,n,fe(t))}catch(O){fa(t,e,{then:function(){},status:"rejected",reason:O},fe())}finally{D.p=u,c!==null&&r.types!==null&&(c.types=r.types),T.T=c}}function Qy(){}function Sc(t,e,l,n){if(t.tag!==5)throw Error(s(476));var a=Vo(t).queue;Go(t,a,e,X,l===null?Qy:function(){return Zo(t),l(n)})}function Vo(t){var e=t.memoizedState;if(e!==null)return e;e={memoizedState:X,baseState:X,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:we,lastRenderedState:X},next:null};var l={};return e.next={memoizedState:l,baseState:l,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:we,lastRenderedState:l},next:null},t.memoizedState=e,t=t.alternate,t!==null&&(t.memoizedState=e),e}function Zo(t){var e=Vo(t);e.next===null&&(e=t.alternate.memoizedState),fa(t,e.next.queue,{},fe())}function bc(){return Bt(za)}function wo(){return bt().memoizedState}function Ko(){return bt().memoizedState}function Gy(t){for(var e=t.return;e!==null;){switch(e.tag){case 24:case 3:var l=fe();t=ol(l);var n=rl(e,t,l);n!==null&&(Ft(n,e,l),na(n,e,l)),e={cache:Wi()},t.payload=e;return}e=e.return}}function Vy(t,e,l){var n=fe();l={lane:n,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},gu(t)?ko(e,l):(l=ji(t,e,l,n),l!==null&&(Ft(l,t,n),Wo(l,e,n)))}function Jo(t,e,l){var n=fe();fa(t,e,l,n)}function fa(t,e,l,n){var a={lane:n,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null};if(gu(t))ko(e,a);else{var u=t.alternate;if(t.lanes===0&&(u===null||u.lanes===0)&&(u=e.lastRenderedReducer,u!==null))try{var c=e.lastRenderedState,r=u(c,l);if(a.hasEagerState=!0,a.eagerState=r,le(r,c))return Fa(t,e,a,0),ht===null&&$a(),!1}catch{}finally{}if(l=ji(t,e,a,n),l!==null)return Ft(l,t,n),Wo(l,e,n),!0}return!1}function _c(t,e,l,n){if(n={lane:2,revertLane:Pc(),gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},gu(t)){if(e)throw Error(s(479))}else e=ji(t,l,n,2),e!==null&&Ft(e,t,2)}function gu(t){var e=t.alternate;return t===Z||e!==null&&e===Z}function ko(t,e){Sn=ou=!0;var l=t.pending;l===null?e.next=e:(e.next=l.next,l.next=e),t.pending=e}function Wo(t,e,l){if((l&4194048)!==0){var n=e.lanes;n&=t.pendingLanes,l|=n,e.lanes=l,Pf(t,l)}}var sa={readContext:Bt,use:du,useCallback:vt,useContext:vt,useEffect:vt,useImperativeHandle:vt,useLayoutEffect:vt,useInsertionEffect:vt,useMemo:vt,useReducer:vt,useRef:vt,useState:vt,useDebugValue:vt,useDeferredValue:vt,useTransition:vt,useSyncExternalStore:vt,useId:vt,useHostTransitionStatus:vt,useFormState:vt,useActionState:vt,useOptimistic:vt,useMemoCache:vt,useCacheRefresh:vt};sa.useEffectEvent=vt;var $o={readContext:Bt,use:du,useCallback:function(t,e){return Qt().memoizedState=[t,e===void 0?null:e],t},useContext:Bt,useEffect:Co,useImperativeHandle:function(t,e,l){l=l!=null?l.concat([t]):null,mu(4194308,4,Yo.bind(null,e,t),l)},useLayoutEffect:function(t,e){return mu(4194308,4,t,e)},useInsertionEffect:function(t,e){mu(4,2,t,e)},useMemo:function(t,e){var l=Qt();e=e===void 0?null:e;var n=t();if(Zl){ll(!0);try{t()}finally{ll(!1)}}return l.memoizedState=[n,e],n},useReducer:function(t,e,l){var n=Qt();if(l!==void 0){var a=l(e);if(Zl){ll(!0);try{l(e)}finally{ll(!1)}}}else a=e;return n.memoizedState=n.baseState=a,t={pending:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:a},n.queue=t,t=t.dispatch=Vy.bind(null,Z,t),[n.memoizedState,t]},useRef:function(t){var e=Qt();return t={current:t},e.memoizedState=t},useState:function(t){t=yc(t);var e=t.queue,l=Jo.bind(null,Z,e);return e.dispatch=l,[t.memoizedState,l]},useDebugValue:gc,useDeferredValue:function(t,e){var l=Qt();return pc(l,t,e)},useTransition:function(){var t=yc(!1);return t=Go.bind(null,Z,t.queue,!0,!1),Qt().memoizedState=t,[!1,t]},useSyncExternalStore:function(t,e,l){var n=Z,a=Qt();if(P){if(l===void 0)throw Error(s(407));l=l()}else{if(l=e(),ht===null)throw Error(s(349));($&127)!==0||go(n,e,l)}a.memoizedState=l;var u={value:l,getSnapshot:e};return a.queue=u,Co(So.bind(null,n,u,t),[t]),n.flags|=2048,_n(9,{destroy:void 0},po.bind(null,n,u,l,e),null),l},useId:function(){var t=Qt(),e=ht.identifierPrefix;if(P){var l=De,n=Re;l=(n&~(1<<32-ee(n)-1)).toString(32)+l,e="_"+e+"R_"+l,l=ru++,0<\/script>",u=u.removeChild(u.firstChild);break;case"select":u=typeof n.is=="string"?c.createElement("select",{is:n.is}):c.createElement("select"),n.multiple?u.multiple=!0:n.size&&(u.size=n.size);break;default:u=typeof n.is=="string"?c.createElement(a,{is:n.is}):c.createElement(a)}}u[xt]=e,u[wt]=n;t:for(c=e.child;c!==null;){if(c.tag===5||c.tag===6)u.appendChild(c.stateNode);else if(c.tag!==4&&c.tag!==27&&c.child!==null){c.child.return=c,c=c.child;continue}if(c===e)break t;for(;c.sibling===null;){if(c.return===null||c.return===e)break t;c=c.return}c.sibling.return=c.return,c=c.sibling}e.stateNode=u;t:switch(Ht(u,a,n),a){case"button":case"input":case"select":case"textarea":n=!!n.autoFocus;break t;case"img":n=!0;break t;default:n=!1}n&&Je(e)}}return yt(e),qc(e,e.type,t===null?null:t.memoizedProps,e.pendingProps,l),null;case 6:if(t&&e.stateNode!=null)t.memoizedProps!==n&&Je(e);else{if(typeof n!="string"&&e.stateNode===null)throw Error(s(166));if(t=J.current,hn(e)){if(t=e.stateNode,l=e.memoizedProps,n=null,a=Ct,a!==null)switch(a.tag){case 27:case 5:n=a.memoizedProps}t[xt]=e,t=!!(t.nodeValue===l||n!==null&&n.suppressHydrationWarning===!0||mh(t.nodeValue,l)),t||cl(e,!0)}else t=Yu(t).createTextNode(n),t[xt]=e,e.stateNode=t}return yt(e),null;case 31:if(l=e.memoizedState,t===null||t.memoizedState!==null){if(n=hn(e),l!==null){if(t===null){if(!n)throw Error(s(318));if(t=e.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(s(557));t[xt]=e}else Yl(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;yt(e),t=!1}else l=wi(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=l),t=!0;if(!t)return e.flags&256?(ue(e),e):(ue(e),null);if((e.flags&128)!==0)throw Error(s(558))}return yt(e),null;case 13:if(n=e.memoizedState,t===null||t.memoizedState!==null&&t.memoizedState.dehydrated!==null){if(a=hn(e),n!==null&&n.dehydrated!==null){if(t===null){if(!a)throw Error(s(318));if(a=e.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(s(317));a[xt]=e}else Yl(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;yt(e),a=!1}else a=wi(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=a),a=!0;if(!a)return e.flags&256?(ue(e),e):(ue(e),null)}return ue(e),(e.flags&128)!==0?(e.lanes=l,e):(l=n!==null,t=t!==null&&t.memoizedState!==null,l&&(n=e.child,a=null,n.alternate!==null&&n.alternate.memoizedState!==null&&n.alternate.memoizedState.cachePool!==null&&(a=n.alternate.memoizedState.cachePool.pool),u=null,n.memoizedState!==null&&n.memoizedState.cachePool!==null&&(u=n.memoizedState.cachePool.pool),u!==a&&(n.flags|=2048)),l!==t&&l&&(e.child.flags|=8192),Eu(e,e.updateQueue),yt(e),null);case 4:return pt(),t===null&&nf(e.stateNode.containerInfo),yt(e),null;case 10:return Ve(e.type),yt(e),null;case 19:if(N(St),n=e.memoizedState,n===null)return yt(e),null;if(a=(e.flags&128)!==0,u=n.rendering,u===null)if(a)ra(n,!1);else{if(gt!==0||t!==null&&(t.flags&128)!==0)for(t=e.child;t!==null;){if(u=su(t),u!==null){for(e.flags|=128,ra(n,!1),t=u.updateQueue,e.updateQueue=t,Eu(e,t),e.subtreeFlags=0,t=l,l=e.child;l!==null;)Ks(l,t),l=l.sibling;return U(St,St.current&1|2),P&&Qe(e,n.treeForkCount),e.child}t=t.sibling}n.tail!==null&&Pt()>Nu&&(e.flags|=128,a=!0,ra(n,!1),e.lanes=4194304)}else{if(!a)if(t=su(u),t!==null){if(e.flags|=128,a=!0,t=t.updateQueue,e.updateQueue=t,Eu(e,t),ra(n,!0),n.tail===null&&n.tailMode==="hidden"&&!u.alternate&&!P)return yt(e),null}else 2*Pt()-n.renderingStartTime>Nu&&l!==536870912&&(e.flags|=128,a=!0,ra(n,!1),e.lanes=4194304);n.isBackwards?(u.sibling=e.child,e.child=u):(t=n.last,t!==null?t.sibling=u:e.child=u,n.last=u)}return n.tail!==null?(t=n.tail,n.rendering=t,n.tail=t.sibling,n.renderingStartTime=Pt(),t.sibling=null,l=St.current,U(St,a?l&1|2:l&1),P&&Qe(e,n.treeForkCount),t):(yt(e),null);case 22:case 23:return ue(e),ac(),n=e.memoizedState!==null,t!==null?t.memoizedState!==null!==n&&(e.flags|=8192):n&&(e.flags|=8192),n?(l&536870912)!==0&&(e.flags&128)===0&&(yt(e),e.subtreeFlags&6&&(e.flags|=8192)):yt(e),l=e.updateQueue,l!==null&&Eu(e,l.retryQueue),l=null,t!==null&&t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(l=t.memoizedState.cachePool.pool),n=null,e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),n!==l&&(e.flags|=2048),t!==null&&N(Xl),null;case 24:return l=null,t!==null&&(l=t.memoizedState.cache),e.memoizedState.cache!==l&&(e.flags|=2048),Ve(Et),yt(e),null;case 25:return null;case 30:return null}throw Error(s(156,e.tag))}function ky(t,e){switch(Vi(e),e.tag){case 1:return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 3:return Ve(Et),pt(),t=e.flags,(t&65536)!==0&&(t&128)===0?(e.flags=t&-65537|128,e):null;case 26:case 27:case 5:return Ca(e),null;case 31:if(e.memoizedState!==null){if(ue(e),e.alternate===null)throw Error(s(340));Yl()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 13:if(ue(e),t=e.memoizedState,t!==null&&t.dehydrated!==null){if(e.alternate===null)throw Error(s(340));Yl()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 19:return N(St),null;case 4:return pt(),null;case 10:return Ve(e.type),null;case 22:case 23:return ue(e),ac(),t!==null&&N(Xl),t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 24:return Ve(Et),null;case 25:return null;default:return null}}function br(t,e){switch(Vi(e),e.tag){case 3:Ve(Et),pt();break;case 26:case 27:case 5:Ca(e);break;case 4:pt();break;case 31:e.memoizedState!==null&&ue(e);break;case 13:ue(e);break;case 19:N(St);break;case 10:Ve(e.type);break;case 22:case 23:ue(e),ac(),t!==null&&N(Xl);break;case 24:Ve(Et)}}function ha(t,e){try{var l=e.updateQueue,n=l!==null?l.lastEffect:null;if(n!==null){var a=n.next;l=a;do{if((l.tag&t)===t){n=void 0;var u=l.create,c=l.inst;n=u(),c.destroy=n}l=l.next}while(l!==a)}}catch(r){it(e,e.return,r)}}function yl(t,e,l){try{var n=e.updateQueue,a=n!==null?n.lastEffect:null;if(a!==null){var u=a.next;n=u;do{if((n.tag&t)===t){var c=n.inst,r=c.destroy;if(r!==void 0){c.destroy=void 0,a=e;var h=l,p=r;try{p()}catch(_){it(a,h,_)}}}n=n.next}while(n!==u)}}catch(_){it(e,e.return,_)}}function _r(t){var e=t.updateQueue;if(e!==null){var l=t.stateNode;try{oo(e,l)}catch(n){it(t,t.return,n)}}}function Er(t,e,l){l.props=wl(t.type,t.memoizedProps),l.state=t.memoizedState;try{l.componentWillUnmount()}catch(n){it(t,e,n)}}function da(t,e){try{var l=t.ref;if(l!==null){switch(t.tag){case 26:case 27:case 5:var n=t.stateNode;break;case 30:n=t.stateNode;break;default:n=t.stateNode}typeof l=="function"?t.refCleanup=l(n):l.current=n}}catch(a){it(t,e,a)}}function Ue(t,e){var l=t.ref,n=t.refCleanup;if(l!==null)if(typeof n=="function")try{n()}catch(a){it(t,e,a)}finally{t.refCleanup=null,t=t.alternate,t!=null&&(t.refCleanup=null)}else if(typeof l=="function")try{l(null)}catch(a){it(t,e,a)}else l.current=null}function Tr(t){var e=t.type,l=t.memoizedProps,n=t.stateNode;try{t:switch(e){case"button":case"input":case"select":case"textarea":l.autoFocus&&n.focus();break t;case"img":l.src?n.src=l.src:l.srcSet&&(n.srcset=l.srcSet)}}catch(a){it(t,t.return,a)}}function Hc(t,e,l){try{var n=t.stateNode;vm(n,t.type,l,e),n[wt]=e}catch(a){it(t,t.return,a)}}function Ar(t){return t.tag===5||t.tag===3||t.tag===26||t.tag===27&&_l(t.type)||t.tag===4}function Yc(t){t:for(;;){for(;t.sibling===null;){if(t.return===null||Ar(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.tag===27&&_l(t.type)||t.flags&2||t.child===null||t.tag===4)continue t;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function jc(t,e,l){var n=t.tag;if(n===5||n===6)t=t.stateNode,e?(l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l).insertBefore(t,e):(e=l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l,e.appendChild(t),l=l._reactRootContainer,l!=null||e.onclick!==null||(e.onclick=je));else if(n!==4&&(n===27&&_l(t.type)&&(l=t.stateNode,e=null),t=t.child,t!==null))for(jc(t,e,l),t=t.sibling;t!==null;)jc(t,e,l),t=t.sibling}function Tu(t,e,l){var n=t.tag;if(n===5||n===6)t=t.stateNode,e?l.insertBefore(t,e):l.appendChild(t);else if(n!==4&&(n===27&&_l(t.type)&&(l=t.stateNode),t=t.child,t!==null))for(Tu(t,e,l),t=t.sibling;t!==null;)Tu(t,e,l),t=t.sibling}function zr(t){var e=t.stateNode,l=t.memoizedProps;try{for(var n=t.type,a=e.attributes;a.length;)e.removeAttributeNode(a[0]);Ht(e,n,l),e[xt]=t,e[wt]=l}catch(u){it(t,t.return,u)}}var ke=!1,zt=!1,Lc=!1,Or=typeof WeakSet=="function"?WeakSet:Set,Dt=null;function Wy(t,e){if(t=t.containerInfo,cf=Zu,t=Ys(t),xi(t)){if("selectionStart"in t)var l={start:t.selectionStart,end:t.selectionEnd};else t:{l=(l=t.ownerDocument)&&l.defaultView||window;var n=l.getSelection&&l.getSelection();if(n&&n.rangeCount!==0){l=n.anchorNode;var a=n.anchorOffset,u=n.focusNode;n=n.focusOffset;try{l.nodeType,u.nodeType}catch{l=null;break t}var c=0,r=-1,h=-1,p=0,_=0,O=t,S=null;e:for(;;){for(var b;O!==l||a!==0&&O.nodeType!==3||(r=c+a),O!==u||n!==0&&O.nodeType!==3||(h=c+n),O.nodeType===3&&(c+=O.nodeValue.length),(b=O.firstChild)!==null;)S=O,O=b;for(;;){if(O===t)break e;if(S===l&&++p===a&&(r=c),S===u&&++_===n&&(h=c),(b=O.nextSibling)!==null)break;O=S,S=O.parentNode}O=b}l=r===-1||h===-1?null:{start:r,end:h}}else l=null}l=l||{start:0,end:0}}else l=null;for(ff={focusedElem:t,selectionRange:l},Zu=!1,Dt=e;Dt!==null;)if(e=Dt,t=e.child,(e.subtreeFlags&1028)!==0&&t!==null)t.return=e,Dt=t;else for(;Dt!==null;){switch(e=Dt,u=e.alternate,t=e.flags,e.tag){case 0:if((t&4)!==0&&(t=e.updateQueue,t=t!==null?t.events:null,t!==null))for(l=0;l title"))),Ht(u,n,l),u[xt]=t,Rt(u),n=u;break t;case"link":var c=xh("link","href",a).get(n+(l.href||""));if(c){for(var r=0;rot&&(c=ot,ot=L,L=c);var v=qs(r,L),d=qs(r,ot);if(v&&d&&(b.rangeCount!==1||b.anchorNode!==v.node||b.anchorOffset!==v.offset||b.focusNode!==d.node||b.focusOffset!==d.offset)){var g=O.createRange();g.setStart(v.node,v.offset),b.removeAllRanges(),L>ot?(b.addRange(g),b.extend(d.node,d.offset)):(g.setEnd(d.node,d.offset),b.addRange(g))}}}}for(O=[],b=r;b=b.parentNode;)b.nodeType===1&&O.push({element:b,left:b.scrollLeft,top:b.scrollTop});for(typeof r.focus=="function"&&r.focus(),r=0;rl?32:l,T.T=null,l=Kc,Kc=null;var u=pl,c=Pe;if(Nt=0,On=pl=null,Pe=0,(nt&6)!==0)throw Error(s(331));var r=nt;if(nt|=4,Yr(u.current),Br(u,u.current,c,l),nt=r,Sa(0,!1),te&&typeof te.onPostCommitFiberRoot=="function")try{te.onPostCommitFiberRoot(Yn,u)}catch{}return!0}finally{D.p=a,T.T=n,eh(t,e)}}function nh(t,e,l){e=de(l,e),e=zc(t.stateNode,e,2),t=rl(t,e,2),t!==null&&(Ln(t,2),xe(t))}function it(t,e,l){if(t.tag===3)nh(t,t,l);else for(;e!==null;){if(e.tag===3){nh(e,t,l);break}else if(e.tag===1){var n=e.stateNode;if(typeof e.type.getDerivedStateFromError=="function"||typeof n.componentDidCatch=="function"&&(gl===null||!gl.has(n))){t=de(l,t),l=ar(2),n=rl(e,l,2),n!==null&&(ur(l,n,e,t),Ln(n,2),xe(n));break}}e=e.return}}function $c(t,e,l){var n=t.pingCache;if(n===null){n=t.pingCache=new Iy;var a=new Set;n.set(e,a)}else a=n.get(e),a===void 0&&(a=new Set,n.set(e,a));a.has(l)||(Gc=!0,a.add(l),t=nm.bind(null,t,e,l),e.then(t,t))}function nm(t,e,l){var n=t.pingCache;n!==null&&n.delete(e),t.pingedLanes|=t.suspendedLanes&l,t.warmLanes&=~l,ht===t&&($&l)===l&&(gt===4||gt===3&&($&62914560)===$&&300>Pt()-Ou?(nt&2)===0&&Nn(t,0):Vc|=l,zn===$&&(zn=0)),xe(t)}function ah(t,e){e===0&&(e=Ff()),t=ql(t,e),t!==null&&(Ln(t,e),xe(t))}function am(t){var e=t.memoizedState,l=0;e!==null&&(l=e.retryLane),ah(t,l)}function um(t,e){var l=0;switch(t.tag){case 31:case 13:var n=t.stateNode,a=t.memoizedState;a!==null&&(l=a.retryLane);break;case 19:n=t.stateNode;break;case 22:n=t.stateNode._retryCache;break;default:throw Error(s(314))}n!==null&&n.delete(e),ah(t,l)}function im(t,e){return si(t,e)}var Cu=null,Rn=null,Fc=!1,Bu=!1,Ic=!1,bl=0;function xe(t){t!==Rn&&t.next===null&&(Rn===null?Cu=Rn=t:Rn=Rn.next=t),Bu=!0,Fc||(Fc=!0,fm())}function Sa(t,e){if(!Ic&&Bu){Ic=!0;do for(var l=!1,n=Cu;n!==null;){if(t!==0){var a=n.pendingLanes;if(a===0)var u=0;else{var c=n.suspendedLanes,r=n.pingedLanes;u=(1<<31-ee(42|t)+1)-1,u&=a&~(c&~r),u=u&201326741?u&201326741|1:u?u|2:0}u!==0&&(l=!0,fh(n,u))}else u=$,u=ja(n,n===ht?u:0,n.cancelPendingCommit!==null||n.timeoutHandle!==-1),(u&3)===0||jn(n,u)||(l=!0,fh(n,u));n=n.next}while(l);Ic=!1}}function cm(){uh()}function uh(){Bu=Fc=!1;var t=0;bl!==0&&pm()&&(t=bl);for(var e=Pt(),l=null,n=Cu;n!==null;){var a=n.next,u=ih(n,e);u===0?(n.next=null,l===null?Cu=a:l.next=a,a===null&&(Rn=l)):(l=n,(t!==0||(u&3)!==0)&&(Bu=!0)),n=a}Nt!==0&&Nt!==5||Sa(t),bl!==0&&(bl=0)}function ih(t,e){for(var l=t.suspendedLanes,n=t.pingedLanes,a=t.expirationTimes,u=t.pendingLanes&-62914561;0r)break;var _=h.transferSize,O=h.initiatorType;_&&vh(O)&&(h=h.responseEnd,c+=_*(h"u"?null:document;function Mh(t,e,l){var n=Dn;if(n&&typeof e=="string"&&e){var a=re(e);a='link[rel="'+t+'"][href="'+a+'"]',typeof l=="string"&&(a+='[crossorigin="'+l+'"]'),Nh.has(a)||(Nh.add(a),t={rel:t,crossOrigin:l,href:e},n.querySelector(a)===null&&(e=n.createElement("link"),Ht(e,"link",t),Rt(e),n.head.appendChild(e)))}}function Nm(t){tl.D(t),Mh("dns-prefetch",t,null)}function Mm(t,e){tl.C(t,e),Mh("preconnect",t,e)}function Rm(t,e,l){tl.L(t,e,l);var n=Dn;if(n&&t&&e){var a='link[rel="preload"][as="'+re(e)+'"]';e==="image"&&l&&l.imageSrcSet?(a+='[imagesrcset="'+re(l.imageSrcSet)+'"]',typeof l.imageSizes=="string"&&(a+='[imagesizes="'+re(l.imageSizes)+'"]')):a+='[href="'+re(t)+'"]';var u=a;switch(e){case"style":u=Un(t);break;case"script":u=xn(t)}Se.has(u)||(t=x({rel:"preload",href:e==="image"&&l&&l.imageSrcSet?void 0:t,as:e},l),Se.set(u,t),n.querySelector(a)!==null||e==="style"&&n.querySelector(Ta(u))||e==="script"&&n.querySelector(Aa(u))||(e=n.createElement("link"),Ht(e,"link",t),Rt(e),n.head.appendChild(e)))}}function Dm(t,e){tl.m(t,e);var l=Dn;if(l&&t){var n=e&&typeof e.as=="string"?e.as:"script",a='link[rel="modulepreload"][as="'+re(n)+'"][href="'+re(t)+'"]',u=a;switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":u=xn(t)}if(!Se.has(u)&&(t=x({rel:"modulepreload",href:t},e),Se.set(u,t),l.querySelector(a)===null)){switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(l.querySelector(Aa(u)))return}n=l.createElement("link"),Ht(n,"link",t),Rt(n),l.head.appendChild(n)}}}function Um(t,e,l){tl.S(t,e,l);var n=Dn;if(n&&t){var a=Il(n).hoistableStyles,u=Un(t);e=e||"default";var c=a.get(u);if(!c){var r={loading:0,preload:null};if(c=n.querySelector(Ta(u)))r.loading=5;else{t=x({rel:"stylesheet",href:t,"data-precedence":e},l),(l=Se.get(u))&&mf(t,l);var h=c=n.createElement("link");Rt(h),Ht(h,"link",t),h._p=new Promise(function(p,_){h.onload=p,h.onerror=_}),h.addEventListener("load",function(){r.loading|=1}),h.addEventListener("error",function(){r.loading|=2}),r.loading|=4,Lu(c,e,n)}c={type:"stylesheet",instance:c,count:1,state:r},a.set(u,c)}}}function xm(t,e){tl.X(t,e);var l=Dn;if(l&&t){var n=Il(l).hoistableScripts,a=xn(t),u=n.get(a);u||(u=l.querySelector(Aa(a)),u||(t=x({src:t,async:!0},e),(e=Se.get(a))&&vf(t,e),u=l.createElement("script"),Rt(u),Ht(u,"link",t),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(a,u))}}function Cm(t,e){tl.M(t,e);var l=Dn;if(l&&t){var n=Il(l).hoistableScripts,a=xn(t),u=n.get(a);u||(u=l.querySelector(Aa(a)),u||(t=x({src:t,async:!0,type:"module"},e),(e=Se.get(a))&&vf(t,e),u=l.createElement("script"),Rt(u),Ht(u,"link",t),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(a,u))}}function Rh(t,e,l,n){var a=(a=J.current)?ju(a):null;if(!a)throw Error(s(446));switch(t){case"meta":case"title":return null;case"style":return typeof l.precedence=="string"&&typeof l.href=="string"?(e=Un(l.href),l=Il(a).hoistableStyles,n=l.get(e),n||(n={type:"style",instance:null,count:0,state:null},l.set(e,n)),n):{type:"void",instance:null,count:0,state:null};case"link":if(l.rel==="stylesheet"&&typeof l.href=="string"&&typeof l.precedence=="string"){t=Un(l.href);var u=Il(a).hoistableStyles,c=u.get(t);if(c||(a=a.ownerDocument||a,c={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},u.set(t,c),(u=a.querySelector(Ta(t)))&&!u._p&&(c.instance=u,c.state.loading=5),Se.has(t)||(l={rel:"preload",as:"style",href:l.href,crossOrigin:l.crossOrigin,integrity:l.integrity,media:l.media,hrefLang:l.hrefLang,referrerPolicy:l.referrerPolicy},Se.set(t,l),u||Bm(a,t,l,c.state))),e&&n===null)throw Error(s(528,""));return c}if(e&&n!==null)throw Error(s(529,""));return null;case"script":return e=l.async,l=l.src,typeof l=="string"&&e&&typeof e!="function"&&typeof e!="symbol"?(e=xn(l),l=Il(a).hoistableScripts,n=l.get(e),n||(n={type:"script",instance:null,count:0,state:null},l.set(e,n)),n):{type:"void",instance:null,count:0,state:null};default:throw Error(s(444,t))}}function Un(t){return'href="'+re(t)+'"'}function Ta(t){return'link[rel="stylesheet"]['+t+"]"}function Dh(t){return x({},t,{"data-precedence":t.precedence,precedence:null})}function Bm(t,e,l,n){t.querySelector('link[rel="preload"][as="style"]['+e+"]")?n.loading=1:(e=t.createElement("link"),n.preload=e,e.addEventListener("load",function(){return n.loading|=1}),e.addEventListener("error",function(){return n.loading|=2}),Ht(e,"link",l),Rt(e),t.head.appendChild(e))}function xn(t){return'[src="'+re(t)+'"]'}function Aa(t){return"script[async]"+t}function Uh(t,e,l){if(e.count++,e.instance===null)switch(e.type){case"style":var n=t.querySelector('style[data-href~="'+re(l.href)+'"]');if(n)return e.instance=n,Rt(n),n;var a=x({},l,{"data-href":l.href,"data-precedence":l.precedence,href:null,precedence:null});return n=(t.ownerDocument||t).createElement("style"),Rt(n),Ht(n,"style",a),Lu(n,l.precedence,t),e.instance=n;case"stylesheet":a=Un(l.href);var u=t.querySelector(Ta(a));if(u)return e.state.loading|=4,e.instance=u,Rt(u),u;n=Dh(l),(a=Se.get(a))&&mf(n,a),u=(t.ownerDocument||t).createElement("link"),Rt(u);var c=u;return c._p=new Promise(function(r,h){c.onload=r,c.onerror=h}),Ht(u,"link",n),e.state.loading|=4,Lu(u,l.precedence,t),e.instance=u;case"script":return u=xn(l.src),(a=t.querySelector(Aa(u)))?(e.instance=a,Rt(a),a):(n=l,(a=Se.get(u))&&(n=x({},l),vf(n,a)),t=t.ownerDocument||t,a=t.createElement("script"),Rt(a),Ht(a,"link",n),t.head.appendChild(a),e.instance=a);case"void":return null;default:throw Error(s(443,e.type))}else e.type==="stylesheet"&&(e.state.loading&4)===0&&(n=e.instance,e.state.loading|=4,Lu(n,l.precedence,t));return e.instance}function Lu(t,e,l){for(var n=l.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=n.length?n[n.length-1]:null,u=a,c=0;c title"):null)}function qm(t,e,l){if(l===1||e.itemProp!=null)return!1;switch(t){case"meta":case"title":return!0;case"style":if(typeof e.precedence!="string"||typeof e.href!="string"||e.href==="")break;return!0;case"link":if(typeof e.rel!="string"||typeof e.href!="string"||e.href===""||e.onLoad||e.onError)break;switch(e.rel){case"stylesheet":return t=e.disabled,typeof e.precedence=="string"&&t==null;default:return!0}case"script":if(e.async&&typeof e.async!="function"&&typeof e.async!="symbol"&&!e.onLoad&&!e.onError&&e.src&&typeof e.src=="string")return!0}return!1}function Bh(t){return!(t.type==="stylesheet"&&(t.state.loading&3)===0)}function Hm(t,e,l,n){if(l.type==="stylesheet"&&(typeof n.media!="string"||matchMedia(n.media).matches!==!1)&&(l.state.loading&4)===0){if(l.instance===null){var a=Un(n.href),u=e.querySelector(Ta(a));if(u){e=u._p,e!==null&&typeof e=="object"&&typeof e.then=="function"&&(t.count++,t=Qu.bind(t),e.then(t,t)),l.state.loading|=4,l.instance=u,Rt(u);return}u=e.ownerDocument||e,n=Dh(n),(a=Se.get(a))&&mf(n,a),u=u.createElement("link"),Rt(u);var c=u;c._p=new Promise(function(r,h){c.onload=r,c.onerror=h}),Ht(u,"link",n),l.instance=u}t.stylesheets===null&&(t.stylesheets=new Map),t.stylesheets.set(l,e),(e=l.state.preload)&&(l.state.loading&3)===0&&(t.count++,l=Qu.bind(t),e.addEventListener("load",l),e.addEventListener("error",l))}}var gf=0;function Ym(t,e){return t.stylesheets&&t.count===0&&Vu(t,t.stylesheets),0gf?50:800)+e);return t.unsuspend=l,function(){t.unsuspend=null,clearTimeout(n),clearTimeout(a)}}:null}function Qu(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Vu(this,this.stylesheets);else if(this.unsuspend){var t=this.unsuspend;this.unsuspend=null,t()}}}var Gu=null;function Vu(t,e){t.stylesheets=null,t.unsuspend!==null&&(t.count++,Gu=new Map,e.forEach(jm,t),Gu=null,Qu.call(t))}function jm(t,e){if(!(e.state.loading&4)){var l=Gu.get(t);if(l)var n=l.get(null);else{l=new Map,Gu.set(t,l);for(var a=t.querySelectorAll("link[data-precedence],style[data-precedence]"),u=0;u"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(o)}catch(i){console.error(i)}}return o(),Of.exports=t0(),Of.exports}var l0=e0();const Be=Object.create(null);Be.open="0";Be.close="1";Be.ping="2";Be.pong="3";Be.message="4";Be.upgrade="5";Be.noop="6";const Pu=Object.create(null);Object.keys(Be).forEach(o=>{Pu[Be[o]]=o});const Cf={type:"error",data:"parser error"},sd=typeof Blob=="function"||typeof Blob<"u"&&Object.prototype.toString.call(Blob)==="[object BlobConstructor]",od=typeof ArrayBuffer=="function",rd=o=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(o):o&&o.buffer instanceof ArrayBuffer,Xf=({type:o,data:i},f,s)=>sd&&i instanceof Blob?f?s(i):ad(i,s):od&&(i instanceof ArrayBuffer||rd(i))?f?s(i):ad(new Blob([i]),s):s(Be[o]+(i||"")),ad=(o,i)=>{const f=new FileReader;return f.onload=function(){const s=f.result.split(",")[1];i("b"+(s||""))},f.readAsDataURL(o)};function ud(o){return o instanceof Uint8Array?o:o instanceof ArrayBuffer?new Uint8Array(o):new Uint8Array(o.buffer,o.byteOffset,o.byteLength)}let Df;function n0(o,i){if(sd&&o.data instanceof Blob)return o.data.arrayBuffer().then(ud).then(i);if(od&&(o.data instanceof ArrayBuffer||rd(o.data)))return i(ud(o.data));Xf(o,!1,f=>{Df||(Df=new TextEncoder),i(Df.encode(f))})}const id="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",xa=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(let o=0;o{let i=o.length*.75,f=o.length,s,m=0,E,R,B,M;o[o.length-1]==="="&&(i--,o[o.length-2]==="="&&i--);const A=new ArrayBuffer(i),Q=new Uint8Array(A);for(s=0;s>4,Q[m++]=(R&15)<<4|B>>2,Q[m++]=(B&3)<<6|M&63;return A},u0=typeof ArrayBuffer=="function",Qf=(o,i)=>{if(typeof o!="string")return{type:"message",data:hd(o,i)};const f=o.charAt(0);return f==="b"?{type:"message",data:i0(o.substring(1),i)}:Pu[f]?o.length>1?{type:Pu[f],data:o.substring(1)}:{type:Pu[f]}:Cf},i0=(o,i)=>{if(u0){const f=a0(o);return hd(f,i)}else return{base64:!0,data:o}},hd=(o,i)=>{switch(i){case"blob":return o instanceof Blob?o:new Blob([o]);case"arraybuffer":default:return o instanceof ArrayBuffer?o:o.buffer}},dd="",c0=(o,i)=>{const f=o.length,s=new Array(f);let m=0;o.forEach((E,R)=>{Xf(E,!1,B=>{s[R]=B,++m===f&&i(s.join(dd))})})},f0=(o,i)=>{const f=o.split(dd),s=[];for(let m=0;m{const s=f.length;let m;if(s<126)m=new Uint8Array(1),new DataView(m.buffer).setUint8(0,s);else if(s<65536){m=new Uint8Array(3);const E=new DataView(m.buffer);E.setUint8(0,126),E.setUint16(1,s)}else{m=new Uint8Array(9);const E=new DataView(m.buffer);E.setUint8(0,127),E.setBigUint64(1,BigInt(s))}o.data&&typeof o.data!="string"&&(m[0]|=128),i.enqueue(m),i.enqueue(f)})}})}let Uf;function Fu(o){return o.reduce((i,f)=>i+f.length,0)}function Iu(o,i){if(o[0].length===i)return o.shift();const f=new Uint8Array(i);let s=0;for(let m=0;mMath.pow(2,21)-1){B.enqueue(Cf);break}m=Q*Math.pow(2,32)+A.getUint32(4),s=3}else{if(Fu(f)o){B.enqueue(Cf);break}}}})}const yd=4;function Ot(o){if(o)return r0(o)}function r0(o){for(var i in Ot.prototype)o[i]=Ot.prototype[i];return o}Ot.prototype.on=Ot.prototype.addEventListener=function(o,i){return this._callbacks=this._callbacks||{},(this._callbacks["$"+o]=this._callbacks["$"+o]||[]).push(i),this};Ot.prototype.once=function(o,i){function f(){this.off(o,f),i.apply(this,arguments)}return f.fn=i,this.on(o,f),this};Ot.prototype.off=Ot.prototype.removeListener=Ot.prototype.removeAllListeners=Ot.prototype.removeEventListener=function(o,i){if(this._callbacks=this._callbacks||{},arguments.length==0)return this._callbacks={},this;var f=this._callbacks["$"+o];if(!f)return this;if(arguments.length==1)return delete this._callbacks["$"+o],this;for(var s,m=0;mPromise.resolve().then(i):(i,f)=>f(i,0),be=typeof self<"u"?self:typeof window<"u"?window:Function("return this")(),h0="arraybuffer";function md(o,...i){return i.reduce((f,s)=>(o.hasOwnProperty(s)&&(f[s]=o[s]),f),{})}const d0=be.setTimeout,y0=be.clearTimeout;function ai(o,i){i.useNativeTimers?(o.setTimeoutFn=d0.bind(be),o.clearTimeoutFn=y0.bind(be)):(o.setTimeoutFn=be.setTimeout.bind(be),o.clearTimeoutFn=be.clearTimeout.bind(be))}const m0=1.33;function v0(o){return typeof o=="string"?g0(o):Math.ceil((o.byteLength||o.size)*m0)}function g0(o){let i=0,f=0;for(let s=0,m=o.length;s=57344?f+=3:(s++,f+=4);return f}function vd(){return Date.now().toString(36).substring(3)+Math.random().toString(36).substring(2,5)}function p0(o){let i="";for(let f in o)o.hasOwnProperty(f)&&(i.length&&(i+="&"),i+=encodeURIComponent(f)+"="+encodeURIComponent(o[f]));return i}function S0(o){let i={},f=o.split("&");for(let s=0,m=f.length;s{this.readyState="paused",i()};if(this._polling||!this.writable){let s=0;this._polling&&(s++,this.once("pollComplete",function(){--s||f()})),this.writable||(s++,this.once("drain",function(){--s||f()}))}else f()}_poll(){this._polling=!0,this.doPoll(),this.emitReserved("poll")}onData(i){const f=s=>{if(this.readyState==="opening"&&s.type==="open"&&this.onOpen(),s.type==="close")return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(s)};f0(i,this.socket.binaryType).forEach(f),this.readyState!=="closed"&&(this._polling=!1,this.emitReserved("pollComplete"),this.readyState==="open"&&this._poll())}doClose(){const i=()=>{this.write([{type:"close"}])};this.readyState==="open"?i():this.once("open",i)}write(i){this.writable=!1,c0(i,f=>{this.doWrite(f,()=>{this.writable=!0,this.emitReserved("drain")})})}uri(){const i=this.opts.secure?"https":"http",f=this.query||{};return this.opts.timestampRequests!==!1&&(f[this.opts.timestampParam]=vd()),!this.supportsBinary&&!f.sid&&(f.b64=1),this.createUri(i,f)}}let gd=!1;try{gd=typeof XMLHttpRequest<"u"&&"withCredentials"in new XMLHttpRequest}catch{}const E0=gd;function T0(){}class A0 extends _0{constructor(i){if(super(i),typeof location<"u"){const f=location.protocol==="https:";let s=location.port;s||(s=f?"443":"80"),this.xd=typeof location<"u"&&i.hostname!==location.hostname||s!==i.port}}doWrite(i,f){const s=this.request({method:"POST",data:i});s.on("success",f),s.on("error",(m,E)=>{this.onError("xhr post error",m,E)})}doPoll(){const i=this.request();i.on("data",this.onData.bind(this)),i.on("error",(f,s)=>{this.onError("xhr poll error",f,s)}),this.pollXhr=i}}class Ce extends Ot{constructor(i,f,s){super(),this.createRequest=i,ai(this,s),this._opts=s,this._method=s.method||"GET",this._uri=f,this._data=s.data!==void 0?s.data:null,this._create()}_create(){var i;const f=md(this._opts,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");f.xdomain=!!this._opts.xd;const s=this._xhr=this.createRequest(f);try{s.open(this._method,this._uri,!0);try{if(this._opts.extraHeaders){s.setDisableHeaderCheck&&s.setDisableHeaderCheck(!0);for(let m in this._opts.extraHeaders)this._opts.extraHeaders.hasOwnProperty(m)&&s.setRequestHeader(m,this._opts.extraHeaders[m])}}catch{}if(this._method==="POST")try{s.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch{}try{s.setRequestHeader("Accept","*/*")}catch{}(i=this._opts.cookieJar)===null||i===void 0||i.addCookies(s),"withCredentials"in s&&(s.withCredentials=this._opts.withCredentials),this._opts.requestTimeout&&(s.timeout=this._opts.requestTimeout),s.onreadystatechange=()=>{var m;s.readyState===3&&((m=this._opts.cookieJar)===null||m===void 0||m.parseCookies(s.getResponseHeader("set-cookie"))),s.readyState===4&&(s.status===200||s.status===1223?this._onLoad():this.setTimeoutFn(()=>{this._onError(typeof s.status=="number"?s.status:0)},0))},s.send(this._data)}catch(m){this.setTimeoutFn(()=>{this._onError(m)},0);return}typeof document<"u"&&(this._index=Ce.requestsCount++,Ce.requests[this._index]=this)}_onError(i){this.emitReserved("error",i,this._xhr),this._cleanup(!0)}_cleanup(i){if(!(typeof this._xhr>"u"||this._xhr===null)){if(this._xhr.onreadystatechange=T0,i)try{this._xhr.abort()}catch{}typeof document<"u"&&delete Ce.requests[this._index],this._xhr=null}}_onLoad(){const i=this._xhr.responseText;i!==null&&(this.emitReserved("data",i),this.emitReserved("success"),this._cleanup())}abort(){this._cleanup()}}Ce.requestsCount=0;Ce.requests={};if(typeof document<"u"){if(typeof attachEvent=="function")attachEvent("onunload",cd);else if(typeof addEventListener=="function"){const o="onpagehide"in be?"pagehide":"unload";addEventListener(o,cd,!1)}}function cd(){for(let o in Ce.requests)Ce.requests.hasOwnProperty(o)&&Ce.requests[o].abort()}const z0=(function(){const o=pd({xdomain:!1});return o&&o.responseType!==null})();class O0 extends A0{constructor(i){super(i);const f=i&&i.forceBase64;this.supportsBinary=z0&&!f}request(i={}){return Object.assign(i,{xd:this.xd},this.opts),new Ce(pd,this.uri(),i)}}function pd(o){const i=o.xdomain;try{if(typeof XMLHttpRequest<"u"&&(!i||E0))return new XMLHttpRequest}catch{}if(!i)try{return new be[["Active"].concat("Object").join("X")]("Microsoft.XMLHTTP")}catch{}}const Sd=typeof navigator<"u"&&typeof navigator.product=="string"&&navigator.product.toLowerCase()==="reactnative";class N0 extends Gf{get name(){return"websocket"}doOpen(){const i=this.uri(),f=this.opts.protocols,s=Sd?{}:md(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(s.headers=this.opts.extraHeaders);try{this.ws=this.createSocket(i,f,s)}catch(m){return this.emitReserved("error",m)}this.ws.binaryType=this.socket.binaryType,this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=i=>this.onClose({description:"websocket connection closed",context:i}),this.ws.onmessage=i=>this.onData(i.data),this.ws.onerror=i=>this.onError("websocket error",i)}write(i){this.writable=!1;for(let f=0;f{try{this.doWrite(s,E)}catch{}m&&ni(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){typeof this.ws<"u"&&(this.ws.onerror=()=>{},this.ws.close(),this.ws=null)}uri(){const i=this.opts.secure?"wss":"ws",f=this.query||{};return this.opts.timestampRequests&&(f[this.opts.timestampParam]=vd()),this.supportsBinary||(f.b64=1),this.createUri(i,f)}}const xf=be.WebSocket||be.MozWebSocket;class M0 extends N0{createSocket(i,f,s){return Sd?new xf(i,f,s):f?new xf(i,f):new xf(i)}doWrite(i,f){this.ws.send(f)}}class R0 extends Gf{get name(){return"webtransport"}doOpen(){try{this._transport=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name])}catch(i){return this.emitReserved("error",i)}this._transport.closed.then(()=>{this.onClose()}).catch(i=>{this.onError("webtransport error",i)}),this._transport.ready.then(()=>{this._transport.createBidirectionalStream().then(i=>{const f=o0(Number.MAX_SAFE_INTEGER,this.socket.binaryType),s=i.readable.pipeThrough(f).getReader(),m=s0();m.readable.pipeTo(i.writable),this._writer=m.writable.getWriter();const E=()=>{s.read().then(({done:B,value:M})=>{B||(this.onPacket(M),E())}).catch(B=>{})};E();const R={type:"open"};this.query.sid&&(R.data=`{"sid":"${this.query.sid}"}`),this._writer.write(R).then(()=>this.onOpen())})})}write(i){this.writable=!1;for(let f=0;f{m&&ni(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){var i;(i=this._transport)===null||i===void 0||i.close()}}const D0={websocket:M0,webtransport:R0,polling:O0},U0=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,x0=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function Bf(o){if(o.length>8e3)throw"URI too long";const i=o,f=o.indexOf("["),s=o.indexOf("]");f!=-1&&s!=-1&&(o=o.substring(0,f)+o.substring(f,s).replace(/:/g,";")+o.substring(s,o.length));let m=U0.exec(o||""),E={},R=14;for(;R--;)E[x0[R]]=m[R]||"";return f!=-1&&s!=-1&&(E.source=i,E.host=E.host.substring(1,E.host.length-1).replace(/;/g,":"),E.authority=E.authority.replace("[","").replace("]","").replace(/;/g,":"),E.ipv6uri=!0),E.pathNames=C0(E,E.path),E.queryKey=B0(E,E.query),E}function C0(o,i){const f=/\/{2,9}/g,s=i.replace(f,"/").split("/");return(i.slice(0,1)=="/"||i.length===0)&&s.splice(0,1),i.slice(-1)=="/"&&s.splice(s.length-1,1),s}function B0(o,i){const f={};return i.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,function(s,m,E){m&&(f[m]=E)}),f}const qf=typeof addEventListener=="function"&&typeof removeEventListener=="function",ti=[];qf&&addEventListener("offline",()=>{ti.forEach(o=>o())},!1);class Nl extends Ot{constructor(i,f){if(super(),this.binaryType=h0,this.writeBuffer=[],this._prevBufferLen=0,this._pingInterval=-1,this._pingTimeout=-1,this._maxPayload=-1,this._pingTimeoutTime=1/0,i&&typeof i=="object"&&(f=i,i=null),i){const s=Bf(i);f.hostname=s.host,f.secure=s.protocol==="https"||s.protocol==="wss",f.port=s.port,s.query&&(f.query=s.query)}else f.host&&(f.hostname=Bf(f.host).host);ai(this,f),this.secure=f.secure!=null?f.secure:typeof location<"u"&&location.protocol==="https:",f.hostname&&!f.port&&(f.port=this.secure?"443":"80"),this.hostname=f.hostname||(typeof location<"u"?location.hostname:"localhost"),this.port=f.port||(typeof location<"u"&&location.port?location.port:this.secure?"443":"80"),this.transports=[],this._transportsByName={},f.transports.forEach(s=>{const m=s.prototype.name;this.transports.push(m),this._transportsByName[m]=s}),this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},f),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),typeof this.opts.query=="string"&&(this.opts.query=S0(this.opts.query)),qf&&(this.opts.closeOnBeforeunload&&(this._beforeunloadEventListener=()=>{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this._beforeunloadEventListener,!1)),this.hostname!=="localhost"&&(this._offlineEventListener=()=>{this._onClose("transport close",{description:"network connection lost"})},ti.push(this._offlineEventListener))),this.opts.withCredentials&&(this._cookieJar=void 0),this._open()}createTransport(i){const f=Object.assign({},this.opts.query);f.EIO=yd,f.transport=i,this.id&&(f.sid=this.id);const s=Object.assign({},this.opts,{query:f,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[i]);return new this._transportsByName[i](s)}_open(){if(this.transports.length===0){this.setTimeoutFn(()=>{this.emitReserved("error","No transports available")},0);return}const i=this.opts.rememberUpgrade&&Nl.priorWebsocketSuccess&&this.transports.indexOf("websocket")!==-1?"websocket":this.transports[0];this.readyState="opening";const f=this.createTransport(i);f.open(),this.setTransport(f)}setTransport(i){this.transport&&this.transport.removeAllListeners(),this.transport=i,i.on("drain",this._onDrain.bind(this)).on("packet",this._onPacket.bind(this)).on("error",this._onError.bind(this)).on("close",f=>this._onClose("transport close",f))}onOpen(){this.readyState="open",Nl.priorWebsocketSuccess=this.transport.name==="websocket",this.emitReserved("open"),this.flush()}_onPacket(i){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing")switch(this.emitReserved("packet",i),this.emitReserved("heartbeat"),i.type){case"open":this.onHandshake(JSON.parse(i.data));break;case"ping":this._sendPacket("pong"),this.emitReserved("ping"),this.emitReserved("pong"),this._resetPingTimeout();break;case"error":const f=new Error("server error");f.code=i.data,this._onError(f);break;case"message":this.emitReserved("data",i.data),this.emitReserved("message",i.data);break}}onHandshake(i){this.emitReserved("handshake",i),this.id=i.sid,this.transport.query.sid=i.sid,this._pingInterval=i.pingInterval,this._pingTimeout=i.pingTimeout,this._maxPayload=i.maxPayload,this.onOpen(),this.readyState!=="closed"&&this._resetPingTimeout()}_resetPingTimeout(){this.clearTimeoutFn(this._pingTimeoutTimer);const i=this._pingInterval+this._pingTimeout;this._pingTimeoutTime=Date.now()+i,this._pingTimeoutTimer=this.setTimeoutFn(()=>{this._onClose("ping timeout")},i),this.opts.autoUnref&&this._pingTimeoutTimer.unref()}_onDrain(){this.writeBuffer.splice(0,this._prevBufferLen),this._prevBufferLen=0,this.writeBuffer.length===0?this.emitReserved("drain"):this.flush()}flush(){if(this.readyState!=="closed"&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){const i=this._getWritablePackets();this.transport.send(i),this._prevBufferLen=i.length,this.emitReserved("flush")}}_getWritablePackets(){if(!(this._maxPayload&&this.transport.name==="polling"&&this.writeBuffer.length>1))return this.writeBuffer;let f=1;for(let s=0;s0&&f>this._maxPayload)return this.writeBuffer.slice(0,s);f+=2}return this.writeBuffer}_hasPingExpired(){if(!this._pingTimeoutTime)return!0;const i=Date.now()>this._pingTimeoutTime;return i&&(this._pingTimeoutTime=0,ni(()=>{this._onClose("ping timeout")},this.setTimeoutFn)),i}write(i,f,s){return this._sendPacket("message",i,f,s),this}send(i,f,s){return this._sendPacket("message",i,f,s),this}_sendPacket(i,f,s,m){if(typeof f=="function"&&(m=f,f=void 0),typeof s=="function"&&(m=s,s=null),this.readyState==="closing"||this.readyState==="closed")return;s=s||{},s.compress=s.compress!==!1;const E={type:i,data:f,options:s};this.emitReserved("packetCreate",E),this.writeBuffer.push(E),m&&this.once("flush",m),this.flush()}close(){const i=()=>{this._onClose("forced close"),this.transport.close()},f=()=>{this.off("upgrade",f),this.off("upgradeError",f),i()},s=()=>{this.once("upgrade",f),this.once("upgradeError",f)};return(this.readyState==="opening"||this.readyState==="open")&&(this.readyState="closing",this.writeBuffer.length?this.once("drain",()=>{this.upgrading?s():i()}):this.upgrading?s():i()),this}_onError(i){if(Nl.priorWebsocketSuccess=!1,this.opts.tryAllTransports&&this.transports.length>1&&this.readyState==="opening")return this.transports.shift(),this._open();this.emitReserved("error",i),this._onClose("transport error",i)}_onClose(i,f){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing"){if(this.clearTimeoutFn(this._pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),qf&&(this._beforeunloadEventListener&&removeEventListener("beforeunload",this._beforeunloadEventListener,!1),this._offlineEventListener)){const s=ti.indexOf(this._offlineEventListener);s!==-1&&ti.splice(s,1)}this.readyState="closed",this.id=null,this.emitReserved("close",i,f),this.writeBuffer=[],this._prevBufferLen=0}}}Nl.protocol=yd;class q0 extends Nl{constructor(){super(...arguments),this._upgrades=[]}onOpen(){if(super.onOpen(),this.readyState==="open"&&this.opts.upgrade)for(let i=0;i{s||(f.send([{type:"ping",data:"probe"}]),f.once("packet",x=>{if(!s)if(x.type==="pong"&&x.data==="probe"){if(this.upgrading=!0,this.emitReserved("upgrading",f),!f)return;Nl.priorWebsocketSuccess=f.name==="websocket",this.transport.pause(()=>{s||this.readyState!=="closed"&&(Q(),this.setTransport(f),f.send([{type:"upgrade"}]),this.emitReserved("upgrade",f),f=null,this.upgrading=!1,this.flush())})}else{const K=new Error("probe error");K.transport=f.name,this.emitReserved("upgradeError",K)}}))};function E(){s||(s=!0,Q(),f.close(),f=null)}const R=x=>{const K=new Error("probe error: "+x);K.transport=f.name,E(),this.emitReserved("upgradeError",K)};function B(){R("transport closed")}function M(){R("socket closed")}function A(x){f&&x.name!==f.name&&E()}const Q=()=>{f.removeListener("open",m),f.removeListener("error",R),f.removeListener("close",B),this.off("close",M),this.off("upgrading",A)};f.once("open",m),f.once("error",R),f.once("close",B),this.once("close",M),this.once("upgrading",A),this._upgrades.indexOf("webtransport")!==-1&&i!=="webtransport"?this.setTimeoutFn(()=>{s||f.open()},200):f.open()}onHandshake(i){this._upgrades=this._filterUpgrades(i.upgrades),super.onHandshake(i)}_filterUpgrades(i){const f=[];for(let s=0;sD0[m]).filter(m=>!!m)),super(i,s)}};function Y0(o,i="",f){let s=o;f=f||typeof location<"u"&&location,o==null&&(o=f.protocol+"//"+f.host),typeof o=="string"&&(o.charAt(0)==="/"&&(o.charAt(1)==="/"?o=f.protocol+o:o=f.host+o),/^(https?|wss?):\/\//.test(o)||(typeof f<"u"?o=f.protocol+"//"+o:o="https://"+o),s=Bf(o)),s.port||(/^(http|ws)$/.test(s.protocol)?s.port="80":/^(http|ws)s$/.test(s.protocol)&&(s.port="443")),s.path=s.path||"/";const E=s.host.indexOf(":")!==-1?"["+s.host+"]":s.host;return s.id=s.protocol+"://"+E+":"+s.port+i,s.href=s.protocol+"://"+E+(f&&f.port===s.port?"":":"+s.port),s}const j0=typeof ArrayBuffer=="function",L0=o=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(o):o.buffer instanceof ArrayBuffer,bd=Object.prototype.toString,X0=typeof Blob=="function"||typeof Blob<"u"&&bd.call(Blob)==="[object BlobConstructor]",Q0=typeof File=="function"||typeof File<"u"&&bd.call(File)==="[object FileConstructor]";function Vf(o){return j0&&(o instanceof ArrayBuffer||L0(o))||X0&&o instanceof Blob||Q0&&o instanceof File}function ei(o,i){if(!o||typeof o!="object")return!1;if(Array.isArray(o)){for(let f=0,s=o.length;f=0&&o.num{delete this.acks[i];for(let B=0;B{this.io.clearTimeoutFn(E),f.apply(this,B)};R.withError=!0,this.acks[i]=R}emitWithAck(i,...f){return new Promise((s,m)=>{const E=(R,B)=>R?m(R):s(B);E.withError=!0,f.push(E),this.emit(i,...f)})}_addToQueue(i){let f;typeof i[i.length-1]=="function"&&(f=i.pop());const s={id:this._queueSeq++,tryCount:0,pending:!1,args:i,flags:Object.assign({fromQueue:!0},this.flags)};i.push((m,...E)=>s!==this._queue[0]?void 0:(m!==null?s.tryCount>this._opts.retries&&(this._queue.shift(),f&&f(m)):(this._queue.shift(),f&&f(null,...E)),s.pending=!1,this._drainQueue())),this._queue.push(s),this._drainQueue()}_drainQueue(i=!1){if(!this.connected||this._queue.length===0)return;const f=this._queue[0];f.pending&&!i||(f.pending=!0,f.tryCount++,this.flags=f.flags,this.emit.apply(this,f.args))}packet(i){i.nsp=this.nsp,this.io._packet(i)}onopen(){typeof this.auth=="function"?this.auth(i=>{this._sendConnectPacket(i)}):this._sendConnectPacket(this.auth)}_sendConnectPacket(i){this.packet({type:tt.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},i):i})}onerror(i){this.connected||this.emitReserved("connect_error",i)}onclose(i,f){this.connected=!1,delete this.id,this.emitReserved("disconnect",i,f),this._clearAcks()}_clearAcks(){Object.keys(this.acks).forEach(i=>{if(!this.sendBuffer.some(s=>String(s.id)===i)){const s=this.acks[i];delete this.acks[i],s.withError&&s.call(this,new Error("socket has been disconnected"))}})}onpacket(i){if(i.nsp===this.nsp)switch(i.type){case tt.CONNECT:i.data&&i.data.sid?this.onconnect(i.data.sid,i.data.pid):this.emitReserved("connect_error",new Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case tt.EVENT:case tt.BINARY_EVENT:this.onevent(i);break;case tt.ACK:case tt.BINARY_ACK:this.onack(i);break;case tt.DISCONNECT:this.ondisconnect();break;case tt.CONNECT_ERROR:this.destroy();const s=new Error(i.data.message);s.data=i.data.data,this.emitReserved("connect_error",s);break}}onevent(i){const f=i.data||[];i.id!=null&&f.push(this.ack(i.id)),this.connected?this.emitEvent(f):this.receiveBuffer.push(Object.freeze(f))}emitEvent(i){if(this._anyListeners&&this._anyListeners.length){const f=this._anyListeners.slice();for(const s of f)s.apply(this,i)}super.emit.apply(this,i),this._pid&&i.length&&typeof i[i.length-1]=="string"&&(this._lastOffset=i[i.length-1])}ack(i){const f=this;let s=!1;return function(...m){s||(s=!0,f.packet({type:tt.ACK,id:i,data:m}))}}onack(i){const f=this.acks[i.id];typeof f=="function"&&(delete this.acks[i.id],f.withError&&i.data.unshift(null),f.apply(this,i.data))}onconnect(i,f){this.id=i,this.recovered=f&&this._pid===f,this._pid=f,this.connected=!0,this.emitBuffered(),this.emitReserved("connect"),this._drainQueue(!0)}emitBuffered(){this.receiveBuffer.forEach(i=>this.emitEvent(i)),this.receiveBuffer=[],this.sendBuffer.forEach(i=>{this.notifyOutgoingListeners(i),this.packet(i)}),this.sendBuffer=[]}ondisconnect(){this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach(i=>i()),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&this.packet({type:tt.DISCONNECT}),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(i){return this.flags.compress=i,this}get volatile(){return this.flags.volatile=!0,this}timeout(i){return this.flags.timeout=i,this}onAny(i){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(i),this}prependAny(i){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(i),this}offAny(i){if(!this._anyListeners)return this;if(i){const f=this._anyListeners;for(let s=0;s0&&o.jitter<=1?o.jitter:0,this.attempts=0}Bn.prototype.duration=function(){var o=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var i=Math.random(),f=Math.floor(i*this.jitter*o);o=(Math.floor(i*10)&1)==0?o-f:o+f}return Math.min(o,this.max)|0};Bn.prototype.reset=function(){this.attempts=0};Bn.prototype.setMin=function(o){this.ms=o};Bn.prototype.setMax=function(o){this.max=o};Bn.prototype.setJitter=function(o){this.jitter=o};class jf extends Ot{constructor(i,f){var s;super(),this.nsps={},this.subs=[],i&&typeof i=="object"&&(f=i,i=void 0),f=f||{},f.path=f.path||"/socket.io",this.opts=f,ai(this,f),this.reconnection(f.reconnection!==!1),this.reconnectionAttempts(f.reconnectionAttempts||1/0),this.reconnectionDelay(f.reconnectionDelay||1e3),this.reconnectionDelayMax(f.reconnectionDelayMax||5e3),this.randomizationFactor((s=f.randomizationFactor)!==null&&s!==void 0?s:.5),this.backoff=new Bn({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(f.timeout==null?2e4:f.timeout),this._readyState="closed",this.uri=i;const m=f.parser||k0;this.encoder=new m.Encoder,this.decoder=new m.Decoder,this._autoConnect=f.autoConnect!==!1,this._autoConnect&&this.open()}reconnection(i){return arguments.length?(this._reconnection=!!i,i||(this.skipReconnect=!0),this):this._reconnection}reconnectionAttempts(i){return i===void 0?this._reconnectionAttempts:(this._reconnectionAttempts=i,this)}reconnectionDelay(i){var f;return i===void 0?this._reconnectionDelay:(this._reconnectionDelay=i,(f=this.backoff)===null||f===void 0||f.setMin(i),this)}randomizationFactor(i){var f;return i===void 0?this._randomizationFactor:(this._randomizationFactor=i,(f=this.backoff)===null||f===void 0||f.setJitter(i),this)}reconnectionDelayMax(i){var f;return i===void 0?this._reconnectionDelayMax:(this._reconnectionDelayMax=i,(f=this.backoff)===null||f===void 0||f.setMax(i),this)}timeout(i){return arguments.length?(this._timeout=i,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&this.backoff.attempts===0&&this.reconnect()}open(i){if(~this._readyState.indexOf("open"))return this;this.engine=new H0(this.uri,this.opts);const f=this.engine,s=this;this._readyState="opening",this.skipReconnect=!1;const m=ze(f,"open",function(){s.onopen(),i&&i()}),E=B=>{this.cleanup(),this._readyState="closed",this.emitReserved("error",B),i?i(B):this.maybeReconnectOnOpen()},R=ze(f,"error",E);if(this._timeout!==!1){const B=this._timeout,M=this.setTimeoutFn(()=>{m(),E(new Error("timeout")),f.close()},B);this.opts.autoUnref&&M.unref(),this.subs.push(()=>{this.clearTimeoutFn(M)})}return this.subs.push(m),this.subs.push(R),this}connect(i){return this.open(i)}onopen(){this.cleanup(),this._readyState="open",this.emitReserved("open");const i=this.engine;this.subs.push(ze(i,"ping",this.onping.bind(this)),ze(i,"data",this.ondata.bind(this)),ze(i,"error",this.onerror.bind(this)),ze(i,"close",this.onclose.bind(this)),ze(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(i){try{this.decoder.add(i)}catch(f){this.onclose("parse error",f)}}ondecoded(i){ni(()=>{this.emitReserved("packet",i)},this.setTimeoutFn)}onerror(i){this.emitReserved("error",i)}socket(i,f){let s=this.nsps[i];return s?this._autoConnect&&!s.active&&s.connect():(s=new _d(this,i,f),this.nsps[i]=s),s}_destroy(i){const f=Object.keys(this.nsps);for(const s of f)if(this.nsps[s].active)return;this._close()}_packet(i){const f=this.encoder.encode(i);for(let s=0;si()),this.subs.length=0,this.decoder.destroy()}_close(){this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close")}disconnect(){return this._close()}onclose(i,f){var s;this.cleanup(),(s=this.engine)===null||s===void 0||s.close(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",i,f),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;const i=this;if(this.backoff.attempts>=this._reconnectionAttempts)this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{const f=this.backoff.duration();this._reconnecting=!0;const s=this.setTimeoutFn(()=>{i.skipReconnect||(this.emitReserved("reconnect_attempt",i.backoff.attempts),!i.skipReconnect&&i.open(m=>{m?(i._reconnecting=!1,i.reconnect(),this.emitReserved("reconnect_error",m)):i.onreconnect()}))},f);this.opts.autoUnref&&s.unref(),this.subs.push(()=>{this.clearTimeoutFn(s)})}}onreconnect(){const i=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",i)}}const Ua={};function li(o,i){typeof o=="object"&&(i=o,o=void 0),i=i||{};const f=Y0(o,i.path||"/socket.io"),s=f.source,m=f.id,E=f.path,R=Ua[m]&&E in Ua[m].nsps,B=i.forceNew||i["force new connection"]||i.multiplex===!1||R;let M;return B?M=new jf(s,i):(Ua[m]||(Ua[m]=new jf(s,i)),M=Ua[m]),f.query&&!i.query&&(i.query=f.queryKey),M.socket(f.path,i)}Object.assign(li,{Manager:jf,Socket:_d,io:li,connect:li});const $0=void 0,wf=li($0,{transports:["websocket"],query:{role:"user"}});wf.on("connect_error",o=>{console.error("Socket connection error:",o.message)});const Ed=Mt.createContext(wf),F0=({children:o})=>Y.jsx(Ed.Provider,{value:wf,children:o}),I0=()=>Mt.useContext(Ed),Td=Mt.createContext({connected:!1,session:null,logs:[],login:async()=>{},setRole:async()=>{},requestControl:async()=>{},releaseControl:async()=>{},subscribeAll:async()=>{}});function P0(o){return Mt.useCallback((i,f={})=>new Promise((s,m)=>{o.emit(i,f,(E={})=>{E.error?m(new Error(E.error)):s(E)})}),[o])}function tv({children:o}){const i=I0(),f=P0(i),[s,m]=Mt.useState(null),[E,R]=Mt.useState([]),[B,M]=Mt.useState(i.connected);Mt.useEffect(()=>{const x=()=>M(!0),K=()=>M(!1);return i.on("connect",x),i.on("disconnect",K),()=>{i.off("connect",x),i.off("disconnect",K)}},[i]),Mt.useEffect(()=>{function x(_t){m(_t)}function K(_t=[]){R(_t)}function Yt(_t){R(Ut=>[...Ut.slice(-199),_t])}return i.on("session:sync",x),i.on("log:init",K),i.on("log:entry",Yt),()=>{i.off("session:sync",x),i.off("log:init",K),i.off("log:entry",Yt)}},[i]);const A=Mt.useMemo(()=>({login:(x,K)=>f("auth:login",{username:x,password:K}),setRole:x=>f("session:setRole",{role:x}),requestControl:(x,K={})=>f("session:requestControl",{roverId:x,...K}),releaseControl:x=>f("session:releaseControl",{roverId:x}),subscribeAll:()=>f("session:subscribeAll")}),[f]),Q=Mt.useMemo(()=>({connected:B,session:s,logs:E,...A}),[A,B,E,s]);return Y.jsx(Td.Provider,{value:Q,children:o})}function qn(){return Mt.useContext(Td)}function ev({connected:o,role:i,mode:f}){const s=o?"bg-emerald-500/20 text-emerald-300":"bg-red-500/20 text-red-200";return Y.jsxs("div",{className:"flex flex-wrap items-center gap-3 text-sm",children:[Y.jsx("span",{className:`rounded-full px-3 py-1 font-medium ${s}`,children:o?"Connected":"Disconnected"}),Y.jsxs("span",{className:"rounded-full bg-slate-800/80 px-3 py-1 text-slate-200",children:["Role: ",i||"unknown"]}),Y.jsxs("span",{className:"rounded-full bg-slate-800/80 px-3 py-1 text-slate-200",children:["Mode: ",f||"--"]})]})}function lv(){const{logs:o}=qn();return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/70 p-4",children:[Y.jsxs("header",{className:"mb-3 flex items-center justify-between",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Server logs"}),Y.jsxs("span",{className:"text-xs uppercase tracking-[0.2em] text-slate-500",children:[o.length," entries"]})]}),Y.jsx("div",{className:"h-64 overflow-y-auto rounded-xl bg-slate-950/40 p-3 text-xs font-mono text-slate-300",children:o.length===0?Y.jsx("p",{children:"No logs yet."}):o.slice().reverse().map(i=>Y.jsxs("div",{className:"mb-2",children:[Y.jsx("span",{className:"text-slate-500",children:i.timestamp})," ",Y.jsxs("span",{className:"text-cyan-300",children:["[",i.level,"]"]})," ",i.label&&Y.jsxs("span",{className:"text-pink-300",children:["[",i.label,"]"]})," ",Y.jsx("span",{children:i.message})]},i.id))})]})}function nv(){const{session:o,requestControl:i}=qn(),f=o?.roster??[],[s,m]=Mt.useState({});async function E(R){m(B=>({...B,[R]:!0}));try{await i(R)}catch(B){alert(B.message)}finally{m(B=>({...B,[R]:!1}))}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Rovers"}),Y.jsxs("div",{className:"mt-4 space-y-3",children:[f.length===0&&Y.jsx("p",{className:"text-slate-400",children:"No rovers registered."}),f.map(R=>Y.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-3 rounded-xl bg-slate-950/40 px-4 py-3",children:[Y.jsxs("div",{children:[Y.jsx("p",{className:"text-white",children:R.name}),Y.jsxs("p",{className:"text-xs text-slate-400",children:["Locked: ",R.locked?"yes":"no"]})]}),Y.jsx("button",{type:"button",onClick:()=>E(R.id),disabled:s[R.id],className:"rounded-full bg-blue-600 px-4 py-1 text-sm font-semibold text-white disabled:opacity-50",children:s[R.id]?"Requesting…":"Request control"})]},R.id))]})]})}function av(){const{session:o,releaseControl:i}=qn(),f=o?.assignment,s=f?.roverId,[m,E]=Mt.useState(!1);async function R(){if(s){E(!0);try{await i(s)}catch(B){alert(B.message)}finally{E(!1)}}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Assignment"}),s?Y.jsxs("div",{className:"mt-4 space-y-3",children:[Y.jsxs("p",{className:"text-slate-300",children:["Currently driving rover ",s]}),Y.jsx("button",{type:"button",onClick:R,disabled:m,className:"rounded-full bg-red-600 px-4 py-1 text-sm font-semibold text-white disabled:opacity-50",children:m?"Releasing…":"Release control"})]}):Y.jsxs("div",{className:"mt-4 text-slate-400",children:[Y.jsxs("p",{children:["Status: ",f?.status??"not assigned"]}),f?.queuePosition&&Y.jsxs("p",{children:["Queue position: ",f.queuePosition]})]})]})}function uv(){const{session:o}=qn(),i=Mt.useMemo(()=>JSON.stringify(o??{},null,2),[o]);return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Session snapshot"}),Y.jsx("pre",{className:"mt-4 max-h-64 overflow-y-auto text-sm text-teal-200",children:i})]})}function iv(){const{login:o,setRole:i}=qn(),[f,s]=Mt.useState(""),[m,E]=Mt.useState(""),[R,B]=Mt.useState(!1);async function M(A){A.preventDefault(),B(!0);try{await o(f,m),s(""),E("")}catch(Q){alert(Q.message)}finally{B(!1)}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Authentication"}),Y.jsxs("form",{className:"mt-4 flex flex-col gap-3",onSubmit:M,children:[Y.jsx("input",{className:"rounded-lg border border-slate-800 bg-slate-950/60 px-3 py-2 text-white",placeholder:"Username",value:f,onChange:A=>s(A.target.value)}),Y.jsx("input",{className:"rounded-lg border border-slate-800 bg-slate-950/60 px-3 py-2 text-white",placeholder:"Password",type:"password",value:m,onChange:A=>E(A.target.value)}),Y.jsx("button",{type:"submit",disabled:R,className:"rounded-lg bg-emerald-600 py-2 font-semibold text-white disabled:opacity-50",children:R?"Logging in…":"Login as admin"})]}),Y.jsxs("div",{className:"mt-4 flex gap-3",children:[Y.jsx("button",{type:"button",onClick:()=>i("user"),className:"rounded-lg border border-slate-700 px-3 py-1 text-sm text-slate-200",children:"Driver mode"}),Y.jsx("button",{type:"button",onClick:()=>i("spectator"),className:"rounded-lg border border-slate-700 px-3 py-1 text-sm text-slate-200",children:"Spectator mode"})]})]})}function cv(){const{connected:o,session:i}=qn();return Y.jsx("div",{className:"min-h-screen bg-slate-950 text-slate-50",children:Y.jsxs("main",{className:"mx-auto flex max-w-6xl flex-col gap-6 px-6 py-10",children:[Y.jsxs("header",{className:"space-y-4",children:[Y.jsx("h1",{className:"text-4xl font-semibold text-white",children:"Multi Roomba Rover Console"}),Y.jsx(ev,{connected:o,role:i?.role,mode:i?.mode})]}),Y.jsxs("section",{className:"grid gap-6 lg:grid-cols-2",children:[Y.jsx(nv,{}),Y.jsx(av,{}),Y.jsx(iv,{}),Y.jsx(uv,{})]}),Y.jsx(lv,{})]})})}l0.createRoot(document.getElementById("root")).render(Y.jsx(Mt.StrictMode,{children:Y.jsx(F0,{children:Y.jsx(tv,{children:Y.jsx(cv,{})})})})); diff --git a/server/public/index.html b/server/public/index.html index 16e0ccfd..fb1266fa 100644 --- a/server/public/index.html +++ b/server/public/index.html @@ -5,7 +5,7 @@ webui - + From d984951b206a8cf9afc20fe5a4c00fff2e2262ea Mon Sep 17 00:00:00 2001 From: legop3 Date: Sat, 15 Nov 2025 04:25:33 -0500 Subject: [PATCH 05/61] f --- server/public/assets/{index-DA6EAiU9.js => index-BED_cmF2.js} | 2 +- server/public/index.html | 2 +- webui/src/lib/socket.js | 4 +++- 3 files changed, 5 insertions(+), 3 deletions(-) rename server/public/assets/{index-DA6EAiU9.js => index-BED_cmF2.js} (96%) diff --git a/server/public/assets/index-DA6EAiU9.js b/server/public/assets/index-BED_cmF2.js similarity index 96% rename from server/public/assets/index-DA6EAiU9.js rename to server/public/assets/index-BED_cmF2.js index d7a72f8d..7268d877 100644 --- a/server/public/assets/index-DA6EAiU9.js +++ b/server/public/assets/index-BED_cmF2.js @@ -6,4 +6,4 @@ `+h[n].replace(" at new "," at ");return t.displayName&&_.includes("")&&(_=_.replace("",t.displayName)),_}while(1<=n&&0<=a);break}}}finally{ii=!1,Error.prepareStackTrace=l}return(l=t?t.displayName||t.name:"")?Rl(l):""}function Ad(t,e){switch(t.tag){case 26:case 27:case 5:return Rl(t.type);case 16:return Rl("Lazy");case 13:return t.child!==e&&e!==null?Rl("Suspense Fallback"):Rl("Suspense");case 19:return Rl("SuspenseList");case 0:case 15:return ci(t.type,!1);case 11:return ci(t.type.render,!1);case 1:return ci(t.type,!0);case 31:return Rl("Activity");default:return""}}function Jf(t){try{var e="",l=null;do e+=Ad(t,l),l=t,t=t.return;while(t);return e}catch(n){return` Error generating stack: `+n.message+` `+n.stack}}var fi=Object.prototype.hasOwnProperty,si=o.unstable_scheduleCallback,oi=o.unstable_cancelCallback,zd=o.unstable_shouldYield,Od=o.unstable_requestPaint,Pt=o.unstable_now,Nd=o.unstable_getCurrentPriorityLevel,kf=o.unstable_ImmediatePriority,Wf=o.unstable_UserBlockingPriority,Ba=o.unstable_NormalPriority,Md=o.unstable_LowPriority,$f=o.unstable_IdlePriority,Rd=o.log,Dd=o.unstable_setDisableYieldValue,Yn=null,te=null;function ll(t){if(typeof Rd=="function"&&Dd(t),te&&typeof te.setStrictMode=="function")try{te.setStrictMode(Yn,t)}catch{}}var ee=Math.clz32?Math.clz32:Cd,Ud=Math.log,xd=Math.LN2;function Cd(t){return t>>>=0,t===0?32:31-(Ud(t)/xd|0)|0}var qa=256,Ha=262144,Ya=4194304;function Dl(t){var e=t&42;if(e!==0)return e;switch(t&-t){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return t&261888;case 262144:case 524288:case 1048576:case 2097152:return t&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return t&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return t}}function ja(t,e,l){var n=t.pendingLanes;if(n===0)return 0;var a=0,u=t.suspendedLanes,c=t.pingedLanes;t=t.warmLanes;var r=n&134217727;return r!==0?(n=r&~u,n!==0?a=Dl(n):(c&=r,c!==0?a=Dl(c):l||(l=r&~t,l!==0&&(a=Dl(l))))):(r=n&~u,r!==0?a=Dl(r):c!==0?a=Dl(c):l||(l=n&~t,l!==0&&(a=Dl(l)))),a===0?0:e!==0&&e!==a&&(e&u)===0&&(u=a&-a,l=e&-e,u>=l||u===32&&(l&4194048)!==0)?e:a}function jn(t,e){return(t.pendingLanes&~(t.suspendedLanes&~t.pingedLanes)&e)===0}function Bd(t,e){switch(t){case 1:case 2:case 4:case 8:case 64:return e+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 e+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 Ff(){var t=Ya;return Ya<<=1,(Ya&62914560)===0&&(Ya=4194304),t}function ri(t){for(var e=[],l=0;31>l;l++)e.push(t);return e}function Ln(t,e){t.pendingLanes|=e,e!==268435456&&(t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0)}function qd(t,e,l,n,a,u){var c=t.pendingLanes;t.pendingLanes=l,t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0,t.expiredLanes&=l,t.entangledLanes&=l,t.errorRecoveryDisabledLanes&=l,t.shellSuspendCounter=0;var r=t.entanglements,h=t.expirationTimes,p=t.hiddenUpdates;for(l=c&~l;0"u")return null;try{return t.activeElement||t.body}catch{return t.body}}var Qd=/[\n"\\]/g;function re(t){return t.replace(Qd,function(e){return"\\"+e.charCodeAt(0).toString(16)+" "})}function gi(t,e,l,n,a,u,c,r){t.name="",c!=null&&typeof c!="function"&&typeof c!="symbol"&&typeof c!="boolean"?t.type=c:t.removeAttribute("type"),e!=null?c==="number"?(e===0&&t.value===""||t.value!=e)&&(t.value=""+oe(e)):t.value!==""+oe(e)&&(t.value=""+oe(e)):c!=="submit"&&c!=="reset"||t.removeAttribute("value"),e!=null?pi(t,c,oe(e)):l!=null?pi(t,c,oe(l)):n!=null&&t.removeAttribute("value"),a==null&&u!=null&&(t.defaultChecked=!!u),a!=null&&(t.checked=a&&typeof a!="function"&&typeof a!="symbol"),r!=null&&typeof r!="function"&&typeof r!="symbol"&&typeof r!="boolean"?t.name=""+oe(r):t.removeAttribute("name")}function os(t,e,l,n,a,u,c,r){if(u!=null&&typeof u!="function"&&typeof u!="symbol"&&typeof u!="boolean"&&(t.type=u),e!=null||l!=null){if(!(u!=="submit"&&u!=="reset"||e!=null)){vi(t);return}l=l!=null?""+oe(l):"",e=e!=null?""+oe(e):l,r||e===t.value||(t.value=e),t.defaultValue=e}n=n??a,n=typeof n!="function"&&typeof n!="symbol"&&!!n,t.checked=r?t.checked:!!n,t.defaultChecked=!!n,c!=null&&typeof c!="function"&&typeof c!="symbol"&&typeof c!="boolean"&&(t.name=c),vi(t)}function pi(t,e,l){e==="number"&&Qa(t.ownerDocument)===t||t.defaultValue===""+l||(t.defaultValue=""+l)}function tn(t,e,l,n){if(t=t.options,e){e={};for(var a=0;a"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Ti=!1;if(Le)try{var Vn={};Object.defineProperty(Vn,"passive",{get:function(){Ti=!0}}),window.addEventListener("test",Vn,Vn),window.removeEventListener("test",Vn,Vn)}catch{Ti=!1}var al=null,Ai=null,Va=null;function gs(){if(Va)return Va;var t,e=Ai,l=e.length,n,a="value"in al?al.value:al.textContent,u=a.length;for(t=0;t=Kn),Ts=" ",As=!1;function zs(t,e){switch(t){case"keyup":return my.indexOf(e.keyCode)!==-1;case"keydown":return e.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Os(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var an=!1;function gy(t,e){switch(t){case"compositionend":return Os(e);case"keypress":return e.which!==32?null:(As=!0,Ts);case"textInput":return t=e.data,t===Ts&&As?null:t;default:return null}}function py(t,e){if(an)return t==="compositionend"||!Ri&&zs(t,e)?(t=gs(),Va=Ai=al=null,an=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(e.ctrlKey||e.altKey||e.metaKey)||e.ctrlKey&&e.altKey){if(e.char&&1=e)return{node:l,offset:e-t};t=n}t:{for(;l;){if(l.nextSibling){l=l.nextSibling;break t}l=l.parentNode}l=void 0}l=Bs(l)}}function Hs(t,e){return t&&e?t===e?!0:t&&t.nodeType===3?!1:e&&e.nodeType===3?Hs(t,e.parentNode):"contains"in t?t.contains(e):t.compareDocumentPosition?!!(t.compareDocumentPosition(e)&16):!1:!1}function Ys(t){t=t!=null&&t.ownerDocument!=null&&t.ownerDocument.defaultView!=null?t.ownerDocument.defaultView:window;for(var e=Qa(t.document);e instanceof t.HTMLIFrameElement;){try{var l=typeof e.contentWindow.location.href=="string"}catch{l=!1}if(l)t=e.contentWindow;else break;e=Qa(t.document)}return e}function xi(t){var e=t&&t.nodeName&&t.nodeName.toLowerCase();return e&&(e==="input"&&(t.type==="text"||t.type==="search"||t.type==="tel"||t.type==="url"||t.type==="password")||e==="textarea"||t.contentEditable==="true")}var Oy=Le&&"documentMode"in document&&11>=document.documentMode,un=null,Ci=null,$n=null,Bi=!1;function js(t,e,l){var n=l.window===l?l.document:l.nodeType===9?l:l.ownerDocument;Bi||un==null||un!==Qa(n)||(n=un,"selectionStart"in n&&xi(n)?n={start:n.selectionStart,end:n.selectionEnd}:(n=(n.ownerDocument&&n.ownerDocument.defaultView||window).getSelection(),n={anchorNode:n.anchorNode,anchorOffset:n.anchorOffset,focusNode:n.focusNode,focusOffset:n.focusOffset}),$n&&Wn($n,n)||($n=n,n=Hu(Ci,"onSelect"),0>=c,a-=c,Re=1<<32-ee(e)+a|l<w?(F=H,H=null):F=H.sibling;var lt=S(v,H,g[w],z);if(lt===null){H===null&&(H=F);break}t&&H&<.alternate===null&&e(v,H),d=u(lt,d,w),et===null?j=lt:et.sibling=lt,et=lt,H=F}if(w===g.length)return l(v,H),P&&Qe(v,w),j;if(H===null){for(;ww?(F=H,H=null):F=H.sibling;var Ol=S(v,H,lt.value,z);if(Ol===null){H===null&&(H=F);break}t&&H&&Ol.alternate===null&&e(v,H),d=u(Ol,d,w),et===null?j=Ol:et.sibling=Ol,et=Ol,H=F}if(lt.done)return l(v,H),P&&Qe(v,w),j;if(H===null){for(;!lt.done;w++,lt=g.next())lt=O(v,lt.value,z),lt!==null&&(d=u(lt,d,w),et===null?j=lt:et.sibling=lt,et=lt);return P&&Qe(v,w),j}for(H=n(H);!lt.done;w++,lt=g.next())lt=b(H,v,w,lt.value,z),lt!==null&&(t&<.alternate!==null&&H.delete(lt.key===null?w:lt.key),d=u(lt,d,w),et===null?j=lt:et.sibling=lt,et=lt);return t&&H.forEach(function(Km){return e(v,Km)}),P&&Qe(v,w),j}function ot(v,d,g,z){if(typeof g=="object"&&g!==null&&g.type===Ut&&g.key===null&&(g=g.props.children),typeof g=="object"&&g!==null){switch(g.$$typeof){case Yt:t:{for(var j=g.key;d!==null;){if(d.key===j){if(j=g.type,j===Ut){if(d.tag===7){l(v,d.sibling),z=a(d,g.props.children),z.return=v,v=z;break t}}else if(d.elementType===j||typeof j=="object"&&j!==null&&j.$$typeof===Vt&&Ql(j)===d.type){l(v,d.sibling),z=a(d,g.props),la(z,g),z.return=v,v=z;break t}l(v,d);break}else e(v,d);d=d.sibling}g.type===Ut?(z=Hl(g.props.children,v.mode,z,g.key),z.return=v,v=z):(z=Pa(g.type,g.key,g.props,null,v.mode,z),la(z,g),z.return=v,v=z)}return c(v);case _t:t:{for(j=g.key;d!==null;){if(d.key===j)if(d.tag===4&&d.stateNode.containerInfo===g.containerInfo&&d.stateNode.implementation===g.implementation){l(v,d.sibling),z=a(d,g.children||[]),z.return=v,v=z;break t}else{l(v,d);break}else e(v,d);d=d.sibling}z=Qi(g,v.mode,z),z.return=v,v=z}return c(v);case Vt:return g=Ql(g),ot(v,d,g,z)}if(_e(g))return C(v,d,g,z);if(Zt(g)){if(j=Zt(g),typeof j!="function")throw Error(s(150));return g=j.call(g),L(v,d,g,z)}if(typeof g.then=="function")return ot(v,d,iu(g),z);if(g.$$typeof===jt)return ot(v,d,lu(v,g),z);cu(v,g)}return typeof g=="string"&&g!==""||typeof g=="number"||typeof g=="bigint"?(g=""+g,d!==null&&d.tag===6?(l(v,d.sibling),z=a(d,g),z.return=v,v=z):(l(v,d),z=Xi(g,v.mode,z),z.return=v,v=z),c(v)):l(v,d)}return function(v,d,g,z){try{ea=0;var j=ot(v,d,g,z);return gn=null,j}catch(H){if(H===vn||H===au)throw H;var et=ne(29,H,null,v.mode);return et.lanes=z,et.return=v,et}finally{}}}var Vl=co(!0),fo=co(!1),sl=!1;function Pi(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function tc(t,e){t=t.updateQueue,e.updateQueue===t&&(e.updateQueue={baseState:t.baseState,firstBaseUpdate:t.firstBaseUpdate,lastBaseUpdate:t.lastBaseUpdate,shared:t.shared,callbacks:null})}function ol(t){return{lane:t,tag:0,payload:null,callback:null,next:null}}function rl(t,e,l){var n=t.updateQueue;if(n===null)return null;if(n=n.shared,(nt&2)!==0){var a=n.pending;return a===null?e.next=e:(e.next=a.next,a.next=e),n.pending=e,e=Ia(t),ws(t,null,l),e}return Fa(t,n,e,l),Ia(t)}function na(t,e,l){if(e=e.updateQueue,e!==null&&(e=e.shared,(l&4194048)!==0)){var n=e.lanes;n&=t.pendingLanes,l|=n,e.lanes=l,Pf(t,l)}}function ec(t,e){var l=t.updateQueue,n=t.alternate;if(n!==null&&(n=n.updateQueue,l===n)){var a=null,u=null;if(l=l.firstBaseUpdate,l!==null){do{var c={lane:l.lane,tag:l.tag,payload:l.payload,callback:null,next:null};u===null?a=u=c:u=u.next=c,l=l.next}while(l!==null);u===null?a=u=e:u=u.next=e}else a=u=e;l={baseState:n.baseState,firstBaseUpdate:a,lastBaseUpdate:u,shared:n.shared,callbacks:n.callbacks},t.updateQueue=l;return}t=l.lastBaseUpdate,t===null?l.firstBaseUpdate=e:t.next=e,l.lastBaseUpdate=e}var lc=!1;function aa(){if(lc){var t=mn;if(t!==null)throw t}}function ua(t,e,l,n){lc=!1;var a=t.updateQueue;sl=!1;var u=a.firstBaseUpdate,c=a.lastBaseUpdate,r=a.shared.pending;if(r!==null){a.shared.pending=null;var h=r,p=h.next;h.next=null,c===null?u=p:c.next=p,c=h;var _=t.alternate;_!==null&&(_=_.updateQueue,r=_.lastBaseUpdate,r!==c&&(r===null?_.firstBaseUpdate=p:r.next=p,_.lastBaseUpdate=h))}if(u!==null){var O=a.baseState;c=0,_=p=h=null,r=u;do{var S=r.lane&-536870913,b=S!==r.lane;if(b?($&S)===S:(n&S)===S){S!==0&&S===yn&&(lc=!0),_!==null&&(_=_.next={lane:0,tag:r.tag,payload:r.payload,callback:null,next:null});t:{var C=t,L=r;S=e;var ot=l;switch(L.tag){case 1:if(C=L.payload,typeof C=="function"){O=C.call(ot,O,S);break t}O=C;break t;case 3:C.flags=C.flags&-65537|128;case 0:if(C=L.payload,S=typeof C=="function"?C.call(ot,O,S):C,S==null)break t;O=x({},O,S);break t;case 2:sl=!0}}S=r.callback,S!==null&&(t.flags|=64,b&&(t.flags|=8192),b=a.callbacks,b===null?a.callbacks=[S]:b.push(S))}else b={lane:S,tag:r.tag,payload:r.payload,callback:r.callback,next:null},_===null?(p=_=b,h=O):_=_.next=b,c|=S;if(r=r.next,r===null){if(r=a.shared.pending,r===null)break;b=r,r=b.next,b.next=null,a.lastBaseUpdate=b,a.shared.pending=null}}while(!0);_===null&&(h=O),a.baseState=h,a.firstBaseUpdate=p,a.lastBaseUpdate=_,u===null&&(a.shared.lanes=0),vl|=c,t.lanes=c,t.memoizedState=O}}function so(t,e){if(typeof t!="function")throw Error(s(191,t));t.call(e)}function oo(t,e){var l=t.callbacks;if(l!==null)for(t.callbacks=null,t=0;tu?u:8;var c=T.T,r={};T.T=r,_c(t,!1,e,l);try{var h=a(),p=T.S;if(p!==null&&p(r,h),h!==null&&typeof h=="object"&&typeof h.then=="function"){var _=qy(h,n);fa(t,e,_,fe(t))}else fa(t,e,n,fe(t))}catch(O){fa(t,e,{then:function(){},status:"rejected",reason:O},fe())}finally{D.p=u,c!==null&&r.types!==null&&(c.types=r.types),T.T=c}}function Qy(){}function Sc(t,e,l,n){if(t.tag!==5)throw Error(s(476));var a=Vo(t).queue;Go(t,a,e,X,l===null?Qy:function(){return Zo(t),l(n)})}function Vo(t){var e=t.memoizedState;if(e!==null)return e;e={memoizedState:X,baseState:X,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:we,lastRenderedState:X},next:null};var l={};return e.next={memoizedState:l,baseState:l,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:we,lastRenderedState:l},next:null},t.memoizedState=e,t=t.alternate,t!==null&&(t.memoizedState=e),e}function Zo(t){var e=Vo(t);e.next===null&&(e=t.alternate.memoizedState),fa(t,e.next.queue,{},fe())}function bc(){return Bt(za)}function wo(){return bt().memoizedState}function Ko(){return bt().memoizedState}function Gy(t){for(var e=t.return;e!==null;){switch(e.tag){case 24:case 3:var l=fe();t=ol(l);var n=rl(e,t,l);n!==null&&(Ft(n,e,l),na(n,e,l)),e={cache:Wi()},t.payload=e;return}e=e.return}}function Vy(t,e,l){var n=fe();l={lane:n,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},gu(t)?ko(e,l):(l=ji(t,e,l,n),l!==null&&(Ft(l,t,n),Wo(l,e,n)))}function Jo(t,e,l){var n=fe();fa(t,e,l,n)}function fa(t,e,l,n){var a={lane:n,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null};if(gu(t))ko(e,a);else{var u=t.alternate;if(t.lanes===0&&(u===null||u.lanes===0)&&(u=e.lastRenderedReducer,u!==null))try{var c=e.lastRenderedState,r=u(c,l);if(a.hasEagerState=!0,a.eagerState=r,le(r,c))return Fa(t,e,a,0),ht===null&&$a(),!1}catch{}finally{}if(l=ji(t,e,a,n),l!==null)return Ft(l,t,n),Wo(l,e,n),!0}return!1}function _c(t,e,l,n){if(n={lane:2,revertLane:Pc(),gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},gu(t)){if(e)throw Error(s(479))}else e=ji(t,l,n,2),e!==null&&Ft(e,t,2)}function gu(t){var e=t.alternate;return t===Z||e!==null&&e===Z}function ko(t,e){Sn=ou=!0;var l=t.pending;l===null?e.next=e:(e.next=l.next,l.next=e),t.pending=e}function Wo(t,e,l){if((l&4194048)!==0){var n=e.lanes;n&=t.pendingLanes,l|=n,e.lanes=l,Pf(t,l)}}var sa={readContext:Bt,use:du,useCallback:vt,useContext:vt,useEffect:vt,useImperativeHandle:vt,useLayoutEffect:vt,useInsertionEffect:vt,useMemo:vt,useReducer:vt,useRef:vt,useState:vt,useDebugValue:vt,useDeferredValue:vt,useTransition:vt,useSyncExternalStore:vt,useId:vt,useHostTransitionStatus:vt,useFormState:vt,useActionState:vt,useOptimistic:vt,useMemoCache:vt,useCacheRefresh:vt};sa.useEffectEvent=vt;var $o={readContext:Bt,use:du,useCallback:function(t,e){return Qt().memoizedState=[t,e===void 0?null:e],t},useContext:Bt,useEffect:Co,useImperativeHandle:function(t,e,l){l=l!=null?l.concat([t]):null,mu(4194308,4,Yo.bind(null,e,t),l)},useLayoutEffect:function(t,e){return mu(4194308,4,t,e)},useInsertionEffect:function(t,e){mu(4,2,t,e)},useMemo:function(t,e){var l=Qt();e=e===void 0?null:e;var n=t();if(Zl){ll(!0);try{t()}finally{ll(!1)}}return l.memoizedState=[n,e],n},useReducer:function(t,e,l){var n=Qt();if(l!==void 0){var a=l(e);if(Zl){ll(!0);try{l(e)}finally{ll(!1)}}}else a=e;return n.memoizedState=n.baseState=a,t={pending:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:a},n.queue=t,t=t.dispatch=Vy.bind(null,Z,t),[n.memoizedState,t]},useRef:function(t){var e=Qt();return t={current:t},e.memoizedState=t},useState:function(t){t=yc(t);var e=t.queue,l=Jo.bind(null,Z,e);return e.dispatch=l,[t.memoizedState,l]},useDebugValue:gc,useDeferredValue:function(t,e){var l=Qt();return pc(l,t,e)},useTransition:function(){var t=yc(!1);return t=Go.bind(null,Z,t.queue,!0,!1),Qt().memoizedState=t,[!1,t]},useSyncExternalStore:function(t,e,l){var n=Z,a=Qt();if(P){if(l===void 0)throw Error(s(407));l=l()}else{if(l=e(),ht===null)throw Error(s(349));($&127)!==0||go(n,e,l)}a.memoizedState=l;var u={value:l,getSnapshot:e};return a.queue=u,Co(So.bind(null,n,u,t),[t]),n.flags|=2048,_n(9,{destroy:void 0},po.bind(null,n,u,l,e),null),l},useId:function(){var t=Qt(),e=ht.identifierPrefix;if(P){var l=De,n=Re;l=(n&~(1<<32-ee(n)-1)).toString(32)+l,e="_"+e+"R_"+l,l=ru++,0<\/script>",u=u.removeChild(u.firstChild);break;case"select":u=typeof n.is=="string"?c.createElement("select",{is:n.is}):c.createElement("select"),n.multiple?u.multiple=!0:n.size&&(u.size=n.size);break;default:u=typeof n.is=="string"?c.createElement(a,{is:n.is}):c.createElement(a)}}u[xt]=e,u[wt]=n;t:for(c=e.child;c!==null;){if(c.tag===5||c.tag===6)u.appendChild(c.stateNode);else if(c.tag!==4&&c.tag!==27&&c.child!==null){c.child.return=c,c=c.child;continue}if(c===e)break t;for(;c.sibling===null;){if(c.return===null||c.return===e)break t;c=c.return}c.sibling.return=c.return,c=c.sibling}e.stateNode=u;t:switch(Ht(u,a,n),a){case"button":case"input":case"select":case"textarea":n=!!n.autoFocus;break t;case"img":n=!0;break t;default:n=!1}n&&Je(e)}}return yt(e),qc(e,e.type,t===null?null:t.memoizedProps,e.pendingProps,l),null;case 6:if(t&&e.stateNode!=null)t.memoizedProps!==n&&Je(e);else{if(typeof n!="string"&&e.stateNode===null)throw Error(s(166));if(t=J.current,hn(e)){if(t=e.stateNode,l=e.memoizedProps,n=null,a=Ct,a!==null)switch(a.tag){case 27:case 5:n=a.memoizedProps}t[xt]=e,t=!!(t.nodeValue===l||n!==null&&n.suppressHydrationWarning===!0||mh(t.nodeValue,l)),t||cl(e,!0)}else t=Yu(t).createTextNode(n),t[xt]=e,e.stateNode=t}return yt(e),null;case 31:if(l=e.memoizedState,t===null||t.memoizedState!==null){if(n=hn(e),l!==null){if(t===null){if(!n)throw Error(s(318));if(t=e.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(s(557));t[xt]=e}else Yl(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;yt(e),t=!1}else l=wi(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=l),t=!0;if(!t)return e.flags&256?(ue(e),e):(ue(e),null);if((e.flags&128)!==0)throw Error(s(558))}return yt(e),null;case 13:if(n=e.memoizedState,t===null||t.memoizedState!==null&&t.memoizedState.dehydrated!==null){if(a=hn(e),n!==null&&n.dehydrated!==null){if(t===null){if(!a)throw Error(s(318));if(a=e.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(s(317));a[xt]=e}else Yl(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;yt(e),a=!1}else a=wi(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=a),a=!0;if(!a)return e.flags&256?(ue(e),e):(ue(e),null)}return ue(e),(e.flags&128)!==0?(e.lanes=l,e):(l=n!==null,t=t!==null&&t.memoizedState!==null,l&&(n=e.child,a=null,n.alternate!==null&&n.alternate.memoizedState!==null&&n.alternate.memoizedState.cachePool!==null&&(a=n.alternate.memoizedState.cachePool.pool),u=null,n.memoizedState!==null&&n.memoizedState.cachePool!==null&&(u=n.memoizedState.cachePool.pool),u!==a&&(n.flags|=2048)),l!==t&&l&&(e.child.flags|=8192),Eu(e,e.updateQueue),yt(e),null);case 4:return pt(),t===null&&nf(e.stateNode.containerInfo),yt(e),null;case 10:return Ve(e.type),yt(e),null;case 19:if(N(St),n=e.memoizedState,n===null)return yt(e),null;if(a=(e.flags&128)!==0,u=n.rendering,u===null)if(a)ra(n,!1);else{if(gt!==0||t!==null&&(t.flags&128)!==0)for(t=e.child;t!==null;){if(u=su(t),u!==null){for(e.flags|=128,ra(n,!1),t=u.updateQueue,e.updateQueue=t,Eu(e,t),e.subtreeFlags=0,t=l,l=e.child;l!==null;)Ks(l,t),l=l.sibling;return U(St,St.current&1|2),P&&Qe(e,n.treeForkCount),e.child}t=t.sibling}n.tail!==null&&Pt()>Nu&&(e.flags|=128,a=!0,ra(n,!1),e.lanes=4194304)}else{if(!a)if(t=su(u),t!==null){if(e.flags|=128,a=!0,t=t.updateQueue,e.updateQueue=t,Eu(e,t),ra(n,!0),n.tail===null&&n.tailMode==="hidden"&&!u.alternate&&!P)return yt(e),null}else 2*Pt()-n.renderingStartTime>Nu&&l!==536870912&&(e.flags|=128,a=!0,ra(n,!1),e.lanes=4194304);n.isBackwards?(u.sibling=e.child,e.child=u):(t=n.last,t!==null?t.sibling=u:e.child=u,n.last=u)}return n.tail!==null?(t=n.tail,n.rendering=t,n.tail=t.sibling,n.renderingStartTime=Pt(),t.sibling=null,l=St.current,U(St,a?l&1|2:l&1),P&&Qe(e,n.treeForkCount),t):(yt(e),null);case 22:case 23:return ue(e),ac(),n=e.memoizedState!==null,t!==null?t.memoizedState!==null!==n&&(e.flags|=8192):n&&(e.flags|=8192),n?(l&536870912)!==0&&(e.flags&128)===0&&(yt(e),e.subtreeFlags&6&&(e.flags|=8192)):yt(e),l=e.updateQueue,l!==null&&Eu(e,l.retryQueue),l=null,t!==null&&t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(l=t.memoizedState.cachePool.pool),n=null,e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),n!==l&&(e.flags|=2048),t!==null&&N(Xl),null;case 24:return l=null,t!==null&&(l=t.memoizedState.cache),e.memoizedState.cache!==l&&(e.flags|=2048),Ve(Et),yt(e),null;case 25:return null;case 30:return null}throw Error(s(156,e.tag))}function ky(t,e){switch(Vi(e),e.tag){case 1:return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 3:return Ve(Et),pt(),t=e.flags,(t&65536)!==0&&(t&128)===0?(e.flags=t&-65537|128,e):null;case 26:case 27:case 5:return Ca(e),null;case 31:if(e.memoizedState!==null){if(ue(e),e.alternate===null)throw Error(s(340));Yl()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 13:if(ue(e),t=e.memoizedState,t!==null&&t.dehydrated!==null){if(e.alternate===null)throw Error(s(340));Yl()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 19:return N(St),null;case 4:return pt(),null;case 10:return Ve(e.type),null;case 22:case 23:return ue(e),ac(),t!==null&&N(Xl),t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 24:return Ve(Et),null;case 25:return null;default:return null}}function br(t,e){switch(Vi(e),e.tag){case 3:Ve(Et),pt();break;case 26:case 27:case 5:Ca(e);break;case 4:pt();break;case 31:e.memoizedState!==null&&ue(e);break;case 13:ue(e);break;case 19:N(St);break;case 10:Ve(e.type);break;case 22:case 23:ue(e),ac(),t!==null&&N(Xl);break;case 24:Ve(Et)}}function ha(t,e){try{var l=e.updateQueue,n=l!==null?l.lastEffect:null;if(n!==null){var a=n.next;l=a;do{if((l.tag&t)===t){n=void 0;var u=l.create,c=l.inst;n=u(),c.destroy=n}l=l.next}while(l!==a)}}catch(r){it(e,e.return,r)}}function yl(t,e,l){try{var n=e.updateQueue,a=n!==null?n.lastEffect:null;if(a!==null){var u=a.next;n=u;do{if((n.tag&t)===t){var c=n.inst,r=c.destroy;if(r!==void 0){c.destroy=void 0,a=e;var h=l,p=r;try{p()}catch(_){it(a,h,_)}}}n=n.next}while(n!==u)}}catch(_){it(e,e.return,_)}}function _r(t){var e=t.updateQueue;if(e!==null){var l=t.stateNode;try{oo(e,l)}catch(n){it(t,t.return,n)}}}function Er(t,e,l){l.props=wl(t.type,t.memoizedProps),l.state=t.memoizedState;try{l.componentWillUnmount()}catch(n){it(t,e,n)}}function da(t,e){try{var l=t.ref;if(l!==null){switch(t.tag){case 26:case 27:case 5:var n=t.stateNode;break;case 30:n=t.stateNode;break;default:n=t.stateNode}typeof l=="function"?t.refCleanup=l(n):l.current=n}}catch(a){it(t,e,a)}}function Ue(t,e){var l=t.ref,n=t.refCleanup;if(l!==null)if(typeof n=="function")try{n()}catch(a){it(t,e,a)}finally{t.refCleanup=null,t=t.alternate,t!=null&&(t.refCleanup=null)}else if(typeof l=="function")try{l(null)}catch(a){it(t,e,a)}else l.current=null}function Tr(t){var e=t.type,l=t.memoizedProps,n=t.stateNode;try{t:switch(e){case"button":case"input":case"select":case"textarea":l.autoFocus&&n.focus();break t;case"img":l.src?n.src=l.src:l.srcSet&&(n.srcset=l.srcSet)}}catch(a){it(t,t.return,a)}}function Hc(t,e,l){try{var n=t.stateNode;vm(n,t.type,l,e),n[wt]=e}catch(a){it(t,t.return,a)}}function Ar(t){return t.tag===5||t.tag===3||t.tag===26||t.tag===27&&_l(t.type)||t.tag===4}function Yc(t){t:for(;;){for(;t.sibling===null;){if(t.return===null||Ar(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.tag===27&&_l(t.type)||t.flags&2||t.child===null||t.tag===4)continue t;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function jc(t,e,l){var n=t.tag;if(n===5||n===6)t=t.stateNode,e?(l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l).insertBefore(t,e):(e=l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l,e.appendChild(t),l=l._reactRootContainer,l!=null||e.onclick!==null||(e.onclick=je));else if(n!==4&&(n===27&&_l(t.type)&&(l=t.stateNode,e=null),t=t.child,t!==null))for(jc(t,e,l),t=t.sibling;t!==null;)jc(t,e,l),t=t.sibling}function Tu(t,e,l){var n=t.tag;if(n===5||n===6)t=t.stateNode,e?l.insertBefore(t,e):l.appendChild(t);else if(n!==4&&(n===27&&_l(t.type)&&(l=t.stateNode),t=t.child,t!==null))for(Tu(t,e,l),t=t.sibling;t!==null;)Tu(t,e,l),t=t.sibling}function zr(t){var e=t.stateNode,l=t.memoizedProps;try{for(var n=t.type,a=e.attributes;a.length;)e.removeAttributeNode(a[0]);Ht(e,n,l),e[xt]=t,e[wt]=l}catch(u){it(t,t.return,u)}}var ke=!1,zt=!1,Lc=!1,Or=typeof WeakSet=="function"?WeakSet:Set,Dt=null;function Wy(t,e){if(t=t.containerInfo,cf=Zu,t=Ys(t),xi(t)){if("selectionStart"in t)var l={start:t.selectionStart,end:t.selectionEnd};else t:{l=(l=t.ownerDocument)&&l.defaultView||window;var n=l.getSelection&&l.getSelection();if(n&&n.rangeCount!==0){l=n.anchorNode;var a=n.anchorOffset,u=n.focusNode;n=n.focusOffset;try{l.nodeType,u.nodeType}catch{l=null;break t}var c=0,r=-1,h=-1,p=0,_=0,O=t,S=null;e:for(;;){for(var b;O!==l||a!==0&&O.nodeType!==3||(r=c+a),O!==u||n!==0&&O.nodeType!==3||(h=c+n),O.nodeType===3&&(c+=O.nodeValue.length),(b=O.firstChild)!==null;)S=O,O=b;for(;;){if(O===t)break e;if(S===l&&++p===a&&(r=c),S===u&&++_===n&&(h=c),(b=O.nextSibling)!==null)break;O=S,S=O.parentNode}O=b}l=r===-1||h===-1?null:{start:r,end:h}}else l=null}l=l||{start:0,end:0}}else l=null;for(ff={focusedElem:t,selectionRange:l},Zu=!1,Dt=e;Dt!==null;)if(e=Dt,t=e.child,(e.subtreeFlags&1028)!==0&&t!==null)t.return=e,Dt=t;else for(;Dt!==null;){switch(e=Dt,u=e.alternate,t=e.flags,e.tag){case 0:if((t&4)!==0&&(t=e.updateQueue,t=t!==null?t.events:null,t!==null))for(l=0;l title"))),Ht(u,n,l),u[xt]=t,Rt(u),n=u;break t;case"link":var c=xh("link","href",a).get(n+(l.href||""));if(c){for(var r=0;rot&&(c=ot,ot=L,L=c);var v=qs(r,L),d=qs(r,ot);if(v&&d&&(b.rangeCount!==1||b.anchorNode!==v.node||b.anchorOffset!==v.offset||b.focusNode!==d.node||b.focusOffset!==d.offset)){var g=O.createRange();g.setStart(v.node,v.offset),b.removeAllRanges(),L>ot?(b.addRange(g),b.extend(d.node,d.offset)):(g.setEnd(d.node,d.offset),b.addRange(g))}}}}for(O=[],b=r;b=b.parentNode;)b.nodeType===1&&O.push({element:b,left:b.scrollLeft,top:b.scrollTop});for(typeof r.focus=="function"&&r.focus(),r=0;rl?32:l,T.T=null,l=Kc,Kc=null;var u=pl,c=Pe;if(Nt=0,On=pl=null,Pe=0,(nt&6)!==0)throw Error(s(331));var r=nt;if(nt|=4,Yr(u.current),Br(u,u.current,c,l),nt=r,Sa(0,!1),te&&typeof te.onPostCommitFiberRoot=="function")try{te.onPostCommitFiberRoot(Yn,u)}catch{}return!0}finally{D.p=a,T.T=n,eh(t,e)}}function nh(t,e,l){e=de(l,e),e=zc(t.stateNode,e,2),t=rl(t,e,2),t!==null&&(Ln(t,2),xe(t))}function it(t,e,l){if(t.tag===3)nh(t,t,l);else for(;e!==null;){if(e.tag===3){nh(e,t,l);break}else if(e.tag===1){var n=e.stateNode;if(typeof e.type.getDerivedStateFromError=="function"||typeof n.componentDidCatch=="function"&&(gl===null||!gl.has(n))){t=de(l,t),l=ar(2),n=rl(e,l,2),n!==null&&(ur(l,n,e,t),Ln(n,2),xe(n));break}}e=e.return}}function $c(t,e,l){var n=t.pingCache;if(n===null){n=t.pingCache=new Iy;var a=new Set;n.set(e,a)}else a=n.get(e),a===void 0&&(a=new Set,n.set(e,a));a.has(l)||(Gc=!0,a.add(l),t=nm.bind(null,t,e,l),e.then(t,t))}function nm(t,e,l){var n=t.pingCache;n!==null&&n.delete(e),t.pingedLanes|=t.suspendedLanes&l,t.warmLanes&=~l,ht===t&&($&l)===l&&(gt===4||gt===3&&($&62914560)===$&&300>Pt()-Ou?(nt&2)===0&&Nn(t,0):Vc|=l,zn===$&&(zn=0)),xe(t)}function ah(t,e){e===0&&(e=Ff()),t=ql(t,e),t!==null&&(Ln(t,e),xe(t))}function am(t){var e=t.memoizedState,l=0;e!==null&&(l=e.retryLane),ah(t,l)}function um(t,e){var l=0;switch(t.tag){case 31:case 13:var n=t.stateNode,a=t.memoizedState;a!==null&&(l=a.retryLane);break;case 19:n=t.stateNode;break;case 22:n=t.stateNode._retryCache;break;default:throw Error(s(314))}n!==null&&n.delete(e),ah(t,l)}function im(t,e){return si(t,e)}var Cu=null,Rn=null,Fc=!1,Bu=!1,Ic=!1,bl=0;function xe(t){t!==Rn&&t.next===null&&(Rn===null?Cu=Rn=t:Rn=Rn.next=t),Bu=!0,Fc||(Fc=!0,fm())}function Sa(t,e){if(!Ic&&Bu){Ic=!0;do for(var l=!1,n=Cu;n!==null;){if(t!==0){var a=n.pendingLanes;if(a===0)var u=0;else{var c=n.suspendedLanes,r=n.pingedLanes;u=(1<<31-ee(42|t)+1)-1,u&=a&~(c&~r),u=u&201326741?u&201326741|1:u?u|2:0}u!==0&&(l=!0,fh(n,u))}else u=$,u=ja(n,n===ht?u:0,n.cancelPendingCommit!==null||n.timeoutHandle!==-1),(u&3)===0||jn(n,u)||(l=!0,fh(n,u));n=n.next}while(l);Ic=!1}}function cm(){uh()}function uh(){Bu=Fc=!1;var t=0;bl!==0&&pm()&&(t=bl);for(var e=Pt(),l=null,n=Cu;n!==null;){var a=n.next,u=ih(n,e);u===0?(n.next=null,l===null?Cu=a:l.next=a,a===null&&(Rn=l)):(l=n,(t!==0||(u&3)!==0)&&(Bu=!0)),n=a}Nt!==0&&Nt!==5||Sa(t),bl!==0&&(bl=0)}function ih(t,e){for(var l=t.suspendedLanes,n=t.pingedLanes,a=t.expirationTimes,u=t.pendingLanes&-62914561;0r)break;var _=h.transferSize,O=h.initiatorType;_&&vh(O)&&(h=h.responseEnd,c+=_*(h"u"?null:document;function Mh(t,e,l){var n=Dn;if(n&&typeof e=="string"&&e){var a=re(e);a='link[rel="'+t+'"][href="'+a+'"]',typeof l=="string"&&(a+='[crossorigin="'+l+'"]'),Nh.has(a)||(Nh.add(a),t={rel:t,crossOrigin:l,href:e},n.querySelector(a)===null&&(e=n.createElement("link"),Ht(e,"link",t),Rt(e),n.head.appendChild(e)))}}function Nm(t){tl.D(t),Mh("dns-prefetch",t,null)}function Mm(t,e){tl.C(t,e),Mh("preconnect",t,e)}function Rm(t,e,l){tl.L(t,e,l);var n=Dn;if(n&&t&&e){var a='link[rel="preload"][as="'+re(e)+'"]';e==="image"&&l&&l.imageSrcSet?(a+='[imagesrcset="'+re(l.imageSrcSet)+'"]',typeof l.imageSizes=="string"&&(a+='[imagesizes="'+re(l.imageSizes)+'"]')):a+='[href="'+re(t)+'"]';var u=a;switch(e){case"style":u=Un(t);break;case"script":u=xn(t)}Se.has(u)||(t=x({rel:"preload",href:e==="image"&&l&&l.imageSrcSet?void 0:t,as:e},l),Se.set(u,t),n.querySelector(a)!==null||e==="style"&&n.querySelector(Ta(u))||e==="script"&&n.querySelector(Aa(u))||(e=n.createElement("link"),Ht(e,"link",t),Rt(e),n.head.appendChild(e)))}}function Dm(t,e){tl.m(t,e);var l=Dn;if(l&&t){var n=e&&typeof e.as=="string"?e.as:"script",a='link[rel="modulepreload"][as="'+re(n)+'"][href="'+re(t)+'"]',u=a;switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":u=xn(t)}if(!Se.has(u)&&(t=x({rel:"modulepreload",href:t},e),Se.set(u,t),l.querySelector(a)===null)){switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(l.querySelector(Aa(u)))return}n=l.createElement("link"),Ht(n,"link",t),Rt(n),l.head.appendChild(n)}}}function Um(t,e,l){tl.S(t,e,l);var n=Dn;if(n&&t){var a=Il(n).hoistableStyles,u=Un(t);e=e||"default";var c=a.get(u);if(!c){var r={loading:0,preload:null};if(c=n.querySelector(Ta(u)))r.loading=5;else{t=x({rel:"stylesheet",href:t,"data-precedence":e},l),(l=Se.get(u))&&mf(t,l);var h=c=n.createElement("link");Rt(h),Ht(h,"link",t),h._p=new Promise(function(p,_){h.onload=p,h.onerror=_}),h.addEventListener("load",function(){r.loading|=1}),h.addEventListener("error",function(){r.loading|=2}),r.loading|=4,Lu(c,e,n)}c={type:"stylesheet",instance:c,count:1,state:r},a.set(u,c)}}}function xm(t,e){tl.X(t,e);var l=Dn;if(l&&t){var n=Il(l).hoistableScripts,a=xn(t),u=n.get(a);u||(u=l.querySelector(Aa(a)),u||(t=x({src:t,async:!0},e),(e=Se.get(a))&&vf(t,e),u=l.createElement("script"),Rt(u),Ht(u,"link",t),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(a,u))}}function Cm(t,e){tl.M(t,e);var l=Dn;if(l&&t){var n=Il(l).hoistableScripts,a=xn(t),u=n.get(a);u||(u=l.querySelector(Aa(a)),u||(t=x({src:t,async:!0,type:"module"},e),(e=Se.get(a))&&vf(t,e),u=l.createElement("script"),Rt(u),Ht(u,"link",t),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(a,u))}}function Rh(t,e,l,n){var a=(a=J.current)?ju(a):null;if(!a)throw Error(s(446));switch(t){case"meta":case"title":return null;case"style":return typeof l.precedence=="string"&&typeof l.href=="string"?(e=Un(l.href),l=Il(a).hoistableStyles,n=l.get(e),n||(n={type:"style",instance:null,count:0,state:null},l.set(e,n)),n):{type:"void",instance:null,count:0,state:null};case"link":if(l.rel==="stylesheet"&&typeof l.href=="string"&&typeof l.precedence=="string"){t=Un(l.href);var u=Il(a).hoistableStyles,c=u.get(t);if(c||(a=a.ownerDocument||a,c={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},u.set(t,c),(u=a.querySelector(Ta(t)))&&!u._p&&(c.instance=u,c.state.loading=5),Se.has(t)||(l={rel:"preload",as:"style",href:l.href,crossOrigin:l.crossOrigin,integrity:l.integrity,media:l.media,hrefLang:l.hrefLang,referrerPolicy:l.referrerPolicy},Se.set(t,l),u||Bm(a,t,l,c.state))),e&&n===null)throw Error(s(528,""));return c}if(e&&n!==null)throw Error(s(529,""));return null;case"script":return e=l.async,l=l.src,typeof l=="string"&&e&&typeof e!="function"&&typeof e!="symbol"?(e=xn(l),l=Il(a).hoistableScripts,n=l.get(e),n||(n={type:"script",instance:null,count:0,state:null},l.set(e,n)),n):{type:"void",instance:null,count:0,state:null};default:throw Error(s(444,t))}}function Un(t){return'href="'+re(t)+'"'}function Ta(t){return'link[rel="stylesheet"]['+t+"]"}function Dh(t){return x({},t,{"data-precedence":t.precedence,precedence:null})}function Bm(t,e,l,n){t.querySelector('link[rel="preload"][as="style"]['+e+"]")?n.loading=1:(e=t.createElement("link"),n.preload=e,e.addEventListener("load",function(){return n.loading|=1}),e.addEventListener("error",function(){return n.loading|=2}),Ht(e,"link",l),Rt(e),t.head.appendChild(e))}function xn(t){return'[src="'+re(t)+'"]'}function Aa(t){return"script[async]"+t}function Uh(t,e,l){if(e.count++,e.instance===null)switch(e.type){case"style":var n=t.querySelector('style[data-href~="'+re(l.href)+'"]');if(n)return e.instance=n,Rt(n),n;var a=x({},l,{"data-href":l.href,"data-precedence":l.precedence,href:null,precedence:null});return n=(t.ownerDocument||t).createElement("style"),Rt(n),Ht(n,"style",a),Lu(n,l.precedence,t),e.instance=n;case"stylesheet":a=Un(l.href);var u=t.querySelector(Ta(a));if(u)return e.state.loading|=4,e.instance=u,Rt(u),u;n=Dh(l),(a=Se.get(a))&&mf(n,a),u=(t.ownerDocument||t).createElement("link"),Rt(u);var c=u;return c._p=new Promise(function(r,h){c.onload=r,c.onerror=h}),Ht(u,"link",n),e.state.loading|=4,Lu(u,l.precedence,t),e.instance=u;case"script":return u=xn(l.src),(a=t.querySelector(Aa(u)))?(e.instance=a,Rt(a),a):(n=l,(a=Se.get(u))&&(n=x({},l),vf(n,a)),t=t.ownerDocument||t,a=t.createElement("script"),Rt(a),Ht(a,"link",n),t.head.appendChild(a),e.instance=a);case"void":return null;default:throw Error(s(443,e.type))}else e.type==="stylesheet"&&(e.state.loading&4)===0&&(n=e.instance,e.state.loading|=4,Lu(n,l.precedence,t));return e.instance}function Lu(t,e,l){for(var n=l.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=n.length?n[n.length-1]:null,u=a,c=0;c title"):null)}function qm(t,e,l){if(l===1||e.itemProp!=null)return!1;switch(t){case"meta":case"title":return!0;case"style":if(typeof e.precedence!="string"||typeof e.href!="string"||e.href==="")break;return!0;case"link":if(typeof e.rel!="string"||typeof e.href!="string"||e.href===""||e.onLoad||e.onError)break;switch(e.rel){case"stylesheet":return t=e.disabled,typeof e.precedence=="string"&&t==null;default:return!0}case"script":if(e.async&&typeof e.async!="function"&&typeof e.async!="symbol"&&!e.onLoad&&!e.onError&&e.src&&typeof e.src=="string")return!0}return!1}function Bh(t){return!(t.type==="stylesheet"&&(t.state.loading&3)===0)}function Hm(t,e,l,n){if(l.type==="stylesheet"&&(typeof n.media!="string"||matchMedia(n.media).matches!==!1)&&(l.state.loading&4)===0){if(l.instance===null){var a=Un(n.href),u=e.querySelector(Ta(a));if(u){e=u._p,e!==null&&typeof e=="object"&&typeof e.then=="function"&&(t.count++,t=Qu.bind(t),e.then(t,t)),l.state.loading|=4,l.instance=u,Rt(u);return}u=e.ownerDocument||e,n=Dh(n),(a=Se.get(a))&&mf(n,a),u=u.createElement("link"),Rt(u);var c=u;c._p=new Promise(function(r,h){c.onload=r,c.onerror=h}),Ht(u,"link",n),l.instance=u}t.stylesheets===null&&(t.stylesheets=new Map),t.stylesheets.set(l,e),(e=l.state.preload)&&(l.state.loading&3)===0&&(t.count++,l=Qu.bind(t),e.addEventListener("load",l),e.addEventListener("error",l))}}var gf=0;function Ym(t,e){return t.stylesheets&&t.count===0&&Vu(t,t.stylesheets),0gf?50:800)+e);return t.unsuspend=l,function(){t.unsuspend=null,clearTimeout(n),clearTimeout(a)}}:null}function Qu(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Vu(this,this.stylesheets);else if(this.unsuspend){var t=this.unsuspend;this.unsuspend=null,t()}}}var Gu=null;function Vu(t,e){t.stylesheets=null,t.unsuspend!==null&&(t.count++,Gu=new Map,e.forEach(jm,t),Gu=null,Qu.call(t))}function jm(t,e){if(!(e.state.loading&4)){var l=Gu.get(t);if(l)var n=l.get(null);else{l=new Map,Gu.set(t,l);for(var a=t.querySelectorAll("link[data-precedence],style[data-precedence]"),u=0;u"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(o)}catch(i){console.error(i)}}return o(),Of.exports=t0(),Of.exports}var l0=e0();const Be=Object.create(null);Be.open="0";Be.close="1";Be.ping="2";Be.pong="3";Be.message="4";Be.upgrade="5";Be.noop="6";const Pu=Object.create(null);Object.keys(Be).forEach(o=>{Pu[Be[o]]=o});const Cf={type:"error",data:"parser error"},sd=typeof Blob=="function"||typeof Blob<"u"&&Object.prototype.toString.call(Blob)==="[object BlobConstructor]",od=typeof ArrayBuffer=="function",rd=o=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(o):o&&o.buffer instanceof ArrayBuffer,Xf=({type:o,data:i},f,s)=>sd&&i instanceof Blob?f?s(i):ad(i,s):od&&(i instanceof ArrayBuffer||rd(i))?f?s(i):ad(new Blob([i]),s):s(Be[o]+(i||"")),ad=(o,i)=>{const f=new FileReader;return f.onload=function(){const s=f.result.split(",")[1];i("b"+(s||""))},f.readAsDataURL(o)};function ud(o){return o instanceof Uint8Array?o:o instanceof ArrayBuffer?new Uint8Array(o):new Uint8Array(o.buffer,o.byteOffset,o.byteLength)}let Df;function n0(o,i){if(sd&&o.data instanceof Blob)return o.data.arrayBuffer().then(ud).then(i);if(od&&(o.data instanceof ArrayBuffer||rd(o.data)))return i(ud(o.data));Xf(o,!1,f=>{Df||(Df=new TextEncoder),i(Df.encode(f))})}const id="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",xa=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(let o=0;o{let i=o.length*.75,f=o.length,s,m=0,E,R,B,M;o[o.length-1]==="="&&(i--,o[o.length-2]==="="&&i--);const A=new ArrayBuffer(i),Q=new Uint8Array(A);for(s=0;s>4,Q[m++]=(R&15)<<4|B>>2,Q[m++]=(B&3)<<6|M&63;return A},u0=typeof ArrayBuffer=="function",Qf=(o,i)=>{if(typeof o!="string")return{type:"message",data:hd(o,i)};const f=o.charAt(0);return f==="b"?{type:"message",data:i0(o.substring(1),i)}:Pu[f]?o.length>1?{type:Pu[f],data:o.substring(1)}:{type:Pu[f]}:Cf},i0=(o,i)=>{if(u0){const f=a0(o);return hd(f,i)}else return{base64:!0,data:o}},hd=(o,i)=>{switch(i){case"blob":return o instanceof Blob?o:new Blob([o]);case"arraybuffer":default:return o instanceof ArrayBuffer?o:o.buffer}},dd="",c0=(o,i)=>{const f=o.length,s=new Array(f);let m=0;o.forEach((E,R)=>{Xf(E,!1,B=>{s[R]=B,++m===f&&i(s.join(dd))})})},f0=(o,i)=>{const f=o.split(dd),s=[];for(let m=0;m{const s=f.length;let m;if(s<126)m=new Uint8Array(1),new DataView(m.buffer).setUint8(0,s);else if(s<65536){m=new Uint8Array(3);const E=new DataView(m.buffer);E.setUint8(0,126),E.setUint16(1,s)}else{m=new Uint8Array(9);const E=new DataView(m.buffer);E.setUint8(0,127),E.setBigUint64(1,BigInt(s))}o.data&&typeof o.data!="string"&&(m[0]|=128),i.enqueue(m),i.enqueue(f)})}})}let Uf;function Fu(o){return o.reduce((i,f)=>i+f.length,0)}function Iu(o,i){if(o[0].length===i)return o.shift();const f=new Uint8Array(i);let s=0;for(let m=0;mMath.pow(2,21)-1){B.enqueue(Cf);break}m=Q*Math.pow(2,32)+A.getUint32(4),s=3}else{if(Fu(f)o){B.enqueue(Cf);break}}}})}const yd=4;function Ot(o){if(o)return r0(o)}function r0(o){for(var i in Ot.prototype)o[i]=Ot.prototype[i];return o}Ot.prototype.on=Ot.prototype.addEventListener=function(o,i){return this._callbacks=this._callbacks||{},(this._callbacks["$"+o]=this._callbacks["$"+o]||[]).push(i),this};Ot.prototype.once=function(o,i){function f(){this.off(o,f),i.apply(this,arguments)}return f.fn=i,this.on(o,f),this};Ot.prototype.off=Ot.prototype.removeListener=Ot.prototype.removeAllListeners=Ot.prototype.removeEventListener=function(o,i){if(this._callbacks=this._callbacks||{},arguments.length==0)return this._callbacks={},this;var f=this._callbacks["$"+o];if(!f)return this;if(arguments.length==1)return delete this._callbacks["$"+o],this;for(var s,m=0;mPromise.resolve().then(i):(i,f)=>f(i,0),be=typeof self<"u"?self:typeof window<"u"?window:Function("return this")(),h0="arraybuffer";function md(o,...i){return i.reduce((f,s)=>(o.hasOwnProperty(s)&&(f[s]=o[s]),f),{})}const d0=be.setTimeout,y0=be.clearTimeout;function ai(o,i){i.useNativeTimers?(o.setTimeoutFn=d0.bind(be),o.clearTimeoutFn=y0.bind(be)):(o.setTimeoutFn=be.setTimeout.bind(be),o.clearTimeoutFn=be.clearTimeout.bind(be))}const m0=1.33;function v0(o){return typeof o=="string"?g0(o):Math.ceil((o.byteLength||o.size)*m0)}function g0(o){let i=0,f=0;for(let s=0,m=o.length;s=57344?f+=3:(s++,f+=4);return f}function vd(){return Date.now().toString(36).substring(3)+Math.random().toString(36).substring(2,5)}function p0(o){let i="";for(let f in o)o.hasOwnProperty(f)&&(i.length&&(i+="&"),i+=encodeURIComponent(f)+"="+encodeURIComponent(o[f]));return i}function S0(o){let i={},f=o.split("&");for(let s=0,m=f.length;s{this.readyState="paused",i()};if(this._polling||!this.writable){let s=0;this._polling&&(s++,this.once("pollComplete",function(){--s||f()})),this.writable||(s++,this.once("drain",function(){--s||f()}))}else f()}_poll(){this._polling=!0,this.doPoll(),this.emitReserved("poll")}onData(i){const f=s=>{if(this.readyState==="opening"&&s.type==="open"&&this.onOpen(),s.type==="close")return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(s)};f0(i,this.socket.binaryType).forEach(f),this.readyState!=="closed"&&(this._polling=!1,this.emitReserved("pollComplete"),this.readyState==="open"&&this._poll())}doClose(){const i=()=>{this.write([{type:"close"}])};this.readyState==="open"?i():this.once("open",i)}write(i){this.writable=!1,c0(i,f=>{this.doWrite(f,()=>{this.writable=!0,this.emitReserved("drain")})})}uri(){const i=this.opts.secure?"https":"http",f=this.query||{};return this.opts.timestampRequests!==!1&&(f[this.opts.timestampParam]=vd()),!this.supportsBinary&&!f.sid&&(f.b64=1),this.createUri(i,f)}}let gd=!1;try{gd=typeof XMLHttpRequest<"u"&&"withCredentials"in new XMLHttpRequest}catch{}const E0=gd;function T0(){}class A0 extends _0{constructor(i){if(super(i),typeof location<"u"){const f=location.protocol==="https:";let s=location.port;s||(s=f?"443":"80"),this.xd=typeof location<"u"&&i.hostname!==location.hostname||s!==i.port}}doWrite(i,f){const s=this.request({method:"POST",data:i});s.on("success",f),s.on("error",(m,E)=>{this.onError("xhr post error",m,E)})}doPoll(){const i=this.request();i.on("data",this.onData.bind(this)),i.on("error",(f,s)=>{this.onError("xhr poll error",f,s)}),this.pollXhr=i}}class Ce extends Ot{constructor(i,f,s){super(),this.createRequest=i,ai(this,s),this._opts=s,this._method=s.method||"GET",this._uri=f,this._data=s.data!==void 0?s.data:null,this._create()}_create(){var i;const f=md(this._opts,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");f.xdomain=!!this._opts.xd;const s=this._xhr=this.createRequest(f);try{s.open(this._method,this._uri,!0);try{if(this._opts.extraHeaders){s.setDisableHeaderCheck&&s.setDisableHeaderCheck(!0);for(let m in this._opts.extraHeaders)this._opts.extraHeaders.hasOwnProperty(m)&&s.setRequestHeader(m,this._opts.extraHeaders[m])}}catch{}if(this._method==="POST")try{s.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch{}try{s.setRequestHeader("Accept","*/*")}catch{}(i=this._opts.cookieJar)===null||i===void 0||i.addCookies(s),"withCredentials"in s&&(s.withCredentials=this._opts.withCredentials),this._opts.requestTimeout&&(s.timeout=this._opts.requestTimeout),s.onreadystatechange=()=>{var m;s.readyState===3&&((m=this._opts.cookieJar)===null||m===void 0||m.parseCookies(s.getResponseHeader("set-cookie"))),s.readyState===4&&(s.status===200||s.status===1223?this._onLoad():this.setTimeoutFn(()=>{this._onError(typeof s.status=="number"?s.status:0)},0))},s.send(this._data)}catch(m){this.setTimeoutFn(()=>{this._onError(m)},0);return}typeof document<"u"&&(this._index=Ce.requestsCount++,Ce.requests[this._index]=this)}_onError(i){this.emitReserved("error",i,this._xhr),this._cleanup(!0)}_cleanup(i){if(!(typeof this._xhr>"u"||this._xhr===null)){if(this._xhr.onreadystatechange=T0,i)try{this._xhr.abort()}catch{}typeof document<"u"&&delete Ce.requests[this._index],this._xhr=null}}_onLoad(){const i=this._xhr.responseText;i!==null&&(this.emitReserved("data",i),this.emitReserved("success"),this._cleanup())}abort(){this._cleanup()}}Ce.requestsCount=0;Ce.requests={};if(typeof document<"u"){if(typeof attachEvent=="function")attachEvent("onunload",cd);else if(typeof addEventListener=="function"){const o="onpagehide"in be?"pagehide":"unload";addEventListener(o,cd,!1)}}function cd(){for(let o in Ce.requests)Ce.requests.hasOwnProperty(o)&&Ce.requests[o].abort()}const z0=(function(){const o=pd({xdomain:!1});return o&&o.responseType!==null})();class O0 extends A0{constructor(i){super(i);const f=i&&i.forceBase64;this.supportsBinary=z0&&!f}request(i={}){return Object.assign(i,{xd:this.xd},this.opts),new Ce(pd,this.uri(),i)}}function pd(o){const i=o.xdomain;try{if(typeof XMLHttpRequest<"u"&&(!i||E0))return new XMLHttpRequest}catch{}if(!i)try{return new be[["Active"].concat("Object").join("X")]("Microsoft.XMLHTTP")}catch{}}const Sd=typeof navigator<"u"&&typeof navigator.product=="string"&&navigator.product.toLowerCase()==="reactnative";class N0 extends Gf{get name(){return"websocket"}doOpen(){const i=this.uri(),f=this.opts.protocols,s=Sd?{}:md(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(s.headers=this.opts.extraHeaders);try{this.ws=this.createSocket(i,f,s)}catch(m){return this.emitReserved("error",m)}this.ws.binaryType=this.socket.binaryType,this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=i=>this.onClose({description:"websocket connection closed",context:i}),this.ws.onmessage=i=>this.onData(i.data),this.ws.onerror=i=>this.onError("websocket error",i)}write(i){this.writable=!1;for(let f=0;f{try{this.doWrite(s,E)}catch{}m&&ni(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){typeof this.ws<"u"&&(this.ws.onerror=()=>{},this.ws.close(),this.ws=null)}uri(){const i=this.opts.secure?"wss":"ws",f=this.query||{};return this.opts.timestampRequests&&(f[this.opts.timestampParam]=vd()),this.supportsBinary||(f.b64=1),this.createUri(i,f)}}const xf=be.WebSocket||be.MozWebSocket;class M0 extends N0{createSocket(i,f,s){return Sd?new xf(i,f,s):f?new xf(i,f):new xf(i)}doWrite(i,f){this.ws.send(f)}}class R0 extends Gf{get name(){return"webtransport"}doOpen(){try{this._transport=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name])}catch(i){return this.emitReserved("error",i)}this._transport.closed.then(()=>{this.onClose()}).catch(i=>{this.onError("webtransport error",i)}),this._transport.ready.then(()=>{this._transport.createBidirectionalStream().then(i=>{const f=o0(Number.MAX_SAFE_INTEGER,this.socket.binaryType),s=i.readable.pipeThrough(f).getReader(),m=s0();m.readable.pipeTo(i.writable),this._writer=m.writable.getWriter();const E=()=>{s.read().then(({done:B,value:M})=>{B||(this.onPacket(M),E())}).catch(B=>{})};E();const R={type:"open"};this.query.sid&&(R.data=`{"sid":"${this.query.sid}"}`),this._writer.write(R).then(()=>this.onOpen())})})}write(i){this.writable=!1;for(let f=0;f{m&&ni(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){var i;(i=this._transport)===null||i===void 0||i.close()}}const D0={websocket:M0,webtransport:R0,polling:O0},U0=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,x0=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function Bf(o){if(o.length>8e3)throw"URI too long";const i=o,f=o.indexOf("["),s=o.indexOf("]");f!=-1&&s!=-1&&(o=o.substring(0,f)+o.substring(f,s).replace(/:/g,";")+o.substring(s,o.length));let m=U0.exec(o||""),E={},R=14;for(;R--;)E[x0[R]]=m[R]||"";return f!=-1&&s!=-1&&(E.source=i,E.host=E.host.substring(1,E.host.length-1).replace(/;/g,":"),E.authority=E.authority.replace("[","").replace("]","").replace(/;/g,":"),E.ipv6uri=!0),E.pathNames=C0(E,E.path),E.queryKey=B0(E,E.query),E}function C0(o,i){const f=/\/{2,9}/g,s=i.replace(f,"/").split("/");return(i.slice(0,1)=="/"||i.length===0)&&s.splice(0,1),i.slice(-1)=="/"&&s.splice(s.length-1,1),s}function B0(o,i){const f={};return i.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,function(s,m,E){m&&(f[m]=E)}),f}const qf=typeof addEventListener=="function"&&typeof removeEventListener=="function",ti=[];qf&&addEventListener("offline",()=>{ti.forEach(o=>o())},!1);class Nl extends Ot{constructor(i,f){if(super(),this.binaryType=h0,this.writeBuffer=[],this._prevBufferLen=0,this._pingInterval=-1,this._pingTimeout=-1,this._maxPayload=-1,this._pingTimeoutTime=1/0,i&&typeof i=="object"&&(f=i,i=null),i){const s=Bf(i);f.hostname=s.host,f.secure=s.protocol==="https"||s.protocol==="wss",f.port=s.port,s.query&&(f.query=s.query)}else f.host&&(f.hostname=Bf(f.host).host);ai(this,f),this.secure=f.secure!=null?f.secure:typeof location<"u"&&location.protocol==="https:",f.hostname&&!f.port&&(f.port=this.secure?"443":"80"),this.hostname=f.hostname||(typeof location<"u"?location.hostname:"localhost"),this.port=f.port||(typeof location<"u"&&location.port?location.port:this.secure?"443":"80"),this.transports=[],this._transportsByName={},f.transports.forEach(s=>{const m=s.prototype.name;this.transports.push(m),this._transportsByName[m]=s}),this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},f),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),typeof this.opts.query=="string"&&(this.opts.query=S0(this.opts.query)),qf&&(this.opts.closeOnBeforeunload&&(this._beforeunloadEventListener=()=>{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this._beforeunloadEventListener,!1)),this.hostname!=="localhost"&&(this._offlineEventListener=()=>{this._onClose("transport close",{description:"network connection lost"})},ti.push(this._offlineEventListener))),this.opts.withCredentials&&(this._cookieJar=void 0),this._open()}createTransport(i){const f=Object.assign({},this.opts.query);f.EIO=yd,f.transport=i,this.id&&(f.sid=this.id);const s=Object.assign({},this.opts,{query:f,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[i]);return new this._transportsByName[i](s)}_open(){if(this.transports.length===0){this.setTimeoutFn(()=>{this.emitReserved("error","No transports available")},0);return}const i=this.opts.rememberUpgrade&&Nl.priorWebsocketSuccess&&this.transports.indexOf("websocket")!==-1?"websocket":this.transports[0];this.readyState="opening";const f=this.createTransport(i);f.open(),this.setTransport(f)}setTransport(i){this.transport&&this.transport.removeAllListeners(),this.transport=i,i.on("drain",this._onDrain.bind(this)).on("packet",this._onPacket.bind(this)).on("error",this._onError.bind(this)).on("close",f=>this._onClose("transport close",f))}onOpen(){this.readyState="open",Nl.priorWebsocketSuccess=this.transport.name==="websocket",this.emitReserved("open"),this.flush()}_onPacket(i){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing")switch(this.emitReserved("packet",i),this.emitReserved("heartbeat"),i.type){case"open":this.onHandshake(JSON.parse(i.data));break;case"ping":this._sendPacket("pong"),this.emitReserved("ping"),this.emitReserved("pong"),this._resetPingTimeout();break;case"error":const f=new Error("server error");f.code=i.data,this._onError(f);break;case"message":this.emitReserved("data",i.data),this.emitReserved("message",i.data);break}}onHandshake(i){this.emitReserved("handshake",i),this.id=i.sid,this.transport.query.sid=i.sid,this._pingInterval=i.pingInterval,this._pingTimeout=i.pingTimeout,this._maxPayload=i.maxPayload,this.onOpen(),this.readyState!=="closed"&&this._resetPingTimeout()}_resetPingTimeout(){this.clearTimeoutFn(this._pingTimeoutTimer);const i=this._pingInterval+this._pingTimeout;this._pingTimeoutTime=Date.now()+i,this._pingTimeoutTimer=this.setTimeoutFn(()=>{this._onClose("ping timeout")},i),this.opts.autoUnref&&this._pingTimeoutTimer.unref()}_onDrain(){this.writeBuffer.splice(0,this._prevBufferLen),this._prevBufferLen=0,this.writeBuffer.length===0?this.emitReserved("drain"):this.flush()}flush(){if(this.readyState!=="closed"&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){const i=this._getWritablePackets();this.transport.send(i),this._prevBufferLen=i.length,this.emitReserved("flush")}}_getWritablePackets(){if(!(this._maxPayload&&this.transport.name==="polling"&&this.writeBuffer.length>1))return this.writeBuffer;let f=1;for(let s=0;s0&&f>this._maxPayload)return this.writeBuffer.slice(0,s);f+=2}return this.writeBuffer}_hasPingExpired(){if(!this._pingTimeoutTime)return!0;const i=Date.now()>this._pingTimeoutTime;return i&&(this._pingTimeoutTime=0,ni(()=>{this._onClose("ping timeout")},this.setTimeoutFn)),i}write(i,f,s){return this._sendPacket("message",i,f,s),this}send(i,f,s){return this._sendPacket("message",i,f,s),this}_sendPacket(i,f,s,m){if(typeof f=="function"&&(m=f,f=void 0),typeof s=="function"&&(m=s,s=null),this.readyState==="closing"||this.readyState==="closed")return;s=s||{},s.compress=s.compress!==!1;const E={type:i,data:f,options:s};this.emitReserved("packetCreate",E),this.writeBuffer.push(E),m&&this.once("flush",m),this.flush()}close(){const i=()=>{this._onClose("forced close"),this.transport.close()},f=()=>{this.off("upgrade",f),this.off("upgradeError",f),i()},s=()=>{this.once("upgrade",f),this.once("upgradeError",f)};return(this.readyState==="opening"||this.readyState==="open")&&(this.readyState="closing",this.writeBuffer.length?this.once("drain",()=>{this.upgrading?s():i()}):this.upgrading?s():i()),this}_onError(i){if(Nl.priorWebsocketSuccess=!1,this.opts.tryAllTransports&&this.transports.length>1&&this.readyState==="opening")return this.transports.shift(),this._open();this.emitReserved("error",i),this._onClose("transport error",i)}_onClose(i,f){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing"){if(this.clearTimeoutFn(this._pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),qf&&(this._beforeunloadEventListener&&removeEventListener("beforeunload",this._beforeunloadEventListener,!1),this._offlineEventListener)){const s=ti.indexOf(this._offlineEventListener);s!==-1&&ti.splice(s,1)}this.readyState="closed",this.id=null,this.emitReserved("close",i,f),this.writeBuffer=[],this._prevBufferLen=0}}}Nl.protocol=yd;class q0 extends Nl{constructor(){super(...arguments),this._upgrades=[]}onOpen(){if(super.onOpen(),this.readyState==="open"&&this.opts.upgrade)for(let i=0;i{s||(f.send([{type:"ping",data:"probe"}]),f.once("packet",x=>{if(!s)if(x.type==="pong"&&x.data==="probe"){if(this.upgrading=!0,this.emitReserved("upgrading",f),!f)return;Nl.priorWebsocketSuccess=f.name==="websocket",this.transport.pause(()=>{s||this.readyState!=="closed"&&(Q(),this.setTransport(f),f.send([{type:"upgrade"}]),this.emitReserved("upgrade",f),f=null,this.upgrading=!1,this.flush())})}else{const K=new Error("probe error");K.transport=f.name,this.emitReserved("upgradeError",K)}}))};function E(){s||(s=!0,Q(),f.close(),f=null)}const R=x=>{const K=new Error("probe error: "+x);K.transport=f.name,E(),this.emitReserved("upgradeError",K)};function B(){R("transport closed")}function M(){R("socket closed")}function A(x){f&&x.name!==f.name&&E()}const Q=()=>{f.removeListener("open",m),f.removeListener("error",R),f.removeListener("close",B),this.off("close",M),this.off("upgrading",A)};f.once("open",m),f.once("error",R),f.once("close",B),this.once("close",M),this.once("upgrading",A),this._upgrades.indexOf("webtransport")!==-1&&i!=="webtransport"?this.setTimeoutFn(()=>{s||f.open()},200):f.open()}onHandshake(i){this._upgrades=this._filterUpgrades(i.upgrades),super.onHandshake(i)}_filterUpgrades(i){const f=[];for(let s=0;sD0[m]).filter(m=>!!m)),super(i,s)}};function Y0(o,i="",f){let s=o;f=f||typeof location<"u"&&location,o==null&&(o=f.protocol+"//"+f.host),typeof o=="string"&&(o.charAt(0)==="/"&&(o.charAt(1)==="/"?o=f.protocol+o:o=f.host+o),/^(https?|wss?):\/\//.test(o)||(typeof f<"u"?o=f.protocol+"//"+o:o="https://"+o),s=Bf(o)),s.port||(/^(http|ws)$/.test(s.protocol)?s.port="80":/^(http|ws)s$/.test(s.protocol)&&(s.port="443")),s.path=s.path||"/";const E=s.host.indexOf(":")!==-1?"["+s.host+"]":s.host;return s.id=s.protocol+"://"+E+":"+s.port+i,s.href=s.protocol+"://"+E+(f&&f.port===s.port?"":":"+s.port),s}const j0=typeof ArrayBuffer=="function",L0=o=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(o):o.buffer instanceof ArrayBuffer,bd=Object.prototype.toString,X0=typeof Blob=="function"||typeof Blob<"u"&&bd.call(Blob)==="[object BlobConstructor]",Q0=typeof File=="function"||typeof File<"u"&&bd.call(File)==="[object FileConstructor]";function Vf(o){return j0&&(o instanceof ArrayBuffer||L0(o))||X0&&o instanceof Blob||Q0&&o instanceof File}function ei(o,i){if(!o||typeof o!="object")return!1;if(Array.isArray(o)){for(let f=0,s=o.length;f=0&&o.num{delete this.acks[i];for(let B=0;B{this.io.clearTimeoutFn(E),f.apply(this,B)};R.withError=!0,this.acks[i]=R}emitWithAck(i,...f){return new Promise((s,m)=>{const E=(R,B)=>R?m(R):s(B);E.withError=!0,f.push(E),this.emit(i,...f)})}_addToQueue(i){let f;typeof i[i.length-1]=="function"&&(f=i.pop());const s={id:this._queueSeq++,tryCount:0,pending:!1,args:i,flags:Object.assign({fromQueue:!0},this.flags)};i.push((m,...E)=>s!==this._queue[0]?void 0:(m!==null?s.tryCount>this._opts.retries&&(this._queue.shift(),f&&f(m)):(this._queue.shift(),f&&f(null,...E)),s.pending=!1,this._drainQueue())),this._queue.push(s),this._drainQueue()}_drainQueue(i=!1){if(!this.connected||this._queue.length===0)return;const f=this._queue[0];f.pending&&!i||(f.pending=!0,f.tryCount++,this.flags=f.flags,this.emit.apply(this,f.args))}packet(i){i.nsp=this.nsp,this.io._packet(i)}onopen(){typeof this.auth=="function"?this.auth(i=>{this._sendConnectPacket(i)}):this._sendConnectPacket(this.auth)}_sendConnectPacket(i){this.packet({type:tt.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},i):i})}onerror(i){this.connected||this.emitReserved("connect_error",i)}onclose(i,f){this.connected=!1,delete this.id,this.emitReserved("disconnect",i,f),this._clearAcks()}_clearAcks(){Object.keys(this.acks).forEach(i=>{if(!this.sendBuffer.some(s=>String(s.id)===i)){const s=this.acks[i];delete this.acks[i],s.withError&&s.call(this,new Error("socket has been disconnected"))}})}onpacket(i){if(i.nsp===this.nsp)switch(i.type){case tt.CONNECT:i.data&&i.data.sid?this.onconnect(i.data.sid,i.data.pid):this.emitReserved("connect_error",new Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case tt.EVENT:case tt.BINARY_EVENT:this.onevent(i);break;case tt.ACK:case tt.BINARY_ACK:this.onack(i);break;case tt.DISCONNECT:this.ondisconnect();break;case tt.CONNECT_ERROR:this.destroy();const s=new Error(i.data.message);s.data=i.data.data,this.emitReserved("connect_error",s);break}}onevent(i){const f=i.data||[];i.id!=null&&f.push(this.ack(i.id)),this.connected?this.emitEvent(f):this.receiveBuffer.push(Object.freeze(f))}emitEvent(i){if(this._anyListeners&&this._anyListeners.length){const f=this._anyListeners.slice();for(const s of f)s.apply(this,i)}super.emit.apply(this,i),this._pid&&i.length&&typeof i[i.length-1]=="string"&&(this._lastOffset=i[i.length-1])}ack(i){const f=this;let s=!1;return function(...m){s||(s=!0,f.packet({type:tt.ACK,id:i,data:m}))}}onack(i){const f=this.acks[i.id];typeof f=="function"&&(delete this.acks[i.id],f.withError&&i.data.unshift(null),f.apply(this,i.data))}onconnect(i,f){this.id=i,this.recovered=f&&this._pid===f,this._pid=f,this.connected=!0,this.emitBuffered(),this.emitReserved("connect"),this._drainQueue(!0)}emitBuffered(){this.receiveBuffer.forEach(i=>this.emitEvent(i)),this.receiveBuffer=[],this.sendBuffer.forEach(i=>{this.notifyOutgoingListeners(i),this.packet(i)}),this.sendBuffer=[]}ondisconnect(){this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach(i=>i()),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&this.packet({type:tt.DISCONNECT}),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(i){return this.flags.compress=i,this}get volatile(){return this.flags.volatile=!0,this}timeout(i){return this.flags.timeout=i,this}onAny(i){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(i),this}prependAny(i){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(i),this}offAny(i){if(!this._anyListeners)return this;if(i){const f=this._anyListeners;for(let s=0;s0&&o.jitter<=1?o.jitter:0,this.attempts=0}Bn.prototype.duration=function(){var o=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var i=Math.random(),f=Math.floor(i*this.jitter*o);o=(Math.floor(i*10)&1)==0?o-f:o+f}return Math.min(o,this.max)|0};Bn.prototype.reset=function(){this.attempts=0};Bn.prototype.setMin=function(o){this.ms=o};Bn.prototype.setMax=function(o){this.max=o};Bn.prototype.setJitter=function(o){this.jitter=o};class jf extends Ot{constructor(i,f){var s;super(),this.nsps={},this.subs=[],i&&typeof i=="object"&&(f=i,i=void 0),f=f||{},f.path=f.path||"/socket.io",this.opts=f,ai(this,f),this.reconnection(f.reconnection!==!1),this.reconnectionAttempts(f.reconnectionAttempts||1/0),this.reconnectionDelay(f.reconnectionDelay||1e3),this.reconnectionDelayMax(f.reconnectionDelayMax||5e3),this.randomizationFactor((s=f.randomizationFactor)!==null&&s!==void 0?s:.5),this.backoff=new Bn({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(f.timeout==null?2e4:f.timeout),this._readyState="closed",this.uri=i;const m=f.parser||k0;this.encoder=new m.Encoder,this.decoder=new m.Decoder,this._autoConnect=f.autoConnect!==!1,this._autoConnect&&this.open()}reconnection(i){return arguments.length?(this._reconnection=!!i,i||(this.skipReconnect=!0),this):this._reconnection}reconnectionAttempts(i){return i===void 0?this._reconnectionAttempts:(this._reconnectionAttempts=i,this)}reconnectionDelay(i){var f;return i===void 0?this._reconnectionDelay:(this._reconnectionDelay=i,(f=this.backoff)===null||f===void 0||f.setMin(i),this)}randomizationFactor(i){var f;return i===void 0?this._randomizationFactor:(this._randomizationFactor=i,(f=this.backoff)===null||f===void 0||f.setJitter(i),this)}reconnectionDelayMax(i){var f;return i===void 0?this._reconnectionDelayMax:(this._reconnectionDelayMax=i,(f=this.backoff)===null||f===void 0||f.setMax(i),this)}timeout(i){return arguments.length?(this._timeout=i,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&this.backoff.attempts===0&&this.reconnect()}open(i){if(~this._readyState.indexOf("open"))return this;this.engine=new H0(this.uri,this.opts);const f=this.engine,s=this;this._readyState="opening",this.skipReconnect=!1;const m=ze(f,"open",function(){s.onopen(),i&&i()}),E=B=>{this.cleanup(),this._readyState="closed",this.emitReserved("error",B),i?i(B):this.maybeReconnectOnOpen()},R=ze(f,"error",E);if(this._timeout!==!1){const B=this._timeout,M=this.setTimeoutFn(()=>{m(),E(new Error("timeout")),f.close()},B);this.opts.autoUnref&&M.unref(),this.subs.push(()=>{this.clearTimeoutFn(M)})}return this.subs.push(m),this.subs.push(R),this}connect(i){return this.open(i)}onopen(){this.cleanup(),this._readyState="open",this.emitReserved("open");const i=this.engine;this.subs.push(ze(i,"ping",this.onping.bind(this)),ze(i,"data",this.ondata.bind(this)),ze(i,"error",this.onerror.bind(this)),ze(i,"close",this.onclose.bind(this)),ze(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(i){try{this.decoder.add(i)}catch(f){this.onclose("parse error",f)}}ondecoded(i){ni(()=>{this.emitReserved("packet",i)},this.setTimeoutFn)}onerror(i){this.emitReserved("error",i)}socket(i,f){let s=this.nsps[i];return s?this._autoConnect&&!s.active&&s.connect():(s=new _d(this,i,f),this.nsps[i]=s),s}_destroy(i){const f=Object.keys(this.nsps);for(const s of f)if(this.nsps[s].active)return;this._close()}_packet(i){const f=this.encoder.encode(i);for(let s=0;si()),this.subs.length=0,this.decoder.destroy()}_close(){this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close")}disconnect(){return this._close()}onclose(i,f){var s;this.cleanup(),(s=this.engine)===null||s===void 0||s.close(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",i,f),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;const i=this;if(this.backoff.attempts>=this._reconnectionAttempts)this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{const f=this.backoff.duration();this._reconnecting=!0;const s=this.setTimeoutFn(()=>{i.skipReconnect||(this.emitReserved("reconnect_attempt",i.backoff.attempts),!i.skipReconnect&&i.open(m=>{m?(i._reconnecting=!1,i.reconnect(),this.emitReserved("reconnect_error",m)):i.onreconnect()}))},f);this.opts.autoUnref&&s.unref(),this.subs.push(()=>{this.clearTimeoutFn(s)})}}onreconnect(){const i=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",i)}}const Ua={};function li(o,i){typeof o=="object"&&(i=o,o=void 0),i=i||{};const f=Y0(o,i.path||"/socket.io"),s=f.source,m=f.id,E=f.path,R=Ua[m]&&E in Ua[m].nsps,B=i.forceNew||i["force new connection"]||i.multiplex===!1||R;let M;return B?M=new jf(s,i):(Ua[m]||(Ua[m]=new jf(s,i)),M=Ua[m]),f.query&&!i.query&&(i.query=f.queryKey),M.socket(f.path,i)}Object.assign(li,{Manager:jf,Socket:_d,io:li,connect:li});const $0=void 0,wf=li($0,{transports:["websocket"],query:{role:"user"}});wf.on("connect_error",o=>{console.error("Socket connection error:",o.message)});const Ed=Mt.createContext(wf),F0=({children:o})=>Y.jsx(Ed.Provider,{value:wf,children:o}),I0=()=>Mt.useContext(Ed),Td=Mt.createContext({connected:!1,session:null,logs:[],login:async()=>{},setRole:async()=>{},requestControl:async()=>{},releaseControl:async()=>{},subscribeAll:async()=>{}});function P0(o){return Mt.useCallback((i,f={})=>new Promise((s,m)=>{o.emit(i,f,(E={})=>{E.error?m(new Error(E.error)):s(E)})}),[o])}function tv({children:o}){const i=I0(),f=P0(i),[s,m]=Mt.useState(null),[E,R]=Mt.useState([]),[B,M]=Mt.useState(i.connected);Mt.useEffect(()=>{const x=()=>M(!0),K=()=>M(!1);return i.on("connect",x),i.on("disconnect",K),()=>{i.off("connect",x),i.off("disconnect",K)}},[i]),Mt.useEffect(()=>{function x(_t){m(_t)}function K(_t=[]){R(_t)}function Yt(_t){R(Ut=>[...Ut.slice(-199),_t])}return i.on("session:sync",x),i.on("log:init",K),i.on("log:entry",Yt),()=>{i.off("session:sync",x),i.off("log:init",K),i.off("log:entry",Yt)}},[i]);const A=Mt.useMemo(()=>({login:(x,K)=>f("auth:login",{username:x,password:K}),setRole:x=>f("session:setRole",{role:x}),requestControl:(x,K={})=>f("session:requestControl",{roverId:x,...K}),releaseControl:x=>f("session:releaseControl",{roverId:x}),subscribeAll:()=>f("session:subscribeAll")}),[f]),Q=Mt.useMemo(()=>({connected:B,session:s,logs:E,...A}),[A,B,E,s]);return Y.jsx(Td.Provider,{value:Q,children:o})}function qn(){return Mt.useContext(Td)}function ev({connected:o,role:i,mode:f}){const s=o?"bg-emerald-500/20 text-emerald-300":"bg-red-500/20 text-red-200";return Y.jsxs("div",{className:"flex flex-wrap items-center gap-3 text-sm",children:[Y.jsx("span",{className:`rounded-full px-3 py-1 font-medium ${s}`,children:o?"Connected":"Disconnected"}),Y.jsxs("span",{className:"rounded-full bg-slate-800/80 px-3 py-1 text-slate-200",children:["Role: ",i||"unknown"]}),Y.jsxs("span",{className:"rounded-full bg-slate-800/80 px-3 py-1 text-slate-200",children:["Mode: ",f||"--"]})]})}function lv(){const{logs:o}=qn();return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/70 p-4",children:[Y.jsxs("header",{className:"mb-3 flex items-center justify-between",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Server logs"}),Y.jsxs("span",{className:"text-xs uppercase tracking-[0.2em] text-slate-500",children:[o.length," entries"]})]}),Y.jsx("div",{className:"h-64 overflow-y-auto rounded-xl bg-slate-950/40 p-3 text-xs font-mono text-slate-300",children:o.length===0?Y.jsx("p",{children:"No logs yet."}):o.slice().reverse().map(i=>Y.jsxs("div",{className:"mb-2",children:[Y.jsx("span",{className:"text-slate-500",children:i.timestamp})," ",Y.jsxs("span",{className:"text-cyan-300",children:["[",i.level,"]"]})," ",i.label&&Y.jsxs("span",{className:"text-pink-300",children:["[",i.label,"]"]})," ",Y.jsx("span",{children:i.message})]},i.id))})]})}function nv(){const{session:o,requestControl:i}=qn(),f=o?.roster??[],[s,m]=Mt.useState({});async function E(R){m(B=>({...B,[R]:!0}));try{await i(R)}catch(B){alert(B.message)}finally{m(B=>({...B,[R]:!1}))}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Rovers"}),Y.jsxs("div",{className:"mt-4 space-y-3",children:[f.length===0&&Y.jsx("p",{className:"text-slate-400",children:"No rovers registered."}),f.map(R=>Y.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-3 rounded-xl bg-slate-950/40 px-4 py-3",children:[Y.jsxs("div",{children:[Y.jsx("p",{className:"text-white",children:R.name}),Y.jsxs("p",{className:"text-xs text-slate-400",children:["Locked: ",R.locked?"yes":"no"]})]}),Y.jsx("button",{type:"button",onClick:()=>E(R.id),disabled:s[R.id],className:"rounded-full bg-blue-600 px-4 py-1 text-sm font-semibold text-white disabled:opacity-50",children:s[R.id]?"Requesting…":"Request control"})]},R.id))]})]})}function av(){const{session:o,releaseControl:i}=qn(),f=o?.assignment,s=f?.roverId,[m,E]=Mt.useState(!1);async function R(){if(s){E(!0);try{await i(s)}catch(B){alert(B.message)}finally{E(!1)}}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Assignment"}),s?Y.jsxs("div",{className:"mt-4 space-y-3",children:[Y.jsxs("p",{className:"text-slate-300",children:["Currently driving rover ",s]}),Y.jsx("button",{type:"button",onClick:R,disabled:m,className:"rounded-full bg-red-600 px-4 py-1 text-sm font-semibold text-white disabled:opacity-50",children:m?"Releasing…":"Release control"})]}):Y.jsxs("div",{className:"mt-4 text-slate-400",children:[Y.jsxs("p",{children:["Status: ",f?.status??"not assigned"]}),f?.queuePosition&&Y.jsxs("p",{children:["Queue position: ",f.queuePosition]})]})]})}function uv(){const{session:o}=qn(),i=Mt.useMemo(()=>JSON.stringify(o??{},null,2),[o]);return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Session snapshot"}),Y.jsx("pre",{className:"mt-4 max-h-64 overflow-y-auto text-sm text-teal-200",children:i})]})}function iv(){const{login:o,setRole:i}=qn(),[f,s]=Mt.useState(""),[m,E]=Mt.useState(""),[R,B]=Mt.useState(!1);async function M(A){A.preventDefault(),B(!0);try{await o(f,m),s(""),E("")}catch(Q){alert(Q.message)}finally{B(!1)}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Authentication"}),Y.jsxs("form",{className:"mt-4 flex flex-col gap-3",onSubmit:M,children:[Y.jsx("input",{className:"rounded-lg border border-slate-800 bg-slate-950/60 px-3 py-2 text-white",placeholder:"Username",value:f,onChange:A=>s(A.target.value)}),Y.jsx("input",{className:"rounded-lg border border-slate-800 bg-slate-950/60 px-3 py-2 text-white",placeholder:"Password",type:"password",value:m,onChange:A=>E(A.target.value)}),Y.jsx("button",{type:"submit",disabled:R,className:"rounded-lg bg-emerald-600 py-2 font-semibold text-white disabled:opacity-50",children:R?"Logging in…":"Login as admin"})]}),Y.jsxs("div",{className:"mt-4 flex gap-3",children:[Y.jsx("button",{type:"button",onClick:()=>i("user"),className:"rounded-lg border border-slate-700 px-3 py-1 text-sm text-slate-200",children:"Driver mode"}),Y.jsx("button",{type:"button",onClick:()=>i("spectator"),className:"rounded-lg border border-slate-700 px-3 py-1 text-sm text-slate-200",children:"Spectator mode"})]})]})}function cv(){const{connected:o,session:i}=qn();return Y.jsx("div",{className:"min-h-screen bg-slate-950 text-slate-50",children:Y.jsxs("main",{className:"mx-auto flex max-w-6xl flex-col gap-6 px-6 py-10",children:[Y.jsxs("header",{className:"space-y-4",children:[Y.jsx("h1",{className:"text-4xl font-semibold text-white",children:"Multi Roomba Rover Console"}),Y.jsx(ev,{connected:o,role:i?.role,mode:i?.mode})]}),Y.jsxs("section",{className:"grid gap-6 lg:grid-cols-2",children:[Y.jsx(nv,{}),Y.jsx(av,{}),Y.jsx(iv,{}),Y.jsx(uv,{})]}),Y.jsx(lv,{})]})})}l0.createRoot(document.getElementById("root")).render(Y.jsx(Mt.StrictMode,{children:Y.jsx(F0,{children:Y.jsx(tv,{children:Y.jsx(cv,{})})})})); +`).replace(mm,"")}function mh(t,e){return e=yh(e),yh(t)===e}function st(t,e,l,n,a,u){switch(l){case"children":typeof n=="string"?e==="body"||e==="textarea"&&n===""||en(t,n):(typeof n=="number"||typeof n=="bigint")&&e!=="body"&&en(t,""+n);break;case"className":Xa(t,"class",n);break;case"tabIndex":Xa(t,"tabindex",n);break;case"dir":case"role":case"viewBox":case"width":case"height":Xa(t,l,n);break;case"style":ys(t,n,u);break;case"data":if(e!=="object"){Xa(t,"data",n);break}case"src":case"href":if(n===""&&(e!=="a"||l!=="href")){t.removeAttribute(l);break}if(n==null||typeof n=="function"||typeof n=="symbol"||typeof n=="boolean"){t.removeAttribute(l);break}n=Ga(""+n),t.setAttribute(l,n);break;case"action":case"formAction":if(typeof n=="function"){t.setAttribute(l,"javascript:throw new Error('A React form was unexpectedly submitted. If you called form.submit() manually, consider using form.requestSubmit() instead. If you\\'re trying to use event.stopPropagation() in a submit event handler, consider also calling event.preventDefault().')");break}else typeof u=="function"&&(l==="formAction"?(e!=="input"&&st(t,e,"name",a.name,a,null),st(t,e,"formEncType",a.formEncType,a,null),st(t,e,"formMethod",a.formMethod,a,null),st(t,e,"formTarget",a.formTarget,a,null)):(st(t,e,"encType",a.encType,a,null),st(t,e,"method",a.method,a,null),st(t,e,"target",a.target,a,null)));if(n==null||typeof n=="symbol"||typeof n=="boolean"){t.removeAttribute(l);break}n=Ga(""+n),t.setAttribute(l,n);break;case"onClick":n!=null&&(t.onclick=je);break;case"onScroll":n!=null&&W("scroll",t);break;case"onScrollEnd":n!=null&&W("scrollend",t);break;case"dangerouslySetInnerHTML":if(n!=null){if(typeof n!="object"||!("__html"in n))throw Error(s(61));if(l=n.__html,l!=null){if(a.children!=null)throw Error(s(60));t.innerHTML=l}}break;case"multiple":t.multiple=n&&typeof n!="function"&&typeof n!="symbol";break;case"muted":t.muted=n&&typeof n!="function"&&typeof n!="symbol";break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"defaultValue":case"defaultChecked":case"innerHTML":case"ref":break;case"autoFocus":break;case"xlinkHref":if(n==null||typeof n=="function"||typeof n=="boolean"||typeof n=="symbol"){t.removeAttribute("xlink:href");break}l=Ga(""+n),t.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",l);break;case"contentEditable":case"spellCheck":case"draggable":case"value":case"autoReverse":case"externalResourcesRequired":case"focusable":case"preserveAlpha":n!=null&&typeof n!="function"&&typeof n!="symbol"?t.setAttribute(l,""+n):t.removeAttribute(l);break;case"inert":case"allowFullScreen":case"async":case"autoPlay":case"controls":case"default":case"defer":case"disabled":case"disablePictureInPicture":case"disableRemotePlayback":case"formNoValidate":case"hidden":case"loop":case"noModule":case"noValidate":case"open":case"playsInline":case"readOnly":case"required":case"reversed":case"scoped":case"seamless":case"itemScope":n&&typeof n!="function"&&typeof n!="symbol"?t.setAttribute(l,""):t.removeAttribute(l);break;case"capture":case"download":n===!0?t.setAttribute(l,""):n!==!1&&n!=null&&typeof n!="function"&&typeof n!="symbol"?t.setAttribute(l,n):t.removeAttribute(l);break;case"cols":case"rows":case"size":case"span":n!=null&&typeof n!="function"&&typeof n!="symbol"&&!isNaN(n)&&1<=n?t.setAttribute(l,n):t.removeAttribute(l);break;case"rowSpan":case"start":n==null||typeof n=="function"||typeof n=="symbol"||isNaN(n)?t.removeAttribute(l):t.setAttribute(l,n);break;case"popover":W("beforetoggle",t),W("toggle",t),La(t,"popover",n);break;case"xlinkActuate":Ye(t,"http://www.w3.org/1999/xlink","xlink:actuate",n);break;case"xlinkArcrole":Ye(t,"http://www.w3.org/1999/xlink","xlink:arcrole",n);break;case"xlinkRole":Ye(t,"http://www.w3.org/1999/xlink","xlink:role",n);break;case"xlinkShow":Ye(t,"http://www.w3.org/1999/xlink","xlink:show",n);break;case"xlinkTitle":Ye(t,"http://www.w3.org/1999/xlink","xlink:title",n);break;case"xlinkType":Ye(t,"http://www.w3.org/1999/xlink","xlink:type",n);break;case"xmlBase":Ye(t,"http://www.w3.org/XML/1998/namespace","xml:base",n);break;case"xmlLang":Ye(t,"http://www.w3.org/XML/1998/namespace","xml:lang",n);break;case"xmlSpace":Ye(t,"http://www.w3.org/XML/1998/namespace","xml:space",n);break;case"is":La(t,"is",n);break;case"innerText":case"textContent":break;default:(!(2r)break;var _=h.transferSize,O=h.initiatorType;_&&vh(O)&&(h=h.responseEnd,c+=_*(h"u"?null:document;function Mh(t,e,l){var n=Dn;if(n&&typeof e=="string"&&e){var a=re(e);a='link[rel="'+t+'"][href="'+a+'"]',typeof l=="string"&&(a+='[crossorigin="'+l+'"]'),Nh.has(a)||(Nh.add(a),t={rel:t,crossOrigin:l,href:e},n.querySelector(a)===null&&(e=n.createElement("link"),Ht(e,"link",t),Rt(e),n.head.appendChild(e)))}}function Nm(t){tl.D(t),Mh("dns-prefetch",t,null)}function Mm(t,e){tl.C(t,e),Mh("preconnect",t,e)}function Rm(t,e,l){tl.L(t,e,l);var n=Dn;if(n&&t&&e){var a='link[rel="preload"][as="'+re(e)+'"]';e==="image"&&l&&l.imageSrcSet?(a+='[imagesrcset="'+re(l.imageSrcSet)+'"]',typeof l.imageSizes=="string"&&(a+='[imagesizes="'+re(l.imageSizes)+'"]')):a+='[href="'+re(t)+'"]';var u=a;switch(e){case"style":u=Un(t);break;case"script":u=xn(t)}Se.has(u)||(t=x({rel:"preload",href:e==="image"&&l&&l.imageSrcSet?void 0:t,as:e},l),Se.set(u,t),n.querySelector(a)!==null||e==="style"&&n.querySelector(Ta(u))||e==="script"&&n.querySelector(Aa(u))||(e=n.createElement("link"),Ht(e,"link",t),Rt(e),n.head.appendChild(e)))}}function Dm(t,e){tl.m(t,e);var l=Dn;if(l&&t){var n=e&&typeof e.as=="string"?e.as:"script",a='link[rel="modulepreload"][as="'+re(n)+'"][href="'+re(t)+'"]',u=a;switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":u=xn(t)}if(!Se.has(u)&&(t=x({rel:"modulepreload",href:t},e),Se.set(u,t),l.querySelector(a)===null)){switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(l.querySelector(Aa(u)))return}n=l.createElement("link"),Ht(n,"link",t),Rt(n),l.head.appendChild(n)}}}function Um(t,e,l){tl.S(t,e,l);var n=Dn;if(n&&t){var a=Il(n).hoistableStyles,u=Un(t);e=e||"default";var c=a.get(u);if(!c){var r={loading:0,preload:null};if(c=n.querySelector(Ta(u)))r.loading=5;else{t=x({rel:"stylesheet",href:t,"data-precedence":e},l),(l=Se.get(u))&&mf(t,l);var h=c=n.createElement("link");Rt(h),Ht(h,"link",t),h._p=new Promise(function(p,_){h.onload=p,h.onerror=_}),h.addEventListener("load",function(){r.loading|=1}),h.addEventListener("error",function(){r.loading|=2}),r.loading|=4,Lu(c,e,n)}c={type:"stylesheet",instance:c,count:1,state:r},a.set(u,c)}}}function xm(t,e){tl.X(t,e);var l=Dn;if(l&&t){var n=Il(l).hoistableScripts,a=xn(t),u=n.get(a);u||(u=l.querySelector(Aa(a)),u||(t=x({src:t,async:!0},e),(e=Se.get(a))&&vf(t,e),u=l.createElement("script"),Rt(u),Ht(u,"link",t),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(a,u))}}function Cm(t,e){tl.M(t,e);var l=Dn;if(l&&t){var n=Il(l).hoistableScripts,a=xn(t),u=n.get(a);u||(u=l.querySelector(Aa(a)),u||(t=x({src:t,async:!0,type:"module"},e),(e=Se.get(a))&&vf(t,e),u=l.createElement("script"),Rt(u),Ht(u,"link",t),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(a,u))}}function Rh(t,e,l,n){var a=(a=J.current)?ju(a):null;if(!a)throw Error(s(446));switch(t){case"meta":case"title":return null;case"style":return typeof l.precedence=="string"&&typeof l.href=="string"?(e=Un(l.href),l=Il(a).hoistableStyles,n=l.get(e),n||(n={type:"style",instance:null,count:0,state:null},l.set(e,n)),n):{type:"void",instance:null,count:0,state:null};case"link":if(l.rel==="stylesheet"&&typeof l.href=="string"&&typeof l.precedence=="string"){t=Un(l.href);var u=Il(a).hoistableStyles,c=u.get(t);if(c||(a=a.ownerDocument||a,c={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},u.set(t,c),(u=a.querySelector(Ta(t)))&&!u._p&&(c.instance=u,c.state.loading=5),Se.has(t)||(l={rel:"preload",as:"style",href:l.href,crossOrigin:l.crossOrigin,integrity:l.integrity,media:l.media,hrefLang:l.hrefLang,referrerPolicy:l.referrerPolicy},Se.set(t,l),u||Bm(a,t,l,c.state))),e&&n===null)throw Error(s(528,""));return c}if(e&&n!==null)throw Error(s(529,""));return null;case"script":return e=l.async,l=l.src,typeof l=="string"&&e&&typeof e!="function"&&typeof e!="symbol"?(e=xn(l),l=Il(a).hoistableScripts,n=l.get(e),n||(n={type:"script",instance:null,count:0,state:null},l.set(e,n)),n):{type:"void",instance:null,count:0,state:null};default:throw Error(s(444,t))}}function Un(t){return'href="'+re(t)+'"'}function Ta(t){return'link[rel="stylesheet"]['+t+"]"}function Dh(t){return x({},t,{"data-precedence":t.precedence,precedence:null})}function Bm(t,e,l,n){t.querySelector('link[rel="preload"][as="style"]['+e+"]")?n.loading=1:(e=t.createElement("link"),n.preload=e,e.addEventListener("load",function(){return n.loading|=1}),e.addEventListener("error",function(){return n.loading|=2}),Ht(e,"link",l),Rt(e),t.head.appendChild(e))}function xn(t){return'[src="'+re(t)+'"]'}function Aa(t){return"script[async]"+t}function Uh(t,e,l){if(e.count++,e.instance===null)switch(e.type){case"style":var n=t.querySelector('style[data-href~="'+re(l.href)+'"]');if(n)return e.instance=n,Rt(n),n;var a=x({},l,{"data-href":l.href,"data-precedence":l.precedence,href:null,precedence:null});return n=(t.ownerDocument||t).createElement("style"),Rt(n),Ht(n,"style",a),Lu(n,l.precedence,t),e.instance=n;case"stylesheet":a=Un(l.href);var u=t.querySelector(Ta(a));if(u)return e.state.loading|=4,e.instance=u,Rt(u),u;n=Dh(l),(a=Se.get(a))&&mf(n,a),u=(t.ownerDocument||t).createElement("link"),Rt(u);var c=u;return c._p=new Promise(function(r,h){c.onload=r,c.onerror=h}),Ht(u,"link",n),e.state.loading|=4,Lu(u,l.precedence,t),e.instance=u;case"script":return u=xn(l.src),(a=t.querySelector(Aa(u)))?(e.instance=a,Rt(a),a):(n=l,(a=Se.get(u))&&(n=x({},l),vf(n,a)),t=t.ownerDocument||t,a=t.createElement("script"),Rt(a),Ht(a,"link",n),t.head.appendChild(a),e.instance=a);case"void":return null;default:throw Error(s(443,e.type))}else e.type==="stylesheet"&&(e.state.loading&4)===0&&(n=e.instance,e.state.loading|=4,Lu(n,l.precedence,t));return e.instance}function Lu(t,e,l){for(var n=l.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=n.length?n[n.length-1]:null,u=a,c=0;c title"):null)}function qm(t,e,l){if(l===1||e.itemProp!=null)return!1;switch(t){case"meta":case"title":return!0;case"style":if(typeof e.precedence!="string"||typeof e.href!="string"||e.href==="")break;return!0;case"link":if(typeof e.rel!="string"||typeof e.href!="string"||e.href===""||e.onLoad||e.onError)break;switch(e.rel){case"stylesheet":return t=e.disabled,typeof e.precedence=="string"&&t==null;default:return!0}case"script":if(e.async&&typeof e.async!="function"&&typeof e.async!="symbol"&&!e.onLoad&&!e.onError&&e.src&&typeof e.src=="string")return!0}return!1}function Bh(t){return!(t.type==="stylesheet"&&(t.state.loading&3)===0)}function Hm(t,e,l,n){if(l.type==="stylesheet"&&(typeof n.media!="string"||matchMedia(n.media).matches!==!1)&&(l.state.loading&4)===0){if(l.instance===null){var a=Un(n.href),u=e.querySelector(Ta(a));if(u){e=u._p,e!==null&&typeof e=="object"&&typeof e.then=="function"&&(t.count++,t=Qu.bind(t),e.then(t,t)),l.state.loading|=4,l.instance=u,Rt(u);return}u=e.ownerDocument||e,n=Dh(n),(a=Se.get(a))&&mf(n,a),u=u.createElement("link"),Rt(u);var c=u;c._p=new Promise(function(r,h){c.onload=r,c.onerror=h}),Ht(u,"link",n),l.instance=u}t.stylesheets===null&&(t.stylesheets=new Map),t.stylesheets.set(l,e),(e=l.state.preload)&&(l.state.loading&3)===0&&(t.count++,l=Qu.bind(t),e.addEventListener("load",l),e.addEventListener("error",l))}}var gf=0;function Ym(t,e){return t.stylesheets&&t.count===0&&Vu(t,t.stylesheets),0gf?50:800)+e);return t.unsuspend=l,function(){t.unsuspend=null,clearTimeout(n),clearTimeout(a)}}:null}function Qu(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Vu(this,this.stylesheets);else if(this.unsuspend){var t=this.unsuspend;this.unsuspend=null,t()}}}var Gu=null;function Vu(t,e){t.stylesheets=null,t.unsuspend!==null&&(t.count++,Gu=new Map,e.forEach(jm,t),Gu=null,Qu.call(t))}function jm(t,e){if(!(e.state.loading&4)){var l=Gu.get(t);if(l)var n=l.get(null);else{l=new Map,Gu.set(t,l);for(var a=t.querySelectorAll("link[data-precedence],style[data-precedence]"),u=0;u"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(o)}catch(i){console.error(i)}}return o(),Of.exports=t0(),Of.exports}var l0=e0();const Be=Object.create(null);Be.open="0";Be.close="1";Be.ping="2";Be.pong="3";Be.message="4";Be.upgrade="5";Be.noop="6";const Pu=Object.create(null);Object.keys(Be).forEach(o=>{Pu[Be[o]]=o});const Cf={type:"error",data:"parser error"},sd=typeof Blob=="function"||typeof Blob<"u"&&Object.prototype.toString.call(Blob)==="[object BlobConstructor]",od=typeof ArrayBuffer=="function",rd=o=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(o):o&&o.buffer instanceof ArrayBuffer,Xf=({type:o,data:i},f,s)=>sd&&i instanceof Blob?f?s(i):ad(i,s):od&&(i instanceof ArrayBuffer||rd(i))?f?s(i):ad(new Blob([i]),s):s(Be[o]+(i||"")),ad=(o,i)=>{const f=new FileReader;return f.onload=function(){const s=f.result.split(",")[1];i("b"+(s||""))},f.readAsDataURL(o)};function ud(o){return o instanceof Uint8Array?o:o instanceof ArrayBuffer?new Uint8Array(o):new Uint8Array(o.buffer,o.byteOffset,o.byteLength)}let Df;function n0(o,i){if(sd&&o.data instanceof Blob)return o.data.arrayBuffer().then(ud).then(i);if(od&&(o.data instanceof ArrayBuffer||rd(o.data)))return i(ud(o.data));Xf(o,!1,f=>{Df||(Df=new TextEncoder),i(Df.encode(f))})}const id="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",xa=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(let o=0;o{let i=o.length*.75,f=o.length,s,m=0,E,R,B,M;o[o.length-1]==="="&&(i--,o[o.length-2]==="="&&i--);const A=new ArrayBuffer(i),Q=new Uint8Array(A);for(s=0;s>4,Q[m++]=(R&15)<<4|B>>2,Q[m++]=(B&3)<<6|M&63;return A},u0=typeof ArrayBuffer=="function",Qf=(o,i)=>{if(typeof o!="string")return{type:"message",data:hd(o,i)};const f=o.charAt(0);return f==="b"?{type:"message",data:i0(o.substring(1),i)}:Pu[f]?o.length>1?{type:Pu[f],data:o.substring(1)}:{type:Pu[f]}:Cf},i0=(o,i)=>{if(u0){const f=a0(o);return hd(f,i)}else return{base64:!0,data:o}},hd=(o,i)=>{switch(i){case"blob":return o instanceof Blob?o:new Blob([o]);case"arraybuffer":default:return o instanceof ArrayBuffer?o:o.buffer}},dd="",c0=(o,i)=>{const f=o.length,s=new Array(f);let m=0;o.forEach((E,R)=>{Xf(E,!1,B=>{s[R]=B,++m===f&&i(s.join(dd))})})},f0=(o,i)=>{const f=o.split(dd),s=[];for(let m=0;m{const s=f.length;let m;if(s<126)m=new Uint8Array(1),new DataView(m.buffer).setUint8(0,s);else if(s<65536){m=new Uint8Array(3);const E=new DataView(m.buffer);E.setUint8(0,126),E.setUint16(1,s)}else{m=new Uint8Array(9);const E=new DataView(m.buffer);E.setUint8(0,127),E.setBigUint64(1,BigInt(s))}o.data&&typeof o.data!="string"&&(m[0]|=128),i.enqueue(m),i.enqueue(f)})}})}let Uf;function Fu(o){return o.reduce((i,f)=>i+f.length,0)}function Iu(o,i){if(o[0].length===i)return o.shift();const f=new Uint8Array(i);let s=0;for(let m=0;mMath.pow(2,21)-1){B.enqueue(Cf);break}m=Q*Math.pow(2,32)+A.getUint32(4),s=3}else{if(Fu(f)o){B.enqueue(Cf);break}}}})}const yd=4;function Ot(o){if(o)return r0(o)}function r0(o){for(var i in Ot.prototype)o[i]=Ot.prototype[i];return o}Ot.prototype.on=Ot.prototype.addEventListener=function(o,i){return this._callbacks=this._callbacks||{},(this._callbacks["$"+o]=this._callbacks["$"+o]||[]).push(i),this};Ot.prototype.once=function(o,i){function f(){this.off(o,f),i.apply(this,arguments)}return f.fn=i,this.on(o,f),this};Ot.prototype.off=Ot.prototype.removeListener=Ot.prototype.removeAllListeners=Ot.prototype.removeEventListener=function(o,i){if(this._callbacks=this._callbacks||{},arguments.length==0)return this._callbacks={},this;var f=this._callbacks["$"+o];if(!f)return this;if(arguments.length==1)return delete this._callbacks["$"+o],this;for(var s,m=0;mPromise.resolve().then(i):(i,f)=>f(i,0),be=typeof self<"u"?self:typeof window<"u"?window:Function("return this")(),h0="arraybuffer";function md(o,...i){return i.reduce((f,s)=>(o.hasOwnProperty(s)&&(f[s]=o[s]),f),{})}const d0=be.setTimeout,y0=be.clearTimeout;function ai(o,i){i.useNativeTimers?(o.setTimeoutFn=d0.bind(be),o.clearTimeoutFn=y0.bind(be)):(o.setTimeoutFn=be.setTimeout.bind(be),o.clearTimeoutFn=be.clearTimeout.bind(be))}const m0=1.33;function v0(o){return typeof o=="string"?g0(o):Math.ceil((o.byteLength||o.size)*m0)}function g0(o){let i=0,f=0;for(let s=0,m=o.length;s=57344?f+=3:(s++,f+=4);return f}function vd(){return Date.now().toString(36).substring(3)+Math.random().toString(36).substring(2,5)}function p0(o){let i="";for(let f in o)o.hasOwnProperty(f)&&(i.length&&(i+="&"),i+=encodeURIComponent(f)+"="+encodeURIComponent(o[f]));return i}function S0(o){let i={},f=o.split("&");for(let s=0,m=f.length;s{this.readyState="paused",i()};if(this._polling||!this.writable){let s=0;this._polling&&(s++,this.once("pollComplete",function(){--s||f()})),this.writable||(s++,this.once("drain",function(){--s||f()}))}else f()}_poll(){this._polling=!0,this.doPoll(),this.emitReserved("poll")}onData(i){const f=s=>{if(this.readyState==="opening"&&s.type==="open"&&this.onOpen(),s.type==="close")return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(s)};f0(i,this.socket.binaryType).forEach(f),this.readyState!=="closed"&&(this._polling=!1,this.emitReserved("pollComplete"),this.readyState==="open"&&this._poll())}doClose(){const i=()=>{this.write([{type:"close"}])};this.readyState==="open"?i():this.once("open",i)}write(i){this.writable=!1,c0(i,f=>{this.doWrite(f,()=>{this.writable=!0,this.emitReserved("drain")})})}uri(){const i=this.opts.secure?"https":"http",f=this.query||{};return this.opts.timestampRequests!==!1&&(f[this.opts.timestampParam]=vd()),!this.supportsBinary&&!f.sid&&(f.b64=1),this.createUri(i,f)}}let gd=!1;try{gd=typeof XMLHttpRequest<"u"&&"withCredentials"in new XMLHttpRequest}catch{}const E0=gd;function T0(){}class A0 extends _0{constructor(i){if(super(i),typeof location<"u"){const f=location.protocol==="https:";let s=location.port;s||(s=f?"443":"80"),this.xd=typeof location<"u"&&i.hostname!==location.hostname||s!==i.port}}doWrite(i,f){const s=this.request({method:"POST",data:i});s.on("success",f),s.on("error",(m,E)=>{this.onError("xhr post error",m,E)})}doPoll(){const i=this.request();i.on("data",this.onData.bind(this)),i.on("error",(f,s)=>{this.onError("xhr poll error",f,s)}),this.pollXhr=i}}class Ce extends Ot{constructor(i,f,s){super(),this.createRequest=i,ai(this,s),this._opts=s,this._method=s.method||"GET",this._uri=f,this._data=s.data!==void 0?s.data:null,this._create()}_create(){var i;const f=md(this._opts,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");f.xdomain=!!this._opts.xd;const s=this._xhr=this.createRequest(f);try{s.open(this._method,this._uri,!0);try{if(this._opts.extraHeaders){s.setDisableHeaderCheck&&s.setDisableHeaderCheck(!0);for(let m in this._opts.extraHeaders)this._opts.extraHeaders.hasOwnProperty(m)&&s.setRequestHeader(m,this._opts.extraHeaders[m])}}catch{}if(this._method==="POST")try{s.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch{}try{s.setRequestHeader("Accept","*/*")}catch{}(i=this._opts.cookieJar)===null||i===void 0||i.addCookies(s),"withCredentials"in s&&(s.withCredentials=this._opts.withCredentials),this._opts.requestTimeout&&(s.timeout=this._opts.requestTimeout),s.onreadystatechange=()=>{var m;s.readyState===3&&((m=this._opts.cookieJar)===null||m===void 0||m.parseCookies(s.getResponseHeader("set-cookie"))),s.readyState===4&&(s.status===200||s.status===1223?this._onLoad():this.setTimeoutFn(()=>{this._onError(typeof s.status=="number"?s.status:0)},0))},s.send(this._data)}catch(m){this.setTimeoutFn(()=>{this._onError(m)},0);return}typeof document<"u"&&(this._index=Ce.requestsCount++,Ce.requests[this._index]=this)}_onError(i){this.emitReserved("error",i,this._xhr),this._cleanup(!0)}_cleanup(i){if(!(typeof this._xhr>"u"||this._xhr===null)){if(this._xhr.onreadystatechange=T0,i)try{this._xhr.abort()}catch{}typeof document<"u"&&delete Ce.requests[this._index],this._xhr=null}}_onLoad(){const i=this._xhr.responseText;i!==null&&(this.emitReserved("data",i),this.emitReserved("success"),this._cleanup())}abort(){this._cleanup()}}Ce.requestsCount=0;Ce.requests={};if(typeof document<"u"){if(typeof attachEvent=="function")attachEvent("onunload",cd);else if(typeof addEventListener=="function"){const o="onpagehide"in be?"pagehide":"unload";addEventListener(o,cd,!1)}}function cd(){for(let o in Ce.requests)Ce.requests.hasOwnProperty(o)&&Ce.requests[o].abort()}const z0=(function(){const o=pd({xdomain:!1});return o&&o.responseType!==null})();class O0 extends A0{constructor(i){super(i);const f=i&&i.forceBase64;this.supportsBinary=z0&&!f}request(i={}){return Object.assign(i,{xd:this.xd},this.opts),new Ce(pd,this.uri(),i)}}function pd(o){const i=o.xdomain;try{if(typeof XMLHttpRequest<"u"&&(!i||E0))return new XMLHttpRequest}catch{}if(!i)try{return new be[["Active"].concat("Object").join("X")]("Microsoft.XMLHTTP")}catch{}}const Sd=typeof navigator<"u"&&typeof navigator.product=="string"&&navigator.product.toLowerCase()==="reactnative";class N0 extends Gf{get name(){return"websocket"}doOpen(){const i=this.uri(),f=this.opts.protocols,s=Sd?{}:md(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(s.headers=this.opts.extraHeaders);try{this.ws=this.createSocket(i,f,s)}catch(m){return this.emitReserved("error",m)}this.ws.binaryType=this.socket.binaryType,this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=i=>this.onClose({description:"websocket connection closed",context:i}),this.ws.onmessage=i=>this.onData(i.data),this.ws.onerror=i=>this.onError("websocket error",i)}write(i){this.writable=!1;for(let f=0;f{try{this.doWrite(s,E)}catch{}m&&ni(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){typeof this.ws<"u"&&(this.ws.onerror=()=>{},this.ws.close(),this.ws=null)}uri(){const i=this.opts.secure?"wss":"ws",f=this.query||{};return this.opts.timestampRequests&&(f[this.opts.timestampParam]=vd()),this.supportsBinary||(f.b64=1),this.createUri(i,f)}}const xf=be.WebSocket||be.MozWebSocket;class M0 extends N0{createSocket(i,f,s){return Sd?new xf(i,f,s):f?new xf(i,f):new xf(i)}doWrite(i,f){this.ws.send(f)}}class R0 extends Gf{get name(){return"webtransport"}doOpen(){try{this._transport=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name])}catch(i){return this.emitReserved("error",i)}this._transport.closed.then(()=>{this.onClose()}).catch(i=>{this.onError("webtransport error",i)}),this._transport.ready.then(()=>{this._transport.createBidirectionalStream().then(i=>{const f=o0(Number.MAX_SAFE_INTEGER,this.socket.binaryType),s=i.readable.pipeThrough(f).getReader(),m=s0();m.readable.pipeTo(i.writable),this._writer=m.writable.getWriter();const E=()=>{s.read().then(({done:B,value:M})=>{B||(this.onPacket(M),E())}).catch(B=>{})};E();const R={type:"open"};this.query.sid&&(R.data=`{"sid":"${this.query.sid}"}`),this._writer.write(R).then(()=>this.onOpen())})})}write(i){this.writable=!1;for(let f=0;f{m&&ni(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){var i;(i=this._transport)===null||i===void 0||i.close()}}const D0={websocket:M0,webtransport:R0,polling:O0},U0=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,x0=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function Bf(o){if(o.length>8e3)throw"URI too long";const i=o,f=o.indexOf("["),s=o.indexOf("]");f!=-1&&s!=-1&&(o=o.substring(0,f)+o.substring(f,s).replace(/:/g,";")+o.substring(s,o.length));let m=U0.exec(o||""),E={},R=14;for(;R--;)E[x0[R]]=m[R]||"";return f!=-1&&s!=-1&&(E.source=i,E.host=E.host.substring(1,E.host.length-1).replace(/;/g,":"),E.authority=E.authority.replace("[","").replace("]","").replace(/;/g,":"),E.ipv6uri=!0),E.pathNames=C0(E,E.path),E.queryKey=B0(E,E.query),E}function C0(o,i){const f=/\/{2,9}/g,s=i.replace(f,"/").split("/");return(i.slice(0,1)=="/"||i.length===0)&&s.splice(0,1),i.slice(-1)=="/"&&s.splice(s.length-1,1),s}function B0(o,i){const f={};return i.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,function(s,m,E){m&&(f[m]=E)}),f}const qf=typeof addEventListener=="function"&&typeof removeEventListener=="function",ti=[];qf&&addEventListener("offline",()=>{ti.forEach(o=>o())},!1);class Nl extends Ot{constructor(i,f){if(super(),this.binaryType=h0,this.writeBuffer=[],this._prevBufferLen=0,this._pingInterval=-1,this._pingTimeout=-1,this._maxPayload=-1,this._pingTimeoutTime=1/0,i&&typeof i=="object"&&(f=i,i=null),i){const s=Bf(i);f.hostname=s.host,f.secure=s.protocol==="https"||s.protocol==="wss",f.port=s.port,s.query&&(f.query=s.query)}else f.host&&(f.hostname=Bf(f.host).host);ai(this,f),this.secure=f.secure!=null?f.secure:typeof location<"u"&&location.protocol==="https:",f.hostname&&!f.port&&(f.port=this.secure?"443":"80"),this.hostname=f.hostname||(typeof location<"u"?location.hostname:"localhost"),this.port=f.port||(typeof location<"u"&&location.port?location.port:this.secure?"443":"80"),this.transports=[],this._transportsByName={},f.transports.forEach(s=>{const m=s.prototype.name;this.transports.push(m),this._transportsByName[m]=s}),this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},f),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),typeof this.opts.query=="string"&&(this.opts.query=S0(this.opts.query)),qf&&(this.opts.closeOnBeforeunload&&(this._beforeunloadEventListener=()=>{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this._beforeunloadEventListener,!1)),this.hostname!=="localhost"&&(this._offlineEventListener=()=>{this._onClose("transport close",{description:"network connection lost"})},ti.push(this._offlineEventListener))),this.opts.withCredentials&&(this._cookieJar=void 0),this._open()}createTransport(i){const f=Object.assign({},this.opts.query);f.EIO=yd,f.transport=i,this.id&&(f.sid=this.id);const s=Object.assign({},this.opts,{query:f,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[i]);return new this._transportsByName[i](s)}_open(){if(this.transports.length===0){this.setTimeoutFn(()=>{this.emitReserved("error","No transports available")},0);return}const i=this.opts.rememberUpgrade&&Nl.priorWebsocketSuccess&&this.transports.indexOf("websocket")!==-1?"websocket":this.transports[0];this.readyState="opening";const f=this.createTransport(i);f.open(),this.setTransport(f)}setTransport(i){this.transport&&this.transport.removeAllListeners(),this.transport=i,i.on("drain",this._onDrain.bind(this)).on("packet",this._onPacket.bind(this)).on("error",this._onError.bind(this)).on("close",f=>this._onClose("transport close",f))}onOpen(){this.readyState="open",Nl.priorWebsocketSuccess=this.transport.name==="websocket",this.emitReserved("open"),this.flush()}_onPacket(i){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing")switch(this.emitReserved("packet",i),this.emitReserved("heartbeat"),i.type){case"open":this.onHandshake(JSON.parse(i.data));break;case"ping":this._sendPacket("pong"),this.emitReserved("ping"),this.emitReserved("pong"),this._resetPingTimeout();break;case"error":const f=new Error("server error");f.code=i.data,this._onError(f);break;case"message":this.emitReserved("data",i.data),this.emitReserved("message",i.data);break}}onHandshake(i){this.emitReserved("handshake",i),this.id=i.sid,this.transport.query.sid=i.sid,this._pingInterval=i.pingInterval,this._pingTimeout=i.pingTimeout,this._maxPayload=i.maxPayload,this.onOpen(),this.readyState!=="closed"&&this._resetPingTimeout()}_resetPingTimeout(){this.clearTimeoutFn(this._pingTimeoutTimer);const i=this._pingInterval+this._pingTimeout;this._pingTimeoutTime=Date.now()+i,this._pingTimeoutTimer=this.setTimeoutFn(()=>{this._onClose("ping timeout")},i),this.opts.autoUnref&&this._pingTimeoutTimer.unref()}_onDrain(){this.writeBuffer.splice(0,this._prevBufferLen),this._prevBufferLen=0,this.writeBuffer.length===0?this.emitReserved("drain"):this.flush()}flush(){if(this.readyState!=="closed"&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){const i=this._getWritablePackets();this.transport.send(i),this._prevBufferLen=i.length,this.emitReserved("flush")}}_getWritablePackets(){if(!(this._maxPayload&&this.transport.name==="polling"&&this.writeBuffer.length>1))return this.writeBuffer;let f=1;for(let s=0;s0&&f>this._maxPayload)return this.writeBuffer.slice(0,s);f+=2}return this.writeBuffer}_hasPingExpired(){if(!this._pingTimeoutTime)return!0;const i=Date.now()>this._pingTimeoutTime;return i&&(this._pingTimeoutTime=0,ni(()=>{this._onClose("ping timeout")},this.setTimeoutFn)),i}write(i,f,s){return this._sendPacket("message",i,f,s),this}send(i,f,s){return this._sendPacket("message",i,f,s),this}_sendPacket(i,f,s,m){if(typeof f=="function"&&(m=f,f=void 0),typeof s=="function"&&(m=s,s=null),this.readyState==="closing"||this.readyState==="closed")return;s=s||{},s.compress=s.compress!==!1;const E={type:i,data:f,options:s};this.emitReserved("packetCreate",E),this.writeBuffer.push(E),m&&this.once("flush",m),this.flush()}close(){const i=()=>{this._onClose("forced close"),this.transport.close()},f=()=>{this.off("upgrade",f),this.off("upgradeError",f),i()},s=()=>{this.once("upgrade",f),this.once("upgradeError",f)};return(this.readyState==="opening"||this.readyState==="open")&&(this.readyState="closing",this.writeBuffer.length?this.once("drain",()=>{this.upgrading?s():i()}):this.upgrading?s():i()),this}_onError(i){if(Nl.priorWebsocketSuccess=!1,this.opts.tryAllTransports&&this.transports.length>1&&this.readyState==="opening")return this.transports.shift(),this._open();this.emitReserved("error",i),this._onClose("transport error",i)}_onClose(i,f){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing"){if(this.clearTimeoutFn(this._pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),qf&&(this._beforeunloadEventListener&&removeEventListener("beforeunload",this._beforeunloadEventListener,!1),this._offlineEventListener)){const s=ti.indexOf(this._offlineEventListener);s!==-1&&ti.splice(s,1)}this.readyState="closed",this.id=null,this.emitReserved("close",i,f),this.writeBuffer=[],this._prevBufferLen=0}}}Nl.protocol=yd;class q0 extends Nl{constructor(){super(...arguments),this._upgrades=[]}onOpen(){if(super.onOpen(),this.readyState==="open"&&this.opts.upgrade)for(let i=0;i{s||(f.send([{type:"ping",data:"probe"}]),f.once("packet",x=>{if(!s)if(x.type==="pong"&&x.data==="probe"){if(this.upgrading=!0,this.emitReserved("upgrading",f),!f)return;Nl.priorWebsocketSuccess=f.name==="websocket",this.transport.pause(()=>{s||this.readyState!=="closed"&&(Q(),this.setTransport(f),f.send([{type:"upgrade"}]),this.emitReserved("upgrade",f),f=null,this.upgrading=!1,this.flush())})}else{const K=new Error("probe error");K.transport=f.name,this.emitReserved("upgradeError",K)}}))};function E(){s||(s=!0,Q(),f.close(),f=null)}const R=x=>{const K=new Error("probe error: "+x);K.transport=f.name,E(),this.emitReserved("upgradeError",K)};function B(){R("transport closed")}function M(){R("socket closed")}function A(x){f&&x.name!==f.name&&E()}const Q=()=>{f.removeListener("open",m),f.removeListener("error",R),f.removeListener("close",B),this.off("close",M),this.off("upgrading",A)};f.once("open",m),f.once("error",R),f.once("close",B),this.once("close",M),this.once("upgrading",A),this._upgrades.indexOf("webtransport")!==-1&&i!=="webtransport"?this.setTimeoutFn(()=>{s||f.open()},200):f.open()}onHandshake(i){this._upgrades=this._filterUpgrades(i.upgrades),super.onHandshake(i)}_filterUpgrades(i){const f=[];for(let s=0;sD0[m]).filter(m=>!!m)),super(i,s)}};function Y0(o,i="",f){let s=o;f=f||typeof location<"u"&&location,o==null&&(o=f.protocol+"//"+f.host),typeof o=="string"&&(o.charAt(0)==="/"&&(o.charAt(1)==="/"?o=f.protocol+o:o=f.host+o),/^(https?|wss?):\/\//.test(o)||(typeof f<"u"?o=f.protocol+"//"+o:o="https://"+o),s=Bf(o)),s.port||(/^(http|ws)$/.test(s.protocol)?s.port="80":/^(http|ws)s$/.test(s.protocol)&&(s.port="443")),s.path=s.path||"/";const E=s.host.indexOf(":")!==-1?"["+s.host+"]":s.host;return s.id=s.protocol+"://"+E+":"+s.port+i,s.href=s.protocol+"://"+E+(f&&f.port===s.port?"":":"+s.port),s}const j0=typeof ArrayBuffer=="function",L0=o=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(o):o.buffer instanceof ArrayBuffer,bd=Object.prototype.toString,X0=typeof Blob=="function"||typeof Blob<"u"&&bd.call(Blob)==="[object BlobConstructor]",Q0=typeof File=="function"||typeof File<"u"&&bd.call(File)==="[object FileConstructor]";function Vf(o){return j0&&(o instanceof ArrayBuffer||L0(o))||X0&&o instanceof Blob||Q0&&o instanceof File}function ei(o,i){if(!o||typeof o!="object")return!1;if(Array.isArray(o)){for(let f=0,s=o.length;f=0&&o.num{delete this.acks[i];for(let B=0;B{this.io.clearTimeoutFn(E),f.apply(this,B)};R.withError=!0,this.acks[i]=R}emitWithAck(i,...f){return new Promise((s,m)=>{const E=(R,B)=>R?m(R):s(B);E.withError=!0,f.push(E),this.emit(i,...f)})}_addToQueue(i){let f;typeof i[i.length-1]=="function"&&(f=i.pop());const s={id:this._queueSeq++,tryCount:0,pending:!1,args:i,flags:Object.assign({fromQueue:!0},this.flags)};i.push((m,...E)=>s!==this._queue[0]?void 0:(m!==null?s.tryCount>this._opts.retries&&(this._queue.shift(),f&&f(m)):(this._queue.shift(),f&&f(null,...E)),s.pending=!1,this._drainQueue())),this._queue.push(s),this._drainQueue()}_drainQueue(i=!1){if(!this.connected||this._queue.length===0)return;const f=this._queue[0];f.pending&&!i||(f.pending=!0,f.tryCount++,this.flags=f.flags,this.emit.apply(this,f.args))}packet(i){i.nsp=this.nsp,this.io._packet(i)}onopen(){typeof this.auth=="function"?this.auth(i=>{this._sendConnectPacket(i)}):this._sendConnectPacket(this.auth)}_sendConnectPacket(i){this.packet({type:tt.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},i):i})}onerror(i){this.connected||this.emitReserved("connect_error",i)}onclose(i,f){this.connected=!1,delete this.id,this.emitReserved("disconnect",i,f),this._clearAcks()}_clearAcks(){Object.keys(this.acks).forEach(i=>{if(!this.sendBuffer.some(s=>String(s.id)===i)){const s=this.acks[i];delete this.acks[i],s.withError&&s.call(this,new Error("socket has been disconnected"))}})}onpacket(i){if(i.nsp===this.nsp)switch(i.type){case tt.CONNECT:i.data&&i.data.sid?this.onconnect(i.data.sid,i.data.pid):this.emitReserved("connect_error",new Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case tt.EVENT:case tt.BINARY_EVENT:this.onevent(i);break;case tt.ACK:case tt.BINARY_ACK:this.onack(i);break;case tt.DISCONNECT:this.ondisconnect();break;case tt.CONNECT_ERROR:this.destroy();const s=new Error(i.data.message);s.data=i.data.data,this.emitReserved("connect_error",s);break}}onevent(i){const f=i.data||[];i.id!=null&&f.push(this.ack(i.id)),this.connected?this.emitEvent(f):this.receiveBuffer.push(Object.freeze(f))}emitEvent(i){if(this._anyListeners&&this._anyListeners.length){const f=this._anyListeners.slice();for(const s of f)s.apply(this,i)}super.emit.apply(this,i),this._pid&&i.length&&typeof i[i.length-1]=="string"&&(this._lastOffset=i[i.length-1])}ack(i){const f=this;let s=!1;return function(...m){s||(s=!0,f.packet({type:tt.ACK,id:i,data:m}))}}onack(i){const f=this.acks[i.id];typeof f=="function"&&(delete this.acks[i.id],f.withError&&i.data.unshift(null),f.apply(this,i.data))}onconnect(i,f){this.id=i,this.recovered=f&&this._pid===f,this._pid=f,this.connected=!0,this.emitBuffered(),this.emitReserved("connect"),this._drainQueue(!0)}emitBuffered(){this.receiveBuffer.forEach(i=>this.emitEvent(i)),this.receiveBuffer=[],this.sendBuffer.forEach(i=>{this.notifyOutgoingListeners(i),this.packet(i)}),this.sendBuffer=[]}ondisconnect(){this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach(i=>i()),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&this.packet({type:tt.DISCONNECT}),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(i){return this.flags.compress=i,this}get volatile(){return this.flags.volatile=!0,this}timeout(i){return this.flags.timeout=i,this}onAny(i){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(i),this}prependAny(i){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(i),this}offAny(i){if(!this._anyListeners)return this;if(i){const f=this._anyListeners;for(let s=0;s0&&o.jitter<=1?o.jitter:0,this.attempts=0}Bn.prototype.duration=function(){var o=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var i=Math.random(),f=Math.floor(i*this.jitter*o);o=(Math.floor(i*10)&1)==0?o-f:o+f}return Math.min(o,this.max)|0};Bn.prototype.reset=function(){this.attempts=0};Bn.prototype.setMin=function(o){this.ms=o};Bn.prototype.setMax=function(o){this.max=o};Bn.prototype.setJitter=function(o){this.jitter=o};class jf extends Ot{constructor(i,f){var s;super(),this.nsps={},this.subs=[],i&&typeof i=="object"&&(f=i,i=void 0),f=f||{},f.path=f.path||"/socket.io",this.opts=f,ai(this,f),this.reconnection(f.reconnection!==!1),this.reconnectionAttempts(f.reconnectionAttempts||1/0),this.reconnectionDelay(f.reconnectionDelay||1e3),this.reconnectionDelayMax(f.reconnectionDelayMax||5e3),this.randomizationFactor((s=f.randomizationFactor)!==null&&s!==void 0?s:.5),this.backoff=new Bn({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(f.timeout==null?2e4:f.timeout),this._readyState="closed",this.uri=i;const m=f.parser||k0;this.encoder=new m.Encoder,this.decoder=new m.Decoder,this._autoConnect=f.autoConnect!==!1,this._autoConnect&&this.open()}reconnection(i){return arguments.length?(this._reconnection=!!i,i||(this.skipReconnect=!0),this):this._reconnection}reconnectionAttempts(i){return i===void 0?this._reconnectionAttempts:(this._reconnectionAttempts=i,this)}reconnectionDelay(i){var f;return i===void 0?this._reconnectionDelay:(this._reconnectionDelay=i,(f=this.backoff)===null||f===void 0||f.setMin(i),this)}randomizationFactor(i){var f;return i===void 0?this._randomizationFactor:(this._randomizationFactor=i,(f=this.backoff)===null||f===void 0||f.setJitter(i),this)}reconnectionDelayMax(i){var f;return i===void 0?this._reconnectionDelayMax:(this._reconnectionDelayMax=i,(f=this.backoff)===null||f===void 0||f.setMax(i),this)}timeout(i){return arguments.length?(this._timeout=i,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&this.backoff.attempts===0&&this.reconnect()}open(i){if(~this._readyState.indexOf("open"))return this;this.engine=new H0(this.uri,this.opts);const f=this.engine,s=this;this._readyState="opening",this.skipReconnect=!1;const m=ze(f,"open",function(){s.onopen(),i&&i()}),E=B=>{this.cleanup(),this._readyState="closed",this.emitReserved("error",B),i?i(B):this.maybeReconnectOnOpen()},R=ze(f,"error",E);if(this._timeout!==!1){const B=this._timeout,M=this.setTimeoutFn(()=>{m(),E(new Error("timeout")),f.close()},B);this.opts.autoUnref&&M.unref(),this.subs.push(()=>{this.clearTimeoutFn(M)})}return this.subs.push(m),this.subs.push(R),this}connect(i){return this.open(i)}onopen(){this.cleanup(),this._readyState="open",this.emitReserved("open");const i=this.engine;this.subs.push(ze(i,"ping",this.onping.bind(this)),ze(i,"data",this.ondata.bind(this)),ze(i,"error",this.onerror.bind(this)),ze(i,"close",this.onclose.bind(this)),ze(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(i){try{this.decoder.add(i)}catch(f){this.onclose("parse error",f)}}ondecoded(i){ni(()=>{this.emitReserved("packet",i)},this.setTimeoutFn)}onerror(i){this.emitReserved("error",i)}socket(i,f){let s=this.nsps[i];return s?this._autoConnect&&!s.active&&s.connect():(s=new _d(this,i,f),this.nsps[i]=s),s}_destroy(i){const f=Object.keys(this.nsps);for(const s of f)if(this.nsps[s].active)return;this._close()}_packet(i){const f=this.encoder.encode(i);for(let s=0;si()),this.subs.length=0,this.decoder.destroy()}_close(){this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close")}disconnect(){return this._close()}onclose(i,f){var s;this.cleanup(),(s=this.engine)===null||s===void 0||s.close(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",i,f),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;const i=this;if(this.backoff.attempts>=this._reconnectionAttempts)this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{const f=this.backoff.duration();this._reconnecting=!0;const s=this.setTimeoutFn(()=>{i.skipReconnect||(this.emitReserved("reconnect_attempt",i.backoff.attempts),!i.skipReconnect&&i.open(m=>{m?(i._reconnecting=!1,i.reconnect(),this.emitReserved("reconnect_error",m)):i.onreconnect()}))},f);this.opts.autoUnref&&s.unref(),this.subs.push(()=>{this.clearTimeoutFn(s)})}}onreconnect(){const i=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",i)}}const Ua={};function li(o,i){typeof o=="object"&&(i=o,o=void 0),i=i||{};const f=Y0(o,i.path||"/socket.io"),s=f.source,m=f.id,E=f.path,R=Ua[m]&&E in Ua[m].nsps,B=i.forceNew||i["force new connection"]||i.multiplex===!1||R;let M;return B?M=new jf(s,i):(Ua[m]||(Ua[m]=new jf(s,i)),M=Ua[m]),f.query&&!i.query&&(i.query=f.queryKey),M.socket(f.path,i)}Object.assign(li,{Manager:jf,Socket:_d,io:li,connect:li});const $0=void 0,wf=li($0,{transports:["websocket","polling"],timeout:15e3,reconnectionAttempts:5,query:{role:"user"}});wf.on("connect_error",o=>{console.error("Socket connection error:",o.message)});const Ed=Mt.createContext(wf),F0=({children:o})=>Y.jsx(Ed.Provider,{value:wf,children:o}),I0=()=>Mt.useContext(Ed),Td=Mt.createContext({connected:!1,session:null,logs:[],login:async()=>{},setRole:async()=>{},requestControl:async()=>{},releaseControl:async()=>{},subscribeAll:async()=>{}});function P0(o){return Mt.useCallback((i,f={})=>new Promise((s,m)=>{o.emit(i,f,(E={})=>{E.error?m(new Error(E.error)):s(E)})}),[o])}function tv({children:o}){const i=I0(),f=P0(i),[s,m]=Mt.useState(null),[E,R]=Mt.useState([]),[B,M]=Mt.useState(i.connected);Mt.useEffect(()=>{const x=()=>M(!0),K=()=>M(!1);return i.on("connect",x),i.on("disconnect",K),()=>{i.off("connect",x),i.off("disconnect",K)}},[i]),Mt.useEffect(()=>{function x(_t){m(_t)}function K(_t=[]){R(_t)}function Yt(_t){R(Ut=>[...Ut.slice(-199),_t])}return i.on("session:sync",x),i.on("log:init",K),i.on("log:entry",Yt),()=>{i.off("session:sync",x),i.off("log:init",K),i.off("log:entry",Yt)}},[i]);const A=Mt.useMemo(()=>({login:(x,K)=>f("auth:login",{username:x,password:K}),setRole:x=>f("session:setRole",{role:x}),requestControl:(x,K={})=>f("session:requestControl",{roverId:x,...K}),releaseControl:x=>f("session:releaseControl",{roverId:x}),subscribeAll:()=>f("session:subscribeAll")}),[f]),Q=Mt.useMemo(()=>({connected:B,session:s,logs:E,...A}),[A,B,E,s]);return Y.jsx(Td.Provider,{value:Q,children:o})}function qn(){return Mt.useContext(Td)}function ev({connected:o,role:i,mode:f}){const s=o?"bg-emerald-500/20 text-emerald-300":"bg-red-500/20 text-red-200";return Y.jsxs("div",{className:"flex flex-wrap items-center gap-3 text-sm",children:[Y.jsx("span",{className:`rounded-full px-3 py-1 font-medium ${s}`,children:o?"Connected":"Disconnected"}),Y.jsxs("span",{className:"rounded-full bg-slate-800/80 px-3 py-1 text-slate-200",children:["Role: ",i||"unknown"]}),Y.jsxs("span",{className:"rounded-full bg-slate-800/80 px-3 py-1 text-slate-200",children:["Mode: ",f||"--"]})]})}function lv(){const{logs:o}=qn();return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/70 p-4",children:[Y.jsxs("header",{className:"mb-3 flex items-center justify-between",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Server logs"}),Y.jsxs("span",{className:"text-xs uppercase tracking-[0.2em] text-slate-500",children:[o.length," entries"]})]}),Y.jsx("div",{className:"h-64 overflow-y-auto rounded-xl bg-slate-950/40 p-3 text-xs font-mono text-slate-300",children:o.length===0?Y.jsx("p",{children:"No logs yet."}):o.slice().reverse().map(i=>Y.jsxs("div",{className:"mb-2",children:[Y.jsx("span",{className:"text-slate-500",children:i.timestamp})," ",Y.jsxs("span",{className:"text-cyan-300",children:["[",i.level,"]"]})," ",i.label&&Y.jsxs("span",{className:"text-pink-300",children:["[",i.label,"]"]})," ",Y.jsx("span",{children:i.message})]},i.id))})]})}function nv(){const{session:o,requestControl:i}=qn(),f=o?.roster??[],[s,m]=Mt.useState({});async function E(R){m(B=>({...B,[R]:!0}));try{await i(R)}catch(B){alert(B.message)}finally{m(B=>({...B,[R]:!1}))}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Rovers"}),Y.jsxs("div",{className:"mt-4 space-y-3",children:[f.length===0&&Y.jsx("p",{className:"text-slate-400",children:"No rovers registered."}),f.map(R=>Y.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-3 rounded-xl bg-slate-950/40 px-4 py-3",children:[Y.jsxs("div",{children:[Y.jsx("p",{className:"text-white",children:R.name}),Y.jsxs("p",{className:"text-xs text-slate-400",children:["Locked: ",R.locked?"yes":"no"]})]}),Y.jsx("button",{type:"button",onClick:()=>E(R.id),disabled:s[R.id],className:"rounded-full bg-blue-600 px-4 py-1 text-sm font-semibold text-white disabled:opacity-50",children:s[R.id]?"Requesting…":"Request control"})]},R.id))]})]})}function av(){const{session:o,releaseControl:i}=qn(),f=o?.assignment,s=f?.roverId,[m,E]=Mt.useState(!1);async function R(){if(s){E(!0);try{await i(s)}catch(B){alert(B.message)}finally{E(!1)}}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Assignment"}),s?Y.jsxs("div",{className:"mt-4 space-y-3",children:[Y.jsxs("p",{className:"text-slate-300",children:["Currently driving rover ",s]}),Y.jsx("button",{type:"button",onClick:R,disabled:m,className:"rounded-full bg-red-600 px-4 py-1 text-sm font-semibold text-white disabled:opacity-50",children:m?"Releasing…":"Release control"})]}):Y.jsxs("div",{className:"mt-4 text-slate-400",children:[Y.jsxs("p",{children:["Status: ",f?.status??"not assigned"]}),f?.queuePosition&&Y.jsxs("p",{children:["Queue position: ",f.queuePosition]})]})]})}function uv(){const{session:o}=qn(),i=Mt.useMemo(()=>JSON.stringify(o??{},null,2),[o]);return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Session snapshot"}),Y.jsx("pre",{className:"mt-4 max-h-64 overflow-y-auto text-sm text-teal-200",children:i})]})}function iv(){const{login:o,setRole:i}=qn(),[f,s]=Mt.useState(""),[m,E]=Mt.useState(""),[R,B]=Mt.useState(!1);async function M(A){A.preventDefault(),B(!0);try{await o(f,m),s(""),E("")}catch(Q){alert(Q.message)}finally{B(!1)}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Authentication"}),Y.jsxs("form",{className:"mt-4 flex flex-col gap-3",onSubmit:M,children:[Y.jsx("input",{className:"rounded-lg border border-slate-800 bg-slate-950/60 px-3 py-2 text-white",placeholder:"Username",value:f,onChange:A=>s(A.target.value)}),Y.jsx("input",{className:"rounded-lg border border-slate-800 bg-slate-950/60 px-3 py-2 text-white",placeholder:"Password",type:"password",value:m,onChange:A=>E(A.target.value)}),Y.jsx("button",{type:"submit",disabled:R,className:"rounded-lg bg-emerald-600 py-2 font-semibold text-white disabled:opacity-50",children:R?"Logging in…":"Login as admin"})]}),Y.jsxs("div",{className:"mt-4 flex gap-3",children:[Y.jsx("button",{type:"button",onClick:()=>i("user"),className:"rounded-lg border border-slate-700 px-3 py-1 text-sm text-slate-200",children:"Driver mode"}),Y.jsx("button",{type:"button",onClick:()=>i("spectator"),className:"rounded-lg border border-slate-700 px-3 py-1 text-sm text-slate-200",children:"Spectator mode"})]})]})}function cv(){const{connected:o,session:i}=qn();return Y.jsx("div",{className:"min-h-screen bg-slate-950 text-slate-50",children:Y.jsxs("main",{className:"mx-auto flex max-w-6xl flex-col gap-6 px-6 py-10",children:[Y.jsxs("header",{className:"space-y-4",children:[Y.jsx("h1",{className:"text-4xl font-semibold text-white",children:"Multi Roomba Rover Console"}),Y.jsx(ev,{connected:o,role:i?.role,mode:i?.mode})]}),Y.jsxs("section",{className:"grid gap-6 lg:grid-cols-2",children:[Y.jsx(nv,{}),Y.jsx(av,{}),Y.jsx(iv,{}),Y.jsx(uv,{})]}),Y.jsx(lv,{})]})})}l0.createRoot(document.getElementById("root")).render(Y.jsx(Mt.StrictMode,{children:Y.jsx(F0,{children:Y.jsx(tv,{children:Y.jsx(cv,{})})})})); diff --git a/server/public/index.html b/server/public/index.html index fb1266fa..b8d06e8c 100644 --- a/server/public/index.html +++ b/server/public/index.html @@ -5,7 +5,7 @@ webui - + diff --git a/webui/src/lib/socket.js b/webui/src/lib/socket.js index 28177dec..660d9ee1 100644 --- a/webui/src/lib/socket.js +++ b/webui/src/lib/socket.js @@ -4,7 +4,9 @@ const configuredUrl = import.meta.env.VITE_ROVERD_URL?.trim(); const serverUrl = configuredUrl && configuredUrl.length > 0 ? configuredUrl : undefined; export const socket = io(serverUrl, { - transports: ['websocket'], + transports: ['websocket', 'polling'], + timeout: 15000, + reconnectionAttempts: 5, query: { role: 'user' }, }); From fc1e0268b2ab61cac40a3b92bd05c795d518d89f Mon Sep 17 00:00:00 2001 From: legop3 Date: Sat, 15 Nov 2025 04:37:12 -0500 Subject: [PATCH 06/61] guh --- .../{index-BED_cmF2.js => index-ERyMYA6S.js} | 10 +++++----- server/public/index.html | 2 +- webui/src/lib/socket.js | 18 +++++------------- 3 files changed, 11 insertions(+), 19 deletions(-) rename server/public/assets/{index-BED_cmF2.js => index-ERyMYA6S.js} (82%) diff --git a/server/public/assets/index-BED_cmF2.js b/server/public/assets/index-ERyMYA6S.js similarity index 82% rename from server/public/assets/index-BED_cmF2.js rename to server/public/assets/index-ERyMYA6S.js index 7268d877..d5e381c2 100644 --- a/server/public/assets/index-BED_cmF2.js +++ b/server/public/assets/index-ERyMYA6S.js @@ -1,9 +1,9 @@ -(function(){const i=document.createElement("link").relList;if(i&&i.supports&&i.supports("modulepreload"))return;for(const m of document.querySelectorAll('link[rel="modulepreload"]'))s(m);new MutationObserver(m=>{for(const E of m)if(E.type==="childList")for(const R of E.addedNodes)R.tagName==="LINK"&&R.rel==="modulepreload"&&s(R)}).observe(document,{childList:!0,subtree:!0});function f(m){const E={};return m.integrity&&(E.integrity=m.integrity),m.referrerPolicy&&(E.referrerPolicy=m.referrerPolicy),m.crossOrigin==="use-credentials"?E.credentials="include":m.crossOrigin==="anonymous"?E.credentials="omit":E.credentials="same-origin",E}function s(m){if(m.ep)return;m.ep=!0;const E=f(m);fetch(m.href,E)}})();var Af={exports:{}},Ra={};var kh;function Jm(){if(kh)return Ra;kh=1;var o=Symbol.for("react.transitional.element"),i=Symbol.for("react.fragment");function f(s,m,E){var R=null;if(E!==void 0&&(R=""+E),m.key!==void 0&&(R=""+m.key),"key"in m){E={};for(var B in m)B!=="key"&&(E[B]=m[B])}else E=m;return m=E.ref,{$$typeof:o,type:s,key:R,ref:m!==void 0?m:null,props:E}}return Ra.Fragment=i,Ra.jsx=f,Ra.jsxs=f,Ra}var Wh;function km(){return Wh||(Wh=1,Af.exports=Jm()),Af.exports}var Y=km(),zf={exports:{}},G={};var $h;function Wm(){if($h)return G;$h=1;var o=Symbol.for("react.transitional.element"),i=Symbol.for("react.portal"),f=Symbol.for("react.fragment"),s=Symbol.for("react.strict_mode"),m=Symbol.for("react.profiler"),E=Symbol.for("react.consumer"),R=Symbol.for("react.context"),B=Symbol.for("react.forward_ref"),M=Symbol.for("react.suspense"),A=Symbol.for("react.memo"),Q=Symbol.for("react.lazy"),x=Symbol.for("react.activity"),K=Symbol.iterator;function Yt(y){return y===null||typeof y!="object"?null:(y=K&&y[K]||y["@@iterator"],typeof y=="function"?y:null)}var _t={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},Ut=Object.assign,qe={};function It(y,N,U){this.props=y,this.context=N,this.refs=qe,this.updater=U||_t}It.prototype.isReactComponent={},It.prototype.setState=function(y,N){if(typeof y!="object"&&typeof y!="function"&&y!=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,y,N,"setState")},It.prototype.forceUpdate=function(y){this.updater.enqueueForceUpdate(this,y,"forceUpdate")};function el(){}el.prototype=It.prototype;function jt(y,N,U){this.props=y,this.context=N,this.refs=qe,this.updater=U||_t}var se=jt.prototype=new el;se.constructor=jt,Ut(se,It.prototype),se.isPureReactComponent=!0;var Oe=Array.isArray;function Gt(){}var I={H:null,A:null,T:null,S:null},Vt=Object.prototype.hasOwnProperty;function Ne(y,N,U){var q=U.ref;return{$$typeof:o,type:y,key:N,ref:q!==void 0?q:null,props:U}}function kl(y,N){return Ne(y.type,N,y.props)}function Me(y){return typeof y=="object"&&y!==null&&y.$$typeof===o}function Zt(y){var N={"=":"=0",":":"=2"};return"$"+y.replace(/[=:]/g,function(U){return N[U]})}var Ml=/\/+/g;function He(y,N){return typeof y=="object"&&y!==null&&y.key!=null?Zt(""+y.key):N.toString(36)}function _e(y){switch(y.status){case"fulfilled":return y.value;case"rejected":throw y.reason;default:switch(typeof y.status=="string"?y.then(Gt,Gt):(y.status="pending",y.then(function(N){y.status==="pending"&&(y.status="fulfilled",y.value=N)},function(N){y.status==="pending"&&(y.status="rejected",y.reason=N)})),y.status){case"fulfilled":return y.value;case"rejected":throw y.reason}}throw y}function T(y,N,U,q,V){var J=typeof y;(J==="undefined"||J==="boolean")&&(y=null);var at=!1;if(y===null)at=!0;else switch(J){case"bigint":case"string":case"number":at=!0;break;case"object":switch(y.$$typeof){case o:case i:at=!0;break;case Q:return at=y._init,T(at(y._payload),N,U,q,V)}}if(at)return V=V(y),at=q===""?"."+He(y,0):q,Oe(V)?(U="",at!=null&&(U=at.replace(Ml,"$&/")+"/"),T(V,N,U,"",function(Hn){return Hn})):V!=null&&(Me(V)&&(V=kl(V,U+(V.key==null||y&&y.key===V.key?"":(""+V.key).replace(Ml,"$&/")+"/")+at)),N.push(V)),1;at=0;var Xt=q===""?".":q+":";if(Oe(y))for(var pt=0;pt>>1,rt=T[ct];if(0>>1;ctm(U,X))qm(V,U)?(T[ct]=V,T[q]=X,ct=q):(T[ct]=U,T[N]=X,ct=N);else if(qm(V,X))T[ct]=V,T[q]=X,ct=q;else break t}}return D}function m(T,D){var X=T.sortIndex-D.sortIndex;return X!==0?X:T.id-D.id}if(o.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var E=performance;o.unstable_now=function(){return E.now()}}else{var R=Date,B=R.now();o.unstable_now=function(){return R.now()-B}}var M=[],A=[],Q=1,x=null,K=3,Yt=!1,_t=!1,Ut=!1,qe=!1,It=typeof setTimeout=="function"?setTimeout:null,el=typeof clearTimeout=="function"?clearTimeout:null,jt=typeof setImmediate<"u"?setImmediate:null;function se(T){for(var D=f(A);D!==null;){if(D.callback===null)s(A);else if(D.startTime<=T)s(A),D.sortIndex=D.expirationTime,i(M,D);else break;D=f(A)}}function Oe(T){if(Ut=!1,se(T),!_t)if(f(M)!==null)_t=!0,Gt||(Gt=!0,Zt());else{var D=f(A);D!==null&&_e(Oe,D.startTime-T)}}var Gt=!1,I=-1,Vt=5,Ne=-1;function kl(){return qe?!0:!(o.unstable_now()-NeT&&kl());){var ct=x.callback;if(typeof ct=="function"){x.callback=null,K=x.priorityLevel;var rt=ct(x.expirationTime<=T);if(T=o.unstable_now(),typeof rt=="function"){x.callback=rt,se(T),D=!0;break e}x===f(M)&&s(M),se(T)}else s(M);x=f(M)}if(x!==null)D=!0;else{var y=f(A);y!==null&&_e(Oe,y.startTime-T),D=!1}}break t}finally{x=null,K=X,Yt=!1}D=void 0}}finally{D?Zt():Gt=!1}}}var Zt;if(typeof jt=="function")Zt=function(){jt(Me)};else if(typeof MessageChannel<"u"){var Ml=new MessageChannel,He=Ml.port2;Ml.port1.onmessage=Me,Zt=function(){He.postMessage(null)}}else Zt=function(){It(Me,0)};function _e(T,D){I=It(function(){T(o.unstable_now())},D)}o.unstable_IdlePriority=5,o.unstable_ImmediatePriority=1,o.unstable_LowPriority=4,o.unstable_NormalPriority=3,o.unstable_Profiling=null,o.unstable_UserBlockingPriority=2,o.unstable_cancelCallback=function(T){T.callback=null},o.unstable_forceFrameRate=function(T){0>T||125ct?(T.sortIndex=X,i(A,T),f(M)===null&&T===f(A)&&(Ut?(el(I),I=-1):Ut=!0,_e(Oe,X-ct))):(T.sortIndex=rt,i(M,T),_t||Yt||(_t=!0,Gt||(Gt=!0,Zt()))),T},o.unstable_shouldYield=kl,o.unstable_wrapCallback=function(T){var D=K;return function(){var X=K;K=D;try{return T.apply(this,arguments)}finally{K=X}}}})(Mf)),Mf}var Ph;function Fm(){return Ph||(Ph=1,Nf.exports=$m()),Nf.exports}var Rf={exports:{}},Lt={};var td;function Im(){if(td)return Lt;td=1;var o=Lf();function i(M){var A="https://react.dev/errors/"+M;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(o)}catch(i){console.error(i)}}return o(),Rf.exports=Im(),Rf.exports}var ld;function t0(){if(ld)return Da;ld=1;var o=Fm(),i=Lf(),f=Pm();function s(t){var e="https://react.dev/errors/"+t;if(1rt||(t.current=ct[rt],ct[rt]=null,rt--)}function U(t,e){rt++,ct[rt]=t.current,t.current=e}var q=y(null),V=y(null),J=y(null),at=y(null);function Xt(t,e){switch(U(J,e),U(V,t),U(q,null),e.nodeType){case 9:case 11:t=(t=e.documentElement)&&(t=t.namespaceURI)?gh(t):0;break;default:if(t=e.tagName,e=e.namespaceURI)e=gh(e),t=ph(e,t);else switch(t){case"svg":t=1;break;case"math":t=2;break;default:t=0}}N(q),U(q,t)}function pt(){N(q),N(V),N(J)}function Hn(t){t.memoizedState!==null&&U(at,t);var e=q.current,l=ph(e,t.type);e!==l&&(U(V,t),U(q,l))}function Ca(t){V.current===t&&(N(q),N(V)),at.current===t&&(N(at),za._currentValue=X)}var ui,Kf;function Rl(t){if(ui===void 0)try{throw Error()}catch(l){var e=l.stack.trim().match(/\n( *(at )?)/);ui=e&&e[1]||"",Kf=-1{for(const E of m)if(E.type==="childList")for(const R of E.addedNodes)R.tagName==="LINK"&&R.rel==="modulepreload"&&s(R)}).observe(document,{childList:!0,subtree:!0});function f(m){const E={};return m.integrity&&(E.integrity=m.integrity),m.referrerPolicy&&(E.referrerPolicy=m.referrerPolicy),m.crossOrigin==="use-credentials"?E.credentials="include":m.crossOrigin==="anonymous"?E.credentials="omit":E.credentials="same-origin",E}function s(m){if(m.ep)return;m.ep=!0;const E=f(m);fetch(m.href,E)}})();var Af={exports:{}},Ra={};var kh;function km(){if(kh)return Ra;kh=1;var o=Symbol.for("react.transitional.element"),i=Symbol.for("react.fragment");function f(s,m,E){var R=null;if(E!==void 0&&(R=""+E),m.key!==void 0&&(R=""+m.key),"key"in m){E={};for(var B in m)B!=="key"&&(E[B]=m[B])}else E=m;return m=E.ref,{$$typeof:o,type:s,key:R,ref:m!==void 0?m:null,props:E}}return Ra.Fragment=i,Ra.jsx=f,Ra.jsxs=f,Ra}var Wh;function Wm(){return Wh||(Wh=1,Af.exports=km()),Af.exports}var Y=Wm(),zf={exports:{}},G={};var $h;function $m(){if($h)return G;$h=1;var o=Symbol.for("react.transitional.element"),i=Symbol.for("react.portal"),f=Symbol.for("react.fragment"),s=Symbol.for("react.strict_mode"),m=Symbol.for("react.profiler"),E=Symbol.for("react.consumer"),R=Symbol.for("react.context"),B=Symbol.for("react.forward_ref"),M=Symbol.for("react.suspense"),A=Symbol.for("react.memo"),Q=Symbol.for("react.lazy"),x=Symbol.for("react.activity"),K=Symbol.iterator;function Yt(y){return y===null||typeof y!="object"?null:(y=K&&y[K]||y["@@iterator"],typeof y=="function"?y:null)}var _t={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},Ut=Object.assign,qe={};function It(y,N,U){this.props=y,this.context=N,this.refs=qe,this.updater=U||_t}It.prototype.isReactComponent={},It.prototype.setState=function(y,N){if(typeof y!="object"&&typeof y!="function"&&y!=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,y,N,"setState")},It.prototype.forceUpdate=function(y){this.updater.enqueueForceUpdate(this,y,"forceUpdate")};function el(){}el.prototype=It.prototype;function jt(y,N,U){this.props=y,this.context=N,this.refs=qe,this.updater=U||_t}var se=jt.prototype=new el;se.constructor=jt,Ut(se,It.prototype),se.isPureReactComponent=!0;var Oe=Array.isArray;function Gt(){}var I={H:null,A:null,T:null,S:null},Vt=Object.prototype.hasOwnProperty;function Ne(y,N,U){var q=U.ref;return{$$typeof:o,type:y,key:N,ref:q!==void 0?q:null,props:U}}function kl(y,N){return Ne(y.type,N,y.props)}function Me(y){return typeof y=="object"&&y!==null&&y.$$typeof===o}function Zt(y){var N={"=":"=0",":":"=2"};return"$"+y.replace(/[=:]/g,function(U){return N[U]})}var Ml=/\/+/g;function He(y,N){return typeof y=="object"&&y!==null&&y.key!=null?Zt(""+y.key):N.toString(36)}function _e(y){switch(y.status){case"fulfilled":return y.value;case"rejected":throw y.reason;default:switch(typeof y.status=="string"?y.then(Gt,Gt):(y.status="pending",y.then(function(N){y.status==="pending"&&(y.status="fulfilled",y.value=N)},function(N){y.status==="pending"&&(y.status="rejected",y.reason=N)})),y.status){case"fulfilled":return y.value;case"rejected":throw y.reason}}throw y}function T(y,N,U,q,V){var J=typeof y;(J==="undefined"||J==="boolean")&&(y=null);var at=!1;if(y===null)at=!0;else switch(J){case"bigint":case"string":case"number":at=!0;break;case"object":switch(y.$$typeof){case o:case i:at=!0;break;case Q:return at=y._init,T(at(y._payload),N,U,q,V)}}if(at)return V=V(y),at=q===""?"."+He(y,0):q,Oe(V)?(U="",at!=null&&(U=at.replace(Ml,"$&/")+"/"),T(V,N,U,"",function(Hn){return Hn})):V!=null&&(Me(V)&&(V=kl(V,U+(V.key==null||y&&y.key===V.key?"":(""+V.key).replace(Ml,"$&/")+"/")+at)),N.push(V)),1;at=0;var Xt=q===""?".":q+":";if(Oe(y))for(var pt=0;pt>>1,rt=T[ct];if(0>>1;ctm(U,X))qm(V,U)?(T[ct]=V,T[q]=X,ct=q):(T[ct]=U,T[N]=X,ct=N);else if(qm(V,X))T[ct]=V,T[q]=X,ct=q;else break t}}return D}function m(T,D){var X=T.sortIndex-D.sortIndex;return X!==0?X:T.id-D.id}if(o.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var E=performance;o.unstable_now=function(){return E.now()}}else{var R=Date,B=R.now();o.unstable_now=function(){return R.now()-B}}var M=[],A=[],Q=1,x=null,K=3,Yt=!1,_t=!1,Ut=!1,qe=!1,It=typeof setTimeout=="function"?setTimeout:null,el=typeof clearTimeout=="function"?clearTimeout:null,jt=typeof setImmediate<"u"?setImmediate:null;function se(T){for(var D=f(A);D!==null;){if(D.callback===null)s(A);else if(D.startTime<=T)s(A),D.sortIndex=D.expirationTime,i(M,D);else break;D=f(A)}}function Oe(T){if(Ut=!1,se(T),!_t)if(f(M)!==null)_t=!0,Gt||(Gt=!0,Zt());else{var D=f(A);D!==null&&_e(Oe,D.startTime-T)}}var Gt=!1,I=-1,Vt=5,Ne=-1;function kl(){return qe?!0:!(o.unstable_now()-NeT&&kl());){var ct=x.callback;if(typeof ct=="function"){x.callback=null,K=x.priorityLevel;var rt=ct(x.expirationTime<=T);if(T=o.unstable_now(),typeof rt=="function"){x.callback=rt,se(T),D=!0;break e}x===f(M)&&s(M),se(T)}else s(M);x=f(M)}if(x!==null)D=!0;else{var y=f(A);y!==null&&_e(Oe,y.startTime-T),D=!1}}break t}finally{x=null,K=X,Yt=!1}D=void 0}}finally{D?Zt():Gt=!1}}}var Zt;if(typeof jt=="function")Zt=function(){jt(Me)};else if(typeof MessageChannel<"u"){var Ml=new MessageChannel,He=Ml.port2;Ml.port1.onmessage=Me,Zt=function(){He.postMessage(null)}}else Zt=function(){It(Me,0)};function _e(T,D){I=It(function(){T(o.unstable_now())},D)}o.unstable_IdlePriority=5,o.unstable_ImmediatePriority=1,o.unstable_LowPriority=4,o.unstable_NormalPriority=3,o.unstable_Profiling=null,o.unstable_UserBlockingPriority=2,o.unstable_cancelCallback=function(T){T.callback=null},o.unstable_forceFrameRate=function(T){0>T||125ct?(T.sortIndex=X,i(A,T),f(M)===null&&T===f(A)&&(Ut?(el(I),I=-1):Ut=!0,_e(Oe,X-ct))):(T.sortIndex=rt,i(M,T),_t||Yt||(_t=!0,Gt||(Gt=!0,Zt()))),T},o.unstable_shouldYield=kl,o.unstable_wrapCallback=function(T){var D=K;return function(){var X=K;K=D;try{return T.apply(this,arguments)}finally{K=X}}}})(Mf)),Mf}var Ph;function Im(){return Ph||(Ph=1,Nf.exports=Fm()),Nf.exports}var Rf={exports:{}},Lt={};var td;function Pm(){if(td)return Lt;td=1;var o=Lf();function i(M){var A="https://react.dev/errors/"+M;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(o)}catch(i){console.error(i)}}return o(),Rf.exports=Pm(),Rf.exports}var ld;function e0(){if(ld)return Da;ld=1;var o=Im(),i=Lf(),f=t0();function s(t){var e="https://react.dev/errors/"+t;if(1rt||(t.current=ct[rt],ct[rt]=null,rt--)}function U(t,e){rt++,ct[rt]=t.current,t.current=e}var q=y(null),V=y(null),J=y(null),at=y(null);function Xt(t,e){switch(U(J,e),U(V,t),U(q,null),e.nodeType){case 9:case 11:t=(t=e.documentElement)&&(t=t.namespaceURI)?gh(t):0;break;default:if(t=e.tagName,e=e.namespaceURI)e=gh(e),t=ph(e,t);else switch(t){case"svg":t=1;break;case"math":t=2;break;default:t=0}}N(q),U(q,t)}function pt(){N(q),N(V),N(J)}function Hn(t){t.memoizedState!==null&&U(at,t);var e=q.current,l=ph(e,t.type);e!==l&&(U(V,t),U(q,l))}function Ca(t){V.current===t&&(N(q),N(V)),at.current===t&&(N(at),za._currentValue=X)}var ui,Kf;function Rl(t){if(ui===void 0)try{throw Error()}catch(l){var e=l.stack.trim().match(/\n( *(at )?)/);ui=e&&e[1]||"",Kf=-1)":-1a||h[n]!==p[a]){var _=` -`+h[n].replace(" at new "," at ");return t.displayName&&_.includes("")&&(_=_.replace("",t.displayName)),_}while(1<=n&&0<=a);break}}}finally{ii=!1,Error.prepareStackTrace=l}return(l=t?t.displayName||t.name:"")?Rl(l):""}function Ad(t,e){switch(t.tag){case 26:case 27:case 5:return Rl(t.type);case 16:return Rl("Lazy");case 13:return t.child!==e&&e!==null?Rl("Suspense Fallback"):Rl("Suspense");case 19:return Rl("SuspenseList");case 0:case 15:return ci(t.type,!1);case 11:return ci(t.type.render,!1);case 1:return ci(t.type,!0);case 31:return Rl("Activity");default:return""}}function Jf(t){try{var e="",l=null;do e+=Ad(t,l),l=t,t=t.return;while(t);return e}catch(n){return` +`+h[n].replace(" at new "," at ");return t.displayName&&_.includes("")&&(_=_.replace("",t.displayName)),_}while(1<=n&&0<=a);break}}}finally{ii=!1,Error.prepareStackTrace=l}return(l=t?t.displayName||t.name:"")?Rl(l):""}function zd(t,e){switch(t.tag){case 26:case 27:case 5:return Rl(t.type);case 16:return Rl("Lazy");case 13:return t.child!==e&&e!==null?Rl("Suspense Fallback"):Rl("Suspense");case 19:return Rl("SuspenseList");case 0:case 15:return ci(t.type,!1);case 11:return ci(t.type.render,!1);case 1:return ci(t.type,!0);case 31:return Rl("Activity");default:return""}}function Jf(t){try{var e="",l=null;do e+=zd(t,l),l=t,t=t.return;while(t);return e}catch(n){return` Error generating stack: `+n.message+` -`+n.stack}}var fi=Object.prototype.hasOwnProperty,si=o.unstable_scheduleCallback,oi=o.unstable_cancelCallback,zd=o.unstable_shouldYield,Od=o.unstable_requestPaint,Pt=o.unstable_now,Nd=o.unstable_getCurrentPriorityLevel,kf=o.unstable_ImmediatePriority,Wf=o.unstable_UserBlockingPriority,Ba=o.unstable_NormalPriority,Md=o.unstable_LowPriority,$f=o.unstable_IdlePriority,Rd=o.log,Dd=o.unstable_setDisableYieldValue,Yn=null,te=null;function ll(t){if(typeof Rd=="function"&&Dd(t),te&&typeof te.setStrictMode=="function")try{te.setStrictMode(Yn,t)}catch{}}var ee=Math.clz32?Math.clz32:Cd,Ud=Math.log,xd=Math.LN2;function Cd(t){return t>>>=0,t===0?32:31-(Ud(t)/xd|0)|0}var qa=256,Ha=262144,Ya=4194304;function Dl(t){var e=t&42;if(e!==0)return e;switch(t&-t){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return t&261888;case 262144:case 524288:case 1048576:case 2097152:return t&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return t&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return t}}function ja(t,e,l){var n=t.pendingLanes;if(n===0)return 0;var a=0,u=t.suspendedLanes,c=t.pingedLanes;t=t.warmLanes;var r=n&134217727;return r!==0?(n=r&~u,n!==0?a=Dl(n):(c&=r,c!==0?a=Dl(c):l||(l=r&~t,l!==0&&(a=Dl(l))))):(r=n&~u,r!==0?a=Dl(r):c!==0?a=Dl(c):l||(l=n&~t,l!==0&&(a=Dl(l)))),a===0?0:e!==0&&e!==a&&(e&u)===0&&(u=a&-a,l=e&-e,u>=l||u===32&&(l&4194048)!==0)?e:a}function jn(t,e){return(t.pendingLanes&~(t.suspendedLanes&~t.pingedLanes)&e)===0}function Bd(t,e){switch(t){case 1:case 2:case 4:case 8:case 64:return e+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 e+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 Ff(){var t=Ya;return Ya<<=1,(Ya&62914560)===0&&(Ya=4194304),t}function ri(t){for(var e=[],l=0;31>l;l++)e.push(t);return e}function Ln(t,e){t.pendingLanes|=e,e!==268435456&&(t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0)}function qd(t,e,l,n,a,u){var c=t.pendingLanes;t.pendingLanes=l,t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0,t.expiredLanes&=l,t.entangledLanes&=l,t.errorRecoveryDisabledLanes&=l,t.shellSuspendCounter=0;var r=t.entanglements,h=t.expirationTimes,p=t.hiddenUpdates;for(l=c&~l;0"u")return null;try{return t.activeElement||t.body}catch{return t.body}}var Qd=/[\n"\\]/g;function re(t){return t.replace(Qd,function(e){return"\\"+e.charCodeAt(0).toString(16)+" "})}function gi(t,e,l,n,a,u,c,r){t.name="",c!=null&&typeof c!="function"&&typeof c!="symbol"&&typeof c!="boolean"?t.type=c:t.removeAttribute("type"),e!=null?c==="number"?(e===0&&t.value===""||t.value!=e)&&(t.value=""+oe(e)):t.value!==""+oe(e)&&(t.value=""+oe(e)):c!=="submit"&&c!=="reset"||t.removeAttribute("value"),e!=null?pi(t,c,oe(e)):l!=null?pi(t,c,oe(l)):n!=null&&t.removeAttribute("value"),a==null&&u!=null&&(t.defaultChecked=!!u),a!=null&&(t.checked=a&&typeof a!="function"&&typeof a!="symbol"),r!=null&&typeof r!="function"&&typeof r!="symbol"&&typeof r!="boolean"?t.name=""+oe(r):t.removeAttribute("name")}function os(t,e,l,n,a,u,c,r){if(u!=null&&typeof u!="function"&&typeof u!="symbol"&&typeof u!="boolean"&&(t.type=u),e!=null||l!=null){if(!(u!=="submit"&&u!=="reset"||e!=null)){vi(t);return}l=l!=null?""+oe(l):"",e=e!=null?""+oe(e):l,r||e===t.value||(t.value=e),t.defaultValue=e}n=n??a,n=typeof n!="function"&&typeof n!="symbol"&&!!n,t.checked=r?t.checked:!!n,t.defaultChecked=!!n,c!=null&&typeof c!="function"&&typeof c!="symbol"&&typeof c!="boolean"&&(t.name=c),vi(t)}function pi(t,e,l){e==="number"&&Qa(t.ownerDocument)===t||t.defaultValue===""+l||(t.defaultValue=""+l)}function tn(t,e,l,n){if(t=t.options,e){e={};for(var a=0;a"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Ti=!1;if(Le)try{var Vn={};Object.defineProperty(Vn,"passive",{get:function(){Ti=!0}}),window.addEventListener("test",Vn,Vn),window.removeEventListener("test",Vn,Vn)}catch{Ti=!1}var al=null,Ai=null,Va=null;function gs(){if(Va)return Va;var t,e=Ai,l=e.length,n,a="value"in al?al.value:al.textContent,u=a.length;for(t=0;t=Kn),Ts=" ",As=!1;function zs(t,e){switch(t){case"keyup":return my.indexOf(e.keyCode)!==-1;case"keydown":return e.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Os(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var an=!1;function gy(t,e){switch(t){case"compositionend":return Os(e);case"keypress":return e.which!==32?null:(As=!0,Ts);case"textInput":return t=e.data,t===Ts&&As?null:t;default:return null}}function py(t,e){if(an)return t==="compositionend"||!Ri&&zs(t,e)?(t=gs(),Va=Ai=al=null,an=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(e.ctrlKey||e.altKey||e.metaKey)||e.ctrlKey&&e.altKey){if(e.char&&1=e)return{node:l,offset:e-t};t=n}t:{for(;l;){if(l.nextSibling){l=l.nextSibling;break t}l=l.parentNode}l=void 0}l=Bs(l)}}function Hs(t,e){return t&&e?t===e?!0:t&&t.nodeType===3?!1:e&&e.nodeType===3?Hs(t,e.parentNode):"contains"in t?t.contains(e):t.compareDocumentPosition?!!(t.compareDocumentPosition(e)&16):!1:!1}function Ys(t){t=t!=null&&t.ownerDocument!=null&&t.ownerDocument.defaultView!=null?t.ownerDocument.defaultView:window;for(var e=Qa(t.document);e instanceof t.HTMLIFrameElement;){try{var l=typeof e.contentWindow.location.href=="string"}catch{l=!1}if(l)t=e.contentWindow;else break;e=Qa(t.document)}return e}function xi(t){var e=t&&t.nodeName&&t.nodeName.toLowerCase();return e&&(e==="input"&&(t.type==="text"||t.type==="search"||t.type==="tel"||t.type==="url"||t.type==="password")||e==="textarea"||t.contentEditable==="true")}var Oy=Le&&"documentMode"in document&&11>=document.documentMode,un=null,Ci=null,$n=null,Bi=!1;function js(t,e,l){var n=l.window===l?l.document:l.nodeType===9?l:l.ownerDocument;Bi||un==null||un!==Qa(n)||(n=un,"selectionStart"in n&&xi(n)?n={start:n.selectionStart,end:n.selectionEnd}:(n=(n.ownerDocument&&n.ownerDocument.defaultView||window).getSelection(),n={anchorNode:n.anchorNode,anchorOffset:n.anchorOffset,focusNode:n.focusNode,focusOffset:n.focusOffset}),$n&&Wn($n,n)||($n=n,n=Hu(Ci,"onSelect"),0>=c,a-=c,Re=1<<32-ee(e)+a|l<w?(F=H,H=null):F=H.sibling;var lt=S(v,H,g[w],z);if(lt===null){H===null&&(H=F);break}t&&H&<.alternate===null&&e(v,H),d=u(lt,d,w),et===null?j=lt:et.sibling=lt,et=lt,H=F}if(w===g.length)return l(v,H),P&&Qe(v,w),j;if(H===null){for(;ww?(F=H,H=null):F=H.sibling;var Ol=S(v,H,lt.value,z);if(Ol===null){H===null&&(H=F);break}t&&H&&Ol.alternate===null&&e(v,H),d=u(Ol,d,w),et===null?j=Ol:et.sibling=Ol,et=Ol,H=F}if(lt.done)return l(v,H),P&&Qe(v,w),j;if(H===null){for(;!lt.done;w++,lt=g.next())lt=O(v,lt.value,z),lt!==null&&(d=u(lt,d,w),et===null?j=lt:et.sibling=lt,et=lt);return P&&Qe(v,w),j}for(H=n(H);!lt.done;w++,lt=g.next())lt=b(H,v,w,lt.value,z),lt!==null&&(t&<.alternate!==null&&H.delete(lt.key===null?w:lt.key),d=u(lt,d,w),et===null?j=lt:et.sibling=lt,et=lt);return t&&H.forEach(function(Km){return e(v,Km)}),P&&Qe(v,w),j}function ot(v,d,g,z){if(typeof g=="object"&&g!==null&&g.type===Ut&&g.key===null&&(g=g.props.children),typeof g=="object"&&g!==null){switch(g.$$typeof){case Yt:t:{for(var j=g.key;d!==null;){if(d.key===j){if(j=g.type,j===Ut){if(d.tag===7){l(v,d.sibling),z=a(d,g.props.children),z.return=v,v=z;break t}}else if(d.elementType===j||typeof j=="object"&&j!==null&&j.$$typeof===Vt&&Ql(j)===d.type){l(v,d.sibling),z=a(d,g.props),la(z,g),z.return=v,v=z;break t}l(v,d);break}else e(v,d);d=d.sibling}g.type===Ut?(z=Hl(g.props.children,v.mode,z,g.key),z.return=v,v=z):(z=Pa(g.type,g.key,g.props,null,v.mode,z),la(z,g),z.return=v,v=z)}return c(v);case _t:t:{for(j=g.key;d!==null;){if(d.key===j)if(d.tag===4&&d.stateNode.containerInfo===g.containerInfo&&d.stateNode.implementation===g.implementation){l(v,d.sibling),z=a(d,g.children||[]),z.return=v,v=z;break t}else{l(v,d);break}else e(v,d);d=d.sibling}z=Qi(g,v.mode,z),z.return=v,v=z}return c(v);case Vt:return g=Ql(g),ot(v,d,g,z)}if(_e(g))return C(v,d,g,z);if(Zt(g)){if(j=Zt(g),typeof j!="function")throw Error(s(150));return g=j.call(g),L(v,d,g,z)}if(typeof g.then=="function")return ot(v,d,iu(g),z);if(g.$$typeof===jt)return ot(v,d,lu(v,g),z);cu(v,g)}return typeof g=="string"&&g!==""||typeof g=="number"||typeof g=="bigint"?(g=""+g,d!==null&&d.tag===6?(l(v,d.sibling),z=a(d,g),z.return=v,v=z):(l(v,d),z=Xi(g,v.mode,z),z.return=v,v=z),c(v)):l(v,d)}return function(v,d,g,z){try{ea=0;var j=ot(v,d,g,z);return gn=null,j}catch(H){if(H===vn||H===au)throw H;var et=ne(29,H,null,v.mode);return et.lanes=z,et.return=v,et}finally{}}}var Vl=co(!0),fo=co(!1),sl=!1;function Pi(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function tc(t,e){t=t.updateQueue,e.updateQueue===t&&(e.updateQueue={baseState:t.baseState,firstBaseUpdate:t.firstBaseUpdate,lastBaseUpdate:t.lastBaseUpdate,shared:t.shared,callbacks:null})}function ol(t){return{lane:t,tag:0,payload:null,callback:null,next:null}}function rl(t,e,l){var n=t.updateQueue;if(n===null)return null;if(n=n.shared,(nt&2)!==0){var a=n.pending;return a===null?e.next=e:(e.next=a.next,a.next=e),n.pending=e,e=Ia(t),ws(t,null,l),e}return Fa(t,n,e,l),Ia(t)}function na(t,e,l){if(e=e.updateQueue,e!==null&&(e=e.shared,(l&4194048)!==0)){var n=e.lanes;n&=t.pendingLanes,l|=n,e.lanes=l,Pf(t,l)}}function ec(t,e){var l=t.updateQueue,n=t.alternate;if(n!==null&&(n=n.updateQueue,l===n)){var a=null,u=null;if(l=l.firstBaseUpdate,l!==null){do{var c={lane:l.lane,tag:l.tag,payload:l.payload,callback:null,next:null};u===null?a=u=c:u=u.next=c,l=l.next}while(l!==null);u===null?a=u=e:u=u.next=e}else a=u=e;l={baseState:n.baseState,firstBaseUpdate:a,lastBaseUpdate:u,shared:n.shared,callbacks:n.callbacks},t.updateQueue=l;return}t=l.lastBaseUpdate,t===null?l.firstBaseUpdate=e:t.next=e,l.lastBaseUpdate=e}var lc=!1;function aa(){if(lc){var t=mn;if(t!==null)throw t}}function ua(t,e,l,n){lc=!1;var a=t.updateQueue;sl=!1;var u=a.firstBaseUpdate,c=a.lastBaseUpdate,r=a.shared.pending;if(r!==null){a.shared.pending=null;var h=r,p=h.next;h.next=null,c===null?u=p:c.next=p,c=h;var _=t.alternate;_!==null&&(_=_.updateQueue,r=_.lastBaseUpdate,r!==c&&(r===null?_.firstBaseUpdate=p:r.next=p,_.lastBaseUpdate=h))}if(u!==null){var O=a.baseState;c=0,_=p=h=null,r=u;do{var S=r.lane&-536870913,b=S!==r.lane;if(b?($&S)===S:(n&S)===S){S!==0&&S===yn&&(lc=!0),_!==null&&(_=_.next={lane:0,tag:r.tag,payload:r.payload,callback:null,next:null});t:{var C=t,L=r;S=e;var ot=l;switch(L.tag){case 1:if(C=L.payload,typeof C=="function"){O=C.call(ot,O,S);break t}O=C;break t;case 3:C.flags=C.flags&-65537|128;case 0:if(C=L.payload,S=typeof C=="function"?C.call(ot,O,S):C,S==null)break t;O=x({},O,S);break t;case 2:sl=!0}}S=r.callback,S!==null&&(t.flags|=64,b&&(t.flags|=8192),b=a.callbacks,b===null?a.callbacks=[S]:b.push(S))}else b={lane:S,tag:r.tag,payload:r.payload,callback:r.callback,next:null},_===null?(p=_=b,h=O):_=_.next=b,c|=S;if(r=r.next,r===null){if(r=a.shared.pending,r===null)break;b=r,r=b.next,b.next=null,a.lastBaseUpdate=b,a.shared.pending=null}}while(!0);_===null&&(h=O),a.baseState=h,a.firstBaseUpdate=p,a.lastBaseUpdate=_,u===null&&(a.shared.lanes=0),vl|=c,t.lanes=c,t.memoizedState=O}}function so(t,e){if(typeof t!="function")throw Error(s(191,t));t.call(e)}function oo(t,e){var l=t.callbacks;if(l!==null)for(t.callbacks=null,t=0;tu?u:8;var c=T.T,r={};T.T=r,_c(t,!1,e,l);try{var h=a(),p=T.S;if(p!==null&&p(r,h),h!==null&&typeof h=="object"&&typeof h.then=="function"){var _=qy(h,n);fa(t,e,_,fe(t))}else fa(t,e,n,fe(t))}catch(O){fa(t,e,{then:function(){},status:"rejected",reason:O},fe())}finally{D.p=u,c!==null&&r.types!==null&&(c.types=r.types),T.T=c}}function Qy(){}function Sc(t,e,l,n){if(t.tag!==5)throw Error(s(476));var a=Vo(t).queue;Go(t,a,e,X,l===null?Qy:function(){return Zo(t),l(n)})}function Vo(t){var e=t.memoizedState;if(e!==null)return e;e={memoizedState:X,baseState:X,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:we,lastRenderedState:X},next:null};var l={};return e.next={memoizedState:l,baseState:l,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:we,lastRenderedState:l},next:null},t.memoizedState=e,t=t.alternate,t!==null&&(t.memoizedState=e),e}function Zo(t){var e=Vo(t);e.next===null&&(e=t.alternate.memoizedState),fa(t,e.next.queue,{},fe())}function bc(){return Bt(za)}function wo(){return bt().memoizedState}function Ko(){return bt().memoizedState}function Gy(t){for(var e=t.return;e!==null;){switch(e.tag){case 24:case 3:var l=fe();t=ol(l);var n=rl(e,t,l);n!==null&&(Ft(n,e,l),na(n,e,l)),e={cache:Wi()},t.payload=e;return}e=e.return}}function Vy(t,e,l){var n=fe();l={lane:n,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},gu(t)?ko(e,l):(l=ji(t,e,l,n),l!==null&&(Ft(l,t,n),Wo(l,e,n)))}function Jo(t,e,l){var n=fe();fa(t,e,l,n)}function fa(t,e,l,n){var a={lane:n,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null};if(gu(t))ko(e,a);else{var u=t.alternate;if(t.lanes===0&&(u===null||u.lanes===0)&&(u=e.lastRenderedReducer,u!==null))try{var c=e.lastRenderedState,r=u(c,l);if(a.hasEagerState=!0,a.eagerState=r,le(r,c))return Fa(t,e,a,0),ht===null&&$a(),!1}catch{}finally{}if(l=ji(t,e,a,n),l!==null)return Ft(l,t,n),Wo(l,e,n),!0}return!1}function _c(t,e,l,n){if(n={lane:2,revertLane:Pc(),gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},gu(t)){if(e)throw Error(s(479))}else e=ji(t,l,n,2),e!==null&&Ft(e,t,2)}function gu(t){var e=t.alternate;return t===Z||e!==null&&e===Z}function ko(t,e){Sn=ou=!0;var l=t.pending;l===null?e.next=e:(e.next=l.next,l.next=e),t.pending=e}function Wo(t,e,l){if((l&4194048)!==0){var n=e.lanes;n&=t.pendingLanes,l|=n,e.lanes=l,Pf(t,l)}}var sa={readContext:Bt,use:du,useCallback:vt,useContext:vt,useEffect:vt,useImperativeHandle:vt,useLayoutEffect:vt,useInsertionEffect:vt,useMemo:vt,useReducer:vt,useRef:vt,useState:vt,useDebugValue:vt,useDeferredValue:vt,useTransition:vt,useSyncExternalStore:vt,useId:vt,useHostTransitionStatus:vt,useFormState:vt,useActionState:vt,useOptimistic:vt,useMemoCache:vt,useCacheRefresh:vt};sa.useEffectEvent=vt;var $o={readContext:Bt,use:du,useCallback:function(t,e){return Qt().memoizedState=[t,e===void 0?null:e],t},useContext:Bt,useEffect:Co,useImperativeHandle:function(t,e,l){l=l!=null?l.concat([t]):null,mu(4194308,4,Yo.bind(null,e,t),l)},useLayoutEffect:function(t,e){return mu(4194308,4,t,e)},useInsertionEffect:function(t,e){mu(4,2,t,e)},useMemo:function(t,e){var l=Qt();e=e===void 0?null:e;var n=t();if(Zl){ll(!0);try{t()}finally{ll(!1)}}return l.memoizedState=[n,e],n},useReducer:function(t,e,l){var n=Qt();if(l!==void 0){var a=l(e);if(Zl){ll(!0);try{l(e)}finally{ll(!1)}}}else a=e;return n.memoizedState=n.baseState=a,t={pending:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:a},n.queue=t,t=t.dispatch=Vy.bind(null,Z,t),[n.memoizedState,t]},useRef:function(t){var e=Qt();return t={current:t},e.memoizedState=t},useState:function(t){t=yc(t);var e=t.queue,l=Jo.bind(null,Z,e);return e.dispatch=l,[t.memoizedState,l]},useDebugValue:gc,useDeferredValue:function(t,e){var l=Qt();return pc(l,t,e)},useTransition:function(){var t=yc(!1);return t=Go.bind(null,Z,t.queue,!0,!1),Qt().memoizedState=t,[!1,t]},useSyncExternalStore:function(t,e,l){var n=Z,a=Qt();if(P){if(l===void 0)throw Error(s(407));l=l()}else{if(l=e(),ht===null)throw Error(s(349));($&127)!==0||go(n,e,l)}a.memoizedState=l;var u={value:l,getSnapshot:e};return a.queue=u,Co(So.bind(null,n,u,t),[t]),n.flags|=2048,_n(9,{destroy:void 0},po.bind(null,n,u,l,e),null),l},useId:function(){var t=Qt(),e=ht.identifierPrefix;if(P){var l=De,n=Re;l=(n&~(1<<32-ee(n)-1)).toString(32)+l,e="_"+e+"R_"+l,l=ru++,0<\/script>",u=u.removeChild(u.firstChild);break;case"select":u=typeof n.is=="string"?c.createElement("select",{is:n.is}):c.createElement("select"),n.multiple?u.multiple=!0:n.size&&(u.size=n.size);break;default:u=typeof n.is=="string"?c.createElement(a,{is:n.is}):c.createElement(a)}}u[xt]=e,u[wt]=n;t:for(c=e.child;c!==null;){if(c.tag===5||c.tag===6)u.appendChild(c.stateNode);else if(c.tag!==4&&c.tag!==27&&c.child!==null){c.child.return=c,c=c.child;continue}if(c===e)break t;for(;c.sibling===null;){if(c.return===null||c.return===e)break t;c=c.return}c.sibling.return=c.return,c=c.sibling}e.stateNode=u;t:switch(Ht(u,a,n),a){case"button":case"input":case"select":case"textarea":n=!!n.autoFocus;break t;case"img":n=!0;break t;default:n=!1}n&&Je(e)}}return yt(e),qc(e,e.type,t===null?null:t.memoizedProps,e.pendingProps,l),null;case 6:if(t&&e.stateNode!=null)t.memoizedProps!==n&&Je(e);else{if(typeof n!="string"&&e.stateNode===null)throw Error(s(166));if(t=J.current,hn(e)){if(t=e.stateNode,l=e.memoizedProps,n=null,a=Ct,a!==null)switch(a.tag){case 27:case 5:n=a.memoizedProps}t[xt]=e,t=!!(t.nodeValue===l||n!==null&&n.suppressHydrationWarning===!0||mh(t.nodeValue,l)),t||cl(e,!0)}else t=Yu(t).createTextNode(n),t[xt]=e,e.stateNode=t}return yt(e),null;case 31:if(l=e.memoizedState,t===null||t.memoizedState!==null){if(n=hn(e),l!==null){if(t===null){if(!n)throw Error(s(318));if(t=e.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(s(557));t[xt]=e}else Yl(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;yt(e),t=!1}else l=wi(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=l),t=!0;if(!t)return e.flags&256?(ue(e),e):(ue(e),null);if((e.flags&128)!==0)throw Error(s(558))}return yt(e),null;case 13:if(n=e.memoizedState,t===null||t.memoizedState!==null&&t.memoizedState.dehydrated!==null){if(a=hn(e),n!==null&&n.dehydrated!==null){if(t===null){if(!a)throw Error(s(318));if(a=e.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(s(317));a[xt]=e}else Yl(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;yt(e),a=!1}else a=wi(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=a),a=!0;if(!a)return e.flags&256?(ue(e),e):(ue(e),null)}return ue(e),(e.flags&128)!==0?(e.lanes=l,e):(l=n!==null,t=t!==null&&t.memoizedState!==null,l&&(n=e.child,a=null,n.alternate!==null&&n.alternate.memoizedState!==null&&n.alternate.memoizedState.cachePool!==null&&(a=n.alternate.memoizedState.cachePool.pool),u=null,n.memoizedState!==null&&n.memoizedState.cachePool!==null&&(u=n.memoizedState.cachePool.pool),u!==a&&(n.flags|=2048)),l!==t&&l&&(e.child.flags|=8192),Eu(e,e.updateQueue),yt(e),null);case 4:return pt(),t===null&&nf(e.stateNode.containerInfo),yt(e),null;case 10:return Ve(e.type),yt(e),null;case 19:if(N(St),n=e.memoizedState,n===null)return yt(e),null;if(a=(e.flags&128)!==0,u=n.rendering,u===null)if(a)ra(n,!1);else{if(gt!==0||t!==null&&(t.flags&128)!==0)for(t=e.child;t!==null;){if(u=su(t),u!==null){for(e.flags|=128,ra(n,!1),t=u.updateQueue,e.updateQueue=t,Eu(e,t),e.subtreeFlags=0,t=l,l=e.child;l!==null;)Ks(l,t),l=l.sibling;return U(St,St.current&1|2),P&&Qe(e,n.treeForkCount),e.child}t=t.sibling}n.tail!==null&&Pt()>Nu&&(e.flags|=128,a=!0,ra(n,!1),e.lanes=4194304)}else{if(!a)if(t=su(u),t!==null){if(e.flags|=128,a=!0,t=t.updateQueue,e.updateQueue=t,Eu(e,t),ra(n,!0),n.tail===null&&n.tailMode==="hidden"&&!u.alternate&&!P)return yt(e),null}else 2*Pt()-n.renderingStartTime>Nu&&l!==536870912&&(e.flags|=128,a=!0,ra(n,!1),e.lanes=4194304);n.isBackwards?(u.sibling=e.child,e.child=u):(t=n.last,t!==null?t.sibling=u:e.child=u,n.last=u)}return n.tail!==null?(t=n.tail,n.rendering=t,n.tail=t.sibling,n.renderingStartTime=Pt(),t.sibling=null,l=St.current,U(St,a?l&1|2:l&1),P&&Qe(e,n.treeForkCount),t):(yt(e),null);case 22:case 23:return ue(e),ac(),n=e.memoizedState!==null,t!==null?t.memoizedState!==null!==n&&(e.flags|=8192):n&&(e.flags|=8192),n?(l&536870912)!==0&&(e.flags&128)===0&&(yt(e),e.subtreeFlags&6&&(e.flags|=8192)):yt(e),l=e.updateQueue,l!==null&&Eu(e,l.retryQueue),l=null,t!==null&&t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(l=t.memoizedState.cachePool.pool),n=null,e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),n!==l&&(e.flags|=2048),t!==null&&N(Xl),null;case 24:return l=null,t!==null&&(l=t.memoizedState.cache),e.memoizedState.cache!==l&&(e.flags|=2048),Ve(Et),yt(e),null;case 25:return null;case 30:return null}throw Error(s(156,e.tag))}function ky(t,e){switch(Vi(e),e.tag){case 1:return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 3:return Ve(Et),pt(),t=e.flags,(t&65536)!==0&&(t&128)===0?(e.flags=t&-65537|128,e):null;case 26:case 27:case 5:return Ca(e),null;case 31:if(e.memoizedState!==null){if(ue(e),e.alternate===null)throw Error(s(340));Yl()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 13:if(ue(e),t=e.memoizedState,t!==null&&t.dehydrated!==null){if(e.alternate===null)throw Error(s(340));Yl()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 19:return N(St),null;case 4:return pt(),null;case 10:return Ve(e.type),null;case 22:case 23:return ue(e),ac(),t!==null&&N(Xl),t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 24:return Ve(Et),null;case 25:return null;default:return null}}function br(t,e){switch(Vi(e),e.tag){case 3:Ve(Et),pt();break;case 26:case 27:case 5:Ca(e);break;case 4:pt();break;case 31:e.memoizedState!==null&&ue(e);break;case 13:ue(e);break;case 19:N(St);break;case 10:Ve(e.type);break;case 22:case 23:ue(e),ac(),t!==null&&N(Xl);break;case 24:Ve(Et)}}function ha(t,e){try{var l=e.updateQueue,n=l!==null?l.lastEffect:null;if(n!==null){var a=n.next;l=a;do{if((l.tag&t)===t){n=void 0;var u=l.create,c=l.inst;n=u(),c.destroy=n}l=l.next}while(l!==a)}}catch(r){it(e,e.return,r)}}function yl(t,e,l){try{var n=e.updateQueue,a=n!==null?n.lastEffect:null;if(a!==null){var u=a.next;n=u;do{if((n.tag&t)===t){var c=n.inst,r=c.destroy;if(r!==void 0){c.destroy=void 0,a=e;var h=l,p=r;try{p()}catch(_){it(a,h,_)}}}n=n.next}while(n!==u)}}catch(_){it(e,e.return,_)}}function _r(t){var e=t.updateQueue;if(e!==null){var l=t.stateNode;try{oo(e,l)}catch(n){it(t,t.return,n)}}}function Er(t,e,l){l.props=wl(t.type,t.memoizedProps),l.state=t.memoizedState;try{l.componentWillUnmount()}catch(n){it(t,e,n)}}function da(t,e){try{var l=t.ref;if(l!==null){switch(t.tag){case 26:case 27:case 5:var n=t.stateNode;break;case 30:n=t.stateNode;break;default:n=t.stateNode}typeof l=="function"?t.refCleanup=l(n):l.current=n}}catch(a){it(t,e,a)}}function Ue(t,e){var l=t.ref,n=t.refCleanup;if(l!==null)if(typeof n=="function")try{n()}catch(a){it(t,e,a)}finally{t.refCleanup=null,t=t.alternate,t!=null&&(t.refCleanup=null)}else if(typeof l=="function")try{l(null)}catch(a){it(t,e,a)}else l.current=null}function Tr(t){var e=t.type,l=t.memoizedProps,n=t.stateNode;try{t:switch(e){case"button":case"input":case"select":case"textarea":l.autoFocus&&n.focus();break t;case"img":l.src?n.src=l.src:l.srcSet&&(n.srcset=l.srcSet)}}catch(a){it(t,t.return,a)}}function Hc(t,e,l){try{var n=t.stateNode;vm(n,t.type,l,e),n[wt]=e}catch(a){it(t,t.return,a)}}function Ar(t){return t.tag===5||t.tag===3||t.tag===26||t.tag===27&&_l(t.type)||t.tag===4}function Yc(t){t:for(;;){for(;t.sibling===null;){if(t.return===null||Ar(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.tag===27&&_l(t.type)||t.flags&2||t.child===null||t.tag===4)continue t;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function jc(t,e,l){var n=t.tag;if(n===5||n===6)t=t.stateNode,e?(l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l).insertBefore(t,e):(e=l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l,e.appendChild(t),l=l._reactRootContainer,l!=null||e.onclick!==null||(e.onclick=je));else if(n!==4&&(n===27&&_l(t.type)&&(l=t.stateNode,e=null),t=t.child,t!==null))for(jc(t,e,l),t=t.sibling;t!==null;)jc(t,e,l),t=t.sibling}function Tu(t,e,l){var n=t.tag;if(n===5||n===6)t=t.stateNode,e?l.insertBefore(t,e):l.appendChild(t);else if(n!==4&&(n===27&&_l(t.type)&&(l=t.stateNode),t=t.child,t!==null))for(Tu(t,e,l),t=t.sibling;t!==null;)Tu(t,e,l),t=t.sibling}function zr(t){var e=t.stateNode,l=t.memoizedProps;try{for(var n=t.type,a=e.attributes;a.length;)e.removeAttributeNode(a[0]);Ht(e,n,l),e[xt]=t,e[wt]=l}catch(u){it(t,t.return,u)}}var ke=!1,zt=!1,Lc=!1,Or=typeof WeakSet=="function"?WeakSet:Set,Dt=null;function Wy(t,e){if(t=t.containerInfo,cf=Zu,t=Ys(t),xi(t)){if("selectionStart"in t)var l={start:t.selectionStart,end:t.selectionEnd};else t:{l=(l=t.ownerDocument)&&l.defaultView||window;var n=l.getSelection&&l.getSelection();if(n&&n.rangeCount!==0){l=n.anchorNode;var a=n.anchorOffset,u=n.focusNode;n=n.focusOffset;try{l.nodeType,u.nodeType}catch{l=null;break t}var c=0,r=-1,h=-1,p=0,_=0,O=t,S=null;e:for(;;){for(var b;O!==l||a!==0&&O.nodeType!==3||(r=c+a),O!==u||n!==0&&O.nodeType!==3||(h=c+n),O.nodeType===3&&(c+=O.nodeValue.length),(b=O.firstChild)!==null;)S=O,O=b;for(;;){if(O===t)break e;if(S===l&&++p===a&&(r=c),S===u&&++_===n&&(h=c),(b=O.nextSibling)!==null)break;O=S,S=O.parentNode}O=b}l=r===-1||h===-1?null:{start:r,end:h}}else l=null}l=l||{start:0,end:0}}else l=null;for(ff={focusedElem:t,selectionRange:l},Zu=!1,Dt=e;Dt!==null;)if(e=Dt,t=e.child,(e.subtreeFlags&1028)!==0&&t!==null)t.return=e,Dt=t;else for(;Dt!==null;){switch(e=Dt,u=e.alternate,t=e.flags,e.tag){case 0:if((t&4)!==0&&(t=e.updateQueue,t=t!==null?t.events:null,t!==null))for(l=0;l title"))),Ht(u,n,l),u[xt]=t,Rt(u),n=u;break t;case"link":var c=xh("link","href",a).get(n+(l.href||""));if(c){for(var r=0;rot&&(c=ot,ot=L,L=c);var v=qs(r,L),d=qs(r,ot);if(v&&d&&(b.rangeCount!==1||b.anchorNode!==v.node||b.anchorOffset!==v.offset||b.focusNode!==d.node||b.focusOffset!==d.offset)){var g=O.createRange();g.setStart(v.node,v.offset),b.removeAllRanges(),L>ot?(b.addRange(g),b.extend(d.node,d.offset)):(g.setEnd(d.node,d.offset),b.addRange(g))}}}}for(O=[],b=r;b=b.parentNode;)b.nodeType===1&&O.push({element:b,left:b.scrollLeft,top:b.scrollTop});for(typeof r.focus=="function"&&r.focus(),r=0;rl?32:l,T.T=null,l=Kc,Kc=null;var u=pl,c=Pe;if(Nt=0,On=pl=null,Pe=0,(nt&6)!==0)throw Error(s(331));var r=nt;if(nt|=4,Yr(u.current),Br(u,u.current,c,l),nt=r,Sa(0,!1),te&&typeof te.onPostCommitFiberRoot=="function")try{te.onPostCommitFiberRoot(Yn,u)}catch{}return!0}finally{D.p=a,T.T=n,eh(t,e)}}function nh(t,e,l){e=de(l,e),e=zc(t.stateNode,e,2),t=rl(t,e,2),t!==null&&(Ln(t,2),xe(t))}function it(t,e,l){if(t.tag===3)nh(t,t,l);else for(;e!==null;){if(e.tag===3){nh(e,t,l);break}else if(e.tag===1){var n=e.stateNode;if(typeof e.type.getDerivedStateFromError=="function"||typeof n.componentDidCatch=="function"&&(gl===null||!gl.has(n))){t=de(l,t),l=ar(2),n=rl(e,l,2),n!==null&&(ur(l,n,e,t),Ln(n,2),xe(n));break}}e=e.return}}function $c(t,e,l){var n=t.pingCache;if(n===null){n=t.pingCache=new Iy;var a=new Set;n.set(e,a)}else a=n.get(e),a===void 0&&(a=new Set,n.set(e,a));a.has(l)||(Gc=!0,a.add(l),t=nm.bind(null,t,e,l),e.then(t,t))}function nm(t,e,l){var n=t.pingCache;n!==null&&n.delete(e),t.pingedLanes|=t.suspendedLanes&l,t.warmLanes&=~l,ht===t&&($&l)===l&&(gt===4||gt===3&&($&62914560)===$&&300>Pt()-Ou?(nt&2)===0&&Nn(t,0):Vc|=l,zn===$&&(zn=0)),xe(t)}function ah(t,e){e===0&&(e=Ff()),t=ql(t,e),t!==null&&(Ln(t,e),xe(t))}function am(t){var e=t.memoizedState,l=0;e!==null&&(l=e.retryLane),ah(t,l)}function um(t,e){var l=0;switch(t.tag){case 31:case 13:var n=t.stateNode,a=t.memoizedState;a!==null&&(l=a.retryLane);break;case 19:n=t.stateNode;break;case 22:n=t.stateNode._retryCache;break;default:throw Error(s(314))}n!==null&&n.delete(e),ah(t,l)}function im(t,e){return si(t,e)}var Cu=null,Rn=null,Fc=!1,Bu=!1,Ic=!1,bl=0;function xe(t){t!==Rn&&t.next===null&&(Rn===null?Cu=Rn=t:Rn=Rn.next=t),Bu=!0,Fc||(Fc=!0,fm())}function Sa(t,e){if(!Ic&&Bu){Ic=!0;do for(var l=!1,n=Cu;n!==null;){if(t!==0){var a=n.pendingLanes;if(a===0)var u=0;else{var c=n.suspendedLanes,r=n.pingedLanes;u=(1<<31-ee(42|t)+1)-1,u&=a&~(c&~r),u=u&201326741?u&201326741|1:u?u|2:0}u!==0&&(l=!0,fh(n,u))}else u=$,u=ja(n,n===ht?u:0,n.cancelPendingCommit!==null||n.timeoutHandle!==-1),(u&3)===0||jn(n,u)||(l=!0,fh(n,u));n=n.next}while(l);Ic=!1}}function cm(){uh()}function uh(){Bu=Fc=!1;var t=0;bl!==0&&pm()&&(t=bl);for(var e=Pt(),l=null,n=Cu;n!==null;){var a=n.next,u=ih(n,e);u===0?(n.next=null,l===null?Cu=a:l.next=a,a===null&&(Rn=l)):(l=n,(t!==0||(u&3)!==0)&&(Bu=!0)),n=a}Nt!==0&&Nt!==5||Sa(t),bl!==0&&(bl=0)}function ih(t,e){for(var l=t.suspendedLanes,n=t.pingedLanes,a=t.expirationTimes,u=t.pendingLanes&-62914561;0r)break;var _=h.transferSize,O=h.initiatorType;_&&vh(O)&&(h=h.responseEnd,c+=_*(h"u"?null:document;function Mh(t,e,l){var n=Dn;if(n&&typeof e=="string"&&e){var a=re(e);a='link[rel="'+t+'"][href="'+a+'"]',typeof l=="string"&&(a+='[crossorigin="'+l+'"]'),Nh.has(a)||(Nh.add(a),t={rel:t,crossOrigin:l,href:e},n.querySelector(a)===null&&(e=n.createElement("link"),Ht(e,"link",t),Rt(e),n.head.appendChild(e)))}}function Nm(t){tl.D(t),Mh("dns-prefetch",t,null)}function Mm(t,e){tl.C(t,e),Mh("preconnect",t,e)}function Rm(t,e,l){tl.L(t,e,l);var n=Dn;if(n&&t&&e){var a='link[rel="preload"][as="'+re(e)+'"]';e==="image"&&l&&l.imageSrcSet?(a+='[imagesrcset="'+re(l.imageSrcSet)+'"]',typeof l.imageSizes=="string"&&(a+='[imagesizes="'+re(l.imageSizes)+'"]')):a+='[href="'+re(t)+'"]';var u=a;switch(e){case"style":u=Un(t);break;case"script":u=xn(t)}Se.has(u)||(t=x({rel:"preload",href:e==="image"&&l&&l.imageSrcSet?void 0:t,as:e},l),Se.set(u,t),n.querySelector(a)!==null||e==="style"&&n.querySelector(Ta(u))||e==="script"&&n.querySelector(Aa(u))||(e=n.createElement("link"),Ht(e,"link",t),Rt(e),n.head.appendChild(e)))}}function Dm(t,e){tl.m(t,e);var l=Dn;if(l&&t){var n=e&&typeof e.as=="string"?e.as:"script",a='link[rel="modulepreload"][as="'+re(n)+'"][href="'+re(t)+'"]',u=a;switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":u=xn(t)}if(!Se.has(u)&&(t=x({rel:"modulepreload",href:t},e),Se.set(u,t),l.querySelector(a)===null)){switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(l.querySelector(Aa(u)))return}n=l.createElement("link"),Ht(n,"link",t),Rt(n),l.head.appendChild(n)}}}function Um(t,e,l){tl.S(t,e,l);var n=Dn;if(n&&t){var a=Il(n).hoistableStyles,u=Un(t);e=e||"default";var c=a.get(u);if(!c){var r={loading:0,preload:null};if(c=n.querySelector(Ta(u)))r.loading=5;else{t=x({rel:"stylesheet",href:t,"data-precedence":e},l),(l=Se.get(u))&&mf(t,l);var h=c=n.createElement("link");Rt(h),Ht(h,"link",t),h._p=new Promise(function(p,_){h.onload=p,h.onerror=_}),h.addEventListener("load",function(){r.loading|=1}),h.addEventListener("error",function(){r.loading|=2}),r.loading|=4,Lu(c,e,n)}c={type:"stylesheet",instance:c,count:1,state:r},a.set(u,c)}}}function xm(t,e){tl.X(t,e);var l=Dn;if(l&&t){var n=Il(l).hoistableScripts,a=xn(t),u=n.get(a);u||(u=l.querySelector(Aa(a)),u||(t=x({src:t,async:!0},e),(e=Se.get(a))&&vf(t,e),u=l.createElement("script"),Rt(u),Ht(u,"link",t),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(a,u))}}function Cm(t,e){tl.M(t,e);var l=Dn;if(l&&t){var n=Il(l).hoistableScripts,a=xn(t),u=n.get(a);u||(u=l.querySelector(Aa(a)),u||(t=x({src:t,async:!0,type:"module"},e),(e=Se.get(a))&&vf(t,e),u=l.createElement("script"),Rt(u),Ht(u,"link",t),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(a,u))}}function Rh(t,e,l,n){var a=(a=J.current)?ju(a):null;if(!a)throw Error(s(446));switch(t){case"meta":case"title":return null;case"style":return typeof l.precedence=="string"&&typeof l.href=="string"?(e=Un(l.href),l=Il(a).hoistableStyles,n=l.get(e),n||(n={type:"style",instance:null,count:0,state:null},l.set(e,n)),n):{type:"void",instance:null,count:0,state:null};case"link":if(l.rel==="stylesheet"&&typeof l.href=="string"&&typeof l.precedence=="string"){t=Un(l.href);var u=Il(a).hoistableStyles,c=u.get(t);if(c||(a=a.ownerDocument||a,c={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},u.set(t,c),(u=a.querySelector(Ta(t)))&&!u._p&&(c.instance=u,c.state.loading=5),Se.has(t)||(l={rel:"preload",as:"style",href:l.href,crossOrigin:l.crossOrigin,integrity:l.integrity,media:l.media,hrefLang:l.hrefLang,referrerPolicy:l.referrerPolicy},Se.set(t,l),u||Bm(a,t,l,c.state))),e&&n===null)throw Error(s(528,""));return c}if(e&&n!==null)throw Error(s(529,""));return null;case"script":return e=l.async,l=l.src,typeof l=="string"&&e&&typeof e!="function"&&typeof e!="symbol"?(e=xn(l),l=Il(a).hoistableScripts,n=l.get(e),n||(n={type:"script",instance:null,count:0,state:null},l.set(e,n)),n):{type:"void",instance:null,count:0,state:null};default:throw Error(s(444,t))}}function Un(t){return'href="'+re(t)+'"'}function Ta(t){return'link[rel="stylesheet"]['+t+"]"}function Dh(t){return x({},t,{"data-precedence":t.precedence,precedence:null})}function Bm(t,e,l,n){t.querySelector('link[rel="preload"][as="style"]['+e+"]")?n.loading=1:(e=t.createElement("link"),n.preload=e,e.addEventListener("load",function(){return n.loading|=1}),e.addEventListener("error",function(){return n.loading|=2}),Ht(e,"link",l),Rt(e),t.head.appendChild(e))}function xn(t){return'[src="'+re(t)+'"]'}function Aa(t){return"script[async]"+t}function Uh(t,e,l){if(e.count++,e.instance===null)switch(e.type){case"style":var n=t.querySelector('style[data-href~="'+re(l.href)+'"]');if(n)return e.instance=n,Rt(n),n;var a=x({},l,{"data-href":l.href,"data-precedence":l.precedence,href:null,precedence:null});return n=(t.ownerDocument||t).createElement("style"),Rt(n),Ht(n,"style",a),Lu(n,l.precedence,t),e.instance=n;case"stylesheet":a=Un(l.href);var u=t.querySelector(Ta(a));if(u)return e.state.loading|=4,e.instance=u,Rt(u),u;n=Dh(l),(a=Se.get(a))&&mf(n,a),u=(t.ownerDocument||t).createElement("link"),Rt(u);var c=u;return c._p=new Promise(function(r,h){c.onload=r,c.onerror=h}),Ht(u,"link",n),e.state.loading|=4,Lu(u,l.precedence,t),e.instance=u;case"script":return u=xn(l.src),(a=t.querySelector(Aa(u)))?(e.instance=a,Rt(a),a):(n=l,(a=Se.get(u))&&(n=x({},l),vf(n,a)),t=t.ownerDocument||t,a=t.createElement("script"),Rt(a),Ht(a,"link",n),t.head.appendChild(a),e.instance=a);case"void":return null;default:throw Error(s(443,e.type))}else e.type==="stylesheet"&&(e.state.loading&4)===0&&(n=e.instance,e.state.loading|=4,Lu(n,l.precedence,t));return e.instance}function Lu(t,e,l){for(var n=l.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=n.length?n[n.length-1]:null,u=a,c=0;c title"):null)}function qm(t,e,l){if(l===1||e.itemProp!=null)return!1;switch(t){case"meta":case"title":return!0;case"style":if(typeof e.precedence!="string"||typeof e.href!="string"||e.href==="")break;return!0;case"link":if(typeof e.rel!="string"||typeof e.href!="string"||e.href===""||e.onLoad||e.onError)break;switch(e.rel){case"stylesheet":return t=e.disabled,typeof e.precedence=="string"&&t==null;default:return!0}case"script":if(e.async&&typeof e.async!="function"&&typeof e.async!="symbol"&&!e.onLoad&&!e.onError&&e.src&&typeof e.src=="string")return!0}return!1}function Bh(t){return!(t.type==="stylesheet"&&(t.state.loading&3)===0)}function Hm(t,e,l,n){if(l.type==="stylesheet"&&(typeof n.media!="string"||matchMedia(n.media).matches!==!1)&&(l.state.loading&4)===0){if(l.instance===null){var a=Un(n.href),u=e.querySelector(Ta(a));if(u){e=u._p,e!==null&&typeof e=="object"&&typeof e.then=="function"&&(t.count++,t=Qu.bind(t),e.then(t,t)),l.state.loading|=4,l.instance=u,Rt(u);return}u=e.ownerDocument||e,n=Dh(n),(a=Se.get(a))&&mf(n,a),u=u.createElement("link"),Rt(u);var c=u;c._p=new Promise(function(r,h){c.onload=r,c.onerror=h}),Ht(u,"link",n),l.instance=u}t.stylesheets===null&&(t.stylesheets=new Map),t.stylesheets.set(l,e),(e=l.state.preload)&&(l.state.loading&3)===0&&(t.count++,l=Qu.bind(t),e.addEventListener("load",l),e.addEventListener("error",l))}}var gf=0;function Ym(t,e){return t.stylesheets&&t.count===0&&Vu(t,t.stylesheets),0gf?50:800)+e);return t.unsuspend=l,function(){t.unsuspend=null,clearTimeout(n),clearTimeout(a)}}:null}function Qu(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Vu(this,this.stylesheets);else if(this.unsuspend){var t=this.unsuspend;this.unsuspend=null,t()}}}var Gu=null;function Vu(t,e){t.stylesheets=null,t.unsuspend!==null&&(t.count++,Gu=new Map,e.forEach(jm,t),Gu=null,Qu.call(t))}function jm(t,e){if(!(e.state.loading&4)){var l=Gu.get(t);if(l)var n=l.get(null);else{l=new Map,Gu.set(t,l);for(var a=t.querySelectorAll("link[data-precedence],style[data-precedence]"),u=0;u"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(o)}catch(i){console.error(i)}}return o(),Of.exports=t0(),Of.exports}var l0=e0();const Be=Object.create(null);Be.open="0";Be.close="1";Be.ping="2";Be.pong="3";Be.message="4";Be.upgrade="5";Be.noop="6";const Pu=Object.create(null);Object.keys(Be).forEach(o=>{Pu[Be[o]]=o});const Cf={type:"error",data:"parser error"},sd=typeof Blob=="function"||typeof Blob<"u"&&Object.prototype.toString.call(Blob)==="[object BlobConstructor]",od=typeof ArrayBuffer=="function",rd=o=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(o):o&&o.buffer instanceof ArrayBuffer,Xf=({type:o,data:i},f,s)=>sd&&i instanceof Blob?f?s(i):ad(i,s):od&&(i instanceof ArrayBuffer||rd(i))?f?s(i):ad(new Blob([i]),s):s(Be[o]+(i||"")),ad=(o,i)=>{const f=new FileReader;return f.onload=function(){const s=f.result.split(",")[1];i("b"+(s||""))},f.readAsDataURL(o)};function ud(o){return o instanceof Uint8Array?o:o instanceof ArrayBuffer?new Uint8Array(o):new Uint8Array(o.buffer,o.byteOffset,o.byteLength)}let Df;function n0(o,i){if(sd&&o.data instanceof Blob)return o.data.arrayBuffer().then(ud).then(i);if(od&&(o.data instanceof ArrayBuffer||rd(o.data)))return i(ud(o.data));Xf(o,!1,f=>{Df||(Df=new TextEncoder),i(Df.encode(f))})}const id="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",xa=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(let o=0;o{let i=o.length*.75,f=o.length,s,m=0,E,R,B,M;o[o.length-1]==="="&&(i--,o[o.length-2]==="="&&i--);const A=new ArrayBuffer(i),Q=new Uint8Array(A);for(s=0;s>4,Q[m++]=(R&15)<<4|B>>2,Q[m++]=(B&3)<<6|M&63;return A},u0=typeof ArrayBuffer=="function",Qf=(o,i)=>{if(typeof o!="string")return{type:"message",data:hd(o,i)};const f=o.charAt(0);return f==="b"?{type:"message",data:i0(o.substring(1),i)}:Pu[f]?o.length>1?{type:Pu[f],data:o.substring(1)}:{type:Pu[f]}:Cf},i0=(o,i)=>{if(u0){const f=a0(o);return hd(f,i)}else return{base64:!0,data:o}},hd=(o,i)=>{switch(i){case"blob":return o instanceof Blob?o:new Blob([o]);case"arraybuffer":default:return o instanceof ArrayBuffer?o:o.buffer}},dd="",c0=(o,i)=>{const f=o.length,s=new Array(f);let m=0;o.forEach((E,R)=>{Xf(E,!1,B=>{s[R]=B,++m===f&&i(s.join(dd))})})},f0=(o,i)=>{const f=o.split(dd),s=[];for(let m=0;m{const s=f.length;let m;if(s<126)m=new Uint8Array(1),new DataView(m.buffer).setUint8(0,s);else if(s<65536){m=new Uint8Array(3);const E=new DataView(m.buffer);E.setUint8(0,126),E.setUint16(1,s)}else{m=new Uint8Array(9);const E=new DataView(m.buffer);E.setUint8(0,127),E.setBigUint64(1,BigInt(s))}o.data&&typeof o.data!="string"&&(m[0]|=128),i.enqueue(m),i.enqueue(f)})}})}let Uf;function Fu(o){return o.reduce((i,f)=>i+f.length,0)}function Iu(o,i){if(o[0].length===i)return o.shift();const f=new Uint8Array(i);let s=0;for(let m=0;mMath.pow(2,21)-1){B.enqueue(Cf);break}m=Q*Math.pow(2,32)+A.getUint32(4),s=3}else{if(Fu(f)o){B.enqueue(Cf);break}}}})}const yd=4;function Ot(o){if(o)return r0(o)}function r0(o){for(var i in Ot.prototype)o[i]=Ot.prototype[i];return o}Ot.prototype.on=Ot.prototype.addEventListener=function(o,i){return this._callbacks=this._callbacks||{},(this._callbacks["$"+o]=this._callbacks["$"+o]||[]).push(i),this};Ot.prototype.once=function(o,i){function f(){this.off(o,f),i.apply(this,arguments)}return f.fn=i,this.on(o,f),this};Ot.prototype.off=Ot.prototype.removeListener=Ot.prototype.removeAllListeners=Ot.prototype.removeEventListener=function(o,i){if(this._callbacks=this._callbacks||{},arguments.length==0)return this._callbacks={},this;var f=this._callbacks["$"+o];if(!f)return this;if(arguments.length==1)return delete this._callbacks["$"+o],this;for(var s,m=0;mPromise.resolve().then(i):(i,f)=>f(i,0),be=typeof self<"u"?self:typeof window<"u"?window:Function("return this")(),h0="arraybuffer";function md(o,...i){return i.reduce((f,s)=>(o.hasOwnProperty(s)&&(f[s]=o[s]),f),{})}const d0=be.setTimeout,y0=be.clearTimeout;function ai(o,i){i.useNativeTimers?(o.setTimeoutFn=d0.bind(be),o.clearTimeoutFn=y0.bind(be)):(o.setTimeoutFn=be.setTimeout.bind(be),o.clearTimeoutFn=be.clearTimeout.bind(be))}const m0=1.33;function v0(o){return typeof o=="string"?g0(o):Math.ceil((o.byteLength||o.size)*m0)}function g0(o){let i=0,f=0;for(let s=0,m=o.length;s=57344?f+=3:(s++,f+=4);return f}function vd(){return Date.now().toString(36).substring(3)+Math.random().toString(36).substring(2,5)}function p0(o){let i="";for(let f in o)o.hasOwnProperty(f)&&(i.length&&(i+="&"),i+=encodeURIComponent(f)+"="+encodeURIComponent(o[f]));return i}function S0(o){let i={},f=o.split("&");for(let s=0,m=f.length;s{this.readyState="paused",i()};if(this._polling||!this.writable){let s=0;this._polling&&(s++,this.once("pollComplete",function(){--s||f()})),this.writable||(s++,this.once("drain",function(){--s||f()}))}else f()}_poll(){this._polling=!0,this.doPoll(),this.emitReserved("poll")}onData(i){const f=s=>{if(this.readyState==="opening"&&s.type==="open"&&this.onOpen(),s.type==="close")return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(s)};f0(i,this.socket.binaryType).forEach(f),this.readyState!=="closed"&&(this._polling=!1,this.emitReserved("pollComplete"),this.readyState==="open"&&this._poll())}doClose(){const i=()=>{this.write([{type:"close"}])};this.readyState==="open"?i():this.once("open",i)}write(i){this.writable=!1,c0(i,f=>{this.doWrite(f,()=>{this.writable=!0,this.emitReserved("drain")})})}uri(){const i=this.opts.secure?"https":"http",f=this.query||{};return this.opts.timestampRequests!==!1&&(f[this.opts.timestampParam]=vd()),!this.supportsBinary&&!f.sid&&(f.b64=1),this.createUri(i,f)}}let gd=!1;try{gd=typeof XMLHttpRequest<"u"&&"withCredentials"in new XMLHttpRequest}catch{}const E0=gd;function T0(){}class A0 extends _0{constructor(i){if(super(i),typeof location<"u"){const f=location.protocol==="https:";let s=location.port;s||(s=f?"443":"80"),this.xd=typeof location<"u"&&i.hostname!==location.hostname||s!==i.port}}doWrite(i,f){const s=this.request({method:"POST",data:i});s.on("success",f),s.on("error",(m,E)=>{this.onError("xhr post error",m,E)})}doPoll(){const i=this.request();i.on("data",this.onData.bind(this)),i.on("error",(f,s)=>{this.onError("xhr poll error",f,s)}),this.pollXhr=i}}class Ce extends Ot{constructor(i,f,s){super(),this.createRequest=i,ai(this,s),this._opts=s,this._method=s.method||"GET",this._uri=f,this._data=s.data!==void 0?s.data:null,this._create()}_create(){var i;const f=md(this._opts,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");f.xdomain=!!this._opts.xd;const s=this._xhr=this.createRequest(f);try{s.open(this._method,this._uri,!0);try{if(this._opts.extraHeaders){s.setDisableHeaderCheck&&s.setDisableHeaderCheck(!0);for(let m in this._opts.extraHeaders)this._opts.extraHeaders.hasOwnProperty(m)&&s.setRequestHeader(m,this._opts.extraHeaders[m])}}catch{}if(this._method==="POST")try{s.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch{}try{s.setRequestHeader("Accept","*/*")}catch{}(i=this._opts.cookieJar)===null||i===void 0||i.addCookies(s),"withCredentials"in s&&(s.withCredentials=this._opts.withCredentials),this._opts.requestTimeout&&(s.timeout=this._opts.requestTimeout),s.onreadystatechange=()=>{var m;s.readyState===3&&((m=this._opts.cookieJar)===null||m===void 0||m.parseCookies(s.getResponseHeader("set-cookie"))),s.readyState===4&&(s.status===200||s.status===1223?this._onLoad():this.setTimeoutFn(()=>{this._onError(typeof s.status=="number"?s.status:0)},0))},s.send(this._data)}catch(m){this.setTimeoutFn(()=>{this._onError(m)},0);return}typeof document<"u"&&(this._index=Ce.requestsCount++,Ce.requests[this._index]=this)}_onError(i){this.emitReserved("error",i,this._xhr),this._cleanup(!0)}_cleanup(i){if(!(typeof this._xhr>"u"||this._xhr===null)){if(this._xhr.onreadystatechange=T0,i)try{this._xhr.abort()}catch{}typeof document<"u"&&delete Ce.requests[this._index],this._xhr=null}}_onLoad(){const i=this._xhr.responseText;i!==null&&(this.emitReserved("data",i),this.emitReserved("success"),this._cleanup())}abort(){this._cleanup()}}Ce.requestsCount=0;Ce.requests={};if(typeof document<"u"){if(typeof attachEvent=="function")attachEvent("onunload",cd);else if(typeof addEventListener=="function"){const o="onpagehide"in be?"pagehide":"unload";addEventListener(o,cd,!1)}}function cd(){for(let o in Ce.requests)Ce.requests.hasOwnProperty(o)&&Ce.requests[o].abort()}const z0=(function(){const o=pd({xdomain:!1});return o&&o.responseType!==null})();class O0 extends A0{constructor(i){super(i);const f=i&&i.forceBase64;this.supportsBinary=z0&&!f}request(i={}){return Object.assign(i,{xd:this.xd},this.opts),new Ce(pd,this.uri(),i)}}function pd(o){const i=o.xdomain;try{if(typeof XMLHttpRequest<"u"&&(!i||E0))return new XMLHttpRequest}catch{}if(!i)try{return new be[["Active"].concat("Object").join("X")]("Microsoft.XMLHTTP")}catch{}}const Sd=typeof navigator<"u"&&typeof navigator.product=="string"&&navigator.product.toLowerCase()==="reactnative";class N0 extends Gf{get name(){return"websocket"}doOpen(){const i=this.uri(),f=this.opts.protocols,s=Sd?{}:md(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(s.headers=this.opts.extraHeaders);try{this.ws=this.createSocket(i,f,s)}catch(m){return this.emitReserved("error",m)}this.ws.binaryType=this.socket.binaryType,this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=i=>this.onClose({description:"websocket connection closed",context:i}),this.ws.onmessage=i=>this.onData(i.data),this.ws.onerror=i=>this.onError("websocket error",i)}write(i){this.writable=!1;for(let f=0;f{try{this.doWrite(s,E)}catch{}m&&ni(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){typeof this.ws<"u"&&(this.ws.onerror=()=>{},this.ws.close(),this.ws=null)}uri(){const i=this.opts.secure?"wss":"ws",f=this.query||{};return this.opts.timestampRequests&&(f[this.opts.timestampParam]=vd()),this.supportsBinary||(f.b64=1),this.createUri(i,f)}}const xf=be.WebSocket||be.MozWebSocket;class M0 extends N0{createSocket(i,f,s){return Sd?new xf(i,f,s):f?new xf(i,f):new xf(i)}doWrite(i,f){this.ws.send(f)}}class R0 extends Gf{get name(){return"webtransport"}doOpen(){try{this._transport=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name])}catch(i){return this.emitReserved("error",i)}this._transport.closed.then(()=>{this.onClose()}).catch(i=>{this.onError("webtransport error",i)}),this._transport.ready.then(()=>{this._transport.createBidirectionalStream().then(i=>{const f=o0(Number.MAX_SAFE_INTEGER,this.socket.binaryType),s=i.readable.pipeThrough(f).getReader(),m=s0();m.readable.pipeTo(i.writable),this._writer=m.writable.getWriter();const E=()=>{s.read().then(({done:B,value:M})=>{B||(this.onPacket(M),E())}).catch(B=>{})};E();const R={type:"open"};this.query.sid&&(R.data=`{"sid":"${this.query.sid}"}`),this._writer.write(R).then(()=>this.onOpen())})})}write(i){this.writable=!1;for(let f=0;f{m&&ni(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){var i;(i=this._transport)===null||i===void 0||i.close()}}const D0={websocket:M0,webtransport:R0,polling:O0},U0=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,x0=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function Bf(o){if(o.length>8e3)throw"URI too long";const i=o,f=o.indexOf("["),s=o.indexOf("]");f!=-1&&s!=-1&&(o=o.substring(0,f)+o.substring(f,s).replace(/:/g,";")+o.substring(s,o.length));let m=U0.exec(o||""),E={},R=14;for(;R--;)E[x0[R]]=m[R]||"";return f!=-1&&s!=-1&&(E.source=i,E.host=E.host.substring(1,E.host.length-1).replace(/;/g,":"),E.authority=E.authority.replace("[","").replace("]","").replace(/;/g,":"),E.ipv6uri=!0),E.pathNames=C0(E,E.path),E.queryKey=B0(E,E.query),E}function C0(o,i){const f=/\/{2,9}/g,s=i.replace(f,"/").split("/");return(i.slice(0,1)=="/"||i.length===0)&&s.splice(0,1),i.slice(-1)=="/"&&s.splice(s.length-1,1),s}function B0(o,i){const f={};return i.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,function(s,m,E){m&&(f[m]=E)}),f}const qf=typeof addEventListener=="function"&&typeof removeEventListener=="function",ti=[];qf&&addEventListener("offline",()=>{ti.forEach(o=>o())},!1);class Nl extends Ot{constructor(i,f){if(super(),this.binaryType=h0,this.writeBuffer=[],this._prevBufferLen=0,this._pingInterval=-1,this._pingTimeout=-1,this._maxPayload=-1,this._pingTimeoutTime=1/0,i&&typeof i=="object"&&(f=i,i=null),i){const s=Bf(i);f.hostname=s.host,f.secure=s.protocol==="https"||s.protocol==="wss",f.port=s.port,s.query&&(f.query=s.query)}else f.host&&(f.hostname=Bf(f.host).host);ai(this,f),this.secure=f.secure!=null?f.secure:typeof location<"u"&&location.protocol==="https:",f.hostname&&!f.port&&(f.port=this.secure?"443":"80"),this.hostname=f.hostname||(typeof location<"u"?location.hostname:"localhost"),this.port=f.port||(typeof location<"u"&&location.port?location.port:this.secure?"443":"80"),this.transports=[],this._transportsByName={},f.transports.forEach(s=>{const m=s.prototype.name;this.transports.push(m),this._transportsByName[m]=s}),this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},f),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),typeof this.opts.query=="string"&&(this.opts.query=S0(this.opts.query)),qf&&(this.opts.closeOnBeforeunload&&(this._beforeunloadEventListener=()=>{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this._beforeunloadEventListener,!1)),this.hostname!=="localhost"&&(this._offlineEventListener=()=>{this._onClose("transport close",{description:"network connection lost"})},ti.push(this._offlineEventListener))),this.opts.withCredentials&&(this._cookieJar=void 0),this._open()}createTransport(i){const f=Object.assign({},this.opts.query);f.EIO=yd,f.transport=i,this.id&&(f.sid=this.id);const s=Object.assign({},this.opts,{query:f,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[i]);return new this._transportsByName[i](s)}_open(){if(this.transports.length===0){this.setTimeoutFn(()=>{this.emitReserved("error","No transports available")},0);return}const i=this.opts.rememberUpgrade&&Nl.priorWebsocketSuccess&&this.transports.indexOf("websocket")!==-1?"websocket":this.transports[0];this.readyState="opening";const f=this.createTransport(i);f.open(),this.setTransport(f)}setTransport(i){this.transport&&this.transport.removeAllListeners(),this.transport=i,i.on("drain",this._onDrain.bind(this)).on("packet",this._onPacket.bind(this)).on("error",this._onError.bind(this)).on("close",f=>this._onClose("transport close",f))}onOpen(){this.readyState="open",Nl.priorWebsocketSuccess=this.transport.name==="websocket",this.emitReserved("open"),this.flush()}_onPacket(i){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing")switch(this.emitReserved("packet",i),this.emitReserved("heartbeat"),i.type){case"open":this.onHandshake(JSON.parse(i.data));break;case"ping":this._sendPacket("pong"),this.emitReserved("ping"),this.emitReserved("pong"),this._resetPingTimeout();break;case"error":const f=new Error("server error");f.code=i.data,this._onError(f);break;case"message":this.emitReserved("data",i.data),this.emitReserved("message",i.data);break}}onHandshake(i){this.emitReserved("handshake",i),this.id=i.sid,this.transport.query.sid=i.sid,this._pingInterval=i.pingInterval,this._pingTimeout=i.pingTimeout,this._maxPayload=i.maxPayload,this.onOpen(),this.readyState!=="closed"&&this._resetPingTimeout()}_resetPingTimeout(){this.clearTimeoutFn(this._pingTimeoutTimer);const i=this._pingInterval+this._pingTimeout;this._pingTimeoutTime=Date.now()+i,this._pingTimeoutTimer=this.setTimeoutFn(()=>{this._onClose("ping timeout")},i),this.opts.autoUnref&&this._pingTimeoutTimer.unref()}_onDrain(){this.writeBuffer.splice(0,this._prevBufferLen),this._prevBufferLen=0,this.writeBuffer.length===0?this.emitReserved("drain"):this.flush()}flush(){if(this.readyState!=="closed"&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){const i=this._getWritablePackets();this.transport.send(i),this._prevBufferLen=i.length,this.emitReserved("flush")}}_getWritablePackets(){if(!(this._maxPayload&&this.transport.name==="polling"&&this.writeBuffer.length>1))return this.writeBuffer;let f=1;for(let s=0;s0&&f>this._maxPayload)return this.writeBuffer.slice(0,s);f+=2}return this.writeBuffer}_hasPingExpired(){if(!this._pingTimeoutTime)return!0;const i=Date.now()>this._pingTimeoutTime;return i&&(this._pingTimeoutTime=0,ni(()=>{this._onClose("ping timeout")},this.setTimeoutFn)),i}write(i,f,s){return this._sendPacket("message",i,f,s),this}send(i,f,s){return this._sendPacket("message",i,f,s),this}_sendPacket(i,f,s,m){if(typeof f=="function"&&(m=f,f=void 0),typeof s=="function"&&(m=s,s=null),this.readyState==="closing"||this.readyState==="closed")return;s=s||{},s.compress=s.compress!==!1;const E={type:i,data:f,options:s};this.emitReserved("packetCreate",E),this.writeBuffer.push(E),m&&this.once("flush",m),this.flush()}close(){const i=()=>{this._onClose("forced close"),this.transport.close()},f=()=>{this.off("upgrade",f),this.off("upgradeError",f),i()},s=()=>{this.once("upgrade",f),this.once("upgradeError",f)};return(this.readyState==="opening"||this.readyState==="open")&&(this.readyState="closing",this.writeBuffer.length?this.once("drain",()=>{this.upgrading?s():i()}):this.upgrading?s():i()),this}_onError(i){if(Nl.priorWebsocketSuccess=!1,this.opts.tryAllTransports&&this.transports.length>1&&this.readyState==="opening")return this.transports.shift(),this._open();this.emitReserved("error",i),this._onClose("transport error",i)}_onClose(i,f){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing"){if(this.clearTimeoutFn(this._pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),qf&&(this._beforeunloadEventListener&&removeEventListener("beforeunload",this._beforeunloadEventListener,!1),this._offlineEventListener)){const s=ti.indexOf(this._offlineEventListener);s!==-1&&ti.splice(s,1)}this.readyState="closed",this.id=null,this.emitReserved("close",i,f),this.writeBuffer=[],this._prevBufferLen=0}}}Nl.protocol=yd;class q0 extends Nl{constructor(){super(...arguments),this._upgrades=[]}onOpen(){if(super.onOpen(),this.readyState==="open"&&this.opts.upgrade)for(let i=0;i{s||(f.send([{type:"ping",data:"probe"}]),f.once("packet",x=>{if(!s)if(x.type==="pong"&&x.data==="probe"){if(this.upgrading=!0,this.emitReserved("upgrading",f),!f)return;Nl.priorWebsocketSuccess=f.name==="websocket",this.transport.pause(()=>{s||this.readyState!=="closed"&&(Q(),this.setTransport(f),f.send([{type:"upgrade"}]),this.emitReserved("upgrade",f),f=null,this.upgrading=!1,this.flush())})}else{const K=new Error("probe error");K.transport=f.name,this.emitReserved("upgradeError",K)}}))};function E(){s||(s=!0,Q(),f.close(),f=null)}const R=x=>{const K=new Error("probe error: "+x);K.transport=f.name,E(),this.emitReserved("upgradeError",K)};function B(){R("transport closed")}function M(){R("socket closed")}function A(x){f&&x.name!==f.name&&E()}const Q=()=>{f.removeListener("open",m),f.removeListener("error",R),f.removeListener("close",B),this.off("close",M),this.off("upgrading",A)};f.once("open",m),f.once("error",R),f.once("close",B),this.once("close",M),this.once("upgrading",A),this._upgrades.indexOf("webtransport")!==-1&&i!=="webtransport"?this.setTimeoutFn(()=>{s||f.open()},200):f.open()}onHandshake(i){this._upgrades=this._filterUpgrades(i.upgrades),super.onHandshake(i)}_filterUpgrades(i){const f=[];for(let s=0;sD0[m]).filter(m=>!!m)),super(i,s)}};function Y0(o,i="",f){let s=o;f=f||typeof location<"u"&&location,o==null&&(o=f.protocol+"//"+f.host),typeof o=="string"&&(o.charAt(0)==="/"&&(o.charAt(1)==="/"?o=f.protocol+o:o=f.host+o),/^(https?|wss?):\/\//.test(o)||(typeof f<"u"?o=f.protocol+"//"+o:o="https://"+o),s=Bf(o)),s.port||(/^(http|ws)$/.test(s.protocol)?s.port="80":/^(http|ws)s$/.test(s.protocol)&&(s.port="443")),s.path=s.path||"/";const E=s.host.indexOf(":")!==-1?"["+s.host+"]":s.host;return s.id=s.protocol+"://"+E+":"+s.port+i,s.href=s.protocol+"://"+E+(f&&f.port===s.port?"":":"+s.port),s}const j0=typeof ArrayBuffer=="function",L0=o=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(o):o.buffer instanceof ArrayBuffer,bd=Object.prototype.toString,X0=typeof Blob=="function"||typeof Blob<"u"&&bd.call(Blob)==="[object BlobConstructor]",Q0=typeof File=="function"||typeof File<"u"&&bd.call(File)==="[object FileConstructor]";function Vf(o){return j0&&(o instanceof ArrayBuffer||L0(o))||X0&&o instanceof Blob||Q0&&o instanceof File}function ei(o,i){if(!o||typeof o!="object")return!1;if(Array.isArray(o)){for(let f=0,s=o.length;f=0&&o.num{delete this.acks[i];for(let B=0;B{this.io.clearTimeoutFn(E),f.apply(this,B)};R.withError=!0,this.acks[i]=R}emitWithAck(i,...f){return new Promise((s,m)=>{const E=(R,B)=>R?m(R):s(B);E.withError=!0,f.push(E),this.emit(i,...f)})}_addToQueue(i){let f;typeof i[i.length-1]=="function"&&(f=i.pop());const s={id:this._queueSeq++,tryCount:0,pending:!1,args:i,flags:Object.assign({fromQueue:!0},this.flags)};i.push((m,...E)=>s!==this._queue[0]?void 0:(m!==null?s.tryCount>this._opts.retries&&(this._queue.shift(),f&&f(m)):(this._queue.shift(),f&&f(null,...E)),s.pending=!1,this._drainQueue())),this._queue.push(s),this._drainQueue()}_drainQueue(i=!1){if(!this.connected||this._queue.length===0)return;const f=this._queue[0];f.pending&&!i||(f.pending=!0,f.tryCount++,this.flags=f.flags,this.emit.apply(this,f.args))}packet(i){i.nsp=this.nsp,this.io._packet(i)}onopen(){typeof this.auth=="function"?this.auth(i=>{this._sendConnectPacket(i)}):this._sendConnectPacket(this.auth)}_sendConnectPacket(i){this.packet({type:tt.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},i):i})}onerror(i){this.connected||this.emitReserved("connect_error",i)}onclose(i,f){this.connected=!1,delete this.id,this.emitReserved("disconnect",i,f),this._clearAcks()}_clearAcks(){Object.keys(this.acks).forEach(i=>{if(!this.sendBuffer.some(s=>String(s.id)===i)){const s=this.acks[i];delete this.acks[i],s.withError&&s.call(this,new Error("socket has been disconnected"))}})}onpacket(i){if(i.nsp===this.nsp)switch(i.type){case tt.CONNECT:i.data&&i.data.sid?this.onconnect(i.data.sid,i.data.pid):this.emitReserved("connect_error",new Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case tt.EVENT:case tt.BINARY_EVENT:this.onevent(i);break;case tt.ACK:case tt.BINARY_ACK:this.onack(i);break;case tt.DISCONNECT:this.ondisconnect();break;case tt.CONNECT_ERROR:this.destroy();const s=new Error(i.data.message);s.data=i.data.data,this.emitReserved("connect_error",s);break}}onevent(i){const f=i.data||[];i.id!=null&&f.push(this.ack(i.id)),this.connected?this.emitEvent(f):this.receiveBuffer.push(Object.freeze(f))}emitEvent(i){if(this._anyListeners&&this._anyListeners.length){const f=this._anyListeners.slice();for(const s of f)s.apply(this,i)}super.emit.apply(this,i),this._pid&&i.length&&typeof i[i.length-1]=="string"&&(this._lastOffset=i[i.length-1])}ack(i){const f=this;let s=!1;return function(...m){s||(s=!0,f.packet({type:tt.ACK,id:i,data:m}))}}onack(i){const f=this.acks[i.id];typeof f=="function"&&(delete this.acks[i.id],f.withError&&i.data.unshift(null),f.apply(this,i.data))}onconnect(i,f){this.id=i,this.recovered=f&&this._pid===f,this._pid=f,this.connected=!0,this.emitBuffered(),this.emitReserved("connect"),this._drainQueue(!0)}emitBuffered(){this.receiveBuffer.forEach(i=>this.emitEvent(i)),this.receiveBuffer=[],this.sendBuffer.forEach(i=>{this.notifyOutgoingListeners(i),this.packet(i)}),this.sendBuffer=[]}ondisconnect(){this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach(i=>i()),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&this.packet({type:tt.DISCONNECT}),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(i){return this.flags.compress=i,this}get volatile(){return this.flags.volatile=!0,this}timeout(i){return this.flags.timeout=i,this}onAny(i){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(i),this}prependAny(i){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(i),this}offAny(i){if(!this._anyListeners)return this;if(i){const f=this._anyListeners;for(let s=0;s0&&o.jitter<=1?o.jitter:0,this.attempts=0}Bn.prototype.duration=function(){var o=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var i=Math.random(),f=Math.floor(i*this.jitter*o);o=(Math.floor(i*10)&1)==0?o-f:o+f}return Math.min(o,this.max)|0};Bn.prototype.reset=function(){this.attempts=0};Bn.prototype.setMin=function(o){this.ms=o};Bn.prototype.setMax=function(o){this.max=o};Bn.prototype.setJitter=function(o){this.jitter=o};class jf extends Ot{constructor(i,f){var s;super(),this.nsps={},this.subs=[],i&&typeof i=="object"&&(f=i,i=void 0),f=f||{},f.path=f.path||"/socket.io",this.opts=f,ai(this,f),this.reconnection(f.reconnection!==!1),this.reconnectionAttempts(f.reconnectionAttempts||1/0),this.reconnectionDelay(f.reconnectionDelay||1e3),this.reconnectionDelayMax(f.reconnectionDelayMax||5e3),this.randomizationFactor((s=f.randomizationFactor)!==null&&s!==void 0?s:.5),this.backoff=new Bn({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(f.timeout==null?2e4:f.timeout),this._readyState="closed",this.uri=i;const m=f.parser||k0;this.encoder=new m.Encoder,this.decoder=new m.Decoder,this._autoConnect=f.autoConnect!==!1,this._autoConnect&&this.open()}reconnection(i){return arguments.length?(this._reconnection=!!i,i||(this.skipReconnect=!0),this):this._reconnection}reconnectionAttempts(i){return i===void 0?this._reconnectionAttempts:(this._reconnectionAttempts=i,this)}reconnectionDelay(i){var f;return i===void 0?this._reconnectionDelay:(this._reconnectionDelay=i,(f=this.backoff)===null||f===void 0||f.setMin(i),this)}randomizationFactor(i){var f;return i===void 0?this._randomizationFactor:(this._randomizationFactor=i,(f=this.backoff)===null||f===void 0||f.setJitter(i),this)}reconnectionDelayMax(i){var f;return i===void 0?this._reconnectionDelayMax:(this._reconnectionDelayMax=i,(f=this.backoff)===null||f===void 0||f.setMax(i),this)}timeout(i){return arguments.length?(this._timeout=i,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&this.backoff.attempts===0&&this.reconnect()}open(i){if(~this._readyState.indexOf("open"))return this;this.engine=new H0(this.uri,this.opts);const f=this.engine,s=this;this._readyState="opening",this.skipReconnect=!1;const m=ze(f,"open",function(){s.onopen(),i&&i()}),E=B=>{this.cleanup(),this._readyState="closed",this.emitReserved("error",B),i?i(B):this.maybeReconnectOnOpen()},R=ze(f,"error",E);if(this._timeout!==!1){const B=this._timeout,M=this.setTimeoutFn(()=>{m(),E(new Error("timeout")),f.close()},B);this.opts.autoUnref&&M.unref(),this.subs.push(()=>{this.clearTimeoutFn(M)})}return this.subs.push(m),this.subs.push(R),this}connect(i){return this.open(i)}onopen(){this.cleanup(),this._readyState="open",this.emitReserved("open");const i=this.engine;this.subs.push(ze(i,"ping",this.onping.bind(this)),ze(i,"data",this.ondata.bind(this)),ze(i,"error",this.onerror.bind(this)),ze(i,"close",this.onclose.bind(this)),ze(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(i){try{this.decoder.add(i)}catch(f){this.onclose("parse error",f)}}ondecoded(i){ni(()=>{this.emitReserved("packet",i)},this.setTimeoutFn)}onerror(i){this.emitReserved("error",i)}socket(i,f){let s=this.nsps[i];return s?this._autoConnect&&!s.active&&s.connect():(s=new _d(this,i,f),this.nsps[i]=s),s}_destroy(i){const f=Object.keys(this.nsps);for(const s of f)if(this.nsps[s].active)return;this._close()}_packet(i){const f=this.encoder.encode(i);for(let s=0;si()),this.subs.length=0,this.decoder.destroy()}_close(){this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close")}disconnect(){return this._close()}onclose(i,f){var s;this.cleanup(),(s=this.engine)===null||s===void 0||s.close(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",i,f),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;const i=this;if(this.backoff.attempts>=this._reconnectionAttempts)this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{const f=this.backoff.duration();this._reconnecting=!0;const s=this.setTimeoutFn(()=>{i.skipReconnect||(this.emitReserved("reconnect_attempt",i.backoff.attempts),!i.skipReconnect&&i.open(m=>{m?(i._reconnecting=!1,i.reconnect(),this.emitReserved("reconnect_error",m)):i.onreconnect()}))},f);this.opts.autoUnref&&s.unref(),this.subs.push(()=>{this.clearTimeoutFn(s)})}}onreconnect(){const i=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",i)}}const Ua={};function li(o,i){typeof o=="object"&&(i=o,o=void 0),i=i||{};const f=Y0(o,i.path||"/socket.io"),s=f.source,m=f.id,E=f.path,R=Ua[m]&&E in Ua[m].nsps,B=i.forceNew||i["force new connection"]||i.multiplex===!1||R;let M;return B?M=new jf(s,i):(Ua[m]||(Ua[m]=new jf(s,i)),M=Ua[m]),f.query&&!i.query&&(i.query=f.queryKey),M.socket(f.path,i)}Object.assign(li,{Manager:jf,Socket:_d,io:li,connect:li});const $0=void 0,wf=li($0,{transports:["websocket","polling"],timeout:15e3,reconnectionAttempts:5,query:{role:"user"}});wf.on("connect_error",o=>{console.error("Socket connection error:",o.message)});const Ed=Mt.createContext(wf),F0=({children:o})=>Y.jsx(Ed.Provider,{value:wf,children:o}),I0=()=>Mt.useContext(Ed),Td=Mt.createContext({connected:!1,session:null,logs:[],login:async()=>{},setRole:async()=>{},requestControl:async()=>{},releaseControl:async()=>{},subscribeAll:async()=>{}});function P0(o){return Mt.useCallback((i,f={})=>new Promise((s,m)=>{o.emit(i,f,(E={})=>{E.error?m(new Error(E.error)):s(E)})}),[o])}function tv({children:o}){const i=I0(),f=P0(i),[s,m]=Mt.useState(null),[E,R]=Mt.useState([]),[B,M]=Mt.useState(i.connected);Mt.useEffect(()=>{const x=()=>M(!0),K=()=>M(!1);return i.on("connect",x),i.on("disconnect",K),()=>{i.off("connect",x),i.off("disconnect",K)}},[i]),Mt.useEffect(()=>{function x(_t){m(_t)}function K(_t=[]){R(_t)}function Yt(_t){R(Ut=>[...Ut.slice(-199),_t])}return i.on("session:sync",x),i.on("log:init",K),i.on("log:entry",Yt),()=>{i.off("session:sync",x),i.off("log:init",K),i.off("log:entry",Yt)}},[i]);const A=Mt.useMemo(()=>({login:(x,K)=>f("auth:login",{username:x,password:K}),setRole:x=>f("session:setRole",{role:x}),requestControl:(x,K={})=>f("session:requestControl",{roverId:x,...K}),releaseControl:x=>f("session:releaseControl",{roverId:x}),subscribeAll:()=>f("session:subscribeAll")}),[f]),Q=Mt.useMemo(()=>({connected:B,session:s,logs:E,...A}),[A,B,E,s]);return Y.jsx(Td.Provider,{value:Q,children:o})}function qn(){return Mt.useContext(Td)}function ev({connected:o,role:i,mode:f}){const s=o?"bg-emerald-500/20 text-emerald-300":"bg-red-500/20 text-red-200";return Y.jsxs("div",{className:"flex flex-wrap items-center gap-3 text-sm",children:[Y.jsx("span",{className:`rounded-full px-3 py-1 font-medium ${s}`,children:o?"Connected":"Disconnected"}),Y.jsxs("span",{className:"rounded-full bg-slate-800/80 px-3 py-1 text-slate-200",children:["Role: ",i||"unknown"]}),Y.jsxs("span",{className:"rounded-full bg-slate-800/80 px-3 py-1 text-slate-200",children:["Mode: ",f||"--"]})]})}function lv(){const{logs:o}=qn();return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/70 p-4",children:[Y.jsxs("header",{className:"mb-3 flex items-center justify-between",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Server logs"}),Y.jsxs("span",{className:"text-xs uppercase tracking-[0.2em] text-slate-500",children:[o.length," entries"]})]}),Y.jsx("div",{className:"h-64 overflow-y-auto rounded-xl bg-slate-950/40 p-3 text-xs font-mono text-slate-300",children:o.length===0?Y.jsx("p",{children:"No logs yet."}):o.slice().reverse().map(i=>Y.jsxs("div",{className:"mb-2",children:[Y.jsx("span",{className:"text-slate-500",children:i.timestamp})," ",Y.jsxs("span",{className:"text-cyan-300",children:["[",i.level,"]"]})," ",i.label&&Y.jsxs("span",{className:"text-pink-300",children:["[",i.label,"]"]})," ",Y.jsx("span",{children:i.message})]},i.id))})]})}function nv(){const{session:o,requestControl:i}=qn(),f=o?.roster??[],[s,m]=Mt.useState({});async function E(R){m(B=>({...B,[R]:!0}));try{await i(R)}catch(B){alert(B.message)}finally{m(B=>({...B,[R]:!1}))}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Rovers"}),Y.jsxs("div",{className:"mt-4 space-y-3",children:[f.length===0&&Y.jsx("p",{className:"text-slate-400",children:"No rovers registered."}),f.map(R=>Y.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-3 rounded-xl bg-slate-950/40 px-4 py-3",children:[Y.jsxs("div",{children:[Y.jsx("p",{className:"text-white",children:R.name}),Y.jsxs("p",{className:"text-xs text-slate-400",children:["Locked: ",R.locked?"yes":"no"]})]}),Y.jsx("button",{type:"button",onClick:()=>E(R.id),disabled:s[R.id],className:"rounded-full bg-blue-600 px-4 py-1 text-sm font-semibold text-white disabled:opacity-50",children:s[R.id]?"Requesting…":"Request control"})]},R.id))]})]})}function av(){const{session:o,releaseControl:i}=qn(),f=o?.assignment,s=f?.roverId,[m,E]=Mt.useState(!1);async function R(){if(s){E(!0);try{await i(s)}catch(B){alert(B.message)}finally{E(!1)}}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Assignment"}),s?Y.jsxs("div",{className:"mt-4 space-y-3",children:[Y.jsxs("p",{className:"text-slate-300",children:["Currently driving rover ",s]}),Y.jsx("button",{type:"button",onClick:R,disabled:m,className:"rounded-full bg-red-600 px-4 py-1 text-sm font-semibold text-white disabled:opacity-50",children:m?"Releasing…":"Release control"})]}):Y.jsxs("div",{className:"mt-4 text-slate-400",children:[Y.jsxs("p",{children:["Status: ",f?.status??"not assigned"]}),f?.queuePosition&&Y.jsxs("p",{children:["Queue position: ",f.queuePosition]})]})]})}function uv(){const{session:o}=qn(),i=Mt.useMemo(()=>JSON.stringify(o??{},null,2),[o]);return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Session snapshot"}),Y.jsx("pre",{className:"mt-4 max-h-64 overflow-y-auto text-sm text-teal-200",children:i})]})}function iv(){const{login:o,setRole:i}=qn(),[f,s]=Mt.useState(""),[m,E]=Mt.useState(""),[R,B]=Mt.useState(!1);async function M(A){A.preventDefault(),B(!0);try{await o(f,m),s(""),E("")}catch(Q){alert(Q.message)}finally{B(!1)}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Authentication"}),Y.jsxs("form",{className:"mt-4 flex flex-col gap-3",onSubmit:M,children:[Y.jsx("input",{className:"rounded-lg border border-slate-800 bg-slate-950/60 px-3 py-2 text-white",placeholder:"Username",value:f,onChange:A=>s(A.target.value)}),Y.jsx("input",{className:"rounded-lg border border-slate-800 bg-slate-950/60 px-3 py-2 text-white",placeholder:"Password",type:"password",value:m,onChange:A=>E(A.target.value)}),Y.jsx("button",{type:"submit",disabled:R,className:"rounded-lg bg-emerald-600 py-2 font-semibold text-white disabled:opacity-50",children:R?"Logging in…":"Login as admin"})]}),Y.jsxs("div",{className:"mt-4 flex gap-3",children:[Y.jsx("button",{type:"button",onClick:()=>i("user"),className:"rounded-lg border border-slate-700 px-3 py-1 text-sm text-slate-200",children:"Driver mode"}),Y.jsx("button",{type:"button",onClick:()=>i("spectator"),className:"rounded-lg border border-slate-700 px-3 py-1 text-sm text-slate-200",children:"Spectator mode"})]})]})}function cv(){const{connected:o,session:i}=qn();return Y.jsx("div",{className:"min-h-screen bg-slate-950 text-slate-50",children:Y.jsxs("main",{className:"mx-auto flex max-w-6xl flex-col gap-6 px-6 py-10",children:[Y.jsxs("header",{className:"space-y-4",children:[Y.jsx("h1",{className:"text-4xl font-semibold text-white",children:"Multi Roomba Rover Console"}),Y.jsx(ev,{connected:o,role:i?.role,mode:i?.mode})]}),Y.jsxs("section",{className:"grid gap-6 lg:grid-cols-2",children:[Y.jsx(nv,{}),Y.jsx(av,{}),Y.jsx(iv,{}),Y.jsx(uv,{})]}),Y.jsx(lv,{})]})})}l0.createRoot(document.getElementById("root")).render(Y.jsx(Mt.StrictMode,{children:Y.jsx(F0,{children:Y.jsx(tv,{children:Y.jsx(cv,{})})})})); +`+n.stack}}var fi=Object.prototype.hasOwnProperty,si=o.unstable_scheduleCallback,oi=o.unstable_cancelCallback,Od=o.unstable_shouldYield,Nd=o.unstable_requestPaint,Pt=o.unstable_now,Md=o.unstable_getCurrentPriorityLevel,kf=o.unstable_ImmediatePriority,Wf=o.unstable_UserBlockingPriority,Ba=o.unstable_NormalPriority,Rd=o.unstable_LowPriority,$f=o.unstable_IdlePriority,Dd=o.log,Ud=o.unstable_setDisableYieldValue,Yn=null,te=null;function ll(t){if(typeof Dd=="function"&&Ud(t),te&&typeof te.setStrictMode=="function")try{te.setStrictMode(Yn,t)}catch{}}var ee=Math.clz32?Math.clz32:Bd,xd=Math.log,Cd=Math.LN2;function Bd(t){return t>>>=0,t===0?32:31-(xd(t)/Cd|0)|0}var qa=256,Ha=262144,Ya=4194304;function Dl(t){var e=t&42;if(e!==0)return e;switch(t&-t){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return t&261888;case 262144:case 524288:case 1048576:case 2097152:return t&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return t&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return t}}function ja(t,e,l){var n=t.pendingLanes;if(n===0)return 0;var a=0,u=t.suspendedLanes,c=t.pingedLanes;t=t.warmLanes;var r=n&134217727;return r!==0?(n=r&~u,n!==0?a=Dl(n):(c&=r,c!==0?a=Dl(c):l||(l=r&~t,l!==0&&(a=Dl(l))))):(r=n&~u,r!==0?a=Dl(r):c!==0?a=Dl(c):l||(l=n&~t,l!==0&&(a=Dl(l)))),a===0?0:e!==0&&e!==a&&(e&u)===0&&(u=a&-a,l=e&-e,u>=l||u===32&&(l&4194048)!==0)?e:a}function jn(t,e){return(t.pendingLanes&~(t.suspendedLanes&~t.pingedLanes)&e)===0}function qd(t,e){switch(t){case 1:case 2:case 4:case 8:case 64:return e+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 e+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 Ff(){var t=Ya;return Ya<<=1,(Ya&62914560)===0&&(Ya=4194304),t}function ri(t){for(var e=[],l=0;31>l;l++)e.push(t);return e}function Ln(t,e){t.pendingLanes|=e,e!==268435456&&(t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0)}function Hd(t,e,l,n,a,u){var c=t.pendingLanes;t.pendingLanes=l,t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0,t.expiredLanes&=l,t.entangledLanes&=l,t.errorRecoveryDisabledLanes&=l,t.shellSuspendCounter=0;var r=t.entanglements,h=t.expirationTimes,p=t.hiddenUpdates;for(l=c&~l;0"u")return null;try{return t.activeElement||t.body}catch{return t.body}}var Gd=/[\n"\\]/g;function re(t){return t.replace(Gd,function(e){return"\\"+e.charCodeAt(0).toString(16)+" "})}function gi(t,e,l,n,a,u,c,r){t.name="",c!=null&&typeof c!="function"&&typeof c!="symbol"&&typeof c!="boolean"?t.type=c:t.removeAttribute("type"),e!=null?c==="number"?(e===0&&t.value===""||t.value!=e)&&(t.value=""+oe(e)):t.value!==""+oe(e)&&(t.value=""+oe(e)):c!=="submit"&&c!=="reset"||t.removeAttribute("value"),e!=null?pi(t,c,oe(e)):l!=null?pi(t,c,oe(l)):n!=null&&t.removeAttribute("value"),a==null&&u!=null&&(t.defaultChecked=!!u),a!=null&&(t.checked=a&&typeof a!="function"&&typeof a!="symbol"),r!=null&&typeof r!="function"&&typeof r!="symbol"&&typeof r!="boolean"?t.name=""+oe(r):t.removeAttribute("name")}function os(t,e,l,n,a,u,c,r){if(u!=null&&typeof u!="function"&&typeof u!="symbol"&&typeof u!="boolean"&&(t.type=u),e!=null||l!=null){if(!(u!=="submit"&&u!=="reset"||e!=null)){vi(t);return}l=l!=null?""+oe(l):"",e=e!=null?""+oe(e):l,r||e===t.value||(t.value=e),t.defaultValue=e}n=n??a,n=typeof n!="function"&&typeof n!="symbol"&&!!n,t.checked=r?t.checked:!!n,t.defaultChecked=!!n,c!=null&&typeof c!="function"&&typeof c!="symbol"&&typeof c!="boolean"&&(t.name=c),vi(t)}function pi(t,e,l){e==="number"&&Qa(t.ownerDocument)===t||t.defaultValue===""+l||(t.defaultValue=""+l)}function tn(t,e,l,n){if(t=t.options,e){e={};for(var a=0;a"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Ti=!1;if(Le)try{var Vn={};Object.defineProperty(Vn,"passive",{get:function(){Ti=!0}}),window.addEventListener("test",Vn,Vn),window.removeEventListener("test",Vn,Vn)}catch{Ti=!1}var al=null,Ai=null,Va=null;function gs(){if(Va)return Va;var t,e=Ai,l=e.length,n,a="value"in al?al.value:al.textContent,u=a.length;for(t=0;t=Kn),Ts=" ",As=!1;function zs(t,e){switch(t){case"keyup":return vy.indexOf(e.keyCode)!==-1;case"keydown":return e.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Os(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var an=!1;function py(t,e){switch(t){case"compositionend":return Os(e);case"keypress":return e.which!==32?null:(As=!0,Ts);case"textInput":return t=e.data,t===Ts&&As?null:t;default:return null}}function by(t,e){if(an)return t==="compositionend"||!Ri&&zs(t,e)?(t=gs(),Va=Ai=al=null,an=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(e.ctrlKey||e.altKey||e.metaKey)||e.ctrlKey&&e.altKey){if(e.char&&1=e)return{node:l,offset:e-t};t=n}t:{for(;l;){if(l.nextSibling){l=l.nextSibling;break t}l=l.parentNode}l=void 0}l=Bs(l)}}function Hs(t,e){return t&&e?t===e?!0:t&&t.nodeType===3?!1:e&&e.nodeType===3?Hs(t,e.parentNode):"contains"in t?t.contains(e):t.compareDocumentPosition?!!(t.compareDocumentPosition(e)&16):!1:!1}function Ys(t){t=t!=null&&t.ownerDocument!=null&&t.ownerDocument.defaultView!=null?t.ownerDocument.defaultView:window;for(var e=Qa(t.document);e instanceof t.HTMLIFrameElement;){try{var l=typeof e.contentWindow.location.href=="string"}catch{l=!1}if(l)t=e.contentWindow;else break;e=Qa(t.document)}return e}function xi(t){var e=t&&t.nodeName&&t.nodeName.toLowerCase();return e&&(e==="input"&&(t.type==="text"||t.type==="search"||t.type==="tel"||t.type==="url"||t.type==="password")||e==="textarea"||t.contentEditable==="true")}var Ny=Le&&"documentMode"in document&&11>=document.documentMode,un=null,Ci=null,$n=null,Bi=!1;function js(t,e,l){var n=l.window===l?l.document:l.nodeType===9?l:l.ownerDocument;Bi||un==null||un!==Qa(n)||(n=un,"selectionStart"in n&&xi(n)?n={start:n.selectionStart,end:n.selectionEnd}:(n=(n.ownerDocument&&n.ownerDocument.defaultView||window).getSelection(),n={anchorNode:n.anchorNode,anchorOffset:n.anchorOffset,focusNode:n.focusNode,focusOffset:n.focusOffset}),$n&&Wn($n,n)||($n=n,n=Hu(Ci,"onSelect"),0>=c,a-=c,Re=1<<32-ee(e)+a|l<w?(F=H,H=null):F=H.sibling;var lt=b(v,H,g[w],z);if(lt===null){H===null&&(H=F);break}t&&H&<.alternate===null&&e(v,H),d=u(lt,d,w),et===null?j=lt:et.sibling=lt,et=lt,H=F}if(w===g.length)return l(v,H),P&&Qe(v,w),j;if(H===null){for(;ww?(F=H,H=null):F=H.sibling;var Ol=b(v,H,lt.value,z);if(Ol===null){H===null&&(H=F);break}t&&H&&Ol.alternate===null&&e(v,H),d=u(Ol,d,w),et===null?j=Ol:et.sibling=Ol,et=Ol,H=F}if(lt.done)return l(v,H),P&&Qe(v,w),j;if(H===null){for(;!lt.done;w++,lt=g.next())lt=O(v,lt.value,z),lt!==null&&(d=u(lt,d,w),et===null?j=lt:et.sibling=lt,et=lt);return P&&Qe(v,w),j}for(H=n(H);!lt.done;w++,lt=g.next())lt=S(H,v,w,lt.value,z),lt!==null&&(t&<.alternate!==null&&H.delete(lt.key===null?w:lt.key),d=u(lt,d,w),et===null?j=lt:et.sibling=lt,et=lt);return t&&H.forEach(function(Jm){return e(v,Jm)}),P&&Qe(v,w),j}function ot(v,d,g,z){if(typeof g=="object"&&g!==null&&g.type===Ut&&g.key===null&&(g=g.props.children),typeof g=="object"&&g!==null){switch(g.$$typeof){case Yt:t:{for(var j=g.key;d!==null;){if(d.key===j){if(j=g.type,j===Ut){if(d.tag===7){l(v,d.sibling),z=a(d,g.props.children),z.return=v,v=z;break t}}else if(d.elementType===j||typeof j=="object"&&j!==null&&j.$$typeof===Vt&&Ql(j)===d.type){l(v,d.sibling),z=a(d,g.props),la(z,g),z.return=v,v=z;break t}l(v,d);break}else e(v,d);d=d.sibling}g.type===Ut?(z=Hl(g.props.children,v.mode,z,g.key),z.return=v,v=z):(z=Pa(g.type,g.key,g.props,null,v.mode,z),la(z,g),z.return=v,v=z)}return c(v);case _t:t:{for(j=g.key;d!==null;){if(d.key===j)if(d.tag===4&&d.stateNode.containerInfo===g.containerInfo&&d.stateNode.implementation===g.implementation){l(v,d.sibling),z=a(d,g.children||[]),z.return=v,v=z;break t}else{l(v,d);break}else e(v,d);d=d.sibling}z=Qi(g,v.mode,z),z.return=v,v=z}return c(v);case Vt:return g=Ql(g),ot(v,d,g,z)}if(_e(g))return C(v,d,g,z);if(Zt(g)){if(j=Zt(g),typeof j!="function")throw Error(s(150));return g=j.call(g),L(v,d,g,z)}if(typeof g.then=="function")return ot(v,d,iu(g),z);if(g.$$typeof===jt)return ot(v,d,lu(v,g),z);cu(v,g)}return typeof g=="string"&&g!==""||typeof g=="number"||typeof g=="bigint"?(g=""+g,d!==null&&d.tag===6?(l(v,d.sibling),z=a(d,g),z.return=v,v=z):(l(v,d),z=Xi(g,v.mode,z),z.return=v,v=z),c(v)):l(v,d)}return function(v,d,g,z){try{ea=0;var j=ot(v,d,g,z);return gn=null,j}catch(H){if(H===vn||H===au)throw H;var et=ne(29,H,null,v.mode);return et.lanes=z,et.return=v,et}finally{}}}var Vl=co(!0),fo=co(!1),sl=!1;function Pi(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function tc(t,e){t=t.updateQueue,e.updateQueue===t&&(e.updateQueue={baseState:t.baseState,firstBaseUpdate:t.firstBaseUpdate,lastBaseUpdate:t.lastBaseUpdate,shared:t.shared,callbacks:null})}function ol(t){return{lane:t,tag:0,payload:null,callback:null,next:null}}function rl(t,e,l){var n=t.updateQueue;if(n===null)return null;if(n=n.shared,(nt&2)!==0){var a=n.pending;return a===null?e.next=e:(e.next=a.next,a.next=e),n.pending=e,e=Ia(t),ws(t,null,l),e}return Fa(t,n,e,l),Ia(t)}function na(t,e,l){if(e=e.updateQueue,e!==null&&(e=e.shared,(l&4194048)!==0)){var n=e.lanes;n&=t.pendingLanes,l|=n,e.lanes=l,Pf(t,l)}}function ec(t,e){var l=t.updateQueue,n=t.alternate;if(n!==null&&(n=n.updateQueue,l===n)){var a=null,u=null;if(l=l.firstBaseUpdate,l!==null){do{var c={lane:l.lane,tag:l.tag,payload:l.payload,callback:null,next:null};u===null?a=u=c:u=u.next=c,l=l.next}while(l!==null);u===null?a=u=e:u=u.next=e}else a=u=e;l={baseState:n.baseState,firstBaseUpdate:a,lastBaseUpdate:u,shared:n.shared,callbacks:n.callbacks},t.updateQueue=l;return}t=l.lastBaseUpdate,t===null?l.firstBaseUpdate=e:t.next=e,l.lastBaseUpdate=e}var lc=!1;function aa(){if(lc){var t=mn;if(t!==null)throw t}}function ua(t,e,l,n){lc=!1;var a=t.updateQueue;sl=!1;var u=a.firstBaseUpdate,c=a.lastBaseUpdate,r=a.shared.pending;if(r!==null){a.shared.pending=null;var h=r,p=h.next;h.next=null,c===null?u=p:c.next=p,c=h;var _=t.alternate;_!==null&&(_=_.updateQueue,r=_.lastBaseUpdate,r!==c&&(r===null?_.firstBaseUpdate=p:r.next=p,_.lastBaseUpdate=h))}if(u!==null){var O=a.baseState;c=0,_=p=h=null,r=u;do{var b=r.lane&-536870913,S=b!==r.lane;if(S?($&b)===b:(n&b)===b){b!==0&&b===yn&&(lc=!0),_!==null&&(_=_.next={lane:0,tag:r.tag,payload:r.payload,callback:null,next:null});t:{var C=t,L=r;b=e;var ot=l;switch(L.tag){case 1:if(C=L.payload,typeof C=="function"){O=C.call(ot,O,b);break t}O=C;break t;case 3:C.flags=C.flags&-65537|128;case 0:if(C=L.payload,b=typeof C=="function"?C.call(ot,O,b):C,b==null)break t;O=x({},O,b);break t;case 2:sl=!0}}b=r.callback,b!==null&&(t.flags|=64,S&&(t.flags|=8192),S=a.callbacks,S===null?a.callbacks=[b]:S.push(b))}else S={lane:b,tag:r.tag,payload:r.payload,callback:r.callback,next:null},_===null?(p=_=S,h=O):_=_.next=S,c|=b;if(r=r.next,r===null){if(r=a.shared.pending,r===null)break;S=r,r=S.next,S.next=null,a.lastBaseUpdate=S,a.shared.pending=null}}while(!0);_===null&&(h=O),a.baseState=h,a.firstBaseUpdate=p,a.lastBaseUpdate=_,u===null&&(a.shared.lanes=0),vl|=c,t.lanes=c,t.memoizedState=O}}function so(t,e){if(typeof t!="function")throw Error(s(191,t));t.call(e)}function oo(t,e){var l=t.callbacks;if(l!==null)for(t.callbacks=null,t=0;tu?u:8;var c=T.T,r={};T.T=r,_c(t,!1,e,l);try{var h=a(),p=T.S;if(p!==null&&p(r,h),h!==null&&typeof h=="object"&&typeof h.then=="function"){var _=Hy(h,n);fa(t,e,_,fe(t))}else fa(t,e,n,fe(t))}catch(O){fa(t,e,{then:function(){},status:"rejected",reason:O},fe())}finally{D.p=u,c!==null&&r.types!==null&&(c.types=r.types),T.T=c}}function Gy(){}function bc(t,e,l,n){if(t.tag!==5)throw Error(s(476));var a=Vo(t).queue;Go(t,a,e,X,l===null?Gy:function(){return Zo(t),l(n)})}function Vo(t){var e=t.memoizedState;if(e!==null)return e;e={memoizedState:X,baseState:X,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:we,lastRenderedState:X},next:null};var l={};return e.next={memoizedState:l,baseState:l,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:we,lastRenderedState:l},next:null},t.memoizedState=e,t=t.alternate,t!==null&&(t.memoizedState=e),e}function Zo(t){var e=Vo(t);e.next===null&&(e=t.alternate.memoizedState),fa(t,e.next.queue,{},fe())}function Sc(){return Bt(za)}function wo(){return St().memoizedState}function Ko(){return St().memoizedState}function Vy(t){for(var e=t.return;e!==null;){switch(e.tag){case 24:case 3:var l=fe();t=ol(l);var n=rl(e,t,l);n!==null&&(Ft(n,e,l),na(n,e,l)),e={cache:Wi()},t.payload=e;return}e=e.return}}function Zy(t,e,l){var n=fe();l={lane:n,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},gu(t)?ko(e,l):(l=ji(t,e,l,n),l!==null&&(Ft(l,t,n),Wo(l,e,n)))}function Jo(t,e,l){var n=fe();fa(t,e,l,n)}function fa(t,e,l,n){var a={lane:n,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null};if(gu(t))ko(e,a);else{var u=t.alternate;if(t.lanes===0&&(u===null||u.lanes===0)&&(u=e.lastRenderedReducer,u!==null))try{var c=e.lastRenderedState,r=u(c,l);if(a.hasEagerState=!0,a.eagerState=r,le(r,c))return Fa(t,e,a,0),ht===null&&$a(),!1}catch{}finally{}if(l=ji(t,e,a,n),l!==null)return Ft(l,t,n),Wo(l,e,n),!0}return!1}function _c(t,e,l,n){if(n={lane:2,revertLane:Pc(),gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},gu(t)){if(e)throw Error(s(479))}else e=ji(t,l,n,2),e!==null&&Ft(e,t,2)}function gu(t){var e=t.alternate;return t===Z||e!==null&&e===Z}function ko(t,e){bn=ou=!0;var l=t.pending;l===null?e.next=e:(e.next=l.next,l.next=e),t.pending=e}function Wo(t,e,l){if((l&4194048)!==0){var n=e.lanes;n&=t.pendingLanes,l|=n,e.lanes=l,Pf(t,l)}}var sa={readContext:Bt,use:du,useCallback:vt,useContext:vt,useEffect:vt,useImperativeHandle:vt,useLayoutEffect:vt,useInsertionEffect:vt,useMemo:vt,useReducer:vt,useRef:vt,useState:vt,useDebugValue:vt,useDeferredValue:vt,useTransition:vt,useSyncExternalStore:vt,useId:vt,useHostTransitionStatus:vt,useFormState:vt,useActionState:vt,useOptimistic:vt,useMemoCache:vt,useCacheRefresh:vt};sa.useEffectEvent=vt;var $o={readContext:Bt,use:du,useCallback:function(t,e){return Qt().memoizedState=[t,e===void 0?null:e],t},useContext:Bt,useEffect:Co,useImperativeHandle:function(t,e,l){l=l!=null?l.concat([t]):null,mu(4194308,4,Yo.bind(null,e,t),l)},useLayoutEffect:function(t,e){return mu(4194308,4,t,e)},useInsertionEffect:function(t,e){mu(4,2,t,e)},useMemo:function(t,e){var l=Qt();e=e===void 0?null:e;var n=t();if(Zl){ll(!0);try{t()}finally{ll(!1)}}return l.memoizedState=[n,e],n},useReducer:function(t,e,l){var n=Qt();if(l!==void 0){var a=l(e);if(Zl){ll(!0);try{l(e)}finally{ll(!1)}}}else a=e;return n.memoizedState=n.baseState=a,t={pending:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:a},n.queue=t,t=t.dispatch=Zy.bind(null,Z,t),[n.memoizedState,t]},useRef:function(t){var e=Qt();return t={current:t},e.memoizedState=t},useState:function(t){t=yc(t);var e=t.queue,l=Jo.bind(null,Z,e);return e.dispatch=l,[t.memoizedState,l]},useDebugValue:gc,useDeferredValue:function(t,e){var l=Qt();return pc(l,t,e)},useTransition:function(){var t=yc(!1);return t=Go.bind(null,Z,t.queue,!0,!1),Qt().memoizedState=t,[!1,t]},useSyncExternalStore:function(t,e,l){var n=Z,a=Qt();if(P){if(l===void 0)throw Error(s(407));l=l()}else{if(l=e(),ht===null)throw Error(s(349));($&127)!==0||go(n,e,l)}a.memoizedState=l;var u={value:l,getSnapshot:e};return a.queue=u,Co(bo.bind(null,n,u,t),[t]),n.flags|=2048,_n(9,{destroy:void 0},po.bind(null,n,u,l,e),null),l},useId:function(){var t=Qt(),e=ht.identifierPrefix;if(P){var l=De,n=Re;l=(n&~(1<<32-ee(n)-1)).toString(32)+l,e="_"+e+"R_"+l,l=ru++,0<\/script>",u=u.removeChild(u.firstChild);break;case"select":u=typeof n.is=="string"?c.createElement("select",{is:n.is}):c.createElement("select"),n.multiple?u.multiple=!0:n.size&&(u.size=n.size);break;default:u=typeof n.is=="string"?c.createElement(a,{is:n.is}):c.createElement(a)}}u[xt]=e,u[wt]=n;t:for(c=e.child;c!==null;){if(c.tag===5||c.tag===6)u.appendChild(c.stateNode);else if(c.tag!==4&&c.tag!==27&&c.child!==null){c.child.return=c,c=c.child;continue}if(c===e)break t;for(;c.sibling===null;){if(c.return===null||c.return===e)break t;c=c.return}c.sibling.return=c.return,c=c.sibling}e.stateNode=u;t:switch(Ht(u,a,n),a){case"button":case"input":case"select":case"textarea":n=!!n.autoFocus;break t;case"img":n=!0;break t;default:n=!1}n&&Je(e)}}return yt(e),qc(e,e.type,t===null?null:t.memoizedProps,e.pendingProps,l),null;case 6:if(t&&e.stateNode!=null)t.memoizedProps!==n&&Je(e);else{if(typeof n!="string"&&e.stateNode===null)throw Error(s(166));if(t=J.current,hn(e)){if(t=e.stateNode,l=e.memoizedProps,n=null,a=Ct,a!==null)switch(a.tag){case 27:case 5:n=a.memoizedProps}t[xt]=e,t=!!(t.nodeValue===l||n!==null&&n.suppressHydrationWarning===!0||mh(t.nodeValue,l)),t||cl(e,!0)}else t=Yu(t).createTextNode(n),t[xt]=e,e.stateNode=t}return yt(e),null;case 31:if(l=e.memoizedState,t===null||t.memoizedState!==null){if(n=hn(e),l!==null){if(t===null){if(!n)throw Error(s(318));if(t=e.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(s(557));t[xt]=e}else Yl(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;yt(e),t=!1}else l=wi(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=l),t=!0;if(!t)return e.flags&256?(ue(e),e):(ue(e),null);if((e.flags&128)!==0)throw Error(s(558))}return yt(e),null;case 13:if(n=e.memoizedState,t===null||t.memoizedState!==null&&t.memoizedState.dehydrated!==null){if(a=hn(e),n!==null&&n.dehydrated!==null){if(t===null){if(!a)throw Error(s(318));if(a=e.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(s(317));a[xt]=e}else Yl(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;yt(e),a=!1}else a=wi(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=a),a=!0;if(!a)return e.flags&256?(ue(e),e):(ue(e),null)}return ue(e),(e.flags&128)!==0?(e.lanes=l,e):(l=n!==null,t=t!==null&&t.memoizedState!==null,l&&(n=e.child,a=null,n.alternate!==null&&n.alternate.memoizedState!==null&&n.alternate.memoizedState.cachePool!==null&&(a=n.alternate.memoizedState.cachePool.pool),u=null,n.memoizedState!==null&&n.memoizedState.cachePool!==null&&(u=n.memoizedState.cachePool.pool),u!==a&&(n.flags|=2048)),l!==t&&l&&(e.child.flags|=8192),Eu(e,e.updateQueue),yt(e),null);case 4:return pt(),t===null&&nf(e.stateNode.containerInfo),yt(e),null;case 10:return Ve(e.type),yt(e),null;case 19:if(N(bt),n=e.memoizedState,n===null)return yt(e),null;if(a=(e.flags&128)!==0,u=n.rendering,u===null)if(a)ra(n,!1);else{if(gt!==0||t!==null&&(t.flags&128)!==0)for(t=e.child;t!==null;){if(u=su(t),u!==null){for(e.flags|=128,ra(n,!1),t=u.updateQueue,e.updateQueue=t,Eu(e,t),e.subtreeFlags=0,t=l,l=e.child;l!==null;)Ks(l,t),l=l.sibling;return U(bt,bt.current&1|2),P&&Qe(e,n.treeForkCount),e.child}t=t.sibling}n.tail!==null&&Pt()>Nu&&(e.flags|=128,a=!0,ra(n,!1),e.lanes=4194304)}else{if(!a)if(t=su(u),t!==null){if(e.flags|=128,a=!0,t=t.updateQueue,e.updateQueue=t,Eu(e,t),ra(n,!0),n.tail===null&&n.tailMode==="hidden"&&!u.alternate&&!P)return yt(e),null}else 2*Pt()-n.renderingStartTime>Nu&&l!==536870912&&(e.flags|=128,a=!0,ra(n,!1),e.lanes=4194304);n.isBackwards?(u.sibling=e.child,e.child=u):(t=n.last,t!==null?t.sibling=u:e.child=u,n.last=u)}return n.tail!==null?(t=n.tail,n.rendering=t,n.tail=t.sibling,n.renderingStartTime=Pt(),t.sibling=null,l=bt.current,U(bt,a?l&1|2:l&1),P&&Qe(e,n.treeForkCount),t):(yt(e),null);case 22:case 23:return ue(e),ac(),n=e.memoizedState!==null,t!==null?t.memoizedState!==null!==n&&(e.flags|=8192):n&&(e.flags|=8192),n?(l&536870912)!==0&&(e.flags&128)===0&&(yt(e),e.subtreeFlags&6&&(e.flags|=8192)):yt(e),l=e.updateQueue,l!==null&&Eu(e,l.retryQueue),l=null,t!==null&&t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(l=t.memoizedState.cachePool.pool),n=null,e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),n!==l&&(e.flags|=2048),t!==null&&N(Xl),null;case 24:return l=null,t!==null&&(l=t.memoizedState.cache),e.memoizedState.cache!==l&&(e.flags|=2048),Ve(Et),yt(e),null;case 25:return null;case 30:return null}throw Error(s(156,e.tag))}function Wy(t,e){switch(Vi(e),e.tag){case 1:return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 3:return Ve(Et),pt(),t=e.flags,(t&65536)!==0&&(t&128)===0?(e.flags=t&-65537|128,e):null;case 26:case 27:case 5:return Ca(e),null;case 31:if(e.memoizedState!==null){if(ue(e),e.alternate===null)throw Error(s(340));Yl()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 13:if(ue(e),t=e.memoizedState,t!==null&&t.dehydrated!==null){if(e.alternate===null)throw Error(s(340));Yl()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 19:return N(bt),null;case 4:return pt(),null;case 10:return Ve(e.type),null;case 22:case 23:return ue(e),ac(),t!==null&&N(Xl),t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 24:return Ve(Et),null;case 25:return null;default:return null}}function Sr(t,e){switch(Vi(e),e.tag){case 3:Ve(Et),pt();break;case 26:case 27:case 5:Ca(e);break;case 4:pt();break;case 31:e.memoizedState!==null&&ue(e);break;case 13:ue(e);break;case 19:N(bt);break;case 10:Ve(e.type);break;case 22:case 23:ue(e),ac(),t!==null&&N(Xl);break;case 24:Ve(Et)}}function ha(t,e){try{var l=e.updateQueue,n=l!==null?l.lastEffect:null;if(n!==null){var a=n.next;l=a;do{if((l.tag&t)===t){n=void 0;var u=l.create,c=l.inst;n=u(),c.destroy=n}l=l.next}while(l!==a)}}catch(r){it(e,e.return,r)}}function yl(t,e,l){try{var n=e.updateQueue,a=n!==null?n.lastEffect:null;if(a!==null){var u=a.next;n=u;do{if((n.tag&t)===t){var c=n.inst,r=c.destroy;if(r!==void 0){c.destroy=void 0,a=e;var h=l,p=r;try{p()}catch(_){it(a,h,_)}}}n=n.next}while(n!==u)}}catch(_){it(e,e.return,_)}}function _r(t){var e=t.updateQueue;if(e!==null){var l=t.stateNode;try{oo(e,l)}catch(n){it(t,t.return,n)}}}function Er(t,e,l){l.props=wl(t.type,t.memoizedProps),l.state=t.memoizedState;try{l.componentWillUnmount()}catch(n){it(t,e,n)}}function da(t,e){try{var l=t.ref;if(l!==null){switch(t.tag){case 26:case 27:case 5:var n=t.stateNode;break;case 30:n=t.stateNode;break;default:n=t.stateNode}typeof l=="function"?t.refCleanup=l(n):l.current=n}}catch(a){it(t,e,a)}}function Ue(t,e){var l=t.ref,n=t.refCleanup;if(l!==null)if(typeof n=="function")try{n()}catch(a){it(t,e,a)}finally{t.refCleanup=null,t=t.alternate,t!=null&&(t.refCleanup=null)}else if(typeof l=="function")try{l(null)}catch(a){it(t,e,a)}else l.current=null}function Tr(t){var e=t.type,l=t.memoizedProps,n=t.stateNode;try{t:switch(e){case"button":case"input":case"select":case"textarea":l.autoFocus&&n.focus();break t;case"img":l.src?n.src=l.src:l.srcSet&&(n.srcset=l.srcSet)}}catch(a){it(t,t.return,a)}}function Hc(t,e,l){try{var n=t.stateNode;gm(n,t.type,l,e),n[wt]=e}catch(a){it(t,t.return,a)}}function Ar(t){return t.tag===5||t.tag===3||t.tag===26||t.tag===27&&_l(t.type)||t.tag===4}function Yc(t){t:for(;;){for(;t.sibling===null;){if(t.return===null||Ar(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.tag===27&&_l(t.type)||t.flags&2||t.child===null||t.tag===4)continue t;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function jc(t,e,l){var n=t.tag;if(n===5||n===6)t=t.stateNode,e?(l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l).insertBefore(t,e):(e=l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l,e.appendChild(t),l=l._reactRootContainer,l!=null||e.onclick!==null||(e.onclick=je));else if(n!==4&&(n===27&&_l(t.type)&&(l=t.stateNode,e=null),t=t.child,t!==null))for(jc(t,e,l),t=t.sibling;t!==null;)jc(t,e,l),t=t.sibling}function Tu(t,e,l){var n=t.tag;if(n===5||n===6)t=t.stateNode,e?l.insertBefore(t,e):l.appendChild(t);else if(n!==4&&(n===27&&_l(t.type)&&(l=t.stateNode),t=t.child,t!==null))for(Tu(t,e,l),t=t.sibling;t!==null;)Tu(t,e,l),t=t.sibling}function zr(t){var e=t.stateNode,l=t.memoizedProps;try{for(var n=t.type,a=e.attributes;a.length;)e.removeAttributeNode(a[0]);Ht(e,n,l),e[xt]=t,e[wt]=l}catch(u){it(t,t.return,u)}}var ke=!1,zt=!1,Lc=!1,Or=typeof WeakSet=="function"?WeakSet:Set,Dt=null;function $y(t,e){if(t=t.containerInfo,cf=Zu,t=Ys(t),xi(t)){if("selectionStart"in t)var l={start:t.selectionStart,end:t.selectionEnd};else t:{l=(l=t.ownerDocument)&&l.defaultView||window;var n=l.getSelection&&l.getSelection();if(n&&n.rangeCount!==0){l=n.anchorNode;var a=n.anchorOffset,u=n.focusNode;n=n.focusOffset;try{l.nodeType,u.nodeType}catch{l=null;break t}var c=0,r=-1,h=-1,p=0,_=0,O=t,b=null;e:for(;;){for(var S;O!==l||a!==0&&O.nodeType!==3||(r=c+a),O!==u||n!==0&&O.nodeType!==3||(h=c+n),O.nodeType===3&&(c+=O.nodeValue.length),(S=O.firstChild)!==null;)b=O,O=S;for(;;){if(O===t)break e;if(b===l&&++p===a&&(r=c),b===u&&++_===n&&(h=c),(S=O.nextSibling)!==null)break;O=b,b=O.parentNode}O=S}l=r===-1||h===-1?null:{start:r,end:h}}else l=null}l=l||{start:0,end:0}}else l=null;for(ff={focusedElem:t,selectionRange:l},Zu=!1,Dt=e;Dt!==null;)if(e=Dt,t=e.child,(e.subtreeFlags&1028)!==0&&t!==null)t.return=e,Dt=t;else for(;Dt!==null;){switch(e=Dt,u=e.alternate,t=e.flags,e.tag){case 0:if((t&4)!==0&&(t=e.updateQueue,t=t!==null?t.events:null,t!==null))for(l=0;l title"))),Ht(u,n,l),u[xt]=t,Rt(u),n=u;break t;case"link":var c=xh("link","href",a).get(n+(l.href||""));if(c){for(var r=0;rot&&(c=ot,ot=L,L=c);var v=qs(r,L),d=qs(r,ot);if(v&&d&&(S.rangeCount!==1||S.anchorNode!==v.node||S.anchorOffset!==v.offset||S.focusNode!==d.node||S.focusOffset!==d.offset)){var g=O.createRange();g.setStart(v.node,v.offset),S.removeAllRanges(),L>ot?(S.addRange(g),S.extend(d.node,d.offset)):(g.setEnd(d.node,d.offset),S.addRange(g))}}}}for(O=[],S=r;S=S.parentNode;)S.nodeType===1&&O.push({element:S,left:S.scrollLeft,top:S.scrollTop});for(typeof r.focus=="function"&&r.focus(),r=0;rl?32:l,T.T=null,l=Kc,Kc=null;var u=pl,c=Pe;if(Nt=0,On=pl=null,Pe=0,(nt&6)!==0)throw Error(s(331));var r=nt;if(nt|=4,Yr(u.current),Br(u,u.current,c,l),nt=r,ba(0,!1),te&&typeof te.onPostCommitFiberRoot=="function")try{te.onPostCommitFiberRoot(Yn,u)}catch{}return!0}finally{D.p=a,T.T=n,eh(t,e)}}function nh(t,e,l){e=de(l,e),e=zc(t.stateNode,e,2),t=rl(t,e,2),t!==null&&(Ln(t,2),xe(t))}function it(t,e,l){if(t.tag===3)nh(t,t,l);else for(;e!==null;){if(e.tag===3){nh(e,t,l);break}else if(e.tag===1){var n=e.stateNode;if(typeof e.type.getDerivedStateFromError=="function"||typeof n.componentDidCatch=="function"&&(gl===null||!gl.has(n))){t=de(l,t),l=ar(2),n=rl(e,l,2),n!==null&&(ur(l,n,e,t),Ln(n,2),xe(n));break}}e=e.return}}function $c(t,e,l){var n=t.pingCache;if(n===null){n=t.pingCache=new Py;var a=new Set;n.set(e,a)}else a=n.get(e),a===void 0&&(a=new Set,n.set(e,a));a.has(l)||(Gc=!0,a.add(l),t=am.bind(null,t,e,l),e.then(t,t))}function am(t,e,l){var n=t.pingCache;n!==null&&n.delete(e),t.pingedLanes|=t.suspendedLanes&l,t.warmLanes&=~l,ht===t&&($&l)===l&&(gt===4||gt===3&&($&62914560)===$&&300>Pt()-Ou?(nt&2)===0&&Nn(t,0):Vc|=l,zn===$&&(zn=0)),xe(t)}function ah(t,e){e===0&&(e=Ff()),t=ql(t,e),t!==null&&(Ln(t,e),xe(t))}function um(t){var e=t.memoizedState,l=0;e!==null&&(l=e.retryLane),ah(t,l)}function im(t,e){var l=0;switch(t.tag){case 31:case 13:var n=t.stateNode,a=t.memoizedState;a!==null&&(l=a.retryLane);break;case 19:n=t.stateNode;break;case 22:n=t.stateNode._retryCache;break;default:throw Error(s(314))}n!==null&&n.delete(e),ah(t,l)}function cm(t,e){return si(t,e)}var Cu=null,Rn=null,Fc=!1,Bu=!1,Ic=!1,Sl=0;function xe(t){t!==Rn&&t.next===null&&(Rn===null?Cu=Rn=t:Rn=Rn.next=t),Bu=!0,Fc||(Fc=!0,sm())}function ba(t,e){if(!Ic&&Bu){Ic=!0;do for(var l=!1,n=Cu;n!==null;){if(t!==0){var a=n.pendingLanes;if(a===0)var u=0;else{var c=n.suspendedLanes,r=n.pingedLanes;u=(1<<31-ee(42|t)+1)-1,u&=a&~(c&~r),u=u&201326741?u&201326741|1:u?u|2:0}u!==0&&(l=!0,fh(n,u))}else u=$,u=ja(n,n===ht?u:0,n.cancelPendingCommit!==null||n.timeoutHandle!==-1),(u&3)===0||jn(n,u)||(l=!0,fh(n,u));n=n.next}while(l);Ic=!1}}function fm(){uh()}function uh(){Bu=Fc=!1;var t=0;Sl!==0&&bm()&&(t=Sl);for(var e=Pt(),l=null,n=Cu;n!==null;){var a=n.next,u=ih(n,e);u===0?(n.next=null,l===null?Cu=a:l.next=a,a===null&&(Rn=l)):(l=n,(t!==0||(u&3)!==0)&&(Bu=!0)),n=a}Nt!==0&&Nt!==5||ba(t),Sl!==0&&(Sl=0)}function ih(t,e){for(var l=t.suspendedLanes,n=t.pingedLanes,a=t.expirationTimes,u=t.pendingLanes&-62914561;0r)break;var _=h.transferSize,O=h.initiatorType;_&&vh(O)&&(h=h.responseEnd,c+=_*(h"u"?null:document;function Mh(t,e,l){var n=Dn;if(n&&typeof e=="string"&&e){var a=re(e);a='link[rel="'+t+'"][href="'+a+'"]',typeof l=="string"&&(a+='[crossorigin="'+l+'"]'),Nh.has(a)||(Nh.add(a),t={rel:t,crossOrigin:l,href:e},n.querySelector(a)===null&&(e=n.createElement("link"),Ht(e,"link",t),Rt(e),n.head.appendChild(e)))}}function Mm(t){tl.D(t),Mh("dns-prefetch",t,null)}function Rm(t,e){tl.C(t,e),Mh("preconnect",t,e)}function Dm(t,e,l){tl.L(t,e,l);var n=Dn;if(n&&t&&e){var a='link[rel="preload"][as="'+re(e)+'"]';e==="image"&&l&&l.imageSrcSet?(a+='[imagesrcset="'+re(l.imageSrcSet)+'"]',typeof l.imageSizes=="string"&&(a+='[imagesizes="'+re(l.imageSizes)+'"]')):a+='[href="'+re(t)+'"]';var u=a;switch(e){case"style":u=Un(t);break;case"script":u=xn(t)}be.has(u)||(t=x({rel:"preload",href:e==="image"&&l&&l.imageSrcSet?void 0:t,as:e},l),be.set(u,t),n.querySelector(a)!==null||e==="style"&&n.querySelector(Ta(u))||e==="script"&&n.querySelector(Aa(u))||(e=n.createElement("link"),Ht(e,"link",t),Rt(e),n.head.appendChild(e)))}}function Um(t,e){tl.m(t,e);var l=Dn;if(l&&t){var n=e&&typeof e.as=="string"?e.as:"script",a='link[rel="modulepreload"][as="'+re(n)+'"][href="'+re(t)+'"]',u=a;switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":u=xn(t)}if(!be.has(u)&&(t=x({rel:"modulepreload",href:t},e),be.set(u,t),l.querySelector(a)===null)){switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(l.querySelector(Aa(u)))return}n=l.createElement("link"),Ht(n,"link",t),Rt(n),l.head.appendChild(n)}}}function xm(t,e,l){tl.S(t,e,l);var n=Dn;if(n&&t){var a=Il(n).hoistableStyles,u=Un(t);e=e||"default";var c=a.get(u);if(!c){var r={loading:0,preload:null};if(c=n.querySelector(Ta(u)))r.loading=5;else{t=x({rel:"stylesheet",href:t,"data-precedence":e},l),(l=be.get(u))&&mf(t,l);var h=c=n.createElement("link");Rt(h),Ht(h,"link",t),h._p=new Promise(function(p,_){h.onload=p,h.onerror=_}),h.addEventListener("load",function(){r.loading|=1}),h.addEventListener("error",function(){r.loading|=2}),r.loading|=4,Lu(c,e,n)}c={type:"stylesheet",instance:c,count:1,state:r},a.set(u,c)}}}function Cm(t,e){tl.X(t,e);var l=Dn;if(l&&t){var n=Il(l).hoistableScripts,a=xn(t),u=n.get(a);u||(u=l.querySelector(Aa(a)),u||(t=x({src:t,async:!0},e),(e=be.get(a))&&vf(t,e),u=l.createElement("script"),Rt(u),Ht(u,"link",t),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(a,u))}}function Bm(t,e){tl.M(t,e);var l=Dn;if(l&&t){var n=Il(l).hoistableScripts,a=xn(t),u=n.get(a);u||(u=l.querySelector(Aa(a)),u||(t=x({src:t,async:!0,type:"module"},e),(e=be.get(a))&&vf(t,e),u=l.createElement("script"),Rt(u),Ht(u,"link",t),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(a,u))}}function Rh(t,e,l,n){var a=(a=J.current)?ju(a):null;if(!a)throw Error(s(446));switch(t){case"meta":case"title":return null;case"style":return typeof l.precedence=="string"&&typeof l.href=="string"?(e=Un(l.href),l=Il(a).hoistableStyles,n=l.get(e),n||(n={type:"style",instance:null,count:0,state:null},l.set(e,n)),n):{type:"void",instance:null,count:0,state:null};case"link":if(l.rel==="stylesheet"&&typeof l.href=="string"&&typeof l.precedence=="string"){t=Un(l.href);var u=Il(a).hoistableStyles,c=u.get(t);if(c||(a=a.ownerDocument||a,c={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},u.set(t,c),(u=a.querySelector(Ta(t)))&&!u._p&&(c.instance=u,c.state.loading=5),be.has(t)||(l={rel:"preload",as:"style",href:l.href,crossOrigin:l.crossOrigin,integrity:l.integrity,media:l.media,hrefLang:l.hrefLang,referrerPolicy:l.referrerPolicy},be.set(t,l),u||qm(a,t,l,c.state))),e&&n===null)throw Error(s(528,""));return c}if(e&&n!==null)throw Error(s(529,""));return null;case"script":return e=l.async,l=l.src,typeof l=="string"&&e&&typeof e!="function"&&typeof e!="symbol"?(e=xn(l),l=Il(a).hoistableScripts,n=l.get(e),n||(n={type:"script",instance:null,count:0,state:null},l.set(e,n)),n):{type:"void",instance:null,count:0,state:null};default:throw Error(s(444,t))}}function Un(t){return'href="'+re(t)+'"'}function Ta(t){return'link[rel="stylesheet"]['+t+"]"}function Dh(t){return x({},t,{"data-precedence":t.precedence,precedence:null})}function qm(t,e,l,n){t.querySelector('link[rel="preload"][as="style"]['+e+"]")?n.loading=1:(e=t.createElement("link"),n.preload=e,e.addEventListener("load",function(){return n.loading|=1}),e.addEventListener("error",function(){return n.loading|=2}),Ht(e,"link",l),Rt(e),t.head.appendChild(e))}function xn(t){return'[src="'+re(t)+'"]'}function Aa(t){return"script[async]"+t}function Uh(t,e,l){if(e.count++,e.instance===null)switch(e.type){case"style":var n=t.querySelector('style[data-href~="'+re(l.href)+'"]');if(n)return e.instance=n,Rt(n),n;var a=x({},l,{"data-href":l.href,"data-precedence":l.precedence,href:null,precedence:null});return n=(t.ownerDocument||t).createElement("style"),Rt(n),Ht(n,"style",a),Lu(n,l.precedence,t),e.instance=n;case"stylesheet":a=Un(l.href);var u=t.querySelector(Ta(a));if(u)return e.state.loading|=4,e.instance=u,Rt(u),u;n=Dh(l),(a=be.get(a))&&mf(n,a),u=(t.ownerDocument||t).createElement("link"),Rt(u);var c=u;return c._p=new Promise(function(r,h){c.onload=r,c.onerror=h}),Ht(u,"link",n),e.state.loading|=4,Lu(u,l.precedence,t),e.instance=u;case"script":return u=xn(l.src),(a=t.querySelector(Aa(u)))?(e.instance=a,Rt(a),a):(n=l,(a=be.get(u))&&(n=x({},l),vf(n,a)),t=t.ownerDocument||t,a=t.createElement("script"),Rt(a),Ht(a,"link",n),t.head.appendChild(a),e.instance=a);case"void":return null;default:throw Error(s(443,e.type))}else e.type==="stylesheet"&&(e.state.loading&4)===0&&(n=e.instance,e.state.loading|=4,Lu(n,l.precedence,t));return e.instance}function Lu(t,e,l){for(var n=l.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=n.length?n[n.length-1]:null,u=a,c=0;c title"):null)}function Hm(t,e,l){if(l===1||e.itemProp!=null)return!1;switch(t){case"meta":case"title":return!0;case"style":if(typeof e.precedence!="string"||typeof e.href!="string"||e.href==="")break;return!0;case"link":if(typeof e.rel!="string"||typeof e.href!="string"||e.href===""||e.onLoad||e.onError)break;switch(e.rel){case"stylesheet":return t=e.disabled,typeof e.precedence=="string"&&t==null;default:return!0}case"script":if(e.async&&typeof e.async!="function"&&typeof e.async!="symbol"&&!e.onLoad&&!e.onError&&e.src&&typeof e.src=="string")return!0}return!1}function Bh(t){return!(t.type==="stylesheet"&&(t.state.loading&3)===0)}function Ym(t,e,l,n){if(l.type==="stylesheet"&&(typeof n.media!="string"||matchMedia(n.media).matches!==!1)&&(l.state.loading&4)===0){if(l.instance===null){var a=Un(n.href),u=e.querySelector(Ta(a));if(u){e=u._p,e!==null&&typeof e=="object"&&typeof e.then=="function"&&(t.count++,t=Qu.bind(t),e.then(t,t)),l.state.loading|=4,l.instance=u,Rt(u);return}u=e.ownerDocument||e,n=Dh(n),(a=be.get(a))&&mf(n,a),u=u.createElement("link"),Rt(u);var c=u;c._p=new Promise(function(r,h){c.onload=r,c.onerror=h}),Ht(u,"link",n),l.instance=u}t.stylesheets===null&&(t.stylesheets=new Map),t.stylesheets.set(l,e),(e=l.state.preload)&&(l.state.loading&3)===0&&(t.count++,l=Qu.bind(t),e.addEventListener("load",l),e.addEventListener("error",l))}}var gf=0;function jm(t,e){return t.stylesheets&&t.count===0&&Vu(t,t.stylesheets),0gf?50:800)+e);return t.unsuspend=l,function(){t.unsuspend=null,clearTimeout(n),clearTimeout(a)}}:null}function Qu(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Vu(this,this.stylesheets);else if(this.unsuspend){var t=this.unsuspend;this.unsuspend=null,t()}}}var Gu=null;function Vu(t,e){t.stylesheets=null,t.unsuspend!==null&&(t.count++,Gu=new Map,e.forEach(Lm,t),Gu=null,Qu.call(t))}function Lm(t,e){if(!(e.state.loading&4)){var l=Gu.get(t);if(l)var n=l.get(null);else{l=new Map,Gu.set(t,l);for(var a=t.querySelectorAll("link[data-precedence],style[data-precedence]"),u=0;u"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(o)}catch(i){console.error(i)}}return o(),Of.exports=e0(),Of.exports}var n0=l0();const Be=Object.create(null);Be.open="0";Be.close="1";Be.ping="2";Be.pong="3";Be.message="4";Be.upgrade="5";Be.noop="6";const Pu=Object.create(null);Object.keys(Be).forEach(o=>{Pu[Be[o]]=o});const Cf={type:"error",data:"parser error"},sd=typeof Blob=="function"||typeof Blob<"u"&&Object.prototype.toString.call(Blob)==="[object BlobConstructor]",od=typeof ArrayBuffer=="function",rd=o=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(o):o&&o.buffer instanceof ArrayBuffer,Xf=({type:o,data:i},f,s)=>sd&&i instanceof Blob?f?s(i):ad(i,s):od&&(i instanceof ArrayBuffer||rd(i))?f?s(i):ad(new Blob([i]),s):s(Be[o]+(i||"")),ad=(o,i)=>{const f=new FileReader;return f.onload=function(){const s=f.result.split(",")[1];i("b"+(s||""))},f.readAsDataURL(o)};function ud(o){return o instanceof Uint8Array?o:o instanceof ArrayBuffer?new Uint8Array(o):new Uint8Array(o.buffer,o.byteOffset,o.byteLength)}let Df;function a0(o,i){if(sd&&o.data instanceof Blob)return o.data.arrayBuffer().then(ud).then(i);if(od&&(o.data instanceof ArrayBuffer||rd(o.data)))return i(ud(o.data));Xf(o,!1,f=>{Df||(Df=new TextEncoder),i(Df.encode(f))})}const id="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",xa=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(let o=0;o{let i=o.length*.75,f=o.length,s,m=0,E,R,B,M;o[o.length-1]==="="&&(i--,o[o.length-2]==="="&&i--);const A=new ArrayBuffer(i),Q=new Uint8Array(A);for(s=0;s>4,Q[m++]=(R&15)<<4|B>>2,Q[m++]=(B&3)<<6|M&63;return A},i0=typeof ArrayBuffer=="function",Qf=(o,i)=>{if(typeof o!="string")return{type:"message",data:hd(o,i)};const f=o.charAt(0);return f==="b"?{type:"message",data:c0(o.substring(1),i)}:Pu[f]?o.length>1?{type:Pu[f],data:o.substring(1)}:{type:Pu[f]}:Cf},c0=(o,i)=>{if(i0){const f=u0(o);return hd(f,i)}else return{base64:!0,data:o}},hd=(o,i)=>{switch(i){case"blob":return o instanceof Blob?o:new Blob([o]);case"arraybuffer":default:return o instanceof ArrayBuffer?o:o.buffer}},dd="",f0=(o,i)=>{const f=o.length,s=new Array(f);let m=0;o.forEach((E,R)=>{Xf(E,!1,B=>{s[R]=B,++m===f&&i(s.join(dd))})})},s0=(o,i)=>{const f=o.split(dd),s=[];for(let m=0;m{const s=f.length;let m;if(s<126)m=new Uint8Array(1),new DataView(m.buffer).setUint8(0,s);else if(s<65536){m=new Uint8Array(3);const E=new DataView(m.buffer);E.setUint8(0,126),E.setUint16(1,s)}else{m=new Uint8Array(9);const E=new DataView(m.buffer);E.setUint8(0,127),E.setBigUint64(1,BigInt(s))}o.data&&typeof o.data!="string"&&(m[0]|=128),i.enqueue(m),i.enqueue(f)})}})}let Uf;function Fu(o){return o.reduce((i,f)=>i+f.length,0)}function Iu(o,i){if(o[0].length===i)return o.shift();const f=new Uint8Array(i);let s=0;for(let m=0;mMath.pow(2,21)-1){B.enqueue(Cf);break}m=Q*Math.pow(2,32)+A.getUint32(4),s=3}else{if(Fu(f)o){B.enqueue(Cf);break}}}})}const yd=4;function Ot(o){if(o)return h0(o)}function h0(o){for(var i in Ot.prototype)o[i]=Ot.prototype[i];return o}Ot.prototype.on=Ot.prototype.addEventListener=function(o,i){return this._callbacks=this._callbacks||{},(this._callbacks["$"+o]=this._callbacks["$"+o]||[]).push(i),this};Ot.prototype.once=function(o,i){function f(){this.off(o,f),i.apply(this,arguments)}return f.fn=i,this.on(o,f),this};Ot.prototype.off=Ot.prototype.removeListener=Ot.prototype.removeAllListeners=Ot.prototype.removeEventListener=function(o,i){if(this._callbacks=this._callbacks||{},arguments.length==0)return this._callbacks={},this;var f=this._callbacks["$"+o];if(!f)return this;if(arguments.length==1)return delete this._callbacks["$"+o],this;for(var s,m=0;mPromise.resolve().then(i):(i,f)=>f(i,0),Se=typeof self<"u"?self:typeof window<"u"?window:Function("return this")(),d0="arraybuffer";function md(o,...i){return i.reduce((f,s)=>(o.hasOwnProperty(s)&&(f[s]=o[s]),f),{})}const y0=Se.setTimeout,m0=Se.clearTimeout;function ai(o,i){i.useNativeTimers?(o.setTimeoutFn=y0.bind(Se),o.clearTimeoutFn=m0.bind(Se)):(o.setTimeoutFn=Se.setTimeout.bind(Se),o.clearTimeoutFn=Se.clearTimeout.bind(Se))}const v0=1.33;function g0(o){return typeof o=="string"?p0(o):Math.ceil((o.byteLength||o.size)*v0)}function p0(o){let i=0,f=0;for(let s=0,m=o.length;s=57344?f+=3:(s++,f+=4);return f}function vd(){return Date.now().toString(36).substring(3)+Math.random().toString(36).substring(2,5)}function b0(o){let i="";for(let f in o)o.hasOwnProperty(f)&&(i.length&&(i+="&"),i+=encodeURIComponent(f)+"="+encodeURIComponent(o[f]));return i}function S0(o){let i={},f=o.split("&");for(let s=0,m=f.length;s{this.readyState="paused",i()};if(this._polling||!this.writable){let s=0;this._polling&&(s++,this.once("pollComplete",function(){--s||f()})),this.writable||(s++,this.once("drain",function(){--s||f()}))}else f()}_poll(){this._polling=!0,this.doPoll(),this.emitReserved("poll")}onData(i){const f=s=>{if(this.readyState==="opening"&&s.type==="open"&&this.onOpen(),s.type==="close")return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(s)};s0(i,this.socket.binaryType).forEach(f),this.readyState!=="closed"&&(this._polling=!1,this.emitReserved("pollComplete"),this.readyState==="open"&&this._poll())}doClose(){const i=()=>{this.write([{type:"close"}])};this.readyState==="open"?i():this.once("open",i)}write(i){this.writable=!1,f0(i,f=>{this.doWrite(f,()=>{this.writable=!0,this.emitReserved("drain")})})}uri(){const i=this.opts.secure?"https":"http",f=this.query||{};return this.opts.timestampRequests!==!1&&(f[this.opts.timestampParam]=vd()),!this.supportsBinary&&!f.sid&&(f.b64=1),this.createUri(i,f)}}let gd=!1;try{gd=typeof XMLHttpRequest<"u"&&"withCredentials"in new XMLHttpRequest}catch{}const T0=gd;function A0(){}class z0 extends E0{constructor(i){if(super(i),typeof location<"u"){const f=location.protocol==="https:";let s=location.port;s||(s=f?"443":"80"),this.xd=typeof location<"u"&&i.hostname!==location.hostname||s!==i.port}}doWrite(i,f){const s=this.request({method:"POST",data:i});s.on("success",f),s.on("error",(m,E)=>{this.onError("xhr post error",m,E)})}doPoll(){const i=this.request();i.on("data",this.onData.bind(this)),i.on("error",(f,s)=>{this.onError("xhr poll error",f,s)}),this.pollXhr=i}}class Ce extends Ot{constructor(i,f,s){super(),this.createRequest=i,ai(this,s),this._opts=s,this._method=s.method||"GET",this._uri=f,this._data=s.data!==void 0?s.data:null,this._create()}_create(){var i;const f=md(this._opts,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");f.xdomain=!!this._opts.xd;const s=this._xhr=this.createRequest(f);try{s.open(this._method,this._uri,!0);try{if(this._opts.extraHeaders){s.setDisableHeaderCheck&&s.setDisableHeaderCheck(!0);for(let m in this._opts.extraHeaders)this._opts.extraHeaders.hasOwnProperty(m)&&s.setRequestHeader(m,this._opts.extraHeaders[m])}}catch{}if(this._method==="POST")try{s.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch{}try{s.setRequestHeader("Accept","*/*")}catch{}(i=this._opts.cookieJar)===null||i===void 0||i.addCookies(s),"withCredentials"in s&&(s.withCredentials=this._opts.withCredentials),this._opts.requestTimeout&&(s.timeout=this._opts.requestTimeout),s.onreadystatechange=()=>{var m;s.readyState===3&&((m=this._opts.cookieJar)===null||m===void 0||m.parseCookies(s.getResponseHeader("set-cookie"))),s.readyState===4&&(s.status===200||s.status===1223?this._onLoad():this.setTimeoutFn(()=>{this._onError(typeof s.status=="number"?s.status:0)},0))},s.send(this._data)}catch(m){this.setTimeoutFn(()=>{this._onError(m)},0);return}typeof document<"u"&&(this._index=Ce.requestsCount++,Ce.requests[this._index]=this)}_onError(i){this.emitReserved("error",i,this._xhr),this._cleanup(!0)}_cleanup(i){if(!(typeof this._xhr>"u"||this._xhr===null)){if(this._xhr.onreadystatechange=A0,i)try{this._xhr.abort()}catch{}typeof document<"u"&&delete Ce.requests[this._index],this._xhr=null}}_onLoad(){const i=this._xhr.responseText;i!==null&&(this.emitReserved("data",i),this.emitReserved("success"),this._cleanup())}abort(){this._cleanup()}}Ce.requestsCount=0;Ce.requests={};if(typeof document<"u"){if(typeof attachEvent=="function")attachEvent("onunload",cd);else if(typeof addEventListener=="function"){const o="onpagehide"in Se?"pagehide":"unload";addEventListener(o,cd,!1)}}function cd(){for(let o in Ce.requests)Ce.requests.hasOwnProperty(o)&&Ce.requests[o].abort()}const O0=(function(){const o=pd({xdomain:!1});return o&&o.responseType!==null})();class N0 extends z0{constructor(i){super(i);const f=i&&i.forceBase64;this.supportsBinary=O0&&!f}request(i={}){return Object.assign(i,{xd:this.xd},this.opts),new Ce(pd,this.uri(),i)}}function pd(o){const i=o.xdomain;try{if(typeof XMLHttpRequest<"u"&&(!i||T0))return new XMLHttpRequest}catch{}if(!i)try{return new Se[["Active"].concat("Object").join("X")]("Microsoft.XMLHTTP")}catch{}}const bd=typeof navigator<"u"&&typeof navigator.product=="string"&&navigator.product.toLowerCase()==="reactnative";class M0 extends Gf{get name(){return"websocket"}doOpen(){const i=this.uri(),f=this.opts.protocols,s=bd?{}:md(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(s.headers=this.opts.extraHeaders);try{this.ws=this.createSocket(i,f,s)}catch(m){return this.emitReserved("error",m)}this.ws.binaryType=this.socket.binaryType,this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=i=>this.onClose({description:"websocket connection closed",context:i}),this.ws.onmessage=i=>this.onData(i.data),this.ws.onerror=i=>this.onError("websocket error",i)}write(i){this.writable=!1;for(let f=0;f{try{this.doWrite(s,E)}catch{}m&&ni(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){typeof this.ws<"u"&&(this.ws.onerror=()=>{},this.ws.close(),this.ws=null)}uri(){const i=this.opts.secure?"wss":"ws",f=this.query||{};return this.opts.timestampRequests&&(f[this.opts.timestampParam]=vd()),this.supportsBinary||(f.b64=1),this.createUri(i,f)}}const xf=Se.WebSocket||Se.MozWebSocket;class R0 extends M0{createSocket(i,f,s){return bd?new xf(i,f,s):f?new xf(i,f):new xf(i)}doWrite(i,f){this.ws.send(f)}}class D0 extends Gf{get name(){return"webtransport"}doOpen(){try{this._transport=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name])}catch(i){return this.emitReserved("error",i)}this._transport.closed.then(()=>{this.onClose()}).catch(i=>{this.onError("webtransport error",i)}),this._transport.ready.then(()=>{this._transport.createBidirectionalStream().then(i=>{const f=r0(Number.MAX_SAFE_INTEGER,this.socket.binaryType),s=i.readable.pipeThrough(f).getReader(),m=o0();m.readable.pipeTo(i.writable),this._writer=m.writable.getWriter();const E=()=>{s.read().then(({done:B,value:M})=>{B||(this.onPacket(M),E())}).catch(B=>{})};E();const R={type:"open"};this.query.sid&&(R.data=`{"sid":"${this.query.sid}"}`),this._writer.write(R).then(()=>this.onOpen())})})}write(i){this.writable=!1;for(let f=0;f{m&&ni(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){var i;(i=this._transport)===null||i===void 0||i.close()}}const U0={websocket:R0,webtransport:D0,polling:N0},x0=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,C0=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function Bf(o){if(o.length>8e3)throw"URI too long";const i=o,f=o.indexOf("["),s=o.indexOf("]");f!=-1&&s!=-1&&(o=o.substring(0,f)+o.substring(f,s).replace(/:/g,";")+o.substring(s,o.length));let m=x0.exec(o||""),E={},R=14;for(;R--;)E[C0[R]]=m[R]||"";return f!=-1&&s!=-1&&(E.source=i,E.host=E.host.substring(1,E.host.length-1).replace(/;/g,":"),E.authority=E.authority.replace("[","").replace("]","").replace(/;/g,":"),E.ipv6uri=!0),E.pathNames=B0(E,E.path),E.queryKey=q0(E,E.query),E}function B0(o,i){const f=/\/{2,9}/g,s=i.replace(f,"/").split("/");return(i.slice(0,1)=="/"||i.length===0)&&s.splice(0,1),i.slice(-1)=="/"&&s.splice(s.length-1,1),s}function q0(o,i){const f={};return i.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,function(s,m,E){m&&(f[m]=E)}),f}const qf=typeof addEventListener=="function"&&typeof removeEventListener=="function",ti=[];qf&&addEventListener("offline",()=>{ti.forEach(o=>o())},!1);class Nl extends Ot{constructor(i,f){if(super(),this.binaryType=d0,this.writeBuffer=[],this._prevBufferLen=0,this._pingInterval=-1,this._pingTimeout=-1,this._maxPayload=-1,this._pingTimeoutTime=1/0,i&&typeof i=="object"&&(f=i,i=null),i){const s=Bf(i);f.hostname=s.host,f.secure=s.protocol==="https"||s.protocol==="wss",f.port=s.port,s.query&&(f.query=s.query)}else f.host&&(f.hostname=Bf(f.host).host);ai(this,f),this.secure=f.secure!=null?f.secure:typeof location<"u"&&location.protocol==="https:",f.hostname&&!f.port&&(f.port=this.secure?"443":"80"),this.hostname=f.hostname||(typeof location<"u"?location.hostname:"localhost"),this.port=f.port||(typeof location<"u"&&location.port?location.port:this.secure?"443":"80"),this.transports=[],this._transportsByName={},f.transports.forEach(s=>{const m=s.prototype.name;this.transports.push(m),this._transportsByName[m]=s}),this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},f),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),typeof this.opts.query=="string"&&(this.opts.query=S0(this.opts.query)),qf&&(this.opts.closeOnBeforeunload&&(this._beforeunloadEventListener=()=>{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this._beforeunloadEventListener,!1)),this.hostname!=="localhost"&&(this._offlineEventListener=()=>{this._onClose("transport close",{description:"network connection lost"})},ti.push(this._offlineEventListener))),this.opts.withCredentials&&(this._cookieJar=void 0),this._open()}createTransport(i){const f=Object.assign({},this.opts.query);f.EIO=yd,f.transport=i,this.id&&(f.sid=this.id);const s=Object.assign({},this.opts,{query:f,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[i]);return new this._transportsByName[i](s)}_open(){if(this.transports.length===0){this.setTimeoutFn(()=>{this.emitReserved("error","No transports available")},0);return}const i=this.opts.rememberUpgrade&&Nl.priorWebsocketSuccess&&this.transports.indexOf("websocket")!==-1?"websocket":this.transports[0];this.readyState="opening";const f=this.createTransport(i);f.open(),this.setTransport(f)}setTransport(i){this.transport&&this.transport.removeAllListeners(),this.transport=i,i.on("drain",this._onDrain.bind(this)).on("packet",this._onPacket.bind(this)).on("error",this._onError.bind(this)).on("close",f=>this._onClose("transport close",f))}onOpen(){this.readyState="open",Nl.priorWebsocketSuccess=this.transport.name==="websocket",this.emitReserved("open"),this.flush()}_onPacket(i){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing")switch(this.emitReserved("packet",i),this.emitReserved("heartbeat"),i.type){case"open":this.onHandshake(JSON.parse(i.data));break;case"ping":this._sendPacket("pong"),this.emitReserved("ping"),this.emitReserved("pong"),this._resetPingTimeout();break;case"error":const f=new Error("server error");f.code=i.data,this._onError(f);break;case"message":this.emitReserved("data",i.data),this.emitReserved("message",i.data);break}}onHandshake(i){this.emitReserved("handshake",i),this.id=i.sid,this.transport.query.sid=i.sid,this._pingInterval=i.pingInterval,this._pingTimeout=i.pingTimeout,this._maxPayload=i.maxPayload,this.onOpen(),this.readyState!=="closed"&&this._resetPingTimeout()}_resetPingTimeout(){this.clearTimeoutFn(this._pingTimeoutTimer);const i=this._pingInterval+this._pingTimeout;this._pingTimeoutTime=Date.now()+i,this._pingTimeoutTimer=this.setTimeoutFn(()=>{this._onClose("ping timeout")},i),this.opts.autoUnref&&this._pingTimeoutTimer.unref()}_onDrain(){this.writeBuffer.splice(0,this._prevBufferLen),this._prevBufferLen=0,this.writeBuffer.length===0?this.emitReserved("drain"):this.flush()}flush(){if(this.readyState!=="closed"&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){const i=this._getWritablePackets();this.transport.send(i),this._prevBufferLen=i.length,this.emitReserved("flush")}}_getWritablePackets(){if(!(this._maxPayload&&this.transport.name==="polling"&&this.writeBuffer.length>1))return this.writeBuffer;let f=1;for(let s=0;s0&&f>this._maxPayload)return this.writeBuffer.slice(0,s);f+=2}return this.writeBuffer}_hasPingExpired(){if(!this._pingTimeoutTime)return!0;const i=Date.now()>this._pingTimeoutTime;return i&&(this._pingTimeoutTime=0,ni(()=>{this._onClose("ping timeout")},this.setTimeoutFn)),i}write(i,f,s){return this._sendPacket("message",i,f,s),this}send(i,f,s){return this._sendPacket("message",i,f,s),this}_sendPacket(i,f,s,m){if(typeof f=="function"&&(m=f,f=void 0),typeof s=="function"&&(m=s,s=null),this.readyState==="closing"||this.readyState==="closed")return;s=s||{},s.compress=s.compress!==!1;const E={type:i,data:f,options:s};this.emitReserved("packetCreate",E),this.writeBuffer.push(E),m&&this.once("flush",m),this.flush()}close(){const i=()=>{this._onClose("forced close"),this.transport.close()},f=()=>{this.off("upgrade",f),this.off("upgradeError",f),i()},s=()=>{this.once("upgrade",f),this.once("upgradeError",f)};return(this.readyState==="opening"||this.readyState==="open")&&(this.readyState="closing",this.writeBuffer.length?this.once("drain",()=>{this.upgrading?s():i()}):this.upgrading?s():i()),this}_onError(i){if(Nl.priorWebsocketSuccess=!1,this.opts.tryAllTransports&&this.transports.length>1&&this.readyState==="opening")return this.transports.shift(),this._open();this.emitReserved("error",i),this._onClose("transport error",i)}_onClose(i,f){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing"){if(this.clearTimeoutFn(this._pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),qf&&(this._beforeunloadEventListener&&removeEventListener("beforeunload",this._beforeunloadEventListener,!1),this._offlineEventListener)){const s=ti.indexOf(this._offlineEventListener);s!==-1&&ti.splice(s,1)}this.readyState="closed",this.id=null,this.emitReserved("close",i,f),this.writeBuffer=[],this._prevBufferLen=0}}}Nl.protocol=yd;class H0 extends Nl{constructor(){super(...arguments),this._upgrades=[]}onOpen(){if(super.onOpen(),this.readyState==="open"&&this.opts.upgrade)for(let i=0;i{s||(f.send([{type:"ping",data:"probe"}]),f.once("packet",x=>{if(!s)if(x.type==="pong"&&x.data==="probe"){if(this.upgrading=!0,this.emitReserved("upgrading",f),!f)return;Nl.priorWebsocketSuccess=f.name==="websocket",this.transport.pause(()=>{s||this.readyState!=="closed"&&(Q(),this.setTransport(f),f.send([{type:"upgrade"}]),this.emitReserved("upgrade",f),f=null,this.upgrading=!1,this.flush())})}else{const K=new Error("probe error");K.transport=f.name,this.emitReserved("upgradeError",K)}}))};function E(){s||(s=!0,Q(),f.close(),f=null)}const R=x=>{const K=new Error("probe error: "+x);K.transport=f.name,E(),this.emitReserved("upgradeError",K)};function B(){R("transport closed")}function M(){R("socket closed")}function A(x){f&&x.name!==f.name&&E()}const Q=()=>{f.removeListener("open",m),f.removeListener("error",R),f.removeListener("close",B),this.off("close",M),this.off("upgrading",A)};f.once("open",m),f.once("error",R),f.once("close",B),this.once("close",M),this.once("upgrading",A),this._upgrades.indexOf("webtransport")!==-1&&i!=="webtransport"?this.setTimeoutFn(()=>{s||f.open()},200):f.open()}onHandshake(i){this._upgrades=this._filterUpgrades(i.upgrades),super.onHandshake(i)}_filterUpgrades(i){const f=[];for(let s=0;sU0[m]).filter(m=>!!m)),super(i,s)}};function j0(o,i="",f){let s=o;f=f||typeof location<"u"&&location,o==null&&(o=f.protocol+"//"+f.host),typeof o=="string"&&(o.charAt(0)==="/"&&(o.charAt(1)==="/"?o=f.protocol+o:o=f.host+o),/^(https?|wss?):\/\//.test(o)||(typeof f<"u"?o=f.protocol+"//"+o:o="https://"+o),s=Bf(o)),s.port||(/^(http|ws)$/.test(s.protocol)?s.port="80":/^(http|ws)s$/.test(s.protocol)&&(s.port="443")),s.path=s.path||"/";const E=s.host.indexOf(":")!==-1?"["+s.host+"]":s.host;return s.id=s.protocol+"://"+E+":"+s.port+i,s.href=s.protocol+"://"+E+(f&&f.port===s.port?"":":"+s.port),s}const L0=typeof ArrayBuffer=="function",X0=o=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(o):o.buffer instanceof ArrayBuffer,Sd=Object.prototype.toString,Q0=typeof Blob=="function"||typeof Blob<"u"&&Sd.call(Blob)==="[object BlobConstructor]",G0=typeof File=="function"||typeof File<"u"&&Sd.call(File)==="[object FileConstructor]";function Vf(o){return L0&&(o instanceof ArrayBuffer||X0(o))||Q0&&o instanceof Blob||G0&&o instanceof File}function ei(o,i){if(!o||typeof o!="object")return!1;if(Array.isArray(o)){for(let f=0,s=o.length;f=0&&o.num{delete this.acks[i];for(let B=0;B{this.io.clearTimeoutFn(E),f.apply(this,B)};R.withError=!0,this.acks[i]=R}emitWithAck(i,...f){return new Promise((s,m)=>{const E=(R,B)=>R?m(R):s(B);E.withError=!0,f.push(E),this.emit(i,...f)})}_addToQueue(i){let f;typeof i[i.length-1]=="function"&&(f=i.pop());const s={id:this._queueSeq++,tryCount:0,pending:!1,args:i,flags:Object.assign({fromQueue:!0},this.flags)};i.push((m,...E)=>s!==this._queue[0]?void 0:(m!==null?s.tryCount>this._opts.retries&&(this._queue.shift(),f&&f(m)):(this._queue.shift(),f&&f(null,...E)),s.pending=!1,this._drainQueue())),this._queue.push(s),this._drainQueue()}_drainQueue(i=!1){if(!this.connected||this._queue.length===0)return;const f=this._queue[0];f.pending&&!i||(f.pending=!0,f.tryCount++,this.flags=f.flags,this.emit.apply(this,f.args))}packet(i){i.nsp=this.nsp,this.io._packet(i)}onopen(){typeof this.auth=="function"?this.auth(i=>{this._sendConnectPacket(i)}):this._sendConnectPacket(this.auth)}_sendConnectPacket(i){this.packet({type:tt.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},i):i})}onerror(i){this.connected||this.emitReserved("connect_error",i)}onclose(i,f){this.connected=!1,delete this.id,this.emitReserved("disconnect",i,f),this._clearAcks()}_clearAcks(){Object.keys(this.acks).forEach(i=>{if(!this.sendBuffer.some(s=>String(s.id)===i)){const s=this.acks[i];delete this.acks[i],s.withError&&s.call(this,new Error("socket has been disconnected"))}})}onpacket(i){if(i.nsp===this.nsp)switch(i.type){case tt.CONNECT:i.data&&i.data.sid?this.onconnect(i.data.sid,i.data.pid):this.emitReserved("connect_error",new Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case tt.EVENT:case tt.BINARY_EVENT:this.onevent(i);break;case tt.ACK:case tt.BINARY_ACK:this.onack(i);break;case tt.DISCONNECT:this.ondisconnect();break;case tt.CONNECT_ERROR:this.destroy();const s=new Error(i.data.message);s.data=i.data.data,this.emitReserved("connect_error",s);break}}onevent(i){const f=i.data||[];i.id!=null&&f.push(this.ack(i.id)),this.connected?this.emitEvent(f):this.receiveBuffer.push(Object.freeze(f))}emitEvent(i){if(this._anyListeners&&this._anyListeners.length){const f=this._anyListeners.slice();for(const s of f)s.apply(this,i)}super.emit.apply(this,i),this._pid&&i.length&&typeof i[i.length-1]=="string"&&(this._lastOffset=i[i.length-1])}ack(i){const f=this;let s=!1;return function(...m){s||(s=!0,f.packet({type:tt.ACK,id:i,data:m}))}}onack(i){const f=this.acks[i.id];typeof f=="function"&&(delete this.acks[i.id],f.withError&&i.data.unshift(null),f.apply(this,i.data))}onconnect(i,f){this.id=i,this.recovered=f&&this._pid===f,this._pid=f,this.connected=!0,this.emitBuffered(),this.emitReserved("connect"),this._drainQueue(!0)}emitBuffered(){this.receiveBuffer.forEach(i=>this.emitEvent(i)),this.receiveBuffer=[],this.sendBuffer.forEach(i=>{this.notifyOutgoingListeners(i),this.packet(i)}),this.sendBuffer=[]}ondisconnect(){this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach(i=>i()),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&this.packet({type:tt.DISCONNECT}),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(i){return this.flags.compress=i,this}get volatile(){return this.flags.volatile=!0,this}timeout(i){return this.flags.timeout=i,this}onAny(i){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(i),this}prependAny(i){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(i),this}offAny(i){if(!this._anyListeners)return this;if(i){const f=this._anyListeners;for(let s=0;s0&&o.jitter<=1?o.jitter:0,this.attempts=0}Bn.prototype.duration=function(){var o=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var i=Math.random(),f=Math.floor(i*this.jitter*o);o=(Math.floor(i*10)&1)==0?o-f:o+f}return Math.min(o,this.max)|0};Bn.prototype.reset=function(){this.attempts=0};Bn.prototype.setMin=function(o){this.ms=o};Bn.prototype.setMax=function(o){this.max=o};Bn.prototype.setJitter=function(o){this.jitter=o};class jf extends Ot{constructor(i,f){var s;super(),this.nsps={},this.subs=[],i&&typeof i=="object"&&(f=i,i=void 0),f=f||{},f.path=f.path||"/socket.io",this.opts=f,ai(this,f),this.reconnection(f.reconnection!==!1),this.reconnectionAttempts(f.reconnectionAttempts||1/0),this.reconnectionDelay(f.reconnectionDelay||1e3),this.reconnectionDelayMax(f.reconnectionDelayMax||5e3),this.randomizationFactor((s=f.randomizationFactor)!==null&&s!==void 0?s:.5),this.backoff=new Bn({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(f.timeout==null?2e4:f.timeout),this._readyState="closed",this.uri=i;const m=f.parser||W0;this.encoder=new m.Encoder,this.decoder=new m.Decoder,this._autoConnect=f.autoConnect!==!1,this._autoConnect&&this.open()}reconnection(i){return arguments.length?(this._reconnection=!!i,i||(this.skipReconnect=!0),this):this._reconnection}reconnectionAttempts(i){return i===void 0?this._reconnectionAttempts:(this._reconnectionAttempts=i,this)}reconnectionDelay(i){var f;return i===void 0?this._reconnectionDelay:(this._reconnectionDelay=i,(f=this.backoff)===null||f===void 0||f.setMin(i),this)}randomizationFactor(i){var f;return i===void 0?this._randomizationFactor:(this._randomizationFactor=i,(f=this.backoff)===null||f===void 0||f.setJitter(i),this)}reconnectionDelayMax(i){var f;return i===void 0?this._reconnectionDelayMax:(this._reconnectionDelayMax=i,(f=this.backoff)===null||f===void 0||f.setMax(i),this)}timeout(i){return arguments.length?(this._timeout=i,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&this.backoff.attempts===0&&this.reconnect()}open(i){if(~this._readyState.indexOf("open"))return this;this.engine=new Y0(this.uri,this.opts);const f=this.engine,s=this;this._readyState="opening",this.skipReconnect=!1;const m=ze(f,"open",function(){s.onopen(),i&&i()}),E=B=>{this.cleanup(),this._readyState="closed",this.emitReserved("error",B),i?i(B):this.maybeReconnectOnOpen()},R=ze(f,"error",E);if(this._timeout!==!1){const B=this._timeout,M=this.setTimeoutFn(()=>{m(),E(new Error("timeout")),f.close()},B);this.opts.autoUnref&&M.unref(),this.subs.push(()=>{this.clearTimeoutFn(M)})}return this.subs.push(m),this.subs.push(R),this}connect(i){return this.open(i)}onopen(){this.cleanup(),this._readyState="open",this.emitReserved("open");const i=this.engine;this.subs.push(ze(i,"ping",this.onping.bind(this)),ze(i,"data",this.ondata.bind(this)),ze(i,"error",this.onerror.bind(this)),ze(i,"close",this.onclose.bind(this)),ze(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(i){try{this.decoder.add(i)}catch(f){this.onclose("parse error",f)}}ondecoded(i){ni(()=>{this.emitReserved("packet",i)},this.setTimeoutFn)}onerror(i){this.emitReserved("error",i)}socket(i,f){let s=this.nsps[i];return s?this._autoConnect&&!s.active&&s.connect():(s=new _d(this,i,f),this.nsps[i]=s),s}_destroy(i){const f=Object.keys(this.nsps);for(const s of f)if(this.nsps[s].active)return;this._close()}_packet(i){const f=this.encoder.encode(i);for(let s=0;si()),this.subs.length=0,this.decoder.destroy()}_close(){this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close")}disconnect(){return this._close()}onclose(i,f){var s;this.cleanup(),(s=this.engine)===null||s===void 0||s.close(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",i,f),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;const i=this;if(this.backoff.attempts>=this._reconnectionAttempts)this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{const f=this.backoff.duration();this._reconnecting=!0;const s=this.setTimeoutFn(()=>{i.skipReconnect||(this.emitReserved("reconnect_attempt",i.backoff.attempts),!i.skipReconnect&&i.open(m=>{m?(i._reconnecting=!1,i.reconnect(),this.emitReserved("reconnect_error",m)):i.onreconnect()}))},f);this.opts.autoUnref&&s.unref(),this.subs.push(()=>{this.clearTimeoutFn(s)})}}onreconnect(){const i=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",i)}}const Ua={};function li(o,i){typeof o=="object"&&(i=o,o=void 0),i=i||{};const f=j0(o,i.path||"/socket.io"),s=f.source,m=f.id,E=f.path,R=Ua[m]&&E in Ua[m].nsps,B=i.forceNew||i["force new connection"]||i.multiplex===!1||R;let M;return B?M=new jf(s,i):(Ua[m]||(Ua[m]=new jf(s,i)),M=Ua[m]),f.query&&!i.query&&(i.query=f.queryKey),M.socket(f.path,i)}Object.assign(li,{Manager:jf,Socket:_d,io:li,connect:li});const Ed=window.location.origin;console.info("[socket] connecting to",Ed);const wf=li(Ed,{transports:["websocket","polling"],timeout:15e3});wf.on("connect_error",o=>console.error("connect_error",o.code,o.message,o.data));const Td=Mt.createContext(wf),F0=({children:o})=>Y.jsx(Td.Provider,{value:wf,children:o}),I0=()=>Mt.useContext(Td),Ad=Mt.createContext({connected:!1,session:null,logs:[],login:async()=>{},setRole:async()=>{},requestControl:async()=>{},releaseControl:async()=>{},subscribeAll:async()=>{}});function P0(o){return Mt.useCallback((i,f={})=>new Promise((s,m)=>{o.emit(i,f,(E={})=>{E.error?m(new Error(E.error)):s(E)})}),[o])}function tv({children:o}){const i=I0(),f=P0(i),[s,m]=Mt.useState(null),[E,R]=Mt.useState([]),[B,M]=Mt.useState(i.connected);Mt.useEffect(()=>{const x=()=>M(!0),K=()=>M(!1);return i.on("connect",x),i.on("disconnect",K),()=>{i.off("connect",x),i.off("disconnect",K)}},[i]),Mt.useEffect(()=>{function x(_t){m(_t)}function K(_t=[]){R(_t)}function Yt(_t){R(Ut=>[...Ut.slice(-199),_t])}return i.on("session:sync",x),i.on("log:init",K),i.on("log:entry",Yt),()=>{i.off("session:sync",x),i.off("log:init",K),i.off("log:entry",Yt)}},[i]);const A=Mt.useMemo(()=>({login:(x,K)=>f("auth:login",{username:x,password:K}),setRole:x=>f("session:setRole",{role:x}),requestControl:(x,K={})=>f("session:requestControl",{roverId:x,...K}),releaseControl:x=>f("session:releaseControl",{roverId:x}),subscribeAll:()=>f("session:subscribeAll")}),[f]),Q=Mt.useMemo(()=>({connected:B,session:s,logs:E,...A}),[A,B,E,s]);return Y.jsx(Ad.Provider,{value:Q,children:o})}function qn(){return Mt.useContext(Ad)}function ev({connected:o,role:i,mode:f}){const s=o?"bg-emerald-500/20 text-emerald-300":"bg-red-500/20 text-red-200";return Y.jsxs("div",{className:"flex flex-wrap items-center gap-3 text-sm",children:[Y.jsx("span",{className:`rounded-full px-3 py-1 font-medium ${s}`,children:o?"Connected":"Disconnected"}),Y.jsxs("span",{className:"rounded-full bg-slate-800/80 px-3 py-1 text-slate-200",children:["Role: ",i||"unknown"]}),Y.jsxs("span",{className:"rounded-full bg-slate-800/80 px-3 py-1 text-slate-200",children:["Mode: ",f||"--"]})]})}function lv(){const{logs:o}=qn();return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/70 p-4",children:[Y.jsxs("header",{className:"mb-3 flex items-center justify-between",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Server logs"}),Y.jsxs("span",{className:"text-xs uppercase tracking-[0.2em] text-slate-500",children:[o.length," entries"]})]}),Y.jsx("div",{className:"h-64 overflow-y-auto rounded-xl bg-slate-950/40 p-3 text-xs font-mono text-slate-300",children:o.length===0?Y.jsx("p",{children:"No logs yet."}):o.slice().reverse().map(i=>Y.jsxs("div",{className:"mb-2",children:[Y.jsx("span",{className:"text-slate-500",children:i.timestamp})," ",Y.jsxs("span",{className:"text-cyan-300",children:["[",i.level,"]"]})," ",i.label&&Y.jsxs("span",{className:"text-pink-300",children:["[",i.label,"]"]})," ",Y.jsx("span",{children:i.message})]},i.id))})]})}function nv(){const{session:o,requestControl:i}=qn(),f=o?.roster??[],[s,m]=Mt.useState({});async function E(R){m(B=>({...B,[R]:!0}));try{await i(R)}catch(B){alert(B.message)}finally{m(B=>({...B,[R]:!1}))}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Rovers"}),Y.jsxs("div",{className:"mt-4 space-y-3",children:[f.length===0&&Y.jsx("p",{className:"text-slate-400",children:"No rovers registered."}),f.map(R=>Y.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-3 rounded-xl bg-slate-950/40 px-4 py-3",children:[Y.jsxs("div",{children:[Y.jsx("p",{className:"text-white",children:R.name}),Y.jsxs("p",{className:"text-xs text-slate-400",children:["Locked: ",R.locked?"yes":"no"]})]}),Y.jsx("button",{type:"button",onClick:()=>E(R.id),disabled:s[R.id],className:"rounded-full bg-blue-600 px-4 py-1 text-sm font-semibold text-white disabled:opacity-50",children:s[R.id]?"Requesting…":"Request control"})]},R.id))]})]})}function av(){const{session:o,releaseControl:i}=qn(),f=o?.assignment,s=f?.roverId,[m,E]=Mt.useState(!1);async function R(){if(s){E(!0);try{await i(s)}catch(B){alert(B.message)}finally{E(!1)}}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Assignment"}),s?Y.jsxs("div",{className:"mt-4 space-y-3",children:[Y.jsxs("p",{className:"text-slate-300",children:["Currently driving rover ",s]}),Y.jsx("button",{type:"button",onClick:R,disabled:m,className:"rounded-full bg-red-600 px-4 py-1 text-sm font-semibold text-white disabled:opacity-50",children:m?"Releasing…":"Release control"})]}):Y.jsxs("div",{className:"mt-4 text-slate-400",children:[Y.jsxs("p",{children:["Status: ",f?.status??"not assigned"]}),f?.queuePosition&&Y.jsxs("p",{children:["Queue position: ",f.queuePosition]})]})]})}function uv(){const{session:o}=qn(),i=Mt.useMemo(()=>JSON.stringify(o??{},null,2),[o]);return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Session snapshot"}),Y.jsx("pre",{className:"mt-4 max-h-64 overflow-y-auto text-sm text-teal-200",children:i})]})}function iv(){const{login:o,setRole:i}=qn(),[f,s]=Mt.useState(""),[m,E]=Mt.useState(""),[R,B]=Mt.useState(!1);async function M(A){A.preventDefault(),B(!0);try{await o(f,m),s(""),E("")}catch(Q){alert(Q.message)}finally{B(!1)}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Authentication"}),Y.jsxs("form",{className:"mt-4 flex flex-col gap-3",onSubmit:M,children:[Y.jsx("input",{className:"rounded-lg border border-slate-800 bg-slate-950/60 px-3 py-2 text-white",placeholder:"Username",value:f,onChange:A=>s(A.target.value)}),Y.jsx("input",{className:"rounded-lg border border-slate-800 bg-slate-950/60 px-3 py-2 text-white",placeholder:"Password",type:"password",value:m,onChange:A=>E(A.target.value)}),Y.jsx("button",{type:"submit",disabled:R,className:"rounded-lg bg-emerald-600 py-2 font-semibold text-white disabled:opacity-50",children:R?"Logging in…":"Login as admin"})]}),Y.jsxs("div",{className:"mt-4 flex gap-3",children:[Y.jsx("button",{type:"button",onClick:()=>i("user"),className:"rounded-lg border border-slate-700 px-3 py-1 text-sm text-slate-200",children:"Driver mode"}),Y.jsx("button",{type:"button",onClick:()=>i("spectator"),className:"rounded-lg border border-slate-700 px-3 py-1 text-sm text-slate-200",children:"Spectator mode"})]})]})}function cv(){const{connected:o,session:i}=qn();return Y.jsx("div",{className:"min-h-screen bg-slate-950 text-slate-50",children:Y.jsxs("main",{className:"mx-auto flex max-w-6xl flex-col gap-6 px-6 py-10",children:[Y.jsxs("header",{className:"space-y-4",children:[Y.jsx("h1",{className:"text-4xl font-semibold text-white",children:"Multi Roomba Rover Console"}),Y.jsx(ev,{connected:o,role:i?.role,mode:i?.mode})]}),Y.jsxs("section",{className:"grid gap-6 lg:grid-cols-2",children:[Y.jsx(nv,{}),Y.jsx(av,{}),Y.jsx(iv,{}),Y.jsx(uv,{})]}),Y.jsx(lv,{})]})})}n0.createRoot(document.getElementById("root")).render(Y.jsx(Mt.StrictMode,{children:Y.jsx(F0,{children:Y.jsx(tv,{children:Y.jsx(cv,{})})})})); diff --git a/server/public/index.html b/server/public/index.html index b8d06e8c..02681c87 100644 --- a/server/public/index.html +++ b/server/public/index.html @@ -5,7 +5,7 @@ webui - + diff --git a/webui/src/lib/socket.js b/webui/src/lib/socket.js index 660d9ee1..eeb916e6 100644 --- a/webui/src/lib/socket.js +++ b/webui/src/lib/socket.js @@ -1,15 +1,7 @@ import { io } from 'socket.io-client'; -const configuredUrl = import.meta.env.VITE_ROVERD_URL?.trim(); -const serverUrl = configuredUrl && configuredUrl.length > 0 ? configuredUrl : undefined; - -export const socket = io(serverUrl, { - transports: ['websocket', 'polling'], - timeout: 15000, - reconnectionAttempts: 5, - query: { role: 'user' }, -}); - -socket.on('connect_error', (error) => { - console.error('Socket connection error:', error.message); -}); +const configured = import.meta.env.VITE_ROVERD_URL?.trim(); +const resolvedUrl = configured && configured.length > 0 ? configured : window.location.origin; +console.info("[socket] connecting to", resolvedUrl); +export const socket = io(resolvedUrl, { transports: ["websocket","polling"], timeout: 15000 }); +socket.on("connect_error", (err) => console.error("connect_error", err.code, err.message, err.data)); From b242ecf5ac203b06b7145c0017ccb590fc26e0f7 Mon Sep 17 00:00:00 2001 From: legop3 Date: Sat, 15 Nov 2025 04:53:13 -0500 Subject: [PATCH 07/61] guh --- .../assets/{index-ERyMYA6S.js => index-OlyDvT3F.js} | 2 +- server/public/index.html | 2 +- webui/src/lib/socket.js | 9 ++++++--- 3 files changed, 8 insertions(+), 5 deletions(-) rename server/public/assets/{index-ERyMYA6S.js => index-OlyDvT3F.js} (99%) diff --git a/server/public/assets/index-ERyMYA6S.js b/server/public/assets/index-OlyDvT3F.js similarity index 99% rename from server/public/assets/index-ERyMYA6S.js rename to server/public/assets/index-OlyDvT3F.js index d5e381c2..96e2ab93 100644 --- a/server/public/assets/index-ERyMYA6S.js +++ b/server/public/assets/index-OlyDvT3F.js @@ -6,4 +6,4 @@ `+h[n].replace(" at new "," at ");return t.displayName&&_.includes("")&&(_=_.replace("",t.displayName)),_}while(1<=n&&0<=a);break}}}finally{ii=!1,Error.prepareStackTrace=l}return(l=t?t.displayName||t.name:"")?Rl(l):""}function zd(t,e){switch(t.tag){case 26:case 27:case 5:return Rl(t.type);case 16:return Rl("Lazy");case 13:return t.child!==e&&e!==null?Rl("Suspense Fallback"):Rl("Suspense");case 19:return Rl("SuspenseList");case 0:case 15:return ci(t.type,!1);case 11:return ci(t.type.render,!1);case 1:return ci(t.type,!0);case 31:return Rl("Activity");default:return""}}function Jf(t){try{var e="",l=null;do e+=zd(t,l),l=t,t=t.return;while(t);return e}catch(n){return` Error generating stack: `+n.message+` `+n.stack}}var fi=Object.prototype.hasOwnProperty,si=o.unstable_scheduleCallback,oi=o.unstable_cancelCallback,Od=o.unstable_shouldYield,Nd=o.unstable_requestPaint,Pt=o.unstable_now,Md=o.unstable_getCurrentPriorityLevel,kf=o.unstable_ImmediatePriority,Wf=o.unstable_UserBlockingPriority,Ba=o.unstable_NormalPriority,Rd=o.unstable_LowPriority,$f=o.unstable_IdlePriority,Dd=o.log,Ud=o.unstable_setDisableYieldValue,Yn=null,te=null;function ll(t){if(typeof Dd=="function"&&Ud(t),te&&typeof te.setStrictMode=="function")try{te.setStrictMode(Yn,t)}catch{}}var ee=Math.clz32?Math.clz32:Bd,xd=Math.log,Cd=Math.LN2;function Bd(t){return t>>>=0,t===0?32:31-(xd(t)/Cd|0)|0}var qa=256,Ha=262144,Ya=4194304;function Dl(t){var e=t&42;if(e!==0)return e;switch(t&-t){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return t&261888;case 262144:case 524288:case 1048576:case 2097152:return t&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return t&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return t}}function ja(t,e,l){var n=t.pendingLanes;if(n===0)return 0;var a=0,u=t.suspendedLanes,c=t.pingedLanes;t=t.warmLanes;var r=n&134217727;return r!==0?(n=r&~u,n!==0?a=Dl(n):(c&=r,c!==0?a=Dl(c):l||(l=r&~t,l!==0&&(a=Dl(l))))):(r=n&~u,r!==0?a=Dl(r):c!==0?a=Dl(c):l||(l=n&~t,l!==0&&(a=Dl(l)))),a===0?0:e!==0&&e!==a&&(e&u)===0&&(u=a&-a,l=e&-e,u>=l||u===32&&(l&4194048)!==0)?e:a}function jn(t,e){return(t.pendingLanes&~(t.suspendedLanes&~t.pingedLanes)&e)===0}function qd(t,e){switch(t){case 1:case 2:case 4:case 8:case 64:return e+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 e+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 Ff(){var t=Ya;return Ya<<=1,(Ya&62914560)===0&&(Ya=4194304),t}function ri(t){for(var e=[],l=0;31>l;l++)e.push(t);return e}function Ln(t,e){t.pendingLanes|=e,e!==268435456&&(t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0)}function Hd(t,e,l,n,a,u){var c=t.pendingLanes;t.pendingLanes=l,t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0,t.expiredLanes&=l,t.entangledLanes&=l,t.errorRecoveryDisabledLanes&=l,t.shellSuspendCounter=0;var r=t.entanglements,h=t.expirationTimes,p=t.hiddenUpdates;for(l=c&~l;0"u")return null;try{return t.activeElement||t.body}catch{return t.body}}var Gd=/[\n"\\]/g;function re(t){return t.replace(Gd,function(e){return"\\"+e.charCodeAt(0).toString(16)+" "})}function gi(t,e,l,n,a,u,c,r){t.name="",c!=null&&typeof c!="function"&&typeof c!="symbol"&&typeof c!="boolean"?t.type=c:t.removeAttribute("type"),e!=null?c==="number"?(e===0&&t.value===""||t.value!=e)&&(t.value=""+oe(e)):t.value!==""+oe(e)&&(t.value=""+oe(e)):c!=="submit"&&c!=="reset"||t.removeAttribute("value"),e!=null?pi(t,c,oe(e)):l!=null?pi(t,c,oe(l)):n!=null&&t.removeAttribute("value"),a==null&&u!=null&&(t.defaultChecked=!!u),a!=null&&(t.checked=a&&typeof a!="function"&&typeof a!="symbol"),r!=null&&typeof r!="function"&&typeof r!="symbol"&&typeof r!="boolean"?t.name=""+oe(r):t.removeAttribute("name")}function os(t,e,l,n,a,u,c,r){if(u!=null&&typeof u!="function"&&typeof u!="symbol"&&typeof u!="boolean"&&(t.type=u),e!=null||l!=null){if(!(u!=="submit"&&u!=="reset"||e!=null)){vi(t);return}l=l!=null?""+oe(l):"",e=e!=null?""+oe(e):l,r||e===t.value||(t.value=e),t.defaultValue=e}n=n??a,n=typeof n!="function"&&typeof n!="symbol"&&!!n,t.checked=r?t.checked:!!n,t.defaultChecked=!!n,c!=null&&typeof c!="function"&&typeof c!="symbol"&&typeof c!="boolean"&&(t.name=c),vi(t)}function pi(t,e,l){e==="number"&&Qa(t.ownerDocument)===t||t.defaultValue===""+l||(t.defaultValue=""+l)}function tn(t,e,l,n){if(t=t.options,e){e={};for(var a=0;a"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Ti=!1;if(Le)try{var Vn={};Object.defineProperty(Vn,"passive",{get:function(){Ti=!0}}),window.addEventListener("test",Vn,Vn),window.removeEventListener("test",Vn,Vn)}catch{Ti=!1}var al=null,Ai=null,Va=null;function gs(){if(Va)return Va;var t,e=Ai,l=e.length,n,a="value"in al?al.value:al.textContent,u=a.length;for(t=0;t=Kn),Ts=" ",As=!1;function zs(t,e){switch(t){case"keyup":return vy.indexOf(e.keyCode)!==-1;case"keydown":return e.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Os(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var an=!1;function py(t,e){switch(t){case"compositionend":return Os(e);case"keypress":return e.which!==32?null:(As=!0,Ts);case"textInput":return t=e.data,t===Ts&&As?null:t;default:return null}}function by(t,e){if(an)return t==="compositionend"||!Ri&&zs(t,e)?(t=gs(),Va=Ai=al=null,an=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(e.ctrlKey||e.altKey||e.metaKey)||e.ctrlKey&&e.altKey){if(e.char&&1=e)return{node:l,offset:e-t};t=n}t:{for(;l;){if(l.nextSibling){l=l.nextSibling;break t}l=l.parentNode}l=void 0}l=Bs(l)}}function Hs(t,e){return t&&e?t===e?!0:t&&t.nodeType===3?!1:e&&e.nodeType===3?Hs(t,e.parentNode):"contains"in t?t.contains(e):t.compareDocumentPosition?!!(t.compareDocumentPosition(e)&16):!1:!1}function Ys(t){t=t!=null&&t.ownerDocument!=null&&t.ownerDocument.defaultView!=null?t.ownerDocument.defaultView:window;for(var e=Qa(t.document);e instanceof t.HTMLIFrameElement;){try{var l=typeof e.contentWindow.location.href=="string"}catch{l=!1}if(l)t=e.contentWindow;else break;e=Qa(t.document)}return e}function xi(t){var e=t&&t.nodeName&&t.nodeName.toLowerCase();return e&&(e==="input"&&(t.type==="text"||t.type==="search"||t.type==="tel"||t.type==="url"||t.type==="password")||e==="textarea"||t.contentEditable==="true")}var Ny=Le&&"documentMode"in document&&11>=document.documentMode,un=null,Ci=null,$n=null,Bi=!1;function js(t,e,l){var n=l.window===l?l.document:l.nodeType===9?l:l.ownerDocument;Bi||un==null||un!==Qa(n)||(n=un,"selectionStart"in n&&xi(n)?n={start:n.selectionStart,end:n.selectionEnd}:(n=(n.ownerDocument&&n.ownerDocument.defaultView||window).getSelection(),n={anchorNode:n.anchorNode,anchorOffset:n.anchorOffset,focusNode:n.focusNode,focusOffset:n.focusOffset}),$n&&Wn($n,n)||($n=n,n=Hu(Ci,"onSelect"),0>=c,a-=c,Re=1<<32-ee(e)+a|l<w?(F=H,H=null):F=H.sibling;var lt=b(v,H,g[w],z);if(lt===null){H===null&&(H=F);break}t&&H&<.alternate===null&&e(v,H),d=u(lt,d,w),et===null?j=lt:et.sibling=lt,et=lt,H=F}if(w===g.length)return l(v,H),P&&Qe(v,w),j;if(H===null){for(;ww?(F=H,H=null):F=H.sibling;var Ol=b(v,H,lt.value,z);if(Ol===null){H===null&&(H=F);break}t&&H&&Ol.alternate===null&&e(v,H),d=u(Ol,d,w),et===null?j=Ol:et.sibling=Ol,et=Ol,H=F}if(lt.done)return l(v,H),P&&Qe(v,w),j;if(H===null){for(;!lt.done;w++,lt=g.next())lt=O(v,lt.value,z),lt!==null&&(d=u(lt,d,w),et===null?j=lt:et.sibling=lt,et=lt);return P&&Qe(v,w),j}for(H=n(H);!lt.done;w++,lt=g.next())lt=S(H,v,w,lt.value,z),lt!==null&&(t&<.alternate!==null&&H.delete(lt.key===null?w:lt.key),d=u(lt,d,w),et===null?j=lt:et.sibling=lt,et=lt);return t&&H.forEach(function(Jm){return e(v,Jm)}),P&&Qe(v,w),j}function ot(v,d,g,z){if(typeof g=="object"&&g!==null&&g.type===Ut&&g.key===null&&(g=g.props.children),typeof g=="object"&&g!==null){switch(g.$$typeof){case Yt:t:{for(var j=g.key;d!==null;){if(d.key===j){if(j=g.type,j===Ut){if(d.tag===7){l(v,d.sibling),z=a(d,g.props.children),z.return=v,v=z;break t}}else if(d.elementType===j||typeof j=="object"&&j!==null&&j.$$typeof===Vt&&Ql(j)===d.type){l(v,d.sibling),z=a(d,g.props),la(z,g),z.return=v,v=z;break t}l(v,d);break}else e(v,d);d=d.sibling}g.type===Ut?(z=Hl(g.props.children,v.mode,z,g.key),z.return=v,v=z):(z=Pa(g.type,g.key,g.props,null,v.mode,z),la(z,g),z.return=v,v=z)}return c(v);case _t:t:{for(j=g.key;d!==null;){if(d.key===j)if(d.tag===4&&d.stateNode.containerInfo===g.containerInfo&&d.stateNode.implementation===g.implementation){l(v,d.sibling),z=a(d,g.children||[]),z.return=v,v=z;break t}else{l(v,d);break}else e(v,d);d=d.sibling}z=Qi(g,v.mode,z),z.return=v,v=z}return c(v);case Vt:return g=Ql(g),ot(v,d,g,z)}if(_e(g))return C(v,d,g,z);if(Zt(g)){if(j=Zt(g),typeof j!="function")throw Error(s(150));return g=j.call(g),L(v,d,g,z)}if(typeof g.then=="function")return ot(v,d,iu(g),z);if(g.$$typeof===jt)return ot(v,d,lu(v,g),z);cu(v,g)}return typeof g=="string"&&g!==""||typeof g=="number"||typeof g=="bigint"?(g=""+g,d!==null&&d.tag===6?(l(v,d.sibling),z=a(d,g),z.return=v,v=z):(l(v,d),z=Xi(g,v.mode,z),z.return=v,v=z),c(v)):l(v,d)}return function(v,d,g,z){try{ea=0;var j=ot(v,d,g,z);return gn=null,j}catch(H){if(H===vn||H===au)throw H;var et=ne(29,H,null,v.mode);return et.lanes=z,et.return=v,et}finally{}}}var Vl=co(!0),fo=co(!1),sl=!1;function Pi(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function tc(t,e){t=t.updateQueue,e.updateQueue===t&&(e.updateQueue={baseState:t.baseState,firstBaseUpdate:t.firstBaseUpdate,lastBaseUpdate:t.lastBaseUpdate,shared:t.shared,callbacks:null})}function ol(t){return{lane:t,tag:0,payload:null,callback:null,next:null}}function rl(t,e,l){var n=t.updateQueue;if(n===null)return null;if(n=n.shared,(nt&2)!==0){var a=n.pending;return a===null?e.next=e:(e.next=a.next,a.next=e),n.pending=e,e=Ia(t),ws(t,null,l),e}return Fa(t,n,e,l),Ia(t)}function na(t,e,l){if(e=e.updateQueue,e!==null&&(e=e.shared,(l&4194048)!==0)){var n=e.lanes;n&=t.pendingLanes,l|=n,e.lanes=l,Pf(t,l)}}function ec(t,e){var l=t.updateQueue,n=t.alternate;if(n!==null&&(n=n.updateQueue,l===n)){var a=null,u=null;if(l=l.firstBaseUpdate,l!==null){do{var c={lane:l.lane,tag:l.tag,payload:l.payload,callback:null,next:null};u===null?a=u=c:u=u.next=c,l=l.next}while(l!==null);u===null?a=u=e:u=u.next=e}else a=u=e;l={baseState:n.baseState,firstBaseUpdate:a,lastBaseUpdate:u,shared:n.shared,callbacks:n.callbacks},t.updateQueue=l;return}t=l.lastBaseUpdate,t===null?l.firstBaseUpdate=e:t.next=e,l.lastBaseUpdate=e}var lc=!1;function aa(){if(lc){var t=mn;if(t!==null)throw t}}function ua(t,e,l,n){lc=!1;var a=t.updateQueue;sl=!1;var u=a.firstBaseUpdate,c=a.lastBaseUpdate,r=a.shared.pending;if(r!==null){a.shared.pending=null;var h=r,p=h.next;h.next=null,c===null?u=p:c.next=p,c=h;var _=t.alternate;_!==null&&(_=_.updateQueue,r=_.lastBaseUpdate,r!==c&&(r===null?_.firstBaseUpdate=p:r.next=p,_.lastBaseUpdate=h))}if(u!==null){var O=a.baseState;c=0,_=p=h=null,r=u;do{var b=r.lane&-536870913,S=b!==r.lane;if(S?($&b)===b:(n&b)===b){b!==0&&b===yn&&(lc=!0),_!==null&&(_=_.next={lane:0,tag:r.tag,payload:r.payload,callback:null,next:null});t:{var C=t,L=r;b=e;var ot=l;switch(L.tag){case 1:if(C=L.payload,typeof C=="function"){O=C.call(ot,O,b);break t}O=C;break t;case 3:C.flags=C.flags&-65537|128;case 0:if(C=L.payload,b=typeof C=="function"?C.call(ot,O,b):C,b==null)break t;O=x({},O,b);break t;case 2:sl=!0}}b=r.callback,b!==null&&(t.flags|=64,S&&(t.flags|=8192),S=a.callbacks,S===null?a.callbacks=[b]:S.push(b))}else S={lane:b,tag:r.tag,payload:r.payload,callback:r.callback,next:null},_===null?(p=_=S,h=O):_=_.next=S,c|=b;if(r=r.next,r===null){if(r=a.shared.pending,r===null)break;S=r,r=S.next,S.next=null,a.lastBaseUpdate=S,a.shared.pending=null}}while(!0);_===null&&(h=O),a.baseState=h,a.firstBaseUpdate=p,a.lastBaseUpdate=_,u===null&&(a.shared.lanes=0),vl|=c,t.lanes=c,t.memoizedState=O}}function so(t,e){if(typeof t!="function")throw Error(s(191,t));t.call(e)}function oo(t,e){var l=t.callbacks;if(l!==null)for(t.callbacks=null,t=0;tu?u:8;var c=T.T,r={};T.T=r,_c(t,!1,e,l);try{var h=a(),p=T.S;if(p!==null&&p(r,h),h!==null&&typeof h=="object"&&typeof h.then=="function"){var _=Hy(h,n);fa(t,e,_,fe(t))}else fa(t,e,n,fe(t))}catch(O){fa(t,e,{then:function(){},status:"rejected",reason:O},fe())}finally{D.p=u,c!==null&&r.types!==null&&(c.types=r.types),T.T=c}}function Gy(){}function bc(t,e,l,n){if(t.tag!==5)throw Error(s(476));var a=Vo(t).queue;Go(t,a,e,X,l===null?Gy:function(){return Zo(t),l(n)})}function Vo(t){var e=t.memoizedState;if(e!==null)return e;e={memoizedState:X,baseState:X,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:we,lastRenderedState:X},next:null};var l={};return e.next={memoizedState:l,baseState:l,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:we,lastRenderedState:l},next:null},t.memoizedState=e,t=t.alternate,t!==null&&(t.memoizedState=e),e}function Zo(t){var e=Vo(t);e.next===null&&(e=t.alternate.memoizedState),fa(t,e.next.queue,{},fe())}function Sc(){return Bt(za)}function wo(){return St().memoizedState}function Ko(){return St().memoizedState}function Vy(t){for(var e=t.return;e!==null;){switch(e.tag){case 24:case 3:var l=fe();t=ol(l);var n=rl(e,t,l);n!==null&&(Ft(n,e,l),na(n,e,l)),e={cache:Wi()},t.payload=e;return}e=e.return}}function Zy(t,e,l){var n=fe();l={lane:n,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},gu(t)?ko(e,l):(l=ji(t,e,l,n),l!==null&&(Ft(l,t,n),Wo(l,e,n)))}function Jo(t,e,l){var n=fe();fa(t,e,l,n)}function fa(t,e,l,n){var a={lane:n,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null};if(gu(t))ko(e,a);else{var u=t.alternate;if(t.lanes===0&&(u===null||u.lanes===0)&&(u=e.lastRenderedReducer,u!==null))try{var c=e.lastRenderedState,r=u(c,l);if(a.hasEagerState=!0,a.eagerState=r,le(r,c))return Fa(t,e,a,0),ht===null&&$a(),!1}catch{}finally{}if(l=ji(t,e,a,n),l!==null)return Ft(l,t,n),Wo(l,e,n),!0}return!1}function _c(t,e,l,n){if(n={lane:2,revertLane:Pc(),gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},gu(t)){if(e)throw Error(s(479))}else e=ji(t,l,n,2),e!==null&&Ft(e,t,2)}function gu(t){var e=t.alternate;return t===Z||e!==null&&e===Z}function ko(t,e){bn=ou=!0;var l=t.pending;l===null?e.next=e:(e.next=l.next,l.next=e),t.pending=e}function Wo(t,e,l){if((l&4194048)!==0){var n=e.lanes;n&=t.pendingLanes,l|=n,e.lanes=l,Pf(t,l)}}var sa={readContext:Bt,use:du,useCallback:vt,useContext:vt,useEffect:vt,useImperativeHandle:vt,useLayoutEffect:vt,useInsertionEffect:vt,useMemo:vt,useReducer:vt,useRef:vt,useState:vt,useDebugValue:vt,useDeferredValue:vt,useTransition:vt,useSyncExternalStore:vt,useId:vt,useHostTransitionStatus:vt,useFormState:vt,useActionState:vt,useOptimistic:vt,useMemoCache:vt,useCacheRefresh:vt};sa.useEffectEvent=vt;var $o={readContext:Bt,use:du,useCallback:function(t,e){return Qt().memoizedState=[t,e===void 0?null:e],t},useContext:Bt,useEffect:Co,useImperativeHandle:function(t,e,l){l=l!=null?l.concat([t]):null,mu(4194308,4,Yo.bind(null,e,t),l)},useLayoutEffect:function(t,e){return mu(4194308,4,t,e)},useInsertionEffect:function(t,e){mu(4,2,t,e)},useMemo:function(t,e){var l=Qt();e=e===void 0?null:e;var n=t();if(Zl){ll(!0);try{t()}finally{ll(!1)}}return l.memoizedState=[n,e],n},useReducer:function(t,e,l){var n=Qt();if(l!==void 0){var a=l(e);if(Zl){ll(!0);try{l(e)}finally{ll(!1)}}}else a=e;return n.memoizedState=n.baseState=a,t={pending:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:a},n.queue=t,t=t.dispatch=Zy.bind(null,Z,t),[n.memoizedState,t]},useRef:function(t){var e=Qt();return t={current:t},e.memoizedState=t},useState:function(t){t=yc(t);var e=t.queue,l=Jo.bind(null,Z,e);return e.dispatch=l,[t.memoizedState,l]},useDebugValue:gc,useDeferredValue:function(t,e){var l=Qt();return pc(l,t,e)},useTransition:function(){var t=yc(!1);return t=Go.bind(null,Z,t.queue,!0,!1),Qt().memoizedState=t,[!1,t]},useSyncExternalStore:function(t,e,l){var n=Z,a=Qt();if(P){if(l===void 0)throw Error(s(407));l=l()}else{if(l=e(),ht===null)throw Error(s(349));($&127)!==0||go(n,e,l)}a.memoizedState=l;var u={value:l,getSnapshot:e};return a.queue=u,Co(bo.bind(null,n,u,t),[t]),n.flags|=2048,_n(9,{destroy:void 0},po.bind(null,n,u,l,e),null),l},useId:function(){var t=Qt(),e=ht.identifierPrefix;if(P){var l=De,n=Re;l=(n&~(1<<32-ee(n)-1)).toString(32)+l,e="_"+e+"R_"+l,l=ru++,0<\/script>",u=u.removeChild(u.firstChild);break;case"select":u=typeof n.is=="string"?c.createElement("select",{is:n.is}):c.createElement("select"),n.multiple?u.multiple=!0:n.size&&(u.size=n.size);break;default:u=typeof n.is=="string"?c.createElement(a,{is:n.is}):c.createElement(a)}}u[xt]=e,u[wt]=n;t:for(c=e.child;c!==null;){if(c.tag===5||c.tag===6)u.appendChild(c.stateNode);else if(c.tag!==4&&c.tag!==27&&c.child!==null){c.child.return=c,c=c.child;continue}if(c===e)break t;for(;c.sibling===null;){if(c.return===null||c.return===e)break t;c=c.return}c.sibling.return=c.return,c=c.sibling}e.stateNode=u;t:switch(Ht(u,a,n),a){case"button":case"input":case"select":case"textarea":n=!!n.autoFocus;break t;case"img":n=!0;break t;default:n=!1}n&&Je(e)}}return yt(e),qc(e,e.type,t===null?null:t.memoizedProps,e.pendingProps,l),null;case 6:if(t&&e.stateNode!=null)t.memoizedProps!==n&&Je(e);else{if(typeof n!="string"&&e.stateNode===null)throw Error(s(166));if(t=J.current,hn(e)){if(t=e.stateNode,l=e.memoizedProps,n=null,a=Ct,a!==null)switch(a.tag){case 27:case 5:n=a.memoizedProps}t[xt]=e,t=!!(t.nodeValue===l||n!==null&&n.suppressHydrationWarning===!0||mh(t.nodeValue,l)),t||cl(e,!0)}else t=Yu(t).createTextNode(n),t[xt]=e,e.stateNode=t}return yt(e),null;case 31:if(l=e.memoizedState,t===null||t.memoizedState!==null){if(n=hn(e),l!==null){if(t===null){if(!n)throw Error(s(318));if(t=e.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(s(557));t[xt]=e}else Yl(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;yt(e),t=!1}else l=wi(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=l),t=!0;if(!t)return e.flags&256?(ue(e),e):(ue(e),null);if((e.flags&128)!==0)throw Error(s(558))}return yt(e),null;case 13:if(n=e.memoizedState,t===null||t.memoizedState!==null&&t.memoizedState.dehydrated!==null){if(a=hn(e),n!==null&&n.dehydrated!==null){if(t===null){if(!a)throw Error(s(318));if(a=e.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(s(317));a[xt]=e}else Yl(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;yt(e),a=!1}else a=wi(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=a),a=!0;if(!a)return e.flags&256?(ue(e),e):(ue(e),null)}return ue(e),(e.flags&128)!==0?(e.lanes=l,e):(l=n!==null,t=t!==null&&t.memoizedState!==null,l&&(n=e.child,a=null,n.alternate!==null&&n.alternate.memoizedState!==null&&n.alternate.memoizedState.cachePool!==null&&(a=n.alternate.memoizedState.cachePool.pool),u=null,n.memoizedState!==null&&n.memoizedState.cachePool!==null&&(u=n.memoizedState.cachePool.pool),u!==a&&(n.flags|=2048)),l!==t&&l&&(e.child.flags|=8192),Eu(e,e.updateQueue),yt(e),null);case 4:return pt(),t===null&&nf(e.stateNode.containerInfo),yt(e),null;case 10:return Ve(e.type),yt(e),null;case 19:if(N(bt),n=e.memoizedState,n===null)return yt(e),null;if(a=(e.flags&128)!==0,u=n.rendering,u===null)if(a)ra(n,!1);else{if(gt!==0||t!==null&&(t.flags&128)!==0)for(t=e.child;t!==null;){if(u=su(t),u!==null){for(e.flags|=128,ra(n,!1),t=u.updateQueue,e.updateQueue=t,Eu(e,t),e.subtreeFlags=0,t=l,l=e.child;l!==null;)Ks(l,t),l=l.sibling;return U(bt,bt.current&1|2),P&&Qe(e,n.treeForkCount),e.child}t=t.sibling}n.tail!==null&&Pt()>Nu&&(e.flags|=128,a=!0,ra(n,!1),e.lanes=4194304)}else{if(!a)if(t=su(u),t!==null){if(e.flags|=128,a=!0,t=t.updateQueue,e.updateQueue=t,Eu(e,t),ra(n,!0),n.tail===null&&n.tailMode==="hidden"&&!u.alternate&&!P)return yt(e),null}else 2*Pt()-n.renderingStartTime>Nu&&l!==536870912&&(e.flags|=128,a=!0,ra(n,!1),e.lanes=4194304);n.isBackwards?(u.sibling=e.child,e.child=u):(t=n.last,t!==null?t.sibling=u:e.child=u,n.last=u)}return n.tail!==null?(t=n.tail,n.rendering=t,n.tail=t.sibling,n.renderingStartTime=Pt(),t.sibling=null,l=bt.current,U(bt,a?l&1|2:l&1),P&&Qe(e,n.treeForkCount),t):(yt(e),null);case 22:case 23:return ue(e),ac(),n=e.memoizedState!==null,t!==null?t.memoizedState!==null!==n&&(e.flags|=8192):n&&(e.flags|=8192),n?(l&536870912)!==0&&(e.flags&128)===0&&(yt(e),e.subtreeFlags&6&&(e.flags|=8192)):yt(e),l=e.updateQueue,l!==null&&Eu(e,l.retryQueue),l=null,t!==null&&t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(l=t.memoizedState.cachePool.pool),n=null,e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),n!==l&&(e.flags|=2048),t!==null&&N(Xl),null;case 24:return l=null,t!==null&&(l=t.memoizedState.cache),e.memoizedState.cache!==l&&(e.flags|=2048),Ve(Et),yt(e),null;case 25:return null;case 30:return null}throw Error(s(156,e.tag))}function Wy(t,e){switch(Vi(e),e.tag){case 1:return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 3:return Ve(Et),pt(),t=e.flags,(t&65536)!==0&&(t&128)===0?(e.flags=t&-65537|128,e):null;case 26:case 27:case 5:return Ca(e),null;case 31:if(e.memoizedState!==null){if(ue(e),e.alternate===null)throw Error(s(340));Yl()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 13:if(ue(e),t=e.memoizedState,t!==null&&t.dehydrated!==null){if(e.alternate===null)throw Error(s(340));Yl()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 19:return N(bt),null;case 4:return pt(),null;case 10:return Ve(e.type),null;case 22:case 23:return ue(e),ac(),t!==null&&N(Xl),t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 24:return Ve(Et),null;case 25:return null;default:return null}}function Sr(t,e){switch(Vi(e),e.tag){case 3:Ve(Et),pt();break;case 26:case 27:case 5:Ca(e);break;case 4:pt();break;case 31:e.memoizedState!==null&&ue(e);break;case 13:ue(e);break;case 19:N(bt);break;case 10:Ve(e.type);break;case 22:case 23:ue(e),ac(),t!==null&&N(Xl);break;case 24:Ve(Et)}}function ha(t,e){try{var l=e.updateQueue,n=l!==null?l.lastEffect:null;if(n!==null){var a=n.next;l=a;do{if((l.tag&t)===t){n=void 0;var u=l.create,c=l.inst;n=u(),c.destroy=n}l=l.next}while(l!==a)}}catch(r){it(e,e.return,r)}}function yl(t,e,l){try{var n=e.updateQueue,a=n!==null?n.lastEffect:null;if(a!==null){var u=a.next;n=u;do{if((n.tag&t)===t){var c=n.inst,r=c.destroy;if(r!==void 0){c.destroy=void 0,a=e;var h=l,p=r;try{p()}catch(_){it(a,h,_)}}}n=n.next}while(n!==u)}}catch(_){it(e,e.return,_)}}function _r(t){var e=t.updateQueue;if(e!==null){var l=t.stateNode;try{oo(e,l)}catch(n){it(t,t.return,n)}}}function Er(t,e,l){l.props=wl(t.type,t.memoizedProps),l.state=t.memoizedState;try{l.componentWillUnmount()}catch(n){it(t,e,n)}}function da(t,e){try{var l=t.ref;if(l!==null){switch(t.tag){case 26:case 27:case 5:var n=t.stateNode;break;case 30:n=t.stateNode;break;default:n=t.stateNode}typeof l=="function"?t.refCleanup=l(n):l.current=n}}catch(a){it(t,e,a)}}function Ue(t,e){var l=t.ref,n=t.refCleanup;if(l!==null)if(typeof n=="function")try{n()}catch(a){it(t,e,a)}finally{t.refCleanup=null,t=t.alternate,t!=null&&(t.refCleanup=null)}else if(typeof l=="function")try{l(null)}catch(a){it(t,e,a)}else l.current=null}function Tr(t){var e=t.type,l=t.memoizedProps,n=t.stateNode;try{t:switch(e){case"button":case"input":case"select":case"textarea":l.autoFocus&&n.focus();break t;case"img":l.src?n.src=l.src:l.srcSet&&(n.srcset=l.srcSet)}}catch(a){it(t,t.return,a)}}function Hc(t,e,l){try{var n=t.stateNode;gm(n,t.type,l,e),n[wt]=e}catch(a){it(t,t.return,a)}}function Ar(t){return t.tag===5||t.tag===3||t.tag===26||t.tag===27&&_l(t.type)||t.tag===4}function Yc(t){t:for(;;){for(;t.sibling===null;){if(t.return===null||Ar(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.tag===27&&_l(t.type)||t.flags&2||t.child===null||t.tag===4)continue t;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function jc(t,e,l){var n=t.tag;if(n===5||n===6)t=t.stateNode,e?(l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l).insertBefore(t,e):(e=l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l,e.appendChild(t),l=l._reactRootContainer,l!=null||e.onclick!==null||(e.onclick=je));else if(n!==4&&(n===27&&_l(t.type)&&(l=t.stateNode,e=null),t=t.child,t!==null))for(jc(t,e,l),t=t.sibling;t!==null;)jc(t,e,l),t=t.sibling}function Tu(t,e,l){var n=t.tag;if(n===5||n===6)t=t.stateNode,e?l.insertBefore(t,e):l.appendChild(t);else if(n!==4&&(n===27&&_l(t.type)&&(l=t.stateNode),t=t.child,t!==null))for(Tu(t,e,l),t=t.sibling;t!==null;)Tu(t,e,l),t=t.sibling}function zr(t){var e=t.stateNode,l=t.memoizedProps;try{for(var n=t.type,a=e.attributes;a.length;)e.removeAttributeNode(a[0]);Ht(e,n,l),e[xt]=t,e[wt]=l}catch(u){it(t,t.return,u)}}var ke=!1,zt=!1,Lc=!1,Or=typeof WeakSet=="function"?WeakSet:Set,Dt=null;function $y(t,e){if(t=t.containerInfo,cf=Zu,t=Ys(t),xi(t)){if("selectionStart"in t)var l={start:t.selectionStart,end:t.selectionEnd};else t:{l=(l=t.ownerDocument)&&l.defaultView||window;var n=l.getSelection&&l.getSelection();if(n&&n.rangeCount!==0){l=n.anchorNode;var a=n.anchorOffset,u=n.focusNode;n=n.focusOffset;try{l.nodeType,u.nodeType}catch{l=null;break t}var c=0,r=-1,h=-1,p=0,_=0,O=t,b=null;e:for(;;){for(var S;O!==l||a!==0&&O.nodeType!==3||(r=c+a),O!==u||n!==0&&O.nodeType!==3||(h=c+n),O.nodeType===3&&(c+=O.nodeValue.length),(S=O.firstChild)!==null;)b=O,O=S;for(;;){if(O===t)break e;if(b===l&&++p===a&&(r=c),b===u&&++_===n&&(h=c),(S=O.nextSibling)!==null)break;O=b,b=O.parentNode}O=S}l=r===-1||h===-1?null:{start:r,end:h}}else l=null}l=l||{start:0,end:0}}else l=null;for(ff={focusedElem:t,selectionRange:l},Zu=!1,Dt=e;Dt!==null;)if(e=Dt,t=e.child,(e.subtreeFlags&1028)!==0&&t!==null)t.return=e,Dt=t;else for(;Dt!==null;){switch(e=Dt,u=e.alternate,t=e.flags,e.tag){case 0:if((t&4)!==0&&(t=e.updateQueue,t=t!==null?t.events:null,t!==null))for(l=0;l title"))),Ht(u,n,l),u[xt]=t,Rt(u),n=u;break t;case"link":var c=xh("link","href",a).get(n+(l.href||""));if(c){for(var r=0;rot&&(c=ot,ot=L,L=c);var v=qs(r,L),d=qs(r,ot);if(v&&d&&(S.rangeCount!==1||S.anchorNode!==v.node||S.anchorOffset!==v.offset||S.focusNode!==d.node||S.focusOffset!==d.offset)){var g=O.createRange();g.setStart(v.node,v.offset),S.removeAllRanges(),L>ot?(S.addRange(g),S.extend(d.node,d.offset)):(g.setEnd(d.node,d.offset),S.addRange(g))}}}}for(O=[],S=r;S=S.parentNode;)S.nodeType===1&&O.push({element:S,left:S.scrollLeft,top:S.scrollTop});for(typeof r.focus=="function"&&r.focus(),r=0;rl?32:l,T.T=null,l=Kc,Kc=null;var u=pl,c=Pe;if(Nt=0,On=pl=null,Pe=0,(nt&6)!==0)throw Error(s(331));var r=nt;if(nt|=4,Yr(u.current),Br(u,u.current,c,l),nt=r,ba(0,!1),te&&typeof te.onPostCommitFiberRoot=="function")try{te.onPostCommitFiberRoot(Yn,u)}catch{}return!0}finally{D.p=a,T.T=n,eh(t,e)}}function nh(t,e,l){e=de(l,e),e=zc(t.stateNode,e,2),t=rl(t,e,2),t!==null&&(Ln(t,2),xe(t))}function it(t,e,l){if(t.tag===3)nh(t,t,l);else for(;e!==null;){if(e.tag===3){nh(e,t,l);break}else if(e.tag===1){var n=e.stateNode;if(typeof e.type.getDerivedStateFromError=="function"||typeof n.componentDidCatch=="function"&&(gl===null||!gl.has(n))){t=de(l,t),l=ar(2),n=rl(e,l,2),n!==null&&(ur(l,n,e,t),Ln(n,2),xe(n));break}}e=e.return}}function $c(t,e,l){var n=t.pingCache;if(n===null){n=t.pingCache=new Py;var a=new Set;n.set(e,a)}else a=n.get(e),a===void 0&&(a=new Set,n.set(e,a));a.has(l)||(Gc=!0,a.add(l),t=am.bind(null,t,e,l),e.then(t,t))}function am(t,e,l){var n=t.pingCache;n!==null&&n.delete(e),t.pingedLanes|=t.suspendedLanes&l,t.warmLanes&=~l,ht===t&&($&l)===l&&(gt===4||gt===3&&($&62914560)===$&&300>Pt()-Ou?(nt&2)===0&&Nn(t,0):Vc|=l,zn===$&&(zn=0)),xe(t)}function ah(t,e){e===0&&(e=Ff()),t=ql(t,e),t!==null&&(Ln(t,e),xe(t))}function um(t){var e=t.memoizedState,l=0;e!==null&&(l=e.retryLane),ah(t,l)}function im(t,e){var l=0;switch(t.tag){case 31:case 13:var n=t.stateNode,a=t.memoizedState;a!==null&&(l=a.retryLane);break;case 19:n=t.stateNode;break;case 22:n=t.stateNode._retryCache;break;default:throw Error(s(314))}n!==null&&n.delete(e),ah(t,l)}function cm(t,e){return si(t,e)}var Cu=null,Rn=null,Fc=!1,Bu=!1,Ic=!1,Sl=0;function xe(t){t!==Rn&&t.next===null&&(Rn===null?Cu=Rn=t:Rn=Rn.next=t),Bu=!0,Fc||(Fc=!0,sm())}function ba(t,e){if(!Ic&&Bu){Ic=!0;do for(var l=!1,n=Cu;n!==null;){if(t!==0){var a=n.pendingLanes;if(a===0)var u=0;else{var c=n.suspendedLanes,r=n.pingedLanes;u=(1<<31-ee(42|t)+1)-1,u&=a&~(c&~r),u=u&201326741?u&201326741|1:u?u|2:0}u!==0&&(l=!0,fh(n,u))}else u=$,u=ja(n,n===ht?u:0,n.cancelPendingCommit!==null||n.timeoutHandle!==-1),(u&3)===0||jn(n,u)||(l=!0,fh(n,u));n=n.next}while(l);Ic=!1}}function fm(){uh()}function uh(){Bu=Fc=!1;var t=0;Sl!==0&&bm()&&(t=Sl);for(var e=Pt(),l=null,n=Cu;n!==null;){var a=n.next,u=ih(n,e);u===0?(n.next=null,l===null?Cu=a:l.next=a,a===null&&(Rn=l)):(l=n,(t!==0||(u&3)!==0)&&(Bu=!0)),n=a}Nt!==0&&Nt!==5||ba(t),Sl!==0&&(Sl=0)}function ih(t,e){for(var l=t.suspendedLanes,n=t.pingedLanes,a=t.expirationTimes,u=t.pendingLanes&-62914561;0r)break;var _=h.transferSize,O=h.initiatorType;_&&vh(O)&&(h=h.responseEnd,c+=_*(h"u"?null:document;function Mh(t,e,l){var n=Dn;if(n&&typeof e=="string"&&e){var a=re(e);a='link[rel="'+t+'"][href="'+a+'"]',typeof l=="string"&&(a+='[crossorigin="'+l+'"]'),Nh.has(a)||(Nh.add(a),t={rel:t,crossOrigin:l,href:e},n.querySelector(a)===null&&(e=n.createElement("link"),Ht(e,"link",t),Rt(e),n.head.appendChild(e)))}}function Mm(t){tl.D(t),Mh("dns-prefetch",t,null)}function Rm(t,e){tl.C(t,e),Mh("preconnect",t,e)}function Dm(t,e,l){tl.L(t,e,l);var n=Dn;if(n&&t&&e){var a='link[rel="preload"][as="'+re(e)+'"]';e==="image"&&l&&l.imageSrcSet?(a+='[imagesrcset="'+re(l.imageSrcSet)+'"]',typeof l.imageSizes=="string"&&(a+='[imagesizes="'+re(l.imageSizes)+'"]')):a+='[href="'+re(t)+'"]';var u=a;switch(e){case"style":u=Un(t);break;case"script":u=xn(t)}be.has(u)||(t=x({rel:"preload",href:e==="image"&&l&&l.imageSrcSet?void 0:t,as:e},l),be.set(u,t),n.querySelector(a)!==null||e==="style"&&n.querySelector(Ta(u))||e==="script"&&n.querySelector(Aa(u))||(e=n.createElement("link"),Ht(e,"link",t),Rt(e),n.head.appendChild(e)))}}function Um(t,e){tl.m(t,e);var l=Dn;if(l&&t){var n=e&&typeof e.as=="string"?e.as:"script",a='link[rel="modulepreload"][as="'+re(n)+'"][href="'+re(t)+'"]',u=a;switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":u=xn(t)}if(!be.has(u)&&(t=x({rel:"modulepreload",href:t},e),be.set(u,t),l.querySelector(a)===null)){switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(l.querySelector(Aa(u)))return}n=l.createElement("link"),Ht(n,"link",t),Rt(n),l.head.appendChild(n)}}}function xm(t,e,l){tl.S(t,e,l);var n=Dn;if(n&&t){var a=Il(n).hoistableStyles,u=Un(t);e=e||"default";var c=a.get(u);if(!c){var r={loading:0,preload:null};if(c=n.querySelector(Ta(u)))r.loading=5;else{t=x({rel:"stylesheet",href:t,"data-precedence":e},l),(l=be.get(u))&&mf(t,l);var h=c=n.createElement("link");Rt(h),Ht(h,"link",t),h._p=new Promise(function(p,_){h.onload=p,h.onerror=_}),h.addEventListener("load",function(){r.loading|=1}),h.addEventListener("error",function(){r.loading|=2}),r.loading|=4,Lu(c,e,n)}c={type:"stylesheet",instance:c,count:1,state:r},a.set(u,c)}}}function Cm(t,e){tl.X(t,e);var l=Dn;if(l&&t){var n=Il(l).hoistableScripts,a=xn(t),u=n.get(a);u||(u=l.querySelector(Aa(a)),u||(t=x({src:t,async:!0},e),(e=be.get(a))&&vf(t,e),u=l.createElement("script"),Rt(u),Ht(u,"link",t),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(a,u))}}function Bm(t,e){tl.M(t,e);var l=Dn;if(l&&t){var n=Il(l).hoistableScripts,a=xn(t),u=n.get(a);u||(u=l.querySelector(Aa(a)),u||(t=x({src:t,async:!0,type:"module"},e),(e=be.get(a))&&vf(t,e),u=l.createElement("script"),Rt(u),Ht(u,"link",t),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(a,u))}}function Rh(t,e,l,n){var a=(a=J.current)?ju(a):null;if(!a)throw Error(s(446));switch(t){case"meta":case"title":return null;case"style":return typeof l.precedence=="string"&&typeof l.href=="string"?(e=Un(l.href),l=Il(a).hoistableStyles,n=l.get(e),n||(n={type:"style",instance:null,count:0,state:null},l.set(e,n)),n):{type:"void",instance:null,count:0,state:null};case"link":if(l.rel==="stylesheet"&&typeof l.href=="string"&&typeof l.precedence=="string"){t=Un(l.href);var u=Il(a).hoistableStyles,c=u.get(t);if(c||(a=a.ownerDocument||a,c={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},u.set(t,c),(u=a.querySelector(Ta(t)))&&!u._p&&(c.instance=u,c.state.loading=5),be.has(t)||(l={rel:"preload",as:"style",href:l.href,crossOrigin:l.crossOrigin,integrity:l.integrity,media:l.media,hrefLang:l.hrefLang,referrerPolicy:l.referrerPolicy},be.set(t,l),u||qm(a,t,l,c.state))),e&&n===null)throw Error(s(528,""));return c}if(e&&n!==null)throw Error(s(529,""));return null;case"script":return e=l.async,l=l.src,typeof l=="string"&&e&&typeof e!="function"&&typeof e!="symbol"?(e=xn(l),l=Il(a).hoistableScripts,n=l.get(e),n||(n={type:"script",instance:null,count:0,state:null},l.set(e,n)),n):{type:"void",instance:null,count:0,state:null};default:throw Error(s(444,t))}}function Un(t){return'href="'+re(t)+'"'}function Ta(t){return'link[rel="stylesheet"]['+t+"]"}function Dh(t){return x({},t,{"data-precedence":t.precedence,precedence:null})}function qm(t,e,l,n){t.querySelector('link[rel="preload"][as="style"]['+e+"]")?n.loading=1:(e=t.createElement("link"),n.preload=e,e.addEventListener("load",function(){return n.loading|=1}),e.addEventListener("error",function(){return n.loading|=2}),Ht(e,"link",l),Rt(e),t.head.appendChild(e))}function xn(t){return'[src="'+re(t)+'"]'}function Aa(t){return"script[async]"+t}function Uh(t,e,l){if(e.count++,e.instance===null)switch(e.type){case"style":var n=t.querySelector('style[data-href~="'+re(l.href)+'"]');if(n)return e.instance=n,Rt(n),n;var a=x({},l,{"data-href":l.href,"data-precedence":l.precedence,href:null,precedence:null});return n=(t.ownerDocument||t).createElement("style"),Rt(n),Ht(n,"style",a),Lu(n,l.precedence,t),e.instance=n;case"stylesheet":a=Un(l.href);var u=t.querySelector(Ta(a));if(u)return e.state.loading|=4,e.instance=u,Rt(u),u;n=Dh(l),(a=be.get(a))&&mf(n,a),u=(t.ownerDocument||t).createElement("link"),Rt(u);var c=u;return c._p=new Promise(function(r,h){c.onload=r,c.onerror=h}),Ht(u,"link",n),e.state.loading|=4,Lu(u,l.precedence,t),e.instance=u;case"script":return u=xn(l.src),(a=t.querySelector(Aa(u)))?(e.instance=a,Rt(a),a):(n=l,(a=be.get(u))&&(n=x({},l),vf(n,a)),t=t.ownerDocument||t,a=t.createElement("script"),Rt(a),Ht(a,"link",n),t.head.appendChild(a),e.instance=a);case"void":return null;default:throw Error(s(443,e.type))}else e.type==="stylesheet"&&(e.state.loading&4)===0&&(n=e.instance,e.state.loading|=4,Lu(n,l.precedence,t));return e.instance}function Lu(t,e,l){for(var n=l.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=n.length?n[n.length-1]:null,u=a,c=0;c title"):null)}function Hm(t,e,l){if(l===1||e.itemProp!=null)return!1;switch(t){case"meta":case"title":return!0;case"style":if(typeof e.precedence!="string"||typeof e.href!="string"||e.href==="")break;return!0;case"link":if(typeof e.rel!="string"||typeof e.href!="string"||e.href===""||e.onLoad||e.onError)break;switch(e.rel){case"stylesheet":return t=e.disabled,typeof e.precedence=="string"&&t==null;default:return!0}case"script":if(e.async&&typeof e.async!="function"&&typeof e.async!="symbol"&&!e.onLoad&&!e.onError&&e.src&&typeof e.src=="string")return!0}return!1}function Bh(t){return!(t.type==="stylesheet"&&(t.state.loading&3)===0)}function Ym(t,e,l,n){if(l.type==="stylesheet"&&(typeof n.media!="string"||matchMedia(n.media).matches!==!1)&&(l.state.loading&4)===0){if(l.instance===null){var a=Un(n.href),u=e.querySelector(Ta(a));if(u){e=u._p,e!==null&&typeof e=="object"&&typeof e.then=="function"&&(t.count++,t=Qu.bind(t),e.then(t,t)),l.state.loading|=4,l.instance=u,Rt(u);return}u=e.ownerDocument||e,n=Dh(n),(a=be.get(a))&&mf(n,a),u=u.createElement("link"),Rt(u);var c=u;c._p=new Promise(function(r,h){c.onload=r,c.onerror=h}),Ht(u,"link",n),l.instance=u}t.stylesheets===null&&(t.stylesheets=new Map),t.stylesheets.set(l,e),(e=l.state.preload)&&(l.state.loading&3)===0&&(t.count++,l=Qu.bind(t),e.addEventListener("load",l),e.addEventListener("error",l))}}var gf=0;function jm(t,e){return t.stylesheets&&t.count===0&&Vu(t,t.stylesheets),0gf?50:800)+e);return t.unsuspend=l,function(){t.unsuspend=null,clearTimeout(n),clearTimeout(a)}}:null}function Qu(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Vu(this,this.stylesheets);else if(this.unsuspend){var t=this.unsuspend;this.unsuspend=null,t()}}}var Gu=null;function Vu(t,e){t.stylesheets=null,t.unsuspend!==null&&(t.count++,Gu=new Map,e.forEach(Lm,t),Gu=null,Qu.call(t))}function Lm(t,e){if(!(e.state.loading&4)){var l=Gu.get(t);if(l)var n=l.get(null);else{l=new Map,Gu.set(t,l);for(var a=t.querySelectorAll("link[data-precedence],style[data-precedence]"),u=0;u"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(o)}catch(i){console.error(i)}}return o(),Of.exports=e0(),Of.exports}var n0=l0();const Be=Object.create(null);Be.open="0";Be.close="1";Be.ping="2";Be.pong="3";Be.message="4";Be.upgrade="5";Be.noop="6";const Pu=Object.create(null);Object.keys(Be).forEach(o=>{Pu[Be[o]]=o});const Cf={type:"error",data:"parser error"},sd=typeof Blob=="function"||typeof Blob<"u"&&Object.prototype.toString.call(Blob)==="[object BlobConstructor]",od=typeof ArrayBuffer=="function",rd=o=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(o):o&&o.buffer instanceof ArrayBuffer,Xf=({type:o,data:i},f,s)=>sd&&i instanceof Blob?f?s(i):ad(i,s):od&&(i instanceof ArrayBuffer||rd(i))?f?s(i):ad(new Blob([i]),s):s(Be[o]+(i||"")),ad=(o,i)=>{const f=new FileReader;return f.onload=function(){const s=f.result.split(",")[1];i("b"+(s||""))},f.readAsDataURL(o)};function ud(o){return o instanceof Uint8Array?o:o instanceof ArrayBuffer?new Uint8Array(o):new Uint8Array(o.buffer,o.byteOffset,o.byteLength)}let Df;function a0(o,i){if(sd&&o.data instanceof Blob)return o.data.arrayBuffer().then(ud).then(i);if(od&&(o.data instanceof ArrayBuffer||rd(o.data)))return i(ud(o.data));Xf(o,!1,f=>{Df||(Df=new TextEncoder),i(Df.encode(f))})}const id="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",xa=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(let o=0;o{let i=o.length*.75,f=o.length,s,m=0,E,R,B,M;o[o.length-1]==="="&&(i--,o[o.length-2]==="="&&i--);const A=new ArrayBuffer(i),Q=new Uint8Array(A);for(s=0;s>4,Q[m++]=(R&15)<<4|B>>2,Q[m++]=(B&3)<<6|M&63;return A},i0=typeof ArrayBuffer=="function",Qf=(o,i)=>{if(typeof o!="string")return{type:"message",data:hd(o,i)};const f=o.charAt(0);return f==="b"?{type:"message",data:c0(o.substring(1),i)}:Pu[f]?o.length>1?{type:Pu[f],data:o.substring(1)}:{type:Pu[f]}:Cf},c0=(o,i)=>{if(i0){const f=u0(o);return hd(f,i)}else return{base64:!0,data:o}},hd=(o,i)=>{switch(i){case"blob":return o instanceof Blob?o:new Blob([o]);case"arraybuffer":default:return o instanceof ArrayBuffer?o:o.buffer}},dd="",f0=(o,i)=>{const f=o.length,s=new Array(f);let m=0;o.forEach((E,R)=>{Xf(E,!1,B=>{s[R]=B,++m===f&&i(s.join(dd))})})},s0=(o,i)=>{const f=o.split(dd),s=[];for(let m=0;m{const s=f.length;let m;if(s<126)m=new Uint8Array(1),new DataView(m.buffer).setUint8(0,s);else if(s<65536){m=new Uint8Array(3);const E=new DataView(m.buffer);E.setUint8(0,126),E.setUint16(1,s)}else{m=new Uint8Array(9);const E=new DataView(m.buffer);E.setUint8(0,127),E.setBigUint64(1,BigInt(s))}o.data&&typeof o.data!="string"&&(m[0]|=128),i.enqueue(m),i.enqueue(f)})}})}let Uf;function Fu(o){return o.reduce((i,f)=>i+f.length,0)}function Iu(o,i){if(o[0].length===i)return o.shift();const f=new Uint8Array(i);let s=0;for(let m=0;mMath.pow(2,21)-1){B.enqueue(Cf);break}m=Q*Math.pow(2,32)+A.getUint32(4),s=3}else{if(Fu(f)o){B.enqueue(Cf);break}}}})}const yd=4;function Ot(o){if(o)return h0(o)}function h0(o){for(var i in Ot.prototype)o[i]=Ot.prototype[i];return o}Ot.prototype.on=Ot.prototype.addEventListener=function(o,i){return this._callbacks=this._callbacks||{},(this._callbacks["$"+o]=this._callbacks["$"+o]||[]).push(i),this};Ot.prototype.once=function(o,i){function f(){this.off(o,f),i.apply(this,arguments)}return f.fn=i,this.on(o,f),this};Ot.prototype.off=Ot.prototype.removeListener=Ot.prototype.removeAllListeners=Ot.prototype.removeEventListener=function(o,i){if(this._callbacks=this._callbacks||{},arguments.length==0)return this._callbacks={},this;var f=this._callbacks["$"+o];if(!f)return this;if(arguments.length==1)return delete this._callbacks["$"+o],this;for(var s,m=0;mPromise.resolve().then(i):(i,f)=>f(i,0),Se=typeof self<"u"?self:typeof window<"u"?window:Function("return this")(),d0="arraybuffer";function md(o,...i){return i.reduce((f,s)=>(o.hasOwnProperty(s)&&(f[s]=o[s]),f),{})}const y0=Se.setTimeout,m0=Se.clearTimeout;function ai(o,i){i.useNativeTimers?(o.setTimeoutFn=y0.bind(Se),o.clearTimeoutFn=m0.bind(Se)):(o.setTimeoutFn=Se.setTimeout.bind(Se),o.clearTimeoutFn=Se.clearTimeout.bind(Se))}const v0=1.33;function g0(o){return typeof o=="string"?p0(o):Math.ceil((o.byteLength||o.size)*v0)}function p0(o){let i=0,f=0;for(let s=0,m=o.length;s=57344?f+=3:(s++,f+=4);return f}function vd(){return Date.now().toString(36).substring(3)+Math.random().toString(36).substring(2,5)}function b0(o){let i="";for(let f in o)o.hasOwnProperty(f)&&(i.length&&(i+="&"),i+=encodeURIComponent(f)+"="+encodeURIComponent(o[f]));return i}function S0(o){let i={},f=o.split("&");for(let s=0,m=f.length;s{this.readyState="paused",i()};if(this._polling||!this.writable){let s=0;this._polling&&(s++,this.once("pollComplete",function(){--s||f()})),this.writable||(s++,this.once("drain",function(){--s||f()}))}else f()}_poll(){this._polling=!0,this.doPoll(),this.emitReserved("poll")}onData(i){const f=s=>{if(this.readyState==="opening"&&s.type==="open"&&this.onOpen(),s.type==="close")return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(s)};s0(i,this.socket.binaryType).forEach(f),this.readyState!=="closed"&&(this._polling=!1,this.emitReserved("pollComplete"),this.readyState==="open"&&this._poll())}doClose(){const i=()=>{this.write([{type:"close"}])};this.readyState==="open"?i():this.once("open",i)}write(i){this.writable=!1,f0(i,f=>{this.doWrite(f,()=>{this.writable=!0,this.emitReserved("drain")})})}uri(){const i=this.opts.secure?"https":"http",f=this.query||{};return this.opts.timestampRequests!==!1&&(f[this.opts.timestampParam]=vd()),!this.supportsBinary&&!f.sid&&(f.b64=1),this.createUri(i,f)}}let gd=!1;try{gd=typeof XMLHttpRequest<"u"&&"withCredentials"in new XMLHttpRequest}catch{}const T0=gd;function A0(){}class z0 extends E0{constructor(i){if(super(i),typeof location<"u"){const f=location.protocol==="https:";let s=location.port;s||(s=f?"443":"80"),this.xd=typeof location<"u"&&i.hostname!==location.hostname||s!==i.port}}doWrite(i,f){const s=this.request({method:"POST",data:i});s.on("success",f),s.on("error",(m,E)=>{this.onError("xhr post error",m,E)})}doPoll(){const i=this.request();i.on("data",this.onData.bind(this)),i.on("error",(f,s)=>{this.onError("xhr poll error",f,s)}),this.pollXhr=i}}class Ce extends Ot{constructor(i,f,s){super(),this.createRequest=i,ai(this,s),this._opts=s,this._method=s.method||"GET",this._uri=f,this._data=s.data!==void 0?s.data:null,this._create()}_create(){var i;const f=md(this._opts,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");f.xdomain=!!this._opts.xd;const s=this._xhr=this.createRequest(f);try{s.open(this._method,this._uri,!0);try{if(this._opts.extraHeaders){s.setDisableHeaderCheck&&s.setDisableHeaderCheck(!0);for(let m in this._opts.extraHeaders)this._opts.extraHeaders.hasOwnProperty(m)&&s.setRequestHeader(m,this._opts.extraHeaders[m])}}catch{}if(this._method==="POST")try{s.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch{}try{s.setRequestHeader("Accept","*/*")}catch{}(i=this._opts.cookieJar)===null||i===void 0||i.addCookies(s),"withCredentials"in s&&(s.withCredentials=this._opts.withCredentials),this._opts.requestTimeout&&(s.timeout=this._opts.requestTimeout),s.onreadystatechange=()=>{var m;s.readyState===3&&((m=this._opts.cookieJar)===null||m===void 0||m.parseCookies(s.getResponseHeader("set-cookie"))),s.readyState===4&&(s.status===200||s.status===1223?this._onLoad():this.setTimeoutFn(()=>{this._onError(typeof s.status=="number"?s.status:0)},0))},s.send(this._data)}catch(m){this.setTimeoutFn(()=>{this._onError(m)},0);return}typeof document<"u"&&(this._index=Ce.requestsCount++,Ce.requests[this._index]=this)}_onError(i){this.emitReserved("error",i,this._xhr),this._cleanup(!0)}_cleanup(i){if(!(typeof this._xhr>"u"||this._xhr===null)){if(this._xhr.onreadystatechange=A0,i)try{this._xhr.abort()}catch{}typeof document<"u"&&delete Ce.requests[this._index],this._xhr=null}}_onLoad(){const i=this._xhr.responseText;i!==null&&(this.emitReserved("data",i),this.emitReserved("success"),this._cleanup())}abort(){this._cleanup()}}Ce.requestsCount=0;Ce.requests={};if(typeof document<"u"){if(typeof attachEvent=="function")attachEvent("onunload",cd);else if(typeof addEventListener=="function"){const o="onpagehide"in Se?"pagehide":"unload";addEventListener(o,cd,!1)}}function cd(){for(let o in Ce.requests)Ce.requests.hasOwnProperty(o)&&Ce.requests[o].abort()}const O0=(function(){const o=pd({xdomain:!1});return o&&o.responseType!==null})();class N0 extends z0{constructor(i){super(i);const f=i&&i.forceBase64;this.supportsBinary=O0&&!f}request(i={}){return Object.assign(i,{xd:this.xd},this.opts),new Ce(pd,this.uri(),i)}}function pd(o){const i=o.xdomain;try{if(typeof XMLHttpRequest<"u"&&(!i||T0))return new XMLHttpRequest}catch{}if(!i)try{return new Se[["Active"].concat("Object").join("X")]("Microsoft.XMLHTTP")}catch{}}const bd=typeof navigator<"u"&&typeof navigator.product=="string"&&navigator.product.toLowerCase()==="reactnative";class M0 extends Gf{get name(){return"websocket"}doOpen(){const i=this.uri(),f=this.opts.protocols,s=bd?{}:md(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(s.headers=this.opts.extraHeaders);try{this.ws=this.createSocket(i,f,s)}catch(m){return this.emitReserved("error",m)}this.ws.binaryType=this.socket.binaryType,this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=i=>this.onClose({description:"websocket connection closed",context:i}),this.ws.onmessage=i=>this.onData(i.data),this.ws.onerror=i=>this.onError("websocket error",i)}write(i){this.writable=!1;for(let f=0;f{try{this.doWrite(s,E)}catch{}m&&ni(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){typeof this.ws<"u"&&(this.ws.onerror=()=>{},this.ws.close(),this.ws=null)}uri(){const i=this.opts.secure?"wss":"ws",f=this.query||{};return this.opts.timestampRequests&&(f[this.opts.timestampParam]=vd()),this.supportsBinary||(f.b64=1),this.createUri(i,f)}}const xf=Se.WebSocket||Se.MozWebSocket;class R0 extends M0{createSocket(i,f,s){return bd?new xf(i,f,s):f?new xf(i,f):new xf(i)}doWrite(i,f){this.ws.send(f)}}class D0 extends Gf{get name(){return"webtransport"}doOpen(){try{this._transport=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name])}catch(i){return this.emitReserved("error",i)}this._transport.closed.then(()=>{this.onClose()}).catch(i=>{this.onError("webtransport error",i)}),this._transport.ready.then(()=>{this._transport.createBidirectionalStream().then(i=>{const f=r0(Number.MAX_SAFE_INTEGER,this.socket.binaryType),s=i.readable.pipeThrough(f).getReader(),m=o0();m.readable.pipeTo(i.writable),this._writer=m.writable.getWriter();const E=()=>{s.read().then(({done:B,value:M})=>{B||(this.onPacket(M),E())}).catch(B=>{})};E();const R={type:"open"};this.query.sid&&(R.data=`{"sid":"${this.query.sid}"}`),this._writer.write(R).then(()=>this.onOpen())})})}write(i){this.writable=!1;for(let f=0;f{m&&ni(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){var i;(i=this._transport)===null||i===void 0||i.close()}}const U0={websocket:R0,webtransport:D0,polling:N0},x0=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,C0=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function Bf(o){if(o.length>8e3)throw"URI too long";const i=o,f=o.indexOf("["),s=o.indexOf("]");f!=-1&&s!=-1&&(o=o.substring(0,f)+o.substring(f,s).replace(/:/g,";")+o.substring(s,o.length));let m=x0.exec(o||""),E={},R=14;for(;R--;)E[C0[R]]=m[R]||"";return f!=-1&&s!=-1&&(E.source=i,E.host=E.host.substring(1,E.host.length-1).replace(/;/g,":"),E.authority=E.authority.replace("[","").replace("]","").replace(/;/g,":"),E.ipv6uri=!0),E.pathNames=B0(E,E.path),E.queryKey=q0(E,E.query),E}function B0(o,i){const f=/\/{2,9}/g,s=i.replace(f,"/").split("/");return(i.slice(0,1)=="/"||i.length===0)&&s.splice(0,1),i.slice(-1)=="/"&&s.splice(s.length-1,1),s}function q0(o,i){const f={};return i.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,function(s,m,E){m&&(f[m]=E)}),f}const qf=typeof addEventListener=="function"&&typeof removeEventListener=="function",ti=[];qf&&addEventListener("offline",()=>{ti.forEach(o=>o())},!1);class Nl extends Ot{constructor(i,f){if(super(),this.binaryType=d0,this.writeBuffer=[],this._prevBufferLen=0,this._pingInterval=-1,this._pingTimeout=-1,this._maxPayload=-1,this._pingTimeoutTime=1/0,i&&typeof i=="object"&&(f=i,i=null),i){const s=Bf(i);f.hostname=s.host,f.secure=s.protocol==="https"||s.protocol==="wss",f.port=s.port,s.query&&(f.query=s.query)}else f.host&&(f.hostname=Bf(f.host).host);ai(this,f),this.secure=f.secure!=null?f.secure:typeof location<"u"&&location.protocol==="https:",f.hostname&&!f.port&&(f.port=this.secure?"443":"80"),this.hostname=f.hostname||(typeof location<"u"?location.hostname:"localhost"),this.port=f.port||(typeof location<"u"&&location.port?location.port:this.secure?"443":"80"),this.transports=[],this._transportsByName={},f.transports.forEach(s=>{const m=s.prototype.name;this.transports.push(m),this._transportsByName[m]=s}),this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},f),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),typeof this.opts.query=="string"&&(this.opts.query=S0(this.opts.query)),qf&&(this.opts.closeOnBeforeunload&&(this._beforeunloadEventListener=()=>{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this._beforeunloadEventListener,!1)),this.hostname!=="localhost"&&(this._offlineEventListener=()=>{this._onClose("transport close",{description:"network connection lost"})},ti.push(this._offlineEventListener))),this.opts.withCredentials&&(this._cookieJar=void 0),this._open()}createTransport(i){const f=Object.assign({},this.opts.query);f.EIO=yd,f.transport=i,this.id&&(f.sid=this.id);const s=Object.assign({},this.opts,{query:f,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[i]);return new this._transportsByName[i](s)}_open(){if(this.transports.length===0){this.setTimeoutFn(()=>{this.emitReserved("error","No transports available")},0);return}const i=this.opts.rememberUpgrade&&Nl.priorWebsocketSuccess&&this.transports.indexOf("websocket")!==-1?"websocket":this.transports[0];this.readyState="opening";const f=this.createTransport(i);f.open(),this.setTransport(f)}setTransport(i){this.transport&&this.transport.removeAllListeners(),this.transport=i,i.on("drain",this._onDrain.bind(this)).on("packet",this._onPacket.bind(this)).on("error",this._onError.bind(this)).on("close",f=>this._onClose("transport close",f))}onOpen(){this.readyState="open",Nl.priorWebsocketSuccess=this.transport.name==="websocket",this.emitReserved("open"),this.flush()}_onPacket(i){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing")switch(this.emitReserved("packet",i),this.emitReserved("heartbeat"),i.type){case"open":this.onHandshake(JSON.parse(i.data));break;case"ping":this._sendPacket("pong"),this.emitReserved("ping"),this.emitReserved("pong"),this._resetPingTimeout();break;case"error":const f=new Error("server error");f.code=i.data,this._onError(f);break;case"message":this.emitReserved("data",i.data),this.emitReserved("message",i.data);break}}onHandshake(i){this.emitReserved("handshake",i),this.id=i.sid,this.transport.query.sid=i.sid,this._pingInterval=i.pingInterval,this._pingTimeout=i.pingTimeout,this._maxPayload=i.maxPayload,this.onOpen(),this.readyState!=="closed"&&this._resetPingTimeout()}_resetPingTimeout(){this.clearTimeoutFn(this._pingTimeoutTimer);const i=this._pingInterval+this._pingTimeout;this._pingTimeoutTime=Date.now()+i,this._pingTimeoutTimer=this.setTimeoutFn(()=>{this._onClose("ping timeout")},i),this.opts.autoUnref&&this._pingTimeoutTimer.unref()}_onDrain(){this.writeBuffer.splice(0,this._prevBufferLen),this._prevBufferLen=0,this.writeBuffer.length===0?this.emitReserved("drain"):this.flush()}flush(){if(this.readyState!=="closed"&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){const i=this._getWritablePackets();this.transport.send(i),this._prevBufferLen=i.length,this.emitReserved("flush")}}_getWritablePackets(){if(!(this._maxPayload&&this.transport.name==="polling"&&this.writeBuffer.length>1))return this.writeBuffer;let f=1;for(let s=0;s0&&f>this._maxPayload)return this.writeBuffer.slice(0,s);f+=2}return this.writeBuffer}_hasPingExpired(){if(!this._pingTimeoutTime)return!0;const i=Date.now()>this._pingTimeoutTime;return i&&(this._pingTimeoutTime=0,ni(()=>{this._onClose("ping timeout")},this.setTimeoutFn)),i}write(i,f,s){return this._sendPacket("message",i,f,s),this}send(i,f,s){return this._sendPacket("message",i,f,s),this}_sendPacket(i,f,s,m){if(typeof f=="function"&&(m=f,f=void 0),typeof s=="function"&&(m=s,s=null),this.readyState==="closing"||this.readyState==="closed")return;s=s||{},s.compress=s.compress!==!1;const E={type:i,data:f,options:s};this.emitReserved("packetCreate",E),this.writeBuffer.push(E),m&&this.once("flush",m),this.flush()}close(){const i=()=>{this._onClose("forced close"),this.transport.close()},f=()=>{this.off("upgrade",f),this.off("upgradeError",f),i()},s=()=>{this.once("upgrade",f),this.once("upgradeError",f)};return(this.readyState==="opening"||this.readyState==="open")&&(this.readyState="closing",this.writeBuffer.length?this.once("drain",()=>{this.upgrading?s():i()}):this.upgrading?s():i()),this}_onError(i){if(Nl.priorWebsocketSuccess=!1,this.opts.tryAllTransports&&this.transports.length>1&&this.readyState==="opening")return this.transports.shift(),this._open();this.emitReserved("error",i),this._onClose("transport error",i)}_onClose(i,f){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing"){if(this.clearTimeoutFn(this._pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),qf&&(this._beforeunloadEventListener&&removeEventListener("beforeunload",this._beforeunloadEventListener,!1),this._offlineEventListener)){const s=ti.indexOf(this._offlineEventListener);s!==-1&&ti.splice(s,1)}this.readyState="closed",this.id=null,this.emitReserved("close",i,f),this.writeBuffer=[],this._prevBufferLen=0}}}Nl.protocol=yd;class H0 extends Nl{constructor(){super(...arguments),this._upgrades=[]}onOpen(){if(super.onOpen(),this.readyState==="open"&&this.opts.upgrade)for(let i=0;i{s||(f.send([{type:"ping",data:"probe"}]),f.once("packet",x=>{if(!s)if(x.type==="pong"&&x.data==="probe"){if(this.upgrading=!0,this.emitReserved("upgrading",f),!f)return;Nl.priorWebsocketSuccess=f.name==="websocket",this.transport.pause(()=>{s||this.readyState!=="closed"&&(Q(),this.setTransport(f),f.send([{type:"upgrade"}]),this.emitReserved("upgrade",f),f=null,this.upgrading=!1,this.flush())})}else{const K=new Error("probe error");K.transport=f.name,this.emitReserved("upgradeError",K)}}))};function E(){s||(s=!0,Q(),f.close(),f=null)}const R=x=>{const K=new Error("probe error: "+x);K.transport=f.name,E(),this.emitReserved("upgradeError",K)};function B(){R("transport closed")}function M(){R("socket closed")}function A(x){f&&x.name!==f.name&&E()}const Q=()=>{f.removeListener("open",m),f.removeListener("error",R),f.removeListener("close",B),this.off("close",M),this.off("upgrading",A)};f.once("open",m),f.once("error",R),f.once("close",B),this.once("close",M),this.once("upgrading",A),this._upgrades.indexOf("webtransport")!==-1&&i!=="webtransport"?this.setTimeoutFn(()=>{s||f.open()},200):f.open()}onHandshake(i){this._upgrades=this._filterUpgrades(i.upgrades),super.onHandshake(i)}_filterUpgrades(i){const f=[];for(let s=0;sU0[m]).filter(m=>!!m)),super(i,s)}};function j0(o,i="",f){let s=o;f=f||typeof location<"u"&&location,o==null&&(o=f.protocol+"//"+f.host),typeof o=="string"&&(o.charAt(0)==="/"&&(o.charAt(1)==="/"?o=f.protocol+o:o=f.host+o),/^(https?|wss?):\/\//.test(o)||(typeof f<"u"?o=f.protocol+"//"+o:o="https://"+o),s=Bf(o)),s.port||(/^(http|ws)$/.test(s.protocol)?s.port="80":/^(http|ws)s$/.test(s.protocol)&&(s.port="443")),s.path=s.path||"/";const E=s.host.indexOf(":")!==-1?"["+s.host+"]":s.host;return s.id=s.protocol+"://"+E+":"+s.port+i,s.href=s.protocol+"://"+E+(f&&f.port===s.port?"":":"+s.port),s}const L0=typeof ArrayBuffer=="function",X0=o=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(o):o.buffer instanceof ArrayBuffer,Sd=Object.prototype.toString,Q0=typeof Blob=="function"||typeof Blob<"u"&&Sd.call(Blob)==="[object BlobConstructor]",G0=typeof File=="function"||typeof File<"u"&&Sd.call(File)==="[object FileConstructor]";function Vf(o){return L0&&(o instanceof ArrayBuffer||X0(o))||Q0&&o instanceof Blob||G0&&o instanceof File}function ei(o,i){if(!o||typeof o!="object")return!1;if(Array.isArray(o)){for(let f=0,s=o.length;f=0&&o.num{delete this.acks[i];for(let B=0;B{this.io.clearTimeoutFn(E),f.apply(this,B)};R.withError=!0,this.acks[i]=R}emitWithAck(i,...f){return new Promise((s,m)=>{const E=(R,B)=>R?m(R):s(B);E.withError=!0,f.push(E),this.emit(i,...f)})}_addToQueue(i){let f;typeof i[i.length-1]=="function"&&(f=i.pop());const s={id:this._queueSeq++,tryCount:0,pending:!1,args:i,flags:Object.assign({fromQueue:!0},this.flags)};i.push((m,...E)=>s!==this._queue[0]?void 0:(m!==null?s.tryCount>this._opts.retries&&(this._queue.shift(),f&&f(m)):(this._queue.shift(),f&&f(null,...E)),s.pending=!1,this._drainQueue())),this._queue.push(s),this._drainQueue()}_drainQueue(i=!1){if(!this.connected||this._queue.length===0)return;const f=this._queue[0];f.pending&&!i||(f.pending=!0,f.tryCount++,this.flags=f.flags,this.emit.apply(this,f.args))}packet(i){i.nsp=this.nsp,this.io._packet(i)}onopen(){typeof this.auth=="function"?this.auth(i=>{this._sendConnectPacket(i)}):this._sendConnectPacket(this.auth)}_sendConnectPacket(i){this.packet({type:tt.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},i):i})}onerror(i){this.connected||this.emitReserved("connect_error",i)}onclose(i,f){this.connected=!1,delete this.id,this.emitReserved("disconnect",i,f),this._clearAcks()}_clearAcks(){Object.keys(this.acks).forEach(i=>{if(!this.sendBuffer.some(s=>String(s.id)===i)){const s=this.acks[i];delete this.acks[i],s.withError&&s.call(this,new Error("socket has been disconnected"))}})}onpacket(i){if(i.nsp===this.nsp)switch(i.type){case tt.CONNECT:i.data&&i.data.sid?this.onconnect(i.data.sid,i.data.pid):this.emitReserved("connect_error",new Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case tt.EVENT:case tt.BINARY_EVENT:this.onevent(i);break;case tt.ACK:case tt.BINARY_ACK:this.onack(i);break;case tt.DISCONNECT:this.ondisconnect();break;case tt.CONNECT_ERROR:this.destroy();const s=new Error(i.data.message);s.data=i.data.data,this.emitReserved("connect_error",s);break}}onevent(i){const f=i.data||[];i.id!=null&&f.push(this.ack(i.id)),this.connected?this.emitEvent(f):this.receiveBuffer.push(Object.freeze(f))}emitEvent(i){if(this._anyListeners&&this._anyListeners.length){const f=this._anyListeners.slice();for(const s of f)s.apply(this,i)}super.emit.apply(this,i),this._pid&&i.length&&typeof i[i.length-1]=="string"&&(this._lastOffset=i[i.length-1])}ack(i){const f=this;let s=!1;return function(...m){s||(s=!0,f.packet({type:tt.ACK,id:i,data:m}))}}onack(i){const f=this.acks[i.id];typeof f=="function"&&(delete this.acks[i.id],f.withError&&i.data.unshift(null),f.apply(this,i.data))}onconnect(i,f){this.id=i,this.recovered=f&&this._pid===f,this._pid=f,this.connected=!0,this.emitBuffered(),this.emitReserved("connect"),this._drainQueue(!0)}emitBuffered(){this.receiveBuffer.forEach(i=>this.emitEvent(i)),this.receiveBuffer=[],this.sendBuffer.forEach(i=>{this.notifyOutgoingListeners(i),this.packet(i)}),this.sendBuffer=[]}ondisconnect(){this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach(i=>i()),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&this.packet({type:tt.DISCONNECT}),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(i){return this.flags.compress=i,this}get volatile(){return this.flags.volatile=!0,this}timeout(i){return this.flags.timeout=i,this}onAny(i){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(i),this}prependAny(i){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(i),this}offAny(i){if(!this._anyListeners)return this;if(i){const f=this._anyListeners;for(let s=0;s0&&o.jitter<=1?o.jitter:0,this.attempts=0}Bn.prototype.duration=function(){var o=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var i=Math.random(),f=Math.floor(i*this.jitter*o);o=(Math.floor(i*10)&1)==0?o-f:o+f}return Math.min(o,this.max)|0};Bn.prototype.reset=function(){this.attempts=0};Bn.prototype.setMin=function(o){this.ms=o};Bn.prototype.setMax=function(o){this.max=o};Bn.prototype.setJitter=function(o){this.jitter=o};class jf extends Ot{constructor(i,f){var s;super(),this.nsps={},this.subs=[],i&&typeof i=="object"&&(f=i,i=void 0),f=f||{},f.path=f.path||"/socket.io",this.opts=f,ai(this,f),this.reconnection(f.reconnection!==!1),this.reconnectionAttempts(f.reconnectionAttempts||1/0),this.reconnectionDelay(f.reconnectionDelay||1e3),this.reconnectionDelayMax(f.reconnectionDelayMax||5e3),this.randomizationFactor((s=f.randomizationFactor)!==null&&s!==void 0?s:.5),this.backoff=new Bn({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(f.timeout==null?2e4:f.timeout),this._readyState="closed",this.uri=i;const m=f.parser||W0;this.encoder=new m.Encoder,this.decoder=new m.Decoder,this._autoConnect=f.autoConnect!==!1,this._autoConnect&&this.open()}reconnection(i){return arguments.length?(this._reconnection=!!i,i||(this.skipReconnect=!0),this):this._reconnection}reconnectionAttempts(i){return i===void 0?this._reconnectionAttempts:(this._reconnectionAttempts=i,this)}reconnectionDelay(i){var f;return i===void 0?this._reconnectionDelay:(this._reconnectionDelay=i,(f=this.backoff)===null||f===void 0||f.setMin(i),this)}randomizationFactor(i){var f;return i===void 0?this._randomizationFactor:(this._randomizationFactor=i,(f=this.backoff)===null||f===void 0||f.setJitter(i),this)}reconnectionDelayMax(i){var f;return i===void 0?this._reconnectionDelayMax:(this._reconnectionDelayMax=i,(f=this.backoff)===null||f===void 0||f.setMax(i),this)}timeout(i){return arguments.length?(this._timeout=i,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&this.backoff.attempts===0&&this.reconnect()}open(i){if(~this._readyState.indexOf("open"))return this;this.engine=new Y0(this.uri,this.opts);const f=this.engine,s=this;this._readyState="opening",this.skipReconnect=!1;const m=ze(f,"open",function(){s.onopen(),i&&i()}),E=B=>{this.cleanup(),this._readyState="closed",this.emitReserved("error",B),i?i(B):this.maybeReconnectOnOpen()},R=ze(f,"error",E);if(this._timeout!==!1){const B=this._timeout,M=this.setTimeoutFn(()=>{m(),E(new Error("timeout")),f.close()},B);this.opts.autoUnref&&M.unref(),this.subs.push(()=>{this.clearTimeoutFn(M)})}return this.subs.push(m),this.subs.push(R),this}connect(i){return this.open(i)}onopen(){this.cleanup(),this._readyState="open",this.emitReserved("open");const i=this.engine;this.subs.push(ze(i,"ping",this.onping.bind(this)),ze(i,"data",this.ondata.bind(this)),ze(i,"error",this.onerror.bind(this)),ze(i,"close",this.onclose.bind(this)),ze(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(i){try{this.decoder.add(i)}catch(f){this.onclose("parse error",f)}}ondecoded(i){ni(()=>{this.emitReserved("packet",i)},this.setTimeoutFn)}onerror(i){this.emitReserved("error",i)}socket(i,f){let s=this.nsps[i];return s?this._autoConnect&&!s.active&&s.connect():(s=new _d(this,i,f),this.nsps[i]=s),s}_destroy(i){const f=Object.keys(this.nsps);for(const s of f)if(this.nsps[s].active)return;this._close()}_packet(i){const f=this.encoder.encode(i);for(let s=0;si()),this.subs.length=0,this.decoder.destroy()}_close(){this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close")}disconnect(){return this._close()}onclose(i,f){var s;this.cleanup(),(s=this.engine)===null||s===void 0||s.close(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",i,f),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;const i=this;if(this.backoff.attempts>=this._reconnectionAttempts)this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{const f=this.backoff.duration();this._reconnecting=!0;const s=this.setTimeoutFn(()=>{i.skipReconnect||(this.emitReserved("reconnect_attempt",i.backoff.attempts),!i.skipReconnect&&i.open(m=>{m?(i._reconnecting=!1,i.reconnect(),this.emitReserved("reconnect_error",m)):i.onreconnect()}))},f);this.opts.autoUnref&&s.unref(),this.subs.push(()=>{this.clearTimeoutFn(s)})}}onreconnect(){const i=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",i)}}const Ua={};function li(o,i){typeof o=="object"&&(i=o,o=void 0),i=i||{};const f=j0(o,i.path||"/socket.io"),s=f.source,m=f.id,E=f.path,R=Ua[m]&&E in Ua[m].nsps,B=i.forceNew||i["force new connection"]||i.multiplex===!1||R;let M;return B?M=new jf(s,i):(Ua[m]||(Ua[m]=new jf(s,i)),M=Ua[m]),f.query&&!i.query&&(i.query=f.queryKey),M.socket(f.path,i)}Object.assign(li,{Manager:jf,Socket:_d,io:li,connect:li});const Ed=window.location.origin;console.info("[socket] connecting to",Ed);const wf=li(Ed,{transports:["websocket","polling"],timeout:15e3});wf.on("connect_error",o=>console.error("connect_error",o.code,o.message,o.data));const Td=Mt.createContext(wf),F0=({children:o})=>Y.jsx(Td.Provider,{value:wf,children:o}),I0=()=>Mt.useContext(Td),Ad=Mt.createContext({connected:!1,session:null,logs:[],login:async()=>{},setRole:async()=>{},requestControl:async()=>{},releaseControl:async()=>{},subscribeAll:async()=>{}});function P0(o){return Mt.useCallback((i,f={})=>new Promise((s,m)=>{o.emit(i,f,(E={})=>{E.error?m(new Error(E.error)):s(E)})}),[o])}function tv({children:o}){const i=I0(),f=P0(i),[s,m]=Mt.useState(null),[E,R]=Mt.useState([]),[B,M]=Mt.useState(i.connected);Mt.useEffect(()=>{const x=()=>M(!0),K=()=>M(!1);return i.on("connect",x),i.on("disconnect",K),()=>{i.off("connect",x),i.off("disconnect",K)}},[i]),Mt.useEffect(()=>{function x(_t){m(_t)}function K(_t=[]){R(_t)}function Yt(_t){R(Ut=>[...Ut.slice(-199),_t])}return i.on("session:sync",x),i.on("log:init",K),i.on("log:entry",Yt),()=>{i.off("session:sync",x),i.off("log:init",K),i.off("log:entry",Yt)}},[i]);const A=Mt.useMemo(()=>({login:(x,K)=>f("auth:login",{username:x,password:K}),setRole:x=>f("session:setRole",{role:x}),requestControl:(x,K={})=>f("session:requestControl",{roverId:x,...K}),releaseControl:x=>f("session:releaseControl",{roverId:x}),subscribeAll:()=>f("session:subscribeAll")}),[f]),Q=Mt.useMemo(()=>({connected:B,session:s,logs:E,...A}),[A,B,E,s]);return Y.jsx(Ad.Provider,{value:Q,children:o})}function qn(){return Mt.useContext(Ad)}function ev({connected:o,role:i,mode:f}){const s=o?"bg-emerald-500/20 text-emerald-300":"bg-red-500/20 text-red-200";return Y.jsxs("div",{className:"flex flex-wrap items-center gap-3 text-sm",children:[Y.jsx("span",{className:`rounded-full px-3 py-1 font-medium ${s}`,children:o?"Connected":"Disconnected"}),Y.jsxs("span",{className:"rounded-full bg-slate-800/80 px-3 py-1 text-slate-200",children:["Role: ",i||"unknown"]}),Y.jsxs("span",{className:"rounded-full bg-slate-800/80 px-3 py-1 text-slate-200",children:["Mode: ",f||"--"]})]})}function lv(){const{logs:o}=qn();return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/70 p-4",children:[Y.jsxs("header",{className:"mb-3 flex items-center justify-between",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Server logs"}),Y.jsxs("span",{className:"text-xs uppercase tracking-[0.2em] text-slate-500",children:[o.length," entries"]})]}),Y.jsx("div",{className:"h-64 overflow-y-auto rounded-xl bg-slate-950/40 p-3 text-xs font-mono text-slate-300",children:o.length===0?Y.jsx("p",{children:"No logs yet."}):o.slice().reverse().map(i=>Y.jsxs("div",{className:"mb-2",children:[Y.jsx("span",{className:"text-slate-500",children:i.timestamp})," ",Y.jsxs("span",{className:"text-cyan-300",children:["[",i.level,"]"]})," ",i.label&&Y.jsxs("span",{className:"text-pink-300",children:["[",i.label,"]"]})," ",Y.jsx("span",{children:i.message})]},i.id))})]})}function nv(){const{session:o,requestControl:i}=qn(),f=o?.roster??[],[s,m]=Mt.useState({});async function E(R){m(B=>({...B,[R]:!0}));try{await i(R)}catch(B){alert(B.message)}finally{m(B=>({...B,[R]:!1}))}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Rovers"}),Y.jsxs("div",{className:"mt-4 space-y-3",children:[f.length===0&&Y.jsx("p",{className:"text-slate-400",children:"No rovers registered."}),f.map(R=>Y.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-3 rounded-xl bg-slate-950/40 px-4 py-3",children:[Y.jsxs("div",{children:[Y.jsx("p",{className:"text-white",children:R.name}),Y.jsxs("p",{className:"text-xs text-slate-400",children:["Locked: ",R.locked?"yes":"no"]})]}),Y.jsx("button",{type:"button",onClick:()=>E(R.id),disabled:s[R.id],className:"rounded-full bg-blue-600 px-4 py-1 text-sm font-semibold text-white disabled:opacity-50",children:s[R.id]?"Requesting…":"Request control"})]},R.id))]})]})}function av(){const{session:o,releaseControl:i}=qn(),f=o?.assignment,s=f?.roverId,[m,E]=Mt.useState(!1);async function R(){if(s){E(!0);try{await i(s)}catch(B){alert(B.message)}finally{E(!1)}}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Assignment"}),s?Y.jsxs("div",{className:"mt-4 space-y-3",children:[Y.jsxs("p",{className:"text-slate-300",children:["Currently driving rover ",s]}),Y.jsx("button",{type:"button",onClick:R,disabled:m,className:"rounded-full bg-red-600 px-4 py-1 text-sm font-semibold text-white disabled:opacity-50",children:m?"Releasing…":"Release control"})]}):Y.jsxs("div",{className:"mt-4 text-slate-400",children:[Y.jsxs("p",{children:["Status: ",f?.status??"not assigned"]}),f?.queuePosition&&Y.jsxs("p",{children:["Queue position: ",f.queuePosition]})]})]})}function uv(){const{session:o}=qn(),i=Mt.useMemo(()=>JSON.stringify(o??{},null,2),[o]);return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Session snapshot"}),Y.jsx("pre",{className:"mt-4 max-h-64 overflow-y-auto text-sm text-teal-200",children:i})]})}function iv(){const{login:o,setRole:i}=qn(),[f,s]=Mt.useState(""),[m,E]=Mt.useState(""),[R,B]=Mt.useState(!1);async function M(A){A.preventDefault(),B(!0);try{await o(f,m),s(""),E("")}catch(Q){alert(Q.message)}finally{B(!1)}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Authentication"}),Y.jsxs("form",{className:"mt-4 flex flex-col gap-3",onSubmit:M,children:[Y.jsx("input",{className:"rounded-lg border border-slate-800 bg-slate-950/60 px-3 py-2 text-white",placeholder:"Username",value:f,onChange:A=>s(A.target.value)}),Y.jsx("input",{className:"rounded-lg border border-slate-800 bg-slate-950/60 px-3 py-2 text-white",placeholder:"Password",type:"password",value:m,onChange:A=>E(A.target.value)}),Y.jsx("button",{type:"submit",disabled:R,className:"rounded-lg bg-emerald-600 py-2 font-semibold text-white disabled:opacity-50",children:R?"Logging in…":"Login as admin"})]}),Y.jsxs("div",{className:"mt-4 flex gap-3",children:[Y.jsx("button",{type:"button",onClick:()=>i("user"),className:"rounded-lg border border-slate-700 px-3 py-1 text-sm text-slate-200",children:"Driver mode"}),Y.jsx("button",{type:"button",onClick:()=>i("spectator"),className:"rounded-lg border border-slate-700 px-3 py-1 text-sm text-slate-200",children:"Spectator mode"})]})]})}function cv(){const{connected:o,session:i}=qn();return Y.jsx("div",{className:"min-h-screen bg-slate-950 text-slate-50",children:Y.jsxs("main",{className:"mx-auto flex max-w-6xl flex-col gap-6 px-6 py-10",children:[Y.jsxs("header",{className:"space-y-4",children:[Y.jsx("h1",{className:"text-4xl font-semibold text-white",children:"Multi Roomba Rover Console"}),Y.jsx(ev,{connected:o,role:i?.role,mode:i?.mode})]}),Y.jsxs("section",{className:"grid gap-6 lg:grid-cols-2",children:[Y.jsx(nv,{}),Y.jsx(av,{}),Y.jsx(iv,{}),Y.jsx(uv,{})]}),Y.jsx(lv,{})]})})}n0.createRoot(document.getElementById("root")).render(Y.jsx(Mt.StrictMode,{children:Y.jsx(F0,{children:Y.jsx(tv,{children:Y.jsx(cv,{})})})})); +`).replace(vm,"")}function mh(t,e){return e=yh(e),yh(t)===e}function st(t,e,l,n,a,u){switch(l){case"children":typeof n=="string"?e==="body"||e==="textarea"&&n===""||en(t,n):(typeof n=="number"||typeof n=="bigint")&&e!=="body"&&en(t,""+n);break;case"className":Xa(t,"class",n);break;case"tabIndex":Xa(t,"tabindex",n);break;case"dir":case"role":case"viewBox":case"width":case"height":Xa(t,l,n);break;case"style":ys(t,n,u);break;case"data":if(e!=="object"){Xa(t,"data",n);break}case"src":case"href":if(n===""&&(e!=="a"||l!=="href")){t.removeAttribute(l);break}if(n==null||typeof n=="function"||typeof n=="symbol"||typeof n=="boolean"){t.removeAttribute(l);break}n=Ga(""+n),t.setAttribute(l,n);break;case"action":case"formAction":if(typeof n=="function"){t.setAttribute(l,"javascript:throw new Error('A React form was unexpectedly submitted. If you called form.submit() manually, consider using form.requestSubmit() instead. If you\\'re trying to use event.stopPropagation() in a submit event handler, consider also calling event.preventDefault().')");break}else typeof u=="function"&&(l==="formAction"?(e!=="input"&&st(t,e,"name",a.name,a,null),st(t,e,"formEncType",a.formEncType,a,null),st(t,e,"formMethod",a.formMethod,a,null),st(t,e,"formTarget",a.formTarget,a,null)):(st(t,e,"encType",a.encType,a,null),st(t,e,"method",a.method,a,null),st(t,e,"target",a.target,a,null)));if(n==null||typeof n=="symbol"||typeof n=="boolean"){t.removeAttribute(l);break}n=Ga(""+n),t.setAttribute(l,n);break;case"onClick":n!=null&&(t.onclick=je);break;case"onScroll":n!=null&&W("scroll",t);break;case"onScrollEnd":n!=null&&W("scrollend",t);break;case"dangerouslySetInnerHTML":if(n!=null){if(typeof n!="object"||!("__html"in n))throw Error(s(61));if(l=n.__html,l!=null){if(a.children!=null)throw Error(s(60));t.innerHTML=l}}break;case"multiple":t.multiple=n&&typeof n!="function"&&typeof n!="symbol";break;case"muted":t.muted=n&&typeof n!="function"&&typeof n!="symbol";break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"defaultValue":case"defaultChecked":case"innerHTML":case"ref":break;case"autoFocus":break;case"xlinkHref":if(n==null||typeof n=="function"||typeof n=="boolean"||typeof n=="symbol"){t.removeAttribute("xlink:href");break}l=Ga(""+n),t.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",l);break;case"contentEditable":case"spellCheck":case"draggable":case"value":case"autoReverse":case"externalResourcesRequired":case"focusable":case"preserveAlpha":n!=null&&typeof n!="function"&&typeof n!="symbol"?t.setAttribute(l,""+n):t.removeAttribute(l);break;case"inert":case"allowFullScreen":case"async":case"autoPlay":case"controls":case"default":case"defer":case"disabled":case"disablePictureInPicture":case"disableRemotePlayback":case"formNoValidate":case"hidden":case"loop":case"noModule":case"noValidate":case"open":case"playsInline":case"readOnly":case"required":case"reversed":case"scoped":case"seamless":case"itemScope":n&&typeof n!="function"&&typeof n!="symbol"?t.setAttribute(l,""):t.removeAttribute(l);break;case"capture":case"download":n===!0?t.setAttribute(l,""):n!==!1&&n!=null&&typeof n!="function"&&typeof n!="symbol"?t.setAttribute(l,n):t.removeAttribute(l);break;case"cols":case"rows":case"size":case"span":n!=null&&typeof n!="function"&&typeof n!="symbol"&&!isNaN(n)&&1<=n?t.setAttribute(l,n):t.removeAttribute(l);break;case"rowSpan":case"start":n==null||typeof n=="function"||typeof n=="symbol"||isNaN(n)?t.removeAttribute(l):t.setAttribute(l,n);break;case"popover":W("beforetoggle",t),W("toggle",t),La(t,"popover",n);break;case"xlinkActuate":Ye(t,"http://www.w3.org/1999/xlink","xlink:actuate",n);break;case"xlinkArcrole":Ye(t,"http://www.w3.org/1999/xlink","xlink:arcrole",n);break;case"xlinkRole":Ye(t,"http://www.w3.org/1999/xlink","xlink:role",n);break;case"xlinkShow":Ye(t,"http://www.w3.org/1999/xlink","xlink:show",n);break;case"xlinkTitle":Ye(t,"http://www.w3.org/1999/xlink","xlink:title",n);break;case"xlinkType":Ye(t,"http://www.w3.org/1999/xlink","xlink:type",n);break;case"xmlBase":Ye(t,"http://www.w3.org/XML/1998/namespace","xml:base",n);break;case"xmlLang":Ye(t,"http://www.w3.org/XML/1998/namespace","xml:lang",n);break;case"xmlSpace":Ye(t,"http://www.w3.org/XML/1998/namespace","xml:space",n);break;case"is":La(t,"is",n);break;case"innerText":case"textContent":break;default:(!(2r)break;var _=h.transferSize,O=h.initiatorType;_&&vh(O)&&(h=h.responseEnd,c+=_*(h"u"?null:document;function Mh(t,e,l){var n=Dn;if(n&&typeof e=="string"&&e){var a=re(e);a='link[rel="'+t+'"][href="'+a+'"]',typeof l=="string"&&(a+='[crossorigin="'+l+'"]'),Nh.has(a)||(Nh.add(a),t={rel:t,crossOrigin:l,href:e},n.querySelector(a)===null&&(e=n.createElement("link"),Ht(e,"link",t),Rt(e),n.head.appendChild(e)))}}function Mm(t){tl.D(t),Mh("dns-prefetch",t,null)}function Rm(t,e){tl.C(t,e),Mh("preconnect",t,e)}function Dm(t,e,l){tl.L(t,e,l);var n=Dn;if(n&&t&&e){var a='link[rel="preload"][as="'+re(e)+'"]';e==="image"&&l&&l.imageSrcSet?(a+='[imagesrcset="'+re(l.imageSrcSet)+'"]',typeof l.imageSizes=="string"&&(a+='[imagesizes="'+re(l.imageSizes)+'"]')):a+='[href="'+re(t)+'"]';var u=a;switch(e){case"style":u=Un(t);break;case"script":u=xn(t)}be.has(u)||(t=x({rel:"preload",href:e==="image"&&l&&l.imageSrcSet?void 0:t,as:e},l),be.set(u,t),n.querySelector(a)!==null||e==="style"&&n.querySelector(Ta(u))||e==="script"&&n.querySelector(Aa(u))||(e=n.createElement("link"),Ht(e,"link",t),Rt(e),n.head.appendChild(e)))}}function Um(t,e){tl.m(t,e);var l=Dn;if(l&&t){var n=e&&typeof e.as=="string"?e.as:"script",a='link[rel="modulepreload"][as="'+re(n)+'"][href="'+re(t)+'"]',u=a;switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":u=xn(t)}if(!be.has(u)&&(t=x({rel:"modulepreload",href:t},e),be.set(u,t),l.querySelector(a)===null)){switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(l.querySelector(Aa(u)))return}n=l.createElement("link"),Ht(n,"link",t),Rt(n),l.head.appendChild(n)}}}function xm(t,e,l){tl.S(t,e,l);var n=Dn;if(n&&t){var a=Il(n).hoistableStyles,u=Un(t);e=e||"default";var c=a.get(u);if(!c){var r={loading:0,preload:null};if(c=n.querySelector(Ta(u)))r.loading=5;else{t=x({rel:"stylesheet",href:t,"data-precedence":e},l),(l=be.get(u))&&mf(t,l);var h=c=n.createElement("link");Rt(h),Ht(h,"link",t),h._p=new Promise(function(p,_){h.onload=p,h.onerror=_}),h.addEventListener("load",function(){r.loading|=1}),h.addEventListener("error",function(){r.loading|=2}),r.loading|=4,Lu(c,e,n)}c={type:"stylesheet",instance:c,count:1,state:r},a.set(u,c)}}}function Cm(t,e){tl.X(t,e);var l=Dn;if(l&&t){var n=Il(l).hoistableScripts,a=xn(t),u=n.get(a);u||(u=l.querySelector(Aa(a)),u||(t=x({src:t,async:!0},e),(e=be.get(a))&&vf(t,e),u=l.createElement("script"),Rt(u),Ht(u,"link",t),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(a,u))}}function Bm(t,e){tl.M(t,e);var l=Dn;if(l&&t){var n=Il(l).hoistableScripts,a=xn(t),u=n.get(a);u||(u=l.querySelector(Aa(a)),u||(t=x({src:t,async:!0,type:"module"},e),(e=be.get(a))&&vf(t,e),u=l.createElement("script"),Rt(u),Ht(u,"link",t),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(a,u))}}function Rh(t,e,l,n){var a=(a=J.current)?ju(a):null;if(!a)throw Error(s(446));switch(t){case"meta":case"title":return null;case"style":return typeof l.precedence=="string"&&typeof l.href=="string"?(e=Un(l.href),l=Il(a).hoistableStyles,n=l.get(e),n||(n={type:"style",instance:null,count:0,state:null},l.set(e,n)),n):{type:"void",instance:null,count:0,state:null};case"link":if(l.rel==="stylesheet"&&typeof l.href=="string"&&typeof l.precedence=="string"){t=Un(l.href);var u=Il(a).hoistableStyles,c=u.get(t);if(c||(a=a.ownerDocument||a,c={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},u.set(t,c),(u=a.querySelector(Ta(t)))&&!u._p&&(c.instance=u,c.state.loading=5),be.has(t)||(l={rel:"preload",as:"style",href:l.href,crossOrigin:l.crossOrigin,integrity:l.integrity,media:l.media,hrefLang:l.hrefLang,referrerPolicy:l.referrerPolicy},be.set(t,l),u||qm(a,t,l,c.state))),e&&n===null)throw Error(s(528,""));return c}if(e&&n!==null)throw Error(s(529,""));return null;case"script":return e=l.async,l=l.src,typeof l=="string"&&e&&typeof e!="function"&&typeof e!="symbol"?(e=xn(l),l=Il(a).hoistableScripts,n=l.get(e),n||(n={type:"script",instance:null,count:0,state:null},l.set(e,n)),n):{type:"void",instance:null,count:0,state:null};default:throw Error(s(444,t))}}function Un(t){return'href="'+re(t)+'"'}function Ta(t){return'link[rel="stylesheet"]['+t+"]"}function Dh(t){return x({},t,{"data-precedence":t.precedence,precedence:null})}function qm(t,e,l,n){t.querySelector('link[rel="preload"][as="style"]['+e+"]")?n.loading=1:(e=t.createElement("link"),n.preload=e,e.addEventListener("load",function(){return n.loading|=1}),e.addEventListener("error",function(){return n.loading|=2}),Ht(e,"link",l),Rt(e),t.head.appendChild(e))}function xn(t){return'[src="'+re(t)+'"]'}function Aa(t){return"script[async]"+t}function Uh(t,e,l){if(e.count++,e.instance===null)switch(e.type){case"style":var n=t.querySelector('style[data-href~="'+re(l.href)+'"]');if(n)return e.instance=n,Rt(n),n;var a=x({},l,{"data-href":l.href,"data-precedence":l.precedence,href:null,precedence:null});return n=(t.ownerDocument||t).createElement("style"),Rt(n),Ht(n,"style",a),Lu(n,l.precedence,t),e.instance=n;case"stylesheet":a=Un(l.href);var u=t.querySelector(Ta(a));if(u)return e.state.loading|=4,e.instance=u,Rt(u),u;n=Dh(l),(a=be.get(a))&&mf(n,a),u=(t.ownerDocument||t).createElement("link"),Rt(u);var c=u;return c._p=new Promise(function(r,h){c.onload=r,c.onerror=h}),Ht(u,"link",n),e.state.loading|=4,Lu(u,l.precedence,t),e.instance=u;case"script":return u=xn(l.src),(a=t.querySelector(Aa(u)))?(e.instance=a,Rt(a),a):(n=l,(a=be.get(u))&&(n=x({},l),vf(n,a)),t=t.ownerDocument||t,a=t.createElement("script"),Rt(a),Ht(a,"link",n),t.head.appendChild(a),e.instance=a);case"void":return null;default:throw Error(s(443,e.type))}else e.type==="stylesheet"&&(e.state.loading&4)===0&&(n=e.instance,e.state.loading|=4,Lu(n,l.precedence,t));return e.instance}function Lu(t,e,l){for(var n=l.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=n.length?n[n.length-1]:null,u=a,c=0;c title"):null)}function Hm(t,e,l){if(l===1||e.itemProp!=null)return!1;switch(t){case"meta":case"title":return!0;case"style":if(typeof e.precedence!="string"||typeof e.href!="string"||e.href==="")break;return!0;case"link":if(typeof e.rel!="string"||typeof e.href!="string"||e.href===""||e.onLoad||e.onError)break;switch(e.rel){case"stylesheet":return t=e.disabled,typeof e.precedence=="string"&&t==null;default:return!0}case"script":if(e.async&&typeof e.async!="function"&&typeof e.async!="symbol"&&!e.onLoad&&!e.onError&&e.src&&typeof e.src=="string")return!0}return!1}function Bh(t){return!(t.type==="stylesheet"&&(t.state.loading&3)===0)}function Ym(t,e,l,n){if(l.type==="stylesheet"&&(typeof n.media!="string"||matchMedia(n.media).matches!==!1)&&(l.state.loading&4)===0){if(l.instance===null){var a=Un(n.href),u=e.querySelector(Ta(a));if(u){e=u._p,e!==null&&typeof e=="object"&&typeof e.then=="function"&&(t.count++,t=Qu.bind(t),e.then(t,t)),l.state.loading|=4,l.instance=u,Rt(u);return}u=e.ownerDocument||e,n=Dh(n),(a=be.get(a))&&mf(n,a),u=u.createElement("link"),Rt(u);var c=u;c._p=new Promise(function(r,h){c.onload=r,c.onerror=h}),Ht(u,"link",n),l.instance=u}t.stylesheets===null&&(t.stylesheets=new Map),t.stylesheets.set(l,e),(e=l.state.preload)&&(l.state.loading&3)===0&&(t.count++,l=Qu.bind(t),e.addEventListener("load",l),e.addEventListener("error",l))}}var gf=0;function jm(t,e){return t.stylesheets&&t.count===0&&Vu(t,t.stylesheets),0gf?50:800)+e);return t.unsuspend=l,function(){t.unsuspend=null,clearTimeout(n),clearTimeout(a)}}:null}function Qu(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Vu(this,this.stylesheets);else if(this.unsuspend){var t=this.unsuspend;this.unsuspend=null,t()}}}var Gu=null;function Vu(t,e){t.stylesheets=null,t.unsuspend!==null&&(t.count++,Gu=new Map,e.forEach(Lm,t),Gu=null,Qu.call(t))}function Lm(t,e){if(!(e.state.loading&4)){var l=Gu.get(t);if(l)var n=l.get(null);else{l=new Map,Gu.set(t,l);for(var a=t.querySelectorAll("link[data-precedence],style[data-precedence]"),u=0;u"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(o)}catch(i){console.error(i)}}return o(),Of.exports=e0(),Of.exports}var n0=l0();const Be=Object.create(null);Be.open="0";Be.close="1";Be.ping="2";Be.pong="3";Be.message="4";Be.upgrade="5";Be.noop="6";const Pu=Object.create(null);Object.keys(Be).forEach(o=>{Pu[Be[o]]=o});const Cf={type:"error",data:"parser error"},sd=typeof Blob=="function"||typeof Blob<"u"&&Object.prototype.toString.call(Blob)==="[object BlobConstructor]",od=typeof ArrayBuffer=="function",rd=o=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(o):o&&o.buffer instanceof ArrayBuffer,Xf=({type:o,data:i},f,s)=>sd&&i instanceof Blob?f?s(i):ad(i,s):od&&(i instanceof ArrayBuffer||rd(i))?f?s(i):ad(new Blob([i]),s):s(Be[o]+(i||"")),ad=(o,i)=>{const f=new FileReader;return f.onload=function(){const s=f.result.split(",")[1];i("b"+(s||""))},f.readAsDataURL(o)};function ud(o){return o instanceof Uint8Array?o:o instanceof ArrayBuffer?new Uint8Array(o):new Uint8Array(o.buffer,o.byteOffset,o.byteLength)}let Df;function a0(o,i){if(sd&&o.data instanceof Blob)return o.data.arrayBuffer().then(ud).then(i);if(od&&(o.data instanceof ArrayBuffer||rd(o.data)))return i(ud(o.data));Xf(o,!1,f=>{Df||(Df=new TextEncoder),i(Df.encode(f))})}const id="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",xa=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(let o=0;o{let i=o.length*.75,f=o.length,s,m=0,E,R,B,M;o[o.length-1]==="="&&(i--,o[o.length-2]==="="&&i--);const A=new ArrayBuffer(i),Q=new Uint8Array(A);for(s=0;s>4,Q[m++]=(R&15)<<4|B>>2,Q[m++]=(B&3)<<6|M&63;return A},i0=typeof ArrayBuffer=="function",Qf=(o,i)=>{if(typeof o!="string")return{type:"message",data:hd(o,i)};const f=o.charAt(0);return f==="b"?{type:"message",data:c0(o.substring(1),i)}:Pu[f]?o.length>1?{type:Pu[f],data:o.substring(1)}:{type:Pu[f]}:Cf},c0=(o,i)=>{if(i0){const f=u0(o);return hd(f,i)}else return{base64:!0,data:o}},hd=(o,i)=>{switch(i){case"blob":return o instanceof Blob?o:new Blob([o]);case"arraybuffer":default:return o instanceof ArrayBuffer?o:o.buffer}},dd="",f0=(o,i)=>{const f=o.length,s=new Array(f);let m=0;o.forEach((E,R)=>{Xf(E,!1,B=>{s[R]=B,++m===f&&i(s.join(dd))})})},s0=(o,i)=>{const f=o.split(dd),s=[];for(let m=0;m{const s=f.length;let m;if(s<126)m=new Uint8Array(1),new DataView(m.buffer).setUint8(0,s);else if(s<65536){m=new Uint8Array(3);const E=new DataView(m.buffer);E.setUint8(0,126),E.setUint16(1,s)}else{m=new Uint8Array(9);const E=new DataView(m.buffer);E.setUint8(0,127),E.setBigUint64(1,BigInt(s))}o.data&&typeof o.data!="string"&&(m[0]|=128),i.enqueue(m),i.enqueue(f)})}})}let Uf;function Fu(o){return o.reduce((i,f)=>i+f.length,0)}function Iu(o,i){if(o[0].length===i)return o.shift();const f=new Uint8Array(i);let s=0;for(let m=0;mMath.pow(2,21)-1){B.enqueue(Cf);break}m=Q*Math.pow(2,32)+A.getUint32(4),s=3}else{if(Fu(f)o){B.enqueue(Cf);break}}}})}const yd=4;function Ot(o){if(o)return h0(o)}function h0(o){for(var i in Ot.prototype)o[i]=Ot.prototype[i];return o}Ot.prototype.on=Ot.prototype.addEventListener=function(o,i){return this._callbacks=this._callbacks||{},(this._callbacks["$"+o]=this._callbacks["$"+o]||[]).push(i),this};Ot.prototype.once=function(o,i){function f(){this.off(o,f),i.apply(this,arguments)}return f.fn=i,this.on(o,f),this};Ot.prototype.off=Ot.prototype.removeListener=Ot.prototype.removeAllListeners=Ot.prototype.removeEventListener=function(o,i){if(this._callbacks=this._callbacks||{},arguments.length==0)return this._callbacks={},this;var f=this._callbacks["$"+o];if(!f)return this;if(arguments.length==1)return delete this._callbacks["$"+o],this;for(var s,m=0;mPromise.resolve().then(i):(i,f)=>f(i,0),Se=typeof self<"u"?self:typeof window<"u"?window:Function("return this")(),d0="arraybuffer";function md(o,...i){return i.reduce((f,s)=>(o.hasOwnProperty(s)&&(f[s]=o[s]),f),{})}const y0=Se.setTimeout,m0=Se.clearTimeout;function ai(o,i){i.useNativeTimers?(o.setTimeoutFn=y0.bind(Se),o.clearTimeoutFn=m0.bind(Se)):(o.setTimeoutFn=Se.setTimeout.bind(Se),o.clearTimeoutFn=Se.clearTimeout.bind(Se))}const v0=1.33;function g0(o){return typeof o=="string"?p0(o):Math.ceil((o.byteLength||o.size)*v0)}function p0(o){let i=0,f=0;for(let s=0,m=o.length;s=57344?f+=3:(s++,f+=4);return f}function vd(){return Date.now().toString(36).substring(3)+Math.random().toString(36).substring(2,5)}function b0(o){let i="";for(let f in o)o.hasOwnProperty(f)&&(i.length&&(i+="&"),i+=encodeURIComponent(f)+"="+encodeURIComponent(o[f]));return i}function S0(o){let i={},f=o.split("&");for(let s=0,m=f.length;s{this.readyState="paused",i()};if(this._polling||!this.writable){let s=0;this._polling&&(s++,this.once("pollComplete",function(){--s||f()})),this.writable||(s++,this.once("drain",function(){--s||f()}))}else f()}_poll(){this._polling=!0,this.doPoll(),this.emitReserved("poll")}onData(i){const f=s=>{if(this.readyState==="opening"&&s.type==="open"&&this.onOpen(),s.type==="close")return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(s)};s0(i,this.socket.binaryType).forEach(f),this.readyState!=="closed"&&(this._polling=!1,this.emitReserved("pollComplete"),this.readyState==="open"&&this._poll())}doClose(){const i=()=>{this.write([{type:"close"}])};this.readyState==="open"?i():this.once("open",i)}write(i){this.writable=!1,f0(i,f=>{this.doWrite(f,()=>{this.writable=!0,this.emitReserved("drain")})})}uri(){const i=this.opts.secure?"https":"http",f=this.query||{};return this.opts.timestampRequests!==!1&&(f[this.opts.timestampParam]=vd()),!this.supportsBinary&&!f.sid&&(f.b64=1),this.createUri(i,f)}}let gd=!1;try{gd=typeof XMLHttpRequest<"u"&&"withCredentials"in new XMLHttpRequest}catch{}const T0=gd;function A0(){}class z0 extends E0{constructor(i){if(super(i),typeof location<"u"){const f=location.protocol==="https:";let s=location.port;s||(s=f?"443":"80"),this.xd=typeof location<"u"&&i.hostname!==location.hostname||s!==i.port}}doWrite(i,f){const s=this.request({method:"POST",data:i});s.on("success",f),s.on("error",(m,E)=>{this.onError("xhr post error",m,E)})}doPoll(){const i=this.request();i.on("data",this.onData.bind(this)),i.on("error",(f,s)=>{this.onError("xhr poll error",f,s)}),this.pollXhr=i}}class Ce extends Ot{constructor(i,f,s){super(),this.createRequest=i,ai(this,s),this._opts=s,this._method=s.method||"GET",this._uri=f,this._data=s.data!==void 0?s.data:null,this._create()}_create(){var i;const f=md(this._opts,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");f.xdomain=!!this._opts.xd;const s=this._xhr=this.createRequest(f);try{s.open(this._method,this._uri,!0);try{if(this._opts.extraHeaders){s.setDisableHeaderCheck&&s.setDisableHeaderCheck(!0);for(let m in this._opts.extraHeaders)this._opts.extraHeaders.hasOwnProperty(m)&&s.setRequestHeader(m,this._opts.extraHeaders[m])}}catch{}if(this._method==="POST")try{s.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch{}try{s.setRequestHeader("Accept","*/*")}catch{}(i=this._opts.cookieJar)===null||i===void 0||i.addCookies(s),"withCredentials"in s&&(s.withCredentials=this._opts.withCredentials),this._opts.requestTimeout&&(s.timeout=this._opts.requestTimeout),s.onreadystatechange=()=>{var m;s.readyState===3&&((m=this._opts.cookieJar)===null||m===void 0||m.parseCookies(s.getResponseHeader("set-cookie"))),s.readyState===4&&(s.status===200||s.status===1223?this._onLoad():this.setTimeoutFn(()=>{this._onError(typeof s.status=="number"?s.status:0)},0))},s.send(this._data)}catch(m){this.setTimeoutFn(()=>{this._onError(m)},0);return}typeof document<"u"&&(this._index=Ce.requestsCount++,Ce.requests[this._index]=this)}_onError(i){this.emitReserved("error",i,this._xhr),this._cleanup(!0)}_cleanup(i){if(!(typeof this._xhr>"u"||this._xhr===null)){if(this._xhr.onreadystatechange=A0,i)try{this._xhr.abort()}catch{}typeof document<"u"&&delete Ce.requests[this._index],this._xhr=null}}_onLoad(){const i=this._xhr.responseText;i!==null&&(this.emitReserved("data",i),this.emitReserved("success"),this._cleanup())}abort(){this._cleanup()}}Ce.requestsCount=0;Ce.requests={};if(typeof document<"u"){if(typeof attachEvent=="function")attachEvent("onunload",cd);else if(typeof addEventListener=="function"){const o="onpagehide"in Se?"pagehide":"unload";addEventListener(o,cd,!1)}}function cd(){for(let o in Ce.requests)Ce.requests.hasOwnProperty(o)&&Ce.requests[o].abort()}const O0=(function(){const o=pd({xdomain:!1});return o&&o.responseType!==null})();class N0 extends z0{constructor(i){super(i);const f=i&&i.forceBase64;this.supportsBinary=O0&&!f}request(i={}){return Object.assign(i,{xd:this.xd},this.opts),new Ce(pd,this.uri(),i)}}function pd(o){const i=o.xdomain;try{if(typeof XMLHttpRequest<"u"&&(!i||T0))return new XMLHttpRequest}catch{}if(!i)try{return new Se[["Active"].concat("Object").join("X")]("Microsoft.XMLHTTP")}catch{}}const bd=typeof navigator<"u"&&typeof navigator.product=="string"&&navigator.product.toLowerCase()==="reactnative";class M0 extends Gf{get name(){return"websocket"}doOpen(){const i=this.uri(),f=this.opts.protocols,s=bd?{}:md(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(s.headers=this.opts.extraHeaders);try{this.ws=this.createSocket(i,f,s)}catch(m){return this.emitReserved("error",m)}this.ws.binaryType=this.socket.binaryType,this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=i=>this.onClose({description:"websocket connection closed",context:i}),this.ws.onmessage=i=>this.onData(i.data),this.ws.onerror=i=>this.onError("websocket error",i)}write(i){this.writable=!1;for(let f=0;f{try{this.doWrite(s,E)}catch{}m&&ni(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){typeof this.ws<"u"&&(this.ws.onerror=()=>{},this.ws.close(),this.ws=null)}uri(){const i=this.opts.secure?"wss":"ws",f=this.query||{};return this.opts.timestampRequests&&(f[this.opts.timestampParam]=vd()),this.supportsBinary||(f.b64=1),this.createUri(i,f)}}const xf=Se.WebSocket||Se.MozWebSocket;class R0 extends M0{createSocket(i,f,s){return bd?new xf(i,f,s):f?new xf(i,f):new xf(i)}doWrite(i,f){this.ws.send(f)}}class D0 extends Gf{get name(){return"webtransport"}doOpen(){try{this._transport=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name])}catch(i){return this.emitReserved("error",i)}this._transport.closed.then(()=>{this.onClose()}).catch(i=>{this.onError("webtransport error",i)}),this._transport.ready.then(()=>{this._transport.createBidirectionalStream().then(i=>{const f=r0(Number.MAX_SAFE_INTEGER,this.socket.binaryType),s=i.readable.pipeThrough(f).getReader(),m=o0();m.readable.pipeTo(i.writable),this._writer=m.writable.getWriter();const E=()=>{s.read().then(({done:B,value:M})=>{B||(this.onPacket(M),E())}).catch(B=>{})};E();const R={type:"open"};this.query.sid&&(R.data=`{"sid":"${this.query.sid}"}`),this._writer.write(R).then(()=>this.onOpen())})})}write(i){this.writable=!1;for(let f=0;f{m&&ni(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){var i;(i=this._transport)===null||i===void 0||i.close()}}const U0={websocket:R0,webtransport:D0,polling:N0},x0=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,C0=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function Bf(o){if(o.length>8e3)throw"URI too long";const i=o,f=o.indexOf("["),s=o.indexOf("]");f!=-1&&s!=-1&&(o=o.substring(0,f)+o.substring(f,s).replace(/:/g,";")+o.substring(s,o.length));let m=x0.exec(o||""),E={},R=14;for(;R--;)E[C0[R]]=m[R]||"";return f!=-1&&s!=-1&&(E.source=i,E.host=E.host.substring(1,E.host.length-1).replace(/;/g,":"),E.authority=E.authority.replace("[","").replace("]","").replace(/;/g,":"),E.ipv6uri=!0),E.pathNames=B0(E,E.path),E.queryKey=q0(E,E.query),E}function B0(o,i){const f=/\/{2,9}/g,s=i.replace(f,"/").split("/");return(i.slice(0,1)=="/"||i.length===0)&&s.splice(0,1),i.slice(-1)=="/"&&s.splice(s.length-1,1),s}function q0(o,i){const f={};return i.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,function(s,m,E){m&&(f[m]=E)}),f}const qf=typeof addEventListener=="function"&&typeof removeEventListener=="function",ti=[];qf&&addEventListener("offline",()=>{ti.forEach(o=>o())},!1);class Nl extends Ot{constructor(i,f){if(super(),this.binaryType=d0,this.writeBuffer=[],this._prevBufferLen=0,this._pingInterval=-1,this._pingTimeout=-1,this._maxPayload=-1,this._pingTimeoutTime=1/0,i&&typeof i=="object"&&(f=i,i=null),i){const s=Bf(i);f.hostname=s.host,f.secure=s.protocol==="https"||s.protocol==="wss",f.port=s.port,s.query&&(f.query=s.query)}else f.host&&(f.hostname=Bf(f.host).host);ai(this,f),this.secure=f.secure!=null?f.secure:typeof location<"u"&&location.protocol==="https:",f.hostname&&!f.port&&(f.port=this.secure?"443":"80"),this.hostname=f.hostname||(typeof location<"u"?location.hostname:"localhost"),this.port=f.port||(typeof location<"u"&&location.port?location.port:this.secure?"443":"80"),this.transports=[],this._transportsByName={},f.transports.forEach(s=>{const m=s.prototype.name;this.transports.push(m),this._transportsByName[m]=s}),this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},f),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),typeof this.opts.query=="string"&&(this.opts.query=S0(this.opts.query)),qf&&(this.opts.closeOnBeforeunload&&(this._beforeunloadEventListener=()=>{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this._beforeunloadEventListener,!1)),this.hostname!=="localhost"&&(this._offlineEventListener=()=>{this._onClose("transport close",{description:"network connection lost"})},ti.push(this._offlineEventListener))),this.opts.withCredentials&&(this._cookieJar=void 0),this._open()}createTransport(i){const f=Object.assign({},this.opts.query);f.EIO=yd,f.transport=i,this.id&&(f.sid=this.id);const s=Object.assign({},this.opts,{query:f,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[i]);return new this._transportsByName[i](s)}_open(){if(this.transports.length===0){this.setTimeoutFn(()=>{this.emitReserved("error","No transports available")},0);return}const i=this.opts.rememberUpgrade&&Nl.priorWebsocketSuccess&&this.transports.indexOf("websocket")!==-1?"websocket":this.transports[0];this.readyState="opening";const f=this.createTransport(i);f.open(),this.setTransport(f)}setTransport(i){this.transport&&this.transport.removeAllListeners(),this.transport=i,i.on("drain",this._onDrain.bind(this)).on("packet",this._onPacket.bind(this)).on("error",this._onError.bind(this)).on("close",f=>this._onClose("transport close",f))}onOpen(){this.readyState="open",Nl.priorWebsocketSuccess=this.transport.name==="websocket",this.emitReserved("open"),this.flush()}_onPacket(i){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing")switch(this.emitReserved("packet",i),this.emitReserved("heartbeat"),i.type){case"open":this.onHandshake(JSON.parse(i.data));break;case"ping":this._sendPacket("pong"),this.emitReserved("ping"),this.emitReserved("pong"),this._resetPingTimeout();break;case"error":const f=new Error("server error");f.code=i.data,this._onError(f);break;case"message":this.emitReserved("data",i.data),this.emitReserved("message",i.data);break}}onHandshake(i){this.emitReserved("handshake",i),this.id=i.sid,this.transport.query.sid=i.sid,this._pingInterval=i.pingInterval,this._pingTimeout=i.pingTimeout,this._maxPayload=i.maxPayload,this.onOpen(),this.readyState!=="closed"&&this._resetPingTimeout()}_resetPingTimeout(){this.clearTimeoutFn(this._pingTimeoutTimer);const i=this._pingInterval+this._pingTimeout;this._pingTimeoutTime=Date.now()+i,this._pingTimeoutTimer=this.setTimeoutFn(()=>{this._onClose("ping timeout")},i),this.opts.autoUnref&&this._pingTimeoutTimer.unref()}_onDrain(){this.writeBuffer.splice(0,this._prevBufferLen),this._prevBufferLen=0,this.writeBuffer.length===0?this.emitReserved("drain"):this.flush()}flush(){if(this.readyState!=="closed"&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){const i=this._getWritablePackets();this.transport.send(i),this._prevBufferLen=i.length,this.emitReserved("flush")}}_getWritablePackets(){if(!(this._maxPayload&&this.transport.name==="polling"&&this.writeBuffer.length>1))return this.writeBuffer;let f=1;for(let s=0;s0&&f>this._maxPayload)return this.writeBuffer.slice(0,s);f+=2}return this.writeBuffer}_hasPingExpired(){if(!this._pingTimeoutTime)return!0;const i=Date.now()>this._pingTimeoutTime;return i&&(this._pingTimeoutTime=0,ni(()=>{this._onClose("ping timeout")},this.setTimeoutFn)),i}write(i,f,s){return this._sendPacket("message",i,f,s),this}send(i,f,s){return this._sendPacket("message",i,f,s),this}_sendPacket(i,f,s,m){if(typeof f=="function"&&(m=f,f=void 0),typeof s=="function"&&(m=s,s=null),this.readyState==="closing"||this.readyState==="closed")return;s=s||{},s.compress=s.compress!==!1;const E={type:i,data:f,options:s};this.emitReserved("packetCreate",E),this.writeBuffer.push(E),m&&this.once("flush",m),this.flush()}close(){const i=()=>{this._onClose("forced close"),this.transport.close()},f=()=>{this.off("upgrade",f),this.off("upgradeError",f),i()},s=()=>{this.once("upgrade",f),this.once("upgradeError",f)};return(this.readyState==="opening"||this.readyState==="open")&&(this.readyState="closing",this.writeBuffer.length?this.once("drain",()=>{this.upgrading?s():i()}):this.upgrading?s():i()),this}_onError(i){if(Nl.priorWebsocketSuccess=!1,this.opts.tryAllTransports&&this.transports.length>1&&this.readyState==="opening")return this.transports.shift(),this._open();this.emitReserved("error",i),this._onClose("transport error",i)}_onClose(i,f){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing"){if(this.clearTimeoutFn(this._pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),qf&&(this._beforeunloadEventListener&&removeEventListener("beforeunload",this._beforeunloadEventListener,!1),this._offlineEventListener)){const s=ti.indexOf(this._offlineEventListener);s!==-1&&ti.splice(s,1)}this.readyState="closed",this.id=null,this.emitReserved("close",i,f),this.writeBuffer=[],this._prevBufferLen=0}}}Nl.protocol=yd;class H0 extends Nl{constructor(){super(...arguments),this._upgrades=[]}onOpen(){if(super.onOpen(),this.readyState==="open"&&this.opts.upgrade)for(let i=0;i{s||(f.send([{type:"ping",data:"probe"}]),f.once("packet",x=>{if(!s)if(x.type==="pong"&&x.data==="probe"){if(this.upgrading=!0,this.emitReserved("upgrading",f),!f)return;Nl.priorWebsocketSuccess=f.name==="websocket",this.transport.pause(()=>{s||this.readyState!=="closed"&&(Q(),this.setTransport(f),f.send([{type:"upgrade"}]),this.emitReserved("upgrade",f),f=null,this.upgrading=!1,this.flush())})}else{const K=new Error("probe error");K.transport=f.name,this.emitReserved("upgradeError",K)}}))};function E(){s||(s=!0,Q(),f.close(),f=null)}const R=x=>{const K=new Error("probe error: "+x);K.transport=f.name,E(),this.emitReserved("upgradeError",K)};function B(){R("transport closed")}function M(){R("socket closed")}function A(x){f&&x.name!==f.name&&E()}const Q=()=>{f.removeListener("open",m),f.removeListener("error",R),f.removeListener("close",B),this.off("close",M),this.off("upgrading",A)};f.once("open",m),f.once("error",R),f.once("close",B),this.once("close",M),this.once("upgrading",A),this._upgrades.indexOf("webtransport")!==-1&&i!=="webtransport"?this.setTimeoutFn(()=>{s||f.open()},200):f.open()}onHandshake(i){this._upgrades=this._filterUpgrades(i.upgrades),super.onHandshake(i)}_filterUpgrades(i){const f=[];for(let s=0;sU0[m]).filter(m=>!!m)),super(i,s)}};function j0(o,i="",f){let s=o;f=f||typeof location<"u"&&location,o==null&&(o=f.protocol+"//"+f.host),typeof o=="string"&&(o.charAt(0)==="/"&&(o.charAt(1)==="/"?o=f.protocol+o:o=f.host+o),/^(https?|wss?):\/\//.test(o)||(typeof f<"u"?o=f.protocol+"//"+o:o="https://"+o),s=Bf(o)),s.port||(/^(http|ws)$/.test(s.protocol)?s.port="80":/^(http|ws)s$/.test(s.protocol)&&(s.port="443")),s.path=s.path||"/";const E=s.host.indexOf(":")!==-1?"["+s.host+"]":s.host;return s.id=s.protocol+"://"+E+":"+s.port+i,s.href=s.protocol+"://"+E+(f&&f.port===s.port?"":":"+s.port),s}const L0=typeof ArrayBuffer=="function",X0=o=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(o):o.buffer instanceof ArrayBuffer,Sd=Object.prototype.toString,Q0=typeof Blob=="function"||typeof Blob<"u"&&Sd.call(Blob)==="[object BlobConstructor]",G0=typeof File=="function"||typeof File<"u"&&Sd.call(File)==="[object FileConstructor]";function Vf(o){return L0&&(o instanceof ArrayBuffer||X0(o))||Q0&&o instanceof Blob||G0&&o instanceof File}function ei(o,i){if(!o||typeof o!="object")return!1;if(Array.isArray(o)){for(let f=0,s=o.length;f=0&&o.num{delete this.acks[i];for(let B=0;B{this.io.clearTimeoutFn(E),f.apply(this,B)};R.withError=!0,this.acks[i]=R}emitWithAck(i,...f){return new Promise((s,m)=>{const E=(R,B)=>R?m(R):s(B);E.withError=!0,f.push(E),this.emit(i,...f)})}_addToQueue(i){let f;typeof i[i.length-1]=="function"&&(f=i.pop());const s={id:this._queueSeq++,tryCount:0,pending:!1,args:i,flags:Object.assign({fromQueue:!0},this.flags)};i.push((m,...E)=>s!==this._queue[0]?void 0:(m!==null?s.tryCount>this._opts.retries&&(this._queue.shift(),f&&f(m)):(this._queue.shift(),f&&f(null,...E)),s.pending=!1,this._drainQueue())),this._queue.push(s),this._drainQueue()}_drainQueue(i=!1){if(!this.connected||this._queue.length===0)return;const f=this._queue[0];f.pending&&!i||(f.pending=!0,f.tryCount++,this.flags=f.flags,this.emit.apply(this,f.args))}packet(i){i.nsp=this.nsp,this.io._packet(i)}onopen(){typeof this.auth=="function"?this.auth(i=>{this._sendConnectPacket(i)}):this._sendConnectPacket(this.auth)}_sendConnectPacket(i){this.packet({type:tt.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},i):i})}onerror(i){this.connected||this.emitReserved("connect_error",i)}onclose(i,f){this.connected=!1,delete this.id,this.emitReserved("disconnect",i,f),this._clearAcks()}_clearAcks(){Object.keys(this.acks).forEach(i=>{if(!this.sendBuffer.some(s=>String(s.id)===i)){const s=this.acks[i];delete this.acks[i],s.withError&&s.call(this,new Error("socket has been disconnected"))}})}onpacket(i){if(i.nsp===this.nsp)switch(i.type){case tt.CONNECT:i.data&&i.data.sid?this.onconnect(i.data.sid,i.data.pid):this.emitReserved("connect_error",new Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case tt.EVENT:case tt.BINARY_EVENT:this.onevent(i);break;case tt.ACK:case tt.BINARY_ACK:this.onack(i);break;case tt.DISCONNECT:this.ondisconnect();break;case tt.CONNECT_ERROR:this.destroy();const s=new Error(i.data.message);s.data=i.data.data,this.emitReserved("connect_error",s);break}}onevent(i){const f=i.data||[];i.id!=null&&f.push(this.ack(i.id)),this.connected?this.emitEvent(f):this.receiveBuffer.push(Object.freeze(f))}emitEvent(i){if(this._anyListeners&&this._anyListeners.length){const f=this._anyListeners.slice();for(const s of f)s.apply(this,i)}super.emit.apply(this,i),this._pid&&i.length&&typeof i[i.length-1]=="string"&&(this._lastOffset=i[i.length-1])}ack(i){const f=this;let s=!1;return function(...m){s||(s=!0,f.packet({type:tt.ACK,id:i,data:m}))}}onack(i){const f=this.acks[i.id];typeof f=="function"&&(delete this.acks[i.id],f.withError&&i.data.unshift(null),f.apply(this,i.data))}onconnect(i,f){this.id=i,this.recovered=f&&this._pid===f,this._pid=f,this.connected=!0,this.emitBuffered(),this.emitReserved("connect"),this._drainQueue(!0)}emitBuffered(){this.receiveBuffer.forEach(i=>this.emitEvent(i)),this.receiveBuffer=[],this.sendBuffer.forEach(i=>{this.notifyOutgoingListeners(i),this.packet(i)}),this.sendBuffer=[]}ondisconnect(){this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach(i=>i()),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&this.packet({type:tt.DISCONNECT}),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(i){return this.flags.compress=i,this}get volatile(){return this.flags.volatile=!0,this}timeout(i){return this.flags.timeout=i,this}onAny(i){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(i),this}prependAny(i){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(i),this}offAny(i){if(!this._anyListeners)return this;if(i){const f=this._anyListeners;for(let s=0;s0&&o.jitter<=1?o.jitter:0,this.attempts=0}Bn.prototype.duration=function(){var o=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var i=Math.random(),f=Math.floor(i*this.jitter*o);o=(Math.floor(i*10)&1)==0?o-f:o+f}return Math.min(o,this.max)|0};Bn.prototype.reset=function(){this.attempts=0};Bn.prototype.setMin=function(o){this.ms=o};Bn.prototype.setMax=function(o){this.max=o};Bn.prototype.setJitter=function(o){this.jitter=o};class jf extends Ot{constructor(i,f){var s;super(),this.nsps={},this.subs=[],i&&typeof i=="object"&&(f=i,i=void 0),f=f||{},f.path=f.path||"/socket.io",this.opts=f,ai(this,f),this.reconnection(f.reconnection!==!1),this.reconnectionAttempts(f.reconnectionAttempts||1/0),this.reconnectionDelay(f.reconnectionDelay||1e3),this.reconnectionDelayMax(f.reconnectionDelayMax||5e3),this.randomizationFactor((s=f.randomizationFactor)!==null&&s!==void 0?s:.5),this.backoff=new Bn({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(f.timeout==null?2e4:f.timeout),this._readyState="closed",this.uri=i;const m=f.parser||W0;this.encoder=new m.Encoder,this.decoder=new m.Decoder,this._autoConnect=f.autoConnect!==!1,this._autoConnect&&this.open()}reconnection(i){return arguments.length?(this._reconnection=!!i,i||(this.skipReconnect=!0),this):this._reconnection}reconnectionAttempts(i){return i===void 0?this._reconnectionAttempts:(this._reconnectionAttempts=i,this)}reconnectionDelay(i){var f;return i===void 0?this._reconnectionDelay:(this._reconnectionDelay=i,(f=this.backoff)===null||f===void 0||f.setMin(i),this)}randomizationFactor(i){var f;return i===void 0?this._randomizationFactor:(this._randomizationFactor=i,(f=this.backoff)===null||f===void 0||f.setJitter(i),this)}reconnectionDelayMax(i){var f;return i===void 0?this._reconnectionDelayMax:(this._reconnectionDelayMax=i,(f=this.backoff)===null||f===void 0||f.setMax(i),this)}timeout(i){return arguments.length?(this._timeout=i,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&this.backoff.attempts===0&&this.reconnect()}open(i){if(~this._readyState.indexOf("open"))return this;this.engine=new Y0(this.uri,this.opts);const f=this.engine,s=this;this._readyState="opening",this.skipReconnect=!1;const m=ze(f,"open",function(){s.onopen(),i&&i()}),E=B=>{this.cleanup(),this._readyState="closed",this.emitReserved("error",B),i?i(B):this.maybeReconnectOnOpen()},R=ze(f,"error",E);if(this._timeout!==!1){const B=this._timeout,M=this.setTimeoutFn(()=>{m(),E(new Error("timeout")),f.close()},B);this.opts.autoUnref&&M.unref(),this.subs.push(()=>{this.clearTimeoutFn(M)})}return this.subs.push(m),this.subs.push(R),this}connect(i){return this.open(i)}onopen(){this.cleanup(),this._readyState="open",this.emitReserved("open");const i=this.engine;this.subs.push(ze(i,"ping",this.onping.bind(this)),ze(i,"data",this.ondata.bind(this)),ze(i,"error",this.onerror.bind(this)),ze(i,"close",this.onclose.bind(this)),ze(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(i){try{this.decoder.add(i)}catch(f){this.onclose("parse error",f)}}ondecoded(i){ni(()=>{this.emitReserved("packet",i)},this.setTimeoutFn)}onerror(i){this.emitReserved("error",i)}socket(i,f){let s=this.nsps[i];return s?this._autoConnect&&!s.active&&s.connect():(s=new _d(this,i,f),this.nsps[i]=s),s}_destroy(i){const f=Object.keys(this.nsps);for(const s of f)if(this.nsps[s].active)return;this._close()}_packet(i){const f=this.encoder.encode(i);for(let s=0;si()),this.subs.length=0,this.decoder.destroy()}_close(){this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close")}disconnect(){return this._close()}onclose(i,f){var s;this.cleanup(),(s=this.engine)===null||s===void 0||s.close(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",i,f),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;const i=this;if(this.backoff.attempts>=this._reconnectionAttempts)this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{const f=this.backoff.duration();this._reconnecting=!0;const s=this.setTimeoutFn(()=>{i.skipReconnect||(this.emitReserved("reconnect_attempt",i.backoff.attempts),!i.skipReconnect&&i.open(m=>{m?(i._reconnecting=!1,i.reconnect(),this.emitReserved("reconnect_error",m)):i.onreconnect()}))},f);this.opts.autoUnref&&s.unref(),this.subs.push(()=>{this.clearTimeoutFn(s)})}}onreconnect(){const i=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",i)}}const Ua={};function li(o,i){typeof o=="object"&&(i=o,o=void 0),i=i||{};const f=j0(o,i.path||"/socket.io"),s=f.source,m=f.id,E=f.path,R=Ua[m]&&E in Ua[m].nsps,B=i.forceNew||i["force new connection"]||i.multiplex===!1||R;let M;return B?M=new jf(s,i):(Ua[m]||(Ua[m]=new jf(s,i)),M=Ua[m]),f.query&&!i.query&&(i.query=f.queryKey),M.socket(f.path,i)}Object.assign(li,{Manager:jf,Socket:_d,io:li,connect:li});const Ed=window.location.origin;console.info("[socket] connecting to",Ed);const wf=li(Ed,{transports:["polling","websocket"],timeout:15e3});wf.on("connect_error",o=>console.error("connect_error",o.code,o.message,o.data));const Td=Mt.createContext(wf),F0=({children:o})=>Y.jsx(Td.Provider,{value:wf,children:o}),I0=()=>Mt.useContext(Td),Ad=Mt.createContext({connected:!1,session:null,logs:[],login:async()=>{},setRole:async()=>{},requestControl:async()=>{},releaseControl:async()=>{},subscribeAll:async()=>{}});function P0(o){return Mt.useCallback((i,f={})=>new Promise((s,m)=>{o.emit(i,f,(E={})=>{E.error?m(new Error(E.error)):s(E)})}),[o])}function tv({children:o}){const i=I0(),f=P0(i),[s,m]=Mt.useState(null),[E,R]=Mt.useState([]),[B,M]=Mt.useState(i.connected);Mt.useEffect(()=>{const x=()=>M(!0),K=()=>M(!1);return i.on("connect",x),i.on("disconnect",K),()=>{i.off("connect",x),i.off("disconnect",K)}},[i]),Mt.useEffect(()=>{function x(_t){m(_t)}function K(_t=[]){R(_t)}function Yt(_t){R(Ut=>[...Ut.slice(-199),_t])}return i.on("session:sync",x),i.on("log:init",K),i.on("log:entry",Yt),()=>{i.off("session:sync",x),i.off("log:init",K),i.off("log:entry",Yt)}},[i]);const A=Mt.useMemo(()=>({login:(x,K)=>f("auth:login",{username:x,password:K}),setRole:x=>f("session:setRole",{role:x}),requestControl:(x,K={})=>f("session:requestControl",{roverId:x,...K}),releaseControl:x=>f("session:releaseControl",{roverId:x}),subscribeAll:()=>f("session:subscribeAll")}),[f]),Q=Mt.useMemo(()=>({connected:B,session:s,logs:E,...A}),[A,B,E,s]);return Y.jsx(Ad.Provider,{value:Q,children:o})}function qn(){return Mt.useContext(Ad)}function ev({connected:o,role:i,mode:f}){const s=o?"bg-emerald-500/20 text-emerald-300":"bg-red-500/20 text-red-200";return Y.jsxs("div",{className:"flex flex-wrap items-center gap-3 text-sm",children:[Y.jsx("span",{className:`rounded-full px-3 py-1 font-medium ${s}`,children:o?"Connected":"Disconnected"}),Y.jsxs("span",{className:"rounded-full bg-slate-800/80 px-3 py-1 text-slate-200",children:["Role: ",i||"unknown"]}),Y.jsxs("span",{className:"rounded-full bg-slate-800/80 px-3 py-1 text-slate-200",children:["Mode: ",f||"--"]})]})}function lv(){const{logs:o}=qn();return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/70 p-4",children:[Y.jsxs("header",{className:"mb-3 flex items-center justify-between",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Server logs"}),Y.jsxs("span",{className:"text-xs uppercase tracking-[0.2em] text-slate-500",children:[o.length," entries"]})]}),Y.jsx("div",{className:"h-64 overflow-y-auto rounded-xl bg-slate-950/40 p-3 text-xs font-mono text-slate-300",children:o.length===0?Y.jsx("p",{children:"No logs yet."}):o.slice().reverse().map(i=>Y.jsxs("div",{className:"mb-2",children:[Y.jsx("span",{className:"text-slate-500",children:i.timestamp})," ",Y.jsxs("span",{className:"text-cyan-300",children:["[",i.level,"]"]})," ",i.label&&Y.jsxs("span",{className:"text-pink-300",children:["[",i.label,"]"]})," ",Y.jsx("span",{children:i.message})]},i.id))})]})}function nv(){const{session:o,requestControl:i}=qn(),f=o?.roster??[],[s,m]=Mt.useState({});async function E(R){m(B=>({...B,[R]:!0}));try{await i(R)}catch(B){alert(B.message)}finally{m(B=>({...B,[R]:!1}))}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Rovers"}),Y.jsxs("div",{className:"mt-4 space-y-3",children:[f.length===0&&Y.jsx("p",{className:"text-slate-400",children:"No rovers registered."}),f.map(R=>Y.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-3 rounded-xl bg-slate-950/40 px-4 py-3",children:[Y.jsxs("div",{children:[Y.jsx("p",{className:"text-white",children:R.name}),Y.jsxs("p",{className:"text-xs text-slate-400",children:["Locked: ",R.locked?"yes":"no"]})]}),Y.jsx("button",{type:"button",onClick:()=>E(R.id),disabled:s[R.id],className:"rounded-full bg-blue-600 px-4 py-1 text-sm font-semibold text-white disabled:opacity-50",children:s[R.id]?"Requesting…":"Request control"})]},R.id))]})]})}function av(){const{session:o,releaseControl:i}=qn(),f=o?.assignment,s=f?.roverId,[m,E]=Mt.useState(!1);async function R(){if(s){E(!0);try{await i(s)}catch(B){alert(B.message)}finally{E(!1)}}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Assignment"}),s?Y.jsxs("div",{className:"mt-4 space-y-3",children:[Y.jsxs("p",{className:"text-slate-300",children:["Currently driving rover ",s]}),Y.jsx("button",{type:"button",onClick:R,disabled:m,className:"rounded-full bg-red-600 px-4 py-1 text-sm font-semibold text-white disabled:opacity-50",children:m?"Releasing…":"Release control"})]}):Y.jsxs("div",{className:"mt-4 text-slate-400",children:[Y.jsxs("p",{children:["Status: ",f?.status??"not assigned"]}),f?.queuePosition&&Y.jsxs("p",{children:["Queue position: ",f.queuePosition]})]})]})}function uv(){const{session:o}=qn(),i=Mt.useMemo(()=>JSON.stringify(o??{},null,2),[o]);return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Session snapshot"}),Y.jsx("pre",{className:"mt-4 max-h-64 overflow-y-auto text-sm text-teal-200",children:i})]})}function iv(){const{login:o,setRole:i}=qn(),[f,s]=Mt.useState(""),[m,E]=Mt.useState(""),[R,B]=Mt.useState(!1);async function M(A){A.preventDefault(),B(!0);try{await o(f,m),s(""),E("")}catch(Q){alert(Q.message)}finally{B(!1)}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Authentication"}),Y.jsxs("form",{className:"mt-4 flex flex-col gap-3",onSubmit:M,children:[Y.jsx("input",{className:"rounded-lg border border-slate-800 bg-slate-950/60 px-3 py-2 text-white",placeholder:"Username",value:f,onChange:A=>s(A.target.value)}),Y.jsx("input",{className:"rounded-lg border border-slate-800 bg-slate-950/60 px-3 py-2 text-white",placeholder:"Password",type:"password",value:m,onChange:A=>E(A.target.value)}),Y.jsx("button",{type:"submit",disabled:R,className:"rounded-lg bg-emerald-600 py-2 font-semibold text-white disabled:opacity-50",children:R?"Logging in…":"Login as admin"})]}),Y.jsxs("div",{className:"mt-4 flex gap-3",children:[Y.jsx("button",{type:"button",onClick:()=>i("user"),className:"rounded-lg border border-slate-700 px-3 py-1 text-sm text-slate-200",children:"Driver mode"}),Y.jsx("button",{type:"button",onClick:()=>i("spectator"),className:"rounded-lg border border-slate-700 px-3 py-1 text-sm text-slate-200",children:"Spectator mode"})]})]})}function cv(){const{connected:o,session:i}=qn();return Y.jsx("div",{className:"min-h-screen bg-slate-950 text-slate-50",children:Y.jsxs("main",{className:"mx-auto flex max-w-6xl flex-col gap-6 px-6 py-10",children:[Y.jsxs("header",{className:"space-y-4",children:[Y.jsx("h1",{className:"text-4xl font-semibold text-white",children:"Multi Roomba Rover Console"}),Y.jsx(ev,{connected:o,role:i?.role,mode:i?.mode})]}),Y.jsxs("section",{className:"grid gap-6 lg:grid-cols-2",children:[Y.jsx(nv,{}),Y.jsx(av,{}),Y.jsx(iv,{}),Y.jsx(uv,{})]}),Y.jsx(lv,{})]})})}n0.createRoot(document.getElementById("root")).render(Y.jsx(Mt.StrictMode,{children:Y.jsx(F0,{children:Y.jsx(tv,{children:Y.jsx(cv,{})})})})); diff --git a/server/public/index.html b/server/public/index.html index 02681c87..1e8b7844 100644 --- a/server/public/index.html +++ b/server/public/index.html @@ -5,7 +5,7 @@ webui - + diff --git a/webui/src/lib/socket.js b/webui/src/lib/socket.js index eeb916e6..e12e63d1 100644 --- a/webui/src/lib/socket.js +++ b/webui/src/lib/socket.js @@ -2,6 +2,9 @@ import { io } from 'socket.io-client'; const configured = import.meta.env.VITE_ROVERD_URL?.trim(); const resolvedUrl = configured && configured.length > 0 ? configured : window.location.origin; -console.info("[socket] connecting to", resolvedUrl); -export const socket = io(resolvedUrl, { transports: ["websocket","polling"], timeout: 15000 }); -socket.on("connect_error", (err) => console.error("connect_error", err.code, err.message, err.data)); +console.info('[socket] connecting to', resolvedUrl); +export const socket = io(resolvedUrl, { + transports: ['polling', 'websocket'], + timeout: 15000, +}); +socket.on('connect_error', (err) => console.error('connect_error', err.code, err.message, err.data)); From 50c56e7271b2c7d5acf03fa9519c36ff7ed24c0f Mon Sep 17 00:00:00 2001 From: legop3 Date: Sat, 15 Nov 2025 05:04:25 -0500 Subject: [PATCH 08/61] spectation --- server/public/assets/index-DoNH_msu.css | 1 - server/public/assets/index-JJWJQzRI.css | 1 + server/public/assets/index-OlyDvT3F.js | 9 -- server/public/assets/index-xwzFeHXC.js | 11 ++ server/public/index.html | 4 +- server/src/globals/http.js | 3 + webui/package-lock.json | 56 +++++++++- webui/package.json | 3 +- webui/src/App.jsx | 21 ++-- webui/src/hooks/useSensorFeed.js | 29 +++++ webui/src/hooks/useSpectatorMode.js | 30 ++++++ webui/src/hooks/useVideoRequests.js | 29 +++++ webui/src/main.jsx | 9 +- webui/src/spectate/SpectatorApp.jsx | 138 ++++++++++++++++++++++++ 14 files changed, 321 insertions(+), 23 deletions(-) delete mode 100644 server/public/assets/index-DoNH_msu.css create mode 100644 server/public/assets/index-JJWJQzRI.css delete mode 100644 server/public/assets/index-OlyDvT3F.js create mode 100644 server/public/assets/index-xwzFeHXC.js create mode 100644 webui/src/hooks/useSensorFeed.js create mode 100644 webui/src/hooks/useSpectatorMode.js create mode 100644 webui/src/hooks/useVideoRequests.js create mode 100644 webui/src/spectate/SpectatorApp.jsx diff --git a/server/public/assets/index-DoNH_msu.css b/server/public/assets/index-DoNH_msu.css deleted file mode 100644 index e588916d..00000000 --- a/server/public/assets/index-DoNH_msu.css +++ /dev/null @@ -1 +0,0 @@ -*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.mx-auto{margin-left:auto;margin-right:auto}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mt-4{margin-top:1rem}.flex{display:flex}.grid{display:grid}.h-64{height:16rem}.max-h-64{max-height:16rem}.min-h-screen{min-height:100vh}.max-w-6xl{max-width:72rem}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-3{gap:.75rem}.gap-6{gap:1.5rem}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.overflow-y-auto{overflow-y:auto}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-slate-700{--tw-border-opacity: 1;border-color:rgb(51 65 85 / var(--tw-border-opacity))}.border-slate-800{--tw-border-opacity: 1;border-color:rgb(30 41 59 / var(--tw-border-opacity))}.bg-blue-600{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity))}.bg-emerald-500\/20{background-color:#10b98133}.bg-emerald-600{--tw-bg-opacity: 1;background-color:rgb(5 150 105 / var(--tw-bg-opacity))}.bg-red-500\/20{background-color:#ef444433}.bg-red-600{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity))}.bg-slate-800\/80{background-color:#1e293bcc}.bg-slate-900\/60{background-color:#0f172a99}.bg-slate-900\/70{background-color:#0f172ab3}.bg-slate-950{--tw-bg-opacity: 1;background-color:rgb(2 6 23 / var(--tw-bg-opacity))}.bg-slate-950\/40{background-color:#02061766}.bg-slate-950\/60{background-color:#02061799}.p-3{padding:.75rem}.p-4{padding:1rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.tracking-\[0\.2em\]{letter-spacing:.2em}.text-cyan-300{--tw-text-opacity: 1;color:rgb(103 232 249 / var(--tw-text-opacity))}.text-emerald-300{--tw-text-opacity: 1;color:rgb(110 231 183 / var(--tw-text-opacity))}.text-pink-300{--tw-text-opacity: 1;color:rgb(249 168 212 / var(--tw-text-opacity))}.text-red-200{--tw-text-opacity: 1;color:rgb(254 202 202 / var(--tw-text-opacity))}.text-slate-200{--tw-text-opacity: 1;color:rgb(226 232 240 / var(--tw-text-opacity))}.text-slate-300{--tw-text-opacity: 1;color:rgb(203 213 225 / var(--tw-text-opacity))}.text-slate-400{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity))}.text-slate-50{--tw-text-opacity: 1;color:rgb(248 250 252 / var(--tw-text-opacity))}.text-slate-500{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity))}.text-teal-200{--tw-text-opacity: 1;color:rgb(153 246 228 / var(--tw-text-opacity))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#0f172a;background-color:#f8fafc}body{margin:0;min-height:100vh;background-color:#0f172a}.disabled\:opacity-50:disabled{opacity:.5}@media(min-width:1024px){.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}} diff --git a/server/public/assets/index-JJWJQzRI.css b/server/public/assets/index-JJWJQzRI.css new file mode 100644 index 00000000..da9f2eb4 --- /dev/null +++ b/server/public/assets/index-JJWJQzRI.css @@ -0,0 +1 @@ +*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.col-span-full{grid-column:1 / -1}.mx-auto{margin-left:auto;margin-right:auto}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.flex{display:flex}.grid{display:grid}.aspect-video{aspect-ratio:16 / 9}.h-60{height:15rem}.h-64{height:16rem}.max-h-64{max-height:16rem}.min-h-screen{min-height:100vh}.w-full{width:100%}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.overflow-y-auto{overflow-y:auto}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-slate-700{--tw-border-opacity: 1;border-color:rgb(51 65 85 / var(--tw-border-opacity))}.border-slate-800{--tw-border-opacity: 1;border-color:rgb(30 41 59 / var(--tw-border-opacity))}.border-slate-800\/80{border-color:#1e293bcc}.bg-black\/60{background-color:#0009}.bg-blue-600{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity))}.bg-blue-600\/40{background-color:#2563eb66}.bg-emerald-500\/20{background-color:#10b98133}.bg-emerald-600{--tw-bg-opacity: 1;background-color:rgb(5 150 105 / var(--tw-bg-opacity))}.bg-red-500\/20{background-color:#ef444433}.bg-red-600{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity))}.bg-slate-700{--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity))}.bg-slate-800{--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity))}.bg-slate-800\/80{background-color:#1e293bcc}.bg-slate-900\/60{background-color:#0f172a99}.bg-slate-900\/70{background-color:#0f172ab3}.bg-slate-950{--tw-bg-opacity: 1;background-color:rgb(2 6 23 / var(--tw-bg-opacity))}.bg-slate-950\/40{background-color:#02061766}.bg-slate-950\/50{background-color:#02061780}.bg-slate-950\/60{background-color:#02061799}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.tracking-\[0\.2em\]{letter-spacing:.2em}.tracking-\[0\.3em\]{letter-spacing:.3em}.text-blue-100{--tw-text-opacity: 1;color:rgb(219 234 254 / var(--tw-text-opacity))}.text-cyan-300{--tw-text-opacity: 1;color:rgb(103 232 249 / var(--tw-text-opacity))}.text-emerald-200{--tw-text-opacity: 1;color:rgb(167 243 208 / var(--tw-text-opacity))}.text-emerald-300{--tw-text-opacity: 1;color:rgb(110 231 183 / var(--tw-text-opacity))}.text-pink-300{--tw-text-opacity: 1;color:rgb(249 168 212 / var(--tw-text-opacity))}.text-red-200{--tw-text-opacity: 1;color:rgb(254 202 202 / var(--tw-text-opacity))}.text-slate-200{--tw-text-opacity: 1;color:rgb(226 232 240 / var(--tw-text-opacity))}.text-slate-300{--tw-text-opacity: 1;color:rgb(203 213 225 / var(--tw-text-opacity))}.text-slate-400{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity))}.text-slate-50{--tw-text-opacity: 1;color:rgb(248 250 252 / var(--tw-text-opacity))}.text-slate-500{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity))}.text-teal-200{--tw-text-opacity: 1;color:rgb(153 246 228 / var(--tw-text-opacity))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#0f172a;background-color:#f8fafc}body{margin:0;min-height:100vh;background-color:#0f172a}.disabled\:opacity-50:disabled{opacity:.5}@media(min-width:1024px){.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}} diff --git a/server/public/assets/index-OlyDvT3F.js b/server/public/assets/index-OlyDvT3F.js deleted file mode 100644 index 96e2ab93..00000000 --- a/server/public/assets/index-OlyDvT3F.js +++ /dev/null @@ -1,9 +0,0 @@ -(function(){const i=document.createElement("link").relList;if(i&&i.supports&&i.supports("modulepreload"))return;for(const m of document.querySelectorAll('link[rel="modulepreload"]'))s(m);new MutationObserver(m=>{for(const E of m)if(E.type==="childList")for(const R of E.addedNodes)R.tagName==="LINK"&&R.rel==="modulepreload"&&s(R)}).observe(document,{childList:!0,subtree:!0});function f(m){const E={};return m.integrity&&(E.integrity=m.integrity),m.referrerPolicy&&(E.referrerPolicy=m.referrerPolicy),m.crossOrigin==="use-credentials"?E.credentials="include":m.crossOrigin==="anonymous"?E.credentials="omit":E.credentials="same-origin",E}function s(m){if(m.ep)return;m.ep=!0;const E=f(m);fetch(m.href,E)}})();var Af={exports:{}},Ra={};var kh;function km(){if(kh)return Ra;kh=1;var o=Symbol.for("react.transitional.element"),i=Symbol.for("react.fragment");function f(s,m,E){var R=null;if(E!==void 0&&(R=""+E),m.key!==void 0&&(R=""+m.key),"key"in m){E={};for(var B in m)B!=="key"&&(E[B]=m[B])}else E=m;return m=E.ref,{$$typeof:o,type:s,key:R,ref:m!==void 0?m:null,props:E}}return Ra.Fragment=i,Ra.jsx=f,Ra.jsxs=f,Ra}var Wh;function Wm(){return Wh||(Wh=1,Af.exports=km()),Af.exports}var Y=Wm(),zf={exports:{}},G={};var $h;function $m(){if($h)return G;$h=1;var o=Symbol.for("react.transitional.element"),i=Symbol.for("react.portal"),f=Symbol.for("react.fragment"),s=Symbol.for("react.strict_mode"),m=Symbol.for("react.profiler"),E=Symbol.for("react.consumer"),R=Symbol.for("react.context"),B=Symbol.for("react.forward_ref"),M=Symbol.for("react.suspense"),A=Symbol.for("react.memo"),Q=Symbol.for("react.lazy"),x=Symbol.for("react.activity"),K=Symbol.iterator;function Yt(y){return y===null||typeof y!="object"?null:(y=K&&y[K]||y["@@iterator"],typeof y=="function"?y:null)}var _t={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},Ut=Object.assign,qe={};function It(y,N,U){this.props=y,this.context=N,this.refs=qe,this.updater=U||_t}It.prototype.isReactComponent={},It.prototype.setState=function(y,N){if(typeof y!="object"&&typeof y!="function"&&y!=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,y,N,"setState")},It.prototype.forceUpdate=function(y){this.updater.enqueueForceUpdate(this,y,"forceUpdate")};function el(){}el.prototype=It.prototype;function jt(y,N,U){this.props=y,this.context=N,this.refs=qe,this.updater=U||_t}var se=jt.prototype=new el;se.constructor=jt,Ut(se,It.prototype),se.isPureReactComponent=!0;var Oe=Array.isArray;function Gt(){}var I={H:null,A:null,T:null,S:null},Vt=Object.prototype.hasOwnProperty;function Ne(y,N,U){var q=U.ref;return{$$typeof:o,type:y,key:N,ref:q!==void 0?q:null,props:U}}function kl(y,N){return Ne(y.type,N,y.props)}function Me(y){return typeof y=="object"&&y!==null&&y.$$typeof===o}function Zt(y){var N={"=":"=0",":":"=2"};return"$"+y.replace(/[=:]/g,function(U){return N[U]})}var Ml=/\/+/g;function He(y,N){return typeof y=="object"&&y!==null&&y.key!=null?Zt(""+y.key):N.toString(36)}function _e(y){switch(y.status){case"fulfilled":return y.value;case"rejected":throw y.reason;default:switch(typeof y.status=="string"?y.then(Gt,Gt):(y.status="pending",y.then(function(N){y.status==="pending"&&(y.status="fulfilled",y.value=N)},function(N){y.status==="pending"&&(y.status="rejected",y.reason=N)})),y.status){case"fulfilled":return y.value;case"rejected":throw y.reason}}throw y}function T(y,N,U,q,V){var J=typeof y;(J==="undefined"||J==="boolean")&&(y=null);var at=!1;if(y===null)at=!0;else switch(J){case"bigint":case"string":case"number":at=!0;break;case"object":switch(y.$$typeof){case o:case i:at=!0;break;case Q:return at=y._init,T(at(y._payload),N,U,q,V)}}if(at)return V=V(y),at=q===""?"."+He(y,0):q,Oe(V)?(U="",at!=null&&(U=at.replace(Ml,"$&/")+"/"),T(V,N,U,"",function(Hn){return Hn})):V!=null&&(Me(V)&&(V=kl(V,U+(V.key==null||y&&y.key===V.key?"":(""+V.key).replace(Ml,"$&/")+"/")+at)),N.push(V)),1;at=0;var Xt=q===""?".":q+":";if(Oe(y))for(var pt=0;pt>>1,rt=T[ct];if(0>>1;ctm(U,X))qm(V,U)?(T[ct]=V,T[q]=X,ct=q):(T[ct]=U,T[N]=X,ct=N);else if(qm(V,X))T[ct]=V,T[q]=X,ct=q;else break t}}return D}function m(T,D){var X=T.sortIndex-D.sortIndex;return X!==0?X:T.id-D.id}if(o.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var E=performance;o.unstable_now=function(){return E.now()}}else{var R=Date,B=R.now();o.unstable_now=function(){return R.now()-B}}var M=[],A=[],Q=1,x=null,K=3,Yt=!1,_t=!1,Ut=!1,qe=!1,It=typeof setTimeout=="function"?setTimeout:null,el=typeof clearTimeout=="function"?clearTimeout:null,jt=typeof setImmediate<"u"?setImmediate:null;function se(T){for(var D=f(A);D!==null;){if(D.callback===null)s(A);else if(D.startTime<=T)s(A),D.sortIndex=D.expirationTime,i(M,D);else break;D=f(A)}}function Oe(T){if(Ut=!1,se(T),!_t)if(f(M)!==null)_t=!0,Gt||(Gt=!0,Zt());else{var D=f(A);D!==null&&_e(Oe,D.startTime-T)}}var Gt=!1,I=-1,Vt=5,Ne=-1;function kl(){return qe?!0:!(o.unstable_now()-NeT&&kl());){var ct=x.callback;if(typeof ct=="function"){x.callback=null,K=x.priorityLevel;var rt=ct(x.expirationTime<=T);if(T=o.unstable_now(),typeof rt=="function"){x.callback=rt,se(T),D=!0;break e}x===f(M)&&s(M),se(T)}else s(M);x=f(M)}if(x!==null)D=!0;else{var y=f(A);y!==null&&_e(Oe,y.startTime-T),D=!1}}break t}finally{x=null,K=X,Yt=!1}D=void 0}}finally{D?Zt():Gt=!1}}}var Zt;if(typeof jt=="function")Zt=function(){jt(Me)};else if(typeof MessageChannel<"u"){var Ml=new MessageChannel,He=Ml.port2;Ml.port1.onmessage=Me,Zt=function(){He.postMessage(null)}}else Zt=function(){It(Me,0)};function _e(T,D){I=It(function(){T(o.unstable_now())},D)}o.unstable_IdlePriority=5,o.unstable_ImmediatePriority=1,o.unstable_LowPriority=4,o.unstable_NormalPriority=3,o.unstable_Profiling=null,o.unstable_UserBlockingPriority=2,o.unstable_cancelCallback=function(T){T.callback=null},o.unstable_forceFrameRate=function(T){0>T||125ct?(T.sortIndex=X,i(A,T),f(M)===null&&T===f(A)&&(Ut?(el(I),I=-1):Ut=!0,_e(Oe,X-ct))):(T.sortIndex=rt,i(M,T),_t||Yt||(_t=!0,Gt||(Gt=!0,Zt()))),T},o.unstable_shouldYield=kl,o.unstable_wrapCallback=function(T){var D=K;return function(){var X=K;K=D;try{return T.apply(this,arguments)}finally{K=X}}}})(Mf)),Mf}var Ph;function Im(){return Ph||(Ph=1,Nf.exports=Fm()),Nf.exports}var Rf={exports:{}},Lt={};var td;function Pm(){if(td)return Lt;td=1;var o=Lf();function i(M){var A="https://react.dev/errors/"+M;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(o)}catch(i){console.error(i)}}return o(),Rf.exports=Pm(),Rf.exports}var ld;function e0(){if(ld)return Da;ld=1;var o=Im(),i=Lf(),f=t0();function s(t){var e="https://react.dev/errors/"+t;if(1rt||(t.current=ct[rt],ct[rt]=null,rt--)}function U(t,e){rt++,ct[rt]=t.current,t.current=e}var q=y(null),V=y(null),J=y(null),at=y(null);function Xt(t,e){switch(U(J,e),U(V,t),U(q,null),e.nodeType){case 9:case 11:t=(t=e.documentElement)&&(t=t.namespaceURI)?gh(t):0;break;default:if(t=e.tagName,e=e.namespaceURI)e=gh(e),t=ph(e,t);else switch(t){case"svg":t=1;break;case"math":t=2;break;default:t=0}}N(q),U(q,t)}function pt(){N(q),N(V),N(J)}function Hn(t){t.memoizedState!==null&&U(at,t);var e=q.current,l=ph(e,t.type);e!==l&&(U(V,t),U(q,l))}function Ca(t){V.current===t&&(N(q),N(V)),at.current===t&&(N(at),za._currentValue=X)}var ui,Kf;function Rl(t){if(ui===void 0)try{throw Error()}catch(l){var e=l.stack.trim().match(/\n( *(at )?)/);ui=e&&e[1]||"",Kf=-1)":-1a||h[n]!==p[a]){var _=` -`+h[n].replace(" at new "," at ");return t.displayName&&_.includes("")&&(_=_.replace("",t.displayName)),_}while(1<=n&&0<=a);break}}}finally{ii=!1,Error.prepareStackTrace=l}return(l=t?t.displayName||t.name:"")?Rl(l):""}function zd(t,e){switch(t.tag){case 26:case 27:case 5:return Rl(t.type);case 16:return Rl("Lazy");case 13:return t.child!==e&&e!==null?Rl("Suspense Fallback"):Rl("Suspense");case 19:return Rl("SuspenseList");case 0:case 15:return ci(t.type,!1);case 11:return ci(t.type.render,!1);case 1:return ci(t.type,!0);case 31:return Rl("Activity");default:return""}}function Jf(t){try{var e="",l=null;do e+=zd(t,l),l=t,t=t.return;while(t);return e}catch(n){return` -Error generating stack: `+n.message+` -`+n.stack}}var fi=Object.prototype.hasOwnProperty,si=o.unstable_scheduleCallback,oi=o.unstable_cancelCallback,Od=o.unstable_shouldYield,Nd=o.unstable_requestPaint,Pt=o.unstable_now,Md=o.unstable_getCurrentPriorityLevel,kf=o.unstable_ImmediatePriority,Wf=o.unstable_UserBlockingPriority,Ba=o.unstable_NormalPriority,Rd=o.unstable_LowPriority,$f=o.unstable_IdlePriority,Dd=o.log,Ud=o.unstable_setDisableYieldValue,Yn=null,te=null;function ll(t){if(typeof Dd=="function"&&Ud(t),te&&typeof te.setStrictMode=="function")try{te.setStrictMode(Yn,t)}catch{}}var ee=Math.clz32?Math.clz32:Bd,xd=Math.log,Cd=Math.LN2;function Bd(t){return t>>>=0,t===0?32:31-(xd(t)/Cd|0)|0}var qa=256,Ha=262144,Ya=4194304;function Dl(t){var e=t&42;if(e!==0)return e;switch(t&-t){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return t&261888;case 262144:case 524288:case 1048576:case 2097152:return t&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return t&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return t}}function ja(t,e,l){var n=t.pendingLanes;if(n===0)return 0;var a=0,u=t.suspendedLanes,c=t.pingedLanes;t=t.warmLanes;var r=n&134217727;return r!==0?(n=r&~u,n!==0?a=Dl(n):(c&=r,c!==0?a=Dl(c):l||(l=r&~t,l!==0&&(a=Dl(l))))):(r=n&~u,r!==0?a=Dl(r):c!==0?a=Dl(c):l||(l=n&~t,l!==0&&(a=Dl(l)))),a===0?0:e!==0&&e!==a&&(e&u)===0&&(u=a&-a,l=e&-e,u>=l||u===32&&(l&4194048)!==0)?e:a}function jn(t,e){return(t.pendingLanes&~(t.suspendedLanes&~t.pingedLanes)&e)===0}function qd(t,e){switch(t){case 1:case 2:case 4:case 8:case 64:return e+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 e+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 Ff(){var t=Ya;return Ya<<=1,(Ya&62914560)===0&&(Ya=4194304),t}function ri(t){for(var e=[],l=0;31>l;l++)e.push(t);return e}function Ln(t,e){t.pendingLanes|=e,e!==268435456&&(t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0)}function Hd(t,e,l,n,a,u){var c=t.pendingLanes;t.pendingLanes=l,t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0,t.expiredLanes&=l,t.entangledLanes&=l,t.errorRecoveryDisabledLanes&=l,t.shellSuspendCounter=0;var r=t.entanglements,h=t.expirationTimes,p=t.hiddenUpdates;for(l=c&~l;0"u")return null;try{return t.activeElement||t.body}catch{return t.body}}var Gd=/[\n"\\]/g;function re(t){return t.replace(Gd,function(e){return"\\"+e.charCodeAt(0).toString(16)+" "})}function gi(t,e,l,n,a,u,c,r){t.name="",c!=null&&typeof c!="function"&&typeof c!="symbol"&&typeof c!="boolean"?t.type=c:t.removeAttribute("type"),e!=null?c==="number"?(e===0&&t.value===""||t.value!=e)&&(t.value=""+oe(e)):t.value!==""+oe(e)&&(t.value=""+oe(e)):c!=="submit"&&c!=="reset"||t.removeAttribute("value"),e!=null?pi(t,c,oe(e)):l!=null?pi(t,c,oe(l)):n!=null&&t.removeAttribute("value"),a==null&&u!=null&&(t.defaultChecked=!!u),a!=null&&(t.checked=a&&typeof a!="function"&&typeof a!="symbol"),r!=null&&typeof r!="function"&&typeof r!="symbol"&&typeof r!="boolean"?t.name=""+oe(r):t.removeAttribute("name")}function os(t,e,l,n,a,u,c,r){if(u!=null&&typeof u!="function"&&typeof u!="symbol"&&typeof u!="boolean"&&(t.type=u),e!=null||l!=null){if(!(u!=="submit"&&u!=="reset"||e!=null)){vi(t);return}l=l!=null?""+oe(l):"",e=e!=null?""+oe(e):l,r||e===t.value||(t.value=e),t.defaultValue=e}n=n??a,n=typeof n!="function"&&typeof n!="symbol"&&!!n,t.checked=r?t.checked:!!n,t.defaultChecked=!!n,c!=null&&typeof c!="function"&&typeof c!="symbol"&&typeof c!="boolean"&&(t.name=c),vi(t)}function pi(t,e,l){e==="number"&&Qa(t.ownerDocument)===t||t.defaultValue===""+l||(t.defaultValue=""+l)}function tn(t,e,l,n){if(t=t.options,e){e={};for(var a=0;a"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Ti=!1;if(Le)try{var Vn={};Object.defineProperty(Vn,"passive",{get:function(){Ti=!0}}),window.addEventListener("test",Vn,Vn),window.removeEventListener("test",Vn,Vn)}catch{Ti=!1}var al=null,Ai=null,Va=null;function gs(){if(Va)return Va;var t,e=Ai,l=e.length,n,a="value"in al?al.value:al.textContent,u=a.length;for(t=0;t=Kn),Ts=" ",As=!1;function zs(t,e){switch(t){case"keyup":return vy.indexOf(e.keyCode)!==-1;case"keydown":return e.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Os(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var an=!1;function py(t,e){switch(t){case"compositionend":return Os(e);case"keypress":return e.which!==32?null:(As=!0,Ts);case"textInput":return t=e.data,t===Ts&&As?null:t;default:return null}}function by(t,e){if(an)return t==="compositionend"||!Ri&&zs(t,e)?(t=gs(),Va=Ai=al=null,an=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(e.ctrlKey||e.altKey||e.metaKey)||e.ctrlKey&&e.altKey){if(e.char&&1=e)return{node:l,offset:e-t};t=n}t:{for(;l;){if(l.nextSibling){l=l.nextSibling;break t}l=l.parentNode}l=void 0}l=Bs(l)}}function Hs(t,e){return t&&e?t===e?!0:t&&t.nodeType===3?!1:e&&e.nodeType===3?Hs(t,e.parentNode):"contains"in t?t.contains(e):t.compareDocumentPosition?!!(t.compareDocumentPosition(e)&16):!1:!1}function Ys(t){t=t!=null&&t.ownerDocument!=null&&t.ownerDocument.defaultView!=null?t.ownerDocument.defaultView:window;for(var e=Qa(t.document);e instanceof t.HTMLIFrameElement;){try{var l=typeof e.contentWindow.location.href=="string"}catch{l=!1}if(l)t=e.contentWindow;else break;e=Qa(t.document)}return e}function xi(t){var e=t&&t.nodeName&&t.nodeName.toLowerCase();return e&&(e==="input"&&(t.type==="text"||t.type==="search"||t.type==="tel"||t.type==="url"||t.type==="password")||e==="textarea"||t.contentEditable==="true")}var Ny=Le&&"documentMode"in document&&11>=document.documentMode,un=null,Ci=null,$n=null,Bi=!1;function js(t,e,l){var n=l.window===l?l.document:l.nodeType===9?l:l.ownerDocument;Bi||un==null||un!==Qa(n)||(n=un,"selectionStart"in n&&xi(n)?n={start:n.selectionStart,end:n.selectionEnd}:(n=(n.ownerDocument&&n.ownerDocument.defaultView||window).getSelection(),n={anchorNode:n.anchorNode,anchorOffset:n.anchorOffset,focusNode:n.focusNode,focusOffset:n.focusOffset}),$n&&Wn($n,n)||($n=n,n=Hu(Ci,"onSelect"),0>=c,a-=c,Re=1<<32-ee(e)+a|l<w?(F=H,H=null):F=H.sibling;var lt=b(v,H,g[w],z);if(lt===null){H===null&&(H=F);break}t&&H&<.alternate===null&&e(v,H),d=u(lt,d,w),et===null?j=lt:et.sibling=lt,et=lt,H=F}if(w===g.length)return l(v,H),P&&Qe(v,w),j;if(H===null){for(;ww?(F=H,H=null):F=H.sibling;var Ol=b(v,H,lt.value,z);if(Ol===null){H===null&&(H=F);break}t&&H&&Ol.alternate===null&&e(v,H),d=u(Ol,d,w),et===null?j=Ol:et.sibling=Ol,et=Ol,H=F}if(lt.done)return l(v,H),P&&Qe(v,w),j;if(H===null){for(;!lt.done;w++,lt=g.next())lt=O(v,lt.value,z),lt!==null&&(d=u(lt,d,w),et===null?j=lt:et.sibling=lt,et=lt);return P&&Qe(v,w),j}for(H=n(H);!lt.done;w++,lt=g.next())lt=S(H,v,w,lt.value,z),lt!==null&&(t&<.alternate!==null&&H.delete(lt.key===null?w:lt.key),d=u(lt,d,w),et===null?j=lt:et.sibling=lt,et=lt);return t&&H.forEach(function(Jm){return e(v,Jm)}),P&&Qe(v,w),j}function ot(v,d,g,z){if(typeof g=="object"&&g!==null&&g.type===Ut&&g.key===null&&(g=g.props.children),typeof g=="object"&&g!==null){switch(g.$$typeof){case Yt:t:{for(var j=g.key;d!==null;){if(d.key===j){if(j=g.type,j===Ut){if(d.tag===7){l(v,d.sibling),z=a(d,g.props.children),z.return=v,v=z;break t}}else if(d.elementType===j||typeof j=="object"&&j!==null&&j.$$typeof===Vt&&Ql(j)===d.type){l(v,d.sibling),z=a(d,g.props),la(z,g),z.return=v,v=z;break t}l(v,d);break}else e(v,d);d=d.sibling}g.type===Ut?(z=Hl(g.props.children,v.mode,z,g.key),z.return=v,v=z):(z=Pa(g.type,g.key,g.props,null,v.mode,z),la(z,g),z.return=v,v=z)}return c(v);case _t:t:{for(j=g.key;d!==null;){if(d.key===j)if(d.tag===4&&d.stateNode.containerInfo===g.containerInfo&&d.stateNode.implementation===g.implementation){l(v,d.sibling),z=a(d,g.children||[]),z.return=v,v=z;break t}else{l(v,d);break}else e(v,d);d=d.sibling}z=Qi(g,v.mode,z),z.return=v,v=z}return c(v);case Vt:return g=Ql(g),ot(v,d,g,z)}if(_e(g))return C(v,d,g,z);if(Zt(g)){if(j=Zt(g),typeof j!="function")throw Error(s(150));return g=j.call(g),L(v,d,g,z)}if(typeof g.then=="function")return ot(v,d,iu(g),z);if(g.$$typeof===jt)return ot(v,d,lu(v,g),z);cu(v,g)}return typeof g=="string"&&g!==""||typeof g=="number"||typeof g=="bigint"?(g=""+g,d!==null&&d.tag===6?(l(v,d.sibling),z=a(d,g),z.return=v,v=z):(l(v,d),z=Xi(g,v.mode,z),z.return=v,v=z),c(v)):l(v,d)}return function(v,d,g,z){try{ea=0;var j=ot(v,d,g,z);return gn=null,j}catch(H){if(H===vn||H===au)throw H;var et=ne(29,H,null,v.mode);return et.lanes=z,et.return=v,et}finally{}}}var Vl=co(!0),fo=co(!1),sl=!1;function Pi(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function tc(t,e){t=t.updateQueue,e.updateQueue===t&&(e.updateQueue={baseState:t.baseState,firstBaseUpdate:t.firstBaseUpdate,lastBaseUpdate:t.lastBaseUpdate,shared:t.shared,callbacks:null})}function ol(t){return{lane:t,tag:0,payload:null,callback:null,next:null}}function rl(t,e,l){var n=t.updateQueue;if(n===null)return null;if(n=n.shared,(nt&2)!==0){var a=n.pending;return a===null?e.next=e:(e.next=a.next,a.next=e),n.pending=e,e=Ia(t),ws(t,null,l),e}return Fa(t,n,e,l),Ia(t)}function na(t,e,l){if(e=e.updateQueue,e!==null&&(e=e.shared,(l&4194048)!==0)){var n=e.lanes;n&=t.pendingLanes,l|=n,e.lanes=l,Pf(t,l)}}function ec(t,e){var l=t.updateQueue,n=t.alternate;if(n!==null&&(n=n.updateQueue,l===n)){var a=null,u=null;if(l=l.firstBaseUpdate,l!==null){do{var c={lane:l.lane,tag:l.tag,payload:l.payload,callback:null,next:null};u===null?a=u=c:u=u.next=c,l=l.next}while(l!==null);u===null?a=u=e:u=u.next=e}else a=u=e;l={baseState:n.baseState,firstBaseUpdate:a,lastBaseUpdate:u,shared:n.shared,callbacks:n.callbacks},t.updateQueue=l;return}t=l.lastBaseUpdate,t===null?l.firstBaseUpdate=e:t.next=e,l.lastBaseUpdate=e}var lc=!1;function aa(){if(lc){var t=mn;if(t!==null)throw t}}function ua(t,e,l,n){lc=!1;var a=t.updateQueue;sl=!1;var u=a.firstBaseUpdate,c=a.lastBaseUpdate,r=a.shared.pending;if(r!==null){a.shared.pending=null;var h=r,p=h.next;h.next=null,c===null?u=p:c.next=p,c=h;var _=t.alternate;_!==null&&(_=_.updateQueue,r=_.lastBaseUpdate,r!==c&&(r===null?_.firstBaseUpdate=p:r.next=p,_.lastBaseUpdate=h))}if(u!==null){var O=a.baseState;c=0,_=p=h=null,r=u;do{var b=r.lane&-536870913,S=b!==r.lane;if(S?($&b)===b:(n&b)===b){b!==0&&b===yn&&(lc=!0),_!==null&&(_=_.next={lane:0,tag:r.tag,payload:r.payload,callback:null,next:null});t:{var C=t,L=r;b=e;var ot=l;switch(L.tag){case 1:if(C=L.payload,typeof C=="function"){O=C.call(ot,O,b);break t}O=C;break t;case 3:C.flags=C.flags&-65537|128;case 0:if(C=L.payload,b=typeof C=="function"?C.call(ot,O,b):C,b==null)break t;O=x({},O,b);break t;case 2:sl=!0}}b=r.callback,b!==null&&(t.flags|=64,S&&(t.flags|=8192),S=a.callbacks,S===null?a.callbacks=[b]:S.push(b))}else S={lane:b,tag:r.tag,payload:r.payload,callback:r.callback,next:null},_===null?(p=_=S,h=O):_=_.next=S,c|=b;if(r=r.next,r===null){if(r=a.shared.pending,r===null)break;S=r,r=S.next,S.next=null,a.lastBaseUpdate=S,a.shared.pending=null}}while(!0);_===null&&(h=O),a.baseState=h,a.firstBaseUpdate=p,a.lastBaseUpdate=_,u===null&&(a.shared.lanes=0),vl|=c,t.lanes=c,t.memoizedState=O}}function so(t,e){if(typeof t!="function")throw Error(s(191,t));t.call(e)}function oo(t,e){var l=t.callbacks;if(l!==null)for(t.callbacks=null,t=0;tu?u:8;var c=T.T,r={};T.T=r,_c(t,!1,e,l);try{var h=a(),p=T.S;if(p!==null&&p(r,h),h!==null&&typeof h=="object"&&typeof h.then=="function"){var _=Hy(h,n);fa(t,e,_,fe(t))}else fa(t,e,n,fe(t))}catch(O){fa(t,e,{then:function(){},status:"rejected",reason:O},fe())}finally{D.p=u,c!==null&&r.types!==null&&(c.types=r.types),T.T=c}}function Gy(){}function bc(t,e,l,n){if(t.tag!==5)throw Error(s(476));var a=Vo(t).queue;Go(t,a,e,X,l===null?Gy:function(){return Zo(t),l(n)})}function Vo(t){var e=t.memoizedState;if(e!==null)return e;e={memoizedState:X,baseState:X,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:we,lastRenderedState:X},next:null};var l={};return e.next={memoizedState:l,baseState:l,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:we,lastRenderedState:l},next:null},t.memoizedState=e,t=t.alternate,t!==null&&(t.memoizedState=e),e}function Zo(t){var e=Vo(t);e.next===null&&(e=t.alternate.memoizedState),fa(t,e.next.queue,{},fe())}function Sc(){return Bt(za)}function wo(){return St().memoizedState}function Ko(){return St().memoizedState}function Vy(t){for(var e=t.return;e!==null;){switch(e.tag){case 24:case 3:var l=fe();t=ol(l);var n=rl(e,t,l);n!==null&&(Ft(n,e,l),na(n,e,l)),e={cache:Wi()},t.payload=e;return}e=e.return}}function Zy(t,e,l){var n=fe();l={lane:n,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},gu(t)?ko(e,l):(l=ji(t,e,l,n),l!==null&&(Ft(l,t,n),Wo(l,e,n)))}function Jo(t,e,l){var n=fe();fa(t,e,l,n)}function fa(t,e,l,n){var a={lane:n,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null};if(gu(t))ko(e,a);else{var u=t.alternate;if(t.lanes===0&&(u===null||u.lanes===0)&&(u=e.lastRenderedReducer,u!==null))try{var c=e.lastRenderedState,r=u(c,l);if(a.hasEagerState=!0,a.eagerState=r,le(r,c))return Fa(t,e,a,0),ht===null&&$a(),!1}catch{}finally{}if(l=ji(t,e,a,n),l!==null)return Ft(l,t,n),Wo(l,e,n),!0}return!1}function _c(t,e,l,n){if(n={lane:2,revertLane:Pc(),gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},gu(t)){if(e)throw Error(s(479))}else e=ji(t,l,n,2),e!==null&&Ft(e,t,2)}function gu(t){var e=t.alternate;return t===Z||e!==null&&e===Z}function ko(t,e){bn=ou=!0;var l=t.pending;l===null?e.next=e:(e.next=l.next,l.next=e),t.pending=e}function Wo(t,e,l){if((l&4194048)!==0){var n=e.lanes;n&=t.pendingLanes,l|=n,e.lanes=l,Pf(t,l)}}var sa={readContext:Bt,use:du,useCallback:vt,useContext:vt,useEffect:vt,useImperativeHandle:vt,useLayoutEffect:vt,useInsertionEffect:vt,useMemo:vt,useReducer:vt,useRef:vt,useState:vt,useDebugValue:vt,useDeferredValue:vt,useTransition:vt,useSyncExternalStore:vt,useId:vt,useHostTransitionStatus:vt,useFormState:vt,useActionState:vt,useOptimistic:vt,useMemoCache:vt,useCacheRefresh:vt};sa.useEffectEvent=vt;var $o={readContext:Bt,use:du,useCallback:function(t,e){return Qt().memoizedState=[t,e===void 0?null:e],t},useContext:Bt,useEffect:Co,useImperativeHandle:function(t,e,l){l=l!=null?l.concat([t]):null,mu(4194308,4,Yo.bind(null,e,t),l)},useLayoutEffect:function(t,e){return mu(4194308,4,t,e)},useInsertionEffect:function(t,e){mu(4,2,t,e)},useMemo:function(t,e){var l=Qt();e=e===void 0?null:e;var n=t();if(Zl){ll(!0);try{t()}finally{ll(!1)}}return l.memoizedState=[n,e],n},useReducer:function(t,e,l){var n=Qt();if(l!==void 0){var a=l(e);if(Zl){ll(!0);try{l(e)}finally{ll(!1)}}}else a=e;return n.memoizedState=n.baseState=a,t={pending:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:a},n.queue=t,t=t.dispatch=Zy.bind(null,Z,t),[n.memoizedState,t]},useRef:function(t){var e=Qt();return t={current:t},e.memoizedState=t},useState:function(t){t=yc(t);var e=t.queue,l=Jo.bind(null,Z,e);return e.dispatch=l,[t.memoizedState,l]},useDebugValue:gc,useDeferredValue:function(t,e){var l=Qt();return pc(l,t,e)},useTransition:function(){var t=yc(!1);return t=Go.bind(null,Z,t.queue,!0,!1),Qt().memoizedState=t,[!1,t]},useSyncExternalStore:function(t,e,l){var n=Z,a=Qt();if(P){if(l===void 0)throw Error(s(407));l=l()}else{if(l=e(),ht===null)throw Error(s(349));($&127)!==0||go(n,e,l)}a.memoizedState=l;var u={value:l,getSnapshot:e};return a.queue=u,Co(bo.bind(null,n,u,t),[t]),n.flags|=2048,_n(9,{destroy:void 0},po.bind(null,n,u,l,e),null),l},useId:function(){var t=Qt(),e=ht.identifierPrefix;if(P){var l=De,n=Re;l=(n&~(1<<32-ee(n)-1)).toString(32)+l,e="_"+e+"R_"+l,l=ru++,0<\/script>",u=u.removeChild(u.firstChild);break;case"select":u=typeof n.is=="string"?c.createElement("select",{is:n.is}):c.createElement("select"),n.multiple?u.multiple=!0:n.size&&(u.size=n.size);break;default:u=typeof n.is=="string"?c.createElement(a,{is:n.is}):c.createElement(a)}}u[xt]=e,u[wt]=n;t:for(c=e.child;c!==null;){if(c.tag===5||c.tag===6)u.appendChild(c.stateNode);else if(c.tag!==4&&c.tag!==27&&c.child!==null){c.child.return=c,c=c.child;continue}if(c===e)break t;for(;c.sibling===null;){if(c.return===null||c.return===e)break t;c=c.return}c.sibling.return=c.return,c=c.sibling}e.stateNode=u;t:switch(Ht(u,a,n),a){case"button":case"input":case"select":case"textarea":n=!!n.autoFocus;break t;case"img":n=!0;break t;default:n=!1}n&&Je(e)}}return yt(e),qc(e,e.type,t===null?null:t.memoizedProps,e.pendingProps,l),null;case 6:if(t&&e.stateNode!=null)t.memoizedProps!==n&&Je(e);else{if(typeof n!="string"&&e.stateNode===null)throw Error(s(166));if(t=J.current,hn(e)){if(t=e.stateNode,l=e.memoizedProps,n=null,a=Ct,a!==null)switch(a.tag){case 27:case 5:n=a.memoizedProps}t[xt]=e,t=!!(t.nodeValue===l||n!==null&&n.suppressHydrationWarning===!0||mh(t.nodeValue,l)),t||cl(e,!0)}else t=Yu(t).createTextNode(n),t[xt]=e,e.stateNode=t}return yt(e),null;case 31:if(l=e.memoizedState,t===null||t.memoizedState!==null){if(n=hn(e),l!==null){if(t===null){if(!n)throw Error(s(318));if(t=e.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(s(557));t[xt]=e}else Yl(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;yt(e),t=!1}else l=wi(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=l),t=!0;if(!t)return e.flags&256?(ue(e),e):(ue(e),null);if((e.flags&128)!==0)throw Error(s(558))}return yt(e),null;case 13:if(n=e.memoizedState,t===null||t.memoizedState!==null&&t.memoizedState.dehydrated!==null){if(a=hn(e),n!==null&&n.dehydrated!==null){if(t===null){if(!a)throw Error(s(318));if(a=e.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(s(317));a[xt]=e}else Yl(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;yt(e),a=!1}else a=wi(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=a),a=!0;if(!a)return e.flags&256?(ue(e),e):(ue(e),null)}return ue(e),(e.flags&128)!==0?(e.lanes=l,e):(l=n!==null,t=t!==null&&t.memoizedState!==null,l&&(n=e.child,a=null,n.alternate!==null&&n.alternate.memoizedState!==null&&n.alternate.memoizedState.cachePool!==null&&(a=n.alternate.memoizedState.cachePool.pool),u=null,n.memoizedState!==null&&n.memoizedState.cachePool!==null&&(u=n.memoizedState.cachePool.pool),u!==a&&(n.flags|=2048)),l!==t&&l&&(e.child.flags|=8192),Eu(e,e.updateQueue),yt(e),null);case 4:return pt(),t===null&&nf(e.stateNode.containerInfo),yt(e),null;case 10:return Ve(e.type),yt(e),null;case 19:if(N(bt),n=e.memoizedState,n===null)return yt(e),null;if(a=(e.flags&128)!==0,u=n.rendering,u===null)if(a)ra(n,!1);else{if(gt!==0||t!==null&&(t.flags&128)!==0)for(t=e.child;t!==null;){if(u=su(t),u!==null){for(e.flags|=128,ra(n,!1),t=u.updateQueue,e.updateQueue=t,Eu(e,t),e.subtreeFlags=0,t=l,l=e.child;l!==null;)Ks(l,t),l=l.sibling;return U(bt,bt.current&1|2),P&&Qe(e,n.treeForkCount),e.child}t=t.sibling}n.tail!==null&&Pt()>Nu&&(e.flags|=128,a=!0,ra(n,!1),e.lanes=4194304)}else{if(!a)if(t=su(u),t!==null){if(e.flags|=128,a=!0,t=t.updateQueue,e.updateQueue=t,Eu(e,t),ra(n,!0),n.tail===null&&n.tailMode==="hidden"&&!u.alternate&&!P)return yt(e),null}else 2*Pt()-n.renderingStartTime>Nu&&l!==536870912&&(e.flags|=128,a=!0,ra(n,!1),e.lanes=4194304);n.isBackwards?(u.sibling=e.child,e.child=u):(t=n.last,t!==null?t.sibling=u:e.child=u,n.last=u)}return n.tail!==null?(t=n.tail,n.rendering=t,n.tail=t.sibling,n.renderingStartTime=Pt(),t.sibling=null,l=bt.current,U(bt,a?l&1|2:l&1),P&&Qe(e,n.treeForkCount),t):(yt(e),null);case 22:case 23:return ue(e),ac(),n=e.memoizedState!==null,t!==null?t.memoizedState!==null!==n&&(e.flags|=8192):n&&(e.flags|=8192),n?(l&536870912)!==0&&(e.flags&128)===0&&(yt(e),e.subtreeFlags&6&&(e.flags|=8192)):yt(e),l=e.updateQueue,l!==null&&Eu(e,l.retryQueue),l=null,t!==null&&t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(l=t.memoizedState.cachePool.pool),n=null,e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),n!==l&&(e.flags|=2048),t!==null&&N(Xl),null;case 24:return l=null,t!==null&&(l=t.memoizedState.cache),e.memoizedState.cache!==l&&(e.flags|=2048),Ve(Et),yt(e),null;case 25:return null;case 30:return null}throw Error(s(156,e.tag))}function Wy(t,e){switch(Vi(e),e.tag){case 1:return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 3:return Ve(Et),pt(),t=e.flags,(t&65536)!==0&&(t&128)===0?(e.flags=t&-65537|128,e):null;case 26:case 27:case 5:return Ca(e),null;case 31:if(e.memoizedState!==null){if(ue(e),e.alternate===null)throw Error(s(340));Yl()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 13:if(ue(e),t=e.memoizedState,t!==null&&t.dehydrated!==null){if(e.alternate===null)throw Error(s(340));Yl()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 19:return N(bt),null;case 4:return pt(),null;case 10:return Ve(e.type),null;case 22:case 23:return ue(e),ac(),t!==null&&N(Xl),t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 24:return Ve(Et),null;case 25:return null;default:return null}}function Sr(t,e){switch(Vi(e),e.tag){case 3:Ve(Et),pt();break;case 26:case 27:case 5:Ca(e);break;case 4:pt();break;case 31:e.memoizedState!==null&&ue(e);break;case 13:ue(e);break;case 19:N(bt);break;case 10:Ve(e.type);break;case 22:case 23:ue(e),ac(),t!==null&&N(Xl);break;case 24:Ve(Et)}}function ha(t,e){try{var l=e.updateQueue,n=l!==null?l.lastEffect:null;if(n!==null){var a=n.next;l=a;do{if((l.tag&t)===t){n=void 0;var u=l.create,c=l.inst;n=u(),c.destroy=n}l=l.next}while(l!==a)}}catch(r){it(e,e.return,r)}}function yl(t,e,l){try{var n=e.updateQueue,a=n!==null?n.lastEffect:null;if(a!==null){var u=a.next;n=u;do{if((n.tag&t)===t){var c=n.inst,r=c.destroy;if(r!==void 0){c.destroy=void 0,a=e;var h=l,p=r;try{p()}catch(_){it(a,h,_)}}}n=n.next}while(n!==u)}}catch(_){it(e,e.return,_)}}function _r(t){var e=t.updateQueue;if(e!==null){var l=t.stateNode;try{oo(e,l)}catch(n){it(t,t.return,n)}}}function Er(t,e,l){l.props=wl(t.type,t.memoizedProps),l.state=t.memoizedState;try{l.componentWillUnmount()}catch(n){it(t,e,n)}}function da(t,e){try{var l=t.ref;if(l!==null){switch(t.tag){case 26:case 27:case 5:var n=t.stateNode;break;case 30:n=t.stateNode;break;default:n=t.stateNode}typeof l=="function"?t.refCleanup=l(n):l.current=n}}catch(a){it(t,e,a)}}function Ue(t,e){var l=t.ref,n=t.refCleanup;if(l!==null)if(typeof n=="function")try{n()}catch(a){it(t,e,a)}finally{t.refCleanup=null,t=t.alternate,t!=null&&(t.refCleanup=null)}else if(typeof l=="function")try{l(null)}catch(a){it(t,e,a)}else l.current=null}function Tr(t){var e=t.type,l=t.memoizedProps,n=t.stateNode;try{t:switch(e){case"button":case"input":case"select":case"textarea":l.autoFocus&&n.focus();break t;case"img":l.src?n.src=l.src:l.srcSet&&(n.srcset=l.srcSet)}}catch(a){it(t,t.return,a)}}function Hc(t,e,l){try{var n=t.stateNode;gm(n,t.type,l,e),n[wt]=e}catch(a){it(t,t.return,a)}}function Ar(t){return t.tag===5||t.tag===3||t.tag===26||t.tag===27&&_l(t.type)||t.tag===4}function Yc(t){t:for(;;){for(;t.sibling===null;){if(t.return===null||Ar(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.tag===27&&_l(t.type)||t.flags&2||t.child===null||t.tag===4)continue t;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function jc(t,e,l){var n=t.tag;if(n===5||n===6)t=t.stateNode,e?(l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l).insertBefore(t,e):(e=l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l,e.appendChild(t),l=l._reactRootContainer,l!=null||e.onclick!==null||(e.onclick=je));else if(n!==4&&(n===27&&_l(t.type)&&(l=t.stateNode,e=null),t=t.child,t!==null))for(jc(t,e,l),t=t.sibling;t!==null;)jc(t,e,l),t=t.sibling}function Tu(t,e,l){var n=t.tag;if(n===5||n===6)t=t.stateNode,e?l.insertBefore(t,e):l.appendChild(t);else if(n!==4&&(n===27&&_l(t.type)&&(l=t.stateNode),t=t.child,t!==null))for(Tu(t,e,l),t=t.sibling;t!==null;)Tu(t,e,l),t=t.sibling}function zr(t){var e=t.stateNode,l=t.memoizedProps;try{for(var n=t.type,a=e.attributes;a.length;)e.removeAttributeNode(a[0]);Ht(e,n,l),e[xt]=t,e[wt]=l}catch(u){it(t,t.return,u)}}var ke=!1,zt=!1,Lc=!1,Or=typeof WeakSet=="function"?WeakSet:Set,Dt=null;function $y(t,e){if(t=t.containerInfo,cf=Zu,t=Ys(t),xi(t)){if("selectionStart"in t)var l={start:t.selectionStart,end:t.selectionEnd};else t:{l=(l=t.ownerDocument)&&l.defaultView||window;var n=l.getSelection&&l.getSelection();if(n&&n.rangeCount!==0){l=n.anchorNode;var a=n.anchorOffset,u=n.focusNode;n=n.focusOffset;try{l.nodeType,u.nodeType}catch{l=null;break t}var c=0,r=-1,h=-1,p=0,_=0,O=t,b=null;e:for(;;){for(var S;O!==l||a!==0&&O.nodeType!==3||(r=c+a),O!==u||n!==0&&O.nodeType!==3||(h=c+n),O.nodeType===3&&(c+=O.nodeValue.length),(S=O.firstChild)!==null;)b=O,O=S;for(;;){if(O===t)break e;if(b===l&&++p===a&&(r=c),b===u&&++_===n&&(h=c),(S=O.nextSibling)!==null)break;O=b,b=O.parentNode}O=S}l=r===-1||h===-1?null:{start:r,end:h}}else l=null}l=l||{start:0,end:0}}else l=null;for(ff={focusedElem:t,selectionRange:l},Zu=!1,Dt=e;Dt!==null;)if(e=Dt,t=e.child,(e.subtreeFlags&1028)!==0&&t!==null)t.return=e,Dt=t;else for(;Dt!==null;){switch(e=Dt,u=e.alternate,t=e.flags,e.tag){case 0:if((t&4)!==0&&(t=e.updateQueue,t=t!==null?t.events:null,t!==null))for(l=0;l title"))),Ht(u,n,l),u[xt]=t,Rt(u),n=u;break t;case"link":var c=xh("link","href",a).get(n+(l.href||""));if(c){for(var r=0;rot&&(c=ot,ot=L,L=c);var v=qs(r,L),d=qs(r,ot);if(v&&d&&(S.rangeCount!==1||S.anchorNode!==v.node||S.anchorOffset!==v.offset||S.focusNode!==d.node||S.focusOffset!==d.offset)){var g=O.createRange();g.setStart(v.node,v.offset),S.removeAllRanges(),L>ot?(S.addRange(g),S.extend(d.node,d.offset)):(g.setEnd(d.node,d.offset),S.addRange(g))}}}}for(O=[],S=r;S=S.parentNode;)S.nodeType===1&&O.push({element:S,left:S.scrollLeft,top:S.scrollTop});for(typeof r.focus=="function"&&r.focus(),r=0;rl?32:l,T.T=null,l=Kc,Kc=null;var u=pl,c=Pe;if(Nt=0,On=pl=null,Pe=0,(nt&6)!==0)throw Error(s(331));var r=nt;if(nt|=4,Yr(u.current),Br(u,u.current,c,l),nt=r,ba(0,!1),te&&typeof te.onPostCommitFiberRoot=="function")try{te.onPostCommitFiberRoot(Yn,u)}catch{}return!0}finally{D.p=a,T.T=n,eh(t,e)}}function nh(t,e,l){e=de(l,e),e=zc(t.stateNode,e,2),t=rl(t,e,2),t!==null&&(Ln(t,2),xe(t))}function it(t,e,l){if(t.tag===3)nh(t,t,l);else for(;e!==null;){if(e.tag===3){nh(e,t,l);break}else if(e.tag===1){var n=e.stateNode;if(typeof e.type.getDerivedStateFromError=="function"||typeof n.componentDidCatch=="function"&&(gl===null||!gl.has(n))){t=de(l,t),l=ar(2),n=rl(e,l,2),n!==null&&(ur(l,n,e,t),Ln(n,2),xe(n));break}}e=e.return}}function $c(t,e,l){var n=t.pingCache;if(n===null){n=t.pingCache=new Py;var a=new Set;n.set(e,a)}else a=n.get(e),a===void 0&&(a=new Set,n.set(e,a));a.has(l)||(Gc=!0,a.add(l),t=am.bind(null,t,e,l),e.then(t,t))}function am(t,e,l){var n=t.pingCache;n!==null&&n.delete(e),t.pingedLanes|=t.suspendedLanes&l,t.warmLanes&=~l,ht===t&&($&l)===l&&(gt===4||gt===3&&($&62914560)===$&&300>Pt()-Ou?(nt&2)===0&&Nn(t,0):Vc|=l,zn===$&&(zn=0)),xe(t)}function ah(t,e){e===0&&(e=Ff()),t=ql(t,e),t!==null&&(Ln(t,e),xe(t))}function um(t){var e=t.memoizedState,l=0;e!==null&&(l=e.retryLane),ah(t,l)}function im(t,e){var l=0;switch(t.tag){case 31:case 13:var n=t.stateNode,a=t.memoizedState;a!==null&&(l=a.retryLane);break;case 19:n=t.stateNode;break;case 22:n=t.stateNode._retryCache;break;default:throw Error(s(314))}n!==null&&n.delete(e),ah(t,l)}function cm(t,e){return si(t,e)}var Cu=null,Rn=null,Fc=!1,Bu=!1,Ic=!1,Sl=0;function xe(t){t!==Rn&&t.next===null&&(Rn===null?Cu=Rn=t:Rn=Rn.next=t),Bu=!0,Fc||(Fc=!0,sm())}function ba(t,e){if(!Ic&&Bu){Ic=!0;do for(var l=!1,n=Cu;n!==null;){if(t!==0){var a=n.pendingLanes;if(a===0)var u=0;else{var c=n.suspendedLanes,r=n.pingedLanes;u=(1<<31-ee(42|t)+1)-1,u&=a&~(c&~r),u=u&201326741?u&201326741|1:u?u|2:0}u!==0&&(l=!0,fh(n,u))}else u=$,u=ja(n,n===ht?u:0,n.cancelPendingCommit!==null||n.timeoutHandle!==-1),(u&3)===0||jn(n,u)||(l=!0,fh(n,u));n=n.next}while(l);Ic=!1}}function fm(){uh()}function uh(){Bu=Fc=!1;var t=0;Sl!==0&&bm()&&(t=Sl);for(var e=Pt(),l=null,n=Cu;n!==null;){var a=n.next,u=ih(n,e);u===0?(n.next=null,l===null?Cu=a:l.next=a,a===null&&(Rn=l)):(l=n,(t!==0||(u&3)!==0)&&(Bu=!0)),n=a}Nt!==0&&Nt!==5||ba(t),Sl!==0&&(Sl=0)}function ih(t,e){for(var l=t.suspendedLanes,n=t.pingedLanes,a=t.expirationTimes,u=t.pendingLanes&-62914561;0r)break;var _=h.transferSize,O=h.initiatorType;_&&vh(O)&&(h=h.responseEnd,c+=_*(h"u"?null:document;function Mh(t,e,l){var n=Dn;if(n&&typeof e=="string"&&e){var a=re(e);a='link[rel="'+t+'"][href="'+a+'"]',typeof l=="string"&&(a+='[crossorigin="'+l+'"]'),Nh.has(a)||(Nh.add(a),t={rel:t,crossOrigin:l,href:e},n.querySelector(a)===null&&(e=n.createElement("link"),Ht(e,"link",t),Rt(e),n.head.appendChild(e)))}}function Mm(t){tl.D(t),Mh("dns-prefetch",t,null)}function Rm(t,e){tl.C(t,e),Mh("preconnect",t,e)}function Dm(t,e,l){tl.L(t,e,l);var n=Dn;if(n&&t&&e){var a='link[rel="preload"][as="'+re(e)+'"]';e==="image"&&l&&l.imageSrcSet?(a+='[imagesrcset="'+re(l.imageSrcSet)+'"]',typeof l.imageSizes=="string"&&(a+='[imagesizes="'+re(l.imageSizes)+'"]')):a+='[href="'+re(t)+'"]';var u=a;switch(e){case"style":u=Un(t);break;case"script":u=xn(t)}be.has(u)||(t=x({rel:"preload",href:e==="image"&&l&&l.imageSrcSet?void 0:t,as:e},l),be.set(u,t),n.querySelector(a)!==null||e==="style"&&n.querySelector(Ta(u))||e==="script"&&n.querySelector(Aa(u))||(e=n.createElement("link"),Ht(e,"link",t),Rt(e),n.head.appendChild(e)))}}function Um(t,e){tl.m(t,e);var l=Dn;if(l&&t){var n=e&&typeof e.as=="string"?e.as:"script",a='link[rel="modulepreload"][as="'+re(n)+'"][href="'+re(t)+'"]',u=a;switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":u=xn(t)}if(!be.has(u)&&(t=x({rel:"modulepreload",href:t},e),be.set(u,t),l.querySelector(a)===null)){switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(l.querySelector(Aa(u)))return}n=l.createElement("link"),Ht(n,"link",t),Rt(n),l.head.appendChild(n)}}}function xm(t,e,l){tl.S(t,e,l);var n=Dn;if(n&&t){var a=Il(n).hoistableStyles,u=Un(t);e=e||"default";var c=a.get(u);if(!c){var r={loading:0,preload:null};if(c=n.querySelector(Ta(u)))r.loading=5;else{t=x({rel:"stylesheet",href:t,"data-precedence":e},l),(l=be.get(u))&&mf(t,l);var h=c=n.createElement("link");Rt(h),Ht(h,"link",t),h._p=new Promise(function(p,_){h.onload=p,h.onerror=_}),h.addEventListener("load",function(){r.loading|=1}),h.addEventListener("error",function(){r.loading|=2}),r.loading|=4,Lu(c,e,n)}c={type:"stylesheet",instance:c,count:1,state:r},a.set(u,c)}}}function Cm(t,e){tl.X(t,e);var l=Dn;if(l&&t){var n=Il(l).hoistableScripts,a=xn(t),u=n.get(a);u||(u=l.querySelector(Aa(a)),u||(t=x({src:t,async:!0},e),(e=be.get(a))&&vf(t,e),u=l.createElement("script"),Rt(u),Ht(u,"link",t),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(a,u))}}function Bm(t,e){tl.M(t,e);var l=Dn;if(l&&t){var n=Il(l).hoistableScripts,a=xn(t),u=n.get(a);u||(u=l.querySelector(Aa(a)),u||(t=x({src:t,async:!0,type:"module"},e),(e=be.get(a))&&vf(t,e),u=l.createElement("script"),Rt(u),Ht(u,"link",t),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(a,u))}}function Rh(t,e,l,n){var a=(a=J.current)?ju(a):null;if(!a)throw Error(s(446));switch(t){case"meta":case"title":return null;case"style":return typeof l.precedence=="string"&&typeof l.href=="string"?(e=Un(l.href),l=Il(a).hoistableStyles,n=l.get(e),n||(n={type:"style",instance:null,count:0,state:null},l.set(e,n)),n):{type:"void",instance:null,count:0,state:null};case"link":if(l.rel==="stylesheet"&&typeof l.href=="string"&&typeof l.precedence=="string"){t=Un(l.href);var u=Il(a).hoistableStyles,c=u.get(t);if(c||(a=a.ownerDocument||a,c={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},u.set(t,c),(u=a.querySelector(Ta(t)))&&!u._p&&(c.instance=u,c.state.loading=5),be.has(t)||(l={rel:"preload",as:"style",href:l.href,crossOrigin:l.crossOrigin,integrity:l.integrity,media:l.media,hrefLang:l.hrefLang,referrerPolicy:l.referrerPolicy},be.set(t,l),u||qm(a,t,l,c.state))),e&&n===null)throw Error(s(528,""));return c}if(e&&n!==null)throw Error(s(529,""));return null;case"script":return e=l.async,l=l.src,typeof l=="string"&&e&&typeof e!="function"&&typeof e!="symbol"?(e=xn(l),l=Il(a).hoistableScripts,n=l.get(e),n||(n={type:"script",instance:null,count:0,state:null},l.set(e,n)),n):{type:"void",instance:null,count:0,state:null};default:throw Error(s(444,t))}}function Un(t){return'href="'+re(t)+'"'}function Ta(t){return'link[rel="stylesheet"]['+t+"]"}function Dh(t){return x({},t,{"data-precedence":t.precedence,precedence:null})}function qm(t,e,l,n){t.querySelector('link[rel="preload"][as="style"]['+e+"]")?n.loading=1:(e=t.createElement("link"),n.preload=e,e.addEventListener("load",function(){return n.loading|=1}),e.addEventListener("error",function(){return n.loading|=2}),Ht(e,"link",l),Rt(e),t.head.appendChild(e))}function xn(t){return'[src="'+re(t)+'"]'}function Aa(t){return"script[async]"+t}function Uh(t,e,l){if(e.count++,e.instance===null)switch(e.type){case"style":var n=t.querySelector('style[data-href~="'+re(l.href)+'"]');if(n)return e.instance=n,Rt(n),n;var a=x({},l,{"data-href":l.href,"data-precedence":l.precedence,href:null,precedence:null});return n=(t.ownerDocument||t).createElement("style"),Rt(n),Ht(n,"style",a),Lu(n,l.precedence,t),e.instance=n;case"stylesheet":a=Un(l.href);var u=t.querySelector(Ta(a));if(u)return e.state.loading|=4,e.instance=u,Rt(u),u;n=Dh(l),(a=be.get(a))&&mf(n,a),u=(t.ownerDocument||t).createElement("link"),Rt(u);var c=u;return c._p=new Promise(function(r,h){c.onload=r,c.onerror=h}),Ht(u,"link",n),e.state.loading|=4,Lu(u,l.precedence,t),e.instance=u;case"script":return u=xn(l.src),(a=t.querySelector(Aa(u)))?(e.instance=a,Rt(a),a):(n=l,(a=be.get(u))&&(n=x({},l),vf(n,a)),t=t.ownerDocument||t,a=t.createElement("script"),Rt(a),Ht(a,"link",n),t.head.appendChild(a),e.instance=a);case"void":return null;default:throw Error(s(443,e.type))}else e.type==="stylesheet"&&(e.state.loading&4)===0&&(n=e.instance,e.state.loading|=4,Lu(n,l.precedence,t));return e.instance}function Lu(t,e,l){for(var n=l.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=n.length?n[n.length-1]:null,u=a,c=0;c title"):null)}function Hm(t,e,l){if(l===1||e.itemProp!=null)return!1;switch(t){case"meta":case"title":return!0;case"style":if(typeof e.precedence!="string"||typeof e.href!="string"||e.href==="")break;return!0;case"link":if(typeof e.rel!="string"||typeof e.href!="string"||e.href===""||e.onLoad||e.onError)break;switch(e.rel){case"stylesheet":return t=e.disabled,typeof e.precedence=="string"&&t==null;default:return!0}case"script":if(e.async&&typeof e.async!="function"&&typeof e.async!="symbol"&&!e.onLoad&&!e.onError&&e.src&&typeof e.src=="string")return!0}return!1}function Bh(t){return!(t.type==="stylesheet"&&(t.state.loading&3)===0)}function Ym(t,e,l,n){if(l.type==="stylesheet"&&(typeof n.media!="string"||matchMedia(n.media).matches!==!1)&&(l.state.loading&4)===0){if(l.instance===null){var a=Un(n.href),u=e.querySelector(Ta(a));if(u){e=u._p,e!==null&&typeof e=="object"&&typeof e.then=="function"&&(t.count++,t=Qu.bind(t),e.then(t,t)),l.state.loading|=4,l.instance=u,Rt(u);return}u=e.ownerDocument||e,n=Dh(n),(a=be.get(a))&&mf(n,a),u=u.createElement("link"),Rt(u);var c=u;c._p=new Promise(function(r,h){c.onload=r,c.onerror=h}),Ht(u,"link",n),l.instance=u}t.stylesheets===null&&(t.stylesheets=new Map),t.stylesheets.set(l,e),(e=l.state.preload)&&(l.state.loading&3)===0&&(t.count++,l=Qu.bind(t),e.addEventListener("load",l),e.addEventListener("error",l))}}var gf=0;function jm(t,e){return t.stylesheets&&t.count===0&&Vu(t,t.stylesheets),0gf?50:800)+e);return t.unsuspend=l,function(){t.unsuspend=null,clearTimeout(n),clearTimeout(a)}}:null}function Qu(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Vu(this,this.stylesheets);else if(this.unsuspend){var t=this.unsuspend;this.unsuspend=null,t()}}}var Gu=null;function Vu(t,e){t.stylesheets=null,t.unsuspend!==null&&(t.count++,Gu=new Map,e.forEach(Lm,t),Gu=null,Qu.call(t))}function Lm(t,e){if(!(e.state.loading&4)){var l=Gu.get(t);if(l)var n=l.get(null);else{l=new Map,Gu.set(t,l);for(var a=t.querySelectorAll("link[data-precedence],style[data-precedence]"),u=0;u"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(o)}catch(i){console.error(i)}}return o(),Of.exports=e0(),Of.exports}var n0=l0();const Be=Object.create(null);Be.open="0";Be.close="1";Be.ping="2";Be.pong="3";Be.message="4";Be.upgrade="5";Be.noop="6";const Pu=Object.create(null);Object.keys(Be).forEach(o=>{Pu[Be[o]]=o});const Cf={type:"error",data:"parser error"},sd=typeof Blob=="function"||typeof Blob<"u"&&Object.prototype.toString.call(Blob)==="[object BlobConstructor]",od=typeof ArrayBuffer=="function",rd=o=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(o):o&&o.buffer instanceof ArrayBuffer,Xf=({type:o,data:i},f,s)=>sd&&i instanceof Blob?f?s(i):ad(i,s):od&&(i instanceof ArrayBuffer||rd(i))?f?s(i):ad(new Blob([i]),s):s(Be[o]+(i||"")),ad=(o,i)=>{const f=new FileReader;return f.onload=function(){const s=f.result.split(",")[1];i("b"+(s||""))},f.readAsDataURL(o)};function ud(o){return o instanceof Uint8Array?o:o instanceof ArrayBuffer?new Uint8Array(o):new Uint8Array(o.buffer,o.byteOffset,o.byteLength)}let Df;function a0(o,i){if(sd&&o.data instanceof Blob)return o.data.arrayBuffer().then(ud).then(i);if(od&&(o.data instanceof ArrayBuffer||rd(o.data)))return i(ud(o.data));Xf(o,!1,f=>{Df||(Df=new TextEncoder),i(Df.encode(f))})}const id="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",xa=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(let o=0;o{let i=o.length*.75,f=o.length,s,m=0,E,R,B,M;o[o.length-1]==="="&&(i--,o[o.length-2]==="="&&i--);const A=new ArrayBuffer(i),Q=new Uint8Array(A);for(s=0;s>4,Q[m++]=(R&15)<<4|B>>2,Q[m++]=(B&3)<<6|M&63;return A},i0=typeof ArrayBuffer=="function",Qf=(o,i)=>{if(typeof o!="string")return{type:"message",data:hd(o,i)};const f=o.charAt(0);return f==="b"?{type:"message",data:c0(o.substring(1),i)}:Pu[f]?o.length>1?{type:Pu[f],data:o.substring(1)}:{type:Pu[f]}:Cf},c0=(o,i)=>{if(i0){const f=u0(o);return hd(f,i)}else return{base64:!0,data:o}},hd=(o,i)=>{switch(i){case"blob":return o instanceof Blob?o:new Blob([o]);case"arraybuffer":default:return o instanceof ArrayBuffer?o:o.buffer}},dd="",f0=(o,i)=>{const f=o.length,s=new Array(f);let m=0;o.forEach((E,R)=>{Xf(E,!1,B=>{s[R]=B,++m===f&&i(s.join(dd))})})},s0=(o,i)=>{const f=o.split(dd),s=[];for(let m=0;m{const s=f.length;let m;if(s<126)m=new Uint8Array(1),new DataView(m.buffer).setUint8(0,s);else if(s<65536){m=new Uint8Array(3);const E=new DataView(m.buffer);E.setUint8(0,126),E.setUint16(1,s)}else{m=new Uint8Array(9);const E=new DataView(m.buffer);E.setUint8(0,127),E.setBigUint64(1,BigInt(s))}o.data&&typeof o.data!="string"&&(m[0]|=128),i.enqueue(m),i.enqueue(f)})}})}let Uf;function Fu(o){return o.reduce((i,f)=>i+f.length,0)}function Iu(o,i){if(o[0].length===i)return o.shift();const f=new Uint8Array(i);let s=0;for(let m=0;mMath.pow(2,21)-1){B.enqueue(Cf);break}m=Q*Math.pow(2,32)+A.getUint32(4),s=3}else{if(Fu(f)o){B.enqueue(Cf);break}}}})}const yd=4;function Ot(o){if(o)return h0(o)}function h0(o){for(var i in Ot.prototype)o[i]=Ot.prototype[i];return o}Ot.prototype.on=Ot.prototype.addEventListener=function(o,i){return this._callbacks=this._callbacks||{},(this._callbacks["$"+o]=this._callbacks["$"+o]||[]).push(i),this};Ot.prototype.once=function(o,i){function f(){this.off(o,f),i.apply(this,arguments)}return f.fn=i,this.on(o,f),this};Ot.prototype.off=Ot.prototype.removeListener=Ot.prototype.removeAllListeners=Ot.prototype.removeEventListener=function(o,i){if(this._callbacks=this._callbacks||{},arguments.length==0)return this._callbacks={},this;var f=this._callbacks["$"+o];if(!f)return this;if(arguments.length==1)return delete this._callbacks["$"+o],this;for(var s,m=0;mPromise.resolve().then(i):(i,f)=>f(i,0),Se=typeof self<"u"?self:typeof window<"u"?window:Function("return this")(),d0="arraybuffer";function md(o,...i){return i.reduce((f,s)=>(o.hasOwnProperty(s)&&(f[s]=o[s]),f),{})}const y0=Se.setTimeout,m0=Se.clearTimeout;function ai(o,i){i.useNativeTimers?(o.setTimeoutFn=y0.bind(Se),o.clearTimeoutFn=m0.bind(Se)):(o.setTimeoutFn=Se.setTimeout.bind(Se),o.clearTimeoutFn=Se.clearTimeout.bind(Se))}const v0=1.33;function g0(o){return typeof o=="string"?p0(o):Math.ceil((o.byteLength||o.size)*v0)}function p0(o){let i=0,f=0;for(let s=0,m=o.length;s=57344?f+=3:(s++,f+=4);return f}function vd(){return Date.now().toString(36).substring(3)+Math.random().toString(36).substring(2,5)}function b0(o){let i="";for(let f in o)o.hasOwnProperty(f)&&(i.length&&(i+="&"),i+=encodeURIComponent(f)+"="+encodeURIComponent(o[f]));return i}function S0(o){let i={},f=o.split("&");for(let s=0,m=f.length;s{this.readyState="paused",i()};if(this._polling||!this.writable){let s=0;this._polling&&(s++,this.once("pollComplete",function(){--s||f()})),this.writable||(s++,this.once("drain",function(){--s||f()}))}else f()}_poll(){this._polling=!0,this.doPoll(),this.emitReserved("poll")}onData(i){const f=s=>{if(this.readyState==="opening"&&s.type==="open"&&this.onOpen(),s.type==="close")return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(s)};s0(i,this.socket.binaryType).forEach(f),this.readyState!=="closed"&&(this._polling=!1,this.emitReserved("pollComplete"),this.readyState==="open"&&this._poll())}doClose(){const i=()=>{this.write([{type:"close"}])};this.readyState==="open"?i():this.once("open",i)}write(i){this.writable=!1,f0(i,f=>{this.doWrite(f,()=>{this.writable=!0,this.emitReserved("drain")})})}uri(){const i=this.opts.secure?"https":"http",f=this.query||{};return this.opts.timestampRequests!==!1&&(f[this.opts.timestampParam]=vd()),!this.supportsBinary&&!f.sid&&(f.b64=1),this.createUri(i,f)}}let gd=!1;try{gd=typeof XMLHttpRequest<"u"&&"withCredentials"in new XMLHttpRequest}catch{}const T0=gd;function A0(){}class z0 extends E0{constructor(i){if(super(i),typeof location<"u"){const f=location.protocol==="https:";let s=location.port;s||(s=f?"443":"80"),this.xd=typeof location<"u"&&i.hostname!==location.hostname||s!==i.port}}doWrite(i,f){const s=this.request({method:"POST",data:i});s.on("success",f),s.on("error",(m,E)=>{this.onError("xhr post error",m,E)})}doPoll(){const i=this.request();i.on("data",this.onData.bind(this)),i.on("error",(f,s)=>{this.onError("xhr poll error",f,s)}),this.pollXhr=i}}class Ce extends Ot{constructor(i,f,s){super(),this.createRequest=i,ai(this,s),this._opts=s,this._method=s.method||"GET",this._uri=f,this._data=s.data!==void 0?s.data:null,this._create()}_create(){var i;const f=md(this._opts,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");f.xdomain=!!this._opts.xd;const s=this._xhr=this.createRequest(f);try{s.open(this._method,this._uri,!0);try{if(this._opts.extraHeaders){s.setDisableHeaderCheck&&s.setDisableHeaderCheck(!0);for(let m in this._opts.extraHeaders)this._opts.extraHeaders.hasOwnProperty(m)&&s.setRequestHeader(m,this._opts.extraHeaders[m])}}catch{}if(this._method==="POST")try{s.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch{}try{s.setRequestHeader("Accept","*/*")}catch{}(i=this._opts.cookieJar)===null||i===void 0||i.addCookies(s),"withCredentials"in s&&(s.withCredentials=this._opts.withCredentials),this._opts.requestTimeout&&(s.timeout=this._opts.requestTimeout),s.onreadystatechange=()=>{var m;s.readyState===3&&((m=this._opts.cookieJar)===null||m===void 0||m.parseCookies(s.getResponseHeader("set-cookie"))),s.readyState===4&&(s.status===200||s.status===1223?this._onLoad():this.setTimeoutFn(()=>{this._onError(typeof s.status=="number"?s.status:0)},0))},s.send(this._data)}catch(m){this.setTimeoutFn(()=>{this._onError(m)},0);return}typeof document<"u"&&(this._index=Ce.requestsCount++,Ce.requests[this._index]=this)}_onError(i){this.emitReserved("error",i,this._xhr),this._cleanup(!0)}_cleanup(i){if(!(typeof this._xhr>"u"||this._xhr===null)){if(this._xhr.onreadystatechange=A0,i)try{this._xhr.abort()}catch{}typeof document<"u"&&delete Ce.requests[this._index],this._xhr=null}}_onLoad(){const i=this._xhr.responseText;i!==null&&(this.emitReserved("data",i),this.emitReserved("success"),this._cleanup())}abort(){this._cleanup()}}Ce.requestsCount=0;Ce.requests={};if(typeof document<"u"){if(typeof attachEvent=="function")attachEvent("onunload",cd);else if(typeof addEventListener=="function"){const o="onpagehide"in Se?"pagehide":"unload";addEventListener(o,cd,!1)}}function cd(){for(let o in Ce.requests)Ce.requests.hasOwnProperty(o)&&Ce.requests[o].abort()}const O0=(function(){const o=pd({xdomain:!1});return o&&o.responseType!==null})();class N0 extends z0{constructor(i){super(i);const f=i&&i.forceBase64;this.supportsBinary=O0&&!f}request(i={}){return Object.assign(i,{xd:this.xd},this.opts),new Ce(pd,this.uri(),i)}}function pd(o){const i=o.xdomain;try{if(typeof XMLHttpRequest<"u"&&(!i||T0))return new XMLHttpRequest}catch{}if(!i)try{return new Se[["Active"].concat("Object").join("X")]("Microsoft.XMLHTTP")}catch{}}const bd=typeof navigator<"u"&&typeof navigator.product=="string"&&navigator.product.toLowerCase()==="reactnative";class M0 extends Gf{get name(){return"websocket"}doOpen(){const i=this.uri(),f=this.opts.protocols,s=bd?{}:md(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(s.headers=this.opts.extraHeaders);try{this.ws=this.createSocket(i,f,s)}catch(m){return this.emitReserved("error",m)}this.ws.binaryType=this.socket.binaryType,this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=i=>this.onClose({description:"websocket connection closed",context:i}),this.ws.onmessage=i=>this.onData(i.data),this.ws.onerror=i=>this.onError("websocket error",i)}write(i){this.writable=!1;for(let f=0;f{try{this.doWrite(s,E)}catch{}m&&ni(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){typeof this.ws<"u"&&(this.ws.onerror=()=>{},this.ws.close(),this.ws=null)}uri(){const i=this.opts.secure?"wss":"ws",f=this.query||{};return this.opts.timestampRequests&&(f[this.opts.timestampParam]=vd()),this.supportsBinary||(f.b64=1),this.createUri(i,f)}}const xf=Se.WebSocket||Se.MozWebSocket;class R0 extends M0{createSocket(i,f,s){return bd?new xf(i,f,s):f?new xf(i,f):new xf(i)}doWrite(i,f){this.ws.send(f)}}class D0 extends Gf{get name(){return"webtransport"}doOpen(){try{this._transport=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name])}catch(i){return this.emitReserved("error",i)}this._transport.closed.then(()=>{this.onClose()}).catch(i=>{this.onError("webtransport error",i)}),this._transport.ready.then(()=>{this._transport.createBidirectionalStream().then(i=>{const f=r0(Number.MAX_SAFE_INTEGER,this.socket.binaryType),s=i.readable.pipeThrough(f).getReader(),m=o0();m.readable.pipeTo(i.writable),this._writer=m.writable.getWriter();const E=()=>{s.read().then(({done:B,value:M})=>{B||(this.onPacket(M),E())}).catch(B=>{})};E();const R={type:"open"};this.query.sid&&(R.data=`{"sid":"${this.query.sid}"}`),this._writer.write(R).then(()=>this.onOpen())})})}write(i){this.writable=!1;for(let f=0;f{m&&ni(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){var i;(i=this._transport)===null||i===void 0||i.close()}}const U0={websocket:R0,webtransport:D0,polling:N0},x0=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,C0=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function Bf(o){if(o.length>8e3)throw"URI too long";const i=o,f=o.indexOf("["),s=o.indexOf("]");f!=-1&&s!=-1&&(o=o.substring(0,f)+o.substring(f,s).replace(/:/g,";")+o.substring(s,o.length));let m=x0.exec(o||""),E={},R=14;for(;R--;)E[C0[R]]=m[R]||"";return f!=-1&&s!=-1&&(E.source=i,E.host=E.host.substring(1,E.host.length-1).replace(/;/g,":"),E.authority=E.authority.replace("[","").replace("]","").replace(/;/g,":"),E.ipv6uri=!0),E.pathNames=B0(E,E.path),E.queryKey=q0(E,E.query),E}function B0(o,i){const f=/\/{2,9}/g,s=i.replace(f,"/").split("/");return(i.slice(0,1)=="/"||i.length===0)&&s.splice(0,1),i.slice(-1)=="/"&&s.splice(s.length-1,1),s}function q0(o,i){const f={};return i.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,function(s,m,E){m&&(f[m]=E)}),f}const qf=typeof addEventListener=="function"&&typeof removeEventListener=="function",ti=[];qf&&addEventListener("offline",()=>{ti.forEach(o=>o())},!1);class Nl extends Ot{constructor(i,f){if(super(),this.binaryType=d0,this.writeBuffer=[],this._prevBufferLen=0,this._pingInterval=-1,this._pingTimeout=-1,this._maxPayload=-1,this._pingTimeoutTime=1/0,i&&typeof i=="object"&&(f=i,i=null),i){const s=Bf(i);f.hostname=s.host,f.secure=s.protocol==="https"||s.protocol==="wss",f.port=s.port,s.query&&(f.query=s.query)}else f.host&&(f.hostname=Bf(f.host).host);ai(this,f),this.secure=f.secure!=null?f.secure:typeof location<"u"&&location.protocol==="https:",f.hostname&&!f.port&&(f.port=this.secure?"443":"80"),this.hostname=f.hostname||(typeof location<"u"?location.hostname:"localhost"),this.port=f.port||(typeof location<"u"&&location.port?location.port:this.secure?"443":"80"),this.transports=[],this._transportsByName={},f.transports.forEach(s=>{const m=s.prototype.name;this.transports.push(m),this._transportsByName[m]=s}),this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},f),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),typeof this.opts.query=="string"&&(this.opts.query=S0(this.opts.query)),qf&&(this.opts.closeOnBeforeunload&&(this._beforeunloadEventListener=()=>{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this._beforeunloadEventListener,!1)),this.hostname!=="localhost"&&(this._offlineEventListener=()=>{this._onClose("transport close",{description:"network connection lost"})},ti.push(this._offlineEventListener))),this.opts.withCredentials&&(this._cookieJar=void 0),this._open()}createTransport(i){const f=Object.assign({},this.opts.query);f.EIO=yd,f.transport=i,this.id&&(f.sid=this.id);const s=Object.assign({},this.opts,{query:f,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[i]);return new this._transportsByName[i](s)}_open(){if(this.transports.length===0){this.setTimeoutFn(()=>{this.emitReserved("error","No transports available")},0);return}const i=this.opts.rememberUpgrade&&Nl.priorWebsocketSuccess&&this.transports.indexOf("websocket")!==-1?"websocket":this.transports[0];this.readyState="opening";const f=this.createTransport(i);f.open(),this.setTransport(f)}setTransport(i){this.transport&&this.transport.removeAllListeners(),this.transport=i,i.on("drain",this._onDrain.bind(this)).on("packet",this._onPacket.bind(this)).on("error",this._onError.bind(this)).on("close",f=>this._onClose("transport close",f))}onOpen(){this.readyState="open",Nl.priorWebsocketSuccess=this.transport.name==="websocket",this.emitReserved("open"),this.flush()}_onPacket(i){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing")switch(this.emitReserved("packet",i),this.emitReserved("heartbeat"),i.type){case"open":this.onHandshake(JSON.parse(i.data));break;case"ping":this._sendPacket("pong"),this.emitReserved("ping"),this.emitReserved("pong"),this._resetPingTimeout();break;case"error":const f=new Error("server error");f.code=i.data,this._onError(f);break;case"message":this.emitReserved("data",i.data),this.emitReserved("message",i.data);break}}onHandshake(i){this.emitReserved("handshake",i),this.id=i.sid,this.transport.query.sid=i.sid,this._pingInterval=i.pingInterval,this._pingTimeout=i.pingTimeout,this._maxPayload=i.maxPayload,this.onOpen(),this.readyState!=="closed"&&this._resetPingTimeout()}_resetPingTimeout(){this.clearTimeoutFn(this._pingTimeoutTimer);const i=this._pingInterval+this._pingTimeout;this._pingTimeoutTime=Date.now()+i,this._pingTimeoutTimer=this.setTimeoutFn(()=>{this._onClose("ping timeout")},i),this.opts.autoUnref&&this._pingTimeoutTimer.unref()}_onDrain(){this.writeBuffer.splice(0,this._prevBufferLen),this._prevBufferLen=0,this.writeBuffer.length===0?this.emitReserved("drain"):this.flush()}flush(){if(this.readyState!=="closed"&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){const i=this._getWritablePackets();this.transport.send(i),this._prevBufferLen=i.length,this.emitReserved("flush")}}_getWritablePackets(){if(!(this._maxPayload&&this.transport.name==="polling"&&this.writeBuffer.length>1))return this.writeBuffer;let f=1;for(let s=0;s0&&f>this._maxPayload)return this.writeBuffer.slice(0,s);f+=2}return this.writeBuffer}_hasPingExpired(){if(!this._pingTimeoutTime)return!0;const i=Date.now()>this._pingTimeoutTime;return i&&(this._pingTimeoutTime=0,ni(()=>{this._onClose("ping timeout")},this.setTimeoutFn)),i}write(i,f,s){return this._sendPacket("message",i,f,s),this}send(i,f,s){return this._sendPacket("message",i,f,s),this}_sendPacket(i,f,s,m){if(typeof f=="function"&&(m=f,f=void 0),typeof s=="function"&&(m=s,s=null),this.readyState==="closing"||this.readyState==="closed")return;s=s||{},s.compress=s.compress!==!1;const E={type:i,data:f,options:s};this.emitReserved("packetCreate",E),this.writeBuffer.push(E),m&&this.once("flush",m),this.flush()}close(){const i=()=>{this._onClose("forced close"),this.transport.close()},f=()=>{this.off("upgrade",f),this.off("upgradeError",f),i()},s=()=>{this.once("upgrade",f),this.once("upgradeError",f)};return(this.readyState==="opening"||this.readyState==="open")&&(this.readyState="closing",this.writeBuffer.length?this.once("drain",()=>{this.upgrading?s():i()}):this.upgrading?s():i()),this}_onError(i){if(Nl.priorWebsocketSuccess=!1,this.opts.tryAllTransports&&this.transports.length>1&&this.readyState==="opening")return this.transports.shift(),this._open();this.emitReserved("error",i),this._onClose("transport error",i)}_onClose(i,f){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing"){if(this.clearTimeoutFn(this._pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),qf&&(this._beforeunloadEventListener&&removeEventListener("beforeunload",this._beforeunloadEventListener,!1),this._offlineEventListener)){const s=ti.indexOf(this._offlineEventListener);s!==-1&&ti.splice(s,1)}this.readyState="closed",this.id=null,this.emitReserved("close",i,f),this.writeBuffer=[],this._prevBufferLen=0}}}Nl.protocol=yd;class H0 extends Nl{constructor(){super(...arguments),this._upgrades=[]}onOpen(){if(super.onOpen(),this.readyState==="open"&&this.opts.upgrade)for(let i=0;i{s||(f.send([{type:"ping",data:"probe"}]),f.once("packet",x=>{if(!s)if(x.type==="pong"&&x.data==="probe"){if(this.upgrading=!0,this.emitReserved("upgrading",f),!f)return;Nl.priorWebsocketSuccess=f.name==="websocket",this.transport.pause(()=>{s||this.readyState!=="closed"&&(Q(),this.setTransport(f),f.send([{type:"upgrade"}]),this.emitReserved("upgrade",f),f=null,this.upgrading=!1,this.flush())})}else{const K=new Error("probe error");K.transport=f.name,this.emitReserved("upgradeError",K)}}))};function E(){s||(s=!0,Q(),f.close(),f=null)}const R=x=>{const K=new Error("probe error: "+x);K.transport=f.name,E(),this.emitReserved("upgradeError",K)};function B(){R("transport closed")}function M(){R("socket closed")}function A(x){f&&x.name!==f.name&&E()}const Q=()=>{f.removeListener("open",m),f.removeListener("error",R),f.removeListener("close",B),this.off("close",M),this.off("upgrading",A)};f.once("open",m),f.once("error",R),f.once("close",B),this.once("close",M),this.once("upgrading",A),this._upgrades.indexOf("webtransport")!==-1&&i!=="webtransport"?this.setTimeoutFn(()=>{s||f.open()},200):f.open()}onHandshake(i){this._upgrades=this._filterUpgrades(i.upgrades),super.onHandshake(i)}_filterUpgrades(i){const f=[];for(let s=0;sU0[m]).filter(m=>!!m)),super(i,s)}};function j0(o,i="",f){let s=o;f=f||typeof location<"u"&&location,o==null&&(o=f.protocol+"//"+f.host),typeof o=="string"&&(o.charAt(0)==="/"&&(o.charAt(1)==="/"?o=f.protocol+o:o=f.host+o),/^(https?|wss?):\/\//.test(o)||(typeof f<"u"?o=f.protocol+"//"+o:o="https://"+o),s=Bf(o)),s.port||(/^(http|ws)$/.test(s.protocol)?s.port="80":/^(http|ws)s$/.test(s.protocol)&&(s.port="443")),s.path=s.path||"/";const E=s.host.indexOf(":")!==-1?"["+s.host+"]":s.host;return s.id=s.protocol+"://"+E+":"+s.port+i,s.href=s.protocol+"://"+E+(f&&f.port===s.port?"":":"+s.port),s}const L0=typeof ArrayBuffer=="function",X0=o=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(o):o.buffer instanceof ArrayBuffer,Sd=Object.prototype.toString,Q0=typeof Blob=="function"||typeof Blob<"u"&&Sd.call(Blob)==="[object BlobConstructor]",G0=typeof File=="function"||typeof File<"u"&&Sd.call(File)==="[object FileConstructor]";function Vf(o){return L0&&(o instanceof ArrayBuffer||X0(o))||Q0&&o instanceof Blob||G0&&o instanceof File}function ei(o,i){if(!o||typeof o!="object")return!1;if(Array.isArray(o)){for(let f=0,s=o.length;f=0&&o.num{delete this.acks[i];for(let B=0;B{this.io.clearTimeoutFn(E),f.apply(this,B)};R.withError=!0,this.acks[i]=R}emitWithAck(i,...f){return new Promise((s,m)=>{const E=(R,B)=>R?m(R):s(B);E.withError=!0,f.push(E),this.emit(i,...f)})}_addToQueue(i){let f;typeof i[i.length-1]=="function"&&(f=i.pop());const s={id:this._queueSeq++,tryCount:0,pending:!1,args:i,flags:Object.assign({fromQueue:!0},this.flags)};i.push((m,...E)=>s!==this._queue[0]?void 0:(m!==null?s.tryCount>this._opts.retries&&(this._queue.shift(),f&&f(m)):(this._queue.shift(),f&&f(null,...E)),s.pending=!1,this._drainQueue())),this._queue.push(s),this._drainQueue()}_drainQueue(i=!1){if(!this.connected||this._queue.length===0)return;const f=this._queue[0];f.pending&&!i||(f.pending=!0,f.tryCount++,this.flags=f.flags,this.emit.apply(this,f.args))}packet(i){i.nsp=this.nsp,this.io._packet(i)}onopen(){typeof this.auth=="function"?this.auth(i=>{this._sendConnectPacket(i)}):this._sendConnectPacket(this.auth)}_sendConnectPacket(i){this.packet({type:tt.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},i):i})}onerror(i){this.connected||this.emitReserved("connect_error",i)}onclose(i,f){this.connected=!1,delete this.id,this.emitReserved("disconnect",i,f),this._clearAcks()}_clearAcks(){Object.keys(this.acks).forEach(i=>{if(!this.sendBuffer.some(s=>String(s.id)===i)){const s=this.acks[i];delete this.acks[i],s.withError&&s.call(this,new Error("socket has been disconnected"))}})}onpacket(i){if(i.nsp===this.nsp)switch(i.type){case tt.CONNECT:i.data&&i.data.sid?this.onconnect(i.data.sid,i.data.pid):this.emitReserved("connect_error",new Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case tt.EVENT:case tt.BINARY_EVENT:this.onevent(i);break;case tt.ACK:case tt.BINARY_ACK:this.onack(i);break;case tt.DISCONNECT:this.ondisconnect();break;case tt.CONNECT_ERROR:this.destroy();const s=new Error(i.data.message);s.data=i.data.data,this.emitReserved("connect_error",s);break}}onevent(i){const f=i.data||[];i.id!=null&&f.push(this.ack(i.id)),this.connected?this.emitEvent(f):this.receiveBuffer.push(Object.freeze(f))}emitEvent(i){if(this._anyListeners&&this._anyListeners.length){const f=this._anyListeners.slice();for(const s of f)s.apply(this,i)}super.emit.apply(this,i),this._pid&&i.length&&typeof i[i.length-1]=="string"&&(this._lastOffset=i[i.length-1])}ack(i){const f=this;let s=!1;return function(...m){s||(s=!0,f.packet({type:tt.ACK,id:i,data:m}))}}onack(i){const f=this.acks[i.id];typeof f=="function"&&(delete this.acks[i.id],f.withError&&i.data.unshift(null),f.apply(this,i.data))}onconnect(i,f){this.id=i,this.recovered=f&&this._pid===f,this._pid=f,this.connected=!0,this.emitBuffered(),this.emitReserved("connect"),this._drainQueue(!0)}emitBuffered(){this.receiveBuffer.forEach(i=>this.emitEvent(i)),this.receiveBuffer=[],this.sendBuffer.forEach(i=>{this.notifyOutgoingListeners(i),this.packet(i)}),this.sendBuffer=[]}ondisconnect(){this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach(i=>i()),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&this.packet({type:tt.DISCONNECT}),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(i){return this.flags.compress=i,this}get volatile(){return this.flags.volatile=!0,this}timeout(i){return this.flags.timeout=i,this}onAny(i){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(i),this}prependAny(i){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(i),this}offAny(i){if(!this._anyListeners)return this;if(i){const f=this._anyListeners;for(let s=0;s0&&o.jitter<=1?o.jitter:0,this.attempts=0}Bn.prototype.duration=function(){var o=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var i=Math.random(),f=Math.floor(i*this.jitter*o);o=(Math.floor(i*10)&1)==0?o-f:o+f}return Math.min(o,this.max)|0};Bn.prototype.reset=function(){this.attempts=0};Bn.prototype.setMin=function(o){this.ms=o};Bn.prototype.setMax=function(o){this.max=o};Bn.prototype.setJitter=function(o){this.jitter=o};class jf extends Ot{constructor(i,f){var s;super(),this.nsps={},this.subs=[],i&&typeof i=="object"&&(f=i,i=void 0),f=f||{},f.path=f.path||"/socket.io",this.opts=f,ai(this,f),this.reconnection(f.reconnection!==!1),this.reconnectionAttempts(f.reconnectionAttempts||1/0),this.reconnectionDelay(f.reconnectionDelay||1e3),this.reconnectionDelayMax(f.reconnectionDelayMax||5e3),this.randomizationFactor((s=f.randomizationFactor)!==null&&s!==void 0?s:.5),this.backoff=new Bn({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(f.timeout==null?2e4:f.timeout),this._readyState="closed",this.uri=i;const m=f.parser||W0;this.encoder=new m.Encoder,this.decoder=new m.Decoder,this._autoConnect=f.autoConnect!==!1,this._autoConnect&&this.open()}reconnection(i){return arguments.length?(this._reconnection=!!i,i||(this.skipReconnect=!0),this):this._reconnection}reconnectionAttempts(i){return i===void 0?this._reconnectionAttempts:(this._reconnectionAttempts=i,this)}reconnectionDelay(i){var f;return i===void 0?this._reconnectionDelay:(this._reconnectionDelay=i,(f=this.backoff)===null||f===void 0||f.setMin(i),this)}randomizationFactor(i){var f;return i===void 0?this._randomizationFactor:(this._randomizationFactor=i,(f=this.backoff)===null||f===void 0||f.setJitter(i),this)}reconnectionDelayMax(i){var f;return i===void 0?this._reconnectionDelayMax:(this._reconnectionDelayMax=i,(f=this.backoff)===null||f===void 0||f.setMax(i),this)}timeout(i){return arguments.length?(this._timeout=i,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&this.backoff.attempts===0&&this.reconnect()}open(i){if(~this._readyState.indexOf("open"))return this;this.engine=new Y0(this.uri,this.opts);const f=this.engine,s=this;this._readyState="opening",this.skipReconnect=!1;const m=ze(f,"open",function(){s.onopen(),i&&i()}),E=B=>{this.cleanup(),this._readyState="closed",this.emitReserved("error",B),i?i(B):this.maybeReconnectOnOpen()},R=ze(f,"error",E);if(this._timeout!==!1){const B=this._timeout,M=this.setTimeoutFn(()=>{m(),E(new Error("timeout")),f.close()},B);this.opts.autoUnref&&M.unref(),this.subs.push(()=>{this.clearTimeoutFn(M)})}return this.subs.push(m),this.subs.push(R),this}connect(i){return this.open(i)}onopen(){this.cleanup(),this._readyState="open",this.emitReserved("open");const i=this.engine;this.subs.push(ze(i,"ping",this.onping.bind(this)),ze(i,"data",this.ondata.bind(this)),ze(i,"error",this.onerror.bind(this)),ze(i,"close",this.onclose.bind(this)),ze(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(i){try{this.decoder.add(i)}catch(f){this.onclose("parse error",f)}}ondecoded(i){ni(()=>{this.emitReserved("packet",i)},this.setTimeoutFn)}onerror(i){this.emitReserved("error",i)}socket(i,f){let s=this.nsps[i];return s?this._autoConnect&&!s.active&&s.connect():(s=new _d(this,i,f),this.nsps[i]=s),s}_destroy(i){const f=Object.keys(this.nsps);for(const s of f)if(this.nsps[s].active)return;this._close()}_packet(i){const f=this.encoder.encode(i);for(let s=0;si()),this.subs.length=0,this.decoder.destroy()}_close(){this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close")}disconnect(){return this._close()}onclose(i,f){var s;this.cleanup(),(s=this.engine)===null||s===void 0||s.close(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",i,f),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;const i=this;if(this.backoff.attempts>=this._reconnectionAttempts)this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{const f=this.backoff.duration();this._reconnecting=!0;const s=this.setTimeoutFn(()=>{i.skipReconnect||(this.emitReserved("reconnect_attempt",i.backoff.attempts),!i.skipReconnect&&i.open(m=>{m?(i._reconnecting=!1,i.reconnect(),this.emitReserved("reconnect_error",m)):i.onreconnect()}))},f);this.opts.autoUnref&&s.unref(),this.subs.push(()=>{this.clearTimeoutFn(s)})}}onreconnect(){const i=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",i)}}const Ua={};function li(o,i){typeof o=="object"&&(i=o,o=void 0),i=i||{};const f=j0(o,i.path||"/socket.io"),s=f.source,m=f.id,E=f.path,R=Ua[m]&&E in Ua[m].nsps,B=i.forceNew||i["force new connection"]||i.multiplex===!1||R;let M;return B?M=new jf(s,i):(Ua[m]||(Ua[m]=new jf(s,i)),M=Ua[m]),f.query&&!i.query&&(i.query=f.queryKey),M.socket(f.path,i)}Object.assign(li,{Manager:jf,Socket:_d,io:li,connect:li});const Ed=window.location.origin;console.info("[socket] connecting to",Ed);const wf=li(Ed,{transports:["polling","websocket"],timeout:15e3});wf.on("connect_error",o=>console.error("connect_error",o.code,o.message,o.data));const Td=Mt.createContext(wf),F0=({children:o})=>Y.jsx(Td.Provider,{value:wf,children:o}),I0=()=>Mt.useContext(Td),Ad=Mt.createContext({connected:!1,session:null,logs:[],login:async()=>{},setRole:async()=>{},requestControl:async()=>{},releaseControl:async()=>{},subscribeAll:async()=>{}});function P0(o){return Mt.useCallback((i,f={})=>new Promise((s,m)=>{o.emit(i,f,(E={})=>{E.error?m(new Error(E.error)):s(E)})}),[o])}function tv({children:o}){const i=I0(),f=P0(i),[s,m]=Mt.useState(null),[E,R]=Mt.useState([]),[B,M]=Mt.useState(i.connected);Mt.useEffect(()=>{const x=()=>M(!0),K=()=>M(!1);return i.on("connect",x),i.on("disconnect",K),()=>{i.off("connect",x),i.off("disconnect",K)}},[i]),Mt.useEffect(()=>{function x(_t){m(_t)}function K(_t=[]){R(_t)}function Yt(_t){R(Ut=>[...Ut.slice(-199),_t])}return i.on("session:sync",x),i.on("log:init",K),i.on("log:entry",Yt),()=>{i.off("session:sync",x),i.off("log:init",K),i.off("log:entry",Yt)}},[i]);const A=Mt.useMemo(()=>({login:(x,K)=>f("auth:login",{username:x,password:K}),setRole:x=>f("session:setRole",{role:x}),requestControl:(x,K={})=>f("session:requestControl",{roverId:x,...K}),releaseControl:x=>f("session:releaseControl",{roverId:x}),subscribeAll:()=>f("session:subscribeAll")}),[f]),Q=Mt.useMemo(()=>({connected:B,session:s,logs:E,...A}),[A,B,E,s]);return Y.jsx(Ad.Provider,{value:Q,children:o})}function qn(){return Mt.useContext(Ad)}function ev({connected:o,role:i,mode:f}){const s=o?"bg-emerald-500/20 text-emerald-300":"bg-red-500/20 text-red-200";return Y.jsxs("div",{className:"flex flex-wrap items-center gap-3 text-sm",children:[Y.jsx("span",{className:`rounded-full px-3 py-1 font-medium ${s}`,children:o?"Connected":"Disconnected"}),Y.jsxs("span",{className:"rounded-full bg-slate-800/80 px-3 py-1 text-slate-200",children:["Role: ",i||"unknown"]}),Y.jsxs("span",{className:"rounded-full bg-slate-800/80 px-3 py-1 text-slate-200",children:["Mode: ",f||"--"]})]})}function lv(){const{logs:o}=qn();return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/70 p-4",children:[Y.jsxs("header",{className:"mb-3 flex items-center justify-between",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Server logs"}),Y.jsxs("span",{className:"text-xs uppercase tracking-[0.2em] text-slate-500",children:[o.length," entries"]})]}),Y.jsx("div",{className:"h-64 overflow-y-auto rounded-xl bg-slate-950/40 p-3 text-xs font-mono text-slate-300",children:o.length===0?Y.jsx("p",{children:"No logs yet."}):o.slice().reverse().map(i=>Y.jsxs("div",{className:"mb-2",children:[Y.jsx("span",{className:"text-slate-500",children:i.timestamp})," ",Y.jsxs("span",{className:"text-cyan-300",children:["[",i.level,"]"]})," ",i.label&&Y.jsxs("span",{className:"text-pink-300",children:["[",i.label,"]"]})," ",Y.jsx("span",{children:i.message})]},i.id))})]})}function nv(){const{session:o,requestControl:i}=qn(),f=o?.roster??[],[s,m]=Mt.useState({});async function E(R){m(B=>({...B,[R]:!0}));try{await i(R)}catch(B){alert(B.message)}finally{m(B=>({...B,[R]:!1}))}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Rovers"}),Y.jsxs("div",{className:"mt-4 space-y-3",children:[f.length===0&&Y.jsx("p",{className:"text-slate-400",children:"No rovers registered."}),f.map(R=>Y.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-3 rounded-xl bg-slate-950/40 px-4 py-3",children:[Y.jsxs("div",{children:[Y.jsx("p",{className:"text-white",children:R.name}),Y.jsxs("p",{className:"text-xs text-slate-400",children:["Locked: ",R.locked?"yes":"no"]})]}),Y.jsx("button",{type:"button",onClick:()=>E(R.id),disabled:s[R.id],className:"rounded-full bg-blue-600 px-4 py-1 text-sm font-semibold text-white disabled:opacity-50",children:s[R.id]?"Requesting…":"Request control"})]},R.id))]})]})}function av(){const{session:o,releaseControl:i}=qn(),f=o?.assignment,s=f?.roverId,[m,E]=Mt.useState(!1);async function R(){if(s){E(!0);try{await i(s)}catch(B){alert(B.message)}finally{E(!1)}}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Assignment"}),s?Y.jsxs("div",{className:"mt-4 space-y-3",children:[Y.jsxs("p",{className:"text-slate-300",children:["Currently driving rover ",s]}),Y.jsx("button",{type:"button",onClick:R,disabled:m,className:"rounded-full bg-red-600 px-4 py-1 text-sm font-semibold text-white disabled:opacity-50",children:m?"Releasing…":"Release control"})]}):Y.jsxs("div",{className:"mt-4 text-slate-400",children:[Y.jsxs("p",{children:["Status: ",f?.status??"not assigned"]}),f?.queuePosition&&Y.jsxs("p",{children:["Queue position: ",f.queuePosition]})]})]})}function uv(){const{session:o}=qn(),i=Mt.useMemo(()=>JSON.stringify(o??{},null,2),[o]);return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Session snapshot"}),Y.jsx("pre",{className:"mt-4 max-h-64 overflow-y-auto text-sm text-teal-200",children:i})]})}function iv(){const{login:o,setRole:i}=qn(),[f,s]=Mt.useState(""),[m,E]=Mt.useState(""),[R,B]=Mt.useState(!1);async function M(A){A.preventDefault(),B(!0);try{await o(f,m),s(""),E("")}catch(Q){alert(Q.message)}finally{B(!1)}}return Y.jsxs("div",{className:"rounded-2xl border border-slate-800 bg-slate-900/60 p-4",children:[Y.jsx("h2",{className:"text-lg font-semibold text-white",children:"Authentication"}),Y.jsxs("form",{className:"mt-4 flex flex-col gap-3",onSubmit:M,children:[Y.jsx("input",{className:"rounded-lg border border-slate-800 bg-slate-950/60 px-3 py-2 text-white",placeholder:"Username",value:f,onChange:A=>s(A.target.value)}),Y.jsx("input",{className:"rounded-lg border border-slate-800 bg-slate-950/60 px-3 py-2 text-white",placeholder:"Password",type:"password",value:m,onChange:A=>E(A.target.value)}),Y.jsx("button",{type:"submit",disabled:R,className:"rounded-lg bg-emerald-600 py-2 font-semibold text-white disabled:opacity-50",children:R?"Logging in…":"Login as admin"})]}),Y.jsxs("div",{className:"mt-4 flex gap-3",children:[Y.jsx("button",{type:"button",onClick:()=>i("user"),className:"rounded-lg border border-slate-700 px-3 py-1 text-sm text-slate-200",children:"Driver mode"}),Y.jsx("button",{type:"button",onClick:()=>i("spectator"),className:"rounded-lg border border-slate-700 px-3 py-1 text-sm text-slate-200",children:"Spectator mode"})]})]})}function cv(){const{connected:o,session:i}=qn();return Y.jsx("div",{className:"min-h-screen bg-slate-950 text-slate-50",children:Y.jsxs("main",{className:"mx-auto flex max-w-6xl flex-col gap-6 px-6 py-10",children:[Y.jsxs("header",{className:"space-y-4",children:[Y.jsx("h1",{className:"text-4xl font-semibold text-white",children:"Multi Roomba Rover Console"}),Y.jsx(ev,{connected:o,role:i?.role,mode:i?.mode})]}),Y.jsxs("section",{className:"grid gap-6 lg:grid-cols-2",children:[Y.jsx(nv,{}),Y.jsx(av,{}),Y.jsx(iv,{}),Y.jsx(uv,{})]}),Y.jsx(lv,{})]})})}n0.createRoot(document.getElementById("root")).render(Y.jsx(Mt.StrictMode,{children:Y.jsx(F0,{children:Y.jsx(tv,{children:Y.jsx(cv,{})})})})); diff --git a/server/public/assets/index-xwzFeHXC.js b/server/public/assets/index-xwzFeHXC.js new file mode 100644 index 00000000..8887d3dc --- /dev/null +++ b/server/public/assets/index-xwzFeHXC.js @@ -0,0 +1,11 @@ +(function(){const i=document.createElement("link").relList;if(i&&i.supports&&i.supports("modulepreload"))return;for(const o of document.querySelectorAll('link[rel="modulepreload"]'))r(o);new MutationObserver(o=>{for(const d of o)if(d.type==="childList")for(const y of d.addedNodes)y.tagName==="LINK"&&y.rel==="modulepreload"&&r(y)}).observe(document,{childList:!0,subtree:!0});function s(o){const d={};return o.integrity&&(d.integrity=o.integrity),o.referrerPolicy&&(d.referrerPolicy=o.referrerPolicy),o.crossOrigin==="use-credentials"?d.credentials="include":o.crossOrigin==="anonymous"?d.credentials="omit":d.credentials="same-origin",d}function r(o){if(o.ep)return;o.ep=!0;const d=s(o);fetch(o.href,d)}})();var Qs={exports:{}},ja={};var xd;function kp(){if(xd)return ja;xd=1;var c=Symbol.for("react.transitional.element"),i=Symbol.for("react.fragment");function s(r,o,d){var y=null;if(d!==void 0&&(y=""+d),o.key!==void 0&&(y=""+o.key),"key"in o){d={};for(var E in o)E!=="key"&&(d[E]=o[E])}else d=o;return o=d.ref,{$$typeof:c,type:r,key:y,ref:o!==void 0?o:null,props:d}}return ja.Fragment=i,ja.jsx=s,ja.jsxs=s,ja}var Rd;function $p(){return Rd||(Rd=1,Qs.exports=kp()),Qs.exports}var B=$p(),Vs={exports:{}},F={};var Od;function Wp(){if(Od)return F;Od=1;var c=Symbol.for("react.transitional.element"),i=Symbol.for("react.portal"),s=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),o=Symbol.for("react.profiler"),d=Symbol.for("react.consumer"),y=Symbol.for("react.context"),E=Symbol.for("react.forward_ref"),p=Symbol.for("react.suspense"),v=Symbol.for("react.memo"),z=Symbol.for("react.lazy"),x=Symbol.for("react.activity"),H=Symbol.iterator;function G(b){return b===null||typeof b!="object"?null:(b=H&&b[H]||b["@@iterator"],typeof b=="function"?b:null)}var X={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},J=Object.assign,V={};function Q(b,U,w){this.props=b,this.context=U,this.refs=V,this.updater=w||X}Q.prototype.isReactComponent={},Q.prototype.setState=function(b,U){if(typeof b!="object"&&typeof b!="function"&&b!=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,b,U,"setState")},Q.prototype.forceUpdate=function(b){this.updater.enqueueForceUpdate(this,b,"forceUpdate")};function Z(){}Z.prototype=Q.prototype;function $(b,U,w){this.props=b,this.context=U,this.refs=V,this.updater=w||X}var Tt=$.prototype=new Z;Tt.constructor=$,J(Tt,Q.prototype),Tt.isPureReactComponent=!0;var Rt=Array.isArray;function jt(){}var tt={H:null,A:null,T:null,S:null},Lt=Object.prototype.hasOwnProperty;function Ot(b,U,w){var L=w.ref;return{$$typeof:c,type:b,key:U,ref:L!==void 0?L:null,props:w}}function ue(b,U){return Ot(b.type,U,b.props)}function ie(b){return typeof b=="object"&&b!==null&&b.$$typeof===c}function Ft(b){var U={"=":"=0",":":"=2"};return"$"+b.replace(/[=:]/g,function(w){return U[w]})}var ql=/\/+/g;function Xe(b,U){return typeof b=="object"&&b!==null&&b.key!=null?Ft(""+b.key):U.toString(36)}function ze(b){switch(b.status){case"fulfilled":return b.value;case"rejected":throw b.reason;default:switch(typeof b.status=="string"?b.then(jt,jt):(b.status="pending",b.then(function(U){b.status==="pending"&&(b.status="fulfilled",b.value=U)},function(U){b.status==="pending"&&(b.status="rejected",b.reason=U)})),b.status){case"fulfilled":return b.value;case"rejected":throw b.reason}}throw b}function N(b,U,w,L,P){var lt=typeof b;(lt==="undefined"||lt==="boolean")&&(b=null);var ht=!1;if(b===null)ht=!0;else switch(lt){case"bigint":case"string":case"number":ht=!0;break;case"object":switch(b.$$typeof){case c:case i:ht=!0;break;case z:return ht=b._init,N(ht(b._payload),U,w,L,P)}}if(ht)return P=P(b),ht=L===""?"."+Xe(b,0):L,Rt(P)?(w="",ht!=null&&(w=ht.replace(ql,"$&/")+"/"),N(P,U,w,"",function(Zn){return Zn})):P!=null&&(ie(P)&&(P=ue(P,w+(P.key==null||b&&b.key===P.key?"":(""+P.key).replace(ql,"$&/")+"/")+ht)),U.push(P)),1;ht=0;var $t=L===""?".":L+":";if(Rt(b))for(var Nt=0;Nt>>1,bt=N[yt];if(0>>1;yto(w,W))Lo(P,w)?(N[yt]=P,N[L]=W,yt=L):(N[yt]=w,N[U]=W,yt=U);else if(Lo(P,W))N[yt]=P,N[L]=W,yt=L;else break t}}return q}function o(N,q){var W=N.sortIndex-q.sortIndex;return W!==0?W:N.id-q.id}if(c.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var d=performance;c.unstable_now=function(){return d.now()}}else{var y=Date,E=y.now();c.unstable_now=function(){return y.now()-E}}var p=[],v=[],z=1,x=null,H=3,G=!1,X=!1,J=!1,V=!1,Q=typeof setTimeout=="function"?setTimeout:null,Z=typeof clearTimeout=="function"?clearTimeout:null,$=typeof setImmediate<"u"?setImmediate:null;function Tt(N){for(var q=s(v);q!==null;){if(q.callback===null)r(v);else if(q.startTime<=N)r(v),q.sortIndex=q.expirationTime,i(p,q);else break;q=s(v)}}function Rt(N){if(J=!1,Tt(N),!X)if(s(p)!==null)X=!0,jt||(jt=!0,Ft());else{var q=s(v);q!==null&&ze(Rt,q.startTime-N)}}var jt=!1,tt=-1,Lt=5,Ot=-1;function ue(){return V?!0:!(c.unstable_now()-OtN&&ue());){var yt=x.callback;if(typeof yt=="function"){x.callback=null,H=x.priorityLevel;var bt=yt(x.expirationTime<=N);if(N=c.unstable_now(),typeof bt=="function"){x.callback=bt,Tt(N),q=!0;break e}x===s(p)&&r(p),Tt(N)}else r(p);x=s(p)}if(x!==null)q=!0;else{var b=s(v);b!==null&&ze(Rt,b.startTime-N),q=!1}}break t}finally{x=null,H=W,G=!1}q=void 0}}finally{q?Ft():jt=!1}}}var Ft;if(typeof $=="function")Ft=function(){$(ie)};else if(typeof MessageChannel<"u"){var ql=new MessageChannel,Xe=ql.port2;ql.port1.onmessage=ie,Ft=function(){Xe.postMessage(null)}}else Ft=function(){Q(ie,0)};function ze(N,q){tt=Q(function(){N(c.unstable_now())},q)}c.unstable_IdlePriority=5,c.unstable_ImmediatePriority=1,c.unstable_LowPriority=4,c.unstable_NormalPriority=3,c.unstable_Profiling=null,c.unstable_UserBlockingPriority=2,c.unstable_cancelCallback=function(N){N.callback=null},c.unstable_forceFrameRate=function(N){0>N||125yt?(N.sortIndex=W,i(v,N),s(p)===null&&N===s(v)&&(J?(Z(tt),tt=-1):J=!0,ze(Rt,W-yt))):(N.sortIndex=bt,i(p,N),X||G||(X=!0,jt||(jt=!0,Ft()))),N},c.unstable_shouldYield=ue,c.unstable_wrapCallback=function(N){var q=H;return function(){var W=H;H=q;try{return N.apply(this,arguments)}finally{H=W}}}})(Js)),Js}var Nd;function Pp(){return Nd||(Nd=1,Ks.exports=Fp()),Ks.exports}var ks={exports:{}},kt={};var Md;function Ip(){if(Md)return kt;Md=1;var c=rr();function i(p){var v="https://react.dev/errors/"+p;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(c)}catch(i){console.error(i)}}return c(),ks.exports=Ip(),ks.exports}var Ud;function e0(){if(Ud)return La;Ud=1;var c=Pp(),i=rr(),s=t0();function r(t){var e="https://react.dev/errors/"+t;if(1bt||(t.current=yt[bt],yt[bt]=null,bt--)}function w(t,e){bt++,yt[bt]=t.current,t.current=e}var L=b(null),P=b(null),lt=b(null),ht=b(null);function $t(t,e){switch(w(lt,e),w(P,t),w(L,null),e.nodeType){case 9:case 11:t=(t=e.documentElement)&&(t=t.namespaceURI)?kh(t):0;break;default:if(t=e.tagName,e=e.namespaceURI)e=kh(e),t=$h(e,t);else switch(t){case"svg":t=1;break;case"math":t=2;break;default:t=0}}U(L),w(L,t)}function Nt(){U(L),U(P),U(lt)}function Zn(t){t.memoizedState!==null&&w(ht,t);var e=L.current,l=$h(e,t.type);e!==l&&(w(P,t),w(L,l))}function Ja(t){P.current===t&&(U(L),U(P)),ht.current===t&&(U(ht),Ba._currentValue=W)}var xi,_r;function wl(t){if(xi===void 0)try{throw Error()}catch(l){var e=l.stack.trim().match(/\n( *(at )?)/);xi=e&&e[1]||"",_r=-1)":-1a||m[n]!==T[a]){var C=` +`+m[n].replace(" at new "," at ");return t.displayName&&C.includes("")&&(C=C.replace("",t.displayName)),C}while(1<=n&&0<=a);break}}}finally{Ri=!1,Error.prepareStackTrace=l}return(l=t?t.displayName||t.name:"")?wl(l):""}function xm(t,e){switch(t.tag){case 26:case 27:case 5:return wl(t.type);case 16:return wl("Lazy");case 13:return t.child!==e&&e!==null?wl("Suspense Fallback"):wl("Suspense");case 19:return wl("SuspenseList");case 0:case 15:return Oi(t.type,!1);case 11:return Oi(t.type.render,!1);case 1:return Oi(t.type,!0);case 31:return wl("Activity");default:return""}}function Tr(t){try{var e="",l=null;do e+=xm(t,l),l=t,t=t.return;while(t);return e}catch(n){return` +Error generating stack: `+n.message+` +`+n.stack}}var zi=Object.prototype.hasOwnProperty,Ci=c.unstable_scheduleCallback,Ni=c.unstable_cancelCallback,Rm=c.unstable_shouldYield,Om=c.unstable_requestPaint,ce=c.unstable_now,zm=c.unstable_getCurrentPriorityLevel,Ar=c.unstable_ImmediatePriority,xr=c.unstable_UserBlockingPriority,ka=c.unstable_NormalPriority,Cm=c.unstable_LowPriority,Rr=c.unstable_IdlePriority,Nm=c.log,Mm=c.unstable_setDisableYieldValue,Kn=null,se=null;function rl(t){if(typeof Nm=="function"&&Mm(t),se&&typeof se.setStrictMode=="function")try{se.setStrictMode(Kn,t)}catch{}}var re=Math.clz32?Math.clz32:Bm,Dm=Math.log,Um=Math.LN2;function Bm(t){return t>>>=0,t===0?32:31-(Dm(t)/Um|0)|0}var $a=256,Wa=262144,Fa=4194304;function jl(t){var e=t&42;if(e!==0)return e;switch(t&-t){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return t&261888;case 262144:case 524288:case 1048576:case 2097152:return t&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return t&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return t}}function Pa(t,e,l){var n=t.pendingLanes;if(n===0)return 0;var a=0,u=t.suspendedLanes,f=t.pingedLanes;t=t.warmLanes;var h=n&134217727;return h!==0?(n=h&~u,n!==0?a=jl(n):(f&=h,f!==0?a=jl(f):l||(l=h&~t,l!==0&&(a=jl(l))))):(h=n&~u,h!==0?a=jl(h):f!==0?a=jl(f):l||(l=n&~t,l!==0&&(a=jl(l)))),a===0?0:e!==0&&e!==a&&(e&u)===0&&(u=a&-a,l=e&-e,u>=l||u===32&&(l&4194048)!==0)?e:a}function Jn(t,e){return(t.pendingLanes&~(t.suspendedLanes&~t.pingedLanes)&e)===0}function Hm(t,e){switch(t){case 1:case 2:case 4:case 8:case 64:return e+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 e+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 Or(){var t=Fa;return Fa<<=1,(Fa&62914560)===0&&(Fa=4194304),t}function Mi(t){for(var e=[],l=0;31>l;l++)e.push(t);return e}function kn(t,e){t.pendingLanes|=e,e!==268435456&&(t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0)}function qm(t,e,l,n,a,u){var f=t.pendingLanes;t.pendingLanes=l,t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0,t.expiredLanes&=l,t.entangledLanes&=l,t.errorRecoveryDisabledLanes&=l,t.shellSuspendCounter=0;var h=t.entanglements,m=t.expirationTimes,T=t.hiddenUpdates;for(l=f&~l;0"u")return null;try{return t.activeElement||t.body}catch{return t.body}}var Gm=/[\n"\\]/g;function ge(t){return t.replace(Gm,function(e){return"\\"+e.charCodeAt(0).toString(16)+" "})}function wi(t,e,l,n,a,u,f,h){t.name="",f!=null&&typeof f!="function"&&typeof f!="symbol"&&typeof f!="boolean"?t.type=f:t.removeAttribute("type"),e!=null?f==="number"?(e===0&&t.value===""||t.value!=e)&&(t.value=""+ve(e)):t.value!==""+ve(e)&&(t.value=""+ve(e)):f!=="submit"&&f!=="reset"||t.removeAttribute("value"),e!=null?ji(t,f,ve(e)):l!=null?ji(t,f,ve(l)):n!=null&&t.removeAttribute("value"),a==null&&u!=null&&(t.defaultChecked=!!u),a!=null&&(t.checked=a&&typeof a!="function"&&typeof a!="symbol"),h!=null&&typeof h!="function"&&typeof h!="symbol"&&typeof h!="boolean"?t.name=""+ve(h):t.removeAttribute("name")}function Yr(t,e,l,n,a,u,f,h){if(u!=null&&typeof u!="function"&&typeof u!="symbol"&&typeof u!="boolean"&&(t.type=u),e!=null||l!=null){if(!(u!=="submit"&&u!=="reset"||e!=null)){qi(t);return}l=l!=null?""+ve(l):"",e=e!=null?""+ve(e):l,h||e===t.value||(t.value=e),t.defaultValue=e}n=n??a,n=typeof n!="function"&&typeof n!="symbol"&&!!n,t.checked=h?t.checked:!!n,t.defaultChecked=!!n,f!=null&&typeof f!="function"&&typeof f!="symbol"&&typeof f!="boolean"&&(t.name=f),qi(t)}function ji(t,e,l){e==="number"&&eu(t.ownerDocument)===t||t.defaultValue===""+l||(t.defaultValue=""+l)}function rn(t,e,l,n){if(t=t.options,e){e={};for(var a=0;a"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Qi=!1;if(Ve)try{var Pn={};Object.defineProperty(Pn,"passive",{get:function(){Qi=!0}}),window.addEventListener("test",Pn,Pn),window.removeEventListener("test",Pn,Pn)}catch{Qi=!1}var ol=null,Vi=null,nu=null;function Jr(){if(nu)return nu;var t,e=Vi,l=e.length,n,a="value"in ol?ol.value:ol.textContent,u=a.length;for(t=0;t=ea),Ir=" ",tf=!1;function ef(t,e){switch(t){case"keyup":return py.indexOf(e.keyCode)!==-1;case"keydown":return e.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function lf(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var dn=!1;function gy(t,e){switch(t){case"compositionend":return lf(e);case"keypress":return e.which!==32?null:(tf=!0,Ir);case"textInput":return t=e.data,t===Ir&&tf?null:t;default:return null}}function by(t,e){if(dn)return t==="compositionend"||!$i&&ef(t,e)?(t=Jr(),nu=Vi=ol=null,dn=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(e.ctrlKey||e.altKey||e.metaKey)||e.ctrlKey&&e.altKey){if(e.char&&1=e)return{node:l,offset:e-t};t=n}t:{for(;l;){if(l.nextSibling){l=l.nextSibling;break t}l=l.parentNode}l=void 0}l=of(l)}}function df(t,e){return t&&e?t===e?!0:t&&t.nodeType===3?!1:e&&e.nodeType===3?df(t,e.parentNode):"contains"in t?t.contains(e):t.compareDocumentPosition?!!(t.compareDocumentPosition(e)&16):!1:!1}function mf(t){t=t!=null&&t.ownerDocument!=null&&t.ownerDocument.defaultView!=null?t.ownerDocument.defaultView:window;for(var e=eu(t.document);e instanceof t.HTMLIFrameElement;){try{var l=typeof e.contentWindow.location.href=="string"}catch{l=!1}if(l)t=e.contentWindow;else break;e=eu(t.document)}return e}function Pi(t){var e=t&&t.nodeName&&t.nodeName.toLowerCase();return e&&(e==="input"&&(t.type==="text"||t.type==="search"||t.type==="tel"||t.type==="url"||t.type==="password")||e==="textarea"||t.contentEditable==="true")}var Oy=Ve&&"documentMode"in document&&11>=document.documentMode,mn=null,Ii=null,ua=null,tc=!1;function yf(t,e,l){var n=l.window===l?l.document:l.nodeType===9?l:l.ownerDocument;tc||mn==null||mn!==eu(n)||(n=mn,"selectionStart"in n&&Pi(n)?n={start:n.selectionStart,end:n.selectionEnd}:(n=(n.ownerDocument&&n.ownerDocument.defaultView||window).getSelection(),n={anchorNode:n.anchorNode,anchorOffset:n.anchorOffset,focusNode:n.focusNode,focusOffset:n.focusOffset}),ua&&aa(ua,n)||(ua=n,n=Wu(Ii,"onSelect"),0>=f,a-=f,Be=1<<32-re(e)+a|l<et?(it=Y,Y=null):it=Y.sibling;var ft=A(S,Y,_[et],M);if(ft===null){Y===null&&(Y=it);break}t&&Y&&ft.alternate===null&&e(S,Y),g=u(ft,g,et),rt===null?K=ft:rt.sibling=ft,rt=ft,Y=it}if(et===_.length)return l(S,Y),ct&&Ke(S,et),K;if(Y===null){for(;et<_.length;et++)Y=D(S,_[et],M),Y!==null&&(g=u(Y,g,et),rt===null?K=Y:rt.sibling=Y,rt=Y);return ct&&Ke(S,et),K}for(Y=n(Y);et<_.length;et++)it=R(Y,S,et,_[et],M),it!==null&&(t&&it.alternate!==null&&Y.delete(it.key===null?et:it.key),g=u(it,g,et),rt===null?K=it:rt.sibling=it,rt=it);return t&&Y.forEach(function(Ul){return e(S,Ul)}),ct&&Ke(S,et),K}function k(S,g,_,M){if(_==null)throw Error(r(151));for(var K=null,rt=null,Y=g,et=g=0,it=null,ft=_.next();Y!==null&&!ft.done;et++,ft=_.next()){Y.index>et?(it=Y,Y=null):it=Y.sibling;var Ul=A(S,Y,ft.value,M);if(Ul===null){Y===null&&(Y=it);break}t&&Y&&Ul.alternate===null&&e(S,Y),g=u(Ul,g,et),rt===null?K=Ul:rt.sibling=Ul,rt=Ul,Y=it}if(ft.done)return l(S,Y),ct&&Ke(S,et),K;if(Y===null){for(;!ft.done;et++,ft=_.next())ft=D(S,ft.value,M),ft!==null&&(g=u(ft,g,et),rt===null?K=ft:rt.sibling=ft,rt=ft);return ct&&Ke(S,et),K}for(Y=n(Y);!ft.done;et++,ft=_.next())ft=R(Y,S,et,ft.value,M),ft!==null&&(t&&ft.alternate!==null&&Y.delete(ft.key===null?et:ft.key),g=u(ft,g,et),rt===null?K=ft:rt.sibling=ft,rt=ft);return t&&Y.forEach(function(Jp){return e(S,Jp)}),ct&&Ke(S,et),K}function gt(S,g,_,M){if(typeof _=="object"&&_!==null&&_.type===J&&_.key===null&&(_=_.props.children),typeof _=="object"&&_!==null){switch(_.$$typeof){case G:t:{for(var K=_.key;g!==null;){if(g.key===K){if(K=_.type,K===J){if(g.tag===7){l(S,g.sibling),M=a(g,_.props.children),M.return=S,S=M;break t}}else if(g.elementType===K||typeof K=="object"&&K!==null&&K.$$typeof===Lt&&$l(K)===g.type){l(S,g.sibling),M=a(g,_.props),oa(M,_),M.return=S,S=M;break t}l(S,g);break}else e(S,g);g=g.sibling}_.type===J?(M=Vl(_.props.children,S.mode,M,_.key),M.return=S,S=M):(M=du(_.type,_.key,_.props,null,S.mode,M),oa(M,_),M.return=S,S=M)}return f(S);case X:t:{for(K=_.key;g!==null;){if(g.key===K)if(g.tag===4&&g.stateNode.containerInfo===_.containerInfo&&g.stateNode.implementation===_.implementation){l(S,g.sibling),M=a(g,_.children||[]),M.return=S,S=M;break t}else{l(S,g);break}else e(S,g);g=g.sibling}M=cc(_,S.mode,M),M.return=S,S=M}return f(S);case Lt:return _=$l(_),gt(S,g,_,M)}if(ze(_))return j(S,g,_,M);if(Ft(_)){if(K=Ft(_),typeof K!="function")throw Error(r(150));return _=K.call(_),k(S,g,_,M)}if(typeof _.then=="function")return gt(S,g,Su(_),M);if(_.$$typeof===$)return gt(S,g,pu(S,_),M);Eu(S,_)}return typeof _=="string"&&_!==""||typeof _=="number"||typeof _=="bigint"?(_=""+_,g!==null&&g.tag===6?(l(S,g.sibling),M=a(g,_),M.return=S,S=M):(l(S,g),M=ic(_,S.mode,M),M.return=S,S=M),f(S)):l(S,g)}return function(S,g,_,M){try{fa=0;var K=gt(S,g,_,M);return xn=null,K}catch(Y){if(Y===An||Y===gu)throw Y;var rt=oe(29,Y,null,S.mode);return rt.lanes=M,rt.return=S,rt}finally{}}}var Fl=jf(!0),Lf=jf(!1),pl=!1;function bc(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function Sc(t,e){t=t.updateQueue,e.updateQueue===t&&(e.updateQueue={baseState:t.baseState,firstBaseUpdate:t.firstBaseUpdate,lastBaseUpdate:t.lastBaseUpdate,shared:t.shared,callbacks:null})}function vl(t){return{lane:t,tag:0,payload:null,callback:null,next:null}}function gl(t,e,l){var n=t.updateQueue;if(n===null)return null;if(n=n.shared,(ot&2)!==0){var a=n.pending;return a===null?e.next=e:(e.next=a.next,a.next=e),n.pending=e,e=hu(t),_f(t,null,l),e}return ou(t,n,e,l),hu(t)}function ha(t,e,l){if(e=e.updateQueue,e!==null&&(e=e.shared,(l&4194048)!==0)){var n=e.lanes;n&=t.pendingLanes,l|=n,e.lanes=l,Cr(t,l)}}function Ec(t,e){var l=t.updateQueue,n=t.alternate;if(n!==null&&(n=n.updateQueue,l===n)){var a=null,u=null;if(l=l.firstBaseUpdate,l!==null){do{var f={lane:l.lane,tag:l.tag,payload:l.payload,callback:null,next:null};u===null?a=u=f:u=u.next=f,l=l.next}while(l!==null);u===null?a=u=e:u=u.next=e}else a=u=e;l={baseState:n.baseState,firstBaseUpdate:a,lastBaseUpdate:u,shared:n.shared,callbacks:n.callbacks},t.updateQueue=l;return}t=l.lastBaseUpdate,t===null?l.firstBaseUpdate=e:t.next=e,l.lastBaseUpdate=e}var _c=!1;function da(){if(_c){var t=Tn;if(t!==null)throw t}}function ma(t,e,l,n){_c=!1;var a=t.updateQueue;pl=!1;var u=a.firstBaseUpdate,f=a.lastBaseUpdate,h=a.shared.pending;if(h!==null){a.shared.pending=null;var m=h,T=m.next;m.next=null,f===null?u=T:f.next=T,f=m;var C=t.alternate;C!==null&&(C=C.updateQueue,h=C.lastBaseUpdate,h!==f&&(h===null?C.firstBaseUpdate=T:h.next=T,C.lastBaseUpdate=m))}if(u!==null){var D=a.baseState;f=0,C=T=m=null,h=u;do{var A=h.lane&-536870913,R=A!==h.lane;if(R?(ut&A)===A:(n&A)===A){A!==0&&A===_n&&(_c=!0),C!==null&&(C=C.next={lane:0,tag:h.tag,payload:h.payload,callback:null,next:null});t:{var j=t,k=h;A=e;var gt=l;switch(k.tag){case 1:if(j=k.payload,typeof j=="function"){D=j.call(gt,D,A);break t}D=j;break t;case 3:j.flags=j.flags&-65537|128;case 0:if(j=k.payload,A=typeof j=="function"?j.call(gt,D,A):j,A==null)break t;D=x({},D,A);break t;case 2:pl=!0}}A=h.callback,A!==null&&(t.flags|=64,R&&(t.flags|=8192),R=a.callbacks,R===null?a.callbacks=[A]:R.push(A))}else R={lane:A,tag:h.tag,payload:h.payload,callback:h.callback,next:null},C===null?(T=C=R,m=D):C=C.next=R,f|=A;if(h=h.next,h===null){if(h=a.shared.pending,h===null)break;R=h,h=R.next,R.next=null,a.lastBaseUpdate=R,a.shared.pending=null}}while(!0);C===null&&(m=D),a.baseState=m,a.firstBaseUpdate=T,a.lastBaseUpdate=C,u===null&&(a.shared.lanes=0),Tl|=f,t.lanes=f,t.memoizedState=D}}function Yf(t,e){if(typeof t!="function")throw Error(r(191,t));t.call(e)}function Xf(t,e){var l=t.callbacks;if(l!==null)for(t.callbacks=null,t=0;tu?u:8;var f=N.T,h={};N.T=h,Xc(t,!1,e,l);try{var m=a(),T=N.S;if(T!==null&&T(h,m),m!==null&&typeof m=="object"&&typeof m.then=="function"){var C=qy(m,n);va(t,e,C,pe(t))}else va(t,e,n,pe(t))}catch(D){va(t,e,{then:function(){},status:"rejected",reason:D},pe())}finally{q.p=u,f!==null&&h.types!==null&&(f.types=h.types),N.T=f}}function Gy(){}function Lc(t,e,l,n){if(t.tag!==5)throw Error(r(476));var a=So(t).queue;bo(t,a,e,W,l===null?Gy:function(){return Eo(t),l(n)})}function So(t){var e=t.memoizedState;if(e!==null)return e;e={memoizedState:W,baseState:W,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:We,lastRenderedState:W},next:null};var l={};return e.next={memoizedState:l,baseState:l,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:We,lastRenderedState:l},next:null},t.memoizedState=e,t=t.alternate,t!==null&&(t.memoizedState=e),e}function Eo(t){var e=So(t);e.next===null&&(e=t.alternate.memoizedState),va(t,e.next.queue,{},pe())}function Yc(){return Zt(Ba)}function _o(){return Dt().memoizedState}function To(){return Dt().memoizedState}function Qy(t){for(var e=t.return;e!==null;){switch(e.tag){case 24:case 3:var l=pe();t=vl(l);var n=gl(e,t,l);n!==null&&(ae(n,e,l),ha(n,e,l)),e={cache:yc()},t.payload=e;return}e=e.return}}function Vy(t,e,l){var n=pe();l={lane:n,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},Mu(t)?xo(e,l):(l=ac(t,e,l,n),l!==null&&(ae(l,t,n),Ro(l,e,n)))}function Ao(t,e,l){var n=pe();va(t,e,l,n)}function va(t,e,l,n){var a={lane:n,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null};if(Mu(t))xo(e,a);else{var u=t.alternate;if(t.lanes===0&&(u===null||u.lanes===0)&&(u=e.lastRenderedReducer,u!==null))try{var f=e.lastRenderedState,h=u(f,l);if(a.hasEagerState=!0,a.eagerState=h,fe(h,f))return ou(t,e,a,0),St===null&&fu(),!1}catch{}finally{}if(l=ac(t,e,a,n),l!==null)return ae(l,t,n),Ro(l,e,n),!0}return!1}function Xc(t,e,l,n){if(n={lane:2,revertLane:bs(),gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},Mu(t)){if(e)throw Error(r(479))}else e=ac(t,l,n,2),e!==null&&ae(e,t,2)}function Mu(t){var e=t.alternate;return t===I||e!==null&&e===I}function xo(t,e){On=Au=!0;var l=t.pending;l===null?e.next=e:(e.next=l.next,l.next=e),t.pending=e}function Ro(t,e,l){if((l&4194048)!==0){var n=e.lanes;n&=t.pendingLanes,l|=n,e.lanes=l,Cr(t,l)}}var ga={readContext:Zt,use:Ou,useCallback:zt,useContext:zt,useEffect:zt,useImperativeHandle:zt,useLayoutEffect:zt,useInsertionEffect:zt,useMemo:zt,useReducer:zt,useRef:zt,useState:zt,useDebugValue:zt,useDeferredValue:zt,useTransition:zt,useSyncExternalStore:zt,useId:zt,useHostTransitionStatus:zt,useFormState:zt,useActionState:zt,useOptimistic:zt,useMemoCache:zt,useCacheRefresh:zt};ga.useEffectEvent=zt;var Oo={readContext:Zt,use:Ou,useCallback:function(t,e){return Wt().memoizedState=[t,e===void 0?null:e],t},useContext:Zt,useEffect:ro,useImperativeHandle:function(t,e,l){l=l!=null?l.concat([t]):null,Cu(4194308,4,mo.bind(null,e,t),l)},useLayoutEffect:function(t,e){return Cu(4194308,4,t,e)},useInsertionEffect:function(t,e){Cu(4,2,t,e)},useMemo:function(t,e){var l=Wt();e=e===void 0?null:e;var n=t();if(Pl){rl(!0);try{t()}finally{rl(!1)}}return l.memoizedState=[n,e],n},useReducer:function(t,e,l){var n=Wt();if(l!==void 0){var a=l(e);if(Pl){rl(!0);try{l(e)}finally{rl(!1)}}}else a=e;return n.memoizedState=n.baseState=a,t={pending:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:a},n.queue=t,t=t.dispatch=Vy.bind(null,I,t),[n.memoizedState,t]},useRef:function(t){var e=Wt();return t={current:t},e.memoizedState=t},useState:function(t){t=Bc(t);var e=t.queue,l=Ao.bind(null,I,e);return e.dispatch=l,[t.memoizedState,l]},useDebugValue:wc,useDeferredValue:function(t,e){var l=Wt();return jc(l,t,e)},useTransition:function(){var t=Bc(!1);return t=bo.bind(null,I,t.queue,!0,!1),Wt().memoizedState=t,[!1,t]},useSyncExternalStore:function(t,e,l){var n=I,a=Wt();if(ct){if(l===void 0)throw Error(r(407));l=l()}else{if(l=e(),St===null)throw Error(r(349));(ut&127)!==0||Jf(n,e,l)}a.memoizedState=l;var u={value:l,getSnapshot:e};return a.queue=u,ro($f.bind(null,n,u,t),[t]),n.flags|=2048,Cn(9,{destroy:void 0},kf.bind(null,n,u,l,e),null),l},useId:function(){var t=Wt(),e=St.identifierPrefix;if(ct){var l=He,n=Be;l=(n&~(1<<32-re(n)-1)).toString(32)+l,e="_"+e+"R_"+l,l=xu++,0<\/script>",u=u.removeChild(u.firstChild);break;case"select":u=typeof n.is=="string"?f.createElement("select",{is:n.is}):f.createElement("select"),n.multiple?u.multiple=!0:n.size&&(u.size=n.size);break;default:u=typeof n.is=="string"?f.createElement(a,{is:n.is}):f.createElement(a)}}u[Qt]=e,u[Pt]=n;t:for(f=e.child;f!==null;){if(f.tag===5||f.tag===6)u.appendChild(f.stateNode);else if(f.tag!==4&&f.tag!==27&&f.child!==null){f.child.return=f,f=f.child;continue}if(f===e)break t;for(;f.sibling===null;){if(f.return===null||f.return===e)break t;f=f.return}f.sibling.return=f.return,f=f.sibling}e.stateNode=u;t:switch(Jt(u,a,n),a){case"button":case"input":case"select":case"textarea":n=!!n.autoFocus;break t;case"img":n=!0;break t;default:n=!1}n&&Pe(e)}}return _t(e),es(e,e.type,t===null?null:t.memoizedProps,e.pendingProps,l),null;case 6:if(t&&e.stateNode!=null)t.memoizedProps!==n&&Pe(e);else{if(typeof n!="string"&&e.stateNode===null)throw Error(r(166));if(t=lt.current,Sn(e)){if(t=e.stateNode,l=e.memoizedProps,n=null,a=Vt,a!==null)switch(a.tag){case 27:case 5:n=a.memoizedProps}t[Qt]=e,t=!!(t.nodeValue===l||n!==null&&n.suppressHydrationWarning===!0||Kh(t.nodeValue,l)),t||ml(e,!0)}else t=Fu(t).createTextNode(n),t[Qt]=e,e.stateNode=t}return _t(e),null;case 31:if(l=e.memoizedState,t===null||t.memoizedState!==null){if(n=Sn(e),l!==null){if(t===null){if(!n)throw Error(r(318));if(t=e.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(r(557));t[Qt]=e}else Zl(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;_t(e),t=!1}else l=oc(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=l),t=!0;if(!t)return e.flags&256?(de(e),e):(de(e),null);if((e.flags&128)!==0)throw Error(r(558))}return _t(e),null;case 13:if(n=e.memoizedState,t===null||t.memoizedState!==null&&t.memoizedState.dehydrated!==null){if(a=Sn(e),n!==null&&n.dehydrated!==null){if(t===null){if(!a)throw Error(r(318));if(a=e.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(r(317));a[Qt]=e}else Zl(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;_t(e),a=!1}else a=oc(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=a),a=!0;if(!a)return e.flags&256?(de(e),e):(de(e),null)}return de(e),(e.flags&128)!==0?(e.lanes=l,e):(l=n!==null,t=t!==null&&t.memoizedState!==null,l&&(n=e.child,a=null,n.alternate!==null&&n.alternate.memoizedState!==null&&n.alternate.memoizedState.cachePool!==null&&(a=n.alternate.memoizedState.cachePool.pool),u=null,n.memoizedState!==null&&n.memoizedState.cachePool!==null&&(u=n.memoizedState.cachePool.pool),u!==a&&(n.flags|=2048)),l!==t&&l&&(e.child.flags|=8192),qu(e,e.updateQueue),_t(e),null);case 4:return Nt(),t===null&&Ts(e.stateNode.containerInfo),_t(e),null;case 10:return ke(e.type),_t(e),null;case 19:if(U(Mt),n=e.memoizedState,n===null)return _t(e),null;if(a=(e.flags&128)!==0,u=n.rendering,u===null)if(a)Sa(n,!1);else{if(Ct!==0||t!==null&&(t.flags&128)!==0)for(t=e.child;t!==null;){if(u=Tu(t),u!==null){for(e.flags|=128,Sa(n,!1),t=u.updateQueue,e.updateQueue=t,qu(e,t),e.subtreeFlags=0,t=l,l=e.child;l!==null;)Tf(l,t),l=l.sibling;return w(Mt,Mt.current&1|2),ct&&Ke(e,n.treeForkCount),e.child}t=t.sibling}n.tail!==null&&ce()>Xu&&(e.flags|=128,a=!0,Sa(n,!1),e.lanes=4194304)}else{if(!a)if(t=Tu(u),t!==null){if(e.flags|=128,a=!0,t=t.updateQueue,e.updateQueue=t,qu(e,t),Sa(n,!0),n.tail===null&&n.tailMode==="hidden"&&!u.alternate&&!ct)return _t(e),null}else 2*ce()-n.renderingStartTime>Xu&&l!==536870912&&(e.flags|=128,a=!0,Sa(n,!1),e.lanes=4194304);n.isBackwards?(u.sibling=e.child,e.child=u):(t=n.last,t!==null?t.sibling=u:e.child=u,n.last=u)}return n.tail!==null?(t=n.tail,n.rendering=t,n.tail=t.sibling,n.renderingStartTime=ce(),t.sibling=null,l=Mt.current,w(Mt,a?l&1|2:l&1),ct&&Ke(e,n.treeForkCount),t):(_t(e),null);case 22:case 23:return de(e),Ac(),n=e.memoizedState!==null,t!==null?t.memoizedState!==null!==n&&(e.flags|=8192):n&&(e.flags|=8192),n?(l&536870912)!==0&&(e.flags&128)===0&&(_t(e),e.subtreeFlags&6&&(e.flags|=8192)):_t(e),l=e.updateQueue,l!==null&&qu(e,l.retryQueue),l=null,t!==null&&t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(l=t.memoizedState.cachePool.pool),n=null,e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),n!==l&&(e.flags|=2048),t!==null&&U(kl),null;case 24:return l=null,t!==null&&(l=t.memoizedState.cache),e.memoizedState.cache!==l&&(e.flags|=2048),ke(Ut),_t(e),null;case 25:return null;case 30:return null}throw Error(r(156,e.tag))}function $y(t,e){switch(rc(e),e.tag){case 1:return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 3:return ke(Ut),Nt(),t=e.flags,(t&65536)!==0&&(t&128)===0?(e.flags=t&-65537|128,e):null;case 26:case 27:case 5:return Ja(e),null;case 31:if(e.memoizedState!==null){if(de(e),e.alternate===null)throw Error(r(340));Zl()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 13:if(de(e),t=e.memoizedState,t!==null&&t.dehydrated!==null){if(e.alternate===null)throw Error(r(340));Zl()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 19:return U(Mt),null;case 4:return Nt(),null;case 10:return ke(e.type),null;case 22:case 23:return de(e),Ac(),t!==null&&U(kl),t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 24:return ke(Ut),null;case 25:return null;default:return null}}function Fo(t,e){switch(rc(e),e.tag){case 3:ke(Ut),Nt();break;case 26:case 27:case 5:Ja(e);break;case 4:Nt();break;case 31:e.memoizedState!==null&&de(e);break;case 13:de(e);break;case 19:U(Mt);break;case 10:ke(e.type);break;case 22:case 23:de(e),Ac(),t!==null&&U(kl);break;case 24:ke(Ut)}}function Ea(t,e){try{var l=e.updateQueue,n=l!==null?l.lastEffect:null;if(n!==null){var a=n.next;l=a;do{if((l.tag&t)===t){n=void 0;var u=l.create,f=l.inst;n=u(),f.destroy=n}l=l.next}while(l!==a)}}catch(h){mt(e,e.return,h)}}function El(t,e,l){try{var n=e.updateQueue,a=n!==null?n.lastEffect:null;if(a!==null){var u=a.next;n=u;do{if((n.tag&t)===t){var f=n.inst,h=f.destroy;if(h!==void 0){f.destroy=void 0,a=e;var m=l,T=h;try{T()}catch(C){mt(a,m,C)}}}n=n.next}while(n!==u)}}catch(C){mt(e,e.return,C)}}function Po(t){var e=t.updateQueue;if(e!==null){var l=t.stateNode;try{Xf(e,l)}catch(n){mt(t,t.return,n)}}}function Io(t,e,l){l.props=Il(t.type,t.memoizedProps),l.state=t.memoizedState;try{l.componentWillUnmount()}catch(n){mt(t,e,n)}}function _a(t,e){try{var l=t.ref;if(l!==null){switch(t.tag){case 26:case 27:case 5:var n=t.stateNode;break;case 30:n=t.stateNode;break;default:n=t.stateNode}typeof l=="function"?t.refCleanup=l(n):l.current=n}}catch(a){mt(t,e,a)}}function qe(t,e){var l=t.ref,n=t.refCleanup;if(l!==null)if(typeof n=="function")try{n()}catch(a){mt(t,e,a)}finally{t.refCleanup=null,t=t.alternate,t!=null&&(t.refCleanup=null)}else if(typeof l=="function")try{l(null)}catch(a){mt(t,e,a)}else l.current=null}function th(t){var e=t.type,l=t.memoizedProps,n=t.stateNode;try{t:switch(e){case"button":case"input":case"select":case"textarea":l.autoFocus&&n.focus();break t;case"img":l.src?n.src=l.src:l.srcSet&&(n.srcset=l.srcSet)}}catch(a){mt(t,t.return,a)}}function ls(t,e,l){try{var n=t.stateNode;vp(n,t.type,l,e),n[Pt]=e}catch(a){mt(t,t.return,a)}}function eh(t){return t.tag===5||t.tag===3||t.tag===26||t.tag===27&&zl(t.type)||t.tag===4}function ns(t){t:for(;;){for(;t.sibling===null;){if(t.return===null||eh(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.tag===27&&zl(t.type)||t.flags&2||t.child===null||t.tag===4)continue t;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function as(t,e,l){var n=t.tag;if(n===5||n===6)t=t.stateNode,e?(l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l).insertBefore(t,e):(e=l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l,e.appendChild(t),l=l._reactRootContainer,l!=null||e.onclick!==null||(e.onclick=Qe));else if(n!==4&&(n===27&&zl(t.type)&&(l=t.stateNode,e=null),t=t.child,t!==null))for(as(t,e,l),t=t.sibling;t!==null;)as(t,e,l),t=t.sibling}function wu(t,e,l){var n=t.tag;if(n===5||n===6)t=t.stateNode,e?l.insertBefore(t,e):l.appendChild(t);else if(n!==4&&(n===27&&zl(t.type)&&(l=t.stateNode),t=t.child,t!==null))for(wu(t,e,l),t=t.sibling;t!==null;)wu(t,e,l),t=t.sibling}function lh(t){var e=t.stateNode,l=t.memoizedProps;try{for(var n=t.type,a=e.attributes;a.length;)e.removeAttributeNode(a[0]);Jt(e,n,l),e[Qt]=t,e[Pt]=l}catch(u){mt(t,t.return,u)}}var Ie=!1,qt=!1,us=!1,nh=typeof WeakSet=="function"?WeakSet:Set,Gt=null;function Wy(t,e){if(t=t.containerInfo,Rs=ai,t=mf(t),Pi(t)){if("selectionStart"in t)var l={start:t.selectionStart,end:t.selectionEnd};else t:{l=(l=t.ownerDocument)&&l.defaultView||window;var n=l.getSelection&&l.getSelection();if(n&&n.rangeCount!==0){l=n.anchorNode;var a=n.anchorOffset,u=n.focusNode;n=n.focusOffset;try{l.nodeType,u.nodeType}catch{l=null;break t}var f=0,h=-1,m=-1,T=0,C=0,D=t,A=null;e:for(;;){for(var R;D!==l||a!==0&&D.nodeType!==3||(h=f+a),D!==u||n!==0&&D.nodeType!==3||(m=f+n),D.nodeType===3&&(f+=D.nodeValue.length),(R=D.firstChild)!==null;)A=D,D=R;for(;;){if(D===t)break e;if(A===l&&++T===a&&(h=f),A===u&&++C===n&&(m=f),(R=D.nextSibling)!==null)break;D=A,A=D.parentNode}D=R}l=h===-1||m===-1?null:{start:h,end:m}}else l=null}l=l||{start:0,end:0}}else l=null;for(Os={focusedElem:t,selectionRange:l},ai=!1,Gt=e;Gt!==null;)if(e=Gt,t=e.child,(e.subtreeFlags&1028)!==0&&t!==null)t.return=e,Gt=t;else for(;Gt!==null;){switch(e=Gt,u=e.alternate,t=e.flags,e.tag){case 0:if((t&4)!==0&&(t=e.updateQueue,t=t!==null?t.events:null,t!==null))for(l=0;l title"))),Jt(u,n,l),u[Qt]=t,Xt(u),n=u;break t;case"link":var f=rd("link","href",a).get(n+(l.href||""));if(f){for(var h=0;hgt&&(f=gt,gt=k,k=f);var S=hf(h,k),g=hf(h,gt);if(S&&g&&(R.rangeCount!==1||R.anchorNode!==S.node||R.anchorOffset!==S.offset||R.focusNode!==g.node||R.focusOffset!==g.offset)){var _=D.createRange();_.setStart(S.node,S.offset),R.removeAllRanges(),k>gt?(R.addRange(_),R.extend(g.node,g.offset)):(_.setEnd(g.node,g.offset),R.addRange(_))}}}}for(D=[],R=h;R=R.parentNode;)R.nodeType===1&&D.push({element:R,left:R.scrollLeft,top:R.scrollTop});for(typeof h.focus=="function"&&h.focus(),h=0;hl?32:l,N.T=null,l=hs,hs=null;var u=xl,f=al;if(Yt=0,Bn=xl=null,al=0,(ot&6)!==0)throw Error(r(331));var h=ot;if(ot|=4,mh(u.current),oh(u,u.current,f,l),ot=h,za(0,!1),se&&typeof se.onPostCommitFiberRoot=="function")try{se.onPostCommitFiberRoot(Kn,u)}catch{}return!0}finally{q.p=a,N.T=n,Dh(t,e)}}function Bh(t,e,l){e=Se(l,e),e=Zc(t.stateNode,e,2),t=gl(t,e,2),t!==null&&(kn(t,2),we(t))}function mt(t,e,l){if(t.tag===3)Bh(t,t,l);else for(;e!==null;){if(e.tag===3){Bh(e,t,l);break}else if(e.tag===1){var n=e.stateNode;if(typeof e.type.getDerivedStateFromError=="function"||typeof n.componentDidCatch=="function"&&(Al===null||!Al.has(n))){t=Se(l,t),l=Ho(2),n=gl(e,l,2),n!==null&&(qo(l,n,e,t),kn(n,2),we(n));break}}e=e.return}}function ps(t,e,l){var n=t.pingCache;if(n===null){n=t.pingCache=new Iy;var a=new Set;n.set(e,a)}else a=n.get(e),a===void 0&&(a=new Set,n.set(e,a));a.has(l)||(ss=!0,a.add(l),t=ap.bind(null,t,e,l),e.then(t,t))}function ap(t,e,l){var n=t.pingCache;n!==null&&n.delete(e),t.pingedLanes|=t.suspendedLanes&l,t.warmLanes&=~l,St===t&&(ut&l)===l&&(Ct===4||Ct===3&&(ut&62914560)===ut&&300>ce()-Yu?(ot&2)===0&&Hn(t,0):rs|=l,Un===ut&&(Un=0)),we(t)}function Hh(t,e){e===0&&(e=Or()),t=Ql(t,e),t!==null&&(kn(t,e),we(t))}function up(t){var e=t.memoizedState,l=0;e!==null&&(l=e.retryLane),Hh(t,l)}function ip(t,e){var l=0;switch(t.tag){case 31:case 13:var n=t.stateNode,a=t.memoizedState;a!==null&&(l=a.retryLane);break;case 19:n=t.stateNode;break;case 22:n=t.stateNode._retryCache;break;default:throw Error(r(314))}n!==null&&n.delete(e),Hh(t,l)}function cp(t,e){return Ci(t,e)}var Ju=null,wn=null,vs=!1,ku=!1,gs=!1,Ol=0;function we(t){t!==wn&&t.next===null&&(wn===null?Ju=wn=t:wn=wn.next=t),ku=!0,vs||(vs=!0,rp())}function za(t,e){if(!gs&&ku){gs=!0;do for(var l=!1,n=Ju;n!==null;){if(t!==0){var a=n.pendingLanes;if(a===0)var u=0;else{var f=n.suspendedLanes,h=n.pingedLanes;u=(1<<31-re(42|t)+1)-1,u&=a&~(f&~h),u=u&201326741?u&201326741|1:u?u|2:0}u!==0&&(l=!0,Lh(n,u))}else u=ut,u=Pa(n,n===St?u:0,n.cancelPendingCommit!==null||n.timeoutHandle!==-1),(u&3)===0||Jn(n,u)||(l=!0,Lh(n,u));n=n.next}while(l);gs=!1}}function sp(){qh()}function qh(){ku=vs=!1;var t=0;Ol!==0&&bp()&&(t=Ol);for(var e=ce(),l=null,n=Ju;n!==null;){var a=n.next,u=wh(n,e);u===0?(n.next=null,l===null?Ju=a:l.next=a,a===null&&(wn=l)):(l=n,(t!==0||(u&3)!==0)&&(ku=!0)),n=a}Yt!==0&&Yt!==5||za(t),Ol!==0&&(Ol=0)}function wh(t,e){for(var l=t.suspendedLanes,n=t.pingedLanes,a=t.expirationTimes,u=t.pendingLanes&-62914561;0h)break;var C=m.transferSize,D=m.initiatorType;C&&Jh(D)&&(m=m.responseEnd,f+=C*(m"u"?null:document;function ud(t,e,l){var n=jn;if(n&&typeof e=="string"&&e){var a=ge(e);a='link[rel="'+t+'"][href="'+a+'"]',typeof l=="string"&&(a+='[crossorigin="'+l+'"]'),ad.has(a)||(ad.add(a),t={rel:t,crossOrigin:l,href:e},n.querySelector(a)===null&&(e=n.createElement("link"),Jt(e,"link",t),Xt(e),n.head.appendChild(e)))}}function zp(t){ul.D(t),ud("dns-prefetch",t,null)}function Cp(t,e){ul.C(t,e),ud("preconnect",t,e)}function Np(t,e,l){ul.L(t,e,l);var n=jn;if(n&&t&&e){var a='link[rel="preload"][as="'+ge(e)+'"]';e==="image"&&l&&l.imageSrcSet?(a+='[imagesrcset="'+ge(l.imageSrcSet)+'"]',typeof l.imageSizes=="string"&&(a+='[imagesizes="'+ge(l.imageSizes)+'"]')):a+='[href="'+ge(t)+'"]';var u=a;switch(e){case"style":u=Ln(t);break;case"script":u=Yn(t)}Re.has(u)||(t=x({rel:"preload",href:e==="image"&&l&&l.imageSrcSet?void 0:t,as:e},l),Re.set(u,t),n.querySelector(a)!==null||e==="style"&&n.querySelector(Da(u))||e==="script"&&n.querySelector(Ua(u))||(e=n.createElement("link"),Jt(e,"link",t),Xt(e),n.head.appendChild(e)))}}function Mp(t,e){ul.m(t,e);var l=jn;if(l&&t){var n=e&&typeof e.as=="string"?e.as:"script",a='link[rel="modulepreload"][as="'+ge(n)+'"][href="'+ge(t)+'"]',u=a;switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":u=Yn(t)}if(!Re.has(u)&&(t=x({rel:"modulepreload",href:t},e),Re.set(u,t),l.querySelector(a)===null)){switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(l.querySelector(Ua(u)))return}n=l.createElement("link"),Jt(n,"link",t),Xt(n),l.head.appendChild(n)}}}function Dp(t,e,l){ul.S(t,e,l);var n=jn;if(n&&t){var a=cn(n).hoistableStyles,u=Ln(t);e=e||"default";var f=a.get(u);if(!f){var h={loading:0,preload:null};if(f=n.querySelector(Da(u)))h.loading=5;else{t=x({rel:"stylesheet",href:t,"data-precedence":e},l),(l=Re.get(u))&&Bs(t,l);var m=f=n.createElement("link");Xt(m),Jt(m,"link",t),m._p=new Promise(function(T,C){m.onload=T,m.onerror=C}),m.addEventListener("load",function(){h.loading|=1}),m.addEventListener("error",function(){h.loading|=2}),h.loading|=4,Iu(f,e,n)}f={type:"stylesheet",instance:f,count:1,state:h},a.set(u,f)}}}function Up(t,e){ul.X(t,e);var l=jn;if(l&&t){var n=cn(l).hoistableScripts,a=Yn(t),u=n.get(a);u||(u=l.querySelector(Ua(a)),u||(t=x({src:t,async:!0},e),(e=Re.get(a))&&Hs(t,e),u=l.createElement("script"),Xt(u),Jt(u,"link",t),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(a,u))}}function Bp(t,e){ul.M(t,e);var l=jn;if(l&&t){var n=cn(l).hoistableScripts,a=Yn(t),u=n.get(a);u||(u=l.querySelector(Ua(a)),u||(t=x({src:t,async:!0,type:"module"},e),(e=Re.get(a))&&Hs(t,e),u=l.createElement("script"),Xt(u),Jt(u,"link",t),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(a,u))}}function id(t,e,l,n){var a=(a=lt.current)?Pu(a):null;if(!a)throw Error(r(446));switch(t){case"meta":case"title":return null;case"style":return typeof l.precedence=="string"&&typeof l.href=="string"?(e=Ln(l.href),l=cn(a).hoistableStyles,n=l.get(e),n||(n={type:"style",instance:null,count:0,state:null},l.set(e,n)),n):{type:"void",instance:null,count:0,state:null};case"link":if(l.rel==="stylesheet"&&typeof l.href=="string"&&typeof l.precedence=="string"){t=Ln(l.href);var u=cn(a).hoistableStyles,f=u.get(t);if(f||(a=a.ownerDocument||a,f={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},u.set(t,f),(u=a.querySelector(Da(t)))&&!u._p&&(f.instance=u,f.state.loading=5),Re.has(t)||(l={rel:"preload",as:"style",href:l.href,crossOrigin:l.crossOrigin,integrity:l.integrity,media:l.media,hrefLang:l.hrefLang,referrerPolicy:l.referrerPolicy},Re.set(t,l),u||Hp(a,t,l,f.state))),e&&n===null)throw Error(r(528,""));return f}if(e&&n!==null)throw Error(r(529,""));return null;case"script":return e=l.async,l=l.src,typeof l=="string"&&e&&typeof e!="function"&&typeof e!="symbol"?(e=Yn(l),l=cn(a).hoistableScripts,n=l.get(e),n||(n={type:"script",instance:null,count:0,state:null},l.set(e,n)),n):{type:"void",instance:null,count:0,state:null};default:throw Error(r(444,t))}}function Ln(t){return'href="'+ge(t)+'"'}function Da(t){return'link[rel="stylesheet"]['+t+"]"}function cd(t){return x({},t,{"data-precedence":t.precedence,precedence:null})}function Hp(t,e,l,n){t.querySelector('link[rel="preload"][as="style"]['+e+"]")?n.loading=1:(e=t.createElement("link"),n.preload=e,e.addEventListener("load",function(){return n.loading|=1}),e.addEventListener("error",function(){return n.loading|=2}),Jt(e,"link",l),Xt(e),t.head.appendChild(e))}function Yn(t){return'[src="'+ge(t)+'"]'}function Ua(t){return"script[async]"+t}function sd(t,e,l){if(e.count++,e.instance===null)switch(e.type){case"style":var n=t.querySelector('style[data-href~="'+ge(l.href)+'"]');if(n)return e.instance=n,Xt(n),n;var a=x({},l,{"data-href":l.href,"data-precedence":l.precedence,href:null,precedence:null});return n=(t.ownerDocument||t).createElement("style"),Xt(n),Jt(n,"style",a),Iu(n,l.precedence,t),e.instance=n;case"stylesheet":a=Ln(l.href);var u=t.querySelector(Da(a));if(u)return e.state.loading|=4,e.instance=u,Xt(u),u;n=cd(l),(a=Re.get(a))&&Bs(n,a),u=(t.ownerDocument||t).createElement("link"),Xt(u);var f=u;return f._p=new Promise(function(h,m){f.onload=h,f.onerror=m}),Jt(u,"link",n),e.state.loading|=4,Iu(u,l.precedence,t),e.instance=u;case"script":return u=Yn(l.src),(a=t.querySelector(Ua(u)))?(e.instance=a,Xt(a),a):(n=l,(a=Re.get(u))&&(n=x({},l),Hs(n,a)),t=t.ownerDocument||t,a=t.createElement("script"),Xt(a),Jt(a,"link",n),t.head.appendChild(a),e.instance=a);case"void":return null;default:throw Error(r(443,e.type))}else e.type==="stylesheet"&&(e.state.loading&4)===0&&(n=e.instance,e.state.loading|=4,Iu(n,l.precedence,t));return e.instance}function Iu(t,e,l){for(var n=l.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=n.length?n[n.length-1]:null,u=a,f=0;f title"):null)}function qp(t,e,l){if(l===1||e.itemProp!=null)return!1;switch(t){case"meta":case"title":return!0;case"style":if(typeof e.precedence!="string"||typeof e.href!="string"||e.href==="")break;return!0;case"link":if(typeof e.rel!="string"||typeof e.href!="string"||e.href===""||e.onLoad||e.onError)break;switch(e.rel){case"stylesheet":return t=e.disabled,typeof e.precedence=="string"&&t==null;default:return!0}case"script":if(e.async&&typeof e.async!="function"&&typeof e.async!="symbol"&&!e.onLoad&&!e.onError&&e.src&&typeof e.src=="string")return!0}return!1}function od(t){return!(t.type==="stylesheet"&&(t.state.loading&3)===0)}function wp(t,e,l,n){if(l.type==="stylesheet"&&(typeof n.media!="string"||matchMedia(n.media).matches!==!1)&&(l.state.loading&4)===0){if(l.instance===null){var a=Ln(n.href),u=e.querySelector(Da(a));if(u){e=u._p,e!==null&&typeof e=="object"&&typeof e.then=="function"&&(t.count++,t=ei.bind(t),e.then(t,t)),l.state.loading|=4,l.instance=u,Xt(u);return}u=e.ownerDocument||e,n=cd(n),(a=Re.get(a))&&Bs(n,a),u=u.createElement("link"),Xt(u);var f=u;f._p=new Promise(function(h,m){f.onload=h,f.onerror=m}),Jt(u,"link",n),l.instance=u}t.stylesheets===null&&(t.stylesheets=new Map),t.stylesheets.set(l,e),(e=l.state.preload)&&(l.state.loading&3)===0&&(t.count++,l=ei.bind(t),e.addEventListener("load",l),e.addEventListener("error",l))}}var qs=0;function jp(t,e){return t.stylesheets&&t.count===0&&ni(t,t.stylesheets),0qs?50:800)+e);return t.unsuspend=l,function(){t.unsuspend=null,clearTimeout(n),clearTimeout(a)}}:null}function ei(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)ni(this,this.stylesheets);else if(this.unsuspend){var t=this.unsuspend;this.unsuspend=null,t()}}}var li=null;function ni(t,e){t.stylesheets=null,t.unsuspend!==null&&(t.count++,li=new Map,e.forEach(Lp,t),li=null,ei.call(t))}function Lp(t,e){if(!(e.state.loading&4)){var l=li.get(t);if(l)var n=l.get(null);else{l=new Map,li.set(t,l);for(var a=t.querySelectorAll("link[data-precedence],style[data-precedence]"),u=0;u"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(c)}catch(i){console.error(i)}}return c(),Zs.exports=e0(),Zs.exports}var n0=l0();var Hd="popstate";function a0(c={}){function i(r,o){let{pathname:d,search:y,hash:E}=r.location;return tr("",{pathname:d,search:y,hash:E},o.state&&o.state.usr||null,o.state&&o.state.key||"default")}function s(r,o){return typeof o=="string"?o:Qa(o)}return i0(i,s,null,c)}function xt(c,i){if(c===!1||c===null||typeof c>"u")throw new Error(i)}function Ue(c,i){if(!c){typeof console<"u"&&console.warn(i);try{throw new Error(i)}catch{}}}function u0(){return Math.random().toString(36).substring(2,10)}function qd(c,i){return{usr:c.state,key:c.key,idx:i}}function tr(c,i,s=null,r){return{pathname:typeof c=="string"?c:c.pathname,search:"",hash:"",...typeof i=="string"?Gn(i):i,state:s,key:i&&i.key||r||u0()}}function Qa({pathname:c="/",search:i="",hash:s=""}){return i&&i!=="?"&&(c+=i.charAt(0)==="?"?i:"?"+i),s&&s!=="#"&&(c+=s.charAt(0)==="#"?s:"#"+s),c}function Gn(c){let i={};if(c){let s=c.indexOf("#");s>=0&&(i.hash=c.substring(s),c=c.substring(0,s));let r=c.indexOf("?");r>=0&&(i.search=c.substring(r),c=c.substring(0,r)),c&&(i.pathname=c)}return i}function i0(c,i,s,r={}){let{window:o=document.defaultView,v5Compat:d=!1}=r,y=o.history,E="POP",p=null,v=z();v==null&&(v=0,y.replaceState({...y.state,idx:v},""));function z(){return(y.state||{idx:null}).idx}function x(){E="POP";let V=z(),Q=V==null?null:V-v;v=V,p&&p({action:E,location:J.location,delta:Q})}function H(V,Q){E="PUSH";let Z=tr(J.location,V,Q);v=z()+1;let $=qd(Z,v),Tt=J.createHref(Z);try{y.pushState($,"",Tt)}catch(Rt){if(Rt instanceof DOMException&&Rt.name==="DataCloneError")throw Rt;o.location.assign(Tt)}d&&p&&p({action:E,location:J.location,delta:1})}function G(V,Q){E="REPLACE";let Z=tr(J.location,V,Q);v=z();let $=qd(Z,v),Tt=J.createHref(Z);y.replaceState($,"",Tt),d&&p&&p({action:E,location:J.location,delta:0})}function X(V){return c0(V)}let J={get action(){return E},get location(){return c(o,y)},listen(V){if(p)throw new Error("A history only accepts one active listener");return o.addEventListener(Hd,x),p=V,()=>{o.removeEventListener(Hd,x),p=null}},createHref(V){return i(o,V)},createURL:X,encodeLocation(V){let Q=X(V);return{pathname:Q.pathname,search:Q.search,hash:Q.hash}},push:H,replace:G,go(V){return y.go(V)}};return J}function c0(c,i=!1){let s="http://localhost";typeof window<"u"&&(s=window.location.origin!=="null"?window.location.origin:window.location.href),xt(s,"No window.location.(origin|href) available to create URL");let r=typeof c=="string"?c:Qa(c);return r=r.replace(/ $/,"%20"),!i&&r.startsWith("//")&&(r=s+r),new URL(r,s)}function Kd(c,i,s="/"){return s0(c,i,s,!1)}function s0(c,i,s,r){let o=typeof i=="string"?Gn(i):i,d=cl(o.pathname||"/",s);if(d==null)return null;let y=Jd(c);r0(y);let E=null;for(let p=0;E==null&&p{let z={relativePath:v===void 0?y.path||"":v,caseSensitive:y.caseSensitive===!0,childrenIndex:E,route:y};if(z.relativePath.startsWith("/")){if(!z.relativePath.startsWith(r)&&p)return;xt(z.relativePath.startsWith(r),`Absolute route path "${z.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),z.relativePath=z.relativePath.slice(r.length)}let x=il([r,z.relativePath]),H=s.concat(z);y.children&&y.children.length>0&&(xt(y.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${x}".`),Jd(y.children,i,H,x,p)),!(y.path==null&&!y.index)&&i.push({path:x,score:p0(x,y.index),routesMeta:H})};return c.forEach((y,E)=>{if(y.path===""||!y.path?.includes("?"))d(y,E);else for(let p of kd(y.path))d(y,E,!0,p)}),i}function kd(c){let i=c.split("/");if(i.length===0)return[];let[s,...r]=i,o=s.endsWith("?"),d=s.replace(/\?$/,"");if(r.length===0)return o?[d,""]:[d];let y=kd(r.join("/")),E=[];return E.push(...y.map(p=>p===""?d:[d,p].join("/"))),o&&E.push(...y),E.map(p=>c.startsWith("/")&&p===""?"/":p)}function r0(c){c.sort((i,s)=>i.score!==s.score?s.score-i.score:v0(i.routesMeta.map(r=>r.childrenIndex),s.routesMeta.map(r=>r.childrenIndex)))}var f0=/^:[\w-]+$/,o0=3,h0=2,d0=1,m0=10,y0=-2,wd=c=>c==="*";function p0(c,i){let s=c.split("/"),r=s.length;return s.some(wd)&&(r+=y0),i&&(r+=h0),s.filter(o=>!wd(o)).reduce((o,d)=>o+(f0.test(d)?o0:d===""?d0:m0),r)}function v0(c,i){return c.length===i.length&&c.slice(0,-1).every((r,o)=>r===i[o])?c[c.length-1]-i[i.length-1]:0}function g0(c,i,s=!1){let{routesMeta:r}=c,o={},d="/",y=[];for(let E=0;E{if(z==="*"){let X=E[H]||"";y=d.slice(0,d.length-X.length).replace(/(.)\/+$/,"$1")}const G=E[H];return x&&!G?v[z]=void 0:v[z]=(G||"").replace(/%2F/g,"/"),v},{}),pathname:d,pathnameBase:y,pattern:c}}function b0(c,i=!1,s=!0){Ue(c==="*"||!c.endsWith("*")||c.endsWith("/*"),`Route path "${c}" will be treated as if it were "${c.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${c.replace(/\*$/,"/*")}".`);let r=[],o="^"+c.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(y,E,p)=>(r.push({paramName:E,isOptional:p!=null}),p?"/?([^\\/]+)?":"/([^\\/]+)")).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return c.endsWith("*")?(r.push({paramName:"*"}),o+=c==="*"||c==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):s?o+="\\/*$":c!==""&&c!=="/"&&(o+="(?:(?=\\/|$))"),[new RegExp(o,i?void 0:"i"),r]}function S0(c){try{return c.split("/").map(i=>decodeURIComponent(i).replace(/\//g,"%2F")).join("/")}catch(i){return Ue(!1,`The URL path "${c}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${i}).`),c}}function cl(c,i){if(i==="/")return c;if(!c.toLowerCase().startsWith(i.toLowerCase()))return null;let s=i.endsWith("/")?i.length-1:i.length,r=c.charAt(s);return r&&r!=="/"?null:c.slice(s)||"/"}var E0=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,_0=c=>E0.test(c);function T0(c,i="/"){let{pathname:s,search:r="",hash:o=""}=typeof c=="string"?Gn(c):c,d;if(s)if(_0(s))d=s;else{if(s.includes("//")){let y=s;s=s.replace(/\/\/+/g,"/"),Ue(!1,`Pathnames cannot have embedded double slashes - normalizing ${y} -> ${s}`)}s.startsWith("/")?d=jd(s.substring(1),"/"):d=jd(s,i)}else d=i;return{pathname:d,search:R0(r),hash:O0(o)}}function jd(c,i){let s=i.replace(/\/+$/,"").split("/");return c.split("/").forEach(o=>{o===".."?s.length>1&&s.pop():o!=="."&&s.push(o)}),s.length>1?s.join("/"):"/"}function $s(c,i,s,r){return`Cannot include a '${c}' character in a manually specified \`to.${i}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${s}\` field. Alternatively you may provide the full path as a string in and the router will parse it for you.`}function A0(c){return c.filter((i,s)=>s===0||i.route.path&&i.route.path.length>0)}function $d(c){let i=A0(c);return i.map((s,r)=>r===i.length-1?s.pathname:s.pathnameBase)}function Wd(c,i,s,r=!1){let o;typeof c=="string"?o=Gn(c):(o={...c},xt(!o.pathname||!o.pathname.includes("?"),$s("?","pathname","search",o)),xt(!o.pathname||!o.pathname.includes("#"),$s("#","pathname","hash",o)),xt(!o.search||!o.search.includes("#"),$s("#","search","hash",o)));let d=c===""||o.pathname==="",y=d?"/":o.pathname,E;if(y==null)E=s;else{let x=i.length-1;if(!r&&y.startsWith("..")){let H=y.split("/");for(;H[0]==="..";)H.shift(),x-=1;o.pathname=H.join("/")}E=x>=0?i[x]:"/"}let p=T0(o,E),v=y&&y!=="/"&&y.endsWith("/"),z=(d||y===".")&&s.endsWith("/");return!p.pathname.endsWith("/")&&(v||z)&&(p.pathname+="/"),p}var il=c=>c.join("/").replace(/\/\/+/g,"/"),x0=c=>c.replace(/\/+$/,"").replace(/^\/*/,"/"),R0=c=>!c||c==="?"?"":c.startsWith("?")?c:"?"+c,O0=c=>!c||c==="#"?"":c.startsWith("#")?c:"#"+c;function z0(c){return c!=null&&typeof c.status=="number"&&typeof c.statusText=="string"&&typeof c.internal=="boolean"&&"data"in c}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var Fd=["POST","PUT","PATCH","DELETE"];new Set(Fd);var C0=["GET",...Fd];new Set(C0);var Qn=O.createContext(null);Qn.displayName="DataRouter";var Ei=O.createContext(null);Ei.displayName="DataRouterState";O.createContext(!1);var Pd=O.createContext({isTransitioning:!1});Pd.displayName="ViewTransition";var N0=O.createContext(new Map);N0.displayName="Fetchers";var M0=O.createContext(null);M0.displayName="Await";var Ye=O.createContext(null);Ye.displayName="Navigation";var Va=O.createContext(null);Va.displayName="Location";var sl=O.createContext({outlet:null,matches:[],isDataRoute:!1});sl.displayName="Route";var fr=O.createContext(null);fr.displayName="RouteError";function D0(c,{relative:i}={}){xt(Za(),"useHref() may be used only in the context of a component.");let{basename:s,navigator:r}=O.useContext(Ye),{hash:o,pathname:d,search:y}=Ka(c,{relative:i}),E=d;return s!=="/"&&(E=d==="/"?s:il([s,d])),r.createHref({pathname:E,search:y,hash:o})}function Za(){return O.useContext(Va)!=null}function ln(){return xt(Za(),"useLocation() may be used only in the context of a component."),O.useContext(Va).location}var Id="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function tm(c){O.useContext(Ye).static||O.useLayoutEffect(c)}function U0(){let{isDataRoute:c}=O.useContext(sl);return c?K0():B0()}function B0(){xt(Za(),"useNavigate() may be used only in the context of a component.");let c=O.useContext(Qn),{basename:i,navigator:s}=O.useContext(Ye),{matches:r}=O.useContext(sl),{pathname:o}=ln(),d=JSON.stringify($d(r)),y=O.useRef(!1);return tm(()=>{y.current=!0}),O.useCallback((p,v={})=>{if(Ue(y.current,Id),!y.current)return;if(typeof p=="number"){s.go(p);return}let z=Wd(p,JSON.parse(d),o,v.relative==="path");c==null&&i!=="/"&&(z.pathname=z.pathname==="/"?i:il([i,z.pathname])),(v.replace?s.replace:s.push)(z,v.state,v)},[i,s,d,o,c])}O.createContext(null);function Ka(c,{relative:i}={}){let{matches:s}=O.useContext(sl),{pathname:r}=ln(),o=JSON.stringify($d(s));return O.useMemo(()=>Wd(c,JSON.parse(o),r,i==="path"),[c,o,r,i])}function H0(c,i){return em(c,i)}function em(c,i,s,r,o){xt(Za(),"useRoutes() may be used only in the context of a component.");let{navigator:d}=O.useContext(Ye),{matches:y}=O.useContext(sl),E=y[y.length-1],p=E?E.params:{},v=E?E.pathname:"/",z=E?E.pathnameBase:"/",x=E&&E.route;{let Z=x&&x.path||"";lm(v,!x||Z.endsWith("*")||Z.endsWith("*?"),`You rendered descendant (or called \`useRoutes()\`) at "${v}" (under ) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render. + +Please change the parent to .`)}let H=ln(),G;if(i){let Z=typeof i=="string"?Gn(i):i;xt(z==="/"||Z.pathname?.startsWith(z),`When overriding the location using \`\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${z}" but pathname "${Z.pathname}" was given in the \`location\` prop.`),G=Z}else G=H;let X=G.pathname||"/",J=X;if(z!=="/"){let Z=z.replace(/^\//,"").split("/");J="/"+X.replace(/^\//,"").split("/").slice(Z.length).join("/")}let V=Kd(c,{pathname:J});Ue(x||V!=null,`No routes matched location "${G.pathname}${G.search}${G.hash}" `),Ue(V==null||V[V.length-1].route.element!==void 0||V[V.length-1].route.Component!==void 0||V[V.length-1].route.lazy!==void 0,`Matched leaf route at location "${G.pathname}${G.search}${G.hash}" does not have an element or Component. This means it will render an with a null value by default resulting in an "empty" page.`);let Q=Y0(V&&V.map(Z=>Object.assign({},Z,{params:Object.assign({},p,Z.params),pathname:il([z,d.encodeLocation?d.encodeLocation(Z.pathname.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:Z.pathname]),pathnameBase:Z.pathnameBase==="/"?z:il([z,d.encodeLocation?d.encodeLocation(Z.pathnameBase.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:Z.pathnameBase])})),y,s,r,o);return i&&Q?O.createElement(Va.Provider,{value:{location:{pathname:"/",search:"",hash:"",state:null,key:"default",...G},navigationType:"POP"}},Q):Q}function q0(){let c=Z0(),i=z0(c)?`${c.status} ${c.statusText}`:c instanceof Error?c.message:JSON.stringify(c),s=c instanceof Error?c.stack:null,r="rgba(200,200,200, 0.5)",o={padding:"0.5rem",backgroundColor:r},d={padding:"2px 4px",backgroundColor:r},y=null;return console.error("Error handled by React Router default ErrorBoundary:",c),y=O.createElement(O.Fragment,null,O.createElement("p",null,"💿 Hey developer 👋"),O.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",O.createElement("code",{style:d},"ErrorBoundary")," or"," ",O.createElement("code",{style:d},"errorElement")," prop on your route.")),O.createElement(O.Fragment,null,O.createElement("h2",null,"Unexpected Application Error!"),O.createElement("h3",{style:{fontStyle:"italic"}},i),s?O.createElement("pre",{style:o},s):null,y)}var w0=O.createElement(q0,null),j0=class extends O.Component{constructor(c){super(c),this.state={location:c.location,revalidation:c.revalidation,error:c.error}}static getDerivedStateFromError(c){return{error:c}}static getDerivedStateFromProps(c,i){return i.location!==c.location||i.revalidation!=="idle"&&c.revalidation==="idle"?{error:c.error,location:c.location,revalidation:c.revalidation}:{error:c.error!==void 0?c.error:i.error,location:i.location,revalidation:c.revalidation||i.revalidation}}componentDidCatch(c,i){this.props.onError?this.props.onError(c,i):console.error("React Router caught the following error during render",c)}render(){return this.state.error!==void 0?O.createElement(sl.Provider,{value:this.props.routeContext},O.createElement(fr.Provider,{value:this.state.error,children:this.props.component})):this.props.children}};function L0({routeContext:c,match:i,children:s}){let r=O.useContext(Qn);return r&&r.static&&r.staticContext&&(i.route.errorElement||i.route.ErrorBoundary)&&(r.staticContext._deepestRenderedBoundaryId=i.route.id),O.createElement(sl.Provider,{value:c},s)}function Y0(c,i=[],s=null,r=null,o=null){if(c==null){if(!s)return null;if(s.errors)c=s.matches;else if(i.length===0&&!s.initialized&&s.matches.length>0)c=s.matches;else return null}let d=c,y=s?.errors;if(y!=null){let z=d.findIndex(x=>x.route.id&&y?.[x.route.id]!==void 0);xt(z>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(y).join(",")}`),d=d.slice(0,Math.min(d.length,z+1))}let E=!1,p=-1;if(s)for(let z=0;z=0?d=d.slice(0,p+1):d=[d[0]];break}}}let v=s&&r?(z,x)=>{r(z,{location:s.location,params:s.matches?.[0]?.params??{},errorInfo:x})}:void 0;return d.reduceRight((z,x,H)=>{let G,X=!1,J=null,V=null;s&&(G=y&&x.route.id?y[x.route.id]:void 0,J=x.route.errorElement||w0,E&&(p<0&&H===0?(lm("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),X=!0,V=null):p===H&&(X=!0,V=x.route.hydrateFallbackElement||null)));let Q=i.concat(d.slice(0,H+1)),Z=()=>{let $;return G?$=J:X?$=V:x.route.Component?$=O.createElement(x.route.Component,null):x.route.element?$=x.route.element:$=z,O.createElement(L0,{match:x,routeContext:{outlet:z,matches:Q,isDataRoute:s!=null},children:$})};return s&&(x.route.ErrorBoundary||x.route.errorElement||H===0)?O.createElement(j0,{location:s.location,revalidation:s.revalidation,component:J,error:G,children:Z(),routeContext:{outlet:null,matches:Q,isDataRoute:!0},onError:v}):Z()},null)}function or(c){return`${c} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function X0(c){let i=O.useContext(Qn);return xt(i,or(c)),i}function G0(c){let i=O.useContext(Ei);return xt(i,or(c)),i}function Q0(c){let i=O.useContext(sl);return xt(i,or(c)),i}function hr(c){let i=Q0(c),s=i.matches[i.matches.length-1];return xt(s.route.id,`${c} can only be used on routes that contain a unique "id"`),s.route.id}function V0(){return hr("useRouteId")}function Z0(){let c=O.useContext(fr),i=G0("useRouteError"),s=hr("useRouteError");return c!==void 0?c:i.errors?.[s]}function K0(){let{router:c}=X0("useNavigate"),i=hr("useNavigate"),s=O.useRef(!1);return tm(()=>{s.current=!0}),O.useCallback(async(o,d={})=>{Ue(s.current,Id),s.current&&(typeof o=="number"?c.navigate(o):await c.navigate(o,{fromRouteId:i,...d}))},[c,i])}var Ld={};function lm(c,i,s){!i&&!Ld[c]&&(Ld[c]=!0,Ue(!1,s))}O.memo(J0);function J0({routes:c,future:i,state:s,unstable_onError:r}){return em(c,void 0,s,r,i)}function er(c){xt(!1,"A is only ever to be used as the child of element, never rendered directly. Please wrap your in a .")}function k0({basename:c="/",children:i=null,location:s,navigationType:r="POP",navigator:o,static:d=!1}){xt(!Za(),"You cannot render a inside another . You should never have more than one in your app.");let y=c.replace(/^\/*/,"/"),E=O.useMemo(()=>({basename:y,navigator:o,static:d,future:{}}),[y,o,d]);typeof s=="string"&&(s=Gn(s));let{pathname:p="/",search:v="",hash:z="",state:x=null,key:H="default"}=s,G=O.useMemo(()=>{let X=cl(p,y);return X==null?null:{location:{pathname:X,search:v,hash:z,state:x,key:H},navigationType:r}},[y,p,v,z,x,H,r]);return Ue(G!=null,` is not able to match the URL "${p}${v}${z}" because it does not start with the basename, so the won't render anything.`),G==null?null:O.createElement(Ye.Provider,{value:E},O.createElement(Va.Provider,{children:i,value:G}))}function $0({children:c,location:i}){return H0(lr(c),i)}function lr(c,i=[]){let s=[];return O.Children.forEach(c,(r,o)=>{if(!O.isValidElement(r))return;let d=[...i,o];if(r.type===O.Fragment){s.push.apply(s,lr(r.props.children,d));return}xt(r.type===er,`[${typeof r.type=="string"?r.type:r.type.name}] is not a component. All component children of must be a or `),xt(!r.props.index||!r.props.children,"An index route cannot have child routes.");let y={id:r.props.id||d.join("-"),caseSensitive:r.props.caseSensitive,element:r.props.element,Component:r.props.Component,index:r.props.index,path:r.props.path,middleware:r.props.middleware,loader:r.props.loader,action:r.props.action,hydrateFallbackElement:r.props.hydrateFallbackElement,HydrateFallback:r.props.HydrateFallback,errorElement:r.props.errorElement,ErrorBoundary:r.props.ErrorBoundary,hasErrorBoundary:r.props.hasErrorBoundary===!0||r.props.ErrorBoundary!=null||r.props.errorElement!=null,shouldRevalidate:r.props.shouldRevalidate,handle:r.props.handle,lazy:r.props.lazy};r.props.children&&(y.children=lr(r.props.children,d)),s.push(y)}),s}var mi="get",yi="application/x-www-form-urlencoded";function _i(c){return c!=null&&typeof c.tagName=="string"}function W0(c){return _i(c)&&c.tagName.toLowerCase()==="button"}function F0(c){return _i(c)&&c.tagName.toLowerCase()==="form"}function P0(c){return _i(c)&&c.tagName.toLowerCase()==="input"}function I0(c){return!!(c.metaKey||c.altKey||c.ctrlKey||c.shiftKey)}function tv(c,i){return c.button===0&&(!i||i==="_self")&&!I0(c)}var oi=null;function ev(){if(oi===null)try{new FormData(document.createElement("form"),0),oi=!1}catch{oi=!0}return oi}var lv=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function Ws(c){return c!=null&&!lv.has(c)?(Ue(!1,`"${c}" is not a valid \`encType\` for \`
\`/\`\` and will default to "${yi}"`),null):c}function nv(c,i){let s,r,o,d,y;if(F0(c)){let E=c.getAttribute("action");r=E?cl(E,i):null,s=c.getAttribute("method")||mi,o=Ws(c.getAttribute("enctype"))||yi,d=new FormData(c)}else if(W0(c)||P0(c)&&(c.type==="submit"||c.type==="image")){let E=c.form;if(E==null)throw new Error('Cannot submit a + {isAdmin ? ( + + ) : ( + Auto-assigned + )} ))} diff --git a/webui/src/hooks/useSensorFeed.js b/webui/src/hooks/useSensorFeed.js new file mode 100644 index 00000000..ac6e8690 --- /dev/null +++ b/webui/src/hooks/useSensorFeed.js @@ -0,0 +1,29 @@ +import { useEffect, useState } from 'react'; +import { useSocket } from '../context/SocketContext.jsx'; + +export function useSensorFeed() { + const socket = useSocket(); + const [frames, setFrames] = useState({}); + + useEffect(() => { + function handleFrame({ roverId, sensors = {}, frame = {} }) { + if (!roverId) return; + setFrames((prev) => ({ + ...prev, + [roverId]: { + roverId, + sensors, + raw: frame?.data || null, + receivedAt: Date.now(), + }, + })); + } + + socket.on('sensorFrame', handleFrame); + return () => { + socket.off('sensorFrame', handleFrame); + }; + }, [socket]); + + return frames; +} diff --git a/webui/src/hooks/useSpectatorMode.js b/webui/src/hooks/useSpectatorMode.js new file mode 100644 index 00000000..5e892b0c --- /dev/null +++ b/webui/src/hooks/useSpectatorMode.js @@ -0,0 +1,30 @@ +import { useEffect, useState } from 'react'; +import { useSession } from '../context/SessionContext.jsx'; + +export function useSpectatorMode() { + const { session, setRole, subscribeAll } = useSession(); + const [ready, setReady] = useState(false); + + useEffect(() => { + let cancelled = false; + async function ensureSpectator() { + try { + if (session?.role !== 'spectator') { + await setRole('spectator'); + } + await subscribeAll(); + if (!cancelled) { + setReady(true); + } + } catch (err) { + console.error('Failed to enter spectator mode', err); + } + } + ensureSpectator(); + return () => { + cancelled = true; + }; + }, [session?.role, setRole, subscribeAll]); + + return ready; +} diff --git a/webui/src/hooks/useVideoRequests.js b/webui/src/hooks/useVideoRequests.js new file mode 100644 index 00000000..43927dfa --- /dev/null +++ b/webui/src/hooks/useVideoRequests.js @@ -0,0 +1,29 @@ +import { useEffect, useState } from 'react'; +import { useSocket } from '../context/SocketContext.jsx'; + +export function useVideoRequests(roverIds = []) { + const socket = useSocket(); + const [sources, setSources] = useState({}); + + useEffect(() => { + const ids = Array.from(new Set(roverIds.filter(Boolean))); + if (!ids.length) return; + let cancelled = false; + + ids.forEach((roverId) => { + socket.emit('video:request', { roverId }, (resp = {}) => { + if (cancelled) return; + setSources((prev) => ({ + ...prev, + [roverId]: resp, + })); + }); + }); + + return () => { + cancelled = true; + }; + }, [socket, roverIds.join('|')]); + + return sources; +} diff --git a/webui/src/main.jsx b/webui/src/main.jsx index 424fdb5d..5b3383f0 100644 --- a/webui/src/main.jsx +++ b/webui/src/main.jsx @@ -1,15 +1,22 @@ import { StrictMode } from 'react' import { createRoot } from 'react-dom/client' +import { BrowserRouter, Route, Routes } from 'react-router-dom' import './index.css' import App from './App.jsx' import { SocketProvider } from './context/SocketContext.jsx' import { SessionProvider } from './context/SessionContext.jsx' +import SpectatorApp from './spectate/SpectatorApp.jsx' createRoot(document.getElementById('root')).render( - + + + } /> + } /> + + , diff --git a/webui/src/spectate/SpectatorApp.jsx b/webui/src/spectate/SpectatorApp.jsx new file mode 100644 index 00000000..6e3a99f1 --- /dev/null +++ b/webui/src/spectate/SpectatorApp.jsx @@ -0,0 +1,138 @@ +import { useMemo } from 'react'; +import { useSession } from '../context/SessionContext.jsx'; +import { useSpectatorMode } from '../hooks/useSpectatorMode.js'; +import { useSensorFeed } from '../hooks/useSensorFeed.js'; +import { useVideoRequests } from '../hooks/useVideoRequests.js'; + +function SpectatorStatus({ connected, ready, rosterCount }) { + return ( +
+ + {connected ? 'Connected' : 'Disconnected'} + + + Spectator mode {ready ? 'active' : 'pending…'} + + + Rovers: {rosterCount} + +
+ ); +} + +function LogStream({ logs }) { + return ( +
+
+

Server logs

+ latest {logs.length} +
+
+ {logs.length === 0 ? ( +

No log entries yet.

+ ) : ( + logs + .slice() + .reverse() + .map((entry) => ( +
+ {entry.timestamp}{' '} + [{entry.level}]{' '} + {entry.label && [{entry.label}]}{' '} + {entry.message} +
+ )) + )} +
+
+ ); +} + +function formatSensors(sensors = {}) { + return Object.entries(sensors).map(([key, value]) => ({ + key, + value: typeof value === 'object' ? JSON.stringify(value) : value, + })); +} + +function RoverSpectatorCard({ rover, frame, videoInfo }) { + const sensorList = formatSensors(frame?.sensors); + return ( +
+
+

{rover.name}

+

+ {frame?.receivedAt ? `Updated ${new Date(frame.receivedAt).toLocaleTimeString()}` : 'Waiting for telemetry…'} +

+
+
+ {videoInfo?.error ? ( + Video error: {videoInfo.error} + ) : videoInfo?.url ? ( +
+

Video feed placeholder

+

WHEP URL: {videoInfo.url}

+

Token: {videoInfo.token || 'retrieving…'}

+
+ ) : ( + Requesting video session… + )} +
+
+

Telemetry

+ {sensorList.length === 0 ? ( +

No sensor data yet.

+ ) : ( +
+ {sensorList.map(({ key, value }) => ( +
+
{key}
+
{value}
+
+ ))} +
+ )} +
+
+ ); +} + +export default function SpectatorApp() { + const { connected, session, logs } = useSession(); + const spectatorReady = useSpectatorMode(); + const frames = useSensorFeed(); + const roster = session?.roster ?? []; + const videoSources = useVideoRequests(roster.map((rover) => rover.id)); + + const status = useMemo( + () => ({ connected, ready: spectatorReady, rosterCount: roster.length }), + [connected, spectatorReady, roster.length], + ); + + return ( +
+
+
+

Spectator Console

+

Live rover telemetry & logs. This view is read-only.

+ +
+
+ {roster.length === 0 ? ( +

No rovers registered.

+ ) : ( + roster.map((rover) => ( + + )) + )} +
+ +
+
+ ); +} From eb2e2b15d832f310360e1b128e8d9e5c7524df08 Mon Sep 17 00:00:00 2001 From: legop3 Date: Sat, 15 Nov 2025 05:20:22 -0500 Subject: [PATCH 09/61] vieo --- server/public/assets/index-Cbe_I3mP.css | 1 + server/public/assets/index-Cn-MOZwV.js | 11 ++++ server/public/assets/index-JJWJQzRI.css | 1 - server/public/assets/index-xwzFeHXC.js | 11 ---- server/public/index.html | 4 +- webui/src/App.jsx | 30 +++++++++++ webui/src/components/TelemetryPanel.jsx | 56 +++++++++++++++++++++ webui/src/components/VideoTile.jsx | 63 +++++++++++++++++++++++ webui/src/context/TelemetryContext.jsx | 42 ++++++++++++++++ webui/src/hooks/useSensorFeed.js | 29 ----------- webui/src/hooks/useVideoRequests.js | 13 ++++- webui/src/lib/whepPlayer.js | 67 +++++++++++++++++++++++++ webui/src/main.jsx | 15 +++--- webui/src/spectate/SpectatorApp.jsx | 19 ++----- 14 files changed, 296 insertions(+), 66 deletions(-) create mode 100644 server/public/assets/index-Cbe_I3mP.css create mode 100644 server/public/assets/index-Cn-MOZwV.js delete mode 100644 server/public/assets/index-JJWJQzRI.css delete mode 100644 server/public/assets/index-xwzFeHXC.js create mode 100644 webui/src/components/TelemetryPanel.jsx create mode 100644 webui/src/components/VideoTile.jsx create mode 100644 webui/src/context/TelemetryContext.jsx delete mode 100644 webui/src/hooks/useSensorFeed.js create mode 100644 webui/src/lib/whepPlayer.js diff --git a/server/public/assets/index-Cbe_I3mP.css b/server/public/assets/index-Cbe_I3mP.css new file mode 100644 index 00000000..a0234922 --- /dev/null +++ b/server/public/assets/index-Cbe_I3mP.css @@ -0,0 +1 @@ +*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.col-span-full{grid-column:1 / -1}.mx-auto{margin-left:auto;margin-right:auto}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.flex{display:flex}.grid{display:grid}.aspect-video{aspect-ratio:16 / 9}.h-60{height:15rem}.h-64{height:16rem}.h-full{height:100%}.max-h-32{max-height:8rem}.max-h-64{max-height:16rem}.min-h-screen{min-height:100vh}.w-full{width:100%}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-slate-700{--tw-border-opacity: 1;border-color:rgb(51 65 85 / var(--tw-border-opacity))}.border-slate-800{--tw-border-opacity: 1;border-color:rgb(30 41 59 / var(--tw-border-opacity))}.border-slate-800\/80{border-color:#1e293bcc}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity))}.bg-blue-600{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity))}.bg-blue-600\/40{background-color:#2563eb66}.bg-emerald-500\/20{background-color:#10b98133}.bg-emerald-600{--tw-bg-opacity: 1;background-color:rgb(5 150 105 / var(--tw-bg-opacity))}.bg-red-500\/20{background-color:#ef444433}.bg-red-600{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity))}.bg-slate-700{--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity))}.bg-slate-800{--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity))}.bg-slate-800\/80{background-color:#1e293bcc}.bg-slate-900\/60{background-color:#0f172a99}.bg-slate-900\/70{background-color:#0f172ab3}.bg-slate-950{--tw-bg-opacity: 1;background-color:rgb(2 6 23 / var(--tw-bg-opacity))}.bg-slate-950\/40{background-color:#02061766}.bg-slate-950\/50{background-color:#02061780}.bg-slate-950\/60{background-color:#02061799}.object-contain{-o-object-fit:contain;object-fit:contain}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.text-right{text-align:right}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.tracking-\[0\.2em\]{letter-spacing:.2em}.tracking-\[0\.3em\]{letter-spacing:.3em}.text-blue-100{--tw-text-opacity: 1;color:rgb(219 234 254 / var(--tw-text-opacity))}.text-cyan-300{--tw-text-opacity: 1;color:rgb(103 232 249 / var(--tw-text-opacity))}.text-emerald-200{--tw-text-opacity: 1;color:rgb(167 243 208 / var(--tw-text-opacity))}.text-emerald-300{--tw-text-opacity: 1;color:rgb(110 231 183 / var(--tw-text-opacity))}.text-lime-300{--tw-text-opacity: 1;color:rgb(190 242 100 / var(--tw-text-opacity))}.text-pink-300{--tw-text-opacity: 1;color:rgb(249 168 212 / var(--tw-text-opacity))}.text-red-200{--tw-text-opacity: 1;color:rgb(254 202 202 / var(--tw-text-opacity))}.text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity))}.text-slate-100{--tw-text-opacity: 1;color:rgb(241 245 249 / var(--tw-text-opacity))}.text-slate-200{--tw-text-opacity: 1;color:rgb(226 232 240 / var(--tw-text-opacity))}.text-slate-300{--tw-text-opacity: 1;color:rgb(203 213 225 / var(--tw-text-opacity))}.text-slate-400{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity))}.text-slate-50{--tw-text-opacity: 1;color:rgb(248 250 252 / var(--tw-text-opacity))}.text-slate-500{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity))}.text-teal-200{--tw-text-opacity: 1;color:rgb(153 246 228 / var(--tw-text-opacity))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#0f172a;background-color:#f8fafc}body{margin:0;min-height:100vh;background-color:#0f172a}.disabled\:opacity-50:disabled{opacity:.5}@media(min-width:1024px){.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}} diff --git a/server/public/assets/index-Cn-MOZwV.js b/server/public/assets/index-Cn-MOZwV.js new file mode 100644 index 00000000..c9f60fe8 --- /dev/null +++ b/server/public/assets/index-Cn-MOZwV.js @@ -0,0 +1,11 @@ +(function(){const u=document.createElement("link").relList;if(u&&u.supports&&u.supports("modulepreload"))return;for(const o of document.querySelectorAll('link[rel="modulepreload"]'))r(o);new MutationObserver(o=>{for(const d of o)if(d.type==="childList")for(const y of d.addedNodes)y.tagName==="LINK"&&y.rel==="modulepreload"&&r(y)}).observe(document,{childList:!0,subtree:!0});function c(o){const d={};return o.integrity&&(d.integrity=o.integrity),o.referrerPolicy&&(d.referrerPolicy=o.referrerPolicy),o.crossOrigin==="use-credentials"?d.credentials="include":o.crossOrigin==="anonymous"?d.credentials="omit":d.credentials="same-origin",d}function r(o){if(o.ep)return;o.ep=!0;const d=c(o);fetch(o.href,d)}})();var Qc={exports:{}},qa={};var Ad;function Pp(){if(Ad)return qa;Ad=1;var s=Symbol.for("react.transitional.element"),u=Symbol.for("react.fragment");function c(r,o,d){var y=null;if(d!==void 0&&(y=""+d),o.key!==void 0&&(y=""+o.key),"key"in o){d={};for(var S in o)S!=="key"&&(d[S]=o[S])}else d=o;return o=d.ref,{$$typeof:s,type:r,key:y,ref:o!==void 0?o:null,props:d}}return qa.Fragment=u,qa.jsx=c,qa.jsxs=c,qa}var Rd;function Ip(){return Rd||(Rd=1,Qc.exports=Pp()),Qc.exports}var z=Ip(),Vc={exports:{}},F={};var Od;function t0(){if(Od)return F;Od=1;var s=Symbol.for("react.transitional.element"),u=Symbol.for("react.portal"),c=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),o=Symbol.for("react.profiler"),d=Symbol.for("react.consumer"),y=Symbol.for("react.context"),S=Symbol.for("react.forward_ref"),p=Symbol.for("react.suspense"),v=Symbol.for("react.memo"),N=Symbol.for("react.lazy"),T=Symbol.for("react.activity"),w=Symbol.iterator;function G(b){return b===null||typeof b!="object"?null:(b=w&&b[w]||b["@@iterator"],typeof b=="function"?b:null)}var X={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},J=Object.assign,V={};function Q(b,B,H){this.props=b,this.context=B,this.refs=V,this.updater=H||X}Q.prototype.isReactComponent={},Q.prototype.setState=function(b,B){if(typeof b!="object"&&typeof b!="function"&&b!=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,b,B,"setState")},Q.prototype.forceUpdate=function(b){this.updater.enqueueForceUpdate(this,b,"forceUpdate")};function Z(){}Z.prototype=Q.prototype;function $(b,B,H){this.props=b,this.context=B,this.refs=V,this.updater=H||X}var xt=$.prototype=new Z;xt.constructor=$,J(xt,Q.prototype),xt.isPureReactComponent=!0;var Rt=Array.isArray;function qt(){}var tt={H:null,A:null,T:null,S:null},Lt=Object.prototype.hasOwnProperty;function Ot(b,B,H){var L=H.ref;return{$$typeof:s,type:b,key:B,ref:L!==void 0?L:null,props:H}}function ue(b,B){return Ot(b.type,B,b.props)}function ie(b){return typeof b=="object"&&b!==null&&b.$$typeof===s}function Ft(b){var B={"=":"=0",":":"=2"};return"$"+b.replace(/[=:]/g,function(H){return B[H]})}var jl=/\/+/g;function Ge(b,B){return typeof b=="object"&&b!==null&&b.key!=null?Ft(""+b.key):B.toString(36)}function ze(b){switch(b.status){case"fulfilled":return b.value;case"rejected":throw b.reason;default:switch(typeof b.status=="string"?b.then(qt,qt):(b.status="pending",b.then(function(B){b.status==="pending"&&(b.status="fulfilled",b.value=B)},function(B){b.status==="pending"&&(b.status="rejected",b.reason=B)})),b.status){case"fulfilled":return b.value;case"rejected":throw b.reason}}throw b}function D(b,B,H,L,P){var lt=typeof b;(lt==="undefined"||lt==="boolean")&&(b=null);var ht=!1;if(b===null)ht=!0;else switch(lt){case"bigint":case"string":case"number":ht=!0;break;case"object":switch(b.$$typeof){case s:case u:ht=!0;break;case N:return ht=b._init,D(ht(b._payload),B,H,L,P)}}if(ht)return P=P(b),ht=L===""?"."+Ge(b,0):L,Rt(P)?(H="",ht!=null&&(H=ht.replace(jl,"$&/")+"/"),D(P,B,H,"",function(Zn){return Zn})):P!=null&&(ie(P)&&(P=ue(P,H+(P.key==null||b&&b.key===P.key?"":(""+P.key).replace(jl,"$&/")+"/")+ht)),B.push(P)),1;ht=0;var $t=L===""?".":L+":";if(Rt(b))for(var Ct=0;Ct>>1,bt=D[yt];if(0>>1;yto(H,W))Lo(P,H)?(D[yt]=P,D[L]=W,yt=L):(D[yt]=H,D[B]=W,yt=B);else if(Lo(P,W))D[yt]=P,D[L]=W,yt=L;else break t}}return j}function o(D,j){var W=D.sortIndex-j.sortIndex;return W!==0?W:D.id-j.id}if(s.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var d=performance;s.unstable_now=function(){return d.now()}}else{var y=Date,S=y.now();s.unstable_now=function(){return y.now()-S}}var p=[],v=[],N=1,T=null,w=3,G=!1,X=!1,J=!1,V=!1,Q=typeof setTimeout=="function"?setTimeout:null,Z=typeof clearTimeout=="function"?clearTimeout:null,$=typeof setImmediate<"u"?setImmediate:null;function xt(D){for(var j=c(v);j!==null;){if(j.callback===null)r(v);else if(j.startTime<=D)r(v),j.sortIndex=j.expirationTime,u(p,j);else break;j=c(v)}}function Rt(D){if(J=!1,xt(D),!X)if(c(p)!==null)X=!0,qt||(qt=!0,Ft());else{var j=c(v);j!==null&&ze(Rt,j.startTime-D)}}var qt=!1,tt=-1,Lt=5,Ot=-1;function ue(){return V?!0:!(s.unstable_now()-OtD&&ue());){var yt=T.callback;if(typeof yt=="function"){T.callback=null,w=T.priorityLevel;var bt=yt(T.expirationTime<=D);if(D=s.unstable_now(),typeof bt=="function"){T.callback=bt,xt(D),j=!0;break e}T===c(p)&&r(p),xt(D)}else r(p);T=c(p)}if(T!==null)j=!0;else{var b=c(v);b!==null&&ze(Rt,b.startTime-D),j=!1}}break t}finally{T=null,w=W,G=!1}j=void 0}}finally{j?Ft():qt=!1}}}var Ft;if(typeof $=="function")Ft=function(){$(ie)};else if(typeof MessageChannel<"u"){var jl=new MessageChannel,Ge=jl.port2;jl.port1.onmessage=ie,Ft=function(){Ge.postMessage(null)}}else Ft=function(){Q(ie,0)};function ze(D,j){tt=Q(function(){D(s.unstable_now())},j)}s.unstable_IdlePriority=5,s.unstable_ImmediatePriority=1,s.unstable_LowPriority=4,s.unstable_NormalPriority=3,s.unstable_Profiling=null,s.unstable_UserBlockingPriority=2,s.unstable_cancelCallback=function(D){D.callback=null},s.unstable_forceFrameRate=function(D){0>D||125yt?(D.sortIndex=W,u(v,D),c(p)===null&&D===c(v)&&(J?(Z(tt),tt=-1):J=!0,ze(Rt,W-yt))):(D.sortIndex=bt,u(p,D),X||G||(X=!0,qt||(qt=!0,Ft()))),D},s.unstable_shouldYield=ue,s.unstable_wrapCallback=function(D){var j=w;return function(){var W=w;w=j;try{return D.apply(this,arguments)}finally{w=W}}}})(Jc)),Jc}var Cd;function l0(){return Cd||(Cd=1,Kc.exports=e0()),Kc.exports}var kc={exports:{}},kt={};var Dd;function n0(){if(Dd)return kt;Dd=1;var s=rr();function u(p){var v="https://react.dev/errors/"+p;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(s)}catch(u){console.error(u)}}return s(),kc.exports=n0(),kc.exports}var Ud;function u0(){if(Ud)return La;Ud=1;var s=l0(),u=rr(),c=a0();function r(t){var e="https://react.dev/errors/"+t;if(1bt||(t.current=yt[bt],yt[bt]=null,bt--)}function H(t,e){bt++,yt[bt]=t.current,t.current=e}var L=b(null),P=b(null),lt=b(null),ht=b(null);function $t(t,e){switch(H(lt,e),H(P,t),H(L,null),e.nodeType){case 9:case 11:t=(t=e.documentElement)&&(t=t.namespaceURI)?kh(t):0;break;default:if(t=e.tagName,e=e.namespaceURI)e=kh(e),t=$h(e,t);else switch(t){case"svg":t=1;break;case"math":t=2;break;default:t=0}}B(L),H(L,t)}function Ct(){B(L),B(P),B(lt)}function Zn(t){t.memoizedState!==null&&H(ht,t);var e=L.current,l=$h(e,t.type);e!==l&&(H(P,t),H(L,l))}function Ja(t){P.current===t&&(B(L),B(P)),ht.current===t&&(B(ht),Ba._currentValue=W)}var Ai,_r;function Hl(t){if(Ai===void 0)try{throw Error()}catch(l){var e=l.stack.trim().match(/\n( *(at )?)/);Ai=e&&e[1]||"",_r=-1)":-1a||m[n]!==x[a]){var C=` +`+m[n].replace(" at new "," at ");return t.displayName&&C.includes("")&&(C=C.replace("",t.displayName)),C}while(1<=n&&0<=a);break}}}finally{Ri=!1,Error.prepareStackTrace=l}return(l=t?t.displayName||t.name:"")?Hl(l):""}function Nm(t,e){switch(t.tag){case 26:case 27:case 5:return Hl(t.type);case 16:return Hl("Lazy");case 13:return t.child!==e&&e!==null?Hl("Suspense Fallback"):Hl("Suspense");case 19:return Hl("SuspenseList");case 0:case 15:return Oi(t.type,!1);case 11:return Oi(t.type.render,!1);case 1:return Oi(t.type,!0);case 31:return Hl("Activity");default:return""}}function xr(t){try{var e="",l=null;do e+=Nm(t,l),l=t,t=t.return;while(t);return e}catch(n){return` +Error generating stack: `+n.message+` +`+n.stack}}var zi=Object.prototype.hasOwnProperty,Ni=s.unstable_scheduleCallback,Ci=s.unstable_cancelCallback,Cm=s.unstable_shouldYield,Dm=s.unstable_requestPaint,se=s.unstable_now,Mm=s.unstable_getCurrentPriorityLevel,Tr=s.unstable_ImmediatePriority,Ar=s.unstable_UserBlockingPriority,ka=s.unstable_NormalPriority,Um=s.unstable_LowPriority,Rr=s.unstable_IdlePriority,Bm=s.log,wm=s.unstable_setDisableYieldValue,Kn=null,ce=null;function fl(t){if(typeof Bm=="function"&&wm(t),ce&&typeof ce.setStrictMode=="function")try{ce.setStrictMode(Kn,t)}catch{}}var re=Math.clz32?Math.clz32:qm,jm=Math.log,Hm=Math.LN2;function qm(t){return t>>>=0,t===0?32:31-(jm(t)/Hm|0)|0}var $a=256,Wa=262144,Fa=4194304;function ql(t){var e=t&42;if(e!==0)return e;switch(t&-t){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return t&261888;case 262144:case 524288:case 1048576:case 2097152:return t&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return t&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return t}}function Pa(t,e,l){var n=t.pendingLanes;if(n===0)return 0;var a=0,i=t.suspendedLanes,f=t.pingedLanes;t=t.warmLanes;var h=n&134217727;return h!==0?(n=h&~i,n!==0?a=ql(n):(f&=h,f!==0?a=ql(f):l||(l=h&~t,l!==0&&(a=ql(l))))):(h=n&~i,h!==0?a=ql(h):f!==0?a=ql(f):l||(l=n&~t,l!==0&&(a=ql(l)))),a===0?0:e!==0&&e!==a&&(e&i)===0&&(i=a&-a,l=e&-e,i>=l||i===32&&(l&4194048)!==0)?e:a}function Jn(t,e){return(t.pendingLanes&~(t.suspendedLanes&~t.pingedLanes)&e)===0}function Lm(t,e){switch(t){case 1:case 2:case 4:case 8:case 64:return e+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 e+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 Or(){var t=Fa;return Fa<<=1,(Fa&62914560)===0&&(Fa=4194304),t}function Di(t){for(var e=[],l=0;31>l;l++)e.push(t);return e}function kn(t,e){t.pendingLanes|=e,e!==268435456&&(t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0)}function Ym(t,e,l,n,a,i){var f=t.pendingLanes;t.pendingLanes=l,t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0,t.expiredLanes&=l,t.entangledLanes&=l,t.errorRecoveryDisabledLanes&=l,t.shellSuspendCounter=0;var h=t.entanglements,m=t.expirationTimes,x=t.hiddenUpdates;for(l=f&~l;0"u")return null;try{return t.activeElement||t.body}catch{return t.body}}var Km=/[\n"\\]/g;function ge(t){return t.replace(Km,function(e){return"\\"+e.charCodeAt(0).toString(16)+" "})}function Hi(t,e,l,n,a,i,f,h){t.name="",f!=null&&typeof f!="function"&&typeof f!="symbol"&&typeof f!="boolean"?t.type=f:t.removeAttribute("type"),e!=null?f==="number"?(e===0&&t.value===""||t.value!=e)&&(t.value=""+ve(e)):t.value!==""+ve(e)&&(t.value=""+ve(e)):f!=="submit"&&f!=="reset"||t.removeAttribute("value"),e!=null?qi(t,f,ve(e)):l!=null?qi(t,f,ve(l)):n!=null&&t.removeAttribute("value"),a==null&&i!=null&&(t.defaultChecked=!!i),a!=null&&(t.checked=a&&typeof a!="function"&&typeof a!="symbol"),h!=null&&typeof h!="function"&&typeof h!="symbol"&&typeof h!="boolean"?t.name=""+ve(h):t.removeAttribute("name")}function Yr(t,e,l,n,a,i,f,h){if(i!=null&&typeof i!="function"&&typeof i!="symbol"&&typeof i!="boolean"&&(t.type=i),e!=null||l!=null){if(!(i!=="submit"&&i!=="reset"||e!=null)){ji(t);return}l=l!=null?""+ve(l):"",e=e!=null?""+ve(e):l,h||e===t.value||(t.value=e),t.defaultValue=e}n=n??a,n=typeof n!="function"&&typeof n!="symbol"&&!!n,t.checked=h?t.checked:!!n,t.defaultChecked=!!n,f!=null&&typeof f!="function"&&typeof f!="symbol"&&typeof f!="boolean"&&(t.name=f),ji(t)}function qi(t,e,l){e==="number"&&eu(t.ownerDocument)===t||t.defaultValue===""+l||(t.defaultValue=""+l)}function rn(t,e,l,n){if(t=t.options,e){e={};for(var a=0;a"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Qi=!1;if(Ze)try{var Pn={};Object.defineProperty(Pn,"passive",{get:function(){Qi=!0}}),window.addEventListener("test",Pn,Pn),window.removeEventListener("test",Pn,Pn)}catch{Qi=!1}var hl=null,Vi=null,nu=null;function Jr(){if(nu)return nu;var t,e=Vi,l=e.length,n,a="value"in hl?hl.value:hl.textContent,i=a.length;for(t=0;t=ea),Ir=" ",tf=!1;function ef(t,e){switch(t){case"keyup":return Sy.indexOf(e.keyCode)!==-1;case"keydown":return e.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function lf(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var dn=!1;function _y(t,e){switch(t){case"compositionend":return lf(e);case"keypress":return e.which!==32?null:(tf=!0,Ir);case"textInput":return t=e.data,t===Ir&&tf?null:t;default:return null}}function xy(t,e){if(dn)return t==="compositionend"||!$i&&ef(t,e)?(t=Jr(),nu=Vi=hl=null,dn=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(e.ctrlKey||e.altKey||e.metaKey)||e.ctrlKey&&e.altKey){if(e.char&&1=e)return{node:l,offset:e-t};t=n}t:{for(;l;){if(l.nextSibling){l=l.nextSibling;break t}l=l.parentNode}l=void 0}l=of(l)}}function df(t,e){return t&&e?t===e?!0:t&&t.nodeType===3?!1:e&&e.nodeType===3?df(t,e.parentNode):"contains"in t?t.contains(e):t.compareDocumentPosition?!!(t.compareDocumentPosition(e)&16):!1:!1}function mf(t){t=t!=null&&t.ownerDocument!=null&&t.ownerDocument.defaultView!=null?t.ownerDocument.defaultView:window;for(var e=eu(t.document);e instanceof t.HTMLIFrameElement;){try{var l=typeof e.contentWindow.location.href=="string"}catch{l=!1}if(l)t=e.contentWindow;else break;e=eu(t.document)}return e}function Pi(t){var e=t&&t.nodeName&&t.nodeName.toLowerCase();return e&&(e==="input"&&(t.type==="text"||t.type==="search"||t.type==="tel"||t.type==="url"||t.type==="password")||e==="textarea"||t.contentEditable==="true")}var Dy=Ze&&"documentMode"in document&&11>=document.documentMode,mn=null,Ii=null,ua=null,ts=!1;function yf(t,e,l){var n=l.window===l?l.document:l.nodeType===9?l:l.ownerDocument;ts||mn==null||mn!==eu(n)||(n=mn,"selectionStart"in n&&Pi(n)?n={start:n.selectionStart,end:n.selectionEnd}:(n=(n.ownerDocument&&n.ownerDocument.defaultView||window).getSelection(),n={anchorNode:n.anchorNode,anchorOffset:n.anchorOffset,focusNode:n.focusNode,focusOffset:n.focusOffset}),ua&&aa(ua,n)||(ua=n,n=Wu(Ii,"onSelect"),0>=f,a-=f,Be=1<<32-re(e)+a|l<et?(it=Y,Y=null):it=Y.sibling;var ft=A(E,Y,_[et],M);if(ft===null){Y===null&&(Y=it);break}t&&Y&&ft.alternate===null&&e(E,Y),g=i(ft,g,et),rt===null?K=ft:rt.sibling=ft,rt=ft,Y=it}if(et===_.length)return l(E,Y),st&&Je(E,et),K;if(Y===null){for(;et<_.length;et++)Y=U(E,_[et],M),Y!==null&&(g=i(Y,g,et),rt===null?K=Y:rt.sibling=Y,rt=Y);return st&&Je(E,et),K}for(Y=n(Y);et<_.length;et++)it=O(Y,E,et,_[et],M),it!==null&&(t&&it.alternate!==null&&Y.delete(it.key===null?et:it.key),g=i(it,g,et),rt===null?K=it:rt.sibling=it,rt=it);return t&&Y.forEach(function(Bl){return e(E,Bl)}),st&&Je(E,et),K}function k(E,g,_,M){if(_==null)throw Error(r(151));for(var K=null,rt=null,Y=g,et=g=0,it=null,ft=_.next();Y!==null&&!ft.done;et++,ft=_.next()){Y.index>et?(it=Y,Y=null):it=Y.sibling;var Bl=A(E,Y,ft.value,M);if(Bl===null){Y===null&&(Y=it);break}t&&Y&&Bl.alternate===null&&e(E,Y),g=i(Bl,g,et),rt===null?K=Bl:rt.sibling=Bl,rt=Bl,Y=it}if(ft.done)return l(E,Y),st&&Je(E,et),K;if(Y===null){for(;!ft.done;et++,ft=_.next())ft=U(E,ft.value,M),ft!==null&&(g=i(ft,g,et),rt===null?K=ft:rt.sibling=ft,rt=ft);return st&&Je(E,et),K}for(Y=n(Y);!ft.done;et++,ft=_.next())ft=O(Y,E,et,ft.value,M),ft!==null&&(t&&ft.alternate!==null&&Y.delete(ft.key===null?et:ft.key),g=i(ft,g,et),rt===null?K=ft:rt.sibling=ft,rt=ft);return t&&Y.forEach(function(Fp){return e(E,Fp)}),st&&Je(E,et),K}function gt(E,g,_,M){if(typeof _=="object"&&_!==null&&_.type===J&&_.key===null&&(_=_.props.children),typeof _=="object"&&_!==null){switch(_.$$typeof){case G:t:{for(var K=_.key;g!==null;){if(g.key===K){if(K=_.type,K===J){if(g.tag===7){l(E,g.sibling),M=a(g,_.props.children),M.return=E,E=M;break t}}else if(g.elementType===K||typeof K=="object"&&K!==null&&K.$$typeof===Lt&&$l(K)===g.type){l(E,g.sibling),M=a(g,_.props),oa(M,_),M.return=E,E=M;break t}l(E,g);break}else e(E,g);g=g.sibling}_.type===J?(M=Vl(_.props.children,E.mode,M,_.key),M.return=E,E=M):(M=du(_.type,_.key,_.props,null,E.mode,M),oa(M,_),M.return=E,E=M)}return f(E);case X:t:{for(K=_.key;g!==null;){if(g.key===K)if(g.tag===4&&g.stateNode.containerInfo===_.containerInfo&&g.stateNode.implementation===_.implementation){l(E,g.sibling),M=a(g,_.children||[]),M.return=E,E=M;break t}else{l(E,g);break}else e(E,g);g=g.sibling}M=ss(_,E.mode,M),M.return=E,E=M}return f(E);case Lt:return _=$l(_),gt(E,g,_,M)}if(ze(_))return q(E,g,_,M);if(Ft(_)){if(K=Ft(_),typeof K!="function")throw Error(r(150));return _=K.call(_),k(E,g,_,M)}if(typeof _.then=="function")return gt(E,g,Su(_),M);if(_.$$typeof===$)return gt(E,g,pu(E,_),M);Eu(E,_)}return typeof _=="string"&&_!==""||typeof _=="number"||typeof _=="bigint"?(_=""+_,g!==null&&g.tag===6?(l(E,g.sibling),M=a(g,_),M.return=E,E=M):(l(E,g),M=is(_,E.mode,M),M.return=E,E=M),f(E)):l(E,g)}return function(E,g,_,M){try{fa=0;var K=gt(E,g,_,M);return An=null,K}catch(Y){if(Y===Tn||Y===gu)throw Y;var rt=oe(29,Y,null,E.mode);return rt.lanes=M,rt.return=E,rt}finally{}}}var Fl=qf(!0),Lf=qf(!1),vl=!1;function bs(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function Ss(t,e){t=t.updateQueue,e.updateQueue===t&&(e.updateQueue={baseState:t.baseState,firstBaseUpdate:t.firstBaseUpdate,lastBaseUpdate:t.lastBaseUpdate,shared:t.shared,callbacks:null})}function gl(t){return{lane:t,tag:0,payload:null,callback:null,next:null}}function bl(t,e,l){var n=t.updateQueue;if(n===null)return null;if(n=n.shared,(ot&2)!==0){var a=n.pending;return a===null?e.next=e:(e.next=a.next,a.next=e),n.pending=e,e=hu(t),_f(t,null,l),e}return ou(t,n,e,l),hu(t)}function ha(t,e,l){if(e=e.updateQueue,e!==null&&(e=e.shared,(l&4194048)!==0)){var n=e.lanes;n&=t.pendingLanes,l|=n,e.lanes=l,Nr(t,l)}}function Es(t,e){var l=t.updateQueue,n=t.alternate;if(n!==null&&(n=n.updateQueue,l===n)){var a=null,i=null;if(l=l.firstBaseUpdate,l!==null){do{var f={lane:l.lane,tag:l.tag,payload:l.payload,callback:null,next:null};i===null?a=i=f:i=i.next=f,l=l.next}while(l!==null);i===null?a=i=e:i=i.next=e}else a=i=e;l={baseState:n.baseState,firstBaseUpdate:a,lastBaseUpdate:i,shared:n.shared,callbacks:n.callbacks},t.updateQueue=l;return}t=l.lastBaseUpdate,t===null?l.firstBaseUpdate=e:t.next=e,l.lastBaseUpdate=e}var _s=!1;function da(){if(_s){var t=xn;if(t!==null)throw t}}function ma(t,e,l,n){_s=!1;var a=t.updateQueue;vl=!1;var i=a.firstBaseUpdate,f=a.lastBaseUpdate,h=a.shared.pending;if(h!==null){a.shared.pending=null;var m=h,x=m.next;m.next=null,f===null?i=x:f.next=x,f=m;var C=t.alternate;C!==null&&(C=C.updateQueue,h=C.lastBaseUpdate,h!==f&&(h===null?C.firstBaseUpdate=x:h.next=x,C.lastBaseUpdate=m))}if(i!==null){var U=a.baseState;f=0,C=x=m=null,h=i;do{var A=h.lane&-536870913,O=A!==h.lane;if(O?(ut&A)===A:(n&A)===A){A!==0&&A===_n&&(_s=!0),C!==null&&(C=C.next={lane:0,tag:h.tag,payload:h.payload,callback:null,next:null});t:{var q=t,k=h;A=e;var gt=l;switch(k.tag){case 1:if(q=k.payload,typeof q=="function"){U=q.call(gt,U,A);break t}U=q;break t;case 3:q.flags=q.flags&-65537|128;case 0:if(q=k.payload,A=typeof q=="function"?q.call(gt,U,A):q,A==null)break t;U=T({},U,A);break t;case 2:vl=!0}}A=h.callback,A!==null&&(t.flags|=64,O&&(t.flags|=8192),O=a.callbacks,O===null?a.callbacks=[A]:O.push(A))}else O={lane:A,tag:h.tag,payload:h.payload,callback:h.callback,next:null},C===null?(x=C=O,m=U):C=C.next=O,f|=A;if(h=h.next,h===null){if(h=a.shared.pending,h===null)break;O=h,h=O.next,O.next=null,a.lastBaseUpdate=O,a.shared.pending=null}}while(!0);C===null&&(m=U),a.baseState=m,a.firstBaseUpdate=x,a.lastBaseUpdate=C,i===null&&(a.shared.lanes=0),Tl|=f,t.lanes=f,t.memoizedState=U}}function Yf(t,e){if(typeof t!="function")throw Error(r(191,t));t.call(e)}function Xf(t,e){var l=t.callbacks;if(l!==null)for(t.callbacks=null,t=0;ti?i:8;var f=D.T,h={};D.T=h,Xs(t,!1,e,l);try{var m=a(),x=D.S;if(x!==null&&x(h,m),m!==null&&typeof m=="object"&&typeof m.then=="function"){var C=Yy(m,n);va(t,e,C,pe(t))}else va(t,e,n,pe(t))}catch(U){va(t,e,{then:function(){},status:"rejected",reason:U},pe())}finally{j.p=i,f!==null&&h.types!==null&&(f.types=h.types),D.T=f}}function Ky(){}function Ls(t,e,l,n){if(t.tag!==5)throw Error(r(476));var a=So(t).queue;bo(t,a,e,W,l===null?Ky:function(){return Eo(t),l(n)})}function So(t){var e=t.memoizedState;if(e!==null)return e;e={memoizedState:W,baseState:W,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Fe,lastRenderedState:W},next:null};var l={};return e.next={memoizedState:l,baseState:l,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Fe,lastRenderedState:l},next:null},t.memoizedState=e,t=t.alternate,t!==null&&(t.memoizedState=e),e}function Eo(t){var e=So(t);e.next===null&&(e=t.alternate.memoizedState),va(t,e.next.queue,{},pe())}function Ys(){return Zt(Ba)}function _o(){return Mt().memoizedState}function xo(){return Mt().memoizedState}function Jy(t){for(var e=t.return;e!==null;){switch(e.tag){case 24:case 3:var l=pe();t=gl(l);var n=bl(e,t,l);n!==null&&(ae(n,e,l),ha(n,e,l)),e={cache:ys()},t.payload=e;return}e=e.return}}function ky(t,e,l){var n=pe();l={lane:n,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},Du(t)?Ao(e,l):(l=as(t,e,l,n),l!==null&&(ae(l,t,n),Ro(l,e,n)))}function To(t,e,l){var n=pe();va(t,e,l,n)}function va(t,e,l,n){var a={lane:n,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null};if(Du(t))Ao(e,a);else{var i=t.alternate;if(t.lanes===0&&(i===null||i.lanes===0)&&(i=e.lastRenderedReducer,i!==null))try{var f=e.lastRenderedState,h=i(f,l);if(a.hasEagerState=!0,a.eagerState=h,fe(h,f))return ou(t,e,a,0),St===null&&fu(),!1}catch{}finally{}if(l=as(t,e,a,n),l!==null)return ae(l,t,n),Ro(l,e,n),!0}return!1}function Xs(t,e,l,n){if(n={lane:2,revertLane:bc(),gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},Du(t)){if(e)throw Error(r(479))}else e=as(t,l,n,2),e!==null&&ae(e,t,2)}function Du(t){var e=t.alternate;return t===I||e!==null&&e===I}function Ao(t,e){On=Tu=!0;var l=t.pending;l===null?e.next=e:(e.next=l.next,l.next=e),t.pending=e}function Ro(t,e,l){if((l&4194048)!==0){var n=e.lanes;n&=t.pendingLanes,l|=n,e.lanes=l,Nr(t,l)}}var ga={readContext:Zt,use:Ou,useCallback:zt,useContext:zt,useEffect:zt,useImperativeHandle:zt,useLayoutEffect:zt,useInsertionEffect:zt,useMemo:zt,useReducer:zt,useRef:zt,useState:zt,useDebugValue:zt,useDeferredValue:zt,useTransition:zt,useSyncExternalStore:zt,useId:zt,useHostTransitionStatus:zt,useFormState:zt,useActionState:zt,useOptimistic:zt,useMemoCache:zt,useCacheRefresh:zt};ga.useEffectEvent=zt;var Oo={readContext:Zt,use:Ou,useCallback:function(t,e){return Wt().memoizedState=[t,e===void 0?null:e],t},useContext:Zt,useEffect:ro,useImperativeHandle:function(t,e,l){l=l!=null?l.concat([t]):null,Nu(4194308,4,mo.bind(null,e,t),l)},useLayoutEffect:function(t,e){return Nu(4194308,4,t,e)},useInsertionEffect:function(t,e){Nu(4,2,t,e)},useMemo:function(t,e){var l=Wt();e=e===void 0?null:e;var n=t();if(Pl){fl(!0);try{t()}finally{fl(!1)}}return l.memoizedState=[n,e],n},useReducer:function(t,e,l){var n=Wt();if(l!==void 0){var a=l(e);if(Pl){fl(!0);try{l(e)}finally{fl(!1)}}}else a=e;return n.memoizedState=n.baseState=a,t={pending:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:a},n.queue=t,t=t.dispatch=ky.bind(null,I,t),[n.memoizedState,t]},useRef:function(t){var e=Wt();return t={current:t},e.memoizedState=t},useState:function(t){t=Bs(t);var e=t.queue,l=To.bind(null,I,e);return e.dispatch=l,[t.memoizedState,l]},useDebugValue:Hs,useDeferredValue:function(t,e){var l=Wt();return qs(l,t,e)},useTransition:function(){var t=Bs(!1);return t=bo.bind(null,I,t.queue,!0,!1),Wt().memoizedState=t,[!1,t]},useSyncExternalStore:function(t,e,l){var n=I,a=Wt();if(st){if(l===void 0)throw Error(r(407));l=l()}else{if(l=e(),St===null)throw Error(r(349));(ut&127)!==0||Jf(n,e,l)}a.memoizedState=l;var i={value:l,getSnapshot:e};return a.queue=i,ro($f.bind(null,n,i,t),[t]),n.flags|=2048,Nn(9,{destroy:void 0},kf.bind(null,n,i,l,e),null),l},useId:function(){var t=Wt(),e=St.identifierPrefix;if(st){var l=we,n=Be;l=(n&~(1<<32-re(n)-1)).toString(32)+l,e="_"+e+"R_"+l,l=Au++,0<\/script>",i=i.removeChild(i.firstChild);break;case"select":i=typeof n.is=="string"?f.createElement("select",{is:n.is}):f.createElement("select"),n.multiple?i.multiple=!0:n.size&&(i.size=n.size);break;default:i=typeof n.is=="string"?f.createElement(a,{is:n.is}):f.createElement(a)}}i[Qt]=e,i[Pt]=n;t:for(f=e.child;f!==null;){if(f.tag===5||f.tag===6)i.appendChild(f.stateNode);else if(f.tag!==4&&f.tag!==27&&f.child!==null){f.child.return=f,f=f.child;continue}if(f===e)break t;for(;f.sibling===null;){if(f.return===null||f.return===e)break t;f=f.return}f.sibling.return=f.return,f=f.sibling}e.stateNode=i;t:switch(Jt(i,a,n),a){case"button":case"input":case"select":case"textarea":n=!!n.autoFocus;break t;case"img":n=!0;break t;default:n=!1}n&&Ie(e)}}return _t(e),ec(e,e.type,t===null?null:t.memoizedProps,e.pendingProps,l),null;case 6:if(t&&e.stateNode!=null)t.memoizedProps!==n&&Ie(e);else{if(typeof n!="string"&&e.stateNode===null)throw Error(r(166));if(t=lt.current,Sn(e)){if(t=e.stateNode,l=e.memoizedProps,n=null,a=Vt,a!==null)switch(a.tag){case 27:case 5:n=a.memoizedProps}t[Qt]=e,t=!!(t.nodeValue===l||n!==null&&n.suppressHydrationWarning===!0||Kh(t.nodeValue,l)),t||yl(e,!0)}else t=Fu(t).createTextNode(n),t[Qt]=e,e.stateNode=t}return _t(e),null;case 31:if(l=e.memoizedState,t===null||t.memoizedState!==null){if(n=Sn(e),l!==null){if(t===null){if(!n)throw Error(r(318));if(t=e.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(r(557));t[Qt]=e}else Zl(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;_t(e),t=!1}else l=os(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=l),t=!0;if(!t)return e.flags&256?(de(e),e):(de(e),null);if((e.flags&128)!==0)throw Error(r(558))}return _t(e),null;case 13:if(n=e.memoizedState,t===null||t.memoizedState!==null&&t.memoizedState.dehydrated!==null){if(a=Sn(e),n!==null&&n.dehydrated!==null){if(t===null){if(!a)throw Error(r(318));if(a=e.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(r(317));a[Qt]=e}else Zl(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;_t(e),a=!1}else a=os(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=a),a=!0;if(!a)return e.flags&256?(de(e),e):(de(e),null)}return de(e),(e.flags&128)!==0?(e.lanes=l,e):(l=n!==null,t=t!==null&&t.memoizedState!==null,l&&(n=e.child,a=null,n.alternate!==null&&n.alternate.memoizedState!==null&&n.alternate.memoizedState.cachePool!==null&&(a=n.alternate.memoizedState.cachePool.pool),i=null,n.memoizedState!==null&&n.memoizedState.cachePool!==null&&(i=n.memoizedState.cachePool.pool),i!==a&&(n.flags|=2048)),l!==t&&l&&(e.child.flags|=8192),ju(e,e.updateQueue),_t(e),null);case 4:return Ct(),t===null&&xc(e.stateNode.containerInfo),_t(e),null;case 10:return $e(e.type),_t(e),null;case 19:if(B(Dt),n=e.memoizedState,n===null)return _t(e),null;if(a=(e.flags&128)!==0,i=n.rendering,i===null)if(a)Sa(n,!1);else{if(Nt!==0||t!==null&&(t.flags&128)!==0)for(t=e.child;t!==null;){if(i=xu(t),i!==null){for(e.flags|=128,Sa(n,!1),t=i.updateQueue,e.updateQueue=t,ju(e,t),e.subtreeFlags=0,t=l,l=e.child;l!==null;)xf(l,t),l=l.sibling;return H(Dt,Dt.current&1|2),st&&Je(e,n.treeForkCount),e.child}t=t.sibling}n.tail!==null&&se()>Xu&&(e.flags|=128,a=!0,Sa(n,!1),e.lanes=4194304)}else{if(!a)if(t=xu(i),t!==null){if(e.flags|=128,a=!0,t=t.updateQueue,e.updateQueue=t,ju(e,t),Sa(n,!0),n.tail===null&&n.tailMode==="hidden"&&!i.alternate&&!st)return _t(e),null}else 2*se()-n.renderingStartTime>Xu&&l!==536870912&&(e.flags|=128,a=!0,Sa(n,!1),e.lanes=4194304);n.isBackwards?(i.sibling=e.child,e.child=i):(t=n.last,t!==null?t.sibling=i:e.child=i,n.last=i)}return n.tail!==null?(t=n.tail,n.rendering=t,n.tail=t.sibling,n.renderingStartTime=se(),t.sibling=null,l=Dt.current,H(Dt,a?l&1|2:l&1),st&&Je(e,n.treeForkCount),t):(_t(e),null);case 22:case 23:return de(e),Ts(),n=e.memoizedState!==null,t!==null?t.memoizedState!==null!==n&&(e.flags|=8192):n&&(e.flags|=8192),n?(l&536870912)!==0&&(e.flags&128)===0&&(_t(e),e.subtreeFlags&6&&(e.flags|=8192)):_t(e),l=e.updateQueue,l!==null&&ju(e,l.retryQueue),l=null,t!==null&&t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(l=t.memoizedState.cachePool.pool),n=null,e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),n!==l&&(e.flags|=2048),t!==null&&B(kl),null;case 24:return l=null,t!==null&&(l=t.memoizedState.cache),e.memoizedState.cache!==l&&(e.flags|=2048),$e(Ut),_t(e),null;case 25:return null;case 30:return null}throw Error(r(156,e.tag))}function Iy(t,e){switch(rs(e),e.tag){case 1:return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 3:return $e(Ut),Ct(),t=e.flags,(t&65536)!==0&&(t&128)===0?(e.flags=t&-65537|128,e):null;case 26:case 27:case 5:return Ja(e),null;case 31:if(e.memoizedState!==null){if(de(e),e.alternate===null)throw Error(r(340));Zl()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 13:if(de(e),t=e.memoizedState,t!==null&&t.dehydrated!==null){if(e.alternate===null)throw Error(r(340));Zl()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 19:return B(Dt),null;case 4:return Ct(),null;case 10:return $e(e.type),null;case 22:case 23:return de(e),Ts(),t!==null&&B(kl),t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 24:return $e(Ut),null;case 25:return null;default:return null}}function Fo(t,e){switch(rs(e),e.tag){case 3:$e(Ut),Ct();break;case 26:case 27:case 5:Ja(e);break;case 4:Ct();break;case 31:e.memoizedState!==null&&de(e);break;case 13:de(e);break;case 19:B(Dt);break;case 10:$e(e.type);break;case 22:case 23:de(e),Ts(),t!==null&&B(kl);break;case 24:$e(Ut)}}function Ea(t,e){try{var l=e.updateQueue,n=l!==null?l.lastEffect:null;if(n!==null){var a=n.next;l=a;do{if((l.tag&t)===t){n=void 0;var i=l.create,f=l.inst;n=i(),f.destroy=n}l=l.next}while(l!==a)}}catch(h){mt(e,e.return,h)}}function _l(t,e,l){try{var n=e.updateQueue,a=n!==null?n.lastEffect:null;if(a!==null){var i=a.next;n=i;do{if((n.tag&t)===t){var f=n.inst,h=f.destroy;if(h!==void 0){f.destroy=void 0,a=e;var m=l,x=h;try{x()}catch(C){mt(a,m,C)}}}n=n.next}while(n!==i)}}catch(C){mt(e,e.return,C)}}function Po(t){var e=t.updateQueue;if(e!==null){var l=t.stateNode;try{Xf(e,l)}catch(n){mt(t,t.return,n)}}}function Io(t,e,l){l.props=Il(t.type,t.memoizedProps),l.state=t.memoizedState;try{l.componentWillUnmount()}catch(n){mt(t,e,n)}}function _a(t,e){try{var l=t.ref;if(l!==null){switch(t.tag){case 26:case 27:case 5:var n=t.stateNode;break;case 30:n=t.stateNode;break;default:n=t.stateNode}typeof l=="function"?t.refCleanup=l(n):l.current=n}}catch(a){mt(t,e,a)}}function je(t,e){var l=t.ref,n=t.refCleanup;if(l!==null)if(typeof n=="function")try{n()}catch(a){mt(t,e,a)}finally{t.refCleanup=null,t=t.alternate,t!=null&&(t.refCleanup=null)}else if(typeof l=="function")try{l(null)}catch(a){mt(t,e,a)}else l.current=null}function th(t){var e=t.type,l=t.memoizedProps,n=t.stateNode;try{t:switch(e){case"button":case"input":case"select":case"textarea":l.autoFocus&&n.focus();break t;case"img":l.src?n.src=l.src:l.srcSet&&(n.srcset=l.srcSet)}}catch(a){mt(t,t.return,a)}}function lc(t,e,l){try{var n=t.stateNode;Ep(n,t.type,l,e),n[Pt]=e}catch(a){mt(t,t.return,a)}}function eh(t){return t.tag===5||t.tag===3||t.tag===26||t.tag===27&&Nl(t.type)||t.tag===4}function nc(t){t:for(;;){for(;t.sibling===null;){if(t.return===null||eh(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.tag===27&&Nl(t.type)||t.flags&2||t.child===null||t.tag===4)continue t;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function ac(t,e,l){var n=t.tag;if(n===5||n===6)t=t.stateNode,e?(l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l).insertBefore(t,e):(e=l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l,e.appendChild(t),l=l._reactRootContainer,l!=null||e.onclick!==null||(e.onclick=Ve));else if(n!==4&&(n===27&&Nl(t.type)&&(l=t.stateNode,e=null),t=t.child,t!==null))for(ac(t,e,l),t=t.sibling;t!==null;)ac(t,e,l),t=t.sibling}function Hu(t,e,l){var n=t.tag;if(n===5||n===6)t=t.stateNode,e?l.insertBefore(t,e):l.appendChild(t);else if(n!==4&&(n===27&&Nl(t.type)&&(l=t.stateNode),t=t.child,t!==null))for(Hu(t,e,l),t=t.sibling;t!==null;)Hu(t,e,l),t=t.sibling}function lh(t){var e=t.stateNode,l=t.memoizedProps;try{for(var n=t.type,a=e.attributes;a.length;)e.removeAttributeNode(a[0]);Jt(e,n,l),e[Qt]=t,e[Pt]=l}catch(i){mt(t,t.return,i)}}var tl=!1,jt=!1,uc=!1,nh=typeof WeakSet=="function"?WeakSet:Set,Gt=null;function tp(t,e){if(t=t.containerInfo,Rc=ai,t=mf(t),Pi(t)){if("selectionStart"in t)var l={start:t.selectionStart,end:t.selectionEnd};else t:{l=(l=t.ownerDocument)&&l.defaultView||window;var n=l.getSelection&&l.getSelection();if(n&&n.rangeCount!==0){l=n.anchorNode;var a=n.anchorOffset,i=n.focusNode;n=n.focusOffset;try{l.nodeType,i.nodeType}catch{l=null;break t}var f=0,h=-1,m=-1,x=0,C=0,U=t,A=null;e:for(;;){for(var O;U!==l||a!==0&&U.nodeType!==3||(h=f+a),U!==i||n!==0&&U.nodeType!==3||(m=f+n),U.nodeType===3&&(f+=U.nodeValue.length),(O=U.firstChild)!==null;)A=U,U=O;for(;;){if(U===t)break e;if(A===l&&++x===a&&(h=f),A===i&&++C===n&&(m=f),(O=U.nextSibling)!==null)break;U=A,A=U.parentNode}U=O}l=h===-1||m===-1?null:{start:h,end:m}}else l=null}l=l||{start:0,end:0}}else l=null;for(Oc={focusedElem:t,selectionRange:l},ai=!1,Gt=e;Gt!==null;)if(e=Gt,t=e.child,(e.subtreeFlags&1028)!==0&&t!==null)t.return=e,Gt=t;else for(;Gt!==null;){switch(e=Gt,i=e.alternate,t=e.flags,e.tag){case 0:if((t&4)!==0&&(t=e.updateQueue,t=t!==null?t.events:null,t!==null))for(l=0;l title"))),Jt(i,n,l),i[Qt]=t,Xt(i),n=i;break t;case"link":var f=rd("link","href",a).get(n+(l.href||""));if(f){for(var h=0;hgt&&(f=gt,gt=k,k=f);var E=hf(h,k),g=hf(h,gt);if(E&&g&&(O.rangeCount!==1||O.anchorNode!==E.node||O.anchorOffset!==E.offset||O.focusNode!==g.node||O.focusOffset!==g.offset)){var _=U.createRange();_.setStart(E.node,E.offset),O.removeAllRanges(),k>gt?(O.addRange(_),O.extend(g.node,g.offset)):(_.setEnd(g.node,g.offset),O.addRange(_))}}}}for(U=[],O=h;O=O.parentNode;)O.nodeType===1&&U.push({element:O,left:O.scrollLeft,top:O.scrollTop});for(typeof h.focus=="function"&&h.focus(),h=0;hl?32:l,D.T=null,l=hc,hc=null;var i=Rl,f=ul;if(Yt=0,Bn=Rl=null,ul=0,(ot&6)!==0)throw Error(r(331));var h=ot;if(ot|=4,mh(i.current),oh(i,i.current,f,l),ot=h,za(0,!1),ce&&typeof ce.onPostCommitFiberRoot=="function")try{ce.onPostCommitFiberRoot(Kn,i)}catch{}return!0}finally{j.p=a,D.T=n,Mh(t,e)}}function Bh(t,e,l){e=Se(l,e),e=Zs(t.stateNode,e,2),t=bl(t,e,2),t!==null&&(kn(t,2),He(t))}function mt(t,e,l){if(t.tag===3)Bh(t,t,l);else for(;e!==null;){if(e.tag===3){Bh(e,t,l);break}else if(e.tag===1){var n=e.stateNode;if(typeof e.type.getDerivedStateFromError=="function"||typeof n.componentDidCatch=="function"&&(Al===null||!Al.has(n))){t=Se(l,t),l=wo(2),n=bl(e,l,2),n!==null&&(jo(l,n,e,t),kn(n,2),He(n));break}}e=e.return}}function pc(t,e,l){var n=t.pingCache;if(n===null){n=t.pingCache=new np;var a=new Set;n.set(e,a)}else a=n.get(e),a===void 0&&(a=new Set,n.set(e,a));a.has(l)||(cc=!0,a.add(l),t=cp.bind(null,t,e,l),e.then(t,t))}function cp(t,e,l){var n=t.pingCache;n!==null&&n.delete(e),t.pingedLanes|=t.suspendedLanes&l,t.warmLanes&=~l,St===t&&(ut&l)===l&&(Nt===4||Nt===3&&(ut&62914560)===ut&&300>se()-Yu?(ot&2)===0&&wn(t,0):rc|=l,Un===ut&&(Un=0)),He(t)}function wh(t,e){e===0&&(e=Or()),t=Ql(t,e),t!==null&&(kn(t,e),He(t))}function rp(t){var e=t.memoizedState,l=0;e!==null&&(l=e.retryLane),wh(t,l)}function fp(t,e){var l=0;switch(t.tag){case 31:case 13:var n=t.stateNode,a=t.memoizedState;a!==null&&(l=a.retryLane);break;case 19:n=t.stateNode;break;case 22:n=t.stateNode._retryCache;break;default:throw Error(r(314))}n!==null&&n.delete(e),wh(t,l)}function op(t,e){return Ni(t,e)}var Ju=null,Hn=null,vc=!1,ku=!1,gc=!1,zl=0;function He(t){t!==Hn&&t.next===null&&(Hn===null?Ju=Hn=t:Hn=Hn.next=t),ku=!0,vc||(vc=!0,dp())}function za(t,e){if(!gc&&ku){gc=!0;do for(var l=!1,n=Ju;n!==null;){if(t!==0){var a=n.pendingLanes;if(a===0)var i=0;else{var f=n.suspendedLanes,h=n.pingedLanes;i=(1<<31-re(42|t)+1)-1,i&=a&~(f&~h),i=i&201326741?i&201326741|1:i?i|2:0}i!==0&&(l=!0,Lh(n,i))}else i=ut,i=Pa(n,n===St?i:0,n.cancelPendingCommit!==null||n.timeoutHandle!==-1),(i&3)===0||Jn(n,i)||(l=!0,Lh(n,i));n=n.next}while(l);gc=!1}}function hp(){jh()}function jh(){ku=vc=!1;var t=0;zl!==0&&xp()&&(t=zl);for(var e=se(),l=null,n=Ju;n!==null;){var a=n.next,i=Hh(n,e);i===0?(n.next=null,l===null?Ju=a:l.next=a,a===null&&(Hn=l)):(l=n,(t!==0||(i&3)!==0)&&(ku=!0)),n=a}Yt!==0&&Yt!==5||za(t),zl!==0&&(zl=0)}function Hh(t,e){for(var l=t.suspendedLanes,n=t.pingedLanes,a=t.expirationTimes,i=t.pendingLanes&-62914561;0h)break;var C=m.transferSize,U=m.initiatorType;C&&Jh(U)&&(m=m.responseEnd,f+=C*(m"u"?null:document;function ud(t,e,l){var n=qn;if(n&&typeof e=="string"&&e){var a=ge(e);a='link[rel="'+t+'"][href="'+a+'"]',typeof l=="string"&&(a+='[crossorigin="'+l+'"]'),ad.has(a)||(ad.add(a),t={rel:t,crossOrigin:l,href:e},n.querySelector(a)===null&&(e=n.createElement("link"),Jt(e,"link",t),Xt(e),n.head.appendChild(e)))}}function Mp(t){il.D(t),ud("dns-prefetch",t,null)}function Up(t,e){il.C(t,e),ud("preconnect",t,e)}function Bp(t,e,l){il.L(t,e,l);var n=qn;if(n&&t&&e){var a='link[rel="preload"][as="'+ge(e)+'"]';e==="image"&&l&&l.imageSrcSet?(a+='[imagesrcset="'+ge(l.imageSrcSet)+'"]',typeof l.imageSizes=="string"&&(a+='[imagesizes="'+ge(l.imageSizes)+'"]')):a+='[href="'+ge(t)+'"]';var i=a;switch(e){case"style":i=Ln(t);break;case"script":i=Yn(t)}Re.has(i)||(t=T({rel:"preload",href:e==="image"&&l&&l.imageSrcSet?void 0:t,as:e},l),Re.set(i,t),n.querySelector(a)!==null||e==="style"&&n.querySelector(Ma(i))||e==="script"&&n.querySelector(Ua(i))||(e=n.createElement("link"),Jt(e,"link",t),Xt(e),n.head.appendChild(e)))}}function wp(t,e){il.m(t,e);var l=qn;if(l&&t){var n=e&&typeof e.as=="string"?e.as:"script",a='link[rel="modulepreload"][as="'+ge(n)+'"][href="'+ge(t)+'"]',i=a;switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":i=Yn(t)}if(!Re.has(i)&&(t=T({rel:"modulepreload",href:t},e),Re.set(i,t),l.querySelector(a)===null)){switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(l.querySelector(Ua(i)))return}n=l.createElement("link"),Jt(n,"link",t),Xt(n),l.head.appendChild(n)}}}function jp(t,e,l){il.S(t,e,l);var n=qn;if(n&&t){var a=sn(n).hoistableStyles,i=Ln(t);e=e||"default";var f=a.get(i);if(!f){var h={loading:0,preload:null};if(f=n.querySelector(Ma(i)))h.loading=5;else{t=T({rel:"stylesheet",href:t,"data-precedence":e},l),(l=Re.get(i))&&Bc(t,l);var m=f=n.createElement("link");Xt(m),Jt(m,"link",t),m._p=new Promise(function(x,C){m.onload=x,m.onerror=C}),m.addEventListener("load",function(){h.loading|=1}),m.addEventListener("error",function(){h.loading|=2}),h.loading|=4,Iu(f,e,n)}f={type:"stylesheet",instance:f,count:1,state:h},a.set(i,f)}}}function Hp(t,e){il.X(t,e);var l=qn;if(l&&t){var n=sn(l).hoistableScripts,a=Yn(t),i=n.get(a);i||(i=l.querySelector(Ua(a)),i||(t=T({src:t,async:!0},e),(e=Re.get(a))&&wc(t,e),i=l.createElement("script"),Xt(i),Jt(i,"link",t),l.head.appendChild(i)),i={type:"script",instance:i,count:1,state:null},n.set(a,i))}}function qp(t,e){il.M(t,e);var l=qn;if(l&&t){var n=sn(l).hoistableScripts,a=Yn(t),i=n.get(a);i||(i=l.querySelector(Ua(a)),i||(t=T({src:t,async:!0,type:"module"},e),(e=Re.get(a))&&wc(t,e),i=l.createElement("script"),Xt(i),Jt(i,"link",t),l.head.appendChild(i)),i={type:"script",instance:i,count:1,state:null},n.set(a,i))}}function id(t,e,l,n){var a=(a=lt.current)?Pu(a):null;if(!a)throw Error(r(446));switch(t){case"meta":case"title":return null;case"style":return typeof l.precedence=="string"&&typeof l.href=="string"?(e=Ln(l.href),l=sn(a).hoistableStyles,n=l.get(e),n||(n={type:"style",instance:null,count:0,state:null},l.set(e,n)),n):{type:"void",instance:null,count:0,state:null};case"link":if(l.rel==="stylesheet"&&typeof l.href=="string"&&typeof l.precedence=="string"){t=Ln(l.href);var i=sn(a).hoistableStyles,f=i.get(t);if(f||(a=a.ownerDocument||a,f={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},i.set(t,f),(i=a.querySelector(Ma(t)))&&!i._p&&(f.instance=i,f.state.loading=5),Re.has(t)||(l={rel:"preload",as:"style",href:l.href,crossOrigin:l.crossOrigin,integrity:l.integrity,media:l.media,hrefLang:l.hrefLang,referrerPolicy:l.referrerPolicy},Re.set(t,l),i||Lp(a,t,l,f.state))),e&&n===null)throw Error(r(528,""));return f}if(e&&n!==null)throw Error(r(529,""));return null;case"script":return e=l.async,l=l.src,typeof l=="string"&&e&&typeof e!="function"&&typeof e!="symbol"?(e=Yn(l),l=sn(a).hoistableScripts,n=l.get(e),n||(n={type:"script",instance:null,count:0,state:null},l.set(e,n)),n):{type:"void",instance:null,count:0,state:null};default:throw Error(r(444,t))}}function Ln(t){return'href="'+ge(t)+'"'}function Ma(t){return'link[rel="stylesheet"]['+t+"]"}function sd(t){return T({},t,{"data-precedence":t.precedence,precedence:null})}function Lp(t,e,l,n){t.querySelector('link[rel="preload"][as="style"]['+e+"]")?n.loading=1:(e=t.createElement("link"),n.preload=e,e.addEventListener("load",function(){return n.loading|=1}),e.addEventListener("error",function(){return n.loading|=2}),Jt(e,"link",l),Xt(e),t.head.appendChild(e))}function Yn(t){return'[src="'+ge(t)+'"]'}function Ua(t){return"script[async]"+t}function cd(t,e,l){if(e.count++,e.instance===null)switch(e.type){case"style":var n=t.querySelector('style[data-href~="'+ge(l.href)+'"]');if(n)return e.instance=n,Xt(n),n;var a=T({},l,{"data-href":l.href,"data-precedence":l.precedence,href:null,precedence:null});return n=(t.ownerDocument||t).createElement("style"),Xt(n),Jt(n,"style",a),Iu(n,l.precedence,t),e.instance=n;case"stylesheet":a=Ln(l.href);var i=t.querySelector(Ma(a));if(i)return e.state.loading|=4,e.instance=i,Xt(i),i;n=sd(l),(a=Re.get(a))&&Bc(n,a),i=(t.ownerDocument||t).createElement("link"),Xt(i);var f=i;return f._p=new Promise(function(h,m){f.onload=h,f.onerror=m}),Jt(i,"link",n),e.state.loading|=4,Iu(i,l.precedence,t),e.instance=i;case"script":return i=Yn(l.src),(a=t.querySelector(Ua(i)))?(e.instance=a,Xt(a),a):(n=l,(a=Re.get(i))&&(n=T({},l),wc(n,a)),t=t.ownerDocument||t,a=t.createElement("script"),Xt(a),Jt(a,"link",n),t.head.appendChild(a),e.instance=a);case"void":return null;default:throw Error(r(443,e.type))}else e.type==="stylesheet"&&(e.state.loading&4)===0&&(n=e.instance,e.state.loading|=4,Iu(n,l.precedence,t));return e.instance}function Iu(t,e,l){for(var n=l.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=n.length?n[n.length-1]:null,i=a,f=0;f title"):null)}function Yp(t,e,l){if(l===1||e.itemProp!=null)return!1;switch(t){case"meta":case"title":return!0;case"style":if(typeof e.precedence!="string"||typeof e.href!="string"||e.href==="")break;return!0;case"link":if(typeof e.rel!="string"||typeof e.href!="string"||e.href===""||e.onLoad||e.onError)break;switch(e.rel){case"stylesheet":return t=e.disabled,typeof e.precedence=="string"&&t==null;default:return!0}case"script":if(e.async&&typeof e.async!="function"&&typeof e.async!="symbol"&&!e.onLoad&&!e.onError&&e.src&&typeof e.src=="string")return!0}return!1}function od(t){return!(t.type==="stylesheet"&&(t.state.loading&3)===0)}function Xp(t,e,l,n){if(l.type==="stylesheet"&&(typeof n.media!="string"||matchMedia(n.media).matches!==!1)&&(l.state.loading&4)===0){if(l.instance===null){var a=Ln(n.href),i=e.querySelector(Ma(a));if(i){e=i._p,e!==null&&typeof e=="object"&&typeof e.then=="function"&&(t.count++,t=ei.bind(t),e.then(t,t)),l.state.loading|=4,l.instance=i,Xt(i);return}i=e.ownerDocument||e,n=sd(n),(a=Re.get(a))&&Bc(n,a),i=i.createElement("link"),Xt(i);var f=i;f._p=new Promise(function(h,m){f.onload=h,f.onerror=m}),Jt(i,"link",n),l.instance=i}t.stylesheets===null&&(t.stylesheets=new Map),t.stylesheets.set(l,e),(e=l.state.preload)&&(l.state.loading&3)===0&&(t.count++,l=ei.bind(t),e.addEventListener("load",l),e.addEventListener("error",l))}}var jc=0;function Gp(t,e){return t.stylesheets&&t.count===0&&ni(t,t.stylesheets),0jc?50:800)+e);return t.unsuspend=l,function(){t.unsuspend=null,clearTimeout(n),clearTimeout(a)}}:null}function ei(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)ni(this,this.stylesheets);else if(this.unsuspend){var t=this.unsuspend;this.unsuspend=null,t()}}}var li=null;function ni(t,e){t.stylesheets=null,t.unsuspend!==null&&(t.count++,li=new Map,e.forEach(Qp,t),li=null,ei.call(t))}function Qp(t,e){if(!(e.state.loading&4)){var l=li.get(t);if(l)var n=l.get(null);else{l=new Map,li.set(t,l);for(var a=t.querySelectorAll("link[data-precedence],style[data-precedence]"),i=0;i"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(s)}catch(u){console.error(u)}}return s(),Zc.exports=u0(),Zc.exports}var s0=i0();var wd="popstate";function c0(s={}){function u(r,o){let{pathname:d,search:y,hash:S}=r.location;return tr("",{pathname:d,search:y,hash:S},o.state&&o.state.usr||null,o.state&&o.state.key||"default")}function c(r,o){return typeof o=="string"?o:Qa(o)}return f0(u,c,null,s)}function At(s,u){if(s===!1||s===null||typeof s>"u")throw new Error(u)}function Ue(s,u){if(!s){typeof console<"u"&&console.warn(u);try{throw new Error(u)}catch{}}}function r0(){return Math.random().toString(36).substring(2,10)}function jd(s,u){return{usr:s.state,key:s.key,idx:u}}function tr(s,u,c=null,r){return{pathname:typeof s=="string"?s:s.pathname,search:"",hash:"",...typeof u=="string"?Gn(u):u,state:c,key:u&&u.key||r||r0()}}function Qa({pathname:s="/",search:u="",hash:c=""}){return u&&u!=="?"&&(s+=u.charAt(0)==="?"?u:"?"+u),c&&c!=="#"&&(s+=c.charAt(0)==="#"?c:"#"+c),s}function Gn(s){let u={};if(s){let c=s.indexOf("#");c>=0&&(u.hash=s.substring(c),s=s.substring(0,c));let r=s.indexOf("?");r>=0&&(u.search=s.substring(r),s=s.substring(0,r)),s&&(u.pathname=s)}return u}function f0(s,u,c,r={}){let{window:o=document.defaultView,v5Compat:d=!1}=r,y=o.history,S="POP",p=null,v=N();v==null&&(v=0,y.replaceState({...y.state,idx:v},""));function N(){return(y.state||{idx:null}).idx}function T(){S="POP";let V=N(),Q=V==null?null:V-v;v=V,p&&p({action:S,location:J.location,delta:Q})}function w(V,Q){S="PUSH";let Z=tr(J.location,V,Q);v=N()+1;let $=jd(Z,v),xt=J.createHref(Z);try{y.pushState($,"",xt)}catch(Rt){if(Rt instanceof DOMException&&Rt.name==="DataCloneError")throw Rt;o.location.assign(xt)}d&&p&&p({action:S,location:J.location,delta:1})}function G(V,Q){S="REPLACE";let Z=tr(J.location,V,Q);v=N();let $=jd(Z,v),xt=J.createHref(Z);y.replaceState($,"",xt),d&&p&&p({action:S,location:J.location,delta:0})}function X(V){return o0(V)}let J={get action(){return S},get location(){return s(o,y)},listen(V){if(p)throw new Error("A history only accepts one active listener");return o.addEventListener(wd,T),p=V,()=>{o.removeEventListener(wd,T),p=null}},createHref(V){return u(o,V)},createURL:X,encodeLocation(V){let Q=X(V);return{pathname:Q.pathname,search:Q.search,hash:Q.hash}},push:w,replace:G,go(V){return y.go(V)}};return J}function o0(s,u=!1){let c="http://localhost";typeof window<"u"&&(c=window.location.origin!=="null"?window.location.origin:window.location.href),At(c,"No window.location.(origin|href) available to create URL");let r=typeof s=="string"?s:Qa(s);return r=r.replace(/ $/,"%20"),!u&&r.startsWith("//")&&(r=c+r),new URL(r,c)}function Kd(s,u,c="/"){return h0(s,u,c,!1)}function h0(s,u,c,r){let o=typeof u=="string"?Gn(u):u,d=cl(o.pathname||"/",c);if(d==null)return null;let y=Jd(s);d0(y);let S=null;for(let p=0;S==null&&p{let N={relativePath:v===void 0?y.path||"":v,caseSensitive:y.caseSensitive===!0,childrenIndex:S,route:y};if(N.relativePath.startsWith("/")){if(!N.relativePath.startsWith(r)&&p)return;At(N.relativePath.startsWith(r),`Absolute route path "${N.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),N.relativePath=N.relativePath.slice(r.length)}let T=sl([r,N.relativePath]),w=c.concat(N);y.children&&y.children.length>0&&(At(y.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${T}".`),Jd(y.children,u,w,T,p)),!(y.path==null&&!y.index)&&u.push({path:T,score:S0(T,y.index),routesMeta:w})};return s.forEach((y,S)=>{if(y.path===""||!y.path?.includes("?"))d(y,S);else for(let p of kd(y.path))d(y,S,!0,p)}),u}function kd(s){let u=s.split("/");if(u.length===0)return[];let[c,...r]=u,o=c.endsWith("?"),d=c.replace(/\?$/,"");if(r.length===0)return o?[d,""]:[d];let y=kd(r.join("/")),S=[];return S.push(...y.map(p=>p===""?d:[d,p].join("/"))),o&&S.push(...y),S.map(p=>s.startsWith("/")&&p===""?"/":p)}function d0(s){s.sort((u,c)=>u.score!==c.score?c.score-u.score:E0(u.routesMeta.map(r=>r.childrenIndex),c.routesMeta.map(r=>r.childrenIndex)))}var m0=/^:[\w-]+$/,y0=3,p0=2,v0=1,g0=10,b0=-2,Hd=s=>s==="*";function S0(s,u){let c=s.split("/"),r=c.length;return c.some(Hd)&&(r+=b0),u&&(r+=p0),c.filter(o=>!Hd(o)).reduce((o,d)=>o+(m0.test(d)?y0:d===""?v0:g0),r)}function E0(s,u){return s.length===u.length&&s.slice(0,-1).every((r,o)=>r===u[o])?s[s.length-1]-u[u.length-1]:0}function _0(s,u,c=!1){let{routesMeta:r}=s,o={},d="/",y=[];for(let S=0;S{if(N==="*"){let X=S[w]||"";y=d.slice(0,d.length-X.length).replace(/(.)\/+$/,"$1")}const G=S[w];return T&&!G?v[N]=void 0:v[N]=(G||"").replace(/%2F/g,"/"),v},{}),pathname:d,pathnameBase:y,pattern:s}}function x0(s,u=!1,c=!0){Ue(s==="*"||!s.endsWith("*")||s.endsWith("/*"),`Route path "${s}" will be treated as if it were "${s.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${s.replace(/\*$/,"/*")}".`);let r=[],o="^"+s.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(y,S,p)=>(r.push({paramName:S,isOptional:p!=null}),p?"/?([^\\/]+)?":"/([^\\/]+)")).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return s.endsWith("*")?(r.push({paramName:"*"}),o+=s==="*"||s==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):c?o+="\\/*$":s!==""&&s!=="/"&&(o+="(?:(?=\\/|$))"),[new RegExp(o,u?void 0:"i"),r]}function T0(s){try{return s.split("/").map(u=>decodeURIComponent(u).replace(/\//g,"%2F")).join("/")}catch(u){return Ue(!1,`The URL path "${s}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${u}).`),s}}function cl(s,u){if(u==="/")return s;if(!s.toLowerCase().startsWith(u.toLowerCase()))return null;let c=u.endsWith("/")?u.length-1:u.length,r=s.charAt(c);return r&&r!=="/"?null:s.slice(c)||"/"}var A0=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,R0=s=>A0.test(s);function O0(s,u="/"){let{pathname:c,search:r="",hash:o=""}=typeof s=="string"?Gn(s):s,d;if(c)if(R0(c))d=c;else{if(c.includes("//")){let y=c;c=c.replace(/\/\/+/g,"/"),Ue(!1,`Pathnames cannot have embedded double slashes - normalizing ${y} -> ${c}`)}c.startsWith("/")?d=qd(c.substring(1),"/"):d=qd(c,u)}else d=u;return{pathname:d,search:C0(r),hash:D0(o)}}function qd(s,u){let c=u.replace(/\/+$/,"").split("/");return s.split("/").forEach(o=>{o===".."?c.length>1&&c.pop():o!=="."&&c.push(o)}),c.length>1?c.join("/"):"/"}function $c(s,u,c,r){return`Cannot include a '${s}' character in a manually specified \`to.${u}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${c}\` field. Alternatively you may provide the full path as a string in and the router will parse it for you.`}function z0(s){return s.filter((u,c)=>c===0||u.route.path&&u.route.path.length>0)}function $d(s){let u=z0(s);return u.map((c,r)=>r===u.length-1?c.pathname:c.pathnameBase)}function Wd(s,u,c,r=!1){let o;typeof s=="string"?o=Gn(s):(o={...s},At(!o.pathname||!o.pathname.includes("?"),$c("?","pathname","search",o)),At(!o.pathname||!o.pathname.includes("#"),$c("#","pathname","hash",o)),At(!o.search||!o.search.includes("#"),$c("#","search","hash",o)));let d=s===""||o.pathname==="",y=d?"/":o.pathname,S;if(y==null)S=c;else{let T=u.length-1;if(!r&&y.startsWith("..")){let w=y.split("/");for(;w[0]==="..";)w.shift(),T-=1;o.pathname=w.join("/")}S=T>=0?u[T]:"/"}let p=O0(o,S),v=y&&y!=="/"&&y.endsWith("/"),N=(d||y===".")&&c.endsWith("/");return!p.pathname.endsWith("/")&&(v||N)&&(p.pathname+="/"),p}var sl=s=>s.join("/").replace(/\/\/+/g,"/"),N0=s=>s.replace(/\/+$/,"").replace(/^\/*/,"/"),C0=s=>!s||s==="?"?"":s.startsWith("?")?s:"?"+s,D0=s=>!s||s==="#"?"":s.startsWith("#")?s:"#"+s;function M0(s){return s!=null&&typeof s.status=="number"&&typeof s.statusText=="string"&&typeof s.internal=="boolean"&&"data"in s}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var Fd=["POST","PUT","PATCH","DELETE"];new Set(Fd);var U0=["GET",...Fd];new Set(U0);var Qn=R.createContext(null);Qn.displayName="DataRouter";var Ei=R.createContext(null);Ei.displayName="DataRouterState";R.createContext(!1);var Pd=R.createContext({isTransitioning:!1});Pd.displayName="ViewTransition";var B0=R.createContext(new Map);B0.displayName="Fetchers";var w0=R.createContext(null);w0.displayName="Await";var Ye=R.createContext(null);Ye.displayName="Navigation";var Va=R.createContext(null);Va.displayName="Location";var rl=R.createContext({outlet:null,matches:[],isDataRoute:!1});rl.displayName="Route";var fr=R.createContext(null);fr.displayName="RouteError";function j0(s,{relative:u}={}){At(Za(),"useHref() may be used only in the context of a component.");let{basename:c,navigator:r}=R.useContext(Ye),{hash:o,pathname:d,search:y}=Ka(s,{relative:u}),S=d;return c!=="/"&&(S=d==="/"?c:sl([c,d])),r.createHref({pathname:S,search:y,hash:o})}function Za(){return R.useContext(Va)!=null}function ln(){return At(Za(),"useLocation() may be used only in the context of a component."),R.useContext(Va).location}var Id="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function tm(s){R.useContext(Ye).static||R.useLayoutEffect(s)}function H0(){let{isDataRoute:s}=R.useContext(rl);return s?W0():q0()}function q0(){At(Za(),"useNavigate() may be used only in the context of a component.");let s=R.useContext(Qn),{basename:u,navigator:c}=R.useContext(Ye),{matches:r}=R.useContext(rl),{pathname:o}=ln(),d=JSON.stringify($d(r)),y=R.useRef(!1);return tm(()=>{y.current=!0}),R.useCallback((p,v={})=>{if(Ue(y.current,Id),!y.current)return;if(typeof p=="number"){c.go(p);return}let N=Wd(p,JSON.parse(d),o,v.relative==="path");s==null&&u!=="/"&&(N.pathname=N.pathname==="/"?u:sl([u,N.pathname])),(v.replace?c.replace:c.push)(N,v.state,v)},[u,c,d,o,s])}R.createContext(null);function Ka(s,{relative:u}={}){let{matches:c}=R.useContext(rl),{pathname:r}=ln(),o=JSON.stringify($d(c));return R.useMemo(()=>Wd(s,JSON.parse(o),r,u==="path"),[s,o,r,u])}function L0(s,u){return em(s,u)}function em(s,u,c,r,o){At(Za(),"useRoutes() may be used only in the context of a component.");let{navigator:d}=R.useContext(Ye),{matches:y}=R.useContext(rl),S=y[y.length-1],p=S?S.params:{},v=S?S.pathname:"/",N=S?S.pathnameBase:"/",T=S&&S.route;{let Z=T&&T.path||"";lm(v,!T||Z.endsWith("*")||Z.endsWith("*?"),`You rendered descendant (or called \`useRoutes()\`) at "${v}" (under ) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render. + +Please change the parent to .`)}let w=ln(),G;if(u){let Z=typeof u=="string"?Gn(u):u;At(N==="/"||Z.pathname?.startsWith(N),`When overriding the location using \`\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${N}" but pathname "${Z.pathname}" was given in the \`location\` prop.`),G=Z}else G=w;let X=G.pathname||"/",J=X;if(N!=="/"){let Z=N.replace(/^\//,"").split("/");J="/"+X.replace(/^\//,"").split("/").slice(Z.length).join("/")}let V=Kd(s,{pathname:J});Ue(T||V!=null,`No routes matched location "${G.pathname}${G.search}${G.hash}" `),Ue(V==null||V[V.length-1].route.element!==void 0||V[V.length-1].route.Component!==void 0||V[V.length-1].route.lazy!==void 0,`Matched leaf route at location "${G.pathname}${G.search}${G.hash}" does not have an element or Component. This means it will render an with a null value by default resulting in an "empty" page.`);let Q=V0(V&&V.map(Z=>Object.assign({},Z,{params:Object.assign({},p,Z.params),pathname:sl([N,d.encodeLocation?d.encodeLocation(Z.pathname.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:Z.pathname]),pathnameBase:Z.pathnameBase==="/"?N:sl([N,d.encodeLocation?d.encodeLocation(Z.pathnameBase.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:Z.pathnameBase])})),y,c,r,o);return u&&Q?R.createElement(Va.Provider,{value:{location:{pathname:"/",search:"",hash:"",state:null,key:"default",...G},navigationType:"POP"}},Q):Q}function Y0(){let s=$0(),u=M0(s)?`${s.status} ${s.statusText}`:s instanceof Error?s.message:JSON.stringify(s),c=s instanceof Error?s.stack:null,r="rgba(200,200,200, 0.5)",o={padding:"0.5rem",backgroundColor:r},d={padding:"2px 4px",backgroundColor:r},y=null;return console.error("Error handled by React Router default ErrorBoundary:",s),y=R.createElement(R.Fragment,null,R.createElement("p",null,"💿 Hey developer 👋"),R.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",R.createElement("code",{style:d},"ErrorBoundary")," or"," ",R.createElement("code",{style:d},"errorElement")," prop on your route.")),R.createElement(R.Fragment,null,R.createElement("h2",null,"Unexpected Application Error!"),R.createElement("h3",{style:{fontStyle:"italic"}},u),c?R.createElement("pre",{style:o},c):null,y)}var X0=R.createElement(Y0,null),G0=class extends R.Component{constructor(s){super(s),this.state={location:s.location,revalidation:s.revalidation,error:s.error}}static getDerivedStateFromError(s){return{error:s}}static getDerivedStateFromProps(s,u){return u.location!==s.location||u.revalidation!=="idle"&&s.revalidation==="idle"?{error:s.error,location:s.location,revalidation:s.revalidation}:{error:s.error!==void 0?s.error:u.error,location:u.location,revalidation:s.revalidation||u.revalidation}}componentDidCatch(s,u){this.props.onError?this.props.onError(s,u):console.error("React Router caught the following error during render",s)}render(){return this.state.error!==void 0?R.createElement(rl.Provider,{value:this.props.routeContext},R.createElement(fr.Provider,{value:this.state.error,children:this.props.component})):this.props.children}};function Q0({routeContext:s,match:u,children:c}){let r=R.useContext(Qn);return r&&r.static&&r.staticContext&&(u.route.errorElement||u.route.ErrorBoundary)&&(r.staticContext._deepestRenderedBoundaryId=u.route.id),R.createElement(rl.Provider,{value:s},c)}function V0(s,u=[],c=null,r=null,o=null){if(s==null){if(!c)return null;if(c.errors)s=c.matches;else if(u.length===0&&!c.initialized&&c.matches.length>0)s=c.matches;else return null}let d=s,y=c?.errors;if(y!=null){let N=d.findIndex(T=>T.route.id&&y?.[T.route.id]!==void 0);At(N>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(y).join(",")}`),d=d.slice(0,Math.min(d.length,N+1))}let S=!1,p=-1;if(c)for(let N=0;N=0?d=d.slice(0,p+1):d=[d[0]];break}}}let v=c&&r?(N,T)=>{r(N,{location:c.location,params:c.matches?.[0]?.params??{},errorInfo:T})}:void 0;return d.reduceRight((N,T,w)=>{let G,X=!1,J=null,V=null;c&&(G=y&&T.route.id?y[T.route.id]:void 0,J=T.route.errorElement||X0,S&&(p<0&&w===0?(lm("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),X=!0,V=null):p===w&&(X=!0,V=T.route.hydrateFallbackElement||null)));let Q=u.concat(d.slice(0,w+1)),Z=()=>{let $;return G?$=J:X?$=V:T.route.Component?$=R.createElement(T.route.Component,null):T.route.element?$=T.route.element:$=N,R.createElement(Q0,{match:T,routeContext:{outlet:N,matches:Q,isDataRoute:c!=null},children:$})};return c&&(T.route.ErrorBoundary||T.route.errorElement||w===0)?R.createElement(G0,{location:c.location,revalidation:c.revalidation,component:J,error:G,children:Z(),routeContext:{outlet:null,matches:Q,isDataRoute:!0},onError:v}):Z()},null)}function or(s){return`${s} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function Z0(s){let u=R.useContext(Qn);return At(u,or(s)),u}function K0(s){let u=R.useContext(Ei);return At(u,or(s)),u}function J0(s){let u=R.useContext(rl);return At(u,or(s)),u}function hr(s){let u=J0(s),c=u.matches[u.matches.length-1];return At(c.route.id,`${s} can only be used on routes that contain a unique "id"`),c.route.id}function k0(){return hr("useRouteId")}function $0(){let s=R.useContext(fr),u=K0("useRouteError"),c=hr("useRouteError");return s!==void 0?s:u.errors?.[c]}function W0(){let{router:s}=Z0("useNavigate"),u=hr("useNavigate"),c=R.useRef(!1);return tm(()=>{c.current=!0}),R.useCallback(async(o,d={})=>{Ue(c.current,Id),c.current&&(typeof o=="number"?s.navigate(o):await s.navigate(o,{fromRouteId:u,...d}))},[s,u])}var Ld={};function lm(s,u,c){!u&&!Ld[s]&&(Ld[s]=!0,Ue(!1,c))}R.memo(F0);function F0({routes:s,future:u,state:c,unstable_onError:r}){return em(s,void 0,c,r,u)}function er(s){At(!1,"A is only ever to be used as the child of element, never rendered directly. Please wrap your in a .")}function P0({basename:s="/",children:u=null,location:c,navigationType:r="POP",navigator:o,static:d=!1}){At(!Za(),"You cannot render a inside another . You should never have more than one in your app.");let y=s.replace(/^\/*/,"/"),S=R.useMemo(()=>({basename:y,navigator:o,static:d,future:{}}),[y,o,d]);typeof c=="string"&&(c=Gn(c));let{pathname:p="/",search:v="",hash:N="",state:T=null,key:w="default"}=c,G=R.useMemo(()=>{let X=cl(p,y);return X==null?null:{location:{pathname:X,search:v,hash:N,state:T,key:w},navigationType:r}},[y,p,v,N,T,w,r]);return Ue(G!=null,` is not able to match the URL "${p}${v}${N}" because it does not start with the basename, so the won't render anything.`),G==null?null:R.createElement(Ye.Provider,{value:S},R.createElement(Va.Provider,{children:u,value:G}))}function I0({children:s,location:u}){return L0(lr(s),u)}function lr(s,u=[]){let c=[];return R.Children.forEach(s,(r,o)=>{if(!R.isValidElement(r))return;let d=[...u,o];if(r.type===R.Fragment){c.push.apply(c,lr(r.props.children,d));return}At(r.type===er,`[${typeof r.type=="string"?r.type:r.type.name}] is not a component. All component children of must be a or `),At(!r.props.index||!r.props.children,"An index route cannot have child routes.");let y={id:r.props.id||d.join("-"),caseSensitive:r.props.caseSensitive,element:r.props.element,Component:r.props.Component,index:r.props.index,path:r.props.path,middleware:r.props.middleware,loader:r.props.loader,action:r.props.action,hydrateFallbackElement:r.props.hydrateFallbackElement,HydrateFallback:r.props.HydrateFallback,errorElement:r.props.errorElement,ErrorBoundary:r.props.ErrorBoundary,hasErrorBoundary:r.props.hasErrorBoundary===!0||r.props.ErrorBoundary!=null||r.props.errorElement!=null,shouldRevalidate:r.props.shouldRevalidate,handle:r.props.handle,lazy:r.props.lazy};r.props.children&&(y.children=lr(r.props.children,d)),c.push(y)}),c}var mi="get",yi="application/x-www-form-urlencoded";function _i(s){return s!=null&&typeof s.tagName=="string"}function tv(s){return _i(s)&&s.tagName.toLowerCase()==="button"}function ev(s){return _i(s)&&s.tagName.toLowerCase()==="form"}function lv(s){return _i(s)&&s.tagName.toLowerCase()==="input"}function nv(s){return!!(s.metaKey||s.altKey||s.ctrlKey||s.shiftKey)}function av(s,u){return s.button===0&&(!u||u==="_self")&&!nv(s)}var oi=null;function uv(){if(oi===null)try{new FormData(document.createElement("form"),0),oi=!1}catch{oi=!0}return oi}var iv=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function Wc(s){return s!=null&&!iv.has(s)?(Ue(!1,`"${s}" is not a valid \`encType\` for \`\`/\`\` and will default to "${yi}"`),null):s}function sv(s,u){let c,r,o,d,y;if(ev(s)){let S=s.getAttribute("action");r=S?cl(S,u):null,c=s.getAttribute("method")||mi,o=Wc(s.getAttribute("enctype"))||yi,d=new FormData(s)}else if(tv(s)||lv(s)&&(s.type==="submit"||s.type==="image")){let S=s.form;if(S==null)throw new Error('Cannot submit a + + + +

+ Keep this tab focused to drive. Keyboard input is ignored while typing in form fields. +

+ + ); +} diff --git a/webui/src/hooks/useDriveControls.js b/webui/src/hooks/useDriveControls.js new file mode 100644 index 00000000..e2c53af6 --- /dev/null +++ b/webui/src/hooks/useDriveControls.js @@ -0,0 +1,152 @@ +import { useCallback, useEffect, useRef, useState } from 'react'; +import { useSocket } from '../context/SocketContext.jsx'; +import { useSession } from '../context/SessionContext.jsx'; + +function clamp(value, min, max) { + return Math.max(min, Math.min(max, value)); +} + +function computeSpeeds(keys) { + const forward = keys.has('w'); + const backward = keys.has('s'); + const left = keys.has('a'); + const right = keys.has('d'); + const fast = keys.has('shift'); + const base = fast ? 300 : 150; + let leftSpeed = 0; + let rightSpeed = 0; + + if (forward && !backward) { + leftSpeed += base; + rightSpeed += base; + } else if (backward && !forward) { + leftSpeed -= base; + rightSpeed -= base; + } + + if (left && !right) { + leftSpeed -= base; + rightSpeed += base; + } else if (right && !left) { + leftSpeed += base; + rightSpeed -= base; + } + + if (!forward && !backward && (left || right)) { + leftSpeed = left ? -base : base; + rightSpeed = left ? base : -base; + } + + return { + left: clamp(leftSpeed, -500, 500), + right: clamp(rightSpeed, -500, 500), + }; +} + +function shouldIgnoreEvent(event) { + const target = event.target; + if (!target) return false; + const tag = target.tagName; + return ( + tag === 'INPUT' || + tag === 'TEXTAREA' || + target.isContentEditable || + (tag === 'SELECT' && ['w', 'a', 's', 'd', 'Shift'].includes(event.key)) + ); +} + +export function useDriveControls() { + const socket = useSocket(); + const { session } = useSession(); + const roverId = session?.assignment?.roverId; + const keysRef = useRef(new Set()); + const lastSpeedsRef = useRef({ left: 0, right: 0 }); + const [currentSpeeds, setCurrentSpeeds] = useState(lastSpeedsRef.current); + const [sensorEnabled, setSensorEnabled] = useState(false); + + const emitCommand = useCallback( + (payload, cb) => { + if (!roverId) return; + socket.emit('command', { roverId, ...payload }, cb); + }, + [socket, roverId], + ); + + const sendDriveUpdate = useCallback(() => { + if (!roverId) return; + const speeds = computeSpeeds(keysRef.current); + const last = lastSpeedsRef.current; + if (speeds.left === last.left && speeds.right === last.right) return; + lastSpeedsRef.current = speeds; + setCurrentSpeeds(speeds); + emitCommand({ + type: 'drive', + data: { driveDirect: speeds }, + }); + }, [emitCommand, roverId]); + + const stopMotors = useCallback(() => { + if (!roverId) return; + keysRef.current.clear(); + lastSpeedsRef.current = { left: 0, right: 0 }; + setCurrentSpeeds(lastSpeedsRef.current); + emitCommand({ + type: 'motors', + data: { motorPwm: { main: 0, side: 0, vacuum: 0 } }, + }); + }, [emitCommand, roverId]); + + const toggleSensorStream = useCallback(() => { + if (!roverId) return; + setSensorEnabled((prev) => { + const next = !prev; + emitCommand({ + type: 'sensorStream', + data: { sensorStream: { enable: next } }, + }); + return next; + }); + }, [emitCommand, roverId]); + + useEffect(() => { + if (!roverId) { + keysRef.current.clear(); + lastSpeedsRef.current = { left: 0, right: 0 }; + setCurrentSpeeds(lastSpeedsRef.current); + setSensorEnabled(false); + return undefined; + } + + function onKeyDown(event) { + if (shouldIgnoreEvent(event)) return; + const key = event.key.toLowerCase(); + if (!['w', 'a', 's', 'd', 'shift'].includes(key)) return; + if (keysRef.current.has(key)) return; + keysRef.current.add(key); + sendDriveUpdate(); + } + + function onKeyUp(event) { + const key = event.key.toLowerCase(); + if (!keysRef.current.has(key)) return; + keysRef.current.delete(key); + sendDriveUpdate(); + } + + window.addEventListener('keydown', onKeyDown); + window.addEventListener('keyup', onKeyUp); + + return () => { + window.removeEventListener('keydown', onKeyDown); + window.removeEventListener('keyup', onKeyUp); + }; + }, [roverId, sendDriveUpdate]); + + return { + roverId, + speeds: currentSpeeds, + sensorEnabled, + toggleSensorStream, + stopMotors, + }; +} From 248fe3eef14e5e060f2f4ef1b3dd1091397bc667 Mon Sep 17 00:00:00 2001 From: legop3 Date: Sat, 15 Nov 2025 13:26:30 -0500 Subject: [PATCH 12/61] guh --- .../{index-BrexHw5K.js => index-n1qWThah.js} | 16 +++--- server/public/index.html | 2 +- webui/src/components/DrivePanel.jsx | 38 ++++++++++---- webui/src/hooks/useDriveControls.js | 51 ++++++++++++++----- 4 files changed, 73 insertions(+), 34 deletions(-) rename server/public/assets/{index-BrexHw5K.js => index-n1qWThah.js} (71%) diff --git a/server/public/assets/index-BrexHw5K.js b/server/public/assets/index-n1qWThah.js similarity index 71% rename from server/public/assets/index-BrexHw5K.js rename to server/public/assets/index-n1qWThah.js index 3cb5ae5b..0d7ad2dc 100644 --- a/server/public/assets/index-BrexHw5K.js +++ b/server/public/assets/index-n1qWThah.js @@ -1,11 +1,11 @@ -(function(){const i=document.createElement("link").relList;if(i&&i.supports&&i.supports("modulepreload"))return;for(const o of document.querySelectorAll('link[rel="modulepreload"]'))r(o);new MutationObserver(o=>{for(const d of o)if(d.type==="childList")for(const m of d.addedNodes)m.tagName==="LINK"&&m.rel==="modulepreload"&&r(m)}).observe(document,{childList:!0,subtree:!0});function c(o){const d={};return o.integrity&&(d.integrity=o.integrity),o.referrerPolicy&&(d.referrerPolicy=o.referrerPolicy),o.crossOrigin==="use-credentials"?d.credentials="include":o.crossOrigin==="anonymous"?d.credentials="omit":d.credentials="same-origin",d}function r(o){if(o.ep)return;o.ep=!0;const d=c(o);fetch(o.href,d)}})();var Vc={exports:{}},qa={};var Ad;function Ip(){if(Ad)return qa;Ad=1;var s=Symbol.for("react.transitional.element"),i=Symbol.for("react.fragment");function c(r,o,d){var m=null;if(d!==void 0&&(m=""+d),o.key!==void 0&&(m=""+o.key),"key"in o){d={};for(var S in o)S!=="key"&&(d[S]=o[S])}else d=o;return o=d.ref,{$$typeof:s,type:r,key:m,ref:o!==void 0?o:null,props:d}}return qa.Fragment=i,qa.jsx=c,qa.jsxs=c,qa}var Rd;function t0(){return Rd||(Rd=1,Vc.exports=Ip()),Vc.exports}var A=t0(),Zc={exports:{}},F={};var Od;function e0(){if(Od)return F;Od=1;var s=Symbol.for("react.transitional.element"),i=Symbol.for("react.portal"),c=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),o=Symbol.for("react.profiler"),d=Symbol.for("react.consumer"),m=Symbol.for("react.context"),S=Symbol.for("react.forward_ref"),p=Symbol.for("react.suspense"),v=Symbol.for("react.memo"),z=Symbol.for("react.lazy"),R=Symbol.for("react.activity"),w=Symbol.iterator;function H(b){return b===null||typeof b!="object"?null:(b=w&&b[w]||b["@@iterator"],typeof b=="function"?b:null)}var j={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},Z=Object.assign,Y={};function X(b,B,L){this.props=b,this.context=B,this.refs=Y,this.updater=L||j}X.prototype.isReactComponent={},X.prototype.setState=function(b,B){if(typeof b!="object"&&typeof b!="function"&&b!=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,b,B,"setState")},X.prototype.forceUpdate=function(b){this.updater.enqueueForceUpdate(this,b,"forceUpdate")};function Q(){}Q.prototype=X.prototype;function k(b,B,L){this.props=b,this.context=B,this.refs=Y,this.updater=L||j}var dt=k.prototype=new Q;dt.constructor=k,Z(dt,X.prototype),dt.isPureReactComponent=!0;var Tt=Array.isArray;function qt(){}var tt={H:null,A:null,T:null,S:null},Lt=Object.prototype.hasOwnProperty;function Ot(b,B,L){var V=L.ref;return{$$typeof:s,type:b,key:B,ref:V!==void 0?V:null,props:L}}function ie(b,B){return Ot(b.type,B,b.props)}function ue(b){return typeof b=="object"&&b!==null&&b.$$typeof===s}function Ft(b){var B={"=":"=0",":":"=2"};return"$"+b.replace(/[=:]/g,function(L){return B[L]})}var jl=/\/+/g;function Ge(b,B){return typeof b=="object"&&b!==null&&b.key!=null?Ft(""+b.key):B.toString(36)}function Ne(b){switch(b.status){case"fulfilled":return b.value;case"rejected":throw b.reason;default:switch(typeof b.status=="string"?b.then(qt,qt):(b.status="pending",b.then(function(B){b.status==="pending"&&(b.status="fulfilled",b.value=B)},function(B){b.status==="pending"&&(b.status="rejected",b.reason=B)})),b.status){case"fulfilled":return b.value;case"rejected":throw b.reason}}throw b}function D(b,B,L,V,P){var lt=typeof b;(lt==="undefined"||lt==="boolean")&&(b=null);var ht=!1;if(b===null)ht=!0;else switch(lt){case"bigint":case"string":case"number":ht=!0;break;case"object":switch(b.$$typeof){case s:case i:ht=!0;break;case z:return ht=b._init,D(ht(b._payload),B,L,V,P)}}if(ht)return P=P(b),ht=V===""?"."+Ge(b,0):V,Tt(P)?(L="",ht!=null&&(L=ht.replace(jl,"$&/")+"/"),D(P,B,L,"",function(Zn){return Zn})):P!=null&&(ue(P)&&(P=ie(P,L+(P.key==null||b&&b.key===P.key?"":(""+P.key).replace(jl,"$&/")+"/")+ht)),B.push(P)),1;ht=0;var $t=V===""?".":V+":";if(Tt(b))for(var Ct=0;Ct>>1,St=D[pt];if(0>>1;pto(L,W))Vo(P,L)?(D[pt]=P,D[V]=W,pt=V):(D[pt]=L,D[B]=W,pt=B);else if(Vo(P,W))D[pt]=P,D[V]=W,pt=V;else break t}}return q}function o(D,q){var W=D.sortIndex-q.sortIndex;return W!==0?W:D.id-q.id}if(s.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var d=performance;s.unstable_now=function(){return d.now()}}else{var m=Date,S=m.now();s.unstable_now=function(){return m.now()-S}}var p=[],v=[],z=1,R=null,w=3,H=!1,j=!1,Z=!1,Y=!1,X=typeof setTimeout=="function"?setTimeout:null,Q=typeof clearTimeout=="function"?clearTimeout:null,k=typeof setImmediate<"u"?setImmediate:null;function dt(D){for(var q=c(v);q!==null;){if(q.callback===null)r(v);else if(q.startTime<=D)r(v),q.sortIndex=q.expirationTime,i(p,q);else break;q=c(v)}}function Tt(D){if(Z=!1,dt(D),!j)if(c(p)!==null)j=!0,qt||(qt=!0,Ft());else{var q=c(v);q!==null&&Ne(Tt,q.startTime-D)}}var qt=!1,tt=-1,Lt=5,Ot=-1;function ie(){return Y?!0:!(s.unstable_now()-OtD&&ie());){var pt=R.callback;if(typeof pt=="function"){R.callback=null,w=R.priorityLevel;var St=pt(R.expirationTime<=D);if(D=s.unstable_now(),typeof St=="function"){R.callback=St,dt(D),q=!0;break e}R===c(p)&&r(p),dt(D)}else r(p);R=c(p)}if(R!==null)q=!0;else{var b=c(v);b!==null&&Ne(Tt,b.startTime-D),q=!1}}break t}finally{R=null,w=W,H=!1}q=void 0}}finally{q?Ft():qt=!1}}}var Ft;if(typeof k=="function")Ft=function(){k(ue)};else if(typeof MessageChannel<"u"){var jl=new MessageChannel,Ge=jl.port2;jl.port1.onmessage=ue,Ft=function(){Ge.postMessage(null)}}else Ft=function(){X(ue,0)};function Ne(D,q){tt=X(function(){D(s.unstable_now())},q)}s.unstable_IdlePriority=5,s.unstable_ImmediatePriority=1,s.unstable_LowPriority=4,s.unstable_NormalPriority=3,s.unstable_Profiling=null,s.unstable_UserBlockingPriority=2,s.unstable_cancelCallback=function(D){D.callback=null},s.unstable_forceFrameRate=function(D){0>D||125pt?(D.sortIndex=W,i(v,D),c(p)===null&&D===c(v)&&(Z?(Q(tt),tt=-1):Z=!0,Ne(Tt,W-pt))):(D.sortIndex=St,i(p,D),j||H||(j=!0,qt||(qt=!0,Ft()))),D},s.unstable_shouldYield=ie,s.unstable_wrapCallback=function(D){var q=w;return function(){var W=w;w=q;try{return D.apply(this,arguments)}finally{w=W}}}})(kc)),kc}var Cd;function n0(){return Cd||(Cd=1,Jc.exports=l0()),Jc.exports}var $c={exports:{}},kt={};var Dd;function a0(){if(Dd)return kt;Dd=1;var s=fr();function i(p){var v="https://react.dev/errors/"+p;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(s)}catch(i){console.error(i)}}return s(),$c.exports=a0(),$c.exports}var Ud;function u0(){if(Ud)return La;Ud=1;var s=n0(),i=fr(),c=i0();function r(t){var e="https://react.dev/errors/"+t;if(1St||(t.current=pt[St],pt[St]=null,St--)}function L(t,e){St++,pt[St]=t.current,t.current=e}var V=b(null),P=b(null),lt=b(null),ht=b(null);function $t(t,e){switch(L(lt,e),L(P,t),L(V,null),e.nodeType){case 9:case 11:t=(t=e.documentElement)&&(t=t.namespaceURI)?kh(t):0;break;default:if(t=e.tagName,e=e.namespaceURI)e=kh(e),t=$h(e,t);else switch(t){case"svg":t=1;break;case"math":t=2;break;default:t=0}}B(V),L(V,t)}function Ct(){B(V),B(P),B(lt)}function Zn(t){t.memoizedState!==null&&L(ht,t);var e=V.current,l=$h(e,t.type);e!==l&&(L(P,t),L(V,l))}function Ja(t){P.current===t&&(B(V),B(P)),ht.current===t&&(B(ht),Ba._currentValue=W)}var Ru,xr;function Hl(t){if(Ru===void 0)try{throw Error()}catch(l){var e=l.stack.trim().match(/\n( *(at )?)/);Ru=e&&e[1]||"",xr=-1{for(const d of o)if(d.type==="childList")for(const m of d.addedNodes)m.tagName==="LINK"&&m.rel==="modulepreload"&&r(m)}).observe(document,{childList:!0,subtree:!0});function c(o){const d={};return o.integrity&&(d.integrity=o.integrity),o.referrerPolicy&&(d.referrerPolicy=o.referrerPolicy),o.crossOrigin==="use-credentials"?d.credentials="include":o.crossOrigin==="anonymous"?d.credentials="omit":d.credentials="same-origin",d}function r(o){if(o.ep)return;o.ep=!0;const d=c(o);fetch(o.href,d)}})();var Vc={exports:{}},qa={};var Ad;function Pp(){if(Ad)return qa;Ad=1;var s=Symbol.for("react.transitional.element"),i=Symbol.for("react.fragment");function c(r,o,d){var m=null;if(d!==void 0&&(m=""+d),o.key!==void 0&&(m=""+o.key),"key"in o){d={};for(var b in o)b!=="key"&&(d[b]=o[b])}else d=o;return o=d.ref,{$$typeof:s,type:r,key:m,ref:o!==void 0?o:null,props:d}}return qa.Fragment=i,qa.jsx=c,qa.jsxs=c,qa}var Rd;function t0(){return Rd||(Rd=1,Vc.exports=Pp()),Vc.exports}var T=t0(),Zc={exports:{}},F={};var Od;function e0(){if(Od)return F;Od=1;var s=Symbol.for("react.transitional.element"),i=Symbol.for("react.portal"),c=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),o=Symbol.for("react.profiler"),d=Symbol.for("react.consumer"),m=Symbol.for("react.context"),b=Symbol.for("react.forward_ref"),y=Symbol.for("react.suspense"),v=Symbol.for("react.memo"),C=Symbol.for("react.lazy"),R=Symbol.for("react.activity"),w=Symbol.iterator;function j(S){return S===null||typeof S!="object"?null:(S=w&&S[w]||S["@@iterator"],typeof S=="function"?S:null)}var L={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},Q=Object.assign,K={};function Y(S,B,q){this.props=S,this.context=B,this.refs=K,this.updater=q||L}Y.prototype.isReactComponent={},Y.prototype.setState=function(S,B){if(typeof S!="object"&&typeof S!="function"&&S!=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,S,B,"setState")},Y.prototype.forceUpdate=function(S){this.updater.enqueueForceUpdate(this,S,"forceUpdate")};function G(){}G.prototype=Y.prototype;function k(S,B,q){this.props=S,this.context=B,this.refs=K,this.updater=q||L}var dt=k.prototype=new G;dt.constructor=k,Q(dt,Y.prototype),dt.isPureReactComponent=!0;var Tt=Array.isArray;function qt(){}var tt={H:null,A:null,T:null,S:null},Lt=Object.prototype.hasOwnProperty;function Ot(S,B,q){var V=q.ref;return{$$typeof:s,type:S,key:B,ref:V!==void 0?V:null,props:q}}function ie(S,B){return Ot(S.type,B,S.props)}function ue(S){return typeof S=="object"&&S!==null&&S.$$typeof===s}function Ft(S){var B={"=":"=0",":":"=2"};return"$"+S.replace(/[=:]/g,function(q){return B[q]})}var jl=/\/+/g;function Ge(S,B){return typeof S=="object"&&S!==null&&S.key!=null?Ft(""+S.key):B.toString(36)}function Ne(S){switch(S.status){case"fulfilled":return S.value;case"rejected":throw S.reason;default:switch(typeof S.status=="string"?S.then(qt,qt):(S.status="pending",S.then(function(B){S.status==="pending"&&(S.status="fulfilled",S.value=B)},function(B){S.status==="pending"&&(S.status="rejected",S.reason=B)})),S.status){case"fulfilled":return S.value;case"rejected":throw S.reason}}throw S}function D(S,B,q,V,I){var lt=typeof S;(lt==="undefined"||lt==="boolean")&&(S=null);var ht=!1;if(S===null)ht=!0;else switch(lt){case"bigint":case"string":case"number":ht=!0;break;case"object":switch(S.$$typeof){case s:case i:ht=!0;break;case C:return ht=S._init,D(ht(S._payload),B,q,V,I)}}if(ht)return I=I(S),ht=V===""?"."+Ge(S,0):V,Tt(I)?(q="",ht!=null&&(q=ht.replace(jl,"$&/")+"/"),D(I,B,q,"",function(Zn){return Zn})):I!=null&&(ue(I)&&(I=ie(I,q+(I.key==null||S&&S.key===I.key?"":(""+I.key).replace(jl,"$&/")+"/")+ht)),B.push(I)),1;ht=0;var $t=V===""?".":V+":";if(Tt(S))for(var zt=0;zt>>1,St=D[pt];if(0>>1;pto(q,W))Vo(I,q)?(D[pt]=I,D[V]=W,pt=V):(D[pt]=q,D[B]=W,pt=B);else if(Vo(I,W))D[pt]=I,D[V]=W,pt=V;else break t}}return H}function o(D,H){var W=D.sortIndex-H.sortIndex;return W!==0?W:D.id-H.id}if(s.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var d=performance;s.unstable_now=function(){return d.now()}}else{var m=Date,b=m.now();s.unstable_now=function(){return m.now()-b}}var y=[],v=[],C=1,R=null,w=3,j=!1,L=!1,Q=!1,K=!1,Y=typeof setTimeout=="function"?setTimeout:null,G=typeof clearTimeout=="function"?clearTimeout:null,k=typeof setImmediate<"u"?setImmediate:null;function dt(D){for(var H=c(v);H!==null;){if(H.callback===null)r(v);else if(H.startTime<=D)r(v),H.sortIndex=H.expirationTime,i(y,H);else break;H=c(v)}}function Tt(D){if(Q=!1,dt(D),!L)if(c(y)!==null)L=!0,qt||(qt=!0,Ft());else{var H=c(v);H!==null&&Ne(Tt,H.startTime-D)}}var qt=!1,tt=-1,Lt=5,Ot=-1;function ie(){return K?!0:!(s.unstable_now()-OtD&&ie());){var pt=R.callback;if(typeof pt=="function"){R.callback=null,w=R.priorityLevel;var St=pt(R.expirationTime<=D);if(D=s.unstable_now(),typeof St=="function"){R.callback=St,dt(D),H=!0;break e}R===c(y)&&r(y),dt(D)}else r(y);R=c(y)}if(R!==null)H=!0;else{var S=c(v);S!==null&&Ne(Tt,S.startTime-D),H=!1}}break t}finally{R=null,w=W,j=!1}H=void 0}}finally{H?Ft():qt=!1}}}var Ft;if(typeof k=="function")Ft=function(){k(ue)};else if(typeof MessageChannel<"u"){var jl=new MessageChannel,Ge=jl.port2;jl.port1.onmessage=ue,Ft=function(){Ge.postMessage(null)}}else Ft=function(){Y(ue,0)};function Ne(D,H){tt=Y(function(){D(s.unstable_now())},H)}s.unstable_IdlePriority=5,s.unstable_ImmediatePriority=1,s.unstable_LowPriority=4,s.unstable_NormalPriority=3,s.unstable_Profiling=null,s.unstable_UserBlockingPriority=2,s.unstable_cancelCallback=function(D){D.callback=null},s.unstable_forceFrameRate=function(D){0>D||125pt?(D.sortIndex=W,i(v,D),c(y)===null&&D===c(v)&&(Q?(G(tt),tt=-1):Q=!0,Ne(Tt,W-pt))):(D.sortIndex=St,i(y,D),L||j||(L=!0,qt||(qt=!0,Ft()))),D},s.unstable_shouldYield=ie,s.unstable_wrapCallback=function(D){var H=w;return function(){var W=w;w=H;try{return D.apply(this,arguments)}finally{w=W}}}})(kc)),kc}var zd;function n0(){return zd||(zd=1,Jc.exports=l0()),Jc.exports}var $c={exports:{}},kt={};var Dd;function a0(){if(Dd)return kt;Dd=1;var s=fr();function i(y){var v="https://react.dev/errors/"+y;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(s)}catch(i){console.error(i)}}return s(),$c.exports=a0(),$c.exports}var Ud;function u0(){if(Ud)return La;Ud=1;var s=n0(),i=fr(),c=i0();function r(t){var e="https://react.dev/errors/"+t;if(1St||(t.current=pt[St],pt[St]=null,St--)}function q(t,e){St++,pt[St]=t.current,t.current=e}var V=S(null),I=S(null),lt=S(null),ht=S(null);function $t(t,e){switch(q(lt,e),q(I,t),q(V,null),e.nodeType){case 9:case 11:t=(t=e.documentElement)&&(t=t.namespaceURI)?kh(t):0;break;default:if(t=e.tagName,e=e.namespaceURI)e=kh(e),t=$h(e,t);else switch(t){case"svg":t=1;break;case"math":t=2;break;default:t=0}}B(V),q(V,t)}function zt(){B(V),B(I),B(lt)}function Zn(t){t.memoizedState!==null&&q(ht,t);var e=V.current,l=$h(e,t.type);e!==l&&(q(I,t),q(V,l))}function Ja(t){I.current===t&&(B(V),B(I)),ht.current===t&&(B(ht),Ba._currentValue=W)}var Ru,xr;function Hl(t){if(Ru===void 0)try{throw Error()}catch(l){var e=l.stack.trim().match(/\n( *(at )?)/);Ru=e&&e[1]||"",xr=-1)":-1a||y[n]!==T[a]){var C=` -`+y[n].replace(" at new "," at ");return t.displayName&&C.includes("")&&(C=C.replace("",t.displayName)),C}while(1<=n&&0<=a);break}}}finally{Ou=!1,Error.prepareStackTrace=l}return(l=t?t.displayName||t.name:"")?Hl(l):""}function Cm(t,e){switch(t.tag){case 26:case 27:case 5:return Hl(t.type);case 16:return Hl("Lazy");case 13:return t.child!==e&&e!==null?Hl("Suspense Fallback"):Hl("Suspense");case 19:return Hl("SuspenseList");case 0:case 15:return Nu(t.type,!1);case 11:return Nu(t.type.render,!1);case 1:return Nu(t.type,!0);case 31:return Hl("Activity");default:return""}}function _r(t){try{var e="",l=null;do e+=Cm(t,l),l=t,t=t.return;while(t);return e}catch(n){return` +`+Ru+t+xr}var Ou=!1;function Nu(t,e){if(!t||Ou)return"";Ou=!0;var l=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var n={DetermineComponentFrameRoot:function(){try{if(e){var U=function(){throw Error()};if(Object.defineProperty(U.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(U,[])}catch(N){var O=N}Reflect.construct(t,[],U)}else{try{U.call()}catch(N){O=N}t.call(U.prototype)}}else{try{throw Error()}catch(N){O=N}(U=t())&&typeof U.catch=="function"&&U.catch(function(){})}}catch(N){if(N&&O&&typeof N.stack=="string")return[N.stack,O.stack]}return[null,null]}};n.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var a=Object.getOwnPropertyDescriptor(n.DetermineComponentFrameRoot,"name");a&&a.configurable&&Object.defineProperty(n.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"});var u=n.DetermineComponentFrameRoot(),f=u[0],h=u[1];if(f&&h){var p=f.split(` +`),A=h.split(` +`);for(a=n=0;na||p[n]!==A[a]){var z=` +`+p[n].replace(" at new "," at ");return t.displayName&&z.includes("")&&(z=z.replace("",t.displayName)),z}while(1<=n&&0<=a);break}}}finally{Ou=!1,Error.prepareStackTrace=l}return(l=t?t.displayName||t.name:"")?Hl(l):""}function zm(t,e){switch(t.tag){case 26:case 27:case 5:return Hl(t.type);case 16:return Hl("Lazy");case 13:return t.child!==e&&e!==null?Hl("Suspense Fallback"):Hl("Suspense");case 19:return Hl("SuspenseList");case 0:case 15:return Nu(t.type,!1);case 11:return Nu(t.type.render,!1);case 1:return Nu(t.type,!0);case 31:return Hl("Activity");default:return""}}function _r(t){try{var e="",l=null;do e+=zm(t,l),l=t,t=t.return;while(t);return e}catch(n){return` Error generating stack: `+n.message+` -`+n.stack}}var zu=Object.prototype.hasOwnProperty,Cu=s.unstable_scheduleCallback,Du=s.unstable_cancelCallback,Dm=s.unstable_shouldYield,Mm=s.unstable_requestPaint,se=s.unstable_now,Um=s.unstable_getCurrentPriorityLevel,Tr=s.unstable_ImmediatePriority,Ar=s.unstable_UserBlockingPriority,ka=s.unstable_NormalPriority,Bm=s.unstable_LowPriority,Rr=s.unstable_IdlePriority,wm=s.log,jm=s.unstable_setDisableYieldValue,Kn=null,ce=null;function fl(t){if(typeof wm=="function"&&jm(t),ce&&typeof ce.setStrictMode=="function")try{ce.setStrictMode(Kn,t)}catch{}}var re=Math.clz32?Math.clz32:Lm,Hm=Math.log,qm=Math.LN2;function Lm(t){return t>>>=0,t===0?32:31-(Hm(t)/qm|0)|0}var $a=256,Wa=262144,Fa=4194304;function ql(t){var e=t&42;if(e!==0)return e;switch(t&-t){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return t&261888;case 262144:case 524288:case 1048576:case 2097152:return t&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return t&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return t}}function Pa(t,e,l){var n=t.pendingLanes;if(n===0)return 0;var a=0,u=t.suspendedLanes,f=t.pingedLanes;t=t.warmLanes;var h=n&134217727;return h!==0?(n=h&~u,n!==0?a=ql(n):(f&=h,f!==0?a=ql(f):l||(l=h&~t,l!==0&&(a=ql(l))))):(h=n&~u,h!==0?a=ql(h):f!==0?a=ql(f):l||(l=n&~t,l!==0&&(a=ql(l)))),a===0?0:e!==0&&e!==a&&(e&u)===0&&(u=a&-a,l=e&-e,u>=l||u===32&&(l&4194048)!==0)?e:a}function Jn(t,e){return(t.pendingLanes&~(t.suspendedLanes&~t.pingedLanes)&e)===0}function Ym(t,e){switch(t){case 1:case 2:case 4:case 8:case 64:return e+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 e+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 Or(){var t=Fa;return Fa<<=1,(Fa&62914560)===0&&(Fa=4194304),t}function Mu(t){for(var e=[],l=0;31>l;l++)e.push(t);return e}function kn(t,e){t.pendingLanes|=e,e!==268435456&&(t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0)}function Xm(t,e,l,n,a,u){var f=t.pendingLanes;t.pendingLanes=l,t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0,t.expiredLanes&=l,t.entangledLanes&=l,t.errorRecoveryDisabledLanes&=l,t.shellSuspendCounter=0;var h=t.entanglements,y=t.expirationTimes,T=t.hiddenUpdates;for(l=f&~l;0"u")return null;try{return t.activeElement||t.body}catch{return t.body}}var Jm=/[\n"\\]/g;function ge(t){return t.replace(Jm,function(e){return"\\"+e.charCodeAt(0).toString(16)+" "})}function qu(t,e,l,n,a,u,f,h){t.name="",f!=null&&typeof f!="function"&&typeof f!="symbol"&&typeof f!="boolean"?t.type=f:t.removeAttribute("type"),e!=null?f==="number"?(e===0&&t.value===""||t.value!=e)&&(t.value=""+ve(e)):t.value!==""+ve(e)&&(t.value=""+ve(e)):f!=="submit"&&f!=="reset"||t.removeAttribute("value"),e!=null?Lu(t,f,ve(e)):l!=null?Lu(t,f,ve(l)):n!=null&&t.removeAttribute("value"),a==null&&u!=null&&(t.defaultChecked=!!u),a!=null&&(t.checked=a&&typeof a!="function"&&typeof a!="symbol"),h!=null&&typeof h!="function"&&typeof h!="symbol"&&typeof h!="boolean"?t.name=""+ve(h):t.removeAttribute("name")}function Yr(t,e,l,n,a,u,f,h){if(u!=null&&typeof u!="function"&&typeof u!="symbol"&&typeof u!="boolean"&&(t.type=u),e!=null||l!=null){if(!(u!=="submit"&&u!=="reset"||e!=null)){Hu(t);return}l=l!=null?""+ve(l):"",e=e!=null?""+ve(e):l,h||e===t.value||(t.value=e),t.defaultValue=e}n=n??a,n=typeof n!="function"&&typeof n!="symbol"&&!!n,t.checked=h?t.checked:!!n,t.defaultChecked=!!n,f!=null&&typeof f!="function"&&typeof f!="symbol"&&typeof f!="boolean"&&(t.name=f),Hu(t)}function Lu(t,e,l){e==="number"&&ei(t.ownerDocument)===t||t.defaultValue===""+l||(t.defaultValue=""+l)}function rn(t,e,l,n){if(t=t.options,e){e={};for(var a=0;a"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Vu=!1;if(Ze)try{var Pn={};Object.defineProperty(Pn,"passive",{get:function(){Vu=!0}}),window.addEventListener("test",Pn,Pn),window.removeEventListener("test",Pn,Pn)}catch{Vu=!1}var hl=null,Zu=null,ni=null;function Jr(){if(ni)return ni;var t,e=Zu,l=e.length,n,a="value"in hl?hl.value:hl.textContent,u=a.length;for(t=0;t=ea),Ir=" ",tf=!1;function ef(t,e){switch(t){case"keyup":return Ey.indexOf(e.keyCode)!==-1;case"keydown":return e.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function lf(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var dn=!1;function _y(t,e){switch(t){case"compositionend":return lf(e);case"keypress":return e.which!==32?null:(tf=!0,Ir);case"textInput":return t=e.data,t===Ir&&tf?null:t;default:return null}}function Ty(t,e){if(dn)return t==="compositionend"||!Wu&&ef(t,e)?(t=Jr(),ni=Zu=hl=null,dn=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(e.ctrlKey||e.altKey||e.metaKey)||e.ctrlKey&&e.altKey){if(e.char&&1=e)return{node:l,offset:e-t};t=n}t:{for(;l;){if(l.nextSibling){l=l.nextSibling;break t}l=l.parentNode}l=void 0}l=of(l)}}function df(t,e){return t&&e?t===e?!0:t&&t.nodeType===3?!1:e&&e.nodeType===3?df(t,e.parentNode):"contains"in t?t.contains(e):t.compareDocumentPosition?!!(t.compareDocumentPosition(e)&16):!1:!1}function mf(t){t=t!=null&&t.ownerDocument!=null&&t.ownerDocument.defaultView!=null?t.ownerDocument.defaultView:window;for(var e=ei(t.document);e instanceof t.HTMLIFrameElement;){try{var l=typeof e.contentWindow.location.href=="string"}catch{l=!1}if(l)t=e.contentWindow;else break;e=ei(t.document)}return e}function Iu(t){var e=t&&t.nodeName&&t.nodeName.toLowerCase();return e&&(e==="input"&&(t.type==="text"||t.type==="search"||t.type==="tel"||t.type==="url"||t.type==="password")||e==="textarea"||t.contentEditable==="true")}var My=Ze&&"documentMode"in document&&11>=document.documentMode,mn=null,ts=null,ia=null,es=!1;function yf(t,e,l){var n=l.window===l?l.document:l.nodeType===9?l:l.ownerDocument;es||mn==null||mn!==ei(n)||(n=mn,"selectionStart"in n&&Iu(n)?n={start:n.selectionStart,end:n.selectionEnd}:(n=(n.ownerDocument&&n.ownerDocument.defaultView||window).getSelection(),n={anchorNode:n.anchorNode,anchorOffset:n.anchorOffset,focusNode:n.focusNode,focusOffset:n.focusOffset}),ia&&aa(ia,n)||(ia=n,n=Wi(ts,"onSelect"),0>=f,a-=f,we=1<<32-re(e)+a|l<et?(ut=K,K=null):ut=K.sibling;var ft=O(E,K,_[et],M);if(ft===null){K===null&&(K=ut);break}t&&K&&ft.alternate===null&&e(E,K),g=u(ft,g,et),rt===null?J=ft:rt.sibling=ft,rt=ft,K=ut}if(et===_.length)return l(E,K),st&&Je(E,et),J;if(K===null){for(;et<_.length;et++)K=U(E,_[et],M),K!==null&&(g=u(K,g,et),rt===null?J=K:rt.sibling=K,rt=K);return st&&Je(E,et),J}for(K=n(K);et<_.length;et++)ut=N(K,E,et,_[et],M),ut!==null&&(t&&ut.alternate!==null&&K.delete(ut.key===null?et:ut.key),g=u(ut,g,et),rt===null?J=ut:rt.sibling=ut,rt=ut);return t&&K.forEach(function(Bl){return e(E,Bl)}),st&&Je(E,et),J}function $(E,g,_,M){if(_==null)throw Error(r(151));for(var J=null,rt=null,K=g,et=g=0,ut=null,ft=_.next();K!==null&&!ft.done;et++,ft=_.next()){K.index>et?(ut=K,K=null):ut=K.sibling;var Bl=O(E,K,ft.value,M);if(Bl===null){K===null&&(K=ut);break}t&&K&&Bl.alternate===null&&e(E,K),g=u(Bl,g,et),rt===null?J=Bl:rt.sibling=Bl,rt=Bl,K=ut}if(ft.done)return l(E,K),st&&Je(E,et),J;if(K===null){for(;!ft.done;et++,ft=_.next())ft=U(E,ft.value,M),ft!==null&&(g=u(ft,g,et),rt===null?J=ft:rt.sibling=ft,rt=ft);return st&&Je(E,et),J}for(K=n(K);!ft.done;et++,ft=_.next())ft=N(K,E,et,ft.value,M),ft!==null&&(t&&ft.alternate!==null&&K.delete(ft.key===null?et:ft.key),g=u(ft,g,et),rt===null?J=ft:rt.sibling=ft,rt=ft);return t&&K.forEach(function(Pp){return e(E,Pp)}),st&&Je(E,et),J}function bt(E,g,_,M){if(typeof _=="object"&&_!==null&&_.type===Z&&_.key===null&&(_=_.props.children),typeof _=="object"&&_!==null){switch(_.$$typeof){case H:t:{for(var J=_.key;g!==null;){if(g.key===J){if(J=_.type,J===Z){if(g.tag===7){l(E,g.sibling),M=a(g,_.props.children),M.return=E,E=M;break t}}else if(g.elementType===J||typeof J=="object"&&J!==null&&J.$$typeof===Lt&&$l(J)===g.type){l(E,g.sibling),M=a(g,_.props),oa(M,_),M.return=E,E=M;break t}l(E,g);break}else e(E,g);g=g.sibling}_.type===Z?(M=Vl(_.props.children,E.mode,M,_.key),M.return=E,E=M):(M=di(_.type,_.key,_.props,null,E.mode,M),oa(M,_),M.return=E,E=M)}return f(E);case j:t:{for(J=_.key;g!==null;){if(g.key===J)if(g.tag===4&&g.stateNode.containerInfo===_.containerInfo&&g.stateNode.implementation===_.implementation){l(E,g.sibling),M=a(g,_.children||[]),M.return=E,E=M;break t}else{l(E,g);break}else e(E,g);g=g.sibling}M=cs(_,E.mode,M),M.return=E,E=M}return f(E);case Lt:return _=$l(_),bt(E,g,_,M)}if(Ne(_))return G(E,g,_,M);if(Ft(_)){if(J=Ft(_),typeof J!="function")throw Error(r(150));return _=J.call(_),$(E,g,_,M)}if(typeof _.then=="function")return bt(E,g,Si(_),M);if(_.$$typeof===k)return bt(E,g,pi(E,_),M);Ei(E,_)}return typeof _=="string"&&_!==""||typeof _=="number"||typeof _=="bigint"?(_=""+_,g!==null&&g.tag===6?(l(E,g.sibling),M=a(g,_),M.return=E,E=M):(l(E,g),M=ss(_,E.mode,M),M.return=E,E=M),f(E)):l(E,g)}return function(E,g,_,M){try{fa=0;var J=bt(E,g,_,M);return An=null,J}catch(K){if(K===Tn||K===gi)throw K;var rt=oe(29,K,null,E.mode);return rt.lanes=M,rt.return=E,rt}finally{}}}var Fl=qf(!0),Lf=qf(!1),vl=!1;function Ss(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function Es(t,e){t=t.updateQueue,e.updateQueue===t&&(e.updateQueue={baseState:t.baseState,firstBaseUpdate:t.firstBaseUpdate,lastBaseUpdate:t.lastBaseUpdate,shared:t.shared,callbacks:null})}function gl(t){return{lane:t,tag:0,payload:null,callback:null,next:null}}function bl(t,e,l){var n=t.updateQueue;if(n===null)return null;if(n=n.shared,(ot&2)!==0){var a=n.pending;return a===null?e.next=e:(e.next=a.next,a.next=e),n.pending=e,e=hi(t),xf(t,null,l),e}return oi(t,n,e,l),hi(t)}function ha(t,e,l){if(e=e.updateQueue,e!==null&&(e=e.shared,(l&4194048)!==0)){var n=e.lanes;n&=t.pendingLanes,l|=n,e.lanes=l,zr(t,l)}}function xs(t,e){var l=t.updateQueue,n=t.alternate;if(n!==null&&(n=n.updateQueue,l===n)){var a=null,u=null;if(l=l.firstBaseUpdate,l!==null){do{var f={lane:l.lane,tag:l.tag,payload:l.payload,callback:null,next:null};u===null?a=u=f:u=u.next=f,l=l.next}while(l!==null);u===null?a=u=e:u=u.next=e}else a=u=e;l={baseState:n.baseState,firstBaseUpdate:a,lastBaseUpdate:u,shared:n.shared,callbacks:n.callbacks},t.updateQueue=l;return}t=l.lastBaseUpdate,t===null?l.firstBaseUpdate=e:t.next=e,l.lastBaseUpdate=e}var _s=!1;function da(){if(_s){var t=_n;if(t!==null)throw t}}function ma(t,e,l,n){_s=!1;var a=t.updateQueue;vl=!1;var u=a.firstBaseUpdate,f=a.lastBaseUpdate,h=a.shared.pending;if(h!==null){a.shared.pending=null;var y=h,T=y.next;y.next=null,f===null?u=T:f.next=T,f=y;var C=t.alternate;C!==null&&(C=C.updateQueue,h=C.lastBaseUpdate,h!==f&&(h===null?C.firstBaseUpdate=T:h.next=T,C.lastBaseUpdate=y))}if(u!==null){var U=a.baseState;f=0,C=T=y=null,h=u;do{var O=h.lane&-536870913,N=O!==h.lane;if(N?(it&O)===O:(n&O)===O){O!==0&&O===xn&&(_s=!0),C!==null&&(C=C.next={lane:0,tag:h.tag,payload:h.payload,callback:null,next:null});t:{var G=t,$=h;O=e;var bt=l;switch($.tag){case 1:if(G=$.payload,typeof G=="function"){U=G.call(bt,U,O);break t}U=G;break t;case 3:G.flags=G.flags&-65537|128;case 0:if(G=$.payload,O=typeof G=="function"?G.call(bt,U,O):G,O==null)break t;U=R({},U,O);break t;case 2:vl=!0}}O=h.callback,O!==null&&(t.flags|=64,N&&(t.flags|=8192),N=a.callbacks,N===null?a.callbacks=[O]:N.push(O))}else N={lane:O,tag:h.tag,payload:h.payload,callback:h.callback,next:null},C===null?(T=C=N,y=U):C=C.next=N,f|=O;if(h=h.next,h===null){if(h=a.shared.pending,h===null)break;N=h,h=N.next,N.next=null,a.lastBaseUpdate=N,a.shared.pending=null}}while(!0);C===null&&(y=U),a.baseState=y,a.firstBaseUpdate=T,a.lastBaseUpdate=C,u===null&&(a.shared.lanes=0),Tl|=f,t.lanes=f,t.memoizedState=U}}function Yf(t,e){if(typeof t!="function")throw Error(r(191,t));t.call(e)}function Xf(t,e){var l=t.callbacks;if(l!==null)for(t.callbacks=null,t=0;tu?u:8;var f=D.T,h={};D.T=h,Gs(t,!1,e,l);try{var y=a(),T=D.S;if(T!==null&&T(h,y),y!==null&&typeof y=="object"&&typeof y.then=="function"){var C=Xy(y,n);va(t,e,C,pe(t))}else va(t,e,n,pe(t))}catch(U){va(t,e,{then:function(){},status:"rejected",reason:U},pe())}finally{q.p=u,f!==null&&h.types!==null&&(f.types=h.types),D.T=f}}function Jy(){}function Ys(t,e,l,n){if(t.tag!==5)throw Error(r(476));var a=So(t).queue;bo(t,a,e,W,l===null?Jy:function(){return Eo(t),l(n)})}function So(t){var e=t.memoizedState;if(e!==null)return e;e={memoizedState:W,baseState:W,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Fe,lastRenderedState:W},next:null};var l={};return e.next={memoizedState:l,baseState:l,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Fe,lastRenderedState:l},next:null},t.memoizedState=e,t=t.alternate,t!==null&&(t.memoizedState=e),e}function Eo(t){var e=So(t);e.next===null&&(e=t.alternate.memoizedState),va(t,e.next.queue,{},pe())}function Xs(){return Zt(Ba)}function xo(){return Mt().memoizedState}function _o(){return Mt().memoizedState}function ky(t){for(var e=t.return;e!==null;){switch(e.tag){case 24:case 3:var l=pe();t=gl(l);var n=bl(e,t,l);n!==null&&(ae(n,e,l),ha(n,e,l)),e={cache:ps()},t.payload=e;return}e=e.return}}function $y(t,e,l){var n=pe();l={lane:n,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},Di(t)?Ao(e,l):(l=is(t,e,l,n),l!==null&&(ae(l,t,n),Ro(l,e,n)))}function To(t,e,l){var n=pe();va(t,e,l,n)}function va(t,e,l,n){var a={lane:n,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null};if(Di(t))Ao(e,a);else{var u=t.alternate;if(t.lanes===0&&(u===null||u.lanes===0)&&(u=e.lastRenderedReducer,u!==null))try{var f=e.lastRenderedState,h=u(f,l);if(a.hasEagerState=!0,a.eagerState=h,fe(h,f))return oi(t,e,a,0),Et===null&&fi(),!1}catch{}finally{}if(l=is(t,e,a,n),l!==null)return ae(l,t,n),Ro(l,e,n),!0}return!1}function Gs(t,e,l,n){if(n={lane:2,revertLane:Sc(),gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},Di(t)){if(e)throw Error(r(479))}else e=is(t,l,n,2),e!==null&&ae(e,t,2)}function Di(t){var e=t.alternate;return t===I||e!==null&&e===I}function Ao(t,e){On=Ti=!0;var l=t.pending;l===null?e.next=e:(e.next=l.next,l.next=e),t.pending=e}function Ro(t,e,l){if((l&4194048)!==0){var n=e.lanes;n&=t.pendingLanes,l|=n,e.lanes=l,zr(t,l)}}var ga={readContext:Zt,use:Oi,useCallback:Nt,useContext:Nt,useEffect:Nt,useImperativeHandle:Nt,useLayoutEffect:Nt,useInsertionEffect:Nt,useMemo:Nt,useReducer:Nt,useRef:Nt,useState:Nt,useDebugValue:Nt,useDeferredValue:Nt,useTransition:Nt,useSyncExternalStore:Nt,useId:Nt,useHostTransitionStatus:Nt,useFormState:Nt,useActionState:Nt,useOptimistic:Nt,useMemoCache:Nt,useCacheRefresh:Nt};ga.useEffectEvent=Nt;var Oo={readContext:Zt,use:Oi,useCallback:function(t,e){return Wt().memoizedState=[t,e===void 0?null:e],t},useContext:Zt,useEffect:ro,useImperativeHandle:function(t,e,l){l=l!=null?l.concat([t]):null,zi(4194308,4,mo.bind(null,e,t),l)},useLayoutEffect:function(t,e){return zi(4194308,4,t,e)},useInsertionEffect:function(t,e){zi(4,2,t,e)},useMemo:function(t,e){var l=Wt();e=e===void 0?null:e;var n=t();if(Pl){fl(!0);try{t()}finally{fl(!1)}}return l.memoizedState=[n,e],n},useReducer:function(t,e,l){var n=Wt();if(l!==void 0){var a=l(e);if(Pl){fl(!0);try{l(e)}finally{fl(!1)}}}else a=e;return n.memoizedState=n.baseState=a,t={pending:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:a},n.queue=t,t=t.dispatch=$y.bind(null,I,t),[n.memoizedState,t]},useRef:function(t){var e=Wt();return t={current:t},e.memoizedState=t},useState:function(t){t=ws(t);var e=t.queue,l=To.bind(null,I,e);return e.dispatch=l,[t.memoizedState,l]},useDebugValue:qs,useDeferredValue:function(t,e){var l=Wt();return Ls(l,t,e)},useTransition:function(){var t=ws(!1);return t=bo.bind(null,I,t.queue,!0,!1),Wt().memoizedState=t,[!1,t]},useSyncExternalStore:function(t,e,l){var n=I,a=Wt();if(st){if(l===void 0)throw Error(r(407));l=l()}else{if(l=e(),Et===null)throw Error(r(349));(it&127)!==0||Jf(n,e,l)}a.memoizedState=l;var u={value:l,getSnapshot:e};return a.queue=u,ro($f.bind(null,n,u,t),[t]),n.flags|=2048,zn(9,{destroy:void 0},kf.bind(null,n,u,l,e),null),l},useId:function(){var t=Wt(),e=Et.identifierPrefix;if(st){var l=je,n=we;l=(n&~(1<<32-re(n)-1)).toString(32)+l,e="_"+e+"R_"+l,l=Ai++,0<\/script>",u=u.removeChild(u.firstChild);break;case"select":u=typeof n.is=="string"?f.createElement("select",{is:n.is}):f.createElement("select"),n.multiple?u.multiple=!0:n.size&&(u.size=n.size);break;default:u=typeof n.is=="string"?f.createElement(a,{is:n.is}):f.createElement(a)}}u[Qt]=e,u[Pt]=n;t:for(f=e.child;f!==null;){if(f.tag===5||f.tag===6)u.appendChild(f.stateNode);else if(f.tag!==4&&f.tag!==27&&f.child!==null){f.child.return=f,f=f.child;continue}if(f===e)break t;for(;f.sibling===null;){if(f.return===null||f.return===e)break t;f=f.return}f.sibling.return=f.return,f=f.sibling}e.stateNode=u;t:switch(Jt(u,a,n),a){case"button":case"input":case"select":case"textarea":n=!!n.autoFocus;break t;case"img":n=!0;break t;default:n=!1}n&&Ie(e)}}return _t(e),lc(e,e.type,t===null?null:t.memoizedProps,e.pendingProps,l),null;case 6:if(t&&e.stateNode!=null)t.memoizedProps!==n&&Ie(e);else{if(typeof n!="string"&&e.stateNode===null)throw Error(r(166));if(t=lt.current,Sn(e)){if(t=e.stateNode,l=e.memoizedProps,n=null,a=Vt,a!==null)switch(a.tag){case 27:case 5:n=a.memoizedProps}t[Qt]=e,t=!!(t.nodeValue===l||n!==null&&n.suppressHydrationWarning===!0||Kh(t.nodeValue,l)),t||yl(e,!0)}else t=Fi(t).createTextNode(n),t[Qt]=e,e.stateNode=t}return _t(e),null;case 31:if(l=e.memoizedState,t===null||t.memoizedState!==null){if(n=Sn(e),l!==null){if(t===null){if(!n)throw Error(r(318));if(t=e.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(r(557));t[Qt]=e}else Zl(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;_t(e),t=!1}else l=hs(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=l),t=!0;if(!t)return e.flags&256?(de(e),e):(de(e),null);if((e.flags&128)!==0)throw Error(r(558))}return _t(e),null;case 13:if(n=e.memoizedState,t===null||t.memoizedState!==null&&t.memoizedState.dehydrated!==null){if(a=Sn(e),n!==null&&n.dehydrated!==null){if(t===null){if(!a)throw Error(r(318));if(a=e.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(r(317));a[Qt]=e}else Zl(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;_t(e),a=!1}else a=hs(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=a),a=!0;if(!a)return e.flags&256?(de(e),e):(de(e),null)}return de(e),(e.flags&128)!==0?(e.lanes=l,e):(l=n!==null,t=t!==null&&t.memoizedState!==null,l&&(n=e.child,a=null,n.alternate!==null&&n.alternate.memoizedState!==null&&n.alternate.memoizedState.cachePool!==null&&(a=n.alternate.memoizedState.cachePool.pool),u=null,n.memoizedState!==null&&n.memoizedState.cachePool!==null&&(u=n.memoizedState.cachePool.pool),u!==a&&(n.flags|=2048)),l!==t&&l&&(e.child.flags|=8192),ji(e,e.updateQueue),_t(e),null);case 4:return Ct(),t===null&&Tc(e.stateNode.containerInfo),_t(e),null;case 10:return $e(e.type),_t(e),null;case 19:if(B(Dt),n=e.memoizedState,n===null)return _t(e),null;if(a=(e.flags&128)!==0,u=n.rendering,u===null)if(a)Sa(n,!1);else{if(zt!==0||t!==null&&(t.flags&128)!==0)for(t=e.child;t!==null;){if(u=_i(t),u!==null){for(e.flags|=128,Sa(n,!1),t=u.updateQueue,e.updateQueue=t,ji(e,t),e.subtreeFlags=0,t=l,l=e.child;l!==null;)_f(l,t),l=l.sibling;return L(Dt,Dt.current&1|2),st&&Je(e,n.treeForkCount),e.child}t=t.sibling}n.tail!==null&&se()>Xi&&(e.flags|=128,a=!0,Sa(n,!1),e.lanes=4194304)}else{if(!a)if(t=_i(u),t!==null){if(e.flags|=128,a=!0,t=t.updateQueue,e.updateQueue=t,ji(e,t),Sa(n,!0),n.tail===null&&n.tailMode==="hidden"&&!u.alternate&&!st)return _t(e),null}else 2*se()-n.renderingStartTime>Xi&&l!==536870912&&(e.flags|=128,a=!0,Sa(n,!1),e.lanes=4194304);n.isBackwards?(u.sibling=e.child,e.child=u):(t=n.last,t!==null?t.sibling=u:e.child=u,n.last=u)}return n.tail!==null?(t=n.tail,n.rendering=t,n.tail=t.sibling,n.renderingStartTime=se(),t.sibling=null,l=Dt.current,L(Dt,a?l&1|2:l&1),st&&Je(e,n.treeForkCount),t):(_t(e),null);case 22:case 23:return de(e),As(),n=e.memoizedState!==null,t!==null?t.memoizedState!==null!==n&&(e.flags|=8192):n&&(e.flags|=8192),n?(l&536870912)!==0&&(e.flags&128)===0&&(_t(e),e.subtreeFlags&6&&(e.flags|=8192)):_t(e),l=e.updateQueue,l!==null&&ji(e,l.retryQueue),l=null,t!==null&&t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(l=t.memoizedState.cachePool.pool),n=null,e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),n!==l&&(e.flags|=2048),t!==null&&B(kl),null;case 24:return l=null,t!==null&&(l=t.memoizedState.cache),e.memoizedState.cache!==l&&(e.flags|=2048),$e(Ut),_t(e),null;case 25:return null;case 30:return null}throw Error(r(156,e.tag))}function tp(t,e){switch(fs(e),e.tag){case 1:return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 3:return $e(Ut),Ct(),t=e.flags,(t&65536)!==0&&(t&128)===0?(e.flags=t&-65537|128,e):null;case 26:case 27:case 5:return Ja(e),null;case 31:if(e.memoizedState!==null){if(de(e),e.alternate===null)throw Error(r(340));Zl()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 13:if(de(e),t=e.memoizedState,t!==null&&t.dehydrated!==null){if(e.alternate===null)throw Error(r(340));Zl()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 19:return B(Dt),null;case 4:return Ct(),null;case 10:return $e(e.type),null;case 22:case 23:return de(e),As(),t!==null&&B(kl),t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 24:return $e(Ut),null;case 25:return null;default:return null}}function Fo(t,e){switch(fs(e),e.tag){case 3:$e(Ut),Ct();break;case 26:case 27:case 5:Ja(e);break;case 4:Ct();break;case 31:e.memoizedState!==null&&de(e);break;case 13:de(e);break;case 19:B(Dt);break;case 10:$e(e.type);break;case 22:case 23:de(e),As(),t!==null&&B(kl);break;case 24:$e(Ut)}}function Ea(t,e){try{var l=e.updateQueue,n=l!==null?l.lastEffect:null;if(n!==null){var a=n.next;l=a;do{if((l.tag&t)===t){n=void 0;var u=l.create,f=l.inst;n=u(),f.destroy=n}l=l.next}while(l!==a)}}catch(h){yt(e,e.return,h)}}function xl(t,e,l){try{var n=e.updateQueue,a=n!==null?n.lastEffect:null;if(a!==null){var u=a.next;n=u;do{if((n.tag&t)===t){var f=n.inst,h=f.destroy;if(h!==void 0){f.destroy=void 0,a=e;var y=l,T=h;try{T()}catch(C){yt(a,y,C)}}}n=n.next}while(n!==u)}}catch(C){yt(e,e.return,C)}}function Po(t){var e=t.updateQueue;if(e!==null){var l=t.stateNode;try{Xf(e,l)}catch(n){yt(t,t.return,n)}}}function Io(t,e,l){l.props=Il(t.type,t.memoizedProps),l.state=t.memoizedState;try{l.componentWillUnmount()}catch(n){yt(t,e,n)}}function xa(t,e){try{var l=t.ref;if(l!==null){switch(t.tag){case 26:case 27:case 5:var n=t.stateNode;break;case 30:n=t.stateNode;break;default:n=t.stateNode}typeof l=="function"?t.refCleanup=l(n):l.current=n}}catch(a){yt(t,e,a)}}function He(t,e){var l=t.ref,n=t.refCleanup;if(l!==null)if(typeof n=="function")try{n()}catch(a){yt(t,e,a)}finally{t.refCleanup=null,t=t.alternate,t!=null&&(t.refCleanup=null)}else if(typeof l=="function")try{l(null)}catch(a){yt(t,e,a)}else l.current=null}function th(t){var e=t.type,l=t.memoizedProps,n=t.stateNode;try{t:switch(e){case"button":case"input":case"select":case"textarea":l.autoFocus&&n.focus();break t;case"img":l.src?n.src=l.src:l.srcSet&&(n.srcset=l.srcSet)}}catch(a){yt(t,t.return,a)}}function nc(t,e,l){try{var n=t.stateNode;xp(n,t.type,l,e),n[Pt]=e}catch(a){yt(t,t.return,a)}}function eh(t){return t.tag===5||t.tag===3||t.tag===26||t.tag===27&&zl(t.type)||t.tag===4}function ac(t){t:for(;;){for(;t.sibling===null;){if(t.return===null||eh(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.tag===27&&zl(t.type)||t.flags&2||t.child===null||t.tag===4)continue t;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function ic(t,e,l){var n=t.tag;if(n===5||n===6)t=t.stateNode,e?(l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l).insertBefore(t,e):(e=l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l,e.appendChild(t),l=l._reactRootContainer,l!=null||e.onclick!==null||(e.onclick=Ve));else if(n!==4&&(n===27&&zl(t.type)&&(l=t.stateNode,e=null),t=t.child,t!==null))for(ic(t,e,l),t=t.sibling;t!==null;)ic(t,e,l),t=t.sibling}function Hi(t,e,l){var n=t.tag;if(n===5||n===6)t=t.stateNode,e?l.insertBefore(t,e):l.appendChild(t);else if(n!==4&&(n===27&&zl(t.type)&&(l=t.stateNode),t=t.child,t!==null))for(Hi(t,e,l),t=t.sibling;t!==null;)Hi(t,e,l),t=t.sibling}function lh(t){var e=t.stateNode,l=t.memoizedProps;try{for(var n=t.type,a=e.attributes;a.length;)e.removeAttributeNode(a[0]);Jt(e,n,l),e[Qt]=t,e[Pt]=l}catch(u){yt(t,t.return,u)}}var tl=!1,jt=!1,uc=!1,nh=typeof WeakSet=="function"?WeakSet:Set,Gt=null;function ep(t,e){if(t=t.containerInfo,Oc=au,t=mf(t),Iu(t)){if("selectionStart"in t)var l={start:t.selectionStart,end:t.selectionEnd};else t:{l=(l=t.ownerDocument)&&l.defaultView||window;var n=l.getSelection&&l.getSelection();if(n&&n.rangeCount!==0){l=n.anchorNode;var a=n.anchorOffset,u=n.focusNode;n=n.focusOffset;try{l.nodeType,u.nodeType}catch{l=null;break t}var f=0,h=-1,y=-1,T=0,C=0,U=t,O=null;e:for(;;){for(var N;U!==l||a!==0&&U.nodeType!==3||(h=f+a),U!==u||n!==0&&U.nodeType!==3||(y=f+n),U.nodeType===3&&(f+=U.nodeValue.length),(N=U.firstChild)!==null;)O=U,U=N;for(;;){if(U===t)break e;if(O===l&&++T===a&&(h=f),O===u&&++C===n&&(y=f),(N=U.nextSibling)!==null)break;U=O,O=U.parentNode}U=N}l=h===-1||y===-1?null:{start:h,end:y}}else l=null}l=l||{start:0,end:0}}else l=null;for(Nc={focusedElem:t,selectionRange:l},au=!1,Gt=e;Gt!==null;)if(e=Gt,t=e.child,(e.subtreeFlags&1028)!==0&&t!==null)t.return=e,Gt=t;else for(;Gt!==null;){switch(e=Gt,u=e.alternate,t=e.flags,e.tag){case 0:if((t&4)!==0&&(t=e.updateQueue,t=t!==null?t.events:null,t!==null))for(l=0;l title"))),Jt(u,n,l),u[Qt]=t,Xt(u),n=u;break t;case"link":var f=rd("link","href",a).get(n+(l.href||""));if(f){for(var h=0;hbt&&(f=bt,bt=$,$=f);var E=hf(h,$),g=hf(h,bt);if(E&&g&&(N.rangeCount!==1||N.anchorNode!==E.node||N.anchorOffset!==E.offset||N.focusNode!==g.node||N.focusOffset!==g.offset)){var _=U.createRange();_.setStart(E.node,E.offset),N.removeAllRanges(),$>bt?(N.addRange(_),N.extend(g.node,g.offset)):(_.setEnd(g.node,g.offset),N.addRange(_))}}}}for(U=[],N=h;N=N.parentNode;)N.nodeType===1&&U.push({element:N,left:N.scrollLeft,top:N.scrollTop});for(typeof h.focus=="function"&&h.focus(),h=0;hl?32:l,D.T=null,l=dc,dc=null;var u=Rl,f=il;if(Yt=0,Bn=Rl=null,il=0,(ot&6)!==0)throw Error(r(331));var h=ot;if(ot|=4,mh(u.current),oh(u,u.current,f,l),ot=h,Na(0,!1),ce&&typeof ce.onPostCommitFiberRoot=="function")try{ce.onPostCommitFiberRoot(Kn,u)}catch{}return!0}finally{q.p=a,D.T=n,Mh(t,e)}}function Bh(t,e,l){e=Se(l,e),e=Ks(t.stateNode,e,2),t=bl(t,e,2),t!==null&&(kn(t,2),qe(t))}function yt(t,e,l){if(t.tag===3)Bh(t,t,l);else for(;e!==null;){if(e.tag===3){Bh(e,t,l);break}else if(e.tag===1){var n=e.stateNode;if(typeof e.type.getDerivedStateFromError=="function"||typeof n.componentDidCatch=="function"&&(Al===null||!Al.has(n))){t=Se(l,t),l=wo(2),n=bl(e,l,2),n!==null&&(jo(l,n,e,t),kn(n,2),qe(n));break}}e=e.return}}function vc(t,e,l){var n=t.pingCache;if(n===null){n=t.pingCache=new ap;var a=new Set;n.set(e,a)}else a=n.get(e),a===void 0&&(a=new Set,n.set(e,a));a.has(l)||(rc=!0,a.add(l),t=rp.bind(null,t,e,l),e.then(t,t))}function rp(t,e,l){var n=t.pingCache;n!==null&&n.delete(e),t.pingedLanes|=t.suspendedLanes&l,t.warmLanes&=~l,Et===t&&(it&l)===l&&(zt===4||zt===3&&(it&62914560)===it&&300>se()-Yi?(ot&2)===0&&wn(t,0):fc|=l,Un===it&&(Un=0)),qe(t)}function wh(t,e){e===0&&(e=Or()),t=Ql(t,e),t!==null&&(kn(t,e),qe(t))}function fp(t){var e=t.memoizedState,l=0;e!==null&&(l=e.retryLane),wh(t,l)}function op(t,e){var l=0;switch(t.tag){case 31:case 13:var n=t.stateNode,a=t.memoizedState;a!==null&&(l=a.retryLane);break;case 19:n=t.stateNode;break;case 22:n=t.stateNode._retryCache;break;default:throw Error(r(314))}n!==null&&n.delete(e),wh(t,l)}function hp(t,e){return Cu(t,e)}var Ji=null,Hn=null,gc=!1,ki=!1,bc=!1,Nl=0;function qe(t){t!==Hn&&t.next===null&&(Hn===null?Ji=Hn=t:Hn=Hn.next=t),ki=!0,gc||(gc=!0,mp())}function Na(t,e){if(!bc&&ki){bc=!0;do for(var l=!1,n=Ji;n!==null;){if(t!==0){var a=n.pendingLanes;if(a===0)var u=0;else{var f=n.suspendedLanes,h=n.pingedLanes;u=(1<<31-re(42|t)+1)-1,u&=a&~(f&~h),u=u&201326741?u&201326741|1:u?u|2:0}u!==0&&(l=!0,Lh(n,u))}else u=it,u=Pa(n,n===Et?u:0,n.cancelPendingCommit!==null||n.timeoutHandle!==-1),(u&3)===0||Jn(n,u)||(l=!0,Lh(n,u));n=n.next}while(l);bc=!1}}function dp(){jh()}function jh(){ki=gc=!1;var t=0;Nl!==0&&Tp()&&(t=Nl);for(var e=se(),l=null,n=Ji;n!==null;){var a=n.next,u=Hh(n,e);u===0?(n.next=null,l===null?Ji=a:l.next=a,a===null&&(Hn=l)):(l=n,(t!==0||(u&3)!==0)&&(ki=!0)),n=a}Yt!==0&&Yt!==5||Na(t),Nl!==0&&(Nl=0)}function Hh(t,e){for(var l=t.suspendedLanes,n=t.pingedLanes,a=t.expirationTimes,u=t.pendingLanes&-62914561;0h)break;var C=y.transferSize,U=y.initiatorType;C&&Jh(U)&&(y=y.responseEnd,f+=C*(y"u"?null:document;function id(t,e,l){var n=qn;if(n&&typeof e=="string"&&e){var a=ge(e);a='link[rel="'+t+'"][href="'+a+'"]',typeof l=="string"&&(a+='[crossorigin="'+l+'"]'),ad.has(a)||(ad.add(a),t={rel:t,crossOrigin:l,href:e},n.querySelector(a)===null&&(e=n.createElement("link"),Jt(e,"link",t),Xt(e),n.head.appendChild(e)))}}function Up(t){ul.D(t),id("dns-prefetch",t,null)}function Bp(t,e){ul.C(t,e),id("preconnect",t,e)}function wp(t,e,l){ul.L(t,e,l);var n=qn;if(n&&t&&e){var a='link[rel="preload"][as="'+ge(e)+'"]';e==="image"&&l&&l.imageSrcSet?(a+='[imagesrcset="'+ge(l.imageSrcSet)+'"]',typeof l.imageSizes=="string"&&(a+='[imagesizes="'+ge(l.imageSizes)+'"]')):a+='[href="'+ge(t)+'"]';var u=a;switch(e){case"style":u=Ln(t);break;case"script":u=Yn(t)}Re.has(u)||(t=R({rel:"preload",href:e==="image"&&l&&l.imageSrcSet?void 0:t,as:e},l),Re.set(u,t),n.querySelector(a)!==null||e==="style"&&n.querySelector(Ma(u))||e==="script"&&n.querySelector(Ua(u))||(e=n.createElement("link"),Jt(e,"link",t),Xt(e),n.head.appendChild(e)))}}function jp(t,e){ul.m(t,e);var l=qn;if(l&&t){var n=e&&typeof e.as=="string"?e.as:"script",a='link[rel="modulepreload"][as="'+ge(n)+'"][href="'+ge(t)+'"]',u=a;switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":u=Yn(t)}if(!Re.has(u)&&(t=R({rel:"modulepreload",href:t},e),Re.set(u,t),l.querySelector(a)===null)){switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(l.querySelector(Ua(u)))return}n=l.createElement("link"),Jt(n,"link",t),Xt(n),l.head.appendChild(n)}}}function Hp(t,e,l){ul.S(t,e,l);var n=qn;if(n&&t){var a=sn(n).hoistableStyles,u=Ln(t);e=e||"default";var f=a.get(u);if(!f){var h={loading:0,preload:null};if(f=n.querySelector(Ma(u)))h.loading=5;else{t=R({rel:"stylesheet",href:t,"data-precedence":e},l),(l=Re.get(u))&&wc(t,l);var y=f=n.createElement("link");Xt(y),Jt(y,"link",t),y._p=new Promise(function(T,C){y.onload=T,y.onerror=C}),y.addEventListener("load",function(){h.loading|=1}),y.addEventListener("error",function(){h.loading|=2}),h.loading|=4,Ii(f,e,n)}f={type:"stylesheet",instance:f,count:1,state:h},a.set(u,f)}}}function qp(t,e){ul.X(t,e);var l=qn;if(l&&t){var n=sn(l).hoistableScripts,a=Yn(t),u=n.get(a);u||(u=l.querySelector(Ua(a)),u||(t=R({src:t,async:!0},e),(e=Re.get(a))&&jc(t,e),u=l.createElement("script"),Xt(u),Jt(u,"link",t),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(a,u))}}function Lp(t,e){ul.M(t,e);var l=qn;if(l&&t){var n=sn(l).hoistableScripts,a=Yn(t),u=n.get(a);u||(u=l.querySelector(Ua(a)),u||(t=R({src:t,async:!0,type:"module"},e),(e=Re.get(a))&&jc(t,e),u=l.createElement("script"),Xt(u),Jt(u,"link",t),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(a,u))}}function ud(t,e,l,n){var a=(a=lt.current)?Pi(a):null;if(!a)throw Error(r(446));switch(t){case"meta":case"title":return null;case"style":return typeof l.precedence=="string"&&typeof l.href=="string"?(e=Ln(l.href),l=sn(a).hoistableStyles,n=l.get(e),n||(n={type:"style",instance:null,count:0,state:null},l.set(e,n)),n):{type:"void",instance:null,count:0,state:null};case"link":if(l.rel==="stylesheet"&&typeof l.href=="string"&&typeof l.precedence=="string"){t=Ln(l.href);var u=sn(a).hoistableStyles,f=u.get(t);if(f||(a=a.ownerDocument||a,f={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},u.set(t,f),(u=a.querySelector(Ma(t)))&&!u._p&&(f.instance=u,f.state.loading=5),Re.has(t)||(l={rel:"preload",as:"style",href:l.href,crossOrigin:l.crossOrigin,integrity:l.integrity,media:l.media,hrefLang:l.hrefLang,referrerPolicy:l.referrerPolicy},Re.set(t,l),u||Yp(a,t,l,f.state))),e&&n===null)throw Error(r(528,""));return f}if(e&&n!==null)throw Error(r(529,""));return null;case"script":return e=l.async,l=l.src,typeof l=="string"&&e&&typeof e!="function"&&typeof e!="symbol"?(e=Yn(l),l=sn(a).hoistableScripts,n=l.get(e),n||(n={type:"script",instance:null,count:0,state:null},l.set(e,n)),n):{type:"void",instance:null,count:0,state:null};default:throw Error(r(444,t))}}function Ln(t){return'href="'+ge(t)+'"'}function Ma(t){return'link[rel="stylesheet"]['+t+"]"}function sd(t){return R({},t,{"data-precedence":t.precedence,precedence:null})}function Yp(t,e,l,n){t.querySelector('link[rel="preload"][as="style"]['+e+"]")?n.loading=1:(e=t.createElement("link"),n.preload=e,e.addEventListener("load",function(){return n.loading|=1}),e.addEventListener("error",function(){return n.loading|=2}),Jt(e,"link",l),Xt(e),t.head.appendChild(e))}function Yn(t){return'[src="'+ge(t)+'"]'}function Ua(t){return"script[async]"+t}function cd(t,e,l){if(e.count++,e.instance===null)switch(e.type){case"style":var n=t.querySelector('style[data-href~="'+ge(l.href)+'"]');if(n)return e.instance=n,Xt(n),n;var a=R({},l,{"data-href":l.href,"data-precedence":l.precedence,href:null,precedence:null});return n=(t.ownerDocument||t).createElement("style"),Xt(n),Jt(n,"style",a),Ii(n,l.precedence,t),e.instance=n;case"stylesheet":a=Ln(l.href);var u=t.querySelector(Ma(a));if(u)return e.state.loading|=4,e.instance=u,Xt(u),u;n=sd(l),(a=Re.get(a))&&wc(n,a),u=(t.ownerDocument||t).createElement("link"),Xt(u);var f=u;return f._p=new Promise(function(h,y){f.onload=h,f.onerror=y}),Jt(u,"link",n),e.state.loading|=4,Ii(u,l.precedence,t),e.instance=u;case"script":return u=Yn(l.src),(a=t.querySelector(Ua(u)))?(e.instance=a,Xt(a),a):(n=l,(a=Re.get(u))&&(n=R({},l),jc(n,a)),t=t.ownerDocument||t,a=t.createElement("script"),Xt(a),Jt(a,"link",n),t.head.appendChild(a),e.instance=a);case"void":return null;default:throw Error(r(443,e.type))}else e.type==="stylesheet"&&(e.state.loading&4)===0&&(n=e.instance,e.state.loading|=4,Ii(n,l.precedence,t));return e.instance}function Ii(t,e,l){for(var n=l.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=n.length?n[n.length-1]:null,u=a,f=0;f title"):null)}function Xp(t,e,l){if(l===1||e.itemProp!=null)return!1;switch(t){case"meta":case"title":return!0;case"style":if(typeof e.precedence!="string"||typeof e.href!="string"||e.href==="")break;return!0;case"link":if(typeof e.rel!="string"||typeof e.href!="string"||e.href===""||e.onLoad||e.onError)break;switch(e.rel){case"stylesheet":return t=e.disabled,typeof e.precedence=="string"&&t==null;default:return!0}case"script":if(e.async&&typeof e.async!="function"&&typeof e.async!="symbol"&&!e.onLoad&&!e.onError&&e.src&&typeof e.src=="string")return!0}return!1}function od(t){return!(t.type==="stylesheet"&&(t.state.loading&3)===0)}function Gp(t,e,l,n){if(l.type==="stylesheet"&&(typeof n.media!="string"||matchMedia(n.media).matches!==!1)&&(l.state.loading&4)===0){if(l.instance===null){var a=Ln(n.href),u=e.querySelector(Ma(a));if(u){e=u._p,e!==null&&typeof e=="object"&&typeof e.then=="function"&&(t.count++,t=eu.bind(t),e.then(t,t)),l.state.loading|=4,l.instance=u,Xt(u);return}u=e.ownerDocument||e,n=sd(n),(a=Re.get(a))&&wc(n,a),u=u.createElement("link"),Xt(u);var f=u;f._p=new Promise(function(h,y){f.onload=h,f.onerror=y}),Jt(u,"link",n),l.instance=u}t.stylesheets===null&&(t.stylesheets=new Map),t.stylesheets.set(l,e),(e=l.state.preload)&&(l.state.loading&3)===0&&(t.count++,l=eu.bind(t),e.addEventListener("load",l),e.addEventListener("error",l))}}var Hc=0;function Qp(t,e){return t.stylesheets&&t.count===0&&nu(t,t.stylesheets),0Hc?50:800)+e);return t.unsuspend=l,function(){t.unsuspend=null,clearTimeout(n),clearTimeout(a)}}:null}function eu(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)nu(this,this.stylesheets);else if(this.unsuspend){var t=this.unsuspend;this.unsuspend=null,t()}}}var lu=null;function nu(t,e){t.stylesheets=null,t.unsuspend!==null&&(t.count++,lu=new Map,e.forEach(Vp,t),lu=null,eu.call(t))}function Vp(t,e){if(!(e.state.loading&4)){var l=lu.get(t);if(l)var n=l.get(null);else{l=new Map,lu.set(t,l);for(var a=t.querySelectorAll("link[data-precedence],style[data-precedence]"),u=0;u"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(s)}catch(i){console.error(i)}}return s(),Kc.exports=u0(),Kc.exports}var c0=s0();var wd="popstate";function r0(s={}){function i(r,o){let{pathname:d,search:m,hash:S}=r.location;return er("",{pathname:d,search:m,hash:S},o.state&&o.state.usr||null,o.state&&o.state.key||"default")}function c(r,o){return typeof o=="string"?o:Qa(o)}return o0(i,c,null,s)}function Rt(s,i){if(s===!1||s===null||typeof s>"u")throw new Error(i)}function Ue(s,i){if(!s){typeof console<"u"&&console.warn(i);try{throw new Error(i)}catch{}}}function f0(){return Math.random().toString(36).substring(2,10)}function jd(s,i){return{usr:s.state,key:s.key,idx:i}}function er(s,i,c=null,r){return{pathname:typeof s=="string"?s:s.pathname,search:"",hash:"",...typeof i=="string"?Gn(i):i,state:c,key:i&&i.key||r||f0()}}function Qa({pathname:s="/",search:i="",hash:c=""}){return i&&i!=="?"&&(s+=i.charAt(0)==="?"?i:"?"+i),c&&c!=="#"&&(s+=c.charAt(0)==="#"?c:"#"+c),s}function Gn(s){let i={};if(s){let c=s.indexOf("#");c>=0&&(i.hash=s.substring(c),s=s.substring(0,c));let r=s.indexOf("?");r>=0&&(i.search=s.substring(r),s=s.substring(0,r)),s&&(i.pathname=s)}return i}function o0(s,i,c,r={}){let{window:o=document.defaultView,v5Compat:d=!1}=r,m=o.history,S="POP",p=null,v=z();v==null&&(v=0,m.replaceState({...m.state,idx:v},""));function z(){return(m.state||{idx:null}).idx}function R(){S="POP";let Y=z(),X=Y==null?null:Y-v;v=Y,p&&p({action:S,location:Z.location,delta:X})}function w(Y,X){S="PUSH";let Q=er(Z.location,Y,X);v=z()+1;let k=jd(Q,v),dt=Z.createHref(Q);try{m.pushState(k,"",dt)}catch(Tt){if(Tt instanceof DOMException&&Tt.name==="DataCloneError")throw Tt;o.location.assign(dt)}d&&p&&p({action:S,location:Z.location,delta:1})}function H(Y,X){S="REPLACE";let Q=er(Z.location,Y,X);v=z();let k=jd(Q,v),dt=Z.createHref(Q);m.replaceState(k,"",dt),d&&p&&p({action:S,location:Z.location,delta:0})}function j(Y){return h0(Y)}let Z={get action(){return S},get location(){return s(o,m)},listen(Y){if(p)throw new Error("A history only accepts one active listener");return o.addEventListener(wd,R),p=Y,()=>{o.removeEventListener(wd,R),p=null}},createHref(Y){return i(o,Y)},createURL:j,encodeLocation(Y){let X=j(Y);return{pathname:X.pathname,search:X.search,hash:X.hash}},push:w,replace:H,go(Y){return m.go(Y)}};return Z}function h0(s,i=!1){let c="http://localhost";typeof window<"u"&&(c=window.location.origin!=="null"?window.location.origin:window.location.href),Rt(c,"No window.location.(origin|href) available to create URL");let r=typeof s=="string"?s:Qa(s);return r=r.replace(/ $/,"%20"),!i&&r.startsWith("//")&&(r=c+r),new URL(r,c)}function Jd(s,i,c="/"){return d0(s,i,c,!1)}function d0(s,i,c,r){let o=typeof i=="string"?Gn(i):i,d=cl(o.pathname||"/",c);if(d==null)return null;let m=kd(s);m0(m);let S=null;for(let p=0;S==null&&p{let z={relativePath:v===void 0?m.path||"":v,caseSensitive:m.caseSensitive===!0,childrenIndex:S,route:m};if(z.relativePath.startsWith("/")){if(!z.relativePath.startsWith(r)&&p)return;Rt(z.relativePath.startsWith(r),`Absolute route path "${z.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),z.relativePath=z.relativePath.slice(r.length)}let R=sl([r,z.relativePath]),w=c.concat(z);m.children&&m.children.length>0&&(Rt(m.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${R}".`),kd(m.children,i,w,R,p)),!(m.path==null&&!m.index)&&i.push({path:R,score:E0(R,m.index),routesMeta:w})};return s.forEach((m,S)=>{if(m.path===""||!m.path?.includes("?"))d(m,S);else for(let p of $d(m.path))d(m,S,!0,p)}),i}function $d(s){let i=s.split("/");if(i.length===0)return[];let[c,...r]=i,o=c.endsWith("?"),d=c.replace(/\?$/,"");if(r.length===0)return o?[d,""]:[d];let m=$d(r.join("/")),S=[];return S.push(...m.map(p=>p===""?d:[d,p].join("/"))),o&&S.push(...m),S.map(p=>s.startsWith("/")&&p===""?"/":p)}function m0(s){s.sort((i,c)=>i.score!==c.score?c.score-i.score:x0(i.routesMeta.map(r=>r.childrenIndex),c.routesMeta.map(r=>r.childrenIndex)))}var y0=/^:[\w-]+$/,p0=3,v0=2,g0=1,b0=10,S0=-2,Hd=s=>s==="*";function E0(s,i){let c=s.split("/"),r=c.length;return c.some(Hd)&&(r+=S0),i&&(r+=v0),c.filter(o=>!Hd(o)).reduce((o,d)=>o+(y0.test(d)?p0:d===""?g0:b0),r)}function x0(s,i){return s.length===i.length&&s.slice(0,-1).every((r,o)=>r===i[o])?s[s.length-1]-i[i.length-1]:0}function _0(s,i,c=!1){let{routesMeta:r}=s,o={},d="/",m=[];for(let S=0;S{if(z==="*"){let j=S[w]||"";m=d.slice(0,d.length-j.length).replace(/(.)\/+$/,"$1")}const H=S[w];return R&&!H?v[z]=void 0:v[z]=(H||"").replace(/%2F/g,"/"),v},{}),pathname:d,pathnameBase:m,pattern:s}}function T0(s,i=!1,c=!0){Ue(s==="*"||!s.endsWith("*")||s.endsWith("/*"),`Route path "${s}" will be treated as if it were "${s.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${s.replace(/\*$/,"/*")}".`);let r=[],o="^"+s.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(m,S,p)=>(r.push({paramName:S,isOptional:p!=null}),p?"/?([^\\/]+)?":"/([^\\/]+)")).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return s.endsWith("*")?(r.push({paramName:"*"}),o+=s==="*"||s==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):c?o+="\\/*$":s!==""&&s!=="/"&&(o+="(?:(?=\\/|$))"),[new RegExp(o,i?void 0:"i"),r]}function A0(s){try{return s.split("/").map(i=>decodeURIComponent(i).replace(/\//g,"%2F")).join("/")}catch(i){return Ue(!1,`The URL path "${s}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${i}).`),s}}function cl(s,i){if(i==="/")return s;if(!s.toLowerCase().startsWith(i.toLowerCase()))return null;let c=i.endsWith("/")?i.length-1:i.length,r=s.charAt(c);return r&&r!=="/"?null:s.slice(c)||"/"}var R0=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,O0=s=>R0.test(s);function N0(s,i="/"){let{pathname:c,search:r="",hash:o=""}=typeof s=="string"?Gn(s):s,d;if(c)if(O0(c))d=c;else{if(c.includes("//")){let m=c;c=c.replace(/\/\/+/g,"/"),Ue(!1,`Pathnames cannot have embedded double slashes - normalizing ${m} -> ${c}`)}c.startsWith("/")?d=qd(c.substring(1),"/"):d=qd(c,i)}else d=i;return{pathname:d,search:D0(r),hash:M0(o)}}function qd(s,i){let c=i.replace(/\/+$/,"").split("/");return s.split("/").forEach(o=>{o===".."?c.length>1&&c.pop():o!=="."&&c.push(o)}),c.length>1?c.join("/"):"/"}function Wc(s,i,c,r){return`Cannot include a '${s}' character in a manually specified \`to.${i}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${c}\` field. Alternatively you may provide the full path as a string in and the router will parse it for you.`}function z0(s){return s.filter((i,c)=>c===0||i.route.path&&i.route.path.length>0)}function Wd(s){let i=z0(s);return i.map((c,r)=>r===i.length-1?c.pathname:c.pathnameBase)}function Fd(s,i,c,r=!1){let o;typeof s=="string"?o=Gn(s):(o={...s},Rt(!o.pathname||!o.pathname.includes("?"),Wc("?","pathname","search",o)),Rt(!o.pathname||!o.pathname.includes("#"),Wc("#","pathname","hash",o)),Rt(!o.search||!o.search.includes("#"),Wc("#","search","hash",o)));let d=s===""||o.pathname==="",m=d?"/":o.pathname,S;if(m==null)S=c;else{let R=i.length-1;if(!r&&m.startsWith("..")){let w=m.split("/");for(;w[0]==="..";)w.shift(),R-=1;o.pathname=w.join("/")}S=R>=0?i[R]:"/"}let p=N0(o,S),v=m&&m!=="/"&&m.endsWith("/"),z=(d||m===".")&&c.endsWith("/");return!p.pathname.endsWith("/")&&(v||z)&&(p.pathname+="/"),p}var sl=s=>s.join("/").replace(/\/\/+/g,"/"),C0=s=>s.replace(/\/+$/,"").replace(/^\/*/,"/"),D0=s=>!s||s==="?"?"":s.startsWith("?")?s:"?"+s,M0=s=>!s||s==="#"?"":s.startsWith("#")?s:"#"+s;function U0(s){return s!=null&&typeof s.status=="number"&&typeof s.statusText=="string"&&typeof s.internal=="boolean"&&"data"in s}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var Pd=["POST","PUT","PATCH","DELETE"];new Set(Pd);var B0=["GET",...Pd];new Set(B0);var Qn=x.createContext(null);Qn.displayName="DataRouter";var Eu=x.createContext(null);Eu.displayName="DataRouterState";x.createContext(!1);var Id=x.createContext({isTransitioning:!1});Id.displayName="ViewTransition";var w0=x.createContext(new Map);w0.displayName="Fetchers";var j0=x.createContext(null);j0.displayName="Await";var Xe=x.createContext(null);Xe.displayName="Navigation";var Va=x.createContext(null);Va.displayName="Location";var rl=x.createContext({outlet:null,matches:[],isDataRoute:!1});rl.displayName="Route";var or=x.createContext(null);or.displayName="RouteError";function H0(s,{relative:i}={}){Rt(Za(),"useHref() may be used only in the context of a component.");let{basename:c,navigator:r}=x.useContext(Xe),{hash:o,pathname:d,search:m}=Ka(s,{relative:i}),S=d;return c!=="/"&&(S=d==="/"?c:sl([c,d])),r.createHref({pathname:S,search:m,hash:o})}function Za(){return x.useContext(Va)!=null}function ln(){return Rt(Za(),"useLocation() may be used only in the context of a component."),x.useContext(Va).location}var tm="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function em(s){x.useContext(Xe).static||x.useLayoutEffect(s)}function q0(){let{isDataRoute:s}=x.useContext(rl);return s?F0():L0()}function L0(){Rt(Za(),"useNavigate() may be used only in the context of a component.");let s=x.useContext(Qn),{basename:i,navigator:c}=x.useContext(Xe),{matches:r}=x.useContext(rl),{pathname:o}=ln(),d=JSON.stringify(Wd(r)),m=x.useRef(!1);return em(()=>{m.current=!0}),x.useCallback((p,v={})=>{if(Ue(m.current,tm),!m.current)return;if(typeof p=="number"){c.go(p);return}let z=Fd(p,JSON.parse(d),o,v.relative==="path");s==null&&i!=="/"&&(z.pathname=z.pathname==="/"?i:sl([i,z.pathname])),(v.replace?c.replace:c.push)(z,v.state,v)},[i,c,d,o,s])}x.createContext(null);function Ka(s,{relative:i}={}){let{matches:c}=x.useContext(rl),{pathname:r}=ln(),o=JSON.stringify(Wd(c));return x.useMemo(()=>Fd(s,JSON.parse(o),r,i==="path"),[s,o,r,i])}function Y0(s,i){return lm(s,i)}function lm(s,i,c,r,o){Rt(Za(),"useRoutes() may be used only in the context of a component.");let{navigator:d}=x.useContext(Xe),{matches:m}=x.useContext(rl),S=m[m.length-1],p=S?S.params:{},v=S?S.pathname:"/",z=S?S.pathnameBase:"/",R=S&&S.route;{let Q=R&&R.path||"";nm(v,!R||Q.endsWith("*")||Q.endsWith("*?"),`You rendered descendant (or called \`useRoutes()\`) at "${v}" (under ) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render. +`+n.stack}}var Cu=Object.prototype.hasOwnProperty,zu=s.unstable_scheduleCallback,Du=s.unstable_cancelCallback,Dm=s.unstable_shouldYield,Mm=s.unstable_requestPaint,se=s.unstable_now,Um=s.unstable_getCurrentPriorityLevel,Tr=s.unstable_ImmediatePriority,Ar=s.unstable_UserBlockingPriority,ka=s.unstable_NormalPriority,Bm=s.unstable_LowPriority,Rr=s.unstable_IdlePriority,wm=s.log,jm=s.unstable_setDisableYieldValue,Kn=null,ce=null;function fl(t){if(typeof wm=="function"&&jm(t),ce&&typeof ce.setStrictMode=="function")try{ce.setStrictMode(Kn,t)}catch{}}var re=Math.clz32?Math.clz32:Lm,Hm=Math.log,qm=Math.LN2;function Lm(t){return t>>>=0,t===0?32:31-(Hm(t)/qm|0)|0}var $a=256,Wa=262144,Fa=4194304;function ql(t){var e=t&42;if(e!==0)return e;switch(t&-t){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return t&261888;case 262144:case 524288:case 1048576:case 2097152:return t&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return t&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return t}}function Ia(t,e,l){var n=t.pendingLanes;if(n===0)return 0;var a=0,u=t.suspendedLanes,f=t.pingedLanes;t=t.warmLanes;var h=n&134217727;return h!==0?(n=h&~u,n!==0?a=ql(n):(f&=h,f!==0?a=ql(f):l||(l=h&~t,l!==0&&(a=ql(l))))):(h=n&~u,h!==0?a=ql(h):f!==0?a=ql(f):l||(l=n&~t,l!==0&&(a=ql(l)))),a===0?0:e!==0&&e!==a&&(e&u)===0&&(u=a&-a,l=e&-e,u>=l||u===32&&(l&4194048)!==0)?e:a}function Jn(t,e){return(t.pendingLanes&~(t.suspendedLanes&~t.pingedLanes)&e)===0}function Ym(t,e){switch(t){case 1:case 2:case 4:case 8:case 64:return e+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 e+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 Or(){var t=Fa;return Fa<<=1,(Fa&62914560)===0&&(Fa=4194304),t}function Mu(t){for(var e=[],l=0;31>l;l++)e.push(t);return e}function kn(t,e){t.pendingLanes|=e,e!==268435456&&(t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0)}function Xm(t,e,l,n,a,u){var f=t.pendingLanes;t.pendingLanes=l,t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0,t.expiredLanes&=l,t.entangledLanes&=l,t.errorRecoveryDisabledLanes&=l,t.shellSuspendCounter=0;var h=t.entanglements,p=t.expirationTimes,A=t.hiddenUpdates;for(l=f&~l;0"u")return null;try{return t.activeElement||t.body}catch{return t.body}}var Jm=/[\n"\\]/g;function ge(t){return t.replace(Jm,function(e){return"\\"+e.charCodeAt(0).toString(16)+" "})}function qu(t,e,l,n,a,u,f,h){t.name="",f!=null&&typeof f!="function"&&typeof f!="symbol"&&typeof f!="boolean"?t.type=f:t.removeAttribute("type"),e!=null?f==="number"?(e===0&&t.value===""||t.value!=e)&&(t.value=""+ve(e)):t.value!==""+ve(e)&&(t.value=""+ve(e)):f!=="submit"&&f!=="reset"||t.removeAttribute("value"),e!=null?Lu(t,f,ve(e)):l!=null?Lu(t,f,ve(l)):n!=null&&t.removeAttribute("value"),a==null&&u!=null&&(t.defaultChecked=!!u),a!=null&&(t.checked=a&&typeof a!="function"&&typeof a!="symbol"),h!=null&&typeof h!="function"&&typeof h!="symbol"&&typeof h!="boolean"?t.name=""+ve(h):t.removeAttribute("name")}function Yr(t,e,l,n,a,u,f,h){if(u!=null&&typeof u!="function"&&typeof u!="symbol"&&typeof u!="boolean"&&(t.type=u),e!=null||l!=null){if(!(u!=="submit"&&u!=="reset"||e!=null)){Hu(t);return}l=l!=null?""+ve(l):"",e=e!=null?""+ve(e):l,h||e===t.value||(t.value=e),t.defaultValue=e}n=n??a,n=typeof n!="function"&&typeof n!="symbol"&&!!n,t.checked=h?t.checked:!!n,t.defaultChecked=!!n,f!=null&&typeof f!="function"&&typeof f!="symbol"&&typeof f!="boolean"&&(t.name=f),Hu(t)}function Lu(t,e,l){e==="number"&&ei(t.ownerDocument)===t||t.defaultValue===""+l||(t.defaultValue=""+l)}function rn(t,e,l,n){if(t=t.options,e){e={};for(var a=0;a"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Vu=!1;if(Ze)try{var In={};Object.defineProperty(In,"passive",{get:function(){Vu=!0}}),window.addEventListener("test",In,In),window.removeEventListener("test",In,In)}catch{Vu=!1}var hl=null,Zu=null,ni=null;function Jr(){if(ni)return ni;var t,e=Zu,l=e.length,n,a="value"in hl?hl.value:hl.textContent,u=a.length;for(t=0;t=ea),Pr=" ",tf=!1;function ef(t,e){switch(t){case"keyup":return Ey.indexOf(e.keyCode)!==-1;case"keydown":return e.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function lf(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var dn=!1;function _y(t,e){switch(t){case"compositionend":return lf(e);case"keypress":return e.which!==32?null:(tf=!0,Pr);case"textInput":return t=e.data,t===Pr&&tf?null:t;default:return null}}function Ty(t,e){if(dn)return t==="compositionend"||!Wu&&ef(t,e)?(t=Jr(),ni=Zu=hl=null,dn=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(e.ctrlKey||e.altKey||e.metaKey)||e.ctrlKey&&e.altKey){if(e.char&&1=e)return{node:l,offset:e-t};t=n}t:{for(;l;){if(l.nextSibling){l=l.nextSibling;break t}l=l.parentNode}l=void 0}l=of(l)}}function df(t,e){return t&&e?t===e?!0:t&&t.nodeType===3?!1:e&&e.nodeType===3?df(t,e.parentNode):"contains"in t?t.contains(e):t.compareDocumentPosition?!!(t.compareDocumentPosition(e)&16):!1:!1}function mf(t){t=t!=null&&t.ownerDocument!=null&&t.ownerDocument.defaultView!=null?t.ownerDocument.defaultView:window;for(var e=ei(t.document);e instanceof t.HTMLIFrameElement;){try{var l=typeof e.contentWindow.location.href=="string"}catch{l=!1}if(l)t=e.contentWindow;else break;e=ei(t.document)}return e}function Pu(t){var e=t&&t.nodeName&&t.nodeName.toLowerCase();return e&&(e==="input"&&(t.type==="text"||t.type==="search"||t.type==="tel"||t.type==="url"||t.type==="password")||e==="textarea"||t.contentEditable==="true")}var My=Ze&&"documentMode"in document&&11>=document.documentMode,mn=null,ts=null,ia=null,es=!1;function yf(t,e,l){var n=l.window===l?l.document:l.nodeType===9?l:l.ownerDocument;es||mn==null||mn!==ei(n)||(n=mn,"selectionStart"in n&&Pu(n)?n={start:n.selectionStart,end:n.selectionEnd}:(n=(n.ownerDocument&&n.ownerDocument.defaultView||window).getSelection(),n={anchorNode:n.anchorNode,anchorOffset:n.anchorOffset,focusNode:n.focusNode,focusOffset:n.focusOffset}),ia&&aa(ia,n)||(ia=n,n=Wi(ts,"onSelect"),0>=f,a-=f,we=1<<32-re(e)+a|l<et?(ut=Z,Z=null):ut=Z.sibling;var ft=O(E,Z,_[et],M);if(ft===null){Z===null&&(Z=ut);break}t&&Z&&ft.alternate===null&&e(E,Z),g=u(ft,g,et),rt===null?J=ft:rt.sibling=ft,rt=ft,Z=ut}if(et===_.length)return l(E,Z),st&&Je(E,et),J;if(Z===null){for(;et<_.length;et++)Z=U(E,_[et],M),Z!==null&&(g=u(Z,g,et),rt===null?J=Z:rt.sibling=Z,rt=Z);return st&&Je(E,et),J}for(Z=n(Z);et<_.length;et++)ut=N(Z,E,et,_[et],M),ut!==null&&(t&&ut.alternate!==null&&Z.delete(ut.key===null?et:ut.key),g=u(ut,g,et),rt===null?J=ut:rt.sibling=ut,rt=ut);return t&&Z.forEach(function(Bl){return e(E,Bl)}),st&&Je(E,et),J}function $(E,g,_,M){if(_==null)throw Error(r(151));for(var J=null,rt=null,Z=g,et=g=0,ut=null,ft=_.next();Z!==null&&!ft.done;et++,ft=_.next()){Z.index>et?(ut=Z,Z=null):ut=Z.sibling;var Bl=O(E,Z,ft.value,M);if(Bl===null){Z===null&&(Z=ut);break}t&&Z&&Bl.alternate===null&&e(E,Z),g=u(Bl,g,et),rt===null?J=Bl:rt.sibling=Bl,rt=Bl,Z=ut}if(ft.done)return l(E,Z),st&&Je(E,et),J;if(Z===null){for(;!ft.done;et++,ft=_.next())ft=U(E,ft.value,M),ft!==null&&(g=u(ft,g,et),rt===null?J=ft:rt.sibling=ft,rt=ft);return st&&Je(E,et),J}for(Z=n(Z);!ft.done;et++,ft=_.next())ft=N(Z,E,et,ft.value,M),ft!==null&&(t&&ft.alternate!==null&&Z.delete(ft.key===null?et:ft.key),g=u(ft,g,et),rt===null?J=ft:rt.sibling=ft,rt=ft);return t&&Z.forEach(function(Ip){return e(E,Ip)}),st&&Je(E,et),J}function bt(E,g,_,M){if(typeof _=="object"&&_!==null&&_.type===Q&&_.key===null&&(_=_.props.children),typeof _=="object"&&_!==null){switch(_.$$typeof){case j:t:{for(var J=_.key;g!==null;){if(g.key===J){if(J=_.type,J===Q){if(g.tag===7){l(E,g.sibling),M=a(g,_.props.children),M.return=E,E=M;break t}}else if(g.elementType===J||typeof J=="object"&&J!==null&&J.$$typeof===Lt&&$l(J)===g.type){l(E,g.sibling),M=a(g,_.props),oa(M,_),M.return=E,E=M;break t}l(E,g);break}else e(E,g);g=g.sibling}_.type===Q?(M=Vl(_.props.children,E.mode,M,_.key),M.return=E,E=M):(M=di(_.type,_.key,_.props,null,E.mode,M),oa(M,_),M.return=E,E=M)}return f(E);case L:t:{for(J=_.key;g!==null;){if(g.key===J)if(g.tag===4&&g.stateNode.containerInfo===_.containerInfo&&g.stateNode.implementation===_.implementation){l(E,g.sibling),M=a(g,_.children||[]),M.return=E,E=M;break t}else{l(E,g);break}else e(E,g);g=g.sibling}M=cs(_,E.mode,M),M.return=E,E=M}return f(E);case Lt:return _=$l(_),bt(E,g,_,M)}if(Ne(_))return X(E,g,_,M);if(Ft(_)){if(J=Ft(_),typeof J!="function")throw Error(r(150));return _=J.call(_),$(E,g,_,M)}if(typeof _.then=="function")return bt(E,g,Si(_),M);if(_.$$typeof===k)return bt(E,g,pi(E,_),M);Ei(E,_)}return typeof _=="string"&&_!==""||typeof _=="number"||typeof _=="bigint"?(_=""+_,g!==null&&g.tag===6?(l(E,g.sibling),M=a(g,_),M.return=E,E=M):(l(E,g),M=ss(_,E.mode,M),M.return=E,E=M),f(E)):l(E,g)}return function(E,g,_,M){try{fa=0;var J=bt(E,g,_,M);return An=null,J}catch(Z){if(Z===Tn||Z===gi)throw Z;var rt=oe(29,Z,null,E.mode);return rt.lanes=M,rt.return=E,rt}finally{}}}var Fl=qf(!0),Lf=qf(!1),vl=!1;function Ss(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function Es(t,e){t=t.updateQueue,e.updateQueue===t&&(e.updateQueue={baseState:t.baseState,firstBaseUpdate:t.firstBaseUpdate,lastBaseUpdate:t.lastBaseUpdate,shared:t.shared,callbacks:null})}function gl(t){return{lane:t,tag:0,payload:null,callback:null,next:null}}function bl(t,e,l){var n=t.updateQueue;if(n===null)return null;if(n=n.shared,(ot&2)!==0){var a=n.pending;return a===null?e.next=e:(e.next=a.next,a.next=e),n.pending=e,e=hi(t),xf(t,null,l),e}return oi(t,n,e,l),hi(t)}function ha(t,e,l){if(e=e.updateQueue,e!==null&&(e=e.shared,(l&4194048)!==0)){var n=e.lanes;n&=t.pendingLanes,l|=n,e.lanes=l,Cr(t,l)}}function xs(t,e){var l=t.updateQueue,n=t.alternate;if(n!==null&&(n=n.updateQueue,l===n)){var a=null,u=null;if(l=l.firstBaseUpdate,l!==null){do{var f={lane:l.lane,tag:l.tag,payload:l.payload,callback:null,next:null};u===null?a=u=f:u=u.next=f,l=l.next}while(l!==null);u===null?a=u=e:u=u.next=e}else a=u=e;l={baseState:n.baseState,firstBaseUpdate:a,lastBaseUpdate:u,shared:n.shared,callbacks:n.callbacks},t.updateQueue=l;return}t=l.lastBaseUpdate,t===null?l.firstBaseUpdate=e:t.next=e,l.lastBaseUpdate=e}var _s=!1;function da(){if(_s){var t=_n;if(t!==null)throw t}}function ma(t,e,l,n){_s=!1;var a=t.updateQueue;vl=!1;var u=a.firstBaseUpdate,f=a.lastBaseUpdate,h=a.shared.pending;if(h!==null){a.shared.pending=null;var p=h,A=p.next;p.next=null,f===null?u=A:f.next=A,f=p;var z=t.alternate;z!==null&&(z=z.updateQueue,h=z.lastBaseUpdate,h!==f&&(h===null?z.firstBaseUpdate=A:h.next=A,z.lastBaseUpdate=p))}if(u!==null){var U=a.baseState;f=0,z=A=p=null,h=u;do{var O=h.lane&-536870913,N=O!==h.lane;if(N?(it&O)===O:(n&O)===O){O!==0&&O===xn&&(_s=!0),z!==null&&(z=z.next={lane:0,tag:h.tag,payload:h.payload,callback:null,next:null});t:{var X=t,$=h;O=e;var bt=l;switch($.tag){case 1:if(X=$.payload,typeof X=="function"){U=X.call(bt,U,O);break t}U=X;break t;case 3:X.flags=X.flags&-65537|128;case 0:if(X=$.payload,O=typeof X=="function"?X.call(bt,U,O):X,O==null)break t;U=R({},U,O);break t;case 2:vl=!0}}O=h.callback,O!==null&&(t.flags|=64,N&&(t.flags|=8192),N=a.callbacks,N===null?a.callbacks=[O]:N.push(O))}else N={lane:O,tag:h.tag,payload:h.payload,callback:h.callback,next:null},z===null?(A=z=N,p=U):z=z.next=N,f|=O;if(h=h.next,h===null){if(h=a.shared.pending,h===null)break;N=h,h=N.next,N.next=null,a.lastBaseUpdate=N,a.shared.pending=null}}while(!0);z===null&&(p=U),a.baseState=p,a.firstBaseUpdate=A,a.lastBaseUpdate=z,u===null&&(a.shared.lanes=0),Tl|=f,t.lanes=f,t.memoizedState=U}}function Yf(t,e){if(typeof t!="function")throw Error(r(191,t));t.call(e)}function Xf(t,e){var l=t.callbacks;if(l!==null)for(t.callbacks=null,t=0;tu?u:8;var f=D.T,h={};D.T=h,Gs(t,!1,e,l);try{var p=a(),A=D.S;if(A!==null&&A(h,p),p!==null&&typeof p=="object"&&typeof p.then=="function"){var z=Xy(p,n);va(t,e,z,pe(t))}else va(t,e,n,pe(t))}catch(U){va(t,e,{then:function(){},status:"rejected",reason:U},pe())}finally{H.p=u,f!==null&&h.types!==null&&(f.types=h.types),D.T=f}}function Jy(){}function Ys(t,e,l,n){if(t.tag!==5)throw Error(r(476));var a=So(t).queue;bo(t,a,e,W,l===null?Jy:function(){return Eo(t),l(n)})}function So(t){var e=t.memoizedState;if(e!==null)return e;e={memoizedState:W,baseState:W,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Fe,lastRenderedState:W},next:null};var l={};return e.next={memoizedState:l,baseState:l,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Fe,lastRenderedState:l},next:null},t.memoizedState=e,t=t.alternate,t!==null&&(t.memoizedState=e),e}function Eo(t){var e=So(t);e.next===null&&(e=t.alternate.memoizedState),va(t,e.next.queue,{},pe())}function Xs(){return Zt(Ba)}function xo(){return Mt().memoizedState}function _o(){return Mt().memoizedState}function ky(t){for(var e=t.return;e!==null;){switch(e.tag){case 24:case 3:var l=pe();t=gl(l);var n=bl(e,t,l);n!==null&&(ae(n,e,l),ha(n,e,l)),e={cache:ps()},t.payload=e;return}e=e.return}}function $y(t,e,l){var n=pe();l={lane:n,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},Di(t)?Ao(e,l):(l=is(t,e,l,n),l!==null&&(ae(l,t,n),Ro(l,e,n)))}function To(t,e,l){var n=pe();va(t,e,l,n)}function va(t,e,l,n){var a={lane:n,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null};if(Di(t))Ao(e,a);else{var u=t.alternate;if(t.lanes===0&&(u===null||u.lanes===0)&&(u=e.lastRenderedReducer,u!==null))try{var f=e.lastRenderedState,h=u(f,l);if(a.hasEagerState=!0,a.eagerState=h,fe(h,f))return oi(t,e,a,0),Et===null&&fi(),!1}catch{}finally{}if(l=is(t,e,a,n),l!==null)return ae(l,t,n),Ro(l,e,n),!0}return!1}function Gs(t,e,l,n){if(n={lane:2,revertLane:Sc(),gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},Di(t)){if(e)throw Error(r(479))}else e=is(t,l,n,2),e!==null&&ae(e,t,2)}function Di(t){var e=t.alternate;return t===P||e!==null&&e===P}function Ao(t,e){On=Ti=!0;var l=t.pending;l===null?e.next=e:(e.next=l.next,l.next=e),t.pending=e}function Ro(t,e,l){if((l&4194048)!==0){var n=e.lanes;n&=t.pendingLanes,l|=n,e.lanes=l,Cr(t,l)}}var ga={readContext:Zt,use:Oi,useCallback:Nt,useContext:Nt,useEffect:Nt,useImperativeHandle:Nt,useLayoutEffect:Nt,useInsertionEffect:Nt,useMemo:Nt,useReducer:Nt,useRef:Nt,useState:Nt,useDebugValue:Nt,useDeferredValue:Nt,useTransition:Nt,useSyncExternalStore:Nt,useId:Nt,useHostTransitionStatus:Nt,useFormState:Nt,useActionState:Nt,useOptimistic:Nt,useMemoCache:Nt,useCacheRefresh:Nt};ga.useEffectEvent=Nt;var Oo={readContext:Zt,use:Oi,useCallback:function(t,e){return Wt().memoizedState=[t,e===void 0?null:e],t},useContext:Zt,useEffect:ro,useImperativeHandle:function(t,e,l){l=l!=null?l.concat([t]):null,Ci(4194308,4,mo.bind(null,e,t),l)},useLayoutEffect:function(t,e){return Ci(4194308,4,t,e)},useInsertionEffect:function(t,e){Ci(4,2,t,e)},useMemo:function(t,e){var l=Wt();e=e===void 0?null:e;var n=t();if(Il){fl(!0);try{t()}finally{fl(!1)}}return l.memoizedState=[n,e],n},useReducer:function(t,e,l){var n=Wt();if(l!==void 0){var a=l(e);if(Il){fl(!0);try{l(e)}finally{fl(!1)}}}else a=e;return n.memoizedState=n.baseState=a,t={pending:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:a},n.queue=t,t=t.dispatch=$y.bind(null,P,t),[n.memoizedState,t]},useRef:function(t){var e=Wt();return t={current:t},e.memoizedState=t},useState:function(t){t=ws(t);var e=t.queue,l=To.bind(null,P,e);return e.dispatch=l,[t.memoizedState,l]},useDebugValue:qs,useDeferredValue:function(t,e){var l=Wt();return Ls(l,t,e)},useTransition:function(){var t=ws(!1);return t=bo.bind(null,P,t.queue,!0,!1),Wt().memoizedState=t,[!1,t]},useSyncExternalStore:function(t,e,l){var n=P,a=Wt();if(st){if(l===void 0)throw Error(r(407));l=l()}else{if(l=e(),Et===null)throw Error(r(349));(it&127)!==0||Jf(n,e,l)}a.memoizedState=l;var u={value:l,getSnapshot:e};return a.queue=u,ro($f.bind(null,n,u,t),[t]),n.flags|=2048,Cn(9,{destroy:void 0},kf.bind(null,n,u,l,e),null),l},useId:function(){var t=Wt(),e=Et.identifierPrefix;if(st){var l=je,n=we;l=(n&~(1<<32-re(n)-1)).toString(32)+l,e="_"+e+"R_"+l,l=Ai++,0<\/script>",u=u.removeChild(u.firstChild);break;case"select":u=typeof n.is=="string"?f.createElement("select",{is:n.is}):f.createElement("select"),n.multiple?u.multiple=!0:n.size&&(u.size=n.size);break;default:u=typeof n.is=="string"?f.createElement(a,{is:n.is}):f.createElement(a)}}u[Qt]=e,u[It]=n;t:for(f=e.child;f!==null;){if(f.tag===5||f.tag===6)u.appendChild(f.stateNode);else if(f.tag!==4&&f.tag!==27&&f.child!==null){f.child.return=f,f=f.child;continue}if(f===e)break t;for(;f.sibling===null;){if(f.return===null||f.return===e)break t;f=f.return}f.sibling.return=f.return,f=f.sibling}e.stateNode=u;t:switch(Jt(u,a,n),a){case"button":case"input":case"select":case"textarea":n=!!n.autoFocus;break t;case"img":n=!0;break t;default:n=!1}n&&Pe(e)}}return _t(e),lc(e,e.type,t===null?null:t.memoizedProps,e.pendingProps,l),null;case 6:if(t&&e.stateNode!=null)t.memoizedProps!==n&&Pe(e);else{if(typeof n!="string"&&e.stateNode===null)throw Error(r(166));if(t=lt.current,Sn(e)){if(t=e.stateNode,l=e.memoizedProps,n=null,a=Vt,a!==null)switch(a.tag){case 27:case 5:n=a.memoizedProps}t[Qt]=e,t=!!(t.nodeValue===l||n!==null&&n.suppressHydrationWarning===!0||Kh(t.nodeValue,l)),t||yl(e,!0)}else t=Fi(t).createTextNode(n),t[Qt]=e,e.stateNode=t}return _t(e),null;case 31:if(l=e.memoizedState,t===null||t.memoizedState!==null){if(n=Sn(e),l!==null){if(t===null){if(!n)throw Error(r(318));if(t=e.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(r(557));t[Qt]=e}else Zl(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;_t(e),t=!1}else l=hs(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=l),t=!0;if(!t)return e.flags&256?(de(e),e):(de(e),null);if((e.flags&128)!==0)throw Error(r(558))}return _t(e),null;case 13:if(n=e.memoizedState,t===null||t.memoizedState!==null&&t.memoizedState.dehydrated!==null){if(a=Sn(e),n!==null&&n.dehydrated!==null){if(t===null){if(!a)throw Error(r(318));if(a=e.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(r(317));a[Qt]=e}else Zl(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;_t(e),a=!1}else a=hs(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=a),a=!0;if(!a)return e.flags&256?(de(e),e):(de(e),null)}return de(e),(e.flags&128)!==0?(e.lanes=l,e):(l=n!==null,t=t!==null&&t.memoizedState!==null,l&&(n=e.child,a=null,n.alternate!==null&&n.alternate.memoizedState!==null&&n.alternate.memoizedState.cachePool!==null&&(a=n.alternate.memoizedState.cachePool.pool),u=null,n.memoizedState!==null&&n.memoizedState.cachePool!==null&&(u=n.memoizedState.cachePool.pool),u!==a&&(n.flags|=2048)),l!==t&&l&&(e.child.flags|=8192),ji(e,e.updateQueue),_t(e),null);case 4:return zt(),t===null&&Tc(e.stateNode.containerInfo),_t(e),null;case 10:return $e(e.type),_t(e),null;case 19:if(B(Dt),n=e.memoizedState,n===null)return _t(e),null;if(a=(e.flags&128)!==0,u=n.rendering,u===null)if(a)Sa(n,!1);else{if(Ct!==0||t!==null&&(t.flags&128)!==0)for(t=e.child;t!==null;){if(u=_i(t),u!==null){for(e.flags|=128,Sa(n,!1),t=u.updateQueue,e.updateQueue=t,ji(e,t),e.subtreeFlags=0,t=l,l=e.child;l!==null;)_f(l,t),l=l.sibling;return q(Dt,Dt.current&1|2),st&&Je(e,n.treeForkCount),e.child}t=t.sibling}n.tail!==null&&se()>Xi&&(e.flags|=128,a=!0,Sa(n,!1),e.lanes=4194304)}else{if(!a)if(t=_i(u),t!==null){if(e.flags|=128,a=!0,t=t.updateQueue,e.updateQueue=t,ji(e,t),Sa(n,!0),n.tail===null&&n.tailMode==="hidden"&&!u.alternate&&!st)return _t(e),null}else 2*se()-n.renderingStartTime>Xi&&l!==536870912&&(e.flags|=128,a=!0,Sa(n,!1),e.lanes=4194304);n.isBackwards?(u.sibling=e.child,e.child=u):(t=n.last,t!==null?t.sibling=u:e.child=u,n.last=u)}return n.tail!==null?(t=n.tail,n.rendering=t,n.tail=t.sibling,n.renderingStartTime=se(),t.sibling=null,l=Dt.current,q(Dt,a?l&1|2:l&1),st&&Je(e,n.treeForkCount),t):(_t(e),null);case 22:case 23:return de(e),As(),n=e.memoizedState!==null,t!==null?t.memoizedState!==null!==n&&(e.flags|=8192):n&&(e.flags|=8192),n?(l&536870912)!==0&&(e.flags&128)===0&&(_t(e),e.subtreeFlags&6&&(e.flags|=8192)):_t(e),l=e.updateQueue,l!==null&&ji(e,l.retryQueue),l=null,t!==null&&t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(l=t.memoizedState.cachePool.pool),n=null,e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),n!==l&&(e.flags|=2048),t!==null&&B(kl),null;case 24:return l=null,t!==null&&(l=t.memoizedState.cache),e.memoizedState.cache!==l&&(e.flags|=2048),$e(Ut),_t(e),null;case 25:return null;case 30:return null}throw Error(r(156,e.tag))}function tp(t,e){switch(fs(e),e.tag){case 1:return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 3:return $e(Ut),zt(),t=e.flags,(t&65536)!==0&&(t&128)===0?(e.flags=t&-65537|128,e):null;case 26:case 27:case 5:return Ja(e),null;case 31:if(e.memoizedState!==null){if(de(e),e.alternate===null)throw Error(r(340));Zl()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 13:if(de(e),t=e.memoizedState,t!==null&&t.dehydrated!==null){if(e.alternate===null)throw Error(r(340));Zl()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 19:return B(Dt),null;case 4:return zt(),null;case 10:return $e(e.type),null;case 22:case 23:return de(e),As(),t!==null&&B(kl),t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 24:return $e(Ut),null;case 25:return null;default:return null}}function Fo(t,e){switch(fs(e),e.tag){case 3:$e(Ut),zt();break;case 26:case 27:case 5:Ja(e);break;case 4:zt();break;case 31:e.memoizedState!==null&&de(e);break;case 13:de(e);break;case 19:B(Dt);break;case 10:$e(e.type);break;case 22:case 23:de(e),As(),t!==null&&B(kl);break;case 24:$e(Ut)}}function Ea(t,e){try{var l=e.updateQueue,n=l!==null?l.lastEffect:null;if(n!==null){var a=n.next;l=a;do{if((l.tag&t)===t){n=void 0;var u=l.create,f=l.inst;n=u(),f.destroy=n}l=l.next}while(l!==a)}}catch(h){yt(e,e.return,h)}}function xl(t,e,l){try{var n=e.updateQueue,a=n!==null?n.lastEffect:null;if(a!==null){var u=a.next;n=u;do{if((n.tag&t)===t){var f=n.inst,h=f.destroy;if(h!==void 0){f.destroy=void 0,a=e;var p=l,A=h;try{A()}catch(z){yt(a,p,z)}}}n=n.next}while(n!==u)}}catch(z){yt(e,e.return,z)}}function Io(t){var e=t.updateQueue;if(e!==null){var l=t.stateNode;try{Xf(e,l)}catch(n){yt(t,t.return,n)}}}function Po(t,e,l){l.props=Pl(t.type,t.memoizedProps),l.state=t.memoizedState;try{l.componentWillUnmount()}catch(n){yt(t,e,n)}}function xa(t,e){try{var l=t.ref;if(l!==null){switch(t.tag){case 26:case 27:case 5:var n=t.stateNode;break;case 30:n=t.stateNode;break;default:n=t.stateNode}typeof l=="function"?t.refCleanup=l(n):l.current=n}}catch(a){yt(t,e,a)}}function He(t,e){var l=t.ref,n=t.refCleanup;if(l!==null)if(typeof n=="function")try{n()}catch(a){yt(t,e,a)}finally{t.refCleanup=null,t=t.alternate,t!=null&&(t.refCleanup=null)}else if(typeof l=="function")try{l(null)}catch(a){yt(t,e,a)}else l.current=null}function th(t){var e=t.type,l=t.memoizedProps,n=t.stateNode;try{t:switch(e){case"button":case"input":case"select":case"textarea":l.autoFocus&&n.focus();break t;case"img":l.src?n.src=l.src:l.srcSet&&(n.srcset=l.srcSet)}}catch(a){yt(t,t.return,a)}}function nc(t,e,l){try{var n=t.stateNode;xp(n,t.type,l,e),n[It]=e}catch(a){yt(t,t.return,a)}}function eh(t){return t.tag===5||t.tag===3||t.tag===26||t.tag===27&&Cl(t.type)||t.tag===4}function ac(t){t:for(;;){for(;t.sibling===null;){if(t.return===null||eh(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.tag===27&&Cl(t.type)||t.flags&2||t.child===null||t.tag===4)continue t;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function ic(t,e,l){var n=t.tag;if(n===5||n===6)t=t.stateNode,e?(l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l).insertBefore(t,e):(e=l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l,e.appendChild(t),l=l._reactRootContainer,l!=null||e.onclick!==null||(e.onclick=Ve));else if(n!==4&&(n===27&&Cl(t.type)&&(l=t.stateNode,e=null),t=t.child,t!==null))for(ic(t,e,l),t=t.sibling;t!==null;)ic(t,e,l),t=t.sibling}function Hi(t,e,l){var n=t.tag;if(n===5||n===6)t=t.stateNode,e?l.insertBefore(t,e):l.appendChild(t);else if(n!==4&&(n===27&&Cl(t.type)&&(l=t.stateNode),t=t.child,t!==null))for(Hi(t,e,l),t=t.sibling;t!==null;)Hi(t,e,l),t=t.sibling}function lh(t){var e=t.stateNode,l=t.memoizedProps;try{for(var n=t.type,a=e.attributes;a.length;)e.removeAttributeNode(a[0]);Jt(e,n,l),e[Qt]=t,e[It]=l}catch(u){yt(t,t.return,u)}}var tl=!1,jt=!1,uc=!1,nh=typeof WeakSet=="function"?WeakSet:Set,Gt=null;function ep(t,e){if(t=t.containerInfo,Oc=au,t=mf(t),Pu(t)){if("selectionStart"in t)var l={start:t.selectionStart,end:t.selectionEnd};else t:{l=(l=t.ownerDocument)&&l.defaultView||window;var n=l.getSelection&&l.getSelection();if(n&&n.rangeCount!==0){l=n.anchorNode;var a=n.anchorOffset,u=n.focusNode;n=n.focusOffset;try{l.nodeType,u.nodeType}catch{l=null;break t}var f=0,h=-1,p=-1,A=0,z=0,U=t,O=null;e:for(;;){for(var N;U!==l||a!==0&&U.nodeType!==3||(h=f+a),U!==u||n!==0&&U.nodeType!==3||(p=f+n),U.nodeType===3&&(f+=U.nodeValue.length),(N=U.firstChild)!==null;)O=U,U=N;for(;;){if(U===t)break e;if(O===l&&++A===a&&(h=f),O===u&&++z===n&&(p=f),(N=U.nextSibling)!==null)break;U=O,O=U.parentNode}U=N}l=h===-1||p===-1?null:{start:h,end:p}}else l=null}l=l||{start:0,end:0}}else l=null;for(Nc={focusedElem:t,selectionRange:l},au=!1,Gt=e;Gt!==null;)if(e=Gt,t=e.child,(e.subtreeFlags&1028)!==0&&t!==null)t.return=e,Gt=t;else for(;Gt!==null;){switch(e=Gt,u=e.alternate,t=e.flags,e.tag){case 0:if((t&4)!==0&&(t=e.updateQueue,t=t!==null?t.events:null,t!==null))for(l=0;l title"))),Jt(u,n,l),u[Qt]=t,Xt(u),n=u;break t;case"link":var f=rd("link","href",a).get(n+(l.href||""));if(f){for(var h=0;hbt&&(f=bt,bt=$,$=f);var E=hf(h,$),g=hf(h,bt);if(E&&g&&(N.rangeCount!==1||N.anchorNode!==E.node||N.anchorOffset!==E.offset||N.focusNode!==g.node||N.focusOffset!==g.offset)){var _=U.createRange();_.setStart(E.node,E.offset),N.removeAllRanges(),$>bt?(N.addRange(_),N.extend(g.node,g.offset)):(_.setEnd(g.node,g.offset),N.addRange(_))}}}}for(U=[],N=h;N=N.parentNode;)N.nodeType===1&&U.push({element:N,left:N.scrollLeft,top:N.scrollTop});for(typeof h.focus=="function"&&h.focus(),h=0;hl?32:l,D.T=null,l=dc,dc=null;var u=Rl,f=il;if(Yt=0,Bn=Rl=null,il=0,(ot&6)!==0)throw Error(r(331));var h=ot;if(ot|=4,mh(u.current),oh(u,u.current,f,l),ot=h,Na(0,!1),ce&&typeof ce.onPostCommitFiberRoot=="function")try{ce.onPostCommitFiberRoot(Kn,u)}catch{}return!0}finally{H.p=a,D.T=n,Mh(t,e)}}function Bh(t,e,l){e=Se(l,e),e=Ks(t.stateNode,e,2),t=bl(t,e,2),t!==null&&(kn(t,2),qe(t))}function yt(t,e,l){if(t.tag===3)Bh(t,t,l);else for(;e!==null;){if(e.tag===3){Bh(e,t,l);break}else if(e.tag===1){var n=e.stateNode;if(typeof e.type.getDerivedStateFromError=="function"||typeof n.componentDidCatch=="function"&&(Al===null||!Al.has(n))){t=Se(l,t),l=wo(2),n=bl(e,l,2),n!==null&&(jo(l,n,e,t),kn(n,2),qe(n));break}}e=e.return}}function vc(t,e,l){var n=t.pingCache;if(n===null){n=t.pingCache=new ap;var a=new Set;n.set(e,a)}else a=n.get(e),a===void 0&&(a=new Set,n.set(e,a));a.has(l)||(rc=!0,a.add(l),t=rp.bind(null,t,e,l),e.then(t,t))}function rp(t,e,l){var n=t.pingCache;n!==null&&n.delete(e),t.pingedLanes|=t.suspendedLanes&l,t.warmLanes&=~l,Et===t&&(it&l)===l&&(Ct===4||Ct===3&&(it&62914560)===it&&300>se()-Yi?(ot&2)===0&&wn(t,0):fc|=l,Un===it&&(Un=0)),qe(t)}function wh(t,e){e===0&&(e=Or()),t=Ql(t,e),t!==null&&(kn(t,e),qe(t))}function fp(t){var e=t.memoizedState,l=0;e!==null&&(l=e.retryLane),wh(t,l)}function op(t,e){var l=0;switch(t.tag){case 31:case 13:var n=t.stateNode,a=t.memoizedState;a!==null&&(l=a.retryLane);break;case 19:n=t.stateNode;break;case 22:n=t.stateNode._retryCache;break;default:throw Error(r(314))}n!==null&&n.delete(e),wh(t,l)}function hp(t,e){return zu(t,e)}var Ji=null,Hn=null,gc=!1,ki=!1,bc=!1,Nl=0;function qe(t){t!==Hn&&t.next===null&&(Hn===null?Ji=Hn=t:Hn=Hn.next=t),ki=!0,gc||(gc=!0,mp())}function Na(t,e){if(!bc&&ki){bc=!0;do for(var l=!1,n=Ji;n!==null;){if(t!==0){var a=n.pendingLanes;if(a===0)var u=0;else{var f=n.suspendedLanes,h=n.pingedLanes;u=(1<<31-re(42|t)+1)-1,u&=a&~(f&~h),u=u&201326741?u&201326741|1:u?u|2:0}u!==0&&(l=!0,Lh(n,u))}else u=it,u=Ia(n,n===Et?u:0,n.cancelPendingCommit!==null||n.timeoutHandle!==-1),(u&3)===0||Jn(n,u)||(l=!0,Lh(n,u));n=n.next}while(l);bc=!1}}function dp(){jh()}function jh(){ki=gc=!1;var t=0;Nl!==0&&Tp()&&(t=Nl);for(var e=se(),l=null,n=Ji;n!==null;){var a=n.next,u=Hh(n,e);u===0?(n.next=null,l===null?Ji=a:l.next=a,a===null&&(Hn=l)):(l=n,(t!==0||(u&3)!==0)&&(ki=!0)),n=a}Yt!==0&&Yt!==5||Na(t),Nl!==0&&(Nl=0)}function Hh(t,e){for(var l=t.suspendedLanes,n=t.pingedLanes,a=t.expirationTimes,u=t.pendingLanes&-62914561;0h)break;var z=p.transferSize,U=p.initiatorType;z&&Jh(U)&&(p=p.responseEnd,f+=z*(p"u"?null:document;function id(t,e,l){var n=qn;if(n&&typeof e=="string"&&e){var a=ge(e);a='link[rel="'+t+'"][href="'+a+'"]',typeof l=="string"&&(a+='[crossorigin="'+l+'"]'),ad.has(a)||(ad.add(a),t={rel:t,crossOrigin:l,href:e},n.querySelector(a)===null&&(e=n.createElement("link"),Jt(e,"link",t),Xt(e),n.head.appendChild(e)))}}function Up(t){ul.D(t),id("dns-prefetch",t,null)}function Bp(t,e){ul.C(t,e),id("preconnect",t,e)}function wp(t,e,l){ul.L(t,e,l);var n=qn;if(n&&t&&e){var a='link[rel="preload"][as="'+ge(e)+'"]';e==="image"&&l&&l.imageSrcSet?(a+='[imagesrcset="'+ge(l.imageSrcSet)+'"]',typeof l.imageSizes=="string"&&(a+='[imagesizes="'+ge(l.imageSizes)+'"]')):a+='[href="'+ge(t)+'"]';var u=a;switch(e){case"style":u=Ln(t);break;case"script":u=Yn(t)}Re.has(u)||(t=R({rel:"preload",href:e==="image"&&l&&l.imageSrcSet?void 0:t,as:e},l),Re.set(u,t),n.querySelector(a)!==null||e==="style"&&n.querySelector(Ma(u))||e==="script"&&n.querySelector(Ua(u))||(e=n.createElement("link"),Jt(e,"link",t),Xt(e),n.head.appendChild(e)))}}function jp(t,e){ul.m(t,e);var l=qn;if(l&&t){var n=e&&typeof e.as=="string"?e.as:"script",a='link[rel="modulepreload"][as="'+ge(n)+'"][href="'+ge(t)+'"]',u=a;switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":u=Yn(t)}if(!Re.has(u)&&(t=R({rel:"modulepreload",href:t},e),Re.set(u,t),l.querySelector(a)===null)){switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(l.querySelector(Ua(u)))return}n=l.createElement("link"),Jt(n,"link",t),Xt(n),l.head.appendChild(n)}}}function Hp(t,e,l){ul.S(t,e,l);var n=qn;if(n&&t){var a=sn(n).hoistableStyles,u=Ln(t);e=e||"default";var f=a.get(u);if(!f){var h={loading:0,preload:null};if(f=n.querySelector(Ma(u)))h.loading=5;else{t=R({rel:"stylesheet",href:t,"data-precedence":e},l),(l=Re.get(u))&&wc(t,l);var p=f=n.createElement("link");Xt(p),Jt(p,"link",t),p._p=new Promise(function(A,z){p.onload=A,p.onerror=z}),p.addEventListener("load",function(){h.loading|=1}),p.addEventListener("error",function(){h.loading|=2}),h.loading|=4,Pi(f,e,n)}f={type:"stylesheet",instance:f,count:1,state:h},a.set(u,f)}}}function qp(t,e){ul.X(t,e);var l=qn;if(l&&t){var n=sn(l).hoistableScripts,a=Yn(t),u=n.get(a);u||(u=l.querySelector(Ua(a)),u||(t=R({src:t,async:!0},e),(e=Re.get(a))&&jc(t,e),u=l.createElement("script"),Xt(u),Jt(u,"link",t),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(a,u))}}function Lp(t,e){ul.M(t,e);var l=qn;if(l&&t){var n=sn(l).hoistableScripts,a=Yn(t),u=n.get(a);u||(u=l.querySelector(Ua(a)),u||(t=R({src:t,async:!0,type:"module"},e),(e=Re.get(a))&&jc(t,e),u=l.createElement("script"),Xt(u),Jt(u,"link",t),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(a,u))}}function ud(t,e,l,n){var a=(a=lt.current)?Ii(a):null;if(!a)throw Error(r(446));switch(t){case"meta":case"title":return null;case"style":return typeof l.precedence=="string"&&typeof l.href=="string"?(e=Ln(l.href),l=sn(a).hoistableStyles,n=l.get(e),n||(n={type:"style",instance:null,count:0,state:null},l.set(e,n)),n):{type:"void",instance:null,count:0,state:null};case"link":if(l.rel==="stylesheet"&&typeof l.href=="string"&&typeof l.precedence=="string"){t=Ln(l.href);var u=sn(a).hoistableStyles,f=u.get(t);if(f||(a=a.ownerDocument||a,f={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},u.set(t,f),(u=a.querySelector(Ma(t)))&&!u._p&&(f.instance=u,f.state.loading=5),Re.has(t)||(l={rel:"preload",as:"style",href:l.href,crossOrigin:l.crossOrigin,integrity:l.integrity,media:l.media,hrefLang:l.hrefLang,referrerPolicy:l.referrerPolicy},Re.set(t,l),u||Yp(a,t,l,f.state))),e&&n===null)throw Error(r(528,""));return f}if(e&&n!==null)throw Error(r(529,""));return null;case"script":return e=l.async,l=l.src,typeof l=="string"&&e&&typeof e!="function"&&typeof e!="symbol"?(e=Yn(l),l=sn(a).hoistableScripts,n=l.get(e),n||(n={type:"script",instance:null,count:0,state:null},l.set(e,n)),n):{type:"void",instance:null,count:0,state:null};default:throw Error(r(444,t))}}function Ln(t){return'href="'+ge(t)+'"'}function Ma(t){return'link[rel="stylesheet"]['+t+"]"}function sd(t){return R({},t,{"data-precedence":t.precedence,precedence:null})}function Yp(t,e,l,n){t.querySelector('link[rel="preload"][as="style"]['+e+"]")?n.loading=1:(e=t.createElement("link"),n.preload=e,e.addEventListener("load",function(){return n.loading|=1}),e.addEventListener("error",function(){return n.loading|=2}),Jt(e,"link",l),Xt(e),t.head.appendChild(e))}function Yn(t){return'[src="'+ge(t)+'"]'}function Ua(t){return"script[async]"+t}function cd(t,e,l){if(e.count++,e.instance===null)switch(e.type){case"style":var n=t.querySelector('style[data-href~="'+ge(l.href)+'"]');if(n)return e.instance=n,Xt(n),n;var a=R({},l,{"data-href":l.href,"data-precedence":l.precedence,href:null,precedence:null});return n=(t.ownerDocument||t).createElement("style"),Xt(n),Jt(n,"style",a),Pi(n,l.precedence,t),e.instance=n;case"stylesheet":a=Ln(l.href);var u=t.querySelector(Ma(a));if(u)return e.state.loading|=4,e.instance=u,Xt(u),u;n=sd(l),(a=Re.get(a))&&wc(n,a),u=(t.ownerDocument||t).createElement("link"),Xt(u);var f=u;return f._p=new Promise(function(h,p){f.onload=h,f.onerror=p}),Jt(u,"link",n),e.state.loading|=4,Pi(u,l.precedence,t),e.instance=u;case"script":return u=Yn(l.src),(a=t.querySelector(Ua(u)))?(e.instance=a,Xt(a),a):(n=l,(a=Re.get(u))&&(n=R({},l),jc(n,a)),t=t.ownerDocument||t,a=t.createElement("script"),Xt(a),Jt(a,"link",n),t.head.appendChild(a),e.instance=a);case"void":return null;default:throw Error(r(443,e.type))}else e.type==="stylesheet"&&(e.state.loading&4)===0&&(n=e.instance,e.state.loading|=4,Pi(n,l.precedence,t));return e.instance}function Pi(t,e,l){for(var n=l.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=n.length?n[n.length-1]:null,u=a,f=0;f title"):null)}function Xp(t,e,l){if(l===1||e.itemProp!=null)return!1;switch(t){case"meta":case"title":return!0;case"style":if(typeof e.precedence!="string"||typeof e.href!="string"||e.href==="")break;return!0;case"link":if(typeof e.rel!="string"||typeof e.href!="string"||e.href===""||e.onLoad||e.onError)break;switch(e.rel){case"stylesheet":return t=e.disabled,typeof e.precedence=="string"&&t==null;default:return!0}case"script":if(e.async&&typeof e.async!="function"&&typeof e.async!="symbol"&&!e.onLoad&&!e.onError&&e.src&&typeof e.src=="string")return!0}return!1}function od(t){return!(t.type==="stylesheet"&&(t.state.loading&3)===0)}function Gp(t,e,l,n){if(l.type==="stylesheet"&&(typeof n.media!="string"||matchMedia(n.media).matches!==!1)&&(l.state.loading&4)===0){if(l.instance===null){var a=Ln(n.href),u=e.querySelector(Ma(a));if(u){e=u._p,e!==null&&typeof e=="object"&&typeof e.then=="function"&&(t.count++,t=eu.bind(t),e.then(t,t)),l.state.loading|=4,l.instance=u,Xt(u);return}u=e.ownerDocument||e,n=sd(n),(a=Re.get(a))&&wc(n,a),u=u.createElement("link"),Xt(u);var f=u;f._p=new Promise(function(h,p){f.onload=h,f.onerror=p}),Jt(u,"link",n),l.instance=u}t.stylesheets===null&&(t.stylesheets=new Map),t.stylesheets.set(l,e),(e=l.state.preload)&&(l.state.loading&3)===0&&(t.count++,l=eu.bind(t),e.addEventListener("load",l),e.addEventListener("error",l))}}var Hc=0;function Qp(t,e){return t.stylesheets&&t.count===0&&nu(t,t.stylesheets),0Hc?50:800)+e);return t.unsuspend=l,function(){t.unsuspend=null,clearTimeout(n),clearTimeout(a)}}:null}function eu(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)nu(this,this.stylesheets);else if(this.unsuspend){var t=this.unsuspend;this.unsuspend=null,t()}}}var lu=null;function nu(t,e){t.stylesheets=null,t.unsuspend!==null&&(t.count++,lu=new Map,e.forEach(Vp,t),lu=null,eu.call(t))}function Vp(t,e){if(!(e.state.loading&4)){var l=lu.get(t);if(l)var n=l.get(null);else{l=new Map,lu.set(t,l);for(var a=t.querySelectorAll("link[data-precedence],style[data-precedence]"),u=0;u"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(s)}catch(i){console.error(i)}}return s(),Kc.exports=u0(),Kc.exports}var c0=s0();var wd="popstate";function r0(s={}){function i(r,o){let{pathname:d,search:m,hash:b}=r.location;return er("",{pathname:d,search:m,hash:b},o.state&&o.state.usr||null,o.state&&o.state.key||"default")}function c(r,o){return typeof o=="string"?o:Qa(o)}return o0(i,c,null,s)}function Rt(s,i){if(s===!1||s===null||typeof s>"u")throw new Error(i)}function Ue(s,i){if(!s){typeof console<"u"&&console.warn(i);try{throw new Error(i)}catch{}}}function f0(){return Math.random().toString(36).substring(2,10)}function jd(s,i){return{usr:s.state,key:s.key,idx:i}}function er(s,i,c=null,r){return{pathname:typeof s=="string"?s:s.pathname,search:"",hash:"",...typeof i=="string"?Gn(i):i,state:c,key:i&&i.key||r||f0()}}function Qa({pathname:s="/",search:i="",hash:c=""}){return i&&i!=="?"&&(s+=i.charAt(0)==="?"?i:"?"+i),c&&c!=="#"&&(s+=c.charAt(0)==="#"?c:"#"+c),s}function Gn(s){let i={};if(s){let c=s.indexOf("#");c>=0&&(i.hash=s.substring(c),s=s.substring(0,c));let r=s.indexOf("?");r>=0&&(i.search=s.substring(r),s=s.substring(0,r)),s&&(i.pathname=s)}return i}function o0(s,i,c,r={}){let{window:o=document.defaultView,v5Compat:d=!1}=r,m=o.history,b="POP",y=null,v=C();v==null&&(v=0,m.replaceState({...m.state,idx:v},""));function C(){return(m.state||{idx:null}).idx}function R(){b="POP";let K=C(),Y=K==null?null:K-v;v=K,y&&y({action:b,location:Q.location,delta:Y})}function w(K,Y){b="PUSH";let G=er(Q.location,K,Y);v=C()+1;let k=jd(G,v),dt=Q.createHref(G);try{m.pushState(k,"",dt)}catch(Tt){if(Tt instanceof DOMException&&Tt.name==="DataCloneError")throw Tt;o.location.assign(dt)}d&&y&&y({action:b,location:Q.location,delta:1})}function j(K,Y){b="REPLACE";let G=er(Q.location,K,Y);v=C();let k=jd(G,v),dt=Q.createHref(G);m.replaceState(k,"",dt),d&&y&&y({action:b,location:Q.location,delta:0})}function L(K){return h0(K)}let Q={get action(){return b},get location(){return s(o,m)},listen(K){if(y)throw new Error("A history only accepts one active listener");return o.addEventListener(wd,R),y=K,()=>{o.removeEventListener(wd,R),y=null}},createHref(K){return i(o,K)},createURL:L,encodeLocation(K){let Y=L(K);return{pathname:Y.pathname,search:Y.search,hash:Y.hash}},push:w,replace:j,go(K){return m.go(K)}};return Q}function h0(s,i=!1){let c="http://localhost";typeof window<"u"&&(c=window.location.origin!=="null"?window.location.origin:window.location.href),Rt(c,"No window.location.(origin|href) available to create URL");let r=typeof s=="string"?s:Qa(s);return r=r.replace(/ $/,"%20"),!i&&r.startsWith("//")&&(r=c+r),new URL(r,c)}function Jd(s,i,c="/"){return d0(s,i,c,!1)}function d0(s,i,c,r){let o=typeof i=="string"?Gn(i):i,d=cl(o.pathname||"/",c);if(d==null)return null;let m=kd(s);m0(m);let b=null;for(let y=0;b==null&&y{let C={relativePath:v===void 0?m.path||"":v,caseSensitive:m.caseSensitive===!0,childrenIndex:b,route:m};if(C.relativePath.startsWith("/")){if(!C.relativePath.startsWith(r)&&y)return;Rt(C.relativePath.startsWith(r),`Absolute route path "${C.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),C.relativePath=C.relativePath.slice(r.length)}let R=sl([r,C.relativePath]),w=c.concat(C);m.children&&m.children.length>0&&(Rt(m.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${R}".`),kd(m.children,i,w,R,y)),!(m.path==null&&!m.index)&&i.push({path:R,score:E0(R,m.index),routesMeta:w})};return s.forEach((m,b)=>{if(m.path===""||!m.path?.includes("?"))d(m,b);else for(let y of $d(m.path))d(m,b,!0,y)}),i}function $d(s){let i=s.split("/");if(i.length===0)return[];let[c,...r]=i,o=c.endsWith("?"),d=c.replace(/\?$/,"");if(r.length===0)return o?[d,""]:[d];let m=$d(r.join("/")),b=[];return b.push(...m.map(y=>y===""?d:[d,y].join("/"))),o&&b.push(...m),b.map(y=>s.startsWith("/")&&y===""?"/":y)}function m0(s){s.sort((i,c)=>i.score!==c.score?c.score-i.score:x0(i.routesMeta.map(r=>r.childrenIndex),c.routesMeta.map(r=>r.childrenIndex)))}var y0=/^:[\w-]+$/,p0=3,v0=2,g0=1,b0=10,S0=-2,Hd=s=>s==="*";function E0(s,i){let c=s.split("/"),r=c.length;return c.some(Hd)&&(r+=S0),i&&(r+=v0),c.filter(o=>!Hd(o)).reduce((o,d)=>o+(y0.test(d)?p0:d===""?g0:b0),r)}function x0(s,i){return s.length===i.length&&s.slice(0,-1).every((r,o)=>r===i[o])?s[s.length-1]-i[i.length-1]:0}function _0(s,i,c=!1){let{routesMeta:r}=s,o={},d="/",m=[];for(let b=0;b{if(C==="*"){let L=b[w]||"";m=d.slice(0,d.length-L.length).replace(/(.)\/+$/,"$1")}const j=b[w];return R&&!j?v[C]=void 0:v[C]=(j||"").replace(/%2F/g,"/"),v},{}),pathname:d,pathnameBase:m,pattern:s}}function T0(s,i=!1,c=!0){Ue(s==="*"||!s.endsWith("*")||s.endsWith("/*"),`Route path "${s}" will be treated as if it were "${s.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${s.replace(/\*$/,"/*")}".`);let r=[],o="^"+s.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(m,b,y)=>(r.push({paramName:b,isOptional:y!=null}),y?"/?([^\\/]+)?":"/([^\\/]+)")).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return s.endsWith("*")?(r.push({paramName:"*"}),o+=s==="*"||s==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):c?o+="\\/*$":s!==""&&s!=="/"&&(o+="(?:(?=\\/|$))"),[new RegExp(o,i?void 0:"i"),r]}function A0(s){try{return s.split("/").map(i=>decodeURIComponent(i).replace(/\//g,"%2F")).join("/")}catch(i){return Ue(!1,`The URL path "${s}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${i}).`),s}}function cl(s,i){if(i==="/")return s;if(!s.toLowerCase().startsWith(i.toLowerCase()))return null;let c=i.endsWith("/")?i.length-1:i.length,r=s.charAt(c);return r&&r!=="/"?null:s.slice(c)||"/"}var R0=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,O0=s=>R0.test(s);function N0(s,i="/"){let{pathname:c,search:r="",hash:o=""}=typeof s=="string"?Gn(s):s,d;if(c)if(O0(c))d=c;else{if(c.includes("//")){let m=c;c=c.replace(/\/\/+/g,"/"),Ue(!1,`Pathnames cannot have embedded double slashes - normalizing ${m} -> ${c}`)}c.startsWith("/")?d=qd(c.substring(1),"/"):d=qd(c,i)}else d=i;return{pathname:d,search:D0(r),hash:M0(o)}}function qd(s,i){let c=i.replace(/\/+$/,"").split("/");return s.split("/").forEach(o=>{o===".."?c.length>1&&c.pop():o!=="."&&c.push(o)}),c.length>1?c.join("/"):"/"}function Wc(s,i,c,r){return`Cannot include a '${s}' character in a manually specified \`to.${i}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${c}\` field. Alternatively you may provide the full path as a string in and the router will parse it for you.`}function C0(s){return s.filter((i,c)=>c===0||i.route.path&&i.route.path.length>0)}function Wd(s){let i=C0(s);return i.map((c,r)=>r===i.length-1?c.pathname:c.pathnameBase)}function Fd(s,i,c,r=!1){let o;typeof s=="string"?o=Gn(s):(o={...s},Rt(!o.pathname||!o.pathname.includes("?"),Wc("?","pathname","search",o)),Rt(!o.pathname||!o.pathname.includes("#"),Wc("#","pathname","hash",o)),Rt(!o.search||!o.search.includes("#"),Wc("#","search","hash",o)));let d=s===""||o.pathname==="",m=d?"/":o.pathname,b;if(m==null)b=c;else{let R=i.length-1;if(!r&&m.startsWith("..")){let w=m.split("/");for(;w[0]==="..";)w.shift(),R-=1;o.pathname=w.join("/")}b=R>=0?i[R]:"/"}let y=N0(o,b),v=m&&m!=="/"&&m.endsWith("/"),C=(d||m===".")&&c.endsWith("/");return!y.pathname.endsWith("/")&&(v||C)&&(y.pathname+="/"),y}var sl=s=>s.join("/").replace(/\/\/+/g,"/"),z0=s=>s.replace(/\/+$/,"").replace(/^\/*/,"/"),D0=s=>!s||s==="?"?"":s.startsWith("?")?s:"?"+s,M0=s=>!s||s==="#"?"":s.startsWith("#")?s:"#"+s;function U0(s){return s!=null&&typeof s.status=="number"&&typeof s.statusText=="string"&&typeof s.internal=="boolean"&&"data"in s}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var Id=["POST","PUT","PATCH","DELETE"];new Set(Id);var B0=["GET",...Id];new Set(B0);var Qn=x.createContext(null);Qn.displayName="DataRouter";var Eu=x.createContext(null);Eu.displayName="DataRouterState";x.createContext(!1);var Pd=x.createContext({isTransitioning:!1});Pd.displayName="ViewTransition";var w0=x.createContext(new Map);w0.displayName="Fetchers";var j0=x.createContext(null);j0.displayName="Await";var Xe=x.createContext(null);Xe.displayName="Navigation";var Va=x.createContext(null);Va.displayName="Location";var rl=x.createContext({outlet:null,matches:[],isDataRoute:!1});rl.displayName="Route";var or=x.createContext(null);or.displayName="RouteError";function H0(s,{relative:i}={}){Rt(Za(),"useHref() may be used only in the context of a component.");let{basename:c,navigator:r}=x.useContext(Xe),{hash:o,pathname:d,search:m}=Ka(s,{relative:i}),b=d;return c!=="/"&&(b=d==="/"?c:sl([c,d])),r.createHref({pathname:b,search:m,hash:o})}function Za(){return x.useContext(Va)!=null}function ln(){return Rt(Za(),"useLocation() may be used only in the context of a component."),x.useContext(Va).location}var tm="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function em(s){x.useContext(Xe).static||x.useLayoutEffect(s)}function q0(){let{isDataRoute:s}=x.useContext(rl);return s?F0():L0()}function L0(){Rt(Za(),"useNavigate() may be used only in the context of a component.");let s=x.useContext(Qn),{basename:i,navigator:c}=x.useContext(Xe),{matches:r}=x.useContext(rl),{pathname:o}=ln(),d=JSON.stringify(Wd(r)),m=x.useRef(!1);return em(()=>{m.current=!0}),x.useCallback((y,v={})=>{if(Ue(m.current,tm),!m.current)return;if(typeof y=="number"){c.go(y);return}let C=Fd(y,JSON.parse(d),o,v.relative==="path");s==null&&i!=="/"&&(C.pathname=C.pathname==="/"?i:sl([i,C.pathname])),(v.replace?c.replace:c.push)(C,v.state,v)},[i,c,d,o,s])}x.createContext(null);function Ka(s,{relative:i}={}){let{matches:c}=x.useContext(rl),{pathname:r}=ln(),o=JSON.stringify(Wd(c));return x.useMemo(()=>Fd(s,JSON.parse(o),r,i==="path"),[s,o,r,i])}function Y0(s,i){return lm(s,i)}function lm(s,i,c,r,o){Rt(Za(),"useRoutes() may be used only in the context of a component.");let{navigator:d}=x.useContext(Xe),{matches:m}=x.useContext(rl),b=m[m.length-1],y=b?b.params:{},v=b?b.pathname:"/",C=b?b.pathnameBase:"/",R=b&&b.route;{let G=R&&R.path||"";nm(v,!R||G.endsWith("*")||G.endsWith("*?"),`You rendered descendant (or called \`useRoutes()\`) at "${v}" (under ) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render. -Please change the parent to .`)}let w=ln(),H;if(i){let Q=typeof i=="string"?Gn(i):i;Rt(z==="/"||Q.pathname?.startsWith(z),`When overriding the location using \`\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${z}" but pathname "${Q.pathname}" was given in the \`location\` prop.`),H=Q}else H=w;let j=H.pathname||"/",Z=j;if(z!=="/"){let Q=z.replace(/^\//,"").split("/");Z="/"+j.replace(/^\//,"").split("/").slice(Q.length).join("/")}let Y=Jd(s,{pathname:Z});Ue(R||Y!=null,`No routes matched location "${H.pathname}${H.search}${H.hash}" `),Ue(Y==null||Y[Y.length-1].route.element!==void 0||Y[Y.length-1].route.Component!==void 0||Y[Y.length-1].route.lazy!==void 0,`Matched leaf route at location "${H.pathname}${H.search}${H.hash}" does not have an element or Component. This means it will render an with a null value by default resulting in an "empty" page.`);let X=Z0(Y&&Y.map(Q=>Object.assign({},Q,{params:Object.assign({},p,Q.params),pathname:sl([z,d.encodeLocation?d.encodeLocation(Q.pathname.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:Q.pathname]),pathnameBase:Q.pathnameBase==="/"?z:sl([z,d.encodeLocation?d.encodeLocation(Q.pathnameBase.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:Q.pathnameBase])})),m,c,r,o);return i&&X?x.createElement(Va.Provider,{value:{location:{pathname:"/",search:"",hash:"",state:null,key:"default",...H},navigationType:"POP"}},X):X}function X0(){let s=W0(),i=U0(s)?`${s.status} ${s.statusText}`:s instanceof Error?s.message:JSON.stringify(s),c=s instanceof Error?s.stack:null,r="rgba(200,200,200, 0.5)",o={padding:"0.5rem",backgroundColor:r},d={padding:"2px 4px",backgroundColor:r},m=null;return console.error("Error handled by React Router default ErrorBoundary:",s),m=x.createElement(x.Fragment,null,x.createElement("p",null,"💿 Hey developer 👋"),x.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",x.createElement("code",{style:d},"ErrorBoundary")," or"," ",x.createElement("code",{style:d},"errorElement")," prop on your route.")),x.createElement(x.Fragment,null,x.createElement("h2",null,"Unexpected Application Error!"),x.createElement("h3",{style:{fontStyle:"italic"}},i),c?x.createElement("pre",{style:o},c):null,m)}var G0=x.createElement(X0,null),Q0=class extends x.Component{constructor(s){super(s),this.state={location:s.location,revalidation:s.revalidation,error:s.error}}static getDerivedStateFromError(s){return{error:s}}static getDerivedStateFromProps(s,i){return i.location!==s.location||i.revalidation!=="idle"&&s.revalidation==="idle"?{error:s.error,location:s.location,revalidation:s.revalidation}:{error:s.error!==void 0?s.error:i.error,location:i.location,revalidation:s.revalidation||i.revalidation}}componentDidCatch(s,i){this.props.onError?this.props.onError(s,i):console.error("React Router caught the following error during render",s)}render(){return this.state.error!==void 0?x.createElement(rl.Provider,{value:this.props.routeContext},x.createElement(or.Provider,{value:this.state.error,children:this.props.component})):this.props.children}};function V0({routeContext:s,match:i,children:c}){let r=x.useContext(Qn);return r&&r.static&&r.staticContext&&(i.route.errorElement||i.route.ErrorBoundary)&&(r.staticContext._deepestRenderedBoundaryId=i.route.id),x.createElement(rl.Provider,{value:s},c)}function Z0(s,i=[],c=null,r=null,o=null){if(s==null){if(!c)return null;if(c.errors)s=c.matches;else if(i.length===0&&!c.initialized&&c.matches.length>0)s=c.matches;else return null}let d=s,m=c?.errors;if(m!=null){let z=d.findIndex(R=>R.route.id&&m?.[R.route.id]!==void 0);Rt(z>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(m).join(",")}`),d=d.slice(0,Math.min(d.length,z+1))}let S=!1,p=-1;if(c)for(let z=0;z=0?d=d.slice(0,p+1):d=[d[0]];break}}}let v=c&&r?(z,R)=>{r(z,{location:c.location,params:c.matches?.[0]?.params??{},errorInfo:R})}:void 0;return d.reduceRight((z,R,w)=>{let H,j=!1,Z=null,Y=null;c&&(H=m&&R.route.id?m[R.route.id]:void 0,Z=R.route.errorElement||G0,S&&(p<0&&w===0?(nm("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),j=!0,Y=null):p===w&&(j=!0,Y=R.route.hydrateFallbackElement||null)));let X=i.concat(d.slice(0,w+1)),Q=()=>{let k;return H?k=Z:j?k=Y:R.route.Component?k=x.createElement(R.route.Component,null):R.route.element?k=R.route.element:k=z,x.createElement(V0,{match:R,routeContext:{outlet:z,matches:X,isDataRoute:c!=null},children:k})};return c&&(R.route.ErrorBoundary||R.route.errorElement||w===0)?x.createElement(Q0,{location:c.location,revalidation:c.revalidation,component:Z,error:H,children:Q(),routeContext:{outlet:null,matches:X,isDataRoute:!0},onError:v}):Q()},null)}function hr(s){return`${s} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function K0(s){let i=x.useContext(Qn);return Rt(i,hr(s)),i}function J0(s){let i=x.useContext(Eu);return Rt(i,hr(s)),i}function k0(s){let i=x.useContext(rl);return Rt(i,hr(s)),i}function dr(s){let i=k0(s),c=i.matches[i.matches.length-1];return Rt(c.route.id,`${s} can only be used on routes that contain a unique "id"`),c.route.id}function $0(){return dr("useRouteId")}function W0(){let s=x.useContext(or),i=J0("useRouteError"),c=dr("useRouteError");return s!==void 0?s:i.errors?.[c]}function F0(){let{router:s}=K0("useNavigate"),i=dr("useNavigate"),c=x.useRef(!1);return em(()=>{c.current=!0}),x.useCallback(async(o,d={})=>{Ue(c.current,tm),c.current&&(typeof o=="number"?s.navigate(o):await s.navigate(o,{fromRouteId:i,...d}))},[s,i])}var Ld={};function nm(s,i,c){!i&&!Ld[s]&&(Ld[s]=!0,Ue(!1,c))}x.memo(P0);function P0({routes:s,future:i,state:c,unstable_onError:r}){return lm(s,void 0,c,r,i)}function lr(s){Rt(!1,"A is only ever to be used as the child of element, never rendered directly. Please wrap your in a .")}function I0({basename:s="/",children:i=null,location:c,navigationType:r="POP",navigator:o,static:d=!1}){Rt(!Za(),"You cannot render a inside another . You should never have more than one in your app.");let m=s.replace(/^\/*/,"/"),S=x.useMemo(()=>({basename:m,navigator:o,static:d,future:{}}),[m,o,d]);typeof c=="string"&&(c=Gn(c));let{pathname:p="/",search:v="",hash:z="",state:R=null,key:w="default"}=c,H=x.useMemo(()=>{let j=cl(p,m);return j==null?null:{location:{pathname:j,search:v,hash:z,state:R,key:w},navigationType:r}},[m,p,v,z,R,w,r]);return Ue(H!=null,` is not able to match the URL "${p}${v}${z}" because it does not start with the basename, so the won't render anything.`),H==null?null:x.createElement(Xe.Provider,{value:S},x.createElement(Va.Provider,{children:i,value:H}))}function tv({children:s,location:i}){return Y0(nr(s),i)}function nr(s,i=[]){let c=[];return x.Children.forEach(s,(r,o)=>{if(!x.isValidElement(r))return;let d=[...i,o];if(r.type===x.Fragment){c.push.apply(c,nr(r.props.children,d));return}Rt(r.type===lr,`[${typeof r.type=="string"?r.type:r.type.name}] is not a component. All component children of must be a or `),Rt(!r.props.index||!r.props.children,"An index route cannot have child routes.");let m={id:r.props.id||d.join("-"),caseSensitive:r.props.caseSensitive,element:r.props.element,Component:r.props.Component,index:r.props.index,path:r.props.path,middleware:r.props.middleware,loader:r.props.loader,action:r.props.action,hydrateFallbackElement:r.props.hydrateFallbackElement,HydrateFallback:r.props.HydrateFallback,errorElement:r.props.errorElement,ErrorBoundary:r.props.ErrorBoundary,hasErrorBoundary:r.props.hasErrorBoundary===!0||r.props.ErrorBoundary!=null||r.props.errorElement!=null,shouldRevalidate:r.props.shouldRevalidate,handle:r.props.handle,lazy:r.props.lazy};r.props.children&&(m.children=nr(r.props.children,d)),c.push(m)}),c}var mu="get",yu="application/x-www-form-urlencoded";function xu(s){return s!=null&&typeof s.tagName=="string"}function ev(s){return xu(s)&&s.tagName.toLowerCase()==="button"}function lv(s){return xu(s)&&s.tagName.toLowerCase()==="form"}function nv(s){return xu(s)&&s.tagName.toLowerCase()==="input"}function av(s){return!!(s.metaKey||s.altKey||s.ctrlKey||s.shiftKey)}function iv(s,i){return s.button===0&&(!i||i==="_self")&&!av(s)}var ou=null;function uv(){if(ou===null)try{new FormData(document.createElement("form"),0),ou=!1}catch{ou=!0}return ou}var sv=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function Fc(s){return s!=null&&!sv.has(s)?(Ue(!1,`"${s}" is not a valid \`encType\` for \`\`/\`\` and will default to "${yu}"`),null):s}function cv(s,i){let c,r,o,d,m;if(lv(s)){let S=s.getAttribute("action");r=S?cl(S,i):null,c=s.getAttribute("method")||mu,o=Fc(s.getAttribute("enctype"))||yu,d=new FormData(s)}else if(ev(s)||nv(s)&&(s.type==="submit"||s.type==="image")){let S=s.form;if(S==null)throw new Error('Cannot submit a - + + +
+

OI Modes

+
+ {oiButtons.map((btn) => ( + + ))} +

- Keep this tab focused to drive. Keyboard input is ignored while typing in form fields. + Sensor streaming starts automatically after each OI change. Keep this tab focused while driving.

); diff --git a/webui/src/hooks/useDriveControls.js b/webui/src/hooks/useDriveControls.js index e2c53af6..ea43164c 100644 --- a/webui/src/hooks/useDriveControls.js +++ b/webui/src/hooks/useDriveControls.js @@ -2,6 +2,14 @@ import { useCallback, useEffect, useRef, useState } from 'react'; import { useSocket } from '../context/SocketContext.jsx'; import { useSession } from '../context/SessionContext.jsx'; +const OI_COMMANDS = { + start: [128], + safe: [131], + full: [132], + passive: [128], + dock: [143], +}; + function clamp(value, min, max) { return Math.max(min, Math.min(max, value)); } @@ -55,6 +63,12 @@ function shouldIgnoreEvent(event) { ); } +function bytesToBase64(bytes) { + const binary = String.fromCharCode(...bytes); + if (typeof btoa === 'function') return btoa(binary); + return Buffer.from(bytes).toString('base64'); +} + export function useDriveControls() { const socket = useSocket(); const { session } = useSession(); @@ -62,7 +76,6 @@ export function useDriveControls() { const keysRef = useRef(new Set()); const lastSpeedsRef = useRef({ left: 0, right: 0 }); const [currentSpeeds, setCurrentSpeeds] = useState(lastSpeedsRef.current); - const [sensorEnabled, setSensorEnabled] = useState(false); const emitCommand = useCallback( (payload, cb) => { @@ -72,6 +85,14 @@ export function useDriveControls() { [socket, roverId], ); + const enableSensorStream = useCallback(() => { + if (!roverId) return; + emitCommand({ + type: 'sensorStream', + data: { sensorStream: { enable: true } }, + }); + }, [emitCommand, roverId]); + const sendDriveUpdate = useCallback(() => { if (!roverId) return; const speeds = computeSpeeds(keysRef.current); @@ -96,24 +117,25 @@ export function useDriveControls() { }); }, [emitCommand, roverId]); - const toggleSensorStream = useCallback(() => { - if (!roverId) return; - setSensorEnabled((prev) => { - const next = !prev; + const sendOiCommand = useCallback( + (key) => { + if (!roverId) return; + const bytes = OI_COMMANDS[key]; + if (!bytes) return; emitCommand({ - type: 'sensorStream', - data: { sensorStream: { enable: next } }, + type: 'raw', + data: { raw: bytesToBase64(bytes) }, }); - return next; - }); - }, [emitCommand, roverId]); + enableSensorStream(); + }, + [emitCommand, enableSensorStream, roverId], + ); useEffect(() => { if (!roverId) { keysRef.current.clear(); lastSpeedsRef.current = { left: 0, right: 0 }; setCurrentSpeeds(lastSpeedsRef.current); - setSensorEnabled(false); return undefined; } @@ -136,17 +158,18 @@ export function useDriveControls() { window.addEventListener('keydown', onKeyDown); window.addEventListener('keyup', onKeyUp); + enableSensorStream(); + return () => { window.removeEventListener('keydown', onKeyDown); window.removeEventListener('keyup', onKeyUp); }; - }, [roverId, sendDriveUpdate]); + }, [roverId, sendDriveUpdate, enableSensorStream]); return { roverId, speeds: currentSpeeds, - sensorEnabled, - toggleSensorStream, stopMotors, + sendOiCommand, }; } From e3a0161ba69e1c10efb11068b752b123aef46a21 Mon Sep 17 00:00:00 2001 From: legop3 Date: Sat, 15 Nov 2025 14:00:09 -0500 Subject: [PATCH 13/61] guh --- server/src/services/commandService.js | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/server/src/services/commandService.js b/server/src/services/commandService.js index 5db67e35..9d093885 100644 --- a/server/src/services/commandService.js +++ b/server/src/services/commandService.js @@ -37,7 +37,8 @@ module.exports = { }; io.on('connection', (socket) => { - function handleCommand({ roverId, type, data } = {}, cb = () => {}) { + function handleCommand({ roverId, type, data } = {}, cb) { + const reply = typeof cb === 'function' ? cb : () => {}; try { if (!roverId) { throw new Error('roverId required'); @@ -48,10 +49,10 @@ io.on('connection', (socket) => { const payload = data ? { ...data } : {}; const id = issueCommand(roverId, { type, ...payload }); logger.info('Queued command', socket.id, roverId, type); - cb({ id }); + reply({ id }); } catch (err) { logger.warn('Command rejected', socket.id, err.message); - cb({ error: err.message }); + reply({ error: err.message }); } } From a8090ce2fb4fd586e178eb679989f7caca1420bf Mon Sep 17 00:00:00 2001 From: legop3 Date: Sat, 15 Nov 2025 14:16:12 -0500 Subject: [PATCH 14/61] guh --- server/public/assets/index-CIpY4YLn.css | 1 + server/public/assets/index-Cyy-WeOF.css | 1 - .../{index-n1qWThah.js => index-_yFT6hTb.js} | 12 +- server/public/index.html | 4 +- webui/src/App.jsx | 4 + webui/src/components/AdminPanel.jsx | 110 ++++++++++++++++++ webui/src/components/AlertFeed.jsx | 30 +++++ webui/src/context/SessionContext.jsx | 10 +- 8 files changed, 162 insertions(+), 10 deletions(-) create mode 100644 server/public/assets/index-CIpY4YLn.css delete mode 100644 server/public/assets/index-Cyy-WeOF.css rename server/public/assets/{index-n1qWThah.js => index-_yFT6hTb.js} (61%) create mode 100644 webui/src/components/AdminPanel.jsx create mode 100644 webui/src/components/AlertFeed.jsx diff --git a/server/public/assets/index-CIpY4YLn.css b/server/public/assets/index-CIpY4YLn.css new file mode 100644 index 00000000..fc893936 --- /dev/null +++ b/server/public/assets/index-CIpY4YLn.css @@ -0,0 +1 @@ +*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.col-span-full{grid-column:1 / -1}.mx-auto{margin-left:auto;margin-right:auto}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.flex{display:flex}.grid{display:grid}.aspect-video{aspect-ratio:16 / 9}.h-60{height:15rem}.h-64{height:16rem}.h-full{height:100%}.max-h-32{max-height:8rem}.max-h-64{max-height:16rem}.min-h-screen{min-height:100vh}.w-full{width:100%}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-amber-500{--tw-border-opacity: 1;border-color:rgb(245 158 11 / var(--tw-border-opacity))}.border-amber-500\/40{border-color:#f59e0b66}.border-amber-600\/30{border-color:#d977064d}.border-amber-600\/40{border-color:#d9770666}.border-emerald-500\/30{border-color:#10b9814d}.border-red-500\/40{border-color:#ef444466}.border-slate-700{--tw-border-opacity: 1;border-color:rgb(51 65 85 / var(--tw-border-opacity))}.border-slate-800{--tw-border-opacity: 1;border-color:rgb(30 41 59 / var(--tw-border-opacity))}.border-slate-800\/60{border-color:#1e293b99}.border-slate-800\/80{border-color:#1e293bcc}.bg-amber-500\/10{background-color:#f59e0b1a}.bg-amber-500\/5{background-color:#f59e0b0d}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity))}.bg-blue-600{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity))}.bg-blue-600\/40{background-color:#2563eb66}.bg-emerald-500\/10{background-color:#10b9811a}.bg-emerald-500\/20{background-color:#10b98133}.bg-emerald-600{--tw-bg-opacity: 1;background-color:rgb(5 150 105 / var(--tw-bg-opacity))}.bg-red-500\/10{background-color:#ef44441a}.bg-red-500\/20{background-color:#ef444433}.bg-red-600{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity))}.bg-slate-700{--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity))}.bg-slate-800{--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity))}.bg-slate-800\/80{background-color:#1e293bcc}.bg-slate-900\/60{background-color:#0f172a99}.bg-slate-900\/70{background-color:#0f172ab3}.bg-slate-950{--tw-bg-opacity: 1;background-color:rgb(2 6 23 / var(--tw-bg-opacity))}.bg-slate-950\/30{background-color:#0206174d}.bg-slate-950\/40{background-color:#02061766}.bg-slate-950\/50{background-color:#02061780}.bg-slate-950\/60{background-color:#02061799}.object-contain{-o-object-fit:contain;object-fit:contain}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.text-right{text-align:right}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.tracking-\[0\.2em\]{letter-spacing:.2em}.tracking-\[0\.3em\]{letter-spacing:.3em}.text-amber-100{--tw-text-opacity: 1;color:rgb(254 243 199 / var(--tw-text-opacity))}.text-amber-200{--tw-text-opacity: 1;color:rgb(253 230 138 / var(--tw-text-opacity))}.text-amber-300{--tw-text-opacity: 1;color:rgb(252 211 77 / var(--tw-text-opacity))}.text-blue-100{--tw-text-opacity: 1;color:rgb(219 234 254 / var(--tw-text-opacity))}.text-cyan-300{--tw-text-opacity: 1;color:rgb(103 232 249 / var(--tw-text-opacity))}.text-emerald-100{--tw-text-opacity: 1;color:rgb(209 250 229 / var(--tw-text-opacity))}.text-emerald-200{--tw-text-opacity: 1;color:rgb(167 243 208 / var(--tw-text-opacity))}.text-emerald-300{--tw-text-opacity: 1;color:rgb(110 231 183 / var(--tw-text-opacity))}.text-lime-300{--tw-text-opacity: 1;color:rgb(190 242 100 / var(--tw-text-opacity))}.text-pink-300{--tw-text-opacity: 1;color:rgb(249 168 212 / var(--tw-text-opacity))}.text-red-100{--tw-text-opacity: 1;color:rgb(254 226 226 / var(--tw-text-opacity))}.text-red-200{--tw-text-opacity: 1;color:rgb(254 202 202 / var(--tw-text-opacity))}.text-slate-100{--tw-text-opacity: 1;color:rgb(241 245 249 / var(--tw-text-opacity))}.text-slate-200{--tw-text-opacity: 1;color:rgb(226 232 240 / var(--tw-text-opacity))}.text-slate-300{--tw-text-opacity: 1;color:rgb(203 213 225 / var(--tw-text-opacity))}.text-slate-400{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity))}.text-slate-50{--tw-text-opacity: 1;color:rgb(248 250 252 / var(--tw-text-opacity))}.text-slate-500{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity))}.text-teal-200{--tw-text-opacity: 1;color:rgb(153 246 228 / var(--tw-text-opacity))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.opacity-60{opacity:.6}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#0f172a;background-color:#f8fafc}body{margin:0;min-height:100vh;background-color:#0f172a}.disabled\:opacity-50:disabled{opacity:.5}@media(min-width:1024px){.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}} diff --git a/server/public/assets/index-Cyy-WeOF.css b/server/public/assets/index-Cyy-WeOF.css deleted file mode 100644 index 9033e22b..00000000 --- a/server/public/assets/index-Cyy-WeOF.css +++ /dev/null @@ -1 +0,0 @@ -*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.col-span-full{grid-column:1 / -1}.mx-auto{margin-left:auto;margin-right:auto}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.flex{display:flex}.grid{display:grid}.aspect-video{aspect-ratio:16 / 9}.h-60{height:15rem}.h-64{height:16rem}.h-full{height:100%}.max-h-32{max-height:8rem}.max-h-64{max-height:16rem}.min-h-screen{min-height:100vh}.w-full{width:100%}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-slate-700{--tw-border-opacity: 1;border-color:rgb(51 65 85 / var(--tw-border-opacity))}.border-slate-800{--tw-border-opacity: 1;border-color:rgb(30 41 59 / var(--tw-border-opacity))}.border-slate-800\/60{border-color:#1e293b99}.border-slate-800\/80{border-color:#1e293bcc}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity))}.bg-blue-600{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity))}.bg-blue-600\/40{background-color:#2563eb66}.bg-emerald-500\/20{background-color:#10b98133}.bg-emerald-600{--tw-bg-opacity: 1;background-color:rgb(5 150 105 / var(--tw-bg-opacity))}.bg-red-500\/20{background-color:#ef444433}.bg-red-600{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity))}.bg-slate-700{--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity))}.bg-slate-800{--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity))}.bg-slate-800\/80{background-color:#1e293bcc}.bg-slate-900\/60{background-color:#0f172a99}.bg-slate-900\/70{background-color:#0f172ab3}.bg-slate-950{--tw-bg-opacity: 1;background-color:rgb(2 6 23 / var(--tw-bg-opacity))}.bg-slate-950\/40{background-color:#02061766}.bg-slate-950\/50{background-color:#02061780}.bg-slate-950\/60{background-color:#02061799}.object-contain{-o-object-fit:contain;object-fit:contain}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.text-right{text-align:right}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.tracking-\[0\.2em\]{letter-spacing:.2em}.tracking-\[0\.3em\]{letter-spacing:.3em}.text-blue-100{--tw-text-opacity: 1;color:rgb(219 234 254 / var(--tw-text-opacity))}.text-cyan-300{--tw-text-opacity: 1;color:rgb(103 232 249 / var(--tw-text-opacity))}.text-emerald-200{--tw-text-opacity: 1;color:rgb(167 243 208 / var(--tw-text-opacity))}.text-emerald-300{--tw-text-opacity: 1;color:rgb(110 231 183 / var(--tw-text-opacity))}.text-lime-300{--tw-text-opacity: 1;color:rgb(190 242 100 / var(--tw-text-opacity))}.text-pink-300{--tw-text-opacity: 1;color:rgb(249 168 212 / var(--tw-text-opacity))}.text-red-200{--tw-text-opacity: 1;color:rgb(254 202 202 / var(--tw-text-opacity))}.text-slate-100{--tw-text-opacity: 1;color:rgb(241 245 249 / var(--tw-text-opacity))}.text-slate-200{--tw-text-opacity: 1;color:rgb(226 232 240 / var(--tw-text-opacity))}.text-slate-300{--tw-text-opacity: 1;color:rgb(203 213 225 / var(--tw-text-opacity))}.text-slate-400{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity))}.text-slate-50{--tw-text-opacity: 1;color:rgb(248 250 252 / var(--tw-text-opacity))}.text-slate-500{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity))}.text-teal-200{--tw-text-opacity: 1;color:rgb(153 246 228 / var(--tw-text-opacity))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#0f172a;background-color:#f8fafc}body{margin:0;min-height:100vh;background-color:#0f172a}.disabled\:opacity-50:disabled{opacity:.5}@media(min-width:1024px){.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}} diff --git a/server/public/assets/index-n1qWThah.js b/server/public/assets/index-_yFT6hTb.js similarity index 61% rename from server/public/assets/index-n1qWThah.js rename to server/public/assets/index-_yFT6hTb.js index 0d7ad2dc..b4686687 100644 --- a/server/public/assets/index-n1qWThah.js +++ b/server/public/assets/index-_yFT6hTb.js @@ -1,11 +1,11 @@ -(function(){const i=document.createElement("link").relList;if(i&&i.supports&&i.supports("modulepreload"))return;for(const o of document.querySelectorAll('link[rel="modulepreload"]'))r(o);new MutationObserver(o=>{for(const d of o)if(d.type==="childList")for(const m of d.addedNodes)m.tagName==="LINK"&&m.rel==="modulepreload"&&r(m)}).observe(document,{childList:!0,subtree:!0});function c(o){const d={};return o.integrity&&(d.integrity=o.integrity),o.referrerPolicy&&(d.referrerPolicy=o.referrerPolicy),o.crossOrigin==="use-credentials"?d.credentials="include":o.crossOrigin==="anonymous"?d.credentials="omit":d.credentials="same-origin",d}function r(o){if(o.ep)return;o.ep=!0;const d=c(o);fetch(o.href,d)}})();var Vc={exports:{}},qa={};var Ad;function Pp(){if(Ad)return qa;Ad=1;var s=Symbol.for("react.transitional.element"),i=Symbol.for("react.fragment");function c(r,o,d){var m=null;if(d!==void 0&&(m=""+d),o.key!==void 0&&(m=""+o.key),"key"in o){d={};for(var b in o)b!=="key"&&(d[b]=o[b])}else d=o;return o=d.ref,{$$typeof:s,type:r,key:m,ref:o!==void 0?o:null,props:d}}return qa.Fragment=i,qa.jsx=c,qa.jsxs=c,qa}var Rd;function t0(){return Rd||(Rd=1,Vc.exports=Pp()),Vc.exports}var T=t0(),Zc={exports:{}},F={};var Od;function e0(){if(Od)return F;Od=1;var s=Symbol.for("react.transitional.element"),i=Symbol.for("react.portal"),c=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),o=Symbol.for("react.profiler"),d=Symbol.for("react.consumer"),m=Symbol.for("react.context"),b=Symbol.for("react.forward_ref"),y=Symbol.for("react.suspense"),v=Symbol.for("react.memo"),C=Symbol.for("react.lazy"),R=Symbol.for("react.activity"),w=Symbol.iterator;function j(S){return S===null||typeof S!="object"?null:(S=w&&S[w]||S["@@iterator"],typeof S=="function"?S:null)}var L={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},Q=Object.assign,K={};function Y(S,B,q){this.props=S,this.context=B,this.refs=K,this.updater=q||L}Y.prototype.isReactComponent={},Y.prototype.setState=function(S,B){if(typeof S!="object"&&typeof S!="function"&&S!=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,S,B,"setState")},Y.prototype.forceUpdate=function(S){this.updater.enqueueForceUpdate(this,S,"forceUpdate")};function G(){}G.prototype=Y.prototype;function k(S,B,q){this.props=S,this.context=B,this.refs=K,this.updater=q||L}var dt=k.prototype=new G;dt.constructor=k,Q(dt,Y.prototype),dt.isPureReactComponent=!0;var Tt=Array.isArray;function qt(){}var tt={H:null,A:null,T:null,S:null},Lt=Object.prototype.hasOwnProperty;function Ot(S,B,q){var V=q.ref;return{$$typeof:s,type:S,key:B,ref:V!==void 0?V:null,props:q}}function ie(S,B){return Ot(S.type,B,S.props)}function ue(S){return typeof S=="object"&&S!==null&&S.$$typeof===s}function Ft(S){var B={"=":"=0",":":"=2"};return"$"+S.replace(/[=:]/g,function(q){return B[q]})}var jl=/\/+/g;function Ge(S,B){return typeof S=="object"&&S!==null&&S.key!=null?Ft(""+S.key):B.toString(36)}function Ne(S){switch(S.status){case"fulfilled":return S.value;case"rejected":throw S.reason;default:switch(typeof S.status=="string"?S.then(qt,qt):(S.status="pending",S.then(function(B){S.status==="pending"&&(S.status="fulfilled",S.value=B)},function(B){S.status==="pending"&&(S.status="rejected",S.reason=B)})),S.status){case"fulfilled":return S.value;case"rejected":throw S.reason}}throw S}function D(S,B,q,V,I){var lt=typeof S;(lt==="undefined"||lt==="boolean")&&(S=null);var ht=!1;if(S===null)ht=!0;else switch(lt){case"bigint":case"string":case"number":ht=!0;break;case"object":switch(S.$$typeof){case s:case i:ht=!0;break;case C:return ht=S._init,D(ht(S._payload),B,q,V,I)}}if(ht)return I=I(S),ht=V===""?"."+Ge(S,0):V,Tt(I)?(q="",ht!=null&&(q=ht.replace(jl,"$&/")+"/"),D(I,B,q,"",function(Zn){return Zn})):I!=null&&(ue(I)&&(I=ie(I,q+(I.key==null||S&&S.key===I.key?"":(""+I.key).replace(jl,"$&/")+"/")+ht)),B.push(I)),1;ht=0;var $t=V===""?".":V+":";if(Tt(S))for(var zt=0;zt>>1,St=D[pt];if(0>>1;pto(q,W))Vo(I,q)?(D[pt]=I,D[V]=W,pt=V):(D[pt]=q,D[B]=W,pt=B);else if(Vo(I,W))D[pt]=I,D[V]=W,pt=V;else break t}}return H}function o(D,H){var W=D.sortIndex-H.sortIndex;return W!==0?W:D.id-H.id}if(s.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var d=performance;s.unstable_now=function(){return d.now()}}else{var m=Date,b=m.now();s.unstable_now=function(){return m.now()-b}}var y=[],v=[],C=1,R=null,w=3,j=!1,L=!1,Q=!1,K=!1,Y=typeof setTimeout=="function"?setTimeout:null,G=typeof clearTimeout=="function"?clearTimeout:null,k=typeof setImmediate<"u"?setImmediate:null;function dt(D){for(var H=c(v);H!==null;){if(H.callback===null)r(v);else if(H.startTime<=D)r(v),H.sortIndex=H.expirationTime,i(y,H);else break;H=c(v)}}function Tt(D){if(Q=!1,dt(D),!L)if(c(y)!==null)L=!0,qt||(qt=!0,Ft());else{var H=c(v);H!==null&&Ne(Tt,H.startTime-D)}}var qt=!1,tt=-1,Lt=5,Ot=-1;function ie(){return K?!0:!(s.unstable_now()-OtD&&ie());){var pt=R.callback;if(typeof pt=="function"){R.callback=null,w=R.priorityLevel;var St=pt(R.expirationTime<=D);if(D=s.unstable_now(),typeof St=="function"){R.callback=St,dt(D),H=!0;break e}R===c(y)&&r(y),dt(D)}else r(y);R=c(y)}if(R!==null)H=!0;else{var S=c(v);S!==null&&Ne(Tt,S.startTime-D),H=!1}}break t}finally{R=null,w=W,j=!1}H=void 0}}finally{H?Ft():qt=!1}}}var Ft;if(typeof k=="function")Ft=function(){k(ue)};else if(typeof MessageChannel<"u"){var jl=new MessageChannel,Ge=jl.port2;jl.port1.onmessage=ue,Ft=function(){Ge.postMessage(null)}}else Ft=function(){Y(ue,0)};function Ne(D,H){tt=Y(function(){D(s.unstable_now())},H)}s.unstable_IdlePriority=5,s.unstable_ImmediatePriority=1,s.unstable_LowPriority=4,s.unstable_NormalPriority=3,s.unstable_Profiling=null,s.unstable_UserBlockingPriority=2,s.unstable_cancelCallback=function(D){D.callback=null},s.unstable_forceFrameRate=function(D){0>D||125pt?(D.sortIndex=W,i(v,D),c(y)===null&&D===c(v)&&(Q?(G(tt),tt=-1):Q=!0,Ne(Tt,W-pt))):(D.sortIndex=St,i(y,D),L||j||(L=!0,qt||(qt=!0,Ft()))),D},s.unstable_shouldYield=ie,s.unstable_wrapCallback=function(D){var H=w;return function(){var W=w;w=H;try{return D.apply(this,arguments)}finally{w=W}}}})(kc)),kc}var zd;function n0(){return zd||(zd=1,Jc.exports=l0()),Jc.exports}var $c={exports:{}},kt={};var Dd;function a0(){if(Dd)return kt;Dd=1;var s=fr();function i(y){var v="https://react.dev/errors/"+y;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(s)}catch(i){console.error(i)}}return s(),$c.exports=a0(),$c.exports}var Ud;function u0(){if(Ud)return La;Ud=1;var s=n0(),i=fr(),c=i0();function r(t){var e="https://react.dev/errors/"+t;if(1St||(t.current=pt[St],pt[St]=null,St--)}function q(t,e){St++,pt[St]=t.current,t.current=e}var V=S(null),I=S(null),lt=S(null),ht=S(null);function $t(t,e){switch(q(lt,e),q(I,t),q(V,null),e.nodeType){case 9:case 11:t=(t=e.documentElement)&&(t=t.namespaceURI)?kh(t):0;break;default:if(t=e.tagName,e=e.namespaceURI)e=kh(e),t=$h(e,t);else switch(t){case"svg":t=1;break;case"math":t=2;break;default:t=0}}B(V),q(V,t)}function zt(){B(V),B(I),B(lt)}function Zn(t){t.memoizedState!==null&&q(ht,t);var e=V.current,l=$h(e,t.type);e!==l&&(q(I,t),q(V,l))}function Ja(t){I.current===t&&(B(V),B(I)),ht.current===t&&(B(ht),Ba._currentValue=W)}var Ru,xr;function Hl(t){if(Ru===void 0)try{throw Error()}catch(l){var e=l.stack.trim().match(/\n( *(at )?)/);Ru=e&&e[1]||"",xr=-1{for(const d of o)if(d.type==="childList")for(const m of d.addedNodes)m.tagName==="LINK"&&m.rel==="modulepreload"&&r(m)}).observe(document,{childList:!0,subtree:!0});function c(o){const d={};return o.integrity&&(d.integrity=o.integrity),o.referrerPolicy&&(d.referrerPolicy=o.referrerPolicy),o.crossOrigin==="use-credentials"?d.credentials="include":o.crossOrigin==="anonymous"?d.credentials="omit":d.credentials="same-origin",d}function r(o){if(o.ep)return;o.ep=!0;const d=c(o);fetch(o.href,d)}})();var Vc={exports:{}},qa={};var Ad;function Ip(){if(Ad)return qa;Ad=1;var s=Symbol.for("react.transitional.element"),i=Symbol.for("react.fragment");function c(r,o,d){var m=null;if(d!==void 0&&(m=""+d),o.key!==void 0&&(m=""+o.key),"key"in o){d={};for(var b in o)b!=="key"&&(d[b]=o[b])}else d=o;return o=d.ref,{$$typeof:s,type:r,key:m,ref:o!==void 0?o:null,props:d}}return qa.Fragment=i,qa.jsx=c,qa.jsxs=c,qa}var Rd;function t0(){return Rd||(Rd=1,Vc.exports=Ip()),Vc.exports}var x=t0(),Zc={exports:{}},F={};var Nd;function e0(){if(Nd)return F;Nd=1;var s=Symbol.for("react.transitional.element"),i=Symbol.for("react.portal"),c=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),o=Symbol.for("react.profiler"),d=Symbol.for("react.consumer"),m=Symbol.for("react.context"),b=Symbol.for("react.forward_ref"),y=Symbol.for("react.suspense"),v=Symbol.for("react.memo"),C=Symbol.for("react.lazy"),N=Symbol.for("react.activity"),j=Symbol.iterator;function w(S){return S===null||typeof S!="object"?null:(S=j&&S[j]||S["@@iterator"],typeof S=="function"?S:null)}var H={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},Y=Object.assign,G={};function X(S,B,L){this.props=S,this.context=B,this.refs=G,this.updater=L||H}X.prototype.isReactComponent={},X.prototype.setState=function(S,B){if(typeof S!="object"&&typeof S!="function"&&S!=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,S,B,"setState")},X.prototype.forceUpdate=function(S){this.updater.enqueueForceUpdate(this,S,"forceUpdate")};function V(){}V.prototype=X.prototype;function J(S,B,L){this.props=S,this.context=B,this.refs=G,this.updater=L||H}var dt=J.prototype=new V;dt.constructor=J,Y(dt,X.prototype),dt.isPureReactComponent=!0;var Tt=Array.isArray;function qt(){}var tt={H:null,A:null,T:null,S:null},Lt=Object.prototype.hasOwnProperty;function Nt(S,B,L){var Z=L.ref;return{$$typeof:s,type:S,key:B,ref:Z!==void 0?Z:null,props:L}}function ie(S,B){return Nt(S.type,B,S.props)}function ue(S){return typeof S=="object"&&S!==null&&S.$$typeof===s}function Ft(S){var B={"=":"=0",":":"=2"};return"$"+S.replace(/[=:]/g,function(L){return B[L]})}var jl=/\/+/g;function Ge(S,B){return typeof S=="object"&&S!==null&&S.key!=null?Ft(""+S.key):B.toString(36)}function Ce(S){switch(S.status){case"fulfilled":return S.value;case"rejected":throw S.reason;default:switch(typeof S.status=="string"?S.then(qt,qt):(S.status="pending",S.then(function(B){S.status==="pending"&&(S.status="fulfilled",S.value=B)},function(B){S.status==="pending"&&(S.status="rejected",S.reason=B)})),S.status){case"fulfilled":return S.value;case"rejected":throw S.reason}}throw S}function M(S,B,L,Z,P){var lt=typeof S;(lt==="undefined"||lt==="boolean")&&(S=null);var ht=!1;if(S===null)ht=!0;else switch(lt){case"bigint":case"string":case"number":ht=!0;break;case"object":switch(S.$$typeof){case s:case i:ht=!0;break;case C:return ht=S._init,M(ht(S._payload),B,L,Z,P)}}if(ht)return P=P(S),ht=Z===""?"."+Ge(S,0):Z,Tt(P)?(L="",ht!=null&&(L=ht.replace(jl,"$&/")+"/"),M(P,B,L,"",function(Zn){return Zn})):P!=null&&(ue(P)&&(P=ie(P,L+(P.key==null||S&&S.key===P.key?"":(""+P.key).replace(jl,"$&/")+"/")+ht)),B.push(P)),1;ht=0;var $t=Z===""?".":Z+":";if(Tt(S))for(var zt=0;zt>>1,St=M[pt];if(0>>1;pto(L,W))Zo(P,L)?(M[pt]=P,M[Z]=W,pt=Z):(M[pt]=L,M[B]=W,pt=B);else if(Zo(P,W))M[pt]=P,M[Z]=W,pt=Z;else break t}}return q}function o(M,q){var W=M.sortIndex-q.sortIndex;return W!==0?W:M.id-q.id}if(s.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var d=performance;s.unstable_now=function(){return d.now()}}else{var m=Date,b=m.now();s.unstable_now=function(){return m.now()-b}}var y=[],v=[],C=1,N=null,j=3,w=!1,H=!1,Y=!1,G=!1,X=typeof setTimeout=="function"?setTimeout:null,V=typeof clearTimeout=="function"?clearTimeout:null,J=typeof setImmediate<"u"?setImmediate:null;function dt(M){for(var q=c(v);q!==null;){if(q.callback===null)r(v);else if(q.startTime<=M)r(v),q.sortIndex=q.expirationTime,i(y,q);else break;q=c(v)}}function Tt(M){if(Y=!1,dt(M),!H)if(c(y)!==null)H=!0,qt||(qt=!0,Ft());else{var q=c(v);q!==null&&Ce(Tt,q.startTime-M)}}var qt=!1,tt=-1,Lt=5,Nt=-1;function ie(){return G?!0:!(s.unstable_now()-NtM&&ie());){var pt=N.callback;if(typeof pt=="function"){N.callback=null,j=N.priorityLevel;var St=pt(N.expirationTime<=M);if(M=s.unstable_now(),typeof St=="function"){N.callback=St,dt(M),q=!0;break e}N===c(y)&&r(y),dt(M)}else r(y);N=c(y)}if(N!==null)q=!0;else{var S=c(v);S!==null&&Ce(Tt,S.startTime-M),q=!1}}break t}finally{N=null,j=W,w=!1}q=void 0}}finally{q?Ft():qt=!1}}}var Ft;if(typeof J=="function")Ft=function(){J(ue)};else if(typeof MessageChannel<"u"){var jl=new MessageChannel,Ge=jl.port2;jl.port1.onmessage=ue,Ft=function(){Ge.postMessage(null)}}else Ft=function(){X(ue,0)};function Ce(M,q){tt=X(function(){M(s.unstable_now())},q)}s.unstable_IdlePriority=5,s.unstable_ImmediatePriority=1,s.unstable_LowPriority=4,s.unstable_NormalPriority=3,s.unstable_Profiling=null,s.unstable_UserBlockingPriority=2,s.unstable_cancelCallback=function(M){M.callback=null},s.unstable_forceFrameRate=function(M){0>M||125pt?(M.sortIndex=W,i(v,M),c(y)===null&&M===c(v)&&(Y?(V(tt),tt=-1):Y=!0,Ce(Tt,W-pt))):(M.sortIndex=St,i(y,M),H||w||(H=!0,qt||(qt=!0,Ft()))),M},s.unstable_shouldYield=ie,s.unstable_wrapCallback=function(M){var q=j;return function(){var W=j;j=q;try{return M.apply(this,arguments)}finally{j=W}}}})(Jc)),Jc}var zd;function n0(){return zd||(zd=1,kc.exports=l0()),kc.exports}var $c={exports:{}},Jt={};var Md;function a0(){if(Md)return Jt;Md=1;var s=fr();function i(y){var v="https://react.dev/errors/"+y;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(s)}catch(i){console.error(i)}}return s(),$c.exports=a0(),$c.exports}var Ud;function u0(){if(Ud)return La;Ud=1;var s=n0(),i=fr(),c=i0();function r(t){var e="https://react.dev/errors/"+t;if(1St||(t.current=pt[St],pt[St]=null,St--)}function L(t,e){St++,pt[St]=t.current,t.current=e}var Z=S(null),P=S(null),lt=S(null),ht=S(null);function $t(t,e){switch(L(lt,e),L(P,t),L(Z,null),e.nodeType){case 9:case 11:t=(t=e.documentElement)&&(t=t.namespaceURI)?Jh(t):0;break;default:if(t=e.tagName,e=e.namespaceURI)e=Jh(e),t=$h(e,t);else switch(t){case"svg":t=1;break;case"math":t=2;break;default:t=0}}B(Z),L(Z,t)}function zt(){B(Z),B(P),B(lt)}function Zn(t){t.memoizedState!==null&&L(ht,t);var e=Z.current,l=$h(e,t.type);e!==l&&(L(P,t),L(Z,l))}function ka(t){P.current===t&&(B(Z),B(P)),ht.current===t&&(B(ht),wa._currentValue=W)}var Ru,Er;function Hl(t){if(Ru===void 0)try{throw Error()}catch(l){var e=l.stack.trim().match(/\n( *(at )?)/);Ru=e&&e[1]||"",Er=-1)":-1a||p[n]!==A[a]){var z=` -`+p[n].replace(" at new "," at ");return t.displayName&&z.includes("")&&(z=z.replace("",t.displayName)),z}while(1<=n&&0<=a);break}}}finally{Ou=!1,Error.prepareStackTrace=l}return(l=t?t.displayName||t.name:"")?Hl(l):""}function zm(t,e){switch(t.tag){case 26:case 27:case 5:return Hl(t.type);case 16:return Hl("Lazy");case 13:return t.child!==e&&e!==null?Hl("Suspense Fallback"):Hl("Suspense");case 19:return Hl("SuspenseList");case 0:case 15:return Nu(t.type,!1);case 11:return Nu(t.type.render,!1);case 1:return Nu(t.type,!0);case 31:return Hl("Activity");default:return""}}function _r(t){try{var e="",l=null;do e+=zm(t,l),l=t,t=t.return;while(t);return e}catch(n){return` +`+p[n].replace(" at new "," at ");return t.displayName&&z.includes("")&&(z=z.replace("",t.displayName)),z}while(1<=n&&0<=a);break}}}finally{Nu=!1,Error.prepareStackTrace=l}return(l=t?t.displayName||t.name:"")?Hl(l):""}function zm(t,e){switch(t.tag){case 26:case 27:case 5:return Hl(t.type);case 16:return Hl("Lazy");case 13:return t.child!==e&&e!==null?Hl("Suspense Fallback"):Hl("Suspense");case 19:return Hl("SuspenseList");case 0:case 15:return Ou(t.type,!1);case 11:return Ou(t.type.render,!1);case 1:return Ou(t.type,!0);case 31:return Hl("Activity");default:return""}}function _r(t){try{var e="",l=null;do e+=zm(t,l),l=t,t=t.return;while(t);return e}catch(n){return` Error generating stack: `+n.message+` -`+n.stack}}var Cu=Object.prototype.hasOwnProperty,zu=s.unstable_scheduleCallback,Du=s.unstable_cancelCallback,Dm=s.unstable_shouldYield,Mm=s.unstable_requestPaint,se=s.unstable_now,Um=s.unstable_getCurrentPriorityLevel,Tr=s.unstable_ImmediatePriority,Ar=s.unstable_UserBlockingPriority,ka=s.unstable_NormalPriority,Bm=s.unstable_LowPriority,Rr=s.unstable_IdlePriority,wm=s.log,jm=s.unstable_setDisableYieldValue,Kn=null,ce=null;function fl(t){if(typeof wm=="function"&&jm(t),ce&&typeof ce.setStrictMode=="function")try{ce.setStrictMode(Kn,t)}catch{}}var re=Math.clz32?Math.clz32:Lm,Hm=Math.log,qm=Math.LN2;function Lm(t){return t>>>=0,t===0?32:31-(Hm(t)/qm|0)|0}var $a=256,Wa=262144,Fa=4194304;function ql(t){var e=t&42;if(e!==0)return e;switch(t&-t){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return t&261888;case 262144:case 524288:case 1048576:case 2097152:return t&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return t&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return t}}function Ia(t,e,l){var n=t.pendingLanes;if(n===0)return 0;var a=0,u=t.suspendedLanes,f=t.pingedLanes;t=t.warmLanes;var h=n&134217727;return h!==0?(n=h&~u,n!==0?a=ql(n):(f&=h,f!==0?a=ql(f):l||(l=h&~t,l!==0&&(a=ql(l))))):(h=n&~u,h!==0?a=ql(h):f!==0?a=ql(f):l||(l=n&~t,l!==0&&(a=ql(l)))),a===0?0:e!==0&&e!==a&&(e&u)===0&&(u=a&-a,l=e&-e,u>=l||u===32&&(l&4194048)!==0)?e:a}function Jn(t,e){return(t.pendingLanes&~(t.suspendedLanes&~t.pingedLanes)&e)===0}function Ym(t,e){switch(t){case 1:case 2:case 4:case 8:case 64:return e+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 e+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 Or(){var t=Fa;return Fa<<=1,(Fa&62914560)===0&&(Fa=4194304),t}function Mu(t){for(var e=[],l=0;31>l;l++)e.push(t);return e}function kn(t,e){t.pendingLanes|=e,e!==268435456&&(t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0)}function Xm(t,e,l,n,a,u){var f=t.pendingLanes;t.pendingLanes=l,t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0,t.expiredLanes&=l,t.entangledLanes&=l,t.errorRecoveryDisabledLanes&=l,t.shellSuspendCounter=0;var h=t.entanglements,p=t.expirationTimes,A=t.hiddenUpdates;for(l=f&~l;0"u")return null;try{return t.activeElement||t.body}catch{return t.body}}var Jm=/[\n"\\]/g;function ge(t){return t.replace(Jm,function(e){return"\\"+e.charCodeAt(0).toString(16)+" "})}function qu(t,e,l,n,a,u,f,h){t.name="",f!=null&&typeof f!="function"&&typeof f!="symbol"&&typeof f!="boolean"?t.type=f:t.removeAttribute("type"),e!=null?f==="number"?(e===0&&t.value===""||t.value!=e)&&(t.value=""+ve(e)):t.value!==""+ve(e)&&(t.value=""+ve(e)):f!=="submit"&&f!=="reset"||t.removeAttribute("value"),e!=null?Lu(t,f,ve(e)):l!=null?Lu(t,f,ve(l)):n!=null&&t.removeAttribute("value"),a==null&&u!=null&&(t.defaultChecked=!!u),a!=null&&(t.checked=a&&typeof a!="function"&&typeof a!="symbol"),h!=null&&typeof h!="function"&&typeof h!="symbol"&&typeof h!="boolean"?t.name=""+ve(h):t.removeAttribute("name")}function Yr(t,e,l,n,a,u,f,h){if(u!=null&&typeof u!="function"&&typeof u!="symbol"&&typeof u!="boolean"&&(t.type=u),e!=null||l!=null){if(!(u!=="submit"&&u!=="reset"||e!=null)){Hu(t);return}l=l!=null?""+ve(l):"",e=e!=null?""+ve(e):l,h||e===t.value||(t.value=e),t.defaultValue=e}n=n??a,n=typeof n!="function"&&typeof n!="symbol"&&!!n,t.checked=h?t.checked:!!n,t.defaultChecked=!!n,f!=null&&typeof f!="function"&&typeof f!="symbol"&&typeof f!="boolean"&&(t.name=f),Hu(t)}function Lu(t,e,l){e==="number"&&ei(t.ownerDocument)===t||t.defaultValue===""+l||(t.defaultValue=""+l)}function rn(t,e,l,n){if(t=t.options,e){e={};for(var a=0;a"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Vu=!1;if(Ze)try{var In={};Object.defineProperty(In,"passive",{get:function(){Vu=!0}}),window.addEventListener("test",In,In),window.removeEventListener("test",In,In)}catch{Vu=!1}var hl=null,Zu=null,ni=null;function Jr(){if(ni)return ni;var t,e=Zu,l=e.length,n,a="value"in hl?hl.value:hl.textContent,u=a.length;for(t=0;t=ea),Pr=" ",tf=!1;function ef(t,e){switch(t){case"keyup":return Ey.indexOf(e.keyCode)!==-1;case"keydown":return e.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function lf(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var dn=!1;function _y(t,e){switch(t){case"compositionend":return lf(e);case"keypress":return e.which!==32?null:(tf=!0,Pr);case"textInput":return t=e.data,t===Pr&&tf?null:t;default:return null}}function Ty(t,e){if(dn)return t==="compositionend"||!Wu&&ef(t,e)?(t=Jr(),ni=Zu=hl=null,dn=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(e.ctrlKey||e.altKey||e.metaKey)||e.ctrlKey&&e.altKey){if(e.char&&1=e)return{node:l,offset:e-t};t=n}t:{for(;l;){if(l.nextSibling){l=l.nextSibling;break t}l=l.parentNode}l=void 0}l=of(l)}}function df(t,e){return t&&e?t===e?!0:t&&t.nodeType===3?!1:e&&e.nodeType===3?df(t,e.parentNode):"contains"in t?t.contains(e):t.compareDocumentPosition?!!(t.compareDocumentPosition(e)&16):!1:!1}function mf(t){t=t!=null&&t.ownerDocument!=null&&t.ownerDocument.defaultView!=null?t.ownerDocument.defaultView:window;for(var e=ei(t.document);e instanceof t.HTMLIFrameElement;){try{var l=typeof e.contentWindow.location.href=="string"}catch{l=!1}if(l)t=e.contentWindow;else break;e=ei(t.document)}return e}function Pu(t){var e=t&&t.nodeName&&t.nodeName.toLowerCase();return e&&(e==="input"&&(t.type==="text"||t.type==="search"||t.type==="tel"||t.type==="url"||t.type==="password")||e==="textarea"||t.contentEditable==="true")}var My=Ze&&"documentMode"in document&&11>=document.documentMode,mn=null,ts=null,ia=null,es=!1;function yf(t,e,l){var n=l.window===l?l.document:l.nodeType===9?l:l.ownerDocument;es||mn==null||mn!==ei(n)||(n=mn,"selectionStart"in n&&Pu(n)?n={start:n.selectionStart,end:n.selectionEnd}:(n=(n.ownerDocument&&n.ownerDocument.defaultView||window).getSelection(),n={anchorNode:n.anchorNode,anchorOffset:n.anchorOffset,focusNode:n.focusNode,focusOffset:n.focusOffset}),ia&&aa(ia,n)||(ia=n,n=Wi(ts,"onSelect"),0>=f,a-=f,we=1<<32-re(e)+a|l<et?(ut=Z,Z=null):ut=Z.sibling;var ft=O(E,Z,_[et],M);if(ft===null){Z===null&&(Z=ut);break}t&&Z&&ft.alternate===null&&e(E,Z),g=u(ft,g,et),rt===null?J=ft:rt.sibling=ft,rt=ft,Z=ut}if(et===_.length)return l(E,Z),st&&Je(E,et),J;if(Z===null){for(;et<_.length;et++)Z=U(E,_[et],M),Z!==null&&(g=u(Z,g,et),rt===null?J=Z:rt.sibling=Z,rt=Z);return st&&Je(E,et),J}for(Z=n(Z);et<_.length;et++)ut=N(Z,E,et,_[et],M),ut!==null&&(t&&ut.alternate!==null&&Z.delete(ut.key===null?et:ut.key),g=u(ut,g,et),rt===null?J=ut:rt.sibling=ut,rt=ut);return t&&Z.forEach(function(Bl){return e(E,Bl)}),st&&Je(E,et),J}function $(E,g,_,M){if(_==null)throw Error(r(151));for(var J=null,rt=null,Z=g,et=g=0,ut=null,ft=_.next();Z!==null&&!ft.done;et++,ft=_.next()){Z.index>et?(ut=Z,Z=null):ut=Z.sibling;var Bl=O(E,Z,ft.value,M);if(Bl===null){Z===null&&(Z=ut);break}t&&Z&&Bl.alternate===null&&e(E,Z),g=u(Bl,g,et),rt===null?J=Bl:rt.sibling=Bl,rt=Bl,Z=ut}if(ft.done)return l(E,Z),st&&Je(E,et),J;if(Z===null){for(;!ft.done;et++,ft=_.next())ft=U(E,ft.value,M),ft!==null&&(g=u(ft,g,et),rt===null?J=ft:rt.sibling=ft,rt=ft);return st&&Je(E,et),J}for(Z=n(Z);!ft.done;et++,ft=_.next())ft=N(Z,E,et,ft.value,M),ft!==null&&(t&&ft.alternate!==null&&Z.delete(ft.key===null?et:ft.key),g=u(ft,g,et),rt===null?J=ft:rt.sibling=ft,rt=ft);return t&&Z.forEach(function(Ip){return e(E,Ip)}),st&&Je(E,et),J}function bt(E,g,_,M){if(typeof _=="object"&&_!==null&&_.type===Q&&_.key===null&&(_=_.props.children),typeof _=="object"&&_!==null){switch(_.$$typeof){case j:t:{for(var J=_.key;g!==null;){if(g.key===J){if(J=_.type,J===Q){if(g.tag===7){l(E,g.sibling),M=a(g,_.props.children),M.return=E,E=M;break t}}else if(g.elementType===J||typeof J=="object"&&J!==null&&J.$$typeof===Lt&&$l(J)===g.type){l(E,g.sibling),M=a(g,_.props),oa(M,_),M.return=E,E=M;break t}l(E,g);break}else e(E,g);g=g.sibling}_.type===Q?(M=Vl(_.props.children,E.mode,M,_.key),M.return=E,E=M):(M=di(_.type,_.key,_.props,null,E.mode,M),oa(M,_),M.return=E,E=M)}return f(E);case L:t:{for(J=_.key;g!==null;){if(g.key===J)if(g.tag===4&&g.stateNode.containerInfo===_.containerInfo&&g.stateNode.implementation===_.implementation){l(E,g.sibling),M=a(g,_.children||[]),M.return=E,E=M;break t}else{l(E,g);break}else e(E,g);g=g.sibling}M=cs(_,E.mode,M),M.return=E,E=M}return f(E);case Lt:return _=$l(_),bt(E,g,_,M)}if(Ne(_))return X(E,g,_,M);if(Ft(_)){if(J=Ft(_),typeof J!="function")throw Error(r(150));return _=J.call(_),$(E,g,_,M)}if(typeof _.then=="function")return bt(E,g,Si(_),M);if(_.$$typeof===k)return bt(E,g,pi(E,_),M);Ei(E,_)}return typeof _=="string"&&_!==""||typeof _=="number"||typeof _=="bigint"?(_=""+_,g!==null&&g.tag===6?(l(E,g.sibling),M=a(g,_),M.return=E,E=M):(l(E,g),M=ss(_,E.mode,M),M.return=E,E=M),f(E)):l(E,g)}return function(E,g,_,M){try{fa=0;var J=bt(E,g,_,M);return An=null,J}catch(Z){if(Z===Tn||Z===gi)throw Z;var rt=oe(29,Z,null,E.mode);return rt.lanes=M,rt.return=E,rt}finally{}}}var Fl=qf(!0),Lf=qf(!1),vl=!1;function Ss(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function Es(t,e){t=t.updateQueue,e.updateQueue===t&&(e.updateQueue={baseState:t.baseState,firstBaseUpdate:t.firstBaseUpdate,lastBaseUpdate:t.lastBaseUpdate,shared:t.shared,callbacks:null})}function gl(t){return{lane:t,tag:0,payload:null,callback:null,next:null}}function bl(t,e,l){var n=t.updateQueue;if(n===null)return null;if(n=n.shared,(ot&2)!==0){var a=n.pending;return a===null?e.next=e:(e.next=a.next,a.next=e),n.pending=e,e=hi(t),xf(t,null,l),e}return oi(t,n,e,l),hi(t)}function ha(t,e,l){if(e=e.updateQueue,e!==null&&(e=e.shared,(l&4194048)!==0)){var n=e.lanes;n&=t.pendingLanes,l|=n,e.lanes=l,Cr(t,l)}}function xs(t,e){var l=t.updateQueue,n=t.alternate;if(n!==null&&(n=n.updateQueue,l===n)){var a=null,u=null;if(l=l.firstBaseUpdate,l!==null){do{var f={lane:l.lane,tag:l.tag,payload:l.payload,callback:null,next:null};u===null?a=u=f:u=u.next=f,l=l.next}while(l!==null);u===null?a=u=e:u=u.next=e}else a=u=e;l={baseState:n.baseState,firstBaseUpdate:a,lastBaseUpdate:u,shared:n.shared,callbacks:n.callbacks},t.updateQueue=l;return}t=l.lastBaseUpdate,t===null?l.firstBaseUpdate=e:t.next=e,l.lastBaseUpdate=e}var _s=!1;function da(){if(_s){var t=_n;if(t!==null)throw t}}function ma(t,e,l,n){_s=!1;var a=t.updateQueue;vl=!1;var u=a.firstBaseUpdate,f=a.lastBaseUpdate,h=a.shared.pending;if(h!==null){a.shared.pending=null;var p=h,A=p.next;p.next=null,f===null?u=A:f.next=A,f=p;var z=t.alternate;z!==null&&(z=z.updateQueue,h=z.lastBaseUpdate,h!==f&&(h===null?z.firstBaseUpdate=A:h.next=A,z.lastBaseUpdate=p))}if(u!==null){var U=a.baseState;f=0,z=A=p=null,h=u;do{var O=h.lane&-536870913,N=O!==h.lane;if(N?(it&O)===O:(n&O)===O){O!==0&&O===xn&&(_s=!0),z!==null&&(z=z.next={lane:0,tag:h.tag,payload:h.payload,callback:null,next:null});t:{var X=t,$=h;O=e;var bt=l;switch($.tag){case 1:if(X=$.payload,typeof X=="function"){U=X.call(bt,U,O);break t}U=X;break t;case 3:X.flags=X.flags&-65537|128;case 0:if(X=$.payload,O=typeof X=="function"?X.call(bt,U,O):X,O==null)break t;U=R({},U,O);break t;case 2:vl=!0}}O=h.callback,O!==null&&(t.flags|=64,N&&(t.flags|=8192),N=a.callbacks,N===null?a.callbacks=[O]:N.push(O))}else N={lane:O,tag:h.tag,payload:h.payload,callback:h.callback,next:null},z===null?(A=z=N,p=U):z=z.next=N,f|=O;if(h=h.next,h===null){if(h=a.shared.pending,h===null)break;N=h,h=N.next,N.next=null,a.lastBaseUpdate=N,a.shared.pending=null}}while(!0);z===null&&(p=U),a.baseState=p,a.firstBaseUpdate=A,a.lastBaseUpdate=z,u===null&&(a.shared.lanes=0),Tl|=f,t.lanes=f,t.memoizedState=U}}function Yf(t,e){if(typeof t!="function")throw Error(r(191,t));t.call(e)}function Xf(t,e){var l=t.callbacks;if(l!==null)for(t.callbacks=null,t=0;tu?u:8;var f=D.T,h={};D.T=h,Gs(t,!1,e,l);try{var p=a(),A=D.S;if(A!==null&&A(h,p),p!==null&&typeof p=="object"&&typeof p.then=="function"){var z=Xy(p,n);va(t,e,z,pe(t))}else va(t,e,n,pe(t))}catch(U){va(t,e,{then:function(){},status:"rejected",reason:U},pe())}finally{H.p=u,f!==null&&h.types!==null&&(f.types=h.types),D.T=f}}function Jy(){}function Ys(t,e,l,n){if(t.tag!==5)throw Error(r(476));var a=So(t).queue;bo(t,a,e,W,l===null?Jy:function(){return Eo(t),l(n)})}function So(t){var e=t.memoizedState;if(e!==null)return e;e={memoizedState:W,baseState:W,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Fe,lastRenderedState:W},next:null};var l={};return e.next={memoizedState:l,baseState:l,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Fe,lastRenderedState:l},next:null},t.memoizedState=e,t=t.alternate,t!==null&&(t.memoizedState=e),e}function Eo(t){var e=So(t);e.next===null&&(e=t.alternate.memoizedState),va(t,e.next.queue,{},pe())}function Xs(){return Zt(Ba)}function xo(){return Mt().memoizedState}function _o(){return Mt().memoizedState}function ky(t){for(var e=t.return;e!==null;){switch(e.tag){case 24:case 3:var l=pe();t=gl(l);var n=bl(e,t,l);n!==null&&(ae(n,e,l),ha(n,e,l)),e={cache:ps()},t.payload=e;return}e=e.return}}function $y(t,e,l){var n=pe();l={lane:n,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},Di(t)?Ao(e,l):(l=is(t,e,l,n),l!==null&&(ae(l,t,n),Ro(l,e,n)))}function To(t,e,l){var n=pe();va(t,e,l,n)}function va(t,e,l,n){var a={lane:n,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null};if(Di(t))Ao(e,a);else{var u=t.alternate;if(t.lanes===0&&(u===null||u.lanes===0)&&(u=e.lastRenderedReducer,u!==null))try{var f=e.lastRenderedState,h=u(f,l);if(a.hasEagerState=!0,a.eagerState=h,fe(h,f))return oi(t,e,a,0),Et===null&&fi(),!1}catch{}finally{}if(l=is(t,e,a,n),l!==null)return ae(l,t,n),Ro(l,e,n),!0}return!1}function Gs(t,e,l,n){if(n={lane:2,revertLane:Sc(),gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},Di(t)){if(e)throw Error(r(479))}else e=is(t,l,n,2),e!==null&&ae(e,t,2)}function Di(t){var e=t.alternate;return t===P||e!==null&&e===P}function Ao(t,e){On=Ti=!0;var l=t.pending;l===null?e.next=e:(e.next=l.next,l.next=e),t.pending=e}function Ro(t,e,l){if((l&4194048)!==0){var n=e.lanes;n&=t.pendingLanes,l|=n,e.lanes=l,Cr(t,l)}}var ga={readContext:Zt,use:Oi,useCallback:Nt,useContext:Nt,useEffect:Nt,useImperativeHandle:Nt,useLayoutEffect:Nt,useInsertionEffect:Nt,useMemo:Nt,useReducer:Nt,useRef:Nt,useState:Nt,useDebugValue:Nt,useDeferredValue:Nt,useTransition:Nt,useSyncExternalStore:Nt,useId:Nt,useHostTransitionStatus:Nt,useFormState:Nt,useActionState:Nt,useOptimistic:Nt,useMemoCache:Nt,useCacheRefresh:Nt};ga.useEffectEvent=Nt;var Oo={readContext:Zt,use:Oi,useCallback:function(t,e){return Wt().memoizedState=[t,e===void 0?null:e],t},useContext:Zt,useEffect:ro,useImperativeHandle:function(t,e,l){l=l!=null?l.concat([t]):null,Ci(4194308,4,mo.bind(null,e,t),l)},useLayoutEffect:function(t,e){return Ci(4194308,4,t,e)},useInsertionEffect:function(t,e){Ci(4,2,t,e)},useMemo:function(t,e){var l=Wt();e=e===void 0?null:e;var n=t();if(Il){fl(!0);try{t()}finally{fl(!1)}}return l.memoizedState=[n,e],n},useReducer:function(t,e,l){var n=Wt();if(l!==void 0){var a=l(e);if(Il){fl(!0);try{l(e)}finally{fl(!1)}}}else a=e;return n.memoizedState=n.baseState=a,t={pending:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:a},n.queue=t,t=t.dispatch=$y.bind(null,P,t),[n.memoizedState,t]},useRef:function(t){var e=Wt();return t={current:t},e.memoizedState=t},useState:function(t){t=ws(t);var e=t.queue,l=To.bind(null,P,e);return e.dispatch=l,[t.memoizedState,l]},useDebugValue:qs,useDeferredValue:function(t,e){var l=Wt();return Ls(l,t,e)},useTransition:function(){var t=ws(!1);return t=bo.bind(null,P,t.queue,!0,!1),Wt().memoizedState=t,[!1,t]},useSyncExternalStore:function(t,e,l){var n=P,a=Wt();if(st){if(l===void 0)throw Error(r(407));l=l()}else{if(l=e(),Et===null)throw Error(r(349));(it&127)!==0||Jf(n,e,l)}a.memoizedState=l;var u={value:l,getSnapshot:e};return a.queue=u,ro($f.bind(null,n,u,t),[t]),n.flags|=2048,Cn(9,{destroy:void 0},kf.bind(null,n,u,l,e),null),l},useId:function(){var t=Wt(),e=Et.identifierPrefix;if(st){var l=je,n=we;l=(n&~(1<<32-re(n)-1)).toString(32)+l,e="_"+e+"R_"+l,l=Ai++,0<\/script>",u=u.removeChild(u.firstChild);break;case"select":u=typeof n.is=="string"?f.createElement("select",{is:n.is}):f.createElement("select"),n.multiple?u.multiple=!0:n.size&&(u.size=n.size);break;default:u=typeof n.is=="string"?f.createElement(a,{is:n.is}):f.createElement(a)}}u[Qt]=e,u[It]=n;t:for(f=e.child;f!==null;){if(f.tag===5||f.tag===6)u.appendChild(f.stateNode);else if(f.tag!==4&&f.tag!==27&&f.child!==null){f.child.return=f,f=f.child;continue}if(f===e)break t;for(;f.sibling===null;){if(f.return===null||f.return===e)break t;f=f.return}f.sibling.return=f.return,f=f.sibling}e.stateNode=u;t:switch(Jt(u,a,n),a){case"button":case"input":case"select":case"textarea":n=!!n.autoFocus;break t;case"img":n=!0;break t;default:n=!1}n&&Pe(e)}}return _t(e),lc(e,e.type,t===null?null:t.memoizedProps,e.pendingProps,l),null;case 6:if(t&&e.stateNode!=null)t.memoizedProps!==n&&Pe(e);else{if(typeof n!="string"&&e.stateNode===null)throw Error(r(166));if(t=lt.current,Sn(e)){if(t=e.stateNode,l=e.memoizedProps,n=null,a=Vt,a!==null)switch(a.tag){case 27:case 5:n=a.memoizedProps}t[Qt]=e,t=!!(t.nodeValue===l||n!==null&&n.suppressHydrationWarning===!0||Kh(t.nodeValue,l)),t||yl(e,!0)}else t=Fi(t).createTextNode(n),t[Qt]=e,e.stateNode=t}return _t(e),null;case 31:if(l=e.memoizedState,t===null||t.memoizedState!==null){if(n=Sn(e),l!==null){if(t===null){if(!n)throw Error(r(318));if(t=e.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(r(557));t[Qt]=e}else Zl(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;_t(e),t=!1}else l=hs(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=l),t=!0;if(!t)return e.flags&256?(de(e),e):(de(e),null);if((e.flags&128)!==0)throw Error(r(558))}return _t(e),null;case 13:if(n=e.memoizedState,t===null||t.memoizedState!==null&&t.memoizedState.dehydrated!==null){if(a=Sn(e),n!==null&&n.dehydrated!==null){if(t===null){if(!a)throw Error(r(318));if(a=e.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(r(317));a[Qt]=e}else Zl(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;_t(e),a=!1}else a=hs(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=a),a=!0;if(!a)return e.flags&256?(de(e),e):(de(e),null)}return de(e),(e.flags&128)!==0?(e.lanes=l,e):(l=n!==null,t=t!==null&&t.memoizedState!==null,l&&(n=e.child,a=null,n.alternate!==null&&n.alternate.memoizedState!==null&&n.alternate.memoizedState.cachePool!==null&&(a=n.alternate.memoizedState.cachePool.pool),u=null,n.memoizedState!==null&&n.memoizedState.cachePool!==null&&(u=n.memoizedState.cachePool.pool),u!==a&&(n.flags|=2048)),l!==t&&l&&(e.child.flags|=8192),ji(e,e.updateQueue),_t(e),null);case 4:return zt(),t===null&&Tc(e.stateNode.containerInfo),_t(e),null;case 10:return $e(e.type),_t(e),null;case 19:if(B(Dt),n=e.memoizedState,n===null)return _t(e),null;if(a=(e.flags&128)!==0,u=n.rendering,u===null)if(a)Sa(n,!1);else{if(Ct!==0||t!==null&&(t.flags&128)!==0)for(t=e.child;t!==null;){if(u=_i(t),u!==null){for(e.flags|=128,Sa(n,!1),t=u.updateQueue,e.updateQueue=t,ji(e,t),e.subtreeFlags=0,t=l,l=e.child;l!==null;)_f(l,t),l=l.sibling;return q(Dt,Dt.current&1|2),st&&Je(e,n.treeForkCount),e.child}t=t.sibling}n.tail!==null&&se()>Xi&&(e.flags|=128,a=!0,Sa(n,!1),e.lanes=4194304)}else{if(!a)if(t=_i(u),t!==null){if(e.flags|=128,a=!0,t=t.updateQueue,e.updateQueue=t,ji(e,t),Sa(n,!0),n.tail===null&&n.tailMode==="hidden"&&!u.alternate&&!st)return _t(e),null}else 2*se()-n.renderingStartTime>Xi&&l!==536870912&&(e.flags|=128,a=!0,Sa(n,!1),e.lanes=4194304);n.isBackwards?(u.sibling=e.child,e.child=u):(t=n.last,t!==null?t.sibling=u:e.child=u,n.last=u)}return n.tail!==null?(t=n.tail,n.rendering=t,n.tail=t.sibling,n.renderingStartTime=se(),t.sibling=null,l=Dt.current,q(Dt,a?l&1|2:l&1),st&&Je(e,n.treeForkCount),t):(_t(e),null);case 22:case 23:return de(e),As(),n=e.memoizedState!==null,t!==null?t.memoizedState!==null!==n&&(e.flags|=8192):n&&(e.flags|=8192),n?(l&536870912)!==0&&(e.flags&128)===0&&(_t(e),e.subtreeFlags&6&&(e.flags|=8192)):_t(e),l=e.updateQueue,l!==null&&ji(e,l.retryQueue),l=null,t!==null&&t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(l=t.memoizedState.cachePool.pool),n=null,e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),n!==l&&(e.flags|=2048),t!==null&&B(kl),null;case 24:return l=null,t!==null&&(l=t.memoizedState.cache),e.memoizedState.cache!==l&&(e.flags|=2048),$e(Ut),_t(e),null;case 25:return null;case 30:return null}throw Error(r(156,e.tag))}function tp(t,e){switch(fs(e),e.tag){case 1:return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 3:return $e(Ut),zt(),t=e.flags,(t&65536)!==0&&(t&128)===0?(e.flags=t&-65537|128,e):null;case 26:case 27:case 5:return Ja(e),null;case 31:if(e.memoizedState!==null){if(de(e),e.alternate===null)throw Error(r(340));Zl()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 13:if(de(e),t=e.memoizedState,t!==null&&t.dehydrated!==null){if(e.alternate===null)throw Error(r(340));Zl()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 19:return B(Dt),null;case 4:return zt(),null;case 10:return $e(e.type),null;case 22:case 23:return de(e),As(),t!==null&&B(kl),t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 24:return $e(Ut),null;case 25:return null;default:return null}}function Fo(t,e){switch(fs(e),e.tag){case 3:$e(Ut),zt();break;case 26:case 27:case 5:Ja(e);break;case 4:zt();break;case 31:e.memoizedState!==null&&de(e);break;case 13:de(e);break;case 19:B(Dt);break;case 10:$e(e.type);break;case 22:case 23:de(e),As(),t!==null&&B(kl);break;case 24:$e(Ut)}}function Ea(t,e){try{var l=e.updateQueue,n=l!==null?l.lastEffect:null;if(n!==null){var a=n.next;l=a;do{if((l.tag&t)===t){n=void 0;var u=l.create,f=l.inst;n=u(),f.destroy=n}l=l.next}while(l!==a)}}catch(h){yt(e,e.return,h)}}function xl(t,e,l){try{var n=e.updateQueue,a=n!==null?n.lastEffect:null;if(a!==null){var u=a.next;n=u;do{if((n.tag&t)===t){var f=n.inst,h=f.destroy;if(h!==void 0){f.destroy=void 0,a=e;var p=l,A=h;try{A()}catch(z){yt(a,p,z)}}}n=n.next}while(n!==u)}}catch(z){yt(e,e.return,z)}}function Io(t){var e=t.updateQueue;if(e!==null){var l=t.stateNode;try{Xf(e,l)}catch(n){yt(t,t.return,n)}}}function Po(t,e,l){l.props=Pl(t.type,t.memoizedProps),l.state=t.memoizedState;try{l.componentWillUnmount()}catch(n){yt(t,e,n)}}function xa(t,e){try{var l=t.ref;if(l!==null){switch(t.tag){case 26:case 27:case 5:var n=t.stateNode;break;case 30:n=t.stateNode;break;default:n=t.stateNode}typeof l=="function"?t.refCleanup=l(n):l.current=n}}catch(a){yt(t,e,a)}}function He(t,e){var l=t.ref,n=t.refCleanup;if(l!==null)if(typeof n=="function")try{n()}catch(a){yt(t,e,a)}finally{t.refCleanup=null,t=t.alternate,t!=null&&(t.refCleanup=null)}else if(typeof l=="function")try{l(null)}catch(a){yt(t,e,a)}else l.current=null}function th(t){var e=t.type,l=t.memoizedProps,n=t.stateNode;try{t:switch(e){case"button":case"input":case"select":case"textarea":l.autoFocus&&n.focus();break t;case"img":l.src?n.src=l.src:l.srcSet&&(n.srcset=l.srcSet)}}catch(a){yt(t,t.return,a)}}function nc(t,e,l){try{var n=t.stateNode;xp(n,t.type,l,e),n[It]=e}catch(a){yt(t,t.return,a)}}function eh(t){return t.tag===5||t.tag===3||t.tag===26||t.tag===27&&Cl(t.type)||t.tag===4}function ac(t){t:for(;;){for(;t.sibling===null;){if(t.return===null||eh(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.tag===27&&Cl(t.type)||t.flags&2||t.child===null||t.tag===4)continue t;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function ic(t,e,l){var n=t.tag;if(n===5||n===6)t=t.stateNode,e?(l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l).insertBefore(t,e):(e=l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l,e.appendChild(t),l=l._reactRootContainer,l!=null||e.onclick!==null||(e.onclick=Ve));else if(n!==4&&(n===27&&Cl(t.type)&&(l=t.stateNode,e=null),t=t.child,t!==null))for(ic(t,e,l),t=t.sibling;t!==null;)ic(t,e,l),t=t.sibling}function Hi(t,e,l){var n=t.tag;if(n===5||n===6)t=t.stateNode,e?l.insertBefore(t,e):l.appendChild(t);else if(n!==4&&(n===27&&Cl(t.type)&&(l=t.stateNode),t=t.child,t!==null))for(Hi(t,e,l),t=t.sibling;t!==null;)Hi(t,e,l),t=t.sibling}function lh(t){var e=t.stateNode,l=t.memoizedProps;try{for(var n=t.type,a=e.attributes;a.length;)e.removeAttributeNode(a[0]);Jt(e,n,l),e[Qt]=t,e[It]=l}catch(u){yt(t,t.return,u)}}var tl=!1,jt=!1,uc=!1,nh=typeof WeakSet=="function"?WeakSet:Set,Gt=null;function ep(t,e){if(t=t.containerInfo,Oc=au,t=mf(t),Pu(t)){if("selectionStart"in t)var l={start:t.selectionStart,end:t.selectionEnd};else t:{l=(l=t.ownerDocument)&&l.defaultView||window;var n=l.getSelection&&l.getSelection();if(n&&n.rangeCount!==0){l=n.anchorNode;var a=n.anchorOffset,u=n.focusNode;n=n.focusOffset;try{l.nodeType,u.nodeType}catch{l=null;break t}var f=0,h=-1,p=-1,A=0,z=0,U=t,O=null;e:for(;;){for(var N;U!==l||a!==0&&U.nodeType!==3||(h=f+a),U!==u||n!==0&&U.nodeType!==3||(p=f+n),U.nodeType===3&&(f+=U.nodeValue.length),(N=U.firstChild)!==null;)O=U,U=N;for(;;){if(U===t)break e;if(O===l&&++A===a&&(h=f),O===u&&++z===n&&(p=f),(N=U.nextSibling)!==null)break;U=O,O=U.parentNode}U=N}l=h===-1||p===-1?null:{start:h,end:p}}else l=null}l=l||{start:0,end:0}}else l=null;for(Nc={focusedElem:t,selectionRange:l},au=!1,Gt=e;Gt!==null;)if(e=Gt,t=e.child,(e.subtreeFlags&1028)!==0&&t!==null)t.return=e,Gt=t;else for(;Gt!==null;){switch(e=Gt,u=e.alternate,t=e.flags,e.tag){case 0:if((t&4)!==0&&(t=e.updateQueue,t=t!==null?t.events:null,t!==null))for(l=0;l title"))),Jt(u,n,l),u[Qt]=t,Xt(u),n=u;break t;case"link":var f=rd("link","href",a).get(n+(l.href||""));if(f){for(var h=0;hbt&&(f=bt,bt=$,$=f);var E=hf(h,$),g=hf(h,bt);if(E&&g&&(N.rangeCount!==1||N.anchorNode!==E.node||N.anchorOffset!==E.offset||N.focusNode!==g.node||N.focusOffset!==g.offset)){var _=U.createRange();_.setStart(E.node,E.offset),N.removeAllRanges(),$>bt?(N.addRange(_),N.extend(g.node,g.offset)):(_.setEnd(g.node,g.offset),N.addRange(_))}}}}for(U=[],N=h;N=N.parentNode;)N.nodeType===1&&U.push({element:N,left:N.scrollLeft,top:N.scrollTop});for(typeof h.focus=="function"&&h.focus(),h=0;hl?32:l,D.T=null,l=dc,dc=null;var u=Rl,f=il;if(Yt=0,Bn=Rl=null,il=0,(ot&6)!==0)throw Error(r(331));var h=ot;if(ot|=4,mh(u.current),oh(u,u.current,f,l),ot=h,Na(0,!1),ce&&typeof ce.onPostCommitFiberRoot=="function")try{ce.onPostCommitFiberRoot(Kn,u)}catch{}return!0}finally{H.p=a,D.T=n,Mh(t,e)}}function Bh(t,e,l){e=Se(l,e),e=Ks(t.stateNode,e,2),t=bl(t,e,2),t!==null&&(kn(t,2),qe(t))}function yt(t,e,l){if(t.tag===3)Bh(t,t,l);else for(;e!==null;){if(e.tag===3){Bh(e,t,l);break}else if(e.tag===1){var n=e.stateNode;if(typeof e.type.getDerivedStateFromError=="function"||typeof n.componentDidCatch=="function"&&(Al===null||!Al.has(n))){t=Se(l,t),l=wo(2),n=bl(e,l,2),n!==null&&(jo(l,n,e,t),kn(n,2),qe(n));break}}e=e.return}}function vc(t,e,l){var n=t.pingCache;if(n===null){n=t.pingCache=new ap;var a=new Set;n.set(e,a)}else a=n.get(e),a===void 0&&(a=new Set,n.set(e,a));a.has(l)||(rc=!0,a.add(l),t=rp.bind(null,t,e,l),e.then(t,t))}function rp(t,e,l){var n=t.pingCache;n!==null&&n.delete(e),t.pingedLanes|=t.suspendedLanes&l,t.warmLanes&=~l,Et===t&&(it&l)===l&&(Ct===4||Ct===3&&(it&62914560)===it&&300>se()-Yi?(ot&2)===0&&wn(t,0):fc|=l,Un===it&&(Un=0)),qe(t)}function wh(t,e){e===0&&(e=Or()),t=Ql(t,e),t!==null&&(kn(t,e),qe(t))}function fp(t){var e=t.memoizedState,l=0;e!==null&&(l=e.retryLane),wh(t,l)}function op(t,e){var l=0;switch(t.tag){case 31:case 13:var n=t.stateNode,a=t.memoizedState;a!==null&&(l=a.retryLane);break;case 19:n=t.stateNode;break;case 22:n=t.stateNode._retryCache;break;default:throw Error(r(314))}n!==null&&n.delete(e),wh(t,l)}function hp(t,e){return zu(t,e)}var Ji=null,Hn=null,gc=!1,ki=!1,bc=!1,Nl=0;function qe(t){t!==Hn&&t.next===null&&(Hn===null?Ji=Hn=t:Hn=Hn.next=t),ki=!0,gc||(gc=!0,mp())}function Na(t,e){if(!bc&&ki){bc=!0;do for(var l=!1,n=Ji;n!==null;){if(t!==0){var a=n.pendingLanes;if(a===0)var u=0;else{var f=n.suspendedLanes,h=n.pingedLanes;u=(1<<31-re(42|t)+1)-1,u&=a&~(f&~h),u=u&201326741?u&201326741|1:u?u|2:0}u!==0&&(l=!0,Lh(n,u))}else u=it,u=Ia(n,n===Et?u:0,n.cancelPendingCommit!==null||n.timeoutHandle!==-1),(u&3)===0||Jn(n,u)||(l=!0,Lh(n,u));n=n.next}while(l);bc=!1}}function dp(){jh()}function jh(){ki=gc=!1;var t=0;Nl!==0&&Tp()&&(t=Nl);for(var e=se(),l=null,n=Ji;n!==null;){var a=n.next,u=Hh(n,e);u===0?(n.next=null,l===null?Ji=a:l.next=a,a===null&&(Hn=l)):(l=n,(t!==0||(u&3)!==0)&&(ki=!0)),n=a}Yt!==0&&Yt!==5||Na(t),Nl!==0&&(Nl=0)}function Hh(t,e){for(var l=t.suspendedLanes,n=t.pingedLanes,a=t.expirationTimes,u=t.pendingLanes&-62914561;0h)break;var z=p.transferSize,U=p.initiatorType;z&&Jh(U)&&(p=p.responseEnd,f+=z*(p"u"?null:document;function id(t,e,l){var n=qn;if(n&&typeof e=="string"&&e){var a=ge(e);a='link[rel="'+t+'"][href="'+a+'"]',typeof l=="string"&&(a+='[crossorigin="'+l+'"]'),ad.has(a)||(ad.add(a),t={rel:t,crossOrigin:l,href:e},n.querySelector(a)===null&&(e=n.createElement("link"),Jt(e,"link",t),Xt(e),n.head.appendChild(e)))}}function Up(t){ul.D(t),id("dns-prefetch",t,null)}function Bp(t,e){ul.C(t,e),id("preconnect",t,e)}function wp(t,e,l){ul.L(t,e,l);var n=qn;if(n&&t&&e){var a='link[rel="preload"][as="'+ge(e)+'"]';e==="image"&&l&&l.imageSrcSet?(a+='[imagesrcset="'+ge(l.imageSrcSet)+'"]',typeof l.imageSizes=="string"&&(a+='[imagesizes="'+ge(l.imageSizes)+'"]')):a+='[href="'+ge(t)+'"]';var u=a;switch(e){case"style":u=Ln(t);break;case"script":u=Yn(t)}Re.has(u)||(t=R({rel:"preload",href:e==="image"&&l&&l.imageSrcSet?void 0:t,as:e},l),Re.set(u,t),n.querySelector(a)!==null||e==="style"&&n.querySelector(Ma(u))||e==="script"&&n.querySelector(Ua(u))||(e=n.createElement("link"),Jt(e,"link",t),Xt(e),n.head.appendChild(e)))}}function jp(t,e){ul.m(t,e);var l=qn;if(l&&t){var n=e&&typeof e.as=="string"?e.as:"script",a='link[rel="modulepreload"][as="'+ge(n)+'"][href="'+ge(t)+'"]',u=a;switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":u=Yn(t)}if(!Re.has(u)&&(t=R({rel:"modulepreload",href:t},e),Re.set(u,t),l.querySelector(a)===null)){switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(l.querySelector(Ua(u)))return}n=l.createElement("link"),Jt(n,"link",t),Xt(n),l.head.appendChild(n)}}}function Hp(t,e,l){ul.S(t,e,l);var n=qn;if(n&&t){var a=sn(n).hoistableStyles,u=Ln(t);e=e||"default";var f=a.get(u);if(!f){var h={loading:0,preload:null};if(f=n.querySelector(Ma(u)))h.loading=5;else{t=R({rel:"stylesheet",href:t,"data-precedence":e},l),(l=Re.get(u))&&wc(t,l);var p=f=n.createElement("link");Xt(p),Jt(p,"link",t),p._p=new Promise(function(A,z){p.onload=A,p.onerror=z}),p.addEventListener("load",function(){h.loading|=1}),p.addEventListener("error",function(){h.loading|=2}),h.loading|=4,Pi(f,e,n)}f={type:"stylesheet",instance:f,count:1,state:h},a.set(u,f)}}}function qp(t,e){ul.X(t,e);var l=qn;if(l&&t){var n=sn(l).hoistableScripts,a=Yn(t),u=n.get(a);u||(u=l.querySelector(Ua(a)),u||(t=R({src:t,async:!0},e),(e=Re.get(a))&&jc(t,e),u=l.createElement("script"),Xt(u),Jt(u,"link",t),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(a,u))}}function Lp(t,e){ul.M(t,e);var l=qn;if(l&&t){var n=sn(l).hoistableScripts,a=Yn(t),u=n.get(a);u||(u=l.querySelector(Ua(a)),u||(t=R({src:t,async:!0,type:"module"},e),(e=Re.get(a))&&jc(t,e),u=l.createElement("script"),Xt(u),Jt(u,"link",t),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(a,u))}}function ud(t,e,l,n){var a=(a=lt.current)?Ii(a):null;if(!a)throw Error(r(446));switch(t){case"meta":case"title":return null;case"style":return typeof l.precedence=="string"&&typeof l.href=="string"?(e=Ln(l.href),l=sn(a).hoistableStyles,n=l.get(e),n||(n={type:"style",instance:null,count:0,state:null},l.set(e,n)),n):{type:"void",instance:null,count:0,state:null};case"link":if(l.rel==="stylesheet"&&typeof l.href=="string"&&typeof l.precedence=="string"){t=Ln(l.href);var u=sn(a).hoistableStyles,f=u.get(t);if(f||(a=a.ownerDocument||a,f={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},u.set(t,f),(u=a.querySelector(Ma(t)))&&!u._p&&(f.instance=u,f.state.loading=5),Re.has(t)||(l={rel:"preload",as:"style",href:l.href,crossOrigin:l.crossOrigin,integrity:l.integrity,media:l.media,hrefLang:l.hrefLang,referrerPolicy:l.referrerPolicy},Re.set(t,l),u||Yp(a,t,l,f.state))),e&&n===null)throw Error(r(528,""));return f}if(e&&n!==null)throw Error(r(529,""));return null;case"script":return e=l.async,l=l.src,typeof l=="string"&&e&&typeof e!="function"&&typeof e!="symbol"?(e=Yn(l),l=sn(a).hoistableScripts,n=l.get(e),n||(n={type:"script",instance:null,count:0,state:null},l.set(e,n)),n):{type:"void",instance:null,count:0,state:null};default:throw Error(r(444,t))}}function Ln(t){return'href="'+ge(t)+'"'}function Ma(t){return'link[rel="stylesheet"]['+t+"]"}function sd(t){return R({},t,{"data-precedence":t.precedence,precedence:null})}function Yp(t,e,l,n){t.querySelector('link[rel="preload"][as="style"]['+e+"]")?n.loading=1:(e=t.createElement("link"),n.preload=e,e.addEventListener("load",function(){return n.loading|=1}),e.addEventListener("error",function(){return n.loading|=2}),Jt(e,"link",l),Xt(e),t.head.appendChild(e))}function Yn(t){return'[src="'+ge(t)+'"]'}function Ua(t){return"script[async]"+t}function cd(t,e,l){if(e.count++,e.instance===null)switch(e.type){case"style":var n=t.querySelector('style[data-href~="'+ge(l.href)+'"]');if(n)return e.instance=n,Xt(n),n;var a=R({},l,{"data-href":l.href,"data-precedence":l.precedence,href:null,precedence:null});return n=(t.ownerDocument||t).createElement("style"),Xt(n),Jt(n,"style",a),Pi(n,l.precedence,t),e.instance=n;case"stylesheet":a=Ln(l.href);var u=t.querySelector(Ma(a));if(u)return e.state.loading|=4,e.instance=u,Xt(u),u;n=sd(l),(a=Re.get(a))&&wc(n,a),u=(t.ownerDocument||t).createElement("link"),Xt(u);var f=u;return f._p=new Promise(function(h,p){f.onload=h,f.onerror=p}),Jt(u,"link",n),e.state.loading|=4,Pi(u,l.precedence,t),e.instance=u;case"script":return u=Yn(l.src),(a=t.querySelector(Ua(u)))?(e.instance=a,Xt(a),a):(n=l,(a=Re.get(u))&&(n=R({},l),jc(n,a)),t=t.ownerDocument||t,a=t.createElement("script"),Xt(a),Jt(a,"link",n),t.head.appendChild(a),e.instance=a);case"void":return null;default:throw Error(r(443,e.type))}else e.type==="stylesheet"&&(e.state.loading&4)===0&&(n=e.instance,e.state.loading|=4,Pi(n,l.precedence,t));return e.instance}function Pi(t,e,l){for(var n=l.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=n.length?n[n.length-1]:null,u=a,f=0;f title"):null)}function Xp(t,e,l){if(l===1||e.itemProp!=null)return!1;switch(t){case"meta":case"title":return!0;case"style":if(typeof e.precedence!="string"||typeof e.href!="string"||e.href==="")break;return!0;case"link":if(typeof e.rel!="string"||typeof e.href!="string"||e.href===""||e.onLoad||e.onError)break;switch(e.rel){case"stylesheet":return t=e.disabled,typeof e.precedence=="string"&&t==null;default:return!0}case"script":if(e.async&&typeof e.async!="function"&&typeof e.async!="symbol"&&!e.onLoad&&!e.onError&&e.src&&typeof e.src=="string")return!0}return!1}function od(t){return!(t.type==="stylesheet"&&(t.state.loading&3)===0)}function Gp(t,e,l,n){if(l.type==="stylesheet"&&(typeof n.media!="string"||matchMedia(n.media).matches!==!1)&&(l.state.loading&4)===0){if(l.instance===null){var a=Ln(n.href),u=e.querySelector(Ma(a));if(u){e=u._p,e!==null&&typeof e=="object"&&typeof e.then=="function"&&(t.count++,t=eu.bind(t),e.then(t,t)),l.state.loading|=4,l.instance=u,Xt(u);return}u=e.ownerDocument||e,n=sd(n),(a=Re.get(a))&&wc(n,a),u=u.createElement("link"),Xt(u);var f=u;f._p=new Promise(function(h,p){f.onload=h,f.onerror=p}),Jt(u,"link",n),l.instance=u}t.stylesheets===null&&(t.stylesheets=new Map),t.stylesheets.set(l,e),(e=l.state.preload)&&(l.state.loading&3)===0&&(t.count++,l=eu.bind(t),e.addEventListener("load",l),e.addEventListener("error",l))}}var Hc=0;function Qp(t,e){return t.stylesheets&&t.count===0&&nu(t,t.stylesheets),0Hc?50:800)+e);return t.unsuspend=l,function(){t.unsuspend=null,clearTimeout(n),clearTimeout(a)}}:null}function eu(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)nu(this,this.stylesheets);else if(this.unsuspend){var t=this.unsuspend;this.unsuspend=null,t()}}}var lu=null;function nu(t,e){t.stylesheets=null,t.unsuspend!==null&&(t.count++,lu=new Map,e.forEach(Vp,t),lu=null,eu.call(t))}function Vp(t,e){if(!(e.state.loading&4)){var l=lu.get(t);if(l)var n=l.get(null);else{l=new Map,lu.set(t,l);for(var a=t.querySelectorAll("link[data-precedence],style[data-precedence]"),u=0;u"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(s)}catch(i){console.error(i)}}return s(),Kc.exports=u0(),Kc.exports}var c0=s0();var wd="popstate";function r0(s={}){function i(r,o){let{pathname:d,search:m,hash:b}=r.location;return er("",{pathname:d,search:m,hash:b},o.state&&o.state.usr||null,o.state&&o.state.key||"default")}function c(r,o){return typeof o=="string"?o:Qa(o)}return o0(i,c,null,s)}function Rt(s,i){if(s===!1||s===null||typeof s>"u")throw new Error(i)}function Ue(s,i){if(!s){typeof console<"u"&&console.warn(i);try{throw new Error(i)}catch{}}}function f0(){return Math.random().toString(36).substring(2,10)}function jd(s,i){return{usr:s.state,key:s.key,idx:i}}function er(s,i,c=null,r){return{pathname:typeof s=="string"?s:s.pathname,search:"",hash:"",...typeof i=="string"?Gn(i):i,state:c,key:i&&i.key||r||f0()}}function Qa({pathname:s="/",search:i="",hash:c=""}){return i&&i!=="?"&&(s+=i.charAt(0)==="?"?i:"?"+i),c&&c!=="#"&&(s+=c.charAt(0)==="#"?c:"#"+c),s}function Gn(s){let i={};if(s){let c=s.indexOf("#");c>=0&&(i.hash=s.substring(c),s=s.substring(0,c));let r=s.indexOf("?");r>=0&&(i.search=s.substring(r),s=s.substring(0,r)),s&&(i.pathname=s)}return i}function o0(s,i,c,r={}){let{window:o=document.defaultView,v5Compat:d=!1}=r,m=o.history,b="POP",y=null,v=C();v==null&&(v=0,m.replaceState({...m.state,idx:v},""));function C(){return(m.state||{idx:null}).idx}function R(){b="POP";let K=C(),Y=K==null?null:K-v;v=K,y&&y({action:b,location:Q.location,delta:Y})}function w(K,Y){b="PUSH";let G=er(Q.location,K,Y);v=C()+1;let k=jd(G,v),dt=Q.createHref(G);try{m.pushState(k,"",dt)}catch(Tt){if(Tt instanceof DOMException&&Tt.name==="DataCloneError")throw Tt;o.location.assign(dt)}d&&y&&y({action:b,location:Q.location,delta:1})}function j(K,Y){b="REPLACE";let G=er(Q.location,K,Y);v=C();let k=jd(G,v),dt=Q.createHref(G);m.replaceState(k,"",dt),d&&y&&y({action:b,location:Q.location,delta:0})}function L(K){return h0(K)}let Q={get action(){return b},get location(){return s(o,m)},listen(K){if(y)throw new Error("A history only accepts one active listener");return o.addEventListener(wd,R),y=K,()=>{o.removeEventListener(wd,R),y=null}},createHref(K){return i(o,K)},createURL:L,encodeLocation(K){let Y=L(K);return{pathname:Y.pathname,search:Y.search,hash:Y.hash}},push:w,replace:j,go(K){return m.go(K)}};return Q}function h0(s,i=!1){let c="http://localhost";typeof window<"u"&&(c=window.location.origin!=="null"?window.location.origin:window.location.href),Rt(c,"No window.location.(origin|href) available to create URL");let r=typeof s=="string"?s:Qa(s);return r=r.replace(/ $/,"%20"),!i&&r.startsWith("//")&&(r=c+r),new URL(r,c)}function Jd(s,i,c="/"){return d0(s,i,c,!1)}function d0(s,i,c,r){let o=typeof i=="string"?Gn(i):i,d=cl(o.pathname||"/",c);if(d==null)return null;let m=kd(s);m0(m);let b=null;for(let y=0;b==null&&y{let C={relativePath:v===void 0?m.path||"":v,caseSensitive:m.caseSensitive===!0,childrenIndex:b,route:m};if(C.relativePath.startsWith("/")){if(!C.relativePath.startsWith(r)&&y)return;Rt(C.relativePath.startsWith(r),`Absolute route path "${C.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),C.relativePath=C.relativePath.slice(r.length)}let R=sl([r,C.relativePath]),w=c.concat(C);m.children&&m.children.length>0&&(Rt(m.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${R}".`),kd(m.children,i,w,R,y)),!(m.path==null&&!m.index)&&i.push({path:R,score:E0(R,m.index),routesMeta:w})};return s.forEach((m,b)=>{if(m.path===""||!m.path?.includes("?"))d(m,b);else for(let y of $d(m.path))d(m,b,!0,y)}),i}function $d(s){let i=s.split("/");if(i.length===0)return[];let[c,...r]=i,o=c.endsWith("?"),d=c.replace(/\?$/,"");if(r.length===0)return o?[d,""]:[d];let m=$d(r.join("/")),b=[];return b.push(...m.map(y=>y===""?d:[d,y].join("/"))),o&&b.push(...m),b.map(y=>s.startsWith("/")&&y===""?"/":y)}function m0(s){s.sort((i,c)=>i.score!==c.score?c.score-i.score:x0(i.routesMeta.map(r=>r.childrenIndex),c.routesMeta.map(r=>r.childrenIndex)))}var y0=/^:[\w-]+$/,p0=3,v0=2,g0=1,b0=10,S0=-2,Hd=s=>s==="*";function E0(s,i){let c=s.split("/"),r=c.length;return c.some(Hd)&&(r+=S0),i&&(r+=v0),c.filter(o=>!Hd(o)).reduce((o,d)=>o+(y0.test(d)?p0:d===""?g0:b0),r)}function x0(s,i){return s.length===i.length&&s.slice(0,-1).every((r,o)=>r===i[o])?s[s.length-1]-i[i.length-1]:0}function _0(s,i,c=!1){let{routesMeta:r}=s,o={},d="/",m=[];for(let b=0;b{if(C==="*"){let L=b[w]||"";m=d.slice(0,d.length-L.length).replace(/(.)\/+$/,"$1")}const j=b[w];return R&&!j?v[C]=void 0:v[C]=(j||"").replace(/%2F/g,"/"),v},{}),pathname:d,pathnameBase:m,pattern:s}}function T0(s,i=!1,c=!0){Ue(s==="*"||!s.endsWith("*")||s.endsWith("/*"),`Route path "${s}" will be treated as if it were "${s.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${s.replace(/\*$/,"/*")}".`);let r=[],o="^"+s.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(m,b,y)=>(r.push({paramName:b,isOptional:y!=null}),y?"/?([^\\/]+)?":"/([^\\/]+)")).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return s.endsWith("*")?(r.push({paramName:"*"}),o+=s==="*"||s==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):c?o+="\\/*$":s!==""&&s!=="/"&&(o+="(?:(?=\\/|$))"),[new RegExp(o,i?void 0:"i"),r]}function A0(s){try{return s.split("/").map(i=>decodeURIComponent(i).replace(/\//g,"%2F")).join("/")}catch(i){return Ue(!1,`The URL path "${s}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${i}).`),s}}function cl(s,i){if(i==="/")return s;if(!s.toLowerCase().startsWith(i.toLowerCase()))return null;let c=i.endsWith("/")?i.length-1:i.length,r=s.charAt(c);return r&&r!=="/"?null:s.slice(c)||"/"}var R0=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,O0=s=>R0.test(s);function N0(s,i="/"){let{pathname:c,search:r="",hash:o=""}=typeof s=="string"?Gn(s):s,d;if(c)if(O0(c))d=c;else{if(c.includes("//")){let m=c;c=c.replace(/\/\/+/g,"/"),Ue(!1,`Pathnames cannot have embedded double slashes - normalizing ${m} -> ${c}`)}c.startsWith("/")?d=qd(c.substring(1),"/"):d=qd(c,i)}else d=i;return{pathname:d,search:D0(r),hash:M0(o)}}function qd(s,i){let c=i.replace(/\/+$/,"").split("/");return s.split("/").forEach(o=>{o===".."?c.length>1&&c.pop():o!=="."&&c.push(o)}),c.length>1?c.join("/"):"/"}function Wc(s,i,c,r){return`Cannot include a '${s}' character in a manually specified \`to.${i}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${c}\` field. Alternatively you may provide the full path as a string in and the router will parse it for you.`}function C0(s){return s.filter((i,c)=>c===0||i.route.path&&i.route.path.length>0)}function Wd(s){let i=C0(s);return i.map((c,r)=>r===i.length-1?c.pathname:c.pathnameBase)}function Fd(s,i,c,r=!1){let o;typeof s=="string"?o=Gn(s):(o={...s},Rt(!o.pathname||!o.pathname.includes("?"),Wc("?","pathname","search",o)),Rt(!o.pathname||!o.pathname.includes("#"),Wc("#","pathname","hash",o)),Rt(!o.search||!o.search.includes("#"),Wc("#","search","hash",o)));let d=s===""||o.pathname==="",m=d?"/":o.pathname,b;if(m==null)b=c;else{let R=i.length-1;if(!r&&m.startsWith("..")){let w=m.split("/");for(;w[0]==="..";)w.shift(),R-=1;o.pathname=w.join("/")}b=R>=0?i[R]:"/"}let y=N0(o,b),v=m&&m!=="/"&&m.endsWith("/"),C=(d||m===".")&&c.endsWith("/");return!y.pathname.endsWith("/")&&(v||C)&&(y.pathname+="/"),y}var sl=s=>s.join("/").replace(/\/\/+/g,"/"),z0=s=>s.replace(/\/+$/,"").replace(/^\/*/,"/"),D0=s=>!s||s==="?"?"":s.startsWith("?")?s:"?"+s,M0=s=>!s||s==="#"?"":s.startsWith("#")?s:"#"+s;function U0(s){return s!=null&&typeof s.status=="number"&&typeof s.statusText=="string"&&typeof s.internal=="boolean"&&"data"in s}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var Id=["POST","PUT","PATCH","DELETE"];new Set(Id);var B0=["GET",...Id];new Set(B0);var Qn=x.createContext(null);Qn.displayName="DataRouter";var Eu=x.createContext(null);Eu.displayName="DataRouterState";x.createContext(!1);var Pd=x.createContext({isTransitioning:!1});Pd.displayName="ViewTransition";var w0=x.createContext(new Map);w0.displayName="Fetchers";var j0=x.createContext(null);j0.displayName="Await";var Xe=x.createContext(null);Xe.displayName="Navigation";var Va=x.createContext(null);Va.displayName="Location";var rl=x.createContext({outlet:null,matches:[],isDataRoute:!1});rl.displayName="Route";var or=x.createContext(null);or.displayName="RouteError";function H0(s,{relative:i}={}){Rt(Za(),"useHref() may be used only in the context of a component.");let{basename:c,navigator:r}=x.useContext(Xe),{hash:o,pathname:d,search:m}=Ka(s,{relative:i}),b=d;return c!=="/"&&(b=d==="/"?c:sl([c,d])),r.createHref({pathname:b,search:m,hash:o})}function Za(){return x.useContext(Va)!=null}function ln(){return Rt(Za(),"useLocation() may be used only in the context of a component."),x.useContext(Va).location}var tm="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function em(s){x.useContext(Xe).static||x.useLayoutEffect(s)}function q0(){let{isDataRoute:s}=x.useContext(rl);return s?F0():L0()}function L0(){Rt(Za(),"useNavigate() may be used only in the context of a component.");let s=x.useContext(Qn),{basename:i,navigator:c}=x.useContext(Xe),{matches:r}=x.useContext(rl),{pathname:o}=ln(),d=JSON.stringify(Wd(r)),m=x.useRef(!1);return em(()=>{m.current=!0}),x.useCallback((y,v={})=>{if(Ue(m.current,tm),!m.current)return;if(typeof y=="number"){c.go(y);return}let C=Fd(y,JSON.parse(d),o,v.relative==="path");s==null&&i!=="/"&&(C.pathname=C.pathname==="/"?i:sl([i,C.pathname])),(v.replace?c.replace:c.push)(C,v.state,v)},[i,c,d,o,s])}x.createContext(null);function Ka(s,{relative:i}={}){let{matches:c}=x.useContext(rl),{pathname:r}=ln(),o=JSON.stringify(Wd(c));return x.useMemo(()=>Fd(s,JSON.parse(o),r,i==="path"),[s,o,r,i])}function Y0(s,i){return lm(s,i)}function lm(s,i,c,r,o){Rt(Za(),"useRoutes() may be used only in the context of a component.");let{navigator:d}=x.useContext(Xe),{matches:m}=x.useContext(rl),b=m[m.length-1],y=b?b.params:{},v=b?b.pathname:"/",C=b?b.pathnameBase:"/",R=b&&b.route;{let G=R&&R.path||"";nm(v,!R||G.endsWith("*")||G.endsWith("*?"),`You rendered descendant (or called \`useRoutes()\`) at "${v}" (under ) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render. +`+n.stack}}var Cu=Object.prototype.hasOwnProperty,zu=s.unstable_scheduleCallback,Mu=s.unstable_cancelCallback,Mm=s.unstable_shouldYield,Dm=s.unstable_requestPaint,se=s.unstable_now,Um=s.unstable_getCurrentPriorityLevel,Tr=s.unstable_ImmediatePriority,Ar=s.unstable_UserBlockingPriority,Ja=s.unstable_NormalPriority,wm=s.unstable_LowPriority,Rr=s.unstable_IdlePriority,Bm=s.log,jm=s.unstable_setDisableYieldValue,Kn=null,ce=null;function fl(t){if(typeof Bm=="function"&&jm(t),ce&&typeof ce.setStrictMode=="function")try{ce.setStrictMode(Kn,t)}catch{}}var re=Math.clz32?Math.clz32:Lm,Hm=Math.log,qm=Math.LN2;function Lm(t){return t>>>=0,t===0?32:31-(Hm(t)/qm|0)|0}var $a=256,Wa=262144,Fa=4194304;function ql(t){var e=t&42;if(e!==0)return e;switch(t&-t){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return t&261888;case 262144:case 524288:case 1048576:case 2097152:return t&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return t&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return t}}function Pa(t,e,l){var n=t.pendingLanes;if(n===0)return 0;var a=0,u=t.suspendedLanes,f=t.pingedLanes;t=t.warmLanes;var h=n&134217727;return h!==0?(n=h&~u,n!==0?a=ql(n):(f&=h,f!==0?a=ql(f):l||(l=h&~t,l!==0&&(a=ql(l))))):(h=n&~u,h!==0?a=ql(h):f!==0?a=ql(f):l||(l=n&~t,l!==0&&(a=ql(l)))),a===0?0:e!==0&&e!==a&&(e&u)===0&&(u=a&-a,l=e&-e,u>=l||u===32&&(l&4194048)!==0)?e:a}function kn(t,e){return(t.pendingLanes&~(t.suspendedLanes&~t.pingedLanes)&e)===0}function Ym(t,e){switch(t){case 1:case 2:case 4:case 8:case 64:return e+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 e+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 Nr(){var t=Fa;return Fa<<=1,(Fa&62914560)===0&&(Fa=4194304),t}function Du(t){for(var e=[],l=0;31>l;l++)e.push(t);return e}function Jn(t,e){t.pendingLanes|=e,e!==268435456&&(t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0)}function Xm(t,e,l,n,a,u){var f=t.pendingLanes;t.pendingLanes=l,t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0,t.expiredLanes&=l,t.entangledLanes&=l,t.errorRecoveryDisabledLanes&=l,t.shellSuspendCounter=0;var h=t.entanglements,p=t.expirationTimes,A=t.hiddenUpdates;for(l=f&~l;0"u")return null;try{return t.activeElement||t.body}catch{return t.body}}var km=/[\n"\\]/g;function be(t){return t.replace(km,function(e){return"\\"+e.charCodeAt(0).toString(16)+" "})}function qu(t,e,l,n,a,u,f,h){t.name="",f!=null&&typeof f!="function"&&typeof f!="symbol"&&typeof f!="boolean"?t.type=f:t.removeAttribute("type"),e!=null?f==="number"?(e===0&&t.value===""||t.value!=e)&&(t.value=""+ge(e)):t.value!==""+ge(e)&&(t.value=""+ge(e)):f!=="submit"&&f!=="reset"||t.removeAttribute("value"),e!=null?Lu(t,f,ge(e)):l!=null?Lu(t,f,ge(l)):n!=null&&t.removeAttribute("value"),a==null&&u!=null&&(t.defaultChecked=!!u),a!=null&&(t.checked=a&&typeof a!="function"&&typeof a!="symbol"),h!=null&&typeof h!="function"&&typeof h!="symbol"&&typeof h!="boolean"?t.name=""+ge(h):t.removeAttribute("name")}function Yr(t,e,l,n,a,u,f,h){if(u!=null&&typeof u!="function"&&typeof u!="symbol"&&typeof u!="boolean"&&(t.type=u),e!=null||l!=null){if(!(u!=="submit"&&u!=="reset"||e!=null)){Hu(t);return}l=l!=null?""+ge(l):"",e=e!=null?""+ge(e):l,h||e===t.value||(t.value=e),t.defaultValue=e}n=n??a,n=typeof n!="function"&&typeof n!="symbol"&&!!n,t.checked=h?t.checked:!!n,t.defaultChecked=!!n,f!=null&&typeof f!="function"&&typeof f!="symbol"&&typeof f!="boolean"&&(t.name=f),Hu(t)}function Lu(t,e,l){e==="number"&&ei(t.ownerDocument)===t||t.defaultValue===""+l||(t.defaultValue=""+l)}function rn(t,e,l,n){if(t=t.options,e){e={};for(var a=0;a"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Vu=!1;if(Ze)try{var Pn={};Object.defineProperty(Pn,"passive",{get:function(){Vu=!0}}),window.addEventListener("test",Pn,Pn),window.removeEventListener("test",Pn,Pn)}catch{Vu=!1}var hl=null,Zu=null,ni=null;function kr(){if(ni)return ni;var t,e=Zu,l=e.length,n,a="value"in hl?hl.value:hl.textContent,u=a.length;for(t=0;t=ea),Ir=" ",tf=!1;function ef(t,e){switch(t){case"keyup":return xy.indexOf(e.keyCode)!==-1;case"keydown":return e.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function lf(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var dn=!1;function _y(t,e){switch(t){case"compositionend":return lf(e);case"keypress":return e.which!==32?null:(tf=!0,Ir);case"textInput":return t=e.data,t===Ir&&tf?null:t;default:return null}}function Ty(t,e){if(dn)return t==="compositionend"||!Wu&&ef(t,e)?(t=kr(),ni=Zu=hl=null,dn=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(e.ctrlKey||e.altKey||e.metaKey)||e.ctrlKey&&e.altKey){if(e.char&&1=e)return{node:l,offset:e-t};t=n}t:{for(;l;){if(l.nextSibling){l=l.nextSibling;break t}l=l.parentNode}l=void 0}l=of(l)}}function df(t,e){return t&&e?t===e?!0:t&&t.nodeType===3?!1:e&&e.nodeType===3?df(t,e.parentNode):"contains"in t?t.contains(e):t.compareDocumentPosition?!!(t.compareDocumentPosition(e)&16):!1:!1}function mf(t){t=t!=null&&t.ownerDocument!=null&&t.ownerDocument.defaultView!=null?t.ownerDocument.defaultView:window;for(var e=ei(t.document);e instanceof t.HTMLIFrameElement;){try{var l=typeof e.contentWindow.location.href=="string"}catch{l=!1}if(l)t=e.contentWindow;else break;e=ei(t.document)}return e}function Iu(t){var e=t&&t.nodeName&&t.nodeName.toLowerCase();return e&&(e==="input"&&(t.type==="text"||t.type==="search"||t.type==="tel"||t.type==="url"||t.type==="password")||e==="textarea"||t.contentEditable==="true")}var Dy=Ze&&"documentMode"in document&&11>=document.documentMode,mn=null,ts=null,ia=null,es=!1;function yf(t,e,l){var n=l.window===l?l.document:l.nodeType===9?l:l.ownerDocument;es||mn==null||mn!==ei(n)||(n=mn,"selectionStart"in n&&Iu(n)?n={start:n.selectionStart,end:n.selectionEnd}:(n=(n.ownerDocument&&n.ownerDocument.defaultView||window).getSelection(),n={anchorNode:n.anchorNode,anchorOffset:n.anchorOffset,focusNode:n.focusNode,focusOffset:n.focusOffset}),ia&&aa(ia,n)||(ia=n,n=Wi(ts,"onSelect"),0>=f,a-=f,Be=1<<32-re(e)+a|l<et?(ut=K,K=null):ut=K.sibling;var ft=R(E,K,T[et],D);if(ft===null){K===null&&(K=ut);break}t&&K&&ft.alternate===null&&e(E,K),g=u(ft,g,et),rt===null?k=ft:rt.sibling=ft,rt=ft,K=ut}if(et===T.length)return l(E,K),st&&ke(E,et),k;if(K===null){for(;etet?(ut=K,K=null):ut=K.sibling;var wl=R(E,K,ft.value,D);if(wl===null){K===null&&(K=ut);break}t&&K&&wl.alternate===null&&e(E,K),g=u(wl,g,et),rt===null?k=wl:rt.sibling=wl,rt=wl,K=ut}if(ft.done)return l(E,K),st&&ke(E,et),k;if(K===null){for(;!ft.done;et++,ft=T.next())ft=U(E,ft.value,D),ft!==null&&(g=u(ft,g,et),rt===null?k=ft:rt.sibling=ft,rt=ft);return st&&ke(E,et),k}for(K=n(K);!ft.done;et++,ft=T.next())ft=O(K,E,et,ft.value,D),ft!==null&&(t&&ft.alternate!==null&&K.delete(ft.key===null?et:ft.key),g=u(ft,g,et),rt===null?k=ft:rt.sibling=ft,rt=ft);return t&&K.forEach(function(Pp){return e(E,Pp)}),st&&ke(E,et),k}function bt(E,g,T,D){if(typeof T=="object"&&T!==null&&T.type===Y&&T.key===null&&(T=T.props.children),typeof T=="object"&&T!==null){switch(T.$$typeof){case w:t:{for(var k=T.key;g!==null;){if(g.key===k){if(k=T.type,k===Y){if(g.tag===7){l(E,g.sibling),D=a(g,T.props.children),D.return=E,E=D;break t}}else if(g.elementType===k||typeof k=="object"&&k!==null&&k.$$typeof===Lt&&$l(k)===g.type){l(E,g.sibling),D=a(g,T.props),oa(D,T),D.return=E,E=D;break t}l(E,g);break}else e(E,g);g=g.sibling}T.type===Y?(D=Vl(T.props.children,E.mode,D,T.key),D.return=E,E=D):(D=di(T.type,T.key,T.props,null,E.mode,D),oa(D,T),D.return=E,E=D)}return f(E);case H:t:{for(k=T.key;g!==null;){if(g.key===k)if(g.tag===4&&g.stateNode.containerInfo===T.containerInfo&&g.stateNode.implementation===T.implementation){l(E,g.sibling),D=a(g,T.children||[]),D.return=E,E=D;break t}else{l(E,g);break}else e(E,g);g=g.sibling}D=cs(T,E.mode,D),D.return=E,E=D}return f(E);case Lt:return T=$l(T),bt(E,g,T,D)}if(Ce(T))return Q(E,g,T,D);if(Ft(T)){if(k=Ft(T),typeof k!="function")throw Error(r(150));return T=k.call(T),$(E,g,T,D)}if(typeof T.then=="function")return bt(E,g,Si(T),D);if(T.$$typeof===J)return bt(E,g,pi(E,T),D);xi(E,T)}return typeof T=="string"&&T!==""||typeof T=="number"||typeof T=="bigint"?(T=""+T,g!==null&&g.tag===6?(l(E,g.sibling),D=a(g,T),D.return=E,E=D):(l(E,g),D=ss(T,E.mode,D),D.return=E,E=D),f(E)):l(E,g)}return function(E,g,T,D){try{fa=0;var k=bt(E,g,T,D);return An=null,k}catch(K){if(K===Tn||K===gi)throw K;var rt=oe(29,K,null,E.mode);return rt.lanes=D,rt.return=E,rt}finally{}}}var Fl=qf(!0),Lf=qf(!1),vl=!1;function Ss(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function xs(t,e){t=t.updateQueue,e.updateQueue===t&&(e.updateQueue={baseState:t.baseState,firstBaseUpdate:t.firstBaseUpdate,lastBaseUpdate:t.lastBaseUpdate,shared:t.shared,callbacks:null})}function gl(t){return{lane:t,tag:0,payload:null,callback:null,next:null}}function bl(t,e,l){var n=t.updateQueue;if(n===null)return null;if(n=n.shared,(ot&2)!==0){var a=n.pending;return a===null?e.next=e:(e.next=a.next,a.next=e),n.pending=e,e=hi(t),Ef(t,null,l),e}return oi(t,n,e,l),hi(t)}function ha(t,e,l){if(e=e.updateQueue,e!==null&&(e=e.shared,(l&4194048)!==0)){var n=e.lanes;n&=t.pendingLanes,l|=n,e.lanes=l,Cr(t,l)}}function Es(t,e){var l=t.updateQueue,n=t.alternate;if(n!==null&&(n=n.updateQueue,l===n)){var a=null,u=null;if(l=l.firstBaseUpdate,l!==null){do{var f={lane:l.lane,tag:l.tag,payload:l.payload,callback:null,next:null};u===null?a=u=f:u=u.next=f,l=l.next}while(l!==null);u===null?a=u=e:u=u.next=e}else a=u=e;l={baseState:n.baseState,firstBaseUpdate:a,lastBaseUpdate:u,shared:n.shared,callbacks:n.callbacks},t.updateQueue=l;return}t=l.lastBaseUpdate,t===null?l.firstBaseUpdate=e:t.next=e,l.lastBaseUpdate=e}var _s=!1;function da(){if(_s){var t=_n;if(t!==null)throw t}}function ma(t,e,l,n){_s=!1;var a=t.updateQueue;vl=!1;var u=a.firstBaseUpdate,f=a.lastBaseUpdate,h=a.shared.pending;if(h!==null){a.shared.pending=null;var p=h,A=p.next;p.next=null,f===null?u=A:f.next=A,f=p;var z=t.alternate;z!==null&&(z=z.updateQueue,h=z.lastBaseUpdate,h!==f&&(h===null?z.firstBaseUpdate=A:h.next=A,z.lastBaseUpdate=p))}if(u!==null){var U=a.baseState;f=0,z=A=p=null,h=u;do{var R=h.lane&-536870913,O=R!==h.lane;if(O?(it&R)===R:(n&R)===R){R!==0&&R===En&&(_s=!0),z!==null&&(z=z.next={lane:0,tag:h.tag,payload:h.payload,callback:null,next:null});t:{var Q=t,$=h;R=e;var bt=l;switch($.tag){case 1:if(Q=$.payload,typeof Q=="function"){U=Q.call(bt,U,R);break t}U=Q;break t;case 3:Q.flags=Q.flags&-65537|128;case 0:if(Q=$.payload,R=typeof Q=="function"?Q.call(bt,U,R):Q,R==null)break t;U=N({},U,R);break t;case 2:vl=!0}}R=h.callback,R!==null&&(t.flags|=64,O&&(t.flags|=8192),O=a.callbacks,O===null?a.callbacks=[R]:O.push(R))}else O={lane:R,tag:h.tag,payload:h.payload,callback:h.callback,next:null},z===null?(A=z=O,p=U):z=z.next=O,f|=R;if(h=h.next,h===null){if(h=a.shared.pending,h===null)break;O=h,h=O.next,O.next=null,a.lastBaseUpdate=O,a.shared.pending=null}}while(!0);z===null&&(p=U),a.baseState=p,a.firstBaseUpdate=A,a.lastBaseUpdate=z,u===null&&(a.shared.lanes=0),Tl|=f,t.lanes=f,t.memoizedState=U}}function Yf(t,e){if(typeof t!="function")throw Error(r(191,t));t.call(e)}function Xf(t,e){var l=t.callbacks;if(l!==null)for(t.callbacks=null,t=0;tu?u:8;var f=M.T,h={};M.T=h,Gs(t,!1,e,l);try{var p=a(),A=M.S;if(A!==null&&A(h,p),p!==null&&typeof p=="object"&&typeof p.then=="function"){var z=Xy(p,n);va(t,e,z,pe(t))}else va(t,e,n,pe(t))}catch(U){va(t,e,{then:function(){},status:"rejected",reason:U},pe())}finally{q.p=u,f!==null&&h.types!==null&&(f.types=h.types),M.T=f}}function ky(){}function Ys(t,e,l,n){if(t.tag!==5)throw Error(r(476));var a=So(t).queue;bo(t,a,e,W,l===null?ky:function(){return xo(t),l(n)})}function So(t){var e=t.memoizedState;if(e!==null)return e;e={memoizedState:W,baseState:W,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Fe,lastRenderedState:W},next:null};var l={};return e.next={memoizedState:l,baseState:l,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Fe,lastRenderedState:l},next:null},t.memoizedState=e,t=t.alternate,t!==null&&(t.memoizedState=e),e}function xo(t){var e=So(t);e.next===null&&(e=t.alternate.memoizedState),va(t,e.next.queue,{},pe())}function Xs(){return Zt(wa)}function Eo(){return Dt().memoizedState}function _o(){return Dt().memoizedState}function Jy(t){for(var e=t.return;e!==null;){switch(e.tag){case 24:case 3:var l=pe();t=gl(l);var n=bl(e,t,l);n!==null&&(ae(n,e,l),ha(n,e,l)),e={cache:ps()},t.payload=e;return}e=e.return}}function $y(t,e,l){var n=pe();l={lane:n,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},Mi(t)?Ao(e,l):(l=is(t,e,l,n),l!==null&&(ae(l,t,n),Ro(l,e,n)))}function To(t,e,l){var n=pe();va(t,e,l,n)}function va(t,e,l,n){var a={lane:n,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null};if(Mi(t))Ao(e,a);else{var u=t.alternate;if(t.lanes===0&&(u===null||u.lanes===0)&&(u=e.lastRenderedReducer,u!==null))try{var f=e.lastRenderedState,h=u(f,l);if(a.hasEagerState=!0,a.eagerState=h,fe(h,f))return oi(t,e,a,0),xt===null&&fi(),!1}catch{}finally{}if(l=is(t,e,a,n),l!==null)return ae(l,t,n),Ro(l,e,n),!0}return!1}function Gs(t,e,l,n){if(n={lane:2,revertLane:Sc(),gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},Mi(t)){if(e)throw Error(r(479))}else e=is(t,l,n,2),e!==null&&ae(e,t,2)}function Mi(t){var e=t.alternate;return t===I||e!==null&&e===I}function Ao(t,e){Nn=Ti=!0;var l=t.pending;l===null?e.next=e:(e.next=l.next,l.next=e),t.pending=e}function Ro(t,e,l){if((l&4194048)!==0){var n=e.lanes;n&=t.pendingLanes,l|=n,e.lanes=l,Cr(t,l)}}var ga={readContext:Zt,use:Ni,useCallback:Ot,useContext:Ot,useEffect:Ot,useImperativeHandle:Ot,useLayoutEffect:Ot,useInsertionEffect:Ot,useMemo:Ot,useReducer:Ot,useRef:Ot,useState:Ot,useDebugValue:Ot,useDeferredValue:Ot,useTransition:Ot,useSyncExternalStore:Ot,useId:Ot,useHostTransitionStatus:Ot,useFormState:Ot,useActionState:Ot,useOptimistic:Ot,useMemoCache:Ot,useCacheRefresh:Ot};ga.useEffectEvent=Ot;var No={readContext:Zt,use:Ni,useCallback:function(t,e){return Wt().memoizedState=[t,e===void 0?null:e],t},useContext:Zt,useEffect:ro,useImperativeHandle:function(t,e,l){l=l!=null?l.concat([t]):null,Ci(4194308,4,mo.bind(null,e,t),l)},useLayoutEffect:function(t,e){return Ci(4194308,4,t,e)},useInsertionEffect:function(t,e){Ci(4,2,t,e)},useMemo:function(t,e){var l=Wt();e=e===void 0?null:e;var n=t();if(Pl){fl(!0);try{t()}finally{fl(!1)}}return l.memoizedState=[n,e],n},useReducer:function(t,e,l){var n=Wt();if(l!==void 0){var a=l(e);if(Pl){fl(!0);try{l(e)}finally{fl(!1)}}}else a=e;return n.memoizedState=n.baseState=a,t={pending:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:a},n.queue=t,t=t.dispatch=$y.bind(null,I,t),[n.memoizedState,t]},useRef:function(t){var e=Wt();return t={current:t},e.memoizedState=t},useState:function(t){t=Bs(t);var e=t.queue,l=To.bind(null,I,e);return e.dispatch=l,[t.memoizedState,l]},useDebugValue:qs,useDeferredValue:function(t,e){var l=Wt();return Ls(l,t,e)},useTransition:function(){var t=Bs(!1);return t=bo.bind(null,I,t.queue,!0,!1),Wt().memoizedState=t,[!1,t]},useSyncExternalStore:function(t,e,l){var n=I,a=Wt();if(st){if(l===void 0)throw Error(r(407));l=l()}else{if(l=e(),xt===null)throw Error(r(349));(it&127)!==0||kf(n,e,l)}a.memoizedState=l;var u={value:l,getSnapshot:e};return a.queue=u,ro($f.bind(null,n,u,t),[t]),n.flags|=2048,Cn(9,{destroy:void 0},Jf.bind(null,n,u,l,e),null),l},useId:function(){var t=Wt(),e=xt.identifierPrefix;if(st){var l=je,n=Be;l=(n&~(1<<32-re(n)-1)).toString(32)+l,e="_"+e+"R_"+l,l=Ai++,0<\/script>",u=u.removeChild(u.firstChild);break;case"select":u=typeof n.is=="string"?f.createElement("select",{is:n.is}):f.createElement("select"),n.multiple?u.multiple=!0:n.size&&(u.size=n.size);break;default:u=typeof n.is=="string"?f.createElement(a,{is:n.is}):f.createElement(a)}}u[Qt]=e,u[Pt]=n;t:for(f=e.child;f!==null;){if(f.tag===5||f.tag===6)u.appendChild(f.stateNode);else if(f.tag!==4&&f.tag!==27&&f.child!==null){f.child.return=f,f=f.child;continue}if(f===e)break t;for(;f.sibling===null;){if(f.return===null||f.return===e)break t;f=f.return}f.sibling.return=f.return,f=f.sibling}e.stateNode=u;t:switch(kt(u,a,n),a){case"button":case"input":case"select":case"textarea":n=!!n.autoFocus;break t;case"img":n=!0;break t;default:n=!1}n&&Ie(e)}}return _t(e),lc(e,e.type,t===null?null:t.memoizedProps,e.pendingProps,l),null;case 6:if(t&&e.stateNode!=null)t.memoizedProps!==n&&Ie(e);else{if(typeof n!="string"&&e.stateNode===null)throw Error(r(166));if(t=lt.current,Sn(e)){if(t=e.stateNode,l=e.memoizedProps,n=null,a=Vt,a!==null)switch(a.tag){case 27:case 5:n=a.memoizedProps}t[Qt]=e,t=!!(t.nodeValue===l||n!==null&&n.suppressHydrationWarning===!0||Kh(t.nodeValue,l)),t||yl(e,!0)}else t=Fi(t).createTextNode(n),t[Qt]=e,e.stateNode=t}return _t(e),null;case 31:if(l=e.memoizedState,t===null||t.memoizedState!==null){if(n=Sn(e),l!==null){if(t===null){if(!n)throw Error(r(318));if(t=e.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(r(557));t[Qt]=e}else Zl(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;_t(e),t=!1}else l=hs(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=l),t=!0;if(!t)return e.flags&256?(de(e),e):(de(e),null);if((e.flags&128)!==0)throw Error(r(558))}return _t(e),null;case 13:if(n=e.memoizedState,t===null||t.memoizedState!==null&&t.memoizedState.dehydrated!==null){if(a=Sn(e),n!==null&&n.dehydrated!==null){if(t===null){if(!a)throw Error(r(318));if(a=e.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(r(317));a[Qt]=e}else Zl(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;_t(e),a=!1}else a=hs(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=a),a=!0;if(!a)return e.flags&256?(de(e),e):(de(e),null)}return de(e),(e.flags&128)!==0?(e.lanes=l,e):(l=n!==null,t=t!==null&&t.memoizedState!==null,l&&(n=e.child,a=null,n.alternate!==null&&n.alternate.memoizedState!==null&&n.alternate.memoizedState.cachePool!==null&&(a=n.alternate.memoizedState.cachePool.pool),u=null,n.memoizedState!==null&&n.memoizedState.cachePool!==null&&(u=n.memoizedState.cachePool.pool),u!==a&&(n.flags|=2048)),l!==t&&l&&(e.child.flags|=8192),ji(e,e.updateQueue),_t(e),null);case 4:return zt(),t===null&&Tc(e.stateNode.containerInfo),_t(e),null;case 10:return $e(e.type),_t(e),null;case 19:if(B(Mt),n=e.memoizedState,n===null)return _t(e),null;if(a=(e.flags&128)!==0,u=n.rendering,u===null)if(a)Sa(n,!1);else{if(Ct!==0||t!==null&&(t.flags&128)!==0)for(t=e.child;t!==null;){if(u=_i(t),u!==null){for(e.flags|=128,Sa(n,!1),t=u.updateQueue,e.updateQueue=t,ji(e,t),e.subtreeFlags=0,t=l,l=e.child;l!==null;)_f(l,t),l=l.sibling;return L(Mt,Mt.current&1|2),st&&ke(e,n.treeForkCount),e.child}t=t.sibling}n.tail!==null&&se()>Xi&&(e.flags|=128,a=!0,Sa(n,!1),e.lanes=4194304)}else{if(!a)if(t=_i(u),t!==null){if(e.flags|=128,a=!0,t=t.updateQueue,e.updateQueue=t,ji(e,t),Sa(n,!0),n.tail===null&&n.tailMode==="hidden"&&!u.alternate&&!st)return _t(e),null}else 2*se()-n.renderingStartTime>Xi&&l!==536870912&&(e.flags|=128,a=!0,Sa(n,!1),e.lanes=4194304);n.isBackwards?(u.sibling=e.child,e.child=u):(t=n.last,t!==null?t.sibling=u:e.child=u,n.last=u)}return n.tail!==null?(t=n.tail,n.rendering=t,n.tail=t.sibling,n.renderingStartTime=se(),t.sibling=null,l=Mt.current,L(Mt,a?l&1|2:l&1),st&&ke(e,n.treeForkCount),t):(_t(e),null);case 22:case 23:return de(e),As(),n=e.memoizedState!==null,t!==null?t.memoizedState!==null!==n&&(e.flags|=8192):n&&(e.flags|=8192),n?(l&536870912)!==0&&(e.flags&128)===0&&(_t(e),e.subtreeFlags&6&&(e.flags|=8192)):_t(e),l=e.updateQueue,l!==null&&ji(e,l.retryQueue),l=null,t!==null&&t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(l=t.memoizedState.cachePool.pool),n=null,e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),n!==l&&(e.flags|=2048),t!==null&&B(Jl),null;case 24:return l=null,t!==null&&(l=t.memoizedState.cache),e.memoizedState.cache!==l&&(e.flags|=2048),$e(Ut),_t(e),null;case 25:return null;case 30:return null}throw Error(r(156,e.tag))}function tp(t,e){switch(fs(e),e.tag){case 1:return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 3:return $e(Ut),zt(),t=e.flags,(t&65536)!==0&&(t&128)===0?(e.flags=t&-65537|128,e):null;case 26:case 27:case 5:return ka(e),null;case 31:if(e.memoizedState!==null){if(de(e),e.alternate===null)throw Error(r(340));Zl()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 13:if(de(e),t=e.memoizedState,t!==null&&t.dehydrated!==null){if(e.alternate===null)throw Error(r(340));Zl()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 19:return B(Mt),null;case 4:return zt(),null;case 10:return $e(e.type),null;case 22:case 23:return de(e),As(),t!==null&&B(Jl),t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 24:return $e(Ut),null;case 25:return null;default:return null}}function Fo(t,e){switch(fs(e),e.tag){case 3:$e(Ut),zt();break;case 26:case 27:case 5:ka(e);break;case 4:zt();break;case 31:e.memoizedState!==null&&de(e);break;case 13:de(e);break;case 19:B(Mt);break;case 10:$e(e.type);break;case 22:case 23:de(e),As(),t!==null&&B(Jl);break;case 24:$e(Ut)}}function xa(t,e){try{var l=e.updateQueue,n=l!==null?l.lastEffect:null;if(n!==null){var a=n.next;l=a;do{if((l.tag&t)===t){n=void 0;var u=l.create,f=l.inst;n=u(),f.destroy=n}l=l.next}while(l!==a)}}catch(h){yt(e,e.return,h)}}function El(t,e,l){try{var n=e.updateQueue,a=n!==null?n.lastEffect:null;if(a!==null){var u=a.next;n=u;do{if((n.tag&t)===t){var f=n.inst,h=f.destroy;if(h!==void 0){f.destroy=void 0,a=e;var p=l,A=h;try{A()}catch(z){yt(a,p,z)}}}n=n.next}while(n!==u)}}catch(z){yt(e,e.return,z)}}function Po(t){var e=t.updateQueue;if(e!==null){var l=t.stateNode;try{Xf(e,l)}catch(n){yt(t,t.return,n)}}}function Io(t,e,l){l.props=Il(t.type,t.memoizedProps),l.state=t.memoizedState;try{l.componentWillUnmount()}catch(n){yt(t,e,n)}}function Ea(t,e){try{var l=t.ref;if(l!==null){switch(t.tag){case 26:case 27:case 5:var n=t.stateNode;break;case 30:n=t.stateNode;break;default:n=t.stateNode}typeof l=="function"?t.refCleanup=l(n):l.current=n}}catch(a){yt(t,e,a)}}function He(t,e){var l=t.ref,n=t.refCleanup;if(l!==null)if(typeof n=="function")try{n()}catch(a){yt(t,e,a)}finally{t.refCleanup=null,t=t.alternate,t!=null&&(t.refCleanup=null)}else if(typeof l=="function")try{l(null)}catch(a){yt(t,e,a)}else l.current=null}function th(t){var e=t.type,l=t.memoizedProps,n=t.stateNode;try{t:switch(e){case"button":case"input":case"select":case"textarea":l.autoFocus&&n.focus();break t;case"img":l.src?n.src=l.src:l.srcSet&&(n.srcset=l.srcSet)}}catch(a){yt(t,t.return,a)}}function nc(t,e,l){try{var n=t.stateNode;Ep(n,t.type,l,e),n[Pt]=e}catch(a){yt(t,t.return,a)}}function eh(t){return t.tag===5||t.tag===3||t.tag===26||t.tag===27&&Cl(t.type)||t.tag===4}function ac(t){t:for(;;){for(;t.sibling===null;){if(t.return===null||eh(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.tag===27&&Cl(t.type)||t.flags&2||t.child===null||t.tag===4)continue t;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function ic(t,e,l){var n=t.tag;if(n===5||n===6)t=t.stateNode,e?(l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l).insertBefore(t,e):(e=l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l,e.appendChild(t),l=l._reactRootContainer,l!=null||e.onclick!==null||(e.onclick=Ve));else if(n!==4&&(n===27&&Cl(t.type)&&(l=t.stateNode,e=null),t=t.child,t!==null))for(ic(t,e,l),t=t.sibling;t!==null;)ic(t,e,l),t=t.sibling}function Hi(t,e,l){var n=t.tag;if(n===5||n===6)t=t.stateNode,e?l.insertBefore(t,e):l.appendChild(t);else if(n!==4&&(n===27&&Cl(t.type)&&(l=t.stateNode),t=t.child,t!==null))for(Hi(t,e,l),t=t.sibling;t!==null;)Hi(t,e,l),t=t.sibling}function lh(t){var e=t.stateNode,l=t.memoizedProps;try{for(var n=t.type,a=e.attributes;a.length;)e.removeAttributeNode(a[0]);kt(e,n,l),e[Qt]=t,e[Pt]=l}catch(u){yt(t,t.return,u)}}var tl=!1,jt=!1,uc=!1,nh=typeof WeakSet=="function"?WeakSet:Set,Gt=null;function ep(t,e){if(t=t.containerInfo,Nc=au,t=mf(t),Iu(t)){if("selectionStart"in t)var l={start:t.selectionStart,end:t.selectionEnd};else t:{l=(l=t.ownerDocument)&&l.defaultView||window;var n=l.getSelection&&l.getSelection();if(n&&n.rangeCount!==0){l=n.anchorNode;var a=n.anchorOffset,u=n.focusNode;n=n.focusOffset;try{l.nodeType,u.nodeType}catch{l=null;break t}var f=0,h=-1,p=-1,A=0,z=0,U=t,R=null;e:for(;;){for(var O;U!==l||a!==0&&U.nodeType!==3||(h=f+a),U!==u||n!==0&&U.nodeType!==3||(p=f+n),U.nodeType===3&&(f+=U.nodeValue.length),(O=U.firstChild)!==null;)R=U,U=O;for(;;){if(U===t)break e;if(R===l&&++A===a&&(h=f),R===u&&++z===n&&(p=f),(O=U.nextSibling)!==null)break;U=R,R=U.parentNode}U=O}l=h===-1||p===-1?null:{start:h,end:p}}else l=null}l=l||{start:0,end:0}}else l=null;for(Oc={focusedElem:t,selectionRange:l},au=!1,Gt=e;Gt!==null;)if(e=Gt,t=e.child,(e.subtreeFlags&1028)!==0&&t!==null)t.return=e,Gt=t;else for(;Gt!==null;){switch(e=Gt,u=e.alternate,t=e.flags,e.tag){case 0:if((t&4)!==0&&(t=e.updateQueue,t=t!==null?t.events:null,t!==null))for(l=0;l title"))),kt(u,n,l),u[Qt]=t,Xt(u),n=u;break t;case"link":var f=rd("link","href",a).get(n+(l.href||""));if(f){for(var h=0;hbt&&(f=bt,bt=$,$=f);var E=hf(h,$),g=hf(h,bt);if(E&&g&&(O.rangeCount!==1||O.anchorNode!==E.node||O.anchorOffset!==E.offset||O.focusNode!==g.node||O.focusOffset!==g.offset)){var T=U.createRange();T.setStart(E.node,E.offset),O.removeAllRanges(),$>bt?(O.addRange(T),O.extend(g.node,g.offset)):(T.setEnd(g.node,g.offset),O.addRange(T))}}}}for(U=[],O=h;O=O.parentNode;)O.nodeType===1&&U.push({element:O,left:O.scrollLeft,top:O.scrollTop});for(typeof h.focus=="function"&&h.focus(),h=0;hl?32:l,M.T=null,l=dc,dc=null;var u=Rl,f=il;if(Yt=0,wn=Rl=null,il=0,(ot&6)!==0)throw Error(r(331));var h=ot;if(ot|=4,mh(u.current),oh(u,u.current,f,l),ot=h,Oa(0,!1),ce&&typeof ce.onPostCommitFiberRoot=="function")try{ce.onPostCommitFiberRoot(Kn,u)}catch{}return!0}finally{q.p=a,M.T=n,Dh(t,e)}}function wh(t,e,l){e=xe(l,e),e=Ks(t.stateNode,e,2),t=bl(t,e,2),t!==null&&(Jn(t,2),qe(t))}function yt(t,e,l){if(t.tag===3)wh(t,t,l);else for(;e!==null;){if(e.tag===3){wh(e,t,l);break}else if(e.tag===1){var n=e.stateNode;if(typeof e.type.getDerivedStateFromError=="function"||typeof n.componentDidCatch=="function"&&(Al===null||!Al.has(n))){t=xe(l,t),l=Bo(2),n=bl(e,l,2),n!==null&&(jo(l,n,e,t),Jn(n,2),qe(n));break}}e=e.return}}function vc(t,e,l){var n=t.pingCache;if(n===null){n=t.pingCache=new ap;var a=new Set;n.set(e,a)}else a=n.get(e),a===void 0&&(a=new Set,n.set(e,a));a.has(l)||(rc=!0,a.add(l),t=rp.bind(null,t,e,l),e.then(t,t))}function rp(t,e,l){var n=t.pingCache;n!==null&&n.delete(e),t.pingedLanes|=t.suspendedLanes&l,t.warmLanes&=~l,xt===t&&(it&l)===l&&(Ct===4||Ct===3&&(it&62914560)===it&&300>se()-Yi?(ot&2)===0&&Bn(t,0):fc|=l,Un===it&&(Un=0)),qe(t)}function Bh(t,e){e===0&&(e=Nr()),t=Ql(t,e),t!==null&&(Jn(t,e),qe(t))}function fp(t){var e=t.memoizedState,l=0;e!==null&&(l=e.retryLane),Bh(t,l)}function op(t,e){var l=0;switch(t.tag){case 31:case 13:var n=t.stateNode,a=t.memoizedState;a!==null&&(l=a.retryLane);break;case 19:n=t.stateNode;break;case 22:n=t.stateNode._retryCache;break;default:throw Error(r(314))}n!==null&&n.delete(e),Bh(t,l)}function hp(t,e){return zu(t,e)}var ki=null,Hn=null,gc=!1,Ji=!1,bc=!1,Ol=0;function qe(t){t!==Hn&&t.next===null&&(Hn===null?ki=Hn=t:Hn=Hn.next=t),Ji=!0,gc||(gc=!0,mp())}function Oa(t,e){if(!bc&&Ji){bc=!0;do for(var l=!1,n=ki;n!==null;){if(t!==0){var a=n.pendingLanes;if(a===0)var u=0;else{var f=n.suspendedLanes,h=n.pingedLanes;u=(1<<31-re(42|t)+1)-1,u&=a&~(f&~h),u=u&201326741?u&201326741|1:u?u|2:0}u!==0&&(l=!0,Lh(n,u))}else u=it,u=Pa(n,n===xt?u:0,n.cancelPendingCommit!==null||n.timeoutHandle!==-1),(u&3)===0||kn(n,u)||(l=!0,Lh(n,u));n=n.next}while(l);bc=!1}}function dp(){jh()}function jh(){Ji=gc=!1;var t=0;Ol!==0&&Tp()&&(t=Ol);for(var e=se(),l=null,n=ki;n!==null;){var a=n.next,u=Hh(n,e);u===0?(n.next=null,l===null?ki=a:l.next=a,a===null&&(Hn=l)):(l=n,(t!==0||(u&3)!==0)&&(Ji=!0)),n=a}Yt!==0&&Yt!==5||Oa(t),Ol!==0&&(Ol=0)}function Hh(t,e){for(var l=t.suspendedLanes,n=t.pingedLanes,a=t.expirationTimes,u=t.pendingLanes&-62914561;0h)break;var z=p.transferSize,U=p.initiatorType;z&&kh(U)&&(p=p.responseEnd,f+=z*(p"u"?null:document;function id(t,e,l){var n=qn;if(n&&typeof e=="string"&&e){var a=be(e);a='link[rel="'+t+'"][href="'+a+'"]',typeof l=="string"&&(a+='[crossorigin="'+l+'"]'),ad.has(a)||(ad.add(a),t={rel:t,crossOrigin:l,href:e},n.querySelector(a)===null&&(e=n.createElement("link"),kt(e,"link",t),Xt(e),n.head.appendChild(e)))}}function Up(t){ul.D(t),id("dns-prefetch",t,null)}function wp(t,e){ul.C(t,e),id("preconnect",t,e)}function Bp(t,e,l){ul.L(t,e,l);var n=qn;if(n&&t&&e){var a='link[rel="preload"][as="'+be(e)+'"]';e==="image"&&l&&l.imageSrcSet?(a+='[imagesrcset="'+be(l.imageSrcSet)+'"]',typeof l.imageSizes=="string"&&(a+='[imagesizes="'+be(l.imageSizes)+'"]')):a+='[href="'+be(t)+'"]';var u=a;switch(e){case"style":u=Ln(t);break;case"script":u=Yn(t)}Ne.has(u)||(t=N({rel:"preload",href:e==="image"&&l&&l.imageSrcSet?void 0:t,as:e},l),Ne.set(u,t),n.querySelector(a)!==null||e==="style"&&n.querySelector(Da(u))||e==="script"&&n.querySelector(Ua(u))||(e=n.createElement("link"),kt(e,"link",t),Xt(e),n.head.appendChild(e)))}}function jp(t,e){ul.m(t,e);var l=qn;if(l&&t){var n=e&&typeof e.as=="string"?e.as:"script",a='link[rel="modulepreload"][as="'+be(n)+'"][href="'+be(t)+'"]',u=a;switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":u=Yn(t)}if(!Ne.has(u)&&(t=N({rel:"modulepreload",href:t},e),Ne.set(u,t),l.querySelector(a)===null)){switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(l.querySelector(Ua(u)))return}n=l.createElement("link"),kt(n,"link",t),Xt(n),l.head.appendChild(n)}}}function Hp(t,e,l){ul.S(t,e,l);var n=qn;if(n&&t){var a=sn(n).hoistableStyles,u=Ln(t);e=e||"default";var f=a.get(u);if(!f){var h={loading:0,preload:null};if(f=n.querySelector(Da(u)))h.loading=5;else{t=N({rel:"stylesheet",href:t,"data-precedence":e},l),(l=Ne.get(u))&&Bc(t,l);var p=f=n.createElement("link");Xt(p),kt(p,"link",t),p._p=new Promise(function(A,z){p.onload=A,p.onerror=z}),p.addEventListener("load",function(){h.loading|=1}),p.addEventListener("error",function(){h.loading|=2}),h.loading|=4,Ii(f,e,n)}f={type:"stylesheet",instance:f,count:1,state:h},a.set(u,f)}}}function qp(t,e){ul.X(t,e);var l=qn;if(l&&t){var n=sn(l).hoistableScripts,a=Yn(t),u=n.get(a);u||(u=l.querySelector(Ua(a)),u||(t=N({src:t,async:!0},e),(e=Ne.get(a))&&jc(t,e),u=l.createElement("script"),Xt(u),kt(u,"link",t),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(a,u))}}function Lp(t,e){ul.M(t,e);var l=qn;if(l&&t){var n=sn(l).hoistableScripts,a=Yn(t),u=n.get(a);u||(u=l.querySelector(Ua(a)),u||(t=N({src:t,async:!0,type:"module"},e),(e=Ne.get(a))&&jc(t,e),u=l.createElement("script"),Xt(u),kt(u,"link",t),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(a,u))}}function ud(t,e,l,n){var a=(a=lt.current)?Pi(a):null;if(!a)throw Error(r(446));switch(t){case"meta":case"title":return null;case"style":return typeof l.precedence=="string"&&typeof l.href=="string"?(e=Ln(l.href),l=sn(a).hoistableStyles,n=l.get(e),n||(n={type:"style",instance:null,count:0,state:null},l.set(e,n)),n):{type:"void",instance:null,count:0,state:null};case"link":if(l.rel==="stylesheet"&&typeof l.href=="string"&&typeof l.precedence=="string"){t=Ln(l.href);var u=sn(a).hoistableStyles,f=u.get(t);if(f||(a=a.ownerDocument||a,f={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},u.set(t,f),(u=a.querySelector(Da(t)))&&!u._p&&(f.instance=u,f.state.loading=5),Ne.has(t)||(l={rel:"preload",as:"style",href:l.href,crossOrigin:l.crossOrigin,integrity:l.integrity,media:l.media,hrefLang:l.hrefLang,referrerPolicy:l.referrerPolicy},Ne.set(t,l),u||Yp(a,t,l,f.state))),e&&n===null)throw Error(r(528,""));return f}if(e&&n!==null)throw Error(r(529,""));return null;case"script":return e=l.async,l=l.src,typeof l=="string"&&e&&typeof e!="function"&&typeof e!="symbol"?(e=Yn(l),l=sn(a).hoistableScripts,n=l.get(e),n||(n={type:"script",instance:null,count:0,state:null},l.set(e,n)),n):{type:"void",instance:null,count:0,state:null};default:throw Error(r(444,t))}}function Ln(t){return'href="'+be(t)+'"'}function Da(t){return'link[rel="stylesheet"]['+t+"]"}function sd(t){return N({},t,{"data-precedence":t.precedence,precedence:null})}function Yp(t,e,l,n){t.querySelector('link[rel="preload"][as="style"]['+e+"]")?n.loading=1:(e=t.createElement("link"),n.preload=e,e.addEventListener("load",function(){return n.loading|=1}),e.addEventListener("error",function(){return n.loading|=2}),kt(e,"link",l),Xt(e),t.head.appendChild(e))}function Yn(t){return'[src="'+be(t)+'"]'}function Ua(t){return"script[async]"+t}function cd(t,e,l){if(e.count++,e.instance===null)switch(e.type){case"style":var n=t.querySelector('style[data-href~="'+be(l.href)+'"]');if(n)return e.instance=n,Xt(n),n;var a=N({},l,{"data-href":l.href,"data-precedence":l.precedence,href:null,precedence:null});return n=(t.ownerDocument||t).createElement("style"),Xt(n),kt(n,"style",a),Ii(n,l.precedence,t),e.instance=n;case"stylesheet":a=Ln(l.href);var u=t.querySelector(Da(a));if(u)return e.state.loading|=4,e.instance=u,Xt(u),u;n=sd(l),(a=Ne.get(a))&&Bc(n,a),u=(t.ownerDocument||t).createElement("link"),Xt(u);var f=u;return f._p=new Promise(function(h,p){f.onload=h,f.onerror=p}),kt(u,"link",n),e.state.loading|=4,Ii(u,l.precedence,t),e.instance=u;case"script":return u=Yn(l.src),(a=t.querySelector(Ua(u)))?(e.instance=a,Xt(a),a):(n=l,(a=Ne.get(u))&&(n=N({},l),jc(n,a)),t=t.ownerDocument||t,a=t.createElement("script"),Xt(a),kt(a,"link",n),t.head.appendChild(a),e.instance=a);case"void":return null;default:throw Error(r(443,e.type))}else e.type==="stylesheet"&&(e.state.loading&4)===0&&(n=e.instance,e.state.loading|=4,Ii(n,l.precedence,t));return e.instance}function Ii(t,e,l){for(var n=l.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=n.length?n[n.length-1]:null,u=a,f=0;f title"):null)}function Xp(t,e,l){if(l===1||e.itemProp!=null)return!1;switch(t){case"meta":case"title":return!0;case"style":if(typeof e.precedence!="string"||typeof e.href!="string"||e.href==="")break;return!0;case"link":if(typeof e.rel!="string"||typeof e.href!="string"||e.href===""||e.onLoad||e.onError)break;switch(e.rel){case"stylesheet":return t=e.disabled,typeof e.precedence=="string"&&t==null;default:return!0}case"script":if(e.async&&typeof e.async!="function"&&typeof e.async!="symbol"&&!e.onLoad&&!e.onError&&e.src&&typeof e.src=="string")return!0}return!1}function od(t){return!(t.type==="stylesheet"&&(t.state.loading&3)===0)}function Gp(t,e,l,n){if(l.type==="stylesheet"&&(typeof n.media!="string"||matchMedia(n.media).matches!==!1)&&(l.state.loading&4)===0){if(l.instance===null){var a=Ln(n.href),u=e.querySelector(Da(a));if(u){e=u._p,e!==null&&typeof e=="object"&&typeof e.then=="function"&&(t.count++,t=eu.bind(t),e.then(t,t)),l.state.loading|=4,l.instance=u,Xt(u);return}u=e.ownerDocument||e,n=sd(n),(a=Ne.get(a))&&Bc(n,a),u=u.createElement("link"),Xt(u);var f=u;f._p=new Promise(function(h,p){f.onload=h,f.onerror=p}),kt(u,"link",n),l.instance=u}t.stylesheets===null&&(t.stylesheets=new Map),t.stylesheets.set(l,e),(e=l.state.preload)&&(l.state.loading&3)===0&&(t.count++,l=eu.bind(t),e.addEventListener("load",l),e.addEventListener("error",l))}}var Hc=0;function Qp(t,e){return t.stylesheets&&t.count===0&&nu(t,t.stylesheets),0Hc?50:800)+e);return t.unsuspend=l,function(){t.unsuspend=null,clearTimeout(n),clearTimeout(a)}}:null}function eu(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)nu(this,this.stylesheets);else if(this.unsuspend){var t=this.unsuspend;this.unsuspend=null,t()}}}var lu=null;function nu(t,e){t.stylesheets=null,t.unsuspend!==null&&(t.count++,lu=new Map,e.forEach(Vp,t),lu=null,eu.call(t))}function Vp(t,e){if(!(e.state.loading&4)){var l=lu.get(t);if(l)var n=l.get(null);else{l=new Map,lu.set(t,l);for(var a=t.querySelectorAll("link[data-precedence],style[data-precedence]"),u=0;u"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(s)}catch(i){console.error(i)}}return s(),Kc.exports=u0(),Kc.exports}var c0=s0();var Bd="popstate";function r0(s={}){function i(r,o){let{pathname:d,search:m,hash:b}=r.location;return er("",{pathname:d,search:m,hash:b},o.state&&o.state.usr||null,o.state&&o.state.key||"default")}function c(r,o){return typeof o=="string"?o:Qa(o)}return o0(i,c,null,s)}function Rt(s,i){if(s===!1||s===null||typeof s>"u")throw new Error(i)}function we(s,i){if(!s){typeof console<"u"&&console.warn(i);try{throw new Error(i)}catch{}}}function f0(){return Math.random().toString(36).substring(2,10)}function jd(s,i){return{usr:s.state,key:s.key,idx:i}}function er(s,i,c=null,r){return{pathname:typeof s=="string"?s:s.pathname,search:"",hash:"",...typeof i=="string"?Gn(i):i,state:c,key:i&&i.key||r||f0()}}function Qa({pathname:s="/",search:i="",hash:c=""}){return i&&i!=="?"&&(s+=i.charAt(0)==="?"?i:"?"+i),c&&c!=="#"&&(s+=c.charAt(0)==="#"?c:"#"+c),s}function Gn(s){let i={};if(s){let c=s.indexOf("#");c>=0&&(i.hash=s.substring(c),s=s.substring(0,c));let r=s.indexOf("?");r>=0&&(i.search=s.substring(r),s=s.substring(0,r)),s&&(i.pathname=s)}return i}function o0(s,i,c,r={}){let{window:o=document.defaultView,v5Compat:d=!1}=r,m=o.history,b="POP",y=null,v=C();v==null&&(v=0,m.replaceState({...m.state,idx:v},""));function C(){return(m.state||{idx:null}).idx}function N(){b="POP";let G=C(),X=G==null?null:G-v;v=G,y&&y({action:b,location:Y.location,delta:X})}function j(G,X){b="PUSH";let V=er(Y.location,G,X);v=C()+1;let J=jd(V,v),dt=Y.createHref(V);try{m.pushState(J,"",dt)}catch(Tt){if(Tt instanceof DOMException&&Tt.name==="DataCloneError")throw Tt;o.location.assign(dt)}d&&y&&y({action:b,location:Y.location,delta:1})}function w(G,X){b="REPLACE";let V=er(Y.location,G,X);v=C();let J=jd(V,v),dt=Y.createHref(V);m.replaceState(J,"",dt),d&&y&&y({action:b,location:Y.location,delta:0})}function H(G){return h0(G)}let Y={get action(){return b},get location(){return s(o,m)},listen(G){if(y)throw new Error("A history only accepts one active listener");return o.addEventListener(Bd,N),y=G,()=>{o.removeEventListener(Bd,N),y=null}},createHref(G){return i(o,G)},createURL:H,encodeLocation(G){let X=H(G);return{pathname:X.pathname,search:X.search,hash:X.hash}},push:j,replace:w,go(G){return m.go(G)}};return Y}function h0(s,i=!1){let c="http://localhost";typeof window<"u"&&(c=window.location.origin!=="null"?window.location.origin:window.location.href),Rt(c,"No window.location.(origin|href) available to create URL");let r=typeof s=="string"?s:Qa(s);return r=r.replace(/ $/,"%20"),!i&&r.startsWith("//")&&(r=c+r),new URL(r,c)}function kd(s,i,c="/"){return d0(s,i,c,!1)}function d0(s,i,c,r){let o=typeof i=="string"?Gn(i):i,d=cl(o.pathname||"/",c);if(d==null)return null;let m=Jd(s);m0(m);let b=null;for(let y=0;b==null&&y{let C={relativePath:v===void 0?m.path||"":v,caseSensitive:m.caseSensitive===!0,childrenIndex:b,route:m};if(C.relativePath.startsWith("/")){if(!C.relativePath.startsWith(r)&&y)return;Rt(C.relativePath.startsWith(r),`Absolute route path "${C.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),C.relativePath=C.relativePath.slice(r.length)}let N=sl([r,C.relativePath]),j=c.concat(C);m.children&&m.children.length>0&&(Rt(m.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${N}".`),Jd(m.children,i,j,N,y)),!(m.path==null&&!m.index)&&i.push({path:N,score:x0(N,m.index),routesMeta:j})};return s.forEach((m,b)=>{if(m.path===""||!m.path?.includes("?"))d(m,b);else for(let y of $d(m.path))d(m,b,!0,y)}),i}function $d(s){let i=s.split("/");if(i.length===0)return[];let[c,...r]=i,o=c.endsWith("?"),d=c.replace(/\?$/,"");if(r.length===0)return o?[d,""]:[d];let m=$d(r.join("/")),b=[];return b.push(...m.map(y=>y===""?d:[d,y].join("/"))),o&&b.push(...m),b.map(y=>s.startsWith("/")&&y===""?"/":y)}function m0(s){s.sort((i,c)=>i.score!==c.score?c.score-i.score:E0(i.routesMeta.map(r=>r.childrenIndex),c.routesMeta.map(r=>r.childrenIndex)))}var y0=/^:[\w-]+$/,p0=3,v0=2,g0=1,b0=10,S0=-2,Hd=s=>s==="*";function x0(s,i){let c=s.split("/"),r=c.length;return c.some(Hd)&&(r+=S0),i&&(r+=v0),c.filter(o=>!Hd(o)).reduce((o,d)=>o+(y0.test(d)?p0:d===""?g0:b0),r)}function E0(s,i){return s.length===i.length&&s.slice(0,-1).every((r,o)=>r===i[o])?s[s.length-1]-i[i.length-1]:0}function _0(s,i,c=!1){let{routesMeta:r}=s,o={},d="/",m=[];for(let b=0;b{if(C==="*"){let H=b[j]||"";m=d.slice(0,d.length-H.length).replace(/(.)\/+$/,"$1")}const w=b[j];return N&&!w?v[C]=void 0:v[C]=(w||"").replace(/%2F/g,"/"),v},{}),pathname:d,pathnameBase:m,pattern:s}}function T0(s,i=!1,c=!0){we(s==="*"||!s.endsWith("*")||s.endsWith("/*"),`Route path "${s}" will be treated as if it were "${s.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${s.replace(/\*$/,"/*")}".`);let r=[],o="^"+s.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(m,b,y)=>(r.push({paramName:b,isOptional:y!=null}),y?"/?([^\\/]+)?":"/([^\\/]+)")).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return s.endsWith("*")?(r.push({paramName:"*"}),o+=s==="*"||s==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):c?o+="\\/*$":s!==""&&s!=="/"&&(o+="(?:(?=\\/|$))"),[new RegExp(o,i?void 0:"i"),r]}function A0(s){try{return s.split("/").map(i=>decodeURIComponent(i).replace(/\//g,"%2F")).join("/")}catch(i){return we(!1,`The URL path "${s}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${i}).`),s}}function cl(s,i){if(i==="/")return s;if(!s.toLowerCase().startsWith(i.toLowerCase()))return null;let c=i.endsWith("/")?i.length-1:i.length,r=s.charAt(c);return r&&r!=="/"?null:s.slice(c)||"/"}var R0=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,N0=s=>R0.test(s);function O0(s,i="/"){let{pathname:c,search:r="",hash:o=""}=typeof s=="string"?Gn(s):s,d;if(c)if(N0(c))d=c;else{if(c.includes("//")){let m=c;c=c.replace(/\/\/+/g,"/"),we(!1,`Pathnames cannot have embedded double slashes - normalizing ${m} -> ${c}`)}c.startsWith("/")?d=qd(c.substring(1),"/"):d=qd(c,i)}else d=i;return{pathname:d,search:M0(r),hash:D0(o)}}function qd(s,i){let c=i.replace(/\/+$/,"").split("/");return s.split("/").forEach(o=>{o===".."?c.length>1&&c.pop():o!=="."&&c.push(o)}),c.length>1?c.join("/"):"/"}function Wc(s,i,c,r){return`Cannot include a '${s}' character in a manually specified \`to.${i}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${c}\` field. Alternatively you may provide the full path as a string in and the router will parse it for you.`}function C0(s){return s.filter((i,c)=>c===0||i.route.path&&i.route.path.length>0)}function Wd(s){let i=C0(s);return i.map((c,r)=>r===i.length-1?c.pathname:c.pathnameBase)}function Fd(s,i,c,r=!1){let o;typeof s=="string"?o=Gn(s):(o={...s},Rt(!o.pathname||!o.pathname.includes("?"),Wc("?","pathname","search",o)),Rt(!o.pathname||!o.pathname.includes("#"),Wc("#","pathname","hash",o)),Rt(!o.search||!o.search.includes("#"),Wc("#","search","hash",o)));let d=s===""||o.pathname==="",m=d?"/":o.pathname,b;if(m==null)b=c;else{let N=i.length-1;if(!r&&m.startsWith("..")){let j=m.split("/");for(;j[0]==="..";)j.shift(),N-=1;o.pathname=j.join("/")}b=N>=0?i[N]:"/"}let y=O0(o,b),v=m&&m!=="/"&&m.endsWith("/"),C=(d||m===".")&&c.endsWith("/");return!y.pathname.endsWith("/")&&(v||C)&&(y.pathname+="/"),y}var sl=s=>s.join("/").replace(/\/\/+/g,"/"),z0=s=>s.replace(/\/+$/,"").replace(/^\/*/,"/"),M0=s=>!s||s==="?"?"":s.startsWith("?")?s:"?"+s,D0=s=>!s||s==="#"?"":s.startsWith("#")?s:"#"+s;function U0(s){return s!=null&&typeof s.status=="number"&&typeof s.statusText=="string"&&typeof s.internal=="boolean"&&"data"in s}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var Pd=["POST","PUT","PATCH","DELETE"];new Set(Pd);var w0=["GET",...Pd];new Set(w0);var Qn=_.createContext(null);Qn.displayName="DataRouter";var xu=_.createContext(null);xu.displayName="DataRouterState";_.createContext(!1);var Id=_.createContext({isTransitioning:!1});Id.displayName="ViewTransition";var B0=_.createContext(new Map);B0.displayName="Fetchers";var j0=_.createContext(null);j0.displayName="Await";var Xe=_.createContext(null);Xe.displayName="Navigation";var Va=_.createContext(null);Va.displayName="Location";var rl=_.createContext({outlet:null,matches:[],isDataRoute:!1});rl.displayName="Route";var or=_.createContext(null);or.displayName="RouteError";function H0(s,{relative:i}={}){Rt(Za(),"useHref() may be used only in the context of a component.");let{basename:c,navigator:r}=_.useContext(Xe),{hash:o,pathname:d,search:m}=Ka(s,{relative:i}),b=d;return c!=="/"&&(b=d==="/"?c:sl([c,d])),r.createHref({pathname:b,search:m,hash:o})}function Za(){return _.useContext(Va)!=null}function ln(){return Rt(Za(),"useLocation() may be used only in the context of a component."),_.useContext(Va).location}var tm="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function em(s){_.useContext(Xe).static||_.useLayoutEffect(s)}function q0(){let{isDataRoute:s}=_.useContext(rl);return s?F0():L0()}function L0(){Rt(Za(),"useNavigate() may be used only in the context of a component.");let s=_.useContext(Qn),{basename:i,navigator:c}=_.useContext(Xe),{matches:r}=_.useContext(rl),{pathname:o}=ln(),d=JSON.stringify(Wd(r)),m=_.useRef(!1);return em(()=>{m.current=!0}),_.useCallback((y,v={})=>{if(we(m.current,tm),!m.current)return;if(typeof y=="number"){c.go(y);return}let C=Fd(y,JSON.parse(d),o,v.relative==="path");s==null&&i!=="/"&&(C.pathname=C.pathname==="/"?i:sl([i,C.pathname])),(v.replace?c.replace:c.push)(C,v.state,v)},[i,c,d,o,s])}_.createContext(null);function Ka(s,{relative:i}={}){let{matches:c}=_.useContext(rl),{pathname:r}=ln(),o=JSON.stringify(Wd(c));return _.useMemo(()=>Fd(s,JSON.parse(o),r,i==="path"),[s,o,r,i])}function Y0(s,i){return lm(s,i)}function lm(s,i,c,r,o){Rt(Za(),"useRoutes() may be used only in the context of a component.");let{navigator:d}=_.useContext(Xe),{matches:m}=_.useContext(rl),b=m[m.length-1],y=b?b.params:{},v=b?b.pathname:"/",C=b?b.pathnameBase:"/",N=b&&b.route;{let V=N&&N.path||"";nm(v,!N||V.endsWith("*")||V.endsWith("*?"),`You rendered descendant (or called \`useRoutes()\`) at "${v}" (under ) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render. -Please change the parent to .`)}let w=ln(),j;if(i){let G=typeof i=="string"?Gn(i):i;Rt(C==="/"||G.pathname?.startsWith(C),`When overriding the location using \`\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${C}" but pathname "${G.pathname}" was given in the \`location\` prop.`),j=G}else j=w;let L=j.pathname||"/",Q=L;if(C!=="/"){let G=C.replace(/^\//,"").split("/");Q="/"+L.replace(/^\//,"").split("/").slice(G.length).join("/")}let K=Jd(s,{pathname:Q});Ue(R||K!=null,`No routes matched location "${j.pathname}${j.search}${j.hash}" `),Ue(K==null||K[K.length-1].route.element!==void 0||K[K.length-1].route.Component!==void 0||K[K.length-1].route.lazy!==void 0,`Matched leaf route at location "${j.pathname}${j.search}${j.hash}" does not have an element or Component. This means it will render an with a null value by default resulting in an "empty" page.`);let Y=Z0(K&&K.map(G=>Object.assign({},G,{params:Object.assign({},y,G.params),pathname:sl([C,d.encodeLocation?d.encodeLocation(G.pathname.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:G.pathname]),pathnameBase:G.pathnameBase==="/"?C:sl([C,d.encodeLocation?d.encodeLocation(G.pathnameBase.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:G.pathnameBase])})),m,c,r,o);return i&&Y?x.createElement(Va.Provider,{value:{location:{pathname:"/",search:"",hash:"",state:null,key:"default",...j},navigationType:"POP"}},Y):Y}function X0(){let s=W0(),i=U0(s)?`${s.status} ${s.statusText}`:s instanceof Error?s.message:JSON.stringify(s),c=s instanceof Error?s.stack:null,r="rgba(200,200,200, 0.5)",o={padding:"0.5rem",backgroundColor:r},d={padding:"2px 4px",backgroundColor:r},m=null;return console.error("Error handled by React Router default ErrorBoundary:",s),m=x.createElement(x.Fragment,null,x.createElement("p",null,"💿 Hey developer 👋"),x.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",x.createElement("code",{style:d},"ErrorBoundary")," or"," ",x.createElement("code",{style:d},"errorElement")," prop on your route.")),x.createElement(x.Fragment,null,x.createElement("h2",null,"Unexpected Application Error!"),x.createElement("h3",{style:{fontStyle:"italic"}},i),c?x.createElement("pre",{style:o},c):null,m)}var G0=x.createElement(X0,null),Q0=class extends x.Component{constructor(s){super(s),this.state={location:s.location,revalidation:s.revalidation,error:s.error}}static getDerivedStateFromError(s){return{error:s}}static getDerivedStateFromProps(s,i){return i.location!==s.location||i.revalidation!=="idle"&&s.revalidation==="idle"?{error:s.error,location:s.location,revalidation:s.revalidation}:{error:s.error!==void 0?s.error:i.error,location:i.location,revalidation:s.revalidation||i.revalidation}}componentDidCatch(s,i){this.props.onError?this.props.onError(s,i):console.error("React Router caught the following error during render",s)}render(){return this.state.error!==void 0?x.createElement(rl.Provider,{value:this.props.routeContext},x.createElement(or.Provider,{value:this.state.error,children:this.props.component})):this.props.children}};function V0({routeContext:s,match:i,children:c}){let r=x.useContext(Qn);return r&&r.static&&r.staticContext&&(i.route.errorElement||i.route.ErrorBoundary)&&(r.staticContext._deepestRenderedBoundaryId=i.route.id),x.createElement(rl.Provider,{value:s},c)}function Z0(s,i=[],c=null,r=null,o=null){if(s==null){if(!c)return null;if(c.errors)s=c.matches;else if(i.length===0&&!c.initialized&&c.matches.length>0)s=c.matches;else return null}let d=s,m=c?.errors;if(m!=null){let C=d.findIndex(R=>R.route.id&&m?.[R.route.id]!==void 0);Rt(C>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(m).join(",")}`),d=d.slice(0,Math.min(d.length,C+1))}let b=!1,y=-1;if(c)for(let C=0;C=0?d=d.slice(0,y+1):d=[d[0]];break}}}let v=c&&r?(C,R)=>{r(C,{location:c.location,params:c.matches?.[0]?.params??{},errorInfo:R})}:void 0;return d.reduceRight((C,R,w)=>{let j,L=!1,Q=null,K=null;c&&(j=m&&R.route.id?m[R.route.id]:void 0,Q=R.route.errorElement||G0,b&&(y<0&&w===0?(nm("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),L=!0,K=null):y===w&&(L=!0,K=R.route.hydrateFallbackElement||null)));let Y=i.concat(d.slice(0,w+1)),G=()=>{let k;return j?k=Q:L?k=K:R.route.Component?k=x.createElement(R.route.Component,null):R.route.element?k=R.route.element:k=C,x.createElement(V0,{match:R,routeContext:{outlet:C,matches:Y,isDataRoute:c!=null},children:k})};return c&&(R.route.ErrorBoundary||R.route.errorElement||w===0)?x.createElement(Q0,{location:c.location,revalidation:c.revalidation,component:Q,error:j,children:G(),routeContext:{outlet:null,matches:Y,isDataRoute:!0},onError:v}):G()},null)}function hr(s){return`${s} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function K0(s){let i=x.useContext(Qn);return Rt(i,hr(s)),i}function J0(s){let i=x.useContext(Eu);return Rt(i,hr(s)),i}function k0(s){let i=x.useContext(rl);return Rt(i,hr(s)),i}function dr(s){let i=k0(s),c=i.matches[i.matches.length-1];return Rt(c.route.id,`${s} can only be used on routes that contain a unique "id"`),c.route.id}function $0(){return dr("useRouteId")}function W0(){let s=x.useContext(or),i=J0("useRouteError"),c=dr("useRouteError");return s!==void 0?s:i.errors?.[c]}function F0(){let{router:s}=K0("useNavigate"),i=dr("useNavigate"),c=x.useRef(!1);return em(()=>{c.current=!0}),x.useCallback(async(o,d={})=>{Ue(c.current,tm),c.current&&(typeof o=="number"?s.navigate(o):await s.navigate(o,{fromRouteId:i,...d}))},[s,i])}var Ld={};function nm(s,i,c){!i&&!Ld[s]&&(Ld[s]=!0,Ue(!1,c))}x.memo(I0);function I0({routes:s,future:i,state:c,unstable_onError:r}){return lm(s,void 0,c,r,i)}function lr(s){Rt(!1,"A is only ever to be used as the child of element, never rendered directly. Please wrap your in a .")}function P0({basename:s="/",children:i=null,location:c,navigationType:r="POP",navigator:o,static:d=!1}){Rt(!Za(),"You cannot render a inside another . You should never have more than one in your app.");let m=s.replace(/^\/*/,"/"),b=x.useMemo(()=>({basename:m,navigator:o,static:d,future:{}}),[m,o,d]);typeof c=="string"&&(c=Gn(c));let{pathname:y="/",search:v="",hash:C="",state:R=null,key:w="default"}=c,j=x.useMemo(()=>{let L=cl(y,m);return L==null?null:{location:{pathname:L,search:v,hash:C,state:R,key:w},navigationType:r}},[m,y,v,C,R,w,r]);return Ue(j!=null,` is not able to match the URL "${y}${v}${C}" because it does not start with the basename, so the won't render anything.`),j==null?null:x.createElement(Xe.Provider,{value:b},x.createElement(Va.Provider,{children:i,value:j}))}function tv({children:s,location:i}){return Y0(nr(s),i)}function nr(s,i=[]){let c=[];return x.Children.forEach(s,(r,o)=>{if(!x.isValidElement(r))return;let d=[...i,o];if(r.type===x.Fragment){c.push.apply(c,nr(r.props.children,d));return}Rt(r.type===lr,`[${typeof r.type=="string"?r.type:r.type.name}] is not a component. All component children of must be a or `),Rt(!r.props.index||!r.props.children,"An index route cannot have child routes.");let m={id:r.props.id||d.join("-"),caseSensitive:r.props.caseSensitive,element:r.props.element,Component:r.props.Component,index:r.props.index,path:r.props.path,middleware:r.props.middleware,loader:r.props.loader,action:r.props.action,hydrateFallbackElement:r.props.hydrateFallbackElement,HydrateFallback:r.props.HydrateFallback,errorElement:r.props.errorElement,ErrorBoundary:r.props.ErrorBoundary,hasErrorBoundary:r.props.hasErrorBoundary===!0||r.props.ErrorBoundary!=null||r.props.errorElement!=null,shouldRevalidate:r.props.shouldRevalidate,handle:r.props.handle,lazy:r.props.lazy};r.props.children&&(m.children=nr(r.props.children,d)),c.push(m)}),c}var mu="get",yu="application/x-www-form-urlencoded";function xu(s){return s!=null&&typeof s.tagName=="string"}function ev(s){return xu(s)&&s.tagName.toLowerCase()==="button"}function lv(s){return xu(s)&&s.tagName.toLowerCase()==="form"}function nv(s){return xu(s)&&s.tagName.toLowerCase()==="input"}function av(s){return!!(s.metaKey||s.altKey||s.ctrlKey||s.shiftKey)}function iv(s,i){return s.button===0&&(!i||i==="_self")&&!av(s)}var ou=null;function uv(){if(ou===null)try{new FormData(document.createElement("form"),0),ou=!1}catch{ou=!0}return ou}var sv=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function Fc(s){return s!=null&&!sv.has(s)?(Ue(!1,`"${s}" is not a valid \`encType\` for \`\`/\`\` and will default to "${yu}"`),null):s}function cv(s,i){let c,r,o,d,m;if(lv(s)){let b=s.getAttribute("action");r=b?cl(b,i):null,c=s.getAttribute("method")||mu,o=Fc(s.getAttribute("enctype"))||yu,d=new FormData(s)}else if(ev(s)||nv(s)&&(s.type==="submit"||s.type==="image")){let b=s.form;if(b==null)throw new Error('Cannot submit a + + + + ))} + + + ); +} diff --git a/webui/src/components/AlertFeed.jsx b/webui/src/components/AlertFeed.jsx new file mode 100644 index 00000000..8b04f1aa --- /dev/null +++ b/webui/src/components/AlertFeed.jsx @@ -0,0 +1,30 @@ +import { useMemo } from 'react'; +import { useSession } from '../context/SessionContext.jsx'; + +function AlertCard({ alert }) { + const color = + alert.color === 'error' + ? 'bg-red-500/10 border-red-500/40 text-red-100' + : alert.color === 'warn' + ? 'bg-amber-500/10 border-amber-500/40 text-amber-100' + : 'bg-emerald-500/10 border-emerald-500/30 text-emerald-100'; + + return ( +
+

{alert.title || 'Alert'}

+

{alert.message}

+
+ ); +} + +export default function AlertFeed() { + const { alerts } = useSession(); + const recent = useMemo(() => alerts.slice(-5).reverse(), [alerts]); + if (recent.length === 0) return null; + return ( +
+

Recent Alerts

+
{recent.map((alert) => )}
+
+ ); +} diff --git a/webui/src/context/SessionContext.jsx b/webui/src/context/SessionContext.jsx index ad4fc025..6dec238f 100644 --- a/webui/src/context/SessionContext.jsx +++ b/webui/src/context/SessionContext.jsx @@ -33,6 +33,7 @@ export function SessionProvider({ children }) { const emitWithAck = useAckEmitter(socket); const [session, setSession] = useState(null); const [logs, setLogs] = useState([]); + const [alerts, setAlerts] = useState([]); const [connected, setConnected] = useState(socket.connected); useEffect(() => { @@ -59,10 +60,14 @@ export function SessionProvider({ children }) { socket.on('session:sync', handleSession); socket.on('log:init', handleLogInit); socket.on('log:entry', handleLogEntry); + socket.on('alert:new', (payload = {}) => { + setAlerts((prev) => [...prev.slice(-49), payload]); + }); return () => { socket.off('session:sync', handleSession); socket.off('log:init', handleLogInit); socket.off('log:entry', handleLogEntry); + socket.off('alert:new'); }; }, [socket]); @@ -74,6 +79,8 @@ export function SessionProvider({ children }) { emitWithAck('session:requestControl', { roverId, ...options }), releaseControl: (roverId) => emitWithAck('session:releaseControl', { roverId }), subscribeAll: () => emitWithAck('session:subscribeAll'), + lockRover: (roverId, locked) => emitWithAck('session:lockRover', { roverId, locked }), + setMode: (mode) => emitWithAck('setMode', { mode }), }), [emitWithAck], ); @@ -83,9 +90,10 @@ export function SessionProvider({ children }) { connected, session, logs, + alerts, ...actions, }), - [actions, connected, logs, session], + [actions, alerts, connected, logs, session], ); return {children}; From d9d5f94ea0e7a0ff1a291724b268d8d60086c93f Mon Sep 17 00:00:00 2001 From: legop3 Date: Sat, 15 Nov 2025 14:21:15 -0500 Subject: [PATCH 15/61] wuh --- server/src/services/alertService.js | 1 + 1 file changed, 1 insertion(+) diff --git a/server/src/services/alertService.js b/server/src/services/alertService.js index d3450c77..19e8a297 100644 --- a/server/src/services/alertService.js +++ b/server/src/services/alertService.js @@ -15,6 +15,7 @@ function sendAlert({ color, title, message, ts = Date.now() }) { ts, }; io.emit('alert', payload); + io.emit('alert:new', { id: `${ts}-${Math.random().toString(36).slice(2)}`, ...payload }); } module.exports = { From c011a922677475d5edb607df1dc8dc70f2988b85 Mon Sep 17 00:00:00 2001 From: legop3 Date: Sat, 15 Nov 2025 14:30:08 -0500 Subject: [PATCH 16/61] guhwuh --- server/mediamtx/mediamtx.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/server/mediamtx/mediamtx.yml b/server/mediamtx/mediamtx.yml index 8faf0ca1..e27d6007 100644 --- a/server/mediamtx/mediamtx.yml +++ b/server/mediamtx/mediamtx.yml @@ -33,3 +33,5 @@ paths: all: source: publisher sourceOnDemand: no + webrtcMaxPlayoutDelay: 0 + alwaysRemuxWhep: no From e494b1027b52c5bcae1ca241d02b10d7aebbe38c Mon Sep 17 00:00:00 2001 From: legop3 Date: Sat, 15 Nov 2025 14:32:02 -0500 Subject: [PATCH 17/61] stupid --- server/mediamtx/mediamtx.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/mediamtx/mediamtx.yml b/server/mediamtx/mediamtx.yml index e27d6007..169e8f41 100644 --- a/server/mediamtx/mediamtx.yml +++ b/server/mediamtx/mediamtx.yml @@ -34,4 +34,4 @@ paths: source: publisher sourceOnDemand: no webrtcMaxPlayoutDelay: 0 - alwaysRemuxWhep: no + # alwaysRemuxWhep: no From 6d4aacb903a075533b83796f930baa50ce56ceb0 Mon Sep 17 00:00:00 2001 From: legop3 Date: Sat, 15 Nov 2025 14:32:32 -0500 Subject: [PATCH 18/61] stupid --- server/mediamtx/mediamtx.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/mediamtx/mediamtx.yml b/server/mediamtx/mediamtx.yml index 169e8f41..ac8bf89a 100644 --- a/server/mediamtx/mediamtx.yml +++ b/server/mediamtx/mediamtx.yml @@ -33,5 +33,5 @@ paths: all: source: publisher sourceOnDemand: no - webrtcMaxPlayoutDelay: 0 + # webrtcMaxPlayoutDelay: 0 # alwaysRemuxWhep: no From 2e1186a4826f5ee4b713a91899b470c4b88ea1b1 Mon Sep 17 00:00:00 2001 From: legop3 Date: Sat, 15 Nov 2025 15:04:46 -0500 Subject: [PATCH 19/61] update pi video publisher --- pi/bin/video-publisher.sh | 4 +-- server/public/assets/index-CVsa8jPZ.js | 11 ++++++++ server/public/assets/index-_yFT6hTb.js | 11 -------- server/public/index.html | 2 +- webui/src/lib/whepPlayer.js | 37 ++++++++++++++++++++++++-- 5 files changed, 49 insertions(+), 16 deletions(-) create mode 100644 server/public/assets/index-CVsa8jPZ.js delete mode 100644 server/public/assets/index-_yFT6hTb.js diff --git a/pi/bin/video-publisher.sh b/pi/bin/video-publisher.sh index 4624d55d..5e6c85c8 100644 --- a/pi/bin/video-publisher.sh +++ b/pi/bin/video-publisher.sh @@ -13,8 +13,8 @@ source "$ENV_FILE" : "${PUBLISH_URL:?PUBLISH_URL not set in ${ENV_FILE}}" -VIDEO_WIDTH="${VIDEO_WIDTH:-1280}" -VIDEO_HEIGHT="${VIDEO_HEIGHT:-720}" +VIDEO_WIDTH="${VIDEO_WIDTH:-640}" +VIDEO_HEIGHT="${VIDEO_HEIGHT:-480}" VIDEO_FPS="${VIDEO_FPS:-30}" VIDEO_BITRATE="${VIDEO_BITRATE:-3000000}" diff --git a/server/public/assets/index-CVsa8jPZ.js b/server/public/assets/index-CVsa8jPZ.js new file mode 100644 index 00000000..3f5531da --- /dev/null +++ b/server/public/assets/index-CVsa8jPZ.js @@ -0,0 +1,11 @@ +(function(){const i=document.createElement("link").relList;if(i&&i.supports&&i.supports("modulepreload"))return;for(const f of document.querySelectorAll('link[rel="modulepreload"]'))r(f);new MutationObserver(f=>{for(const d of f)if(d.type==="childList")for(const m of d.addedNodes)m.tagName==="LINK"&&m.rel==="modulepreload"&&r(m)}).observe(document,{childList:!0,subtree:!0});function c(f){const d={};return f.integrity&&(d.integrity=f.integrity),f.referrerPolicy&&(d.referrerPolicy=f.referrerPolicy),f.crossOrigin==="use-credentials"?d.credentials="include":f.crossOrigin==="anonymous"?d.credentials="omit":d.credentials="same-origin",d}function r(f){if(f.ep)return;f.ep=!0;const d=c(f);fetch(f.href,d)}})();var Vc={exports:{}},qa={};var Ad;function Ip(){if(Ad)return qa;Ad=1;var s=Symbol.for("react.transitional.element"),i=Symbol.for("react.fragment");function c(r,f,d){var m=null;if(d!==void 0&&(m=""+d),f.key!==void 0&&(m=""+f.key),"key"in f){d={};for(var b in f)b!=="key"&&(d[b]=f[b])}else d=f;return f=d.ref,{$$typeof:s,type:r,key:m,ref:f!==void 0?f:null,props:d}}return qa.Fragment=i,qa.jsx=c,qa.jsxs=c,qa}var Rd;function e0(){return Rd||(Rd=1,Vc.exports=Ip()),Vc.exports}var x=e0(),Zc={exports:{}},F={};var Nd;function t0(){if(Nd)return F;Nd=1;var s=Symbol.for("react.transitional.element"),i=Symbol.for("react.portal"),c=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),f=Symbol.for("react.profiler"),d=Symbol.for("react.consumer"),m=Symbol.for("react.context"),b=Symbol.for("react.forward_ref"),y=Symbol.for("react.suspense"),v=Symbol.for("react.memo"),C=Symbol.for("react.lazy"),N=Symbol.for("react.activity"),j=Symbol.iterator;function w(S){return S===null||typeof S!="object"?null:(S=j&&S[j]||S["@@iterator"],typeof S=="function"?S:null)}var H={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},Y=Object.assign,G={};function X(S,B,L){this.props=S,this.context=B,this.refs=G,this.updater=L||H}X.prototype.isReactComponent={},X.prototype.setState=function(S,B){if(typeof S!="object"&&typeof S!="function"&&S!=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,S,B,"setState")},X.prototype.forceUpdate=function(S){this.updater.enqueueForceUpdate(this,S,"forceUpdate")};function V(){}V.prototype=X.prototype;function J(S,B,L){this.props=S,this.context=B,this.refs=G,this.updater=L||H}var de=J.prototype=new V;de.constructor=J,Y(de,X.prototype),de.isPureReactComponent=!0;var Te=Array.isArray;function qe(){}var ee={H:null,A:null,T:null,S:null},Le=Object.prototype.hasOwnProperty;function Ne(S,B,L){var Z=L.ref;return{$$typeof:s,type:S,key:B,ref:Z!==void 0?Z:null,props:L}}function it(S,B){return Ne(S.type,B,S.props)}function ut(S){return typeof S=="object"&&S!==null&&S.$$typeof===s}function Fe(S){var B={"=":"=0",":":"=2"};return"$"+S.replace(/[=:]/g,function(L){return B[L]})}var jl=/\/+/g;function Gt(S,B){return typeof S=="object"&&S!==null&&S.key!=null?Fe(""+S.key):B.toString(36)}function Ct(S){switch(S.status){case"fulfilled":return S.value;case"rejected":throw S.reason;default:switch(typeof S.status=="string"?S.then(qe,qe):(S.status="pending",S.then(function(B){S.status==="pending"&&(S.status="fulfilled",S.value=B)},function(B){S.status==="pending"&&(S.status="rejected",S.reason=B)})),S.status){case"fulfilled":return S.value;case"rejected":throw S.reason}}throw S}function M(S,B,L,Z,P){var le=typeof S;(le==="undefined"||le==="boolean")&&(S=null);var he=!1;if(S===null)he=!0;else switch(le){case"bigint":case"string":case"number":he=!0;break;case"object":switch(S.$$typeof){case s:case i:he=!0;break;case C:return he=S._init,M(he(S._payload),B,L,Z,P)}}if(he)return P=P(S),he=Z===""?"."+Gt(S,0):Z,Te(P)?(L="",he!=null&&(L=he.replace(jl,"$&/")+"/"),M(P,B,L,"",function(Zn){return Zn})):P!=null&&(ut(P)&&(P=it(P,L+(P.key==null||S&&S.key===P.key?"":(""+P.key).replace(jl,"$&/")+"/")+he)),B.push(P)),1;he=0;var $e=Z===""?".":Z+":";if(Te(S))for(var ze=0;ze>>1,Se=M[pe];if(0>>1;pef(L,W))Zf(P,L)?(M[pe]=P,M[Z]=W,pe=Z):(M[pe]=L,M[B]=W,pe=B);else if(Zf(P,W))M[pe]=P,M[Z]=W,pe=Z;else break e}}return q}function f(M,q){var W=M.sortIndex-q.sortIndex;return W!==0?W:M.id-q.id}if(s.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var d=performance;s.unstable_now=function(){return d.now()}}else{var m=Date,b=m.now();s.unstable_now=function(){return m.now()-b}}var y=[],v=[],C=1,N=null,j=3,w=!1,H=!1,Y=!1,G=!1,X=typeof setTimeout=="function"?setTimeout:null,V=typeof clearTimeout=="function"?clearTimeout:null,J=typeof setImmediate<"u"?setImmediate:null;function de(M){for(var q=c(v);q!==null;){if(q.callback===null)r(v);else if(q.startTime<=M)r(v),q.sortIndex=q.expirationTime,i(y,q);else break;q=c(v)}}function Te(M){if(Y=!1,de(M),!H)if(c(y)!==null)H=!0,qe||(qe=!0,Fe());else{var q=c(v);q!==null&&Ct(Te,q.startTime-M)}}var qe=!1,ee=-1,Le=5,Ne=-1;function it(){return G?!0:!(s.unstable_now()-NeM&&it());){var pe=N.callback;if(typeof pe=="function"){N.callback=null,j=N.priorityLevel;var Se=pe(N.expirationTime<=M);if(M=s.unstable_now(),typeof Se=="function"){N.callback=Se,de(M),q=!0;break t}N===c(y)&&r(y),de(M)}else r(y);N=c(y)}if(N!==null)q=!0;else{var S=c(v);S!==null&&Ct(Te,S.startTime-M),q=!1}}break e}finally{N=null,j=W,w=!1}q=void 0}}finally{q?Fe():qe=!1}}}var Fe;if(typeof J=="function")Fe=function(){J(ut)};else if(typeof MessageChannel<"u"){var jl=new MessageChannel,Gt=jl.port2;jl.port1.onmessage=ut,Fe=function(){Gt.postMessage(null)}}else Fe=function(){X(ut,0)};function Ct(M,q){ee=X(function(){M(s.unstable_now())},q)}s.unstable_IdlePriority=5,s.unstable_ImmediatePriority=1,s.unstable_LowPriority=4,s.unstable_NormalPriority=3,s.unstable_Profiling=null,s.unstable_UserBlockingPriority=2,s.unstable_cancelCallback=function(M){M.callback=null},s.unstable_forceFrameRate=function(M){0>M||125pe?(M.sortIndex=W,i(v,M),c(y)===null&&M===c(v)&&(Y?(V(ee),ee=-1):Y=!0,Ct(Te,W-pe))):(M.sortIndex=Se,i(y,M),H||w||(H=!0,qe||(qe=!0,Fe()))),M},s.unstable_shouldYield=it,s.unstable_wrapCallback=function(M){var q=j;return function(){var W=j;j=q;try{return M.apply(this,arguments)}finally{j=W}}}})(Jc)),Jc}var zd;function n0(){return zd||(zd=1,kc.exports=l0()),kc.exports}var $c={exports:{}},Je={};var Md;function a0(){if(Md)return Je;Md=1;var s=or();function i(y){var v="https://react.dev/errors/"+y;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(s)}catch(i){console.error(i)}}return s(),$c.exports=a0(),$c.exports}var Ud;function u0(){if(Ud)return La;Ud=1;var s=n0(),i=or(),c=i0();function r(e){var t="https://react.dev/errors/"+e;if(1Se||(e.current=pe[Se],pe[Se]=null,Se--)}function L(e,t){Se++,pe[Se]=e.current,e.current=t}var Z=S(null),P=S(null),le=S(null),he=S(null);function $e(e,t){switch(L(le,t),L(P,e),L(Z,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?Jh(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=Jh(t),e=$h(t,e);else switch(e){case"svg":e=1;break;case"math":e=2;break;default:e=0}}B(Z),L(Z,e)}function ze(){B(Z),B(P),B(le)}function Zn(e){e.memoizedState!==null&&L(he,e);var t=Z.current,l=$h(t,e.type);t!==l&&(L(P,e),L(Z,l))}function ka(e){P.current===e&&(B(Z),B(P)),he.current===e&&(B(he),wa._currentValue=W)}var Ru,Er;function Hl(e){if(Ru===void 0)try{throw Error()}catch(l){var t=l.stack.trim().match(/\n( *(at )?)/);Ru=t&&t[1]||"",Er=-1)":-1a||p[n]!==A[a]){var z=` +`+p[n].replace(" at new "," at ");return e.displayName&&z.includes("")&&(z=z.replace("",e.displayName)),z}while(1<=n&&0<=a);break}}}finally{Nu=!1,Error.prepareStackTrace=l}return(l=e?e.displayName||e.name:"")?Hl(l):""}function zm(e,t){switch(e.tag){case 26:case 27:case 5:return Hl(e.type);case 16:return Hl("Lazy");case 13:return e.child!==t&&t!==null?Hl("Suspense Fallback"):Hl("Suspense");case 19:return Hl("SuspenseList");case 0:case 15:return Ou(e.type,!1);case 11:return Ou(e.type.render,!1);case 1:return Ou(e.type,!0);case 31:return Hl("Activity");default:return""}}function _r(e){try{var t="",l=null;do t+=zm(e,l),l=e,e=e.return;while(e);return t}catch(n){return` +Error generating stack: `+n.message+` +`+n.stack}}var Cu=Object.prototype.hasOwnProperty,zu=s.unstable_scheduleCallback,Mu=s.unstable_cancelCallback,Mm=s.unstable_shouldYield,Dm=s.unstable_requestPaint,st=s.unstable_now,Um=s.unstable_getCurrentPriorityLevel,Tr=s.unstable_ImmediatePriority,Ar=s.unstable_UserBlockingPriority,Ja=s.unstable_NormalPriority,wm=s.unstable_LowPriority,Rr=s.unstable_IdlePriority,Bm=s.log,jm=s.unstable_setDisableYieldValue,Kn=null,ct=null;function ol(e){if(typeof Bm=="function"&&jm(e),ct&&typeof ct.setStrictMode=="function")try{ct.setStrictMode(Kn,e)}catch{}}var rt=Math.clz32?Math.clz32:Lm,Hm=Math.log,qm=Math.LN2;function Lm(e){return e>>>=0,e===0?32:31-(Hm(e)/qm|0)|0}var $a=256,Wa=262144,Fa=4194304;function ql(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function Pa(e,t,l){var n=e.pendingLanes;if(n===0)return 0;var a=0,u=e.suspendedLanes,o=e.pingedLanes;e=e.warmLanes;var h=n&134217727;return h!==0?(n=h&~u,n!==0?a=ql(n):(o&=h,o!==0?a=ql(o):l||(l=h&~e,l!==0&&(a=ql(l))))):(h=n&~u,h!==0?a=ql(h):o!==0?a=ql(o):l||(l=n&~e,l!==0&&(a=ql(l)))),a===0?0:t!==0&&t!==a&&(t&u)===0&&(u=a&-a,l=t&-t,u>=l||u===32&&(l&4194048)!==0)?t:a}function kn(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function Ym(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Nr(){var e=Fa;return Fa<<=1,(Fa&62914560)===0&&(Fa=4194304),e}function Du(e){for(var t=[],l=0;31>l;l++)t.push(e);return t}function Jn(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function Xm(e,t,l,n,a,u){var o=e.pendingLanes;e.pendingLanes=l,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=l,e.entangledLanes&=l,e.errorRecoveryDisabledLanes&=l,e.shellSuspendCounter=0;var h=e.entanglements,p=e.expirationTimes,A=e.hiddenUpdates;for(l=o&~l;0"u")return null;try{return e.activeElement||e.body}catch{return e.body}}var km=/[\n"\\]/g;function bt(e){return e.replace(km,function(t){return"\\"+t.charCodeAt(0).toString(16)+" "})}function qu(e,t,l,n,a,u,o,h){e.name="",o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"?e.type=o:e.removeAttribute("type"),t!=null?o==="number"?(t===0&&e.value===""||e.value!=t)&&(e.value=""+gt(t)):e.value!==""+gt(t)&&(e.value=""+gt(t)):o!=="submit"&&o!=="reset"||e.removeAttribute("value"),t!=null?Lu(e,o,gt(t)):l!=null?Lu(e,o,gt(l)):n!=null&&e.removeAttribute("value"),a==null&&u!=null&&(e.defaultChecked=!!u),a!=null&&(e.checked=a&&typeof a!="function"&&typeof a!="symbol"),h!=null&&typeof h!="function"&&typeof h!="symbol"&&typeof h!="boolean"?e.name=""+gt(h):e.removeAttribute("name")}function Yr(e,t,l,n,a,u,o,h){if(u!=null&&typeof u!="function"&&typeof u!="symbol"&&typeof u!="boolean"&&(e.type=u),t!=null||l!=null){if(!(u!=="submit"&&u!=="reset"||t!=null)){Hu(e);return}l=l!=null?""+gt(l):"",t=t!=null?""+gt(t):l,h||t===e.value||(e.value=t),e.defaultValue=t}n=n??a,n=typeof n!="function"&&typeof n!="symbol"&&!!n,e.checked=h?e.checked:!!n,e.defaultChecked=!!n,o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"&&(e.name=o),Hu(e)}function Lu(e,t,l){t==="number"&&ti(e.ownerDocument)===e||e.defaultValue===""+l||(e.defaultValue=""+l)}function rn(e,t,l,n){if(e=e.options,t){t={};for(var a=0;a"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Vu=!1;if(Zt)try{var Pn={};Object.defineProperty(Pn,"passive",{get:function(){Vu=!0}}),window.addEventListener("test",Pn,Pn),window.removeEventListener("test",Pn,Pn)}catch{Vu=!1}var hl=null,Zu=null,ni=null;function kr(){if(ni)return ni;var e,t=Zu,l=t.length,n,a="value"in hl?hl.value:hl.textContent,u=a.length;for(e=0;e=ta),Ir=" ",eo=!1;function to(e,t){switch(e){case"keyup":return xy.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function lo(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var dn=!1;function _y(e,t){switch(e){case"compositionend":return lo(t);case"keypress":return t.which!==32?null:(eo=!0,Ir);case"textInput":return e=t.data,e===Ir&&eo?null:e;default:return null}}function Ty(e,t){if(dn)return e==="compositionend"||!Wu&&to(e,t)?(e=kr(),ni=Zu=hl=null,dn=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:l,offset:t-e};e=n}e:{for(;l;){if(l.nextSibling){l=l.nextSibling;break e}l=l.parentNode}l=void 0}l=oo(l)}}function ho(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?ho(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function mo(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=ti(e.document);t instanceof e.HTMLIFrameElement;){try{var l=typeof t.contentWindow.location.href=="string"}catch{l=!1}if(l)e=t.contentWindow;else break;t=ti(e.document)}return t}function Iu(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}var Dy=Zt&&"documentMode"in document&&11>=document.documentMode,mn=null,es=null,ia=null,ts=!1;function yo(e,t,l){var n=l.window===l?l.document:l.nodeType===9?l:l.ownerDocument;ts||mn==null||mn!==ti(n)||(n=mn,"selectionStart"in n&&Iu(n)?n={start:n.selectionStart,end:n.selectionEnd}:(n=(n.ownerDocument&&n.ownerDocument.defaultView||window).getSelection(),n={anchorNode:n.anchorNode,anchorOffset:n.anchorOffset,focusNode:n.focusNode,focusOffset:n.focusOffset}),ia&&aa(ia,n)||(ia=n,n=Wi(es,"onSelect"),0>=o,a-=o,Bt=1<<32-rt(t)+a|l<te?(ue=K,K=null):ue=K.sibling;var oe=R(E,K,T[te],D);if(oe===null){K===null&&(K=ue);break}e&&K&&oe.alternate===null&&t(E,K),g=u(oe,g,te),re===null?k=oe:re.sibling=oe,re=oe,K=ue}if(te===T.length)return l(E,K),se&&kt(E,te),k;if(K===null){for(;tete?(ue=K,K=null):ue=K.sibling;var wl=R(E,K,oe.value,D);if(wl===null){K===null&&(K=ue);break}e&&K&&wl.alternate===null&&t(E,K),g=u(wl,g,te),re===null?k=wl:re.sibling=wl,re=wl,K=ue}if(oe.done)return l(E,K),se&&kt(E,te),k;if(K===null){for(;!oe.done;te++,oe=T.next())oe=U(E,oe.value,D),oe!==null&&(g=u(oe,g,te),re===null?k=oe:re.sibling=oe,re=oe);return se&&kt(E,te),k}for(K=n(K);!oe.done;te++,oe=T.next())oe=O(K,E,te,oe.value,D),oe!==null&&(e&&oe.alternate!==null&&K.delete(oe.key===null?te:oe.key),g=u(oe,g,te),re===null?k=oe:re.sibling=oe,re=oe);return e&&K.forEach(function(Pp){return t(E,Pp)}),se&&kt(E,te),k}function be(E,g,T,D){if(typeof T=="object"&&T!==null&&T.type===Y&&T.key===null&&(T=T.props.children),typeof T=="object"&&T!==null){switch(T.$$typeof){case w:e:{for(var k=T.key;g!==null;){if(g.key===k){if(k=T.type,k===Y){if(g.tag===7){l(E,g.sibling),D=a(g,T.props.children),D.return=E,E=D;break e}}else if(g.elementType===k||typeof k=="object"&&k!==null&&k.$$typeof===Le&&$l(k)===g.type){l(E,g.sibling),D=a(g,T.props),fa(D,T),D.return=E,E=D;break e}l(E,g);break}else t(E,g);g=g.sibling}T.type===Y?(D=Vl(T.props.children,E.mode,D,T.key),D.return=E,E=D):(D=di(T.type,T.key,T.props,null,E.mode,D),fa(D,T),D.return=E,E=D)}return o(E);case H:e:{for(k=T.key;g!==null;){if(g.key===k)if(g.tag===4&&g.stateNode.containerInfo===T.containerInfo&&g.stateNode.implementation===T.implementation){l(E,g.sibling),D=a(g,T.children||[]),D.return=E,E=D;break e}else{l(E,g);break}else t(E,g);g=g.sibling}D=cs(T,E.mode,D),D.return=E,E=D}return o(E);case Le:return T=$l(T),be(E,g,T,D)}if(Ct(T))return Q(E,g,T,D);if(Fe(T)){if(k=Fe(T),typeof k!="function")throw Error(r(150));return T=k.call(T),$(E,g,T,D)}if(typeof T.then=="function")return be(E,g,Si(T),D);if(T.$$typeof===J)return be(E,g,pi(E,T),D);xi(E,T)}return typeof T=="string"&&T!==""||typeof T=="number"||typeof T=="bigint"?(T=""+T,g!==null&&g.tag===6?(l(E,g.sibling),D=a(g,T),D.return=E,E=D):(l(E,g),D=ss(T,E.mode,D),D.return=E,E=D),o(E)):l(E,g)}return function(E,g,T,D){try{oa=0;var k=be(E,g,T,D);return An=null,k}catch(K){if(K===Tn||K===gi)throw K;var re=ft(29,K,null,E.mode);return re.lanes=D,re.return=E,re}finally{}}}var Fl=qo(!0),Lo=qo(!1),vl=!1;function Ss(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function xs(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function gl(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function bl(e,t,l){var n=e.updateQueue;if(n===null)return null;if(n=n.shared,(fe&2)!==0){var a=n.pending;return a===null?t.next=t:(t.next=a.next,a.next=t),n.pending=t,t=hi(e),Eo(e,null,l),t}return fi(e,n,t,l),hi(e)}function ha(e,t,l){if(t=t.updateQueue,t!==null&&(t=t.shared,(l&4194048)!==0)){var n=t.lanes;n&=e.pendingLanes,l|=n,t.lanes=l,Cr(e,l)}}function Es(e,t){var l=e.updateQueue,n=e.alternate;if(n!==null&&(n=n.updateQueue,l===n)){var a=null,u=null;if(l=l.firstBaseUpdate,l!==null){do{var o={lane:l.lane,tag:l.tag,payload:l.payload,callback:null,next:null};u===null?a=u=o:u=u.next=o,l=l.next}while(l!==null);u===null?a=u=t:u=u.next=t}else a=u=t;l={baseState:n.baseState,firstBaseUpdate:a,lastBaseUpdate:u,shared:n.shared,callbacks:n.callbacks},e.updateQueue=l;return}e=l.lastBaseUpdate,e===null?l.firstBaseUpdate=t:e.next=t,l.lastBaseUpdate=t}var _s=!1;function da(){if(_s){var e=_n;if(e!==null)throw e}}function ma(e,t,l,n){_s=!1;var a=e.updateQueue;vl=!1;var u=a.firstBaseUpdate,o=a.lastBaseUpdate,h=a.shared.pending;if(h!==null){a.shared.pending=null;var p=h,A=p.next;p.next=null,o===null?u=A:o.next=A,o=p;var z=e.alternate;z!==null&&(z=z.updateQueue,h=z.lastBaseUpdate,h!==o&&(h===null?z.firstBaseUpdate=A:h.next=A,z.lastBaseUpdate=p))}if(u!==null){var U=a.baseState;o=0,z=A=p=null,h=u;do{var R=h.lane&-536870913,O=R!==h.lane;if(O?(ie&R)===R:(n&R)===R){R!==0&&R===En&&(_s=!0),z!==null&&(z=z.next={lane:0,tag:h.tag,payload:h.payload,callback:null,next:null});e:{var Q=e,$=h;R=t;var be=l;switch($.tag){case 1:if(Q=$.payload,typeof Q=="function"){U=Q.call(be,U,R);break e}U=Q;break e;case 3:Q.flags=Q.flags&-65537|128;case 0:if(Q=$.payload,R=typeof Q=="function"?Q.call(be,U,R):Q,R==null)break e;U=N({},U,R);break e;case 2:vl=!0}}R=h.callback,R!==null&&(e.flags|=64,O&&(e.flags|=8192),O=a.callbacks,O===null?a.callbacks=[R]:O.push(R))}else O={lane:R,tag:h.tag,payload:h.payload,callback:h.callback,next:null},z===null?(A=z=O,p=U):z=z.next=O,o|=R;if(h=h.next,h===null){if(h=a.shared.pending,h===null)break;O=h,h=O.next,O.next=null,a.lastBaseUpdate=O,a.shared.pending=null}}while(!0);z===null&&(p=U),a.baseState=p,a.firstBaseUpdate=A,a.lastBaseUpdate=z,u===null&&(a.shared.lanes=0),Tl|=o,e.lanes=o,e.memoizedState=U}}function Yo(e,t){if(typeof e!="function")throw Error(r(191,e));e.call(t)}function Xo(e,t){var l=e.callbacks;if(l!==null)for(e.callbacks=null,e=0;eu?u:8;var o=M.T,h={};M.T=h,Gs(e,!1,t,l);try{var p=a(),A=M.S;if(A!==null&&A(h,p),p!==null&&typeof p=="object"&&typeof p.then=="function"){var z=Xy(p,n);va(e,t,z,pt(e))}else va(e,t,n,pt(e))}catch(U){va(e,t,{then:function(){},status:"rejected",reason:U},pt())}finally{q.p=u,o!==null&&h.types!==null&&(o.types=h.types),M.T=o}}function ky(){}function Ys(e,t,l,n){if(e.tag!==5)throw Error(r(476));var a=Sf(e).queue;bf(e,a,t,W,l===null?ky:function(){return xf(e),l(n)})}function Sf(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:W,baseState:W,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Ft,lastRenderedState:W},next:null};var l={};return t.next={memoizedState:l,baseState:l,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Ft,lastRenderedState:l},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function xf(e){var t=Sf(e);t.next===null&&(t=e.alternate.memoizedState),va(e,t.next.queue,{},pt())}function Xs(){return Ze(wa)}function Ef(){return De().memoizedState}function _f(){return De().memoizedState}function Jy(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var l=pt();e=gl(l);var n=bl(t,e,l);n!==null&&(at(n,t,l),ha(n,t,l)),t={cache:ps()},e.payload=t;return}t=t.return}}function $y(e,t,l){var n=pt();l={lane:n,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},Mi(e)?Af(t,l):(l=is(e,t,l,n),l!==null&&(at(l,e,n),Rf(l,t,n)))}function Tf(e,t,l){var n=pt();va(e,t,l,n)}function va(e,t,l,n){var a={lane:n,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null};if(Mi(e))Af(t,a);else{var u=e.alternate;if(e.lanes===0&&(u===null||u.lanes===0)&&(u=t.lastRenderedReducer,u!==null))try{var o=t.lastRenderedState,h=u(o,l);if(a.hasEagerState=!0,a.eagerState=h,ot(h,o))return fi(e,t,a,0),xe===null&&oi(),!1}catch{}finally{}if(l=is(e,t,a,n),l!==null)return at(l,e,n),Rf(l,t,n),!0}return!1}function Gs(e,t,l,n){if(n={lane:2,revertLane:Sc(),gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},Mi(e)){if(t)throw Error(r(479))}else t=is(e,l,n,2),t!==null&&at(t,e,2)}function Mi(e){var t=e.alternate;return e===I||t!==null&&t===I}function Af(e,t){Nn=Ti=!0;var l=e.pending;l===null?t.next=t:(t.next=l.next,l.next=t),e.pending=t}function Rf(e,t,l){if((l&4194048)!==0){var n=t.lanes;n&=e.pendingLanes,l|=n,t.lanes=l,Cr(e,l)}}var ga={readContext:Ze,use:Ni,useCallback:Oe,useContext:Oe,useEffect:Oe,useImperativeHandle:Oe,useLayoutEffect:Oe,useInsertionEffect:Oe,useMemo:Oe,useReducer:Oe,useRef:Oe,useState:Oe,useDebugValue:Oe,useDeferredValue:Oe,useTransition:Oe,useSyncExternalStore:Oe,useId:Oe,useHostTransitionStatus:Oe,useFormState:Oe,useActionState:Oe,useOptimistic:Oe,useMemoCache:Oe,useCacheRefresh:Oe};ga.useEffectEvent=Oe;var Nf={readContext:Ze,use:Ni,useCallback:function(e,t){return We().memoizedState=[e,t===void 0?null:t],e},useContext:Ze,useEffect:of,useImperativeHandle:function(e,t,l){l=l!=null?l.concat([e]):null,Ci(4194308,4,mf.bind(null,t,e),l)},useLayoutEffect:function(e,t){return Ci(4194308,4,e,t)},useInsertionEffect:function(e,t){Ci(4,2,e,t)},useMemo:function(e,t){var l=We();t=t===void 0?null:t;var n=e();if(Pl){ol(!0);try{e()}finally{ol(!1)}}return l.memoizedState=[n,t],n},useReducer:function(e,t,l){var n=We();if(l!==void 0){var a=l(t);if(Pl){ol(!0);try{l(t)}finally{ol(!1)}}}else a=t;return n.memoizedState=n.baseState=a,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:a},n.queue=e,e=e.dispatch=$y.bind(null,I,e),[n.memoizedState,e]},useRef:function(e){var t=We();return e={current:e},t.memoizedState=e},useState:function(e){e=Bs(e);var t=e.queue,l=Tf.bind(null,I,t);return t.dispatch=l,[e.memoizedState,l]},useDebugValue:qs,useDeferredValue:function(e,t){var l=We();return Ls(l,e,t)},useTransition:function(){var e=Bs(!1);return e=bf.bind(null,I,e.queue,!0,!1),We().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,l){var n=I,a=We();if(se){if(l===void 0)throw Error(r(407));l=l()}else{if(l=t(),xe===null)throw Error(r(349));(ie&127)!==0||ko(n,t,l)}a.memoizedState=l;var u={value:l,getSnapshot:t};return a.queue=u,of($o.bind(null,n,u,e),[e]),n.flags|=2048,Cn(9,{destroy:void 0},Jo.bind(null,n,u,l,t),null),l},useId:function(){var e=We(),t=xe.identifierPrefix;if(se){var l=jt,n=Bt;l=(n&~(1<<32-rt(n)-1)).toString(32)+l,t="_"+t+"R_"+l,l=Ai++,0<\/script>",u=u.removeChild(u.firstChild);break;case"select":u=typeof n.is=="string"?o.createElement("select",{is:n.is}):o.createElement("select"),n.multiple?u.multiple=!0:n.size&&(u.size=n.size);break;default:u=typeof n.is=="string"?o.createElement(a,{is:n.is}):o.createElement(a)}}u[Qe]=t,u[Pe]=n;e:for(o=t.child;o!==null;){if(o.tag===5||o.tag===6)u.appendChild(o.stateNode);else if(o.tag!==4&&o.tag!==27&&o.child!==null){o.child.return=o,o=o.child;continue}if(o===t)break e;for(;o.sibling===null;){if(o.return===null||o.return===t)break e;o=o.return}o.sibling.return=o.return,o=o.sibling}t.stateNode=u;e:switch(ke(u,a,n),a){case"button":case"input":case"select":case"textarea":n=!!n.autoFocus;break e;case"img":n=!0;break e;default:n=!1}n&&It(t)}}return _e(t),lc(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,l),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==n&&It(t);else{if(typeof n!="string"&&t.stateNode===null)throw Error(r(166));if(e=le.current,Sn(t)){if(e=t.stateNode,l=t.memoizedProps,n=null,a=Ve,a!==null)switch(a.tag){case 27:case 5:n=a.memoizedProps}e[Qe]=t,e=!!(e.nodeValue===l||n!==null&&n.suppressHydrationWarning===!0||Kh(e.nodeValue,l)),e||yl(t,!0)}else e=Fi(e).createTextNode(n),e[Qe]=t,t.stateNode=e}return _e(t),null;case 31:if(l=t.memoizedState,e===null||e.memoizedState!==null){if(n=Sn(t),l!==null){if(e===null){if(!n)throw Error(r(318));if(e=t.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(r(557));e[Qe]=t}else Zl(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;_e(t),e=!1}else l=hs(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=l),e=!0;if(!e)return t.flags&256?(dt(t),t):(dt(t),null);if((t.flags&128)!==0)throw Error(r(558))}return _e(t),null;case 13:if(n=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(a=Sn(t),n!==null&&n.dehydrated!==null){if(e===null){if(!a)throw Error(r(318));if(a=t.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(r(317));a[Qe]=t}else Zl(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;_e(t),a=!1}else a=hs(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=a),a=!0;if(!a)return t.flags&256?(dt(t),t):(dt(t),null)}return dt(t),(t.flags&128)!==0?(t.lanes=l,t):(l=n!==null,e=e!==null&&e.memoizedState!==null,l&&(n=t.child,a=null,n.alternate!==null&&n.alternate.memoizedState!==null&&n.alternate.memoizedState.cachePool!==null&&(a=n.alternate.memoizedState.cachePool.pool),u=null,n.memoizedState!==null&&n.memoizedState.cachePool!==null&&(u=n.memoizedState.cachePool.pool),u!==a&&(n.flags|=2048)),l!==e&&l&&(t.child.flags|=8192),ji(t,t.updateQueue),_e(t),null);case 4:return ze(),e===null&&Tc(t.stateNode.containerInfo),_e(t),null;case 10:return $t(t.type),_e(t),null;case 19:if(B(Me),n=t.memoizedState,n===null)return _e(t),null;if(a=(t.flags&128)!==0,u=n.rendering,u===null)if(a)Sa(n,!1);else{if(Ce!==0||e!==null&&(e.flags&128)!==0)for(e=t.child;e!==null;){if(u=_i(e),u!==null){for(t.flags|=128,Sa(n,!1),e=u.updateQueue,t.updateQueue=e,ji(t,e),t.subtreeFlags=0,e=l,l=t.child;l!==null;)_o(l,e),l=l.sibling;return L(Me,Me.current&1|2),se&&kt(t,n.treeForkCount),t.child}e=e.sibling}n.tail!==null&&st()>Xi&&(t.flags|=128,a=!0,Sa(n,!1),t.lanes=4194304)}else{if(!a)if(e=_i(u),e!==null){if(t.flags|=128,a=!0,e=e.updateQueue,t.updateQueue=e,ji(t,e),Sa(n,!0),n.tail===null&&n.tailMode==="hidden"&&!u.alternate&&!se)return _e(t),null}else 2*st()-n.renderingStartTime>Xi&&l!==536870912&&(t.flags|=128,a=!0,Sa(n,!1),t.lanes=4194304);n.isBackwards?(u.sibling=t.child,t.child=u):(e=n.last,e!==null?e.sibling=u:t.child=u,n.last=u)}return n.tail!==null?(e=n.tail,n.rendering=e,n.tail=e.sibling,n.renderingStartTime=st(),e.sibling=null,l=Me.current,L(Me,a?l&1|2:l&1),se&&kt(t,n.treeForkCount),e):(_e(t),null);case 22:case 23:return dt(t),As(),n=t.memoizedState!==null,e!==null?e.memoizedState!==null!==n&&(t.flags|=8192):n&&(t.flags|=8192),n?(l&536870912)!==0&&(t.flags&128)===0&&(_e(t),t.subtreeFlags&6&&(t.flags|=8192)):_e(t),l=t.updateQueue,l!==null&&ji(t,l.retryQueue),l=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(l=e.memoizedState.cachePool.pool),n=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(n=t.memoizedState.cachePool.pool),n!==l&&(t.flags|=2048),e!==null&&B(Jl),null;case 24:return l=null,e!==null&&(l=e.memoizedState.cache),t.memoizedState.cache!==l&&(t.flags|=2048),$t(Ue),_e(t),null;case 25:return null;case 30:return null}throw Error(r(156,t.tag))}function ep(e,t){switch(os(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return $t(Ue),ze(),e=t.flags,(e&65536)!==0&&(e&128)===0?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return ka(t),null;case 31:if(t.memoizedState!==null){if(dt(t),t.alternate===null)throw Error(r(340));Zl()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(dt(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(r(340));Zl()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return B(Me),null;case 4:return ze(),null;case 10:return $t(t.type),null;case 22:case 23:return dt(t),As(),e!==null&&B(Jl),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return $t(Ue),null;case 25:return null;default:return null}}function Ff(e,t){switch(os(t),t.tag){case 3:$t(Ue),ze();break;case 26:case 27:case 5:ka(t);break;case 4:ze();break;case 31:t.memoizedState!==null&&dt(t);break;case 13:dt(t);break;case 19:B(Me);break;case 10:$t(t.type);break;case 22:case 23:dt(t),As(),e!==null&&B(Jl);break;case 24:$t(Ue)}}function xa(e,t){try{var l=t.updateQueue,n=l!==null?l.lastEffect:null;if(n!==null){var a=n.next;l=a;do{if((l.tag&e)===e){n=void 0;var u=l.create,o=l.inst;n=u(),o.destroy=n}l=l.next}while(l!==a)}}catch(h){ye(t,t.return,h)}}function El(e,t,l){try{var n=t.updateQueue,a=n!==null?n.lastEffect:null;if(a!==null){var u=a.next;n=u;do{if((n.tag&e)===e){var o=n.inst,h=o.destroy;if(h!==void 0){o.destroy=void 0,a=t;var p=l,A=h;try{A()}catch(z){ye(a,p,z)}}}n=n.next}while(n!==u)}}catch(z){ye(t,t.return,z)}}function Pf(e){var t=e.updateQueue;if(t!==null){var l=e.stateNode;try{Xo(t,l)}catch(n){ye(e,e.return,n)}}}function If(e,t,l){l.props=Il(e.type,e.memoizedProps),l.state=e.memoizedState;try{l.componentWillUnmount()}catch(n){ye(e,t,n)}}function Ea(e,t){try{var l=e.ref;if(l!==null){switch(e.tag){case 26:case 27:case 5:var n=e.stateNode;break;case 30:n=e.stateNode;break;default:n=e.stateNode}typeof l=="function"?e.refCleanup=l(n):l.current=n}}catch(a){ye(e,t,a)}}function Ht(e,t){var l=e.ref,n=e.refCleanup;if(l!==null)if(typeof n=="function")try{n()}catch(a){ye(e,t,a)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof l=="function")try{l(null)}catch(a){ye(e,t,a)}else l.current=null}function eh(e){var t=e.type,l=e.memoizedProps,n=e.stateNode;try{e:switch(t){case"button":case"input":case"select":case"textarea":l.autoFocus&&n.focus();break e;case"img":l.src?n.src=l.src:l.srcSet&&(n.srcset=l.srcSet)}}catch(a){ye(e,e.return,a)}}function nc(e,t,l){try{var n=e.stateNode;Ep(n,e.type,l,t),n[Pe]=t}catch(a){ye(e,e.return,a)}}function th(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&Cl(e.type)||e.tag===4}function ac(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||th(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&&Cl(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 ic(e,t,l){var n=e.tag;if(n===5||n===6)e=e.stateNode,t?(l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l).insertBefore(e,t):(t=l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l,t.appendChild(e),l=l._reactRootContainer,l!=null||t.onclick!==null||(t.onclick=Vt));else if(n!==4&&(n===27&&Cl(e.type)&&(l=e.stateNode,t=null),e=e.child,e!==null))for(ic(e,t,l),e=e.sibling;e!==null;)ic(e,t,l),e=e.sibling}function Hi(e,t,l){var n=e.tag;if(n===5||n===6)e=e.stateNode,t?l.insertBefore(e,t):l.appendChild(e);else if(n!==4&&(n===27&&Cl(e.type)&&(l=e.stateNode),e=e.child,e!==null))for(Hi(e,t,l),e=e.sibling;e!==null;)Hi(e,t,l),e=e.sibling}function lh(e){var t=e.stateNode,l=e.memoizedProps;try{for(var n=e.type,a=t.attributes;a.length;)t.removeAttributeNode(a[0]);ke(t,n,l),t[Qe]=e,t[Pe]=l}catch(u){ye(e,e.return,u)}}var el=!1,je=!1,uc=!1,nh=typeof WeakSet=="function"?WeakSet:Set,Ge=null;function tp(e,t){if(e=e.containerInfo,Nc=au,e=mo(e),Iu(e)){if("selectionStart"in e)var l={start:e.selectionStart,end:e.selectionEnd};else e:{l=(l=e.ownerDocument)&&l.defaultView||window;var n=l.getSelection&&l.getSelection();if(n&&n.rangeCount!==0){l=n.anchorNode;var a=n.anchorOffset,u=n.focusNode;n=n.focusOffset;try{l.nodeType,u.nodeType}catch{l=null;break e}var o=0,h=-1,p=-1,A=0,z=0,U=e,R=null;t:for(;;){for(var O;U!==l||a!==0&&U.nodeType!==3||(h=o+a),U!==u||n!==0&&U.nodeType!==3||(p=o+n),U.nodeType===3&&(o+=U.nodeValue.length),(O=U.firstChild)!==null;)R=U,U=O;for(;;){if(U===e)break t;if(R===l&&++A===a&&(h=o),R===u&&++z===n&&(p=o),(O=U.nextSibling)!==null)break;U=R,R=U.parentNode}U=O}l=h===-1||p===-1?null:{start:h,end:p}}else l=null}l=l||{start:0,end:0}}else l=null;for(Oc={focusedElem:e,selectionRange:l},au=!1,Ge=t;Ge!==null;)if(t=Ge,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,Ge=e;else for(;Ge!==null;){switch(t=Ge,u=t.alternate,e=t.flags,t.tag){case 0:if((e&4)!==0&&(e=t.updateQueue,e=e!==null?e.events:null,e!==null))for(l=0;l title"))),ke(u,n,l),u[Qe]=e,Xe(u),n=u;break e;case"link":var o=rd("link","href",a).get(n+(l.href||""));if(o){for(var h=0;hbe&&(o=be,be=$,$=o);var E=fo(h,$),g=fo(h,be);if(E&&g&&(O.rangeCount!==1||O.anchorNode!==E.node||O.anchorOffset!==E.offset||O.focusNode!==g.node||O.focusOffset!==g.offset)){var T=U.createRange();T.setStart(E.node,E.offset),O.removeAllRanges(),$>be?(O.addRange(T),O.extend(g.node,g.offset)):(T.setEnd(g.node,g.offset),O.addRange(T))}}}}for(U=[],O=h;O=O.parentNode;)O.nodeType===1&&U.push({element:O,left:O.scrollLeft,top:O.scrollTop});for(typeof h.focus=="function"&&h.focus(),h=0;hl?32:l,M.T=null,l=dc,dc=null;var u=Rl,o=il;if(Ye=0,wn=Rl=null,il=0,(fe&6)!==0)throw Error(r(331));var h=fe;if(fe|=4,mh(u.current),fh(u,u.current,o,l),fe=h,Oa(0,!1),ct&&typeof ct.onPostCommitFiberRoot=="function")try{ct.onPostCommitFiberRoot(Kn,u)}catch{}return!0}finally{q.p=a,M.T=n,Dh(e,t)}}function wh(e,t,l){t=xt(l,t),t=Ks(e.stateNode,t,2),e=bl(e,t,2),e!==null&&(Jn(e,2),qt(e))}function ye(e,t,l){if(e.tag===3)wh(e,e,l);else for(;t!==null;){if(t.tag===3){wh(t,e,l);break}else if(t.tag===1){var n=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof n.componentDidCatch=="function"&&(Al===null||!Al.has(n))){e=xt(l,e),l=Bf(2),n=bl(t,l,2),n!==null&&(jf(l,n,t,e),Jn(n,2),qt(n));break}}t=t.return}}function vc(e,t,l){var n=e.pingCache;if(n===null){n=e.pingCache=new ap;var a=new Set;n.set(t,a)}else a=n.get(t),a===void 0&&(a=new Set,n.set(t,a));a.has(l)||(rc=!0,a.add(l),e=rp.bind(null,e,t,l),t.then(e,e))}function rp(e,t,l){var n=e.pingCache;n!==null&&n.delete(t),e.pingedLanes|=e.suspendedLanes&l,e.warmLanes&=~l,xe===e&&(ie&l)===l&&(Ce===4||Ce===3&&(ie&62914560)===ie&&300>st()-Yi?(fe&2)===0&&Bn(e,0):oc|=l,Un===ie&&(Un=0)),qt(e)}function Bh(e,t){t===0&&(t=Nr()),e=Ql(e,t),e!==null&&(Jn(e,t),qt(e))}function op(e){var t=e.memoizedState,l=0;t!==null&&(l=t.retryLane),Bh(e,l)}function fp(e,t){var l=0;switch(e.tag){case 31:case 13:var n=e.stateNode,a=e.memoizedState;a!==null&&(l=a.retryLane);break;case 19:n=e.stateNode;break;case 22:n=e.stateNode._retryCache;break;default:throw Error(r(314))}n!==null&&n.delete(t),Bh(e,l)}function hp(e,t){return zu(e,t)}var ki=null,Hn=null,gc=!1,Ji=!1,bc=!1,Ol=0;function qt(e){e!==Hn&&e.next===null&&(Hn===null?ki=Hn=e:Hn=Hn.next=e),Ji=!0,gc||(gc=!0,mp())}function Oa(e,t){if(!bc&&Ji){bc=!0;do for(var l=!1,n=ki;n!==null;){if(e!==0){var a=n.pendingLanes;if(a===0)var u=0;else{var o=n.suspendedLanes,h=n.pingedLanes;u=(1<<31-rt(42|e)+1)-1,u&=a&~(o&~h),u=u&201326741?u&201326741|1:u?u|2:0}u!==0&&(l=!0,Lh(n,u))}else u=ie,u=Pa(n,n===xe?u:0,n.cancelPendingCommit!==null||n.timeoutHandle!==-1),(u&3)===0||kn(n,u)||(l=!0,Lh(n,u));n=n.next}while(l);bc=!1}}function dp(){jh()}function jh(){Ji=gc=!1;var e=0;Ol!==0&&Tp()&&(e=Ol);for(var t=st(),l=null,n=ki;n!==null;){var a=n.next,u=Hh(n,t);u===0?(n.next=null,l===null?ki=a:l.next=a,a===null&&(Hn=l)):(l=n,(e!==0||(u&3)!==0)&&(Ji=!0)),n=a}Ye!==0&&Ye!==5||Oa(e),Ol!==0&&(Ol=0)}function Hh(e,t){for(var l=e.suspendedLanes,n=e.pingedLanes,a=e.expirationTimes,u=e.pendingLanes&-62914561;0h)break;var z=p.transferSize,U=p.initiatorType;z&&kh(U)&&(p=p.responseEnd,o+=z*(p"u"?null:document;function id(e,t,l){var n=qn;if(n&&typeof t=="string"&&t){var a=bt(t);a='link[rel="'+e+'"][href="'+a+'"]',typeof l=="string"&&(a+='[crossorigin="'+l+'"]'),ad.has(a)||(ad.add(a),e={rel:e,crossOrigin:l,href:t},n.querySelector(a)===null&&(t=n.createElement("link"),ke(t,"link",e),Xe(t),n.head.appendChild(t)))}}function Up(e){ul.D(e),id("dns-prefetch",e,null)}function wp(e,t){ul.C(e,t),id("preconnect",e,t)}function Bp(e,t,l){ul.L(e,t,l);var n=qn;if(n&&e&&t){var a='link[rel="preload"][as="'+bt(t)+'"]';t==="image"&&l&&l.imageSrcSet?(a+='[imagesrcset="'+bt(l.imageSrcSet)+'"]',typeof l.imageSizes=="string"&&(a+='[imagesizes="'+bt(l.imageSizes)+'"]')):a+='[href="'+bt(e)+'"]';var u=a;switch(t){case"style":u=Ln(e);break;case"script":u=Yn(e)}Nt.has(u)||(e=N({rel:"preload",href:t==="image"&&l&&l.imageSrcSet?void 0:e,as:t},l),Nt.set(u,e),n.querySelector(a)!==null||t==="style"&&n.querySelector(Da(u))||t==="script"&&n.querySelector(Ua(u))||(t=n.createElement("link"),ke(t,"link",e),Xe(t),n.head.appendChild(t)))}}function jp(e,t){ul.m(e,t);var l=qn;if(l&&e){var n=t&&typeof t.as=="string"?t.as:"script",a='link[rel="modulepreload"][as="'+bt(n)+'"][href="'+bt(e)+'"]',u=a;switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":u=Yn(e)}if(!Nt.has(u)&&(e=N({rel:"modulepreload",href:e},t),Nt.set(u,e),l.querySelector(a)===null)){switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(l.querySelector(Ua(u)))return}n=l.createElement("link"),ke(n,"link",e),Xe(n),l.head.appendChild(n)}}}function Hp(e,t,l){ul.S(e,t,l);var n=qn;if(n&&e){var a=sn(n).hoistableStyles,u=Ln(e);t=t||"default";var o=a.get(u);if(!o){var h={loading:0,preload:null};if(o=n.querySelector(Da(u)))h.loading=5;else{e=N({rel:"stylesheet",href:e,"data-precedence":t},l),(l=Nt.get(u))&&Bc(e,l);var p=o=n.createElement("link");Xe(p),ke(p,"link",e),p._p=new Promise(function(A,z){p.onload=A,p.onerror=z}),p.addEventListener("load",function(){h.loading|=1}),p.addEventListener("error",function(){h.loading|=2}),h.loading|=4,Ii(o,t,n)}o={type:"stylesheet",instance:o,count:1,state:h},a.set(u,o)}}}function qp(e,t){ul.X(e,t);var l=qn;if(l&&e){var n=sn(l).hoistableScripts,a=Yn(e),u=n.get(a);u||(u=l.querySelector(Ua(a)),u||(e=N({src:e,async:!0},t),(t=Nt.get(a))&&jc(e,t),u=l.createElement("script"),Xe(u),ke(u,"link",e),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(a,u))}}function Lp(e,t){ul.M(e,t);var l=qn;if(l&&e){var n=sn(l).hoistableScripts,a=Yn(e),u=n.get(a);u||(u=l.querySelector(Ua(a)),u||(e=N({src:e,async:!0,type:"module"},t),(t=Nt.get(a))&&jc(e,t),u=l.createElement("script"),Xe(u),ke(u,"link",e),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(a,u))}}function ud(e,t,l,n){var a=(a=le.current)?Pi(a):null;if(!a)throw Error(r(446));switch(e){case"meta":case"title":return null;case"style":return typeof l.precedence=="string"&&typeof l.href=="string"?(t=Ln(l.href),l=sn(a).hoistableStyles,n=l.get(t),n||(n={type:"style",instance:null,count:0,state:null},l.set(t,n)),n):{type:"void",instance:null,count:0,state:null};case"link":if(l.rel==="stylesheet"&&typeof l.href=="string"&&typeof l.precedence=="string"){e=Ln(l.href);var u=sn(a).hoistableStyles,o=u.get(e);if(o||(a=a.ownerDocument||a,o={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},u.set(e,o),(u=a.querySelector(Da(e)))&&!u._p&&(o.instance=u,o.state.loading=5),Nt.has(e)||(l={rel:"preload",as:"style",href:l.href,crossOrigin:l.crossOrigin,integrity:l.integrity,media:l.media,hrefLang:l.hrefLang,referrerPolicy:l.referrerPolicy},Nt.set(e,l),u||Yp(a,e,l,o.state))),t&&n===null)throw Error(r(528,""));return o}if(t&&n!==null)throw Error(r(529,""));return null;case"script":return t=l.async,l=l.src,typeof l=="string"&&t&&typeof t!="function"&&typeof t!="symbol"?(t=Yn(l),l=sn(a).hoistableScripts,n=l.get(t),n||(n={type:"script",instance:null,count:0,state:null},l.set(t,n)),n):{type:"void",instance:null,count:0,state:null};default:throw Error(r(444,e))}}function Ln(e){return'href="'+bt(e)+'"'}function Da(e){return'link[rel="stylesheet"]['+e+"]"}function sd(e){return N({},e,{"data-precedence":e.precedence,precedence:null})}function Yp(e,t,l,n){e.querySelector('link[rel="preload"][as="style"]['+t+"]")?n.loading=1:(t=e.createElement("link"),n.preload=t,t.addEventListener("load",function(){return n.loading|=1}),t.addEventListener("error",function(){return n.loading|=2}),ke(t,"link",l),Xe(t),e.head.appendChild(t))}function Yn(e){return'[src="'+bt(e)+'"]'}function Ua(e){return"script[async]"+e}function cd(e,t,l){if(t.count++,t.instance===null)switch(t.type){case"style":var n=e.querySelector('style[data-href~="'+bt(l.href)+'"]');if(n)return t.instance=n,Xe(n),n;var a=N({},l,{"data-href":l.href,"data-precedence":l.precedence,href:null,precedence:null});return n=(e.ownerDocument||e).createElement("style"),Xe(n),ke(n,"style",a),Ii(n,l.precedence,e),t.instance=n;case"stylesheet":a=Ln(l.href);var u=e.querySelector(Da(a));if(u)return t.state.loading|=4,t.instance=u,Xe(u),u;n=sd(l),(a=Nt.get(a))&&Bc(n,a),u=(e.ownerDocument||e).createElement("link"),Xe(u);var o=u;return o._p=new Promise(function(h,p){o.onload=h,o.onerror=p}),ke(u,"link",n),t.state.loading|=4,Ii(u,l.precedence,e),t.instance=u;case"script":return u=Yn(l.src),(a=e.querySelector(Ua(u)))?(t.instance=a,Xe(a),a):(n=l,(a=Nt.get(u))&&(n=N({},l),jc(n,a)),e=e.ownerDocument||e,a=e.createElement("script"),Xe(a),ke(a,"link",n),e.head.appendChild(a),t.instance=a);case"void":return null;default:throw Error(r(443,t.type))}else t.type==="stylesheet"&&(t.state.loading&4)===0&&(n=t.instance,t.state.loading|=4,Ii(n,l.precedence,e));return t.instance}function Ii(e,t,l){for(var n=l.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=n.length?n[n.length-1]:null,u=a,o=0;o title"):null)}function Xp(e,t,l){if(l===1||t.itemProp!=null)return!1;switch(e){case"meta":case"title":return!0;case"style":if(typeof t.precedence!="string"||typeof t.href!="string"||t.href==="")break;return!0;case"link":if(typeof t.rel!="string"||typeof t.href!="string"||t.href===""||t.onLoad||t.onError)break;switch(t.rel){case"stylesheet":return e=t.disabled,typeof t.precedence=="string"&&e==null;default:return!0}case"script":if(t.async&&typeof t.async!="function"&&typeof t.async!="symbol"&&!t.onLoad&&!t.onError&&t.src&&typeof t.src=="string")return!0}return!1}function fd(e){return!(e.type==="stylesheet"&&(e.state.loading&3)===0)}function Gp(e,t,l,n){if(l.type==="stylesheet"&&(typeof n.media!="string"||matchMedia(n.media).matches!==!1)&&(l.state.loading&4)===0){if(l.instance===null){var a=Ln(n.href),u=t.querySelector(Da(a));if(u){t=u._p,t!==null&&typeof t=="object"&&typeof t.then=="function"&&(e.count++,e=tu.bind(e),t.then(e,e)),l.state.loading|=4,l.instance=u,Xe(u);return}u=t.ownerDocument||t,n=sd(n),(a=Nt.get(a))&&Bc(n,a),u=u.createElement("link"),Xe(u);var o=u;o._p=new Promise(function(h,p){o.onload=h,o.onerror=p}),ke(u,"link",n),l.instance=u}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(l,t),(t=l.state.preload)&&(l.state.loading&3)===0&&(e.count++,l=tu.bind(e),t.addEventListener("load",l),t.addEventListener("error",l))}}var Hc=0;function Qp(e,t){return e.stylesheets&&e.count===0&&nu(e,e.stylesheets),0Hc?50:800)+t);return e.unsuspend=l,function(){e.unsuspend=null,clearTimeout(n),clearTimeout(a)}}:null}function tu(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)nu(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var lu=null;function nu(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,lu=new Map,t.forEach(Vp,e),lu=null,tu.call(e))}function Vp(e,t){if(!(t.state.loading&4)){var l=lu.get(e);if(l)var n=l.get(null);else{l=new Map,lu.set(e,l);for(var a=e.querySelectorAll("link[data-precedence],style[data-precedence]"),u=0;u"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(s)}catch(i){console.error(i)}}return s(),Kc.exports=u0(),Kc.exports}var c0=s0();var Bd="popstate";function r0(s={}){function i(r,f){let{pathname:d,search:m,hash:b}=r.location;return tr("",{pathname:d,search:m,hash:b},f.state&&f.state.usr||null,f.state&&f.state.key||"default")}function c(r,f){return typeof f=="string"?f:Qa(f)}return f0(i,c,null,s)}function Re(s,i){if(s===!1||s===null||typeof s>"u")throw new Error(i)}function wt(s,i){if(!s){typeof console<"u"&&console.warn(i);try{throw new Error(i)}catch{}}}function o0(){return Math.random().toString(36).substring(2,10)}function jd(s,i){return{usr:s.state,key:s.key,idx:i}}function tr(s,i,c=null,r){return{pathname:typeof s=="string"?s:s.pathname,search:"",hash:"",...typeof i=="string"?Gn(i):i,state:c,key:i&&i.key||r||o0()}}function Qa({pathname:s="/",search:i="",hash:c=""}){return i&&i!=="?"&&(s+=i.charAt(0)==="?"?i:"?"+i),c&&c!=="#"&&(s+=c.charAt(0)==="#"?c:"#"+c),s}function Gn(s){let i={};if(s){let c=s.indexOf("#");c>=0&&(i.hash=s.substring(c),s=s.substring(0,c));let r=s.indexOf("?");r>=0&&(i.search=s.substring(r),s=s.substring(0,r)),s&&(i.pathname=s)}return i}function f0(s,i,c,r={}){let{window:f=document.defaultView,v5Compat:d=!1}=r,m=f.history,b="POP",y=null,v=C();v==null&&(v=0,m.replaceState({...m.state,idx:v},""));function C(){return(m.state||{idx:null}).idx}function N(){b="POP";let G=C(),X=G==null?null:G-v;v=G,y&&y({action:b,location:Y.location,delta:X})}function j(G,X){b="PUSH";let V=tr(Y.location,G,X);v=C()+1;let J=jd(V,v),de=Y.createHref(V);try{m.pushState(J,"",de)}catch(Te){if(Te instanceof DOMException&&Te.name==="DataCloneError")throw Te;f.location.assign(de)}d&&y&&y({action:b,location:Y.location,delta:1})}function w(G,X){b="REPLACE";let V=tr(Y.location,G,X);v=C();let J=jd(V,v),de=Y.createHref(V);m.replaceState(J,"",de),d&&y&&y({action:b,location:Y.location,delta:0})}function H(G){return h0(G)}let Y={get action(){return b},get location(){return s(f,m)},listen(G){if(y)throw new Error("A history only accepts one active listener");return f.addEventListener(Bd,N),y=G,()=>{f.removeEventListener(Bd,N),y=null}},createHref(G){return i(f,G)},createURL:H,encodeLocation(G){let X=H(G);return{pathname:X.pathname,search:X.search,hash:X.hash}},push:j,replace:w,go(G){return m.go(G)}};return Y}function h0(s,i=!1){let c="http://localhost";typeof window<"u"&&(c=window.location.origin!=="null"?window.location.origin:window.location.href),Re(c,"No window.location.(origin|href) available to create URL");let r=typeof s=="string"?s:Qa(s);return r=r.replace(/ $/,"%20"),!i&&r.startsWith("//")&&(r=c+r),new URL(r,c)}function kd(s,i,c="/"){return d0(s,i,c,!1)}function d0(s,i,c,r){let f=typeof i=="string"?Gn(i):i,d=cl(f.pathname||"/",c);if(d==null)return null;let m=Jd(s);m0(m);let b=null;for(let y=0;b==null&&y{let C={relativePath:v===void 0?m.path||"":v,caseSensitive:m.caseSensitive===!0,childrenIndex:b,route:m};if(C.relativePath.startsWith("/")){if(!C.relativePath.startsWith(r)&&y)return;Re(C.relativePath.startsWith(r),`Absolute route path "${C.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),C.relativePath=C.relativePath.slice(r.length)}let N=sl([r,C.relativePath]),j=c.concat(C);m.children&&m.children.length>0&&(Re(m.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${N}".`),Jd(m.children,i,j,N,y)),!(m.path==null&&!m.index)&&i.push({path:N,score:x0(N,m.index),routesMeta:j})};return s.forEach((m,b)=>{if(m.path===""||!m.path?.includes("?"))d(m,b);else for(let y of $d(m.path))d(m,b,!0,y)}),i}function $d(s){let i=s.split("/");if(i.length===0)return[];let[c,...r]=i,f=c.endsWith("?"),d=c.replace(/\?$/,"");if(r.length===0)return f?[d,""]:[d];let m=$d(r.join("/")),b=[];return b.push(...m.map(y=>y===""?d:[d,y].join("/"))),f&&b.push(...m),b.map(y=>s.startsWith("/")&&y===""?"/":y)}function m0(s){s.sort((i,c)=>i.score!==c.score?c.score-i.score:E0(i.routesMeta.map(r=>r.childrenIndex),c.routesMeta.map(r=>r.childrenIndex)))}var y0=/^:[\w-]+$/,p0=3,v0=2,g0=1,b0=10,S0=-2,Hd=s=>s==="*";function x0(s,i){let c=s.split("/"),r=c.length;return c.some(Hd)&&(r+=S0),i&&(r+=v0),c.filter(f=>!Hd(f)).reduce((f,d)=>f+(y0.test(d)?p0:d===""?g0:b0),r)}function E0(s,i){return s.length===i.length&&s.slice(0,-1).every((r,f)=>r===i[f])?s[s.length-1]-i[i.length-1]:0}function _0(s,i,c=!1){let{routesMeta:r}=s,f={},d="/",m=[];for(let b=0;b{if(C==="*"){let H=b[j]||"";m=d.slice(0,d.length-H.length).replace(/(.)\/+$/,"$1")}const w=b[j];return N&&!w?v[C]=void 0:v[C]=(w||"").replace(/%2F/g,"/"),v},{}),pathname:d,pathnameBase:m,pattern:s}}function T0(s,i=!1,c=!0){wt(s==="*"||!s.endsWith("*")||s.endsWith("/*"),`Route path "${s}" will be treated as if it were "${s.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${s.replace(/\*$/,"/*")}".`);let r=[],f="^"+s.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(m,b,y)=>(r.push({paramName:b,isOptional:y!=null}),y?"/?([^\\/]+)?":"/([^\\/]+)")).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return s.endsWith("*")?(r.push({paramName:"*"}),f+=s==="*"||s==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):c?f+="\\/*$":s!==""&&s!=="/"&&(f+="(?:(?=\\/|$))"),[new RegExp(f,i?void 0:"i"),r]}function A0(s){try{return s.split("/").map(i=>decodeURIComponent(i).replace(/\//g,"%2F")).join("/")}catch(i){return wt(!1,`The URL path "${s}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${i}).`),s}}function cl(s,i){if(i==="/")return s;if(!s.toLowerCase().startsWith(i.toLowerCase()))return null;let c=i.endsWith("/")?i.length-1:i.length,r=s.charAt(c);return r&&r!=="/"?null:s.slice(c)||"/"}var R0=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,N0=s=>R0.test(s);function O0(s,i="/"){let{pathname:c,search:r="",hash:f=""}=typeof s=="string"?Gn(s):s,d;if(c)if(N0(c))d=c;else{if(c.includes("//")){let m=c;c=c.replace(/\/\/+/g,"/"),wt(!1,`Pathnames cannot have embedded double slashes - normalizing ${m} -> ${c}`)}c.startsWith("/")?d=qd(c.substring(1),"/"):d=qd(c,i)}else d=i;return{pathname:d,search:M0(r),hash:D0(f)}}function qd(s,i){let c=i.replace(/\/+$/,"").split("/");return s.split("/").forEach(f=>{f===".."?c.length>1&&c.pop():f!=="."&&c.push(f)}),c.length>1?c.join("/"):"/"}function Wc(s,i,c,r){return`Cannot include a '${s}' character in a manually specified \`to.${i}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${c}\` field. Alternatively you may provide the full path as a string in and the router will parse it for you.`}function C0(s){return s.filter((i,c)=>c===0||i.route.path&&i.route.path.length>0)}function Wd(s){let i=C0(s);return i.map((c,r)=>r===i.length-1?c.pathname:c.pathnameBase)}function Fd(s,i,c,r=!1){let f;typeof s=="string"?f=Gn(s):(f={...s},Re(!f.pathname||!f.pathname.includes("?"),Wc("?","pathname","search",f)),Re(!f.pathname||!f.pathname.includes("#"),Wc("#","pathname","hash",f)),Re(!f.search||!f.search.includes("#"),Wc("#","search","hash",f)));let d=s===""||f.pathname==="",m=d?"/":f.pathname,b;if(m==null)b=c;else{let N=i.length-1;if(!r&&m.startsWith("..")){let j=m.split("/");for(;j[0]==="..";)j.shift(),N-=1;f.pathname=j.join("/")}b=N>=0?i[N]:"/"}let y=O0(f,b),v=m&&m!=="/"&&m.endsWith("/"),C=(d||m===".")&&c.endsWith("/");return!y.pathname.endsWith("/")&&(v||C)&&(y.pathname+="/"),y}var sl=s=>s.join("/").replace(/\/\/+/g,"/"),z0=s=>s.replace(/\/+$/,"").replace(/^\/*/,"/"),M0=s=>!s||s==="?"?"":s.startsWith("?")?s:"?"+s,D0=s=>!s||s==="#"?"":s.startsWith("#")?s:"#"+s;function U0(s){return s!=null&&typeof s.status=="number"&&typeof s.statusText=="string"&&typeof s.internal=="boolean"&&"data"in s}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var Pd=["POST","PUT","PATCH","DELETE"];new Set(Pd);var w0=["GET",...Pd];new Set(w0);var Qn=_.createContext(null);Qn.displayName="DataRouter";var xu=_.createContext(null);xu.displayName="DataRouterState";_.createContext(!1);var Id=_.createContext({isTransitioning:!1});Id.displayName="ViewTransition";var B0=_.createContext(new Map);B0.displayName="Fetchers";var j0=_.createContext(null);j0.displayName="Await";var Xt=_.createContext(null);Xt.displayName="Navigation";var Va=_.createContext(null);Va.displayName="Location";var rl=_.createContext({outlet:null,matches:[],isDataRoute:!1});rl.displayName="Route";var fr=_.createContext(null);fr.displayName="RouteError";function H0(s,{relative:i}={}){Re(Za(),"useHref() may be used only in the context of a component.");let{basename:c,navigator:r}=_.useContext(Xt),{hash:f,pathname:d,search:m}=Ka(s,{relative:i}),b=d;return c!=="/"&&(b=d==="/"?c:sl([c,d])),r.createHref({pathname:b,search:m,hash:f})}function Za(){return _.useContext(Va)!=null}function ln(){return Re(Za(),"useLocation() may be used only in the context of a component."),_.useContext(Va).location}var em="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function tm(s){_.useContext(Xt).static||_.useLayoutEffect(s)}function q0(){let{isDataRoute:s}=_.useContext(rl);return s?F0():L0()}function L0(){Re(Za(),"useNavigate() may be used only in the context of a component.");let s=_.useContext(Qn),{basename:i,navigator:c}=_.useContext(Xt),{matches:r}=_.useContext(rl),{pathname:f}=ln(),d=JSON.stringify(Wd(r)),m=_.useRef(!1);return tm(()=>{m.current=!0}),_.useCallback((y,v={})=>{if(wt(m.current,em),!m.current)return;if(typeof y=="number"){c.go(y);return}let C=Fd(y,JSON.parse(d),f,v.relative==="path");s==null&&i!=="/"&&(C.pathname=C.pathname==="/"?i:sl([i,C.pathname])),(v.replace?c.replace:c.push)(C,v.state,v)},[i,c,d,f,s])}_.createContext(null);function Ka(s,{relative:i}={}){let{matches:c}=_.useContext(rl),{pathname:r}=ln(),f=JSON.stringify(Wd(c));return _.useMemo(()=>Fd(s,JSON.parse(f),r,i==="path"),[s,f,r,i])}function Y0(s,i){return lm(s,i)}function lm(s,i,c,r,f){Re(Za(),"useRoutes() may be used only in the context of a component.");let{navigator:d}=_.useContext(Xt),{matches:m}=_.useContext(rl),b=m[m.length-1],y=b?b.params:{},v=b?b.pathname:"/",C=b?b.pathnameBase:"/",N=b&&b.route;{let V=N&&N.path||"";nm(v,!N||V.endsWith("*")||V.endsWith("*?"),`You rendered descendant (or called \`useRoutes()\`) at "${v}" (under ) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render. + +Please change the parent to .`)}let j=ln(),w;if(i){let V=typeof i=="string"?Gn(i):i;Re(C==="/"||V.pathname?.startsWith(C),`When overriding the location using \`\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${C}" but pathname "${V.pathname}" was given in the \`location\` prop.`),w=V}else w=j;let H=w.pathname||"/",Y=H;if(C!=="/"){let V=C.replace(/^\//,"").split("/");Y="/"+H.replace(/^\//,"").split("/").slice(V.length).join("/")}let G=kd(s,{pathname:Y});wt(N||G!=null,`No routes matched location "${w.pathname}${w.search}${w.hash}" `),wt(G==null||G[G.length-1].route.element!==void 0||G[G.length-1].route.Component!==void 0||G[G.length-1].route.lazy!==void 0,`Matched leaf route at location "${w.pathname}${w.search}${w.hash}" does not have an element or Component. This means it will render an with a null value by default resulting in an "empty" page.`);let X=Z0(G&&G.map(V=>Object.assign({},V,{params:Object.assign({},y,V.params),pathname:sl([C,d.encodeLocation?d.encodeLocation(V.pathname.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:V.pathname]),pathnameBase:V.pathnameBase==="/"?C:sl([C,d.encodeLocation?d.encodeLocation(V.pathnameBase.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:V.pathnameBase])})),m,c,r,f);return i&&X?_.createElement(Va.Provider,{value:{location:{pathname:"/",search:"",hash:"",state:null,key:"default",...w},navigationType:"POP"}},X):X}function X0(){let s=W0(),i=U0(s)?`${s.status} ${s.statusText}`:s instanceof Error?s.message:JSON.stringify(s),c=s instanceof Error?s.stack:null,r="rgba(200,200,200, 0.5)",f={padding:"0.5rem",backgroundColor:r},d={padding:"2px 4px",backgroundColor:r},m=null;return console.error("Error handled by React Router default ErrorBoundary:",s),m=_.createElement(_.Fragment,null,_.createElement("p",null,"💿 Hey developer 👋"),_.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",_.createElement("code",{style:d},"ErrorBoundary")," or"," ",_.createElement("code",{style:d},"errorElement")," prop on your route.")),_.createElement(_.Fragment,null,_.createElement("h2",null,"Unexpected Application Error!"),_.createElement("h3",{style:{fontStyle:"italic"}},i),c?_.createElement("pre",{style:f},c):null,m)}var G0=_.createElement(X0,null),Q0=class extends _.Component{constructor(s){super(s),this.state={location:s.location,revalidation:s.revalidation,error:s.error}}static getDerivedStateFromError(s){return{error:s}}static getDerivedStateFromProps(s,i){return i.location!==s.location||i.revalidation!=="idle"&&s.revalidation==="idle"?{error:s.error,location:s.location,revalidation:s.revalidation}:{error:s.error!==void 0?s.error:i.error,location:i.location,revalidation:s.revalidation||i.revalidation}}componentDidCatch(s,i){this.props.onError?this.props.onError(s,i):console.error("React Router caught the following error during render",s)}render(){return this.state.error!==void 0?_.createElement(rl.Provider,{value:this.props.routeContext},_.createElement(fr.Provider,{value:this.state.error,children:this.props.component})):this.props.children}};function V0({routeContext:s,match:i,children:c}){let r=_.useContext(Qn);return r&&r.static&&r.staticContext&&(i.route.errorElement||i.route.ErrorBoundary)&&(r.staticContext._deepestRenderedBoundaryId=i.route.id),_.createElement(rl.Provider,{value:s},c)}function Z0(s,i=[],c=null,r=null,f=null){if(s==null){if(!c)return null;if(c.errors)s=c.matches;else if(i.length===0&&!c.initialized&&c.matches.length>0)s=c.matches;else return null}let d=s,m=c?.errors;if(m!=null){let C=d.findIndex(N=>N.route.id&&m?.[N.route.id]!==void 0);Re(C>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(m).join(",")}`),d=d.slice(0,Math.min(d.length,C+1))}let b=!1,y=-1;if(c)for(let C=0;C=0?d=d.slice(0,y+1):d=[d[0]];break}}}let v=c&&r?(C,N)=>{r(C,{location:c.location,params:c.matches?.[0]?.params??{},errorInfo:N})}:void 0;return d.reduceRight((C,N,j)=>{let w,H=!1,Y=null,G=null;c&&(w=m&&N.route.id?m[N.route.id]:void 0,Y=N.route.errorElement||G0,b&&(y<0&&j===0?(nm("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),H=!0,G=null):y===j&&(H=!0,G=N.route.hydrateFallbackElement||null)));let X=i.concat(d.slice(0,j+1)),V=()=>{let J;return w?J=Y:H?J=G:N.route.Component?J=_.createElement(N.route.Component,null):N.route.element?J=N.route.element:J=C,_.createElement(V0,{match:N,routeContext:{outlet:C,matches:X,isDataRoute:c!=null},children:J})};return c&&(N.route.ErrorBoundary||N.route.errorElement||j===0)?_.createElement(Q0,{location:c.location,revalidation:c.revalidation,component:Y,error:w,children:V(),routeContext:{outlet:null,matches:X,isDataRoute:!0},onError:v}):V()},null)}function hr(s){return`${s} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function K0(s){let i=_.useContext(Qn);return Re(i,hr(s)),i}function k0(s){let i=_.useContext(xu);return Re(i,hr(s)),i}function J0(s){let i=_.useContext(rl);return Re(i,hr(s)),i}function dr(s){let i=J0(s),c=i.matches[i.matches.length-1];return Re(c.route.id,`${s} can only be used on routes that contain a unique "id"`),c.route.id}function $0(){return dr("useRouteId")}function W0(){let s=_.useContext(fr),i=k0("useRouteError"),c=dr("useRouteError");return s!==void 0?s:i.errors?.[c]}function F0(){let{router:s}=K0("useNavigate"),i=dr("useNavigate"),c=_.useRef(!1);return tm(()=>{c.current=!0}),_.useCallback(async(f,d={})=>{wt(c.current,em),c.current&&(typeof f=="number"?s.navigate(f):await s.navigate(f,{fromRouteId:i,...d}))},[s,i])}var Ld={};function nm(s,i,c){!i&&!Ld[s]&&(Ld[s]=!0,wt(!1,c))}_.memo(P0);function P0({routes:s,future:i,state:c,unstable_onError:r}){return lm(s,void 0,c,r,i)}function lr(s){Re(!1,"A is only ever to be used as the child of element, never rendered directly. Please wrap your in a .")}function I0({basename:s="/",children:i=null,location:c,navigationType:r="POP",navigator:f,static:d=!1}){Re(!Za(),"You cannot render a inside another . You should never have more than one in your app.");let m=s.replace(/^\/*/,"/"),b=_.useMemo(()=>({basename:m,navigator:f,static:d,future:{}}),[m,f,d]);typeof c=="string"&&(c=Gn(c));let{pathname:y="/",search:v="",hash:C="",state:N=null,key:j="default"}=c,w=_.useMemo(()=>{let H=cl(y,m);return H==null?null:{location:{pathname:H,search:v,hash:C,state:N,key:j},navigationType:r}},[m,y,v,C,N,j,r]);return wt(w!=null,` is not able to match the URL "${y}${v}${C}" because it does not start with the basename, so the won't render anything.`),w==null?null:_.createElement(Xt.Provider,{value:b},_.createElement(Va.Provider,{children:i,value:w}))}function ev({children:s,location:i}){return Y0(nr(s),i)}function nr(s,i=[]){let c=[];return _.Children.forEach(s,(r,f)=>{if(!_.isValidElement(r))return;let d=[...i,f];if(r.type===_.Fragment){c.push.apply(c,nr(r.props.children,d));return}Re(r.type===lr,`[${typeof r.type=="string"?r.type:r.type.name}] is not a component. All component children of must be a or `),Re(!r.props.index||!r.props.children,"An index route cannot have child routes.");let m={id:r.props.id||d.join("-"),caseSensitive:r.props.caseSensitive,element:r.props.element,Component:r.props.Component,index:r.props.index,path:r.props.path,middleware:r.props.middleware,loader:r.props.loader,action:r.props.action,hydrateFallbackElement:r.props.hydrateFallbackElement,HydrateFallback:r.props.HydrateFallback,errorElement:r.props.errorElement,ErrorBoundary:r.props.ErrorBoundary,hasErrorBoundary:r.props.hasErrorBoundary===!0||r.props.ErrorBoundary!=null||r.props.errorElement!=null,shouldRevalidate:r.props.shouldRevalidate,handle:r.props.handle,lazy:r.props.lazy};r.props.children&&(m.children=nr(r.props.children,d)),c.push(m)}),c}var mu="get",yu="application/x-www-form-urlencoded";function Eu(s){return s!=null&&typeof s.tagName=="string"}function tv(s){return Eu(s)&&s.tagName.toLowerCase()==="button"}function lv(s){return Eu(s)&&s.tagName.toLowerCase()==="form"}function nv(s){return Eu(s)&&s.tagName.toLowerCase()==="input"}function av(s){return!!(s.metaKey||s.altKey||s.ctrlKey||s.shiftKey)}function iv(s,i){return s.button===0&&(!i||i==="_self")&&!av(s)}var fu=null;function uv(){if(fu===null)try{new FormData(document.createElement("form"),0),fu=!1}catch{fu=!0}return fu}var sv=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function Fc(s){return s!=null&&!sv.has(s)?(wt(!1,`"${s}" is not a valid \`encType\` for \`\`/\`\` and will default to "${yu}"`),null):s}function cv(s,i){let c,r,f,d,m;if(lv(s)){let b=s.getAttribute("action");r=b?cl(b,i):null,c=s.getAttribute("method")||mu,f=Fc(s.getAttribute("enctype"))||yu,d=new FormData(s)}else if(tv(s)||nv(s)&&(s.type==="submit"||s.type==="image")){let b=s.form;if(b==null)throw new Error('Cannot submit a +

Runs Start → Dock → Full commands to ready the rover.

+
+ + {updated && Updated {updated}} +
+ +
+ +

+ Point the rover straight at the dock, about one foot away, before triggering. +

+
+ + +
+
+ +
+

Manual OI

+
+ {manualOiButtons.map((btn) => ( + + ))} +
+
+
+ +
+ +

Sensor streaming auto-starts after each OI change.

+ + ); +} + +function SpeedRow({ left, right }) { + return ( +
-

Left

-

{left}

+

Left

+

{left}

-

Right

-

{right}

+

Right

+

{right}

); } -export default function DrivePanel() { - const { roverId, speeds, stopMotors, sendOiCommand } = useDriveControls(); - +function StatusPill({ label, active }) { return ( -
-
-
-

Drive Controls

-

- {roverId ? `Driving rover ${roverId}` : 'No rover assigned'} -

-
-
- W/A/S/D: move - Shift: boost -
-
- - - -
- -
- -
-

OI Modes

-
- {oiButtons.map((btn) => ( - - ))} -
-
- -

- Sensor streaming starts automatically after each OI change. Keep this tab focused while driving. -

-
+ + {label} + ); } diff --git a/webui/src/components/MobileControls.jsx b/webui/src/components/MobileControls.jsx new file mode 100644 index 00000000..3182b7d4 --- /dev/null +++ b/webui/src/components/MobileControls.jsx @@ -0,0 +1,128 @@ +import { useCallback } from 'react'; +import { Joystick } from 'react-joystick-component'; +import { useDriveControl } from '../context/DriveControlContext.jsx'; + +function clampUnit(value = 0) { + if (typeof value !== 'number' || Number.isNaN(value)) return 0; + return Math.max(-1, Math.min(1, value)); +} + +function MobileJoystick() { + const { roverId, driveWithVector, stopMotors } = useDriveControl(); + const disabled = !roverId; + + const handleMove = useCallback( + (event = {}) => { + if (disabled) return; + const x = clampUnit(event.x ?? 0); + const y = clampUnit(event.y ?? 0); + driveWithVector({ x, y }); + }, + [disabled, driveWithVector], + ); + + const handleStop = useCallback(() => { + if (disabled) return; + driveWithVector({ x: 0, y: 0 }); + }, [disabled, driveWithVector]); + + return ( +
+
Joystick
+
+ +
+

+ Drag to drive. Release to stop sending drive commands. +

+ +
+ ); +} + +function AuxMotorControls() { + const { roverId, setAuxMotors } = useDriveControl(); + const disabled = !roverId; + + const runAllForward = () => { + if (disabled) return; + setAuxMotors({ main: 127, side: 127, vacuum: 127 }); + }; + + const stopAll = () => { + if (disabled) return; + setAuxMotors({ main: 0, side: 0, vacuum: 0 }); + }; + + const auxButtons = [ + { label: 'Main +', values: { main: 127 } }, + { label: 'Main -', values: { main: -127 } }, + { label: 'Side +', values: { side: 127 } }, + { label: 'Side -', values: { side: -127 } }, + { label: 'Vacuum Max', values: { vacuum: 127 } }, + { label: 'Vacuum Off', values: { vacuum: 0 } }, + ]; + + return ( +
+
Aux Motors
+
+ + +
+
+ {auxButtons.map((btn) => ( + + ))} +
+
+ ); +} + +export default function MobileControlsStack() { + return ( +
+ + +
+ ); +} + +export { MobileJoystick, AuxMotorControls }; diff --git a/webui/src/components/TelemetryPanel.jsx b/webui/src/components/TelemetryPanel.jsx index af75fdbd..298a1443 100644 --- a/webui/src/components/TelemetryPanel.jsx +++ b/webui/src/components/TelemetryPanel.jsx @@ -1,56 +1,56 @@ -import { useMemo } from 'react'; import { useSession } from '../context/SessionContext.jsx'; import { useTelemetryFrame } from '../context/TelemetryContext.jsx'; -function formatEntries(sensors = {}) { - return Object.entries(sensors).map(([key, value]) => ({ - key, - value: typeof value === 'object' ? JSON.stringify(value) : value, - })); +function formatMetric(value, fallback = '--') { + if (value == null || value === '') return fallback; + return value; } export default function TelemetryPanel() { const { session } = useSession(); const roverId = session?.assignment?.roverId; const frame = useTelemetryFrame(roverId); - - const entries = useMemo(() => formatEntries(frame?.sensors), [frame?.sensors]); + const sensors = frame?.sensors || {}; + const voltage = sensors.voltageMv != null ? (sensors.voltageMv / 1000).toFixed(2) : null; + const current = sensors.currentMa != null ? (sensors.currentMa / 1000).toFixed(2) : null; + const charge = sensors.batteryChargeMah; + const capacity = sensors.batteryCapacityMah; + const updated = frame?.receivedAt ? new Date(frame.receivedAt).toLocaleTimeString() : null; + const rawSnippet = frame?.raw ? (frame.raw.length > 80 ? `${frame.raw.slice(0, 80)}…` : frame.raw) : null; return ( -
-
-
-

Telemetry

-

- {roverId ? `Rover ${roverId}` : 'No rover assigned'} -

-
-

- {frame?.receivedAt ? `Updated ${new Date(frame.receivedAt).toLocaleTimeString()}` : 'Waiting…'} -

-
- {entries.length === 0 ? ( -

- {roverId ? 'No sensor frames yet.' : 'Assignment required to view sensors.'} -

+
+
+ Telemetry + {updated ? `Updated ${updated}` : 'waiting'} +
+ {!roverId ? ( +

Assignment required to view sensors.

+ ) : !frame ? ( +

No sensor frames yet.

) : ( -
- {entries.map(({ key, value }) => ( -
-
{key}
-
{value}
-
- ))} -
- )} - {frame?.raw && ( -
-

Raw frame

-
-            {frame.raw}
-          
+
+ + + + +
)} + {rawSnippet && ( +
+          {rawSnippet}
+        
+ )}
); } + +function Metric({ label, value }) { + return ( +
+ {label} + {value} +
+ ); +} diff --git a/webui/src/components/VideoTile.jsx b/webui/src/components/VideoTile.jsx index 9035c543..8558a4be 100644 --- a/webui/src/components/VideoTile.jsx +++ b/webui/src/components/VideoTile.jsx @@ -4,7 +4,7 @@ import { WhepPlayer } from '../lib/whepPlayer.js'; const RESTART_DELAY_MS = 2000; const UNMUTE_RETRY_MS = 3000; -export default function VideoTile({ sessionInfo, label, forceMute = false }) { +export default function VideoTile({ sessionInfo, label, forceMute = false, telemetryFrame, batteryConfig }) { const videoRef = useRef(null); const restartTimer = useRef(null); const unmuteTimer = useRef(null); @@ -12,6 +12,13 @@ export default function VideoTile({ sessionInfo, label, forceMute = false }) { const [detail, setDetail] = useState(null); const [restartToken, setRestartToken] = useState(0); const [muted, setMuted] = useState(true); + const sensors = telemetryFrame?.sensors; + const batteryCharge = sensors?.batteryChargeMah ?? null; + const batteryCapacity = sensors?.batteryCapacityMah ?? null; + const wheelOvercurrents = sensors?.wheelOvercurrents || null; + const overcurrentActive = Boolean( + wheelOvercurrents && Object.values(wheelOvercurrents).some((value) => Boolean(value)), + ); const scheduleRestart = useCallback(() => { clearTimeout(restartTimer.current); @@ -22,19 +29,31 @@ export default function VideoTile({ sessionInfo, label, forceMute = false }) { (delay = 0) => { if (forceMute) return; clearTimeout(unmuteTimer.current); - unmuteTimer.current = setTimeout(async () => { + + const scheduleRetry = () => { + clearTimeout(unmuteTimer.current); + unmuteTimer.current = setTimeout(() => { + if (!forceMute) { + tryPlay(); + } + }, UNMUTE_RETRY_MS); + }; + + const tryPlay = async () => { const video = videoRef.current; if (!video) return; try { video.muted = false; await video.play(); setMuted(false); - } catch (err) { + } catch { video.muted = true; setMuted(true); - attemptUnmute(UNMUTE_RETRY_MS); + scheduleRetry(); } - }, delay); + }; + + unmuteTimer.current = setTimeout(tryPlay, delay); }, [forceMute], ); @@ -55,13 +74,11 @@ export default function VideoTile({ sessionInfo, label, forceMute = false }) { useEffect(() => { if (!sessionInfo?.url || !videoRef.current) { - setStatus('waiting'); - setDetail(null); return undefined; } let active = true; let player; - setMuted(true); + const resetMuteId = setTimeout(() => setMuted(true), 0); const handleStatus = (nextStatus, info) => { if (!active) return; setStatus(nextStatus); @@ -87,6 +104,7 @@ export default function VideoTile({ sessionInfo, label, forceMute = false }) { return () => { active = false; + clearTimeout(resetMuteId); player?.stop(); }; }, [sessionInfo?.url, sessionInfo?.token, restartToken, scheduleRestart]); @@ -97,16 +115,17 @@ export default function VideoTile({ sessionInfo, label, forceMute = false }) { } }, [status, sessionInfo?.url, scheduleRestart]); - const renderedStatus = - status === 'error' - ? `Error: ${detail || 'unknown'}` - : detail - ? `${status} (${detail})` - : status; + const renderedStatus = !sessionInfo?.url + ? 'waiting' + : status === 'error' + ? `Error: ${detail || 'unknown'}` + : detail + ? `${status} (${detail})` + : status; return ( -
-
+
+
-
- {label}{' '} - {renderedStatus} + +
+ {label} · {renderedStatus} +
+
+ ); +} + +function BatteryBar({ charge, capacity, config }) { + if (charge == null || !config?.full || config.warn == null) { + return null; + } + const span = config.full - config.warn; + if (span <= 0) return null; + const normalized = (charge - config.warn) / span; + const percent = Math.min(1, Math.max(0, normalized)); + const percentDisplay = Math.round(percent * 100); + const depleted = normalized <= 0; + const urgent = config.urgent != null && charge <= config.urgent; + const barClass = depleted + ? 'bg-red-500 animate-pulse' + : urgent + ? 'bg-amber-400' + : 'bg-emerald-500'; + const capText = capacity ? `${charge}/${capacity}` : `${charge}`; + return ( +
+
+ Battery + {capText} mAh +
+
+
+
+
+ ); +} + +function HudOverlay({ frame }) { + const sensors = frame?.sensors; + const bumps = sensors?.bumpsAndWheelDrops || {}; + const [now, setNow] = useState(() => Date.now()); + + useEffect(() => { + const interval = setInterval(() => setNow(Date.now()), 150); + return () => clearInterval(interval); + }, []); + + const pulse = frame?.receivedAt ? now - frame.receivedAt < 200 : false; + + const bumperBadges = [ + { label: 'B-L', active: bumps.bumpLeft }, + { label: 'B-R', active: bumps.bumpRight }, + ]; + const wheelBadges = [ + { label: 'DROP L', active: bumps.wheelDropLeft }, + { label: 'DROP R', active: bumps.wheelDropRight }, + ]; + + return ( +
+
+
+ + SENSORS +
+
+ {bumperBadges.map((badge) => ( + + ))} +
+
+
+ {wheelBadges.map((badge) => ( + + ))} +
+
+ ); +} + +function HudBadge({ label, active }) { + return ( + + {label} + + ); +} + +function OvercurrentOverlay({ active }) { + if (!active) return null; + return ( +
+
+ Overcurrent
); diff --git a/webui/src/context/DriveControlContext.jsx b/webui/src/context/DriveControlContext.jsx new file mode 100644 index 00000000..121d63ba --- /dev/null +++ b/webui/src/context/DriveControlContext.jsx @@ -0,0 +1,19 @@ +import { createContext, useContext } from 'react'; +import { useDriveControls as useDriveControlsHook } from '../hooks/useDriveControls.js'; + +/* eslint-disable react-refresh/only-export-components */ + +const DriveControlContext = createContext(null); + +export function DriveControlProvider({ children }) { + const controls = useDriveControlsHook(); + return {children}; +} + +export function useDriveControl() { + const context = useContext(DriveControlContext); + if (!context) { + throw new Error('useDriveControl must be used within DriveControlProvider'); + } + return context; +} diff --git a/webui/src/context/SessionContext.jsx b/webui/src/context/SessionContext.jsx index 6dec238f..8027f6eb 100644 --- a/webui/src/context/SessionContext.jsx +++ b/webui/src/context/SessionContext.jsx @@ -1,3 +1,5 @@ +/* eslint-disable react-refresh/only-export-components */ + import { createContext, useCallback, useContext, useEffect, useMemo, useState } from 'react'; import { useSocket } from './SocketContext.jsx'; @@ -61,7 +63,13 @@ export function SessionProvider({ children }) { socket.on('log:init', handleLogInit); socket.on('log:entry', handleLogEntry); socket.on('alert:new', (payload = {}) => { - setAlerts((prev) => [...prev.slice(-49), payload]); + setAlerts((prev) => [ + ...prev.slice(-49), + { + ...payload, + receivedAt: Date.now(), + }, + ]); }); return () => { socket.off('session:sync', handleSession); diff --git a/webui/src/context/SocketContext.jsx b/webui/src/context/SocketContext.jsx index c464e304..fd96a846 100644 --- a/webui/src/context/SocketContext.jsx +++ b/webui/src/context/SocketContext.jsx @@ -1,3 +1,5 @@ +/* eslint-disable react-refresh/only-export-components */ + // src/context/SocketContext.jsx import { createContext, useContext } from "react"; import { socket } from "../lib/socket"; diff --git a/webui/src/context/TelemetryContext.jsx b/webui/src/context/TelemetryContext.jsx index 03d97a45..0a37f312 100644 --- a/webui/src/context/TelemetryContext.jsx +++ b/webui/src/context/TelemetryContext.jsx @@ -1,3 +1,5 @@ +/* eslint-disable react-refresh/only-export-components */ + import { createContext, useContext, useMemo, useState, useEffect } from 'react'; import { useSocket } from './SocketContext.jsx'; diff --git a/webui/src/hooks/useDriveControls.js b/webui/src/hooks/useDriveControls.js index ea43164c..79a578ef 100644 --- a/webui/src/hooks/useDriveControls.js +++ b/webui/src/hooks/useDriveControls.js @@ -1,3 +1,5 @@ +/* global Buffer */ + import { useCallback, useEffect, useRef, useState } from 'react'; import { useSocket } from '../context/SocketContext.jsx'; import { useSession } from '../context/SessionContext.jsx'; @@ -10,6 +12,16 @@ const OI_COMMANDS = { dock: [143], }; +const AUX_LIMITS = { + main: [-127, 127], + side: [-127, 127], + vacuum: [0, 127], +}; + +const COMMAND_DELAY_MS = 200; + +const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms)); + function clamp(value, min, max) { return Math.max(min, Math.min(max, value)); } @@ -51,6 +63,11 @@ function computeSpeeds(keys) { }; } +function clampUnit(value) { + if (typeof value !== 'number' || Number.isNaN(value)) return 0; + return Math.max(-1, Math.min(1, value)); +} + function shouldIgnoreEvent(event) { const target = event.target; if (!target) return false; @@ -66,7 +83,10 @@ function shouldIgnoreEvent(event) { function bytesToBase64(bytes) { const binary = String.fromCharCode(...bytes); if (typeof btoa === 'function') return btoa(binary); - return Buffer.from(bytes).toString('base64'); + if (typeof Buffer !== 'undefined') { + return Buffer.from(bytes).toString('base64'); + } + throw new Error('No base64 encoder available'); } export function useDriveControls() { @@ -75,7 +95,7 @@ export function useDriveControls() { const roverId = session?.assignment?.roverId; const keysRef = useRef(new Set()); const lastSpeedsRef = useRef({ left: 0, right: 0 }); - const [currentSpeeds, setCurrentSpeeds] = useState(lastSpeedsRef.current); + const [currentSpeeds, setCurrentSpeeds] = useState(() => ({ left: 0, right: 0 })); const emitCommand = useCallback( (payload, cb) => { @@ -106,16 +126,49 @@ export function useDriveControls() { }); }, [emitCommand, roverId]); + const driveWithVector = useCallback( + ({ x = 0, y = 0, boost = false } = {}) => { + if (!roverId) return; + const base = boost ? 400 : 250; + const forward = clampUnit(y) * base; + const turn = clampUnit(x) * base; + const speeds = { + left: clamp(Math.round(forward + turn), -500, 500), + right: clamp(Math.round(forward - turn), -500, 500), + }; + lastSpeedsRef.current = speeds; + setCurrentSpeeds(speeds); + emitCommand({ + type: 'drive', + data: { driveDirect: speeds }, + }); + }, + [emitCommand, roverId], + ); + + const sendMotorPwm = useCallback( + ({ main = 0, side = 0, vacuum = 0 } = {}) => { + if (!roverId) return; + const payload = { + main: clamp(main, AUX_LIMITS.main[0], AUX_LIMITS.main[1]), + side: clamp(side, AUX_LIMITS.side[0], AUX_LIMITS.side[1]), + vacuum: clamp(vacuum, AUX_LIMITS.vacuum[0], AUX_LIMITS.vacuum[1]), + }; + emitCommand({ + type: 'motors', + data: { motorPwm: payload }, + }); + }, + [emitCommand, roverId], + ); + const stopMotors = useCallback(() => { if (!roverId) return; keysRef.current.clear(); lastSpeedsRef.current = { left: 0, right: 0 }; setCurrentSpeeds(lastSpeedsRef.current); - emitCommand({ - type: 'motors', - data: { motorPwm: { main: 0, side: 0, vacuum: 0 } }, - }); - }, [emitCommand, roverId]); + sendMotorPwm({ main: 0, side: 0, vacuum: 0 }); + }, [roverId, sendMotorPwm]); const sendOiCommand = useCallback( (key) => { @@ -131,6 +184,27 @@ export function useDriveControls() { [emitCommand, enableSensorStream, roverId], ); + const runStartDockFull = useCallback(async () => { + if (!roverId) return; + for (const key of ['start', 'dock', 'full']) { + sendOiCommand(key); + // brief pause so the commands aren't collapsed by the rover + await sleep(COMMAND_DELAY_MS); + } + }, [roverId, sendOiCommand]); + + const seekDock = useCallback(() => { + sendOiCommand('dock'); + }, [sendOiCommand]); + + const setAuxMotors = useCallback( + (values) => { + if (!roverId) return; + sendMotorPwm(values); + }, + [roverId, sendMotorPwm], + ); + useEffect(() => { if (!roverId) { keysRef.current.clear(); @@ -171,5 +245,9 @@ export function useDriveControls() { speeds: currentSpeeds, stopMotors, sendOiCommand, + runStartDockFull, + seekDock, + setAuxMotors, + driveWithVector, }; } diff --git a/webui/src/hooks/useVideoRequests.js b/webui/src/hooks/useVideoRequests.js index 474f080e..34a31c9b 100644 --- a/webui/src/hooks/useVideoRequests.js +++ b/webui/src/hooks/useVideoRequests.js @@ -1,24 +1,17 @@ -import { useEffect, useState } from 'react'; +import { useEffect, useMemo, useState } from 'react'; import { useSocket } from '../context/SocketContext.jsx'; export function useVideoRequests(roverIds = []) { const socket = useSocket(); const [sources, setSources] = useState({}); + const ids = useMemo(() => Array.from(new Set(roverIds.filter(Boolean))), [roverIds]); + const idsKey = ids.join('|'); useEffect(() => { - const ids = Array.from(new Set(roverIds.filter(Boolean))); if (!ids.length) { - setSources({}); - return; + return undefined; } let cancelled = false; - setSources((prev) => { - const next = {}; - ids.forEach((id) => { - if (prev[id]) next[id] = prev[id]; - }); - return next; - }); ids.forEach((roverId) => { socket.emit('video:request', { roverId }, (resp = {}) => { if (cancelled) return; @@ -32,7 +25,17 @@ export function useVideoRequests(roverIds = []) { return () => { cancelled = true; }; - }, [socket, roverIds.join('|')]); + }, [socket, idsKey, ids]); + const filtered = useMemo(() => { + if (!ids.length) return {}; + const next = {}; + ids.forEach((id) => { + if (sources[id]) { + next[id] = sources[id]; + } + }); + return next; + }, [ids, sources]); - return sources; + return filtered; } diff --git a/webui/src/lib/whepPlayer.js b/webui/src/lib/whepPlayer.js index 110cab98..69121798 100644 --- a/webui/src/lib/whepPlayer.js +++ b/webui/src/lib/whepPlayer.js @@ -1,3 +1,5 @@ +/* global Buffer */ + const RTC_CONFIG = { iceServers: [ { urls: 'stun:stun.l.google.com:19302' }, @@ -8,11 +10,20 @@ const RTC_CONFIG = { }; +function encodeBase64(value) { + if (typeof btoa === 'function') { + return btoa(value); + } + if (typeof Buffer !== 'undefined') { + return Buffer.from(value).toString('base64'); + } + throw new Error('No base64 encoder available'); +} + function buildAuthHeader(token) { if (!token) return {}; const credential = `${token}:${token}`; - const encoded = - typeof btoa === 'function' ? btoa(credential) : Buffer.from(credential).toString('base64'); + const encoded = encodeBase64(credential); return { Authorization: `Basic ${encoded}` }; } @@ -54,9 +65,9 @@ export class WhepPlayer { this.pc = pc; const stream = new MediaStream(); pc.ontrack = (event) => { - event.streams[0]?.getTracks().forEach((track) => stream.addTrack(track)); + event.streams[0]?.getTracks().forEach((mediaTrack) => stream.addTrack(mediaTrack)); this.video.srcObject = stream; - if (track.kind === 'video' && 'playoutDelayHint' in event.receiver) { + if (event.track?.kind === 'video' && 'playoutDelayHint' in event.receiver) { event.receiver.playoutDelayHint = 0; } }; From edcb465630e3b08d75025c9d47da7d9915a7ba91 Mon Sep 17 00:00:00 2001 From: legop3 Date: Sat, 15 Nov 2025 21:49:00 -0500 Subject: [PATCH 24/61] guh --- server/public/assets/index-BUE8ypH_.css | 1 + server/public/assets/index-BrPsNUkx.js | 11 -- server/public/assets/index-CJa482Eg.js | 11 ++ server/public/assets/index-DZL3Zaf5.css | 1 - server/public/index.html | 4 +- webui/src/App.jsx | 253 +++++------------------- webui/src/components/AdminPanel.jsx | 52 +++-- webui/src/components/AlertFeed.jsx | 14 +- webui/src/components/DrivePanel.jsx | 50 +++-- webui/src/components/MobileControls.jsx | 26 +-- webui/src/components/TelemetryPanel.jsx | 84 ++++++-- webui/src/components/VideoTile.jsx | 71 +++---- webui/src/hooks/useVideoRequests.js | 14 +- 13 files changed, 235 insertions(+), 357 deletions(-) create mode 100644 server/public/assets/index-BUE8ypH_.css delete mode 100644 server/public/assets/index-BrPsNUkx.js create mode 100644 server/public/assets/index-CJa482Eg.js delete mode 100644 server/public/assets/index-DZL3Zaf5.css diff --git a/server/public/assets/index-BUE8ypH_.css b/server/public/assets/index-BUE8ypH_.css new file mode 100644 index 00000000..53f82952 --- /dev/null +++ b/server/public/assets/index-BUE8ypH_.css @@ -0,0 +1 @@ +*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.\!visible{visibility:visible!important}.visible{visibility:visible}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.left-1\/2{left:50%}.top-1{top:.25rem}.z-50{z-index:50}.col-span-full{grid-column:1 / -1}.mx-auto{margin-left:auto;margin-right:auto}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mt-1{margin-top:.25rem}.mt-3{margin-top:.75rem}.flex{display:flex}.grid{display:grid}.h-2{height:.5rem}.h-48{height:12rem}.h-60{height:15rem}.h-full{height:100%}.min-h-\[55vh\]{min-height:55vh}.min-h-\[8rem\]{min-height:8rem}.min-h-screen{min-height:100vh}.w-2{width:.5rem}.w-full{width:100%}.max-w-7xl{max-width:80rem}.flex-1{flex:1 1 0%}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.resize{resize:both}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-\[minmax\(0\,0\.9fr\)_minmax\(0\,1\.6fr\)_minmax\(0\,0\.9fr\)\]{grid-template-columns:minmax(0,.9fr) minmax(0,1.6fr) minmax(0,.9fr)}.grid-cols-\[minmax\(0\,1fr\)_minmax\(0\,1\.4fr\)_minmax\(0\,1fr\)\]{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) minmax(0,1fr)}.grid-cols-\[minmax\(0\,1fr\)_minmax\(0\,1fr\)\]{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.grid-cols-\[repeat\(3\,minmax\(0\,1fr\)\)\]{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-full{border-radius:9999px}.rounded-sm{border-radius:.125rem}.border{border-width:1px}.border-slate-800{--tw-border-opacity: 1;border-color:rgb(30 41 59 / var(--tw-border-opacity))}.border-slate-800\/80{border-color:#1e293bcc}.bg-\[\#111\]{--tw-bg-opacity: 1;background-color:rgb(17 17 17 / var(--tw-bg-opacity))}.bg-\[\#1b1b1b\]{--tw-bg-opacity: 1;background-color:rgb(27 27 27 / var(--tw-bg-opacity))}.bg-amber-400{--tw-bg-opacity: 1;background-color:rgb(251 191 36 / var(--tw-bg-opacity))}.bg-amber-500\/30{background-color:#f59e0b4d}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity))}.bg-black\/30{background-color:#0000004d}.bg-black\/40{background-color:#0006}.bg-black\/50{background-color:#00000080}.bg-black\/60{background-color:#0009}.bg-blue-600\/40{background-color:#2563eb66}.bg-emerald-300{--tw-bg-opacity: 1;background-color:rgb(110 231 183 / var(--tw-bg-opacity))}.bg-emerald-500{--tw-bg-opacity: 1;background-color:rgb(16 185 129 / var(--tw-bg-opacity))}.bg-emerald-500\/20{background-color:#10b98133}.bg-emerald-500\/30{background-color:#10b9814d}.bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity))}.bg-red-500\/20{background-color:#ef444433}.bg-red-500\/30{background-color:#ef44444d}.bg-red-600\/60{background-color:#dc262699}.bg-red-900\/60{background-color:#7f1d1d99}.bg-slate-200{--tw-bg-opacity: 1;background-color:rgb(226 232 240 / var(--tw-bg-opacity))}.bg-slate-700{--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity))}.bg-slate-800{--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity))}.bg-slate-900\/70{background-color:#0f172ab3}.bg-slate-950{--tw-bg-opacity: 1;background-color:rgb(2 6 23 / var(--tw-bg-opacity))}.bg-slate-950\/40{background-color:#02061766}.bg-slate-950\/50{background-color:#02061780}.object-contain{-o-object-fit:contain;object-fit:contain}.p-1{padding:.25rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-\[0\.55rem\]{font-size:.55rem}.text-\[0\.65rem\]{font-size:.65rem}.text-\[0\.6rem\]{font-size:.6rem}.text-\[0\.75rem\]{font-size:.75rem}.text-\[0\.7rem\]{font-size:.7rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.tracking-\[0\.3em\]{letter-spacing:.3em}.text-amber-100{--tw-text-opacity: 1;color:rgb(254 243 199 / var(--tw-text-opacity))}.text-black{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity))}.text-blue-100{--tw-text-opacity: 1;color:rgb(219 234 254 / var(--tw-text-opacity))}.text-cyan-300{--tw-text-opacity: 1;color:rgb(103 232 249 / var(--tw-text-opacity))}.text-emerald-100{--tw-text-opacity: 1;color:rgb(209 250 229 / var(--tw-text-opacity))}.text-emerald-200{--tw-text-opacity: 1;color:rgb(167 243 208 / var(--tw-text-opacity))}.text-lime-300{--tw-text-opacity: 1;color:rgb(190 242 100 / var(--tw-text-opacity))}.text-pink-300{--tw-text-opacity: 1;color:rgb(249 168 212 / var(--tw-text-opacity))}.text-red-100{--tw-text-opacity: 1;color:rgb(254 226 226 / var(--tw-text-opacity))}.text-red-200{--tw-text-opacity: 1;color:rgb(254 202 202 / var(--tw-text-opacity))}.text-slate-100{--tw-text-opacity: 1;color:rgb(241 245 249 / var(--tw-text-opacity))}.text-slate-200{--tw-text-opacity: 1;color:rgb(226 232 240 / var(--tw-text-opacity))}.text-slate-300{--tw-text-opacity: 1;color:rgb(203 213 225 / var(--tw-text-opacity))}.text-slate-400{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity))}.text-slate-50{--tw-text-opacity: 1;color:rgb(248 250 252 / var(--tw-text-opacity))}.text-slate-500{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.shadow-\[0_0_4px_rgba\(16\,185\,129\,0\.8\)\]{--tw-shadow: 0 0 4px rgba(16,185,129,.8);--tw-shadow-colored: 0 0 4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-black\/60{--tw-shadow-color: rgb(0 0 0 / .6);--tw-shadow: var(--tw-shadow-colored)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-\[width\]{transition-property:width;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#0f172a;background-color:#f8fafc}body{margin:0;min-height:100vh;background-color:#0f172a}.disabled\:opacity-30:disabled{opacity:.3}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}@media(min-width:1024px){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}} diff --git a/server/public/assets/index-BrPsNUkx.js b/server/public/assets/index-BrPsNUkx.js deleted file mode 100644 index 80578aa5..00000000 --- a/server/public/assets/index-BrPsNUkx.js +++ /dev/null @@ -1,11 +0,0 @@ -(function(){const i=document.createElement("link").relList;if(i&&i.supports&&i.supports("modulepreload"))return;for(const f of document.querySelectorAll('link[rel="modulepreload"]'))c(f);new MutationObserver(f=>{for(const h of f)if(h.type==="childList")for(const m of h.addedNodes)m.tagName==="LINK"&&m.rel==="modulepreload"&&c(m)}).observe(document,{childList:!0,subtree:!0});function r(f){const h={};return f.integrity&&(h.integrity=f.integrity),f.referrerPolicy&&(h.referrerPolicy=f.referrerPolicy),f.crossOrigin==="use-credentials"?h.credentials="include":f.crossOrigin==="anonymous"?h.credentials="omit":h.credentials="same-origin",h}function c(f){if(f.ep)return;f.ep=!0;const h=r(f);fetch(f.href,h)}})();var Ir={exports:{}},ka={};var Jh;function Dy(){if(Jh)return ka;Jh=1;var u=Symbol.for("react.transitional.element"),i=Symbol.for("react.fragment");function r(c,f,h){var m=null;if(h!==void 0&&(m=""+h),f.key!==void 0&&(m=""+f.key),"key"in f){h={};for(var g in f)g!=="key"&&(h[g]=f[g])}else h=f;return f=h.ref,{$$typeof:u,type:c,key:m,ref:f!==void 0?f:null,props:h}}return ka.Fragment=i,ka.jsx=r,ka.jsxs=r,ka}var $h;function jy(){return $h||($h=1,Ir.exports=Dy()),Ir.exports}var p=jy(),ec={exports:{}},P={};var Wh;function wy(){if(Wh)return P;Wh=1;var u=Symbol.for("react.transitional.element"),i=Symbol.for("react.portal"),r=Symbol.for("react.fragment"),c=Symbol.for("react.strict_mode"),f=Symbol.for("react.profiler"),h=Symbol.for("react.consumer"),m=Symbol.for("react.context"),g=Symbol.for("react.forward_ref"),y=Symbol.for("react.suspense"),v=Symbol.for("react.memo"),T=Symbol.for("react.lazy"),S=Symbol.for("react.activity"),N=Symbol.iterator;function M(_){return _===null||typeof _!="object"?null:(_=N&&_[N]||_["@@iterator"],typeof _=="function"?_:null)}var L={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},G=Object.assign,q={};function H(_,B,X){this.props=_,this.context=B,this.refs=q,this.updater=X||L}H.prototype.isReactComponent={},H.prototype.setState=function(_,B){if(typeof _!="object"&&typeof _!="function"&&_!=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,_,B,"setState")},H.prototype.forceUpdate=function(_){this.updater.enqueueForceUpdate(this,_,"forceUpdate")};function Y(){}Y.prototype=H.prototype;function V(_,B,X){this.props=_,this.context=B,this.refs=q,this.updater=X||L}var ne=V.prototype=new Y;ne.constructor=V,G(ne,H.prototype),ne.isPureReactComponent=!0;var de=Array.isArray;function Ae(){}var F={H:null,A:null,T:null,S:null},_e=Object.prototype.hasOwnProperty;function ve(_,B,X){var Z=X.ref;return{$$typeof:u,type:_,key:B,ref:Z!==void 0?Z:null,props:X}}function Ge(_,B){return ve(_.type,B,_.props)}function Ue(_){return typeof _=="object"&&_!==null&&_.$$typeof===u}function ke(_){var B={"=":"=0",":":"=2"};return"$"+_.replace(/[=:]/g,function(X){return B[X]})}var Xt=/\/+/g;function Gt(_,B){return typeof _=="object"&&_!==null&&_.key!=null?ke(""+_.key):B.toString(36)}function Ot(_){switch(_.status){case"fulfilled":return _.value;case"rejected":throw _.reason;default:switch(typeof _.status=="string"?_.then(Ae,Ae):(_.status="pending",_.then(function(B){_.status==="pending"&&(_.status="fulfilled",_.value=B)},function(B){_.status==="pending"&&(_.status="rejected",_.reason=B)})),_.status){case"fulfilled":return _.value;case"rejected":throw _.reason}}throw _}function j(_,B,X,Z,I){var le=typeof _;(le==="undefined"||le==="boolean")&&(_=null);var me=!1;if(_===null)me=!0;else switch(le){case"bigint":case"string":case"number":me=!0;break;case"object":switch(_.$$typeof){case u:case i:me=!0;break;case T:return me=_._init,j(me(_._payload),B,X,Z,I)}}if(me)return I=I(_),me=Z===""?"."+Gt(_,0):Z,de(I)?(X="",me!=null&&(X=me.replace(Xt,"$&/")+"/"),j(I,B,X,"",function(Jl){return Jl})):I!=null&&(Ue(I)&&(I=Ge(I,X+(I.key==null||_&&_.key===I.key?"":(""+I.key).replace(Xt,"$&/")+"/")+me)),B.push(I)),1;me=0;var Pe=Z===""?".":Z+":";if(de(_))for(var De=0;De<_.length;De++)Z=_[De],le=Pe+Gt(Z,De),me+=j(Z,B,X,le,I);else if(De=M(_),typeof De=="function")for(_=De.call(_),De=0;!(Z=_.next()).done;)Z=Z.value,le=Pe+Gt(Z,De++),me+=j(Z,B,X,le,I);else if(le==="object"){if(typeof _.then=="function")return j(Ot(_),B,X,Z,I);throw B=String(_),Error("Objects are not valid as a React child (found: "+(B==="[object Object]"?"object with keys {"+Object.keys(_).join(", ")+"}":B)+"). If you meant to render a collection of children, use an array instead.")}return me}function k(_,B,X){if(_==null)return _;var Z=[],I=0;return j(_,Z,"","",function(le){return B.call(X,le,I++)}),Z}function W(_){if(_._status===-1){var B=_._result;B=B(),B.then(function(X){(_._status===0||_._status===-1)&&(_._status=1,_._result=X)},function(X){(_._status===0||_._status===-1)&&(_._status=2,_._result=X)}),_._status===-1&&(_._status=0,_._result=B)}if(_._status===1)return _._result.default;throw _._result}var ge=typeof reportError=="function"?reportError:function(_){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var B=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof _=="object"&&_!==null&&typeof _.message=="string"?String(_.message):String(_),error:_});if(!window.dispatchEvent(B))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",_);return}console.error(_)},Ee={map:k,forEach:function(_,B,X){k(_,function(){B.apply(this,arguments)},X)},count:function(_){var B=0;return k(_,function(){B++}),B},toArray:function(_){return k(_,function(B){return B})||[]},only:function(_){if(!Ue(_))throw Error("React.Children.only expected to receive a single React element child.");return _}};return P.Activity=S,P.Children=Ee,P.Component=H,P.Fragment=r,P.Profiler=f,P.PureComponent=V,P.StrictMode=c,P.Suspense=y,P.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=F,P.__COMPILER_RUNTIME={__proto__:null,c:function(_){return F.H.useMemoCache(_)}},P.cache=function(_){return function(){return _.apply(null,arguments)}},P.cacheSignal=function(){return null},P.cloneElement=function(_,B,X){if(_==null)throw Error("The argument must be a React element, but you passed "+_+".");var Z=G({},_.props),I=_.key;if(B!=null)for(le in B.key!==void 0&&(I=""+B.key),B)!_e.call(B,le)||le==="key"||le==="__self"||le==="__source"||le==="ref"&&B.ref===void 0||(Z[le]=B[le]);var le=arguments.length-2;if(le===1)Z.children=X;else if(1>>1,Ee=j[ge];if(0>>1;ge<_;){var B=2*(ge+1)-1,X=j[B],Z=B+1,I=j[Z];if(0>f(X,W))Zf(I,X)?(j[ge]=I,j[Z]=W,ge=Z):(j[ge]=X,j[B]=W,ge=B);else if(Zf(I,W))j[ge]=I,j[Z]=W,ge=Z;else break e}}return k}function f(j,k){var W=j.sortIndex-k.sortIndex;return W!==0?W:j.id-k.id}if(u.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var h=performance;u.unstable_now=function(){return h.now()}}else{var m=Date,g=m.now();u.unstable_now=function(){return m.now()-g}}var y=[],v=[],T=1,S=null,N=3,M=!1,L=!1,G=!1,q=!1,H=typeof setTimeout=="function"?setTimeout:null,Y=typeof clearTimeout=="function"?clearTimeout:null,V=typeof setImmediate<"u"?setImmediate:null;function ne(j){for(var k=r(v);k!==null;){if(k.callback===null)c(v);else if(k.startTime<=j)c(v),k.sortIndex=k.expirationTime,i(y,k);else break;k=r(v)}}function de(j){if(G=!1,ne(j),!L)if(r(y)!==null)L=!0,Ae||(Ae=!0,ke());else{var k=r(v);k!==null&&Ot(de,k.startTime-j)}}var Ae=!1,F=-1,_e=5,ve=-1;function Ge(){return q?!0:!(u.unstable_now()-ve<_e)}function Ue(){if(q=!1,Ae){var j=u.unstable_now();ve=j;var k=!0;try{e:{L=!1,G&&(G=!1,Y(F),F=-1),M=!0;var W=N;try{t:{for(ne(j),S=r(y);S!==null&&!(S.expirationTime>j&&Ge());){var ge=S.callback;if(typeof ge=="function"){S.callback=null,N=S.priorityLevel;var Ee=ge(S.expirationTime<=j);if(j=u.unstable_now(),typeof Ee=="function"){S.callback=Ee,ne(j),k=!0;break t}S===r(y)&&c(y),ne(j)}else c(y);S=r(y)}if(S!==null)k=!0;else{var _=r(v);_!==null&&Ot(de,_.startTime-j),k=!1}}break e}finally{S=null,N=W,M=!1}k=void 0}}finally{k?ke():Ae=!1}}}var ke;if(typeof V=="function")ke=function(){V(Ue)};else if(typeof MessageChannel<"u"){var Xt=new MessageChannel,Gt=Xt.port2;Xt.port1.onmessage=Ue,ke=function(){Gt.postMessage(null)}}else ke=function(){H(Ue,0)};function Ot(j,k){F=H(function(){j(u.unstable_now())},k)}u.unstable_IdlePriority=5,u.unstable_ImmediatePriority=1,u.unstable_LowPriority=4,u.unstable_NormalPriority=3,u.unstable_Profiling=null,u.unstable_UserBlockingPriority=2,u.unstable_cancelCallback=function(j){j.callback=null},u.unstable_forceFrameRate=function(j){0>j||125ge?(j.sortIndex=W,i(v,j),r(y)===null&&j===r(v)&&(G?(Y(F),F=-1):G=!0,Ot(de,W-ge))):(j.sortIndex=Ee,i(y,j),L||M||(L=!0,Ae||(Ae=!0,ke()))),j},u.unstable_shouldYield=Ge,u.unstable_wrapCallback=function(j){var k=N;return function(){var W=N;N=k;try{return j.apply(this,arguments)}finally{N=W}}}})(lc)),lc}var Ih;function By(){return Ih||(Ih=1,nc.exports=Uy()),nc.exports}var ac={exports:{}},Fe={};var em;function Ly(){if(em)return Fe;em=1;var u=Ru();function i(y){var v="https://react.dev/errors/"+y;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(u)}catch(i){console.error(i)}}return u(),ac.exports=Ly(),ac.exports}var nm;function qy(){if(nm)return Xa;nm=1;var u=By(),i=Ru(),r=Hy();function c(e){var t="https://react.dev/errors/"+e;if(1Ee||(e.current=ge[Ee],ge[Ee]=null,Ee--)}function X(e,t){Ee++,ge[Ee]=e.current,e.current=t}var Z=_(null),I=_(null),le=_(null),me=_(null);function Pe(e,t){switch(X(le,t),X(I,e),X(Z,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?vh(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=vh(t),e=gh(t,e);else switch(e){case"svg":e=1;break;case"math":e=2;break;default:e=0}}B(Z),X(Z,e)}function De(){B(Z),B(I),B(le)}function Jl(e){e.memoizedState!==null&&X(me,e);var t=Z.current,n=gh(t,e.type);t!==n&&(X(I,e),X(Z,n))}function ei(e){I.current===e&&(B(Z),B(I)),me.current===e&&(B(me),La._currentValue=W)}var Uu,Qc;function qn(e){if(Uu===void 0)try{throw Error()}catch(n){var t=n.stack.trim().match(/\n( *(at )?)/);Uu=t&&t[1]||"",Qc=-1)":-1a||b[l]!==R[a]){var D=` -`+b[l].replace(" at new "," at ");return e.displayName&&D.includes("")&&(D=D.replace("",e.displayName)),D}while(1<=l&&0<=a);break}}}finally{Bu=!1,Error.prepareStackTrace=n}return(n=e?e.displayName||e.name:"")?qn(n):""}function cp(e,t){switch(e.tag){case 26:case 27:case 5:return qn(e.type);case 16:return qn("Lazy");case 13:return e.child!==t&&t!==null?qn("Suspense Fallback"):qn("Suspense");case 19:return qn("SuspenseList");case 0:case 15:return Lu(e.type,!1);case 11:return Lu(e.type.render,!1);case 1:return Lu(e.type,!0);case 31:return qn("Activity");default:return""}}function Zc(e){try{var t="",n=null;do t+=cp(e,n),n=e,e=e.return;while(e);return t}catch(l){return` -Error generating stack: `+l.message+` -`+l.stack}}var Hu=Object.prototype.hasOwnProperty,qu=u.unstable_scheduleCallback,Yu=u.unstable_cancelCallback,op=u.unstable_shouldYield,fp=u.unstable_requestPaint,st=u.unstable_now,dp=u.unstable_getCurrentPriorityLevel,Kc=u.unstable_ImmediatePriority,Jc=u.unstable_UserBlockingPriority,ti=u.unstable_NormalPriority,hp=u.unstable_LowPriority,$c=u.unstable_IdlePriority,mp=u.log,pp=u.unstable_setDisableYieldValue,$l=null,rt=null;function hn(e){if(typeof mp=="function"&&pp(e),rt&&typeof rt.setStrictMode=="function")try{rt.setStrictMode($l,e)}catch{}}var ct=Math.clz32?Math.clz32:gp,yp=Math.log,vp=Math.LN2;function gp(e){return e>>>=0,e===0?32:31-(yp(e)/vp|0)|0}var ni=256,li=262144,ai=4194304;function Yn(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function ii(e,t,n){var l=e.pendingLanes;if(l===0)return 0;var a=0,s=e.suspendedLanes,o=e.pingedLanes;e=e.warmLanes;var d=l&134217727;return d!==0?(l=d&~s,l!==0?a=Yn(l):(o&=d,o!==0?a=Yn(o):n||(n=d&~e,n!==0&&(a=Yn(n))))):(d=l&~s,d!==0?a=Yn(d):o!==0?a=Yn(o):n||(n=l&~e,n!==0&&(a=Yn(n)))),a===0?0:t!==0&&t!==a&&(t&s)===0&&(s=a&-a,n=t&-t,s>=n||s===32&&(n&4194048)!==0)?t:a}function Wl(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function bp(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Wc(){var e=ai;return ai<<=1,(ai&62914560)===0&&(ai=4194304),e}function ku(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function Fl(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function Sp(e,t,n,l,a,s){var o=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var d=e.entanglements,b=e.expirationTimes,R=e.hiddenUpdates;for(n=o&~n;0"u")return null;try{return e.activeElement||e.body}catch{return e.body}}var Np=/[\n"\\]/g;function bt(e){return e.replace(Np,function(t){return"\\"+t.charCodeAt(0).toString(16)+" "})}function Ku(e,t,n,l,a,s,o,d){e.name="",o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"?e.type=o:e.removeAttribute("type"),t!=null?o==="number"?(t===0&&e.value===""||e.value!=t)&&(e.value=""+gt(t)):e.value!==""+gt(t)&&(e.value=""+gt(t)):o!=="submit"&&o!=="reset"||e.removeAttribute("value"),t!=null?Ju(e,o,gt(t)):n!=null?Ju(e,o,gt(n)):l!=null&&e.removeAttribute("value"),a==null&&s!=null&&(e.defaultChecked=!!s),a!=null&&(e.checked=a&&typeof a!="function"&&typeof a!="symbol"),d!=null&&typeof d!="function"&&typeof d!="symbol"&&typeof d!="boolean"?e.name=""+gt(d):e.removeAttribute("name")}function co(e,t,n,l,a,s,o,d){if(s!=null&&typeof s!="function"&&typeof s!="symbol"&&typeof s!="boolean"&&(e.type=s),t!=null||n!=null){if(!(s!=="submit"&&s!=="reset"||t!=null)){Zu(e);return}n=n!=null?""+gt(n):"",t=t!=null?""+gt(t):n,d||t===e.value||(e.value=t),e.defaultValue=t}l=l??a,l=typeof l!="function"&&typeof l!="symbol"&&!!l,e.checked=d?e.checked:!!l,e.defaultChecked=!!l,o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"&&(e.name=o),Zu(e)}function Ju(e,t,n){t==="number"&&ri(e.ownerDocument)===e||e.defaultValue===""+n||(e.defaultValue=""+n)}function fl(e,t,n,l){if(e=e.options,t){t={};for(var a=0;a"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Iu=!1;if(Zt)try{var ta={};Object.defineProperty(ta,"passive",{get:function(){Iu=!0}}),window.addEventListener("test",ta,ta),window.removeEventListener("test",ta,ta)}catch{Iu=!1}var pn=null,es=null,oi=null;function vo(){if(oi)return oi;var e,t=es,n=t.length,l,a="value"in pn?pn.value:pn.textContent,s=a.length;for(e=0;e=aa),Eo=" ",To=!1;function Ao(e,t){switch(e){case"keyup":return e0.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function No(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var pl=!1;function n0(e,t){switch(e){case"compositionend":return No(t);case"keypress":return t.which!==32?null:(To=!0,Eo);case"textInput":return e=t.data,e===Eo&&To?null:e;default:return null}}function l0(e,t){if(pl)return e==="compositionend"||!is&&Ao(e,t)?(e=vo(),oi=es=pn=null,pl=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=l}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=wo(n)}}function Bo(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Bo(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Lo(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=ri(e.document);t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=ri(e.document)}return t}function rs(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}var f0=Zt&&"documentMode"in document&&11>=document.documentMode,yl=null,cs=null,ra=null,os=!1;function Ho(e,t,n){var l=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;os||yl==null||yl!==ri(l)||(l=yl,"selectionStart"in l&&rs(l)?l={start:l.selectionStart,end:l.selectionEnd}:(l=(l.ownerDocument&&l.ownerDocument.defaultView||window).getSelection(),l={anchorNode:l.anchorNode,anchorOffset:l.anchorOffset,focusNode:l.focusNode,focusOffset:l.focusOffset}),ra&&sa(ra,l)||(ra=l,l=lu(cs,"onSelect"),0>=o,a-=o,Ut=1<<32-ct(t)+a|n<te?(se=K,K=null):se=K.sibling;var fe=O(A,K,C[te],w);if(fe===null){K===null&&(K=se);break}e&&K&&fe.alternate===null&&t(A,K),x=s(fe,x,te),oe===null?J=fe:oe.sibling=fe,oe=fe,K=se}if(te===C.length)return n(A,K),re&&Jt(A,te),J;if(K===null){for(;tete?(se=K,K=null):se=K.sibling;var Ln=O(A,K,fe.value,w);if(Ln===null){K===null&&(K=se);break}e&&K&&Ln.alternate===null&&t(A,K),x=s(Ln,x,te),oe===null?J=Ln:oe.sibling=Ln,oe=Ln,K=se}if(fe.done)return n(A,K),re&&Jt(A,te),J;if(K===null){for(;!fe.done;te++,fe=C.next())fe=U(A,fe.value,w),fe!==null&&(x=s(fe,x,te),oe===null?J=fe:oe.sibling=fe,oe=fe);return re&&Jt(A,te),J}for(K=l(K);!fe.done;te++,fe=C.next())fe=z(K,A,te,fe.value,w),fe!==null&&(e&&fe.alternate!==null&&K.delete(fe.key===null?te:fe.key),x=s(fe,x,te),oe===null?J=fe:oe.sibling=fe,oe=fe);return e&&K.forEach(function(My){return t(A,My)}),re&&Jt(A,te),J}function xe(A,x,C,w){if(typeof C=="object"&&C!==null&&C.type===G&&C.key===null&&(C=C.props.children),typeof C=="object"&&C!==null){switch(C.$$typeof){case M:e:{for(var J=C.key;x!==null;){if(x.key===J){if(J=C.type,J===G){if(x.tag===7){n(A,x.sibling),w=a(x,C.props.children),w.return=A,A=w;break e}}else if(x.elementType===J||typeof J=="object"&&J!==null&&J.$$typeof===_e&&Fn(J)===x.type){n(A,x.sibling),w=a(x,C.props),ma(w,C),w.return=A,A=w;break e}n(A,x);break}else t(A,x);x=x.sibling}C.type===G?(w=Zn(C.props.children,A.mode,w,C.key),w.return=A,A=w):(w=Si(C.type,C.key,C.props,null,A.mode,w),ma(w,C),w.return=A,A=w)}return o(A);case L:e:{for(J=C.key;x!==null;){if(x.key===J)if(x.tag===4&&x.stateNode.containerInfo===C.containerInfo&&x.stateNode.implementation===C.implementation){n(A,x.sibling),w=a(x,C.children||[]),w.return=A,A=w;break e}else{n(A,x);break}else t(A,x);x=x.sibling}w=vs(C,A.mode,w),w.return=A,A=w}return o(A);case _e:return C=Fn(C),xe(A,x,C,w)}if(Ot(C))return Q(A,x,C,w);if(ke(C)){if(J=ke(C),typeof J!="function")throw Error(c(150));return C=J.call(C),$(A,x,C,w)}if(typeof C.then=="function")return xe(A,x,Ci(C),w);if(C.$$typeof===V)return xe(A,x,Ei(A,C),w);Ri(A,C)}return typeof C=="string"&&C!==""||typeof C=="number"||typeof C=="bigint"?(C=""+C,x!==null&&x.tag===6?(n(A,x.sibling),w=a(x,C),w.return=A,A=w):(n(A,x),w=ys(C,A.mode,w),w.return=A,A=w),o(A)):n(A,x)}return function(A,x,C,w){try{ha=0;var J=xe(A,x,C,w);return Cl=null,J}catch(K){if(K===Nl||K===Ai)throw K;var oe=ft(29,K,null,A.mode);return oe.lanes=w,oe.return=A,oe}finally{}}}var In=rf(!0),cf=rf(!1),Sn=!1;function Os(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function zs(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function xn(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function _n(e,t,n){var l=e.updateQueue;if(l===null)return null;if(l=l.shared,(he&2)!==0){var a=l.pending;return a===null?t.next=t:(t.next=a.next,a.next=t),l.pending=t,t=bi(e),Qo(e,null,n),t}return gi(e,l,t,n),bi(e)}function pa(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194048)!==0)){var l=t.lanes;l&=e.pendingLanes,n|=l,t.lanes=n,Pc(e,n)}}function Ms(e,t){var n=e.updateQueue,l=e.alternate;if(l!==null&&(l=l.updateQueue,n===l)){var a=null,s=null;if(n=n.firstBaseUpdate,n!==null){do{var o={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};s===null?a=s=o:s=s.next=o,n=n.next}while(n!==null);s===null?a=s=t:s=s.next=t}else a=s=t;n={baseState:l.baseState,firstBaseUpdate:a,lastBaseUpdate:s,shared:l.shared,callbacks:l.callbacks},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}var Ds=!1;function ya(){if(Ds){var e=Al;if(e!==null)throw e}}function va(e,t,n,l){Ds=!1;var a=e.updateQueue;Sn=!1;var s=a.firstBaseUpdate,o=a.lastBaseUpdate,d=a.shared.pending;if(d!==null){a.shared.pending=null;var b=d,R=b.next;b.next=null,o===null?s=R:o.next=R,o=b;var D=e.alternate;D!==null&&(D=D.updateQueue,d=D.lastBaseUpdate,d!==o&&(d===null?D.firstBaseUpdate=R:d.next=R,D.lastBaseUpdate=b))}if(s!==null){var U=a.baseState;o=0,D=R=b=null,d=s;do{var O=d.lane&-536870913,z=O!==d.lane;if(z?(ue&O)===O:(l&O)===O){O!==0&&O===Tl&&(Ds=!0),D!==null&&(D=D.next={lane:0,tag:d.tag,payload:d.payload,callback:null,next:null});e:{var Q=e,$=d;O=t;var xe=n;switch($.tag){case 1:if(Q=$.payload,typeof Q=="function"){U=Q.call(xe,U,O);break e}U=Q;break e;case 3:Q.flags=Q.flags&-65537|128;case 0:if(Q=$.payload,O=typeof Q=="function"?Q.call(xe,U,O):Q,O==null)break e;U=S({},U,O);break e;case 2:Sn=!0}}O=d.callback,O!==null&&(e.flags|=64,z&&(e.flags|=8192),z=a.callbacks,z===null?a.callbacks=[O]:z.push(O))}else z={lane:O,tag:d.tag,payload:d.payload,callback:d.callback,next:null},D===null?(R=D=z,b=U):D=D.next=z,o|=O;if(d=d.next,d===null){if(d=a.shared.pending,d===null)break;z=d,d=z.next,z.next=null,a.lastBaseUpdate=z,a.shared.pending=null}}while(!0);D===null&&(b=U),a.baseState=b,a.firstBaseUpdate=R,a.lastBaseUpdate=D,s===null&&(a.shared.lanes=0),Cn|=o,e.lanes=o,e.memoizedState=U}}function of(e,t){if(typeof e!="function")throw Error(c(191,e));e.call(t)}function ff(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;es?s:8;var o=j.T,d={};j.T=d,Fs(e,!1,t,n);try{var b=a(),R=j.S;if(R!==null&&R(d,b),b!==null&&typeof b=="object"&&typeof b.then=="function"){var D=S0(b,l);Sa(e,t,D,yt(e))}else Sa(e,t,l,yt(e))}catch(U){Sa(e,t,{then:function(){},status:"rejected",reason:U},yt())}finally{k.p=s,o!==null&&d.types!==null&&(o.types=d.types),j.T=o}}function N0(){}function $s(e,t,n,l){if(e.tag!==5)throw Error(c(476));var a=Gf(e).queue;Xf(e,a,t,W,n===null?N0:function(){return Vf(e),n(l)})}function Gf(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:W,baseState:W,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Pt,lastRenderedState:W},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Pt,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function Vf(e){var t=Gf(e);t.next===null&&(t=e.alternate.memoizedState),Sa(e,t.next.queue,{},yt())}function Ws(){return Je(La)}function Qf(){return we().memoizedState}function Zf(){return we().memoizedState}function C0(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var n=yt();e=xn(n);var l=_n(t,e,n);l!==null&&(ut(l,t,n),pa(l,t,n)),t={cache:As()},e.payload=t;return}t=t.return}}function R0(e,t,n){var l=yt();n={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},Hi(e)?Jf(t,n):(n=ms(e,t,n,l),n!==null&&(ut(n,e,l),$f(n,t,l)))}function Kf(e,t,n){var l=yt();Sa(e,t,n,l)}function Sa(e,t,n,l){var a={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(Hi(e))Jf(t,a);else{var s=e.alternate;if(e.lanes===0&&(s===null||s.lanes===0)&&(s=t.lastRenderedReducer,s!==null))try{var o=t.lastRenderedState,d=s(o,n);if(a.hasEagerState=!0,a.eagerState=d,ot(d,o))return gi(e,t,a,0),Te===null&&vi(),!1}catch{}finally{}if(n=ms(e,t,a,l),n!==null)return ut(n,e,l),$f(n,t,l),!0}return!1}function Fs(e,t,n,l){if(l={lane:2,revertLane:Or(),gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},Hi(e)){if(t)throw Error(c(479))}else t=ms(e,n,l,2),t!==null&&ut(t,e,2)}function Hi(e){var t=e.alternate;return e===ee||t!==null&&t===ee}function Jf(e,t){Ol=Mi=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function $f(e,t,n){if((n&4194048)!==0){var l=t.lanes;l&=e.pendingLanes,n|=l,t.lanes=n,Pc(e,n)}}var xa={readContext:Je,use:wi,useCallback:ze,useContext:ze,useEffect:ze,useImperativeHandle:ze,useLayoutEffect:ze,useInsertionEffect:ze,useMemo:ze,useReducer:ze,useRef:ze,useState:ze,useDebugValue:ze,useDeferredValue:ze,useTransition:ze,useSyncExternalStore:ze,useId:ze,useHostTransitionStatus:ze,useFormState:ze,useActionState:ze,useOptimistic:ze,useMemoCache:ze,useCacheRefresh:ze};xa.useEffectEvent=ze;var Wf={readContext:Je,use:wi,useCallback:function(e,t){return Ie().memoizedState=[e,t===void 0?null:t],e},useContext:Je,useEffect:jf,useImperativeHandle:function(e,t,n){n=n!=null?n.concat([e]):null,Bi(4194308,4,Lf.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Bi(4194308,4,e,t)},useInsertionEffect:function(e,t){Bi(4,2,e,t)},useMemo:function(e,t){var n=Ie();t=t===void 0?null:t;var l=e();if(el){hn(!0);try{e()}finally{hn(!1)}}return n.memoizedState=[l,t],l},useReducer:function(e,t,n){var l=Ie();if(n!==void 0){var a=n(t);if(el){hn(!0);try{n(t)}finally{hn(!1)}}}else a=t;return l.memoizedState=l.baseState=a,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:a},l.queue=e,e=e.dispatch=R0.bind(null,ee,e),[l.memoizedState,e]},useRef:function(e){var t=Ie();return e={current:e},t.memoizedState=e},useState:function(e){e=Vs(e);var t=e.queue,n=Kf.bind(null,ee,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:Ks,useDeferredValue:function(e,t){var n=Ie();return Js(n,e,t)},useTransition:function(){var e=Vs(!1);return e=Xf.bind(null,ee,e.queue,!0,!1),Ie().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var l=ee,a=Ie();if(re){if(n===void 0)throw Error(c(407));n=n()}else{if(n=t(),Te===null)throw Error(c(349));(ue&127)!==0||vf(l,t,n)}a.memoizedState=n;var s={value:n,getSnapshot:t};return a.queue=s,jf(bf.bind(null,l,s,e),[e]),l.flags|=2048,Ml(9,{destroy:void 0},gf.bind(null,l,s,n,t),null),n},useId:function(){var e=Ie(),t=Te.identifierPrefix;if(re){var n=Bt,l=Ut;n=(l&~(1<<32-ct(l)-1)).toString(32)+n,t="_"+t+"R_"+n,n=Di++,0<\/script>",s=s.removeChild(s.firstChild);break;case"select":s=typeof l.is=="string"?o.createElement("select",{is:l.is}):o.createElement("select"),l.multiple?s.multiple=!0:l.size&&(s.size=l.size);break;default:s=typeof l.is=="string"?o.createElement(a,{is:l.is}):o.createElement(a)}}s[Ze]=t,s[et]=l;e:for(o=t.child;o!==null;){if(o.tag===5||o.tag===6)s.appendChild(o.stateNode);else if(o.tag!==4&&o.tag!==27&&o.child!==null){o.child.return=o,o=o.child;continue}if(o===t)break e;for(;o.sibling===null;){if(o.return===null||o.return===t)break e;o=o.return}o.sibling.return=o.return,o=o.sibling}t.stateNode=s;e:switch(We(s,a,l),a){case"button":case"input":case"select":case"textarea":l=!!l.autoFocus;break e;case"img":l=!0;break e;default:l=!1}l&&en(t)}}return Ce(t),fr(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==l&&en(t);else{if(typeof l!="string"&&t.stateNode===null)throw Error(c(166));if(e=le.current,_l(t)){if(e=t.stateNode,n=t.memoizedProps,l=null,a=Ke,a!==null)switch(a.tag){case 27:case 5:l=a.memoizedProps}e[Ze]=t,e=!!(e.nodeValue===n||l!==null&&l.suppressHydrationWarning===!0||ph(e.nodeValue,n)),e||gn(t,!0)}else e=au(e).createTextNode(l),e[Ze]=t,t.stateNode=e}return Ce(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(l=_l(t),n!==null){if(e===null){if(!l)throw Error(c(318));if(e=t.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(c(557));e[Ze]=t}else Kn(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Ce(t),e=!1}else n=xs(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(ht(t),t):(ht(t),null);if((t.flags&128)!==0)throw Error(c(558))}return Ce(t),null;case 13:if(l=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(a=_l(t),l!==null&&l.dehydrated!==null){if(e===null){if(!a)throw Error(c(318));if(a=t.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(c(317));a[Ze]=t}else Kn(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Ce(t),a=!1}else a=xs(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=a),a=!0;if(!a)return t.flags&256?(ht(t),t):(ht(t),null)}return ht(t),(t.flags&128)!==0?(t.lanes=n,t):(n=l!==null,e=e!==null&&e.memoizedState!==null,n&&(l=t.child,a=null,l.alternate!==null&&l.alternate.memoizedState!==null&&l.alternate.memoizedState.cachePool!==null&&(a=l.alternate.memoizedState.cachePool.pool),s=null,l.memoizedState!==null&&l.memoizedState.cachePool!==null&&(s=l.memoizedState.cachePool.pool),s!==a&&(l.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),Gi(t,t.updateQueue),Ce(t),null);case 4:return De(),e===null&&jr(t.stateNode.containerInfo),Ce(t),null;case 10:return Wt(t.type),Ce(t),null;case 19:if(B(je),l=t.memoizedState,l===null)return Ce(t),null;if(a=(t.flags&128)!==0,s=l.rendering,s===null)if(a)Ea(l,!1);else{if(Me!==0||e!==null&&(e.flags&128)!==0)for(e=t.child;e!==null;){if(s=zi(e),s!==null){for(t.flags|=128,Ea(l,!1),e=s.updateQueue,t.updateQueue=e,Gi(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)Zo(n,e),n=n.sibling;return X(je,je.current&1|2),re&&Jt(t,l.treeForkCount),t.child}e=e.sibling}l.tail!==null&&st()>Ji&&(t.flags|=128,a=!0,Ea(l,!1),t.lanes=4194304)}else{if(!a)if(e=zi(s),e!==null){if(t.flags|=128,a=!0,e=e.updateQueue,t.updateQueue=e,Gi(t,e),Ea(l,!0),l.tail===null&&l.tailMode==="hidden"&&!s.alternate&&!re)return Ce(t),null}else 2*st()-l.renderingStartTime>Ji&&n!==536870912&&(t.flags|=128,a=!0,Ea(l,!1),t.lanes=4194304);l.isBackwards?(s.sibling=t.child,t.child=s):(e=l.last,e!==null?e.sibling=s:t.child=s,l.last=s)}return l.tail!==null?(e=l.tail,l.rendering=e,l.tail=e.sibling,l.renderingStartTime=st(),e.sibling=null,n=je.current,X(je,a?n&1|2:n&1),re&&Jt(t,l.treeForkCount),e):(Ce(t),null);case 22:case 23:return ht(t),ws(),l=t.memoizedState!==null,e!==null?e.memoizedState!==null!==l&&(t.flags|=8192):l&&(t.flags|=8192),l?(n&536870912)!==0&&(t.flags&128)===0&&(Ce(t),t.subtreeFlags&6&&(t.flags|=8192)):Ce(t),n=t.updateQueue,n!==null&&Gi(t,n.retryQueue),n=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),l=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(l=t.memoizedState.cachePool.pool),l!==n&&(t.flags|=2048),e!==null&&B(Wn),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),Wt(Be),Ce(t),null;case 25:return null;case 30:return null}throw Error(c(156,t.tag))}function j0(e,t){switch(bs(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Wt(Be),De(),e=t.flags,(e&65536)!==0&&(e&128)===0?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return ei(t),null;case 31:if(t.memoizedState!==null){if(ht(t),t.alternate===null)throw Error(c(340));Kn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(ht(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(c(340));Kn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return B(je),null;case 4:return De(),null;case 10:return Wt(t.type),null;case 22:case 23:return ht(t),ws(),e!==null&&B(Wn),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return Wt(Be),null;case 25:return null;default:return null}}function Sd(e,t){switch(bs(t),t.tag){case 3:Wt(Be),De();break;case 26:case 27:case 5:ei(t);break;case 4:De();break;case 31:t.memoizedState!==null&&ht(t);break;case 13:ht(t);break;case 19:B(je);break;case 10:Wt(t.type);break;case 22:case 23:ht(t),ws(),e!==null&&B(Wn);break;case 24:Wt(Be)}}function Ta(e,t){try{var n=t.updateQueue,l=n!==null?n.lastEffect:null;if(l!==null){var a=l.next;n=a;do{if((n.tag&e)===e){l=void 0;var s=n.create,o=n.inst;l=s(),o.destroy=l}n=n.next}while(n!==a)}}catch(d){ye(t,t.return,d)}}function An(e,t,n){try{var l=t.updateQueue,a=l!==null?l.lastEffect:null;if(a!==null){var s=a.next;l=s;do{if((l.tag&e)===e){var o=l.inst,d=o.destroy;if(d!==void 0){o.destroy=void 0,a=t;var b=n,R=d;try{R()}catch(D){ye(a,b,D)}}}l=l.next}while(l!==s)}}catch(D){ye(t,t.return,D)}}function xd(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{ff(t,n)}catch(l){ye(e,e.return,l)}}}function _d(e,t,n){n.props=tl(e.type,e.memoizedProps),n.state=e.memoizedState;try{n.componentWillUnmount()}catch(l){ye(e,t,l)}}function Aa(e,t){try{var n=e.ref;if(n!==null){switch(e.tag){case 26:case 27:case 5:var l=e.stateNode;break;case 30:l=e.stateNode;break;default:l=e.stateNode}typeof n=="function"?e.refCleanup=n(l):n.current=l}}catch(a){ye(e,t,a)}}function Lt(e,t){var n=e.ref,l=e.refCleanup;if(n!==null)if(typeof l=="function")try{l()}catch(a){ye(e,t,a)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n=="function")try{n(null)}catch(a){ye(e,t,a)}else n.current=null}function Ed(e){var t=e.type,n=e.memoizedProps,l=e.stateNode;try{e:switch(t){case"button":case"input":case"select":case"textarea":n.autoFocus&&l.focus();break e;case"img":n.src?l.src=n.src:n.srcSet&&(l.srcset=n.srcSet)}}catch(a){ye(e,e.return,a)}}function dr(e,t,n){try{var l=e.stateNode;ty(l,e.type,n,t),l[et]=t}catch(a){ye(e,e.return,a)}}function Td(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&Dn(e.type)||e.tag===4}function hr(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||Td(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&&Dn(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 mr(e,t,n){var l=e.tag;if(l===5||l===6)e=e.stateNode,t?(n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n).insertBefore(e,t):(t=n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n,t.appendChild(e),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=Qt));else if(l!==4&&(l===27&&Dn(e.type)&&(n=e.stateNode,t=null),e=e.child,e!==null))for(mr(e,t,n),e=e.sibling;e!==null;)mr(e,t,n),e=e.sibling}function Vi(e,t,n){var l=e.tag;if(l===5||l===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(l!==4&&(l===27&&Dn(e.type)&&(n=e.stateNode),e=e.child,e!==null))for(Vi(e,t,n),e=e.sibling;e!==null;)Vi(e,t,n),e=e.sibling}function Ad(e){var t=e.stateNode,n=e.memoizedProps;try{for(var l=e.type,a=t.attributes;a.length;)t.removeAttributeNode(a[0]);We(t,l,n),t[Ze]=e,t[et]=n}catch(s){ye(e,e.return,s)}}var tn=!1,qe=!1,pr=!1,Nd=typeof WeakSet=="function"?WeakSet:Set,Qe=null;function w0(e,t){if(e=e.containerInfo,Br=fu,e=Lo(e),rs(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var l=n.getSelection&&n.getSelection();if(l&&l.rangeCount!==0){n=l.anchorNode;var a=l.anchorOffset,s=l.focusNode;l=l.focusOffset;try{n.nodeType,s.nodeType}catch{n=null;break e}var o=0,d=-1,b=-1,R=0,D=0,U=e,O=null;t:for(;;){for(var z;U!==n||a!==0&&U.nodeType!==3||(d=o+a),U!==s||l!==0&&U.nodeType!==3||(b=o+l),U.nodeType===3&&(o+=U.nodeValue.length),(z=U.firstChild)!==null;)O=U,U=z;for(;;){if(U===e)break t;if(O===n&&++R===a&&(d=o),O===s&&++D===l&&(b=o),(z=U.nextSibling)!==null)break;U=O,O=U.parentNode}U=z}n=d===-1||b===-1?null:{start:d,end:b}}else n=null}n=n||{start:0,end:0}}else n=null;for(Lr={focusedElem:e,selectionRange:n},fu=!1,Qe=t;Qe!==null;)if(t=Qe,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,Qe=e;else for(;Qe!==null;){switch(t=Qe,s=t.alternate,e=t.flags,t.tag){case 0:if((e&4)!==0&&(e=t.updateQueue,e=e!==null?e.events:null,e!==null))for(n=0;n title"))),We(s,l,n),s[Ze]=e,Ve(s),l=s;break e;case"link":var o=Dh("link","href",a).get(l+(n.href||""));if(o){for(var d=0;dxe&&(o=xe,xe=$,$=o);var A=Uo(d,$),x=Uo(d,xe);if(A&&x&&(z.rangeCount!==1||z.anchorNode!==A.node||z.anchorOffset!==A.offset||z.focusNode!==x.node||z.focusOffset!==x.offset)){var C=U.createRange();C.setStart(A.node,A.offset),z.removeAllRanges(),$>xe?(z.addRange(C),z.extend(x.node,x.offset)):(C.setEnd(x.node,x.offset),z.addRange(C))}}}}for(U=[],z=d;z=z.parentNode;)z.nodeType===1&&U.push({element:z,left:z.scrollLeft,top:z.scrollTop});for(typeof d.focus=="function"&&d.focus(),d=0;dn?32:n,j.T=null,n=_r,_r=null;var s=On,o=sn;if(Xe=0,Bl=On=null,sn=0,(he&6)!==0)throw Error(c(331));var d=he;if(he|=4,Ld(s.current),wd(s,s.current,o,n),he=d,Ma(0,!1),rt&&typeof rt.onPostCommitFiberRoot=="function")try{rt.onPostCommitFiberRoot($l,s)}catch{}return!0}finally{k.p=a,j.T=l,th(e,t)}}function lh(e,t,n){t=xt(n,t),t=tr(e.stateNode,t,2),e=_n(e,t,2),e!==null&&(Fl(e,2),Ht(e))}function ye(e,t,n){if(e.tag===3)lh(e,e,n);else for(;t!==null;){if(t.tag===3){lh(t,e,n);break}else if(t.tag===1){var l=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof l.componentDidCatch=="function"&&(Rn===null||!Rn.has(l))){e=xt(n,e),n=ad(2),l=_n(t,n,2),l!==null&&(id(n,l,t,e),Fl(l,2),Ht(l));break}}t=t.return}}function Nr(e,t,n){var l=e.pingCache;if(l===null){l=e.pingCache=new L0;var a=new Set;l.set(t,a)}else a=l.get(t),a===void 0&&(a=new Set,l.set(t,a));a.has(n)||(gr=!0,a.add(n),e=X0.bind(null,e,t,n),t.then(e,e))}function X0(e,t,n){var l=e.pingCache;l!==null&&l.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,Te===e&&(ue&n)===n&&(Me===4||Me===3&&(ue&62914560)===ue&&300>st()-Ki?(he&2)===0&&Ll(e,0):br|=n,Ul===ue&&(Ul=0)),Ht(e)}function ah(e,t){t===0&&(t=Wc()),e=Qn(e,t),e!==null&&(Fl(e,t),Ht(e))}function G0(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),ah(e,n)}function V0(e,t){var n=0;switch(e.tag){case 31:case 13:var l=e.stateNode,a=e.memoizedState;a!==null&&(n=a.retryLane);break;case 19:l=e.stateNode;break;case 22:l=e.stateNode._retryCache;break;default:throw Error(c(314))}l!==null&&l.delete(t),ah(e,n)}function Q0(e,t){return qu(e,t)}var eu=null,ql=null,Cr=!1,tu=!1,Rr=!1,Mn=0;function Ht(e){e!==ql&&e.next===null&&(ql===null?eu=ql=e:ql=ql.next=e),tu=!0,Cr||(Cr=!0,K0())}function Ma(e,t){if(!Rr&&tu){Rr=!0;do for(var n=!1,l=eu;l!==null;){if(e!==0){var a=l.pendingLanes;if(a===0)var s=0;else{var o=l.suspendedLanes,d=l.pingedLanes;s=(1<<31-ct(42|e)+1)-1,s&=a&~(o&~d),s=s&201326741?s&201326741|1:s?s|2:0}s!==0&&(n=!0,rh(l,s))}else s=ue,s=ii(l,l===Te?s:0,l.cancelPendingCommit!==null||l.timeoutHandle!==-1),(s&3)===0||Wl(l,s)||(n=!0,rh(l,s));l=l.next}while(n);Rr=!1}}function Z0(){ih()}function ih(){tu=Cr=!1;var e=0;Mn!==0&&ly()&&(e=Mn);for(var t=st(),n=null,l=eu;l!==null;){var a=l.next,s=uh(l,t);s===0?(l.next=null,n===null?eu=a:n.next=a,a===null&&(ql=n)):(n=l,(e!==0||(s&3)!==0)&&(tu=!0)),l=a}Xe!==0&&Xe!==5||Ma(e),Mn!==0&&(Mn=0)}function uh(e,t){for(var n=e.suspendedLanes,l=e.pingedLanes,a=e.expirationTimes,s=e.pendingLanes&-62914561;0d)break;var D=b.transferSize,U=b.initiatorType;D&&yh(U)&&(b=b.responseEnd,o+=D*(b"u"?null:document;function Rh(e,t,n){var l=Yl;if(l&&typeof t=="string"&&t){var a=bt(t);a='link[rel="'+e+'"][href="'+a+'"]',typeof n=="string"&&(a+='[crossorigin="'+n+'"]'),Ch.has(a)||(Ch.add(a),e={rel:e,crossOrigin:n,href:t},l.querySelector(a)===null&&(t=l.createElement("link"),We(t,"link",e),Ve(t),l.head.appendChild(t)))}}function dy(e){rn.D(e),Rh("dns-prefetch",e,null)}function hy(e,t){rn.C(e,t),Rh("preconnect",e,t)}function my(e,t,n){rn.L(e,t,n);var l=Yl;if(l&&e&&t){var a='link[rel="preload"][as="'+bt(t)+'"]';t==="image"&&n&&n.imageSrcSet?(a+='[imagesrcset="'+bt(n.imageSrcSet)+'"]',typeof n.imageSizes=="string"&&(a+='[imagesizes="'+bt(n.imageSizes)+'"]')):a+='[href="'+bt(e)+'"]';var s=a;switch(t){case"style":s=kl(e);break;case"script":s=Xl(e)}Ct.has(s)||(e=S({rel:"preload",href:t==="image"&&n&&n.imageSrcSet?void 0:e,as:t},n),Ct.set(s,e),l.querySelector(a)!==null||t==="style"&&l.querySelector(Ua(s))||t==="script"&&l.querySelector(Ba(s))||(t=l.createElement("link"),We(t,"link",e),Ve(t),l.head.appendChild(t)))}}function py(e,t){rn.m(e,t);var n=Yl;if(n&&e){var l=t&&typeof t.as=="string"?t.as:"script",a='link[rel="modulepreload"][as="'+bt(l)+'"][href="'+bt(e)+'"]',s=a;switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":s=Xl(e)}if(!Ct.has(s)&&(e=S({rel:"modulepreload",href:e},t),Ct.set(s,e),n.querySelector(a)===null)){switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(n.querySelector(Ba(s)))return}l=n.createElement("link"),We(l,"link",e),Ve(l),n.head.appendChild(l)}}}function yy(e,t,n){rn.S(e,t,n);var l=Yl;if(l&&e){var a=cl(l).hoistableStyles,s=kl(e);t=t||"default";var o=a.get(s);if(!o){var d={loading:0,preload:null};if(o=l.querySelector(Ua(s)))d.loading=5;else{e=S({rel:"stylesheet",href:e,"data-precedence":t},n),(n=Ct.get(s))&&Vr(e,n);var b=o=l.createElement("link");Ve(b),We(b,"link",e),b._p=new Promise(function(R,D){b.onload=R,b.onerror=D}),b.addEventListener("load",function(){d.loading|=1}),b.addEventListener("error",function(){d.loading|=2}),d.loading|=4,uu(o,t,l)}o={type:"stylesheet",instance:o,count:1,state:d},a.set(s,o)}}}function vy(e,t){rn.X(e,t);var n=Yl;if(n&&e){var l=cl(n).hoistableScripts,a=Xl(e),s=l.get(a);s||(s=n.querySelector(Ba(a)),s||(e=S({src:e,async:!0},t),(t=Ct.get(a))&&Qr(e,t),s=n.createElement("script"),Ve(s),We(s,"link",e),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function gy(e,t){rn.M(e,t);var n=Yl;if(n&&e){var l=cl(n).hoistableScripts,a=Xl(e),s=l.get(a);s||(s=n.querySelector(Ba(a)),s||(e=S({src:e,async:!0,type:"module"},t),(t=Ct.get(a))&&Qr(e,t),s=n.createElement("script"),Ve(s),We(s,"link",e),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function Oh(e,t,n,l){var a=(a=le.current)?iu(a):null;if(!a)throw Error(c(446));switch(e){case"meta":case"title":return null;case"style":return typeof n.precedence=="string"&&typeof n.href=="string"?(t=kl(n.href),n=cl(a).hoistableStyles,l=n.get(t),l||(l={type:"style",instance:null,count:0,state:null},n.set(t,l)),l):{type:"void",instance:null,count:0,state:null};case"link":if(n.rel==="stylesheet"&&typeof n.href=="string"&&typeof n.precedence=="string"){e=kl(n.href);var s=cl(a).hoistableStyles,o=s.get(e);if(o||(a=a.ownerDocument||a,o={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},s.set(e,o),(s=a.querySelector(Ua(e)))&&!s._p&&(o.instance=s,o.state.loading=5),Ct.has(e)||(n={rel:"preload",as:"style",href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},Ct.set(e,n),s||by(a,e,n,o.state))),t&&l===null)throw Error(c(528,""));return o}if(t&&l!==null)throw Error(c(529,""));return null;case"script":return t=n.async,n=n.src,typeof n=="string"&&t&&typeof t!="function"&&typeof t!="symbol"?(t=Xl(n),n=cl(a).hoistableScripts,l=n.get(t),l||(l={type:"script",instance:null,count:0,state:null},n.set(t,l)),l):{type:"void",instance:null,count:0,state:null};default:throw Error(c(444,e))}}function kl(e){return'href="'+bt(e)+'"'}function Ua(e){return'link[rel="stylesheet"]['+e+"]"}function zh(e){return S({},e,{"data-precedence":e.precedence,precedence:null})}function by(e,t,n,l){e.querySelector('link[rel="preload"][as="style"]['+t+"]")?l.loading=1:(t=e.createElement("link"),l.preload=t,t.addEventListener("load",function(){return l.loading|=1}),t.addEventListener("error",function(){return l.loading|=2}),We(t,"link",n),Ve(t),e.head.appendChild(t))}function Xl(e){return'[src="'+bt(e)+'"]'}function Ba(e){return"script[async]"+e}function Mh(e,t,n){if(t.count++,t.instance===null)switch(t.type){case"style":var l=e.querySelector('style[data-href~="'+bt(n.href)+'"]');if(l)return t.instance=l,Ve(l),l;var a=S({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return l=(e.ownerDocument||e).createElement("style"),Ve(l),We(l,"style",a),uu(l,n.precedence,e),t.instance=l;case"stylesheet":a=kl(n.href);var s=e.querySelector(Ua(a));if(s)return t.state.loading|=4,t.instance=s,Ve(s),s;l=zh(n),(a=Ct.get(a))&&Vr(l,a),s=(e.ownerDocument||e).createElement("link"),Ve(s);var o=s;return o._p=new Promise(function(d,b){o.onload=d,o.onerror=b}),We(s,"link",l),t.state.loading|=4,uu(s,n.precedence,e),t.instance=s;case"script":return s=Xl(n.src),(a=e.querySelector(Ba(s)))?(t.instance=a,Ve(a),a):(l=n,(a=Ct.get(s))&&(l=S({},n),Qr(l,a)),e=e.ownerDocument||e,a=e.createElement("script"),Ve(a),We(a,"link",l),e.head.appendChild(a),t.instance=a);case"void":return null;default:throw Error(c(443,t.type))}else t.type==="stylesheet"&&(t.state.loading&4)===0&&(l=t.instance,t.state.loading|=4,uu(l,n.precedence,e));return t.instance}function uu(e,t,n){for(var l=n.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=l.length?l[l.length-1]:null,s=a,o=0;o title"):null)}function Sy(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case"meta":case"title":return!0;case"style":if(typeof t.precedence!="string"||typeof t.href!="string"||t.href==="")break;return!0;case"link":if(typeof t.rel!="string"||typeof t.href!="string"||t.href===""||t.onLoad||t.onError)break;switch(t.rel){case"stylesheet":return e=t.disabled,typeof t.precedence=="string"&&e==null;default:return!0}case"script":if(t.async&&typeof t.async!="function"&&typeof t.async!="symbol"&&!t.onLoad&&!t.onError&&t.src&&typeof t.src=="string")return!0}return!1}function wh(e){return!(e.type==="stylesheet"&&(e.state.loading&3)===0)}function xy(e,t,n,l){if(n.type==="stylesheet"&&(typeof l.media!="string"||matchMedia(l.media).matches!==!1)&&(n.state.loading&4)===0){if(n.instance===null){var a=kl(l.href),s=t.querySelector(Ua(a));if(s){t=s._p,t!==null&&typeof t=="object"&&typeof t.then=="function"&&(e.count++,e=ru.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=s,Ve(s);return}s=t.ownerDocument||t,l=zh(l),(a=Ct.get(a))&&Vr(l,a),s=s.createElement("link"),Ve(s);var o=s;o._p=new Promise(function(d,b){o.onload=d,o.onerror=b}),We(s,"link",l),n.instance=s}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&(n.state.loading&3)===0&&(e.count++,n=ru.bind(e),t.addEventListener("load",n),t.addEventListener("error",n))}}var Zr=0;function _y(e,t){return e.stylesheets&&e.count===0&&ou(e,e.stylesheets),0Zr?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(l),clearTimeout(a)}}:null}function ru(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)ou(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var cu=null;function ou(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,cu=new Map,t.forEach(Ey,e),cu=null,ru.call(e))}function Ey(e,t){if(!(t.state.loading&4)){var n=cu.get(e);if(n)var l=n.get(null);else{n=new Map,cu.set(e,n);for(var a=e.querySelectorAll("link[data-precedence],style[data-precedence]"),s=0;s"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(u)}catch(i){console.error(i)}}return u(),tc.exports=qy(),tc.exports}var ky=Yy();var am="popstate";function Xy(u={}){function i(c,f){let{pathname:h,search:m,hash:g}=c.location;return hc("",{pathname:h,search:m,hash:g},f.state&&f.state.usr||null,f.state&&f.state.key||"default")}function r(c,f){return typeof f=="string"?f:Wa(f)}return Vy(i,r,null,u)}function Oe(u,i){if(u===!1||u===null||typeof u>"u")throw new Error(i)}function wt(u,i){if(!u){typeof console<"u"&&console.warn(i);try{throw new Error(i)}catch{}}}function Gy(){return Math.random().toString(36).substring(2,10)}function im(u,i){return{usr:u.state,key:u.key,idx:i}}function hc(u,i,r=null,c){return{pathname:typeof u=="string"?u:u.pathname,search:"",hash:"",...typeof i=="string"?Ql(i):i,state:r,key:i&&i.key||c||Gy()}}function Wa({pathname:u="/",search:i="",hash:r=""}){return i&&i!=="?"&&(u+=i.charAt(0)==="?"?i:"?"+i),r&&r!=="#"&&(u+=r.charAt(0)==="#"?r:"#"+r),u}function Ql(u){let i={};if(u){let r=u.indexOf("#");r>=0&&(i.hash=u.substring(r),u=u.substring(0,r));let c=u.indexOf("?");c>=0&&(i.search=u.substring(c),u=u.substring(0,c)),u&&(i.pathname=u)}return i}function Vy(u,i,r,c={}){let{window:f=document.defaultView,v5Compat:h=!1}=c,m=f.history,g="POP",y=null,v=T();v==null&&(v=0,m.replaceState({...m.state,idx:v},""));function T(){return(m.state||{idx:null}).idx}function S(){g="POP";let q=T(),H=q==null?null:q-v;v=q,y&&y({action:g,location:G.location,delta:H})}function N(q,H){g="PUSH";let Y=hc(G.location,q,H);v=T()+1;let V=im(Y,v),ne=G.createHref(Y);try{m.pushState(V,"",ne)}catch(de){if(de instanceof DOMException&&de.name==="DataCloneError")throw de;f.location.assign(ne)}h&&y&&y({action:g,location:G.location,delta:1})}function M(q,H){g="REPLACE";let Y=hc(G.location,q,H);v=T();let V=im(Y,v),ne=G.createHref(Y);m.replaceState(V,"",ne),h&&y&&y({action:g,location:G.location,delta:0})}function L(q){return Qy(q)}let G={get action(){return g},get location(){return u(f,m)},listen(q){if(y)throw new Error("A history only accepts one active listener");return f.addEventListener(am,S),y=q,()=>{f.removeEventListener(am,S),y=null}},createHref(q){return i(f,q)},createURL:L,encodeLocation(q){let H=L(q);return{pathname:H.pathname,search:H.search,hash:H.hash}},push:N,replace:M,go(q){return m.go(q)}};return G}function Qy(u,i=!1){let r="http://localhost";typeof window<"u"&&(r=window.location.origin!=="null"?window.location.origin:window.location.href),Oe(r,"No window.location.(origin|href) available to create URL");let c=typeof u=="string"?u:Wa(u);return c=c.replace(/ $/,"%20"),!i&&c.startsWith("//")&&(c=r+c),new URL(c,r)}function Em(u,i,r="/"){return Zy(u,i,r,!1)}function Zy(u,i,r,c){let f=typeof i=="string"?Ql(i):i,h=fn(f.pathname||"/",r);if(h==null)return null;let m=Tm(u);Ky(m);let g=null;for(let y=0;g==null&&y{let T={relativePath:v===void 0?m.path||"":v,caseSensitive:m.caseSensitive===!0,childrenIndex:g,route:m};if(T.relativePath.startsWith("/")){if(!T.relativePath.startsWith(c)&&y)return;Oe(T.relativePath.startsWith(c),`Absolute route path "${T.relativePath}" nested under path "${c}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),T.relativePath=T.relativePath.slice(c.length)}let S=on([c,T.relativePath]),N=r.concat(T);m.children&&m.children.length>0&&(Oe(m.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${S}".`),Tm(m.children,i,N,S,y)),!(m.path==null&&!m.index)&&i.push({path:S,score:ev(S,m.index),routesMeta:N})};return u.forEach((m,g)=>{if(m.path===""||!m.path?.includes("?"))h(m,g);else for(let y of Am(m.path))h(m,g,!0,y)}),i}function Am(u){let i=u.split("/");if(i.length===0)return[];let[r,...c]=i,f=r.endsWith("?"),h=r.replace(/\?$/,"");if(c.length===0)return f?[h,""]:[h];let m=Am(c.join("/")),g=[];return g.push(...m.map(y=>y===""?h:[h,y].join("/"))),f&&g.push(...m),g.map(y=>u.startsWith("/")&&y===""?"/":y)}function Ky(u){u.sort((i,r)=>i.score!==r.score?r.score-i.score:tv(i.routesMeta.map(c=>c.childrenIndex),r.routesMeta.map(c=>c.childrenIndex)))}var Jy=/^:[\w-]+$/,$y=3,Wy=2,Fy=1,Py=10,Iy=-2,um=u=>u==="*";function ev(u,i){let r=u.split("/"),c=r.length;return r.some(um)&&(c+=Iy),i&&(c+=Wy),r.filter(f=>!um(f)).reduce((f,h)=>f+(Jy.test(h)?$y:h===""?Fy:Py),c)}function tv(u,i){return u.length===i.length&&u.slice(0,-1).every((c,f)=>c===i[f])?u[u.length-1]-i[i.length-1]:0}function nv(u,i,r=!1){let{routesMeta:c}=u,f={},h="/",m=[];for(let g=0;g{if(T==="*"){let L=g[N]||"";m=h.slice(0,h.length-L.length).replace(/(.)\/+$/,"$1")}const M=g[N];return S&&!M?v[T]=void 0:v[T]=(M||"").replace(/%2F/g,"/"),v},{}),pathname:h,pathnameBase:m,pattern:u}}function lv(u,i=!1,r=!0){wt(u==="*"||!u.endsWith("*")||u.endsWith("/*"),`Route path "${u}" will be treated as if it were "${u.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${u.replace(/\*$/,"/*")}".`);let c=[],f="^"+u.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(m,g,y)=>(c.push({paramName:g,isOptional:y!=null}),y?"/?([^\\/]+)?":"/([^\\/]+)")).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return u.endsWith("*")?(c.push({paramName:"*"}),f+=u==="*"||u==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):r?f+="\\/*$":u!==""&&u!=="/"&&(f+="(?:(?=\\/|$))"),[new RegExp(f,i?void 0:"i"),c]}function av(u){try{return u.split("/").map(i=>decodeURIComponent(i).replace(/\//g,"%2F")).join("/")}catch(i){return wt(!1,`The URL path "${u}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${i}).`),u}}function fn(u,i){if(i==="/")return u;if(!u.toLowerCase().startsWith(i.toLowerCase()))return null;let r=i.endsWith("/")?i.length-1:i.length,c=u.charAt(r);return c&&c!=="/"?null:u.slice(r)||"/"}var iv=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,uv=u=>iv.test(u);function sv(u,i="/"){let{pathname:r,search:c="",hash:f=""}=typeof u=="string"?Ql(u):u,h;if(r)if(uv(r))h=r;else{if(r.includes("//")){let m=r;r=r.replace(/\/\/+/g,"/"),wt(!1,`Pathnames cannot have embedded double slashes - normalizing ${m} -> ${r}`)}r.startsWith("/")?h=sm(r.substring(1),"/"):h=sm(r,i)}else h=i;return{pathname:h,search:ov(c),hash:fv(f)}}function sm(u,i){let r=i.replace(/\/+$/,"").split("/");return u.split("/").forEach(f=>{f===".."?r.length>1&&r.pop():f!=="."&&r.push(f)}),r.length>1?r.join("/"):"/"}function ic(u,i,r,c){return`Cannot include a '${u}' character in a manually specified \`to.${i}\` field [${JSON.stringify(c)}]. Please separate it out to the \`to.${r}\` field. Alternatively you may provide the full path as a string in and the router will parse it for you.`}function rv(u){return u.filter((i,r)=>r===0||i.route.path&&i.route.path.length>0)}function Nm(u){let i=rv(u);return i.map((r,c)=>c===i.length-1?r.pathname:r.pathnameBase)}function Cm(u,i,r,c=!1){let f;typeof u=="string"?f=Ql(u):(f={...u},Oe(!f.pathname||!f.pathname.includes("?"),ic("?","pathname","search",f)),Oe(!f.pathname||!f.pathname.includes("#"),ic("#","pathname","hash",f)),Oe(!f.search||!f.search.includes("#"),ic("#","search","hash",f)));let h=u===""||f.pathname==="",m=h?"/":f.pathname,g;if(m==null)g=r;else{let S=i.length-1;if(!c&&m.startsWith("..")){let N=m.split("/");for(;N[0]==="..";)N.shift(),S-=1;f.pathname=N.join("/")}g=S>=0?i[S]:"/"}let y=sv(f,g),v=m&&m!=="/"&&m.endsWith("/"),T=(h||m===".")&&r.endsWith("/");return!y.pathname.endsWith("/")&&(v||T)&&(y.pathname+="/"),y}var on=u=>u.join("/").replace(/\/\/+/g,"/"),cv=u=>u.replace(/\/+$/,"").replace(/^\/*/,"/"),ov=u=>!u||u==="?"?"":u.startsWith("?")?u:"?"+u,fv=u=>!u||u==="#"?"":u.startsWith("#")?u:"#"+u;function dv(u){return u!=null&&typeof u.status=="number"&&typeof u.statusText=="string"&&typeof u.internal=="boolean"&&"data"in u}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var Rm=["POST","PUT","PATCH","DELETE"];new Set(Rm);var hv=["GET",...Rm];new Set(hv);var Zl=E.createContext(null);Zl.displayName="DataRouter";var Ou=E.createContext(null);Ou.displayName="DataRouterState";E.createContext(!1);var Om=E.createContext({isTransitioning:!1});Om.displayName="ViewTransition";var mv=E.createContext(new Map);mv.displayName="Fetchers";var pv=E.createContext(null);pv.displayName="Await";var kt=E.createContext(null);kt.displayName="Navigation";var Fa=E.createContext(null);Fa.displayName="Location";var dn=E.createContext({outlet:null,matches:[],isDataRoute:!1});dn.displayName="Route";var _c=E.createContext(null);_c.displayName="RouteError";function yv(u,{relative:i}={}){Oe(Pa(),"useHref() may be used only in the context of a component.");let{basename:r,navigator:c}=E.useContext(kt),{hash:f,pathname:h,search:m}=Ia(u,{relative:i}),g=h;return r!=="/"&&(g=h==="/"?r:on([r,h])),c.createHref({pathname:g,search:m,hash:f})}function Pa(){return E.useContext(Fa)!=null}function il(){return Oe(Pa(),"useLocation() may be used only in the context of a component."),E.useContext(Fa).location}var zm="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function Mm(u){E.useContext(kt).static||E.useLayoutEffect(u)}function vv(){let{isDataRoute:u}=E.useContext(dn);return u?zv():gv()}function gv(){Oe(Pa(),"useNavigate() may be used only in the context of a component.");let u=E.useContext(Zl),{basename:i,navigator:r}=E.useContext(kt),{matches:c}=E.useContext(dn),{pathname:f}=il(),h=JSON.stringify(Nm(c)),m=E.useRef(!1);return Mm(()=>{m.current=!0}),E.useCallback((y,v={})=>{if(wt(m.current,zm),!m.current)return;if(typeof y=="number"){r.go(y);return}let T=Cm(y,JSON.parse(h),f,v.relative==="path");u==null&&i!=="/"&&(T.pathname=T.pathname==="/"?i:on([i,T.pathname])),(v.replace?r.replace:r.push)(T,v.state,v)},[i,r,h,f,u])}E.createContext(null);function Ia(u,{relative:i}={}){let{matches:r}=E.useContext(dn),{pathname:c}=il(),f=JSON.stringify(Nm(r));return E.useMemo(()=>Cm(u,JSON.parse(f),c,i==="path"),[u,f,c,i])}function bv(u,i){return Dm(u,i)}function Dm(u,i,r,c,f){Oe(Pa(),"useRoutes() may be used only in the context of a component.");let{navigator:h}=E.useContext(kt),{matches:m}=E.useContext(dn),g=m[m.length-1],y=g?g.params:{},v=g?g.pathname:"/",T=g?g.pathnameBase:"/",S=g&&g.route;{let Y=S&&S.path||"";jm(v,!S||Y.endsWith("*")||Y.endsWith("*?"),`You rendered descendant (or called \`useRoutes()\`) at "${v}" (under ) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render. - -Please change the parent to .`)}let N=il(),M;if(i){let Y=typeof i=="string"?Ql(i):i;Oe(T==="/"||Y.pathname?.startsWith(T),`When overriding the location using \`\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${T}" but pathname "${Y.pathname}" was given in the \`location\` prop.`),M=Y}else M=N;let L=M.pathname||"/",G=L;if(T!=="/"){let Y=T.replace(/^\//,"").split("/");G="/"+L.replace(/^\//,"").split("/").slice(Y.length).join("/")}let q=Em(u,{pathname:G});wt(S||q!=null,`No routes matched location "${M.pathname}${M.search}${M.hash}" `),wt(q==null||q[q.length-1].route.element!==void 0||q[q.length-1].route.Component!==void 0||q[q.length-1].route.lazy!==void 0,`Matched leaf route at location "${M.pathname}${M.search}${M.hash}" does not have an element or Component. This means it will render an with a null value by default resulting in an "empty" page.`);let H=Tv(q&&q.map(Y=>Object.assign({},Y,{params:Object.assign({},y,Y.params),pathname:on([T,h.encodeLocation?h.encodeLocation(Y.pathname.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:Y.pathname]),pathnameBase:Y.pathnameBase==="/"?T:on([T,h.encodeLocation?h.encodeLocation(Y.pathnameBase.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:Y.pathnameBase])})),m,r,c,f);return i&&H?E.createElement(Fa.Provider,{value:{location:{pathname:"/",search:"",hash:"",state:null,key:"default",...M},navigationType:"POP"}},H):H}function Sv(){let u=Ov(),i=dv(u)?`${u.status} ${u.statusText}`:u instanceof Error?u.message:JSON.stringify(u),r=u instanceof Error?u.stack:null,c="rgba(200,200,200, 0.5)",f={padding:"0.5rem",backgroundColor:c},h={padding:"2px 4px",backgroundColor:c},m=null;return console.error("Error handled by React Router default ErrorBoundary:",u),m=E.createElement(E.Fragment,null,E.createElement("p",null,"💿 Hey developer 👋"),E.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",E.createElement("code",{style:h},"ErrorBoundary")," or"," ",E.createElement("code",{style:h},"errorElement")," prop on your route.")),E.createElement(E.Fragment,null,E.createElement("h2",null,"Unexpected Application Error!"),E.createElement("h3",{style:{fontStyle:"italic"}},i),r?E.createElement("pre",{style:f},r):null,m)}var xv=E.createElement(Sv,null),_v=class extends E.Component{constructor(u){super(u),this.state={location:u.location,revalidation:u.revalidation,error:u.error}}static getDerivedStateFromError(u){return{error:u}}static getDerivedStateFromProps(u,i){return i.location!==u.location||i.revalidation!=="idle"&&u.revalidation==="idle"?{error:u.error,location:u.location,revalidation:u.revalidation}:{error:u.error!==void 0?u.error:i.error,location:i.location,revalidation:u.revalidation||i.revalidation}}componentDidCatch(u,i){this.props.onError?this.props.onError(u,i):console.error("React Router caught the following error during render",u)}render(){return this.state.error!==void 0?E.createElement(dn.Provider,{value:this.props.routeContext},E.createElement(_c.Provider,{value:this.state.error,children:this.props.component})):this.props.children}};function Ev({routeContext:u,match:i,children:r}){let c=E.useContext(Zl);return c&&c.static&&c.staticContext&&(i.route.errorElement||i.route.ErrorBoundary)&&(c.staticContext._deepestRenderedBoundaryId=i.route.id),E.createElement(dn.Provider,{value:u},r)}function Tv(u,i=[],r=null,c=null,f=null){if(u==null){if(!r)return null;if(r.errors)u=r.matches;else if(i.length===0&&!r.initialized&&r.matches.length>0)u=r.matches;else return null}let h=u,m=r?.errors;if(m!=null){let T=h.findIndex(S=>S.route.id&&m?.[S.route.id]!==void 0);Oe(T>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(m).join(",")}`),h=h.slice(0,Math.min(h.length,T+1))}let g=!1,y=-1;if(r)for(let T=0;T=0?h=h.slice(0,y+1):h=[h[0]];break}}}let v=r&&c?(T,S)=>{c(T,{location:r.location,params:r.matches?.[0]?.params??{},errorInfo:S})}:void 0;return h.reduceRight((T,S,N)=>{let M,L=!1,G=null,q=null;r&&(M=m&&S.route.id?m[S.route.id]:void 0,G=S.route.errorElement||xv,g&&(y<0&&N===0?(jm("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),L=!0,q=null):y===N&&(L=!0,q=S.route.hydrateFallbackElement||null)));let H=i.concat(h.slice(0,N+1)),Y=()=>{let V;return M?V=G:L?V=q:S.route.Component?V=E.createElement(S.route.Component,null):S.route.element?V=S.route.element:V=T,E.createElement(Ev,{match:S,routeContext:{outlet:T,matches:H,isDataRoute:r!=null},children:V})};return r&&(S.route.ErrorBoundary||S.route.errorElement||N===0)?E.createElement(_v,{location:r.location,revalidation:r.revalidation,component:G,error:M,children:Y(),routeContext:{outlet:null,matches:H,isDataRoute:!0},onError:v}):Y()},null)}function Ec(u){return`${u} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function Av(u){let i=E.useContext(Zl);return Oe(i,Ec(u)),i}function Nv(u){let i=E.useContext(Ou);return Oe(i,Ec(u)),i}function Cv(u){let i=E.useContext(dn);return Oe(i,Ec(u)),i}function Tc(u){let i=Cv(u),r=i.matches[i.matches.length-1];return Oe(r.route.id,`${u} can only be used on routes that contain a unique "id"`),r.route.id}function Rv(){return Tc("useRouteId")}function Ov(){let u=E.useContext(_c),i=Nv("useRouteError"),r=Tc("useRouteError");return u!==void 0?u:i.errors?.[r]}function zv(){let{router:u}=Av("useNavigate"),i=Tc("useNavigate"),r=E.useRef(!1);return Mm(()=>{r.current=!0}),E.useCallback(async(f,h={})=>{wt(r.current,zm),r.current&&(typeof f=="number"?u.navigate(f):await u.navigate(f,{fromRouteId:i,...h}))},[u,i])}var rm={};function jm(u,i,r){!i&&!rm[u]&&(rm[u]=!0,wt(!1,r))}E.memo(Mv);function Mv({routes:u,future:i,state:r,unstable_onError:c}){return Dm(u,void 0,r,c,i)}function mc(u){Oe(!1,"A is only ever to be used as the child of element, never rendered directly. Please wrap your in a .")}function Dv({basename:u="/",children:i=null,location:r,navigationType:c="POP",navigator:f,static:h=!1}){Oe(!Pa(),"You cannot render a inside another . You should never have more than one in your app.");let m=u.replace(/^\/*/,"/"),g=E.useMemo(()=>({basename:m,navigator:f,static:h,future:{}}),[m,f,h]);typeof r=="string"&&(r=Ql(r));let{pathname:y="/",search:v="",hash:T="",state:S=null,key:N="default"}=r,M=E.useMemo(()=>{let L=fn(y,m);return L==null?null:{location:{pathname:L,search:v,hash:T,state:S,key:N},navigationType:c}},[m,y,v,T,S,N,c]);return wt(M!=null,` is not able to match the URL "${y}${v}${T}" because it does not start with the basename, so the won't render anything.`),M==null?null:E.createElement(kt.Provider,{value:g},E.createElement(Fa.Provider,{children:i,value:M}))}function jv({children:u,location:i}){return bv(pc(u),i)}function pc(u,i=[]){let r=[];return E.Children.forEach(u,(c,f)=>{if(!E.isValidElement(c))return;let h=[...i,f];if(c.type===E.Fragment){r.push.apply(r,pc(c.props.children,h));return}Oe(c.type===mc,`[${typeof c.type=="string"?c.type:c.type.name}] is not a component. All component children of must be a or `),Oe(!c.props.index||!c.props.children,"An index route cannot have child routes.");let m={id:c.props.id||h.join("-"),caseSensitive:c.props.caseSensitive,element:c.props.element,Component:c.props.Component,index:c.props.index,path:c.props.path,middleware:c.props.middleware,loader:c.props.loader,action:c.props.action,hydrateFallbackElement:c.props.hydrateFallbackElement,HydrateFallback:c.props.HydrateFallback,errorElement:c.props.errorElement,ErrorBoundary:c.props.ErrorBoundary,hasErrorBoundary:c.props.hasErrorBoundary===!0||c.props.ErrorBoundary!=null||c.props.errorElement!=null,shouldRevalidate:c.props.shouldRevalidate,handle:c.props.handle,lazy:c.props.lazy};c.props.children&&(m.children=pc(c.props.children,h)),r.push(m)}),r}var xu="get",_u="application/x-www-form-urlencoded";function zu(u){return u!=null&&typeof u.tagName=="string"}function wv(u){return zu(u)&&u.tagName.toLowerCase()==="button"}function Uv(u){return zu(u)&&u.tagName.toLowerCase()==="form"}function Bv(u){return zu(u)&&u.tagName.toLowerCase()==="input"}function Lv(u){return!!(u.metaKey||u.altKey||u.ctrlKey||u.shiftKey)}function Hv(u,i){return u.button===0&&(!i||i==="_self")&&!Lv(u)}var gu=null;function qv(){if(gu===null)try{new FormData(document.createElement("form"),0),gu=!1}catch{gu=!0}return gu}var Yv=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function uc(u){return u!=null&&!Yv.has(u)?(wt(!1,`"${u}" is not a valid \`encType\` for \`\`/\`\` and will default to "${_u}"`),null):u}function kv(u,i){let r,c,f,h,m;if(Uv(u)){let g=u.getAttribute("action");c=g?fn(g,i):null,r=u.getAttribute("method")||xu,f=uc(u.getAttribute("enctype"))||_u,h=new FormData(u)}else if(wv(u)||Bv(u)&&(u.type==="submit"||u.type==="image")){let g=u.form;if(g==null)throw new Error('Cannot submit a - ) : ( - Auto-assigned - )} -
- ))} -
-
- ); -} - -function AssignmentCard() { - const { session, releaseControl } = useSession(); - const assignment = session?.assignment; - const roverId = assignment?.roverId; - - const [busy, setBusy] = useState(false); - - async function handleRelease() { - if (!roverId) return; - setBusy(true); - try { - await releaseControl(roverId); - } catch (err) { - alert(err.message); - } finally { - setBusy(false); - } - } - - return ( -
-

Assignment

- {roverId ? ( -
-

Currently driving rover {roverId}

- -
- ) : ( -
-

Status: {assignment?.status ?? 'not assigned'}

- {assignment?.queuePosition && ( -

Queue position: {assignment.queuePosition}

- )} -
- )} -
- ); -} - -function SessionInspector() { - const { session } = useSession(); - const formatted = useMemo(() => JSON.stringify(session ?? {}, null, 2), [session]); - return ( -
-

Session snapshot

-
{formatted}
-
- ); -} - function DriverVideoPanel() { const { session } = useSession(); const roverId = session?.assignment?.roverId; @@ -217,25 +91,19 @@ function DriverVideoPanel() { }, [session?.roster, roverId]); return ( -
-
-
-

Video Feed

-

- {roverId ? `Rover ${roverId}` : 'No rover assigned'} -

-
-
+
{roverId ? ( - +
+ +
) : ( -

Assignment required to initialize video.

+

Assign a rover to view the video feed.

)}
); @@ -262,17 +130,17 @@ function AuthPanel() { } return ( -
-

Authentication

- +
+

Admin login

+ setUsername(e.target.value)} /> - {loading ? 'Logging in…' : 'Login as admin'} + {loading ? 'Logging in…' : 'Login'} -
+
@@ -308,24 +176,19 @@ function AuthPanel() { function DesktopLayout() { return ( -
-
+
+
-
-
+
+
-
-
- - - -
+
); @@ -333,47 +196,41 @@ function DesktopLayout() { function MobilePortraitLayout() { return ( -
+
- - -
); } function MobileLandscapeLayout() { return ( -
-
-
+
+
+
-
+
-
-
- - +
+
-
+
-
@@ -381,21 +238,15 @@ function MobileLandscapeLayout() { } function App() { - const { connected, session } = useSession(); const layout = useLayoutMode(); const renderedLayout = layout === 'desktop' ? : layout === 'mobile-landscape' ? : ; return (
-
- -
- -
- {renderedLayout} - -
-
+ +
{renderedLayout}
+ +
); } diff --git a/webui/src/components/AdminPanel.jsx b/webui/src/components/AdminPanel.jsx index ddffabb3..25f5f838 100644 --- a/webui/src/components/AdminPanel.jsx +++ b/webui/src/components/AdminPanel.jsx @@ -57,49 +57,43 @@ export default function AdminPanel() { if (!isAdmin) return null; return ( -
-
-

Admin Controls

-
- - -
-
+
+
+ Admin controls + +
-
+
{roster.map((rover) => ( -
+
-

{rover.name}

-

Locked: {lockMap[rover.id] ? 'yes' : 'no'}

+

{rover.name}

+

{lockMap[rover.id] ? 'locked' : 'unlocked'}

-
+
diff --git a/webui/src/components/AlertFeed.jsx b/webui/src/components/AlertFeed.jsx index 8d54069d..c3fcc0b5 100644 --- a/webui/src/components/AlertFeed.jsx +++ b/webui/src/components/AlertFeed.jsx @@ -30,7 +30,7 @@ export default function AlertFeed() { if (!visible.length) return null; return ( -
+
{visible.map((toast) => ( ))} @@ -41,14 +41,14 @@ export default function AlertFeed() { function AlertToast({ alert }) { const colorClasses = alert.color === 'error' - ? 'border-red-500/50 bg-red-500/20 text-red-100' + ? 'bg-red-500/30 text-red-100' : alert.color === 'warn' - ? 'border-amber-500/50 bg-amber-500/20 text-amber-100' - : 'border-emerald-500/40 bg-emerald-500/10 text-emerald-100'; + ? 'bg-amber-500/30 text-amber-100' + : 'bg-emerald-500/30 text-emerald-100'; return ( -
-

{alert.title || 'Alert'}

-

{alert.message}

+
+

{alert.title || 'Alert'}

+

{alert.message}

); } diff --git a/webui/src/components/DrivePanel.jsx b/webui/src/components/DrivePanel.jsx index e288655c..b191f7dd 100644 --- a/webui/src/components/DrivePanel.jsx +++ b/webui/src/components/DrivePanel.jsx @@ -19,25 +19,25 @@ export default function DrivePanel() { const updated = frame?.receivedAt ? new Date(frame.receivedAt).toLocaleTimeString() : null; return ( -
-
- Drive Control +
+
+ Drive control {roverId ? `Rover ${roverId}` : 'unassigned'}
-
+
-

Runs Start → Dock → Full commands to ready the rover.

-
- - {updated && Updated {updated}} +

Runs Start → Dock → Full to prep sensors.

+
+ + {updated && Sensors {updated}}
@@ -45,13 +45,11 @@ export default function DrivePanel() { type="button" onClick={seekDock} disabled={!roverId} - className="w-full rounded border border-cyan-500/40 bg-cyan-500/10 py-1 text-[0.7rem] font-semibold uppercase tracking-[0.3em] text-cyan-200 disabled:opacity-40" + className="w-full rounded-sm bg-black/50 px-1 py-1 text-xs text-slate-200 disabled:opacity-30" > - Seek Dock + Seek dock -

- Point the rover straight at the dock, about one foot away, before triggering. -

+

Point the rover straight at the dock, about one foot away.

@@ -59,7 +57,7 @@ export default function DrivePanel() {
-

Manual OI

+

Manual OI

{manualOiButtons.map((btn) => ( @@ -79,26 +77,26 @@ export default function DrivePanel() { type="button" onClick={stopMotors} disabled={!roverId} - className="flex-1 rounded border border-red-500/50 bg-red-500/10 py-1 text-[0.7rem] font-semibold uppercase tracking-[0.3em] text-red-200 disabled:opacity-40" + className="flex-1 rounded-sm bg-red-600/60 px-1 py-1 text-xs text-white disabled:opacity-40" > - Stop Motors + Stop motors
-

Sensor streaming auto-starts after each OI change.

+

Sensor streaming auto-starts after each OI change.

); } function SpeedRow({ left, right }) { return ( -
+
-

Left

+

Left

{left}

-

Right

+

Right

{right}

@@ -108,10 +106,8 @@ function SpeedRow({ left, right }) { function StatusPill({ label, active }) { return ( {label} diff --git a/webui/src/components/MobileControls.jsx b/webui/src/components/MobileControls.jsx index 3182b7d4..d295b426 100644 --- a/webui/src/components/MobileControls.jsx +++ b/webui/src/components/MobileControls.jsx @@ -27,9 +27,9 @@ function MobileJoystick() { }, [disabled, driveWithVector]); return ( -
-
Joystick
-
+
+
Joystick
+
-

+

Drag to drive. Release to stop sending drive commands.

@@ -79,14 +79,14 @@ function AuxMotorControls() { ]; return ( -
-
Aux Motors
-
+
+
Aux motors
+
@@ -94,19 +94,19 @@ function AuxMotorControls() { type="button" onClick={stopAll} disabled={disabled} - className="flex-1 rounded border border-slate-800 bg-black/40 py-1 text-[0.7rem] font-semibold uppercase tracking-[0.2em] text-slate-200 disabled:opacity-40" + className="flex-1 rounded-sm bg-black/40 px-1 py-1 text-xs text-slate-200 disabled:opacity-40" > Stop all
-
+
{auxButtons.map((btn) => ( @@ -118,7 +118,7 @@ function AuxMotorControls() { export default function MobileControlsStack() { return ( -
+
diff --git a/webui/src/components/TelemetryPanel.jsx b/webui/src/components/TelemetryPanel.jsx index 298a1443..b4860721 100644 --- a/webui/src/components/TelemetryPanel.jsx +++ b/webui/src/components/TelemetryPanel.jsx @@ -1,3 +1,4 @@ +import { useMemo, useState } from 'react'; import { useSession } from '../context/SessionContext.jsx'; import { useTelemetryFrame } from '../context/TelemetryContext.jsx'; @@ -7,50 +8,99 @@ function formatMetric(value, fallback = '--') { } export default function TelemetryPanel() { - const { session } = useSession(); + const { connected, session, requestControl } = useSession(); const roverId = session?.assignment?.roverId; const frame = useTelemetryFrame(roverId); const sensors = frame?.sensors || {}; - const voltage = sensors.voltageMv != null ? (sensors.voltageMv / 1000).toFixed(2) : null; - const current = sensors.currentMa != null ? (sensors.currentMa / 1000).toFixed(2) : null; + const voltage = sensors.voltageMv != null ? `${(sensors.voltageMv / 1000).toFixed(2)} V` : null; + const current = sensors.currentMa != null ? `${sensors.currentMa} mA` : null; const charge = sensors.batteryChargeMah; const capacity = sensors.batteryCapacityMah; const updated = frame?.receivedAt ? new Date(frame.receivedAt).toLocaleTimeString() : null; const rawSnippet = frame?.raw ? (frame.raw.length > 80 ? `${frame.raw.slice(0, 80)}…` : frame.raw) : null; + const roster = session?.roster ?? []; + const isAdmin = useMemo( + () => session?.role === 'admin' || session?.role === 'lockdown' || session?.role === 'lockdown-admin', + [session?.role], + ); + const [pending, setPending] = useState({}); + + async function handleRequest(roverId) { + if (!roverId) return; + setPending((prev) => ({ ...prev, [roverId]: true })); + try { + await requestControl(roverId); + } catch (err) { + alert(err.message); + } finally { + setPending((prev) => ({ ...prev, [roverId]: false })); + } + } return ( -
-
- Telemetry - {updated ? `Updated ${updated}` : 'waiting'} +
+
+ {connected ? 'online' : 'offline'} + · role {session?.role || 'unknown'} + · mode {session?.mode || '--'} + {updated && · sensors {updated}}
{!roverId ? ( -

Assignment required to view sensors.

+

Assign a rover to view sensors.

) : !frame ? ( -

No sensor frames yet.

+

Waiting for sensor frames…

) : ( -
+
- - - + + +
)} {rawSnippet && ( -
+        
           {rawSnippet}
         
)} +
+

Rovers

+ {roster.length === 0 ? ( +

No roster data.

+ ) : ( +
    + {roster.map((rover) => ( +
  • +
    +

    {rover.name}

    +

    + {rover.locked ? 'locked' : 'free'} · {rover.lastSeen ? 'seen' : 'unknown'} +

    +
    + {isAdmin && ( + + )} +
  • + ))} +
+ )} +
); } function Metric({ label, value }) { return ( -
- {label} - {value} +
+ {label} + {value}
); } diff --git a/webui/src/components/VideoTile.jsx b/webui/src/components/VideoTile.jsx index 8558a4be..7f076e72 100644 --- a/webui/src/components/VideoTile.jsx +++ b/webui/src/components/VideoTile.jsx @@ -124,8 +124,8 @@ export default function VideoTile({ sessionInfo, label, forceMute = false, telem : status; return ( -
-
+
+
- -
- {label} · {renderedStatus} -
+
); } -function BatteryBar({ charge, capacity, config }) { +function BatteryBar({ charge, capacity, config, label, status }) { if (charge == null || !config?.full || config.warn == null) { - return null; + return ( +
+ {label} + {status} +
+ ); } const span = config.full - config.warn; if (span <= 0) return null; @@ -160,23 +158,20 @@ function BatteryBar({ charge, capacity, config }) { const percentDisplay = Math.round(percent * 100); const depleted = normalized <= 0; const urgent = config.urgent != null && charge <= config.urgent; - const barClass = depleted - ? 'bg-red-500 animate-pulse' - : urgent - ? 'bg-amber-400' - : 'bg-emerald-500'; + const barClass = depleted ? 'bg-red-500 animate-pulse' : urgent ? 'bg-amber-400' : 'bg-emerald-500'; const capText = capacity ? `${charge}/${capacity}` : `${charge}`; return ( -
-
+
+
+ {label} + {status} +
+
Battery {capText} mAh
-
-
+
+
); @@ -199,20 +194,16 @@ function HudOverlay({ frame }) { { label: 'B-R', active: bumps.bumpRight }, ]; const wheelBadges = [ - { label: 'DROP L', active: bumps.wheelDropLeft }, - { label: 'DROP R', active: bumps.wheelDropRight }, + { label: 'Drop L', active: bumps.wheelDropLeft }, + { label: 'Drop R', active: bumps.wheelDropRight }, ]; return ( -
-
-
- - SENSORS +
+
+
+ + sensor
{bumperBadges.map((badge) => ( @@ -232,11 +223,7 @@ function HudOverlay({ frame }) { function HudBadge({ label, active }) { return ( {label} @@ -247,9 +234,7 @@ function OvercurrentOverlay({ active }) { if (!active) return null; return (
-
- Overcurrent -
+
Overcurrent
); } diff --git a/webui/src/hooks/useVideoRequests.js b/webui/src/hooks/useVideoRequests.js index 34a31c9b..1c4d9cda 100644 --- a/webui/src/hooks/useVideoRequests.js +++ b/webui/src/hooks/useVideoRequests.js @@ -4,13 +4,13 @@ import { useSocket } from '../context/SocketContext.jsx'; export function useVideoRequests(roverIds = []) { const socket = useSocket(); const [sources, setSources] = useState({}); - const ids = useMemo(() => Array.from(new Set(roverIds.filter(Boolean))), [roverIds]); - const idsKey = ids.join('|'); + const normalizedKey = Array.isArray(roverIds) ? roverIds.filter(Boolean).join('|') : ''; useEffect(() => { - if (!ids.length) { + if (!normalizedKey) { return undefined; } + const ids = normalizedKey.split('|'); let cancelled = false; ids.forEach((roverId) => { socket.emit('video:request', { roverId }, (resp = {}) => { @@ -25,9 +25,11 @@ export function useVideoRequests(roverIds = []) { return () => { cancelled = true; }; - }, [socket, idsKey, ids]); + }, [socket, normalizedKey]); + const filtered = useMemo(() => { - if (!ids.length) return {}; + if (!normalizedKey) return {}; + const ids = normalizedKey.split('|'); const next = {}; ids.forEach((id) => { if (sources[id]) { @@ -35,7 +37,7 @@ export function useVideoRequests(roverIds = []) { } }); return next; - }, [ids, sources]); + }, [normalizedKey, sources]); return filtered; } From 7a7a194fdedf062df8dfa118f1fda757a59ea045 Mon Sep 17 00:00:00 2001 From: legop3 Date: Sat, 15 Nov 2025 21:52:50 -0500 Subject: [PATCH 25/61] guh --- .../{index-CJa482Eg.js => index-CXibTtk4.js} | 2 +- server/public/index.html | 2 +- webui/src/hooks/useVideoRequests.js | 33 ++++++++----------- 3 files changed, 16 insertions(+), 21 deletions(-) rename server/public/assets/{index-CJa482Eg.js => index-CXibTtk4.js} (96%) diff --git a/server/public/assets/index-CJa482Eg.js b/server/public/assets/index-CXibTtk4.js similarity index 96% rename from server/public/assets/index-CJa482Eg.js rename to server/public/assets/index-CXibTtk4.js index 2ee5515f..666f3f66 100644 --- a/server/public/assets/index-CJa482Eg.js +++ b/server/public/assets/index-CXibTtk4.js @@ -8,4 +8,4 @@ Error generating stack: `+l.message+` `+l.stack}}var Hu=Object.prototype.hasOwnProperty,qu=u.unstable_scheduleCallback,Yu=u.unstable_cancelCallback,sp=u.unstable_shouldYield,cp=u.unstable_requestPaint,se=u.unstable_now,rp=u.unstable_getCurrentPriorityLevel,Vr=u.unstable_ImmediatePriority,Qr=u.unstable_UserBlockingPriority,ei=u.unstable_NormalPriority,op=u.unstable_LowPriority,Zr=u.unstable_IdlePriority,fp=u.log,hp=u.unstable_setDisableYieldValue,$l=null,ce=null;function dn(t){if(typeof fp=="function"&&hp(t),ce&&typeof ce.setStrictMode=="function")try{ce.setStrictMode($l,t)}catch{}}var re=Math.clz32?Math.clz32:pp,dp=Math.log,mp=Math.LN2;function pp(t){return t>>>=0,t===0?32:31-(dp(t)/mp|0)|0}var ni=256,li=262144,ai=4194304;function Yn(t){var e=t&42;if(e!==0)return e;switch(t&-t){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return t&261888;case 262144:case 524288:case 1048576:case 2097152:return t&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return t&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return t}}function ii(t,e,n){var l=t.pendingLanes;if(l===0)return 0;var a=0,s=t.suspendedLanes,o=t.pingedLanes;t=t.warmLanes;var h=l&134217727;return h!==0?(l=h&~s,l!==0?a=Yn(l):(o&=h,o!==0?a=Yn(o):n||(n=h&~t,n!==0&&(a=Yn(n))))):(h=l&~s,h!==0?a=Yn(h):o!==0?a=Yn(o):n||(n=l&~t,n!==0&&(a=Yn(n)))),a===0?0:e!==0&&e!==a&&(e&s)===0&&(s=a&-a,n=e&-e,s>=n||s===32&&(n&4194048)!==0)?e:a}function Wl(t,e){return(t.pendingLanes&~(t.suspendedLanes&~t.pingedLanes)&e)===0}function yp(t,e){switch(t){case 1:case 2:case 4:case 8:case 64:return e+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 e+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 Kr(){var t=ai;return ai<<=1,(ai&62914560)===0&&(ai=4194304),t}function ku(t){for(var e=[],n=0;31>n;n++)e.push(t);return e}function Fl(t,e){t.pendingLanes|=e,e!==268435456&&(t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0)}function vp(t,e,n,l,a,s){var o=t.pendingLanes;t.pendingLanes=n,t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0,t.expiredLanes&=n,t.entangledLanes&=n,t.errorRecoveryDisabledLanes&=n,t.shellSuspendCounter=0;var h=t.entanglements,g=t.expirationTimes,N=t.hiddenUpdates;for(n=o&~n;0"u")return null;try{return t.activeElement||t.body}catch{return t.body}}var Ep=/[\n"\\]/g;function ge(t){return t.replace(Ep,function(e){return"\\"+e.charCodeAt(0).toString(16)+" "})}function Ku(t,e,n,l,a,s,o,h){t.name="",o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"?t.type=o:t.removeAttribute("type"),e!=null?o==="number"?(e===0&&t.value===""||t.value!=e)&&(t.value=""+ve(e)):t.value!==""+ve(e)&&(t.value=""+ve(e)):o!=="submit"&&o!=="reset"||t.removeAttribute("value"),e!=null?Ju(t,o,ve(e)):n!=null?Ju(t,o,ve(n)):l!=null&&t.removeAttribute("value"),a==null&&s!=null&&(t.defaultChecked=!!s),a!=null&&(t.checked=a&&typeof a!="function"&&typeof a!="symbol"),h!=null&&typeof h!="function"&&typeof h!="symbol"&&typeof h!="boolean"?t.name=""+ve(h):t.removeAttribute("name")}function uo(t,e,n,l,a,s,o,h){if(s!=null&&typeof s!="function"&&typeof s!="symbol"&&typeof s!="boolean"&&(t.type=s),e!=null||n!=null){if(!(s!=="submit"&&s!=="reset"||e!=null)){Zu(t);return}n=n!=null?""+ve(n):"",e=e!=null?""+ve(e):n,h||e===t.value||(t.value=e),t.defaultValue=e}l=l??a,l=typeof l!="function"&&typeof l!="symbol"&&!!l,t.checked=h?t.checked:!!l,t.defaultChecked=!!l,o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"&&(t.name=o),Zu(t)}function Ju(t,e,n){e==="number"&&ci(t.ownerDocument)===t||t.defaultValue===""+n||(t.defaultValue=""+n)}function fl(t,e,n,l){if(t=t.options,e){e={};for(var a=0;a"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Iu=!1;if(Qe)try{var ea={};Object.defineProperty(ea,"passive",{get:function(){Iu=!0}}),window.addEventListener("test",ea,ea),window.removeEventListener("test",ea,ea)}catch{Iu=!1}var pn=null,ts=null,oi=null;function mo(){if(oi)return oi;var t,e=ts,n=e.length,l,a="value"in pn?pn.value:pn.textContent,s=a.length;for(t=0;t=aa),So=" ",xo=!1;function _o(t,e){switch(t){case"keyup":return Fp.indexOf(e.keyCode)!==-1;case"keydown":return e.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Eo(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var pl=!1;function Ip(t,e){switch(t){case"compositionend":return Eo(e);case"keypress":return e.which!==32?null:(xo=!0,So);case"textInput":return t=e.data,t===So&&xo?null:t;default:return null}}function ty(t,e){if(pl)return t==="compositionend"||!is&&_o(t,e)?(t=mo(),oi=ts=pn=null,pl=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(e.ctrlKey||e.altKey||e.metaKey)||e.ctrlKey&&e.altKey){if(e.char&&1=e)return{node:n,offset:e-t};t=l}t:{for(;n;){if(n.nextSibling){n=n.nextSibling;break t}n=n.parentNode}n=void 0}n=Mo(n)}}function wo(t,e){return t&&e?t===e?!0:t&&t.nodeType===3?!1:e&&e.nodeType===3?wo(t,e.parentNode):"contains"in t?t.contains(e):t.compareDocumentPosition?!!(t.compareDocumentPosition(e)&16):!1:!1}function jo(t){t=t!=null&&t.ownerDocument!=null&&t.ownerDocument.defaultView!=null?t.ownerDocument.defaultView:window;for(var e=ci(t.document);e instanceof t.HTMLIFrameElement;){try{var n=typeof e.contentWindow.location.href=="string"}catch{n=!1}if(n)t=e.contentWindow;else break;e=ci(t.document)}return e}function cs(t){var e=t&&t.nodeName&&t.nodeName.toLowerCase();return e&&(e==="input"&&(t.type==="text"||t.type==="search"||t.type==="tel"||t.type==="url"||t.type==="password")||e==="textarea"||t.contentEditable==="true")}var cy=Qe&&"documentMode"in document&&11>=document.documentMode,yl=null,rs=null,ca=null,os=!1;function Uo(t,e,n){var l=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;os||yl==null||yl!==ci(l)||(l=yl,"selectionStart"in l&&cs(l)?l={start:l.selectionStart,end:l.selectionEnd}:(l=(l.ownerDocument&&l.ownerDocument.defaultView||window).getSelection(),l={anchorNode:l.anchorNode,anchorOffset:l.anchorOffset,focusNode:l.focusNode,focusOffset:l.focusOffset}),ca&&sa(ca,l)||(ca=l,l=lu(rs,"onSelect"),0>=o,a-=o,je=1<<32-re(e)+a|n<et?(st=K,K=null):st=K.sibling;var ft=O(A,K,R[et],j);if(ft===null){K===null&&(K=st);break}t&&K&&ft.alternate===null&&e(A,K),x=s(ft,x,et),ot===null?J=ft:ot.sibling=ft,ot=ft,K=st}if(et===R.length)return n(A,K),ct&&Ke(A,et),J;if(K===null){for(;etet?(st=K,K=null):st=K.sibling;var Ln=O(A,K,ft.value,j);if(Ln===null){K===null&&(K=st);break}t&&K&&Ln.alternate===null&&e(A,K),x=s(Ln,x,et),ot===null?J=Ln:ot.sibling=Ln,ot=Ln,K=st}if(ft.done)return n(A,K),ct&&Ke(A,et),J;if(K===null){for(;!ft.done;et++,ft=R.next())ft=U(A,ft.value,j),ft!==null&&(x=s(ft,x,et),ot===null?J=ft:ot.sibling=ft,ot=ft);return ct&&Ke(A,et),J}for(K=l(K);!ft.done;et++,ft=R.next())ft=M(K,A,et,ft.value,j),ft!==null&&(t&&ft.alternate!==null&&K.delete(ft.key===null?et:ft.key),x=s(ft,x,et),ot===null?J=ft:ot.sibling=ft,ot=ft);return t&&K.forEach(function(N0){return e(A,N0)}),ct&&Ke(A,et),J}function xt(A,x,R,j){if(typeof R=="object"&&R!==null&&R.type===k&&R.key===null&&(R=R.props.children),typeof R=="object"&&R!==null){switch(R.$$typeof){case z:t:{for(var J=R.key;x!==null;){if(x.key===J){if(J=R.type,J===k){if(x.tag===7){n(A,x.sibling),j=a(x,R.props.children),j.return=A,A=j;break t}}else if(x.elementType===J||typeof J=="object"&&J!==null&&J.$$typeof===_t&&Fn(J)===x.type){n(A,x.sibling),j=a(x,R.props),ma(j,R),j.return=A,A=j;break t}n(A,x);break}else e(A,x);x=x.sibling}R.type===k?(j=Zn(R.props.children,A.mode,j,R.key),j.return=A,A=j):(j=Si(R.type,R.key,R.props,null,A.mode,j),ma(j,R),j.return=A,A=j)}return o(A);case H:t:{for(J=R.key;x!==null;){if(x.key===J)if(x.tag===4&&x.stateNode.containerInfo===R.containerInfo&&x.stateNode.implementation===R.implementation){n(A,x.sibling),j=a(x,R.children||[]),j.return=A,A=j;break t}else{n(A,x);break}else e(A,x);x=x.sibling}j=vs(R,A.mode,j),j.return=A,A=j}return o(A);case _t:return R=Fn(R),xt(A,x,R,j)}if(Ne(R))return Q(A,x,R,j);if(kt(R)){if(J=kt(R),typeof J!="function")throw Error(r(150));return R=J.call(R),$(A,x,R,j)}if(typeof R.then=="function")return xt(A,x,Ri(R),j);if(R.$$typeof===V)return xt(A,x,Ei(A,R),j);Ni(A,R)}return typeof R=="string"&&R!==""||typeof R=="number"||typeof R=="bigint"?(R=""+R,x!==null&&x.tag===6?(n(A,x.sibling),j=a(x,R),j.return=A,A=j):(n(A,x),j=ys(R,A.mode,j),j.return=A,A=j),o(A)):n(A,x)}return function(A,x,R,j){try{da=0;var J=xt(A,x,R,j);return Rl=null,J}catch(K){if(K===Cl||K===Ai)throw K;var ot=fe(29,K,null,A.mode);return ot.lanes=j,ot.return=A,ot}finally{}}}var In=af(!0),uf=af(!1),Sn=!1;function Os(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function zs(t,e){t=t.updateQueue,e.updateQueue===t&&(e.updateQueue={baseState:t.baseState,firstBaseUpdate:t.firstBaseUpdate,lastBaseUpdate:t.lastBaseUpdate,shared:t.shared,callbacks:null})}function xn(t){return{lane:t,tag:0,payload:null,callback:null,next:null}}function _n(t,e,n){var l=t.updateQueue;if(l===null)return null;if(l=l.shared,(dt&2)!==0){var a=l.pending;return a===null?e.next=e:(e.next=a.next,a.next=e),l.pending=e,e=bi(t),Xo(t,null,n),e}return gi(t,l,e,n),bi(t)}function pa(t,e,n){if(e=e.updateQueue,e!==null&&(e=e.shared,(n&4194048)!==0)){var l=e.lanes;l&=t.pendingLanes,n|=l,e.lanes=n,$r(t,n)}}function Ms(t,e){var n=t.updateQueue,l=t.alternate;if(l!==null&&(l=l.updateQueue,n===l)){var a=null,s=null;if(n=n.firstBaseUpdate,n!==null){do{var o={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};s===null?a=s=o:s=s.next=o,n=n.next}while(n!==null);s===null?a=s=e:s=s.next=e}else a=s=e;n={baseState:l.baseState,firstBaseUpdate:a,lastBaseUpdate:s,shared:l.shared,callbacks:l.callbacks},t.updateQueue=n;return}t=n.lastBaseUpdate,t===null?n.firstBaseUpdate=e:t.next=e,n.lastBaseUpdate=e}var Ds=!1;function ya(){if(Ds){var t=Al;if(t!==null)throw t}}function va(t,e,n,l){Ds=!1;var a=t.updateQueue;Sn=!1;var s=a.firstBaseUpdate,o=a.lastBaseUpdate,h=a.shared.pending;if(h!==null){a.shared.pending=null;var g=h,N=g.next;g.next=null,o===null?s=N:o.next=N,o=g;var D=t.alternate;D!==null&&(D=D.updateQueue,h=D.lastBaseUpdate,h!==o&&(h===null?D.firstBaseUpdate=N:h.next=N,D.lastBaseUpdate=g))}if(s!==null){var U=a.baseState;o=0,D=N=g=null,h=s;do{var O=h.lane&-536870913,M=O!==h.lane;if(M?(ut&O)===O:(l&O)===O){O!==0&&O===Tl&&(Ds=!0),D!==null&&(D=D.next={lane:0,tag:h.tag,payload:h.payload,callback:null,next:null});t:{var Q=t,$=h;O=e;var xt=n;switch($.tag){case 1:if(Q=$.payload,typeof Q=="function"){U=Q.call(xt,U,O);break t}U=Q;break t;case 3:Q.flags=Q.flags&-65537|128;case 0:if(Q=$.payload,O=typeof Q=="function"?Q.call(xt,U,O):Q,O==null)break t;U=S({},U,O);break t;case 2:Sn=!0}}O=h.callback,O!==null&&(t.flags|=64,M&&(t.flags|=8192),M=a.callbacks,M===null?a.callbacks=[O]:M.push(O))}else M={lane:O,tag:h.tag,payload:h.payload,callback:h.callback,next:null},D===null?(N=D=M,g=U):D=D.next=M,o|=O;if(h=h.next,h===null){if(h=a.shared.pending,h===null)break;M=h,h=M.next,M.next=null,a.lastBaseUpdate=M,a.shared.pending=null}}while(!0);D===null&&(g=U),a.baseState=g,a.firstBaseUpdate=N,a.lastBaseUpdate=D,s===null&&(a.shared.lanes=0),Rn|=o,t.lanes=o,t.memoizedState=U}}function sf(t,e){if(typeof t!="function")throw Error(r(191,t));t.call(e)}function cf(t,e){var n=t.callbacks;if(n!==null)for(t.callbacks=null,t=0;ts?s:8;var o=w.T,h={};w.T=h,Fs(t,!1,e,n);try{var g=a(),N=w.S;if(N!==null&&N(h,g),g!==null&&typeof g=="object"&&typeof g.then=="function"){var D=vy(g,l);Sa(t,e,D,ye(t))}else Sa(t,e,l,ye(t))}catch(U){Sa(t,e,{then:function(){},status:"rejected",reason:U},ye())}finally{X.p=s,o!==null&&h.types!==null&&(o.types=h.types),w.T=o}}function Ey(){}function $s(t,e,n,l){if(t.tag!==5)throw Error(r(476));var a=Yf(t).queue;qf(t,a,e,W,n===null?Ey:function(){return kf(t),n(l)})}function Yf(t){var e=t.memoizedState;if(e!==null)return e;e={memoizedState:W,baseState:W,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Fe,lastRenderedState:W},next:null};var n={};return e.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Fe,lastRenderedState:n},next:null},t.memoizedState=e,t=t.alternate,t!==null&&(t.memoizedState=e),e}function kf(t){var e=Yf(t);e.next===null&&(e=t.alternate.memoizedState),Sa(t,e.next.queue,{},ye())}function Ws(){return Jt(La)}function Xf(){return jt().memoizedState}function Gf(){return jt().memoizedState}function Ty(t){for(var e=t.return;e!==null;){switch(e.tag){case 24:case 3:var n=ye();t=xn(n);var l=_n(e,t,n);l!==null&&(ue(l,e,n),pa(l,e,n)),e={cache:As()},t.payload=e;return}e=e.return}}function Ay(t,e,n){var l=ye();n={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},Hi(t)?Qf(e,n):(n=ms(t,e,n,l),n!==null&&(ue(n,t,l),Zf(n,e,l)))}function Vf(t,e,n){var l=ye();Sa(t,e,n,l)}function Sa(t,e,n,l){var a={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(Hi(t))Qf(e,a);else{var s=t.alternate;if(t.lanes===0&&(s===null||s.lanes===0)&&(s=e.lastRenderedReducer,s!==null))try{var o=e.lastRenderedState,h=s(o,n);if(a.hasEagerState=!0,a.eagerState=h,oe(h,o))return gi(t,e,a,0),Tt===null&&vi(),!1}catch{}finally{}if(n=ms(t,e,a,l),n!==null)return ue(n,t,l),Zf(n,e,l),!0}return!1}function Fs(t,e,n,l){if(l={lane:2,revertLane:Oc(),gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},Hi(t)){if(e)throw Error(r(479))}else e=ms(t,n,l,2),e!==null&&ue(e,t,2)}function Hi(t){var e=t.alternate;return t===tt||e!==null&&e===tt}function Qf(t,e){Ol=Mi=!0;var n=t.pending;n===null?e.next=e:(e.next=n.next,n.next=e),t.pending=e}function Zf(t,e,n){if((n&4194048)!==0){var l=e.lanes;l&=t.pendingLanes,n|=l,e.lanes=n,$r(t,n)}}var xa={readContext:Jt,use:ji,useCallback:zt,useContext:zt,useEffect:zt,useImperativeHandle:zt,useLayoutEffect:zt,useInsertionEffect:zt,useMemo:zt,useReducer:zt,useRef:zt,useState:zt,useDebugValue:zt,useDeferredValue:zt,useTransition:zt,useSyncExternalStore:zt,useId:zt,useHostTransitionStatus:zt,useFormState:zt,useActionState:zt,useOptimistic:zt,useMemoCache:zt,useCacheRefresh:zt};xa.useEffectEvent=zt;var Kf={readContext:Jt,use:ji,useCallback:function(t,e){return It().memoizedState=[t,e===void 0?null:e],t},useContext:Jt,useEffect:zf,useImperativeHandle:function(t,e,n){n=n!=null?n.concat([t]):null,Bi(4194308,4,jf.bind(null,e,t),n)},useLayoutEffect:function(t,e){return Bi(4194308,4,t,e)},useInsertionEffect:function(t,e){Bi(4,2,t,e)},useMemo:function(t,e){var n=It();e=e===void 0?null:e;var l=t();if(tl){dn(!0);try{t()}finally{dn(!1)}}return n.memoizedState=[l,e],l},useReducer:function(t,e,n){var l=It();if(n!==void 0){var a=n(e);if(tl){dn(!0);try{n(e)}finally{dn(!1)}}}else a=e;return l.memoizedState=l.baseState=a,t={pending:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:a},l.queue=t,t=t.dispatch=Ay.bind(null,tt,t),[l.memoizedState,t]},useRef:function(t){var e=It();return t={current:t},e.memoizedState=t},useState:function(t){t=Vs(t);var e=t.queue,n=Vf.bind(null,tt,e);return e.dispatch=n,[t.memoizedState,n]},useDebugValue:Ks,useDeferredValue:function(t,e){var n=It();return Js(n,t,e)},useTransition:function(){var t=Vs(!1);return t=qf.bind(null,tt,t.queue,!0,!1),It().memoizedState=t,[!1,t]},useSyncExternalStore:function(t,e,n){var l=tt,a=It();if(ct){if(n===void 0)throw Error(r(407));n=n()}else{if(n=e(),Tt===null)throw Error(r(349));(ut&127)!==0||mf(l,e,n)}a.memoizedState=n;var s={value:n,getSnapshot:e};return a.queue=s,zf(yf.bind(null,l,s,t),[t]),l.flags|=2048,Ml(9,{destroy:void 0},pf.bind(null,l,s,n,e),null),n},useId:function(){var t=It(),e=Tt.identifierPrefix;if(ct){var n=Ue,l=je;n=(l&~(1<<32-re(l)-1)).toString(32)+n,e="_"+e+"R_"+n,n=Di++,0<\/script>",s=s.removeChild(s.firstChild);break;case"select":s=typeof l.is=="string"?o.createElement("select",{is:l.is}):o.createElement("select"),l.multiple?s.multiple=!0:l.size&&(s.size=l.size);break;default:s=typeof l.is=="string"?o.createElement(a,{is:l.is}):o.createElement(a)}}s[Zt]=e,s[te]=l;t:for(o=e.child;o!==null;){if(o.tag===5||o.tag===6)s.appendChild(o.stateNode);else if(o.tag!==4&&o.tag!==27&&o.child!==null){o.child.return=o,o=o.child;continue}if(o===e)break t;for(;o.sibling===null;){if(o.return===null||o.return===e)break t;o=o.return}o.sibling.return=o.return,o=o.sibling}e.stateNode=s;t:switch(Wt(s,a,l),a){case"button":case"input":case"select":case"textarea":l=!!l.autoFocus;break t;case"img":l=!0;break t;default:l=!1}l&&Ie(e)}}return Rt(e),fc(e,e.type,t===null?null:t.memoizedProps,e.pendingProps,n),null;case 6:if(t&&e.stateNode!=null)t.memoizedProps!==l&&Ie(e);else{if(typeof l!="string"&&e.stateNode===null)throw Error(r(166));if(t=lt.current,_l(e)){if(t=e.stateNode,n=e.memoizedProps,l=null,a=Kt,a!==null)switch(a.tag){case 27:case 5:l=a.memoizedProps}t[Zt]=e,t=!!(t.nodeValue===n||l!==null&&l.suppressHydrationWarning===!0||hd(t.nodeValue,n)),t||gn(e,!0)}else t=au(t).createTextNode(l),t[Zt]=e,e.stateNode=t}return Rt(e),null;case 31:if(n=e.memoizedState,t===null||t.memoizedState!==null){if(l=_l(e),n!==null){if(t===null){if(!l)throw Error(r(318));if(t=e.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(r(557));t[Zt]=e}else Kn(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;Rt(e),t=!1}else n=xs(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=n),t=!0;if(!t)return e.flags&256?(de(e),e):(de(e),null);if((e.flags&128)!==0)throw Error(r(558))}return Rt(e),null;case 13:if(l=e.memoizedState,t===null||t.memoizedState!==null&&t.memoizedState.dehydrated!==null){if(a=_l(e),l!==null&&l.dehydrated!==null){if(t===null){if(!a)throw Error(r(318));if(a=e.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(r(317));a[Zt]=e}else Kn(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;Rt(e),a=!1}else a=xs(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=a),a=!0;if(!a)return e.flags&256?(de(e),e):(de(e),null)}return de(e),(e.flags&128)!==0?(e.lanes=n,e):(n=l!==null,t=t!==null&&t.memoizedState!==null,n&&(l=e.child,a=null,l.alternate!==null&&l.alternate.memoizedState!==null&&l.alternate.memoizedState.cachePool!==null&&(a=l.alternate.memoizedState.cachePool.pool),s=null,l.memoizedState!==null&&l.memoizedState.cachePool!==null&&(s=l.memoizedState.cachePool.pool),s!==a&&(l.flags|=2048)),n!==t&&n&&(e.child.flags|=8192),Gi(e,e.updateQueue),Rt(e),null);case 4:return Dt(),t===null&&wc(e.stateNode.containerInfo),Rt(e),null;case 10:return $e(e.type),Rt(e),null;case 19:if(B(wt),l=e.memoizedState,l===null)return Rt(e),null;if(a=(e.flags&128)!==0,s=l.rendering,s===null)if(a)Ea(l,!1);else{if(Mt!==0||t!==null&&(t.flags&128)!==0)for(t=e.child;t!==null;){if(s=zi(t),s!==null){for(e.flags|=128,Ea(l,!1),t=s.updateQueue,e.updateQueue=t,Gi(e,t),e.subtreeFlags=0,t=n,n=e.child;n!==null;)Go(n,t),n=n.sibling;return G(wt,wt.current&1|2),ct&&Ke(e,l.treeForkCount),e.child}t=t.sibling}l.tail!==null&&se()>Ji&&(e.flags|=128,a=!0,Ea(l,!1),e.lanes=4194304)}else{if(!a)if(t=zi(s),t!==null){if(e.flags|=128,a=!0,t=t.updateQueue,e.updateQueue=t,Gi(e,t),Ea(l,!0),l.tail===null&&l.tailMode==="hidden"&&!s.alternate&&!ct)return Rt(e),null}else 2*se()-l.renderingStartTime>Ji&&n!==536870912&&(e.flags|=128,a=!0,Ea(l,!1),e.lanes=4194304);l.isBackwards?(s.sibling=e.child,e.child=s):(t=l.last,t!==null?t.sibling=s:e.child=s,l.last=s)}return l.tail!==null?(t=l.tail,l.rendering=t,l.tail=t.sibling,l.renderingStartTime=se(),t.sibling=null,n=wt.current,G(wt,a?n&1|2:n&1),ct&&Ke(e,l.treeForkCount),t):(Rt(e),null);case 22:case 23:return de(e),js(),l=e.memoizedState!==null,t!==null?t.memoizedState!==null!==l&&(e.flags|=8192):l&&(e.flags|=8192),l?(n&536870912)!==0&&(e.flags&128)===0&&(Rt(e),e.subtreeFlags&6&&(e.flags|=8192)):Rt(e),n=e.updateQueue,n!==null&&Gi(e,n.retryQueue),n=null,t!==null&&t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(n=t.memoizedState.cachePool.pool),l=null,e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(l=e.memoizedState.cachePool.pool),l!==n&&(e.flags|=2048),t!==null&&B(Wn),null;case 24:return n=null,t!==null&&(n=t.memoizedState.cache),e.memoizedState.cache!==n&&(e.flags|=2048),$e(Bt),Rt(e),null;case 25:return null;case 30:return null}throw Error(r(156,e.tag))}function zy(t,e){switch(bs(e),e.tag){case 1:return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 3:return $e(Bt),Dt(),t=e.flags,(t&65536)!==0&&(t&128)===0?(e.flags=t&-65537|128,e):null;case 26:case 27:case 5:return ti(e),null;case 31:if(e.memoizedState!==null){if(de(e),e.alternate===null)throw Error(r(340));Kn()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 13:if(de(e),t=e.memoizedState,t!==null&&t.dehydrated!==null){if(e.alternate===null)throw Error(r(340));Kn()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 19:return B(wt),null;case 4:return Dt(),null;case 10:return $e(e.type),null;case 22:case 23:return de(e),js(),t!==null&&B(Wn),t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 24:return $e(Bt),null;case 25:return null;default:return null}}function vh(t,e){switch(bs(e),e.tag){case 3:$e(Bt),Dt();break;case 26:case 27:case 5:ti(e);break;case 4:Dt();break;case 31:e.memoizedState!==null&&de(e);break;case 13:de(e);break;case 19:B(wt);break;case 10:$e(e.type);break;case 22:case 23:de(e),js(),t!==null&&B(Wn);break;case 24:$e(Bt)}}function Ta(t,e){try{var n=e.updateQueue,l=n!==null?n.lastEffect:null;if(l!==null){var a=l.next;n=a;do{if((n.tag&t)===t){l=void 0;var s=n.create,o=n.inst;l=s(),o.destroy=l}n=n.next}while(n!==a)}}catch(h){yt(e,e.return,h)}}function An(t,e,n){try{var l=e.updateQueue,a=l!==null?l.lastEffect:null;if(a!==null){var s=a.next;l=s;do{if((l.tag&t)===t){var o=l.inst,h=o.destroy;if(h!==void 0){o.destroy=void 0,a=e;var g=n,N=h;try{N()}catch(D){yt(a,g,D)}}}l=l.next}while(l!==s)}}catch(D){yt(e,e.return,D)}}function gh(t){var e=t.updateQueue;if(e!==null){var n=t.stateNode;try{cf(e,n)}catch(l){yt(t,t.return,l)}}}function bh(t,e,n){n.props=el(t.type,t.memoizedProps),n.state=t.memoizedState;try{n.componentWillUnmount()}catch(l){yt(t,e,l)}}function Aa(t,e){try{var n=t.ref;if(n!==null){switch(t.tag){case 26:case 27:case 5:var l=t.stateNode;break;case 30:l=t.stateNode;break;default:l=t.stateNode}typeof n=="function"?t.refCleanup=n(l):n.current=l}}catch(a){yt(t,e,a)}}function Be(t,e){var n=t.ref,l=t.refCleanup;if(n!==null)if(typeof l=="function")try{l()}catch(a){yt(t,e,a)}finally{t.refCleanup=null,t=t.alternate,t!=null&&(t.refCleanup=null)}else if(typeof n=="function")try{n(null)}catch(a){yt(t,e,a)}else n.current=null}function Sh(t){var e=t.type,n=t.memoizedProps,l=t.stateNode;try{t:switch(e){case"button":case"input":case"select":case"textarea":n.autoFocus&&l.focus();break t;case"img":n.src?l.src=n.src:n.srcSet&&(l.srcset=n.srcSet)}}catch(a){yt(t,t.return,a)}}function hc(t,e,n){try{var l=t.stateNode;Py(l,t.type,n,e),l[te]=e}catch(a){yt(t,t.return,a)}}function xh(t){return t.tag===5||t.tag===3||t.tag===26||t.tag===27&&Dn(t.type)||t.tag===4}function dc(t){t:for(;;){for(;t.sibling===null;){if(t.return===null||xh(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.tag===27&&Dn(t.type)||t.flags&2||t.child===null||t.tag===4)continue t;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function mc(t,e,n){var l=t.tag;if(l===5||l===6)t=t.stateNode,e?(n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n).insertBefore(t,e):(e=n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n,e.appendChild(t),n=n._reactRootContainer,n!=null||e.onclick!==null||(e.onclick=Ve));else if(l!==4&&(l===27&&Dn(t.type)&&(n=t.stateNode,e=null),t=t.child,t!==null))for(mc(t,e,n),t=t.sibling;t!==null;)mc(t,e,n),t=t.sibling}function Vi(t,e,n){var l=t.tag;if(l===5||l===6)t=t.stateNode,e?n.insertBefore(t,e):n.appendChild(t);else if(l!==4&&(l===27&&Dn(t.type)&&(n=t.stateNode),t=t.child,t!==null))for(Vi(t,e,n),t=t.sibling;t!==null;)Vi(t,e,n),t=t.sibling}function _h(t){var e=t.stateNode,n=t.memoizedProps;try{for(var l=t.type,a=e.attributes;a.length;)e.removeAttributeNode(a[0]);Wt(e,l,n),e[Zt]=t,e[te]=n}catch(s){yt(t,t.return,s)}}var tn=!1,qt=!1,pc=!1,Eh=typeof WeakSet=="function"?WeakSet:Set,Qt=null;function My(t,e){if(t=t.containerInfo,Bc=fu,t=jo(t),cs(t)){if("selectionStart"in t)var n={start:t.selectionStart,end:t.selectionEnd};else t:{n=(n=t.ownerDocument)&&n.defaultView||window;var l=n.getSelection&&n.getSelection();if(l&&l.rangeCount!==0){n=l.anchorNode;var a=l.anchorOffset,s=l.focusNode;l=l.focusOffset;try{n.nodeType,s.nodeType}catch{n=null;break t}var o=0,h=-1,g=-1,N=0,D=0,U=t,O=null;e:for(;;){for(var M;U!==n||a!==0&&U.nodeType!==3||(h=o+a),U!==s||l!==0&&U.nodeType!==3||(g=o+l),U.nodeType===3&&(o+=U.nodeValue.length),(M=U.firstChild)!==null;)O=U,U=M;for(;;){if(U===t)break e;if(O===n&&++N===a&&(h=o),O===s&&++D===l&&(g=o),(M=U.nextSibling)!==null)break;U=O,O=U.parentNode}U=M}n=h===-1||g===-1?null:{start:h,end:g}}else n=null}n=n||{start:0,end:0}}else n=null;for(Lc={focusedElem:t,selectionRange:n},fu=!1,Qt=e;Qt!==null;)if(e=Qt,t=e.child,(e.subtreeFlags&1028)!==0&&t!==null)t.return=e,Qt=t;else for(;Qt!==null;){switch(e=Qt,s=e.alternate,t=e.flags,e.tag){case 0:if((t&4)!==0&&(t=e.updateQueue,t=t!==null?t.events:null,t!==null))for(n=0;n title"))),Wt(s,l,n),s[Zt]=t,Vt(s),l=s;break t;case"link":var o=Od("link","href",a).get(l+(n.href||""));if(o){for(var h=0;hxt&&(o=xt,xt=$,$=o);var A=Do(h,$),x=Do(h,xt);if(A&&x&&(M.rangeCount!==1||M.anchorNode!==A.node||M.anchorOffset!==A.offset||M.focusNode!==x.node||M.focusOffset!==x.offset)){var R=U.createRange();R.setStart(A.node,A.offset),M.removeAllRanges(),$>xt?(M.addRange(R),M.extend(x.node,x.offset)):(R.setEnd(x.node,x.offset),M.addRange(R))}}}}for(U=[],M=h;M=M.parentNode;)M.nodeType===1&&U.push({element:M,left:M.scrollLeft,top:M.scrollTop});for(typeof h.focus=="function"&&h.focus(),h=0;hn?32:n,w.T=null,n=_c,_c=null;var s=On,o=un;if(Xt=0,Bl=On=null,un=0,(dt&6)!==0)throw Error(r(331));var h=dt;if(dt|=4,jh(s.current),Mh(s,s.current,o,n),dt=h,Ma(0,!1),ce&&typeof ce.onPostCommitFiberRoot=="function")try{ce.onPostCommitFiberRoot($l,s)}catch{}return!0}finally{X.p=a,w.T=l,Ph(t,e)}}function td(t,e,n){e=Se(n,e),e=ec(t.stateNode,e,2),t=_n(t,e,2),t!==null&&(Fl(t,2),Le(t))}function yt(t,e,n){if(t.tag===3)td(t,t,n);else for(;e!==null;){if(e.tag===3){td(e,t,n);break}else if(e.tag===1){var l=e.stateNode;if(typeof e.type.getDerivedStateFromError=="function"||typeof l.componentDidCatch=="function"&&(Nn===null||!Nn.has(l))){t=Se(n,t),n=eh(2),l=_n(e,n,2),l!==null&&(nh(n,l,e,t),Fl(l,2),Le(l));break}}e=e.return}}function Cc(t,e,n){var l=t.pingCache;if(l===null){l=t.pingCache=new jy;var a=new Set;l.set(e,a)}else a=l.get(e),a===void 0&&(a=new Set,l.set(e,a));a.has(n)||(gc=!0,a.add(n),t=qy.bind(null,t,e,n),e.then(t,t))}function qy(t,e,n){var l=t.pingCache;l!==null&&l.delete(e),t.pingedLanes|=t.suspendedLanes&n,t.warmLanes&=~n,Tt===t&&(ut&n)===n&&(Mt===4||Mt===3&&(ut&62914560)===ut&&300>se()-Ki?(dt&2)===0&&Ll(t,0):bc|=n,Ul===ut&&(Ul=0)),Le(t)}function ed(t,e){e===0&&(e=Kr()),t=Qn(t,e),t!==null&&(Fl(t,e),Le(t))}function Yy(t){var e=t.memoizedState,n=0;e!==null&&(n=e.retryLane),ed(t,n)}function ky(t,e){var n=0;switch(t.tag){case 31:case 13:var l=t.stateNode,a=t.memoizedState;a!==null&&(n=a.retryLane);break;case 19:l=t.stateNode;break;case 22:l=t.stateNode._retryCache;break;default:throw Error(r(314))}l!==null&&l.delete(e),ed(t,n)}function Xy(t,e){return qu(t,e)}var tu=null,ql=null,Rc=!1,eu=!1,Nc=!1,Mn=0;function Le(t){t!==ql&&t.next===null&&(ql===null?tu=ql=t:ql=ql.next=t),eu=!0,Rc||(Rc=!0,Vy())}function Ma(t,e){if(!Nc&&eu){Nc=!0;do for(var n=!1,l=tu;l!==null;){if(t!==0){var a=l.pendingLanes;if(a===0)var s=0;else{var o=l.suspendedLanes,h=l.pingedLanes;s=(1<<31-re(42|t)+1)-1,s&=a&~(o&~h),s=s&201326741?s&201326741|1:s?s|2:0}s!==0&&(n=!0,id(l,s))}else s=ut,s=ii(l,l===Tt?s:0,l.cancelPendingCommit!==null||l.timeoutHandle!==-1),(s&3)===0||Wl(l,s)||(n=!0,id(l,s));l=l.next}while(n);Nc=!1}}function Gy(){nd()}function nd(){eu=Rc=!1;var t=0;Mn!==0&&t0()&&(t=Mn);for(var e=se(),n=null,l=tu;l!==null;){var a=l.next,s=ld(l,e);s===0?(l.next=null,n===null?tu=a:n.next=a,a===null&&(ql=n)):(n=l,(t!==0||(s&3)!==0)&&(eu=!0)),l=a}Xt!==0&&Xt!==5||Ma(t),Mn!==0&&(Mn=0)}function ld(t,e){for(var n=t.suspendedLanes,l=t.pingedLanes,a=t.expirationTimes,s=t.pendingLanes&-62914561;0h)break;var D=g.transferSize,U=g.initiatorType;D&&dd(U)&&(g=g.responseEnd,o+=D*(g"u"?null:document;function Ad(t,e,n){var l=Yl;if(l&&typeof e=="string"&&e){var a=ge(e);a='link[rel="'+t+'"][href="'+a+'"]',typeof n=="string"&&(a+='[crossorigin="'+n+'"]'),Td.has(a)||(Td.add(a),t={rel:t,crossOrigin:n,href:e},l.querySelector(a)===null&&(e=l.createElement("link"),Wt(e,"link",t),Vt(e),l.head.appendChild(e)))}}function r0(t){sn.D(t),Ad("dns-prefetch",t,null)}function o0(t,e){sn.C(t,e),Ad("preconnect",t,e)}function f0(t,e,n){sn.L(t,e,n);var l=Yl;if(l&&t&&e){var a='link[rel="preload"][as="'+ge(e)+'"]';e==="image"&&n&&n.imageSrcSet?(a+='[imagesrcset="'+ge(n.imageSrcSet)+'"]',typeof n.imageSizes=="string"&&(a+='[imagesizes="'+ge(n.imageSizes)+'"]')):a+='[href="'+ge(t)+'"]';var s=a;switch(e){case"style":s=kl(t);break;case"script":s=Xl(t)}Ce.has(s)||(t=S({rel:"preload",href:e==="image"&&n&&n.imageSrcSet?void 0:t,as:e},n),Ce.set(s,t),l.querySelector(a)!==null||e==="style"&&l.querySelector(Ua(s))||e==="script"&&l.querySelector(Ba(s))||(e=l.createElement("link"),Wt(e,"link",t),Vt(e),l.head.appendChild(e)))}}function h0(t,e){sn.m(t,e);var n=Yl;if(n&&t){var l=e&&typeof e.as=="string"?e.as:"script",a='link[rel="modulepreload"][as="'+ge(l)+'"][href="'+ge(t)+'"]',s=a;switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":s=Xl(t)}if(!Ce.has(s)&&(t=S({rel:"modulepreload",href:t},e),Ce.set(s,t),n.querySelector(a)===null)){switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(n.querySelector(Ba(s)))return}l=n.createElement("link"),Wt(l,"link",t),Vt(l),n.head.appendChild(l)}}}function d0(t,e,n){sn.S(t,e,n);var l=Yl;if(l&&t){var a=rl(l).hoistableStyles,s=kl(t);e=e||"default";var o=a.get(s);if(!o){var h={loading:0,preload:null};if(o=l.querySelector(Ua(s)))h.loading=5;else{t=S({rel:"stylesheet",href:t,"data-precedence":e},n),(n=Ce.get(s))&&Vc(t,n);var g=o=l.createElement("link");Vt(g),Wt(g,"link",t),g._p=new Promise(function(N,D){g.onload=N,g.onerror=D}),g.addEventListener("load",function(){h.loading|=1}),g.addEventListener("error",function(){h.loading|=2}),h.loading|=4,uu(o,e,l)}o={type:"stylesheet",instance:o,count:1,state:h},a.set(s,o)}}}function m0(t,e){sn.X(t,e);var n=Yl;if(n&&t){var l=rl(n).hoistableScripts,a=Xl(t),s=l.get(a);s||(s=n.querySelector(Ba(a)),s||(t=S({src:t,async:!0},e),(e=Ce.get(a))&&Qc(t,e),s=n.createElement("script"),Vt(s),Wt(s,"link",t),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function p0(t,e){sn.M(t,e);var n=Yl;if(n&&t){var l=rl(n).hoistableScripts,a=Xl(t),s=l.get(a);s||(s=n.querySelector(Ba(a)),s||(t=S({src:t,async:!0,type:"module"},e),(e=Ce.get(a))&&Qc(t,e),s=n.createElement("script"),Vt(s),Wt(s,"link",t),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function Cd(t,e,n,l){var a=(a=lt.current)?iu(a):null;if(!a)throw Error(r(446));switch(t){case"meta":case"title":return null;case"style":return typeof n.precedence=="string"&&typeof n.href=="string"?(e=kl(n.href),n=rl(a).hoistableStyles,l=n.get(e),l||(l={type:"style",instance:null,count:0,state:null},n.set(e,l)),l):{type:"void",instance:null,count:0,state:null};case"link":if(n.rel==="stylesheet"&&typeof n.href=="string"&&typeof n.precedence=="string"){t=kl(n.href);var s=rl(a).hoistableStyles,o=s.get(t);if(o||(a=a.ownerDocument||a,o={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},s.set(t,o),(s=a.querySelector(Ua(t)))&&!s._p&&(o.instance=s,o.state.loading=5),Ce.has(t)||(n={rel:"preload",as:"style",href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},Ce.set(t,n),s||y0(a,t,n,o.state))),e&&l===null)throw Error(r(528,""));return o}if(e&&l!==null)throw Error(r(529,""));return null;case"script":return e=n.async,n=n.src,typeof n=="string"&&e&&typeof e!="function"&&typeof e!="symbol"?(e=Xl(n),n=rl(a).hoistableScripts,l=n.get(e),l||(l={type:"script",instance:null,count:0,state:null},n.set(e,l)),l):{type:"void",instance:null,count:0,state:null};default:throw Error(r(444,t))}}function kl(t){return'href="'+ge(t)+'"'}function Ua(t){return'link[rel="stylesheet"]['+t+"]"}function Rd(t){return S({},t,{"data-precedence":t.precedence,precedence:null})}function y0(t,e,n,l){t.querySelector('link[rel="preload"][as="style"]['+e+"]")?l.loading=1:(e=t.createElement("link"),l.preload=e,e.addEventListener("load",function(){return l.loading|=1}),e.addEventListener("error",function(){return l.loading|=2}),Wt(e,"link",n),Vt(e),t.head.appendChild(e))}function Xl(t){return'[src="'+ge(t)+'"]'}function Ba(t){return"script[async]"+t}function Nd(t,e,n){if(e.count++,e.instance===null)switch(e.type){case"style":var l=t.querySelector('style[data-href~="'+ge(n.href)+'"]');if(l)return e.instance=l,Vt(l),l;var a=S({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return l=(t.ownerDocument||t).createElement("style"),Vt(l),Wt(l,"style",a),uu(l,n.precedence,t),e.instance=l;case"stylesheet":a=kl(n.href);var s=t.querySelector(Ua(a));if(s)return e.state.loading|=4,e.instance=s,Vt(s),s;l=Rd(n),(a=Ce.get(a))&&Vc(l,a),s=(t.ownerDocument||t).createElement("link"),Vt(s);var o=s;return o._p=new Promise(function(h,g){o.onload=h,o.onerror=g}),Wt(s,"link",l),e.state.loading|=4,uu(s,n.precedence,t),e.instance=s;case"script":return s=Xl(n.src),(a=t.querySelector(Ba(s)))?(e.instance=a,Vt(a),a):(l=n,(a=Ce.get(s))&&(l=S({},n),Qc(l,a)),t=t.ownerDocument||t,a=t.createElement("script"),Vt(a),Wt(a,"link",l),t.head.appendChild(a),e.instance=a);case"void":return null;default:throw Error(r(443,e.type))}else e.type==="stylesheet"&&(e.state.loading&4)===0&&(l=e.instance,e.state.loading|=4,uu(l,n.precedence,t));return e.instance}function uu(t,e,n){for(var l=n.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=l.length?l[l.length-1]:null,s=a,o=0;o title"):null)}function v0(t,e,n){if(n===1||e.itemProp!=null)return!1;switch(t){case"meta":case"title":return!0;case"style":if(typeof e.precedence!="string"||typeof e.href!="string"||e.href==="")break;return!0;case"link":if(typeof e.rel!="string"||typeof e.href!="string"||e.href===""||e.onLoad||e.onError)break;switch(e.rel){case"stylesheet":return t=e.disabled,typeof e.precedence=="string"&&t==null;default:return!0}case"script":if(e.async&&typeof e.async!="function"&&typeof e.async!="symbol"&&!e.onLoad&&!e.onError&&e.src&&typeof e.src=="string")return!0}return!1}function Md(t){return!(t.type==="stylesheet"&&(t.state.loading&3)===0)}function g0(t,e,n,l){if(n.type==="stylesheet"&&(typeof l.media!="string"||matchMedia(l.media).matches!==!1)&&(n.state.loading&4)===0){if(n.instance===null){var a=kl(l.href),s=e.querySelector(Ua(a));if(s){e=s._p,e!==null&&typeof e=="object"&&typeof e.then=="function"&&(t.count++,t=cu.bind(t),e.then(t,t)),n.state.loading|=4,n.instance=s,Vt(s);return}s=e.ownerDocument||e,l=Rd(l),(a=Ce.get(a))&&Vc(l,a),s=s.createElement("link"),Vt(s);var o=s;o._p=new Promise(function(h,g){o.onload=h,o.onerror=g}),Wt(s,"link",l),n.instance=s}t.stylesheets===null&&(t.stylesheets=new Map),t.stylesheets.set(n,e),(e=n.state.preload)&&(n.state.loading&3)===0&&(t.count++,n=cu.bind(t),e.addEventListener("load",n),e.addEventListener("error",n))}}var Zc=0;function b0(t,e){return t.stylesheets&&t.count===0&&ou(t,t.stylesheets),0Zc?50:800)+e);return t.unsuspend=n,function(){t.unsuspend=null,clearTimeout(l),clearTimeout(a)}}:null}function cu(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)ou(this,this.stylesheets);else if(this.unsuspend){var t=this.unsuspend;this.unsuspend=null,t()}}}var ru=null;function ou(t,e){t.stylesheets=null,t.unsuspend!==null&&(t.count++,ru=new Map,e.forEach(S0,t),ru=null,cu.call(t))}function S0(t,e){if(!(e.state.loading&4)){var n=ru.get(t);if(n)var l=n.get(null);else{n=new Map,ru.set(t,n);for(var a=t.querySelectorAll("link[data-precedence],style[data-precedence]"),s=0;s"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(u)}catch(i){console.error(i)}}return u(),er.exports=B0(),er.exports}var H0=L0();var em="popstate";function q0(u={}){function i(r,f){let{pathname:d,search:m,hash:b}=r.location;return dr("",{pathname:d,search:m,hash:b},f.state&&f.state.usr||null,f.state&&f.state.key||"default")}function c(r,f){return typeof f=="string"?f:Wa(f)}return k0(i,c,null,u)}function Ot(u,i){if(u===!1||u===null||typeof u>"u")throw new Error(i)}function we(u,i){if(!u){typeof console<"u"&&console.warn(i);try{throw new Error(i)}catch{}}}function Y0(){return Math.random().toString(36).substring(2,10)}function nm(u,i){return{usr:u.state,key:u.key,idx:i}}function dr(u,i,c=null,r){return{pathname:typeof u=="string"?u:u.pathname,search:"",hash:"",...typeof i=="string"?Ql(i):i,state:c,key:i&&i.key||r||Y0()}}function Wa({pathname:u="/",search:i="",hash:c=""}){return i&&i!=="?"&&(u+=i.charAt(0)==="?"?i:"?"+i),c&&c!=="#"&&(u+=c.charAt(0)==="#"?c:"#"+c),u}function Ql(u){let i={};if(u){let c=u.indexOf("#");c>=0&&(i.hash=u.substring(c),u=u.substring(0,c));let r=u.indexOf("?");r>=0&&(i.search=u.substring(r),u=u.substring(0,r)),u&&(i.pathname=u)}return i}function k0(u,i,c,r={}){let{window:f=document.defaultView,v5Compat:d=!1}=r,m=f.history,b="POP",p=null,y=E();y==null&&(y=0,m.replaceState({...m.state,idx:y},""));function E(){return(m.state||{idx:null}).idx}function S(){b="POP";let q=E(),L=q==null?null:q-y;y=q,p&&p({action:b,location:k.location,delta:L})}function C(q,L){b="PUSH";let Y=dr(k.location,q,L);y=E()+1;let V=nm(Y,y),nt=k.createHref(Y);try{m.pushState(V,"",nt)}catch(ht){if(ht instanceof DOMException&&ht.name==="DataCloneError")throw ht;f.location.assign(nt)}d&&p&&p({action:b,location:k.location,delta:1})}function z(q,L){b="REPLACE";let Y=dr(k.location,q,L);y=E();let V=nm(Y,y),nt=k.createHref(Y);m.replaceState(V,"",nt),d&&p&&p({action:b,location:k.location,delta:0})}function H(q){return X0(q)}let k={get action(){return b},get location(){return u(f,m)},listen(q){if(p)throw new Error("A history only accepts one active listener");return f.addEventListener(em,S),p=q,()=>{f.removeEventListener(em,S),p=null}},createHref(q){return i(f,q)},createURL:H,encodeLocation(q){let L=H(q);return{pathname:L.pathname,search:L.search,hash:L.hash}},push:C,replace:z,go(q){return m.go(q)}};return k}function X0(u,i=!1){let c="http://localhost";typeof window<"u"&&(c=window.location.origin!=="null"?window.location.origin:window.location.href),Ot(c,"No window.location.(origin|href) available to create URL");let r=typeof u=="string"?u:Wa(u);return r=r.replace(/ $/,"%20"),!i&&r.startsWith("//")&&(r=c+r),new URL(r,c)}function Sm(u,i,c="/"){return G0(u,i,c,!1)}function G0(u,i,c,r){let f=typeof i=="string"?Ql(i):i,d=on(f.pathname||"/",c);if(d==null)return null;let m=xm(u);V0(m);let b=null;for(let p=0;b==null&&p{let E={relativePath:y===void 0?m.path||"":y,caseSensitive:m.caseSensitive===!0,childrenIndex:b,route:m};if(E.relativePath.startsWith("/")){if(!E.relativePath.startsWith(r)&&p)return;Ot(E.relativePath.startsWith(r),`Absolute route path "${E.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),E.relativePath=E.relativePath.slice(r.length)}let S=rn([r,E.relativePath]),C=c.concat(E);m.children&&m.children.length>0&&(Ot(m.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${S}".`),xm(m.children,i,C,S,p)),!(m.path==null&&!m.index)&&i.push({path:S,score:F0(S,m.index),routesMeta:C})};return u.forEach((m,b)=>{if(m.path===""||!m.path?.includes("?"))d(m,b);else for(let p of _m(m.path))d(m,b,!0,p)}),i}function _m(u){let i=u.split("/");if(i.length===0)return[];let[c,...r]=i,f=c.endsWith("?"),d=c.replace(/\?$/,"");if(r.length===0)return f?[d,""]:[d];let m=_m(r.join("/")),b=[];return b.push(...m.map(p=>p===""?d:[d,p].join("/"))),f&&b.push(...m),b.map(p=>u.startsWith("/")&&p===""?"/":p)}function V0(u){u.sort((i,c)=>i.score!==c.score?c.score-i.score:P0(i.routesMeta.map(r=>r.childrenIndex),c.routesMeta.map(r=>r.childrenIndex)))}var Q0=/^:[\w-]+$/,Z0=3,K0=2,J0=1,$0=10,W0=-2,lm=u=>u==="*";function F0(u,i){let c=u.split("/"),r=c.length;return c.some(lm)&&(r+=W0),i&&(r+=K0),c.filter(f=>!lm(f)).reduce((f,d)=>f+(Q0.test(d)?Z0:d===""?J0:$0),r)}function P0(u,i){return u.length===i.length&&u.slice(0,-1).every((r,f)=>r===i[f])?u[u.length-1]-i[i.length-1]:0}function I0(u,i,c=!1){let{routesMeta:r}=u,f={},d="/",m=[];for(let b=0;b{if(E==="*"){let H=b[C]||"";m=d.slice(0,d.length-H.length).replace(/(.)\/+$/,"$1")}const z=b[C];return S&&!z?y[E]=void 0:y[E]=(z||"").replace(/%2F/g,"/"),y},{}),pathname:d,pathnameBase:m,pattern:u}}function tv(u,i=!1,c=!0){we(u==="*"||!u.endsWith("*")||u.endsWith("/*"),`Route path "${u}" will be treated as if it were "${u.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${u.replace(/\*$/,"/*")}".`);let r=[],f="^"+u.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(m,b,p)=>(r.push({paramName:b,isOptional:p!=null}),p?"/?([^\\/]+)?":"/([^\\/]+)")).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return u.endsWith("*")?(r.push({paramName:"*"}),f+=u==="*"||u==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):c?f+="\\/*$":u!==""&&u!=="/"&&(f+="(?:(?=\\/|$))"),[new RegExp(f,i?void 0:"i"),r]}function ev(u){try{return u.split("/").map(i=>decodeURIComponent(i).replace(/\//g,"%2F")).join("/")}catch(i){return we(!1,`The URL path "${u}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${i}).`),u}}function on(u,i){if(i==="/")return u;if(!u.toLowerCase().startsWith(i.toLowerCase()))return null;let c=i.endsWith("/")?i.length-1:i.length,r=u.charAt(c);return r&&r!=="/"?null:u.slice(c)||"/"}var nv=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,lv=u=>nv.test(u);function av(u,i="/"){let{pathname:c,search:r="",hash:f=""}=typeof u=="string"?Ql(u):u,d;if(c)if(lv(c))d=c;else{if(c.includes("//")){let m=c;c=c.replace(/\/\/+/g,"/"),we(!1,`Pathnames cannot have embedded double slashes - normalizing ${m} -> ${c}`)}c.startsWith("/")?d=am(c.substring(1),"/"):d=am(c,i)}else d=i;return{pathname:d,search:sv(r),hash:cv(f)}}function am(u,i){let c=i.replace(/\/+$/,"").split("/");return u.split("/").forEach(f=>{f===".."?c.length>1&&c.pop():f!=="."&&c.push(f)}),c.length>1?c.join("/"):"/"}function ir(u,i,c,r){return`Cannot include a '${u}' character in a manually specified \`to.${i}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${c}\` field. Alternatively you may provide the full path as a string in and the router will parse it for you.`}function iv(u){return u.filter((i,c)=>c===0||i.route.path&&i.route.path.length>0)}function Em(u){let i=iv(u);return i.map((c,r)=>r===i.length-1?c.pathname:c.pathnameBase)}function Tm(u,i,c,r=!1){let f;typeof u=="string"?f=Ql(u):(f={...u},Ot(!f.pathname||!f.pathname.includes("?"),ir("?","pathname","search",f)),Ot(!f.pathname||!f.pathname.includes("#"),ir("#","pathname","hash",f)),Ot(!f.search||!f.search.includes("#"),ir("#","search","hash",f)));let d=u===""||f.pathname==="",m=d?"/":f.pathname,b;if(m==null)b=c;else{let S=i.length-1;if(!r&&m.startsWith("..")){let C=m.split("/");for(;C[0]==="..";)C.shift(),S-=1;f.pathname=C.join("/")}b=S>=0?i[S]:"/"}let p=av(f,b),y=m&&m!=="/"&&m.endsWith("/"),E=(d||m===".")&&c.endsWith("/");return!p.pathname.endsWith("/")&&(y||E)&&(p.pathname+="/"),p}var rn=u=>u.join("/").replace(/\/\/+/g,"/"),uv=u=>u.replace(/\/+$/,"").replace(/^\/*/,"/"),sv=u=>!u||u==="?"?"":u.startsWith("?")?u:"?"+u,cv=u=>!u||u==="#"?"":u.startsWith("#")?u:"#"+u;function rv(u){return u!=null&&typeof u.status=="number"&&typeof u.statusText=="string"&&typeof u.internal=="boolean"&&"data"in u}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var Am=["POST","PUT","PATCH","DELETE"];new Set(Am);var ov=["GET",...Am];new Set(ov);var Zl=T.createContext(null);Zl.displayName="DataRouter";var Ou=T.createContext(null);Ou.displayName="DataRouterState";T.createContext(!1);var Cm=T.createContext({isTransitioning:!1});Cm.displayName="ViewTransition";var fv=T.createContext(new Map);fv.displayName="Fetchers";var hv=T.createContext(null);hv.displayName="Await";var Ye=T.createContext(null);Ye.displayName="Navigation";var Fa=T.createContext(null);Fa.displayName="Location";var fn=T.createContext({outlet:null,matches:[],isDataRoute:!1});fn.displayName="Route";var _r=T.createContext(null);_r.displayName="RouteError";function dv(u,{relative:i}={}){Ot(Pa(),"useHref() may be used only in the context of a component.");let{basename:c,navigator:r}=T.useContext(Ye),{hash:f,pathname:d,search:m}=Ia(u,{relative:i}),b=d;return c!=="/"&&(b=d==="/"?c:rn([c,d])),r.createHref({pathname:b,search:m,hash:f})}function Pa(){return T.useContext(Fa)!=null}function il(){return Ot(Pa(),"useLocation() may be used only in the context of a component."),T.useContext(Fa).location}var Rm="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function Nm(u){T.useContext(Ye).static||T.useLayoutEffect(u)}function mv(){let{isDataRoute:u}=T.useContext(fn);return u?Rv():pv()}function pv(){Ot(Pa(),"useNavigate() may be used only in the context of a component.");let u=T.useContext(Zl),{basename:i,navigator:c}=T.useContext(Ye),{matches:r}=T.useContext(fn),{pathname:f}=il(),d=JSON.stringify(Em(r)),m=T.useRef(!1);return Nm(()=>{m.current=!0}),T.useCallback((p,y={})=>{if(we(m.current,Rm),!m.current)return;if(typeof p=="number"){c.go(p);return}let E=Tm(p,JSON.parse(d),f,y.relative==="path");u==null&&i!=="/"&&(E.pathname=E.pathname==="/"?i:rn([i,E.pathname])),(y.replace?c.replace:c.push)(E,y.state,y)},[i,c,d,f,u])}T.createContext(null);function Ia(u,{relative:i}={}){let{matches:c}=T.useContext(fn),{pathname:r}=il(),f=JSON.stringify(Em(c));return T.useMemo(()=>Tm(u,JSON.parse(f),r,i==="path"),[u,f,r,i])}function yv(u,i){return Om(u,i)}function Om(u,i,c,r,f){Ot(Pa(),"useRoutes() may be used only in the context of a component.");let{navigator:d}=T.useContext(Ye),{matches:m}=T.useContext(fn),b=m[m.length-1],p=b?b.params:{},y=b?b.pathname:"/",E=b?b.pathnameBase:"/",S=b&&b.route;{let Y=S&&S.path||"";zm(y,!S||Y.endsWith("*")||Y.endsWith("*?"),`You rendered descendant (or called \`useRoutes()\`) at "${y}" (under ) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render. -Please change the parent to .`)}let C=il(),z;if(i){let Y=typeof i=="string"?Ql(i):i;Ot(E==="/"||Y.pathname?.startsWith(E),`When overriding the location using \`\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${E}" but pathname "${Y.pathname}" was given in the \`location\` prop.`),z=Y}else z=C;let H=z.pathname||"/",k=H;if(E!=="/"){let Y=E.replace(/^\//,"").split("/");k="/"+H.replace(/^\//,"").split("/").slice(Y.length).join("/")}let q=Sm(u,{pathname:k});we(S||q!=null,`No routes matched location "${z.pathname}${z.search}${z.hash}" `),we(q==null||q[q.length-1].route.element!==void 0||q[q.length-1].route.Component!==void 0||q[q.length-1].route.lazy!==void 0,`Matched leaf route at location "${z.pathname}${z.search}${z.hash}" does not have an element or Component. This means it will render an with a null value by default resulting in an "empty" page.`);let L=xv(q&&q.map(Y=>Object.assign({},Y,{params:Object.assign({},p,Y.params),pathname:rn([E,d.encodeLocation?d.encodeLocation(Y.pathname.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:Y.pathname]),pathnameBase:Y.pathnameBase==="/"?E:rn([E,d.encodeLocation?d.encodeLocation(Y.pathnameBase.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:Y.pathnameBase])})),m,c,r,f);return i&&L?T.createElement(Fa.Provider,{value:{location:{pathname:"/",search:"",hash:"",state:null,key:"default",...z},navigationType:"POP"}},L):L}function vv(){let u=Cv(),i=rv(u)?`${u.status} ${u.statusText}`:u instanceof Error?u.message:JSON.stringify(u),c=u instanceof Error?u.stack:null,r="rgba(200,200,200, 0.5)",f={padding:"0.5rem",backgroundColor:r},d={padding:"2px 4px",backgroundColor:r},m=null;return console.error("Error handled by React Router default ErrorBoundary:",u),m=T.createElement(T.Fragment,null,T.createElement("p",null,"💿 Hey developer 👋"),T.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",T.createElement("code",{style:d},"ErrorBoundary")," or"," ",T.createElement("code",{style:d},"errorElement")," prop on your route.")),T.createElement(T.Fragment,null,T.createElement("h2",null,"Unexpected Application Error!"),T.createElement("h3",{style:{fontStyle:"italic"}},i),c?T.createElement("pre",{style:f},c):null,m)}var gv=T.createElement(vv,null),bv=class extends T.Component{constructor(u){super(u),this.state={location:u.location,revalidation:u.revalidation,error:u.error}}static getDerivedStateFromError(u){return{error:u}}static getDerivedStateFromProps(u,i){return i.location!==u.location||i.revalidation!=="idle"&&u.revalidation==="idle"?{error:u.error,location:u.location,revalidation:u.revalidation}:{error:u.error!==void 0?u.error:i.error,location:i.location,revalidation:u.revalidation||i.revalidation}}componentDidCatch(u,i){this.props.onError?this.props.onError(u,i):console.error("React Router caught the following error during render",u)}render(){return this.state.error!==void 0?T.createElement(fn.Provider,{value:this.props.routeContext},T.createElement(_r.Provider,{value:this.state.error,children:this.props.component})):this.props.children}};function Sv({routeContext:u,match:i,children:c}){let r=T.useContext(Zl);return r&&r.static&&r.staticContext&&(i.route.errorElement||i.route.ErrorBoundary)&&(r.staticContext._deepestRenderedBoundaryId=i.route.id),T.createElement(fn.Provider,{value:u},c)}function xv(u,i=[],c=null,r=null,f=null){if(u==null){if(!c)return null;if(c.errors)u=c.matches;else if(i.length===0&&!c.initialized&&c.matches.length>0)u=c.matches;else return null}let d=u,m=c?.errors;if(m!=null){let E=d.findIndex(S=>S.route.id&&m?.[S.route.id]!==void 0);Ot(E>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(m).join(",")}`),d=d.slice(0,Math.min(d.length,E+1))}let b=!1,p=-1;if(c)for(let E=0;E=0?d=d.slice(0,p+1):d=[d[0]];break}}}let y=c&&r?(E,S)=>{r(E,{location:c.location,params:c.matches?.[0]?.params??{},errorInfo:S})}:void 0;return d.reduceRight((E,S,C)=>{let z,H=!1,k=null,q=null;c&&(z=m&&S.route.id?m[S.route.id]:void 0,k=S.route.errorElement||gv,b&&(p<0&&C===0?(zm("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),H=!0,q=null):p===C&&(H=!0,q=S.route.hydrateFallbackElement||null)));let L=i.concat(d.slice(0,C+1)),Y=()=>{let V;return z?V=k:H?V=q:S.route.Component?V=T.createElement(S.route.Component,null):S.route.element?V=S.route.element:V=E,T.createElement(Sv,{match:S,routeContext:{outlet:E,matches:L,isDataRoute:c!=null},children:V})};return c&&(S.route.ErrorBoundary||S.route.errorElement||C===0)?T.createElement(bv,{location:c.location,revalidation:c.revalidation,component:k,error:z,children:Y(),routeContext:{outlet:null,matches:L,isDataRoute:!0},onError:y}):Y()},null)}function Er(u){return`${u} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function _v(u){let i=T.useContext(Zl);return Ot(i,Er(u)),i}function Ev(u){let i=T.useContext(Ou);return Ot(i,Er(u)),i}function Tv(u){let i=T.useContext(fn);return Ot(i,Er(u)),i}function Tr(u){let i=Tv(u),c=i.matches[i.matches.length-1];return Ot(c.route.id,`${u} can only be used on routes that contain a unique "id"`),c.route.id}function Av(){return Tr("useRouteId")}function Cv(){let u=T.useContext(_r),i=Ev("useRouteError"),c=Tr("useRouteError");return u!==void 0?u:i.errors?.[c]}function Rv(){let{router:u}=_v("useNavigate"),i=Tr("useNavigate"),c=T.useRef(!1);return Nm(()=>{c.current=!0}),T.useCallback(async(f,d={})=>{we(c.current,Rm),c.current&&(typeof f=="number"?u.navigate(f):await u.navigate(f,{fromRouteId:i,...d}))},[u,i])}var im={};function zm(u,i,c){!i&&!im[u]&&(im[u]=!0,we(!1,c))}T.memo(Nv);function Nv({routes:u,future:i,state:c,unstable_onError:r}){return Om(u,void 0,c,r,i)}function mr(u){Ot(!1,"A is only ever to be used as the child of element, never rendered directly. Please wrap your in a .")}function Ov({basename:u="/",children:i=null,location:c,navigationType:r="POP",navigator:f,static:d=!1}){Ot(!Pa(),"You cannot render a inside another . You should never have more than one in your app.");let m=u.replace(/^\/*/,"/"),b=T.useMemo(()=>({basename:m,navigator:f,static:d,future:{}}),[m,f,d]);typeof c=="string"&&(c=Ql(c));let{pathname:p="/",search:y="",hash:E="",state:S=null,key:C="default"}=c,z=T.useMemo(()=>{let H=on(p,m);return H==null?null:{location:{pathname:H,search:y,hash:E,state:S,key:C},navigationType:r}},[m,p,y,E,S,C,r]);return we(z!=null,` is not able to match the URL "${p}${y}${E}" because it does not start with the basename, so the won't render anything.`),z==null?null:T.createElement(Ye.Provider,{value:b},T.createElement(Fa.Provider,{children:i,value:z}))}function zv({children:u,location:i}){return yv(pr(u),i)}function pr(u,i=[]){let c=[];return T.Children.forEach(u,(r,f)=>{if(!T.isValidElement(r))return;let d=[...i,f];if(r.type===T.Fragment){c.push.apply(c,pr(r.props.children,d));return}Ot(r.type===mr,`[${typeof r.type=="string"?r.type:r.type.name}] is not a component. All component children of must be a or `),Ot(!r.props.index||!r.props.children,"An index route cannot have child routes.");let m={id:r.props.id||d.join("-"),caseSensitive:r.props.caseSensitive,element:r.props.element,Component:r.props.Component,index:r.props.index,path:r.props.path,middleware:r.props.middleware,loader:r.props.loader,action:r.props.action,hydrateFallbackElement:r.props.hydrateFallbackElement,HydrateFallback:r.props.HydrateFallback,errorElement:r.props.errorElement,ErrorBoundary:r.props.ErrorBoundary,hasErrorBoundary:r.props.hasErrorBoundary===!0||r.props.ErrorBoundary!=null||r.props.errorElement!=null,shouldRevalidate:r.props.shouldRevalidate,handle:r.props.handle,lazy:r.props.lazy};r.props.children&&(m.children=pr(r.props.children,d)),c.push(m)}),c}var xu="get",_u="application/x-www-form-urlencoded";function zu(u){return u!=null&&typeof u.tagName=="string"}function Mv(u){return zu(u)&&u.tagName.toLowerCase()==="button"}function Dv(u){return zu(u)&&u.tagName.toLowerCase()==="form"}function wv(u){return zu(u)&&u.tagName.toLowerCase()==="input"}function jv(u){return!!(u.metaKey||u.altKey||u.ctrlKey||u.shiftKey)}function Uv(u,i){return u.button===0&&(!i||i==="_self")&&!jv(u)}var gu=null;function Bv(){if(gu===null)try{new FormData(document.createElement("form"),0),gu=!1}catch{gu=!0}return gu}var Lv=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function ur(u){return u!=null&&!Lv.has(u)?(we(!1,`"${u}" is not a valid \`encType\` for \`
\`/\`\` and will default to "${_u}"`),null):u}function Hv(u,i){let c,r,f,d,m;if(Dv(u)){let b=u.getAttribute("action");r=b?on(b,i):null,c=u.getAttribute("method")||xu,f=ur(u.getAttribute("enctype"))||_u,d=new FormData(u)}else if(Mv(u)||wv(u)&&(u.type==="submit"||u.type==="image")){let b=u.form;if(b==null)throw new Error('Cannot submit a -
+
@@ -177,7 +177,7 @@ function AuthPanel() { function DesktopLayout() { return (
-
+
@@ -212,7 +212,7 @@ function MobilePortraitLayout() { function MobileLandscapeLayout() { return (
-
+
@@ -244,7 +244,7 @@ function App() { return (
-
{renderedLayout}
+
{renderedLayout}
diff --git a/webui/src/components/AdminPanel.jsx b/webui/src/components/AdminPanel.jsx index 05ad0031..5cf0eec3 100644 --- a/webui/src/components/AdminPanel.jsx +++ b/webui/src/components/AdminPanel.jsx @@ -57,13 +57,13 @@ export default function AdminPanel() { if (!isAdmin) return null; return ( -
-
+
+
Admin controls
-
+
{roster.map((rover) => ( -
+

{rover.name}

-

{lockMap[rover.id] ? 'locked' : 'unlocked'}

+

{lockMap[rover.id] ? 'locked' : 'unlocked'}

-
+
diff --git a/webui/src/components/DrivePanel.jsx b/webui/src/components/DrivePanel.jsx index 23aa77b6..6acb14e5 100644 --- a/webui/src/components/DrivePanel.jsx +++ b/webui/src/components/DrivePanel.jsx @@ -19,17 +19,17 @@ export default function DrivePanel() { const updated = frame?.receivedAt ? new Date(frame.receivedAt).toLocaleTimeString() : null; return ( -
-
+
+
Drive control {roverId ? `Rover ${roverId}` : 'unassigned'}
-
+
-

Manual OI

+

Manual OI

{manualOiButtons.map((btn) => ( @@ -67,27 +67,28 @@ export default function DrivePanel() { type="button" onClick={stopMotors} disabled={!roverId} - className="flex-1 rounded-sm bg-red-600/60 px-1 py-1 text-xs text-white disabled:opacity-40" + className="flex-1 rounded-sm bg-red-600/70 px-2 py-1 text-sm text-white disabled:opacity-40" > Stop motors
-

Sensor streaming auto-starts after each OI change.

+

Sensor streaming auto-starts after each OI change.

); } -function ActionCard({ title, description, statuses, gradient, onClick, disabled, footnote }) { +function ActionCard({ title, description, statuses, tone, onClick, disabled, footnote }) { + const baseColor = tone === 'indigo' ? 'bg-indigo-600' : 'bg-emerald-600'; return ( diff --git a/webui/src/components/VideoTile.jsx b/webui/src/components/VideoTile.jsx index 7f076e72..670da82f 100644 --- a/webui/src/components/VideoTile.jsx +++ b/webui/src/components/VideoTile.jsx @@ -145,9 +145,12 @@ export default function VideoTile({ sessionInfo, label, forceMute = false, telem function BatteryBar({ charge, capacity, config, label, status }) { if (charge == null || !config?.full || config.warn == null) { return ( -
- {label} - {status} +
+
+ {label} + {status} +
+

Battery telemetry unavailable

); } @@ -161,16 +164,16 @@ function BatteryBar({ charge, capacity, config, label, status }) { const barClass = depleted ? 'bg-red-500 animate-pulse' : urgent ? 'bg-amber-400' : 'bg-emerald-500'; const capText = capacity ? `${charge}/${capacity}` : `${charge}`; return ( -
-
+
+
{label} {status}
-
+
Battery {capText} mAh
-
+
From 94a1ec1ce8e1d67f28c9b83bdded7753791d516c Mon Sep 17 00:00:00 2001 From: legop3 Date: Sat, 15 Nov 2025 22:35:21 -0500 Subject: [PATCH 28/61] battery --- .../public/assets/{index-yT6hjp7B.js => index-BGWfgpXK.js} | 2 +- .../assets/{index-CrWVatgk.css => index-BLqBO1Eu.css} | 2 +- server/public/index.html | 4 ++-- webui/src/components/VideoTile.jsx | 6 +++++- 4 files changed, 9 insertions(+), 5 deletions(-) rename server/public/assets/{index-yT6hjp7B.js => index-BGWfgpXK.js} (89%) rename server/public/assets/{index-CrWVatgk.css => index-BLqBO1Eu.css} (80%) diff --git a/server/public/assets/index-yT6hjp7B.js b/server/public/assets/index-BGWfgpXK.js similarity index 89% rename from server/public/assets/index-yT6hjp7B.js rename to server/public/assets/index-BGWfgpXK.js index ac84e8bc..e616ed7f 100644 --- a/server/public/assets/index-yT6hjp7B.js +++ b/server/public/assets/index-BGWfgpXK.js @@ -8,4 +8,4 @@ Error generating stack: `+l.message+` `+l.stack}}var Hu=Object.prototype.hasOwnProperty,qu=u.unstable_scheduleCallback,Yu=u.unstable_cancelCallback,sp=u.unstable_shouldYield,cp=u.unstable_requestPaint,st=u.unstable_now,rp=u.unstable_getCurrentPriorityLevel,Gr=u.unstable_ImmediatePriority,Vr=u.unstable_UserBlockingPriority,ti=u.unstable_NormalPriority,op=u.unstable_LowPriority,Qr=u.unstable_IdlePriority,fp=u.log,hp=u.unstable_setDisableYieldValue,$l=null,ct=null;function dn(e){if(typeof fp=="function"&&hp(e),ct&&typeof ct.setStrictMode=="function")try{ct.setStrictMode($l,e)}catch{}}var rt=Math.clz32?Math.clz32:pp,dp=Math.log,mp=Math.LN2;function pp(e){return e>>>=0,e===0?32:31-(dp(e)/mp|0)|0}var ni=256,li=262144,ai=4194304;function Yn(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function ii(e,t,n){var l=e.pendingLanes;if(l===0)return 0;var a=0,s=e.suspendedLanes,o=e.pingedLanes;e=e.warmLanes;var h=l&134217727;return h!==0?(l=h&~s,l!==0?a=Yn(l):(o&=h,o!==0?a=Yn(o):n||(n=h&~e,n!==0&&(a=Yn(n))))):(h=l&~s,h!==0?a=Yn(h):o!==0?a=Yn(o):n||(n=l&~e,n!==0&&(a=Yn(n)))),a===0?0:t!==0&&t!==a&&(t&s)===0&&(s=a&-a,n=t&-t,s>=n||s===32&&(n&4194048)!==0)?t:a}function Wl(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function yp(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Zr(){var e=ai;return ai<<=1,(ai&62914560)===0&&(ai=4194304),e}function ku(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function Fl(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function vp(e,t,n,l,a,s){var o=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var h=e.entanglements,g=e.expirationTimes,N=e.hiddenUpdates;for(n=o&~n;0"u")return null;try{return e.activeElement||e.body}catch{return e.body}}var Ep=/[\n"\\]/g;function gt(e){return e.replace(Ep,function(t){return"\\"+t.charCodeAt(0).toString(16)+" "})}function Ku(e,t,n,l,a,s,o,h){e.name="",o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"?e.type=o:e.removeAttribute("type"),t!=null?o==="number"?(t===0&&e.value===""||e.value!=t)&&(e.value=""+vt(t)):e.value!==""+vt(t)&&(e.value=""+vt(t)):o!=="submit"&&o!=="reset"||e.removeAttribute("value"),t!=null?Ju(e,o,vt(t)):n!=null?Ju(e,o,vt(n)):l!=null&&e.removeAttribute("value"),a==null&&s!=null&&(e.defaultChecked=!!s),a!=null&&(e.checked=a&&typeof a!="function"&&typeof a!="symbol"),h!=null&&typeof h!="function"&&typeof h!="symbol"&&typeof h!="boolean"?e.name=""+vt(h):e.removeAttribute("name")}function io(e,t,n,l,a,s,o,h){if(s!=null&&typeof s!="function"&&typeof s!="symbol"&&typeof s!="boolean"&&(e.type=s),t!=null||n!=null){if(!(s!=="submit"&&s!=="reset"||t!=null)){Zu(e);return}n=n!=null?""+vt(n):"",t=t!=null?""+vt(t):n,h||t===e.value||(e.value=t),e.defaultValue=t}l=l??a,l=typeof l!="function"&&typeof l!="symbol"&&!!l,e.checked=h?e.checked:!!l,e.defaultChecked=!!l,o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"&&(e.name=o),Zu(e)}function Ju(e,t,n){t==="number"&&ci(e.ownerDocument)===e||e.defaultValue===""+n||(e.defaultValue=""+n)}function fl(e,t,n,l){if(e=e.options,t){t={};for(var a=0;a"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Iu=!1;if(Qt)try{var ta={};Object.defineProperty(ta,"passive",{get:function(){Iu=!0}}),window.addEventListener("test",ta,ta),window.removeEventListener("test",ta,ta)}catch{Iu=!1}var pn=null,es=null,oi=null;function ho(){if(oi)return oi;var e,t=es,n=t.length,l,a="value"in pn?pn.value:pn.textContent,s=a.length;for(e=0;e=aa),bo=" ",So=!1;function xo(e,t){switch(e){case"keyup":return Fp.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function _o(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var pl=!1;function Ip(e,t){switch(e){case"compositionend":return _o(t);case"keypress":return t.which!==32?null:(So=!0,bo);case"textInput":return e=t.data,e===bo&&So?null:e;default:return null}}function ey(e,t){if(pl)return e==="compositionend"||!is&&xo(e,t)?(e=ho(),oi=es=pn=null,pl=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=l}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=zo(n)}}function Do(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Do(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function wo(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=ci(e.document);t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=ci(e.document)}return t}function cs(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}var cy=Qt&&"documentMode"in document&&11>=document.documentMode,yl=null,rs=null,ca=null,os=!1;function jo(e,t,n){var l=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;os||yl==null||yl!==ci(l)||(l=yl,"selectionStart"in l&&cs(l)?l={start:l.selectionStart,end:l.selectionEnd}:(l=(l.ownerDocument&&l.ownerDocument.defaultView||window).getSelection(),l={anchorNode:l.anchorNode,anchorOffset:l.anchorOffset,focusNode:l.focusNode,focusOffset:l.focusOffset}),ca&&sa(ca,l)||(ca=l,l=lu(rs,"onSelect"),0>=o,a-=o,jt=1<<32-rt(t)+a|n<te?(se=K,K=null):se=K.sibling;var fe=O(A,K,R[te],j);if(fe===null){K===null&&(K=se);break}e&&K&&fe.alternate===null&&t(A,K),x=s(fe,x,te),oe===null?J=fe:oe.sibling=fe,oe=fe,K=se}if(te===R.length)return n(A,K),ce&&Kt(A,te),J;if(K===null){for(;tete?(se=K,K=null):se=K.sibling;var Ln=O(A,K,fe.value,j);if(Ln===null){K===null&&(K=se);break}e&&K&&Ln.alternate===null&&t(A,K),x=s(Ln,x,te),oe===null?J=Ln:oe.sibling=Ln,oe=Ln,K=se}if(fe.done)return n(A,K),ce&&Kt(A,te),J;if(K===null){for(;!fe.done;te++,fe=R.next())fe=U(A,fe.value,j),fe!==null&&(x=s(fe,x,te),oe===null?J=fe:oe.sibling=fe,oe=fe);return ce&&Kt(A,te),J}for(K=l(K);!fe.done;te++,fe=R.next())fe=M(K,A,te,fe.value,j),fe!==null&&(e&&fe.alternate!==null&&K.delete(fe.key===null?te:fe.key),x=s(fe,x,te),oe===null?J=fe:oe.sibling=fe,oe=fe);return e&&K.forEach(function(N0){return t(A,N0)}),ce&&Kt(A,te),J}function xe(A,x,R,j){if(typeof R=="object"&&R!==null&&R.type===k&&R.key===null&&(R=R.props.children),typeof R=="object"&&R!==null){switch(R.$$typeof){case z:e:{for(var J=R.key;x!==null;){if(x.key===J){if(J=R.type,J===k){if(x.tag===7){n(A,x.sibling),j=a(x,R.props.children),j.return=A,A=j;break e}}else if(x.elementType===J||typeof J=="object"&&J!==null&&J.$$typeof===_e&&Fn(J)===x.type){n(A,x.sibling),j=a(x,R.props),ma(j,R),j.return=A,A=j;break e}n(A,x);break}else t(A,x);x=x.sibling}R.type===k?(j=Zn(R.props.children,A.mode,j,R.key),j.return=A,A=j):(j=Si(R.type,R.key,R.props,null,A.mode,j),ma(j,R),j.return=A,A=j)}return o(A);case H:e:{for(J=R.key;x!==null;){if(x.key===J)if(x.tag===4&&x.stateNode.containerInfo===R.containerInfo&&x.stateNode.implementation===R.implementation){n(A,x.sibling),j=a(x,R.children||[]),j.return=A,A=j;break e}else{n(A,x);break}else t(A,x);x=x.sibling}j=vs(R,A.mode,j),j.return=A,A=j}return o(A);case _e:return R=Fn(R),xe(A,x,R,j)}if(Nt(R))return Q(A,x,R,j);if(ke(R)){if(J=ke(R),typeof J!="function")throw Error(r(150));return R=J.call(R),$(A,x,R,j)}if(typeof R.then=="function")return xe(A,x,Ri(R),j);if(R.$$typeof===V)return xe(A,x,Ei(A,R),j);Ni(A,R)}return typeof R=="string"&&R!==""||typeof R=="number"||typeof R=="bigint"?(R=""+R,x!==null&&x.tag===6?(n(A,x.sibling),j=a(x,R),j.return=A,A=j):(n(A,x),j=ys(R,A.mode,j),j.return=A,A=j),o(A)):n(A,x)}return function(A,x,R,j){try{da=0;var J=xe(A,x,R,j);return Rl=null,J}catch(K){if(K===Cl||K===Ai)throw K;var oe=ft(29,K,null,A.mode);return oe.lanes=j,oe.return=A,oe}finally{}}}var In=lf(!0),af=lf(!1),Sn=!1;function Os(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function zs(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function xn(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function _n(e,t,n){var l=e.updateQueue;if(l===null)return null;if(l=l.shared,(de&2)!==0){var a=l.pending;return a===null?t.next=t:(t.next=a.next,a.next=t),l.pending=t,t=bi(e),ko(e,null,n),t}return gi(e,l,t,n),bi(e)}function pa(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194048)!==0)){var l=t.lanes;l&=e.pendingLanes,n|=l,t.lanes=n,Jr(e,n)}}function Ms(e,t){var n=e.updateQueue,l=e.alternate;if(l!==null&&(l=l.updateQueue,n===l)){var a=null,s=null;if(n=n.firstBaseUpdate,n!==null){do{var o={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};s===null?a=s=o:s=s.next=o,n=n.next}while(n!==null);s===null?a=s=t:s=s.next=t}else a=s=t;n={baseState:l.baseState,firstBaseUpdate:a,lastBaseUpdate:s,shared:l.shared,callbacks:l.callbacks},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}var Ds=!1;function ya(){if(Ds){var e=Al;if(e!==null)throw e}}function va(e,t,n,l){Ds=!1;var a=e.updateQueue;Sn=!1;var s=a.firstBaseUpdate,o=a.lastBaseUpdate,h=a.shared.pending;if(h!==null){a.shared.pending=null;var g=h,N=g.next;g.next=null,o===null?s=N:o.next=N,o=g;var D=e.alternate;D!==null&&(D=D.updateQueue,h=D.lastBaseUpdate,h!==o&&(h===null?D.firstBaseUpdate=N:h.next=N,D.lastBaseUpdate=g))}if(s!==null){var U=a.baseState;o=0,D=N=g=null,h=s;do{var O=h.lane&-536870913,M=O!==h.lane;if(M?(ue&O)===O:(l&O)===O){O!==0&&O===Tl&&(Ds=!0),D!==null&&(D=D.next={lane:0,tag:h.tag,payload:h.payload,callback:null,next:null});e:{var Q=e,$=h;O=t;var xe=n;switch($.tag){case 1:if(Q=$.payload,typeof Q=="function"){U=Q.call(xe,U,O);break e}U=Q;break e;case 3:Q.flags=Q.flags&-65537|128;case 0:if(Q=$.payload,O=typeof Q=="function"?Q.call(xe,U,O):Q,O==null)break e;U=S({},U,O);break e;case 2:Sn=!0}}O=h.callback,O!==null&&(e.flags|=64,M&&(e.flags|=8192),M=a.callbacks,M===null?a.callbacks=[O]:M.push(O))}else M={lane:O,tag:h.tag,payload:h.payload,callback:h.callback,next:null},D===null?(N=D=M,g=U):D=D.next=M,o|=O;if(h=h.next,h===null){if(h=a.shared.pending,h===null)break;M=h,h=M.next,M.next=null,a.lastBaseUpdate=M,a.shared.pending=null}}while(!0);D===null&&(g=U),a.baseState=g,a.firstBaseUpdate=N,a.lastBaseUpdate=D,s===null&&(a.shared.lanes=0),Rn|=o,e.lanes=o,e.memoizedState=U}}function uf(e,t){if(typeof e!="function")throw Error(r(191,e));e.call(t)}function sf(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;es?s:8;var o=w.T,h={};w.T=h,Fs(e,!1,t,n);try{var g=a(),N=w.S;if(N!==null&&N(h,g),g!==null&&typeof g=="object"&&typeof g.then=="function"){var D=vy(g,l);Sa(e,t,D,yt(e))}else Sa(e,t,l,yt(e))}catch(U){Sa(e,t,{then:function(){},status:"rejected",reason:U},yt())}finally{X.p=s,o!==null&&h.types!==null&&(o.types=h.types),w.T=o}}function Ey(){}function $s(e,t,n,l){if(e.tag!==5)throw Error(r(476));var a=qf(e).queue;Hf(e,a,t,W,n===null?Ey:function(){return Yf(e),n(l)})}function qf(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:W,baseState:W,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Ft,lastRenderedState:W},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Ft,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function Yf(e){var t=qf(e);t.next===null&&(t=e.alternate.memoizedState),Sa(e,t.next.queue,{},yt())}function Ws(){return Je(La)}function kf(){return je().memoizedState}function Xf(){return je().memoizedState}function Ty(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var n=yt();e=xn(n);var l=_n(t,e,n);l!==null&&(ut(l,t,n),pa(l,t,n)),t={cache:As()},e.payload=t;return}t=t.return}}function Ay(e,t,n){var l=yt();n={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},Hi(e)?Vf(t,n):(n=ms(e,t,n,l),n!==null&&(ut(n,e,l),Qf(n,t,l)))}function Gf(e,t,n){var l=yt();Sa(e,t,n,l)}function Sa(e,t,n,l){var a={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(Hi(e))Vf(t,a);else{var s=e.alternate;if(e.lanes===0&&(s===null||s.lanes===0)&&(s=t.lastRenderedReducer,s!==null))try{var o=t.lastRenderedState,h=s(o,n);if(a.hasEagerState=!0,a.eagerState=h,ot(h,o))return gi(e,t,a,0),Te===null&&vi(),!1}catch{}finally{}if(n=ms(e,t,a,l),n!==null)return ut(n,e,l),Qf(n,t,l),!0}return!1}function Fs(e,t,n,l){if(l={lane:2,revertLane:Oc(),gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},Hi(e)){if(t)throw Error(r(479))}else t=ms(e,n,l,2),t!==null&&ut(t,e,2)}function Hi(e){var t=e.alternate;return e===ee||t!==null&&t===ee}function Vf(e,t){Ol=Mi=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Qf(e,t,n){if((n&4194048)!==0){var l=t.lanes;l&=e.pendingLanes,n|=l,t.lanes=n,Jr(e,n)}}var xa={readContext:Je,use:ji,useCallback:ze,useContext:ze,useEffect:ze,useImperativeHandle:ze,useLayoutEffect:ze,useInsertionEffect:ze,useMemo:ze,useReducer:ze,useRef:ze,useState:ze,useDebugValue:ze,useDeferredValue:ze,useTransition:ze,useSyncExternalStore:ze,useId:ze,useHostTransitionStatus:ze,useFormState:ze,useActionState:ze,useOptimistic:ze,useMemoCache:ze,useCacheRefresh:ze};xa.useEffectEvent=ze;var Zf={readContext:Je,use:ji,useCallback:function(e,t){return Ie().memoizedState=[e,t===void 0?null:t],e},useContext:Je,useEffect:Of,useImperativeHandle:function(e,t,n){n=n!=null?n.concat([e]):null,Bi(4194308,4,wf.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Bi(4194308,4,e,t)},useInsertionEffect:function(e,t){Bi(4,2,e,t)},useMemo:function(e,t){var n=Ie();t=t===void 0?null:t;var l=e();if(el){dn(!0);try{e()}finally{dn(!1)}}return n.memoizedState=[l,t],l},useReducer:function(e,t,n){var l=Ie();if(n!==void 0){var a=n(t);if(el){dn(!0);try{n(t)}finally{dn(!1)}}}else a=t;return l.memoizedState=l.baseState=a,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:a},l.queue=e,e=e.dispatch=Ay.bind(null,ee,e),[l.memoizedState,e]},useRef:function(e){var t=Ie();return e={current:e},t.memoizedState=e},useState:function(e){e=Vs(e);var t=e.queue,n=Gf.bind(null,ee,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:Ks,useDeferredValue:function(e,t){var n=Ie();return Js(n,e,t)},useTransition:function(){var e=Vs(!1);return e=Hf.bind(null,ee,e.queue,!0,!1),Ie().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var l=ee,a=Ie();if(ce){if(n===void 0)throw Error(r(407));n=n()}else{if(n=t(),Te===null)throw Error(r(349));(ue&127)!==0||df(l,t,n)}a.memoizedState=n;var s={value:n,getSnapshot:t};return a.queue=s,Of(pf.bind(null,l,s,e),[e]),l.flags|=2048,Ml(9,{destroy:void 0},mf.bind(null,l,s,n,t),null),n},useId:function(){var e=Ie(),t=Te.identifierPrefix;if(ce){var n=Ut,l=jt;n=(l&~(1<<32-rt(l)-1)).toString(32)+n,t="_"+t+"R_"+n,n=Di++,0<\/script>",s=s.removeChild(s.firstChild);break;case"select":s=typeof l.is=="string"?o.createElement("select",{is:l.is}):o.createElement("select"),l.multiple?s.multiple=!0:l.size&&(s.size=l.size);break;default:s=typeof l.is=="string"?o.createElement(a,{is:l.is}):o.createElement(a)}}s[Ze]=t,s[et]=l;e:for(o=t.child;o!==null;){if(o.tag===5||o.tag===6)s.appendChild(o.stateNode);else if(o.tag!==4&&o.tag!==27&&o.child!==null){o.child.return=o,o=o.child;continue}if(o===t)break e;for(;o.sibling===null;){if(o.return===null||o.return===t)break e;o=o.return}o.sibling.return=o.return,o=o.sibling}t.stateNode=s;e:switch(We(s,a,l),a){case"button":case"input":case"select":case"textarea":l=!!l.autoFocus;break e;case"img":l=!0;break e;default:l=!1}l&&It(t)}}return Re(t),fc(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==l&&It(t);else{if(typeof l!="string"&&t.stateNode===null)throw Error(r(166));if(e=le.current,_l(t)){if(e=t.stateNode,n=t.memoizedProps,l=null,a=Ke,a!==null)switch(a.tag){case 27:case 5:l=a.memoizedProps}e[Ze]=t,e=!!(e.nodeValue===n||l!==null&&l.suppressHydrationWarning===!0||fd(e.nodeValue,n)),e||gn(t,!0)}else e=au(e).createTextNode(l),e[Ze]=t,t.stateNode=e}return Re(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(l=_l(t),n!==null){if(e===null){if(!l)throw Error(r(318));if(e=t.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(r(557));e[Ze]=t}else Kn(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Re(t),e=!1}else n=xs(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(dt(t),t):(dt(t),null);if((t.flags&128)!==0)throw Error(r(558))}return Re(t),null;case 13:if(l=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(a=_l(t),l!==null&&l.dehydrated!==null){if(e===null){if(!a)throw Error(r(318));if(a=t.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(r(317));a[Ze]=t}else Kn(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Re(t),a=!1}else a=xs(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=a),a=!0;if(!a)return t.flags&256?(dt(t),t):(dt(t),null)}return dt(t),(t.flags&128)!==0?(t.lanes=n,t):(n=l!==null,e=e!==null&&e.memoizedState!==null,n&&(l=t.child,a=null,l.alternate!==null&&l.alternate.memoizedState!==null&&l.alternate.memoizedState.cachePool!==null&&(a=l.alternate.memoizedState.cachePool.pool),s=null,l.memoizedState!==null&&l.memoizedState.cachePool!==null&&(s=l.memoizedState.cachePool.pool),s!==a&&(l.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),Gi(t,t.updateQueue),Re(t),null);case 4:return De(),e===null&&wc(t.stateNode.containerInfo),Re(t),null;case 10:return $t(t.type),Re(t),null;case 19:if(B(we),l=t.memoizedState,l===null)return Re(t),null;if(a=(t.flags&128)!==0,s=l.rendering,s===null)if(a)Ea(l,!1);else{if(Me!==0||e!==null&&(e.flags&128)!==0)for(e=t.child;e!==null;){if(s=zi(e),s!==null){for(t.flags|=128,Ea(l,!1),e=s.updateQueue,t.updateQueue=e,Gi(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)Xo(n,e),n=n.sibling;return G(we,we.current&1|2),ce&&Kt(t,l.treeForkCount),t.child}e=e.sibling}l.tail!==null&&st()>Ji&&(t.flags|=128,a=!0,Ea(l,!1),t.lanes=4194304)}else{if(!a)if(e=zi(s),e!==null){if(t.flags|=128,a=!0,e=e.updateQueue,t.updateQueue=e,Gi(t,e),Ea(l,!0),l.tail===null&&l.tailMode==="hidden"&&!s.alternate&&!ce)return Re(t),null}else 2*st()-l.renderingStartTime>Ji&&n!==536870912&&(t.flags|=128,a=!0,Ea(l,!1),t.lanes=4194304);l.isBackwards?(s.sibling=t.child,t.child=s):(e=l.last,e!==null?e.sibling=s:t.child=s,l.last=s)}return l.tail!==null?(e=l.tail,l.rendering=e,l.tail=e.sibling,l.renderingStartTime=st(),e.sibling=null,n=we.current,G(we,a?n&1|2:n&1),ce&&Kt(t,l.treeForkCount),e):(Re(t),null);case 22:case 23:return dt(t),js(),l=t.memoizedState!==null,e!==null?e.memoizedState!==null!==l&&(t.flags|=8192):l&&(t.flags|=8192),l?(n&536870912)!==0&&(t.flags&128)===0&&(Re(t),t.subtreeFlags&6&&(t.flags|=8192)):Re(t),n=t.updateQueue,n!==null&&Gi(t,n.retryQueue),n=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),l=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(l=t.memoizedState.cachePool.pool),l!==n&&(t.flags|=2048),e!==null&&B(Wn),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),$t(Be),Re(t),null;case 25:return null;case 30:return null}throw Error(r(156,t.tag))}function zy(e,t){switch(bs(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return $t(Be),De(),e=t.flags,(e&65536)!==0&&(e&128)===0?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return ei(t),null;case 31:if(t.memoizedState!==null){if(dt(t),t.alternate===null)throw Error(r(340));Kn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(dt(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(r(340));Kn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return B(we),null;case 4:return De(),null;case 10:return $t(t.type),null;case 22:case 23:return dt(t),js(),e!==null&&B(Wn),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return $t(Be),null;case 25:return null;default:return null}}function yh(e,t){switch(bs(t),t.tag){case 3:$t(Be),De();break;case 26:case 27:case 5:ei(t);break;case 4:De();break;case 31:t.memoizedState!==null&&dt(t);break;case 13:dt(t);break;case 19:B(we);break;case 10:$t(t.type);break;case 22:case 23:dt(t),js(),e!==null&&B(Wn);break;case 24:$t(Be)}}function Ta(e,t){try{var n=t.updateQueue,l=n!==null?n.lastEffect:null;if(l!==null){var a=l.next;n=a;do{if((n.tag&e)===e){l=void 0;var s=n.create,o=n.inst;l=s(),o.destroy=l}n=n.next}while(n!==a)}}catch(h){ye(t,t.return,h)}}function An(e,t,n){try{var l=t.updateQueue,a=l!==null?l.lastEffect:null;if(a!==null){var s=a.next;l=s;do{if((l.tag&e)===e){var o=l.inst,h=o.destroy;if(h!==void 0){o.destroy=void 0,a=t;var g=n,N=h;try{N()}catch(D){ye(a,g,D)}}}l=l.next}while(l!==s)}}catch(D){ye(t,t.return,D)}}function vh(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{sf(t,n)}catch(l){ye(e,e.return,l)}}}function gh(e,t,n){n.props=tl(e.type,e.memoizedProps),n.state=e.memoizedState;try{n.componentWillUnmount()}catch(l){ye(e,t,l)}}function Aa(e,t){try{var n=e.ref;if(n!==null){switch(e.tag){case 26:case 27:case 5:var l=e.stateNode;break;case 30:l=e.stateNode;break;default:l=e.stateNode}typeof n=="function"?e.refCleanup=n(l):n.current=l}}catch(a){ye(e,t,a)}}function Bt(e,t){var n=e.ref,l=e.refCleanup;if(n!==null)if(typeof l=="function")try{l()}catch(a){ye(e,t,a)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n=="function")try{n(null)}catch(a){ye(e,t,a)}else n.current=null}function bh(e){var t=e.type,n=e.memoizedProps,l=e.stateNode;try{e:switch(t){case"button":case"input":case"select":case"textarea":n.autoFocus&&l.focus();break e;case"img":n.src?l.src=n.src:n.srcSet&&(l.srcset=n.srcSet)}}catch(a){ye(e,e.return,a)}}function hc(e,t,n){try{var l=e.stateNode;Py(l,e.type,n,t),l[et]=t}catch(a){ye(e,e.return,a)}}function Sh(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&Dn(e.type)||e.tag===4}function dc(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||Sh(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&&Dn(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 mc(e,t,n){var l=e.tag;if(l===5||l===6)e=e.stateNode,t?(n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n).insertBefore(e,t):(t=n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n,t.appendChild(e),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=Vt));else if(l!==4&&(l===27&&Dn(e.type)&&(n=e.stateNode,t=null),e=e.child,e!==null))for(mc(e,t,n),e=e.sibling;e!==null;)mc(e,t,n),e=e.sibling}function Vi(e,t,n){var l=e.tag;if(l===5||l===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(l!==4&&(l===27&&Dn(e.type)&&(n=e.stateNode),e=e.child,e!==null))for(Vi(e,t,n),e=e.sibling;e!==null;)Vi(e,t,n),e=e.sibling}function xh(e){var t=e.stateNode,n=e.memoizedProps;try{for(var l=e.type,a=t.attributes;a.length;)t.removeAttributeNode(a[0]);We(t,l,n),t[Ze]=e,t[et]=n}catch(s){ye(e,e.return,s)}}var en=!1,qe=!1,pc=!1,_h=typeof WeakSet=="function"?WeakSet:Set,Qe=null;function My(e,t){if(e=e.containerInfo,Bc=fu,e=wo(e),cs(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var l=n.getSelection&&n.getSelection();if(l&&l.rangeCount!==0){n=l.anchorNode;var a=l.anchorOffset,s=l.focusNode;l=l.focusOffset;try{n.nodeType,s.nodeType}catch{n=null;break e}var o=0,h=-1,g=-1,N=0,D=0,U=e,O=null;t:for(;;){for(var M;U!==n||a!==0&&U.nodeType!==3||(h=o+a),U!==s||l!==0&&U.nodeType!==3||(g=o+l),U.nodeType===3&&(o+=U.nodeValue.length),(M=U.firstChild)!==null;)O=U,U=M;for(;;){if(U===e)break t;if(O===n&&++N===a&&(h=o),O===s&&++D===l&&(g=o),(M=U.nextSibling)!==null)break;U=O,O=U.parentNode}U=M}n=h===-1||g===-1?null:{start:h,end:g}}else n=null}n=n||{start:0,end:0}}else n=null;for(Lc={focusedElem:e,selectionRange:n},fu=!1,Qe=t;Qe!==null;)if(t=Qe,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,Qe=e;else for(;Qe!==null;){switch(t=Qe,s=t.alternate,e=t.flags,t.tag){case 0:if((e&4)!==0&&(e=t.updateQueue,e=e!==null?e.events:null,e!==null))for(n=0;n title"))),We(s,l,n),s[Ze]=e,Ve(s),l=s;break e;case"link":var o=Nd("link","href",a).get(l+(n.href||""));if(o){for(var h=0;hxe&&(o=xe,xe=$,$=o);var A=Mo(h,$),x=Mo(h,xe);if(A&&x&&(M.rangeCount!==1||M.anchorNode!==A.node||M.anchorOffset!==A.offset||M.focusNode!==x.node||M.focusOffset!==x.offset)){var R=U.createRange();R.setStart(A.node,A.offset),M.removeAllRanges(),$>xe?(M.addRange(R),M.extend(x.node,x.offset)):(R.setEnd(x.node,x.offset),M.addRange(R))}}}}for(U=[],M=h;M=M.parentNode;)M.nodeType===1&&U.push({element:M,left:M.scrollLeft,top:M.scrollTop});for(typeof h.focus=="function"&&h.focus(),h=0;hn?32:n,w.T=null,n=_c,_c=null;var s=On,o=un;if(Xe=0,Bl=On=null,un=0,(de&6)!==0)throw Error(r(331));var h=de;if(de|=4,wh(s.current),zh(s,s.current,o,n),de=h,Ma(0,!1),ct&&typeof ct.onPostCommitFiberRoot=="function")try{ct.onPostCommitFiberRoot($l,s)}catch{}return!0}finally{X.p=a,w.T=l,Fh(e,t)}}function Ih(e,t,n){t=St(n,t),t=tc(e.stateNode,t,2),e=_n(e,t,2),e!==null&&(Fl(e,2),Lt(e))}function ye(e,t,n){if(e.tag===3)Ih(e,e,n);else for(;t!==null;){if(t.tag===3){Ih(t,e,n);break}else if(t.tag===1){var l=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof l.componentDidCatch=="function"&&(Nn===null||!Nn.has(l))){e=St(n,e),n=eh(2),l=_n(t,n,2),l!==null&&(th(n,l,t,e),Fl(l,2),Lt(l));break}}t=t.return}}function Cc(e,t,n){var l=e.pingCache;if(l===null){l=e.pingCache=new jy;var a=new Set;l.set(t,a)}else a=l.get(t),a===void 0&&(a=new Set,l.set(t,a));a.has(n)||(gc=!0,a.add(n),e=qy.bind(null,e,t,n),t.then(e,e))}function qy(e,t,n){var l=e.pingCache;l!==null&&l.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,Te===e&&(ue&n)===n&&(Me===4||Me===3&&(ue&62914560)===ue&&300>st()-Ki?(de&2)===0&&Ll(e,0):bc|=n,Ul===ue&&(Ul=0)),Lt(e)}function ed(e,t){t===0&&(t=Zr()),e=Qn(e,t),e!==null&&(Fl(e,t),Lt(e))}function Yy(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),ed(e,n)}function ky(e,t){var n=0;switch(e.tag){case 31:case 13:var l=e.stateNode,a=e.memoizedState;a!==null&&(n=a.retryLane);break;case 19:l=e.stateNode;break;case 22:l=e.stateNode._retryCache;break;default:throw Error(r(314))}l!==null&&l.delete(t),ed(e,n)}function Xy(e,t){return qu(e,t)}var eu=null,ql=null,Rc=!1,tu=!1,Nc=!1,Mn=0;function Lt(e){e!==ql&&e.next===null&&(ql===null?eu=ql=e:ql=ql.next=e),tu=!0,Rc||(Rc=!0,Vy())}function Ma(e,t){if(!Nc&&tu){Nc=!0;do for(var n=!1,l=eu;l!==null;){if(e!==0){var a=l.pendingLanes;if(a===0)var s=0;else{var o=l.suspendedLanes,h=l.pingedLanes;s=(1<<31-rt(42|e)+1)-1,s&=a&~(o&~h),s=s&201326741?s&201326741|1:s?s|2:0}s!==0&&(n=!0,ad(l,s))}else s=ue,s=ii(l,l===Te?s:0,l.cancelPendingCommit!==null||l.timeoutHandle!==-1),(s&3)===0||Wl(l,s)||(n=!0,ad(l,s));l=l.next}while(n);Nc=!1}}function Gy(){td()}function td(){tu=Rc=!1;var e=0;Mn!==0&&e0()&&(e=Mn);for(var t=st(),n=null,l=eu;l!==null;){var a=l.next,s=nd(l,t);s===0?(l.next=null,n===null?eu=a:n.next=a,a===null&&(ql=n)):(n=l,(e!==0||(s&3)!==0)&&(tu=!0)),l=a}Xe!==0&&Xe!==5||Ma(e),Mn!==0&&(Mn=0)}function nd(e,t){for(var n=e.suspendedLanes,l=e.pingedLanes,a=e.expirationTimes,s=e.pendingLanes&-62914561;0h)break;var D=g.transferSize,U=g.initiatorType;D&&hd(U)&&(g=g.responseEnd,o+=D*(g"u"?null:document;function Td(e,t,n){var l=Yl;if(l&&typeof t=="string"&&t){var a=gt(t);a='link[rel="'+e+'"][href="'+a+'"]',typeof n=="string"&&(a+='[crossorigin="'+n+'"]'),Ed.has(a)||(Ed.add(a),e={rel:e,crossOrigin:n,href:t},l.querySelector(a)===null&&(t=l.createElement("link"),We(t,"link",e),Ve(t),l.head.appendChild(t)))}}function r0(e){sn.D(e),Td("dns-prefetch",e,null)}function o0(e,t){sn.C(e,t),Td("preconnect",e,t)}function f0(e,t,n){sn.L(e,t,n);var l=Yl;if(l&&e&&t){var a='link[rel="preload"][as="'+gt(t)+'"]';t==="image"&&n&&n.imageSrcSet?(a+='[imagesrcset="'+gt(n.imageSrcSet)+'"]',typeof n.imageSizes=="string"&&(a+='[imagesizes="'+gt(n.imageSizes)+'"]')):a+='[href="'+gt(e)+'"]';var s=a;switch(t){case"style":s=kl(e);break;case"script":s=Xl(e)}Ct.has(s)||(e=S({rel:"preload",href:t==="image"&&n&&n.imageSrcSet?void 0:e,as:t},n),Ct.set(s,e),l.querySelector(a)!==null||t==="style"&&l.querySelector(Ua(s))||t==="script"&&l.querySelector(Ba(s))||(t=l.createElement("link"),We(t,"link",e),Ve(t),l.head.appendChild(t)))}}function h0(e,t){sn.m(e,t);var n=Yl;if(n&&e){var l=t&&typeof t.as=="string"?t.as:"script",a='link[rel="modulepreload"][as="'+gt(l)+'"][href="'+gt(e)+'"]',s=a;switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":s=Xl(e)}if(!Ct.has(s)&&(e=S({rel:"modulepreload",href:e},t),Ct.set(s,e),n.querySelector(a)===null)){switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(n.querySelector(Ba(s)))return}l=n.createElement("link"),We(l,"link",e),Ve(l),n.head.appendChild(l)}}}function d0(e,t,n){sn.S(e,t,n);var l=Yl;if(l&&e){var a=rl(l).hoistableStyles,s=kl(e);t=t||"default";var o=a.get(s);if(!o){var h={loading:0,preload:null};if(o=l.querySelector(Ua(s)))h.loading=5;else{e=S({rel:"stylesheet",href:e,"data-precedence":t},n),(n=Ct.get(s))&&Vc(e,n);var g=o=l.createElement("link");Ve(g),We(g,"link",e),g._p=new Promise(function(N,D){g.onload=N,g.onerror=D}),g.addEventListener("load",function(){h.loading|=1}),g.addEventListener("error",function(){h.loading|=2}),h.loading|=4,uu(o,t,l)}o={type:"stylesheet",instance:o,count:1,state:h},a.set(s,o)}}}function m0(e,t){sn.X(e,t);var n=Yl;if(n&&e){var l=rl(n).hoistableScripts,a=Xl(e),s=l.get(a);s||(s=n.querySelector(Ba(a)),s||(e=S({src:e,async:!0},t),(t=Ct.get(a))&&Qc(e,t),s=n.createElement("script"),Ve(s),We(s,"link",e),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function p0(e,t){sn.M(e,t);var n=Yl;if(n&&e){var l=rl(n).hoistableScripts,a=Xl(e),s=l.get(a);s||(s=n.querySelector(Ba(a)),s||(e=S({src:e,async:!0,type:"module"},t),(t=Ct.get(a))&&Qc(e,t),s=n.createElement("script"),Ve(s),We(s,"link",e),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function Ad(e,t,n,l){var a=(a=le.current)?iu(a):null;if(!a)throw Error(r(446));switch(e){case"meta":case"title":return null;case"style":return typeof n.precedence=="string"&&typeof n.href=="string"?(t=kl(n.href),n=rl(a).hoistableStyles,l=n.get(t),l||(l={type:"style",instance:null,count:0,state:null},n.set(t,l)),l):{type:"void",instance:null,count:0,state:null};case"link":if(n.rel==="stylesheet"&&typeof n.href=="string"&&typeof n.precedence=="string"){e=kl(n.href);var s=rl(a).hoistableStyles,o=s.get(e);if(o||(a=a.ownerDocument||a,o={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},s.set(e,o),(s=a.querySelector(Ua(e)))&&!s._p&&(o.instance=s,o.state.loading=5),Ct.has(e)||(n={rel:"preload",as:"style",href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},Ct.set(e,n),s||y0(a,e,n,o.state))),t&&l===null)throw Error(r(528,""));return o}if(t&&l!==null)throw Error(r(529,""));return null;case"script":return t=n.async,n=n.src,typeof n=="string"&&t&&typeof t!="function"&&typeof t!="symbol"?(t=Xl(n),n=rl(a).hoistableScripts,l=n.get(t),l||(l={type:"script",instance:null,count:0,state:null},n.set(t,l)),l):{type:"void",instance:null,count:0,state:null};default:throw Error(r(444,e))}}function kl(e){return'href="'+gt(e)+'"'}function Ua(e){return'link[rel="stylesheet"]['+e+"]"}function Cd(e){return S({},e,{"data-precedence":e.precedence,precedence:null})}function y0(e,t,n,l){e.querySelector('link[rel="preload"][as="style"]['+t+"]")?l.loading=1:(t=e.createElement("link"),l.preload=t,t.addEventListener("load",function(){return l.loading|=1}),t.addEventListener("error",function(){return l.loading|=2}),We(t,"link",n),Ve(t),e.head.appendChild(t))}function Xl(e){return'[src="'+gt(e)+'"]'}function Ba(e){return"script[async]"+e}function Rd(e,t,n){if(t.count++,t.instance===null)switch(t.type){case"style":var l=e.querySelector('style[data-href~="'+gt(n.href)+'"]');if(l)return t.instance=l,Ve(l),l;var a=S({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return l=(e.ownerDocument||e).createElement("style"),Ve(l),We(l,"style",a),uu(l,n.precedence,e),t.instance=l;case"stylesheet":a=kl(n.href);var s=e.querySelector(Ua(a));if(s)return t.state.loading|=4,t.instance=s,Ve(s),s;l=Cd(n),(a=Ct.get(a))&&Vc(l,a),s=(e.ownerDocument||e).createElement("link"),Ve(s);var o=s;return o._p=new Promise(function(h,g){o.onload=h,o.onerror=g}),We(s,"link",l),t.state.loading|=4,uu(s,n.precedence,e),t.instance=s;case"script":return s=Xl(n.src),(a=e.querySelector(Ba(s)))?(t.instance=a,Ve(a),a):(l=n,(a=Ct.get(s))&&(l=S({},n),Qc(l,a)),e=e.ownerDocument||e,a=e.createElement("script"),Ve(a),We(a,"link",l),e.head.appendChild(a),t.instance=a);case"void":return null;default:throw Error(r(443,t.type))}else t.type==="stylesheet"&&(t.state.loading&4)===0&&(l=t.instance,t.state.loading|=4,uu(l,n.precedence,e));return t.instance}function uu(e,t,n){for(var l=n.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=l.length?l[l.length-1]:null,s=a,o=0;o title"):null)}function v0(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case"meta":case"title":return!0;case"style":if(typeof t.precedence!="string"||typeof t.href!="string"||t.href==="")break;return!0;case"link":if(typeof t.rel!="string"||typeof t.href!="string"||t.href===""||t.onLoad||t.onError)break;switch(t.rel){case"stylesheet":return e=t.disabled,typeof t.precedence=="string"&&e==null;default:return!0}case"script":if(t.async&&typeof t.async!="function"&&typeof t.async!="symbol"&&!t.onLoad&&!t.onError&&t.src&&typeof t.src=="string")return!0}return!1}function zd(e){return!(e.type==="stylesheet"&&(e.state.loading&3)===0)}function g0(e,t,n,l){if(n.type==="stylesheet"&&(typeof l.media!="string"||matchMedia(l.media).matches!==!1)&&(n.state.loading&4)===0){if(n.instance===null){var a=kl(l.href),s=t.querySelector(Ua(a));if(s){t=s._p,t!==null&&typeof t=="object"&&typeof t.then=="function"&&(e.count++,e=cu.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=s,Ve(s);return}s=t.ownerDocument||t,l=Cd(l),(a=Ct.get(a))&&Vc(l,a),s=s.createElement("link"),Ve(s);var o=s;o._p=new Promise(function(h,g){o.onload=h,o.onerror=g}),We(s,"link",l),n.instance=s}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&(n.state.loading&3)===0&&(e.count++,n=cu.bind(e),t.addEventListener("load",n),t.addEventListener("error",n))}}var Zc=0;function b0(e,t){return e.stylesheets&&e.count===0&&ou(e,e.stylesheets),0Zc?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(l),clearTimeout(a)}}:null}function cu(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)ou(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var ru=null;function ou(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,ru=new Map,t.forEach(S0,e),ru=null,cu.call(e))}function S0(e,t){if(!(t.state.loading&4)){var n=ru.get(e);if(n)var l=n.get(null);else{n=new Map,ru.set(e,n);for(var a=e.querySelectorAll("link[data-precedence],style[data-precedence]"),s=0;s"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(u)}catch(i){console.error(i)}}return u(),tr.exports=B0(),tr.exports}var H0=L0();var em="popstate";function q0(u={}){function i(r,f){let{pathname:d,search:m,hash:b}=r.location;return hr("",{pathname:d,search:m,hash:b},f.state&&f.state.usr||null,f.state&&f.state.key||"default")}function c(r,f){return typeof f=="string"?f:Wa(f)}return k0(i,c,null,u)}function Oe(u,i){if(u===!1||u===null||typeof u>"u")throw new Error(i)}function wt(u,i){if(!u){typeof console<"u"&&console.warn(i);try{throw new Error(i)}catch{}}}function Y0(){return Math.random().toString(36).substring(2,10)}function tm(u,i){return{usr:u.state,key:u.key,idx:i}}function hr(u,i,c=null,r){return{pathname:typeof u=="string"?u:u.pathname,search:"",hash:"",...typeof i=="string"?Ql(i):i,state:c,key:i&&i.key||r||Y0()}}function Wa({pathname:u="/",search:i="",hash:c=""}){return i&&i!=="?"&&(u+=i.charAt(0)==="?"?i:"?"+i),c&&c!=="#"&&(u+=c.charAt(0)==="#"?c:"#"+c),u}function Ql(u){let i={};if(u){let c=u.indexOf("#");c>=0&&(i.hash=u.substring(c),u=u.substring(0,c));let r=u.indexOf("?");r>=0&&(i.search=u.substring(r),u=u.substring(0,r)),u&&(i.pathname=u)}return i}function k0(u,i,c,r={}){let{window:f=document.defaultView,v5Compat:d=!1}=r,m=f.history,b="POP",p=null,y=E();y==null&&(y=0,m.replaceState({...m.state,idx:y},""));function E(){return(m.state||{idx:null}).idx}function S(){b="POP";let q=E(),L=q==null?null:q-y;y=q,p&&p({action:b,location:k.location,delta:L})}function C(q,L){b="PUSH";let Y=hr(k.location,q,L);y=E()+1;let V=tm(Y,y),ne=k.createHref(Y);try{m.pushState(V,"",ne)}catch(he){if(he instanceof DOMException&&he.name==="DataCloneError")throw he;f.location.assign(ne)}d&&p&&p({action:b,location:k.location,delta:1})}function z(q,L){b="REPLACE";let Y=hr(k.location,q,L);y=E();let V=tm(Y,y),ne=k.createHref(Y);m.replaceState(V,"",ne),d&&p&&p({action:b,location:k.location,delta:0})}function H(q){return X0(q)}let k={get action(){return b},get location(){return u(f,m)},listen(q){if(p)throw new Error("A history only accepts one active listener");return f.addEventListener(em,S),p=q,()=>{f.removeEventListener(em,S),p=null}},createHref(q){return i(f,q)},createURL:H,encodeLocation(q){let L=H(q);return{pathname:L.pathname,search:L.search,hash:L.hash}},push:C,replace:z,go(q){return m.go(q)}};return k}function X0(u,i=!1){let c="http://localhost";typeof window<"u"&&(c=window.location.origin!=="null"?window.location.origin:window.location.href),Oe(c,"No window.location.(origin|href) available to create URL");let r=typeof u=="string"?u:Wa(u);return r=r.replace(/ $/,"%20"),!i&&r.startsWith("//")&&(r=c+r),new URL(r,c)}function Sm(u,i,c="/"){return G0(u,i,c,!1)}function G0(u,i,c,r){let f=typeof i=="string"?Ql(i):i,d=on(f.pathname||"/",c);if(d==null)return null;let m=xm(u);V0(m);let b=null;for(let p=0;b==null&&p{let E={relativePath:y===void 0?m.path||"":y,caseSensitive:m.caseSensitive===!0,childrenIndex:b,route:m};if(E.relativePath.startsWith("/")){if(!E.relativePath.startsWith(r)&&p)return;Oe(E.relativePath.startsWith(r),`Absolute route path "${E.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),E.relativePath=E.relativePath.slice(r.length)}let S=rn([r,E.relativePath]),C=c.concat(E);m.children&&m.children.length>0&&(Oe(m.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${S}".`),xm(m.children,i,C,S,p)),!(m.path==null&&!m.index)&&i.push({path:S,score:F0(S,m.index),routesMeta:C})};return u.forEach((m,b)=>{if(m.path===""||!m.path?.includes("?"))d(m,b);else for(let p of _m(m.path))d(m,b,!0,p)}),i}function _m(u){let i=u.split("/");if(i.length===0)return[];let[c,...r]=i,f=c.endsWith("?"),d=c.replace(/\?$/,"");if(r.length===0)return f?[d,""]:[d];let m=_m(r.join("/")),b=[];return b.push(...m.map(p=>p===""?d:[d,p].join("/"))),f&&b.push(...m),b.map(p=>u.startsWith("/")&&p===""?"/":p)}function V0(u){u.sort((i,c)=>i.score!==c.score?c.score-i.score:P0(i.routesMeta.map(r=>r.childrenIndex),c.routesMeta.map(r=>r.childrenIndex)))}var Q0=/^:[\w-]+$/,Z0=3,K0=2,J0=1,$0=10,W0=-2,nm=u=>u==="*";function F0(u,i){let c=u.split("/"),r=c.length;return c.some(nm)&&(r+=W0),i&&(r+=K0),c.filter(f=>!nm(f)).reduce((f,d)=>f+(Q0.test(d)?Z0:d===""?J0:$0),r)}function P0(u,i){return u.length===i.length&&u.slice(0,-1).every((r,f)=>r===i[f])?u[u.length-1]-i[i.length-1]:0}function I0(u,i,c=!1){let{routesMeta:r}=u,f={},d="/",m=[];for(let b=0;b{if(E==="*"){let H=b[C]||"";m=d.slice(0,d.length-H.length).replace(/(.)\/+$/,"$1")}const z=b[C];return S&&!z?y[E]=void 0:y[E]=(z||"").replace(/%2F/g,"/"),y},{}),pathname:d,pathnameBase:m,pattern:u}}function ev(u,i=!1,c=!0){wt(u==="*"||!u.endsWith("*")||u.endsWith("/*"),`Route path "${u}" will be treated as if it were "${u.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${u.replace(/\*$/,"/*")}".`);let r=[],f="^"+u.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(m,b,p)=>(r.push({paramName:b,isOptional:p!=null}),p?"/?([^\\/]+)?":"/([^\\/]+)")).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return u.endsWith("*")?(r.push({paramName:"*"}),f+=u==="*"||u==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):c?f+="\\/*$":u!==""&&u!=="/"&&(f+="(?:(?=\\/|$))"),[new RegExp(f,i?void 0:"i"),r]}function tv(u){try{return u.split("/").map(i=>decodeURIComponent(i).replace(/\//g,"%2F")).join("/")}catch(i){return wt(!1,`The URL path "${u}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${i}).`),u}}function on(u,i){if(i==="/")return u;if(!u.toLowerCase().startsWith(i.toLowerCase()))return null;let c=i.endsWith("/")?i.length-1:i.length,r=u.charAt(c);return r&&r!=="/"?null:u.slice(c)||"/"}var nv=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,lv=u=>nv.test(u);function av(u,i="/"){let{pathname:c,search:r="",hash:f=""}=typeof u=="string"?Ql(u):u,d;if(c)if(lv(c))d=c;else{if(c.includes("//")){let m=c;c=c.replace(/\/\/+/g,"/"),wt(!1,`Pathnames cannot have embedded double slashes - normalizing ${m} -> ${c}`)}c.startsWith("/")?d=lm(c.substring(1),"/"):d=lm(c,i)}else d=i;return{pathname:d,search:sv(r),hash:cv(f)}}function lm(u,i){let c=i.replace(/\/+$/,"").split("/");return u.split("/").forEach(f=>{f===".."?c.length>1&&c.pop():f!=="."&&c.push(f)}),c.length>1?c.join("/"):"/"}function ir(u,i,c,r){return`Cannot include a '${u}' character in a manually specified \`to.${i}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${c}\` field. Alternatively you may provide the full path as a string in and the router will parse it for you.`}function iv(u){return u.filter((i,c)=>c===0||i.route.path&&i.route.path.length>0)}function Em(u){let i=iv(u);return i.map((c,r)=>r===i.length-1?c.pathname:c.pathnameBase)}function Tm(u,i,c,r=!1){let f;typeof u=="string"?f=Ql(u):(f={...u},Oe(!f.pathname||!f.pathname.includes("?"),ir("?","pathname","search",f)),Oe(!f.pathname||!f.pathname.includes("#"),ir("#","pathname","hash",f)),Oe(!f.search||!f.search.includes("#"),ir("#","search","hash",f)));let d=u===""||f.pathname==="",m=d?"/":f.pathname,b;if(m==null)b=c;else{let S=i.length-1;if(!r&&m.startsWith("..")){let C=m.split("/");for(;C[0]==="..";)C.shift(),S-=1;f.pathname=C.join("/")}b=S>=0?i[S]:"/"}let p=av(f,b),y=m&&m!=="/"&&m.endsWith("/"),E=(d||m===".")&&c.endsWith("/");return!p.pathname.endsWith("/")&&(y||E)&&(p.pathname+="/"),p}var rn=u=>u.join("/").replace(/\/\/+/g,"/"),uv=u=>u.replace(/\/+$/,"").replace(/^\/*/,"/"),sv=u=>!u||u==="?"?"":u.startsWith("?")?u:"?"+u,cv=u=>!u||u==="#"?"":u.startsWith("#")?u:"#"+u;function rv(u){return u!=null&&typeof u.status=="number"&&typeof u.statusText=="string"&&typeof u.internal=="boolean"&&"data"in u}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var Am=["POST","PUT","PATCH","DELETE"];new Set(Am);var ov=["GET",...Am];new Set(ov);var Zl=T.createContext(null);Zl.displayName="DataRouter";var Ou=T.createContext(null);Ou.displayName="DataRouterState";T.createContext(!1);var Cm=T.createContext({isTransitioning:!1});Cm.displayName="ViewTransition";var fv=T.createContext(new Map);fv.displayName="Fetchers";var hv=T.createContext(null);hv.displayName="Await";var Yt=T.createContext(null);Yt.displayName="Navigation";var Fa=T.createContext(null);Fa.displayName="Location";var fn=T.createContext({outlet:null,matches:[],isDataRoute:!1});fn.displayName="Route";var xr=T.createContext(null);xr.displayName="RouteError";function dv(u,{relative:i}={}){Oe(Pa(),"useHref() may be used only in the context of a component.");let{basename:c,navigator:r}=T.useContext(Yt),{hash:f,pathname:d,search:m}=Ia(u,{relative:i}),b=d;return c!=="/"&&(b=d==="/"?c:rn([c,d])),r.createHref({pathname:b,search:m,hash:f})}function Pa(){return T.useContext(Fa)!=null}function il(){return Oe(Pa(),"useLocation() may be used only in the context of a component."),T.useContext(Fa).location}var Rm="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function Nm(u){T.useContext(Yt).static||T.useLayoutEffect(u)}function mv(){let{isDataRoute:u}=T.useContext(fn);return u?Rv():pv()}function pv(){Oe(Pa(),"useNavigate() may be used only in the context of a component.");let u=T.useContext(Zl),{basename:i,navigator:c}=T.useContext(Yt),{matches:r}=T.useContext(fn),{pathname:f}=il(),d=JSON.stringify(Em(r)),m=T.useRef(!1);return Nm(()=>{m.current=!0}),T.useCallback((p,y={})=>{if(wt(m.current,Rm),!m.current)return;if(typeof p=="number"){c.go(p);return}let E=Tm(p,JSON.parse(d),f,y.relative==="path");u==null&&i!=="/"&&(E.pathname=E.pathname==="/"?i:rn([i,E.pathname])),(y.replace?c.replace:c.push)(E,y.state,y)},[i,c,d,f,u])}T.createContext(null);function Ia(u,{relative:i}={}){let{matches:c}=T.useContext(fn),{pathname:r}=il(),f=JSON.stringify(Em(c));return T.useMemo(()=>Tm(u,JSON.parse(f),r,i==="path"),[u,f,r,i])}function yv(u,i){return Om(u,i)}function Om(u,i,c,r,f){Oe(Pa(),"useRoutes() may be used only in the context of a component.");let{navigator:d}=T.useContext(Yt),{matches:m}=T.useContext(fn),b=m[m.length-1],p=b?b.params:{},y=b?b.pathname:"/",E=b?b.pathnameBase:"/",S=b&&b.route;{let Y=S&&S.path||"";zm(y,!S||Y.endsWith("*")||Y.endsWith("*?"),`You rendered descendant (or called \`useRoutes()\`) at "${y}" (under ) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render. -Please change the parent to .`)}let C=il(),z;if(i){let Y=typeof i=="string"?Ql(i):i;Oe(E==="/"||Y.pathname?.startsWith(E),`When overriding the location using \`\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${E}" but pathname "${Y.pathname}" was given in the \`location\` prop.`),z=Y}else z=C;let H=z.pathname||"/",k=H;if(E!=="/"){let Y=E.replace(/^\//,"").split("/");k="/"+H.replace(/^\//,"").split("/").slice(Y.length).join("/")}let q=Sm(u,{pathname:k});wt(S||q!=null,`No routes matched location "${z.pathname}${z.search}${z.hash}" `),wt(q==null||q[q.length-1].route.element!==void 0||q[q.length-1].route.Component!==void 0||q[q.length-1].route.lazy!==void 0,`Matched leaf route at location "${z.pathname}${z.search}${z.hash}" does not have an element or Component. This means it will render an with a null value by default resulting in an "empty" page.`);let L=xv(q&&q.map(Y=>Object.assign({},Y,{params:Object.assign({},p,Y.params),pathname:rn([E,d.encodeLocation?d.encodeLocation(Y.pathname.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:Y.pathname]),pathnameBase:Y.pathnameBase==="/"?E:rn([E,d.encodeLocation?d.encodeLocation(Y.pathnameBase.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:Y.pathnameBase])})),m,c,r,f);return i&&L?T.createElement(Fa.Provider,{value:{location:{pathname:"/",search:"",hash:"",state:null,key:"default",...z},navigationType:"POP"}},L):L}function vv(){let u=Cv(),i=rv(u)?`${u.status} ${u.statusText}`:u instanceof Error?u.message:JSON.stringify(u),c=u instanceof Error?u.stack:null,r="rgba(200,200,200, 0.5)",f={padding:"0.5rem",backgroundColor:r},d={padding:"2px 4px",backgroundColor:r},m=null;return console.error("Error handled by React Router default ErrorBoundary:",u),m=T.createElement(T.Fragment,null,T.createElement("p",null,"💿 Hey developer 👋"),T.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",T.createElement("code",{style:d},"ErrorBoundary")," or"," ",T.createElement("code",{style:d},"errorElement")," prop on your route.")),T.createElement(T.Fragment,null,T.createElement("h2",null,"Unexpected Application Error!"),T.createElement("h3",{style:{fontStyle:"italic"}},i),c?T.createElement("pre",{style:f},c):null,m)}var gv=T.createElement(vv,null),bv=class extends T.Component{constructor(u){super(u),this.state={location:u.location,revalidation:u.revalidation,error:u.error}}static getDerivedStateFromError(u){return{error:u}}static getDerivedStateFromProps(u,i){return i.location!==u.location||i.revalidation!=="idle"&&u.revalidation==="idle"?{error:u.error,location:u.location,revalidation:u.revalidation}:{error:u.error!==void 0?u.error:i.error,location:i.location,revalidation:u.revalidation||i.revalidation}}componentDidCatch(u,i){this.props.onError?this.props.onError(u,i):console.error("React Router caught the following error during render",u)}render(){return this.state.error!==void 0?T.createElement(fn.Provider,{value:this.props.routeContext},T.createElement(xr.Provider,{value:this.state.error,children:this.props.component})):this.props.children}};function Sv({routeContext:u,match:i,children:c}){let r=T.useContext(Zl);return r&&r.static&&r.staticContext&&(i.route.errorElement||i.route.ErrorBoundary)&&(r.staticContext._deepestRenderedBoundaryId=i.route.id),T.createElement(fn.Provider,{value:u},c)}function xv(u,i=[],c=null,r=null,f=null){if(u==null){if(!c)return null;if(c.errors)u=c.matches;else if(i.length===0&&!c.initialized&&c.matches.length>0)u=c.matches;else return null}let d=u,m=c?.errors;if(m!=null){let E=d.findIndex(S=>S.route.id&&m?.[S.route.id]!==void 0);Oe(E>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(m).join(",")}`),d=d.slice(0,Math.min(d.length,E+1))}let b=!1,p=-1;if(c)for(let E=0;E=0?d=d.slice(0,p+1):d=[d[0]];break}}}let y=c&&r?(E,S)=>{r(E,{location:c.location,params:c.matches?.[0]?.params??{},errorInfo:S})}:void 0;return d.reduceRight((E,S,C)=>{let z,H=!1,k=null,q=null;c&&(z=m&&S.route.id?m[S.route.id]:void 0,k=S.route.errorElement||gv,b&&(p<0&&C===0?(zm("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),H=!0,q=null):p===C&&(H=!0,q=S.route.hydrateFallbackElement||null)));let L=i.concat(d.slice(0,C+1)),Y=()=>{let V;return z?V=k:H?V=q:S.route.Component?V=T.createElement(S.route.Component,null):S.route.element?V=S.route.element:V=E,T.createElement(Sv,{match:S,routeContext:{outlet:E,matches:L,isDataRoute:c!=null},children:V})};return c&&(S.route.ErrorBoundary||S.route.errorElement||C===0)?T.createElement(bv,{location:c.location,revalidation:c.revalidation,component:k,error:z,children:Y(),routeContext:{outlet:null,matches:L,isDataRoute:!0},onError:y}):Y()},null)}function _r(u){return`${u} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function _v(u){let i=T.useContext(Zl);return Oe(i,_r(u)),i}function Ev(u){let i=T.useContext(Ou);return Oe(i,_r(u)),i}function Tv(u){let i=T.useContext(fn);return Oe(i,_r(u)),i}function Er(u){let i=Tv(u),c=i.matches[i.matches.length-1];return Oe(c.route.id,`${u} can only be used on routes that contain a unique "id"`),c.route.id}function Av(){return Er("useRouteId")}function Cv(){let u=T.useContext(xr),i=Ev("useRouteError"),c=Er("useRouteError");return u!==void 0?u:i.errors?.[c]}function Rv(){let{router:u}=_v("useNavigate"),i=Er("useNavigate"),c=T.useRef(!1);return Nm(()=>{c.current=!0}),T.useCallback(async(f,d={})=>{wt(c.current,Rm),c.current&&(typeof f=="number"?u.navigate(f):await u.navigate(f,{fromRouteId:i,...d}))},[u,i])}var am={};function zm(u,i,c){!i&&!am[u]&&(am[u]=!0,wt(!1,c))}T.memo(Nv);function Nv({routes:u,future:i,state:c,unstable_onError:r}){return Om(u,void 0,c,r,i)}function dr(u){Oe(!1,"A is only ever to be used as the child of element, never rendered directly. Please wrap your in a .")}function Ov({basename:u="/",children:i=null,location:c,navigationType:r="POP",navigator:f,static:d=!1}){Oe(!Pa(),"You cannot render a inside another . You should never have more than one in your app.");let m=u.replace(/^\/*/,"/"),b=T.useMemo(()=>({basename:m,navigator:f,static:d,future:{}}),[m,f,d]);typeof c=="string"&&(c=Ql(c));let{pathname:p="/",search:y="",hash:E="",state:S=null,key:C="default"}=c,z=T.useMemo(()=>{let H=on(p,m);return H==null?null:{location:{pathname:H,search:y,hash:E,state:S,key:C},navigationType:r}},[m,p,y,E,S,C,r]);return wt(z!=null,` is not able to match the URL "${p}${y}${E}" because it does not start with the basename, so the won't render anything.`),z==null?null:T.createElement(Yt.Provider,{value:b},T.createElement(Fa.Provider,{children:i,value:z}))}function zv({children:u,location:i}){return yv(mr(u),i)}function mr(u,i=[]){let c=[];return T.Children.forEach(u,(r,f)=>{if(!T.isValidElement(r))return;let d=[...i,f];if(r.type===T.Fragment){c.push.apply(c,mr(r.props.children,d));return}Oe(r.type===dr,`[${typeof r.type=="string"?r.type:r.type.name}] is not a component. All component children of must be a or `),Oe(!r.props.index||!r.props.children,"An index route cannot have child routes.");let m={id:r.props.id||d.join("-"),caseSensitive:r.props.caseSensitive,element:r.props.element,Component:r.props.Component,index:r.props.index,path:r.props.path,middleware:r.props.middleware,loader:r.props.loader,action:r.props.action,hydrateFallbackElement:r.props.hydrateFallbackElement,HydrateFallback:r.props.HydrateFallback,errorElement:r.props.errorElement,ErrorBoundary:r.props.ErrorBoundary,hasErrorBoundary:r.props.hasErrorBoundary===!0||r.props.ErrorBoundary!=null||r.props.errorElement!=null,shouldRevalidate:r.props.shouldRevalidate,handle:r.props.handle,lazy:r.props.lazy};r.props.children&&(m.children=mr(r.props.children,d)),c.push(m)}),c}var xu="get",_u="application/x-www-form-urlencoded";function zu(u){return u!=null&&typeof u.tagName=="string"}function Mv(u){return zu(u)&&u.tagName.toLowerCase()==="button"}function Dv(u){return zu(u)&&u.tagName.toLowerCase()==="form"}function wv(u){return zu(u)&&u.tagName.toLowerCase()==="input"}function jv(u){return!!(u.metaKey||u.altKey||u.ctrlKey||u.shiftKey)}function Uv(u,i){return u.button===0&&(!i||i==="_self")&&!jv(u)}var gu=null;function Bv(){if(gu===null)try{new FormData(document.createElement("form"),0),gu=!1}catch{gu=!0}return gu}var Lv=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function ur(u){return u!=null&&!Lv.has(u)?(wt(!1,`"${u}" is not a valid \`encType\` for \`
\`/\`\` and will default to "${_u}"`),null):u}function Hv(u,i){let c,r,f,d,m;if(Dv(u)){let b=u.getAttribute("action");r=b?on(b,i):null,c=u.getAttribute("method")||xu,f=ur(u.getAttribute("enctype"))||_u,d=new FormData(u)}else if(Mv(u)||wv(u)&&(u.type==="submit"||u.type==="image")){let b=u.form;if(b==null)throw new Error('Cannot submit a
-
+
+ + {percentText} +
); From 938323d93097a459a3dcdec0f02675784e929557 Mon Sep 17 00:00:00 2001 From: legop3 Date: Sat, 15 Nov 2025 22:38:09 -0500 Subject: [PATCH 29/61] guh --- .../assets/{index-BGWfgpXK.js => index-Bj3EYv2U.js} | 2 +- server/public/index.html | 2 +- webui/src/components/VideoTile.jsx | 12 ++++++++++-- 3 files changed, 12 insertions(+), 4 deletions(-) rename server/public/assets/{index-BGWfgpXK.js => index-Bj3EYv2U.js} (89%) diff --git a/server/public/assets/index-BGWfgpXK.js b/server/public/assets/index-Bj3EYv2U.js similarity index 89% rename from server/public/assets/index-BGWfgpXK.js rename to server/public/assets/index-Bj3EYv2U.js index e616ed7f..276b6b69 100644 --- a/server/public/assets/index-BGWfgpXK.js +++ b/server/public/assets/index-Bj3EYv2U.js @@ -8,4 +8,4 @@ Error generating stack: `+l.message+` `+l.stack}}var Hu=Object.prototype.hasOwnProperty,qu=u.unstable_scheduleCallback,Yu=u.unstable_cancelCallback,sp=u.unstable_shouldYield,cp=u.unstable_requestPaint,st=u.unstable_now,rp=u.unstable_getCurrentPriorityLevel,Gr=u.unstable_ImmediatePriority,Vr=u.unstable_UserBlockingPriority,ti=u.unstable_NormalPriority,op=u.unstable_LowPriority,Qr=u.unstable_IdlePriority,fp=u.log,hp=u.unstable_setDisableYieldValue,$l=null,ct=null;function dn(e){if(typeof fp=="function"&&hp(e),ct&&typeof ct.setStrictMode=="function")try{ct.setStrictMode($l,e)}catch{}}var rt=Math.clz32?Math.clz32:pp,dp=Math.log,mp=Math.LN2;function pp(e){return e>>>=0,e===0?32:31-(dp(e)/mp|0)|0}var ni=256,li=262144,ai=4194304;function Yn(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function ii(e,t,n){var l=e.pendingLanes;if(l===0)return 0;var a=0,s=e.suspendedLanes,o=e.pingedLanes;e=e.warmLanes;var h=l&134217727;return h!==0?(l=h&~s,l!==0?a=Yn(l):(o&=h,o!==0?a=Yn(o):n||(n=h&~e,n!==0&&(a=Yn(n))))):(h=l&~s,h!==0?a=Yn(h):o!==0?a=Yn(o):n||(n=l&~e,n!==0&&(a=Yn(n)))),a===0?0:t!==0&&t!==a&&(t&s)===0&&(s=a&-a,n=t&-t,s>=n||s===32&&(n&4194048)!==0)?t:a}function Wl(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function yp(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Zr(){var e=ai;return ai<<=1,(ai&62914560)===0&&(ai=4194304),e}function ku(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function Fl(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function vp(e,t,n,l,a,s){var o=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var h=e.entanglements,g=e.expirationTimes,N=e.hiddenUpdates;for(n=o&~n;0"u")return null;try{return e.activeElement||e.body}catch{return e.body}}var Ep=/[\n"\\]/g;function gt(e){return e.replace(Ep,function(t){return"\\"+t.charCodeAt(0).toString(16)+" "})}function Ku(e,t,n,l,a,s,o,h){e.name="",o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"?e.type=o:e.removeAttribute("type"),t!=null?o==="number"?(t===0&&e.value===""||e.value!=t)&&(e.value=""+vt(t)):e.value!==""+vt(t)&&(e.value=""+vt(t)):o!=="submit"&&o!=="reset"||e.removeAttribute("value"),t!=null?Ju(e,o,vt(t)):n!=null?Ju(e,o,vt(n)):l!=null&&e.removeAttribute("value"),a==null&&s!=null&&(e.defaultChecked=!!s),a!=null&&(e.checked=a&&typeof a!="function"&&typeof a!="symbol"),h!=null&&typeof h!="function"&&typeof h!="symbol"&&typeof h!="boolean"?e.name=""+vt(h):e.removeAttribute("name")}function io(e,t,n,l,a,s,o,h){if(s!=null&&typeof s!="function"&&typeof s!="symbol"&&typeof s!="boolean"&&(e.type=s),t!=null||n!=null){if(!(s!=="submit"&&s!=="reset"||t!=null)){Zu(e);return}n=n!=null?""+vt(n):"",t=t!=null?""+vt(t):n,h||t===e.value||(e.value=t),e.defaultValue=t}l=l??a,l=typeof l!="function"&&typeof l!="symbol"&&!!l,e.checked=h?e.checked:!!l,e.defaultChecked=!!l,o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"&&(e.name=o),Zu(e)}function Ju(e,t,n){t==="number"&&ci(e.ownerDocument)===e||e.defaultValue===""+n||(e.defaultValue=""+n)}function fl(e,t,n,l){if(e=e.options,t){t={};for(var a=0;a"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Iu=!1;if(Qt)try{var ta={};Object.defineProperty(ta,"passive",{get:function(){Iu=!0}}),window.addEventListener("test",ta,ta),window.removeEventListener("test",ta,ta)}catch{Iu=!1}var pn=null,es=null,oi=null;function ho(){if(oi)return oi;var e,t=es,n=t.length,l,a="value"in pn?pn.value:pn.textContent,s=a.length;for(e=0;e=aa),bo=" ",So=!1;function xo(e,t){switch(e){case"keyup":return Fp.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function _o(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var pl=!1;function Ip(e,t){switch(e){case"compositionend":return _o(t);case"keypress":return t.which!==32?null:(So=!0,bo);case"textInput":return e=t.data,e===bo&&So?null:e;default:return null}}function ey(e,t){if(pl)return e==="compositionend"||!is&&xo(e,t)?(e=ho(),oi=es=pn=null,pl=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=l}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=zo(n)}}function Do(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Do(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function wo(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=ci(e.document);t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=ci(e.document)}return t}function cs(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}var cy=Qt&&"documentMode"in document&&11>=document.documentMode,yl=null,rs=null,ca=null,os=!1;function jo(e,t,n){var l=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;os||yl==null||yl!==ci(l)||(l=yl,"selectionStart"in l&&cs(l)?l={start:l.selectionStart,end:l.selectionEnd}:(l=(l.ownerDocument&&l.ownerDocument.defaultView||window).getSelection(),l={anchorNode:l.anchorNode,anchorOffset:l.anchorOffset,focusNode:l.focusNode,focusOffset:l.focusOffset}),ca&&sa(ca,l)||(ca=l,l=lu(rs,"onSelect"),0>=o,a-=o,jt=1<<32-rt(t)+a|n<te?(se=K,K=null):se=K.sibling;var fe=O(A,K,R[te],j);if(fe===null){K===null&&(K=se);break}e&&K&&fe.alternate===null&&t(A,K),x=s(fe,x,te),oe===null?J=fe:oe.sibling=fe,oe=fe,K=se}if(te===R.length)return n(A,K),ce&&Kt(A,te),J;if(K===null){for(;tete?(se=K,K=null):se=K.sibling;var Ln=O(A,K,fe.value,j);if(Ln===null){K===null&&(K=se);break}e&&K&&Ln.alternate===null&&t(A,K),x=s(Ln,x,te),oe===null?J=Ln:oe.sibling=Ln,oe=Ln,K=se}if(fe.done)return n(A,K),ce&&Kt(A,te),J;if(K===null){for(;!fe.done;te++,fe=R.next())fe=U(A,fe.value,j),fe!==null&&(x=s(fe,x,te),oe===null?J=fe:oe.sibling=fe,oe=fe);return ce&&Kt(A,te),J}for(K=l(K);!fe.done;te++,fe=R.next())fe=M(K,A,te,fe.value,j),fe!==null&&(e&&fe.alternate!==null&&K.delete(fe.key===null?te:fe.key),x=s(fe,x,te),oe===null?J=fe:oe.sibling=fe,oe=fe);return e&&K.forEach(function(N0){return t(A,N0)}),ce&&Kt(A,te),J}function xe(A,x,R,j){if(typeof R=="object"&&R!==null&&R.type===k&&R.key===null&&(R=R.props.children),typeof R=="object"&&R!==null){switch(R.$$typeof){case z:e:{for(var J=R.key;x!==null;){if(x.key===J){if(J=R.type,J===k){if(x.tag===7){n(A,x.sibling),j=a(x,R.props.children),j.return=A,A=j;break e}}else if(x.elementType===J||typeof J=="object"&&J!==null&&J.$$typeof===_e&&Fn(J)===x.type){n(A,x.sibling),j=a(x,R.props),ma(j,R),j.return=A,A=j;break e}n(A,x);break}else t(A,x);x=x.sibling}R.type===k?(j=Zn(R.props.children,A.mode,j,R.key),j.return=A,A=j):(j=Si(R.type,R.key,R.props,null,A.mode,j),ma(j,R),j.return=A,A=j)}return o(A);case H:e:{for(J=R.key;x!==null;){if(x.key===J)if(x.tag===4&&x.stateNode.containerInfo===R.containerInfo&&x.stateNode.implementation===R.implementation){n(A,x.sibling),j=a(x,R.children||[]),j.return=A,A=j;break e}else{n(A,x);break}else t(A,x);x=x.sibling}j=vs(R,A.mode,j),j.return=A,A=j}return o(A);case _e:return R=Fn(R),xe(A,x,R,j)}if(Nt(R))return Q(A,x,R,j);if(ke(R)){if(J=ke(R),typeof J!="function")throw Error(r(150));return R=J.call(R),$(A,x,R,j)}if(typeof R.then=="function")return xe(A,x,Ri(R),j);if(R.$$typeof===V)return xe(A,x,Ei(A,R),j);Ni(A,R)}return typeof R=="string"&&R!==""||typeof R=="number"||typeof R=="bigint"?(R=""+R,x!==null&&x.tag===6?(n(A,x.sibling),j=a(x,R),j.return=A,A=j):(n(A,x),j=ys(R,A.mode,j),j.return=A,A=j),o(A)):n(A,x)}return function(A,x,R,j){try{da=0;var J=xe(A,x,R,j);return Rl=null,J}catch(K){if(K===Cl||K===Ai)throw K;var oe=ft(29,K,null,A.mode);return oe.lanes=j,oe.return=A,oe}finally{}}}var In=lf(!0),af=lf(!1),Sn=!1;function Os(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function zs(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function xn(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function _n(e,t,n){var l=e.updateQueue;if(l===null)return null;if(l=l.shared,(de&2)!==0){var a=l.pending;return a===null?t.next=t:(t.next=a.next,a.next=t),l.pending=t,t=bi(e),ko(e,null,n),t}return gi(e,l,t,n),bi(e)}function pa(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194048)!==0)){var l=t.lanes;l&=e.pendingLanes,n|=l,t.lanes=n,Jr(e,n)}}function Ms(e,t){var n=e.updateQueue,l=e.alternate;if(l!==null&&(l=l.updateQueue,n===l)){var a=null,s=null;if(n=n.firstBaseUpdate,n!==null){do{var o={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};s===null?a=s=o:s=s.next=o,n=n.next}while(n!==null);s===null?a=s=t:s=s.next=t}else a=s=t;n={baseState:l.baseState,firstBaseUpdate:a,lastBaseUpdate:s,shared:l.shared,callbacks:l.callbacks},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}var Ds=!1;function ya(){if(Ds){var e=Al;if(e!==null)throw e}}function va(e,t,n,l){Ds=!1;var a=e.updateQueue;Sn=!1;var s=a.firstBaseUpdate,o=a.lastBaseUpdate,h=a.shared.pending;if(h!==null){a.shared.pending=null;var g=h,N=g.next;g.next=null,o===null?s=N:o.next=N,o=g;var D=e.alternate;D!==null&&(D=D.updateQueue,h=D.lastBaseUpdate,h!==o&&(h===null?D.firstBaseUpdate=N:h.next=N,D.lastBaseUpdate=g))}if(s!==null){var U=a.baseState;o=0,D=N=g=null,h=s;do{var O=h.lane&-536870913,M=O!==h.lane;if(M?(ue&O)===O:(l&O)===O){O!==0&&O===Tl&&(Ds=!0),D!==null&&(D=D.next={lane:0,tag:h.tag,payload:h.payload,callback:null,next:null});e:{var Q=e,$=h;O=t;var xe=n;switch($.tag){case 1:if(Q=$.payload,typeof Q=="function"){U=Q.call(xe,U,O);break e}U=Q;break e;case 3:Q.flags=Q.flags&-65537|128;case 0:if(Q=$.payload,O=typeof Q=="function"?Q.call(xe,U,O):Q,O==null)break e;U=S({},U,O);break e;case 2:Sn=!0}}O=h.callback,O!==null&&(e.flags|=64,M&&(e.flags|=8192),M=a.callbacks,M===null?a.callbacks=[O]:M.push(O))}else M={lane:O,tag:h.tag,payload:h.payload,callback:h.callback,next:null},D===null?(N=D=M,g=U):D=D.next=M,o|=O;if(h=h.next,h===null){if(h=a.shared.pending,h===null)break;M=h,h=M.next,M.next=null,a.lastBaseUpdate=M,a.shared.pending=null}}while(!0);D===null&&(g=U),a.baseState=g,a.firstBaseUpdate=N,a.lastBaseUpdate=D,s===null&&(a.shared.lanes=0),Rn|=o,e.lanes=o,e.memoizedState=U}}function uf(e,t){if(typeof e!="function")throw Error(r(191,e));e.call(t)}function sf(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;es?s:8;var o=w.T,h={};w.T=h,Fs(e,!1,t,n);try{var g=a(),N=w.S;if(N!==null&&N(h,g),g!==null&&typeof g=="object"&&typeof g.then=="function"){var D=vy(g,l);Sa(e,t,D,yt(e))}else Sa(e,t,l,yt(e))}catch(U){Sa(e,t,{then:function(){},status:"rejected",reason:U},yt())}finally{X.p=s,o!==null&&h.types!==null&&(o.types=h.types),w.T=o}}function Ey(){}function $s(e,t,n,l){if(e.tag!==5)throw Error(r(476));var a=qf(e).queue;Hf(e,a,t,W,n===null?Ey:function(){return Yf(e),n(l)})}function qf(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:W,baseState:W,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Ft,lastRenderedState:W},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Ft,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function Yf(e){var t=qf(e);t.next===null&&(t=e.alternate.memoizedState),Sa(e,t.next.queue,{},yt())}function Ws(){return Je(La)}function kf(){return je().memoizedState}function Xf(){return je().memoizedState}function Ty(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var n=yt();e=xn(n);var l=_n(t,e,n);l!==null&&(ut(l,t,n),pa(l,t,n)),t={cache:As()},e.payload=t;return}t=t.return}}function Ay(e,t,n){var l=yt();n={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},Hi(e)?Vf(t,n):(n=ms(e,t,n,l),n!==null&&(ut(n,e,l),Qf(n,t,l)))}function Gf(e,t,n){var l=yt();Sa(e,t,n,l)}function Sa(e,t,n,l){var a={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(Hi(e))Vf(t,a);else{var s=e.alternate;if(e.lanes===0&&(s===null||s.lanes===0)&&(s=t.lastRenderedReducer,s!==null))try{var o=t.lastRenderedState,h=s(o,n);if(a.hasEagerState=!0,a.eagerState=h,ot(h,o))return gi(e,t,a,0),Te===null&&vi(),!1}catch{}finally{}if(n=ms(e,t,a,l),n!==null)return ut(n,e,l),Qf(n,t,l),!0}return!1}function Fs(e,t,n,l){if(l={lane:2,revertLane:Oc(),gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},Hi(e)){if(t)throw Error(r(479))}else t=ms(e,n,l,2),t!==null&&ut(t,e,2)}function Hi(e){var t=e.alternate;return e===ee||t!==null&&t===ee}function Vf(e,t){Ol=Mi=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Qf(e,t,n){if((n&4194048)!==0){var l=t.lanes;l&=e.pendingLanes,n|=l,t.lanes=n,Jr(e,n)}}var xa={readContext:Je,use:ji,useCallback:ze,useContext:ze,useEffect:ze,useImperativeHandle:ze,useLayoutEffect:ze,useInsertionEffect:ze,useMemo:ze,useReducer:ze,useRef:ze,useState:ze,useDebugValue:ze,useDeferredValue:ze,useTransition:ze,useSyncExternalStore:ze,useId:ze,useHostTransitionStatus:ze,useFormState:ze,useActionState:ze,useOptimistic:ze,useMemoCache:ze,useCacheRefresh:ze};xa.useEffectEvent=ze;var Zf={readContext:Je,use:ji,useCallback:function(e,t){return Ie().memoizedState=[e,t===void 0?null:t],e},useContext:Je,useEffect:Of,useImperativeHandle:function(e,t,n){n=n!=null?n.concat([e]):null,Bi(4194308,4,wf.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Bi(4194308,4,e,t)},useInsertionEffect:function(e,t){Bi(4,2,e,t)},useMemo:function(e,t){var n=Ie();t=t===void 0?null:t;var l=e();if(el){dn(!0);try{e()}finally{dn(!1)}}return n.memoizedState=[l,t],l},useReducer:function(e,t,n){var l=Ie();if(n!==void 0){var a=n(t);if(el){dn(!0);try{n(t)}finally{dn(!1)}}}else a=t;return l.memoizedState=l.baseState=a,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:a},l.queue=e,e=e.dispatch=Ay.bind(null,ee,e),[l.memoizedState,e]},useRef:function(e){var t=Ie();return e={current:e},t.memoizedState=e},useState:function(e){e=Vs(e);var t=e.queue,n=Gf.bind(null,ee,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:Ks,useDeferredValue:function(e,t){var n=Ie();return Js(n,e,t)},useTransition:function(){var e=Vs(!1);return e=Hf.bind(null,ee,e.queue,!0,!1),Ie().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var l=ee,a=Ie();if(ce){if(n===void 0)throw Error(r(407));n=n()}else{if(n=t(),Te===null)throw Error(r(349));(ue&127)!==0||df(l,t,n)}a.memoizedState=n;var s={value:n,getSnapshot:t};return a.queue=s,Of(pf.bind(null,l,s,e),[e]),l.flags|=2048,Ml(9,{destroy:void 0},mf.bind(null,l,s,n,t),null),n},useId:function(){var e=Ie(),t=Te.identifierPrefix;if(ce){var n=Ut,l=jt;n=(l&~(1<<32-rt(l)-1)).toString(32)+n,t="_"+t+"R_"+n,n=Di++,0<\/script>",s=s.removeChild(s.firstChild);break;case"select":s=typeof l.is=="string"?o.createElement("select",{is:l.is}):o.createElement("select"),l.multiple?s.multiple=!0:l.size&&(s.size=l.size);break;default:s=typeof l.is=="string"?o.createElement(a,{is:l.is}):o.createElement(a)}}s[Ze]=t,s[et]=l;e:for(o=t.child;o!==null;){if(o.tag===5||o.tag===6)s.appendChild(o.stateNode);else if(o.tag!==4&&o.tag!==27&&o.child!==null){o.child.return=o,o=o.child;continue}if(o===t)break e;for(;o.sibling===null;){if(o.return===null||o.return===t)break e;o=o.return}o.sibling.return=o.return,o=o.sibling}t.stateNode=s;e:switch(We(s,a,l),a){case"button":case"input":case"select":case"textarea":l=!!l.autoFocus;break e;case"img":l=!0;break e;default:l=!1}l&&It(t)}}return Re(t),fc(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==l&&It(t);else{if(typeof l!="string"&&t.stateNode===null)throw Error(r(166));if(e=le.current,_l(t)){if(e=t.stateNode,n=t.memoizedProps,l=null,a=Ke,a!==null)switch(a.tag){case 27:case 5:l=a.memoizedProps}e[Ze]=t,e=!!(e.nodeValue===n||l!==null&&l.suppressHydrationWarning===!0||fd(e.nodeValue,n)),e||gn(t,!0)}else e=au(e).createTextNode(l),e[Ze]=t,t.stateNode=e}return Re(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(l=_l(t),n!==null){if(e===null){if(!l)throw Error(r(318));if(e=t.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(r(557));e[Ze]=t}else Kn(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Re(t),e=!1}else n=xs(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(dt(t),t):(dt(t),null);if((t.flags&128)!==0)throw Error(r(558))}return Re(t),null;case 13:if(l=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(a=_l(t),l!==null&&l.dehydrated!==null){if(e===null){if(!a)throw Error(r(318));if(a=t.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(r(317));a[Ze]=t}else Kn(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Re(t),a=!1}else a=xs(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=a),a=!0;if(!a)return t.flags&256?(dt(t),t):(dt(t),null)}return dt(t),(t.flags&128)!==0?(t.lanes=n,t):(n=l!==null,e=e!==null&&e.memoizedState!==null,n&&(l=t.child,a=null,l.alternate!==null&&l.alternate.memoizedState!==null&&l.alternate.memoizedState.cachePool!==null&&(a=l.alternate.memoizedState.cachePool.pool),s=null,l.memoizedState!==null&&l.memoizedState.cachePool!==null&&(s=l.memoizedState.cachePool.pool),s!==a&&(l.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),Gi(t,t.updateQueue),Re(t),null);case 4:return De(),e===null&&wc(t.stateNode.containerInfo),Re(t),null;case 10:return $t(t.type),Re(t),null;case 19:if(B(we),l=t.memoizedState,l===null)return Re(t),null;if(a=(t.flags&128)!==0,s=l.rendering,s===null)if(a)Ea(l,!1);else{if(Me!==0||e!==null&&(e.flags&128)!==0)for(e=t.child;e!==null;){if(s=zi(e),s!==null){for(t.flags|=128,Ea(l,!1),e=s.updateQueue,t.updateQueue=e,Gi(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)Xo(n,e),n=n.sibling;return G(we,we.current&1|2),ce&&Kt(t,l.treeForkCount),t.child}e=e.sibling}l.tail!==null&&st()>Ji&&(t.flags|=128,a=!0,Ea(l,!1),t.lanes=4194304)}else{if(!a)if(e=zi(s),e!==null){if(t.flags|=128,a=!0,e=e.updateQueue,t.updateQueue=e,Gi(t,e),Ea(l,!0),l.tail===null&&l.tailMode==="hidden"&&!s.alternate&&!ce)return Re(t),null}else 2*st()-l.renderingStartTime>Ji&&n!==536870912&&(t.flags|=128,a=!0,Ea(l,!1),t.lanes=4194304);l.isBackwards?(s.sibling=t.child,t.child=s):(e=l.last,e!==null?e.sibling=s:t.child=s,l.last=s)}return l.tail!==null?(e=l.tail,l.rendering=e,l.tail=e.sibling,l.renderingStartTime=st(),e.sibling=null,n=we.current,G(we,a?n&1|2:n&1),ce&&Kt(t,l.treeForkCount),e):(Re(t),null);case 22:case 23:return dt(t),js(),l=t.memoizedState!==null,e!==null?e.memoizedState!==null!==l&&(t.flags|=8192):l&&(t.flags|=8192),l?(n&536870912)!==0&&(t.flags&128)===0&&(Re(t),t.subtreeFlags&6&&(t.flags|=8192)):Re(t),n=t.updateQueue,n!==null&&Gi(t,n.retryQueue),n=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),l=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(l=t.memoizedState.cachePool.pool),l!==n&&(t.flags|=2048),e!==null&&B(Wn),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),$t(Be),Re(t),null;case 25:return null;case 30:return null}throw Error(r(156,t.tag))}function zy(e,t){switch(bs(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return $t(Be),De(),e=t.flags,(e&65536)!==0&&(e&128)===0?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return ei(t),null;case 31:if(t.memoizedState!==null){if(dt(t),t.alternate===null)throw Error(r(340));Kn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(dt(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(r(340));Kn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return B(we),null;case 4:return De(),null;case 10:return $t(t.type),null;case 22:case 23:return dt(t),js(),e!==null&&B(Wn),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return $t(Be),null;case 25:return null;default:return null}}function yh(e,t){switch(bs(t),t.tag){case 3:$t(Be),De();break;case 26:case 27:case 5:ei(t);break;case 4:De();break;case 31:t.memoizedState!==null&&dt(t);break;case 13:dt(t);break;case 19:B(we);break;case 10:$t(t.type);break;case 22:case 23:dt(t),js(),e!==null&&B(Wn);break;case 24:$t(Be)}}function Ta(e,t){try{var n=t.updateQueue,l=n!==null?n.lastEffect:null;if(l!==null){var a=l.next;n=a;do{if((n.tag&e)===e){l=void 0;var s=n.create,o=n.inst;l=s(),o.destroy=l}n=n.next}while(n!==a)}}catch(h){ye(t,t.return,h)}}function An(e,t,n){try{var l=t.updateQueue,a=l!==null?l.lastEffect:null;if(a!==null){var s=a.next;l=s;do{if((l.tag&e)===e){var o=l.inst,h=o.destroy;if(h!==void 0){o.destroy=void 0,a=t;var g=n,N=h;try{N()}catch(D){ye(a,g,D)}}}l=l.next}while(l!==s)}}catch(D){ye(t,t.return,D)}}function vh(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{sf(t,n)}catch(l){ye(e,e.return,l)}}}function gh(e,t,n){n.props=tl(e.type,e.memoizedProps),n.state=e.memoizedState;try{n.componentWillUnmount()}catch(l){ye(e,t,l)}}function Aa(e,t){try{var n=e.ref;if(n!==null){switch(e.tag){case 26:case 27:case 5:var l=e.stateNode;break;case 30:l=e.stateNode;break;default:l=e.stateNode}typeof n=="function"?e.refCleanup=n(l):n.current=l}}catch(a){ye(e,t,a)}}function Bt(e,t){var n=e.ref,l=e.refCleanup;if(n!==null)if(typeof l=="function")try{l()}catch(a){ye(e,t,a)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n=="function")try{n(null)}catch(a){ye(e,t,a)}else n.current=null}function bh(e){var t=e.type,n=e.memoizedProps,l=e.stateNode;try{e:switch(t){case"button":case"input":case"select":case"textarea":n.autoFocus&&l.focus();break e;case"img":n.src?l.src=n.src:n.srcSet&&(l.srcset=n.srcSet)}}catch(a){ye(e,e.return,a)}}function hc(e,t,n){try{var l=e.stateNode;Py(l,e.type,n,t),l[et]=t}catch(a){ye(e,e.return,a)}}function Sh(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&Dn(e.type)||e.tag===4}function dc(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||Sh(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&&Dn(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 mc(e,t,n){var l=e.tag;if(l===5||l===6)e=e.stateNode,t?(n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n).insertBefore(e,t):(t=n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n,t.appendChild(e),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=Vt));else if(l!==4&&(l===27&&Dn(e.type)&&(n=e.stateNode,t=null),e=e.child,e!==null))for(mc(e,t,n),e=e.sibling;e!==null;)mc(e,t,n),e=e.sibling}function Vi(e,t,n){var l=e.tag;if(l===5||l===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(l!==4&&(l===27&&Dn(e.type)&&(n=e.stateNode),e=e.child,e!==null))for(Vi(e,t,n),e=e.sibling;e!==null;)Vi(e,t,n),e=e.sibling}function xh(e){var t=e.stateNode,n=e.memoizedProps;try{for(var l=e.type,a=t.attributes;a.length;)t.removeAttributeNode(a[0]);We(t,l,n),t[Ze]=e,t[et]=n}catch(s){ye(e,e.return,s)}}var en=!1,qe=!1,pc=!1,_h=typeof WeakSet=="function"?WeakSet:Set,Qe=null;function My(e,t){if(e=e.containerInfo,Bc=fu,e=wo(e),cs(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var l=n.getSelection&&n.getSelection();if(l&&l.rangeCount!==0){n=l.anchorNode;var a=l.anchorOffset,s=l.focusNode;l=l.focusOffset;try{n.nodeType,s.nodeType}catch{n=null;break e}var o=0,h=-1,g=-1,N=0,D=0,U=e,O=null;t:for(;;){for(var M;U!==n||a!==0&&U.nodeType!==3||(h=o+a),U!==s||l!==0&&U.nodeType!==3||(g=o+l),U.nodeType===3&&(o+=U.nodeValue.length),(M=U.firstChild)!==null;)O=U,U=M;for(;;){if(U===e)break t;if(O===n&&++N===a&&(h=o),O===s&&++D===l&&(g=o),(M=U.nextSibling)!==null)break;U=O,O=U.parentNode}U=M}n=h===-1||g===-1?null:{start:h,end:g}}else n=null}n=n||{start:0,end:0}}else n=null;for(Lc={focusedElem:e,selectionRange:n},fu=!1,Qe=t;Qe!==null;)if(t=Qe,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,Qe=e;else for(;Qe!==null;){switch(t=Qe,s=t.alternate,e=t.flags,t.tag){case 0:if((e&4)!==0&&(e=t.updateQueue,e=e!==null?e.events:null,e!==null))for(n=0;n title"))),We(s,l,n),s[Ze]=e,Ve(s),l=s;break e;case"link":var o=Nd("link","href",a).get(l+(n.href||""));if(o){for(var h=0;hxe&&(o=xe,xe=$,$=o);var A=Mo(h,$),x=Mo(h,xe);if(A&&x&&(M.rangeCount!==1||M.anchorNode!==A.node||M.anchorOffset!==A.offset||M.focusNode!==x.node||M.focusOffset!==x.offset)){var R=U.createRange();R.setStart(A.node,A.offset),M.removeAllRanges(),$>xe?(M.addRange(R),M.extend(x.node,x.offset)):(R.setEnd(x.node,x.offset),M.addRange(R))}}}}for(U=[],M=h;M=M.parentNode;)M.nodeType===1&&U.push({element:M,left:M.scrollLeft,top:M.scrollTop});for(typeof h.focus=="function"&&h.focus(),h=0;hn?32:n,w.T=null,n=_c,_c=null;var s=On,o=un;if(Xe=0,Bl=On=null,un=0,(de&6)!==0)throw Error(r(331));var h=de;if(de|=4,wh(s.current),zh(s,s.current,o,n),de=h,Ma(0,!1),ct&&typeof ct.onPostCommitFiberRoot=="function")try{ct.onPostCommitFiberRoot($l,s)}catch{}return!0}finally{X.p=a,w.T=l,Fh(e,t)}}function Ih(e,t,n){t=St(n,t),t=tc(e.stateNode,t,2),e=_n(e,t,2),e!==null&&(Fl(e,2),Lt(e))}function ye(e,t,n){if(e.tag===3)Ih(e,e,n);else for(;t!==null;){if(t.tag===3){Ih(t,e,n);break}else if(t.tag===1){var l=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof l.componentDidCatch=="function"&&(Nn===null||!Nn.has(l))){e=St(n,e),n=eh(2),l=_n(t,n,2),l!==null&&(th(n,l,t,e),Fl(l,2),Lt(l));break}}t=t.return}}function Cc(e,t,n){var l=e.pingCache;if(l===null){l=e.pingCache=new jy;var a=new Set;l.set(t,a)}else a=l.get(t),a===void 0&&(a=new Set,l.set(t,a));a.has(n)||(gc=!0,a.add(n),e=qy.bind(null,e,t,n),t.then(e,e))}function qy(e,t,n){var l=e.pingCache;l!==null&&l.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,Te===e&&(ue&n)===n&&(Me===4||Me===3&&(ue&62914560)===ue&&300>st()-Ki?(de&2)===0&&Ll(e,0):bc|=n,Ul===ue&&(Ul=0)),Lt(e)}function ed(e,t){t===0&&(t=Zr()),e=Qn(e,t),e!==null&&(Fl(e,t),Lt(e))}function Yy(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),ed(e,n)}function ky(e,t){var n=0;switch(e.tag){case 31:case 13:var l=e.stateNode,a=e.memoizedState;a!==null&&(n=a.retryLane);break;case 19:l=e.stateNode;break;case 22:l=e.stateNode._retryCache;break;default:throw Error(r(314))}l!==null&&l.delete(t),ed(e,n)}function Xy(e,t){return qu(e,t)}var eu=null,ql=null,Rc=!1,tu=!1,Nc=!1,Mn=0;function Lt(e){e!==ql&&e.next===null&&(ql===null?eu=ql=e:ql=ql.next=e),tu=!0,Rc||(Rc=!0,Vy())}function Ma(e,t){if(!Nc&&tu){Nc=!0;do for(var n=!1,l=eu;l!==null;){if(e!==0){var a=l.pendingLanes;if(a===0)var s=0;else{var o=l.suspendedLanes,h=l.pingedLanes;s=(1<<31-rt(42|e)+1)-1,s&=a&~(o&~h),s=s&201326741?s&201326741|1:s?s|2:0}s!==0&&(n=!0,ad(l,s))}else s=ue,s=ii(l,l===Te?s:0,l.cancelPendingCommit!==null||l.timeoutHandle!==-1),(s&3)===0||Wl(l,s)||(n=!0,ad(l,s));l=l.next}while(n);Nc=!1}}function Gy(){td()}function td(){tu=Rc=!1;var e=0;Mn!==0&&e0()&&(e=Mn);for(var t=st(),n=null,l=eu;l!==null;){var a=l.next,s=nd(l,t);s===0?(l.next=null,n===null?eu=a:n.next=a,a===null&&(ql=n)):(n=l,(e!==0||(s&3)!==0)&&(tu=!0)),l=a}Xe!==0&&Xe!==5||Ma(e),Mn!==0&&(Mn=0)}function nd(e,t){for(var n=e.suspendedLanes,l=e.pingedLanes,a=e.expirationTimes,s=e.pendingLanes&-62914561;0h)break;var D=g.transferSize,U=g.initiatorType;D&&hd(U)&&(g=g.responseEnd,o+=D*(g"u"?null:document;function Td(e,t,n){var l=Yl;if(l&&typeof t=="string"&&t){var a=gt(t);a='link[rel="'+e+'"][href="'+a+'"]',typeof n=="string"&&(a+='[crossorigin="'+n+'"]'),Ed.has(a)||(Ed.add(a),e={rel:e,crossOrigin:n,href:t},l.querySelector(a)===null&&(t=l.createElement("link"),We(t,"link",e),Ve(t),l.head.appendChild(t)))}}function r0(e){sn.D(e),Td("dns-prefetch",e,null)}function o0(e,t){sn.C(e,t),Td("preconnect",e,t)}function f0(e,t,n){sn.L(e,t,n);var l=Yl;if(l&&e&&t){var a='link[rel="preload"][as="'+gt(t)+'"]';t==="image"&&n&&n.imageSrcSet?(a+='[imagesrcset="'+gt(n.imageSrcSet)+'"]',typeof n.imageSizes=="string"&&(a+='[imagesizes="'+gt(n.imageSizes)+'"]')):a+='[href="'+gt(e)+'"]';var s=a;switch(t){case"style":s=kl(e);break;case"script":s=Xl(e)}Ct.has(s)||(e=S({rel:"preload",href:t==="image"&&n&&n.imageSrcSet?void 0:e,as:t},n),Ct.set(s,e),l.querySelector(a)!==null||t==="style"&&l.querySelector(Ua(s))||t==="script"&&l.querySelector(Ba(s))||(t=l.createElement("link"),We(t,"link",e),Ve(t),l.head.appendChild(t)))}}function h0(e,t){sn.m(e,t);var n=Yl;if(n&&e){var l=t&&typeof t.as=="string"?t.as:"script",a='link[rel="modulepreload"][as="'+gt(l)+'"][href="'+gt(e)+'"]',s=a;switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":s=Xl(e)}if(!Ct.has(s)&&(e=S({rel:"modulepreload",href:e},t),Ct.set(s,e),n.querySelector(a)===null)){switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(n.querySelector(Ba(s)))return}l=n.createElement("link"),We(l,"link",e),Ve(l),n.head.appendChild(l)}}}function d0(e,t,n){sn.S(e,t,n);var l=Yl;if(l&&e){var a=rl(l).hoistableStyles,s=kl(e);t=t||"default";var o=a.get(s);if(!o){var h={loading:0,preload:null};if(o=l.querySelector(Ua(s)))h.loading=5;else{e=S({rel:"stylesheet",href:e,"data-precedence":t},n),(n=Ct.get(s))&&Vc(e,n);var g=o=l.createElement("link");Ve(g),We(g,"link",e),g._p=new Promise(function(N,D){g.onload=N,g.onerror=D}),g.addEventListener("load",function(){h.loading|=1}),g.addEventListener("error",function(){h.loading|=2}),h.loading|=4,uu(o,t,l)}o={type:"stylesheet",instance:o,count:1,state:h},a.set(s,o)}}}function m0(e,t){sn.X(e,t);var n=Yl;if(n&&e){var l=rl(n).hoistableScripts,a=Xl(e),s=l.get(a);s||(s=n.querySelector(Ba(a)),s||(e=S({src:e,async:!0},t),(t=Ct.get(a))&&Qc(e,t),s=n.createElement("script"),Ve(s),We(s,"link",e),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function p0(e,t){sn.M(e,t);var n=Yl;if(n&&e){var l=rl(n).hoistableScripts,a=Xl(e),s=l.get(a);s||(s=n.querySelector(Ba(a)),s||(e=S({src:e,async:!0,type:"module"},t),(t=Ct.get(a))&&Qc(e,t),s=n.createElement("script"),Ve(s),We(s,"link",e),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function Ad(e,t,n,l){var a=(a=le.current)?iu(a):null;if(!a)throw Error(r(446));switch(e){case"meta":case"title":return null;case"style":return typeof n.precedence=="string"&&typeof n.href=="string"?(t=kl(n.href),n=rl(a).hoistableStyles,l=n.get(t),l||(l={type:"style",instance:null,count:0,state:null},n.set(t,l)),l):{type:"void",instance:null,count:0,state:null};case"link":if(n.rel==="stylesheet"&&typeof n.href=="string"&&typeof n.precedence=="string"){e=kl(n.href);var s=rl(a).hoistableStyles,o=s.get(e);if(o||(a=a.ownerDocument||a,o={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},s.set(e,o),(s=a.querySelector(Ua(e)))&&!s._p&&(o.instance=s,o.state.loading=5),Ct.has(e)||(n={rel:"preload",as:"style",href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},Ct.set(e,n),s||y0(a,e,n,o.state))),t&&l===null)throw Error(r(528,""));return o}if(t&&l!==null)throw Error(r(529,""));return null;case"script":return t=n.async,n=n.src,typeof n=="string"&&t&&typeof t!="function"&&typeof t!="symbol"?(t=Xl(n),n=rl(a).hoistableScripts,l=n.get(t),l||(l={type:"script",instance:null,count:0,state:null},n.set(t,l)),l):{type:"void",instance:null,count:0,state:null};default:throw Error(r(444,e))}}function kl(e){return'href="'+gt(e)+'"'}function Ua(e){return'link[rel="stylesheet"]['+e+"]"}function Cd(e){return S({},e,{"data-precedence":e.precedence,precedence:null})}function y0(e,t,n,l){e.querySelector('link[rel="preload"][as="style"]['+t+"]")?l.loading=1:(t=e.createElement("link"),l.preload=t,t.addEventListener("load",function(){return l.loading|=1}),t.addEventListener("error",function(){return l.loading|=2}),We(t,"link",n),Ve(t),e.head.appendChild(t))}function Xl(e){return'[src="'+gt(e)+'"]'}function Ba(e){return"script[async]"+e}function Rd(e,t,n){if(t.count++,t.instance===null)switch(t.type){case"style":var l=e.querySelector('style[data-href~="'+gt(n.href)+'"]');if(l)return t.instance=l,Ve(l),l;var a=S({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return l=(e.ownerDocument||e).createElement("style"),Ve(l),We(l,"style",a),uu(l,n.precedence,e),t.instance=l;case"stylesheet":a=kl(n.href);var s=e.querySelector(Ua(a));if(s)return t.state.loading|=4,t.instance=s,Ve(s),s;l=Cd(n),(a=Ct.get(a))&&Vc(l,a),s=(e.ownerDocument||e).createElement("link"),Ve(s);var o=s;return o._p=new Promise(function(h,g){o.onload=h,o.onerror=g}),We(s,"link",l),t.state.loading|=4,uu(s,n.precedence,e),t.instance=s;case"script":return s=Xl(n.src),(a=e.querySelector(Ba(s)))?(t.instance=a,Ve(a),a):(l=n,(a=Ct.get(s))&&(l=S({},n),Qc(l,a)),e=e.ownerDocument||e,a=e.createElement("script"),Ve(a),We(a,"link",l),e.head.appendChild(a),t.instance=a);case"void":return null;default:throw Error(r(443,t.type))}else t.type==="stylesheet"&&(t.state.loading&4)===0&&(l=t.instance,t.state.loading|=4,uu(l,n.precedence,e));return t.instance}function uu(e,t,n){for(var l=n.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=l.length?l[l.length-1]:null,s=a,o=0;o title"):null)}function v0(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case"meta":case"title":return!0;case"style":if(typeof t.precedence!="string"||typeof t.href!="string"||t.href==="")break;return!0;case"link":if(typeof t.rel!="string"||typeof t.href!="string"||t.href===""||t.onLoad||t.onError)break;switch(t.rel){case"stylesheet":return e=t.disabled,typeof t.precedence=="string"&&e==null;default:return!0}case"script":if(t.async&&typeof t.async!="function"&&typeof t.async!="symbol"&&!t.onLoad&&!t.onError&&t.src&&typeof t.src=="string")return!0}return!1}function zd(e){return!(e.type==="stylesheet"&&(e.state.loading&3)===0)}function g0(e,t,n,l){if(n.type==="stylesheet"&&(typeof l.media!="string"||matchMedia(l.media).matches!==!1)&&(n.state.loading&4)===0){if(n.instance===null){var a=kl(l.href),s=t.querySelector(Ua(a));if(s){t=s._p,t!==null&&typeof t=="object"&&typeof t.then=="function"&&(e.count++,e=cu.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=s,Ve(s);return}s=t.ownerDocument||t,l=Cd(l),(a=Ct.get(a))&&Vc(l,a),s=s.createElement("link"),Ve(s);var o=s;o._p=new Promise(function(h,g){o.onload=h,o.onerror=g}),We(s,"link",l),n.instance=s}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&(n.state.loading&3)===0&&(e.count++,n=cu.bind(e),t.addEventListener("load",n),t.addEventListener("error",n))}}var Zc=0;function b0(e,t){return e.stylesheets&&e.count===0&&ou(e,e.stylesheets),0Zc?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(l),clearTimeout(a)}}:null}function cu(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)ou(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var ru=null;function ou(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,ru=new Map,t.forEach(S0,e),ru=null,cu.call(e))}function S0(e,t){if(!(t.state.loading&4)){var n=ru.get(e);if(n)var l=n.get(null);else{n=new Map,ru.set(e,n);for(var a=e.querySelectorAll("link[data-precedence],style[data-precedence]"),s=0;s"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(u)}catch(i){console.error(i)}}return u(),tr.exports=B0(),tr.exports}var H0=L0();var em="popstate";function q0(u={}){function i(r,f){let{pathname:d,search:m,hash:b}=r.location;return hr("",{pathname:d,search:m,hash:b},f.state&&f.state.usr||null,f.state&&f.state.key||"default")}function c(r,f){return typeof f=="string"?f:Wa(f)}return k0(i,c,null,u)}function Oe(u,i){if(u===!1||u===null||typeof u>"u")throw new Error(i)}function wt(u,i){if(!u){typeof console<"u"&&console.warn(i);try{throw new Error(i)}catch{}}}function Y0(){return Math.random().toString(36).substring(2,10)}function tm(u,i){return{usr:u.state,key:u.key,idx:i}}function hr(u,i,c=null,r){return{pathname:typeof u=="string"?u:u.pathname,search:"",hash:"",...typeof i=="string"?Ql(i):i,state:c,key:i&&i.key||r||Y0()}}function Wa({pathname:u="/",search:i="",hash:c=""}){return i&&i!=="?"&&(u+=i.charAt(0)==="?"?i:"?"+i),c&&c!=="#"&&(u+=c.charAt(0)==="#"?c:"#"+c),u}function Ql(u){let i={};if(u){let c=u.indexOf("#");c>=0&&(i.hash=u.substring(c),u=u.substring(0,c));let r=u.indexOf("?");r>=0&&(i.search=u.substring(r),u=u.substring(0,r)),u&&(i.pathname=u)}return i}function k0(u,i,c,r={}){let{window:f=document.defaultView,v5Compat:d=!1}=r,m=f.history,b="POP",p=null,y=E();y==null&&(y=0,m.replaceState({...m.state,idx:y},""));function E(){return(m.state||{idx:null}).idx}function S(){b="POP";let q=E(),L=q==null?null:q-y;y=q,p&&p({action:b,location:k.location,delta:L})}function C(q,L){b="PUSH";let Y=hr(k.location,q,L);y=E()+1;let V=tm(Y,y),ne=k.createHref(Y);try{m.pushState(V,"",ne)}catch(he){if(he instanceof DOMException&&he.name==="DataCloneError")throw he;f.location.assign(ne)}d&&p&&p({action:b,location:k.location,delta:1})}function z(q,L){b="REPLACE";let Y=hr(k.location,q,L);y=E();let V=tm(Y,y),ne=k.createHref(Y);m.replaceState(V,"",ne),d&&p&&p({action:b,location:k.location,delta:0})}function H(q){return X0(q)}let k={get action(){return b},get location(){return u(f,m)},listen(q){if(p)throw new Error("A history only accepts one active listener");return f.addEventListener(em,S),p=q,()=>{f.removeEventListener(em,S),p=null}},createHref(q){return i(f,q)},createURL:H,encodeLocation(q){let L=H(q);return{pathname:L.pathname,search:L.search,hash:L.hash}},push:C,replace:z,go(q){return m.go(q)}};return k}function X0(u,i=!1){let c="http://localhost";typeof window<"u"&&(c=window.location.origin!=="null"?window.location.origin:window.location.href),Oe(c,"No window.location.(origin|href) available to create URL");let r=typeof u=="string"?u:Wa(u);return r=r.replace(/ $/,"%20"),!i&&r.startsWith("//")&&(r=c+r),new URL(r,c)}function Sm(u,i,c="/"){return G0(u,i,c,!1)}function G0(u,i,c,r){let f=typeof i=="string"?Ql(i):i,d=on(f.pathname||"/",c);if(d==null)return null;let m=xm(u);V0(m);let b=null;for(let p=0;b==null&&p{let E={relativePath:y===void 0?m.path||"":y,caseSensitive:m.caseSensitive===!0,childrenIndex:b,route:m};if(E.relativePath.startsWith("/")){if(!E.relativePath.startsWith(r)&&p)return;Oe(E.relativePath.startsWith(r),`Absolute route path "${E.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),E.relativePath=E.relativePath.slice(r.length)}let S=rn([r,E.relativePath]),C=c.concat(E);m.children&&m.children.length>0&&(Oe(m.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${S}".`),xm(m.children,i,C,S,p)),!(m.path==null&&!m.index)&&i.push({path:S,score:F0(S,m.index),routesMeta:C})};return u.forEach((m,b)=>{if(m.path===""||!m.path?.includes("?"))d(m,b);else for(let p of _m(m.path))d(m,b,!0,p)}),i}function _m(u){let i=u.split("/");if(i.length===0)return[];let[c,...r]=i,f=c.endsWith("?"),d=c.replace(/\?$/,"");if(r.length===0)return f?[d,""]:[d];let m=_m(r.join("/")),b=[];return b.push(...m.map(p=>p===""?d:[d,p].join("/"))),f&&b.push(...m),b.map(p=>u.startsWith("/")&&p===""?"/":p)}function V0(u){u.sort((i,c)=>i.score!==c.score?c.score-i.score:P0(i.routesMeta.map(r=>r.childrenIndex),c.routesMeta.map(r=>r.childrenIndex)))}var Q0=/^:[\w-]+$/,Z0=3,K0=2,J0=1,$0=10,W0=-2,nm=u=>u==="*";function F0(u,i){let c=u.split("/"),r=c.length;return c.some(nm)&&(r+=W0),i&&(r+=K0),c.filter(f=>!nm(f)).reduce((f,d)=>f+(Q0.test(d)?Z0:d===""?J0:$0),r)}function P0(u,i){return u.length===i.length&&u.slice(0,-1).every((r,f)=>r===i[f])?u[u.length-1]-i[i.length-1]:0}function I0(u,i,c=!1){let{routesMeta:r}=u,f={},d="/",m=[];for(let b=0;b{if(E==="*"){let H=b[C]||"";m=d.slice(0,d.length-H.length).replace(/(.)\/+$/,"$1")}const z=b[C];return S&&!z?y[E]=void 0:y[E]=(z||"").replace(/%2F/g,"/"),y},{}),pathname:d,pathnameBase:m,pattern:u}}function ev(u,i=!1,c=!0){wt(u==="*"||!u.endsWith("*")||u.endsWith("/*"),`Route path "${u}" will be treated as if it were "${u.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${u.replace(/\*$/,"/*")}".`);let r=[],f="^"+u.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(m,b,p)=>(r.push({paramName:b,isOptional:p!=null}),p?"/?([^\\/]+)?":"/([^\\/]+)")).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return u.endsWith("*")?(r.push({paramName:"*"}),f+=u==="*"||u==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):c?f+="\\/*$":u!==""&&u!=="/"&&(f+="(?:(?=\\/|$))"),[new RegExp(f,i?void 0:"i"),r]}function tv(u){try{return u.split("/").map(i=>decodeURIComponent(i).replace(/\//g,"%2F")).join("/")}catch(i){return wt(!1,`The URL path "${u}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${i}).`),u}}function on(u,i){if(i==="/")return u;if(!u.toLowerCase().startsWith(i.toLowerCase()))return null;let c=i.endsWith("/")?i.length-1:i.length,r=u.charAt(c);return r&&r!=="/"?null:u.slice(c)||"/"}var nv=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,lv=u=>nv.test(u);function av(u,i="/"){let{pathname:c,search:r="",hash:f=""}=typeof u=="string"?Ql(u):u,d;if(c)if(lv(c))d=c;else{if(c.includes("//")){let m=c;c=c.replace(/\/\/+/g,"/"),wt(!1,`Pathnames cannot have embedded double slashes - normalizing ${m} -> ${c}`)}c.startsWith("/")?d=lm(c.substring(1),"/"):d=lm(c,i)}else d=i;return{pathname:d,search:sv(r),hash:cv(f)}}function lm(u,i){let c=i.replace(/\/+$/,"").split("/");return u.split("/").forEach(f=>{f===".."?c.length>1&&c.pop():f!=="."&&c.push(f)}),c.length>1?c.join("/"):"/"}function ir(u,i,c,r){return`Cannot include a '${u}' character in a manually specified \`to.${i}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${c}\` field. Alternatively you may provide the full path as a string in and the router will parse it for you.`}function iv(u){return u.filter((i,c)=>c===0||i.route.path&&i.route.path.length>0)}function Em(u){let i=iv(u);return i.map((c,r)=>r===i.length-1?c.pathname:c.pathnameBase)}function Tm(u,i,c,r=!1){let f;typeof u=="string"?f=Ql(u):(f={...u},Oe(!f.pathname||!f.pathname.includes("?"),ir("?","pathname","search",f)),Oe(!f.pathname||!f.pathname.includes("#"),ir("#","pathname","hash",f)),Oe(!f.search||!f.search.includes("#"),ir("#","search","hash",f)));let d=u===""||f.pathname==="",m=d?"/":f.pathname,b;if(m==null)b=c;else{let S=i.length-1;if(!r&&m.startsWith("..")){let C=m.split("/");for(;C[0]==="..";)C.shift(),S-=1;f.pathname=C.join("/")}b=S>=0?i[S]:"/"}let p=av(f,b),y=m&&m!=="/"&&m.endsWith("/"),E=(d||m===".")&&c.endsWith("/");return!p.pathname.endsWith("/")&&(y||E)&&(p.pathname+="/"),p}var rn=u=>u.join("/").replace(/\/\/+/g,"/"),uv=u=>u.replace(/\/+$/,"").replace(/^\/*/,"/"),sv=u=>!u||u==="?"?"":u.startsWith("?")?u:"?"+u,cv=u=>!u||u==="#"?"":u.startsWith("#")?u:"#"+u;function rv(u){return u!=null&&typeof u.status=="number"&&typeof u.statusText=="string"&&typeof u.internal=="boolean"&&"data"in u}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var Am=["POST","PUT","PATCH","DELETE"];new Set(Am);var ov=["GET",...Am];new Set(ov);var Zl=T.createContext(null);Zl.displayName="DataRouter";var Ou=T.createContext(null);Ou.displayName="DataRouterState";T.createContext(!1);var Cm=T.createContext({isTransitioning:!1});Cm.displayName="ViewTransition";var fv=T.createContext(new Map);fv.displayName="Fetchers";var hv=T.createContext(null);hv.displayName="Await";var Yt=T.createContext(null);Yt.displayName="Navigation";var Fa=T.createContext(null);Fa.displayName="Location";var fn=T.createContext({outlet:null,matches:[],isDataRoute:!1});fn.displayName="Route";var xr=T.createContext(null);xr.displayName="RouteError";function dv(u,{relative:i}={}){Oe(Pa(),"useHref() may be used only in the context of a component.");let{basename:c,navigator:r}=T.useContext(Yt),{hash:f,pathname:d,search:m}=Ia(u,{relative:i}),b=d;return c!=="/"&&(b=d==="/"?c:rn([c,d])),r.createHref({pathname:b,search:m,hash:f})}function Pa(){return T.useContext(Fa)!=null}function il(){return Oe(Pa(),"useLocation() may be used only in the context of a component."),T.useContext(Fa).location}var Rm="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function Nm(u){T.useContext(Yt).static||T.useLayoutEffect(u)}function mv(){let{isDataRoute:u}=T.useContext(fn);return u?Rv():pv()}function pv(){Oe(Pa(),"useNavigate() may be used only in the context of a component.");let u=T.useContext(Zl),{basename:i,navigator:c}=T.useContext(Yt),{matches:r}=T.useContext(fn),{pathname:f}=il(),d=JSON.stringify(Em(r)),m=T.useRef(!1);return Nm(()=>{m.current=!0}),T.useCallback((p,y={})=>{if(wt(m.current,Rm),!m.current)return;if(typeof p=="number"){c.go(p);return}let E=Tm(p,JSON.parse(d),f,y.relative==="path");u==null&&i!=="/"&&(E.pathname=E.pathname==="/"?i:rn([i,E.pathname])),(y.replace?c.replace:c.push)(E,y.state,y)},[i,c,d,f,u])}T.createContext(null);function Ia(u,{relative:i}={}){let{matches:c}=T.useContext(fn),{pathname:r}=il(),f=JSON.stringify(Em(c));return T.useMemo(()=>Tm(u,JSON.parse(f),r,i==="path"),[u,f,r,i])}function yv(u,i){return Om(u,i)}function Om(u,i,c,r,f){Oe(Pa(),"useRoutes() may be used only in the context of a component.");let{navigator:d}=T.useContext(Yt),{matches:m}=T.useContext(fn),b=m[m.length-1],p=b?b.params:{},y=b?b.pathname:"/",E=b?b.pathnameBase:"/",S=b&&b.route;{let Y=S&&S.path||"";zm(y,!S||Y.endsWith("*")||Y.endsWith("*?"),`You rendered descendant (or called \`useRoutes()\`) at "${y}" (under ) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render. -Please change the parent to .`)}let C=il(),z;if(i){let Y=typeof i=="string"?Ql(i):i;Oe(E==="/"||Y.pathname?.startsWith(E),`When overriding the location using \`\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${E}" but pathname "${Y.pathname}" was given in the \`location\` prop.`),z=Y}else z=C;let H=z.pathname||"/",k=H;if(E!=="/"){let Y=E.replace(/^\//,"").split("/");k="/"+H.replace(/^\//,"").split("/").slice(Y.length).join("/")}let q=Sm(u,{pathname:k});wt(S||q!=null,`No routes matched location "${z.pathname}${z.search}${z.hash}" `),wt(q==null||q[q.length-1].route.element!==void 0||q[q.length-1].route.Component!==void 0||q[q.length-1].route.lazy!==void 0,`Matched leaf route at location "${z.pathname}${z.search}${z.hash}" does not have an element or Component. This means it will render an with a null value by default resulting in an "empty" page.`);let L=xv(q&&q.map(Y=>Object.assign({},Y,{params:Object.assign({},p,Y.params),pathname:rn([E,d.encodeLocation?d.encodeLocation(Y.pathname.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:Y.pathname]),pathnameBase:Y.pathnameBase==="/"?E:rn([E,d.encodeLocation?d.encodeLocation(Y.pathnameBase.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:Y.pathnameBase])})),m,c,r,f);return i&&L?T.createElement(Fa.Provider,{value:{location:{pathname:"/",search:"",hash:"",state:null,key:"default",...z},navigationType:"POP"}},L):L}function vv(){let u=Cv(),i=rv(u)?`${u.status} ${u.statusText}`:u instanceof Error?u.message:JSON.stringify(u),c=u instanceof Error?u.stack:null,r="rgba(200,200,200, 0.5)",f={padding:"0.5rem",backgroundColor:r},d={padding:"2px 4px",backgroundColor:r},m=null;return console.error("Error handled by React Router default ErrorBoundary:",u),m=T.createElement(T.Fragment,null,T.createElement("p",null,"💿 Hey developer 👋"),T.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",T.createElement("code",{style:d},"ErrorBoundary")," or"," ",T.createElement("code",{style:d},"errorElement")," prop on your route.")),T.createElement(T.Fragment,null,T.createElement("h2",null,"Unexpected Application Error!"),T.createElement("h3",{style:{fontStyle:"italic"}},i),c?T.createElement("pre",{style:f},c):null,m)}var gv=T.createElement(vv,null),bv=class extends T.Component{constructor(u){super(u),this.state={location:u.location,revalidation:u.revalidation,error:u.error}}static getDerivedStateFromError(u){return{error:u}}static getDerivedStateFromProps(u,i){return i.location!==u.location||i.revalidation!=="idle"&&u.revalidation==="idle"?{error:u.error,location:u.location,revalidation:u.revalidation}:{error:u.error!==void 0?u.error:i.error,location:i.location,revalidation:u.revalidation||i.revalidation}}componentDidCatch(u,i){this.props.onError?this.props.onError(u,i):console.error("React Router caught the following error during render",u)}render(){return this.state.error!==void 0?T.createElement(fn.Provider,{value:this.props.routeContext},T.createElement(xr.Provider,{value:this.state.error,children:this.props.component})):this.props.children}};function Sv({routeContext:u,match:i,children:c}){let r=T.useContext(Zl);return r&&r.static&&r.staticContext&&(i.route.errorElement||i.route.ErrorBoundary)&&(r.staticContext._deepestRenderedBoundaryId=i.route.id),T.createElement(fn.Provider,{value:u},c)}function xv(u,i=[],c=null,r=null,f=null){if(u==null){if(!c)return null;if(c.errors)u=c.matches;else if(i.length===0&&!c.initialized&&c.matches.length>0)u=c.matches;else return null}let d=u,m=c?.errors;if(m!=null){let E=d.findIndex(S=>S.route.id&&m?.[S.route.id]!==void 0);Oe(E>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(m).join(",")}`),d=d.slice(0,Math.min(d.length,E+1))}let b=!1,p=-1;if(c)for(let E=0;E=0?d=d.slice(0,p+1):d=[d[0]];break}}}let y=c&&r?(E,S)=>{r(E,{location:c.location,params:c.matches?.[0]?.params??{},errorInfo:S})}:void 0;return d.reduceRight((E,S,C)=>{let z,H=!1,k=null,q=null;c&&(z=m&&S.route.id?m[S.route.id]:void 0,k=S.route.errorElement||gv,b&&(p<0&&C===0?(zm("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),H=!0,q=null):p===C&&(H=!0,q=S.route.hydrateFallbackElement||null)));let L=i.concat(d.slice(0,C+1)),Y=()=>{let V;return z?V=k:H?V=q:S.route.Component?V=T.createElement(S.route.Component,null):S.route.element?V=S.route.element:V=E,T.createElement(Sv,{match:S,routeContext:{outlet:E,matches:L,isDataRoute:c!=null},children:V})};return c&&(S.route.ErrorBoundary||S.route.errorElement||C===0)?T.createElement(bv,{location:c.location,revalidation:c.revalidation,component:k,error:z,children:Y(),routeContext:{outlet:null,matches:L,isDataRoute:!0},onError:y}):Y()},null)}function _r(u){return`${u} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function _v(u){let i=T.useContext(Zl);return Oe(i,_r(u)),i}function Ev(u){let i=T.useContext(Ou);return Oe(i,_r(u)),i}function Tv(u){let i=T.useContext(fn);return Oe(i,_r(u)),i}function Er(u){let i=Tv(u),c=i.matches[i.matches.length-1];return Oe(c.route.id,`${u} can only be used on routes that contain a unique "id"`),c.route.id}function Av(){return Er("useRouteId")}function Cv(){let u=T.useContext(xr),i=Ev("useRouteError"),c=Er("useRouteError");return u!==void 0?u:i.errors?.[c]}function Rv(){let{router:u}=_v("useNavigate"),i=Er("useNavigate"),c=T.useRef(!1);return Nm(()=>{c.current=!0}),T.useCallback(async(f,d={})=>{wt(c.current,Rm),c.current&&(typeof f=="number"?u.navigate(f):await u.navigate(f,{fromRouteId:i,...d}))},[u,i])}var am={};function zm(u,i,c){!i&&!am[u]&&(am[u]=!0,wt(!1,c))}T.memo(Nv);function Nv({routes:u,future:i,state:c,unstable_onError:r}){return Om(u,void 0,c,r,i)}function dr(u){Oe(!1,"A is only ever to be used as the child of element, never rendered directly. Please wrap your in a .")}function Ov({basename:u="/",children:i=null,location:c,navigationType:r="POP",navigator:f,static:d=!1}){Oe(!Pa(),"You cannot render a inside another . You should never have more than one in your app.");let m=u.replace(/^\/*/,"/"),b=T.useMemo(()=>({basename:m,navigator:f,static:d,future:{}}),[m,f,d]);typeof c=="string"&&(c=Ql(c));let{pathname:p="/",search:y="",hash:E="",state:S=null,key:C="default"}=c,z=T.useMemo(()=>{let H=on(p,m);return H==null?null:{location:{pathname:H,search:y,hash:E,state:S,key:C},navigationType:r}},[m,p,y,E,S,C,r]);return wt(z!=null,` is not able to match the URL "${p}${y}${E}" because it does not start with the basename, so the won't render anything.`),z==null?null:T.createElement(Yt.Provider,{value:b},T.createElement(Fa.Provider,{children:i,value:z}))}function zv({children:u,location:i}){return yv(mr(u),i)}function mr(u,i=[]){let c=[];return T.Children.forEach(u,(r,f)=>{if(!T.isValidElement(r))return;let d=[...i,f];if(r.type===T.Fragment){c.push.apply(c,mr(r.props.children,d));return}Oe(r.type===dr,`[${typeof r.type=="string"?r.type:r.type.name}] is not a component. All component children of must be a or `),Oe(!r.props.index||!r.props.children,"An index route cannot have child routes.");let m={id:r.props.id||d.join("-"),caseSensitive:r.props.caseSensitive,element:r.props.element,Component:r.props.Component,index:r.props.index,path:r.props.path,middleware:r.props.middleware,loader:r.props.loader,action:r.props.action,hydrateFallbackElement:r.props.hydrateFallbackElement,HydrateFallback:r.props.HydrateFallback,errorElement:r.props.errorElement,ErrorBoundary:r.props.ErrorBoundary,hasErrorBoundary:r.props.hasErrorBoundary===!0||r.props.ErrorBoundary!=null||r.props.errorElement!=null,shouldRevalidate:r.props.shouldRevalidate,handle:r.props.handle,lazy:r.props.lazy};r.props.children&&(m.children=mr(r.props.children,d)),c.push(m)}),c}var xu="get",_u="application/x-www-form-urlencoded";function zu(u){return u!=null&&typeof u.tagName=="string"}function Mv(u){return zu(u)&&u.tagName.toLowerCase()==="button"}function Dv(u){return zu(u)&&u.tagName.toLowerCase()==="form"}function wv(u){return zu(u)&&u.tagName.toLowerCase()==="input"}function jv(u){return!!(u.metaKey||u.altKey||u.ctrlKey||u.shiftKey)}function Uv(u,i){return u.button===0&&(!i||i==="_self")&&!jv(u)}var gu=null;function Bv(){if(gu===null)try{new FormData(document.createElement("form"),0),gu=!1}catch{gu=!0}return gu}var Lv=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function ur(u){return u!=null&&!Lv.has(u)?(wt(!1,`"${u}" is not a valid \`encType\` for \`\`/\`\` and will default to "${_u}"`),null):u}function Hv(u,i){let c,r,f,d,m;if(Dv(u)){let b=u.getAttribute("action");r=b?on(b,i):null,c=u.getAttribute("method")||xu,f=ur(u.getAttribute("enctype"))||_u,d=new FormData(u)}else if(Mv(u)||wv(u)&&(u.type==="submit"||u.type==="image")){let b=u.form;if(b==null)throw new Error('Cannot submit a
); } - const span = config.full - config.warn; + const normalizedConfig = { + full: config.full ?? config.Full ?? 0, + warn: config.warn ?? config.Warn ?? 0, + urgent: config.urgent ?? config.Urgent ?? null, + }; + + const span = normalizedConfig.full - normalizedConfig.warn; if (span <= 0) return null; - const normalized = (charge - config.warn) / span; + const normalized = (charge - normalizedConfig.warn) / span; const percent = Math.min(1, Math.max(0, normalized)); const percentDisplay = Math.round(percent * 100); const percentText = `${percentDisplay}%`; const depleted = normalized <= 0; - const urgent = config.urgent != null && charge <= config.urgent; + const urgent = normalizedConfig.urgent != null && charge <= normalizedConfig.urgent; const barClass = depleted ? 'bg-red-500 animate-pulse' : urgent ? 'bg-amber-400' : 'bg-emerald-500'; const capText = capacity ? `${charge}/${capacity}` : `${charge}`; return ( From e87938746c60b6c715db00764d7ae3a08798d78a Mon Sep 17 00:00:00 2001 From: legop3 Date: Sat, 15 Nov 2025 22:49:33 -0500 Subject: [PATCH 33/61] guh --- .../{index-sCjLoHHT.js => index-CFSn5fM6.js} | 12 ++++++------ server/public/index.html | 2 +- webui/src/components/VideoTile.jsx | 17 +++++++++++------ 3 files changed, 18 insertions(+), 13 deletions(-) rename server/public/assets/{index-sCjLoHHT.js => index-CFSn5fM6.js} (81%) diff --git a/server/public/assets/index-sCjLoHHT.js b/server/public/assets/index-CFSn5fM6.js similarity index 81% rename from server/public/assets/index-sCjLoHHT.js rename to server/public/assets/index-CFSn5fM6.js index 6e5d478f..0c9b075a 100644 --- a/server/public/assets/index-sCjLoHHT.js +++ b/server/public/assets/index-CFSn5fM6.js @@ -1,11 +1,11 @@ -(function(){const i=document.createElement("link").relList;if(i&&i.supports&&i.supports("modulepreload"))return;for(const f of document.querySelectorAll('link[rel="modulepreload"]'))r(f);new MutationObserver(f=>{for(const d of f)if(d.type==="childList")for(const m of d.addedNodes)m.tagName==="LINK"&&m.rel==="modulepreload"&&r(m)}).observe(document,{childList:!0,subtree:!0});function c(f){const d={};return f.integrity&&(d.integrity=f.integrity),f.referrerPolicy&&(d.referrerPolicy=f.referrerPolicy),f.crossOrigin==="use-credentials"?d.credentials="include":f.crossOrigin==="anonymous"?d.credentials="omit":d.credentials="same-origin",d}function r(f){if(f.ep)return;f.ep=!0;const d=c(f);fetch(f.href,d)}})();var Ic={exports:{}},ka={};var Vd;function O0(){if(Vd)return ka;Vd=1;var u=Symbol.for("react.transitional.element"),i=Symbol.for("react.fragment");function c(r,f,d){var m=null;if(d!==void 0&&(m=""+d),f.key!==void 0&&(m=""+f.key),"key"in f){d={};for(var b in f)b!=="key"&&(d[b]=f[b])}else d=f;return f=d.ref,{$$typeof:u,type:r,key:m,ref:f!==void 0?f:null,props:d}}return ka.Fragment=i,ka.jsx=c,ka.jsxs=c,ka}var Qd;function z0(){return Qd||(Qd=1,Ic.exports=O0()),Ic.exports}var v=z0(),er={exports:{}},P={};var Zd;function M0(){if(Zd)return P;Zd=1;var u=Symbol.for("react.transitional.element"),i=Symbol.for("react.portal"),c=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),f=Symbol.for("react.profiler"),d=Symbol.for("react.consumer"),m=Symbol.for("react.context"),b=Symbol.for("react.forward_ref"),p=Symbol.for("react.suspense"),y=Symbol.for("react.memo"),E=Symbol.for("react.lazy"),S=Symbol.for("react.activity"),C=Symbol.iterator;function z(_){return _===null||typeof _!="object"?null:(_=C&&_[C]||_["@@iterator"],typeof _=="function"?_:null)}var H={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},k=Object.assign,q={};function L(_,B,G){this.props=_,this.context=B,this.refs=q,this.updater=G||H}L.prototype.isReactComponent={},L.prototype.setState=function(_,B){if(typeof _!="object"&&typeof _!="function"&&_!=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,_,B,"setState")},L.prototype.forceUpdate=function(_){this.updater.enqueueForceUpdate(this,_,"forceUpdate")};function Y(){}Y.prototype=L.prototype;function V(_,B,G){this.props=_,this.context=B,this.refs=q,this.updater=G||H}var ne=V.prototype=new Y;ne.constructor=V,k(ne,L.prototype),ne.isPureReactComponent=!0;var he=Array.isArray;function Ae(){}var F={H:null,A:null,T:null,S:null},_e=Object.prototype.hasOwnProperty;function ve(_,B,G){var Z=G.ref;return{$$typeof:u,type:_,key:B,ref:Z!==void 0?Z:null,props:G}}function Ge(_,B){return ve(_.type,B,_.props)}function Ue(_){return typeof _=="object"&&_!==null&&_.$$typeof===u}function ke(_){var B={"=":"=0",":":"=2"};return"$"+_.replace(/[=:]/g,function(G){return B[G]})}var kt=/\/+/g;function Xt(_,B){return typeof _=="object"&&_!==null&&_.key!=null?ke(""+_.key):B.toString(36)}function Nt(_){switch(_.status){case"fulfilled":return _.value;case"rejected":throw _.reason;default:switch(typeof _.status=="string"?_.then(Ae,Ae):(_.status="pending",_.then(function(B){_.status==="pending"&&(_.status="fulfilled",_.value=B)},function(B){_.status==="pending"&&(_.status="rejected",_.reason=B)})),_.status){case"fulfilled":return _.value;case"rejected":throw _.reason}}throw _}function w(_,B,G,Z,I){var le=typeof _;(le==="undefined"||le==="boolean")&&(_=null);var me=!1;if(_===null)me=!0;else switch(le){case"bigint":case"string":case"number":me=!0;break;case"object":switch(_.$$typeof){case u:case i:me=!0;break;case E:return me=_._init,w(me(_._payload),B,G,Z,I)}}if(me)return I=I(_),me=Z===""?"."+Xt(_,0):Z,he(I)?(G="",me!=null&&(G=me.replace(kt,"$&/")+"/"),w(I,B,G,"",function(Jl){return Jl})):I!=null&&(Ue(I)&&(I=Ge(I,G+(I.key==null||_&&_.key===I.key?"":(""+I.key).replace(kt,"$&/")+"/")+me)),B.push(I)),1;me=0;var Pe=Z===""?".":Z+":";if(he(_))for(var De=0;De<_.length;De++)Z=_[De],le=Pe+Xt(Z,De),me+=w(Z,B,G,le,I);else if(De=z(_),typeof De=="function")for(_=De.call(_),De=0;!(Z=_.next()).done;)Z=Z.value,le=Pe+Xt(Z,De++),me+=w(Z,B,G,le,I);else if(le==="object"){if(typeof _.then=="function")return w(Nt(_),B,G,Z,I);throw B=String(_),Error("Objects are not valid as a React child (found: "+(B==="[object Object]"?"object with keys {"+Object.keys(_).join(", ")+"}":B)+"). If you meant to render a collection of children, use an array instead.")}return me}function X(_,B,G){if(_==null)return _;var Z=[],I=0;return w(_,Z,"","",function(le){return B.call(G,le,I++)}),Z}function W(_){if(_._status===-1){var B=_._result;B=B(),B.then(function(G){(_._status===0||_._status===-1)&&(_._status=1,_._result=G)},function(G){(_._status===0||_._status===-1)&&(_._status=2,_._result=G)}),_._status===-1&&(_._status=0,_._result=B)}if(_._status===1)return _._result.default;throw _._result}var ge=typeof reportError=="function"?reportError:function(_){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var B=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof _=="object"&&_!==null&&typeof _.message=="string"?String(_.message):String(_),error:_});if(!window.dispatchEvent(B))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",_);return}console.error(_)},Ee={map:X,forEach:function(_,B,G){X(_,function(){B.apply(this,arguments)},G)},count:function(_){var B=0;return X(_,function(){B++}),B},toArray:function(_){return X(_,function(B){return B})||[]},only:function(_){if(!Ue(_))throw Error("React.Children.only expected to receive a single React element child.");return _}};return P.Activity=S,P.Children=Ee,P.Component=L,P.Fragment=c,P.Profiler=f,P.PureComponent=V,P.StrictMode=r,P.Suspense=p,P.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=F,P.__COMPILER_RUNTIME={__proto__:null,c:function(_){return F.H.useMemoCache(_)}},P.cache=function(_){return function(){return _.apply(null,arguments)}},P.cacheSignal=function(){return null},P.cloneElement=function(_,B,G){if(_==null)throw Error("The argument must be a React element, but you passed "+_+".");var Z=k({},_.props),I=_.key;if(B!=null)for(le in B.key!==void 0&&(I=""+B.key),B)!_e.call(B,le)||le==="key"||le==="__self"||le==="__source"||le==="ref"&&B.ref===void 0||(Z[le]=B[le]);var le=arguments.length-2;if(le===1)Z.children=G;else if(1>>1,Ee=w[ge];if(0>>1;ge<_;){var B=2*(ge+1)-1,G=w[B],Z=B+1,I=w[Z];if(0>f(G,W))Zf(I,G)?(w[ge]=I,w[Z]=W,ge=Z):(w[ge]=G,w[B]=W,ge=B);else if(Zf(I,W))w[ge]=I,w[Z]=W,ge=Z;else break e}}return X}function f(w,X){var W=w.sortIndex-X.sortIndex;return W!==0?W:w.id-X.id}if(u.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var d=performance;u.unstable_now=function(){return d.now()}}else{var m=Date,b=m.now();u.unstable_now=function(){return m.now()-b}}var p=[],y=[],E=1,S=null,C=3,z=!1,H=!1,k=!1,q=!1,L=typeof setTimeout=="function"?setTimeout:null,Y=typeof clearTimeout=="function"?clearTimeout:null,V=typeof setImmediate<"u"?setImmediate:null;function ne(w){for(var X=c(y);X!==null;){if(X.callback===null)r(y);else if(X.startTime<=w)r(y),X.sortIndex=X.expirationTime,i(p,X);else break;X=c(y)}}function he(w){if(k=!1,ne(w),!H)if(c(p)!==null)H=!0,Ae||(Ae=!0,ke());else{var X=c(y);X!==null&&Nt(he,X.startTime-w)}}var Ae=!1,F=-1,_e=5,ve=-1;function Ge(){return q?!0:!(u.unstable_now()-ve<_e)}function Ue(){if(q=!1,Ae){var w=u.unstable_now();ve=w;var X=!0;try{e:{H=!1,k&&(k=!1,Y(F),F=-1),z=!0;var W=C;try{t:{for(ne(w),S=c(p);S!==null&&!(S.expirationTime>w&&Ge());){var ge=S.callback;if(typeof ge=="function"){S.callback=null,C=S.priorityLevel;var Ee=ge(S.expirationTime<=w);if(w=u.unstable_now(),typeof Ee=="function"){S.callback=Ee,ne(w),X=!0;break t}S===c(p)&&r(p),ne(w)}else r(p);S=c(p)}if(S!==null)X=!0;else{var _=c(y);_!==null&&Nt(he,_.startTime-w),X=!1}}break e}finally{S=null,C=W,z=!1}X=void 0}}finally{X?ke():Ae=!1}}}var ke;if(typeof V=="function")ke=function(){V(Ue)};else if(typeof MessageChannel<"u"){var kt=new MessageChannel,Xt=kt.port2;kt.port1.onmessage=Ue,ke=function(){Xt.postMessage(null)}}else ke=function(){L(Ue,0)};function Nt(w,X){F=L(function(){w(u.unstable_now())},X)}u.unstable_IdlePriority=5,u.unstable_ImmediatePriority=1,u.unstable_LowPriority=4,u.unstable_NormalPriority=3,u.unstable_Profiling=null,u.unstable_UserBlockingPriority=2,u.unstable_cancelCallback=function(w){w.callback=null},u.unstable_forceFrameRate=function(w){0>w||125ge?(w.sortIndex=W,i(y,w),c(p)===null&&w===c(y)&&(k?(Y(F),F=-1):k=!0,Nt(he,W-ge))):(w.sortIndex=Ee,i(p,w),H||z||(H=!0,Ae||(Ae=!0,ke()))),w},u.unstable_shouldYield=Ge,u.unstable_wrapCallback=function(w){var X=C;return function(){var W=C;C=X;try{return w.apply(this,arguments)}finally{C=W}}}})(lr)),lr}var $d;function w0(){return $d||($d=1,nr.exports=D0()),nr.exports}var ar={exports:{}},Fe={};var Wd;function j0(){if(Wd)return Fe;Wd=1;var u=Nu();function i(p){var y="https://react.dev/errors/"+p;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(u)}catch(i){console.error(i)}}return u(),ar.exports=j0(),ar.exports}var Pd;function B0(){if(Pd)return Xa;Pd=1;var u=w0(),i=Nu(),c=U0();function r(e){var t="https://react.dev/errors/"+e;if(1Ee||(e.current=ge[Ee],ge[Ee]=null,Ee--)}function G(e,t){Ee++,ge[Ee]=e.current,e.current=t}var Z=_(null),I=_(null),le=_(null),me=_(null);function Pe(e,t){switch(G(le,t),G(I,e),G(Z,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?dd(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=dd(t),e=md(t,e);else switch(e){case"svg":e=1;break;case"math":e=2;break;default:e=0}}B(Z),G(Z,e)}function De(){B(Z),B(I),B(le)}function Jl(e){e.memoizedState!==null&&G(me,e);var t=Z.current,n=md(t,e.type);t!==n&&(G(I,e),G(Z,n))}function ei(e){I.current===e&&(B(Z),B(I)),me.current===e&&(B(me),La._currentValue=W)}var Uu,kr;function qn(e){if(Uu===void 0)try{throw Error()}catch(n){var t=n.stack.trim().match(/\n( *(at )?)/);Uu=t&&t[1]||"",kr=-1{for(const h of f)if(h.type==="childList")for(const m of h.addedNodes)m.tagName==="LINK"&&m.rel==="modulepreload"&&r(m)}).observe(document,{childList:!0,subtree:!0});function c(f){const h={};return f.integrity&&(h.integrity=f.integrity),f.referrerPolicy&&(h.referrerPolicy=f.referrerPolicy),f.crossOrigin==="use-credentials"?h.credentials="include":f.crossOrigin==="anonymous"?h.credentials="omit":h.credentials="same-origin",h}function r(f){if(f.ep)return;f.ep=!0;const h=c(f);fetch(f.href,h)}})();var Ic={exports:{}},ka={};var Vd;function O0(){if(Vd)return ka;Vd=1;var u=Symbol.for("react.transitional.element"),i=Symbol.for("react.fragment");function c(r,f,h){var m=null;if(h!==void 0&&(m=""+h),f.key!==void 0&&(m=""+f.key),"key"in f){h={};for(var b in f)b!=="key"&&(h[b]=f[b])}else h=f;return f=h.ref,{$$typeof:u,type:r,key:m,ref:f!==void 0?f:null,props:h}}return ka.Fragment=i,ka.jsx=c,ka.jsxs=c,ka}var Qd;function z0(){return Qd||(Qd=1,Ic.exports=O0()),Ic.exports}var v=z0(),er={exports:{}},P={};var Zd;function M0(){if(Zd)return P;Zd=1;var u=Symbol.for("react.transitional.element"),i=Symbol.for("react.portal"),c=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),f=Symbol.for("react.profiler"),h=Symbol.for("react.consumer"),m=Symbol.for("react.context"),b=Symbol.for("react.forward_ref"),p=Symbol.for("react.suspense"),y=Symbol.for("react.memo"),E=Symbol.for("react.lazy"),S=Symbol.for("react.activity"),C=Symbol.iterator;function z(_){return _===null||typeof _!="object"?null:(_=C&&_[C]||_["@@iterator"],typeof _=="function"?_:null)}var H={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},k=Object.assign,q={};function L(_,B,G){this.props=_,this.context=B,this.refs=q,this.updater=G||H}L.prototype.isReactComponent={},L.prototype.setState=function(_,B){if(typeof _!="object"&&typeof _!="function"&&_!=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,_,B,"setState")},L.prototype.forceUpdate=function(_){this.updater.enqueueForceUpdate(this,_,"forceUpdate")};function Y(){}Y.prototype=L.prototype;function V(_,B,G){this.props=_,this.context=B,this.refs=q,this.updater=G||H}var ne=V.prototype=new Y;ne.constructor=V,k(ne,L.prototype),ne.isPureReactComponent=!0;var he=Array.isArray;function Ae(){}var F={H:null,A:null,T:null,S:null},_e=Object.prototype.hasOwnProperty;function ve(_,B,G){var Z=G.ref;return{$$typeof:u,type:_,key:B,ref:Z!==void 0?Z:null,props:G}}function Ge(_,B){return ve(_.type,B,_.props)}function Ue(_){return typeof _=="object"&&_!==null&&_.$$typeof===u}function ke(_){var B={"=":"=0",":":"=2"};return"$"+_.replace(/[=:]/g,function(G){return B[G]})}var kt=/\/+/g;function Xt(_,B){return typeof _=="object"&&_!==null&&_.key!=null?ke(""+_.key):B.toString(36)}function Nt(_){switch(_.status){case"fulfilled":return _.value;case"rejected":throw _.reason;default:switch(typeof _.status=="string"?_.then(Ae,Ae):(_.status="pending",_.then(function(B){_.status==="pending"&&(_.status="fulfilled",_.value=B)},function(B){_.status==="pending"&&(_.status="rejected",_.reason=B)})),_.status){case"fulfilled":return _.value;case"rejected":throw _.reason}}throw _}function w(_,B,G,Z,I){var le=typeof _;(le==="undefined"||le==="boolean")&&(_=null);var me=!1;if(_===null)me=!0;else switch(le){case"bigint":case"string":case"number":me=!0;break;case"object":switch(_.$$typeof){case u:case i:me=!0;break;case E:return me=_._init,w(me(_._payload),B,G,Z,I)}}if(me)return I=I(_),me=Z===""?"."+Xt(_,0):Z,he(I)?(G="",me!=null&&(G=me.replace(kt,"$&/")+"/"),w(I,B,G,"",function(Jl){return Jl})):I!=null&&(Ue(I)&&(I=Ge(I,G+(I.key==null||_&&_.key===I.key?"":(""+I.key).replace(kt,"$&/")+"/")+me)),B.push(I)),1;me=0;var Pe=Z===""?".":Z+":";if(he(_))for(var De=0;De<_.length;De++)Z=_[De],le=Pe+Xt(Z,De),me+=w(Z,B,G,le,I);else if(De=z(_),typeof De=="function")for(_=De.call(_),De=0;!(Z=_.next()).done;)Z=Z.value,le=Pe+Xt(Z,De++),me+=w(Z,B,G,le,I);else if(le==="object"){if(typeof _.then=="function")return w(Nt(_),B,G,Z,I);throw B=String(_),Error("Objects are not valid as a React child (found: "+(B==="[object Object]"?"object with keys {"+Object.keys(_).join(", ")+"}":B)+"). If you meant to render a collection of children, use an array instead.")}return me}function X(_,B,G){if(_==null)return _;var Z=[],I=0;return w(_,Z,"","",function(le){return B.call(G,le,I++)}),Z}function W(_){if(_._status===-1){var B=_._result;B=B(),B.then(function(G){(_._status===0||_._status===-1)&&(_._status=1,_._result=G)},function(G){(_._status===0||_._status===-1)&&(_._status=2,_._result=G)}),_._status===-1&&(_._status=0,_._result=B)}if(_._status===1)return _._result.default;throw _._result}var ge=typeof reportError=="function"?reportError:function(_){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var B=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof _=="object"&&_!==null&&typeof _.message=="string"?String(_.message):String(_),error:_});if(!window.dispatchEvent(B))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",_);return}console.error(_)},Ee={map:X,forEach:function(_,B,G){X(_,function(){B.apply(this,arguments)},G)},count:function(_){var B=0;return X(_,function(){B++}),B},toArray:function(_){return X(_,function(B){return B})||[]},only:function(_){if(!Ue(_))throw Error("React.Children.only expected to receive a single React element child.");return _}};return P.Activity=S,P.Children=Ee,P.Component=L,P.Fragment=c,P.Profiler=f,P.PureComponent=V,P.StrictMode=r,P.Suspense=p,P.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=F,P.__COMPILER_RUNTIME={__proto__:null,c:function(_){return F.H.useMemoCache(_)}},P.cache=function(_){return function(){return _.apply(null,arguments)}},P.cacheSignal=function(){return null},P.cloneElement=function(_,B,G){if(_==null)throw Error("The argument must be a React element, but you passed "+_+".");var Z=k({},_.props),I=_.key;if(B!=null)for(le in B.key!==void 0&&(I=""+B.key),B)!_e.call(B,le)||le==="key"||le==="__self"||le==="__source"||le==="ref"&&B.ref===void 0||(Z[le]=B[le]);var le=arguments.length-2;if(le===1)Z.children=G;else if(1>>1,Ee=w[ge];if(0>>1;ge<_;){var B=2*(ge+1)-1,G=w[B],Z=B+1,I=w[Z];if(0>f(G,W))Zf(I,G)?(w[ge]=I,w[Z]=W,ge=Z):(w[ge]=G,w[B]=W,ge=B);else if(Zf(I,W))w[ge]=I,w[Z]=W,ge=Z;else break e}}return X}function f(w,X){var W=w.sortIndex-X.sortIndex;return W!==0?W:w.id-X.id}if(u.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var h=performance;u.unstable_now=function(){return h.now()}}else{var m=Date,b=m.now();u.unstable_now=function(){return m.now()-b}}var p=[],y=[],E=1,S=null,C=3,z=!1,H=!1,k=!1,q=!1,L=typeof setTimeout=="function"?setTimeout:null,Y=typeof clearTimeout=="function"?clearTimeout:null,V=typeof setImmediate<"u"?setImmediate:null;function ne(w){for(var X=c(y);X!==null;){if(X.callback===null)r(y);else if(X.startTime<=w)r(y),X.sortIndex=X.expirationTime,i(p,X);else break;X=c(y)}}function he(w){if(k=!1,ne(w),!H)if(c(p)!==null)H=!0,Ae||(Ae=!0,ke());else{var X=c(y);X!==null&&Nt(he,X.startTime-w)}}var Ae=!1,F=-1,_e=5,ve=-1;function Ge(){return q?!0:!(u.unstable_now()-ve<_e)}function Ue(){if(q=!1,Ae){var w=u.unstable_now();ve=w;var X=!0;try{e:{H=!1,k&&(k=!1,Y(F),F=-1),z=!0;var W=C;try{t:{for(ne(w),S=c(p);S!==null&&!(S.expirationTime>w&&Ge());){var ge=S.callback;if(typeof ge=="function"){S.callback=null,C=S.priorityLevel;var Ee=ge(S.expirationTime<=w);if(w=u.unstable_now(),typeof Ee=="function"){S.callback=Ee,ne(w),X=!0;break t}S===c(p)&&r(p),ne(w)}else r(p);S=c(p)}if(S!==null)X=!0;else{var _=c(y);_!==null&&Nt(he,_.startTime-w),X=!1}}break e}finally{S=null,C=W,z=!1}X=void 0}}finally{X?ke():Ae=!1}}}var ke;if(typeof V=="function")ke=function(){V(Ue)};else if(typeof MessageChannel<"u"){var kt=new MessageChannel,Xt=kt.port2;kt.port1.onmessage=Ue,ke=function(){Xt.postMessage(null)}}else ke=function(){L(Ue,0)};function Nt(w,X){F=L(function(){w(u.unstable_now())},X)}u.unstable_IdlePriority=5,u.unstable_ImmediatePriority=1,u.unstable_LowPriority=4,u.unstable_NormalPriority=3,u.unstable_Profiling=null,u.unstable_UserBlockingPriority=2,u.unstable_cancelCallback=function(w){w.callback=null},u.unstable_forceFrameRate=function(w){0>w||125ge?(w.sortIndex=W,i(y,w),c(p)===null&&w===c(y)&&(k?(Y(F),F=-1):k=!0,Nt(he,W-ge))):(w.sortIndex=Ee,i(p,w),H||z||(H=!0,Ae||(Ae=!0,ke()))),w},u.unstable_shouldYield=Ge,u.unstable_wrapCallback=function(w){var X=C;return function(){var W=C;C=X;try{return w.apply(this,arguments)}finally{C=W}}}})(lr)),lr}var $d;function w0(){return $d||($d=1,nr.exports=D0()),nr.exports}var ar={exports:{}},Fe={};var Wd;function j0(){if(Wd)return Fe;Wd=1;var u=Nu();function i(p){var y="https://react.dev/errors/"+p;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(u)}catch(i){console.error(i)}}return u(),ar.exports=j0(),ar.exports}var Pd;function B0(){if(Pd)return Xa;Pd=1;var u=w0(),i=Nu(),c=U0();function r(e){var t="https://react.dev/errors/"+e;if(1Ee||(e.current=ge[Ee],ge[Ee]=null,Ee--)}function G(e,t){Ee++,ge[Ee]=e.current,e.current=t}var Z=_(null),I=_(null),le=_(null),me=_(null);function Pe(e,t){switch(G(le,t),G(I,e),G(Z,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?dd(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=dd(t),e=md(t,e);else switch(e){case"svg":e=1;break;case"math":e=2;break;default:e=0}}B(Z),G(Z,e)}function De(){B(Z),B(I),B(le)}function Jl(e){e.memoizedState!==null&&G(me,e);var t=Z.current,n=md(t,e.type);t!==n&&(G(I,e),G(Z,n))}function ei(e){I.current===e&&(B(Z),B(I)),me.current===e&&(B(me),La._currentValue=W)}var Uu,kr;function qn(e){if(Uu===void 0)try{throw Error()}catch(n){var t=n.stack.trim().match(/\n( *(at )?)/);Uu=t&&t[1]||"",kr=-1)":-1a||g[l]!==N[a]){var D=` `+g[l].replace(" at new "," at ");return e.displayName&&D.includes("")&&(D=D.replace("",e.displayName)),D}while(1<=l&&0<=a);break}}}finally{Bu=!1,Error.prepareStackTrace=n}return(n=e?e.displayName||e.name:"")?qn(n):""}function up(e,t){switch(e.tag){case 26:case 27:case 5:return qn(e.type);case 16:return qn("Lazy");case 13:return e.child!==t&&t!==null?qn("Suspense Fallback"):qn("Suspense");case 19:return qn("SuspenseList");case 0:case 15:return Lu(e.type,!1);case 11:return Lu(e.type.render,!1);case 1:return Lu(e.type,!0);case 31:return qn("Activity");default:return""}}function Xr(e){try{var t="",n=null;do t+=up(e,n),n=e,e=e.return;while(e);return t}catch(l){return` Error generating stack: `+l.message+` -`+l.stack}}var Hu=Object.prototype.hasOwnProperty,qu=u.unstable_scheduleCallback,Yu=u.unstable_cancelCallback,sp=u.unstable_shouldYield,cp=u.unstable_requestPaint,st=u.unstable_now,rp=u.unstable_getCurrentPriorityLevel,Gr=u.unstable_ImmediatePriority,Vr=u.unstable_UserBlockingPriority,ti=u.unstable_NormalPriority,op=u.unstable_LowPriority,Qr=u.unstable_IdlePriority,fp=u.log,hp=u.unstable_setDisableYieldValue,$l=null,ct=null;function dn(e){if(typeof fp=="function"&&hp(e),ct&&typeof ct.setStrictMode=="function")try{ct.setStrictMode($l,e)}catch{}}var rt=Math.clz32?Math.clz32:pp,dp=Math.log,mp=Math.LN2;function pp(e){return e>>>=0,e===0?32:31-(dp(e)/mp|0)|0}var ni=256,li=262144,ai=4194304;function Yn(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function ii(e,t,n){var l=e.pendingLanes;if(l===0)return 0;var a=0,s=e.suspendedLanes,o=e.pingedLanes;e=e.warmLanes;var h=l&134217727;return h!==0?(l=h&~s,l!==0?a=Yn(l):(o&=h,o!==0?a=Yn(o):n||(n=h&~e,n!==0&&(a=Yn(n))))):(h=l&~s,h!==0?a=Yn(h):o!==0?a=Yn(o):n||(n=l&~e,n!==0&&(a=Yn(n)))),a===0?0:t!==0&&t!==a&&(t&s)===0&&(s=a&-a,n=t&-t,s>=n||s===32&&(n&4194048)!==0)?t:a}function Wl(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function yp(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Zr(){var e=ai;return ai<<=1,(ai&62914560)===0&&(ai=4194304),e}function ku(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function Fl(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function vp(e,t,n,l,a,s){var o=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var h=e.entanglements,g=e.expirationTimes,N=e.hiddenUpdates;for(n=o&~n;0"u")return null;try{return e.activeElement||e.body}catch{return e.body}}var Ep=/[\n"\\]/g;function gt(e){return e.replace(Ep,function(t){return"\\"+t.charCodeAt(0).toString(16)+" "})}function Ku(e,t,n,l,a,s,o,h){e.name="",o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"?e.type=o:e.removeAttribute("type"),t!=null?o==="number"?(t===0&&e.value===""||e.value!=t)&&(e.value=""+vt(t)):e.value!==""+vt(t)&&(e.value=""+vt(t)):o!=="submit"&&o!=="reset"||e.removeAttribute("value"),t!=null?Ju(e,o,vt(t)):n!=null?Ju(e,o,vt(n)):l!=null&&e.removeAttribute("value"),a==null&&s!=null&&(e.defaultChecked=!!s),a!=null&&(e.checked=a&&typeof a!="function"&&typeof a!="symbol"),h!=null&&typeof h!="function"&&typeof h!="symbol"&&typeof h!="boolean"?e.name=""+vt(h):e.removeAttribute("name")}function io(e,t,n,l,a,s,o,h){if(s!=null&&typeof s!="function"&&typeof s!="symbol"&&typeof s!="boolean"&&(e.type=s),t!=null||n!=null){if(!(s!=="submit"&&s!=="reset"||t!=null)){Zu(e);return}n=n!=null?""+vt(n):"",t=t!=null?""+vt(t):n,h||t===e.value||(e.value=t),e.defaultValue=t}l=l??a,l=typeof l!="function"&&typeof l!="symbol"&&!!l,e.checked=h?e.checked:!!l,e.defaultChecked=!!l,o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"&&(e.name=o),Zu(e)}function Ju(e,t,n){t==="number"&&ci(e.ownerDocument)===e||e.defaultValue===""+n||(e.defaultValue=""+n)}function fl(e,t,n,l){if(e=e.options,t){t={};for(var a=0;a"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Iu=!1;if(Qt)try{var ta={};Object.defineProperty(ta,"passive",{get:function(){Iu=!0}}),window.addEventListener("test",ta,ta),window.removeEventListener("test",ta,ta)}catch{Iu=!1}var pn=null,es=null,oi=null;function ho(){if(oi)return oi;var e,t=es,n=t.length,l,a="value"in pn?pn.value:pn.textContent,s=a.length;for(e=0;e=aa),bo=" ",So=!1;function xo(e,t){switch(e){case"keyup":return Fp.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function _o(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var pl=!1;function Ip(e,t){switch(e){case"compositionend":return _o(t);case"keypress":return t.which!==32?null:(So=!0,bo);case"textInput":return e=t.data,e===bo&&So?null:e;default:return null}}function ey(e,t){if(pl)return e==="compositionend"||!is&&xo(e,t)?(e=ho(),oi=es=pn=null,pl=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=l}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=zo(n)}}function Do(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Do(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function wo(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=ci(e.document);t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=ci(e.document)}return t}function cs(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}var cy=Qt&&"documentMode"in document&&11>=document.documentMode,yl=null,rs=null,ca=null,os=!1;function jo(e,t,n){var l=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;os||yl==null||yl!==ci(l)||(l=yl,"selectionStart"in l&&cs(l)?l={start:l.selectionStart,end:l.selectionEnd}:(l=(l.ownerDocument&&l.ownerDocument.defaultView||window).getSelection(),l={anchorNode:l.anchorNode,anchorOffset:l.anchorOffset,focusNode:l.focusNode,focusOffset:l.focusOffset}),ca&&sa(ca,l)||(ca=l,l=lu(rs,"onSelect"),0>=o,a-=o,jt=1<<32-rt(t)+a|n<te?(se=K,K=null):se=K.sibling;var fe=O(A,K,R[te],j);if(fe===null){K===null&&(K=se);break}e&&K&&fe.alternate===null&&t(A,K),x=s(fe,x,te),oe===null?J=fe:oe.sibling=fe,oe=fe,K=se}if(te===R.length)return n(A,K),ce&&Kt(A,te),J;if(K===null){for(;tete?(se=K,K=null):se=K.sibling;var Ln=O(A,K,fe.value,j);if(Ln===null){K===null&&(K=se);break}e&&K&&Ln.alternate===null&&t(A,K),x=s(Ln,x,te),oe===null?J=Ln:oe.sibling=Ln,oe=Ln,K=se}if(fe.done)return n(A,K),ce&&Kt(A,te),J;if(K===null){for(;!fe.done;te++,fe=R.next())fe=U(A,fe.value,j),fe!==null&&(x=s(fe,x,te),oe===null?J=fe:oe.sibling=fe,oe=fe);return ce&&Kt(A,te),J}for(K=l(K);!fe.done;te++,fe=R.next())fe=M(K,A,te,fe.value,j),fe!==null&&(e&&fe.alternate!==null&&K.delete(fe.key===null?te:fe.key),x=s(fe,x,te),oe===null?J=fe:oe.sibling=fe,oe=fe);return e&&K.forEach(function(N0){return t(A,N0)}),ce&&Kt(A,te),J}function xe(A,x,R,j){if(typeof R=="object"&&R!==null&&R.type===k&&R.key===null&&(R=R.props.children),typeof R=="object"&&R!==null){switch(R.$$typeof){case z:e:{for(var J=R.key;x!==null;){if(x.key===J){if(J=R.type,J===k){if(x.tag===7){n(A,x.sibling),j=a(x,R.props.children),j.return=A,A=j;break e}}else if(x.elementType===J||typeof J=="object"&&J!==null&&J.$$typeof===_e&&Fn(J)===x.type){n(A,x.sibling),j=a(x,R.props),ma(j,R),j.return=A,A=j;break e}n(A,x);break}else t(A,x);x=x.sibling}R.type===k?(j=Zn(R.props.children,A.mode,j,R.key),j.return=A,A=j):(j=Si(R.type,R.key,R.props,null,A.mode,j),ma(j,R),j.return=A,A=j)}return o(A);case H:e:{for(J=R.key;x!==null;){if(x.key===J)if(x.tag===4&&x.stateNode.containerInfo===R.containerInfo&&x.stateNode.implementation===R.implementation){n(A,x.sibling),j=a(x,R.children||[]),j.return=A,A=j;break e}else{n(A,x);break}else t(A,x);x=x.sibling}j=vs(R,A.mode,j),j.return=A,A=j}return o(A);case _e:return R=Fn(R),xe(A,x,R,j)}if(Nt(R))return Q(A,x,R,j);if(ke(R)){if(J=ke(R),typeof J!="function")throw Error(r(150));return R=J.call(R),$(A,x,R,j)}if(typeof R.then=="function")return xe(A,x,Ri(R),j);if(R.$$typeof===V)return xe(A,x,Ei(A,R),j);Ni(A,R)}return typeof R=="string"&&R!==""||typeof R=="number"||typeof R=="bigint"?(R=""+R,x!==null&&x.tag===6?(n(A,x.sibling),j=a(x,R),j.return=A,A=j):(n(A,x),j=ys(R,A.mode,j),j.return=A,A=j),o(A)):n(A,x)}return function(A,x,R,j){try{da=0;var J=xe(A,x,R,j);return Rl=null,J}catch(K){if(K===Cl||K===Ai)throw K;var oe=ft(29,K,null,A.mode);return oe.lanes=j,oe.return=A,oe}finally{}}}var In=lf(!0),af=lf(!1),Sn=!1;function Os(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function zs(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function xn(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function _n(e,t,n){var l=e.updateQueue;if(l===null)return null;if(l=l.shared,(de&2)!==0){var a=l.pending;return a===null?t.next=t:(t.next=a.next,a.next=t),l.pending=t,t=bi(e),ko(e,null,n),t}return gi(e,l,t,n),bi(e)}function pa(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194048)!==0)){var l=t.lanes;l&=e.pendingLanes,n|=l,t.lanes=n,Jr(e,n)}}function Ms(e,t){var n=e.updateQueue,l=e.alternate;if(l!==null&&(l=l.updateQueue,n===l)){var a=null,s=null;if(n=n.firstBaseUpdate,n!==null){do{var o={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};s===null?a=s=o:s=s.next=o,n=n.next}while(n!==null);s===null?a=s=t:s=s.next=t}else a=s=t;n={baseState:l.baseState,firstBaseUpdate:a,lastBaseUpdate:s,shared:l.shared,callbacks:l.callbacks},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}var Ds=!1;function ya(){if(Ds){var e=Al;if(e!==null)throw e}}function va(e,t,n,l){Ds=!1;var a=e.updateQueue;Sn=!1;var s=a.firstBaseUpdate,o=a.lastBaseUpdate,h=a.shared.pending;if(h!==null){a.shared.pending=null;var g=h,N=g.next;g.next=null,o===null?s=N:o.next=N,o=g;var D=e.alternate;D!==null&&(D=D.updateQueue,h=D.lastBaseUpdate,h!==o&&(h===null?D.firstBaseUpdate=N:h.next=N,D.lastBaseUpdate=g))}if(s!==null){var U=a.baseState;o=0,D=N=g=null,h=s;do{var O=h.lane&-536870913,M=O!==h.lane;if(M?(ue&O)===O:(l&O)===O){O!==0&&O===Tl&&(Ds=!0),D!==null&&(D=D.next={lane:0,tag:h.tag,payload:h.payload,callback:null,next:null});e:{var Q=e,$=h;O=t;var xe=n;switch($.tag){case 1:if(Q=$.payload,typeof Q=="function"){U=Q.call(xe,U,O);break e}U=Q;break e;case 3:Q.flags=Q.flags&-65537|128;case 0:if(Q=$.payload,O=typeof Q=="function"?Q.call(xe,U,O):Q,O==null)break e;U=S({},U,O);break e;case 2:Sn=!0}}O=h.callback,O!==null&&(e.flags|=64,M&&(e.flags|=8192),M=a.callbacks,M===null?a.callbacks=[O]:M.push(O))}else M={lane:O,tag:h.tag,payload:h.payload,callback:h.callback,next:null},D===null?(N=D=M,g=U):D=D.next=M,o|=O;if(h=h.next,h===null){if(h=a.shared.pending,h===null)break;M=h,h=M.next,M.next=null,a.lastBaseUpdate=M,a.shared.pending=null}}while(!0);D===null&&(g=U),a.baseState=g,a.firstBaseUpdate=N,a.lastBaseUpdate=D,s===null&&(a.shared.lanes=0),Rn|=o,e.lanes=o,e.memoizedState=U}}function uf(e,t){if(typeof e!="function")throw Error(r(191,e));e.call(t)}function sf(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;es?s:8;var o=w.T,h={};w.T=h,Fs(e,!1,t,n);try{var g=a(),N=w.S;if(N!==null&&N(h,g),g!==null&&typeof g=="object"&&typeof g.then=="function"){var D=vy(g,l);Sa(e,t,D,yt(e))}else Sa(e,t,l,yt(e))}catch(U){Sa(e,t,{then:function(){},status:"rejected",reason:U},yt())}finally{X.p=s,o!==null&&h.types!==null&&(o.types=h.types),w.T=o}}function Ey(){}function $s(e,t,n,l){if(e.tag!==5)throw Error(r(476));var a=qf(e).queue;Hf(e,a,t,W,n===null?Ey:function(){return Yf(e),n(l)})}function qf(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:W,baseState:W,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Ft,lastRenderedState:W},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Ft,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function Yf(e){var t=qf(e);t.next===null&&(t=e.alternate.memoizedState),Sa(e,t.next.queue,{},yt())}function Ws(){return Je(La)}function kf(){return je().memoizedState}function Xf(){return je().memoizedState}function Ty(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var n=yt();e=xn(n);var l=_n(t,e,n);l!==null&&(ut(l,t,n),pa(l,t,n)),t={cache:As()},e.payload=t;return}t=t.return}}function Ay(e,t,n){var l=yt();n={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},Hi(e)?Vf(t,n):(n=ms(e,t,n,l),n!==null&&(ut(n,e,l),Qf(n,t,l)))}function Gf(e,t,n){var l=yt();Sa(e,t,n,l)}function Sa(e,t,n,l){var a={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(Hi(e))Vf(t,a);else{var s=e.alternate;if(e.lanes===0&&(s===null||s.lanes===0)&&(s=t.lastRenderedReducer,s!==null))try{var o=t.lastRenderedState,h=s(o,n);if(a.hasEagerState=!0,a.eagerState=h,ot(h,o))return gi(e,t,a,0),Te===null&&vi(),!1}catch{}finally{}if(n=ms(e,t,a,l),n!==null)return ut(n,e,l),Qf(n,t,l),!0}return!1}function Fs(e,t,n,l){if(l={lane:2,revertLane:Oc(),gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},Hi(e)){if(t)throw Error(r(479))}else t=ms(e,n,l,2),t!==null&&ut(t,e,2)}function Hi(e){var t=e.alternate;return e===ee||t!==null&&t===ee}function Vf(e,t){Ol=Mi=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Qf(e,t,n){if((n&4194048)!==0){var l=t.lanes;l&=e.pendingLanes,n|=l,t.lanes=n,Jr(e,n)}}var xa={readContext:Je,use:ji,useCallback:ze,useContext:ze,useEffect:ze,useImperativeHandle:ze,useLayoutEffect:ze,useInsertionEffect:ze,useMemo:ze,useReducer:ze,useRef:ze,useState:ze,useDebugValue:ze,useDeferredValue:ze,useTransition:ze,useSyncExternalStore:ze,useId:ze,useHostTransitionStatus:ze,useFormState:ze,useActionState:ze,useOptimistic:ze,useMemoCache:ze,useCacheRefresh:ze};xa.useEffectEvent=ze;var Zf={readContext:Je,use:ji,useCallback:function(e,t){return Ie().memoizedState=[e,t===void 0?null:t],e},useContext:Je,useEffect:Of,useImperativeHandle:function(e,t,n){n=n!=null?n.concat([e]):null,Bi(4194308,4,wf.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Bi(4194308,4,e,t)},useInsertionEffect:function(e,t){Bi(4,2,e,t)},useMemo:function(e,t){var n=Ie();t=t===void 0?null:t;var l=e();if(el){dn(!0);try{e()}finally{dn(!1)}}return n.memoizedState=[l,t],l},useReducer:function(e,t,n){var l=Ie();if(n!==void 0){var a=n(t);if(el){dn(!0);try{n(t)}finally{dn(!1)}}}else a=t;return l.memoizedState=l.baseState=a,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:a},l.queue=e,e=e.dispatch=Ay.bind(null,ee,e),[l.memoizedState,e]},useRef:function(e){var t=Ie();return e={current:e},t.memoizedState=e},useState:function(e){e=Vs(e);var t=e.queue,n=Gf.bind(null,ee,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:Ks,useDeferredValue:function(e,t){var n=Ie();return Js(n,e,t)},useTransition:function(){var e=Vs(!1);return e=Hf.bind(null,ee,e.queue,!0,!1),Ie().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var l=ee,a=Ie();if(ce){if(n===void 0)throw Error(r(407));n=n()}else{if(n=t(),Te===null)throw Error(r(349));(ue&127)!==0||df(l,t,n)}a.memoizedState=n;var s={value:n,getSnapshot:t};return a.queue=s,Of(pf.bind(null,l,s,e),[e]),l.flags|=2048,Ml(9,{destroy:void 0},mf.bind(null,l,s,n,t),null),n},useId:function(){var e=Ie(),t=Te.identifierPrefix;if(ce){var n=Ut,l=jt;n=(l&~(1<<32-rt(l)-1)).toString(32)+n,t="_"+t+"R_"+n,n=Di++,0<\/script>",s=s.removeChild(s.firstChild);break;case"select":s=typeof l.is=="string"?o.createElement("select",{is:l.is}):o.createElement("select"),l.multiple?s.multiple=!0:l.size&&(s.size=l.size);break;default:s=typeof l.is=="string"?o.createElement(a,{is:l.is}):o.createElement(a)}}s[Ze]=t,s[et]=l;e:for(o=t.child;o!==null;){if(o.tag===5||o.tag===6)s.appendChild(o.stateNode);else if(o.tag!==4&&o.tag!==27&&o.child!==null){o.child.return=o,o=o.child;continue}if(o===t)break e;for(;o.sibling===null;){if(o.return===null||o.return===t)break e;o=o.return}o.sibling.return=o.return,o=o.sibling}t.stateNode=s;e:switch(We(s,a,l),a){case"button":case"input":case"select":case"textarea":l=!!l.autoFocus;break e;case"img":l=!0;break e;default:l=!1}l&&It(t)}}return Re(t),fc(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==l&&It(t);else{if(typeof l!="string"&&t.stateNode===null)throw Error(r(166));if(e=le.current,_l(t)){if(e=t.stateNode,n=t.memoizedProps,l=null,a=Ke,a!==null)switch(a.tag){case 27:case 5:l=a.memoizedProps}e[Ze]=t,e=!!(e.nodeValue===n||l!==null&&l.suppressHydrationWarning===!0||fd(e.nodeValue,n)),e||gn(t,!0)}else e=au(e).createTextNode(l),e[Ze]=t,t.stateNode=e}return Re(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(l=_l(t),n!==null){if(e===null){if(!l)throw Error(r(318));if(e=t.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(r(557));e[Ze]=t}else Kn(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Re(t),e=!1}else n=xs(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(dt(t),t):(dt(t),null);if((t.flags&128)!==0)throw Error(r(558))}return Re(t),null;case 13:if(l=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(a=_l(t),l!==null&&l.dehydrated!==null){if(e===null){if(!a)throw Error(r(318));if(a=t.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(r(317));a[Ze]=t}else Kn(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Re(t),a=!1}else a=xs(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=a),a=!0;if(!a)return t.flags&256?(dt(t),t):(dt(t),null)}return dt(t),(t.flags&128)!==0?(t.lanes=n,t):(n=l!==null,e=e!==null&&e.memoizedState!==null,n&&(l=t.child,a=null,l.alternate!==null&&l.alternate.memoizedState!==null&&l.alternate.memoizedState.cachePool!==null&&(a=l.alternate.memoizedState.cachePool.pool),s=null,l.memoizedState!==null&&l.memoizedState.cachePool!==null&&(s=l.memoizedState.cachePool.pool),s!==a&&(l.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),Gi(t,t.updateQueue),Re(t),null);case 4:return De(),e===null&&wc(t.stateNode.containerInfo),Re(t),null;case 10:return $t(t.type),Re(t),null;case 19:if(B(we),l=t.memoizedState,l===null)return Re(t),null;if(a=(t.flags&128)!==0,s=l.rendering,s===null)if(a)Ea(l,!1);else{if(Me!==0||e!==null&&(e.flags&128)!==0)for(e=t.child;e!==null;){if(s=zi(e),s!==null){for(t.flags|=128,Ea(l,!1),e=s.updateQueue,t.updateQueue=e,Gi(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)Xo(n,e),n=n.sibling;return G(we,we.current&1|2),ce&&Kt(t,l.treeForkCount),t.child}e=e.sibling}l.tail!==null&&st()>Ji&&(t.flags|=128,a=!0,Ea(l,!1),t.lanes=4194304)}else{if(!a)if(e=zi(s),e!==null){if(t.flags|=128,a=!0,e=e.updateQueue,t.updateQueue=e,Gi(t,e),Ea(l,!0),l.tail===null&&l.tailMode==="hidden"&&!s.alternate&&!ce)return Re(t),null}else 2*st()-l.renderingStartTime>Ji&&n!==536870912&&(t.flags|=128,a=!0,Ea(l,!1),t.lanes=4194304);l.isBackwards?(s.sibling=t.child,t.child=s):(e=l.last,e!==null?e.sibling=s:t.child=s,l.last=s)}return l.tail!==null?(e=l.tail,l.rendering=e,l.tail=e.sibling,l.renderingStartTime=st(),e.sibling=null,n=we.current,G(we,a?n&1|2:n&1),ce&&Kt(t,l.treeForkCount),e):(Re(t),null);case 22:case 23:return dt(t),js(),l=t.memoizedState!==null,e!==null?e.memoizedState!==null!==l&&(t.flags|=8192):l&&(t.flags|=8192),l?(n&536870912)!==0&&(t.flags&128)===0&&(Re(t),t.subtreeFlags&6&&(t.flags|=8192)):Re(t),n=t.updateQueue,n!==null&&Gi(t,n.retryQueue),n=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),l=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(l=t.memoizedState.cachePool.pool),l!==n&&(t.flags|=2048),e!==null&&B(Wn),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),$t(Be),Re(t),null;case 25:return null;case 30:return null}throw Error(r(156,t.tag))}function zy(e,t){switch(bs(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return $t(Be),De(),e=t.flags,(e&65536)!==0&&(e&128)===0?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return ei(t),null;case 31:if(t.memoizedState!==null){if(dt(t),t.alternate===null)throw Error(r(340));Kn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(dt(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(r(340));Kn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return B(we),null;case 4:return De(),null;case 10:return $t(t.type),null;case 22:case 23:return dt(t),js(),e!==null&&B(Wn),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return $t(Be),null;case 25:return null;default:return null}}function yh(e,t){switch(bs(t),t.tag){case 3:$t(Be),De();break;case 26:case 27:case 5:ei(t);break;case 4:De();break;case 31:t.memoizedState!==null&&dt(t);break;case 13:dt(t);break;case 19:B(we);break;case 10:$t(t.type);break;case 22:case 23:dt(t),js(),e!==null&&B(Wn);break;case 24:$t(Be)}}function Ta(e,t){try{var n=t.updateQueue,l=n!==null?n.lastEffect:null;if(l!==null){var a=l.next;n=a;do{if((n.tag&e)===e){l=void 0;var s=n.create,o=n.inst;l=s(),o.destroy=l}n=n.next}while(n!==a)}}catch(h){ye(t,t.return,h)}}function An(e,t,n){try{var l=t.updateQueue,a=l!==null?l.lastEffect:null;if(a!==null){var s=a.next;l=s;do{if((l.tag&e)===e){var o=l.inst,h=o.destroy;if(h!==void 0){o.destroy=void 0,a=t;var g=n,N=h;try{N()}catch(D){ye(a,g,D)}}}l=l.next}while(l!==s)}}catch(D){ye(t,t.return,D)}}function vh(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{sf(t,n)}catch(l){ye(e,e.return,l)}}}function gh(e,t,n){n.props=tl(e.type,e.memoizedProps),n.state=e.memoizedState;try{n.componentWillUnmount()}catch(l){ye(e,t,l)}}function Aa(e,t){try{var n=e.ref;if(n!==null){switch(e.tag){case 26:case 27:case 5:var l=e.stateNode;break;case 30:l=e.stateNode;break;default:l=e.stateNode}typeof n=="function"?e.refCleanup=n(l):n.current=l}}catch(a){ye(e,t,a)}}function Bt(e,t){var n=e.ref,l=e.refCleanup;if(n!==null)if(typeof l=="function")try{l()}catch(a){ye(e,t,a)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n=="function")try{n(null)}catch(a){ye(e,t,a)}else n.current=null}function bh(e){var t=e.type,n=e.memoizedProps,l=e.stateNode;try{e:switch(t){case"button":case"input":case"select":case"textarea":n.autoFocus&&l.focus();break e;case"img":n.src?l.src=n.src:n.srcSet&&(l.srcset=n.srcSet)}}catch(a){ye(e,e.return,a)}}function hc(e,t,n){try{var l=e.stateNode;Py(l,e.type,n,t),l[et]=t}catch(a){ye(e,e.return,a)}}function Sh(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&Dn(e.type)||e.tag===4}function dc(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||Sh(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&&Dn(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 mc(e,t,n){var l=e.tag;if(l===5||l===6)e=e.stateNode,t?(n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n).insertBefore(e,t):(t=n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n,t.appendChild(e),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=Vt));else if(l!==4&&(l===27&&Dn(e.type)&&(n=e.stateNode,t=null),e=e.child,e!==null))for(mc(e,t,n),e=e.sibling;e!==null;)mc(e,t,n),e=e.sibling}function Vi(e,t,n){var l=e.tag;if(l===5||l===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(l!==4&&(l===27&&Dn(e.type)&&(n=e.stateNode),e=e.child,e!==null))for(Vi(e,t,n),e=e.sibling;e!==null;)Vi(e,t,n),e=e.sibling}function xh(e){var t=e.stateNode,n=e.memoizedProps;try{for(var l=e.type,a=t.attributes;a.length;)t.removeAttributeNode(a[0]);We(t,l,n),t[Ze]=e,t[et]=n}catch(s){ye(e,e.return,s)}}var en=!1,qe=!1,pc=!1,_h=typeof WeakSet=="function"?WeakSet:Set,Qe=null;function My(e,t){if(e=e.containerInfo,Bc=fu,e=wo(e),cs(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var l=n.getSelection&&n.getSelection();if(l&&l.rangeCount!==0){n=l.anchorNode;var a=l.anchorOffset,s=l.focusNode;l=l.focusOffset;try{n.nodeType,s.nodeType}catch{n=null;break e}var o=0,h=-1,g=-1,N=0,D=0,U=e,O=null;t:for(;;){for(var M;U!==n||a!==0&&U.nodeType!==3||(h=o+a),U!==s||l!==0&&U.nodeType!==3||(g=o+l),U.nodeType===3&&(o+=U.nodeValue.length),(M=U.firstChild)!==null;)O=U,U=M;for(;;){if(U===e)break t;if(O===n&&++N===a&&(h=o),O===s&&++D===l&&(g=o),(M=U.nextSibling)!==null)break;U=O,O=U.parentNode}U=M}n=h===-1||g===-1?null:{start:h,end:g}}else n=null}n=n||{start:0,end:0}}else n=null;for(Lc={focusedElem:e,selectionRange:n},fu=!1,Qe=t;Qe!==null;)if(t=Qe,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,Qe=e;else for(;Qe!==null;){switch(t=Qe,s=t.alternate,e=t.flags,t.tag){case 0:if((e&4)!==0&&(e=t.updateQueue,e=e!==null?e.events:null,e!==null))for(n=0;n title"))),We(s,l,n),s[Ze]=e,Ve(s),l=s;break e;case"link":var o=Nd("link","href",a).get(l+(n.href||""));if(o){for(var h=0;hxe&&(o=xe,xe=$,$=o);var A=Mo(h,$),x=Mo(h,xe);if(A&&x&&(M.rangeCount!==1||M.anchorNode!==A.node||M.anchorOffset!==A.offset||M.focusNode!==x.node||M.focusOffset!==x.offset)){var R=U.createRange();R.setStart(A.node,A.offset),M.removeAllRanges(),$>xe?(M.addRange(R),M.extend(x.node,x.offset)):(R.setEnd(x.node,x.offset),M.addRange(R))}}}}for(U=[],M=h;M=M.parentNode;)M.nodeType===1&&U.push({element:M,left:M.scrollLeft,top:M.scrollTop});for(typeof h.focus=="function"&&h.focus(),h=0;hn?32:n,w.T=null,n=_c,_c=null;var s=On,o=un;if(Xe=0,Bl=On=null,un=0,(de&6)!==0)throw Error(r(331));var h=de;if(de|=4,wh(s.current),zh(s,s.current,o,n),de=h,Ma(0,!1),ct&&typeof ct.onPostCommitFiberRoot=="function")try{ct.onPostCommitFiberRoot($l,s)}catch{}return!0}finally{X.p=a,w.T=l,Fh(e,t)}}function Ih(e,t,n){t=St(n,t),t=tc(e.stateNode,t,2),e=_n(e,t,2),e!==null&&(Fl(e,2),Lt(e))}function ye(e,t,n){if(e.tag===3)Ih(e,e,n);else for(;t!==null;){if(t.tag===3){Ih(t,e,n);break}else if(t.tag===1){var l=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof l.componentDidCatch=="function"&&(Nn===null||!Nn.has(l))){e=St(n,e),n=eh(2),l=_n(t,n,2),l!==null&&(th(n,l,t,e),Fl(l,2),Lt(l));break}}t=t.return}}function Cc(e,t,n){var l=e.pingCache;if(l===null){l=e.pingCache=new jy;var a=new Set;l.set(t,a)}else a=l.get(t),a===void 0&&(a=new Set,l.set(t,a));a.has(n)||(gc=!0,a.add(n),e=qy.bind(null,e,t,n),t.then(e,e))}function qy(e,t,n){var l=e.pingCache;l!==null&&l.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,Te===e&&(ue&n)===n&&(Me===4||Me===3&&(ue&62914560)===ue&&300>st()-Ki?(de&2)===0&&Ll(e,0):bc|=n,Ul===ue&&(Ul=0)),Lt(e)}function ed(e,t){t===0&&(t=Zr()),e=Qn(e,t),e!==null&&(Fl(e,t),Lt(e))}function Yy(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),ed(e,n)}function ky(e,t){var n=0;switch(e.tag){case 31:case 13:var l=e.stateNode,a=e.memoizedState;a!==null&&(n=a.retryLane);break;case 19:l=e.stateNode;break;case 22:l=e.stateNode._retryCache;break;default:throw Error(r(314))}l!==null&&l.delete(t),ed(e,n)}function Xy(e,t){return qu(e,t)}var eu=null,ql=null,Rc=!1,tu=!1,Nc=!1,Mn=0;function Lt(e){e!==ql&&e.next===null&&(ql===null?eu=ql=e:ql=ql.next=e),tu=!0,Rc||(Rc=!0,Vy())}function Ma(e,t){if(!Nc&&tu){Nc=!0;do for(var n=!1,l=eu;l!==null;){if(e!==0){var a=l.pendingLanes;if(a===0)var s=0;else{var o=l.suspendedLanes,h=l.pingedLanes;s=(1<<31-rt(42|e)+1)-1,s&=a&~(o&~h),s=s&201326741?s&201326741|1:s?s|2:0}s!==0&&(n=!0,ad(l,s))}else s=ue,s=ii(l,l===Te?s:0,l.cancelPendingCommit!==null||l.timeoutHandle!==-1),(s&3)===0||Wl(l,s)||(n=!0,ad(l,s));l=l.next}while(n);Nc=!1}}function Gy(){td()}function td(){tu=Rc=!1;var e=0;Mn!==0&&e0()&&(e=Mn);for(var t=st(),n=null,l=eu;l!==null;){var a=l.next,s=nd(l,t);s===0?(l.next=null,n===null?eu=a:n.next=a,a===null&&(ql=n)):(n=l,(e!==0||(s&3)!==0)&&(tu=!0)),l=a}Xe!==0&&Xe!==5||Ma(e),Mn!==0&&(Mn=0)}function nd(e,t){for(var n=e.suspendedLanes,l=e.pingedLanes,a=e.expirationTimes,s=e.pendingLanes&-62914561;0h)break;var D=g.transferSize,U=g.initiatorType;D&&hd(U)&&(g=g.responseEnd,o+=D*(g"u"?null:document;function Td(e,t,n){var l=Yl;if(l&&typeof t=="string"&&t){var a=gt(t);a='link[rel="'+e+'"][href="'+a+'"]',typeof n=="string"&&(a+='[crossorigin="'+n+'"]'),Ed.has(a)||(Ed.add(a),e={rel:e,crossOrigin:n,href:t},l.querySelector(a)===null&&(t=l.createElement("link"),We(t,"link",e),Ve(t),l.head.appendChild(t)))}}function r0(e){sn.D(e),Td("dns-prefetch",e,null)}function o0(e,t){sn.C(e,t),Td("preconnect",e,t)}function f0(e,t,n){sn.L(e,t,n);var l=Yl;if(l&&e&&t){var a='link[rel="preload"][as="'+gt(t)+'"]';t==="image"&&n&&n.imageSrcSet?(a+='[imagesrcset="'+gt(n.imageSrcSet)+'"]',typeof n.imageSizes=="string"&&(a+='[imagesizes="'+gt(n.imageSizes)+'"]')):a+='[href="'+gt(e)+'"]';var s=a;switch(t){case"style":s=kl(e);break;case"script":s=Xl(e)}Ct.has(s)||(e=S({rel:"preload",href:t==="image"&&n&&n.imageSrcSet?void 0:e,as:t},n),Ct.set(s,e),l.querySelector(a)!==null||t==="style"&&l.querySelector(Ua(s))||t==="script"&&l.querySelector(Ba(s))||(t=l.createElement("link"),We(t,"link",e),Ve(t),l.head.appendChild(t)))}}function h0(e,t){sn.m(e,t);var n=Yl;if(n&&e){var l=t&&typeof t.as=="string"?t.as:"script",a='link[rel="modulepreload"][as="'+gt(l)+'"][href="'+gt(e)+'"]',s=a;switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":s=Xl(e)}if(!Ct.has(s)&&(e=S({rel:"modulepreload",href:e},t),Ct.set(s,e),n.querySelector(a)===null)){switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(n.querySelector(Ba(s)))return}l=n.createElement("link"),We(l,"link",e),Ve(l),n.head.appendChild(l)}}}function d0(e,t,n){sn.S(e,t,n);var l=Yl;if(l&&e){var a=rl(l).hoistableStyles,s=kl(e);t=t||"default";var o=a.get(s);if(!o){var h={loading:0,preload:null};if(o=l.querySelector(Ua(s)))h.loading=5;else{e=S({rel:"stylesheet",href:e,"data-precedence":t},n),(n=Ct.get(s))&&Vc(e,n);var g=o=l.createElement("link");Ve(g),We(g,"link",e),g._p=new Promise(function(N,D){g.onload=N,g.onerror=D}),g.addEventListener("load",function(){h.loading|=1}),g.addEventListener("error",function(){h.loading|=2}),h.loading|=4,uu(o,t,l)}o={type:"stylesheet",instance:o,count:1,state:h},a.set(s,o)}}}function m0(e,t){sn.X(e,t);var n=Yl;if(n&&e){var l=rl(n).hoistableScripts,a=Xl(e),s=l.get(a);s||(s=n.querySelector(Ba(a)),s||(e=S({src:e,async:!0},t),(t=Ct.get(a))&&Qc(e,t),s=n.createElement("script"),Ve(s),We(s,"link",e),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function p0(e,t){sn.M(e,t);var n=Yl;if(n&&e){var l=rl(n).hoistableScripts,a=Xl(e),s=l.get(a);s||(s=n.querySelector(Ba(a)),s||(e=S({src:e,async:!0,type:"module"},t),(t=Ct.get(a))&&Qc(e,t),s=n.createElement("script"),Ve(s),We(s,"link",e),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function Ad(e,t,n,l){var a=(a=le.current)?iu(a):null;if(!a)throw Error(r(446));switch(e){case"meta":case"title":return null;case"style":return typeof n.precedence=="string"&&typeof n.href=="string"?(t=kl(n.href),n=rl(a).hoistableStyles,l=n.get(t),l||(l={type:"style",instance:null,count:0,state:null},n.set(t,l)),l):{type:"void",instance:null,count:0,state:null};case"link":if(n.rel==="stylesheet"&&typeof n.href=="string"&&typeof n.precedence=="string"){e=kl(n.href);var s=rl(a).hoistableStyles,o=s.get(e);if(o||(a=a.ownerDocument||a,o={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},s.set(e,o),(s=a.querySelector(Ua(e)))&&!s._p&&(o.instance=s,o.state.loading=5),Ct.has(e)||(n={rel:"preload",as:"style",href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},Ct.set(e,n),s||y0(a,e,n,o.state))),t&&l===null)throw Error(r(528,""));return o}if(t&&l!==null)throw Error(r(529,""));return null;case"script":return t=n.async,n=n.src,typeof n=="string"&&t&&typeof t!="function"&&typeof t!="symbol"?(t=Xl(n),n=rl(a).hoistableScripts,l=n.get(t),l||(l={type:"script",instance:null,count:0,state:null},n.set(t,l)),l):{type:"void",instance:null,count:0,state:null};default:throw Error(r(444,e))}}function kl(e){return'href="'+gt(e)+'"'}function Ua(e){return'link[rel="stylesheet"]['+e+"]"}function Cd(e){return S({},e,{"data-precedence":e.precedence,precedence:null})}function y0(e,t,n,l){e.querySelector('link[rel="preload"][as="style"]['+t+"]")?l.loading=1:(t=e.createElement("link"),l.preload=t,t.addEventListener("load",function(){return l.loading|=1}),t.addEventListener("error",function(){return l.loading|=2}),We(t,"link",n),Ve(t),e.head.appendChild(t))}function Xl(e){return'[src="'+gt(e)+'"]'}function Ba(e){return"script[async]"+e}function Rd(e,t,n){if(t.count++,t.instance===null)switch(t.type){case"style":var l=e.querySelector('style[data-href~="'+gt(n.href)+'"]');if(l)return t.instance=l,Ve(l),l;var a=S({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return l=(e.ownerDocument||e).createElement("style"),Ve(l),We(l,"style",a),uu(l,n.precedence,e),t.instance=l;case"stylesheet":a=kl(n.href);var s=e.querySelector(Ua(a));if(s)return t.state.loading|=4,t.instance=s,Ve(s),s;l=Cd(n),(a=Ct.get(a))&&Vc(l,a),s=(e.ownerDocument||e).createElement("link"),Ve(s);var o=s;return o._p=new Promise(function(h,g){o.onload=h,o.onerror=g}),We(s,"link",l),t.state.loading|=4,uu(s,n.precedence,e),t.instance=s;case"script":return s=Xl(n.src),(a=e.querySelector(Ba(s)))?(t.instance=a,Ve(a),a):(l=n,(a=Ct.get(s))&&(l=S({},n),Qc(l,a)),e=e.ownerDocument||e,a=e.createElement("script"),Ve(a),We(a,"link",l),e.head.appendChild(a),t.instance=a);case"void":return null;default:throw Error(r(443,t.type))}else t.type==="stylesheet"&&(t.state.loading&4)===0&&(l=t.instance,t.state.loading|=4,uu(l,n.precedence,e));return t.instance}function uu(e,t,n){for(var l=n.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=l.length?l[l.length-1]:null,s=a,o=0;o title"):null)}function v0(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case"meta":case"title":return!0;case"style":if(typeof t.precedence!="string"||typeof t.href!="string"||t.href==="")break;return!0;case"link":if(typeof t.rel!="string"||typeof t.href!="string"||t.href===""||t.onLoad||t.onError)break;switch(t.rel){case"stylesheet":return e=t.disabled,typeof t.precedence=="string"&&e==null;default:return!0}case"script":if(t.async&&typeof t.async!="function"&&typeof t.async!="symbol"&&!t.onLoad&&!t.onError&&t.src&&typeof t.src=="string")return!0}return!1}function zd(e){return!(e.type==="stylesheet"&&(e.state.loading&3)===0)}function g0(e,t,n,l){if(n.type==="stylesheet"&&(typeof l.media!="string"||matchMedia(l.media).matches!==!1)&&(n.state.loading&4)===0){if(n.instance===null){var a=kl(l.href),s=t.querySelector(Ua(a));if(s){t=s._p,t!==null&&typeof t=="object"&&typeof t.then=="function"&&(e.count++,e=cu.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=s,Ve(s);return}s=t.ownerDocument||t,l=Cd(l),(a=Ct.get(a))&&Vc(l,a),s=s.createElement("link"),Ve(s);var o=s;o._p=new Promise(function(h,g){o.onload=h,o.onerror=g}),We(s,"link",l),n.instance=s}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&(n.state.loading&3)===0&&(e.count++,n=cu.bind(e),t.addEventListener("load",n),t.addEventListener("error",n))}}var Zc=0;function b0(e,t){return e.stylesheets&&e.count===0&&ou(e,e.stylesheets),0Zc?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(l),clearTimeout(a)}}:null}function cu(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)ou(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var ru=null;function ou(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,ru=new Map,t.forEach(S0,e),ru=null,cu.call(e))}function S0(e,t){if(!(t.state.loading&4)){var n=ru.get(e);if(n)var l=n.get(null);else{n=new Map,ru.set(e,n);for(var a=e.querySelectorAll("link[data-precedence],style[data-precedence]"),s=0;s"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(u)}catch(i){console.error(i)}}return u(),tr.exports=B0(),tr.exports}var H0=L0();var em="popstate";function q0(u={}){function i(r,f){let{pathname:d,search:m,hash:b}=r.location;return hr("",{pathname:d,search:m,hash:b},f.state&&f.state.usr||null,f.state&&f.state.key||"default")}function c(r,f){return typeof f=="string"?f:Wa(f)}return k0(i,c,null,u)}function Oe(u,i){if(u===!1||u===null||typeof u>"u")throw new Error(i)}function wt(u,i){if(!u){typeof console<"u"&&console.warn(i);try{throw new Error(i)}catch{}}}function Y0(){return Math.random().toString(36).substring(2,10)}function tm(u,i){return{usr:u.state,key:u.key,idx:i}}function hr(u,i,c=null,r){return{pathname:typeof u=="string"?u:u.pathname,search:"",hash:"",...typeof i=="string"?Ql(i):i,state:c,key:i&&i.key||r||Y0()}}function Wa({pathname:u="/",search:i="",hash:c=""}){return i&&i!=="?"&&(u+=i.charAt(0)==="?"?i:"?"+i),c&&c!=="#"&&(u+=c.charAt(0)==="#"?c:"#"+c),u}function Ql(u){let i={};if(u){let c=u.indexOf("#");c>=0&&(i.hash=u.substring(c),u=u.substring(0,c));let r=u.indexOf("?");r>=0&&(i.search=u.substring(r),u=u.substring(0,r)),u&&(i.pathname=u)}return i}function k0(u,i,c,r={}){let{window:f=document.defaultView,v5Compat:d=!1}=r,m=f.history,b="POP",p=null,y=E();y==null&&(y=0,m.replaceState({...m.state,idx:y},""));function E(){return(m.state||{idx:null}).idx}function S(){b="POP";let q=E(),L=q==null?null:q-y;y=q,p&&p({action:b,location:k.location,delta:L})}function C(q,L){b="PUSH";let Y=hr(k.location,q,L);y=E()+1;let V=tm(Y,y),ne=k.createHref(Y);try{m.pushState(V,"",ne)}catch(he){if(he instanceof DOMException&&he.name==="DataCloneError")throw he;f.location.assign(ne)}d&&p&&p({action:b,location:k.location,delta:1})}function z(q,L){b="REPLACE";let Y=hr(k.location,q,L);y=E();let V=tm(Y,y),ne=k.createHref(Y);m.replaceState(V,"",ne),d&&p&&p({action:b,location:k.location,delta:0})}function H(q){return X0(q)}let k={get action(){return b},get location(){return u(f,m)},listen(q){if(p)throw new Error("A history only accepts one active listener");return f.addEventListener(em,S),p=q,()=>{f.removeEventListener(em,S),p=null}},createHref(q){return i(f,q)},createURL:H,encodeLocation(q){let L=H(q);return{pathname:L.pathname,search:L.search,hash:L.hash}},push:C,replace:z,go(q){return m.go(q)}};return k}function X0(u,i=!1){let c="http://localhost";typeof window<"u"&&(c=window.location.origin!=="null"?window.location.origin:window.location.href),Oe(c,"No window.location.(origin|href) available to create URL");let r=typeof u=="string"?u:Wa(u);return r=r.replace(/ $/,"%20"),!i&&r.startsWith("//")&&(r=c+r),new URL(r,c)}function Sm(u,i,c="/"){return G0(u,i,c,!1)}function G0(u,i,c,r){let f=typeof i=="string"?Ql(i):i,d=on(f.pathname||"/",c);if(d==null)return null;let m=xm(u);V0(m);let b=null;for(let p=0;b==null&&p{let E={relativePath:y===void 0?m.path||"":y,caseSensitive:m.caseSensitive===!0,childrenIndex:b,route:m};if(E.relativePath.startsWith("/")){if(!E.relativePath.startsWith(r)&&p)return;Oe(E.relativePath.startsWith(r),`Absolute route path "${E.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),E.relativePath=E.relativePath.slice(r.length)}let S=rn([r,E.relativePath]),C=c.concat(E);m.children&&m.children.length>0&&(Oe(m.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${S}".`),xm(m.children,i,C,S,p)),!(m.path==null&&!m.index)&&i.push({path:S,score:F0(S,m.index),routesMeta:C})};return u.forEach((m,b)=>{if(m.path===""||!m.path?.includes("?"))d(m,b);else for(let p of _m(m.path))d(m,b,!0,p)}),i}function _m(u){let i=u.split("/");if(i.length===0)return[];let[c,...r]=i,f=c.endsWith("?"),d=c.replace(/\?$/,"");if(r.length===0)return f?[d,""]:[d];let m=_m(r.join("/")),b=[];return b.push(...m.map(p=>p===""?d:[d,p].join("/"))),f&&b.push(...m),b.map(p=>u.startsWith("/")&&p===""?"/":p)}function V0(u){u.sort((i,c)=>i.score!==c.score?c.score-i.score:P0(i.routesMeta.map(r=>r.childrenIndex),c.routesMeta.map(r=>r.childrenIndex)))}var Q0=/^:[\w-]+$/,Z0=3,K0=2,J0=1,$0=10,W0=-2,nm=u=>u==="*";function F0(u,i){let c=u.split("/"),r=c.length;return c.some(nm)&&(r+=W0),i&&(r+=K0),c.filter(f=>!nm(f)).reduce((f,d)=>f+(Q0.test(d)?Z0:d===""?J0:$0),r)}function P0(u,i){return u.length===i.length&&u.slice(0,-1).every((r,f)=>r===i[f])?u[u.length-1]-i[i.length-1]:0}function I0(u,i,c=!1){let{routesMeta:r}=u,f={},d="/",m=[];for(let b=0;b{if(E==="*"){let H=b[C]||"";m=d.slice(0,d.length-H.length).replace(/(.)\/+$/,"$1")}const z=b[C];return S&&!z?y[E]=void 0:y[E]=(z||"").replace(/%2F/g,"/"),y},{}),pathname:d,pathnameBase:m,pattern:u}}function ev(u,i=!1,c=!0){wt(u==="*"||!u.endsWith("*")||u.endsWith("/*"),`Route path "${u}" will be treated as if it were "${u.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${u.replace(/\*$/,"/*")}".`);let r=[],f="^"+u.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(m,b,p)=>(r.push({paramName:b,isOptional:p!=null}),p?"/?([^\\/]+)?":"/([^\\/]+)")).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return u.endsWith("*")?(r.push({paramName:"*"}),f+=u==="*"||u==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):c?f+="\\/*$":u!==""&&u!=="/"&&(f+="(?:(?=\\/|$))"),[new RegExp(f,i?void 0:"i"),r]}function tv(u){try{return u.split("/").map(i=>decodeURIComponent(i).replace(/\//g,"%2F")).join("/")}catch(i){return wt(!1,`The URL path "${u}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${i}).`),u}}function on(u,i){if(i==="/")return u;if(!u.toLowerCase().startsWith(i.toLowerCase()))return null;let c=i.endsWith("/")?i.length-1:i.length,r=u.charAt(c);return r&&r!=="/"?null:u.slice(c)||"/"}var nv=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,lv=u=>nv.test(u);function av(u,i="/"){let{pathname:c,search:r="",hash:f=""}=typeof u=="string"?Ql(u):u,d;if(c)if(lv(c))d=c;else{if(c.includes("//")){let m=c;c=c.replace(/\/\/+/g,"/"),wt(!1,`Pathnames cannot have embedded double slashes - normalizing ${m} -> ${c}`)}c.startsWith("/")?d=lm(c.substring(1),"/"):d=lm(c,i)}else d=i;return{pathname:d,search:sv(r),hash:cv(f)}}function lm(u,i){let c=i.replace(/\/+$/,"").split("/");return u.split("/").forEach(f=>{f===".."?c.length>1&&c.pop():f!=="."&&c.push(f)}),c.length>1?c.join("/"):"/"}function ir(u,i,c,r){return`Cannot include a '${u}' character in a manually specified \`to.${i}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${c}\` field. Alternatively you may provide the full path as a string in and the router will parse it for you.`}function iv(u){return u.filter((i,c)=>c===0||i.route.path&&i.route.path.length>0)}function Em(u){let i=iv(u);return i.map((c,r)=>r===i.length-1?c.pathname:c.pathnameBase)}function Tm(u,i,c,r=!1){let f;typeof u=="string"?f=Ql(u):(f={...u},Oe(!f.pathname||!f.pathname.includes("?"),ir("?","pathname","search",f)),Oe(!f.pathname||!f.pathname.includes("#"),ir("#","pathname","hash",f)),Oe(!f.search||!f.search.includes("#"),ir("#","search","hash",f)));let d=u===""||f.pathname==="",m=d?"/":f.pathname,b;if(m==null)b=c;else{let S=i.length-1;if(!r&&m.startsWith("..")){let C=m.split("/");for(;C[0]==="..";)C.shift(),S-=1;f.pathname=C.join("/")}b=S>=0?i[S]:"/"}let p=av(f,b),y=m&&m!=="/"&&m.endsWith("/"),E=(d||m===".")&&c.endsWith("/");return!p.pathname.endsWith("/")&&(y||E)&&(p.pathname+="/"),p}var rn=u=>u.join("/").replace(/\/\/+/g,"/"),uv=u=>u.replace(/\/+$/,"").replace(/^\/*/,"/"),sv=u=>!u||u==="?"?"":u.startsWith("?")?u:"?"+u,cv=u=>!u||u==="#"?"":u.startsWith("#")?u:"#"+u;function rv(u){return u!=null&&typeof u.status=="number"&&typeof u.statusText=="string"&&typeof u.internal=="boolean"&&"data"in u}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var Am=["POST","PUT","PATCH","DELETE"];new Set(Am);var ov=["GET",...Am];new Set(ov);var Zl=T.createContext(null);Zl.displayName="DataRouter";var Ou=T.createContext(null);Ou.displayName="DataRouterState";T.createContext(!1);var Cm=T.createContext({isTransitioning:!1});Cm.displayName="ViewTransition";var fv=T.createContext(new Map);fv.displayName="Fetchers";var hv=T.createContext(null);hv.displayName="Await";var Yt=T.createContext(null);Yt.displayName="Navigation";var Fa=T.createContext(null);Fa.displayName="Location";var fn=T.createContext({outlet:null,matches:[],isDataRoute:!1});fn.displayName="Route";var xr=T.createContext(null);xr.displayName="RouteError";function dv(u,{relative:i}={}){Oe(Pa(),"useHref() may be used only in the context of a component.");let{basename:c,navigator:r}=T.useContext(Yt),{hash:f,pathname:d,search:m}=Ia(u,{relative:i}),b=d;return c!=="/"&&(b=d==="/"?c:rn([c,d])),r.createHref({pathname:b,search:m,hash:f})}function Pa(){return T.useContext(Fa)!=null}function il(){return Oe(Pa(),"useLocation() may be used only in the context of a component."),T.useContext(Fa).location}var Rm="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function Nm(u){T.useContext(Yt).static||T.useLayoutEffect(u)}function mv(){let{isDataRoute:u}=T.useContext(fn);return u?Rv():pv()}function pv(){Oe(Pa(),"useNavigate() may be used only in the context of a component.");let u=T.useContext(Zl),{basename:i,navigator:c}=T.useContext(Yt),{matches:r}=T.useContext(fn),{pathname:f}=il(),d=JSON.stringify(Em(r)),m=T.useRef(!1);return Nm(()=>{m.current=!0}),T.useCallback((p,y={})=>{if(wt(m.current,Rm),!m.current)return;if(typeof p=="number"){c.go(p);return}let E=Tm(p,JSON.parse(d),f,y.relative==="path");u==null&&i!=="/"&&(E.pathname=E.pathname==="/"?i:rn([i,E.pathname])),(y.replace?c.replace:c.push)(E,y.state,y)},[i,c,d,f,u])}T.createContext(null);function Ia(u,{relative:i}={}){let{matches:c}=T.useContext(fn),{pathname:r}=il(),f=JSON.stringify(Em(c));return T.useMemo(()=>Tm(u,JSON.parse(f),r,i==="path"),[u,f,r,i])}function yv(u,i){return Om(u,i)}function Om(u,i,c,r,f){Oe(Pa(),"useRoutes() may be used only in the context of a component.");let{navigator:d}=T.useContext(Yt),{matches:m}=T.useContext(fn),b=m[m.length-1],p=b?b.params:{},y=b?b.pathname:"/",E=b?b.pathnameBase:"/",S=b&&b.route;{let Y=S&&S.path||"";zm(y,!S||Y.endsWith("*")||Y.endsWith("*?"),`You rendered descendant (or called \`useRoutes()\`) at "${y}" (under ) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render. +`+l.stack}}var Hu=Object.prototype.hasOwnProperty,qu=u.unstable_scheduleCallback,Yu=u.unstable_cancelCallback,sp=u.unstable_shouldYield,cp=u.unstable_requestPaint,st=u.unstable_now,rp=u.unstable_getCurrentPriorityLevel,Gr=u.unstable_ImmediatePriority,Vr=u.unstable_UserBlockingPriority,ti=u.unstable_NormalPriority,op=u.unstable_LowPriority,Qr=u.unstable_IdlePriority,fp=u.log,hp=u.unstable_setDisableYieldValue,$l=null,ct=null;function dn(e){if(typeof fp=="function"&&hp(e),ct&&typeof ct.setStrictMode=="function")try{ct.setStrictMode($l,e)}catch{}}var rt=Math.clz32?Math.clz32:pp,dp=Math.log,mp=Math.LN2;function pp(e){return e>>>=0,e===0?32:31-(dp(e)/mp|0)|0}var ni=256,li=262144,ai=4194304;function Yn(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function ii(e,t,n){var l=e.pendingLanes;if(l===0)return 0;var a=0,s=e.suspendedLanes,o=e.pingedLanes;e=e.warmLanes;var d=l&134217727;return d!==0?(l=d&~s,l!==0?a=Yn(l):(o&=d,o!==0?a=Yn(o):n||(n=d&~e,n!==0&&(a=Yn(n))))):(d=l&~s,d!==0?a=Yn(d):o!==0?a=Yn(o):n||(n=l&~e,n!==0&&(a=Yn(n)))),a===0?0:t!==0&&t!==a&&(t&s)===0&&(s=a&-a,n=t&-t,s>=n||s===32&&(n&4194048)!==0)?t:a}function Wl(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function yp(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Zr(){var e=ai;return ai<<=1,(ai&62914560)===0&&(ai=4194304),e}function ku(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function Fl(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function vp(e,t,n,l,a,s){var o=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var d=e.entanglements,g=e.expirationTimes,N=e.hiddenUpdates;for(n=o&~n;0"u")return null;try{return e.activeElement||e.body}catch{return e.body}}var Ep=/[\n"\\]/g;function gt(e){return e.replace(Ep,function(t){return"\\"+t.charCodeAt(0).toString(16)+" "})}function Ku(e,t,n,l,a,s,o,d){e.name="",o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"?e.type=o:e.removeAttribute("type"),t!=null?o==="number"?(t===0&&e.value===""||e.value!=t)&&(e.value=""+vt(t)):e.value!==""+vt(t)&&(e.value=""+vt(t)):o!=="submit"&&o!=="reset"||e.removeAttribute("value"),t!=null?Ju(e,o,vt(t)):n!=null?Ju(e,o,vt(n)):l!=null&&e.removeAttribute("value"),a==null&&s!=null&&(e.defaultChecked=!!s),a!=null&&(e.checked=a&&typeof a!="function"&&typeof a!="symbol"),d!=null&&typeof d!="function"&&typeof d!="symbol"&&typeof d!="boolean"?e.name=""+vt(d):e.removeAttribute("name")}function io(e,t,n,l,a,s,o,d){if(s!=null&&typeof s!="function"&&typeof s!="symbol"&&typeof s!="boolean"&&(e.type=s),t!=null||n!=null){if(!(s!=="submit"&&s!=="reset"||t!=null)){Zu(e);return}n=n!=null?""+vt(n):"",t=t!=null?""+vt(t):n,d||t===e.value||(e.value=t),e.defaultValue=t}l=l??a,l=typeof l!="function"&&typeof l!="symbol"&&!!l,e.checked=d?e.checked:!!l,e.defaultChecked=!!l,o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"&&(e.name=o),Zu(e)}function Ju(e,t,n){t==="number"&&ci(e.ownerDocument)===e||e.defaultValue===""+n||(e.defaultValue=""+n)}function fl(e,t,n,l){if(e=e.options,t){t={};for(var a=0;a"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Iu=!1;if(Qt)try{var ta={};Object.defineProperty(ta,"passive",{get:function(){Iu=!0}}),window.addEventListener("test",ta,ta),window.removeEventListener("test",ta,ta)}catch{Iu=!1}var pn=null,es=null,oi=null;function ho(){if(oi)return oi;var e,t=es,n=t.length,l,a="value"in pn?pn.value:pn.textContent,s=a.length;for(e=0;e=aa),bo=" ",So=!1;function xo(e,t){switch(e){case"keyup":return Fp.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function _o(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var pl=!1;function Ip(e,t){switch(e){case"compositionend":return _o(t);case"keypress":return t.which!==32?null:(So=!0,bo);case"textInput":return e=t.data,e===bo&&So?null:e;default:return null}}function ey(e,t){if(pl)return e==="compositionend"||!is&&xo(e,t)?(e=ho(),oi=es=pn=null,pl=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=l}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=zo(n)}}function Do(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Do(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function wo(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=ci(e.document);t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=ci(e.document)}return t}function cs(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}var cy=Qt&&"documentMode"in document&&11>=document.documentMode,yl=null,rs=null,ca=null,os=!1;function jo(e,t,n){var l=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;os||yl==null||yl!==ci(l)||(l=yl,"selectionStart"in l&&cs(l)?l={start:l.selectionStart,end:l.selectionEnd}:(l=(l.ownerDocument&&l.ownerDocument.defaultView||window).getSelection(),l={anchorNode:l.anchorNode,anchorOffset:l.anchorOffset,focusNode:l.focusNode,focusOffset:l.focusOffset}),ca&&sa(ca,l)||(ca=l,l=lu(rs,"onSelect"),0>=o,a-=o,jt=1<<32-rt(t)+a|n<te?(se=K,K=null):se=K.sibling;var fe=O(A,K,R[te],j);if(fe===null){K===null&&(K=se);break}e&&K&&fe.alternate===null&&t(A,K),x=s(fe,x,te),oe===null?J=fe:oe.sibling=fe,oe=fe,K=se}if(te===R.length)return n(A,K),ce&&Kt(A,te),J;if(K===null){for(;tete?(se=K,K=null):se=K.sibling;var Ln=O(A,K,fe.value,j);if(Ln===null){K===null&&(K=se);break}e&&K&&Ln.alternate===null&&t(A,K),x=s(Ln,x,te),oe===null?J=Ln:oe.sibling=Ln,oe=Ln,K=se}if(fe.done)return n(A,K),ce&&Kt(A,te),J;if(K===null){for(;!fe.done;te++,fe=R.next())fe=U(A,fe.value,j),fe!==null&&(x=s(fe,x,te),oe===null?J=fe:oe.sibling=fe,oe=fe);return ce&&Kt(A,te),J}for(K=l(K);!fe.done;te++,fe=R.next())fe=M(K,A,te,fe.value,j),fe!==null&&(e&&fe.alternate!==null&&K.delete(fe.key===null?te:fe.key),x=s(fe,x,te),oe===null?J=fe:oe.sibling=fe,oe=fe);return e&&K.forEach(function(N0){return t(A,N0)}),ce&&Kt(A,te),J}function xe(A,x,R,j){if(typeof R=="object"&&R!==null&&R.type===k&&R.key===null&&(R=R.props.children),typeof R=="object"&&R!==null){switch(R.$$typeof){case z:e:{for(var J=R.key;x!==null;){if(x.key===J){if(J=R.type,J===k){if(x.tag===7){n(A,x.sibling),j=a(x,R.props.children),j.return=A,A=j;break e}}else if(x.elementType===J||typeof J=="object"&&J!==null&&J.$$typeof===_e&&Fn(J)===x.type){n(A,x.sibling),j=a(x,R.props),ma(j,R),j.return=A,A=j;break e}n(A,x);break}else t(A,x);x=x.sibling}R.type===k?(j=Zn(R.props.children,A.mode,j,R.key),j.return=A,A=j):(j=Si(R.type,R.key,R.props,null,A.mode,j),ma(j,R),j.return=A,A=j)}return o(A);case H:e:{for(J=R.key;x!==null;){if(x.key===J)if(x.tag===4&&x.stateNode.containerInfo===R.containerInfo&&x.stateNode.implementation===R.implementation){n(A,x.sibling),j=a(x,R.children||[]),j.return=A,A=j;break e}else{n(A,x);break}else t(A,x);x=x.sibling}j=vs(R,A.mode,j),j.return=A,A=j}return o(A);case _e:return R=Fn(R),xe(A,x,R,j)}if(Nt(R))return Q(A,x,R,j);if(ke(R)){if(J=ke(R),typeof J!="function")throw Error(r(150));return R=J.call(R),$(A,x,R,j)}if(typeof R.then=="function")return xe(A,x,Ri(R),j);if(R.$$typeof===V)return xe(A,x,Ei(A,R),j);Ni(A,R)}return typeof R=="string"&&R!==""||typeof R=="number"||typeof R=="bigint"?(R=""+R,x!==null&&x.tag===6?(n(A,x.sibling),j=a(x,R),j.return=A,A=j):(n(A,x),j=ys(R,A.mode,j),j.return=A,A=j),o(A)):n(A,x)}return function(A,x,R,j){try{da=0;var J=xe(A,x,R,j);return Rl=null,J}catch(K){if(K===Cl||K===Ai)throw K;var oe=ft(29,K,null,A.mode);return oe.lanes=j,oe.return=A,oe}finally{}}}var In=lf(!0),af=lf(!1),Sn=!1;function Os(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function zs(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function xn(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function _n(e,t,n){var l=e.updateQueue;if(l===null)return null;if(l=l.shared,(de&2)!==0){var a=l.pending;return a===null?t.next=t:(t.next=a.next,a.next=t),l.pending=t,t=bi(e),ko(e,null,n),t}return gi(e,l,t,n),bi(e)}function pa(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194048)!==0)){var l=t.lanes;l&=e.pendingLanes,n|=l,t.lanes=n,Jr(e,n)}}function Ms(e,t){var n=e.updateQueue,l=e.alternate;if(l!==null&&(l=l.updateQueue,n===l)){var a=null,s=null;if(n=n.firstBaseUpdate,n!==null){do{var o={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};s===null?a=s=o:s=s.next=o,n=n.next}while(n!==null);s===null?a=s=t:s=s.next=t}else a=s=t;n={baseState:l.baseState,firstBaseUpdate:a,lastBaseUpdate:s,shared:l.shared,callbacks:l.callbacks},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}var Ds=!1;function ya(){if(Ds){var e=Al;if(e!==null)throw e}}function va(e,t,n,l){Ds=!1;var a=e.updateQueue;Sn=!1;var s=a.firstBaseUpdate,o=a.lastBaseUpdate,d=a.shared.pending;if(d!==null){a.shared.pending=null;var g=d,N=g.next;g.next=null,o===null?s=N:o.next=N,o=g;var D=e.alternate;D!==null&&(D=D.updateQueue,d=D.lastBaseUpdate,d!==o&&(d===null?D.firstBaseUpdate=N:d.next=N,D.lastBaseUpdate=g))}if(s!==null){var U=a.baseState;o=0,D=N=g=null,d=s;do{var O=d.lane&-536870913,M=O!==d.lane;if(M?(ue&O)===O:(l&O)===O){O!==0&&O===Tl&&(Ds=!0),D!==null&&(D=D.next={lane:0,tag:d.tag,payload:d.payload,callback:null,next:null});e:{var Q=e,$=d;O=t;var xe=n;switch($.tag){case 1:if(Q=$.payload,typeof Q=="function"){U=Q.call(xe,U,O);break e}U=Q;break e;case 3:Q.flags=Q.flags&-65537|128;case 0:if(Q=$.payload,O=typeof Q=="function"?Q.call(xe,U,O):Q,O==null)break e;U=S({},U,O);break e;case 2:Sn=!0}}O=d.callback,O!==null&&(e.flags|=64,M&&(e.flags|=8192),M=a.callbacks,M===null?a.callbacks=[O]:M.push(O))}else M={lane:O,tag:d.tag,payload:d.payload,callback:d.callback,next:null},D===null?(N=D=M,g=U):D=D.next=M,o|=O;if(d=d.next,d===null){if(d=a.shared.pending,d===null)break;M=d,d=M.next,M.next=null,a.lastBaseUpdate=M,a.shared.pending=null}}while(!0);D===null&&(g=U),a.baseState=g,a.firstBaseUpdate=N,a.lastBaseUpdate=D,s===null&&(a.shared.lanes=0),Rn|=o,e.lanes=o,e.memoizedState=U}}function uf(e,t){if(typeof e!="function")throw Error(r(191,e));e.call(t)}function sf(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;es?s:8;var o=w.T,d={};w.T=d,Fs(e,!1,t,n);try{var g=a(),N=w.S;if(N!==null&&N(d,g),g!==null&&typeof g=="object"&&typeof g.then=="function"){var D=vy(g,l);Sa(e,t,D,yt(e))}else Sa(e,t,l,yt(e))}catch(U){Sa(e,t,{then:function(){},status:"rejected",reason:U},yt())}finally{X.p=s,o!==null&&d.types!==null&&(o.types=d.types),w.T=o}}function Ey(){}function $s(e,t,n,l){if(e.tag!==5)throw Error(r(476));var a=qf(e).queue;Hf(e,a,t,W,n===null?Ey:function(){return Yf(e),n(l)})}function qf(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:W,baseState:W,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Ft,lastRenderedState:W},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Ft,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function Yf(e){var t=qf(e);t.next===null&&(t=e.alternate.memoizedState),Sa(e,t.next.queue,{},yt())}function Ws(){return Je(La)}function kf(){return je().memoizedState}function Xf(){return je().memoizedState}function Ty(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var n=yt();e=xn(n);var l=_n(t,e,n);l!==null&&(ut(l,t,n),pa(l,t,n)),t={cache:As()},e.payload=t;return}t=t.return}}function Ay(e,t,n){var l=yt();n={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},Hi(e)?Vf(t,n):(n=ms(e,t,n,l),n!==null&&(ut(n,e,l),Qf(n,t,l)))}function Gf(e,t,n){var l=yt();Sa(e,t,n,l)}function Sa(e,t,n,l){var a={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(Hi(e))Vf(t,a);else{var s=e.alternate;if(e.lanes===0&&(s===null||s.lanes===0)&&(s=t.lastRenderedReducer,s!==null))try{var o=t.lastRenderedState,d=s(o,n);if(a.hasEagerState=!0,a.eagerState=d,ot(d,o))return gi(e,t,a,0),Te===null&&vi(),!1}catch{}finally{}if(n=ms(e,t,a,l),n!==null)return ut(n,e,l),Qf(n,t,l),!0}return!1}function Fs(e,t,n,l){if(l={lane:2,revertLane:Oc(),gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},Hi(e)){if(t)throw Error(r(479))}else t=ms(e,n,l,2),t!==null&&ut(t,e,2)}function Hi(e){var t=e.alternate;return e===ee||t!==null&&t===ee}function Vf(e,t){Ol=Mi=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Qf(e,t,n){if((n&4194048)!==0){var l=t.lanes;l&=e.pendingLanes,n|=l,t.lanes=n,Jr(e,n)}}var xa={readContext:Je,use:ji,useCallback:ze,useContext:ze,useEffect:ze,useImperativeHandle:ze,useLayoutEffect:ze,useInsertionEffect:ze,useMemo:ze,useReducer:ze,useRef:ze,useState:ze,useDebugValue:ze,useDeferredValue:ze,useTransition:ze,useSyncExternalStore:ze,useId:ze,useHostTransitionStatus:ze,useFormState:ze,useActionState:ze,useOptimistic:ze,useMemoCache:ze,useCacheRefresh:ze};xa.useEffectEvent=ze;var Zf={readContext:Je,use:ji,useCallback:function(e,t){return Ie().memoizedState=[e,t===void 0?null:t],e},useContext:Je,useEffect:Of,useImperativeHandle:function(e,t,n){n=n!=null?n.concat([e]):null,Bi(4194308,4,wf.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Bi(4194308,4,e,t)},useInsertionEffect:function(e,t){Bi(4,2,e,t)},useMemo:function(e,t){var n=Ie();t=t===void 0?null:t;var l=e();if(el){dn(!0);try{e()}finally{dn(!1)}}return n.memoizedState=[l,t],l},useReducer:function(e,t,n){var l=Ie();if(n!==void 0){var a=n(t);if(el){dn(!0);try{n(t)}finally{dn(!1)}}}else a=t;return l.memoizedState=l.baseState=a,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:a},l.queue=e,e=e.dispatch=Ay.bind(null,ee,e),[l.memoizedState,e]},useRef:function(e){var t=Ie();return e={current:e},t.memoizedState=e},useState:function(e){e=Vs(e);var t=e.queue,n=Gf.bind(null,ee,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:Ks,useDeferredValue:function(e,t){var n=Ie();return Js(n,e,t)},useTransition:function(){var e=Vs(!1);return e=Hf.bind(null,ee,e.queue,!0,!1),Ie().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var l=ee,a=Ie();if(ce){if(n===void 0)throw Error(r(407));n=n()}else{if(n=t(),Te===null)throw Error(r(349));(ue&127)!==0||df(l,t,n)}a.memoizedState=n;var s={value:n,getSnapshot:t};return a.queue=s,Of(pf.bind(null,l,s,e),[e]),l.flags|=2048,Ml(9,{destroy:void 0},mf.bind(null,l,s,n,t),null),n},useId:function(){var e=Ie(),t=Te.identifierPrefix;if(ce){var n=Ut,l=jt;n=(l&~(1<<32-rt(l)-1)).toString(32)+n,t="_"+t+"R_"+n,n=Di++,0<\/script>",s=s.removeChild(s.firstChild);break;case"select":s=typeof l.is=="string"?o.createElement("select",{is:l.is}):o.createElement("select"),l.multiple?s.multiple=!0:l.size&&(s.size=l.size);break;default:s=typeof l.is=="string"?o.createElement(a,{is:l.is}):o.createElement(a)}}s[Ze]=t,s[et]=l;e:for(o=t.child;o!==null;){if(o.tag===5||o.tag===6)s.appendChild(o.stateNode);else if(o.tag!==4&&o.tag!==27&&o.child!==null){o.child.return=o,o=o.child;continue}if(o===t)break e;for(;o.sibling===null;){if(o.return===null||o.return===t)break e;o=o.return}o.sibling.return=o.return,o=o.sibling}t.stateNode=s;e:switch(We(s,a,l),a){case"button":case"input":case"select":case"textarea":l=!!l.autoFocus;break e;case"img":l=!0;break e;default:l=!1}l&&It(t)}}return Re(t),fc(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==l&&It(t);else{if(typeof l!="string"&&t.stateNode===null)throw Error(r(166));if(e=le.current,_l(t)){if(e=t.stateNode,n=t.memoizedProps,l=null,a=Ke,a!==null)switch(a.tag){case 27:case 5:l=a.memoizedProps}e[Ze]=t,e=!!(e.nodeValue===n||l!==null&&l.suppressHydrationWarning===!0||fd(e.nodeValue,n)),e||gn(t,!0)}else e=au(e).createTextNode(l),e[Ze]=t,t.stateNode=e}return Re(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(l=_l(t),n!==null){if(e===null){if(!l)throw Error(r(318));if(e=t.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(r(557));e[Ze]=t}else Kn(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Re(t),e=!1}else n=xs(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(dt(t),t):(dt(t),null);if((t.flags&128)!==0)throw Error(r(558))}return Re(t),null;case 13:if(l=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(a=_l(t),l!==null&&l.dehydrated!==null){if(e===null){if(!a)throw Error(r(318));if(a=t.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(r(317));a[Ze]=t}else Kn(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Re(t),a=!1}else a=xs(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=a),a=!0;if(!a)return t.flags&256?(dt(t),t):(dt(t),null)}return dt(t),(t.flags&128)!==0?(t.lanes=n,t):(n=l!==null,e=e!==null&&e.memoizedState!==null,n&&(l=t.child,a=null,l.alternate!==null&&l.alternate.memoizedState!==null&&l.alternate.memoizedState.cachePool!==null&&(a=l.alternate.memoizedState.cachePool.pool),s=null,l.memoizedState!==null&&l.memoizedState.cachePool!==null&&(s=l.memoizedState.cachePool.pool),s!==a&&(l.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),Gi(t,t.updateQueue),Re(t),null);case 4:return De(),e===null&&wc(t.stateNode.containerInfo),Re(t),null;case 10:return $t(t.type),Re(t),null;case 19:if(B(we),l=t.memoizedState,l===null)return Re(t),null;if(a=(t.flags&128)!==0,s=l.rendering,s===null)if(a)Ea(l,!1);else{if(Me!==0||e!==null&&(e.flags&128)!==0)for(e=t.child;e!==null;){if(s=zi(e),s!==null){for(t.flags|=128,Ea(l,!1),e=s.updateQueue,t.updateQueue=e,Gi(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)Xo(n,e),n=n.sibling;return G(we,we.current&1|2),ce&&Kt(t,l.treeForkCount),t.child}e=e.sibling}l.tail!==null&&st()>Ji&&(t.flags|=128,a=!0,Ea(l,!1),t.lanes=4194304)}else{if(!a)if(e=zi(s),e!==null){if(t.flags|=128,a=!0,e=e.updateQueue,t.updateQueue=e,Gi(t,e),Ea(l,!0),l.tail===null&&l.tailMode==="hidden"&&!s.alternate&&!ce)return Re(t),null}else 2*st()-l.renderingStartTime>Ji&&n!==536870912&&(t.flags|=128,a=!0,Ea(l,!1),t.lanes=4194304);l.isBackwards?(s.sibling=t.child,t.child=s):(e=l.last,e!==null?e.sibling=s:t.child=s,l.last=s)}return l.tail!==null?(e=l.tail,l.rendering=e,l.tail=e.sibling,l.renderingStartTime=st(),e.sibling=null,n=we.current,G(we,a?n&1|2:n&1),ce&&Kt(t,l.treeForkCount),e):(Re(t),null);case 22:case 23:return dt(t),js(),l=t.memoizedState!==null,e!==null?e.memoizedState!==null!==l&&(t.flags|=8192):l&&(t.flags|=8192),l?(n&536870912)!==0&&(t.flags&128)===0&&(Re(t),t.subtreeFlags&6&&(t.flags|=8192)):Re(t),n=t.updateQueue,n!==null&&Gi(t,n.retryQueue),n=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),l=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(l=t.memoizedState.cachePool.pool),l!==n&&(t.flags|=2048),e!==null&&B(Wn),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),$t(Be),Re(t),null;case 25:return null;case 30:return null}throw Error(r(156,t.tag))}function zy(e,t){switch(bs(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return $t(Be),De(),e=t.flags,(e&65536)!==0&&(e&128)===0?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return ei(t),null;case 31:if(t.memoizedState!==null){if(dt(t),t.alternate===null)throw Error(r(340));Kn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(dt(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(r(340));Kn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return B(we),null;case 4:return De(),null;case 10:return $t(t.type),null;case 22:case 23:return dt(t),js(),e!==null&&B(Wn),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return $t(Be),null;case 25:return null;default:return null}}function yh(e,t){switch(bs(t),t.tag){case 3:$t(Be),De();break;case 26:case 27:case 5:ei(t);break;case 4:De();break;case 31:t.memoizedState!==null&&dt(t);break;case 13:dt(t);break;case 19:B(we);break;case 10:$t(t.type);break;case 22:case 23:dt(t),js(),e!==null&&B(Wn);break;case 24:$t(Be)}}function Ta(e,t){try{var n=t.updateQueue,l=n!==null?n.lastEffect:null;if(l!==null){var a=l.next;n=a;do{if((n.tag&e)===e){l=void 0;var s=n.create,o=n.inst;l=s(),o.destroy=l}n=n.next}while(n!==a)}}catch(d){ye(t,t.return,d)}}function An(e,t,n){try{var l=t.updateQueue,a=l!==null?l.lastEffect:null;if(a!==null){var s=a.next;l=s;do{if((l.tag&e)===e){var o=l.inst,d=o.destroy;if(d!==void 0){o.destroy=void 0,a=t;var g=n,N=d;try{N()}catch(D){ye(a,g,D)}}}l=l.next}while(l!==s)}}catch(D){ye(t,t.return,D)}}function vh(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{sf(t,n)}catch(l){ye(e,e.return,l)}}}function gh(e,t,n){n.props=tl(e.type,e.memoizedProps),n.state=e.memoizedState;try{n.componentWillUnmount()}catch(l){ye(e,t,l)}}function Aa(e,t){try{var n=e.ref;if(n!==null){switch(e.tag){case 26:case 27:case 5:var l=e.stateNode;break;case 30:l=e.stateNode;break;default:l=e.stateNode}typeof n=="function"?e.refCleanup=n(l):n.current=l}}catch(a){ye(e,t,a)}}function Bt(e,t){var n=e.ref,l=e.refCleanup;if(n!==null)if(typeof l=="function")try{l()}catch(a){ye(e,t,a)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n=="function")try{n(null)}catch(a){ye(e,t,a)}else n.current=null}function bh(e){var t=e.type,n=e.memoizedProps,l=e.stateNode;try{e:switch(t){case"button":case"input":case"select":case"textarea":n.autoFocus&&l.focus();break e;case"img":n.src?l.src=n.src:n.srcSet&&(l.srcset=n.srcSet)}}catch(a){ye(e,e.return,a)}}function hc(e,t,n){try{var l=e.stateNode;Py(l,e.type,n,t),l[et]=t}catch(a){ye(e,e.return,a)}}function Sh(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&Dn(e.type)||e.tag===4}function dc(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||Sh(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&&Dn(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 mc(e,t,n){var l=e.tag;if(l===5||l===6)e=e.stateNode,t?(n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n).insertBefore(e,t):(t=n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n,t.appendChild(e),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=Vt));else if(l!==4&&(l===27&&Dn(e.type)&&(n=e.stateNode,t=null),e=e.child,e!==null))for(mc(e,t,n),e=e.sibling;e!==null;)mc(e,t,n),e=e.sibling}function Vi(e,t,n){var l=e.tag;if(l===5||l===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(l!==4&&(l===27&&Dn(e.type)&&(n=e.stateNode),e=e.child,e!==null))for(Vi(e,t,n),e=e.sibling;e!==null;)Vi(e,t,n),e=e.sibling}function xh(e){var t=e.stateNode,n=e.memoizedProps;try{for(var l=e.type,a=t.attributes;a.length;)t.removeAttributeNode(a[0]);We(t,l,n),t[Ze]=e,t[et]=n}catch(s){ye(e,e.return,s)}}var en=!1,qe=!1,pc=!1,_h=typeof WeakSet=="function"?WeakSet:Set,Qe=null;function My(e,t){if(e=e.containerInfo,Bc=fu,e=wo(e),cs(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var l=n.getSelection&&n.getSelection();if(l&&l.rangeCount!==0){n=l.anchorNode;var a=l.anchorOffset,s=l.focusNode;l=l.focusOffset;try{n.nodeType,s.nodeType}catch{n=null;break e}var o=0,d=-1,g=-1,N=0,D=0,U=e,O=null;t:for(;;){for(var M;U!==n||a!==0&&U.nodeType!==3||(d=o+a),U!==s||l!==0&&U.nodeType!==3||(g=o+l),U.nodeType===3&&(o+=U.nodeValue.length),(M=U.firstChild)!==null;)O=U,U=M;for(;;){if(U===e)break t;if(O===n&&++N===a&&(d=o),O===s&&++D===l&&(g=o),(M=U.nextSibling)!==null)break;U=O,O=U.parentNode}U=M}n=d===-1||g===-1?null:{start:d,end:g}}else n=null}n=n||{start:0,end:0}}else n=null;for(Lc={focusedElem:e,selectionRange:n},fu=!1,Qe=t;Qe!==null;)if(t=Qe,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,Qe=e;else for(;Qe!==null;){switch(t=Qe,s=t.alternate,e=t.flags,t.tag){case 0:if((e&4)!==0&&(e=t.updateQueue,e=e!==null?e.events:null,e!==null))for(n=0;n title"))),We(s,l,n),s[Ze]=e,Ve(s),l=s;break e;case"link":var o=Nd("link","href",a).get(l+(n.href||""));if(o){for(var d=0;dxe&&(o=xe,xe=$,$=o);var A=Mo(d,$),x=Mo(d,xe);if(A&&x&&(M.rangeCount!==1||M.anchorNode!==A.node||M.anchorOffset!==A.offset||M.focusNode!==x.node||M.focusOffset!==x.offset)){var R=U.createRange();R.setStart(A.node,A.offset),M.removeAllRanges(),$>xe?(M.addRange(R),M.extend(x.node,x.offset)):(R.setEnd(x.node,x.offset),M.addRange(R))}}}}for(U=[],M=d;M=M.parentNode;)M.nodeType===1&&U.push({element:M,left:M.scrollLeft,top:M.scrollTop});for(typeof d.focus=="function"&&d.focus(),d=0;dn?32:n,w.T=null,n=_c,_c=null;var s=On,o=un;if(Xe=0,Bl=On=null,un=0,(de&6)!==0)throw Error(r(331));var d=de;if(de|=4,wh(s.current),zh(s,s.current,o,n),de=d,Ma(0,!1),ct&&typeof ct.onPostCommitFiberRoot=="function")try{ct.onPostCommitFiberRoot($l,s)}catch{}return!0}finally{X.p=a,w.T=l,Fh(e,t)}}function Ih(e,t,n){t=St(n,t),t=tc(e.stateNode,t,2),e=_n(e,t,2),e!==null&&(Fl(e,2),Lt(e))}function ye(e,t,n){if(e.tag===3)Ih(e,e,n);else for(;t!==null;){if(t.tag===3){Ih(t,e,n);break}else if(t.tag===1){var l=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof l.componentDidCatch=="function"&&(Nn===null||!Nn.has(l))){e=St(n,e),n=eh(2),l=_n(t,n,2),l!==null&&(th(n,l,t,e),Fl(l,2),Lt(l));break}}t=t.return}}function Cc(e,t,n){var l=e.pingCache;if(l===null){l=e.pingCache=new jy;var a=new Set;l.set(t,a)}else a=l.get(t),a===void 0&&(a=new Set,l.set(t,a));a.has(n)||(gc=!0,a.add(n),e=qy.bind(null,e,t,n),t.then(e,e))}function qy(e,t,n){var l=e.pingCache;l!==null&&l.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,Te===e&&(ue&n)===n&&(Me===4||Me===3&&(ue&62914560)===ue&&300>st()-Ki?(de&2)===0&&Ll(e,0):bc|=n,Ul===ue&&(Ul=0)),Lt(e)}function ed(e,t){t===0&&(t=Zr()),e=Qn(e,t),e!==null&&(Fl(e,t),Lt(e))}function Yy(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),ed(e,n)}function ky(e,t){var n=0;switch(e.tag){case 31:case 13:var l=e.stateNode,a=e.memoizedState;a!==null&&(n=a.retryLane);break;case 19:l=e.stateNode;break;case 22:l=e.stateNode._retryCache;break;default:throw Error(r(314))}l!==null&&l.delete(t),ed(e,n)}function Xy(e,t){return qu(e,t)}var eu=null,ql=null,Rc=!1,tu=!1,Nc=!1,Mn=0;function Lt(e){e!==ql&&e.next===null&&(ql===null?eu=ql=e:ql=ql.next=e),tu=!0,Rc||(Rc=!0,Vy())}function Ma(e,t){if(!Nc&&tu){Nc=!0;do for(var n=!1,l=eu;l!==null;){if(e!==0){var a=l.pendingLanes;if(a===0)var s=0;else{var o=l.suspendedLanes,d=l.pingedLanes;s=(1<<31-rt(42|e)+1)-1,s&=a&~(o&~d),s=s&201326741?s&201326741|1:s?s|2:0}s!==0&&(n=!0,ad(l,s))}else s=ue,s=ii(l,l===Te?s:0,l.cancelPendingCommit!==null||l.timeoutHandle!==-1),(s&3)===0||Wl(l,s)||(n=!0,ad(l,s));l=l.next}while(n);Nc=!1}}function Gy(){td()}function td(){tu=Rc=!1;var e=0;Mn!==0&&e0()&&(e=Mn);for(var t=st(),n=null,l=eu;l!==null;){var a=l.next,s=nd(l,t);s===0?(l.next=null,n===null?eu=a:n.next=a,a===null&&(ql=n)):(n=l,(e!==0||(s&3)!==0)&&(tu=!0)),l=a}Xe!==0&&Xe!==5||Ma(e),Mn!==0&&(Mn=0)}function nd(e,t){for(var n=e.suspendedLanes,l=e.pingedLanes,a=e.expirationTimes,s=e.pendingLanes&-62914561;0d)break;var D=g.transferSize,U=g.initiatorType;D&&hd(U)&&(g=g.responseEnd,o+=D*(g"u"?null:document;function Td(e,t,n){var l=Yl;if(l&&typeof t=="string"&&t){var a=gt(t);a='link[rel="'+e+'"][href="'+a+'"]',typeof n=="string"&&(a+='[crossorigin="'+n+'"]'),Ed.has(a)||(Ed.add(a),e={rel:e,crossOrigin:n,href:t},l.querySelector(a)===null&&(t=l.createElement("link"),We(t,"link",e),Ve(t),l.head.appendChild(t)))}}function r0(e){sn.D(e),Td("dns-prefetch",e,null)}function o0(e,t){sn.C(e,t),Td("preconnect",e,t)}function f0(e,t,n){sn.L(e,t,n);var l=Yl;if(l&&e&&t){var a='link[rel="preload"][as="'+gt(t)+'"]';t==="image"&&n&&n.imageSrcSet?(a+='[imagesrcset="'+gt(n.imageSrcSet)+'"]',typeof n.imageSizes=="string"&&(a+='[imagesizes="'+gt(n.imageSizes)+'"]')):a+='[href="'+gt(e)+'"]';var s=a;switch(t){case"style":s=kl(e);break;case"script":s=Xl(e)}Ct.has(s)||(e=S({rel:"preload",href:t==="image"&&n&&n.imageSrcSet?void 0:e,as:t},n),Ct.set(s,e),l.querySelector(a)!==null||t==="style"&&l.querySelector(Ua(s))||t==="script"&&l.querySelector(Ba(s))||(t=l.createElement("link"),We(t,"link",e),Ve(t),l.head.appendChild(t)))}}function h0(e,t){sn.m(e,t);var n=Yl;if(n&&e){var l=t&&typeof t.as=="string"?t.as:"script",a='link[rel="modulepreload"][as="'+gt(l)+'"][href="'+gt(e)+'"]',s=a;switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":s=Xl(e)}if(!Ct.has(s)&&(e=S({rel:"modulepreload",href:e},t),Ct.set(s,e),n.querySelector(a)===null)){switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(n.querySelector(Ba(s)))return}l=n.createElement("link"),We(l,"link",e),Ve(l),n.head.appendChild(l)}}}function d0(e,t,n){sn.S(e,t,n);var l=Yl;if(l&&e){var a=rl(l).hoistableStyles,s=kl(e);t=t||"default";var o=a.get(s);if(!o){var d={loading:0,preload:null};if(o=l.querySelector(Ua(s)))d.loading=5;else{e=S({rel:"stylesheet",href:e,"data-precedence":t},n),(n=Ct.get(s))&&Vc(e,n);var g=o=l.createElement("link");Ve(g),We(g,"link",e),g._p=new Promise(function(N,D){g.onload=N,g.onerror=D}),g.addEventListener("load",function(){d.loading|=1}),g.addEventListener("error",function(){d.loading|=2}),d.loading|=4,uu(o,t,l)}o={type:"stylesheet",instance:o,count:1,state:d},a.set(s,o)}}}function m0(e,t){sn.X(e,t);var n=Yl;if(n&&e){var l=rl(n).hoistableScripts,a=Xl(e),s=l.get(a);s||(s=n.querySelector(Ba(a)),s||(e=S({src:e,async:!0},t),(t=Ct.get(a))&&Qc(e,t),s=n.createElement("script"),Ve(s),We(s,"link",e),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function p0(e,t){sn.M(e,t);var n=Yl;if(n&&e){var l=rl(n).hoistableScripts,a=Xl(e),s=l.get(a);s||(s=n.querySelector(Ba(a)),s||(e=S({src:e,async:!0,type:"module"},t),(t=Ct.get(a))&&Qc(e,t),s=n.createElement("script"),Ve(s),We(s,"link",e),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function Ad(e,t,n,l){var a=(a=le.current)?iu(a):null;if(!a)throw Error(r(446));switch(e){case"meta":case"title":return null;case"style":return typeof n.precedence=="string"&&typeof n.href=="string"?(t=kl(n.href),n=rl(a).hoistableStyles,l=n.get(t),l||(l={type:"style",instance:null,count:0,state:null},n.set(t,l)),l):{type:"void",instance:null,count:0,state:null};case"link":if(n.rel==="stylesheet"&&typeof n.href=="string"&&typeof n.precedence=="string"){e=kl(n.href);var s=rl(a).hoistableStyles,o=s.get(e);if(o||(a=a.ownerDocument||a,o={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},s.set(e,o),(s=a.querySelector(Ua(e)))&&!s._p&&(o.instance=s,o.state.loading=5),Ct.has(e)||(n={rel:"preload",as:"style",href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},Ct.set(e,n),s||y0(a,e,n,o.state))),t&&l===null)throw Error(r(528,""));return o}if(t&&l!==null)throw Error(r(529,""));return null;case"script":return t=n.async,n=n.src,typeof n=="string"&&t&&typeof t!="function"&&typeof t!="symbol"?(t=Xl(n),n=rl(a).hoistableScripts,l=n.get(t),l||(l={type:"script",instance:null,count:0,state:null},n.set(t,l)),l):{type:"void",instance:null,count:0,state:null};default:throw Error(r(444,e))}}function kl(e){return'href="'+gt(e)+'"'}function Ua(e){return'link[rel="stylesheet"]['+e+"]"}function Cd(e){return S({},e,{"data-precedence":e.precedence,precedence:null})}function y0(e,t,n,l){e.querySelector('link[rel="preload"][as="style"]['+t+"]")?l.loading=1:(t=e.createElement("link"),l.preload=t,t.addEventListener("load",function(){return l.loading|=1}),t.addEventListener("error",function(){return l.loading|=2}),We(t,"link",n),Ve(t),e.head.appendChild(t))}function Xl(e){return'[src="'+gt(e)+'"]'}function Ba(e){return"script[async]"+e}function Rd(e,t,n){if(t.count++,t.instance===null)switch(t.type){case"style":var l=e.querySelector('style[data-href~="'+gt(n.href)+'"]');if(l)return t.instance=l,Ve(l),l;var a=S({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return l=(e.ownerDocument||e).createElement("style"),Ve(l),We(l,"style",a),uu(l,n.precedence,e),t.instance=l;case"stylesheet":a=kl(n.href);var s=e.querySelector(Ua(a));if(s)return t.state.loading|=4,t.instance=s,Ve(s),s;l=Cd(n),(a=Ct.get(a))&&Vc(l,a),s=(e.ownerDocument||e).createElement("link"),Ve(s);var o=s;return o._p=new Promise(function(d,g){o.onload=d,o.onerror=g}),We(s,"link",l),t.state.loading|=4,uu(s,n.precedence,e),t.instance=s;case"script":return s=Xl(n.src),(a=e.querySelector(Ba(s)))?(t.instance=a,Ve(a),a):(l=n,(a=Ct.get(s))&&(l=S({},n),Qc(l,a)),e=e.ownerDocument||e,a=e.createElement("script"),Ve(a),We(a,"link",l),e.head.appendChild(a),t.instance=a);case"void":return null;default:throw Error(r(443,t.type))}else t.type==="stylesheet"&&(t.state.loading&4)===0&&(l=t.instance,t.state.loading|=4,uu(l,n.precedence,e));return t.instance}function uu(e,t,n){for(var l=n.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=l.length?l[l.length-1]:null,s=a,o=0;o title"):null)}function v0(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case"meta":case"title":return!0;case"style":if(typeof t.precedence!="string"||typeof t.href!="string"||t.href==="")break;return!0;case"link":if(typeof t.rel!="string"||typeof t.href!="string"||t.href===""||t.onLoad||t.onError)break;switch(t.rel){case"stylesheet":return e=t.disabled,typeof t.precedence=="string"&&e==null;default:return!0}case"script":if(t.async&&typeof t.async!="function"&&typeof t.async!="symbol"&&!t.onLoad&&!t.onError&&t.src&&typeof t.src=="string")return!0}return!1}function zd(e){return!(e.type==="stylesheet"&&(e.state.loading&3)===0)}function g0(e,t,n,l){if(n.type==="stylesheet"&&(typeof l.media!="string"||matchMedia(l.media).matches!==!1)&&(n.state.loading&4)===0){if(n.instance===null){var a=kl(l.href),s=t.querySelector(Ua(a));if(s){t=s._p,t!==null&&typeof t=="object"&&typeof t.then=="function"&&(e.count++,e=cu.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=s,Ve(s);return}s=t.ownerDocument||t,l=Cd(l),(a=Ct.get(a))&&Vc(l,a),s=s.createElement("link"),Ve(s);var o=s;o._p=new Promise(function(d,g){o.onload=d,o.onerror=g}),We(s,"link",l),n.instance=s}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&(n.state.loading&3)===0&&(e.count++,n=cu.bind(e),t.addEventListener("load",n),t.addEventListener("error",n))}}var Zc=0;function b0(e,t){return e.stylesheets&&e.count===0&&ou(e,e.stylesheets),0Zc?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(l),clearTimeout(a)}}:null}function cu(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)ou(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var ru=null;function ou(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,ru=new Map,t.forEach(S0,e),ru=null,cu.call(e))}function S0(e,t){if(!(t.state.loading&4)){var n=ru.get(e);if(n)var l=n.get(null);else{n=new Map,ru.set(e,n);for(var a=e.querySelectorAll("link[data-precedence],style[data-precedence]"),s=0;s"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(u)}catch(i){console.error(i)}}return u(),tr.exports=B0(),tr.exports}var H0=L0();var em="popstate";function q0(u={}){function i(r,f){let{pathname:h,search:m,hash:b}=r.location;return hr("",{pathname:h,search:m,hash:b},f.state&&f.state.usr||null,f.state&&f.state.key||"default")}function c(r,f){return typeof f=="string"?f:Wa(f)}return k0(i,c,null,u)}function Oe(u,i){if(u===!1||u===null||typeof u>"u")throw new Error(i)}function wt(u,i){if(!u){typeof console<"u"&&console.warn(i);try{throw new Error(i)}catch{}}}function Y0(){return Math.random().toString(36).substring(2,10)}function tm(u,i){return{usr:u.state,key:u.key,idx:i}}function hr(u,i,c=null,r){return{pathname:typeof u=="string"?u:u.pathname,search:"",hash:"",...typeof i=="string"?Ql(i):i,state:c,key:i&&i.key||r||Y0()}}function Wa({pathname:u="/",search:i="",hash:c=""}){return i&&i!=="?"&&(u+=i.charAt(0)==="?"?i:"?"+i),c&&c!=="#"&&(u+=c.charAt(0)==="#"?c:"#"+c),u}function Ql(u){let i={};if(u){let c=u.indexOf("#");c>=0&&(i.hash=u.substring(c),u=u.substring(0,c));let r=u.indexOf("?");r>=0&&(i.search=u.substring(r),u=u.substring(0,r)),u&&(i.pathname=u)}return i}function k0(u,i,c,r={}){let{window:f=document.defaultView,v5Compat:h=!1}=r,m=f.history,b="POP",p=null,y=E();y==null&&(y=0,m.replaceState({...m.state,idx:y},""));function E(){return(m.state||{idx:null}).idx}function S(){b="POP";let q=E(),L=q==null?null:q-y;y=q,p&&p({action:b,location:k.location,delta:L})}function C(q,L){b="PUSH";let Y=hr(k.location,q,L);y=E()+1;let V=tm(Y,y),ne=k.createHref(Y);try{m.pushState(V,"",ne)}catch(he){if(he instanceof DOMException&&he.name==="DataCloneError")throw he;f.location.assign(ne)}h&&p&&p({action:b,location:k.location,delta:1})}function z(q,L){b="REPLACE";let Y=hr(k.location,q,L);y=E();let V=tm(Y,y),ne=k.createHref(Y);m.replaceState(V,"",ne),h&&p&&p({action:b,location:k.location,delta:0})}function H(q){return X0(q)}let k={get action(){return b},get location(){return u(f,m)},listen(q){if(p)throw new Error("A history only accepts one active listener");return f.addEventListener(em,S),p=q,()=>{f.removeEventListener(em,S),p=null}},createHref(q){return i(f,q)},createURL:H,encodeLocation(q){let L=H(q);return{pathname:L.pathname,search:L.search,hash:L.hash}},push:C,replace:z,go(q){return m.go(q)}};return k}function X0(u,i=!1){let c="http://localhost";typeof window<"u"&&(c=window.location.origin!=="null"?window.location.origin:window.location.href),Oe(c,"No window.location.(origin|href) available to create URL");let r=typeof u=="string"?u:Wa(u);return r=r.replace(/ $/,"%20"),!i&&r.startsWith("//")&&(r=c+r),new URL(r,c)}function Sm(u,i,c="/"){return G0(u,i,c,!1)}function G0(u,i,c,r){let f=typeof i=="string"?Ql(i):i,h=on(f.pathname||"/",c);if(h==null)return null;let m=xm(u);V0(m);let b=null;for(let p=0;b==null&&p{let E={relativePath:y===void 0?m.path||"":y,caseSensitive:m.caseSensitive===!0,childrenIndex:b,route:m};if(E.relativePath.startsWith("/")){if(!E.relativePath.startsWith(r)&&p)return;Oe(E.relativePath.startsWith(r),`Absolute route path "${E.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),E.relativePath=E.relativePath.slice(r.length)}let S=rn([r,E.relativePath]),C=c.concat(E);m.children&&m.children.length>0&&(Oe(m.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${S}".`),xm(m.children,i,C,S,p)),!(m.path==null&&!m.index)&&i.push({path:S,score:F0(S,m.index),routesMeta:C})};return u.forEach((m,b)=>{if(m.path===""||!m.path?.includes("?"))h(m,b);else for(let p of _m(m.path))h(m,b,!0,p)}),i}function _m(u){let i=u.split("/");if(i.length===0)return[];let[c,...r]=i,f=c.endsWith("?"),h=c.replace(/\?$/,"");if(r.length===0)return f?[h,""]:[h];let m=_m(r.join("/")),b=[];return b.push(...m.map(p=>p===""?h:[h,p].join("/"))),f&&b.push(...m),b.map(p=>u.startsWith("/")&&p===""?"/":p)}function V0(u){u.sort((i,c)=>i.score!==c.score?c.score-i.score:P0(i.routesMeta.map(r=>r.childrenIndex),c.routesMeta.map(r=>r.childrenIndex)))}var Q0=/^:[\w-]+$/,Z0=3,K0=2,J0=1,$0=10,W0=-2,nm=u=>u==="*";function F0(u,i){let c=u.split("/"),r=c.length;return c.some(nm)&&(r+=W0),i&&(r+=K0),c.filter(f=>!nm(f)).reduce((f,h)=>f+(Q0.test(h)?Z0:h===""?J0:$0),r)}function P0(u,i){return u.length===i.length&&u.slice(0,-1).every((r,f)=>r===i[f])?u[u.length-1]-i[i.length-1]:0}function I0(u,i,c=!1){let{routesMeta:r}=u,f={},h="/",m=[];for(let b=0;b{if(E==="*"){let H=b[C]||"";m=h.slice(0,h.length-H.length).replace(/(.)\/+$/,"$1")}const z=b[C];return S&&!z?y[E]=void 0:y[E]=(z||"").replace(/%2F/g,"/"),y},{}),pathname:h,pathnameBase:m,pattern:u}}function ev(u,i=!1,c=!0){wt(u==="*"||!u.endsWith("*")||u.endsWith("/*"),`Route path "${u}" will be treated as if it were "${u.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${u.replace(/\*$/,"/*")}".`);let r=[],f="^"+u.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(m,b,p)=>(r.push({paramName:b,isOptional:p!=null}),p?"/?([^\\/]+)?":"/([^\\/]+)")).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return u.endsWith("*")?(r.push({paramName:"*"}),f+=u==="*"||u==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):c?f+="\\/*$":u!==""&&u!=="/"&&(f+="(?:(?=\\/|$))"),[new RegExp(f,i?void 0:"i"),r]}function tv(u){try{return u.split("/").map(i=>decodeURIComponent(i).replace(/\//g,"%2F")).join("/")}catch(i){return wt(!1,`The URL path "${u}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${i}).`),u}}function on(u,i){if(i==="/")return u;if(!u.toLowerCase().startsWith(i.toLowerCase()))return null;let c=i.endsWith("/")?i.length-1:i.length,r=u.charAt(c);return r&&r!=="/"?null:u.slice(c)||"/"}var nv=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,lv=u=>nv.test(u);function av(u,i="/"){let{pathname:c,search:r="",hash:f=""}=typeof u=="string"?Ql(u):u,h;if(c)if(lv(c))h=c;else{if(c.includes("//")){let m=c;c=c.replace(/\/\/+/g,"/"),wt(!1,`Pathnames cannot have embedded double slashes - normalizing ${m} -> ${c}`)}c.startsWith("/")?h=lm(c.substring(1),"/"):h=lm(c,i)}else h=i;return{pathname:h,search:sv(r),hash:cv(f)}}function lm(u,i){let c=i.replace(/\/+$/,"").split("/");return u.split("/").forEach(f=>{f===".."?c.length>1&&c.pop():f!=="."&&c.push(f)}),c.length>1?c.join("/"):"/"}function ir(u,i,c,r){return`Cannot include a '${u}' character in a manually specified \`to.${i}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${c}\` field. Alternatively you may provide the full path as a string in and the router will parse it for you.`}function iv(u){return u.filter((i,c)=>c===0||i.route.path&&i.route.path.length>0)}function Em(u){let i=iv(u);return i.map((c,r)=>r===i.length-1?c.pathname:c.pathnameBase)}function Tm(u,i,c,r=!1){let f;typeof u=="string"?f=Ql(u):(f={...u},Oe(!f.pathname||!f.pathname.includes("?"),ir("?","pathname","search",f)),Oe(!f.pathname||!f.pathname.includes("#"),ir("#","pathname","hash",f)),Oe(!f.search||!f.search.includes("#"),ir("#","search","hash",f)));let h=u===""||f.pathname==="",m=h?"/":f.pathname,b;if(m==null)b=c;else{let S=i.length-1;if(!r&&m.startsWith("..")){let C=m.split("/");for(;C[0]==="..";)C.shift(),S-=1;f.pathname=C.join("/")}b=S>=0?i[S]:"/"}let p=av(f,b),y=m&&m!=="/"&&m.endsWith("/"),E=(h||m===".")&&c.endsWith("/");return!p.pathname.endsWith("/")&&(y||E)&&(p.pathname+="/"),p}var rn=u=>u.join("/").replace(/\/\/+/g,"/"),uv=u=>u.replace(/\/+$/,"").replace(/^\/*/,"/"),sv=u=>!u||u==="?"?"":u.startsWith("?")?u:"?"+u,cv=u=>!u||u==="#"?"":u.startsWith("#")?u:"#"+u;function rv(u){return u!=null&&typeof u.status=="number"&&typeof u.statusText=="string"&&typeof u.internal=="boolean"&&"data"in u}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var Am=["POST","PUT","PATCH","DELETE"];new Set(Am);var ov=["GET",...Am];new Set(ov);var Zl=T.createContext(null);Zl.displayName="DataRouter";var Ou=T.createContext(null);Ou.displayName="DataRouterState";T.createContext(!1);var Cm=T.createContext({isTransitioning:!1});Cm.displayName="ViewTransition";var fv=T.createContext(new Map);fv.displayName="Fetchers";var hv=T.createContext(null);hv.displayName="Await";var Yt=T.createContext(null);Yt.displayName="Navigation";var Fa=T.createContext(null);Fa.displayName="Location";var fn=T.createContext({outlet:null,matches:[],isDataRoute:!1});fn.displayName="Route";var xr=T.createContext(null);xr.displayName="RouteError";function dv(u,{relative:i}={}){Oe(Pa(),"useHref() may be used only in the context of a component.");let{basename:c,navigator:r}=T.useContext(Yt),{hash:f,pathname:h,search:m}=Ia(u,{relative:i}),b=h;return c!=="/"&&(b=h==="/"?c:rn([c,h])),r.createHref({pathname:b,search:m,hash:f})}function Pa(){return T.useContext(Fa)!=null}function il(){return Oe(Pa(),"useLocation() may be used only in the context of a component."),T.useContext(Fa).location}var Rm="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function Nm(u){T.useContext(Yt).static||T.useLayoutEffect(u)}function mv(){let{isDataRoute:u}=T.useContext(fn);return u?Rv():pv()}function pv(){Oe(Pa(),"useNavigate() may be used only in the context of a component.");let u=T.useContext(Zl),{basename:i,navigator:c}=T.useContext(Yt),{matches:r}=T.useContext(fn),{pathname:f}=il(),h=JSON.stringify(Em(r)),m=T.useRef(!1);return Nm(()=>{m.current=!0}),T.useCallback((p,y={})=>{if(wt(m.current,Rm),!m.current)return;if(typeof p=="number"){c.go(p);return}let E=Tm(p,JSON.parse(h),f,y.relative==="path");u==null&&i!=="/"&&(E.pathname=E.pathname==="/"?i:rn([i,E.pathname])),(y.replace?c.replace:c.push)(E,y.state,y)},[i,c,h,f,u])}T.createContext(null);function Ia(u,{relative:i}={}){let{matches:c}=T.useContext(fn),{pathname:r}=il(),f=JSON.stringify(Em(c));return T.useMemo(()=>Tm(u,JSON.parse(f),r,i==="path"),[u,f,r,i])}function yv(u,i){return Om(u,i)}function Om(u,i,c,r,f){Oe(Pa(),"useRoutes() may be used only in the context of a component.");let{navigator:h}=T.useContext(Yt),{matches:m}=T.useContext(fn),b=m[m.length-1],p=b?b.params:{},y=b?b.pathname:"/",E=b?b.pathnameBase:"/",S=b&&b.route;{let Y=S&&S.path||"";zm(y,!S||Y.endsWith("*")||Y.endsWith("*?"),`You rendered descendant (or called \`useRoutes()\`) at "${y}" (under ) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render. -Please change the parent to .`)}let C=il(),z;if(i){let Y=typeof i=="string"?Ql(i):i;Oe(E==="/"||Y.pathname?.startsWith(E),`When overriding the location using \`\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${E}" but pathname "${Y.pathname}" was given in the \`location\` prop.`),z=Y}else z=C;let H=z.pathname||"/",k=H;if(E!=="/"){let Y=E.replace(/^\//,"").split("/");k="/"+H.replace(/^\//,"").split("/").slice(Y.length).join("/")}let q=Sm(u,{pathname:k});wt(S||q!=null,`No routes matched location "${z.pathname}${z.search}${z.hash}" `),wt(q==null||q[q.length-1].route.element!==void 0||q[q.length-1].route.Component!==void 0||q[q.length-1].route.lazy!==void 0,`Matched leaf route at location "${z.pathname}${z.search}${z.hash}" does not have an element or Component. This means it will render an with a null value by default resulting in an "empty" page.`);let L=xv(q&&q.map(Y=>Object.assign({},Y,{params:Object.assign({},p,Y.params),pathname:rn([E,d.encodeLocation?d.encodeLocation(Y.pathname.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:Y.pathname]),pathnameBase:Y.pathnameBase==="/"?E:rn([E,d.encodeLocation?d.encodeLocation(Y.pathnameBase.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:Y.pathnameBase])})),m,c,r,f);return i&&L?T.createElement(Fa.Provider,{value:{location:{pathname:"/",search:"",hash:"",state:null,key:"default",...z},navigationType:"POP"}},L):L}function vv(){let u=Cv(),i=rv(u)?`${u.status} ${u.statusText}`:u instanceof Error?u.message:JSON.stringify(u),c=u instanceof Error?u.stack:null,r="rgba(200,200,200, 0.5)",f={padding:"0.5rem",backgroundColor:r},d={padding:"2px 4px",backgroundColor:r},m=null;return console.error("Error handled by React Router default ErrorBoundary:",u),m=T.createElement(T.Fragment,null,T.createElement("p",null,"💿 Hey developer 👋"),T.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",T.createElement("code",{style:d},"ErrorBoundary")," or"," ",T.createElement("code",{style:d},"errorElement")," prop on your route.")),T.createElement(T.Fragment,null,T.createElement("h2",null,"Unexpected Application Error!"),T.createElement("h3",{style:{fontStyle:"italic"}},i),c?T.createElement("pre",{style:f},c):null,m)}var gv=T.createElement(vv,null),bv=class extends T.Component{constructor(u){super(u),this.state={location:u.location,revalidation:u.revalidation,error:u.error}}static getDerivedStateFromError(u){return{error:u}}static getDerivedStateFromProps(u,i){return i.location!==u.location||i.revalidation!=="idle"&&u.revalidation==="idle"?{error:u.error,location:u.location,revalidation:u.revalidation}:{error:u.error!==void 0?u.error:i.error,location:i.location,revalidation:u.revalidation||i.revalidation}}componentDidCatch(u,i){this.props.onError?this.props.onError(u,i):console.error("React Router caught the following error during render",u)}render(){return this.state.error!==void 0?T.createElement(fn.Provider,{value:this.props.routeContext},T.createElement(xr.Provider,{value:this.state.error,children:this.props.component})):this.props.children}};function Sv({routeContext:u,match:i,children:c}){let r=T.useContext(Zl);return r&&r.static&&r.staticContext&&(i.route.errorElement||i.route.ErrorBoundary)&&(r.staticContext._deepestRenderedBoundaryId=i.route.id),T.createElement(fn.Provider,{value:u},c)}function xv(u,i=[],c=null,r=null,f=null){if(u==null){if(!c)return null;if(c.errors)u=c.matches;else if(i.length===0&&!c.initialized&&c.matches.length>0)u=c.matches;else return null}let d=u,m=c?.errors;if(m!=null){let E=d.findIndex(S=>S.route.id&&m?.[S.route.id]!==void 0);Oe(E>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(m).join(",")}`),d=d.slice(0,Math.min(d.length,E+1))}let b=!1,p=-1;if(c)for(let E=0;E=0?d=d.slice(0,p+1):d=[d[0]];break}}}let y=c&&r?(E,S)=>{r(E,{location:c.location,params:c.matches?.[0]?.params??{},errorInfo:S})}:void 0;return d.reduceRight((E,S,C)=>{let z,H=!1,k=null,q=null;c&&(z=m&&S.route.id?m[S.route.id]:void 0,k=S.route.errorElement||gv,b&&(p<0&&C===0?(zm("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),H=!0,q=null):p===C&&(H=!0,q=S.route.hydrateFallbackElement||null)));let L=i.concat(d.slice(0,C+1)),Y=()=>{let V;return z?V=k:H?V=q:S.route.Component?V=T.createElement(S.route.Component,null):S.route.element?V=S.route.element:V=E,T.createElement(Sv,{match:S,routeContext:{outlet:E,matches:L,isDataRoute:c!=null},children:V})};return c&&(S.route.ErrorBoundary||S.route.errorElement||C===0)?T.createElement(bv,{location:c.location,revalidation:c.revalidation,component:k,error:z,children:Y(),routeContext:{outlet:null,matches:L,isDataRoute:!0},onError:y}):Y()},null)}function _r(u){return`${u} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function _v(u){let i=T.useContext(Zl);return Oe(i,_r(u)),i}function Ev(u){let i=T.useContext(Ou);return Oe(i,_r(u)),i}function Tv(u){let i=T.useContext(fn);return Oe(i,_r(u)),i}function Er(u){let i=Tv(u),c=i.matches[i.matches.length-1];return Oe(c.route.id,`${u} can only be used on routes that contain a unique "id"`),c.route.id}function Av(){return Er("useRouteId")}function Cv(){let u=T.useContext(xr),i=Ev("useRouteError"),c=Er("useRouteError");return u!==void 0?u:i.errors?.[c]}function Rv(){let{router:u}=_v("useNavigate"),i=Er("useNavigate"),c=T.useRef(!1);return Nm(()=>{c.current=!0}),T.useCallback(async(f,d={})=>{wt(c.current,Rm),c.current&&(typeof f=="number"?u.navigate(f):await u.navigate(f,{fromRouteId:i,...d}))},[u,i])}var am={};function zm(u,i,c){!i&&!am[u]&&(am[u]=!0,wt(!1,c))}T.memo(Nv);function Nv({routes:u,future:i,state:c,unstable_onError:r}){return Om(u,void 0,c,r,i)}function dr(u){Oe(!1,"A is only ever to be used as the child of element, never rendered directly. Please wrap your in a .")}function Ov({basename:u="/",children:i=null,location:c,navigationType:r="POP",navigator:f,static:d=!1}){Oe(!Pa(),"You cannot render a inside another . You should never have more than one in your app.");let m=u.replace(/^\/*/,"/"),b=T.useMemo(()=>({basename:m,navigator:f,static:d,future:{}}),[m,f,d]);typeof c=="string"&&(c=Ql(c));let{pathname:p="/",search:y="",hash:E="",state:S=null,key:C="default"}=c,z=T.useMemo(()=>{let H=on(p,m);return H==null?null:{location:{pathname:H,search:y,hash:E,state:S,key:C},navigationType:r}},[m,p,y,E,S,C,r]);return wt(z!=null,` is not able to match the URL "${p}${y}${E}" because it does not start with the basename, so the won't render anything.`),z==null?null:T.createElement(Yt.Provider,{value:b},T.createElement(Fa.Provider,{children:i,value:z}))}function zv({children:u,location:i}){return yv(mr(u),i)}function mr(u,i=[]){let c=[];return T.Children.forEach(u,(r,f)=>{if(!T.isValidElement(r))return;let d=[...i,f];if(r.type===T.Fragment){c.push.apply(c,mr(r.props.children,d));return}Oe(r.type===dr,`[${typeof r.type=="string"?r.type:r.type.name}] is not a component. All component children of must be a or `),Oe(!r.props.index||!r.props.children,"An index route cannot have child routes.");let m={id:r.props.id||d.join("-"),caseSensitive:r.props.caseSensitive,element:r.props.element,Component:r.props.Component,index:r.props.index,path:r.props.path,middleware:r.props.middleware,loader:r.props.loader,action:r.props.action,hydrateFallbackElement:r.props.hydrateFallbackElement,HydrateFallback:r.props.HydrateFallback,errorElement:r.props.errorElement,ErrorBoundary:r.props.ErrorBoundary,hasErrorBoundary:r.props.hasErrorBoundary===!0||r.props.ErrorBoundary!=null||r.props.errorElement!=null,shouldRevalidate:r.props.shouldRevalidate,handle:r.props.handle,lazy:r.props.lazy};r.props.children&&(m.children=mr(r.props.children,d)),c.push(m)}),c}var xu="get",_u="application/x-www-form-urlencoded";function zu(u){return u!=null&&typeof u.tagName=="string"}function Mv(u){return zu(u)&&u.tagName.toLowerCase()==="button"}function Dv(u){return zu(u)&&u.tagName.toLowerCase()==="form"}function wv(u){return zu(u)&&u.tagName.toLowerCase()==="input"}function jv(u){return!!(u.metaKey||u.altKey||u.ctrlKey||u.shiftKey)}function Uv(u,i){return u.button===0&&(!i||i==="_self")&&!jv(u)}var gu=null;function Bv(){if(gu===null)try{new FormData(document.createElement("form"),0),gu=!1}catch{gu=!0}return gu}var Lv=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function ur(u){return u!=null&&!Lv.has(u)?(wt(!1,`"${u}" is not a valid \`encType\` for \`\`/\`\` and will default to "${_u}"`),null):u}function Hv(u,i){let c,r,f,d,m;if(Dv(u)){let b=u.getAttribute("action");r=b?on(b,i):null,c=u.getAttribute("method")||xu,f=ur(u.getAttribute("enctype"))||_u,d=new FormData(u)}else if(Mv(u)||wv(u)&&(u.type==="submit"||u.type==="image")){let b=u.form;if(b==null)throw new Error('Cannot submit a - -
- - -
-
- ); -} - function DesktopLayout() { return (
diff --git a/webui/src/components/AuthPanel.jsx b/webui/src/components/AuthPanel.jsx new file mode 100644 index 00000000..694582ff --- /dev/null +++ b/webui/src/components/AuthPanel.jsx @@ -0,0 +1,67 @@ +import { useState } from 'react'; +import { useSession } from '../context/SessionContext.jsx'; + +export default function AuthPanel() { + const { login, setRole } = useSession(); + const [username, setUsername] = useState(''); + const [password, setPassword] = useState(''); + const [loading, setLoading] = useState(false); + + async function handleLogin(event) { + event.preventDefault(); + setLoading(true); + try { + await login(username, password); + setUsername(''); + setPassword(''); + } catch (err) { + alert(err.message); + } finally { + setLoading(false); + } + } + + return ( +
+

Admin login

+
+ setUsername(e.target.value)} + /> + setPassword(e.target.value)} + /> + +
+
+ + +
+
+ ); +} diff --git a/webui/src/components/DriverVideoPanel.jsx b/webui/src/components/DriverVideoPanel.jsx new file mode 100644 index 00000000..cdb1014b --- /dev/null +++ b/webui/src/components/DriverVideoPanel.jsx @@ -0,0 +1,35 @@ +import { useSession } from '../context/SessionContext.jsx'; +import { useTelemetryFrame } from '../context/TelemetryContext.jsx'; +import { useVideoRequests } from '../hooks/useVideoRequests.js'; +import VideoTile from './VideoTile.jsx'; + +export default function DriverVideoPanel() { + const { session } = useSession(); + const roverId = session?.assignment?.roverId; + const sources = useVideoRequests(roverId ? [roverId] : []); + const info = roverId ? sources[roverId] : null; + const frame = useTelemetryFrame(roverId); + const batteryRecord = + roverId && session?.roster + ? session.roster.find((item) => String(item.id) === String(roverId)) + : null; + const batteryConfig = batteryRecord?.battery ?? null; + + return ( +
+ {roverId ? ( +
+ +
+ ) : ( +

Assign a rover to view the video feed.

+ )} +
+ ); +} diff --git a/webui/src/components/LogPanel.jsx b/webui/src/components/LogPanel.jsx new file mode 100644 index 00000000..d1645abc --- /dev/null +++ b/webui/src/components/LogPanel.jsx @@ -0,0 +1,30 @@ +import { useSession } from '../context/SessionContext.jsx'; + +export default function LogPanel() { + const { logs } = useSession(); + return ( +
+
+ Server logs + {logs.length} +
+
+ {logs.length === 0 ? ( +

No logs yet.

+ ) : ( + logs + .slice() + .reverse() + .map((entry) => ( +
+ {entry.timestamp}{' '} + [{entry.level}]{' '} + {entry.label && [{entry.label}]}{' '} + {entry.message} +
+ )) + )} +
+
+ ); +} diff --git a/webui/src/components/RoomCameraPanel.jsx b/webui/src/components/RoomCameraPanel.jsx new file mode 100644 index 00000000..8658851b --- /dev/null +++ b/webui/src/components/RoomCameraPanel.jsx @@ -0,0 +1,8 @@ +export default function RoomCameraPanel() { + return ( +
+

Room camera

+

Feed placeholder. Wire upcoming room cam here.

+
+ ); +} From 57dc40dfd3cd09dabcb1c6629d8942f7cf424248 Mon Sep 17 00:00:00 2001 From: legop3 Date: Sat, 15 Nov 2025 23:43:04 -0500 Subject: [PATCH 37/61] guh --- problems.md | 5 +++++ .../public/assets/{index-BnJ59h72.js => index-XP4uegUE.js} | 2 +- server/public/index.html | 2 +- webui/src/components/DriverVideoPanel.jsx | 3 ++- 4 files changed, 9 insertions(+), 3 deletions(-) create mode 100644 problems.md rename server/public/assets/{index-BnJ59h72.js => index-XP4uegUE.js} (97%) diff --git a/problems.md b/problems.md new file mode 100644 index 00000000..3e772457 --- /dev/null +++ b/problems.md @@ -0,0 +1,5 @@ +## video stream +- video stream needs to always autoplay, even if it cant unmute itself + - currently, it wont play at all unless it can unmute + +## \ No newline at end of file diff --git a/server/public/assets/index-BnJ59h72.js b/server/public/assets/index-XP4uegUE.js similarity index 97% rename from server/public/assets/index-BnJ59h72.js rename to server/public/assets/index-XP4uegUE.js index 50946655..5e487cbf 100644 --- a/server/public/assets/index-BnJ59h72.js +++ b/server/public/assets/index-XP4uegUE.js @@ -8,4 +8,4 @@ Error generating stack: `+l.message+` `+l.stack}}var Hu=Object.prototype.hasOwnProperty,qu=u.unstable_scheduleCallback,Yu=u.unstable_cancelCallback,sp=u.unstable_shouldYield,cp=u.unstable_requestPaint,st=u.unstable_now,rp=u.unstable_getCurrentPriorityLevel,Gr=u.unstable_ImmediatePriority,Vr=u.unstable_UserBlockingPriority,ti=u.unstable_NormalPriority,op=u.unstable_LowPriority,Qr=u.unstable_IdlePriority,fp=u.log,hp=u.unstable_setDisableYieldValue,$l=null,ct=null;function hn(e){if(typeof fp=="function"&&hp(e),ct&&typeof ct.setStrictMode=="function")try{ct.setStrictMode($l,e)}catch{}}var rt=Math.clz32?Math.clz32:pp,dp=Math.log,mp=Math.LN2;function pp(e){return e>>>=0,e===0?32:31-(dp(e)/mp|0)|0}var ni=256,li=262144,ai=4194304;function Yn(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function ii(e,t,n){var l=e.pendingLanes;if(l===0)return 0;var a=0,s=e.suspendedLanes,o=e.pingedLanes;e=e.warmLanes;var h=l&134217727;return h!==0?(l=h&~s,l!==0?a=Yn(l):(o&=h,o!==0?a=Yn(o):n||(n=h&~e,n!==0&&(a=Yn(n))))):(h=l&~s,h!==0?a=Yn(h):o!==0?a=Yn(o):n||(n=l&~e,n!==0&&(a=Yn(n)))),a===0?0:t!==0&&t!==a&&(t&s)===0&&(s=a&-a,n=t&-t,s>=n||s===32&&(n&4194048)!==0)?t:a}function Wl(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function yp(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Zr(){var e=ai;return ai<<=1,(ai&62914560)===0&&(ai=4194304),e}function ku(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function Fl(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function vp(e,t,n,l,a,s){var o=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var h=e.entanglements,g=e.expirationTimes,N=e.hiddenUpdates;for(n=o&~n;0"u")return null;try{return e.activeElement||e.body}catch{return e.body}}var Ep=/[\n"\\]/g;function gt(e){return e.replace(Ep,function(t){return"\\"+t.charCodeAt(0).toString(16)+" "})}function Ku(e,t,n,l,a,s,o,h){e.name="",o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"?e.type=o:e.removeAttribute("type"),t!=null?o==="number"?(t===0&&e.value===""||e.value!=t)&&(e.value=""+vt(t)):e.value!==""+vt(t)&&(e.value=""+vt(t)):o!=="submit"&&o!=="reset"||e.removeAttribute("value"),t!=null?Ju(e,o,vt(t)):n!=null?Ju(e,o,vt(n)):l!=null&&e.removeAttribute("value"),a==null&&s!=null&&(e.defaultChecked=!!s),a!=null&&(e.checked=a&&typeof a!="function"&&typeof a!="symbol"),h!=null&&typeof h!="function"&&typeof h!="symbol"&&typeof h!="boolean"?e.name=""+vt(h):e.removeAttribute("name")}function io(e,t,n,l,a,s,o,h){if(s!=null&&typeof s!="function"&&typeof s!="symbol"&&typeof s!="boolean"&&(e.type=s),t!=null||n!=null){if(!(s!=="submit"&&s!=="reset"||t!=null)){Zu(e);return}n=n!=null?""+vt(n):"",t=t!=null?""+vt(t):n,h||t===e.value||(e.value=t),e.defaultValue=t}l=l??a,l=typeof l!="function"&&typeof l!="symbol"&&!!l,e.checked=h?e.checked:!!l,e.defaultChecked=!!l,o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"&&(e.name=o),Zu(e)}function Ju(e,t,n){t==="number"&&ci(e.ownerDocument)===e||e.defaultValue===""+n||(e.defaultValue=""+n)}function fl(e,t,n,l){if(e=e.options,t){t={};for(var a=0;a"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Iu=!1;if(Vt)try{var ta={};Object.defineProperty(ta,"passive",{get:function(){Iu=!0}}),window.addEventListener("test",ta,ta),window.removeEventListener("test",ta,ta)}catch{Iu=!1}var mn=null,es=null,oi=null;function ho(){if(oi)return oi;var e,t=es,n=t.length,l,a="value"in mn?mn.value:mn.textContent,s=a.length;for(e=0;e=aa),bo=" ",So=!1;function xo(e,t){switch(e){case"keyup":return Fp.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function _o(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var pl=!1;function Ip(e,t){switch(e){case"compositionend":return _o(t);case"keypress":return t.which!==32?null:(So=!0,bo);case"textInput":return e=t.data,e===bo&&So?null:e;default:return null}}function ey(e,t){if(pl)return e==="compositionend"||!is&&xo(e,t)?(e=ho(),oi=es=mn=null,pl=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=l}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=zo(n)}}function Do(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Do(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function wo(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=ci(e.document);t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=ci(e.document)}return t}function cs(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}var cy=Vt&&"documentMode"in document&&11>=document.documentMode,yl=null,rs=null,ca=null,os=!1;function jo(e,t,n){var l=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;os||yl==null||yl!==ci(l)||(l=yl,"selectionStart"in l&&cs(l)?l={start:l.selectionStart,end:l.selectionEnd}:(l=(l.ownerDocument&&l.ownerDocument.defaultView||window).getSelection(),l={anchorNode:l.anchorNode,anchorOffset:l.anchorOffset,focusNode:l.focusNode,focusOffset:l.focusOffset}),ca&&sa(ca,l)||(ca=l,l=lu(rs,"onSelect"),0>=o,a-=o,jt=1<<32-rt(t)+a|n<ne?(se=K,K=null):se=K.sibling;var fe=O(A,K,R[ne],j);if(fe===null){K===null&&(K=se);break}e&&K&&fe.alternate===null&&t(A,K),x=s(fe,x,ne),oe===null?J=fe:oe.sibling=fe,oe=fe,K=se}if(ne===R.length)return n(A,K),ce&&Zt(A,ne),J;if(K===null){for(;nene?(se=K,K=null):se=K.sibling;var Bn=O(A,K,fe.value,j);if(Bn===null){K===null&&(K=se);break}e&&K&&Bn.alternate===null&&t(A,K),x=s(Bn,x,ne),oe===null?J=Bn:oe.sibling=Bn,oe=Bn,K=se}if(fe.done)return n(A,K),ce&&Zt(A,ne),J;if(K===null){for(;!fe.done;ne++,fe=R.next())fe=U(A,fe.value,j),fe!==null&&(x=s(fe,x,ne),oe===null?J=fe:oe.sibling=fe,oe=fe);return ce&&Zt(A,ne),J}for(K=l(K);!fe.done;ne++,fe=R.next())fe=M(K,A,ne,fe.value,j),fe!==null&&(e&&fe.alternate!==null&&K.delete(fe.key===null?ne:fe.key),x=s(fe,x,ne),oe===null?J=fe:oe.sibling=fe,oe=fe);return e&&K.forEach(function(N0){return t(A,N0)}),ce&&Zt(A,ne),J}function Se(A,x,R,j){if(typeof R=="object"&&R!==null&&R.type===k&&R.key===null&&(R=R.props.children),typeof R=="object"&&R!==null){switch(R.$$typeof){case z:e:{for(var J=R.key;x!==null;){if(x.key===J){if(J=R.type,J===k){if(x.tag===7){n(A,x.sibling),j=a(x,R.props.children),j.return=A,A=j;break e}}else if(x.elementType===J||typeof J=="object"&&J!==null&&J.$$typeof===Te&&Fn(J)===x.type){n(A,x.sibling),j=a(x,R.props),ma(j,R),j.return=A,A=j;break e}n(A,x);break}else t(A,x);x=x.sibling}R.type===k?(j=Zn(R.props.children,A.mode,j,R.key),j.return=A,A=j):(j=Si(R.type,R.key,R.props,null,A.mode,j),ma(j,R),j.return=A,A=j)}return o(A);case H:e:{for(J=R.key;x!==null;){if(x.key===J)if(x.tag===4&&x.stateNode.containerInfo===R.containerInfo&&x.stateNode.implementation===R.implementation){n(A,x.sibling),j=a(x,R.children||[]),j.return=A,A=j;break e}else{n(A,x);break}else t(A,x);x=x.sibling}j=vs(R,A.mode,j),j.return=A,A=j}return o(A);case Te:return R=Fn(R),Se(A,x,R,j)}if(Nt(R))return V(A,x,R,j);if(We(R)){if(J=We(R),typeof J!="function")throw Error(r(150));return R=J.call(R),W(A,x,R,j)}if(typeof R.then=="function")return Se(A,x,Ri(R),j);if(R.$$typeof===Q)return Se(A,x,Ei(A,R),j);Ni(A,R)}return typeof R=="string"&&R!==""||typeof R=="number"||typeof R=="bigint"?(R=""+R,x!==null&&x.tag===6?(n(A,x.sibling),j=a(x,R),j.return=A,A=j):(n(A,x),j=ys(R,A.mode,j),j.return=A,A=j),o(A)):n(A,x)}return function(A,x,R,j){try{da=0;var J=Se(A,x,R,j);return Rl=null,J}catch(K){if(K===Cl||K===Ai)throw K;var oe=ft(29,K,null,A.mode);return oe.lanes=j,oe.return=A,oe}finally{}}}var In=lf(!0),af=lf(!1),bn=!1;function Os(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function zs(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function Sn(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function xn(e,t,n){var l=e.updateQueue;if(l===null)return null;if(l=l.shared,(he&2)!==0){var a=l.pending;return a===null?t.next=t:(t.next=a.next,a.next=t),l.pending=t,t=bi(e),ko(e,null,n),t}return gi(e,l,t,n),bi(e)}function pa(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194048)!==0)){var l=t.lanes;l&=e.pendingLanes,n|=l,t.lanes=n,Jr(e,n)}}function Ms(e,t){var n=e.updateQueue,l=e.alternate;if(l!==null&&(l=l.updateQueue,n===l)){var a=null,s=null;if(n=n.firstBaseUpdate,n!==null){do{var o={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};s===null?a=s=o:s=s.next=o,n=n.next}while(n!==null);s===null?a=s=t:s=s.next=t}else a=s=t;n={baseState:l.baseState,firstBaseUpdate:a,lastBaseUpdate:s,shared:l.shared,callbacks:l.callbacks},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}var Ds=!1;function ya(){if(Ds){var e=Al;if(e!==null)throw e}}function va(e,t,n,l){Ds=!1;var a=e.updateQueue;bn=!1;var s=a.firstBaseUpdate,o=a.lastBaseUpdate,h=a.shared.pending;if(h!==null){a.shared.pending=null;var g=h,N=g.next;g.next=null,o===null?s=N:o.next=N,o=g;var D=e.alternate;D!==null&&(D=D.updateQueue,h=D.lastBaseUpdate,h!==o&&(h===null?D.firstBaseUpdate=N:h.next=N,D.lastBaseUpdate=g))}if(s!==null){var U=a.baseState;o=0,D=N=g=null,h=s;do{var O=h.lane&-536870913,M=O!==h.lane;if(M?(ue&O)===O:(l&O)===O){O!==0&&O===Tl&&(Ds=!0),D!==null&&(D=D.next={lane:0,tag:h.tag,payload:h.payload,callback:null,next:null});e:{var V=e,W=h;O=t;var Se=n;switch(W.tag){case 1:if(V=W.payload,typeof V=="function"){U=V.call(Se,U,O);break e}U=V;break e;case 3:V.flags=V.flags&-65537|128;case 0:if(V=W.payload,O=typeof V=="function"?V.call(Se,U,O):V,O==null)break e;U=S({},U,O);break e;case 2:bn=!0}}O=h.callback,O!==null&&(e.flags|=64,M&&(e.flags|=8192),M=a.callbacks,M===null?a.callbacks=[O]:M.push(O))}else M={lane:O,tag:h.tag,payload:h.payload,callback:h.callback,next:null},D===null?(N=D=M,g=U):D=D.next=M,o|=O;if(h=h.next,h===null){if(h=a.shared.pending,h===null)break;M=h,h=M.next,M.next=null,a.lastBaseUpdate=M,a.shared.pending=null}}while(!0);D===null&&(g=U),a.baseState=g,a.firstBaseUpdate=N,a.lastBaseUpdate=D,s===null&&(a.shared.lanes=0),Cn|=o,e.lanes=o,e.memoizedState=U}}function uf(e,t){if(typeof e!="function")throw Error(r(191,e));e.call(t)}function sf(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;es?s:8;var o=w.T,h={};w.T=h,Fs(e,!1,t,n);try{var g=a(),N=w.S;if(N!==null&&N(h,g),g!==null&&typeof g=="object"&&typeof g.then=="function"){var D=vy(g,l);Sa(e,t,D,yt(e))}else Sa(e,t,l,yt(e))}catch(U){Sa(e,t,{then:function(){},status:"rejected",reason:U},yt())}finally{X.p=s,o!==null&&h.types!==null&&(o.types=h.types),w.T=o}}function Ey(){}function $s(e,t,n,l){if(e.tag!==5)throw Error(r(476));var a=qf(e).queue;Hf(e,a,t,F,n===null?Ey:function(){return Yf(e),n(l)})}function qf(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:F,baseState:F,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Wt,lastRenderedState:F},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Wt,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function Yf(e){var t=qf(e);t.next===null&&(t=e.alternate.memoizedState),Sa(e,t.next.queue,{},yt())}function Ws(){return Ke(La)}function kf(){return je().memoizedState}function Xf(){return je().memoizedState}function Ty(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var n=yt();e=Sn(n);var l=xn(t,e,n);l!==null&&(ut(l,t,n),pa(l,t,n)),t={cache:As()},e.payload=t;return}t=t.return}}function Ay(e,t,n){var l=yt();n={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},Hi(e)?Vf(t,n):(n=ms(e,t,n,l),n!==null&&(ut(n,e,l),Qf(n,t,l)))}function Gf(e,t,n){var l=yt();Sa(e,t,n,l)}function Sa(e,t,n,l){var a={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(Hi(e))Vf(t,a);else{var s=e.alternate;if(e.lanes===0&&(s===null||s.lanes===0)&&(s=t.lastRenderedReducer,s!==null))try{var o=t.lastRenderedState,h=s(o,n);if(a.hasEagerState=!0,a.eagerState=h,ot(h,o))return gi(e,t,a,0),Ee===null&&vi(),!1}catch{}finally{}if(n=ms(e,t,a,l),n!==null)return ut(n,e,l),Qf(n,t,l),!0}return!1}function Fs(e,t,n,l){if(l={lane:2,revertLane:Oc(),gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},Hi(e)){if(t)throw Error(r(479))}else t=ms(e,n,l,2),t!==null&&ut(t,e,2)}function Hi(e){var t=e.alternate;return e===te||t!==null&&t===te}function Vf(e,t){Ol=Mi=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Qf(e,t,n){if((n&4194048)!==0){var l=t.lanes;l&=e.pendingLanes,n|=l,t.lanes=n,Jr(e,n)}}var xa={readContext:Ke,use:ji,useCallback:ze,useContext:ze,useEffect:ze,useImperativeHandle:ze,useLayoutEffect:ze,useInsertionEffect:ze,useMemo:ze,useReducer:ze,useRef:ze,useState:ze,useDebugValue:ze,useDeferredValue:ze,useTransition:ze,useSyncExternalStore:ze,useId:ze,useHostTransitionStatus:ze,useFormState:ze,useActionState:ze,useOptimistic:ze,useMemoCache:ze,useCacheRefresh:ze};xa.useEffectEvent=ze;var Zf={readContext:Ke,use:ji,useCallback:function(e,t){return Ie().memoizedState=[e,t===void 0?null:t],e},useContext:Ke,useEffect:Of,useImperativeHandle:function(e,t,n){n=n!=null?n.concat([e]):null,Bi(4194308,4,wf.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Bi(4194308,4,e,t)},useInsertionEffect:function(e,t){Bi(4,2,e,t)},useMemo:function(e,t){var n=Ie();t=t===void 0?null:t;var l=e();if(el){hn(!0);try{e()}finally{hn(!1)}}return n.memoizedState=[l,t],l},useReducer:function(e,t,n){var l=Ie();if(n!==void 0){var a=n(t);if(el){hn(!0);try{n(t)}finally{hn(!1)}}}else a=t;return l.memoizedState=l.baseState=a,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:a},l.queue=e,e=e.dispatch=Ay.bind(null,te,e),[l.memoizedState,e]},useRef:function(e){var t=Ie();return e={current:e},t.memoizedState=e},useState:function(e){e=Vs(e);var t=e.queue,n=Gf.bind(null,te,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:Ks,useDeferredValue:function(e,t){var n=Ie();return Js(n,e,t)},useTransition:function(){var e=Vs(!1);return e=Hf.bind(null,te,e.queue,!0,!1),Ie().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var l=te,a=Ie();if(ce){if(n===void 0)throw Error(r(407));n=n()}else{if(n=t(),Ee===null)throw Error(r(349));(ue&127)!==0||df(l,t,n)}a.memoizedState=n;var s={value:n,getSnapshot:t};return a.queue=s,Of(pf.bind(null,l,s,e),[e]),l.flags|=2048,Ml(9,{destroy:void 0},mf.bind(null,l,s,n,t),null),n},useId:function(){var e=Ie(),t=Ee.identifierPrefix;if(ce){var n=Ut,l=jt;n=(l&~(1<<32-rt(l)-1)).toString(32)+n,t="_"+t+"R_"+n,n=Di++,0<\/script>",s=s.removeChild(s.firstChild);break;case"select":s=typeof l.is=="string"?o.createElement("select",{is:l.is}):o.createElement("select"),l.multiple?s.multiple=!0:l.size&&(s.size=l.size);break;default:s=typeof l.is=="string"?o.createElement(a,{is:l.is}):o.createElement(a)}}s[Qe]=t,s[et]=l;e:for(o=t.child;o!==null;){if(o.tag===5||o.tag===6)s.appendChild(o.stateNode);else if(o.tag!==4&&o.tag!==27&&o.child!==null){o.child.return=o,o=o.child;continue}if(o===t)break e;for(;o.sibling===null;){if(o.return===null||o.return===t)break e;o=o.return}o.sibling.return=o.return,o=o.sibling}t.stateNode=s;e:switch($e(s,a,l),a){case"button":case"input":case"select":case"textarea":l=!!l.autoFocus;break e;case"img":l=!0;break e;default:l=!1}l&&Pt(t)}}return Ce(t),fc(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==l&&Pt(t);else{if(typeof l!="string"&&t.stateNode===null)throw Error(r(166));if(e=le.current,_l(t)){if(e=t.stateNode,n=t.memoizedProps,l=null,a=Ze,a!==null)switch(a.tag){case 27:case 5:l=a.memoizedProps}e[Qe]=t,e=!!(e.nodeValue===n||l!==null&&l.suppressHydrationWarning===!0||fd(e.nodeValue,n)),e||vn(t,!0)}else e=au(e).createTextNode(l),e[Qe]=t,t.stateNode=e}return Ce(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(l=_l(t),n!==null){if(e===null){if(!l)throw Error(r(318));if(e=t.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(r(557));e[Qe]=t}else Kn(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Ce(t),e=!1}else n=xs(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(dt(t),t):(dt(t),null);if((t.flags&128)!==0)throw Error(r(558))}return Ce(t),null;case 13:if(l=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(a=_l(t),l!==null&&l.dehydrated!==null){if(e===null){if(!a)throw Error(r(318));if(a=t.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(r(317));a[Qe]=t}else Kn(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Ce(t),a=!1}else a=xs(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=a),a=!0;if(!a)return t.flags&256?(dt(t),t):(dt(t),null)}return dt(t),(t.flags&128)!==0?(t.lanes=n,t):(n=l!==null,e=e!==null&&e.memoizedState!==null,n&&(l=t.child,a=null,l.alternate!==null&&l.alternate.memoizedState!==null&&l.alternate.memoizedState.cachePool!==null&&(a=l.alternate.memoizedState.cachePool.pool),s=null,l.memoizedState!==null&&l.memoizedState.cachePool!==null&&(s=l.memoizedState.cachePool.pool),s!==a&&(l.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),Gi(t,t.updateQueue),Ce(t),null);case 4:return De(),e===null&&wc(t.stateNode.containerInfo),Ce(t),null;case 10:return Jt(t.type),Ce(t),null;case 19:if(B(we),l=t.memoizedState,l===null)return Ce(t),null;if(a=(t.flags&128)!==0,s=l.rendering,s===null)if(a)Ea(l,!1);else{if(Me!==0||e!==null&&(e.flags&128)!==0)for(e=t.child;e!==null;){if(s=zi(e),s!==null){for(t.flags|=128,Ea(l,!1),e=s.updateQueue,t.updateQueue=e,Gi(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)Xo(n,e),n=n.sibling;return G(we,we.current&1|2),ce&&Zt(t,l.treeForkCount),t.child}e=e.sibling}l.tail!==null&&st()>Ji&&(t.flags|=128,a=!0,Ea(l,!1),t.lanes=4194304)}else{if(!a)if(e=zi(s),e!==null){if(t.flags|=128,a=!0,e=e.updateQueue,t.updateQueue=e,Gi(t,e),Ea(l,!0),l.tail===null&&l.tailMode==="hidden"&&!s.alternate&&!ce)return Ce(t),null}else 2*st()-l.renderingStartTime>Ji&&n!==536870912&&(t.flags|=128,a=!0,Ea(l,!1),t.lanes=4194304);l.isBackwards?(s.sibling=t.child,t.child=s):(e=l.last,e!==null?e.sibling=s:t.child=s,l.last=s)}return l.tail!==null?(e=l.tail,l.rendering=e,l.tail=e.sibling,l.renderingStartTime=st(),e.sibling=null,n=we.current,G(we,a?n&1|2:n&1),ce&&Zt(t,l.treeForkCount),e):(Ce(t),null);case 22:case 23:return dt(t),js(),l=t.memoizedState!==null,e!==null?e.memoizedState!==null!==l&&(t.flags|=8192):l&&(t.flags|=8192),l?(n&536870912)!==0&&(t.flags&128)===0&&(Ce(t),t.subtreeFlags&6&&(t.flags|=8192)):Ce(t),n=t.updateQueue,n!==null&&Gi(t,n.retryQueue),n=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),l=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(l=t.memoizedState.cachePool.pool),l!==n&&(t.flags|=2048),e!==null&&B(Wn),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),Jt(Be),Ce(t),null;case 25:return null;case 30:return null}throw Error(r(156,t.tag))}function zy(e,t){switch(bs(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Jt(Be),De(),e=t.flags,(e&65536)!==0&&(e&128)===0?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return ei(t),null;case 31:if(t.memoizedState!==null){if(dt(t),t.alternate===null)throw Error(r(340));Kn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(dt(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(r(340));Kn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return B(we),null;case 4:return De(),null;case 10:return Jt(t.type),null;case 22:case 23:return dt(t),js(),e!==null&&B(Wn),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return Jt(Be),null;case 25:return null;default:return null}}function yh(e,t){switch(bs(t),t.tag){case 3:Jt(Be),De();break;case 26:case 27:case 5:ei(t);break;case 4:De();break;case 31:t.memoizedState!==null&&dt(t);break;case 13:dt(t);break;case 19:B(we);break;case 10:Jt(t.type);break;case 22:case 23:dt(t),js(),e!==null&&B(Wn);break;case 24:Jt(Be)}}function Ta(e,t){try{var n=t.updateQueue,l=n!==null?n.lastEffect:null;if(l!==null){var a=l.next;n=a;do{if((n.tag&e)===e){l=void 0;var s=n.create,o=n.inst;l=s(),o.destroy=l}n=n.next}while(n!==a)}}catch(h){pe(t,t.return,h)}}function Tn(e,t,n){try{var l=t.updateQueue,a=l!==null?l.lastEffect:null;if(a!==null){var s=a.next;l=s;do{if((l.tag&e)===e){var o=l.inst,h=o.destroy;if(h!==void 0){o.destroy=void 0,a=t;var g=n,N=h;try{N()}catch(D){pe(a,g,D)}}}l=l.next}while(l!==s)}}catch(D){pe(t,t.return,D)}}function vh(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{sf(t,n)}catch(l){pe(e,e.return,l)}}}function gh(e,t,n){n.props=tl(e.type,e.memoizedProps),n.state=e.memoizedState;try{n.componentWillUnmount()}catch(l){pe(e,t,l)}}function Aa(e,t){try{var n=e.ref;if(n!==null){switch(e.tag){case 26:case 27:case 5:var l=e.stateNode;break;case 30:l=e.stateNode;break;default:l=e.stateNode}typeof n=="function"?e.refCleanup=n(l):n.current=l}}catch(a){pe(e,t,a)}}function Bt(e,t){var n=e.ref,l=e.refCleanup;if(n!==null)if(typeof l=="function")try{l()}catch(a){pe(e,t,a)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n=="function")try{n(null)}catch(a){pe(e,t,a)}else n.current=null}function bh(e){var t=e.type,n=e.memoizedProps,l=e.stateNode;try{e:switch(t){case"button":case"input":case"select":case"textarea":n.autoFocus&&l.focus();break e;case"img":n.src?l.src=n.src:n.srcSet&&(l.srcset=n.srcSet)}}catch(a){pe(e,e.return,a)}}function hc(e,t,n){try{var l=e.stateNode;Py(l,e.type,n,t),l[et]=t}catch(a){pe(e,e.return,a)}}function Sh(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&Mn(e.type)||e.tag===4}function dc(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||Sh(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&&Mn(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 mc(e,t,n){var l=e.tag;if(l===5||l===6)e=e.stateNode,t?(n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n).insertBefore(e,t):(t=n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n,t.appendChild(e),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=Gt));else if(l!==4&&(l===27&&Mn(e.type)&&(n=e.stateNode,t=null),e=e.child,e!==null))for(mc(e,t,n),e=e.sibling;e!==null;)mc(e,t,n),e=e.sibling}function Vi(e,t,n){var l=e.tag;if(l===5||l===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(l!==4&&(l===27&&Mn(e.type)&&(n=e.stateNode),e=e.child,e!==null))for(Vi(e,t,n),e=e.sibling;e!==null;)Vi(e,t,n),e=e.sibling}function xh(e){var t=e.stateNode,n=e.memoizedProps;try{for(var l=e.type,a=t.attributes;a.length;)t.removeAttributeNode(a[0]);$e(t,l,n),t[Qe]=e,t[et]=n}catch(s){pe(e,e.return,s)}}var It=!1,qe=!1,pc=!1,_h=typeof WeakSet=="function"?WeakSet:Set,Ve=null;function My(e,t){if(e=e.containerInfo,Bc=fu,e=wo(e),cs(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var l=n.getSelection&&n.getSelection();if(l&&l.rangeCount!==0){n=l.anchorNode;var a=l.anchorOffset,s=l.focusNode;l=l.focusOffset;try{n.nodeType,s.nodeType}catch{n=null;break e}var o=0,h=-1,g=-1,N=0,D=0,U=e,O=null;t:for(;;){for(var M;U!==n||a!==0&&U.nodeType!==3||(h=o+a),U!==s||l!==0&&U.nodeType!==3||(g=o+l),U.nodeType===3&&(o+=U.nodeValue.length),(M=U.firstChild)!==null;)O=U,U=M;for(;;){if(U===e)break t;if(O===n&&++N===a&&(h=o),O===s&&++D===l&&(g=o),(M=U.nextSibling)!==null)break;U=O,O=U.parentNode}U=M}n=h===-1||g===-1?null:{start:h,end:g}}else n=null}n=n||{start:0,end:0}}else n=null;for(Lc={focusedElem:e,selectionRange:n},fu=!1,Ve=t;Ve!==null;)if(t=Ve,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,Ve=e;else for(;Ve!==null;){switch(t=Ve,s=t.alternate,e=t.flags,t.tag){case 0:if((e&4)!==0&&(e=t.updateQueue,e=e!==null?e.events:null,e!==null))for(n=0;n title"))),$e(s,l,n),s[Qe]=e,Ge(s),l=s;break e;case"link":var o=Nd("link","href",a).get(l+(n.href||""));if(o){for(var h=0;hSe&&(o=Se,Se=W,W=o);var A=Mo(h,W),x=Mo(h,Se);if(A&&x&&(M.rangeCount!==1||M.anchorNode!==A.node||M.anchorOffset!==A.offset||M.focusNode!==x.node||M.focusOffset!==x.offset)){var R=U.createRange();R.setStart(A.node,A.offset),M.removeAllRanges(),W>Se?(M.addRange(R),M.extend(x.node,x.offset)):(R.setEnd(x.node,x.offset),M.addRange(R))}}}}for(U=[],M=h;M=M.parentNode;)M.nodeType===1&&U.push({element:M,left:M.scrollLeft,top:M.scrollTop});for(typeof h.focus=="function"&&h.focus(),h=0;hn?32:n,w.T=null,n=_c,_c=null;var s=Nn,o=an;if(ke=0,Bl=Nn=null,an=0,(he&6)!==0)throw Error(r(331));var h=he;if(he|=4,wh(s.current),zh(s,s.current,o,n),he=h,Ma(0,!1),ct&&typeof ct.onPostCommitFiberRoot=="function")try{ct.onPostCommitFiberRoot($l,s)}catch{}return!0}finally{X.p=a,w.T=l,Fh(e,t)}}function Ih(e,t,n){t=St(n,t),t=tc(e.stateNode,t,2),e=xn(e,t,2),e!==null&&(Fl(e,2),Lt(e))}function pe(e,t,n){if(e.tag===3)Ih(e,e,n);else for(;t!==null;){if(t.tag===3){Ih(t,e,n);break}else if(t.tag===1){var l=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof l.componentDidCatch=="function"&&(Rn===null||!Rn.has(l))){e=St(n,e),n=eh(2),l=xn(t,n,2),l!==null&&(th(n,l,t,e),Fl(l,2),Lt(l));break}}t=t.return}}function Cc(e,t,n){var l=e.pingCache;if(l===null){l=e.pingCache=new jy;var a=new Set;l.set(t,a)}else a=l.get(t),a===void 0&&(a=new Set,l.set(t,a));a.has(n)||(gc=!0,a.add(n),e=qy.bind(null,e,t,n),t.then(e,e))}function qy(e,t,n){var l=e.pingCache;l!==null&&l.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,Ee===e&&(ue&n)===n&&(Me===4||Me===3&&(ue&62914560)===ue&&300>st()-Ki?(he&2)===0&&Ll(e,0):bc|=n,Ul===ue&&(Ul=0)),Lt(e)}function ed(e,t){t===0&&(t=Zr()),e=Qn(e,t),e!==null&&(Fl(e,t),Lt(e))}function Yy(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),ed(e,n)}function ky(e,t){var n=0;switch(e.tag){case 31:case 13:var l=e.stateNode,a=e.memoizedState;a!==null&&(n=a.retryLane);break;case 19:l=e.stateNode;break;case 22:l=e.stateNode._retryCache;break;default:throw Error(r(314))}l!==null&&l.delete(t),ed(e,n)}function Xy(e,t){return qu(e,t)}var eu=null,ql=null,Rc=!1,tu=!1,Nc=!1,zn=0;function Lt(e){e!==ql&&e.next===null&&(ql===null?eu=ql=e:ql=ql.next=e),tu=!0,Rc||(Rc=!0,Vy())}function Ma(e,t){if(!Nc&&tu){Nc=!0;do for(var n=!1,l=eu;l!==null;){if(e!==0){var a=l.pendingLanes;if(a===0)var s=0;else{var o=l.suspendedLanes,h=l.pingedLanes;s=(1<<31-rt(42|e)+1)-1,s&=a&~(o&~h),s=s&201326741?s&201326741|1:s?s|2:0}s!==0&&(n=!0,ad(l,s))}else s=ue,s=ii(l,l===Ee?s:0,l.cancelPendingCommit!==null||l.timeoutHandle!==-1),(s&3)===0||Wl(l,s)||(n=!0,ad(l,s));l=l.next}while(n);Nc=!1}}function Gy(){td()}function td(){tu=Rc=!1;var e=0;zn!==0&&e0()&&(e=zn);for(var t=st(),n=null,l=eu;l!==null;){var a=l.next,s=nd(l,t);s===0?(l.next=null,n===null?eu=a:n.next=a,a===null&&(ql=n)):(n=l,(e!==0||(s&3)!==0)&&(tu=!0)),l=a}ke!==0&&ke!==5||Ma(e),zn!==0&&(zn=0)}function nd(e,t){for(var n=e.suspendedLanes,l=e.pingedLanes,a=e.expirationTimes,s=e.pendingLanes&-62914561;0h)break;var D=g.transferSize,U=g.initiatorType;D&&hd(U)&&(g=g.responseEnd,o+=D*(g"u"?null:document;function Td(e,t,n){var l=Yl;if(l&&typeof t=="string"&&t){var a=gt(t);a='link[rel="'+e+'"][href="'+a+'"]',typeof n=="string"&&(a+='[crossorigin="'+n+'"]'),Ed.has(a)||(Ed.add(a),e={rel:e,crossOrigin:n,href:t},l.querySelector(a)===null&&(t=l.createElement("link"),$e(t,"link",e),Ge(t),l.head.appendChild(t)))}}function r0(e){un.D(e),Td("dns-prefetch",e,null)}function o0(e,t){un.C(e,t),Td("preconnect",e,t)}function f0(e,t,n){un.L(e,t,n);var l=Yl;if(l&&e&&t){var a='link[rel="preload"][as="'+gt(t)+'"]';t==="image"&&n&&n.imageSrcSet?(a+='[imagesrcset="'+gt(n.imageSrcSet)+'"]',typeof n.imageSizes=="string"&&(a+='[imagesizes="'+gt(n.imageSizes)+'"]')):a+='[href="'+gt(e)+'"]';var s=a;switch(t){case"style":s=kl(e);break;case"script":s=Xl(e)}Ct.has(s)||(e=S({rel:"preload",href:t==="image"&&n&&n.imageSrcSet?void 0:e,as:t},n),Ct.set(s,e),l.querySelector(a)!==null||t==="style"&&l.querySelector(Ua(s))||t==="script"&&l.querySelector(Ba(s))||(t=l.createElement("link"),$e(t,"link",e),Ge(t),l.head.appendChild(t)))}}function h0(e,t){un.m(e,t);var n=Yl;if(n&&e){var l=t&&typeof t.as=="string"?t.as:"script",a='link[rel="modulepreload"][as="'+gt(l)+'"][href="'+gt(e)+'"]',s=a;switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":s=Xl(e)}if(!Ct.has(s)&&(e=S({rel:"modulepreload",href:e},t),Ct.set(s,e),n.querySelector(a)===null)){switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(n.querySelector(Ba(s)))return}l=n.createElement("link"),$e(l,"link",e),Ge(l),n.head.appendChild(l)}}}function d0(e,t,n){un.S(e,t,n);var l=Yl;if(l&&e){var a=rl(l).hoistableStyles,s=kl(e);t=t||"default";var o=a.get(s);if(!o){var h={loading:0,preload:null};if(o=l.querySelector(Ua(s)))h.loading=5;else{e=S({rel:"stylesheet",href:e,"data-precedence":t},n),(n=Ct.get(s))&&Vc(e,n);var g=o=l.createElement("link");Ge(g),$e(g,"link",e),g._p=new Promise(function(N,D){g.onload=N,g.onerror=D}),g.addEventListener("load",function(){h.loading|=1}),g.addEventListener("error",function(){h.loading|=2}),h.loading|=4,uu(o,t,l)}o={type:"stylesheet",instance:o,count:1,state:h},a.set(s,o)}}}function m0(e,t){un.X(e,t);var n=Yl;if(n&&e){var l=rl(n).hoistableScripts,a=Xl(e),s=l.get(a);s||(s=n.querySelector(Ba(a)),s||(e=S({src:e,async:!0},t),(t=Ct.get(a))&&Qc(e,t),s=n.createElement("script"),Ge(s),$e(s,"link",e),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function p0(e,t){un.M(e,t);var n=Yl;if(n&&e){var l=rl(n).hoistableScripts,a=Xl(e),s=l.get(a);s||(s=n.querySelector(Ba(a)),s||(e=S({src:e,async:!0,type:"module"},t),(t=Ct.get(a))&&Qc(e,t),s=n.createElement("script"),Ge(s),$e(s,"link",e),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function Ad(e,t,n,l){var a=(a=le.current)?iu(a):null;if(!a)throw Error(r(446));switch(e){case"meta":case"title":return null;case"style":return typeof n.precedence=="string"&&typeof n.href=="string"?(t=kl(n.href),n=rl(a).hoistableStyles,l=n.get(t),l||(l={type:"style",instance:null,count:0,state:null},n.set(t,l)),l):{type:"void",instance:null,count:0,state:null};case"link":if(n.rel==="stylesheet"&&typeof n.href=="string"&&typeof n.precedence=="string"){e=kl(n.href);var s=rl(a).hoistableStyles,o=s.get(e);if(o||(a=a.ownerDocument||a,o={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},s.set(e,o),(s=a.querySelector(Ua(e)))&&!s._p&&(o.instance=s,o.state.loading=5),Ct.has(e)||(n={rel:"preload",as:"style",href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},Ct.set(e,n),s||y0(a,e,n,o.state))),t&&l===null)throw Error(r(528,""));return o}if(t&&l!==null)throw Error(r(529,""));return null;case"script":return t=n.async,n=n.src,typeof n=="string"&&t&&typeof t!="function"&&typeof t!="symbol"?(t=Xl(n),n=rl(a).hoistableScripts,l=n.get(t),l||(l={type:"script",instance:null,count:0,state:null},n.set(t,l)),l):{type:"void",instance:null,count:0,state:null};default:throw Error(r(444,e))}}function kl(e){return'href="'+gt(e)+'"'}function Ua(e){return'link[rel="stylesheet"]['+e+"]"}function Cd(e){return S({},e,{"data-precedence":e.precedence,precedence:null})}function y0(e,t,n,l){e.querySelector('link[rel="preload"][as="style"]['+t+"]")?l.loading=1:(t=e.createElement("link"),l.preload=t,t.addEventListener("load",function(){return l.loading|=1}),t.addEventListener("error",function(){return l.loading|=2}),$e(t,"link",n),Ge(t),e.head.appendChild(t))}function Xl(e){return'[src="'+gt(e)+'"]'}function Ba(e){return"script[async]"+e}function Rd(e,t,n){if(t.count++,t.instance===null)switch(t.type){case"style":var l=e.querySelector('style[data-href~="'+gt(n.href)+'"]');if(l)return t.instance=l,Ge(l),l;var a=S({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return l=(e.ownerDocument||e).createElement("style"),Ge(l),$e(l,"style",a),uu(l,n.precedence,e),t.instance=l;case"stylesheet":a=kl(n.href);var s=e.querySelector(Ua(a));if(s)return t.state.loading|=4,t.instance=s,Ge(s),s;l=Cd(n),(a=Ct.get(a))&&Vc(l,a),s=(e.ownerDocument||e).createElement("link"),Ge(s);var o=s;return o._p=new Promise(function(h,g){o.onload=h,o.onerror=g}),$e(s,"link",l),t.state.loading|=4,uu(s,n.precedence,e),t.instance=s;case"script":return s=Xl(n.src),(a=e.querySelector(Ba(s)))?(t.instance=a,Ge(a),a):(l=n,(a=Ct.get(s))&&(l=S({},n),Qc(l,a)),e=e.ownerDocument||e,a=e.createElement("script"),Ge(a),$e(a,"link",l),e.head.appendChild(a),t.instance=a);case"void":return null;default:throw Error(r(443,t.type))}else t.type==="stylesheet"&&(t.state.loading&4)===0&&(l=t.instance,t.state.loading|=4,uu(l,n.precedence,e));return t.instance}function uu(e,t,n){for(var l=n.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=l.length?l[l.length-1]:null,s=a,o=0;o title"):null)}function v0(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case"meta":case"title":return!0;case"style":if(typeof t.precedence!="string"||typeof t.href!="string"||t.href==="")break;return!0;case"link":if(typeof t.rel!="string"||typeof t.href!="string"||t.href===""||t.onLoad||t.onError)break;switch(t.rel){case"stylesheet":return e=t.disabled,typeof t.precedence=="string"&&e==null;default:return!0}case"script":if(t.async&&typeof t.async!="function"&&typeof t.async!="symbol"&&!t.onLoad&&!t.onError&&t.src&&typeof t.src=="string")return!0}return!1}function zd(e){return!(e.type==="stylesheet"&&(e.state.loading&3)===0)}function g0(e,t,n,l){if(n.type==="stylesheet"&&(typeof l.media!="string"||matchMedia(l.media).matches!==!1)&&(n.state.loading&4)===0){if(n.instance===null){var a=kl(l.href),s=t.querySelector(Ua(a));if(s){t=s._p,t!==null&&typeof t=="object"&&typeof t.then=="function"&&(e.count++,e=cu.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=s,Ge(s);return}s=t.ownerDocument||t,l=Cd(l),(a=Ct.get(a))&&Vc(l,a),s=s.createElement("link"),Ge(s);var o=s;o._p=new Promise(function(h,g){o.onload=h,o.onerror=g}),$e(s,"link",l),n.instance=s}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&(n.state.loading&3)===0&&(e.count++,n=cu.bind(e),t.addEventListener("load",n),t.addEventListener("error",n))}}var Zc=0;function b0(e,t){return e.stylesheets&&e.count===0&&ou(e,e.stylesheets),0Zc?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(l),clearTimeout(a)}}:null}function cu(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)ou(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var ru=null;function ou(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,ru=new Map,t.forEach(S0,e),ru=null,cu.call(e))}function S0(e,t){if(!(t.state.loading&4)){var n=ru.get(e);if(n)var l=n.get(null);else{n=new Map,ru.set(e,n);for(var a=e.querySelectorAll("link[data-precedence],style[data-precedence]"),s=0;s"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(u)}catch(i){console.error(i)}}return u(),tr.exports=B0(),tr.exports}var H0=L0();var em="popstate";function q0(u={}){function i(r,f){let{pathname:d,search:m,hash:b}=r.location;return hr("",{pathname:d,search:m,hash:b},f.state&&f.state.usr||null,f.state&&f.state.key||"default")}function c(r,f){return typeof f=="string"?f:Wa(f)}return k0(i,c,null,u)}function Oe(u,i){if(u===!1||u===null||typeof u>"u")throw new Error(i)}function wt(u,i){if(!u){typeof console<"u"&&console.warn(i);try{throw new Error(i)}catch{}}}function Y0(){return Math.random().toString(36).substring(2,10)}function tm(u,i){return{usr:u.state,key:u.key,idx:i}}function hr(u,i,c=null,r){return{pathname:typeof u=="string"?u:u.pathname,search:"",hash:"",...typeof i=="string"?Ql(i):i,state:c,key:i&&i.key||r||Y0()}}function Wa({pathname:u="/",search:i="",hash:c=""}){return i&&i!=="?"&&(u+=i.charAt(0)==="?"?i:"?"+i),c&&c!=="#"&&(u+=c.charAt(0)==="#"?c:"#"+c),u}function Ql(u){let i={};if(u){let c=u.indexOf("#");c>=0&&(i.hash=u.substring(c),u=u.substring(0,c));let r=u.indexOf("?");r>=0&&(i.search=u.substring(r),u=u.substring(0,r)),u&&(i.pathname=u)}return i}function k0(u,i,c,r={}){let{window:f=document.defaultView,v5Compat:d=!1}=r,m=f.history,b="POP",p=null,y=E();y==null&&(y=0,m.replaceState({...m.state,idx:y},""));function E(){return(m.state||{idx:null}).idx}function S(){b="POP";let Y=E(),L=Y==null?null:Y-y;y=Y,p&&p({action:b,location:k.location,delta:L})}function C(Y,L){b="PUSH";let q=hr(k.location,Y,L);y=E()+1;let Q=tm(q,y),P=k.createHref(q);try{m.pushState(Q,"",P)}catch(ye){if(ye instanceof DOMException&&ye.name==="DataCloneError")throw ye;f.location.assign(P)}d&&p&&p({action:b,location:k.location,delta:1})}function z(Y,L){b="REPLACE";let q=hr(k.location,Y,L);y=E();let Q=tm(q,y),P=k.createHref(q);m.replaceState(Q,"",P),d&&p&&p({action:b,location:k.location,delta:0})}function H(Y){return X0(Y)}let k={get action(){return b},get location(){return u(f,m)},listen(Y){if(p)throw new Error("A history only accepts one active listener");return f.addEventListener(em,S),p=Y,()=>{f.removeEventListener(em,S),p=null}},createHref(Y){return i(f,Y)},createURL:H,encodeLocation(Y){let L=H(Y);return{pathname:L.pathname,search:L.search,hash:L.hash}},push:C,replace:z,go(Y){return m.go(Y)}};return k}function X0(u,i=!1){let c="http://localhost";typeof window<"u"&&(c=window.location.origin!=="null"?window.location.origin:window.location.href),Oe(c,"No window.location.(origin|href) available to create URL");let r=typeof u=="string"?u:Wa(u);return r=r.replace(/ $/,"%20"),!i&&r.startsWith("//")&&(r=c+r),new URL(r,c)}function Sm(u,i,c="/"){return G0(u,i,c,!1)}function G0(u,i,c,r){let f=typeof i=="string"?Ql(i):i,d=rn(f.pathname||"/",c);if(d==null)return null;let m=xm(u);V0(m);let b=null;for(let p=0;b==null&&p{let E={relativePath:y===void 0?m.path||"":y,caseSensitive:m.caseSensitive===!0,childrenIndex:b,route:m};if(E.relativePath.startsWith("/")){if(!E.relativePath.startsWith(r)&&p)return;Oe(E.relativePath.startsWith(r),`Absolute route path "${E.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),E.relativePath=E.relativePath.slice(r.length)}let S=cn([r,E.relativePath]),C=c.concat(E);m.children&&m.children.length>0&&(Oe(m.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${S}".`),xm(m.children,i,C,S,p)),!(m.path==null&&!m.index)&&i.push({path:S,score:F0(S,m.index),routesMeta:C})};return u.forEach((m,b)=>{if(m.path===""||!m.path?.includes("?"))d(m,b);else for(let p of _m(m.path))d(m,b,!0,p)}),i}function _m(u){let i=u.split("/");if(i.length===0)return[];let[c,...r]=i,f=c.endsWith("?"),d=c.replace(/\?$/,"");if(r.length===0)return f?[d,""]:[d];let m=_m(r.join("/")),b=[];return b.push(...m.map(p=>p===""?d:[d,p].join("/"))),f&&b.push(...m),b.map(p=>u.startsWith("/")&&p===""?"/":p)}function V0(u){u.sort((i,c)=>i.score!==c.score?c.score-i.score:P0(i.routesMeta.map(r=>r.childrenIndex),c.routesMeta.map(r=>r.childrenIndex)))}var Q0=/^:[\w-]+$/,Z0=3,K0=2,J0=1,$0=10,W0=-2,nm=u=>u==="*";function F0(u,i){let c=u.split("/"),r=c.length;return c.some(nm)&&(r+=W0),i&&(r+=K0),c.filter(f=>!nm(f)).reduce((f,d)=>f+(Q0.test(d)?Z0:d===""?J0:$0),r)}function P0(u,i){return u.length===i.length&&u.slice(0,-1).every((r,f)=>r===i[f])?u[u.length-1]-i[i.length-1]:0}function I0(u,i,c=!1){let{routesMeta:r}=u,f={},d="/",m=[];for(let b=0;b{if(E==="*"){let H=b[C]||"";m=d.slice(0,d.length-H.length).replace(/(.)\/+$/,"$1")}const z=b[C];return S&&!z?y[E]=void 0:y[E]=(z||"").replace(/%2F/g,"/"),y},{}),pathname:d,pathnameBase:m,pattern:u}}function ev(u,i=!1,c=!0){wt(u==="*"||!u.endsWith("*")||u.endsWith("/*"),`Route path "${u}" will be treated as if it were "${u.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${u.replace(/\*$/,"/*")}".`);let r=[],f="^"+u.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(m,b,p)=>(r.push({paramName:b,isOptional:p!=null}),p?"/?([^\\/]+)?":"/([^\\/]+)")).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return u.endsWith("*")?(r.push({paramName:"*"}),f+=u==="*"||u==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):c?f+="\\/*$":u!==""&&u!=="/"&&(f+="(?:(?=\\/|$))"),[new RegExp(f,i?void 0:"i"),r]}function tv(u){try{return u.split("/").map(i=>decodeURIComponent(i).replace(/\//g,"%2F")).join("/")}catch(i){return wt(!1,`The URL path "${u}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${i}).`),u}}function rn(u,i){if(i==="/")return u;if(!u.toLowerCase().startsWith(i.toLowerCase()))return null;let c=i.endsWith("/")?i.length-1:i.length,r=u.charAt(c);return r&&r!=="/"?null:u.slice(c)||"/"}var nv=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,lv=u=>nv.test(u);function av(u,i="/"){let{pathname:c,search:r="",hash:f=""}=typeof u=="string"?Ql(u):u,d;if(c)if(lv(c))d=c;else{if(c.includes("//")){let m=c;c=c.replace(/\/\/+/g,"/"),wt(!1,`Pathnames cannot have embedded double slashes - normalizing ${m} -> ${c}`)}c.startsWith("/")?d=lm(c.substring(1),"/"):d=lm(c,i)}else d=i;return{pathname:d,search:sv(r),hash:cv(f)}}function lm(u,i){let c=i.replace(/\/+$/,"").split("/");return u.split("/").forEach(f=>{f===".."?c.length>1&&c.pop():f!=="."&&c.push(f)}),c.length>1?c.join("/"):"/"}function ir(u,i,c,r){return`Cannot include a '${u}' character in a manually specified \`to.${i}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${c}\` field. Alternatively you may provide the full path as a string in and the router will parse it for you.`}function iv(u){return u.filter((i,c)=>c===0||i.route.path&&i.route.path.length>0)}function Em(u){let i=iv(u);return i.map((c,r)=>r===i.length-1?c.pathname:c.pathnameBase)}function Tm(u,i,c,r=!1){let f;typeof u=="string"?f=Ql(u):(f={...u},Oe(!f.pathname||!f.pathname.includes("?"),ir("?","pathname","search",f)),Oe(!f.pathname||!f.pathname.includes("#"),ir("#","pathname","hash",f)),Oe(!f.search||!f.search.includes("#"),ir("#","search","hash",f)));let d=u===""||f.pathname==="",m=d?"/":f.pathname,b;if(m==null)b=c;else{let S=i.length-1;if(!r&&m.startsWith("..")){let C=m.split("/");for(;C[0]==="..";)C.shift(),S-=1;f.pathname=C.join("/")}b=S>=0?i[S]:"/"}let p=av(f,b),y=m&&m!=="/"&&m.endsWith("/"),E=(d||m===".")&&c.endsWith("/");return!p.pathname.endsWith("/")&&(y||E)&&(p.pathname+="/"),p}var cn=u=>u.join("/").replace(/\/\/+/g,"/"),uv=u=>u.replace(/\/+$/,"").replace(/^\/*/,"/"),sv=u=>!u||u==="?"?"":u.startsWith("?")?u:"?"+u,cv=u=>!u||u==="#"?"":u.startsWith("#")?u:"#"+u;function rv(u){return u!=null&&typeof u.status=="number"&&typeof u.statusText=="string"&&typeof u.internal=="boolean"&&"data"in u}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var Am=["POST","PUT","PATCH","DELETE"];new Set(Am);var ov=["GET",...Am];new Set(ov);var Zl=T.createContext(null);Zl.displayName="DataRouter";var Ou=T.createContext(null);Ou.displayName="DataRouterState";T.createContext(!1);var Cm=T.createContext({isTransitioning:!1});Cm.displayName="ViewTransition";var fv=T.createContext(new Map);fv.displayName="Fetchers";var hv=T.createContext(null);hv.displayName="Await";var Yt=T.createContext(null);Yt.displayName="Navigation";var Fa=T.createContext(null);Fa.displayName="Location";var on=T.createContext({outlet:null,matches:[],isDataRoute:!1});on.displayName="Route";var xr=T.createContext(null);xr.displayName="RouteError";function dv(u,{relative:i}={}){Oe(Pa(),"useHref() may be used only in the context of a component.");let{basename:c,navigator:r}=T.useContext(Yt),{hash:f,pathname:d,search:m}=Ia(u,{relative:i}),b=d;return c!=="/"&&(b=d==="/"?c:cn([c,d])),r.createHref({pathname:b,search:m,hash:f})}function Pa(){return T.useContext(Fa)!=null}function il(){return Oe(Pa(),"useLocation() may be used only in the context of a component."),T.useContext(Fa).location}var Rm="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function Nm(u){T.useContext(Yt).static||T.useLayoutEffect(u)}function mv(){let{isDataRoute:u}=T.useContext(on);return u?Rv():pv()}function pv(){Oe(Pa(),"useNavigate() may be used only in the context of a component.");let u=T.useContext(Zl),{basename:i,navigator:c}=T.useContext(Yt),{matches:r}=T.useContext(on),{pathname:f}=il(),d=JSON.stringify(Em(r)),m=T.useRef(!1);return Nm(()=>{m.current=!0}),T.useCallback((p,y={})=>{if(wt(m.current,Rm),!m.current)return;if(typeof p=="number"){c.go(p);return}let E=Tm(p,JSON.parse(d),f,y.relative==="path");u==null&&i!=="/"&&(E.pathname=E.pathname==="/"?i:cn([i,E.pathname])),(y.replace?c.replace:c.push)(E,y.state,y)},[i,c,d,f,u])}T.createContext(null);function Ia(u,{relative:i}={}){let{matches:c}=T.useContext(on),{pathname:r}=il(),f=JSON.stringify(Em(c));return T.useMemo(()=>Tm(u,JSON.parse(f),r,i==="path"),[u,f,r,i])}function yv(u,i){return Om(u,i)}function Om(u,i,c,r,f){Oe(Pa(),"useRoutes() may be used only in the context of a component.");let{navigator:d}=T.useContext(Yt),{matches:m}=T.useContext(on),b=m[m.length-1],p=b?b.params:{},y=b?b.pathname:"/",E=b?b.pathnameBase:"/",S=b&&b.route;{let q=S&&S.path||"";zm(y,!S||q.endsWith("*")||q.endsWith("*?"),`You rendered descendant (or called \`useRoutes()\`) at "${y}" (under ) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render. -Please change the parent to .`)}let C=il(),z;if(i){let q=typeof i=="string"?Ql(i):i;Oe(E==="/"||q.pathname?.startsWith(E),`When overriding the location using \`\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${E}" but pathname "${q.pathname}" was given in the \`location\` prop.`),z=q}else z=C;let H=z.pathname||"/",k=H;if(E!=="/"){let q=E.replace(/^\//,"").split("/");k="/"+H.replace(/^\//,"").split("/").slice(q.length).join("/")}let Y=Sm(u,{pathname:k});wt(S||Y!=null,`No routes matched location "${z.pathname}${z.search}${z.hash}" `),wt(Y==null||Y[Y.length-1].route.element!==void 0||Y[Y.length-1].route.Component!==void 0||Y[Y.length-1].route.lazy!==void 0,`Matched leaf route at location "${z.pathname}${z.search}${z.hash}" does not have an element or Component. This means it will render an with a null value by default resulting in an "empty" page.`);let L=xv(Y&&Y.map(q=>Object.assign({},q,{params:Object.assign({},p,q.params),pathname:cn([E,d.encodeLocation?d.encodeLocation(q.pathname.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:q.pathname]),pathnameBase:q.pathnameBase==="/"?E:cn([E,d.encodeLocation?d.encodeLocation(q.pathnameBase.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:q.pathnameBase])})),m,c,r,f);return i&&L?T.createElement(Fa.Provider,{value:{location:{pathname:"/",search:"",hash:"",state:null,key:"default",...z},navigationType:"POP"}},L):L}function vv(){let u=Cv(),i=rv(u)?`${u.status} ${u.statusText}`:u instanceof Error?u.message:JSON.stringify(u),c=u instanceof Error?u.stack:null,r="rgba(200,200,200, 0.5)",f={padding:"0.5rem",backgroundColor:r},d={padding:"2px 4px",backgroundColor:r},m=null;return console.error("Error handled by React Router default ErrorBoundary:",u),m=T.createElement(T.Fragment,null,T.createElement("p",null,"💿 Hey developer 👋"),T.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",T.createElement("code",{style:d},"ErrorBoundary")," or"," ",T.createElement("code",{style:d},"errorElement")," prop on your route.")),T.createElement(T.Fragment,null,T.createElement("h2",null,"Unexpected Application Error!"),T.createElement("h3",{style:{fontStyle:"italic"}},i),c?T.createElement("pre",{style:f},c):null,m)}var gv=T.createElement(vv,null),bv=class extends T.Component{constructor(u){super(u),this.state={location:u.location,revalidation:u.revalidation,error:u.error}}static getDerivedStateFromError(u){return{error:u}}static getDerivedStateFromProps(u,i){return i.location!==u.location||i.revalidation!=="idle"&&u.revalidation==="idle"?{error:u.error,location:u.location,revalidation:u.revalidation}:{error:u.error!==void 0?u.error:i.error,location:i.location,revalidation:u.revalidation||i.revalidation}}componentDidCatch(u,i){this.props.onError?this.props.onError(u,i):console.error("React Router caught the following error during render",u)}render(){return this.state.error!==void 0?T.createElement(on.Provider,{value:this.props.routeContext},T.createElement(xr.Provider,{value:this.state.error,children:this.props.component})):this.props.children}};function Sv({routeContext:u,match:i,children:c}){let r=T.useContext(Zl);return r&&r.static&&r.staticContext&&(i.route.errorElement||i.route.ErrorBoundary)&&(r.staticContext._deepestRenderedBoundaryId=i.route.id),T.createElement(on.Provider,{value:u},c)}function xv(u,i=[],c=null,r=null,f=null){if(u==null){if(!c)return null;if(c.errors)u=c.matches;else if(i.length===0&&!c.initialized&&c.matches.length>0)u=c.matches;else return null}let d=u,m=c?.errors;if(m!=null){let E=d.findIndex(S=>S.route.id&&m?.[S.route.id]!==void 0);Oe(E>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(m).join(",")}`),d=d.slice(0,Math.min(d.length,E+1))}let b=!1,p=-1;if(c)for(let E=0;E=0?d=d.slice(0,p+1):d=[d[0]];break}}}let y=c&&r?(E,S)=>{r(E,{location:c.location,params:c.matches?.[0]?.params??{},errorInfo:S})}:void 0;return d.reduceRight((E,S,C)=>{let z,H=!1,k=null,Y=null;c&&(z=m&&S.route.id?m[S.route.id]:void 0,k=S.route.errorElement||gv,b&&(p<0&&C===0?(zm("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),H=!0,Y=null):p===C&&(H=!0,Y=S.route.hydrateFallbackElement||null)));let L=i.concat(d.slice(0,C+1)),q=()=>{let Q;return z?Q=k:H?Q=Y:S.route.Component?Q=T.createElement(S.route.Component,null):S.route.element?Q=S.route.element:Q=E,T.createElement(Sv,{match:S,routeContext:{outlet:E,matches:L,isDataRoute:c!=null},children:Q})};return c&&(S.route.ErrorBoundary||S.route.errorElement||C===0)?T.createElement(bv,{location:c.location,revalidation:c.revalidation,component:k,error:z,children:q(),routeContext:{outlet:null,matches:L,isDataRoute:!0},onError:y}):q()},null)}function _r(u){return`${u} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function _v(u){let i=T.useContext(Zl);return Oe(i,_r(u)),i}function Ev(u){let i=T.useContext(Ou);return Oe(i,_r(u)),i}function Tv(u){let i=T.useContext(on);return Oe(i,_r(u)),i}function Er(u){let i=Tv(u),c=i.matches[i.matches.length-1];return Oe(c.route.id,`${u} can only be used on routes that contain a unique "id"`),c.route.id}function Av(){return Er("useRouteId")}function Cv(){let u=T.useContext(xr),i=Ev("useRouteError"),c=Er("useRouteError");return u!==void 0?u:i.errors?.[c]}function Rv(){let{router:u}=_v("useNavigate"),i=Er("useNavigate"),c=T.useRef(!1);return Nm(()=>{c.current=!0}),T.useCallback(async(f,d={})=>{wt(c.current,Rm),c.current&&(typeof f=="number"?u.navigate(f):await u.navigate(f,{fromRouteId:i,...d}))},[u,i])}var am={};function zm(u,i,c){!i&&!am[u]&&(am[u]=!0,wt(!1,c))}T.memo(Nv);function Nv({routes:u,future:i,state:c,unstable_onError:r}){return Om(u,void 0,c,r,i)}function dr(u){Oe(!1,"A is only ever to be used as the child of element, never rendered directly. Please wrap your in a .")}function Ov({basename:u="/",children:i=null,location:c,navigationType:r="POP",navigator:f,static:d=!1}){Oe(!Pa(),"You cannot render a inside another . You should never have more than one in your app.");let m=u.replace(/^\/*/,"/"),b=T.useMemo(()=>({basename:m,navigator:f,static:d,future:{}}),[m,f,d]);typeof c=="string"&&(c=Ql(c));let{pathname:p="/",search:y="",hash:E="",state:S=null,key:C="default"}=c,z=T.useMemo(()=>{let H=rn(p,m);return H==null?null:{location:{pathname:H,search:y,hash:E,state:S,key:C},navigationType:r}},[m,p,y,E,S,C,r]);return wt(z!=null,` is not able to match the URL "${p}${y}${E}" because it does not start with the basename, so the won't render anything.`),z==null?null:T.createElement(Yt.Provider,{value:b},T.createElement(Fa.Provider,{children:i,value:z}))}function zv({children:u,location:i}){return yv(mr(u),i)}function mr(u,i=[]){let c=[];return T.Children.forEach(u,(r,f)=>{if(!T.isValidElement(r))return;let d=[...i,f];if(r.type===T.Fragment){c.push.apply(c,mr(r.props.children,d));return}Oe(r.type===dr,`[${typeof r.type=="string"?r.type:r.type.name}] is not a component. All component children of must be a or `),Oe(!r.props.index||!r.props.children,"An index route cannot have child routes.");let m={id:r.props.id||d.join("-"),caseSensitive:r.props.caseSensitive,element:r.props.element,Component:r.props.Component,index:r.props.index,path:r.props.path,middleware:r.props.middleware,loader:r.props.loader,action:r.props.action,hydrateFallbackElement:r.props.hydrateFallbackElement,HydrateFallback:r.props.HydrateFallback,errorElement:r.props.errorElement,ErrorBoundary:r.props.ErrorBoundary,hasErrorBoundary:r.props.hasErrorBoundary===!0||r.props.ErrorBoundary!=null||r.props.errorElement!=null,shouldRevalidate:r.props.shouldRevalidate,handle:r.props.handle,lazy:r.props.lazy};r.props.children&&(m.children=mr(r.props.children,d)),c.push(m)}),c}var xu="get",_u="application/x-www-form-urlencoded";function zu(u){return u!=null&&typeof u.tagName=="string"}function Mv(u){return zu(u)&&u.tagName.toLowerCase()==="button"}function Dv(u){return zu(u)&&u.tagName.toLowerCase()==="form"}function wv(u){return zu(u)&&u.tagName.toLowerCase()==="input"}function jv(u){return!!(u.metaKey||u.altKey||u.ctrlKey||u.shiftKey)}function Uv(u,i){return u.button===0&&(!i||i==="_self")&&!jv(u)}var gu=null;function Bv(){if(gu===null)try{new FormData(document.createElement("form"),0),gu=!1}catch{gu=!0}return gu}var Lv=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function ur(u){return u!=null&&!Lv.has(u)?(wt(!1,`"${u}" is not a valid \`encType\` for \`
\`/\`\` and will default to "${_u}"`),null):u}function Hv(u,i){let c,r,f,d,m;if(Dv(u)){let b=u.getAttribute("action");r=b?rn(b,i):null,c=u.getAttribute("method")||xu,f=ur(u.getAttribute("enctype"))||_u,d=new FormData(u)}else if(Mv(u)||wv(u)&&(u.type==="submit"||u.type==="image")){let b=u.form;if(b==null)throw new Error('Cannot submit a diff --git a/webui/src/components/AlertFeed.jsx b/webui/src/components/AlertFeed.jsx index c3fcc0b5..952a2e8f 100644 --- a/webui/src/components/AlertFeed.jsx +++ b/webui/src/components/AlertFeed.jsx @@ -46,7 +46,7 @@ function AlertToast({ alert }) { ? 'bg-amber-500/30 text-amber-100' : 'bg-emerald-500/30 text-emerald-100'; return ( -
+

{alert.title || 'Alert'}

{alert.message}

diff --git a/webui/src/components/AuthPanel.jsx b/webui/src/components/AuthPanel.jsx index 694582ff..1f0e7727 100644 --- a/webui/src/components/AuthPanel.jsx +++ b/webui/src/components/AuthPanel.jsx @@ -22,17 +22,17 @@ export default function AuthPanel() { } return ( -
+

Admin login

- + setUsername(e.target.value)} /> {loading ? 'Logging in…' : 'Login'} -
+
diff --git a/webui/src/components/DrivePanel.jsx b/webui/src/components/DrivePanel.jsx index 6acb14e5..655bf101 100644 --- a/webui/src/components/DrivePanel.jsx +++ b/webui/src/components/DrivePanel.jsx @@ -19,12 +19,12 @@ export default function DrivePanel() { const updated = frame?.receivedAt ? new Date(frame.receivedAt).toLocaleTimeString() : null; return ( -
+
Drive control {roverId ? `Rover ${roverId}` : 'unassigned'}
-
+
sendOiCommand(btn.key)} disabled={!roverId} - className="rounded-sm bg-black/40 px-2 py-0.5 text-sm text-slate-200 disabled:opacity-30" + className="rounded-sm bg-black/40 px-1 py-0.5 text-sm text-slate-200 disabled:opacity-30" > {btn.label} @@ -67,13 +67,13 @@ export default function DrivePanel() { type="button" onClick={stopMotors} disabled={!roverId} - className="flex-1 rounded-sm bg-red-600/70 px-2 py-1 text-sm text-white disabled:opacity-40" + className="flex-1 rounded-sm bg-red-600/70 px-1 py-1 text-sm text-white disabled:opacity-40" > Stop motors
-

Sensor streaming auto-starts after each OI change.

+

Sensor streaming auto-starts after each OI change.

); } @@ -85,15 +85,15 @@ function ActionCard({ title, description, statuses, tone, onClick, disabled, foo type="button" onClick={onClick} disabled={disabled} - className={`w-full rounded-lg ${baseColor} px-3 py-2 text-left text-white disabled:opacity-40`} + className={`w-full rounded-lg ${baseColor} px-1 py-1 text-left text-white disabled:opacity-40`} >

{title}

{description}

-
+
{statuses.map((status) => ( @@ -108,7 +108,7 @@ function ActionCard({ title, description, statuses, tone, onClick, disabled, foo function SpeedRow({ left, right }) { return ( -
+

Left

{left}

@@ -124,7 +124,7 @@ function SpeedRow({ left, right }) { function StatusPill({ label, active }) { return ( diff --git a/webui/src/components/LogPanel.jsx b/webui/src/components/LogPanel.jsx index d1645abc..e16ce6b7 100644 --- a/webui/src/components/LogPanel.jsx +++ b/webui/src/components/LogPanel.jsx @@ -3,12 +3,12 @@ import { useSession } from '../context/SessionContext.jsx'; export default function LogPanel() { const { logs } = useSession(); return ( -
+
Server logs {logs.length}
-
+
{logs.length === 0 ? (

No logs yet.

) : ( diff --git a/webui/src/components/RoomCameraPanel.jsx b/webui/src/components/RoomCameraPanel.jsx index 8658851b..39b3e7fe 100644 --- a/webui/src/components/RoomCameraPanel.jsx +++ b/webui/src/components/RoomCameraPanel.jsx @@ -1,6 +1,6 @@ export default function RoomCameraPanel() { return ( -
+

Room camera

Feed placeholder. Wire upcoming room cam here.

diff --git a/webui/src/components/TelemetryPanel.jsx b/webui/src/components/TelemetryPanel.jsx index d0dad166..6fc0881f 100644 --- a/webui/src/components/TelemetryPanel.jsx +++ b/webui/src/components/TelemetryPanel.jsx @@ -38,7 +38,7 @@ export default function TelemetryPanel() { } return ( -
+
{connected ? 'online' : 'offline'} · role {session?.role || 'unknown'} @@ -50,7 +50,7 @@ export default function TelemetryPanel() { ) : !frame ? (

Waiting for sensor frames…

) : ( -
+
@@ -59,16 +59,16 @@ export default function TelemetryPanel() {
)} {rawSnippet && ( -
+        
           {rawSnippet}
         
)} -
+

Rovers

{roster.length === 0 ? (

No roster data.

) : ( -
    +
      {roster.map((rover) => (
    • @@ -82,7 +82,7 @@ export default function TelemetryPanel() { type="button" onClick={() => handleRequest(rover.id)} disabled={pending[rover.id]} - className="rounded-sm bg-black/40 px-2 py-0.5 text-xs text-slate-200 disabled:opacity-40" + className="rounded-sm bg-black/40 px-1 py-0.5 text-xs text-slate-200 disabled:opacity-40" > {pending[rover.id] ? '...' : 'request'} diff --git a/webui/src/components/VideoTile.jsx b/webui/src/components/VideoTile.jsx index ee1618c4..51ff6a07 100644 --- a/webui/src/components/VideoTile.jsx +++ b/webui/src/components/VideoTile.jsx @@ -153,7 +153,7 @@ function BatteryBar({ charge, config, label, status }) { const urgent = config?.Urgent ?? null; if (charge == null || full == null || warn == null) { return ( -
      +
      {label} {status} @@ -173,7 +173,7 @@ function BatteryBar({ charge, config, label, status }) { const warnTriggered = urgent != null && charge <= urgent; const barClass = depleted ? 'bg-red-500 animate-pulse' : warnTriggered ? 'bg-amber-400' : 'bg-emerald-500'; return ( -
      +
      {label} {status} From 38c087b7d592875ee0761a24c5bace01fa2b6828 Mon Sep 17 00:00:00 2001 From: legop3 Date: Sat, 15 Nov 2025 23:59:30 -0500 Subject: [PATCH 39/61] guh --- problems.md | 2 ++ .../public/assets/{index-CIkC6ML4.js => index-DIOCVx-w.js} | 2 +- server/public/index.html | 2 +- webui/src/App.jsx | 6 +++--- 4 files changed, 7 insertions(+), 5 deletions(-) rename server/public/assets/{index-CIkC6ML4.js => index-DIOCVx-w.js} (98%) diff --git a/problems.md b/problems.md index 3e772457..96aa2140 100644 --- a/problems.md +++ b/problems.md @@ -1,5 +1,7 @@ ## video stream - video stream needs to always autoplay, even if it cant unmute itself - currently, it wont play at all unless it can unmute +- video stream currently unloads and reloads based on the tab being active + - just remove this feature. It needs to stay running all the time. ## \ No newline at end of file diff --git a/server/public/assets/index-CIkC6ML4.js b/server/public/assets/index-DIOCVx-w.js similarity index 98% rename from server/public/assets/index-CIkC6ML4.js rename to server/public/assets/index-DIOCVx-w.js index bd54c56b..58ea6167 100644 --- a/server/public/assets/index-CIkC6ML4.js +++ b/server/public/assets/index-DIOCVx-w.js @@ -8,4 +8,4 @@ Error generating stack: `+l.message+` `+l.stack}}var Hu=Object.prototype.hasOwnProperty,qu=u.unstable_scheduleCallback,Yu=u.unstable_cancelCallback,sp=u.unstable_shouldYield,cp=u.unstable_requestPaint,st=u.unstable_now,rp=u.unstable_getCurrentPriorityLevel,Gr=u.unstable_ImmediatePriority,Vr=u.unstable_UserBlockingPriority,ti=u.unstable_NormalPriority,op=u.unstable_LowPriority,Qr=u.unstable_IdlePriority,fp=u.log,hp=u.unstable_setDisableYieldValue,$l=null,ct=null;function hn(e){if(typeof fp=="function"&&hp(e),ct&&typeof ct.setStrictMode=="function")try{ct.setStrictMode($l,e)}catch{}}var rt=Math.clz32?Math.clz32:pp,dp=Math.log,mp=Math.LN2;function pp(e){return e>>>=0,e===0?32:31-(dp(e)/mp|0)|0}var ni=256,li=262144,ai=4194304;function Yn(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function ii(e,t,n){var l=e.pendingLanes;if(l===0)return 0;var a=0,s=e.suspendedLanes,o=e.pingedLanes;e=e.warmLanes;var h=l&134217727;return h!==0?(l=h&~s,l!==0?a=Yn(l):(o&=h,o!==0?a=Yn(o):n||(n=h&~e,n!==0&&(a=Yn(n))))):(h=l&~s,h!==0?a=Yn(h):o!==0?a=Yn(o):n||(n=l&~e,n!==0&&(a=Yn(n)))),a===0?0:t!==0&&t!==a&&(t&s)===0&&(s=a&-a,n=t&-t,s>=n||s===32&&(n&4194048)!==0)?t:a}function Wl(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function yp(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Zr(){var e=ai;return ai<<=1,(ai&62914560)===0&&(ai=4194304),e}function ku(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function Fl(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function vp(e,t,n,l,a,s){var o=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var h=e.entanglements,g=e.expirationTimes,N=e.hiddenUpdates;for(n=o&~n;0"u")return null;try{return e.activeElement||e.body}catch{return e.body}}var Ep=/[\n"\\]/g;function gt(e){return e.replace(Ep,function(t){return"\\"+t.charCodeAt(0).toString(16)+" "})}function Ku(e,t,n,l,a,s,o,h){e.name="",o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"?e.type=o:e.removeAttribute("type"),t!=null?o==="number"?(t===0&&e.value===""||e.value!=t)&&(e.value=""+vt(t)):e.value!==""+vt(t)&&(e.value=""+vt(t)):o!=="submit"&&o!=="reset"||e.removeAttribute("value"),t!=null?Ju(e,o,vt(t)):n!=null?Ju(e,o,vt(n)):l!=null&&e.removeAttribute("value"),a==null&&s!=null&&(e.defaultChecked=!!s),a!=null&&(e.checked=a&&typeof a!="function"&&typeof a!="symbol"),h!=null&&typeof h!="function"&&typeof h!="symbol"&&typeof h!="boolean"?e.name=""+vt(h):e.removeAttribute("name")}function io(e,t,n,l,a,s,o,h){if(s!=null&&typeof s!="function"&&typeof s!="symbol"&&typeof s!="boolean"&&(e.type=s),t!=null||n!=null){if(!(s!=="submit"&&s!=="reset"||t!=null)){Zu(e);return}n=n!=null?""+vt(n):"",t=t!=null?""+vt(t):n,h||t===e.value||(e.value=t),e.defaultValue=t}l=l??a,l=typeof l!="function"&&typeof l!="symbol"&&!!l,e.checked=h?e.checked:!!l,e.defaultChecked=!!l,o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"&&(e.name=o),Zu(e)}function Ju(e,t,n){t==="number"&&ci(e.ownerDocument)===e||e.defaultValue===""+n||(e.defaultValue=""+n)}function fl(e,t,n,l){if(e=e.options,t){t={};for(var a=0;a"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Iu=!1;if(Vt)try{var ta={};Object.defineProperty(ta,"passive",{get:function(){Iu=!0}}),window.addEventListener("test",ta,ta),window.removeEventListener("test",ta,ta)}catch{Iu=!1}var mn=null,es=null,oi=null;function ho(){if(oi)return oi;var e,t=es,n=t.length,l,a="value"in mn?mn.value:mn.textContent,s=a.length;for(e=0;e=aa),bo=" ",So=!1;function xo(e,t){switch(e){case"keyup":return Fp.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function _o(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var pl=!1;function Ip(e,t){switch(e){case"compositionend":return _o(t);case"keypress":return t.which!==32?null:(So=!0,bo);case"textInput":return e=t.data,e===bo&&So?null:e;default:return null}}function ey(e,t){if(pl)return e==="compositionend"||!is&&xo(e,t)?(e=ho(),oi=es=mn=null,pl=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=l}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=zo(n)}}function Do(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Do(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function wo(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=ci(e.document);t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=ci(e.document)}return t}function cs(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}var cy=Vt&&"documentMode"in document&&11>=document.documentMode,yl=null,rs=null,ca=null,os=!1;function jo(e,t,n){var l=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;os||yl==null||yl!==ci(l)||(l=yl,"selectionStart"in l&&cs(l)?l={start:l.selectionStart,end:l.selectionEnd}:(l=(l.ownerDocument&&l.ownerDocument.defaultView||window).getSelection(),l={anchorNode:l.anchorNode,anchorOffset:l.anchorOffset,focusNode:l.focusNode,focusOffset:l.focusOffset}),ca&&sa(ca,l)||(ca=l,l=lu(rs,"onSelect"),0>=o,a-=o,jt=1<<32-rt(t)+a|n<ne?(se=K,K=null):se=K.sibling;var fe=O(A,K,R[ne],j);if(fe===null){K===null&&(K=se);break}e&&K&&fe.alternate===null&&t(A,K),x=s(fe,x,ne),oe===null?J=fe:oe.sibling=fe,oe=fe,K=se}if(ne===R.length)return n(A,K),ce&&Zt(A,ne),J;if(K===null){for(;nene?(se=K,K=null):se=K.sibling;var Bn=O(A,K,fe.value,j);if(Bn===null){K===null&&(K=se);break}e&&K&&Bn.alternate===null&&t(A,K),x=s(Bn,x,ne),oe===null?J=Bn:oe.sibling=Bn,oe=Bn,K=se}if(fe.done)return n(A,K),ce&&Zt(A,ne),J;if(K===null){for(;!fe.done;ne++,fe=R.next())fe=U(A,fe.value,j),fe!==null&&(x=s(fe,x,ne),oe===null?J=fe:oe.sibling=fe,oe=fe);return ce&&Zt(A,ne),J}for(K=l(K);!fe.done;ne++,fe=R.next())fe=M(K,A,ne,fe.value,j),fe!==null&&(e&&fe.alternate!==null&&K.delete(fe.key===null?ne:fe.key),x=s(fe,x,ne),oe===null?J=fe:oe.sibling=fe,oe=fe);return e&&K.forEach(function(N0){return t(A,N0)}),ce&&Zt(A,ne),J}function Se(A,x,R,j){if(typeof R=="object"&&R!==null&&R.type===k&&R.key===null&&(R=R.props.children),typeof R=="object"&&R!==null){switch(R.$$typeof){case z:e:{for(var J=R.key;x!==null;){if(x.key===J){if(J=R.type,J===k){if(x.tag===7){n(A,x.sibling),j=a(x,R.props.children),j.return=A,A=j;break e}}else if(x.elementType===J||typeof J=="object"&&J!==null&&J.$$typeof===Te&&Fn(J)===x.type){n(A,x.sibling),j=a(x,R.props),ma(j,R),j.return=A,A=j;break e}n(A,x);break}else t(A,x);x=x.sibling}R.type===k?(j=Zn(R.props.children,A.mode,j,R.key),j.return=A,A=j):(j=Si(R.type,R.key,R.props,null,A.mode,j),ma(j,R),j.return=A,A=j)}return o(A);case H:e:{for(J=R.key;x!==null;){if(x.key===J)if(x.tag===4&&x.stateNode.containerInfo===R.containerInfo&&x.stateNode.implementation===R.implementation){n(A,x.sibling),j=a(x,R.children||[]),j.return=A,A=j;break e}else{n(A,x);break}else t(A,x);x=x.sibling}j=vs(R,A.mode,j),j.return=A,A=j}return o(A);case Te:return R=Fn(R),Se(A,x,R,j)}if(Nt(R))return V(A,x,R,j);if(We(R)){if(J=We(R),typeof J!="function")throw Error(r(150));return R=J.call(R),W(A,x,R,j)}if(typeof R.then=="function")return Se(A,x,Ri(R),j);if(R.$$typeof===Q)return Se(A,x,Ei(A,R),j);Ni(A,R)}return typeof R=="string"&&R!==""||typeof R=="number"||typeof R=="bigint"?(R=""+R,x!==null&&x.tag===6?(n(A,x.sibling),j=a(x,R),j.return=A,A=j):(n(A,x),j=ys(R,A.mode,j),j.return=A,A=j),o(A)):n(A,x)}return function(A,x,R,j){try{da=0;var J=Se(A,x,R,j);return Rl=null,J}catch(K){if(K===Cl||K===Ai)throw K;var oe=ft(29,K,null,A.mode);return oe.lanes=j,oe.return=A,oe}finally{}}}var In=lf(!0),af=lf(!1),bn=!1;function Os(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function zs(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function Sn(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function xn(e,t,n){var l=e.updateQueue;if(l===null)return null;if(l=l.shared,(he&2)!==0){var a=l.pending;return a===null?t.next=t:(t.next=a.next,a.next=t),l.pending=t,t=bi(e),ko(e,null,n),t}return gi(e,l,t,n),bi(e)}function pa(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194048)!==0)){var l=t.lanes;l&=e.pendingLanes,n|=l,t.lanes=n,Jr(e,n)}}function Ms(e,t){var n=e.updateQueue,l=e.alternate;if(l!==null&&(l=l.updateQueue,n===l)){var a=null,s=null;if(n=n.firstBaseUpdate,n!==null){do{var o={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};s===null?a=s=o:s=s.next=o,n=n.next}while(n!==null);s===null?a=s=t:s=s.next=t}else a=s=t;n={baseState:l.baseState,firstBaseUpdate:a,lastBaseUpdate:s,shared:l.shared,callbacks:l.callbacks},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}var Ds=!1;function ya(){if(Ds){var e=Al;if(e!==null)throw e}}function va(e,t,n,l){Ds=!1;var a=e.updateQueue;bn=!1;var s=a.firstBaseUpdate,o=a.lastBaseUpdate,h=a.shared.pending;if(h!==null){a.shared.pending=null;var g=h,N=g.next;g.next=null,o===null?s=N:o.next=N,o=g;var D=e.alternate;D!==null&&(D=D.updateQueue,h=D.lastBaseUpdate,h!==o&&(h===null?D.firstBaseUpdate=N:h.next=N,D.lastBaseUpdate=g))}if(s!==null){var U=a.baseState;o=0,D=N=g=null,h=s;do{var O=h.lane&-536870913,M=O!==h.lane;if(M?(ue&O)===O:(l&O)===O){O!==0&&O===Tl&&(Ds=!0),D!==null&&(D=D.next={lane:0,tag:h.tag,payload:h.payload,callback:null,next:null});e:{var V=e,W=h;O=t;var Se=n;switch(W.tag){case 1:if(V=W.payload,typeof V=="function"){U=V.call(Se,U,O);break e}U=V;break e;case 3:V.flags=V.flags&-65537|128;case 0:if(V=W.payload,O=typeof V=="function"?V.call(Se,U,O):V,O==null)break e;U=S({},U,O);break e;case 2:bn=!0}}O=h.callback,O!==null&&(e.flags|=64,M&&(e.flags|=8192),M=a.callbacks,M===null?a.callbacks=[O]:M.push(O))}else M={lane:O,tag:h.tag,payload:h.payload,callback:h.callback,next:null},D===null?(N=D=M,g=U):D=D.next=M,o|=O;if(h=h.next,h===null){if(h=a.shared.pending,h===null)break;M=h,h=M.next,M.next=null,a.lastBaseUpdate=M,a.shared.pending=null}}while(!0);D===null&&(g=U),a.baseState=g,a.firstBaseUpdate=N,a.lastBaseUpdate=D,s===null&&(a.shared.lanes=0),Cn|=o,e.lanes=o,e.memoizedState=U}}function uf(e,t){if(typeof e!="function")throw Error(r(191,e));e.call(t)}function sf(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;es?s:8;var o=w.T,h={};w.T=h,Fs(e,!1,t,n);try{var g=a(),N=w.S;if(N!==null&&N(h,g),g!==null&&typeof g=="object"&&typeof g.then=="function"){var D=vy(g,l);Sa(e,t,D,yt(e))}else Sa(e,t,l,yt(e))}catch(U){Sa(e,t,{then:function(){},status:"rejected",reason:U},yt())}finally{X.p=s,o!==null&&h.types!==null&&(o.types=h.types),w.T=o}}function Ey(){}function $s(e,t,n,l){if(e.tag!==5)throw Error(r(476));var a=qf(e).queue;Hf(e,a,t,F,n===null?Ey:function(){return Yf(e),n(l)})}function qf(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:F,baseState:F,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Wt,lastRenderedState:F},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Wt,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function Yf(e){var t=qf(e);t.next===null&&(t=e.alternate.memoizedState),Sa(e,t.next.queue,{},yt())}function Ws(){return Ke(La)}function kf(){return je().memoizedState}function Xf(){return je().memoizedState}function Ty(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var n=yt();e=Sn(n);var l=xn(t,e,n);l!==null&&(ut(l,t,n),pa(l,t,n)),t={cache:As()},e.payload=t;return}t=t.return}}function Ay(e,t,n){var l=yt();n={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},Hi(e)?Vf(t,n):(n=ms(e,t,n,l),n!==null&&(ut(n,e,l),Qf(n,t,l)))}function Gf(e,t,n){var l=yt();Sa(e,t,n,l)}function Sa(e,t,n,l){var a={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(Hi(e))Vf(t,a);else{var s=e.alternate;if(e.lanes===0&&(s===null||s.lanes===0)&&(s=t.lastRenderedReducer,s!==null))try{var o=t.lastRenderedState,h=s(o,n);if(a.hasEagerState=!0,a.eagerState=h,ot(h,o))return gi(e,t,a,0),Ee===null&&vi(),!1}catch{}finally{}if(n=ms(e,t,a,l),n!==null)return ut(n,e,l),Qf(n,t,l),!0}return!1}function Fs(e,t,n,l){if(l={lane:2,revertLane:Oc(),gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},Hi(e)){if(t)throw Error(r(479))}else t=ms(e,n,l,2),t!==null&&ut(t,e,2)}function Hi(e){var t=e.alternate;return e===te||t!==null&&t===te}function Vf(e,t){Ol=Mi=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Qf(e,t,n){if((n&4194048)!==0){var l=t.lanes;l&=e.pendingLanes,n|=l,t.lanes=n,Jr(e,n)}}var xa={readContext:Ke,use:ji,useCallback:ze,useContext:ze,useEffect:ze,useImperativeHandle:ze,useLayoutEffect:ze,useInsertionEffect:ze,useMemo:ze,useReducer:ze,useRef:ze,useState:ze,useDebugValue:ze,useDeferredValue:ze,useTransition:ze,useSyncExternalStore:ze,useId:ze,useHostTransitionStatus:ze,useFormState:ze,useActionState:ze,useOptimistic:ze,useMemoCache:ze,useCacheRefresh:ze};xa.useEffectEvent=ze;var Zf={readContext:Ke,use:ji,useCallback:function(e,t){return Ie().memoizedState=[e,t===void 0?null:t],e},useContext:Ke,useEffect:Of,useImperativeHandle:function(e,t,n){n=n!=null?n.concat([e]):null,Bi(4194308,4,wf.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Bi(4194308,4,e,t)},useInsertionEffect:function(e,t){Bi(4,2,e,t)},useMemo:function(e,t){var n=Ie();t=t===void 0?null:t;var l=e();if(el){hn(!0);try{e()}finally{hn(!1)}}return n.memoizedState=[l,t],l},useReducer:function(e,t,n){var l=Ie();if(n!==void 0){var a=n(t);if(el){hn(!0);try{n(t)}finally{hn(!1)}}}else a=t;return l.memoizedState=l.baseState=a,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:a},l.queue=e,e=e.dispatch=Ay.bind(null,te,e),[l.memoizedState,e]},useRef:function(e){var t=Ie();return e={current:e},t.memoizedState=e},useState:function(e){e=Vs(e);var t=e.queue,n=Gf.bind(null,te,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:Ks,useDeferredValue:function(e,t){var n=Ie();return Js(n,e,t)},useTransition:function(){var e=Vs(!1);return e=Hf.bind(null,te,e.queue,!0,!1),Ie().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var l=te,a=Ie();if(ce){if(n===void 0)throw Error(r(407));n=n()}else{if(n=t(),Ee===null)throw Error(r(349));(ue&127)!==0||df(l,t,n)}a.memoizedState=n;var s={value:n,getSnapshot:t};return a.queue=s,Of(pf.bind(null,l,s,e),[e]),l.flags|=2048,Ml(9,{destroy:void 0},mf.bind(null,l,s,n,t),null),n},useId:function(){var e=Ie(),t=Ee.identifierPrefix;if(ce){var n=Ut,l=jt;n=(l&~(1<<32-rt(l)-1)).toString(32)+n,t="_"+t+"R_"+n,n=Di++,0<\/script>",s=s.removeChild(s.firstChild);break;case"select":s=typeof l.is=="string"?o.createElement("select",{is:l.is}):o.createElement("select"),l.multiple?s.multiple=!0:l.size&&(s.size=l.size);break;default:s=typeof l.is=="string"?o.createElement(a,{is:l.is}):o.createElement(a)}}s[Qe]=t,s[et]=l;e:for(o=t.child;o!==null;){if(o.tag===5||o.tag===6)s.appendChild(o.stateNode);else if(o.tag!==4&&o.tag!==27&&o.child!==null){o.child.return=o,o=o.child;continue}if(o===t)break e;for(;o.sibling===null;){if(o.return===null||o.return===t)break e;o=o.return}o.sibling.return=o.return,o=o.sibling}t.stateNode=s;e:switch($e(s,a,l),a){case"button":case"input":case"select":case"textarea":l=!!l.autoFocus;break e;case"img":l=!0;break e;default:l=!1}l&&Pt(t)}}return Ce(t),fc(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==l&&Pt(t);else{if(typeof l!="string"&&t.stateNode===null)throw Error(r(166));if(e=le.current,_l(t)){if(e=t.stateNode,n=t.memoizedProps,l=null,a=Ze,a!==null)switch(a.tag){case 27:case 5:l=a.memoizedProps}e[Qe]=t,e=!!(e.nodeValue===n||l!==null&&l.suppressHydrationWarning===!0||fd(e.nodeValue,n)),e||vn(t,!0)}else e=au(e).createTextNode(l),e[Qe]=t,t.stateNode=e}return Ce(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(l=_l(t),n!==null){if(e===null){if(!l)throw Error(r(318));if(e=t.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(r(557));e[Qe]=t}else Kn(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Ce(t),e=!1}else n=xs(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(dt(t),t):(dt(t),null);if((t.flags&128)!==0)throw Error(r(558))}return Ce(t),null;case 13:if(l=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(a=_l(t),l!==null&&l.dehydrated!==null){if(e===null){if(!a)throw Error(r(318));if(a=t.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(r(317));a[Qe]=t}else Kn(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Ce(t),a=!1}else a=xs(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=a),a=!0;if(!a)return t.flags&256?(dt(t),t):(dt(t),null)}return dt(t),(t.flags&128)!==0?(t.lanes=n,t):(n=l!==null,e=e!==null&&e.memoizedState!==null,n&&(l=t.child,a=null,l.alternate!==null&&l.alternate.memoizedState!==null&&l.alternate.memoizedState.cachePool!==null&&(a=l.alternate.memoizedState.cachePool.pool),s=null,l.memoizedState!==null&&l.memoizedState.cachePool!==null&&(s=l.memoizedState.cachePool.pool),s!==a&&(l.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),Gi(t,t.updateQueue),Ce(t),null);case 4:return De(),e===null&&wc(t.stateNode.containerInfo),Ce(t),null;case 10:return Jt(t.type),Ce(t),null;case 19:if(B(we),l=t.memoizedState,l===null)return Ce(t),null;if(a=(t.flags&128)!==0,s=l.rendering,s===null)if(a)Ea(l,!1);else{if(Me!==0||e!==null&&(e.flags&128)!==0)for(e=t.child;e!==null;){if(s=zi(e),s!==null){for(t.flags|=128,Ea(l,!1),e=s.updateQueue,t.updateQueue=e,Gi(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)Xo(n,e),n=n.sibling;return G(we,we.current&1|2),ce&&Zt(t,l.treeForkCount),t.child}e=e.sibling}l.tail!==null&&st()>Ji&&(t.flags|=128,a=!0,Ea(l,!1),t.lanes=4194304)}else{if(!a)if(e=zi(s),e!==null){if(t.flags|=128,a=!0,e=e.updateQueue,t.updateQueue=e,Gi(t,e),Ea(l,!0),l.tail===null&&l.tailMode==="hidden"&&!s.alternate&&!ce)return Ce(t),null}else 2*st()-l.renderingStartTime>Ji&&n!==536870912&&(t.flags|=128,a=!0,Ea(l,!1),t.lanes=4194304);l.isBackwards?(s.sibling=t.child,t.child=s):(e=l.last,e!==null?e.sibling=s:t.child=s,l.last=s)}return l.tail!==null?(e=l.tail,l.rendering=e,l.tail=e.sibling,l.renderingStartTime=st(),e.sibling=null,n=we.current,G(we,a?n&1|2:n&1),ce&&Zt(t,l.treeForkCount),e):(Ce(t),null);case 22:case 23:return dt(t),js(),l=t.memoizedState!==null,e!==null?e.memoizedState!==null!==l&&(t.flags|=8192):l&&(t.flags|=8192),l?(n&536870912)!==0&&(t.flags&128)===0&&(Ce(t),t.subtreeFlags&6&&(t.flags|=8192)):Ce(t),n=t.updateQueue,n!==null&&Gi(t,n.retryQueue),n=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),l=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(l=t.memoizedState.cachePool.pool),l!==n&&(t.flags|=2048),e!==null&&B(Wn),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),Jt(Be),Ce(t),null;case 25:return null;case 30:return null}throw Error(r(156,t.tag))}function zy(e,t){switch(bs(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Jt(Be),De(),e=t.flags,(e&65536)!==0&&(e&128)===0?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return ei(t),null;case 31:if(t.memoizedState!==null){if(dt(t),t.alternate===null)throw Error(r(340));Kn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(dt(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(r(340));Kn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return B(we),null;case 4:return De(),null;case 10:return Jt(t.type),null;case 22:case 23:return dt(t),js(),e!==null&&B(Wn),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return Jt(Be),null;case 25:return null;default:return null}}function yh(e,t){switch(bs(t),t.tag){case 3:Jt(Be),De();break;case 26:case 27:case 5:ei(t);break;case 4:De();break;case 31:t.memoizedState!==null&&dt(t);break;case 13:dt(t);break;case 19:B(we);break;case 10:Jt(t.type);break;case 22:case 23:dt(t),js(),e!==null&&B(Wn);break;case 24:Jt(Be)}}function Ta(e,t){try{var n=t.updateQueue,l=n!==null?n.lastEffect:null;if(l!==null){var a=l.next;n=a;do{if((n.tag&e)===e){l=void 0;var s=n.create,o=n.inst;l=s(),o.destroy=l}n=n.next}while(n!==a)}}catch(h){pe(t,t.return,h)}}function Tn(e,t,n){try{var l=t.updateQueue,a=l!==null?l.lastEffect:null;if(a!==null){var s=a.next;l=s;do{if((l.tag&e)===e){var o=l.inst,h=o.destroy;if(h!==void 0){o.destroy=void 0,a=t;var g=n,N=h;try{N()}catch(D){pe(a,g,D)}}}l=l.next}while(l!==s)}}catch(D){pe(t,t.return,D)}}function vh(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{sf(t,n)}catch(l){pe(e,e.return,l)}}}function gh(e,t,n){n.props=tl(e.type,e.memoizedProps),n.state=e.memoizedState;try{n.componentWillUnmount()}catch(l){pe(e,t,l)}}function Aa(e,t){try{var n=e.ref;if(n!==null){switch(e.tag){case 26:case 27:case 5:var l=e.stateNode;break;case 30:l=e.stateNode;break;default:l=e.stateNode}typeof n=="function"?e.refCleanup=n(l):n.current=l}}catch(a){pe(e,t,a)}}function Bt(e,t){var n=e.ref,l=e.refCleanup;if(n!==null)if(typeof l=="function")try{l()}catch(a){pe(e,t,a)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n=="function")try{n(null)}catch(a){pe(e,t,a)}else n.current=null}function bh(e){var t=e.type,n=e.memoizedProps,l=e.stateNode;try{e:switch(t){case"button":case"input":case"select":case"textarea":n.autoFocus&&l.focus();break e;case"img":n.src?l.src=n.src:n.srcSet&&(l.srcset=n.srcSet)}}catch(a){pe(e,e.return,a)}}function hc(e,t,n){try{var l=e.stateNode;Py(l,e.type,n,t),l[et]=t}catch(a){pe(e,e.return,a)}}function Sh(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&Mn(e.type)||e.tag===4}function dc(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||Sh(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&&Mn(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 mc(e,t,n){var l=e.tag;if(l===5||l===6)e=e.stateNode,t?(n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n).insertBefore(e,t):(t=n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n,t.appendChild(e),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=Gt));else if(l!==4&&(l===27&&Mn(e.type)&&(n=e.stateNode,t=null),e=e.child,e!==null))for(mc(e,t,n),e=e.sibling;e!==null;)mc(e,t,n),e=e.sibling}function Vi(e,t,n){var l=e.tag;if(l===5||l===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(l!==4&&(l===27&&Mn(e.type)&&(n=e.stateNode),e=e.child,e!==null))for(Vi(e,t,n),e=e.sibling;e!==null;)Vi(e,t,n),e=e.sibling}function xh(e){var t=e.stateNode,n=e.memoizedProps;try{for(var l=e.type,a=t.attributes;a.length;)t.removeAttributeNode(a[0]);$e(t,l,n),t[Qe]=e,t[et]=n}catch(s){pe(e,e.return,s)}}var It=!1,qe=!1,pc=!1,_h=typeof WeakSet=="function"?WeakSet:Set,Ve=null;function My(e,t){if(e=e.containerInfo,Bc=fu,e=wo(e),cs(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var l=n.getSelection&&n.getSelection();if(l&&l.rangeCount!==0){n=l.anchorNode;var a=l.anchorOffset,s=l.focusNode;l=l.focusOffset;try{n.nodeType,s.nodeType}catch{n=null;break e}var o=0,h=-1,g=-1,N=0,D=0,U=e,O=null;t:for(;;){for(var M;U!==n||a!==0&&U.nodeType!==3||(h=o+a),U!==s||l!==0&&U.nodeType!==3||(g=o+l),U.nodeType===3&&(o+=U.nodeValue.length),(M=U.firstChild)!==null;)O=U,U=M;for(;;){if(U===e)break t;if(O===n&&++N===a&&(h=o),O===s&&++D===l&&(g=o),(M=U.nextSibling)!==null)break;U=O,O=U.parentNode}U=M}n=h===-1||g===-1?null:{start:h,end:g}}else n=null}n=n||{start:0,end:0}}else n=null;for(Lc={focusedElem:e,selectionRange:n},fu=!1,Ve=t;Ve!==null;)if(t=Ve,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,Ve=e;else for(;Ve!==null;){switch(t=Ve,s=t.alternate,e=t.flags,t.tag){case 0:if((e&4)!==0&&(e=t.updateQueue,e=e!==null?e.events:null,e!==null))for(n=0;n title"))),$e(s,l,n),s[Qe]=e,Ge(s),l=s;break e;case"link":var o=Nd("link","href",a).get(l+(n.href||""));if(o){for(var h=0;hSe&&(o=Se,Se=W,W=o);var A=Mo(h,W),x=Mo(h,Se);if(A&&x&&(M.rangeCount!==1||M.anchorNode!==A.node||M.anchorOffset!==A.offset||M.focusNode!==x.node||M.focusOffset!==x.offset)){var R=U.createRange();R.setStart(A.node,A.offset),M.removeAllRanges(),W>Se?(M.addRange(R),M.extend(x.node,x.offset)):(R.setEnd(x.node,x.offset),M.addRange(R))}}}}for(U=[],M=h;M=M.parentNode;)M.nodeType===1&&U.push({element:M,left:M.scrollLeft,top:M.scrollTop});for(typeof h.focus=="function"&&h.focus(),h=0;hn?32:n,w.T=null,n=_c,_c=null;var s=Nn,o=an;if(ke=0,Bl=Nn=null,an=0,(he&6)!==0)throw Error(r(331));var h=he;if(he|=4,wh(s.current),zh(s,s.current,o,n),he=h,Ma(0,!1),ct&&typeof ct.onPostCommitFiberRoot=="function")try{ct.onPostCommitFiberRoot($l,s)}catch{}return!0}finally{X.p=a,w.T=l,Fh(e,t)}}function Ih(e,t,n){t=St(n,t),t=tc(e.stateNode,t,2),e=xn(e,t,2),e!==null&&(Fl(e,2),Lt(e))}function pe(e,t,n){if(e.tag===3)Ih(e,e,n);else for(;t!==null;){if(t.tag===3){Ih(t,e,n);break}else if(t.tag===1){var l=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof l.componentDidCatch=="function"&&(Rn===null||!Rn.has(l))){e=St(n,e),n=eh(2),l=xn(t,n,2),l!==null&&(th(n,l,t,e),Fl(l,2),Lt(l));break}}t=t.return}}function Cc(e,t,n){var l=e.pingCache;if(l===null){l=e.pingCache=new jy;var a=new Set;l.set(t,a)}else a=l.get(t),a===void 0&&(a=new Set,l.set(t,a));a.has(n)||(gc=!0,a.add(n),e=qy.bind(null,e,t,n),t.then(e,e))}function qy(e,t,n){var l=e.pingCache;l!==null&&l.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,Ee===e&&(ue&n)===n&&(Me===4||Me===3&&(ue&62914560)===ue&&300>st()-Ki?(he&2)===0&&Ll(e,0):bc|=n,Ul===ue&&(Ul=0)),Lt(e)}function ed(e,t){t===0&&(t=Zr()),e=Qn(e,t),e!==null&&(Fl(e,t),Lt(e))}function Yy(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),ed(e,n)}function ky(e,t){var n=0;switch(e.tag){case 31:case 13:var l=e.stateNode,a=e.memoizedState;a!==null&&(n=a.retryLane);break;case 19:l=e.stateNode;break;case 22:l=e.stateNode._retryCache;break;default:throw Error(r(314))}l!==null&&l.delete(t),ed(e,n)}function Xy(e,t){return qu(e,t)}var eu=null,ql=null,Rc=!1,tu=!1,Nc=!1,zn=0;function Lt(e){e!==ql&&e.next===null&&(ql===null?eu=ql=e:ql=ql.next=e),tu=!0,Rc||(Rc=!0,Vy())}function Ma(e,t){if(!Nc&&tu){Nc=!0;do for(var n=!1,l=eu;l!==null;){if(e!==0){var a=l.pendingLanes;if(a===0)var s=0;else{var o=l.suspendedLanes,h=l.pingedLanes;s=(1<<31-rt(42|e)+1)-1,s&=a&~(o&~h),s=s&201326741?s&201326741|1:s?s|2:0}s!==0&&(n=!0,ad(l,s))}else s=ue,s=ii(l,l===Ee?s:0,l.cancelPendingCommit!==null||l.timeoutHandle!==-1),(s&3)===0||Wl(l,s)||(n=!0,ad(l,s));l=l.next}while(n);Nc=!1}}function Gy(){td()}function td(){tu=Rc=!1;var e=0;zn!==0&&e0()&&(e=zn);for(var t=st(),n=null,l=eu;l!==null;){var a=l.next,s=nd(l,t);s===0?(l.next=null,n===null?eu=a:n.next=a,a===null&&(ql=n)):(n=l,(e!==0||(s&3)!==0)&&(tu=!0)),l=a}ke!==0&&ke!==5||Ma(e),zn!==0&&(zn=0)}function nd(e,t){for(var n=e.suspendedLanes,l=e.pingedLanes,a=e.expirationTimes,s=e.pendingLanes&-62914561;0h)break;var D=g.transferSize,U=g.initiatorType;D&&hd(U)&&(g=g.responseEnd,o+=D*(g"u"?null:document;function Td(e,t,n){var l=Yl;if(l&&typeof t=="string"&&t){var a=gt(t);a='link[rel="'+e+'"][href="'+a+'"]',typeof n=="string"&&(a+='[crossorigin="'+n+'"]'),Ed.has(a)||(Ed.add(a),e={rel:e,crossOrigin:n,href:t},l.querySelector(a)===null&&(t=l.createElement("link"),$e(t,"link",e),Ge(t),l.head.appendChild(t)))}}function r0(e){un.D(e),Td("dns-prefetch",e,null)}function o0(e,t){un.C(e,t),Td("preconnect",e,t)}function f0(e,t,n){un.L(e,t,n);var l=Yl;if(l&&e&&t){var a='link[rel="preload"][as="'+gt(t)+'"]';t==="image"&&n&&n.imageSrcSet?(a+='[imagesrcset="'+gt(n.imageSrcSet)+'"]',typeof n.imageSizes=="string"&&(a+='[imagesizes="'+gt(n.imageSizes)+'"]')):a+='[href="'+gt(e)+'"]';var s=a;switch(t){case"style":s=kl(e);break;case"script":s=Xl(e)}Ct.has(s)||(e=S({rel:"preload",href:t==="image"&&n&&n.imageSrcSet?void 0:e,as:t},n),Ct.set(s,e),l.querySelector(a)!==null||t==="style"&&l.querySelector(Ua(s))||t==="script"&&l.querySelector(Ba(s))||(t=l.createElement("link"),$e(t,"link",e),Ge(t),l.head.appendChild(t)))}}function h0(e,t){un.m(e,t);var n=Yl;if(n&&e){var l=t&&typeof t.as=="string"?t.as:"script",a='link[rel="modulepreload"][as="'+gt(l)+'"][href="'+gt(e)+'"]',s=a;switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":s=Xl(e)}if(!Ct.has(s)&&(e=S({rel:"modulepreload",href:e},t),Ct.set(s,e),n.querySelector(a)===null)){switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(n.querySelector(Ba(s)))return}l=n.createElement("link"),$e(l,"link",e),Ge(l),n.head.appendChild(l)}}}function d0(e,t,n){un.S(e,t,n);var l=Yl;if(l&&e){var a=rl(l).hoistableStyles,s=kl(e);t=t||"default";var o=a.get(s);if(!o){var h={loading:0,preload:null};if(o=l.querySelector(Ua(s)))h.loading=5;else{e=S({rel:"stylesheet",href:e,"data-precedence":t},n),(n=Ct.get(s))&&Vc(e,n);var g=o=l.createElement("link");Ge(g),$e(g,"link",e),g._p=new Promise(function(N,D){g.onload=N,g.onerror=D}),g.addEventListener("load",function(){h.loading|=1}),g.addEventListener("error",function(){h.loading|=2}),h.loading|=4,uu(o,t,l)}o={type:"stylesheet",instance:o,count:1,state:h},a.set(s,o)}}}function m0(e,t){un.X(e,t);var n=Yl;if(n&&e){var l=rl(n).hoistableScripts,a=Xl(e),s=l.get(a);s||(s=n.querySelector(Ba(a)),s||(e=S({src:e,async:!0},t),(t=Ct.get(a))&&Qc(e,t),s=n.createElement("script"),Ge(s),$e(s,"link",e),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function p0(e,t){un.M(e,t);var n=Yl;if(n&&e){var l=rl(n).hoistableScripts,a=Xl(e),s=l.get(a);s||(s=n.querySelector(Ba(a)),s||(e=S({src:e,async:!0,type:"module"},t),(t=Ct.get(a))&&Qc(e,t),s=n.createElement("script"),Ge(s),$e(s,"link",e),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function Ad(e,t,n,l){var a=(a=le.current)?iu(a):null;if(!a)throw Error(r(446));switch(e){case"meta":case"title":return null;case"style":return typeof n.precedence=="string"&&typeof n.href=="string"?(t=kl(n.href),n=rl(a).hoistableStyles,l=n.get(t),l||(l={type:"style",instance:null,count:0,state:null},n.set(t,l)),l):{type:"void",instance:null,count:0,state:null};case"link":if(n.rel==="stylesheet"&&typeof n.href=="string"&&typeof n.precedence=="string"){e=kl(n.href);var s=rl(a).hoistableStyles,o=s.get(e);if(o||(a=a.ownerDocument||a,o={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},s.set(e,o),(s=a.querySelector(Ua(e)))&&!s._p&&(o.instance=s,o.state.loading=5),Ct.has(e)||(n={rel:"preload",as:"style",href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},Ct.set(e,n),s||y0(a,e,n,o.state))),t&&l===null)throw Error(r(528,""));return o}if(t&&l!==null)throw Error(r(529,""));return null;case"script":return t=n.async,n=n.src,typeof n=="string"&&t&&typeof t!="function"&&typeof t!="symbol"?(t=Xl(n),n=rl(a).hoistableScripts,l=n.get(t),l||(l={type:"script",instance:null,count:0,state:null},n.set(t,l)),l):{type:"void",instance:null,count:0,state:null};default:throw Error(r(444,e))}}function kl(e){return'href="'+gt(e)+'"'}function Ua(e){return'link[rel="stylesheet"]['+e+"]"}function Cd(e){return S({},e,{"data-precedence":e.precedence,precedence:null})}function y0(e,t,n,l){e.querySelector('link[rel="preload"][as="style"]['+t+"]")?l.loading=1:(t=e.createElement("link"),l.preload=t,t.addEventListener("load",function(){return l.loading|=1}),t.addEventListener("error",function(){return l.loading|=2}),$e(t,"link",n),Ge(t),e.head.appendChild(t))}function Xl(e){return'[src="'+gt(e)+'"]'}function Ba(e){return"script[async]"+e}function Rd(e,t,n){if(t.count++,t.instance===null)switch(t.type){case"style":var l=e.querySelector('style[data-href~="'+gt(n.href)+'"]');if(l)return t.instance=l,Ge(l),l;var a=S({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return l=(e.ownerDocument||e).createElement("style"),Ge(l),$e(l,"style",a),uu(l,n.precedence,e),t.instance=l;case"stylesheet":a=kl(n.href);var s=e.querySelector(Ua(a));if(s)return t.state.loading|=4,t.instance=s,Ge(s),s;l=Cd(n),(a=Ct.get(a))&&Vc(l,a),s=(e.ownerDocument||e).createElement("link"),Ge(s);var o=s;return o._p=new Promise(function(h,g){o.onload=h,o.onerror=g}),$e(s,"link",l),t.state.loading|=4,uu(s,n.precedence,e),t.instance=s;case"script":return s=Xl(n.src),(a=e.querySelector(Ba(s)))?(t.instance=a,Ge(a),a):(l=n,(a=Ct.get(s))&&(l=S({},n),Qc(l,a)),e=e.ownerDocument||e,a=e.createElement("script"),Ge(a),$e(a,"link",l),e.head.appendChild(a),t.instance=a);case"void":return null;default:throw Error(r(443,t.type))}else t.type==="stylesheet"&&(t.state.loading&4)===0&&(l=t.instance,t.state.loading|=4,uu(l,n.precedence,e));return t.instance}function uu(e,t,n){for(var l=n.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=l.length?l[l.length-1]:null,s=a,o=0;o title"):null)}function v0(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case"meta":case"title":return!0;case"style":if(typeof t.precedence!="string"||typeof t.href!="string"||t.href==="")break;return!0;case"link":if(typeof t.rel!="string"||typeof t.href!="string"||t.href===""||t.onLoad||t.onError)break;switch(t.rel){case"stylesheet":return e=t.disabled,typeof t.precedence=="string"&&e==null;default:return!0}case"script":if(t.async&&typeof t.async!="function"&&typeof t.async!="symbol"&&!t.onLoad&&!t.onError&&t.src&&typeof t.src=="string")return!0}return!1}function zd(e){return!(e.type==="stylesheet"&&(e.state.loading&3)===0)}function g0(e,t,n,l){if(n.type==="stylesheet"&&(typeof l.media!="string"||matchMedia(l.media).matches!==!1)&&(n.state.loading&4)===0){if(n.instance===null){var a=kl(l.href),s=t.querySelector(Ua(a));if(s){t=s._p,t!==null&&typeof t=="object"&&typeof t.then=="function"&&(e.count++,e=cu.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=s,Ge(s);return}s=t.ownerDocument||t,l=Cd(l),(a=Ct.get(a))&&Vc(l,a),s=s.createElement("link"),Ge(s);var o=s;o._p=new Promise(function(h,g){o.onload=h,o.onerror=g}),$e(s,"link",l),n.instance=s}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&(n.state.loading&3)===0&&(e.count++,n=cu.bind(e),t.addEventListener("load",n),t.addEventListener("error",n))}}var Zc=0;function b0(e,t){return e.stylesheets&&e.count===0&&ou(e,e.stylesheets),0Zc?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(l),clearTimeout(a)}}:null}function cu(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)ou(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var ru=null;function ou(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,ru=new Map,t.forEach(S0,e),ru=null,cu.call(e))}function S0(e,t){if(!(t.state.loading&4)){var n=ru.get(e);if(n)var l=n.get(null);else{n=new Map,ru.set(e,n);for(var a=e.querySelectorAll("link[data-precedence],style[data-precedence]"),s=0;s"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(u)}catch(i){console.error(i)}}return u(),tr.exports=B0(),tr.exports}var H0=L0();var em="popstate";function q0(u={}){function i(r,f){let{pathname:d,search:m,hash:b}=r.location;return hr("",{pathname:d,search:m,hash:b},f.state&&f.state.usr||null,f.state&&f.state.key||"default")}function c(r,f){return typeof f=="string"?f:Wa(f)}return k0(i,c,null,u)}function Oe(u,i){if(u===!1||u===null||typeof u>"u")throw new Error(i)}function wt(u,i){if(!u){typeof console<"u"&&console.warn(i);try{throw new Error(i)}catch{}}}function Y0(){return Math.random().toString(36).substring(2,10)}function tm(u,i){return{usr:u.state,key:u.key,idx:i}}function hr(u,i,c=null,r){return{pathname:typeof u=="string"?u:u.pathname,search:"",hash:"",...typeof i=="string"?Ql(i):i,state:c,key:i&&i.key||r||Y0()}}function Wa({pathname:u="/",search:i="",hash:c=""}){return i&&i!=="?"&&(u+=i.charAt(0)==="?"?i:"?"+i),c&&c!=="#"&&(u+=c.charAt(0)==="#"?c:"#"+c),u}function Ql(u){let i={};if(u){let c=u.indexOf("#");c>=0&&(i.hash=u.substring(c),u=u.substring(0,c));let r=u.indexOf("?");r>=0&&(i.search=u.substring(r),u=u.substring(0,r)),u&&(i.pathname=u)}return i}function k0(u,i,c,r={}){let{window:f=document.defaultView,v5Compat:d=!1}=r,m=f.history,b="POP",p=null,y=E();y==null&&(y=0,m.replaceState({...m.state,idx:y},""));function E(){return(m.state||{idx:null}).idx}function S(){b="POP";let Y=E(),L=Y==null?null:Y-y;y=Y,p&&p({action:b,location:k.location,delta:L})}function C(Y,L){b="PUSH";let q=hr(k.location,Y,L);y=E()+1;let Q=tm(q,y),P=k.createHref(q);try{m.pushState(Q,"",P)}catch(ye){if(ye instanceof DOMException&&ye.name==="DataCloneError")throw ye;f.location.assign(P)}d&&p&&p({action:b,location:k.location,delta:1})}function z(Y,L){b="REPLACE";let q=hr(k.location,Y,L);y=E();let Q=tm(q,y),P=k.createHref(q);m.replaceState(Q,"",P),d&&p&&p({action:b,location:k.location,delta:0})}function H(Y){return X0(Y)}let k={get action(){return b},get location(){return u(f,m)},listen(Y){if(p)throw new Error("A history only accepts one active listener");return f.addEventListener(em,S),p=Y,()=>{f.removeEventListener(em,S),p=null}},createHref(Y){return i(f,Y)},createURL:H,encodeLocation(Y){let L=H(Y);return{pathname:L.pathname,search:L.search,hash:L.hash}},push:C,replace:z,go(Y){return m.go(Y)}};return k}function X0(u,i=!1){let c="http://localhost";typeof window<"u"&&(c=window.location.origin!=="null"?window.location.origin:window.location.href),Oe(c,"No window.location.(origin|href) available to create URL");let r=typeof u=="string"?u:Wa(u);return r=r.replace(/ $/,"%20"),!i&&r.startsWith("//")&&(r=c+r),new URL(r,c)}function Sm(u,i,c="/"){return G0(u,i,c,!1)}function G0(u,i,c,r){let f=typeof i=="string"?Ql(i):i,d=rn(f.pathname||"/",c);if(d==null)return null;let m=xm(u);V0(m);let b=null;for(let p=0;b==null&&p{let E={relativePath:y===void 0?m.path||"":y,caseSensitive:m.caseSensitive===!0,childrenIndex:b,route:m};if(E.relativePath.startsWith("/")){if(!E.relativePath.startsWith(r)&&p)return;Oe(E.relativePath.startsWith(r),`Absolute route path "${E.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),E.relativePath=E.relativePath.slice(r.length)}let S=cn([r,E.relativePath]),C=c.concat(E);m.children&&m.children.length>0&&(Oe(m.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${S}".`),xm(m.children,i,C,S,p)),!(m.path==null&&!m.index)&&i.push({path:S,score:F0(S,m.index),routesMeta:C})};return u.forEach((m,b)=>{if(m.path===""||!m.path?.includes("?"))d(m,b);else for(let p of _m(m.path))d(m,b,!0,p)}),i}function _m(u){let i=u.split("/");if(i.length===0)return[];let[c,...r]=i,f=c.endsWith("?"),d=c.replace(/\?$/,"");if(r.length===0)return f?[d,""]:[d];let m=_m(r.join("/")),b=[];return b.push(...m.map(p=>p===""?d:[d,p].join("/"))),f&&b.push(...m),b.map(p=>u.startsWith("/")&&p===""?"/":p)}function V0(u){u.sort((i,c)=>i.score!==c.score?c.score-i.score:P0(i.routesMeta.map(r=>r.childrenIndex),c.routesMeta.map(r=>r.childrenIndex)))}var Q0=/^:[\w-]+$/,Z0=3,K0=2,J0=1,$0=10,W0=-2,nm=u=>u==="*";function F0(u,i){let c=u.split("/"),r=c.length;return c.some(nm)&&(r+=W0),i&&(r+=K0),c.filter(f=>!nm(f)).reduce((f,d)=>f+(Q0.test(d)?Z0:d===""?J0:$0),r)}function P0(u,i){return u.length===i.length&&u.slice(0,-1).every((r,f)=>r===i[f])?u[u.length-1]-i[i.length-1]:0}function I0(u,i,c=!1){let{routesMeta:r}=u,f={},d="/",m=[];for(let b=0;b{if(E==="*"){let H=b[C]||"";m=d.slice(0,d.length-H.length).replace(/(.)\/+$/,"$1")}const z=b[C];return S&&!z?y[E]=void 0:y[E]=(z||"").replace(/%2F/g,"/"),y},{}),pathname:d,pathnameBase:m,pattern:u}}function ev(u,i=!1,c=!0){wt(u==="*"||!u.endsWith("*")||u.endsWith("/*"),`Route path "${u}" will be treated as if it were "${u.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${u.replace(/\*$/,"/*")}".`);let r=[],f="^"+u.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(m,b,p)=>(r.push({paramName:b,isOptional:p!=null}),p?"/?([^\\/]+)?":"/([^\\/]+)")).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return u.endsWith("*")?(r.push({paramName:"*"}),f+=u==="*"||u==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):c?f+="\\/*$":u!==""&&u!=="/"&&(f+="(?:(?=\\/|$))"),[new RegExp(f,i?void 0:"i"),r]}function tv(u){try{return u.split("/").map(i=>decodeURIComponent(i).replace(/\//g,"%2F")).join("/")}catch(i){return wt(!1,`The URL path "${u}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${i}).`),u}}function rn(u,i){if(i==="/")return u;if(!u.toLowerCase().startsWith(i.toLowerCase()))return null;let c=i.endsWith("/")?i.length-1:i.length,r=u.charAt(c);return r&&r!=="/"?null:u.slice(c)||"/"}var nv=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,lv=u=>nv.test(u);function av(u,i="/"){let{pathname:c,search:r="",hash:f=""}=typeof u=="string"?Ql(u):u,d;if(c)if(lv(c))d=c;else{if(c.includes("//")){let m=c;c=c.replace(/\/\/+/g,"/"),wt(!1,`Pathnames cannot have embedded double slashes - normalizing ${m} -> ${c}`)}c.startsWith("/")?d=lm(c.substring(1),"/"):d=lm(c,i)}else d=i;return{pathname:d,search:sv(r),hash:cv(f)}}function lm(u,i){let c=i.replace(/\/+$/,"").split("/");return u.split("/").forEach(f=>{f===".."?c.length>1&&c.pop():f!=="."&&c.push(f)}),c.length>1?c.join("/"):"/"}function ir(u,i,c,r){return`Cannot include a '${u}' character in a manually specified \`to.${i}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${c}\` field. Alternatively you may provide the full path as a string in and the router will parse it for you.`}function iv(u){return u.filter((i,c)=>c===0||i.route.path&&i.route.path.length>0)}function Em(u){let i=iv(u);return i.map((c,r)=>r===i.length-1?c.pathname:c.pathnameBase)}function Tm(u,i,c,r=!1){let f;typeof u=="string"?f=Ql(u):(f={...u},Oe(!f.pathname||!f.pathname.includes("?"),ir("?","pathname","search",f)),Oe(!f.pathname||!f.pathname.includes("#"),ir("#","pathname","hash",f)),Oe(!f.search||!f.search.includes("#"),ir("#","search","hash",f)));let d=u===""||f.pathname==="",m=d?"/":f.pathname,b;if(m==null)b=c;else{let S=i.length-1;if(!r&&m.startsWith("..")){let C=m.split("/");for(;C[0]==="..";)C.shift(),S-=1;f.pathname=C.join("/")}b=S>=0?i[S]:"/"}let p=av(f,b),y=m&&m!=="/"&&m.endsWith("/"),E=(d||m===".")&&c.endsWith("/");return!p.pathname.endsWith("/")&&(y||E)&&(p.pathname+="/"),p}var cn=u=>u.join("/").replace(/\/\/+/g,"/"),uv=u=>u.replace(/\/+$/,"").replace(/^\/*/,"/"),sv=u=>!u||u==="?"?"":u.startsWith("?")?u:"?"+u,cv=u=>!u||u==="#"?"":u.startsWith("#")?u:"#"+u;function rv(u){return u!=null&&typeof u.status=="number"&&typeof u.statusText=="string"&&typeof u.internal=="boolean"&&"data"in u}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var Am=["POST","PUT","PATCH","DELETE"];new Set(Am);var ov=["GET",...Am];new Set(ov);var Zl=T.createContext(null);Zl.displayName="DataRouter";var Ou=T.createContext(null);Ou.displayName="DataRouterState";T.createContext(!1);var Cm=T.createContext({isTransitioning:!1});Cm.displayName="ViewTransition";var fv=T.createContext(new Map);fv.displayName="Fetchers";var hv=T.createContext(null);hv.displayName="Await";var Yt=T.createContext(null);Yt.displayName="Navigation";var Fa=T.createContext(null);Fa.displayName="Location";var on=T.createContext({outlet:null,matches:[],isDataRoute:!1});on.displayName="Route";var xr=T.createContext(null);xr.displayName="RouteError";function dv(u,{relative:i}={}){Oe(Pa(),"useHref() may be used only in the context of a component.");let{basename:c,navigator:r}=T.useContext(Yt),{hash:f,pathname:d,search:m}=Ia(u,{relative:i}),b=d;return c!=="/"&&(b=d==="/"?c:cn([c,d])),r.createHref({pathname:b,search:m,hash:f})}function Pa(){return T.useContext(Fa)!=null}function il(){return Oe(Pa(),"useLocation() may be used only in the context of a component."),T.useContext(Fa).location}var Rm="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function Nm(u){T.useContext(Yt).static||T.useLayoutEffect(u)}function mv(){let{isDataRoute:u}=T.useContext(on);return u?Rv():pv()}function pv(){Oe(Pa(),"useNavigate() may be used only in the context of a component.");let u=T.useContext(Zl),{basename:i,navigator:c}=T.useContext(Yt),{matches:r}=T.useContext(on),{pathname:f}=il(),d=JSON.stringify(Em(r)),m=T.useRef(!1);return Nm(()=>{m.current=!0}),T.useCallback((p,y={})=>{if(wt(m.current,Rm),!m.current)return;if(typeof p=="number"){c.go(p);return}let E=Tm(p,JSON.parse(d),f,y.relative==="path");u==null&&i!=="/"&&(E.pathname=E.pathname==="/"?i:cn([i,E.pathname])),(y.replace?c.replace:c.push)(E,y.state,y)},[i,c,d,f,u])}T.createContext(null);function Ia(u,{relative:i}={}){let{matches:c}=T.useContext(on),{pathname:r}=il(),f=JSON.stringify(Em(c));return T.useMemo(()=>Tm(u,JSON.parse(f),r,i==="path"),[u,f,r,i])}function yv(u,i){return Om(u,i)}function Om(u,i,c,r,f){Oe(Pa(),"useRoutes() may be used only in the context of a component.");let{navigator:d}=T.useContext(Yt),{matches:m}=T.useContext(on),b=m[m.length-1],p=b?b.params:{},y=b?b.pathname:"/",E=b?b.pathnameBase:"/",S=b&&b.route;{let q=S&&S.path||"";zm(y,!S||q.endsWith("*")||q.endsWith("*?"),`You rendered descendant (or called \`useRoutes()\`) at "${y}" (under ) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render. -Please change the parent to .`)}let C=il(),z;if(i){let q=typeof i=="string"?Ql(i):i;Oe(E==="/"||q.pathname?.startsWith(E),`When overriding the location using \`\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${E}" but pathname "${q.pathname}" was given in the \`location\` prop.`),z=q}else z=C;let H=z.pathname||"/",k=H;if(E!=="/"){let q=E.replace(/^\//,"").split("/");k="/"+H.replace(/^\//,"").split("/").slice(q.length).join("/")}let Y=Sm(u,{pathname:k});wt(S||Y!=null,`No routes matched location "${z.pathname}${z.search}${z.hash}" `),wt(Y==null||Y[Y.length-1].route.element!==void 0||Y[Y.length-1].route.Component!==void 0||Y[Y.length-1].route.lazy!==void 0,`Matched leaf route at location "${z.pathname}${z.search}${z.hash}" does not have an element or Component. This means it will render an with a null value by default resulting in an "empty" page.`);let L=xv(Y&&Y.map(q=>Object.assign({},q,{params:Object.assign({},p,q.params),pathname:cn([E,d.encodeLocation?d.encodeLocation(q.pathname.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:q.pathname]),pathnameBase:q.pathnameBase==="/"?E:cn([E,d.encodeLocation?d.encodeLocation(q.pathnameBase.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:q.pathnameBase])})),m,c,r,f);return i&&L?T.createElement(Fa.Provider,{value:{location:{pathname:"/",search:"",hash:"",state:null,key:"default",...z},navigationType:"POP"}},L):L}function vv(){let u=Cv(),i=rv(u)?`${u.status} ${u.statusText}`:u instanceof Error?u.message:JSON.stringify(u),c=u instanceof Error?u.stack:null,r="rgba(200,200,200, 0.5)",f={padding:"0.5rem",backgroundColor:r},d={padding:"2px 4px",backgroundColor:r},m=null;return console.error("Error handled by React Router default ErrorBoundary:",u),m=T.createElement(T.Fragment,null,T.createElement("p",null,"💿 Hey developer 👋"),T.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",T.createElement("code",{style:d},"ErrorBoundary")," or"," ",T.createElement("code",{style:d},"errorElement")," prop on your route.")),T.createElement(T.Fragment,null,T.createElement("h2",null,"Unexpected Application Error!"),T.createElement("h3",{style:{fontStyle:"italic"}},i),c?T.createElement("pre",{style:f},c):null,m)}var gv=T.createElement(vv,null),bv=class extends T.Component{constructor(u){super(u),this.state={location:u.location,revalidation:u.revalidation,error:u.error}}static getDerivedStateFromError(u){return{error:u}}static getDerivedStateFromProps(u,i){return i.location!==u.location||i.revalidation!=="idle"&&u.revalidation==="idle"?{error:u.error,location:u.location,revalidation:u.revalidation}:{error:u.error!==void 0?u.error:i.error,location:i.location,revalidation:u.revalidation||i.revalidation}}componentDidCatch(u,i){this.props.onError?this.props.onError(u,i):console.error("React Router caught the following error during render",u)}render(){return this.state.error!==void 0?T.createElement(on.Provider,{value:this.props.routeContext},T.createElement(xr.Provider,{value:this.state.error,children:this.props.component})):this.props.children}};function Sv({routeContext:u,match:i,children:c}){let r=T.useContext(Zl);return r&&r.static&&r.staticContext&&(i.route.errorElement||i.route.ErrorBoundary)&&(r.staticContext._deepestRenderedBoundaryId=i.route.id),T.createElement(on.Provider,{value:u},c)}function xv(u,i=[],c=null,r=null,f=null){if(u==null){if(!c)return null;if(c.errors)u=c.matches;else if(i.length===0&&!c.initialized&&c.matches.length>0)u=c.matches;else return null}let d=u,m=c?.errors;if(m!=null){let E=d.findIndex(S=>S.route.id&&m?.[S.route.id]!==void 0);Oe(E>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(m).join(",")}`),d=d.slice(0,Math.min(d.length,E+1))}let b=!1,p=-1;if(c)for(let E=0;E=0?d=d.slice(0,p+1):d=[d[0]];break}}}let y=c&&r?(E,S)=>{r(E,{location:c.location,params:c.matches?.[0]?.params??{},errorInfo:S})}:void 0;return d.reduceRight((E,S,C)=>{let z,H=!1,k=null,Y=null;c&&(z=m&&S.route.id?m[S.route.id]:void 0,k=S.route.errorElement||gv,b&&(p<0&&C===0?(zm("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),H=!0,Y=null):p===C&&(H=!0,Y=S.route.hydrateFallbackElement||null)));let L=i.concat(d.slice(0,C+1)),q=()=>{let Q;return z?Q=k:H?Q=Y:S.route.Component?Q=T.createElement(S.route.Component,null):S.route.element?Q=S.route.element:Q=E,T.createElement(Sv,{match:S,routeContext:{outlet:E,matches:L,isDataRoute:c!=null},children:Q})};return c&&(S.route.ErrorBoundary||S.route.errorElement||C===0)?T.createElement(bv,{location:c.location,revalidation:c.revalidation,component:k,error:z,children:q(),routeContext:{outlet:null,matches:L,isDataRoute:!0},onError:y}):q()},null)}function _r(u){return`${u} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function _v(u){let i=T.useContext(Zl);return Oe(i,_r(u)),i}function Ev(u){let i=T.useContext(Ou);return Oe(i,_r(u)),i}function Tv(u){let i=T.useContext(on);return Oe(i,_r(u)),i}function Er(u){let i=Tv(u),c=i.matches[i.matches.length-1];return Oe(c.route.id,`${u} can only be used on routes that contain a unique "id"`),c.route.id}function Av(){return Er("useRouteId")}function Cv(){let u=T.useContext(xr),i=Ev("useRouteError"),c=Er("useRouteError");return u!==void 0?u:i.errors?.[c]}function Rv(){let{router:u}=_v("useNavigate"),i=Er("useNavigate"),c=T.useRef(!1);return Nm(()=>{c.current=!0}),T.useCallback(async(f,d={})=>{wt(c.current,Rm),c.current&&(typeof f=="number"?u.navigate(f):await u.navigate(f,{fromRouteId:i,...d}))},[u,i])}var am={};function zm(u,i,c){!i&&!am[u]&&(am[u]=!0,wt(!1,c))}T.memo(Nv);function Nv({routes:u,future:i,state:c,unstable_onError:r}){return Om(u,void 0,c,r,i)}function dr(u){Oe(!1,"A is only ever to be used as the child of element, never rendered directly. Please wrap your in a .")}function Ov({basename:u="/",children:i=null,location:c,navigationType:r="POP",navigator:f,static:d=!1}){Oe(!Pa(),"You cannot render a inside another . You should never have more than one in your app.");let m=u.replace(/^\/*/,"/"),b=T.useMemo(()=>({basename:m,navigator:f,static:d,future:{}}),[m,f,d]);typeof c=="string"&&(c=Ql(c));let{pathname:p="/",search:y="",hash:E="",state:S=null,key:C="default"}=c,z=T.useMemo(()=>{let H=rn(p,m);return H==null?null:{location:{pathname:H,search:y,hash:E,state:S,key:C},navigationType:r}},[m,p,y,E,S,C,r]);return wt(z!=null,` is not able to match the URL "${p}${y}${E}" because it does not start with the basename, so the won't render anything.`),z==null?null:T.createElement(Yt.Provider,{value:b},T.createElement(Fa.Provider,{children:i,value:z}))}function zv({children:u,location:i}){return yv(mr(u),i)}function mr(u,i=[]){let c=[];return T.Children.forEach(u,(r,f)=>{if(!T.isValidElement(r))return;let d=[...i,f];if(r.type===T.Fragment){c.push.apply(c,mr(r.props.children,d));return}Oe(r.type===dr,`[${typeof r.type=="string"?r.type:r.type.name}] is not a component. All component children of must be a or `),Oe(!r.props.index||!r.props.children,"An index route cannot have child routes.");let m={id:r.props.id||d.join("-"),caseSensitive:r.props.caseSensitive,element:r.props.element,Component:r.props.Component,index:r.props.index,path:r.props.path,middleware:r.props.middleware,loader:r.props.loader,action:r.props.action,hydrateFallbackElement:r.props.hydrateFallbackElement,HydrateFallback:r.props.HydrateFallback,errorElement:r.props.errorElement,ErrorBoundary:r.props.ErrorBoundary,hasErrorBoundary:r.props.hasErrorBoundary===!0||r.props.ErrorBoundary!=null||r.props.errorElement!=null,shouldRevalidate:r.props.shouldRevalidate,handle:r.props.handle,lazy:r.props.lazy};r.props.children&&(m.children=mr(r.props.children,d)),c.push(m)}),c}var xu="get",_u="application/x-www-form-urlencoded";function zu(u){return u!=null&&typeof u.tagName=="string"}function Mv(u){return zu(u)&&u.tagName.toLowerCase()==="button"}function Dv(u){return zu(u)&&u.tagName.toLowerCase()==="form"}function wv(u){return zu(u)&&u.tagName.toLowerCase()==="input"}function jv(u){return!!(u.metaKey||u.altKey||u.ctrlKey||u.shiftKey)}function Uv(u,i){return u.button===0&&(!i||i==="_self")&&!jv(u)}var gu=null;function Bv(){if(gu===null)try{new FormData(document.createElement("form"),0),gu=!1}catch{gu=!0}return gu}var Lv=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function ur(u){return u!=null&&!Lv.has(u)?(wt(!1,`"${u}" is not a valid \`encType\` for \`
      \`/\`\` and will default to "${_u}"`),null):u}function Hv(u,i){let c,r,f,d,m;if(Dv(u)){let b=u.getAttribute("action");r=b?rn(b,i):null,c=u.getAttribute("method")||xu,f=ur(u.getAttribute("enctype"))||_u,d=new FormData(u)}else if(Mv(u)||wv(u)&&(u.type==="submit"||u.type==="image")){let b=u.form;if(b==null)throw new Error('Cannot submit a ))}
      -
      -
      +
      */} + {/*
      -
      +
      */}
      -

      Sensor streaming auto-starts after each OI change.

      + {/*

      Sensor streaming auto-starts after each OI change.

      */}
); } diff --git a/webui/src/components/TelemetryPanel.jsx b/webui/src/components/TelemetryPanel.jsx index 6fc0881f..89560a3e 100644 --- a/webui/src/components/TelemetryPanel.jsx +++ b/webui/src/components/TelemetryPanel.jsx @@ -50,7 +50,7 @@ export default function TelemetryPanel() { ) : !frame ? (

Waiting for sensor frames…

) : ( -
+
@@ -98,9 +98,12 @@ export default function TelemetryPanel() { function Metric({ label, value }) { return ( -
- {label} - {value} + //
+ // {label} + // {value} + //
+
+ {label}: {value}
); } From 36bda59824fa614f5ed9d8ce9284278fa683c7ab Mon Sep 17 00:00:00 2001 From: legop3 Date: Sun, 16 Nov 2025 02:14:10 -0500 Subject: [PATCH 42/61] re ddead --- server/public/assets/{index-MmT1vZc4.js => index-Bjef2-xg.js} | 2 +- server/public/assets/index-CQMHW1dj.css | 1 - server/public/assets/index-DTwN9tlx.css | 1 + server/public/index.html | 4 ++-- webui/src/components/TelemetryPanel.jsx | 4 ++-- 5 files changed, 6 insertions(+), 6 deletions(-) rename server/public/assets/{index-MmT1vZc4.js => index-Bjef2-xg.js} (88%) delete mode 100644 server/public/assets/index-CQMHW1dj.css create mode 100644 server/public/assets/index-DTwN9tlx.css diff --git a/server/public/assets/index-MmT1vZc4.js b/server/public/assets/index-Bjef2-xg.js similarity index 88% rename from server/public/assets/index-MmT1vZc4.js rename to server/public/assets/index-Bjef2-xg.js index 288cc232..3ff92d93 100644 --- a/server/public/assets/index-MmT1vZc4.js +++ b/server/public/assets/index-Bjef2-xg.js @@ -8,4 +8,4 @@ Error generating stack: `+l.message+` `+l.stack}}var Hu=Object.prototype.hasOwnProperty,qu=u.unstable_scheduleCallback,Yu=u.unstable_cancelCallback,sp=u.unstable_shouldYield,cp=u.unstable_requestPaint,se=u.unstable_now,rp=u.unstable_getCurrentPriorityLevel,Gr=u.unstable_ImmediatePriority,Vr=u.unstable_UserBlockingPriority,ei=u.unstable_NormalPriority,op=u.unstable_LowPriority,Qr=u.unstable_IdlePriority,fp=u.log,hp=u.unstable_setDisableYieldValue,$l=null,ce=null;function hn(t){if(typeof fp=="function"&&hp(t),ce&&typeof ce.setStrictMode=="function")try{ce.setStrictMode($l,t)}catch{}}var re=Math.clz32?Math.clz32:pp,dp=Math.log,mp=Math.LN2;function pp(t){return t>>>=0,t===0?32:31-(dp(t)/mp|0)|0}var ni=256,li=262144,ai=4194304;function Yn(t){var e=t&42;if(e!==0)return e;switch(t&-t){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return t&261888;case 262144:case 524288:case 1048576:case 2097152:return t&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return t&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return t}}function ii(t,e,n){var l=t.pendingLanes;if(l===0)return 0;var a=0,s=t.suspendedLanes,o=t.pingedLanes;t=t.warmLanes;var h=l&134217727;return h!==0?(l=h&~s,l!==0?a=Yn(l):(o&=h,o!==0?a=Yn(o):n||(n=h&~t,n!==0&&(a=Yn(n))))):(h=l&~s,h!==0?a=Yn(h):o!==0?a=Yn(o):n||(n=l&~t,n!==0&&(a=Yn(n)))),a===0?0:e!==0&&e!==a&&(e&s)===0&&(s=a&-a,n=e&-e,s>=n||s===32&&(n&4194048)!==0)?e:a}function Wl(t,e){return(t.pendingLanes&~(t.suspendedLanes&~t.pingedLanes)&e)===0}function yp(t,e){switch(t){case 1:case 2:case 4:case 8:case 64:return e+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 e+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 Zr(){var t=ai;return ai<<=1,(ai&62914560)===0&&(ai=4194304),t}function ku(t){for(var e=[],n=0;31>n;n++)e.push(t);return e}function Fl(t,e){t.pendingLanes|=e,e!==268435456&&(t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0)}function vp(t,e,n,l,a,s){var o=t.pendingLanes;t.pendingLanes=n,t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0,t.expiredLanes&=n,t.entangledLanes&=n,t.errorRecoveryDisabledLanes&=n,t.shellSuspendCounter=0;var h=t.entanglements,v=t.expirationTimes,O=t.hiddenUpdates;for(n=o&~n;0"u")return null;try{return t.activeElement||t.body}catch{return t.body}}var Ep=/[\n"\\]/g;function ge(t){return t.replace(Ep,function(e){return"\\"+e.charCodeAt(0).toString(16)+" "})}function Ku(t,e,n,l,a,s,o,h){t.name="",o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"?t.type=o:t.removeAttribute("type"),e!=null?o==="number"?(e===0&&t.value===""||t.value!=e)&&(t.value=""+ve(e)):t.value!==""+ve(e)&&(t.value=""+ve(e)):o!=="submit"&&o!=="reset"||t.removeAttribute("value"),e!=null?Ju(t,o,ve(e)):n!=null?Ju(t,o,ve(n)):l!=null&&t.removeAttribute("value"),a==null&&s!=null&&(t.defaultChecked=!!s),a!=null&&(t.checked=a&&typeof a!="function"&&typeof a!="symbol"),h!=null&&typeof h!="function"&&typeof h!="symbol"&&typeof h!="boolean"?t.name=""+ve(h):t.removeAttribute("name")}function io(t,e,n,l,a,s,o,h){if(s!=null&&typeof s!="function"&&typeof s!="symbol"&&typeof s!="boolean"&&(t.type=s),e!=null||n!=null){if(!(s!=="submit"&&s!=="reset"||e!=null)){Zu(t);return}n=n!=null?""+ve(n):"",e=e!=null?""+ve(e):n,h||e===t.value||(t.value=e),t.defaultValue=e}l=l??a,l=typeof l!="function"&&typeof l!="symbol"&&!!l,t.checked=h?t.checked:!!l,t.defaultChecked=!!l,o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"&&(t.name=o),Zu(t)}function Ju(t,e,n){e==="number"&&ci(t.ownerDocument)===t||t.defaultValue===""+n||(t.defaultValue=""+n)}function fl(t,e,n,l){if(t=t.options,e){e={};for(var a=0;a"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Iu=!1;if(Ve)try{var ea={};Object.defineProperty(ea,"passive",{get:function(){Iu=!0}}),window.addEventListener("test",ea,ea),window.removeEventListener("test",ea,ea)}catch{Iu=!1}var mn=null,ts=null,oi=null;function ho(){if(oi)return oi;var t,e=ts,n=e.length,l,a="value"in mn?mn.value:mn.textContent,s=a.length;for(t=0;t=aa),bo=" ",So=!1;function xo(t,e){switch(t){case"keyup":return Fp.indexOf(e.keyCode)!==-1;case"keydown":return e.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function _o(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var pl=!1;function Ip(t,e){switch(t){case"compositionend":return _o(e);case"keypress":return e.which!==32?null:(So=!0,bo);case"textInput":return t=e.data,t===bo&&So?null:t;default:return null}}function ty(t,e){if(pl)return t==="compositionend"||!is&&xo(t,e)?(t=ho(),oi=ts=mn=null,pl=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(e.ctrlKey||e.altKey||e.metaKey)||e.ctrlKey&&e.altKey){if(e.char&&1=e)return{node:n,offset:e-t};t=l}t:{for(;n;){if(n.nextSibling){n=n.nextSibling;break t}n=n.parentNode}n=void 0}n=zo(n)}}function Do(t,e){return t&&e?t===e?!0:t&&t.nodeType===3?!1:e&&e.nodeType===3?Do(t,e.parentNode):"contains"in t?t.contains(e):t.compareDocumentPosition?!!(t.compareDocumentPosition(e)&16):!1:!1}function wo(t){t=t!=null&&t.ownerDocument!=null&&t.ownerDocument.defaultView!=null?t.ownerDocument.defaultView:window;for(var e=ci(t.document);e instanceof t.HTMLIFrameElement;){try{var n=typeof e.contentWindow.location.href=="string"}catch{n=!1}if(n)t=e.contentWindow;else break;e=ci(t.document)}return e}function cs(t){var e=t&&t.nodeName&&t.nodeName.toLowerCase();return e&&(e==="input"&&(t.type==="text"||t.type==="search"||t.type==="tel"||t.type==="url"||t.type==="password")||e==="textarea"||t.contentEditable==="true")}var cy=Ve&&"documentMode"in document&&11>=document.documentMode,yl=null,rs=null,ca=null,os=!1;function jo(t,e,n){var l=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;os||yl==null||yl!==ci(l)||(l=yl,"selectionStart"in l&&cs(l)?l={start:l.selectionStart,end:l.selectionEnd}:(l=(l.ownerDocument&&l.ownerDocument.defaultView||window).getSelection(),l={anchorNode:l.anchorNode,anchorOffset:l.anchorOffset,focusNode:l.focusNode,focusOffset:l.focusOffset}),ca&&sa(ca,l)||(ca=l,l=lu(rs,"onSelect"),0>=o,a-=o,je=1<<32-re(e)+a|n<nt?(st=K,K=null):st=K.sibling;var ft=N(A,K,R[nt],j);if(ft===null){K===null&&(K=st);break}t&&K&&ft.alternate===null&&e(A,K),x=s(ft,x,nt),ot===null?J=ft:ot.sibling=ft,ot=ft,K=st}if(nt===R.length)return n(A,K),ct&&Ze(A,nt),J;if(K===null){for(;ntnt?(st=K,K=null):st=K.sibling;var Bn=N(A,K,ft.value,j);if(Bn===null){K===null&&(K=st);break}t&&K&&Bn.alternate===null&&e(A,K),x=s(Bn,x,nt),ot===null?J=Bn:ot.sibling=Bn,ot=Bn,K=st}if(ft.done)return n(A,K),ct&&Ze(A,nt),J;if(K===null){for(;!ft.done;nt++,ft=R.next())ft=U(A,ft.value,j),ft!==null&&(x=s(ft,x,nt),ot===null?J=ft:ot.sibling=ft,ot=ft);return ct&&Ze(A,nt),J}for(K=l(K);!ft.done;nt++,ft=R.next())ft=M(K,A,nt,ft.value,j),ft!==null&&(t&&ft.alternate!==null&&K.delete(ft.key===null?nt:ft.key),x=s(ft,x,nt),ot===null?J=ft:ot.sibling=ft,ot=ft);return t&&K.forEach(function(O0){return e(A,O0)}),ct&&Ze(A,nt),J}function St(A,x,R,j){if(typeof R=="object"&&R!==null&&R.type===k&&R.key===null&&(R=R.props.children),typeof R=="object"&&R!==null){switch(R.$$typeof){case z:t:{for(var J=R.key;x!==null;){if(x.key===J){if(J=R.type,J===k){if(x.tag===7){n(A,x.sibling),j=a(x,R.props.children),j.return=A,A=j;break t}}else if(x.elementType===J||typeof J=="object"&&J!==null&&J.$$typeof===Tt&&Fn(J)===x.type){n(A,x.sibling),j=a(x,R.props),ma(j,R),j.return=A,A=j;break t}n(A,x);break}else e(A,x);x=x.sibling}R.type===k?(j=Zn(R.props.children,A.mode,j,R.key),j.return=A,A=j):(j=Si(R.type,R.key,R.props,null,A.mode,j),ma(j,R),j.return=A,A=j)}return o(A);case H:t:{for(J=R.key;x!==null;){if(x.key===J)if(x.tag===4&&x.stateNode.containerInfo===R.containerInfo&&x.stateNode.implementation===R.implementation){n(A,x.sibling),j=a(x,R.children||[]),j.return=A,A=j;break t}else{n(A,x);break}else e(A,x);x=x.sibling}j=vs(R,A.mode,j),j.return=A,A=j}return o(A);case Tt:return R=Fn(R),St(A,x,R,j)}if(Oe(R))return V(A,x,R,j);if(Wt(R)){if(J=Wt(R),typeof J!="function")throw Error(r(150));return R=J.call(R),W(A,x,R,j)}if(typeof R.then=="function")return St(A,x,Ri(R),j);if(R.$$typeof===Q)return St(A,x,Ei(A,R),j);Oi(A,R)}return typeof R=="string"&&R!==""||typeof R=="number"||typeof R=="bigint"?(R=""+R,x!==null&&x.tag===6?(n(A,x.sibling),j=a(x,R),j.return=A,A=j):(n(A,x),j=ys(R,A.mode,j),j.return=A,A=j),o(A)):n(A,x)}return function(A,x,R,j){try{da=0;var J=St(A,x,R,j);return Rl=null,J}catch(K){if(K===Cl||K===Ai)throw K;var ot=fe(29,K,null,A.mode);return ot.lanes=j,ot.return=A,ot}finally{}}}var In=lf(!0),af=lf(!1),bn=!1;function Ns(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function zs(t,e){t=t.updateQueue,e.updateQueue===t&&(e.updateQueue={baseState:t.baseState,firstBaseUpdate:t.firstBaseUpdate,lastBaseUpdate:t.lastBaseUpdate,shared:t.shared,callbacks:null})}function Sn(t){return{lane:t,tag:0,payload:null,callback:null,next:null}}function xn(t,e,n){var l=t.updateQueue;if(l===null)return null;if(l=l.shared,(ht&2)!==0){var a=l.pending;return a===null?e.next=e:(e.next=a.next,a.next=e),l.pending=e,e=bi(t),ko(t,null,n),e}return gi(t,l,e,n),bi(t)}function pa(t,e,n){if(e=e.updateQueue,e!==null&&(e=e.shared,(n&4194048)!==0)){var l=e.lanes;l&=t.pendingLanes,n|=l,e.lanes=n,Jr(t,n)}}function Ms(t,e){var n=t.updateQueue,l=t.alternate;if(l!==null&&(l=l.updateQueue,n===l)){var a=null,s=null;if(n=n.firstBaseUpdate,n!==null){do{var o={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};s===null?a=s=o:s=s.next=o,n=n.next}while(n!==null);s===null?a=s=e:s=s.next=e}else a=s=e;n={baseState:l.baseState,firstBaseUpdate:a,lastBaseUpdate:s,shared:l.shared,callbacks:l.callbacks},t.updateQueue=n;return}t=n.lastBaseUpdate,t===null?n.firstBaseUpdate=e:t.next=e,n.lastBaseUpdate=e}var Ds=!1;function ya(){if(Ds){var t=Al;if(t!==null)throw t}}function va(t,e,n,l){Ds=!1;var a=t.updateQueue;bn=!1;var s=a.firstBaseUpdate,o=a.lastBaseUpdate,h=a.shared.pending;if(h!==null){a.shared.pending=null;var v=h,O=v.next;v.next=null,o===null?s=O:o.next=O,o=v;var D=t.alternate;D!==null&&(D=D.updateQueue,h=D.lastBaseUpdate,h!==o&&(h===null?D.firstBaseUpdate=O:h.next=O,D.lastBaseUpdate=v))}if(s!==null){var U=a.baseState;o=0,D=O=v=null,h=s;do{var N=h.lane&-536870913,M=N!==h.lane;if(M?(ut&N)===N:(l&N)===N){N!==0&&N===Tl&&(Ds=!0),D!==null&&(D=D.next={lane:0,tag:h.tag,payload:h.payload,callback:null,next:null});t:{var V=t,W=h;N=e;var St=n;switch(W.tag){case 1:if(V=W.payload,typeof V=="function"){U=V.call(St,U,N);break t}U=V;break t;case 3:V.flags=V.flags&-65537|128;case 0:if(V=W.payload,N=typeof V=="function"?V.call(St,U,N):V,N==null)break t;U=S({},U,N);break t;case 2:bn=!0}}N=h.callback,N!==null&&(t.flags|=64,M&&(t.flags|=8192),M=a.callbacks,M===null?a.callbacks=[N]:M.push(N))}else M={lane:N,tag:h.tag,payload:h.payload,callback:h.callback,next:null},D===null?(O=D=M,v=U):D=D.next=M,o|=N;if(h=h.next,h===null){if(h=a.shared.pending,h===null)break;M=h,h=M.next,M.next=null,a.lastBaseUpdate=M,a.shared.pending=null}}while(!0);D===null&&(v=U),a.baseState=v,a.firstBaseUpdate=O,a.lastBaseUpdate=D,s===null&&(a.shared.lanes=0),Cn|=o,t.lanes=o,t.memoizedState=U}}function uf(t,e){if(typeof t!="function")throw Error(r(191,t));t.call(e)}function sf(t,e){var n=t.callbacks;if(n!==null)for(t.callbacks=null,t=0;ts?s:8;var o=w.T,h={};w.T=h,Fs(t,!1,e,n);try{var v=a(),O=w.S;if(O!==null&&O(h,v),v!==null&&typeof v=="object"&&typeof v.then=="function"){var D=vy(v,l);Sa(t,e,D,ye(t))}else Sa(t,e,l,ye(t))}catch(U){Sa(t,e,{then:function(){},status:"rejected",reason:U},ye())}finally{X.p=s,o!==null&&h.types!==null&&(o.types=h.types),w.T=o}}function Ey(){}function $s(t,e,n,l){if(t.tag!==5)throw Error(r(476));var a=qf(t).queue;Hf(t,a,e,F,n===null?Ey:function(){return Yf(t),n(l)})}function qf(t){var e=t.memoizedState;if(e!==null)return e;e={memoizedState:F,baseState:F,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:We,lastRenderedState:F},next:null};var n={};return e.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:We,lastRenderedState:n},next:null},t.memoizedState=e,t=t.alternate,t!==null&&(t.memoizedState=e),e}function Yf(t){var e=qf(t);e.next===null&&(e=t.alternate.memoizedState),Sa(t,e.next.queue,{},ye())}function Ws(){return Kt(La)}function kf(){return jt().memoizedState}function Xf(){return jt().memoizedState}function Ty(t){for(var e=t.return;e!==null;){switch(e.tag){case 24:case 3:var n=ye();t=Sn(n);var l=xn(e,t,n);l!==null&&(ue(l,e,n),pa(l,e,n)),e={cache:As()},t.payload=e;return}e=e.return}}function Ay(t,e,n){var l=ye();n={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},Hi(t)?Vf(e,n):(n=ms(t,e,n,l),n!==null&&(ue(n,t,l),Qf(n,e,l)))}function Gf(t,e,n){var l=ye();Sa(t,e,n,l)}function Sa(t,e,n,l){var a={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(Hi(t))Vf(e,a);else{var s=t.alternate;if(t.lanes===0&&(s===null||s.lanes===0)&&(s=e.lastRenderedReducer,s!==null))try{var o=e.lastRenderedState,h=s(o,n);if(a.hasEagerState=!0,a.eagerState=h,oe(h,o))return gi(t,e,a,0),Et===null&&vi(),!1}catch{}finally{}if(n=ms(t,e,a,l),n!==null)return ue(n,t,l),Qf(n,e,l),!0}return!1}function Fs(t,e,n,l){if(l={lane:2,revertLane:Nc(),gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},Hi(t)){if(e)throw Error(r(479))}else e=ms(t,n,l,2),e!==null&&ue(e,t,2)}function Hi(t){var e=t.alternate;return t===et||e!==null&&e===et}function Vf(t,e){Nl=Mi=!0;var n=t.pending;n===null?e.next=e:(e.next=n.next,n.next=e),t.pending=e}function Qf(t,e,n){if((n&4194048)!==0){var l=e.lanes;l&=t.pendingLanes,n|=l,e.lanes=n,Jr(t,n)}}var xa={readContext:Kt,use:ji,useCallback:zt,useContext:zt,useEffect:zt,useImperativeHandle:zt,useLayoutEffect:zt,useInsertionEffect:zt,useMemo:zt,useReducer:zt,useRef:zt,useState:zt,useDebugValue:zt,useDeferredValue:zt,useTransition:zt,useSyncExternalStore:zt,useId:zt,useHostTransitionStatus:zt,useFormState:zt,useActionState:zt,useOptimistic:zt,useMemoCache:zt,useCacheRefresh:zt};xa.useEffectEvent=zt;var Zf={readContext:Kt,use:ji,useCallback:function(t,e){return It().memoizedState=[t,e===void 0?null:e],t},useContext:Kt,useEffect:Nf,useImperativeHandle:function(t,e,n){n=n!=null?n.concat([t]):null,Bi(4194308,4,wf.bind(null,e,t),n)},useLayoutEffect:function(t,e){return Bi(4194308,4,t,e)},useInsertionEffect:function(t,e){Bi(4,2,t,e)},useMemo:function(t,e){var n=It();e=e===void 0?null:e;var l=t();if(tl){hn(!0);try{t()}finally{hn(!1)}}return n.memoizedState=[l,e],l},useReducer:function(t,e,n){var l=It();if(n!==void 0){var a=n(e);if(tl){hn(!0);try{n(e)}finally{hn(!1)}}}else a=e;return l.memoizedState=l.baseState=a,t={pending:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:a},l.queue=t,t=t.dispatch=Ay.bind(null,et,t),[l.memoizedState,t]},useRef:function(t){var e=It();return t={current:t},e.memoizedState=t},useState:function(t){t=Vs(t);var e=t.queue,n=Gf.bind(null,et,e);return e.dispatch=n,[t.memoizedState,n]},useDebugValue:Ks,useDeferredValue:function(t,e){var n=It();return Js(n,t,e)},useTransition:function(){var t=Vs(!1);return t=Hf.bind(null,et,t.queue,!0,!1),It().memoizedState=t,[!1,t]},useSyncExternalStore:function(t,e,n){var l=et,a=It();if(ct){if(n===void 0)throw Error(r(407));n=n()}else{if(n=e(),Et===null)throw Error(r(349));(ut&127)!==0||df(l,e,n)}a.memoizedState=n;var s={value:n,getSnapshot:e};return a.queue=s,Nf(pf.bind(null,l,s,t),[t]),l.flags|=2048,Ml(9,{destroy:void 0},mf.bind(null,l,s,n,e),null),n},useId:function(){var t=It(),e=Et.identifierPrefix;if(ct){var n=Ue,l=je;n=(l&~(1<<32-re(l)-1)).toString(32)+n,e="_"+e+"R_"+n,n=Di++,0<\/script>",s=s.removeChild(s.firstChild);break;case"select":s=typeof l.is=="string"?o.createElement("select",{is:l.is}):o.createElement("select"),l.multiple?s.multiple=!0:l.size&&(s.size=l.size);break;default:s=typeof l.is=="string"?o.createElement(a,{is:l.is}):o.createElement(a)}}s[Qt]=e,s[te]=l;t:for(o=e.child;o!==null;){if(o.tag===5||o.tag===6)s.appendChild(o.stateNode);else if(o.tag!==4&&o.tag!==27&&o.child!==null){o.child.return=o,o=o.child;continue}if(o===e)break t;for(;o.sibling===null;){if(o.return===null||o.return===e)break t;o=o.return}o.sibling.return=o.return,o=o.sibling}e.stateNode=s;t:switch($t(s,a,l),a){case"button":case"input":case"select":case"textarea":l=!!l.autoFocus;break t;case"img":l=!0;break t;default:l=!1}l&&Pe(e)}}return Ct(e),fc(e,e.type,t===null?null:t.memoizedProps,e.pendingProps,n),null;case 6:if(t&&e.stateNode!=null)t.memoizedProps!==l&&Pe(e);else{if(typeof l!="string"&&e.stateNode===null)throw Error(r(166));if(t=lt.current,_l(e)){if(t=e.stateNode,n=e.memoizedProps,l=null,a=Zt,a!==null)switch(a.tag){case 27:case 5:l=a.memoizedProps}t[Qt]=e,t=!!(t.nodeValue===n||l!==null&&l.suppressHydrationWarning===!0||fd(t.nodeValue,n)),t||vn(e,!0)}else t=au(t).createTextNode(l),t[Qt]=e,e.stateNode=t}return Ct(e),null;case 31:if(n=e.memoizedState,t===null||t.memoizedState!==null){if(l=_l(e),n!==null){if(t===null){if(!l)throw Error(r(318));if(t=e.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(r(557));t[Qt]=e}else Kn(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;Ct(e),t=!1}else n=xs(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=n),t=!0;if(!t)return e.flags&256?(de(e),e):(de(e),null);if((e.flags&128)!==0)throw Error(r(558))}return Ct(e),null;case 13:if(l=e.memoizedState,t===null||t.memoizedState!==null&&t.memoizedState.dehydrated!==null){if(a=_l(e),l!==null&&l.dehydrated!==null){if(t===null){if(!a)throw Error(r(318));if(a=e.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(r(317));a[Qt]=e}else Kn(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;Ct(e),a=!1}else a=xs(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=a),a=!0;if(!a)return e.flags&256?(de(e),e):(de(e),null)}return de(e),(e.flags&128)!==0?(e.lanes=n,e):(n=l!==null,t=t!==null&&t.memoizedState!==null,n&&(l=e.child,a=null,l.alternate!==null&&l.alternate.memoizedState!==null&&l.alternate.memoizedState.cachePool!==null&&(a=l.alternate.memoizedState.cachePool.pool),s=null,l.memoizedState!==null&&l.memoizedState.cachePool!==null&&(s=l.memoizedState.cachePool.pool),s!==a&&(l.flags|=2048)),n!==t&&n&&(e.child.flags|=8192),Gi(e,e.updateQueue),Ct(e),null);case 4:return Dt(),t===null&&wc(e.stateNode.containerInfo),Ct(e),null;case 10:return Je(e.type),Ct(e),null;case 19:if(B(wt),l=e.memoizedState,l===null)return Ct(e),null;if(a=(e.flags&128)!==0,s=l.rendering,s===null)if(a)Ea(l,!1);else{if(Mt!==0||t!==null&&(t.flags&128)!==0)for(t=e.child;t!==null;){if(s=zi(t),s!==null){for(e.flags|=128,Ea(l,!1),t=s.updateQueue,e.updateQueue=t,Gi(e,t),e.subtreeFlags=0,t=n,n=e.child;n!==null;)Xo(n,t),n=n.sibling;return G(wt,wt.current&1|2),ct&&Ze(e,l.treeForkCount),e.child}t=t.sibling}l.tail!==null&&se()>Ji&&(e.flags|=128,a=!0,Ea(l,!1),e.lanes=4194304)}else{if(!a)if(t=zi(s),t!==null){if(e.flags|=128,a=!0,t=t.updateQueue,e.updateQueue=t,Gi(e,t),Ea(l,!0),l.tail===null&&l.tailMode==="hidden"&&!s.alternate&&!ct)return Ct(e),null}else 2*se()-l.renderingStartTime>Ji&&n!==536870912&&(e.flags|=128,a=!0,Ea(l,!1),e.lanes=4194304);l.isBackwards?(s.sibling=e.child,e.child=s):(t=l.last,t!==null?t.sibling=s:e.child=s,l.last=s)}return l.tail!==null?(t=l.tail,l.rendering=t,l.tail=t.sibling,l.renderingStartTime=se(),t.sibling=null,n=wt.current,G(wt,a?n&1|2:n&1),ct&&Ze(e,l.treeForkCount),t):(Ct(e),null);case 22:case 23:return de(e),js(),l=e.memoizedState!==null,t!==null?t.memoizedState!==null!==l&&(e.flags|=8192):l&&(e.flags|=8192),l?(n&536870912)!==0&&(e.flags&128)===0&&(Ct(e),e.subtreeFlags&6&&(e.flags|=8192)):Ct(e),n=e.updateQueue,n!==null&&Gi(e,n.retryQueue),n=null,t!==null&&t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(n=t.memoizedState.cachePool.pool),l=null,e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(l=e.memoizedState.cachePool.pool),l!==n&&(e.flags|=2048),t!==null&&B(Wn),null;case 24:return n=null,t!==null&&(n=t.memoizedState.cache),e.memoizedState.cache!==n&&(e.flags|=2048),Je(Bt),Ct(e),null;case 25:return null;case 30:return null}throw Error(r(156,e.tag))}function zy(t,e){switch(bs(e),e.tag){case 1:return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 3:return Je(Bt),Dt(),t=e.flags,(t&65536)!==0&&(t&128)===0?(e.flags=t&-65537|128,e):null;case 26:case 27:case 5:return ti(e),null;case 31:if(e.memoizedState!==null){if(de(e),e.alternate===null)throw Error(r(340));Kn()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 13:if(de(e),t=e.memoizedState,t!==null&&t.dehydrated!==null){if(e.alternate===null)throw Error(r(340));Kn()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 19:return B(wt),null;case 4:return Dt(),null;case 10:return Je(e.type),null;case 22:case 23:return de(e),js(),t!==null&&B(Wn),t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 24:return Je(Bt),null;case 25:return null;default:return null}}function yh(t,e){switch(bs(e),e.tag){case 3:Je(Bt),Dt();break;case 26:case 27:case 5:ti(e);break;case 4:Dt();break;case 31:e.memoizedState!==null&&de(e);break;case 13:de(e);break;case 19:B(wt);break;case 10:Je(e.type);break;case 22:case 23:de(e),js(),t!==null&&B(Wn);break;case 24:Je(Bt)}}function Ta(t,e){try{var n=e.updateQueue,l=n!==null?n.lastEffect:null;if(l!==null){var a=l.next;n=a;do{if((n.tag&t)===t){l=void 0;var s=n.create,o=n.inst;l=s(),o.destroy=l}n=n.next}while(n!==a)}}catch(h){pt(e,e.return,h)}}function Tn(t,e,n){try{var l=e.updateQueue,a=l!==null?l.lastEffect:null;if(a!==null){var s=a.next;l=s;do{if((l.tag&t)===t){var o=l.inst,h=o.destroy;if(h!==void 0){o.destroy=void 0,a=e;var v=n,O=h;try{O()}catch(D){pt(a,v,D)}}}l=l.next}while(l!==s)}}catch(D){pt(e,e.return,D)}}function vh(t){var e=t.updateQueue;if(e!==null){var n=t.stateNode;try{sf(e,n)}catch(l){pt(t,t.return,l)}}}function gh(t,e,n){n.props=el(t.type,t.memoizedProps),n.state=t.memoizedState;try{n.componentWillUnmount()}catch(l){pt(t,e,l)}}function Aa(t,e){try{var n=t.ref;if(n!==null){switch(t.tag){case 26:case 27:case 5:var l=t.stateNode;break;case 30:l=t.stateNode;break;default:l=t.stateNode}typeof n=="function"?t.refCleanup=n(l):n.current=l}}catch(a){pt(t,e,a)}}function Be(t,e){var n=t.ref,l=t.refCleanup;if(n!==null)if(typeof l=="function")try{l()}catch(a){pt(t,e,a)}finally{t.refCleanup=null,t=t.alternate,t!=null&&(t.refCleanup=null)}else if(typeof n=="function")try{n(null)}catch(a){pt(t,e,a)}else n.current=null}function bh(t){var e=t.type,n=t.memoizedProps,l=t.stateNode;try{t:switch(e){case"button":case"input":case"select":case"textarea":n.autoFocus&&l.focus();break t;case"img":n.src?l.src=n.src:n.srcSet&&(l.srcset=n.srcSet)}}catch(a){pt(t,t.return,a)}}function hc(t,e,n){try{var l=t.stateNode;Py(l,t.type,n,e),l[te]=e}catch(a){pt(t,t.return,a)}}function Sh(t){return t.tag===5||t.tag===3||t.tag===26||t.tag===27&&Mn(t.type)||t.tag===4}function dc(t){t:for(;;){for(;t.sibling===null;){if(t.return===null||Sh(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.tag===27&&Mn(t.type)||t.flags&2||t.child===null||t.tag===4)continue t;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function mc(t,e,n){var l=t.tag;if(l===5||l===6)t=t.stateNode,e?(n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n).insertBefore(t,e):(e=n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n,e.appendChild(t),n=n._reactRootContainer,n!=null||e.onclick!==null||(e.onclick=Ge));else if(l!==4&&(l===27&&Mn(t.type)&&(n=t.stateNode,e=null),t=t.child,t!==null))for(mc(t,e,n),t=t.sibling;t!==null;)mc(t,e,n),t=t.sibling}function Vi(t,e,n){var l=t.tag;if(l===5||l===6)t=t.stateNode,e?n.insertBefore(t,e):n.appendChild(t);else if(l!==4&&(l===27&&Mn(t.type)&&(n=t.stateNode),t=t.child,t!==null))for(Vi(t,e,n),t=t.sibling;t!==null;)Vi(t,e,n),t=t.sibling}function xh(t){var e=t.stateNode,n=t.memoizedProps;try{for(var l=t.type,a=e.attributes;a.length;)e.removeAttributeNode(a[0]);$t(e,l,n),e[Qt]=t,e[te]=n}catch(s){pt(t,t.return,s)}}var Ie=!1,qt=!1,pc=!1,_h=typeof WeakSet=="function"?WeakSet:Set,Vt=null;function My(t,e){if(t=t.containerInfo,Bc=fu,t=wo(t),cs(t)){if("selectionStart"in t)var n={start:t.selectionStart,end:t.selectionEnd};else t:{n=(n=t.ownerDocument)&&n.defaultView||window;var l=n.getSelection&&n.getSelection();if(l&&l.rangeCount!==0){n=l.anchorNode;var a=l.anchorOffset,s=l.focusNode;l=l.focusOffset;try{n.nodeType,s.nodeType}catch{n=null;break t}var o=0,h=-1,v=-1,O=0,D=0,U=t,N=null;e:for(;;){for(var M;U!==n||a!==0&&U.nodeType!==3||(h=o+a),U!==s||l!==0&&U.nodeType!==3||(v=o+l),U.nodeType===3&&(o+=U.nodeValue.length),(M=U.firstChild)!==null;)N=U,U=M;for(;;){if(U===t)break e;if(N===n&&++O===a&&(h=o),N===s&&++D===l&&(v=o),(M=U.nextSibling)!==null)break;U=N,N=U.parentNode}U=M}n=h===-1||v===-1?null:{start:h,end:v}}else n=null}n=n||{start:0,end:0}}else n=null;for(Lc={focusedElem:t,selectionRange:n},fu=!1,Vt=e;Vt!==null;)if(e=Vt,t=e.child,(e.subtreeFlags&1028)!==0&&t!==null)t.return=e,Vt=t;else for(;Vt!==null;){switch(e=Vt,s=e.alternate,t=e.flags,e.tag){case 0:if((t&4)!==0&&(t=e.updateQueue,t=t!==null?t.events:null,t!==null))for(n=0;n title"))),$t(s,l,n),s[Qt]=t,Gt(s),l=s;break t;case"link":var o=Od("link","href",a).get(l+(n.href||""));if(o){for(var h=0;hSt&&(o=St,St=W,W=o);var A=Mo(h,W),x=Mo(h,St);if(A&&x&&(M.rangeCount!==1||M.anchorNode!==A.node||M.anchorOffset!==A.offset||M.focusNode!==x.node||M.focusOffset!==x.offset)){var R=U.createRange();R.setStart(A.node,A.offset),M.removeAllRanges(),W>St?(M.addRange(R),M.extend(x.node,x.offset)):(R.setEnd(x.node,x.offset),M.addRange(R))}}}}for(U=[],M=h;M=M.parentNode;)M.nodeType===1&&U.push({element:M,left:M.scrollLeft,top:M.scrollTop});for(typeof h.focus=="function"&&h.focus(),h=0;hn?32:n,w.T=null,n=_c,_c=null;var s=On,o=an;if(kt=0,Bl=On=null,an=0,(ht&6)!==0)throw Error(r(331));var h=ht;if(ht|=4,wh(s.current),zh(s,s.current,o,n),ht=h,Ma(0,!1),ce&&typeof ce.onPostCommitFiberRoot=="function")try{ce.onPostCommitFiberRoot($l,s)}catch{}return!0}finally{X.p=a,w.T=l,Fh(t,e)}}function Ih(t,e,n){e=Se(n,e),e=ec(t.stateNode,e,2),t=xn(t,e,2),t!==null&&(Fl(t,2),Le(t))}function pt(t,e,n){if(t.tag===3)Ih(t,t,n);else for(;e!==null;){if(e.tag===3){Ih(e,t,n);break}else if(e.tag===1){var l=e.stateNode;if(typeof e.type.getDerivedStateFromError=="function"||typeof l.componentDidCatch=="function"&&(Rn===null||!Rn.has(l))){t=Se(n,t),n=th(2),l=xn(e,n,2),l!==null&&(eh(n,l,e,t),Fl(l,2),Le(l));break}}e=e.return}}function Cc(t,e,n){var l=t.pingCache;if(l===null){l=t.pingCache=new jy;var a=new Set;l.set(e,a)}else a=l.get(e),a===void 0&&(a=new Set,l.set(e,a));a.has(n)||(gc=!0,a.add(n),t=qy.bind(null,t,e,n),e.then(t,t))}function qy(t,e,n){var l=t.pingCache;l!==null&&l.delete(e),t.pingedLanes|=t.suspendedLanes&n,t.warmLanes&=~n,Et===t&&(ut&n)===n&&(Mt===4||Mt===3&&(ut&62914560)===ut&&300>se()-Ki?(ht&2)===0&&Ll(t,0):bc|=n,Ul===ut&&(Ul=0)),Le(t)}function td(t,e){e===0&&(e=Zr()),t=Qn(t,e),t!==null&&(Fl(t,e),Le(t))}function Yy(t){var e=t.memoizedState,n=0;e!==null&&(n=e.retryLane),td(t,n)}function ky(t,e){var n=0;switch(t.tag){case 31:case 13:var l=t.stateNode,a=t.memoizedState;a!==null&&(n=a.retryLane);break;case 19:l=t.stateNode;break;case 22:l=t.stateNode._retryCache;break;default:throw Error(r(314))}l!==null&&l.delete(e),td(t,n)}function Xy(t,e){return qu(t,e)}var tu=null,ql=null,Rc=!1,eu=!1,Oc=!1,zn=0;function Le(t){t!==ql&&t.next===null&&(ql===null?tu=ql=t:ql=ql.next=t),eu=!0,Rc||(Rc=!0,Vy())}function Ma(t,e){if(!Oc&&eu){Oc=!0;do for(var n=!1,l=tu;l!==null;){if(t!==0){var a=l.pendingLanes;if(a===0)var s=0;else{var o=l.suspendedLanes,h=l.pingedLanes;s=(1<<31-re(42|t)+1)-1,s&=a&~(o&~h),s=s&201326741?s&201326741|1:s?s|2:0}s!==0&&(n=!0,ad(l,s))}else s=ut,s=ii(l,l===Et?s:0,l.cancelPendingCommit!==null||l.timeoutHandle!==-1),(s&3)===0||Wl(l,s)||(n=!0,ad(l,s));l=l.next}while(n);Oc=!1}}function Gy(){ed()}function ed(){eu=Rc=!1;var t=0;zn!==0&&t0()&&(t=zn);for(var e=se(),n=null,l=tu;l!==null;){var a=l.next,s=nd(l,e);s===0?(l.next=null,n===null?tu=a:n.next=a,a===null&&(ql=n)):(n=l,(t!==0||(s&3)!==0)&&(eu=!0)),l=a}kt!==0&&kt!==5||Ma(t),zn!==0&&(zn=0)}function nd(t,e){for(var n=t.suspendedLanes,l=t.pingedLanes,a=t.expirationTimes,s=t.pendingLanes&-62914561;0h)break;var D=v.transferSize,U=v.initiatorType;D&&hd(U)&&(v=v.responseEnd,o+=D*(v"u"?null:document;function Td(t,e,n){var l=Yl;if(l&&typeof e=="string"&&e){var a=ge(e);a='link[rel="'+t+'"][href="'+a+'"]',typeof n=="string"&&(a+='[crossorigin="'+n+'"]'),Ed.has(a)||(Ed.add(a),t={rel:t,crossOrigin:n,href:e},l.querySelector(a)===null&&(e=l.createElement("link"),$t(e,"link",t),Gt(e),l.head.appendChild(e)))}}function r0(t){un.D(t),Td("dns-prefetch",t,null)}function o0(t,e){un.C(t,e),Td("preconnect",t,e)}function f0(t,e,n){un.L(t,e,n);var l=Yl;if(l&&t&&e){var a='link[rel="preload"][as="'+ge(e)+'"]';e==="image"&&n&&n.imageSrcSet?(a+='[imagesrcset="'+ge(n.imageSrcSet)+'"]',typeof n.imageSizes=="string"&&(a+='[imagesizes="'+ge(n.imageSizes)+'"]')):a+='[href="'+ge(t)+'"]';var s=a;switch(e){case"style":s=kl(t);break;case"script":s=Xl(t)}Ce.has(s)||(t=S({rel:"preload",href:e==="image"&&n&&n.imageSrcSet?void 0:t,as:e},n),Ce.set(s,t),l.querySelector(a)!==null||e==="style"&&l.querySelector(Ua(s))||e==="script"&&l.querySelector(Ba(s))||(e=l.createElement("link"),$t(e,"link",t),Gt(e),l.head.appendChild(e)))}}function h0(t,e){un.m(t,e);var n=Yl;if(n&&t){var l=e&&typeof e.as=="string"?e.as:"script",a='link[rel="modulepreload"][as="'+ge(l)+'"][href="'+ge(t)+'"]',s=a;switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":s=Xl(t)}if(!Ce.has(s)&&(t=S({rel:"modulepreload",href:t},e),Ce.set(s,t),n.querySelector(a)===null)){switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(n.querySelector(Ba(s)))return}l=n.createElement("link"),$t(l,"link",t),Gt(l),n.head.appendChild(l)}}}function d0(t,e,n){un.S(t,e,n);var l=Yl;if(l&&t){var a=rl(l).hoistableStyles,s=kl(t);e=e||"default";var o=a.get(s);if(!o){var h={loading:0,preload:null};if(o=l.querySelector(Ua(s)))h.loading=5;else{t=S({rel:"stylesheet",href:t,"data-precedence":e},n),(n=Ce.get(s))&&Vc(t,n);var v=o=l.createElement("link");Gt(v),$t(v,"link",t),v._p=new Promise(function(O,D){v.onload=O,v.onerror=D}),v.addEventListener("load",function(){h.loading|=1}),v.addEventListener("error",function(){h.loading|=2}),h.loading|=4,uu(o,e,l)}o={type:"stylesheet",instance:o,count:1,state:h},a.set(s,o)}}}function m0(t,e){un.X(t,e);var n=Yl;if(n&&t){var l=rl(n).hoistableScripts,a=Xl(t),s=l.get(a);s||(s=n.querySelector(Ba(a)),s||(t=S({src:t,async:!0},e),(e=Ce.get(a))&&Qc(t,e),s=n.createElement("script"),Gt(s),$t(s,"link",t),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function p0(t,e){un.M(t,e);var n=Yl;if(n&&t){var l=rl(n).hoistableScripts,a=Xl(t),s=l.get(a);s||(s=n.querySelector(Ba(a)),s||(t=S({src:t,async:!0,type:"module"},e),(e=Ce.get(a))&&Qc(t,e),s=n.createElement("script"),Gt(s),$t(s,"link",t),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function Ad(t,e,n,l){var a=(a=lt.current)?iu(a):null;if(!a)throw Error(r(446));switch(t){case"meta":case"title":return null;case"style":return typeof n.precedence=="string"&&typeof n.href=="string"?(e=kl(n.href),n=rl(a).hoistableStyles,l=n.get(e),l||(l={type:"style",instance:null,count:0,state:null},n.set(e,l)),l):{type:"void",instance:null,count:0,state:null};case"link":if(n.rel==="stylesheet"&&typeof n.href=="string"&&typeof n.precedence=="string"){t=kl(n.href);var s=rl(a).hoistableStyles,o=s.get(t);if(o||(a=a.ownerDocument||a,o={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},s.set(t,o),(s=a.querySelector(Ua(t)))&&!s._p&&(o.instance=s,o.state.loading=5),Ce.has(t)||(n={rel:"preload",as:"style",href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},Ce.set(t,n),s||y0(a,t,n,o.state))),e&&l===null)throw Error(r(528,""));return o}if(e&&l!==null)throw Error(r(529,""));return null;case"script":return e=n.async,n=n.src,typeof n=="string"&&e&&typeof e!="function"&&typeof e!="symbol"?(e=Xl(n),n=rl(a).hoistableScripts,l=n.get(e),l||(l={type:"script",instance:null,count:0,state:null},n.set(e,l)),l):{type:"void",instance:null,count:0,state:null};default:throw Error(r(444,t))}}function kl(t){return'href="'+ge(t)+'"'}function Ua(t){return'link[rel="stylesheet"]['+t+"]"}function Cd(t){return S({},t,{"data-precedence":t.precedence,precedence:null})}function y0(t,e,n,l){t.querySelector('link[rel="preload"][as="style"]['+e+"]")?l.loading=1:(e=t.createElement("link"),l.preload=e,e.addEventListener("load",function(){return l.loading|=1}),e.addEventListener("error",function(){return l.loading|=2}),$t(e,"link",n),Gt(e),t.head.appendChild(e))}function Xl(t){return'[src="'+ge(t)+'"]'}function Ba(t){return"script[async]"+t}function Rd(t,e,n){if(e.count++,e.instance===null)switch(e.type){case"style":var l=t.querySelector('style[data-href~="'+ge(n.href)+'"]');if(l)return e.instance=l,Gt(l),l;var a=S({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return l=(t.ownerDocument||t).createElement("style"),Gt(l),$t(l,"style",a),uu(l,n.precedence,t),e.instance=l;case"stylesheet":a=kl(n.href);var s=t.querySelector(Ua(a));if(s)return e.state.loading|=4,e.instance=s,Gt(s),s;l=Cd(n),(a=Ce.get(a))&&Vc(l,a),s=(t.ownerDocument||t).createElement("link"),Gt(s);var o=s;return o._p=new Promise(function(h,v){o.onload=h,o.onerror=v}),$t(s,"link",l),e.state.loading|=4,uu(s,n.precedence,t),e.instance=s;case"script":return s=Xl(n.src),(a=t.querySelector(Ba(s)))?(e.instance=a,Gt(a),a):(l=n,(a=Ce.get(s))&&(l=S({},n),Qc(l,a)),t=t.ownerDocument||t,a=t.createElement("script"),Gt(a),$t(a,"link",l),t.head.appendChild(a),e.instance=a);case"void":return null;default:throw Error(r(443,e.type))}else e.type==="stylesheet"&&(e.state.loading&4)===0&&(l=e.instance,e.state.loading|=4,uu(l,n.precedence,t));return e.instance}function uu(t,e,n){for(var l=n.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=l.length?l[l.length-1]:null,s=a,o=0;o title"):null)}function v0(t,e,n){if(n===1||e.itemProp!=null)return!1;switch(t){case"meta":case"title":return!0;case"style":if(typeof e.precedence!="string"||typeof e.href!="string"||e.href==="")break;return!0;case"link":if(typeof e.rel!="string"||typeof e.href!="string"||e.href===""||e.onLoad||e.onError)break;switch(e.rel){case"stylesheet":return t=e.disabled,typeof e.precedence=="string"&&t==null;default:return!0}case"script":if(e.async&&typeof e.async!="function"&&typeof e.async!="symbol"&&!e.onLoad&&!e.onError&&e.src&&typeof e.src=="string")return!0}return!1}function zd(t){return!(t.type==="stylesheet"&&(t.state.loading&3)===0)}function g0(t,e,n,l){if(n.type==="stylesheet"&&(typeof l.media!="string"||matchMedia(l.media).matches!==!1)&&(n.state.loading&4)===0){if(n.instance===null){var a=kl(l.href),s=e.querySelector(Ua(a));if(s){e=s._p,e!==null&&typeof e=="object"&&typeof e.then=="function"&&(t.count++,t=cu.bind(t),e.then(t,t)),n.state.loading|=4,n.instance=s,Gt(s);return}s=e.ownerDocument||e,l=Cd(l),(a=Ce.get(a))&&Vc(l,a),s=s.createElement("link"),Gt(s);var o=s;o._p=new Promise(function(h,v){o.onload=h,o.onerror=v}),$t(s,"link",l),n.instance=s}t.stylesheets===null&&(t.stylesheets=new Map),t.stylesheets.set(n,e),(e=n.state.preload)&&(n.state.loading&3)===0&&(t.count++,n=cu.bind(t),e.addEventListener("load",n),e.addEventListener("error",n))}}var Zc=0;function b0(t,e){return t.stylesheets&&t.count===0&&ou(t,t.stylesheets),0Zc?50:800)+e);return t.unsuspend=n,function(){t.unsuspend=null,clearTimeout(l),clearTimeout(a)}}:null}function cu(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)ou(this,this.stylesheets);else if(this.unsuspend){var t=this.unsuspend;this.unsuspend=null,t()}}}var ru=null;function ou(t,e){t.stylesheets=null,t.unsuspend!==null&&(t.count++,ru=new Map,e.forEach(S0,t),ru=null,cu.call(t))}function S0(t,e){if(!(e.state.loading&4)){var n=ru.get(t);if(n)var l=n.get(null);else{n=new Map,ru.set(t,n);for(var a=t.querySelectorAll("link[data-precedence],style[data-precedence]"),s=0;s"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(u)}catch(i){console.error(i)}}return u(),er.exports=B0(),er.exports}var H0=L0();var tm="popstate";function q0(u={}){function i(r,f){let{pathname:d,search:m,hash:b}=r.location;return hr("",{pathname:d,search:m,hash:b},f.state&&f.state.usr||null,f.state&&f.state.key||"default")}function c(r,f){return typeof f=="string"?f:Wa(f)}return k0(i,c,null,u)}function Nt(u,i){if(u===!1||u===null||typeof u>"u")throw new Error(i)}function we(u,i){if(!u){typeof console<"u"&&console.warn(i);try{throw new Error(i)}catch{}}}function Y0(){return Math.random().toString(36).substring(2,10)}function em(u,i){return{usr:u.state,key:u.key,idx:i}}function hr(u,i,c=null,r){return{pathname:typeof u=="string"?u:u.pathname,search:"",hash:"",...typeof i=="string"?Ql(i):i,state:c,key:i&&i.key||r||Y0()}}function Wa({pathname:u="/",search:i="",hash:c=""}){return i&&i!=="?"&&(u+=i.charAt(0)==="?"?i:"?"+i),c&&c!=="#"&&(u+=c.charAt(0)==="#"?c:"#"+c),u}function Ql(u){let i={};if(u){let c=u.indexOf("#");c>=0&&(i.hash=u.substring(c),u=u.substring(0,c));let r=u.indexOf("?");r>=0&&(i.search=u.substring(r),u=u.substring(0,r)),u&&(i.pathname=u)}return i}function k0(u,i,c,r={}){let{window:f=document.defaultView,v5Compat:d=!1}=r,m=f.history,b="POP",p=null,y=E();y==null&&(y=0,m.replaceState({...m.state,idx:y},""));function E(){return(m.state||{idx:null}).idx}function S(){b="POP";let Y=E(),L=Y==null?null:Y-y;y=Y,p&&p({action:b,location:k.location,delta:L})}function C(Y,L){b="PUSH";let q=hr(k.location,Y,L);y=E()+1;let Q=em(q,y),P=k.createHref(q);try{m.pushState(Q,"",P)}catch(yt){if(yt instanceof DOMException&&yt.name==="DataCloneError")throw yt;f.location.assign(P)}d&&p&&p({action:b,location:k.location,delta:1})}function z(Y,L){b="REPLACE";let q=hr(k.location,Y,L);y=E();let Q=em(q,y),P=k.createHref(q);m.replaceState(Q,"",P),d&&p&&p({action:b,location:k.location,delta:0})}function H(Y){return X0(Y)}let k={get action(){return b},get location(){return u(f,m)},listen(Y){if(p)throw new Error("A history only accepts one active listener");return f.addEventListener(tm,S),p=Y,()=>{f.removeEventListener(tm,S),p=null}},createHref(Y){return i(f,Y)},createURL:H,encodeLocation(Y){let L=H(Y);return{pathname:L.pathname,search:L.search,hash:L.hash}},push:C,replace:z,go(Y){return m.go(Y)}};return k}function X0(u,i=!1){let c="http://localhost";typeof window<"u"&&(c=window.location.origin!=="null"?window.location.origin:window.location.href),Nt(c,"No window.location.(origin|href) available to create URL");let r=typeof u=="string"?u:Wa(u);return r=r.replace(/ $/,"%20"),!i&&r.startsWith("//")&&(r=c+r),new URL(r,c)}function Sm(u,i,c="/"){return G0(u,i,c,!1)}function G0(u,i,c,r){let f=typeof i=="string"?Ql(i):i,d=rn(f.pathname||"/",c);if(d==null)return null;let m=xm(u);V0(m);let b=null;for(let p=0;b==null&&p{let E={relativePath:y===void 0?m.path||"":y,caseSensitive:m.caseSensitive===!0,childrenIndex:b,route:m};if(E.relativePath.startsWith("/")){if(!E.relativePath.startsWith(r)&&p)return;Nt(E.relativePath.startsWith(r),`Absolute route path "${E.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),E.relativePath=E.relativePath.slice(r.length)}let S=cn([r,E.relativePath]),C=c.concat(E);m.children&&m.children.length>0&&(Nt(m.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${S}".`),xm(m.children,i,C,S,p)),!(m.path==null&&!m.index)&&i.push({path:S,score:F0(S,m.index),routesMeta:C})};return u.forEach((m,b)=>{if(m.path===""||!m.path?.includes("?"))d(m,b);else for(let p of _m(m.path))d(m,b,!0,p)}),i}function _m(u){let i=u.split("/");if(i.length===0)return[];let[c,...r]=i,f=c.endsWith("?"),d=c.replace(/\?$/,"");if(r.length===0)return f?[d,""]:[d];let m=_m(r.join("/")),b=[];return b.push(...m.map(p=>p===""?d:[d,p].join("/"))),f&&b.push(...m),b.map(p=>u.startsWith("/")&&p===""?"/":p)}function V0(u){u.sort((i,c)=>i.score!==c.score?c.score-i.score:P0(i.routesMeta.map(r=>r.childrenIndex),c.routesMeta.map(r=>r.childrenIndex)))}var Q0=/^:[\w-]+$/,Z0=3,K0=2,J0=1,$0=10,W0=-2,nm=u=>u==="*";function F0(u,i){let c=u.split("/"),r=c.length;return c.some(nm)&&(r+=W0),i&&(r+=K0),c.filter(f=>!nm(f)).reduce((f,d)=>f+(Q0.test(d)?Z0:d===""?J0:$0),r)}function P0(u,i){return u.length===i.length&&u.slice(0,-1).every((r,f)=>r===i[f])?u[u.length-1]-i[i.length-1]:0}function I0(u,i,c=!1){let{routesMeta:r}=u,f={},d="/",m=[];for(let b=0;b{if(E==="*"){let H=b[C]||"";m=d.slice(0,d.length-H.length).replace(/(.)\/+$/,"$1")}const z=b[C];return S&&!z?y[E]=void 0:y[E]=(z||"").replace(/%2F/g,"/"),y},{}),pathname:d,pathnameBase:m,pattern:u}}function tv(u,i=!1,c=!0){we(u==="*"||!u.endsWith("*")||u.endsWith("/*"),`Route path "${u}" will be treated as if it were "${u.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${u.replace(/\*$/,"/*")}".`);let r=[],f="^"+u.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(m,b,p)=>(r.push({paramName:b,isOptional:p!=null}),p?"/?([^\\/]+)?":"/([^\\/]+)")).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return u.endsWith("*")?(r.push({paramName:"*"}),f+=u==="*"||u==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):c?f+="\\/*$":u!==""&&u!=="/"&&(f+="(?:(?=\\/|$))"),[new RegExp(f,i?void 0:"i"),r]}function ev(u){try{return u.split("/").map(i=>decodeURIComponent(i).replace(/\//g,"%2F")).join("/")}catch(i){return we(!1,`The URL path "${u}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${i}).`),u}}function rn(u,i){if(i==="/")return u;if(!u.toLowerCase().startsWith(i.toLowerCase()))return null;let c=i.endsWith("/")?i.length-1:i.length,r=u.charAt(c);return r&&r!=="/"?null:u.slice(c)||"/"}var nv=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,lv=u=>nv.test(u);function av(u,i="/"){let{pathname:c,search:r="",hash:f=""}=typeof u=="string"?Ql(u):u,d;if(c)if(lv(c))d=c;else{if(c.includes("//")){let m=c;c=c.replace(/\/\/+/g,"/"),we(!1,`Pathnames cannot have embedded double slashes - normalizing ${m} -> ${c}`)}c.startsWith("/")?d=lm(c.substring(1),"/"):d=lm(c,i)}else d=i;return{pathname:d,search:sv(r),hash:cv(f)}}function lm(u,i){let c=i.replace(/\/+$/,"").split("/");return u.split("/").forEach(f=>{f===".."?c.length>1&&c.pop():f!=="."&&c.push(f)}),c.length>1?c.join("/"):"/"}function ir(u,i,c,r){return`Cannot include a '${u}' character in a manually specified \`to.${i}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${c}\` field. Alternatively you may provide the full path as a string in and the router will parse it for you.`}function iv(u){return u.filter((i,c)=>c===0||i.route.path&&i.route.path.length>0)}function Em(u){let i=iv(u);return i.map((c,r)=>r===i.length-1?c.pathname:c.pathnameBase)}function Tm(u,i,c,r=!1){let f;typeof u=="string"?f=Ql(u):(f={...u},Nt(!f.pathname||!f.pathname.includes("?"),ir("?","pathname","search",f)),Nt(!f.pathname||!f.pathname.includes("#"),ir("#","pathname","hash",f)),Nt(!f.search||!f.search.includes("#"),ir("#","search","hash",f)));let d=u===""||f.pathname==="",m=d?"/":f.pathname,b;if(m==null)b=c;else{let S=i.length-1;if(!r&&m.startsWith("..")){let C=m.split("/");for(;C[0]==="..";)C.shift(),S-=1;f.pathname=C.join("/")}b=S>=0?i[S]:"/"}let p=av(f,b),y=m&&m!=="/"&&m.endsWith("/"),E=(d||m===".")&&c.endsWith("/");return!p.pathname.endsWith("/")&&(y||E)&&(p.pathname+="/"),p}var cn=u=>u.join("/").replace(/\/\/+/g,"/"),uv=u=>u.replace(/\/+$/,"").replace(/^\/*/,"/"),sv=u=>!u||u==="?"?"":u.startsWith("?")?u:"?"+u,cv=u=>!u||u==="#"?"":u.startsWith("#")?u:"#"+u;function rv(u){return u!=null&&typeof u.status=="number"&&typeof u.statusText=="string"&&typeof u.internal=="boolean"&&"data"in u}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var Am=["POST","PUT","PATCH","DELETE"];new Set(Am);var ov=["GET",...Am];new Set(ov);var Zl=T.createContext(null);Zl.displayName="DataRouter";var Nu=T.createContext(null);Nu.displayName="DataRouterState";T.createContext(!1);var Cm=T.createContext({isTransitioning:!1});Cm.displayName="ViewTransition";var fv=T.createContext(new Map);fv.displayName="Fetchers";var hv=T.createContext(null);hv.displayName="Await";var Ye=T.createContext(null);Ye.displayName="Navigation";var Fa=T.createContext(null);Fa.displayName="Location";var on=T.createContext({outlet:null,matches:[],isDataRoute:!1});on.displayName="Route";var xr=T.createContext(null);xr.displayName="RouteError";function dv(u,{relative:i}={}){Nt(Pa(),"useHref() may be used only in the context of a component.");let{basename:c,navigator:r}=T.useContext(Ye),{hash:f,pathname:d,search:m}=Ia(u,{relative:i}),b=d;return c!=="/"&&(b=d==="/"?c:cn([c,d])),r.createHref({pathname:b,search:m,hash:f})}function Pa(){return T.useContext(Fa)!=null}function il(){return Nt(Pa(),"useLocation() may be used only in the context of a component."),T.useContext(Fa).location}var Rm="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function Om(u){T.useContext(Ye).static||T.useLayoutEffect(u)}function mv(){let{isDataRoute:u}=T.useContext(on);return u?Rv():pv()}function pv(){Nt(Pa(),"useNavigate() may be used only in the context of a component.");let u=T.useContext(Zl),{basename:i,navigator:c}=T.useContext(Ye),{matches:r}=T.useContext(on),{pathname:f}=il(),d=JSON.stringify(Em(r)),m=T.useRef(!1);return Om(()=>{m.current=!0}),T.useCallback((p,y={})=>{if(we(m.current,Rm),!m.current)return;if(typeof p=="number"){c.go(p);return}let E=Tm(p,JSON.parse(d),f,y.relative==="path");u==null&&i!=="/"&&(E.pathname=E.pathname==="/"?i:cn([i,E.pathname])),(y.replace?c.replace:c.push)(E,y.state,y)},[i,c,d,f,u])}T.createContext(null);function Ia(u,{relative:i}={}){let{matches:c}=T.useContext(on),{pathname:r}=il(),f=JSON.stringify(Em(c));return T.useMemo(()=>Tm(u,JSON.parse(f),r,i==="path"),[u,f,r,i])}function yv(u,i){return Nm(u,i)}function Nm(u,i,c,r,f){Nt(Pa(),"useRoutes() may be used only in the context of a component.");let{navigator:d}=T.useContext(Ye),{matches:m}=T.useContext(on),b=m[m.length-1],p=b?b.params:{},y=b?b.pathname:"/",E=b?b.pathnameBase:"/",S=b&&b.route;{let q=S&&S.path||"";zm(y,!S||q.endsWith("*")||q.endsWith("*?"),`You rendered descendant (or called \`useRoutes()\`) at "${y}" (under ) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render. -Please change the parent to .`)}let C=il(),z;if(i){let q=typeof i=="string"?Ql(i):i;Nt(E==="/"||q.pathname?.startsWith(E),`When overriding the location using \`\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${E}" but pathname "${q.pathname}" was given in the \`location\` prop.`),z=q}else z=C;let H=z.pathname||"/",k=H;if(E!=="/"){let q=E.replace(/^\//,"").split("/");k="/"+H.replace(/^\//,"").split("/").slice(q.length).join("/")}let Y=Sm(u,{pathname:k});we(S||Y!=null,`No routes matched location "${z.pathname}${z.search}${z.hash}" `),we(Y==null||Y[Y.length-1].route.element!==void 0||Y[Y.length-1].route.Component!==void 0||Y[Y.length-1].route.lazy!==void 0,`Matched leaf route at location "${z.pathname}${z.search}${z.hash}" does not have an element or Component. This means it will render an with a null value by default resulting in an "empty" page.`);let L=xv(Y&&Y.map(q=>Object.assign({},q,{params:Object.assign({},p,q.params),pathname:cn([E,d.encodeLocation?d.encodeLocation(q.pathname.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:q.pathname]),pathnameBase:q.pathnameBase==="/"?E:cn([E,d.encodeLocation?d.encodeLocation(q.pathnameBase.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:q.pathnameBase])})),m,c,r,f);return i&&L?T.createElement(Fa.Provider,{value:{location:{pathname:"/",search:"",hash:"",state:null,key:"default",...z},navigationType:"POP"}},L):L}function vv(){let u=Cv(),i=rv(u)?`${u.status} ${u.statusText}`:u instanceof Error?u.message:JSON.stringify(u),c=u instanceof Error?u.stack:null,r="rgba(200,200,200, 0.5)",f={padding:"0.5rem",backgroundColor:r},d={padding:"2px 4px",backgroundColor:r},m=null;return console.error("Error handled by React Router default ErrorBoundary:",u),m=T.createElement(T.Fragment,null,T.createElement("p",null,"💿 Hey developer 👋"),T.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",T.createElement("code",{style:d},"ErrorBoundary")," or"," ",T.createElement("code",{style:d},"errorElement")," prop on your route.")),T.createElement(T.Fragment,null,T.createElement("h2",null,"Unexpected Application Error!"),T.createElement("h3",{style:{fontStyle:"italic"}},i),c?T.createElement("pre",{style:f},c):null,m)}var gv=T.createElement(vv,null),bv=class extends T.Component{constructor(u){super(u),this.state={location:u.location,revalidation:u.revalidation,error:u.error}}static getDerivedStateFromError(u){return{error:u}}static getDerivedStateFromProps(u,i){return i.location!==u.location||i.revalidation!=="idle"&&u.revalidation==="idle"?{error:u.error,location:u.location,revalidation:u.revalidation}:{error:u.error!==void 0?u.error:i.error,location:i.location,revalidation:u.revalidation||i.revalidation}}componentDidCatch(u,i){this.props.onError?this.props.onError(u,i):console.error("React Router caught the following error during render",u)}render(){return this.state.error!==void 0?T.createElement(on.Provider,{value:this.props.routeContext},T.createElement(xr.Provider,{value:this.state.error,children:this.props.component})):this.props.children}};function Sv({routeContext:u,match:i,children:c}){let r=T.useContext(Zl);return r&&r.static&&r.staticContext&&(i.route.errorElement||i.route.ErrorBoundary)&&(r.staticContext._deepestRenderedBoundaryId=i.route.id),T.createElement(on.Provider,{value:u},c)}function xv(u,i=[],c=null,r=null,f=null){if(u==null){if(!c)return null;if(c.errors)u=c.matches;else if(i.length===0&&!c.initialized&&c.matches.length>0)u=c.matches;else return null}let d=u,m=c?.errors;if(m!=null){let E=d.findIndex(S=>S.route.id&&m?.[S.route.id]!==void 0);Nt(E>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(m).join(",")}`),d=d.slice(0,Math.min(d.length,E+1))}let b=!1,p=-1;if(c)for(let E=0;E=0?d=d.slice(0,p+1):d=[d[0]];break}}}let y=c&&r?(E,S)=>{r(E,{location:c.location,params:c.matches?.[0]?.params??{},errorInfo:S})}:void 0;return d.reduceRight((E,S,C)=>{let z,H=!1,k=null,Y=null;c&&(z=m&&S.route.id?m[S.route.id]:void 0,k=S.route.errorElement||gv,b&&(p<0&&C===0?(zm("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),H=!0,Y=null):p===C&&(H=!0,Y=S.route.hydrateFallbackElement||null)));let L=i.concat(d.slice(0,C+1)),q=()=>{let Q;return z?Q=k:H?Q=Y:S.route.Component?Q=T.createElement(S.route.Component,null):S.route.element?Q=S.route.element:Q=E,T.createElement(Sv,{match:S,routeContext:{outlet:E,matches:L,isDataRoute:c!=null},children:Q})};return c&&(S.route.ErrorBoundary||S.route.errorElement||C===0)?T.createElement(bv,{location:c.location,revalidation:c.revalidation,component:k,error:z,children:q(),routeContext:{outlet:null,matches:L,isDataRoute:!0},onError:y}):q()},null)}function _r(u){return`${u} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function _v(u){let i=T.useContext(Zl);return Nt(i,_r(u)),i}function Ev(u){let i=T.useContext(Nu);return Nt(i,_r(u)),i}function Tv(u){let i=T.useContext(on);return Nt(i,_r(u)),i}function Er(u){let i=Tv(u),c=i.matches[i.matches.length-1];return Nt(c.route.id,`${u} can only be used on routes that contain a unique "id"`),c.route.id}function Av(){return Er("useRouteId")}function Cv(){let u=T.useContext(xr),i=Ev("useRouteError"),c=Er("useRouteError");return u!==void 0?u:i.errors?.[c]}function Rv(){let{router:u}=_v("useNavigate"),i=Er("useNavigate"),c=T.useRef(!1);return Om(()=>{c.current=!0}),T.useCallback(async(f,d={})=>{we(c.current,Rm),c.current&&(typeof f=="number"?u.navigate(f):await u.navigate(f,{fromRouteId:i,...d}))},[u,i])}var am={};function zm(u,i,c){!i&&!am[u]&&(am[u]=!0,we(!1,c))}T.memo(Ov);function Ov({routes:u,future:i,state:c,unstable_onError:r}){return Nm(u,void 0,c,r,i)}function dr(u){Nt(!1,"A is only ever to be used as the child of element, never rendered directly. Please wrap your in a .")}function Nv({basename:u="/",children:i=null,location:c,navigationType:r="POP",navigator:f,static:d=!1}){Nt(!Pa(),"You cannot render a inside another . You should never have more than one in your app.");let m=u.replace(/^\/*/,"/"),b=T.useMemo(()=>({basename:m,navigator:f,static:d,future:{}}),[m,f,d]);typeof c=="string"&&(c=Ql(c));let{pathname:p="/",search:y="",hash:E="",state:S=null,key:C="default"}=c,z=T.useMemo(()=>{let H=rn(p,m);return H==null?null:{location:{pathname:H,search:y,hash:E,state:S,key:C},navigationType:r}},[m,p,y,E,S,C,r]);return we(z!=null,` is not able to match the URL "${p}${y}${E}" because it does not start with the basename, so the won't render anything.`),z==null?null:T.createElement(Ye.Provider,{value:b},T.createElement(Fa.Provider,{children:i,value:z}))}function zv({children:u,location:i}){return yv(mr(u),i)}function mr(u,i=[]){let c=[];return T.Children.forEach(u,(r,f)=>{if(!T.isValidElement(r))return;let d=[...i,f];if(r.type===T.Fragment){c.push.apply(c,mr(r.props.children,d));return}Nt(r.type===dr,`[${typeof r.type=="string"?r.type:r.type.name}] is not a component. All component children of must be a or `),Nt(!r.props.index||!r.props.children,"An index route cannot have child routes.");let m={id:r.props.id||d.join("-"),caseSensitive:r.props.caseSensitive,element:r.props.element,Component:r.props.Component,index:r.props.index,path:r.props.path,middleware:r.props.middleware,loader:r.props.loader,action:r.props.action,hydrateFallbackElement:r.props.hydrateFallbackElement,HydrateFallback:r.props.HydrateFallback,errorElement:r.props.errorElement,ErrorBoundary:r.props.ErrorBoundary,hasErrorBoundary:r.props.hasErrorBoundary===!0||r.props.ErrorBoundary!=null||r.props.errorElement!=null,shouldRevalidate:r.props.shouldRevalidate,handle:r.props.handle,lazy:r.props.lazy};r.props.children&&(m.children=mr(r.props.children,d)),c.push(m)}),c}var xu="get",_u="application/x-www-form-urlencoded";function zu(u){return u!=null&&typeof u.tagName=="string"}function Mv(u){return zu(u)&&u.tagName.toLowerCase()==="button"}function Dv(u){return zu(u)&&u.tagName.toLowerCase()==="form"}function wv(u){return zu(u)&&u.tagName.toLowerCase()==="input"}function jv(u){return!!(u.metaKey||u.altKey||u.ctrlKey||u.shiftKey)}function Uv(u,i){return u.button===0&&(!i||i==="_self")&&!jv(u)}var gu=null;function Bv(){if(gu===null)try{new FormData(document.createElement("form"),0),gu=!1}catch{gu=!0}return gu}var Lv=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function ur(u){return u!=null&&!Lv.has(u)?(we(!1,`"${u}" is not a valid \`encType\` for \`\`/\`\` and will default to "${_u}"`),null):u}function Hv(u,i){let c,r,f,d,m;if(Dv(u)){let b=u.getAttribute("action");r=b?rn(b,i):null,c=u.getAttribute("method")||xu,f=ur(u.getAttribute("enctype"))||_u,d=new FormData(u)}else if(Mv(u)||wv(u)&&(u.type==="submit"||u.type==="image")){let b=u.form;if(b==null)throw new Error('Cannot submit a
)} {rawSnippet && ( -
+        
           {rawSnippet}
         
)}

Rovers

{roster.length === 0 ? ( + // if there ARE NO rovers

No roster data.

) : ( + // if there ARE rovers
    {roster.map((rover) => (
  • @@ -102,7 +104,7 @@ function Metric({ label, value }) { // {label} // {value} //
-
+
{label}: {value}
); From 9b80c2f4c643476cf2e440f8b6a172c3709bcb24 Mon Sep 17 00:00:00 2001 From: legop3 Date: Sun, 16 Nov 2025 04:01:33 -0500 Subject: [PATCH 46/61] redoe --- server/public/assets/index-CAtTh0CL.js | 11 ---- server/public/assets/index-CD08Z3yR.js | 11 ++++ server/public/assets/index-DU_3z6JA.css | 1 - server/public/assets/index-pos682hi.css | 1 + server/public/index.html | 4 +- server/src/services/nicknameService.js | 1 + webui/src/App.jsx | 23 +++---- webui/src/components/AdvancedSettings.jsx | 74 +++++++++++++++++++++++ webui/src/components/DrivePanel.jsx | 65 +------------------- webui/src/components/DriverVideoPanel.jsx | 3 +- webui/src/components/HelpPanel.jsx | 32 ++++++++++ webui/src/components/RightPaneTabs.jsx | 68 +++++++++++++++++++++ webui/src/components/VideoTile.jsx | 2 +- 13 files changed, 204 insertions(+), 92 deletions(-) delete mode 100644 server/public/assets/index-CAtTh0CL.js create mode 100644 server/public/assets/index-CD08Z3yR.js delete mode 100644 server/public/assets/index-DU_3z6JA.css create mode 100644 server/public/assets/index-pos682hi.css create mode 100644 server/src/services/nicknameService.js create mode 100644 webui/src/components/AdvancedSettings.jsx create mode 100644 webui/src/components/HelpPanel.jsx create mode 100644 webui/src/components/RightPaneTabs.jsx diff --git a/server/public/assets/index-CAtTh0CL.js b/server/public/assets/index-CAtTh0CL.js deleted file mode 100644 index 6b1ab306..00000000 --- a/server/public/assets/index-CAtTh0CL.js +++ /dev/null @@ -1,11 +0,0 @@ -(function(){const i=document.createElement("link").relList;if(i&&i.supports&&i.supports("modulepreload"))return;for(const f of document.querySelectorAll('link[rel="modulepreload"]'))r(f);new MutationObserver(f=>{for(const d of f)if(d.type==="childList")for(const m of d.addedNodes)m.tagName==="LINK"&&m.rel==="modulepreload"&&r(m)}).observe(document,{childList:!0,subtree:!0});function c(f){const d={};return f.integrity&&(d.integrity=f.integrity),f.referrerPolicy&&(d.referrerPolicy=f.referrerPolicy),f.crossOrigin==="use-credentials"?d.credentials="include":f.crossOrigin==="anonymous"?d.credentials="omit":d.credentials="same-origin",d}function r(f){if(f.ep)return;f.ep=!0;const d=c(f);fetch(f.href,d)}})();var Ic={exports:{}},ka={};var Vd;function N0(){if(Vd)return ka;Vd=1;var u=Symbol.for("react.transitional.element"),i=Symbol.for("react.fragment");function c(r,f,d){var m=null;if(d!==void 0&&(m=""+d),f.key!==void 0&&(m=""+f.key),"key"in f){d={};for(var b in f)b!=="key"&&(d[b]=f[b])}else d=f;return f=d.ref,{$$typeof:u,type:r,key:m,ref:f!==void 0?f:null,props:d}}return ka.Fragment=i,ka.jsx=c,ka.jsxs=c,ka}var Qd;function z0(){return Qd||(Qd=1,Ic.exports=N0()),Ic.exports}var g=z0(),tr={exports:{}},I={};var Zd;function M0(){if(Zd)return I;Zd=1;var u=Symbol.for("react.transitional.element"),i=Symbol.for("react.portal"),c=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),f=Symbol.for("react.profiler"),d=Symbol.for("react.consumer"),m=Symbol.for("react.context"),b=Symbol.for("react.forward_ref"),p=Symbol.for("react.suspense"),y=Symbol.for("react.memo"),E=Symbol.for("react.lazy"),S=Symbol.for("react.activity"),C=Symbol.iterator;function z(_){return _===null||typeof _!="object"?null:(_=C&&_[C]||_["@@iterator"],typeof _=="function"?_:null)}var H={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},k=Object.assign,Y={};function L(_,B,G){this.props=_,this.context=B,this.refs=Y,this.updater=G||H}L.prototype.isReactComponent={},L.prototype.setState=function(_,B){if(typeof _!="object"&&typeof _!="function"&&_!=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,_,B,"setState")},L.prototype.forceUpdate=function(_){this.updater.enqueueForceUpdate(this,_,"forceUpdate")};function q(){}q.prototype=L.prototype;function Q(_,B,G){this.props=_,this.context=B,this.refs=Y,this.updater=G||H}var P=Q.prototype=new q;P.constructor=Q,k(P,L.prototype),P.isPureReactComponent=!0;var yt=Array.isArray;function Rt(){}var $={H:null,A:null,T:null,S:null},Tt=Object.prototype.hasOwnProperty;function xt(_,B,G){var Z=G.ref;return{$$typeof:u,type:_,key:B,ref:Z!==void 0?Z:null,props:G}}function Ut(_,B){return xt(_.type,B,_.props)}function Xt(_){return typeof _=="object"&&_!==null&&_.$$typeof===u}function Wt(_){var B={"=":"=0",":":"=2"};return"$"+_.replace(/[=:]/g,function(G){return B[G]})}var Hn=/\/+/g;function ke(_,B){return typeof _=="object"&&_!==null&&_.key!=null?Wt(""+_.key):B.toString(36)}function Oe(_){switch(_.status){case"fulfilled":return _.value;case"rejected":throw _.reason;default:switch(typeof _.status=="string"?_.then(Rt,Rt):(_.status="pending",_.then(function(B){_.status==="pending"&&(_.status="fulfilled",_.value=B)},function(B){_.status==="pending"&&(_.status="rejected",_.reason=B)})),_.status){case"fulfilled":return _.value;case"rejected":throw _.reason}}throw _}function w(_,B,G,Z,tt){var lt=typeof _;(lt==="undefined"||lt==="boolean")&&(_=null);var dt=!1;if(_===null)dt=!0;else switch(lt){case"bigint":case"string":case"number":dt=!0;break;case"object":switch(_.$$typeof){case u:case i:dt=!0;break;case E:return dt=_._init,w(dt(_._payload),B,G,Z,tt)}}if(dt)return tt=tt(_),dt=Z===""?"."+ke(_,0):Z,yt(tt)?(G="",dt!=null&&(G=dt.replace(Hn,"$&/")+"/"),w(tt,B,G,"",function(Jl){return Jl})):tt!=null&&(Xt(tt)&&(tt=Ut(tt,G+(tt.key==null||_&&_.key===tt.key?"":(""+tt.key).replace(Hn,"$&/")+"/")+dt)),B.push(tt)),1;dt=0;var Pt=Z===""?".":Z+":";if(yt(_))for(var Dt=0;Dt<_.length;Dt++)Z=_[Dt],lt=Pt+ke(Z,Dt),dt+=w(Z,B,G,lt,tt);else if(Dt=z(_),typeof Dt=="function")for(_=Dt.call(_),Dt=0;!(Z=_.next()).done;)Z=Z.value,lt=Pt+ke(Z,Dt++),dt+=w(Z,B,G,lt,tt);else if(lt==="object"){if(typeof _.then=="function")return w(Oe(_),B,G,Z,tt);throw B=String(_),Error("Objects are not valid as a React child (found: "+(B==="[object Object]"?"object with keys {"+Object.keys(_).join(", ")+"}":B)+"). If you meant to render a collection of children, use an array instead.")}return dt}function X(_,B,G){if(_==null)return _;var Z=[],tt=0;return w(_,Z,"","",function(lt){return B.call(G,lt,tt++)}),Z}function F(_){if(_._status===-1){var B=_._result;B=B(),B.then(function(G){(_._status===0||_._status===-1)&&(_._status=1,_._result=G)},function(G){(_._status===0||_._status===-1)&&(_._status=2,_._result=G)}),_._status===-1&&(_._status=0,_._result=B)}if(_._status===1)return _._result.default;throw _._result}var vt=typeof reportError=="function"?reportError:function(_){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var B=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof _=="object"&&_!==null&&typeof _.message=="string"?String(_.message):String(_),error:_});if(!window.dispatchEvent(B))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",_);return}console.error(_)},_t={map:X,forEach:function(_,B,G){X(_,function(){B.apply(this,arguments)},G)},count:function(_){var B=0;return X(_,function(){B++}),B},toArray:function(_){return X(_,function(B){return B})||[]},only:function(_){if(!Xt(_))throw Error("React.Children.only expected to receive a single React element child.");return _}};return I.Activity=S,I.Children=_t,I.Component=L,I.Fragment=c,I.Profiler=f,I.PureComponent=Q,I.StrictMode=r,I.Suspense=p,I.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=$,I.__COMPILER_RUNTIME={__proto__:null,c:function(_){return $.H.useMemoCache(_)}},I.cache=function(_){return function(){return _.apply(null,arguments)}},I.cacheSignal=function(){return null},I.cloneElement=function(_,B,G){if(_==null)throw Error("The argument must be a React element, but you passed "+_+".");var Z=k({},_.props),tt=_.key;if(B!=null)for(lt in B.key!==void 0&&(tt=""+B.key),B)!Tt.call(B,lt)||lt==="key"||lt==="__self"||lt==="__source"||lt==="ref"&&B.ref===void 0||(Z[lt]=B[lt]);var lt=arguments.length-2;if(lt===1)Z.children=G;else if(1>>1,_t=w[vt];if(0>>1;vt<_;){var B=2*(vt+1)-1,G=w[B],Z=B+1,tt=w[Z];if(0>f(G,F))Z<_t&&0>f(tt,G)?(w[vt]=tt,w[Z]=F,vt=Z):(w[vt]=G,w[B]=F,vt=B);else if(Z<_t&&0>f(tt,F))w[vt]=tt,w[Z]=F,vt=Z;else break t}}return X}function f(w,X){var F=w.sortIndex-X.sortIndex;return F!==0?F:w.id-X.id}if(u.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var d=performance;u.unstable_now=function(){return d.now()}}else{var m=Date,b=m.now();u.unstable_now=function(){return m.now()-b}}var p=[],y=[],E=1,S=null,C=3,z=!1,H=!1,k=!1,Y=!1,L=typeof setTimeout=="function"?setTimeout:null,q=typeof clearTimeout=="function"?clearTimeout:null,Q=typeof setImmediate<"u"?setImmediate:null;function P(w){for(var X=c(y);X!==null;){if(X.callback===null)r(y);else if(X.startTime<=w)r(y),X.sortIndex=X.expirationTime,i(p,X);else break;X=c(y)}}function yt(w){if(k=!1,P(w),!H)if(c(p)!==null)H=!0,Rt||(Rt=!0,Wt());else{var X=c(y);X!==null&&Oe(yt,X.startTime-w)}}var Rt=!1,$=-1,Tt=5,xt=-1;function Ut(){return Y?!0:!(u.unstable_now()-xtw&&Ut());){var vt=S.callback;if(typeof vt=="function"){S.callback=null,C=S.priorityLevel;var _t=vt(S.expirationTime<=w);if(w=u.unstable_now(),typeof _t=="function"){S.callback=_t,P(w),X=!0;break e}S===c(p)&&r(p),P(w)}else r(p);S=c(p)}if(S!==null)X=!0;else{var _=c(y);_!==null&&Oe(yt,_.startTime-w),X=!1}}break t}finally{S=null,C=F,z=!1}X=void 0}}finally{X?Wt():Rt=!1}}}var Wt;if(typeof Q=="function")Wt=function(){Q(Xt)};else if(typeof MessageChannel<"u"){var Hn=new MessageChannel,ke=Hn.port2;Hn.port1.onmessage=Xt,Wt=function(){ke.postMessage(null)}}else Wt=function(){L(Xt,0)};function Oe(w,X){$=L(function(){w(u.unstable_now())},X)}u.unstable_IdlePriority=5,u.unstable_ImmediatePriority=1,u.unstable_LowPriority=4,u.unstable_NormalPriority=3,u.unstable_Profiling=null,u.unstable_UserBlockingPriority=2,u.unstable_cancelCallback=function(w){w.callback=null},u.unstable_forceFrameRate=function(w){0>w||125vt?(w.sortIndex=F,i(y,w),c(p)===null&&w===c(y)&&(k?(q($),$=-1):k=!0,Oe(yt,F-vt))):(w.sortIndex=_t,i(p,w),H||z||(H=!0,Rt||(Rt=!0,Wt()))),w},u.unstable_shouldYield=Ut,u.unstable_wrapCallback=function(w){var X=C;return function(){var F=C;C=X;try{return w.apply(this,arguments)}finally{C=F}}}})(lr)),lr}var $d;function w0(){return $d||($d=1,nr.exports=D0()),nr.exports}var ar={exports:{}},Ft={};var Wd;function j0(){if(Wd)return Ft;Wd=1;var u=Ou();function i(p){var y="https://react.dev/errors/"+p;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(u)}catch(i){console.error(i)}}return u(),ar.exports=j0(),ar.exports}var Pd;function B0(){if(Pd)return Xa;Pd=1;var u=w0(),i=Ou(),c=U0();function r(t){var e="https://react.dev/errors/"+t;if(1_t||(t.current=vt[_t],vt[_t]=null,_t--)}function G(t,e){_t++,vt[_t]=t.current,t.current=e}var Z=_(null),tt=_(null),lt=_(null),dt=_(null);function Pt(t,e){switch(G(lt,e),G(tt,t),G(Z,null),e.nodeType){case 9:case 11:t=(t=e.documentElement)&&(t=t.namespaceURI)?dd(t):0;break;default:if(t=e.tagName,e=e.namespaceURI)e=dd(e),t=md(e,t);else switch(t){case"svg":t=1;break;case"math":t=2;break;default:t=0}}B(Z),G(Z,t)}function Dt(){B(Z),B(tt),B(lt)}function Jl(t){t.memoizedState!==null&&G(dt,t);var e=Z.current,n=md(e,t.type);e!==n&&(G(tt,t),G(Z,n))}function ti(t){tt.current===t&&(B(Z),B(tt)),dt.current===t&&(B(dt),La._currentValue=F)}var Uu,kr;function qn(t){if(Uu===void 0)try{throw Error()}catch(n){var e=n.stack.trim().match(/\n( *(at )?)/);Uu=e&&e[1]||"",kr=-1)":-1a||v[l]!==O[a]){var D=` -`+v[l].replace(" at new "," at ");return t.displayName&&D.includes("")&&(D=D.replace("",t.displayName)),D}while(1<=l&&0<=a);break}}}finally{Bu=!1,Error.prepareStackTrace=n}return(n=t?t.displayName||t.name:"")?qn(n):""}function up(t,e){switch(t.tag){case 26:case 27:case 5:return qn(t.type);case 16:return qn("Lazy");case 13:return t.child!==e&&e!==null?qn("Suspense Fallback"):qn("Suspense");case 19:return qn("SuspenseList");case 0:case 15:return Lu(t.type,!1);case 11:return Lu(t.type.render,!1);case 1:return Lu(t.type,!0);case 31:return qn("Activity");default:return""}}function Xr(t){try{var e="",n=null;do e+=up(t,n),n=t,t=t.return;while(t);return e}catch(l){return` -Error generating stack: `+l.message+` -`+l.stack}}var Hu=Object.prototype.hasOwnProperty,qu=u.unstable_scheduleCallback,Yu=u.unstable_cancelCallback,sp=u.unstable_shouldYield,cp=u.unstable_requestPaint,se=u.unstable_now,rp=u.unstable_getCurrentPriorityLevel,Gr=u.unstable_ImmediatePriority,Vr=u.unstable_UserBlockingPriority,ei=u.unstable_NormalPriority,op=u.unstable_LowPriority,Qr=u.unstable_IdlePriority,fp=u.log,hp=u.unstable_setDisableYieldValue,$l=null,ce=null;function hn(t){if(typeof fp=="function"&&hp(t),ce&&typeof ce.setStrictMode=="function")try{ce.setStrictMode($l,t)}catch{}}var re=Math.clz32?Math.clz32:pp,dp=Math.log,mp=Math.LN2;function pp(t){return t>>>=0,t===0?32:31-(dp(t)/mp|0)|0}var ni=256,li=262144,ai=4194304;function Yn(t){var e=t&42;if(e!==0)return e;switch(t&-t){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return t&261888;case 262144:case 524288:case 1048576:case 2097152:return t&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return t&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return t}}function ii(t,e,n){var l=t.pendingLanes;if(l===0)return 0;var a=0,s=t.suspendedLanes,o=t.pingedLanes;t=t.warmLanes;var h=l&134217727;return h!==0?(l=h&~s,l!==0?a=Yn(l):(o&=h,o!==0?a=Yn(o):n||(n=h&~t,n!==0&&(a=Yn(n))))):(h=l&~s,h!==0?a=Yn(h):o!==0?a=Yn(o):n||(n=l&~t,n!==0&&(a=Yn(n)))),a===0?0:e!==0&&e!==a&&(e&s)===0&&(s=a&-a,n=e&-e,s>=n||s===32&&(n&4194048)!==0)?e:a}function Wl(t,e){return(t.pendingLanes&~(t.suspendedLanes&~t.pingedLanes)&e)===0}function yp(t,e){switch(t){case 1:case 2:case 4:case 8:case 64:return e+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 e+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 Zr(){var t=ai;return ai<<=1,(ai&62914560)===0&&(ai=4194304),t}function ku(t){for(var e=[],n=0;31>n;n++)e.push(t);return e}function Fl(t,e){t.pendingLanes|=e,e!==268435456&&(t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0)}function vp(t,e,n,l,a,s){var o=t.pendingLanes;t.pendingLanes=n,t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0,t.expiredLanes&=n,t.entangledLanes&=n,t.errorRecoveryDisabledLanes&=n,t.shellSuspendCounter=0;var h=t.entanglements,v=t.expirationTimes,O=t.hiddenUpdates;for(n=o&~n;0"u")return null;try{return t.activeElement||t.body}catch{return t.body}}var Ep=/[\n"\\]/g;function ge(t){return t.replace(Ep,function(e){return"\\"+e.charCodeAt(0).toString(16)+" "})}function Ku(t,e,n,l,a,s,o,h){t.name="",o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"?t.type=o:t.removeAttribute("type"),e!=null?o==="number"?(e===0&&t.value===""||t.value!=e)&&(t.value=""+ve(e)):t.value!==""+ve(e)&&(t.value=""+ve(e)):o!=="submit"&&o!=="reset"||t.removeAttribute("value"),e!=null?Ju(t,o,ve(e)):n!=null?Ju(t,o,ve(n)):l!=null&&t.removeAttribute("value"),a==null&&s!=null&&(t.defaultChecked=!!s),a!=null&&(t.checked=a&&typeof a!="function"&&typeof a!="symbol"),h!=null&&typeof h!="function"&&typeof h!="symbol"&&typeof h!="boolean"?t.name=""+ve(h):t.removeAttribute("name")}function io(t,e,n,l,a,s,o,h){if(s!=null&&typeof s!="function"&&typeof s!="symbol"&&typeof s!="boolean"&&(t.type=s),e!=null||n!=null){if(!(s!=="submit"&&s!=="reset"||e!=null)){Zu(t);return}n=n!=null?""+ve(n):"",e=e!=null?""+ve(e):n,h||e===t.value||(t.value=e),t.defaultValue=e}l=l??a,l=typeof l!="function"&&typeof l!="symbol"&&!!l,t.checked=h?t.checked:!!l,t.defaultChecked=!!l,o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"&&(t.name=o),Zu(t)}function Ju(t,e,n){e==="number"&&ci(t.ownerDocument)===t||t.defaultValue===""+n||(t.defaultValue=""+n)}function fl(t,e,n,l){if(t=t.options,e){e={};for(var a=0;a"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Iu=!1;if(Ve)try{var ea={};Object.defineProperty(ea,"passive",{get:function(){Iu=!0}}),window.addEventListener("test",ea,ea),window.removeEventListener("test",ea,ea)}catch{Iu=!1}var mn=null,ts=null,oi=null;function ho(){if(oi)return oi;var t,e=ts,n=e.length,l,a="value"in mn?mn.value:mn.textContent,s=a.length;for(t=0;t=aa),bo=" ",So=!1;function xo(t,e){switch(t){case"keyup":return Fp.indexOf(e.keyCode)!==-1;case"keydown":return e.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function _o(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var pl=!1;function Ip(t,e){switch(t){case"compositionend":return _o(e);case"keypress":return e.which!==32?null:(So=!0,bo);case"textInput":return t=e.data,t===bo&&So?null:t;default:return null}}function ty(t,e){if(pl)return t==="compositionend"||!is&&xo(t,e)?(t=ho(),oi=ts=mn=null,pl=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(e.ctrlKey||e.altKey||e.metaKey)||e.ctrlKey&&e.altKey){if(e.char&&1=e)return{node:n,offset:e-t};t=l}t:{for(;n;){if(n.nextSibling){n=n.nextSibling;break t}n=n.parentNode}n=void 0}n=zo(n)}}function Do(t,e){return t&&e?t===e?!0:t&&t.nodeType===3?!1:e&&e.nodeType===3?Do(t,e.parentNode):"contains"in t?t.contains(e):t.compareDocumentPosition?!!(t.compareDocumentPosition(e)&16):!1:!1}function wo(t){t=t!=null&&t.ownerDocument!=null&&t.ownerDocument.defaultView!=null?t.ownerDocument.defaultView:window;for(var e=ci(t.document);e instanceof t.HTMLIFrameElement;){try{var n=typeof e.contentWindow.location.href=="string"}catch{n=!1}if(n)t=e.contentWindow;else break;e=ci(t.document)}return e}function cs(t){var e=t&&t.nodeName&&t.nodeName.toLowerCase();return e&&(e==="input"&&(t.type==="text"||t.type==="search"||t.type==="tel"||t.type==="url"||t.type==="password")||e==="textarea"||t.contentEditable==="true")}var cy=Ve&&"documentMode"in document&&11>=document.documentMode,yl=null,rs=null,ca=null,os=!1;function jo(t,e,n){var l=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;os||yl==null||yl!==ci(l)||(l=yl,"selectionStart"in l&&cs(l)?l={start:l.selectionStart,end:l.selectionEnd}:(l=(l.ownerDocument&&l.ownerDocument.defaultView||window).getSelection(),l={anchorNode:l.anchorNode,anchorOffset:l.anchorOffset,focusNode:l.focusNode,focusOffset:l.focusOffset}),ca&&sa(ca,l)||(ca=l,l=lu(rs,"onSelect"),0>=o,a-=o,je=1<<32-re(e)+a|n<nt?(st=K,K=null):st=K.sibling;var ft=N(A,K,R[nt],j);if(ft===null){K===null&&(K=st);break}t&&K&&ft.alternate===null&&e(A,K),x=s(ft,x,nt),ot===null?J=ft:ot.sibling=ft,ot=ft,K=st}if(nt===R.length)return n(A,K),ct&&Ze(A,nt),J;if(K===null){for(;ntnt?(st=K,K=null):st=K.sibling;var Bn=N(A,K,ft.value,j);if(Bn===null){K===null&&(K=st);break}t&&K&&Bn.alternate===null&&e(A,K),x=s(Bn,x,nt),ot===null?J=Bn:ot.sibling=Bn,ot=Bn,K=st}if(ft.done)return n(A,K),ct&&Ze(A,nt),J;if(K===null){for(;!ft.done;nt++,ft=R.next())ft=U(A,ft.value,j),ft!==null&&(x=s(ft,x,nt),ot===null?J=ft:ot.sibling=ft,ot=ft);return ct&&Ze(A,nt),J}for(K=l(K);!ft.done;nt++,ft=R.next())ft=M(K,A,nt,ft.value,j),ft!==null&&(t&&ft.alternate!==null&&K.delete(ft.key===null?nt:ft.key),x=s(ft,x,nt),ot===null?J=ft:ot.sibling=ft,ot=ft);return t&&K.forEach(function(O0){return e(A,O0)}),ct&&Ze(A,nt),J}function St(A,x,R,j){if(typeof R=="object"&&R!==null&&R.type===k&&R.key===null&&(R=R.props.children),typeof R=="object"&&R!==null){switch(R.$$typeof){case z:t:{for(var J=R.key;x!==null;){if(x.key===J){if(J=R.type,J===k){if(x.tag===7){n(A,x.sibling),j=a(x,R.props.children),j.return=A,A=j;break t}}else if(x.elementType===J||typeof J=="object"&&J!==null&&J.$$typeof===Tt&&Fn(J)===x.type){n(A,x.sibling),j=a(x,R.props),ma(j,R),j.return=A,A=j;break t}n(A,x);break}else e(A,x);x=x.sibling}R.type===k?(j=Zn(R.props.children,A.mode,j,R.key),j.return=A,A=j):(j=Si(R.type,R.key,R.props,null,A.mode,j),ma(j,R),j.return=A,A=j)}return o(A);case H:t:{for(J=R.key;x!==null;){if(x.key===J)if(x.tag===4&&x.stateNode.containerInfo===R.containerInfo&&x.stateNode.implementation===R.implementation){n(A,x.sibling),j=a(x,R.children||[]),j.return=A,A=j;break t}else{n(A,x);break}else e(A,x);x=x.sibling}j=vs(R,A.mode,j),j.return=A,A=j}return o(A);case Tt:return R=Fn(R),St(A,x,R,j)}if(Oe(R))return V(A,x,R,j);if(Wt(R)){if(J=Wt(R),typeof J!="function")throw Error(r(150));return R=J.call(R),W(A,x,R,j)}if(typeof R.then=="function")return St(A,x,Ri(R),j);if(R.$$typeof===Q)return St(A,x,Ei(A,R),j);Oi(A,R)}return typeof R=="string"&&R!==""||typeof R=="number"||typeof R=="bigint"?(R=""+R,x!==null&&x.tag===6?(n(A,x.sibling),j=a(x,R),j.return=A,A=j):(n(A,x),j=ys(R,A.mode,j),j.return=A,A=j),o(A)):n(A,x)}return function(A,x,R,j){try{da=0;var J=St(A,x,R,j);return Rl=null,J}catch(K){if(K===Cl||K===Ai)throw K;var ot=fe(29,K,null,A.mode);return ot.lanes=j,ot.return=A,ot}finally{}}}var In=lf(!0),af=lf(!1),bn=!1;function Ns(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function zs(t,e){t=t.updateQueue,e.updateQueue===t&&(e.updateQueue={baseState:t.baseState,firstBaseUpdate:t.firstBaseUpdate,lastBaseUpdate:t.lastBaseUpdate,shared:t.shared,callbacks:null})}function Sn(t){return{lane:t,tag:0,payload:null,callback:null,next:null}}function xn(t,e,n){var l=t.updateQueue;if(l===null)return null;if(l=l.shared,(ht&2)!==0){var a=l.pending;return a===null?e.next=e:(e.next=a.next,a.next=e),l.pending=e,e=bi(t),ko(t,null,n),e}return gi(t,l,e,n),bi(t)}function pa(t,e,n){if(e=e.updateQueue,e!==null&&(e=e.shared,(n&4194048)!==0)){var l=e.lanes;l&=t.pendingLanes,n|=l,e.lanes=n,Jr(t,n)}}function Ms(t,e){var n=t.updateQueue,l=t.alternate;if(l!==null&&(l=l.updateQueue,n===l)){var a=null,s=null;if(n=n.firstBaseUpdate,n!==null){do{var o={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};s===null?a=s=o:s=s.next=o,n=n.next}while(n!==null);s===null?a=s=e:s=s.next=e}else a=s=e;n={baseState:l.baseState,firstBaseUpdate:a,lastBaseUpdate:s,shared:l.shared,callbacks:l.callbacks},t.updateQueue=n;return}t=n.lastBaseUpdate,t===null?n.firstBaseUpdate=e:t.next=e,n.lastBaseUpdate=e}var Ds=!1;function ya(){if(Ds){var t=Al;if(t!==null)throw t}}function va(t,e,n,l){Ds=!1;var a=t.updateQueue;bn=!1;var s=a.firstBaseUpdate,o=a.lastBaseUpdate,h=a.shared.pending;if(h!==null){a.shared.pending=null;var v=h,O=v.next;v.next=null,o===null?s=O:o.next=O,o=v;var D=t.alternate;D!==null&&(D=D.updateQueue,h=D.lastBaseUpdate,h!==o&&(h===null?D.firstBaseUpdate=O:h.next=O,D.lastBaseUpdate=v))}if(s!==null){var U=a.baseState;o=0,D=O=v=null,h=s;do{var N=h.lane&-536870913,M=N!==h.lane;if(M?(ut&N)===N:(l&N)===N){N!==0&&N===Tl&&(Ds=!0),D!==null&&(D=D.next={lane:0,tag:h.tag,payload:h.payload,callback:null,next:null});t:{var V=t,W=h;N=e;var St=n;switch(W.tag){case 1:if(V=W.payload,typeof V=="function"){U=V.call(St,U,N);break t}U=V;break t;case 3:V.flags=V.flags&-65537|128;case 0:if(V=W.payload,N=typeof V=="function"?V.call(St,U,N):V,N==null)break t;U=S({},U,N);break t;case 2:bn=!0}}N=h.callback,N!==null&&(t.flags|=64,M&&(t.flags|=8192),M=a.callbacks,M===null?a.callbacks=[N]:M.push(N))}else M={lane:N,tag:h.tag,payload:h.payload,callback:h.callback,next:null},D===null?(O=D=M,v=U):D=D.next=M,o|=N;if(h=h.next,h===null){if(h=a.shared.pending,h===null)break;M=h,h=M.next,M.next=null,a.lastBaseUpdate=M,a.shared.pending=null}}while(!0);D===null&&(v=U),a.baseState=v,a.firstBaseUpdate=O,a.lastBaseUpdate=D,s===null&&(a.shared.lanes=0),Cn|=o,t.lanes=o,t.memoizedState=U}}function uf(t,e){if(typeof t!="function")throw Error(r(191,t));t.call(e)}function sf(t,e){var n=t.callbacks;if(n!==null)for(t.callbacks=null,t=0;ts?s:8;var o=w.T,h={};w.T=h,Fs(t,!1,e,n);try{var v=a(),O=w.S;if(O!==null&&O(h,v),v!==null&&typeof v=="object"&&typeof v.then=="function"){var D=vy(v,l);Sa(t,e,D,ye(t))}else Sa(t,e,l,ye(t))}catch(U){Sa(t,e,{then:function(){},status:"rejected",reason:U},ye())}finally{X.p=s,o!==null&&h.types!==null&&(o.types=h.types),w.T=o}}function Ey(){}function $s(t,e,n,l){if(t.tag!==5)throw Error(r(476));var a=qf(t).queue;Hf(t,a,e,F,n===null?Ey:function(){return Yf(t),n(l)})}function qf(t){var e=t.memoizedState;if(e!==null)return e;e={memoizedState:F,baseState:F,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:We,lastRenderedState:F},next:null};var n={};return e.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:We,lastRenderedState:n},next:null},t.memoizedState=e,t=t.alternate,t!==null&&(t.memoizedState=e),e}function Yf(t){var e=qf(t);e.next===null&&(e=t.alternate.memoizedState),Sa(t,e.next.queue,{},ye())}function Ws(){return Kt(La)}function kf(){return jt().memoizedState}function Xf(){return jt().memoizedState}function Ty(t){for(var e=t.return;e!==null;){switch(e.tag){case 24:case 3:var n=ye();t=Sn(n);var l=xn(e,t,n);l!==null&&(ue(l,e,n),pa(l,e,n)),e={cache:As()},t.payload=e;return}e=e.return}}function Ay(t,e,n){var l=ye();n={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},Hi(t)?Vf(e,n):(n=ms(t,e,n,l),n!==null&&(ue(n,t,l),Qf(n,e,l)))}function Gf(t,e,n){var l=ye();Sa(t,e,n,l)}function Sa(t,e,n,l){var a={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(Hi(t))Vf(e,a);else{var s=t.alternate;if(t.lanes===0&&(s===null||s.lanes===0)&&(s=e.lastRenderedReducer,s!==null))try{var o=e.lastRenderedState,h=s(o,n);if(a.hasEagerState=!0,a.eagerState=h,oe(h,o))return gi(t,e,a,0),Et===null&&vi(),!1}catch{}finally{}if(n=ms(t,e,a,l),n!==null)return ue(n,t,l),Qf(n,e,l),!0}return!1}function Fs(t,e,n,l){if(l={lane:2,revertLane:Nc(),gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},Hi(t)){if(e)throw Error(r(479))}else e=ms(t,n,l,2),e!==null&&ue(e,t,2)}function Hi(t){var e=t.alternate;return t===et||e!==null&&e===et}function Vf(t,e){Nl=Mi=!0;var n=t.pending;n===null?e.next=e:(e.next=n.next,n.next=e),t.pending=e}function Qf(t,e,n){if((n&4194048)!==0){var l=e.lanes;l&=t.pendingLanes,n|=l,e.lanes=n,Jr(t,n)}}var xa={readContext:Kt,use:ji,useCallback:zt,useContext:zt,useEffect:zt,useImperativeHandle:zt,useLayoutEffect:zt,useInsertionEffect:zt,useMemo:zt,useReducer:zt,useRef:zt,useState:zt,useDebugValue:zt,useDeferredValue:zt,useTransition:zt,useSyncExternalStore:zt,useId:zt,useHostTransitionStatus:zt,useFormState:zt,useActionState:zt,useOptimistic:zt,useMemoCache:zt,useCacheRefresh:zt};xa.useEffectEvent=zt;var Zf={readContext:Kt,use:ji,useCallback:function(t,e){return It().memoizedState=[t,e===void 0?null:e],t},useContext:Kt,useEffect:Nf,useImperativeHandle:function(t,e,n){n=n!=null?n.concat([t]):null,Bi(4194308,4,wf.bind(null,e,t),n)},useLayoutEffect:function(t,e){return Bi(4194308,4,t,e)},useInsertionEffect:function(t,e){Bi(4,2,t,e)},useMemo:function(t,e){var n=It();e=e===void 0?null:e;var l=t();if(tl){hn(!0);try{t()}finally{hn(!1)}}return n.memoizedState=[l,e],l},useReducer:function(t,e,n){var l=It();if(n!==void 0){var a=n(e);if(tl){hn(!0);try{n(e)}finally{hn(!1)}}}else a=e;return l.memoizedState=l.baseState=a,t={pending:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:a},l.queue=t,t=t.dispatch=Ay.bind(null,et,t),[l.memoizedState,t]},useRef:function(t){var e=It();return t={current:t},e.memoizedState=t},useState:function(t){t=Vs(t);var e=t.queue,n=Gf.bind(null,et,e);return e.dispatch=n,[t.memoizedState,n]},useDebugValue:Ks,useDeferredValue:function(t,e){var n=It();return Js(n,t,e)},useTransition:function(){var t=Vs(!1);return t=Hf.bind(null,et,t.queue,!0,!1),It().memoizedState=t,[!1,t]},useSyncExternalStore:function(t,e,n){var l=et,a=It();if(ct){if(n===void 0)throw Error(r(407));n=n()}else{if(n=e(),Et===null)throw Error(r(349));(ut&127)!==0||df(l,e,n)}a.memoizedState=n;var s={value:n,getSnapshot:e};return a.queue=s,Nf(pf.bind(null,l,s,t),[t]),l.flags|=2048,Ml(9,{destroy:void 0},mf.bind(null,l,s,n,e),null),n},useId:function(){var t=It(),e=Et.identifierPrefix;if(ct){var n=Ue,l=je;n=(l&~(1<<32-re(l)-1)).toString(32)+n,e="_"+e+"R_"+n,n=Di++,0<\/script>",s=s.removeChild(s.firstChild);break;case"select":s=typeof l.is=="string"?o.createElement("select",{is:l.is}):o.createElement("select"),l.multiple?s.multiple=!0:l.size&&(s.size=l.size);break;default:s=typeof l.is=="string"?o.createElement(a,{is:l.is}):o.createElement(a)}}s[Qt]=e,s[te]=l;t:for(o=e.child;o!==null;){if(o.tag===5||o.tag===6)s.appendChild(o.stateNode);else if(o.tag!==4&&o.tag!==27&&o.child!==null){o.child.return=o,o=o.child;continue}if(o===e)break t;for(;o.sibling===null;){if(o.return===null||o.return===e)break t;o=o.return}o.sibling.return=o.return,o=o.sibling}e.stateNode=s;t:switch($t(s,a,l),a){case"button":case"input":case"select":case"textarea":l=!!l.autoFocus;break t;case"img":l=!0;break t;default:l=!1}l&&Pe(e)}}return Ct(e),fc(e,e.type,t===null?null:t.memoizedProps,e.pendingProps,n),null;case 6:if(t&&e.stateNode!=null)t.memoizedProps!==l&&Pe(e);else{if(typeof l!="string"&&e.stateNode===null)throw Error(r(166));if(t=lt.current,_l(e)){if(t=e.stateNode,n=e.memoizedProps,l=null,a=Zt,a!==null)switch(a.tag){case 27:case 5:l=a.memoizedProps}t[Qt]=e,t=!!(t.nodeValue===n||l!==null&&l.suppressHydrationWarning===!0||fd(t.nodeValue,n)),t||vn(e,!0)}else t=au(t).createTextNode(l),t[Qt]=e,e.stateNode=t}return Ct(e),null;case 31:if(n=e.memoizedState,t===null||t.memoizedState!==null){if(l=_l(e),n!==null){if(t===null){if(!l)throw Error(r(318));if(t=e.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(r(557));t[Qt]=e}else Kn(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;Ct(e),t=!1}else n=xs(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=n),t=!0;if(!t)return e.flags&256?(de(e),e):(de(e),null);if((e.flags&128)!==0)throw Error(r(558))}return Ct(e),null;case 13:if(l=e.memoizedState,t===null||t.memoizedState!==null&&t.memoizedState.dehydrated!==null){if(a=_l(e),l!==null&&l.dehydrated!==null){if(t===null){if(!a)throw Error(r(318));if(a=e.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(r(317));a[Qt]=e}else Kn(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;Ct(e),a=!1}else a=xs(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=a),a=!0;if(!a)return e.flags&256?(de(e),e):(de(e),null)}return de(e),(e.flags&128)!==0?(e.lanes=n,e):(n=l!==null,t=t!==null&&t.memoizedState!==null,n&&(l=e.child,a=null,l.alternate!==null&&l.alternate.memoizedState!==null&&l.alternate.memoizedState.cachePool!==null&&(a=l.alternate.memoizedState.cachePool.pool),s=null,l.memoizedState!==null&&l.memoizedState.cachePool!==null&&(s=l.memoizedState.cachePool.pool),s!==a&&(l.flags|=2048)),n!==t&&n&&(e.child.flags|=8192),Gi(e,e.updateQueue),Ct(e),null);case 4:return Dt(),t===null&&wc(e.stateNode.containerInfo),Ct(e),null;case 10:return Je(e.type),Ct(e),null;case 19:if(B(wt),l=e.memoizedState,l===null)return Ct(e),null;if(a=(e.flags&128)!==0,s=l.rendering,s===null)if(a)Ea(l,!1);else{if(Mt!==0||t!==null&&(t.flags&128)!==0)for(t=e.child;t!==null;){if(s=zi(t),s!==null){for(e.flags|=128,Ea(l,!1),t=s.updateQueue,e.updateQueue=t,Gi(e,t),e.subtreeFlags=0,t=n,n=e.child;n!==null;)Xo(n,t),n=n.sibling;return G(wt,wt.current&1|2),ct&&Ze(e,l.treeForkCount),e.child}t=t.sibling}l.tail!==null&&se()>Ji&&(e.flags|=128,a=!0,Ea(l,!1),e.lanes=4194304)}else{if(!a)if(t=zi(s),t!==null){if(e.flags|=128,a=!0,t=t.updateQueue,e.updateQueue=t,Gi(e,t),Ea(l,!0),l.tail===null&&l.tailMode==="hidden"&&!s.alternate&&!ct)return Ct(e),null}else 2*se()-l.renderingStartTime>Ji&&n!==536870912&&(e.flags|=128,a=!0,Ea(l,!1),e.lanes=4194304);l.isBackwards?(s.sibling=e.child,e.child=s):(t=l.last,t!==null?t.sibling=s:e.child=s,l.last=s)}return l.tail!==null?(t=l.tail,l.rendering=t,l.tail=t.sibling,l.renderingStartTime=se(),t.sibling=null,n=wt.current,G(wt,a?n&1|2:n&1),ct&&Ze(e,l.treeForkCount),t):(Ct(e),null);case 22:case 23:return de(e),js(),l=e.memoizedState!==null,t!==null?t.memoizedState!==null!==l&&(e.flags|=8192):l&&(e.flags|=8192),l?(n&536870912)!==0&&(e.flags&128)===0&&(Ct(e),e.subtreeFlags&6&&(e.flags|=8192)):Ct(e),n=e.updateQueue,n!==null&&Gi(e,n.retryQueue),n=null,t!==null&&t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(n=t.memoizedState.cachePool.pool),l=null,e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(l=e.memoizedState.cachePool.pool),l!==n&&(e.flags|=2048),t!==null&&B(Wn),null;case 24:return n=null,t!==null&&(n=t.memoizedState.cache),e.memoizedState.cache!==n&&(e.flags|=2048),Je(Bt),Ct(e),null;case 25:return null;case 30:return null}throw Error(r(156,e.tag))}function zy(t,e){switch(bs(e),e.tag){case 1:return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 3:return Je(Bt),Dt(),t=e.flags,(t&65536)!==0&&(t&128)===0?(e.flags=t&-65537|128,e):null;case 26:case 27:case 5:return ti(e),null;case 31:if(e.memoizedState!==null){if(de(e),e.alternate===null)throw Error(r(340));Kn()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 13:if(de(e),t=e.memoizedState,t!==null&&t.dehydrated!==null){if(e.alternate===null)throw Error(r(340));Kn()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 19:return B(wt),null;case 4:return Dt(),null;case 10:return Je(e.type),null;case 22:case 23:return de(e),js(),t!==null&&B(Wn),t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 24:return Je(Bt),null;case 25:return null;default:return null}}function yh(t,e){switch(bs(e),e.tag){case 3:Je(Bt),Dt();break;case 26:case 27:case 5:ti(e);break;case 4:Dt();break;case 31:e.memoizedState!==null&&de(e);break;case 13:de(e);break;case 19:B(wt);break;case 10:Je(e.type);break;case 22:case 23:de(e),js(),t!==null&&B(Wn);break;case 24:Je(Bt)}}function Ta(t,e){try{var n=e.updateQueue,l=n!==null?n.lastEffect:null;if(l!==null){var a=l.next;n=a;do{if((n.tag&t)===t){l=void 0;var s=n.create,o=n.inst;l=s(),o.destroy=l}n=n.next}while(n!==a)}}catch(h){pt(e,e.return,h)}}function Tn(t,e,n){try{var l=e.updateQueue,a=l!==null?l.lastEffect:null;if(a!==null){var s=a.next;l=s;do{if((l.tag&t)===t){var o=l.inst,h=o.destroy;if(h!==void 0){o.destroy=void 0,a=e;var v=n,O=h;try{O()}catch(D){pt(a,v,D)}}}l=l.next}while(l!==s)}}catch(D){pt(e,e.return,D)}}function vh(t){var e=t.updateQueue;if(e!==null){var n=t.stateNode;try{sf(e,n)}catch(l){pt(t,t.return,l)}}}function gh(t,e,n){n.props=el(t.type,t.memoizedProps),n.state=t.memoizedState;try{n.componentWillUnmount()}catch(l){pt(t,e,l)}}function Aa(t,e){try{var n=t.ref;if(n!==null){switch(t.tag){case 26:case 27:case 5:var l=t.stateNode;break;case 30:l=t.stateNode;break;default:l=t.stateNode}typeof n=="function"?t.refCleanup=n(l):n.current=l}}catch(a){pt(t,e,a)}}function Be(t,e){var n=t.ref,l=t.refCleanup;if(n!==null)if(typeof l=="function")try{l()}catch(a){pt(t,e,a)}finally{t.refCleanup=null,t=t.alternate,t!=null&&(t.refCleanup=null)}else if(typeof n=="function")try{n(null)}catch(a){pt(t,e,a)}else n.current=null}function bh(t){var e=t.type,n=t.memoizedProps,l=t.stateNode;try{t:switch(e){case"button":case"input":case"select":case"textarea":n.autoFocus&&l.focus();break t;case"img":n.src?l.src=n.src:n.srcSet&&(l.srcset=n.srcSet)}}catch(a){pt(t,t.return,a)}}function hc(t,e,n){try{var l=t.stateNode;Py(l,t.type,n,e),l[te]=e}catch(a){pt(t,t.return,a)}}function Sh(t){return t.tag===5||t.tag===3||t.tag===26||t.tag===27&&Mn(t.type)||t.tag===4}function dc(t){t:for(;;){for(;t.sibling===null;){if(t.return===null||Sh(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.tag===27&&Mn(t.type)||t.flags&2||t.child===null||t.tag===4)continue t;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function mc(t,e,n){var l=t.tag;if(l===5||l===6)t=t.stateNode,e?(n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n).insertBefore(t,e):(e=n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n,e.appendChild(t),n=n._reactRootContainer,n!=null||e.onclick!==null||(e.onclick=Ge));else if(l!==4&&(l===27&&Mn(t.type)&&(n=t.stateNode,e=null),t=t.child,t!==null))for(mc(t,e,n),t=t.sibling;t!==null;)mc(t,e,n),t=t.sibling}function Vi(t,e,n){var l=t.tag;if(l===5||l===6)t=t.stateNode,e?n.insertBefore(t,e):n.appendChild(t);else if(l!==4&&(l===27&&Mn(t.type)&&(n=t.stateNode),t=t.child,t!==null))for(Vi(t,e,n),t=t.sibling;t!==null;)Vi(t,e,n),t=t.sibling}function xh(t){var e=t.stateNode,n=t.memoizedProps;try{for(var l=t.type,a=e.attributes;a.length;)e.removeAttributeNode(a[0]);$t(e,l,n),e[Qt]=t,e[te]=n}catch(s){pt(t,t.return,s)}}var Ie=!1,qt=!1,pc=!1,_h=typeof WeakSet=="function"?WeakSet:Set,Vt=null;function My(t,e){if(t=t.containerInfo,Bc=fu,t=wo(t),cs(t)){if("selectionStart"in t)var n={start:t.selectionStart,end:t.selectionEnd};else t:{n=(n=t.ownerDocument)&&n.defaultView||window;var l=n.getSelection&&n.getSelection();if(l&&l.rangeCount!==0){n=l.anchorNode;var a=l.anchorOffset,s=l.focusNode;l=l.focusOffset;try{n.nodeType,s.nodeType}catch{n=null;break t}var o=0,h=-1,v=-1,O=0,D=0,U=t,N=null;e:for(;;){for(var M;U!==n||a!==0&&U.nodeType!==3||(h=o+a),U!==s||l!==0&&U.nodeType!==3||(v=o+l),U.nodeType===3&&(o+=U.nodeValue.length),(M=U.firstChild)!==null;)N=U,U=M;for(;;){if(U===t)break e;if(N===n&&++O===a&&(h=o),N===s&&++D===l&&(v=o),(M=U.nextSibling)!==null)break;U=N,N=U.parentNode}U=M}n=h===-1||v===-1?null:{start:h,end:v}}else n=null}n=n||{start:0,end:0}}else n=null;for(Lc={focusedElem:t,selectionRange:n},fu=!1,Vt=e;Vt!==null;)if(e=Vt,t=e.child,(e.subtreeFlags&1028)!==0&&t!==null)t.return=e,Vt=t;else for(;Vt!==null;){switch(e=Vt,s=e.alternate,t=e.flags,e.tag){case 0:if((t&4)!==0&&(t=e.updateQueue,t=t!==null?t.events:null,t!==null))for(n=0;n title"))),$t(s,l,n),s[Qt]=t,Gt(s),l=s;break t;case"link":var o=Od("link","href",a).get(l+(n.href||""));if(o){for(var h=0;hSt&&(o=St,St=W,W=o);var A=Mo(h,W),x=Mo(h,St);if(A&&x&&(M.rangeCount!==1||M.anchorNode!==A.node||M.anchorOffset!==A.offset||M.focusNode!==x.node||M.focusOffset!==x.offset)){var R=U.createRange();R.setStart(A.node,A.offset),M.removeAllRanges(),W>St?(M.addRange(R),M.extend(x.node,x.offset)):(R.setEnd(x.node,x.offset),M.addRange(R))}}}}for(U=[],M=h;M=M.parentNode;)M.nodeType===1&&U.push({element:M,left:M.scrollLeft,top:M.scrollTop});for(typeof h.focus=="function"&&h.focus(),h=0;hn?32:n,w.T=null,n=_c,_c=null;var s=On,o=an;if(kt=0,Bl=On=null,an=0,(ht&6)!==0)throw Error(r(331));var h=ht;if(ht|=4,wh(s.current),zh(s,s.current,o,n),ht=h,Ma(0,!1),ce&&typeof ce.onPostCommitFiberRoot=="function")try{ce.onPostCommitFiberRoot($l,s)}catch{}return!0}finally{X.p=a,w.T=l,Fh(t,e)}}function Ih(t,e,n){e=Se(n,e),e=ec(t.stateNode,e,2),t=xn(t,e,2),t!==null&&(Fl(t,2),Le(t))}function pt(t,e,n){if(t.tag===3)Ih(t,t,n);else for(;e!==null;){if(e.tag===3){Ih(e,t,n);break}else if(e.tag===1){var l=e.stateNode;if(typeof e.type.getDerivedStateFromError=="function"||typeof l.componentDidCatch=="function"&&(Rn===null||!Rn.has(l))){t=Se(n,t),n=th(2),l=xn(e,n,2),l!==null&&(eh(n,l,e,t),Fl(l,2),Le(l));break}}e=e.return}}function Cc(t,e,n){var l=t.pingCache;if(l===null){l=t.pingCache=new jy;var a=new Set;l.set(e,a)}else a=l.get(e),a===void 0&&(a=new Set,l.set(e,a));a.has(n)||(gc=!0,a.add(n),t=qy.bind(null,t,e,n),e.then(t,t))}function qy(t,e,n){var l=t.pingCache;l!==null&&l.delete(e),t.pingedLanes|=t.suspendedLanes&n,t.warmLanes&=~n,Et===t&&(ut&n)===n&&(Mt===4||Mt===3&&(ut&62914560)===ut&&300>se()-Ki?(ht&2)===0&&Ll(t,0):bc|=n,Ul===ut&&(Ul=0)),Le(t)}function td(t,e){e===0&&(e=Zr()),t=Qn(t,e),t!==null&&(Fl(t,e),Le(t))}function Yy(t){var e=t.memoizedState,n=0;e!==null&&(n=e.retryLane),td(t,n)}function ky(t,e){var n=0;switch(t.tag){case 31:case 13:var l=t.stateNode,a=t.memoizedState;a!==null&&(n=a.retryLane);break;case 19:l=t.stateNode;break;case 22:l=t.stateNode._retryCache;break;default:throw Error(r(314))}l!==null&&l.delete(e),td(t,n)}function Xy(t,e){return qu(t,e)}var tu=null,ql=null,Rc=!1,eu=!1,Oc=!1,zn=0;function Le(t){t!==ql&&t.next===null&&(ql===null?tu=ql=t:ql=ql.next=t),eu=!0,Rc||(Rc=!0,Vy())}function Ma(t,e){if(!Oc&&eu){Oc=!0;do for(var n=!1,l=tu;l!==null;){if(t!==0){var a=l.pendingLanes;if(a===0)var s=0;else{var o=l.suspendedLanes,h=l.pingedLanes;s=(1<<31-re(42|t)+1)-1,s&=a&~(o&~h),s=s&201326741?s&201326741|1:s?s|2:0}s!==0&&(n=!0,ad(l,s))}else s=ut,s=ii(l,l===Et?s:0,l.cancelPendingCommit!==null||l.timeoutHandle!==-1),(s&3)===0||Wl(l,s)||(n=!0,ad(l,s));l=l.next}while(n);Oc=!1}}function Gy(){ed()}function ed(){eu=Rc=!1;var t=0;zn!==0&&t0()&&(t=zn);for(var e=se(),n=null,l=tu;l!==null;){var a=l.next,s=nd(l,e);s===0?(l.next=null,n===null?tu=a:n.next=a,a===null&&(ql=n)):(n=l,(t!==0||(s&3)!==0)&&(eu=!0)),l=a}kt!==0&&kt!==5||Ma(t),zn!==0&&(zn=0)}function nd(t,e){for(var n=t.suspendedLanes,l=t.pingedLanes,a=t.expirationTimes,s=t.pendingLanes&-62914561;0h)break;var D=v.transferSize,U=v.initiatorType;D&&hd(U)&&(v=v.responseEnd,o+=D*(v"u"?null:document;function Td(t,e,n){var l=Yl;if(l&&typeof e=="string"&&e){var a=ge(e);a='link[rel="'+t+'"][href="'+a+'"]',typeof n=="string"&&(a+='[crossorigin="'+n+'"]'),Ed.has(a)||(Ed.add(a),t={rel:t,crossOrigin:n,href:e},l.querySelector(a)===null&&(e=l.createElement("link"),$t(e,"link",t),Gt(e),l.head.appendChild(e)))}}function r0(t){un.D(t),Td("dns-prefetch",t,null)}function o0(t,e){un.C(t,e),Td("preconnect",t,e)}function f0(t,e,n){un.L(t,e,n);var l=Yl;if(l&&t&&e){var a='link[rel="preload"][as="'+ge(e)+'"]';e==="image"&&n&&n.imageSrcSet?(a+='[imagesrcset="'+ge(n.imageSrcSet)+'"]',typeof n.imageSizes=="string"&&(a+='[imagesizes="'+ge(n.imageSizes)+'"]')):a+='[href="'+ge(t)+'"]';var s=a;switch(e){case"style":s=kl(t);break;case"script":s=Xl(t)}Ce.has(s)||(t=S({rel:"preload",href:e==="image"&&n&&n.imageSrcSet?void 0:t,as:e},n),Ce.set(s,t),l.querySelector(a)!==null||e==="style"&&l.querySelector(Ua(s))||e==="script"&&l.querySelector(Ba(s))||(e=l.createElement("link"),$t(e,"link",t),Gt(e),l.head.appendChild(e)))}}function h0(t,e){un.m(t,e);var n=Yl;if(n&&t){var l=e&&typeof e.as=="string"?e.as:"script",a='link[rel="modulepreload"][as="'+ge(l)+'"][href="'+ge(t)+'"]',s=a;switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":s=Xl(t)}if(!Ce.has(s)&&(t=S({rel:"modulepreload",href:t},e),Ce.set(s,t),n.querySelector(a)===null)){switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(n.querySelector(Ba(s)))return}l=n.createElement("link"),$t(l,"link",t),Gt(l),n.head.appendChild(l)}}}function d0(t,e,n){un.S(t,e,n);var l=Yl;if(l&&t){var a=rl(l).hoistableStyles,s=kl(t);e=e||"default";var o=a.get(s);if(!o){var h={loading:0,preload:null};if(o=l.querySelector(Ua(s)))h.loading=5;else{t=S({rel:"stylesheet",href:t,"data-precedence":e},n),(n=Ce.get(s))&&Vc(t,n);var v=o=l.createElement("link");Gt(v),$t(v,"link",t),v._p=new Promise(function(O,D){v.onload=O,v.onerror=D}),v.addEventListener("load",function(){h.loading|=1}),v.addEventListener("error",function(){h.loading|=2}),h.loading|=4,uu(o,e,l)}o={type:"stylesheet",instance:o,count:1,state:h},a.set(s,o)}}}function m0(t,e){un.X(t,e);var n=Yl;if(n&&t){var l=rl(n).hoistableScripts,a=Xl(t),s=l.get(a);s||(s=n.querySelector(Ba(a)),s||(t=S({src:t,async:!0},e),(e=Ce.get(a))&&Qc(t,e),s=n.createElement("script"),Gt(s),$t(s,"link",t),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function p0(t,e){un.M(t,e);var n=Yl;if(n&&t){var l=rl(n).hoistableScripts,a=Xl(t),s=l.get(a);s||(s=n.querySelector(Ba(a)),s||(t=S({src:t,async:!0,type:"module"},e),(e=Ce.get(a))&&Qc(t,e),s=n.createElement("script"),Gt(s),$t(s,"link",t),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function Ad(t,e,n,l){var a=(a=lt.current)?iu(a):null;if(!a)throw Error(r(446));switch(t){case"meta":case"title":return null;case"style":return typeof n.precedence=="string"&&typeof n.href=="string"?(e=kl(n.href),n=rl(a).hoistableStyles,l=n.get(e),l||(l={type:"style",instance:null,count:0,state:null},n.set(e,l)),l):{type:"void",instance:null,count:0,state:null};case"link":if(n.rel==="stylesheet"&&typeof n.href=="string"&&typeof n.precedence=="string"){t=kl(n.href);var s=rl(a).hoistableStyles,o=s.get(t);if(o||(a=a.ownerDocument||a,o={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},s.set(t,o),(s=a.querySelector(Ua(t)))&&!s._p&&(o.instance=s,o.state.loading=5),Ce.has(t)||(n={rel:"preload",as:"style",href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},Ce.set(t,n),s||y0(a,t,n,o.state))),e&&l===null)throw Error(r(528,""));return o}if(e&&l!==null)throw Error(r(529,""));return null;case"script":return e=n.async,n=n.src,typeof n=="string"&&e&&typeof e!="function"&&typeof e!="symbol"?(e=Xl(n),n=rl(a).hoistableScripts,l=n.get(e),l||(l={type:"script",instance:null,count:0,state:null},n.set(e,l)),l):{type:"void",instance:null,count:0,state:null};default:throw Error(r(444,t))}}function kl(t){return'href="'+ge(t)+'"'}function Ua(t){return'link[rel="stylesheet"]['+t+"]"}function Cd(t){return S({},t,{"data-precedence":t.precedence,precedence:null})}function y0(t,e,n,l){t.querySelector('link[rel="preload"][as="style"]['+e+"]")?l.loading=1:(e=t.createElement("link"),l.preload=e,e.addEventListener("load",function(){return l.loading|=1}),e.addEventListener("error",function(){return l.loading|=2}),$t(e,"link",n),Gt(e),t.head.appendChild(e))}function Xl(t){return'[src="'+ge(t)+'"]'}function Ba(t){return"script[async]"+t}function Rd(t,e,n){if(e.count++,e.instance===null)switch(e.type){case"style":var l=t.querySelector('style[data-href~="'+ge(n.href)+'"]');if(l)return e.instance=l,Gt(l),l;var a=S({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return l=(t.ownerDocument||t).createElement("style"),Gt(l),$t(l,"style",a),uu(l,n.precedence,t),e.instance=l;case"stylesheet":a=kl(n.href);var s=t.querySelector(Ua(a));if(s)return e.state.loading|=4,e.instance=s,Gt(s),s;l=Cd(n),(a=Ce.get(a))&&Vc(l,a),s=(t.ownerDocument||t).createElement("link"),Gt(s);var o=s;return o._p=new Promise(function(h,v){o.onload=h,o.onerror=v}),$t(s,"link",l),e.state.loading|=4,uu(s,n.precedence,t),e.instance=s;case"script":return s=Xl(n.src),(a=t.querySelector(Ba(s)))?(e.instance=a,Gt(a),a):(l=n,(a=Ce.get(s))&&(l=S({},n),Qc(l,a)),t=t.ownerDocument||t,a=t.createElement("script"),Gt(a),$t(a,"link",l),t.head.appendChild(a),e.instance=a);case"void":return null;default:throw Error(r(443,e.type))}else e.type==="stylesheet"&&(e.state.loading&4)===0&&(l=e.instance,e.state.loading|=4,uu(l,n.precedence,t));return e.instance}function uu(t,e,n){for(var l=n.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=l.length?l[l.length-1]:null,s=a,o=0;o title"):null)}function v0(t,e,n){if(n===1||e.itemProp!=null)return!1;switch(t){case"meta":case"title":return!0;case"style":if(typeof e.precedence!="string"||typeof e.href!="string"||e.href==="")break;return!0;case"link":if(typeof e.rel!="string"||typeof e.href!="string"||e.href===""||e.onLoad||e.onError)break;switch(e.rel){case"stylesheet":return t=e.disabled,typeof e.precedence=="string"&&t==null;default:return!0}case"script":if(e.async&&typeof e.async!="function"&&typeof e.async!="symbol"&&!e.onLoad&&!e.onError&&e.src&&typeof e.src=="string")return!0}return!1}function zd(t){return!(t.type==="stylesheet"&&(t.state.loading&3)===0)}function g0(t,e,n,l){if(n.type==="stylesheet"&&(typeof l.media!="string"||matchMedia(l.media).matches!==!1)&&(n.state.loading&4)===0){if(n.instance===null){var a=kl(l.href),s=e.querySelector(Ua(a));if(s){e=s._p,e!==null&&typeof e=="object"&&typeof e.then=="function"&&(t.count++,t=cu.bind(t),e.then(t,t)),n.state.loading|=4,n.instance=s,Gt(s);return}s=e.ownerDocument||e,l=Cd(l),(a=Ce.get(a))&&Vc(l,a),s=s.createElement("link"),Gt(s);var o=s;o._p=new Promise(function(h,v){o.onload=h,o.onerror=v}),$t(s,"link",l),n.instance=s}t.stylesheets===null&&(t.stylesheets=new Map),t.stylesheets.set(n,e),(e=n.state.preload)&&(n.state.loading&3)===0&&(t.count++,n=cu.bind(t),e.addEventListener("load",n),e.addEventListener("error",n))}}var Zc=0;function b0(t,e){return t.stylesheets&&t.count===0&&ou(t,t.stylesheets),0Zc?50:800)+e);return t.unsuspend=n,function(){t.unsuspend=null,clearTimeout(l),clearTimeout(a)}}:null}function cu(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)ou(this,this.stylesheets);else if(this.unsuspend){var t=this.unsuspend;this.unsuspend=null,t()}}}var ru=null;function ou(t,e){t.stylesheets=null,t.unsuspend!==null&&(t.count++,ru=new Map,e.forEach(S0,t),ru=null,cu.call(t))}function S0(t,e){if(!(e.state.loading&4)){var n=ru.get(t);if(n)var l=n.get(null);else{n=new Map,ru.set(t,n);for(var a=t.querySelectorAll("link[data-precedence],style[data-precedence]"),s=0;s"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(u)}catch(i){console.error(i)}}return u(),er.exports=B0(),er.exports}var H0=L0();var tm="popstate";function q0(u={}){function i(r,f){let{pathname:d,search:m,hash:b}=r.location;return hr("",{pathname:d,search:m,hash:b},f.state&&f.state.usr||null,f.state&&f.state.key||"default")}function c(r,f){return typeof f=="string"?f:Wa(f)}return k0(i,c,null,u)}function Nt(u,i){if(u===!1||u===null||typeof u>"u")throw new Error(i)}function we(u,i){if(!u){typeof console<"u"&&console.warn(i);try{throw new Error(i)}catch{}}}function Y0(){return Math.random().toString(36).substring(2,10)}function em(u,i){return{usr:u.state,key:u.key,idx:i}}function hr(u,i,c=null,r){return{pathname:typeof u=="string"?u:u.pathname,search:"",hash:"",...typeof i=="string"?Ql(i):i,state:c,key:i&&i.key||r||Y0()}}function Wa({pathname:u="/",search:i="",hash:c=""}){return i&&i!=="?"&&(u+=i.charAt(0)==="?"?i:"?"+i),c&&c!=="#"&&(u+=c.charAt(0)==="#"?c:"#"+c),u}function Ql(u){let i={};if(u){let c=u.indexOf("#");c>=0&&(i.hash=u.substring(c),u=u.substring(0,c));let r=u.indexOf("?");r>=0&&(i.search=u.substring(r),u=u.substring(0,r)),u&&(i.pathname=u)}return i}function k0(u,i,c,r={}){let{window:f=document.defaultView,v5Compat:d=!1}=r,m=f.history,b="POP",p=null,y=E();y==null&&(y=0,m.replaceState({...m.state,idx:y},""));function E(){return(m.state||{idx:null}).idx}function S(){b="POP";let Y=E(),L=Y==null?null:Y-y;y=Y,p&&p({action:b,location:k.location,delta:L})}function C(Y,L){b="PUSH";let q=hr(k.location,Y,L);y=E()+1;let Q=em(q,y),P=k.createHref(q);try{m.pushState(Q,"",P)}catch(yt){if(yt instanceof DOMException&&yt.name==="DataCloneError")throw yt;f.location.assign(P)}d&&p&&p({action:b,location:k.location,delta:1})}function z(Y,L){b="REPLACE";let q=hr(k.location,Y,L);y=E();let Q=em(q,y),P=k.createHref(q);m.replaceState(Q,"",P),d&&p&&p({action:b,location:k.location,delta:0})}function H(Y){return X0(Y)}let k={get action(){return b},get location(){return u(f,m)},listen(Y){if(p)throw new Error("A history only accepts one active listener");return f.addEventListener(tm,S),p=Y,()=>{f.removeEventListener(tm,S),p=null}},createHref(Y){return i(f,Y)},createURL:H,encodeLocation(Y){let L=H(Y);return{pathname:L.pathname,search:L.search,hash:L.hash}},push:C,replace:z,go(Y){return m.go(Y)}};return k}function X0(u,i=!1){let c="http://localhost";typeof window<"u"&&(c=window.location.origin!=="null"?window.location.origin:window.location.href),Nt(c,"No window.location.(origin|href) available to create URL");let r=typeof u=="string"?u:Wa(u);return r=r.replace(/ $/,"%20"),!i&&r.startsWith("//")&&(r=c+r),new URL(r,c)}function Sm(u,i,c="/"){return G0(u,i,c,!1)}function G0(u,i,c,r){let f=typeof i=="string"?Ql(i):i,d=rn(f.pathname||"/",c);if(d==null)return null;let m=xm(u);V0(m);let b=null;for(let p=0;b==null&&p{let E={relativePath:y===void 0?m.path||"":y,caseSensitive:m.caseSensitive===!0,childrenIndex:b,route:m};if(E.relativePath.startsWith("/")){if(!E.relativePath.startsWith(r)&&p)return;Nt(E.relativePath.startsWith(r),`Absolute route path "${E.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),E.relativePath=E.relativePath.slice(r.length)}let S=cn([r,E.relativePath]),C=c.concat(E);m.children&&m.children.length>0&&(Nt(m.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${S}".`),xm(m.children,i,C,S,p)),!(m.path==null&&!m.index)&&i.push({path:S,score:F0(S,m.index),routesMeta:C})};return u.forEach((m,b)=>{if(m.path===""||!m.path?.includes("?"))d(m,b);else for(let p of _m(m.path))d(m,b,!0,p)}),i}function _m(u){let i=u.split("/");if(i.length===0)return[];let[c,...r]=i,f=c.endsWith("?"),d=c.replace(/\?$/,"");if(r.length===0)return f?[d,""]:[d];let m=_m(r.join("/")),b=[];return b.push(...m.map(p=>p===""?d:[d,p].join("/"))),f&&b.push(...m),b.map(p=>u.startsWith("/")&&p===""?"/":p)}function V0(u){u.sort((i,c)=>i.score!==c.score?c.score-i.score:P0(i.routesMeta.map(r=>r.childrenIndex),c.routesMeta.map(r=>r.childrenIndex)))}var Q0=/^:[\w-]+$/,Z0=3,K0=2,J0=1,$0=10,W0=-2,nm=u=>u==="*";function F0(u,i){let c=u.split("/"),r=c.length;return c.some(nm)&&(r+=W0),i&&(r+=K0),c.filter(f=>!nm(f)).reduce((f,d)=>f+(Q0.test(d)?Z0:d===""?J0:$0),r)}function P0(u,i){return u.length===i.length&&u.slice(0,-1).every((r,f)=>r===i[f])?u[u.length-1]-i[i.length-1]:0}function I0(u,i,c=!1){let{routesMeta:r}=u,f={},d="/",m=[];for(let b=0;b{if(E==="*"){let H=b[C]||"";m=d.slice(0,d.length-H.length).replace(/(.)\/+$/,"$1")}const z=b[C];return S&&!z?y[E]=void 0:y[E]=(z||"").replace(/%2F/g,"/"),y},{}),pathname:d,pathnameBase:m,pattern:u}}function tv(u,i=!1,c=!0){we(u==="*"||!u.endsWith("*")||u.endsWith("/*"),`Route path "${u}" will be treated as if it were "${u.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${u.replace(/\*$/,"/*")}".`);let r=[],f="^"+u.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(m,b,p)=>(r.push({paramName:b,isOptional:p!=null}),p?"/?([^\\/]+)?":"/([^\\/]+)")).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return u.endsWith("*")?(r.push({paramName:"*"}),f+=u==="*"||u==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):c?f+="\\/*$":u!==""&&u!=="/"&&(f+="(?:(?=\\/|$))"),[new RegExp(f,i?void 0:"i"),r]}function ev(u){try{return u.split("/").map(i=>decodeURIComponent(i).replace(/\//g,"%2F")).join("/")}catch(i){return we(!1,`The URL path "${u}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${i}).`),u}}function rn(u,i){if(i==="/")return u;if(!u.toLowerCase().startsWith(i.toLowerCase()))return null;let c=i.endsWith("/")?i.length-1:i.length,r=u.charAt(c);return r&&r!=="/"?null:u.slice(c)||"/"}var nv=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,lv=u=>nv.test(u);function av(u,i="/"){let{pathname:c,search:r="",hash:f=""}=typeof u=="string"?Ql(u):u,d;if(c)if(lv(c))d=c;else{if(c.includes("//")){let m=c;c=c.replace(/\/\/+/g,"/"),we(!1,`Pathnames cannot have embedded double slashes - normalizing ${m} -> ${c}`)}c.startsWith("/")?d=lm(c.substring(1),"/"):d=lm(c,i)}else d=i;return{pathname:d,search:sv(r),hash:cv(f)}}function lm(u,i){let c=i.replace(/\/+$/,"").split("/");return u.split("/").forEach(f=>{f===".."?c.length>1&&c.pop():f!=="."&&c.push(f)}),c.length>1?c.join("/"):"/"}function ir(u,i,c,r){return`Cannot include a '${u}' character in a manually specified \`to.${i}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${c}\` field. Alternatively you may provide the full path as a string in and the router will parse it for you.`}function iv(u){return u.filter((i,c)=>c===0||i.route.path&&i.route.path.length>0)}function Em(u){let i=iv(u);return i.map((c,r)=>r===i.length-1?c.pathname:c.pathnameBase)}function Tm(u,i,c,r=!1){let f;typeof u=="string"?f=Ql(u):(f={...u},Nt(!f.pathname||!f.pathname.includes("?"),ir("?","pathname","search",f)),Nt(!f.pathname||!f.pathname.includes("#"),ir("#","pathname","hash",f)),Nt(!f.search||!f.search.includes("#"),ir("#","search","hash",f)));let d=u===""||f.pathname==="",m=d?"/":f.pathname,b;if(m==null)b=c;else{let S=i.length-1;if(!r&&m.startsWith("..")){let C=m.split("/");for(;C[0]==="..";)C.shift(),S-=1;f.pathname=C.join("/")}b=S>=0?i[S]:"/"}let p=av(f,b),y=m&&m!=="/"&&m.endsWith("/"),E=(d||m===".")&&c.endsWith("/");return!p.pathname.endsWith("/")&&(y||E)&&(p.pathname+="/"),p}var cn=u=>u.join("/").replace(/\/\/+/g,"/"),uv=u=>u.replace(/\/+$/,"").replace(/^\/*/,"/"),sv=u=>!u||u==="?"?"":u.startsWith("?")?u:"?"+u,cv=u=>!u||u==="#"?"":u.startsWith("#")?u:"#"+u;function rv(u){return u!=null&&typeof u.status=="number"&&typeof u.statusText=="string"&&typeof u.internal=="boolean"&&"data"in u}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var Am=["POST","PUT","PATCH","DELETE"];new Set(Am);var ov=["GET",...Am];new Set(ov);var Zl=T.createContext(null);Zl.displayName="DataRouter";var Nu=T.createContext(null);Nu.displayName="DataRouterState";T.createContext(!1);var Cm=T.createContext({isTransitioning:!1});Cm.displayName="ViewTransition";var fv=T.createContext(new Map);fv.displayName="Fetchers";var hv=T.createContext(null);hv.displayName="Await";var Ye=T.createContext(null);Ye.displayName="Navigation";var Fa=T.createContext(null);Fa.displayName="Location";var on=T.createContext({outlet:null,matches:[],isDataRoute:!1});on.displayName="Route";var xr=T.createContext(null);xr.displayName="RouteError";function dv(u,{relative:i}={}){Nt(Pa(),"useHref() may be used only in the context of a component.");let{basename:c,navigator:r}=T.useContext(Ye),{hash:f,pathname:d,search:m}=Ia(u,{relative:i}),b=d;return c!=="/"&&(b=d==="/"?c:cn([c,d])),r.createHref({pathname:b,search:m,hash:f})}function Pa(){return T.useContext(Fa)!=null}function il(){return Nt(Pa(),"useLocation() may be used only in the context of a component."),T.useContext(Fa).location}var Rm="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function Om(u){T.useContext(Ye).static||T.useLayoutEffect(u)}function mv(){let{isDataRoute:u}=T.useContext(on);return u?Rv():pv()}function pv(){Nt(Pa(),"useNavigate() may be used only in the context of a component.");let u=T.useContext(Zl),{basename:i,navigator:c}=T.useContext(Ye),{matches:r}=T.useContext(on),{pathname:f}=il(),d=JSON.stringify(Em(r)),m=T.useRef(!1);return Om(()=>{m.current=!0}),T.useCallback((p,y={})=>{if(we(m.current,Rm),!m.current)return;if(typeof p=="number"){c.go(p);return}let E=Tm(p,JSON.parse(d),f,y.relative==="path");u==null&&i!=="/"&&(E.pathname=E.pathname==="/"?i:cn([i,E.pathname])),(y.replace?c.replace:c.push)(E,y.state,y)},[i,c,d,f,u])}T.createContext(null);function Ia(u,{relative:i}={}){let{matches:c}=T.useContext(on),{pathname:r}=il(),f=JSON.stringify(Em(c));return T.useMemo(()=>Tm(u,JSON.parse(f),r,i==="path"),[u,f,r,i])}function yv(u,i){return Nm(u,i)}function Nm(u,i,c,r,f){Nt(Pa(),"useRoutes() may be used only in the context of a component.");let{navigator:d}=T.useContext(Ye),{matches:m}=T.useContext(on),b=m[m.length-1],p=b?b.params:{},y=b?b.pathname:"/",E=b?b.pathnameBase:"/",S=b&&b.route;{let q=S&&S.path||"";zm(y,!S||q.endsWith("*")||q.endsWith("*?"),`You rendered descendant (or called \`useRoutes()\`) at "${y}" (under ) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render. - -Please change the parent to .`)}let C=il(),z;if(i){let q=typeof i=="string"?Ql(i):i;Nt(E==="/"||q.pathname?.startsWith(E),`When overriding the location using \`\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${E}" but pathname "${q.pathname}" was given in the \`location\` prop.`),z=q}else z=C;let H=z.pathname||"/",k=H;if(E!=="/"){let q=E.replace(/^\//,"").split("/");k="/"+H.replace(/^\//,"").split("/").slice(q.length).join("/")}let Y=Sm(u,{pathname:k});we(S||Y!=null,`No routes matched location "${z.pathname}${z.search}${z.hash}" `),we(Y==null||Y[Y.length-1].route.element!==void 0||Y[Y.length-1].route.Component!==void 0||Y[Y.length-1].route.lazy!==void 0,`Matched leaf route at location "${z.pathname}${z.search}${z.hash}" does not have an element or Component. This means it will render an with a null value by default resulting in an "empty" page.`);let L=xv(Y&&Y.map(q=>Object.assign({},q,{params:Object.assign({},p,q.params),pathname:cn([E,d.encodeLocation?d.encodeLocation(q.pathname.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:q.pathname]),pathnameBase:q.pathnameBase==="/"?E:cn([E,d.encodeLocation?d.encodeLocation(q.pathnameBase.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:q.pathnameBase])})),m,c,r,f);return i&&L?T.createElement(Fa.Provider,{value:{location:{pathname:"/",search:"",hash:"",state:null,key:"default",...z},navigationType:"POP"}},L):L}function vv(){let u=Cv(),i=rv(u)?`${u.status} ${u.statusText}`:u instanceof Error?u.message:JSON.stringify(u),c=u instanceof Error?u.stack:null,r="rgba(200,200,200, 0.5)",f={padding:"0.5rem",backgroundColor:r},d={padding:"2px 4px",backgroundColor:r},m=null;return console.error("Error handled by React Router default ErrorBoundary:",u),m=T.createElement(T.Fragment,null,T.createElement("p",null,"💿 Hey developer 👋"),T.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",T.createElement("code",{style:d},"ErrorBoundary")," or"," ",T.createElement("code",{style:d},"errorElement")," prop on your route.")),T.createElement(T.Fragment,null,T.createElement("h2",null,"Unexpected Application Error!"),T.createElement("h3",{style:{fontStyle:"italic"}},i),c?T.createElement("pre",{style:f},c):null,m)}var gv=T.createElement(vv,null),bv=class extends T.Component{constructor(u){super(u),this.state={location:u.location,revalidation:u.revalidation,error:u.error}}static getDerivedStateFromError(u){return{error:u}}static getDerivedStateFromProps(u,i){return i.location!==u.location||i.revalidation!=="idle"&&u.revalidation==="idle"?{error:u.error,location:u.location,revalidation:u.revalidation}:{error:u.error!==void 0?u.error:i.error,location:i.location,revalidation:u.revalidation||i.revalidation}}componentDidCatch(u,i){this.props.onError?this.props.onError(u,i):console.error("React Router caught the following error during render",u)}render(){return this.state.error!==void 0?T.createElement(on.Provider,{value:this.props.routeContext},T.createElement(xr.Provider,{value:this.state.error,children:this.props.component})):this.props.children}};function Sv({routeContext:u,match:i,children:c}){let r=T.useContext(Zl);return r&&r.static&&r.staticContext&&(i.route.errorElement||i.route.ErrorBoundary)&&(r.staticContext._deepestRenderedBoundaryId=i.route.id),T.createElement(on.Provider,{value:u},c)}function xv(u,i=[],c=null,r=null,f=null){if(u==null){if(!c)return null;if(c.errors)u=c.matches;else if(i.length===0&&!c.initialized&&c.matches.length>0)u=c.matches;else return null}let d=u,m=c?.errors;if(m!=null){let E=d.findIndex(S=>S.route.id&&m?.[S.route.id]!==void 0);Nt(E>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(m).join(",")}`),d=d.slice(0,Math.min(d.length,E+1))}let b=!1,p=-1;if(c)for(let E=0;E=0?d=d.slice(0,p+1):d=[d[0]];break}}}let y=c&&r?(E,S)=>{r(E,{location:c.location,params:c.matches?.[0]?.params??{},errorInfo:S})}:void 0;return d.reduceRight((E,S,C)=>{let z,H=!1,k=null,Y=null;c&&(z=m&&S.route.id?m[S.route.id]:void 0,k=S.route.errorElement||gv,b&&(p<0&&C===0?(zm("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),H=!0,Y=null):p===C&&(H=!0,Y=S.route.hydrateFallbackElement||null)));let L=i.concat(d.slice(0,C+1)),q=()=>{let Q;return z?Q=k:H?Q=Y:S.route.Component?Q=T.createElement(S.route.Component,null):S.route.element?Q=S.route.element:Q=E,T.createElement(Sv,{match:S,routeContext:{outlet:E,matches:L,isDataRoute:c!=null},children:Q})};return c&&(S.route.ErrorBoundary||S.route.errorElement||C===0)?T.createElement(bv,{location:c.location,revalidation:c.revalidation,component:k,error:z,children:q(),routeContext:{outlet:null,matches:L,isDataRoute:!0},onError:y}):q()},null)}function _r(u){return`${u} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function _v(u){let i=T.useContext(Zl);return Nt(i,_r(u)),i}function Ev(u){let i=T.useContext(Nu);return Nt(i,_r(u)),i}function Tv(u){let i=T.useContext(on);return Nt(i,_r(u)),i}function Er(u){let i=Tv(u),c=i.matches[i.matches.length-1];return Nt(c.route.id,`${u} can only be used on routes that contain a unique "id"`),c.route.id}function Av(){return Er("useRouteId")}function Cv(){let u=T.useContext(xr),i=Ev("useRouteError"),c=Er("useRouteError");return u!==void 0?u:i.errors?.[c]}function Rv(){let{router:u}=_v("useNavigate"),i=Er("useNavigate"),c=T.useRef(!1);return Om(()=>{c.current=!0}),T.useCallback(async(f,d={})=>{we(c.current,Rm),c.current&&(typeof f=="number"?u.navigate(f):await u.navigate(f,{fromRouteId:i,...d}))},[u,i])}var am={};function zm(u,i,c){!i&&!am[u]&&(am[u]=!0,we(!1,c))}T.memo(Ov);function Ov({routes:u,future:i,state:c,unstable_onError:r}){return Nm(u,void 0,c,r,i)}function dr(u){Nt(!1,"A is only ever to be used as the child of element, never rendered directly. Please wrap your in a .")}function Nv({basename:u="/",children:i=null,location:c,navigationType:r="POP",navigator:f,static:d=!1}){Nt(!Pa(),"You cannot render a inside another . You should never have more than one in your app.");let m=u.replace(/^\/*/,"/"),b=T.useMemo(()=>({basename:m,navigator:f,static:d,future:{}}),[m,f,d]);typeof c=="string"&&(c=Ql(c));let{pathname:p="/",search:y="",hash:E="",state:S=null,key:C="default"}=c,z=T.useMemo(()=>{let H=rn(p,m);return H==null?null:{location:{pathname:H,search:y,hash:E,state:S,key:C},navigationType:r}},[m,p,y,E,S,C,r]);return we(z!=null,` is not able to match the URL "${p}${y}${E}" because it does not start with the basename, so the won't render anything.`),z==null?null:T.createElement(Ye.Provider,{value:b},T.createElement(Fa.Provider,{children:i,value:z}))}function zv({children:u,location:i}){return yv(mr(u),i)}function mr(u,i=[]){let c=[];return T.Children.forEach(u,(r,f)=>{if(!T.isValidElement(r))return;let d=[...i,f];if(r.type===T.Fragment){c.push.apply(c,mr(r.props.children,d));return}Nt(r.type===dr,`[${typeof r.type=="string"?r.type:r.type.name}] is not a component. All component children of must be a or `),Nt(!r.props.index||!r.props.children,"An index route cannot have child routes.");let m={id:r.props.id||d.join("-"),caseSensitive:r.props.caseSensitive,element:r.props.element,Component:r.props.Component,index:r.props.index,path:r.props.path,middleware:r.props.middleware,loader:r.props.loader,action:r.props.action,hydrateFallbackElement:r.props.hydrateFallbackElement,HydrateFallback:r.props.HydrateFallback,errorElement:r.props.errorElement,ErrorBoundary:r.props.ErrorBoundary,hasErrorBoundary:r.props.hasErrorBoundary===!0||r.props.ErrorBoundary!=null||r.props.errorElement!=null,shouldRevalidate:r.props.shouldRevalidate,handle:r.props.handle,lazy:r.props.lazy};r.props.children&&(m.children=mr(r.props.children,d)),c.push(m)}),c}var xu="get",_u="application/x-www-form-urlencoded";function zu(u){return u!=null&&typeof u.tagName=="string"}function Mv(u){return zu(u)&&u.tagName.toLowerCase()==="button"}function Dv(u){return zu(u)&&u.tagName.toLowerCase()==="form"}function wv(u){return zu(u)&&u.tagName.toLowerCase()==="input"}function jv(u){return!!(u.metaKey||u.altKey||u.ctrlKey||u.shiftKey)}function Uv(u,i){return u.button===0&&(!i||i==="_self")&&!jv(u)}var gu=null;function Bv(){if(gu===null)try{new FormData(document.createElement("form"),0),gu=!1}catch{gu=!0}return gu}var Lv=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function ur(u){return u!=null&&!Lv.has(u)?(we(!1,`"${u}" is not a valid \`encType\` for \`\`/\`\` and will default to "${_u}"`),null):u}function Hv(u,i){let c,r,f,d,m;if(Dv(u)){let b=u.getAttribute("action");r=b?rn(b,i):null,c=u.getAttribute("method")||xu,f=ur(u.getAttribute("enctype"))||_u,d=new FormData(u)}else if(Mv(u)||wv(u)&&(u.type==="submit"||u.type==="image")){let b=u.form;if(b==null)throw new Error('Cannot submit a + ))} +
+
+
+

Sensor stream

+
+ {sensorButtons.map((btn) => ( + + ))} +
+ {!canControl &&

Assign a rover to toggle streams.

} +
+ +
+ ); +} diff --git a/webui/src/components/DrivePanel.jsx b/webui/src/components/DrivePanel.jsx index 4652a95c..dcbc77a1 100644 --- a/webui/src/components/DrivePanel.jsx +++ b/webui/src/components/DrivePanel.jsx @@ -1,14 +1,8 @@ import { useDriveControl } from '../context/DriveControlContext.jsx'; import { useTelemetryFrame } from '../context/TelemetryContext.jsx'; -const manualOiButtons = [ - { key: 'safe', label: 'Safe' }, - { key: 'passive', label: 'Passive' }, - { key: 'full', label: 'Full' }, -]; - export default function DrivePanel() { - const { roverId, speeds, stopMotors, sendOiCommand, runStartDockFull, seekDock } = useDriveControl(); + const { roverId, runStartDockFull, seekDock } = useDriveControl(); const frame = useTelemetryFrame(roverId); const sensors = frame?.sensors || {}; const drivingMode = (sensors.oiMode?.label || '').toLowerCase() === 'full'; @@ -16,7 +10,6 @@ export default function DrivePanel() { const charging = Boolean( sensors.chargingState?.label && sensors.chargingState.label.toLowerCase() !== 'not charging', ); - const updated = frame?.receivedAt ? new Date(frame.receivedAt).toLocaleTimeString() : null; return (
@@ -32,7 +25,6 @@ export default function DrivePanel() { tone="emerald" onClick={runStartDockFull} disabled={!roverId} - // footnote={updated ? `Sensor ping ${updated}` : null} /> - {/* */} - {/*
-

Manual OI

-
- {manualOiButtons.map((btn) => ( - - ))} -
-
*/} - {/*
- -
*/}
- {/*

Sensor streaming auto-starts after each OI change.

*/}
); } @@ -105,30 +69,3 @@ function ActionCard({ title, description, statuses, tone, onClick, disabled, foo ); } - -function SpeedRow({ left, right }) { - return ( -
-
-

Left

-

{left}

-
-
-

Right

-

{right}

-
-
- ); -} - -function StatusPill({ label, active }) { - return ( - - {label} - - ); -} diff --git a/webui/src/components/DriverVideoPanel.jsx b/webui/src/components/DriverVideoPanel.jsx index eb4481e0..c55c4d8d 100644 --- a/webui/src/components/DriverVideoPanel.jsx +++ b/webui/src/components/DriverVideoPanel.jsx @@ -18,8 +18,7 @@ export default function DriverVideoPanel() { return (
{roverId ? ( -
- {/*
*/} +
+

Help

+
    + {tips.map((tip) => ( +
  • + {tip} +
  • + ))} +
+
+ ); +} diff --git a/webui/src/components/RightPaneTabs.jsx b/webui/src/components/RightPaneTabs.jsx new file mode 100644 index 00000000..907f2ca1 --- /dev/null +++ b/webui/src/components/RightPaneTabs.jsx @@ -0,0 +1,68 @@ +import { useState } from 'react'; +import TelemetryPanel from './TelemetryPanel.jsx'; +import DrivePanel from './DrivePanel.jsx'; +import RoomCameraPanel from './RoomCameraPanel.jsx'; +import AdvancedSettings from './AdvancedSettings.jsx'; +import HelpPanel from './HelpPanel.jsx'; + +function TabButton({ active, onClick, children }) { + return ( + + ); +} + +function RoomControlsPlaceholder() { + return ( +
+

Room controls

+

Coming soon: lighting, docks, and environmental toggles.

+
+ ); +} + +export default function RightPaneTabs({ layout }) { + const [active, setActive] = useState('telemetry'); + + return ( +
+
+ setActive('telemetry')}> + Telemetry + + setActive('room')}> + Room + + setActive('advanced')}> + Advanced + + setActive('help')}> + Help + +
+
+ {active === 'telemetry' && ( +
+ + +
+ )} + {active === 'room' && ( +
+ + +
+ )} + {active === 'advanced' && } + {active === 'help' && } +
+
+ ); +} diff --git a/webui/src/components/VideoTile.jsx b/webui/src/components/VideoTile.jsx index 51ff6a07..a32cb304 100644 --- a/webui/src/components/VideoTile.jsx +++ b/webui/src/components/VideoTile.jsx @@ -130,7 +130,7 @@ export default function VideoTile({ sessionInfo, label, forceMute = false, telem return (
-
+
+
); } diff --git a/webui/src/components/RightPaneTabs.jsx b/webui/src/components/RightPaneTabs.jsx index 907f2ca1..b8532cc7 100644 --- a/webui/src/components/RightPaneTabs.jsx +++ b/webui/src/components/RightPaneTabs.jsx @@ -35,10 +35,10 @@ export default function RightPaneTabs({ layout }) {
setActive('telemetry')}> - Telemetry + Rover Controls setActive('room')}> - Room + Room Controls setActive('advanced')}> Advanced From ee46bcff9ff2296712babdc9450f631fdc2f0b37 Mon Sep 17 00:00:00 2001 From: legop3 Date: Sun, 16 Nov 2025 15:12:11 -0500 Subject: [PATCH 48/61] guh --- .../assets/{index-pos682hi.css => index-BhWEQnjm.css} | 2 +- .../assets/{index-ByW9zzwu.js => index-BouNEyLy.js} | 2 +- server/public/index.html | 4 ++-- webui/src/components/LogPanel.jsx | 8 ++++---- 4 files changed, 8 insertions(+), 8 deletions(-) rename server/public/assets/{index-pos682hi.css => index-BhWEQnjm.css} (77%) rename server/public/assets/{index-ByW9zzwu.js => index-BouNEyLy.js} (93%) diff --git a/server/public/assets/index-pos682hi.css b/server/public/assets/index-BhWEQnjm.css similarity index 77% rename from server/public/assets/index-pos682hi.css rename to server/public/assets/index-BhWEQnjm.css index 12bb2e75..b8b3f90f 100644 --- a/server/public/assets/index-pos682hi.css +++ b/server/public/assets/index-BhWEQnjm.css @@ -1 +1 @@ -*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.\!visible{visibility:visible!important}.visible{visibility:visible}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.left-1\/2{left:50%}.top-1{top:.25rem}.z-50{z-index:50}.col-span-full{grid-column:1 / -1}.mx-auto{margin-left:auto;margin-right:auto}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mt-1{margin-top:.25rem}.mt-3{margin-top:.75rem}.flex{display:flex}.grid{display:grid}.aspect-video{aspect-ratio:16 / 9}.h-2{height:.5rem}.h-4{height:1rem}.h-48{height:12rem}.h-60{height:15rem}.h-full{height:100%}.min-h-\[8rem\]{min-height:8rem}.min-h-screen{min-height:100vh}.w-2{width:.5rem}.w-full{width:100%}.max-w-7xl{max-width:80rem}.flex-1{flex:1 1 0%}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.resize{resize:both}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-\[minmax\(0\,0\.7fr\)_minmax\(0\,2\.1fr\)_minmax\(0\,0\.7fr\)\]{grid-template-columns:minmax(0,.7fr) minmax(0,2.1fr) minmax(0,.7fr)}.grid-cols-\[minmax\(0\,1\.8fr\)_minmax\(0\,1fr\)\]{grid-template-columns:minmax(0,1.8fr) minmax(0,1fr)}.grid-cols-\[minmax\(0\,1fr\)_minmax\(0\,1fr\)\]{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-scroll{overflow:scroll}.overflow-y-auto{overflow-y:auto}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-sm{border-radius:.125rem}.border{border-width:1px}.border-slate-800{--tw-border-opacity: 1;border-color:rgb(30 41 59 / var(--tw-border-opacity))}.border-slate-800\/80{border-color:#1e293bcc}.bg-\[\#1a1d23\]{--tw-bg-opacity: 1;background-color:rgb(26 29 35 / var(--tw-bg-opacity))}.bg-\[\#1e1e1e\]{--tw-bg-opacity: 1;background-color:rgb(30 30 30 / var(--tw-bg-opacity))}.bg-\[\#242a32\]{--tw-bg-opacity: 1;background-color:rgb(36 42 50 / var(--tw-bg-opacity))}.bg-amber-400{--tw-bg-opacity: 1;background-color:rgb(251 191 36 / var(--tw-bg-opacity))}.bg-amber-500\/30{background-color:#f59e0b4d}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity))}.bg-black\/30{background-color:#0000004d}.bg-black\/40{background-color:#0006}.bg-black\/50{background-color:#00000080}.bg-blue-600\/40{background-color:#2563eb66}.bg-emerald-300{--tw-bg-opacity: 1;background-color:rgb(110 231 183 / var(--tw-bg-opacity))}.bg-emerald-500{--tw-bg-opacity: 1;background-color:rgb(16 185 129 / var(--tw-bg-opacity))}.bg-emerald-500\/20{background-color:#10b98133}.bg-emerald-500\/30{background-color:#10b9814d}.bg-emerald-600{--tw-bg-opacity: 1;background-color:rgb(5 150 105 / var(--tw-bg-opacity))}.bg-emerald-900{--tw-bg-opacity: 1;background-color:rgb(6 78 59 / var(--tw-bg-opacity))}.bg-gray-700{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.bg-indigo-600{--tw-bg-opacity: 1;background-color:rgb(79 70 229 / var(--tw-bg-opacity))}.bg-lime-300{--tw-bg-opacity: 1;background-color:rgb(190 242 100 / var(--tw-bg-opacity))}.bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity))}.bg-red-500\/20{background-color:#ef444433}.bg-red-500\/30{background-color:#ef44444d}.bg-red-900\/60{background-color:#7f1d1d99}.bg-slate-100{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity))}.bg-slate-200{--tw-bg-opacity: 1;background-color:rgb(226 232 240 / var(--tw-bg-opacity))}.bg-slate-700{--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity))}.bg-slate-800{--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity))}.bg-slate-900\/70{background-color:#0f172ab3}.bg-slate-950{--tw-bg-opacity: 1;background-color:rgb(2 6 23 / var(--tw-bg-opacity))}.bg-slate-950\/40{background-color:#02061766}.bg-slate-950\/50{background-color:#02061780}.object-contain{-o-object-fit:contain;object-fit:contain}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-\[0\.55rem\]{font-size:.55rem}.text-\[0\.65rem\]{font-size:.65rem}.text-\[0\.75rem\]{font-size:.75rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.tracking-\[0\.3em\]{letter-spacing:.3em}.text-amber-100{--tw-text-opacity: 1;color:rgb(254 243 199 / var(--tw-text-opacity))}.text-black{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity))}.text-black\/80{color:#000c}.text-blue-100{--tw-text-opacity: 1;color:rgb(219 234 254 / var(--tw-text-opacity))}.text-cyan-300{--tw-text-opacity: 1;color:rgb(103 232 249 / var(--tw-text-opacity))}.text-emerald-100{--tw-text-opacity: 1;color:rgb(209 250 229 / var(--tw-text-opacity))}.text-emerald-200{--tw-text-opacity: 1;color:rgb(167 243 208 / var(--tw-text-opacity))}.text-emerald-50\/80{color:#ecfdf5cc}.text-emerald-900{--tw-text-opacity: 1;color:rgb(6 78 59 / var(--tw-text-opacity))}.text-lime-300{--tw-text-opacity: 1;color:rgb(190 242 100 / var(--tw-text-opacity))}.text-pink-300{--tw-text-opacity: 1;color:rgb(249 168 212 / var(--tw-text-opacity))}.text-red-100{--tw-text-opacity: 1;color:rgb(254 226 226 / var(--tw-text-opacity))}.text-red-200{--tw-text-opacity: 1;color:rgb(254 202 202 / var(--tw-text-opacity))}.text-slate-100{--tw-text-opacity: 1;color:rgb(241 245 249 / var(--tw-text-opacity))}.text-slate-200{--tw-text-opacity: 1;color:rgb(226 232 240 / var(--tw-text-opacity))}.text-slate-300{--tw-text-opacity: 1;color:rgb(203 213 225 / var(--tw-text-opacity))}.text-slate-400{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity))}.text-slate-50{--tw-text-opacity: 1;color:rgb(248 250 252 / var(--tw-text-opacity))}.text-slate-500{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity))}.text-slate-900{--tw-text-opacity: 1;color:rgb(15 23 42 / var(--tw-text-opacity))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.text-white\/90{color:#ffffffe6}.shadow-\[0_0_4px_rgba\(16\,185\,129\,0\.8\)\]{--tw-shadow: 0 0 4px rgba(16,185,129,.8);--tw-shadow-colored: 0 0 4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-black\/60{--tw-shadow-color: rgb(0 0 0 / .6);--tw-shadow: var(--tw-shadow-colored)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-\[width\]{transition-property:width;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#0f172a;background-color:#f8fafc}body{margin:0;min-height:100vh;background-color:#0f172a}.disabled\:opacity-30:disabled{opacity:.3}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}@media(min-width:640px){.sm\:flex-row{flex-direction:row}}@media(min-width:1024px){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}} +*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.\!visible{visibility:visible!important}.visible{visibility:visible}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.left-1\/2{left:50%}.top-1{top:.25rem}.z-50{z-index:50}.col-span-full{grid-column:1 / -1}.mx-auto{margin-left:auto;margin-right:auto}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mt-1{margin-top:.25rem}.mt-3{margin-top:.75rem}.flex{display:flex}.grid{display:grid}.aspect-video{aspect-ratio:16 / 9}.h-2{height:.5rem}.h-4{height:1rem}.h-48{height:12rem}.h-60{height:15rem}.h-full{height:100%}.min-h-\[8rem\]{min-height:8rem}.min-h-screen{min-height:100vh}.w-2{width:.5rem}.w-full{width:100%}.max-w-7xl{max-width:80rem}.flex-1{flex:1 1 0%}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.resize{resize:both}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-\[minmax\(0\,0\.7fr\)_minmax\(0\,2\.1fr\)_minmax\(0\,0\.7fr\)\]{grid-template-columns:minmax(0,.7fr) minmax(0,2.1fr) minmax(0,.7fr)}.grid-cols-\[minmax\(0\,1\.8fr\)_minmax\(0\,1fr\)\]{grid-template-columns:minmax(0,1.8fr) minmax(0,1fr)}.grid-cols-\[minmax\(0\,1fr\)_minmax\(0\,1fr\)\]{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-scroll{overflow:scroll}.overflow-y-auto{overflow-y:auto}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-sm{border-radius:.125rem}.border{border-width:1px}.border-slate-800{--tw-border-opacity: 1;border-color:rgb(30 41 59 / var(--tw-border-opacity))}.border-slate-800\/80{border-color:#1e293bcc}.bg-\[\#1a1d23\]{--tw-bg-opacity: 1;background-color:rgb(26 29 35 / var(--tw-bg-opacity))}.bg-\[\#1e1e1e\]{--tw-bg-opacity: 1;background-color:rgb(30 30 30 / var(--tw-bg-opacity))}.bg-\[\#242a32\]{--tw-bg-opacity: 1;background-color:rgb(36 42 50 / var(--tw-bg-opacity))}.bg-amber-400{--tw-bg-opacity: 1;background-color:rgb(251 191 36 / var(--tw-bg-opacity))}.bg-amber-500\/30{background-color:#f59e0b4d}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity))}.bg-black\/30{background-color:#0000004d}.bg-black\/40{background-color:#0006}.bg-black\/50{background-color:#00000080}.bg-blue-600\/40{background-color:#2563eb66}.bg-emerald-300{--tw-bg-opacity: 1;background-color:rgb(110 231 183 / var(--tw-bg-opacity))}.bg-emerald-500{--tw-bg-opacity: 1;background-color:rgb(16 185 129 / var(--tw-bg-opacity))}.bg-emerald-500\/20{background-color:#10b98133}.bg-emerald-500\/30{background-color:#10b9814d}.bg-emerald-600{--tw-bg-opacity: 1;background-color:rgb(5 150 105 / var(--tw-bg-opacity))}.bg-emerald-900{--tw-bg-opacity: 1;background-color:rgb(6 78 59 / var(--tw-bg-opacity))}.bg-gray-700{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.bg-indigo-600{--tw-bg-opacity: 1;background-color:rgb(79 70 229 / var(--tw-bg-opacity))}.bg-lime-300{--tw-bg-opacity: 1;background-color:rgb(190 242 100 / var(--tw-bg-opacity))}.bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity))}.bg-red-500\/20{background-color:#ef444433}.bg-red-500\/30{background-color:#ef44444d}.bg-red-900\/60{background-color:#7f1d1d99}.bg-slate-100{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity))}.bg-slate-200{--tw-bg-opacity: 1;background-color:rgb(226 232 240 / var(--tw-bg-opacity))}.bg-slate-700{--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity))}.bg-slate-800{--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity))}.bg-slate-900\/70{background-color:#0f172ab3}.bg-slate-950{--tw-bg-opacity: 1;background-color:rgb(2 6 23 / var(--tw-bg-opacity))}.bg-slate-950\/40{background-color:#02061766}.bg-slate-950\/50{background-color:#02061780}.object-contain{-o-object-fit:contain;object-fit:contain}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-\[0\.55rem\]{font-size:.55rem}.text-\[0\.65rem\]{font-size:.65rem}.text-\[0\.75rem\]{font-size:.75rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.tracking-\[0\.3em\]{letter-spacing:.3em}.text-amber-100{--tw-text-opacity: 1;color:rgb(254 243 199 / var(--tw-text-opacity))}.text-amber-400{--tw-text-opacity: 1;color:rgb(251 191 36 / var(--tw-text-opacity))}.text-black{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity))}.text-black\/80{color:#000c}.text-blue-100{--tw-text-opacity: 1;color:rgb(219 234 254 / var(--tw-text-opacity))}.text-cyan-300{--tw-text-opacity: 1;color:rgb(103 232 249 / var(--tw-text-opacity))}.text-emerald-100{--tw-text-opacity: 1;color:rgb(209 250 229 / var(--tw-text-opacity))}.text-emerald-200{--tw-text-opacity: 1;color:rgb(167 243 208 / var(--tw-text-opacity))}.text-emerald-50\/80{color:#ecfdf5cc}.text-emerald-900{--tw-text-opacity: 1;color:rgb(6 78 59 / var(--tw-text-opacity))}.text-lime-300{--tw-text-opacity: 1;color:rgb(190 242 100 / var(--tw-text-opacity))}.text-lime-400{--tw-text-opacity: 1;color:rgb(163 230 53 / var(--tw-text-opacity))}.text-pink-300{--tw-text-opacity: 1;color:rgb(249 168 212 / var(--tw-text-opacity))}.text-red-100{--tw-text-opacity: 1;color:rgb(254 226 226 / var(--tw-text-opacity))}.text-red-200{--tw-text-opacity: 1;color:rgb(254 202 202 / var(--tw-text-opacity))}.text-slate-100{--tw-text-opacity: 1;color:rgb(241 245 249 / var(--tw-text-opacity))}.text-slate-200{--tw-text-opacity: 1;color:rgb(226 232 240 / var(--tw-text-opacity))}.text-slate-300{--tw-text-opacity: 1;color:rgb(203 213 225 / var(--tw-text-opacity))}.text-slate-400{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity))}.text-slate-50{--tw-text-opacity: 1;color:rgb(248 250 252 / var(--tw-text-opacity))}.text-slate-500{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity))}.text-slate-900{--tw-text-opacity: 1;color:rgb(15 23 42 / var(--tw-text-opacity))}.text-teal-400{--tw-text-opacity: 1;color:rgb(45 212 191 / var(--tw-text-opacity))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.text-white\/90{color:#ffffffe6}.shadow-\[0_0_4px_rgba\(16\,185\,129\,0\.8\)\]{--tw-shadow: 0 0 4px rgba(16,185,129,.8);--tw-shadow-colored: 0 0 4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-black\/60{--tw-shadow-color: rgb(0 0 0 / .6);--tw-shadow: var(--tw-shadow-colored)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-\[width\]{transition-property:width;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#0f172a;background-color:#f8fafc}body{margin:0;min-height:100vh;background-color:#0f172a}.disabled\:opacity-30:disabled{opacity:.3}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}@media(min-width:640px){.sm\:flex-row{flex-direction:row}}@media(min-width:1024px){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}} diff --git a/server/public/assets/index-ByW9zzwu.js b/server/public/assets/index-BouNEyLy.js similarity index 93% rename from server/public/assets/index-ByW9zzwu.js rename to server/public/assets/index-BouNEyLy.js index 6d4181b4..296a8371 100644 --- a/server/public/assets/index-ByW9zzwu.js +++ b/server/public/assets/index-BouNEyLy.js @@ -8,4 +8,4 @@ Error generating stack: `+l.message+` `+l.stack}}var ku=Object.prototype.hasOwnProperty,Xu=u.unstable_scheduleCallback,Gu=u.unstable_cancelCallback,cp=u.unstable_shouldYield,rp=u.unstable_requestPaint,st=u.unstable_now,op=u.unstable_getCurrentPriorityLevel,Vr=u.unstable_ImmediatePriority,Qr=u.unstable_UserBlockingPriority,ni=u.unstable_NormalPriority,fp=u.unstable_LowPriority,Zr=u.unstable_IdlePriority,hp=u.log,dp=u.unstable_setDisableYieldValue,$l=null,ct=null;function hn(e){if(typeof hp=="function"&&dp(e),ct&&typeof ct.setStrictMode=="function")try{ct.setStrictMode($l,e)}catch{}}var rt=Math.clz32?Math.clz32:yp,mp=Math.log,pp=Math.LN2;function yp(e){return e>>>=0,e===0?32:31-(mp(e)/pp|0)|0}var li=256,ai=262144,ii=4194304;function Yn(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function ui(e,t,n){var l=e.pendingLanes;if(l===0)return 0;var a=0,s=e.suspendedLanes,o=e.pingedLanes;e=e.warmLanes;var h=l&134217727;return h!==0?(l=h&~s,l!==0?a=Yn(l):(o&=h,o!==0?a=Yn(o):n||(n=h&~e,n!==0&&(a=Yn(n))))):(h=l&~s,h!==0?a=Yn(h):o!==0?a=Yn(o):n||(n=l&~e,n!==0&&(a=Yn(n)))),a===0?0:t!==0&&t!==a&&(t&s)===0&&(s=a&-a,n=t&-t,s>=n||s===32&&(n&4194048)!==0)?t:a}function Wl(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function vp(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Kr(){var e=ii;return ii<<=1,(ii&62914560)===0&&(ii=4194304),e}function Vu(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function Fl(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function gp(e,t,n,l,a,s){var o=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var h=e.entanglements,g=e.expirationTimes,N=e.hiddenUpdates;for(n=o&~n;0"u")return null;try{return e.activeElement||e.body}catch{return e.body}}var Tp=/[\n"\\]/g;function gt(e){return e.replace(Tp,function(t){return"\\"+t.charCodeAt(0).toString(16)+" "})}function Wu(e,t,n,l,a,s,o,h){e.name="",o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"?e.type=o:e.removeAttribute("type"),t!=null?o==="number"?(t===0&&e.value===""||e.value!=t)&&(e.value=""+vt(t)):e.value!==""+vt(t)&&(e.value=""+vt(t)):o!=="submit"&&o!=="reset"||e.removeAttribute("value"),t!=null?Fu(e,o,vt(t)):n!=null?Fu(e,o,vt(n)):l!=null&&e.removeAttribute("value"),a==null&&s!=null&&(e.defaultChecked=!!s),a!=null&&(e.checked=a&&typeof a!="function"&&typeof a!="symbol"),h!=null&&typeof h!="function"&&typeof h!="symbol"&&typeof h!="boolean"?e.name=""+vt(h):e.removeAttribute("name")}function uo(e,t,n,l,a,s,o,h){if(s!=null&&typeof s!="function"&&typeof s!="symbol"&&typeof s!="boolean"&&(e.type=s),t!=null||n!=null){if(!(s!=="submit"&&s!=="reset"||t!=null)){$u(e);return}n=n!=null?""+vt(n):"",t=t!=null?""+vt(t):n,h||t===e.value||(e.value=t),e.defaultValue=t}l=l??a,l=typeof l!="function"&&typeof l!="symbol"&&!!l,e.checked=h?e.checked:!!l,e.defaultChecked=!!l,o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"&&(e.name=o),$u(e)}function Fu(e,t,n){t==="number"&&ri(e.ownerDocument)===e||e.defaultValue===""+n||(e.defaultValue=""+n)}function fl(e,t,n,l){if(e=e.options,t){t={};for(var a=0;a"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),ns=!1;if(Vt)try{var ta={};Object.defineProperty(ta,"passive",{get:function(){ns=!0}}),window.addEventListener("test",ta,ta),window.removeEventListener("test",ta,ta)}catch{ns=!1}var mn=null,ls=null,fi=null;function mo(){if(fi)return fi;var e,t=ls,n=t.length,l,a="value"in mn?mn.value:mn.textContent,s=a.length;for(e=0;e=aa),So=" ",xo=!1;function _o(e,t){switch(e){case"keyup":return Pp.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Eo(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var pl=!1;function ey(e,t){switch(e){case"compositionend":return Eo(t);case"keypress":return t.which!==32?null:(xo=!0,So);case"textInput":return e=t.data,e===So&&xo?null:e;default:return null}}function ty(e,t){if(pl)return e==="compositionend"||!cs&&_o(e,t)?(e=mo(),fi=ls=mn=null,pl=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=l}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=Mo(n)}}function jo(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?jo(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function wo(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=ri(e.document);t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=ri(e.document)}return t}function fs(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}var ry=Vt&&"documentMode"in document&&11>=document.documentMode,yl=null,hs=null,ca=null,ds=!1;function Uo(e,t,n){var l=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;ds||yl==null||yl!==ri(l)||(l=yl,"selectionStart"in l&&fs(l)?l={start:l.selectionStart,end:l.selectionEnd}:(l=(l.ownerDocument&&l.ownerDocument.defaultView||window).getSelection(),l={anchorNode:l.anchorNode,anchorOffset:l.anchorOffset,focusNode:l.focusNode,focusOffset:l.focusOffset}),ca&&sa(ca,l)||(ca=l,l=au(hs,"onSelect"),0>=o,a-=o,wt=1<<32-rt(t)+a|n<ne?(se=K,K=null):se=K.sibling;var fe=O(A,K,R[ne],w);if(fe===null){K===null&&(K=se);break}e&&K&&fe.alternate===null&&t(A,K),x=s(fe,x,ne),oe===null?J=fe:oe.sibling=fe,oe=fe,K=se}if(ne===R.length)return n(A,K),ce&&Zt(A,ne),J;if(K===null){for(;nene?(se=K,K=null):se=K.sibling;var Bn=O(A,K,fe.value,w);if(Bn===null){K===null&&(K=se);break}e&&K&&Bn.alternate===null&&t(A,K),x=s(Bn,x,ne),oe===null?J=Bn:oe.sibling=Bn,oe=Bn,K=se}if(fe.done)return n(A,K),ce&&Zt(A,ne),J;if(K===null){for(;!fe.done;ne++,fe=R.next())fe=U(A,fe.value,w),fe!==null&&(x=s(fe,x,ne),oe===null?J=fe:oe.sibling=fe,oe=fe);return ce&&Zt(A,ne),J}for(K=l(K);!fe.done;ne++,fe=R.next())fe=M(K,A,ne,fe.value,w),fe!==null&&(e&&fe.alternate!==null&&K.delete(fe.key===null?ne:fe.key),x=s(fe,x,ne),oe===null?J=fe:oe.sibling=fe,oe=fe);return e&&K.forEach(function(O0){return t(A,O0)}),ce&&Zt(A,ne),J}function Se(A,x,R,w){if(typeof R=="object"&&R!==null&&R.type===k&&R.key===null&&(R=R.props.children),typeof R=="object"&&R!==null){switch(R.$$typeof){case z:e:{for(var J=R.key;x!==null;){if(x.key===J){if(J=R.type,J===k){if(x.tag===7){n(A,x.sibling),w=a(x,R.props.children),w.return=A,A=w;break e}}else if(x.elementType===J||typeof J=="object"&&J!==null&&J.$$typeof===Te&&Fn(J)===x.type){n(A,x.sibling),w=a(x,R.props),ma(w,R),w.return=A,A=w;break e}n(A,x);break}else t(A,x);x=x.sibling}R.type===k?(w=Zn(R.props.children,A.mode,w,R.key),w.return=A,A=w):(w=xi(R.type,R.key,R.props,null,A.mode,w),ma(w,R),w.return=A,A=w)}return o(A);case H:e:{for(J=R.key;x!==null;){if(x.key===J)if(x.tag===4&&x.stateNode.containerInfo===R.containerInfo&&x.stateNode.implementation===R.implementation){n(A,x.sibling),w=a(x,R.children||[]),w.return=A,A=w;break e}else{n(A,x);break}else t(A,x);x=x.sibling}w=Ss(R,A.mode,w),w.return=A,A=w}return o(A);case Te:return R=Fn(R),Se(A,x,R,w)}if(Nt(R))return V(A,x,R,w);if(We(R)){if(J=We(R),typeof J!="function")throw Error(r(150));return R=J.call(R),W(A,x,R,w)}if(typeof R.then=="function")return Se(A,x,Ni(R),w);if(R.$$typeof===Q)return Se(A,x,Ti(A,R),w);Oi(A,R)}return typeof R=="string"&&R!==""||typeof R=="number"||typeof R=="bigint"?(R=""+R,x!==null&&x.tag===6?(n(A,x.sibling),w=a(x,R),w.return=A,A=w):(n(A,x),w=bs(R,A.mode,w),w.return=A,A=w),o(A)):n(A,x)}return function(A,x,R,w){try{da=0;var J=Se(A,x,R,w);return Rl=null,J}catch(K){if(K===Cl||K===Ci)throw K;var oe=ft(29,K,null,A.mode);return oe.lanes=w,oe.return=A,oe}finally{}}}var In=af(!0),uf=af(!1),bn=!1;function Ds(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function js(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function Sn(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function xn(e,t,n){var l=e.updateQueue;if(l===null)return null;if(l=l.shared,(he&2)!==0){var a=l.pending;return a===null?t.next=t:(t.next=a.next,a.next=t),l.pending=t,t=Si(e),Xo(e,null,n),t}return bi(e,l,t,n),Si(e)}function pa(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194048)!==0)){var l=t.lanes;l&=e.pendingLanes,n|=l,t.lanes=n,$r(e,n)}}function ws(e,t){var n=e.updateQueue,l=e.alternate;if(l!==null&&(l=l.updateQueue,n===l)){var a=null,s=null;if(n=n.firstBaseUpdate,n!==null){do{var o={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};s===null?a=s=o:s=s.next=o,n=n.next}while(n!==null);s===null?a=s=t:s=s.next=t}else a=s=t;n={baseState:l.baseState,firstBaseUpdate:a,lastBaseUpdate:s,shared:l.shared,callbacks:l.callbacks},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}var Us=!1;function ya(){if(Us){var e=Al;if(e!==null)throw e}}function va(e,t,n,l){Us=!1;var a=e.updateQueue;bn=!1;var s=a.firstBaseUpdate,o=a.lastBaseUpdate,h=a.shared.pending;if(h!==null){a.shared.pending=null;var g=h,N=g.next;g.next=null,o===null?s=N:o.next=N,o=g;var D=e.alternate;D!==null&&(D=D.updateQueue,h=D.lastBaseUpdate,h!==o&&(h===null?D.firstBaseUpdate=N:h.next=N,D.lastBaseUpdate=g))}if(s!==null){var U=a.baseState;o=0,D=N=g=null,h=s;do{var O=h.lane&-536870913,M=O!==h.lane;if(M?(ue&O)===O:(l&O)===O){O!==0&&O===Tl&&(Us=!0),D!==null&&(D=D.next={lane:0,tag:h.tag,payload:h.payload,callback:null,next:null});e:{var V=e,W=h;O=t;var Se=n;switch(W.tag){case 1:if(V=W.payload,typeof V=="function"){U=V.call(Se,U,O);break e}U=V;break e;case 3:V.flags=V.flags&-65537|128;case 0:if(V=W.payload,O=typeof V=="function"?V.call(Se,U,O):V,O==null)break e;U=S({},U,O);break e;case 2:bn=!0}}O=h.callback,O!==null&&(e.flags|=64,M&&(e.flags|=8192),M=a.callbacks,M===null?a.callbacks=[O]:M.push(O))}else M={lane:O,tag:h.tag,payload:h.payload,callback:h.callback,next:null},D===null?(N=D=M,g=U):D=D.next=M,o|=O;if(h=h.next,h===null){if(h=a.shared.pending,h===null)break;M=h,h=M.next,M.next=null,a.lastBaseUpdate=M,a.shared.pending=null}}while(!0);D===null&&(g=U),a.baseState=g,a.firstBaseUpdate=N,a.lastBaseUpdate=D,s===null&&(a.shared.lanes=0),Cn|=o,e.lanes=o,e.memoizedState=U}}function sf(e,t){if(typeof e!="function")throw Error(r(191,e));e.call(t)}function cf(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;es?s:8;var o=j.T,h={};j.T=h,ec(e,!1,t,n);try{var g=a(),N=j.S;if(N!==null&&N(h,g),g!==null&&typeof g=="object"&&typeof g.then=="function"){var D=gy(g,l);Sa(e,t,D,yt(e))}else Sa(e,t,l,yt(e))}catch(U){Sa(e,t,{then:function(){},status:"rejected",reason:U},yt())}finally{X.p=s,o!==null&&h.types!==null&&(o.types=h.types),j.T=o}}function Ty(){}function Ps(e,t,n,l){if(e.tag!==5)throw Error(r(476));var a=Yf(e).queue;qf(e,a,t,F,n===null?Ty:function(){return kf(e),n(l)})}function Yf(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:F,baseState:F,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Wt,lastRenderedState:F},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Wt,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function kf(e){var t=Yf(e);t.next===null&&(t=e.alternate.memoizedState),Sa(e,t.next.queue,{},yt())}function Is(){return Ke(La)}function Xf(){return we().memoizedState}function Gf(){return we().memoizedState}function Ay(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var n=yt();e=Sn(n);var l=xn(t,e,n);l!==null&&(ut(l,t,n),pa(l,t,n)),t={cache:Ns()},e.payload=t;return}t=t.return}}function Cy(e,t,n){var l=yt();n={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},qi(e)?Qf(t,n):(n=vs(e,t,n,l),n!==null&&(ut(n,e,l),Zf(n,t,l)))}function Vf(e,t,n){var l=yt();Sa(e,t,n,l)}function Sa(e,t,n,l){var a={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(qi(e))Qf(t,a);else{var s=e.alternate;if(e.lanes===0&&(s===null||s.lanes===0)&&(s=t.lastRenderedReducer,s!==null))try{var o=t.lastRenderedState,h=s(o,n);if(a.hasEagerState=!0,a.eagerState=h,ot(h,o))return bi(e,t,a,0),Ee===null&&gi(),!1}catch{}finally{}if(n=vs(e,t,a,l),n!==null)return ut(n,e,l),Zf(n,t,l),!0}return!1}function ec(e,t,n,l){if(l={lane:2,revertLane:Dc(),gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},qi(e)){if(t)throw Error(r(479))}else t=vs(e,n,l,2),t!==null&&ut(t,e,2)}function qi(e){var t=e.alternate;return e===te||t!==null&&t===te}function Qf(e,t){Ol=Di=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Zf(e,t,n){if((n&4194048)!==0){var l=t.lanes;l&=e.pendingLanes,n|=l,t.lanes=n,$r(e,n)}}var xa={readContext:Ke,use:Ui,useCallback:ze,useContext:ze,useEffect:ze,useImperativeHandle:ze,useLayoutEffect:ze,useInsertionEffect:ze,useMemo:ze,useReducer:ze,useRef:ze,useState:ze,useDebugValue:ze,useDeferredValue:ze,useTransition:ze,useSyncExternalStore:ze,useId:ze,useHostTransitionStatus:ze,useFormState:ze,useActionState:ze,useOptimistic:ze,useMemoCache:ze,useCacheRefresh:ze};xa.useEffectEvent=ze;var Kf={readContext:Ke,use:Ui,useCallback:function(e,t){return Ie().memoizedState=[e,t===void 0?null:t],e},useContext:Ke,useEffect:zf,useImperativeHandle:function(e,t,n){n=n!=null?n.concat([e]):null,Li(4194308,4,wf.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Li(4194308,4,e,t)},useInsertionEffect:function(e,t){Li(4,2,e,t)},useMemo:function(e,t){var n=Ie();t=t===void 0?null:t;var l=e();if(el){hn(!0);try{e()}finally{hn(!1)}}return n.memoizedState=[l,t],l},useReducer:function(e,t,n){var l=Ie();if(n!==void 0){var a=n(t);if(el){hn(!0);try{n(t)}finally{hn(!1)}}}else a=t;return l.memoizedState=l.baseState=a,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:a},l.queue=e,e=e.dispatch=Cy.bind(null,te,e),[l.memoizedState,e]},useRef:function(e){var t=Ie();return e={current:e},t.memoizedState=e},useState:function(e){e=Ks(e);var t=e.queue,n=Vf.bind(null,te,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:Ws,useDeferredValue:function(e,t){var n=Ie();return Fs(n,e,t)},useTransition:function(){var e=Ks(!1);return e=qf.bind(null,te,e.queue,!0,!1),Ie().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var l=te,a=Ie();if(ce){if(n===void 0)throw Error(r(407));n=n()}else{if(n=t(),Ee===null)throw Error(r(349));(ue&127)!==0||mf(l,t,n)}a.memoizedState=n;var s={value:n,getSnapshot:t};return a.queue=s,zf(yf.bind(null,l,s,e),[e]),l.flags|=2048,Ml(9,{destroy:void 0},pf.bind(null,l,s,n,t),null),n},useId:function(){var e=Ie(),t=Ee.identifierPrefix;if(ce){var n=Ut,l=wt;n=(l&~(1<<32-rt(l)-1)).toString(32)+n,t="_"+t+"R_"+n,n=ji++,0<\/script>",s=s.removeChild(s.firstChild);break;case"select":s=typeof l.is=="string"?o.createElement("select",{is:l.is}):o.createElement("select"),l.multiple?s.multiple=!0:l.size&&(s.size=l.size);break;default:s=typeof l.is=="string"?o.createElement(a,{is:l.is}):o.createElement(a)}}s[Qe]=t,s[et]=l;e:for(o=t.child;o!==null;){if(o.tag===5||o.tag===6)s.appendChild(o.stateNode);else if(o.tag!==4&&o.tag!==27&&o.child!==null){o.child.return=o,o=o.child;continue}if(o===t)break e;for(;o.sibling===null;){if(o.return===null||o.return===t)break e;o=o.return}o.sibling.return=o.return,o=o.sibling}t.stateNode=s;e:switch($e(s,a,l),a){case"button":case"input":case"select":case"textarea":l=!!l.autoFocus;break e;case"img":l=!0;break e;default:l=!1}l&&Pt(t)}}return Ce(t),mc(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==l&&Pt(t);else{if(typeof l!="string"&&t.stateNode===null)throw Error(r(166));if(e=le.current,_l(t)){if(e=t.stateNode,n=t.memoizedProps,l=null,a=Ze,a!==null)switch(a.tag){case 27:case 5:l=a.memoizedProps}e[Qe]=t,e=!!(e.nodeValue===n||l!==null&&l.suppressHydrationWarning===!0||hd(e.nodeValue,n)),e||vn(t,!0)}else e=iu(e).createTextNode(l),e[Qe]=t,t.stateNode=e}return Ce(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(l=_l(t),n!==null){if(e===null){if(!l)throw Error(r(318));if(e=t.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(r(557));e[Qe]=t}else Kn(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Ce(t),e=!1}else n=Ts(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(dt(t),t):(dt(t),null);if((t.flags&128)!==0)throw Error(r(558))}return Ce(t),null;case 13:if(l=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(a=_l(t),l!==null&&l.dehydrated!==null){if(e===null){if(!a)throw Error(r(318));if(a=t.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(r(317));a[Qe]=t}else Kn(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Ce(t),a=!1}else a=Ts(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=a),a=!0;if(!a)return t.flags&256?(dt(t),t):(dt(t),null)}return dt(t),(t.flags&128)!==0?(t.lanes=n,t):(n=l!==null,e=e!==null&&e.memoizedState!==null,n&&(l=t.child,a=null,l.alternate!==null&&l.alternate.memoizedState!==null&&l.alternate.memoizedState.cachePool!==null&&(a=l.alternate.memoizedState.cachePool.pool),s=null,l.memoizedState!==null&&l.memoizedState.cachePool!==null&&(s=l.memoizedState.cachePool.pool),s!==a&&(l.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),Vi(t,t.updateQueue),Ce(t),null);case 4:return De(),e===null&&Bc(t.stateNode.containerInfo),Ce(t),null;case 10:return Jt(t.type),Ce(t),null;case 19:if(B(je),l=t.memoizedState,l===null)return Ce(t),null;if(a=(t.flags&128)!==0,s=l.rendering,s===null)if(a)Ea(l,!1);else{if(Me!==0||e!==null&&(e.flags&128)!==0)for(e=t.child;e!==null;){if(s=Mi(e),s!==null){for(t.flags|=128,Ea(l,!1),e=s.updateQueue,t.updateQueue=e,Vi(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)Go(n,e),n=n.sibling;return G(je,je.current&1|2),ce&&Zt(t,l.treeForkCount),t.child}e=e.sibling}l.tail!==null&&st()>$i&&(t.flags|=128,a=!0,Ea(l,!1),t.lanes=4194304)}else{if(!a)if(e=Mi(s),e!==null){if(t.flags|=128,a=!0,e=e.updateQueue,t.updateQueue=e,Vi(t,e),Ea(l,!0),l.tail===null&&l.tailMode==="hidden"&&!s.alternate&&!ce)return Ce(t),null}else 2*st()-l.renderingStartTime>$i&&n!==536870912&&(t.flags|=128,a=!0,Ea(l,!1),t.lanes=4194304);l.isBackwards?(s.sibling=t.child,t.child=s):(e=l.last,e!==null?e.sibling=s:t.child=s,l.last=s)}return l.tail!==null?(e=l.tail,l.rendering=e,l.tail=e.sibling,l.renderingStartTime=st(),e.sibling=null,n=je.current,G(je,a?n&1|2:n&1),ce&&Zt(t,l.treeForkCount),e):(Ce(t),null);case 22:case 23:return dt(t),Ls(),l=t.memoizedState!==null,e!==null?e.memoizedState!==null!==l&&(t.flags|=8192):l&&(t.flags|=8192),l?(n&536870912)!==0&&(t.flags&128)===0&&(Ce(t),t.subtreeFlags&6&&(t.flags|=8192)):Ce(t),n=t.updateQueue,n!==null&&Vi(t,n.retryQueue),n=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),l=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(l=t.memoizedState.cachePool.pool),l!==n&&(t.flags|=2048),e!==null&&B(Wn),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),Jt(Be),Ce(t),null;case 25:return null;case 30:return null}throw Error(r(156,t.tag))}function My(e,t){switch(_s(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Jt(Be),De(),e=t.flags,(e&65536)!==0&&(e&128)===0?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return ti(t),null;case 31:if(t.memoizedState!==null){if(dt(t),t.alternate===null)throw Error(r(340));Kn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(dt(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(r(340));Kn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return B(je),null;case 4:return De(),null;case 10:return Jt(t.type),null;case 22:case 23:return dt(t),Ls(),e!==null&&B(Wn),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return Jt(Be),null;case 25:return null;default:return null}}function vh(e,t){switch(_s(t),t.tag){case 3:Jt(Be),De();break;case 26:case 27:case 5:ti(t);break;case 4:De();break;case 31:t.memoizedState!==null&&dt(t);break;case 13:dt(t);break;case 19:B(je);break;case 10:Jt(t.type);break;case 22:case 23:dt(t),Ls(),e!==null&&B(Wn);break;case 24:Jt(Be)}}function Ta(e,t){try{var n=t.updateQueue,l=n!==null?n.lastEffect:null;if(l!==null){var a=l.next;n=a;do{if((n.tag&e)===e){l=void 0;var s=n.create,o=n.inst;l=s(),o.destroy=l}n=n.next}while(n!==a)}}catch(h){pe(t,t.return,h)}}function Tn(e,t,n){try{var l=t.updateQueue,a=l!==null?l.lastEffect:null;if(a!==null){var s=a.next;l=s;do{if((l.tag&e)===e){var o=l.inst,h=o.destroy;if(h!==void 0){o.destroy=void 0,a=t;var g=n,N=h;try{N()}catch(D){pe(a,g,D)}}}l=l.next}while(l!==s)}}catch(D){pe(t,t.return,D)}}function gh(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{cf(t,n)}catch(l){pe(e,e.return,l)}}}function bh(e,t,n){n.props=tl(e.type,e.memoizedProps),n.state=e.memoizedState;try{n.componentWillUnmount()}catch(l){pe(e,t,l)}}function Aa(e,t){try{var n=e.ref;if(n!==null){switch(e.tag){case 26:case 27:case 5:var l=e.stateNode;break;case 30:l=e.stateNode;break;default:l=e.stateNode}typeof n=="function"?e.refCleanup=n(l):n.current=l}}catch(a){pe(e,t,a)}}function Bt(e,t){var n=e.ref,l=e.refCleanup;if(n!==null)if(typeof l=="function")try{l()}catch(a){pe(e,t,a)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n=="function")try{n(null)}catch(a){pe(e,t,a)}else n.current=null}function Sh(e){var t=e.type,n=e.memoizedProps,l=e.stateNode;try{e:switch(t){case"button":case"input":case"select":case"textarea":n.autoFocus&&l.focus();break e;case"img":n.src?l.src=n.src:n.srcSet&&(l.srcset=n.srcSet)}}catch(a){pe(e,e.return,a)}}function pc(e,t,n){try{var l=e.stateNode;Iy(l,e.type,n,t),l[et]=t}catch(a){pe(e,e.return,a)}}function xh(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&Mn(e.type)||e.tag===4}function yc(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||xh(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&&Mn(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 vc(e,t,n){var l=e.tag;if(l===5||l===6)e=e.stateNode,t?(n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n).insertBefore(e,t):(t=n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n,t.appendChild(e),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=Gt));else if(l!==4&&(l===27&&Mn(e.type)&&(n=e.stateNode,t=null),e=e.child,e!==null))for(vc(e,t,n),e=e.sibling;e!==null;)vc(e,t,n),e=e.sibling}function Qi(e,t,n){var l=e.tag;if(l===5||l===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(l!==4&&(l===27&&Mn(e.type)&&(n=e.stateNode),e=e.child,e!==null))for(Qi(e,t,n),e=e.sibling;e!==null;)Qi(e,t,n),e=e.sibling}function _h(e){var t=e.stateNode,n=e.memoizedProps;try{for(var l=e.type,a=t.attributes;a.length;)t.removeAttributeNode(a[0]);$e(t,l,n),t[Qe]=e,t[et]=n}catch(s){pe(e,e.return,s)}}var It=!1,qe=!1,gc=!1,Eh=typeof WeakSet=="function"?WeakSet:Set,Ve=null;function Dy(e,t){if(e=e.containerInfo,qc=hu,e=wo(e),fs(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var l=n.getSelection&&n.getSelection();if(l&&l.rangeCount!==0){n=l.anchorNode;var a=l.anchorOffset,s=l.focusNode;l=l.focusOffset;try{n.nodeType,s.nodeType}catch{n=null;break e}var o=0,h=-1,g=-1,N=0,D=0,U=e,O=null;t:for(;;){for(var M;U!==n||a!==0&&U.nodeType!==3||(h=o+a),U!==s||l!==0&&U.nodeType!==3||(g=o+l),U.nodeType===3&&(o+=U.nodeValue.length),(M=U.firstChild)!==null;)O=U,U=M;for(;;){if(U===e)break t;if(O===n&&++N===a&&(h=o),O===s&&++D===l&&(g=o),(M=U.nextSibling)!==null)break;U=O,O=U.parentNode}U=M}n=h===-1||g===-1?null:{start:h,end:g}}else n=null}n=n||{start:0,end:0}}else n=null;for(Yc={focusedElem:e,selectionRange:n},hu=!1,Ve=t;Ve!==null;)if(t=Ve,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,Ve=e;else for(;Ve!==null;){switch(t=Ve,s=t.alternate,e=t.flags,t.tag){case 0:if((e&4)!==0&&(e=t.updateQueue,e=e!==null?e.events:null,e!==null))for(n=0;n title"))),$e(s,l,n),s[Qe]=e,Ge(s),l=s;break e;case"link":var o=Od("link","href",a).get(l+(n.href||""));if(o){for(var h=0;hSe&&(o=Se,Se=W,W=o);var A=Do(h,W),x=Do(h,Se);if(A&&x&&(M.rangeCount!==1||M.anchorNode!==A.node||M.anchorOffset!==A.offset||M.focusNode!==x.node||M.focusOffset!==x.offset)){var R=U.createRange();R.setStart(A.node,A.offset),M.removeAllRanges(),W>Se?(M.addRange(R),M.extend(x.node,x.offset)):(R.setEnd(x.node,x.offset),M.addRange(R))}}}}for(U=[],M=h;M=M.parentNode;)M.nodeType===1&&U.push({element:M,left:M.scrollLeft,top:M.scrollTop});for(typeof h.focus=="function"&&h.focus(),h=0;hn?32:n,j.T=null,n=Ac,Ac=null;var s=Nn,o=an;if(ke=0,Bl=Nn=null,an=0,(he&6)!==0)throw Error(r(331));var h=he;if(he|=4,wh(s.current),Mh(s,s.current,o,n),he=h,Ma(0,!1),ct&&typeof ct.onPostCommitFiberRoot=="function")try{ct.onPostCommitFiberRoot($l,s)}catch{}return!0}finally{X.p=a,j.T=l,Ph(e,t)}}function ed(e,t,n){t=St(n,t),t=ac(e.stateNode,t,2),e=xn(e,t,2),e!==null&&(Fl(e,2),Lt(e))}function pe(e,t,n){if(e.tag===3)ed(e,e,n);else for(;t!==null;){if(t.tag===3){ed(t,e,n);break}else if(t.tag===1){var l=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof l.componentDidCatch=="function"&&(Rn===null||!Rn.has(l))){e=St(n,e),n=th(2),l=xn(t,n,2),l!==null&&(nh(n,l,t,e),Fl(l,2),Lt(l));break}}t=t.return}}function Oc(e,t,n){var l=e.pingCache;if(l===null){l=e.pingCache=new Uy;var a=new Set;l.set(t,a)}else a=l.get(t),a===void 0&&(a=new Set,l.set(t,a));a.has(n)||(xc=!0,a.add(n),e=Yy.bind(null,e,t,n),t.then(e,e))}function Yy(e,t,n){var l=e.pingCache;l!==null&&l.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,Ee===e&&(ue&n)===n&&(Me===4||Me===3&&(ue&62914560)===ue&&300>st()-Ji?(he&2)===0&&Ll(e,0):_c|=n,Ul===ue&&(Ul=0)),Lt(e)}function td(e,t){t===0&&(t=Kr()),e=Qn(e,t),e!==null&&(Fl(e,t),Lt(e))}function ky(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),td(e,n)}function Xy(e,t){var n=0;switch(e.tag){case 31:case 13:var l=e.stateNode,a=e.memoizedState;a!==null&&(n=a.retryLane);break;case 19:l=e.stateNode;break;case 22:l=e.stateNode._retryCache;break;default:throw Error(r(314))}l!==null&&l.delete(t),td(e,n)}function Gy(e,t){return Xu(e,t)}var tu=null,ql=null,zc=!1,nu=!1,Mc=!1,zn=0;function Lt(e){e!==ql&&e.next===null&&(ql===null?tu=ql=e:ql=ql.next=e),nu=!0,zc||(zc=!0,Qy())}function Ma(e,t){if(!Mc&&nu){Mc=!0;do for(var n=!1,l=tu;l!==null;){if(e!==0){var a=l.pendingLanes;if(a===0)var s=0;else{var o=l.suspendedLanes,h=l.pingedLanes;s=(1<<31-rt(42|e)+1)-1,s&=a&~(o&~h),s=s&201326741?s&201326741|1:s?s|2:0}s!==0&&(n=!0,id(l,s))}else s=ue,s=ui(l,l===Ee?s:0,l.cancelPendingCommit!==null||l.timeoutHandle!==-1),(s&3)===0||Wl(l,s)||(n=!0,id(l,s));l=l.next}while(n);Mc=!1}}function Vy(){nd()}function nd(){nu=zc=!1;var e=0;zn!==0&&t0()&&(e=zn);for(var t=st(),n=null,l=tu;l!==null;){var a=l.next,s=ld(l,t);s===0?(l.next=null,n===null?tu=a:n.next=a,a===null&&(ql=n)):(n=l,(e!==0||(s&3)!==0)&&(nu=!0)),l=a}ke!==0&&ke!==5||Ma(e),zn!==0&&(zn=0)}function ld(e,t){for(var n=e.suspendedLanes,l=e.pingedLanes,a=e.expirationTimes,s=e.pendingLanes&-62914561;0h)break;var D=g.transferSize,U=g.initiatorType;D&&dd(U)&&(g=g.responseEnd,o+=D*(g"u"?null:document;function Ad(e,t,n){var l=Yl;if(l&&typeof t=="string"&&t){var a=gt(t);a='link[rel="'+e+'"][href="'+a+'"]',typeof n=="string"&&(a+='[crossorigin="'+n+'"]'),Td.has(a)||(Td.add(a),e={rel:e,crossOrigin:n,href:t},l.querySelector(a)===null&&(t=l.createElement("link"),$e(t,"link",e),Ge(t),l.head.appendChild(t)))}}function o0(e){un.D(e),Ad("dns-prefetch",e,null)}function f0(e,t){un.C(e,t),Ad("preconnect",e,t)}function h0(e,t,n){un.L(e,t,n);var l=Yl;if(l&&e&&t){var a='link[rel="preload"][as="'+gt(t)+'"]';t==="image"&&n&&n.imageSrcSet?(a+='[imagesrcset="'+gt(n.imageSrcSet)+'"]',typeof n.imageSizes=="string"&&(a+='[imagesizes="'+gt(n.imageSizes)+'"]')):a+='[href="'+gt(e)+'"]';var s=a;switch(t){case"style":s=kl(e);break;case"script":s=Xl(e)}Ct.has(s)||(e=S({rel:"preload",href:t==="image"&&n&&n.imageSrcSet?void 0:e,as:t},n),Ct.set(s,e),l.querySelector(a)!==null||t==="style"&&l.querySelector(Ua(s))||t==="script"&&l.querySelector(Ba(s))||(t=l.createElement("link"),$e(t,"link",e),Ge(t),l.head.appendChild(t)))}}function d0(e,t){un.m(e,t);var n=Yl;if(n&&e){var l=t&&typeof t.as=="string"?t.as:"script",a='link[rel="modulepreload"][as="'+gt(l)+'"][href="'+gt(e)+'"]',s=a;switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":s=Xl(e)}if(!Ct.has(s)&&(e=S({rel:"modulepreload",href:e},t),Ct.set(s,e),n.querySelector(a)===null)){switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(n.querySelector(Ba(s)))return}l=n.createElement("link"),$e(l,"link",e),Ge(l),n.head.appendChild(l)}}}function m0(e,t,n){un.S(e,t,n);var l=Yl;if(l&&e){var a=rl(l).hoistableStyles,s=kl(e);t=t||"default";var o=a.get(s);if(!o){var h={loading:0,preload:null};if(o=l.querySelector(Ua(s)))h.loading=5;else{e=S({rel:"stylesheet",href:e,"data-precedence":t},n),(n=Ct.get(s))&&Kc(e,n);var g=o=l.createElement("link");Ge(g),$e(g,"link",e),g._p=new Promise(function(N,D){g.onload=N,g.onerror=D}),g.addEventListener("load",function(){h.loading|=1}),g.addEventListener("error",function(){h.loading|=2}),h.loading|=4,su(o,t,l)}o={type:"stylesheet",instance:o,count:1,state:h},a.set(s,o)}}}function p0(e,t){un.X(e,t);var n=Yl;if(n&&e){var l=rl(n).hoistableScripts,a=Xl(e),s=l.get(a);s||(s=n.querySelector(Ba(a)),s||(e=S({src:e,async:!0},t),(t=Ct.get(a))&&Jc(e,t),s=n.createElement("script"),Ge(s),$e(s,"link",e),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function y0(e,t){un.M(e,t);var n=Yl;if(n&&e){var l=rl(n).hoistableScripts,a=Xl(e),s=l.get(a);s||(s=n.querySelector(Ba(a)),s||(e=S({src:e,async:!0,type:"module"},t),(t=Ct.get(a))&&Jc(e,t),s=n.createElement("script"),Ge(s),$e(s,"link",e),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function Cd(e,t,n,l){var a=(a=le.current)?uu(a):null;if(!a)throw Error(r(446));switch(e){case"meta":case"title":return null;case"style":return typeof n.precedence=="string"&&typeof n.href=="string"?(t=kl(n.href),n=rl(a).hoistableStyles,l=n.get(t),l||(l={type:"style",instance:null,count:0,state:null},n.set(t,l)),l):{type:"void",instance:null,count:0,state:null};case"link":if(n.rel==="stylesheet"&&typeof n.href=="string"&&typeof n.precedence=="string"){e=kl(n.href);var s=rl(a).hoistableStyles,o=s.get(e);if(o||(a=a.ownerDocument||a,o={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},s.set(e,o),(s=a.querySelector(Ua(e)))&&!s._p&&(o.instance=s,o.state.loading=5),Ct.has(e)||(n={rel:"preload",as:"style",href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},Ct.set(e,n),s||v0(a,e,n,o.state))),t&&l===null)throw Error(r(528,""));return o}if(t&&l!==null)throw Error(r(529,""));return null;case"script":return t=n.async,n=n.src,typeof n=="string"&&t&&typeof t!="function"&&typeof t!="symbol"?(t=Xl(n),n=rl(a).hoistableScripts,l=n.get(t),l||(l={type:"script",instance:null,count:0,state:null},n.set(t,l)),l):{type:"void",instance:null,count:0,state:null};default:throw Error(r(444,e))}}function kl(e){return'href="'+gt(e)+'"'}function Ua(e){return'link[rel="stylesheet"]['+e+"]"}function Rd(e){return S({},e,{"data-precedence":e.precedence,precedence:null})}function v0(e,t,n,l){e.querySelector('link[rel="preload"][as="style"]['+t+"]")?l.loading=1:(t=e.createElement("link"),l.preload=t,t.addEventListener("load",function(){return l.loading|=1}),t.addEventListener("error",function(){return l.loading|=2}),$e(t,"link",n),Ge(t),e.head.appendChild(t))}function Xl(e){return'[src="'+gt(e)+'"]'}function Ba(e){return"script[async]"+e}function Nd(e,t,n){if(t.count++,t.instance===null)switch(t.type){case"style":var l=e.querySelector('style[data-href~="'+gt(n.href)+'"]');if(l)return t.instance=l,Ge(l),l;var a=S({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return l=(e.ownerDocument||e).createElement("style"),Ge(l),$e(l,"style",a),su(l,n.precedence,e),t.instance=l;case"stylesheet":a=kl(n.href);var s=e.querySelector(Ua(a));if(s)return t.state.loading|=4,t.instance=s,Ge(s),s;l=Rd(n),(a=Ct.get(a))&&Kc(l,a),s=(e.ownerDocument||e).createElement("link"),Ge(s);var o=s;return o._p=new Promise(function(h,g){o.onload=h,o.onerror=g}),$e(s,"link",l),t.state.loading|=4,su(s,n.precedence,e),t.instance=s;case"script":return s=Xl(n.src),(a=e.querySelector(Ba(s)))?(t.instance=a,Ge(a),a):(l=n,(a=Ct.get(s))&&(l=S({},n),Jc(l,a)),e=e.ownerDocument||e,a=e.createElement("script"),Ge(a),$e(a,"link",l),e.head.appendChild(a),t.instance=a);case"void":return null;default:throw Error(r(443,t.type))}else t.type==="stylesheet"&&(t.state.loading&4)===0&&(l=t.instance,t.state.loading|=4,su(l,n.precedence,e));return t.instance}function su(e,t,n){for(var l=n.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=l.length?l[l.length-1]:null,s=a,o=0;o title"):null)}function g0(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case"meta":case"title":return!0;case"style":if(typeof t.precedence!="string"||typeof t.href!="string"||t.href==="")break;return!0;case"link":if(typeof t.rel!="string"||typeof t.href!="string"||t.href===""||t.onLoad||t.onError)break;switch(t.rel){case"stylesheet":return e=t.disabled,typeof t.precedence=="string"&&e==null;default:return!0}case"script":if(t.async&&typeof t.async!="function"&&typeof t.async!="symbol"&&!t.onLoad&&!t.onError&&t.src&&typeof t.src=="string")return!0}return!1}function Md(e){return!(e.type==="stylesheet"&&(e.state.loading&3)===0)}function b0(e,t,n,l){if(n.type==="stylesheet"&&(typeof l.media!="string"||matchMedia(l.media).matches!==!1)&&(n.state.loading&4)===0){if(n.instance===null){var a=kl(l.href),s=t.querySelector(Ua(a));if(s){t=s._p,t!==null&&typeof t=="object"&&typeof t.then=="function"&&(e.count++,e=ru.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=s,Ge(s);return}s=t.ownerDocument||t,l=Rd(l),(a=Ct.get(a))&&Kc(l,a),s=s.createElement("link"),Ge(s);var o=s;o._p=new Promise(function(h,g){o.onload=h,o.onerror=g}),$e(s,"link",l),n.instance=s}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&(n.state.loading&3)===0&&(e.count++,n=ru.bind(e),t.addEventListener("load",n),t.addEventListener("error",n))}}var $c=0;function S0(e,t){return e.stylesheets&&e.count===0&&fu(e,e.stylesheets),0$c?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(l),clearTimeout(a)}}:null}function ru(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)fu(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var ou=null;function fu(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,ou=new Map,t.forEach(x0,e),ou=null,ru.call(e))}function x0(e,t){if(!(t.state.loading&4)){var n=ou.get(e);if(n)var l=n.get(null);else{n=new Map,ou.set(e,n);for(var a=e.querySelectorAll("link[data-precedence],style[data-precedence]"),s=0;s"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(u)}catch(i){console.error(i)}}return u(),ar.exports=L0(),ar.exports}var q0=H0();var tm="popstate";function Y0(u={}){function i(r,f){let{pathname:d,search:m,hash:b}=r.location;return pr("",{pathname:d,search:m,hash:b},f.state&&f.state.usr||null,f.state&&f.state.key||"default")}function c(r,f){return typeof f=="string"?f:Wa(f)}return X0(i,c,null,u)}function Oe(u,i){if(u===!1||u===null||typeof u>"u")throw new Error(i)}function jt(u,i){if(!u){typeof console<"u"&&console.warn(i);try{throw new Error(i)}catch{}}}function k0(){return Math.random().toString(36).substring(2,10)}function nm(u,i){return{usr:u.state,key:u.key,idx:i}}function pr(u,i,c=null,r){return{pathname:typeof u=="string"?u:u.pathname,search:"",hash:"",...typeof i=="string"?Ql(i):i,state:c,key:i&&i.key||r||k0()}}function Wa({pathname:u="/",search:i="",hash:c=""}){return i&&i!=="?"&&(u+=i.charAt(0)==="?"?i:"?"+i),c&&c!=="#"&&(u+=c.charAt(0)==="#"?c:"#"+c),u}function Ql(u){let i={};if(u){let c=u.indexOf("#");c>=0&&(i.hash=u.substring(c),u=u.substring(0,c));let r=u.indexOf("?");r>=0&&(i.search=u.substring(r),u=u.substring(0,r)),u&&(i.pathname=u)}return i}function X0(u,i,c,r={}){let{window:f=document.defaultView,v5Compat:d=!1}=r,m=f.history,b="POP",p=null,v=T();v==null&&(v=0,m.replaceState({...m.state,idx:v},""));function T(){return(m.state||{idx:null}).idx}function S(){b="POP";let Y=T(),L=Y==null?null:Y-v;v=Y,p&&p({action:b,location:k.location,delta:L})}function C(Y,L){b="PUSH";let q=pr(k.location,Y,L);v=T()+1;let Q=nm(q,v),P=k.createHref(q);try{m.pushState(Q,"",P)}catch(ye){if(ye instanceof DOMException&&ye.name==="DataCloneError")throw ye;f.location.assign(P)}d&&p&&p({action:b,location:k.location,delta:1})}function z(Y,L){b="REPLACE";let q=pr(k.location,Y,L);v=T();let Q=nm(q,v),P=k.createHref(q);m.replaceState(Q,"",P),d&&p&&p({action:b,location:k.location,delta:0})}function H(Y){return G0(Y)}let k={get action(){return b},get location(){return u(f,m)},listen(Y){if(p)throw new Error("A history only accepts one active listener");return f.addEventListener(tm,S),p=Y,()=>{f.removeEventListener(tm,S),p=null}},createHref(Y){return i(f,Y)},createURL:H,encodeLocation(Y){let L=H(Y);return{pathname:L.pathname,search:L.search,hash:L.hash}},push:C,replace:z,go(Y){return m.go(Y)}};return k}function G0(u,i=!1){let c="http://localhost";typeof window<"u"&&(c=window.location.origin!=="null"?window.location.origin:window.location.href),Oe(c,"No window.location.(origin|href) available to create URL");let r=typeof u=="string"?u:Wa(u);return r=r.replace(/ $/,"%20"),!i&&r.startsWith("//")&&(r=c+r),new URL(r,c)}function xm(u,i,c="/"){return V0(u,i,c,!1)}function V0(u,i,c,r){let f=typeof i=="string"?Ql(i):i,d=rn(f.pathname||"/",c);if(d==null)return null;let m=_m(u);Q0(m);let b=null;for(let p=0;b==null&&p{let T={relativePath:v===void 0?m.path||"":v,caseSensitive:m.caseSensitive===!0,childrenIndex:b,route:m};if(T.relativePath.startsWith("/")){if(!T.relativePath.startsWith(r)&&p)return;Oe(T.relativePath.startsWith(r),`Absolute route path "${T.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),T.relativePath=T.relativePath.slice(r.length)}let S=cn([r,T.relativePath]),C=c.concat(T);m.children&&m.children.length>0&&(Oe(m.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${S}".`),_m(m.children,i,C,S,p)),!(m.path==null&&!m.index)&&i.push({path:S,score:P0(S,m.index),routesMeta:C})};return u.forEach((m,b)=>{if(m.path===""||!m.path?.includes("?"))d(m,b);else for(let p of Em(m.path))d(m,b,!0,p)}),i}function Em(u){let i=u.split("/");if(i.length===0)return[];let[c,...r]=i,f=c.endsWith("?"),d=c.replace(/\?$/,"");if(r.length===0)return f?[d,""]:[d];let m=Em(r.join("/")),b=[];return b.push(...m.map(p=>p===""?d:[d,p].join("/"))),f&&b.push(...m),b.map(p=>u.startsWith("/")&&p===""?"/":p)}function Q0(u){u.sort((i,c)=>i.score!==c.score?c.score-i.score:I0(i.routesMeta.map(r=>r.childrenIndex),c.routesMeta.map(r=>r.childrenIndex)))}var Z0=/^:[\w-]+$/,K0=3,J0=2,$0=1,W0=10,F0=-2,lm=u=>u==="*";function P0(u,i){let c=u.split("/"),r=c.length;return c.some(lm)&&(r+=F0),i&&(r+=J0),c.filter(f=>!lm(f)).reduce((f,d)=>f+(Z0.test(d)?K0:d===""?$0:W0),r)}function I0(u,i){return u.length===i.length&&u.slice(0,-1).every((r,f)=>r===i[f])?u[u.length-1]-i[i.length-1]:0}function ev(u,i,c=!1){let{routesMeta:r}=u,f={},d="/",m=[];for(let b=0;b{if(T==="*"){let H=b[C]||"";m=d.slice(0,d.length-H.length).replace(/(.)\/+$/,"$1")}const z=b[C];return S&&!z?v[T]=void 0:v[T]=(z||"").replace(/%2F/g,"/"),v},{}),pathname:d,pathnameBase:m,pattern:u}}function tv(u,i=!1,c=!0){jt(u==="*"||!u.endsWith("*")||u.endsWith("/*"),`Route path "${u}" will be treated as if it were "${u.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${u.replace(/\*$/,"/*")}".`);let r=[],f="^"+u.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(m,b,p)=>(r.push({paramName:b,isOptional:p!=null}),p?"/?([^\\/]+)?":"/([^\\/]+)")).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return u.endsWith("*")?(r.push({paramName:"*"}),f+=u==="*"||u==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):c?f+="\\/*$":u!==""&&u!=="/"&&(f+="(?:(?=\\/|$))"),[new RegExp(f,i?void 0:"i"),r]}function nv(u){try{return u.split("/").map(i=>decodeURIComponent(i).replace(/\//g,"%2F")).join("/")}catch(i){return jt(!1,`The URL path "${u}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${i}).`),u}}function rn(u,i){if(i==="/")return u;if(!u.toLowerCase().startsWith(i.toLowerCase()))return null;let c=i.endsWith("/")?i.length-1:i.length,r=u.charAt(c);return r&&r!=="/"?null:u.slice(c)||"/"}var lv=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,av=u=>lv.test(u);function iv(u,i="/"){let{pathname:c,search:r="",hash:f=""}=typeof u=="string"?Ql(u):u,d;if(c)if(av(c))d=c;else{if(c.includes("//")){let m=c;c=c.replace(/\/\/+/g,"/"),jt(!1,`Pathnames cannot have embedded double slashes - normalizing ${m} -> ${c}`)}c.startsWith("/")?d=am(c.substring(1),"/"):d=am(c,i)}else d=i;return{pathname:d,search:cv(r),hash:rv(f)}}function am(u,i){let c=i.replace(/\/+$/,"").split("/");return u.split("/").forEach(f=>{f===".."?c.length>1&&c.pop():f!=="."&&c.push(f)}),c.length>1?c.join("/"):"/"}function cr(u,i,c,r){return`Cannot include a '${u}' character in a manually specified \`to.${i}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${c}\` field. Alternatively you may provide the full path as a string in and the router will parse it for you.`}function uv(u){return u.filter((i,c)=>c===0||i.route.path&&i.route.path.length>0)}function Tm(u){let i=uv(u);return i.map((c,r)=>r===i.length-1?c.pathname:c.pathnameBase)}function Am(u,i,c,r=!1){let f;typeof u=="string"?f=Ql(u):(f={...u},Oe(!f.pathname||!f.pathname.includes("?"),cr("?","pathname","search",f)),Oe(!f.pathname||!f.pathname.includes("#"),cr("#","pathname","hash",f)),Oe(!f.search||!f.search.includes("#"),cr("#","search","hash",f)));let d=u===""||f.pathname==="",m=d?"/":f.pathname,b;if(m==null)b=c;else{let S=i.length-1;if(!r&&m.startsWith("..")){let C=m.split("/");for(;C[0]==="..";)C.shift(),S-=1;f.pathname=C.join("/")}b=S>=0?i[S]:"/"}let p=iv(f,b),v=m&&m!=="/"&&m.endsWith("/"),T=(d||m===".")&&c.endsWith("/");return!p.pathname.endsWith("/")&&(v||T)&&(p.pathname+="/"),p}var cn=u=>u.join("/").replace(/\/\/+/g,"/"),sv=u=>u.replace(/\/+$/,"").replace(/^\/*/,"/"),cv=u=>!u||u==="?"?"":u.startsWith("?")?u:"?"+u,rv=u=>!u||u==="#"?"":u.startsWith("#")?u:"#"+u;function ov(u){return u!=null&&typeof u.status=="number"&&typeof u.statusText=="string"&&typeof u.internal=="boolean"&&"data"in u}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var Cm=["POST","PUT","PATCH","DELETE"];new Set(Cm);var fv=["GET",...Cm];new Set(fv);var Zl=E.createContext(null);Zl.displayName="DataRouter";var Mu=E.createContext(null);Mu.displayName="DataRouterState";E.createContext(!1);var Rm=E.createContext({isTransitioning:!1});Rm.displayName="ViewTransition";var hv=E.createContext(new Map);hv.displayName="Fetchers";var dv=E.createContext(null);dv.displayName="Await";var Yt=E.createContext(null);Yt.displayName="Navigation";var Fa=E.createContext(null);Fa.displayName="Location";var on=E.createContext({outlet:null,matches:[],isDataRoute:!1});on.displayName="Route";var Tr=E.createContext(null);Tr.displayName="RouteError";function mv(u,{relative:i}={}){Oe(Pa(),"useHref() may be used only in the context of a component.");let{basename:c,navigator:r}=E.useContext(Yt),{hash:f,pathname:d,search:m}=Ia(u,{relative:i}),b=d;return c!=="/"&&(b=d==="/"?c:cn([c,d])),r.createHref({pathname:b,search:m,hash:f})}function Pa(){return E.useContext(Fa)!=null}function il(){return Oe(Pa(),"useLocation() may be used only in the context of a component."),E.useContext(Fa).location}var Nm="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function Om(u){E.useContext(Yt).static||E.useLayoutEffect(u)}function pv(){let{isDataRoute:u}=E.useContext(on);return u?Nv():yv()}function yv(){Oe(Pa(),"useNavigate() may be used only in the context of a component.");let u=E.useContext(Zl),{basename:i,navigator:c}=E.useContext(Yt),{matches:r}=E.useContext(on),{pathname:f}=il(),d=JSON.stringify(Tm(r)),m=E.useRef(!1);return Om(()=>{m.current=!0}),E.useCallback((p,v={})=>{if(jt(m.current,Nm),!m.current)return;if(typeof p=="number"){c.go(p);return}let T=Am(p,JSON.parse(d),f,v.relative==="path");u==null&&i!=="/"&&(T.pathname=T.pathname==="/"?i:cn([i,T.pathname])),(v.replace?c.replace:c.push)(T,v.state,v)},[i,c,d,f,u])}E.createContext(null);function Ia(u,{relative:i}={}){let{matches:c}=E.useContext(on),{pathname:r}=il(),f=JSON.stringify(Tm(c));return E.useMemo(()=>Am(u,JSON.parse(f),r,i==="path"),[u,f,r,i])}function vv(u,i){return zm(u,i)}function zm(u,i,c,r,f){Oe(Pa(),"useRoutes() may be used only in the context of a component.");let{navigator:d}=E.useContext(Yt),{matches:m}=E.useContext(on),b=m[m.length-1],p=b?b.params:{},v=b?b.pathname:"/",T=b?b.pathnameBase:"/",S=b&&b.route;{let q=S&&S.path||"";Mm(v,!S||q.endsWith("*")||q.endsWith("*?"),`You rendered descendant (or called \`useRoutes()\`) at "${v}" (under ) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render. -Please change the parent to .`)}let C=il(),z;if(i){let q=typeof i=="string"?Ql(i):i;Oe(T==="/"||q.pathname?.startsWith(T),`When overriding the location using \`\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${T}" but pathname "${q.pathname}" was given in the \`location\` prop.`),z=q}else z=C;let H=z.pathname||"/",k=H;if(T!=="/"){let q=T.replace(/^\//,"").split("/");k="/"+H.replace(/^\//,"").split("/").slice(q.length).join("/")}let Y=xm(u,{pathname:k});jt(S||Y!=null,`No routes matched location "${z.pathname}${z.search}${z.hash}" `),jt(Y==null||Y[Y.length-1].route.element!==void 0||Y[Y.length-1].route.Component!==void 0||Y[Y.length-1].route.lazy!==void 0,`Matched leaf route at location "${z.pathname}${z.search}${z.hash}" does not have an element or Component. This means it will render an with a null value by default resulting in an "empty" page.`);let L=_v(Y&&Y.map(q=>Object.assign({},q,{params:Object.assign({},p,q.params),pathname:cn([T,d.encodeLocation?d.encodeLocation(q.pathname.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:q.pathname]),pathnameBase:q.pathnameBase==="/"?T:cn([T,d.encodeLocation?d.encodeLocation(q.pathnameBase.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:q.pathnameBase])})),m,c,r,f);return i&&L?E.createElement(Fa.Provider,{value:{location:{pathname:"/",search:"",hash:"",state:null,key:"default",...z},navigationType:"POP"}},L):L}function gv(){let u=Rv(),i=ov(u)?`${u.status} ${u.statusText}`:u instanceof Error?u.message:JSON.stringify(u),c=u instanceof Error?u.stack:null,r="rgba(200,200,200, 0.5)",f={padding:"0.5rem",backgroundColor:r},d={padding:"2px 4px",backgroundColor:r},m=null;return console.error("Error handled by React Router default ErrorBoundary:",u),m=E.createElement(E.Fragment,null,E.createElement("p",null,"💿 Hey developer 👋"),E.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",E.createElement("code",{style:d},"ErrorBoundary")," or"," ",E.createElement("code",{style:d},"errorElement")," prop on your route.")),E.createElement(E.Fragment,null,E.createElement("h2",null,"Unexpected Application Error!"),E.createElement("h3",{style:{fontStyle:"italic"}},i),c?E.createElement("pre",{style:f},c):null,m)}var bv=E.createElement(gv,null),Sv=class extends E.Component{constructor(u){super(u),this.state={location:u.location,revalidation:u.revalidation,error:u.error}}static getDerivedStateFromError(u){return{error:u}}static getDerivedStateFromProps(u,i){return i.location!==u.location||i.revalidation!=="idle"&&u.revalidation==="idle"?{error:u.error,location:u.location,revalidation:u.revalidation}:{error:u.error!==void 0?u.error:i.error,location:i.location,revalidation:u.revalidation||i.revalidation}}componentDidCatch(u,i){this.props.onError?this.props.onError(u,i):console.error("React Router caught the following error during render",u)}render(){return this.state.error!==void 0?E.createElement(on.Provider,{value:this.props.routeContext},E.createElement(Tr.Provider,{value:this.state.error,children:this.props.component})):this.props.children}};function xv({routeContext:u,match:i,children:c}){let r=E.useContext(Zl);return r&&r.static&&r.staticContext&&(i.route.errorElement||i.route.ErrorBoundary)&&(r.staticContext._deepestRenderedBoundaryId=i.route.id),E.createElement(on.Provider,{value:u},c)}function _v(u,i=[],c=null,r=null,f=null){if(u==null){if(!c)return null;if(c.errors)u=c.matches;else if(i.length===0&&!c.initialized&&c.matches.length>0)u=c.matches;else return null}let d=u,m=c?.errors;if(m!=null){let T=d.findIndex(S=>S.route.id&&m?.[S.route.id]!==void 0);Oe(T>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(m).join(",")}`),d=d.slice(0,Math.min(d.length,T+1))}let b=!1,p=-1;if(c)for(let T=0;T=0?d=d.slice(0,p+1):d=[d[0]];break}}}let v=c&&r?(T,S)=>{r(T,{location:c.location,params:c.matches?.[0]?.params??{},errorInfo:S})}:void 0;return d.reduceRight((T,S,C)=>{let z,H=!1,k=null,Y=null;c&&(z=m&&S.route.id?m[S.route.id]:void 0,k=S.route.errorElement||bv,b&&(p<0&&C===0?(Mm("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),H=!0,Y=null):p===C&&(H=!0,Y=S.route.hydrateFallbackElement||null)));let L=i.concat(d.slice(0,C+1)),q=()=>{let Q;return z?Q=k:H?Q=Y:S.route.Component?Q=E.createElement(S.route.Component,null):S.route.element?Q=S.route.element:Q=T,E.createElement(xv,{match:S,routeContext:{outlet:T,matches:L,isDataRoute:c!=null},children:Q})};return c&&(S.route.ErrorBoundary||S.route.errorElement||C===0)?E.createElement(Sv,{location:c.location,revalidation:c.revalidation,component:k,error:z,children:q(),routeContext:{outlet:null,matches:L,isDataRoute:!0},onError:v}):q()},null)}function Ar(u){return`${u} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function Ev(u){let i=E.useContext(Zl);return Oe(i,Ar(u)),i}function Tv(u){let i=E.useContext(Mu);return Oe(i,Ar(u)),i}function Av(u){let i=E.useContext(on);return Oe(i,Ar(u)),i}function Cr(u){let i=Av(u),c=i.matches[i.matches.length-1];return Oe(c.route.id,`${u} can only be used on routes that contain a unique "id"`),c.route.id}function Cv(){return Cr("useRouteId")}function Rv(){let u=E.useContext(Tr),i=Tv("useRouteError"),c=Cr("useRouteError");return u!==void 0?u:i.errors?.[c]}function Nv(){let{router:u}=Ev("useNavigate"),i=Cr("useNavigate"),c=E.useRef(!1);return Om(()=>{c.current=!0}),E.useCallback(async(f,d={})=>{jt(c.current,Nm),c.current&&(typeof f=="number"?u.navigate(f):await u.navigate(f,{fromRouteId:i,...d}))},[u,i])}var im={};function Mm(u,i,c){!i&&!im[u]&&(im[u]=!0,jt(!1,c))}E.memo(Ov);function Ov({routes:u,future:i,state:c,unstable_onError:r}){return zm(u,void 0,c,r,i)}function yr(u){Oe(!1,"A is only ever to be used as the child of element, never rendered directly. Please wrap your in a .")}function zv({basename:u="/",children:i=null,location:c,navigationType:r="POP",navigator:f,static:d=!1}){Oe(!Pa(),"You cannot render a inside another . You should never have more than one in your app.");let m=u.replace(/^\/*/,"/"),b=E.useMemo(()=>({basename:m,navigator:f,static:d,future:{}}),[m,f,d]);typeof c=="string"&&(c=Ql(c));let{pathname:p="/",search:v="",hash:T="",state:S=null,key:C="default"}=c,z=E.useMemo(()=>{let H=rn(p,m);return H==null?null:{location:{pathname:H,search:v,hash:T,state:S,key:C},navigationType:r}},[m,p,v,T,S,C,r]);return jt(z!=null,` is not able to match the URL "${p}${v}${T}" because it does not start with the basename, so the won't render anything.`),z==null?null:E.createElement(Yt.Provider,{value:b},E.createElement(Fa.Provider,{children:i,value:z}))}function Mv({children:u,location:i}){return vv(vr(u),i)}function vr(u,i=[]){let c=[];return E.Children.forEach(u,(r,f)=>{if(!E.isValidElement(r))return;let d=[...i,f];if(r.type===E.Fragment){c.push.apply(c,vr(r.props.children,d));return}Oe(r.type===yr,`[${typeof r.type=="string"?r.type:r.type.name}] is not a component. All component children of must be a or `),Oe(!r.props.index||!r.props.children,"An index route cannot have child routes.");let m={id:r.props.id||d.join("-"),caseSensitive:r.props.caseSensitive,element:r.props.element,Component:r.props.Component,index:r.props.index,path:r.props.path,middleware:r.props.middleware,loader:r.props.loader,action:r.props.action,hydrateFallbackElement:r.props.hydrateFallbackElement,HydrateFallback:r.props.HydrateFallback,errorElement:r.props.errorElement,ErrorBoundary:r.props.ErrorBoundary,hasErrorBoundary:r.props.hasErrorBoundary===!0||r.props.ErrorBoundary!=null||r.props.errorElement!=null,shouldRevalidate:r.props.shouldRevalidate,handle:r.props.handle,lazy:r.props.lazy};r.props.children&&(m.children=vr(r.props.children,d)),c.push(m)}),c}var Eu="get",Tu="application/x-www-form-urlencoded";function Du(u){return u!=null&&typeof u.tagName=="string"}function Dv(u){return Du(u)&&u.tagName.toLowerCase()==="button"}function jv(u){return Du(u)&&u.tagName.toLowerCase()==="form"}function wv(u){return Du(u)&&u.tagName.toLowerCase()==="input"}function Uv(u){return!!(u.metaKey||u.altKey||u.ctrlKey||u.shiftKey)}function Bv(u,i){return u.button===0&&(!i||i==="_self")&&!Uv(u)}var bu=null;function Lv(){if(bu===null)try{new FormData(document.createElement("form"),0),bu=!1}catch{bu=!0}return bu}var Hv=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function rr(u){return u!=null&&!Hv.has(u)?(jt(!1,`"${u}" is not a valid \`encType\` for \`\`/\`\` and will default to "${Tu}"`),null):u}function qv(u,i){let c,r,f,d,m;if(jv(u)){let b=u.getAttribute("action");r=b?rn(b,i):null,c=u.getAttribute("method")||Eu,f=rr(u.getAttribute("enctype"))||Tu,d=new FormData(u)}else if(Dv(u)||wv(u)&&(u.type==="submit"||u.type==="image")){let b=u.form;if(b==null)throw new Error('Cannot submit a
-
+
{logs.length === 0 ? (

No logs yet.

) : ( @@ -17,9 +17,9 @@ export default function LogPanel() { .reverse() .map((entry) => (
- {entry.timestamp}{' '} - [{entry.level}]{' '} - {entry.label && [{entry.label}]}{' '} + {entry.timestamp}{' '} + [{entry.level}]{' '} + {entry.label && [{entry.label}]}{' '} {entry.message}
)) From ce8222bf76940b6695e08da0d696e1256f6a9bac Mon Sep 17 00:00:00 2001 From: legop3 Date: Sun, 16 Nov 2025 15:21:27 -0500 Subject: [PATCH 49/61] barss --- .../{index-BouNEyLy.js => index-Be8zA8wd.js} | 14 +++++++------- server/public/assets/index-BhWEQnjm.css | 1 - server/public/assets/index-DkNFeqA8.css | 1 + server/public/index.html | 4 ++-- webui/src/components/RightPaneTabs.jsx | 2 +- webui/src/components/TelemetryPanel.jsx | 19 +++++++++++++++++++ 6 files changed, 30 insertions(+), 11 deletions(-) rename server/public/assets/{index-BouNEyLy.js => index-Be8zA8wd.js} (53%) delete mode 100644 server/public/assets/index-BhWEQnjm.css create mode 100644 server/public/assets/index-DkNFeqA8.css diff --git a/server/public/assets/index-BouNEyLy.js b/server/public/assets/index-Be8zA8wd.js similarity index 53% rename from server/public/assets/index-BouNEyLy.js rename to server/public/assets/index-Be8zA8wd.js index 296a8371..fce62b38 100644 --- a/server/public/assets/index-BouNEyLy.js +++ b/server/public/assets/index-Be8zA8wd.js @@ -1,11 +1,11 @@ -(function(){const i=document.createElement("link").relList;if(i&&i.supports&&i.supports("modulepreload"))return;for(const f of document.querySelectorAll('link[rel="modulepreload"]'))r(f);new MutationObserver(f=>{for(const d of f)if(d.type==="childList")for(const m of d.addedNodes)m.tagName==="LINK"&&m.rel==="modulepreload"&&r(m)}).observe(document,{childList:!0,subtree:!0});function c(f){const d={};return f.integrity&&(d.integrity=f.integrity),f.referrerPolicy&&(d.referrerPolicy=f.referrerPolicy),f.crossOrigin==="use-credentials"?d.credentials="include":f.crossOrigin==="anonymous"?d.credentials="omit":d.credentials="same-origin",d}function r(f){if(f.ep)return;f.ep=!0;const d=c(f);fetch(f.href,d)}})();var nr={exports:{}},ka={};var Qd;function z0(){if(Qd)return ka;Qd=1;var u=Symbol.for("react.transitional.element"),i=Symbol.for("react.fragment");function c(r,f,d){var m=null;if(d!==void 0&&(m=""+d),f.key!==void 0&&(m=""+f.key),"key"in f){d={};for(var b in f)b!=="key"&&(d[b]=f[b])}else d=f;return f=d.ref,{$$typeof:u,type:r,key:m,ref:f!==void 0?f:null,props:d}}return ka.Fragment=i,ka.jsx=c,ka.jsxs=c,ka}var Zd;function M0(){return Zd||(Zd=1,nr.exports=z0()),nr.exports}var y=M0(),lr={exports:{}},I={};var Kd;function D0(){if(Kd)return I;Kd=1;var u=Symbol.for("react.transitional.element"),i=Symbol.for("react.portal"),c=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),f=Symbol.for("react.profiler"),d=Symbol.for("react.consumer"),m=Symbol.for("react.context"),b=Symbol.for("react.forward_ref"),p=Symbol.for("react.suspense"),v=Symbol.for("react.memo"),T=Symbol.for("react.lazy"),S=Symbol.for("react.activity"),C=Symbol.iterator;function z(_){return _===null||typeof _!="object"?null:(_=C&&_[C]||_["@@iterator"],typeof _=="function"?_:null)}var H={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},k=Object.assign,Y={};function L(_,B,G){this.props=_,this.context=B,this.refs=Y,this.updater=G||H}L.prototype.isReactComponent={},L.prototype.setState=function(_,B){if(typeof _!="object"&&typeof _!="function"&&_!=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,_,B,"setState")},L.prototype.forceUpdate=function(_){this.updater.enqueueForceUpdate(this,_,"forceUpdate")};function q(){}q.prototype=L.prototype;function Q(_,B,G){this.props=_,this.context=B,this.refs=Y,this.updater=G||H}var P=Q.prototype=new q;P.constructor=Q,k(P,L.prototype),P.isPureReactComponent=!0;var ye=Array.isArray;function Re(){}var $={H:null,A:null,T:null,S:null},Te=Object.prototype.hasOwnProperty;function xe(_,B,G){var Z=G.ref;return{$$typeof:u,type:_,key:B,ref:Z!==void 0?Z:null,props:G}}function Ue(_,B){return xe(_.type,B,_.props)}function Xe(_){return typeof _=="object"&&_!==null&&_.$$typeof===u}function We(_){var B={"=":"=0",":":"=2"};return"$"+_.replace(/[=:]/g,function(G){return B[G]})}var Hn=/\/+/g;function kt(_,B){return typeof _=="object"&&_!==null&&_.key!=null?We(""+_.key):B.toString(36)}function Nt(_){switch(_.status){case"fulfilled":return _.value;case"rejected":throw _.reason;default:switch(typeof _.status=="string"?_.then(Re,Re):(_.status="pending",_.then(function(B){_.status==="pending"&&(_.status="fulfilled",_.value=B)},function(B){_.status==="pending"&&(_.status="rejected",_.reason=B)})),_.status){case"fulfilled":return _.value;case"rejected":throw _.reason}}throw _}function j(_,B,G,Z,ee){var le=typeof _;(le==="undefined"||le==="boolean")&&(_=null);var de=!1;if(_===null)de=!0;else switch(le){case"bigint":case"string":case"number":de=!0;break;case"object":switch(_.$$typeof){case u:case i:de=!0;break;case T:return de=_._init,j(de(_._payload),B,G,Z,ee)}}if(de)return ee=ee(_),de=Z===""?"."+kt(_,0):Z,ye(ee)?(G="",de!=null&&(G=de.replace(Hn,"$&/")+"/"),j(ee,B,G,"",function(Jl){return Jl})):ee!=null&&(Xe(ee)&&(ee=Ue(ee,G+(ee.key==null||_&&_.key===ee.key?"":(""+ee.key).replace(Hn,"$&/")+"/")+de)),B.push(ee)),1;de=0;var Pe=Z===""?".":Z+":";if(ye(_))for(var De=0;De<_.length;De++)Z=_[De],le=Pe+kt(Z,De),de+=j(Z,B,G,le,ee);else if(De=z(_),typeof De=="function")for(_=De.call(_),De=0;!(Z=_.next()).done;)Z=Z.value,le=Pe+kt(Z,De++),de+=j(Z,B,G,le,ee);else if(le==="object"){if(typeof _.then=="function")return j(Nt(_),B,G,Z,ee);throw B=String(_),Error("Objects are not valid as a React child (found: "+(B==="[object Object]"?"object with keys {"+Object.keys(_).join(", ")+"}":B)+"). If you meant to render a collection of children, use an array instead.")}return de}function X(_,B,G){if(_==null)return _;var Z=[],ee=0;return j(_,Z,"","",function(le){return B.call(G,le,ee++)}),Z}function F(_){if(_._status===-1){var B=_._result;B=B(),B.then(function(G){(_._status===0||_._status===-1)&&(_._status=1,_._result=G)},function(G){(_._status===0||_._status===-1)&&(_._status=2,_._result=G)}),_._status===-1&&(_._status=0,_._result=B)}if(_._status===1)return _._result.default;throw _._result}var ve=typeof reportError=="function"?reportError:function(_){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var B=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof _=="object"&&_!==null&&typeof _.message=="string"?String(_.message):String(_),error:_});if(!window.dispatchEvent(B))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",_);return}console.error(_)},_e={map:X,forEach:function(_,B,G){X(_,function(){B.apply(this,arguments)},G)},count:function(_){var B=0;return X(_,function(){B++}),B},toArray:function(_){return X(_,function(B){return B})||[]},only:function(_){if(!Xe(_))throw Error("React.Children.only expected to receive a single React element child.");return _}};return I.Activity=S,I.Children=_e,I.Component=L,I.Fragment=c,I.Profiler=f,I.PureComponent=Q,I.StrictMode=r,I.Suspense=p,I.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=$,I.__COMPILER_RUNTIME={__proto__:null,c:function(_){return $.H.useMemoCache(_)}},I.cache=function(_){return function(){return _.apply(null,arguments)}},I.cacheSignal=function(){return null},I.cloneElement=function(_,B,G){if(_==null)throw Error("The argument must be a React element, but you passed "+_+".");var Z=k({},_.props),ee=_.key;if(B!=null)for(le in B.key!==void 0&&(ee=""+B.key),B)!Te.call(B,le)||le==="key"||le==="__self"||le==="__source"||le==="ref"&&B.ref===void 0||(Z[le]=B[le]);var le=arguments.length-2;if(le===1)Z.children=G;else if(1>>1,_e=j[ve];if(0>>1;ve<_;){var B=2*(ve+1)-1,G=j[B],Z=B+1,ee=j[Z];if(0>f(G,F))Z<_e&&0>f(ee,G)?(j[ve]=ee,j[Z]=F,ve=Z):(j[ve]=G,j[B]=F,ve=B);else if(Z<_e&&0>f(ee,F))j[ve]=ee,j[Z]=F,ve=Z;else break e}}return X}function f(j,X){var F=j.sortIndex-X.sortIndex;return F!==0?F:j.id-X.id}if(u.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var d=performance;u.unstable_now=function(){return d.now()}}else{var m=Date,b=m.now();u.unstable_now=function(){return m.now()-b}}var p=[],v=[],T=1,S=null,C=3,z=!1,H=!1,k=!1,Y=!1,L=typeof setTimeout=="function"?setTimeout:null,q=typeof clearTimeout=="function"?clearTimeout:null,Q=typeof setImmediate<"u"?setImmediate:null;function P(j){for(var X=c(v);X!==null;){if(X.callback===null)r(v);else if(X.startTime<=j)r(v),X.sortIndex=X.expirationTime,i(p,X);else break;X=c(v)}}function ye(j){if(k=!1,P(j),!H)if(c(p)!==null)H=!0,Re||(Re=!0,We());else{var X=c(v);X!==null&&Nt(ye,X.startTime-j)}}var Re=!1,$=-1,Te=5,xe=-1;function Ue(){return Y?!0:!(u.unstable_now()-xej&&Ue());){var ve=S.callback;if(typeof ve=="function"){S.callback=null,C=S.priorityLevel;var _e=ve(S.expirationTime<=j);if(j=u.unstable_now(),typeof _e=="function"){S.callback=_e,P(j),X=!0;break t}S===c(p)&&r(p),P(j)}else r(p);S=c(p)}if(S!==null)X=!0;else{var _=c(v);_!==null&&Nt(ye,_.startTime-j),X=!1}}break e}finally{S=null,C=F,z=!1}X=void 0}}finally{X?We():Re=!1}}}var We;if(typeof Q=="function")We=function(){Q(Xe)};else if(typeof MessageChannel<"u"){var Hn=new MessageChannel,kt=Hn.port2;Hn.port1.onmessage=Xe,We=function(){kt.postMessage(null)}}else We=function(){L(Xe,0)};function Nt(j,X){$=L(function(){j(u.unstable_now())},X)}u.unstable_IdlePriority=5,u.unstable_ImmediatePriority=1,u.unstable_LowPriority=4,u.unstable_NormalPriority=3,u.unstable_Profiling=null,u.unstable_UserBlockingPriority=2,u.unstable_cancelCallback=function(j){j.callback=null},u.unstable_forceFrameRate=function(j){0>j||125ve?(j.sortIndex=F,i(v,j),c(p)===null&&j===c(v)&&(k?(q($),$=-1):k=!0,Nt(ye,F-ve))):(j.sortIndex=_e,i(p,j),H||z||(H=!0,Re||(Re=!0,We()))),j},u.unstable_shouldYield=Ue,u.unstable_wrapCallback=function(j){var X=C;return function(){var F=C;C=X;try{return j.apply(this,arguments)}finally{C=F}}}})(ur)),ur}var Wd;function w0(){return Wd||(Wd=1,ir.exports=j0()),ir.exports}var sr={exports:{}},Fe={};var Fd;function U0(){if(Fd)return Fe;Fd=1;var u=zu();function i(p){var v="https://react.dev/errors/"+p;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(u)}catch(i){console.error(i)}}return u(),sr.exports=U0(),sr.exports}var Id;function L0(){if(Id)return Xa;Id=1;var u=w0(),i=zu(),c=B0();function r(e){var t="https://react.dev/errors/"+e;if(1_e||(e.current=ve[_e],ve[_e]=null,_e--)}function G(e,t){_e++,ve[_e]=e.current,e.current=t}var Z=_(null),ee=_(null),le=_(null),de=_(null);function Pe(e,t){switch(G(le,t),G(ee,e),G(Z,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?md(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=md(t),e=pd(t,e);else switch(e){case"svg":e=1;break;case"math":e=2;break;default:e=0}}B(Z),G(Z,e)}function De(){B(Z),B(ee),B(le)}function Jl(e){e.memoizedState!==null&&G(de,e);var t=Z.current,n=pd(t,e.type);t!==n&&(G(ee,e),G(Z,n))}function ti(e){ee.current===e&&(B(Z),B(ee)),de.current===e&&(B(de),La._currentValue=F)}var Hu,Xr;function qn(e){if(Hu===void 0)try{throw Error()}catch(n){var t=n.stack.trim().match(/\n( *(at )?)/);Hu=t&&t[1]||"",Xr=-1{for(const h of f)if(h.type==="childList")for(const m of h.addedNodes)m.tagName==="LINK"&&m.rel==="modulepreload"&&r(m)}).observe(document,{childList:!0,subtree:!0});function c(f){const h={};return f.integrity&&(h.integrity=f.integrity),f.referrerPolicy&&(h.referrerPolicy=f.referrerPolicy),f.crossOrigin==="use-credentials"?h.credentials="include":f.crossOrigin==="anonymous"?h.credentials="omit":h.credentials="same-origin",h}function r(f){if(f.ep)return;f.ep=!0;const h=c(f);fetch(f.href,h)}})();var lr={exports:{}},ka={};var Zd;function M0(){if(Zd)return ka;Zd=1;var u=Symbol.for("react.transitional.element"),i=Symbol.for("react.fragment");function c(r,f,h){var m=null;if(h!==void 0&&(m=""+h),f.key!==void 0&&(m=""+f.key),"key"in f){h={};for(var b in f)b!=="key"&&(h[b]=f[b])}else h=f;return f=h.ref,{$$typeof:u,type:r,key:m,ref:f!==void 0?f:null,props:h}}return ka.Fragment=i,ka.jsx=c,ka.jsxs=c,ka}var Kd;function D0(){return Kd||(Kd=1,lr.exports=M0()),lr.exports}var p=D0(),ar={exports:{}},I={};var Jd;function j0(){if(Jd)return I;Jd=1;var u=Symbol.for("react.transitional.element"),i=Symbol.for("react.portal"),c=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),f=Symbol.for("react.profiler"),h=Symbol.for("react.consumer"),m=Symbol.for("react.context"),b=Symbol.for("react.forward_ref"),y=Symbol.for("react.suspense"),v=Symbol.for("react.memo"),T=Symbol.for("react.lazy"),S=Symbol.for("react.activity"),C=Symbol.iterator;function z(_){return _===null||typeof _!="object"?null:(_=C&&_[C]||_["@@iterator"],typeof _=="function"?_:null)}var H={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},k=Object.assign,Y={};function L(_,B,G){this.props=_,this.context=B,this.refs=Y,this.updater=G||H}L.prototype.isReactComponent={},L.prototype.setState=function(_,B){if(typeof _!="object"&&typeof _!="function"&&_!=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,_,B,"setState")},L.prototype.forceUpdate=function(_){this.updater.enqueueForceUpdate(this,_,"forceUpdate")};function q(){}q.prototype=L.prototype;function Q(_,B,G){this.props=_,this.context=B,this.refs=Y,this.updater=G||H}var P=Q.prototype=new q;P.constructor=Q,k(P,L.prototype),P.isPureReactComponent=!0;var ye=Array.isArray;function Re(){}var $={H:null,A:null,T:null,S:null},Te=Object.prototype.hasOwnProperty;function xe(_,B,G){var Z=G.ref;return{$$typeof:u,type:_,key:B,ref:Z!==void 0?Z:null,props:G}}function Ue(_,B){return xe(_.type,B,_.props)}function Xe(_){return typeof _=="object"&&_!==null&&_.$$typeof===u}function We(_){var B={"=":"=0",":":"=2"};return"$"+_.replace(/[=:]/g,function(G){return B[G]})}var Hn=/\/+/g;function kt(_,B){return typeof _=="object"&&_!==null&&_.key!=null?We(""+_.key):B.toString(36)}function Nt(_){switch(_.status){case"fulfilled":return _.value;case"rejected":throw _.reason;default:switch(typeof _.status=="string"?_.then(Re,Re):(_.status="pending",_.then(function(B){_.status==="pending"&&(_.status="fulfilled",_.value=B)},function(B){_.status==="pending"&&(_.status="rejected",_.reason=B)})),_.status){case"fulfilled":return _.value;case"rejected":throw _.reason}}throw _}function j(_,B,G,Z,ee){var le=typeof _;(le==="undefined"||le==="boolean")&&(_=null);var de=!1;if(_===null)de=!0;else switch(le){case"bigint":case"string":case"number":de=!0;break;case"object":switch(_.$$typeof){case u:case i:de=!0;break;case T:return de=_._init,j(de(_._payload),B,G,Z,ee)}}if(de)return ee=ee(_),de=Z===""?"."+kt(_,0):Z,ye(ee)?(G="",de!=null&&(G=de.replace(Hn,"$&/")+"/"),j(ee,B,G,"",function(Jl){return Jl})):ee!=null&&(Xe(ee)&&(ee=Ue(ee,G+(ee.key==null||_&&_.key===ee.key?"":(""+ee.key).replace(Hn,"$&/")+"/")+de)),B.push(ee)),1;de=0;var Pe=Z===""?".":Z+":";if(ye(_))for(var De=0;De<_.length;De++)Z=_[De],le=Pe+kt(Z,De),de+=j(Z,B,G,le,ee);else if(De=z(_),typeof De=="function")for(_=De.call(_),De=0;!(Z=_.next()).done;)Z=Z.value,le=Pe+kt(Z,De++),de+=j(Z,B,G,le,ee);else if(le==="object"){if(typeof _.then=="function")return j(Nt(_),B,G,Z,ee);throw B=String(_),Error("Objects are not valid as a React child (found: "+(B==="[object Object]"?"object with keys {"+Object.keys(_).join(", ")+"}":B)+"). If you meant to render a collection of children, use an array instead.")}return de}function X(_,B,G){if(_==null)return _;var Z=[],ee=0;return j(_,Z,"","",function(le){return B.call(G,le,ee++)}),Z}function F(_){if(_._status===-1){var B=_._result;B=B(),B.then(function(G){(_._status===0||_._status===-1)&&(_._status=1,_._result=G)},function(G){(_._status===0||_._status===-1)&&(_._status=2,_._result=G)}),_._status===-1&&(_._status=0,_._result=B)}if(_._status===1)return _._result.default;throw _._result}var ve=typeof reportError=="function"?reportError:function(_){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var B=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof _=="object"&&_!==null&&typeof _.message=="string"?String(_.message):String(_),error:_});if(!window.dispatchEvent(B))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",_);return}console.error(_)},_e={map:X,forEach:function(_,B,G){X(_,function(){B.apply(this,arguments)},G)},count:function(_){var B=0;return X(_,function(){B++}),B},toArray:function(_){return X(_,function(B){return B})||[]},only:function(_){if(!Xe(_))throw Error("React.Children.only expected to receive a single React element child.");return _}};return I.Activity=S,I.Children=_e,I.Component=L,I.Fragment=c,I.Profiler=f,I.PureComponent=Q,I.StrictMode=r,I.Suspense=y,I.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=$,I.__COMPILER_RUNTIME={__proto__:null,c:function(_){return $.H.useMemoCache(_)}},I.cache=function(_){return function(){return _.apply(null,arguments)}},I.cacheSignal=function(){return null},I.cloneElement=function(_,B,G){if(_==null)throw Error("The argument must be a React element, but you passed "+_+".");var Z=k({},_.props),ee=_.key;if(B!=null)for(le in B.key!==void 0&&(ee=""+B.key),B)!Te.call(B,le)||le==="key"||le==="__self"||le==="__source"||le==="ref"&&B.ref===void 0||(Z[le]=B[le]);var le=arguments.length-2;if(le===1)Z.children=G;else if(1>>1,_e=j[ve];if(0>>1;ve<_;){var B=2*(ve+1)-1,G=j[B],Z=B+1,ee=j[Z];if(0>f(G,F))Z<_e&&0>f(ee,G)?(j[ve]=ee,j[Z]=F,ve=Z):(j[ve]=G,j[B]=F,ve=B);else if(Z<_e&&0>f(ee,F))j[ve]=ee,j[Z]=F,ve=Z;else break e}}return X}function f(j,X){var F=j.sortIndex-X.sortIndex;return F!==0?F:j.id-X.id}if(u.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var h=performance;u.unstable_now=function(){return h.now()}}else{var m=Date,b=m.now();u.unstable_now=function(){return m.now()-b}}var y=[],v=[],T=1,S=null,C=3,z=!1,H=!1,k=!1,Y=!1,L=typeof setTimeout=="function"?setTimeout:null,q=typeof clearTimeout=="function"?clearTimeout:null,Q=typeof setImmediate<"u"?setImmediate:null;function P(j){for(var X=c(v);X!==null;){if(X.callback===null)r(v);else if(X.startTime<=j)r(v),X.sortIndex=X.expirationTime,i(y,X);else break;X=c(v)}}function ye(j){if(k=!1,P(j),!H)if(c(y)!==null)H=!0,Re||(Re=!0,We());else{var X=c(v);X!==null&&Nt(ye,X.startTime-j)}}var Re=!1,$=-1,Te=5,xe=-1;function Ue(){return Y?!0:!(u.unstable_now()-xej&&Ue());){var ve=S.callback;if(typeof ve=="function"){S.callback=null,C=S.priorityLevel;var _e=ve(S.expirationTime<=j);if(j=u.unstable_now(),typeof _e=="function"){S.callback=_e,P(j),X=!0;break t}S===c(y)&&r(y),P(j)}else r(y);S=c(y)}if(S!==null)X=!0;else{var _=c(v);_!==null&&Nt(ye,_.startTime-j),X=!1}}break e}finally{S=null,C=F,z=!1}X=void 0}}finally{X?We():Re=!1}}}var We;if(typeof Q=="function")We=function(){Q(Xe)};else if(typeof MessageChannel<"u"){var Hn=new MessageChannel,kt=Hn.port2;Hn.port1.onmessage=Xe,We=function(){kt.postMessage(null)}}else We=function(){L(Xe,0)};function Nt(j,X){$=L(function(){j(u.unstable_now())},X)}u.unstable_IdlePriority=5,u.unstable_ImmediatePriority=1,u.unstable_LowPriority=4,u.unstable_NormalPriority=3,u.unstable_Profiling=null,u.unstable_UserBlockingPriority=2,u.unstable_cancelCallback=function(j){j.callback=null},u.unstable_forceFrameRate=function(j){0>j||125ve?(j.sortIndex=F,i(v,j),c(y)===null&&j===c(v)&&(k?(q($),$=-1):k=!0,Nt(ye,F-ve))):(j.sortIndex=_e,i(y,j),H||z||(H=!0,Re||(Re=!0,We()))),j},u.unstable_shouldYield=Ue,u.unstable_wrapCallback=function(j){var X=C;return function(){var F=C;C=X;try{return j.apply(this,arguments)}finally{C=F}}}})(sr)),sr}var Fd;function U0(){return Fd||(Fd=1,ur.exports=w0()),ur.exports}var cr={exports:{}},Fe={};var Pd;function B0(){if(Pd)return Fe;Pd=1;var u=Mu();function i(y){var v="https://react.dev/errors/"+y;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(u)}catch(i){console.error(i)}}return u(),cr.exports=B0(),cr.exports}var em;function H0(){if(em)return Xa;em=1;var u=U0(),i=Mu(),c=L0();function r(e){var t="https://react.dev/errors/"+e;if(1_e||(e.current=ve[_e],ve[_e]=null,_e--)}function G(e,t){_e++,ve[_e]=e.current,e.current=t}var Z=_(null),ee=_(null),le=_(null),de=_(null);function Pe(e,t){switch(G(le,t),G(ee,e),G(Z,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?pd(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=pd(t),e=yd(t,e);else switch(e){case"svg":e=1;break;case"math":e=2;break;default:e=0}}B(Z),G(Z,e)}function De(){B(Z),B(ee),B(le)}function Jl(e){e.memoizedState!==null&&G(de,e);var t=Z.current,n=yd(t,e.type);t!==n&&(G(ee,e),G(Z,n))}function ti(e){ee.current===e&&(B(Z),B(ee)),de.current===e&&(B(de),La._currentValue=F)}var qu,Gr;function qn(e){if(qu===void 0)try{throw Error()}catch(n){var t=n.stack.trim().match(/\n( *(at )?)/);qu=t&&t[1]||"",Gr=-1)":-1a||g[l]!==N[a]){var D=` -`+g[l].replace(" at new "," at ");return e.displayName&&D.includes("")&&(D=D.replace("",e.displayName)),D}while(1<=l&&0<=a);break}}}finally{qu=!1,Error.prepareStackTrace=n}return(n=e?e.displayName||e.name:"")?qn(n):""}function sp(e,t){switch(e.tag){case 26:case 27:case 5:return qn(e.type);case 16:return qn("Lazy");case 13:return e.child!==t&&t!==null?qn("Suspense Fallback"):qn("Suspense");case 19:return qn("SuspenseList");case 0:case 15:return Yu(e.type,!1);case 11:return Yu(e.type.render,!1);case 1:return Yu(e.type,!0);case 31:return qn("Activity");default:return""}}function Gr(e){try{var t="",n=null;do t+=sp(e,n),n=e,e=e.return;while(e);return t}catch(l){return` +`+g[l].replace(" at new "," at ");return e.displayName&&D.includes("")&&(D=D.replace("",e.displayName)),D}while(1<=l&&0<=a);break}}}finally{Yu=!1,Error.prepareStackTrace=n}return(n=e?e.displayName||e.name:"")?qn(n):""}function cp(e,t){switch(e.tag){case 26:case 27:case 5:return qn(e.type);case 16:return qn("Lazy");case 13:return e.child!==t&&t!==null?qn("Suspense Fallback"):qn("Suspense");case 19:return qn("SuspenseList");case 0:case 15:return ku(e.type,!1);case 11:return ku(e.type.render,!1);case 1:return ku(e.type,!0);case 31:return qn("Activity");default:return""}}function Vr(e){try{var t="",n=null;do t+=cp(e,n),n=e,e=e.return;while(e);return t}catch(l){return` Error generating stack: `+l.message+` -`+l.stack}}var ku=Object.prototype.hasOwnProperty,Xu=u.unstable_scheduleCallback,Gu=u.unstable_cancelCallback,cp=u.unstable_shouldYield,rp=u.unstable_requestPaint,st=u.unstable_now,op=u.unstable_getCurrentPriorityLevel,Vr=u.unstable_ImmediatePriority,Qr=u.unstable_UserBlockingPriority,ni=u.unstable_NormalPriority,fp=u.unstable_LowPriority,Zr=u.unstable_IdlePriority,hp=u.log,dp=u.unstable_setDisableYieldValue,$l=null,ct=null;function hn(e){if(typeof hp=="function"&&dp(e),ct&&typeof ct.setStrictMode=="function")try{ct.setStrictMode($l,e)}catch{}}var rt=Math.clz32?Math.clz32:yp,mp=Math.log,pp=Math.LN2;function yp(e){return e>>>=0,e===0?32:31-(mp(e)/pp|0)|0}var li=256,ai=262144,ii=4194304;function Yn(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function ui(e,t,n){var l=e.pendingLanes;if(l===0)return 0;var a=0,s=e.suspendedLanes,o=e.pingedLanes;e=e.warmLanes;var h=l&134217727;return h!==0?(l=h&~s,l!==0?a=Yn(l):(o&=h,o!==0?a=Yn(o):n||(n=h&~e,n!==0&&(a=Yn(n))))):(h=l&~s,h!==0?a=Yn(h):o!==0?a=Yn(o):n||(n=l&~e,n!==0&&(a=Yn(n)))),a===0?0:t!==0&&t!==a&&(t&s)===0&&(s=a&-a,n=t&-t,s>=n||s===32&&(n&4194048)!==0)?t:a}function Wl(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function vp(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Kr(){var e=ii;return ii<<=1,(ii&62914560)===0&&(ii=4194304),e}function Vu(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function Fl(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function gp(e,t,n,l,a,s){var o=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var h=e.entanglements,g=e.expirationTimes,N=e.hiddenUpdates;for(n=o&~n;0"u")return null;try{return e.activeElement||e.body}catch{return e.body}}var Tp=/[\n"\\]/g;function gt(e){return e.replace(Tp,function(t){return"\\"+t.charCodeAt(0).toString(16)+" "})}function Wu(e,t,n,l,a,s,o,h){e.name="",o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"?e.type=o:e.removeAttribute("type"),t!=null?o==="number"?(t===0&&e.value===""||e.value!=t)&&(e.value=""+vt(t)):e.value!==""+vt(t)&&(e.value=""+vt(t)):o!=="submit"&&o!=="reset"||e.removeAttribute("value"),t!=null?Fu(e,o,vt(t)):n!=null?Fu(e,o,vt(n)):l!=null&&e.removeAttribute("value"),a==null&&s!=null&&(e.defaultChecked=!!s),a!=null&&(e.checked=a&&typeof a!="function"&&typeof a!="symbol"),h!=null&&typeof h!="function"&&typeof h!="symbol"&&typeof h!="boolean"?e.name=""+vt(h):e.removeAttribute("name")}function uo(e,t,n,l,a,s,o,h){if(s!=null&&typeof s!="function"&&typeof s!="symbol"&&typeof s!="boolean"&&(e.type=s),t!=null||n!=null){if(!(s!=="submit"&&s!=="reset"||t!=null)){$u(e);return}n=n!=null?""+vt(n):"",t=t!=null?""+vt(t):n,h||t===e.value||(e.value=t),e.defaultValue=t}l=l??a,l=typeof l!="function"&&typeof l!="symbol"&&!!l,e.checked=h?e.checked:!!l,e.defaultChecked=!!l,o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"&&(e.name=o),$u(e)}function Fu(e,t,n){t==="number"&&ri(e.ownerDocument)===e||e.defaultValue===""+n||(e.defaultValue=""+n)}function fl(e,t,n,l){if(e=e.options,t){t={};for(var a=0;a"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),ns=!1;if(Vt)try{var ta={};Object.defineProperty(ta,"passive",{get:function(){ns=!0}}),window.addEventListener("test",ta,ta),window.removeEventListener("test",ta,ta)}catch{ns=!1}var mn=null,ls=null,fi=null;function mo(){if(fi)return fi;var e,t=ls,n=t.length,l,a="value"in mn?mn.value:mn.textContent,s=a.length;for(e=0;e=aa),So=" ",xo=!1;function _o(e,t){switch(e){case"keyup":return Pp.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Eo(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var pl=!1;function ey(e,t){switch(e){case"compositionend":return Eo(t);case"keypress":return t.which!==32?null:(xo=!0,So);case"textInput":return e=t.data,e===So&&xo?null:e;default:return null}}function ty(e,t){if(pl)return e==="compositionend"||!cs&&_o(e,t)?(e=mo(),fi=ls=mn=null,pl=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=l}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=Mo(n)}}function jo(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?jo(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function wo(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=ri(e.document);t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=ri(e.document)}return t}function fs(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}var ry=Vt&&"documentMode"in document&&11>=document.documentMode,yl=null,hs=null,ca=null,ds=!1;function Uo(e,t,n){var l=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;ds||yl==null||yl!==ri(l)||(l=yl,"selectionStart"in l&&fs(l)?l={start:l.selectionStart,end:l.selectionEnd}:(l=(l.ownerDocument&&l.ownerDocument.defaultView||window).getSelection(),l={anchorNode:l.anchorNode,anchorOffset:l.anchorOffset,focusNode:l.focusNode,focusOffset:l.focusOffset}),ca&&sa(ca,l)||(ca=l,l=au(hs,"onSelect"),0>=o,a-=o,wt=1<<32-rt(t)+a|n<ne?(se=K,K=null):se=K.sibling;var fe=O(A,K,R[ne],w);if(fe===null){K===null&&(K=se);break}e&&K&&fe.alternate===null&&t(A,K),x=s(fe,x,ne),oe===null?J=fe:oe.sibling=fe,oe=fe,K=se}if(ne===R.length)return n(A,K),ce&&Zt(A,ne),J;if(K===null){for(;nene?(se=K,K=null):se=K.sibling;var Bn=O(A,K,fe.value,w);if(Bn===null){K===null&&(K=se);break}e&&K&&Bn.alternate===null&&t(A,K),x=s(Bn,x,ne),oe===null?J=Bn:oe.sibling=Bn,oe=Bn,K=se}if(fe.done)return n(A,K),ce&&Zt(A,ne),J;if(K===null){for(;!fe.done;ne++,fe=R.next())fe=U(A,fe.value,w),fe!==null&&(x=s(fe,x,ne),oe===null?J=fe:oe.sibling=fe,oe=fe);return ce&&Zt(A,ne),J}for(K=l(K);!fe.done;ne++,fe=R.next())fe=M(K,A,ne,fe.value,w),fe!==null&&(e&&fe.alternate!==null&&K.delete(fe.key===null?ne:fe.key),x=s(fe,x,ne),oe===null?J=fe:oe.sibling=fe,oe=fe);return e&&K.forEach(function(O0){return t(A,O0)}),ce&&Zt(A,ne),J}function Se(A,x,R,w){if(typeof R=="object"&&R!==null&&R.type===k&&R.key===null&&(R=R.props.children),typeof R=="object"&&R!==null){switch(R.$$typeof){case z:e:{for(var J=R.key;x!==null;){if(x.key===J){if(J=R.type,J===k){if(x.tag===7){n(A,x.sibling),w=a(x,R.props.children),w.return=A,A=w;break e}}else if(x.elementType===J||typeof J=="object"&&J!==null&&J.$$typeof===Te&&Fn(J)===x.type){n(A,x.sibling),w=a(x,R.props),ma(w,R),w.return=A,A=w;break e}n(A,x);break}else t(A,x);x=x.sibling}R.type===k?(w=Zn(R.props.children,A.mode,w,R.key),w.return=A,A=w):(w=xi(R.type,R.key,R.props,null,A.mode,w),ma(w,R),w.return=A,A=w)}return o(A);case H:e:{for(J=R.key;x!==null;){if(x.key===J)if(x.tag===4&&x.stateNode.containerInfo===R.containerInfo&&x.stateNode.implementation===R.implementation){n(A,x.sibling),w=a(x,R.children||[]),w.return=A,A=w;break e}else{n(A,x);break}else t(A,x);x=x.sibling}w=Ss(R,A.mode,w),w.return=A,A=w}return o(A);case Te:return R=Fn(R),Se(A,x,R,w)}if(Nt(R))return V(A,x,R,w);if(We(R)){if(J=We(R),typeof J!="function")throw Error(r(150));return R=J.call(R),W(A,x,R,w)}if(typeof R.then=="function")return Se(A,x,Ni(R),w);if(R.$$typeof===Q)return Se(A,x,Ti(A,R),w);Oi(A,R)}return typeof R=="string"&&R!==""||typeof R=="number"||typeof R=="bigint"?(R=""+R,x!==null&&x.tag===6?(n(A,x.sibling),w=a(x,R),w.return=A,A=w):(n(A,x),w=bs(R,A.mode,w),w.return=A,A=w),o(A)):n(A,x)}return function(A,x,R,w){try{da=0;var J=Se(A,x,R,w);return Rl=null,J}catch(K){if(K===Cl||K===Ci)throw K;var oe=ft(29,K,null,A.mode);return oe.lanes=w,oe.return=A,oe}finally{}}}var In=af(!0),uf=af(!1),bn=!1;function Ds(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function js(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function Sn(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function xn(e,t,n){var l=e.updateQueue;if(l===null)return null;if(l=l.shared,(he&2)!==0){var a=l.pending;return a===null?t.next=t:(t.next=a.next,a.next=t),l.pending=t,t=Si(e),Xo(e,null,n),t}return bi(e,l,t,n),Si(e)}function pa(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194048)!==0)){var l=t.lanes;l&=e.pendingLanes,n|=l,t.lanes=n,$r(e,n)}}function ws(e,t){var n=e.updateQueue,l=e.alternate;if(l!==null&&(l=l.updateQueue,n===l)){var a=null,s=null;if(n=n.firstBaseUpdate,n!==null){do{var o={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};s===null?a=s=o:s=s.next=o,n=n.next}while(n!==null);s===null?a=s=t:s=s.next=t}else a=s=t;n={baseState:l.baseState,firstBaseUpdate:a,lastBaseUpdate:s,shared:l.shared,callbacks:l.callbacks},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}var Us=!1;function ya(){if(Us){var e=Al;if(e!==null)throw e}}function va(e,t,n,l){Us=!1;var a=e.updateQueue;bn=!1;var s=a.firstBaseUpdate,o=a.lastBaseUpdate,h=a.shared.pending;if(h!==null){a.shared.pending=null;var g=h,N=g.next;g.next=null,o===null?s=N:o.next=N,o=g;var D=e.alternate;D!==null&&(D=D.updateQueue,h=D.lastBaseUpdate,h!==o&&(h===null?D.firstBaseUpdate=N:h.next=N,D.lastBaseUpdate=g))}if(s!==null){var U=a.baseState;o=0,D=N=g=null,h=s;do{var O=h.lane&-536870913,M=O!==h.lane;if(M?(ue&O)===O:(l&O)===O){O!==0&&O===Tl&&(Us=!0),D!==null&&(D=D.next={lane:0,tag:h.tag,payload:h.payload,callback:null,next:null});e:{var V=e,W=h;O=t;var Se=n;switch(W.tag){case 1:if(V=W.payload,typeof V=="function"){U=V.call(Se,U,O);break e}U=V;break e;case 3:V.flags=V.flags&-65537|128;case 0:if(V=W.payload,O=typeof V=="function"?V.call(Se,U,O):V,O==null)break e;U=S({},U,O);break e;case 2:bn=!0}}O=h.callback,O!==null&&(e.flags|=64,M&&(e.flags|=8192),M=a.callbacks,M===null?a.callbacks=[O]:M.push(O))}else M={lane:O,tag:h.tag,payload:h.payload,callback:h.callback,next:null},D===null?(N=D=M,g=U):D=D.next=M,o|=O;if(h=h.next,h===null){if(h=a.shared.pending,h===null)break;M=h,h=M.next,M.next=null,a.lastBaseUpdate=M,a.shared.pending=null}}while(!0);D===null&&(g=U),a.baseState=g,a.firstBaseUpdate=N,a.lastBaseUpdate=D,s===null&&(a.shared.lanes=0),Cn|=o,e.lanes=o,e.memoizedState=U}}function sf(e,t){if(typeof e!="function")throw Error(r(191,e));e.call(t)}function cf(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;es?s:8;var o=j.T,h={};j.T=h,ec(e,!1,t,n);try{var g=a(),N=j.S;if(N!==null&&N(h,g),g!==null&&typeof g=="object"&&typeof g.then=="function"){var D=gy(g,l);Sa(e,t,D,yt(e))}else Sa(e,t,l,yt(e))}catch(U){Sa(e,t,{then:function(){},status:"rejected",reason:U},yt())}finally{X.p=s,o!==null&&h.types!==null&&(o.types=h.types),j.T=o}}function Ty(){}function Ps(e,t,n,l){if(e.tag!==5)throw Error(r(476));var a=Yf(e).queue;qf(e,a,t,F,n===null?Ty:function(){return kf(e),n(l)})}function Yf(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:F,baseState:F,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Wt,lastRenderedState:F},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Wt,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function kf(e){var t=Yf(e);t.next===null&&(t=e.alternate.memoizedState),Sa(e,t.next.queue,{},yt())}function Is(){return Ke(La)}function Xf(){return we().memoizedState}function Gf(){return we().memoizedState}function Ay(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var n=yt();e=Sn(n);var l=xn(t,e,n);l!==null&&(ut(l,t,n),pa(l,t,n)),t={cache:Ns()},e.payload=t;return}t=t.return}}function Cy(e,t,n){var l=yt();n={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},qi(e)?Qf(t,n):(n=vs(e,t,n,l),n!==null&&(ut(n,e,l),Zf(n,t,l)))}function Vf(e,t,n){var l=yt();Sa(e,t,n,l)}function Sa(e,t,n,l){var a={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(qi(e))Qf(t,a);else{var s=e.alternate;if(e.lanes===0&&(s===null||s.lanes===0)&&(s=t.lastRenderedReducer,s!==null))try{var o=t.lastRenderedState,h=s(o,n);if(a.hasEagerState=!0,a.eagerState=h,ot(h,o))return bi(e,t,a,0),Ee===null&&gi(),!1}catch{}finally{}if(n=vs(e,t,a,l),n!==null)return ut(n,e,l),Zf(n,t,l),!0}return!1}function ec(e,t,n,l){if(l={lane:2,revertLane:Dc(),gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},qi(e)){if(t)throw Error(r(479))}else t=vs(e,n,l,2),t!==null&&ut(t,e,2)}function qi(e){var t=e.alternate;return e===te||t!==null&&t===te}function Qf(e,t){Ol=Di=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Zf(e,t,n){if((n&4194048)!==0){var l=t.lanes;l&=e.pendingLanes,n|=l,t.lanes=n,$r(e,n)}}var xa={readContext:Ke,use:Ui,useCallback:ze,useContext:ze,useEffect:ze,useImperativeHandle:ze,useLayoutEffect:ze,useInsertionEffect:ze,useMemo:ze,useReducer:ze,useRef:ze,useState:ze,useDebugValue:ze,useDeferredValue:ze,useTransition:ze,useSyncExternalStore:ze,useId:ze,useHostTransitionStatus:ze,useFormState:ze,useActionState:ze,useOptimistic:ze,useMemoCache:ze,useCacheRefresh:ze};xa.useEffectEvent=ze;var Kf={readContext:Ke,use:Ui,useCallback:function(e,t){return Ie().memoizedState=[e,t===void 0?null:t],e},useContext:Ke,useEffect:zf,useImperativeHandle:function(e,t,n){n=n!=null?n.concat([e]):null,Li(4194308,4,wf.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Li(4194308,4,e,t)},useInsertionEffect:function(e,t){Li(4,2,e,t)},useMemo:function(e,t){var n=Ie();t=t===void 0?null:t;var l=e();if(el){hn(!0);try{e()}finally{hn(!1)}}return n.memoizedState=[l,t],l},useReducer:function(e,t,n){var l=Ie();if(n!==void 0){var a=n(t);if(el){hn(!0);try{n(t)}finally{hn(!1)}}}else a=t;return l.memoizedState=l.baseState=a,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:a},l.queue=e,e=e.dispatch=Cy.bind(null,te,e),[l.memoizedState,e]},useRef:function(e){var t=Ie();return e={current:e},t.memoizedState=e},useState:function(e){e=Ks(e);var t=e.queue,n=Vf.bind(null,te,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:Ws,useDeferredValue:function(e,t){var n=Ie();return Fs(n,e,t)},useTransition:function(){var e=Ks(!1);return e=qf.bind(null,te,e.queue,!0,!1),Ie().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var l=te,a=Ie();if(ce){if(n===void 0)throw Error(r(407));n=n()}else{if(n=t(),Ee===null)throw Error(r(349));(ue&127)!==0||mf(l,t,n)}a.memoizedState=n;var s={value:n,getSnapshot:t};return a.queue=s,zf(yf.bind(null,l,s,e),[e]),l.flags|=2048,Ml(9,{destroy:void 0},pf.bind(null,l,s,n,t),null),n},useId:function(){var e=Ie(),t=Ee.identifierPrefix;if(ce){var n=Ut,l=wt;n=(l&~(1<<32-rt(l)-1)).toString(32)+n,t="_"+t+"R_"+n,n=ji++,0<\/script>",s=s.removeChild(s.firstChild);break;case"select":s=typeof l.is=="string"?o.createElement("select",{is:l.is}):o.createElement("select"),l.multiple?s.multiple=!0:l.size&&(s.size=l.size);break;default:s=typeof l.is=="string"?o.createElement(a,{is:l.is}):o.createElement(a)}}s[Qe]=t,s[et]=l;e:for(o=t.child;o!==null;){if(o.tag===5||o.tag===6)s.appendChild(o.stateNode);else if(o.tag!==4&&o.tag!==27&&o.child!==null){o.child.return=o,o=o.child;continue}if(o===t)break e;for(;o.sibling===null;){if(o.return===null||o.return===t)break e;o=o.return}o.sibling.return=o.return,o=o.sibling}t.stateNode=s;e:switch($e(s,a,l),a){case"button":case"input":case"select":case"textarea":l=!!l.autoFocus;break e;case"img":l=!0;break e;default:l=!1}l&&Pt(t)}}return Ce(t),mc(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==l&&Pt(t);else{if(typeof l!="string"&&t.stateNode===null)throw Error(r(166));if(e=le.current,_l(t)){if(e=t.stateNode,n=t.memoizedProps,l=null,a=Ze,a!==null)switch(a.tag){case 27:case 5:l=a.memoizedProps}e[Qe]=t,e=!!(e.nodeValue===n||l!==null&&l.suppressHydrationWarning===!0||hd(e.nodeValue,n)),e||vn(t,!0)}else e=iu(e).createTextNode(l),e[Qe]=t,t.stateNode=e}return Ce(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(l=_l(t),n!==null){if(e===null){if(!l)throw Error(r(318));if(e=t.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(r(557));e[Qe]=t}else Kn(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Ce(t),e=!1}else n=Ts(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(dt(t),t):(dt(t),null);if((t.flags&128)!==0)throw Error(r(558))}return Ce(t),null;case 13:if(l=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(a=_l(t),l!==null&&l.dehydrated!==null){if(e===null){if(!a)throw Error(r(318));if(a=t.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(r(317));a[Qe]=t}else Kn(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Ce(t),a=!1}else a=Ts(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=a),a=!0;if(!a)return t.flags&256?(dt(t),t):(dt(t),null)}return dt(t),(t.flags&128)!==0?(t.lanes=n,t):(n=l!==null,e=e!==null&&e.memoizedState!==null,n&&(l=t.child,a=null,l.alternate!==null&&l.alternate.memoizedState!==null&&l.alternate.memoizedState.cachePool!==null&&(a=l.alternate.memoizedState.cachePool.pool),s=null,l.memoizedState!==null&&l.memoizedState.cachePool!==null&&(s=l.memoizedState.cachePool.pool),s!==a&&(l.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),Vi(t,t.updateQueue),Ce(t),null);case 4:return De(),e===null&&Bc(t.stateNode.containerInfo),Ce(t),null;case 10:return Jt(t.type),Ce(t),null;case 19:if(B(je),l=t.memoizedState,l===null)return Ce(t),null;if(a=(t.flags&128)!==0,s=l.rendering,s===null)if(a)Ea(l,!1);else{if(Me!==0||e!==null&&(e.flags&128)!==0)for(e=t.child;e!==null;){if(s=Mi(e),s!==null){for(t.flags|=128,Ea(l,!1),e=s.updateQueue,t.updateQueue=e,Vi(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)Go(n,e),n=n.sibling;return G(je,je.current&1|2),ce&&Zt(t,l.treeForkCount),t.child}e=e.sibling}l.tail!==null&&st()>$i&&(t.flags|=128,a=!0,Ea(l,!1),t.lanes=4194304)}else{if(!a)if(e=Mi(s),e!==null){if(t.flags|=128,a=!0,e=e.updateQueue,t.updateQueue=e,Vi(t,e),Ea(l,!0),l.tail===null&&l.tailMode==="hidden"&&!s.alternate&&!ce)return Ce(t),null}else 2*st()-l.renderingStartTime>$i&&n!==536870912&&(t.flags|=128,a=!0,Ea(l,!1),t.lanes=4194304);l.isBackwards?(s.sibling=t.child,t.child=s):(e=l.last,e!==null?e.sibling=s:t.child=s,l.last=s)}return l.tail!==null?(e=l.tail,l.rendering=e,l.tail=e.sibling,l.renderingStartTime=st(),e.sibling=null,n=je.current,G(je,a?n&1|2:n&1),ce&&Zt(t,l.treeForkCount),e):(Ce(t),null);case 22:case 23:return dt(t),Ls(),l=t.memoizedState!==null,e!==null?e.memoizedState!==null!==l&&(t.flags|=8192):l&&(t.flags|=8192),l?(n&536870912)!==0&&(t.flags&128)===0&&(Ce(t),t.subtreeFlags&6&&(t.flags|=8192)):Ce(t),n=t.updateQueue,n!==null&&Vi(t,n.retryQueue),n=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),l=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(l=t.memoizedState.cachePool.pool),l!==n&&(t.flags|=2048),e!==null&&B(Wn),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),Jt(Be),Ce(t),null;case 25:return null;case 30:return null}throw Error(r(156,t.tag))}function My(e,t){switch(_s(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Jt(Be),De(),e=t.flags,(e&65536)!==0&&(e&128)===0?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return ti(t),null;case 31:if(t.memoizedState!==null){if(dt(t),t.alternate===null)throw Error(r(340));Kn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(dt(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(r(340));Kn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return B(je),null;case 4:return De(),null;case 10:return Jt(t.type),null;case 22:case 23:return dt(t),Ls(),e!==null&&B(Wn),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return Jt(Be),null;case 25:return null;default:return null}}function vh(e,t){switch(_s(t),t.tag){case 3:Jt(Be),De();break;case 26:case 27:case 5:ti(t);break;case 4:De();break;case 31:t.memoizedState!==null&&dt(t);break;case 13:dt(t);break;case 19:B(je);break;case 10:Jt(t.type);break;case 22:case 23:dt(t),Ls(),e!==null&&B(Wn);break;case 24:Jt(Be)}}function Ta(e,t){try{var n=t.updateQueue,l=n!==null?n.lastEffect:null;if(l!==null){var a=l.next;n=a;do{if((n.tag&e)===e){l=void 0;var s=n.create,o=n.inst;l=s(),o.destroy=l}n=n.next}while(n!==a)}}catch(h){pe(t,t.return,h)}}function Tn(e,t,n){try{var l=t.updateQueue,a=l!==null?l.lastEffect:null;if(a!==null){var s=a.next;l=s;do{if((l.tag&e)===e){var o=l.inst,h=o.destroy;if(h!==void 0){o.destroy=void 0,a=t;var g=n,N=h;try{N()}catch(D){pe(a,g,D)}}}l=l.next}while(l!==s)}}catch(D){pe(t,t.return,D)}}function gh(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{cf(t,n)}catch(l){pe(e,e.return,l)}}}function bh(e,t,n){n.props=tl(e.type,e.memoizedProps),n.state=e.memoizedState;try{n.componentWillUnmount()}catch(l){pe(e,t,l)}}function Aa(e,t){try{var n=e.ref;if(n!==null){switch(e.tag){case 26:case 27:case 5:var l=e.stateNode;break;case 30:l=e.stateNode;break;default:l=e.stateNode}typeof n=="function"?e.refCleanup=n(l):n.current=l}}catch(a){pe(e,t,a)}}function Bt(e,t){var n=e.ref,l=e.refCleanup;if(n!==null)if(typeof l=="function")try{l()}catch(a){pe(e,t,a)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n=="function")try{n(null)}catch(a){pe(e,t,a)}else n.current=null}function Sh(e){var t=e.type,n=e.memoizedProps,l=e.stateNode;try{e:switch(t){case"button":case"input":case"select":case"textarea":n.autoFocus&&l.focus();break e;case"img":n.src?l.src=n.src:n.srcSet&&(l.srcset=n.srcSet)}}catch(a){pe(e,e.return,a)}}function pc(e,t,n){try{var l=e.stateNode;Iy(l,e.type,n,t),l[et]=t}catch(a){pe(e,e.return,a)}}function xh(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&Mn(e.type)||e.tag===4}function yc(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||xh(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&&Mn(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 vc(e,t,n){var l=e.tag;if(l===5||l===6)e=e.stateNode,t?(n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n).insertBefore(e,t):(t=n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n,t.appendChild(e),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=Gt));else if(l!==4&&(l===27&&Mn(e.type)&&(n=e.stateNode,t=null),e=e.child,e!==null))for(vc(e,t,n),e=e.sibling;e!==null;)vc(e,t,n),e=e.sibling}function Qi(e,t,n){var l=e.tag;if(l===5||l===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(l!==4&&(l===27&&Mn(e.type)&&(n=e.stateNode),e=e.child,e!==null))for(Qi(e,t,n),e=e.sibling;e!==null;)Qi(e,t,n),e=e.sibling}function _h(e){var t=e.stateNode,n=e.memoizedProps;try{for(var l=e.type,a=t.attributes;a.length;)t.removeAttributeNode(a[0]);$e(t,l,n),t[Qe]=e,t[et]=n}catch(s){pe(e,e.return,s)}}var It=!1,qe=!1,gc=!1,Eh=typeof WeakSet=="function"?WeakSet:Set,Ve=null;function Dy(e,t){if(e=e.containerInfo,qc=hu,e=wo(e),fs(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var l=n.getSelection&&n.getSelection();if(l&&l.rangeCount!==0){n=l.anchorNode;var a=l.anchorOffset,s=l.focusNode;l=l.focusOffset;try{n.nodeType,s.nodeType}catch{n=null;break e}var o=0,h=-1,g=-1,N=0,D=0,U=e,O=null;t:for(;;){for(var M;U!==n||a!==0&&U.nodeType!==3||(h=o+a),U!==s||l!==0&&U.nodeType!==3||(g=o+l),U.nodeType===3&&(o+=U.nodeValue.length),(M=U.firstChild)!==null;)O=U,U=M;for(;;){if(U===e)break t;if(O===n&&++N===a&&(h=o),O===s&&++D===l&&(g=o),(M=U.nextSibling)!==null)break;U=O,O=U.parentNode}U=M}n=h===-1||g===-1?null:{start:h,end:g}}else n=null}n=n||{start:0,end:0}}else n=null;for(Yc={focusedElem:e,selectionRange:n},hu=!1,Ve=t;Ve!==null;)if(t=Ve,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,Ve=e;else for(;Ve!==null;){switch(t=Ve,s=t.alternate,e=t.flags,t.tag){case 0:if((e&4)!==0&&(e=t.updateQueue,e=e!==null?e.events:null,e!==null))for(n=0;n title"))),$e(s,l,n),s[Qe]=e,Ge(s),l=s;break e;case"link":var o=Od("link","href",a).get(l+(n.href||""));if(o){for(var h=0;hSe&&(o=Se,Se=W,W=o);var A=Do(h,W),x=Do(h,Se);if(A&&x&&(M.rangeCount!==1||M.anchorNode!==A.node||M.anchorOffset!==A.offset||M.focusNode!==x.node||M.focusOffset!==x.offset)){var R=U.createRange();R.setStart(A.node,A.offset),M.removeAllRanges(),W>Se?(M.addRange(R),M.extend(x.node,x.offset)):(R.setEnd(x.node,x.offset),M.addRange(R))}}}}for(U=[],M=h;M=M.parentNode;)M.nodeType===1&&U.push({element:M,left:M.scrollLeft,top:M.scrollTop});for(typeof h.focus=="function"&&h.focus(),h=0;hn?32:n,j.T=null,n=Ac,Ac=null;var s=Nn,o=an;if(ke=0,Bl=Nn=null,an=0,(he&6)!==0)throw Error(r(331));var h=he;if(he|=4,wh(s.current),Mh(s,s.current,o,n),he=h,Ma(0,!1),ct&&typeof ct.onPostCommitFiberRoot=="function")try{ct.onPostCommitFiberRoot($l,s)}catch{}return!0}finally{X.p=a,j.T=l,Ph(e,t)}}function ed(e,t,n){t=St(n,t),t=ac(e.stateNode,t,2),e=xn(e,t,2),e!==null&&(Fl(e,2),Lt(e))}function pe(e,t,n){if(e.tag===3)ed(e,e,n);else for(;t!==null;){if(t.tag===3){ed(t,e,n);break}else if(t.tag===1){var l=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof l.componentDidCatch=="function"&&(Rn===null||!Rn.has(l))){e=St(n,e),n=th(2),l=xn(t,n,2),l!==null&&(nh(n,l,t,e),Fl(l,2),Lt(l));break}}t=t.return}}function Oc(e,t,n){var l=e.pingCache;if(l===null){l=e.pingCache=new Uy;var a=new Set;l.set(t,a)}else a=l.get(t),a===void 0&&(a=new Set,l.set(t,a));a.has(n)||(xc=!0,a.add(n),e=Yy.bind(null,e,t,n),t.then(e,e))}function Yy(e,t,n){var l=e.pingCache;l!==null&&l.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,Ee===e&&(ue&n)===n&&(Me===4||Me===3&&(ue&62914560)===ue&&300>st()-Ji?(he&2)===0&&Ll(e,0):_c|=n,Ul===ue&&(Ul=0)),Lt(e)}function td(e,t){t===0&&(t=Kr()),e=Qn(e,t),e!==null&&(Fl(e,t),Lt(e))}function ky(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),td(e,n)}function Xy(e,t){var n=0;switch(e.tag){case 31:case 13:var l=e.stateNode,a=e.memoizedState;a!==null&&(n=a.retryLane);break;case 19:l=e.stateNode;break;case 22:l=e.stateNode._retryCache;break;default:throw Error(r(314))}l!==null&&l.delete(t),td(e,n)}function Gy(e,t){return Xu(e,t)}var tu=null,ql=null,zc=!1,nu=!1,Mc=!1,zn=0;function Lt(e){e!==ql&&e.next===null&&(ql===null?tu=ql=e:ql=ql.next=e),nu=!0,zc||(zc=!0,Qy())}function Ma(e,t){if(!Mc&&nu){Mc=!0;do for(var n=!1,l=tu;l!==null;){if(e!==0){var a=l.pendingLanes;if(a===0)var s=0;else{var o=l.suspendedLanes,h=l.pingedLanes;s=(1<<31-rt(42|e)+1)-1,s&=a&~(o&~h),s=s&201326741?s&201326741|1:s?s|2:0}s!==0&&(n=!0,id(l,s))}else s=ue,s=ui(l,l===Ee?s:0,l.cancelPendingCommit!==null||l.timeoutHandle!==-1),(s&3)===0||Wl(l,s)||(n=!0,id(l,s));l=l.next}while(n);Mc=!1}}function Vy(){nd()}function nd(){nu=zc=!1;var e=0;zn!==0&&t0()&&(e=zn);for(var t=st(),n=null,l=tu;l!==null;){var a=l.next,s=ld(l,t);s===0?(l.next=null,n===null?tu=a:n.next=a,a===null&&(ql=n)):(n=l,(e!==0||(s&3)!==0)&&(nu=!0)),l=a}ke!==0&&ke!==5||Ma(e),zn!==0&&(zn=0)}function ld(e,t){for(var n=e.suspendedLanes,l=e.pingedLanes,a=e.expirationTimes,s=e.pendingLanes&-62914561;0h)break;var D=g.transferSize,U=g.initiatorType;D&&dd(U)&&(g=g.responseEnd,o+=D*(g"u"?null:document;function Ad(e,t,n){var l=Yl;if(l&&typeof t=="string"&&t){var a=gt(t);a='link[rel="'+e+'"][href="'+a+'"]',typeof n=="string"&&(a+='[crossorigin="'+n+'"]'),Td.has(a)||(Td.add(a),e={rel:e,crossOrigin:n,href:t},l.querySelector(a)===null&&(t=l.createElement("link"),$e(t,"link",e),Ge(t),l.head.appendChild(t)))}}function o0(e){un.D(e),Ad("dns-prefetch",e,null)}function f0(e,t){un.C(e,t),Ad("preconnect",e,t)}function h0(e,t,n){un.L(e,t,n);var l=Yl;if(l&&e&&t){var a='link[rel="preload"][as="'+gt(t)+'"]';t==="image"&&n&&n.imageSrcSet?(a+='[imagesrcset="'+gt(n.imageSrcSet)+'"]',typeof n.imageSizes=="string"&&(a+='[imagesizes="'+gt(n.imageSizes)+'"]')):a+='[href="'+gt(e)+'"]';var s=a;switch(t){case"style":s=kl(e);break;case"script":s=Xl(e)}Ct.has(s)||(e=S({rel:"preload",href:t==="image"&&n&&n.imageSrcSet?void 0:e,as:t},n),Ct.set(s,e),l.querySelector(a)!==null||t==="style"&&l.querySelector(Ua(s))||t==="script"&&l.querySelector(Ba(s))||(t=l.createElement("link"),$e(t,"link",e),Ge(t),l.head.appendChild(t)))}}function d0(e,t){un.m(e,t);var n=Yl;if(n&&e){var l=t&&typeof t.as=="string"?t.as:"script",a='link[rel="modulepreload"][as="'+gt(l)+'"][href="'+gt(e)+'"]',s=a;switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":s=Xl(e)}if(!Ct.has(s)&&(e=S({rel:"modulepreload",href:e},t),Ct.set(s,e),n.querySelector(a)===null)){switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(n.querySelector(Ba(s)))return}l=n.createElement("link"),$e(l,"link",e),Ge(l),n.head.appendChild(l)}}}function m0(e,t,n){un.S(e,t,n);var l=Yl;if(l&&e){var a=rl(l).hoistableStyles,s=kl(e);t=t||"default";var o=a.get(s);if(!o){var h={loading:0,preload:null};if(o=l.querySelector(Ua(s)))h.loading=5;else{e=S({rel:"stylesheet",href:e,"data-precedence":t},n),(n=Ct.get(s))&&Kc(e,n);var g=o=l.createElement("link");Ge(g),$e(g,"link",e),g._p=new Promise(function(N,D){g.onload=N,g.onerror=D}),g.addEventListener("load",function(){h.loading|=1}),g.addEventListener("error",function(){h.loading|=2}),h.loading|=4,su(o,t,l)}o={type:"stylesheet",instance:o,count:1,state:h},a.set(s,o)}}}function p0(e,t){un.X(e,t);var n=Yl;if(n&&e){var l=rl(n).hoistableScripts,a=Xl(e),s=l.get(a);s||(s=n.querySelector(Ba(a)),s||(e=S({src:e,async:!0},t),(t=Ct.get(a))&&Jc(e,t),s=n.createElement("script"),Ge(s),$e(s,"link",e),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function y0(e,t){un.M(e,t);var n=Yl;if(n&&e){var l=rl(n).hoistableScripts,a=Xl(e),s=l.get(a);s||(s=n.querySelector(Ba(a)),s||(e=S({src:e,async:!0,type:"module"},t),(t=Ct.get(a))&&Jc(e,t),s=n.createElement("script"),Ge(s),$e(s,"link",e),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function Cd(e,t,n,l){var a=(a=le.current)?uu(a):null;if(!a)throw Error(r(446));switch(e){case"meta":case"title":return null;case"style":return typeof n.precedence=="string"&&typeof n.href=="string"?(t=kl(n.href),n=rl(a).hoistableStyles,l=n.get(t),l||(l={type:"style",instance:null,count:0,state:null},n.set(t,l)),l):{type:"void",instance:null,count:0,state:null};case"link":if(n.rel==="stylesheet"&&typeof n.href=="string"&&typeof n.precedence=="string"){e=kl(n.href);var s=rl(a).hoistableStyles,o=s.get(e);if(o||(a=a.ownerDocument||a,o={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},s.set(e,o),(s=a.querySelector(Ua(e)))&&!s._p&&(o.instance=s,o.state.loading=5),Ct.has(e)||(n={rel:"preload",as:"style",href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},Ct.set(e,n),s||v0(a,e,n,o.state))),t&&l===null)throw Error(r(528,""));return o}if(t&&l!==null)throw Error(r(529,""));return null;case"script":return t=n.async,n=n.src,typeof n=="string"&&t&&typeof t!="function"&&typeof t!="symbol"?(t=Xl(n),n=rl(a).hoistableScripts,l=n.get(t),l||(l={type:"script",instance:null,count:0,state:null},n.set(t,l)),l):{type:"void",instance:null,count:0,state:null};default:throw Error(r(444,e))}}function kl(e){return'href="'+gt(e)+'"'}function Ua(e){return'link[rel="stylesheet"]['+e+"]"}function Rd(e){return S({},e,{"data-precedence":e.precedence,precedence:null})}function v0(e,t,n,l){e.querySelector('link[rel="preload"][as="style"]['+t+"]")?l.loading=1:(t=e.createElement("link"),l.preload=t,t.addEventListener("load",function(){return l.loading|=1}),t.addEventListener("error",function(){return l.loading|=2}),$e(t,"link",n),Ge(t),e.head.appendChild(t))}function Xl(e){return'[src="'+gt(e)+'"]'}function Ba(e){return"script[async]"+e}function Nd(e,t,n){if(t.count++,t.instance===null)switch(t.type){case"style":var l=e.querySelector('style[data-href~="'+gt(n.href)+'"]');if(l)return t.instance=l,Ge(l),l;var a=S({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return l=(e.ownerDocument||e).createElement("style"),Ge(l),$e(l,"style",a),su(l,n.precedence,e),t.instance=l;case"stylesheet":a=kl(n.href);var s=e.querySelector(Ua(a));if(s)return t.state.loading|=4,t.instance=s,Ge(s),s;l=Rd(n),(a=Ct.get(a))&&Kc(l,a),s=(e.ownerDocument||e).createElement("link"),Ge(s);var o=s;return o._p=new Promise(function(h,g){o.onload=h,o.onerror=g}),$e(s,"link",l),t.state.loading|=4,su(s,n.precedence,e),t.instance=s;case"script":return s=Xl(n.src),(a=e.querySelector(Ba(s)))?(t.instance=a,Ge(a),a):(l=n,(a=Ct.get(s))&&(l=S({},n),Jc(l,a)),e=e.ownerDocument||e,a=e.createElement("script"),Ge(a),$e(a,"link",l),e.head.appendChild(a),t.instance=a);case"void":return null;default:throw Error(r(443,t.type))}else t.type==="stylesheet"&&(t.state.loading&4)===0&&(l=t.instance,t.state.loading|=4,su(l,n.precedence,e));return t.instance}function su(e,t,n){for(var l=n.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=l.length?l[l.length-1]:null,s=a,o=0;o title"):null)}function g0(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case"meta":case"title":return!0;case"style":if(typeof t.precedence!="string"||typeof t.href!="string"||t.href==="")break;return!0;case"link":if(typeof t.rel!="string"||typeof t.href!="string"||t.href===""||t.onLoad||t.onError)break;switch(t.rel){case"stylesheet":return e=t.disabled,typeof t.precedence=="string"&&e==null;default:return!0}case"script":if(t.async&&typeof t.async!="function"&&typeof t.async!="symbol"&&!t.onLoad&&!t.onError&&t.src&&typeof t.src=="string")return!0}return!1}function Md(e){return!(e.type==="stylesheet"&&(e.state.loading&3)===0)}function b0(e,t,n,l){if(n.type==="stylesheet"&&(typeof l.media!="string"||matchMedia(l.media).matches!==!1)&&(n.state.loading&4)===0){if(n.instance===null){var a=kl(l.href),s=t.querySelector(Ua(a));if(s){t=s._p,t!==null&&typeof t=="object"&&typeof t.then=="function"&&(e.count++,e=ru.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=s,Ge(s);return}s=t.ownerDocument||t,l=Rd(l),(a=Ct.get(a))&&Kc(l,a),s=s.createElement("link"),Ge(s);var o=s;o._p=new Promise(function(h,g){o.onload=h,o.onerror=g}),$e(s,"link",l),n.instance=s}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&(n.state.loading&3)===0&&(e.count++,n=ru.bind(e),t.addEventListener("load",n),t.addEventListener("error",n))}}var $c=0;function S0(e,t){return e.stylesheets&&e.count===0&&fu(e,e.stylesheets),0$c?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(l),clearTimeout(a)}}:null}function ru(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)fu(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var ou=null;function fu(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,ou=new Map,t.forEach(x0,e),ou=null,ru.call(e))}function x0(e,t){if(!(t.state.loading&4)){var n=ou.get(e);if(n)var l=n.get(null);else{n=new Map,ou.set(e,n);for(var a=e.querySelectorAll("link[data-precedence],style[data-precedence]"),s=0;s"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(u)}catch(i){console.error(i)}}return u(),ar.exports=L0(),ar.exports}var q0=H0();var tm="popstate";function Y0(u={}){function i(r,f){let{pathname:d,search:m,hash:b}=r.location;return pr("",{pathname:d,search:m,hash:b},f.state&&f.state.usr||null,f.state&&f.state.key||"default")}function c(r,f){return typeof f=="string"?f:Wa(f)}return X0(i,c,null,u)}function Oe(u,i){if(u===!1||u===null||typeof u>"u")throw new Error(i)}function jt(u,i){if(!u){typeof console<"u"&&console.warn(i);try{throw new Error(i)}catch{}}}function k0(){return Math.random().toString(36).substring(2,10)}function nm(u,i){return{usr:u.state,key:u.key,idx:i}}function pr(u,i,c=null,r){return{pathname:typeof u=="string"?u:u.pathname,search:"",hash:"",...typeof i=="string"?Ql(i):i,state:c,key:i&&i.key||r||k0()}}function Wa({pathname:u="/",search:i="",hash:c=""}){return i&&i!=="?"&&(u+=i.charAt(0)==="?"?i:"?"+i),c&&c!=="#"&&(u+=c.charAt(0)==="#"?c:"#"+c),u}function Ql(u){let i={};if(u){let c=u.indexOf("#");c>=0&&(i.hash=u.substring(c),u=u.substring(0,c));let r=u.indexOf("?");r>=0&&(i.search=u.substring(r),u=u.substring(0,r)),u&&(i.pathname=u)}return i}function X0(u,i,c,r={}){let{window:f=document.defaultView,v5Compat:d=!1}=r,m=f.history,b="POP",p=null,v=T();v==null&&(v=0,m.replaceState({...m.state,idx:v},""));function T(){return(m.state||{idx:null}).idx}function S(){b="POP";let Y=T(),L=Y==null?null:Y-v;v=Y,p&&p({action:b,location:k.location,delta:L})}function C(Y,L){b="PUSH";let q=pr(k.location,Y,L);v=T()+1;let Q=nm(q,v),P=k.createHref(q);try{m.pushState(Q,"",P)}catch(ye){if(ye instanceof DOMException&&ye.name==="DataCloneError")throw ye;f.location.assign(P)}d&&p&&p({action:b,location:k.location,delta:1})}function z(Y,L){b="REPLACE";let q=pr(k.location,Y,L);v=T();let Q=nm(q,v),P=k.createHref(q);m.replaceState(Q,"",P),d&&p&&p({action:b,location:k.location,delta:0})}function H(Y){return G0(Y)}let k={get action(){return b},get location(){return u(f,m)},listen(Y){if(p)throw new Error("A history only accepts one active listener");return f.addEventListener(tm,S),p=Y,()=>{f.removeEventListener(tm,S),p=null}},createHref(Y){return i(f,Y)},createURL:H,encodeLocation(Y){let L=H(Y);return{pathname:L.pathname,search:L.search,hash:L.hash}},push:C,replace:z,go(Y){return m.go(Y)}};return k}function G0(u,i=!1){let c="http://localhost";typeof window<"u"&&(c=window.location.origin!=="null"?window.location.origin:window.location.href),Oe(c,"No window.location.(origin|href) available to create URL");let r=typeof u=="string"?u:Wa(u);return r=r.replace(/ $/,"%20"),!i&&r.startsWith("//")&&(r=c+r),new URL(r,c)}function xm(u,i,c="/"){return V0(u,i,c,!1)}function V0(u,i,c,r){let f=typeof i=="string"?Ql(i):i,d=rn(f.pathname||"/",c);if(d==null)return null;let m=_m(u);Q0(m);let b=null;for(let p=0;b==null&&p{let T={relativePath:v===void 0?m.path||"":v,caseSensitive:m.caseSensitive===!0,childrenIndex:b,route:m};if(T.relativePath.startsWith("/")){if(!T.relativePath.startsWith(r)&&p)return;Oe(T.relativePath.startsWith(r),`Absolute route path "${T.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),T.relativePath=T.relativePath.slice(r.length)}let S=cn([r,T.relativePath]),C=c.concat(T);m.children&&m.children.length>0&&(Oe(m.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${S}".`),_m(m.children,i,C,S,p)),!(m.path==null&&!m.index)&&i.push({path:S,score:P0(S,m.index),routesMeta:C})};return u.forEach((m,b)=>{if(m.path===""||!m.path?.includes("?"))d(m,b);else for(let p of Em(m.path))d(m,b,!0,p)}),i}function Em(u){let i=u.split("/");if(i.length===0)return[];let[c,...r]=i,f=c.endsWith("?"),d=c.replace(/\?$/,"");if(r.length===0)return f?[d,""]:[d];let m=Em(r.join("/")),b=[];return b.push(...m.map(p=>p===""?d:[d,p].join("/"))),f&&b.push(...m),b.map(p=>u.startsWith("/")&&p===""?"/":p)}function Q0(u){u.sort((i,c)=>i.score!==c.score?c.score-i.score:I0(i.routesMeta.map(r=>r.childrenIndex),c.routesMeta.map(r=>r.childrenIndex)))}var Z0=/^:[\w-]+$/,K0=3,J0=2,$0=1,W0=10,F0=-2,lm=u=>u==="*";function P0(u,i){let c=u.split("/"),r=c.length;return c.some(lm)&&(r+=F0),i&&(r+=J0),c.filter(f=>!lm(f)).reduce((f,d)=>f+(Z0.test(d)?K0:d===""?$0:W0),r)}function I0(u,i){return u.length===i.length&&u.slice(0,-1).every((r,f)=>r===i[f])?u[u.length-1]-i[i.length-1]:0}function ev(u,i,c=!1){let{routesMeta:r}=u,f={},d="/",m=[];for(let b=0;b{if(T==="*"){let H=b[C]||"";m=d.slice(0,d.length-H.length).replace(/(.)\/+$/,"$1")}const z=b[C];return S&&!z?v[T]=void 0:v[T]=(z||"").replace(/%2F/g,"/"),v},{}),pathname:d,pathnameBase:m,pattern:u}}function tv(u,i=!1,c=!0){jt(u==="*"||!u.endsWith("*")||u.endsWith("/*"),`Route path "${u}" will be treated as if it were "${u.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${u.replace(/\*$/,"/*")}".`);let r=[],f="^"+u.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(m,b,p)=>(r.push({paramName:b,isOptional:p!=null}),p?"/?([^\\/]+)?":"/([^\\/]+)")).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return u.endsWith("*")?(r.push({paramName:"*"}),f+=u==="*"||u==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):c?f+="\\/*$":u!==""&&u!=="/"&&(f+="(?:(?=\\/|$))"),[new RegExp(f,i?void 0:"i"),r]}function nv(u){try{return u.split("/").map(i=>decodeURIComponent(i).replace(/\//g,"%2F")).join("/")}catch(i){return jt(!1,`The URL path "${u}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${i}).`),u}}function rn(u,i){if(i==="/")return u;if(!u.toLowerCase().startsWith(i.toLowerCase()))return null;let c=i.endsWith("/")?i.length-1:i.length,r=u.charAt(c);return r&&r!=="/"?null:u.slice(c)||"/"}var lv=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,av=u=>lv.test(u);function iv(u,i="/"){let{pathname:c,search:r="",hash:f=""}=typeof u=="string"?Ql(u):u,d;if(c)if(av(c))d=c;else{if(c.includes("//")){let m=c;c=c.replace(/\/\/+/g,"/"),jt(!1,`Pathnames cannot have embedded double slashes - normalizing ${m} -> ${c}`)}c.startsWith("/")?d=am(c.substring(1),"/"):d=am(c,i)}else d=i;return{pathname:d,search:cv(r),hash:rv(f)}}function am(u,i){let c=i.replace(/\/+$/,"").split("/");return u.split("/").forEach(f=>{f===".."?c.length>1&&c.pop():f!=="."&&c.push(f)}),c.length>1?c.join("/"):"/"}function cr(u,i,c,r){return`Cannot include a '${u}' character in a manually specified \`to.${i}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${c}\` field. Alternatively you may provide the full path as a string in and the router will parse it for you.`}function uv(u){return u.filter((i,c)=>c===0||i.route.path&&i.route.path.length>0)}function Tm(u){let i=uv(u);return i.map((c,r)=>r===i.length-1?c.pathname:c.pathnameBase)}function Am(u,i,c,r=!1){let f;typeof u=="string"?f=Ql(u):(f={...u},Oe(!f.pathname||!f.pathname.includes("?"),cr("?","pathname","search",f)),Oe(!f.pathname||!f.pathname.includes("#"),cr("#","pathname","hash",f)),Oe(!f.search||!f.search.includes("#"),cr("#","search","hash",f)));let d=u===""||f.pathname==="",m=d?"/":f.pathname,b;if(m==null)b=c;else{let S=i.length-1;if(!r&&m.startsWith("..")){let C=m.split("/");for(;C[0]==="..";)C.shift(),S-=1;f.pathname=C.join("/")}b=S>=0?i[S]:"/"}let p=iv(f,b),v=m&&m!=="/"&&m.endsWith("/"),T=(d||m===".")&&c.endsWith("/");return!p.pathname.endsWith("/")&&(v||T)&&(p.pathname+="/"),p}var cn=u=>u.join("/").replace(/\/\/+/g,"/"),sv=u=>u.replace(/\/+$/,"").replace(/^\/*/,"/"),cv=u=>!u||u==="?"?"":u.startsWith("?")?u:"?"+u,rv=u=>!u||u==="#"?"":u.startsWith("#")?u:"#"+u;function ov(u){return u!=null&&typeof u.status=="number"&&typeof u.statusText=="string"&&typeof u.internal=="boolean"&&"data"in u}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var Cm=["POST","PUT","PATCH","DELETE"];new Set(Cm);var fv=["GET",...Cm];new Set(fv);var Zl=E.createContext(null);Zl.displayName="DataRouter";var Mu=E.createContext(null);Mu.displayName="DataRouterState";E.createContext(!1);var Rm=E.createContext({isTransitioning:!1});Rm.displayName="ViewTransition";var hv=E.createContext(new Map);hv.displayName="Fetchers";var dv=E.createContext(null);dv.displayName="Await";var Yt=E.createContext(null);Yt.displayName="Navigation";var Fa=E.createContext(null);Fa.displayName="Location";var on=E.createContext({outlet:null,matches:[],isDataRoute:!1});on.displayName="Route";var Tr=E.createContext(null);Tr.displayName="RouteError";function mv(u,{relative:i}={}){Oe(Pa(),"useHref() may be used only in the context of a component.");let{basename:c,navigator:r}=E.useContext(Yt),{hash:f,pathname:d,search:m}=Ia(u,{relative:i}),b=d;return c!=="/"&&(b=d==="/"?c:cn([c,d])),r.createHref({pathname:b,search:m,hash:f})}function Pa(){return E.useContext(Fa)!=null}function il(){return Oe(Pa(),"useLocation() may be used only in the context of a component."),E.useContext(Fa).location}var Nm="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function Om(u){E.useContext(Yt).static||E.useLayoutEffect(u)}function pv(){let{isDataRoute:u}=E.useContext(on);return u?Nv():yv()}function yv(){Oe(Pa(),"useNavigate() may be used only in the context of a component.");let u=E.useContext(Zl),{basename:i,navigator:c}=E.useContext(Yt),{matches:r}=E.useContext(on),{pathname:f}=il(),d=JSON.stringify(Tm(r)),m=E.useRef(!1);return Om(()=>{m.current=!0}),E.useCallback((p,v={})=>{if(jt(m.current,Nm),!m.current)return;if(typeof p=="number"){c.go(p);return}let T=Am(p,JSON.parse(d),f,v.relative==="path");u==null&&i!=="/"&&(T.pathname=T.pathname==="/"?i:cn([i,T.pathname])),(v.replace?c.replace:c.push)(T,v.state,v)},[i,c,d,f,u])}E.createContext(null);function Ia(u,{relative:i}={}){let{matches:c}=E.useContext(on),{pathname:r}=il(),f=JSON.stringify(Tm(c));return E.useMemo(()=>Am(u,JSON.parse(f),r,i==="path"),[u,f,r,i])}function vv(u,i){return zm(u,i)}function zm(u,i,c,r,f){Oe(Pa(),"useRoutes() may be used only in the context of a component.");let{navigator:d}=E.useContext(Yt),{matches:m}=E.useContext(on),b=m[m.length-1],p=b?b.params:{},v=b?b.pathname:"/",T=b?b.pathnameBase:"/",S=b&&b.route;{let q=S&&S.path||"";Mm(v,!S||q.endsWith("*")||q.endsWith("*?"),`You rendered descendant (or called \`useRoutes()\`) at "${v}" (under ) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render. +`+l.stack}}var Xu=Object.prototype.hasOwnProperty,Gu=u.unstable_scheduleCallback,Vu=u.unstable_cancelCallback,rp=u.unstable_shouldYield,op=u.unstable_requestPaint,st=u.unstable_now,fp=u.unstable_getCurrentPriorityLevel,Qr=u.unstable_ImmediatePriority,Zr=u.unstable_UserBlockingPriority,ni=u.unstable_NormalPriority,hp=u.unstable_LowPriority,Kr=u.unstable_IdlePriority,dp=u.log,mp=u.unstable_setDisableYieldValue,$l=null,ct=null;function hn(e){if(typeof dp=="function"&&mp(e),ct&&typeof ct.setStrictMode=="function")try{ct.setStrictMode($l,e)}catch{}}var rt=Math.clz32?Math.clz32:vp,pp=Math.log,yp=Math.LN2;function vp(e){return e>>>=0,e===0?32:31-(pp(e)/yp|0)|0}var li=256,ai=262144,ii=4194304;function Yn(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function ui(e,t,n){var l=e.pendingLanes;if(l===0)return 0;var a=0,s=e.suspendedLanes,o=e.pingedLanes;e=e.warmLanes;var d=l&134217727;return d!==0?(l=d&~s,l!==0?a=Yn(l):(o&=d,o!==0?a=Yn(o):n||(n=d&~e,n!==0&&(a=Yn(n))))):(d=l&~s,d!==0?a=Yn(d):o!==0?a=Yn(o):n||(n=l&~e,n!==0&&(a=Yn(n)))),a===0?0:t!==0&&t!==a&&(t&s)===0&&(s=a&-a,n=t&-t,s>=n||s===32&&(n&4194048)!==0)?t:a}function Wl(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function gp(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Jr(){var e=ii;return ii<<=1,(ii&62914560)===0&&(ii=4194304),e}function Qu(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function Fl(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function bp(e,t,n,l,a,s){var o=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var d=e.entanglements,g=e.expirationTimes,N=e.hiddenUpdates;for(n=o&~n;0"u")return null;try{return e.activeElement||e.body}catch{return e.body}}var Ap=/[\n"\\]/g;function gt(e){return e.replace(Ap,function(t){return"\\"+t.charCodeAt(0).toString(16)+" "})}function Fu(e,t,n,l,a,s,o,d){e.name="",o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"?e.type=o:e.removeAttribute("type"),t!=null?o==="number"?(t===0&&e.value===""||e.value!=t)&&(e.value=""+vt(t)):e.value!==""+vt(t)&&(e.value=""+vt(t)):o!=="submit"&&o!=="reset"||e.removeAttribute("value"),t!=null?Pu(e,o,vt(t)):n!=null?Pu(e,o,vt(n)):l!=null&&e.removeAttribute("value"),a==null&&s!=null&&(e.defaultChecked=!!s),a!=null&&(e.checked=a&&typeof a!="function"&&typeof a!="symbol"),d!=null&&typeof d!="function"&&typeof d!="symbol"&&typeof d!="boolean"?e.name=""+vt(d):e.removeAttribute("name")}function so(e,t,n,l,a,s,o,d){if(s!=null&&typeof s!="function"&&typeof s!="symbol"&&typeof s!="boolean"&&(e.type=s),t!=null||n!=null){if(!(s!=="submit"&&s!=="reset"||t!=null)){Wu(e);return}n=n!=null?""+vt(n):"",t=t!=null?""+vt(t):n,d||t===e.value||(e.value=t),e.defaultValue=t}l=l??a,l=typeof l!="function"&&typeof l!="symbol"&&!!l,e.checked=d?e.checked:!!l,e.defaultChecked=!!l,o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"&&(e.name=o),Wu(e)}function Pu(e,t,n){t==="number"&&ri(e.ownerDocument)===e||e.defaultValue===""+n||(e.defaultValue=""+n)}function fl(e,t,n,l){if(e=e.options,t){t={};for(var a=0;a"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),ls=!1;if(Vt)try{var ta={};Object.defineProperty(ta,"passive",{get:function(){ls=!0}}),window.addEventListener("test",ta,ta),window.removeEventListener("test",ta,ta)}catch{ls=!1}var mn=null,as=null,fi=null;function po(){if(fi)return fi;var e,t=as,n=t.length,l,a="value"in mn?mn.value:mn.textContent,s=a.length;for(e=0;e=aa),xo=" ",_o=!1;function Eo(e,t){switch(e){case"keyup":return Ip.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function To(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var pl=!1;function ty(e,t){switch(e){case"compositionend":return To(t);case"keypress":return t.which!==32?null:(_o=!0,xo);case"textInput":return e=t.data,e===xo&&_o?null:e;default:return null}}function ny(e,t){if(pl)return e==="compositionend"||!rs&&Eo(e,t)?(e=po(),fi=as=mn=null,pl=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=l}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=Do(n)}}function wo(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?wo(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Uo(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=ri(e.document);t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=ri(e.document)}return t}function hs(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}var oy=Vt&&"documentMode"in document&&11>=document.documentMode,yl=null,ds=null,ca=null,ms=!1;function Bo(e,t,n){var l=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;ms||yl==null||yl!==ri(l)||(l=yl,"selectionStart"in l&&hs(l)?l={start:l.selectionStart,end:l.selectionEnd}:(l=(l.ownerDocument&&l.ownerDocument.defaultView||window).getSelection(),l={anchorNode:l.anchorNode,anchorOffset:l.anchorOffset,focusNode:l.focusNode,focusOffset:l.focusOffset}),ca&&sa(ca,l)||(ca=l,l=au(ds,"onSelect"),0>=o,a-=o,wt=1<<32-rt(t)+a|n<ne?(se=K,K=null):se=K.sibling;var fe=O(A,K,R[ne],w);if(fe===null){K===null&&(K=se);break}e&&K&&fe.alternate===null&&t(A,K),x=s(fe,x,ne),oe===null?J=fe:oe.sibling=fe,oe=fe,K=se}if(ne===R.length)return n(A,K),ce&&Zt(A,ne),J;if(K===null){for(;nene?(se=K,K=null):se=K.sibling;var Bn=O(A,K,fe.value,w);if(Bn===null){K===null&&(K=se);break}e&&K&&Bn.alternate===null&&t(A,K),x=s(Bn,x,ne),oe===null?J=Bn:oe.sibling=Bn,oe=Bn,K=se}if(fe.done)return n(A,K),ce&&Zt(A,ne),J;if(K===null){for(;!fe.done;ne++,fe=R.next())fe=U(A,fe.value,w),fe!==null&&(x=s(fe,x,ne),oe===null?J=fe:oe.sibling=fe,oe=fe);return ce&&Zt(A,ne),J}for(K=l(K);!fe.done;ne++,fe=R.next())fe=M(K,A,ne,fe.value,w),fe!==null&&(e&&fe.alternate!==null&&K.delete(fe.key===null?ne:fe.key),x=s(fe,x,ne),oe===null?J=fe:oe.sibling=fe,oe=fe);return e&&K.forEach(function(z0){return t(A,z0)}),ce&&Zt(A,ne),J}function Se(A,x,R,w){if(typeof R=="object"&&R!==null&&R.type===k&&R.key===null&&(R=R.props.children),typeof R=="object"&&R!==null){switch(R.$$typeof){case z:e:{for(var J=R.key;x!==null;){if(x.key===J){if(J=R.type,J===k){if(x.tag===7){n(A,x.sibling),w=a(x,R.props.children),w.return=A,A=w;break e}}else if(x.elementType===J||typeof J=="object"&&J!==null&&J.$$typeof===Te&&Fn(J)===x.type){n(A,x.sibling),w=a(x,R.props),ma(w,R),w.return=A,A=w;break e}n(A,x);break}else t(A,x);x=x.sibling}R.type===k?(w=Zn(R.props.children,A.mode,w,R.key),w.return=A,A=w):(w=xi(R.type,R.key,R.props,null,A.mode,w),ma(w,R),w.return=A,A=w)}return o(A);case H:e:{for(J=R.key;x!==null;){if(x.key===J)if(x.tag===4&&x.stateNode.containerInfo===R.containerInfo&&x.stateNode.implementation===R.implementation){n(A,x.sibling),w=a(x,R.children||[]),w.return=A,A=w;break e}else{n(A,x);break}else t(A,x);x=x.sibling}w=xs(R,A.mode,w),w.return=A,A=w}return o(A);case Te:return R=Fn(R),Se(A,x,R,w)}if(Nt(R))return V(A,x,R,w);if(We(R)){if(J=We(R),typeof J!="function")throw Error(r(150));return R=J.call(R),W(A,x,R,w)}if(typeof R.then=="function")return Se(A,x,Ni(R),w);if(R.$$typeof===Q)return Se(A,x,Ti(A,R),w);Oi(A,R)}return typeof R=="string"&&R!==""||typeof R=="number"||typeof R=="bigint"?(R=""+R,x!==null&&x.tag===6?(n(A,x.sibling),w=a(x,R),w.return=A,A=w):(n(A,x),w=Ss(R,A.mode,w),w.return=A,A=w),o(A)):n(A,x)}return function(A,x,R,w){try{da=0;var J=Se(A,x,R,w);return Rl=null,J}catch(K){if(K===Cl||K===Ci)throw K;var oe=ft(29,K,null,A.mode);return oe.lanes=w,oe.return=A,oe}finally{}}}var In=uf(!0),sf=uf(!1),bn=!1;function js(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function ws(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function Sn(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function xn(e,t,n){var l=e.updateQueue;if(l===null)return null;if(l=l.shared,(he&2)!==0){var a=l.pending;return a===null?t.next=t:(t.next=a.next,a.next=t),l.pending=t,t=Si(e),Go(e,null,n),t}return bi(e,l,t,n),Si(e)}function pa(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194048)!==0)){var l=t.lanes;l&=e.pendingLanes,n|=l,t.lanes=n,Wr(e,n)}}function Us(e,t){var n=e.updateQueue,l=e.alternate;if(l!==null&&(l=l.updateQueue,n===l)){var a=null,s=null;if(n=n.firstBaseUpdate,n!==null){do{var o={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};s===null?a=s=o:s=s.next=o,n=n.next}while(n!==null);s===null?a=s=t:s=s.next=t}else a=s=t;n={baseState:l.baseState,firstBaseUpdate:a,lastBaseUpdate:s,shared:l.shared,callbacks:l.callbacks},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}var Bs=!1;function ya(){if(Bs){var e=Al;if(e!==null)throw e}}function va(e,t,n,l){Bs=!1;var a=e.updateQueue;bn=!1;var s=a.firstBaseUpdate,o=a.lastBaseUpdate,d=a.shared.pending;if(d!==null){a.shared.pending=null;var g=d,N=g.next;g.next=null,o===null?s=N:o.next=N,o=g;var D=e.alternate;D!==null&&(D=D.updateQueue,d=D.lastBaseUpdate,d!==o&&(d===null?D.firstBaseUpdate=N:d.next=N,D.lastBaseUpdate=g))}if(s!==null){var U=a.baseState;o=0,D=N=g=null,d=s;do{var O=d.lane&-536870913,M=O!==d.lane;if(M?(ue&O)===O:(l&O)===O){O!==0&&O===Tl&&(Bs=!0),D!==null&&(D=D.next={lane:0,tag:d.tag,payload:d.payload,callback:null,next:null});e:{var V=e,W=d;O=t;var Se=n;switch(W.tag){case 1:if(V=W.payload,typeof V=="function"){U=V.call(Se,U,O);break e}U=V;break e;case 3:V.flags=V.flags&-65537|128;case 0:if(V=W.payload,O=typeof V=="function"?V.call(Se,U,O):V,O==null)break e;U=S({},U,O);break e;case 2:bn=!0}}O=d.callback,O!==null&&(e.flags|=64,M&&(e.flags|=8192),M=a.callbacks,M===null?a.callbacks=[O]:M.push(O))}else M={lane:O,tag:d.tag,payload:d.payload,callback:d.callback,next:null},D===null?(N=D=M,g=U):D=D.next=M,o|=O;if(d=d.next,d===null){if(d=a.shared.pending,d===null)break;M=d,d=M.next,M.next=null,a.lastBaseUpdate=M,a.shared.pending=null}}while(!0);D===null&&(g=U),a.baseState=g,a.firstBaseUpdate=N,a.lastBaseUpdate=D,s===null&&(a.shared.lanes=0),Cn|=o,e.lanes=o,e.memoizedState=U}}function cf(e,t){if(typeof e!="function")throw Error(r(191,e));e.call(t)}function rf(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;es?s:8;var o=j.T,d={};j.T=d,tc(e,!1,t,n);try{var g=a(),N=j.S;if(N!==null&&N(d,g),g!==null&&typeof g=="object"&&typeof g.then=="function"){var D=by(g,l);Sa(e,t,D,yt(e))}else Sa(e,t,l,yt(e))}catch(U){Sa(e,t,{then:function(){},status:"rejected",reason:U},yt())}finally{X.p=s,o!==null&&d.types!==null&&(o.types=d.types),j.T=o}}function Ay(){}function Is(e,t,n,l){if(e.tag!==5)throw Error(r(476));var a=kf(e).queue;Yf(e,a,t,F,n===null?Ay:function(){return Xf(e),n(l)})}function kf(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:F,baseState:F,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Wt,lastRenderedState:F},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Wt,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function Xf(e){var t=kf(e);t.next===null&&(t=e.alternate.memoizedState),Sa(e,t.next.queue,{},yt())}function ec(){return Ke(La)}function Gf(){return we().memoizedState}function Vf(){return we().memoizedState}function Cy(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var n=yt();e=Sn(n);var l=xn(t,e,n);l!==null&&(ut(l,t,n),pa(l,t,n)),t={cache:Os()},e.payload=t;return}t=t.return}}function Ry(e,t,n){var l=yt();n={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},qi(e)?Zf(t,n):(n=gs(e,t,n,l),n!==null&&(ut(n,e,l),Kf(n,t,l)))}function Qf(e,t,n){var l=yt();Sa(e,t,n,l)}function Sa(e,t,n,l){var a={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(qi(e))Zf(t,a);else{var s=e.alternate;if(e.lanes===0&&(s===null||s.lanes===0)&&(s=t.lastRenderedReducer,s!==null))try{var o=t.lastRenderedState,d=s(o,n);if(a.hasEagerState=!0,a.eagerState=d,ot(d,o))return bi(e,t,a,0),Ee===null&&gi(),!1}catch{}finally{}if(n=gs(e,t,a,l),n!==null)return ut(n,e,l),Kf(n,t,l),!0}return!1}function tc(e,t,n,l){if(l={lane:2,revertLane:jc(),gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},qi(e)){if(t)throw Error(r(479))}else t=gs(e,n,l,2),t!==null&&ut(t,e,2)}function qi(e){var t=e.alternate;return e===te||t!==null&&t===te}function Zf(e,t){Ol=Di=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Kf(e,t,n){if((n&4194048)!==0){var l=t.lanes;l&=e.pendingLanes,n|=l,t.lanes=n,Wr(e,n)}}var xa={readContext:Ke,use:Ui,useCallback:ze,useContext:ze,useEffect:ze,useImperativeHandle:ze,useLayoutEffect:ze,useInsertionEffect:ze,useMemo:ze,useReducer:ze,useRef:ze,useState:ze,useDebugValue:ze,useDeferredValue:ze,useTransition:ze,useSyncExternalStore:ze,useId:ze,useHostTransitionStatus:ze,useFormState:ze,useActionState:ze,useOptimistic:ze,useMemoCache:ze,useCacheRefresh:ze};xa.useEffectEvent=ze;var Jf={readContext:Ke,use:Ui,useCallback:function(e,t){return Ie().memoizedState=[e,t===void 0?null:t],e},useContext:Ke,useEffect:Mf,useImperativeHandle:function(e,t,n){n=n!=null?n.concat([e]):null,Li(4194308,4,Uf.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Li(4194308,4,e,t)},useInsertionEffect:function(e,t){Li(4,2,e,t)},useMemo:function(e,t){var n=Ie();t=t===void 0?null:t;var l=e();if(el){hn(!0);try{e()}finally{hn(!1)}}return n.memoizedState=[l,t],l},useReducer:function(e,t,n){var l=Ie();if(n!==void 0){var a=n(t);if(el){hn(!0);try{n(t)}finally{hn(!1)}}}else a=t;return l.memoizedState=l.baseState=a,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:a},l.queue=e,e=e.dispatch=Ry.bind(null,te,e),[l.memoizedState,e]},useRef:function(e){var t=Ie();return e={current:e},t.memoizedState=e},useState:function(e){e=Js(e);var t=e.queue,n=Qf.bind(null,te,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:Fs,useDeferredValue:function(e,t){var n=Ie();return Ps(n,e,t)},useTransition:function(){var e=Js(!1);return e=Yf.bind(null,te,e.queue,!0,!1),Ie().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var l=te,a=Ie();if(ce){if(n===void 0)throw Error(r(407));n=n()}else{if(n=t(),Ee===null)throw Error(r(349));(ue&127)!==0||pf(l,t,n)}a.memoizedState=n;var s={value:n,getSnapshot:t};return a.queue=s,Mf(vf.bind(null,l,s,e),[e]),l.flags|=2048,Ml(9,{destroy:void 0},yf.bind(null,l,s,n,t),null),n},useId:function(){var e=Ie(),t=Ee.identifierPrefix;if(ce){var n=Ut,l=wt;n=(l&~(1<<32-rt(l)-1)).toString(32)+n,t="_"+t+"R_"+n,n=ji++,0<\/script>",s=s.removeChild(s.firstChild);break;case"select":s=typeof l.is=="string"?o.createElement("select",{is:l.is}):o.createElement("select"),l.multiple?s.multiple=!0:l.size&&(s.size=l.size);break;default:s=typeof l.is=="string"?o.createElement(a,{is:l.is}):o.createElement(a)}}s[Qe]=t,s[et]=l;e:for(o=t.child;o!==null;){if(o.tag===5||o.tag===6)s.appendChild(o.stateNode);else if(o.tag!==4&&o.tag!==27&&o.child!==null){o.child.return=o,o=o.child;continue}if(o===t)break e;for(;o.sibling===null;){if(o.return===null||o.return===t)break e;o=o.return}o.sibling.return=o.return,o=o.sibling}t.stateNode=s;e:switch($e(s,a,l),a){case"button":case"input":case"select":case"textarea":l=!!l.autoFocus;break e;case"img":l=!0;break e;default:l=!1}l&&Pt(t)}}return Ce(t),pc(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==l&&Pt(t);else{if(typeof l!="string"&&t.stateNode===null)throw Error(r(166));if(e=le.current,_l(t)){if(e=t.stateNode,n=t.memoizedProps,l=null,a=Ze,a!==null)switch(a.tag){case 27:case 5:l=a.memoizedProps}e[Qe]=t,e=!!(e.nodeValue===n||l!==null&&l.suppressHydrationWarning===!0||dd(e.nodeValue,n)),e||vn(t,!0)}else e=iu(e).createTextNode(l),e[Qe]=t,t.stateNode=e}return Ce(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(l=_l(t),n!==null){if(e===null){if(!l)throw Error(r(318));if(e=t.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(r(557));e[Qe]=t}else Kn(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Ce(t),e=!1}else n=As(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(dt(t),t):(dt(t),null);if((t.flags&128)!==0)throw Error(r(558))}return Ce(t),null;case 13:if(l=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(a=_l(t),l!==null&&l.dehydrated!==null){if(e===null){if(!a)throw Error(r(318));if(a=t.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(r(317));a[Qe]=t}else Kn(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Ce(t),a=!1}else a=As(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=a),a=!0;if(!a)return t.flags&256?(dt(t),t):(dt(t),null)}return dt(t),(t.flags&128)!==0?(t.lanes=n,t):(n=l!==null,e=e!==null&&e.memoizedState!==null,n&&(l=t.child,a=null,l.alternate!==null&&l.alternate.memoizedState!==null&&l.alternate.memoizedState.cachePool!==null&&(a=l.alternate.memoizedState.cachePool.pool),s=null,l.memoizedState!==null&&l.memoizedState.cachePool!==null&&(s=l.memoizedState.cachePool.pool),s!==a&&(l.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),Vi(t,t.updateQueue),Ce(t),null);case 4:return De(),e===null&&Lc(t.stateNode.containerInfo),Ce(t),null;case 10:return Jt(t.type),Ce(t),null;case 19:if(B(je),l=t.memoizedState,l===null)return Ce(t),null;if(a=(t.flags&128)!==0,s=l.rendering,s===null)if(a)Ea(l,!1);else{if(Me!==0||e!==null&&(e.flags&128)!==0)for(e=t.child;e!==null;){if(s=Mi(e),s!==null){for(t.flags|=128,Ea(l,!1),e=s.updateQueue,t.updateQueue=e,Vi(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)Vo(n,e),n=n.sibling;return G(je,je.current&1|2),ce&&Zt(t,l.treeForkCount),t.child}e=e.sibling}l.tail!==null&&st()>$i&&(t.flags|=128,a=!0,Ea(l,!1),t.lanes=4194304)}else{if(!a)if(e=Mi(s),e!==null){if(t.flags|=128,a=!0,e=e.updateQueue,t.updateQueue=e,Vi(t,e),Ea(l,!0),l.tail===null&&l.tailMode==="hidden"&&!s.alternate&&!ce)return Ce(t),null}else 2*st()-l.renderingStartTime>$i&&n!==536870912&&(t.flags|=128,a=!0,Ea(l,!1),t.lanes=4194304);l.isBackwards?(s.sibling=t.child,t.child=s):(e=l.last,e!==null?e.sibling=s:t.child=s,l.last=s)}return l.tail!==null?(e=l.tail,l.rendering=e,l.tail=e.sibling,l.renderingStartTime=st(),e.sibling=null,n=je.current,G(je,a?n&1|2:n&1),ce&&Zt(t,l.treeForkCount),e):(Ce(t),null);case 22:case 23:return dt(t),Hs(),l=t.memoizedState!==null,e!==null?e.memoizedState!==null!==l&&(t.flags|=8192):l&&(t.flags|=8192),l?(n&536870912)!==0&&(t.flags&128)===0&&(Ce(t),t.subtreeFlags&6&&(t.flags|=8192)):Ce(t),n=t.updateQueue,n!==null&&Vi(t,n.retryQueue),n=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),l=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(l=t.memoizedState.cachePool.pool),l!==n&&(t.flags|=2048),e!==null&&B(Wn),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),Jt(Be),Ce(t),null;case 25:return null;case 30:return null}throw Error(r(156,t.tag))}function Dy(e,t){switch(Es(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Jt(Be),De(),e=t.flags,(e&65536)!==0&&(e&128)===0?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return ti(t),null;case 31:if(t.memoizedState!==null){if(dt(t),t.alternate===null)throw Error(r(340));Kn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(dt(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(r(340));Kn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return B(je),null;case 4:return De(),null;case 10:return Jt(t.type),null;case 22:case 23:return dt(t),Hs(),e!==null&&B(Wn),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return Jt(Be),null;case 25:return null;default:return null}}function gh(e,t){switch(Es(t),t.tag){case 3:Jt(Be),De();break;case 26:case 27:case 5:ti(t);break;case 4:De();break;case 31:t.memoizedState!==null&&dt(t);break;case 13:dt(t);break;case 19:B(je);break;case 10:Jt(t.type);break;case 22:case 23:dt(t),Hs(),e!==null&&B(Wn);break;case 24:Jt(Be)}}function Ta(e,t){try{var n=t.updateQueue,l=n!==null?n.lastEffect:null;if(l!==null){var a=l.next;n=a;do{if((n.tag&e)===e){l=void 0;var s=n.create,o=n.inst;l=s(),o.destroy=l}n=n.next}while(n!==a)}}catch(d){pe(t,t.return,d)}}function Tn(e,t,n){try{var l=t.updateQueue,a=l!==null?l.lastEffect:null;if(a!==null){var s=a.next;l=s;do{if((l.tag&e)===e){var o=l.inst,d=o.destroy;if(d!==void 0){o.destroy=void 0,a=t;var g=n,N=d;try{N()}catch(D){pe(a,g,D)}}}l=l.next}while(l!==s)}}catch(D){pe(t,t.return,D)}}function bh(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{rf(t,n)}catch(l){pe(e,e.return,l)}}}function Sh(e,t,n){n.props=tl(e.type,e.memoizedProps),n.state=e.memoizedState;try{n.componentWillUnmount()}catch(l){pe(e,t,l)}}function Aa(e,t){try{var n=e.ref;if(n!==null){switch(e.tag){case 26:case 27:case 5:var l=e.stateNode;break;case 30:l=e.stateNode;break;default:l=e.stateNode}typeof n=="function"?e.refCleanup=n(l):n.current=l}}catch(a){pe(e,t,a)}}function Bt(e,t){var n=e.ref,l=e.refCleanup;if(n!==null)if(typeof l=="function")try{l()}catch(a){pe(e,t,a)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n=="function")try{n(null)}catch(a){pe(e,t,a)}else n.current=null}function xh(e){var t=e.type,n=e.memoizedProps,l=e.stateNode;try{e:switch(t){case"button":case"input":case"select":case"textarea":n.autoFocus&&l.focus();break e;case"img":n.src?l.src=n.src:n.srcSet&&(l.srcset=n.srcSet)}}catch(a){pe(e,e.return,a)}}function yc(e,t,n){try{var l=e.stateNode;e0(l,e.type,n,t),l[et]=t}catch(a){pe(e,e.return,a)}}function _h(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&Mn(e.type)||e.tag===4}function vc(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||_h(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&&Mn(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 gc(e,t,n){var l=e.tag;if(l===5||l===6)e=e.stateNode,t?(n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n).insertBefore(e,t):(t=n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n,t.appendChild(e),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=Gt));else if(l!==4&&(l===27&&Mn(e.type)&&(n=e.stateNode,t=null),e=e.child,e!==null))for(gc(e,t,n),e=e.sibling;e!==null;)gc(e,t,n),e=e.sibling}function Qi(e,t,n){var l=e.tag;if(l===5||l===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(l!==4&&(l===27&&Mn(e.type)&&(n=e.stateNode),e=e.child,e!==null))for(Qi(e,t,n),e=e.sibling;e!==null;)Qi(e,t,n),e=e.sibling}function Eh(e){var t=e.stateNode,n=e.memoizedProps;try{for(var l=e.type,a=t.attributes;a.length;)t.removeAttributeNode(a[0]);$e(t,l,n),t[Qe]=e,t[et]=n}catch(s){pe(e,e.return,s)}}var It=!1,qe=!1,bc=!1,Th=typeof WeakSet=="function"?WeakSet:Set,Ve=null;function jy(e,t){if(e=e.containerInfo,Yc=hu,e=Uo(e),hs(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var l=n.getSelection&&n.getSelection();if(l&&l.rangeCount!==0){n=l.anchorNode;var a=l.anchorOffset,s=l.focusNode;l=l.focusOffset;try{n.nodeType,s.nodeType}catch{n=null;break e}var o=0,d=-1,g=-1,N=0,D=0,U=e,O=null;t:for(;;){for(var M;U!==n||a!==0&&U.nodeType!==3||(d=o+a),U!==s||l!==0&&U.nodeType!==3||(g=o+l),U.nodeType===3&&(o+=U.nodeValue.length),(M=U.firstChild)!==null;)O=U,U=M;for(;;){if(U===e)break t;if(O===n&&++N===a&&(d=o),O===s&&++D===l&&(g=o),(M=U.nextSibling)!==null)break;U=O,O=U.parentNode}U=M}n=d===-1||g===-1?null:{start:d,end:g}}else n=null}n=n||{start:0,end:0}}else n=null;for(kc={focusedElem:e,selectionRange:n},hu=!1,Ve=t;Ve!==null;)if(t=Ve,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,Ve=e;else for(;Ve!==null;){switch(t=Ve,s=t.alternate,e=t.flags,t.tag){case 0:if((e&4)!==0&&(e=t.updateQueue,e=e!==null?e.events:null,e!==null))for(n=0;n title"))),$e(s,l,n),s[Qe]=e,Ge(s),l=s;break e;case"link":var o=zd("link","href",a).get(l+(n.href||""));if(o){for(var d=0;dSe&&(o=Se,Se=W,W=o);var A=jo(d,W),x=jo(d,Se);if(A&&x&&(M.rangeCount!==1||M.anchorNode!==A.node||M.anchorOffset!==A.offset||M.focusNode!==x.node||M.focusOffset!==x.offset)){var R=U.createRange();R.setStart(A.node,A.offset),M.removeAllRanges(),W>Se?(M.addRange(R),M.extend(x.node,x.offset)):(R.setEnd(x.node,x.offset),M.addRange(R))}}}}for(U=[],M=d;M=M.parentNode;)M.nodeType===1&&U.push({element:M,left:M.scrollLeft,top:M.scrollTop});for(typeof d.focus=="function"&&d.focus(),d=0;dn?32:n,j.T=null,n=Cc,Cc=null;var s=Nn,o=an;if(ke=0,Bl=Nn=null,an=0,(he&6)!==0)throw Error(r(331));var d=he;if(he|=4,Uh(s.current),Dh(s,s.current,o,n),he=d,Ma(0,!1),ct&&typeof ct.onPostCommitFiberRoot=="function")try{ct.onPostCommitFiberRoot($l,s)}catch{}return!0}finally{X.p=a,j.T=l,Ih(e,t)}}function td(e,t,n){t=St(n,t),t=ic(e.stateNode,t,2),e=xn(e,t,2),e!==null&&(Fl(e,2),Lt(e))}function pe(e,t,n){if(e.tag===3)td(e,e,n);else for(;t!==null;){if(t.tag===3){td(t,e,n);break}else if(t.tag===1){var l=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof l.componentDidCatch=="function"&&(Rn===null||!Rn.has(l))){e=St(n,e),n=nh(2),l=xn(t,n,2),l!==null&&(lh(n,l,t,e),Fl(l,2),Lt(l));break}}t=t.return}}function zc(e,t,n){var l=e.pingCache;if(l===null){l=e.pingCache=new By;var a=new Set;l.set(t,a)}else a=l.get(t),a===void 0&&(a=new Set,l.set(t,a));a.has(n)||(_c=!0,a.add(n),e=ky.bind(null,e,t,n),t.then(e,e))}function ky(e,t,n){var l=e.pingCache;l!==null&&l.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,Ee===e&&(ue&n)===n&&(Me===4||Me===3&&(ue&62914560)===ue&&300>st()-Ji?(he&2)===0&&Ll(e,0):Ec|=n,Ul===ue&&(Ul=0)),Lt(e)}function nd(e,t){t===0&&(t=Jr()),e=Qn(e,t),e!==null&&(Fl(e,t),Lt(e))}function Xy(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),nd(e,n)}function Gy(e,t){var n=0;switch(e.tag){case 31:case 13:var l=e.stateNode,a=e.memoizedState;a!==null&&(n=a.retryLane);break;case 19:l=e.stateNode;break;case 22:l=e.stateNode._retryCache;break;default:throw Error(r(314))}l!==null&&l.delete(t),nd(e,n)}function Vy(e,t){return Gu(e,t)}var tu=null,ql=null,Mc=!1,nu=!1,Dc=!1,zn=0;function Lt(e){e!==ql&&e.next===null&&(ql===null?tu=ql=e:ql=ql.next=e),nu=!0,Mc||(Mc=!0,Zy())}function Ma(e,t){if(!Dc&&nu){Dc=!0;do for(var n=!1,l=tu;l!==null;){if(e!==0){var a=l.pendingLanes;if(a===0)var s=0;else{var o=l.suspendedLanes,d=l.pingedLanes;s=(1<<31-rt(42|e)+1)-1,s&=a&~(o&~d),s=s&201326741?s&201326741|1:s?s|2:0}s!==0&&(n=!0,ud(l,s))}else s=ue,s=ui(l,l===Ee?s:0,l.cancelPendingCommit!==null||l.timeoutHandle!==-1),(s&3)===0||Wl(l,s)||(n=!0,ud(l,s));l=l.next}while(n);Dc=!1}}function Qy(){ld()}function ld(){nu=Mc=!1;var e=0;zn!==0&&n0()&&(e=zn);for(var t=st(),n=null,l=tu;l!==null;){var a=l.next,s=ad(l,t);s===0?(l.next=null,n===null?tu=a:n.next=a,a===null&&(ql=n)):(n=l,(e!==0||(s&3)!==0)&&(nu=!0)),l=a}ke!==0&&ke!==5||Ma(e),zn!==0&&(zn=0)}function ad(e,t){for(var n=e.suspendedLanes,l=e.pingedLanes,a=e.expirationTimes,s=e.pendingLanes&-62914561;0d)break;var D=g.transferSize,U=g.initiatorType;D&&md(U)&&(g=g.responseEnd,o+=D*(g"u"?null:document;function Cd(e,t,n){var l=Yl;if(l&&typeof t=="string"&&t){var a=gt(t);a='link[rel="'+e+'"][href="'+a+'"]',typeof n=="string"&&(a+='[crossorigin="'+n+'"]'),Ad.has(a)||(Ad.add(a),e={rel:e,crossOrigin:n,href:t},l.querySelector(a)===null&&(t=l.createElement("link"),$e(t,"link",e),Ge(t),l.head.appendChild(t)))}}function f0(e){un.D(e),Cd("dns-prefetch",e,null)}function h0(e,t){un.C(e,t),Cd("preconnect",e,t)}function d0(e,t,n){un.L(e,t,n);var l=Yl;if(l&&e&&t){var a='link[rel="preload"][as="'+gt(t)+'"]';t==="image"&&n&&n.imageSrcSet?(a+='[imagesrcset="'+gt(n.imageSrcSet)+'"]',typeof n.imageSizes=="string"&&(a+='[imagesizes="'+gt(n.imageSizes)+'"]')):a+='[href="'+gt(e)+'"]';var s=a;switch(t){case"style":s=kl(e);break;case"script":s=Xl(e)}Ct.has(s)||(e=S({rel:"preload",href:t==="image"&&n&&n.imageSrcSet?void 0:e,as:t},n),Ct.set(s,e),l.querySelector(a)!==null||t==="style"&&l.querySelector(Ua(s))||t==="script"&&l.querySelector(Ba(s))||(t=l.createElement("link"),$e(t,"link",e),Ge(t),l.head.appendChild(t)))}}function m0(e,t){un.m(e,t);var n=Yl;if(n&&e){var l=t&&typeof t.as=="string"?t.as:"script",a='link[rel="modulepreload"][as="'+gt(l)+'"][href="'+gt(e)+'"]',s=a;switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":s=Xl(e)}if(!Ct.has(s)&&(e=S({rel:"modulepreload",href:e},t),Ct.set(s,e),n.querySelector(a)===null)){switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(n.querySelector(Ba(s)))return}l=n.createElement("link"),$e(l,"link",e),Ge(l),n.head.appendChild(l)}}}function p0(e,t,n){un.S(e,t,n);var l=Yl;if(l&&e){var a=rl(l).hoistableStyles,s=kl(e);t=t||"default";var o=a.get(s);if(!o){var d={loading:0,preload:null};if(o=l.querySelector(Ua(s)))d.loading=5;else{e=S({rel:"stylesheet",href:e,"data-precedence":t},n),(n=Ct.get(s))&&Jc(e,n);var g=o=l.createElement("link");Ge(g),$e(g,"link",e),g._p=new Promise(function(N,D){g.onload=N,g.onerror=D}),g.addEventListener("load",function(){d.loading|=1}),g.addEventListener("error",function(){d.loading|=2}),d.loading|=4,su(o,t,l)}o={type:"stylesheet",instance:o,count:1,state:d},a.set(s,o)}}}function y0(e,t){un.X(e,t);var n=Yl;if(n&&e){var l=rl(n).hoistableScripts,a=Xl(e),s=l.get(a);s||(s=n.querySelector(Ba(a)),s||(e=S({src:e,async:!0},t),(t=Ct.get(a))&&$c(e,t),s=n.createElement("script"),Ge(s),$e(s,"link",e),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function v0(e,t){un.M(e,t);var n=Yl;if(n&&e){var l=rl(n).hoistableScripts,a=Xl(e),s=l.get(a);s||(s=n.querySelector(Ba(a)),s||(e=S({src:e,async:!0,type:"module"},t),(t=Ct.get(a))&&$c(e,t),s=n.createElement("script"),Ge(s),$e(s,"link",e),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function Rd(e,t,n,l){var a=(a=le.current)?uu(a):null;if(!a)throw Error(r(446));switch(e){case"meta":case"title":return null;case"style":return typeof n.precedence=="string"&&typeof n.href=="string"?(t=kl(n.href),n=rl(a).hoistableStyles,l=n.get(t),l||(l={type:"style",instance:null,count:0,state:null},n.set(t,l)),l):{type:"void",instance:null,count:0,state:null};case"link":if(n.rel==="stylesheet"&&typeof n.href=="string"&&typeof n.precedence=="string"){e=kl(n.href);var s=rl(a).hoistableStyles,o=s.get(e);if(o||(a=a.ownerDocument||a,o={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},s.set(e,o),(s=a.querySelector(Ua(e)))&&!s._p&&(o.instance=s,o.state.loading=5),Ct.has(e)||(n={rel:"preload",as:"style",href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},Ct.set(e,n),s||g0(a,e,n,o.state))),t&&l===null)throw Error(r(528,""));return o}if(t&&l!==null)throw Error(r(529,""));return null;case"script":return t=n.async,n=n.src,typeof n=="string"&&t&&typeof t!="function"&&typeof t!="symbol"?(t=Xl(n),n=rl(a).hoistableScripts,l=n.get(t),l||(l={type:"script",instance:null,count:0,state:null},n.set(t,l)),l):{type:"void",instance:null,count:0,state:null};default:throw Error(r(444,e))}}function kl(e){return'href="'+gt(e)+'"'}function Ua(e){return'link[rel="stylesheet"]['+e+"]"}function Nd(e){return S({},e,{"data-precedence":e.precedence,precedence:null})}function g0(e,t,n,l){e.querySelector('link[rel="preload"][as="style"]['+t+"]")?l.loading=1:(t=e.createElement("link"),l.preload=t,t.addEventListener("load",function(){return l.loading|=1}),t.addEventListener("error",function(){return l.loading|=2}),$e(t,"link",n),Ge(t),e.head.appendChild(t))}function Xl(e){return'[src="'+gt(e)+'"]'}function Ba(e){return"script[async]"+e}function Od(e,t,n){if(t.count++,t.instance===null)switch(t.type){case"style":var l=e.querySelector('style[data-href~="'+gt(n.href)+'"]');if(l)return t.instance=l,Ge(l),l;var a=S({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return l=(e.ownerDocument||e).createElement("style"),Ge(l),$e(l,"style",a),su(l,n.precedence,e),t.instance=l;case"stylesheet":a=kl(n.href);var s=e.querySelector(Ua(a));if(s)return t.state.loading|=4,t.instance=s,Ge(s),s;l=Nd(n),(a=Ct.get(a))&&Jc(l,a),s=(e.ownerDocument||e).createElement("link"),Ge(s);var o=s;return o._p=new Promise(function(d,g){o.onload=d,o.onerror=g}),$e(s,"link",l),t.state.loading|=4,su(s,n.precedence,e),t.instance=s;case"script":return s=Xl(n.src),(a=e.querySelector(Ba(s)))?(t.instance=a,Ge(a),a):(l=n,(a=Ct.get(s))&&(l=S({},n),$c(l,a)),e=e.ownerDocument||e,a=e.createElement("script"),Ge(a),$e(a,"link",l),e.head.appendChild(a),t.instance=a);case"void":return null;default:throw Error(r(443,t.type))}else t.type==="stylesheet"&&(t.state.loading&4)===0&&(l=t.instance,t.state.loading|=4,su(l,n.precedence,e));return t.instance}function su(e,t,n){for(var l=n.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=l.length?l[l.length-1]:null,s=a,o=0;o title"):null)}function b0(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case"meta":case"title":return!0;case"style":if(typeof t.precedence!="string"||typeof t.href!="string"||t.href==="")break;return!0;case"link":if(typeof t.rel!="string"||typeof t.href!="string"||t.href===""||t.onLoad||t.onError)break;switch(t.rel){case"stylesheet":return e=t.disabled,typeof t.precedence=="string"&&e==null;default:return!0}case"script":if(t.async&&typeof t.async!="function"&&typeof t.async!="symbol"&&!t.onLoad&&!t.onError&&t.src&&typeof t.src=="string")return!0}return!1}function Dd(e){return!(e.type==="stylesheet"&&(e.state.loading&3)===0)}function S0(e,t,n,l){if(n.type==="stylesheet"&&(typeof l.media!="string"||matchMedia(l.media).matches!==!1)&&(n.state.loading&4)===0){if(n.instance===null){var a=kl(l.href),s=t.querySelector(Ua(a));if(s){t=s._p,t!==null&&typeof t=="object"&&typeof t.then=="function"&&(e.count++,e=ru.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=s,Ge(s);return}s=t.ownerDocument||t,l=Nd(l),(a=Ct.get(a))&&Jc(l,a),s=s.createElement("link"),Ge(s);var o=s;o._p=new Promise(function(d,g){o.onload=d,o.onerror=g}),$e(s,"link",l),n.instance=s}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&(n.state.loading&3)===0&&(e.count++,n=ru.bind(e),t.addEventListener("load",n),t.addEventListener("error",n))}}var Wc=0;function x0(e,t){return e.stylesheets&&e.count===0&&fu(e,e.stylesheets),0Wc?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(l),clearTimeout(a)}}:null}function ru(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)fu(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var ou=null;function fu(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,ou=new Map,t.forEach(_0,e),ou=null,ru.call(e))}function _0(e,t){if(!(t.state.loading&4)){var n=ou.get(e);if(n)var l=n.get(null);else{n=new Map,ou.set(e,n);for(var a=e.querySelectorAll("link[data-precedence],style[data-precedence]"),s=0;s"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(u)}catch(i){console.error(i)}}return u(),ir.exports=H0(),ir.exports}var Y0=q0();var nm="popstate";function k0(u={}){function i(r,f){let{pathname:h,search:m,hash:b}=r.location;return yr("",{pathname:h,search:m,hash:b},f.state&&f.state.usr||null,f.state&&f.state.key||"default")}function c(r,f){return typeof f=="string"?f:Wa(f)}return G0(i,c,null,u)}function Oe(u,i){if(u===!1||u===null||typeof u>"u")throw new Error(i)}function jt(u,i){if(!u){typeof console<"u"&&console.warn(i);try{throw new Error(i)}catch{}}}function X0(){return Math.random().toString(36).substring(2,10)}function lm(u,i){return{usr:u.state,key:u.key,idx:i}}function yr(u,i,c=null,r){return{pathname:typeof u=="string"?u:u.pathname,search:"",hash:"",...typeof i=="string"?Ql(i):i,state:c,key:i&&i.key||r||X0()}}function Wa({pathname:u="/",search:i="",hash:c=""}){return i&&i!=="?"&&(u+=i.charAt(0)==="?"?i:"?"+i),c&&c!=="#"&&(u+=c.charAt(0)==="#"?c:"#"+c),u}function Ql(u){let i={};if(u){let c=u.indexOf("#");c>=0&&(i.hash=u.substring(c),u=u.substring(0,c));let r=u.indexOf("?");r>=0&&(i.search=u.substring(r),u=u.substring(0,r)),u&&(i.pathname=u)}return i}function G0(u,i,c,r={}){let{window:f=document.defaultView,v5Compat:h=!1}=r,m=f.history,b="POP",y=null,v=T();v==null&&(v=0,m.replaceState({...m.state,idx:v},""));function T(){return(m.state||{idx:null}).idx}function S(){b="POP";let Y=T(),L=Y==null?null:Y-v;v=Y,y&&y({action:b,location:k.location,delta:L})}function C(Y,L){b="PUSH";let q=yr(k.location,Y,L);v=T()+1;let Q=lm(q,v),P=k.createHref(q);try{m.pushState(Q,"",P)}catch(ye){if(ye instanceof DOMException&&ye.name==="DataCloneError")throw ye;f.location.assign(P)}h&&y&&y({action:b,location:k.location,delta:1})}function z(Y,L){b="REPLACE";let q=yr(k.location,Y,L);v=T();let Q=lm(q,v),P=k.createHref(q);m.replaceState(Q,"",P),h&&y&&y({action:b,location:k.location,delta:0})}function H(Y){return V0(Y)}let k={get action(){return b},get location(){return u(f,m)},listen(Y){if(y)throw new Error("A history only accepts one active listener");return f.addEventListener(nm,S),y=Y,()=>{f.removeEventListener(nm,S),y=null}},createHref(Y){return i(f,Y)},createURL:H,encodeLocation(Y){let L=H(Y);return{pathname:L.pathname,search:L.search,hash:L.hash}},push:C,replace:z,go(Y){return m.go(Y)}};return k}function V0(u,i=!1){let c="http://localhost";typeof window<"u"&&(c=window.location.origin!=="null"?window.location.origin:window.location.href),Oe(c,"No window.location.(origin|href) available to create URL");let r=typeof u=="string"?u:Wa(u);return r=r.replace(/ $/,"%20"),!i&&r.startsWith("//")&&(r=c+r),new URL(r,c)}function _m(u,i,c="/"){return Q0(u,i,c,!1)}function Q0(u,i,c,r){let f=typeof i=="string"?Ql(i):i,h=rn(f.pathname||"/",c);if(h==null)return null;let m=Em(u);Z0(m);let b=null;for(let y=0;b==null&&y{let T={relativePath:v===void 0?m.path||"":v,caseSensitive:m.caseSensitive===!0,childrenIndex:b,route:m};if(T.relativePath.startsWith("/")){if(!T.relativePath.startsWith(r)&&y)return;Oe(T.relativePath.startsWith(r),`Absolute route path "${T.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),T.relativePath=T.relativePath.slice(r.length)}let S=cn([r,T.relativePath]),C=c.concat(T);m.children&&m.children.length>0&&(Oe(m.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${S}".`),Em(m.children,i,C,S,y)),!(m.path==null&&!m.index)&&i.push({path:S,score:I0(S,m.index),routesMeta:C})};return u.forEach((m,b)=>{if(m.path===""||!m.path?.includes("?"))h(m,b);else for(let y of Tm(m.path))h(m,b,!0,y)}),i}function Tm(u){let i=u.split("/");if(i.length===0)return[];let[c,...r]=i,f=c.endsWith("?"),h=c.replace(/\?$/,"");if(r.length===0)return f?[h,""]:[h];let m=Tm(r.join("/")),b=[];return b.push(...m.map(y=>y===""?h:[h,y].join("/"))),f&&b.push(...m),b.map(y=>u.startsWith("/")&&y===""?"/":y)}function Z0(u){u.sort((i,c)=>i.score!==c.score?c.score-i.score:ev(i.routesMeta.map(r=>r.childrenIndex),c.routesMeta.map(r=>r.childrenIndex)))}var K0=/^:[\w-]+$/,J0=3,$0=2,W0=1,F0=10,P0=-2,am=u=>u==="*";function I0(u,i){let c=u.split("/"),r=c.length;return c.some(am)&&(r+=P0),i&&(r+=$0),c.filter(f=>!am(f)).reduce((f,h)=>f+(K0.test(h)?J0:h===""?W0:F0),r)}function ev(u,i){return u.length===i.length&&u.slice(0,-1).every((r,f)=>r===i[f])?u[u.length-1]-i[i.length-1]:0}function tv(u,i,c=!1){let{routesMeta:r}=u,f={},h="/",m=[];for(let b=0;b{if(T==="*"){let H=b[C]||"";m=h.slice(0,h.length-H.length).replace(/(.)\/+$/,"$1")}const z=b[C];return S&&!z?v[T]=void 0:v[T]=(z||"").replace(/%2F/g,"/"),v},{}),pathname:h,pathnameBase:m,pattern:u}}function nv(u,i=!1,c=!0){jt(u==="*"||!u.endsWith("*")||u.endsWith("/*"),`Route path "${u}" will be treated as if it were "${u.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${u.replace(/\*$/,"/*")}".`);let r=[],f="^"+u.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(m,b,y)=>(r.push({paramName:b,isOptional:y!=null}),y?"/?([^\\/]+)?":"/([^\\/]+)")).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return u.endsWith("*")?(r.push({paramName:"*"}),f+=u==="*"||u==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):c?f+="\\/*$":u!==""&&u!=="/"&&(f+="(?:(?=\\/|$))"),[new RegExp(f,i?void 0:"i"),r]}function lv(u){try{return u.split("/").map(i=>decodeURIComponent(i).replace(/\//g,"%2F")).join("/")}catch(i){return jt(!1,`The URL path "${u}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${i}).`),u}}function rn(u,i){if(i==="/")return u;if(!u.toLowerCase().startsWith(i.toLowerCase()))return null;let c=i.endsWith("/")?i.length-1:i.length,r=u.charAt(c);return r&&r!=="/"?null:u.slice(c)||"/"}var av=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,iv=u=>av.test(u);function uv(u,i="/"){let{pathname:c,search:r="",hash:f=""}=typeof u=="string"?Ql(u):u,h;if(c)if(iv(c))h=c;else{if(c.includes("//")){let m=c;c=c.replace(/\/\/+/g,"/"),jt(!1,`Pathnames cannot have embedded double slashes - normalizing ${m} -> ${c}`)}c.startsWith("/")?h=im(c.substring(1),"/"):h=im(c,i)}else h=i;return{pathname:h,search:rv(r),hash:ov(f)}}function im(u,i){let c=i.replace(/\/+$/,"").split("/");return u.split("/").forEach(f=>{f===".."?c.length>1&&c.pop():f!=="."&&c.push(f)}),c.length>1?c.join("/"):"/"}function rr(u,i,c,r){return`Cannot include a '${u}' character in a manually specified \`to.${i}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${c}\` field. Alternatively you may provide the full path as a string in and the router will parse it for you.`}function sv(u){return u.filter((i,c)=>c===0||i.route.path&&i.route.path.length>0)}function Am(u){let i=sv(u);return i.map((c,r)=>r===i.length-1?c.pathname:c.pathnameBase)}function Cm(u,i,c,r=!1){let f;typeof u=="string"?f=Ql(u):(f={...u},Oe(!f.pathname||!f.pathname.includes("?"),rr("?","pathname","search",f)),Oe(!f.pathname||!f.pathname.includes("#"),rr("#","pathname","hash",f)),Oe(!f.search||!f.search.includes("#"),rr("#","search","hash",f)));let h=u===""||f.pathname==="",m=h?"/":f.pathname,b;if(m==null)b=c;else{let S=i.length-1;if(!r&&m.startsWith("..")){let C=m.split("/");for(;C[0]==="..";)C.shift(),S-=1;f.pathname=C.join("/")}b=S>=0?i[S]:"/"}let y=uv(f,b),v=m&&m!=="/"&&m.endsWith("/"),T=(h||m===".")&&c.endsWith("/");return!y.pathname.endsWith("/")&&(v||T)&&(y.pathname+="/"),y}var cn=u=>u.join("/").replace(/\/\/+/g,"/"),cv=u=>u.replace(/\/+$/,"").replace(/^\/*/,"/"),rv=u=>!u||u==="?"?"":u.startsWith("?")?u:"?"+u,ov=u=>!u||u==="#"?"":u.startsWith("#")?u:"#"+u;function fv(u){return u!=null&&typeof u.status=="number"&&typeof u.statusText=="string"&&typeof u.internal=="boolean"&&"data"in u}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var Rm=["POST","PUT","PATCH","DELETE"];new Set(Rm);var hv=["GET",...Rm];new Set(hv);var Zl=E.createContext(null);Zl.displayName="DataRouter";var Du=E.createContext(null);Du.displayName="DataRouterState";E.createContext(!1);var Nm=E.createContext({isTransitioning:!1});Nm.displayName="ViewTransition";var dv=E.createContext(new Map);dv.displayName="Fetchers";var mv=E.createContext(null);mv.displayName="Await";var Yt=E.createContext(null);Yt.displayName="Navigation";var Fa=E.createContext(null);Fa.displayName="Location";var on=E.createContext({outlet:null,matches:[],isDataRoute:!1});on.displayName="Route";var Ar=E.createContext(null);Ar.displayName="RouteError";function pv(u,{relative:i}={}){Oe(Pa(),"useHref() may be used only in the context of a component.");let{basename:c,navigator:r}=E.useContext(Yt),{hash:f,pathname:h,search:m}=Ia(u,{relative:i}),b=h;return c!=="/"&&(b=h==="/"?c:cn([c,h])),r.createHref({pathname:b,search:m,hash:f})}function Pa(){return E.useContext(Fa)!=null}function il(){return Oe(Pa(),"useLocation() may be used only in the context of a component."),E.useContext(Fa).location}var Om="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function zm(u){E.useContext(Yt).static||E.useLayoutEffect(u)}function yv(){let{isDataRoute:u}=E.useContext(on);return u?Ov():vv()}function vv(){Oe(Pa(),"useNavigate() may be used only in the context of a component.");let u=E.useContext(Zl),{basename:i,navigator:c}=E.useContext(Yt),{matches:r}=E.useContext(on),{pathname:f}=il(),h=JSON.stringify(Am(r)),m=E.useRef(!1);return zm(()=>{m.current=!0}),E.useCallback((y,v={})=>{if(jt(m.current,Om),!m.current)return;if(typeof y=="number"){c.go(y);return}let T=Cm(y,JSON.parse(h),f,v.relative==="path");u==null&&i!=="/"&&(T.pathname=T.pathname==="/"?i:cn([i,T.pathname])),(v.replace?c.replace:c.push)(T,v.state,v)},[i,c,h,f,u])}E.createContext(null);function Ia(u,{relative:i}={}){let{matches:c}=E.useContext(on),{pathname:r}=il(),f=JSON.stringify(Am(c));return E.useMemo(()=>Cm(u,JSON.parse(f),r,i==="path"),[u,f,r,i])}function gv(u,i){return Mm(u,i)}function Mm(u,i,c,r,f){Oe(Pa(),"useRoutes() may be used only in the context of a component.");let{navigator:h}=E.useContext(Yt),{matches:m}=E.useContext(on),b=m[m.length-1],y=b?b.params:{},v=b?b.pathname:"/",T=b?b.pathnameBase:"/",S=b&&b.route;{let q=S&&S.path||"";Dm(v,!S||q.endsWith("*")||q.endsWith("*?"),`You rendered descendant (or called \`useRoutes()\`) at "${v}" (under ) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render. -Please change the parent to .`)}let C=il(),z;if(i){let q=typeof i=="string"?Ql(i):i;Oe(T==="/"||q.pathname?.startsWith(T),`When overriding the location using \`\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${T}" but pathname "${q.pathname}" was given in the \`location\` prop.`),z=q}else z=C;let H=z.pathname||"/",k=H;if(T!=="/"){let q=T.replace(/^\//,"").split("/");k="/"+H.replace(/^\//,"").split("/").slice(q.length).join("/")}let Y=xm(u,{pathname:k});jt(S||Y!=null,`No routes matched location "${z.pathname}${z.search}${z.hash}" `),jt(Y==null||Y[Y.length-1].route.element!==void 0||Y[Y.length-1].route.Component!==void 0||Y[Y.length-1].route.lazy!==void 0,`Matched leaf route at location "${z.pathname}${z.search}${z.hash}" does not have an element or Component. This means it will render an with a null value by default resulting in an "empty" page.`);let L=_v(Y&&Y.map(q=>Object.assign({},q,{params:Object.assign({},p,q.params),pathname:cn([T,d.encodeLocation?d.encodeLocation(q.pathname.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:q.pathname]),pathnameBase:q.pathnameBase==="/"?T:cn([T,d.encodeLocation?d.encodeLocation(q.pathnameBase.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:q.pathnameBase])})),m,c,r,f);return i&&L?E.createElement(Fa.Provider,{value:{location:{pathname:"/",search:"",hash:"",state:null,key:"default",...z},navigationType:"POP"}},L):L}function gv(){let u=Rv(),i=ov(u)?`${u.status} ${u.statusText}`:u instanceof Error?u.message:JSON.stringify(u),c=u instanceof Error?u.stack:null,r="rgba(200,200,200, 0.5)",f={padding:"0.5rem",backgroundColor:r},d={padding:"2px 4px",backgroundColor:r},m=null;return console.error("Error handled by React Router default ErrorBoundary:",u),m=E.createElement(E.Fragment,null,E.createElement("p",null,"💿 Hey developer 👋"),E.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",E.createElement("code",{style:d},"ErrorBoundary")," or"," ",E.createElement("code",{style:d},"errorElement")," prop on your route.")),E.createElement(E.Fragment,null,E.createElement("h2",null,"Unexpected Application Error!"),E.createElement("h3",{style:{fontStyle:"italic"}},i),c?E.createElement("pre",{style:f},c):null,m)}var bv=E.createElement(gv,null),Sv=class extends E.Component{constructor(u){super(u),this.state={location:u.location,revalidation:u.revalidation,error:u.error}}static getDerivedStateFromError(u){return{error:u}}static getDerivedStateFromProps(u,i){return i.location!==u.location||i.revalidation!=="idle"&&u.revalidation==="idle"?{error:u.error,location:u.location,revalidation:u.revalidation}:{error:u.error!==void 0?u.error:i.error,location:i.location,revalidation:u.revalidation||i.revalidation}}componentDidCatch(u,i){this.props.onError?this.props.onError(u,i):console.error("React Router caught the following error during render",u)}render(){return this.state.error!==void 0?E.createElement(on.Provider,{value:this.props.routeContext},E.createElement(Tr.Provider,{value:this.state.error,children:this.props.component})):this.props.children}};function xv({routeContext:u,match:i,children:c}){let r=E.useContext(Zl);return r&&r.static&&r.staticContext&&(i.route.errorElement||i.route.ErrorBoundary)&&(r.staticContext._deepestRenderedBoundaryId=i.route.id),E.createElement(on.Provider,{value:u},c)}function _v(u,i=[],c=null,r=null,f=null){if(u==null){if(!c)return null;if(c.errors)u=c.matches;else if(i.length===0&&!c.initialized&&c.matches.length>0)u=c.matches;else return null}let d=u,m=c?.errors;if(m!=null){let T=d.findIndex(S=>S.route.id&&m?.[S.route.id]!==void 0);Oe(T>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(m).join(",")}`),d=d.slice(0,Math.min(d.length,T+1))}let b=!1,p=-1;if(c)for(let T=0;T=0?d=d.slice(0,p+1):d=[d[0]];break}}}let v=c&&r?(T,S)=>{r(T,{location:c.location,params:c.matches?.[0]?.params??{},errorInfo:S})}:void 0;return d.reduceRight((T,S,C)=>{let z,H=!1,k=null,Y=null;c&&(z=m&&S.route.id?m[S.route.id]:void 0,k=S.route.errorElement||bv,b&&(p<0&&C===0?(Mm("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),H=!0,Y=null):p===C&&(H=!0,Y=S.route.hydrateFallbackElement||null)));let L=i.concat(d.slice(0,C+1)),q=()=>{let Q;return z?Q=k:H?Q=Y:S.route.Component?Q=E.createElement(S.route.Component,null):S.route.element?Q=S.route.element:Q=T,E.createElement(xv,{match:S,routeContext:{outlet:T,matches:L,isDataRoute:c!=null},children:Q})};return c&&(S.route.ErrorBoundary||S.route.errorElement||C===0)?E.createElement(Sv,{location:c.location,revalidation:c.revalidation,component:k,error:z,children:q(),routeContext:{outlet:null,matches:L,isDataRoute:!0},onError:v}):q()},null)}function Ar(u){return`${u} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function Ev(u){let i=E.useContext(Zl);return Oe(i,Ar(u)),i}function Tv(u){let i=E.useContext(Mu);return Oe(i,Ar(u)),i}function Av(u){let i=E.useContext(on);return Oe(i,Ar(u)),i}function Cr(u){let i=Av(u),c=i.matches[i.matches.length-1];return Oe(c.route.id,`${u} can only be used on routes that contain a unique "id"`),c.route.id}function Cv(){return Cr("useRouteId")}function Rv(){let u=E.useContext(Tr),i=Tv("useRouteError"),c=Cr("useRouteError");return u!==void 0?u:i.errors?.[c]}function Nv(){let{router:u}=Ev("useNavigate"),i=Cr("useNavigate"),c=E.useRef(!1);return Om(()=>{c.current=!0}),E.useCallback(async(f,d={})=>{jt(c.current,Nm),c.current&&(typeof f=="number"?u.navigate(f):await u.navigate(f,{fromRouteId:i,...d}))},[u,i])}var im={};function Mm(u,i,c){!i&&!im[u]&&(im[u]=!0,jt(!1,c))}E.memo(Ov);function Ov({routes:u,future:i,state:c,unstable_onError:r}){return zm(u,void 0,c,r,i)}function yr(u){Oe(!1,"A is only ever to be used as the child of element, never rendered directly. Please wrap your in a .")}function zv({basename:u="/",children:i=null,location:c,navigationType:r="POP",navigator:f,static:d=!1}){Oe(!Pa(),"You cannot render a inside another . You should never have more than one in your app.");let m=u.replace(/^\/*/,"/"),b=E.useMemo(()=>({basename:m,navigator:f,static:d,future:{}}),[m,f,d]);typeof c=="string"&&(c=Ql(c));let{pathname:p="/",search:v="",hash:T="",state:S=null,key:C="default"}=c,z=E.useMemo(()=>{let H=rn(p,m);return H==null?null:{location:{pathname:H,search:v,hash:T,state:S,key:C},navigationType:r}},[m,p,v,T,S,C,r]);return jt(z!=null,` is not able to match the URL "${p}${v}${T}" because it does not start with the basename, so the won't render anything.`),z==null?null:E.createElement(Yt.Provider,{value:b},E.createElement(Fa.Provider,{children:i,value:z}))}function Mv({children:u,location:i}){return vv(vr(u),i)}function vr(u,i=[]){let c=[];return E.Children.forEach(u,(r,f)=>{if(!E.isValidElement(r))return;let d=[...i,f];if(r.type===E.Fragment){c.push.apply(c,vr(r.props.children,d));return}Oe(r.type===yr,`[${typeof r.type=="string"?r.type:r.type.name}] is not a component. All component children of must be a or `),Oe(!r.props.index||!r.props.children,"An index route cannot have child routes.");let m={id:r.props.id||d.join("-"),caseSensitive:r.props.caseSensitive,element:r.props.element,Component:r.props.Component,index:r.props.index,path:r.props.path,middleware:r.props.middleware,loader:r.props.loader,action:r.props.action,hydrateFallbackElement:r.props.hydrateFallbackElement,HydrateFallback:r.props.HydrateFallback,errorElement:r.props.errorElement,ErrorBoundary:r.props.ErrorBoundary,hasErrorBoundary:r.props.hasErrorBoundary===!0||r.props.ErrorBoundary!=null||r.props.errorElement!=null,shouldRevalidate:r.props.shouldRevalidate,handle:r.props.handle,lazy:r.props.lazy};r.props.children&&(m.children=vr(r.props.children,d)),c.push(m)}),c}var Eu="get",Tu="application/x-www-form-urlencoded";function Du(u){return u!=null&&typeof u.tagName=="string"}function Dv(u){return Du(u)&&u.tagName.toLowerCase()==="button"}function jv(u){return Du(u)&&u.tagName.toLowerCase()==="form"}function wv(u){return Du(u)&&u.tagName.toLowerCase()==="input"}function Uv(u){return!!(u.metaKey||u.altKey||u.ctrlKey||u.shiftKey)}function Bv(u,i){return u.button===0&&(!i||i==="_self")&&!Uv(u)}var bu=null;function Lv(){if(bu===null)try{new FormData(document.createElement("form"),0),bu=!1}catch{bu=!0}return bu}var Hv=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function rr(u){return u!=null&&!Hv.has(u)?(jt(!1,`"${u}" is not a valid \`encType\` for \`\`/\`\` and will default to "${Tu}"`),null):u}function qv(u,i){let c,r,f,d,m;if(jv(u)){let b=u.getAttribute("action");r=b?rn(b,i):null,c=u.getAttribute("method")||Eu,f=rr(u.getAttribute("enctype"))||Tu,d=new FormData(u)}else if(Dv(u)||wv(u)&&(u.type==="submit"||u.type==="image")){let b=u.form;if(b==null)throw new Error('Cannot submit a
{!roverId ? (

Assign a rover to view sensors.

@@ -52,23 +61,21 @@ export default function TelemetryPanel() {

Waiting for sensor frames…

) : ( <> - -
+
- - + +
-
+
- )} @@ -131,10 +138,6 @@ function CliffBar({ value }) { function Metric({ label, value }) { return ( - //
- // {label} - // {value} - //
{label}: {value}
From d26587140d580e0030fbf073c7e936e21a641b8d Mon Sep 17 00:00:00 2001 From: legop3 Date: Mon, 17 Nov 2025 04:35:16 -0500 Subject: [PATCH 57/61] guh --- .../assets/{index-C8plXa0F.js => index-CCsZswS4.js} | 12 ++++++------ server/public/assets/index-DEkIseQD.css | 1 - server/public/assets/index-WcSVLUbr.css | 1 + server/public/index.html | 4 ++-- webui/src/App.jsx | 3 ++- webui/src/components/SessionSnapshot.jsx | 13 +++++++++++++ 6 files changed, 24 insertions(+), 10 deletions(-) rename server/public/assets/{index-C8plXa0F.js => index-CCsZswS4.js} (80%) delete mode 100644 server/public/assets/index-DEkIseQD.css create mode 100644 server/public/assets/index-WcSVLUbr.css create mode 100644 webui/src/components/SessionSnapshot.jsx diff --git a/server/public/assets/index-C8plXa0F.js b/server/public/assets/index-CCsZswS4.js similarity index 80% rename from server/public/assets/index-C8plXa0F.js rename to server/public/assets/index-CCsZswS4.js index 0e9d321f..bc45080b 100644 --- a/server/public/assets/index-C8plXa0F.js +++ b/server/public/assets/index-CCsZswS4.js @@ -1,11 +1,11 @@ -(function(){const i=document.createElement("link").relList;if(i&&i.supports&&i.supports("modulepreload"))return;for(const f of document.querySelectorAll('link[rel="modulepreload"]'))r(f);new MutationObserver(f=>{for(const h of f)if(h.type==="childList")for(const m of h.addedNodes)m.tagName==="LINK"&&m.rel==="modulepreload"&&r(m)}).observe(document,{childList:!0,subtree:!0});function c(f){const h={};return f.integrity&&(h.integrity=f.integrity),f.referrerPolicy&&(h.referrerPolicy=f.referrerPolicy),f.crossOrigin==="use-credentials"?h.credentials="include":f.crossOrigin==="anonymous"?h.credentials="omit":h.credentials="same-origin",h}function r(f){if(f.ep)return;f.ep=!0;const h=c(f);fetch(f.href,h)}})();var lr={exports:{}},Ga={};var Zd;function M0(){if(Zd)return Ga;Zd=1;var u=Symbol.for("react.transitional.element"),i=Symbol.for("react.fragment");function c(r,f,h){var m=null;if(h!==void 0&&(m=""+h),f.key!==void 0&&(m=""+f.key),"key"in f){h={};for(var b in f)b!=="key"&&(h[b]=f[b])}else h=f;return f=h.ref,{$$typeof:u,type:r,key:m,ref:f!==void 0?f:null,props:h}}return Ga.Fragment=i,Ga.jsx=c,Ga.jsxs=c,Ga}var Kd;function D0(){return Kd||(Kd=1,lr.exports=M0()),lr.exports}var p=D0(),ar={exports:{}},I={};var Jd;function j0(){if(Jd)return I;Jd=1;var u=Symbol.for("react.transitional.element"),i=Symbol.for("react.portal"),c=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),f=Symbol.for("react.profiler"),h=Symbol.for("react.consumer"),m=Symbol.for("react.context"),b=Symbol.for("react.forward_ref"),y=Symbol.for("react.suspense"),v=Symbol.for("react.memo"),T=Symbol.for("react.lazy"),S=Symbol.for("react.activity"),C=Symbol.iterator;function z(_){return _===null||typeof _!="object"?null:(_=C&&_[C]||_["@@iterator"],typeof _=="function"?_:null)}var L={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},X=Object.assign,q={};function H(_,B,V){this.props=_,this.context=B,this.refs=q,this.updater=V||L}H.prototype.isReactComponent={},H.prototype.setState=function(_,B){if(typeof _!="object"&&typeof _!="function"&&_!=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,_,B,"setState")},H.prototype.forceUpdate=function(_){this.updater.enqueueForceUpdate(this,_,"forceUpdate")};function Y(){}Y.prototype=H.prototype;function k(_,B,V){this.props=_,this.context=B,this.refs=q,this.updater=V||L}var F=k.prototype=new Y;F.constructor=k,X(F,H.prototype),F.isPureReactComponent=!0;var ye=Array.isArray;function Re(){}var $={H:null,A:null,T:null,S:null},Te=Object.prototype.hasOwnProperty;function xe(_,B,V){var Z=V.ref;return{$$typeof:u,type:_,key:B,ref:Z!==void 0?Z:null,props:V}}function Ue(_,B){return xe(_.type,B,_.props)}function Xe(_){return typeof _=="object"&&_!==null&&_.$$typeof===u}function We(_){var B={"=":"=0",":":"=2"};return"$"+_.replace(/[=:]/g,function(V){return B[V]})}var Hn=/\/+/g;function kt(_,B){return typeof _=="object"&&_!==null&&_.key!=null?We(""+_.key):B.toString(36)}function Nt(_){switch(_.status){case"fulfilled":return _.value;case"rejected":throw _.reason;default:switch(typeof _.status=="string"?_.then(Re,Re):(_.status="pending",_.then(function(B){_.status==="pending"&&(_.status="fulfilled",_.value=B)},function(B){_.status==="pending"&&(_.status="rejected",_.reason=B)})),_.status){case"fulfilled":return _.value;case"rejected":throw _.reason}}throw _}function j(_,B,V,Z,ee){var le=typeof _;(le==="undefined"||le==="boolean")&&(_=null);var de=!1;if(_===null)de=!0;else switch(le){case"bigint":case"string":case"number":de=!0;break;case"object":switch(_.$$typeof){case u:case i:de=!0;break;case T:return de=_._init,j(de(_._payload),B,V,Z,ee)}}if(de)return ee=ee(_),de=Z===""?"."+kt(_,0):Z,ye(ee)?(V="",de!=null&&(V=de.replace(Hn,"$&/")+"/"),j(ee,B,V,"",function(Wl){return Wl})):ee!=null&&(Xe(ee)&&(ee=Ue(ee,V+(ee.key==null||_&&_.key===ee.key?"":(""+ee.key).replace(Hn,"$&/")+"/")+de)),B.push(ee)),1;de=0;var Pe=Z===""?".":Z+":";if(ye(_))for(var De=0;De<_.length;De++)Z=_[De],le=Pe+kt(Z,De),de+=j(Z,B,V,le,ee);else if(De=z(_),typeof De=="function")for(_=De.call(_),De=0;!(Z=_.next()).done;)Z=Z.value,le=Pe+kt(Z,De++),de+=j(Z,B,V,le,ee);else if(le==="object"){if(typeof _.then=="function")return j(Nt(_),B,V,Z,ee);throw B=String(_),Error("Objects are not valid as a React child (found: "+(B==="[object Object]"?"object with keys {"+Object.keys(_).join(", ")+"}":B)+"). If you meant to render a collection of children, use an array instead.")}return de}function G(_,B,V){if(_==null)return _;var Z=[],ee=0;return j(_,Z,"","",function(le){return B.call(V,le,ee++)}),Z}function P(_){if(_._status===-1){var B=_._result;B=B(),B.then(function(V){(_._status===0||_._status===-1)&&(_._status=1,_._result=V)},function(V){(_._status===0||_._status===-1)&&(_._status=2,_._result=V)}),_._status===-1&&(_._status=0,_._result=B)}if(_._status===1)return _._result.default;throw _._result}var ve=typeof reportError=="function"?reportError:function(_){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var B=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof _=="object"&&_!==null&&typeof _.message=="string"?String(_.message):String(_),error:_});if(!window.dispatchEvent(B))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",_);return}console.error(_)},_e={map:G,forEach:function(_,B,V){G(_,function(){B.apply(this,arguments)},V)},count:function(_){var B=0;return G(_,function(){B++}),B},toArray:function(_){return G(_,function(B){return B})||[]},only:function(_){if(!Xe(_))throw Error("React.Children.only expected to receive a single React element child.");return _}};return I.Activity=S,I.Children=_e,I.Component=H,I.Fragment=c,I.Profiler=f,I.PureComponent=k,I.StrictMode=r,I.Suspense=y,I.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=$,I.__COMPILER_RUNTIME={__proto__:null,c:function(_){return $.H.useMemoCache(_)}},I.cache=function(_){return function(){return _.apply(null,arguments)}},I.cacheSignal=function(){return null},I.cloneElement=function(_,B,V){if(_==null)throw Error("The argument must be a React element, but you passed "+_+".");var Z=X({},_.props),ee=_.key;if(B!=null)for(le in B.key!==void 0&&(ee=""+B.key),B)!Te.call(B,le)||le==="key"||le==="__self"||le==="__source"||le==="ref"&&B.ref===void 0||(Z[le]=B[le]);var le=arguments.length-2;if(le===1)Z.children=V;else if(1>>1,_e=j[ve];if(0>>1;ve<_;){var B=2*(ve+1)-1,V=j[B],Z=B+1,ee=j[Z];if(0>f(V,P))Z<_e&&0>f(ee,V)?(j[ve]=ee,j[Z]=P,ve=Z):(j[ve]=V,j[B]=P,ve=B);else if(Z<_e&&0>f(ee,P))j[ve]=ee,j[Z]=P,ve=Z;else break e}}return G}function f(j,G){var P=j.sortIndex-G.sortIndex;return P!==0?P:j.id-G.id}if(u.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var h=performance;u.unstable_now=function(){return h.now()}}else{var m=Date,b=m.now();u.unstable_now=function(){return m.now()-b}}var y=[],v=[],T=1,S=null,C=3,z=!1,L=!1,X=!1,q=!1,H=typeof setTimeout=="function"?setTimeout:null,Y=typeof clearTimeout=="function"?clearTimeout:null,k=typeof setImmediate<"u"?setImmediate:null;function F(j){for(var G=c(v);G!==null;){if(G.callback===null)r(v);else if(G.startTime<=j)r(v),G.sortIndex=G.expirationTime,i(y,G);else break;G=c(v)}}function ye(j){if(X=!1,F(j),!L)if(c(y)!==null)L=!0,Re||(Re=!0,We());else{var G=c(v);G!==null&&Nt(ye,G.startTime-j)}}var Re=!1,$=-1,Te=5,xe=-1;function Ue(){return q?!0:!(u.unstable_now()-xej&&Ue());){var ve=S.callback;if(typeof ve=="function"){S.callback=null,C=S.priorityLevel;var _e=ve(S.expirationTime<=j);if(j=u.unstable_now(),typeof _e=="function"){S.callback=_e,F(j),G=!0;break t}S===c(y)&&r(y),F(j)}else r(y);S=c(y)}if(S!==null)G=!0;else{var _=c(v);_!==null&&Nt(ye,_.startTime-j),G=!1}}break e}finally{S=null,C=P,z=!1}G=void 0}}finally{G?We():Re=!1}}}var We;if(typeof k=="function")We=function(){k(Xe)};else if(typeof MessageChannel<"u"){var Hn=new MessageChannel,kt=Hn.port2;Hn.port1.onmessage=Xe,We=function(){kt.postMessage(null)}}else We=function(){H(Xe,0)};function Nt(j,G){$=H(function(){j(u.unstable_now())},G)}u.unstable_IdlePriority=5,u.unstable_ImmediatePriority=1,u.unstable_LowPriority=4,u.unstable_NormalPriority=3,u.unstable_Profiling=null,u.unstable_UserBlockingPriority=2,u.unstable_cancelCallback=function(j){j.callback=null},u.unstable_forceFrameRate=function(j){0>j||125ve?(j.sortIndex=P,i(v,j),c(y)===null&&j===c(v)&&(X?(Y($),$=-1):X=!0,Nt(ye,P-ve))):(j.sortIndex=_e,i(y,j),L||z||(L=!0,Re||(Re=!0,We()))),j},u.unstable_shouldYield=Ue,u.unstable_wrapCallback=function(j){var G=C;return function(){var P=C;C=G;try{return j.apply(this,arguments)}finally{C=P}}}})(sr)),sr}var Fd;function U0(){return Fd||(Fd=1,ur.exports=w0()),ur.exports}var cr={exports:{}},Fe={};var Pd;function B0(){if(Pd)return Fe;Pd=1;var u=Mu();function i(y){var v="https://react.dev/errors/"+y;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(u)}catch(i){console.error(i)}}return u(),cr.exports=B0(),cr.exports}var em;function H0(){if(em)return Va;em=1;var u=U0(),i=Mu(),c=L0();function r(e){var t="https://react.dev/errors/"+e;if(1_e||(e.current=ve[_e],ve[_e]=null,_e--)}function V(e,t){_e++,ve[_e]=e.current,e.current=t}var Z=_(null),ee=_(null),le=_(null),de=_(null);function Pe(e,t){switch(V(le,t),V(ee,e),V(Z,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?pd(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=pd(t),e=yd(t,e);else switch(e){case"svg":e=1;break;case"math":e=2;break;default:e=0}}B(Z),V(Z,e)}function De(){B(Z),B(ee),B(le)}function Wl(e){e.memoizedState!==null&&V(de,e);var t=Z.current,n=yd(t,e.type);t!==n&&(V(ee,e),V(Z,n))}function ti(e){ee.current===e&&(B(Z),B(ee)),de.current===e&&(B(de),qa._currentValue=P)}var qu,Gr;function qn(e){if(qu===void 0)try{throw Error()}catch(n){var t=n.stack.trim().match(/\n( *(at )?)/);qu=t&&t[1]||"",Gr=-1{for(const h of f)if(h.type==="childList")for(const m of h.addedNodes)m.tagName==="LINK"&&m.rel==="modulepreload"&&r(m)}).observe(document,{childList:!0,subtree:!0});function c(f){const h={};return f.integrity&&(h.integrity=f.integrity),f.referrerPolicy&&(h.referrerPolicy=f.referrerPolicy),f.crossOrigin==="use-credentials"?h.credentials="include":f.crossOrigin==="anonymous"?h.credentials="omit":h.credentials="same-origin",h}function r(f){if(f.ep)return;f.ep=!0;const h=c(f);fetch(f.href,h)}})();var lr={exports:{}},Ga={};var Qd;function M0(){if(Qd)return Ga;Qd=1;var u=Symbol.for("react.transitional.element"),i=Symbol.for("react.fragment");function c(r,f,h){var m=null;if(h!==void 0&&(m=""+h),f.key!==void 0&&(m=""+f.key),"key"in f){h={};for(var b in f)b!=="key"&&(h[b]=f[b])}else h=f;return f=h.ref,{$$typeof:u,type:r,key:m,ref:f!==void 0?f:null,props:h}}return Ga.Fragment=i,Ga.jsx=c,Ga.jsxs=c,Ga}var Zd;function D0(){return Zd||(Zd=1,lr.exports=M0()),lr.exports}var p=D0(),ar={exports:{}},I={};var Kd;function j0(){if(Kd)return I;Kd=1;var u=Symbol.for("react.transitional.element"),i=Symbol.for("react.portal"),c=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),f=Symbol.for("react.profiler"),h=Symbol.for("react.consumer"),m=Symbol.for("react.context"),b=Symbol.for("react.forward_ref"),y=Symbol.for("react.suspense"),v=Symbol.for("react.memo"),T=Symbol.for("react.lazy"),S=Symbol.for("react.activity"),C=Symbol.iterator;function z(_){return _===null||typeof _!="object"?null:(_=C&&_[C]||_["@@iterator"],typeof _=="function"?_:null)}var L={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},X=Object.assign,q={};function H(_,B,V){this.props=_,this.context=B,this.refs=q,this.updater=V||L}H.prototype.isReactComponent={},H.prototype.setState=function(_,B){if(typeof _!="object"&&typeof _!="function"&&_!=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,_,B,"setState")},H.prototype.forceUpdate=function(_){this.updater.enqueueForceUpdate(this,_,"forceUpdate")};function Y(){}Y.prototype=H.prototype;function k(_,B,V){this.props=_,this.context=B,this.refs=q,this.updater=V||L}var F=k.prototype=new Y;F.constructor=k,X(F,H.prototype),F.isPureReactComponent=!0;var ye=Array.isArray;function Re(){}var $={H:null,A:null,T:null,S:null},Te=Object.prototype.hasOwnProperty;function xe(_,B,V){var Z=V.ref;return{$$typeof:u,type:_,key:B,ref:Z!==void 0?Z:null,props:V}}function Ue(_,B){return xe(_.type,B,_.props)}function Xe(_){return typeof _=="object"&&_!==null&&_.$$typeof===u}function We(_){var B={"=":"=0",":":"=2"};return"$"+_.replace(/[=:]/g,function(V){return B[V]})}var Hn=/\/+/g;function Xt(_,B){return typeof _=="object"&&_!==null&&_.key!=null?We(""+_.key):B.toString(36)}function Nt(_){switch(_.status){case"fulfilled":return _.value;case"rejected":throw _.reason;default:switch(typeof _.status=="string"?_.then(Re,Re):(_.status="pending",_.then(function(B){_.status==="pending"&&(_.status="fulfilled",_.value=B)},function(B){_.status==="pending"&&(_.status="rejected",_.reason=B)})),_.status){case"fulfilled":return _.value;case"rejected":throw _.reason}}throw _}function j(_,B,V,Z,ee){var le=typeof _;(le==="undefined"||le==="boolean")&&(_=null);var de=!1;if(_===null)de=!0;else switch(le){case"bigint":case"string":case"number":de=!0;break;case"object":switch(_.$$typeof){case u:case i:de=!0;break;case T:return de=_._init,j(de(_._payload),B,V,Z,ee)}}if(de)return ee=ee(_),de=Z===""?"."+Xt(_,0):Z,ye(ee)?(V="",de!=null&&(V=de.replace(Hn,"$&/")+"/"),j(ee,B,V,"",function(Wl){return Wl})):ee!=null&&(Xe(ee)&&(ee=Ue(ee,V+(ee.key==null||_&&_.key===ee.key?"":(""+ee.key).replace(Hn,"$&/")+"/")+de)),B.push(ee)),1;de=0;var Pe=Z===""?".":Z+":";if(ye(_))for(var De=0;De<_.length;De++)Z=_[De],le=Pe+Xt(Z,De),de+=j(Z,B,V,le,ee);else if(De=z(_),typeof De=="function")for(_=De.call(_),De=0;!(Z=_.next()).done;)Z=Z.value,le=Pe+Xt(Z,De++),de+=j(Z,B,V,le,ee);else if(le==="object"){if(typeof _.then=="function")return j(Nt(_),B,V,Z,ee);throw B=String(_),Error("Objects are not valid as a React child (found: "+(B==="[object Object]"?"object with keys {"+Object.keys(_).join(", ")+"}":B)+"). If you meant to render a collection of children, use an array instead.")}return de}function G(_,B,V){if(_==null)return _;var Z=[],ee=0;return j(_,Z,"","",function(le){return B.call(V,le,ee++)}),Z}function P(_){if(_._status===-1){var B=_._result;B=B(),B.then(function(V){(_._status===0||_._status===-1)&&(_._status=1,_._result=V)},function(V){(_._status===0||_._status===-1)&&(_._status=2,_._result=V)}),_._status===-1&&(_._status=0,_._result=B)}if(_._status===1)return _._result.default;throw _._result}var ve=typeof reportError=="function"?reportError:function(_){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var B=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof _=="object"&&_!==null&&typeof _.message=="string"?String(_.message):String(_),error:_});if(!window.dispatchEvent(B))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",_);return}console.error(_)},_e={map:G,forEach:function(_,B,V){G(_,function(){B.apply(this,arguments)},V)},count:function(_){var B=0;return G(_,function(){B++}),B},toArray:function(_){return G(_,function(B){return B})||[]},only:function(_){if(!Xe(_))throw Error("React.Children.only expected to receive a single React element child.");return _}};return I.Activity=S,I.Children=_e,I.Component=H,I.Fragment=c,I.Profiler=f,I.PureComponent=k,I.StrictMode=r,I.Suspense=y,I.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=$,I.__COMPILER_RUNTIME={__proto__:null,c:function(_){return $.H.useMemoCache(_)}},I.cache=function(_){return function(){return _.apply(null,arguments)}},I.cacheSignal=function(){return null},I.cloneElement=function(_,B,V){if(_==null)throw Error("The argument must be a React element, but you passed "+_+".");var Z=X({},_.props),ee=_.key;if(B!=null)for(le in B.key!==void 0&&(ee=""+B.key),B)!Te.call(B,le)||le==="key"||le==="__self"||le==="__source"||le==="ref"&&B.ref===void 0||(Z[le]=B[le]);var le=arguments.length-2;if(le===1)Z.children=V;else if(1>>1,_e=j[ve];if(0>>1;ve<_;){var B=2*(ve+1)-1,V=j[B],Z=B+1,ee=j[Z];if(0>f(V,P))Z<_e&&0>f(ee,V)?(j[ve]=ee,j[Z]=P,ve=Z):(j[ve]=V,j[B]=P,ve=B);else if(Z<_e&&0>f(ee,P))j[ve]=ee,j[Z]=P,ve=Z;else break e}}return G}function f(j,G){var P=j.sortIndex-G.sortIndex;return P!==0?P:j.id-G.id}if(u.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var h=performance;u.unstable_now=function(){return h.now()}}else{var m=Date,b=m.now();u.unstable_now=function(){return m.now()-b}}var y=[],v=[],T=1,S=null,C=3,z=!1,L=!1,X=!1,q=!1,H=typeof setTimeout=="function"?setTimeout:null,Y=typeof clearTimeout=="function"?clearTimeout:null,k=typeof setImmediate<"u"?setImmediate:null;function F(j){for(var G=c(v);G!==null;){if(G.callback===null)r(v);else if(G.startTime<=j)r(v),G.sortIndex=G.expirationTime,i(y,G);else break;G=c(v)}}function ye(j){if(X=!1,F(j),!L)if(c(y)!==null)L=!0,Re||(Re=!0,We());else{var G=c(v);G!==null&&Nt(ye,G.startTime-j)}}var Re=!1,$=-1,Te=5,xe=-1;function Ue(){return q?!0:!(u.unstable_now()-xej&&Ue());){var ve=S.callback;if(typeof ve=="function"){S.callback=null,C=S.priorityLevel;var _e=ve(S.expirationTime<=j);if(j=u.unstable_now(),typeof _e=="function"){S.callback=_e,F(j),G=!0;break t}S===c(y)&&r(y),F(j)}else r(y);S=c(y)}if(S!==null)G=!0;else{var _=c(v);_!==null&&Nt(ye,_.startTime-j),G=!1}}break e}finally{S=null,C=P,z=!1}G=void 0}}finally{G?We():Re=!1}}}var We;if(typeof k=="function")We=function(){k(Xe)};else if(typeof MessageChannel<"u"){var Hn=new MessageChannel,Xt=Hn.port2;Hn.port1.onmessage=Xe,We=function(){Xt.postMessage(null)}}else We=function(){H(Xe,0)};function Nt(j,G){$=H(function(){j(u.unstable_now())},G)}u.unstable_IdlePriority=5,u.unstable_ImmediatePriority=1,u.unstable_LowPriority=4,u.unstable_NormalPriority=3,u.unstable_Profiling=null,u.unstable_UserBlockingPriority=2,u.unstable_cancelCallback=function(j){j.callback=null},u.unstable_forceFrameRate=function(j){0>j||125ve?(j.sortIndex=P,i(v,j),c(y)===null&&j===c(v)&&(X?(Y($),$=-1):X=!0,Nt(ye,P-ve))):(j.sortIndex=_e,i(y,j),L||z||(L=!0,Re||(Re=!0,We()))),j},u.unstable_shouldYield=Ue,u.unstable_wrapCallback=function(j){var G=C;return function(){var P=C;C=G;try{return j.apply(this,arguments)}finally{C=P}}}})(sr)),sr}var Wd;function U0(){return Wd||(Wd=1,ur.exports=w0()),ur.exports}var cr={exports:{}},Fe={};var Fd;function B0(){if(Fd)return Fe;Fd=1;var u=Mu();function i(y){var v="https://react.dev/errors/"+y;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(u)}catch(i){console.error(i)}}return u(),cr.exports=B0(),cr.exports}var Id;function H0(){if(Id)return Va;Id=1;var u=U0(),i=Mu(),c=L0();function r(e){var t="https://react.dev/errors/"+e;if(1_e||(e.current=ve[_e],ve[_e]=null,_e--)}function V(e,t){_e++,ve[_e]=e.current,e.current=t}var Z=_(null),ee=_(null),le=_(null),de=_(null);function Pe(e,t){switch(V(le,t),V(ee,e),V(Z,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?md(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=md(t),e=pd(t,e);else switch(e){case"svg":e=1;break;case"math":e=2;break;default:e=0}}B(Z),V(Z,e)}function De(){B(Z),B(ee),B(le)}function Wl(e){e.memoizedState!==null&&V(de,e);var t=Z.current,n=pd(t,e.type);t!==n&&(V(ee,e),V(Z,n))}function ti(e){ee.current===e&&(B(Z),B(ee)),de.current===e&&(B(de),qa._currentValue=P)}var qu,Xr;function qn(e){if(qu===void 0)try{throw Error()}catch(n){var t=n.stack.trim().match(/\n( *(at )?)/);qu=t&&t[1]||"",Xr=-1)":-1a||g[l]!==N[a]){var D=` -`+g[l].replace(" at new "," at ");return e.displayName&&D.includes("")&&(D=D.replace("",e.displayName)),D}while(1<=l&&0<=a);break}}}finally{Yu=!1,Error.prepareStackTrace=n}return(n=e?e.displayName||e.name:"")?qn(n):""}function cp(e,t){switch(e.tag){case 26:case 27:case 5:return qn(e.type);case 16:return qn("Lazy");case 13:return e.child!==t&&t!==null?qn("Suspense Fallback"):qn("Suspense");case 19:return qn("SuspenseList");case 0:case 15:return ku(e.type,!1);case 11:return ku(e.type.render,!1);case 1:return ku(e.type,!0);case 31:return qn("Activity");default:return""}}function Vr(e){try{var t="",n=null;do t+=cp(e,n),n=e,e=e.return;while(e);return t}catch(l){return` +`+g[l].replace(" at new "," at ");return e.displayName&&D.includes("")&&(D=D.replace("",e.displayName)),D}while(1<=l&&0<=a);break}}}finally{Yu=!1,Error.prepareStackTrace=n}return(n=e?e.displayName||e.name:"")?qn(n):""}function cp(e,t){switch(e.tag){case 26:case 27:case 5:return qn(e.type);case 16:return qn("Lazy");case 13:return e.child!==t&&t!==null?qn("Suspense Fallback"):qn("Suspense");case 19:return qn("SuspenseList");case 0:case 15:return ku(e.type,!1);case 11:return ku(e.type.render,!1);case 1:return ku(e.type,!0);case 31:return qn("Activity");default:return""}}function Gr(e){try{var t="",n=null;do t+=cp(e,n),n=e,e=e.return;while(e);return t}catch(l){return` Error generating stack: `+l.message+` -`+l.stack}}var Xu=Object.prototype.hasOwnProperty,Gu=u.unstable_scheduleCallback,Vu=u.unstable_cancelCallback,rp=u.unstable_shouldYield,op=u.unstable_requestPaint,st=u.unstable_now,fp=u.unstable_getCurrentPriorityLevel,Qr=u.unstable_ImmediatePriority,Zr=u.unstable_UserBlockingPriority,ni=u.unstable_NormalPriority,hp=u.unstable_LowPriority,Kr=u.unstable_IdlePriority,dp=u.log,mp=u.unstable_setDisableYieldValue,Fl=null,ct=null;function hn(e){if(typeof dp=="function"&&mp(e),ct&&typeof ct.setStrictMode=="function")try{ct.setStrictMode(Fl,e)}catch{}}var rt=Math.clz32?Math.clz32:vp,pp=Math.log,yp=Math.LN2;function vp(e){return e>>>=0,e===0?32:31-(pp(e)/yp|0)|0}var li=256,ai=262144,ii=4194304;function Yn(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function ui(e,t,n){var l=e.pendingLanes;if(l===0)return 0;var a=0,s=e.suspendedLanes,o=e.pingedLanes;e=e.warmLanes;var d=l&134217727;return d!==0?(l=d&~s,l!==0?a=Yn(l):(o&=d,o!==0?a=Yn(o):n||(n=d&~e,n!==0&&(a=Yn(n))))):(d=l&~s,d!==0?a=Yn(d):o!==0?a=Yn(o):n||(n=l&~e,n!==0&&(a=Yn(n)))),a===0?0:t!==0&&t!==a&&(t&s)===0&&(s=a&-a,n=t&-t,s>=n||s===32&&(n&4194048)!==0)?t:a}function Pl(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function gp(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Jr(){var e=ii;return ii<<=1,(ii&62914560)===0&&(ii=4194304),e}function Qu(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function Il(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function bp(e,t,n,l,a,s){var o=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var d=e.entanglements,g=e.expirationTimes,N=e.hiddenUpdates;for(n=o&~n;0"u")return null;try{return e.activeElement||e.body}catch{return e.body}}var Ap=/[\n"\\]/g;function gt(e){return e.replace(Ap,function(t){return"\\"+t.charCodeAt(0).toString(16)+" "})}function Fu(e,t,n,l,a,s,o,d){e.name="",o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"?e.type=o:e.removeAttribute("type"),t!=null?o==="number"?(t===0&&e.value===""||e.value!=t)&&(e.value=""+vt(t)):e.value!==""+vt(t)&&(e.value=""+vt(t)):o!=="submit"&&o!=="reset"||e.removeAttribute("value"),t!=null?Pu(e,o,vt(t)):n!=null?Pu(e,o,vt(n)):l!=null&&e.removeAttribute("value"),a==null&&s!=null&&(e.defaultChecked=!!s),a!=null&&(e.checked=a&&typeof a!="function"&&typeof a!="symbol"),d!=null&&typeof d!="function"&&typeof d!="symbol"&&typeof d!="boolean"?e.name=""+vt(d):e.removeAttribute("name")}function so(e,t,n,l,a,s,o,d){if(s!=null&&typeof s!="function"&&typeof s!="symbol"&&typeof s!="boolean"&&(e.type=s),t!=null||n!=null){if(!(s!=="submit"&&s!=="reset"||t!=null)){Wu(e);return}n=n!=null?""+vt(n):"",t=t!=null?""+vt(t):n,d||t===e.value||(e.value=t),e.defaultValue=t}l=l??a,l=typeof l!="function"&&typeof l!="symbol"&&!!l,e.checked=d?e.checked:!!l,e.defaultChecked=!!l,o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"&&(e.name=o),Wu(e)}function Pu(e,t,n){t==="number"&&ri(e.ownerDocument)===e||e.defaultValue===""+n||(e.defaultValue=""+n)}function dl(e,t,n,l){if(e=e.options,t){t={};for(var a=0;a"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),ls=!1;if(Vt)try{var la={};Object.defineProperty(la,"passive",{get:function(){ls=!0}}),window.addEventListener("test",la,la),window.removeEventListener("test",la,la)}catch{ls=!1}var mn=null,as=null,fi=null;function po(){if(fi)return fi;var e,t=as,n=t.length,l,a="value"in mn?mn.value:mn.textContent,s=a.length;for(e=0;e=ua),xo=" ",_o=!1;function Eo(e,t){switch(e){case"keyup":return Ip.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function To(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var vl=!1;function ty(e,t){switch(e){case"compositionend":return To(t);case"keypress":return t.which!==32?null:(_o=!0,xo);case"textInput":return e=t.data,e===xo&&_o?null:e;default:return null}}function ny(e,t){if(vl)return e==="compositionend"||!rs&&Eo(e,t)?(e=po(),fi=as=mn=null,vl=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=l}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=Do(n)}}function wo(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?wo(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Uo(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=ri(e.document);t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=ri(e.document)}return t}function hs(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}var oy=Vt&&"documentMode"in document&&11>=document.documentMode,gl=null,ds=null,oa=null,ms=!1;function Bo(e,t,n){var l=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;ms||gl==null||gl!==ri(l)||(l=gl,"selectionStart"in l&&hs(l)?l={start:l.selectionStart,end:l.selectionEnd}:(l=(l.ownerDocument&&l.ownerDocument.defaultView||window).getSelection(),l={anchorNode:l.anchorNode,anchorOffset:l.anchorOffset,focusNode:l.focusNode,focusOffset:l.focusOffset}),oa&&ra(oa,l)||(oa=l,l=au(ds,"onSelect"),0>=o,a-=o,wt=1<<32-rt(t)+a|n<ne?(se=K,K=null):se=K.sibling;var fe=O(A,K,R[ne],w);if(fe===null){K===null&&(K=se);break}e&&K&&fe.alternate===null&&t(A,K),x=s(fe,x,ne),oe===null?J=fe:oe.sibling=fe,oe=fe,K=se}if(ne===R.length)return n(A,K),ce&&Zt(A,ne),J;if(K===null){for(;nene?(se=K,K=null):se=K.sibling;var Bn=O(A,K,fe.value,w);if(Bn===null){K===null&&(K=se);break}e&&K&&Bn.alternate===null&&t(A,K),x=s(Bn,x,ne),oe===null?J=Bn:oe.sibling=Bn,oe=Bn,K=se}if(fe.done)return n(A,K),ce&&Zt(A,ne),J;if(K===null){for(;!fe.done;ne++,fe=R.next())fe=U(A,fe.value,w),fe!==null&&(x=s(fe,x,ne),oe===null?J=fe:oe.sibling=fe,oe=fe);return ce&&Zt(A,ne),J}for(K=l(K);!fe.done;ne++,fe=R.next())fe=M(K,A,ne,fe.value,w),fe!==null&&(e&&fe.alternate!==null&&K.delete(fe.key===null?ne:fe.key),x=s(fe,x,ne),oe===null?J=fe:oe.sibling=fe,oe=fe);return e&&K.forEach(function(z0){return t(A,z0)}),ce&&Zt(A,ne),J}function Se(A,x,R,w){if(typeof R=="object"&&R!==null&&R.type===X&&R.key===null&&(R=R.props.children),typeof R=="object"&&R!==null){switch(R.$$typeof){case z:e:{for(var J=R.key;x!==null;){if(x.key===J){if(J=R.type,J===X){if(x.tag===7){n(A,x.sibling),w=a(x,R.props.children),w.return=A,A=w;break e}}else if(x.elementType===J||typeof J=="object"&&J!==null&&J.$$typeof===Te&&Fn(J)===x.type){n(A,x.sibling),w=a(x,R.props),ya(w,R),w.return=A,A=w;break e}n(A,x);break}else t(A,x);x=x.sibling}R.type===X?(w=Zn(R.props.children,A.mode,w,R.key),w.return=A,A=w):(w=xi(R.type,R.key,R.props,null,A.mode,w),ya(w,R),w.return=A,A=w)}return o(A);case L:e:{for(J=R.key;x!==null;){if(x.key===J)if(x.tag===4&&x.stateNode.containerInfo===R.containerInfo&&x.stateNode.implementation===R.implementation){n(A,x.sibling),w=a(x,R.children||[]),w.return=A,A=w;break e}else{n(A,x);break}else t(A,x);x=x.sibling}w=xs(R,A.mode,w),w.return=A,A=w}return o(A);case Te:return R=Fn(R),Se(A,x,R,w)}if(Nt(R))return Q(A,x,R,w);if(We(R)){if(J=We(R),typeof J!="function")throw Error(r(150));return R=J.call(R),W(A,x,R,w)}if(typeof R.then=="function")return Se(A,x,Ni(R),w);if(R.$$typeof===k)return Se(A,x,Ti(A,R),w);Oi(A,R)}return typeof R=="string"&&R!==""||typeof R=="number"||typeof R=="bigint"?(R=""+R,x!==null&&x.tag===6?(n(A,x.sibling),w=a(x,R),w.return=A,A=w):(n(A,x),w=Ss(R,A.mode,w),w.return=A,A=w),o(A)):n(A,x)}return function(A,x,R,w){try{pa=0;var J=Se(A,x,R,w);return Ol=null,J}catch(K){if(K===Nl||K===Ci)throw K;var oe=ft(29,K,null,A.mode);return oe.lanes=w,oe.return=A,oe}finally{}}}var In=uf(!0),sf=uf(!1),bn=!1;function js(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function ws(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function Sn(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function xn(e,t,n){var l=e.updateQueue;if(l===null)return null;if(l=l.shared,(he&2)!==0){var a=l.pending;return a===null?t.next=t:(t.next=a.next,a.next=t),l.pending=t,t=Si(e),Go(e,null,n),t}return bi(e,l,t,n),Si(e)}function va(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194048)!==0)){var l=t.lanes;l&=e.pendingLanes,n|=l,t.lanes=n,Wr(e,n)}}function Us(e,t){var n=e.updateQueue,l=e.alternate;if(l!==null&&(l=l.updateQueue,n===l)){var a=null,s=null;if(n=n.firstBaseUpdate,n!==null){do{var o={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};s===null?a=s=o:s=s.next=o,n=n.next}while(n!==null);s===null?a=s=t:s=s.next=t}else a=s=t;n={baseState:l.baseState,firstBaseUpdate:a,lastBaseUpdate:s,shared:l.shared,callbacks:l.callbacks},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}var Bs=!1;function ga(){if(Bs){var e=Rl;if(e!==null)throw e}}function ba(e,t,n,l){Bs=!1;var a=e.updateQueue;bn=!1;var s=a.firstBaseUpdate,o=a.lastBaseUpdate,d=a.shared.pending;if(d!==null){a.shared.pending=null;var g=d,N=g.next;g.next=null,o===null?s=N:o.next=N,o=g;var D=e.alternate;D!==null&&(D=D.updateQueue,d=D.lastBaseUpdate,d!==o&&(d===null?D.firstBaseUpdate=N:d.next=N,D.lastBaseUpdate=g))}if(s!==null){var U=a.baseState;o=0,D=N=g=null,d=s;do{var O=d.lane&-536870913,M=O!==d.lane;if(M?(ue&O)===O:(l&O)===O){O!==0&&O===Cl&&(Bs=!0),D!==null&&(D=D.next={lane:0,tag:d.tag,payload:d.payload,callback:null,next:null});e:{var Q=e,W=d;O=t;var Se=n;switch(W.tag){case 1:if(Q=W.payload,typeof Q=="function"){U=Q.call(Se,U,O);break e}U=Q;break e;case 3:Q.flags=Q.flags&-65537|128;case 0:if(Q=W.payload,O=typeof Q=="function"?Q.call(Se,U,O):Q,O==null)break e;U=S({},U,O);break e;case 2:bn=!0}}O=d.callback,O!==null&&(e.flags|=64,M&&(e.flags|=8192),M=a.callbacks,M===null?a.callbacks=[O]:M.push(O))}else M={lane:O,tag:d.tag,payload:d.payload,callback:d.callback,next:null},D===null?(N=D=M,g=U):D=D.next=M,o|=O;if(d=d.next,d===null){if(d=a.shared.pending,d===null)break;M=d,d=M.next,M.next=null,a.lastBaseUpdate=M,a.shared.pending=null}}while(!0);D===null&&(g=U),a.baseState=g,a.firstBaseUpdate=N,a.lastBaseUpdate=D,s===null&&(a.shared.lanes=0),Cn|=o,e.lanes=o,e.memoizedState=U}}function cf(e,t){if(typeof e!="function")throw Error(r(191,e));e.call(t)}function rf(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;es?s:8;var o=j.T,d={};j.T=d,tc(e,!1,t,n);try{var g=a(),N=j.S;if(N!==null&&N(d,g),g!==null&&typeof g=="object"&&typeof g.then=="function"){var D=by(g,l);_a(e,t,D,yt(e))}else _a(e,t,l,yt(e))}catch(U){_a(e,t,{then:function(){},status:"rejected",reason:U},yt())}finally{G.p=s,o!==null&&d.types!==null&&(o.types=d.types),j.T=o}}function Ay(){}function Is(e,t,n,l){if(e.tag!==5)throw Error(r(476));var a=kf(e).queue;Yf(e,a,t,P,n===null?Ay:function(){return Xf(e),n(l)})}function kf(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:P,baseState:P,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Wt,lastRenderedState:P},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Wt,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function Xf(e){var t=kf(e);t.next===null&&(t=e.alternate.memoizedState),_a(e,t.next.queue,{},yt())}function ec(){return Ke(qa)}function Gf(){return we().memoizedState}function Vf(){return we().memoizedState}function Cy(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var n=yt();e=Sn(n);var l=xn(t,e,n);l!==null&&(ut(l,t,n),va(l,t,n)),t={cache:Os()},e.payload=t;return}t=t.return}}function Ry(e,t,n){var l=yt();n={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},qi(e)?Zf(t,n):(n=gs(e,t,n,l),n!==null&&(ut(n,e,l),Kf(n,t,l)))}function Qf(e,t,n){var l=yt();_a(e,t,n,l)}function _a(e,t,n,l){var a={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(qi(e))Zf(t,a);else{var s=e.alternate;if(e.lanes===0&&(s===null||s.lanes===0)&&(s=t.lastRenderedReducer,s!==null))try{var o=t.lastRenderedState,d=s(o,n);if(a.hasEagerState=!0,a.eagerState=d,ot(d,o))return bi(e,t,a,0),Ee===null&&gi(),!1}catch{}finally{}if(n=gs(e,t,a,l),n!==null)return ut(n,e,l),Kf(n,t,l),!0}return!1}function tc(e,t,n,l){if(l={lane:2,revertLane:jc(),gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},qi(e)){if(t)throw Error(r(479))}else t=gs(e,n,l,2),t!==null&&ut(t,e,2)}function qi(e){var t=e.alternate;return e===te||t!==null&&t===te}function Zf(e,t){Ml=Di=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Kf(e,t,n){if((n&4194048)!==0){var l=t.lanes;l&=e.pendingLanes,n|=l,t.lanes=n,Wr(e,n)}}var Ea={readContext:Ke,use:Ui,useCallback:ze,useContext:ze,useEffect:ze,useImperativeHandle:ze,useLayoutEffect:ze,useInsertionEffect:ze,useMemo:ze,useReducer:ze,useRef:ze,useState:ze,useDebugValue:ze,useDeferredValue:ze,useTransition:ze,useSyncExternalStore:ze,useId:ze,useHostTransitionStatus:ze,useFormState:ze,useActionState:ze,useOptimistic:ze,useMemoCache:ze,useCacheRefresh:ze};Ea.useEffectEvent=ze;var Jf={readContext:Ke,use:Ui,useCallback:function(e,t){return Ie().memoizedState=[e,t===void 0?null:t],e},useContext:Ke,useEffect:Mf,useImperativeHandle:function(e,t,n){n=n!=null?n.concat([e]):null,Li(4194308,4,Uf.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Li(4194308,4,e,t)},useInsertionEffect:function(e,t){Li(4,2,e,t)},useMemo:function(e,t){var n=Ie();t=t===void 0?null:t;var l=e();if(el){hn(!0);try{e()}finally{hn(!1)}}return n.memoizedState=[l,t],l},useReducer:function(e,t,n){var l=Ie();if(n!==void 0){var a=n(t);if(el){hn(!0);try{n(t)}finally{hn(!1)}}}else a=t;return l.memoizedState=l.baseState=a,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:a},l.queue=e,e=e.dispatch=Ry.bind(null,te,e),[l.memoizedState,e]},useRef:function(e){var t=Ie();return e={current:e},t.memoizedState=e},useState:function(e){e=Js(e);var t=e.queue,n=Qf.bind(null,te,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:Fs,useDeferredValue:function(e,t){var n=Ie();return Ps(n,e,t)},useTransition:function(){var e=Js(!1);return e=Yf.bind(null,te,e.queue,!0,!1),Ie().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var l=te,a=Ie();if(ce){if(n===void 0)throw Error(r(407));n=n()}else{if(n=t(),Ee===null)throw Error(r(349));(ue&127)!==0||pf(l,t,n)}a.memoizedState=n;var s={value:n,getSnapshot:t};return a.queue=s,Mf(vf.bind(null,l,s,e),[e]),l.flags|=2048,jl(9,{destroy:void 0},yf.bind(null,l,s,n,t),null),n},useId:function(){var e=Ie(),t=Ee.identifierPrefix;if(ce){var n=Ut,l=wt;n=(l&~(1<<32-rt(l)-1)).toString(32)+n,t="_"+t+"R_"+n,n=ji++,0<\/script>",s=s.removeChild(s.firstChild);break;case"select":s=typeof l.is=="string"?o.createElement("select",{is:l.is}):o.createElement("select"),l.multiple?s.multiple=!0:l.size&&(s.size=l.size);break;default:s=typeof l.is=="string"?o.createElement(a,{is:l.is}):o.createElement(a)}}s[Qe]=t,s[et]=l;e:for(o=t.child;o!==null;){if(o.tag===5||o.tag===6)s.appendChild(o.stateNode);else if(o.tag!==4&&o.tag!==27&&o.child!==null){o.child.return=o,o=o.child;continue}if(o===t)break e;for(;o.sibling===null;){if(o.return===null||o.return===t)break e;o=o.return}o.sibling.return=o.return,o=o.sibling}t.stateNode=s;e:switch($e(s,a,l),a){case"button":case"input":case"select":case"textarea":l=!!l.autoFocus;break e;case"img":l=!0;break e;default:l=!1}l&&Pt(t)}}return Ce(t),pc(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==l&&Pt(t);else{if(typeof l!="string"&&t.stateNode===null)throw Error(r(166));if(e=le.current,Tl(t)){if(e=t.stateNode,n=t.memoizedProps,l=null,a=Ze,a!==null)switch(a.tag){case 27:case 5:l=a.memoizedProps}e[Qe]=t,e=!!(e.nodeValue===n||l!==null&&l.suppressHydrationWarning===!0||dd(e.nodeValue,n)),e||vn(t,!0)}else e=iu(e).createTextNode(l),e[Qe]=t,t.stateNode=e}return Ce(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(l=Tl(t),n!==null){if(e===null){if(!l)throw Error(r(318));if(e=t.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(r(557));e[Qe]=t}else Kn(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Ce(t),e=!1}else n=As(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(dt(t),t):(dt(t),null);if((t.flags&128)!==0)throw Error(r(558))}return Ce(t),null;case 13:if(l=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(a=Tl(t),l!==null&&l.dehydrated!==null){if(e===null){if(!a)throw Error(r(318));if(a=t.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(r(317));a[Qe]=t}else Kn(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Ce(t),a=!1}else a=As(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=a),a=!0;if(!a)return t.flags&256?(dt(t),t):(dt(t),null)}return dt(t),(t.flags&128)!==0?(t.lanes=n,t):(n=l!==null,e=e!==null&&e.memoizedState!==null,n&&(l=t.child,a=null,l.alternate!==null&&l.alternate.memoizedState!==null&&l.alternate.memoizedState.cachePool!==null&&(a=l.alternate.memoizedState.cachePool.pool),s=null,l.memoizedState!==null&&l.memoizedState.cachePool!==null&&(s=l.memoizedState.cachePool.pool),s!==a&&(l.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),Vi(t,t.updateQueue),Ce(t),null);case 4:return De(),e===null&&Lc(t.stateNode.containerInfo),Ce(t),null;case 10:return Jt(t.type),Ce(t),null;case 19:if(B(je),l=t.memoizedState,l===null)return Ce(t),null;if(a=(t.flags&128)!==0,s=l.rendering,s===null)if(a)Aa(l,!1);else{if(Me!==0||e!==null&&(e.flags&128)!==0)for(e=t.child;e!==null;){if(s=Mi(e),s!==null){for(t.flags|=128,Aa(l,!1),e=s.updateQueue,t.updateQueue=e,Vi(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)Vo(n,e),n=n.sibling;return V(je,je.current&1|2),ce&&Zt(t,l.treeForkCount),t.child}e=e.sibling}l.tail!==null&&st()>$i&&(t.flags|=128,a=!0,Aa(l,!1),t.lanes=4194304)}else{if(!a)if(e=Mi(s),e!==null){if(t.flags|=128,a=!0,e=e.updateQueue,t.updateQueue=e,Vi(t,e),Aa(l,!0),l.tail===null&&l.tailMode==="hidden"&&!s.alternate&&!ce)return Ce(t),null}else 2*st()-l.renderingStartTime>$i&&n!==536870912&&(t.flags|=128,a=!0,Aa(l,!1),t.lanes=4194304);l.isBackwards?(s.sibling=t.child,t.child=s):(e=l.last,e!==null?e.sibling=s:t.child=s,l.last=s)}return l.tail!==null?(e=l.tail,l.rendering=e,l.tail=e.sibling,l.renderingStartTime=st(),e.sibling=null,n=je.current,V(je,a?n&1|2:n&1),ce&&Zt(t,l.treeForkCount),e):(Ce(t),null);case 22:case 23:return dt(t),Hs(),l=t.memoizedState!==null,e!==null?e.memoizedState!==null!==l&&(t.flags|=8192):l&&(t.flags|=8192),l?(n&536870912)!==0&&(t.flags&128)===0&&(Ce(t),t.subtreeFlags&6&&(t.flags|=8192)):Ce(t),n=t.updateQueue,n!==null&&Vi(t,n.retryQueue),n=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),l=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(l=t.memoizedState.cachePool.pool),l!==n&&(t.flags|=2048),e!==null&&B(Wn),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),Jt(Be),Ce(t),null;case 25:return null;case 30:return null}throw Error(r(156,t.tag))}function Dy(e,t){switch(Es(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Jt(Be),De(),e=t.flags,(e&65536)!==0&&(e&128)===0?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return ti(t),null;case 31:if(t.memoizedState!==null){if(dt(t),t.alternate===null)throw Error(r(340));Kn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(dt(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(r(340));Kn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return B(je),null;case 4:return De(),null;case 10:return Jt(t.type),null;case 22:case 23:return dt(t),Hs(),e!==null&&B(Wn),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return Jt(Be),null;case 25:return null;default:return null}}function gh(e,t){switch(Es(t),t.tag){case 3:Jt(Be),De();break;case 26:case 27:case 5:ti(t);break;case 4:De();break;case 31:t.memoizedState!==null&&dt(t);break;case 13:dt(t);break;case 19:B(je);break;case 10:Jt(t.type);break;case 22:case 23:dt(t),Hs(),e!==null&&B(Wn);break;case 24:Jt(Be)}}function Ca(e,t){try{var n=t.updateQueue,l=n!==null?n.lastEffect:null;if(l!==null){var a=l.next;n=a;do{if((n.tag&e)===e){l=void 0;var s=n.create,o=n.inst;l=s(),o.destroy=l}n=n.next}while(n!==a)}}catch(d){pe(t,t.return,d)}}function Tn(e,t,n){try{var l=t.updateQueue,a=l!==null?l.lastEffect:null;if(a!==null){var s=a.next;l=s;do{if((l.tag&e)===e){var o=l.inst,d=o.destroy;if(d!==void 0){o.destroy=void 0,a=t;var g=n,N=d;try{N()}catch(D){pe(a,g,D)}}}l=l.next}while(l!==s)}}catch(D){pe(t,t.return,D)}}function bh(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{rf(t,n)}catch(l){pe(e,e.return,l)}}}function Sh(e,t,n){n.props=tl(e.type,e.memoizedProps),n.state=e.memoizedState;try{n.componentWillUnmount()}catch(l){pe(e,t,l)}}function Ra(e,t){try{var n=e.ref;if(n!==null){switch(e.tag){case 26:case 27:case 5:var l=e.stateNode;break;case 30:l=e.stateNode;break;default:l=e.stateNode}typeof n=="function"?e.refCleanup=n(l):n.current=l}}catch(a){pe(e,t,a)}}function Bt(e,t){var n=e.ref,l=e.refCleanup;if(n!==null)if(typeof l=="function")try{l()}catch(a){pe(e,t,a)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n=="function")try{n(null)}catch(a){pe(e,t,a)}else n.current=null}function xh(e){var t=e.type,n=e.memoizedProps,l=e.stateNode;try{e:switch(t){case"button":case"input":case"select":case"textarea":n.autoFocus&&l.focus();break e;case"img":n.src?l.src=n.src:n.srcSet&&(l.srcset=n.srcSet)}}catch(a){pe(e,e.return,a)}}function yc(e,t,n){try{var l=e.stateNode;e0(l,e.type,n,t),l[et]=t}catch(a){pe(e,e.return,a)}}function _h(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&Mn(e.type)||e.tag===4}function vc(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||_h(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&&Mn(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 gc(e,t,n){var l=e.tag;if(l===5||l===6)e=e.stateNode,t?(n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n).insertBefore(e,t):(t=n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n,t.appendChild(e),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=Gt));else if(l!==4&&(l===27&&Mn(e.type)&&(n=e.stateNode,t=null),e=e.child,e!==null))for(gc(e,t,n),e=e.sibling;e!==null;)gc(e,t,n),e=e.sibling}function Qi(e,t,n){var l=e.tag;if(l===5||l===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(l!==4&&(l===27&&Mn(e.type)&&(n=e.stateNode),e=e.child,e!==null))for(Qi(e,t,n),e=e.sibling;e!==null;)Qi(e,t,n),e=e.sibling}function Eh(e){var t=e.stateNode,n=e.memoizedProps;try{for(var l=e.type,a=t.attributes;a.length;)t.removeAttributeNode(a[0]);$e(t,l,n),t[Qe]=e,t[et]=n}catch(s){pe(e,e.return,s)}}var It=!1,qe=!1,bc=!1,Th=typeof WeakSet=="function"?WeakSet:Set,Ve=null;function jy(e,t){if(e=e.containerInfo,Yc=hu,e=Uo(e),hs(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var l=n.getSelection&&n.getSelection();if(l&&l.rangeCount!==0){n=l.anchorNode;var a=l.anchorOffset,s=l.focusNode;l=l.focusOffset;try{n.nodeType,s.nodeType}catch{n=null;break e}var o=0,d=-1,g=-1,N=0,D=0,U=e,O=null;t:for(;;){for(var M;U!==n||a!==0&&U.nodeType!==3||(d=o+a),U!==s||l!==0&&U.nodeType!==3||(g=o+l),U.nodeType===3&&(o+=U.nodeValue.length),(M=U.firstChild)!==null;)O=U,U=M;for(;;){if(U===e)break t;if(O===n&&++N===a&&(d=o),O===s&&++D===l&&(g=o),(M=U.nextSibling)!==null)break;U=O,O=U.parentNode}U=M}n=d===-1||g===-1?null:{start:d,end:g}}else n=null}n=n||{start:0,end:0}}else n=null;for(kc={focusedElem:e,selectionRange:n},hu=!1,Ve=t;Ve!==null;)if(t=Ve,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,Ve=e;else for(;Ve!==null;){switch(t=Ve,s=t.alternate,e=t.flags,t.tag){case 0:if((e&4)!==0&&(e=t.updateQueue,e=e!==null?e.events:null,e!==null))for(n=0;n title"))),$e(s,l,n),s[Qe]=e,Ge(s),l=s;break e;case"link":var o=zd("link","href",a).get(l+(n.href||""));if(o){for(var d=0;dSe&&(o=Se,Se=W,W=o);var A=jo(d,W),x=jo(d,Se);if(A&&x&&(M.rangeCount!==1||M.anchorNode!==A.node||M.anchorOffset!==A.offset||M.focusNode!==x.node||M.focusOffset!==x.offset)){var R=U.createRange();R.setStart(A.node,A.offset),M.removeAllRanges(),W>Se?(M.addRange(R),M.extend(x.node,x.offset)):(R.setEnd(x.node,x.offset),M.addRange(R))}}}}for(U=[],M=d;M=M.parentNode;)M.nodeType===1&&U.push({element:M,left:M.scrollLeft,top:M.scrollTop});for(typeof d.focus=="function"&&d.focus(),d=0;dn?32:n,j.T=null,n=Cc,Cc=null;var s=Nn,o=an;if(ke=0,Hl=Nn=null,an=0,(he&6)!==0)throw Error(r(331));var d=he;if(he|=4,Uh(s.current),Dh(s,s.current,o,n),he=d,ja(0,!1),ct&&typeof ct.onPostCommitFiberRoot=="function")try{ct.onPostCommitFiberRoot(Fl,s)}catch{}return!0}finally{G.p=a,j.T=l,Ih(e,t)}}function td(e,t,n){t=St(n,t),t=ic(e.stateNode,t,2),e=xn(e,t,2),e!==null&&(Il(e,2),Lt(e))}function pe(e,t,n){if(e.tag===3)td(e,e,n);else for(;t!==null;){if(t.tag===3){td(t,e,n);break}else if(t.tag===1){var l=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof l.componentDidCatch=="function"&&(Rn===null||!Rn.has(l))){e=St(n,e),n=nh(2),l=xn(t,n,2),l!==null&&(lh(n,l,t,e),Il(l,2),Lt(l));break}}t=t.return}}function zc(e,t,n){var l=e.pingCache;if(l===null){l=e.pingCache=new By;var a=new Set;l.set(t,a)}else a=l.get(t),a===void 0&&(a=new Set,l.set(t,a));a.has(n)||(_c=!0,a.add(n),e=ky.bind(null,e,t,n),t.then(e,e))}function ky(e,t,n){var l=e.pingCache;l!==null&&l.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,Ee===e&&(ue&n)===n&&(Me===4||Me===3&&(ue&62914560)===ue&&300>st()-Ji?(he&2)===0&&ql(e,0):Ec|=n,Ll===ue&&(Ll=0)),Lt(e)}function nd(e,t){t===0&&(t=Jr()),e=Qn(e,t),e!==null&&(Il(e,t),Lt(e))}function Xy(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),nd(e,n)}function Gy(e,t){var n=0;switch(e.tag){case 31:case 13:var l=e.stateNode,a=e.memoizedState;a!==null&&(n=a.retryLane);break;case 19:l=e.stateNode;break;case 22:l=e.stateNode._retryCache;break;default:throw Error(r(314))}l!==null&&l.delete(t),nd(e,n)}function Vy(e,t){return Gu(e,t)}var tu=null,kl=null,Mc=!1,nu=!1,Dc=!1,zn=0;function Lt(e){e!==kl&&e.next===null&&(kl===null?tu=kl=e:kl=kl.next=e),nu=!0,Mc||(Mc=!0,Zy())}function ja(e,t){if(!Dc&&nu){Dc=!0;do for(var n=!1,l=tu;l!==null;){if(e!==0){var a=l.pendingLanes;if(a===0)var s=0;else{var o=l.suspendedLanes,d=l.pingedLanes;s=(1<<31-rt(42|e)+1)-1,s&=a&~(o&~d),s=s&201326741?s&201326741|1:s?s|2:0}s!==0&&(n=!0,ud(l,s))}else s=ue,s=ui(l,l===Ee?s:0,l.cancelPendingCommit!==null||l.timeoutHandle!==-1),(s&3)===0||Pl(l,s)||(n=!0,ud(l,s));l=l.next}while(n);Dc=!1}}function Qy(){ld()}function ld(){nu=Mc=!1;var e=0;zn!==0&&n0()&&(e=zn);for(var t=st(),n=null,l=tu;l!==null;){var a=l.next,s=ad(l,t);s===0?(l.next=null,n===null?tu=a:n.next=a,a===null&&(kl=n)):(n=l,(e!==0||(s&3)!==0)&&(nu=!0)),l=a}ke!==0&&ke!==5||ja(e),zn!==0&&(zn=0)}function ad(e,t){for(var n=e.suspendedLanes,l=e.pingedLanes,a=e.expirationTimes,s=e.pendingLanes&-62914561;0d)break;var D=g.transferSize,U=g.initiatorType;D&&md(U)&&(g=g.responseEnd,o+=D*(g"u"?null:document;function Cd(e,t,n){var l=Xl;if(l&&typeof t=="string"&&t){var a=gt(t);a='link[rel="'+e+'"][href="'+a+'"]',typeof n=="string"&&(a+='[crossorigin="'+n+'"]'),Ad.has(a)||(Ad.add(a),e={rel:e,crossOrigin:n,href:t},l.querySelector(a)===null&&(t=l.createElement("link"),$e(t,"link",e),Ge(t),l.head.appendChild(t)))}}function f0(e){un.D(e),Cd("dns-prefetch",e,null)}function h0(e,t){un.C(e,t),Cd("preconnect",e,t)}function d0(e,t,n){un.L(e,t,n);var l=Xl;if(l&&e&&t){var a='link[rel="preload"][as="'+gt(t)+'"]';t==="image"&&n&&n.imageSrcSet?(a+='[imagesrcset="'+gt(n.imageSrcSet)+'"]',typeof n.imageSizes=="string"&&(a+='[imagesizes="'+gt(n.imageSizes)+'"]')):a+='[href="'+gt(e)+'"]';var s=a;switch(t){case"style":s=Gl(e);break;case"script":s=Vl(e)}Ct.has(s)||(e=S({rel:"preload",href:t==="image"&&n&&n.imageSrcSet?void 0:e,as:t},n),Ct.set(s,e),l.querySelector(a)!==null||t==="style"&&l.querySelector(La(s))||t==="script"&&l.querySelector(Ha(s))||(t=l.createElement("link"),$e(t,"link",e),Ge(t),l.head.appendChild(t)))}}function m0(e,t){un.m(e,t);var n=Xl;if(n&&e){var l=t&&typeof t.as=="string"?t.as:"script",a='link[rel="modulepreload"][as="'+gt(l)+'"][href="'+gt(e)+'"]',s=a;switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":s=Vl(e)}if(!Ct.has(s)&&(e=S({rel:"modulepreload",href:e},t),Ct.set(s,e),n.querySelector(a)===null)){switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(n.querySelector(Ha(s)))return}l=n.createElement("link"),$e(l,"link",e),Ge(l),n.head.appendChild(l)}}}function p0(e,t,n){un.S(e,t,n);var l=Xl;if(l&&e){var a=fl(l).hoistableStyles,s=Gl(e);t=t||"default";var o=a.get(s);if(!o){var d={loading:0,preload:null};if(o=l.querySelector(La(s)))d.loading=5;else{e=S({rel:"stylesheet",href:e,"data-precedence":t},n),(n=Ct.get(s))&&Jc(e,n);var g=o=l.createElement("link");Ge(g),$e(g,"link",e),g._p=new Promise(function(N,D){g.onload=N,g.onerror=D}),g.addEventListener("load",function(){d.loading|=1}),g.addEventListener("error",function(){d.loading|=2}),d.loading|=4,su(o,t,l)}o={type:"stylesheet",instance:o,count:1,state:d},a.set(s,o)}}}function y0(e,t){un.X(e,t);var n=Xl;if(n&&e){var l=fl(n).hoistableScripts,a=Vl(e),s=l.get(a);s||(s=n.querySelector(Ha(a)),s||(e=S({src:e,async:!0},t),(t=Ct.get(a))&&$c(e,t),s=n.createElement("script"),Ge(s),$e(s,"link",e),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function v0(e,t){un.M(e,t);var n=Xl;if(n&&e){var l=fl(n).hoistableScripts,a=Vl(e),s=l.get(a);s||(s=n.querySelector(Ha(a)),s||(e=S({src:e,async:!0,type:"module"},t),(t=Ct.get(a))&&$c(e,t),s=n.createElement("script"),Ge(s),$e(s,"link",e),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function Rd(e,t,n,l){var a=(a=le.current)?uu(a):null;if(!a)throw Error(r(446));switch(e){case"meta":case"title":return null;case"style":return typeof n.precedence=="string"&&typeof n.href=="string"?(t=Gl(n.href),n=fl(a).hoistableStyles,l=n.get(t),l||(l={type:"style",instance:null,count:0,state:null},n.set(t,l)),l):{type:"void",instance:null,count:0,state:null};case"link":if(n.rel==="stylesheet"&&typeof n.href=="string"&&typeof n.precedence=="string"){e=Gl(n.href);var s=fl(a).hoistableStyles,o=s.get(e);if(o||(a=a.ownerDocument||a,o={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},s.set(e,o),(s=a.querySelector(La(e)))&&!s._p&&(o.instance=s,o.state.loading=5),Ct.has(e)||(n={rel:"preload",as:"style",href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},Ct.set(e,n),s||g0(a,e,n,o.state))),t&&l===null)throw Error(r(528,""));return o}if(t&&l!==null)throw Error(r(529,""));return null;case"script":return t=n.async,n=n.src,typeof n=="string"&&t&&typeof t!="function"&&typeof t!="symbol"?(t=Vl(n),n=fl(a).hoistableScripts,l=n.get(t),l||(l={type:"script",instance:null,count:0,state:null},n.set(t,l)),l):{type:"void",instance:null,count:0,state:null};default:throw Error(r(444,e))}}function Gl(e){return'href="'+gt(e)+'"'}function La(e){return'link[rel="stylesheet"]['+e+"]"}function Nd(e){return S({},e,{"data-precedence":e.precedence,precedence:null})}function g0(e,t,n,l){e.querySelector('link[rel="preload"][as="style"]['+t+"]")?l.loading=1:(t=e.createElement("link"),l.preload=t,t.addEventListener("load",function(){return l.loading|=1}),t.addEventListener("error",function(){return l.loading|=2}),$e(t,"link",n),Ge(t),e.head.appendChild(t))}function Vl(e){return'[src="'+gt(e)+'"]'}function Ha(e){return"script[async]"+e}function Od(e,t,n){if(t.count++,t.instance===null)switch(t.type){case"style":var l=e.querySelector('style[data-href~="'+gt(n.href)+'"]');if(l)return t.instance=l,Ge(l),l;var a=S({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return l=(e.ownerDocument||e).createElement("style"),Ge(l),$e(l,"style",a),su(l,n.precedence,e),t.instance=l;case"stylesheet":a=Gl(n.href);var s=e.querySelector(La(a));if(s)return t.state.loading|=4,t.instance=s,Ge(s),s;l=Nd(n),(a=Ct.get(a))&&Jc(l,a),s=(e.ownerDocument||e).createElement("link"),Ge(s);var o=s;return o._p=new Promise(function(d,g){o.onload=d,o.onerror=g}),$e(s,"link",l),t.state.loading|=4,su(s,n.precedence,e),t.instance=s;case"script":return s=Vl(n.src),(a=e.querySelector(Ha(s)))?(t.instance=a,Ge(a),a):(l=n,(a=Ct.get(s))&&(l=S({},n),$c(l,a)),e=e.ownerDocument||e,a=e.createElement("script"),Ge(a),$e(a,"link",l),e.head.appendChild(a),t.instance=a);case"void":return null;default:throw Error(r(443,t.type))}else t.type==="stylesheet"&&(t.state.loading&4)===0&&(l=t.instance,t.state.loading|=4,su(l,n.precedence,e));return t.instance}function su(e,t,n){for(var l=n.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=l.length?l[l.length-1]:null,s=a,o=0;o title"):null)}function b0(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case"meta":case"title":return!0;case"style":if(typeof t.precedence!="string"||typeof t.href!="string"||t.href==="")break;return!0;case"link":if(typeof t.rel!="string"||typeof t.href!="string"||t.href===""||t.onLoad||t.onError)break;switch(t.rel){case"stylesheet":return e=t.disabled,typeof t.precedence=="string"&&e==null;default:return!0}case"script":if(t.async&&typeof t.async!="function"&&typeof t.async!="symbol"&&!t.onLoad&&!t.onError&&t.src&&typeof t.src=="string")return!0}return!1}function Dd(e){return!(e.type==="stylesheet"&&(e.state.loading&3)===0)}function S0(e,t,n,l){if(n.type==="stylesheet"&&(typeof l.media!="string"||matchMedia(l.media).matches!==!1)&&(n.state.loading&4)===0){if(n.instance===null){var a=Gl(l.href),s=t.querySelector(La(a));if(s){t=s._p,t!==null&&typeof t=="object"&&typeof t.then=="function"&&(e.count++,e=ru.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=s,Ge(s);return}s=t.ownerDocument||t,l=Nd(l),(a=Ct.get(a))&&Jc(l,a),s=s.createElement("link"),Ge(s);var o=s;o._p=new Promise(function(d,g){o.onload=d,o.onerror=g}),$e(s,"link",l),n.instance=s}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&(n.state.loading&3)===0&&(e.count++,n=ru.bind(e),t.addEventListener("load",n),t.addEventListener("error",n))}}var Wc=0;function x0(e,t){return e.stylesheets&&e.count===0&&fu(e,e.stylesheets),0Wc?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(l),clearTimeout(a)}}:null}function ru(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)fu(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var ou=null;function fu(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,ou=new Map,t.forEach(_0,e),ou=null,ru.call(e))}function _0(e,t){if(!(t.state.loading&4)){var n=ou.get(e);if(n)var l=n.get(null);else{n=new Map,ou.set(e,n);for(var a=e.querySelectorAll("link[data-precedence],style[data-precedence]"),s=0;s"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(u)}catch(i){console.error(i)}}return u(),ir.exports=H0(),ir.exports}var Y0=q0();var nm="popstate";function k0(u={}){function i(r,f){let{pathname:h,search:m,hash:b}=r.location;return yr("",{pathname:h,search:m,hash:b},f.state&&f.state.usr||null,f.state&&f.state.key||"default")}function c(r,f){return typeof f=="string"?f:Wa(f)}return G0(i,c,null,u)}function Oe(u,i){if(u===!1||u===null||typeof u>"u")throw new Error(i)}function jt(u,i){if(!u){typeof console<"u"&&console.warn(i);try{throw new Error(i)}catch{}}}function X0(){return Math.random().toString(36).substring(2,10)}function lm(u,i){return{usr:u.state,key:u.key,idx:i}}function yr(u,i,c=null,r){return{pathname:typeof u=="string"?u:u.pathname,search:"",hash:"",...typeof i=="string"?Kl(i):i,state:c,key:i&&i.key||r||X0()}}function Wa({pathname:u="/",search:i="",hash:c=""}){return i&&i!=="?"&&(u+=i.charAt(0)==="?"?i:"?"+i),c&&c!=="#"&&(u+=c.charAt(0)==="#"?c:"#"+c),u}function Kl(u){let i={};if(u){let c=u.indexOf("#");c>=0&&(i.hash=u.substring(c),u=u.substring(0,c));let r=u.indexOf("?");r>=0&&(i.search=u.substring(r),u=u.substring(0,r)),u&&(i.pathname=u)}return i}function G0(u,i,c,r={}){let{window:f=document.defaultView,v5Compat:h=!1}=r,m=f.history,b="POP",y=null,v=T();v==null&&(v=0,m.replaceState({...m.state,idx:v},""));function T(){return(m.state||{idx:null}).idx}function S(){b="POP";let q=T(),H=q==null?null:q-v;v=q,y&&y({action:b,location:X.location,delta:H})}function C(q,H){b="PUSH";let Y=yr(X.location,q,H);v=T()+1;let k=lm(Y,v),F=X.createHref(Y);try{m.pushState(k,"",F)}catch(ye){if(ye instanceof DOMException&&ye.name==="DataCloneError")throw ye;f.location.assign(F)}h&&y&&y({action:b,location:X.location,delta:1})}function z(q,H){b="REPLACE";let Y=yr(X.location,q,H);v=T();let k=lm(Y,v),F=X.createHref(Y);m.replaceState(k,"",F),h&&y&&y({action:b,location:X.location,delta:0})}function L(q){return V0(q)}let X={get action(){return b},get location(){return u(f,m)},listen(q){if(y)throw new Error("A history only accepts one active listener");return f.addEventListener(nm,S),y=q,()=>{f.removeEventListener(nm,S),y=null}},createHref(q){return i(f,q)},createURL:L,encodeLocation(q){let H=L(q);return{pathname:H.pathname,search:H.search,hash:H.hash}},push:C,replace:z,go(q){return m.go(q)}};return X}function V0(u,i=!1){let c="http://localhost";typeof window<"u"&&(c=window.location.origin!=="null"?window.location.origin:window.location.href),Oe(c,"No window.location.(origin|href) available to create URL");let r=typeof u=="string"?u:Wa(u);return r=r.replace(/ $/,"%20"),!i&&r.startsWith("//")&&(r=c+r),new URL(r,c)}function _m(u,i,c="/"){return Q0(u,i,c,!1)}function Q0(u,i,c,r){let f=typeof i=="string"?Kl(i):i,h=rn(f.pathname||"/",c);if(h==null)return null;let m=Em(u);Z0(m);let b=null;for(let y=0;b==null&&y{let T={relativePath:v===void 0?m.path||"":v,caseSensitive:m.caseSensitive===!0,childrenIndex:b,route:m};if(T.relativePath.startsWith("/")){if(!T.relativePath.startsWith(r)&&y)return;Oe(T.relativePath.startsWith(r),`Absolute route path "${T.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),T.relativePath=T.relativePath.slice(r.length)}let S=cn([r,T.relativePath]),C=c.concat(T);m.children&&m.children.length>0&&(Oe(m.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${S}".`),Em(m.children,i,C,S,y)),!(m.path==null&&!m.index)&&i.push({path:S,score:I0(S,m.index),routesMeta:C})};return u.forEach((m,b)=>{if(m.path===""||!m.path?.includes("?"))h(m,b);else for(let y of Tm(m.path))h(m,b,!0,y)}),i}function Tm(u){let i=u.split("/");if(i.length===0)return[];let[c,...r]=i,f=c.endsWith("?"),h=c.replace(/\?$/,"");if(r.length===0)return f?[h,""]:[h];let m=Tm(r.join("/")),b=[];return b.push(...m.map(y=>y===""?h:[h,y].join("/"))),f&&b.push(...m),b.map(y=>u.startsWith("/")&&y===""?"/":y)}function Z0(u){u.sort((i,c)=>i.score!==c.score?c.score-i.score:ev(i.routesMeta.map(r=>r.childrenIndex),c.routesMeta.map(r=>r.childrenIndex)))}var K0=/^:[\w-]+$/,J0=3,$0=2,W0=1,F0=10,P0=-2,am=u=>u==="*";function I0(u,i){let c=u.split("/"),r=c.length;return c.some(am)&&(r+=P0),i&&(r+=$0),c.filter(f=>!am(f)).reduce((f,h)=>f+(K0.test(h)?J0:h===""?W0:F0),r)}function ev(u,i){return u.length===i.length&&u.slice(0,-1).every((r,f)=>r===i[f])?u[u.length-1]-i[i.length-1]:0}function tv(u,i,c=!1){let{routesMeta:r}=u,f={},h="/",m=[];for(let b=0;b{if(T==="*"){let L=b[C]||"";m=h.slice(0,h.length-L.length).replace(/(.)\/+$/,"$1")}const z=b[C];return S&&!z?v[T]=void 0:v[T]=(z||"").replace(/%2F/g,"/"),v},{}),pathname:h,pathnameBase:m,pattern:u}}function nv(u,i=!1,c=!0){jt(u==="*"||!u.endsWith("*")||u.endsWith("/*"),`Route path "${u}" will be treated as if it were "${u.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${u.replace(/\*$/,"/*")}".`);let r=[],f="^"+u.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(m,b,y)=>(r.push({paramName:b,isOptional:y!=null}),y?"/?([^\\/]+)?":"/([^\\/]+)")).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return u.endsWith("*")?(r.push({paramName:"*"}),f+=u==="*"||u==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):c?f+="\\/*$":u!==""&&u!=="/"&&(f+="(?:(?=\\/|$))"),[new RegExp(f,i?void 0:"i"),r]}function lv(u){try{return u.split("/").map(i=>decodeURIComponent(i).replace(/\//g,"%2F")).join("/")}catch(i){return jt(!1,`The URL path "${u}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${i}).`),u}}function rn(u,i){if(i==="/")return u;if(!u.toLowerCase().startsWith(i.toLowerCase()))return null;let c=i.endsWith("/")?i.length-1:i.length,r=u.charAt(c);return r&&r!=="/"?null:u.slice(c)||"/"}var av=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,iv=u=>av.test(u);function uv(u,i="/"){let{pathname:c,search:r="",hash:f=""}=typeof u=="string"?Kl(u):u,h;if(c)if(iv(c))h=c;else{if(c.includes("//")){let m=c;c=c.replace(/\/\/+/g,"/"),jt(!1,`Pathnames cannot have embedded double slashes - normalizing ${m} -> ${c}`)}c.startsWith("/")?h=im(c.substring(1),"/"):h=im(c,i)}else h=i;return{pathname:h,search:rv(r),hash:ov(f)}}function im(u,i){let c=i.replace(/\/+$/,"").split("/");return u.split("/").forEach(f=>{f===".."?c.length>1&&c.pop():f!=="."&&c.push(f)}),c.length>1?c.join("/"):"/"}function rr(u,i,c,r){return`Cannot include a '${u}' character in a manually specified \`to.${i}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${c}\` field. Alternatively you may provide the full path as a string in and the router will parse it for you.`}function sv(u){return u.filter((i,c)=>c===0||i.route.path&&i.route.path.length>0)}function Am(u){let i=sv(u);return i.map((c,r)=>r===i.length-1?c.pathname:c.pathnameBase)}function Cm(u,i,c,r=!1){let f;typeof u=="string"?f=Kl(u):(f={...u},Oe(!f.pathname||!f.pathname.includes("?"),rr("?","pathname","search",f)),Oe(!f.pathname||!f.pathname.includes("#"),rr("#","pathname","hash",f)),Oe(!f.search||!f.search.includes("#"),rr("#","search","hash",f)));let h=u===""||f.pathname==="",m=h?"/":f.pathname,b;if(m==null)b=c;else{let S=i.length-1;if(!r&&m.startsWith("..")){let C=m.split("/");for(;C[0]==="..";)C.shift(),S-=1;f.pathname=C.join("/")}b=S>=0?i[S]:"/"}let y=uv(f,b),v=m&&m!=="/"&&m.endsWith("/"),T=(h||m===".")&&c.endsWith("/");return!y.pathname.endsWith("/")&&(v||T)&&(y.pathname+="/"),y}var cn=u=>u.join("/").replace(/\/\/+/g,"/"),cv=u=>u.replace(/\/+$/,"").replace(/^\/*/,"/"),rv=u=>!u||u==="?"?"":u.startsWith("?")?u:"?"+u,ov=u=>!u||u==="#"?"":u.startsWith("#")?u:"#"+u;function fv(u){return u!=null&&typeof u.status=="number"&&typeof u.statusText=="string"&&typeof u.internal=="boolean"&&"data"in u}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var Rm=["POST","PUT","PATCH","DELETE"];new Set(Rm);var hv=["GET",...Rm];new Set(hv);var Jl=E.createContext(null);Jl.displayName="DataRouter";var Du=E.createContext(null);Du.displayName="DataRouterState";E.createContext(!1);var Nm=E.createContext({isTransitioning:!1});Nm.displayName="ViewTransition";var dv=E.createContext(new Map);dv.displayName="Fetchers";var mv=E.createContext(null);mv.displayName="Await";var Yt=E.createContext(null);Yt.displayName="Navigation";var Fa=E.createContext(null);Fa.displayName="Location";var on=E.createContext({outlet:null,matches:[],isDataRoute:!1});on.displayName="Route";var Ar=E.createContext(null);Ar.displayName="RouteError";function pv(u,{relative:i}={}){Oe(Pa(),"useHref() may be used only in the context of a component.");let{basename:c,navigator:r}=E.useContext(Yt),{hash:f,pathname:h,search:m}=Ia(u,{relative:i}),b=h;return c!=="/"&&(b=h==="/"?c:cn([c,h])),r.createHref({pathname:b,search:m,hash:f})}function Pa(){return E.useContext(Fa)!=null}function sl(){return Oe(Pa(),"useLocation() may be used only in the context of a component."),E.useContext(Fa).location}var Om="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function zm(u){E.useContext(Yt).static||E.useLayoutEffect(u)}function yv(){let{isDataRoute:u}=E.useContext(on);return u?Ov():vv()}function vv(){Oe(Pa(),"useNavigate() may be used only in the context of a component.");let u=E.useContext(Jl),{basename:i,navigator:c}=E.useContext(Yt),{matches:r}=E.useContext(on),{pathname:f}=sl(),h=JSON.stringify(Am(r)),m=E.useRef(!1);return zm(()=>{m.current=!0}),E.useCallback((y,v={})=>{if(jt(m.current,Om),!m.current)return;if(typeof y=="number"){c.go(y);return}let T=Cm(y,JSON.parse(h),f,v.relative==="path");u==null&&i!=="/"&&(T.pathname=T.pathname==="/"?i:cn([i,T.pathname])),(v.replace?c.replace:c.push)(T,v.state,v)},[i,c,h,f,u])}E.createContext(null);function Ia(u,{relative:i}={}){let{matches:c}=E.useContext(on),{pathname:r}=sl(),f=JSON.stringify(Am(c));return E.useMemo(()=>Cm(u,JSON.parse(f),r,i==="path"),[u,f,r,i])}function gv(u,i){return Mm(u,i)}function Mm(u,i,c,r,f){Oe(Pa(),"useRoutes() may be used only in the context of a component.");let{navigator:h}=E.useContext(Yt),{matches:m}=E.useContext(on),b=m[m.length-1],y=b?b.params:{},v=b?b.pathname:"/",T=b?b.pathnameBase:"/",S=b&&b.route;{let Y=S&&S.path||"";Dm(v,!S||Y.endsWith("*")||Y.endsWith("*?"),`You rendered descendant (or called \`useRoutes()\`) at "${v}" (under ) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render. +`+l.stack}}var Xu=Object.prototype.hasOwnProperty,Gu=u.unstable_scheduleCallback,Vu=u.unstable_cancelCallback,rp=u.unstable_shouldYield,op=u.unstable_requestPaint,st=u.unstable_now,fp=u.unstable_getCurrentPriorityLevel,Vr=u.unstable_ImmediatePriority,Qr=u.unstable_UserBlockingPriority,ni=u.unstable_NormalPriority,hp=u.unstable_LowPriority,Zr=u.unstable_IdlePriority,dp=u.log,mp=u.unstable_setDisableYieldValue,Fl=null,ct=null;function hn(e){if(typeof dp=="function"&&mp(e),ct&&typeof ct.setStrictMode=="function")try{ct.setStrictMode(Fl,e)}catch{}}var rt=Math.clz32?Math.clz32:vp,pp=Math.log,yp=Math.LN2;function vp(e){return e>>>=0,e===0?32:31-(pp(e)/yp|0)|0}var li=256,ai=262144,ii=4194304;function Yn(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function ui(e,t,n){var l=e.pendingLanes;if(l===0)return 0;var a=0,s=e.suspendedLanes,o=e.pingedLanes;e=e.warmLanes;var d=l&134217727;return d!==0?(l=d&~s,l!==0?a=Yn(l):(o&=d,o!==0?a=Yn(o):n||(n=d&~e,n!==0&&(a=Yn(n))))):(d=l&~s,d!==0?a=Yn(d):o!==0?a=Yn(o):n||(n=l&~e,n!==0&&(a=Yn(n)))),a===0?0:t!==0&&t!==a&&(t&s)===0&&(s=a&-a,n=t&-t,s>=n||s===32&&(n&4194048)!==0)?t:a}function Pl(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function gp(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Kr(){var e=ii;return ii<<=1,(ii&62914560)===0&&(ii=4194304),e}function Qu(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function Il(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function bp(e,t,n,l,a,s){var o=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var d=e.entanglements,g=e.expirationTimes,N=e.hiddenUpdates;for(n=o&~n;0"u")return null;try{return e.activeElement||e.body}catch{return e.body}}var Ap=/[\n"\\]/g;function gt(e){return e.replace(Ap,function(t){return"\\"+t.charCodeAt(0).toString(16)+" "})}function Fu(e,t,n,l,a,s,o,d){e.name="",o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"?e.type=o:e.removeAttribute("type"),t!=null?o==="number"?(t===0&&e.value===""||e.value!=t)&&(e.value=""+vt(t)):e.value!==""+vt(t)&&(e.value=""+vt(t)):o!=="submit"&&o!=="reset"||e.removeAttribute("value"),t!=null?Pu(e,o,vt(t)):n!=null?Pu(e,o,vt(n)):l!=null&&e.removeAttribute("value"),a==null&&s!=null&&(e.defaultChecked=!!s),a!=null&&(e.checked=a&&typeof a!="function"&&typeof a!="symbol"),d!=null&&typeof d!="function"&&typeof d!="symbol"&&typeof d!="boolean"?e.name=""+vt(d):e.removeAttribute("name")}function uo(e,t,n,l,a,s,o,d){if(s!=null&&typeof s!="function"&&typeof s!="symbol"&&typeof s!="boolean"&&(e.type=s),t!=null||n!=null){if(!(s!=="submit"&&s!=="reset"||t!=null)){Wu(e);return}n=n!=null?""+vt(n):"",t=t!=null?""+vt(t):n,d||t===e.value||(e.value=t),e.defaultValue=t}l=l??a,l=typeof l!="function"&&typeof l!="symbol"&&!!l,e.checked=d?e.checked:!!l,e.defaultChecked=!!l,o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"&&(e.name=o),Wu(e)}function Pu(e,t,n){t==="number"&&ri(e.ownerDocument)===e||e.defaultValue===""+n||(e.defaultValue=""+n)}function dl(e,t,n,l){if(e=e.options,t){t={};for(var a=0;a"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),ls=!1;if(Qt)try{var la={};Object.defineProperty(la,"passive",{get:function(){ls=!0}}),window.addEventListener("test",la,la),window.removeEventListener("test",la,la)}catch{ls=!1}var mn=null,as=null,fi=null;function mo(){if(fi)return fi;var e,t=as,n=t.length,l,a="value"in mn?mn.value:mn.textContent,s=a.length;for(e=0;e=ua),So=" ",xo=!1;function _o(e,t){switch(e){case"keyup":return Ip.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Eo(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var vl=!1;function ty(e,t){switch(e){case"compositionend":return Eo(t);case"keypress":return t.which!==32?null:(xo=!0,So);case"textInput":return e=t.data,e===So&&xo?null:e;default:return null}}function ny(e,t){if(vl)return e==="compositionend"||!rs&&_o(e,t)?(e=mo(),fi=as=mn=null,vl=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=l}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=Mo(n)}}function jo(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?jo(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function wo(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=ri(e.document);t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=ri(e.document)}return t}function hs(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}var oy=Qt&&"documentMode"in document&&11>=document.documentMode,gl=null,ds=null,oa=null,ms=!1;function Uo(e,t,n){var l=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;ms||gl==null||gl!==ri(l)||(l=gl,"selectionStart"in l&&hs(l)?l={start:l.selectionStart,end:l.selectionEnd}:(l=(l.ownerDocument&&l.ownerDocument.defaultView||window).getSelection(),l={anchorNode:l.anchorNode,anchorOffset:l.anchorOffset,focusNode:l.focusNode,focusOffset:l.focusOffset}),oa&&ra(oa,l)||(oa=l,l=au(ds,"onSelect"),0>=o,a-=o,wt=1<<32-rt(t)+a|n<ne?(se=K,K=null):se=K.sibling;var fe=O(A,K,R[ne],w);if(fe===null){K===null&&(K=se);break}e&&K&&fe.alternate===null&&t(A,K),x=s(fe,x,ne),oe===null?J=fe:oe.sibling=fe,oe=fe,K=se}if(ne===R.length)return n(A,K),ce&&Kt(A,ne),J;if(K===null){for(;nene?(se=K,K=null):se=K.sibling;var Bn=O(A,K,fe.value,w);if(Bn===null){K===null&&(K=se);break}e&&K&&Bn.alternate===null&&t(A,K),x=s(Bn,x,ne),oe===null?J=Bn:oe.sibling=Bn,oe=Bn,K=se}if(fe.done)return n(A,K),ce&&Kt(A,ne),J;if(K===null){for(;!fe.done;ne++,fe=R.next())fe=U(A,fe.value,w),fe!==null&&(x=s(fe,x,ne),oe===null?J=fe:oe.sibling=fe,oe=fe);return ce&&Kt(A,ne),J}for(K=l(K);!fe.done;ne++,fe=R.next())fe=M(K,A,ne,fe.value,w),fe!==null&&(e&&fe.alternate!==null&&K.delete(fe.key===null?ne:fe.key),x=s(fe,x,ne),oe===null?J=fe:oe.sibling=fe,oe=fe);return e&&K.forEach(function(z0){return t(A,z0)}),ce&&Kt(A,ne),J}function Se(A,x,R,w){if(typeof R=="object"&&R!==null&&R.type===X&&R.key===null&&(R=R.props.children),typeof R=="object"&&R!==null){switch(R.$$typeof){case z:e:{for(var J=R.key;x!==null;){if(x.key===J){if(J=R.type,J===X){if(x.tag===7){n(A,x.sibling),w=a(x,R.props.children),w.return=A,A=w;break e}}else if(x.elementType===J||typeof J=="object"&&J!==null&&J.$$typeof===Te&&Fn(J)===x.type){n(A,x.sibling),w=a(x,R.props),ya(w,R),w.return=A,A=w;break e}n(A,x);break}else t(A,x);x=x.sibling}R.type===X?(w=Zn(R.props.children,A.mode,w,R.key),w.return=A,A=w):(w=xi(R.type,R.key,R.props,null,A.mode,w),ya(w,R),w.return=A,A=w)}return o(A);case L:e:{for(J=R.key;x!==null;){if(x.key===J)if(x.tag===4&&x.stateNode.containerInfo===R.containerInfo&&x.stateNode.implementation===R.implementation){n(A,x.sibling),w=a(x,R.children||[]),w.return=A,A=w;break e}else{n(A,x);break}else t(A,x);x=x.sibling}w=xs(R,A.mode,w),w.return=A,A=w}return o(A);case Te:return R=Fn(R),Se(A,x,R,w)}if(Nt(R))return Q(A,x,R,w);if(We(R)){if(J=We(R),typeof J!="function")throw Error(r(150));return R=J.call(R),W(A,x,R,w)}if(typeof R.then=="function")return Se(A,x,Ni(R),w);if(R.$$typeof===k)return Se(A,x,Ti(A,R),w);Oi(A,R)}return typeof R=="string"&&R!==""||typeof R=="number"||typeof R=="bigint"?(R=""+R,x!==null&&x.tag===6?(n(A,x.sibling),w=a(x,R),w.return=A,A=w):(n(A,x),w=Ss(R,A.mode,w),w.return=A,A=w),o(A)):n(A,x)}return function(A,x,R,w){try{pa=0;var J=Se(A,x,R,w);return Ol=null,J}catch(K){if(K===Nl||K===Ci)throw K;var oe=ft(29,K,null,A.mode);return oe.lanes=w,oe.return=A,oe}finally{}}}var In=af(!0),uf=af(!1),bn=!1;function js(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function ws(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function Sn(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function xn(e,t,n){var l=e.updateQueue;if(l===null)return null;if(l=l.shared,(he&2)!==0){var a=l.pending;return a===null?t.next=t:(t.next=a.next,a.next=t),l.pending=t,t=Si(e),Xo(e,null,n),t}return bi(e,l,t,n),Si(e)}function va(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194048)!==0)){var l=t.lanes;l&=e.pendingLanes,n|=l,t.lanes=n,$r(e,n)}}function Us(e,t){var n=e.updateQueue,l=e.alternate;if(l!==null&&(l=l.updateQueue,n===l)){var a=null,s=null;if(n=n.firstBaseUpdate,n!==null){do{var o={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};s===null?a=s=o:s=s.next=o,n=n.next}while(n!==null);s===null?a=s=t:s=s.next=t}else a=s=t;n={baseState:l.baseState,firstBaseUpdate:a,lastBaseUpdate:s,shared:l.shared,callbacks:l.callbacks},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}var Bs=!1;function ga(){if(Bs){var e=Rl;if(e!==null)throw e}}function ba(e,t,n,l){Bs=!1;var a=e.updateQueue;bn=!1;var s=a.firstBaseUpdate,o=a.lastBaseUpdate,d=a.shared.pending;if(d!==null){a.shared.pending=null;var g=d,N=g.next;g.next=null,o===null?s=N:o.next=N,o=g;var D=e.alternate;D!==null&&(D=D.updateQueue,d=D.lastBaseUpdate,d!==o&&(d===null?D.firstBaseUpdate=N:d.next=N,D.lastBaseUpdate=g))}if(s!==null){var U=a.baseState;o=0,D=N=g=null,d=s;do{var O=d.lane&-536870913,M=O!==d.lane;if(M?(ue&O)===O:(l&O)===O){O!==0&&O===Cl&&(Bs=!0),D!==null&&(D=D.next={lane:0,tag:d.tag,payload:d.payload,callback:null,next:null});e:{var Q=e,W=d;O=t;var Se=n;switch(W.tag){case 1:if(Q=W.payload,typeof Q=="function"){U=Q.call(Se,U,O);break e}U=Q;break e;case 3:Q.flags=Q.flags&-65537|128;case 0:if(Q=W.payload,O=typeof Q=="function"?Q.call(Se,U,O):Q,O==null)break e;U=S({},U,O);break e;case 2:bn=!0}}O=d.callback,O!==null&&(e.flags|=64,M&&(e.flags|=8192),M=a.callbacks,M===null?a.callbacks=[O]:M.push(O))}else M={lane:O,tag:d.tag,payload:d.payload,callback:d.callback,next:null},D===null?(N=D=M,g=U):D=D.next=M,o|=O;if(d=d.next,d===null){if(d=a.shared.pending,d===null)break;M=d,d=M.next,M.next=null,a.lastBaseUpdate=M,a.shared.pending=null}}while(!0);D===null&&(g=U),a.baseState=g,a.firstBaseUpdate=N,a.lastBaseUpdate=D,s===null&&(a.shared.lanes=0),Cn|=o,e.lanes=o,e.memoizedState=U}}function sf(e,t){if(typeof e!="function")throw Error(r(191,e));e.call(t)}function cf(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;es?s:8;var o=j.T,d={};j.T=d,tc(e,!1,t,n);try{var g=a(),N=j.S;if(N!==null&&N(d,g),g!==null&&typeof g=="object"&&typeof g.then=="function"){var D=by(g,l);_a(e,t,D,yt(e))}else _a(e,t,l,yt(e))}catch(U){_a(e,t,{then:function(){},status:"rejected",reason:U},yt())}finally{G.p=s,o!==null&&d.types!==null&&(o.types=d.types),j.T=o}}function Ay(){}function Is(e,t,n,l){if(e.tag!==5)throw Error(r(476));var a=Yf(e).queue;qf(e,a,t,P,n===null?Ay:function(){return kf(e),n(l)})}function Yf(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:P,baseState:P,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Ft,lastRenderedState:P},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Ft,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function kf(e){var t=Yf(e);t.next===null&&(t=e.alternate.memoizedState),_a(e,t.next.queue,{},yt())}function ec(){return Ke(qa)}function Xf(){return we().memoizedState}function Gf(){return we().memoizedState}function Cy(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var n=yt();e=Sn(n);var l=xn(t,e,n);l!==null&&(ut(l,t,n),va(l,t,n)),t={cache:Os()},e.payload=t;return}t=t.return}}function Ry(e,t,n){var l=yt();n={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},qi(e)?Qf(t,n):(n=gs(e,t,n,l),n!==null&&(ut(n,e,l),Zf(n,t,l)))}function Vf(e,t,n){var l=yt();_a(e,t,n,l)}function _a(e,t,n,l){var a={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(qi(e))Qf(t,a);else{var s=e.alternate;if(e.lanes===0&&(s===null||s.lanes===0)&&(s=t.lastRenderedReducer,s!==null))try{var o=t.lastRenderedState,d=s(o,n);if(a.hasEagerState=!0,a.eagerState=d,ot(d,o))return bi(e,t,a,0),Ee===null&&gi(),!1}catch{}finally{}if(n=gs(e,t,a,l),n!==null)return ut(n,e,l),Zf(n,t,l),!0}return!1}function tc(e,t,n,l){if(l={lane:2,revertLane:jc(),gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},qi(e)){if(t)throw Error(r(479))}else t=gs(e,n,l,2),t!==null&&ut(t,e,2)}function qi(e){var t=e.alternate;return e===te||t!==null&&t===te}function Qf(e,t){Ml=Di=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Zf(e,t,n){if((n&4194048)!==0){var l=t.lanes;l&=e.pendingLanes,n|=l,t.lanes=n,$r(e,n)}}var Ea={readContext:Ke,use:Ui,useCallback:ze,useContext:ze,useEffect:ze,useImperativeHandle:ze,useLayoutEffect:ze,useInsertionEffect:ze,useMemo:ze,useReducer:ze,useRef:ze,useState:ze,useDebugValue:ze,useDeferredValue:ze,useTransition:ze,useSyncExternalStore:ze,useId:ze,useHostTransitionStatus:ze,useFormState:ze,useActionState:ze,useOptimistic:ze,useMemoCache:ze,useCacheRefresh:ze};Ea.useEffectEvent=ze;var Kf={readContext:Ke,use:Ui,useCallback:function(e,t){return Ie().memoizedState=[e,t===void 0?null:t],e},useContext:Ke,useEffect:zf,useImperativeHandle:function(e,t,n){n=n!=null?n.concat([e]):null,Li(4194308,4,wf.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Li(4194308,4,e,t)},useInsertionEffect:function(e,t){Li(4,2,e,t)},useMemo:function(e,t){var n=Ie();t=t===void 0?null:t;var l=e();if(el){hn(!0);try{e()}finally{hn(!1)}}return n.memoizedState=[l,t],l},useReducer:function(e,t,n){var l=Ie();if(n!==void 0){var a=n(t);if(el){hn(!0);try{n(t)}finally{hn(!1)}}}else a=t;return l.memoizedState=l.baseState=a,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:a},l.queue=e,e=e.dispatch=Ry.bind(null,te,e),[l.memoizedState,e]},useRef:function(e){var t=Ie();return e={current:e},t.memoizedState=e},useState:function(e){e=Js(e);var t=e.queue,n=Vf.bind(null,te,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:Fs,useDeferredValue:function(e,t){var n=Ie();return Ps(n,e,t)},useTransition:function(){var e=Js(!1);return e=qf.bind(null,te,e.queue,!0,!1),Ie().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var l=te,a=Ie();if(ce){if(n===void 0)throw Error(r(407));n=n()}else{if(n=t(),Ee===null)throw Error(r(349));(ue&127)!==0||mf(l,t,n)}a.memoizedState=n;var s={value:n,getSnapshot:t};return a.queue=s,zf(yf.bind(null,l,s,e),[e]),l.flags|=2048,jl(9,{destroy:void 0},pf.bind(null,l,s,n,t),null),n},useId:function(){var e=Ie(),t=Ee.identifierPrefix;if(ce){var n=Ut,l=wt;n=(l&~(1<<32-rt(l)-1)).toString(32)+n,t="_"+t+"R_"+n,n=ji++,0<\/script>",s=s.removeChild(s.firstChild);break;case"select":s=typeof l.is=="string"?o.createElement("select",{is:l.is}):o.createElement("select"),l.multiple?s.multiple=!0:l.size&&(s.size=l.size);break;default:s=typeof l.is=="string"?o.createElement(a,{is:l.is}):o.createElement(a)}}s[Qe]=t,s[et]=l;e:for(o=t.child;o!==null;){if(o.tag===5||o.tag===6)s.appendChild(o.stateNode);else if(o.tag!==4&&o.tag!==27&&o.child!==null){o.child.return=o,o=o.child;continue}if(o===t)break e;for(;o.sibling===null;){if(o.return===null||o.return===t)break e;o=o.return}o.sibling.return=o.return,o=o.sibling}t.stateNode=s;e:switch($e(s,a,l),a){case"button":case"input":case"select":case"textarea":l=!!l.autoFocus;break e;case"img":l=!0;break e;default:l=!1}l&&It(t)}}return Ce(t),pc(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==l&&It(t);else{if(typeof l!="string"&&t.stateNode===null)throw Error(r(166));if(e=le.current,Tl(t)){if(e=t.stateNode,n=t.memoizedProps,l=null,a=Ze,a!==null)switch(a.tag){case 27:case 5:l=a.memoizedProps}e[Qe]=t,e=!!(e.nodeValue===n||l!==null&&l.suppressHydrationWarning===!0||hd(e.nodeValue,n)),e||vn(t,!0)}else e=iu(e).createTextNode(l),e[Qe]=t,t.stateNode=e}return Ce(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(l=Tl(t),n!==null){if(e===null){if(!l)throw Error(r(318));if(e=t.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(r(557));e[Qe]=t}else Kn(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Ce(t),e=!1}else n=As(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(dt(t),t):(dt(t),null);if((t.flags&128)!==0)throw Error(r(558))}return Ce(t),null;case 13:if(l=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(a=Tl(t),l!==null&&l.dehydrated!==null){if(e===null){if(!a)throw Error(r(318));if(a=t.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(r(317));a[Qe]=t}else Kn(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Ce(t),a=!1}else a=As(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=a),a=!0;if(!a)return t.flags&256?(dt(t),t):(dt(t),null)}return dt(t),(t.flags&128)!==0?(t.lanes=n,t):(n=l!==null,e=e!==null&&e.memoizedState!==null,n&&(l=t.child,a=null,l.alternate!==null&&l.alternate.memoizedState!==null&&l.alternate.memoizedState.cachePool!==null&&(a=l.alternate.memoizedState.cachePool.pool),s=null,l.memoizedState!==null&&l.memoizedState.cachePool!==null&&(s=l.memoizedState.cachePool.pool),s!==a&&(l.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),Vi(t,t.updateQueue),Ce(t),null);case 4:return De(),e===null&&Lc(t.stateNode.containerInfo),Ce(t),null;case 10:return $t(t.type),Ce(t),null;case 19:if(B(je),l=t.memoizedState,l===null)return Ce(t),null;if(a=(t.flags&128)!==0,s=l.rendering,s===null)if(a)Aa(l,!1);else{if(Me!==0||e!==null&&(e.flags&128)!==0)for(e=t.child;e!==null;){if(s=Mi(e),s!==null){for(t.flags|=128,Aa(l,!1),e=s.updateQueue,t.updateQueue=e,Vi(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)Go(n,e),n=n.sibling;return V(je,je.current&1|2),ce&&Kt(t,l.treeForkCount),t.child}e=e.sibling}l.tail!==null&&st()>$i&&(t.flags|=128,a=!0,Aa(l,!1),t.lanes=4194304)}else{if(!a)if(e=Mi(s),e!==null){if(t.flags|=128,a=!0,e=e.updateQueue,t.updateQueue=e,Vi(t,e),Aa(l,!0),l.tail===null&&l.tailMode==="hidden"&&!s.alternate&&!ce)return Ce(t),null}else 2*st()-l.renderingStartTime>$i&&n!==536870912&&(t.flags|=128,a=!0,Aa(l,!1),t.lanes=4194304);l.isBackwards?(s.sibling=t.child,t.child=s):(e=l.last,e!==null?e.sibling=s:t.child=s,l.last=s)}return l.tail!==null?(e=l.tail,l.rendering=e,l.tail=e.sibling,l.renderingStartTime=st(),e.sibling=null,n=je.current,V(je,a?n&1|2:n&1),ce&&Kt(t,l.treeForkCount),e):(Ce(t),null);case 22:case 23:return dt(t),Hs(),l=t.memoizedState!==null,e!==null?e.memoizedState!==null!==l&&(t.flags|=8192):l&&(t.flags|=8192),l?(n&536870912)!==0&&(t.flags&128)===0&&(Ce(t),t.subtreeFlags&6&&(t.flags|=8192)):Ce(t),n=t.updateQueue,n!==null&&Vi(t,n.retryQueue),n=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),l=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(l=t.memoizedState.cachePool.pool),l!==n&&(t.flags|=2048),e!==null&&B(Wn),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),$t(Be),Ce(t),null;case 25:return null;case 30:return null}throw Error(r(156,t.tag))}function Dy(e,t){switch(Es(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return $t(Be),De(),e=t.flags,(e&65536)!==0&&(e&128)===0?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return ti(t),null;case 31:if(t.memoizedState!==null){if(dt(t),t.alternate===null)throw Error(r(340));Kn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(dt(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(r(340));Kn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return B(je),null;case 4:return De(),null;case 10:return $t(t.type),null;case 22:case 23:return dt(t),Hs(),e!==null&&B(Wn),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return $t(Be),null;case 25:return null;default:return null}}function vh(e,t){switch(Es(t),t.tag){case 3:$t(Be),De();break;case 26:case 27:case 5:ti(t);break;case 4:De();break;case 31:t.memoizedState!==null&&dt(t);break;case 13:dt(t);break;case 19:B(je);break;case 10:$t(t.type);break;case 22:case 23:dt(t),Hs(),e!==null&&B(Wn);break;case 24:$t(Be)}}function Ca(e,t){try{var n=t.updateQueue,l=n!==null?n.lastEffect:null;if(l!==null){var a=l.next;n=a;do{if((n.tag&e)===e){l=void 0;var s=n.create,o=n.inst;l=s(),o.destroy=l}n=n.next}while(n!==a)}}catch(d){pe(t,t.return,d)}}function Tn(e,t,n){try{var l=t.updateQueue,a=l!==null?l.lastEffect:null;if(a!==null){var s=a.next;l=s;do{if((l.tag&e)===e){var o=l.inst,d=o.destroy;if(d!==void 0){o.destroy=void 0,a=t;var g=n,N=d;try{N()}catch(D){pe(a,g,D)}}}l=l.next}while(l!==s)}}catch(D){pe(t,t.return,D)}}function gh(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{cf(t,n)}catch(l){pe(e,e.return,l)}}}function bh(e,t,n){n.props=tl(e.type,e.memoizedProps),n.state=e.memoizedState;try{n.componentWillUnmount()}catch(l){pe(e,t,l)}}function Ra(e,t){try{var n=e.ref;if(n!==null){switch(e.tag){case 26:case 27:case 5:var l=e.stateNode;break;case 30:l=e.stateNode;break;default:l=e.stateNode}typeof n=="function"?e.refCleanup=n(l):n.current=l}}catch(a){pe(e,t,a)}}function Bt(e,t){var n=e.ref,l=e.refCleanup;if(n!==null)if(typeof l=="function")try{l()}catch(a){pe(e,t,a)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n=="function")try{n(null)}catch(a){pe(e,t,a)}else n.current=null}function Sh(e){var t=e.type,n=e.memoizedProps,l=e.stateNode;try{e:switch(t){case"button":case"input":case"select":case"textarea":n.autoFocus&&l.focus();break e;case"img":n.src?l.src=n.src:n.srcSet&&(l.srcset=n.srcSet)}}catch(a){pe(e,e.return,a)}}function yc(e,t,n){try{var l=e.stateNode;e0(l,e.type,n,t),l[et]=t}catch(a){pe(e,e.return,a)}}function xh(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&Mn(e.type)||e.tag===4}function vc(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||xh(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&&Mn(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 gc(e,t,n){var l=e.tag;if(l===5||l===6)e=e.stateNode,t?(n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n).insertBefore(e,t):(t=n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n,t.appendChild(e),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=Vt));else if(l!==4&&(l===27&&Mn(e.type)&&(n=e.stateNode,t=null),e=e.child,e!==null))for(gc(e,t,n),e=e.sibling;e!==null;)gc(e,t,n),e=e.sibling}function Qi(e,t,n){var l=e.tag;if(l===5||l===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(l!==4&&(l===27&&Mn(e.type)&&(n=e.stateNode),e=e.child,e!==null))for(Qi(e,t,n),e=e.sibling;e!==null;)Qi(e,t,n),e=e.sibling}function _h(e){var t=e.stateNode,n=e.memoizedProps;try{for(var l=e.type,a=t.attributes;a.length;)t.removeAttributeNode(a[0]);$e(t,l,n),t[Qe]=e,t[et]=n}catch(s){pe(e,e.return,s)}}var en=!1,qe=!1,bc=!1,Eh=typeof WeakSet=="function"?WeakSet:Set,Ve=null;function jy(e,t){if(e=e.containerInfo,Yc=hu,e=wo(e),hs(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var l=n.getSelection&&n.getSelection();if(l&&l.rangeCount!==0){n=l.anchorNode;var a=l.anchorOffset,s=l.focusNode;l=l.focusOffset;try{n.nodeType,s.nodeType}catch{n=null;break e}var o=0,d=-1,g=-1,N=0,D=0,U=e,O=null;t:for(;;){for(var M;U!==n||a!==0&&U.nodeType!==3||(d=o+a),U!==s||l!==0&&U.nodeType!==3||(g=o+l),U.nodeType===3&&(o+=U.nodeValue.length),(M=U.firstChild)!==null;)O=U,U=M;for(;;){if(U===e)break t;if(O===n&&++N===a&&(d=o),O===s&&++D===l&&(g=o),(M=U.nextSibling)!==null)break;U=O,O=U.parentNode}U=M}n=d===-1||g===-1?null:{start:d,end:g}}else n=null}n=n||{start:0,end:0}}else n=null;for(kc={focusedElem:e,selectionRange:n},hu=!1,Ve=t;Ve!==null;)if(t=Ve,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,Ve=e;else for(;Ve!==null;){switch(t=Ve,s=t.alternate,e=t.flags,t.tag){case 0:if((e&4)!==0&&(e=t.updateQueue,e=e!==null?e.events:null,e!==null))for(n=0;n title"))),$e(s,l,n),s[Qe]=e,Ge(s),l=s;break e;case"link":var o=Od("link","href",a).get(l+(n.href||""));if(o){for(var d=0;dSe&&(o=Se,Se=W,W=o);var A=Do(d,W),x=Do(d,Se);if(A&&x&&(M.rangeCount!==1||M.anchorNode!==A.node||M.anchorOffset!==A.offset||M.focusNode!==x.node||M.focusOffset!==x.offset)){var R=U.createRange();R.setStart(A.node,A.offset),M.removeAllRanges(),W>Se?(M.addRange(R),M.extend(x.node,x.offset)):(R.setEnd(x.node,x.offset),M.addRange(R))}}}}for(U=[],M=d;M=M.parentNode;)M.nodeType===1&&U.push({element:M,left:M.scrollLeft,top:M.scrollTop});for(typeof d.focus=="function"&&d.focus(),d=0;dn?32:n,j.T=null,n=Cc,Cc=null;var s=Nn,o=un;if(ke=0,Hl=Nn=null,un=0,(he&6)!==0)throw Error(r(331));var d=he;if(he|=4,wh(s.current),Mh(s,s.current,o,n),he=d,ja(0,!1),ct&&typeof ct.onPostCommitFiberRoot=="function")try{ct.onPostCommitFiberRoot(Fl,s)}catch{}return!0}finally{G.p=a,j.T=l,Ph(e,t)}}function ed(e,t,n){t=St(n,t),t=ic(e.stateNode,t,2),e=xn(e,t,2),e!==null&&(Il(e,2),Lt(e))}function pe(e,t,n){if(e.tag===3)ed(e,e,n);else for(;t!==null;){if(t.tag===3){ed(t,e,n);break}else if(t.tag===1){var l=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof l.componentDidCatch=="function"&&(Rn===null||!Rn.has(l))){e=St(n,e),n=th(2),l=xn(t,n,2),l!==null&&(nh(n,l,t,e),Il(l,2),Lt(l));break}}t=t.return}}function zc(e,t,n){var l=e.pingCache;if(l===null){l=e.pingCache=new By;var a=new Set;l.set(t,a)}else a=l.get(t),a===void 0&&(a=new Set,l.set(t,a));a.has(n)||(_c=!0,a.add(n),e=ky.bind(null,e,t,n),t.then(e,e))}function ky(e,t,n){var l=e.pingCache;l!==null&&l.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,Ee===e&&(ue&n)===n&&(Me===4||Me===3&&(ue&62914560)===ue&&300>st()-Ji?(he&2)===0&&ql(e,0):Ec|=n,Ll===ue&&(Ll=0)),Lt(e)}function td(e,t){t===0&&(t=Kr()),e=Qn(e,t),e!==null&&(Il(e,t),Lt(e))}function Xy(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),td(e,n)}function Gy(e,t){var n=0;switch(e.tag){case 31:case 13:var l=e.stateNode,a=e.memoizedState;a!==null&&(n=a.retryLane);break;case 19:l=e.stateNode;break;case 22:l=e.stateNode._retryCache;break;default:throw Error(r(314))}l!==null&&l.delete(t),td(e,n)}function Vy(e,t){return Gu(e,t)}var tu=null,kl=null,Mc=!1,nu=!1,Dc=!1,zn=0;function Lt(e){e!==kl&&e.next===null&&(kl===null?tu=kl=e:kl=kl.next=e),nu=!0,Mc||(Mc=!0,Zy())}function ja(e,t){if(!Dc&&nu){Dc=!0;do for(var n=!1,l=tu;l!==null;){if(e!==0){var a=l.pendingLanes;if(a===0)var s=0;else{var o=l.suspendedLanes,d=l.pingedLanes;s=(1<<31-rt(42|e)+1)-1,s&=a&~(o&~d),s=s&201326741?s&201326741|1:s?s|2:0}s!==0&&(n=!0,id(l,s))}else s=ue,s=ui(l,l===Ee?s:0,l.cancelPendingCommit!==null||l.timeoutHandle!==-1),(s&3)===0||Pl(l,s)||(n=!0,id(l,s));l=l.next}while(n);Dc=!1}}function Qy(){nd()}function nd(){nu=Mc=!1;var e=0;zn!==0&&n0()&&(e=zn);for(var t=st(),n=null,l=tu;l!==null;){var a=l.next,s=ld(l,t);s===0?(l.next=null,n===null?tu=a:n.next=a,a===null&&(kl=n)):(n=l,(e!==0||(s&3)!==0)&&(nu=!0)),l=a}ke!==0&&ke!==5||ja(e),zn!==0&&(zn=0)}function ld(e,t){for(var n=e.suspendedLanes,l=e.pingedLanes,a=e.expirationTimes,s=e.pendingLanes&-62914561;0d)break;var D=g.transferSize,U=g.initiatorType;D&&dd(U)&&(g=g.responseEnd,o+=D*(g"u"?null:document;function Ad(e,t,n){var l=Xl;if(l&&typeof t=="string"&&t){var a=gt(t);a='link[rel="'+e+'"][href="'+a+'"]',typeof n=="string"&&(a+='[crossorigin="'+n+'"]'),Td.has(a)||(Td.add(a),e={rel:e,crossOrigin:n,href:t},l.querySelector(a)===null&&(t=l.createElement("link"),$e(t,"link",e),Ge(t),l.head.appendChild(t)))}}function f0(e){sn.D(e),Ad("dns-prefetch",e,null)}function h0(e,t){sn.C(e,t),Ad("preconnect",e,t)}function d0(e,t,n){sn.L(e,t,n);var l=Xl;if(l&&e&&t){var a='link[rel="preload"][as="'+gt(t)+'"]';t==="image"&&n&&n.imageSrcSet?(a+='[imagesrcset="'+gt(n.imageSrcSet)+'"]',typeof n.imageSizes=="string"&&(a+='[imagesizes="'+gt(n.imageSizes)+'"]')):a+='[href="'+gt(e)+'"]';var s=a;switch(t){case"style":s=Gl(e);break;case"script":s=Vl(e)}Ct.has(s)||(e=S({rel:"preload",href:t==="image"&&n&&n.imageSrcSet?void 0:e,as:t},n),Ct.set(s,e),l.querySelector(a)!==null||t==="style"&&l.querySelector(La(s))||t==="script"&&l.querySelector(Ha(s))||(t=l.createElement("link"),$e(t,"link",e),Ge(t),l.head.appendChild(t)))}}function m0(e,t){sn.m(e,t);var n=Xl;if(n&&e){var l=t&&typeof t.as=="string"?t.as:"script",a='link[rel="modulepreload"][as="'+gt(l)+'"][href="'+gt(e)+'"]',s=a;switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":s=Vl(e)}if(!Ct.has(s)&&(e=S({rel:"modulepreload",href:e},t),Ct.set(s,e),n.querySelector(a)===null)){switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(n.querySelector(Ha(s)))return}l=n.createElement("link"),$e(l,"link",e),Ge(l),n.head.appendChild(l)}}}function p0(e,t,n){sn.S(e,t,n);var l=Xl;if(l&&e){var a=fl(l).hoistableStyles,s=Gl(e);t=t||"default";var o=a.get(s);if(!o){var d={loading:0,preload:null};if(o=l.querySelector(La(s)))d.loading=5;else{e=S({rel:"stylesheet",href:e,"data-precedence":t},n),(n=Ct.get(s))&&Jc(e,n);var g=o=l.createElement("link");Ge(g),$e(g,"link",e),g._p=new Promise(function(N,D){g.onload=N,g.onerror=D}),g.addEventListener("load",function(){d.loading|=1}),g.addEventListener("error",function(){d.loading|=2}),d.loading|=4,su(o,t,l)}o={type:"stylesheet",instance:o,count:1,state:d},a.set(s,o)}}}function y0(e,t){sn.X(e,t);var n=Xl;if(n&&e){var l=fl(n).hoistableScripts,a=Vl(e),s=l.get(a);s||(s=n.querySelector(Ha(a)),s||(e=S({src:e,async:!0},t),(t=Ct.get(a))&&$c(e,t),s=n.createElement("script"),Ge(s),$e(s,"link",e),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function v0(e,t){sn.M(e,t);var n=Xl;if(n&&e){var l=fl(n).hoistableScripts,a=Vl(e),s=l.get(a);s||(s=n.querySelector(Ha(a)),s||(e=S({src:e,async:!0,type:"module"},t),(t=Ct.get(a))&&$c(e,t),s=n.createElement("script"),Ge(s),$e(s,"link",e),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function Cd(e,t,n,l){var a=(a=le.current)?uu(a):null;if(!a)throw Error(r(446));switch(e){case"meta":case"title":return null;case"style":return typeof n.precedence=="string"&&typeof n.href=="string"?(t=Gl(n.href),n=fl(a).hoistableStyles,l=n.get(t),l||(l={type:"style",instance:null,count:0,state:null},n.set(t,l)),l):{type:"void",instance:null,count:0,state:null};case"link":if(n.rel==="stylesheet"&&typeof n.href=="string"&&typeof n.precedence=="string"){e=Gl(n.href);var s=fl(a).hoistableStyles,o=s.get(e);if(o||(a=a.ownerDocument||a,o={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},s.set(e,o),(s=a.querySelector(La(e)))&&!s._p&&(o.instance=s,o.state.loading=5),Ct.has(e)||(n={rel:"preload",as:"style",href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},Ct.set(e,n),s||g0(a,e,n,o.state))),t&&l===null)throw Error(r(528,""));return o}if(t&&l!==null)throw Error(r(529,""));return null;case"script":return t=n.async,n=n.src,typeof n=="string"&&t&&typeof t!="function"&&typeof t!="symbol"?(t=Vl(n),n=fl(a).hoistableScripts,l=n.get(t),l||(l={type:"script",instance:null,count:0,state:null},n.set(t,l)),l):{type:"void",instance:null,count:0,state:null};default:throw Error(r(444,e))}}function Gl(e){return'href="'+gt(e)+'"'}function La(e){return'link[rel="stylesheet"]['+e+"]"}function Rd(e){return S({},e,{"data-precedence":e.precedence,precedence:null})}function g0(e,t,n,l){e.querySelector('link[rel="preload"][as="style"]['+t+"]")?l.loading=1:(t=e.createElement("link"),l.preload=t,t.addEventListener("load",function(){return l.loading|=1}),t.addEventListener("error",function(){return l.loading|=2}),$e(t,"link",n),Ge(t),e.head.appendChild(t))}function Vl(e){return'[src="'+gt(e)+'"]'}function Ha(e){return"script[async]"+e}function Nd(e,t,n){if(t.count++,t.instance===null)switch(t.type){case"style":var l=e.querySelector('style[data-href~="'+gt(n.href)+'"]');if(l)return t.instance=l,Ge(l),l;var a=S({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return l=(e.ownerDocument||e).createElement("style"),Ge(l),$e(l,"style",a),su(l,n.precedence,e),t.instance=l;case"stylesheet":a=Gl(n.href);var s=e.querySelector(La(a));if(s)return t.state.loading|=4,t.instance=s,Ge(s),s;l=Rd(n),(a=Ct.get(a))&&Jc(l,a),s=(e.ownerDocument||e).createElement("link"),Ge(s);var o=s;return o._p=new Promise(function(d,g){o.onload=d,o.onerror=g}),$e(s,"link",l),t.state.loading|=4,su(s,n.precedence,e),t.instance=s;case"script":return s=Vl(n.src),(a=e.querySelector(Ha(s)))?(t.instance=a,Ge(a),a):(l=n,(a=Ct.get(s))&&(l=S({},n),$c(l,a)),e=e.ownerDocument||e,a=e.createElement("script"),Ge(a),$e(a,"link",l),e.head.appendChild(a),t.instance=a);case"void":return null;default:throw Error(r(443,t.type))}else t.type==="stylesheet"&&(t.state.loading&4)===0&&(l=t.instance,t.state.loading|=4,su(l,n.precedence,e));return t.instance}function su(e,t,n){for(var l=n.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=l.length?l[l.length-1]:null,s=a,o=0;o title"):null)}function b0(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case"meta":case"title":return!0;case"style":if(typeof t.precedence!="string"||typeof t.href!="string"||t.href==="")break;return!0;case"link":if(typeof t.rel!="string"||typeof t.href!="string"||t.href===""||t.onLoad||t.onError)break;switch(t.rel){case"stylesheet":return e=t.disabled,typeof t.precedence=="string"&&e==null;default:return!0}case"script":if(t.async&&typeof t.async!="function"&&typeof t.async!="symbol"&&!t.onLoad&&!t.onError&&t.src&&typeof t.src=="string")return!0}return!1}function Md(e){return!(e.type==="stylesheet"&&(e.state.loading&3)===0)}function S0(e,t,n,l){if(n.type==="stylesheet"&&(typeof l.media!="string"||matchMedia(l.media).matches!==!1)&&(n.state.loading&4)===0){if(n.instance===null){var a=Gl(l.href),s=t.querySelector(La(a));if(s){t=s._p,t!==null&&typeof t=="object"&&typeof t.then=="function"&&(e.count++,e=ru.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=s,Ge(s);return}s=t.ownerDocument||t,l=Rd(l),(a=Ct.get(a))&&Jc(l,a),s=s.createElement("link"),Ge(s);var o=s;o._p=new Promise(function(d,g){o.onload=d,o.onerror=g}),$e(s,"link",l),n.instance=s}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&(n.state.loading&3)===0&&(e.count++,n=ru.bind(e),t.addEventListener("load",n),t.addEventListener("error",n))}}var Wc=0;function x0(e,t){return e.stylesheets&&e.count===0&&fu(e,e.stylesheets),0Wc?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(l),clearTimeout(a)}}:null}function ru(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)fu(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var ou=null;function fu(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,ou=new Map,t.forEach(_0,e),ou=null,ru.call(e))}function _0(e,t){if(!(t.state.loading&4)){var n=ou.get(e);if(n)var l=n.get(null);else{n=new Map,ou.set(e,n);for(var a=e.querySelectorAll("link[data-precedence],style[data-precedence]"),s=0;s"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(u)}catch(i){console.error(i)}}return u(),ir.exports=H0(),ir.exports}var Y0=q0();var tm="popstate";function k0(u={}){function i(r,f){let{pathname:h,search:m,hash:b}=r.location;return yr("",{pathname:h,search:m,hash:b},f.state&&f.state.usr||null,f.state&&f.state.key||"default")}function c(r,f){return typeof f=="string"?f:Wa(f)}return G0(i,c,null,u)}function Oe(u,i){if(u===!1||u===null||typeof u>"u")throw new Error(i)}function jt(u,i){if(!u){typeof console<"u"&&console.warn(i);try{throw new Error(i)}catch{}}}function X0(){return Math.random().toString(36).substring(2,10)}function nm(u,i){return{usr:u.state,key:u.key,idx:i}}function yr(u,i,c=null,r){return{pathname:typeof u=="string"?u:u.pathname,search:"",hash:"",...typeof i=="string"?Kl(i):i,state:c,key:i&&i.key||r||X0()}}function Wa({pathname:u="/",search:i="",hash:c=""}){return i&&i!=="?"&&(u+=i.charAt(0)==="?"?i:"?"+i),c&&c!=="#"&&(u+=c.charAt(0)==="#"?c:"#"+c),u}function Kl(u){let i={};if(u){let c=u.indexOf("#");c>=0&&(i.hash=u.substring(c),u=u.substring(0,c));let r=u.indexOf("?");r>=0&&(i.search=u.substring(r),u=u.substring(0,r)),u&&(i.pathname=u)}return i}function G0(u,i,c,r={}){let{window:f=document.defaultView,v5Compat:h=!1}=r,m=f.history,b="POP",y=null,v=T();v==null&&(v=0,m.replaceState({...m.state,idx:v},""));function T(){return(m.state||{idx:null}).idx}function S(){b="POP";let q=T(),H=q==null?null:q-v;v=q,y&&y({action:b,location:X.location,delta:H})}function C(q,H){b="PUSH";let Y=yr(X.location,q,H);v=T()+1;let k=nm(Y,v),F=X.createHref(Y);try{m.pushState(k,"",F)}catch(ye){if(ye instanceof DOMException&&ye.name==="DataCloneError")throw ye;f.location.assign(F)}h&&y&&y({action:b,location:X.location,delta:1})}function z(q,H){b="REPLACE";let Y=yr(X.location,q,H);v=T();let k=nm(Y,v),F=X.createHref(Y);m.replaceState(k,"",F),h&&y&&y({action:b,location:X.location,delta:0})}function L(q){return V0(q)}let X={get action(){return b},get location(){return u(f,m)},listen(q){if(y)throw new Error("A history only accepts one active listener");return f.addEventListener(tm,S),y=q,()=>{f.removeEventListener(tm,S),y=null}},createHref(q){return i(f,q)},createURL:L,encodeLocation(q){let H=L(q);return{pathname:H.pathname,search:H.search,hash:H.hash}},push:C,replace:z,go(q){return m.go(q)}};return X}function V0(u,i=!1){let c="http://localhost";typeof window<"u"&&(c=window.location.origin!=="null"?window.location.origin:window.location.href),Oe(c,"No window.location.(origin|href) available to create URL");let r=typeof u=="string"?u:Wa(u);return r=r.replace(/ $/,"%20"),!i&&r.startsWith("//")&&(r=c+r),new URL(r,c)}function xm(u,i,c="/"){return Q0(u,i,c,!1)}function Q0(u,i,c,r){let f=typeof i=="string"?Kl(i):i,h=on(f.pathname||"/",c);if(h==null)return null;let m=_m(u);Z0(m);let b=null;for(let y=0;b==null&&y{let T={relativePath:v===void 0?m.path||"":v,caseSensitive:m.caseSensitive===!0,childrenIndex:b,route:m};if(T.relativePath.startsWith("/")){if(!T.relativePath.startsWith(r)&&y)return;Oe(T.relativePath.startsWith(r),`Absolute route path "${T.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),T.relativePath=T.relativePath.slice(r.length)}let S=rn([r,T.relativePath]),C=c.concat(T);m.children&&m.children.length>0&&(Oe(m.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${S}".`),_m(m.children,i,C,S,y)),!(m.path==null&&!m.index)&&i.push({path:S,score:I0(S,m.index),routesMeta:C})};return u.forEach((m,b)=>{if(m.path===""||!m.path?.includes("?"))h(m,b);else for(let y of Em(m.path))h(m,b,!0,y)}),i}function Em(u){let i=u.split("/");if(i.length===0)return[];let[c,...r]=i,f=c.endsWith("?"),h=c.replace(/\?$/,"");if(r.length===0)return f?[h,""]:[h];let m=Em(r.join("/")),b=[];return b.push(...m.map(y=>y===""?h:[h,y].join("/"))),f&&b.push(...m),b.map(y=>u.startsWith("/")&&y===""?"/":y)}function Z0(u){u.sort((i,c)=>i.score!==c.score?c.score-i.score:ev(i.routesMeta.map(r=>r.childrenIndex),c.routesMeta.map(r=>r.childrenIndex)))}var K0=/^:[\w-]+$/,J0=3,$0=2,W0=1,F0=10,P0=-2,lm=u=>u==="*";function I0(u,i){let c=u.split("/"),r=c.length;return c.some(lm)&&(r+=P0),i&&(r+=$0),c.filter(f=>!lm(f)).reduce((f,h)=>f+(K0.test(h)?J0:h===""?W0:F0),r)}function ev(u,i){return u.length===i.length&&u.slice(0,-1).every((r,f)=>r===i[f])?u[u.length-1]-i[i.length-1]:0}function tv(u,i,c=!1){let{routesMeta:r}=u,f={},h="/",m=[];for(let b=0;b{if(T==="*"){let L=b[C]||"";m=h.slice(0,h.length-L.length).replace(/(.)\/+$/,"$1")}const z=b[C];return S&&!z?v[T]=void 0:v[T]=(z||"").replace(/%2F/g,"/"),v},{}),pathname:h,pathnameBase:m,pattern:u}}function nv(u,i=!1,c=!0){jt(u==="*"||!u.endsWith("*")||u.endsWith("/*"),`Route path "${u}" will be treated as if it were "${u.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${u.replace(/\*$/,"/*")}".`);let r=[],f="^"+u.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(m,b,y)=>(r.push({paramName:b,isOptional:y!=null}),y?"/?([^\\/]+)?":"/([^\\/]+)")).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return u.endsWith("*")?(r.push({paramName:"*"}),f+=u==="*"||u==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):c?f+="\\/*$":u!==""&&u!=="/"&&(f+="(?:(?=\\/|$))"),[new RegExp(f,i?void 0:"i"),r]}function lv(u){try{return u.split("/").map(i=>decodeURIComponent(i).replace(/\//g,"%2F")).join("/")}catch(i){return jt(!1,`The URL path "${u}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${i}).`),u}}function on(u,i){if(i==="/")return u;if(!u.toLowerCase().startsWith(i.toLowerCase()))return null;let c=i.endsWith("/")?i.length-1:i.length,r=u.charAt(c);return r&&r!=="/"?null:u.slice(c)||"/"}var av=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,iv=u=>av.test(u);function uv(u,i="/"){let{pathname:c,search:r="",hash:f=""}=typeof u=="string"?Kl(u):u,h;if(c)if(iv(c))h=c;else{if(c.includes("//")){let m=c;c=c.replace(/\/\/+/g,"/"),jt(!1,`Pathnames cannot have embedded double slashes - normalizing ${m} -> ${c}`)}c.startsWith("/")?h=am(c.substring(1),"/"):h=am(c,i)}else h=i;return{pathname:h,search:rv(r),hash:ov(f)}}function am(u,i){let c=i.replace(/\/+$/,"").split("/");return u.split("/").forEach(f=>{f===".."?c.length>1&&c.pop():f!=="."&&c.push(f)}),c.length>1?c.join("/"):"/"}function rr(u,i,c,r){return`Cannot include a '${u}' character in a manually specified \`to.${i}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${c}\` field. Alternatively you may provide the full path as a string in and the router will parse it for you.`}function sv(u){return u.filter((i,c)=>c===0||i.route.path&&i.route.path.length>0)}function Tm(u){let i=sv(u);return i.map((c,r)=>r===i.length-1?c.pathname:c.pathnameBase)}function Am(u,i,c,r=!1){let f;typeof u=="string"?f=Kl(u):(f={...u},Oe(!f.pathname||!f.pathname.includes("?"),rr("?","pathname","search",f)),Oe(!f.pathname||!f.pathname.includes("#"),rr("#","pathname","hash",f)),Oe(!f.search||!f.search.includes("#"),rr("#","search","hash",f)));let h=u===""||f.pathname==="",m=h?"/":f.pathname,b;if(m==null)b=c;else{let S=i.length-1;if(!r&&m.startsWith("..")){let C=m.split("/");for(;C[0]==="..";)C.shift(),S-=1;f.pathname=C.join("/")}b=S>=0?i[S]:"/"}let y=uv(f,b),v=m&&m!=="/"&&m.endsWith("/"),T=(h||m===".")&&c.endsWith("/");return!y.pathname.endsWith("/")&&(v||T)&&(y.pathname+="/"),y}var rn=u=>u.join("/").replace(/\/\/+/g,"/"),cv=u=>u.replace(/\/+$/,"").replace(/^\/*/,"/"),rv=u=>!u||u==="?"?"":u.startsWith("?")?u:"?"+u,ov=u=>!u||u==="#"?"":u.startsWith("#")?u:"#"+u;function fv(u){return u!=null&&typeof u.status=="number"&&typeof u.statusText=="string"&&typeof u.internal=="boolean"&&"data"in u}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var Cm=["POST","PUT","PATCH","DELETE"];new Set(Cm);var hv=["GET",...Cm];new Set(hv);var Jl=E.createContext(null);Jl.displayName="DataRouter";var Du=E.createContext(null);Du.displayName="DataRouterState";E.createContext(!1);var Rm=E.createContext({isTransitioning:!1});Rm.displayName="ViewTransition";var dv=E.createContext(new Map);dv.displayName="Fetchers";var mv=E.createContext(null);mv.displayName="Await";var Yt=E.createContext(null);Yt.displayName="Navigation";var Fa=E.createContext(null);Fa.displayName="Location";var fn=E.createContext({outlet:null,matches:[],isDataRoute:!1});fn.displayName="Route";var Ar=E.createContext(null);Ar.displayName="RouteError";function pv(u,{relative:i}={}){Oe(Pa(),"useHref() may be used only in the context of a component.");let{basename:c,navigator:r}=E.useContext(Yt),{hash:f,pathname:h,search:m}=Ia(u,{relative:i}),b=h;return c!=="/"&&(b=h==="/"?c:rn([c,h])),r.createHref({pathname:b,search:m,hash:f})}function Pa(){return E.useContext(Fa)!=null}function sl(){return Oe(Pa(),"useLocation() may be used only in the context of a component."),E.useContext(Fa).location}var Nm="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function Om(u){E.useContext(Yt).static||E.useLayoutEffect(u)}function yv(){let{isDataRoute:u}=E.useContext(fn);return u?Ov():vv()}function vv(){Oe(Pa(),"useNavigate() may be used only in the context of a component.");let u=E.useContext(Jl),{basename:i,navigator:c}=E.useContext(Yt),{matches:r}=E.useContext(fn),{pathname:f}=sl(),h=JSON.stringify(Tm(r)),m=E.useRef(!1);return Om(()=>{m.current=!0}),E.useCallback((y,v={})=>{if(jt(m.current,Nm),!m.current)return;if(typeof y=="number"){c.go(y);return}let T=Am(y,JSON.parse(h),f,v.relative==="path");u==null&&i!=="/"&&(T.pathname=T.pathname==="/"?i:rn([i,T.pathname])),(v.replace?c.replace:c.push)(T,v.state,v)},[i,c,h,f,u])}E.createContext(null);function Ia(u,{relative:i}={}){let{matches:c}=E.useContext(fn),{pathname:r}=sl(),f=JSON.stringify(Tm(c));return E.useMemo(()=>Am(u,JSON.parse(f),r,i==="path"),[u,f,r,i])}function gv(u,i){return zm(u,i)}function zm(u,i,c,r,f){Oe(Pa(),"useRoutes() may be used only in the context of a component.");let{navigator:h}=E.useContext(Yt),{matches:m}=E.useContext(fn),b=m[m.length-1],y=b?b.params:{},v=b?b.pathname:"/",T=b?b.pathnameBase:"/",S=b&&b.route;{let Y=S&&S.path||"";Mm(v,!S||Y.endsWith("*")||Y.endsWith("*?"),`You rendered descendant (or called \`useRoutes()\`) at "${v}" (under ) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render. -Please change the parent to .`)}let C=sl(),z;if(i){let Y=typeof i=="string"?Kl(i):i;Oe(T==="/"||Y.pathname?.startsWith(T),`When overriding the location using \`\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${T}" but pathname "${Y.pathname}" was given in the \`location\` prop.`),z=Y}else z=C;let L=z.pathname||"/",X=L;if(T!=="/"){let Y=T.replace(/^\//,"").split("/");X="/"+L.replace(/^\//,"").split("/").slice(Y.length).join("/")}let q=_m(u,{pathname:X});jt(S||q!=null,`No routes matched location "${z.pathname}${z.search}${z.hash}" `),jt(q==null||q[q.length-1].route.element!==void 0||q[q.length-1].route.Component!==void 0||q[q.length-1].route.lazy!==void 0,`Matched leaf route at location "${z.pathname}${z.search}${z.hash}" does not have an element or Component. This means it will render an with a null value by default resulting in an "empty" page.`);let H=Ev(q&&q.map(Y=>Object.assign({},Y,{params:Object.assign({},y,Y.params),pathname:cn([T,h.encodeLocation?h.encodeLocation(Y.pathname.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:Y.pathname]),pathnameBase:Y.pathnameBase==="/"?T:cn([T,h.encodeLocation?h.encodeLocation(Y.pathnameBase.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:Y.pathnameBase])})),m,c,r,f);return i&&H?E.createElement(Fa.Provider,{value:{location:{pathname:"/",search:"",hash:"",state:null,key:"default",...z},navigationType:"POP"}},H):H}function bv(){let u=Nv(),i=fv(u)?`${u.status} ${u.statusText}`:u instanceof Error?u.message:JSON.stringify(u),c=u instanceof Error?u.stack:null,r="rgba(200,200,200, 0.5)",f={padding:"0.5rem",backgroundColor:r},h={padding:"2px 4px",backgroundColor:r},m=null;return console.error("Error handled by React Router default ErrorBoundary:",u),m=E.createElement(E.Fragment,null,E.createElement("p",null,"💿 Hey developer 👋"),E.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",E.createElement("code",{style:h},"ErrorBoundary")," or"," ",E.createElement("code",{style:h},"errorElement")," prop on your route.")),E.createElement(E.Fragment,null,E.createElement("h2",null,"Unexpected Application Error!"),E.createElement("h3",{style:{fontStyle:"italic"}},i),c?E.createElement("pre",{style:f},c):null,m)}var Sv=E.createElement(bv,null),xv=class extends E.Component{constructor(u){super(u),this.state={location:u.location,revalidation:u.revalidation,error:u.error}}static getDerivedStateFromError(u){return{error:u}}static getDerivedStateFromProps(u,i){return i.location!==u.location||i.revalidation!=="idle"&&u.revalidation==="idle"?{error:u.error,location:u.location,revalidation:u.revalidation}:{error:u.error!==void 0?u.error:i.error,location:i.location,revalidation:u.revalidation||i.revalidation}}componentDidCatch(u,i){this.props.onError?this.props.onError(u,i):console.error("React Router caught the following error during render",u)}render(){return this.state.error!==void 0?E.createElement(on.Provider,{value:this.props.routeContext},E.createElement(Ar.Provider,{value:this.state.error,children:this.props.component})):this.props.children}};function _v({routeContext:u,match:i,children:c}){let r=E.useContext(Jl);return r&&r.static&&r.staticContext&&(i.route.errorElement||i.route.ErrorBoundary)&&(r.staticContext._deepestRenderedBoundaryId=i.route.id),E.createElement(on.Provider,{value:u},c)}function Ev(u,i=[],c=null,r=null,f=null){if(u==null){if(!c)return null;if(c.errors)u=c.matches;else if(i.length===0&&!c.initialized&&c.matches.length>0)u=c.matches;else return null}let h=u,m=c?.errors;if(m!=null){let T=h.findIndex(S=>S.route.id&&m?.[S.route.id]!==void 0);Oe(T>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(m).join(",")}`),h=h.slice(0,Math.min(h.length,T+1))}let b=!1,y=-1;if(c)for(let T=0;T=0?h=h.slice(0,y+1):h=[h[0]];break}}}let v=c&&r?(T,S)=>{r(T,{location:c.location,params:c.matches?.[0]?.params??{},errorInfo:S})}:void 0;return h.reduceRight((T,S,C)=>{let z,L=!1,X=null,q=null;c&&(z=m&&S.route.id?m[S.route.id]:void 0,X=S.route.errorElement||Sv,b&&(y<0&&C===0?(Dm("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),L=!0,q=null):y===C&&(L=!0,q=S.route.hydrateFallbackElement||null)));let H=i.concat(h.slice(0,C+1)),Y=()=>{let k;return z?k=X:L?k=q:S.route.Component?k=E.createElement(S.route.Component,null):S.route.element?k=S.route.element:k=T,E.createElement(_v,{match:S,routeContext:{outlet:T,matches:H,isDataRoute:c!=null},children:k})};return c&&(S.route.ErrorBoundary||S.route.errorElement||C===0)?E.createElement(xv,{location:c.location,revalidation:c.revalidation,component:X,error:z,children:Y(),routeContext:{outlet:null,matches:H,isDataRoute:!0},onError:v}):Y()},null)}function Cr(u){return`${u} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function Tv(u){let i=E.useContext(Jl);return Oe(i,Cr(u)),i}function Av(u){let i=E.useContext(Du);return Oe(i,Cr(u)),i}function Cv(u){let i=E.useContext(on);return Oe(i,Cr(u)),i}function Rr(u){let i=Cv(u),c=i.matches[i.matches.length-1];return Oe(c.route.id,`${u} can only be used on routes that contain a unique "id"`),c.route.id}function Rv(){return Rr("useRouteId")}function Nv(){let u=E.useContext(Ar),i=Av("useRouteError"),c=Rr("useRouteError");return u!==void 0?u:i.errors?.[c]}function Ov(){let{router:u}=Tv("useNavigate"),i=Rr("useNavigate"),c=E.useRef(!1);return zm(()=>{c.current=!0}),E.useCallback(async(f,h={})=>{jt(c.current,Om),c.current&&(typeof f=="number"?u.navigate(f):await u.navigate(f,{fromRouteId:i,...h}))},[u,i])}var um={};function Dm(u,i,c){!i&&!um[u]&&(um[u]=!0,jt(!1,c))}E.memo(zv);function zv({routes:u,future:i,state:c,unstable_onError:r}){return Mm(u,void 0,c,r,i)}function vr(u){Oe(!1,"A is only ever to be used as the child of element, never rendered directly. Please wrap your in a .")}function Mv({basename:u="/",children:i=null,location:c,navigationType:r="POP",navigator:f,static:h=!1}){Oe(!Pa(),"You cannot render a inside another . You should never have more than one in your app.");let m=u.replace(/^\/*/,"/"),b=E.useMemo(()=>({basename:m,navigator:f,static:h,future:{}}),[m,f,h]);typeof c=="string"&&(c=Kl(c));let{pathname:y="/",search:v="",hash:T="",state:S=null,key:C="default"}=c,z=E.useMemo(()=>{let L=rn(y,m);return L==null?null:{location:{pathname:L,search:v,hash:T,state:S,key:C},navigationType:r}},[m,y,v,T,S,C,r]);return jt(z!=null,` is not able to match the URL "${y}${v}${T}" because it does not start with the basename, so the won't render anything.`),z==null?null:E.createElement(Yt.Provider,{value:b},E.createElement(Fa.Provider,{children:i,value:z}))}function Dv({children:u,location:i}){return gv(gr(u),i)}function gr(u,i=[]){let c=[];return E.Children.forEach(u,(r,f)=>{if(!E.isValidElement(r))return;let h=[...i,f];if(r.type===E.Fragment){c.push.apply(c,gr(r.props.children,h));return}Oe(r.type===vr,`[${typeof r.type=="string"?r.type:r.type.name}] is not a component. All component children of must be a or `),Oe(!r.props.index||!r.props.children,"An index route cannot have child routes.");let m={id:r.props.id||h.join("-"),caseSensitive:r.props.caseSensitive,element:r.props.element,Component:r.props.Component,index:r.props.index,path:r.props.path,middleware:r.props.middleware,loader:r.props.loader,action:r.props.action,hydrateFallbackElement:r.props.hydrateFallbackElement,HydrateFallback:r.props.HydrateFallback,errorElement:r.props.errorElement,ErrorBoundary:r.props.ErrorBoundary,hasErrorBoundary:r.props.hasErrorBoundary===!0||r.props.ErrorBoundary!=null||r.props.errorElement!=null,shouldRevalidate:r.props.shouldRevalidate,handle:r.props.handle,lazy:r.props.lazy};r.props.children&&(m.children=gr(r.props.children,h)),c.push(m)}),c}var Tu="get",Au="application/x-www-form-urlencoded";function ju(u){return u!=null&&typeof u.tagName=="string"}function jv(u){return ju(u)&&u.tagName.toLowerCase()==="button"}function wv(u){return ju(u)&&u.tagName.toLowerCase()==="form"}function Uv(u){return ju(u)&&u.tagName.toLowerCase()==="input"}function Bv(u){return!!(u.metaKey||u.altKey||u.ctrlKey||u.shiftKey)}function Lv(u,i){return u.button===0&&(!i||i==="_self")&&!Bv(u)}var bu=null;function Hv(){if(bu===null)try{new FormData(document.createElement("form"),0),bu=!1}catch{bu=!0}return bu}var qv=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function or(u){return u!=null&&!qv.has(u)?(jt(!1,`"${u}" is not a valid \`encType\` for \`\`/\`\` and will default to "${Au}"`),null):u}function Yv(u,i){let c,r,f,h,m;if(wv(u)){let b=u.getAttribute("action");r=b?rn(b,i):null,c=u.getAttribute("method")||Tu,f=or(u.getAttribute("enctype"))||Au,h=new FormData(u)}else if(jv(u)||Uv(u)&&(u.type==="submit"||u.type==="image")){let b=u.form;if(b==null)throw new Error('Cannot submit a
- +
); diff --git a/webui/src/components/SessionSnapshot.jsx b/webui/src/components/SessionSnapshot.jsx new file mode 100644 index 00000000..417e1e96 --- /dev/null +++ b/webui/src/components/SessionSnapshot.jsx @@ -0,0 +1,13 @@ +import { useMemo } from 'react'; +import { useSession } from '../context/SessionContext.jsx'; + +export default function SessionSnapshot() { + const { session } = useSession(); + const payload = useMemo(() => JSON.stringify(session ?? {}, null, 2), [session]); + return ( +
+

Session snapshot

+
{payload}
+
+ ); +} From ce5cd909e10cc610aeb97f76b47c55d0b34b2f84 Mon Sep 17 00:00:00 2001 From: legop3 Date: Mon, 17 Nov 2025 04:37:41 -0500 Subject: [PATCH 58/61] guh --- .../assets/{index-CCsZswS4.js => index-Dlt2f9-i.js} | 12 ++++++------ server/public/index.html | 2 +- webui/src/App.jsx | 3 ++- 3 files changed, 9 insertions(+), 8 deletions(-) rename server/public/assets/{index-CCsZswS4.js => index-Dlt2f9-i.js} (78%) diff --git a/server/public/assets/index-CCsZswS4.js b/server/public/assets/index-Dlt2f9-i.js similarity index 78% rename from server/public/assets/index-CCsZswS4.js rename to server/public/assets/index-Dlt2f9-i.js index bc45080b..20f58eb4 100644 --- a/server/public/assets/index-CCsZswS4.js +++ b/server/public/assets/index-Dlt2f9-i.js @@ -1,11 +1,11 @@ -(function(){const i=document.createElement("link").relList;if(i&&i.supports&&i.supports("modulepreload"))return;for(const f of document.querySelectorAll('link[rel="modulepreload"]'))r(f);new MutationObserver(f=>{for(const h of f)if(h.type==="childList")for(const m of h.addedNodes)m.tagName==="LINK"&&m.rel==="modulepreload"&&r(m)}).observe(document,{childList:!0,subtree:!0});function c(f){const h={};return f.integrity&&(h.integrity=f.integrity),f.referrerPolicy&&(h.referrerPolicy=f.referrerPolicy),f.crossOrigin==="use-credentials"?h.credentials="include":f.crossOrigin==="anonymous"?h.credentials="omit":h.credentials="same-origin",h}function r(f){if(f.ep)return;f.ep=!0;const h=c(f);fetch(f.href,h)}})();var lr={exports:{}},Ga={};var Qd;function M0(){if(Qd)return Ga;Qd=1;var u=Symbol.for("react.transitional.element"),i=Symbol.for("react.fragment");function c(r,f,h){var m=null;if(h!==void 0&&(m=""+h),f.key!==void 0&&(m=""+f.key),"key"in f){h={};for(var b in f)b!=="key"&&(h[b]=f[b])}else h=f;return f=h.ref,{$$typeof:u,type:r,key:m,ref:f!==void 0?f:null,props:h}}return Ga.Fragment=i,Ga.jsx=c,Ga.jsxs=c,Ga}var Zd;function D0(){return Zd||(Zd=1,lr.exports=M0()),lr.exports}var p=D0(),ar={exports:{}},I={};var Kd;function j0(){if(Kd)return I;Kd=1;var u=Symbol.for("react.transitional.element"),i=Symbol.for("react.portal"),c=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),f=Symbol.for("react.profiler"),h=Symbol.for("react.consumer"),m=Symbol.for("react.context"),b=Symbol.for("react.forward_ref"),y=Symbol.for("react.suspense"),v=Symbol.for("react.memo"),T=Symbol.for("react.lazy"),S=Symbol.for("react.activity"),C=Symbol.iterator;function z(_){return _===null||typeof _!="object"?null:(_=C&&_[C]||_["@@iterator"],typeof _=="function"?_:null)}var L={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},X=Object.assign,q={};function H(_,B,V){this.props=_,this.context=B,this.refs=q,this.updater=V||L}H.prototype.isReactComponent={},H.prototype.setState=function(_,B){if(typeof _!="object"&&typeof _!="function"&&_!=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,_,B,"setState")},H.prototype.forceUpdate=function(_){this.updater.enqueueForceUpdate(this,_,"forceUpdate")};function Y(){}Y.prototype=H.prototype;function k(_,B,V){this.props=_,this.context=B,this.refs=q,this.updater=V||L}var F=k.prototype=new Y;F.constructor=k,X(F,H.prototype),F.isPureReactComponent=!0;var ye=Array.isArray;function Re(){}var $={H:null,A:null,T:null,S:null},Te=Object.prototype.hasOwnProperty;function xe(_,B,V){var Z=V.ref;return{$$typeof:u,type:_,key:B,ref:Z!==void 0?Z:null,props:V}}function Ue(_,B){return xe(_.type,B,_.props)}function Xe(_){return typeof _=="object"&&_!==null&&_.$$typeof===u}function We(_){var B={"=":"=0",":":"=2"};return"$"+_.replace(/[=:]/g,function(V){return B[V]})}var Hn=/\/+/g;function Xt(_,B){return typeof _=="object"&&_!==null&&_.key!=null?We(""+_.key):B.toString(36)}function Nt(_){switch(_.status){case"fulfilled":return _.value;case"rejected":throw _.reason;default:switch(typeof _.status=="string"?_.then(Re,Re):(_.status="pending",_.then(function(B){_.status==="pending"&&(_.status="fulfilled",_.value=B)},function(B){_.status==="pending"&&(_.status="rejected",_.reason=B)})),_.status){case"fulfilled":return _.value;case"rejected":throw _.reason}}throw _}function j(_,B,V,Z,ee){var le=typeof _;(le==="undefined"||le==="boolean")&&(_=null);var de=!1;if(_===null)de=!0;else switch(le){case"bigint":case"string":case"number":de=!0;break;case"object":switch(_.$$typeof){case u:case i:de=!0;break;case T:return de=_._init,j(de(_._payload),B,V,Z,ee)}}if(de)return ee=ee(_),de=Z===""?"."+Xt(_,0):Z,ye(ee)?(V="",de!=null&&(V=de.replace(Hn,"$&/")+"/"),j(ee,B,V,"",function(Wl){return Wl})):ee!=null&&(Xe(ee)&&(ee=Ue(ee,V+(ee.key==null||_&&_.key===ee.key?"":(""+ee.key).replace(Hn,"$&/")+"/")+de)),B.push(ee)),1;de=0;var Pe=Z===""?".":Z+":";if(ye(_))for(var De=0;De<_.length;De++)Z=_[De],le=Pe+Xt(Z,De),de+=j(Z,B,V,le,ee);else if(De=z(_),typeof De=="function")for(_=De.call(_),De=0;!(Z=_.next()).done;)Z=Z.value,le=Pe+Xt(Z,De++),de+=j(Z,B,V,le,ee);else if(le==="object"){if(typeof _.then=="function")return j(Nt(_),B,V,Z,ee);throw B=String(_),Error("Objects are not valid as a React child (found: "+(B==="[object Object]"?"object with keys {"+Object.keys(_).join(", ")+"}":B)+"). If you meant to render a collection of children, use an array instead.")}return de}function G(_,B,V){if(_==null)return _;var Z=[],ee=0;return j(_,Z,"","",function(le){return B.call(V,le,ee++)}),Z}function P(_){if(_._status===-1){var B=_._result;B=B(),B.then(function(V){(_._status===0||_._status===-1)&&(_._status=1,_._result=V)},function(V){(_._status===0||_._status===-1)&&(_._status=2,_._result=V)}),_._status===-1&&(_._status=0,_._result=B)}if(_._status===1)return _._result.default;throw _._result}var ve=typeof reportError=="function"?reportError:function(_){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var B=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof _=="object"&&_!==null&&typeof _.message=="string"?String(_.message):String(_),error:_});if(!window.dispatchEvent(B))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",_);return}console.error(_)},_e={map:G,forEach:function(_,B,V){G(_,function(){B.apply(this,arguments)},V)},count:function(_){var B=0;return G(_,function(){B++}),B},toArray:function(_){return G(_,function(B){return B})||[]},only:function(_){if(!Xe(_))throw Error("React.Children.only expected to receive a single React element child.");return _}};return I.Activity=S,I.Children=_e,I.Component=H,I.Fragment=c,I.Profiler=f,I.PureComponent=k,I.StrictMode=r,I.Suspense=y,I.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=$,I.__COMPILER_RUNTIME={__proto__:null,c:function(_){return $.H.useMemoCache(_)}},I.cache=function(_){return function(){return _.apply(null,arguments)}},I.cacheSignal=function(){return null},I.cloneElement=function(_,B,V){if(_==null)throw Error("The argument must be a React element, but you passed "+_+".");var Z=X({},_.props),ee=_.key;if(B!=null)for(le in B.key!==void 0&&(ee=""+B.key),B)!Te.call(B,le)||le==="key"||le==="__self"||le==="__source"||le==="ref"&&B.ref===void 0||(Z[le]=B[le]);var le=arguments.length-2;if(le===1)Z.children=V;else if(1>>1,_e=j[ve];if(0>>1;ve<_;){var B=2*(ve+1)-1,V=j[B],Z=B+1,ee=j[Z];if(0>f(V,P))Z<_e&&0>f(ee,V)?(j[ve]=ee,j[Z]=P,ve=Z):(j[ve]=V,j[B]=P,ve=B);else if(Z<_e&&0>f(ee,P))j[ve]=ee,j[Z]=P,ve=Z;else break e}}return G}function f(j,G){var P=j.sortIndex-G.sortIndex;return P!==0?P:j.id-G.id}if(u.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var h=performance;u.unstable_now=function(){return h.now()}}else{var m=Date,b=m.now();u.unstable_now=function(){return m.now()-b}}var y=[],v=[],T=1,S=null,C=3,z=!1,L=!1,X=!1,q=!1,H=typeof setTimeout=="function"?setTimeout:null,Y=typeof clearTimeout=="function"?clearTimeout:null,k=typeof setImmediate<"u"?setImmediate:null;function F(j){for(var G=c(v);G!==null;){if(G.callback===null)r(v);else if(G.startTime<=j)r(v),G.sortIndex=G.expirationTime,i(y,G);else break;G=c(v)}}function ye(j){if(X=!1,F(j),!L)if(c(y)!==null)L=!0,Re||(Re=!0,We());else{var G=c(v);G!==null&&Nt(ye,G.startTime-j)}}var Re=!1,$=-1,Te=5,xe=-1;function Ue(){return q?!0:!(u.unstable_now()-xej&&Ue());){var ve=S.callback;if(typeof ve=="function"){S.callback=null,C=S.priorityLevel;var _e=ve(S.expirationTime<=j);if(j=u.unstable_now(),typeof _e=="function"){S.callback=_e,F(j),G=!0;break t}S===c(y)&&r(y),F(j)}else r(y);S=c(y)}if(S!==null)G=!0;else{var _=c(v);_!==null&&Nt(ye,_.startTime-j),G=!1}}break e}finally{S=null,C=P,z=!1}G=void 0}}finally{G?We():Re=!1}}}var We;if(typeof k=="function")We=function(){k(Xe)};else if(typeof MessageChannel<"u"){var Hn=new MessageChannel,Xt=Hn.port2;Hn.port1.onmessage=Xe,We=function(){Xt.postMessage(null)}}else We=function(){H(Xe,0)};function Nt(j,G){$=H(function(){j(u.unstable_now())},G)}u.unstable_IdlePriority=5,u.unstable_ImmediatePriority=1,u.unstable_LowPriority=4,u.unstable_NormalPriority=3,u.unstable_Profiling=null,u.unstable_UserBlockingPriority=2,u.unstable_cancelCallback=function(j){j.callback=null},u.unstable_forceFrameRate=function(j){0>j||125ve?(j.sortIndex=P,i(v,j),c(y)===null&&j===c(v)&&(X?(Y($),$=-1):X=!0,Nt(ye,P-ve))):(j.sortIndex=_e,i(y,j),L||z||(L=!0,Re||(Re=!0,We()))),j},u.unstable_shouldYield=Ue,u.unstable_wrapCallback=function(j){var G=C;return function(){var P=C;C=G;try{return j.apply(this,arguments)}finally{C=P}}}})(sr)),sr}var Wd;function U0(){return Wd||(Wd=1,ur.exports=w0()),ur.exports}var cr={exports:{}},Fe={};var Fd;function B0(){if(Fd)return Fe;Fd=1;var u=Mu();function i(y){var v="https://react.dev/errors/"+y;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(u)}catch(i){console.error(i)}}return u(),cr.exports=B0(),cr.exports}var Id;function H0(){if(Id)return Va;Id=1;var u=U0(),i=Mu(),c=L0();function r(e){var t="https://react.dev/errors/"+e;if(1_e||(e.current=ve[_e],ve[_e]=null,_e--)}function V(e,t){_e++,ve[_e]=e.current,e.current=t}var Z=_(null),ee=_(null),le=_(null),de=_(null);function Pe(e,t){switch(V(le,t),V(ee,e),V(Z,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?md(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=md(t),e=pd(t,e);else switch(e){case"svg":e=1;break;case"math":e=2;break;default:e=0}}B(Z),V(Z,e)}function De(){B(Z),B(ee),B(le)}function Wl(e){e.memoizedState!==null&&V(de,e);var t=Z.current,n=pd(t,e.type);t!==n&&(V(ee,e),V(Z,n))}function ti(e){ee.current===e&&(B(Z),B(ee)),de.current===e&&(B(de),qa._currentValue=P)}var qu,Xr;function qn(e){if(qu===void 0)try{throw Error()}catch(n){var t=n.stack.trim().match(/\n( *(at )?)/);qu=t&&t[1]||"",Xr=-1{for(const h of f)if(h.type==="childList")for(const m of h.addedNodes)m.tagName==="LINK"&&m.rel==="modulepreload"&&r(m)}).observe(document,{childList:!0,subtree:!0});function c(f){const h={};return f.integrity&&(h.integrity=f.integrity),f.referrerPolicy&&(h.referrerPolicy=f.referrerPolicy),f.crossOrigin==="use-credentials"?h.credentials="include":f.crossOrigin==="anonymous"?h.credentials="omit":h.credentials="same-origin",h}function r(f){if(f.ep)return;f.ep=!0;const h=c(f);fetch(f.href,h)}})();var nr={exports:{}},Ga={};var Zd;function M0(){if(Zd)return Ga;Zd=1;var u=Symbol.for("react.transitional.element"),i=Symbol.for("react.fragment");function c(r,f,h){var m=null;if(h!==void 0&&(m=""+h),f.key!==void 0&&(m=""+f.key),"key"in f){h={};for(var b in f)b!=="key"&&(h[b]=f[b])}else h=f;return f=h.ref,{$$typeof:u,type:r,key:m,ref:f!==void 0?f:null,props:h}}return Ga.Fragment=i,Ga.jsx=c,Ga.jsxs=c,Ga}var Kd;function D0(){return Kd||(Kd=1,nr.exports=M0()),nr.exports}var p=D0(),lr={exports:{}},I={};var Jd;function j0(){if(Jd)return I;Jd=1;var u=Symbol.for("react.transitional.element"),i=Symbol.for("react.portal"),c=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),f=Symbol.for("react.profiler"),h=Symbol.for("react.consumer"),m=Symbol.for("react.context"),b=Symbol.for("react.forward_ref"),y=Symbol.for("react.suspense"),v=Symbol.for("react.memo"),T=Symbol.for("react.lazy"),S=Symbol.for("react.activity"),C=Symbol.iterator;function z(_){return _===null||typeof _!="object"?null:(_=C&&_[C]||_["@@iterator"],typeof _=="function"?_:null)}var L={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},X=Object.assign,q={};function H(_,B,V){this.props=_,this.context=B,this.refs=q,this.updater=V||L}H.prototype.isReactComponent={},H.prototype.setState=function(_,B){if(typeof _!="object"&&typeof _!="function"&&_!=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,_,B,"setState")},H.prototype.forceUpdate=function(_){this.updater.enqueueForceUpdate(this,_,"forceUpdate")};function Y(){}Y.prototype=H.prototype;function k(_,B,V){this.props=_,this.context=B,this.refs=q,this.updater=V||L}var F=k.prototype=new Y;F.constructor=k,X(F,H.prototype),F.isPureReactComponent=!0;var ye=Array.isArray;function Re(){}var $={H:null,A:null,T:null,S:null},Te=Object.prototype.hasOwnProperty;function xe(_,B,V){var Z=V.ref;return{$$typeof:u,type:_,key:B,ref:Z!==void 0?Z:null,props:V}}function Ue(_,B){return xe(_.type,B,_.props)}function Xe(_){return typeof _=="object"&&_!==null&&_.$$typeof===u}function We(_){var B={"=":"=0",":":"=2"};return"$"+_.replace(/[=:]/g,function(V){return B[V]})}var Hn=/\/+/g;function Xt(_,B){return typeof _=="object"&&_!==null&&_.key!=null?We(""+_.key):B.toString(36)}function Nt(_){switch(_.status){case"fulfilled":return _.value;case"rejected":throw _.reason;default:switch(typeof _.status=="string"?_.then(Re,Re):(_.status="pending",_.then(function(B){_.status==="pending"&&(_.status="fulfilled",_.value=B)},function(B){_.status==="pending"&&(_.status="rejected",_.reason=B)})),_.status){case"fulfilled":return _.value;case"rejected":throw _.reason}}throw _}function j(_,B,V,Z,ee){var le=typeof _;(le==="undefined"||le==="boolean")&&(_=null);var de=!1;if(_===null)de=!0;else switch(le){case"bigint":case"string":case"number":de=!0;break;case"object":switch(_.$$typeof){case u:case i:de=!0;break;case T:return de=_._init,j(de(_._payload),B,V,Z,ee)}}if(de)return ee=ee(_),de=Z===""?"."+Xt(_,0):Z,ye(ee)?(V="",de!=null&&(V=de.replace(Hn,"$&/")+"/"),j(ee,B,V,"",function(Wl){return Wl})):ee!=null&&(Xe(ee)&&(ee=Ue(ee,V+(ee.key==null||_&&_.key===ee.key?"":(""+ee.key).replace(Hn,"$&/")+"/")+de)),B.push(ee)),1;de=0;var Pe=Z===""?".":Z+":";if(ye(_))for(var De=0;De<_.length;De++)Z=_[De],le=Pe+Xt(Z,De),de+=j(Z,B,V,le,ee);else if(De=z(_),typeof De=="function")for(_=De.call(_),De=0;!(Z=_.next()).done;)Z=Z.value,le=Pe+Xt(Z,De++),de+=j(Z,B,V,le,ee);else if(le==="object"){if(typeof _.then=="function")return j(Nt(_),B,V,Z,ee);throw B=String(_),Error("Objects are not valid as a React child (found: "+(B==="[object Object]"?"object with keys {"+Object.keys(_).join(", ")+"}":B)+"). If you meant to render a collection of children, use an array instead.")}return de}function G(_,B,V){if(_==null)return _;var Z=[],ee=0;return j(_,Z,"","",function(le){return B.call(V,le,ee++)}),Z}function P(_){if(_._status===-1){var B=_._result;B=B(),B.then(function(V){(_._status===0||_._status===-1)&&(_._status=1,_._result=V)},function(V){(_._status===0||_._status===-1)&&(_._status=2,_._result=V)}),_._status===-1&&(_._status=0,_._result=B)}if(_._status===1)return _._result.default;throw _._result}var ve=typeof reportError=="function"?reportError:function(_){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var B=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof _=="object"&&_!==null&&typeof _.message=="string"?String(_.message):String(_),error:_});if(!window.dispatchEvent(B))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",_);return}console.error(_)},_e={map:G,forEach:function(_,B,V){G(_,function(){B.apply(this,arguments)},V)},count:function(_){var B=0;return G(_,function(){B++}),B},toArray:function(_){return G(_,function(B){return B})||[]},only:function(_){if(!Xe(_))throw Error("React.Children.only expected to receive a single React element child.");return _}};return I.Activity=S,I.Children=_e,I.Component=H,I.Fragment=c,I.Profiler=f,I.PureComponent=k,I.StrictMode=r,I.Suspense=y,I.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=$,I.__COMPILER_RUNTIME={__proto__:null,c:function(_){return $.H.useMemoCache(_)}},I.cache=function(_){return function(){return _.apply(null,arguments)}},I.cacheSignal=function(){return null},I.cloneElement=function(_,B,V){if(_==null)throw Error("The argument must be a React element, but you passed "+_+".");var Z=X({},_.props),ee=_.key;if(B!=null)for(le in B.key!==void 0&&(ee=""+B.key),B)!Te.call(B,le)||le==="key"||le==="__self"||le==="__source"||le==="ref"&&B.ref===void 0||(Z[le]=B[le]);var le=arguments.length-2;if(le===1)Z.children=V;else if(1>>1,_e=j[ve];if(0>>1;ve<_;){var B=2*(ve+1)-1,V=j[B],Z=B+1,ee=j[Z];if(0>f(V,P))Z<_e&&0>f(ee,V)?(j[ve]=ee,j[Z]=P,ve=Z):(j[ve]=V,j[B]=P,ve=B);else if(Z<_e&&0>f(ee,P))j[ve]=ee,j[Z]=P,ve=Z;else break e}}return G}function f(j,G){var P=j.sortIndex-G.sortIndex;return P!==0?P:j.id-G.id}if(u.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var h=performance;u.unstable_now=function(){return h.now()}}else{var m=Date,b=m.now();u.unstable_now=function(){return m.now()-b}}var y=[],v=[],T=1,S=null,C=3,z=!1,L=!1,X=!1,q=!1,H=typeof setTimeout=="function"?setTimeout:null,Y=typeof clearTimeout=="function"?clearTimeout:null,k=typeof setImmediate<"u"?setImmediate:null;function F(j){for(var G=c(v);G!==null;){if(G.callback===null)r(v);else if(G.startTime<=j)r(v),G.sortIndex=G.expirationTime,i(y,G);else break;G=c(v)}}function ye(j){if(X=!1,F(j),!L)if(c(y)!==null)L=!0,Re||(Re=!0,We());else{var G=c(v);G!==null&&Nt(ye,G.startTime-j)}}var Re=!1,$=-1,Te=5,xe=-1;function Ue(){return q?!0:!(u.unstable_now()-xej&&Ue());){var ve=S.callback;if(typeof ve=="function"){S.callback=null,C=S.priorityLevel;var _e=ve(S.expirationTime<=j);if(j=u.unstable_now(),typeof _e=="function"){S.callback=_e,F(j),G=!0;break t}S===c(y)&&r(y),F(j)}else r(y);S=c(y)}if(S!==null)G=!0;else{var _=c(v);_!==null&&Nt(ye,_.startTime-j),G=!1}}break e}finally{S=null,C=P,z=!1}G=void 0}}finally{G?We():Re=!1}}}var We;if(typeof k=="function")We=function(){k(Xe)};else if(typeof MessageChannel<"u"){var Hn=new MessageChannel,Xt=Hn.port2;Hn.port1.onmessage=Xe,We=function(){Xt.postMessage(null)}}else We=function(){H(Xe,0)};function Nt(j,G){$=H(function(){j(u.unstable_now())},G)}u.unstable_IdlePriority=5,u.unstable_ImmediatePriority=1,u.unstable_LowPriority=4,u.unstable_NormalPriority=3,u.unstable_Profiling=null,u.unstable_UserBlockingPriority=2,u.unstable_cancelCallback=function(j){j.callback=null},u.unstable_forceFrameRate=function(j){0>j||125ve?(j.sortIndex=P,i(v,j),c(y)===null&&j===c(v)&&(X?(Y($),$=-1):X=!0,Nt(ye,P-ve))):(j.sortIndex=_e,i(y,j),L||z||(L=!0,Re||(Re=!0,We()))),j},u.unstable_shouldYield=Ue,u.unstable_wrapCallback=function(j){var G=C;return function(){var P=C;C=G;try{return j.apply(this,arguments)}finally{C=P}}}})(ur)),ur}var Fd;function U0(){return Fd||(Fd=1,ir.exports=w0()),ir.exports}var sr={exports:{}},Fe={};var Pd;function B0(){if(Pd)return Fe;Pd=1;var u=Mu();function i(y){var v="https://react.dev/errors/"+y;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(u)}catch(i){console.error(i)}}return u(),sr.exports=B0(),sr.exports}var em;function H0(){if(em)return Va;em=1;var u=U0(),i=Mu(),c=L0();function r(e){var t="https://react.dev/errors/"+e;if(1_e||(e.current=ve[_e],ve[_e]=null,_e--)}function V(e,t){_e++,ve[_e]=e.current,e.current=t}var Z=_(null),ee=_(null),le=_(null),de=_(null);function Pe(e,t){switch(V(le,t),V(ee,e),V(Z,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?pd(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=pd(t),e=yd(t,e);else switch(e){case"svg":e=1;break;case"math":e=2;break;default:e=0}}B(Z),V(Z,e)}function De(){B(Z),B(ee),B(le)}function Wl(e){e.memoizedState!==null&&V(de,e);var t=Z.current,n=yd(t,e.type);t!==n&&(V(ee,e),V(Z,n))}function ti(e){ee.current===e&&(B(Z),B(ee)),de.current===e&&(B(de),qa._currentValue=P)}var Hu,Gr;function qn(e){if(Hu===void 0)try{throw Error()}catch(n){var t=n.stack.trim().match(/\n( *(at )?)/);Hu=t&&t[1]||"",Gr=-1)":-1a||g[l]!==N[a]){var D=` -`+g[l].replace(" at new "," at ");return e.displayName&&D.includes("")&&(D=D.replace("",e.displayName)),D}while(1<=l&&0<=a);break}}}finally{Yu=!1,Error.prepareStackTrace=n}return(n=e?e.displayName||e.name:"")?qn(n):""}function cp(e,t){switch(e.tag){case 26:case 27:case 5:return qn(e.type);case 16:return qn("Lazy");case 13:return e.child!==t&&t!==null?qn("Suspense Fallback"):qn("Suspense");case 19:return qn("SuspenseList");case 0:case 15:return ku(e.type,!1);case 11:return ku(e.type.render,!1);case 1:return ku(e.type,!0);case 31:return qn("Activity");default:return""}}function Gr(e){try{var t="",n=null;do t+=cp(e,n),n=e,e=e.return;while(e);return t}catch(l){return` +`+g[l].replace(" at new "," at ");return e.displayName&&D.includes("")&&(D=D.replace("",e.displayName)),D}while(1<=l&&0<=a);break}}}finally{qu=!1,Error.prepareStackTrace=n}return(n=e?e.displayName||e.name:"")?qn(n):""}function cp(e,t){switch(e.tag){case 26:case 27:case 5:return qn(e.type);case 16:return qn("Lazy");case 13:return e.child!==t&&t!==null?qn("Suspense Fallback"):qn("Suspense");case 19:return qn("SuspenseList");case 0:case 15:return Yu(e.type,!1);case 11:return Yu(e.type.render,!1);case 1:return Yu(e.type,!0);case 31:return qn("Activity");default:return""}}function Vr(e){try{var t="",n=null;do t+=cp(e,n),n=e,e=e.return;while(e);return t}catch(l){return` Error generating stack: `+l.message+` -`+l.stack}}var Xu=Object.prototype.hasOwnProperty,Gu=u.unstable_scheduleCallback,Vu=u.unstable_cancelCallback,rp=u.unstable_shouldYield,op=u.unstable_requestPaint,st=u.unstable_now,fp=u.unstable_getCurrentPriorityLevel,Vr=u.unstable_ImmediatePriority,Qr=u.unstable_UserBlockingPriority,ni=u.unstable_NormalPriority,hp=u.unstable_LowPriority,Zr=u.unstable_IdlePriority,dp=u.log,mp=u.unstable_setDisableYieldValue,Fl=null,ct=null;function hn(e){if(typeof dp=="function"&&mp(e),ct&&typeof ct.setStrictMode=="function")try{ct.setStrictMode(Fl,e)}catch{}}var rt=Math.clz32?Math.clz32:vp,pp=Math.log,yp=Math.LN2;function vp(e){return e>>>=0,e===0?32:31-(pp(e)/yp|0)|0}var li=256,ai=262144,ii=4194304;function Yn(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function ui(e,t,n){var l=e.pendingLanes;if(l===0)return 0;var a=0,s=e.suspendedLanes,o=e.pingedLanes;e=e.warmLanes;var d=l&134217727;return d!==0?(l=d&~s,l!==0?a=Yn(l):(o&=d,o!==0?a=Yn(o):n||(n=d&~e,n!==0&&(a=Yn(n))))):(d=l&~s,d!==0?a=Yn(d):o!==0?a=Yn(o):n||(n=l&~e,n!==0&&(a=Yn(n)))),a===0?0:t!==0&&t!==a&&(t&s)===0&&(s=a&-a,n=t&-t,s>=n||s===32&&(n&4194048)!==0)?t:a}function Pl(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function gp(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Kr(){var e=ii;return ii<<=1,(ii&62914560)===0&&(ii=4194304),e}function Qu(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function Il(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function bp(e,t,n,l,a,s){var o=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var d=e.entanglements,g=e.expirationTimes,N=e.hiddenUpdates;for(n=o&~n;0"u")return null;try{return e.activeElement||e.body}catch{return e.body}}var Ap=/[\n"\\]/g;function gt(e){return e.replace(Ap,function(t){return"\\"+t.charCodeAt(0).toString(16)+" "})}function Fu(e,t,n,l,a,s,o,d){e.name="",o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"?e.type=o:e.removeAttribute("type"),t!=null?o==="number"?(t===0&&e.value===""||e.value!=t)&&(e.value=""+vt(t)):e.value!==""+vt(t)&&(e.value=""+vt(t)):o!=="submit"&&o!=="reset"||e.removeAttribute("value"),t!=null?Pu(e,o,vt(t)):n!=null?Pu(e,o,vt(n)):l!=null&&e.removeAttribute("value"),a==null&&s!=null&&(e.defaultChecked=!!s),a!=null&&(e.checked=a&&typeof a!="function"&&typeof a!="symbol"),d!=null&&typeof d!="function"&&typeof d!="symbol"&&typeof d!="boolean"?e.name=""+vt(d):e.removeAttribute("name")}function uo(e,t,n,l,a,s,o,d){if(s!=null&&typeof s!="function"&&typeof s!="symbol"&&typeof s!="boolean"&&(e.type=s),t!=null||n!=null){if(!(s!=="submit"&&s!=="reset"||t!=null)){Wu(e);return}n=n!=null?""+vt(n):"",t=t!=null?""+vt(t):n,d||t===e.value||(e.value=t),e.defaultValue=t}l=l??a,l=typeof l!="function"&&typeof l!="symbol"&&!!l,e.checked=d?e.checked:!!l,e.defaultChecked=!!l,o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"&&(e.name=o),Wu(e)}function Pu(e,t,n){t==="number"&&ri(e.ownerDocument)===e||e.defaultValue===""+n||(e.defaultValue=""+n)}function dl(e,t,n,l){if(e=e.options,t){t={};for(var a=0;a"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),ls=!1;if(Qt)try{var la={};Object.defineProperty(la,"passive",{get:function(){ls=!0}}),window.addEventListener("test",la,la),window.removeEventListener("test",la,la)}catch{ls=!1}var mn=null,as=null,fi=null;function mo(){if(fi)return fi;var e,t=as,n=t.length,l,a="value"in mn?mn.value:mn.textContent,s=a.length;for(e=0;e=ua),So=" ",xo=!1;function _o(e,t){switch(e){case"keyup":return Ip.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Eo(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var vl=!1;function ty(e,t){switch(e){case"compositionend":return Eo(t);case"keypress":return t.which!==32?null:(xo=!0,So);case"textInput":return e=t.data,e===So&&xo?null:e;default:return null}}function ny(e,t){if(vl)return e==="compositionend"||!rs&&_o(e,t)?(e=mo(),fi=as=mn=null,vl=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=l}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=Mo(n)}}function jo(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?jo(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function wo(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=ri(e.document);t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=ri(e.document)}return t}function hs(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}var oy=Qt&&"documentMode"in document&&11>=document.documentMode,gl=null,ds=null,oa=null,ms=!1;function Uo(e,t,n){var l=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;ms||gl==null||gl!==ri(l)||(l=gl,"selectionStart"in l&&hs(l)?l={start:l.selectionStart,end:l.selectionEnd}:(l=(l.ownerDocument&&l.ownerDocument.defaultView||window).getSelection(),l={anchorNode:l.anchorNode,anchorOffset:l.anchorOffset,focusNode:l.focusNode,focusOffset:l.focusOffset}),oa&&ra(oa,l)||(oa=l,l=au(ds,"onSelect"),0>=o,a-=o,wt=1<<32-rt(t)+a|n<ne?(se=K,K=null):se=K.sibling;var fe=O(A,K,R[ne],w);if(fe===null){K===null&&(K=se);break}e&&K&&fe.alternate===null&&t(A,K),x=s(fe,x,ne),oe===null?J=fe:oe.sibling=fe,oe=fe,K=se}if(ne===R.length)return n(A,K),ce&&Kt(A,ne),J;if(K===null){for(;nene?(se=K,K=null):se=K.sibling;var Bn=O(A,K,fe.value,w);if(Bn===null){K===null&&(K=se);break}e&&K&&Bn.alternate===null&&t(A,K),x=s(Bn,x,ne),oe===null?J=Bn:oe.sibling=Bn,oe=Bn,K=se}if(fe.done)return n(A,K),ce&&Kt(A,ne),J;if(K===null){for(;!fe.done;ne++,fe=R.next())fe=U(A,fe.value,w),fe!==null&&(x=s(fe,x,ne),oe===null?J=fe:oe.sibling=fe,oe=fe);return ce&&Kt(A,ne),J}for(K=l(K);!fe.done;ne++,fe=R.next())fe=M(K,A,ne,fe.value,w),fe!==null&&(e&&fe.alternate!==null&&K.delete(fe.key===null?ne:fe.key),x=s(fe,x,ne),oe===null?J=fe:oe.sibling=fe,oe=fe);return e&&K.forEach(function(z0){return t(A,z0)}),ce&&Kt(A,ne),J}function Se(A,x,R,w){if(typeof R=="object"&&R!==null&&R.type===X&&R.key===null&&(R=R.props.children),typeof R=="object"&&R!==null){switch(R.$$typeof){case z:e:{for(var J=R.key;x!==null;){if(x.key===J){if(J=R.type,J===X){if(x.tag===7){n(A,x.sibling),w=a(x,R.props.children),w.return=A,A=w;break e}}else if(x.elementType===J||typeof J=="object"&&J!==null&&J.$$typeof===Te&&Fn(J)===x.type){n(A,x.sibling),w=a(x,R.props),ya(w,R),w.return=A,A=w;break e}n(A,x);break}else t(A,x);x=x.sibling}R.type===X?(w=Zn(R.props.children,A.mode,w,R.key),w.return=A,A=w):(w=xi(R.type,R.key,R.props,null,A.mode,w),ya(w,R),w.return=A,A=w)}return o(A);case L:e:{for(J=R.key;x!==null;){if(x.key===J)if(x.tag===4&&x.stateNode.containerInfo===R.containerInfo&&x.stateNode.implementation===R.implementation){n(A,x.sibling),w=a(x,R.children||[]),w.return=A,A=w;break e}else{n(A,x);break}else t(A,x);x=x.sibling}w=xs(R,A.mode,w),w.return=A,A=w}return o(A);case Te:return R=Fn(R),Se(A,x,R,w)}if(Nt(R))return Q(A,x,R,w);if(We(R)){if(J=We(R),typeof J!="function")throw Error(r(150));return R=J.call(R),W(A,x,R,w)}if(typeof R.then=="function")return Se(A,x,Ni(R),w);if(R.$$typeof===k)return Se(A,x,Ti(A,R),w);Oi(A,R)}return typeof R=="string"&&R!==""||typeof R=="number"||typeof R=="bigint"?(R=""+R,x!==null&&x.tag===6?(n(A,x.sibling),w=a(x,R),w.return=A,A=w):(n(A,x),w=Ss(R,A.mode,w),w.return=A,A=w),o(A)):n(A,x)}return function(A,x,R,w){try{pa=0;var J=Se(A,x,R,w);return Ol=null,J}catch(K){if(K===Nl||K===Ci)throw K;var oe=ft(29,K,null,A.mode);return oe.lanes=w,oe.return=A,oe}finally{}}}var In=af(!0),uf=af(!1),bn=!1;function js(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function ws(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function Sn(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function xn(e,t,n){var l=e.updateQueue;if(l===null)return null;if(l=l.shared,(he&2)!==0){var a=l.pending;return a===null?t.next=t:(t.next=a.next,a.next=t),l.pending=t,t=Si(e),Xo(e,null,n),t}return bi(e,l,t,n),Si(e)}function va(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194048)!==0)){var l=t.lanes;l&=e.pendingLanes,n|=l,t.lanes=n,$r(e,n)}}function Us(e,t){var n=e.updateQueue,l=e.alternate;if(l!==null&&(l=l.updateQueue,n===l)){var a=null,s=null;if(n=n.firstBaseUpdate,n!==null){do{var o={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};s===null?a=s=o:s=s.next=o,n=n.next}while(n!==null);s===null?a=s=t:s=s.next=t}else a=s=t;n={baseState:l.baseState,firstBaseUpdate:a,lastBaseUpdate:s,shared:l.shared,callbacks:l.callbacks},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}var Bs=!1;function ga(){if(Bs){var e=Rl;if(e!==null)throw e}}function ba(e,t,n,l){Bs=!1;var a=e.updateQueue;bn=!1;var s=a.firstBaseUpdate,o=a.lastBaseUpdate,d=a.shared.pending;if(d!==null){a.shared.pending=null;var g=d,N=g.next;g.next=null,o===null?s=N:o.next=N,o=g;var D=e.alternate;D!==null&&(D=D.updateQueue,d=D.lastBaseUpdate,d!==o&&(d===null?D.firstBaseUpdate=N:d.next=N,D.lastBaseUpdate=g))}if(s!==null){var U=a.baseState;o=0,D=N=g=null,d=s;do{var O=d.lane&-536870913,M=O!==d.lane;if(M?(ue&O)===O:(l&O)===O){O!==0&&O===Cl&&(Bs=!0),D!==null&&(D=D.next={lane:0,tag:d.tag,payload:d.payload,callback:null,next:null});e:{var Q=e,W=d;O=t;var Se=n;switch(W.tag){case 1:if(Q=W.payload,typeof Q=="function"){U=Q.call(Se,U,O);break e}U=Q;break e;case 3:Q.flags=Q.flags&-65537|128;case 0:if(Q=W.payload,O=typeof Q=="function"?Q.call(Se,U,O):Q,O==null)break e;U=S({},U,O);break e;case 2:bn=!0}}O=d.callback,O!==null&&(e.flags|=64,M&&(e.flags|=8192),M=a.callbacks,M===null?a.callbacks=[O]:M.push(O))}else M={lane:O,tag:d.tag,payload:d.payload,callback:d.callback,next:null},D===null?(N=D=M,g=U):D=D.next=M,o|=O;if(d=d.next,d===null){if(d=a.shared.pending,d===null)break;M=d,d=M.next,M.next=null,a.lastBaseUpdate=M,a.shared.pending=null}}while(!0);D===null&&(g=U),a.baseState=g,a.firstBaseUpdate=N,a.lastBaseUpdate=D,s===null&&(a.shared.lanes=0),Cn|=o,e.lanes=o,e.memoizedState=U}}function sf(e,t){if(typeof e!="function")throw Error(r(191,e));e.call(t)}function cf(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;es?s:8;var o=j.T,d={};j.T=d,tc(e,!1,t,n);try{var g=a(),N=j.S;if(N!==null&&N(d,g),g!==null&&typeof g=="object"&&typeof g.then=="function"){var D=by(g,l);_a(e,t,D,yt(e))}else _a(e,t,l,yt(e))}catch(U){_a(e,t,{then:function(){},status:"rejected",reason:U},yt())}finally{G.p=s,o!==null&&d.types!==null&&(o.types=d.types),j.T=o}}function Ay(){}function Is(e,t,n,l){if(e.tag!==5)throw Error(r(476));var a=Yf(e).queue;qf(e,a,t,P,n===null?Ay:function(){return kf(e),n(l)})}function Yf(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:P,baseState:P,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Ft,lastRenderedState:P},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Ft,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function kf(e){var t=Yf(e);t.next===null&&(t=e.alternate.memoizedState),_a(e,t.next.queue,{},yt())}function ec(){return Ke(qa)}function Xf(){return we().memoizedState}function Gf(){return we().memoizedState}function Cy(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var n=yt();e=Sn(n);var l=xn(t,e,n);l!==null&&(ut(l,t,n),va(l,t,n)),t={cache:Os()},e.payload=t;return}t=t.return}}function Ry(e,t,n){var l=yt();n={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},qi(e)?Qf(t,n):(n=gs(e,t,n,l),n!==null&&(ut(n,e,l),Zf(n,t,l)))}function Vf(e,t,n){var l=yt();_a(e,t,n,l)}function _a(e,t,n,l){var a={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(qi(e))Qf(t,a);else{var s=e.alternate;if(e.lanes===0&&(s===null||s.lanes===0)&&(s=t.lastRenderedReducer,s!==null))try{var o=t.lastRenderedState,d=s(o,n);if(a.hasEagerState=!0,a.eagerState=d,ot(d,o))return bi(e,t,a,0),Ee===null&&gi(),!1}catch{}finally{}if(n=gs(e,t,a,l),n!==null)return ut(n,e,l),Zf(n,t,l),!0}return!1}function tc(e,t,n,l){if(l={lane:2,revertLane:jc(),gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},qi(e)){if(t)throw Error(r(479))}else t=gs(e,n,l,2),t!==null&&ut(t,e,2)}function qi(e){var t=e.alternate;return e===te||t!==null&&t===te}function Qf(e,t){Ml=Di=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Zf(e,t,n){if((n&4194048)!==0){var l=t.lanes;l&=e.pendingLanes,n|=l,t.lanes=n,$r(e,n)}}var Ea={readContext:Ke,use:Ui,useCallback:ze,useContext:ze,useEffect:ze,useImperativeHandle:ze,useLayoutEffect:ze,useInsertionEffect:ze,useMemo:ze,useReducer:ze,useRef:ze,useState:ze,useDebugValue:ze,useDeferredValue:ze,useTransition:ze,useSyncExternalStore:ze,useId:ze,useHostTransitionStatus:ze,useFormState:ze,useActionState:ze,useOptimistic:ze,useMemoCache:ze,useCacheRefresh:ze};Ea.useEffectEvent=ze;var Kf={readContext:Ke,use:Ui,useCallback:function(e,t){return Ie().memoizedState=[e,t===void 0?null:t],e},useContext:Ke,useEffect:zf,useImperativeHandle:function(e,t,n){n=n!=null?n.concat([e]):null,Li(4194308,4,wf.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Li(4194308,4,e,t)},useInsertionEffect:function(e,t){Li(4,2,e,t)},useMemo:function(e,t){var n=Ie();t=t===void 0?null:t;var l=e();if(el){hn(!0);try{e()}finally{hn(!1)}}return n.memoizedState=[l,t],l},useReducer:function(e,t,n){var l=Ie();if(n!==void 0){var a=n(t);if(el){hn(!0);try{n(t)}finally{hn(!1)}}}else a=t;return l.memoizedState=l.baseState=a,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:a},l.queue=e,e=e.dispatch=Ry.bind(null,te,e),[l.memoizedState,e]},useRef:function(e){var t=Ie();return e={current:e},t.memoizedState=e},useState:function(e){e=Js(e);var t=e.queue,n=Vf.bind(null,te,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:Fs,useDeferredValue:function(e,t){var n=Ie();return Ps(n,e,t)},useTransition:function(){var e=Js(!1);return e=qf.bind(null,te,e.queue,!0,!1),Ie().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var l=te,a=Ie();if(ce){if(n===void 0)throw Error(r(407));n=n()}else{if(n=t(),Ee===null)throw Error(r(349));(ue&127)!==0||mf(l,t,n)}a.memoizedState=n;var s={value:n,getSnapshot:t};return a.queue=s,zf(yf.bind(null,l,s,e),[e]),l.flags|=2048,jl(9,{destroy:void 0},pf.bind(null,l,s,n,t),null),n},useId:function(){var e=Ie(),t=Ee.identifierPrefix;if(ce){var n=Ut,l=wt;n=(l&~(1<<32-rt(l)-1)).toString(32)+n,t="_"+t+"R_"+n,n=ji++,0<\/script>",s=s.removeChild(s.firstChild);break;case"select":s=typeof l.is=="string"?o.createElement("select",{is:l.is}):o.createElement("select"),l.multiple?s.multiple=!0:l.size&&(s.size=l.size);break;default:s=typeof l.is=="string"?o.createElement(a,{is:l.is}):o.createElement(a)}}s[Qe]=t,s[et]=l;e:for(o=t.child;o!==null;){if(o.tag===5||o.tag===6)s.appendChild(o.stateNode);else if(o.tag!==4&&o.tag!==27&&o.child!==null){o.child.return=o,o=o.child;continue}if(o===t)break e;for(;o.sibling===null;){if(o.return===null||o.return===t)break e;o=o.return}o.sibling.return=o.return,o=o.sibling}t.stateNode=s;e:switch($e(s,a,l),a){case"button":case"input":case"select":case"textarea":l=!!l.autoFocus;break e;case"img":l=!0;break e;default:l=!1}l&&It(t)}}return Ce(t),pc(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==l&&It(t);else{if(typeof l!="string"&&t.stateNode===null)throw Error(r(166));if(e=le.current,Tl(t)){if(e=t.stateNode,n=t.memoizedProps,l=null,a=Ze,a!==null)switch(a.tag){case 27:case 5:l=a.memoizedProps}e[Qe]=t,e=!!(e.nodeValue===n||l!==null&&l.suppressHydrationWarning===!0||hd(e.nodeValue,n)),e||vn(t,!0)}else e=iu(e).createTextNode(l),e[Qe]=t,t.stateNode=e}return Ce(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(l=Tl(t),n!==null){if(e===null){if(!l)throw Error(r(318));if(e=t.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(r(557));e[Qe]=t}else Kn(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Ce(t),e=!1}else n=As(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(dt(t),t):(dt(t),null);if((t.flags&128)!==0)throw Error(r(558))}return Ce(t),null;case 13:if(l=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(a=Tl(t),l!==null&&l.dehydrated!==null){if(e===null){if(!a)throw Error(r(318));if(a=t.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(r(317));a[Qe]=t}else Kn(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Ce(t),a=!1}else a=As(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=a),a=!0;if(!a)return t.flags&256?(dt(t),t):(dt(t),null)}return dt(t),(t.flags&128)!==0?(t.lanes=n,t):(n=l!==null,e=e!==null&&e.memoizedState!==null,n&&(l=t.child,a=null,l.alternate!==null&&l.alternate.memoizedState!==null&&l.alternate.memoizedState.cachePool!==null&&(a=l.alternate.memoizedState.cachePool.pool),s=null,l.memoizedState!==null&&l.memoizedState.cachePool!==null&&(s=l.memoizedState.cachePool.pool),s!==a&&(l.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),Vi(t,t.updateQueue),Ce(t),null);case 4:return De(),e===null&&Lc(t.stateNode.containerInfo),Ce(t),null;case 10:return $t(t.type),Ce(t),null;case 19:if(B(je),l=t.memoizedState,l===null)return Ce(t),null;if(a=(t.flags&128)!==0,s=l.rendering,s===null)if(a)Aa(l,!1);else{if(Me!==0||e!==null&&(e.flags&128)!==0)for(e=t.child;e!==null;){if(s=Mi(e),s!==null){for(t.flags|=128,Aa(l,!1),e=s.updateQueue,t.updateQueue=e,Vi(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)Go(n,e),n=n.sibling;return V(je,je.current&1|2),ce&&Kt(t,l.treeForkCount),t.child}e=e.sibling}l.tail!==null&&st()>$i&&(t.flags|=128,a=!0,Aa(l,!1),t.lanes=4194304)}else{if(!a)if(e=Mi(s),e!==null){if(t.flags|=128,a=!0,e=e.updateQueue,t.updateQueue=e,Vi(t,e),Aa(l,!0),l.tail===null&&l.tailMode==="hidden"&&!s.alternate&&!ce)return Ce(t),null}else 2*st()-l.renderingStartTime>$i&&n!==536870912&&(t.flags|=128,a=!0,Aa(l,!1),t.lanes=4194304);l.isBackwards?(s.sibling=t.child,t.child=s):(e=l.last,e!==null?e.sibling=s:t.child=s,l.last=s)}return l.tail!==null?(e=l.tail,l.rendering=e,l.tail=e.sibling,l.renderingStartTime=st(),e.sibling=null,n=je.current,V(je,a?n&1|2:n&1),ce&&Kt(t,l.treeForkCount),e):(Ce(t),null);case 22:case 23:return dt(t),Hs(),l=t.memoizedState!==null,e!==null?e.memoizedState!==null!==l&&(t.flags|=8192):l&&(t.flags|=8192),l?(n&536870912)!==0&&(t.flags&128)===0&&(Ce(t),t.subtreeFlags&6&&(t.flags|=8192)):Ce(t),n=t.updateQueue,n!==null&&Vi(t,n.retryQueue),n=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),l=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(l=t.memoizedState.cachePool.pool),l!==n&&(t.flags|=2048),e!==null&&B(Wn),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),$t(Be),Ce(t),null;case 25:return null;case 30:return null}throw Error(r(156,t.tag))}function Dy(e,t){switch(Es(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return $t(Be),De(),e=t.flags,(e&65536)!==0&&(e&128)===0?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return ti(t),null;case 31:if(t.memoizedState!==null){if(dt(t),t.alternate===null)throw Error(r(340));Kn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(dt(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(r(340));Kn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return B(je),null;case 4:return De(),null;case 10:return $t(t.type),null;case 22:case 23:return dt(t),Hs(),e!==null&&B(Wn),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return $t(Be),null;case 25:return null;default:return null}}function vh(e,t){switch(Es(t),t.tag){case 3:$t(Be),De();break;case 26:case 27:case 5:ti(t);break;case 4:De();break;case 31:t.memoizedState!==null&&dt(t);break;case 13:dt(t);break;case 19:B(je);break;case 10:$t(t.type);break;case 22:case 23:dt(t),Hs(),e!==null&&B(Wn);break;case 24:$t(Be)}}function Ca(e,t){try{var n=t.updateQueue,l=n!==null?n.lastEffect:null;if(l!==null){var a=l.next;n=a;do{if((n.tag&e)===e){l=void 0;var s=n.create,o=n.inst;l=s(),o.destroy=l}n=n.next}while(n!==a)}}catch(d){pe(t,t.return,d)}}function Tn(e,t,n){try{var l=t.updateQueue,a=l!==null?l.lastEffect:null;if(a!==null){var s=a.next;l=s;do{if((l.tag&e)===e){var o=l.inst,d=o.destroy;if(d!==void 0){o.destroy=void 0,a=t;var g=n,N=d;try{N()}catch(D){pe(a,g,D)}}}l=l.next}while(l!==s)}}catch(D){pe(t,t.return,D)}}function gh(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{cf(t,n)}catch(l){pe(e,e.return,l)}}}function bh(e,t,n){n.props=tl(e.type,e.memoizedProps),n.state=e.memoizedState;try{n.componentWillUnmount()}catch(l){pe(e,t,l)}}function Ra(e,t){try{var n=e.ref;if(n!==null){switch(e.tag){case 26:case 27:case 5:var l=e.stateNode;break;case 30:l=e.stateNode;break;default:l=e.stateNode}typeof n=="function"?e.refCleanup=n(l):n.current=l}}catch(a){pe(e,t,a)}}function Bt(e,t){var n=e.ref,l=e.refCleanup;if(n!==null)if(typeof l=="function")try{l()}catch(a){pe(e,t,a)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n=="function")try{n(null)}catch(a){pe(e,t,a)}else n.current=null}function Sh(e){var t=e.type,n=e.memoizedProps,l=e.stateNode;try{e:switch(t){case"button":case"input":case"select":case"textarea":n.autoFocus&&l.focus();break e;case"img":n.src?l.src=n.src:n.srcSet&&(l.srcset=n.srcSet)}}catch(a){pe(e,e.return,a)}}function yc(e,t,n){try{var l=e.stateNode;e0(l,e.type,n,t),l[et]=t}catch(a){pe(e,e.return,a)}}function xh(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&Mn(e.type)||e.tag===4}function vc(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||xh(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&&Mn(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 gc(e,t,n){var l=e.tag;if(l===5||l===6)e=e.stateNode,t?(n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n).insertBefore(e,t):(t=n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n,t.appendChild(e),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=Vt));else if(l!==4&&(l===27&&Mn(e.type)&&(n=e.stateNode,t=null),e=e.child,e!==null))for(gc(e,t,n),e=e.sibling;e!==null;)gc(e,t,n),e=e.sibling}function Qi(e,t,n){var l=e.tag;if(l===5||l===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(l!==4&&(l===27&&Mn(e.type)&&(n=e.stateNode),e=e.child,e!==null))for(Qi(e,t,n),e=e.sibling;e!==null;)Qi(e,t,n),e=e.sibling}function _h(e){var t=e.stateNode,n=e.memoizedProps;try{for(var l=e.type,a=t.attributes;a.length;)t.removeAttributeNode(a[0]);$e(t,l,n),t[Qe]=e,t[et]=n}catch(s){pe(e,e.return,s)}}var en=!1,qe=!1,bc=!1,Eh=typeof WeakSet=="function"?WeakSet:Set,Ve=null;function jy(e,t){if(e=e.containerInfo,Yc=hu,e=wo(e),hs(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var l=n.getSelection&&n.getSelection();if(l&&l.rangeCount!==0){n=l.anchorNode;var a=l.anchorOffset,s=l.focusNode;l=l.focusOffset;try{n.nodeType,s.nodeType}catch{n=null;break e}var o=0,d=-1,g=-1,N=0,D=0,U=e,O=null;t:for(;;){for(var M;U!==n||a!==0&&U.nodeType!==3||(d=o+a),U!==s||l!==0&&U.nodeType!==3||(g=o+l),U.nodeType===3&&(o+=U.nodeValue.length),(M=U.firstChild)!==null;)O=U,U=M;for(;;){if(U===e)break t;if(O===n&&++N===a&&(d=o),O===s&&++D===l&&(g=o),(M=U.nextSibling)!==null)break;U=O,O=U.parentNode}U=M}n=d===-1||g===-1?null:{start:d,end:g}}else n=null}n=n||{start:0,end:0}}else n=null;for(kc={focusedElem:e,selectionRange:n},hu=!1,Ve=t;Ve!==null;)if(t=Ve,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,Ve=e;else for(;Ve!==null;){switch(t=Ve,s=t.alternate,e=t.flags,t.tag){case 0:if((e&4)!==0&&(e=t.updateQueue,e=e!==null?e.events:null,e!==null))for(n=0;n title"))),$e(s,l,n),s[Qe]=e,Ge(s),l=s;break e;case"link":var o=Od("link","href",a).get(l+(n.href||""));if(o){for(var d=0;dSe&&(o=Se,Se=W,W=o);var A=Do(d,W),x=Do(d,Se);if(A&&x&&(M.rangeCount!==1||M.anchorNode!==A.node||M.anchorOffset!==A.offset||M.focusNode!==x.node||M.focusOffset!==x.offset)){var R=U.createRange();R.setStart(A.node,A.offset),M.removeAllRanges(),W>Se?(M.addRange(R),M.extend(x.node,x.offset)):(R.setEnd(x.node,x.offset),M.addRange(R))}}}}for(U=[],M=d;M=M.parentNode;)M.nodeType===1&&U.push({element:M,left:M.scrollLeft,top:M.scrollTop});for(typeof d.focus=="function"&&d.focus(),d=0;dn?32:n,j.T=null,n=Cc,Cc=null;var s=Nn,o=un;if(ke=0,Hl=Nn=null,un=0,(he&6)!==0)throw Error(r(331));var d=he;if(he|=4,wh(s.current),Mh(s,s.current,o,n),he=d,ja(0,!1),ct&&typeof ct.onPostCommitFiberRoot=="function")try{ct.onPostCommitFiberRoot(Fl,s)}catch{}return!0}finally{G.p=a,j.T=l,Ph(e,t)}}function ed(e,t,n){t=St(n,t),t=ic(e.stateNode,t,2),e=xn(e,t,2),e!==null&&(Il(e,2),Lt(e))}function pe(e,t,n){if(e.tag===3)ed(e,e,n);else for(;t!==null;){if(t.tag===3){ed(t,e,n);break}else if(t.tag===1){var l=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof l.componentDidCatch=="function"&&(Rn===null||!Rn.has(l))){e=St(n,e),n=th(2),l=xn(t,n,2),l!==null&&(nh(n,l,t,e),Il(l,2),Lt(l));break}}t=t.return}}function zc(e,t,n){var l=e.pingCache;if(l===null){l=e.pingCache=new By;var a=new Set;l.set(t,a)}else a=l.get(t),a===void 0&&(a=new Set,l.set(t,a));a.has(n)||(_c=!0,a.add(n),e=ky.bind(null,e,t,n),t.then(e,e))}function ky(e,t,n){var l=e.pingCache;l!==null&&l.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,Ee===e&&(ue&n)===n&&(Me===4||Me===3&&(ue&62914560)===ue&&300>st()-Ji?(he&2)===0&&ql(e,0):Ec|=n,Ll===ue&&(Ll=0)),Lt(e)}function td(e,t){t===0&&(t=Kr()),e=Qn(e,t),e!==null&&(Il(e,t),Lt(e))}function Xy(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),td(e,n)}function Gy(e,t){var n=0;switch(e.tag){case 31:case 13:var l=e.stateNode,a=e.memoizedState;a!==null&&(n=a.retryLane);break;case 19:l=e.stateNode;break;case 22:l=e.stateNode._retryCache;break;default:throw Error(r(314))}l!==null&&l.delete(t),td(e,n)}function Vy(e,t){return Gu(e,t)}var tu=null,kl=null,Mc=!1,nu=!1,Dc=!1,zn=0;function Lt(e){e!==kl&&e.next===null&&(kl===null?tu=kl=e:kl=kl.next=e),nu=!0,Mc||(Mc=!0,Zy())}function ja(e,t){if(!Dc&&nu){Dc=!0;do for(var n=!1,l=tu;l!==null;){if(e!==0){var a=l.pendingLanes;if(a===0)var s=0;else{var o=l.suspendedLanes,d=l.pingedLanes;s=(1<<31-rt(42|e)+1)-1,s&=a&~(o&~d),s=s&201326741?s&201326741|1:s?s|2:0}s!==0&&(n=!0,id(l,s))}else s=ue,s=ui(l,l===Ee?s:0,l.cancelPendingCommit!==null||l.timeoutHandle!==-1),(s&3)===0||Pl(l,s)||(n=!0,id(l,s));l=l.next}while(n);Dc=!1}}function Qy(){nd()}function nd(){nu=Mc=!1;var e=0;zn!==0&&n0()&&(e=zn);for(var t=st(),n=null,l=tu;l!==null;){var a=l.next,s=ld(l,t);s===0?(l.next=null,n===null?tu=a:n.next=a,a===null&&(kl=n)):(n=l,(e!==0||(s&3)!==0)&&(nu=!0)),l=a}ke!==0&&ke!==5||ja(e),zn!==0&&(zn=0)}function ld(e,t){for(var n=e.suspendedLanes,l=e.pingedLanes,a=e.expirationTimes,s=e.pendingLanes&-62914561;0d)break;var D=g.transferSize,U=g.initiatorType;D&&dd(U)&&(g=g.responseEnd,o+=D*(g"u"?null:document;function Ad(e,t,n){var l=Xl;if(l&&typeof t=="string"&&t){var a=gt(t);a='link[rel="'+e+'"][href="'+a+'"]',typeof n=="string"&&(a+='[crossorigin="'+n+'"]'),Td.has(a)||(Td.add(a),e={rel:e,crossOrigin:n,href:t},l.querySelector(a)===null&&(t=l.createElement("link"),$e(t,"link",e),Ge(t),l.head.appendChild(t)))}}function f0(e){sn.D(e),Ad("dns-prefetch",e,null)}function h0(e,t){sn.C(e,t),Ad("preconnect",e,t)}function d0(e,t,n){sn.L(e,t,n);var l=Xl;if(l&&e&&t){var a='link[rel="preload"][as="'+gt(t)+'"]';t==="image"&&n&&n.imageSrcSet?(a+='[imagesrcset="'+gt(n.imageSrcSet)+'"]',typeof n.imageSizes=="string"&&(a+='[imagesizes="'+gt(n.imageSizes)+'"]')):a+='[href="'+gt(e)+'"]';var s=a;switch(t){case"style":s=Gl(e);break;case"script":s=Vl(e)}Ct.has(s)||(e=S({rel:"preload",href:t==="image"&&n&&n.imageSrcSet?void 0:e,as:t},n),Ct.set(s,e),l.querySelector(a)!==null||t==="style"&&l.querySelector(La(s))||t==="script"&&l.querySelector(Ha(s))||(t=l.createElement("link"),$e(t,"link",e),Ge(t),l.head.appendChild(t)))}}function m0(e,t){sn.m(e,t);var n=Xl;if(n&&e){var l=t&&typeof t.as=="string"?t.as:"script",a='link[rel="modulepreload"][as="'+gt(l)+'"][href="'+gt(e)+'"]',s=a;switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":s=Vl(e)}if(!Ct.has(s)&&(e=S({rel:"modulepreload",href:e},t),Ct.set(s,e),n.querySelector(a)===null)){switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(n.querySelector(Ha(s)))return}l=n.createElement("link"),$e(l,"link",e),Ge(l),n.head.appendChild(l)}}}function p0(e,t,n){sn.S(e,t,n);var l=Xl;if(l&&e){var a=fl(l).hoistableStyles,s=Gl(e);t=t||"default";var o=a.get(s);if(!o){var d={loading:0,preload:null};if(o=l.querySelector(La(s)))d.loading=5;else{e=S({rel:"stylesheet",href:e,"data-precedence":t},n),(n=Ct.get(s))&&Jc(e,n);var g=o=l.createElement("link");Ge(g),$e(g,"link",e),g._p=new Promise(function(N,D){g.onload=N,g.onerror=D}),g.addEventListener("load",function(){d.loading|=1}),g.addEventListener("error",function(){d.loading|=2}),d.loading|=4,su(o,t,l)}o={type:"stylesheet",instance:o,count:1,state:d},a.set(s,o)}}}function y0(e,t){sn.X(e,t);var n=Xl;if(n&&e){var l=fl(n).hoistableScripts,a=Vl(e),s=l.get(a);s||(s=n.querySelector(Ha(a)),s||(e=S({src:e,async:!0},t),(t=Ct.get(a))&&$c(e,t),s=n.createElement("script"),Ge(s),$e(s,"link",e),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function v0(e,t){sn.M(e,t);var n=Xl;if(n&&e){var l=fl(n).hoistableScripts,a=Vl(e),s=l.get(a);s||(s=n.querySelector(Ha(a)),s||(e=S({src:e,async:!0,type:"module"},t),(t=Ct.get(a))&&$c(e,t),s=n.createElement("script"),Ge(s),$e(s,"link",e),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function Cd(e,t,n,l){var a=(a=le.current)?uu(a):null;if(!a)throw Error(r(446));switch(e){case"meta":case"title":return null;case"style":return typeof n.precedence=="string"&&typeof n.href=="string"?(t=Gl(n.href),n=fl(a).hoistableStyles,l=n.get(t),l||(l={type:"style",instance:null,count:0,state:null},n.set(t,l)),l):{type:"void",instance:null,count:0,state:null};case"link":if(n.rel==="stylesheet"&&typeof n.href=="string"&&typeof n.precedence=="string"){e=Gl(n.href);var s=fl(a).hoistableStyles,o=s.get(e);if(o||(a=a.ownerDocument||a,o={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},s.set(e,o),(s=a.querySelector(La(e)))&&!s._p&&(o.instance=s,o.state.loading=5),Ct.has(e)||(n={rel:"preload",as:"style",href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},Ct.set(e,n),s||g0(a,e,n,o.state))),t&&l===null)throw Error(r(528,""));return o}if(t&&l!==null)throw Error(r(529,""));return null;case"script":return t=n.async,n=n.src,typeof n=="string"&&t&&typeof t!="function"&&typeof t!="symbol"?(t=Vl(n),n=fl(a).hoistableScripts,l=n.get(t),l||(l={type:"script",instance:null,count:0,state:null},n.set(t,l)),l):{type:"void",instance:null,count:0,state:null};default:throw Error(r(444,e))}}function Gl(e){return'href="'+gt(e)+'"'}function La(e){return'link[rel="stylesheet"]['+e+"]"}function Rd(e){return S({},e,{"data-precedence":e.precedence,precedence:null})}function g0(e,t,n,l){e.querySelector('link[rel="preload"][as="style"]['+t+"]")?l.loading=1:(t=e.createElement("link"),l.preload=t,t.addEventListener("load",function(){return l.loading|=1}),t.addEventListener("error",function(){return l.loading|=2}),$e(t,"link",n),Ge(t),e.head.appendChild(t))}function Vl(e){return'[src="'+gt(e)+'"]'}function Ha(e){return"script[async]"+e}function Nd(e,t,n){if(t.count++,t.instance===null)switch(t.type){case"style":var l=e.querySelector('style[data-href~="'+gt(n.href)+'"]');if(l)return t.instance=l,Ge(l),l;var a=S({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return l=(e.ownerDocument||e).createElement("style"),Ge(l),$e(l,"style",a),su(l,n.precedence,e),t.instance=l;case"stylesheet":a=Gl(n.href);var s=e.querySelector(La(a));if(s)return t.state.loading|=4,t.instance=s,Ge(s),s;l=Rd(n),(a=Ct.get(a))&&Jc(l,a),s=(e.ownerDocument||e).createElement("link"),Ge(s);var o=s;return o._p=new Promise(function(d,g){o.onload=d,o.onerror=g}),$e(s,"link",l),t.state.loading|=4,su(s,n.precedence,e),t.instance=s;case"script":return s=Vl(n.src),(a=e.querySelector(Ha(s)))?(t.instance=a,Ge(a),a):(l=n,(a=Ct.get(s))&&(l=S({},n),$c(l,a)),e=e.ownerDocument||e,a=e.createElement("script"),Ge(a),$e(a,"link",l),e.head.appendChild(a),t.instance=a);case"void":return null;default:throw Error(r(443,t.type))}else t.type==="stylesheet"&&(t.state.loading&4)===0&&(l=t.instance,t.state.loading|=4,su(l,n.precedence,e));return t.instance}function su(e,t,n){for(var l=n.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=l.length?l[l.length-1]:null,s=a,o=0;o title"):null)}function b0(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case"meta":case"title":return!0;case"style":if(typeof t.precedence!="string"||typeof t.href!="string"||t.href==="")break;return!0;case"link":if(typeof t.rel!="string"||typeof t.href!="string"||t.href===""||t.onLoad||t.onError)break;switch(t.rel){case"stylesheet":return e=t.disabled,typeof t.precedence=="string"&&e==null;default:return!0}case"script":if(t.async&&typeof t.async!="function"&&typeof t.async!="symbol"&&!t.onLoad&&!t.onError&&t.src&&typeof t.src=="string")return!0}return!1}function Md(e){return!(e.type==="stylesheet"&&(e.state.loading&3)===0)}function S0(e,t,n,l){if(n.type==="stylesheet"&&(typeof l.media!="string"||matchMedia(l.media).matches!==!1)&&(n.state.loading&4)===0){if(n.instance===null){var a=Gl(l.href),s=t.querySelector(La(a));if(s){t=s._p,t!==null&&typeof t=="object"&&typeof t.then=="function"&&(e.count++,e=ru.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=s,Ge(s);return}s=t.ownerDocument||t,l=Rd(l),(a=Ct.get(a))&&Jc(l,a),s=s.createElement("link"),Ge(s);var o=s;o._p=new Promise(function(d,g){o.onload=d,o.onerror=g}),$e(s,"link",l),n.instance=s}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&(n.state.loading&3)===0&&(e.count++,n=ru.bind(e),t.addEventListener("load",n),t.addEventListener("error",n))}}var Wc=0;function x0(e,t){return e.stylesheets&&e.count===0&&fu(e,e.stylesheets),0Wc?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(l),clearTimeout(a)}}:null}function ru(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)fu(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var ou=null;function fu(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,ou=new Map,t.forEach(_0,e),ou=null,ru.call(e))}function _0(e,t){if(!(t.state.loading&4)){var n=ou.get(e);if(n)var l=n.get(null);else{n=new Map,ou.set(e,n);for(var a=e.querySelectorAll("link[data-precedence],style[data-precedence]"),s=0;s"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(u)}catch(i){console.error(i)}}return u(),ir.exports=H0(),ir.exports}var Y0=q0();var tm="popstate";function k0(u={}){function i(r,f){let{pathname:h,search:m,hash:b}=r.location;return yr("",{pathname:h,search:m,hash:b},f.state&&f.state.usr||null,f.state&&f.state.key||"default")}function c(r,f){return typeof f=="string"?f:Wa(f)}return G0(i,c,null,u)}function Oe(u,i){if(u===!1||u===null||typeof u>"u")throw new Error(i)}function jt(u,i){if(!u){typeof console<"u"&&console.warn(i);try{throw new Error(i)}catch{}}}function X0(){return Math.random().toString(36).substring(2,10)}function nm(u,i){return{usr:u.state,key:u.key,idx:i}}function yr(u,i,c=null,r){return{pathname:typeof u=="string"?u:u.pathname,search:"",hash:"",...typeof i=="string"?Kl(i):i,state:c,key:i&&i.key||r||X0()}}function Wa({pathname:u="/",search:i="",hash:c=""}){return i&&i!=="?"&&(u+=i.charAt(0)==="?"?i:"?"+i),c&&c!=="#"&&(u+=c.charAt(0)==="#"?c:"#"+c),u}function Kl(u){let i={};if(u){let c=u.indexOf("#");c>=0&&(i.hash=u.substring(c),u=u.substring(0,c));let r=u.indexOf("?");r>=0&&(i.search=u.substring(r),u=u.substring(0,r)),u&&(i.pathname=u)}return i}function G0(u,i,c,r={}){let{window:f=document.defaultView,v5Compat:h=!1}=r,m=f.history,b="POP",y=null,v=T();v==null&&(v=0,m.replaceState({...m.state,idx:v},""));function T(){return(m.state||{idx:null}).idx}function S(){b="POP";let q=T(),H=q==null?null:q-v;v=q,y&&y({action:b,location:X.location,delta:H})}function C(q,H){b="PUSH";let Y=yr(X.location,q,H);v=T()+1;let k=nm(Y,v),F=X.createHref(Y);try{m.pushState(k,"",F)}catch(ye){if(ye instanceof DOMException&&ye.name==="DataCloneError")throw ye;f.location.assign(F)}h&&y&&y({action:b,location:X.location,delta:1})}function z(q,H){b="REPLACE";let Y=yr(X.location,q,H);v=T();let k=nm(Y,v),F=X.createHref(Y);m.replaceState(k,"",F),h&&y&&y({action:b,location:X.location,delta:0})}function L(q){return V0(q)}let X={get action(){return b},get location(){return u(f,m)},listen(q){if(y)throw new Error("A history only accepts one active listener");return f.addEventListener(tm,S),y=q,()=>{f.removeEventListener(tm,S),y=null}},createHref(q){return i(f,q)},createURL:L,encodeLocation(q){let H=L(q);return{pathname:H.pathname,search:H.search,hash:H.hash}},push:C,replace:z,go(q){return m.go(q)}};return X}function V0(u,i=!1){let c="http://localhost";typeof window<"u"&&(c=window.location.origin!=="null"?window.location.origin:window.location.href),Oe(c,"No window.location.(origin|href) available to create URL");let r=typeof u=="string"?u:Wa(u);return r=r.replace(/ $/,"%20"),!i&&r.startsWith("//")&&(r=c+r),new URL(r,c)}function xm(u,i,c="/"){return Q0(u,i,c,!1)}function Q0(u,i,c,r){let f=typeof i=="string"?Kl(i):i,h=on(f.pathname||"/",c);if(h==null)return null;let m=_m(u);Z0(m);let b=null;for(let y=0;b==null&&y{let T={relativePath:v===void 0?m.path||"":v,caseSensitive:m.caseSensitive===!0,childrenIndex:b,route:m};if(T.relativePath.startsWith("/")){if(!T.relativePath.startsWith(r)&&y)return;Oe(T.relativePath.startsWith(r),`Absolute route path "${T.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),T.relativePath=T.relativePath.slice(r.length)}let S=rn([r,T.relativePath]),C=c.concat(T);m.children&&m.children.length>0&&(Oe(m.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${S}".`),_m(m.children,i,C,S,y)),!(m.path==null&&!m.index)&&i.push({path:S,score:I0(S,m.index),routesMeta:C})};return u.forEach((m,b)=>{if(m.path===""||!m.path?.includes("?"))h(m,b);else for(let y of Em(m.path))h(m,b,!0,y)}),i}function Em(u){let i=u.split("/");if(i.length===0)return[];let[c,...r]=i,f=c.endsWith("?"),h=c.replace(/\?$/,"");if(r.length===0)return f?[h,""]:[h];let m=Em(r.join("/")),b=[];return b.push(...m.map(y=>y===""?h:[h,y].join("/"))),f&&b.push(...m),b.map(y=>u.startsWith("/")&&y===""?"/":y)}function Z0(u){u.sort((i,c)=>i.score!==c.score?c.score-i.score:ev(i.routesMeta.map(r=>r.childrenIndex),c.routesMeta.map(r=>r.childrenIndex)))}var K0=/^:[\w-]+$/,J0=3,$0=2,W0=1,F0=10,P0=-2,lm=u=>u==="*";function I0(u,i){let c=u.split("/"),r=c.length;return c.some(lm)&&(r+=P0),i&&(r+=$0),c.filter(f=>!lm(f)).reduce((f,h)=>f+(K0.test(h)?J0:h===""?W0:F0),r)}function ev(u,i){return u.length===i.length&&u.slice(0,-1).every((r,f)=>r===i[f])?u[u.length-1]-i[i.length-1]:0}function tv(u,i,c=!1){let{routesMeta:r}=u,f={},h="/",m=[];for(let b=0;b{if(T==="*"){let L=b[C]||"";m=h.slice(0,h.length-L.length).replace(/(.)\/+$/,"$1")}const z=b[C];return S&&!z?v[T]=void 0:v[T]=(z||"").replace(/%2F/g,"/"),v},{}),pathname:h,pathnameBase:m,pattern:u}}function nv(u,i=!1,c=!0){jt(u==="*"||!u.endsWith("*")||u.endsWith("/*"),`Route path "${u}" will be treated as if it were "${u.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${u.replace(/\*$/,"/*")}".`);let r=[],f="^"+u.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(m,b,y)=>(r.push({paramName:b,isOptional:y!=null}),y?"/?([^\\/]+)?":"/([^\\/]+)")).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return u.endsWith("*")?(r.push({paramName:"*"}),f+=u==="*"||u==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):c?f+="\\/*$":u!==""&&u!=="/"&&(f+="(?:(?=\\/|$))"),[new RegExp(f,i?void 0:"i"),r]}function lv(u){try{return u.split("/").map(i=>decodeURIComponent(i).replace(/\//g,"%2F")).join("/")}catch(i){return jt(!1,`The URL path "${u}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${i}).`),u}}function on(u,i){if(i==="/")return u;if(!u.toLowerCase().startsWith(i.toLowerCase()))return null;let c=i.endsWith("/")?i.length-1:i.length,r=u.charAt(c);return r&&r!=="/"?null:u.slice(c)||"/"}var av=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,iv=u=>av.test(u);function uv(u,i="/"){let{pathname:c,search:r="",hash:f=""}=typeof u=="string"?Kl(u):u,h;if(c)if(iv(c))h=c;else{if(c.includes("//")){let m=c;c=c.replace(/\/\/+/g,"/"),jt(!1,`Pathnames cannot have embedded double slashes - normalizing ${m} -> ${c}`)}c.startsWith("/")?h=am(c.substring(1),"/"):h=am(c,i)}else h=i;return{pathname:h,search:rv(r),hash:ov(f)}}function am(u,i){let c=i.replace(/\/+$/,"").split("/");return u.split("/").forEach(f=>{f===".."?c.length>1&&c.pop():f!=="."&&c.push(f)}),c.length>1?c.join("/"):"/"}function rr(u,i,c,r){return`Cannot include a '${u}' character in a manually specified \`to.${i}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${c}\` field. Alternatively you may provide the full path as a string in and the router will parse it for you.`}function sv(u){return u.filter((i,c)=>c===0||i.route.path&&i.route.path.length>0)}function Tm(u){let i=sv(u);return i.map((c,r)=>r===i.length-1?c.pathname:c.pathnameBase)}function Am(u,i,c,r=!1){let f;typeof u=="string"?f=Kl(u):(f={...u},Oe(!f.pathname||!f.pathname.includes("?"),rr("?","pathname","search",f)),Oe(!f.pathname||!f.pathname.includes("#"),rr("#","pathname","hash",f)),Oe(!f.search||!f.search.includes("#"),rr("#","search","hash",f)));let h=u===""||f.pathname==="",m=h?"/":f.pathname,b;if(m==null)b=c;else{let S=i.length-1;if(!r&&m.startsWith("..")){let C=m.split("/");for(;C[0]==="..";)C.shift(),S-=1;f.pathname=C.join("/")}b=S>=0?i[S]:"/"}let y=uv(f,b),v=m&&m!=="/"&&m.endsWith("/"),T=(h||m===".")&&c.endsWith("/");return!y.pathname.endsWith("/")&&(v||T)&&(y.pathname+="/"),y}var rn=u=>u.join("/").replace(/\/\/+/g,"/"),cv=u=>u.replace(/\/+$/,"").replace(/^\/*/,"/"),rv=u=>!u||u==="?"?"":u.startsWith("?")?u:"?"+u,ov=u=>!u||u==="#"?"":u.startsWith("#")?u:"#"+u;function fv(u){return u!=null&&typeof u.status=="number"&&typeof u.statusText=="string"&&typeof u.internal=="boolean"&&"data"in u}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var Cm=["POST","PUT","PATCH","DELETE"];new Set(Cm);var hv=["GET",...Cm];new Set(hv);var Jl=E.createContext(null);Jl.displayName="DataRouter";var Du=E.createContext(null);Du.displayName="DataRouterState";E.createContext(!1);var Rm=E.createContext({isTransitioning:!1});Rm.displayName="ViewTransition";var dv=E.createContext(new Map);dv.displayName="Fetchers";var mv=E.createContext(null);mv.displayName="Await";var Yt=E.createContext(null);Yt.displayName="Navigation";var Fa=E.createContext(null);Fa.displayName="Location";var fn=E.createContext({outlet:null,matches:[],isDataRoute:!1});fn.displayName="Route";var Ar=E.createContext(null);Ar.displayName="RouteError";function pv(u,{relative:i}={}){Oe(Pa(),"useHref() may be used only in the context of a component.");let{basename:c,navigator:r}=E.useContext(Yt),{hash:f,pathname:h,search:m}=Ia(u,{relative:i}),b=h;return c!=="/"&&(b=h==="/"?c:rn([c,h])),r.createHref({pathname:b,search:m,hash:f})}function Pa(){return E.useContext(Fa)!=null}function sl(){return Oe(Pa(),"useLocation() may be used only in the context of a component."),E.useContext(Fa).location}var Nm="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function Om(u){E.useContext(Yt).static||E.useLayoutEffect(u)}function yv(){let{isDataRoute:u}=E.useContext(fn);return u?Ov():vv()}function vv(){Oe(Pa(),"useNavigate() may be used only in the context of a component.");let u=E.useContext(Jl),{basename:i,navigator:c}=E.useContext(Yt),{matches:r}=E.useContext(fn),{pathname:f}=sl(),h=JSON.stringify(Tm(r)),m=E.useRef(!1);return Om(()=>{m.current=!0}),E.useCallback((y,v={})=>{if(jt(m.current,Nm),!m.current)return;if(typeof y=="number"){c.go(y);return}let T=Am(y,JSON.parse(h),f,v.relative==="path");u==null&&i!=="/"&&(T.pathname=T.pathname==="/"?i:rn([i,T.pathname])),(v.replace?c.replace:c.push)(T,v.state,v)},[i,c,h,f,u])}E.createContext(null);function Ia(u,{relative:i}={}){let{matches:c}=E.useContext(fn),{pathname:r}=sl(),f=JSON.stringify(Tm(c));return E.useMemo(()=>Am(u,JSON.parse(f),r,i==="path"),[u,f,r,i])}function gv(u,i){return zm(u,i)}function zm(u,i,c,r,f){Oe(Pa(),"useRoutes() may be used only in the context of a component.");let{navigator:h}=E.useContext(Yt),{matches:m}=E.useContext(fn),b=m[m.length-1],y=b?b.params:{},v=b?b.pathname:"/",T=b?b.pathnameBase:"/",S=b&&b.route;{let Y=S&&S.path||"";Mm(v,!S||Y.endsWith("*")||Y.endsWith("*?"),`You rendered descendant (or called \`useRoutes()\`) at "${v}" (under ) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render. +`+l.stack}}var ku=Object.prototype.hasOwnProperty,Xu=u.unstable_scheduleCallback,Gu=u.unstable_cancelCallback,rp=u.unstable_shouldYield,op=u.unstable_requestPaint,st=u.unstable_now,fp=u.unstable_getCurrentPriorityLevel,Qr=u.unstable_ImmediatePriority,Zr=u.unstable_UserBlockingPriority,ni=u.unstable_NormalPriority,hp=u.unstable_LowPriority,Kr=u.unstable_IdlePriority,dp=u.log,mp=u.unstable_setDisableYieldValue,Fl=null,ct=null;function hn(e){if(typeof dp=="function"&&mp(e),ct&&typeof ct.setStrictMode=="function")try{ct.setStrictMode(Fl,e)}catch{}}var rt=Math.clz32?Math.clz32:vp,pp=Math.log,yp=Math.LN2;function vp(e){return e>>>=0,e===0?32:31-(pp(e)/yp|0)|0}var li=256,ai=262144,ii=4194304;function Yn(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function ui(e,t,n){var l=e.pendingLanes;if(l===0)return 0;var a=0,s=e.suspendedLanes,o=e.pingedLanes;e=e.warmLanes;var d=l&134217727;return d!==0?(l=d&~s,l!==0?a=Yn(l):(o&=d,o!==0?a=Yn(o):n||(n=d&~e,n!==0&&(a=Yn(n))))):(d=l&~s,d!==0?a=Yn(d):o!==0?a=Yn(o):n||(n=l&~e,n!==0&&(a=Yn(n)))),a===0?0:t!==0&&t!==a&&(t&s)===0&&(s=a&-a,n=t&-t,s>=n||s===32&&(n&4194048)!==0)?t:a}function Pl(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function gp(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Jr(){var e=ii;return ii<<=1,(ii&62914560)===0&&(ii=4194304),e}function Vu(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function Il(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function bp(e,t,n,l,a,s){var o=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var d=e.entanglements,g=e.expirationTimes,N=e.hiddenUpdates;for(n=o&~n;0"u")return null;try{return e.activeElement||e.body}catch{return e.body}}var Ap=/[\n"\\]/g;function gt(e){return e.replace(Ap,function(t){return"\\"+t.charCodeAt(0).toString(16)+" "})}function Wu(e,t,n,l,a,s,o,d){e.name="",o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"?e.type=o:e.removeAttribute("type"),t!=null?o==="number"?(t===0&&e.value===""||e.value!=t)&&(e.value=""+vt(t)):e.value!==""+vt(t)&&(e.value=""+vt(t)):o!=="submit"&&o!=="reset"||e.removeAttribute("value"),t!=null?Fu(e,o,vt(t)):n!=null?Fu(e,o,vt(n)):l!=null&&e.removeAttribute("value"),a==null&&s!=null&&(e.defaultChecked=!!s),a!=null&&(e.checked=a&&typeof a!="function"&&typeof a!="symbol"),d!=null&&typeof d!="function"&&typeof d!="symbol"&&typeof d!="boolean"?e.name=""+vt(d):e.removeAttribute("name")}function so(e,t,n,l,a,s,o,d){if(s!=null&&typeof s!="function"&&typeof s!="symbol"&&typeof s!="boolean"&&(e.type=s),t!=null||n!=null){if(!(s!=="submit"&&s!=="reset"||t!=null)){$u(e);return}n=n!=null?""+vt(n):"",t=t!=null?""+vt(t):n,d||t===e.value||(e.value=t),e.defaultValue=t}l=l??a,l=typeof l!="function"&&typeof l!="symbol"&&!!l,e.checked=d?e.checked:!!l,e.defaultChecked=!!l,o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"&&(e.name=o),$u(e)}function Fu(e,t,n){t==="number"&&ri(e.ownerDocument)===e||e.defaultValue===""+n||(e.defaultValue=""+n)}function dl(e,t,n,l){if(e=e.options,t){t={};for(var a=0;a"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),ns=!1;if(Qt)try{var la={};Object.defineProperty(la,"passive",{get:function(){ns=!0}}),window.addEventListener("test",la,la),window.removeEventListener("test",la,la)}catch{ns=!1}var mn=null,ls=null,fi=null;function po(){if(fi)return fi;var e,t=ls,n=t.length,l,a="value"in mn?mn.value:mn.textContent,s=a.length;for(e=0;e=ua),xo=" ",_o=!1;function Eo(e,t){switch(e){case"keyup":return Ip.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function To(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var vl=!1;function ty(e,t){switch(e){case"compositionend":return To(t);case"keypress":return t.which!==32?null:(_o=!0,xo);case"textInput":return e=t.data,e===xo&&_o?null:e;default:return null}}function ny(e,t){if(vl)return e==="compositionend"||!cs&&Eo(e,t)?(e=po(),fi=ls=mn=null,vl=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=l}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=Do(n)}}function wo(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?wo(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Uo(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=ri(e.document);t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=ri(e.document)}return t}function fs(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}var oy=Qt&&"documentMode"in document&&11>=document.documentMode,gl=null,hs=null,oa=null,ds=!1;function Bo(e,t,n){var l=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;ds||gl==null||gl!==ri(l)||(l=gl,"selectionStart"in l&&fs(l)?l={start:l.selectionStart,end:l.selectionEnd}:(l=(l.ownerDocument&&l.ownerDocument.defaultView||window).getSelection(),l={anchorNode:l.anchorNode,anchorOffset:l.anchorOffset,focusNode:l.focusNode,focusOffset:l.focusOffset}),oa&&ra(oa,l)||(oa=l,l=au(hs,"onSelect"),0>=o,a-=o,wt=1<<32-rt(t)+a|n<ne?(se=K,K=null):se=K.sibling;var fe=O(A,K,R[ne],w);if(fe===null){K===null&&(K=se);break}e&&K&&fe.alternate===null&&t(A,K),x=s(fe,x,ne),oe===null?J=fe:oe.sibling=fe,oe=fe,K=se}if(ne===R.length)return n(A,K),ce&&Kt(A,ne),J;if(K===null){for(;nene?(se=K,K=null):se=K.sibling;var Bn=O(A,K,fe.value,w);if(Bn===null){K===null&&(K=se);break}e&&K&&Bn.alternate===null&&t(A,K),x=s(Bn,x,ne),oe===null?J=Bn:oe.sibling=Bn,oe=Bn,K=se}if(fe.done)return n(A,K),ce&&Kt(A,ne),J;if(K===null){for(;!fe.done;ne++,fe=R.next())fe=U(A,fe.value,w),fe!==null&&(x=s(fe,x,ne),oe===null?J=fe:oe.sibling=fe,oe=fe);return ce&&Kt(A,ne),J}for(K=l(K);!fe.done;ne++,fe=R.next())fe=M(K,A,ne,fe.value,w),fe!==null&&(e&&fe.alternate!==null&&K.delete(fe.key===null?ne:fe.key),x=s(fe,x,ne),oe===null?J=fe:oe.sibling=fe,oe=fe);return e&&K.forEach(function(z0){return t(A,z0)}),ce&&Kt(A,ne),J}function Se(A,x,R,w){if(typeof R=="object"&&R!==null&&R.type===X&&R.key===null&&(R=R.props.children),typeof R=="object"&&R!==null){switch(R.$$typeof){case z:e:{for(var J=R.key;x!==null;){if(x.key===J){if(J=R.type,J===X){if(x.tag===7){n(A,x.sibling),w=a(x,R.props.children),w.return=A,A=w;break e}}else if(x.elementType===J||typeof J=="object"&&J!==null&&J.$$typeof===Te&&Fn(J)===x.type){n(A,x.sibling),w=a(x,R.props),ya(w,R),w.return=A,A=w;break e}n(A,x);break}else t(A,x);x=x.sibling}R.type===X?(w=Zn(R.props.children,A.mode,w,R.key),w.return=A,A=w):(w=xi(R.type,R.key,R.props,null,A.mode,w),ya(w,R),w.return=A,A=w)}return o(A);case L:e:{for(J=R.key;x!==null;){if(x.key===J)if(x.tag===4&&x.stateNode.containerInfo===R.containerInfo&&x.stateNode.implementation===R.implementation){n(A,x.sibling),w=a(x,R.children||[]),w.return=A,A=w;break e}else{n(A,x);break}else t(A,x);x=x.sibling}w=Ss(R,A.mode,w),w.return=A,A=w}return o(A);case Te:return R=Fn(R),Se(A,x,R,w)}if(Nt(R))return Q(A,x,R,w);if(We(R)){if(J=We(R),typeof J!="function")throw Error(r(150));return R=J.call(R),W(A,x,R,w)}if(typeof R.then=="function")return Se(A,x,Ni(R),w);if(R.$$typeof===k)return Se(A,x,Ti(A,R),w);Oi(A,R)}return typeof R=="string"&&R!==""||typeof R=="number"||typeof R=="bigint"?(R=""+R,x!==null&&x.tag===6?(n(A,x.sibling),w=a(x,R),w.return=A,A=w):(n(A,x),w=bs(R,A.mode,w),w.return=A,A=w),o(A)):n(A,x)}return function(A,x,R,w){try{pa=0;var J=Se(A,x,R,w);return Ol=null,J}catch(K){if(K===Nl||K===Ci)throw K;var oe=ft(29,K,null,A.mode);return oe.lanes=w,oe.return=A,oe}finally{}}}var In=uf(!0),sf=uf(!1),bn=!1;function Ds(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function js(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function Sn(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function xn(e,t,n){var l=e.updateQueue;if(l===null)return null;if(l=l.shared,(he&2)!==0){var a=l.pending;return a===null?t.next=t:(t.next=a.next,a.next=t),l.pending=t,t=Si(e),Go(e,null,n),t}return bi(e,l,t,n),Si(e)}function va(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194048)!==0)){var l=t.lanes;l&=e.pendingLanes,n|=l,t.lanes=n,Wr(e,n)}}function ws(e,t){var n=e.updateQueue,l=e.alternate;if(l!==null&&(l=l.updateQueue,n===l)){var a=null,s=null;if(n=n.firstBaseUpdate,n!==null){do{var o={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};s===null?a=s=o:s=s.next=o,n=n.next}while(n!==null);s===null?a=s=t:s=s.next=t}else a=s=t;n={baseState:l.baseState,firstBaseUpdate:a,lastBaseUpdate:s,shared:l.shared,callbacks:l.callbacks},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}var Us=!1;function ga(){if(Us){var e=Rl;if(e!==null)throw e}}function ba(e,t,n,l){Us=!1;var a=e.updateQueue;bn=!1;var s=a.firstBaseUpdate,o=a.lastBaseUpdate,d=a.shared.pending;if(d!==null){a.shared.pending=null;var g=d,N=g.next;g.next=null,o===null?s=N:o.next=N,o=g;var D=e.alternate;D!==null&&(D=D.updateQueue,d=D.lastBaseUpdate,d!==o&&(d===null?D.firstBaseUpdate=N:d.next=N,D.lastBaseUpdate=g))}if(s!==null){var U=a.baseState;o=0,D=N=g=null,d=s;do{var O=d.lane&-536870913,M=O!==d.lane;if(M?(ue&O)===O:(l&O)===O){O!==0&&O===Cl&&(Us=!0),D!==null&&(D=D.next={lane:0,tag:d.tag,payload:d.payload,callback:null,next:null});e:{var Q=e,W=d;O=t;var Se=n;switch(W.tag){case 1:if(Q=W.payload,typeof Q=="function"){U=Q.call(Se,U,O);break e}U=Q;break e;case 3:Q.flags=Q.flags&-65537|128;case 0:if(Q=W.payload,O=typeof Q=="function"?Q.call(Se,U,O):Q,O==null)break e;U=S({},U,O);break e;case 2:bn=!0}}O=d.callback,O!==null&&(e.flags|=64,M&&(e.flags|=8192),M=a.callbacks,M===null?a.callbacks=[O]:M.push(O))}else M={lane:O,tag:d.tag,payload:d.payload,callback:d.callback,next:null},D===null?(N=D=M,g=U):D=D.next=M,o|=O;if(d=d.next,d===null){if(d=a.shared.pending,d===null)break;M=d,d=M.next,M.next=null,a.lastBaseUpdate=M,a.shared.pending=null}}while(!0);D===null&&(g=U),a.baseState=g,a.firstBaseUpdate=N,a.lastBaseUpdate=D,s===null&&(a.shared.lanes=0),Cn|=o,e.lanes=o,e.memoizedState=U}}function cf(e,t){if(typeof e!="function")throw Error(r(191,e));e.call(t)}function rf(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;es?s:8;var o=j.T,d={};j.T=d,ec(e,!1,t,n);try{var g=a(),N=j.S;if(N!==null&&N(d,g),g!==null&&typeof g=="object"&&typeof g.then=="function"){var D=by(g,l);_a(e,t,D,yt(e))}else _a(e,t,l,yt(e))}catch(U){_a(e,t,{then:function(){},status:"rejected",reason:U},yt())}finally{G.p=s,o!==null&&d.types!==null&&(o.types=d.types),j.T=o}}function Ay(){}function Ps(e,t,n,l){if(e.tag!==5)throw Error(r(476));var a=kf(e).queue;Yf(e,a,t,P,n===null?Ay:function(){return Xf(e),n(l)})}function kf(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:P,baseState:P,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Ft,lastRenderedState:P},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Ft,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function Xf(e){var t=kf(e);t.next===null&&(t=e.alternate.memoizedState),_a(e,t.next.queue,{},yt())}function Is(){return Ke(qa)}function Gf(){return we().memoizedState}function Vf(){return we().memoizedState}function Cy(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var n=yt();e=Sn(n);var l=xn(t,e,n);l!==null&&(ut(l,t,n),va(l,t,n)),t={cache:Ns()},e.payload=t;return}t=t.return}}function Ry(e,t,n){var l=yt();n={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},qi(e)?Zf(t,n):(n=vs(e,t,n,l),n!==null&&(ut(n,e,l),Kf(n,t,l)))}function Qf(e,t,n){var l=yt();_a(e,t,n,l)}function _a(e,t,n,l){var a={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(qi(e))Zf(t,a);else{var s=e.alternate;if(e.lanes===0&&(s===null||s.lanes===0)&&(s=t.lastRenderedReducer,s!==null))try{var o=t.lastRenderedState,d=s(o,n);if(a.hasEagerState=!0,a.eagerState=d,ot(d,o))return bi(e,t,a,0),Ee===null&&gi(),!1}catch{}finally{}if(n=vs(e,t,a,l),n!==null)return ut(n,e,l),Kf(n,t,l),!0}return!1}function ec(e,t,n,l){if(l={lane:2,revertLane:Dc(),gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},qi(e)){if(t)throw Error(r(479))}else t=vs(e,n,l,2),t!==null&&ut(t,e,2)}function qi(e){var t=e.alternate;return e===te||t!==null&&t===te}function Zf(e,t){Ml=Di=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Kf(e,t,n){if((n&4194048)!==0){var l=t.lanes;l&=e.pendingLanes,n|=l,t.lanes=n,Wr(e,n)}}var Ea={readContext:Ke,use:Ui,useCallback:ze,useContext:ze,useEffect:ze,useImperativeHandle:ze,useLayoutEffect:ze,useInsertionEffect:ze,useMemo:ze,useReducer:ze,useRef:ze,useState:ze,useDebugValue:ze,useDeferredValue:ze,useTransition:ze,useSyncExternalStore:ze,useId:ze,useHostTransitionStatus:ze,useFormState:ze,useActionState:ze,useOptimistic:ze,useMemoCache:ze,useCacheRefresh:ze};Ea.useEffectEvent=ze;var Jf={readContext:Ke,use:Ui,useCallback:function(e,t){return Ie().memoizedState=[e,t===void 0?null:t],e},useContext:Ke,useEffect:Mf,useImperativeHandle:function(e,t,n){n=n!=null?n.concat([e]):null,Li(4194308,4,Uf.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Li(4194308,4,e,t)},useInsertionEffect:function(e,t){Li(4,2,e,t)},useMemo:function(e,t){var n=Ie();t=t===void 0?null:t;var l=e();if(el){hn(!0);try{e()}finally{hn(!1)}}return n.memoizedState=[l,t],l},useReducer:function(e,t,n){var l=Ie();if(n!==void 0){var a=n(t);if(el){hn(!0);try{n(t)}finally{hn(!1)}}}else a=t;return l.memoizedState=l.baseState=a,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:a},l.queue=e,e=e.dispatch=Ry.bind(null,te,e),[l.memoizedState,e]},useRef:function(e){var t=Ie();return e={current:e},t.memoizedState=e},useState:function(e){e=Ks(e);var t=e.queue,n=Qf.bind(null,te,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:Ws,useDeferredValue:function(e,t){var n=Ie();return Fs(n,e,t)},useTransition:function(){var e=Ks(!1);return e=Yf.bind(null,te,e.queue,!0,!1),Ie().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var l=te,a=Ie();if(ce){if(n===void 0)throw Error(r(407));n=n()}else{if(n=t(),Ee===null)throw Error(r(349));(ue&127)!==0||pf(l,t,n)}a.memoizedState=n;var s={value:n,getSnapshot:t};return a.queue=s,Mf(vf.bind(null,l,s,e),[e]),l.flags|=2048,jl(9,{destroy:void 0},yf.bind(null,l,s,n,t),null),n},useId:function(){var e=Ie(),t=Ee.identifierPrefix;if(ce){var n=Ut,l=wt;n=(l&~(1<<32-rt(l)-1)).toString(32)+n,t="_"+t+"R_"+n,n=ji++,0<\/script>",s=s.removeChild(s.firstChild);break;case"select":s=typeof l.is=="string"?o.createElement("select",{is:l.is}):o.createElement("select"),l.multiple?s.multiple=!0:l.size&&(s.size=l.size);break;default:s=typeof l.is=="string"?o.createElement(a,{is:l.is}):o.createElement(a)}}s[Qe]=t,s[et]=l;e:for(o=t.child;o!==null;){if(o.tag===5||o.tag===6)s.appendChild(o.stateNode);else if(o.tag!==4&&o.tag!==27&&o.child!==null){o.child.return=o,o=o.child;continue}if(o===t)break e;for(;o.sibling===null;){if(o.return===null||o.return===t)break e;o=o.return}o.sibling.return=o.return,o=o.sibling}t.stateNode=s;e:switch($e(s,a,l),a){case"button":case"input":case"select":case"textarea":l=!!l.autoFocus;break e;case"img":l=!0;break e;default:l=!1}l&&It(t)}}return Ce(t),mc(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==l&&It(t);else{if(typeof l!="string"&&t.stateNode===null)throw Error(r(166));if(e=le.current,Tl(t)){if(e=t.stateNode,n=t.memoizedProps,l=null,a=Ze,a!==null)switch(a.tag){case 27:case 5:l=a.memoizedProps}e[Qe]=t,e=!!(e.nodeValue===n||l!==null&&l.suppressHydrationWarning===!0||dd(e.nodeValue,n)),e||vn(t,!0)}else e=iu(e).createTextNode(l),e[Qe]=t,t.stateNode=e}return Ce(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(l=Tl(t),n!==null){if(e===null){if(!l)throw Error(r(318));if(e=t.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(r(557));e[Qe]=t}else Kn(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Ce(t),e=!1}else n=Ts(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(dt(t),t):(dt(t),null);if((t.flags&128)!==0)throw Error(r(558))}return Ce(t),null;case 13:if(l=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(a=Tl(t),l!==null&&l.dehydrated!==null){if(e===null){if(!a)throw Error(r(318));if(a=t.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(r(317));a[Qe]=t}else Kn(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Ce(t),a=!1}else a=Ts(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=a),a=!0;if(!a)return t.flags&256?(dt(t),t):(dt(t),null)}return dt(t),(t.flags&128)!==0?(t.lanes=n,t):(n=l!==null,e=e!==null&&e.memoizedState!==null,n&&(l=t.child,a=null,l.alternate!==null&&l.alternate.memoizedState!==null&&l.alternate.memoizedState.cachePool!==null&&(a=l.alternate.memoizedState.cachePool.pool),s=null,l.memoizedState!==null&&l.memoizedState.cachePool!==null&&(s=l.memoizedState.cachePool.pool),s!==a&&(l.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),Vi(t,t.updateQueue),Ce(t),null);case 4:return De(),e===null&&Bc(t.stateNode.containerInfo),Ce(t),null;case 10:return $t(t.type),Ce(t),null;case 19:if(B(je),l=t.memoizedState,l===null)return Ce(t),null;if(a=(t.flags&128)!==0,s=l.rendering,s===null)if(a)Aa(l,!1);else{if(Me!==0||e!==null&&(e.flags&128)!==0)for(e=t.child;e!==null;){if(s=Mi(e),s!==null){for(t.flags|=128,Aa(l,!1),e=s.updateQueue,t.updateQueue=e,Vi(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)Vo(n,e),n=n.sibling;return V(je,je.current&1|2),ce&&Kt(t,l.treeForkCount),t.child}e=e.sibling}l.tail!==null&&st()>$i&&(t.flags|=128,a=!0,Aa(l,!1),t.lanes=4194304)}else{if(!a)if(e=Mi(s),e!==null){if(t.flags|=128,a=!0,e=e.updateQueue,t.updateQueue=e,Vi(t,e),Aa(l,!0),l.tail===null&&l.tailMode==="hidden"&&!s.alternate&&!ce)return Ce(t),null}else 2*st()-l.renderingStartTime>$i&&n!==536870912&&(t.flags|=128,a=!0,Aa(l,!1),t.lanes=4194304);l.isBackwards?(s.sibling=t.child,t.child=s):(e=l.last,e!==null?e.sibling=s:t.child=s,l.last=s)}return l.tail!==null?(e=l.tail,l.rendering=e,l.tail=e.sibling,l.renderingStartTime=st(),e.sibling=null,n=je.current,V(je,a?n&1|2:n&1),ce&&Kt(t,l.treeForkCount),e):(Ce(t),null);case 22:case 23:return dt(t),Ls(),l=t.memoizedState!==null,e!==null?e.memoizedState!==null!==l&&(t.flags|=8192):l&&(t.flags|=8192),l?(n&536870912)!==0&&(t.flags&128)===0&&(Ce(t),t.subtreeFlags&6&&(t.flags|=8192)):Ce(t),n=t.updateQueue,n!==null&&Vi(t,n.retryQueue),n=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),l=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(l=t.memoizedState.cachePool.pool),l!==n&&(t.flags|=2048),e!==null&&B(Wn),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),$t(Be),Ce(t),null;case 25:return null;case 30:return null}throw Error(r(156,t.tag))}function Dy(e,t){switch(_s(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return $t(Be),De(),e=t.flags,(e&65536)!==0&&(e&128)===0?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return ti(t),null;case 31:if(t.memoizedState!==null){if(dt(t),t.alternate===null)throw Error(r(340));Kn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(dt(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(r(340));Kn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return B(je),null;case 4:return De(),null;case 10:return $t(t.type),null;case 22:case 23:return dt(t),Ls(),e!==null&&B(Wn),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return $t(Be),null;case 25:return null;default:return null}}function gh(e,t){switch(_s(t),t.tag){case 3:$t(Be),De();break;case 26:case 27:case 5:ti(t);break;case 4:De();break;case 31:t.memoizedState!==null&&dt(t);break;case 13:dt(t);break;case 19:B(je);break;case 10:$t(t.type);break;case 22:case 23:dt(t),Ls(),e!==null&&B(Wn);break;case 24:$t(Be)}}function Ca(e,t){try{var n=t.updateQueue,l=n!==null?n.lastEffect:null;if(l!==null){var a=l.next;n=a;do{if((n.tag&e)===e){l=void 0;var s=n.create,o=n.inst;l=s(),o.destroy=l}n=n.next}while(n!==a)}}catch(d){pe(t,t.return,d)}}function Tn(e,t,n){try{var l=t.updateQueue,a=l!==null?l.lastEffect:null;if(a!==null){var s=a.next;l=s;do{if((l.tag&e)===e){var o=l.inst,d=o.destroy;if(d!==void 0){o.destroy=void 0,a=t;var g=n,N=d;try{N()}catch(D){pe(a,g,D)}}}l=l.next}while(l!==s)}}catch(D){pe(t,t.return,D)}}function bh(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{rf(t,n)}catch(l){pe(e,e.return,l)}}}function Sh(e,t,n){n.props=tl(e.type,e.memoizedProps),n.state=e.memoizedState;try{n.componentWillUnmount()}catch(l){pe(e,t,l)}}function Ra(e,t){try{var n=e.ref;if(n!==null){switch(e.tag){case 26:case 27:case 5:var l=e.stateNode;break;case 30:l=e.stateNode;break;default:l=e.stateNode}typeof n=="function"?e.refCleanup=n(l):n.current=l}}catch(a){pe(e,t,a)}}function Bt(e,t){var n=e.ref,l=e.refCleanup;if(n!==null)if(typeof l=="function")try{l()}catch(a){pe(e,t,a)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n=="function")try{n(null)}catch(a){pe(e,t,a)}else n.current=null}function xh(e){var t=e.type,n=e.memoizedProps,l=e.stateNode;try{e:switch(t){case"button":case"input":case"select":case"textarea":n.autoFocus&&l.focus();break e;case"img":n.src?l.src=n.src:n.srcSet&&(l.srcset=n.srcSet)}}catch(a){pe(e,e.return,a)}}function pc(e,t,n){try{var l=e.stateNode;e0(l,e.type,n,t),l[et]=t}catch(a){pe(e,e.return,a)}}function _h(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&Mn(e.type)||e.tag===4}function yc(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||_h(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&&Mn(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 vc(e,t,n){var l=e.tag;if(l===5||l===6)e=e.stateNode,t?(n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n).insertBefore(e,t):(t=n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n,t.appendChild(e),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=Vt));else if(l!==4&&(l===27&&Mn(e.type)&&(n=e.stateNode,t=null),e=e.child,e!==null))for(vc(e,t,n),e=e.sibling;e!==null;)vc(e,t,n),e=e.sibling}function Qi(e,t,n){var l=e.tag;if(l===5||l===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(l!==4&&(l===27&&Mn(e.type)&&(n=e.stateNode),e=e.child,e!==null))for(Qi(e,t,n),e=e.sibling;e!==null;)Qi(e,t,n),e=e.sibling}function Eh(e){var t=e.stateNode,n=e.memoizedProps;try{for(var l=e.type,a=t.attributes;a.length;)t.removeAttributeNode(a[0]);$e(t,l,n),t[Qe]=e,t[et]=n}catch(s){pe(e,e.return,s)}}var en=!1,qe=!1,gc=!1,Th=typeof WeakSet=="function"?WeakSet:Set,Ve=null;function jy(e,t){if(e=e.containerInfo,qc=hu,e=Uo(e),fs(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var l=n.getSelection&&n.getSelection();if(l&&l.rangeCount!==0){n=l.anchorNode;var a=l.anchorOffset,s=l.focusNode;l=l.focusOffset;try{n.nodeType,s.nodeType}catch{n=null;break e}var o=0,d=-1,g=-1,N=0,D=0,U=e,O=null;t:for(;;){for(var M;U!==n||a!==0&&U.nodeType!==3||(d=o+a),U!==s||l!==0&&U.nodeType!==3||(g=o+l),U.nodeType===3&&(o+=U.nodeValue.length),(M=U.firstChild)!==null;)O=U,U=M;for(;;){if(U===e)break t;if(O===n&&++N===a&&(d=o),O===s&&++D===l&&(g=o),(M=U.nextSibling)!==null)break;U=O,O=U.parentNode}U=M}n=d===-1||g===-1?null:{start:d,end:g}}else n=null}n=n||{start:0,end:0}}else n=null;for(Yc={focusedElem:e,selectionRange:n},hu=!1,Ve=t;Ve!==null;)if(t=Ve,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,Ve=e;else for(;Ve!==null;){switch(t=Ve,s=t.alternate,e=t.flags,t.tag){case 0:if((e&4)!==0&&(e=t.updateQueue,e=e!==null?e.events:null,e!==null))for(n=0;n title"))),$e(s,l,n),s[Qe]=e,Ge(s),l=s;break e;case"link":var o=zd("link","href",a).get(l+(n.href||""));if(o){for(var d=0;dSe&&(o=Se,Se=W,W=o);var A=jo(d,W),x=jo(d,Se);if(A&&x&&(M.rangeCount!==1||M.anchorNode!==A.node||M.anchorOffset!==A.offset||M.focusNode!==x.node||M.focusOffset!==x.offset)){var R=U.createRange();R.setStart(A.node,A.offset),M.removeAllRanges(),W>Se?(M.addRange(R),M.extend(x.node,x.offset)):(R.setEnd(x.node,x.offset),M.addRange(R))}}}}for(U=[],M=d;M=M.parentNode;)M.nodeType===1&&U.push({element:M,left:M.scrollLeft,top:M.scrollTop});for(typeof d.focus=="function"&&d.focus(),d=0;dn?32:n,j.T=null,n=Ac,Ac=null;var s=Nn,o=un;if(ke=0,Hl=Nn=null,un=0,(he&6)!==0)throw Error(r(331));var d=he;if(he|=4,Uh(s.current),Dh(s,s.current,o,n),he=d,ja(0,!1),ct&&typeof ct.onPostCommitFiberRoot=="function")try{ct.onPostCommitFiberRoot(Fl,s)}catch{}return!0}finally{G.p=a,j.T=l,Ih(e,t)}}function td(e,t,n){t=St(n,t),t=ac(e.stateNode,t,2),e=xn(e,t,2),e!==null&&(Il(e,2),Lt(e))}function pe(e,t,n){if(e.tag===3)td(e,e,n);else for(;t!==null;){if(t.tag===3){td(t,e,n);break}else if(t.tag===1){var l=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof l.componentDidCatch=="function"&&(Rn===null||!Rn.has(l))){e=St(n,e),n=nh(2),l=xn(t,n,2),l!==null&&(lh(n,l,t,e),Il(l,2),Lt(l));break}}t=t.return}}function Oc(e,t,n){var l=e.pingCache;if(l===null){l=e.pingCache=new By;var a=new Set;l.set(t,a)}else a=l.get(t),a===void 0&&(a=new Set,l.set(t,a));a.has(n)||(xc=!0,a.add(n),e=ky.bind(null,e,t,n),t.then(e,e))}function ky(e,t,n){var l=e.pingCache;l!==null&&l.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,Ee===e&&(ue&n)===n&&(Me===4||Me===3&&(ue&62914560)===ue&&300>st()-Ji?(he&2)===0&&ql(e,0):_c|=n,Ll===ue&&(Ll=0)),Lt(e)}function nd(e,t){t===0&&(t=Jr()),e=Qn(e,t),e!==null&&(Il(e,t),Lt(e))}function Xy(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),nd(e,n)}function Gy(e,t){var n=0;switch(e.tag){case 31:case 13:var l=e.stateNode,a=e.memoizedState;a!==null&&(n=a.retryLane);break;case 19:l=e.stateNode;break;case 22:l=e.stateNode._retryCache;break;default:throw Error(r(314))}l!==null&&l.delete(t),nd(e,n)}function Vy(e,t){return Xu(e,t)}var tu=null,kl=null,zc=!1,nu=!1,Mc=!1,zn=0;function Lt(e){e!==kl&&e.next===null&&(kl===null?tu=kl=e:kl=kl.next=e),nu=!0,zc||(zc=!0,Zy())}function ja(e,t){if(!Mc&&nu){Mc=!0;do for(var n=!1,l=tu;l!==null;){if(e!==0){var a=l.pendingLanes;if(a===0)var s=0;else{var o=l.suspendedLanes,d=l.pingedLanes;s=(1<<31-rt(42|e)+1)-1,s&=a&~(o&~d),s=s&201326741?s&201326741|1:s?s|2:0}s!==0&&(n=!0,ud(l,s))}else s=ue,s=ui(l,l===Ee?s:0,l.cancelPendingCommit!==null||l.timeoutHandle!==-1),(s&3)===0||Pl(l,s)||(n=!0,ud(l,s));l=l.next}while(n);Mc=!1}}function Qy(){ld()}function ld(){nu=zc=!1;var e=0;zn!==0&&n0()&&(e=zn);for(var t=st(),n=null,l=tu;l!==null;){var a=l.next,s=ad(l,t);s===0?(l.next=null,n===null?tu=a:n.next=a,a===null&&(kl=n)):(n=l,(e!==0||(s&3)!==0)&&(nu=!0)),l=a}ke!==0&&ke!==5||ja(e),zn!==0&&(zn=0)}function ad(e,t){for(var n=e.suspendedLanes,l=e.pingedLanes,a=e.expirationTimes,s=e.pendingLanes&-62914561;0d)break;var D=g.transferSize,U=g.initiatorType;D&&md(U)&&(g=g.responseEnd,o+=D*(g"u"?null:document;function Cd(e,t,n){var l=Xl;if(l&&typeof t=="string"&&t){var a=gt(t);a='link[rel="'+e+'"][href="'+a+'"]',typeof n=="string"&&(a+='[crossorigin="'+n+'"]'),Ad.has(a)||(Ad.add(a),e={rel:e,crossOrigin:n,href:t},l.querySelector(a)===null&&(t=l.createElement("link"),$e(t,"link",e),Ge(t),l.head.appendChild(t)))}}function f0(e){sn.D(e),Cd("dns-prefetch",e,null)}function h0(e,t){sn.C(e,t),Cd("preconnect",e,t)}function d0(e,t,n){sn.L(e,t,n);var l=Xl;if(l&&e&&t){var a='link[rel="preload"][as="'+gt(t)+'"]';t==="image"&&n&&n.imageSrcSet?(a+='[imagesrcset="'+gt(n.imageSrcSet)+'"]',typeof n.imageSizes=="string"&&(a+='[imagesizes="'+gt(n.imageSizes)+'"]')):a+='[href="'+gt(e)+'"]';var s=a;switch(t){case"style":s=Gl(e);break;case"script":s=Vl(e)}Ct.has(s)||(e=S({rel:"preload",href:t==="image"&&n&&n.imageSrcSet?void 0:e,as:t},n),Ct.set(s,e),l.querySelector(a)!==null||t==="style"&&l.querySelector(La(s))||t==="script"&&l.querySelector(Ha(s))||(t=l.createElement("link"),$e(t,"link",e),Ge(t),l.head.appendChild(t)))}}function m0(e,t){sn.m(e,t);var n=Xl;if(n&&e){var l=t&&typeof t.as=="string"?t.as:"script",a='link[rel="modulepreload"][as="'+gt(l)+'"][href="'+gt(e)+'"]',s=a;switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":s=Vl(e)}if(!Ct.has(s)&&(e=S({rel:"modulepreload",href:e},t),Ct.set(s,e),n.querySelector(a)===null)){switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(n.querySelector(Ha(s)))return}l=n.createElement("link"),$e(l,"link",e),Ge(l),n.head.appendChild(l)}}}function p0(e,t,n){sn.S(e,t,n);var l=Xl;if(l&&e){var a=fl(l).hoistableStyles,s=Gl(e);t=t||"default";var o=a.get(s);if(!o){var d={loading:0,preload:null};if(o=l.querySelector(La(s)))d.loading=5;else{e=S({rel:"stylesheet",href:e,"data-precedence":t},n),(n=Ct.get(s))&&Kc(e,n);var g=o=l.createElement("link");Ge(g),$e(g,"link",e),g._p=new Promise(function(N,D){g.onload=N,g.onerror=D}),g.addEventListener("load",function(){d.loading|=1}),g.addEventListener("error",function(){d.loading|=2}),d.loading|=4,su(o,t,l)}o={type:"stylesheet",instance:o,count:1,state:d},a.set(s,o)}}}function y0(e,t){sn.X(e,t);var n=Xl;if(n&&e){var l=fl(n).hoistableScripts,a=Vl(e),s=l.get(a);s||(s=n.querySelector(Ha(a)),s||(e=S({src:e,async:!0},t),(t=Ct.get(a))&&Jc(e,t),s=n.createElement("script"),Ge(s),$e(s,"link",e),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function v0(e,t){sn.M(e,t);var n=Xl;if(n&&e){var l=fl(n).hoistableScripts,a=Vl(e),s=l.get(a);s||(s=n.querySelector(Ha(a)),s||(e=S({src:e,async:!0,type:"module"},t),(t=Ct.get(a))&&Jc(e,t),s=n.createElement("script"),Ge(s),$e(s,"link",e),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function Rd(e,t,n,l){var a=(a=le.current)?uu(a):null;if(!a)throw Error(r(446));switch(e){case"meta":case"title":return null;case"style":return typeof n.precedence=="string"&&typeof n.href=="string"?(t=Gl(n.href),n=fl(a).hoistableStyles,l=n.get(t),l||(l={type:"style",instance:null,count:0,state:null},n.set(t,l)),l):{type:"void",instance:null,count:0,state:null};case"link":if(n.rel==="stylesheet"&&typeof n.href=="string"&&typeof n.precedence=="string"){e=Gl(n.href);var s=fl(a).hoistableStyles,o=s.get(e);if(o||(a=a.ownerDocument||a,o={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},s.set(e,o),(s=a.querySelector(La(e)))&&!s._p&&(o.instance=s,o.state.loading=5),Ct.has(e)||(n={rel:"preload",as:"style",href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},Ct.set(e,n),s||g0(a,e,n,o.state))),t&&l===null)throw Error(r(528,""));return o}if(t&&l!==null)throw Error(r(529,""));return null;case"script":return t=n.async,n=n.src,typeof n=="string"&&t&&typeof t!="function"&&typeof t!="symbol"?(t=Vl(n),n=fl(a).hoistableScripts,l=n.get(t),l||(l={type:"script",instance:null,count:0,state:null},n.set(t,l)),l):{type:"void",instance:null,count:0,state:null};default:throw Error(r(444,e))}}function Gl(e){return'href="'+gt(e)+'"'}function La(e){return'link[rel="stylesheet"]['+e+"]"}function Nd(e){return S({},e,{"data-precedence":e.precedence,precedence:null})}function g0(e,t,n,l){e.querySelector('link[rel="preload"][as="style"]['+t+"]")?l.loading=1:(t=e.createElement("link"),l.preload=t,t.addEventListener("load",function(){return l.loading|=1}),t.addEventListener("error",function(){return l.loading|=2}),$e(t,"link",n),Ge(t),e.head.appendChild(t))}function Vl(e){return'[src="'+gt(e)+'"]'}function Ha(e){return"script[async]"+e}function Od(e,t,n){if(t.count++,t.instance===null)switch(t.type){case"style":var l=e.querySelector('style[data-href~="'+gt(n.href)+'"]');if(l)return t.instance=l,Ge(l),l;var a=S({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return l=(e.ownerDocument||e).createElement("style"),Ge(l),$e(l,"style",a),su(l,n.precedence,e),t.instance=l;case"stylesheet":a=Gl(n.href);var s=e.querySelector(La(a));if(s)return t.state.loading|=4,t.instance=s,Ge(s),s;l=Nd(n),(a=Ct.get(a))&&Kc(l,a),s=(e.ownerDocument||e).createElement("link"),Ge(s);var o=s;return o._p=new Promise(function(d,g){o.onload=d,o.onerror=g}),$e(s,"link",l),t.state.loading|=4,su(s,n.precedence,e),t.instance=s;case"script":return s=Vl(n.src),(a=e.querySelector(Ha(s)))?(t.instance=a,Ge(a),a):(l=n,(a=Ct.get(s))&&(l=S({},n),Jc(l,a)),e=e.ownerDocument||e,a=e.createElement("script"),Ge(a),$e(a,"link",l),e.head.appendChild(a),t.instance=a);case"void":return null;default:throw Error(r(443,t.type))}else t.type==="stylesheet"&&(t.state.loading&4)===0&&(l=t.instance,t.state.loading|=4,su(l,n.precedence,e));return t.instance}function su(e,t,n){for(var l=n.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=l.length?l[l.length-1]:null,s=a,o=0;o title"):null)}function b0(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case"meta":case"title":return!0;case"style":if(typeof t.precedence!="string"||typeof t.href!="string"||t.href==="")break;return!0;case"link":if(typeof t.rel!="string"||typeof t.href!="string"||t.href===""||t.onLoad||t.onError)break;switch(t.rel){case"stylesheet":return e=t.disabled,typeof t.precedence=="string"&&e==null;default:return!0}case"script":if(t.async&&typeof t.async!="function"&&typeof t.async!="symbol"&&!t.onLoad&&!t.onError&&t.src&&typeof t.src=="string")return!0}return!1}function Dd(e){return!(e.type==="stylesheet"&&(e.state.loading&3)===0)}function S0(e,t,n,l){if(n.type==="stylesheet"&&(typeof l.media!="string"||matchMedia(l.media).matches!==!1)&&(n.state.loading&4)===0){if(n.instance===null){var a=Gl(l.href),s=t.querySelector(La(a));if(s){t=s._p,t!==null&&typeof t=="object"&&typeof t.then=="function"&&(e.count++,e=ru.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=s,Ge(s);return}s=t.ownerDocument||t,l=Nd(l),(a=Ct.get(a))&&Kc(l,a),s=s.createElement("link"),Ge(s);var o=s;o._p=new Promise(function(d,g){o.onload=d,o.onerror=g}),$e(s,"link",l),n.instance=s}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&(n.state.loading&3)===0&&(e.count++,n=ru.bind(e),t.addEventListener("load",n),t.addEventListener("error",n))}}var $c=0;function x0(e,t){return e.stylesheets&&e.count===0&&fu(e,e.stylesheets),0$c?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(l),clearTimeout(a)}}:null}function ru(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)fu(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var ou=null;function fu(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,ou=new Map,t.forEach(_0,e),ou=null,ru.call(e))}function _0(e,t){if(!(t.state.loading&4)){var n=ou.get(e);if(n)var l=n.get(null);else{n=new Map,ou.set(e,n);for(var a=e.querySelectorAll("link[data-precedence],style[data-precedence]"),s=0;s"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(u)}catch(i){console.error(i)}}return u(),ar.exports=H0(),ar.exports}var Y0=q0();var nm="popstate";function k0(u={}){function i(r,f){let{pathname:h,search:m,hash:b}=r.location;return pr("",{pathname:h,search:m,hash:b},f.state&&f.state.usr||null,f.state&&f.state.key||"default")}function c(r,f){return typeof f=="string"?f:Wa(f)}return G0(i,c,null,u)}function Oe(u,i){if(u===!1||u===null||typeof u>"u")throw new Error(i)}function jt(u,i){if(!u){typeof console<"u"&&console.warn(i);try{throw new Error(i)}catch{}}}function X0(){return Math.random().toString(36).substring(2,10)}function lm(u,i){return{usr:u.state,key:u.key,idx:i}}function pr(u,i,c=null,r){return{pathname:typeof u=="string"?u:u.pathname,search:"",hash:"",...typeof i=="string"?Kl(i):i,state:c,key:i&&i.key||r||X0()}}function Wa({pathname:u="/",search:i="",hash:c=""}){return i&&i!=="?"&&(u+=i.charAt(0)==="?"?i:"?"+i),c&&c!=="#"&&(u+=c.charAt(0)==="#"?c:"#"+c),u}function Kl(u){let i={};if(u){let c=u.indexOf("#");c>=0&&(i.hash=u.substring(c),u=u.substring(0,c));let r=u.indexOf("?");r>=0&&(i.search=u.substring(r),u=u.substring(0,r)),u&&(i.pathname=u)}return i}function G0(u,i,c,r={}){let{window:f=document.defaultView,v5Compat:h=!1}=r,m=f.history,b="POP",y=null,v=T();v==null&&(v=0,m.replaceState({...m.state,idx:v},""));function T(){return(m.state||{idx:null}).idx}function S(){b="POP";let q=T(),H=q==null?null:q-v;v=q,y&&y({action:b,location:X.location,delta:H})}function C(q,H){b="PUSH";let Y=pr(X.location,q,H);v=T()+1;let k=lm(Y,v),F=X.createHref(Y);try{m.pushState(k,"",F)}catch(ye){if(ye instanceof DOMException&&ye.name==="DataCloneError")throw ye;f.location.assign(F)}h&&y&&y({action:b,location:X.location,delta:1})}function z(q,H){b="REPLACE";let Y=pr(X.location,q,H);v=T();let k=lm(Y,v),F=X.createHref(Y);m.replaceState(k,"",F),h&&y&&y({action:b,location:X.location,delta:0})}function L(q){return V0(q)}let X={get action(){return b},get location(){return u(f,m)},listen(q){if(y)throw new Error("A history only accepts one active listener");return f.addEventListener(nm,S),y=q,()=>{f.removeEventListener(nm,S),y=null}},createHref(q){return i(f,q)},createURL:L,encodeLocation(q){let H=L(q);return{pathname:H.pathname,search:H.search,hash:H.hash}},push:C,replace:z,go(q){return m.go(q)}};return X}function V0(u,i=!1){let c="http://localhost";typeof window<"u"&&(c=window.location.origin!=="null"?window.location.origin:window.location.href),Oe(c,"No window.location.(origin|href) available to create URL");let r=typeof u=="string"?u:Wa(u);return r=r.replace(/ $/,"%20"),!i&&r.startsWith("//")&&(r=c+r),new URL(r,c)}function _m(u,i,c="/"){return Q0(u,i,c,!1)}function Q0(u,i,c,r){let f=typeof i=="string"?Kl(i):i,h=on(f.pathname||"/",c);if(h==null)return null;let m=Em(u);Z0(m);let b=null;for(let y=0;b==null&&y{let T={relativePath:v===void 0?m.path||"":v,caseSensitive:m.caseSensitive===!0,childrenIndex:b,route:m};if(T.relativePath.startsWith("/")){if(!T.relativePath.startsWith(r)&&y)return;Oe(T.relativePath.startsWith(r),`Absolute route path "${T.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),T.relativePath=T.relativePath.slice(r.length)}let S=rn([r,T.relativePath]),C=c.concat(T);m.children&&m.children.length>0&&(Oe(m.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${S}".`),Em(m.children,i,C,S,y)),!(m.path==null&&!m.index)&&i.push({path:S,score:I0(S,m.index),routesMeta:C})};return u.forEach((m,b)=>{if(m.path===""||!m.path?.includes("?"))h(m,b);else for(let y of Tm(m.path))h(m,b,!0,y)}),i}function Tm(u){let i=u.split("/");if(i.length===0)return[];let[c,...r]=i,f=c.endsWith("?"),h=c.replace(/\?$/,"");if(r.length===0)return f?[h,""]:[h];let m=Tm(r.join("/")),b=[];return b.push(...m.map(y=>y===""?h:[h,y].join("/"))),f&&b.push(...m),b.map(y=>u.startsWith("/")&&y===""?"/":y)}function Z0(u){u.sort((i,c)=>i.score!==c.score?c.score-i.score:ev(i.routesMeta.map(r=>r.childrenIndex),c.routesMeta.map(r=>r.childrenIndex)))}var K0=/^:[\w-]+$/,J0=3,$0=2,W0=1,F0=10,P0=-2,am=u=>u==="*";function I0(u,i){let c=u.split("/"),r=c.length;return c.some(am)&&(r+=P0),i&&(r+=$0),c.filter(f=>!am(f)).reduce((f,h)=>f+(K0.test(h)?J0:h===""?W0:F0),r)}function ev(u,i){return u.length===i.length&&u.slice(0,-1).every((r,f)=>r===i[f])?u[u.length-1]-i[i.length-1]:0}function tv(u,i,c=!1){let{routesMeta:r}=u,f={},h="/",m=[];for(let b=0;b{if(T==="*"){let L=b[C]||"";m=h.slice(0,h.length-L.length).replace(/(.)\/+$/,"$1")}const z=b[C];return S&&!z?v[T]=void 0:v[T]=(z||"").replace(/%2F/g,"/"),v},{}),pathname:h,pathnameBase:m,pattern:u}}function nv(u,i=!1,c=!0){jt(u==="*"||!u.endsWith("*")||u.endsWith("/*"),`Route path "${u}" will be treated as if it were "${u.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${u.replace(/\*$/,"/*")}".`);let r=[],f="^"+u.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(m,b,y)=>(r.push({paramName:b,isOptional:y!=null}),y?"/?([^\\/]+)?":"/([^\\/]+)")).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return u.endsWith("*")?(r.push({paramName:"*"}),f+=u==="*"||u==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):c?f+="\\/*$":u!==""&&u!=="/"&&(f+="(?:(?=\\/|$))"),[new RegExp(f,i?void 0:"i"),r]}function lv(u){try{return u.split("/").map(i=>decodeURIComponent(i).replace(/\//g,"%2F")).join("/")}catch(i){return jt(!1,`The URL path "${u}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${i}).`),u}}function on(u,i){if(i==="/")return u;if(!u.toLowerCase().startsWith(i.toLowerCase()))return null;let c=i.endsWith("/")?i.length-1:i.length,r=u.charAt(c);return r&&r!=="/"?null:u.slice(c)||"/"}var av=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,iv=u=>av.test(u);function uv(u,i="/"){let{pathname:c,search:r="",hash:f=""}=typeof u=="string"?Kl(u):u,h;if(c)if(iv(c))h=c;else{if(c.includes("//")){let m=c;c=c.replace(/\/\/+/g,"/"),jt(!1,`Pathnames cannot have embedded double slashes - normalizing ${m} -> ${c}`)}c.startsWith("/")?h=im(c.substring(1),"/"):h=im(c,i)}else h=i;return{pathname:h,search:rv(r),hash:ov(f)}}function im(u,i){let c=i.replace(/\/+$/,"").split("/");return u.split("/").forEach(f=>{f===".."?c.length>1&&c.pop():f!=="."&&c.push(f)}),c.length>1?c.join("/"):"/"}function cr(u,i,c,r){return`Cannot include a '${u}' character in a manually specified \`to.${i}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${c}\` field. Alternatively you may provide the full path as a string in and the router will parse it for you.`}function sv(u){return u.filter((i,c)=>c===0||i.route.path&&i.route.path.length>0)}function Am(u){let i=sv(u);return i.map((c,r)=>r===i.length-1?c.pathname:c.pathnameBase)}function Cm(u,i,c,r=!1){let f;typeof u=="string"?f=Kl(u):(f={...u},Oe(!f.pathname||!f.pathname.includes("?"),cr("?","pathname","search",f)),Oe(!f.pathname||!f.pathname.includes("#"),cr("#","pathname","hash",f)),Oe(!f.search||!f.search.includes("#"),cr("#","search","hash",f)));let h=u===""||f.pathname==="",m=h?"/":f.pathname,b;if(m==null)b=c;else{let S=i.length-1;if(!r&&m.startsWith("..")){let C=m.split("/");for(;C[0]==="..";)C.shift(),S-=1;f.pathname=C.join("/")}b=S>=0?i[S]:"/"}let y=uv(f,b),v=m&&m!=="/"&&m.endsWith("/"),T=(h||m===".")&&c.endsWith("/");return!y.pathname.endsWith("/")&&(v||T)&&(y.pathname+="/"),y}var rn=u=>u.join("/").replace(/\/\/+/g,"/"),cv=u=>u.replace(/\/+$/,"").replace(/^\/*/,"/"),rv=u=>!u||u==="?"?"":u.startsWith("?")?u:"?"+u,ov=u=>!u||u==="#"?"":u.startsWith("#")?u:"#"+u;function fv(u){return u!=null&&typeof u.status=="number"&&typeof u.statusText=="string"&&typeof u.internal=="boolean"&&"data"in u}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var Rm=["POST","PUT","PATCH","DELETE"];new Set(Rm);var hv=["GET",...Rm];new Set(hv);var Jl=E.createContext(null);Jl.displayName="DataRouter";var Du=E.createContext(null);Du.displayName="DataRouterState";E.createContext(!1);var Nm=E.createContext({isTransitioning:!1});Nm.displayName="ViewTransition";var dv=E.createContext(new Map);dv.displayName="Fetchers";var mv=E.createContext(null);mv.displayName="Await";var Yt=E.createContext(null);Yt.displayName="Navigation";var Fa=E.createContext(null);Fa.displayName="Location";var fn=E.createContext({outlet:null,matches:[],isDataRoute:!1});fn.displayName="Route";var Tr=E.createContext(null);Tr.displayName="RouteError";function pv(u,{relative:i}={}){Oe(Pa(),"useHref() may be used only in the context of a component.");let{basename:c,navigator:r}=E.useContext(Yt),{hash:f,pathname:h,search:m}=Ia(u,{relative:i}),b=h;return c!=="/"&&(b=h==="/"?c:rn([c,h])),r.createHref({pathname:b,search:m,hash:f})}function Pa(){return E.useContext(Fa)!=null}function sl(){return Oe(Pa(),"useLocation() may be used only in the context of a component."),E.useContext(Fa).location}var Om="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function zm(u){E.useContext(Yt).static||E.useLayoutEffect(u)}function yv(){let{isDataRoute:u}=E.useContext(fn);return u?Ov():vv()}function vv(){Oe(Pa(),"useNavigate() may be used only in the context of a component.");let u=E.useContext(Jl),{basename:i,navigator:c}=E.useContext(Yt),{matches:r}=E.useContext(fn),{pathname:f}=sl(),h=JSON.stringify(Am(r)),m=E.useRef(!1);return zm(()=>{m.current=!0}),E.useCallback((y,v={})=>{if(jt(m.current,Om),!m.current)return;if(typeof y=="number"){c.go(y);return}let T=Cm(y,JSON.parse(h),f,v.relative==="path");u==null&&i!=="/"&&(T.pathname=T.pathname==="/"?i:rn([i,T.pathname])),(v.replace?c.replace:c.push)(T,v.state,v)},[i,c,h,f,u])}E.createContext(null);function Ia(u,{relative:i}={}){let{matches:c}=E.useContext(fn),{pathname:r}=sl(),f=JSON.stringify(Am(c));return E.useMemo(()=>Cm(u,JSON.parse(f),r,i==="path"),[u,f,r,i])}function gv(u,i){return Mm(u,i)}function Mm(u,i,c,r,f){Oe(Pa(),"useRoutes() may be used only in the context of a component.");let{navigator:h}=E.useContext(Yt),{matches:m}=E.useContext(fn),b=m[m.length-1],y=b?b.params:{},v=b?b.pathname:"/",T=b?b.pathnameBase:"/",S=b&&b.route;{let Y=S&&S.path||"";Dm(v,!S||Y.endsWith("*")||Y.endsWith("*?"),`You rendered descendant (or called \`useRoutes()\`) at "${v}" (under ) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render. -Please change the parent to .`)}let C=sl(),z;if(i){let Y=typeof i=="string"?Kl(i):i;Oe(T==="/"||Y.pathname?.startsWith(T),`When overriding the location using \`\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${T}" but pathname "${Y.pathname}" was given in the \`location\` prop.`),z=Y}else z=C;let L=z.pathname||"/",X=L;if(T!=="/"){let Y=T.replace(/^\//,"").split("/");X="/"+L.replace(/^\//,"").split("/").slice(Y.length).join("/")}let q=xm(u,{pathname:X});jt(S||q!=null,`No routes matched location "${z.pathname}${z.search}${z.hash}" `),jt(q==null||q[q.length-1].route.element!==void 0||q[q.length-1].route.Component!==void 0||q[q.length-1].route.lazy!==void 0,`Matched leaf route at location "${z.pathname}${z.search}${z.hash}" does not have an element or Component. This means it will render an with a null value by default resulting in an "empty" page.`);let H=Ev(q&&q.map(Y=>Object.assign({},Y,{params:Object.assign({},y,Y.params),pathname:rn([T,h.encodeLocation?h.encodeLocation(Y.pathname.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:Y.pathname]),pathnameBase:Y.pathnameBase==="/"?T:rn([T,h.encodeLocation?h.encodeLocation(Y.pathnameBase.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:Y.pathnameBase])})),m,c,r,f);return i&&H?E.createElement(Fa.Provider,{value:{location:{pathname:"/",search:"",hash:"",state:null,key:"default",...z},navigationType:"POP"}},H):H}function bv(){let u=Nv(),i=fv(u)?`${u.status} ${u.statusText}`:u instanceof Error?u.message:JSON.stringify(u),c=u instanceof Error?u.stack:null,r="rgba(200,200,200, 0.5)",f={padding:"0.5rem",backgroundColor:r},h={padding:"2px 4px",backgroundColor:r},m=null;return console.error("Error handled by React Router default ErrorBoundary:",u),m=E.createElement(E.Fragment,null,E.createElement("p",null,"💿 Hey developer 👋"),E.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",E.createElement("code",{style:h},"ErrorBoundary")," or"," ",E.createElement("code",{style:h},"errorElement")," prop on your route.")),E.createElement(E.Fragment,null,E.createElement("h2",null,"Unexpected Application Error!"),E.createElement("h3",{style:{fontStyle:"italic"}},i),c?E.createElement("pre",{style:f},c):null,m)}var Sv=E.createElement(bv,null),xv=class extends E.Component{constructor(u){super(u),this.state={location:u.location,revalidation:u.revalidation,error:u.error}}static getDerivedStateFromError(u){return{error:u}}static getDerivedStateFromProps(u,i){return i.location!==u.location||i.revalidation!=="idle"&&u.revalidation==="idle"?{error:u.error,location:u.location,revalidation:u.revalidation}:{error:u.error!==void 0?u.error:i.error,location:i.location,revalidation:u.revalidation||i.revalidation}}componentDidCatch(u,i){this.props.onError?this.props.onError(u,i):console.error("React Router caught the following error during render",u)}render(){return this.state.error!==void 0?E.createElement(fn.Provider,{value:this.props.routeContext},E.createElement(Ar.Provider,{value:this.state.error,children:this.props.component})):this.props.children}};function _v({routeContext:u,match:i,children:c}){let r=E.useContext(Jl);return r&&r.static&&r.staticContext&&(i.route.errorElement||i.route.ErrorBoundary)&&(r.staticContext._deepestRenderedBoundaryId=i.route.id),E.createElement(fn.Provider,{value:u},c)}function Ev(u,i=[],c=null,r=null,f=null){if(u==null){if(!c)return null;if(c.errors)u=c.matches;else if(i.length===0&&!c.initialized&&c.matches.length>0)u=c.matches;else return null}let h=u,m=c?.errors;if(m!=null){let T=h.findIndex(S=>S.route.id&&m?.[S.route.id]!==void 0);Oe(T>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(m).join(",")}`),h=h.slice(0,Math.min(h.length,T+1))}let b=!1,y=-1;if(c)for(let T=0;T=0?h=h.slice(0,y+1):h=[h[0]];break}}}let v=c&&r?(T,S)=>{r(T,{location:c.location,params:c.matches?.[0]?.params??{},errorInfo:S})}:void 0;return h.reduceRight((T,S,C)=>{let z,L=!1,X=null,q=null;c&&(z=m&&S.route.id?m[S.route.id]:void 0,X=S.route.errorElement||Sv,b&&(y<0&&C===0?(Mm("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),L=!0,q=null):y===C&&(L=!0,q=S.route.hydrateFallbackElement||null)));let H=i.concat(h.slice(0,C+1)),Y=()=>{let k;return z?k=X:L?k=q:S.route.Component?k=E.createElement(S.route.Component,null):S.route.element?k=S.route.element:k=T,E.createElement(_v,{match:S,routeContext:{outlet:T,matches:H,isDataRoute:c!=null},children:k})};return c&&(S.route.ErrorBoundary||S.route.errorElement||C===0)?E.createElement(xv,{location:c.location,revalidation:c.revalidation,component:X,error:z,children:Y(),routeContext:{outlet:null,matches:H,isDataRoute:!0},onError:v}):Y()},null)}function Cr(u){return`${u} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function Tv(u){let i=E.useContext(Jl);return Oe(i,Cr(u)),i}function Av(u){let i=E.useContext(Du);return Oe(i,Cr(u)),i}function Cv(u){let i=E.useContext(fn);return Oe(i,Cr(u)),i}function Rr(u){let i=Cv(u),c=i.matches[i.matches.length-1];return Oe(c.route.id,`${u} can only be used on routes that contain a unique "id"`),c.route.id}function Rv(){return Rr("useRouteId")}function Nv(){let u=E.useContext(Ar),i=Av("useRouteError"),c=Rr("useRouteError");return u!==void 0?u:i.errors?.[c]}function Ov(){let{router:u}=Tv("useNavigate"),i=Rr("useNavigate"),c=E.useRef(!1);return Om(()=>{c.current=!0}),E.useCallback(async(f,h={})=>{jt(c.current,Nm),c.current&&(typeof f=="number"?u.navigate(f):await u.navigate(f,{fromRouteId:i,...h}))},[u,i])}var im={};function Mm(u,i,c){!i&&!im[u]&&(im[u]=!0,jt(!1,c))}E.memo(zv);function zv({routes:u,future:i,state:c,unstable_onError:r}){return zm(u,void 0,c,r,i)}function vr(u){Oe(!1,"A is only ever to be used as the child of element, never rendered directly. Please wrap your in a .")}function Mv({basename:u="/",children:i=null,location:c,navigationType:r="POP",navigator:f,static:h=!1}){Oe(!Pa(),"You cannot render a inside another . You should never have more than one in your app.");let m=u.replace(/^\/*/,"/"),b=E.useMemo(()=>({basename:m,navigator:f,static:h,future:{}}),[m,f,h]);typeof c=="string"&&(c=Kl(c));let{pathname:y="/",search:v="",hash:T="",state:S=null,key:C="default"}=c,z=E.useMemo(()=>{let L=on(y,m);return L==null?null:{location:{pathname:L,search:v,hash:T,state:S,key:C},navigationType:r}},[m,y,v,T,S,C,r]);return jt(z!=null,` is not able to match the URL "${y}${v}${T}" because it does not start with the basename, so the won't render anything.`),z==null?null:E.createElement(Yt.Provider,{value:b},E.createElement(Fa.Provider,{children:i,value:z}))}function Dv({children:u,location:i}){return gv(gr(u),i)}function gr(u,i=[]){let c=[];return E.Children.forEach(u,(r,f)=>{if(!E.isValidElement(r))return;let h=[...i,f];if(r.type===E.Fragment){c.push.apply(c,gr(r.props.children,h));return}Oe(r.type===vr,`[${typeof r.type=="string"?r.type:r.type.name}] is not a component. All component children of must be a or `),Oe(!r.props.index||!r.props.children,"An index route cannot have child routes.");let m={id:r.props.id||h.join("-"),caseSensitive:r.props.caseSensitive,element:r.props.element,Component:r.props.Component,index:r.props.index,path:r.props.path,middleware:r.props.middleware,loader:r.props.loader,action:r.props.action,hydrateFallbackElement:r.props.hydrateFallbackElement,HydrateFallback:r.props.HydrateFallback,errorElement:r.props.errorElement,ErrorBoundary:r.props.ErrorBoundary,hasErrorBoundary:r.props.hasErrorBoundary===!0||r.props.ErrorBoundary!=null||r.props.errorElement!=null,shouldRevalidate:r.props.shouldRevalidate,handle:r.props.handle,lazy:r.props.lazy};r.props.children&&(m.children=gr(r.props.children,h)),c.push(m)}),c}var Tu="get",Au="application/x-www-form-urlencoded";function ju(u){return u!=null&&typeof u.tagName=="string"}function jv(u){return ju(u)&&u.tagName.toLowerCase()==="button"}function wv(u){return ju(u)&&u.tagName.toLowerCase()==="form"}function Uv(u){return ju(u)&&u.tagName.toLowerCase()==="input"}function Bv(u){return!!(u.metaKey||u.altKey||u.ctrlKey||u.shiftKey)}function Lv(u,i){return u.button===0&&(!i||i==="_self")&&!Bv(u)}var bu=null;function Hv(){if(bu===null)try{new FormData(document.createElement("form"),0),bu=!1}catch{bu=!0}return bu}var qv=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function or(u){return u!=null&&!qv.has(u)?(jt(!1,`"${u}" is not a valid \`encType\` for \`\`/\`\` and will default to "${Au}"`),null):u}function Yv(u,i){let c,r,f,h,m;if(wv(u)){let b=u.getAttribute("action");r=b?on(b,i):null,c=u.getAttribute("method")||Tu,f=or(u.getAttribute("enctype"))||Au,h=new FormData(u)}else if(jv(u)||Uv(u)&&(u.type==="submit"||u.type==="image")){let b=u.form;if(b==null)throw new Error('Cannot submit a
- + {/* */} +
From 922f0b1188ec635a1d13d58d655e88961f45bd0e Mon Sep 17 00:00:00 2001 From: legop3 Date: Mon, 17 Nov 2025 04:39:27 -0500 Subject: [PATCH 59/61] guh! --- server/public/assets/index-C9u9txZ3.css | 1 + server/public/assets/index-WcSVLUbr.css | 1 - server/public/assets/{index-Dlt2f9-i.js => index-we2n3Zya.js} | 2 +- server/public/index.html | 4 ++-- webui/src/components/LogPanel.jsx | 2 +- webui/src/components/SessionSnapshot.jsx | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) create mode 100644 server/public/assets/index-C9u9txZ3.css delete mode 100644 server/public/assets/index-WcSVLUbr.css rename server/public/assets/{index-Dlt2f9-i.js => index-we2n3Zya.js} (97%) diff --git a/server/public/assets/index-C9u9txZ3.css b/server/public/assets/index-C9u9txZ3.css new file mode 100644 index 00000000..f4c7ee8b --- /dev/null +++ b/server/public/assets/index-C9u9txZ3.css @@ -0,0 +1 @@ +*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.\!visible{visibility:visible!important}.visible{visibility:visible}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.left-1\/2{left:50%}.top-1{top:.25rem}.z-50{z-index:50}.col-span-full{grid-column:1 / -1}.mx-auto{margin-left:auto;margin-right:auto}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mt-1{margin-top:.25rem}.mt-3{margin-top:.75rem}.flex{display:flex}.grid{display:grid}.aspect-video{aspect-ratio:16 / 9}.h-2{height:.5rem}.h-4{height:1rem}.h-6{height:1.5rem}.h-60{height:15rem}.h-64{height:16rem}.h-full{height:100%}.min-h-\[8rem\]{min-height:8rem}.min-h-screen{min-height:100vh}.w-1\/4{width:25%}.w-2{width:.5rem}.w-full{width:100%}.max-w-7xl{max-width:80rem}.flex-1{flex:1 1 0%}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.resize{resize:both}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-\[minmax\(0\,0\.7fr\)_minmax\(0\,2\.1fr\)_minmax\(0\,0\.7fr\)\]{grid-template-columns:minmax(0,.7fr) minmax(0,2.1fr) minmax(0,.7fr)}.grid-cols-\[minmax\(0\,1\.8fr\)_minmax\(0\,1fr\)\]{grid-template-columns:minmax(0,1.8fr) minmax(0,1fr)}.grid-cols-\[minmax\(0\,1fr\)_minmax\(0\,1fr\)\]{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.text-wrap{text-wrap:wrap}.break-words{overflow-wrap:break-word}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-sm{border-radius:.125rem}.border{border-width:1px}.border-slate-800{--tw-border-opacity: 1;border-color:rgb(30 41 59 / var(--tw-border-opacity))}.border-slate-800\/80{border-color:#1e293bcc}.bg-\[\#1a1d23\]{--tw-bg-opacity: 1;background-color:rgb(26 29 35 / var(--tw-bg-opacity))}.bg-\[\#1e1e1e\]{--tw-bg-opacity: 1;background-color:rgb(30 30 30 / var(--tw-bg-opacity))}.bg-\[\#242a32\]{--tw-bg-opacity: 1;background-color:rgb(36 42 50 / var(--tw-bg-opacity))}.bg-amber-400{--tw-bg-opacity: 1;background-color:rgb(251 191 36 / var(--tw-bg-opacity))}.bg-amber-500\/30{background-color:#f59e0b4d}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity))}.bg-black\/30{background-color:#0000004d}.bg-black\/40{background-color:#0006}.bg-black\/50{background-color:#00000080}.bg-blue-600\/40{background-color:#2563eb66}.bg-emerald-300{--tw-bg-opacity: 1;background-color:rgb(110 231 183 / var(--tw-bg-opacity))}.bg-emerald-500{--tw-bg-opacity: 1;background-color:rgb(16 185 129 / var(--tw-bg-opacity))}.bg-emerald-500\/20{background-color:#10b98133}.bg-emerald-500\/30{background-color:#10b9814d}.bg-emerald-600{--tw-bg-opacity: 1;background-color:rgb(5 150 105 / var(--tw-bg-opacity))}.bg-emerald-900{--tw-bg-opacity: 1;background-color:rgb(6 78 59 / var(--tw-bg-opacity))}.bg-gray-700{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.bg-indigo-600{--tw-bg-opacity: 1;background-color:rgb(79 70 229 / var(--tw-bg-opacity))}.bg-lime-300{--tw-bg-opacity: 1;background-color:rgb(190 242 100 / var(--tw-bg-opacity))}.bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity))}.bg-red-500\/20{background-color:#ef444433}.bg-red-500\/30{background-color:#ef44444d}.bg-red-900\/60{background-color:#7f1d1d99}.bg-slate-100{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity))}.bg-slate-200{--tw-bg-opacity: 1;background-color:rgb(226 232 240 / var(--tw-bg-opacity))}.bg-slate-700{--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity))}.bg-slate-800{--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity))}.bg-slate-900\/70{background-color:#0f172ab3}.bg-slate-950{--tw-bg-opacity: 1;background-color:rgb(2 6 23 / var(--tw-bg-opacity))}.bg-slate-950\/40{background-color:#02061766}.bg-slate-950\/50{background-color:#02061780}.object-contain{-o-object-fit:contain;object-fit:contain}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-\[0\.55rem\]{font-size:.55rem}.text-\[0\.65rem\]{font-size:.65rem}.text-\[0\.75rem\]{font-size:.75rem}.text-\[0\.7rem\]{font-size:.7rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.tracking-\[0\.3em\]{letter-spacing:.3em}.text-amber-100{--tw-text-opacity: 1;color:rgb(254 243 199 / var(--tw-text-opacity))}.text-amber-400{--tw-text-opacity: 1;color:rgb(251 191 36 / var(--tw-text-opacity))}.text-black{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity))}.text-black\/80{color:#000c}.text-blue-100{--tw-text-opacity: 1;color:rgb(219 234 254 / var(--tw-text-opacity))}.text-cyan-300{--tw-text-opacity: 1;color:rgb(103 232 249 / var(--tw-text-opacity))}.text-emerald-100{--tw-text-opacity: 1;color:rgb(209 250 229 / var(--tw-text-opacity))}.text-emerald-200{--tw-text-opacity: 1;color:rgb(167 243 208 / var(--tw-text-opacity))}.text-emerald-50\/80{color:#ecfdf5cc}.text-emerald-900{--tw-text-opacity: 1;color:rgb(6 78 59 / var(--tw-text-opacity))}.text-lime-300{--tw-text-opacity: 1;color:rgb(190 242 100 / var(--tw-text-opacity))}.text-lime-400{--tw-text-opacity: 1;color:rgb(163 230 53 / var(--tw-text-opacity))}.text-pink-300{--tw-text-opacity: 1;color:rgb(249 168 212 / var(--tw-text-opacity))}.text-red-100{--tw-text-opacity: 1;color:rgb(254 226 226 / var(--tw-text-opacity))}.text-red-200{--tw-text-opacity: 1;color:rgb(254 202 202 / var(--tw-text-opacity))}.text-slate-100{--tw-text-opacity: 1;color:rgb(241 245 249 / var(--tw-text-opacity))}.text-slate-200{--tw-text-opacity: 1;color:rgb(226 232 240 / var(--tw-text-opacity))}.text-slate-300{--tw-text-opacity: 1;color:rgb(203 213 225 / var(--tw-text-opacity))}.text-slate-400{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity))}.text-slate-50{--tw-text-opacity: 1;color:rgb(248 250 252 / var(--tw-text-opacity))}.text-slate-500{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity))}.text-slate-900{--tw-text-opacity: 1;color:rgb(15 23 42 / var(--tw-text-opacity))}.text-teal-400{--tw-text-opacity: 1;color:rgb(45 212 191 / var(--tw-text-opacity))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.text-white\/90{color:#ffffffe6}.shadow-\[0_0_4px_rgba\(16\,185\,129\,0\.8\)\]{--tw-shadow: 0 0 4px rgba(16,185,129,.8);--tw-shadow-colored: 0 0 4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-black\/60{--tw-shadow-color: rgb(0 0 0 / .6);--tw-shadow: var(--tw-shadow-colored)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-\[width\]{transition-property:width;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#0f172a;background-color:#f8fafc}body{margin:0;min-height:100vh;background-color:#0f172a}.disabled\:opacity-30:disabled{opacity:.3}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}@media(min-width:640px){.sm\:flex-row{flex-direction:row}}@media(min-width:1024px){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}} diff --git a/server/public/assets/index-WcSVLUbr.css b/server/public/assets/index-WcSVLUbr.css deleted file mode 100644 index 1b519cf0..00000000 --- a/server/public/assets/index-WcSVLUbr.css +++ /dev/null @@ -1 +0,0 @@ -*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.\!visible{visibility:visible!important}.visible{visibility:visible}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.left-1\/2{left:50%}.top-1{top:.25rem}.z-50{z-index:50}.col-span-full{grid-column:1 / -1}.mx-auto{margin-left:auto;margin-right:auto}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mt-1{margin-top:.25rem}.mt-3{margin-top:.75rem}.flex{display:flex}.grid{display:grid}.aspect-video{aspect-ratio:16 / 9}.h-2{height:.5rem}.h-4{height:1rem}.h-48{height:12rem}.h-6{height:1.5rem}.h-60{height:15rem}.h-full{height:100%}.max-h-64{max-height:16rem}.min-h-\[8rem\]{min-height:8rem}.min-h-screen{min-height:100vh}.w-1\/4{width:25%}.w-2{width:.5rem}.w-full{width:100%}.max-w-7xl{max-width:80rem}.flex-1{flex:1 1 0%}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.resize{resize:both}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-\[minmax\(0\,0\.7fr\)_minmax\(0\,2\.1fr\)_minmax\(0\,0\.7fr\)\]{grid-template-columns:minmax(0,.7fr) minmax(0,2.1fr) minmax(0,.7fr)}.grid-cols-\[minmax\(0\,1\.8fr\)_minmax\(0\,1fr\)\]{grid-template-columns:minmax(0,1.8fr) minmax(0,1fr)}.grid-cols-\[minmax\(0\,1fr\)_minmax\(0\,1fr\)\]{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.text-wrap{text-wrap:wrap}.break-words{overflow-wrap:break-word}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-sm{border-radius:.125rem}.border{border-width:1px}.border-slate-800{--tw-border-opacity: 1;border-color:rgb(30 41 59 / var(--tw-border-opacity))}.border-slate-800\/80{border-color:#1e293bcc}.bg-\[\#1a1d23\]{--tw-bg-opacity: 1;background-color:rgb(26 29 35 / var(--tw-bg-opacity))}.bg-\[\#1e1e1e\]{--tw-bg-opacity: 1;background-color:rgb(30 30 30 / var(--tw-bg-opacity))}.bg-\[\#242a32\]{--tw-bg-opacity: 1;background-color:rgb(36 42 50 / var(--tw-bg-opacity))}.bg-amber-400{--tw-bg-opacity: 1;background-color:rgb(251 191 36 / var(--tw-bg-opacity))}.bg-amber-500\/30{background-color:#f59e0b4d}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity))}.bg-black\/30{background-color:#0000004d}.bg-black\/40{background-color:#0006}.bg-black\/50{background-color:#00000080}.bg-blue-600\/40{background-color:#2563eb66}.bg-emerald-300{--tw-bg-opacity: 1;background-color:rgb(110 231 183 / var(--tw-bg-opacity))}.bg-emerald-500{--tw-bg-opacity: 1;background-color:rgb(16 185 129 / var(--tw-bg-opacity))}.bg-emerald-500\/20{background-color:#10b98133}.bg-emerald-500\/30{background-color:#10b9814d}.bg-emerald-600{--tw-bg-opacity: 1;background-color:rgb(5 150 105 / var(--tw-bg-opacity))}.bg-emerald-900{--tw-bg-opacity: 1;background-color:rgb(6 78 59 / var(--tw-bg-opacity))}.bg-gray-700{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.bg-indigo-600{--tw-bg-opacity: 1;background-color:rgb(79 70 229 / var(--tw-bg-opacity))}.bg-lime-300{--tw-bg-opacity: 1;background-color:rgb(190 242 100 / var(--tw-bg-opacity))}.bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity))}.bg-red-500\/20{background-color:#ef444433}.bg-red-500\/30{background-color:#ef44444d}.bg-red-900\/60{background-color:#7f1d1d99}.bg-slate-100{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity))}.bg-slate-200{--tw-bg-opacity: 1;background-color:rgb(226 232 240 / var(--tw-bg-opacity))}.bg-slate-700{--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity))}.bg-slate-800{--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity))}.bg-slate-900\/70{background-color:#0f172ab3}.bg-slate-950{--tw-bg-opacity: 1;background-color:rgb(2 6 23 / var(--tw-bg-opacity))}.bg-slate-950\/40{background-color:#02061766}.bg-slate-950\/50{background-color:#02061780}.object-contain{-o-object-fit:contain;object-fit:contain}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-\[0\.55rem\]{font-size:.55rem}.text-\[0\.65rem\]{font-size:.65rem}.text-\[0\.75rem\]{font-size:.75rem}.text-\[0\.7rem\]{font-size:.7rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.tracking-\[0\.3em\]{letter-spacing:.3em}.text-amber-100{--tw-text-opacity: 1;color:rgb(254 243 199 / var(--tw-text-opacity))}.text-amber-400{--tw-text-opacity: 1;color:rgb(251 191 36 / var(--tw-text-opacity))}.text-black{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity))}.text-black\/80{color:#000c}.text-blue-100{--tw-text-opacity: 1;color:rgb(219 234 254 / var(--tw-text-opacity))}.text-cyan-300{--tw-text-opacity: 1;color:rgb(103 232 249 / var(--tw-text-opacity))}.text-emerald-100{--tw-text-opacity: 1;color:rgb(209 250 229 / var(--tw-text-opacity))}.text-emerald-200{--tw-text-opacity: 1;color:rgb(167 243 208 / var(--tw-text-opacity))}.text-emerald-50\/80{color:#ecfdf5cc}.text-emerald-900{--tw-text-opacity: 1;color:rgb(6 78 59 / var(--tw-text-opacity))}.text-lime-300{--tw-text-opacity: 1;color:rgb(190 242 100 / var(--tw-text-opacity))}.text-lime-400{--tw-text-opacity: 1;color:rgb(163 230 53 / var(--tw-text-opacity))}.text-pink-300{--tw-text-opacity: 1;color:rgb(249 168 212 / var(--tw-text-opacity))}.text-red-100{--tw-text-opacity: 1;color:rgb(254 226 226 / var(--tw-text-opacity))}.text-red-200{--tw-text-opacity: 1;color:rgb(254 202 202 / var(--tw-text-opacity))}.text-slate-100{--tw-text-opacity: 1;color:rgb(241 245 249 / var(--tw-text-opacity))}.text-slate-200{--tw-text-opacity: 1;color:rgb(226 232 240 / var(--tw-text-opacity))}.text-slate-300{--tw-text-opacity: 1;color:rgb(203 213 225 / var(--tw-text-opacity))}.text-slate-400{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity))}.text-slate-50{--tw-text-opacity: 1;color:rgb(248 250 252 / var(--tw-text-opacity))}.text-slate-500{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity))}.text-slate-900{--tw-text-opacity: 1;color:rgb(15 23 42 / var(--tw-text-opacity))}.text-teal-400{--tw-text-opacity: 1;color:rgb(45 212 191 / var(--tw-text-opacity))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.text-white\/90{color:#ffffffe6}.shadow-\[0_0_4px_rgba\(16\,185\,129\,0\.8\)\]{--tw-shadow: 0 0 4px rgba(16,185,129,.8);--tw-shadow-colored: 0 0 4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-black\/60{--tw-shadow-color: rgb(0 0 0 / .6);--tw-shadow: var(--tw-shadow-colored)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-\[width\]{transition-property:width;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#0f172a;background-color:#f8fafc}body{margin:0;min-height:100vh;background-color:#0f172a}.disabled\:opacity-30:disabled{opacity:.3}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}@media(min-width:640px){.sm\:flex-row{flex-direction:row}}@media(min-width:1024px){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}} diff --git a/server/public/assets/index-Dlt2f9-i.js b/server/public/assets/index-we2n3Zya.js similarity index 97% rename from server/public/assets/index-Dlt2f9-i.js rename to server/public/assets/index-we2n3Zya.js index 20f58eb4..e2cd9029 100644 --- a/server/public/assets/index-Dlt2f9-i.js +++ b/server/public/assets/index-we2n3Zya.js @@ -8,4 +8,4 @@ Error generating stack: `+l.message+` `+l.stack}}var ku=Object.prototype.hasOwnProperty,Xu=u.unstable_scheduleCallback,Gu=u.unstable_cancelCallback,rp=u.unstable_shouldYield,op=u.unstable_requestPaint,st=u.unstable_now,fp=u.unstable_getCurrentPriorityLevel,Qr=u.unstable_ImmediatePriority,Zr=u.unstable_UserBlockingPriority,ni=u.unstable_NormalPriority,hp=u.unstable_LowPriority,Kr=u.unstable_IdlePriority,dp=u.log,mp=u.unstable_setDisableYieldValue,Fl=null,ct=null;function hn(e){if(typeof dp=="function"&&mp(e),ct&&typeof ct.setStrictMode=="function")try{ct.setStrictMode(Fl,e)}catch{}}var rt=Math.clz32?Math.clz32:vp,pp=Math.log,yp=Math.LN2;function vp(e){return e>>>=0,e===0?32:31-(pp(e)/yp|0)|0}var li=256,ai=262144,ii=4194304;function Yn(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function ui(e,t,n){var l=e.pendingLanes;if(l===0)return 0;var a=0,s=e.suspendedLanes,o=e.pingedLanes;e=e.warmLanes;var d=l&134217727;return d!==0?(l=d&~s,l!==0?a=Yn(l):(o&=d,o!==0?a=Yn(o):n||(n=d&~e,n!==0&&(a=Yn(n))))):(d=l&~s,d!==0?a=Yn(d):o!==0?a=Yn(o):n||(n=l&~e,n!==0&&(a=Yn(n)))),a===0?0:t!==0&&t!==a&&(t&s)===0&&(s=a&-a,n=t&-t,s>=n||s===32&&(n&4194048)!==0)?t:a}function Pl(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function gp(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Jr(){var e=ii;return ii<<=1,(ii&62914560)===0&&(ii=4194304),e}function Vu(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function Il(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function bp(e,t,n,l,a,s){var o=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var d=e.entanglements,g=e.expirationTimes,N=e.hiddenUpdates;for(n=o&~n;0"u")return null;try{return e.activeElement||e.body}catch{return e.body}}var Ap=/[\n"\\]/g;function gt(e){return e.replace(Ap,function(t){return"\\"+t.charCodeAt(0).toString(16)+" "})}function Wu(e,t,n,l,a,s,o,d){e.name="",o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"?e.type=o:e.removeAttribute("type"),t!=null?o==="number"?(t===0&&e.value===""||e.value!=t)&&(e.value=""+vt(t)):e.value!==""+vt(t)&&(e.value=""+vt(t)):o!=="submit"&&o!=="reset"||e.removeAttribute("value"),t!=null?Fu(e,o,vt(t)):n!=null?Fu(e,o,vt(n)):l!=null&&e.removeAttribute("value"),a==null&&s!=null&&(e.defaultChecked=!!s),a!=null&&(e.checked=a&&typeof a!="function"&&typeof a!="symbol"),d!=null&&typeof d!="function"&&typeof d!="symbol"&&typeof d!="boolean"?e.name=""+vt(d):e.removeAttribute("name")}function so(e,t,n,l,a,s,o,d){if(s!=null&&typeof s!="function"&&typeof s!="symbol"&&typeof s!="boolean"&&(e.type=s),t!=null||n!=null){if(!(s!=="submit"&&s!=="reset"||t!=null)){$u(e);return}n=n!=null?""+vt(n):"",t=t!=null?""+vt(t):n,d||t===e.value||(e.value=t),e.defaultValue=t}l=l??a,l=typeof l!="function"&&typeof l!="symbol"&&!!l,e.checked=d?e.checked:!!l,e.defaultChecked=!!l,o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"&&(e.name=o),$u(e)}function Fu(e,t,n){t==="number"&&ri(e.ownerDocument)===e||e.defaultValue===""+n||(e.defaultValue=""+n)}function dl(e,t,n,l){if(e=e.options,t){t={};for(var a=0;a"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),ns=!1;if(Qt)try{var la={};Object.defineProperty(la,"passive",{get:function(){ns=!0}}),window.addEventListener("test",la,la),window.removeEventListener("test",la,la)}catch{ns=!1}var mn=null,ls=null,fi=null;function po(){if(fi)return fi;var e,t=ls,n=t.length,l,a="value"in mn?mn.value:mn.textContent,s=a.length;for(e=0;e=ua),xo=" ",_o=!1;function Eo(e,t){switch(e){case"keyup":return Ip.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function To(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var vl=!1;function ty(e,t){switch(e){case"compositionend":return To(t);case"keypress":return t.which!==32?null:(_o=!0,xo);case"textInput":return e=t.data,e===xo&&_o?null:e;default:return null}}function ny(e,t){if(vl)return e==="compositionend"||!cs&&Eo(e,t)?(e=po(),fi=ls=mn=null,vl=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=l}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=Do(n)}}function wo(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?wo(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Uo(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=ri(e.document);t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=ri(e.document)}return t}function fs(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}var oy=Qt&&"documentMode"in document&&11>=document.documentMode,gl=null,hs=null,oa=null,ds=!1;function Bo(e,t,n){var l=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;ds||gl==null||gl!==ri(l)||(l=gl,"selectionStart"in l&&fs(l)?l={start:l.selectionStart,end:l.selectionEnd}:(l=(l.ownerDocument&&l.ownerDocument.defaultView||window).getSelection(),l={anchorNode:l.anchorNode,anchorOffset:l.anchorOffset,focusNode:l.focusNode,focusOffset:l.focusOffset}),oa&&ra(oa,l)||(oa=l,l=au(hs,"onSelect"),0>=o,a-=o,wt=1<<32-rt(t)+a|n<ne?(se=K,K=null):se=K.sibling;var fe=O(A,K,R[ne],w);if(fe===null){K===null&&(K=se);break}e&&K&&fe.alternate===null&&t(A,K),x=s(fe,x,ne),oe===null?J=fe:oe.sibling=fe,oe=fe,K=se}if(ne===R.length)return n(A,K),ce&&Kt(A,ne),J;if(K===null){for(;nene?(se=K,K=null):se=K.sibling;var Bn=O(A,K,fe.value,w);if(Bn===null){K===null&&(K=se);break}e&&K&&Bn.alternate===null&&t(A,K),x=s(Bn,x,ne),oe===null?J=Bn:oe.sibling=Bn,oe=Bn,K=se}if(fe.done)return n(A,K),ce&&Kt(A,ne),J;if(K===null){for(;!fe.done;ne++,fe=R.next())fe=U(A,fe.value,w),fe!==null&&(x=s(fe,x,ne),oe===null?J=fe:oe.sibling=fe,oe=fe);return ce&&Kt(A,ne),J}for(K=l(K);!fe.done;ne++,fe=R.next())fe=M(K,A,ne,fe.value,w),fe!==null&&(e&&fe.alternate!==null&&K.delete(fe.key===null?ne:fe.key),x=s(fe,x,ne),oe===null?J=fe:oe.sibling=fe,oe=fe);return e&&K.forEach(function(z0){return t(A,z0)}),ce&&Kt(A,ne),J}function Se(A,x,R,w){if(typeof R=="object"&&R!==null&&R.type===X&&R.key===null&&(R=R.props.children),typeof R=="object"&&R!==null){switch(R.$$typeof){case z:e:{for(var J=R.key;x!==null;){if(x.key===J){if(J=R.type,J===X){if(x.tag===7){n(A,x.sibling),w=a(x,R.props.children),w.return=A,A=w;break e}}else if(x.elementType===J||typeof J=="object"&&J!==null&&J.$$typeof===Te&&Fn(J)===x.type){n(A,x.sibling),w=a(x,R.props),ya(w,R),w.return=A,A=w;break e}n(A,x);break}else t(A,x);x=x.sibling}R.type===X?(w=Zn(R.props.children,A.mode,w,R.key),w.return=A,A=w):(w=xi(R.type,R.key,R.props,null,A.mode,w),ya(w,R),w.return=A,A=w)}return o(A);case L:e:{for(J=R.key;x!==null;){if(x.key===J)if(x.tag===4&&x.stateNode.containerInfo===R.containerInfo&&x.stateNode.implementation===R.implementation){n(A,x.sibling),w=a(x,R.children||[]),w.return=A,A=w;break e}else{n(A,x);break}else t(A,x);x=x.sibling}w=Ss(R,A.mode,w),w.return=A,A=w}return o(A);case Te:return R=Fn(R),Se(A,x,R,w)}if(Nt(R))return Q(A,x,R,w);if(We(R)){if(J=We(R),typeof J!="function")throw Error(r(150));return R=J.call(R),W(A,x,R,w)}if(typeof R.then=="function")return Se(A,x,Ni(R),w);if(R.$$typeof===k)return Se(A,x,Ti(A,R),w);Oi(A,R)}return typeof R=="string"&&R!==""||typeof R=="number"||typeof R=="bigint"?(R=""+R,x!==null&&x.tag===6?(n(A,x.sibling),w=a(x,R),w.return=A,A=w):(n(A,x),w=bs(R,A.mode,w),w.return=A,A=w),o(A)):n(A,x)}return function(A,x,R,w){try{pa=0;var J=Se(A,x,R,w);return Ol=null,J}catch(K){if(K===Nl||K===Ci)throw K;var oe=ft(29,K,null,A.mode);return oe.lanes=w,oe.return=A,oe}finally{}}}var In=uf(!0),sf=uf(!1),bn=!1;function Ds(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function js(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function Sn(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function xn(e,t,n){var l=e.updateQueue;if(l===null)return null;if(l=l.shared,(he&2)!==0){var a=l.pending;return a===null?t.next=t:(t.next=a.next,a.next=t),l.pending=t,t=Si(e),Go(e,null,n),t}return bi(e,l,t,n),Si(e)}function va(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194048)!==0)){var l=t.lanes;l&=e.pendingLanes,n|=l,t.lanes=n,Wr(e,n)}}function ws(e,t){var n=e.updateQueue,l=e.alternate;if(l!==null&&(l=l.updateQueue,n===l)){var a=null,s=null;if(n=n.firstBaseUpdate,n!==null){do{var o={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};s===null?a=s=o:s=s.next=o,n=n.next}while(n!==null);s===null?a=s=t:s=s.next=t}else a=s=t;n={baseState:l.baseState,firstBaseUpdate:a,lastBaseUpdate:s,shared:l.shared,callbacks:l.callbacks},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}var Us=!1;function ga(){if(Us){var e=Rl;if(e!==null)throw e}}function ba(e,t,n,l){Us=!1;var a=e.updateQueue;bn=!1;var s=a.firstBaseUpdate,o=a.lastBaseUpdate,d=a.shared.pending;if(d!==null){a.shared.pending=null;var g=d,N=g.next;g.next=null,o===null?s=N:o.next=N,o=g;var D=e.alternate;D!==null&&(D=D.updateQueue,d=D.lastBaseUpdate,d!==o&&(d===null?D.firstBaseUpdate=N:d.next=N,D.lastBaseUpdate=g))}if(s!==null){var U=a.baseState;o=0,D=N=g=null,d=s;do{var O=d.lane&-536870913,M=O!==d.lane;if(M?(ue&O)===O:(l&O)===O){O!==0&&O===Cl&&(Us=!0),D!==null&&(D=D.next={lane:0,tag:d.tag,payload:d.payload,callback:null,next:null});e:{var Q=e,W=d;O=t;var Se=n;switch(W.tag){case 1:if(Q=W.payload,typeof Q=="function"){U=Q.call(Se,U,O);break e}U=Q;break e;case 3:Q.flags=Q.flags&-65537|128;case 0:if(Q=W.payload,O=typeof Q=="function"?Q.call(Se,U,O):Q,O==null)break e;U=S({},U,O);break e;case 2:bn=!0}}O=d.callback,O!==null&&(e.flags|=64,M&&(e.flags|=8192),M=a.callbacks,M===null?a.callbacks=[O]:M.push(O))}else M={lane:O,tag:d.tag,payload:d.payload,callback:d.callback,next:null},D===null?(N=D=M,g=U):D=D.next=M,o|=O;if(d=d.next,d===null){if(d=a.shared.pending,d===null)break;M=d,d=M.next,M.next=null,a.lastBaseUpdate=M,a.shared.pending=null}}while(!0);D===null&&(g=U),a.baseState=g,a.firstBaseUpdate=N,a.lastBaseUpdate=D,s===null&&(a.shared.lanes=0),Cn|=o,e.lanes=o,e.memoizedState=U}}function cf(e,t){if(typeof e!="function")throw Error(r(191,e));e.call(t)}function rf(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;es?s:8;var o=j.T,d={};j.T=d,ec(e,!1,t,n);try{var g=a(),N=j.S;if(N!==null&&N(d,g),g!==null&&typeof g=="object"&&typeof g.then=="function"){var D=by(g,l);_a(e,t,D,yt(e))}else _a(e,t,l,yt(e))}catch(U){_a(e,t,{then:function(){},status:"rejected",reason:U},yt())}finally{G.p=s,o!==null&&d.types!==null&&(o.types=d.types),j.T=o}}function Ay(){}function Ps(e,t,n,l){if(e.tag!==5)throw Error(r(476));var a=kf(e).queue;Yf(e,a,t,P,n===null?Ay:function(){return Xf(e),n(l)})}function kf(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:P,baseState:P,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Ft,lastRenderedState:P},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Ft,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function Xf(e){var t=kf(e);t.next===null&&(t=e.alternate.memoizedState),_a(e,t.next.queue,{},yt())}function Is(){return Ke(qa)}function Gf(){return we().memoizedState}function Vf(){return we().memoizedState}function Cy(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var n=yt();e=Sn(n);var l=xn(t,e,n);l!==null&&(ut(l,t,n),va(l,t,n)),t={cache:Ns()},e.payload=t;return}t=t.return}}function Ry(e,t,n){var l=yt();n={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},qi(e)?Zf(t,n):(n=vs(e,t,n,l),n!==null&&(ut(n,e,l),Kf(n,t,l)))}function Qf(e,t,n){var l=yt();_a(e,t,n,l)}function _a(e,t,n,l){var a={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(qi(e))Zf(t,a);else{var s=e.alternate;if(e.lanes===0&&(s===null||s.lanes===0)&&(s=t.lastRenderedReducer,s!==null))try{var o=t.lastRenderedState,d=s(o,n);if(a.hasEagerState=!0,a.eagerState=d,ot(d,o))return bi(e,t,a,0),Ee===null&&gi(),!1}catch{}finally{}if(n=vs(e,t,a,l),n!==null)return ut(n,e,l),Kf(n,t,l),!0}return!1}function ec(e,t,n,l){if(l={lane:2,revertLane:Dc(),gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},qi(e)){if(t)throw Error(r(479))}else t=vs(e,n,l,2),t!==null&&ut(t,e,2)}function qi(e){var t=e.alternate;return e===te||t!==null&&t===te}function Zf(e,t){Ml=Di=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Kf(e,t,n){if((n&4194048)!==0){var l=t.lanes;l&=e.pendingLanes,n|=l,t.lanes=n,Wr(e,n)}}var Ea={readContext:Ke,use:Ui,useCallback:ze,useContext:ze,useEffect:ze,useImperativeHandle:ze,useLayoutEffect:ze,useInsertionEffect:ze,useMemo:ze,useReducer:ze,useRef:ze,useState:ze,useDebugValue:ze,useDeferredValue:ze,useTransition:ze,useSyncExternalStore:ze,useId:ze,useHostTransitionStatus:ze,useFormState:ze,useActionState:ze,useOptimistic:ze,useMemoCache:ze,useCacheRefresh:ze};Ea.useEffectEvent=ze;var Jf={readContext:Ke,use:Ui,useCallback:function(e,t){return Ie().memoizedState=[e,t===void 0?null:t],e},useContext:Ke,useEffect:Mf,useImperativeHandle:function(e,t,n){n=n!=null?n.concat([e]):null,Li(4194308,4,Uf.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Li(4194308,4,e,t)},useInsertionEffect:function(e,t){Li(4,2,e,t)},useMemo:function(e,t){var n=Ie();t=t===void 0?null:t;var l=e();if(el){hn(!0);try{e()}finally{hn(!1)}}return n.memoizedState=[l,t],l},useReducer:function(e,t,n){var l=Ie();if(n!==void 0){var a=n(t);if(el){hn(!0);try{n(t)}finally{hn(!1)}}}else a=t;return l.memoizedState=l.baseState=a,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:a},l.queue=e,e=e.dispatch=Ry.bind(null,te,e),[l.memoizedState,e]},useRef:function(e){var t=Ie();return e={current:e},t.memoizedState=e},useState:function(e){e=Ks(e);var t=e.queue,n=Qf.bind(null,te,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:Ws,useDeferredValue:function(e,t){var n=Ie();return Fs(n,e,t)},useTransition:function(){var e=Ks(!1);return e=Yf.bind(null,te,e.queue,!0,!1),Ie().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var l=te,a=Ie();if(ce){if(n===void 0)throw Error(r(407));n=n()}else{if(n=t(),Ee===null)throw Error(r(349));(ue&127)!==0||pf(l,t,n)}a.memoizedState=n;var s={value:n,getSnapshot:t};return a.queue=s,Mf(vf.bind(null,l,s,e),[e]),l.flags|=2048,jl(9,{destroy:void 0},yf.bind(null,l,s,n,t),null),n},useId:function(){var e=Ie(),t=Ee.identifierPrefix;if(ce){var n=Ut,l=wt;n=(l&~(1<<32-rt(l)-1)).toString(32)+n,t="_"+t+"R_"+n,n=ji++,0<\/script>",s=s.removeChild(s.firstChild);break;case"select":s=typeof l.is=="string"?o.createElement("select",{is:l.is}):o.createElement("select"),l.multiple?s.multiple=!0:l.size&&(s.size=l.size);break;default:s=typeof l.is=="string"?o.createElement(a,{is:l.is}):o.createElement(a)}}s[Qe]=t,s[et]=l;e:for(o=t.child;o!==null;){if(o.tag===5||o.tag===6)s.appendChild(o.stateNode);else if(o.tag!==4&&o.tag!==27&&o.child!==null){o.child.return=o,o=o.child;continue}if(o===t)break e;for(;o.sibling===null;){if(o.return===null||o.return===t)break e;o=o.return}o.sibling.return=o.return,o=o.sibling}t.stateNode=s;e:switch($e(s,a,l),a){case"button":case"input":case"select":case"textarea":l=!!l.autoFocus;break e;case"img":l=!0;break e;default:l=!1}l&&It(t)}}return Ce(t),mc(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==l&&It(t);else{if(typeof l!="string"&&t.stateNode===null)throw Error(r(166));if(e=le.current,Tl(t)){if(e=t.stateNode,n=t.memoizedProps,l=null,a=Ze,a!==null)switch(a.tag){case 27:case 5:l=a.memoizedProps}e[Qe]=t,e=!!(e.nodeValue===n||l!==null&&l.suppressHydrationWarning===!0||dd(e.nodeValue,n)),e||vn(t,!0)}else e=iu(e).createTextNode(l),e[Qe]=t,t.stateNode=e}return Ce(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(l=Tl(t),n!==null){if(e===null){if(!l)throw Error(r(318));if(e=t.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(r(557));e[Qe]=t}else Kn(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Ce(t),e=!1}else n=Ts(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(dt(t),t):(dt(t),null);if((t.flags&128)!==0)throw Error(r(558))}return Ce(t),null;case 13:if(l=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(a=Tl(t),l!==null&&l.dehydrated!==null){if(e===null){if(!a)throw Error(r(318));if(a=t.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(r(317));a[Qe]=t}else Kn(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Ce(t),a=!1}else a=Ts(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=a),a=!0;if(!a)return t.flags&256?(dt(t),t):(dt(t),null)}return dt(t),(t.flags&128)!==0?(t.lanes=n,t):(n=l!==null,e=e!==null&&e.memoizedState!==null,n&&(l=t.child,a=null,l.alternate!==null&&l.alternate.memoizedState!==null&&l.alternate.memoizedState.cachePool!==null&&(a=l.alternate.memoizedState.cachePool.pool),s=null,l.memoizedState!==null&&l.memoizedState.cachePool!==null&&(s=l.memoizedState.cachePool.pool),s!==a&&(l.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),Vi(t,t.updateQueue),Ce(t),null);case 4:return De(),e===null&&Bc(t.stateNode.containerInfo),Ce(t),null;case 10:return $t(t.type),Ce(t),null;case 19:if(B(je),l=t.memoizedState,l===null)return Ce(t),null;if(a=(t.flags&128)!==0,s=l.rendering,s===null)if(a)Aa(l,!1);else{if(Me!==0||e!==null&&(e.flags&128)!==0)for(e=t.child;e!==null;){if(s=Mi(e),s!==null){for(t.flags|=128,Aa(l,!1),e=s.updateQueue,t.updateQueue=e,Vi(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)Vo(n,e),n=n.sibling;return V(je,je.current&1|2),ce&&Kt(t,l.treeForkCount),t.child}e=e.sibling}l.tail!==null&&st()>$i&&(t.flags|=128,a=!0,Aa(l,!1),t.lanes=4194304)}else{if(!a)if(e=Mi(s),e!==null){if(t.flags|=128,a=!0,e=e.updateQueue,t.updateQueue=e,Vi(t,e),Aa(l,!0),l.tail===null&&l.tailMode==="hidden"&&!s.alternate&&!ce)return Ce(t),null}else 2*st()-l.renderingStartTime>$i&&n!==536870912&&(t.flags|=128,a=!0,Aa(l,!1),t.lanes=4194304);l.isBackwards?(s.sibling=t.child,t.child=s):(e=l.last,e!==null?e.sibling=s:t.child=s,l.last=s)}return l.tail!==null?(e=l.tail,l.rendering=e,l.tail=e.sibling,l.renderingStartTime=st(),e.sibling=null,n=je.current,V(je,a?n&1|2:n&1),ce&&Kt(t,l.treeForkCount),e):(Ce(t),null);case 22:case 23:return dt(t),Ls(),l=t.memoizedState!==null,e!==null?e.memoizedState!==null!==l&&(t.flags|=8192):l&&(t.flags|=8192),l?(n&536870912)!==0&&(t.flags&128)===0&&(Ce(t),t.subtreeFlags&6&&(t.flags|=8192)):Ce(t),n=t.updateQueue,n!==null&&Vi(t,n.retryQueue),n=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),l=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(l=t.memoizedState.cachePool.pool),l!==n&&(t.flags|=2048),e!==null&&B(Wn),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),$t(Be),Ce(t),null;case 25:return null;case 30:return null}throw Error(r(156,t.tag))}function Dy(e,t){switch(_s(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return $t(Be),De(),e=t.flags,(e&65536)!==0&&(e&128)===0?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return ti(t),null;case 31:if(t.memoizedState!==null){if(dt(t),t.alternate===null)throw Error(r(340));Kn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(dt(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(r(340));Kn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return B(je),null;case 4:return De(),null;case 10:return $t(t.type),null;case 22:case 23:return dt(t),Ls(),e!==null&&B(Wn),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return $t(Be),null;case 25:return null;default:return null}}function gh(e,t){switch(_s(t),t.tag){case 3:$t(Be),De();break;case 26:case 27:case 5:ti(t);break;case 4:De();break;case 31:t.memoizedState!==null&&dt(t);break;case 13:dt(t);break;case 19:B(je);break;case 10:$t(t.type);break;case 22:case 23:dt(t),Ls(),e!==null&&B(Wn);break;case 24:$t(Be)}}function Ca(e,t){try{var n=t.updateQueue,l=n!==null?n.lastEffect:null;if(l!==null){var a=l.next;n=a;do{if((n.tag&e)===e){l=void 0;var s=n.create,o=n.inst;l=s(),o.destroy=l}n=n.next}while(n!==a)}}catch(d){pe(t,t.return,d)}}function Tn(e,t,n){try{var l=t.updateQueue,a=l!==null?l.lastEffect:null;if(a!==null){var s=a.next;l=s;do{if((l.tag&e)===e){var o=l.inst,d=o.destroy;if(d!==void 0){o.destroy=void 0,a=t;var g=n,N=d;try{N()}catch(D){pe(a,g,D)}}}l=l.next}while(l!==s)}}catch(D){pe(t,t.return,D)}}function bh(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{rf(t,n)}catch(l){pe(e,e.return,l)}}}function Sh(e,t,n){n.props=tl(e.type,e.memoizedProps),n.state=e.memoizedState;try{n.componentWillUnmount()}catch(l){pe(e,t,l)}}function Ra(e,t){try{var n=e.ref;if(n!==null){switch(e.tag){case 26:case 27:case 5:var l=e.stateNode;break;case 30:l=e.stateNode;break;default:l=e.stateNode}typeof n=="function"?e.refCleanup=n(l):n.current=l}}catch(a){pe(e,t,a)}}function Bt(e,t){var n=e.ref,l=e.refCleanup;if(n!==null)if(typeof l=="function")try{l()}catch(a){pe(e,t,a)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n=="function")try{n(null)}catch(a){pe(e,t,a)}else n.current=null}function xh(e){var t=e.type,n=e.memoizedProps,l=e.stateNode;try{e:switch(t){case"button":case"input":case"select":case"textarea":n.autoFocus&&l.focus();break e;case"img":n.src?l.src=n.src:n.srcSet&&(l.srcset=n.srcSet)}}catch(a){pe(e,e.return,a)}}function pc(e,t,n){try{var l=e.stateNode;e0(l,e.type,n,t),l[et]=t}catch(a){pe(e,e.return,a)}}function _h(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&Mn(e.type)||e.tag===4}function yc(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||_h(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&&Mn(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 vc(e,t,n){var l=e.tag;if(l===5||l===6)e=e.stateNode,t?(n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n).insertBefore(e,t):(t=n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n,t.appendChild(e),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=Vt));else if(l!==4&&(l===27&&Mn(e.type)&&(n=e.stateNode,t=null),e=e.child,e!==null))for(vc(e,t,n),e=e.sibling;e!==null;)vc(e,t,n),e=e.sibling}function Qi(e,t,n){var l=e.tag;if(l===5||l===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(l!==4&&(l===27&&Mn(e.type)&&(n=e.stateNode),e=e.child,e!==null))for(Qi(e,t,n),e=e.sibling;e!==null;)Qi(e,t,n),e=e.sibling}function Eh(e){var t=e.stateNode,n=e.memoizedProps;try{for(var l=e.type,a=t.attributes;a.length;)t.removeAttributeNode(a[0]);$e(t,l,n),t[Qe]=e,t[et]=n}catch(s){pe(e,e.return,s)}}var en=!1,qe=!1,gc=!1,Th=typeof WeakSet=="function"?WeakSet:Set,Ve=null;function jy(e,t){if(e=e.containerInfo,qc=hu,e=Uo(e),fs(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var l=n.getSelection&&n.getSelection();if(l&&l.rangeCount!==0){n=l.anchorNode;var a=l.anchorOffset,s=l.focusNode;l=l.focusOffset;try{n.nodeType,s.nodeType}catch{n=null;break e}var o=0,d=-1,g=-1,N=0,D=0,U=e,O=null;t:for(;;){for(var M;U!==n||a!==0&&U.nodeType!==3||(d=o+a),U!==s||l!==0&&U.nodeType!==3||(g=o+l),U.nodeType===3&&(o+=U.nodeValue.length),(M=U.firstChild)!==null;)O=U,U=M;for(;;){if(U===e)break t;if(O===n&&++N===a&&(d=o),O===s&&++D===l&&(g=o),(M=U.nextSibling)!==null)break;U=O,O=U.parentNode}U=M}n=d===-1||g===-1?null:{start:d,end:g}}else n=null}n=n||{start:0,end:0}}else n=null;for(Yc={focusedElem:e,selectionRange:n},hu=!1,Ve=t;Ve!==null;)if(t=Ve,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,Ve=e;else for(;Ve!==null;){switch(t=Ve,s=t.alternate,e=t.flags,t.tag){case 0:if((e&4)!==0&&(e=t.updateQueue,e=e!==null?e.events:null,e!==null))for(n=0;n title"))),$e(s,l,n),s[Qe]=e,Ge(s),l=s;break e;case"link":var o=zd("link","href",a).get(l+(n.href||""));if(o){for(var d=0;dSe&&(o=Se,Se=W,W=o);var A=jo(d,W),x=jo(d,Se);if(A&&x&&(M.rangeCount!==1||M.anchorNode!==A.node||M.anchorOffset!==A.offset||M.focusNode!==x.node||M.focusOffset!==x.offset)){var R=U.createRange();R.setStart(A.node,A.offset),M.removeAllRanges(),W>Se?(M.addRange(R),M.extend(x.node,x.offset)):(R.setEnd(x.node,x.offset),M.addRange(R))}}}}for(U=[],M=d;M=M.parentNode;)M.nodeType===1&&U.push({element:M,left:M.scrollLeft,top:M.scrollTop});for(typeof d.focus=="function"&&d.focus(),d=0;dn?32:n,j.T=null,n=Ac,Ac=null;var s=Nn,o=un;if(ke=0,Hl=Nn=null,un=0,(he&6)!==0)throw Error(r(331));var d=he;if(he|=4,Uh(s.current),Dh(s,s.current,o,n),he=d,ja(0,!1),ct&&typeof ct.onPostCommitFiberRoot=="function")try{ct.onPostCommitFiberRoot(Fl,s)}catch{}return!0}finally{G.p=a,j.T=l,Ih(e,t)}}function td(e,t,n){t=St(n,t),t=ac(e.stateNode,t,2),e=xn(e,t,2),e!==null&&(Il(e,2),Lt(e))}function pe(e,t,n){if(e.tag===3)td(e,e,n);else for(;t!==null;){if(t.tag===3){td(t,e,n);break}else if(t.tag===1){var l=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof l.componentDidCatch=="function"&&(Rn===null||!Rn.has(l))){e=St(n,e),n=nh(2),l=xn(t,n,2),l!==null&&(lh(n,l,t,e),Il(l,2),Lt(l));break}}t=t.return}}function Oc(e,t,n){var l=e.pingCache;if(l===null){l=e.pingCache=new By;var a=new Set;l.set(t,a)}else a=l.get(t),a===void 0&&(a=new Set,l.set(t,a));a.has(n)||(xc=!0,a.add(n),e=ky.bind(null,e,t,n),t.then(e,e))}function ky(e,t,n){var l=e.pingCache;l!==null&&l.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,Ee===e&&(ue&n)===n&&(Me===4||Me===3&&(ue&62914560)===ue&&300>st()-Ji?(he&2)===0&&ql(e,0):_c|=n,Ll===ue&&(Ll=0)),Lt(e)}function nd(e,t){t===0&&(t=Jr()),e=Qn(e,t),e!==null&&(Il(e,t),Lt(e))}function Xy(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),nd(e,n)}function Gy(e,t){var n=0;switch(e.tag){case 31:case 13:var l=e.stateNode,a=e.memoizedState;a!==null&&(n=a.retryLane);break;case 19:l=e.stateNode;break;case 22:l=e.stateNode._retryCache;break;default:throw Error(r(314))}l!==null&&l.delete(t),nd(e,n)}function Vy(e,t){return Xu(e,t)}var tu=null,kl=null,zc=!1,nu=!1,Mc=!1,zn=0;function Lt(e){e!==kl&&e.next===null&&(kl===null?tu=kl=e:kl=kl.next=e),nu=!0,zc||(zc=!0,Zy())}function ja(e,t){if(!Mc&&nu){Mc=!0;do for(var n=!1,l=tu;l!==null;){if(e!==0){var a=l.pendingLanes;if(a===0)var s=0;else{var o=l.suspendedLanes,d=l.pingedLanes;s=(1<<31-rt(42|e)+1)-1,s&=a&~(o&~d),s=s&201326741?s&201326741|1:s?s|2:0}s!==0&&(n=!0,ud(l,s))}else s=ue,s=ui(l,l===Ee?s:0,l.cancelPendingCommit!==null||l.timeoutHandle!==-1),(s&3)===0||Pl(l,s)||(n=!0,ud(l,s));l=l.next}while(n);Mc=!1}}function Qy(){ld()}function ld(){nu=zc=!1;var e=0;zn!==0&&n0()&&(e=zn);for(var t=st(),n=null,l=tu;l!==null;){var a=l.next,s=ad(l,t);s===0?(l.next=null,n===null?tu=a:n.next=a,a===null&&(kl=n)):(n=l,(e!==0||(s&3)!==0)&&(nu=!0)),l=a}ke!==0&&ke!==5||ja(e),zn!==0&&(zn=0)}function ad(e,t){for(var n=e.suspendedLanes,l=e.pingedLanes,a=e.expirationTimes,s=e.pendingLanes&-62914561;0d)break;var D=g.transferSize,U=g.initiatorType;D&&md(U)&&(g=g.responseEnd,o+=D*(g"u"?null:document;function Cd(e,t,n){var l=Xl;if(l&&typeof t=="string"&&t){var a=gt(t);a='link[rel="'+e+'"][href="'+a+'"]',typeof n=="string"&&(a+='[crossorigin="'+n+'"]'),Ad.has(a)||(Ad.add(a),e={rel:e,crossOrigin:n,href:t},l.querySelector(a)===null&&(t=l.createElement("link"),$e(t,"link",e),Ge(t),l.head.appendChild(t)))}}function f0(e){sn.D(e),Cd("dns-prefetch",e,null)}function h0(e,t){sn.C(e,t),Cd("preconnect",e,t)}function d0(e,t,n){sn.L(e,t,n);var l=Xl;if(l&&e&&t){var a='link[rel="preload"][as="'+gt(t)+'"]';t==="image"&&n&&n.imageSrcSet?(a+='[imagesrcset="'+gt(n.imageSrcSet)+'"]',typeof n.imageSizes=="string"&&(a+='[imagesizes="'+gt(n.imageSizes)+'"]')):a+='[href="'+gt(e)+'"]';var s=a;switch(t){case"style":s=Gl(e);break;case"script":s=Vl(e)}Ct.has(s)||(e=S({rel:"preload",href:t==="image"&&n&&n.imageSrcSet?void 0:e,as:t},n),Ct.set(s,e),l.querySelector(a)!==null||t==="style"&&l.querySelector(La(s))||t==="script"&&l.querySelector(Ha(s))||(t=l.createElement("link"),$e(t,"link",e),Ge(t),l.head.appendChild(t)))}}function m0(e,t){sn.m(e,t);var n=Xl;if(n&&e){var l=t&&typeof t.as=="string"?t.as:"script",a='link[rel="modulepreload"][as="'+gt(l)+'"][href="'+gt(e)+'"]',s=a;switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":s=Vl(e)}if(!Ct.has(s)&&(e=S({rel:"modulepreload",href:e},t),Ct.set(s,e),n.querySelector(a)===null)){switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(n.querySelector(Ha(s)))return}l=n.createElement("link"),$e(l,"link",e),Ge(l),n.head.appendChild(l)}}}function p0(e,t,n){sn.S(e,t,n);var l=Xl;if(l&&e){var a=fl(l).hoistableStyles,s=Gl(e);t=t||"default";var o=a.get(s);if(!o){var d={loading:0,preload:null};if(o=l.querySelector(La(s)))d.loading=5;else{e=S({rel:"stylesheet",href:e,"data-precedence":t},n),(n=Ct.get(s))&&Kc(e,n);var g=o=l.createElement("link");Ge(g),$e(g,"link",e),g._p=new Promise(function(N,D){g.onload=N,g.onerror=D}),g.addEventListener("load",function(){d.loading|=1}),g.addEventListener("error",function(){d.loading|=2}),d.loading|=4,su(o,t,l)}o={type:"stylesheet",instance:o,count:1,state:d},a.set(s,o)}}}function y0(e,t){sn.X(e,t);var n=Xl;if(n&&e){var l=fl(n).hoistableScripts,a=Vl(e),s=l.get(a);s||(s=n.querySelector(Ha(a)),s||(e=S({src:e,async:!0},t),(t=Ct.get(a))&&Jc(e,t),s=n.createElement("script"),Ge(s),$e(s,"link",e),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function v0(e,t){sn.M(e,t);var n=Xl;if(n&&e){var l=fl(n).hoistableScripts,a=Vl(e),s=l.get(a);s||(s=n.querySelector(Ha(a)),s||(e=S({src:e,async:!0,type:"module"},t),(t=Ct.get(a))&&Jc(e,t),s=n.createElement("script"),Ge(s),$e(s,"link",e),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function Rd(e,t,n,l){var a=(a=le.current)?uu(a):null;if(!a)throw Error(r(446));switch(e){case"meta":case"title":return null;case"style":return typeof n.precedence=="string"&&typeof n.href=="string"?(t=Gl(n.href),n=fl(a).hoistableStyles,l=n.get(t),l||(l={type:"style",instance:null,count:0,state:null},n.set(t,l)),l):{type:"void",instance:null,count:0,state:null};case"link":if(n.rel==="stylesheet"&&typeof n.href=="string"&&typeof n.precedence=="string"){e=Gl(n.href);var s=fl(a).hoistableStyles,o=s.get(e);if(o||(a=a.ownerDocument||a,o={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},s.set(e,o),(s=a.querySelector(La(e)))&&!s._p&&(o.instance=s,o.state.loading=5),Ct.has(e)||(n={rel:"preload",as:"style",href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},Ct.set(e,n),s||g0(a,e,n,o.state))),t&&l===null)throw Error(r(528,""));return o}if(t&&l!==null)throw Error(r(529,""));return null;case"script":return t=n.async,n=n.src,typeof n=="string"&&t&&typeof t!="function"&&typeof t!="symbol"?(t=Vl(n),n=fl(a).hoistableScripts,l=n.get(t),l||(l={type:"script",instance:null,count:0,state:null},n.set(t,l)),l):{type:"void",instance:null,count:0,state:null};default:throw Error(r(444,e))}}function Gl(e){return'href="'+gt(e)+'"'}function La(e){return'link[rel="stylesheet"]['+e+"]"}function Nd(e){return S({},e,{"data-precedence":e.precedence,precedence:null})}function g0(e,t,n,l){e.querySelector('link[rel="preload"][as="style"]['+t+"]")?l.loading=1:(t=e.createElement("link"),l.preload=t,t.addEventListener("load",function(){return l.loading|=1}),t.addEventListener("error",function(){return l.loading|=2}),$e(t,"link",n),Ge(t),e.head.appendChild(t))}function Vl(e){return'[src="'+gt(e)+'"]'}function Ha(e){return"script[async]"+e}function Od(e,t,n){if(t.count++,t.instance===null)switch(t.type){case"style":var l=e.querySelector('style[data-href~="'+gt(n.href)+'"]');if(l)return t.instance=l,Ge(l),l;var a=S({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return l=(e.ownerDocument||e).createElement("style"),Ge(l),$e(l,"style",a),su(l,n.precedence,e),t.instance=l;case"stylesheet":a=Gl(n.href);var s=e.querySelector(La(a));if(s)return t.state.loading|=4,t.instance=s,Ge(s),s;l=Nd(n),(a=Ct.get(a))&&Kc(l,a),s=(e.ownerDocument||e).createElement("link"),Ge(s);var o=s;return o._p=new Promise(function(d,g){o.onload=d,o.onerror=g}),$e(s,"link",l),t.state.loading|=4,su(s,n.precedence,e),t.instance=s;case"script":return s=Vl(n.src),(a=e.querySelector(Ha(s)))?(t.instance=a,Ge(a),a):(l=n,(a=Ct.get(s))&&(l=S({},n),Jc(l,a)),e=e.ownerDocument||e,a=e.createElement("script"),Ge(a),$e(a,"link",l),e.head.appendChild(a),t.instance=a);case"void":return null;default:throw Error(r(443,t.type))}else t.type==="stylesheet"&&(t.state.loading&4)===0&&(l=t.instance,t.state.loading|=4,su(l,n.precedence,e));return t.instance}function su(e,t,n){for(var l=n.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=l.length?l[l.length-1]:null,s=a,o=0;o title"):null)}function b0(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case"meta":case"title":return!0;case"style":if(typeof t.precedence!="string"||typeof t.href!="string"||t.href==="")break;return!0;case"link":if(typeof t.rel!="string"||typeof t.href!="string"||t.href===""||t.onLoad||t.onError)break;switch(t.rel){case"stylesheet":return e=t.disabled,typeof t.precedence=="string"&&e==null;default:return!0}case"script":if(t.async&&typeof t.async!="function"&&typeof t.async!="symbol"&&!t.onLoad&&!t.onError&&t.src&&typeof t.src=="string")return!0}return!1}function Dd(e){return!(e.type==="stylesheet"&&(e.state.loading&3)===0)}function S0(e,t,n,l){if(n.type==="stylesheet"&&(typeof l.media!="string"||matchMedia(l.media).matches!==!1)&&(n.state.loading&4)===0){if(n.instance===null){var a=Gl(l.href),s=t.querySelector(La(a));if(s){t=s._p,t!==null&&typeof t=="object"&&typeof t.then=="function"&&(e.count++,e=ru.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=s,Ge(s);return}s=t.ownerDocument||t,l=Nd(l),(a=Ct.get(a))&&Kc(l,a),s=s.createElement("link"),Ge(s);var o=s;o._p=new Promise(function(d,g){o.onload=d,o.onerror=g}),$e(s,"link",l),n.instance=s}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&(n.state.loading&3)===0&&(e.count++,n=ru.bind(e),t.addEventListener("load",n),t.addEventListener("error",n))}}var $c=0;function x0(e,t){return e.stylesheets&&e.count===0&&fu(e,e.stylesheets),0$c?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(l),clearTimeout(a)}}:null}function ru(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)fu(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var ou=null;function fu(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,ou=new Map,t.forEach(_0,e),ou=null,ru.call(e))}function _0(e,t){if(!(t.state.loading&4)){var n=ou.get(e);if(n)var l=n.get(null);else{n=new Map,ou.set(e,n);for(var a=e.querySelectorAll("link[data-precedence],style[data-precedence]"),s=0;s"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(u)}catch(i){console.error(i)}}return u(),ar.exports=H0(),ar.exports}var Y0=q0();var nm="popstate";function k0(u={}){function i(r,f){let{pathname:h,search:m,hash:b}=r.location;return pr("",{pathname:h,search:m,hash:b},f.state&&f.state.usr||null,f.state&&f.state.key||"default")}function c(r,f){return typeof f=="string"?f:Wa(f)}return G0(i,c,null,u)}function Oe(u,i){if(u===!1||u===null||typeof u>"u")throw new Error(i)}function jt(u,i){if(!u){typeof console<"u"&&console.warn(i);try{throw new Error(i)}catch{}}}function X0(){return Math.random().toString(36).substring(2,10)}function lm(u,i){return{usr:u.state,key:u.key,idx:i}}function pr(u,i,c=null,r){return{pathname:typeof u=="string"?u:u.pathname,search:"",hash:"",...typeof i=="string"?Kl(i):i,state:c,key:i&&i.key||r||X0()}}function Wa({pathname:u="/",search:i="",hash:c=""}){return i&&i!=="?"&&(u+=i.charAt(0)==="?"?i:"?"+i),c&&c!=="#"&&(u+=c.charAt(0)==="#"?c:"#"+c),u}function Kl(u){let i={};if(u){let c=u.indexOf("#");c>=0&&(i.hash=u.substring(c),u=u.substring(0,c));let r=u.indexOf("?");r>=0&&(i.search=u.substring(r),u=u.substring(0,r)),u&&(i.pathname=u)}return i}function G0(u,i,c,r={}){let{window:f=document.defaultView,v5Compat:h=!1}=r,m=f.history,b="POP",y=null,v=T();v==null&&(v=0,m.replaceState({...m.state,idx:v},""));function T(){return(m.state||{idx:null}).idx}function S(){b="POP";let q=T(),H=q==null?null:q-v;v=q,y&&y({action:b,location:X.location,delta:H})}function C(q,H){b="PUSH";let Y=pr(X.location,q,H);v=T()+1;let k=lm(Y,v),F=X.createHref(Y);try{m.pushState(k,"",F)}catch(ye){if(ye instanceof DOMException&&ye.name==="DataCloneError")throw ye;f.location.assign(F)}h&&y&&y({action:b,location:X.location,delta:1})}function z(q,H){b="REPLACE";let Y=pr(X.location,q,H);v=T();let k=lm(Y,v),F=X.createHref(Y);m.replaceState(k,"",F),h&&y&&y({action:b,location:X.location,delta:0})}function L(q){return V0(q)}let X={get action(){return b},get location(){return u(f,m)},listen(q){if(y)throw new Error("A history only accepts one active listener");return f.addEventListener(nm,S),y=q,()=>{f.removeEventListener(nm,S),y=null}},createHref(q){return i(f,q)},createURL:L,encodeLocation(q){let H=L(q);return{pathname:H.pathname,search:H.search,hash:H.hash}},push:C,replace:z,go(q){return m.go(q)}};return X}function V0(u,i=!1){let c="http://localhost";typeof window<"u"&&(c=window.location.origin!=="null"?window.location.origin:window.location.href),Oe(c,"No window.location.(origin|href) available to create URL");let r=typeof u=="string"?u:Wa(u);return r=r.replace(/ $/,"%20"),!i&&r.startsWith("//")&&(r=c+r),new URL(r,c)}function _m(u,i,c="/"){return Q0(u,i,c,!1)}function Q0(u,i,c,r){let f=typeof i=="string"?Kl(i):i,h=on(f.pathname||"/",c);if(h==null)return null;let m=Em(u);Z0(m);let b=null;for(let y=0;b==null&&y{let T={relativePath:v===void 0?m.path||"":v,caseSensitive:m.caseSensitive===!0,childrenIndex:b,route:m};if(T.relativePath.startsWith("/")){if(!T.relativePath.startsWith(r)&&y)return;Oe(T.relativePath.startsWith(r),`Absolute route path "${T.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),T.relativePath=T.relativePath.slice(r.length)}let S=rn([r,T.relativePath]),C=c.concat(T);m.children&&m.children.length>0&&(Oe(m.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${S}".`),Em(m.children,i,C,S,y)),!(m.path==null&&!m.index)&&i.push({path:S,score:I0(S,m.index),routesMeta:C})};return u.forEach((m,b)=>{if(m.path===""||!m.path?.includes("?"))h(m,b);else for(let y of Tm(m.path))h(m,b,!0,y)}),i}function Tm(u){let i=u.split("/");if(i.length===0)return[];let[c,...r]=i,f=c.endsWith("?"),h=c.replace(/\?$/,"");if(r.length===0)return f?[h,""]:[h];let m=Tm(r.join("/")),b=[];return b.push(...m.map(y=>y===""?h:[h,y].join("/"))),f&&b.push(...m),b.map(y=>u.startsWith("/")&&y===""?"/":y)}function Z0(u){u.sort((i,c)=>i.score!==c.score?c.score-i.score:ev(i.routesMeta.map(r=>r.childrenIndex),c.routesMeta.map(r=>r.childrenIndex)))}var K0=/^:[\w-]+$/,J0=3,$0=2,W0=1,F0=10,P0=-2,am=u=>u==="*";function I0(u,i){let c=u.split("/"),r=c.length;return c.some(am)&&(r+=P0),i&&(r+=$0),c.filter(f=>!am(f)).reduce((f,h)=>f+(K0.test(h)?J0:h===""?W0:F0),r)}function ev(u,i){return u.length===i.length&&u.slice(0,-1).every((r,f)=>r===i[f])?u[u.length-1]-i[i.length-1]:0}function tv(u,i,c=!1){let{routesMeta:r}=u,f={},h="/",m=[];for(let b=0;b{if(T==="*"){let L=b[C]||"";m=h.slice(0,h.length-L.length).replace(/(.)\/+$/,"$1")}const z=b[C];return S&&!z?v[T]=void 0:v[T]=(z||"").replace(/%2F/g,"/"),v},{}),pathname:h,pathnameBase:m,pattern:u}}function nv(u,i=!1,c=!0){jt(u==="*"||!u.endsWith("*")||u.endsWith("/*"),`Route path "${u}" will be treated as if it were "${u.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${u.replace(/\*$/,"/*")}".`);let r=[],f="^"+u.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(m,b,y)=>(r.push({paramName:b,isOptional:y!=null}),y?"/?([^\\/]+)?":"/([^\\/]+)")).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return u.endsWith("*")?(r.push({paramName:"*"}),f+=u==="*"||u==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):c?f+="\\/*$":u!==""&&u!=="/"&&(f+="(?:(?=\\/|$))"),[new RegExp(f,i?void 0:"i"),r]}function lv(u){try{return u.split("/").map(i=>decodeURIComponent(i).replace(/\//g,"%2F")).join("/")}catch(i){return jt(!1,`The URL path "${u}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${i}).`),u}}function on(u,i){if(i==="/")return u;if(!u.toLowerCase().startsWith(i.toLowerCase()))return null;let c=i.endsWith("/")?i.length-1:i.length,r=u.charAt(c);return r&&r!=="/"?null:u.slice(c)||"/"}var av=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,iv=u=>av.test(u);function uv(u,i="/"){let{pathname:c,search:r="",hash:f=""}=typeof u=="string"?Kl(u):u,h;if(c)if(iv(c))h=c;else{if(c.includes("//")){let m=c;c=c.replace(/\/\/+/g,"/"),jt(!1,`Pathnames cannot have embedded double slashes - normalizing ${m} -> ${c}`)}c.startsWith("/")?h=im(c.substring(1),"/"):h=im(c,i)}else h=i;return{pathname:h,search:rv(r),hash:ov(f)}}function im(u,i){let c=i.replace(/\/+$/,"").split("/");return u.split("/").forEach(f=>{f===".."?c.length>1&&c.pop():f!=="."&&c.push(f)}),c.length>1?c.join("/"):"/"}function cr(u,i,c,r){return`Cannot include a '${u}' character in a manually specified \`to.${i}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${c}\` field. Alternatively you may provide the full path as a string in and the router will parse it for you.`}function sv(u){return u.filter((i,c)=>c===0||i.route.path&&i.route.path.length>0)}function Am(u){let i=sv(u);return i.map((c,r)=>r===i.length-1?c.pathname:c.pathnameBase)}function Cm(u,i,c,r=!1){let f;typeof u=="string"?f=Kl(u):(f={...u},Oe(!f.pathname||!f.pathname.includes("?"),cr("?","pathname","search",f)),Oe(!f.pathname||!f.pathname.includes("#"),cr("#","pathname","hash",f)),Oe(!f.search||!f.search.includes("#"),cr("#","search","hash",f)));let h=u===""||f.pathname==="",m=h?"/":f.pathname,b;if(m==null)b=c;else{let S=i.length-1;if(!r&&m.startsWith("..")){let C=m.split("/");for(;C[0]==="..";)C.shift(),S-=1;f.pathname=C.join("/")}b=S>=0?i[S]:"/"}let y=uv(f,b),v=m&&m!=="/"&&m.endsWith("/"),T=(h||m===".")&&c.endsWith("/");return!y.pathname.endsWith("/")&&(v||T)&&(y.pathname+="/"),y}var rn=u=>u.join("/").replace(/\/\/+/g,"/"),cv=u=>u.replace(/\/+$/,"").replace(/^\/*/,"/"),rv=u=>!u||u==="?"?"":u.startsWith("?")?u:"?"+u,ov=u=>!u||u==="#"?"":u.startsWith("#")?u:"#"+u;function fv(u){return u!=null&&typeof u.status=="number"&&typeof u.statusText=="string"&&typeof u.internal=="boolean"&&"data"in u}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var Rm=["POST","PUT","PATCH","DELETE"];new Set(Rm);var hv=["GET",...Rm];new Set(hv);var Jl=E.createContext(null);Jl.displayName="DataRouter";var Du=E.createContext(null);Du.displayName="DataRouterState";E.createContext(!1);var Nm=E.createContext({isTransitioning:!1});Nm.displayName="ViewTransition";var dv=E.createContext(new Map);dv.displayName="Fetchers";var mv=E.createContext(null);mv.displayName="Await";var Yt=E.createContext(null);Yt.displayName="Navigation";var Fa=E.createContext(null);Fa.displayName="Location";var fn=E.createContext({outlet:null,matches:[],isDataRoute:!1});fn.displayName="Route";var Tr=E.createContext(null);Tr.displayName="RouteError";function pv(u,{relative:i}={}){Oe(Pa(),"useHref() may be used only in the context of a component.");let{basename:c,navigator:r}=E.useContext(Yt),{hash:f,pathname:h,search:m}=Ia(u,{relative:i}),b=h;return c!=="/"&&(b=h==="/"?c:rn([c,h])),r.createHref({pathname:b,search:m,hash:f})}function Pa(){return E.useContext(Fa)!=null}function sl(){return Oe(Pa(),"useLocation() may be used only in the context of a component."),E.useContext(Fa).location}var Om="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function zm(u){E.useContext(Yt).static||E.useLayoutEffect(u)}function yv(){let{isDataRoute:u}=E.useContext(fn);return u?Ov():vv()}function vv(){Oe(Pa(),"useNavigate() may be used only in the context of a component.");let u=E.useContext(Jl),{basename:i,navigator:c}=E.useContext(Yt),{matches:r}=E.useContext(fn),{pathname:f}=sl(),h=JSON.stringify(Am(r)),m=E.useRef(!1);return zm(()=>{m.current=!0}),E.useCallback((y,v={})=>{if(jt(m.current,Om),!m.current)return;if(typeof y=="number"){c.go(y);return}let T=Cm(y,JSON.parse(h),f,v.relative==="path");u==null&&i!=="/"&&(T.pathname=T.pathname==="/"?i:rn([i,T.pathname])),(v.replace?c.replace:c.push)(T,v.state,v)},[i,c,h,f,u])}E.createContext(null);function Ia(u,{relative:i}={}){let{matches:c}=E.useContext(fn),{pathname:r}=sl(),f=JSON.stringify(Am(c));return E.useMemo(()=>Cm(u,JSON.parse(f),r,i==="path"),[u,f,r,i])}function gv(u,i){return Mm(u,i)}function Mm(u,i,c,r,f){Oe(Pa(),"useRoutes() may be used only in the context of a component.");let{navigator:h}=E.useContext(Yt),{matches:m}=E.useContext(fn),b=m[m.length-1],y=b?b.params:{},v=b?b.pathname:"/",T=b?b.pathnameBase:"/",S=b&&b.route;{let Y=S&&S.path||"";Dm(v,!S||Y.endsWith("*")||Y.endsWith("*?"),`You rendered descendant (or called \`useRoutes()\`) at "${v}" (under ) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render. -Please change the parent to .`)}let C=sl(),z;if(i){let Y=typeof i=="string"?Kl(i):i;Oe(T==="/"||Y.pathname?.startsWith(T),`When overriding the location using \`\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${T}" but pathname "${Y.pathname}" was given in the \`location\` prop.`),z=Y}else z=C;let L=z.pathname||"/",X=L;if(T!=="/"){let Y=T.replace(/^\//,"").split("/");X="/"+L.replace(/^\//,"").split("/").slice(Y.length).join("/")}let q=_m(u,{pathname:X});jt(S||q!=null,`No routes matched location "${z.pathname}${z.search}${z.hash}" `),jt(q==null||q[q.length-1].route.element!==void 0||q[q.length-1].route.Component!==void 0||q[q.length-1].route.lazy!==void 0,`Matched leaf route at location "${z.pathname}${z.search}${z.hash}" does not have an element or Component. This means it will render an with a null value by default resulting in an "empty" page.`);let H=Ev(q&&q.map(Y=>Object.assign({},Y,{params:Object.assign({},y,Y.params),pathname:rn([T,h.encodeLocation?h.encodeLocation(Y.pathname.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:Y.pathname]),pathnameBase:Y.pathnameBase==="/"?T:rn([T,h.encodeLocation?h.encodeLocation(Y.pathnameBase.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:Y.pathnameBase])})),m,c,r,f);return i&&H?E.createElement(Fa.Provider,{value:{location:{pathname:"/",search:"",hash:"",state:null,key:"default",...z},navigationType:"POP"}},H):H}function bv(){let u=Nv(),i=fv(u)?`${u.status} ${u.statusText}`:u instanceof Error?u.message:JSON.stringify(u),c=u instanceof Error?u.stack:null,r="rgba(200,200,200, 0.5)",f={padding:"0.5rem",backgroundColor:r},h={padding:"2px 4px",backgroundColor:r},m=null;return console.error("Error handled by React Router default ErrorBoundary:",u),m=E.createElement(E.Fragment,null,E.createElement("p",null,"💿 Hey developer 👋"),E.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",E.createElement("code",{style:h},"ErrorBoundary")," or"," ",E.createElement("code",{style:h},"errorElement")," prop on your route.")),E.createElement(E.Fragment,null,E.createElement("h2",null,"Unexpected Application Error!"),E.createElement("h3",{style:{fontStyle:"italic"}},i),c?E.createElement("pre",{style:f},c):null,m)}var Sv=E.createElement(bv,null),xv=class extends E.Component{constructor(u){super(u),this.state={location:u.location,revalidation:u.revalidation,error:u.error}}static getDerivedStateFromError(u){return{error:u}}static getDerivedStateFromProps(u,i){return i.location!==u.location||i.revalidation!=="idle"&&u.revalidation==="idle"?{error:u.error,location:u.location,revalidation:u.revalidation}:{error:u.error!==void 0?u.error:i.error,location:i.location,revalidation:u.revalidation||i.revalidation}}componentDidCatch(u,i){this.props.onError?this.props.onError(u,i):console.error("React Router caught the following error during render",u)}render(){return this.state.error!==void 0?E.createElement(fn.Provider,{value:this.props.routeContext},E.createElement(Tr.Provider,{value:this.state.error,children:this.props.component})):this.props.children}};function _v({routeContext:u,match:i,children:c}){let r=E.useContext(Jl);return r&&r.static&&r.staticContext&&(i.route.errorElement||i.route.ErrorBoundary)&&(r.staticContext._deepestRenderedBoundaryId=i.route.id),E.createElement(fn.Provider,{value:u},c)}function Ev(u,i=[],c=null,r=null,f=null){if(u==null){if(!c)return null;if(c.errors)u=c.matches;else if(i.length===0&&!c.initialized&&c.matches.length>0)u=c.matches;else return null}let h=u,m=c?.errors;if(m!=null){let T=h.findIndex(S=>S.route.id&&m?.[S.route.id]!==void 0);Oe(T>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(m).join(",")}`),h=h.slice(0,Math.min(h.length,T+1))}let b=!1,y=-1;if(c)for(let T=0;T=0?h=h.slice(0,y+1):h=[h[0]];break}}}let v=c&&r?(T,S)=>{r(T,{location:c.location,params:c.matches?.[0]?.params??{},errorInfo:S})}:void 0;return h.reduceRight((T,S,C)=>{let z,L=!1,X=null,q=null;c&&(z=m&&S.route.id?m[S.route.id]:void 0,X=S.route.errorElement||Sv,b&&(y<0&&C===0?(Dm("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),L=!0,q=null):y===C&&(L=!0,q=S.route.hydrateFallbackElement||null)));let H=i.concat(h.slice(0,C+1)),Y=()=>{let k;return z?k=X:L?k=q:S.route.Component?k=E.createElement(S.route.Component,null):S.route.element?k=S.route.element:k=T,E.createElement(_v,{match:S,routeContext:{outlet:T,matches:H,isDataRoute:c!=null},children:k})};return c&&(S.route.ErrorBoundary||S.route.errorElement||C===0)?E.createElement(xv,{location:c.location,revalidation:c.revalidation,component:X,error:z,children:Y(),routeContext:{outlet:null,matches:H,isDataRoute:!0},onError:v}):Y()},null)}function Ar(u){return`${u} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function Tv(u){let i=E.useContext(Jl);return Oe(i,Ar(u)),i}function Av(u){let i=E.useContext(Du);return Oe(i,Ar(u)),i}function Cv(u){let i=E.useContext(fn);return Oe(i,Ar(u)),i}function Cr(u){let i=Cv(u),c=i.matches[i.matches.length-1];return Oe(c.route.id,`${u} can only be used on routes that contain a unique "id"`),c.route.id}function Rv(){return Cr("useRouteId")}function Nv(){let u=E.useContext(Tr),i=Av("useRouteError"),c=Cr("useRouteError");return u!==void 0?u:i.errors?.[c]}function Ov(){let{router:u}=Tv("useNavigate"),i=Cr("useNavigate"),c=E.useRef(!1);return zm(()=>{c.current=!0}),E.useCallback(async(f,h={})=>{jt(c.current,Om),c.current&&(typeof f=="number"?u.navigate(f):await u.navigate(f,{fromRouteId:i,...h}))},[u,i])}var um={};function Dm(u,i,c){!i&&!um[u]&&(um[u]=!0,jt(!1,c))}E.memo(zv);function zv({routes:u,future:i,state:c,unstable_onError:r}){return Mm(u,void 0,c,r,i)}function yr(u){Oe(!1,"A is only ever to be used as the child of element, never rendered directly. Please wrap your in a .")}function Mv({basename:u="/",children:i=null,location:c,navigationType:r="POP",navigator:f,static:h=!1}){Oe(!Pa(),"You cannot render a inside another . You should never have more than one in your app.");let m=u.replace(/^\/*/,"/"),b=E.useMemo(()=>({basename:m,navigator:f,static:h,future:{}}),[m,f,h]);typeof c=="string"&&(c=Kl(c));let{pathname:y="/",search:v="",hash:T="",state:S=null,key:C="default"}=c,z=E.useMemo(()=>{let L=on(y,m);return L==null?null:{location:{pathname:L,search:v,hash:T,state:S,key:C},navigationType:r}},[m,y,v,T,S,C,r]);return jt(z!=null,` is not able to match the URL "${y}${v}${T}" because it does not start with the basename, so the won't render anything.`),z==null?null:E.createElement(Yt.Provider,{value:b},E.createElement(Fa.Provider,{children:i,value:z}))}function Dv({children:u,location:i}){return gv(vr(u),i)}function vr(u,i=[]){let c=[];return E.Children.forEach(u,(r,f)=>{if(!E.isValidElement(r))return;let h=[...i,f];if(r.type===E.Fragment){c.push.apply(c,vr(r.props.children,h));return}Oe(r.type===yr,`[${typeof r.type=="string"?r.type:r.type.name}] is not a component. All component children of must be a or `),Oe(!r.props.index||!r.props.children,"An index route cannot have child routes.");let m={id:r.props.id||h.join("-"),caseSensitive:r.props.caseSensitive,element:r.props.element,Component:r.props.Component,index:r.props.index,path:r.props.path,middleware:r.props.middleware,loader:r.props.loader,action:r.props.action,hydrateFallbackElement:r.props.hydrateFallbackElement,HydrateFallback:r.props.HydrateFallback,errorElement:r.props.errorElement,ErrorBoundary:r.props.ErrorBoundary,hasErrorBoundary:r.props.hasErrorBoundary===!0||r.props.ErrorBoundary!=null||r.props.errorElement!=null,shouldRevalidate:r.props.shouldRevalidate,handle:r.props.handle,lazy:r.props.lazy};r.props.children&&(m.children=vr(r.props.children,h)),c.push(m)}),c}var Tu="get",Au="application/x-www-form-urlencoded";function ju(u){return u!=null&&typeof u.tagName=="string"}function jv(u){return ju(u)&&u.tagName.toLowerCase()==="button"}function wv(u){return ju(u)&&u.tagName.toLowerCase()==="form"}function Uv(u){return ju(u)&&u.tagName.toLowerCase()==="input"}function Bv(u){return!!(u.metaKey||u.altKey||u.ctrlKey||u.shiftKey)}function Lv(u,i){return u.button===0&&(!i||i==="_self")&&!Bv(u)}var bu=null;function Hv(){if(bu===null)try{new FormData(document.createElement("form"),0),bu=!1}catch{bu=!0}return bu}var qv=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function rr(u){return u!=null&&!qv.has(u)?(jt(!1,`"${u}" is not a valid \`encType\` for \`\`/\`\` and will default to "${Au}"`),null):u}function Yv(u,i){let c,r,f,h,m;if(wv(u)){let b=u.getAttribute("action");r=b?on(b,i):null,c=u.getAttribute("method")||Tu,f=rr(u.getAttribute("enctype"))||Au,h=new FormData(u)}else if(jv(u)||Uv(u)&&(u.type==="submit"||u.type==="image")){let b=u.form;if(b==null)throw new Error('Cannot submit a
-
+
{logs.length === 0 ? (

No logs yet.

) : ( diff --git a/webui/src/components/SessionSnapshot.jsx b/webui/src/components/SessionSnapshot.jsx index 417e1e96..02d1adeb 100644 --- a/webui/src/components/SessionSnapshot.jsx +++ b/webui/src/components/SessionSnapshot.jsx @@ -7,7 +7,7 @@ export default function SessionSnapshot() { return (

Session snapshot

-
{payload}
+
{payload}
); } From fb0410359325813573d66f12425a768b3ad5e5f3 Mon Sep 17 00:00:00 2001 From: legop3 Date: Mon, 17 Nov 2025 14:29:15 -0500 Subject: [PATCH 60/61] admin --- .../{index-we2n3Zya.js => index-BvgUoEqO.js} | 16 +++--- server/public/assets/index-C9u9txZ3.css | 1 - server/public/assets/index-DwQ38q3M.css | 1 + server/public/index.html | 4 +- server/src/services/assignmentService.js | 7 ++- server/src/services/roverManager.js | 23 ++++++++ server/src/services/sessionService.js | 9 ++++ webui/src/App.jsx | 2 + webui/src/components/ModeGateOverlay.jsx | 52 +++++++++++++++++++ 9 files changed, 102 insertions(+), 13 deletions(-) rename server/public/assets/{index-we2n3Zya.js => index-BvgUoEqO.js} (67%) delete mode 100644 server/public/assets/index-C9u9txZ3.css create mode 100644 server/public/assets/index-DwQ38q3M.css create mode 100644 webui/src/components/ModeGateOverlay.jsx diff --git a/server/public/assets/index-we2n3Zya.js b/server/public/assets/index-BvgUoEqO.js similarity index 67% rename from server/public/assets/index-we2n3Zya.js rename to server/public/assets/index-BvgUoEqO.js index e2cd9029..5fef3562 100644 --- a/server/public/assets/index-we2n3Zya.js +++ b/server/public/assets/index-BvgUoEqO.js @@ -1,11 +1,11 @@ -(function(){const i=document.createElement("link").relList;if(i&&i.supports&&i.supports("modulepreload"))return;for(const f of document.querySelectorAll('link[rel="modulepreload"]'))r(f);new MutationObserver(f=>{for(const h of f)if(h.type==="childList")for(const m of h.addedNodes)m.tagName==="LINK"&&m.rel==="modulepreload"&&r(m)}).observe(document,{childList:!0,subtree:!0});function c(f){const h={};return f.integrity&&(h.integrity=f.integrity),f.referrerPolicy&&(h.referrerPolicy=f.referrerPolicy),f.crossOrigin==="use-credentials"?h.credentials="include":f.crossOrigin==="anonymous"?h.credentials="omit":h.credentials="same-origin",h}function r(f){if(f.ep)return;f.ep=!0;const h=c(f);fetch(f.href,h)}})();var nr={exports:{}},Ga={};var Zd;function M0(){if(Zd)return Ga;Zd=1;var u=Symbol.for("react.transitional.element"),i=Symbol.for("react.fragment");function c(r,f,h){var m=null;if(h!==void 0&&(m=""+h),f.key!==void 0&&(m=""+f.key),"key"in f){h={};for(var b in f)b!=="key"&&(h[b]=f[b])}else h=f;return f=h.ref,{$$typeof:u,type:r,key:m,ref:f!==void 0?f:null,props:h}}return Ga.Fragment=i,Ga.jsx=c,Ga.jsxs=c,Ga}var Kd;function D0(){return Kd||(Kd=1,nr.exports=M0()),nr.exports}var p=D0(),lr={exports:{}},I={};var Jd;function j0(){if(Jd)return I;Jd=1;var u=Symbol.for("react.transitional.element"),i=Symbol.for("react.portal"),c=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),f=Symbol.for("react.profiler"),h=Symbol.for("react.consumer"),m=Symbol.for("react.context"),b=Symbol.for("react.forward_ref"),y=Symbol.for("react.suspense"),v=Symbol.for("react.memo"),T=Symbol.for("react.lazy"),S=Symbol.for("react.activity"),C=Symbol.iterator;function z(_){return _===null||typeof _!="object"?null:(_=C&&_[C]||_["@@iterator"],typeof _=="function"?_:null)}var L={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},X=Object.assign,q={};function H(_,B,V){this.props=_,this.context=B,this.refs=q,this.updater=V||L}H.prototype.isReactComponent={},H.prototype.setState=function(_,B){if(typeof _!="object"&&typeof _!="function"&&_!=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,_,B,"setState")},H.prototype.forceUpdate=function(_){this.updater.enqueueForceUpdate(this,_,"forceUpdate")};function Y(){}Y.prototype=H.prototype;function k(_,B,V){this.props=_,this.context=B,this.refs=q,this.updater=V||L}var F=k.prototype=new Y;F.constructor=k,X(F,H.prototype),F.isPureReactComponent=!0;var ye=Array.isArray;function Re(){}var $={H:null,A:null,T:null,S:null},Te=Object.prototype.hasOwnProperty;function xe(_,B,V){var Z=V.ref;return{$$typeof:u,type:_,key:B,ref:Z!==void 0?Z:null,props:V}}function Ue(_,B){return xe(_.type,B,_.props)}function Xe(_){return typeof _=="object"&&_!==null&&_.$$typeof===u}function We(_){var B={"=":"=0",":":"=2"};return"$"+_.replace(/[=:]/g,function(V){return B[V]})}var Hn=/\/+/g;function Xt(_,B){return typeof _=="object"&&_!==null&&_.key!=null?We(""+_.key):B.toString(36)}function Nt(_){switch(_.status){case"fulfilled":return _.value;case"rejected":throw _.reason;default:switch(typeof _.status=="string"?_.then(Re,Re):(_.status="pending",_.then(function(B){_.status==="pending"&&(_.status="fulfilled",_.value=B)},function(B){_.status==="pending"&&(_.status="rejected",_.reason=B)})),_.status){case"fulfilled":return _.value;case"rejected":throw _.reason}}throw _}function j(_,B,V,Z,ee){var le=typeof _;(le==="undefined"||le==="boolean")&&(_=null);var de=!1;if(_===null)de=!0;else switch(le){case"bigint":case"string":case"number":de=!0;break;case"object":switch(_.$$typeof){case u:case i:de=!0;break;case T:return de=_._init,j(de(_._payload),B,V,Z,ee)}}if(de)return ee=ee(_),de=Z===""?"."+Xt(_,0):Z,ye(ee)?(V="",de!=null&&(V=de.replace(Hn,"$&/")+"/"),j(ee,B,V,"",function(Wl){return Wl})):ee!=null&&(Xe(ee)&&(ee=Ue(ee,V+(ee.key==null||_&&_.key===ee.key?"":(""+ee.key).replace(Hn,"$&/")+"/")+de)),B.push(ee)),1;de=0;var Pe=Z===""?".":Z+":";if(ye(_))for(var De=0;De<_.length;De++)Z=_[De],le=Pe+Xt(Z,De),de+=j(Z,B,V,le,ee);else if(De=z(_),typeof De=="function")for(_=De.call(_),De=0;!(Z=_.next()).done;)Z=Z.value,le=Pe+Xt(Z,De++),de+=j(Z,B,V,le,ee);else if(le==="object"){if(typeof _.then=="function")return j(Nt(_),B,V,Z,ee);throw B=String(_),Error("Objects are not valid as a React child (found: "+(B==="[object Object]"?"object with keys {"+Object.keys(_).join(", ")+"}":B)+"). If you meant to render a collection of children, use an array instead.")}return de}function G(_,B,V){if(_==null)return _;var Z=[],ee=0;return j(_,Z,"","",function(le){return B.call(V,le,ee++)}),Z}function P(_){if(_._status===-1){var B=_._result;B=B(),B.then(function(V){(_._status===0||_._status===-1)&&(_._status=1,_._result=V)},function(V){(_._status===0||_._status===-1)&&(_._status=2,_._result=V)}),_._status===-1&&(_._status=0,_._result=B)}if(_._status===1)return _._result.default;throw _._result}var ve=typeof reportError=="function"?reportError:function(_){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var B=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof _=="object"&&_!==null&&typeof _.message=="string"?String(_.message):String(_),error:_});if(!window.dispatchEvent(B))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",_);return}console.error(_)},_e={map:G,forEach:function(_,B,V){G(_,function(){B.apply(this,arguments)},V)},count:function(_){var B=0;return G(_,function(){B++}),B},toArray:function(_){return G(_,function(B){return B})||[]},only:function(_){if(!Xe(_))throw Error("React.Children.only expected to receive a single React element child.");return _}};return I.Activity=S,I.Children=_e,I.Component=H,I.Fragment=c,I.Profiler=f,I.PureComponent=k,I.StrictMode=r,I.Suspense=y,I.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=$,I.__COMPILER_RUNTIME={__proto__:null,c:function(_){return $.H.useMemoCache(_)}},I.cache=function(_){return function(){return _.apply(null,arguments)}},I.cacheSignal=function(){return null},I.cloneElement=function(_,B,V){if(_==null)throw Error("The argument must be a React element, but you passed "+_+".");var Z=X({},_.props),ee=_.key;if(B!=null)for(le in B.key!==void 0&&(ee=""+B.key),B)!Te.call(B,le)||le==="key"||le==="__self"||le==="__source"||le==="ref"&&B.ref===void 0||(Z[le]=B[le]);var le=arguments.length-2;if(le===1)Z.children=V;else if(1>>1,_e=j[ve];if(0>>1;ve<_;){var B=2*(ve+1)-1,V=j[B],Z=B+1,ee=j[Z];if(0>f(V,P))Z<_e&&0>f(ee,V)?(j[ve]=ee,j[Z]=P,ve=Z):(j[ve]=V,j[B]=P,ve=B);else if(Z<_e&&0>f(ee,P))j[ve]=ee,j[Z]=P,ve=Z;else break e}}return G}function f(j,G){var P=j.sortIndex-G.sortIndex;return P!==0?P:j.id-G.id}if(u.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var h=performance;u.unstable_now=function(){return h.now()}}else{var m=Date,b=m.now();u.unstable_now=function(){return m.now()-b}}var y=[],v=[],T=1,S=null,C=3,z=!1,L=!1,X=!1,q=!1,H=typeof setTimeout=="function"?setTimeout:null,Y=typeof clearTimeout=="function"?clearTimeout:null,k=typeof setImmediate<"u"?setImmediate:null;function F(j){for(var G=c(v);G!==null;){if(G.callback===null)r(v);else if(G.startTime<=j)r(v),G.sortIndex=G.expirationTime,i(y,G);else break;G=c(v)}}function ye(j){if(X=!1,F(j),!L)if(c(y)!==null)L=!0,Re||(Re=!0,We());else{var G=c(v);G!==null&&Nt(ye,G.startTime-j)}}var Re=!1,$=-1,Te=5,xe=-1;function Ue(){return q?!0:!(u.unstable_now()-xej&&Ue());){var ve=S.callback;if(typeof ve=="function"){S.callback=null,C=S.priorityLevel;var _e=ve(S.expirationTime<=j);if(j=u.unstable_now(),typeof _e=="function"){S.callback=_e,F(j),G=!0;break t}S===c(y)&&r(y),F(j)}else r(y);S=c(y)}if(S!==null)G=!0;else{var _=c(v);_!==null&&Nt(ye,_.startTime-j),G=!1}}break e}finally{S=null,C=P,z=!1}G=void 0}}finally{G?We():Re=!1}}}var We;if(typeof k=="function")We=function(){k(Xe)};else if(typeof MessageChannel<"u"){var Hn=new MessageChannel,Xt=Hn.port2;Hn.port1.onmessage=Xe,We=function(){Xt.postMessage(null)}}else We=function(){H(Xe,0)};function Nt(j,G){$=H(function(){j(u.unstable_now())},G)}u.unstable_IdlePriority=5,u.unstable_ImmediatePriority=1,u.unstable_LowPriority=4,u.unstable_NormalPriority=3,u.unstable_Profiling=null,u.unstable_UserBlockingPriority=2,u.unstable_cancelCallback=function(j){j.callback=null},u.unstable_forceFrameRate=function(j){0>j||125ve?(j.sortIndex=P,i(v,j),c(y)===null&&j===c(v)&&(X?(Y($),$=-1):X=!0,Nt(ye,P-ve))):(j.sortIndex=_e,i(y,j),L||z||(L=!0,Re||(Re=!0,We()))),j},u.unstable_shouldYield=Ue,u.unstable_wrapCallback=function(j){var G=C;return function(){var P=C;C=G;try{return j.apply(this,arguments)}finally{C=P}}}})(ur)),ur}var Fd;function U0(){return Fd||(Fd=1,ir.exports=w0()),ir.exports}var sr={exports:{}},Fe={};var Pd;function B0(){if(Pd)return Fe;Pd=1;var u=Mu();function i(y){var v="https://react.dev/errors/"+y;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(u)}catch(i){console.error(i)}}return u(),sr.exports=B0(),sr.exports}var em;function H0(){if(em)return Va;em=1;var u=U0(),i=Mu(),c=L0();function r(e){var t="https://react.dev/errors/"+e;if(1_e||(e.current=ve[_e],ve[_e]=null,_e--)}function V(e,t){_e++,ve[_e]=e.current,e.current=t}var Z=_(null),ee=_(null),le=_(null),de=_(null);function Pe(e,t){switch(V(le,t),V(ee,e),V(Z,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?pd(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=pd(t),e=yd(t,e);else switch(e){case"svg":e=1;break;case"math":e=2;break;default:e=0}}B(Z),V(Z,e)}function De(){B(Z),B(ee),B(le)}function Wl(e){e.memoizedState!==null&&V(de,e);var t=Z.current,n=yd(t,e.type);t!==n&&(V(ee,e),V(Z,n))}function ti(e){ee.current===e&&(B(Z),B(ee)),de.current===e&&(B(de),qa._currentValue=P)}var Hu,Gr;function qn(e){if(Hu===void 0)try{throw Error()}catch(n){var t=n.stack.trim().match(/\n( *(at )?)/);Hu=t&&t[1]||"",Gr=-1{for(const d of f)if(d.type==="childList")for(const m of d.addedNodes)m.tagName==="LINK"&&m.rel==="modulepreload"&&r(m)}).observe(document,{childList:!0,subtree:!0});function c(f){const d={};return f.integrity&&(d.integrity=f.integrity),f.referrerPolicy&&(d.referrerPolicy=f.referrerPolicy),f.crossOrigin==="use-credentials"?d.credentials="include":f.crossOrigin==="anonymous"?d.credentials="omit":d.credentials="same-origin",d}function r(f){if(f.ep)return;f.ep=!0;const d=c(f);fetch(f.href,d)}})();var lr={exports:{}},Ga={};var Zh;function M0(){if(Zh)return Ga;Zh=1;var u=Symbol.for("react.transitional.element"),i=Symbol.for("react.fragment");function c(r,f,d){var m=null;if(d!==void 0&&(m=""+d),f.key!==void 0&&(m=""+f.key),"key"in f){d={};for(var b in f)b!=="key"&&(d[b]=f[b])}else d=f;return f=d.ref,{$$typeof:u,type:r,key:m,ref:f!==void 0?f:null,props:d}}return Ga.Fragment=i,Ga.jsx=c,Ga.jsxs=c,Ga}var Kh;function D0(){return Kh||(Kh=1,lr.exports=M0()),lr.exports}var p=D0(),ar={exports:{}},I={};var Jh;function j0(){if(Jh)return I;Jh=1;var u=Symbol.for("react.transitional.element"),i=Symbol.for("react.portal"),c=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),f=Symbol.for("react.profiler"),d=Symbol.for("react.consumer"),m=Symbol.for("react.context"),b=Symbol.for("react.forward_ref"),y=Symbol.for("react.suspense"),v=Symbol.for("react.memo"),T=Symbol.for("react.lazy"),S=Symbol.for("react.activity"),C=Symbol.iterator;function z(_){return _===null||typeof _!="object"?null:(_=C&&_[C]||_["@@iterator"],typeof _=="function"?_:null)}var L={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},X=Object.assign,q={};function H(_,B,V){this.props=_,this.context=B,this.refs=q,this.updater=V||L}H.prototype.isReactComponent={},H.prototype.setState=function(_,B){if(typeof _!="object"&&typeof _!="function"&&_!=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,_,B,"setState")},H.prototype.forceUpdate=function(_){this.updater.enqueueForceUpdate(this,_,"forceUpdate")};function Y(){}Y.prototype=H.prototype;function k(_,B,V){this.props=_,this.context=B,this.refs=q,this.updater=V||L}var F=k.prototype=new Y;F.constructor=k,X(F,H.prototype),F.isPureReactComponent=!0;var ye=Array.isArray;function Ne(){}var $={H:null,A:null,T:null,S:null},Te=Object.prototype.hasOwnProperty;function xe(_,B,V){var Z=V.ref;return{$$typeof:u,type:_,key:B,ref:Z!==void 0?Z:null,props:V}}function Ue(_,B){return xe(_.type,B,_.props)}function Xe(_){return typeof _=="object"&&_!==null&&_.$$typeof===u}function We(_){var B={"=":"=0",":":"=2"};return"$"+_.replace(/[=:]/g,function(V){return B[V]})}var Hn=/\/+/g;function Xt(_,B){return typeof _=="object"&&_!==null&&_.key!=null?We(""+_.key):B.toString(36)}function Rt(_){switch(_.status){case"fulfilled":return _.value;case"rejected":throw _.reason;default:switch(typeof _.status=="string"?_.then(Ne,Ne):(_.status="pending",_.then(function(B){_.status==="pending"&&(_.status="fulfilled",_.value=B)},function(B){_.status==="pending"&&(_.status="rejected",_.reason=B)})),_.status){case"fulfilled":return _.value;case"rejected":throw _.reason}}throw _}function j(_,B,V,Z,ee){var le=typeof _;(le==="undefined"||le==="boolean")&&(_=null);var he=!1;if(_===null)he=!0;else switch(le){case"bigint":case"string":case"number":he=!0;break;case"object":switch(_.$$typeof){case u:case i:he=!0;break;case T:return he=_._init,j(he(_._payload),B,V,Z,ee)}}if(he)return ee=ee(_),he=Z===""?"."+Xt(_,0):Z,ye(ee)?(V="",he!=null&&(V=he.replace(Hn,"$&/")+"/"),j(ee,B,V,"",function(Wl){return Wl})):ee!=null&&(Xe(ee)&&(ee=Ue(ee,V+(ee.key==null||_&&_.key===ee.key?"":(""+ee.key).replace(Hn,"$&/")+"/")+he)),B.push(ee)),1;he=0;var Pe=Z===""?".":Z+":";if(ye(_))for(var De=0;De<_.length;De++)Z=_[De],le=Pe+Xt(Z,De),he+=j(Z,B,V,le,ee);else if(De=z(_),typeof De=="function")for(_=De.call(_),De=0;!(Z=_.next()).done;)Z=Z.value,le=Pe+Xt(Z,De++),he+=j(Z,B,V,le,ee);else if(le==="object"){if(typeof _.then=="function")return j(Rt(_),B,V,Z,ee);throw B=String(_),Error("Objects are not valid as a React child (found: "+(B==="[object Object]"?"object with keys {"+Object.keys(_).join(", ")+"}":B)+"). If you meant to render a collection of children, use an array instead.")}return he}function G(_,B,V){if(_==null)return _;var Z=[],ee=0;return j(_,Z,"","",function(le){return B.call(V,le,ee++)}),Z}function P(_){if(_._status===-1){var B=_._result;B=B(),B.then(function(V){(_._status===0||_._status===-1)&&(_._status=1,_._result=V)},function(V){(_._status===0||_._status===-1)&&(_._status=2,_._result=V)}),_._status===-1&&(_._status=0,_._result=B)}if(_._status===1)return _._result.default;throw _._result}var ve=typeof reportError=="function"?reportError:function(_){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var B=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof _=="object"&&_!==null&&typeof _.message=="string"?String(_.message):String(_),error:_});if(!window.dispatchEvent(B))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",_);return}console.error(_)},_e={map:G,forEach:function(_,B,V){G(_,function(){B.apply(this,arguments)},V)},count:function(_){var B=0;return G(_,function(){B++}),B},toArray:function(_){return G(_,function(B){return B})||[]},only:function(_){if(!Xe(_))throw Error("React.Children.only expected to receive a single React element child.");return _}};return I.Activity=S,I.Children=_e,I.Component=H,I.Fragment=c,I.Profiler=f,I.PureComponent=k,I.StrictMode=r,I.Suspense=y,I.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=$,I.__COMPILER_RUNTIME={__proto__:null,c:function(_){return $.H.useMemoCache(_)}},I.cache=function(_){return function(){return _.apply(null,arguments)}},I.cacheSignal=function(){return null},I.cloneElement=function(_,B,V){if(_==null)throw Error("The argument must be a React element, but you passed "+_+".");var Z=X({},_.props),ee=_.key;if(B!=null)for(le in B.key!==void 0&&(ee=""+B.key),B)!Te.call(B,le)||le==="key"||le==="__self"||le==="__source"||le==="ref"&&B.ref===void 0||(Z[le]=B[le]);var le=arguments.length-2;if(le===1)Z.children=V;else if(1>>1,_e=j[ve];if(0>>1;ve<_;){var B=2*(ve+1)-1,V=j[B],Z=B+1,ee=j[Z];if(0>f(V,P))Z<_e&&0>f(ee,V)?(j[ve]=ee,j[Z]=P,ve=Z):(j[ve]=V,j[B]=P,ve=B);else if(Z<_e&&0>f(ee,P))j[ve]=ee,j[Z]=P,ve=Z;else break e}}return G}function f(j,G){var P=j.sortIndex-G.sortIndex;return P!==0?P:j.id-G.id}if(u.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var d=performance;u.unstable_now=function(){return d.now()}}else{var m=Date,b=m.now();u.unstable_now=function(){return m.now()-b}}var y=[],v=[],T=1,S=null,C=3,z=!1,L=!1,X=!1,q=!1,H=typeof setTimeout=="function"?setTimeout:null,Y=typeof clearTimeout=="function"?clearTimeout:null,k=typeof setImmediate<"u"?setImmediate:null;function F(j){for(var G=c(v);G!==null;){if(G.callback===null)r(v);else if(G.startTime<=j)r(v),G.sortIndex=G.expirationTime,i(y,G);else break;G=c(v)}}function ye(j){if(X=!1,F(j),!L)if(c(y)!==null)L=!0,Ne||(Ne=!0,We());else{var G=c(v);G!==null&&Rt(ye,G.startTime-j)}}var Ne=!1,$=-1,Te=5,xe=-1;function Ue(){return q?!0:!(u.unstable_now()-xej&&Ue());){var ve=S.callback;if(typeof ve=="function"){S.callback=null,C=S.priorityLevel;var _e=ve(S.expirationTime<=j);if(j=u.unstable_now(),typeof _e=="function"){S.callback=_e,F(j),G=!0;break t}S===c(y)&&r(y),F(j)}else r(y);S=c(y)}if(S!==null)G=!0;else{var _=c(v);_!==null&&Rt(ye,_.startTime-j),G=!1}}break e}finally{S=null,C=P,z=!1}G=void 0}}finally{G?We():Ne=!1}}}var We;if(typeof k=="function")We=function(){k(Xe)};else if(typeof MessageChannel<"u"){var Hn=new MessageChannel,Xt=Hn.port2;Hn.port1.onmessage=Xe,We=function(){Xt.postMessage(null)}}else We=function(){H(Xe,0)};function Rt(j,G){$=H(function(){j(u.unstable_now())},G)}u.unstable_IdlePriority=5,u.unstable_ImmediatePriority=1,u.unstable_LowPriority=4,u.unstable_NormalPriority=3,u.unstable_Profiling=null,u.unstable_UserBlockingPriority=2,u.unstable_cancelCallback=function(j){j.callback=null},u.unstable_forceFrameRate=function(j){0>j||125ve?(j.sortIndex=P,i(v,j),c(y)===null&&j===c(v)&&(X?(Y($),$=-1):X=!0,Rt(ye,P-ve))):(j.sortIndex=_e,i(y,j),L||z||(L=!0,Ne||(Ne=!0,We()))),j},u.unstable_shouldYield=Ue,u.unstable_wrapCallback=function(j){var G=C;return function(){var P=C;C=G;try{return j.apply(this,arguments)}finally{C=P}}}})(sr)),sr}var Fh;function U0(){return Fh||(Fh=1,ur.exports=w0()),ur.exports}var cr={exports:{}},Fe={};var Ph;function B0(){if(Ph)return Fe;Ph=1;var u=Mu();function i(y){var v="https://react.dev/errors/"+y;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(u)}catch(i){console.error(i)}}return u(),cr.exports=B0(),cr.exports}var em;function H0(){if(em)return Va;em=1;var u=U0(),i=Mu(),c=L0();function r(e){var t="https://react.dev/errors/"+e;if(1_e||(e.current=ve[_e],ve[_e]=null,_e--)}function V(e,t){_e++,ve[_e]=e.current,e.current=t}var Z=_(null),ee=_(null),le=_(null),he=_(null);function Pe(e,t){switch(V(le,t),V(ee,e),V(Z,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?ph(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=ph(t),e=yh(t,e);else switch(e){case"svg":e=1;break;case"math":e=2;break;default:e=0}}B(Z),V(Z,e)}function De(){B(Z),B(ee),B(le)}function Wl(e){e.memoizedState!==null&&V(he,e);var t=Z.current,n=yh(t,e.type);t!==n&&(V(ee,e),V(Z,n))}function ti(e){ee.current===e&&(B(Z),B(ee)),he.current===e&&(B(he),qa._currentValue=P)}var qu,Gr;function qn(e){if(qu===void 0)try{throw Error()}catch(n){var t=n.stack.trim().match(/\n( *(at )?)/);qu=t&&t[1]||"",Gr=-1)":-1a||g[l]!==N[a]){var D=` -`+g[l].replace(" at new "," at ");return e.displayName&&D.includes("")&&(D=D.replace("",e.displayName)),D}while(1<=l&&0<=a);break}}}finally{qu=!1,Error.prepareStackTrace=n}return(n=e?e.displayName||e.name:"")?qn(n):""}function cp(e,t){switch(e.tag){case 26:case 27:case 5:return qn(e.type);case 16:return qn("Lazy");case 13:return e.child!==t&&t!==null?qn("Suspense Fallback"):qn("Suspense");case 19:return qn("SuspenseList");case 0:case 15:return Yu(e.type,!1);case 11:return Yu(e.type.render,!1);case 1:return Yu(e.type,!0);case 31:return qn("Activity");default:return""}}function Vr(e){try{var t="",n=null;do t+=cp(e,n),n=e,e=e.return;while(e);return t}catch(l){return` +`+qu+e+Gr}var Yu=!1;function ku(e,t){if(!e||Yu)return"";Yu=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var l={DetermineComponentFrameRoot:function(){try{if(t){var U=function(){throw Error()};if(Object.defineProperty(U.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(U,[])}catch(M){var O=M}Reflect.construct(e,[],U)}else{try{U.call()}catch(M){O=M}e.call(U.prototype)}}else{try{throw Error()}catch(M){O=M}(U=e())&&typeof U.catch=="function"&&U.catch(function(){})}}catch(M){if(M&&O&&typeof M.stack=="string")return[M.stack,O.stack]}return[null,null]}};l.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var a=Object.getOwnPropertyDescriptor(l.DetermineComponentFrameRoot,"name");a&&a.configurable&&Object.defineProperty(l.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"});var s=l.DetermineComponentFrameRoot(),o=s[0],h=s[1];if(o&&h){var g=o.split(` +`),R=h.split(` +`);for(a=l=0;la||g[l]!==R[a]){var D=` +`+g[l].replace(" at new "," at ");return e.displayName&&D.includes("")&&(D=D.replace("",e.displayName)),D}while(1<=l&&0<=a);break}}}finally{Yu=!1,Error.prepareStackTrace=n}return(n=e?e.displayName||e.name:"")?qn(n):""}function cp(e,t){switch(e.tag){case 26:case 27:case 5:return qn(e.type);case 16:return qn("Lazy");case 13:return e.child!==t&&t!==null?qn("Suspense Fallback"):qn("Suspense");case 19:return qn("SuspenseList");case 0:case 15:return ku(e.type,!1);case 11:return ku(e.type.render,!1);case 1:return ku(e.type,!0);case 31:return qn("Activity");default:return""}}function Vr(e){try{var t="",n=null;do t+=cp(e,n),n=e,e=e.return;while(e);return t}catch(l){return` Error generating stack: `+l.message+` -`+l.stack}}var ku=Object.prototype.hasOwnProperty,Xu=u.unstable_scheduleCallback,Gu=u.unstable_cancelCallback,rp=u.unstable_shouldYield,op=u.unstable_requestPaint,st=u.unstable_now,fp=u.unstable_getCurrentPriorityLevel,Qr=u.unstable_ImmediatePriority,Zr=u.unstable_UserBlockingPriority,ni=u.unstable_NormalPriority,hp=u.unstable_LowPriority,Kr=u.unstable_IdlePriority,dp=u.log,mp=u.unstable_setDisableYieldValue,Fl=null,ct=null;function hn(e){if(typeof dp=="function"&&mp(e),ct&&typeof ct.setStrictMode=="function")try{ct.setStrictMode(Fl,e)}catch{}}var rt=Math.clz32?Math.clz32:vp,pp=Math.log,yp=Math.LN2;function vp(e){return e>>>=0,e===0?32:31-(pp(e)/yp|0)|0}var li=256,ai=262144,ii=4194304;function Yn(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function ui(e,t,n){var l=e.pendingLanes;if(l===0)return 0;var a=0,s=e.suspendedLanes,o=e.pingedLanes;e=e.warmLanes;var d=l&134217727;return d!==0?(l=d&~s,l!==0?a=Yn(l):(o&=d,o!==0?a=Yn(o):n||(n=d&~e,n!==0&&(a=Yn(n))))):(d=l&~s,d!==0?a=Yn(d):o!==0?a=Yn(o):n||(n=l&~e,n!==0&&(a=Yn(n)))),a===0?0:t!==0&&t!==a&&(t&s)===0&&(s=a&-a,n=t&-t,s>=n||s===32&&(n&4194048)!==0)?t:a}function Pl(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function gp(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Jr(){var e=ii;return ii<<=1,(ii&62914560)===0&&(ii=4194304),e}function Vu(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function Il(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function bp(e,t,n,l,a,s){var o=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var d=e.entanglements,g=e.expirationTimes,N=e.hiddenUpdates;for(n=o&~n;0"u")return null;try{return e.activeElement||e.body}catch{return e.body}}var Ap=/[\n"\\]/g;function gt(e){return e.replace(Ap,function(t){return"\\"+t.charCodeAt(0).toString(16)+" "})}function Wu(e,t,n,l,a,s,o,d){e.name="",o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"?e.type=o:e.removeAttribute("type"),t!=null?o==="number"?(t===0&&e.value===""||e.value!=t)&&(e.value=""+vt(t)):e.value!==""+vt(t)&&(e.value=""+vt(t)):o!=="submit"&&o!=="reset"||e.removeAttribute("value"),t!=null?Fu(e,o,vt(t)):n!=null?Fu(e,o,vt(n)):l!=null&&e.removeAttribute("value"),a==null&&s!=null&&(e.defaultChecked=!!s),a!=null&&(e.checked=a&&typeof a!="function"&&typeof a!="symbol"),d!=null&&typeof d!="function"&&typeof d!="symbol"&&typeof d!="boolean"?e.name=""+vt(d):e.removeAttribute("name")}function so(e,t,n,l,a,s,o,d){if(s!=null&&typeof s!="function"&&typeof s!="symbol"&&typeof s!="boolean"&&(e.type=s),t!=null||n!=null){if(!(s!=="submit"&&s!=="reset"||t!=null)){$u(e);return}n=n!=null?""+vt(n):"",t=t!=null?""+vt(t):n,d||t===e.value||(e.value=t),e.defaultValue=t}l=l??a,l=typeof l!="function"&&typeof l!="symbol"&&!!l,e.checked=d?e.checked:!!l,e.defaultChecked=!!l,o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"&&(e.name=o),$u(e)}function Fu(e,t,n){t==="number"&&ri(e.ownerDocument)===e||e.defaultValue===""+n||(e.defaultValue=""+n)}function dl(e,t,n,l){if(e=e.options,t){t={};for(var a=0;a"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),ns=!1;if(Qt)try{var la={};Object.defineProperty(la,"passive",{get:function(){ns=!0}}),window.addEventListener("test",la,la),window.removeEventListener("test",la,la)}catch{ns=!1}var mn=null,ls=null,fi=null;function po(){if(fi)return fi;var e,t=ls,n=t.length,l,a="value"in mn?mn.value:mn.textContent,s=a.length;for(e=0;e=ua),xo=" ",_o=!1;function Eo(e,t){switch(e){case"keyup":return Ip.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function To(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var vl=!1;function ty(e,t){switch(e){case"compositionend":return To(t);case"keypress":return t.which!==32?null:(_o=!0,xo);case"textInput":return e=t.data,e===xo&&_o?null:e;default:return null}}function ny(e,t){if(vl)return e==="compositionend"||!cs&&Eo(e,t)?(e=po(),fi=ls=mn=null,vl=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=l}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=Do(n)}}function wo(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?wo(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Uo(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=ri(e.document);t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=ri(e.document)}return t}function fs(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}var oy=Qt&&"documentMode"in document&&11>=document.documentMode,gl=null,hs=null,oa=null,ds=!1;function Bo(e,t,n){var l=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;ds||gl==null||gl!==ri(l)||(l=gl,"selectionStart"in l&&fs(l)?l={start:l.selectionStart,end:l.selectionEnd}:(l=(l.ownerDocument&&l.ownerDocument.defaultView||window).getSelection(),l={anchorNode:l.anchorNode,anchorOffset:l.anchorOffset,focusNode:l.focusNode,focusOffset:l.focusOffset}),oa&&ra(oa,l)||(oa=l,l=au(hs,"onSelect"),0>=o,a-=o,wt=1<<32-rt(t)+a|n<ne?(se=K,K=null):se=K.sibling;var fe=O(A,K,R[ne],w);if(fe===null){K===null&&(K=se);break}e&&K&&fe.alternate===null&&t(A,K),x=s(fe,x,ne),oe===null?J=fe:oe.sibling=fe,oe=fe,K=se}if(ne===R.length)return n(A,K),ce&&Kt(A,ne),J;if(K===null){for(;nene?(se=K,K=null):se=K.sibling;var Bn=O(A,K,fe.value,w);if(Bn===null){K===null&&(K=se);break}e&&K&&Bn.alternate===null&&t(A,K),x=s(Bn,x,ne),oe===null?J=Bn:oe.sibling=Bn,oe=Bn,K=se}if(fe.done)return n(A,K),ce&&Kt(A,ne),J;if(K===null){for(;!fe.done;ne++,fe=R.next())fe=U(A,fe.value,w),fe!==null&&(x=s(fe,x,ne),oe===null?J=fe:oe.sibling=fe,oe=fe);return ce&&Kt(A,ne),J}for(K=l(K);!fe.done;ne++,fe=R.next())fe=M(K,A,ne,fe.value,w),fe!==null&&(e&&fe.alternate!==null&&K.delete(fe.key===null?ne:fe.key),x=s(fe,x,ne),oe===null?J=fe:oe.sibling=fe,oe=fe);return e&&K.forEach(function(z0){return t(A,z0)}),ce&&Kt(A,ne),J}function Se(A,x,R,w){if(typeof R=="object"&&R!==null&&R.type===X&&R.key===null&&(R=R.props.children),typeof R=="object"&&R!==null){switch(R.$$typeof){case z:e:{for(var J=R.key;x!==null;){if(x.key===J){if(J=R.type,J===X){if(x.tag===7){n(A,x.sibling),w=a(x,R.props.children),w.return=A,A=w;break e}}else if(x.elementType===J||typeof J=="object"&&J!==null&&J.$$typeof===Te&&Fn(J)===x.type){n(A,x.sibling),w=a(x,R.props),ya(w,R),w.return=A,A=w;break e}n(A,x);break}else t(A,x);x=x.sibling}R.type===X?(w=Zn(R.props.children,A.mode,w,R.key),w.return=A,A=w):(w=xi(R.type,R.key,R.props,null,A.mode,w),ya(w,R),w.return=A,A=w)}return o(A);case L:e:{for(J=R.key;x!==null;){if(x.key===J)if(x.tag===4&&x.stateNode.containerInfo===R.containerInfo&&x.stateNode.implementation===R.implementation){n(A,x.sibling),w=a(x,R.children||[]),w.return=A,A=w;break e}else{n(A,x);break}else t(A,x);x=x.sibling}w=Ss(R,A.mode,w),w.return=A,A=w}return o(A);case Te:return R=Fn(R),Se(A,x,R,w)}if(Nt(R))return Q(A,x,R,w);if(We(R)){if(J=We(R),typeof J!="function")throw Error(r(150));return R=J.call(R),W(A,x,R,w)}if(typeof R.then=="function")return Se(A,x,Ni(R),w);if(R.$$typeof===k)return Se(A,x,Ti(A,R),w);Oi(A,R)}return typeof R=="string"&&R!==""||typeof R=="number"||typeof R=="bigint"?(R=""+R,x!==null&&x.tag===6?(n(A,x.sibling),w=a(x,R),w.return=A,A=w):(n(A,x),w=bs(R,A.mode,w),w.return=A,A=w),o(A)):n(A,x)}return function(A,x,R,w){try{pa=0;var J=Se(A,x,R,w);return Ol=null,J}catch(K){if(K===Nl||K===Ci)throw K;var oe=ft(29,K,null,A.mode);return oe.lanes=w,oe.return=A,oe}finally{}}}var In=uf(!0),sf=uf(!1),bn=!1;function Ds(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function js(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function Sn(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function xn(e,t,n){var l=e.updateQueue;if(l===null)return null;if(l=l.shared,(he&2)!==0){var a=l.pending;return a===null?t.next=t:(t.next=a.next,a.next=t),l.pending=t,t=Si(e),Go(e,null,n),t}return bi(e,l,t,n),Si(e)}function va(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194048)!==0)){var l=t.lanes;l&=e.pendingLanes,n|=l,t.lanes=n,Wr(e,n)}}function ws(e,t){var n=e.updateQueue,l=e.alternate;if(l!==null&&(l=l.updateQueue,n===l)){var a=null,s=null;if(n=n.firstBaseUpdate,n!==null){do{var o={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};s===null?a=s=o:s=s.next=o,n=n.next}while(n!==null);s===null?a=s=t:s=s.next=t}else a=s=t;n={baseState:l.baseState,firstBaseUpdate:a,lastBaseUpdate:s,shared:l.shared,callbacks:l.callbacks},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}var Us=!1;function ga(){if(Us){var e=Rl;if(e!==null)throw e}}function ba(e,t,n,l){Us=!1;var a=e.updateQueue;bn=!1;var s=a.firstBaseUpdate,o=a.lastBaseUpdate,d=a.shared.pending;if(d!==null){a.shared.pending=null;var g=d,N=g.next;g.next=null,o===null?s=N:o.next=N,o=g;var D=e.alternate;D!==null&&(D=D.updateQueue,d=D.lastBaseUpdate,d!==o&&(d===null?D.firstBaseUpdate=N:d.next=N,D.lastBaseUpdate=g))}if(s!==null){var U=a.baseState;o=0,D=N=g=null,d=s;do{var O=d.lane&-536870913,M=O!==d.lane;if(M?(ue&O)===O:(l&O)===O){O!==0&&O===Cl&&(Us=!0),D!==null&&(D=D.next={lane:0,tag:d.tag,payload:d.payload,callback:null,next:null});e:{var Q=e,W=d;O=t;var Se=n;switch(W.tag){case 1:if(Q=W.payload,typeof Q=="function"){U=Q.call(Se,U,O);break e}U=Q;break e;case 3:Q.flags=Q.flags&-65537|128;case 0:if(Q=W.payload,O=typeof Q=="function"?Q.call(Se,U,O):Q,O==null)break e;U=S({},U,O);break e;case 2:bn=!0}}O=d.callback,O!==null&&(e.flags|=64,M&&(e.flags|=8192),M=a.callbacks,M===null?a.callbacks=[O]:M.push(O))}else M={lane:O,tag:d.tag,payload:d.payload,callback:d.callback,next:null},D===null?(N=D=M,g=U):D=D.next=M,o|=O;if(d=d.next,d===null){if(d=a.shared.pending,d===null)break;M=d,d=M.next,M.next=null,a.lastBaseUpdate=M,a.shared.pending=null}}while(!0);D===null&&(g=U),a.baseState=g,a.firstBaseUpdate=N,a.lastBaseUpdate=D,s===null&&(a.shared.lanes=0),Cn|=o,e.lanes=o,e.memoizedState=U}}function cf(e,t){if(typeof e!="function")throw Error(r(191,e));e.call(t)}function rf(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;es?s:8;var o=j.T,d={};j.T=d,ec(e,!1,t,n);try{var g=a(),N=j.S;if(N!==null&&N(d,g),g!==null&&typeof g=="object"&&typeof g.then=="function"){var D=by(g,l);_a(e,t,D,yt(e))}else _a(e,t,l,yt(e))}catch(U){_a(e,t,{then:function(){},status:"rejected",reason:U},yt())}finally{G.p=s,o!==null&&d.types!==null&&(o.types=d.types),j.T=o}}function Ay(){}function Ps(e,t,n,l){if(e.tag!==5)throw Error(r(476));var a=kf(e).queue;Yf(e,a,t,P,n===null?Ay:function(){return Xf(e),n(l)})}function kf(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:P,baseState:P,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Ft,lastRenderedState:P},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Ft,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function Xf(e){var t=kf(e);t.next===null&&(t=e.alternate.memoizedState),_a(e,t.next.queue,{},yt())}function Is(){return Ke(qa)}function Gf(){return we().memoizedState}function Vf(){return we().memoizedState}function Cy(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var n=yt();e=Sn(n);var l=xn(t,e,n);l!==null&&(ut(l,t,n),va(l,t,n)),t={cache:Ns()},e.payload=t;return}t=t.return}}function Ry(e,t,n){var l=yt();n={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},qi(e)?Zf(t,n):(n=vs(e,t,n,l),n!==null&&(ut(n,e,l),Kf(n,t,l)))}function Qf(e,t,n){var l=yt();_a(e,t,n,l)}function _a(e,t,n,l){var a={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(qi(e))Zf(t,a);else{var s=e.alternate;if(e.lanes===0&&(s===null||s.lanes===0)&&(s=t.lastRenderedReducer,s!==null))try{var o=t.lastRenderedState,d=s(o,n);if(a.hasEagerState=!0,a.eagerState=d,ot(d,o))return bi(e,t,a,0),Ee===null&&gi(),!1}catch{}finally{}if(n=vs(e,t,a,l),n!==null)return ut(n,e,l),Kf(n,t,l),!0}return!1}function ec(e,t,n,l){if(l={lane:2,revertLane:Dc(),gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},qi(e)){if(t)throw Error(r(479))}else t=vs(e,n,l,2),t!==null&&ut(t,e,2)}function qi(e){var t=e.alternate;return e===te||t!==null&&t===te}function Zf(e,t){Ml=Di=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Kf(e,t,n){if((n&4194048)!==0){var l=t.lanes;l&=e.pendingLanes,n|=l,t.lanes=n,Wr(e,n)}}var Ea={readContext:Ke,use:Ui,useCallback:ze,useContext:ze,useEffect:ze,useImperativeHandle:ze,useLayoutEffect:ze,useInsertionEffect:ze,useMemo:ze,useReducer:ze,useRef:ze,useState:ze,useDebugValue:ze,useDeferredValue:ze,useTransition:ze,useSyncExternalStore:ze,useId:ze,useHostTransitionStatus:ze,useFormState:ze,useActionState:ze,useOptimistic:ze,useMemoCache:ze,useCacheRefresh:ze};Ea.useEffectEvent=ze;var Jf={readContext:Ke,use:Ui,useCallback:function(e,t){return Ie().memoizedState=[e,t===void 0?null:t],e},useContext:Ke,useEffect:Mf,useImperativeHandle:function(e,t,n){n=n!=null?n.concat([e]):null,Li(4194308,4,Uf.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Li(4194308,4,e,t)},useInsertionEffect:function(e,t){Li(4,2,e,t)},useMemo:function(e,t){var n=Ie();t=t===void 0?null:t;var l=e();if(el){hn(!0);try{e()}finally{hn(!1)}}return n.memoizedState=[l,t],l},useReducer:function(e,t,n){var l=Ie();if(n!==void 0){var a=n(t);if(el){hn(!0);try{n(t)}finally{hn(!1)}}}else a=t;return l.memoizedState=l.baseState=a,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:a},l.queue=e,e=e.dispatch=Ry.bind(null,te,e),[l.memoizedState,e]},useRef:function(e){var t=Ie();return e={current:e},t.memoizedState=e},useState:function(e){e=Ks(e);var t=e.queue,n=Qf.bind(null,te,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:Ws,useDeferredValue:function(e,t){var n=Ie();return Fs(n,e,t)},useTransition:function(){var e=Ks(!1);return e=Yf.bind(null,te,e.queue,!0,!1),Ie().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var l=te,a=Ie();if(ce){if(n===void 0)throw Error(r(407));n=n()}else{if(n=t(),Ee===null)throw Error(r(349));(ue&127)!==0||pf(l,t,n)}a.memoizedState=n;var s={value:n,getSnapshot:t};return a.queue=s,Mf(vf.bind(null,l,s,e),[e]),l.flags|=2048,jl(9,{destroy:void 0},yf.bind(null,l,s,n,t),null),n},useId:function(){var e=Ie(),t=Ee.identifierPrefix;if(ce){var n=Ut,l=wt;n=(l&~(1<<32-rt(l)-1)).toString(32)+n,t="_"+t+"R_"+n,n=ji++,0<\/script>",s=s.removeChild(s.firstChild);break;case"select":s=typeof l.is=="string"?o.createElement("select",{is:l.is}):o.createElement("select"),l.multiple?s.multiple=!0:l.size&&(s.size=l.size);break;default:s=typeof l.is=="string"?o.createElement(a,{is:l.is}):o.createElement(a)}}s[Qe]=t,s[et]=l;e:for(o=t.child;o!==null;){if(o.tag===5||o.tag===6)s.appendChild(o.stateNode);else if(o.tag!==4&&o.tag!==27&&o.child!==null){o.child.return=o,o=o.child;continue}if(o===t)break e;for(;o.sibling===null;){if(o.return===null||o.return===t)break e;o=o.return}o.sibling.return=o.return,o=o.sibling}t.stateNode=s;e:switch($e(s,a,l),a){case"button":case"input":case"select":case"textarea":l=!!l.autoFocus;break e;case"img":l=!0;break e;default:l=!1}l&&It(t)}}return Ce(t),mc(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==l&&It(t);else{if(typeof l!="string"&&t.stateNode===null)throw Error(r(166));if(e=le.current,Tl(t)){if(e=t.stateNode,n=t.memoizedProps,l=null,a=Ze,a!==null)switch(a.tag){case 27:case 5:l=a.memoizedProps}e[Qe]=t,e=!!(e.nodeValue===n||l!==null&&l.suppressHydrationWarning===!0||dd(e.nodeValue,n)),e||vn(t,!0)}else e=iu(e).createTextNode(l),e[Qe]=t,t.stateNode=e}return Ce(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(l=Tl(t),n!==null){if(e===null){if(!l)throw Error(r(318));if(e=t.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(r(557));e[Qe]=t}else Kn(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Ce(t),e=!1}else n=Ts(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(dt(t),t):(dt(t),null);if((t.flags&128)!==0)throw Error(r(558))}return Ce(t),null;case 13:if(l=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(a=Tl(t),l!==null&&l.dehydrated!==null){if(e===null){if(!a)throw Error(r(318));if(a=t.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(r(317));a[Qe]=t}else Kn(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Ce(t),a=!1}else a=Ts(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=a),a=!0;if(!a)return t.flags&256?(dt(t),t):(dt(t),null)}return dt(t),(t.flags&128)!==0?(t.lanes=n,t):(n=l!==null,e=e!==null&&e.memoizedState!==null,n&&(l=t.child,a=null,l.alternate!==null&&l.alternate.memoizedState!==null&&l.alternate.memoizedState.cachePool!==null&&(a=l.alternate.memoizedState.cachePool.pool),s=null,l.memoizedState!==null&&l.memoizedState.cachePool!==null&&(s=l.memoizedState.cachePool.pool),s!==a&&(l.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),Vi(t,t.updateQueue),Ce(t),null);case 4:return De(),e===null&&Bc(t.stateNode.containerInfo),Ce(t),null;case 10:return $t(t.type),Ce(t),null;case 19:if(B(je),l=t.memoizedState,l===null)return Ce(t),null;if(a=(t.flags&128)!==0,s=l.rendering,s===null)if(a)Aa(l,!1);else{if(Me!==0||e!==null&&(e.flags&128)!==0)for(e=t.child;e!==null;){if(s=Mi(e),s!==null){for(t.flags|=128,Aa(l,!1),e=s.updateQueue,t.updateQueue=e,Vi(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)Vo(n,e),n=n.sibling;return V(je,je.current&1|2),ce&&Kt(t,l.treeForkCount),t.child}e=e.sibling}l.tail!==null&&st()>$i&&(t.flags|=128,a=!0,Aa(l,!1),t.lanes=4194304)}else{if(!a)if(e=Mi(s),e!==null){if(t.flags|=128,a=!0,e=e.updateQueue,t.updateQueue=e,Vi(t,e),Aa(l,!0),l.tail===null&&l.tailMode==="hidden"&&!s.alternate&&!ce)return Ce(t),null}else 2*st()-l.renderingStartTime>$i&&n!==536870912&&(t.flags|=128,a=!0,Aa(l,!1),t.lanes=4194304);l.isBackwards?(s.sibling=t.child,t.child=s):(e=l.last,e!==null?e.sibling=s:t.child=s,l.last=s)}return l.tail!==null?(e=l.tail,l.rendering=e,l.tail=e.sibling,l.renderingStartTime=st(),e.sibling=null,n=je.current,V(je,a?n&1|2:n&1),ce&&Kt(t,l.treeForkCount),e):(Ce(t),null);case 22:case 23:return dt(t),Ls(),l=t.memoizedState!==null,e!==null?e.memoizedState!==null!==l&&(t.flags|=8192):l&&(t.flags|=8192),l?(n&536870912)!==0&&(t.flags&128)===0&&(Ce(t),t.subtreeFlags&6&&(t.flags|=8192)):Ce(t),n=t.updateQueue,n!==null&&Vi(t,n.retryQueue),n=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),l=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(l=t.memoizedState.cachePool.pool),l!==n&&(t.flags|=2048),e!==null&&B(Wn),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),$t(Be),Ce(t),null;case 25:return null;case 30:return null}throw Error(r(156,t.tag))}function Dy(e,t){switch(_s(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return $t(Be),De(),e=t.flags,(e&65536)!==0&&(e&128)===0?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return ti(t),null;case 31:if(t.memoizedState!==null){if(dt(t),t.alternate===null)throw Error(r(340));Kn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(dt(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(r(340));Kn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return B(je),null;case 4:return De(),null;case 10:return $t(t.type),null;case 22:case 23:return dt(t),Ls(),e!==null&&B(Wn),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return $t(Be),null;case 25:return null;default:return null}}function gh(e,t){switch(_s(t),t.tag){case 3:$t(Be),De();break;case 26:case 27:case 5:ti(t);break;case 4:De();break;case 31:t.memoizedState!==null&&dt(t);break;case 13:dt(t);break;case 19:B(je);break;case 10:$t(t.type);break;case 22:case 23:dt(t),Ls(),e!==null&&B(Wn);break;case 24:$t(Be)}}function Ca(e,t){try{var n=t.updateQueue,l=n!==null?n.lastEffect:null;if(l!==null){var a=l.next;n=a;do{if((n.tag&e)===e){l=void 0;var s=n.create,o=n.inst;l=s(),o.destroy=l}n=n.next}while(n!==a)}}catch(d){pe(t,t.return,d)}}function Tn(e,t,n){try{var l=t.updateQueue,a=l!==null?l.lastEffect:null;if(a!==null){var s=a.next;l=s;do{if((l.tag&e)===e){var o=l.inst,d=o.destroy;if(d!==void 0){o.destroy=void 0,a=t;var g=n,N=d;try{N()}catch(D){pe(a,g,D)}}}l=l.next}while(l!==s)}}catch(D){pe(t,t.return,D)}}function bh(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{rf(t,n)}catch(l){pe(e,e.return,l)}}}function Sh(e,t,n){n.props=tl(e.type,e.memoizedProps),n.state=e.memoizedState;try{n.componentWillUnmount()}catch(l){pe(e,t,l)}}function Ra(e,t){try{var n=e.ref;if(n!==null){switch(e.tag){case 26:case 27:case 5:var l=e.stateNode;break;case 30:l=e.stateNode;break;default:l=e.stateNode}typeof n=="function"?e.refCleanup=n(l):n.current=l}}catch(a){pe(e,t,a)}}function Bt(e,t){var n=e.ref,l=e.refCleanup;if(n!==null)if(typeof l=="function")try{l()}catch(a){pe(e,t,a)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n=="function")try{n(null)}catch(a){pe(e,t,a)}else n.current=null}function xh(e){var t=e.type,n=e.memoizedProps,l=e.stateNode;try{e:switch(t){case"button":case"input":case"select":case"textarea":n.autoFocus&&l.focus();break e;case"img":n.src?l.src=n.src:n.srcSet&&(l.srcset=n.srcSet)}}catch(a){pe(e,e.return,a)}}function pc(e,t,n){try{var l=e.stateNode;e0(l,e.type,n,t),l[et]=t}catch(a){pe(e,e.return,a)}}function _h(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&Mn(e.type)||e.tag===4}function yc(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||_h(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&&Mn(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 vc(e,t,n){var l=e.tag;if(l===5||l===6)e=e.stateNode,t?(n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n).insertBefore(e,t):(t=n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n,t.appendChild(e),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=Vt));else if(l!==4&&(l===27&&Mn(e.type)&&(n=e.stateNode,t=null),e=e.child,e!==null))for(vc(e,t,n),e=e.sibling;e!==null;)vc(e,t,n),e=e.sibling}function Qi(e,t,n){var l=e.tag;if(l===5||l===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(l!==4&&(l===27&&Mn(e.type)&&(n=e.stateNode),e=e.child,e!==null))for(Qi(e,t,n),e=e.sibling;e!==null;)Qi(e,t,n),e=e.sibling}function Eh(e){var t=e.stateNode,n=e.memoizedProps;try{for(var l=e.type,a=t.attributes;a.length;)t.removeAttributeNode(a[0]);$e(t,l,n),t[Qe]=e,t[et]=n}catch(s){pe(e,e.return,s)}}var en=!1,qe=!1,gc=!1,Th=typeof WeakSet=="function"?WeakSet:Set,Ve=null;function jy(e,t){if(e=e.containerInfo,qc=hu,e=Uo(e),fs(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var l=n.getSelection&&n.getSelection();if(l&&l.rangeCount!==0){n=l.anchorNode;var a=l.anchorOffset,s=l.focusNode;l=l.focusOffset;try{n.nodeType,s.nodeType}catch{n=null;break e}var o=0,d=-1,g=-1,N=0,D=0,U=e,O=null;t:for(;;){for(var M;U!==n||a!==0&&U.nodeType!==3||(d=o+a),U!==s||l!==0&&U.nodeType!==3||(g=o+l),U.nodeType===3&&(o+=U.nodeValue.length),(M=U.firstChild)!==null;)O=U,U=M;for(;;){if(U===e)break t;if(O===n&&++N===a&&(d=o),O===s&&++D===l&&(g=o),(M=U.nextSibling)!==null)break;U=O,O=U.parentNode}U=M}n=d===-1||g===-1?null:{start:d,end:g}}else n=null}n=n||{start:0,end:0}}else n=null;for(Yc={focusedElem:e,selectionRange:n},hu=!1,Ve=t;Ve!==null;)if(t=Ve,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,Ve=e;else for(;Ve!==null;){switch(t=Ve,s=t.alternate,e=t.flags,t.tag){case 0:if((e&4)!==0&&(e=t.updateQueue,e=e!==null?e.events:null,e!==null))for(n=0;n title"))),$e(s,l,n),s[Qe]=e,Ge(s),l=s;break e;case"link":var o=zd("link","href",a).get(l+(n.href||""));if(o){for(var d=0;dSe&&(o=Se,Se=W,W=o);var A=jo(d,W),x=jo(d,Se);if(A&&x&&(M.rangeCount!==1||M.anchorNode!==A.node||M.anchorOffset!==A.offset||M.focusNode!==x.node||M.focusOffset!==x.offset)){var R=U.createRange();R.setStart(A.node,A.offset),M.removeAllRanges(),W>Se?(M.addRange(R),M.extend(x.node,x.offset)):(R.setEnd(x.node,x.offset),M.addRange(R))}}}}for(U=[],M=d;M=M.parentNode;)M.nodeType===1&&U.push({element:M,left:M.scrollLeft,top:M.scrollTop});for(typeof d.focus=="function"&&d.focus(),d=0;dn?32:n,j.T=null,n=Ac,Ac=null;var s=Nn,o=un;if(ke=0,Hl=Nn=null,un=0,(he&6)!==0)throw Error(r(331));var d=he;if(he|=4,Uh(s.current),Dh(s,s.current,o,n),he=d,ja(0,!1),ct&&typeof ct.onPostCommitFiberRoot=="function")try{ct.onPostCommitFiberRoot(Fl,s)}catch{}return!0}finally{G.p=a,j.T=l,Ih(e,t)}}function td(e,t,n){t=St(n,t),t=ac(e.stateNode,t,2),e=xn(e,t,2),e!==null&&(Il(e,2),Lt(e))}function pe(e,t,n){if(e.tag===3)td(e,e,n);else for(;t!==null;){if(t.tag===3){td(t,e,n);break}else if(t.tag===1){var l=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof l.componentDidCatch=="function"&&(Rn===null||!Rn.has(l))){e=St(n,e),n=nh(2),l=xn(t,n,2),l!==null&&(lh(n,l,t,e),Il(l,2),Lt(l));break}}t=t.return}}function Oc(e,t,n){var l=e.pingCache;if(l===null){l=e.pingCache=new By;var a=new Set;l.set(t,a)}else a=l.get(t),a===void 0&&(a=new Set,l.set(t,a));a.has(n)||(xc=!0,a.add(n),e=ky.bind(null,e,t,n),t.then(e,e))}function ky(e,t,n){var l=e.pingCache;l!==null&&l.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,Ee===e&&(ue&n)===n&&(Me===4||Me===3&&(ue&62914560)===ue&&300>st()-Ji?(he&2)===0&&ql(e,0):_c|=n,Ll===ue&&(Ll=0)),Lt(e)}function nd(e,t){t===0&&(t=Jr()),e=Qn(e,t),e!==null&&(Il(e,t),Lt(e))}function Xy(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),nd(e,n)}function Gy(e,t){var n=0;switch(e.tag){case 31:case 13:var l=e.stateNode,a=e.memoizedState;a!==null&&(n=a.retryLane);break;case 19:l=e.stateNode;break;case 22:l=e.stateNode._retryCache;break;default:throw Error(r(314))}l!==null&&l.delete(t),nd(e,n)}function Vy(e,t){return Xu(e,t)}var tu=null,kl=null,zc=!1,nu=!1,Mc=!1,zn=0;function Lt(e){e!==kl&&e.next===null&&(kl===null?tu=kl=e:kl=kl.next=e),nu=!0,zc||(zc=!0,Zy())}function ja(e,t){if(!Mc&&nu){Mc=!0;do for(var n=!1,l=tu;l!==null;){if(e!==0){var a=l.pendingLanes;if(a===0)var s=0;else{var o=l.suspendedLanes,d=l.pingedLanes;s=(1<<31-rt(42|e)+1)-1,s&=a&~(o&~d),s=s&201326741?s&201326741|1:s?s|2:0}s!==0&&(n=!0,ud(l,s))}else s=ue,s=ui(l,l===Ee?s:0,l.cancelPendingCommit!==null||l.timeoutHandle!==-1),(s&3)===0||Pl(l,s)||(n=!0,ud(l,s));l=l.next}while(n);Mc=!1}}function Qy(){ld()}function ld(){nu=zc=!1;var e=0;zn!==0&&n0()&&(e=zn);for(var t=st(),n=null,l=tu;l!==null;){var a=l.next,s=ad(l,t);s===0?(l.next=null,n===null?tu=a:n.next=a,a===null&&(kl=n)):(n=l,(e!==0||(s&3)!==0)&&(nu=!0)),l=a}ke!==0&&ke!==5||ja(e),zn!==0&&(zn=0)}function ad(e,t){for(var n=e.suspendedLanes,l=e.pingedLanes,a=e.expirationTimes,s=e.pendingLanes&-62914561;0d)break;var D=g.transferSize,U=g.initiatorType;D&&md(U)&&(g=g.responseEnd,o+=D*(g"u"?null:document;function Cd(e,t,n){var l=Xl;if(l&&typeof t=="string"&&t){var a=gt(t);a='link[rel="'+e+'"][href="'+a+'"]',typeof n=="string"&&(a+='[crossorigin="'+n+'"]'),Ad.has(a)||(Ad.add(a),e={rel:e,crossOrigin:n,href:t},l.querySelector(a)===null&&(t=l.createElement("link"),$e(t,"link",e),Ge(t),l.head.appendChild(t)))}}function f0(e){sn.D(e),Cd("dns-prefetch",e,null)}function h0(e,t){sn.C(e,t),Cd("preconnect",e,t)}function d0(e,t,n){sn.L(e,t,n);var l=Xl;if(l&&e&&t){var a='link[rel="preload"][as="'+gt(t)+'"]';t==="image"&&n&&n.imageSrcSet?(a+='[imagesrcset="'+gt(n.imageSrcSet)+'"]',typeof n.imageSizes=="string"&&(a+='[imagesizes="'+gt(n.imageSizes)+'"]')):a+='[href="'+gt(e)+'"]';var s=a;switch(t){case"style":s=Gl(e);break;case"script":s=Vl(e)}Ct.has(s)||(e=S({rel:"preload",href:t==="image"&&n&&n.imageSrcSet?void 0:e,as:t},n),Ct.set(s,e),l.querySelector(a)!==null||t==="style"&&l.querySelector(La(s))||t==="script"&&l.querySelector(Ha(s))||(t=l.createElement("link"),$e(t,"link",e),Ge(t),l.head.appendChild(t)))}}function m0(e,t){sn.m(e,t);var n=Xl;if(n&&e){var l=t&&typeof t.as=="string"?t.as:"script",a='link[rel="modulepreload"][as="'+gt(l)+'"][href="'+gt(e)+'"]',s=a;switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":s=Vl(e)}if(!Ct.has(s)&&(e=S({rel:"modulepreload",href:e},t),Ct.set(s,e),n.querySelector(a)===null)){switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(n.querySelector(Ha(s)))return}l=n.createElement("link"),$e(l,"link",e),Ge(l),n.head.appendChild(l)}}}function p0(e,t,n){sn.S(e,t,n);var l=Xl;if(l&&e){var a=fl(l).hoistableStyles,s=Gl(e);t=t||"default";var o=a.get(s);if(!o){var d={loading:0,preload:null};if(o=l.querySelector(La(s)))d.loading=5;else{e=S({rel:"stylesheet",href:e,"data-precedence":t},n),(n=Ct.get(s))&&Kc(e,n);var g=o=l.createElement("link");Ge(g),$e(g,"link",e),g._p=new Promise(function(N,D){g.onload=N,g.onerror=D}),g.addEventListener("load",function(){d.loading|=1}),g.addEventListener("error",function(){d.loading|=2}),d.loading|=4,su(o,t,l)}o={type:"stylesheet",instance:o,count:1,state:d},a.set(s,o)}}}function y0(e,t){sn.X(e,t);var n=Xl;if(n&&e){var l=fl(n).hoistableScripts,a=Vl(e),s=l.get(a);s||(s=n.querySelector(Ha(a)),s||(e=S({src:e,async:!0},t),(t=Ct.get(a))&&Jc(e,t),s=n.createElement("script"),Ge(s),$e(s,"link",e),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function v0(e,t){sn.M(e,t);var n=Xl;if(n&&e){var l=fl(n).hoistableScripts,a=Vl(e),s=l.get(a);s||(s=n.querySelector(Ha(a)),s||(e=S({src:e,async:!0,type:"module"},t),(t=Ct.get(a))&&Jc(e,t),s=n.createElement("script"),Ge(s),$e(s,"link",e),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function Rd(e,t,n,l){var a=(a=le.current)?uu(a):null;if(!a)throw Error(r(446));switch(e){case"meta":case"title":return null;case"style":return typeof n.precedence=="string"&&typeof n.href=="string"?(t=Gl(n.href),n=fl(a).hoistableStyles,l=n.get(t),l||(l={type:"style",instance:null,count:0,state:null},n.set(t,l)),l):{type:"void",instance:null,count:0,state:null};case"link":if(n.rel==="stylesheet"&&typeof n.href=="string"&&typeof n.precedence=="string"){e=Gl(n.href);var s=fl(a).hoistableStyles,o=s.get(e);if(o||(a=a.ownerDocument||a,o={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},s.set(e,o),(s=a.querySelector(La(e)))&&!s._p&&(o.instance=s,o.state.loading=5),Ct.has(e)||(n={rel:"preload",as:"style",href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},Ct.set(e,n),s||g0(a,e,n,o.state))),t&&l===null)throw Error(r(528,""));return o}if(t&&l!==null)throw Error(r(529,""));return null;case"script":return t=n.async,n=n.src,typeof n=="string"&&t&&typeof t!="function"&&typeof t!="symbol"?(t=Vl(n),n=fl(a).hoistableScripts,l=n.get(t),l||(l={type:"script",instance:null,count:0,state:null},n.set(t,l)),l):{type:"void",instance:null,count:0,state:null};default:throw Error(r(444,e))}}function Gl(e){return'href="'+gt(e)+'"'}function La(e){return'link[rel="stylesheet"]['+e+"]"}function Nd(e){return S({},e,{"data-precedence":e.precedence,precedence:null})}function g0(e,t,n,l){e.querySelector('link[rel="preload"][as="style"]['+t+"]")?l.loading=1:(t=e.createElement("link"),l.preload=t,t.addEventListener("load",function(){return l.loading|=1}),t.addEventListener("error",function(){return l.loading|=2}),$e(t,"link",n),Ge(t),e.head.appendChild(t))}function Vl(e){return'[src="'+gt(e)+'"]'}function Ha(e){return"script[async]"+e}function Od(e,t,n){if(t.count++,t.instance===null)switch(t.type){case"style":var l=e.querySelector('style[data-href~="'+gt(n.href)+'"]');if(l)return t.instance=l,Ge(l),l;var a=S({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return l=(e.ownerDocument||e).createElement("style"),Ge(l),$e(l,"style",a),su(l,n.precedence,e),t.instance=l;case"stylesheet":a=Gl(n.href);var s=e.querySelector(La(a));if(s)return t.state.loading|=4,t.instance=s,Ge(s),s;l=Nd(n),(a=Ct.get(a))&&Kc(l,a),s=(e.ownerDocument||e).createElement("link"),Ge(s);var o=s;return o._p=new Promise(function(d,g){o.onload=d,o.onerror=g}),$e(s,"link",l),t.state.loading|=4,su(s,n.precedence,e),t.instance=s;case"script":return s=Vl(n.src),(a=e.querySelector(Ha(s)))?(t.instance=a,Ge(a),a):(l=n,(a=Ct.get(s))&&(l=S({},n),Jc(l,a)),e=e.ownerDocument||e,a=e.createElement("script"),Ge(a),$e(a,"link",l),e.head.appendChild(a),t.instance=a);case"void":return null;default:throw Error(r(443,t.type))}else t.type==="stylesheet"&&(t.state.loading&4)===0&&(l=t.instance,t.state.loading|=4,su(l,n.precedence,e));return t.instance}function su(e,t,n){for(var l=n.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=l.length?l[l.length-1]:null,s=a,o=0;o title"):null)}function b0(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case"meta":case"title":return!0;case"style":if(typeof t.precedence!="string"||typeof t.href!="string"||t.href==="")break;return!0;case"link":if(typeof t.rel!="string"||typeof t.href!="string"||t.href===""||t.onLoad||t.onError)break;switch(t.rel){case"stylesheet":return e=t.disabled,typeof t.precedence=="string"&&e==null;default:return!0}case"script":if(t.async&&typeof t.async!="function"&&typeof t.async!="symbol"&&!t.onLoad&&!t.onError&&t.src&&typeof t.src=="string")return!0}return!1}function Dd(e){return!(e.type==="stylesheet"&&(e.state.loading&3)===0)}function S0(e,t,n,l){if(n.type==="stylesheet"&&(typeof l.media!="string"||matchMedia(l.media).matches!==!1)&&(n.state.loading&4)===0){if(n.instance===null){var a=Gl(l.href),s=t.querySelector(La(a));if(s){t=s._p,t!==null&&typeof t=="object"&&typeof t.then=="function"&&(e.count++,e=ru.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=s,Ge(s);return}s=t.ownerDocument||t,l=Nd(l),(a=Ct.get(a))&&Kc(l,a),s=s.createElement("link"),Ge(s);var o=s;o._p=new Promise(function(d,g){o.onload=d,o.onerror=g}),$e(s,"link",l),n.instance=s}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&(n.state.loading&3)===0&&(e.count++,n=ru.bind(e),t.addEventListener("load",n),t.addEventListener("error",n))}}var $c=0;function x0(e,t){return e.stylesheets&&e.count===0&&fu(e,e.stylesheets),0$c?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(l),clearTimeout(a)}}:null}function ru(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)fu(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var ou=null;function fu(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,ou=new Map,t.forEach(_0,e),ou=null,ru.call(e))}function _0(e,t){if(!(t.state.loading&4)){var n=ou.get(e);if(n)var l=n.get(null);else{n=new Map,ou.set(e,n);for(var a=e.querySelectorAll("link[data-precedence],style[data-precedence]"),s=0;s"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(u)}catch(i){console.error(i)}}return u(),ar.exports=H0(),ar.exports}var Y0=q0();var nm="popstate";function k0(u={}){function i(r,f){let{pathname:h,search:m,hash:b}=r.location;return pr("",{pathname:h,search:m,hash:b},f.state&&f.state.usr||null,f.state&&f.state.key||"default")}function c(r,f){return typeof f=="string"?f:Wa(f)}return G0(i,c,null,u)}function Oe(u,i){if(u===!1||u===null||typeof u>"u")throw new Error(i)}function jt(u,i){if(!u){typeof console<"u"&&console.warn(i);try{throw new Error(i)}catch{}}}function X0(){return Math.random().toString(36).substring(2,10)}function lm(u,i){return{usr:u.state,key:u.key,idx:i}}function pr(u,i,c=null,r){return{pathname:typeof u=="string"?u:u.pathname,search:"",hash:"",...typeof i=="string"?Kl(i):i,state:c,key:i&&i.key||r||X0()}}function Wa({pathname:u="/",search:i="",hash:c=""}){return i&&i!=="?"&&(u+=i.charAt(0)==="?"?i:"?"+i),c&&c!=="#"&&(u+=c.charAt(0)==="#"?c:"#"+c),u}function Kl(u){let i={};if(u){let c=u.indexOf("#");c>=0&&(i.hash=u.substring(c),u=u.substring(0,c));let r=u.indexOf("?");r>=0&&(i.search=u.substring(r),u=u.substring(0,r)),u&&(i.pathname=u)}return i}function G0(u,i,c,r={}){let{window:f=document.defaultView,v5Compat:h=!1}=r,m=f.history,b="POP",y=null,v=T();v==null&&(v=0,m.replaceState({...m.state,idx:v},""));function T(){return(m.state||{idx:null}).idx}function S(){b="POP";let q=T(),H=q==null?null:q-v;v=q,y&&y({action:b,location:X.location,delta:H})}function C(q,H){b="PUSH";let Y=pr(X.location,q,H);v=T()+1;let k=lm(Y,v),F=X.createHref(Y);try{m.pushState(k,"",F)}catch(ye){if(ye instanceof DOMException&&ye.name==="DataCloneError")throw ye;f.location.assign(F)}h&&y&&y({action:b,location:X.location,delta:1})}function z(q,H){b="REPLACE";let Y=pr(X.location,q,H);v=T();let k=lm(Y,v),F=X.createHref(Y);m.replaceState(k,"",F),h&&y&&y({action:b,location:X.location,delta:0})}function L(q){return V0(q)}let X={get action(){return b},get location(){return u(f,m)},listen(q){if(y)throw new Error("A history only accepts one active listener");return f.addEventListener(nm,S),y=q,()=>{f.removeEventListener(nm,S),y=null}},createHref(q){return i(f,q)},createURL:L,encodeLocation(q){let H=L(q);return{pathname:H.pathname,search:H.search,hash:H.hash}},push:C,replace:z,go(q){return m.go(q)}};return X}function V0(u,i=!1){let c="http://localhost";typeof window<"u"&&(c=window.location.origin!=="null"?window.location.origin:window.location.href),Oe(c,"No window.location.(origin|href) available to create URL");let r=typeof u=="string"?u:Wa(u);return r=r.replace(/ $/,"%20"),!i&&r.startsWith("//")&&(r=c+r),new URL(r,c)}function _m(u,i,c="/"){return Q0(u,i,c,!1)}function Q0(u,i,c,r){let f=typeof i=="string"?Kl(i):i,h=on(f.pathname||"/",c);if(h==null)return null;let m=Em(u);Z0(m);let b=null;for(let y=0;b==null&&y{let T={relativePath:v===void 0?m.path||"":v,caseSensitive:m.caseSensitive===!0,childrenIndex:b,route:m};if(T.relativePath.startsWith("/")){if(!T.relativePath.startsWith(r)&&y)return;Oe(T.relativePath.startsWith(r),`Absolute route path "${T.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),T.relativePath=T.relativePath.slice(r.length)}let S=rn([r,T.relativePath]),C=c.concat(T);m.children&&m.children.length>0&&(Oe(m.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${S}".`),Em(m.children,i,C,S,y)),!(m.path==null&&!m.index)&&i.push({path:S,score:I0(S,m.index),routesMeta:C})};return u.forEach((m,b)=>{if(m.path===""||!m.path?.includes("?"))h(m,b);else for(let y of Tm(m.path))h(m,b,!0,y)}),i}function Tm(u){let i=u.split("/");if(i.length===0)return[];let[c,...r]=i,f=c.endsWith("?"),h=c.replace(/\?$/,"");if(r.length===0)return f?[h,""]:[h];let m=Tm(r.join("/")),b=[];return b.push(...m.map(y=>y===""?h:[h,y].join("/"))),f&&b.push(...m),b.map(y=>u.startsWith("/")&&y===""?"/":y)}function Z0(u){u.sort((i,c)=>i.score!==c.score?c.score-i.score:ev(i.routesMeta.map(r=>r.childrenIndex),c.routesMeta.map(r=>r.childrenIndex)))}var K0=/^:[\w-]+$/,J0=3,$0=2,W0=1,F0=10,P0=-2,am=u=>u==="*";function I0(u,i){let c=u.split("/"),r=c.length;return c.some(am)&&(r+=P0),i&&(r+=$0),c.filter(f=>!am(f)).reduce((f,h)=>f+(K0.test(h)?J0:h===""?W0:F0),r)}function ev(u,i){return u.length===i.length&&u.slice(0,-1).every((r,f)=>r===i[f])?u[u.length-1]-i[i.length-1]:0}function tv(u,i,c=!1){let{routesMeta:r}=u,f={},h="/",m=[];for(let b=0;b{if(T==="*"){let L=b[C]||"";m=h.slice(0,h.length-L.length).replace(/(.)\/+$/,"$1")}const z=b[C];return S&&!z?v[T]=void 0:v[T]=(z||"").replace(/%2F/g,"/"),v},{}),pathname:h,pathnameBase:m,pattern:u}}function nv(u,i=!1,c=!0){jt(u==="*"||!u.endsWith("*")||u.endsWith("/*"),`Route path "${u}" will be treated as if it were "${u.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${u.replace(/\*$/,"/*")}".`);let r=[],f="^"+u.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(m,b,y)=>(r.push({paramName:b,isOptional:y!=null}),y?"/?([^\\/]+)?":"/([^\\/]+)")).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return u.endsWith("*")?(r.push({paramName:"*"}),f+=u==="*"||u==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):c?f+="\\/*$":u!==""&&u!=="/"&&(f+="(?:(?=\\/|$))"),[new RegExp(f,i?void 0:"i"),r]}function lv(u){try{return u.split("/").map(i=>decodeURIComponent(i).replace(/\//g,"%2F")).join("/")}catch(i){return jt(!1,`The URL path "${u}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${i}).`),u}}function on(u,i){if(i==="/")return u;if(!u.toLowerCase().startsWith(i.toLowerCase()))return null;let c=i.endsWith("/")?i.length-1:i.length,r=u.charAt(c);return r&&r!=="/"?null:u.slice(c)||"/"}var av=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,iv=u=>av.test(u);function uv(u,i="/"){let{pathname:c,search:r="",hash:f=""}=typeof u=="string"?Kl(u):u,h;if(c)if(iv(c))h=c;else{if(c.includes("//")){let m=c;c=c.replace(/\/\/+/g,"/"),jt(!1,`Pathnames cannot have embedded double slashes - normalizing ${m} -> ${c}`)}c.startsWith("/")?h=im(c.substring(1),"/"):h=im(c,i)}else h=i;return{pathname:h,search:rv(r),hash:ov(f)}}function im(u,i){let c=i.replace(/\/+$/,"").split("/");return u.split("/").forEach(f=>{f===".."?c.length>1&&c.pop():f!=="."&&c.push(f)}),c.length>1?c.join("/"):"/"}function cr(u,i,c,r){return`Cannot include a '${u}' character in a manually specified \`to.${i}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${c}\` field. Alternatively you may provide the full path as a string in and the router will parse it for you.`}function sv(u){return u.filter((i,c)=>c===0||i.route.path&&i.route.path.length>0)}function Am(u){let i=sv(u);return i.map((c,r)=>r===i.length-1?c.pathname:c.pathnameBase)}function Cm(u,i,c,r=!1){let f;typeof u=="string"?f=Kl(u):(f={...u},Oe(!f.pathname||!f.pathname.includes("?"),cr("?","pathname","search",f)),Oe(!f.pathname||!f.pathname.includes("#"),cr("#","pathname","hash",f)),Oe(!f.search||!f.search.includes("#"),cr("#","search","hash",f)));let h=u===""||f.pathname==="",m=h?"/":f.pathname,b;if(m==null)b=c;else{let S=i.length-1;if(!r&&m.startsWith("..")){let C=m.split("/");for(;C[0]==="..";)C.shift(),S-=1;f.pathname=C.join("/")}b=S>=0?i[S]:"/"}let y=uv(f,b),v=m&&m!=="/"&&m.endsWith("/"),T=(h||m===".")&&c.endsWith("/");return!y.pathname.endsWith("/")&&(v||T)&&(y.pathname+="/"),y}var rn=u=>u.join("/").replace(/\/\/+/g,"/"),cv=u=>u.replace(/\/+$/,"").replace(/^\/*/,"/"),rv=u=>!u||u==="?"?"":u.startsWith("?")?u:"?"+u,ov=u=>!u||u==="#"?"":u.startsWith("#")?u:"#"+u;function fv(u){return u!=null&&typeof u.status=="number"&&typeof u.statusText=="string"&&typeof u.internal=="boolean"&&"data"in u}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var Rm=["POST","PUT","PATCH","DELETE"];new Set(Rm);var hv=["GET",...Rm];new Set(hv);var Jl=E.createContext(null);Jl.displayName="DataRouter";var Du=E.createContext(null);Du.displayName="DataRouterState";E.createContext(!1);var Nm=E.createContext({isTransitioning:!1});Nm.displayName="ViewTransition";var dv=E.createContext(new Map);dv.displayName="Fetchers";var mv=E.createContext(null);mv.displayName="Await";var Yt=E.createContext(null);Yt.displayName="Navigation";var Fa=E.createContext(null);Fa.displayName="Location";var fn=E.createContext({outlet:null,matches:[],isDataRoute:!1});fn.displayName="Route";var Tr=E.createContext(null);Tr.displayName="RouteError";function pv(u,{relative:i}={}){Oe(Pa(),"useHref() may be used only in the context of a component.");let{basename:c,navigator:r}=E.useContext(Yt),{hash:f,pathname:h,search:m}=Ia(u,{relative:i}),b=h;return c!=="/"&&(b=h==="/"?c:rn([c,h])),r.createHref({pathname:b,search:m,hash:f})}function Pa(){return E.useContext(Fa)!=null}function sl(){return Oe(Pa(),"useLocation() may be used only in the context of a component."),E.useContext(Fa).location}var Om="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function zm(u){E.useContext(Yt).static||E.useLayoutEffect(u)}function yv(){let{isDataRoute:u}=E.useContext(fn);return u?Ov():vv()}function vv(){Oe(Pa(),"useNavigate() may be used only in the context of a component.");let u=E.useContext(Jl),{basename:i,navigator:c}=E.useContext(Yt),{matches:r}=E.useContext(fn),{pathname:f}=sl(),h=JSON.stringify(Am(r)),m=E.useRef(!1);return zm(()=>{m.current=!0}),E.useCallback((y,v={})=>{if(jt(m.current,Om),!m.current)return;if(typeof y=="number"){c.go(y);return}let T=Cm(y,JSON.parse(h),f,v.relative==="path");u==null&&i!=="/"&&(T.pathname=T.pathname==="/"?i:rn([i,T.pathname])),(v.replace?c.replace:c.push)(T,v.state,v)},[i,c,h,f,u])}E.createContext(null);function Ia(u,{relative:i}={}){let{matches:c}=E.useContext(fn),{pathname:r}=sl(),f=JSON.stringify(Am(c));return E.useMemo(()=>Cm(u,JSON.parse(f),r,i==="path"),[u,f,r,i])}function gv(u,i){return Mm(u,i)}function Mm(u,i,c,r,f){Oe(Pa(),"useRoutes() may be used only in the context of a component.");let{navigator:h}=E.useContext(Yt),{matches:m}=E.useContext(fn),b=m[m.length-1],y=b?b.params:{},v=b?b.pathname:"/",T=b?b.pathnameBase:"/",S=b&&b.route;{let Y=S&&S.path||"";Dm(v,!S||Y.endsWith("*")||Y.endsWith("*?"),`You rendered descendant (or called \`useRoutes()\`) at "${v}" (under ) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render. +`+l.stack}}var Xu=Object.prototype.hasOwnProperty,Gu=u.unstable_scheduleCallback,Vu=u.unstable_cancelCallback,rp=u.unstable_shouldYield,op=u.unstable_requestPaint,st=u.unstable_now,fp=u.unstable_getCurrentPriorityLevel,Qr=u.unstable_ImmediatePriority,Zr=u.unstable_UserBlockingPriority,ni=u.unstable_NormalPriority,dp=u.unstable_LowPriority,Kr=u.unstable_IdlePriority,hp=u.log,mp=u.unstable_setDisableYieldValue,Fl=null,ct=null;function dn(e){if(typeof hp=="function"&&mp(e),ct&&typeof ct.setStrictMode=="function")try{ct.setStrictMode(Fl,e)}catch{}}var rt=Math.clz32?Math.clz32:vp,pp=Math.log,yp=Math.LN2;function vp(e){return e>>>=0,e===0?32:31-(pp(e)/yp|0)|0}var li=256,ai=262144,ii=4194304;function Yn(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function ui(e,t,n){var l=e.pendingLanes;if(l===0)return 0;var a=0,s=e.suspendedLanes,o=e.pingedLanes;e=e.warmLanes;var h=l&134217727;return h!==0?(l=h&~s,l!==0?a=Yn(l):(o&=h,o!==0?a=Yn(o):n||(n=h&~e,n!==0&&(a=Yn(n))))):(h=l&~s,h!==0?a=Yn(h):o!==0?a=Yn(o):n||(n=l&~e,n!==0&&(a=Yn(n)))),a===0?0:t!==0&&t!==a&&(t&s)===0&&(s=a&-a,n=t&-t,s>=n||s===32&&(n&4194048)!==0)?t:a}function Pl(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function gp(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Jr(){var e=ii;return ii<<=1,(ii&62914560)===0&&(ii=4194304),e}function Qu(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function Il(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function bp(e,t,n,l,a,s){var o=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var h=e.entanglements,g=e.expirationTimes,R=e.hiddenUpdates;for(n=o&~n;0"u")return null;try{return e.activeElement||e.body}catch{return e.body}}var Ap=/[\n"\\]/g;function gt(e){return e.replace(Ap,function(t){return"\\"+t.charCodeAt(0).toString(16)+" "})}function Fu(e,t,n,l,a,s,o,h){e.name="",o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"?e.type=o:e.removeAttribute("type"),t!=null?o==="number"?(t===0&&e.value===""||e.value!=t)&&(e.value=""+vt(t)):e.value!==""+vt(t)&&(e.value=""+vt(t)):o!=="submit"&&o!=="reset"||e.removeAttribute("value"),t!=null?Pu(e,o,vt(t)):n!=null?Pu(e,o,vt(n)):l!=null&&e.removeAttribute("value"),a==null&&s!=null&&(e.defaultChecked=!!s),a!=null&&(e.checked=a&&typeof a!="function"&&typeof a!="symbol"),h!=null&&typeof h!="function"&&typeof h!="symbol"&&typeof h!="boolean"?e.name=""+vt(h):e.removeAttribute("name")}function so(e,t,n,l,a,s,o,h){if(s!=null&&typeof s!="function"&&typeof s!="symbol"&&typeof s!="boolean"&&(e.type=s),t!=null||n!=null){if(!(s!=="submit"&&s!=="reset"||t!=null)){Wu(e);return}n=n!=null?""+vt(n):"",t=t!=null?""+vt(t):n,h||t===e.value||(e.value=t),e.defaultValue=t}l=l??a,l=typeof l!="function"&&typeof l!="symbol"&&!!l,e.checked=h?e.checked:!!l,e.defaultChecked=!!l,o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"&&(e.name=o),Wu(e)}function Pu(e,t,n){t==="number"&&ri(e.ownerDocument)===e||e.defaultValue===""+n||(e.defaultValue=""+n)}function hl(e,t,n,l){if(e=e.options,t){t={};for(var a=0;a"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),ls=!1;if(Qt)try{var la={};Object.defineProperty(la,"passive",{get:function(){ls=!0}}),window.addEventListener("test",la,la),window.removeEventListener("test",la,la)}catch{ls=!1}var mn=null,as=null,fi=null;function po(){if(fi)return fi;var e,t=as,n=t.length,l,a="value"in mn?mn.value:mn.textContent,s=a.length;for(e=0;e=ua),xo=" ",_o=!1;function Eo(e,t){switch(e){case"keyup":return Ip.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function To(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var vl=!1;function ty(e,t){switch(e){case"compositionend":return To(t);case"keypress":return t.which!==32?null:(_o=!0,xo);case"textInput":return e=t.data,e===xo&&_o?null:e;default:return null}}function ny(e,t){if(vl)return e==="compositionend"||!rs&&Eo(e,t)?(e=po(),fi=as=mn=null,vl=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=l}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=Do(n)}}function wo(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?wo(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Uo(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=ri(e.document);t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=ri(e.document)}return t}function ds(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}var oy=Qt&&"documentMode"in document&&11>=document.documentMode,gl=null,hs=null,oa=null,ms=!1;function Bo(e,t,n){var l=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;ms||gl==null||gl!==ri(l)||(l=gl,"selectionStart"in l&&ds(l)?l={start:l.selectionStart,end:l.selectionEnd}:(l=(l.ownerDocument&&l.ownerDocument.defaultView||window).getSelection(),l={anchorNode:l.anchorNode,anchorOffset:l.anchorOffset,focusNode:l.focusNode,focusOffset:l.focusOffset}),oa&&ra(oa,l)||(oa=l,l=au(hs,"onSelect"),0>=o,a-=o,Ut=1<<32-rt(t)+a|n<ne?(se=K,K=null):se=K.sibling;var fe=O(A,K,N[ne],w);if(fe===null){K===null&&(K=se);break}e&&K&&fe.alternate===null&&t(A,K),x=s(fe,x,ne),oe===null?J=fe:oe.sibling=fe,oe=fe,K=se}if(ne===N.length)return n(A,K),ce&&Kt(A,ne),J;if(K===null){for(;nene?(se=K,K=null):se=K.sibling;var Bn=O(A,K,fe.value,w);if(Bn===null){K===null&&(K=se);break}e&&K&&Bn.alternate===null&&t(A,K),x=s(Bn,x,ne),oe===null?J=Bn:oe.sibling=Bn,oe=Bn,K=se}if(fe.done)return n(A,K),ce&&Kt(A,ne),J;if(K===null){for(;!fe.done;ne++,fe=N.next())fe=U(A,fe.value,w),fe!==null&&(x=s(fe,x,ne),oe===null?J=fe:oe.sibling=fe,oe=fe);return ce&&Kt(A,ne),J}for(K=l(K);!fe.done;ne++,fe=N.next())fe=M(K,A,ne,fe.value,w),fe!==null&&(e&&fe.alternate!==null&&K.delete(fe.key===null?ne:fe.key),x=s(fe,x,ne),oe===null?J=fe:oe.sibling=fe,oe=fe);return e&&K.forEach(function(z0){return t(A,z0)}),ce&&Kt(A,ne),J}function Se(A,x,N,w){if(typeof N=="object"&&N!==null&&N.type===X&&N.key===null&&(N=N.props.children),typeof N=="object"&&N!==null){switch(N.$$typeof){case z:e:{for(var J=N.key;x!==null;){if(x.key===J){if(J=N.type,J===X){if(x.tag===7){n(A,x.sibling),w=a(x,N.props.children),w.return=A,A=w;break e}}else if(x.elementType===J||typeof J=="object"&&J!==null&&J.$$typeof===Te&&Fn(J)===x.type){n(A,x.sibling),w=a(x,N.props),ya(w,N),w.return=A,A=w;break e}n(A,x);break}else t(A,x);x=x.sibling}N.type===X?(w=Zn(N.props.children,A.mode,w,N.key),w.return=A,A=w):(w=xi(N.type,N.key,N.props,null,A.mode,w),ya(w,N),w.return=A,A=w)}return o(A);case L:e:{for(J=N.key;x!==null;){if(x.key===J)if(x.tag===4&&x.stateNode.containerInfo===N.containerInfo&&x.stateNode.implementation===N.implementation){n(A,x.sibling),w=a(x,N.children||[]),w.return=A,A=w;break e}else{n(A,x);break}else t(A,x);x=x.sibling}w=xs(N,A.mode,w),w.return=A,A=w}return o(A);case Te:return N=Fn(N),Se(A,x,N,w)}if(Rt(N))return Q(A,x,N,w);if(We(N)){if(J=We(N),typeof J!="function")throw Error(r(150));return N=J.call(N),W(A,x,N,w)}if(typeof N.then=="function")return Se(A,x,Ri(N),w);if(N.$$typeof===k)return Se(A,x,Ti(A,N),w);Oi(A,N)}return typeof N=="string"&&N!==""||typeof N=="number"||typeof N=="bigint"?(N=""+N,x!==null&&x.tag===6?(n(A,x.sibling),w=a(x,N),w.return=A,A=w):(n(A,x),w=Ss(N,A.mode,w),w.return=A,A=w),o(A)):n(A,x)}return function(A,x,N,w){try{pa=0;var J=Se(A,x,N,w);return Ol=null,J}catch(K){if(K===Rl||K===Ci)throw K;var oe=ft(29,K,null,A.mode);return oe.lanes=w,oe.return=A,oe}finally{}}}var In=uf(!0),sf=uf(!1),bn=!1;function js(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function ws(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function Sn(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function xn(e,t,n){var l=e.updateQueue;if(l===null)return null;if(l=l.shared,(de&2)!==0){var a=l.pending;return a===null?t.next=t:(t.next=a.next,a.next=t),l.pending=t,t=Si(e),Go(e,null,n),t}return bi(e,l,t,n),Si(e)}function va(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194048)!==0)){var l=t.lanes;l&=e.pendingLanes,n|=l,t.lanes=n,Wr(e,n)}}function Us(e,t){var n=e.updateQueue,l=e.alternate;if(l!==null&&(l=l.updateQueue,n===l)){var a=null,s=null;if(n=n.firstBaseUpdate,n!==null){do{var o={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};s===null?a=s=o:s=s.next=o,n=n.next}while(n!==null);s===null?a=s=t:s=s.next=t}else a=s=t;n={baseState:l.baseState,firstBaseUpdate:a,lastBaseUpdate:s,shared:l.shared,callbacks:l.callbacks},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}var Bs=!1;function ga(){if(Bs){var e=Nl;if(e!==null)throw e}}function ba(e,t,n,l){Bs=!1;var a=e.updateQueue;bn=!1;var s=a.firstBaseUpdate,o=a.lastBaseUpdate,h=a.shared.pending;if(h!==null){a.shared.pending=null;var g=h,R=g.next;g.next=null,o===null?s=R:o.next=R,o=g;var D=e.alternate;D!==null&&(D=D.updateQueue,h=D.lastBaseUpdate,h!==o&&(h===null?D.firstBaseUpdate=R:h.next=R,D.lastBaseUpdate=g))}if(s!==null){var U=a.baseState;o=0,D=R=g=null,h=s;do{var O=h.lane&-536870913,M=O!==h.lane;if(M?(ue&O)===O:(l&O)===O){O!==0&&O===Cl&&(Bs=!0),D!==null&&(D=D.next={lane:0,tag:h.tag,payload:h.payload,callback:null,next:null});e:{var Q=e,W=h;O=t;var Se=n;switch(W.tag){case 1:if(Q=W.payload,typeof Q=="function"){U=Q.call(Se,U,O);break e}U=Q;break e;case 3:Q.flags=Q.flags&-65537|128;case 0:if(Q=W.payload,O=typeof Q=="function"?Q.call(Se,U,O):Q,O==null)break e;U=S({},U,O);break e;case 2:bn=!0}}O=h.callback,O!==null&&(e.flags|=64,M&&(e.flags|=8192),M=a.callbacks,M===null?a.callbacks=[O]:M.push(O))}else M={lane:O,tag:h.tag,payload:h.payload,callback:h.callback,next:null},D===null?(R=D=M,g=U):D=D.next=M,o|=O;if(h=h.next,h===null){if(h=a.shared.pending,h===null)break;M=h,h=M.next,M.next=null,a.lastBaseUpdate=M,a.shared.pending=null}}while(!0);D===null&&(g=U),a.baseState=g,a.firstBaseUpdate=R,a.lastBaseUpdate=D,s===null&&(a.shared.lanes=0),Cn|=o,e.lanes=o,e.memoizedState=U}}function cf(e,t){if(typeof e!="function")throw Error(r(191,e));e.call(t)}function rf(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;es?s:8;var o=j.T,h={};j.T=h,tc(e,!1,t,n);try{var g=a(),R=j.S;if(R!==null&&R(h,g),g!==null&&typeof g=="object"&&typeof g.then=="function"){var D=by(g,l);_a(e,t,D,yt(e))}else _a(e,t,l,yt(e))}catch(U){_a(e,t,{then:function(){},status:"rejected",reason:U},yt())}finally{G.p=s,o!==null&&h.types!==null&&(o.types=h.types),j.T=o}}function Ay(){}function Is(e,t,n,l){if(e.tag!==5)throw Error(r(476));var a=kf(e).queue;Yf(e,a,t,P,n===null?Ay:function(){return Xf(e),n(l)})}function kf(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:P,baseState:P,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Ft,lastRenderedState:P},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Ft,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function Xf(e){var t=kf(e);t.next===null&&(t=e.alternate.memoizedState),_a(e,t.next.queue,{},yt())}function ec(){return Ke(qa)}function Gf(){return we().memoizedState}function Vf(){return we().memoizedState}function Cy(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var n=yt();e=Sn(n);var l=xn(t,e,n);l!==null&&(ut(l,t,n),va(l,t,n)),t={cache:Os()},e.payload=t;return}t=t.return}}function Ny(e,t,n){var l=yt();n={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},qi(e)?Zf(t,n):(n=gs(e,t,n,l),n!==null&&(ut(n,e,l),Kf(n,t,l)))}function Qf(e,t,n){var l=yt();_a(e,t,n,l)}function _a(e,t,n,l){var a={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(qi(e))Zf(t,a);else{var s=e.alternate;if(e.lanes===0&&(s===null||s.lanes===0)&&(s=t.lastRenderedReducer,s!==null))try{var o=t.lastRenderedState,h=s(o,n);if(a.hasEagerState=!0,a.eagerState=h,ot(h,o))return bi(e,t,a,0),Ee===null&&gi(),!1}catch{}finally{}if(n=gs(e,t,a,l),n!==null)return ut(n,e,l),Kf(n,t,l),!0}return!1}function tc(e,t,n,l){if(l={lane:2,revertLane:jc(),gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},qi(e)){if(t)throw Error(r(479))}else t=gs(e,n,l,2),t!==null&&ut(t,e,2)}function qi(e){var t=e.alternate;return e===te||t!==null&&t===te}function Zf(e,t){Ml=Di=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Kf(e,t,n){if((n&4194048)!==0){var l=t.lanes;l&=e.pendingLanes,n|=l,t.lanes=n,Wr(e,n)}}var Ea={readContext:Ke,use:Ui,useCallback:ze,useContext:ze,useEffect:ze,useImperativeHandle:ze,useLayoutEffect:ze,useInsertionEffect:ze,useMemo:ze,useReducer:ze,useRef:ze,useState:ze,useDebugValue:ze,useDeferredValue:ze,useTransition:ze,useSyncExternalStore:ze,useId:ze,useHostTransitionStatus:ze,useFormState:ze,useActionState:ze,useOptimistic:ze,useMemoCache:ze,useCacheRefresh:ze};Ea.useEffectEvent=ze;var Jf={readContext:Ke,use:Ui,useCallback:function(e,t){return Ie().memoizedState=[e,t===void 0?null:t],e},useContext:Ke,useEffect:Mf,useImperativeHandle:function(e,t,n){n=n!=null?n.concat([e]):null,Li(4194308,4,Uf.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Li(4194308,4,e,t)},useInsertionEffect:function(e,t){Li(4,2,e,t)},useMemo:function(e,t){var n=Ie();t=t===void 0?null:t;var l=e();if(el){dn(!0);try{e()}finally{dn(!1)}}return n.memoizedState=[l,t],l},useReducer:function(e,t,n){var l=Ie();if(n!==void 0){var a=n(t);if(el){dn(!0);try{n(t)}finally{dn(!1)}}}else a=t;return l.memoizedState=l.baseState=a,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:a},l.queue=e,e=e.dispatch=Ny.bind(null,te,e),[l.memoizedState,e]},useRef:function(e){var t=Ie();return e={current:e},t.memoizedState=e},useState:function(e){e=Js(e);var t=e.queue,n=Qf.bind(null,te,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:Fs,useDeferredValue:function(e,t){var n=Ie();return Ps(n,e,t)},useTransition:function(){var e=Js(!1);return e=Yf.bind(null,te,e.queue,!0,!1),Ie().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var l=te,a=Ie();if(ce){if(n===void 0)throw Error(r(407));n=n()}else{if(n=t(),Ee===null)throw Error(r(349));(ue&127)!==0||pf(l,t,n)}a.memoizedState=n;var s={value:n,getSnapshot:t};return a.queue=s,Mf(vf.bind(null,l,s,e),[e]),l.flags|=2048,jl(9,{destroy:void 0},yf.bind(null,l,s,n,t),null),n},useId:function(){var e=Ie(),t=Ee.identifierPrefix;if(ce){var n=Bt,l=Ut;n=(l&~(1<<32-rt(l)-1)).toString(32)+n,t="_"+t+"R_"+n,n=ji++,0<\/script>",s=s.removeChild(s.firstChild);break;case"select":s=typeof l.is=="string"?o.createElement("select",{is:l.is}):o.createElement("select"),l.multiple?s.multiple=!0:l.size&&(s.size=l.size);break;default:s=typeof l.is=="string"?o.createElement(a,{is:l.is}):o.createElement(a)}}s[Qe]=t,s[et]=l;e:for(o=t.child;o!==null;){if(o.tag===5||o.tag===6)s.appendChild(o.stateNode);else if(o.tag!==4&&o.tag!==27&&o.child!==null){o.child.return=o,o=o.child;continue}if(o===t)break e;for(;o.sibling===null;){if(o.return===null||o.return===t)break e;o=o.return}o.sibling.return=o.return,o=o.sibling}t.stateNode=s;e:switch($e(s,a,l),a){case"button":case"input":case"select":case"textarea":l=!!l.autoFocus;break e;case"img":l=!0;break e;default:l=!1}l&&It(t)}}return Ce(t),pc(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==l&&It(t);else{if(typeof l!="string"&&t.stateNode===null)throw Error(r(166));if(e=le.current,Tl(t)){if(e=t.stateNode,n=t.memoizedProps,l=null,a=Ze,a!==null)switch(a.tag){case 27:case 5:l=a.memoizedProps}e[Qe]=t,e=!!(e.nodeValue===n||l!==null&&l.suppressHydrationWarning===!0||hh(e.nodeValue,n)),e||vn(t,!0)}else e=iu(e).createTextNode(l),e[Qe]=t,t.stateNode=e}return Ce(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(l=Tl(t),n!==null){if(e===null){if(!l)throw Error(r(318));if(e=t.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(r(557));e[Qe]=t}else Kn(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Ce(t),e=!1}else n=As(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(ht(t),t):(ht(t),null);if((t.flags&128)!==0)throw Error(r(558))}return Ce(t),null;case 13:if(l=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(a=Tl(t),l!==null&&l.dehydrated!==null){if(e===null){if(!a)throw Error(r(318));if(a=t.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(r(317));a[Qe]=t}else Kn(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Ce(t),a=!1}else a=As(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=a),a=!0;if(!a)return t.flags&256?(ht(t),t):(ht(t),null)}return ht(t),(t.flags&128)!==0?(t.lanes=n,t):(n=l!==null,e=e!==null&&e.memoizedState!==null,n&&(l=t.child,a=null,l.alternate!==null&&l.alternate.memoizedState!==null&&l.alternate.memoizedState.cachePool!==null&&(a=l.alternate.memoizedState.cachePool.pool),s=null,l.memoizedState!==null&&l.memoizedState.cachePool!==null&&(s=l.memoizedState.cachePool.pool),s!==a&&(l.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),Vi(t,t.updateQueue),Ce(t),null);case 4:return De(),e===null&&Lc(t.stateNode.containerInfo),Ce(t),null;case 10:return $t(t.type),Ce(t),null;case 19:if(B(je),l=t.memoizedState,l===null)return Ce(t),null;if(a=(t.flags&128)!==0,s=l.rendering,s===null)if(a)Aa(l,!1);else{if(Me!==0||e!==null&&(e.flags&128)!==0)for(e=t.child;e!==null;){if(s=Mi(e),s!==null){for(t.flags|=128,Aa(l,!1),e=s.updateQueue,t.updateQueue=e,Vi(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)Vo(n,e),n=n.sibling;return V(je,je.current&1|2),ce&&Kt(t,l.treeForkCount),t.child}e=e.sibling}l.tail!==null&&st()>$i&&(t.flags|=128,a=!0,Aa(l,!1),t.lanes=4194304)}else{if(!a)if(e=Mi(s),e!==null){if(t.flags|=128,a=!0,e=e.updateQueue,t.updateQueue=e,Vi(t,e),Aa(l,!0),l.tail===null&&l.tailMode==="hidden"&&!s.alternate&&!ce)return Ce(t),null}else 2*st()-l.renderingStartTime>$i&&n!==536870912&&(t.flags|=128,a=!0,Aa(l,!1),t.lanes=4194304);l.isBackwards?(s.sibling=t.child,t.child=s):(e=l.last,e!==null?e.sibling=s:t.child=s,l.last=s)}return l.tail!==null?(e=l.tail,l.rendering=e,l.tail=e.sibling,l.renderingStartTime=st(),e.sibling=null,n=je.current,V(je,a?n&1|2:n&1),ce&&Kt(t,l.treeForkCount),e):(Ce(t),null);case 22:case 23:return ht(t),Hs(),l=t.memoizedState!==null,e!==null?e.memoizedState!==null!==l&&(t.flags|=8192):l&&(t.flags|=8192),l?(n&536870912)!==0&&(t.flags&128)===0&&(Ce(t),t.subtreeFlags&6&&(t.flags|=8192)):Ce(t),n=t.updateQueue,n!==null&&Vi(t,n.retryQueue),n=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),l=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(l=t.memoizedState.cachePool.pool),l!==n&&(t.flags|=2048),e!==null&&B(Wn),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),$t(Be),Ce(t),null;case 25:return null;case 30:return null}throw Error(r(156,t.tag))}function Dy(e,t){switch(Es(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return $t(Be),De(),e=t.flags,(e&65536)!==0&&(e&128)===0?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return ti(t),null;case 31:if(t.memoizedState!==null){if(ht(t),t.alternate===null)throw Error(r(340));Kn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(ht(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(r(340));Kn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return B(je),null;case 4:return De(),null;case 10:return $t(t.type),null;case 22:case 23:return ht(t),Hs(),e!==null&&B(Wn),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return $t(Be),null;case 25:return null;default:return null}}function gd(e,t){switch(Es(t),t.tag){case 3:$t(Be),De();break;case 26:case 27:case 5:ti(t);break;case 4:De();break;case 31:t.memoizedState!==null&&ht(t);break;case 13:ht(t);break;case 19:B(je);break;case 10:$t(t.type);break;case 22:case 23:ht(t),Hs(),e!==null&&B(Wn);break;case 24:$t(Be)}}function Ca(e,t){try{var n=t.updateQueue,l=n!==null?n.lastEffect:null;if(l!==null){var a=l.next;n=a;do{if((n.tag&e)===e){l=void 0;var s=n.create,o=n.inst;l=s(),o.destroy=l}n=n.next}while(n!==a)}}catch(h){pe(t,t.return,h)}}function Tn(e,t,n){try{var l=t.updateQueue,a=l!==null?l.lastEffect:null;if(a!==null){var s=a.next;l=s;do{if((l.tag&e)===e){var o=l.inst,h=o.destroy;if(h!==void 0){o.destroy=void 0,a=t;var g=n,R=h;try{R()}catch(D){pe(a,g,D)}}}l=l.next}while(l!==s)}}catch(D){pe(t,t.return,D)}}function bd(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{rf(t,n)}catch(l){pe(e,e.return,l)}}}function Sd(e,t,n){n.props=tl(e.type,e.memoizedProps),n.state=e.memoizedState;try{n.componentWillUnmount()}catch(l){pe(e,t,l)}}function Na(e,t){try{var n=e.ref;if(n!==null){switch(e.tag){case 26:case 27:case 5:var l=e.stateNode;break;case 30:l=e.stateNode;break;default:l=e.stateNode}typeof n=="function"?e.refCleanup=n(l):n.current=l}}catch(a){pe(e,t,a)}}function Lt(e,t){var n=e.ref,l=e.refCleanup;if(n!==null)if(typeof l=="function")try{l()}catch(a){pe(e,t,a)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n=="function")try{n(null)}catch(a){pe(e,t,a)}else n.current=null}function xd(e){var t=e.type,n=e.memoizedProps,l=e.stateNode;try{e:switch(t){case"button":case"input":case"select":case"textarea":n.autoFocus&&l.focus();break e;case"img":n.src?l.src=n.src:n.srcSet&&(l.srcset=n.srcSet)}}catch(a){pe(e,e.return,a)}}function yc(e,t,n){try{var l=e.stateNode;e0(l,e.type,n,t),l[et]=t}catch(a){pe(e,e.return,a)}}function _d(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&Mn(e.type)||e.tag===4}function vc(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||_d(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&&Mn(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 gc(e,t,n){var l=e.tag;if(l===5||l===6)e=e.stateNode,t?(n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n).insertBefore(e,t):(t=n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n,t.appendChild(e),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=Vt));else if(l!==4&&(l===27&&Mn(e.type)&&(n=e.stateNode,t=null),e=e.child,e!==null))for(gc(e,t,n),e=e.sibling;e!==null;)gc(e,t,n),e=e.sibling}function Qi(e,t,n){var l=e.tag;if(l===5||l===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(l!==4&&(l===27&&Mn(e.type)&&(n=e.stateNode),e=e.child,e!==null))for(Qi(e,t,n),e=e.sibling;e!==null;)Qi(e,t,n),e=e.sibling}function Ed(e){var t=e.stateNode,n=e.memoizedProps;try{for(var l=e.type,a=t.attributes;a.length;)t.removeAttributeNode(a[0]);$e(t,l,n),t[Qe]=e,t[et]=n}catch(s){pe(e,e.return,s)}}var en=!1,qe=!1,bc=!1,Td=typeof WeakSet=="function"?WeakSet:Set,Ve=null;function jy(e,t){if(e=e.containerInfo,Yc=du,e=Uo(e),ds(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var l=n.getSelection&&n.getSelection();if(l&&l.rangeCount!==0){n=l.anchorNode;var a=l.anchorOffset,s=l.focusNode;l=l.focusOffset;try{n.nodeType,s.nodeType}catch{n=null;break e}var o=0,h=-1,g=-1,R=0,D=0,U=e,O=null;t:for(;;){for(var M;U!==n||a!==0&&U.nodeType!==3||(h=o+a),U!==s||l!==0&&U.nodeType!==3||(g=o+l),U.nodeType===3&&(o+=U.nodeValue.length),(M=U.firstChild)!==null;)O=U,U=M;for(;;){if(U===e)break t;if(O===n&&++R===a&&(h=o),O===s&&++D===l&&(g=o),(M=U.nextSibling)!==null)break;U=O,O=U.parentNode}U=M}n=h===-1||g===-1?null:{start:h,end:g}}else n=null}n=n||{start:0,end:0}}else n=null;for(kc={focusedElem:e,selectionRange:n},du=!1,Ve=t;Ve!==null;)if(t=Ve,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,Ve=e;else for(;Ve!==null;){switch(t=Ve,s=t.alternate,e=t.flags,t.tag){case 0:if((e&4)!==0&&(e=t.updateQueue,e=e!==null?e.events:null,e!==null))for(n=0;n title"))),$e(s,l,n),s[Qe]=e,Ge(s),l=s;break e;case"link":var o=zh("link","href",a).get(l+(n.href||""));if(o){for(var h=0;hSe&&(o=Se,Se=W,W=o);var A=jo(h,W),x=jo(h,Se);if(A&&x&&(M.rangeCount!==1||M.anchorNode!==A.node||M.anchorOffset!==A.offset||M.focusNode!==x.node||M.focusOffset!==x.offset)){var N=U.createRange();N.setStart(A.node,A.offset),M.removeAllRanges(),W>Se?(M.addRange(N),M.extend(x.node,x.offset)):(N.setEnd(x.node,x.offset),M.addRange(N))}}}}for(U=[],M=h;M=M.parentNode;)M.nodeType===1&&U.push({element:M,left:M.scrollLeft,top:M.scrollTop});for(typeof h.focus=="function"&&h.focus(),h=0;hn?32:n,j.T=null,n=Cc,Cc=null;var s=Rn,o=un;if(ke=0,Hl=Rn=null,un=0,(de&6)!==0)throw Error(r(331));var h=de;if(de|=4,Ud(s.current),Dd(s,s.current,o,n),de=h,ja(0,!1),ct&&typeof ct.onPostCommitFiberRoot=="function")try{ct.onPostCommitFiberRoot(Fl,s)}catch{}return!0}finally{G.p=a,j.T=l,Id(e,t)}}function th(e,t,n){t=St(n,t),t=ic(e.stateNode,t,2),e=xn(e,t,2),e!==null&&(Il(e,2),Ht(e))}function pe(e,t,n){if(e.tag===3)th(e,e,n);else for(;t!==null;){if(t.tag===3){th(t,e,n);break}else if(t.tag===1){var l=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof l.componentDidCatch=="function"&&(Nn===null||!Nn.has(l))){e=St(n,e),n=nd(2),l=xn(t,n,2),l!==null&&(ld(n,l,t,e),Il(l,2),Ht(l));break}}t=t.return}}function zc(e,t,n){var l=e.pingCache;if(l===null){l=e.pingCache=new By;var a=new Set;l.set(t,a)}else a=l.get(t),a===void 0&&(a=new Set,l.set(t,a));a.has(n)||(_c=!0,a.add(n),e=ky.bind(null,e,t,n),t.then(e,e))}function ky(e,t,n){var l=e.pingCache;l!==null&&l.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,Ee===e&&(ue&n)===n&&(Me===4||Me===3&&(ue&62914560)===ue&&300>st()-Ji?(de&2)===0&&ql(e,0):Ec|=n,Ll===ue&&(Ll=0)),Ht(e)}function nh(e,t){t===0&&(t=Jr()),e=Qn(e,t),e!==null&&(Il(e,t),Ht(e))}function Xy(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),nh(e,n)}function Gy(e,t){var n=0;switch(e.tag){case 31:case 13:var l=e.stateNode,a=e.memoizedState;a!==null&&(n=a.retryLane);break;case 19:l=e.stateNode;break;case 22:l=e.stateNode._retryCache;break;default:throw Error(r(314))}l!==null&&l.delete(t),nh(e,n)}function Vy(e,t){return Gu(e,t)}var tu=null,kl=null,Mc=!1,nu=!1,Dc=!1,zn=0;function Ht(e){e!==kl&&e.next===null&&(kl===null?tu=kl=e:kl=kl.next=e),nu=!0,Mc||(Mc=!0,Zy())}function ja(e,t){if(!Dc&&nu){Dc=!0;do for(var n=!1,l=tu;l!==null;){if(e!==0){var a=l.pendingLanes;if(a===0)var s=0;else{var o=l.suspendedLanes,h=l.pingedLanes;s=(1<<31-rt(42|e)+1)-1,s&=a&~(o&~h),s=s&201326741?s&201326741|1:s?s|2:0}s!==0&&(n=!0,uh(l,s))}else s=ue,s=ui(l,l===Ee?s:0,l.cancelPendingCommit!==null||l.timeoutHandle!==-1),(s&3)===0||Pl(l,s)||(n=!0,uh(l,s));l=l.next}while(n);Dc=!1}}function Qy(){lh()}function lh(){nu=Mc=!1;var e=0;zn!==0&&n0()&&(e=zn);for(var t=st(),n=null,l=tu;l!==null;){var a=l.next,s=ah(l,t);s===0?(l.next=null,n===null?tu=a:n.next=a,a===null&&(kl=n)):(n=l,(e!==0||(s&3)!==0)&&(nu=!0)),l=a}ke!==0&&ke!==5||ja(e),zn!==0&&(zn=0)}function ah(e,t){for(var n=e.suspendedLanes,l=e.pingedLanes,a=e.expirationTimes,s=e.pendingLanes&-62914561;0h)break;var D=g.transferSize,U=g.initiatorType;D&&mh(U)&&(g=g.responseEnd,o+=D*(g"u"?null:document;function Ch(e,t,n){var l=Xl;if(l&&typeof t=="string"&&t){var a=gt(t);a='link[rel="'+e+'"][href="'+a+'"]',typeof n=="string"&&(a+='[crossorigin="'+n+'"]'),Ah.has(a)||(Ah.add(a),e={rel:e,crossOrigin:n,href:t},l.querySelector(a)===null&&(t=l.createElement("link"),$e(t,"link",e),Ge(t),l.head.appendChild(t)))}}function f0(e){sn.D(e),Ch("dns-prefetch",e,null)}function d0(e,t){sn.C(e,t),Ch("preconnect",e,t)}function h0(e,t,n){sn.L(e,t,n);var l=Xl;if(l&&e&&t){var a='link[rel="preload"][as="'+gt(t)+'"]';t==="image"&&n&&n.imageSrcSet?(a+='[imagesrcset="'+gt(n.imageSrcSet)+'"]',typeof n.imageSizes=="string"&&(a+='[imagesizes="'+gt(n.imageSizes)+'"]')):a+='[href="'+gt(e)+'"]';var s=a;switch(t){case"style":s=Gl(e);break;case"script":s=Vl(e)}Ct.has(s)||(e=S({rel:"preload",href:t==="image"&&n&&n.imageSrcSet?void 0:e,as:t},n),Ct.set(s,e),l.querySelector(a)!==null||t==="style"&&l.querySelector(La(s))||t==="script"&&l.querySelector(Ha(s))||(t=l.createElement("link"),$e(t,"link",e),Ge(t),l.head.appendChild(t)))}}function m0(e,t){sn.m(e,t);var n=Xl;if(n&&e){var l=t&&typeof t.as=="string"?t.as:"script",a='link[rel="modulepreload"][as="'+gt(l)+'"][href="'+gt(e)+'"]',s=a;switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":s=Vl(e)}if(!Ct.has(s)&&(e=S({rel:"modulepreload",href:e},t),Ct.set(s,e),n.querySelector(a)===null)){switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(n.querySelector(Ha(s)))return}l=n.createElement("link"),$e(l,"link",e),Ge(l),n.head.appendChild(l)}}}function p0(e,t,n){sn.S(e,t,n);var l=Xl;if(l&&e){var a=fl(l).hoistableStyles,s=Gl(e);t=t||"default";var o=a.get(s);if(!o){var h={loading:0,preload:null};if(o=l.querySelector(La(s)))h.loading=5;else{e=S({rel:"stylesheet",href:e,"data-precedence":t},n),(n=Ct.get(s))&&Jc(e,n);var g=o=l.createElement("link");Ge(g),$e(g,"link",e),g._p=new Promise(function(R,D){g.onload=R,g.onerror=D}),g.addEventListener("load",function(){h.loading|=1}),g.addEventListener("error",function(){h.loading|=2}),h.loading|=4,su(o,t,l)}o={type:"stylesheet",instance:o,count:1,state:h},a.set(s,o)}}}function y0(e,t){sn.X(e,t);var n=Xl;if(n&&e){var l=fl(n).hoistableScripts,a=Vl(e),s=l.get(a);s||(s=n.querySelector(Ha(a)),s||(e=S({src:e,async:!0},t),(t=Ct.get(a))&&$c(e,t),s=n.createElement("script"),Ge(s),$e(s,"link",e),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function v0(e,t){sn.M(e,t);var n=Xl;if(n&&e){var l=fl(n).hoistableScripts,a=Vl(e),s=l.get(a);s||(s=n.querySelector(Ha(a)),s||(e=S({src:e,async:!0,type:"module"},t),(t=Ct.get(a))&&$c(e,t),s=n.createElement("script"),Ge(s),$e(s,"link",e),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function Nh(e,t,n,l){var a=(a=le.current)?uu(a):null;if(!a)throw Error(r(446));switch(e){case"meta":case"title":return null;case"style":return typeof n.precedence=="string"&&typeof n.href=="string"?(t=Gl(n.href),n=fl(a).hoistableStyles,l=n.get(t),l||(l={type:"style",instance:null,count:0,state:null},n.set(t,l)),l):{type:"void",instance:null,count:0,state:null};case"link":if(n.rel==="stylesheet"&&typeof n.href=="string"&&typeof n.precedence=="string"){e=Gl(n.href);var s=fl(a).hoistableStyles,o=s.get(e);if(o||(a=a.ownerDocument||a,o={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},s.set(e,o),(s=a.querySelector(La(e)))&&!s._p&&(o.instance=s,o.state.loading=5),Ct.has(e)||(n={rel:"preload",as:"style",href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},Ct.set(e,n),s||g0(a,e,n,o.state))),t&&l===null)throw Error(r(528,""));return o}if(t&&l!==null)throw Error(r(529,""));return null;case"script":return t=n.async,n=n.src,typeof n=="string"&&t&&typeof t!="function"&&typeof t!="symbol"?(t=Vl(n),n=fl(a).hoistableScripts,l=n.get(t),l||(l={type:"script",instance:null,count:0,state:null},n.set(t,l)),l):{type:"void",instance:null,count:0,state:null};default:throw Error(r(444,e))}}function Gl(e){return'href="'+gt(e)+'"'}function La(e){return'link[rel="stylesheet"]['+e+"]"}function Rh(e){return S({},e,{"data-precedence":e.precedence,precedence:null})}function g0(e,t,n,l){e.querySelector('link[rel="preload"][as="style"]['+t+"]")?l.loading=1:(t=e.createElement("link"),l.preload=t,t.addEventListener("load",function(){return l.loading|=1}),t.addEventListener("error",function(){return l.loading|=2}),$e(t,"link",n),Ge(t),e.head.appendChild(t))}function Vl(e){return'[src="'+gt(e)+'"]'}function Ha(e){return"script[async]"+e}function Oh(e,t,n){if(t.count++,t.instance===null)switch(t.type){case"style":var l=e.querySelector('style[data-href~="'+gt(n.href)+'"]');if(l)return t.instance=l,Ge(l),l;var a=S({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return l=(e.ownerDocument||e).createElement("style"),Ge(l),$e(l,"style",a),su(l,n.precedence,e),t.instance=l;case"stylesheet":a=Gl(n.href);var s=e.querySelector(La(a));if(s)return t.state.loading|=4,t.instance=s,Ge(s),s;l=Rh(n),(a=Ct.get(a))&&Jc(l,a),s=(e.ownerDocument||e).createElement("link"),Ge(s);var o=s;return o._p=new Promise(function(h,g){o.onload=h,o.onerror=g}),$e(s,"link",l),t.state.loading|=4,su(s,n.precedence,e),t.instance=s;case"script":return s=Vl(n.src),(a=e.querySelector(Ha(s)))?(t.instance=a,Ge(a),a):(l=n,(a=Ct.get(s))&&(l=S({},n),$c(l,a)),e=e.ownerDocument||e,a=e.createElement("script"),Ge(a),$e(a,"link",l),e.head.appendChild(a),t.instance=a);case"void":return null;default:throw Error(r(443,t.type))}else t.type==="stylesheet"&&(t.state.loading&4)===0&&(l=t.instance,t.state.loading|=4,su(l,n.precedence,e));return t.instance}function su(e,t,n){for(var l=n.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=l.length?l[l.length-1]:null,s=a,o=0;o title"):null)}function b0(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case"meta":case"title":return!0;case"style":if(typeof t.precedence!="string"||typeof t.href!="string"||t.href==="")break;return!0;case"link":if(typeof t.rel!="string"||typeof t.href!="string"||t.href===""||t.onLoad||t.onError)break;switch(t.rel){case"stylesheet":return e=t.disabled,typeof t.precedence=="string"&&e==null;default:return!0}case"script":if(t.async&&typeof t.async!="function"&&typeof t.async!="symbol"&&!t.onLoad&&!t.onError&&t.src&&typeof t.src=="string")return!0}return!1}function Dh(e){return!(e.type==="stylesheet"&&(e.state.loading&3)===0)}function S0(e,t,n,l){if(n.type==="stylesheet"&&(typeof l.media!="string"||matchMedia(l.media).matches!==!1)&&(n.state.loading&4)===0){if(n.instance===null){var a=Gl(l.href),s=t.querySelector(La(a));if(s){t=s._p,t!==null&&typeof t=="object"&&typeof t.then=="function"&&(e.count++,e=ru.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=s,Ge(s);return}s=t.ownerDocument||t,l=Rh(l),(a=Ct.get(a))&&Jc(l,a),s=s.createElement("link"),Ge(s);var o=s;o._p=new Promise(function(h,g){o.onload=h,o.onerror=g}),$e(s,"link",l),n.instance=s}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&(n.state.loading&3)===0&&(e.count++,n=ru.bind(e),t.addEventListener("load",n),t.addEventListener("error",n))}}var Wc=0;function x0(e,t){return e.stylesheets&&e.count===0&&fu(e,e.stylesheets),0Wc?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(l),clearTimeout(a)}}:null}function ru(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)fu(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var ou=null;function fu(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,ou=new Map,t.forEach(_0,e),ou=null,ru.call(e))}function _0(e,t){if(!(t.state.loading&4)){var n=ou.get(e);if(n)var l=n.get(null);else{n=new Map,ou.set(e,n);for(var a=e.querySelectorAll("link[data-precedence],style[data-precedence]"),s=0;s"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(u)}catch(i){console.error(i)}}return u(),ir.exports=H0(),ir.exports}var Y0=q0();var nm="popstate";function k0(u={}){function i(r,f){let{pathname:d,search:m,hash:b}=r.location;return yr("",{pathname:d,search:m,hash:b},f.state&&f.state.usr||null,f.state&&f.state.key||"default")}function c(r,f){return typeof f=="string"?f:Wa(f)}return G0(i,c,null,u)}function Oe(u,i){if(u===!1||u===null||typeof u>"u")throw new Error(i)}function jt(u,i){if(!u){typeof console<"u"&&console.warn(i);try{throw new Error(i)}catch{}}}function X0(){return Math.random().toString(36).substring(2,10)}function lm(u,i){return{usr:u.state,key:u.key,idx:i}}function yr(u,i,c=null,r){return{pathname:typeof u=="string"?u:u.pathname,search:"",hash:"",...typeof i=="string"?Kl(i):i,state:c,key:i&&i.key||r||X0()}}function Wa({pathname:u="/",search:i="",hash:c=""}){return i&&i!=="?"&&(u+=i.charAt(0)==="?"?i:"?"+i),c&&c!=="#"&&(u+=c.charAt(0)==="#"?c:"#"+c),u}function Kl(u){let i={};if(u){let c=u.indexOf("#");c>=0&&(i.hash=u.substring(c),u=u.substring(0,c));let r=u.indexOf("?");r>=0&&(i.search=u.substring(r),u=u.substring(0,r)),u&&(i.pathname=u)}return i}function G0(u,i,c,r={}){let{window:f=document.defaultView,v5Compat:d=!1}=r,m=f.history,b="POP",y=null,v=T();v==null&&(v=0,m.replaceState({...m.state,idx:v},""));function T(){return(m.state||{idx:null}).idx}function S(){b="POP";let q=T(),H=q==null?null:q-v;v=q,y&&y({action:b,location:X.location,delta:H})}function C(q,H){b="PUSH";let Y=yr(X.location,q,H);v=T()+1;let k=lm(Y,v),F=X.createHref(Y);try{m.pushState(k,"",F)}catch(ye){if(ye instanceof DOMException&&ye.name==="DataCloneError")throw ye;f.location.assign(F)}d&&y&&y({action:b,location:X.location,delta:1})}function z(q,H){b="REPLACE";let Y=yr(X.location,q,H);v=T();let k=lm(Y,v),F=X.createHref(Y);m.replaceState(k,"",F),d&&y&&y({action:b,location:X.location,delta:0})}function L(q){return V0(q)}let X={get action(){return b},get location(){return u(f,m)},listen(q){if(y)throw new Error("A history only accepts one active listener");return f.addEventListener(nm,S),y=q,()=>{f.removeEventListener(nm,S),y=null}},createHref(q){return i(f,q)},createURL:L,encodeLocation(q){let H=L(q);return{pathname:H.pathname,search:H.search,hash:H.hash}},push:C,replace:z,go(q){return m.go(q)}};return X}function V0(u,i=!1){let c="http://localhost";typeof window<"u"&&(c=window.location.origin!=="null"?window.location.origin:window.location.href),Oe(c,"No window.location.(origin|href) available to create URL");let r=typeof u=="string"?u:Wa(u);return r=r.replace(/ $/,"%20"),!i&&r.startsWith("//")&&(r=c+r),new URL(r,c)}function _m(u,i,c="/"){return Q0(u,i,c,!1)}function Q0(u,i,c,r){let f=typeof i=="string"?Kl(i):i,d=on(f.pathname||"/",c);if(d==null)return null;let m=Em(u);Z0(m);let b=null;for(let y=0;b==null&&y{let T={relativePath:v===void 0?m.path||"":v,caseSensitive:m.caseSensitive===!0,childrenIndex:b,route:m};if(T.relativePath.startsWith("/")){if(!T.relativePath.startsWith(r)&&y)return;Oe(T.relativePath.startsWith(r),`Absolute route path "${T.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),T.relativePath=T.relativePath.slice(r.length)}let S=rn([r,T.relativePath]),C=c.concat(T);m.children&&m.children.length>0&&(Oe(m.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${S}".`),Em(m.children,i,C,S,y)),!(m.path==null&&!m.index)&&i.push({path:S,score:I0(S,m.index),routesMeta:C})};return u.forEach((m,b)=>{if(m.path===""||!m.path?.includes("?"))d(m,b);else for(let y of Tm(m.path))d(m,b,!0,y)}),i}function Tm(u){let i=u.split("/");if(i.length===0)return[];let[c,...r]=i,f=c.endsWith("?"),d=c.replace(/\?$/,"");if(r.length===0)return f?[d,""]:[d];let m=Tm(r.join("/")),b=[];return b.push(...m.map(y=>y===""?d:[d,y].join("/"))),f&&b.push(...m),b.map(y=>u.startsWith("/")&&y===""?"/":y)}function Z0(u){u.sort((i,c)=>i.score!==c.score?c.score-i.score:ev(i.routesMeta.map(r=>r.childrenIndex),c.routesMeta.map(r=>r.childrenIndex)))}var K0=/^:[\w-]+$/,J0=3,$0=2,W0=1,F0=10,P0=-2,am=u=>u==="*";function I0(u,i){let c=u.split("/"),r=c.length;return c.some(am)&&(r+=P0),i&&(r+=$0),c.filter(f=>!am(f)).reduce((f,d)=>f+(K0.test(d)?J0:d===""?W0:F0),r)}function ev(u,i){return u.length===i.length&&u.slice(0,-1).every((r,f)=>r===i[f])?u[u.length-1]-i[i.length-1]:0}function tv(u,i,c=!1){let{routesMeta:r}=u,f={},d="/",m=[];for(let b=0;b{if(T==="*"){let L=b[C]||"";m=d.slice(0,d.length-L.length).replace(/(.)\/+$/,"$1")}const z=b[C];return S&&!z?v[T]=void 0:v[T]=(z||"").replace(/%2F/g,"/"),v},{}),pathname:d,pathnameBase:m,pattern:u}}function nv(u,i=!1,c=!0){jt(u==="*"||!u.endsWith("*")||u.endsWith("/*"),`Route path "${u}" will be treated as if it were "${u.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${u.replace(/\*$/,"/*")}".`);let r=[],f="^"+u.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(m,b,y)=>(r.push({paramName:b,isOptional:y!=null}),y?"/?([^\\/]+)?":"/([^\\/]+)")).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return u.endsWith("*")?(r.push({paramName:"*"}),f+=u==="*"||u==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):c?f+="\\/*$":u!==""&&u!=="/"&&(f+="(?:(?=\\/|$))"),[new RegExp(f,i?void 0:"i"),r]}function lv(u){try{return u.split("/").map(i=>decodeURIComponent(i).replace(/\//g,"%2F")).join("/")}catch(i){return jt(!1,`The URL path "${u}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${i}).`),u}}function on(u,i){if(i==="/")return u;if(!u.toLowerCase().startsWith(i.toLowerCase()))return null;let c=i.endsWith("/")?i.length-1:i.length,r=u.charAt(c);return r&&r!=="/"?null:u.slice(c)||"/"}var av=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,iv=u=>av.test(u);function uv(u,i="/"){let{pathname:c,search:r="",hash:f=""}=typeof u=="string"?Kl(u):u,d;if(c)if(iv(c))d=c;else{if(c.includes("//")){let m=c;c=c.replace(/\/\/+/g,"/"),jt(!1,`Pathnames cannot have embedded double slashes - normalizing ${m} -> ${c}`)}c.startsWith("/")?d=im(c.substring(1),"/"):d=im(c,i)}else d=i;return{pathname:d,search:rv(r),hash:ov(f)}}function im(u,i){let c=i.replace(/\/+$/,"").split("/");return u.split("/").forEach(f=>{f===".."?c.length>1&&c.pop():f!=="."&&c.push(f)}),c.length>1?c.join("/"):"/"}function rr(u,i,c,r){return`Cannot include a '${u}' character in a manually specified \`to.${i}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${c}\` field. Alternatively you may provide the full path as a string in and the router will parse it for you.`}function sv(u){return u.filter((i,c)=>c===0||i.route.path&&i.route.path.length>0)}function Am(u){let i=sv(u);return i.map((c,r)=>r===i.length-1?c.pathname:c.pathnameBase)}function Cm(u,i,c,r=!1){let f;typeof u=="string"?f=Kl(u):(f={...u},Oe(!f.pathname||!f.pathname.includes("?"),rr("?","pathname","search",f)),Oe(!f.pathname||!f.pathname.includes("#"),rr("#","pathname","hash",f)),Oe(!f.search||!f.search.includes("#"),rr("#","search","hash",f)));let d=u===""||f.pathname==="",m=d?"/":f.pathname,b;if(m==null)b=c;else{let S=i.length-1;if(!r&&m.startsWith("..")){let C=m.split("/");for(;C[0]==="..";)C.shift(),S-=1;f.pathname=C.join("/")}b=S>=0?i[S]:"/"}let y=uv(f,b),v=m&&m!=="/"&&m.endsWith("/"),T=(d||m===".")&&c.endsWith("/");return!y.pathname.endsWith("/")&&(v||T)&&(y.pathname+="/"),y}var rn=u=>u.join("/").replace(/\/\/+/g,"/"),cv=u=>u.replace(/\/+$/,"").replace(/^\/*/,"/"),rv=u=>!u||u==="?"?"":u.startsWith("?")?u:"?"+u,ov=u=>!u||u==="#"?"":u.startsWith("#")?u:"#"+u;function fv(u){return u!=null&&typeof u.status=="number"&&typeof u.statusText=="string"&&typeof u.internal=="boolean"&&"data"in u}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var Nm=["POST","PUT","PATCH","DELETE"];new Set(Nm);var dv=["GET",...Nm];new Set(dv);var Jl=E.createContext(null);Jl.displayName="DataRouter";var Du=E.createContext(null);Du.displayName="DataRouterState";E.createContext(!1);var Rm=E.createContext({isTransitioning:!1});Rm.displayName="ViewTransition";var hv=E.createContext(new Map);hv.displayName="Fetchers";var mv=E.createContext(null);mv.displayName="Await";var kt=E.createContext(null);kt.displayName="Navigation";var Fa=E.createContext(null);Fa.displayName="Location";var fn=E.createContext({outlet:null,matches:[],isDataRoute:!1});fn.displayName="Route";var Ar=E.createContext(null);Ar.displayName="RouteError";function pv(u,{relative:i}={}){Oe(Pa(),"useHref() may be used only in the context of a component.");let{basename:c,navigator:r}=E.useContext(kt),{hash:f,pathname:d,search:m}=Ia(u,{relative:i}),b=d;return c!=="/"&&(b=d==="/"?c:rn([c,d])),r.createHref({pathname:b,search:m,hash:f})}function Pa(){return E.useContext(Fa)!=null}function sl(){return Oe(Pa(),"useLocation() may be used only in the context of a component."),E.useContext(Fa).location}var Om="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function zm(u){E.useContext(kt).static||E.useLayoutEffect(u)}function yv(){let{isDataRoute:u}=E.useContext(fn);return u?Ov():vv()}function vv(){Oe(Pa(),"useNavigate() may be used only in the context of a component.");let u=E.useContext(Jl),{basename:i,navigator:c}=E.useContext(kt),{matches:r}=E.useContext(fn),{pathname:f}=sl(),d=JSON.stringify(Am(r)),m=E.useRef(!1);return zm(()=>{m.current=!0}),E.useCallback((y,v={})=>{if(jt(m.current,Om),!m.current)return;if(typeof y=="number"){c.go(y);return}let T=Cm(y,JSON.parse(d),f,v.relative==="path");u==null&&i!=="/"&&(T.pathname=T.pathname==="/"?i:rn([i,T.pathname])),(v.replace?c.replace:c.push)(T,v.state,v)},[i,c,d,f,u])}E.createContext(null);function Ia(u,{relative:i}={}){let{matches:c}=E.useContext(fn),{pathname:r}=sl(),f=JSON.stringify(Am(c));return E.useMemo(()=>Cm(u,JSON.parse(f),r,i==="path"),[u,f,r,i])}function gv(u,i){return Mm(u,i)}function Mm(u,i,c,r,f){Oe(Pa(),"useRoutes() may be used only in the context of a component.");let{navigator:d}=E.useContext(kt),{matches:m}=E.useContext(fn),b=m[m.length-1],y=b?b.params:{},v=b?b.pathname:"/",T=b?b.pathnameBase:"/",S=b&&b.route;{let Y=S&&S.path||"";Dm(v,!S||Y.endsWith("*")||Y.endsWith("*?"),`You rendered descendant (or called \`useRoutes()\`) at "${v}" (under ) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render. -Please change the parent to .`)}let C=sl(),z;if(i){let Y=typeof i=="string"?Kl(i):i;Oe(T==="/"||Y.pathname?.startsWith(T),`When overriding the location using \`\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${T}" but pathname "${Y.pathname}" was given in the \`location\` prop.`),z=Y}else z=C;let L=z.pathname||"/",X=L;if(T!=="/"){let Y=T.replace(/^\//,"").split("/");X="/"+L.replace(/^\//,"").split("/").slice(Y.length).join("/")}let q=_m(u,{pathname:X});jt(S||q!=null,`No routes matched location "${z.pathname}${z.search}${z.hash}" `),jt(q==null||q[q.length-1].route.element!==void 0||q[q.length-1].route.Component!==void 0||q[q.length-1].route.lazy!==void 0,`Matched leaf route at location "${z.pathname}${z.search}${z.hash}" does not have an element or Component. This means it will render an with a null value by default resulting in an "empty" page.`);let H=Ev(q&&q.map(Y=>Object.assign({},Y,{params:Object.assign({},y,Y.params),pathname:rn([T,h.encodeLocation?h.encodeLocation(Y.pathname.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:Y.pathname]),pathnameBase:Y.pathnameBase==="/"?T:rn([T,h.encodeLocation?h.encodeLocation(Y.pathnameBase.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:Y.pathnameBase])})),m,c,r,f);return i&&H?E.createElement(Fa.Provider,{value:{location:{pathname:"/",search:"",hash:"",state:null,key:"default",...z},navigationType:"POP"}},H):H}function bv(){let u=Nv(),i=fv(u)?`${u.status} ${u.statusText}`:u instanceof Error?u.message:JSON.stringify(u),c=u instanceof Error?u.stack:null,r="rgba(200,200,200, 0.5)",f={padding:"0.5rem",backgroundColor:r},h={padding:"2px 4px",backgroundColor:r},m=null;return console.error("Error handled by React Router default ErrorBoundary:",u),m=E.createElement(E.Fragment,null,E.createElement("p",null,"💿 Hey developer 👋"),E.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",E.createElement("code",{style:h},"ErrorBoundary")," or"," ",E.createElement("code",{style:h},"errorElement")," prop on your route.")),E.createElement(E.Fragment,null,E.createElement("h2",null,"Unexpected Application Error!"),E.createElement("h3",{style:{fontStyle:"italic"}},i),c?E.createElement("pre",{style:f},c):null,m)}var Sv=E.createElement(bv,null),xv=class extends E.Component{constructor(u){super(u),this.state={location:u.location,revalidation:u.revalidation,error:u.error}}static getDerivedStateFromError(u){return{error:u}}static getDerivedStateFromProps(u,i){return i.location!==u.location||i.revalidation!=="idle"&&u.revalidation==="idle"?{error:u.error,location:u.location,revalidation:u.revalidation}:{error:u.error!==void 0?u.error:i.error,location:i.location,revalidation:u.revalidation||i.revalidation}}componentDidCatch(u,i){this.props.onError?this.props.onError(u,i):console.error("React Router caught the following error during render",u)}render(){return this.state.error!==void 0?E.createElement(fn.Provider,{value:this.props.routeContext},E.createElement(Tr.Provider,{value:this.state.error,children:this.props.component})):this.props.children}};function _v({routeContext:u,match:i,children:c}){let r=E.useContext(Jl);return r&&r.static&&r.staticContext&&(i.route.errorElement||i.route.ErrorBoundary)&&(r.staticContext._deepestRenderedBoundaryId=i.route.id),E.createElement(fn.Provider,{value:u},c)}function Ev(u,i=[],c=null,r=null,f=null){if(u==null){if(!c)return null;if(c.errors)u=c.matches;else if(i.length===0&&!c.initialized&&c.matches.length>0)u=c.matches;else return null}let h=u,m=c?.errors;if(m!=null){let T=h.findIndex(S=>S.route.id&&m?.[S.route.id]!==void 0);Oe(T>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(m).join(",")}`),h=h.slice(0,Math.min(h.length,T+1))}let b=!1,y=-1;if(c)for(let T=0;T=0?h=h.slice(0,y+1):h=[h[0]];break}}}let v=c&&r?(T,S)=>{r(T,{location:c.location,params:c.matches?.[0]?.params??{},errorInfo:S})}:void 0;return h.reduceRight((T,S,C)=>{let z,L=!1,X=null,q=null;c&&(z=m&&S.route.id?m[S.route.id]:void 0,X=S.route.errorElement||Sv,b&&(y<0&&C===0?(Dm("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),L=!0,q=null):y===C&&(L=!0,q=S.route.hydrateFallbackElement||null)));let H=i.concat(h.slice(0,C+1)),Y=()=>{let k;return z?k=X:L?k=q:S.route.Component?k=E.createElement(S.route.Component,null):S.route.element?k=S.route.element:k=T,E.createElement(_v,{match:S,routeContext:{outlet:T,matches:H,isDataRoute:c!=null},children:k})};return c&&(S.route.ErrorBoundary||S.route.errorElement||C===0)?E.createElement(xv,{location:c.location,revalidation:c.revalidation,component:X,error:z,children:Y(),routeContext:{outlet:null,matches:H,isDataRoute:!0},onError:v}):Y()},null)}function Ar(u){return`${u} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function Tv(u){let i=E.useContext(Jl);return Oe(i,Ar(u)),i}function Av(u){let i=E.useContext(Du);return Oe(i,Ar(u)),i}function Cv(u){let i=E.useContext(fn);return Oe(i,Ar(u)),i}function Cr(u){let i=Cv(u),c=i.matches[i.matches.length-1];return Oe(c.route.id,`${u} can only be used on routes that contain a unique "id"`),c.route.id}function Rv(){return Cr("useRouteId")}function Nv(){let u=E.useContext(Tr),i=Av("useRouteError"),c=Cr("useRouteError");return u!==void 0?u:i.errors?.[c]}function Ov(){let{router:u}=Tv("useNavigate"),i=Cr("useNavigate"),c=E.useRef(!1);return zm(()=>{c.current=!0}),E.useCallback(async(f,h={})=>{jt(c.current,Om),c.current&&(typeof f=="number"?u.navigate(f):await u.navigate(f,{fromRouteId:i,...h}))},[u,i])}var um={};function Dm(u,i,c){!i&&!um[u]&&(um[u]=!0,jt(!1,c))}E.memo(zv);function zv({routes:u,future:i,state:c,unstable_onError:r}){return Mm(u,void 0,c,r,i)}function yr(u){Oe(!1,"A is only ever to be used as the child of element, never rendered directly. Please wrap your in a .")}function Mv({basename:u="/",children:i=null,location:c,navigationType:r="POP",navigator:f,static:h=!1}){Oe(!Pa(),"You cannot render a inside another . You should never have more than one in your app.");let m=u.replace(/^\/*/,"/"),b=E.useMemo(()=>({basename:m,navigator:f,static:h,future:{}}),[m,f,h]);typeof c=="string"&&(c=Kl(c));let{pathname:y="/",search:v="",hash:T="",state:S=null,key:C="default"}=c,z=E.useMemo(()=>{let L=on(y,m);return L==null?null:{location:{pathname:L,search:v,hash:T,state:S,key:C},navigationType:r}},[m,y,v,T,S,C,r]);return jt(z!=null,` is not able to match the URL "${y}${v}${T}" because it does not start with the basename, so the won't render anything.`),z==null?null:E.createElement(Yt.Provider,{value:b},E.createElement(Fa.Provider,{children:i,value:z}))}function Dv({children:u,location:i}){return gv(vr(u),i)}function vr(u,i=[]){let c=[];return E.Children.forEach(u,(r,f)=>{if(!E.isValidElement(r))return;let h=[...i,f];if(r.type===E.Fragment){c.push.apply(c,vr(r.props.children,h));return}Oe(r.type===yr,`[${typeof r.type=="string"?r.type:r.type.name}] is not a component. All component children of must be a or `),Oe(!r.props.index||!r.props.children,"An index route cannot have child routes.");let m={id:r.props.id||h.join("-"),caseSensitive:r.props.caseSensitive,element:r.props.element,Component:r.props.Component,index:r.props.index,path:r.props.path,middleware:r.props.middleware,loader:r.props.loader,action:r.props.action,hydrateFallbackElement:r.props.hydrateFallbackElement,HydrateFallback:r.props.HydrateFallback,errorElement:r.props.errorElement,ErrorBoundary:r.props.ErrorBoundary,hasErrorBoundary:r.props.hasErrorBoundary===!0||r.props.ErrorBoundary!=null||r.props.errorElement!=null,shouldRevalidate:r.props.shouldRevalidate,handle:r.props.handle,lazy:r.props.lazy};r.props.children&&(m.children=vr(r.props.children,h)),c.push(m)}),c}var Tu="get",Au="application/x-www-form-urlencoded";function ju(u){return u!=null&&typeof u.tagName=="string"}function jv(u){return ju(u)&&u.tagName.toLowerCase()==="button"}function wv(u){return ju(u)&&u.tagName.toLowerCase()==="form"}function Uv(u){return ju(u)&&u.tagName.toLowerCase()==="input"}function Bv(u){return!!(u.metaKey||u.altKey||u.ctrlKey||u.shiftKey)}function Lv(u,i){return u.button===0&&(!i||i==="_self")&&!Bv(u)}var bu=null;function Hv(){if(bu===null)try{new FormData(document.createElement("form"),0),bu=!1}catch{bu=!0}return bu}var qv=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function rr(u){return u!=null&&!qv.has(u)?(jt(!1,`"${u}" is not a valid \`encType\` for \`\`/\`\` and will default to "${Au}"`),null):u}function Yv(u,i){let c,r,f,h,m;if(wv(u)){let b=u.getAttribute("action");r=b?on(b,i):null,c=u.getAttribute("method")||Tu,f=rr(u.getAttribute("enctype"))||Au,h=new FormData(u)}else if(jv(u)||Uv(u)&&(u.type==="submit"||u.type==="image")){let b=u.form;if(b==null)throw new Error('Cannot submit a
); diff --git a/webui/src/components/ModeGateOverlay.jsx b/webui/src/components/ModeGateOverlay.jsx new file mode 100644 index 00000000..3c5f2c62 --- /dev/null +++ b/webui/src/components/ModeGateOverlay.jsx @@ -0,0 +1,52 @@ +import AuthPanel from './AuthPanel.jsx'; +import { useSession } from '../context/SessionContext.jsx'; + +const PRIVILEGED_ROLES = new Set(['admin', 'lockdown', 'lockdown-admin']); +const RESTRICTED_MODES = new Set(['admin', 'lockdown']); + +function getModeDetails(mode = 'admin') { + if (mode === 'lockdown') { + return { + title: 'Lockdown in effect', + description: + 'Only the lockdown admin can remain connected right now. If you have credentials, log in below. Otherwise please stand by until the server re-opens.', + }; + } + return { + title: 'Admin mode active', + description: + 'The server is temporarily restricted to administrators. Log in below if you are authorized, or wait for admin mode to end.', + }; +} + +export default function ModeGateOverlay() { + const { session } = useSession(); + const mode = session?.mode; + const role = session?.role; + const restricted = RESTRICTED_MODES.has(mode); + const privileged = PRIVILEGED_ROLES.has(role); + + if (!restricted || privileged) { + return null; + } + + const details = getModeDetails(mode); + + return ( +
+
+
+

{details.title}

+

{details.description}

+
+
+ +
+

+ Your controls are paused until access is granted. You will automatically regain the interface once the mode + changes or after a successful login. +

+
+
+ ); +} From 9fa1656b6d31729636e417c222685b8d1ab194dd Mon Sep 17 00:00:00 2001 From: legop3 Date: Mon, 17 Nov 2025 16:20:39 -0500 Subject: [PATCH 61/61] guh --- pi_camera_servo_outline.md | 13 +++++++++++++ problems.md | 8 ++++++-- 2 files changed, 19 insertions(+), 2 deletions(-) create mode 100644 pi_camera_servo_outline.md diff --git a/pi_camera_servo_outline.md b/pi_camera_servo_outline.md new file mode 100644 index 00000000..66632b32 --- /dev/null +++ b/pi_camera_servo_outline.md @@ -0,0 +1,13 @@ +# general idea +- servo connected to pin 19 on the pi + - it will allow the camera to look up and down +- use go-rpio + - it has a hardware PWM implementation +- mechanical design will have limits + - set the limits in roverd config +- control the servo from the web browser + - expose both a slider and buttons for "nudging" it up and down + +## verification of functionality before full implementation +- make sure that the go program can properly use the GPIO correctly before full implementation +- modify the roverd installer to add the needed stuff to enable PWM access \ No newline at end of file diff --git a/problems.md b/problems.md index c3d51c99..2474124c 100644 --- a/problems.md +++ b/problems.md @@ -8,6 +8,10 @@ - OI mode is not decoded properly - says "safe" when in passive, and "unknown" when in full. -## react UI and auth -- after logging in as an admin and selecting a rover, the UI is still greyed out and blocked. No video shows +## UI and session info +- UI needs a display for the turns mode +## Mobile UI +- need to make it good +- joystick needs to be floating +- aux motor buttons need redone \ No newline at end of file