From b491d91ec582e4b7570cfce7c648aba273a36e20 Mon Sep 17 00:00:00 2001 From: legop3 Date: Fri, 1 May 2026 01:18:21 -0400 Subject: [PATCH] community goal? never jnew her --- .gitignore | 2 +- rulesdocs/refector_rules_and_tracking.md | 2 +- server/index.js | 2 +- .../{index-DBuBh8sB.js => index-DIzOCfJB.js} | 6 +-- server/public/index.html | 2 +- .../discordBotService/commands/goal.js | 18 ++++---- .../discordBotService/commands/help.js | 2 +- .../src/services/discordBotService/index.js | 10 ++--- .../integrations/busEvents.js | 4 +- .../services/discordBotService/presence.js | 26 +++++------ .../index.js | 44 ++++++++++++------- server/src/services/sessionService/index.js | 8 ++-- webui/src/App.jsx | 6 +-- .../AdminPanel/AdminPanelContent.jsx | 17 ++++--- .../index.jsx | 12 ++--- webui/src/context/SessionContext.jsx | 2 +- .../SpectatorApp/SpectatorContent.jsx | 6 +-- 17 files changed, 89 insertions(+), 80 deletions(-) rename server/public/assets/{index-DBuBh8sB.js => index-DIzOCfJB.js} (68%) rename server/src/services/{communityGoalService => globalObjectiveService}/index.js (57%) rename webui/src/components/{CommunityGoalBanner => GlobalObjectiveBanner}/index.jsx (90%) diff --git a/.gitignore b/.gitignore index 871bf0d2..3bafd6d9 100644 --- a/.gitignore +++ b/.gitignore @@ -14,6 +14,6 @@ server/config.yaml server/package-lock.json package-lock.json server/data/discord-guilds.json -server/data/community-goal.json +server/data/global-objective.json server/data/admin-reason.json server/data diff --git a/rulesdocs/refector_rules_and_tracking.md b/rulesdocs/refector_rules_and_tracking.md index 711b917e..c7b30ec0 100644 --- a/rulesdocs/refector_rules_and_tracking.md +++ b/rulesdocs/refector_rules_and_tracking.md @@ -73,7 +73,7 @@ - Continued `roverManager` split by extracting sensor processing + private safety + dock guard logic into `roverManager/sensorPipeline.js`. - Finished `roverManager` decomposition by extracting private access policy, roster lifecycle, and spectator/auto-close orchestration into `roverManager/privateAccess.js`, `roverManager/rosterLifecycle.js`, and `roverManager/spectatorAccess.js`; `roverManager/index.js` is now a thin composition layer. - Hotfix: corrected `llmCommentaryService` prompt file path to `server/prompts/commentary_system.txt` after service folder move. -- Hotfix: added `server/src/helpers/dataPaths.js` and rewired data-backed services to resolve canonical + legacy data-file locations safely after folderization (`adminReason`, `audioLevels`, `buttonBox`, `communityGoal`, `discordGuildStore`, `verification`, `replayEngineV2`). +- Hotfix: added `server/src/helpers/dataPaths.js` and rewired data-backed services to resolve canonical + legacy data-file locations safely after folderization (`adminReason`, `audioLevels`, `buttonBox`, `globalObjective`, `discordGuildStore`, `verification`, `replayEngineV2`). - Began `llmCommentaryService` decomposition by extracting immutable runtime limits/path/frequency normalization to `llmCommentaryService/constants.js` and pure prompt/text output helpers to `llmCommentaryService/formatters.js`. - Continued `llmCommentaryService` decomposition by extracting admin/runtime projection + failure-normalization helpers to `llmCommentaryService/runtimeHelpers.js`. - Continued `llmCommentaryService` decomposition by extracting sensor activity aggregation and snapshot assembly to `llmCommentaryService/snapshotEngine.js`; rewired commentary tick/event flow to use the new engine. diff --git a/server/index.js b/server/index.js index dbc97778..80d55259 100644 --- a/server/index.js +++ b/server/index.js @@ -20,7 +20,7 @@ require('./src/services/verificationService'); require('./src/services/privateRoverAccessRequestService'); require('./src/services/chatService'); require('./src/services/llmCommentaryService'); -require('./src/services/communityGoalService'); +require('./src/services/globalObjectiveService'); require('./src/services/serverControlService'); require('./src/services/videoSessions'); require('./src/services/videoAuthService'); diff --git a/server/public/assets/index-DBuBh8sB.js b/server/public/assets/index-DIzOCfJB.js similarity index 68% rename from server/public/assets/index-DBuBh8sB.js rename to server/public/assets/index-DIzOCfJB.js index 12d3ff05..2d67e717 100644 --- a/server/public/assets/index-DBuBh8sB.js +++ b/server/public/assets/index-DIzOCfJB.js @@ -8,13 +8,13 @@ Error generating stack: `+i.message+` `+i.stack}}var le=Object.prototype.hasOwnProperty,J=n.unstable_scheduleCallback,he=n.unstable_cancelCallback,Ne=n.unstable_shouldYield,ht=n.unstable_requestPaint,Oe=n.unstable_now,rt=n.unstable_getCurrentPriorityLevel,ot=n.unstable_ImmediatePriority,gt=n.unstable_UserBlockingPriority,kt=n.unstable_NormalPriority,us=n.unstable_LowPriority,Lt=n.unstable_IdlePriority,ul=n.log,dl=n.unstable_setDisableYieldValue,yn=null,wt=null;function an(e){if(typeof ul=="function"&&dl(e),wt&&typeof wt.setStrictMode=="function")try{wt.setStrictMode(yn,e)}catch{}}var vt=Math.clz32?Math.clz32:Lo,Oo=Math.log,ds=Math.LN2;function Lo(e){return e>>>=0,e===0?32:31-(Oo(e)/ds|0)|0}var Oa=256,We=262144,fs=4194304;function Ft(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 ua(e,t,a){var i=e.pendingLanes;if(i===0)return 0;var c=0,u=e.suspendedLanes,b=e.pingedLanes;e=e.warmLanes;var j=i&134217727;return j!==0?(i=j&~u,i!==0?c=Ft(i):(b&=j,b!==0?c=Ft(b):a||(a=j&~e,a!==0&&(c=Ft(a))))):(j=i&~u,j!==0?c=Ft(j):b!==0?c=Ft(b):a||(a=i&~e,a!==0&&(c=Ft(a)))),c===0?0:t!==0&&t!==c&&(t&u)===0&&(u=c&-c,a=t&-t,u>=a||u===32&&(a&4194048)!==0)?t:c}function Mn(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function Ri(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 qi(){var e=fs;return fs<<=1,(fs&62914560)===0&&(fs=4194304),e}function fl(e){for(var t=[],a=0;31>a;a++)t.push(e);return t}function La(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function Ti(e,t,a,i,c,u){var b=e.pendingLanes;e.pendingLanes=a,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=a,e.entangledLanes&=a,e.errorRecoveryDisabledLanes&=a,e.shellSuspendCounter=0;var j=e.entanglements,_=e.expirationTimes,F=e.hiddenUpdates;for(a=b&~a;0"u")return null;try{return e.activeElement||e.body}catch{return e.body}}var ov=/[\n"\\]/g;function on(e){return e.replace(ov,function(t){return"\\"+t.charCodeAt(0).toString(16)+" "})}function Vo(e,t,a,i,c,u,b,j){e.name="",b!=null&&typeof b!="function"&&typeof b!="symbol"&&typeof b!="boolean"?e.type=b:e.removeAttribute("type"),t!=null?b==="number"?(t===0&&e.value===""||e.value!=t)&&(e.value=""+rn(t)):e.value!==""+rn(t)&&(e.value=""+rn(t)):b!=="submit"&&b!=="reset"||e.removeAttribute("value"),t!=null?$o(e,b,rn(t)):a!=null?$o(e,b,rn(a)):i!=null&&e.removeAttribute("value"),c==null&&u!=null&&(e.defaultChecked=!!u),c!=null&&(e.checked=c&&typeof c!="function"&&typeof c!="symbol"),j!=null&&typeof j!="function"&&typeof j!="symbol"&&typeof j!="boolean"?e.name=""+rn(j):e.removeAttribute("name")}function qf(e,t,a,i,c,u,b,j){if(u!=null&&typeof u!="function"&&typeof u!="symbol"&&typeof u!="boolean"&&(e.type=u),t!=null||a!=null){if(!(u!=="submit"&&u!=="reset"||t!=null)){Ho(e);return}a=a!=null?""+rn(a):"",t=t!=null?""+rn(t):a,j||t===e.value||(e.value=t),e.defaultValue=t}i=i??c,i=typeof i!="function"&&typeof i!="symbol"&&!!i,e.checked=j?e.checked:!!i,e.defaultChecked=!!i,b!=null&&typeof b!="function"&&typeof b!="symbol"&&typeof b!="boolean"&&(e.name=b),Ho(e)}function $o(e,t,a){t==="number"&&Bi(e.ownerDocument)===e||e.defaultValue===""+a||(e.defaultValue=""+a)}function gs(e,t,a,i){if(e=e.options,t){t={};for(var c=0;c"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Qo=!1;if(Hn)try{var xl={};Object.defineProperty(xl,"passive",{get:function(){Qo=!0}}),window.addEventListener("test",xl,xl),window.removeEventListener("test",xl,xl)}catch{Qo=!1}var da=null,Ko=null,Li=null;function zf(){if(Li)return Li;var e,t=Ko,a=t.length,i,c="value"in da?da.value:da.textContent,u=c.length;for(e=0;e=bl),Yf=" ",Ff=!1;function Xf(e,t){switch(e){case"keyup":return Ov.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Qf(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var Ss=!1;function zv(e,t){switch(e){case"compositionend":return Qf(t);case"keypress":return t.which!==32?null:(Ff=!0,Yf);case"textInput":return e=t.data,e===Yf&&Ff?null:e;default:return null}}function Uv(e,t){if(Ss)return e==="compositionend"||!Wo&&Xf(e,t)?(e=zf(),Li=Ko=da=null,Ss=!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:a,offset:t-e};e=i}e:{for(;a;){if(a.nextSibling){a=a.nextSibling;break e}a=a.parentNode}a=void 0}a=tm(a)}}function am(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?am(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function sm(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=Bi(e.document);t instanceof e.HTMLIFrameElement;){try{var a=typeof t.contentWindow.location.href=="string"}catch{a=!1}if(a)e=t.contentWindow;else break;t=Bi(e.document)}return t}function nc(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 Qv=Hn&&"documentMode"in document&&11>=document.documentMode,js=null,ac=null,Nl=null,sc=!1;function lm(e,t,a){var i=a.window===a?a.document:a.nodeType===9?a:a.ownerDocument;sc||js==null||js!==Bi(i)||(i=js,"selectionStart"in i&&nc(i)?i={start:i.selectionStart,end:i.selectionEnd}:(i=(i.ownerDocument&&i.ownerDocument.defaultView||window).getSelection(),i={anchorNode:i.anchorNode,anchorOffset:i.anchorOffset,focusNode:i.focusNode,focusOffset:i.focusOffset}),Nl&&jl(Nl,i)||(Nl=i,i=Rr(ac,"onSelect"),0>=b,c-=b,Rn=1<<32-vt(t)+c|a<Ce?(Te=ge,ge=null):Te=ge.sibling;var He=Q(z,ge,Y[Ce],W);if(He===null){ge===null&&(ge=Te);break}e&&ge&&He.alternate===null&&t(z,ge),B=u(He,B,Ce),Ue===null?Se=He:Ue.sibling=He,Ue=He,ge=Te}if(Ce===Y.length)return a(z,ge),_e&&$n(z,Ce),Se;if(ge===null){for(;CeCe?(Te=ge,ge=null):Te=ge.sibling;var Da=Q(z,ge,He.value,W);if(Da===null){ge===null&&(ge=Te);break}e&&ge&&Da.alternate===null&&t(z,ge),B=u(Da,B,Ce),Ue===null?Se=Da:Ue.sibling=Da,Ue=Da,ge=Te}if(He.done)return a(z,ge),_e&&$n(z,Ce),Se;if(ge===null){for(;!He.done;Ce++,He=Y.next())He=te(z,He.value,W),He!==null&&(B=u(He,B,Ce),Ue===null?Se=He:Ue.sibling=He,Ue=He);return _e&&$n(z,Ce),Se}for(ge=i(ge);!He.done;Ce++,He=Y.next())He=I(ge,z,Ce,He.value,W),He!==null&&(e&&He.alternate!==null&&ge.delete(He.key===null?Ce:He.key),B=u(He,B,Ce),Ue===null?Se=He:Ue.sibling=He,Ue=He);return e&&ge.forEach(function(my){return t(z,my)}),_e&&$n(z,Ce),Se}function Ze(z,B,Y,W){if(typeof Y=="object"&&Y!==null&&Y.type===M&&Y.key===null&&(Y=Y.props.children),typeof Y=="object"&&Y!==null){switch(Y.$$typeof){case E:e:{for(var Se=Y.key;B!==null;){if(B.key===Se){if(Se=Y.type,Se===M){if(B.tag===7){a(z,B.sibling),W=c(B,Y.props.children),W.return=z,z=W;break e}}else if(B.elementType===Se||typeof Se=="object"&&Se!==null&&Se.$$typeof===U&&Ka(Se)===B.type){a(z,B.sibling),W=c(B,Y.props),Ml(W,Y),W.return=z,z=W;break e}a(z,B);break}else t(z,B);B=B.sibling}Y.type===M?(W=Ga(Y.props.children,z.mode,W,Y.key),W.return=z,z=W):(W=Qi(Y.type,Y.key,Y.props,null,z.mode,W),Ml(W,Y),W.return=z,z=W)}return b(z);case C:e:{for(Se=Y.key;B!==null;){if(B.key===Se)if(B.tag===4&&B.stateNode.containerInfo===Y.containerInfo&&B.stateNode.implementation===Y.implementation){a(z,B.sibling),W=c(B,Y.children||[]),W.return=z,z=W;break e}else{a(z,B);break}else t(z,B);B=B.sibling}W=dc(Y,z.mode,W),W.return=z,z=W}return b(z);case U:return Y=Ka(Y),Ze(z,B,Y,W)}if(H(Y))return fe(z,B,Y,W);if(ee(Y)){if(Se=ee(Y),typeof Se!="function")throw Error(o(150));return Y=Se.call(Y),je(z,B,Y,W)}if(typeof Y.then=="function")return Ze(z,B,er(Y),W);if(Y.$$typeof===T)return Ze(z,B,Ii(z,Y),W);tr(z,Y)}return typeof Y=="string"&&Y!==""||typeof Y=="number"||typeof Y=="bigint"?(Y=""+Y,B!==null&&B.tag===6?(a(z,B.sibling),W=c(B,Y),W.return=z,z=W):(a(z,B),W=uc(Y,z.mode,W),W.return=z,z=W),b(z)):a(z,B)}return function(z,B,Y,W){try{kl=0;var Se=Ze(z,B,Y,W);return Ds=null,Se}catch(ge){if(ge===Ts||ge===Pi)throw ge;var Ue=Qt(29,ge,null,z.mode);return Ue.lanes=W,Ue.return=z,Ue}finally{}}}var Ia=km(!0),Mm=km(!1),xa=!1;function Nc(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function Ac(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 ga(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function va(e,t,a){var i=e.updateQueue;if(i===null)return null;if(i=i.shared,($e&2)!==0){var c=i.pending;return c===null?t.next=t:(t.next=c.next,c.next=t),i.pending=t,t=Xi(e),fm(e,null,a),t}return Fi(e,i,t,a),Xi(e)}function Rl(e,t,a){if(t=t.updateQueue,t!==null&&(t=t.shared,(a&4194048)!==0)){var i=t.lanes;i&=e.pendingLanes,a|=i,t.lanes=a,ye(e,a)}}function wc(e,t){var a=e.updateQueue,i=e.alternate;if(i!==null&&(i=i.updateQueue,a===i)){var c=null,u=null;if(a=a.firstBaseUpdate,a!==null){do{var b={lane:a.lane,tag:a.tag,payload:a.payload,callback:null,next:null};u===null?c=u=b:u=u.next=b,a=a.next}while(a!==null);u===null?c=u=t:u=u.next=t}else c=u=t;a={baseState:i.baseState,firstBaseUpdate:c,lastBaseUpdate:u,shared:i.shared,callbacks:i.callbacks},e.updateQueue=a;return}e=a.lastBaseUpdate,e===null?a.firstBaseUpdate=t:e.next=t,a.lastBaseUpdate=t}var Cc=!1;function ql(){if(Cc){var e=qs;if(e!==null)throw e}}function Tl(e,t,a,i){Cc=!1;var c=e.updateQueue;xa=!1;var u=c.firstBaseUpdate,b=c.lastBaseUpdate,j=c.shared.pending;if(j!==null){c.shared.pending=null;var _=j,F=_.next;_.next=null,b===null?u=F:b.next=F,b=_;var P=e.alternate;P!==null&&(P=P.updateQueue,j=P.lastBaseUpdate,j!==b&&(j===null?P.firstBaseUpdate=F:j.next=F,P.lastBaseUpdate=_))}if(u!==null){var te=c.baseState;b=0,P=F=_=null,j=u;do{var Q=j.lane&-536870913,I=Q!==j.lane;if(I?(qe&Q)===Q:(i&Q)===Q){Q!==0&&Q===Rs&&(Cc=!0),P!==null&&(P=P.next={lane:0,tag:j.tag,payload:j.payload,callback:null,next:null});e:{var fe=e,je=j;Q=t;var Ze=a;switch(je.tag){case 1:if(fe=je.payload,typeof fe=="function"){te=fe.call(Ze,te,Q);break e}te=fe;break e;case 3:fe.flags=fe.flags&-65537|128;case 0:if(fe=je.payload,Q=typeof fe=="function"?fe.call(Ze,te,Q):fe,Q==null)break e;te=y({},te,Q);break e;case 2:xa=!0}}Q=j.callback,Q!==null&&(e.flags|=64,I&&(e.flags|=8192),I=c.callbacks,I===null?c.callbacks=[Q]:I.push(Q))}else I={lane:Q,tag:j.tag,payload:j.payload,callback:j.callback,next:null},P===null?(F=P=I,_=te):P=P.next=I,b|=Q;if(j=j.next,j===null){if(j=c.shared.pending,j===null)break;I=j,j=I.next,I.next=null,c.lastBaseUpdate=I,c.shared.pending=null}}while(!0);P===null&&(_=te),c.baseState=_,c.firstBaseUpdate=F,c.lastBaseUpdate=P,u===null&&(c.shared.lanes=0),Na|=b,e.lanes=b,e.memoizedState=te}}function Rm(e,t){if(typeof e!="function")throw Error(o(191,e));e.call(t)}function qm(e,t){var a=e.callbacks;if(a!==null)for(e.callbacks=null,e=0;eu?u:8;var b=R.T,j={};R.T=j,Fc(e,!1,t,a);try{var _=c(),F=R.S;if(F!==null&&F(j,_),_!==null&&typeof _=="object"&&typeof _.then=="function"){var P=nb(_,i);Bl(e,t,P,Pt(e))}else Bl(e,t,i,Pt(e))}catch(te){Bl(e,t,{then:function(){},status:"rejected",reason:te},Pt())}finally{L.p=u,b!==null&&j.types!==null&&(b.types=j.types),R.T=b}}function ob(){}function Gc(e,t,a,i){if(e.tag!==5)throw Error(o(476));var c=ch(e).queue;oh(e,c,t,Z,a===null?ob:function(){return uh(e),a(i)})}function ch(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:Z,baseState:Z,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Xn,lastRenderedState:Z},next:null};var a={};return t.next={memoizedState:a,baseState:a,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Xn,lastRenderedState:a},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function uh(e){var t=ch(e);t.next===null&&(t=e.alternate.memoizedState),Bl(e,t.next.queue,{},Pt())}function Yc(){return qt(Pl)}function dh(){return xt().memoizedState}function fh(){return xt().memoizedState}function cb(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var a=Pt();e=ga(a);var i=va(t,e,a);i!==null&&(Yt(i,t,a),Rl(i,t,a)),t={cache:bc()},e.payload=t;return}t=t.return}}function ub(e,t,a){var i=Pt();a={lane:i,revertLane:0,gesture:null,action:a,hasEagerState:!1,eagerState:null,next:null},dr(e)?hh(t,a):(a=oc(e,t,a,i),a!==null&&(Yt(a,e,i),ph(a,t,i)))}function mh(e,t,a){var i=Pt();Bl(e,t,a,i)}function Bl(e,t,a,i){var c={lane:i,revertLane:0,gesture:null,action:a,hasEagerState:!1,eagerState:null,next:null};if(dr(e))hh(t,c);else{var u=e.alternate;if(e.lanes===0&&(u===null||u.lanes===0)&&(u=t.lastRenderedReducer,u!==null))try{var b=t.lastRenderedState,j=u(b,a);if(c.hasEagerState=!0,c.eagerState=j,Xt(j,b))return Fi(e,t,c,0),Pe===null&&Yi(),!1}catch{}finally{}if(a=oc(e,t,c,i),a!==null)return Yt(a,e,i),ph(a,t,i),!0}return!1}function Fc(e,t,a,i){if(i={lane:2,revertLane:Nu(),gesture:null,action:i,hasEagerState:!1,eagerState:null,next:null},dr(e)){if(t)throw Error(o(479))}else t=oc(e,a,i,2),t!==null&&Yt(t,e,2)}function dr(e){var t=e.alternate;return e===we||t!==null&&t===we}function hh(e,t){Bs=sr=!0;var a=e.pending;a===null?t.next=t:(t.next=a.next,a.next=t),e.pending=t}function ph(e,t,a){if((a&4194048)!==0){var i=t.lanes;i&=e.pendingLanes,a|=i,t.lanes=a,ye(e,a)}}var Ol={readContext:qt,use:rr,useCallback:ut,useContext:ut,useEffect:ut,useImperativeHandle:ut,useLayoutEffect:ut,useInsertionEffect:ut,useMemo:ut,useReducer:ut,useRef:ut,useState:ut,useDebugValue:ut,useDeferredValue:ut,useTransition:ut,useSyncExternalStore:ut,useId:ut,useHostTransitionStatus:ut,useFormState:ut,useActionState:ut,useOptimistic:ut,useMemoCache:ut,useCacheRefresh:ut};Ol.useEffectEvent=ut;var xh={readContext:qt,use:rr,useCallback:function(e,t){return Ot().memoizedState=[e,t===void 0?null:t],e},useContext:qt,useEffect:Wm,useImperativeHandle:function(e,t,a){a=a!=null?a.concat([e]):null,cr(4194308,4,ah.bind(null,t,e),a)},useLayoutEffect:function(e,t){return cr(4194308,4,e,t)},useInsertionEffect:function(e,t){cr(4,2,e,t)},useMemo:function(e,t){var a=Ot();t=t===void 0?null:t;var i=e();if(Ja){an(!0);try{e()}finally{an(!1)}}return a.memoizedState=[i,t],i},useReducer:function(e,t,a){var i=Ot();if(a!==void 0){var c=a(t);if(Ja){an(!0);try{a(t)}finally{an(!1)}}}else c=t;return i.memoizedState=i.baseState=c,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:c},i.queue=e,e=e.dispatch=ub.bind(null,we,e),[i.memoizedState,e]},useRef:function(e){var t=Ot();return e={current:e},t.memoizedState=e},useState:function(e){e=zc(e);var t=e.queue,a=mh.bind(null,we,t);return t.dispatch=a,[e.memoizedState,a]},useDebugValue:Vc,useDeferredValue:function(e,t){var a=Ot();return $c(a,e,t)},useTransition:function(){var e=zc(!1);return e=oh.bind(null,we,e.queue,!0,!1),Ot().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,a){var i=we,c=Ot();if(_e){if(a===void 0)throw Error(o(407));a=a()}else{if(a=t(),Pe===null)throw Error(o(349));(qe&127)!==0||Lm(i,t,a)}c.memoizedState=a;var u={value:a,getSnapshot:t};return c.queue=u,Wm(Um.bind(null,i,u,e),[e]),i.flags|=2048,Ls(9,{destroy:void 0},zm.bind(null,i,u,a,t),null),a},useId:function(){var e=Ot(),t=Pe.identifierPrefix;if(_e){var a=qn,i=Rn;a=(i&~(1<<32-vt(i)-1)).toString(32)+a,t="_"+t+"R_"+a,a=lr++,0<\/script>",u=u.removeChild(u.firstChild);break;case"select":u=typeof i.is=="string"?b.createElement("select",{is:i.is}):b.createElement("select"),i.multiple?u.multiple=!0:i.size&&(u.size=i.size);break;default:u=typeof i.is=="string"?b.createElement(c,{is:i.is}):b.createElement(c)}}u[ct]=t,u[ze]=i;e:for(b=t.child;b!==null;){if(b.tag===5||b.tag===6)u.appendChild(b.stateNode);else if(b.tag!==4&&b.tag!==27&&b.child!==null){b.child.return=b,b=b.child;continue}if(b===t)break e;for(;b.sibling===null;){if(b.return===null||b.return===t)break e;b=b.return}b.sibling.return=b.return,b=b.sibling}t.stateNode=u;e:switch(Dt(u,c,i),c){case"button":case"input":case"select":case"textarea":i=!!i.autoFocus;break e;case"img":i=!0;break e;default:i=!1}i&&Kn(t)}}return tt(t),lu(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,a),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==i&&Kn(t);else{if(typeof i!="string"&&t.stateNode===null)throw Error(o(166));if(e=oe.current,ks(t)){if(e=t.stateNode,a=t.memoizedProps,i=null,c=Rt,c!==null)switch(c.tag){case 27:case 5:i=c.memoizedProps}e[ct]=t,e=!!(e.nodeValue===a||i!==null&&i.suppressHydrationWarning===!0||B0(e.nodeValue,a)),e||ha(t,!0)}else e=qr(e).createTextNode(i),e[ct]=t,t.stateNode=e}return tt(t),null;case 31:if(a=t.memoizedState,e===null||e.memoizedState!==null){if(i=ks(t),a!==null){if(e===null){if(!i)throw Error(o(318));if(e=t.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(o(557));e[ct]=t}else Ya(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;tt(t),e=!1}else a=pc(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=a),e=!0;if(!e)return t.flags&256?(Zt(t),t):(Zt(t),null);if((t.flags&128)!==0)throw Error(o(558))}return tt(t),null;case 13:if(i=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(c=ks(t),i!==null&&i.dehydrated!==null){if(e===null){if(!c)throw Error(o(318));if(c=t.memoizedState,c=c!==null?c.dehydrated:null,!c)throw Error(o(317));c[ct]=t}else Ya(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;tt(t),c=!1}else c=pc(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=c),c=!0;if(!c)return t.flags&256?(Zt(t),t):(Zt(t),null)}return Zt(t),(t.flags&128)!==0?(t.lanes=a,t):(a=i!==null,e=e!==null&&e.memoizedState!==null,a&&(i=t.child,c=null,i.alternate!==null&&i.alternate.memoizedState!==null&&i.alternate.memoizedState.cachePool!==null&&(c=i.alternate.memoizedState.cachePool.pool),u=null,i.memoizedState!==null&&i.memoizedState.cachePool!==null&&(u=i.memoizedState.cachePool.pool),u!==c&&(i.flags|=2048)),a!==e&&a&&(t.child.flags|=8192),xr(t,t.updateQueue),tt(t),null);case 4:return ve(),e===null&&Eu(t.stateNode.containerInfo),tt(t),null;case 10:return Yn(t.type),tt(t),null;case 19:if(V(pt),i=t.memoizedState,i===null)return tt(t),null;if(c=(t.flags&128)!==0,u=i.rendering,u===null)if(c)zl(i,!1);else{if(dt!==0||e!==null&&(e.flags&128)!==0)for(e=t.child;e!==null;){if(u=ar(e),u!==null){for(t.flags|=128,zl(i,!1),e=u.updateQueue,t.updateQueue=e,xr(t,e),t.subtreeFlags=0,e=a,a=t.child;a!==null;)mm(a,e),a=a.sibling;return ne(pt,pt.current&1|2),_e&&$n(t,i.treeForkCount),t.child}e=e.sibling}i.tail!==null&&Oe()>Sr&&(t.flags|=128,c=!0,zl(i,!1),t.lanes=4194304)}else{if(!c)if(e=ar(u),e!==null){if(t.flags|=128,c=!0,e=e.updateQueue,t.updateQueue=e,xr(t,e),zl(i,!0),i.tail===null&&i.tailMode==="hidden"&&!u.alternate&&!_e)return tt(t),null}else 2*Oe()-i.renderingStartTime>Sr&&a!==536870912&&(t.flags|=128,c=!0,zl(i,!1),t.lanes=4194304);i.isBackwards?(u.sibling=t.child,t.child=u):(e=i.last,e!==null?e.sibling=u:t.child=u,i.last=u)}return i.tail!==null?(e=i.tail,i.rendering=e,i.tail=e.sibling,i.renderingStartTime=Oe(),e.sibling=null,a=pt.current,ne(pt,c?a&1|2:a&1),_e&&$n(t,i.treeForkCount),e):(tt(t),null);case 22:case 23:return Zt(t),kc(),i=t.memoizedState!==null,e!==null?e.memoizedState!==null!==i&&(t.flags|=8192):i&&(t.flags|=8192),i?(a&536870912)!==0&&(t.flags&128)===0&&(tt(t),t.subtreeFlags&6&&(t.flags|=8192)):tt(t),a=t.updateQueue,a!==null&&xr(t,a.retryQueue),a=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(a=e.memoizedState.cachePool.pool),i=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(i=t.memoizedState.cachePool.pool),i!==a&&(t.flags|=2048),e!==null&&V(Qa),null;case 24:return a=null,e!==null&&(a=e.memoizedState.cache),t.memoizedState.cache!==a&&(t.flags|=2048),Yn(bt),tt(t),null;case 25:return null;case 30:return null}throw Error(o(156,t.tag))}function pb(e,t){switch(mc(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Yn(bt),ve(),e=t.flags,(e&65536)!==0&&(e&128)===0?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return Le(t),null;case 31:if(t.memoizedState!==null){if(Zt(t),t.alternate===null)throw Error(o(340));Ya()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(Zt(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(o(340));Ya()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return V(pt),null;case 4:return ve(),null;case 10:return Yn(t.type),null;case 22:case 23:return Zt(t),kc(),e!==null&&V(Qa),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return Yn(bt),null;case 25:return null;default:return null}}function Hh(e,t){switch(mc(t),t.tag){case 3:Yn(bt),ve();break;case 26:case 27:case 5:Le(t);break;case 4:ve();break;case 31:t.memoizedState!==null&&Zt(t);break;case 13:Zt(t);break;case 19:V(pt);break;case 10:Yn(t.type);break;case 22:case 23:Zt(t),kc(),e!==null&&V(Qa);break;case 24:Yn(bt)}}function Ul(e,t){try{var a=t.updateQueue,i=a!==null?a.lastEffect:null;if(i!==null){var c=i.next;a=c;do{if((a.tag&e)===e){i=void 0;var u=a.create,b=a.inst;i=u(),b.destroy=i}a=a.next}while(a!==c)}}catch(j){Xe(t,t.return,j)}}function Sa(e,t,a){try{var i=t.updateQueue,c=i!==null?i.lastEffect:null;if(c!==null){var u=c.next;i=u;do{if((i.tag&e)===e){var b=i.inst,j=b.destroy;if(j!==void 0){b.destroy=void 0,c=t;var _=a,F=j;try{F()}catch(P){Xe(c,_,P)}}}i=i.next}while(i!==u)}}catch(P){Xe(t,t.return,P)}}function Vh(e){var t=e.updateQueue;if(t!==null){var a=e.stateNode;try{qm(t,a)}catch(i){Xe(e,e.return,i)}}}function $h(e,t,a){a.props=Pa(e.type,e.memoizedProps),a.state=e.memoizedState;try{a.componentWillUnmount()}catch(i){Xe(e,t,i)}}function Hl(e,t){try{var a=e.ref;if(a!==null){switch(e.tag){case 26:case 27:case 5:var i=e.stateNode;break;case 30:i=e.stateNode;break;default:i=e.stateNode}typeof a=="function"?e.refCleanup=a(i):a.current=i}}catch(c){Xe(e,t,c)}}function Tn(e,t){var a=e.ref,i=e.refCleanup;if(a!==null)if(typeof i=="function")try{i()}catch(c){Xe(e,t,c)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof a=="function")try{a(null)}catch(c){Xe(e,t,c)}else a.current=null}function Gh(e){var t=e.type,a=e.memoizedProps,i=e.stateNode;try{e:switch(t){case"button":case"input":case"select":case"textarea":a.autoFocus&&i.focus();break e;case"img":a.src?i.src=a.src:a.srcSet&&(i.srcset=a.srcSet)}}catch(c){Xe(e,e.return,c)}}function iu(e,t,a){try{var i=e.stateNode;Lb(i,e.type,a,t),i[ze]=t}catch(c){Xe(e,e.return,c)}}function Yh(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&ka(e.type)||e.tag===4}function ru(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||Yh(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&&ka(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 ou(e,t,a){var i=e.tag;if(i===5||i===6)e=e.stateNode,t?(a.nodeType===9?a.body:a.nodeName==="HTML"?a.ownerDocument.body:a).insertBefore(e,t):(t=a.nodeType===9?a.body:a.nodeName==="HTML"?a.ownerDocument.body:a,t.appendChild(e),a=a._reactRootContainer,a!=null||t.onclick!==null||(t.onclick=Un));else if(i!==4&&(i===27&&ka(e.type)&&(a=e.stateNode,t=null),e=e.child,e!==null))for(ou(e,t,a),e=e.sibling;e!==null;)ou(e,t,a),e=e.sibling}function gr(e,t,a){var i=e.tag;if(i===5||i===6)e=e.stateNode,t?a.insertBefore(e,t):a.appendChild(e);else if(i!==4&&(i===27&&ka(e.type)&&(a=e.stateNode),e=e.child,e!==null))for(gr(e,t,a),e=e.sibling;e!==null;)gr(e,t,a),e=e.sibling}function Fh(e){var t=e.stateNode,a=e.memoizedProps;try{for(var i=e.type,c=t.attributes;c.length;)t.removeAttributeNode(c[0]);Dt(t,i,a),t[ct]=e,t[ze]=a}catch(u){Xe(e,e.return,u)}}var Zn=!1,jt=!1,cu=!1,Xh=typeof WeakSet=="function"?WeakSet:Set,Et=null;function xb(e,t){if(e=e.containerInfo,Ru=zr,e=sm(e),nc(e)){if("selectionStart"in e)var a={start:e.selectionStart,end:e.selectionEnd};else e:{a=(a=e.ownerDocument)&&a.defaultView||window;var i=a.getSelection&&a.getSelection();if(i&&i.rangeCount!==0){a=i.anchorNode;var c=i.anchorOffset,u=i.focusNode;i=i.focusOffset;try{a.nodeType,u.nodeType}catch{a=null;break e}var b=0,j=-1,_=-1,F=0,P=0,te=e,Q=null;t:for(;;){for(var I;te!==a||c!==0&&te.nodeType!==3||(j=b+c),te!==u||i!==0&&te.nodeType!==3||(_=b+i),te.nodeType===3&&(b+=te.nodeValue.length),(I=te.firstChild)!==null;)Q=te,te=I;for(;;){if(te===e)break t;if(Q===a&&++F===c&&(j=b),Q===u&&++P===i&&(_=b),(I=te.nextSibling)!==null)break;te=Q,Q=te.parentNode}te=I}a=j===-1||_===-1?null:{start:j,end:_}}else a=null}a=a||{start:0,end:0}}else a=null;for(qu={focusedElem:e,selectionRange:a},zr=!1,Et=t;Et!==null;)if(t=Et,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,Et=e;else for(;Et!==null;){switch(t=Et,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(a=0;a title"))),Dt(u,i,a),u[ct]=e,Ct(u),i=u;break e;case"link":var b=P0("link","href",c).get(i+(a.href||""));if(b){for(var j=0;jZe&&(b=Ze,Ze=je,je=b);var z=nm(j,je),B=nm(j,Ze);if(z&&B&&(I.rangeCount!==1||I.anchorNode!==z.node||I.anchorOffset!==z.offset||I.focusNode!==B.node||I.focusOffset!==B.offset)){var Y=te.createRange();Y.setStart(z.node,z.offset),I.removeAllRanges(),je>Ze?(I.addRange(Y),I.extend(B.node,B.offset)):(Y.setEnd(B.node,B.offset),I.addRange(Y))}}}}for(te=[],I=j;I=I.parentNode;)I.nodeType===1&&te.push({element:I,left:I.scrollLeft,top:I.scrollTop});for(typeof j.focus=="function"&&j.focus(),j=0;ja?32:a,R.T=null,a=xu,xu=null;var u=wa,b=ea;if(At=0,$s=wa=null,ea=0,($e&6)!==0)throw Error(o(331));var j=$e;if($e|=4,a0(u.current),e0(u,u.current,b,a),$e=j,Xl(0,!1),wt&&typeof wt.onPostCommitFiberRoot=="function")try{wt.onPostCommitFiberRoot(yn,u)}catch{}return!0}finally{L.p=c,R.T=i,S0(e,t)}}function N0(e,t,a){t=un(a,t),t=Zc(e.stateNode,t,2),e=va(e,t,2),e!==null&&(La(e,2),Dn(e))}function Xe(e,t,a){if(e.tag===3)N0(e,e,a);else for(;t!==null;){if(t.tag===3){N0(t,e,a);break}else if(t.tag===1){var i=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof i.componentDidCatch=="function"&&(Aa===null||!Aa.has(i))){e=un(a,e),a=Ah(2),i=va(t,a,2),i!==null&&(wh(a,i,t,e),La(i,2),Dn(i));break}}t=t.return}}function yu(e,t,a){var i=e.pingCache;if(i===null){i=e.pingCache=new bb;var c=new Set;i.set(t,c)}else c=i.get(t),c===void 0&&(c=new Set,i.set(t,c));c.has(a)||(fu=!0,c.add(a),e=Ab.bind(null,e,t,a),t.then(e,e))}function Ab(e,t,a){var i=e.pingCache;i!==null&&i.delete(t),e.pingedLanes|=e.suspendedLanes&a,e.warmLanes&=~a,Pe===e&&(qe&a)===a&&(dt===4||dt===3&&(qe&62914560)===qe&&300>Oe()-yr?($e&2)===0&&Gs(e,0):mu|=a,Vs===qe&&(Vs=0)),Dn(e)}function A0(e,t){t===0&&(t=qi()),e=$a(e,t),e!==null&&(La(e,t),Dn(e))}function wb(e){var t=e.memoizedState,a=0;t!==null&&(a=t.retryLane),A0(e,a)}function Cb(e,t){var a=0;switch(e.tag){case 31:case 13:var i=e.stateNode,c=e.memoizedState;c!==null&&(a=c.retryLane);break;case 19:i=e.stateNode;break;case 22:i=e.stateNode._retryCache;break;default:throw Error(o(314))}i!==null&&i.delete(t),A0(e,a)}function Eb(e,t){return J(e,t)}var Er=null,Fs=null,Su=!1,kr=!1,ju=!1,Ea=0;function Dn(e){e!==Fs&&e.next===null&&(Fs===null?Er=Fs=e:Fs=Fs.next=e),kr=!0,Su||(Su=!0,Mb())}function Xl(e,t){if(!ju&&kr){ju=!0;do for(var a=!1,i=Er;i!==null;){if(e!==0){var c=i.pendingLanes;if(c===0)var u=0;else{var b=i.suspendedLanes,j=i.pingedLanes;u=(1<<31-vt(42|e)+1)-1,u&=c&~(b&~j),u=u&201326741?u&201326741|1:u?u|2:0}u!==0&&(a=!0,k0(i,u))}else u=qe,u=ua(i,i===Pe?u:0,i.cancelPendingCommit!==null||i.timeoutHandle!==-1),(u&3)===0||Mn(i,u)||(a=!0,k0(i,u));i=i.next}while(a);ju=!1}}function kb(){w0()}function w0(){kr=Su=!1;var e=0;Ea!==0&&Ub()&&(e=Ea);for(var t=Oe(),a=null,i=Er;i!==null;){var c=i.next,u=C0(i,t);u===0?(i.next=null,a===null?Er=c:a.next=c,c===null&&(Fs=a)):(a=i,(e!==0||(u&3)!==0)&&(kr=!0)),i=c}At!==0&&At!==5||Xl(e),Ea!==0&&(Ea=0)}function C0(e,t){for(var a=e.suspendedLanes,i=e.pingedLanes,c=e.expirationTimes,u=e.pendingLanes&-62914561;0j)break;var P=_.transferSize,te=_.initiatorType;P&&O0(te)&&(_=_.responseEnd,b+=P*(_"u"?null:document;function K0(e,t,a){var i=Xs;if(i&&typeof t=="string"&&t){var c=on(t);c='link[rel="'+e+'"][href="'+c+'"]',typeof a=="string"&&(c+='[crossorigin="'+a+'"]'),Q0.has(c)||(Q0.add(c),e={rel:e,crossOrigin:a,href:t},i.querySelector(c)===null&&(t=i.createElement("link"),Dt(t,"link",e),Ct(t),i.head.appendChild(t)))}}function Kb(e){ta.D(e),K0("dns-prefetch",e,null)}function Zb(e,t){ta.C(e,t),K0("preconnect",e,t)}function Ib(e,t,a){ta.L(e,t,a);var i=Xs;if(i&&e&&t){var c='link[rel="preload"][as="'+on(t)+'"]';t==="image"&&a&&a.imageSrcSet?(c+='[imagesrcset="'+on(a.imageSrcSet)+'"]',typeof a.imageSizes=="string"&&(c+='[imagesizes="'+on(a.imageSizes)+'"]')):c+='[href="'+on(e)+'"]';var u=c;switch(t){case"style":u=Qs(e);break;case"script":u=Ks(e)}xn.has(u)||(e=y({rel:"preload",href:t==="image"&&a&&a.imageSrcSet?void 0:e,as:t},a),xn.set(u,e),i.querySelector(c)!==null||t==="style"&&i.querySelector(Il(u))||t==="script"&&i.querySelector(Jl(u))||(t=i.createElement("link"),Dt(t,"link",e),Ct(t),i.head.appendChild(t)))}}function Jb(e,t){ta.m(e,t);var a=Xs;if(a&&e){var i=t&&typeof t.as=="string"?t.as:"script",c='link[rel="modulepreload"][as="'+on(i)+'"][href="'+on(e)+'"]',u=c;switch(i){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":u=Ks(e)}if(!xn.has(u)&&(e=y({rel:"modulepreload",href:e},t),xn.set(u,e),a.querySelector(c)===null)){switch(i){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(a.querySelector(Jl(u)))return}i=a.createElement("link"),Dt(i,"link",e),Ct(i),a.head.appendChild(i)}}}function Pb(e,t,a){ta.S(e,t,a);var i=Xs;if(i&&e){var c=ps(i).hoistableStyles,u=Qs(e);t=t||"default";var b=c.get(u);if(!b){var j={loading:0,preload:null};if(b=i.querySelector(Il(u)))j.loading=5;else{e=y({rel:"stylesheet",href:e,"data-precedence":t},a),(a=xn.get(u))&&zu(e,a);var _=b=i.createElement("link");Ct(_),Dt(_,"link",e),_._p=new Promise(function(F,P){_.onload=F,_.onerror=P}),_.addEventListener("load",function(){j.loading|=1}),_.addEventListener("error",function(){j.loading|=2}),j.loading|=4,Dr(b,t,i)}b={type:"stylesheet",instance:b,count:1,state:j},c.set(u,b)}}}function Wb(e,t){ta.X(e,t);var a=Xs;if(a&&e){var i=ps(a).hoistableScripts,c=Ks(e),u=i.get(c);u||(u=a.querySelector(Jl(c)),u||(e=y({src:e,async:!0},t),(t=xn.get(c))&&Uu(e,t),u=a.createElement("script"),Ct(u),Dt(u,"link",e),a.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},i.set(c,u))}}function ey(e,t){ta.M(e,t);var a=Xs;if(a&&e){var i=ps(a).hoistableScripts,c=Ks(e),u=i.get(c);u||(u=a.querySelector(Jl(c)),u||(e=y({src:e,async:!0,type:"module"},t),(t=xn.get(c))&&Uu(e,t),u=a.createElement("script"),Ct(u),Dt(u,"link",e),a.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},i.set(c,u))}}function Z0(e,t,a,i){var c=(c=oe.current)?Tr(c):null;if(!c)throw Error(o(446));switch(e){case"meta":case"title":return null;case"style":return typeof a.precedence=="string"&&typeof a.href=="string"?(t=Qs(a.href),a=ps(c).hoistableStyles,i=a.get(t),i||(i={type:"style",instance:null,count:0,state:null},a.set(t,i)),i):{type:"void",instance:null,count:0,state:null};case"link":if(a.rel==="stylesheet"&&typeof a.href=="string"&&typeof a.precedence=="string"){e=Qs(a.href);var u=ps(c).hoistableStyles,b=u.get(e);if(b||(c=c.ownerDocument||c,b={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},u.set(e,b),(u=c.querySelector(Il(e)))&&!u._p&&(b.instance=u,b.state.loading=5),xn.has(e)||(a={rel:"preload",as:"style",href:a.href,crossOrigin:a.crossOrigin,integrity:a.integrity,media:a.media,hrefLang:a.hrefLang,referrerPolicy:a.referrerPolicy},xn.set(e,a),u||ty(c,e,a,b.state))),t&&i===null)throw Error(o(528,""));return b}if(t&&i!==null)throw Error(o(529,""));return null;case"script":return t=a.async,a=a.src,typeof a=="string"&&t&&typeof t!="function"&&typeof t!="symbol"?(t=Ks(a),a=ps(c).hoistableScripts,i=a.get(t),i||(i={type:"script",instance:null,count:0,state:null},a.set(t,i)),i):{type:"void",instance:null,count:0,state:null};default:throw Error(o(444,e))}}function Qs(e){return'href="'+on(e)+'"'}function Il(e){return'link[rel="stylesheet"]['+e+"]"}function I0(e){return y({},e,{"data-precedence":e.precedence,precedence:null})}function ty(e,t,a,i){e.querySelector('link[rel="preload"][as="style"]['+t+"]")?i.loading=1:(t=e.createElement("link"),i.preload=t,t.addEventListener("load",function(){return i.loading|=1}),t.addEventListener("error",function(){return i.loading|=2}),Dt(t,"link",a),Ct(t),e.head.appendChild(t))}function Ks(e){return'[src="'+on(e)+'"]'}function Jl(e){return"script[async]"+e}function J0(e,t,a){if(t.count++,t.instance===null)switch(t.type){case"style":var i=e.querySelector('style[data-href~="'+on(a.href)+'"]');if(i)return t.instance=i,Ct(i),i;var c=y({},a,{"data-href":a.href,"data-precedence":a.precedence,href:null,precedence:null});return i=(e.ownerDocument||e).createElement("style"),Ct(i),Dt(i,"style",c),Dr(i,a.precedence,e),t.instance=i;case"stylesheet":c=Qs(a.href);var u=e.querySelector(Il(c));if(u)return t.state.loading|=4,t.instance=u,Ct(u),u;i=I0(a),(c=xn.get(c))&&zu(i,c),u=(e.ownerDocument||e).createElement("link"),Ct(u);var b=u;return b._p=new Promise(function(j,_){b.onload=j,b.onerror=_}),Dt(u,"link",i),t.state.loading|=4,Dr(u,a.precedence,e),t.instance=u;case"script":return u=Ks(a.src),(c=e.querySelector(Jl(u)))?(t.instance=c,Ct(c),c):(i=a,(c=xn.get(u))&&(i=y({},a),Uu(i,c)),e=e.ownerDocument||e,c=e.createElement("script"),Ct(c),Dt(c,"link",i),e.head.appendChild(c),t.instance=c);case"void":return null;default:throw Error(o(443,t.type))}else t.type==="stylesheet"&&(t.state.loading&4)===0&&(i=t.instance,t.state.loading|=4,Dr(i,a.precedence,e));return t.instance}function Dr(e,t,a){for(var i=a.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),c=i.length?i[i.length-1]:null,u=c,b=0;b title"):null)}function ny(e,t,a){if(a===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 ep(e){return!(e.type==="stylesheet"&&(e.state.loading&3)===0)}function ay(e,t,a,i){if(a.type==="stylesheet"&&(typeof i.media!="string"||matchMedia(i.media).matches!==!1)&&(a.state.loading&4)===0){if(a.instance===null){var c=Qs(i.href),u=t.querySelector(Il(c));if(u){t=u._p,t!==null&&typeof t=="object"&&typeof t.then=="function"&&(e.count++,e=Br.bind(e),t.then(e,e)),a.state.loading|=4,a.instance=u,Ct(u);return}u=t.ownerDocument||t,i=I0(i),(c=xn.get(c))&&zu(i,c),u=u.createElement("link"),Ct(u);var b=u;b._p=new Promise(function(j,_){b.onload=j,b.onerror=_}),Dt(u,"link",i),a.instance=u}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(a,t),(t=a.state.preload)&&(a.state.loading&3)===0&&(e.count++,a=Br.bind(e),t.addEventListener("load",a),t.addEventListener("error",a))}}var Hu=0;function sy(e,t){return e.stylesheets&&e.count===0&&Lr(e,e.stylesheets),0Hu?50:800)+t);return e.unsuspend=a,function(){e.unsuspend=null,clearTimeout(i),clearTimeout(c)}}:null}function Br(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Lr(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var Or=null;function Lr(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,Or=new Map,t.forEach(ly,e),Or=null,Br.call(e))}function ly(e,t){if(!(t.state.loading&4)){var a=Or.get(e);if(a)var i=a.get(null);else{a=new Map,Or.set(e,a);for(var c=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(n)}catch(s){console.error(s)}}return n(),Zu.exports=jy(),Zu.exports}var Ay=Ny();var Ap="popstate";function wy(n={}){function s(o,d){let{pathname:f,search:h,hash:p}=o.location;return Nd("",{pathname:f,search:h,hash:p},d.state&&d.state.usr||null,d.state&&d.state.key||"default")}function l(o,d){return typeof d=="string"?d:xi(d)}return Ey(s,l,null,n)}function lt(n,s){if(n===!1||n===null||typeof n>"u")throw new Error(s)}function En(n,s){if(!n){typeof console<"u"&&console.warn(s);try{throw new Error(s)}catch{}}}function Cy(){return Math.random().toString(36).substring(2,10)}function wp(n,s){return{usr:n.state,key:n.key,idx:s}}function Nd(n,s,l=null,o){return{pathname:typeof n=="string"?n:n.pathname,search:"",hash:"",...typeof s=="string"?il(s):s,state:l,key:s&&s.key||o||Cy()}}function xi({pathname:n="/",search:s="",hash:l=""}){return s&&s!=="?"&&(n+=s.charAt(0)==="?"?s:"?"+s),l&&l!=="#"&&(n+=l.charAt(0)==="#"?l:"#"+l),n}function il(n){let s={};if(n){let l=n.indexOf("#");l>=0&&(s.hash=n.substring(l),n=n.substring(0,l));let o=n.indexOf("?");o>=0&&(s.search=n.substring(o),n=n.substring(0,o)),n&&(s.pathname=n)}return s}function Ey(n,s,l,o={}){let{window:d=document.defaultView,v5Compat:f=!1}=o,h=d.history,p="POP",x=null,g=v();g==null&&(g=0,h.replaceState({...h.state,idx:g},""));function v(){return(h.state||{idx:null}).idx}function y(){p="POP";let w=v(),N=w==null?null:w-g;g=w,x&&x({action:p,location:M.location,delta:N})}function S(w,N){p="PUSH";let A=Nd(M.location,w,N);g=v()+1;let T=wp(A,g),k=M.createHref(A);try{h.pushState(T,"",k)}catch(O){if(O instanceof DOMException&&O.name==="DataCloneError")throw O;d.location.assign(k)}f&&x&&x({action:p,location:M.location,delta:1})}function E(w,N){p="REPLACE";let A=Nd(M.location,w,N);g=v();let T=wp(A,g),k=M.createHref(A);h.replaceState(T,"",k),f&&x&&x({action:p,location:M.location,delta:0})}function C(w){return ky(w)}let M={get action(){return p},get location(){return n(d,h)},listen(w){if(x)throw new Error("A history only accepts one active listener");return d.addEventListener(Ap,y),x=w,()=>{d.removeEventListener(Ap,y),x=null}},createHref(w){return s(d,w)},createURL:C,encodeLocation(w){let N=C(w);return{pathname:N.pathname,search:N.search,hash:N.hash}},push:S,replace:E,go(w){return h.go(w)}};return M}function ky(n,s=!1){let l="http://localhost";typeof window<"u"&&(l=window.location.origin!=="null"?window.location.origin:window.location.href),lt(l,"No window.location.(origin|href) available to create URL");let o=typeof n=="string"?n:xi(n);return o=o.replace(/ $/,"%20"),!s&&o.startsWith("//")&&(o=l+o),new URL(o,l)}function kx(n,s,l="/"){return My(n,s,l,!1)}function My(n,s,l,o){let d=typeof s=="string"?il(s):s,f=ra(d.pathname||"/",l);if(f==null)return null;let h=Mx(n);Ry(h);let p=null;for(let x=0;p==null&&x{let v={relativePath:g===void 0?h.path||"":g,caseSensitive:h.caseSensitive===!0,childrenIndex:p,route:h};if(v.relativePath.startsWith("/")){if(!v.relativePath.startsWith(o)&&x)return;lt(v.relativePath.startsWith(o),`Absolute route path "${v.relativePath}" nested under path "${o}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),v.relativePath=v.relativePath.slice(o.length)}let y=ia([o,v.relativePath]),S=l.concat(v);h.children&&h.children.length>0&&(lt(h.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${y}".`),Mx(h.children,s,S,y,x)),!(h.path==null&&!h.index)&&s.push({path:y,score:Ly(y,h.index),routesMeta:S})};return n.forEach((h,p)=>{if(h.path===""||!h.path?.includes("?"))f(h,p);else for(let x of Rx(h.path))f(h,p,!0,x)}),s}function Rx(n){let s=n.split("/");if(s.length===0)return[];let[l,...o]=s,d=l.endsWith("?"),f=l.replace(/\?$/,"");if(o.length===0)return d?[f,""]:[f];let h=Rx(o.join("/")),p=[];return p.push(...h.map(x=>x===""?f:[f,x].join("/"))),d&&p.push(...h),p.map(x=>n.startsWith("/")&&x===""?"/":x)}function Ry(n){n.sort((s,l)=>s.score!==l.score?l.score-s.score:zy(s.routesMeta.map(o=>o.childrenIndex),l.routesMeta.map(o=>o.childrenIndex)))}var qy=/^:[\w-]+$/,Ty=3,Dy=2,_y=1,By=10,Oy=-2,Cp=n=>n==="*";function Ly(n,s){let l=n.split("/"),o=l.length;return l.some(Cp)&&(o+=Oy),s&&(o+=Dy),l.filter(d=>!Cp(d)).reduce((d,f)=>d+(qy.test(f)?Ty:f===""?_y:By),o)}function zy(n,s){return n.length===s.length&&n.slice(0,-1).every((o,d)=>o===s[d])?n[n.length-1]-s[s.length-1]:0}function Uy(n,s,l=!1){let{routesMeta:o}=n,d={},f="/",h=[];for(let p=0;p{if(v==="*"){let C=p[S]||"";h=f.slice(0,f.length-C.length).replace(/(.)\/+$/,"$1")}const E=p[S];return y&&!E?g[v]=void 0:g[v]=(E||"").replace(/%2F/g,"/"),g},{}),pathname:f,pathnameBase:h,pattern:n}}function Hy(n,s=!1,l=!0){En(n==="*"||!n.endsWith("*")||n.endsWith("/*"),`Route path "${n}" will be treated as if it were "${n.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${n.replace(/\*$/,"/*")}".`);let o=[],d="^"+n.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(h,p,x)=>(o.push({paramName:p,isOptional:x!=null}),x?"/?([^\\/]+)?":"/([^\\/]+)")).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return n.endsWith("*")?(o.push({paramName:"*"}),d+=n==="*"||n==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):l?d+="\\/*$":n!==""&&n!=="/"&&(d+="(?:(?=\\/|$))"),[new RegExp(d,s?void 0:"i"),o]}function Vy(n){try{return n.split("/").map(s=>decodeURIComponent(s).replace(/\//g,"%2F")).join("/")}catch(s){return En(!1,`The URL path "${n}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${s}).`),n}}function ra(n,s){if(s==="/")return n;if(!n.toLowerCase().startsWith(s.toLowerCase()))return null;let l=s.endsWith("/")?s.length-1:s.length,o=n.charAt(l);return o&&o!=="/"?null:n.slice(l)||"/"}var $y=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,Gy=n=>$y.test(n);function Yy(n,s="/"){let{pathname:l,search:o="",hash:d=""}=typeof n=="string"?il(n):n,f;if(l)if(Gy(l))f=l;else{if(l.includes("//")){let h=l;l=l.replace(/\/\/+/g,"/"),En(!1,`Pathnames cannot have embedded double slashes - normalizing ${h} -> ${l}`)}l.startsWith("/")?f=Ep(l.substring(1),"/"):f=Ep(l,s)}else f=s;return{pathname:f,search:Qy(o),hash:Ky(d)}}function Ep(n,s){let l=s.replace(/\/+$/,"").split("/");return n.split("/").forEach(d=>{d===".."?l.length>1&&l.pop():d!=="."&&l.push(d)}),l.length>1?l.join("/"):"/"}function Wu(n,s,l,o){return`Cannot include a '${n}' character in a manually specified \`to.${s}\` field [${JSON.stringify(o)}]. Please separate it out to the \`to.${l}\` field. Alternatively you may provide the full path as a string in and the router will parse it for you.`}function Fy(n){return n.filter((s,l)=>l===0||s.route.path&&s.route.path.length>0)}function qx(n){let s=Fy(n);return s.map((l,o)=>o===s.length-1?l.pathname:l.pathnameBase)}function Tx(n,s,l,o=!1){let d;typeof n=="string"?d=il(n):(d={...n},lt(!d.pathname||!d.pathname.includes("?"),Wu("?","pathname","search",d)),lt(!d.pathname||!d.pathname.includes("#"),Wu("#","pathname","hash",d)),lt(!d.search||!d.search.includes("#"),Wu("#","search","hash",d)));let f=n===""||d.pathname==="",h=f?"/":d.pathname,p;if(h==null)p=l;else{let y=s.length-1;if(!o&&h.startsWith("..")){let S=h.split("/");for(;S[0]==="..";)S.shift(),y-=1;d.pathname=S.join("/")}p=y>=0?s[y]:"/"}let x=Yy(d,p),g=h&&h!=="/"&&h.endsWith("/"),v=(f||h===".")&&l.endsWith("/");return!x.pathname.endsWith("/")&&(g||v)&&(x.pathname+="/"),x}var ia=n=>n.join("/").replace(/\/\/+/g,"/"),Xy=n=>n.replace(/\/+$/,"").replace(/^\/*/,"/"),Qy=n=>!n||n==="?"?"":n.startsWith("?")?n:"?"+n,Ky=n=>!n||n==="#"?"":n.startsWith("#")?n:"#"+n;function Zy(n){return n!=null&&typeof n.status=="number"&&typeof n.statusText=="string"&&typeof n.internal=="boolean"&&"data"in n}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var Dx=["POST","PUT","PATCH","DELETE"];new Set(Dx);var Iy=["GET",...Dx];new Set(Iy);var rl=m.createContext(null);rl.displayName="DataRouter";var wo=m.createContext(null);wo.displayName="DataRouterState";m.createContext(!1);var _x=m.createContext({isTransitioning:!1});_x.displayName="ViewTransition";var Jy=m.createContext(new Map);Jy.displayName="Fetchers";var Py=m.createContext(null);Py.displayName="Await";var Ln=m.createContext(null);Ln.displayName="Navigation";var wi=m.createContext(null);wi.displayName="Location";var ca=m.createContext({outlet:null,matches:[],isDataRoute:!1});ca.displayName="Route";var $d=m.createContext(null);$d.displayName="RouteError";function Wy(n,{relative:s}={}){lt(Ci(),"useHref() may be used only in the context of a component.");let{basename:l,navigator:o}=m.useContext(Ln),{hash:d,pathname:f,search:h}=Ei(n,{relative:s}),p=f;return l!=="/"&&(p=f==="/"?l:ia([l,f])),o.createHref({pathname:p,search:h,hash:d})}function Ci(){return m.useContext(wi)!=null}function cs(){return lt(Ci(),"useLocation() may be used only in the context of a component."),m.useContext(wi).location}var Bx="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function Ox(n){m.useContext(Ln).static||m.useLayoutEffect(n)}function e1(){let{isDataRoute:n}=m.useContext(ca);return n?m1():t1()}function t1(){lt(Ci(),"useNavigate() may be used only in the context of a component.");let n=m.useContext(rl),{basename:s,navigator:l}=m.useContext(Ln),{matches:o}=m.useContext(ca),{pathname:d}=cs(),f=JSON.stringify(qx(o)),h=m.useRef(!1);return Ox(()=>{h.current=!0}),m.useCallback((x,g={})=>{if(En(h.current,Bx),!h.current)return;if(typeof x=="number"){l.go(x);return}let v=Tx(x,JSON.parse(f),d,g.relative==="path");n==null&&s!=="/"&&(v.pathname=v.pathname==="/"?s:ia([s,v.pathname])),(g.replace?l.replace:l.push)(v,g.state,g)},[s,l,f,d,n])}m.createContext(null);function Ei(n,{relative:s}={}){let{matches:l}=m.useContext(ca),{pathname:o}=cs(),d=JSON.stringify(qx(l));return m.useMemo(()=>Tx(n,JSON.parse(d),o,s==="path"),[n,d,o,s])}function n1(n,s){return Lx(n,s)}function Lx(n,s,l,o,d){lt(Ci(),"useRoutes() may be used only in the context of a component.");let{navigator:f}=m.useContext(Ln),{matches:h}=m.useContext(ca),p=h[h.length-1],x=p?p.params:{},g=p?p.pathname:"/",v=p?p.pathnameBase:"/",y=p&&p.route;{let A=y&&y.path||"";zx(g,!y||A.endsWith("*")||A.endsWith("*?"),`You rendered descendant (or called \`useRoutes()\`) at "${g}" (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 S=cs(),E;if(s){let A=typeof s=="string"?il(s):s;lt(v==="/"||A.pathname?.startsWith(v),`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 "${v}" but pathname "${A.pathname}" was given in the \`location\` prop.`),E=A}else E=S;let C=E.pathname||"/",M=C;if(v!=="/"){let A=v.replace(/^\//,"").split("/");M="/"+C.replace(/^\//,"").split("/").slice(A.length).join("/")}let w=kx(n,{pathname:M});En(y||w!=null,`No routes matched location "${E.pathname}${E.search}${E.hash}" `),En(w==null||w[w.length-1].route.element!==void 0||w[w.length-1].route.Component!==void 0||w[w.length-1].route.lazy!==void 0,`Matched leaf route at location "${E.pathname}${E.search}${E.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 N=r1(w&&w.map(A=>Object.assign({},A,{params:Object.assign({},x,A.params),pathname:ia([v,f.encodeLocation?f.encodeLocation(A.pathname.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:A.pathname]),pathnameBase:A.pathnameBase==="/"?v:ia([v,f.encodeLocation?f.encodeLocation(A.pathnameBase.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:A.pathnameBase])})),h,l,o,d);return s&&N?m.createElement(wi.Provider,{value:{location:{pathname:"/",search:"",hash:"",state:null,key:"default",...E},navigationType:"POP"}},N):N}function a1(){let n=f1(),s=Zy(n)?`${n.status} ${n.statusText}`:n instanceof Error?n.message:JSON.stringify(n),l=n instanceof Error?n.stack:null,o="rgba(200,200,200, 0.5)",d={padding:"0.5rem",backgroundColor:o},f={padding:"2px 4px",backgroundColor:o},h=null;return console.error("Error handled by React Router default ErrorBoundary:",n),h=m.createElement(m.Fragment,null,m.createElement("p",null,"💿 Hey developer 👋"),m.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",m.createElement("code",{style:f},"ErrorBoundary")," or"," ",m.createElement("code",{style:f},"errorElement")," prop on your route.")),m.createElement(m.Fragment,null,m.createElement("h2",null,"Unexpected Application Error!"),m.createElement("h3",{style:{fontStyle:"italic"}},s),l?m.createElement("pre",{style:d},l):null,h)}var s1=m.createElement(a1,null),l1=class extends m.Component{constructor(n){super(n),this.state={location:n.location,revalidation:n.revalidation,error:n.error}}static getDerivedStateFromError(n){return{error:n}}static getDerivedStateFromProps(n,s){return s.location!==n.location||s.revalidation!=="idle"&&n.revalidation==="idle"?{error:n.error,location:n.location,revalidation:n.revalidation}:{error:n.error!==void 0?n.error:s.error,location:s.location,revalidation:n.revalidation||s.revalidation}}componentDidCatch(n,s){this.props.onError?this.props.onError(n,s):console.error("React Router caught the following error during render",n)}render(){return this.state.error!==void 0?m.createElement(ca.Provider,{value:this.props.routeContext},m.createElement($d.Provider,{value:this.state.error,children:this.props.component})):this.props.children}};function i1({routeContext:n,match:s,children:l}){let o=m.useContext(rl);return o&&o.static&&o.staticContext&&(s.route.errorElement||s.route.ErrorBoundary)&&(o.staticContext._deepestRenderedBoundaryId=s.route.id),m.createElement(ca.Provider,{value:n},l)}function r1(n,s=[],l=null,o=null,d=null){if(n==null){if(!l)return null;if(l.errors)n=l.matches;else if(s.length===0&&!l.initialized&&l.matches.length>0)n=l.matches;else return null}let f=n,h=l?.errors;if(h!=null){let v=f.findIndex(y=>y.route.id&&h?.[y.route.id]!==void 0);lt(v>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(h).join(",")}`),f=f.slice(0,Math.min(f.length,v+1))}let p=!1,x=-1;if(l)for(let v=0;v=0?f=f.slice(0,x+1):f=[f[0]];break}}}let g=l&&o?(v,y)=>{o(v,{location:l.location,params:l.matches?.[0]?.params??{},errorInfo:y})}:void 0;return f.reduceRight((v,y,S)=>{let E,C=!1,M=null,w=null;l&&(E=h&&y.route.id?h[y.route.id]:void 0,M=y.route.errorElement||s1,p&&(x<0&&S===0?(zx("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),C=!0,w=null):x===S&&(C=!0,w=y.route.hydrateFallbackElement||null)));let N=s.concat(f.slice(0,S+1)),A=()=>{let T;return E?T=M:C?T=w:y.route.Component?T=m.createElement(y.route.Component,null):y.route.element?T=y.route.element:T=v,m.createElement(i1,{match:y,routeContext:{outlet:v,matches:N,isDataRoute:l!=null},children:T})};return l&&(y.route.ErrorBoundary||y.route.errorElement||S===0)?m.createElement(l1,{location:l.location,revalidation:l.revalidation,component:M,error:E,children:A(),routeContext:{outlet:null,matches:N,isDataRoute:!0},onError:g}):A()},null)}function Gd(n){return`${n} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function o1(n){let s=m.useContext(rl);return lt(s,Gd(n)),s}function c1(n){let s=m.useContext(wo);return lt(s,Gd(n)),s}function u1(n){let s=m.useContext(ca);return lt(s,Gd(n)),s}function Yd(n){let s=u1(n),l=s.matches[s.matches.length-1];return lt(l.route.id,`${n} can only be used on routes that contain a unique "id"`),l.route.id}function d1(){return Yd("useRouteId")}function f1(){let n=m.useContext($d),s=c1("useRouteError"),l=Yd("useRouteError");return n!==void 0?n:s.errors?.[l]}function m1(){let{router:n}=o1("useNavigate"),s=Yd("useNavigate"),l=m.useRef(!1);return Ox(()=>{l.current=!0}),m.useCallback(async(d,f={})=>{En(l.current,Bx),l.current&&(typeof d=="number"?n.navigate(d):await n.navigate(d,{fromRouteId:s,...f}))},[n,s])}var kp={};function zx(n,s,l){!s&&!kp[n]&&(kp[n]=!0,En(!1,l))}m.memo(h1);function h1({routes:n,future:s,state:l,unstable_onError:o}){return Lx(n,void 0,l,o,s)}function no(n){lt(!1,"A is only ever to be used as the child of element, never rendered directly. Please wrap your in a .")}function p1({basename:n="/",children:s=null,location:l,navigationType:o="POP",navigator:d,static:f=!1}){lt(!Ci(),"You cannot render a inside another . You should never have more than one in your app.");let h=n.replace(/^\/*/,"/"),p=m.useMemo(()=>({basename:h,navigator:d,static:f,future:{}}),[h,d,f]);typeof l=="string"&&(l=il(l));let{pathname:x="/",search:g="",hash:v="",state:y=null,key:S="default"}=l,E=m.useMemo(()=>{let C=ra(x,h);return C==null?null:{location:{pathname:C,search:g,hash:v,state:y,key:S},navigationType:o}},[h,x,g,v,y,S,o]);return En(E!=null,` is not able to match the URL "${x}${g}${v}" because it does not start with the basename, so the won't render anything.`),E==null?null:m.createElement(Ln.Provider,{value:p},m.createElement(wi.Provider,{children:s,value:E}))}function x1({children:n,location:s}){return n1(Ad(n),s)}function Ad(n,s=[]){let l=[];return m.Children.forEach(n,(o,d)=>{if(!m.isValidElement(o))return;let f=[...s,d];if(o.type===m.Fragment){l.push.apply(l,Ad(o.props.children,f));return}lt(o.type===no,`[${typeof o.type=="string"?o.type:o.type.name}] is not a component. All component children of must be a or `),lt(!o.props.index||!o.props.children,"An index route cannot have child routes.");let h={id:o.props.id||f.join("-"),caseSensitive:o.props.caseSensitive,element:o.props.element,Component:o.props.Component,index:o.props.index,path:o.props.path,middleware:o.props.middleware,loader:o.props.loader,action:o.props.action,hydrateFallbackElement:o.props.hydrateFallbackElement,HydrateFallback:o.props.HydrateFallback,errorElement:o.props.errorElement,ErrorBoundary:o.props.ErrorBoundary,hasErrorBoundary:o.props.hasErrorBoundary===!0||o.props.ErrorBoundary!=null||o.props.errorElement!=null,shouldRevalidate:o.props.shouldRevalidate,handle:o.props.handle,lazy:o.props.lazy};o.props.children&&(h.children=Ad(o.props.children,f)),l.push(h)}),l}var ao="get",so="application/x-www-form-urlencoded";function Co(n){return n!=null&&typeof n.tagName=="string"}function g1(n){return Co(n)&&n.tagName.toLowerCase()==="button"}function v1(n){return Co(n)&&n.tagName.toLowerCase()==="form"}function b1(n){return Co(n)&&n.tagName.toLowerCase()==="input"}function y1(n){return!!(n.metaKey||n.altKey||n.ctrlKey||n.shiftKey)}function S1(n,s){return n.button===0&&(!s||s==="_self")&&!y1(n)}var Fr=null;function j1(){if(Fr===null)try{new FormData(document.createElement("form"),0),Fr=!1}catch{Fr=!0}return Fr}var N1=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function ed(n){return n!=null&&!N1.has(n)?(En(!1,`"${n}" is not a valid \`encType\` for \`
\`/\`\` and will default to "${so}"`),null):n}function A1(n,s){let l,o,d,f,h;if(v1(n)){let p=n.getAttribute("action");o=p?ra(p,s):null,l=n.getAttribute("method")||ao,d=ed(n.getAttribute("enctype"))||so,f=new FormData(n)}else if(g1(n)||b1(n)&&(n.type==="submit"||n.type==="image")){let p=n.form;if(p==null)throw new Error('Cannot submit a