From cc74caf9d9b66711f4aab793966c1f8a5663e1b9 Mon Sep 17 00:00:00 2001 From: Adam Mathes Date: Sun, 15 Feb 2026 14:22:31 -0800 Subject: Switch to HashRouter to fix page reload issues (NK-hy162w) --- frontend/src/App.test.tsx | 4 +-- frontend/src/App.tsx | 8 +++--- frontend/src/Navigation.test.tsx | 45 +++++++++++++++++++------------ frontend/src/components/FeedList.test.tsx | 3 ++- frontend/src/components/FeedList.tsx | 2 +- web/dist/v2/assets/index-CG_JgHU-.js | 11 ++++++++ web/dist/v2/assets/index-Dn_B5oZw.js | 11 -------- web/dist/v2/index.html | 2 +- 8 files changed, 49 insertions(+), 37 deletions(-) create mode 100644 web/dist/v2/assets/index-CG_JgHU-.js delete mode 100644 web/dist/v2/assets/index-Dn_B5oZw.js diff --git a/frontend/src/App.test.tsx b/frontend/src/App.test.tsx index 1ef9763..27b9da2 100644 --- a/frontend/src/App.test.tsx +++ b/frontend/src/App.test.tsx @@ -16,7 +16,7 @@ describe('App', () => { } as Response); window.history.pushState({}, 'Test page', '/v2/login'); render(); - expect(screen.getByRole('button', { name: /login/i })).toBeInTheDocument(); + expect(await screen.findByRole('button', { name: /login/i })).toBeInTheDocument(); }); it('renders dashboard when authenticated', async () => { @@ -54,7 +54,7 @@ describe('App', () => { '/api/logout', expect.objectContaining({ method: 'POST' }) ); - expect(window.location.href).toBe('/v2/login'); + expect(window.location.href).toBe('/v2/#/login'); }); }); }); diff --git a/frontend/src/App.tsx b/frontend/src/App.tsx index 478444c..cc45949 100644 --- a/frontend/src/App.tsx +++ b/frontend/src/App.tsx @@ -1,5 +1,5 @@ import React, { useEffect, useState } from 'react'; -import { BrowserRouter, Routes, Route, Navigate, useLocation } from 'react-router-dom'; +import { HashRouter, Routes, Route, Navigate, useLocation } from 'react-router-dom'; import Login from './components/Login'; import './App.css'; import { apiFetch } from './utils'; @@ -113,10 +113,10 @@ function App() { localStorage.setItem('neko-font-theme', newFontTheme); }; - const basename = window.location.pathname.startsWith('/v2') ? '/v2' : '/'; + return ( - + } /> - + ); } diff --git a/frontend/src/Navigation.test.tsx b/frontend/src/Navigation.test.tsx index 7d73249..b0bae86 100644 --- a/frontend/src/Navigation.test.tsx +++ b/frontend/src/Navigation.test.tsx @@ -27,7 +27,7 @@ describe('Navigation and Filtering', () => { it('preserves "all" filter when clicking a feed', async () => { Object.defineProperty(window, 'innerWidth', { writable: true, configurable: true, value: 1024 }); - window.history.pushState({}, '', '/'); + window.history.pushState({}, '', '/#/'); render(); // Wait for sidebar to load and feeds section to be visible @@ -47,7 +47,9 @@ describe('Navigation and Filtering', () => { fireEvent.click(allFilter); // Verify URL has filter=all - expect(window.location.search).toContain('filter=all'); + await waitFor(() => { + expect(window.location.hash).toContain('filter=all'); + }); // Click Feed 1 const feed1Link = screen.getByText('Feed 1'); @@ -55,8 +57,8 @@ describe('Navigation and Filtering', () => { // Verify URL is /feed/1?filter=all (or similar) await waitFor(() => { - expect(window.location.pathname).toContain('/feed/1'); - expect(window.location.search).toContain('filter=all'); + expect(window.location.hash).toContain('/feed/1'); + expect(window.location.hash).toContain('filter=all'); }); // Click Feed 2 @@ -65,48 +67,57 @@ describe('Navigation and Filtering', () => { // Verify URL is /feed/2?filter=all await waitFor(() => { - expect(window.location.pathname).toContain('/feed/2'); - expect(window.location.search).toContain('filter=all'); + expect(window.location.hash).toContain('/feed/2'); + expect(window.location.hash).toContain('filter=all'); }); }); it('highlights the correct filter link', async () => { - window.history.pushState({}, '', '/'); + window.history.pushState({}, '', '/#/'); render(); await waitFor(() => { - expect(screen.getByText('unread')).toHaveClass('active'); + const unreadLink = screen.getByText('unread'); + expect(unreadLink.className).toContain('active'); }); fireEvent.click(screen.getByText('all')); await waitFor(() => { - expect(screen.getByText('all')).toHaveClass('active'); - expect(screen.getByText('unread')).not.toHaveClass('active'); + const allLink = screen.getByText('all'); + const unreadLink = screen.getByText('unread'); + expect(allLink.className).toContain('active'); + expect(unreadLink.className).not.toContain('active'); }); }); it('highlights "unread" as active even when on a feed page without filter param', async () => { - window.history.pushState({}, '', '/feed/1'); + window.history.pushState({}, '', '/#/feed/1'); render(); await waitFor(() => { - expect(screen.getByText('unread')).toHaveClass('active'); + const unreadLink = screen.getByText('unread'); + expect(unreadLink.className).toContain('active'); }); }); it('preserves search query when clicking a feed', async () => { - window.history.pushState({}, '', '/?q=linux'); + window.history.pushState({}, '', '/#/?q=linux'); render(); - await screen.findByRole('heading', { name: /Feeds/i, level: 4 }); - fireEvent.click(screen.getByRole('heading', { name: /Feeds/i, level: 4 })); + // Wait for load + await waitFor(() => { + expect(screen.queryByText(/Loading feeds/i)).not.toBeInTheDocument(); + }); + + const feedsHeader = await screen.findByRole('heading', { name: /Feeds/i, level: 4 }); + fireEvent.click(feedsHeader); await screen.findByText('Feed 1'); fireEvent.click(screen.getByText('Feed 1')); await waitFor(() => { - expect(window.location.pathname).toContain('/feed/1'); - expect(window.location.search).toContain('q=linux'); + expect(window.location.hash).toContain('/feed/1'); + expect(window.location.hash).toContain('q=linux'); }); }); }); diff --git a/frontend/src/components/FeedList.test.tsx b/frontend/src/components/FeedList.test.tsx index d3d3a57..d4e72cc 100644 --- a/frontend/src/components/FeedList.test.tsx +++ b/frontend/src/components/FeedList.test.tsx @@ -202,8 +202,9 @@ describe('FeedList Component', () => { await waitFor(() => { expect(global.fetch).toHaveBeenCalledWith('/api/logout', expect.any(Object)); - expect(window.location.href).toContain('/v2/login'); + expect(window.location.href).toContain('/v2/#/login'); }); + // @ts-expect-error - restoring window.location window.location = originalLocation; }); diff --git a/frontend/src/components/FeedList.tsx b/frontend/src/components/FeedList.tsx index 556ce6e..ce83333 100644 --- a/frontend/src/components/FeedList.tsx +++ b/frontend/src/components/FeedList.tsx @@ -111,7 +111,7 @@ export default function FeedList({ if (error) return
Error: {error}
; const handleLogout = () => { - apiFetch('/api/logout', { method: 'POST' }).then(() => (window.location.href = '/v2/login')); + apiFetch('/api/logout', { method: 'POST' }).then(() => (window.location.href = '/v2/#/login')); }; return ( diff --git a/web/dist/v2/assets/index-CG_JgHU-.js b/web/dist/v2/assets/index-CG_JgHU-.js new file mode 100644 index 0000000..ae58c9f --- /dev/null +++ b/web/dist/v2/assets/index-CG_JgHU-.js @@ -0,0 +1,11 @@ +(function(){const r=document.createElement("link").relList;if(r&&r.supports&&r.supports("modulepreload"))return;for(const d of document.querySelectorAll('link[rel="modulepreload"]'))f(d);new MutationObserver(d=>{for(const h of d)if(h.type==="childList")for(const p of h.addedNodes)p.tagName==="LINK"&&p.rel==="modulepreload"&&f(p)}).observe(document,{childList:!0,subtree:!0});function o(d){const h={};return d.integrity&&(h.integrity=d.integrity),d.referrerPolicy&&(h.referrerPolicy=d.referrerPolicy),d.crossOrigin==="use-credentials"?h.credentials="include":d.crossOrigin==="anonymous"?h.credentials="omit":h.credentials="same-origin",h}function f(d){if(d.ep)return;d.ep=!0;const h=o(d);fetch(d.href,h)}})();function nv(c){return c&&c.__esModule&&Object.prototype.hasOwnProperty.call(c,"default")?c.default:c}var Nf={exports:{}},Un={};var Pd;function uv(){if(Pd)return Un;Pd=1;var c=Symbol.for("react.transitional.element"),r=Symbol.for("react.fragment");function o(f,d,h){var p=null;if(h!==void 0&&(p=""+h),d.key!==void 0&&(p=""+d.key),"key"in d){h={};for(var _ in d)_!=="key"&&(h[_]=d[_])}else h=d;return d=h.ref,{$$typeof:c,type:f,key:p,ref:d!==void 0?d:null,props:h}}return Un.Fragment=r,Un.jsx=o,Un.jsxs=o,Un}var th;function iv(){return th||(th=1,Nf.exports=uv()),Nf.exports}var x=iv(),Mf={exports:{}},at={};var eh;function cv(){if(eh)return at;eh=1;var c=Symbol.for("react.transitional.element"),r=Symbol.for("react.portal"),o=Symbol.for("react.fragment"),f=Symbol.for("react.strict_mode"),d=Symbol.for("react.profiler"),h=Symbol.for("react.consumer"),p=Symbol.for("react.context"),_=Symbol.for("react.forward_ref"),S=Symbol.for("react.suspense"),y=Symbol.for("react.memo"),N=Symbol.for("react.lazy"),R=Symbol.for("react.activity"),B=Symbol.iterator;function V(v){return v===null||typeof v!="object"?null:(v=B&&v[B]||v["@@iterator"],typeof v=="function"?v:null)}var F={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},Q=Object.assign,G={};function H(v,C,Y){this.props=v,this.context=C,this.refs=G,this.updater=Y||F}H.prototype.isReactComponent={},H.prototype.setState=function(v,C){if(typeof v!="object"&&typeof v!="function"&&v!=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,v,C,"setState")},H.prototype.forceUpdate=function(v){this.updater.enqueueForceUpdate(this,v,"forceUpdate")};function q(){}q.prototype=H.prototype;function Z(v,C,Y){this.props=v,this.context=C,this.refs=G,this.updater=Y||F}var W=Z.prototype=new q;W.constructor=Z,Q(W,H.prototype),W.isPureReactComponent=!0;var tt=Array.isArray;function k(){}var X={H:null,A:null,T:null,S:null},ct=Object.prototype.hasOwnProperty;function ft(v,C,Y){var w=Y.ref;return{$$typeof:c,type:v,key:C,ref:w!==void 0?w:null,props:Y}}function Yt(v,C){return ft(v.type,C,v.props)}function Se(v){return typeof v=="object"&&v!==null&&v.$$typeof===c}function Nt(v){var C={"=":"=0",":":"=2"};return"$"+v.replace(/[=:]/g,function(Y){return C[Y]})}var De=/\/+/g;function It(v,C){return typeof v=="object"&&v!==null&&v.key!=null?Nt(""+v.key):C.toString(36)}function ie(v){switch(v.status){case"fulfilled":return v.value;case"rejected":throw v.reason;default:switch(typeof v.status=="string"?v.then(k,k):(v.status="pending",v.then(function(C){v.status==="pending"&&(v.status="fulfilled",v.value=C)},function(C){v.status==="pending"&&(v.status="rejected",v.reason=C)})),v.status){case"fulfilled":return v.value;case"rejected":throw v.reason}}throw v}function D(v,C,Y,w,lt){var it=typeof v;(it==="undefined"||it==="boolean")&&(v=null);var pt=!1;if(v===null)pt=!0;else switch(it){case"bigint":case"string":case"number":pt=!0;break;case"object":switch(v.$$typeof){case c:case r:pt=!0;break;case N:return pt=v._init,D(pt(v._payload),C,Y,w,lt)}}if(pt)return lt=lt(v),pt=w===""?"."+It(v,0):w,tt(lt)?(Y="",pt!=null&&(Y=pt.replace(De,"$&/")+"/"),D(lt,C,Y,"",function(Ya){return Ya})):lt!=null&&(Se(lt)&&(lt=Yt(lt,Y+(lt.key==null||v&&v.key===lt.key?"":(""+lt.key).replace(De,"$&/")+"/")+pt)),C.push(lt)),1;pt=0;var kt=w===""?".":w+":";if(tt(v))for(var Ct=0;Ct>>1,J=D[gt];if(0>>1;gtd(Y,I))wd(lt,Y)?(D[gt]=lt,D[w]=I,gt=w):(D[gt]=Y,D[C]=I,gt=C);else if(wd(lt,I))D[gt]=lt,D[w]=I,gt=w;else break t}}return L}function d(D,L){var I=D.sortIndex-L.sortIndex;return I!==0?I:D.id-L.id}if(c.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var h=performance;c.unstable_now=function(){return h.now()}}else{var p=Date,_=p.now();c.unstable_now=function(){return p.now()-_}}var S=[],y=[],N=1,R=null,B=3,V=!1,F=!1,Q=!1,G=!1,H=typeof setTimeout=="function"?setTimeout:null,q=typeof clearTimeout=="function"?clearTimeout:null,Z=typeof setImmediate<"u"?setImmediate:null;function W(D){for(var L=o(y);L!==null;){if(L.callback===null)f(y);else if(L.startTime<=D)f(y),L.sortIndex=L.expirationTime,r(S,L);else break;L=o(y)}}function tt(D){if(Q=!1,W(D),!F)if(o(S)!==null)F=!0,k||(k=!0,Nt());else{var L=o(y);L!==null&&ie(tt,L.startTime-D)}}var k=!1,X=-1,ct=5,ft=-1;function Yt(){return G?!0:!(c.unstable_now()-ftD&&Yt());){var gt=R.callback;if(typeof gt=="function"){R.callback=null,B=R.priorityLevel;var J=gt(R.expirationTime<=D);if(D=c.unstable_now(),typeof J=="function"){R.callback=J,W(D),L=!0;break e}R===o(S)&&f(S),W(D)}else f(S);R=o(S)}if(R!==null)L=!0;else{var v=o(y);v!==null&&ie(tt,v.startTime-D),L=!1}}break t}finally{R=null,B=I,V=!1}L=void 0}}finally{L?Nt():k=!1}}}var Nt;if(typeof Z=="function")Nt=function(){Z(Se)};else if(typeof MessageChannel<"u"){var De=new MessageChannel,It=De.port2;De.port1.onmessage=Se,Nt=function(){It.postMessage(null)}}else Nt=function(){H(Se,0)};function ie(D,L){X=H(function(){D(c.unstable_now())},L)}c.unstable_IdlePriority=5,c.unstable_ImmediatePriority=1,c.unstable_LowPriority=4,c.unstable_NormalPriority=3,c.unstable_Profiling=null,c.unstable_UserBlockingPriority=2,c.unstable_cancelCallback=function(D){D.callback=null},c.unstable_forceFrameRate=function(D){0>D||125gt?(D.sortIndex=I,r(y,D),o(S)===null&&D===o(y)&&(Q?(q(X),X=-1):Q=!0,ie(tt,I-gt))):(D.sortIndex=J,r(S,D),F||V||(F=!0,k||(k=!0,Nt()))),D},c.unstable_shouldYield=Yt,c.unstable_wrapCallback=function(D){var L=B;return function(){var I=B;B=L;try{return D.apply(this,arguments)}finally{B=I}}}})(Uf)),Uf}var nh;function rv(){return nh||(nh=1,Cf.exports=sv()),Cf.exports}var jf={exports:{}},$t={};var uh;function ov(){if(uh)return $t;uh=1;var c=Zf();function r(S){var y="https://react.dev/errors/"+S;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(c)}catch(r){console.error(r)}}return c(),jf.exports=ov(),jf.exports}var ch;function hv(){if(ch)return jn;ch=1;var c=rv(),r=Zf(),o=dv();function f(t){var e="https://react.dev/errors/"+t;if(1J||(t.current=gt[J],gt[J]=null,J--)}function Y(t,e){J++,gt[J]=t.current,t.current=e}var w=v(null),lt=v(null),it=v(null),pt=v(null);function kt(t,e){switch(Y(it,e),Y(lt,t),Y(w,null),e.nodeType){case 9:case 11:t=(t=e.documentElement)&&(t=t.namespaceURI)?Td(t):0;break;default:if(t=e.tagName,e=e.namespaceURI)e=Td(e),t=zd(e,t);else switch(t){case"svg":t=1;break;case"math":t=2;break;default:t=0}}C(w),Y(w,t)}function Ct(){C(w),C(lt),C(it)}function Ya(t){t.memoizedState!==null&&Y(pt,t);var e=w.current,l=zd(e,t.type);e!==l&&(Y(lt,t),Y(w,l))}function Xn(t){lt.current===t&&(C(w),C(lt)),pt.current===t&&(C(pt),Nn._currentValue=I)}var ri,Wf;function Cl(t){if(ri===void 0)try{throw Error()}catch(l){var e=l.stack.trim().match(/\n( *(at )?)/);ri=e&&e[1]||"",Wf=-1)":-1n||m[a]!==z[n]){var M=` +`+m[a].replace(" at new "," at ");return t.displayName&&M.includes("")&&(M=M.replace("",t.displayName)),M}while(1<=a&&0<=n);break}}}finally{oi=!1,Error.prepareStackTrace=l}return(l=t?t.displayName||t.name:"")?Cl(l):""}function Hh(t,e){switch(t.tag){case 26:case 27:case 5:return Cl(t.type);case 16:return Cl("Lazy");case 13:return t.child!==e&&e!==null?Cl("Suspense Fallback"):Cl("Suspense");case 19:return Cl("SuspenseList");case 0:case 15:return di(t.type,!1);case 11:return di(t.type.render,!1);case 1:return di(t.type,!0);case 31:return Cl("Activity");default:return""}}function If(t){try{var e="",l=null;do e+=Hh(t,l),l=t,t=t.return;while(t);return e}catch(a){return` +Error generating stack: `+a.message+` +`+a.stack}}var hi=Object.prototype.hasOwnProperty,mi=c.unstable_scheduleCallback,yi=c.unstable_cancelCallback,Bh=c.unstable_shouldYield,qh=c.unstable_requestPaint,ce=c.unstable_now,Lh=c.unstable_getCurrentPriorityLevel,Pf=c.unstable_ImmediatePriority,ts=c.unstable_UserBlockingPriority,Qn=c.unstable_NormalPriority,Yh=c.unstable_LowPriority,es=c.unstable_IdlePriority,Gh=c.log,Xh=c.unstable_setDisableYieldValue,Ga=null,fe=null;function il(t){if(typeof Gh=="function"&&Xh(t),fe&&typeof fe.setStrictMode=="function")try{fe.setStrictMode(Ga,t)}catch{}}var se=Math.clz32?Math.clz32:Vh,Qh=Math.log,Zh=Math.LN2;function Vh(t){return t>>>=0,t===0?32:31-(Qh(t)/Zh|0)|0}var Zn=256,Vn=262144,wn=4194304;function Ul(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 Kn(t,e,l){var a=t.pendingLanes;if(a===0)return 0;var n=0,u=t.suspendedLanes,i=t.pingedLanes;t=t.warmLanes;var s=a&134217727;return s!==0?(a=s&~u,a!==0?n=Ul(a):(i&=s,i!==0?n=Ul(i):l||(l=s&~t,l!==0&&(n=Ul(l))))):(s=a&~u,s!==0?n=Ul(s):i!==0?n=Ul(i):l||(l=a&~t,l!==0&&(n=Ul(l)))),n===0?0:e!==0&&e!==n&&(e&u)===0&&(u=n&-n,l=e&-e,u>=l||u===32&&(l&4194048)!==0)?e:n}function Xa(t,e){return(t.pendingLanes&~(t.suspendedLanes&~t.pingedLanes)&e)===0}function wh(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 ls(){var t=wn;return wn<<=1,(wn&62914560)===0&&(wn=4194304),t}function vi(t){for(var e=[],l=0;31>l;l++)e.push(t);return e}function Qa(t,e){t.pendingLanes|=e,e!==268435456&&(t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0)}function Kh(t,e,l,a,n,u){var i=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 s=t.entanglements,m=t.expirationTimes,z=t.hiddenUpdates;for(l=i&~l;0"u")return null;try{return t.activeElement||t.body}catch{return t.body}}var Ih=/[\n"\\]/g;function Ee(t){return t.replace(Ih,function(e){return"\\"+e.charCodeAt(0).toString(16)+" "})}function Ti(t,e,l,a,n,u,i,s){t.name="",i!=null&&typeof i!="function"&&typeof i!="symbol"&&typeof i!="boolean"?t.type=i:t.removeAttribute("type"),e!=null?i==="number"?(e===0&&t.value===""||t.value!=e)&&(t.value=""+be(e)):t.value!==""+be(e)&&(t.value=""+be(e)):i!=="submit"&&i!=="reset"||t.removeAttribute("value"),e!=null?zi(t,i,be(e)):l!=null?zi(t,i,be(l)):a!=null&&t.removeAttribute("value"),n==null&&u!=null&&(t.defaultChecked=!!u),n!=null&&(t.checked=n&&typeof n!="function"&&typeof n!="symbol"),s!=null&&typeof s!="function"&&typeof s!="symbol"&&typeof s!="boolean"?t.name=""+be(s):t.removeAttribute("name")}function ys(t,e,l,a,n,u,i,s){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)){Ei(t);return}l=l!=null?""+be(l):"",e=e!=null?""+be(e):l,s||e===t.value||(t.value=e),t.defaultValue=e}a=a??n,a=typeof a!="function"&&typeof a!="symbol"&&!!a,t.checked=s?t.checked:!!a,t.defaultChecked=!!a,i!=null&&typeof i!="function"&&typeof i!="symbol"&&typeof i!="boolean"&&(t.name=i),Ei(t)}function zi(t,e,l){e==="number"&&kn(t.ownerDocument)===t||t.defaultValue===""+l||(t.defaultValue=""+l)}function ua(t,e,l,a){if(t=t.options,e){e={};for(var n=0;n"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),xi=!1;if(Qe)try{var Ka={};Object.defineProperty(Ka,"passive",{get:function(){xi=!0}}),window.addEventListener("test",Ka,Ka),window.removeEventListener("test",Ka,Ka)}catch{xi=!1}var fl=null,Ni=null,Wn=null;function Ts(){if(Wn)return Wn;var t,e=Ni,l=e.length,a,n="value"in fl?fl.value:fl.textContent,u=n.length;for(t=0;t=ka),xs=" ",Ns=!1;function Ms(t,e){switch(t){case"keyup":return Rm.indexOf(e.keyCode)!==-1;case"keydown":return e.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Ds(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var sa=!1;function xm(t,e){switch(t){case"compositionend":return Ds(e);case"keypress":return e.which!==32?null:(Ns=!0,xs);case"textInput":return t=e.data,t===xs&&Ns?null:t;default:return null}}function Nm(t,e){if(sa)return t==="compositionend"||!ji&&Ms(t,e)?(t=Ts(),Wn=Ni=fl=null,sa=!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=a}t:{for(;l;){if(l.nextSibling){l=l.nextSibling;break t}l=l.parentNode}l=void 0}l=Ys(l)}}function Xs(t,e){return t&&e?t===e?!0:t&&t.nodeType===3?!1:e&&e.nodeType===3?Xs(t,e.parentNode):"contains"in t?t.contains(e):t.compareDocumentPosition?!!(t.compareDocumentPosition(e)&16):!1:!1}function Qs(t){t=t!=null&&t.ownerDocument!=null&&t.ownerDocument.defaultView!=null?t.ownerDocument.defaultView:window;for(var e=kn(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=kn(t.document)}return e}function qi(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 qm=Qe&&"documentMode"in document&&11>=document.documentMode,ra=null,Li=null,Pa=null,Yi=!1;function Zs(t,e,l){var a=l.window===l?l.document:l.nodeType===9?l:l.ownerDocument;Yi||ra==null||ra!==kn(a)||(a=ra,"selectionStart"in a&&qi(a)?a={start:a.selectionStart,end:a.selectionEnd}:(a=(a.ownerDocument&&a.ownerDocument.defaultView||window).getSelection(),a={anchorNode:a.anchorNode,anchorOffset:a.anchorOffset,focusNode:a.focusNode,focusOffset:a.focusOffset}),Pa&&Ia(Pa,a)||(Pa=a,a=Vu(Li,"onSelect"),0>=i,n-=i,Be=1<<32-se(e)+n|l<ut?(dt=$,$=null):dt=$.sibling;var yt=A(b,$,T[ut],U);if(yt===null){$===null&&($=dt);break}t&&$&&yt.alternate===null&&e(b,$),g=u(yt,g,ut),mt===null?P=yt:mt.sibling=yt,mt=yt,$=dt}if(ut===T.length)return l(b,$),ht&&Ve(b,ut),P;if($===null){for(;utut?(dt=$,$=null):dt=$.sibling;var Ml=A(b,$,yt.value,U);if(Ml===null){$===null&&($=dt);break}t&&$&&Ml.alternate===null&&e(b,$),g=u(Ml,g,ut),mt===null?P=Ml:mt.sibling=Ml,mt=Ml,$=dt}if(yt.done)return l(b,$),ht&&Ve(b,ut),P;if($===null){for(;!yt.done;ut++,yt=T.next())yt=j(b,yt.value,U),yt!==null&&(g=u(yt,g,ut),mt===null?P=yt:mt.sibling=yt,mt=yt);return ht&&Ve(b,ut),P}for($=a($);!yt.done;ut++,yt=T.next())yt=O($,b,ut,yt.value,U),yt!==null&&(t&&yt.alternate!==null&&$.delete(yt.key===null?ut:yt.key),g=u(yt,g,ut),mt===null?P=yt:mt.sibling=yt,mt=yt);return t&&$.forEach(function(av){return e(b,av)}),ht&&Ve(b,ut),P}function zt(b,g,T,U){if(typeof T=="object"&&T!==null&&T.type===Q&&T.key===null&&(T=T.props.children),typeof T=="object"&&T!==null){switch(T.$$typeof){case V:t:{for(var P=T.key;g!==null;){if(g.key===P){if(P=T.type,P===Q){if(g.tag===7){l(b,g.sibling),U=n(g,T.props.children),U.return=b,b=U;break t}}else if(g.elementType===P||typeof P=="object"&&P!==null&&P.$$typeof===ct&&Vl(P)===g.type){l(b,g.sibling),U=n(g,T.props),un(U,T),U.return=b,b=U;break t}l(b,g);break}else e(b,g);g=g.sibling}T.type===Q?(U=Yl(T.props.children,b.mode,U,T.key),U.return=b,b=U):(U=cu(T.type,T.key,T.props,null,b.mode,U),un(U,T),U.return=b,b=U)}return i(b);case F:t:{for(P=T.key;g!==null;){if(g.key===P)if(g.tag===4&&g.stateNode.containerInfo===T.containerInfo&&g.stateNode.implementation===T.implementation){l(b,g.sibling),U=n(g,T.children||[]),U.return=b,b=U;break t}else{l(b,g);break}else e(b,g);g=g.sibling}U=Ki(T,b.mode,U),U.return=b,b=U}return i(b);case ct:return T=Vl(T),zt(b,g,T,U)}if(ie(T))return K(b,g,T,U);if(Nt(T)){if(P=Nt(T),typeof P!="function")throw Error(f(150));return T=P.call(T),et(b,g,T,U)}if(typeof T.then=="function")return zt(b,g,mu(T),U);if(T.$$typeof===Z)return zt(b,g,ru(b,T),U);yu(b,T)}return typeof T=="string"&&T!==""||typeof T=="number"||typeof T=="bigint"?(T=""+T,g!==null&&g.tag===6?(l(b,g.sibling),U=n(g,T),U.return=b,b=U):(l(b,g),U=wi(T,b.mode,U),U.return=b,b=U),i(b)):l(b,g)}return function(b,g,T,U){try{nn=0;var P=zt(b,g,T,U);return Ea=null,P}catch($){if($===ba||$===du)throw $;var mt=oe(29,$,null,b.mode);return mt.lanes=U,mt.return=b,mt}}}var Kl=dr(!0),hr=dr(!1),hl=!1;function nc(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function uc(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 ml(t){return{lane:t,tag:0,payload:null,callback:null,next:null}}function yl(t,e,l){var a=t.updateQueue;if(a===null)return null;if(a=a.shared,(vt&2)!==0){var n=a.pending;return n===null?e.next=e:(e.next=n.next,n.next=e),a.pending=e,e=iu(t),Fs(t,null,l),e}return uu(t,a,e,l),iu(t)}function cn(t,e,l){if(e=e.updateQueue,e!==null&&(e=e.shared,(l&4194048)!==0)){var a=e.lanes;a&=t.pendingLanes,l|=a,e.lanes=l,ns(t,l)}}function ic(t,e){var l=t.updateQueue,a=t.alternate;if(a!==null&&(a=a.updateQueue,l===a)){var n=null,u=null;if(l=l.firstBaseUpdate,l!==null){do{var i={lane:l.lane,tag:l.tag,payload:l.payload,callback:null,next:null};u===null?n=u=i:u=u.next=i,l=l.next}while(l!==null);u===null?n=u=e:u=u.next=e}else n=u=e;l={baseState:a.baseState,firstBaseUpdate:n,lastBaseUpdate:u,shared:a.shared,callbacks:a.callbacks},t.updateQueue=l;return}t=l.lastBaseUpdate,t===null?l.firstBaseUpdate=e:t.next=e,l.lastBaseUpdate=e}var cc=!1;function fn(){if(cc){var t=Sa;if(t!==null)throw t}}function sn(t,e,l,a){cc=!1;var n=t.updateQueue;hl=!1;var u=n.firstBaseUpdate,i=n.lastBaseUpdate,s=n.shared.pending;if(s!==null){n.shared.pending=null;var m=s,z=m.next;m.next=null,i===null?u=z:i.next=z,i=m;var M=t.alternate;M!==null&&(M=M.updateQueue,s=M.lastBaseUpdate,s!==i&&(s===null?M.firstBaseUpdate=z:s.next=z,M.lastBaseUpdate=m))}if(u!==null){var j=n.baseState;i=0,M=z=m=null,s=u;do{var A=s.lane&-536870913,O=A!==s.lane;if(O?(ot&A)===A:(a&A)===A){A!==0&&A===pa&&(cc=!0),M!==null&&(M=M.next={lane:0,tag:s.tag,payload:s.payload,callback:null,next:null});t:{var K=t,et=s;A=e;var zt=l;switch(et.tag){case 1:if(K=et.payload,typeof K=="function"){j=K.call(zt,j,A);break t}j=K;break t;case 3:K.flags=K.flags&-65537|128;case 0:if(K=et.payload,A=typeof K=="function"?K.call(zt,j,A):K,A==null)break t;j=R({},j,A);break t;case 2:hl=!0}}A=s.callback,A!==null&&(t.flags|=64,O&&(t.flags|=8192),O=n.callbacks,O===null?n.callbacks=[A]:O.push(A))}else O={lane:A,tag:s.tag,payload:s.payload,callback:s.callback,next:null},M===null?(z=M=O,m=j):M=M.next=O,i|=A;if(s=s.next,s===null){if(s=n.shared.pending,s===null)break;O=s,s=O.next,O.next=null,n.lastBaseUpdate=O,n.shared.pending=null}}while(!0);M===null&&(m=j),n.baseState=m,n.firstBaseUpdate=z,n.lastBaseUpdate=M,u===null&&(n.shared.lanes=0),bl|=i,t.lanes=i,t.memoizedState=j}}function mr(t,e){if(typeof t!="function")throw Error(f(191,t));t.call(e)}function yr(t,e){var l=t.callbacks;if(l!==null)for(t.callbacks=null,t=0;tu?u:8;var i=D.T,s={};D.T=s,Rc(t,!1,e,l);try{var m=n(),z=D.S;if(z!==null&&z(s,m),m!==null&&typeof m=="object"&&typeof m.then=="function"){var M=Km(m,a);dn(t,e,M,ve(t))}else dn(t,e,a,ve(t))}catch(j){dn(t,e,{then:function(){},status:"rejected",reason:j},ve())}finally{L.p=u,i!==null&&s.types!==null&&(i.types=s.types),D.T=i}}function Im(){}function Ac(t,e,l,a){if(t.tag!==5)throw Error(f(476));var n=Jr(t).queue;Kr(t,n,e,I,l===null?Im:function(){return $r(t),l(a)})}function Jr(t){var e=t.memoizedState;if(e!==null)return e;e={memoizedState:I,baseState:I,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:$e,lastRenderedState:I},next:null};var l={};return e.next={memoizedState:l,baseState:l,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:$e,lastRenderedState:l},next:null},t.memoizedState=e,t=t.alternate,t!==null&&(t.memoizedState=e),e}function $r(t){var e=Jr(t);e.next===null&&(e=t.alternate.memoizedState),dn(t,e.next.queue,{},ve())}function _c(){return wt(Nn)}function kr(){return jt().memoizedState}function Fr(){return jt().memoizedState}function Pm(t){for(var e=t.return;e!==null;){switch(e.tag){case 24:case 3:var l=ve();t=ml(l);var a=yl(e,t,l);a!==null&&(ue(a,e,l),cn(a,e,l)),e={cache:tc()},t.payload=e;return}e=e.return}}function ty(t,e,l){var a=ve();l={lane:a,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},_u(t)?Ir(e,l):(l=Zi(t,e,l,a),l!==null&&(ue(l,t,a),Pr(l,e,a)))}function Wr(t,e,l){var a=ve();dn(t,e,l,a)}function dn(t,e,l,a){var n={lane:a,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null};if(_u(t))Ir(e,n);else{var u=t.alternate;if(t.lanes===0&&(u===null||u.lanes===0)&&(u=e.lastRenderedReducer,u!==null))try{var i=e.lastRenderedState,s=u(i,l);if(n.hasEagerState=!0,n.eagerState=s,re(s,i))return uu(t,e,n,0),At===null&&nu(),!1}catch{}if(l=Zi(t,e,n,a),l!==null)return ue(l,t,a),Pr(l,e,a),!0}return!1}function Rc(t,e,l,a){if(a={lane:2,revertLane:nf(),gesture:null,action:a,hasEagerState:!1,eagerState:null,next:null},_u(t)){if(e)throw Error(f(479))}else e=Zi(t,l,a,2),e!==null&&ue(e,t,2)}function _u(t){var e=t.alternate;return t===nt||e!==null&&e===nt}function Ir(t,e){za=pu=!0;var l=t.pending;l===null?e.next=e:(e.next=l.next,l.next=e),t.pending=e}function Pr(t,e,l){if((l&4194048)!==0){var a=e.lanes;a&=t.pendingLanes,l|=a,e.lanes=l,ns(t,l)}}var hn={readContext:wt,use:Eu,useCallback:Mt,useContext:Mt,useEffect:Mt,useImperativeHandle:Mt,useLayoutEffect:Mt,useInsertionEffect:Mt,useMemo:Mt,useReducer:Mt,useRef:Mt,useState:Mt,useDebugValue:Mt,useDeferredValue:Mt,useTransition:Mt,useSyncExternalStore:Mt,useId:Mt,useHostTransitionStatus:Mt,useFormState:Mt,useActionState:Mt,useOptimistic:Mt,useMemoCache:Mt,useCacheRefresh:Mt};hn.useEffectEvent=Mt;var to={readContext:wt,use:Eu,useCallback:function(t,e){return Ft().memoizedState=[t,e===void 0?null:e],t},useContext:wt,useEffect:qr,useImperativeHandle:function(t,e,l){l=l!=null?l.concat([t]):null,zu(4194308,4,Xr.bind(null,e,t),l)},useLayoutEffect:function(t,e){return zu(4194308,4,t,e)},useInsertionEffect:function(t,e){zu(4,2,t,e)},useMemo:function(t,e){var l=Ft();e=e===void 0?null:e;var a=t();if(Jl){il(!0);try{t()}finally{il(!1)}}return l.memoizedState=[a,e],a},useReducer:function(t,e,l){var a=Ft();if(l!==void 0){var n=l(e);if(Jl){il(!0);try{l(e)}finally{il(!1)}}}else n=e;return a.memoizedState=a.baseState=n,t={pending:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:n},a.queue=t,t=t.dispatch=ty.bind(null,nt,t),[a.memoizedState,t]},useRef:function(t){var e=Ft();return t={current:t},e.memoizedState=t},useState:function(t){t=Sc(t);var e=t.queue,l=Wr.bind(null,nt,e);return e.dispatch=l,[t.memoizedState,l]},useDebugValue:Tc,useDeferredValue:function(t,e){var l=Ft();return zc(l,t,e)},useTransition:function(){var t=Sc(!1);return t=Kr.bind(null,nt,t.queue,!0,!1),Ft().memoizedState=t,[!1,t]},useSyncExternalStore:function(t,e,l){var a=nt,n=Ft();if(ht){if(l===void 0)throw Error(f(407));l=l()}else{if(l=e(),At===null)throw Error(f(349));(ot&127)!==0||Er(a,e,l)}n.memoizedState=l;var u={value:l,getSnapshot:e};return n.queue=u,qr(zr.bind(null,a,u,t),[t]),a.flags|=2048,_a(9,{destroy:void 0},Tr.bind(null,a,u,l,e),null),l},useId:function(){var t=Ft(),e=At.identifierPrefix;if(ht){var l=qe,a=Be;l=(a&~(1<<32-se(a)-1)).toString(32)+l,e="_"+e+"R_"+l,l=Su++,0<\/script>",u=u.removeChild(u.firstChild);break;case"select":u=typeof a.is=="string"?i.createElement("select",{is:a.is}):i.createElement("select"),a.multiple?u.multiple=!0:a.size&&(u.size=a.size);break;default:u=typeof a.is=="string"?i.createElement(n,{is:a.is}):i.createElement(n)}}u[Zt]=e,u[Pt]=a;t:for(i=e.child;i!==null;){if(i.tag===5||i.tag===6)u.appendChild(i.stateNode);else if(i.tag!==4&&i.tag!==27&&i.child!==null){i.child.return=i,i=i.child;continue}if(i===e)break t;for(;i.sibling===null;){if(i.return===null||i.return===e)break t;i=i.return}i.sibling.return=i.return,i=i.sibling}e.stateNode=u;t:switch(Jt(u,n,a),n){case"button":case"input":case"select":case"textarea":a=!!a.autoFocus;break t;case"img":a=!0;break t;default:a=!1}a&&Fe(e)}}return Rt(e),Gc(e,e.type,t===null?null:t.memoizedProps,e.pendingProps,l),null;case 6:if(t&&e.stateNode!=null)t.memoizedProps!==a&&Fe(e);else{if(typeof a!="string"&&e.stateNode===null)throw Error(f(166));if(t=it.current,va(e)){if(t=e.stateNode,l=e.memoizedProps,a=null,n=Vt,n!==null)switch(n.tag){case 27:case 5:a=n.memoizedProps}t[Zt]=e,t=!!(t.nodeValue===l||a!==null&&a.suppressHydrationWarning===!0||bd(t.nodeValue,l)),t||ol(e,!0)}else t=wu(t).createTextNode(a),t[Zt]=e,e.stateNode=t}return Rt(e),null;case 31:if(l=e.memoizedState,t===null||t.memoizedState!==null){if(a=va(e),l!==null){if(t===null){if(!a)throw Error(f(318));if(t=e.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(f(557));t[Zt]=e}else Gl(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;Rt(e),t=!1}else l=Fi(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=l),t=!0;if(!t)return e.flags&256?(he(e),e):(he(e),null);if((e.flags&128)!==0)throw Error(f(558))}return Rt(e),null;case 13:if(a=e.memoizedState,t===null||t.memoizedState!==null&&t.memoizedState.dehydrated!==null){if(n=va(e),a!==null&&a.dehydrated!==null){if(t===null){if(!n)throw Error(f(318));if(n=e.memoizedState,n=n!==null?n.dehydrated:null,!n)throw Error(f(317));n[Zt]=e}else Gl(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;Rt(e),n=!1}else n=Fi(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=n),n=!0;if(!n)return e.flags&256?(he(e),e):(he(e),null)}return he(e),(e.flags&128)!==0?(e.lanes=l,e):(l=a!==null,t=t!==null&&t.memoizedState!==null,l&&(a=e.child,n=null,a.alternate!==null&&a.alternate.memoizedState!==null&&a.alternate.memoizedState.cachePool!==null&&(n=a.alternate.memoizedState.cachePool.pool),u=null,a.memoizedState!==null&&a.memoizedState.cachePool!==null&&(u=a.memoizedState.cachePool.pool),u!==n&&(a.flags|=2048)),l!==t&&l&&(e.child.flags|=8192),Mu(e,e.updateQueue),Rt(e),null);case 4:return Ct(),t===null&&sf(e.stateNode.containerInfo),Rt(e),null;case 10:return Ke(e.type),Rt(e),null;case 19:if(C(Ut),a=e.memoizedState,a===null)return Rt(e),null;if(n=(e.flags&128)!==0,u=a.rendering,u===null)if(n)yn(a,!1);else{if(Dt!==0||t!==null&&(t.flags&128)!==0)for(t=e.child;t!==null;){if(u=gu(t),u!==null){for(e.flags|=128,yn(a,!1),t=u.updateQueue,e.updateQueue=t,Mu(e,t),e.subtreeFlags=0,t=l,l=e.child;l!==null;)Ws(l,t),l=l.sibling;return Y(Ut,Ut.current&1|2),ht&&Ve(e,a.treeForkCount),e.child}t=t.sibling}a.tail!==null&&ce()>Hu&&(e.flags|=128,n=!0,yn(a,!1),e.lanes=4194304)}else{if(!n)if(t=gu(u),t!==null){if(e.flags|=128,n=!0,t=t.updateQueue,e.updateQueue=t,Mu(e,t),yn(a,!0),a.tail===null&&a.tailMode==="hidden"&&!u.alternate&&!ht)return Rt(e),null}else 2*ce()-a.renderingStartTime>Hu&&l!==536870912&&(e.flags|=128,n=!0,yn(a,!1),e.lanes=4194304);a.isBackwards?(u.sibling=e.child,e.child=u):(t=a.last,t!==null?t.sibling=u:e.child=u,a.last=u)}return a.tail!==null?(t=a.tail,a.rendering=t,a.tail=t.sibling,a.renderingStartTime=ce(),t.sibling=null,l=Ut.current,Y(Ut,n?l&1|2:l&1),ht&&Ve(e,a.treeForkCount),t):(Rt(e),null);case 22:case 23:return he(e),sc(),a=e.memoizedState!==null,t!==null?t.memoizedState!==null!==a&&(e.flags|=8192):a&&(e.flags|=8192),a?(l&536870912)!==0&&(e.flags&128)===0&&(Rt(e),e.subtreeFlags&6&&(e.flags|=8192)):Rt(e),l=e.updateQueue,l!==null&&Mu(e,l.retryQueue),l=null,t!==null&&t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(l=t.memoizedState.cachePool.pool),a=null,e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(a=e.memoizedState.cachePool.pool),a!==l&&(e.flags|=2048),t!==null&&C(Zl),null;case 24:return l=null,t!==null&&(l=t.memoizedState.cache),e.memoizedState.cache!==l&&(e.flags|=2048),Ke(Ht),Rt(e),null;case 25:return null;case 30:return null}throw Error(f(156,e.tag))}function uy(t,e){switch($i(e),e.tag){case 1:return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 3:return Ke(Ht),Ct(),t=e.flags,(t&65536)!==0&&(t&128)===0?(e.flags=t&-65537|128,e):null;case 26:case 27:case 5:return Xn(e),null;case 31:if(e.memoizedState!==null){if(he(e),e.alternate===null)throw Error(f(340));Gl()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 13:if(he(e),t=e.memoizedState,t!==null&&t.dehydrated!==null){if(e.alternate===null)throw Error(f(340));Gl()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 19:return C(Ut),null;case 4:return Ct(),null;case 10:return Ke(e.type),null;case 22:case 23:return he(e),sc(),t!==null&&C(Zl),t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 24:return Ke(Ht),null;case 25:return null;default:return null}}function _o(t,e){switch($i(e),e.tag){case 3:Ke(Ht),Ct();break;case 26:case 27:case 5:Xn(e);break;case 4:Ct();break;case 31:e.memoizedState!==null&&he(e);break;case 13:he(e);break;case 19:C(Ut);break;case 10:Ke(e.type);break;case 22:case 23:he(e),sc(),t!==null&&C(Zl);break;case 24:Ke(Ht)}}function vn(t,e){try{var l=e.updateQueue,a=l!==null?l.lastEffect:null;if(a!==null){var n=a.next;l=n;do{if((l.tag&t)===t){a=void 0;var u=l.create,i=l.inst;a=u(),i.destroy=a}l=l.next}while(l!==n)}}catch(s){bt(e,e.return,s)}}function pl(t,e,l){try{var a=e.updateQueue,n=a!==null?a.lastEffect:null;if(n!==null){var u=n.next;a=u;do{if((a.tag&t)===t){var i=a.inst,s=i.destroy;if(s!==void 0){i.destroy=void 0,n=e;var m=l,z=s;try{z()}catch(M){bt(n,m,M)}}}a=a.next}while(a!==u)}}catch(M){bt(e,e.return,M)}}function Ro(t){var e=t.updateQueue;if(e!==null){var l=t.stateNode;try{yr(e,l)}catch(a){bt(t,t.return,a)}}}function Oo(t,e,l){l.props=$l(t.type,t.memoizedProps),l.state=t.memoizedState;try{l.componentWillUnmount()}catch(a){bt(t,e,a)}}function gn(t,e){try{var l=t.ref;if(l!==null){switch(t.tag){case 26:case 27:case 5:var a=t.stateNode;break;case 30:a=t.stateNode;break;default:a=t.stateNode}typeof l=="function"?t.refCleanup=l(a):l.current=a}}catch(n){bt(t,e,n)}}function Le(t,e){var l=t.ref,a=t.refCleanup;if(l!==null)if(typeof a=="function")try{a()}catch(n){bt(t,e,n)}finally{t.refCleanup=null,t=t.alternate,t!=null&&(t.refCleanup=null)}else if(typeof l=="function")try{l(null)}catch(n){bt(t,e,n)}else l.current=null}function xo(t){var e=t.type,l=t.memoizedProps,a=t.stateNode;try{t:switch(e){case"button":case"input":case"select":case"textarea":l.autoFocus&&a.focus();break t;case"img":l.src?a.src=l.src:l.srcSet&&(a.srcset=l.srcSet)}}catch(n){bt(t,t.return,n)}}function Xc(t,e,l){try{var a=t.stateNode;Oy(a,t.type,l,e),a[Pt]=e}catch(n){bt(t,t.return,n)}}function No(t){return t.tag===5||t.tag===3||t.tag===26||t.tag===27&&_l(t.type)||t.tag===4}function Qc(t){t:for(;;){for(;t.sibling===null;){if(t.return===null||No(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 Zc(t,e,l){var a=t.tag;if(a===5||a===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=Xe));else if(a!==4&&(a===27&&_l(t.type)&&(l=t.stateNode,e=null),t=t.child,t!==null))for(Zc(t,e,l),t=t.sibling;t!==null;)Zc(t,e,l),t=t.sibling}function Du(t,e,l){var a=t.tag;if(a===5||a===6)t=t.stateNode,e?l.insertBefore(t,e):l.appendChild(t);else if(a!==4&&(a===27&&_l(t.type)&&(l=t.stateNode),t=t.child,t!==null))for(Du(t,e,l),t=t.sibling;t!==null;)Du(t,e,l),t=t.sibling}function Mo(t){var e=t.stateNode,l=t.memoizedProps;try{for(var a=t.type,n=e.attributes;n.length;)e.removeAttributeNode(n[0]);Jt(e,a,l),e[Zt]=t,e[Pt]=l}catch(u){bt(t,t.return,u)}}var We=!1,Lt=!1,Vc=!1,Do=typeof WeakSet=="function"?WeakSet:Set,Qt=null;function iy(t,e){if(t=t.containerInfo,df=Iu,t=Qs(t),qi(t)){if("selectionStart"in t)var l={start:t.selectionStart,end:t.selectionEnd};else t:{l=(l=t.ownerDocument)&&l.defaultView||window;var a=l.getSelection&&l.getSelection();if(a&&a.rangeCount!==0){l=a.anchorNode;var n=a.anchorOffset,u=a.focusNode;a=a.focusOffset;try{l.nodeType,u.nodeType}catch{l=null;break t}var i=0,s=-1,m=-1,z=0,M=0,j=t,A=null;e:for(;;){for(var O;j!==l||n!==0&&j.nodeType!==3||(s=i+n),j!==u||a!==0&&j.nodeType!==3||(m=i+a),j.nodeType===3&&(i+=j.nodeValue.length),(O=j.firstChild)!==null;)A=j,j=O;for(;;){if(j===t)break e;if(A===l&&++z===n&&(s=i),A===u&&++M===a&&(m=i),(O=j.nextSibling)!==null)break;j=A,A=j.parentNode}j=O}l=s===-1||m===-1?null:{start:s,end:m}}else l=null}l=l||{start:0,end:0}}else l=null;for(hf={focusedElem:t,selectionRange:l},Iu=!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,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,a,l),u[Zt]=t,Xt(u),a=u;break t;case"link":var i=qd("link","href",n).get(a+(l.href||""));if(i){for(var s=0;szt&&(i=zt,zt=et,et=i);var b=Gs(s,et),g=Gs(s,zt);if(b&&g&&(O.rangeCount!==1||O.anchorNode!==b.node||O.anchorOffset!==b.offset||O.focusNode!==g.node||O.focusOffset!==g.offset)){var T=j.createRange();T.setStart(b.node,b.offset),O.removeAllRanges(),et>zt?(O.addRange(T),O.extend(g.node,g.offset)):(T.setEnd(g.node,g.offset),O.addRange(T))}}}}for(j=[],O=s;O=O.parentNode;)O.nodeType===1&&j.push({element:O,left:O.scrollLeft,top:O.scrollTop});for(typeof s.focus=="function"&&s.focus(),s=0;sl?32:l,D.T=null,l=Wc,Wc=null;var u=Tl,i=ll;if(Gt=0,Ma=Tl=null,ll=0,(vt&6)!==0)throw Error(f(331));var s=vt;if(vt|=4,Qo(u.current),Yo(u,u.current,i,l),vt=s,zn(0,!1),fe&&typeof fe.onPostCommitFiberRoot=="function")try{fe.onPostCommitFiberRoot(Ga,u)}catch{}return!0}finally{L.p=n,D.T=a,id(t,e)}}function fd(t,e,l){e=ze(l,e),e=Mc(t.stateNode,e,2),t=yl(t,e,2),t!==null&&(Qa(t,2),Ye(t))}function bt(t,e,l){if(t.tag===3)fd(t,t,l);else for(;e!==null;){if(e.tag===3){fd(e,t,l);break}else if(e.tag===1){var a=e.stateNode;if(typeof e.type.getDerivedStateFromError=="function"||typeof a.componentDidCatch=="function"&&(El===null||!El.has(a))){t=ze(l,t),l=fo(2),a=yl(e,l,2),a!==null&&(so(l,a,e,t),Qa(a,2),Ye(a));break}}e=e.return}}function ef(t,e,l){var a=t.pingCache;if(a===null){a=t.pingCache=new sy;var n=new Set;a.set(e,n)}else n=a.get(e),n===void 0&&(n=new Set,a.set(e,n));n.has(l)||(Jc=!0,n.add(l),t=my.bind(null,t,e,l),e.then(t,t))}function my(t,e,l){var a=t.pingCache;a!==null&&a.delete(e),t.pingedLanes|=t.suspendedLanes&l,t.warmLanes&=~l,At===t&&(ot&l)===l&&(Dt===4||Dt===3&&(ot&62914560)===ot&&300>ce()-ju?(vt&2)===0&&Da(t,0):$c|=l,Na===ot&&(Na=0)),Ye(t)}function sd(t,e){e===0&&(e=ls()),t=Ll(t,e),t!==null&&(Qa(t,e),Ye(t))}function yy(t){var e=t.memoizedState,l=0;e!==null&&(l=e.retryLane),sd(t,l)}function vy(t,e){var l=0;switch(t.tag){case 31:case 13:var a=t.stateNode,n=t.memoizedState;n!==null&&(l=n.retryLane);break;case 19:a=t.stateNode;break;case 22:a=t.stateNode._retryCache;break;default:throw Error(f(314))}a!==null&&a.delete(e),sd(t,l)}function gy(t,e){return mi(t,e)}var Xu=null,Ua=null,lf=!1,Qu=!1,af=!1,Al=0;function Ye(t){t!==Ua&&t.next===null&&(Ua===null?Xu=Ua=t:Ua=Ua.next=t),Qu=!0,lf||(lf=!0,Sy())}function zn(t,e){if(!af&&Qu){af=!0;do for(var l=!1,a=Xu;a!==null;){if(t!==0){var n=a.pendingLanes;if(n===0)var u=0;else{var i=a.suspendedLanes,s=a.pingedLanes;u=(1<<31-se(42|t)+1)-1,u&=n&~(i&~s),u=u&201326741?u&201326741|1:u?u|2:0}u!==0&&(l=!0,hd(a,u))}else u=ot,u=Kn(a,a===At?u:0,a.cancelPendingCommit!==null||a.timeoutHandle!==-1),(u&3)===0||Xa(a,u)||(l=!0,hd(a,u));a=a.next}while(l);af=!1}}function py(){rd()}function rd(){Qu=lf=!1;var t=0;Al!==0&&Ny()&&(t=Al);for(var e=ce(),l=null,a=Xu;a!==null;){var n=a.next,u=od(a,e);u===0?(a.next=null,l===null?Xu=n:l.next=n,n===null&&(Ua=l)):(l=a,(t!==0||(u&3)!==0)&&(Qu=!0)),a=n}Gt!==0&&Gt!==5||zn(t),Al!==0&&(Al=0)}function od(t,e){for(var l=t.suspendedLanes,a=t.pingedLanes,n=t.expirationTimes,u=t.pendingLanes&-62914561;0s)break;var M=m.transferSize,j=m.initiatorType;M&&Ed(j)&&(m=m.responseEnd,i+=M*(m"u"?null:document;function Ud(t,e,l){var a=ja;if(a&&typeof e=="string"&&e){var n=Ee(e);n='link[rel="'+t+'"][href="'+n+'"]',typeof l=="string"&&(n+='[crossorigin="'+l+'"]'),Cd.has(n)||(Cd.add(n),t={rel:t,crossOrigin:l,href:e},a.querySelector(n)===null&&(e=a.createElement("link"),Jt(e,"link",t),Xt(e),a.head.appendChild(e)))}}function Ly(t){al.D(t),Ud("dns-prefetch",t,null)}function Yy(t,e){al.C(t,e),Ud("preconnect",t,e)}function Gy(t,e,l){al.L(t,e,l);var a=ja;if(a&&t&&e){var n='link[rel="preload"][as="'+Ee(e)+'"]';e==="image"&&l&&l.imageSrcSet?(n+='[imagesrcset="'+Ee(l.imageSrcSet)+'"]',typeof l.imageSizes=="string"&&(n+='[imagesizes="'+Ee(l.imageSizes)+'"]')):n+='[href="'+Ee(t)+'"]';var u=n;switch(e){case"style":u=Ha(t);break;case"script":u=Ba(t)}Ne.has(u)||(t=R({rel:"preload",href:e==="image"&&l&&l.imageSrcSet?void 0:t,as:e},l),Ne.set(u,t),a.querySelector(n)!==null||e==="style"&&a.querySelector(On(u))||e==="script"&&a.querySelector(xn(u))||(e=a.createElement("link"),Jt(e,"link",t),Xt(e),a.head.appendChild(e)))}}function Xy(t,e){al.m(t,e);var l=ja;if(l&&t){var a=e&&typeof e.as=="string"?e.as:"script",n='link[rel="modulepreload"][as="'+Ee(a)+'"][href="'+Ee(t)+'"]',u=n;switch(a){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":u=Ba(t)}if(!Ne.has(u)&&(t=R({rel:"modulepreload",href:t},e),Ne.set(u,t),l.querySelector(n)===null)){switch(a){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(l.querySelector(xn(u)))return}a=l.createElement("link"),Jt(a,"link",t),Xt(a),l.head.appendChild(a)}}}function Qy(t,e,l){al.S(t,e,l);var a=ja;if(a&&t){var n=aa(a).hoistableStyles,u=Ha(t);e=e||"default";var i=n.get(u);if(!i){var s={loading:0,preload:null};if(i=a.querySelector(On(u)))s.loading=5;else{t=R({rel:"stylesheet",href:t,"data-precedence":e},l),(l=Ne.get(u))&&bf(t,l);var m=i=a.createElement("link");Xt(m),Jt(m,"link",t),m._p=new Promise(function(z,M){m.onload=z,m.onerror=M}),m.addEventListener("load",function(){s.loading|=1}),m.addEventListener("error",function(){s.loading|=2}),s.loading|=4,Ju(i,e,a)}i={type:"stylesheet",instance:i,count:1,state:s},n.set(u,i)}}}function Zy(t,e){al.X(t,e);var l=ja;if(l&&t){var a=aa(l).hoistableScripts,n=Ba(t),u=a.get(n);u||(u=l.querySelector(xn(n)),u||(t=R({src:t,async:!0},e),(e=Ne.get(n))&&Ef(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},a.set(n,u))}}function Vy(t,e){al.M(t,e);var l=ja;if(l&&t){var a=aa(l).hoistableScripts,n=Ba(t),u=a.get(n);u||(u=l.querySelector(xn(n)),u||(t=R({src:t,async:!0,type:"module"},e),(e=Ne.get(n))&&Ef(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},a.set(n,u))}}function jd(t,e,l,a){var n=(n=it.current)?Ku(n):null;if(!n)throw Error(f(446));switch(t){case"meta":case"title":return null;case"style":return typeof l.precedence=="string"&&typeof l.href=="string"?(e=Ha(l.href),l=aa(n).hoistableStyles,a=l.get(e),a||(a={type:"style",instance:null,count:0,state:null},l.set(e,a)),a):{type:"void",instance:null,count:0,state:null};case"link":if(l.rel==="stylesheet"&&typeof l.href=="string"&&typeof l.precedence=="string"){t=Ha(l.href);var u=aa(n).hoistableStyles,i=u.get(t);if(i||(n=n.ownerDocument||n,i={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},u.set(t,i),(u=n.querySelector(On(t)))&&!u._p&&(i.instance=u,i.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||wy(n,t,l,i.state))),e&&a===null)throw Error(f(528,""));return i}if(e&&a!==null)throw Error(f(529,""));return null;case"script":return e=l.async,l=l.src,typeof l=="string"&&e&&typeof e!="function"&&typeof e!="symbol"?(e=Ba(l),l=aa(n).hoistableScripts,a=l.get(e),a||(a={type:"script",instance:null,count:0,state:null},l.set(e,a)),a):{type:"void",instance:null,count:0,state:null};default:throw Error(f(444,t))}}function Ha(t){return'href="'+Ee(t)+'"'}function On(t){return'link[rel="stylesheet"]['+t+"]"}function Hd(t){return R({},t,{"data-precedence":t.precedence,precedence:null})}function wy(t,e,l,a){t.querySelector('link[rel="preload"][as="style"]['+e+"]")?a.loading=1:(e=t.createElement("link"),a.preload=e,e.addEventListener("load",function(){return a.loading|=1}),e.addEventListener("error",function(){return a.loading|=2}),Jt(e,"link",l),Xt(e),t.head.appendChild(e))}function Ba(t){return'[src="'+Ee(t)+'"]'}function xn(t){return"script[async]"+t}function Bd(t,e,l){if(e.count++,e.instance===null)switch(e.type){case"style":var a=t.querySelector('style[data-href~="'+Ee(l.href)+'"]');if(a)return e.instance=a,Xt(a),a;var n=R({},l,{"data-href":l.href,"data-precedence":l.precedence,href:null,precedence:null});return a=(t.ownerDocument||t).createElement("style"),Xt(a),Jt(a,"style",n),Ju(a,l.precedence,t),e.instance=a;case"stylesheet":n=Ha(l.href);var u=t.querySelector(On(n));if(u)return e.state.loading|=4,e.instance=u,Xt(u),u;a=Hd(l),(n=Ne.get(n))&&bf(a,n),u=(t.ownerDocument||t).createElement("link"),Xt(u);var i=u;return i._p=new Promise(function(s,m){i.onload=s,i.onerror=m}),Jt(u,"link",a),e.state.loading|=4,Ju(u,l.precedence,t),e.instance=u;case"script":return u=Ba(l.src),(n=t.querySelector(xn(u)))?(e.instance=n,Xt(n),n):(a=l,(n=Ne.get(u))&&(a=R({},l),Ef(a,n)),t=t.ownerDocument||t,n=t.createElement("script"),Xt(n),Jt(n,"link",a),t.head.appendChild(n),e.instance=n);case"void":return null;default:throw Error(f(443,e.type))}else e.type==="stylesheet"&&(e.state.loading&4)===0&&(a=e.instance,e.state.loading|=4,Ju(a,l.precedence,t));return e.instance}function Ju(t,e,l){for(var a=l.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),n=a.length?a[a.length-1]:null,u=n,i=0;i title"):null)}function Ky(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;return e.rel==="stylesheet"?(t=e.disabled,typeof e.precedence=="string"&&t==null):!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 Yd(t){return!(t.type==="stylesheet"&&(t.state.loading&3)===0)}function Jy(t,e,l,a){if(l.type==="stylesheet"&&(typeof a.media!="string"||matchMedia(a.media).matches!==!1)&&(l.state.loading&4)===0){if(l.instance===null){var n=Ha(a.href),u=e.querySelector(On(n));if(u){e=u._p,e!==null&&typeof e=="object"&&typeof e.then=="function"&&(t.count++,t=ku.bind(t),e.then(t,t)),l.state.loading|=4,l.instance=u,Xt(u);return}u=e.ownerDocument||e,a=Hd(a),(n=Ne.get(n))&&bf(a,n),u=u.createElement("link"),Xt(u);var i=u;i._p=new Promise(function(s,m){i.onload=s,i.onerror=m}),Jt(u,"link",a),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=ku.bind(t),e.addEventListener("load",l),e.addEventListener("error",l))}}var Tf=0;function $y(t,e){return t.stylesheets&&t.count===0&&Wu(t,t.stylesheets),0Tf?50:800)+e);return t.unsuspend=l,function(){t.unsuspend=null,clearTimeout(a),clearTimeout(n)}}:null}function ku(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Wu(this,this.stylesheets);else if(this.unsuspend){var t=this.unsuspend;this.unsuspend=null,t()}}}var Fu=null;function Wu(t,e){t.stylesheets=null,t.unsuspend!==null&&(t.count++,Fu=new Map,e.forEach(ky,t),Fu=null,ku.call(t))}function ky(t,e){if(!(e.state.loading&4)){var l=Fu.get(t);if(l)var a=l.get(null);else{l=new Map,Fu.set(t,l);for(var n=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(r){console.error(r)}}return c(),Df.exports=hv(),Df.exports}var yv=mv();var sh="popstate";function vv(c={}){function r(d,h){let{pathname:p="/",search:_="",hash:S=""}=Il(d.location.hash.substring(1));return!p.startsWith("/")&&!p.startsWith(".")&&(p="/"+p),Gf("",{pathname:p,search:_,hash:S},h.state&&h.state.usr||null,h.state&&h.state.key||"default")}function o(d,h){let p=d.document.querySelector("base"),_="";if(p&&p.getAttribute("href")){let S=d.location.href,y=S.indexOf("#");_=y===-1?S:S.slice(0,y)}return _+"#"+(typeof h=="string"?h:Bn(h))}function f(d,h){ge(d.pathname.charAt(0)==="/",`relative pathnames are not supported in hash history.push(${JSON.stringify(h)})`)}return pv(r,o,f,c)}function Ot(c,r){if(c===!1||c===null||typeof c>"u")throw new Error(r)}function ge(c,r){if(!c){typeof console<"u"&&console.warn(r);try{throw new Error(r)}catch{}}}function gv(){return Math.random().toString(36).substring(2,10)}function rh(c,r){return{usr:c.state,key:c.key,idx:r}}function Gf(c,r,o=null,f){return{pathname:typeof c=="string"?c:c.pathname,search:"",hash:"",...typeof r=="string"?Il(r):r,state:o,key:r&&r.key||f||gv()}}function Bn({pathname:c="/",search:r="",hash:o=""}){return r&&r!=="?"&&(c+=r.charAt(0)==="?"?r:"?"+r),o&&o!=="#"&&(c+=o.charAt(0)==="#"?o:"#"+o),c}function Il(c){let r={};if(c){let o=c.indexOf("#");o>=0&&(r.hash=c.substring(o),c=c.substring(0,o));let f=c.indexOf("?");f>=0&&(r.search=c.substring(f),c=c.substring(0,f)),c&&(r.pathname=c)}return r}function pv(c,r,o,f={}){let{window:d=document.defaultView,v5Compat:h=!1}=f,p=d.history,_="POP",S=null,y=N();y==null&&(y=0,p.replaceState({...p.state,idx:y},""));function N(){return(p.state||{idx:null}).idx}function R(){_="POP";let G=N(),H=G==null?null:G-y;y=G,S&&S({action:_,location:Q.location,delta:H})}function B(G,H){_="PUSH";let q=Gf(Q.location,G,H);o&&o(q,G),y=N()+1;let Z=rh(q,y),W=Q.createHref(q);try{p.pushState(Z,"",W)}catch(tt){if(tt instanceof DOMException&&tt.name==="DataCloneError")throw tt;d.location.assign(W)}h&&S&&S({action:_,location:Q.location,delta:1})}function V(G,H){_="REPLACE";let q=Gf(Q.location,G,H);o&&o(q,G),y=N();let Z=rh(q,y),W=Q.createHref(q);p.replaceState(Z,"",W),h&&S&&S({action:_,location:Q.location,delta:0})}function F(G){return Sv(G)}let Q={get action(){return _},get location(){return c(d,p)},listen(G){if(S)throw new Error("A history only accepts one active listener");return d.addEventListener(sh,R),S=G,()=>{d.removeEventListener(sh,R),S=null}},createHref(G){return r(d,G)},createURL:F,encodeLocation(G){let H=F(G);return{pathname:H.pathname,search:H.search,hash:H.hash}},push:B,replace:V,go(G){return p.go(G)}};return Q}function Sv(c,r=!1){let o="http://localhost";typeof window<"u"&&(o=window.location.origin!=="null"?window.location.origin:window.location.href),Ot(o,"No window.location.(origin|href) available to create URL");let f=typeof c=="string"?c:Bn(c);return f=f.replace(/ $/,"%20"),!r&&f.startsWith("//")&&(f=o+f),new URL(f,o)}function yh(c,r,o="/"){return bv(c,r,o,!1)}function bv(c,r,o,f){let d=typeof r=="string"?Il(r):r,h=ul(d.pathname||"/",o);if(h==null)return null;let p=vh(c);Ev(p);let _=null;for(let S=0;_==null&&S{let N={relativePath:y===void 0?p.path||"":y,caseSensitive:p.caseSensitive===!0,childrenIndex:_,route:p};if(N.relativePath.startsWith("/")){if(!N.relativePath.startsWith(f)&&S)return;Ot(N.relativePath.startsWith(f),`Absolute route path "${N.relativePath}" nested under path "${f}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),N.relativePath=N.relativePath.slice(f.length)}let R=nl([f,N.relativePath]),B=o.concat(N);p.children&&p.children.length>0&&(Ot(p.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${R}".`),vh(p.children,r,B,R,S)),!(p.path==null&&!p.index)&&r.push({path:R,score:xv(R,p.index),routesMeta:B})};return c.forEach((p,_)=>{if(p.path===""||!p.path?.includes("?"))h(p,_);else for(let S of gh(p.path))h(p,_,!0,S)}),r}function gh(c){let r=c.split("/");if(r.length===0)return[];let[o,...f]=r,d=o.endsWith("?"),h=o.replace(/\?$/,"");if(f.length===0)return d?[h,""]:[h];let p=gh(f.join("/")),_=[];return _.push(...p.map(S=>S===""?h:[h,S].join("/"))),d&&_.push(...p),_.map(S=>c.startsWith("/")&&S===""?"/":S)}function Ev(c){c.sort((r,o)=>r.score!==o.score?o.score-r.score:Nv(r.routesMeta.map(f=>f.childrenIndex),o.routesMeta.map(f=>f.childrenIndex)))}var Tv=/^:[\w-]+$/,zv=3,Av=2,_v=1,Rv=10,Ov=-2,oh=c=>c==="*";function xv(c,r){let o=c.split("/"),f=o.length;return o.some(oh)&&(f+=Ov),r&&(f+=Av),o.filter(d=>!oh(d)).reduce((d,h)=>d+(Tv.test(h)?zv:h===""?_v:Rv),f)}function Nv(c,r){return c.length===r.length&&c.slice(0,-1).every((f,d)=>f===r[d])?c[c.length-1]-r[r.length-1]:0}function Mv(c,r,o=!1){let{routesMeta:f}=c,d={},h="/",p=[];for(let _=0;_{if(N==="*"){let F=_[B]||"";p=h.slice(0,h.length-F.length).replace(/(.)\/+$/,"$1")}const V=_[B];return R&&!V?y[N]=void 0:y[N]=(V||"").replace(/%2F/g,"/"),y},{}),pathname:h,pathnameBase:p,pattern:c}}function Dv(c,r=!1,o=!0){ge(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 f=[],d="^"+c.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(p,_,S)=>(f.push({paramName:_,isOptional:S!=null}),S?"/?([^\\/]+)?":"/([^\\/]+)")).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return c.endsWith("*")?(f.push({paramName:"*"}),d+=c==="*"||c==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):o?d+="\\/*$":c!==""&&c!=="/"&&(d+="(?:(?=\\/|$))"),[new RegExp(d,r?void 0:"i"),f]}function ph(c){try{return c.split("/").map(r=>decodeURIComponent(r).replace(/\//g,"%2F")).join("/")}catch(r){return ge(!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 (${r}).`),c}}function ul(c,r){if(r==="/")return c;if(!c.toLowerCase().startsWith(r.toLowerCase()))return null;let o=r.endsWith("/")?r.length-1:r.length,f=c.charAt(o);return f&&f!=="/"?null:c.slice(o)||"/"}var Cv=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i;function Uv(c,r="/"){let{pathname:o,search:f="",hash:d=""}=typeof c=="string"?Il(c):c,h;return o?(o=o.replace(/\/\/+/g,"/"),o.startsWith("/")?h=dh(o.substring(1),"/"):h=dh(o,r)):h=r,{pathname:h,search:Bv(f),hash:qv(d)}}function dh(c,r){let o=r.replace(/\/+$/,"").split("/");return c.split("/").forEach(d=>{d===".."?o.length>1&&o.pop():d!=="."&&o.push(d)}),o.length>1?o.join("/"):"/"}function Hf(c,r,o,f){return`Cannot include a '${c}' character in a manually specified \`to.${r}\` field [${JSON.stringify(f)}]. Please separate it out to the \`to.${o}\` field. Alternatively you may provide the full path as a string in and the router will parse it for you.`}function jv(c){return c.filter((r,o)=>o===0||r.route.path&&r.route.path.length>0)}function Vf(c){let r=jv(c);return r.map((o,f)=>f===r.length-1?o.pathname:o.pathnameBase)}function wf(c,r,o,f=!1){let d;typeof c=="string"?d=Il(c):(d={...c},Ot(!d.pathname||!d.pathname.includes("?"),Hf("?","pathname","search",d)),Ot(!d.pathname||!d.pathname.includes("#"),Hf("#","pathname","hash",d)),Ot(!d.search||!d.search.includes("#"),Hf("#","search","hash",d)));let h=c===""||d.pathname==="",p=h?"/":d.pathname,_;if(p==null)_=o;else{let R=r.length-1;if(!f&&p.startsWith("..")){let B=p.split("/");for(;B[0]==="..";)B.shift(),R-=1;d.pathname=B.join("/")}_=R>=0?r[R]:"/"}let S=Uv(d,_),y=p&&p!=="/"&&p.endsWith("/"),N=(h||p===".")&&o.endsWith("/");return!S.pathname.endsWith("/")&&(y||N)&&(S.pathname+="/"),S}var nl=c=>c.join("/").replace(/\/\/+/g,"/"),Hv=c=>c.replace(/\/+$/,"").replace(/^\/*/,"/"),Bv=c=>!c||c==="?"?"":c.startsWith("?")?c:"?"+c,qv=c=>!c||c==="#"?"":c.startsWith("#")?c:"#"+c,Lv=class{constructor(c,r,o,f=!1){this.status=c,this.statusText=r||"",this.internal=f,o instanceof Error?(this.data=o.toString(),this.error=o):this.data=o}};function Yv(c){return c!=null&&typeof c.status=="number"&&typeof c.statusText=="string"&&typeof c.internal=="boolean"&&"data"in c}function Gv(c){return c.map(r=>r.route.path).filter(Boolean).join("/").replace(/\/\/*/g,"/")||"/"}var Sh=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u";function bh(c,r){let o=c;if(typeof o!="string"||!Cv.test(o))return{absoluteURL:void 0,isExternal:!1,to:o};let f=o,d=!1;if(Sh)try{let h=new URL(window.location.href),p=o.startsWith("//")?new URL(h.protocol+o):new URL(o),_=ul(p.pathname,r);p.origin===h.origin&&_!=null?o=_+p.search+p.hash:d=!0}catch{ge(!1,` contains an invalid URL which will probably break when clicked - please update to a valid URL path.`)}return{absoluteURL:f,isExternal:d,to:o}}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var Eh=["POST","PUT","PATCH","DELETE"];new Set(Eh);var Xv=["GET",...Eh];new Set(Xv);var La=E.createContext(null);La.displayName="DataRouter";var fi=E.createContext(null);fi.displayName="DataRouterState";var Qv=E.createContext(!1),Th=E.createContext({isTransitioning:!1});Th.displayName="ViewTransition";var Zv=E.createContext(new Map);Zv.displayName="Fetchers";var Vv=E.createContext(null);Vv.displayName="Await";var pe=E.createContext(null);pe.displayName="Navigation";var Ln=E.createContext(null);Ln.displayName="Location";var He=E.createContext({outlet:null,matches:[],isDataRoute:!1});He.displayName="Route";var Kf=E.createContext(null);Kf.displayName="RouteError";var zh="REACT_ROUTER_ERROR",wv="REDIRECT",Kv="ROUTE_ERROR_RESPONSE";function Jv(c){if(c.startsWith(`${zh}:${wv}:{`))try{let r=JSON.parse(c.slice(28));if(typeof r=="object"&&r&&typeof r.status=="number"&&typeof r.statusText=="string"&&typeof r.location=="string"&&typeof r.reloadDocument=="boolean"&&typeof r.replace=="boolean")return r}catch{}}function $v(c){if(c.startsWith(`${zh}:${Kv}:{`))try{let r=JSON.parse(c.slice(40));if(typeof r=="object"&&r&&typeof r.status=="number"&&typeof r.statusText=="string")return new Lv(r.status,r.statusText,r.data)}catch{}}function kv(c,{relative:r}={}){Ot(Pl(),"useHref() may be used only in the context of a component.");let{basename:o,navigator:f}=E.useContext(pe),{hash:d,pathname:h,search:p}=Gn(c,{relative:r}),_=h;return o!=="/"&&(_=h==="/"?o:nl([o,h])),f.createHref({pathname:_,search:p,hash:d})}function Pl(){return E.useContext(Ln)!=null}function Me(){return Ot(Pl(),"useLocation() may be used only in the context of a component."),E.useContext(Ln).location}function Bf(c){Ot(Pl(),"useMatch() may be used only in the context of a component.");let{pathname:r}=Me();return E.useMemo(()=>qn(c,ph(r)),[r,c])}var Ah="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function _h(c){E.useContext(pe).static||E.useLayoutEffect(c)}function Yn(){let{isDataRoute:c}=E.useContext(He);return c?s0():Fv()}function Fv(){Ot(Pl(),"useNavigate() may be used only in the context of a component.");let c=E.useContext(La),{basename:r,navigator:o}=E.useContext(pe),{matches:f}=E.useContext(He),{pathname:d}=Me(),h=JSON.stringify(Vf(f)),p=E.useRef(!1);return _h(()=>{p.current=!0}),E.useCallback((S,y={})=>{if(ge(p.current,Ah),!p.current)return;if(typeof S=="number"){o.go(S);return}let N=wf(S,JSON.parse(h),d,y.relative==="path");c==null&&r!=="/"&&(N.pathname=N.pathname==="/"?r:nl([r,N.pathname])),(y.replace?o.replace:o.push)(N,y.state,y)},[r,o,h,d,c])}E.createContext(null);function Wv(){let{matches:c}=E.useContext(He),r=c[c.length-1];return r?r.params:{}}function Gn(c,{relative:r}={}){let{matches:o}=E.useContext(He),{pathname:f}=Me(),d=JSON.stringify(Vf(o));return E.useMemo(()=>wf(c,JSON.parse(d),f,r==="path"),[c,d,f,r])}function Iv(c,r){return Rh(c,r)}function Rh(c,r,o,f,d){Ot(Pl(),"useRoutes() may be used only in the context of a component.");let{navigator:h}=E.useContext(pe),{matches:p}=E.useContext(He),_=p[p.length-1],S=_?_.params:{},y=_?_.pathname:"/",N=_?_.pathnameBase:"/",R=_&&_.route;{let q=R&&R.path||"";xh(y,!R||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 B=Me(),V;if(r){let q=typeof r=="string"?Il(r):r;Ot(N==="/"||q.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 "${q.pathname}" was given in the \`location\` prop.`),V=q}else V=B;let F=V.pathname||"/",Q=F;if(N!=="/"){let q=N.replace(/^\//,"").split("/");Q="/"+F.replace(/^\//,"").split("/").slice(q.length).join("/")}let G=yh(c,{pathname:Q});ge(R||G!=null,`No routes matched location "${V.pathname}${V.search}${V.hash}" `),ge(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 "${V.pathname}${V.search}${V.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=a0(G&&G.map(q=>Object.assign({},q,{params:Object.assign({},S,q.params),pathname:nl([N,h.encodeLocation?h.encodeLocation(q.pathname.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:q.pathname]),pathnameBase:q.pathnameBase==="/"?N:nl([N,h.encodeLocation?h.encodeLocation(q.pathnameBase.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:q.pathnameBase])})),p,o,f,d);return r&&H?E.createElement(Ln.Provider,{value:{location:{pathname:"/",search:"",hash:"",state:null,key:"default",...V},navigationType:"POP"}},H):H}function Pv(){let c=f0(),r=Yv(c)?`${c.status} ${c.statusText}`:c instanceof Error?c.message:JSON.stringify(c),o=c instanceof Error?c.stack:null,f="rgba(200,200,200, 0.5)",d={padding:"0.5rem",backgroundColor:f},h={padding:"2px 4px",backgroundColor:f},p=null;return console.error("Error handled by React Router default ErrorBoundary:",c),p=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"}},r),o?E.createElement("pre",{style:d},o):null,p)}var t0=E.createElement(Pv,null),Oh=class extends E.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,r){return r.location!==c.location||r.revalidation!=="idle"&&c.revalidation==="idle"?{error:c.error,location:c.location,revalidation:c.revalidation}:{error:c.error!==void 0?c.error:r.error,location:r.location,revalidation:c.revalidation||r.revalidation}}componentDidCatch(c,r){this.props.onError?this.props.onError(c,r):console.error("React Router caught the following error during render",c)}render(){let c=this.state.error;if(this.context&&typeof c=="object"&&c&&"digest"in c&&typeof c.digest=="string"){const o=$v(c.digest);o&&(c=o)}let r=c!==void 0?E.createElement(He.Provider,{value:this.props.routeContext},E.createElement(Kf.Provider,{value:c,children:this.props.component})):this.props.children;return this.context?E.createElement(e0,{error:c},r):r}};Oh.contextType=Qv;var qf=new WeakMap;function e0({children:c,error:r}){let{basename:o}=E.useContext(pe);if(typeof r=="object"&&r&&"digest"in r&&typeof r.digest=="string"){let f=Jv(r.digest);if(f){let d=qf.get(r);if(d)throw d;let h=bh(f.location,o);if(Sh&&!qf.get(r))if(h.isExternal||f.reloadDocument)window.location.href=h.absoluteURL||h.to;else{const p=Promise.resolve().then(()=>window.__reactRouterDataRouter.navigate(h.to,{replace:f.replace}));throw qf.set(r,p),p}return E.createElement("meta",{httpEquiv:"refresh",content:`0;url=${h.absoluteURL||h.to}`})}}return c}function l0({routeContext:c,match:r,children:o}){let f=E.useContext(La);return f&&f.static&&f.staticContext&&(r.route.errorElement||r.route.ErrorBoundary)&&(f.staticContext._deepestRenderedBoundaryId=r.route.id),E.createElement(He.Provider,{value:c},o)}function a0(c,r=[],o=null,f=null,d=null){if(c==null){if(!o)return null;if(o.errors)c=o.matches;else if(r.length===0&&!o.initialized&&o.matches.length>0)c=o.matches;else return null}let h=c,p=o?.errors;if(p!=null){let N=h.findIndex(R=>R.route.id&&p?.[R.route.id]!==void 0);Ot(N>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(p).join(",")}`),h=h.slice(0,Math.min(h.length,N+1))}let _=!1,S=-1;if(o)for(let N=0;N=0?h=h.slice(0,S+1):h=[h[0]];break}}}let y=o&&f?(N,R)=>{f(N,{location:o.location,params:o.matches?.[0]?.params??{},unstable_pattern:Gv(o.matches),errorInfo:R})}:void 0;return h.reduceRight((N,R,B)=>{let V,F=!1,Q=null,G=null;o&&(V=p&&R.route.id?p[R.route.id]:void 0,Q=R.route.errorElement||t0,_&&(S<0&&B===0?(xh("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),F=!0,G=null):S===B&&(F=!0,G=R.route.hydrateFallbackElement||null)));let H=r.concat(h.slice(0,B+1)),q=()=>{let Z;return V?Z=Q:F?Z=G:R.route.Component?Z=E.createElement(R.route.Component,null):R.route.element?Z=R.route.element:Z=N,E.createElement(l0,{match:R,routeContext:{outlet:N,matches:H,isDataRoute:o!=null},children:Z})};return o&&(R.route.ErrorBoundary||R.route.errorElement||B===0)?E.createElement(Oh,{location:o.location,revalidation:o.revalidation,component:Q,error:V,children:q(),routeContext:{outlet:null,matches:H,isDataRoute:!0},onError:y}):q()},null)}function Jf(c){return`${c} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function n0(c){let r=E.useContext(La);return Ot(r,Jf(c)),r}function u0(c){let r=E.useContext(fi);return Ot(r,Jf(c)),r}function i0(c){let r=E.useContext(He);return Ot(r,Jf(c)),r}function $f(c){let r=i0(c),o=r.matches[r.matches.length-1];return Ot(o.route.id,`${c} can only be used on routes that contain a unique "id"`),o.route.id}function c0(){return $f("useRouteId")}function f0(){let c=E.useContext(Kf),r=u0("useRouteError"),o=$f("useRouteError");return c!==void 0?c:r.errors?.[o]}function s0(){let{router:c}=n0("useNavigate"),r=$f("useNavigate"),o=E.useRef(!1);return _h(()=>{o.current=!0}),E.useCallback(async(d,h={})=>{ge(o.current,Ah),o.current&&(typeof d=="number"?await c.navigate(d):await c.navigate(d,{fromRouteId:r,...h}))},[c,r])}var hh={};function xh(c,r,o){!r&&!hh[c]&&(hh[c]=!0,ge(!1,o))}E.memo(r0);function r0({routes:c,future:r,state:o,onError:f}){return Rh(c,void 0,o,f,r)}function o0({to:c,replace:r,state:o,relative:f}){Ot(Pl()," may be used only in the context of a component.");let{static:d}=E.useContext(pe);ge(!d," must not be used on the initial render in a . This is a no-op, but you should modify your code so the is only ever rendered in response to some user interaction or state change.");let{matches:h}=E.useContext(He),{pathname:p}=Me(),_=Yn(),S=wf(c,Vf(h),p,f==="path"),y=JSON.stringify(S);return E.useEffect(()=>{_(JSON.parse(y),{replace:r,state:o,relative:f})},[_,y,f,r,o]),null}function Wl(c){Ot(!1,"A is only ever to be used as the child of element, never rendered directly. Please wrap your in a .")}function d0({basename:c="/",children:r=null,location:o,navigationType:f="POP",navigator:d,static:h=!1,unstable_useTransitions:p}){Ot(!Pl(),"You cannot render a inside another . You should never have more than one in your app.");let _=c.replace(/^\/*/,"/"),S=E.useMemo(()=>({basename:_,navigator:d,static:h,unstable_useTransitions:p,future:{}}),[_,d,h,p]);typeof o=="string"&&(o=Il(o));let{pathname:y="/",search:N="",hash:R="",state:B=null,key:V="default"}=o,F=E.useMemo(()=>{let Q=ul(y,_);return Q==null?null:{location:{pathname:Q,search:N,hash:R,state:B,key:V},navigationType:f}},[_,y,N,R,B,V,f]);return ge(F!=null,` is not able to match the URL "${y}${N}${R}" because it does not start with the basename, so the won't render anything.`),F==null?null:E.createElement(pe.Provider,{value:S},E.createElement(Ln.Provider,{children:r,value:F}))}function Nh({children:c,location:r}){return Iv(Xf(c),r)}function Xf(c,r=[]){let o=[];return E.Children.forEach(c,(f,d)=>{if(!E.isValidElement(f))return;let h=[...r,d];if(f.type===E.Fragment){o.push.apply(o,Xf(f.props.children,h));return}Ot(f.type===Wl,`[${typeof f.type=="string"?f.type:f.type.name}] is not a component. All component children of must be a or `),Ot(!f.props.index||!f.props.children,"An index route cannot have child routes.");let p={id:f.props.id||h.join("-"),caseSensitive:f.props.caseSensitive,element:f.props.element,Component:f.props.Component,index:f.props.index,path:f.props.path,middleware:f.props.middleware,loader:f.props.loader,action:f.props.action,hydrateFallbackElement:f.props.hydrateFallbackElement,HydrateFallback:f.props.HydrateFallback,errorElement:f.props.errorElement,ErrorBoundary:f.props.ErrorBoundary,hasErrorBoundary:f.props.hasErrorBoundary===!0||f.props.ErrorBoundary!=null||f.props.errorElement!=null,shouldRevalidate:f.props.shouldRevalidate,handle:f.props.handle,lazy:f.props.lazy};f.props.children&&(p.children=Xf(f.props.children,h)),o.push(p)}),o}var ii="get",ci="application/x-www-form-urlencoded";function si(c){return typeof HTMLElement<"u"&&c instanceof HTMLElement}function h0(c){return si(c)&&c.tagName.toLowerCase()==="button"}function m0(c){return si(c)&&c.tagName.toLowerCase()==="form"}function y0(c){return si(c)&&c.tagName.toLowerCase()==="input"}function v0(c){return!!(c.metaKey||c.altKey||c.ctrlKey||c.shiftKey)}function g0(c,r){return c.button===0&&(!r||r==="_self")&&!v0(c)}function Qf(c=""){return new URLSearchParams(typeof c=="string"||Array.isArray(c)||c instanceof URLSearchParams?c:Object.keys(c).reduce((r,o)=>{let f=c[o];return r.concat(Array.isArray(f)?f.map(d=>[o,d]):[[o,f]])},[]))}function p0(c,r){let o=Qf(c);return r&&r.forEach((f,d)=>{o.has(d)||r.getAll(d).forEach(h=>{o.append(d,h)})}),o}var ui=null;function S0(){if(ui===null)try{new FormData(document.createElement("form"),0),ui=!1}catch{ui=!0}return ui}var b0=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function Lf(c){return c!=null&&!b0.has(c)?(ge(!1,`"${c}" is not a valid \`encType\` for \`
\`/\`\` and will default to "${ci}"`),null):c}function E0(c,r){let o,f,d,h,p;if(m0(c)){let _=c.getAttribute("action");f=_?ul(_,r):null,o=c.getAttribute("method")||ii,d=Lf(c.getAttribute("enctype"))||ci,h=new FormData(c)}else if(h0(c)||y0(c)&&(c.type==="submit"||c.type==="image")){let _=c.form;if(_==null)throw new Error('Cannot submit a