@openparachute/hub 0.5.14-rc.2 → 0.5.14-rc.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (106) hide show
  1. package/README.md +109 -15
  2. package/package.json +7 -3
  3. package/src/__tests__/account-home-ui.test.ts +251 -15
  4. package/src/__tests__/account-vault-token.test.ts +355 -0
  5. package/src/__tests__/admin-vaults.test.ts +70 -4
  6. package/src/__tests__/api-mint-token.test.ts +693 -5
  7. package/src/__tests__/api-modules-config.test.ts +16 -10
  8. package/src/__tests__/api-modules-ops.test.ts +45 -0
  9. package/src/__tests__/api-modules.test.ts +92 -75
  10. package/src/__tests__/api-ready.test.ts +135 -0
  11. package/src/__tests__/api-revoke-token.test.ts +384 -0
  12. package/src/__tests__/api-users.test.ts +7 -2
  13. package/src/__tests__/auth.test.ts +157 -30
  14. package/src/__tests__/cli.test.ts +44 -5
  15. package/src/__tests__/cloudflare-detect.test.ts +60 -5
  16. package/src/__tests__/expose-2fa-warning.test.ts +31 -17
  17. package/src/__tests__/expose-auth-preflight.test.ts +71 -72
  18. package/src/__tests__/expose-cloudflare.test.ts +582 -11
  19. package/src/__tests__/expose-interactive.test.ts +10 -4
  20. package/src/__tests__/expose-public-auto.test.ts +5 -1
  21. package/src/__tests__/expose.test.ts +52 -2
  22. package/src/__tests__/hub-server.test.ts +396 -10
  23. package/src/__tests__/hub.test.ts +85 -6
  24. package/src/__tests__/init.test.ts +928 -0
  25. package/src/__tests__/lifecycle.test.ts +464 -2
  26. package/src/__tests__/migrate.test.ts +433 -51
  27. package/src/__tests__/oauth-handlers.test.ts +1252 -83
  28. package/src/__tests__/oauth-ui.test.ts +12 -1
  29. package/src/__tests__/operator-token-issuer-self-heal.test.ts +412 -0
  30. package/src/__tests__/proxy-error-ui.test.ts +212 -0
  31. package/src/__tests__/proxy-state.test.ts +192 -0
  32. package/src/__tests__/resource-binding.test.ts +97 -0
  33. package/src/__tests__/scope-explanations.test.ts +77 -12
  34. package/src/__tests__/services-manifest.test.ts +122 -4
  35. package/src/__tests__/setup-wizard.test.ts +633 -53
  36. package/src/__tests__/status.test.ts +36 -0
  37. package/src/__tests__/two-factor-flow.test.ts +602 -0
  38. package/src/__tests__/two-factor.test.ts +183 -0
  39. package/src/__tests__/upgrade.test.ts +78 -1
  40. package/src/__tests__/users.test.ts +68 -0
  41. package/src/__tests__/vault-auth-status.test.ts +312 -11
  42. package/src/__tests__/vault-hub-origin-env.test.ts +263 -0
  43. package/src/__tests__/wizard.test.ts +372 -0
  44. package/src/account-home-ui.ts +488 -38
  45. package/src/account-vault-token.ts +282 -0
  46. package/src/admin-handlers.ts +159 -4
  47. package/src/admin-login-ui.ts +49 -5
  48. package/src/admin-vaults.ts +48 -15
  49. package/src/api-account.ts +14 -0
  50. package/src/api-mint-token.ts +132 -24
  51. package/src/api-modules-ops.ts +49 -11
  52. package/src/api-modules.ts +29 -12
  53. package/src/api-ready.ts +102 -0
  54. package/src/api-revoke-token.ts +107 -21
  55. package/src/api-users.ts +29 -3
  56. package/src/cli.ts +112 -25
  57. package/src/clients.ts +18 -6
  58. package/src/cloudflare/config.ts +10 -4
  59. package/src/cloudflare/detect.ts +82 -20
  60. package/src/commands/auth.ts +165 -24
  61. package/src/commands/expose-2fa-warning.ts +34 -32
  62. package/src/commands/expose-auth-preflight.ts +89 -78
  63. package/src/commands/expose-cloudflare.ts +471 -16
  64. package/src/commands/expose-interactive.ts +10 -11
  65. package/src/commands/expose-public-auto.ts +6 -4
  66. package/src/commands/expose.ts +8 -0
  67. package/src/commands/init.ts +594 -0
  68. package/src/commands/install.ts +33 -2
  69. package/src/commands/lifecycle.ts +386 -17
  70. package/src/commands/migrate.ts +293 -41
  71. package/src/commands/status.ts +22 -0
  72. package/src/commands/upgrade.ts +55 -11
  73. package/src/commands/wizard.ts +847 -0
  74. package/src/env-file.ts +10 -0
  75. package/src/help.ts +157 -15
  76. package/src/hub-db.ts +39 -1
  77. package/src/hub-server.ts +119 -13
  78. package/src/hub-settings.ts +11 -0
  79. package/src/hub.ts +82 -14
  80. package/src/oauth-handlers.ts +298 -21
  81. package/src/oauth-ui.ts +10 -0
  82. package/src/operator-token.ts +151 -0
  83. package/src/pending-login.ts +116 -0
  84. package/src/proxy-error-ui.ts +506 -0
  85. package/src/proxy-state.ts +131 -0
  86. package/src/rate-limit.ts +51 -0
  87. package/src/resource-binding.ts +134 -0
  88. package/src/scope-attenuation.ts +85 -0
  89. package/src/scope-explanations.ts +131 -14
  90. package/src/services-manifest.ts +112 -0
  91. package/src/setup-wizard.ts +738 -125
  92. package/src/tailscale/run.ts +28 -11
  93. package/src/totp.ts +201 -0
  94. package/src/two-factor-handlers.ts +287 -0
  95. package/src/two-factor-store.ts +181 -0
  96. package/src/two-factor-ui.ts +462 -0
  97. package/src/users.ts +58 -0
  98. package/src/vault/auth-status.ts +200 -25
  99. package/src/vault-hub-origin-env.ts +163 -0
  100. package/web/ui/dist/assets/index-BiBlvEaj.css +1 -0
  101. package/web/ui/dist/assets/index-CIN3mnmf.js +61 -0
  102. package/web/ui/dist/index.html +2 -2
  103. package/src/__tests__/vault-tokens-create-interactive.test.ts +0 -183
  104. package/src/commands/vault-tokens-create-interactive.ts +0 -143
  105. package/web/ui/dist/assets/index-7DtAXz7y.css +0 -1
  106. package/web/ui/dist/assets/index-tRmPbbC7.js +0 -61
@@ -0,0 +1,61 @@
1
+ (function(){const c=document.createElement("link").relList;if(c&&c.supports&&c.supports("modulepreload"))return;for(const d of document.querySelectorAll('link[rel="modulepreload"]'))o(d);new MutationObserver(d=>{for(const h of d)if(h.type==="childList")for(const g of h.addedNodes)g.tagName==="LINK"&&g.rel==="modulepreload"&&o(g)}).observe(document,{childList:!0,subtree:!0});function r(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 o(d){if(d.ep)return;d.ep=!0;const h=r(d);fetch(d.href,h)}})();var qc={exports:{}},Bl={};/**
2
+ * @license React
3
+ * react-jsx-runtime.production.js
4
+ *
5
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
6
+ *
7
+ * This source code is licensed under the MIT license found in the
8
+ * LICENSE file in the root directory of this source tree.
9
+ */var ph;function Y1(){if(ph)return Bl;ph=1;var i=Symbol.for("react.transitional.element"),c=Symbol.for("react.fragment");function r(o,d,h){var g=null;if(h!==void 0&&(g=""+h),d.key!==void 0&&(g=""+d.key),"key"in d){h={};for(var j in d)j!=="key"&&(h[j]=d[j])}else h=d;return d=h.ref,{$$typeof:i,type:o,key:g,ref:d!==void 0?d:null,props:h}}return Bl.Fragment=c,Bl.jsx=r,Bl.jsxs=r,Bl}var vh;function G1(){return vh||(vh=1,qc.exports=Y1()),qc.exports}var s=G1(),Yc={exports:{}},ie={};/**
10
+ * @license React
11
+ * react.production.js
12
+ *
13
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
14
+ *
15
+ * This source code is licensed under the MIT license found in the
16
+ * LICENSE file in the root directory of this source tree.
17
+ */var yh;function Z1(){if(yh)return ie;yh=1;var i=Symbol.for("react.transitional.element"),c=Symbol.for("react.portal"),r=Symbol.for("react.fragment"),o=Symbol.for("react.strict_mode"),d=Symbol.for("react.profiler"),h=Symbol.for("react.consumer"),g=Symbol.for("react.context"),j=Symbol.for("react.forward_ref"),v=Symbol.for("react.suspense"),p=Symbol.for("react.memo"),y=Symbol.for("react.lazy"),b=Symbol.for("react.activity"),z=Symbol.iterator;function R(N){return N===null||typeof N!="object"?null:(N=z&&N[z]||N["@@iterator"],typeof N=="function"?N:null)}var k={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},q=Object.assign,X={};function Z(N,L,J){this.props=N,this.context=L,this.refs=X,this.updater=J||k}Z.prototype.isReactComponent={},Z.prototype.setState=function(N,L){if(typeof N!="object"&&typeof N!="function"&&N!=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,N,L,"setState")},Z.prototype.forceUpdate=function(N){this.updater.enqueueForceUpdate(this,N,"forceUpdate")};function P(){}P.prototype=Z.prototype;function W(N,L,J){this.props=N,this.context=L,this.refs=X,this.updater=J||k}var ue=W.prototype=new P;ue.constructor=W,q(ue,Z.prototype),ue.isPureReactComponent=!0;var K=Array.isArray;function Y(){}var S={H:null,A:null,T:null,S:null},O=Object.prototype.hasOwnProperty;function G(N,L,J){var F=J.ref;return{$$typeof:i,type:N,key:L,ref:F!==void 0?F:null,props:J}}function ve(N,L){return G(N.type,L,N.props)}function te(N){return typeof N=="object"&&N!==null&&N.$$typeof===i}function he(N){var L={"=":"=0",":":"=2"};return"$"+N.replace(/[=:]/g,function(J){return L[J]})}var Qe=/\/+/g;function St(N,L){return typeof N=="object"&&N!==null&&N.key!=null?he(""+N.key):L.toString(36)}function Ye(N){switch(N.status){case"fulfilled":return N.value;case"rejected":throw N.reason;default:switch(typeof N.status=="string"?N.then(Y,Y):(N.status="pending",N.then(function(L){N.status==="pending"&&(N.status="fulfilled",N.value=L)},function(L){N.status==="pending"&&(N.status="rejected",N.reason=L)})),N.status){case"fulfilled":return N.value;case"rejected":throw N.reason}}throw N}function D(N,L,J,F,se){var oe=typeof N;(oe==="undefined"||oe==="boolean")&&(N=null);var je=!1;if(N===null)je=!0;else switch(oe){case"bigint":case"string":case"number":je=!0;break;case"object":switch(N.$$typeof){case i:case c:je=!0;break;case y:return je=N._init,D(je(N._payload),L,J,F,se)}}if(je)return se=se(N),je=F===""?"."+St(N,0):F,K(se)?(J="",je!=null&&(J=je.replace(Qe,"$&/")+"/"),D(se,L,J,"",function(Vn){return Vn})):se!=null&&(te(se)&&(se=ve(se,J+(se.key==null||N&&N.key===se.key?"":(""+se.key).replace(Qe,"$&/")+"/")+je)),L.push(se)),1;je=0;var nt=F===""?".":F+":";if(K(N))for(var Be=0;Be<N.length;Be++)F=N[Be],oe=nt+St(F,Be),je+=D(F,L,J,oe,se);else if(Be=R(N),typeof Be=="function")for(N=Be.call(N),Be=0;!(F=N.next()).done;)F=F.value,oe=nt+St(F,Be++),je+=D(F,L,J,oe,se);else if(oe==="object"){if(typeof N.then=="function")return D(Ye(N),L,J,F,se);throw L=String(N),Error("Objects are not valid as a React child (found: "+(L==="[object Object]"?"object with keys {"+Object.keys(N).join(", ")+"}":L)+"). If you meant to render a collection of children, use an array instead.")}return je}function V(N,L,J){if(N==null)return N;var F=[],se=0;return D(N,F,"","",function(oe){return L.call(J,oe,se++)}),F}function le(N){if(N._status===-1){var L=N._result;L=L(),L.then(function(J){(N._status===0||N._status===-1)&&(N._status=1,N._result=J)},function(J){(N._status===0||N._status===-1)&&(N._status=2,N._result=J)}),N._status===-1&&(N._status=0,N._result=L)}if(N._status===1)return N._result.default;throw N._result}var Ee=typeof reportError=="function"?reportError:function(N){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var L=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof N=="object"&&N!==null&&typeof N.message=="string"?String(N.message):String(N),error:N});if(!window.dispatchEvent(L))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",N);return}console.error(N)},_e={map:V,forEach:function(N,L,J){V(N,function(){L.apply(this,arguments)},J)},count:function(N){var L=0;return V(N,function(){L++}),L},toArray:function(N){return V(N,function(L){return L})||[]},only:function(N){if(!te(N))throw Error("React.Children.only expected to receive a single React element child.");return N}};return ie.Activity=b,ie.Children=_e,ie.Component=Z,ie.Fragment=r,ie.Profiler=d,ie.PureComponent=W,ie.StrictMode=o,ie.Suspense=v,ie.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=S,ie.__COMPILER_RUNTIME={__proto__:null,c:function(N){return S.H.useMemoCache(N)}},ie.cache=function(N){return function(){return N.apply(null,arguments)}},ie.cacheSignal=function(){return null},ie.cloneElement=function(N,L,J){if(N==null)throw Error("The argument must be a React element, but you passed "+N+".");var F=q({},N.props),se=N.key;if(L!=null)for(oe in L.key!==void 0&&(se=""+L.key),L)!O.call(L,oe)||oe==="key"||oe==="__self"||oe==="__source"||oe==="ref"&&L.ref===void 0||(F[oe]=L[oe]);var oe=arguments.length-2;if(oe===1)F.children=J;else if(1<oe){for(var je=Array(oe),nt=0;nt<oe;nt++)je[nt]=arguments[nt+2];F.children=je}return G(N.type,se,F)},ie.createContext=function(N){return N={$$typeof:g,_currentValue:N,_currentValue2:N,_threadCount:0,Provider:null,Consumer:null},N.Provider=N,N.Consumer={$$typeof:h,_context:N},N},ie.createElement=function(N,L,J){var F,se={},oe=null;if(L!=null)for(F in L.key!==void 0&&(oe=""+L.key),L)O.call(L,F)&&F!=="key"&&F!=="__self"&&F!=="__source"&&(se[F]=L[F]);var je=arguments.length-2;if(je===1)se.children=J;else if(1<je){for(var nt=Array(je),Be=0;Be<je;Be++)nt[Be]=arguments[Be+2];se.children=nt}if(N&&N.defaultProps)for(F in je=N.defaultProps,je)se[F]===void 0&&(se[F]=je[F]);return G(N,oe,se)},ie.createRef=function(){return{current:null}},ie.forwardRef=function(N){return{$$typeof:j,render:N}},ie.isValidElement=te,ie.lazy=function(N){return{$$typeof:y,_payload:{_status:-1,_result:N},_init:le}},ie.memo=function(N,L){return{$$typeof:p,type:N,compare:L===void 0?null:L}},ie.startTransition=function(N){var L=S.T,J={};S.T=J;try{var F=N(),se=S.S;se!==null&&se(J,F),typeof F=="object"&&F!==null&&typeof F.then=="function"&&F.then(Y,Ee)}catch(oe){Ee(oe)}finally{L!==null&&J.types!==null&&(L.types=J.types),S.T=L}},ie.unstable_useCacheRefresh=function(){return S.H.useCacheRefresh()},ie.use=function(N){return S.H.use(N)},ie.useActionState=function(N,L,J){return S.H.useActionState(N,L,J)},ie.useCallback=function(N,L){return S.H.useCallback(N,L)},ie.useContext=function(N){return S.H.useContext(N)},ie.useDebugValue=function(){},ie.useDeferredValue=function(N,L){return S.H.useDeferredValue(N,L)},ie.useEffect=function(N,L){return S.H.useEffect(N,L)},ie.useEffectEvent=function(N){return S.H.useEffectEvent(N)},ie.useId=function(){return S.H.useId()},ie.useImperativeHandle=function(N,L,J){return S.H.useImperativeHandle(N,L,J)},ie.useInsertionEffect=function(N,L){return S.H.useInsertionEffect(N,L)},ie.useLayoutEffect=function(N,L){return S.H.useLayoutEffect(N,L)},ie.useMemo=function(N,L){return S.H.useMemo(N,L)},ie.useOptimistic=function(N,L){return S.H.useOptimistic(N,L)},ie.useReducer=function(N,L,J){return S.H.useReducer(N,L,J)},ie.useRef=function(N){return S.H.useRef(N)},ie.useState=function(N){return S.H.useState(N)},ie.useSyncExternalStore=function(N,L,J){return S.H.useSyncExternalStore(N,L,J)},ie.useTransition=function(){return S.H.useTransition()},ie.version="19.2.5",ie}var gh;function ar(){return gh||(gh=1,Yc.exports=Z1()),Yc.exports}var C=ar(),Gc={exports:{}},Ll={},Zc={exports:{}},Xc={};/**
18
+ * @license React
19
+ * scheduler.production.js
20
+ *
21
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
22
+ *
23
+ * This source code is licensed under the MIT license found in the
24
+ * LICENSE file in the root directory of this source tree.
25
+ */var bh;function X1(){return bh||(bh=1,(function(i){function c(D,V){var le=D.length;D.push(V);e:for(;0<le;){var Ee=le-1>>>1,_e=D[Ee];if(0<d(_e,V))D[Ee]=V,D[le]=_e,le=Ee;else break e}}function r(D){return D.length===0?null:D[0]}function o(D){if(D.length===0)return null;var V=D[0],le=D.pop();if(le!==V){D[0]=le;e:for(var Ee=0,_e=D.length,N=_e>>>1;Ee<N;){var L=2*(Ee+1)-1,J=D[L],F=L+1,se=D[F];if(0>d(J,le))F<_e&&0>d(se,J)?(D[Ee]=se,D[F]=le,Ee=F):(D[Ee]=J,D[L]=le,Ee=L);else if(F<_e&&0>d(se,le))D[Ee]=se,D[F]=le,Ee=F;else break e}}return V}function d(D,V){var le=D.sortIndex-V.sortIndex;return le!==0?le:D.id-V.id}if(i.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var h=performance;i.unstable_now=function(){return h.now()}}else{var g=Date,j=g.now();i.unstable_now=function(){return g.now()-j}}var v=[],p=[],y=1,b=null,z=3,R=!1,k=!1,q=!1,X=!1,Z=typeof setTimeout=="function"?setTimeout:null,P=typeof clearTimeout=="function"?clearTimeout:null,W=typeof setImmediate<"u"?setImmediate:null;function ue(D){for(var V=r(p);V!==null;){if(V.callback===null)o(p);else if(V.startTime<=D)o(p),V.sortIndex=V.expirationTime,c(v,V);else break;V=r(p)}}function K(D){if(q=!1,ue(D),!k)if(r(v)!==null)k=!0,Y||(Y=!0,he());else{var V=r(p);V!==null&&Ye(K,V.startTime-D)}}var Y=!1,S=-1,O=5,G=-1;function ve(){return X?!0:!(i.unstable_now()-G<O)}function te(){if(X=!1,Y){var D=i.unstable_now();G=D;var V=!0;try{e:{k=!1,q&&(q=!1,P(S),S=-1),R=!0;var le=z;try{t:{for(ue(D),b=r(v);b!==null&&!(b.expirationTime>D&&ve());){var Ee=b.callback;if(typeof Ee=="function"){b.callback=null,z=b.priorityLevel;var _e=Ee(b.expirationTime<=D);if(D=i.unstable_now(),typeof _e=="function"){b.callback=_e,ue(D),V=!0;break t}b===r(v)&&o(v),ue(D)}else o(v);b=r(v)}if(b!==null)V=!0;else{var N=r(p);N!==null&&Ye(K,N.startTime-D),V=!1}}break e}finally{b=null,z=le,R=!1}V=void 0}}finally{V?he():Y=!1}}}var he;if(typeof W=="function")he=function(){W(te)};else if(typeof MessageChannel<"u"){var Qe=new MessageChannel,St=Qe.port2;Qe.port1.onmessage=te,he=function(){St.postMessage(null)}}else he=function(){Z(te,0)};function Ye(D,V){S=Z(function(){D(i.unstable_now())},V)}i.unstable_IdlePriority=5,i.unstable_ImmediatePriority=1,i.unstable_LowPriority=4,i.unstable_NormalPriority=3,i.unstable_Profiling=null,i.unstable_UserBlockingPriority=2,i.unstable_cancelCallback=function(D){D.callback=null},i.unstable_forceFrameRate=function(D){0>D||125<D?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):O=0<D?Math.floor(1e3/D):5},i.unstable_getCurrentPriorityLevel=function(){return z},i.unstable_next=function(D){switch(z){case 1:case 2:case 3:var V=3;break;default:V=z}var le=z;z=V;try{return D()}finally{z=le}},i.unstable_requestPaint=function(){X=!0},i.unstable_runWithPriority=function(D,V){switch(D){case 1:case 2:case 3:case 4:case 5:break;default:D=3}var le=z;z=D;try{return V()}finally{z=le}},i.unstable_scheduleCallback=function(D,V,le){var Ee=i.unstable_now();switch(typeof le=="object"&&le!==null?(le=le.delay,le=typeof le=="number"&&0<le?Ee+le:Ee):le=Ee,D){case 1:var _e=-1;break;case 2:_e=250;break;case 5:_e=1073741823;break;case 4:_e=1e4;break;default:_e=5e3}return _e=le+_e,D={id:y++,callback:V,priorityLevel:D,startTime:le,expirationTime:_e,sortIndex:-1},le>Ee?(D.sortIndex=le,c(p,D),r(v)===null&&D===r(p)&&(q?(P(S),S=-1):q=!0,Ye(K,le-Ee))):(D.sortIndex=_e,c(v,D),k||R||(k=!0,Y||(Y=!0,he()))),D},i.unstable_shouldYield=ve,i.unstable_wrapCallback=function(D){var V=z;return function(){var le=z;z=V;try{return D.apply(this,arguments)}finally{z=le}}}})(Xc)),Xc}var xh;function V1(){return xh||(xh=1,Zc.exports=X1()),Zc.exports}var Vc={exports:{}},at={};/**
26
+ * @license React
27
+ * react-dom.production.js
28
+ *
29
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
30
+ *
31
+ * This source code is licensed under the MIT license found in the
32
+ * LICENSE file in the root directory of this source tree.
33
+ */var jh;function Q1(){if(jh)return at;jh=1;var i=ar();function c(v){var p="https://react.dev/errors/"+v;if(1<arguments.length){p+="?args[]="+encodeURIComponent(arguments[1]);for(var y=2;y<arguments.length;y++)p+="&args[]="+encodeURIComponent(arguments[y])}return"Minified React error #"+v+"; visit "+p+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function r(){}var o={d:{f:r,r:function(){throw Error(c(522))},D:r,C:r,L:r,m:r,X:r,S:r,M:r},p:0,findDOMNode:null},d=Symbol.for("react.portal");function h(v,p,y){var b=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:d,key:b==null?null:""+b,children:v,containerInfo:p,implementation:y}}var g=i.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function j(v,p){if(v==="font")return"";if(typeof p=="string")return p==="use-credentials"?p:""}return at.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=o,at.createPortal=function(v,p){var y=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!p||p.nodeType!==1&&p.nodeType!==9&&p.nodeType!==11)throw Error(c(299));return h(v,p,null,y)},at.flushSync=function(v){var p=g.T,y=o.p;try{if(g.T=null,o.p=2,v)return v()}finally{g.T=p,o.p=y,o.d.f()}},at.preconnect=function(v,p){typeof v=="string"&&(p?(p=p.crossOrigin,p=typeof p=="string"?p==="use-credentials"?p:"":void 0):p=null,o.d.C(v,p))},at.prefetchDNS=function(v){typeof v=="string"&&o.d.D(v)},at.preinit=function(v,p){if(typeof v=="string"&&p&&typeof p.as=="string"){var y=p.as,b=j(y,p.crossOrigin),z=typeof p.integrity=="string"?p.integrity:void 0,R=typeof p.fetchPriority=="string"?p.fetchPriority:void 0;y==="style"?o.d.S(v,typeof p.precedence=="string"?p.precedence:void 0,{crossOrigin:b,integrity:z,fetchPriority:R}):y==="script"&&o.d.X(v,{crossOrigin:b,integrity:z,fetchPriority:R,nonce:typeof p.nonce=="string"?p.nonce:void 0})}},at.preinitModule=function(v,p){if(typeof v=="string")if(typeof p=="object"&&p!==null){if(p.as==null||p.as==="script"){var y=j(p.as,p.crossOrigin);o.d.M(v,{crossOrigin:y,integrity:typeof p.integrity=="string"?p.integrity:void 0,nonce:typeof p.nonce=="string"?p.nonce:void 0})}}else p==null&&o.d.M(v)},at.preload=function(v,p){if(typeof v=="string"&&typeof p=="object"&&p!==null&&typeof p.as=="string"){var y=p.as,b=j(y,p.crossOrigin);o.d.L(v,y,{crossOrigin:b,integrity:typeof p.integrity=="string"?p.integrity:void 0,nonce:typeof p.nonce=="string"?p.nonce:void 0,type:typeof p.type=="string"?p.type:void 0,fetchPriority:typeof p.fetchPriority=="string"?p.fetchPriority:void 0,referrerPolicy:typeof p.referrerPolicy=="string"?p.referrerPolicy:void 0,imageSrcSet:typeof p.imageSrcSet=="string"?p.imageSrcSet:void 0,imageSizes:typeof p.imageSizes=="string"?p.imageSizes:void 0,media:typeof p.media=="string"?p.media:void 0})}},at.preloadModule=function(v,p){if(typeof v=="string")if(p){var y=j(p.as,p.crossOrigin);o.d.m(v,{as:typeof p.as=="string"&&p.as!=="script"?p.as:void 0,crossOrigin:y,integrity:typeof p.integrity=="string"?p.integrity:void 0})}else o.d.m(v)},at.requestFormReset=function(v){o.d.r(v)},at.unstable_batchedUpdates=function(v,p){return v(p)},at.useFormState=function(v,p,y){return g.H.useFormState(v,p,y)},at.useFormStatus=function(){return g.H.useHostTransitionStatus()},at.version="19.2.5",at}var Sh;function J1(){if(Sh)return Vc.exports;Sh=1;function i(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(i)}catch(c){console.error(c)}}return i(),Vc.exports=Q1(),Vc.exports}/**
34
+ * @license React
35
+ * react-dom-client.production.js
36
+ *
37
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
38
+ *
39
+ * This source code is licensed under the MIT license found in the
40
+ * LICENSE file in the root directory of this source tree.
41
+ */var Ch;function K1(){if(Ch)return Ll;Ch=1;var i=V1(),c=ar(),r=J1();function o(e){var t="https://react.dev/errors/"+e;if(1<arguments.length){t+="?args[]="+encodeURIComponent(arguments[1]);for(var a=2;a<arguments.length;a++)t+="&args[]="+encodeURIComponent(arguments[a])}return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function d(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function h(e){var t=e,a=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,(t.flags&4098)!==0&&(a=t.return),e=t.return;while(e)}return t.tag===3?a:null}function g(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function j(e){if(e.tag===31){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function v(e){if(h(e)!==e)throw Error(o(188))}function p(e){var t=e.alternate;if(!t){if(t=h(e),t===null)throw Error(o(188));return t!==e?null:e}for(var a=e,n=t;;){var l=a.return;if(l===null)break;var u=l.alternate;if(u===null){if(n=l.return,n!==null){a=n;continue}break}if(l.child===u.child){for(u=l.child;u;){if(u===a)return v(l),e;if(u===n)return v(l),t;u=u.sibling}throw Error(o(188))}if(a.return!==n.return)a=l,n=u;else{for(var f=!1,m=l.child;m;){if(m===a){f=!0,a=l,n=u;break}if(m===n){f=!0,n=l,a=u;break}m=m.sibling}if(!f){for(m=u.child;m;){if(m===a){f=!0,a=u,n=l;break}if(m===n){f=!0,n=u,a=l;break}m=m.sibling}if(!f)throw Error(o(189))}}if(a.alternate!==n)throw Error(o(190))}if(a.tag!==3)throw Error(o(188));return a.stateNode.current===a?e:t}function y(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e;for(e=e.child;e!==null;){if(t=y(e),t!==null)return t;e=e.sibling}return null}var b=Object.assign,z=Symbol.for("react.element"),R=Symbol.for("react.transitional.element"),k=Symbol.for("react.portal"),q=Symbol.for("react.fragment"),X=Symbol.for("react.strict_mode"),Z=Symbol.for("react.profiler"),P=Symbol.for("react.consumer"),W=Symbol.for("react.context"),ue=Symbol.for("react.forward_ref"),K=Symbol.for("react.suspense"),Y=Symbol.for("react.suspense_list"),S=Symbol.for("react.memo"),O=Symbol.for("react.lazy"),G=Symbol.for("react.activity"),ve=Symbol.for("react.memo_cache_sentinel"),te=Symbol.iterator;function he(e){return e===null||typeof e!="object"?null:(e=te&&e[te]||e["@@iterator"],typeof e=="function"?e:null)}var Qe=Symbol.for("react.client.reference");function St(e){if(e==null)return null;if(typeof e=="function")return e.$$typeof===Qe?null:e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case q:return"Fragment";case Z:return"Profiler";case X:return"StrictMode";case K:return"Suspense";case Y:return"SuspenseList";case G:return"Activity"}if(typeof e=="object")switch(e.$$typeof){case k:return"Portal";case W:return e.displayName||"Context";case P:return(e._context.displayName||"Context")+".Consumer";case ue:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case S:return t=e.displayName||null,t!==null?t:St(e.type)||"Memo";case O:t=e._payload,e=e._init;try{return St(e(t))}catch{}}return null}var Ye=Array.isArray,D=c.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,V=r.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,le={pending:!1,data:null,method:null,action:null},Ee=[],_e=-1;function N(e){return{current:e}}function L(e){0>_e||(e.current=Ee[_e],Ee[_e]=null,_e--)}function J(e,t){_e++,Ee[_e]=e.current,e.current=t}var F=N(null),se=N(null),oe=N(null),je=N(null);function nt(e,t){switch(J(oe,t),J(se,e),J(F,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?Bd(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=Bd(t),e=Ld(t,e);else switch(e){case"svg":e=1;break;case"math":e=2;break;default:e=0}}L(F),J(F,e)}function Be(){L(F),L(se),L(oe)}function Vn(e){e.memoizedState!==null&&J(je,e);var t=F.current,a=Ld(t,e.type);t!==a&&(J(se,e),J(F,a))}function Jl(e){se.current===e&&(L(F),L(se)),je.current===e&&(L(je),Ul._currentValue=le)}var Su,dr;function Ha(e){if(Su===void 0)try{throw Error()}catch(a){var t=a.stack.trim().match(/\n( *(at )?)/);Su=t&&t[1]||"",dr=-1<a.stack.indexOf(`
42
+ at`)?" (<anonymous>)":-1<a.stack.indexOf("@")?"@unknown:0:0":""}return`
43
+ `+Su+e+dr}var Cu=!1;function Eu(e,t){if(!e||Cu)return"";Cu=!0;var a=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var n={DetermineComponentFrameRoot:function(){try{if(t){var B=function(){throw Error()};if(Object.defineProperty(B.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(B,[])}catch(M){var A=M}Reflect.construct(e,[],B)}else{try{B.call()}catch(M){A=M}e.call(B.prototype)}}else{try{throw Error()}catch(M){A=M}(B=e())&&typeof B.catch=="function"&&B.catch(function(){})}}catch(M){if(M&&A&&typeof M.stack=="string")return[M.stack,A.stack]}return[null,null]}};n.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var l=Object.getOwnPropertyDescriptor(n.DetermineComponentFrameRoot,"name");l&&l.configurable&&Object.defineProperty(n.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"});var u=n.DetermineComponentFrameRoot(),f=u[0],m=u[1];if(f&&m){var x=f.split(`
44
+ `),_=m.split(`
45
+ `);for(l=n=0;n<x.length&&!x[n].includes("DetermineComponentFrameRoot");)n++;for(;l<_.length&&!_[l].includes("DetermineComponentFrameRoot");)l++;if(n===x.length||l===_.length)for(n=x.length-1,l=_.length-1;1<=n&&0<=l&&x[n]!==_[l];)l--;for(;1<=n&&0<=l;n--,l--)if(x[n]!==_[l]){if(n!==1||l!==1)do if(n--,l--,0>l||x[n]!==_[l]){var U=`
46
+ `+x[n].replace(" at new "," at ");return e.displayName&&U.includes("<anonymous>")&&(U=U.replace("<anonymous>",e.displayName)),U}while(1<=n&&0<=l);break}}}finally{Cu=!1,Error.prepareStackTrace=a}return(a=e?e.displayName||e.name:"")?Ha(a):""}function gm(e,t){switch(e.tag){case 26:case 27:case 5:return Ha(e.type);case 16:return Ha("Lazy");case 13:return e.child!==t&&t!==null?Ha("Suspense Fallback"):Ha("Suspense");case 19:return Ha("SuspenseList");case 0:case 15:return Eu(e.type,!1);case 11:return Eu(e.type.render,!1);case 1:return Eu(e.type,!0);case 31:return Ha("Activity");default:return""}}function hr(e){try{var t="",a=null;do t+=gm(e,a),a=e,e=e.return;while(e);return t}catch(n){return`
47
+ Error generating stack: `+n.message+`
48
+ `+n.stack}}var Nu=Object.prototype.hasOwnProperty,Tu=i.unstable_scheduleCallback,wu=i.unstable_cancelCallback,bm=i.unstable_shouldYield,xm=i.unstable_requestPaint,dt=i.unstable_now,jm=i.unstable_getCurrentPriorityLevel,mr=i.unstable_ImmediatePriority,pr=i.unstable_UserBlockingPriority,Kl=i.unstable_NormalPriority,Sm=i.unstable_LowPriority,vr=i.unstable_IdlePriority,Cm=i.log,Em=i.unstable_setDisableYieldValue,Qn=null,ht=null;function fa(e){if(typeof Cm=="function"&&Em(e),ht&&typeof ht.setStrictMode=="function")try{ht.setStrictMode(Qn,e)}catch{}}var mt=Math.clz32?Math.clz32:wm,Nm=Math.log,Tm=Math.LN2;function wm(e){return e>>>=0,e===0?32:31-(Nm(e)/Tm|0)|0}var $l=256,Fl=262144,Wl=4194304;function Ba(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 Il(e,t,a){var n=e.pendingLanes;if(n===0)return 0;var l=0,u=e.suspendedLanes,f=e.pingedLanes;e=e.warmLanes;var m=n&134217727;return m!==0?(n=m&~u,n!==0?l=Ba(n):(f&=m,f!==0?l=Ba(f):a||(a=m&~e,a!==0&&(l=Ba(a))))):(m=n&~u,m!==0?l=Ba(m):f!==0?l=Ba(f):a||(a=n&~e,a!==0&&(l=Ba(a)))),l===0?0:t!==0&&t!==l&&(t&u)===0&&(u=l&-l,a=t&-t,u>=a||u===32&&(a&4194048)!==0)?t:l}function Jn(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function _m(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 yr(){var e=Wl;return Wl<<=1,(Wl&62914560)===0&&(Wl=4194304),e}function _u(e){for(var t=[],a=0;31>a;a++)t.push(e);return t}function Kn(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function Am(e,t,a,n,l,u){var f=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 m=e.entanglements,x=e.expirationTimes,_=e.hiddenUpdates;for(a=f&~a;0<a;){var U=31-mt(a),B=1<<U;m[U]=0,x[U]=-1;var A=_[U];if(A!==null)for(_[U]=null,U=0;U<A.length;U++){var M=A[U];M!==null&&(M.lane&=-536870913)}a&=~B}n!==0&&gr(e,n,0),u!==0&&l===0&&e.tag!==0&&(e.suspendedLanes|=u&~(f&~t))}function gr(e,t,a){e.pendingLanes|=t,e.suspendedLanes&=~t;var n=31-mt(t);e.entangledLanes|=t,e.entanglements[n]=e.entanglements[n]|1073741824|a&261930}function br(e,t){var a=e.entangledLanes|=t;for(e=e.entanglements;a;){var n=31-mt(a),l=1<<n;l&t|e[n]&t&&(e[n]|=t),a&=~l}}function xr(e,t){var a=t&-t;return a=(a&42)!==0?1:Au(a),(a&(e.suspendedLanes|t))!==0?0:a}function Au(e){switch(e){case 2:e=1;break;case 8:e=4;break;case 32:e=16;break;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:e=128;break;case 268435456:e=134217728;break;default:e=0}return e}function Ru(e){return e&=-e,2<e?8<e?(e&134217727)!==0?32:268435456:8:2}function jr(){var e=V.p;return e!==0?e:(e=window.event,e===void 0?32:ch(e.type))}function Sr(e,t){var a=V.p;try{return V.p=e,t()}finally{V.p=a}}var da=Math.random().toString(36).slice(2),We="__reactFiber$"+da,it="__reactProps$"+da,nn="__reactContainer$"+da,zu="__reactEvents$"+da,Rm="__reactListeners$"+da,zm="__reactHandles$"+da,Cr="__reactResources$"+da,$n="__reactMarker$"+da;function Mu(e){delete e[We],delete e[it],delete e[zu],delete e[Rm],delete e[zm]}function ln(e){var t=e[We];if(t)return t;for(var a=e.parentNode;a;){if(t=a[nn]||a[We]){if(a=t.alternate,t.child!==null||a!==null&&a.child!==null)for(e=Qd(e);e!==null;){if(a=e[We])return a;e=Qd(e)}return t}e=a,a=e.parentNode}return null}function un(e){if(e=e[We]||e[nn]){var t=e.tag;if(t===5||t===6||t===13||t===31||t===26||t===27||t===3)return e}return null}function Fn(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e.stateNode;throw Error(o(33))}function sn(e){var t=e[Cr];return t||(t=e[Cr]={hoistableStyles:new Map,hoistableScripts:new Map}),t}function $e(e){e[$n]=!0}var Er=new Set,Nr={};function La(e,t){cn(e,t),cn(e+"Capture",t)}function cn(e,t){for(Nr[e]=t,e=0;e<t.length;e++)Er.add(t[e])}var Mm=RegExp("^[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD][:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$"),Tr={},wr={};function Om(e){return Nu.call(wr,e)?!0:Nu.call(Tr,e)?!1:Mm.test(e)?wr[e]=!0:(Tr[e]=!0,!1)}function Pl(e,t,a){if(Om(t))if(a===null)e.removeAttribute(t);else{switch(typeof a){case"undefined":case"function":case"symbol":e.removeAttribute(t);return;case"boolean":var n=t.toLowerCase().slice(0,5);if(n!=="data-"&&n!=="aria-"){e.removeAttribute(t);return}}e.setAttribute(t,""+a)}}function ei(e,t,a){if(a===null)e.removeAttribute(t);else{switch(typeof a){case"undefined":case"function":case"symbol":case"boolean":e.removeAttribute(t);return}e.setAttribute(t,""+a)}}function Qt(e,t,a,n){if(n===null)e.removeAttribute(a);else{switch(typeof n){case"undefined":case"function":case"symbol":case"boolean":e.removeAttribute(a);return}e.setAttributeNS(t,a,""+n)}}function Ct(e){switch(typeof e){case"bigint":case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function _r(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function Um(e,t,a){var n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t);if(!e.hasOwnProperty(t)&&typeof n<"u"&&typeof n.get=="function"&&typeof n.set=="function"){var l=n.get,u=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return l.call(this)},set:function(f){a=""+f,u.call(this,f)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return a},setValue:function(f){a=""+f},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function Ou(e){if(!e._valueTracker){var t=_r(e)?"checked":"value";e._valueTracker=Um(e,t,""+e[t])}}function Ar(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var a=t.getValue(),n="";return e&&(n=_r(e)?e.checked?"true":"false":e.value),e=n,e!==a?(t.setValue(e),!0):!1}function ti(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}var Dm=/[\n"\\]/g;function Et(e){return e.replace(Dm,function(t){return"\\"+t.charCodeAt(0).toString(16)+" "})}function Uu(e,t,a,n,l,u,f,m){e.name="",f!=null&&typeof f!="function"&&typeof f!="symbol"&&typeof f!="boolean"?e.type=f:e.removeAttribute("type"),t!=null?f==="number"?(t===0&&e.value===""||e.value!=t)&&(e.value=""+Ct(t)):e.value!==""+Ct(t)&&(e.value=""+Ct(t)):f!=="submit"&&f!=="reset"||e.removeAttribute("value"),t!=null?Du(e,f,Ct(t)):a!=null?Du(e,f,Ct(a)):n!=null&&e.removeAttribute("value"),l==null&&u!=null&&(e.defaultChecked=!!u),l!=null&&(e.checked=l&&typeof l!="function"&&typeof l!="symbol"),m!=null&&typeof m!="function"&&typeof m!="symbol"&&typeof m!="boolean"?e.name=""+Ct(m):e.removeAttribute("name")}function Rr(e,t,a,n,l,u,f,m){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)){Ou(e);return}a=a!=null?""+Ct(a):"",t=t!=null?""+Ct(t):a,m||t===e.value||(e.value=t),e.defaultValue=t}n=n??l,n=typeof n!="function"&&typeof n!="symbol"&&!!n,e.checked=m?e.checked:!!n,e.defaultChecked=!!n,f!=null&&typeof f!="function"&&typeof f!="symbol"&&typeof f!="boolean"&&(e.name=f),Ou(e)}function Du(e,t,a){t==="number"&&ti(e.ownerDocument)===e||e.defaultValue===""+a||(e.defaultValue=""+a)}function rn(e,t,a,n){if(e=e.options,t){t={};for(var l=0;l<a.length;l++)t["$"+a[l]]=!0;for(a=0;a<e.length;a++)l=t.hasOwnProperty("$"+e[a].value),e[a].selected!==l&&(e[a].selected=l),l&&n&&(e[a].defaultSelected=!0)}else{for(a=""+Ct(a),t=null,l=0;l<e.length;l++){if(e[l].value===a){e[l].selected=!0,n&&(e[l].defaultSelected=!0);return}t!==null||e[l].disabled||(t=e[l])}t!==null&&(t.selected=!0)}}function zr(e,t,a){if(t!=null&&(t=""+Ct(t),t!==e.value&&(e.value=t),a==null)){e.defaultValue!==t&&(e.defaultValue=t);return}e.defaultValue=a!=null?""+Ct(a):""}function Mr(e,t,a,n){if(t==null){if(n!=null){if(a!=null)throw Error(o(92));if(Ye(n)){if(1<n.length)throw Error(o(93));n=n[0]}a=n}a==null&&(a=""),t=a}a=Ct(t),e.defaultValue=a,n=e.textContent,n===a&&n!==""&&n!==null&&(e.value=n),Ou(e)}function on(e,t){if(t){var a=e.firstChild;if(a&&a===e.lastChild&&a.nodeType===3){a.nodeValue=t;return}}e.textContent=t}var km=new Set("animationIterationCount aspectRatio borderImageOutset borderImageSlice borderImageWidth boxFlex boxFlexGroup boxOrdinalGroup columnCount columns flex flexGrow flexPositive flexShrink flexNegative flexOrder gridArea gridRow gridRowEnd gridRowSpan gridRowStart gridColumn gridColumnEnd gridColumnSpan gridColumnStart fontWeight lineClamp lineHeight opacity order orphans scale tabSize widows zIndex zoom fillOpacity floodOpacity stopOpacity strokeDasharray strokeDashoffset strokeMiterlimit strokeOpacity strokeWidth MozAnimationIterationCount MozBoxFlex MozBoxFlexGroup MozLineClamp msAnimationIterationCount msFlex msZoom msFlexGrow msFlexNegative msFlexOrder msFlexPositive msFlexShrink msGridColumn msGridColumnSpan msGridRow msGridRowSpan WebkitAnimationIterationCount WebkitBoxFlex WebKitBoxFlexGroup WebkitBoxOrdinalGroup WebkitColumnCount WebkitColumns WebkitFlex WebkitFlexGrow WebkitFlexPositive WebkitFlexShrink WebkitLineClamp".split(" "));function Or(e,t,a){var n=t.indexOf("--")===0;a==null||typeof a=="boolean"||a===""?n?e.setProperty(t,""):t==="float"?e.cssFloat="":e[t]="":n?e.setProperty(t,a):typeof a!="number"||a===0||km.has(t)?t==="float"?e.cssFloat=a:e[t]=(""+a).trim():e[t]=a+"px"}function Ur(e,t,a){if(t!=null&&typeof t!="object")throw Error(o(62));if(e=e.style,a!=null){for(var n in a)!a.hasOwnProperty(n)||t!=null&&t.hasOwnProperty(n)||(n.indexOf("--")===0?e.setProperty(n,""):n==="float"?e.cssFloat="":e[n]="");for(var l in t)n=t[l],t.hasOwnProperty(l)&&a[l]!==n&&Or(e,l,n)}else for(var u in t)t.hasOwnProperty(u)&&Or(e,u,t[u])}function ku(e){if(e.indexOf("-")===-1)return!1;switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var Hm=new Map([["acceptCharset","accept-charset"],["htmlFor","for"],["httpEquiv","http-equiv"],["crossOrigin","crossorigin"],["accentHeight","accent-height"],["alignmentBaseline","alignment-baseline"],["arabicForm","arabic-form"],["baselineShift","baseline-shift"],["capHeight","cap-height"],["clipPath","clip-path"],["clipRule","clip-rule"],["colorInterpolation","color-interpolation"],["colorInterpolationFilters","color-interpolation-filters"],["colorProfile","color-profile"],["colorRendering","color-rendering"],["dominantBaseline","dominant-baseline"],["enableBackground","enable-background"],["fillOpacity","fill-opacity"],["fillRule","fill-rule"],["floodColor","flood-color"],["floodOpacity","flood-opacity"],["fontFamily","font-family"],["fontSize","font-size"],["fontSizeAdjust","font-size-adjust"],["fontStretch","font-stretch"],["fontStyle","font-style"],["fontVariant","font-variant"],["fontWeight","font-weight"],["glyphName","glyph-name"],["glyphOrientationHorizontal","glyph-orientation-horizontal"],["glyphOrientationVertical","glyph-orientation-vertical"],["horizAdvX","horiz-adv-x"],["horizOriginX","horiz-origin-x"],["imageRendering","image-rendering"],["letterSpacing","letter-spacing"],["lightingColor","lighting-color"],["markerEnd","marker-end"],["markerMid","marker-mid"],["markerStart","marker-start"],["overlinePosition","overline-position"],["overlineThickness","overline-thickness"],["paintOrder","paint-order"],["panose-1","panose-1"],["pointerEvents","pointer-events"],["renderingIntent","rendering-intent"],["shapeRendering","shape-rendering"],["stopColor","stop-color"],["stopOpacity","stop-opacity"],["strikethroughPosition","strikethrough-position"],["strikethroughThickness","strikethrough-thickness"],["strokeDasharray","stroke-dasharray"],["strokeDashoffset","stroke-dashoffset"],["strokeLinecap","stroke-linecap"],["strokeLinejoin","stroke-linejoin"],["strokeMiterlimit","stroke-miterlimit"],["strokeOpacity","stroke-opacity"],["strokeWidth","stroke-width"],["textAnchor","text-anchor"],["textDecoration","text-decoration"],["textRendering","text-rendering"],["transformOrigin","transform-origin"],["underlinePosition","underline-position"],["underlineThickness","underline-thickness"],["unicodeBidi","unicode-bidi"],["unicodeRange","unicode-range"],["unitsPerEm","units-per-em"],["vAlphabetic","v-alphabetic"],["vHanging","v-hanging"],["vIdeographic","v-ideographic"],["vMathematical","v-mathematical"],["vectorEffect","vector-effect"],["vertAdvY","vert-adv-y"],["vertOriginX","vert-origin-x"],["vertOriginY","vert-origin-y"],["wordSpacing","word-spacing"],["writingMode","writing-mode"],["xmlnsXlink","xmlns:xlink"],["xHeight","x-height"]]),Bm=/^[\u0000-\u001F ]*j[\r\n\t]*a[\r\n\t]*v[\r\n\t]*a[\r\n\t]*s[\r\n\t]*c[\r\n\t]*r[\r\n\t]*i[\r\n\t]*p[\r\n\t]*t[\r\n\t]*:/i;function ai(e){return Bm.test(""+e)?"javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')":e}function Jt(){}var Hu=null;function Bu(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var fn=null,dn=null;function Dr(e){var t=un(e);if(t&&(e=t.stateNode)){var a=e[it]||null;e:switch(e=t.stateNode,t.type){case"input":if(Uu(e,a.value,a.defaultValue,a.defaultValue,a.checked,a.defaultChecked,a.type,a.name),t=a.name,a.type==="radio"&&t!=null){for(a=e;a.parentNode;)a=a.parentNode;for(a=a.querySelectorAll('input[name="'+Et(""+t)+'"][type="radio"]'),t=0;t<a.length;t++){var n=a[t];if(n!==e&&n.form===e.form){var l=n[it]||null;if(!l)throw Error(o(90));Uu(n,l.value,l.defaultValue,l.defaultValue,l.checked,l.defaultChecked,l.type,l.name)}}for(t=0;t<a.length;t++)n=a[t],n.form===e.form&&Ar(n)}break e;case"textarea":zr(e,a.value,a.defaultValue);break e;case"select":t=a.value,t!=null&&rn(e,!!a.multiple,t,!1)}}}var Lu=!1;function kr(e,t,a){if(Lu)return e(t,a);Lu=!0;try{var n=e(t);return n}finally{if(Lu=!1,(fn!==null||dn!==null)&&(Zi(),fn&&(t=fn,e=dn,dn=fn=null,Dr(t),e)))for(t=0;t<e.length;t++)Dr(e[t])}}function Wn(e,t){var a=e.stateNode;if(a===null)return null;var n=a[it]||null;if(n===null)return null;a=n[t];e:switch(t){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(n=!n.disabled)||(e=e.type,n=!(e==="button"||e==="input"||e==="select"||e==="textarea")),e=!n;break e;default:e=!1}if(e)return null;if(a&&typeof a!="function")throw Error(o(231,t,typeof a));return a}var Kt=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),qu=!1;if(Kt)try{var In={};Object.defineProperty(In,"passive",{get:function(){qu=!0}}),window.addEventListener("test",In,In),window.removeEventListener("test",In,In)}catch{qu=!1}var ha=null,Yu=null,ni=null;function Hr(){if(ni)return ni;var e,t=Yu,a=t.length,n,l="value"in ha?ha.value:ha.textContent,u=l.length;for(e=0;e<a&&t[e]===l[e];e++);var f=a-e;for(n=1;n<=f&&t[a-n]===l[u-n];n++);return ni=l.slice(e,1<n?1-n:void 0)}function li(e){var t=e.keyCode;return"charCode"in e?(e=e.charCode,e===0&&t===13&&(e=13)):e=t,e===10&&(e=13),32<=e||e===13?e:0}function ii(){return!0}function Br(){return!1}function ut(e){function t(a,n,l,u,f){this._reactName=a,this._targetInst=l,this.type=n,this.nativeEvent=u,this.target=f,this.currentTarget=null;for(var m in e)e.hasOwnProperty(m)&&(a=e[m],this[m]=a?a(u):u[m]);return this.isDefaultPrevented=(u.defaultPrevented!=null?u.defaultPrevented:u.returnValue===!1)?ii:Br,this.isPropagationStopped=Br,this}return b(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var a=this.nativeEvent;a&&(a.preventDefault?a.preventDefault():typeof a.returnValue!="unknown"&&(a.returnValue=!1),this.isDefaultPrevented=ii)},stopPropagation:function(){var a=this.nativeEvent;a&&(a.stopPropagation?a.stopPropagation():typeof a.cancelBubble!="unknown"&&(a.cancelBubble=!0),this.isPropagationStopped=ii)},persist:function(){},isPersistent:ii}),t}var qa={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},ui=ut(qa),Pn=b({},qa,{view:0,detail:0}),Lm=ut(Pn),Gu,Zu,el,si=b({},Pn,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Vu,button:0,buttons:0,relatedTarget:function(e){return e.relatedTarget===void 0?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return"movementX"in e?e.movementX:(e!==el&&(el&&e.type==="mousemove"?(Gu=e.screenX-el.screenX,Zu=e.screenY-el.screenY):Zu=Gu=0,el=e),Gu)},movementY:function(e){return"movementY"in e?e.movementY:Zu}}),Lr=ut(si),qm=b({},si,{dataTransfer:0}),Ym=ut(qm),Gm=b({},Pn,{relatedTarget:0}),Xu=ut(Gm),Zm=b({},qa,{animationName:0,elapsedTime:0,pseudoElement:0}),Xm=ut(Zm),Vm=b({},qa,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),Qm=ut(Vm),Jm=b({},qa,{data:0}),qr=ut(Jm),Km={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},$m={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},Fm={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function Wm(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=Fm[e])?!!t[e]:!1}function Vu(){return Wm}var Im=b({},Pn,{key:function(e){if(e.key){var t=Km[e.key]||e.key;if(t!=="Unidentified")return t}return e.type==="keypress"?(e=li(e),e===13?"Enter":String.fromCharCode(e)):e.type==="keydown"||e.type==="keyup"?$m[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Vu,charCode:function(e){return e.type==="keypress"?li(e):0},keyCode:function(e){return e.type==="keydown"||e.type==="keyup"?e.keyCode:0},which:function(e){return e.type==="keypress"?li(e):e.type==="keydown"||e.type==="keyup"?e.keyCode:0}}),Pm=ut(Im),ep=b({},si,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),Yr=ut(ep),tp=b({},Pn,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Vu}),ap=ut(tp),np=b({},qa,{propertyName:0,elapsedTime:0,pseudoElement:0}),lp=ut(np),ip=b({},si,{deltaX:function(e){return"deltaX"in e?e.deltaX:"wheelDeltaX"in e?-e.wheelDeltaX:0},deltaY:function(e){return"deltaY"in e?e.deltaY:"wheelDeltaY"in e?-e.wheelDeltaY:"wheelDelta"in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0}),up=ut(ip),sp=b({},qa,{newState:0,oldState:0}),cp=ut(sp),rp=[9,13,27,32],Qu=Kt&&"CompositionEvent"in window,tl=null;Kt&&"documentMode"in document&&(tl=document.documentMode);var op=Kt&&"TextEvent"in window&&!tl,Gr=Kt&&(!Qu||tl&&8<tl&&11>=tl),Zr=" ",Xr=!1;function Vr(e,t){switch(e){case"keyup":return rp.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Qr(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var hn=!1;function fp(e,t){switch(e){case"compositionend":return Qr(t);case"keypress":return t.which!==32?null:(Xr=!0,Zr);case"textInput":return e=t.data,e===Zr&&Xr?null:e;default:return null}}function dp(e,t){if(hn)return e==="compositionend"||!Qu&&Vr(e,t)?(e=Hr(),ni=Yu=ha=null,hn=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case"compositionend":return Gr&&t.locale!=="ko"?null:t.data;default:return null}}var hp={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function Jr(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t==="input"?!!hp[e.type]:t==="textarea"}function Kr(e,t,a,n){fn?dn?dn.push(n):dn=[n]:fn=n,t=Fi(t,"onChange"),0<t.length&&(a=new ui("onChange","change",null,a,n),e.push({event:a,listeners:t}))}var al=null,nl=null;function mp(e){Md(e,0)}function ci(e){var t=Fn(e);if(Ar(t))return e}function $r(e,t){if(e==="change")return t}var Fr=!1;if(Kt){var Ju;if(Kt){var Ku="oninput"in document;if(!Ku){var Wr=document.createElement("div");Wr.setAttribute("oninput","return;"),Ku=typeof Wr.oninput=="function"}Ju=Ku}else Ju=!1;Fr=Ju&&(!document.documentMode||9<document.documentMode)}function Ir(){al&&(al.detachEvent("onpropertychange",Pr),nl=al=null)}function Pr(e){if(e.propertyName==="value"&&ci(nl)){var t=[];Kr(t,nl,e,Bu(e)),kr(mp,t)}}function pp(e,t,a){e==="focusin"?(Ir(),al=t,nl=a,al.attachEvent("onpropertychange",Pr)):e==="focusout"&&Ir()}function vp(e){if(e==="selectionchange"||e==="keyup"||e==="keydown")return ci(nl)}function yp(e,t){if(e==="click")return ci(t)}function gp(e,t){if(e==="input"||e==="change")return ci(t)}function bp(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var pt=typeof Object.is=="function"?Object.is:bp;function ll(e,t){if(pt(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;var a=Object.keys(e),n=Object.keys(t);if(a.length!==n.length)return!1;for(n=0;n<a.length;n++){var l=a[n];if(!Nu.call(t,l)||!pt(e[l],t[l]))return!1}return!0}function eo(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function to(e,t){var a=eo(e);e=0;for(var n;a;){if(a.nodeType===3){if(n=e+a.textContent.length,e<=t&&n>=t)return{node:a,offset:t-e};e=n}e:{for(;a;){if(a.nextSibling){a=a.nextSibling;break e}a=a.parentNode}a=void 0}a=eo(a)}}function ao(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?ao(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function no(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=ti(e.document);t instanceof e.HTMLIFrameElement;){try{var a=typeof t.contentWindow.location.href=="string"}catch{a=!1}if(a)e=t.contentWindow;else break;t=ti(e.document)}return t}function $u(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 xp=Kt&&"documentMode"in document&&11>=document.documentMode,mn=null,Fu=null,il=null,Wu=!1;function lo(e,t,a){var n=a.window===a?a.document:a.nodeType===9?a:a.ownerDocument;Wu||mn==null||mn!==ti(n)||(n=mn,"selectionStart"in n&&$u(n)?n={start:n.selectionStart,end:n.selectionEnd}:(n=(n.ownerDocument&&n.ownerDocument.defaultView||window).getSelection(),n={anchorNode:n.anchorNode,anchorOffset:n.anchorOffset,focusNode:n.focusNode,focusOffset:n.focusOffset}),il&&ll(il,n)||(il=n,n=Fi(Fu,"onSelect"),0<n.length&&(t=new ui("onSelect","select",null,t,a),e.push({event:t,listeners:n}),t.target=mn)))}function Ya(e,t){var a={};return a[e.toLowerCase()]=t.toLowerCase(),a["Webkit"+e]="webkit"+t,a["Moz"+e]="moz"+t,a}var pn={animationend:Ya("Animation","AnimationEnd"),animationiteration:Ya("Animation","AnimationIteration"),animationstart:Ya("Animation","AnimationStart"),transitionrun:Ya("Transition","TransitionRun"),transitionstart:Ya("Transition","TransitionStart"),transitioncancel:Ya("Transition","TransitionCancel"),transitionend:Ya("Transition","TransitionEnd")},Iu={},io={};Kt&&(io=document.createElement("div").style,"AnimationEvent"in window||(delete pn.animationend.animation,delete pn.animationiteration.animation,delete pn.animationstart.animation),"TransitionEvent"in window||delete pn.transitionend.transition);function Ga(e){if(Iu[e])return Iu[e];if(!pn[e])return e;var t=pn[e],a;for(a in t)if(t.hasOwnProperty(a)&&a in io)return Iu[e]=t[a];return e}var uo=Ga("animationend"),so=Ga("animationiteration"),co=Ga("animationstart"),jp=Ga("transitionrun"),Sp=Ga("transitionstart"),Cp=Ga("transitioncancel"),ro=Ga("transitionend"),oo=new Map,Pu="abort auxClick beforeToggle cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");Pu.push("scrollEnd");function kt(e,t){oo.set(e,t),La(t,[e])}var ri=typeof reportError=="function"?reportError:function(e){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var t=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof e=="object"&&e!==null&&typeof e.message=="string"?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",e);return}console.error(e)},Nt=[],vn=0,es=0;function oi(){for(var e=vn,t=es=vn=0;t<e;){var a=Nt[t];Nt[t++]=null;var n=Nt[t];Nt[t++]=null;var l=Nt[t];Nt[t++]=null;var u=Nt[t];if(Nt[t++]=null,n!==null&&l!==null){var f=n.pending;f===null?l.next=l:(l.next=f.next,f.next=l),n.pending=l}u!==0&&fo(a,l,u)}}function fi(e,t,a,n){Nt[vn++]=e,Nt[vn++]=t,Nt[vn++]=a,Nt[vn++]=n,es|=n,e.lanes|=n,e=e.alternate,e!==null&&(e.lanes|=n)}function ts(e,t,a,n){return fi(e,t,a,n),di(e)}function Za(e,t){return fi(e,null,null,t),di(e)}function fo(e,t,a){e.lanes|=a;var n=e.alternate;n!==null&&(n.lanes|=a);for(var l=!1,u=e.return;u!==null;)u.childLanes|=a,n=u.alternate,n!==null&&(n.childLanes|=a),u.tag===22&&(e=u.stateNode,e===null||e._visibility&1||(l=!0)),e=u,u=u.return;return e.tag===3?(u=e.stateNode,l&&t!==null&&(l=31-mt(a),e=u.hiddenUpdates,n=e[l],n===null?e[l]=[t]:n.push(t),t.lane=a|536870912),u):null}function di(e){if(50<wl)throw wl=0,oc=null,Error(o(185));for(var t=e.return;t!==null;)e=t,t=e.return;return e.tag===3?e.stateNode:null}var yn={};function Ep(e,t,a,n){this.tag=e,this.key=a,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.refCleanup=this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=n,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function vt(e,t,a,n){return new Ep(e,t,a,n)}function as(e){return e=e.prototype,!(!e||!e.isReactComponent)}function $t(e,t){var a=e.alternate;return a===null?(a=vt(e.tag,t,e.key,e.mode),a.elementType=e.elementType,a.type=e.type,a.stateNode=e.stateNode,a.alternate=e,e.alternate=a):(a.pendingProps=t,a.type=e.type,a.flags=0,a.subtreeFlags=0,a.deletions=null),a.flags=e.flags&65011712,a.childLanes=e.childLanes,a.lanes=e.lanes,a.child=e.child,a.memoizedProps=e.memoizedProps,a.memoizedState=e.memoizedState,a.updateQueue=e.updateQueue,t=e.dependencies,a.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},a.sibling=e.sibling,a.index=e.index,a.ref=e.ref,a.refCleanup=e.refCleanup,a}function ho(e,t){e.flags&=65011714;var a=e.alternate;return a===null?(e.childLanes=0,e.lanes=t,e.child=null,e.subtreeFlags=0,e.memoizedProps=null,e.memoizedState=null,e.updateQueue=null,e.dependencies=null,e.stateNode=null):(e.childLanes=a.childLanes,e.lanes=a.lanes,e.child=a.child,e.subtreeFlags=0,e.deletions=null,e.memoizedProps=a.memoizedProps,e.memoizedState=a.memoizedState,e.updateQueue=a.updateQueue,e.type=a.type,t=a.dependencies,e.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext}),e}function hi(e,t,a,n,l,u){var f=0;if(n=e,typeof e=="function")as(e)&&(f=1);else if(typeof e=="string")f=A1(e,a,F.current)?26:e==="html"||e==="head"||e==="body"?27:5;else e:switch(e){case G:return e=vt(31,a,t,l),e.elementType=G,e.lanes=u,e;case q:return Xa(a.children,l,u,t);case X:f=8,l|=24;break;case Z:return e=vt(12,a,t,l|2),e.elementType=Z,e.lanes=u,e;case K:return e=vt(13,a,t,l),e.elementType=K,e.lanes=u,e;case Y:return e=vt(19,a,t,l),e.elementType=Y,e.lanes=u,e;default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case W:f=10;break e;case P:f=9;break e;case ue:f=11;break e;case S:f=14;break e;case O:f=16,n=null;break e}f=29,a=Error(o(130,e===null?"null":typeof e,"")),n=null}return t=vt(f,a,t,l),t.elementType=e,t.type=n,t.lanes=u,t}function Xa(e,t,a,n){return e=vt(7,e,n,t),e.lanes=a,e}function ns(e,t,a){return e=vt(6,e,null,t),e.lanes=a,e}function mo(e){var t=vt(18,null,null,0);return t.stateNode=e,t}function ls(e,t,a){return t=vt(4,e.children!==null?e.children:[],e.key,t),t.lanes=a,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}var po=new WeakMap;function Tt(e,t){if(typeof e=="object"&&e!==null){var a=po.get(e);return a!==void 0?a:(t={value:e,source:t,stack:hr(t)},po.set(e,t),t)}return{value:e,source:t,stack:hr(t)}}var gn=[],bn=0,mi=null,ul=0,wt=[],_t=0,ma=null,Yt=1,Gt="";function Ft(e,t){gn[bn++]=ul,gn[bn++]=mi,mi=e,ul=t}function vo(e,t,a){wt[_t++]=Yt,wt[_t++]=Gt,wt[_t++]=ma,ma=e;var n=Yt;e=Gt;var l=32-mt(n)-1;n&=~(1<<l),a+=1;var u=32-mt(t)+l;if(30<u){var f=l-l%5;u=(n&(1<<f)-1).toString(32),n>>=f,l-=f,Yt=1<<32-mt(t)+l|a<<l|n,Gt=u+e}else Yt=1<<u|a<<l|n,Gt=e}function is(e){e.return!==null&&(Ft(e,1),vo(e,1,0))}function us(e){for(;e===mi;)mi=gn[--bn],gn[bn]=null,ul=gn[--bn],gn[bn]=null;for(;e===ma;)ma=wt[--_t],wt[_t]=null,Gt=wt[--_t],wt[_t]=null,Yt=wt[--_t],wt[_t]=null}function yo(e,t){wt[_t++]=Yt,wt[_t++]=Gt,wt[_t++]=ma,Yt=t.id,Gt=t.overflow,ma=e}var Ie=null,ze=null,ye=!1,pa=null,At=!1,ss=Error(o(519));function va(e){var t=Error(o(418,1<arguments.length&&arguments[1]!==void 0&&arguments[1]?"text":"HTML",""));throw sl(Tt(t,e)),ss}function go(e){var t=e.stateNode,a=e.type,n=e.memoizedProps;switch(t[We]=e,t[it]=n,a){case"dialog":de("cancel",t),de("close",t);break;case"iframe":case"object":case"embed":de("load",t);break;case"video":case"audio":for(a=0;a<Al.length;a++)de(Al[a],t);break;case"source":de("error",t);break;case"img":case"image":case"link":de("error",t),de("load",t);break;case"details":de("toggle",t);break;case"input":de("invalid",t),Rr(t,n.value,n.defaultValue,n.checked,n.defaultChecked,n.type,n.name,!0);break;case"select":de("invalid",t);break;case"textarea":de("invalid",t),Mr(t,n.value,n.defaultValue,n.children)}a=n.children,typeof a!="string"&&typeof a!="number"&&typeof a!="bigint"||t.textContent===""+a||n.suppressHydrationWarning===!0||kd(t.textContent,a)?(n.popover!=null&&(de("beforetoggle",t),de("toggle",t)),n.onScroll!=null&&de("scroll",t),n.onScrollEnd!=null&&de("scrollend",t),n.onClick!=null&&(t.onclick=Jt),t=!0):t=!1,t||va(e,!0)}function bo(e){for(Ie=e.return;Ie;)switch(Ie.tag){case 5:case 31:case 13:At=!1;return;case 27:case 3:At=!0;return;default:Ie=Ie.return}}function xn(e){if(e!==Ie)return!1;if(!ye)return bo(e),ye=!0,!1;var t=e.tag,a;if((a=t!==3&&t!==27)&&((a=t===5)&&(a=e.type,a=!(a!=="form"&&a!=="button")||Nc(e.type,e.memoizedProps)),a=!a),a&&ze&&va(e),bo(e),t===13){if(e=e.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(o(317));ze=Vd(e)}else if(t===31){if(e=e.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(o(317));ze=Vd(e)}else t===27?(t=ze,Ra(e.type)?(e=Rc,Rc=null,ze=e):ze=t):ze=Ie?zt(e.stateNode.nextSibling):null;return!0}function Va(){ze=Ie=null,ye=!1}function cs(){var e=pa;return e!==null&&(ot===null?ot=e:ot.push.apply(ot,e),pa=null),e}function sl(e){pa===null?pa=[e]:pa.push(e)}var rs=N(null),Qa=null,Wt=null;function ya(e,t,a){J(rs,t._currentValue),t._currentValue=a}function It(e){e._currentValue=rs.current,L(rs)}function os(e,t,a){for(;e!==null;){var n=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,n!==null&&(n.childLanes|=t)):n!==null&&(n.childLanes&t)!==t&&(n.childLanes|=t),e===a)break;e=e.return}}function fs(e,t,a,n){var l=e.child;for(l!==null&&(l.return=e);l!==null;){var u=l.dependencies;if(u!==null){var f=l.child;u=u.firstContext;e:for(;u!==null;){var m=u;u=l;for(var x=0;x<t.length;x++)if(m.context===t[x]){u.lanes|=a,m=u.alternate,m!==null&&(m.lanes|=a),os(u.return,a,e),n||(f=null);break e}u=m.next}}else if(l.tag===18){if(f=l.return,f===null)throw Error(o(341));f.lanes|=a,u=f.alternate,u!==null&&(u.lanes|=a),os(f,a,e),f=null}else f=l.child;if(f!==null)f.return=l;else for(f=l;f!==null;){if(f===e){f=null;break}if(l=f.sibling,l!==null){l.return=f.return,f=l;break}f=f.return}l=f}}function jn(e,t,a,n){e=null;for(var l=t,u=!1;l!==null;){if(!u){if((l.flags&524288)!==0)u=!0;else if((l.flags&262144)!==0)break}if(l.tag===10){var f=l.alternate;if(f===null)throw Error(o(387));if(f=f.memoizedProps,f!==null){var m=l.type;pt(l.pendingProps.value,f.value)||(e!==null?e.push(m):e=[m])}}else if(l===je.current){if(f=l.alternate,f===null)throw Error(o(387));f.memoizedState.memoizedState!==l.memoizedState.memoizedState&&(e!==null?e.push(Ul):e=[Ul])}l=l.return}e!==null&&fs(t,e,a,n),t.flags|=262144}function pi(e){for(e=e.firstContext;e!==null;){if(!pt(e.context._currentValue,e.memoizedValue))return!0;e=e.next}return!1}function Ja(e){Qa=e,Wt=null,e=e.dependencies,e!==null&&(e.firstContext=null)}function Pe(e){return xo(Qa,e)}function vi(e,t){return Qa===null&&Ja(e),xo(e,t)}function xo(e,t){var a=t._currentValue;if(t={context:t,memoizedValue:a,next:null},Wt===null){if(e===null)throw Error(o(308));Wt=t,e.dependencies={lanes:0,firstContext:t},e.flags|=524288}else Wt=Wt.next=t;return a}var Np=typeof AbortController<"u"?AbortController:function(){var e=[],t=this.signal={aborted:!1,addEventListener:function(a,n){e.push(n)}};this.abort=function(){t.aborted=!0,e.forEach(function(a){return a()})}},Tp=i.unstable_scheduleCallback,wp=i.unstable_NormalPriority,Ge={$$typeof:W,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0};function ds(){return{controller:new Np,data:new Map,refCount:0}}function cl(e){e.refCount--,e.refCount===0&&Tp(wp,function(){e.controller.abort()})}var rl=null,hs=0,Sn=0,Cn=null;function _p(e,t){if(rl===null){var a=rl=[];hs=0,Sn=vc(),Cn={status:"pending",value:void 0,then:function(n){a.push(n)}}}return hs++,t.then(jo,jo),t}function jo(){if(--hs===0&&rl!==null){Cn!==null&&(Cn.status="fulfilled");var e=rl;rl=null,Sn=0,Cn=null;for(var t=0;t<e.length;t++)(0,e[t])()}}function Ap(e,t){var a=[],n={status:"pending",value:null,reason:null,then:function(l){a.push(l)}};return e.then(function(){n.status="fulfilled",n.value=t;for(var l=0;l<a.length;l++)(0,a[l])(t)},function(l){for(n.status="rejected",n.reason=l,l=0;l<a.length;l++)(0,a[l])(void 0)}),n}var So=D.S;D.S=function(e,t){ud=dt(),typeof t=="object"&&t!==null&&typeof t.then=="function"&&_p(e,t),So!==null&&So(e,t)};var Ka=N(null);function ms(){var e=Ka.current;return e!==null?e:Ae.pooledCache}function yi(e,t){t===null?J(Ka,Ka.current):J(Ka,t.pool)}function Co(){var e=ms();return e===null?null:{parent:Ge._currentValue,pool:e}}var En=Error(o(460)),ps=Error(o(474)),gi=Error(o(542)),bi={then:function(){}};function Eo(e){return e=e.status,e==="fulfilled"||e==="rejected"}function No(e,t,a){switch(a=e[a],a===void 0?e.push(t):a!==t&&(t.then(Jt,Jt),t=a),t.status){case"fulfilled":return t.value;case"rejected":throw e=t.reason,wo(e),e;default:if(typeof t.status=="string")t.then(Jt,Jt);else{if(e=Ae,e!==null&&100<e.shellSuspendCounter)throw Error(o(482));e=t,e.status="pending",e.then(function(n){if(t.status==="pending"){var l=t;l.status="fulfilled",l.value=n}},function(n){if(t.status==="pending"){var l=t;l.status="rejected",l.reason=n}})}switch(t.status){case"fulfilled":return t.value;case"rejected":throw e=t.reason,wo(e),e}throw Fa=t,En}}function $a(e){try{var t=e._init;return t(e._payload)}catch(a){throw a!==null&&typeof a=="object"&&typeof a.then=="function"?(Fa=a,En):a}}var Fa=null;function To(){if(Fa===null)throw Error(o(459));var e=Fa;return Fa=null,e}function wo(e){if(e===En||e===gi)throw Error(o(483))}var Nn=null,ol=0;function xi(e){var t=ol;return ol+=1,Nn===null&&(Nn=[]),No(Nn,e,t)}function fl(e,t){t=t.props.ref,e.ref=t!==void 0?t:null}function ji(e,t){throw t.$$typeof===z?Error(o(525)):(e=Object.prototype.toString.call(t),Error(o(31,e==="[object Object]"?"object with keys {"+Object.keys(t).join(", ")+"}":e)))}function _o(e){function t(T,E){if(e){var w=T.deletions;w===null?(T.deletions=[E],T.flags|=16):w.push(E)}}function a(T,E){if(!e)return null;for(;E!==null;)t(T,E),E=E.sibling;return null}function n(T){for(var E=new Map;T!==null;)T.key!==null?E.set(T.key,T):E.set(T.index,T),T=T.sibling;return E}function l(T,E){return T=$t(T,E),T.index=0,T.sibling=null,T}function u(T,E,w){return T.index=w,e?(w=T.alternate,w!==null?(w=w.index,w<E?(T.flags|=67108866,E):w):(T.flags|=67108866,E)):(T.flags|=1048576,E)}function f(T){return e&&T.alternate===null&&(T.flags|=67108866),T}function m(T,E,w,H){return E===null||E.tag!==6?(E=ns(w,T.mode,H),E.return=T,E):(E=l(E,w),E.return=T,E)}function x(T,E,w,H){var ae=w.type;return ae===q?U(T,E,w.props.children,H,w.key):E!==null&&(E.elementType===ae||typeof ae=="object"&&ae!==null&&ae.$$typeof===O&&$a(ae)===E.type)?(E=l(E,w.props),fl(E,w),E.return=T,E):(E=hi(w.type,w.key,w.props,null,T.mode,H),fl(E,w),E.return=T,E)}function _(T,E,w,H){return E===null||E.tag!==4||E.stateNode.containerInfo!==w.containerInfo||E.stateNode.implementation!==w.implementation?(E=ls(w,T.mode,H),E.return=T,E):(E=l(E,w.children||[]),E.return=T,E)}function U(T,E,w,H,ae){return E===null||E.tag!==7?(E=Xa(w,T.mode,H,ae),E.return=T,E):(E=l(E,w),E.return=T,E)}function B(T,E,w){if(typeof E=="string"&&E!==""||typeof E=="number"||typeof E=="bigint")return E=ns(""+E,T.mode,w),E.return=T,E;if(typeof E=="object"&&E!==null){switch(E.$$typeof){case R:return w=hi(E.type,E.key,E.props,null,T.mode,w),fl(w,E),w.return=T,w;case k:return E=ls(E,T.mode,w),E.return=T,E;case O:return E=$a(E),B(T,E,w)}if(Ye(E)||he(E))return E=Xa(E,T.mode,w,null),E.return=T,E;if(typeof E.then=="function")return B(T,xi(E),w);if(E.$$typeof===W)return B(T,vi(T,E),w);ji(T,E)}return null}function A(T,E,w,H){var ae=E!==null?E.key:null;if(typeof w=="string"&&w!==""||typeof w=="number"||typeof w=="bigint")return ae!==null?null:m(T,E,""+w,H);if(typeof w=="object"&&w!==null){switch(w.$$typeof){case R:return w.key===ae?x(T,E,w,H):null;case k:return w.key===ae?_(T,E,w,H):null;case O:return w=$a(w),A(T,E,w,H)}if(Ye(w)||he(w))return ae!==null?null:U(T,E,w,H,null);if(typeof w.then=="function")return A(T,E,xi(w),H);if(w.$$typeof===W)return A(T,E,vi(T,w),H);ji(T,w)}return null}function M(T,E,w,H,ae){if(typeof H=="string"&&H!==""||typeof H=="number"||typeof H=="bigint")return T=T.get(w)||null,m(E,T,""+H,ae);if(typeof H=="object"&&H!==null){switch(H.$$typeof){case R:return T=T.get(H.key===null?w:H.key)||null,x(E,T,H,ae);case k:return T=T.get(H.key===null?w:H.key)||null,_(E,T,H,ae);case O:return H=$a(H),M(T,E,w,H,ae)}if(Ye(H)||he(H))return T=T.get(w)||null,U(E,T,H,ae,null);if(typeof H.then=="function")return M(T,E,w,xi(H),ae);if(H.$$typeof===W)return M(T,E,w,vi(E,H),ae);ji(E,H)}return null}function $(T,E,w,H){for(var ae=null,ge=null,I=E,re=E=0,pe=null;I!==null&&re<w.length;re++){I.index>re?(pe=I,I=null):pe=I.sibling;var be=A(T,I,w[re],H);if(be===null){I===null&&(I=pe);break}e&&I&&be.alternate===null&&t(T,I),E=u(be,E,re),ge===null?ae=be:ge.sibling=be,ge=be,I=pe}if(re===w.length)return a(T,I),ye&&Ft(T,re),ae;if(I===null){for(;re<w.length;re++)I=B(T,w[re],H),I!==null&&(E=u(I,E,re),ge===null?ae=I:ge.sibling=I,ge=I);return ye&&Ft(T,re),ae}for(I=n(I);re<w.length;re++)pe=M(I,T,re,w[re],H),pe!==null&&(e&&pe.alternate!==null&&I.delete(pe.key===null?re:pe.key),E=u(pe,E,re),ge===null?ae=pe:ge.sibling=pe,ge=pe);return e&&I.forEach(function(Da){return t(T,Da)}),ye&&Ft(T,re),ae}function ne(T,E,w,H){if(w==null)throw Error(o(151));for(var ae=null,ge=null,I=E,re=E=0,pe=null,be=w.next();I!==null&&!be.done;re++,be=w.next()){I.index>re?(pe=I,I=null):pe=I.sibling;var Da=A(T,I,be.value,H);if(Da===null){I===null&&(I=pe);break}e&&I&&Da.alternate===null&&t(T,I),E=u(Da,E,re),ge===null?ae=Da:ge.sibling=Da,ge=Da,I=pe}if(be.done)return a(T,I),ye&&Ft(T,re),ae;if(I===null){for(;!be.done;re++,be=w.next())be=B(T,be.value,H),be!==null&&(E=u(be,E,re),ge===null?ae=be:ge.sibling=be,ge=be);return ye&&Ft(T,re),ae}for(I=n(I);!be.done;re++,be=w.next())be=M(I,T,re,be.value,H),be!==null&&(e&&be.alternate!==null&&I.delete(be.key===null?re:be.key),E=u(be,E,re),ge===null?ae=be:ge.sibling=be,ge=be);return e&&I.forEach(function(q1){return t(T,q1)}),ye&&Ft(T,re),ae}function we(T,E,w,H){if(typeof w=="object"&&w!==null&&w.type===q&&w.key===null&&(w=w.props.children),typeof w=="object"&&w!==null){switch(w.$$typeof){case R:e:{for(var ae=w.key;E!==null;){if(E.key===ae){if(ae=w.type,ae===q){if(E.tag===7){a(T,E.sibling),H=l(E,w.props.children),H.return=T,T=H;break e}}else if(E.elementType===ae||typeof ae=="object"&&ae!==null&&ae.$$typeof===O&&$a(ae)===E.type){a(T,E.sibling),H=l(E,w.props),fl(H,w),H.return=T,T=H;break e}a(T,E);break}else t(T,E);E=E.sibling}w.type===q?(H=Xa(w.props.children,T.mode,H,w.key),H.return=T,T=H):(H=hi(w.type,w.key,w.props,null,T.mode,H),fl(H,w),H.return=T,T=H)}return f(T);case k:e:{for(ae=w.key;E!==null;){if(E.key===ae)if(E.tag===4&&E.stateNode.containerInfo===w.containerInfo&&E.stateNode.implementation===w.implementation){a(T,E.sibling),H=l(E,w.children||[]),H.return=T,T=H;break e}else{a(T,E);break}else t(T,E);E=E.sibling}H=ls(w,T.mode,H),H.return=T,T=H}return f(T);case O:return w=$a(w),we(T,E,w,H)}if(Ye(w))return $(T,E,w,H);if(he(w)){if(ae=he(w),typeof ae!="function")throw Error(o(150));return w=ae.call(w),ne(T,E,w,H)}if(typeof w.then=="function")return we(T,E,xi(w),H);if(w.$$typeof===W)return we(T,E,vi(T,w),H);ji(T,w)}return typeof w=="string"&&w!==""||typeof w=="number"||typeof w=="bigint"?(w=""+w,E!==null&&E.tag===6?(a(T,E.sibling),H=l(E,w),H.return=T,T=H):(a(T,E),H=ns(w,T.mode,H),H.return=T,T=H),f(T)):a(T,E)}return function(T,E,w,H){try{ol=0;var ae=we(T,E,w,H);return Nn=null,ae}catch(I){if(I===En||I===gi)throw I;var ge=vt(29,I,null,T.mode);return ge.lanes=H,ge.return=T,ge}finally{}}}var Wa=_o(!0),Ao=_o(!1),ga=!1;function vs(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function ys(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 ba(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function xa(e,t,a){var n=e.updateQueue;if(n===null)return null;if(n=n.shared,(xe&2)!==0){var l=n.pending;return l===null?t.next=t:(t.next=l.next,l.next=t),n.pending=t,t=di(e),fo(e,null,a),t}return fi(e,n,t,a),di(e)}function dl(e,t,a){if(t=t.updateQueue,t!==null&&(t=t.shared,(a&4194048)!==0)){var n=t.lanes;n&=e.pendingLanes,a|=n,t.lanes=a,br(e,a)}}function gs(e,t){var a=e.updateQueue,n=e.alternate;if(n!==null&&(n=n.updateQueue,a===n)){var l=null,u=null;if(a=a.firstBaseUpdate,a!==null){do{var f={lane:a.lane,tag:a.tag,payload:a.payload,callback:null,next:null};u===null?l=u=f:u=u.next=f,a=a.next}while(a!==null);u===null?l=u=t:u=u.next=t}else l=u=t;a={baseState:n.baseState,firstBaseUpdate:l,lastBaseUpdate:u,shared:n.shared,callbacks:n.callbacks},e.updateQueue=a;return}e=a.lastBaseUpdate,e===null?a.firstBaseUpdate=t:e.next=t,a.lastBaseUpdate=t}var bs=!1;function hl(){if(bs){var e=Cn;if(e!==null)throw e}}function ml(e,t,a,n){bs=!1;var l=e.updateQueue;ga=!1;var u=l.firstBaseUpdate,f=l.lastBaseUpdate,m=l.shared.pending;if(m!==null){l.shared.pending=null;var x=m,_=x.next;x.next=null,f===null?u=_:f.next=_,f=x;var U=e.alternate;U!==null&&(U=U.updateQueue,m=U.lastBaseUpdate,m!==f&&(m===null?U.firstBaseUpdate=_:m.next=_,U.lastBaseUpdate=x))}if(u!==null){var B=l.baseState;f=0,U=_=x=null,m=u;do{var A=m.lane&-536870913,M=A!==m.lane;if(M?(me&A)===A:(n&A)===A){A!==0&&A===Sn&&(bs=!0),U!==null&&(U=U.next={lane:0,tag:m.tag,payload:m.payload,callback:null,next:null});e:{var $=e,ne=m;A=t;var we=a;switch(ne.tag){case 1:if($=ne.payload,typeof $=="function"){B=$.call(we,B,A);break e}B=$;break e;case 3:$.flags=$.flags&-65537|128;case 0:if($=ne.payload,A=typeof $=="function"?$.call(we,B,A):$,A==null)break e;B=b({},B,A);break e;case 2:ga=!0}}A=m.callback,A!==null&&(e.flags|=64,M&&(e.flags|=8192),M=l.callbacks,M===null?l.callbacks=[A]:M.push(A))}else M={lane:A,tag:m.tag,payload:m.payload,callback:m.callback,next:null},U===null?(_=U=M,x=B):U=U.next=M,f|=A;if(m=m.next,m===null){if(m=l.shared.pending,m===null)break;M=m,m=M.next,M.next=null,l.lastBaseUpdate=M,l.shared.pending=null}}while(!0);U===null&&(x=B),l.baseState=x,l.firstBaseUpdate=_,l.lastBaseUpdate=U,u===null&&(l.shared.lanes=0),Na|=f,e.lanes=f,e.memoizedState=B}}function Ro(e,t){if(typeof e!="function")throw Error(o(191,e));e.call(t)}function zo(e,t){var a=e.callbacks;if(a!==null)for(e.callbacks=null,e=0;e<a.length;e++)Ro(a[e],t)}var Tn=N(null),Si=N(0);function Mo(e,t){e=sa,J(Si,e),J(Tn,t),sa=e|t.baseLanes}function xs(){J(Si,sa),J(Tn,Tn.current)}function js(){sa=Si.current,L(Tn),L(Si)}var yt=N(null),Rt=null;function ja(e){var t=e.alternate;J(Le,Le.current&1),J(yt,e),Rt===null&&(t===null||Tn.current!==null||t.memoizedState!==null)&&(Rt=e)}function Ss(e){J(Le,Le.current),J(yt,e),Rt===null&&(Rt=e)}function Oo(e){e.tag===22?(J(Le,Le.current),J(yt,e),Rt===null&&(Rt=e)):Sa()}function Sa(){J(Le,Le.current),J(yt,yt.current)}function gt(e){L(yt),Rt===e&&(Rt=null),L(Le)}var Le=N(0);function Ci(e){for(var t=e;t!==null;){if(t.tag===13){var a=t.memoizedState;if(a!==null&&(a=a.dehydrated,a===null||_c(a)||Ac(a)))return t}else if(t.tag===19&&(t.memoizedProps.revealOrder==="forwards"||t.memoizedProps.revealOrder==="backwards"||t.memoizedProps.revealOrder==="unstable_legacy-backwards"||t.memoizedProps.revealOrder==="together")){if((t.flags&128)!==0)return t}else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var Pt=0,ce=null,Ne=null,Ze=null,Ei=!1,wn=!1,Ia=!1,Ni=0,pl=0,_n=null,Rp=0;function ke(){throw Error(o(321))}function Cs(e,t){if(t===null)return!1;for(var a=0;a<t.length&&a<e.length;a++)if(!pt(e[a],t[a]))return!1;return!0}function Es(e,t,a,n,l,u){return Pt=u,ce=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,D.H=e===null||e.memoizedState===null?yf:Ls,Ia=!1,u=a(n,l),Ia=!1,wn&&(u=Do(t,a,n,l)),Uo(e),u}function Uo(e){D.H=gl;var t=Ne!==null&&Ne.next!==null;if(Pt=0,Ze=Ne=ce=null,Ei=!1,pl=0,_n=null,t)throw Error(o(300));e===null||Xe||(e=e.dependencies,e!==null&&pi(e)&&(Xe=!0))}function Do(e,t,a,n){ce=e;var l=0;do{if(wn&&(_n=null),pl=0,wn=!1,25<=l)throw Error(o(301));if(l+=1,Ze=Ne=null,e.updateQueue!=null){var u=e.updateQueue;u.lastEffect=null,u.events=null,u.stores=null,u.memoCache!=null&&(u.memoCache.index=0)}D.H=gf,u=t(a,n)}while(wn);return u}function zp(){var e=D.H,t=e.useState()[0];return t=typeof t.then=="function"?vl(t):t,e=e.useState()[0],(Ne!==null?Ne.memoizedState:null)!==e&&(ce.flags|=1024),t}function Ns(){var e=Ni!==0;return Ni=0,e}function Ts(e,t,a){t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~a}function ws(e){if(Ei){for(e=e.memoizedState;e!==null;){var t=e.queue;t!==null&&(t.pending=null),e=e.next}Ei=!1}Pt=0,Ze=Ne=ce=null,wn=!1,pl=Ni=0,_n=null}function lt(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return Ze===null?ce.memoizedState=Ze=e:Ze=Ze.next=e,Ze}function qe(){if(Ne===null){var e=ce.alternate;e=e!==null?e.memoizedState:null}else e=Ne.next;var t=Ze===null?ce.memoizedState:Ze.next;if(t!==null)Ze=t,Ne=e;else{if(e===null)throw ce.alternate===null?Error(o(467)):Error(o(310));Ne=e,e={memoizedState:Ne.memoizedState,baseState:Ne.baseState,baseQueue:Ne.baseQueue,queue:Ne.queue,next:null},Ze===null?ce.memoizedState=Ze=e:Ze=Ze.next=e}return Ze}function Ti(){return{lastEffect:null,events:null,stores:null,memoCache:null}}function vl(e){var t=pl;return pl+=1,_n===null&&(_n=[]),e=No(_n,e,t),t=ce,(Ze===null?t.memoizedState:Ze.next)===null&&(t=t.alternate,D.H=t===null||t.memoizedState===null?yf:Ls),e}function wi(e){if(e!==null&&typeof e=="object"){if(typeof e.then=="function")return vl(e);if(e.$$typeof===W)return Pe(e)}throw Error(o(438,String(e)))}function _s(e){var t=null,a=ce.updateQueue;if(a!==null&&(t=a.memoCache),t==null){var n=ce.alternate;n!==null&&(n=n.updateQueue,n!==null&&(n=n.memoCache,n!=null&&(t={data:n.data.map(function(l){return l.slice()}),index:0})))}if(t==null&&(t={data:[],index:0}),a===null&&(a=Ti(),ce.updateQueue=a),a.memoCache=t,a=t.data[t.index],a===void 0)for(a=t.data[t.index]=Array(e),n=0;n<e;n++)a[n]=ve;return t.index++,a}function ea(e,t){return typeof t=="function"?t(e):t}function _i(e){var t=qe();return As(t,Ne,e)}function As(e,t,a){var n=e.queue;if(n===null)throw Error(o(311));n.lastRenderedReducer=a;var l=e.baseQueue,u=n.pending;if(u!==null){if(l!==null){var f=l.next;l.next=u.next,u.next=f}t.baseQueue=l=u,n.pending=null}if(u=e.baseState,l===null)e.memoizedState=u;else{t=l.next;var m=f=null,x=null,_=t,U=!1;do{var B=_.lane&-536870913;if(B!==_.lane?(me&B)===B:(Pt&B)===B){var A=_.revertLane;if(A===0)x!==null&&(x=x.next={lane:0,revertLane:0,gesture:null,action:_.action,hasEagerState:_.hasEagerState,eagerState:_.eagerState,next:null}),B===Sn&&(U=!0);else if((Pt&A)===A){_=_.next,A===Sn&&(U=!0);continue}else B={lane:0,revertLane:_.revertLane,gesture:null,action:_.action,hasEagerState:_.hasEagerState,eagerState:_.eagerState,next:null},x===null?(m=x=B,f=u):x=x.next=B,ce.lanes|=A,Na|=A;B=_.action,Ia&&a(u,B),u=_.hasEagerState?_.eagerState:a(u,B)}else A={lane:B,revertLane:_.revertLane,gesture:_.gesture,action:_.action,hasEagerState:_.hasEagerState,eagerState:_.eagerState,next:null},x===null?(m=x=A,f=u):x=x.next=A,ce.lanes|=B,Na|=B;_=_.next}while(_!==null&&_!==t);if(x===null?f=u:x.next=m,!pt(u,e.memoizedState)&&(Xe=!0,U&&(a=Cn,a!==null)))throw a;e.memoizedState=u,e.baseState=f,e.baseQueue=x,n.lastRenderedState=u}return l===null&&(n.lanes=0),[e.memoizedState,n.dispatch]}function Rs(e){var t=qe(),a=t.queue;if(a===null)throw Error(o(311));a.lastRenderedReducer=e;var n=a.dispatch,l=a.pending,u=t.memoizedState;if(l!==null){a.pending=null;var f=l=l.next;do u=e(u,f.action),f=f.next;while(f!==l);pt(u,t.memoizedState)||(Xe=!0),t.memoizedState=u,t.baseQueue===null&&(t.baseState=u),a.lastRenderedState=u}return[u,n]}function ko(e,t,a){var n=ce,l=qe(),u=ye;if(u){if(a===void 0)throw Error(o(407));a=a()}else a=t();var f=!pt((Ne||l).memoizedState,a);if(f&&(l.memoizedState=a,Xe=!0),l=l.queue,Os(Lo.bind(null,n,l,e),[e]),l.getSnapshot!==t||f||Ze!==null&&Ze.memoizedState.tag&1){if(n.flags|=2048,An(9,{destroy:void 0},Bo.bind(null,n,l,a,t),null),Ae===null)throw Error(o(349));u||(Pt&127)!==0||Ho(n,t,a)}return a}function Ho(e,t,a){e.flags|=16384,e={getSnapshot:t,value:a},t=ce.updateQueue,t===null?(t=Ti(),ce.updateQueue=t,t.stores=[e]):(a=t.stores,a===null?t.stores=[e]:a.push(e))}function Bo(e,t,a,n){t.value=a,t.getSnapshot=n,qo(t)&&Yo(e)}function Lo(e,t,a){return a(function(){qo(t)&&Yo(e)})}function qo(e){var t=e.getSnapshot;e=e.value;try{var a=t();return!pt(e,a)}catch{return!0}}function Yo(e){var t=Za(e,2);t!==null&&ft(t,e,2)}function zs(e){var t=lt();if(typeof e=="function"){var a=e;if(e=a(),Ia){fa(!0);try{a()}finally{fa(!1)}}}return t.memoizedState=t.baseState=e,t.queue={pending:null,lanes:0,dispatch:null,lastRenderedReducer:ea,lastRenderedState:e},t}function Go(e,t,a,n){return e.baseState=a,As(e,Ne,typeof n=="function"?n:ea)}function Mp(e,t,a,n,l){if(zi(e))throw Error(o(485));if(e=t.action,e!==null){var u={payload:l,action:e,next:null,isTransition:!0,status:"pending",value:null,reason:null,listeners:[],then:function(f){u.listeners.push(f)}};D.T!==null?a(!0):u.isTransition=!1,n(u),a=t.pending,a===null?(u.next=t.pending=u,Zo(t,u)):(u.next=a.next,t.pending=a.next=u)}}function Zo(e,t){var a=t.action,n=t.payload,l=e.state;if(t.isTransition){var u=D.T,f={};D.T=f;try{var m=a(l,n),x=D.S;x!==null&&x(f,m),Xo(e,t,m)}catch(_){Ms(e,t,_)}finally{u!==null&&f.types!==null&&(u.types=f.types),D.T=u}}else try{u=a(l,n),Xo(e,t,u)}catch(_){Ms(e,t,_)}}function Xo(e,t,a){a!==null&&typeof a=="object"&&typeof a.then=="function"?a.then(function(n){Vo(e,t,n)},function(n){return Ms(e,t,n)}):Vo(e,t,a)}function Vo(e,t,a){t.status="fulfilled",t.value=a,Qo(t),e.state=a,t=e.pending,t!==null&&(a=t.next,a===t?e.pending=null:(a=a.next,t.next=a,Zo(e,a)))}function Ms(e,t,a){var n=e.pending;if(e.pending=null,n!==null){n=n.next;do t.status="rejected",t.reason=a,Qo(t),t=t.next;while(t!==n)}e.action=null}function Qo(e){e=e.listeners;for(var t=0;t<e.length;t++)(0,e[t])()}function Jo(e,t){return t}function Ko(e,t){if(ye){var a=Ae.formState;if(a!==null){e:{var n=ce;if(ye){if(ze){t:{for(var l=ze,u=At;l.nodeType!==8;){if(!u){l=null;break t}if(l=zt(l.nextSibling),l===null){l=null;break t}}u=l.data,l=u==="F!"||u==="F"?l:null}if(l){ze=zt(l.nextSibling),n=l.data==="F!";break e}}va(n)}n=!1}n&&(t=a[0])}}return a=lt(),a.memoizedState=a.baseState=t,n={pending:null,lanes:0,dispatch:null,lastRenderedReducer:Jo,lastRenderedState:t},a.queue=n,a=mf.bind(null,ce,n),n.dispatch=a,n=zs(!1),u=Bs.bind(null,ce,!1,n.queue),n=lt(),l={state:t,dispatch:null,action:e,pending:null},n.queue=l,a=Mp.bind(null,ce,l,u,a),l.dispatch=a,n.memoizedState=e,[t,a,!1]}function $o(e){var t=qe();return Fo(t,Ne,e)}function Fo(e,t,a){if(t=As(e,t,Jo)[0],e=_i(ea)[0],typeof t=="object"&&t!==null&&typeof t.then=="function")try{var n=vl(t)}catch(f){throw f===En?gi:f}else n=t;t=qe();var l=t.queue,u=l.dispatch;return a!==t.memoizedState&&(ce.flags|=2048,An(9,{destroy:void 0},Op.bind(null,l,a),null)),[n,u,e]}function Op(e,t){e.action=t}function Wo(e){var t=qe(),a=Ne;if(a!==null)return Fo(t,a,e);qe(),t=t.memoizedState,a=qe();var n=a.queue.dispatch;return a.memoizedState=e,[t,n,!1]}function An(e,t,a,n){return e={tag:e,create:a,deps:n,inst:t,next:null},t=ce.updateQueue,t===null&&(t=Ti(),ce.updateQueue=t),a=t.lastEffect,a===null?t.lastEffect=e.next=e:(n=a.next,a.next=e,e.next=n,t.lastEffect=e),e}function Io(){return qe().memoizedState}function Ai(e,t,a,n){var l=lt();ce.flags|=e,l.memoizedState=An(1|t,{destroy:void 0},a,n===void 0?null:n)}function Ri(e,t,a,n){var l=qe();n=n===void 0?null:n;var u=l.memoizedState.inst;Ne!==null&&n!==null&&Cs(n,Ne.memoizedState.deps)?l.memoizedState=An(t,u,a,n):(ce.flags|=e,l.memoizedState=An(1|t,u,a,n))}function Po(e,t){Ai(8390656,8,e,t)}function Os(e,t){Ri(2048,8,e,t)}function Up(e){ce.flags|=4;var t=ce.updateQueue;if(t===null)t=Ti(),ce.updateQueue=t,t.events=[e];else{var a=t.events;a===null?t.events=[e]:a.push(e)}}function ef(e){var t=qe().memoizedState;return Up({ref:t,nextImpl:e}),function(){if((xe&2)!==0)throw Error(o(440));return t.impl.apply(void 0,arguments)}}function tf(e,t){return Ri(4,2,e,t)}function af(e,t){return Ri(4,4,e,t)}function nf(e,t){if(typeof t=="function"){e=e();var a=t(e);return function(){typeof a=="function"?a():t(null)}}if(t!=null)return e=e(),t.current=e,function(){t.current=null}}function lf(e,t,a){a=a!=null?a.concat([e]):null,Ri(4,4,nf.bind(null,t,e),a)}function Us(){}function uf(e,t){var a=qe();t=t===void 0?null:t;var n=a.memoizedState;return t!==null&&Cs(t,n[1])?n[0]:(a.memoizedState=[e,t],e)}function sf(e,t){var a=qe();t=t===void 0?null:t;var n=a.memoizedState;if(t!==null&&Cs(t,n[1]))return n[0];if(n=e(),Ia){fa(!0);try{e()}finally{fa(!1)}}return a.memoizedState=[n,t],n}function Ds(e,t,a){return a===void 0||(Pt&1073741824)!==0&&(me&261930)===0?e.memoizedState=t:(e.memoizedState=a,e=cd(),ce.lanes|=e,Na|=e,a)}function cf(e,t,a,n){return pt(a,t)?a:Tn.current!==null?(e=Ds(e,a,n),pt(e,t)||(Xe=!0),e):(Pt&42)===0||(Pt&1073741824)!==0&&(me&261930)===0?(Xe=!0,e.memoizedState=a):(e=cd(),ce.lanes|=e,Na|=e,t)}function rf(e,t,a,n,l){var u=V.p;V.p=u!==0&&8>u?u:8;var f=D.T,m={};D.T=m,Bs(e,!1,t,a);try{var x=l(),_=D.S;if(_!==null&&_(m,x),x!==null&&typeof x=="object"&&typeof x.then=="function"){var U=Ap(x,n);yl(e,t,U,jt(e))}else yl(e,t,n,jt(e))}catch(B){yl(e,t,{then:function(){},status:"rejected",reason:B},jt())}finally{V.p=u,f!==null&&m.types!==null&&(f.types=m.types),D.T=f}}function Dp(){}function ks(e,t,a,n){if(e.tag!==5)throw Error(o(476));var l=of(e).queue;rf(e,l,t,le,a===null?Dp:function(){return ff(e),a(n)})}function of(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:le,baseState:le,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:ea,lastRenderedState:le},next:null};var a={};return t.next={memoizedState:a,baseState:a,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:ea,lastRenderedState:a},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function ff(e){var t=of(e);t.next===null&&(t=e.alternate.memoizedState),yl(e,t.next.queue,{},jt())}function Hs(){return Pe(Ul)}function df(){return qe().memoizedState}function hf(){return qe().memoizedState}function kp(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var a=jt();e=ba(a);var n=xa(t,e,a);n!==null&&(ft(n,t,a),dl(n,t,a)),t={cache:ds()},e.payload=t;return}t=t.return}}function Hp(e,t,a){var n=jt();a={lane:n,revertLane:0,gesture:null,action:a,hasEagerState:!1,eagerState:null,next:null},zi(e)?pf(t,a):(a=ts(e,t,a,n),a!==null&&(ft(a,e,n),vf(a,t,n)))}function mf(e,t,a){var n=jt();yl(e,t,a,n)}function yl(e,t,a,n){var l={lane:n,revertLane:0,gesture:null,action:a,hasEagerState:!1,eagerState:null,next:null};if(zi(e))pf(t,l);else{var u=e.alternate;if(e.lanes===0&&(u===null||u.lanes===0)&&(u=t.lastRenderedReducer,u!==null))try{var f=t.lastRenderedState,m=u(f,a);if(l.hasEagerState=!0,l.eagerState=m,pt(m,f))return fi(e,t,l,0),Ae===null&&oi(),!1}catch{}finally{}if(a=ts(e,t,l,n),a!==null)return ft(a,e,n),vf(a,t,n),!0}return!1}function Bs(e,t,a,n){if(n={lane:2,revertLane:vc(),gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},zi(e)){if(t)throw Error(o(479))}else t=ts(e,a,n,2),t!==null&&ft(t,e,2)}function zi(e){var t=e.alternate;return e===ce||t!==null&&t===ce}function pf(e,t){wn=Ei=!0;var a=e.pending;a===null?t.next=t:(t.next=a.next,a.next=t),e.pending=t}function vf(e,t,a){if((a&4194048)!==0){var n=t.lanes;n&=e.pendingLanes,a|=n,t.lanes=a,br(e,a)}}var gl={readContext:Pe,use:wi,useCallback:ke,useContext:ke,useEffect:ke,useImperativeHandle:ke,useLayoutEffect:ke,useInsertionEffect:ke,useMemo:ke,useReducer:ke,useRef:ke,useState:ke,useDebugValue:ke,useDeferredValue:ke,useTransition:ke,useSyncExternalStore:ke,useId:ke,useHostTransitionStatus:ke,useFormState:ke,useActionState:ke,useOptimistic:ke,useMemoCache:ke,useCacheRefresh:ke};gl.useEffectEvent=ke;var yf={readContext:Pe,use:wi,useCallback:function(e,t){return lt().memoizedState=[e,t===void 0?null:t],e},useContext:Pe,useEffect:Po,useImperativeHandle:function(e,t,a){a=a!=null?a.concat([e]):null,Ai(4194308,4,nf.bind(null,t,e),a)},useLayoutEffect:function(e,t){return Ai(4194308,4,e,t)},useInsertionEffect:function(e,t){Ai(4,2,e,t)},useMemo:function(e,t){var a=lt();t=t===void 0?null:t;var n=e();if(Ia){fa(!0);try{e()}finally{fa(!1)}}return a.memoizedState=[n,t],n},useReducer:function(e,t,a){var n=lt();if(a!==void 0){var l=a(t);if(Ia){fa(!0);try{a(t)}finally{fa(!1)}}}else l=t;return n.memoizedState=n.baseState=l,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:l},n.queue=e,e=e.dispatch=Hp.bind(null,ce,e),[n.memoizedState,e]},useRef:function(e){var t=lt();return e={current:e},t.memoizedState=e},useState:function(e){e=zs(e);var t=e.queue,a=mf.bind(null,ce,t);return t.dispatch=a,[e.memoizedState,a]},useDebugValue:Us,useDeferredValue:function(e,t){var a=lt();return Ds(a,e,t)},useTransition:function(){var e=zs(!1);return e=rf.bind(null,ce,e.queue,!0,!1),lt().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,a){var n=ce,l=lt();if(ye){if(a===void 0)throw Error(o(407));a=a()}else{if(a=t(),Ae===null)throw Error(o(349));(me&127)!==0||Ho(n,t,a)}l.memoizedState=a;var u={value:a,getSnapshot:t};return l.queue=u,Po(Lo.bind(null,n,u,e),[e]),n.flags|=2048,An(9,{destroy:void 0},Bo.bind(null,n,u,a,t),null),a},useId:function(){var e=lt(),t=Ae.identifierPrefix;if(ye){var a=Gt,n=Yt;a=(n&~(1<<32-mt(n)-1)).toString(32)+a,t="_"+t+"R_"+a,a=Ni++,0<a&&(t+="H"+a.toString(32)),t+="_"}else a=Rp++,t="_"+t+"r_"+a.toString(32)+"_";return e.memoizedState=t},useHostTransitionStatus:Hs,useFormState:Ko,useActionState:Ko,useOptimistic:function(e){var t=lt();t.memoizedState=t.baseState=e;var a={pending:null,lanes:0,dispatch:null,lastRenderedReducer:null,lastRenderedState:null};return t.queue=a,t=Bs.bind(null,ce,!0,a),a.dispatch=t,[e,t]},useMemoCache:_s,useCacheRefresh:function(){return lt().memoizedState=kp.bind(null,ce)},useEffectEvent:function(e){var t=lt(),a={impl:e};return t.memoizedState=a,function(){if((xe&2)!==0)throw Error(o(440));return a.impl.apply(void 0,arguments)}}},Ls={readContext:Pe,use:wi,useCallback:uf,useContext:Pe,useEffect:Os,useImperativeHandle:lf,useInsertionEffect:tf,useLayoutEffect:af,useMemo:sf,useReducer:_i,useRef:Io,useState:function(){return _i(ea)},useDebugValue:Us,useDeferredValue:function(e,t){var a=qe();return cf(a,Ne.memoizedState,e,t)},useTransition:function(){var e=_i(ea)[0],t=qe().memoizedState;return[typeof e=="boolean"?e:vl(e),t]},useSyncExternalStore:ko,useId:df,useHostTransitionStatus:Hs,useFormState:$o,useActionState:$o,useOptimistic:function(e,t){var a=qe();return Go(a,Ne,e,t)},useMemoCache:_s,useCacheRefresh:hf};Ls.useEffectEvent=ef;var gf={readContext:Pe,use:wi,useCallback:uf,useContext:Pe,useEffect:Os,useImperativeHandle:lf,useInsertionEffect:tf,useLayoutEffect:af,useMemo:sf,useReducer:Rs,useRef:Io,useState:function(){return Rs(ea)},useDebugValue:Us,useDeferredValue:function(e,t){var a=qe();return Ne===null?Ds(a,e,t):cf(a,Ne.memoizedState,e,t)},useTransition:function(){var e=Rs(ea)[0],t=qe().memoizedState;return[typeof e=="boolean"?e:vl(e),t]},useSyncExternalStore:ko,useId:df,useHostTransitionStatus:Hs,useFormState:Wo,useActionState:Wo,useOptimistic:function(e,t){var a=qe();return Ne!==null?Go(a,Ne,e,t):(a.baseState=e,[e,a.queue.dispatch])},useMemoCache:_s,useCacheRefresh:hf};gf.useEffectEvent=ef;function qs(e,t,a,n){t=e.memoizedState,a=a(n,t),a=a==null?t:b({},t,a),e.memoizedState=a,e.lanes===0&&(e.updateQueue.baseState=a)}var Ys={enqueueSetState:function(e,t,a){e=e._reactInternals;var n=jt(),l=ba(n);l.payload=t,a!=null&&(l.callback=a),t=xa(e,l,n),t!==null&&(ft(t,e,n),dl(t,e,n))},enqueueReplaceState:function(e,t,a){e=e._reactInternals;var n=jt(),l=ba(n);l.tag=1,l.payload=t,a!=null&&(l.callback=a),t=xa(e,l,n),t!==null&&(ft(t,e,n),dl(t,e,n))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var a=jt(),n=ba(a);n.tag=2,t!=null&&(n.callback=t),t=xa(e,n,a),t!==null&&(ft(t,e,a),dl(t,e,a))}};function bf(e,t,a,n,l,u,f){return e=e.stateNode,typeof e.shouldComponentUpdate=="function"?e.shouldComponentUpdate(n,u,f):t.prototype&&t.prototype.isPureReactComponent?!ll(a,n)||!ll(l,u):!0}function xf(e,t,a,n){e=t.state,typeof t.componentWillReceiveProps=="function"&&t.componentWillReceiveProps(a,n),typeof t.UNSAFE_componentWillReceiveProps=="function"&&t.UNSAFE_componentWillReceiveProps(a,n),t.state!==e&&Ys.enqueueReplaceState(t,t.state,null)}function Pa(e,t){var a=t;if("ref"in t){a={};for(var n in t)n!=="ref"&&(a[n]=t[n])}if(e=e.defaultProps){a===t&&(a=b({},a));for(var l in e)a[l]===void 0&&(a[l]=e[l])}return a}function jf(e){ri(e)}function Sf(e){console.error(e)}function Cf(e){ri(e)}function Mi(e,t){try{var a=e.onUncaughtError;a(t.value,{componentStack:t.stack})}catch(n){setTimeout(function(){throw n})}}function Ef(e,t,a){try{var n=e.onCaughtError;n(a.value,{componentStack:a.stack,errorBoundary:t.tag===1?t.stateNode:null})}catch(l){setTimeout(function(){throw l})}}function Gs(e,t,a){return a=ba(a),a.tag=3,a.payload={element:null},a.callback=function(){Mi(e,t)},a}function Nf(e){return e=ba(e),e.tag=3,e}function Tf(e,t,a,n){var l=a.type.getDerivedStateFromError;if(typeof l=="function"){var u=n.value;e.payload=function(){return l(u)},e.callback=function(){Ef(t,a,n)}}var f=a.stateNode;f!==null&&typeof f.componentDidCatch=="function"&&(e.callback=function(){Ef(t,a,n),typeof l!="function"&&(Ta===null?Ta=new Set([this]):Ta.add(this));var m=n.stack;this.componentDidCatch(n.value,{componentStack:m!==null?m:""})})}function Bp(e,t,a,n,l){if(a.flags|=32768,n!==null&&typeof n=="object"&&typeof n.then=="function"){if(t=a.alternate,t!==null&&jn(t,a,l,!0),a=yt.current,a!==null){switch(a.tag){case 31:case 13:return Rt===null?Xi():a.alternate===null&&He===0&&(He=3),a.flags&=-257,a.flags|=65536,a.lanes=l,n===bi?a.flags|=16384:(t=a.updateQueue,t===null?a.updateQueue=new Set([n]):t.add(n),hc(e,n,l)),!1;case 22:return a.flags|=65536,n===bi?a.flags|=16384:(t=a.updateQueue,t===null?(t={transitions:null,markerInstances:null,retryQueue:new Set([n])},a.updateQueue=t):(a=t.retryQueue,a===null?t.retryQueue=new Set([n]):a.add(n)),hc(e,n,l)),!1}throw Error(o(435,a.tag))}return hc(e,n,l),Xi(),!1}if(ye)return t=yt.current,t!==null?((t.flags&65536)===0&&(t.flags|=256),t.flags|=65536,t.lanes=l,n!==ss&&(e=Error(o(422),{cause:n}),sl(Tt(e,a)))):(n!==ss&&(t=Error(o(423),{cause:n}),sl(Tt(t,a))),e=e.current.alternate,e.flags|=65536,l&=-l,e.lanes|=l,n=Tt(n,a),l=Gs(e.stateNode,n,l),gs(e,l),He!==4&&(He=2)),!1;var u=Error(o(520),{cause:n});if(u=Tt(u,a),Tl===null?Tl=[u]:Tl.push(u),He!==4&&(He=2),t===null)return!0;n=Tt(n,a),a=t;do{switch(a.tag){case 3:return a.flags|=65536,e=l&-l,a.lanes|=e,e=Gs(a.stateNode,n,e),gs(a,e),!1;case 1:if(t=a.type,u=a.stateNode,(a.flags&128)===0&&(typeof t.getDerivedStateFromError=="function"||u!==null&&typeof u.componentDidCatch=="function"&&(Ta===null||!Ta.has(u))))return a.flags|=65536,l&=-l,a.lanes|=l,l=Nf(l),Tf(l,e,a,n),gs(a,l),!1}a=a.return}while(a!==null);return!1}var Zs=Error(o(461)),Xe=!1;function et(e,t,a,n){t.child=e===null?Ao(t,null,a,n):Wa(t,e.child,a,n)}function wf(e,t,a,n,l){a=a.render;var u=t.ref;if("ref"in n){var f={};for(var m in n)m!=="ref"&&(f[m]=n[m])}else f=n;return Ja(t),n=Es(e,t,a,f,u,l),m=Ns(),e!==null&&!Xe?(Ts(e,t,l),ta(e,t,l)):(ye&&m&&is(t),t.flags|=1,et(e,t,n,l),t.child)}function _f(e,t,a,n,l){if(e===null){var u=a.type;return typeof u=="function"&&!as(u)&&u.defaultProps===void 0&&a.compare===null?(t.tag=15,t.type=u,Af(e,t,u,n,l)):(e=hi(a.type,null,n,t,t.mode,l),e.ref=t.ref,e.return=t,t.child=e)}if(u=e.child,!Ws(e,l)){var f=u.memoizedProps;if(a=a.compare,a=a!==null?a:ll,a(f,n)&&e.ref===t.ref)return ta(e,t,l)}return t.flags|=1,e=$t(u,n),e.ref=t.ref,e.return=t,t.child=e}function Af(e,t,a,n,l){if(e!==null){var u=e.memoizedProps;if(ll(u,n)&&e.ref===t.ref)if(Xe=!1,t.pendingProps=n=u,Ws(e,l))(e.flags&131072)!==0&&(Xe=!0);else return t.lanes=e.lanes,ta(e,t,l)}return Xs(e,t,a,n,l)}function Rf(e,t,a,n){var l=n.children,u=e!==null?e.memoizedState:null;if(e===null&&t.stateNode===null&&(t.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),n.mode==="hidden"){if((t.flags&128)!==0){if(u=u!==null?u.baseLanes|a:a,e!==null){for(n=t.child=e.child,l=0;n!==null;)l=l|n.lanes|n.childLanes,n=n.sibling;n=l&~u}else n=0,t.child=null;return zf(e,t,u,a,n)}if((a&536870912)!==0)t.memoizedState={baseLanes:0,cachePool:null},e!==null&&yi(t,u!==null?u.cachePool:null),u!==null?Mo(t,u):xs(),Oo(t);else return n=t.lanes=536870912,zf(e,t,u!==null?u.baseLanes|a:a,a,n)}else u!==null?(yi(t,u.cachePool),Mo(t,u),Sa(),t.memoizedState=null):(e!==null&&yi(t,null),xs(),Sa());return et(e,t,l,a),t.child}function bl(e,t){return e!==null&&e.tag===22||t.stateNode!==null||(t.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),t.sibling}function zf(e,t,a,n,l){var u=ms();return u=u===null?null:{parent:Ge._currentValue,pool:u},t.memoizedState={baseLanes:a,cachePool:u},e!==null&&yi(t,null),xs(),Oo(t),e!==null&&jn(e,t,n,!0),t.childLanes=l,null}function Oi(e,t){return t=Di({mode:t.mode,children:t.children},e.mode),t.ref=e.ref,e.child=t,t.return=e,t}function Mf(e,t,a){return Wa(t,e.child,null,a),e=Oi(t,t.pendingProps),e.flags|=2,gt(t),t.memoizedState=null,e}function Lp(e,t,a){var n=t.pendingProps,l=(t.flags&128)!==0;if(t.flags&=-129,e===null){if(ye){if(n.mode==="hidden")return e=Oi(t,n),t.lanes=536870912,bl(null,e);if(Ss(t),(e=ze)?(e=Xd(e,At),e=e!==null&&e.data==="&"?e:null,e!==null&&(t.memoizedState={dehydrated:e,treeContext:ma!==null?{id:Yt,overflow:Gt}:null,retryLane:536870912,hydrationErrors:null},a=mo(e),a.return=t,t.child=a,Ie=t,ze=null)):e=null,e===null)throw va(t);return t.lanes=536870912,null}return Oi(t,n)}var u=e.memoizedState;if(u!==null){var f=u.dehydrated;if(Ss(t),l)if(t.flags&256)t.flags&=-257,t=Mf(e,t,a);else if(t.memoizedState!==null)t.child=e.child,t.flags|=128,t=null;else throw Error(o(558));else if(Xe||jn(e,t,a,!1),l=(a&e.childLanes)!==0,Xe||l){if(n=Ae,n!==null&&(f=xr(n,a),f!==0&&f!==u.retryLane))throw u.retryLane=f,Za(e,f),ft(n,e,f),Zs;Xi(),t=Mf(e,t,a)}else e=u.treeContext,ze=zt(f.nextSibling),Ie=t,ye=!0,pa=null,At=!1,e!==null&&yo(t,e),t=Oi(t,n),t.flags|=4096;return t}return e=$t(e.child,{mode:n.mode,children:n.children}),e.ref=t.ref,t.child=e,e.return=t,e}function Ui(e,t){var a=t.ref;if(a===null)e!==null&&e.ref!==null&&(t.flags|=4194816);else{if(typeof a!="function"&&typeof a!="object")throw Error(o(284));(e===null||e.ref!==a)&&(t.flags|=4194816)}}function Xs(e,t,a,n,l){return Ja(t),a=Es(e,t,a,n,void 0,l),n=Ns(),e!==null&&!Xe?(Ts(e,t,l),ta(e,t,l)):(ye&&n&&is(t),t.flags|=1,et(e,t,a,l),t.child)}function Of(e,t,a,n,l,u){return Ja(t),t.updateQueue=null,a=Do(t,n,a,l),Uo(e),n=Ns(),e!==null&&!Xe?(Ts(e,t,u),ta(e,t,u)):(ye&&n&&is(t),t.flags|=1,et(e,t,a,u),t.child)}function Uf(e,t,a,n,l){if(Ja(t),t.stateNode===null){var u=yn,f=a.contextType;typeof f=="object"&&f!==null&&(u=Pe(f)),u=new a(n,u),t.memoizedState=u.state!==null&&u.state!==void 0?u.state:null,u.updater=Ys,t.stateNode=u,u._reactInternals=t,u=t.stateNode,u.props=n,u.state=t.memoizedState,u.refs={},vs(t),f=a.contextType,u.context=typeof f=="object"&&f!==null?Pe(f):yn,u.state=t.memoizedState,f=a.getDerivedStateFromProps,typeof f=="function"&&(qs(t,a,f,n),u.state=t.memoizedState),typeof a.getDerivedStateFromProps=="function"||typeof u.getSnapshotBeforeUpdate=="function"||typeof u.UNSAFE_componentWillMount!="function"&&typeof u.componentWillMount!="function"||(f=u.state,typeof u.componentWillMount=="function"&&u.componentWillMount(),typeof u.UNSAFE_componentWillMount=="function"&&u.UNSAFE_componentWillMount(),f!==u.state&&Ys.enqueueReplaceState(u,u.state,null),ml(t,n,u,l),hl(),u.state=t.memoizedState),typeof u.componentDidMount=="function"&&(t.flags|=4194308),n=!0}else if(e===null){u=t.stateNode;var m=t.memoizedProps,x=Pa(a,m);u.props=x;var _=u.context,U=a.contextType;f=yn,typeof U=="object"&&U!==null&&(f=Pe(U));var B=a.getDerivedStateFromProps;U=typeof B=="function"||typeof u.getSnapshotBeforeUpdate=="function",m=t.pendingProps!==m,U||typeof u.UNSAFE_componentWillReceiveProps!="function"&&typeof u.componentWillReceiveProps!="function"||(m||_!==f)&&xf(t,u,n,f),ga=!1;var A=t.memoizedState;u.state=A,ml(t,n,u,l),hl(),_=t.memoizedState,m||A!==_||ga?(typeof B=="function"&&(qs(t,a,B,n),_=t.memoizedState),(x=ga||bf(t,a,x,n,A,_,f))?(U||typeof u.UNSAFE_componentWillMount!="function"&&typeof u.componentWillMount!="function"||(typeof u.componentWillMount=="function"&&u.componentWillMount(),typeof u.UNSAFE_componentWillMount=="function"&&u.UNSAFE_componentWillMount()),typeof u.componentDidMount=="function"&&(t.flags|=4194308)):(typeof u.componentDidMount=="function"&&(t.flags|=4194308),t.memoizedProps=n,t.memoizedState=_),u.props=n,u.state=_,u.context=f,n=x):(typeof u.componentDidMount=="function"&&(t.flags|=4194308),n=!1)}else{u=t.stateNode,ys(e,t),f=t.memoizedProps,U=Pa(a,f),u.props=U,B=t.pendingProps,A=u.context,_=a.contextType,x=yn,typeof _=="object"&&_!==null&&(x=Pe(_)),m=a.getDerivedStateFromProps,(_=typeof m=="function"||typeof u.getSnapshotBeforeUpdate=="function")||typeof u.UNSAFE_componentWillReceiveProps!="function"&&typeof u.componentWillReceiveProps!="function"||(f!==B||A!==x)&&xf(t,u,n,x),ga=!1,A=t.memoizedState,u.state=A,ml(t,n,u,l),hl();var M=t.memoizedState;f!==B||A!==M||ga||e!==null&&e.dependencies!==null&&pi(e.dependencies)?(typeof m=="function"&&(qs(t,a,m,n),M=t.memoizedState),(U=ga||bf(t,a,U,n,A,M,x)||e!==null&&e.dependencies!==null&&pi(e.dependencies))?(_||typeof u.UNSAFE_componentWillUpdate!="function"&&typeof u.componentWillUpdate!="function"||(typeof u.componentWillUpdate=="function"&&u.componentWillUpdate(n,M,x),typeof u.UNSAFE_componentWillUpdate=="function"&&u.UNSAFE_componentWillUpdate(n,M,x)),typeof u.componentDidUpdate=="function"&&(t.flags|=4),typeof u.getSnapshotBeforeUpdate=="function"&&(t.flags|=1024)):(typeof u.componentDidUpdate!="function"||f===e.memoizedProps&&A===e.memoizedState||(t.flags|=4),typeof u.getSnapshotBeforeUpdate!="function"||f===e.memoizedProps&&A===e.memoizedState||(t.flags|=1024),t.memoizedProps=n,t.memoizedState=M),u.props=n,u.state=M,u.context=x,n=U):(typeof u.componentDidUpdate!="function"||f===e.memoizedProps&&A===e.memoizedState||(t.flags|=4),typeof u.getSnapshotBeforeUpdate!="function"||f===e.memoizedProps&&A===e.memoizedState||(t.flags|=1024),n=!1)}return u=n,Ui(e,t),n=(t.flags&128)!==0,u||n?(u=t.stateNode,a=n&&typeof a.getDerivedStateFromError!="function"?null:u.render(),t.flags|=1,e!==null&&n?(t.child=Wa(t,e.child,null,l),t.child=Wa(t,null,a,l)):et(e,t,a,l),t.memoizedState=u.state,e=t.child):e=ta(e,t,l),e}function Df(e,t,a,n){return Va(),t.flags|=256,et(e,t,a,n),t.child}var Vs={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null};function Qs(e){return{baseLanes:e,cachePool:Co()}}function Js(e,t,a){return e=e!==null?e.childLanes&~a:0,t&&(e|=xt),e}function kf(e,t,a){var n=t.pendingProps,l=!1,u=(t.flags&128)!==0,f;if((f=u)||(f=e!==null&&e.memoizedState===null?!1:(Le.current&2)!==0),f&&(l=!0,t.flags&=-129),f=(t.flags&32)!==0,t.flags&=-33,e===null){if(ye){if(l?ja(t):Sa(),(e=ze)?(e=Xd(e,At),e=e!==null&&e.data!=="&"?e:null,e!==null&&(t.memoizedState={dehydrated:e,treeContext:ma!==null?{id:Yt,overflow:Gt}:null,retryLane:536870912,hydrationErrors:null},a=mo(e),a.return=t,t.child=a,Ie=t,ze=null)):e=null,e===null)throw va(t);return Ac(e)?t.lanes=32:t.lanes=536870912,null}var m=n.children;return n=n.fallback,l?(Sa(),l=t.mode,m=Di({mode:"hidden",children:m},l),n=Xa(n,l,a,null),m.return=t,n.return=t,m.sibling=n,t.child=m,n=t.child,n.memoizedState=Qs(a),n.childLanes=Js(e,f,a),t.memoizedState=Vs,bl(null,n)):(ja(t),Ks(t,m))}var x=e.memoizedState;if(x!==null&&(m=x.dehydrated,m!==null)){if(u)t.flags&256?(ja(t),t.flags&=-257,t=$s(e,t,a)):t.memoizedState!==null?(Sa(),t.child=e.child,t.flags|=128,t=null):(Sa(),m=n.fallback,l=t.mode,n=Di({mode:"visible",children:n.children},l),m=Xa(m,l,a,null),m.flags|=2,n.return=t,m.return=t,n.sibling=m,t.child=n,Wa(t,e.child,null,a),n=t.child,n.memoizedState=Qs(a),n.childLanes=Js(e,f,a),t.memoizedState=Vs,t=bl(null,n));else if(ja(t),Ac(m)){if(f=m.nextSibling&&m.nextSibling.dataset,f)var _=f.dgst;f=_,n=Error(o(419)),n.stack="",n.digest=f,sl({value:n,source:null,stack:null}),t=$s(e,t,a)}else if(Xe||jn(e,t,a,!1),f=(a&e.childLanes)!==0,Xe||f){if(f=Ae,f!==null&&(n=xr(f,a),n!==0&&n!==x.retryLane))throw x.retryLane=n,Za(e,n),ft(f,e,n),Zs;_c(m)||Xi(),t=$s(e,t,a)}else _c(m)?(t.flags|=192,t.child=e.child,t=null):(e=x.treeContext,ze=zt(m.nextSibling),Ie=t,ye=!0,pa=null,At=!1,e!==null&&yo(t,e),t=Ks(t,n.children),t.flags|=4096);return t}return l?(Sa(),m=n.fallback,l=t.mode,x=e.child,_=x.sibling,n=$t(x,{mode:"hidden",children:n.children}),n.subtreeFlags=x.subtreeFlags&65011712,_!==null?m=$t(_,m):(m=Xa(m,l,a,null),m.flags|=2),m.return=t,n.return=t,n.sibling=m,t.child=n,bl(null,n),n=t.child,m=e.child.memoizedState,m===null?m=Qs(a):(l=m.cachePool,l!==null?(x=Ge._currentValue,l=l.parent!==x?{parent:x,pool:x}:l):l=Co(),m={baseLanes:m.baseLanes|a,cachePool:l}),n.memoizedState=m,n.childLanes=Js(e,f,a),t.memoizedState=Vs,bl(e.child,n)):(ja(t),a=e.child,e=a.sibling,a=$t(a,{mode:"visible",children:n.children}),a.return=t,a.sibling=null,e!==null&&(f=t.deletions,f===null?(t.deletions=[e],t.flags|=16):f.push(e)),t.child=a,t.memoizedState=null,a)}function Ks(e,t){return t=Di({mode:"visible",children:t},e.mode),t.return=e,e.child=t}function Di(e,t){return e=vt(22,e,null,t),e.lanes=0,e}function $s(e,t,a){return Wa(t,e.child,null,a),e=Ks(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function Hf(e,t,a){e.lanes|=t;var n=e.alternate;n!==null&&(n.lanes|=t),os(e.return,t,a)}function Fs(e,t,a,n,l,u){var f=e.memoizedState;f===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:n,tail:a,tailMode:l,treeForkCount:u}:(f.isBackwards=t,f.rendering=null,f.renderingStartTime=0,f.last=n,f.tail=a,f.tailMode=l,f.treeForkCount=u)}function Bf(e,t,a){var n=t.pendingProps,l=n.revealOrder,u=n.tail;n=n.children;var f=Le.current,m=(f&2)!==0;if(m?(f=f&1|2,t.flags|=128):f&=1,J(Le,f),et(e,t,n,a),n=ye?ul:0,!m&&e!==null&&(e.flags&128)!==0)e:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&Hf(e,a,t);else if(e.tag===19)Hf(e,a,t);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;e.sibling===null;){if(e.return===null||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}switch(l){case"forwards":for(a=t.child,l=null;a!==null;)e=a.alternate,e!==null&&Ci(e)===null&&(l=a),a=a.sibling;a=l,a===null?(l=t.child,t.child=null):(l=a.sibling,a.sibling=null),Fs(t,!1,l,a,u,n);break;case"backwards":case"unstable_legacy-backwards":for(a=null,l=t.child,t.child=null;l!==null;){if(e=l.alternate,e!==null&&Ci(e)===null){t.child=l;break}e=l.sibling,l.sibling=a,a=l,l=e}Fs(t,!0,a,null,u,n);break;case"together":Fs(t,!1,null,null,void 0,n);break;default:t.memoizedState=null}return t.child}function ta(e,t,a){if(e!==null&&(t.dependencies=e.dependencies),Na|=t.lanes,(a&t.childLanes)===0)if(e!==null){if(jn(e,t,a,!1),(a&t.childLanes)===0)return null}else return null;if(e!==null&&t.child!==e.child)throw Error(o(153));if(t.child!==null){for(e=t.child,a=$t(e,e.pendingProps),t.child=a,a.return=t;e.sibling!==null;)e=e.sibling,a=a.sibling=$t(e,e.pendingProps),a.return=t;a.sibling=null}return t.child}function Ws(e,t){return(e.lanes&t)!==0?!0:(e=e.dependencies,!!(e!==null&&pi(e)))}function qp(e,t,a){switch(t.tag){case 3:nt(t,t.stateNode.containerInfo),ya(t,Ge,e.memoizedState.cache),Va();break;case 27:case 5:Vn(t);break;case 4:nt(t,t.stateNode.containerInfo);break;case 10:ya(t,t.type,t.memoizedProps.value);break;case 31:if(t.memoizedState!==null)return t.flags|=128,Ss(t),null;break;case 13:var n=t.memoizedState;if(n!==null)return n.dehydrated!==null?(ja(t),t.flags|=128,null):(a&t.child.childLanes)!==0?kf(e,t,a):(ja(t),e=ta(e,t,a),e!==null?e.sibling:null);ja(t);break;case 19:var l=(e.flags&128)!==0;if(n=(a&t.childLanes)!==0,n||(jn(e,t,a,!1),n=(a&t.childLanes)!==0),l){if(n)return Bf(e,t,a);t.flags|=128}if(l=t.memoizedState,l!==null&&(l.rendering=null,l.tail=null,l.lastEffect=null),J(Le,Le.current),n)break;return null;case 22:return t.lanes=0,Rf(e,t,a,t.pendingProps);case 24:ya(t,Ge,e.memoizedState.cache)}return ta(e,t,a)}function Lf(e,t,a){if(e!==null)if(e.memoizedProps!==t.pendingProps)Xe=!0;else{if(!Ws(e,a)&&(t.flags&128)===0)return Xe=!1,qp(e,t,a);Xe=(e.flags&131072)!==0}else Xe=!1,ye&&(t.flags&1048576)!==0&&vo(t,ul,t.index);switch(t.lanes=0,t.tag){case 16:e:{var n=t.pendingProps;if(e=$a(t.elementType),t.type=e,typeof e=="function")as(e)?(n=Pa(e,n),t.tag=1,t=Uf(null,t,e,n,a)):(t.tag=0,t=Xs(null,t,e,n,a));else{if(e!=null){var l=e.$$typeof;if(l===ue){t.tag=11,t=wf(null,t,e,n,a);break e}else if(l===S){t.tag=14,t=_f(null,t,e,n,a);break e}}throw t=St(e)||e,Error(o(306,t,""))}}return t;case 0:return Xs(e,t,t.type,t.pendingProps,a);case 1:return n=t.type,l=Pa(n,t.pendingProps),Uf(e,t,n,l,a);case 3:e:{if(nt(t,t.stateNode.containerInfo),e===null)throw Error(o(387));n=t.pendingProps;var u=t.memoizedState;l=u.element,ys(e,t),ml(t,n,null,a);var f=t.memoizedState;if(n=f.cache,ya(t,Ge,n),n!==u.cache&&fs(t,[Ge],a,!0),hl(),n=f.element,u.isDehydrated)if(u={element:n,isDehydrated:!1,cache:f.cache},t.updateQueue.baseState=u,t.memoizedState=u,t.flags&256){t=Df(e,t,n,a);break e}else if(n!==l){l=Tt(Error(o(424)),t),sl(l),t=Df(e,t,n,a);break e}else{switch(e=t.stateNode.containerInfo,e.nodeType){case 9:e=e.body;break;default:e=e.nodeName==="HTML"?e.ownerDocument.body:e}for(ze=zt(e.firstChild),Ie=t,ye=!0,pa=null,At=!0,a=Ao(t,null,n,a),t.child=a;a;)a.flags=a.flags&-3|4096,a=a.sibling}else{if(Va(),n===l){t=ta(e,t,a);break e}et(e,t,n,a)}t=t.child}return t;case 26:return Ui(e,t),e===null?(a=Fd(t.type,null,t.pendingProps,null))?t.memoizedState=a:ye||(a=t.type,e=t.pendingProps,n=Wi(oe.current).createElement(a),n[We]=t,n[it]=e,tt(n,a,e),$e(n),t.stateNode=n):t.memoizedState=Fd(t.type,e.memoizedProps,t.pendingProps,e.memoizedState),null;case 27:return Vn(t),e===null&&ye&&(n=t.stateNode=Jd(t.type,t.pendingProps,oe.current),Ie=t,At=!0,l=ze,Ra(t.type)?(Rc=l,ze=zt(n.firstChild)):ze=l),et(e,t,t.pendingProps.children,a),Ui(e,t),e===null&&(t.flags|=4194304),t.child;case 5:return e===null&&ye&&((l=n=ze)&&(n=v1(n,t.type,t.pendingProps,At),n!==null?(t.stateNode=n,Ie=t,ze=zt(n.firstChild),At=!1,l=!0):l=!1),l||va(t)),Vn(t),l=t.type,u=t.pendingProps,f=e!==null?e.memoizedProps:null,n=u.children,Nc(l,u)?n=null:f!==null&&Nc(l,f)&&(t.flags|=32),t.memoizedState!==null&&(l=Es(e,t,zp,null,null,a),Ul._currentValue=l),Ui(e,t),et(e,t,n,a),t.child;case 6:return e===null&&ye&&((e=a=ze)&&(a=y1(a,t.pendingProps,At),a!==null?(t.stateNode=a,Ie=t,ze=null,e=!0):e=!1),e||va(t)),null;case 13:return kf(e,t,a);case 4:return nt(t,t.stateNode.containerInfo),n=t.pendingProps,e===null?t.child=Wa(t,null,n,a):et(e,t,n,a),t.child;case 11:return wf(e,t,t.type,t.pendingProps,a);case 7:return et(e,t,t.pendingProps,a),t.child;case 8:return et(e,t,t.pendingProps.children,a),t.child;case 12:return et(e,t,t.pendingProps.children,a),t.child;case 10:return n=t.pendingProps,ya(t,t.type,n.value),et(e,t,n.children,a),t.child;case 9:return l=t.type._context,n=t.pendingProps.children,Ja(t),l=Pe(l),n=n(l),t.flags|=1,et(e,t,n,a),t.child;case 14:return _f(e,t,t.type,t.pendingProps,a);case 15:return Af(e,t,t.type,t.pendingProps,a);case 19:return Bf(e,t,a);case 31:return Lp(e,t,a);case 22:return Rf(e,t,a,t.pendingProps);case 24:return Ja(t),n=Pe(Ge),e===null?(l=ms(),l===null&&(l=Ae,u=ds(),l.pooledCache=u,u.refCount++,u!==null&&(l.pooledCacheLanes|=a),l=u),t.memoizedState={parent:n,cache:l},vs(t),ya(t,Ge,l)):((e.lanes&a)!==0&&(ys(e,t),ml(t,null,null,a),hl()),l=e.memoizedState,u=t.memoizedState,l.parent!==n?(l={parent:n,cache:n},t.memoizedState=l,t.lanes===0&&(t.memoizedState=t.updateQueue.baseState=l),ya(t,Ge,n)):(n=u.cache,ya(t,Ge,n),n!==l.cache&&fs(t,[Ge],a,!0))),et(e,t,t.pendingProps.children,a),t.child;case 29:throw t.pendingProps}throw Error(o(156,t.tag))}function aa(e){e.flags|=4}function Is(e,t,a,n,l){if((t=(e.mode&32)!==0)&&(t=!1),t){if(e.flags|=16777216,(l&335544128)===l)if(e.stateNode.complete)e.flags|=8192;else if(dd())e.flags|=8192;else throw Fa=bi,ps}else e.flags&=-16777217}function qf(e,t){if(t.type!=="stylesheet"||(t.state.loading&4)!==0)e.flags&=-16777217;else if(e.flags|=16777216,!th(t))if(dd())e.flags|=8192;else throw Fa=bi,ps}function ki(e,t){t!==null&&(e.flags|=4),e.flags&16384&&(t=e.tag!==22?yr():536870912,e.lanes|=t,On|=t)}function xl(e,t){if(!ye)switch(e.tailMode){case"hidden":t=e.tail;for(var a=null;t!==null;)t.alternate!==null&&(a=t),t=t.sibling;a===null?e.tail=null:a.sibling=null;break;case"collapsed":a=e.tail;for(var n=null;a!==null;)a.alternate!==null&&(n=a),a=a.sibling;n===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:n.sibling=null}}function Me(e){var t=e.alternate!==null&&e.alternate.child===e.child,a=0,n=0;if(t)for(var l=e.child;l!==null;)a|=l.lanes|l.childLanes,n|=l.subtreeFlags&65011712,n|=l.flags&65011712,l.return=e,l=l.sibling;else for(l=e.child;l!==null;)a|=l.lanes|l.childLanes,n|=l.subtreeFlags,n|=l.flags,l.return=e,l=l.sibling;return e.subtreeFlags|=n,e.childLanes=a,t}function Yp(e,t,a){var n=t.pendingProps;switch(us(t),t.tag){case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Me(t),null;case 1:return Me(t),null;case 3:return a=t.stateNode,n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),It(Ge),Be(),a.pendingContext&&(a.context=a.pendingContext,a.pendingContext=null),(e===null||e.child===null)&&(xn(t)?aa(t):e===null||e.memoizedState.isDehydrated&&(t.flags&256)===0||(t.flags|=1024,cs())),Me(t),null;case 26:var l=t.type,u=t.memoizedState;return e===null?(aa(t),u!==null?(Me(t),qf(t,u)):(Me(t),Is(t,l,null,n,a))):u?u!==e.memoizedState?(aa(t),Me(t),qf(t,u)):(Me(t),t.flags&=-16777217):(e=e.memoizedProps,e!==n&&aa(t),Me(t),Is(t,l,e,n,a)),null;case 27:if(Jl(t),a=oe.current,l=t.type,e!==null&&t.stateNode!=null)e.memoizedProps!==n&&aa(t);else{if(!n){if(t.stateNode===null)throw Error(o(166));return Me(t),null}e=F.current,xn(t)?go(t):(e=Jd(l,n,a),t.stateNode=e,aa(t))}return Me(t),null;case 5:if(Jl(t),l=t.type,e!==null&&t.stateNode!=null)e.memoizedProps!==n&&aa(t);else{if(!n){if(t.stateNode===null)throw Error(o(166));return Me(t),null}if(u=F.current,xn(t))go(t);else{var f=Wi(oe.current);switch(u){case 1:u=f.createElementNS("http://www.w3.org/2000/svg",l);break;case 2:u=f.createElementNS("http://www.w3.org/1998/Math/MathML",l);break;default:switch(l){case"svg":u=f.createElementNS("http://www.w3.org/2000/svg",l);break;case"math":u=f.createElementNS("http://www.w3.org/1998/Math/MathML",l);break;case"script":u=f.createElement("div"),u.innerHTML="<script><\/script>",u=u.removeChild(u.firstChild);break;case"select":u=typeof n.is=="string"?f.createElement("select",{is:n.is}):f.createElement("select"),n.multiple?u.multiple=!0:n.size&&(u.size=n.size);break;default:u=typeof n.is=="string"?f.createElement(l,{is:n.is}):f.createElement(l)}}u[We]=t,u[it]=n;e:for(f=t.child;f!==null;){if(f.tag===5||f.tag===6)u.appendChild(f.stateNode);else if(f.tag!==4&&f.tag!==27&&f.child!==null){f.child.return=f,f=f.child;continue}if(f===t)break e;for(;f.sibling===null;){if(f.return===null||f.return===t)break e;f=f.return}f.sibling.return=f.return,f=f.sibling}t.stateNode=u;e:switch(tt(u,l,n),l){case"button":case"input":case"select":case"textarea":n=!!n.autoFocus;break e;case"img":n=!0;break e;default:n=!1}n&&aa(t)}}return Me(t),Is(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,a),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==n&&aa(t);else{if(typeof n!="string"&&t.stateNode===null)throw Error(o(166));if(e=oe.current,xn(t)){if(e=t.stateNode,a=t.memoizedProps,n=null,l=Ie,l!==null)switch(l.tag){case 27:case 5:n=l.memoizedProps}e[We]=t,e=!!(e.nodeValue===a||n!==null&&n.suppressHydrationWarning===!0||kd(e.nodeValue,a)),e||va(t,!0)}else e=Wi(e).createTextNode(n),e[We]=t,t.stateNode=e}return Me(t),null;case 31:if(a=t.memoizedState,e===null||e.memoizedState!==null){if(n=xn(t),a!==null){if(e===null){if(!n)throw Error(o(318));if(e=t.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(o(557));e[We]=t}else Va(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Me(t),e=!1}else a=cs(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=a),e=!0;if(!e)return t.flags&256?(gt(t),t):(gt(t),null);if((t.flags&128)!==0)throw Error(o(558))}return Me(t),null;case 13:if(n=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(l=xn(t),n!==null&&n.dehydrated!==null){if(e===null){if(!l)throw Error(o(318));if(l=t.memoizedState,l=l!==null?l.dehydrated:null,!l)throw Error(o(317));l[We]=t}else Va(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Me(t),l=!1}else l=cs(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=l),l=!0;if(!l)return t.flags&256?(gt(t),t):(gt(t),null)}return gt(t),(t.flags&128)!==0?(t.lanes=a,t):(a=n!==null,e=e!==null&&e.memoizedState!==null,a&&(n=t.child,l=null,n.alternate!==null&&n.alternate.memoizedState!==null&&n.alternate.memoizedState.cachePool!==null&&(l=n.alternate.memoizedState.cachePool.pool),u=null,n.memoizedState!==null&&n.memoizedState.cachePool!==null&&(u=n.memoizedState.cachePool.pool),u!==l&&(n.flags|=2048)),a!==e&&a&&(t.child.flags|=8192),ki(t,t.updateQueue),Me(t),null);case 4:return Be(),e===null&&xc(t.stateNode.containerInfo),Me(t),null;case 10:return It(t.type),Me(t),null;case 19:if(L(Le),n=t.memoizedState,n===null)return Me(t),null;if(l=(t.flags&128)!==0,u=n.rendering,u===null)if(l)xl(n,!1);else{if(He!==0||e!==null&&(e.flags&128)!==0)for(e=t.child;e!==null;){if(u=Ci(e),u!==null){for(t.flags|=128,xl(n,!1),e=u.updateQueue,t.updateQueue=e,ki(t,e),t.subtreeFlags=0,e=a,a=t.child;a!==null;)ho(a,e),a=a.sibling;return J(Le,Le.current&1|2),ye&&Ft(t,n.treeForkCount),t.child}e=e.sibling}n.tail!==null&&dt()>Yi&&(t.flags|=128,l=!0,xl(n,!1),t.lanes=4194304)}else{if(!l)if(e=Ci(u),e!==null){if(t.flags|=128,l=!0,e=e.updateQueue,t.updateQueue=e,ki(t,e),xl(n,!0),n.tail===null&&n.tailMode==="hidden"&&!u.alternate&&!ye)return Me(t),null}else 2*dt()-n.renderingStartTime>Yi&&a!==536870912&&(t.flags|=128,l=!0,xl(n,!1),t.lanes=4194304);n.isBackwards?(u.sibling=t.child,t.child=u):(e=n.last,e!==null?e.sibling=u:t.child=u,n.last=u)}return n.tail!==null?(e=n.tail,n.rendering=e,n.tail=e.sibling,n.renderingStartTime=dt(),e.sibling=null,a=Le.current,J(Le,l?a&1|2:a&1),ye&&Ft(t,n.treeForkCount),e):(Me(t),null);case 22:case 23:return gt(t),js(),n=t.memoizedState!==null,e!==null?e.memoizedState!==null!==n&&(t.flags|=8192):n&&(t.flags|=8192),n?(a&536870912)!==0&&(t.flags&128)===0&&(Me(t),t.subtreeFlags&6&&(t.flags|=8192)):Me(t),a=t.updateQueue,a!==null&&ki(t,a.retryQueue),a=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(a=e.memoizedState.cachePool.pool),n=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(n=t.memoizedState.cachePool.pool),n!==a&&(t.flags|=2048),e!==null&&L(Ka),null;case 24:return a=null,e!==null&&(a=e.memoizedState.cache),t.memoizedState.cache!==a&&(t.flags|=2048),It(Ge),Me(t),null;case 25:return null;case 30:return null}throw Error(o(156,t.tag))}function Gp(e,t){switch(us(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return It(Ge),Be(),e=t.flags,(e&65536)!==0&&(e&128)===0?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return Jl(t),null;case 31:if(t.memoizedState!==null){if(gt(t),t.alternate===null)throw Error(o(340));Va()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(gt(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(o(340));Va()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return L(Le),null;case 4:return Be(),null;case 10:return It(t.type),null;case 22:case 23:return gt(t),js(),e!==null&&L(Ka),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return It(Ge),null;case 25:return null;default:return null}}function Yf(e,t){switch(us(t),t.tag){case 3:It(Ge),Be();break;case 26:case 27:case 5:Jl(t);break;case 4:Be();break;case 31:t.memoizedState!==null&&gt(t);break;case 13:gt(t);break;case 19:L(Le);break;case 10:It(t.type);break;case 22:case 23:gt(t),js(),e!==null&&L(Ka);break;case 24:It(Ge)}}function jl(e,t){try{var a=t.updateQueue,n=a!==null?a.lastEffect:null;if(n!==null){var l=n.next;a=l;do{if((a.tag&e)===e){n=void 0;var u=a.create,f=a.inst;n=u(),f.destroy=n}a=a.next}while(a!==l)}}catch(m){Ce(t,t.return,m)}}function Ca(e,t,a){try{var n=t.updateQueue,l=n!==null?n.lastEffect:null;if(l!==null){var u=l.next;n=u;do{if((n.tag&e)===e){var f=n.inst,m=f.destroy;if(m!==void 0){f.destroy=void 0,l=t;var x=a,_=m;try{_()}catch(U){Ce(l,x,U)}}}n=n.next}while(n!==u)}}catch(U){Ce(t,t.return,U)}}function Gf(e){var t=e.updateQueue;if(t!==null){var a=e.stateNode;try{zo(t,a)}catch(n){Ce(e,e.return,n)}}}function Zf(e,t,a){a.props=Pa(e.type,e.memoizedProps),a.state=e.memoizedState;try{a.componentWillUnmount()}catch(n){Ce(e,t,n)}}function Sl(e,t){try{var a=e.ref;if(a!==null){switch(e.tag){case 26:case 27:case 5:var n=e.stateNode;break;case 30:n=e.stateNode;break;default:n=e.stateNode}typeof a=="function"?e.refCleanup=a(n):a.current=n}}catch(l){Ce(e,t,l)}}function Zt(e,t){var a=e.ref,n=e.refCleanup;if(a!==null)if(typeof n=="function")try{n()}catch(l){Ce(e,t,l)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof a=="function")try{a(null)}catch(l){Ce(e,t,l)}else a.current=null}function Xf(e){var t=e.type,a=e.memoizedProps,n=e.stateNode;try{e:switch(t){case"button":case"input":case"select":case"textarea":a.autoFocus&&n.focus();break e;case"img":a.src?n.src=a.src:a.srcSet&&(n.srcset=a.srcSet)}}catch(l){Ce(e,e.return,l)}}function Ps(e,t,a){try{var n=e.stateNode;o1(n,e.type,a,t),n[it]=t}catch(l){Ce(e,e.return,l)}}function Vf(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&Ra(e.type)||e.tag===4}function ec(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||Vf(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&&Ra(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 tc(e,t,a){var n=e.tag;if(n===5||n===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=Jt));else if(n!==4&&(n===27&&Ra(e.type)&&(a=e.stateNode,t=null),e=e.child,e!==null))for(tc(e,t,a),e=e.sibling;e!==null;)tc(e,t,a),e=e.sibling}function Hi(e,t,a){var n=e.tag;if(n===5||n===6)e=e.stateNode,t?a.insertBefore(e,t):a.appendChild(e);else if(n!==4&&(n===27&&Ra(e.type)&&(a=e.stateNode),e=e.child,e!==null))for(Hi(e,t,a),e=e.sibling;e!==null;)Hi(e,t,a),e=e.sibling}function Qf(e){var t=e.stateNode,a=e.memoizedProps;try{for(var n=e.type,l=t.attributes;l.length;)t.removeAttributeNode(l[0]);tt(t,n,a),t[We]=e,t[it]=a}catch(u){Ce(e,e.return,u)}}var na=!1,Ve=!1,ac=!1,Jf=typeof WeakSet=="function"?WeakSet:Set,Fe=null;function Zp(e,t){if(e=e.containerInfo,Cc=lu,e=no(e),$u(e)){if("selectionStart"in e)var a={start:e.selectionStart,end:e.selectionEnd};else e:{a=(a=e.ownerDocument)&&a.defaultView||window;var n=a.getSelection&&a.getSelection();if(n&&n.rangeCount!==0){a=n.anchorNode;var l=n.anchorOffset,u=n.focusNode;n=n.focusOffset;try{a.nodeType,u.nodeType}catch{a=null;break e}var f=0,m=-1,x=-1,_=0,U=0,B=e,A=null;t:for(;;){for(var M;B!==a||l!==0&&B.nodeType!==3||(m=f+l),B!==u||n!==0&&B.nodeType!==3||(x=f+n),B.nodeType===3&&(f+=B.nodeValue.length),(M=B.firstChild)!==null;)A=B,B=M;for(;;){if(B===e)break t;if(A===a&&++_===l&&(m=f),A===u&&++U===n&&(x=f),(M=B.nextSibling)!==null)break;B=A,A=B.parentNode}B=M}a=m===-1||x===-1?null:{start:m,end:x}}else a=null}a=a||{start:0,end:0}}else a=null;for(Ec={focusedElem:e,selectionRange:a},lu=!1,Fe=t;Fe!==null;)if(t=Fe,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,Fe=e;else for(;Fe!==null;){switch(t=Fe,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<e.length;a++)l=e[a],l.ref.impl=l.nextImpl;break;case 11:case 15:break;case 1:if((e&1024)!==0&&u!==null){e=void 0,a=t,l=u.memoizedProps,u=u.memoizedState,n=a.stateNode;try{var $=Pa(a.type,l);e=n.getSnapshotBeforeUpdate($,u),n.__reactInternalSnapshotBeforeUpdate=e}catch(ne){Ce(a,a.return,ne)}}break;case 3:if((e&1024)!==0){if(e=t.stateNode.containerInfo,a=e.nodeType,a===9)wc(e);else if(a===1)switch(e.nodeName){case"HEAD":case"HTML":case"BODY":wc(e);break;default:e.textContent=""}}break;case 5:case 26:case 27:case 6:case 4:case 17:break;default:if((e&1024)!==0)throw Error(o(163))}if(e=t.sibling,e!==null){e.return=t.return,Fe=e;break}Fe=t.return}}function Kf(e,t,a){var n=a.flags;switch(a.tag){case 0:case 11:case 15:ia(e,a),n&4&&jl(5,a);break;case 1:if(ia(e,a),n&4)if(e=a.stateNode,t===null)try{e.componentDidMount()}catch(f){Ce(a,a.return,f)}else{var l=Pa(a.type,t.memoizedProps);t=t.memoizedState;try{e.componentDidUpdate(l,t,e.__reactInternalSnapshotBeforeUpdate)}catch(f){Ce(a,a.return,f)}}n&64&&Gf(a),n&512&&Sl(a,a.return);break;case 3:if(ia(e,a),n&64&&(e=a.updateQueue,e!==null)){if(t=null,a.child!==null)switch(a.child.tag){case 27:case 5:t=a.child.stateNode;break;case 1:t=a.child.stateNode}try{zo(e,t)}catch(f){Ce(a,a.return,f)}}break;case 27:t===null&&n&4&&Qf(a);case 26:case 5:ia(e,a),t===null&&n&4&&Xf(a),n&512&&Sl(a,a.return);break;case 12:ia(e,a);break;case 31:ia(e,a),n&4&&Wf(e,a);break;case 13:ia(e,a),n&4&&If(e,a),n&64&&(e=a.memoizedState,e!==null&&(e=e.dehydrated,e!==null&&(a=Ip.bind(null,a),g1(e,a))));break;case 22:if(n=a.memoizedState!==null||na,!n){t=t!==null&&t.memoizedState!==null||Ve,l=na;var u=Ve;na=n,(Ve=t)&&!u?ua(e,a,(a.subtreeFlags&8772)!==0):ia(e,a),na=l,Ve=u}break;case 30:break;default:ia(e,a)}}function $f(e){var t=e.alternate;t!==null&&(e.alternate=null,$f(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&Mu(t)),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}var Oe=null,st=!1;function la(e,t,a){for(a=a.child;a!==null;)Ff(e,t,a),a=a.sibling}function Ff(e,t,a){if(ht&&typeof ht.onCommitFiberUnmount=="function")try{ht.onCommitFiberUnmount(Qn,a)}catch{}switch(a.tag){case 26:Ve||Zt(a,t),la(e,t,a),a.memoizedState?a.memoizedState.count--:a.stateNode&&(a=a.stateNode,a.parentNode.removeChild(a));break;case 27:Ve||Zt(a,t);var n=Oe,l=st;Ra(a.type)&&(Oe=a.stateNode,st=!1),la(e,t,a),zl(a.stateNode),Oe=n,st=l;break;case 5:Ve||Zt(a,t);case 6:if(n=Oe,l=st,Oe=null,la(e,t,a),Oe=n,st=l,Oe!==null)if(st)try{(Oe.nodeType===9?Oe.body:Oe.nodeName==="HTML"?Oe.ownerDocument.body:Oe).removeChild(a.stateNode)}catch(u){Ce(a,t,u)}else try{Oe.removeChild(a.stateNode)}catch(u){Ce(a,t,u)}break;case 18:Oe!==null&&(st?(e=Oe,Gd(e.nodeType===9?e.body:e.nodeName==="HTML"?e.ownerDocument.body:e,a.stateNode),Yn(e)):Gd(Oe,a.stateNode));break;case 4:n=Oe,l=st,Oe=a.stateNode.containerInfo,st=!0,la(e,t,a),Oe=n,st=l;break;case 0:case 11:case 14:case 15:Ca(2,a,t),Ve||Ca(4,a,t),la(e,t,a);break;case 1:Ve||(Zt(a,t),n=a.stateNode,typeof n.componentWillUnmount=="function"&&Zf(a,t,n)),la(e,t,a);break;case 21:la(e,t,a);break;case 22:Ve=(n=Ve)||a.memoizedState!==null,la(e,t,a),Ve=n;break;default:la(e,t,a)}}function Wf(e,t){if(t.memoizedState===null&&(e=t.alternate,e!==null&&(e=e.memoizedState,e!==null))){e=e.dehydrated;try{Yn(e)}catch(a){Ce(t,t.return,a)}}}function If(e,t){if(t.memoizedState===null&&(e=t.alternate,e!==null&&(e=e.memoizedState,e!==null&&(e=e.dehydrated,e!==null))))try{Yn(e)}catch(a){Ce(t,t.return,a)}}function Xp(e){switch(e.tag){case 31:case 13:case 19:var t=e.stateNode;return t===null&&(t=e.stateNode=new Jf),t;case 22:return e=e.stateNode,t=e._retryCache,t===null&&(t=e._retryCache=new Jf),t;default:throw Error(o(435,e.tag))}}function Bi(e,t){var a=Xp(e);t.forEach(function(n){if(!a.has(n)){a.add(n);var l=Pp.bind(null,e,n);n.then(l,l)}})}function ct(e,t){var a=t.deletions;if(a!==null)for(var n=0;n<a.length;n++){var l=a[n],u=e,f=t,m=f;e:for(;m!==null;){switch(m.tag){case 27:if(Ra(m.type)){Oe=m.stateNode,st=!1;break e}break;case 5:Oe=m.stateNode,st=!1;break e;case 3:case 4:Oe=m.stateNode.containerInfo,st=!0;break e}m=m.return}if(Oe===null)throw Error(o(160));Ff(u,f,l),Oe=null,st=!1,u=l.alternate,u!==null&&(u.return=null),l.return=null}if(t.subtreeFlags&13886)for(t=t.child;t!==null;)Pf(t,e),t=t.sibling}var Ht=null;function Pf(e,t){var a=e.alternate,n=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:ct(t,e),rt(e),n&4&&(Ca(3,e,e.return),jl(3,e),Ca(5,e,e.return));break;case 1:ct(t,e),rt(e),n&512&&(Ve||a===null||Zt(a,a.return)),n&64&&na&&(e=e.updateQueue,e!==null&&(n=e.callbacks,n!==null&&(a=e.shared.hiddenCallbacks,e.shared.hiddenCallbacks=a===null?n:a.concat(n))));break;case 26:var l=Ht;if(ct(t,e),rt(e),n&512&&(Ve||a===null||Zt(a,a.return)),n&4){var u=a!==null?a.memoizedState:null;if(n=e.memoizedState,a===null)if(n===null)if(e.stateNode===null){e:{n=e.type,a=e.memoizedProps,l=l.ownerDocument||l;t:switch(n){case"title":u=l.getElementsByTagName("title")[0],(!u||u[$n]||u[We]||u.namespaceURI==="http://www.w3.org/2000/svg"||u.hasAttribute("itemprop"))&&(u=l.createElement(n),l.head.insertBefore(u,l.querySelector("head > title"))),tt(u,n,a),u[We]=e,$e(u),n=u;break e;case"link":var f=Pd("link","href",l).get(n+(a.href||""));if(f){for(var m=0;m<f.length;m++)if(u=f[m],u.getAttribute("href")===(a.href==null||a.href===""?null:a.href)&&u.getAttribute("rel")===(a.rel==null?null:a.rel)&&u.getAttribute("title")===(a.title==null?null:a.title)&&u.getAttribute("crossorigin")===(a.crossOrigin==null?null:a.crossOrigin)){f.splice(m,1);break t}}u=l.createElement(n),tt(u,n,a),l.head.appendChild(u);break;case"meta":if(f=Pd("meta","content",l).get(n+(a.content||""))){for(m=0;m<f.length;m++)if(u=f[m],u.getAttribute("content")===(a.content==null?null:""+a.content)&&u.getAttribute("name")===(a.name==null?null:a.name)&&u.getAttribute("property")===(a.property==null?null:a.property)&&u.getAttribute("http-equiv")===(a.httpEquiv==null?null:a.httpEquiv)&&u.getAttribute("charset")===(a.charSet==null?null:a.charSet)){f.splice(m,1);break t}}u=l.createElement(n),tt(u,n,a),l.head.appendChild(u);break;default:throw Error(o(468,n))}u[We]=e,$e(u),n=u}e.stateNode=n}else eh(l,e.type,e.stateNode);else e.stateNode=Id(l,n,e.memoizedProps);else u!==n?(u===null?a.stateNode!==null&&(a=a.stateNode,a.parentNode.removeChild(a)):u.count--,n===null?eh(l,e.type,e.stateNode):Id(l,n,e.memoizedProps)):n===null&&e.stateNode!==null&&Ps(e,e.memoizedProps,a.memoizedProps)}break;case 27:ct(t,e),rt(e),n&512&&(Ve||a===null||Zt(a,a.return)),a!==null&&n&4&&Ps(e,e.memoizedProps,a.memoizedProps);break;case 5:if(ct(t,e),rt(e),n&512&&(Ve||a===null||Zt(a,a.return)),e.flags&32){l=e.stateNode;try{on(l,"")}catch($){Ce(e,e.return,$)}}n&4&&e.stateNode!=null&&(l=e.memoizedProps,Ps(e,l,a!==null?a.memoizedProps:l)),n&1024&&(ac=!0);break;case 6:if(ct(t,e),rt(e),n&4){if(e.stateNode===null)throw Error(o(162));n=e.memoizedProps,a=e.stateNode;try{a.nodeValue=n}catch($){Ce(e,e.return,$)}}break;case 3:if(eu=null,l=Ht,Ht=Ii(t.containerInfo),ct(t,e),Ht=l,rt(e),n&4&&a!==null&&a.memoizedState.isDehydrated)try{Yn(t.containerInfo)}catch($){Ce(e,e.return,$)}ac&&(ac=!1,ed(e));break;case 4:n=Ht,Ht=Ii(e.stateNode.containerInfo),ct(t,e),rt(e),Ht=n;break;case 12:ct(t,e),rt(e);break;case 31:ct(t,e),rt(e),n&4&&(n=e.updateQueue,n!==null&&(e.updateQueue=null,Bi(e,n)));break;case 13:ct(t,e),rt(e),e.child.flags&8192&&e.memoizedState!==null!=(a!==null&&a.memoizedState!==null)&&(qi=dt()),n&4&&(n=e.updateQueue,n!==null&&(e.updateQueue=null,Bi(e,n)));break;case 22:l=e.memoizedState!==null;var x=a!==null&&a.memoizedState!==null,_=na,U=Ve;if(na=_||l,Ve=U||x,ct(t,e),Ve=U,na=_,rt(e),n&8192)e:for(t=e.stateNode,t._visibility=l?t._visibility&-2:t._visibility|1,l&&(a===null||x||na||Ve||en(e)),a=null,t=e;;){if(t.tag===5||t.tag===26){if(a===null){x=a=t;try{if(u=x.stateNode,l)f=u.style,typeof f.setProperty=="function"?f.setProperty("display","none","important"):f.display="none";else{m=x.stateNode;var B=x.memoizedProps.style,A=B!=null&&B.hasOwnProperty("display")?B.display:null;m.style.display=A==null||typeof A=="boolean"?"":(""+A).trim()}}catch($){Ce(x,x.return,$)}}}else if(t.tag===6){if(a===null){x=t;try{x.stateNode.nodeValue=l?"":x.memoizedProps}catch($){Ce(x,x.return,$)}}}else if(t.tag===18){if(a===null){x=t;try{var M=x.stateNode;l?Zd(M,!0):Zd(x.stateNode,!1)}catch($){Ce(x,x.return,$)}}}else if((t.tag!==22&&t.tag!==23||t.memoizedState===null||t===e)&&t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break e;for(;t.sibling===null;){if(t.return===null||t.return===e)break e;a===t&&(a=null),t=t.return}a===t&&(a=null),t.sibling.return=t.return,t=t.sibling}n&4&&(n=e.updateQueue,n!==null&&(a=n.retryQueue,a!==null&&(n.retryQueue=null,Bi(e,a))));break;case 19:ct(t,e),rt(e),n&4&&(n=e.updateQueue,n!==null&&(e.updateQueue=null,Bi(e,n)));break;case 30:break;case 21:break;default:ct(t,e),rt(e)}}function rt(e){var t=e.flags;if(t&2){try{for(var a,n=e.return;n!==null;){if(Vf(n)){a=n;break}n=n.return}if(a==null)throw Error(o(160));switch(a.tag){case 27:var l=a.stateNode,u=ec(e);Hi(e,u,l);break;case 5:var f=a.stateNode;a.flags&32&&(on(f,""),a.flags&=-33);var m=ec(e);Hi(e,m,f);break;case 3:case 4:var x=a.stateNode.containerInfo,_=ec(e);tc(e,_,x);break;default:throw Error(o(161))}}catch(U){Ce(e,e.return,U)}e.flags&=-3}t&4096&&(e.flags&=-4097)}function ed(e){if(e.subtreeFlags&1024)for(e=e.child;e!==null;){var t=e;ed(t),t.tag===5&&t.flags&1024&&t.stateNode.reset(),e=e.sibling}}function ia(e,t){if(t.subtreeFlags&8772)for(t=t.child;t!==null;)Kf(e,t.alternate,t),t=t.sibling}function en(e){for(e=e.child;e!==null;){var t=e;switch(t.tag){case 0:case 11:case 14:case 15:Ca(4,t,t.return),en(t);break;case 1:Zt(t,t.return);var a=t.stateNode;typeof a.componentWillUnmount=="function"&&Zf(t,t.return,a),en(t);break;case 27:zl(t.stateNode);case 26:case 5:Zt(t,t.return),en(t);break;case 22:t.memoizedState===null&&en(t);break;case 30:en(t);break;default:en(t)}e=e.sibling}}function ua(e,t,a){for(a=a&&(t.subtreeFlags&8772)!==0,t=t.child;t!==null;){var n=t.alternate,l=e,u=t,f=u.flags;switch(u.tag){case 0:case 11:case 15:ua(l,u,a),jl(4,u);break;case 1:if(ua(l,u,a),n=u,l=n.stateNode,typeof l.componentDidMount=="function")try{l.componentDidMount()}catch(_){Ce(n,n.return,_)}if(n=u,l=n.updateQueue,l!==null){var m=n.stateNode;try{var x=l.shared.hiddenCallbacks;if(x!==null)for(l.shared.hiddenCallbacks=null,l=0;l<x.length;l++)Ro(x[l],m)}catch(_){Ce(n,n.return,_)}}a&&f&64&&Gf(u),Sl(u,u.return);break;case 27:Qf(u);case 26:case 5:ua(l,u,a),a&&n===null&&f&4&&Xf(u),Sl(u,u.return);break;case 12:ua(l,u,a);break;case 31:ua(l,u,a),a&&f&4&&Wf(l,u);break;case 13:ua(l,u,a),a&&f&4&&If(l,u);break;case 22:u.memoizedState===null&&ua(l,u,a),Sl(u,u.return);break;case 30:break;default:ua(l,u,a)}t=t.sibling}}function nc(e,t){var a=null;e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(a=e.memoizedState.cachePool.pool),e=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(e=t.memoizedState.cachePool.pool),e!==a&&(e!=null&&e.refCount++,a!=null&&cl(a))}function lc(e,t){e=null,t.alternate!==null&&(e=t.alternate.memoizedState.cache),t=t.memoizedState.cache,t!==e&&(t.refCount++,e!=null&&cl(e))}function Bt(e,t,a,n){if(t.subtreeFlags&10256)for(t=t.child;t!==null;)td(e,t,a,n),t=t.sibling}function td(e,t,a,n){var l=t.flags;switch(t.tag){case 0:case 11:case 15:Bt(e,t,a,n),l&2048&&jl(9,t);break;case 1:Bt(e,t,a,n);break;case 3:Bt(e,t,a,n),l&2048&&(e=null,t.alternate!==null&&(e=t.alternate.memoizedState.cache),t=t.memoizedState.cache,t!==e&&(t.refCount++,e!=null&&cl(e)));break;case 12:if(l&2048){Bt(e,t,a,n),e=t.stateNode;try{var u=t.memoizedProps,f=u.id,m=u.onPostCommit;typeof m=="function"&&m(f,t.alternate===null?"mount":"update",e.passiveEffectDuration,-0)}catch(x){Ce(t,t.return,x)}}else Bt(e,t,a,n);break;case 31:Bt(e,t,a,n);break;case 13:Bt(e,t,a,n);break;case 23:break;case 22:u=t.stateNode,f=t.alternate,t.memoizedState!==null?u._visibility&2?Bt(e,t,a,n):Cl(e,t):u._visibility&2?Bt(e,t,a,n):(u._visibility|=2,Rn(e,t,a,n,(t.subtreeFlags&10256)!==0||!1)),l&2048&&nc(f,t);break;case 24:Bt(e,t,a,n),l&2048&&lc(t.alternate,t);break;default:Bt(e,t,a,n)}}function Rn(e,t,a,n,l){for(l=l&&((t.subtreeFlags&10256)!==0||!1),t=t.child;t!==null;){var u=e,f=t,m=a,x=n,_=f.flags;switch(f.tag){case 0:case 11:case 15:Rn(u,f,m,x,l),jl(8,f);break;case 23:break;case 22:var U=f.stateNode;f.memoizedState!==null?U._visibility&2?Rn(u,f,m,x,l):Cl(u,f):(U._visibility|=2,Rn(u,f,m,x,l)),l&&_&2048&&nc(f.alternate,f);break;case 24:Rn(u,f,m,x,l),l&&_&2048&&lc(f.alternate,f);break;default:Rn(u,f,m,x,l)}t=t.sibling}}function Cl(e,t){if(t.subtreeFlags&10256)for(t=t.child;t!==null;){var a=e,n=t,l=n.flags;switch(n.tag){case 22:Cl(a,n),l&2048&&nc(n.alternate,n);break;case 24:Cl(a,n),l&2048&&lc(n.alternate,n);break;default:Cl(a,n)}t=t.sibling}}var El=8192;function zn(e,t,a){if(e.subtreeFlags&El)for(e=e.child;e!==null;)ad(e,t,a),e=e.sibling}function ad(e,t,a){switch(e.tag){case 26:zn(e,t,a),e.flags&El&&e.memoizedState!==null&&R1(a,Ht,e.memoizedState,e.memoizedProps);break;case 5:zn(e,t,a);break;case 3:case 4:var n=Ht;Ht=Ii(e.stateNode.containerInfo),zn(e,t,a),Ht=n;break;case 22:e.memoizedState===null&&(n=e.alternate,n!==null&&n.memoizedState!==null?(n=El,El=16777216,zn(e,t,a),El=n):zn(e,t,a));break;default:zn(e,t,a)}}function nd(e){var t=e.alternate;if(t!==null&&(e=t.child,e!==null)){t.child=null;do t=e.sibling,e.sibling=null,e=t;while(e!==null)}}function Nl(e){var t=e.deletions;if((e.flags&16)!==0){if(t!==null)for(var a=0;a<t.length;a++){var n=t[a];Fe=n,id(n,e)}nd(e)}if(e.subtreeFlags&10256)for(e=e.child;e!==null;)ld(e),e=e.sibling}function ld(e){switch(e.tag){case 0:case 11:case 15:Nl(e),e.flags&2048&&Ca(9,e,e.return);break;case 3:Nl(e);break;case 12:Nl(e);break;case 22:var t=e.stateNode;e.memoizedState!==null&&t._visibility&2&&(e.return===null||e.return.tag!==13)?(t._visibility&=-3,Li(e)):Nl(e);break;default:Nl(e)}}function Li(e){var t=e.deletions;if((e.flags&16)!==0){if(t!==null)for(var a=0;a<t.length;a++){var n=t[a];Fe=n,id(n,e)}nd(e)}for(e=e.child;e!==null;){switch(t=e,t.tag){case 0:case 11:case 15:Ca(8,t,t.return),Li(t);break;case 22:a=t.stateNode,a._visibility&2&&(a._visibility&=-3,Li(t));break;default:Li(t)}e=e.sibling}}function id(e,t){for(;Fe!==null;){var a=Fe;switch(a.tag){case 0:case 11:case 15:Ca(8,a,t);break;case 23:case 22:if(a.memoizedState!==null&&a.memoizedState.cachePool!==null){var n=a.memoizedState.cachePool.pool;n!=null&&n.refCount++}break;case 24:cl(a.memoizedState.cache)}if(n=a.child,n!==null)n.return=a,Fe=n;else e:for(a=e;Fe!==null;){n=Fe;var l=n.sibling,u=n.return;if($f(n),n===a){Fe=null;break e}if(l!==null){l.return=u,Fe=l;break e}Fe=u}}}var Vp={getCacheForType:function(e){var t=Pe(Ge),a=t.data.get(e);return a===void 0&&(a=e(),t.data.set(e,a)),a},cacheSignal:function(){return Pe(Ge).controller.signal}},Qp=typeof WeakMap=="function"?WeakMap:Map,xe=0,Ae=null,fe=null,me=0,Se=0,bt=null,Ea=!1,Mn=!1,ic=!1,sa=0,He=0,Na=0,tn=0,uc=0,xt=0,On=0,Tl=null,ot=null,sc=!1,qi=0,ud=0,Yi=1/0,Gi=null,Ta=null,Je=0,wa=null,Un=null,ca=0,cc=0,rc=null,sd=null,wl=0,oc=null;function jt(){return(xe&2)!==0&&me!==0?me&-me:D.T!==null?vc():jr()}function cd(){if(xt===0)if((me&536870912)===0||ye){var e=Fl;Fl<<=1,(Fl&3932160)===0&&(Fl=262144),xt=e}else xt=536870912;return e=yt.current,e!==null&&(e.flags|=32),xt}function ft(e,t,a){(e===Ae&&(Se===2||Se===9)||e.cancelPendingCommit!==null)&&(Dn(e,0),_a(e,me,xt,!1)),Kn(e,a),((xe&2)===0||e!==Ae)&&(e===Ae&&((xe&2)===0&&(tn|=a),He===4&&_a(e,me,xt,!1)),Xt(e))}function rd(e,t,a){if((xe&6)!==0)throw Error(o(327));var n=!a&&(t&127)===0&&(t&e.expiredLanes)===0||Jn(e,t),l=n?$p(e,t):dc(e,t,!0),u=n;do{if(l===0){Mn&&!n&&_a(e,t,0,!1);break}else{if(a=e.current.alternate,u&&!Jp(a)){l=dc(e,t,!1),u=!1;continue}if(l===2){if(u=t,e.errorRecoveryDisabledLanes&u)var f=0;else f=e.pendingLanes&-536870913,f=f!==0?f:f&536870912?536870912:0;if(f!==0){t=f;e:{var m=e;l=Tl;var x=m.current.memoizedState.isDehydrated;if(x&&(Dn(m,f).flags|=256),f=dc(m,f,!1),f!==2){if(ic&&!x){m.errorRecoveryDisabledLanes|=u,tn|=u,l=4;break e}u=ot,ot=l,u!==null&&(ot===null?ot=u:ot.push.apply(ot,u))}l=f}if(u=!1,l!==2)continue}}if(l===1){Dn(e,0),_a(e,t,0,!0);break}e:{switch(n=e,u=l,u){case 0:case 1:throw Error(o(345));case 4:if((t&4194048)!==t)break;case 6:_a(n,t,xt,!Ea);break e;case 2:ot=null;break;case 3:case 5:break;default:throw Error(o(329))}if((t&62914560)===t&&(l=qi+300-dt(),10<l)){if(_a(n,t,xt,!Ea),Il(n,0,!0)!==0)break e;ca=t,n.timeoutHandle=qd(od.bind(null,n,a,ot,Gi,sc,t,xt,tn,On,Ea,u,"Throttled",-0,0),l);break e}od(n,a,ot,Gi,sc,t,xt,tn,On,Ea,u,null,-0,0)}}break}while(!0);Xt(e)}function od(e,t,a,n,l,u,f,m,x,_,U,B,A,M){if(e.timeoutHandle=-1,B=t.subtreeFlags,B&8192||(B&16785408)===16785408){B={stylesheets:null,count:0,imgCount:0,imgBytes:0,suspenseyImages:[],waitingForImages:!0,waitingForViewTransition:!1,unsuspend:Jt},ad(t,u,B);var $=(u&62914560)===u?qi-dt():(u&4194048)===u?ud-dt():0;if($=z1(B,$),$!==null){ca=u,e.cancelPendingCommit=$(gd.bind(null,e,t,u,a,n,l,f,m,x,U,B,null,A,M)),_a(e,u,f,!_);return}}gd(e,t,u,a,n,l,f,m,x)}function Jp(e){for(var t=e;;){var a=t.tag;if((a===0||a===11||a===15)&&t.flags&16384&&(a=t.updateQueue,a!==null&&(a=a.stores,a!==null)))for(var n=0;n<a.length;n++){var l=a[n],u=l.getSnapshot;l=l.value;try{if(!pt(u(),l))return!1}catch{return!1}}if(a=t.child,t.subtreeFlags&16384&&a!==null)a.return=t,t=a;else{if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return!0;t=t.return}t.sibling.return=t.return,t=t.sibling}}return!0}function _a(e,t,a,n){t&=~uc,t&=~tn,e.suspendedLanes|=t,e.pingedLanes&=~t,n&&(e.warmLanes|=t),n=e.expirationTimes;for(var l=t;0<l;){var u=31-mt(l),f=1<<u;n[u]=-1,l&=~f}a!==0&&gr(e,a,t)}function Zi(){return(xe&6)===0?(_l(0),!1):!0}function fc(){if(fe!==null){if(Se===0)var e=fe.return;else e=fe,Wt=Qa=null,ws(e),Nn=null,ol=0,e=fe;for(;e!==null;)Yf(e.alternate,e),e=e.return;fe=null}}function Dn(e,t){var a=e.timeoutHandle;a!==-1&&(e.timeoutHandle=-1,h1(a)),a=e.cancelPendingCommit,a!==null&&(e.cancelPendingCommit=null,a()),ca=0,fc(),Ae=e,fe=a=$t(e.current,null),me=t,Se=0,bt=null,Ea=!1,Mn=Jn(e,t),ic=!1,On=xt=uc=tn=Na=He=0,ot=Tl=null,sc=!1,(t&8)!==0&&(t|=t&32);var n=e.entangledLanes;if(n!==0)for(e=e.entanglements,n&=t;0<n;){var l=31-mt(n),u=1<<l;t|=e[l],n&=~u}return sa=t,oi(),a}function fd(e,t){ce=null,D.H=gl,t===En||t===gi?(t=To(),Se=3):t===ps?(t=To(),Se=4):Se=t===Zs?8:t!==null&&typeof t=="object"&&typeof t.then=="function"?6:1,bt=t,fe===null&&(He=1,Mi(e,Tt(t,e.current)))}function dd(){var e=yt.current;return e===null?!0:(me&4194048)===me?Rt===null:(me&62914560)===me||(me&536870912)!==0?e===Rt:!1}function hd(){var e=D.H;return D.H=gl,e===null?gl:e}function md(){var e=D.A;return D.A=Vp,e}function Xi(){He=4,Ea||(me&4194048)!==me&&yt.current!==null||(Mn=!0),(Na&134217727)===0&&(tn&134217727)===0||Ae===null||_a(Ae,me,xt,!1)}function dc(e,t,a){var n=xe;xe|=2;var l=hd(),u=md();(Ae!==e||me!==t)&&(Gi=null,Dn(e,t)),t=!1;var f=He;e:do try{if(Se!==0&&fe!==null){var m=fe,x=bt;switch(Se){case 8:fc(),f=6;break e;case 3:case 2:case 9:case 6:yt.current===null&&(t=!0);var _=Se;if(Se=0,bt=null,kn(e,m,x,_),a&&Mn){f=0;break e}break;default:_=Se,Se=0,bt=null,kn(e,m,x,_)}}Kp(),f=He;break}catch(U){fd(e,U)}while(!0);return t&&e.shellSuspendCounter++,Wt=Qa=null,xe=n,D.H=l,D.A=u,fe===null&&(Ae=null,me=0,oi()),f}function Kp(){for(;fe!==null;)pd(fe)}function $p(e,t){var a=xe;xe|=2;var n=hd(),l=md();Ae!==e||me!==t?(Gi=null,Yi=dt()+500,Dn(e,t)):Mn=Jn(e,t);e:do try{if(Se!==0&&fe!==null){t=fe;var u=bt;t:switch(Se){case 1:Se=0,bt=null,kn(e,t,u,1);break;case 2:case 9:if(Eo(u)){Se=0,bt=null,vd(t);break}t=function(){Se!==2&&Se!==9||Ae!==e||(Se=7),Xt(e)},u.then(t,t);break e;case 3:Se=7;break e;case 4:Se=5;break e;case 7:Eo(u)?(Se=0,bt=null,vd(t)):(Se=0,bt=null,kn(e,t,u,7));break;case 5:var f=null;switch(fe.tag){case 26:f=fe.memoizedState;case 5:case 27:var m=fe;if(f?th(f):m.stateNode.complete){Se=0,bt=null;var x=m.sibling;if(x!==null)fe=x;else{var _=m.return;_!==null?(fe=_,Vi(_)):fe=null}break t}}Se=0,bt=null,kn(e,t,u,5);break;case 6:Se=0,bt=null,kn(e,t,u,6);break;case 8:fc(),He=6;break e;default:throw Error(o(462))}}Fp();break}catch(U){fd(e,U)}while(!0);return Wt=Qa=null,D.H=n,D.A=l,xe=a,fe!==null?0:(Ae=null,me=0,oi(),He)}function Fp(){for(;fe!==null&&!bm();)pd(fe)}function pd(e){var t=Lf(e.alternate,e,sa);e.memoizedProps=e.pendingProps,t===null?Vi(e):fe=t}function vd(e){var t=e,a=t.alternate;switch(t.tag){case 15:case 0:t=Of(a,t,t.pendingProps,t.type,void 0,me);break;case 11:t=Of(a,t,t.pendingProps,t.type.render,t.ref,me);break;case 5:ws(t);default:Yf(a,t),t=fe=ho(t,sa),t=Lf(a,t,sa)}e.memoizedProps=e.pendingProps,t===null?Vi(e):fe=t}function kn(e,t,a,n){Wt=Qa=null,ws(t),Nn=null,ol=0;var l=t.return;try{if(Bp(e,l,t,a,me)){He=1,Mi(e,Tt(a,e.current)),fe=null;return}}catch(u){if(l!==null)throw fe=l,u;He=1,Mi(e,Tt(a,e.current)),fe=null;return}t.flags&32768?(ye||n===1?e=!0:Mn||(me&536870912)!==0?e=!1:(Ea=e=!0,(n===2||n===9||n===3||n===6)&&(n=yt.current,n!==null&&n.tag===13&&(n.flags|=16384))),yd(t,e)):Vi(t)}function Vi(e){var t=e;do{if((t.flags&32768)!==0){yd(t,Ea);return}e=t.return;var a=Yp(t.alternate,t,sa);if(a!==null){fe=a;return}if(t=t.sibling,t!==null){fe=t;return}fe=t=e}while(t!==null);He===0&&(He=5)}function yd(e,t){do{var a=Gp(e.alternate,e);if(a!==null){a.flags&=32767,fe=a;return}if(a=e.return,a!==null&&(a.flags|=32768,a.subtreeFlags=0,a.deletions=null),!t&&(e=e.sibling,e!==null)){fe=e;return}fe=e=a}while(e!==null);He=6,fe=null}function gd(e,t,a,n,l,u,f,m,x){e.cancelPendingCommit=null;do Qi();while(Je!==0);if((xe&6)!==0)throw Error(o(327));if(t!==null){if(t===e.current)throw Error(o(177));if(u=t.lanes|t.childLanes,u|=es,Am(e,a,u,f,m,x),e===Ae&&(fe=Ae=null,me=0),Un=t,wa=e,ca=a,cc=u,rc=l,sd=n,(t.subtreeFlags&10256)!==0||(t.flags&10256)!==0?(e.callbackNode=null,e.callbackPriority=0,e1(Kl,function(){return Cd(),null})):(e.callbackNode=null,e.callbackPriority=0),n=(t.flags&13878)!==0,(t.subtreeFlags&13878)!==0||n){n=D.T,D.T=null,l=V.p,V.p=2,f=xe,xe|=4;try{Zp(e,t,a)}finally{xe=f,V.p=l,D.T=n}}Je=1,bd(),xd(),jd()}}function bd(){if(Je===1){Je=0;var e=wa,t=Un,a=(t.flags&13878)!==0;if((t.subtreeFlags&13878)!==0||a){a=D.T,D.T=null;var n=V.p;V.p=2;var l=xe;xe|=4;try{Pf(t,e);var u=Ec,f=no(e.containerInfo),m=u.focusedElem,x=u.selectionRange;if(f!==m&&m&&m.ownerDocument&&ao(m.ownerDocument.documentElement,m)){if(x!==null&&$u(m)){var _=x.start,U=x.end;if(U===void 0&&(U=_),"selectionStart"in m)m.selectionStart=_,m.selectionEnd=Math.min(U,m.value.length);else{var B=m.ownerDocument||document,A=B&&B.defaultView||window;if(A.getSelection){var M=A.getSelection(),$=m.textContent.length,ne=Math.min(x.start,$),we=x.end===void 0?ne:Math.min(x.end,$);!M.extend&&ne>we&&(f=we,we=ne,ne=f);var T=to(m,ne),E=to(m,we);if(T&&E&&(M.rangeCount!==1||M.anchorNode!==T.node||M.anchorOffset!==T.offset||M.focusNode!==E.node||M.focusOffset!==E.offset)){var w=B.createRange();w.setStart(T.node,T.offset),M.removeAllRanges(),ne>we?(M.addRange(w),M.extend(E.node,E.offset)):(w.setEnd(E.node,E.offset),M.addRange(w))}}}}for(B=[],M=m;M=M.parentNode;)M.nodeType===1&&B.push({element:M,left:M.scrollLeft,top:M.scrollTop});for(typeof m.focus=="function"&&m.focus(),m=0;m<B.length;m++){var H=B[m];H.element.scrollLeft=H.left,H.element.scrollTop=H.top}}lu=!!Cc,Ec=Cc=null}finally{xe=l,V.p=n,D.T=a}}e.current=t,Je=2}}function xd(){if(Je===2){Je=0;var e=wa,t=Un,a=(t.flags&8772)!==0;if((t.subtreeFlags&8772)!==0||a){a=D.T,D.T=null;var n=V.p;V.p=2;var l=xe;xe|=4;try{Kf(e,t.alternate,t)}finally{xe=l,V.p=n,D.T=a}}Je=3}}function jd(){if(Je===4||Je===3){Je=0,xm();var e=wa,t=Un,a=ca,n=sd;(t.subtreeFlags&10256)!==0||(t.flags&10256)!==0?Je=5:(Je=0,Un=wa=null,Sd(e,e.pendingLanes));var l=e.pendingLanes;if(l===0&&(Ta=null),Ru(a),t=t.stateNode,ht&&typeof ht.onCommitFiberRoot=="function")try{ht.onCommitFiberRoot(Qn,t,void 0,(t.current.flags&128)===128)}catch{}if(n!==null){t=D.T,l=V.p,V.p=2,D.T=null;try{for(var u=e.onRecoverableError,f=0;f<n.length;f++){var m=n[f];u(m.value,{componentStack:m.stack})}}finally{D.T=t,V.p=l}}(ca&3)!==0&&Qi(),Xt(e),l=e.pendingLanes,(a&261930)!==0&&(l&42)!==0?e===oc?wl++:(wl=0,oc=e):wl=0,_l(0)}}function Sd(e,t){(e.pooledCacheLanes&=t)===0&&(t=e.pooledCache,t!=null&&(e.pooledCache=null,cl(t)))}function Qi(){return bd(),xd(),jd(),Cd()}function Cd(){if(Je!==5)return!1;var e=wa,t=cc;cc=0;var a=Ru(ca),n=D.T,l=V.p;try{V.p=32>a?32:a,D.T=null,a=rc,rc=null;var u=wa,f=ca;if(Je=0,Un=wa=null,ca=0,(xe&6)!==0)throw Error(o(331));var m=xe;if(xe|=4,ld(u.current),td(u,u.current,f,a),xe=m,_l(0,!1),ht&&typeof ht.onPostCommitFiberRoot=="function")try{ht.onPostCommitFiberRoot(Qn,u)}catch{}return!0}finally{V.p=l,D.T=n,Sd(e,t)}}function Ed(e,t,a){t=Tt(a,t),t=Gs(e.stateNode,t,2),e=xa(e,t,2),e!==null&&(Kn(e,2),Xt(e))}function Ce(e,t,a){if(e.tag===3)Ed(e,e,a);else for(;t!==null;){if(t.tag===3){Ed(t,e,a);break}else if(t.tag===1){var n=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof n.componentDidCatch=="function"&&(Ta===null||!Ta.has(n))){e=Tt(a,e),a=Nf(2),n=xa(t,a,2),n!==null&&(Tf(a,n,t,e),Kn(n,2),Xt(n));break}}t=t.return}}function hc(e,t,a){var n=e.pingCache;if(n===null){n=e.pingCache=new Qp;var l=new Set;n.set(t,l)}else l=n.get(t),l===void 0&&(l=new Set,n.set(t,l));l.has(a)||(ic=!0,l.add(a),e=Wp.bind(null,e,t,a),t.then(e,e))}function Wp(e,t,a){var n=e.pingCache;n!==null&&n.delete(t),e.pingedLanes|=e.suspendedLanes&a,e.warmLanes&=~a,Ae===e&&(me&a)===a&&(He===4||He===3&&(me&62914560)===me&&300>dt()-qi?(xe&2)===0&&Dn(e,0):uc|=a,On===me&&(On=0)),Xt(e)}function Nd(e,t){t===0&&(t=yr()),e=Za(e,t),e!==null&&(Kn(e,t),Xt(e))}function Ip(e){var t=e.memoizedState,a=0;t!==null&&(a=t.retryLane),Nd(e,a)}function Pp(e,t){var a=0;switch(e.tag){case 31:case 13:var n=e.stateNode,l=e.memoizedState;l!==null&&(a=l.retryLane);break;case 19:n=e.stateNode;break;case 22:n=e.stateNode._retryCache;break;default:throw Error(o(314))}n!==null&&n.delete(t),Nd(e,a)}function e1(e,t){return Tu(e,t)}var Ji=null,Hn=null,mc=!1,Ki=!1,pc=!1,Aa=0;function Xt(e){e!==Hn&&e.next===null&&(Hn===null?Ji=Hn=e:Hn=Hn.next=e),Ki=!0,mc||(mc=!0,a1())}function _l(e,t){if(!pc&&Ki){pc=!0;do for(var a=!1,n=Ji;n!==null;){if(e!==0){var l=n.pendingLanes;if(l===0)var u=0;else{var f=n.suspendedLanes,m=n.pingedLanes;u=(1<<31-mt(42|e)+1)-1,u&=l&~(f&~m),u=u&201326741?u&201326741|1:u?u|2:0}u!==0&&(a=!0,Ad(n,u))}else u=me,u=Il(n,n===Ae?u:0,n.cancelPendingCommit!==null||n.timeoutHandle!==-1),(u&3)===0||Jn(n,u)||(a=!0,Ad(n,u));n=n.next}while(a);pc=!1}}function t1(){Td()}function Td(){Ki=mc=!1;var e=0;Aa!==0&&d1()&&(e=Aa);for(var t=dt(),a=null,n=Ji;n!==null;){var l=n.next,u=wd(n,t);u===0?(n.next=null,a===null?Ji=l:a.next=l,l===null&&(Hn=a)):(a=n,(e!==0||(u&3)!==0)&&(Ki=!0)),n=l}Je!==0&&Je!==5||_l(e),Aa!==0&&(Aa=0)}function wd(e,t){for(var a=e.suspendedLanes,n=e.pingedLanes,l=e.expirationTimes,u=e.pendingLanes&-62914561;0<u;){var f=31-mt(u),m=1<<f,x=l[f];x===-1?((m&a)===0||(m&n)!==0)&&(l[f]=_m(m,t)):x<=t&&(e.expiredLanes|=m),u&=~m}if(t=Ae,a=me,a=Il(e,e===t?a:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),n=e.callbackNode,a===0||e===t&&(Se===2||Se===9)||e.cancelPendingCommit!==null)return n!==null&&n!==null&&wu(n),e.callbackNode=null,e.callbackPriority=0;if((a&3)===0||Jn(e,a)){if(t=a&-a,t===e.callbackPriority)return t;switch(n!==null&&wu(n),Ru(a)){case 2:case 8:a=pr;break;case 32:a=Kl;break;case 268435456:a=vr;break;default:a=Kl}return n=_d.bind(null,e),a=Tu(a,n),e.callbackPriority=t,e.callbackNode=a,t}return n!==null&&n!==null&&wu(n),e.callbackPriority=2,e.callbackNode=null,2}function _d(e,t){if(Je!==0&&Je!==5)return e.callbackNode=null,e.callbackPriority=0,null;var a=e.callbackNode;if(Qi()&&e.callbackNode!==a)return null;var n=me;return n=Il(e,e===Ae?n:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),n===0?null:(rd(e,n,t),wd(e,dt()),e.callbackNode!=null&&e.callbackNode===a?_d.bind(null,e):null)}function Ad(e,t){if(Qi())return null;rd(e,t,!0)}function a1(){m1(function(){(xe&6)!==0?Tu(mr,t1):Td()})}function vc(){if(Aa===0){var e=Sn;e===0&&(e=$l,$l<<=1,($l&261888)===0&&($l=256)),Aa=e}return Aa}function Rd(e){return e==null||typeof e=="symbol"||typeof e=="boolean"?null:typeof e=="function"?e:ai(""+e)}function zd(e,t){var a=t.ownerDocument.createElement("input");return a.name=t.name,a.value=t.value,e.id&&a.setAttribute("form",e.id),t.parentNode.insertBefore(a,t),e=new FormData(e),a.parentNode.removeChild(a),e}function n1(e,t,a,n,l){if(t==="submit"&&a&&a.stateNode===l){var u=Rd((l[it]||null).action),f=n.submitter;f&&(t=(t=f[it]||null)?Rd(t.formAction):f.getAttribute("formAction"),t!==null&&(u=t,f=null));var m=new ui("action","action",null,n,l);e.push({event:m,listeners:[{instance:null,listener:function(){if(n.defaultPrevented){if(Aa!==0){var x=f?zd(l,f):new FormData(l);ks(a,{pending:!0,data:x,method:l.method,action:u},null,x)}}else typeof u=="function"&&(m.preventDefault(),x=f?zd(l,f):new FormData(l),ks(a,{pending:!0,data:x,method:l.method,action:u},u,x))},currentTarget:l}]})}}for(var yc=0;yc<Pu.length;yc++){var gc=Pu[yc],l1=gc.toLowerCase(),i1=gc[0].toUpperCase()+gc.slice(1);kt(l1,"on"+i1)}kt(uo,"onAnimationEnd"),kt(so,"onAnimationIteration"),kt(co,"onAnimationStart"),kt("dblclick","onDoubleClick"),kt("focusin","onFocus"),kt("focusout","onBlur"),kt(jp,"onTransitionRun"),kt(Sp,"onTransitionStart"),kt(Cp,"onTransitionCancel"),kt(ro,"onTransitionEnd"),cn("onMouseEnter",["mouseout","mouseover"]),cn("onMouseLeave",["mouseout","mouseover"]),cn("onPointerEnter",["pointerout","pointerover"]),cn("onPointerLeave",["pointerout","pointerover"]),La("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),La("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),La("onBeforeInput",["compositionend","keypress","textInput","paste"]),La("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),La("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),La("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var Al="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),u1=new Set("beforetoggle cancel close invalid load scroll scrollend toggle".split(" ").concat(Al));function Md(e,t){t=(t&4)!==0;for(var a=0;a<e.length;a++){var n=e[a],l=n.event;n=n.listeners;e:{var u=void 0;if(t)for(var f=n.length-1;0<=f;f--){var m=n[f],x=m.instance,_=m.currentTarget;if(m=m.listener,x!==u&&l.isPropagationStopped())break e;u=m,l.currentTarget=_;try{u(l)}catch(U){ri(U)}l.currentTarget=null,u=x}else for(f=0;f<n.length;f++){if(m=n[f],x=m.instance,_=m.currentTarget,m=m.listener,x!==u&&l.isPropagationStopped())break e;u=m,l.currentTarget=_;try{u(l)}catch(U){ri(U)}l.currentTarget=null,u=x}}}}function de(e,t){var a=t[zu];a===void 0&&(a=t[zu]=new Set);var n=e+"__bubble";a.has(n)||(Od(t,e,2,!1),a.add(n))}function bc(e,t,a){var n=0;t&&(n|=4),Od(a,e,n,t)}var $i="_reactListening"+Math.random().toString(36).slice(2);function xc(e){if(!e[$i]){e[$i]=!0,Er.forEach(function(a){a!=="selectionchange"&&(u1.has(a)||bc(a,!1,e),bc(a,!0,e))});var t=e.nodeType===9?e:e.ownerDocument;t===null||t[$i]||(t[$i]=!0,bc("selectionchange",!1,t))}}function Od(e,t,a,n){switch(ch(t)){case 2:var l=U1;break;case 8:l=D1;break;default:l=Dc}a=l.bind(null,t,a,e),l=void 0,!qu||t!=="touchstart"&&t!=="touchmove"&&t!=="wheel"||(l=!0),n?l!==void 0?e.addEventListener(t,a,{capture:!0,passive:l}):e.addEventListener(t,a,!0):l!==void 0?e.addEventListener(t,a,{passive:l}):e.addEventListener(t,a,!1)}function jc(e,t,a,n,l){var u=n;if((t&1)===0&&(t&2)===0&&n!==null)e:for(;;){if(n===null)return;var f=n.tag;if(f===3||f===4){var m=n.stateNode.containerInfo;if(m===l)break;if(f===4)for(f=n.return;f!==null;){var x=f.tag;if((x===3||x===4)&&f.stateNode.containerInfo===l)return;f=f.return}for(;m!==null;){if(f=ln(m),f===null)return;if(x=f.tag,x===5||x===6||x===26||x===27){n=u=f;continue e}m=m.parentNode}}n=n.return}kr(function(){var _=u,U=Bu(a),B=[];e:{var A=oo.get(e);if(A!==void 0){var M=ui,$=e;switch(e){case"keypress":if(li(a)===0)break e;case"keydown":case"keyup":M=Pm;break;case"focusin":$="focus",M=Xu;break;case"focusout":$="blur",M=Xu;break;case"beforeblur":case"afterblur":M=Xu;break;case"click":if(a.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":M=Lr;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":M=Ym;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":M=ap;break;case uo:case so:case co:M=Xm;break;case ro:M=lp;break;case"scroll":case"scrollend":M=Lm;break;case"wheel":M=up;break;case"copy":case"cut":case"paste":M=Qm;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":M=Yr;break;case"toggle":case"beforetoggle":M=cp}var ne=(t&4)!==0,we=!ne&&(e==="scroll"||e==="scrollend"),T=ne?A!==null?A+"Capture":null:A;ne=[];for(var E=_,w;E!==null;){var H=E;if(w=H.stateNode,H=H.tag,H!==5&&H!==26&&H!==27||w===null||T===null||(H=Wn(E,T),H!=null&&ne.push(Rl(E,H,w))),we)break;E=E.return}0<ne.length&&(A=new M(A,$,null,a,U),B.push({event:A,listeners:ne}))}}if((t&7)===0){e:{if(A=e==="mouseover"||e==="pointerover",M=e==="mouseout"||e==="pointerout",A&&a!==Hu&&($=a.relatedTarget||a.fromElement)&&(ln($)||$[nn]))break e;if((M||A)&&(A=U.window===U?U:(A=U.ownerDocument)?A.defaultView||A.parentWindow:window,M?($=a.relatedTarget||a.toElement,M=_,$=$?ln($):null,$!==null&&(we=h($),ne=$.tag,$!==we||ne!==5&&ne!==27&&ne!==6)&&($=null)):(M=null,$=_),M!==$)){if(ne=Lr,H="onMouseLeave",T="onMouseEnter",E="mouse",(e==="pointerout"||e==="pointerover")&&(ne=Yr,H="onPointerLeave",T="onPointerEnter",E="pointer"),we=M==null?A:Fn(M),w=$==null?A:Fn($),A=new ne(H,E+"leave",M,a,U),A.target=we,A.relatedTarget=w,H=null,ln(U)===_&&(ne=new ne(T,E+"enter",$,a,U),ne.target=w,ne.relatedTarget=we,H=ne),we=H,M&&$)t:{for(ne=s1,T=M,E=$,w=0,H=T;H;H=ne(H))w++;H=0;for(var ae=E;ae;ae=ne(ae))H++;for(;0<w-H;)T=ne(T),w--;for(;0<H-w;)E=ne(E),H--;for(;w--;){if(T===E||E!==null&&T===E.alternate){ne=T;break t}T=ne(T),E=ne(E)}ne=null}else ne=null;M!==null&&Ud(B,A,M,ne,!1),$!==null&&we!==null&&Ud(B,we,$,ne,!0)}}e:{if(A=_?Fn(_):window,M=A.nodeName&&A.nodeName.toLowerCase(),M==="select"||M==="input"&&A.type==="file")var ge=$r;else if(Jr(A))if(Fr)ge=gp;else{ge=vp;var I=pp}else M=A.nodeName,!M||M.toLowerCase()!=="input"||A.type!=="checkbox"&&A.type!=="radio"?_&&ku(_.elementType)&&(ge=$r):ge=yp;if(ge&&(ge=ge(e,_))){Kr(B,ge,a,U);break e}I&&I(e,A,_),e==="focusout"&&_&&A.type==="number"&&_.memoizedProps.value!=null&&Du(A,"number",A.value)}switch(I=_?Fn(_):window,e){case"focusin":(Jr(I)||I.contentEditable==="true")&&(mn=I,Fu=_,il=null);break;case"focusout":il=Fu=mn=null;break;case"mousedown":Wu=!0;break;case"contextmenu":case"mouseup":case"dragend":Wu=!1,lo(B,a,U);break;case"selectionchange":if(xp)break;case"keydown":case"keyup":lo(B,a,U)}var re;if(Qu)e:{switch(e){case"compositionstart":var pe="onCompositionStart";break e;case"compositionend":pe="onCompositionEnd";break e;case"compositionupdate":pe="onCompositionUpdate";break e}pe=void 0}else hn?Vr(e,a)&&(pe="onCompositionEnd"):e==="keydown"&&a.keyCode===229&&(pe="onCompositionStart");pe&&(Gr&&a.locale!=="ko"&&(hn||pe!=="onCompositionStart"?pe==="onCompositionEnd"&&hn&&(re=Hr()):(ha=U,Yu="value"in ha?ha.value:ha.textContent,hn=!0)),I=Fi(_,pe),0<I.length&&(pe=new qr(pe,e,null,a,U),B.push({event:pe,listeners:I}),re?pe.data=re:(re=Qr(a),re!==null&&(pe.data=re)))),(re=op?fp(e,a):dp(e,a))&&(pe=Fi(_,"onBeforeInput"),0<pe.length&&(I=new qr("onBeforeInput","beforeinput",null,a,U),B.push({event:I,listeners:pe}),I.data=re)),n1(B,e,_,a,U)}Md(B,t)})}function Rl(e,t,a){return{instance:e,listener:t,currentTarget:a}}function Fi(e,t){for(var a=t+"Capture",n=[];e!==null;){var l=e,u=l.stateNode;if(l=l.tag,l!==5&&l!==26&&l!==27||u===null||(l=Wn(e,a),l!=null&&n.unshift(Rl(e,l,u)),l=Wn(e,t),l!=null&&n.push(Rl(e,l,u))),e.tag===3)return n;e=e.return}return[]}function s1(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5&&e.tag!==27);return e||null}function Ud(e,t,a,n,l){for(var u=t._reactName,f=[];a!==null&&a!==n;){var m=a,x=m.alternate,_=m.stateNode;if(m=m.tag,x!==null&&x===n)break;m!==5&&m!==26&&m!==27||_===null||(x=_,l?(_=Wn(a,u),_!=null&&f.unshift(Rl(a,_,x))):l||(_=Wn(a,u),_!=null&&f.push(Rl(a,_,x)))),a=a.return}f.length!==0&&e.push({event:t,listeners:f})}var c1=/\r\n?/g,r1=/\u0000|\uFFFD/g;function Dd(e){return(typeof e=="string"?e:""+e).replace(c1,`
49
+ `).replace(r1,"")}function kd(e,t){return t=Dd(t),Dd(e)===t}function Te(e,t,a,n,l,u){switch(a){case"children":typeof n=="string"?t==="body"||t==="textarea"&&n===""||on(e,n):(typeof n=="number"||typeof n=="bigint")&&t!=="body"&&on(e,""+n);break;case"className":ei(e,"class",n);break;case"tabIndex":ei(e,"tabindex",n);break;case"dir":case"role":case"viewBox":case"width":case"height":ei(e,a,n);break;case"style":Ur(e,n,u);break;case"data":if(t!=="object"){ei(e,"data",n);break}case"src":case"href":if(n===""&&(t!=="a"||a!=="href")){e.removeAttribute(a);break}if(n==null||typeof n=="function"||typeof n=="symbol"||typeof n=="boolean"){e.removeAttribute(a);break}n=ai(""+n),e.setAttribute(a,n);break;case"action":case"formAction":if(typeof n=="function"){e.setAttribute(a,"javascript:throw new Error('A React form was unexpectedly submitted. If you called form.submit() manually, consider using form.requestSubmit() instead. If you\\'re trying to use event.stopPropagation() in a submit event handler, consider also calling event.preventDefault().')");break}else typeof u=="function"&&(a==="formAction"?(t!=="input"&&Te(e,t,"name",l.name,l,null),Te(e,t,"formEncType",l.formEncType,l,null),Te(e,t,"formMethod",l.formMethod,l,null),Te(e,t,"formTarget",l.formTarget,l,null)):(Te(e,t,"encType",l.encType,l,null),Te(e,t,"method",l.method,l,null),Te(e,t,"target",l.target,l,null)));if(n==null||typeof n=="symbol"||typeof n=="boolean"){e.removeAttribute(a);break}n=ai(""+n),e.setAttribute(a,n);break;case"onClick":n!=null&&(e.onclick=Jt);break;case"onScroll":n!=null&&de("scroll",e);break;case"onScrollEnd":n!=null&&de("scrollend",e);break;case"dangerouslySetInnerHTML":if(n!=null){if(typeof n!="object"||!("__html"in n))throw Error(o(61));if(a=n.__html,a!=null){if(l.children!=null)throw Error(o(60));e.innerHTML=a}}break;case"multiple":e.multiple=n&&typeof n!="function"&&typeof n!="symbol";break;case"muted":e.muted=n&&typeof n!="function"&&typeof n!="symbol";break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"defaultValue":case"defaultChecked":case"innerHTML":case"ref":break;case"autoFocus":break;case"xlinkHref":if(n==null||typeof n=="function"||typeof n=="boolean"||typeof n=="symbol"){e.removeAttribute("xlink:href");break}a=ai(""+n),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",a);break;case"contentEditable":case"spellCheck":case"draggable":case"value":case"autoReverse":case"externalResourcesRequired":case"focusable":case"preserveAlpha":n!=null&&typeof n!="function"&&typeof n!="symbol"?e.setAttribute(a,""+n):e.removeAttribute(a);break;case"inert":case"allowFullScreen":case"async":case"autoPlay":case"controls":case"default":case"defer":case"disabled":case"disablePictureInPicture":case"disableRemotePlayback":case"formNoValidate":case"hidden":case"loop":case"noModule":case"noValidate":case"open":case"playsInline":case"readOnly":case"required":case"reversed":case"scoped":case"seamless":case"itemScope":n&&typeof n!="function"&&typeof n!="symbol"?e.setAttribute(a,""):e.removeAttribute(a);break;case"capture":case"download":n===!0?e.setAttribute(a,""):n!==!1&&n!=null&&typeof n!="function"&&typeof n!="symbol"?e.setAttribute(a,n):e.removeAttribute(a);break;case"cols":case"rows":case"size":case"span":n!=null&&typeof n!="function"&&typeof n!="symbol"&&!isNaN(n)&&1<=n?e.setAttribute(a,n):e.removeAttribute(a);break;case"rowSpan":case"start":n==null||typeof n=="function"||typeof n=="symbol"||isNaN(n)?e.removeAttribute(a):e.setAttribute(a,n);break;case"popover":de("beforetoggle",e),de("toggle",e),Pl(e,"popover",n);break;case"xlinkActuate":Qt(e,"http://www.w3.org/1999/xlink","xlink:actuate",n);break;case"xlinkArcrole":Qt(e,"http://www.w3.org/1999/xlink","xlink:arcrole",n);break;case"xlinkRole":Qt(e,"http://www.w3.org/1999/xlink","xlink:role",n);break;case"xlinkShow":Qt(e,"http://www.w3.org/1999/xlink","xlink:show",n);break;case"xlinkTitle":Qt(e,"http://www.w3.org/1999/xlink","xlink:title",n);break;case"xlinkType":Qt(e,"http://www.w3.org/1999/xlink","xlink:type",n);break;case"xmlBase":Qt(e,"http://www.w3.org/XML/1998/namespace","xml:base",n);break;case"xmlLang":Qt(e,"http://www.w3.org/XML/1998/namespace","xml:lang",n);break;case"xmlSpace":Qt(e,"http://www.w3.org/XML/1998/namespace","xml:space",n);break;case"is":Pl(e,"is",n);break;case"innerText":case"textContent":break;default:(!(2<a.length)||a[0]!=="o"&&a[0]!=="O"||a[1]!=="n"&&a[1]!=="N")&&(a=Hm.get(a)||a,Pl(e,a,n))}}function Sc(e,t,a,n,l,u){switch(a){case"style":Ur(e,n,u);break;case"dangerouslySetInnerHTML":if(n!=null){if(typeof n!="object"||!("__html"in n))throw Error(o(61));if(a=n.__html,a!=null){if(l.children!=null)throw Error(o(60));e.innerHTML=a}}break;case"children":typeof n=="string"?on(e,n):(typeof n=="number"||typeof n=="bigint")&&on(e,""+n);break;case"onScroll":n!=null&&de("scroll",e);break;case"onScrollEnd":n!=null&&de("scrollend",e);break;case"onClick":n!=null&&(e.onclick=Jt);break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"innerHTML":case"ref":break;case"innerText":case"textContent":break;default:if(!Nr.hasOwnProperty(a))e:{if(a[0]==="o"&&a[1]==="n"&&(l=a.endsWith("Capture"),t=a.slice(2,l?a.length-7:void 0),u=e[it]||null,u=u!=null?u[a]:null,typeof u=="function"&&e.removeEventListener(t,u,l),typeof n=="function")){typeof u!="function"&&u!==null&&(a in e?e[a]=null:e.hasAttribute(a)&&e.removeAttribute(a)),e.addEventListener(t,n,l);break e}a in e?e[a]=n:n===!0?e.setAttribute(a,""):Pl(e,a,n)}}}function tt(e,t,a){switch(t){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"img":de("error",e),de("load",e);var n=!1,l=!1,u;for(u in a)if(a.hasOwnProperty(u)){var f=a[u];if(f!=null)switch(u){case"src":n=!0;break;case"srcSet":l=!0;break;case"children":case"dangerouslySetInnerHTML":throw Error(o(137,t));default:Te(e,t,u,f,a,null)}}l&&Te(e,t,"srcSet",a.srcSet,a,null),n&&Te(e,t,"src",a.src,a,null);return;case"input":de("invalid",e);var m=u=f=l=null,x=null,_=null;for(n in a)if(a.hasOwnProperty(n)){var U=a[n];if(U!=null)switch(n){case"name":l=U;break;case"type":f=U;break;case"checked":x=U;break;case"defaultChecked":_=U;break;case"value":u=U;break;case"defaultValue":m=U;break;case"children":case"dangerouslySetInnerHTML":if(U!=null)throw Error(o(137,t));break;default:Te(e,t,n,U,a,null)}}Rr(e,u,m,x,_,f,l,!1);return;case"select":de("invalid",e),n=f=u=null;for(l in a)if(a.hasOwnProperty(l)&&(m=a[l],m!=null))switch(l){case"value":u=m;break;case"defaultValue":f=m;break;case"multiple":n=m;default:Te(e,t,l,m,a,null)}t=u,a=f,e.multiple=!!n,t!=null?rn(e,!!n,t,!1):a!=null&&rn(e,!!n,a,!0);return;case"textarea":de("invalid",e),u=l=n=null;for(f in a)if(a.hasOwnProperty(f)&&(m=a[f],m!=null))switch(f){case"value":n=m;break;case"defaultValue":l=m;break;case"children":u=m;break;case"dangerouslySetInnerHTML":if(m!=null)throw Error(o(91));break;default:Te(e,t,f,m,a,null)}Mr(e,n,l,u);return;case"option":for(x in a)if(a.hasOwnProperty(x)&&(n=a[x],n!=null))switch(x){case"selected":e.selected=n&&typeof n!="function"&&typeof n!="symbol";break;default:Te(e,t,x,n,a,null)}return;case"dialog":de("beforetoggle",e),de("toggle",e),de("cancel",e),de("close",e);break;case"iframe":case"object":de("load",e);break;case"video":case"audio":for(n=0;n<Al.length;n++)de(Al[n],e);break;case"image":de("error",e),de("load",e);break;case"details":de("toggle",e);break;case"embed":case"source":case"link":de("error",e),de("load",e);case"area":case"base":case"br":case"col":case"hr":case"keygen":case"meta":case"param":case"track":case"wbr":case"menuitem":for(_ in a)if(a.hasOwnProperty(_)&&(n=a[_],n!=null))switch(_){case"children":case"dangerouslySetInnerHTML":throw Error(o(137,t));default:Te(e,t,_,n,a,null)}return;default:if(ku(t)){for(U in a)a.hasOwnProperty(U)&&(n=a[U],n!==void 0&&Sc(e,t,U,n,a,void 0));return}}for(m in a)a.hasOwnProperty(m)&&(n=a[m],n!=null&&Te(e,t,m,n,a,null))}function o1(e,t,a,n){switch(t){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"input":var l=null,u=null,f=null,m=null,x=null,_=null,U=null;for(M in a){var B=a[M];if(a.hasOwnProperty(M)&&B!=null)switch(M){case"checked":break;case"value":break;case"defaultValue":x=B;default:n.hasOwnProperty(M)||Te(e,t,M,null,n,B)}}for(var A in n){var M=n[A];if(B=a[A],n.hasOwnProperty(A)&&(M!=null||B!=null))switch(A){case"type":u=M;break;case"name":l=M;break;case"checked":_=M;break;case"defaultChecked":U=M;break;case"value":f=M;break;case"defaultValue":m=M;break;case"children":case"dangerouslySetInnerHTML":if(M!=null)throw Error(o(137,t));break;default:M!==B&&Te(e,t,A,M,n,B)}}Uu(e,f,m,x,_,U,u,l);return;case"select":M=f=m=A=null;for(u in a)if(x=a[u],a.hasOwnProperty(u)&&x!=null)switch(u){case"value":break;case"multiple":M=x;default:n.hasOwnProperty(u)||Te(e,t,u,null,n,x)}for(l in n)if(u=n[l],x=a[l],n.hasOwnProperty(l)&&(u!=null||x!=null))switch(l){case"value":A=u;break;case"defaultValue":m=u;break;case"multiple":f=u;default:u!==x&&Te(e,t,l,u,n,x)}t=m,a=f,n=M,A!=null?rn(e,!!a,A,!1):!!n!=!!a&&(t!=null?rn(e,!!a,t,!0):rn(e,!!a,a?[]:"",!1));return;case"textarea":M=A=null;for(m in a)if(l=a[m],a.hasOwnProperty(m)&&l!=null&&!n.hasOwnProperty(m))switch(m){case"value":break;case"children":break;default:Te(e,t,m,null,n,l)}for(f in n)if(l=n[f],u=a[f],n.hasOwnProperty(f)&&(l!=null||u!=null))switch(f){case"value":A=l;break;case"defaultValue":M=l;break;case"children":break;case"dangerouslySetInnerHTML":if(l!=null)throw Error(o(91));break;default:l!==u&&Te(e,t,f,l,n,u)}zr(e,A,M);return;case"option":for(var $ in a)if(A=a[$],a.hasOwnProperty($)&&A!=null&&!n.hasOwnProperty($))switch($){case"selected":e.selected=!1;break;default:Te(e,t,$,null,n,A)}for(x in n)if(A=n[x],M=a[x],n.hasOwnProperty(x)&&A!==M&&(A!=null||M!=null))switch(x){case"selected":e.selected=A&&typeof A!="function"&&typeof A!="symbol";break;default:Te(e,t,x,A,n,M)}return;case"img":case"link":case"area":case"base":case"br":case"col":case"embed":case"hr":case"keygen":case"meta":case"param":case"source":case"track":case"wbr":case"menuitem":for(var ne in a)A=a[ne],a.hasOwnProperty(ne)&&A!=null&&!n.hasOwnProperty(ne)&&Te(e,t,ne,null,n,A);for(_ in n)if(A=n[_],M=a[_],n.hasOwnProperty(_)&&A!==M&&(A!=null||M!=null))switch(_){case"children":case"dangerouslySetInnerHTML":if(A!=null)throw Error(o(137,t));break;default:Te(e,t,_,A,n,M)}return;default:if(ku(t)){for(var we in a)A=a[we],a.hasOwnProperty(we)&&A!==void 0&&!n.hasOwnProperty(we)&&Sc(e,t,we,void 0,n,A);for(U in n)A=n[U],M=a[U],!n.hasOwnProperty(U)||A===M||A===void 0&&M===void 0||Sc(e,t,U,A,n,M);return}}for(var T in a)A=a[T],a.hasOwnProperty(T)&&A!=null&&!n.hasOwnProperty(T)&&Te(e,t,T,null,n,A);for(B in n)A=n[B],M=a[B],!n.hasOwnProperty(B)||A===M||A==null&&M==null||Te(e,t,B,A,n,M)}function Hd(e){switch(e){case"css":case"script":case"font":case"img":case"image":case"input":case"link":return!0;default:return!1}}function f1(){if(typeof performance.getEntriesByType=="function"){for(var e=0,t=0,a=performance.getEntriesByType("resource"),n=0;n<a.length;n++){var l=a[n],u=l.transferSize,f=l.initiatorType,m=l.duration;if(u&&m&&Hd(f)){for(f=0,m=l.responseEnd,n+=1;n<a.length;n++){var x=a[n],_=x.startTime;if(_>m)break;var U=x.transferSize,B=x.initiatorType;U&&Hd(B)&&(x=x.responseEnd,f+=U*(x<m?1:(m-_)/(x-_)))}if(--n,t+=8*(u+f)/(l.duration/1e3),e++,10<e)break}}if(0<e)return t/e/1e6}return navigator.connection&&(e=navigator.connection.downlink,typeof e=="number")?e:5}var Cc=null,Ec=null;function Wi(e){return e.nodeType===9?e:e.ownerDocument}function Bd(e){switch(e){case"http://www.w3.org/2000/svg":return 1;case"http://www.w3.org/1998/Math/MathML":return 2;default:return 0}}function Ld(e,t){if(e===0)switch(t){case"svg":return 1;case"math":return 2;default:return 0}return e===1&&t==="foreignObject"?0:e}function Nc(e,t){return e==="textarea"||e==="noscript"||typeof t.children=="string"||typeof t.children=="number"||typeof t.children=="bigint"||typeof t.dangerouslySetInnerHTML=="object"&&t.dangerouslySetInnerHTML!==null&&t.dangerouslySetInnerHTML.__html!=null}var Tc=null;function d1(){var e=window.event;return e&&e.type==="popstate"?e===Tc?!1:(Tc=e,!0):(Tc=null,!1)}var qd=typeof setTimeout=="function"?setTimeout:void 0,h1=typeof clearTimeout=="function"?clearTimeout:void 0,Yd=typeof Promise=="function"?Promise:void 0,m1=typeof queueMicrotask=="function"?queueMicrotask:typeof Yd<"u"?function(e){return Yd.resolve(null).then(e).catch(p1)}:qd;function p1(e){setTimeout(function(){throw e})}function Ra(e){return e==="head"}function Gd(e,t){var a=t,n=0;do{var l=a.nextSibling;if(e.removeChild(a),l&&l.nodeType===8)if(a=l.data,a==="/$"||a==="/&"){if(n===0){e.removeChild(l),Yn(t);return}n--}else if(a==="$"||a==="$?"||a==="$~"||a==="$!"||a==="&")n++;else if(a==="html")zl(e.ownerDocument.documentElement);else if(a==="head"){a=e.ownerDocument.head,zl(a);for(var u=a.firstChild;u;){var f=u.nextSibling,m=u.nodeName;u[$n]||m==="SCRIPT"||m==="STYLE"||m==="LINK"&&u.rel.toLowerCase()==="stylesheet"||a.removeChild(u),u=f}}else a==="body"&&zl(e.ownerDocument.body);a=l}while(a);Yn(t)}function Zd(e,t){var a=e;e=0;do{var n=a.nextSibling;if(a.nodeType===1?t?(a._stashedDisplay=a.style.display,a.style.display="none"):(a.style.display=a._stashedDisplay||"",a.getAttribute("style")===""&&a.removeAttribute("style")):a.nodeType===3&&(t?(a._stashedText=a.nodeValue,a.nodeValue=""):a.nodeValue=a._stashedText||""),n&&n.nodeType===8)if(a=n.data,a==="/$"){if(e===0)break;e--}else a!=="$"&&a!=="$?"&&a!=="$~"&&a!=="$!"||e++;a=n}while(a)}function wc(e){var t=e.firstChild;for(t&&t.nodeType===10&&(t=t.nextSibling);t;){var a=t;switch(t=t.nextSibling,a.nodeName){case"HTML":case"HEAD":case"BODY":wc(a),Mu(a);continue;case"SCRIPT":case"STYLE":continue;case"LINK":if(a.rel.toLowerCase()==="stylesheet")continue}e.removeChild(a)}}function v1(e,t,a,n){for(;e.nodeType===1;){var l=a;if(e.nodeName.toLowerCase()!==t.toLowerCase()){if(!n&&(e.nodeName!=="INPUT"||e.type!=="hidden"))break}else if(n){if(!e[$n])switch(t){case"meta":if(!e.hasAttribute("itemprop"))break;return e;case"link":if(u=e.getAttribute("rel"),u==="stylesheet"&&e.hasAttribute("data-precedence"))break;if(u!==l.rel||e.getAttribute("href")!==(l.href==null||l.href===""?null:l.href)||e.getAttribute("crossorigin")!==(l.crossOrigin==null?null:l.crossOrigin)||e.getAttribute("title")!==(l.title==null?null:l.title))break;return e;case"style":if(e.hasAttribute("data-precedence"))break;return e;case"script":if(u=e.getAttribute("src"),(u!==(l.src==null?null:l.src)||e.getAttribute("type")!==(l.type==null?null:l.type)||e.getAttribute("crossorigin")!==(l.crossOrigin==null?null:l.crossOrigin))&&u&&e.hasAttribute("async")&&!e.hasAttribute("itemprop"))break;return e;default:return e}}else if(t==="input"&&e.type==="hidden"){var u=l.name==null?null:""+l.name;if(l.type==="hidden"&&e.getAttribute("name")===u)return e}else return e;if(e=zt(e.nextSibling),e===null)break}return null}function y1(e,t,a){if(t==="")return null;for(;e.nodeType!==3;)if((e.nodeType!==1||e.nodeName!=="INPUT"||e.type!=="hidden")&&!a||(e=zt(e.nextSibling),e===null))return null;return e}function Xd(e,t){for(;e.nodeType!==8;)if((e.nodeType!==1||e.nodeName!=="INPUT"||e.type!=="hidden")&&!t||(e=zt(e.nextSibling),e===null))return null;return e}function _c(e){return e.data==="$?"||e.data==="$~"}function Ac(e){return e.data==="$!"||e.data==="$?"&&e.ownerDocument.readyState!=="loading"}function g1(e,t){var a=e.ownerDocument;if(e.data==="$~")e._reactRetry=t;else if(e.data!=="$?"||a.readyState!=="loading")t();else{var n=function(){t(),a.removeEventListener("DOMContentLoaded",n)};a.addEventListener("DOMContentLoaded",n),e._reactRetry=n}}function zt(e){for(;e!=null;e=e.nextSibling){var t=e.nodeType;if(t===1||t===3)break;if(t===8){if(t=e.data,t==="$"||t==="$!"||t==="$?"||t==="$~"||t==="&"||t==="F!"||t==="F")break;if(t==="/$"||t==="/&")return null}}return e}var Rc=null;function Vd(e){e=e.nextSibling;for(var t=0;e;){if(e.nodeType===8){var a=e.data;if(a==="/$"||a==="/&"){if(t===0)return zt(e.nextSibling);t--}else a!=="$"&&a!=="$!"&&a!=="$?"&&a!=="$~"&&a!=="&"||t++}e=e.nextSibling}return null}function Qd(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var a=e.data;if(a==="$"||a==="$!"||a==="$?"||a==="$~"||a==="&"){if(t===0)return e;t--}else a!=="/$"&&a!=="/&"||t++}e=e.previousSibling}return null}function Jd(e,t,a){switch(t=Wi(a),e){case"html":if(e=t.documentElement,!e)throw Error(o(452));return e;case"head":if(e=t.head,!e)throw Error(o(453));return e;case"body":if(e=t.body,!e)throw Error(o(454));return e;default:throw Error(o(451))}}function zl(e){for(var t=e.attributes;t.length;)e.removeAttributeNode(t[0]);Mu(e)}var Mt=new Map,Kd=new Set;function Ii(e){return typeof e.getRootNode=="function"?e.getRootNode():e.nodeType===9?e:e.ownerDocument}var ra=V.d;V.d={f:b1,r:x1,D:j1,C:S1,L:C1,m:E1,X:T1,S:N1,M:w1};function b1(){var e=ra.f(),t=Zi();return e||t}function x1(e){var t=un(e);t!==null&&t.tag===5&&t.type==="form"?ff(t):ra.r(e)}var Bn=typeof document>"u"?null:document;function $d(e,t,a){var n=Bn;if(n&&typeof t=="string"&&t){var l=Et(t);l='link[rel="'+e+'"][href="'+l+'"]',typeof a=="string"&&(l+='[crossorigin="'+a+'"]'),Kd.has(l)||(Kd.add(l),e={rel:e,crossOrigin:a,href:t},n.querySelector(l)===null&&(t=n.createElement("link"),tt(t,"link",e),$e(t),n.head.appendChild(t)))}}function j1(e){ra.D(e),$d("dns-prefetch",e,null)}function S1(e,t){ra.C(e,t),$d("preconnect",e,t)}function C1(e,t,a){ra.L(e,t,a);var n=Bn;if(n&&e&&t){var l='link[rel="preload"][as="'+Et(t)+'"]';t==="image"&&a&&a.imageSrcSet?(l+='[imagesrcset="'+Et(a.imageSrcSet)+'"]',typeof a.imageSizes=="string"&&(l+='[imagesizes="'+Et(a.imageSizes)+'"]')):l+='[href="'+Et(e)+'"]';var u=l;switch(t){case"style":u=Ln(e);break;case"script":u=qn(e)}Mt.has(u)||(e=b({rel:"preload",href:t==="image"&&a&&a.imageSrcSet?void 0:e,as:t},a),Mt.set(u,e),n.querySelector(l)!==null||t==="style"&&n.querySelector(Ml(u))||t==="script"&&n.querySelector(Ol(u))||(t=n.createElement("link"),tt(t,"link",e),$e(t),n.head.appendChild(t)))}}function E1(e,t){ra.m(e,t);var a=Bn;if(a&&e){var n=t&&typeof t.as=="string"?t.as:"script",l='link[rel="modulepreload"][as="'+Et(n)+'"][href="'+Et(e)+'"]',u=l;switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":u=qn(e)}if(!Mt.has(u)&&(e=b({rel:"modulepreload",href:e},t),Mt.set(u,e),a.querySelector(l)===null)){switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(a.querySelector(Ol(u)))return}n=a.createElement("link"),tt(n,"link",e),$e(n),a.head.appendChild(n)}}}function N1(e,t,a){ra.S(e,t,a);var n=Bn;if(n&&e){var l=sn(n).hoistableStyles,u=Ln(e);t=t||"default";var f=l.get(u);if(!f){var m={loading:0,preload:null};if(f=n.querySelector(Ml(u)))m.loading=5;else{e=b({rel:"stylesheet",href:e,"data-precedence":t},a),(a=Mt.get(u))&&zc(e,a);var x=f=n.createElement("link");$e(x),tt(x,"link",e),x._p=new Promise(function(_,U){x.onload=_,x.onerror=U}),x.addEventListener("load",function(){m.loading|=1}),x.addEventListener("error",function(){m.loading|=2}),m.loading|=4,Pi(f,t,n)}f={type:"stylesheet",instance:f,count:1,state:m},l.set(u,f)}}}function T1(e,t){ra.X(e,t);var a=Bn;if(a&&e){var n=sn(a).hoistableScripts,l=qn(e),u=n.get(l);u||(u=a.querySelector(Ol(l)),u||(e=b({src:e,async:!0},t),(t=Mt.get(l))&&Mc(e,t),u=a.createElement("script"),$e(u),tt(u,"link",e),a.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(l,u))}}function w1(e,t){ra.M(e,t);var a=Bn;if(a&&e){var n=sn(a).hoistableScripts,l=qn(e),u=n.get(l);u||(u=a.querySelector(Ol(l)),u||(e=b({src:e,async:!0,type:"module"},t),(t=Mt.get(l))&&Mc(e,t),u=a.createElement("script"),$e(u),tt(u,"link",e),a.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},n.set(l,u))}}function Fd(e,t,a,n){var l=(l=oe.current)?Ii(l):null;if(!l)throw Error(o(446));switch(e){case"meta":case"title":return null;case"style":return typeof a.precedence=="string"&&typeof a.href=="string"?(t=Ln(a.href),a=sn(l).hoistableStyles,n=a.get(t),n||(n={type:"style",instance:null,count:0,state:null},a.set(t,n)),n):{type:"void",instance:null,count:0,state:null};case"link":if(a.rel==="stylesheet"&&typeof a.href=="string"&&typeof a.precedence=="string"){e=Ln(a.href);var u=sn(l).hoistableStyles,f=u.get(e);if(f||(l=l.ownerDocument||l,f={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},u.set(e,f),(u=l.querySelector(Ml(e)))&&!u._p&&(f.instance=u,f.state.loading=5),Mt.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},Mt.set(e,a),u||_1(l,e,a,f.state))),t&&n===null)throw Error(o(528,""));return f}if(t&&n!==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=qn(a),a=sn(l).hoistableScripts,n=a.get(t),n||(n={type:"script",instance:null,count:0,state:null},a.set(t,n)),n):{type:"void",instance:null,count:0,state:null};default:throw Error(o(444,e))}}function Ln(e){return'href="'+Et(e)+'"'}function Ml(e){return'link[rel="stylesheet"]['+e+"]"}function Wd(e){return b({},e,{"data-precedence":e.precedence,precedence:null})}function _1(e,t,a,n){e.querySelector('link[rel="preload"][as="style"]['+t+"]")?n.loading=1:(t=e.createElement("link"),n.preload=t,t.addEventListener("load",function(){return n.loading|=1}),t.addEventListener("error",function(){return n.loading|=2}),tt(t,"link",a),$e(t),e.head.appendChild(t))}function qn(e){return'[src="'+Et(e)+'"]'}function Ol(e){return"script[async]"+e}function Id(e,t,a){if(t.count++,t.instance===null)switch(t.type){case"style":var n=e.querySelector('style[data-href~="'+Et(a.href)+'"]');if(n)return t.instance=n,$e(n),n;var l=b({},a,{"data-href":a.href,"data-precedence":a.precedence,href:null,precedence:null});return n=(e.ownerDocument||e).createElement("style"),$e(n),tt(n,"style",l),Pi(n,a.precedence,e),t.instance=n;case"stylesheet":l=Ln(a.href);var u=e.querySelector(Ml(l));if(u)return t.state.loading|=4,t.instance=u,$e(u),u;n=Wd(a),(l=Mt.get(l))&&zc(n,l),u=(e.ownerDocument||e).createElement("link"),$e(u);var f=u;return f._p=new Promise(function(m,x){f.onload=m,f.onerror=x}),tt(u,"link",n),t.state.loading|=4,Pi(u,a.precedence,e),t.instance=u;case"script":return u=qn(a.src),(l=e.querySelector(Ol(u)))?(t.instance=l,$e(l),l):(n=a,(l=Mt.get(u))&&(n=b({},a),Mc(n,l)),e=e.ownerDocument||e,l=e.createElement("script"),$e(l),tt(l,"link",n),e.head.appendChild(l),t.instance=l);case"void":return null;default:throw Error(o(443,t.type))}else t.type==="stylesheet"&&(t.state.loading&4)===0&&(n=t.instance,t.state.loading|=4,Pi(n,a.precedence,e));return t.instance}function Pi(e,t,a){for(var n=a.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),l=n.length?n[n.length-1]:null,u=l,f=0;f<n.length;f++){var m=n[f];if(m.dataset.precedence===t)u=m;else if(u!==l)break}u?u.parentNode.insertBefore(e,u.nextSibling):(t=a.nodeType===9?a.head:a,t.insertBefore(e,t.firstChild))}function zc(e,t){e.crossOrigin==null&&(e.crossOrigin=t.crossOrigin),e.referrerPolicy==null&&(e.referrerPolicy=t.referrerPolicy),e.title==null&&(e.title=t.title)}function Mc(e,t){e.crossOrigin==null&&(e.crossOrigin=t.crossOrigin),e.referrerPolicy==null&&(e.referrerPolicy=t.referrerPolicy),e.integrity==null&&(e.integrity=t.integrity)}var eu=null;function Pd(e,t,a){if(eu===null){var n=new Map,l=eu=new Map;l.set(a,n)}else l=eu,n=l.get(a),n||(n=new Map,l.set(a,n));if(n.has(e))return n;for(n.set(e,null),a=a.getElementsByTagName(e),l=0;l<a.length;l++){var u=a[l];if(!(u[$n]||u[We]||e==="link"&&u.getAttribute("rel")==="stylesheet")&&u.namespaceURI!=="http://www.w3.org/2000/svg"){var f=u.getAttribute(t)||"";f=e+f;var m=n.get(f);m?m.push(u):n.set(f,[u])}}return n}function eh(e,t,a){e=e.ownerDocument||e,e.head.insertBefore(a,t==="title"?e.querySelector("head > title"):null)}function A1(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 th(e){return!(e.type==="stylesheet"&&(e.state.loading&3)===0)}function R1(e,t,a,n){if(a.type==="stylesheet"&&(typeof n.media!="string"||matchMedia(n.media).matches!==!1)&&(a.state.loading&4)===0){if(a.instance===null){var l=Ln(n.href),u=t.querySelector(Ml(l));if(u){t=u._p,t!==null&&typeof t=="object"&&typeof t.then=="function"&&(e.count++,e=tu.bind(e),t.then(e,e)),a.state.loading|=4,a.instance=u,$e(u);return}u=t.ownerDocument||t,n=Wd(n),(l=Mt.get(l))&&zc(n,l),u=u.createElement("link"),$e(u);var f=u;f._p=new Promise(function(m,x){f.onload=m,f.onerror=x}),tt(u,"link",n),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=tu.bind(e),t.addEventListener("load",a),t.addEventListener("error",a))}}var Oc=0;function z1(e,t){return e.stylesheets&&e.count===0&&nu(e,e.stylesheets),0<e.count||0<e.imgCount?function(a){var n=setTimeout(function(){if(e.stylesheets&&nu(e,e.stylesheets),e.unsuspend){var u=e.unsuspend;e.unsuspend=null,u()}},6e4+t);0<e.imgBytes&&Oc===0&&(Oc=62500*f1());var l=setTimeout(function(){if(e.waitingForImages=!1,e.count===0&&(e.stylesheets&&nu(e,e.stylesheets),e.unsuspend)){var u=e.unsuspend;e.unsuspend=null,u()}},(e.imgBytes>Oc?50:800)+t);return e.unsuspend=a,function(){e.unsuspend=null,clearTimeout(n),clearTimeout(l)}}:null}function tu(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)nu(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var au=null;function nu(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,au=new Map,t.forEach(M1,e),au=null,tu.call(e))}function M1(e,t){if(!(t.state.loading&4)){var a=au.get(e);if(a)var n=a.get(null);else{a=new Map,au.set(e,a);for(var l=e.querySelectorAll("link[data-precedence],style[data-precedence]"),u=0;u<l.length;u++){var f=l[u];(f.nodeName==="LINK"||f.getAttribute("media")!=="not all")&&(a.set(f.dataset.precedence,f),n=f)}n&&a.set(null,n)}l=t.instance,f=l.getAttribute("data-precedence"),u=a.get(f)||n,u===n&&a.set(null,l),a.set(f,l),this.count++,n=tu.bind(this),l.addEventListener("load",n),l.addEventListener("error",n),u?u.parentNode.insertBefore(l,u.nextSibling):(e=e.nodeType===9?e.head:e,e.insertBefore(l,e.firstChild)),t.state.loading|=4}}var Ul={$$typeof:W,Provider:null,Consumer:null,_currentValue:le,_currentValue2:le,_threadCount:0};function O1(e,t,a,n,l,u,f,m,x){this.tag=1,this.containerInfo=e,this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.next=this.pendingContext=this.context=this.cancelPendingCommit=null,this.callbackPriority=0,this.expirationTimes=_u(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=_u(0),this.hiddenUpdates=_u(null),this.identifierPrefix=n,this.onUncaughtError=l,this.onCaughtError=u,this.onRecoverableError=f,this.pooledCache=null,this.pooledCacheLanes=0,this.formState=x,this.incompleteTransitions=new Map}function ah(e,t,a,n,l,u,f,m,x,_,U,B){return e=new O1(e,t,a,f,x,_,U,B,m),t=1,u===!0&&(t|=24),u=vt(3,null,null,t),e.current=u,u.stateNode=e,t=ds(),t.refCount++,e.pooledCache=t,t.refCount++,u.memoizedState={element:n,isDehydrated:a,cache:t},vs(u),e}function nh(e){return e?(e=yn,e):yn}function lh(e,t,a,n,l,u){l=nh(l),n.context===null?n.context=l:n.pendingContext=l,n=ba(t),n.payload={element:a},u=u===void 0?null:u,u!==null&&(n.callback=u),a=xa(e,n,t),a!==null&&(ft(a,e,t),dl(a,e,t))}function ih(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var a=e.retryLane;e.retryLane=a!==0&&a<t?a:t}}function Uc(e,t){ih(e,t),(e=e.alternate)&&ih(e,t)}function uh(e){if(e.tag===13||e.tag===31){var t=Za(e,67108864);t!==null&&ft(t,e,67108864),Uc(e,67108864)}}function sh(e){if(e.tag===13||e.tag===31){var t=jt();t=Au(t);var a=Za(e,t);a!==null&&ft(a,e,t),Uc(e,t)}}var lu=!0;function U1(e,t,a,n){var l=D.T;D.T=null;var u=V.p;try{V.p=2,Dc(e,t,a,n)}finally{V.p=u,D.T=l}}function D1(e,t,a,n){var l=D.T;D.T=null;var u=V.p;try{V.p=8,Dc(e,t,a,n)}finally{V.p=u,D.T=l}}function Dc(e,t,a,n){if(lu){var l=kc(n);if(l===null)jc(e,t,n,iu,a),rh(e,n);else if(H1(l,e,t,a,n))n.stopPropagation();else if(rh(e,n),t&4&&-1<k1.indexOf(e)){for(;l!==null;){var u=un(l);if(u!==null)switch(u.tag){case 3:if(u=u.stateNode,u.current.memoizedState.isDehydrated){var f=Ba(u.pendingLanes);if(f!==0){var m=u;for(m.pendingLanes|=2,m.entangledLanes|=2;f;){var x=1<<31-mt(f);m.entanglements[1]|=x,f&=~x}Xt(u),(xe&6)===0&&(Yi=dt()+500,_l(0))}}break;case 31:case 13:m=Za(u,2),m!==null&&ft(m,u,2),Zi(),Uc(u,2)}if(u=kc(n),u===null&&jc(e,t,n,iu,a),u===l)break;l=u}l!==null&&n.stopPropagation()}else jc(e,t,n,null,a)}}function kc(e){return e=Bu(e),Hc(e)}var iu=null;function Hc(e){if(iu=null,e=ln(e),e!==null){var t=h(e);if(t===null)e=null;else{var a=t.tag;if(a===13){if(e=g(t),e!==null)return e;e=null}else if(a===31){if(e=j(t),e!==null)return e;e=null}else if(a===3){if(t.stateNode.current.memoizedState.isDehydrated)return t.tag===3?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null)}}return iu=e,null}function ch(e){switch(e){case"beforetoggle":case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"toggle":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 2;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 8;case"message":switch(jm()){case mr:return 2;case pr:return 8;case Kl:case Sm:return 32;case vr:return 268435456;default:return 32}default:return 32}}var Bc=!1,za=null,Ma=null,Oa=null,Dl=new Map,kl=new Map,Ua=[],k1="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset".split(" ");function rh(e,t){switch(e){case"focusin":case"focusout":za=null;break;case"dragenter":case"dragleave":Ma=null;break;case"mouseover":case"mouseout":Oa=null;break;case"pointerover":case"pointerout":Dl.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":kl.delete(t.pointerId)}}function Hl(e,t,a,n,l,u){return e===null||e.nativeEvent!==u?(e={blockedOn:t,domEventName:a,eventSystemFlags:n,nativeEvent:u,targetContainers:[l]},t!==null&&(t=un(t),t!==null&&uh(t)),e):(e.eventSystemFlags|=n,t=e.targetContainers,l!==null&&t.indexOf(l)===-1&&t.push(l),e)}function H1(e,t,a,n,l){switch(t){case"focusin":return za=Hl(za,e,t,a,n,l),!0;case"dragenter":return Ma=Hl(Ma,e,t,a,n,l),!0;case"mouseover":return Oa=Hl(Oa,e,t,a,n,l),!0;case"pointerover":var u=l.pointerId;return Dl.set(u,Hl(Dl.get(u)||null,e,t,a,n,l)),!0;case"gotpointercapture":return u=l.pointerId,kl.set(u,Hl(kl.get(u)||null,e,t,a,n,l)),!0}return!1}function oh(e){var t=ln(e.target);if(t!==null){var a=h(t);if(a!==null){if(t=a.tag,t===13){if(t=g(a),t!==null){e.blockedOn=t,Sr(e.priority,function(){sh(a)});return}}else if(t===31){if(t=j(a),t!==null){e.blockedOn=t,Sr(e.priority,function(){sh(a)});return}}else if(t===3&&a.stateNode.current.memoizedState.isDehydrated){e.blockedOn=a.tag===3?a.stateNode.containerInfo:null;return}}}e.blockedOn=null}function uu(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var a=kc(e.nativeEvent);if(a===null){a=e.nativeEvent;var n=new a.constructor(a.type,a);Hu=n,a.target.dispatchEvent(n),Hu=null}else return t=un(a),t!==null&&uh(t),e.blockedOn=a,!1;t.shift()}return!0}function fh(e,t,a){uu(e)&&a.delete(t)}function B1(){Bc=!1,za!==null&&uu(za)&&(za=null),Ma!==null&&uu(Ma)&&(Ma=null),Oa!==null&&uu(Oa)&&(Oa=null),Dl.forEach(fh),kl.forEach(fh)}function su(e,t){e.blockedOn===t&&(e.blockedOn=null,Bc||(Bc=!0,i.unstable_scheduleCallback(i.unstable_NormalPriority,B1)))}var cu=null;function dh(e){cu!==e&&(cu=e,i.unstable_scheduleCallback(i.unstable_NormalPriority,function(){cu===e&&(cu=null);for(var t=0;t<e.length;t+=3){var a=e[t],n=e[t+1],l=e[t+2];if(typeof n!="function"){if(Hc(n||a)===null)continue;break}var u=un(a);u!==null&&(e.splice(t,3),t-=3,ks(u,{pending:!0,data:l,method:a.method,action:n},n,l))}}))}function Yn(e){function t(x){return su(x,e)}za!==null&&su(za,e),Ma!==null&&su(Ma,e),Oa!==null&&su(Oa,e),Dl.forEach(t),kl.forEach(t);for(var a=0;a<Ua.length;a++){var n=Ua[a];n.blockedOn===e&&(n.blockedOn=null)}for(;0<Ua.length&&(a=Ua[0],a.blockedOn===null);)oh(a),a.blockedOn===null&&Ua.shift();if(a=(e.ownerDocument||e).$$reactFormReplay,a!=null)for(n=0;n<a.length;n+=3){var l=a[n],u=a[n+1],f=l[it]||null;if(typeof u=="function")f||dh(a);else if(f){var m=null;if(u&&u.hasAttribute("formAction")){if(l=u,f=u[it]||null)m=f.formAction;else if(Hc(l)!==null)continue}else m=f.action;typeof m=="function"?a[n+1]=m:(a.splice(n,3),n-=3),dh(a)}}}function hh(){function e(u){u.canIntercept&&u.info==="react-transition"&&u.intercept({handler:function(){return new Promise(function(f){return l=f})},focusReset:"manual",scroll:"manual"})}function t(){l!==null&&(l(),l=null),n||setTimeout(a,20)}function a(){if(!n&&!navigation.transition){var u=navigation.currentEntry;u&&u.url!=null&&navigation.navigate(u.url,{state:u.getState(),info:"react-transition",history:"replace"})}}if(typeof navigation=="object"){var n=!1,l=null;return navigation.addEventListener("navigate",e),navigation.addEventListener("navigatesuccess",t),navigation.addEventListener("navigateerror",t),setTimeout(a,100),function(){n=!0,navigation.removeEventListener("navigate",e),navigation.removeEventListener("navigatesuccess",t),navigation.removeEventListener("navigateerror",t),l!==null&&(l(),l=null)}}}function Lc(e){this._internalRoot=e}ru.prototype.render=Lc.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(o(409));var a=t.current,n=jt();lh(a,n,e,t,null,null)},ru.prototype.unmount=Lc.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var t=e.containerInfo;lh(e.current,2,null,e,null,null),Zi(),t[nn]=null}};function ru(e){this._internalRoot=e}ru.prototype.unstable_scheduleHydration=function(e){if(e){var t=jr();e={blockedOn:null,target:e,priority:t};for(var a=0;a<Ua.length&&t!==0&&t<Ua[a].priority;a++);Ua.splice(a,0,e),a===0&&oh(e)}};var mh=c.version;if(mh!=="19.2.5")throw Error(o(527,mh,"19.2.5"));V.findDOMNode=function(e){var t=e._reactInternals;if(t===void 0)throw typeof e.render=="function"?Error(o(188)):(e=Object.keys(e).join(","),Error(o(268,e)));return e=p(t),e=e!==null?y(e):null,e=e===null?null:e.stateNode,e};var L1={bundleType:0,version:"19.2.5",rendererPackageName:"react-dom",currentDispatcherRef:D,reconcilerVersion:"19.2.5"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var ou=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!ou.isDisabled&&ou.supportsFiber)try{Qn=ou.inject(L1),ht=ou}catch{}}return Ll.createRoot=function(e,t){if(!d(e))throw Error(o(299));var a=!1,n="",l=jf,u=Sf,f=Cf;return t!=null&&(t.unstable_strictMode===!0&&(a=!0),t.identifierPrefix!==void 0&&(n=t.identifierPrefix),t.onUncaughtError!==void 0&&(l=t.onUncaughtError),t.onCaughtError!==void 0&&(u=t.onCaughtError),t.onRecoverableError!==void 0&&(f=t.onRecoverableError)),t=ah(e,1,!1,null,null,a,n,null,l,u,f,hh),e[nn]=t.current,xc(e),new Lc(t)},Ll.hydrateRoot=function(e,t,a){if(!d(e))throw Error(o(299));var n=!1,l="",u=jf,f=Sf,m=Cf,x=null;return a!=null&&(a.unstable_strictMode===!0&&(n=!0),a.identifierPrefix!==void 0&&(l=a.identifierPrefix),a.onUncaughtError!==void 0&&(u=a.onUncaughtError),a.onCaughtError!==void 0&&(f=a.onCaughtError),a.onRecoverableError!==void 0&&(m=a.onRecoverableError),a.formState!==void 0&&(x=a.formState)),t=ah(e,1,!0,t,a??null,n,l,x,u,f,m,hh),t.context=nh(null),a=t.current,n=jt(),n=Au(n),l=ba(n),l.callback=null,xa(a,l,n),a=n,t.current.lanes=a,Kn(t,a),Xt(t),e[nn]=t.current,xc(e),new ru(t)},Ll.version="19.2.5",Ll}var Eh;function $1(){if(Eh)return Gc.exports;Eh=1;function i(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(i)}catch(c){console.error(c)}}return i(),Gc.exports=K1(),Gc.exports}var F1=$1();/**
50
+ * react-router v7.14.2
51
+ *
52
+ * Copyright (c) Remix Software Inc.
53
+ *
54
+ * This source code is licensed under the MIT license found in the
55
+ * LICENSE.md file in the root directory of this source tree.
56
+ *
57
+ * @license MIT
58
+ */var Nh="popstate";function Th(i){return typeof i=="object"&&i!=null&&"pathname"in i&&"search"in i&&"hash"in i&&"state"in i&&"key"in i}function W1(i={}){function c(o,d){var p;let h=(p=d.state)==null?void 0:p.masked,{pathname:g,search:j,hash:v}=h||o.location;return Pc("",{pathname:g,search:j,hash:v},d.state&&d.state.usr||null,d.state&&d.state.key||"default",h?{pathname:o.location.pathname,search:o.location.search,hash:o.location.hash}:void 0)}function r(o,d){return typeof d=="string"?d:Gl(d)}return P1(c,r,null,i)}function De(i,c){if(i===!1||i===null||typeof i>"u")throw new Error(c)}function qt(i,c){if(!i){typeof console<"u"&&console.warn(c);try{throw new Error(c)}catch{}}}function I1(){return Math.random().toString(36).substring(2,10)}function wh(i,c){return{usr:i.state,key:i.key,idx:c,masked:i.unstable_mask?{pathname:i.pathname,search:i.search,hash:i.hash}:void 0}}function Pc(i,c,r=null,o,d){return{pathname:typeof i=="string"?i:i.pathname,search:"",hash:"",...typeof c=="string"?Zn(c):c,state:r,key:c&&c.key||o||I1(),unstable_mask:d}}function Gl({pathname:i="/",search:c="",hash:r=""}){return c&&c!=="?"&&(i+=c.charAt(0)==="?"?c:"?"+c),r&&r!=="#"&&(i+=r.charAt(0)==="#"?r:"#"+r),i}function Zn(i){let c={};if(i){let r=i.indexOf("#");r>=0&&(c.hash=i.substring(r),i=i.substring(0,r));let o=i.indexOf("?");o>=0&&(c.search=i.substring(o),i=i.substring(0,o)),i&&(c.pathname=i)}return c}function P1(i,c,r,o={}){let{window:d=document.defaultView,v5Compat:h=!1}=o,g=d.history,j="POP",v=null,p=y();p==null&&(p=0,g.replaceState({...g.state,idx:p},""));function y(){return(g.state||{idx:null}).idx}function b(){j="POP";let X=y(),Z=X==null?null:X-p;p=X,v&&v({action:j,location:q.location,delta:Z})}function z(X,Z){j="PUSH";let P=Th(X)?X:Pc(q.location,X,Z);p=y()+1;let W=wh(P,p),ue=q.createHref(P.unstable_mask||P);try{g.pushState(W,"",ue)}catch(K){if(K instanceof DOMException&&K.name==="DataCloneError")throw K;d.location.assign(ue)}h&&v&&v({action:j,location:q.location,delta:1})}function R(X,Z){j="REPLACE";let P=Th(X)?X:Pc(q.location,X,Z);p=y();let W=wh(P,p),ue=q.createHref(P.unstable_mask||P);g.replaceState(W,"",ue),h&&v&&v({action:j,location:q.location,delta:0})}function k(X){return ev(X)}let q={get action(){return j},get location(){return i(d,g)},listen(X){if(v)throw new Error("A history only accepts one active listener");return d.addEventListener(Nh,b),v=X,()=>{d.removeEventListener(Nh,b),v=null}},createHref(X){return c(d,X)},createURL:k,encodeLocation(X){let Z=k(X);return{pathname:Z.pathname,search:Z.search,hash:Z.hash}},push:z,replace:R,go(X){return g.go(X)}};return q}function ev(i,c=!1){let r="http://localhost";typeof window<"u"&&(r=window.location.origin!=="null"?window.location.origin:window.location.href),De(r,"No window.location.(origin|href) available to create URL");let o=typeof i=="string"?i:Gl(i);return o=o.replace(/ $/,"%20"),!c&&o.startsWith("//")&&(o=r+o),new URL(o,r)}function Bh(i,c,r="/"){return tv(i,c,r,!1)}function tv(i,c,r,o){let d=typeof c=="string"?Zn(c):c,h=oa(d.pathname||"/",r);if(h==null)return null;let g=Lh(i);av(g);let j=null;for(let v=0;j==null&&v<g.length;++v){let p=hv(h);j=fv(g[v],p,o)}return j}function Lh(i,c=[],r=[],o="",d=!1){let h=(g,j,v=d,p)=>{let y={relativePath:p===void 0?g.path||"":p,caseSensitive:g.caseSensitive===!0,childrenIndex:j,route:g};if(y.relativePath.startsWith("/")){if(!y.relativePath.startsWith(o)&&v)return;De(y.relativePath.startsWith(o),`Absolute route path "${y.relativePath}" nested under path "${o}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),y.relativePath=y.relativePath.slice(o.length)}let b=Lt([o,y.relativePath]),z=r.concat(y);g.children&&g.children.length>0&&(De(g.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${b}".`),Lh(g.children,c,z,b,v)),!(g.path==null&&!g.index)&&c.push({path:b,score:rv(b,g.index),routesMeta:z})};return i.forEach((g,j)=>{var v;if(g.path===""||!((v=g.path)!=null&&v.includes("?")))h(g,j);else for(let p of qh(g.path))h(g,j,!0,p)}),c}function qh(i){let c=i.split("/");if(c.length===0)return[];let[r,...o]=c,d=r.endsWith("?"),h=r.replace(/\?$/,"");if(o.length===0)return d?[h,""]:[h];let g=qh(o.join("/")),j=[];return j.push(...g.map(v=>v===""?h:[h,v].join("/"))),d&&j.push(...g),j.map(v=>i.startsWith("/")&&v===""?"/":v)}function av(i){i.sort((c,r)=>c.score!==r.score?r.score-c.score:ov(c.routesMeta.map(o=>o.childrenIndex),r.routesMeta.map(o=>o.childrenIndex)))}var nv=/^:[\w-]+$/,lv=3,iv=2,uv=1,sv=10,cv=-2,_h=i=>i==="*";function rv(i,c){let r=i.split("/"),o=r.length;return r.some(_h)&&(o+=cv),c&&(o+=iv),r.filter(d=>!_h(d)).reduce((d,h)=>d+(nv.test(h)?lv:h===""?uv:sv),o)}function ov(i,c){return i.length===c.length&&i.slice(0,-1).every((o,d)=>o===c[d])?i[i.length-1]-c[c.length-1]:0}function fv(i,c,r=!1){let{routesMeta:o}=i,d={},h="/",g=[];for(let j=0;j<o.length;++j){let v=o[j],p=j===o.length-1,y=h==="/"?c:c.slice(h.length)||"/",b=pu({path:v.relativePath,caseSensitive:v.caseSensitive,end:p},y),z=v.route;if(!b&&p&&r&&!o[o.length-1].route.index&&(b=pu({path:v.relativePath,caseSensitive:v.caseSensitive,end:!1},y)),!b)return null;Object.assign(d,b.params),g.push({params:d,pathname:Lt([h,b.pathname]),pathnameBase:yv(Lt([h,b.pathnameBase])),route:z}),b.pathnameBase!=="/"&&(h=Lt([h,b.pathnameBase]))}return g}function pu(i,c){typeof i=="string"&&(i={path:i,caseSensitive:!1,end:!0});let[r,o]=dv(i.path,i.caseSensitive,i.end),d=c.match(r);if(!d)return null;let h=d[0],g=h.replace(/(.)\/+$/,"$1"),j=d.slice(1);return{params:o.reduce((p,{paramName:y,isOptional:b},z)=>{if(y==="*"){let k=j[z]||"";g=h.slice(0,h.length-k.length).replace(/(.)\/+$/,"$1")}const R=j[z];return b&&!R?p[y]=void 0:p[y]=(R||"").replace(/%2F/g,"/"),p},{}),pathname:h,pathnameBase:g,pattern:i}}function dv(i,c=!1,r=!0){qt(i==="*"||!i.endsWith("*")||i.endsWith("/*"),`Route path "${i}" will be treated as if it were "${i.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${i.replace(/\*$/,"/*")}".`);let o=[],d="^"+i.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(g,j,v,p,y)=>{if(o.push({paramName:j,isOptional:v!=null}),v){let b=y.charAt(p+g.length);return b&&b!=="/"?"/([^\\/]*)":"(?:/([^\\/]*))?"}return"/([^\\/]+)"}).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return i.endsWith("*")?(o.push({paramName:"*"}),d+=i==="*"||i==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):r?d+="\\/*$":i!==""&&i!=="/"&&(d+="(?:(?=\\/|$))"),[new RegExp(d,c?void 0:"i"),o]}function hv(i){try{return i.split("/").map(c=>decodeURIComponent(c).replace(/\//g,"%2F")).join("/")}catch(c){return qt(!1,`The URL path "${i}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${c}).`),i}}function oa(i,c){if(c==="/")return i;if(!i.toLowerCase().startsWith(c.toLowerCase()))return null;let r=c.endsWith("/")?c.length-1:c.length,o=i.charAt(r);return o&&o!=="/"?null:i.slice(r)||"/"}var mv=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i;function pv(i,c="/"){let{pathname:r,search:o="",hash:d=""}=typeof i=="string"?Zn(i):i,h;return r?(r=Gh(r),r.startsWith("/")?h=Ah(r.substring(1),"/"):h=Ah(r,c)):h=c,{pathname:h,search:gv(o),hash:bv(d)}}function Ah(i,c){let r=vu(c).split("/");return i.split("/").forEach(d=>{d===".."?r.length>1&&r.pop():d!=="."&&r.push(d)}),r.length>1?r.join("/"):"/"}function Qc(i,c,r,o){return`Cannot include a '${i}' character in a manually specified \`to.${c}\` field [${JSON.stringify(o)}]. Please separate it out to the \`to.${r}\` field. Alternatively you may provide the full path as a string in <Link to="..."> and the router will parse it for you.`}function vv(i){return i.filter((c,r)=>r===0||c.route.path&&c.route.path.length>0)}function Yh(i){let c=vv(i);return c.map((r,o)=>o===c.length-1?r.pathname:r.pathnameBase)}function nr(i,c,r,o=!1){let d;typeof i=="string"?d=Zn(i):(d={...i},De(!d.pathname||!d.pathname.includes("?"),Qc("?","pathname","search",d)),De(!d.pathname||!d.pathname.includes("#"),Qc("#","pathname","hash",d)),De(!d.search||!d.search.includes("#"),Qc("#","search","hash",d)));let h=i===""||d.pathname==="",g=h?"/":d.pathname,j;if(g==null)j=r;else{let b=c.length-1;if(!o&&g.startsWith("..")){let z=g.split("/");for(;z[0]==="..";)z.shift(),b-=1;d.pathname=z.join("/")}j=b>=0?c[b]:"/"}let v=pv(d,j),p=g&&g!=="/"&&g.endsWith("/"),y=(h||g===".")&&r.endsWith("/");return!v.pathname.endsWith("/")&&(p||y)&&(v.pathname+="/"),v}var Gh=i=>i.replace(/\/\/+/g,"/"),Lt=i=>Gh(i.join("/")),vu=i=>i.replace(/\/+$/,""),yv=i=>vu(i).replace(/^\/*/,"/"),gv=i=>!i||i==="?"?"":i.startsWith("?")?i:"?"+i,bv=i=>!i||i==="#"?"":i.startsWith("#")?i:"#"+i,xv=class{constructor(i,c,r,o=!1){this.status=i,this.statusText=c||"",this.internal=o,r instanceof Error?(this.data=r.toString(),this.error=r):this.data=r}};function jv(i){return i!=null&&typeof i.status=="number"&&typeof i.statusText=="string"&&typeof i.internal=="boolean"&&"data"in i}function Sv(i){let c=i.map(r=>r.route.path).filter(Boolean);return Lt(c)||"/"}var Zh=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u";function Xh(i,c){let r=i;if(typeof r!="string"||!mv.test(r))return{absoluteURL:void 0,isExternal:!1,to:r};let o=r,d=!1;if(Zh)try{let h=new URL(window.location.href),g=r.startsWith("//")?new URL(h.protocol+r):new URL(r),j=oa(g.pathname,c);g.origin===h.origin&&j!=null?r=j+g.search+g.hash:d=!0}catch{qt(!1,`<Link to="${r}"> contains an invalid URL which will probably break when clicked - please update to a valid URL path.`)}return{absoluteURL:o,isExternal:d,to:r}}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var Vh=["POST","PUT","PATCH","DELETE"];new Set(Vh);var Cv=["GET",...Vh];new Set(Cv);var Xn=C.createContext(null);Xn.displayName="DataRouter";var bu=C.createContext(null);bu.displayName="DataRouterState";var Qh=C.createContext(!1);function Ev(){return C.useContext(Qh)}var Jh=C.createContext({isTransitioning:!1});Jh.displayName="ViewTransition";var Nv=C.createContext(new Map);Nv.displayName="Fetchers";var Tv=C.createContext(null);Tv.displayName="Await";var Ut=C.createContext(null);Ut.displayName="Navigation";var Xl=C.createContext(null);Xl.displayName="Location";var Vt=C.createContext({outlet:null,matches:[],isDataRoute:!1});Vt.displayName="Route";var lr=C.createContext(null);lr.displayName="RouteError";var Kh="REACT_ROUTER_ERROR",wv="REDIRECT",_v="ROUTE_ERROR_RESPONSE";function Av(i){if(i.startsWith(`${Kh}:${wv}:{`))try{let c=JSON.parse(i.slice(28));if(typeof c=="object"&&c&&typeof c.status=="number"&&typeof c.statusText=="string"&&typeof c.location=="string"&&typeof c.reloadDocument=="boolean"&&typeof c.replace=="boolean")return c}catch{}}function Rv(i){if(i.startsWith(`${Kh}:${_v}:{`))try{let c=JSON.parse(i.slice(40));if(typeof c=="object"&&c&&typeof c.status=="number"&&typeof c.statusText=="string")return new xv(c.status,c.statusText,c.data)}catch{}}function zv(i,{relative:c}={}){De(Vl(),"useHref() may be used only in the context of a <Router> component.");let{basename:r,navigator:o}=C.useContext(Ut),{hash:d,pathname:h,search:g}=Ql(i,{relative:c}),j=h;return r!=="/"&&(j=h==="/"?r:Lt([r,h])),o.createHref({pathname:j,search:g,hash:d})}function Vl(){return C.useContext(Xl)!=null}function Dt(){return De(Vl(),"useLocation() may be used only in the context of a <Router> component."),C.useContext(Xl).location}var $h="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function Fh(i){C.useContext(Ut).static||C.useLayoutEffect(i)}function ir(){let{isDataRoute:i}=C.useContext(Vt);return i?Xv():Mv()}function Mv(){De(Vl(),"useNavigate() may be used only in the context of a <Router> component.");let i=C.useContext(Xn),{basename:c,navigator:r}=C.useContext(Ut),{matches:o}=C.useContext(Vt),{pathname:d}=Dt(),h=JSON.stringify(Yh(o)),g=C.useRef(!1);return Fh(()=>{g.current=!0}),C.useCallback((v,p={})=>{if(qt(g.current,$h),!g.current)return;if(typeof v=="number"){r.go(v);return}let y=nr(v,JSON.parse(h),d,p.relative==="path");i==null&&c!=="/"&&(y.pathname=y.pathname==="/"?c:Lt([c,y.pathname])),(p.replace?r.replace:r.push)(y,p.state,p)},[c,r,h,d,i])}C.createContext(null);function Wh(){let{matches:i}=C.useContext(Vt),c=i[i.length-1];return(c==null?void 0:c.params)??{}}function Ql(i,{relative:c}={}){let{matches:r}=C.useContext(Vt),{pathname:o}=Dt(),d=JSON.stringify(Yh(r));return C.useMemo(()=>nr(i,JSON.parse(d),o,c==="path"),[i,d,o,c])}function Ov(i,c){return Ih(i,c)}function Ih(i,c,r){var X;De(Vl(),"useRoutes() may be used only in the context of a <Router> component.");let{navigator:o}=C.useContext(Ut),{matches:d}=C.useContext(Vt),h=d[d.length-1],g=h?h.params:{},j=h?h.pathname:"/",v=h?h.pathnameBase:"/",p=h&&h.route;{let Z=p&&p.path||"";em(j,!p||Z.endsWith("*")||Z.endsWith("*?"),`You rendered descendant <Routes> (or called \`useRoutes()\`) at "${j}" (under <Route path="${Z}">) 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.
59
+
60
+ Please change the parent <Route path="${Z}"> to <Route path="${Z==="/"?"*":`${Z}/*`}">.`)}let y=Dt(),b;if(c){let Z=typeof c=="string"?Zn(c):c;De(v==="/"||((X=Z.pathname)==null?void 0:X.startsWith(v)),`When overriding the location using \`<Routes location>\` 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 "${Z.pathname}" was given in the \`location\` prop.`),b=Z}else b=y;let z=b.pathname||"/",R=z;if(v!=="/"){let Z=v.replace(/^\//,"").split("/");R="/"+z.replace(/^\//,"").split("/").slice(Z.length).join("/")}let k=Bh(i,{pathname:R});qt(p||k!=null,`No routes matched location "${b.pathname}${b.search}${b.hash}" `),qt(k==null||k[k.length-1].route.element!==void 0||k[k.length-1].route.Component!==void 0||k[k.length-1].route.lazy!==void 0,`Matched leaf route at location "${b.pathname}${b.search}${b.hash}" does not have an element or Component. This means it will render an <Outlet /> with a null value by default resulting in an "empty" page.`);let q=Bv(k&&k.map(Z=>Object.assign({},Z,{params:Object.assign({},g,Z.params),pathname:Lt([v,o.encodeLocation?o.encodeLocation(Z.pathname.replace(/%/g,"%25").replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:Z.pathname]),pathnameBase:Z.pathnameBase==="/"?v:Lt([v,o.encodeLocation?o.encodeLocation(Z.pathnameBase.replace(/%/g,"%25").replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:Z.pathnameBase])})),d,r);return c&&q?C.createElement(Xl.Provider,{value:{location:{pathname:"/",search:"",hash:"",state:null,key:"default",unstable_mask:void 0,...b},navigationType:"POP"}},q):q}function Uv(){let i=Zv(),c=jv(i)?`${i.status} ${i.statusText}`:i instanceof Error?i.message:JSON.stringify(i),r=i instanceof Error?i.stack:null,o="rgba(200,200,200, 0.5)",d={padding:"0.5rem",backgroundColor:o},h={padding:"2px 4px",backgroundColor:o},g=null;return console.error("Error handled by React Router default ErrorBoundary:",i),g=C.createElement(C.Fragment,null,C.createElement("p",null,"💿 Hey developer 👋"),C.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",C.createElement("code",{style:h},"ErrorBoundary")," or"," ",C.createElement("code",{style:h},"errorElement")," prop on your route.")),C.createElement(C.Fragment,null,C.createElement("h2",null,"Unexpected Application Error!"),C.createElement("h3",{style:{fontStyle:"italic"}},c),r?C.createElement("pre",{style:d},r):null,g)}var Dv=C.createElement(Uv,null),Ph=class extends C.Component{constructor(i){super(i),this.state={location:i.location,revalidation:i.revalidation,error:i.error}}static getDerivedStateFromError(i){return{error:i}}static getDerivedStateFromProps(i,c){return c.location!==i.location||c.revalidation!=="idle"&&i.revalidation==="idle"?{error:i.error,location:i.location,revalidation:i.revalidation}:{error:i.error!==void 0?i.error:c.error,location:c.location,revalidation:i.revalidation||c.revalidation}}componentDidCatch(i,c){this.props.onError?this.props.onError(i,c):console.error("React Router caught the following error during render",i)}render(){let i=this.state.error;if(this.context&&typeof i=="object"&&i&&"digest"in i&&typeof i.digest=="string"){const r=Rv(i.digest);r&&(i=r)}let c=i!==void 0?C.createElement(Vt.Provider,{value:this.props.routeContext},C.createElement(lr.Provider,{value:i,children:this.props.component})):this.props.children;return this.context?C.createElement(kv,{error:i},c):c}};Ph.contextType=Qh;var Jc=new WeakMap;function kv({children:i,error:c}){let{basename:r}=C.useContext(Ut);if(typeof c=="object"&&c&&"digest"in c&&typeof c.digest=="string"){let o=Av(c.digest);if(o){let d=Jc.get(c);if(d)throw d;let h=Xh(o.location,r);if(Zh&&!Jc.get(c))if(h.isExternal||o.reloadDocument)window.location.href=h.absoluteURL||h.to;else{const g=Promise.resolve().then(()=>window.__reactRouterDataRouter.navigate(h.to,{replace:o.replace}));throw Jc.set(c,g),g}return C.createElement("meta",{httpEquiv:"refresh",content:`0;url=${h.absoluteURL||h.to}`})}}return i}function Hv({routeContext:i,match:c,children:r}){let o=C.useContext(Xn);return o&&o.static&&o.staticContext&&(c.route.errorElement||c.route.ErrorBoundary)&&(o.staticContext._deepestRenderedBoundaryId=c.route.id),C.createElement(Vt.Provider,{value:i},r)}function Bv(i,c=[],r){let o=r==null?void 0:r.state;if(i==null){if(!o)return null;if(o.errors)i=o.matches;else if(c.length===0&&!o.initialized&&o.matches.length>0)i=o.matches;else return null}let d=i,h=o==null?void 0:o.errors;if(h!=null){let y=d.findIndex(b=>b.route.id&&(h==null?void 0:h[b.route.id])!==void 0);De(y>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(h).join(",")}`),d=d.slice(0,Math.min(d.length,y+1))}let g=!1,j=-1;if(r&&o){g=o.renderFallback;for(let y=0;y<d.length;y++){let b=d[y];if((b.route.HydrateFallback||b.route.hydrateFallbackElement)&&(j=y),b.route.id){let{loaderData:z,errors:R}=o,k=b.route.loader&&!z.hasOwnProperty(b.route.id)&&(!R||R[b.route.id]===void 0);if(b.route.lazy||k){r.isStatic&&(g=!0),j>=0?d=d.slice(0,j+1):d=[d[0]];break}}}}let v=r==null?void 0:r.onError,p=o&&v?(y,b)=>{var z,R;v(y,{location:o.location,params:((R=(z=o.matches)==null?void 0:z[0])==null?void 0:R.params)??{},unstable_pattern:Sv(o.matches),errorInfo:b})}:void 0;return d.reduceRight((y,b,z)=>{let R,k=!1,q=null,X=null;o&&(R=h&&b.route.id?h[b.route.id]:void 0,q=b.route.errorElement||Dv,g&&(j<0&&z===0?(em("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),k=!0,X=null):j===z&&(k=!0,X=b.route.hydrateFallbackElement||null)));let Z=c.concat(d.slice(0,z+1)),P=()=>{let W;return R?W=q:k?W=X:b.route.Component?W=C.createElement(b.route.Component,null):b.route.element?W=b.route.element:W=y,C.createElement(Hv,{match:b,routeContext:{outlet:y,matches:Z,isDataRoute:o!=null},children:W})};return o&&(b.route.ErrorBoundary||b.route.errorElement||z===0)?C.createElement(Ph,{location:o.location,revalidation:o.revalidation,component:q,error:R,children:P(),routeContext:{outlet:null,matches:Z,isDataRoute:!0},onError:p}):P()},null)}function ur(i){return`${i} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function Lv(i){let c=C.useContext(Xn);return De(c,ur(i)),c}function qv(i){let c=C.useContext(bu);return De(c,ur(i)),c}function Yv(i){let c=C.useContext(Vt);return De(c,ur(i)),c}function sr(i){let c=Yv(i),r=c.matches[c.matches.length-1];return De(r.route.id,`${i} can only be used on routes that contain a unique "id"`),r.route.id}function Gv(){return sr("useRouteId")}function Zv(){var o;let i=C.useContext(lr),c=qv("useRouteError"),r=sr("useRouteError");return i!==void 0?i:(o=c.errors)==null?void 0:o[r]}function Xv(){let{router:i}=Lv("useNavigate"),c=sr("useNavigate"),r=C.useRef(!1);return Fh(()=>{r.current=!0}),C.useCallback(async(d,h={})=>{qt(r.current,$h),r.current&&(typeof d=="number"?await i.navigate(d):await i.navigate(d,{fromRouteId:c,...h}))},[i,c])}var Rh={};function em(i,c,r){!c&&!Rh[i]&&(Rh[i]=!0,qt(!1,r))}C.memo(Vv);function Vv({routes:i,future:c,state:r,isStatic:o,onError:d}){return Ih(i,void 0,{state:r,isStatic:o,onError:d})}function Ot(i){De(!1,"A <Route> is only ever to be used as the child of <Routes> element, never rendered directly. Please wrap your <Route> in a <Routes>.")}function Qv({basename:i="/",children:c=null,location:r,navigationType:o="POP",navigator:d,static:h=!1,unstable_useTransitions:g}){De(!Vl(),"You cannot render a <Router> inside another <Router>. You should never have more than one in your app.");let j=i.replace(/^\/*/,"/"),v=C.useMemo(()=>({basename:j,navigator:d,static:h,unstable_useTransitions:g,future:{}}),[j,d,h,g]);typeof r=="string"&&(r=Zn(r));let{pathname:p="/",search:y="",hash:b="",state:z=null,key:R="default",unstable_mask:k}=r,q=C.useMemo(()=>{let X=oa(p,j);return X==null?null:{location:{pathname:X,search:y,hash:b,state:z,key:R,unstable_mask:k},navigationType:o}},[j,p,y,b,z,R,o,k]);return qt(q!=null,`<Router basename="${j}"> is not able to match the URL "${p}${y}${b}" because it does not start with the basename, so the <Router> won't render anything.`),q==null?null:C.createElement(Ut.Provider,{value:v},C.createElement(Xl.Provider,{children:c,value:q}))}function Jv({children:i,location:c}){return Ov(er(i),c)}function er(i,c=[]){let r=[];return C.Children.forEach(i,(o,d)=>{if(!C.isValidElement(o))return;let h=[...c,d];if(o.type===C.Fragment){r.push.apply(r,er(o.props.children,h));return}De(o.type===Ot,`[${typeof o.type=="string"?o.type:o.type.name}] is not a <Route> component. All component children of <Routes> must be a <Route> or <React.Fragment>`),De(!o.props.index||!o.props.children,"An index route cannot have child routes.");let g={id:o.props.id||h.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&&(g.children=er(o.props.children,h)),r.push(g)}),r}var hu="get",mu="application/x-www-form-urlencoded";function xu(i){return typeof HTMLElement<"u"&&i instanceof HTMLElement}function Kv(i){return xu(i)&&i.tagName.toLowerCase()==="button"}function $v(i){return xu(i)&&i.tagName.toLowerCase()==="form"}function Fv(i){return xu(i)&&i.tagName.toLowerCase()==="input"}function Wv(i){return!!(i.metaKey||i.altKey||i.ctrlKey||i.shiftKey)}function Iv(i,c){return i.button===0&&(!c||c==="_self")&&!Wv(i)}function tr(i=""){return new URLSearchParams(typeof i=="string"||Array.isArray(i)||i instanceof URLSearchParams?i:Object.keys(i).reduce((c,r)=>{let o=i[r];return c.concat(Array.isArray(o)?o.map(d=>[r,d]):[[r,o]])},[]))}function Pv(i,c){let r=tr(i);return c&&c.forEach((o,d)=>{r.has(d)||c.getAll(d).forEach(h=>{r.append(d,h)})}),r}var fu=null;function e0(){if(fu===null)try{new FormData(document.createElement("form"),0),fu=!1}catch{fu=!0}return fu}var t0=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function Kc(i){return i!=null&&!t0.has(i)?(qt(!1,`"${i}" is not a valid \`encType\` for \`<Form>\`/\`<fetcher.Form>\` and will default to "${mu}"`),null):i}function a0(i,c){let r,o,d,h,g;if($v(i)){let j=i.getAttribute("action");o=j?oa(j,c):null,r=i.getAttribute("method")||hu,d=Kc(i.getAttribute("enctype"))||mu,h=new FormData(i)}else if(Kv(i)||Fv(i)&&(i.type==="submit"||i.type==="image")){let j=i.form;if(j==null)throw new Error('Cannot submit a <button> or <input type="submit"> without a <form>');let v=i.getAttribute("formaction")||j.getAttribute("action");if(o=v?oa(v,c):null,r=i.getAttribute("formmethod")||j.getAttribute("method")||hu,d=Kc(i.getAttribute("formenctype"))||Kc(j.getAttribute("enctype"))||mu,h=new FormData(j,i),!e0()){let{name:p,type:y,value:b}=i;if(y==="image"){let z=p?`${p}.`:"";h.append(`${z}x`,"0"),h.append(`${z}y`,"0")}else p&&h.append(p,b)}}else{if(xu(i))throw new Error('Cannot submit element that is not <form>, <button>, or <input type="submit|image">');r=hu,o=null,d=mu,g=i}return h&&d==="text/plain"&&(g=h,h=void 0),{action:o,method:r.toLowerCase(),encType:d,formData:h,body:g}}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");function cr(i,c){if(i===!1||i===null||typeof i>"u")throw new Error(c)}function tm(i,c,r,o){let d=typeof i=="string"?new URL(i,typeof window>"u"?"server://singlefetch/":window.location.origin):i;return r?d.pathname.endsWith("/")?d.pathname=`${d.pathname}_.${o}`:d.pathname=`${d.pathname}.${o}`:d.pathname==="/"?d.pathname=`_root.${o}`:c&&oa(d.pathname,c)==="/"?d.pathname=`${vu(c)}/_root.${o}`:d.pathname=`${vu(d.pathname)}.${o}`,d}async function n0(i,c){if(i.id in c)return c[i.id];try{let r=await import(i.module);return c[i.id]=r,r}catch(r){return console.error(`Error loading route module \`${i.module}\`, reloading page...`),console.error(r),window.__reactRouterContext&&window.__reactRouterContext.isSpaMode,window.location.reload(),new Promise(()=>{})}}function l0(i){return i==null?!1:i.href==null?i.rel==="preload"&&typeof i.imageSrcSet=="string"&&typeof i.imageSizes=="string":typeof i.rel=="string"&&typeof i.href=="string"}async function i0(i,c,r){let o=await Promise.all(i.map(async d=>{let h=c.routes[d.route.id];if(h){let g=await n0(h,r);return g.links?g.links():[]}return[]}));return r0(o.flat(1).filter(l0).filter(d=>d.rel==="stylesheet"||d.rel==="preload").map(d=>d.rel==="stylesheet"?{...d,rel:"prefetch",as:"style"}:{...d,rel:"prefetch"}))}function zh(i,c,r,o,d,h){let g=(v,p)=>r[p]?v.route.id!==r[p].route.id:!0,j=(v,p)=>{var y;return r[p].pathname!==v.pathname||((y=r[p].route.path)==null?void 0:y.endsWith("*"))&&r[p].params["*"]!==v.params["*"]};return h==="assets"?c.filter((v,p)=>g(v,p)||j(v,p)):h==="data"?c.filter((v,p)=>{var b;let y=o.routes[v.route.id];if(!y||!y.hasLoader)return!1;if(g(v,p)||j(v,p))return!0;if(v.route.shouldRevalidate){let z=v.route.shouldRevalidate({currentUrl:new URL(d.pathname+d.search+d.hash,window.origin),currentParams:((b=r[0])==null?void 0:b.params)||{},nextUrl:new URL(i,window.origin),nextParams:v.params,defaultShouldRevalidate:!0});if(typeof z=="boolean")return z}return!0}):[]}function u0(i,c,{includeHydrateFallback:r}={}){return s0(i.map(o=>{let d=c.routes[o.route.id];if(!d)return[];let h=[d.module];return d.clientActionModule&&(h=h.concat(d.clientActionModule)),d.clientLoaderModule&&(h=h.concat(d.clientLoaderModule)),r&&d.hydrateFallbackModule&&(h=h.concat(d.hydrateFallbackModule)),d.imports&&(h=h.concat(d.imports)),h}).flat(1))}function s0(i){return[...new Set(i)]}function c0(i){let c={},r=Object.keys(i).sort();for(let o of r)c[o]=i[o];return c}function r0(i,c){let r=new Set;return new Set(c),i.reduce((o,d)=>{let h=JSON.stringify(c0(d));return r.has(h)||(r.add(h),o.push({key:h,link:d})),o},[])}function rr(){let i=C.useContext(Xn);return cr(i,"You must render this element inside a <DataRouterContext.Provider> element"),i}function o0(){let i=C.useContext(bu);return cr(i,"You must render this element inside a <DataRouterStateContext.Provider> element"),i}var or=C.createContext(void 0);or.displayName="FrameworkContext";function fr(){let i=C.useContext(or);return cr(i,"You must render this element inside a <HydratedRouter> element"),i}function f0(i,c){let r=C.useContext(or),[o,d]=C.useState(!1),[h,g]=C.useState(!1),{onFocus:j,onBlur:v,onMouseEnter:p,onMouseLeave:y,onTouchStart:b}=c,z=C.useRef(null);C.useEffect(()=>{if(i==="render"&&g(!0),i==="viewport"){let q=Z=>{Z.forEach(P=>{g(P.isIntersecting)})},X=new IntersectionObserver(q,{threshold:.5});return z.current&&X.observe(z.current),()=>{X.disconnect()}}},[i]),C.useEffect(()=>{if(o){let q=setTimeout(()=>{g(!0)},100);return()=>{clearTimeout(q)}}},[o]);let R=()=>{d(!0)},k=()=>{d(!1),g(!1)};return r?i!=="intent"?[h,z,{}]:[h,z,{onFocus:ql(j,R),onBlur:ql(v,k),onMouseEnter:ql(p,R),onMouseLeave:ql(y,k),onTouchStart:ql(b,R)}]:[!1,z,{}]}function ql(i,c){return r=>{i&&i(r),r.defaultPrevented||c(r)}}function d0({page:i,...c}){let r=Ev(),{router:o}=rr(),d=C.useMemo(()=>Bh(o.routes,i,o.basename),[o.routes,i,o.basename]);return d?r?C.createElement(m0,{page:i,matches:d,...c}):C.createElement(p0,{page:i,matches:d,...c}):null}function h0(i){let{manifest:c,routeModules:r}=fr(),[o,d]=C.useState([]);return C.useEffect(()=>{let h=!1;return i0(i,c,r).then(g=>{h||d(g)}),()=>{h=!0}},[i,c,r]),o}function m0({page:i,matches:c,...r}){let o=Dt(),{future:d}=fr(),{basename:h}=rr(),g=C.useMemo(()=>{if(i===o.pathname+o.search+o.hash)return[];let j=tm(i,h,d.unstable_trailingSlashAwareDataRequests,"rsc"),v=!1,p=[];for(let y of c)typeof y.route.shouldRevalidate=="function"?v=!0:p.push(y.route.id);return v&&p.length>0&&j.searchParams.set("_routes",p.join(",")),[j.pathname+j.search]},[h,d.unstable_trailingSlashAwareDataRequests,i,o,c]);return C.createElement(C.Fragment,null,g.map(j=>C.createElement("link",{key:j,rel:"prefetch",as:"fetch",href:j,...r})))}function p0({page:i,matches:c,...r}){let o=Dt(),{future:d,manifest:h,routeModules:g}=fr(),{basename:j}=rr(),{loaderData:v,matches:p}=o0(),y=C.useMemo(()=>zh(i,c,p,h,o,"data"),[i,c,p,h,o]),b=C.useMemo(()=>zh(i,c,p,h,o,"assets"),[i,c,p,h,o]),z=C.useMemo(()=>{if(i===o.pathname+o.search+o.hash)return[];let q=new Set,X=!1;if(c.forEach(P=>{var ue;let W=h.routes[P.route.id];!W||!W.hasLoader||(!y.some(K=>K.route.id===P.route.id)&&P.route.id in v&&((ue=g[P.route.id])!=null&&ue.shouldRevalidate)||W.hasClientLoader?X=!0:q.add(P.route.id))}),q.size===0)return[];let Z=tm(i,j,d.unstable_trailingSlashAwareDataRequests,"data");return X&&q.size>0&&Z.searchParams.set("_routes",c.filter(P=>q.has(P.route.id)).map(P=>P.route.id).join(",")),[Z.pathname+Z.search]},[j,d.unstable_trailingSlashAwareDataRequests,v,o,h,y,c,i,g]),R=C.useMemo(()=>u0(b,h),[b,h]),k=h0(b);return C.createElement(C.Fragment,null,z.map(q=>C.createElement("link",{key:q,rel:"prefetch",as:"fetch",href:q,...r})),R.map(q=>C.createElement("link",{key:q,rel:"modulepreload",href:q,...r})),k.map(({key:q,link:X})=>C.createElement("link",{key:q,nonce:r.nonce,...X,crossOrigin:X.crossOrigin??r.crossOrigin})))}function v0(...i){return c=>{i.forEach(r=>{typeof r=="function"?r(c):r!=null&&(r.current=c)})}}var y0=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u";try{y0&&(window.__reactRouterVersion="7.14.2")}catch{}function g0({basename:i,children:c,unstable_useTransitions:r,window:o}){let d=C.useRef();d.current==null&&(d.current=W1({window:o,v5Compat:!0}));let h=d.current,[g,j]=C.useState({action:h.action,location:h.location}),v=C.useCallback(p=>{r===!1?j(p):C.startTransition(()=>j(p))},[r]);return C.useLayoutEffect(()=>h.listen(v),[h,v]),C.createElement(Qv,{basename:i,children:c,location:g.location,navigationType:g.action,navigator:h,unstable_useTransitions:r})}var am=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,Ke=C.forwardRef(function({onClick:c,discover:r="render",prefetch:o="none",relative:d,reloadDocument:h,replace:g,unstable_mask:j,state:v,target:p,to:y,preventScrollReset:b,viewTransition:z,unstable_defaultShouldRevalidate:R,...k},q){let{basename:X,navigator:Z,unstable_useTransitions:P}=C.useContext(Ut),W=typeof y=="string"&&am.test(y),ue=Xh(y,X);y=ue.to;let K=zv(y,{relative:d}),Y=Dt(),S=null;if(j){let Ye=nr(j,[],Y.unstable_mask?Y.unstable_mask.pathname:"/",!0);X!=="/"&&(Ye.pathname=Ye.pathname==="/"?X:Lt([X,Ye.pathname])),S=Z.createHref(Ye)}let[O,G,ve]=f0(o,k),te=S0(y,{replace:g,unstable_mask:j,state:v,target:p,preventScrollReset:b,relative:d,viewTransition:z,unstable_defaultShouldRevalidate:R,unstable_useTransitions:P});function he(Ye){c&&c(Ye),Ye.defaultPrevented||te(Ye)}let Qe=!(ue.isExternal||h),St=C.createElement("a",{...k,...ve,href:(Qe?S:void 0)||ue.absoluteURL||K,onClick:Qe?he:c,ref:v0(q,G),target:p,"data-discover":!W&&r==="render"?"true":void 0});return O&&!W?C.createElement(C.Fragment,null,St,C.createElement(d0,{page:K})):St});Ke.displayName="Link";var b0=C.forwardRef(function({"aria-current":c="page",caseSensitive:r=!1,className:o="",end:d=!1,style:h,to:g,viewTransition:j,children:v,...p},y){let b=Ql(g,{relative:p.relative}),z=Dt(),R=C.useContext(bu),{navigator:k,basename:q}=C.useContext(Ut),X=R!=null&&w0(b)&&j===!0,Z=k.encodeLocation?k.encodeLocation(b).pathname:b.pathname,P=z.pathname,W=R&&R.navigation&&R.navigation.location?R.navigation.location.pathname:null;r||(P=P.toLowerCase(),W=W?W.toLowerCase():null,Z=Z.toLowerCase()),W&&q&&(W=oa(W,q)||W);const ue=Z!=="/"&&Z.endsWith("/")?Z.length-1:Z.length;let K=P===Z||!d&&P.startsWith(Z)&&P.charAt(ue)==="/",Y=W!=null&&(W===Z||!d&&W.startsWith(Z)&&W.charAt(Z.length)==="/"),S={isActive:K,isPending:Y,isTransitioning:X},O=K?c:void 0,G;typeof o=="function"?G=o(S):G=[o,K?"active":null,Y?"pending":null,X?"transitioning":null].filter(Boolean).join(" ");let ve=typeof h=="function"?h(S):h;return C.createElement(Ke,{...p,"aria-current":O,className:G,ref:y,style:ve,to:g,viewTransition:j},typeof v=="function"?v(S):v)});b0.displayName="NavLink";var x0=C.forwardRef(({discover:i="render",fetcherKey:c,navigate:r,reloadDocument:o,replace:d,state:h,method:g=hu,action:j,onSubmit:v,relative:p,preventScrollReset:y,viewTransition:b,unstable_defaultShouldRevalidate:z,...R},k)=>{let{unstable_useTransitions:q}=C.useContext(Ut),X=N0(),Z=T0(j,{relative:p}),P=g.toLowerCase()==="get"?"get":"post",W=typeof j=="string"&&am.test(j),ue=K=>{if(v&&v(K),K.defaultPrevented)return;K.preventDefault();let Y=K.nativeEvent.submitter,S=(Y==null?void 0:Y.getAttribute("formmethod"))||g,O=()=>X(Y||K.currentTarget,{fetcherKey:c,method:S,navigate:r,replace:d,state:h,relative:p,preventScrollReset:y,viewTransition:b,unstable_defaultShouldRevalidate:z});q&&r!==!1?C.startTransition(()=>O()):O()};return C.createElement("form",{ref:k,method:P,action:Z,onSubmit:o?v:ue,...R,"data-discover":!W&&i==="render"?"true":void 0})});x0.displayName="Form";function j0(i){return`${i} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function nm(i){let c=C.useContext(Xn);return De(c,j0(i)),c}function S0(i,{target:c,replace:r,unstable_mask:o,state:d,preventScrollReset:h,relative:g,viewTransition:j,unstable_defaultShouldRevalidate:v,unstable_useTransitions:p}={}){let y=ir(),b=Dt(),z=Ql(i,{relative:g});return C.useCallback(R=>{if(Iv(R,c)){R.preventDefault();let k=r!==void 0?r:Gl(b)===Gl(z),q=()=>y(i,{replace:k,unstable_mask:o,state:d,preventScrollReset:h,relative:g,viewTransition:j,unstable_defaultShouldRevalidate:v});p?C.startTransition(()=>q()):q()}},[b,y,z,r,o,d,c,i,h,g,j,v,p])}function lm(i){qt(typeof URLSearchParams<"u","You cannot use the `useSearchParams` hook in a browser that does not support the URLSearchParams API. If you need to support Internet Explorer 11, we recommend you load a polyfill such as https://github.com/ungap/url-search-params.");let c=C.useRef(tr(i)),r=C.useRef(!1),o=Dt(),d=C.useMemo(()=>Pv(o.search,r.current?null:c.current),[o.search]),h=ir(),g=C.useCallback((j,v)=>{const p=tr(typeof j=="function"?j(new URLSearchParams(d)):j);r.current=!0,h("?"+p,v)},[h,d]);return[d,g]}var C0=0,E0=()=>`__${String(++C0)}__`;function N0(){let{router:i}=nm("useSubmit"),{basename:c}=C.useContext(Ut),r=Gv(),o=i.fetch,d=i.navigate;return C.useCallback(async(h,g={})=>{let{action:j,method:v,encType:p,formData:y,body:b}=a0(h,c);if(g.navigate===!1){let z=g.fetcherKey||E0();await o(z,r,g.action||j,{unstable_defaultShouldRevalidate:g.unstable_defaultShouldRevalidate,preventScrollReset:g.preventScrollReset,formData:y,body:b,formMethod:g.method||v,formEncType:g.encType||p,flushSync:g.flushSync})}else await d(g.action||j,{unstable_defaultShouldRevalidate:g.unstable_defaultShouldRevalidate,preventScrollReset:g.preventScrollReset,formData:y,body:b,formMethod:g.method||v,formEncType:g.encType||p,replace:g.replace,state:g.state,fromRouteId:r,flushSync:g.flushSync,viewTransition:g.viewTransition})},[o,d,c,r])}function T0(i,{relative:c}={}){let{basename:r}=C.useContext(Ut),o=C.useContext(Vt);De(o,"useFormAction must be used inside a RouteContext");let[d]=o.matches.slice(-1),h={...Ql(i||".",{relative:c})},g=Dt();if(i==null){h.search=g.search;let j=new URLSearchParams(h.search),v=j.getAll("index");if(v.some(y=>y==="")){j.delete("index"),v.filter(b=>b).forEach(b=>j.append("index",b));let y=j.toString();h.search=y?`?${y}`:""}}return(!i||i===".")&&d.route.index&&(h.search=h.search?h.search.replace(/^\?/,"?index&"):"?index"),r!=="/"&&(h.pathname=h.pathname==="/"?r:Lt([r,h.pathname])),Gl(h)}function w0(i,{relative:c}={}){let r=C.useContext(Jh);De(r!=null,"`useViewTransitionState` must be used within `react-router-dom`'s `RouterProvider`. Did you accidentally import `RouterProvider` from `react-router`?");let{basename:o}=nm("useViewTransitionState"),d=Ql(i,{relative:c});if(!r.isTransitioning)return!1;let h=oa(r.currentLocation.pathname,o)||r.currentLocation.pathname,g=oa(r.nextLocation.pathname,o)||r.nextLocation.pathname;return pu(d.pathname,g)!=null||pu(d.pathname,h)!=null}const _0='<path d="M23.1599 14.9453C22.7429 14.9429 22.3775 15.2985 22.375 15.7204C22.3726 16.1374 22.7282 16.5028 23.1501 16.5053C23.567 16.5077 23.9325 16.1521 23.935 15.7302C23.9374 15.3108 23.5793 14.9478 23.1599 14.9453Z" fill="currentColor"/><path d="M15.758 22.3758C15.3435 22.3562 14.9657 22.702 14.9461 23.1214C14.9265 23.5359 15.2723 23.9137 15.6917 23.9333C16.1063 23.9529 16.484 23.6071 16.5036 23.1877C16.5232 22.7731 16.1774 22.3954 15.758 22.3758Z" fill="currentColor"/><path d="M23.1208 9.08552C23.5721 9.10024 23.9375 8.76176 23.9473 8.31291C23.9571 7.86161 23.6137 7.50351 23.1649 7.49615C22.7308 7.49124 22.3825 7.81746 22.3604 8.24668C22.3383 8.70044 22.6744 9.06835 23.1208 9.08307V9.08552Z" fill="currentColor"/><path d="M8.32678 22.3598C7.87547 22.3451 7.51002 22.6836 7.50021 23.1324C7.49039 23.5837 7.83378 23.9418 8.28263 23.9492C8.73393 23.9541 9.08712 23.6058 9.08712 23.1545C9.08712 22.7032 8.75601 22.3746 8.32678 22.3598Z" fill="currentColor"/><path d="M23.1502 12.8994C23.6113 12.9019 24.0135 12.4947 24.0013 12.0361C23.9914 11.5897 23.6039 11.2095 23.16 11.207C22.6989 11.2046 22.2966 11.6117 22.3089 12.0704C22.3187 12.5143 22.7062 12.897 23.1502 12.8994Z" fill="currentColor"/><path d="M12.9002 23.1849C12.9198 22.7459 12.5568 22.3436 12.1079 22.3068C11.6542 22.2725 11.2299 22.6551 11.2078 23.1162C11.1882 23.5553 11.5512 23.9575 12 23.9943C12.4538 24.0287 12.8781 23.646 12.9002 23.1849Z" fill="currentColor"/><path d="M19.4899 20.3568C19.9829 20.3544 20.368 19.9595 20.3582 19.464C20.3508 18.9882 19.9755 18.6129 19.4997 18.6056C19.0067 18.5982 18.6118 18.9833 18.6094 19.4763C18.6094 19.9693 18.9969 20.3593 19.4899 20.3544V20.3568Z" fill="currentColor"/><path d="M0.946568 14.8555C0.483002 14.8555 0.0881117 15.243 0.0783008 15.7066C0.0684898 16.1873 0.470738 16.5994 0.951474 16.5969C1.41504 16.5969 1.80993 16.2094 1.81974 15.7458C1.82955 15.2651 1.4273 14.853 0.946568 14.8555Z" fill="currentColor"/><path d="M15.6895 1.82027C16.1678 1.83989 16.5872 1.445 16.597 0.964263C16.6044 0.500696 16.2267 0.0984479 15.7631 0.0788261C15.2848 0.0592042 14.8654 0.454094 14.8556 0.93483C14.8482 1.3984 15.2259 1.80065 15.6895 1.82027Z" fill="currentColor"/><path d="M0.928315 9.18321C1.44829 9.19302 1.84073 8.81285 1.84073 8.29532C1.84073 7.79742 1.47037 7.41479 0.974917 7.40253C0.454937 7.39272 0.0625 7.77289 0.0625 8.29042C0.0625 8.79078 0.432863 9.17095 0.928315 9.18321Z" fill="currentColor"/><path d="M8.33104 0.0630625C7.81106 0.0458934 7.41126 0.423614 7.40636 0.938689C7.399 1.43905 7.76691 1.82658 8.25991 1.84129C8.76272 1.85601 9.15761 1.50036 9.18459 1.00982C9.21157 0.489838 8.84121 0.0777789 8.33349 0.0630625H8.33104Z" fill="currentColor"/><path d="M19.483 3.67042C18.9728 3.67042 18.5362 4.1021 18.5313 4.61227C18.524 5.11999 18.9532 5.56148 19.4634 5.57374C19.9858 5.58846 20.4445 5.1347 20.4371 4.60982C20.4298 4.09965 19.9932 3.66797 19.483 3.66797V3.67042Z" fill="currentColor"/><path d="M0.976227 11.102C0.456247 11.0849 -0.00486668 11.5411 3.87869e-05 12.0611C0.00494425 12.5663 0.441531 13.0029 0.946794 13.0029C1.45206 13.0029 1.8911 12.5737 1.90091 12.066C1.91072 11.5631 1.48394 11.1192 0.976227 11.102Z" fill="currentColor"/><path d="M12.0584 4.16361e-05C11.5531 -0.00486383 11.1116 0.424365 11.1018 0.93208C11.0895 1.45206 11.5457 1.91072 12.0657 1.90091C12.571 1.8911 13.0051 1.45206 13.0002 0.946797C12.9978 0.441534 12.5636 0.0049471 12.0584 4.16361e-05Z" fill="currentColor"/><path d="M4.65891 18.5322C4.13894 18.5077 3.67046 18.9516 3.66801 19.479C3.6631 19.9867 4.09233 20.4257 4.6025 20.438C5.11022 20.4478 5.55416 20.0259 5.57133 19.5133C5.59095 19.0081 5.16908 18.5567 4.65891 18.5322Z" fill="currentColor"/><path d="M4.58641 5.65236C5.13337 5.67443 5.62637 5.21332 5.64845 4.65654C5.67052 4.10959 5.20941 3.61659 4.65264 3.59451C4.10568 3.57244 3.61268 4.03355 3.5906 4.59032C3.56853 5.13728 4.02964 5.63028 4.58641 5.65236Z" fill="currentColor"/><path d="M19.5008 16.8099C20.1017 16.8 20.5726 16.3169 20.5677 15.7159C20.5628 15.115 20.087 14.6392 19.4836 14.6367C18.8803 14.6343 18.402 15.1077 18.3946 15.7086C18.3873 16.3267 18.8803 16.8197 19.5008 16.8074V16.8099Z" fill="currentColor"/><path d="M15.7209 20.5694C16.3218 20.5694 16.8025 20.0985 16.8099 19.4976C16.8172 18.8967 16.3488 18.411 15.7478 18.3988C15.1298 18.384 14.6318 18.8746 14.6368 19.4927C14.6417 20.0936 15.1199 20.5694 15.7209 20.5719V20.5694Z" fill="currentColor"/><path d="M9.42652 19.4702C9.41916 18.8644 8.9188 18.364 8.31298 18.3518C7.69243 18.3395 7.1651 18.8546 7.16019 19.4751C7.15529 20.0981 7.67281 20.6157 8.29581 20.6157C8.9188 20.6157 9.43388 20.0908 9.42652 19.4702Z" fill="currentColor"/><path d="M19.4553 7.16016C18.8495 7.17487 18.354 7.68259 18.3516 8.28841C18.3491 8.91141 18.8666 9.42893 19.4896 9.42403C20.1126 9.41912 20.6253 8.89669 20.6154 8.27615C20.6056 7.65316 20.0734 7.14544 19.4553 7.16261V7.16016Z" fill="currentColor"/><path d="M15.7219 5.79748C16.3817 5.79748 16.9115 5.26034 16.8993 4.60055C16.887 3.95793 16.3695 3.44531 15.7244 3.44531C15.0793 3.44531 14.5348 3.98246 14.5471 4.64225C14.5593 5.28732 15.0793 5.79748 15.7219 5.79748Z" fill="currentColor"/><path d="M4.63052 16.9006C5.27559 16.8957 5.78821 16.3806 5.79557 15.738C5.80292 15.0782 5.27068 14.5435 4.6109 14.5509C3.94866 14.5582 3.42623 15.0978 3.44585 15.7576C3.46302 16.4002 3.9879 16.9055 4.63052 16.9006Z" fill="currentColor"/><path d="M12.0637 20.6756C12.7088 20.6683 13.2533 20.1115 13.246 19.4714C13.2386 18.8263 12.6818 18.2818 12.0417 18.2891C11.3966 18.2965 10.8521 18.8533 10.8594 19.4934C10.8668 20.1385 11.4211 20.683 12.0637 20.6756Z" fill="currentColor"/><path d="M19.4762 10.8594C18.8312 10.8618 18.2842 11.4137 18.2891 12.0563C18.2915 12.7014 18.8434 13.2483 19.486 13.2434C20.1311 13.241 20.6781 12.6891 20.6732 12.0465C20.6682 11.4039 20.1188 10.8569 19.4762 10.8594Z" fill="currentColor"/><path d="M8.31147 5.84627C8.98106 5.83645 9.52067 5.28459 9.51576 4.61499C9.51085 3.9454 8.9639 3.40089 8.29675 3.39844C7.62716 3.39844 7.07774 3.93804 7.07038 4.60764C7.06303 5.2944 7.6247 5.85362 8.31147 5.84627Z" fill="currentColor"/><path d="M4.64934 7.0706C3.96257 7.05588 3.39599 7.6102 3.39845 8.29942C3.39845 8.96902 3.94541 9.51597 4.615 9.51843C5.2846 9.52088 5.83646 8.98128 5.84382 8.31168C5.85118 7.64209 5.31648 7.08532 4.64689 7.0706H4.64934Z" fill="currentColor"/><path d="M12.0484 5.91679C12.7376 5.92169 13.3312 5.34285 13.3508 4.64873C13.3704 3.94479 12.7671 3.32916 12.0607 3.32425C11.3715 3.31934 10.7779 3.89819 10.7583 4.59231C10.7387 5.29625 11.3396 5.91434 12.0484 5.91679Z" fill="currentColor"/><path d="M4.58021 13.3473C5.28169 13.3743 5.90469 12.7783 5.91695 12.0695C5.92921 11.3827 5.35528 10.7818 4.66115 10.7548C3.95967 10.7278 3.33668 11.3238 3.32441 12.0327C3.31215 12.7194 3.88609 13.3203 4.58021 13.3473Z" fill="currentColor"/><path d="M15.7193 14.3359C14.9687 14.3359 14.3335 14.9761 14.3359 15.7266C14.3359 16.4772 14.9761 17.1124 15.7266 17.11C16.4772 17.11 17.1124 16.4698 17.11 15.7193C17.1075 14.9687 16.4698 14.3335 15.7193 14.3359Z" fill="currentColor"/><path d="M15.7407 9.73609C16.5428 9.72628 17.1756 9.0763 17.1658 8.27671C17.156 7.47712 16.506 6.84186 15.7064 6.85167C14.9068 6.86149 14.2716 7.51146 14.2814 8.31105C14.2912 9.11064 14.9411 9.7459 15.7407 9.73609Z" fill="currentColor"/><path d="M8.2987 14.2813C7.50156 14.2764 6.8565 14.9165 6.85159 15.7161C6.84669 16.5133 7.48685 17.1583 8.28644 17.1632C9.08358 17.1681 9.72865 16.528 9.73355 15.7284C9.73601 14.9313 9.09584 14.2862 8.2987 14.2813Z" fill="currentColor"/><path d="M8.2854 9.79467C9.12669 9.79712 9.78647 9.15696 9.79874 8.32057C9.811 7.45967 9.15857 6.79007 8.30257 6.78516C7.46128 6.78271 6.8015 7.42533 6.78923 8.25926C6.77697 9.12017 7.4294 9.78976 8.2854 9.79467Z" fill="currentColor"/><path d="M15.7268 10.5156C14.8757 10.5156 14.1644 11.2343 14.184 12.0829C14.2036 12.9242 14.9075 13.6061 15.7415 13.5914C16.5803 13.5766 17.2671 12.8801 17.2622 12.0461C17.2573 11.2097 16.5631 10.5181 15.7268 10.5156Z" fill="currentColor"/><path d="M12.0588 14.1836C11.2077 14.1787 10.4964 14.8998 10.516 15.7485C10.5356 16.5897 11.2371 17.2716 12.0686 17.2593C12.9074 17.2471 13.5942 16.553 13.5917 15.7166C13.5893 14.8802 12.8976 14.1885 12.0612 14.1836H12.0588Z" fill="currentColor"/><path d="M12.0397 6.66802C11.1568 6.67538 10.4356 7.39894 10.4258 8.28192C10.4185 9.17717 11.1666 9.92525 12.0618 9.91789C12.9448 9.91054 13.6659 9.18698 13.6757 8.304C13.6831 7.40875 12.935 6.66066 12.0397 6.66802Z" fill="currentColor"/><path d="M8.29197 13.6757C9.1725 13.6757 9.90096 12.9619 9.91813 12.074C9.9353 11.1812 9.19212 10.4282 8.29442 10.4258C7.41389 10.4258 6.68543 11.1395 6.66826 12.0274C6.65109 12.9202 7.39427 13.6732 8.29197 13.6757Z" fill="currentColor"/><path d="M12.0638 10.2891C11.068 10.2842 10.2905 11.0568 10.293 12.0526C10.293 13.0288 11.0533 13.8014 12.0222 13.8137C13.0204 13.8259 13.8077 13.0631 13.8151 12.0722C13.8225 11.074 13.0548 10.294 12.0638 10.2891Z" fill="currentColor"/>';function A0({size:i=20,idSuffix:c,className:r}){const o=`pc-brand-mark-clip-${c}`;return s.jsx("svg",{width:i,height:i,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",className:r,dangerouslySetInnerHTML:{__html:`<g clip-path="url(#${o})">${_0}</g><defs><clipPath id="${o}"><rect width="24" height="24" fill="white"/></clipPath></defs>`}})}const im="Parachute";let an=null,Yl=null;const R0=3e4;function z0(){return"/admin/host-admin-token"}function M0(){const i=`${window.location.pathname}${window.location.search}`;return`/login?next=${encodeURIComponent(i)}`}function um(){return window.location.replace(M0()),new Promise(()=>{})}function O0(){return window.location.replace("/account/"),new Promise(()=>{})}async function Ue(){const i=Date.now();return an&&an.expiresAt-i>R0?an.token:Yl||(Yl=U0().finally(()=>{Yl=null}),Yl)}async function U0(){const i=await fetch(z0(),{method:"GET",headers:{accept:"application/json"},credentials:"same-origin"});if(i.status===401)return an=null,um();if(i.status===403)return an=null,O0();if(!i.ok)throw new Error(`/admin/host-admin-token failed: ${i.status} ${await i.text()}`);const c=await i.json();if(!c.token||!c.expires_at)throw new Error("/admin/host-admin-token returned malformed body");return an={token:c.token,expiresAt:new Date(c.expires_at).getTime()},c.token}function Re(){an=null}class Q extends Error{constructor(c,r){super(r),this.status=c,this.name="HttpError"}}async function D0(){const i=await fetch("/.well-known/parachute.json",{headers:{accept:"application/json"}});if(!i.ok)throw new Q(i.status,`well-known fetch failed: ${i.status}`);const c=await i.json(),r=c.vaults??[],o=c.services??[];return{moduleInstalled:o.some(h=>h.name==="parachute-vault"||h.name.startsWith("parachute-vault-")),vaults:r.map(h=>{const g={name:h.name,url:h.url,version:h.version,path:k0(h.name,h.url,o)};return h.managementUrl&&(g.managementUrl=h.managementUrl),g})}}function k0(i,c,r){const o=r.find(d=>d.name===`parachute-vault-${i}`||d.path===`/vault/${i}`);if(o)return o.path;try{return new URL(c).pathname}catch{return`/vault/${i}`}}async function H0(i){const c=await Ue(),r=await fetch("/vaults",{method:"POST",headers:{"content-type":"application/json",accept:"application/json",authorization:`Bearer ${c}`},body:JSON.stringify(i)});if(r.status===401||r.status===403)throw Re(),new Q(r.status,await ee(r));if(!r.ok)throw new Q(r.status,await ee(r));const o=r.status===201,d=await r.json(),h={name:d.name,url:d.url,version:d.version,created:o};return d.token&&(h.token=d.token),d.token_guidance&&(h.tokenGuidance=d.token_guidance),d.paths&&(h.paths=d.paths),h}async function B0(i){const c=await fetch(`/admin/vault-admin-token/${encodeURIComponent(i)}`,{method:"GET",headers:{accept:"application/json"},credentials:"same-origin"});if(c.status===401)return um();if(!c.ok)throw new Q(c.status,await ee(c));const r=await c.json();if(!r.token||!r.expires_at)throw new Q(500,"/admin/vault-admin-token returned malformed body");return{token:r.token,expiresAt:r.expires_at,scopes:r.scopes??[]}}async function L0(i={}){const c=await Ue(),r=i.vault?`?vault=${encodeURIComponent(i.vault)}`:"",o=await fetch(`/api/grants${r}`,{method:"GET",headers:{accept:"application/json",authorization:`Bearer ${c}`}});if(o.status===401||o.status===403)throw Re(),new Q(o.status,await ee(o));if(!o.ok)throw new Q(o.status,await ee(o));return(await o.json()).grants??[]}async function q0(i){const c=await Ue(),r=await fetch(`/api/grants/${encodeURIComponent(i)}`,{method:"DELETE",headers:{authorization:`Bearer ${c}`}});if(r.status===401||r.status===403)throw Re(),new Q(r.status,await ee(r));if(!r.ok)throw new Q(r.status,await ee(r))}async function Y0(){const i=await fetch("/api/me",{method:"GET",headers:{accept:"application/json"},credentials:"same-origin"});if(!i.ok)throw new Q(i.status,await ee(i));return await i.json()}async function G0(i){const c=new URLSearchParams({__csrf:i}),r=await fetch("/logout",{method:"POST",headers:{"content-type":"application/x-www-form-urlencoded",accept:"text/html, application/json"},credentials:"same-origin",body:c,redirect:"manual"});if(!(r.status===0||r.ok||r.status===302))throw new Q(r.status,await ee(r))}function Z0(i,c){if(/^https?:\/\//i.test(c))return c;const r=i.replace(/\/+$/,""),o=c.startsWith("/")?c:`/${c}`;return`${r}${o}`}async function Mh(i={}){const c=new URLSearchParams;i.revoked&&c.set("revoked",i.revoked),i.subject&&c.set("subject",i.subject),i.createdVia&&c.set("created_via",i.createdVia),i.cursor&&c.set("cursor",i.cursor);const r=c.toString(),o=r?`/api/auth/tokens?${r}`:"/api/auth/tokens",d=await Ue(),h=await fetch(o,{method:"GET",headers:{accept:"application/json",authorization:`Bearer ${d}`}});if(h.status===401||h.status===403)throw Re(),new Q(h.status,await ee(h));if(!h.ok)throw new Q(h.status,await ee(h));return await h.json()}async function sm(i){const c=await Ue(),r=await fetch("/api/auth/mint-token",{method:"POST",headers:{"content-type":"application/json",accept:"application/json",authorization:`Bearer ${c}`},body:JSON.stringify(i)});if(r.status===401||r.status===403)throw Re(),new Q(r.status,await ee(r));if(!r.ok)throw new Q(r.status,await ee(r));return await r.json()}async function X0(i){const c=await Ue(),r=await fetch("/api/auth/revoke-token",{method:"POST",headers:{"content-type":"application/json",accept:"application/json",authorization:`Bearer ${c}`},body:JSON.stringify({jti:i})});if(r.status===401||r.status===403)throw Re(),new Q(r.status,await ee(r));if(!r.ok)throw new Q(r.status,await ee(r));return await r.json()}async function V0(i){const c=await Ue(),r=await fetch(`/api/oauth/clients/${encodeURIComponent(i)}`,{method:"GET",headers:{accept:"application/json",authorization:`Bearer ${c}`}});if(r.status===401||r.status===403)throw Re(),new Q(r.status,await ee(r));if(!r.ok)throw new Q(r.status,await ee(r));return await r.json()}async function Q0(i,c){const o={method:"POST",headers:{accept:"application/json",authorization:`Bearer ${await Ue()}`}};c!==void 0&&(o.headers={...o.headers,"content-type":"application/json"},o.body=JSON.stringify({return_to:c}));const d=await fetch(`/api/oauth/clients/${encodeURIComponent(i)}/approve`,o);if(d.status===401||d.status===403)throw Re(),new Q(d.status,await ee(d));if(!d.ok)throw new Q(d.status,await ee(d));return await d.json()}async function cm(){const i=await Ue(),c=await fetch("/api/modules",{method:"GET",headers:{accept:"application/json",authorization:`Bearer ${i}`}});if(c.status===401||c.status===403)throw Re(),new Q(c.status,await ee(c));if(!c.ok)throw new Q(c.status,await ee(c));return await c.json()}async function ju(i,c){const r=await Ue();return await fetch(`/api/modules/${encodeURIComponent(i)}/${c}`,{method:"POST",headers:{accept:"application/json",authorization:`Bearer ${r}`}})}async function J0(i){const c=await ju(i,"install");if(c.status===401||c.status===403)throw Re(),new Q(c.status,await ee(c));if(!c.ok)throw new Q(c.status,await ee(c));return(await c.json()).operation_id}async function K0(i){const c=await ju(i,"upgrade");if(c.status===401||c.status===403)throw Re(),new Q(c.status,await ee(c));if(!c.ok)throw new Q(c.status,await ee(c));return(await c.json()).operation_id}async function $0(i){const c=await ju(i,"restart");if(c.status===401||c.status===403)throw Re(),new Q(c.status,await ee(c));if(!c.ok)throw new Q(c.status,await ee(c));return await c.json()}async function F0(i){const c=await ju(i,"uninstall");if(c.status===401||c.status===403)throw Re(),new Q(c.status,await ee(c));if(!c.ok)throw new Q(c.status,await ee(c));return await c.json()}async function W0(i){const c=await Ue(),r=await fetch("/api/modules/channel",{method:"PUT",headers:{"content-type":"application/json",accept:"application/json",authorization:`Bearer ${c}`},body:JSON.stringify({channel:i})});if(r.status===401||r.status===403)throw Re(),new Q(r.status,await ee(r));if(!r.ok)throw new Q(r.status,await ee(r));return(await r.json()).channel}async function rm(){const i=await Ue(),c=await fetch("/api/settings/hub-origin",{method:"GET",headers:{accept:"application/json",authorization:`Bearer ${i}`}});if(c.status===401||c.status===403)throw Re(),new Q(c.status,await ee(c));if(!c.ok)throw new Q(c.status,await ee(c));return await c.json()}async function Oh(i){const c=await Ue(),r=await fetch("/api/settings/hub-origin",{method:"PUT",headers:{"content-type":"application/json",accept:"application/json",authorization:`Bearer ${c}`},body:JSON.stringify({hub_origin:i})});if(r.status===401||r.status===403)throw Re(),new Q(r.status,await ee(r));if(!r.ok)throw new Q(r.status,await ee(r));return(await r.json()).hub_origin}async function I0(i){const c=await Ue(),r=await fetch(`/api/modules/${encodeURIComponent(i)}/config/schema`,{method:"GET",headers:{accept:"application/json",authorization:`Bearer ${c}`}});if(r.status===401||r.status===403)throw Re(),new Q(r.status,await ee(r));if(r.status===404){let o;try{o=(await r.clone().json()).error}catch{}if(o==="no_config_schema")return null;throw new Q(404,await ee(r))}if(!r.ok)throw new Q(r.status,await ee(r));return await r.json()}async function P0(i){const c=await Ue(),r=await fetch(`/api/modules/${encodeURIComponent(i)}/config`,{method:"GET",headers:{accept:"application/json",authorization:`Bearer ${c}`}});if(r.status===401||r.status===403)throw Re(),new Q(r.status,await ee(r));if(r.status===404)return{};if(!r.ok)throw new Q(r.status,await ee(r));return await r.json()}async function ey(i,c){const r=await Ue(),o=await fetch(`/api/modules/${encodeURIComponent(i)}/config`,{method:"PUT",headers:{"content-type":"application/json",accept:"application/json",authorization:`Bearer ${r}`},body:JSON.stringify(c)});if(o.status===401||o.status===403)throw Re(),new Q(o.status,await ee(o));if(!o.ok)throw new Q(o.status,await ee(o));return await o.json()}async function ty(i){const c=await Ue(),r=await fetch(`/api/modules/operations/${encodeURIComponent(i)}`,{method:"GET",headers:{accept:"application/json",authorization:`Bearer ${c}`}});if(r.status===401||r.status===403)throw Re(),new Q(r.status,await ee(r));if(!r.ok)throw new Q(r.status,await ee(r));return await r.json()}async function ay(){const i=await Ue(),c=await fetch("/api/users",{method:"GET",headers:{accept:"application/json",authorization:`Bearer ${i}`}});if(c.status===401||c.status===403)throw Re(),new Q(c.status,await ee(c));if(!c.ok)throw new Q(c.status,await ee(c));return(await c.json()).users??[]}async function ny(i){const c=await Ue(),r=await fetch("/api/users",{method:"POST",headers:{"content-type":"application/json",accept:"application/json",authorization:`Bearer ${c}`},body:JSON.stringify(i)});if(r.status===401||r.status===403)throw Re(),new Q(r.status,await ee(r));if(!r.ok)throw new Q(r.status,await ee(r));return(await r.json()).user}async function ly(i){const c=await Ue(),r=await fetch(`/api/users/${encodeURIComponent(i)}`,{method:"DELETE",headers:{authorization:`Bearer ${c}`}});if(r.status===401||r.status===403)throw r.status===401&&Re(),new Q(r.status,await ee(r));if(!r.ok)throw new Q(r.status,await ee(r));const o=await r.json().catch(()=>({}));return{revocationLagSeconds:typeof o.revocation_lag_seconds=="number"?o.revocation_lag_seconds:60}}async function iy(i,c){const r=await Ue(),o=await fetch(`/api/users/${encodeURIComponent(i)}/reset-password`,{method:"POST",headers:{"content-type":"application/json",accept:"application/json",authorization:`Bearer ${r}`},body:JSON.stringify({new_password:c})});if(o.status===401||o.status===403)throw o.status===401&&Re(),new Q(o.status,await ee(o));if(!o.ok)throw new Q(o.status,await ee(o));const d=await o.json().catch(()=>({}));return{revocationLagSeconds:typeof d.revocation_lag_seconds=="number"?d.revocation_lag_seconds:60}}async function uy(i,c){const r=await Ue(),o=await fetch(`/api/users/${encodeURIComponent(i)}/vaults`,{method:"PATCH",headers:{"content-type":"application/json",accept:"application/json",authorization:`Bearer ${r}`},body:JSON.stringify({assigned_vaults:c})});if(o.status===401||o.status===403)throw o.status===401&&Re(),new Q(o.status,await ee(o));if(!o.ok)throw new Q(o.status,await ee(o))}async function sy(){const i=await Ue(),c=await fetch("/api/users/vaults",{method:"GET",headers:{accept:"application/json",authorization:`Bearer ${i}`}});if(c.status===401||c.status===403)throw Re(),new Q(c.status,await ee(c));if(!c.ok)throw new Q(c.status,await ee(c));return(await c.json()).vaults??[]}async function cy(){const i=await Ue(),c=await fetch("/api/hub",{method:"GET",headers:{accept:"application/json",authorization:`Bearer ${i}`}});if(c.status===401||c.status===403)throw Re(),new Q(c.status,await ee(c));if(!c.ok)throw new Q(c.status,await ee(c));return await c.json()}async function ee(i){try{const c=await i.text(),r=JSON.parse(c);if(r.error_description)return r.error_description;if(r.error)return r.error;if(c)return c}catch{}return`${i.status} ${i.statusText}`}const ry=3e4;function Uh(i){const c=Math.max(0,i),r=Math.floor(c/1e3);if(r<60)return`${r}s`;const o=Math.floor(r/60);if(o<60)return`${o}m`;const d=Math.floor(o/60);return d<24?`${d}h ${o%60}m`:`${Math.floor(d/24)}d ${d%24}h`}function $c(i){const c=new Date(i);if(Number.isNaN(c.getTime()))return i;const r=o=>String(o).padStart(2,"0");return`${c.getUTCFullYear()}-${r(c.getUTCMonth()+1)}-${r(c.getUTCDate())} ${r(c.getUTCHours())}:${r(c.getUTCMinutes())}:${r(c.getUTCSeconds())} UTC`}function oy(i){var c;if(i.source==="container")return"container";if(i.source==="npm")return"npm";if(i.source==="bun-linked"){const r=(c=i.bun_linked_path)==null?void 0:c.split("/").filter(Boolean).pop();return r&&i.git_head?`bun-linked → ${r} @ ${i.git_head}`:r?`bun-linked → ${r}`:"bun-linked"}return"unknown"}function fy(){const[i,c]=C.useState(null),[r,o]=C.useState(!1),[d,h]=C.useState(!1),[g,j]=C.useState(null),v=C.useCallback(async()=>{h(!0);try{const p=await cy();c(p),j(new Date)}catch{}finally{h(!1)}},[]);return C.useEffect(()=>{v()},[v]),C.useEffect(()=>{const p=()=>{v()};window.addEventListener("focus",p);const y=window.setInterval(()=>{v()},ry);return()=>{window.removeEventListener("focus",p),window.clearInterval(y)}},[v]),i?s.jsxs("footer",{className:"hub-version-badge","data-testid":"hub-version-badge",children:[s.jsxs("button",{type:"button",className:"hub-version-badge-summary",onClick:()=>o(p=>!p),"aria-expanded":r,"data-testid":"hub-version-badge-summary",children:["Hub ",s.jsx("strong",{children:i.version})," · running"," ",s.jsx("span",{"data-testid":"hub-version-badge-uptime",children:Uh(i.uptime_ms)})," ·"," ",s.jsx("span",{className:"hub-version-badge-source","data-testid":"hub-version-badge-source",children:i.source})]}),r?s.jsxs("div",{className:"hub-version-badge-panel","data-testid":"hub-version-badge-panel",children:[s.jsxs("dl",{children:[s.jsx("dt",{children:"Hub"}),s.jsx("dd",{children:s.jsxs("code",{children:["@openparachute/hub ",i.version]})}),s.jsx("dt",{children:"Source"}),s.jsx("dd",{children:oy(i)}),s.jsx("dt",{children:"Started"}),s.jsxs("dd",{children:[$c(i.started_at)," (",Uh(i.uptime_ms)," ago)"]}),i.container_build_time?s.jsxs(s.Fragment,{children:[s.jsx("dt",{children:"Built"}),s.jsx("dd",{children:$c(i.container_build_time)})]}):null,i.render_commit?s.jsxs(s.Fragment,{children:[s.jsx("dt",{children:"Commit"}),s.jsxs("dd",{children:[s.jsx("code",{children:i.render_commit.slice(0,8)}),i.render_branch?s.jsxs(s.Fragment,{children:[" on ",s.jsx("code",{children:i.render_branch})]}):null]})]}):null,g?s.jsxs(s.Fragment,{children:[s.jsx("dt",{children:"Last checked"}),s.jsx("dd",{children:$c(g.toISOString())})]}):null]}),s.jsx("button",{type:"button",className:"hub-version-badge-refresh secondary",onClick:()=>void v(),disabled:d,"data-testid":"hub-version-badge-refresh",children:d?"Refreshing…":"Refresh"})]}):null]}):null}function dy(){const{clientId:i}=Wh(),c=i??"",[r]=lm(),o=hy(r.get("return_to")),[d,h]=C.useState({kind:"loading"}),[g,j]=C.useState({kind:"idle"}),[v,p]=C.useState(0);C.useEffect(()=>{if(!c){h({kind:"error",message:"missing client id in URL"});return}let b=!1;return h({kind:"loading"}),V0(c).then(z=>{b||(h({kind:"ok",client:z}),z.status==="approved"&&(j({kind:"approved",alreadyApproved:!0}),o&&window.location.assign(o)))}).catch(z=>{if(b)return;if(z instanceof Q&&z.status===404){h({kind:"not_found"});return}const R=z instanceof Error?z.message:String(z);h({kind:"error",message:R})}),()=>{b=!0}},[c,v,o]);async function y(){j({kind:"approving"});try{const b=await Q0(c,o||void 0);if(b.redirect_to&&om(b.redirect_to)){window.location.assign(b.redirect_to);return}j({kind:"approved",alreadyApproved:b.already_approved})}catch(b){const z=b instanceof Q?`approve failed (${b.status}): ${b.message}`:b instanceof Error?b.message:String(b);j({kind:"error",message:z})}}return s.jsxs("div",{children:[s.jsx("div",{className:"list-header",children:s.jsx("h2",{children:"Approve app"})}),my({loadState:d,action:g,onApprove:y,onRetry:()=>p(b=>b+1)})]})}function om(i){return!(!i||!i.startsWith("/")||i.startsWith("//"))}function hy(i){return i===null?null:om(i)?i:null}function my({loadState:i,action:c,onApprove:r,onRetry:o}){if(i.kind==="loading")return s.jsx("p",{className:"muted","data-loading":"true",children:"Loading…"});if(i.kind==="not_found")return s.jsxs("div",{className:"empty empty-rich",children:[s.jsx("p",{className:"empty-headline",children:"Unknown client."}),s.jsxs("p",{className:"muted",children:["This client_id isn't registered with this hub. The deep link may be stale, or the requesting app may have been registered against a different hub."," ",s.jsx(Ke,{to:"/permissions",children:"Back to permissions"}),"."]})]});if(i.kind==="error")return s.jsxs(s.Fragment,{children:[s.jsxs("div",{className:"error-banner",children:["Couldn't load the client: ",s.jsx("code",{children:i.message})]}),s.jsx("button",{type:"button",onClick:o,className:"secondary",children:"Retry"})]});const{client:d}=i,h=d.client_name??d.client_id;if(c.kind==="approved")return s.jsxs("div",{className:"empty empty-rich",children:[s.jsx("p",{className:"empty-headline",children:c.alreadyApproved?"Already approved.":"Approved."}),s.jsxs("p",{className:"muted",children:[s.jsx("code",{children:h})," ",c.alreadyApproved?"was already on this hub's approved list.":"can now run an OAuth flow with this hub."," ","Return to the app that sent you here and retry the action — the request will go through now."]}),s.jsx("p",{className:"muted",style:{marginTop:"1rem"},children:s.jsx(Ke,{to:"/permissions",children:"View permissions"})})]});const g=c.kind==="approving",j=c.kind==="error"?c.message:null;return s.jsxs("div",{children:[s.jsx("p",{className:"muted",children:"An app is asking this hub to issue OAuth tokens. Review the details below and approve only if you recognize the app."}),s.jsx("div",{className:"vault-row",style:{marginTop:"1rem"},children:s.jsxs("div",{className:"body",children:[s.jsx("div",{className:"name",children:s.jsx("code",{children:h})}),s.jsxs("div",{className:"dim",children:[s.jsx("span",{className:"muted",children:"client_id: "}),s.jsx("code",{children:d.client_id})]}),s.jsxs("div",{className:"dim",style:{marginTop:"0.25rem"},children:[s.jsx("span",{className:"muted",children:"redirect_uris: "}),d.redirect_uris.map((v,p)=>s.jsxs("span",{children:[s.jsx("code",{children:v}),p<d.redirect_uris.length-1?" ":null]},v))]}),d.scopes.length>0?s.jsxs("div",{className:"dim",style:{marginTop:"0.25rem"},children:[s.jsx("span",{className:"muted",children:"requested scopes: "}),d.scopes.map((v,p)=>s.jsxs("span",{children:[s.jsx("code",{children:py(v)}),p<d.scopes.length-1?" ":null]},v)),d.scopes.some(fm)?s.jsxs("p",{className:"muted",style:{marginTop:"0.4rem",fontStyle:"italic",fontSize:"0.85rem"},children:[s.jsx("code",{children:"*"})," — a specific vault is selected during sign-in via the consent picker (or the user's assigned vault for multi-user setups)."]}):null]}):null,s.jsxs("div",{className:"dim",style:{marginTop:"0.25rem"},children:[s.jsx("span",{className:"muted",children:"registered: "}),s.jsx("code",{title:d.registered_at,children:d.registered_at})]}),j?s.jsx("div",{className:"error-banner",style:{marginTop:"0.5rem"},children:s.jsx("code",{children:j})}):null]})}),s.jsxs("div",{style:{marginTop:"1rem",display:"flex",gap:"0.5rem"},children:[s.jsx("button",{type:"button",onClick:()=>{r()},disabled:g,children:g?"Approving…":`Approve ${h}`}),s.jsx(Ke,{to:"/permissions",className:"secondary",style:{alignSelf:"center"},children:"Cancel"})]})]})}function py(i){return fm(i)?`vault:*:${i.split(":")[1]}`:i}function fm(i){const c=i.split(":");if(c.length!==2||c[0]!=="vault")return!1;const r=c[1];return r==="read"||r==="write"}function vy(i,c){return Zl(i,i,new Set)}function Zl(i,c,r){if(Array.isArray(i))return i.map(h=>Zl(h,c,r));if(i===null||typeof i!="object")return i;const o=i;if(typeof o.$ref=="string")return yy(o,c,r);const d={};for(const[h,g]of Object.entries(o))d[h]=Zl(g,c,r);return d}function yy(i,c,r){const o=i.$ref;if(typeof o!="string")throw new Error(`Invalid $ref: expected string, got ${typeof o}`);if(!o.startsWith("#"))throw new Error(`Unsupported $ref "${o}": external refs (URLs / file paths) are not supported`);if(r.has(o))throw new Error(`Circular $ref detected: "${o}" already on resolution path`);const d=gy(o,c);if(d===void 0)throw new Error(`Unknown $ref "${o}": no definition at that path`);if(d===null||typeof d!="object"||Array.isArray(d))throw new Error(`Invalid $ref target at "${o}": expected object, got ${typeof d}`);const h=new Set(r);h.add(o);const g=Zl(d,c,h),j={};for(const[v,p]of Object.entries(i))v!=="$ref"&&(j[v]=Zl(p,c,h));return{...g,...j}}function gy(i,c){const r=i.slice(1);if(r==="")return c;if(!r.startsWith("/"))throw new Error(`Unsupported $ref "${i}": fragment must start with "/"`);const o=r.slice(1).split("/").map(h=>decodeURIComponent(h).replace(/~1/g,"/").replace(/~0/g,"~"));let d=c;for(const h of o)if(d===null||typeof d!="object"||(d=d[h],d===void 0))return;return d}function by(){const{short:i=""}=Wh(),[c,r]=C.useState({kind:"loading"}),[o,d]=C.useState({}),[h,g]=C.useState({}),[j,v]=C.useState({}),[p,y]=C.useState(!1),[b,z]=C.useState(null),[R,k]=C.useState({}),q=C.useCallback(async()=>{r({kind:"loading"}),d({}),g({}),v({}),z(null),k({});try{const Y=await I0(i);if(Y===null){r({kind:"no_schema"});return}let S;try{S=vy(Y)}catch(G){const ve=G instanceof Error?G.message:String(G);r({kind:"error",message:`Schema $ref resolution failed — ${ve}`});return}const O=await P0(i);r({kind:"ok",schema:S,values:O}),d({...O}),v({...O})}catch(Y){if(Y instanceof Q&&Y.status===404){r({kind:"not_installed"});return}const S=Y instanceof Error?Y.message:String(Y);r({kind:"error",message:S})}},[i]);C.useEffect(()=>{q()},[q]);function X(Y,S){var ve;d(te=>({...te,[Y]:S}));const O=c.kind==="ok"?(ve=c.schema.properties)==null?void 0:ve[Y]:void 0;if((O==null?void 0:O.writeOnly)===!0){const te=S!==""&&S!==void 0&&S!==null;g(he=>({...he,[Y]:te}))}else g(te=>({...te,[Y]:S!==j[Y]}));k(te=>{if(!(Y in te))return te;const he={...te};return delete he[Y],he})}async function Z(Y){if(Y.preventDefault(),p||c.kind!=="ok")return;y(!0),z(null),k({});const S={};for(const[O,G]of Object.entries(h))G&&(S[O]=o[O]);if(Object.keys(S).length===0){y(!1),z({kind:"error",message:"No changes to save. Edit a field first."});return}try{const O=await ey(i,S);z({kind:"success",message:"Configuration saved.",restartRequired:Array.isArray(O.restart_required)?O.restart_required:[]}),g({})}catch(O){if(O instanceof Q&&O.status===400)try{const ve=JSON.parse(O.message),te=Array.isArray(ve.errors)?ve.errors:[];if(te.length>0){const he={};for(const Qe of te)typeof(Qe==null?void 0:Qe.path)=="string"&&typeof(Qe==null?void 0:Qe.message)=="string"&&(he[Qe.path]=Qe.message);k(he),z({kind:"error",message:ve.message??ve.error_description??"Validation failed."});return}z({kind:"error",message:ve.message??ve.error_description??"Validation failed."});return}catch{}const G=O instanceof Error?O.message:String(O);z({kind:"error",message:`Save failed — ${G}`})}finally{y(!1)}}if(c.kind==="loading")return s.jsx("div",{className:"empty",children:"Loading configuration…"});if(c.kind==="not_installed")return s.jsxs("section",{className:"module-config",children:[s.jsxs("h1",{children:["Configure ",i]}),s.jsxs("div",{className:"empty",children:[s.jsxs("p",{children:[s.jsx("code",{children:i})," is not installed on this hub."]}),s.jsxs("p",{children:["Visit ",s.jsx(Ke,{to:"/modules",children:"Modules"})," to install it first."]})]})]});if(c.kind==="no_schema")return s.jsxs("section",{className:"module-config",children:[s.jsxs("h1",{children:["Configure ",i]}),s.jsxs("div",{className:"empty",children:[s.jsxs("p",{children:[s.jsx("code",{children:i})," does not expose an operator-editable configuration schema."]}),s.jsxs("p",{children:["Some modules are configured entirely through environment variables or files on disk — check the module's documentation, or visit ",s.jsx(Ke,{to:"/modules",children:"Modules"}),"."]})]})]});if(c.kind==="error")return s.jsxs("section",{className:"module-config",children:[s.jsxs("h1",{children:["Configure ",i]}),s.jsxs("div",{className:"empty",children:["Failed to load configuration: ",c.message,"."," ",s.jsx("button",{type:"button",onClick:()=>void q(),children:"Retry"})]})]});const{schema:P}=c,W=P.properties??{},ue=new Set(P.required??[]),K=Object.entries(W);return s.jsxs("section",{className:"module-config",children:[s.jsxs("header",{className:"module-config-header",children:[s.jsxs("h1",{children:["Configure ",i]}),s.jsxs("p",{className:"muted",children:["Edit values and save. Some changes apply immediately; others (provider, port) require restarting the module to take effect. ",s.jsx(Ke,{to:"/modules",children:"Back to modules"}),"."]})]}),K.length===0&&s.jsx("div",{className:"empty",children:s.jsx("p",{children:"This module's schema defines no editable properties."})}),s.jsxs("form",{onSubmit:Y=>void Z(Y),className:"module-config-form","data-testid":"config-form",children:[s.jsx("fieldset",{children:K.map(([Y,S])=>s.jsx(xy,{name:Y,property:S,value:o[Y],required:ue.has(Y),writeOnlyStored:S.writeOnly===!0&&!(Y in c.values),error:R[Y],dirty:!!h[Y],onChange:O=>X(Y,O)},Y))}),s.jsxs("div",{className:"actions",children:[s.jsx("button",{type:"submit",disabled:p||K.length===0,children:p?"Saving…":"Save"}),s.jsx("button",{type:"button",className:"destructive",disabled:p,onClick:()=>void q(),children:"Discard changes"})]}),(b==null?void 0:b.kind)==="success"&&s.jsxs("div",{className:"banner banner-success","data-testid":"save-success",children:[s.jsx("strong",{children:b.message}),b.restartRequired.length>0&&s.jsxs(s.Fragment,{children:[s.jsxs("p",{className:"muted",children:["Restart ",i," to apply these field changes:"]}),s.jsx("ul",{children:b.restartRequired.map(Y=>s.jsx("li",{children:s.jsx("code",{children:Y})},Y))})]})]}),(b==null?void 0:b.kind)==="error"&&s.jsx("div",{className:"banner banner-error error","data-testid":"save-error",children:b.message})]})]})}function xy({name:i,property:c,value:r,required:o,writeOnlyStored:d,error:h,dirty:g,onChange:j}){const v=`config-field-${i}`,p=c.title??i,y=c.description,b=Array.isArray(c.enum)&&c.enum.length>0;if(c.type==="boolean")return s.jsxs("div",{className:`field field-inline ${h?"field-invalid":""}`,"data-field":i,children:[s.jsxs("label",{htmlFor:v,children:[s.jsx("input",{id:v,type:"checkbox",checked:!!r,onChange:z=>j(z.target.checked)}),s.jsx("span",{className:"field-label-inline",children:p})]}),y&&s.jsx("p",{className:"muted field-hint",children:y}),h&&s.jsx("p",{className:"error field-error",children:h})]});if(b){const z=c.enum;return s.jsxs("div",{className:`field ${h?"field-invalid":""}`,"data-field":i,children:[s.jsxs("label",{htmlFor:v,children:[s.jsxs("span",{className:"field-label",children:[p,o&&s.jsx("span",{className:"muted",children:" (required)"})]}),s.jsxs("select",{id:v,value:r==null?"":String(r),onChange:R=>{const k=R.target.value;c.type==="number"||c.type==="integer"?j(k===""?void 0:Number(k)):j(k===""?void 0:k)},children:[!o&&s.jsx("option",{value:"",children:"(unset)"}),z.map(R=>s.jsx("option",{value:String(R),children:String(R)},String(R)))]})]}),y&&s.jsx("p",{className:"muted field-hint",children:y}),h&&s.jsx("p",{className:"error field-error",children:h})]})}return c.type==="string"&&c.writeOnly===!0?s.jsxs("div",{className:`field ${h?"field-invalid":""}`,"data-field":i,children:[s.jsxs("label",{htmlFor:v,children:[s.jsxs("span",{className:"field-label",children:[p,o&&s.jsx("span",{className:"muted",children:" (required)"})]}),s.jsx("input",{id:v,type:"password",autoComplete:"new-password",placeholder:d&&!g?"••••••••":"",value:typeof r=="string"?r:"",onChange:z=>j(z.target.value)})]}),s.jsxs("p",{className:"muted field-hint",children:[y&&s.jsxs(s.Fragment,{children:[y," "]}),d?s.jsx("em",{children:"Leave blank to keep the current value."}):s.jsx("em",{children:"Secret — sent only when saved."})]}),h&&s.jsx("p",{className:"error field-error",children:h})]}):c.type==="string"?s.jsxs("div",{className:`field ${h?"field-invalid":""}`,"data-field":i,children:[s.jsxs("label",{htmlFor:v,children:[s.jsxs("span",{className:"field-label",children:[p,o&&s.jsx("span",{className:"muted",children:" (required)"})]}),s.jsx("input",{id:v,type:"text",value:typeof r=="string"?r:"",onChange:z=>j(z.target.value)})]}),y&&s.jsx("p",{className:"muted field-hint",children:y}),h&&s.jsx("p",{className:"error field-error",children:h})]}):c.type==="number"||c.type==="integer"?s.jsxs("div",{className:`field ${h?"field-invalid":""}`,"data-field":i,children:[s.jsxs("label",{htmlFor:v,children:[s.jsxs("span",{className:"field-label",children:[p,o&&s.jsx("span",{className:"muted",children:" (required)"})]}),s.jsx("input",{id:v,type:"number",step:c.type==="integer"?1:"any",min:c.minimum,max:c.maximum,value:typeof r=="number"?r:"",onChange:z=>{const R=z.target.value;j(R===""?void 0:Number(R))}})]}),y&&s.jsx("p",{className:"muted field-hint",children:y}),h&&s.jsx("p",{className:"error field-error",children:h})]}):s.jsxs("div",{className:"field","data-field":i,children:[s.jsxs("span",{className:"field-label",children:[p," ",s.jsx("span",{className:"muted",children:"(unsupported type)"})]}),s.jsx("pre",{className:"muted",children:JSON.stringify(c,null,2)}),y&&s.jsx("p",{className:"muted field-hint",children:y})]})}function jy(){if(typeof navigator>"u")return"other";const i=(navigator.platform||"").toLowerCase();return i.includes("mac")?"darwin":i.includes("linux")?"linux":"other"}function Sy(i,c){const r=[];if(i.darwin&&r.push({label:"macOS",command:i.darwin,preferred:c==="darwin"}),i.linux&&r.push({label:"Linux",command:i.linux,preferred:c==="linux"}),i.generic){const o=r.some(d=>d.preferred);r.push({label:"Any platform",command:i.generic,preferred:!o})}return r.sort((o,d)=>Number(d.preferred)-Number(o.preferred))}function Cy({command:i}){const[c,r]=C.useState(!1);async function o(){try{await navigator.clipboard.writeText(i),r(!0),setTimeout(()=>r(!1),1500)}catch{}}return s.jsxs("div",{className:"depcard-cmd",children:[s.jsx("pre",{className:"depcard-cmd-text",children:i}),s.jsx("button",{type:"button",className:"btn btn-secondary depcard-copy",onClick:()=>void o(),"aria-label":"Copy install command",children:c?"Copied":"Copy"})]})}function Ey({wire:i}){const c=jy(),r=Sy(i.install,c);return s.jsxs("div",{className:"depcard","data-testid":"missing-dependency-card",children:[s.jsxs("h3",{className:"depcard-heading",children:[i.binary," isn't installed"]}),i.why?s.jsxs("p",{className:"depcard-why muted",children:["It's needed to ",i.why,"."]}):null,r.length>0?s.jsxs("div",{className:"depcard-installs",children:[s.jsx("p",{className:"depcard-installs-label",children:"Install it:"}),r.map(o=>s.jsxs("div",{className:o.preferred?"depcard-install preferred":"depcard-install",children:[s.jsx("span",{className:"depcard-os",children:o.label}),s.jsx(Cy,{command:o.command})]},o.label))]}):null,i.docs_url?s.jsx("p",{className:"depcard-docs",children:s.jsx("a",{href:i.docs_url,target:"_blank",rel:"noreferrer noopener",children:"Documentation"})}):null,i.sysadmin_hint?s.jsx("p",{className:"depcard-hint muted",children:i.sysadmin_hint}):null]})}function Ny(i){const{error:c,errorDetail:r}=i;return(r==null?void 0:r.error_type)==="missing_dependency"?s.jsx(Ey,{wire:r}):r!=null&&r.error_description?s.jsx("span",{className:"depcard-fallback",children:r.error_description}):c?s.jsx("span",{className:"depcard-fallback",children:c}):null}function Ty(i){switch(i){case"running":return"active";case"starting":case"restarting":return"pending";case"crashed":return"failing";case"stopped":case null:case void 0:return"inactive";default:return"inactive"}}function wy(i){if(i==null)return"active";switch(i){case"active":case"pending":case"inactive":case"failing":return i;case"pending-oauth":return"pending";case"disabled":return"inactive";default:return"active"}}const _y=1e3;function Ay(){const[i,c]=C.useState({kind:"loading"}),[r,o]=C.useState([]),[d,h]=C.useState({}),[g,j]=C.useState({}),v=C.useCallback(async()=>{try{const S=await cm();c({kind:"ok",catalog:S})}catch(S){const O=S instanceof Error?S.message:String(S);c({kind:"error",message:O})}},[]);C.useEffect(()=>{v()},[v]);const p=C.useRef(null);C.useEffect(()=>{if(r.length===0){p.current&&(clearInterval(p.current),p.current=null);return}if(!p.current)return p.current=setInterval(()=>{Promise.all(r.map(async S=>{var O;try{const G=await ty(S.operationId);o(ve=>ve.map(te=>te.operationId===G.id?{...te,log:G.log,status:G.status,error:G.error,errorDetail:G.error_detail}:te)),(G.status==="succeeded"||G.status==="failed")&&(G.status==="failed"&&((O=G.error_detail)==null?void 0:O.error_type)==="missing_dependency"?v():setTimeout(()=>{o(te=>te.filter(he=>he.operationId!==G.id)),v()},1500))}catch(G){const ve=G instanceof Error?G.message:String(G);o(te=>te.map(he=>he.operationId===S.operationId?{...he,status:"failed",error:ve}:he))}}))},_y),()=>{p.current&&(clearInterval(p.current),p.current=null)}},[r,v]);async function y(S){j(O=>{const G={...O};return delete G[S],G});try{const O=await J0(S);o(G=>[...G,{kind:"install",operationId:O,short:S,log:[],status:"pending"}])}catch(O){j(G=>({...G,[S]:O instanceof Error?O.message:String(O)}))}}async function b(S){j(O=>{const G={...O};return delete G[S],G});try{const O=await K0(S);o(G=>[...G,{kind:"upgrade",operationId:O,short:S,log:[],status:"pending"}])}catch(O){j(G=>({...G,[S]:O instanceof Error?O.message:String(O)}))}}async function z(S){if(!d[S]){h(O=>({...O,[S]:!0})),j(O=>{const G={...O};return delete G[S],G});try{await $0(S),await v()}catch(O){j(G=>({...G,[S]:O instanceof Error?O.message:String(O)}))}finally{h(O=>({...O,[S]:!1}))}}}async function R(S){if(!d[S]&&window.confirm(`Uninstall ${S}? The container will stop the service, remove the package, and drop its services.json entry. The persistent disk's data dir is left intact.`)){h(O=>({...O,[S]:!0})),j(O=>{const G={...O};return delete G[S],G});try{await F0(S),await v()}catch(O){j(G=>({...G,[S]:O instanceof Error?O.message:String(O)}))}finally{h(O=>({...O,[S]:!1}))}}}if(i.kind==="loading")return s.jsx("div",{className:"empty",children:"Loading modules…"});if(i.kind==="error")return i.message.includes("setup_required")?s.jsxs("div",{className:"empty",children:["Hub not yet configured. ",s.jsx("a",{href:"/admin/setup",children:"Finish first-boot setup"})," first."]}):s.jsxs("div",{className:"empty",children:["Failed to load modules: ",i.message,"."," ",s.jsx("button",{type:"button",onClick:()=>void v(),children:"Retry"})]});const k=i.catalog,{modules:q,supervisor_available:X,module_install_channel:Z}=k,P=q.filter(S=>S.installed),W=q.filter(S=>!S.installed&&S.available),ue=new Set(r.filter(S=>S.kind==="install").map(S=>S.short)),K=W.filter(S=>!ue.has(S.short));async function Y(S){if(S!==Z){c({kind:"ok",catalog:{...k,module_install_channel:S}});try{const O=await W0(S);c(G=>G.kind==="ok"?{kind:"ok",catalog:{...G.catalog,module_install_channel:O}}:G)}catch(O){const G=O instanceof Error?O.message:String(O);c({kind:"error",message:`Failed to update channel — ${G}`})}}}return s.jsxs("section",{className:"modules",children:[s.jsx("h1",{children:"Modules"}),s.jsx("p",{className:"muted",children:"Install, upgrade, and manage Parachute modules. Available modules are pinned for the v0.6 release; the marketplace is on the roadmap."}),s.jsx(Dy,{channel:Z,disabled:!X,onChange:S=>void Y(S)}),!X&&s.jsxs("div",{className:"banner banner-info",children:["This hub is running outside container mode (no supervisor wired). Module install / restart / upgrade is available only under ",s.jsx("code",{children:"parachute serve"}),". On-box installs use"," ",s.jsx("code",{children:"parachute install vault"})," etc. from a shell instead."]}),r.length>0&&s.jsxs("div",{className:"banner","data-testid":"pending-ops-banner",children:[s.jsx("strong",{children:"In progress:"}),s.jsx("ul",{children:r.map(S=>s.jsxs("li",{children:[s.jsx("code",{children:S.short})," · ",S.kind," · status: ",S.status,S.status==="failed"&&(S.errorDetail||S.error)?s.jsx("div",{className:"depcard-wrap",children:Ny({error:S.error,errorDetail:S.errorDetail})}):null,S.log.length>0&&s.jsxs("details",{children:[s.jsxs("summary",{children:[S.log.length," log line(s)"]}),s.jsx("pre",{children:S.log.join(`
61
+ `)})]})]},S.operationId))})]}),s.jsxs("section",{className:"modules-installed","data-testid":"installed-section",children:[s.jsx("h2",{children:"Installed modules"}),P.length===0?s.jsxs("p",{className:"muted","data-testid":"installed-empty",children:["No modules installed yet. Pick one from ",s.jsx("strong",{children:"Install a module"})," below to get started."]}):s.jsx("ul",{className:"module-list",children:P.map(S=>s.jsx(zy,{module:S,supervisorAvailable:X,syncBusy:!!d[S.short],errorMessage:g[S.short],onUpgrade:()=>void b(S.short),onRestart:()=>void z(S.short),onUninstall:()=>void R(S.short)},S.short))})]}),s.jsxs("section",{className:"modules-installable","data-testid":"installable-section",children:[s.jsx("h2",{children:"Install a module"}),K.length===0?s.jsx("p",{className:"muted","data-testid":"installable-empty",children:ue.size>0?"Install in progress — see In progress above.":"All available modules are installed."}):s.jsx("ul",{className:"install-list",children:K.map(S=>s.jsx(My,{module:S,supervisorAvailable:X,installing:ue.has(S.short),errorMessage:g[S.short],onInstall:()=>void y(S.short)},S.short))})]})]})}const Ry={scribe:"Scribe admin SPA tracked at scribe#53",runner:"Runner admin SPA tracked at runner#8"};function zy({module:i,supervisorAvailable:c,syncBusy:r,errorMessage:o,onUpgrade:d,onRestart:h,onUninstall:g}){const j=c&&!r,v=i.installed_version!==i.latest_version&&i.latest_version!==null,p=i.management_url,y=Ry[i.short];return s.jsxs("li",{className:"module-row","data-short":i.short,children:[s.jsxs("header",{children:[s.jsxs("h2",{children:[i.display_name," ",s.jsxs("span",{className:"muted",children:["(",i.short,")"]})]}),(()=>{const b=Oy(i);return s.jsx("span",{className:`status status-${b.cssState}`,"data-state":b.cssState,"data-testid":`module-status-${i.short}`,children:b.label})})()]}),i.tagline?s.jsx("p",{className:"tagline",children:i.tagline}):null,s.jsxs("dl",{className:"meta",children:[s.jsx("dt",{children:"Package"}),s.jsx("dd",{children:s.jsx("code",{children:i.package})}),s.jsx("dt",{children:"Installed"}),s.jsxs("dd",{children:["v",i.installed_version??"unknown",v&&s.jsxs("span",{className:"badge",children:["v",i.latest_version," available"]})]}),i.pid&&s.jsxs(s.Fragment,{children:[s.jsx("dt",{children:"PID"}),s.jsx("dd",{children:i.pid})]})]}),i.uis.length>0&&s.jsx(Uy,{uis:i.uis}),s.jsxs("div",{className:"actions",children:[p?s.jsx("a",{className:"btn",href:p,"data-testid":`open-${i.short}`,children:"Open"}):s.jsx("button",{type:"button",className:"btn",disabled:!0,title:y??"This module hasn't shipped an admin UI yet.","data-testid":`open-${i.short}`,children:"Open"}),s.jsx("button",{type:"button",disabled:!j,onClick:h,children:"Restart"}),s.jsx("button",{type:"button",disabled:!j||!v,onClick:d,children:v?`Upgrade to v${i.latest_version}`:"Up to date"}),s.jsx("button",{type:"button",className:"destructive",disabled:!j,onClick:g,children:"Uninstall"})]}),o&&s.jsx("div",{className:"error",children:o})]})}function My({module:i,supervisorAvailable:c,installing:r,errorMessage:o,onInstall:d}){const h=c&&!r;return s.jsxs("li",{className:"install-card","data-short":i.short,children:[s.jsxs("div",{className:"install-card-body",children:[s.jsxs("h3",{children:[i.display_name," ",s.jsxs("span",{className:"muted",children:["(",i.short,")"]})]}),i.tagline?s.jsx("p",{className:"tagline",children:i.tagline}):null,s.jsxs("p",{className:"muted install-card-meta",children:[s.jsx("code",{children:i.package}),i.latest_version?s.jsxs(s.Fragment,{children:[" · ","latest ",s.jsxs("code",{children:["v",i.latest_version]})]}):null]})]}),s.jsx("div",{className:"install-card-actions",children:s.jsx("button",{type:"button",disabled:!h,onClick:d,children:r?"Installing…":"Install"})}),o&&s.jsx("div",{className:"error",children:o})]})}function Oy(i){if(!i.installed)return{cssState:"absent",label:"not installed"};if(!i.supervisor_status)return{cssState:"absent",label:"not supervised"};const c=Ty(i.supervisor_status);return{cssState:c,label:c}}function Uy({uis:i}){return s.jsxs("details",{className:"module-uis","data-testid":"module-uis",open:!0,children:[s.jsxs("summary",{children:["Hosted UIs ",s.jsxs("span",{className:"muted",children:["(",i.length,")"]})]}),s.jsx("ul",{className:"ui-sub-units",children:i.map(c=>{const r=wy(c.status);return s.jsxs("li",{className:"ui-sub-unit","data-name":c.name,children:[c.icon_url&&s.jsx("img",{src:c.icon_url,alt:"",className:"ui-icon",width:20,height:20,loading:"lazy"}),s.jsxs("div",{className:"ui-sub-unit-body",children:[s.jsxs("a",{href:c.path,className:"ui-sub-unit-link",children:[s.jsx("strong",{children:c.display_name}),s.jsxs("span",{className:"muted",children:[" · ",c.path]})]}),c.tagline?s.jsx("p",{className:"tagline",children:c.tagline}):null]}),s.jsx("span",{className:`status status-${r}`,"data-state":r,"data-testid":`ui-status-${c.name}`,children:r})]},c.name)})})]})}function Dy({channel:i,disabled:c,onChange:r}){return s.jsxs("fieldset",{className:"channel-toggle","data-testid":"channel-toggle",children:[s.jsx("legend",{children:"Install channel"}),s.jsxs("label",{children:[s.jsx("input",{type:"radio",name:"module-install-channel",value:"latest",checked:i==="latest",disabled:c,onChange:()=>r("latest")}),"Stable (",s.jsx("code",{children:"latest"}),")"]}),s.jsxs("label",{children:[s.jsx("input",{type:"radio",name:"module-install-channel",value:"rc",checked:i==="rc",disabled:c,onChange:()=>r("rc")}),"Release candidates (",s.jsx("code",{children:"rc"}),")"]}),s.jsxs("p",{className:"muted",children:["All future module installs and upgrades use this channel. Existing installed modules are unaffected — use ",s.jsx("strong",{children:"Upgrade"})," to pull a newer version."]}),s.jsxs("p",{className:"muted",children:["More hub settings (canonical URL, etc.) at ",s.jsx(Ke,{to:"/settings",children:"Settings"}),"."]})]})}const ky="https://parachute.computer/install#connect-mcp-clients";function dm(i){return`${i.replace(/\/+$/,"")}/mcp`}function hm(i,c){return`claude mcp add --transport http parachute-${i} ${dm(c)}`}function Hy(i,c,r){return`${hm(i,c)} --header "Authorization: Bearer ${r}"`}function Fc({value:i,label:c="Copy"}){const[r,o]=C.useState(!1);return s.jsx("button",{type:"button",className:"secondary",onClick:()=>{typeof navigator>"u"||!navigator.clipboard||navigator.clipboard.writeText(i).then(()=>{o(!0),setTimeout(()=>o(!1),2e3)})},children:r?"Copied ✓":c})}function mm({vaultName:i,vaultUrl:c,embedded:r=!1}){const o=dm(c),d=hm(i,c),[h,g]=C.useState(!1),[j,v]=C.useState({kind:"idle"});async function p(){if(j.kind!=="submitting"){v({kind:"submitting"});try{const z=await sm({scope:`vault:${i}:read vault:${i}:write`});v({kind:"minted",token:z})}catch(z){const R=z instanceof Q?`mint failed (${z.status}): ${z.message}`:z instanceof Error?z.message:String(z);v({kind:"error",message:R})}}}const y=j.kind==="minted"?Hy(i,c,j.token.token):null,b=s.jsxs(s.Fragment,{children:[s.jsx("h3",{children:"Connect an MCP client"}),s.jsxs("p",{className:"muted",children:["Connect an MCP client — Claude Code, Claude.ai, etc. — to the ",s.jsx("code",{children:i})," ","vault. The client signs in to this hub and reads/writes vault data over MCP."]}),s.jsxs("div",{className:"mcp-field",children:[s.jsx("span",{className:"mcp-field-label",children:"Endpoint"}),s.jsxs("div",{className:"token-box",children:[s.jsx("code",{"data-testid":"mcp-endpoint",children:o}),s.jsx(Fc,{value:o})]})]}),s.jsxs("div",{className:"mcp-field",children:[s.jsx("span",{className:"mcp-field-label",children:"Claude Code"}),s.jsxs("div",{className:"token-box",children:[s.jsx("code",{"data-testid":"mcp-add-command",children:d}),s.jsx(Fc,{value:d})]}),s.jsx("p",{className:"dim",children:"No token needed — the command triggers browser OAuth on first use (you sign in to this hub and approve access). For other clients, point them at the endpoint above."})]}),s.jsxs("details",{className:"mcp-token-path",open:h,onToggle:z=>g(z.currentTarget.open),children:[s.jsx("summary",{children:"Use a token instead (headless / CI clients)"}),s.jsxs("p",{className:"dim",children:["For clients that can't do browser OAuth, mint a scope-narrow hub token (",s.jsxs("code",{children:["vault:",i,":read vault:",i,":write"]})," ","— not admin) and pass it as a header. Revealed once; copy it now."]}),j.kind==="minted"&&y?s.jsxs("div",{className:"mint-banner","data-testid":"mcp-header-banner",children:[s.jsx("h3",{children:"Token minted"}),s.jsxs("p",{className:"muted",children:["This is the only time the hub shows this token. Copy the command below — it embeds the live token in the ",s.jsx("code",{children:"Authorization"})," header."]}),s.jsxs("div",{className:"token-box",children:[s.jsx("code",{"data-testid":"mcp-header-command",children:y}),s.jsx(Fc,{value:y})]}),s.jsxs("p",{className:"warn",children:["⚠ Manage and revoke this token at ",s.jsx("code",{children:"/admin/tokens"}),"."]})]}):s.jsx("div",{className:"actions",children:s.jsx("button",{type:"button",className:"secondary",onClick:()=>{p()},disabled:j.kind==="submitting",children:j.kind==="submitting"?"Minting…":"Mint a token"})}),j.kind==="error"?s.jsx("div",{className:"error-banner",style:{marginTop:"0.5rem"},children:s.jsx("code",{children:j.message})}):null]}),s.jsx("p",{className:"dim mcp-docs-link",children:s.jsx("a",{href:ky,target:"_blank",rel:"noreferrer",children:"Full connect docs →"})})]});return r?s.jsx("div",{className:"mcp-connect-card mcp-connect-card-embedded",children:b}):s.jsx("div",{className:"mcp-connect-card",children:b})}const By=/^[a-zA-Z0-9_-]+$/,Ly=new Set(["list"]);function qy(){const i=ir(),[c,r]=C.useState(""),[o,d]=C.useState({kind:"idle"}),h=o.kind==="created"&&!!o.result.token;C.useEffect(()=>{if(!h)return;const v=p=>{p.preventDefault(),p.returnValue=""};return window.addEventListener("beforeunload",v),()=>window.removeEventListener("beforeunload",v)},[h]);const g=Gy(c),j=async v=>{if(v.preventDefault(),!g){d({kind:"submitting"});try{const p=await H0({name:c});d({kind:"created",result:p})}catch(p){const y=p instanceof Q?`${p.status}: ${p.message}`:p instanceof Error?p.message:String(p);d({kind:"error",message:y})}}};return o.kind==="created"?s.jsx(Yy,{result:o.result,onDone:()=>i("/vaults")}):s.jsxs("div",{children:[s.jsx("h2",{children:"Create a vault"}),s.jsxs("p",{className:"muted",children:["A vault stores tokens, secrets, and notes scoped to this hub. The hub provisions it via"," ",s.jsx("code",{children:"parachute-vault create"})," on the host filesystem and registers it in"," ",s.jsx("code",{children:"services.json"}),"."]}),o.kind==="error"&&s.jsxs("div",{className:"error-banner",children:["Couldn't create vault: ",s.jsx("code",{children:o.message})]}),s.jsxs("form",{onSubmit:j,className:"section",children:[s.jsxs("div",{className:"row",children:[s.jsx("label",{htmlFor:"vault-name",children:"Vault name"}),s.jsx("input",{id:"vault-name",type:"text",value:c,onChange:v=>r(v.target.value),placeholder:"e.g. work, home, scratch",disabled:o.kind==="submitting"}),g?s.jsx("div",{className:"field-error",children:g}):s.jsxs("div",{className:"field-hint",children:["Letters, numbers, hyphens, and underscores. Becomes the path under"," ",s.jsx("code",{children:"/vault/<name>"}),"."]})]}),s.jsxs("div",{className:"actions",children:[s.jsx("button",{type:"submit",disabled:c.length===0||!!g||o.kind==="submitting",children:o.kind==="submitting"?"Creating…":"Create vault"}),s.jsx(Ke,{to:"/vaults",className:"muted",children:"Cancel"})]})]})]})}function Yy({result:i,onDone:c}){const[r,o]=C.useState(!1),d=async()=>{if(i.token)try{await navigator.clipboard.writeText(i.token),o(!0),setTimeout(()=>o(!1),2e3)}catch{}};return s.jsxs("div",{children:[s.jsx("h2",{children:"Vault created"}),i.token?s.jsxs("div",{className:"mint-banner",children:[s.jsx("h3",{children:"Your access token (shown once)"}),s.jsxs("p",{className:"muted",children:["This is a hub-issued access token (a JWT scoped ",s.jsxs("code",{children:["vault:",i.name,":admin"]}),") — not a vault password. It's the only time the hub will show it. Copy it and store it somewhere safe — a password manager, the operator's notes. If you lose it, you don't need it for the OAuth connect path below; for a header-auth token, mint a fresh scope-narrow one with"," ",s.jsxs("code",{children:["parachute auth mint-token --scope vault:",i.name,":read"]}),` (or the connect card's "Use a token instead" option).`]}),s.jsxs("div",{className:"token-box",children:[s.jsx("code",{children:i.token}),s.jsx("button",{type:"button",onClick:d,className:"secondary",children:r?"Copied":"Copy"})]}),s.jsx("p",{className:"warn",children:"⚠ Don't navigate away until you've saved this token."}),s.jsx("div",{className:"actions",children:s.jsx("button",{type:"button",onClick:c,children:"Done — I've saved the token"})})]}):i.created?s.jsxs("div",{className:"section",children:[s.jsxs("p",{children:["Vault ",s.jsx("code",{children:i.name})," was created, but no access token was minted",i.tokenGuidance?s.jsxs(s.Fragment,{children:[" ","— ",s.jsx("span",{className:"muted",children:i.tokenGuidance})]}):s.jsxs("span",{className:"muted",children:[" ","(the hub couldn't mint one at create time — common on a loopback origin)"]}),". You don't need a token for the OAuth connect command below. For a header-auth token, mint a scope-narrow one with"," ",s.jsxs("code",{children:["parachute auth mint-token --scope vault:",i.name,":read"]}),"."]}),s.jsx("div",{className:"actions",children:s.jsx("button",{type:"button",onClick:c,children:"Done"})})]}):s.jsxs("div",{className:"section",children:[s.jsxs("p",{children:["Vault ",s.jsx("code",{children:i.name})," already existed; nothing new was created. Connect to it with the command below (OAuth, no token needed), or mint a scope-narrow header-auth token with ",s.jsxs("code",{children:["parachute auth mint-token --scope vault:",i.name,":read"]}),"."]}),s.jsx("div",{className:"actions",children:s.jsx(Ke,{to:"/vaults",children:s.jsx("button",{type:"button",children:"Continue"})})})]}),s.jsx("div",{className:"section",children:s.jsx(mm,{vaultName:i.name,vaultUrl:i.url})}),s.jsxs("div",{className:"kv section",children:[s.jsx("div",{children:"Name"}),s.jsx("div",{children:s.jsx("code",{children:i.name})}),s.jsx("div",{children:"URL"}),s.jsx("div",{children:s.jsx("code",{children:i.url})}),s.jsx("div",{children:"Version"}),s.jsx("div",{children:s.jsx("code",{children:i.version})}),i.paths&&s.jsxs(s.Fragment,{children:[s.jsx("div",{children:"Vault dir"}),s.jsx("div",{children:s.jsx("code",{children:i.paths.vault_dir})}),s.jsx("div",{children:"Database"}),s.jsx("div",{children:s.jsx("code",{children:i.paths.vault_db})}),s.jsx("div",{children:"Config"}),s.jsx("div",{children:s.jsx("code",{children:i.paths.vault_config})})]})]})]})}function Gy(i){return i.length===0?null:By.test(i)?Ly.has(i)?`"${i}" is a reserved name.`:null:"Letters, numbers, hyphens, and underscores only."}function Zy(){const[i,c]=C.useState({kind:"loading"}),[r,o]=C.useState(""),[d,h]=C.useState(""),[g,j]=C.useState(0),[v,p]=C.useState({kind:"idle"});C.useEffect(()=>{let R=!1;return c({kind:"loading"}),L0(d?{vault:d}:{}).then(q=>{R||c({kind:"ok",grants:q})}).catch(q=>{if(R)return;const X=q instanceof Error?q.message:String(q);c({kind:"error",message:X})}),()=>{R=!0}},[g,d]);function y(R){R.preventDefault(),h(r.trim())}function b(){o(""),h("")}async function z(R){p({kind:"revoking",clientId:R.client_id});try{await q0(R.client_id),p({kind:"idle"}),j(k=>k+1)}catch(k){const q=k instanceof Q?`revoke failed (${k.status}): ${k.message}`:k instanceof Error?k.message:String(k);p({kind:"error",clientId:R.client_id,message:q})}}return s.jsxs("div",{"data-route-content":"true",children:[s.jsx("div",{className:"list-header",children:s.jsx("h1",{children:"Permissions"})}),s.jsxs("p",{className:"muted",children:["Apps you've granted OAuth scopes to. Revoking a grant forces the consent screen on the next authorize flow — it does ",s.jsx("em",{children:"not"})," invalidate tokens already issued."]}),s.jsxs("form",{onSubmit:y,style:{marginTop:"1rem",marginBottom:"1rem"},children:[s.jsx("label",{htmlFor:"vault-filter",className:"muted",style:{marginRight:"0.5rem"},children:"Filter by vault:"}),s.jsx("input",{id:"vault-filter",type:"text",value:r,onChange:R=>o(R.target.value),placeholder:"e.g. work",style:{marginRight:"0.5rem"}}),s.jsx("button",{type:"submit",children:"Apply"}),d?s.jsx("button",{type:"button",onClick:b,className:"secondary",style:{marginLeft:"0.5rem"},children:"Clear"}):null]}),Xy({state:i,revoke:v,setRevoke:p,onConfirm:z,onRetry:()=>j(R=>R+1)})]})}function Xy({state:i,revoke:c,setRevoke:r,onConfirm:o,onRetry:d}){return i.kind==="loading"?s.jsx("p",{className:"muted","data-loading":"true",children:"Loading…"}):i.kind==="error"?s.jsxs(s.Fragment,{children:[s.jsxs("div",{className:"error-banner",children:["Couldn't load grants: ",s.jsx("code",{children:i.message})]}),s.jsx("button",{type:"button",onClick:d,className:"secondary",children:"Retry"})]}):i.grants.length===0?s.jsxs("div",{className:"empty empty-rich",children:[s.jsx("p",{className:"empty-headline",children:"No grants."}),s.jsx("p",{className:"muted",children:"When an app asks for OAuth scopes and you approve them, the grant lands here. Revoking it forces the consent screen on the next authorize flow."})]}):s.jsx("div",{style:{marginTop:"1rem"},children:i.grants.map(h=>{const g=c.kind==="revoking"&&c.clientId===h.client_id,j=c.kind==="error"&&c.clientId===h.client_id?c:null,v=c.kind==="confirming"&&c.grant.client_id===h.client_id;return s.jsxs("div",{className:"vault-row",children:[s.jsxs("div",{className:"body",children:[s.jsx("div",{className:"name",children:s.jsx("code",{children:h.client_name??h.client_id})}),s.jsxs("div",{className:"dim",children:[s.jsx("span",{className:"muted",children:"granted "}),s.jsx("code",{title:h.granted_at,children:Vy(h.granted_at)})]}),s.jsxs("div",{className:"dim",style:{marginTop:"0.25rem"},children:[s.jsx("span",{className:"muted",children:"scopes: "}),h.scopes.map((p,y)=>s.jsxs("span",{children:[s.jsx("code",{children:p}),y<h.scopes.length-1?" ":null]},p))]}),j?s.jsx("div",{className:"error-banner",style:{marginTop:"0.5rem"},children:s.jsx("code",{children:j.message})}):null,v?s.jsxs("dialog",{open:!0,className:"error-banner",style:{marginTop:"0.5rem",background:"var(--bg-warn, #fffbe6)"},"aria-label":`Confirm revoke ${h.client_name??h.client_id}`,children:[s.jsxs("p",{children:["Revoke ",s.jsx("code",{children:h.client_name??h.client_id}),"? Next OAuth flow for this app will prompt you to consent again."]}),s.jsxs("div",{style:{display:"flex",gap:"0.5rem",marginTop:"0.5rem"},children:[s.jsx("button",{type:"button",onClick:()=>{o(h)},disabled:g,children:g?"Revoking…":"Revoke"}),s.jsx("button",{type:"button",className:"secondary",onClick:()=>r({kind:"idle"}),disabled:g,children:"Cancel"})]})]}):null]}),v?null:s.jsx("button",{type:"button",className:"secondary",onClick:()=>r({kind:"confirming",grant:h}),"aria-label":`Revoke ${h.client_name??h.client_id}`,children:"Revoke"})]},h.client_id)})})}function Vy(i){const c=new Date(i);return Number.isNaN(c.getTime())?i:c.toLocaleString()}function Qy(){const[i,c]=C.useState({kind:"loading"}),[r,o]=C.useState(""),[d,h]=C.useState(!1),[g,j]=C.useState(null),v=C.useCallback(async()=>{try{const k=await rm();c({kind:"ok",setting:k}),o(k.hub_origin??""),j(null)}catch(k){const q=k instanceof Error?k.message:String(k);c({kind:"error",message:q})}},[]);C.useEffect(()=>{v()},[v]);async function p(k){if(k.preventDefault(),d||i.kind!=="ok")return;const q=r.trim(),X=q.length===0?null:q;h(!0),j(null);try{await Oh(X),await v()}catch(Z){const P=Z instanceof Error?Z.message:String(Z);j(P)}finally{h(!1)}}async function y(){if(!d&&i.kind==="ok"){h(!0),j(null);try{await Oh(null),await v()}catch(k){const q=k instanceof Error?k.message:String(k);j(q)}finally{h(!1)}}}if(i.kind==="loading")return s.jsx("div",{className:"empty",children:"Loading settings…"});if(i.kind==="error")return s.jsxs("div",{className:"empty",children:["Failed to load settings: ",i.message,"."," ",s.jsx("button",{type:"button",onClick:()=>void v(),children:"Retry"})]});const{setting:b}=i,z=b.hub_origin!==null,R=r.trim()!==(b.hub_origin??"");return s.jsxs("section",{className:"settings",children:[s.jsx("h1",{children:"Hub settings"}),s.jsx("p",{className:"muted",children:"Hub-wide operator controls. Settings here apply to every module + every minted token."}),s.jsxs("section",{className:"settings-block","aria-labelledby":"canonical-hub-url-heading",children:[s.jsx("h2",{id:"canonical-hub-url-heading",children:"Canonical hub URL"}),s.jsxs("dl",{className:"meta","data-testid":"hub-origin-current",children:[s.jsx("dt",{children:"Current value"}),s.jsxs("dd",{children:[s.jsx("code",{children:b.resolved_issuer})," ",s.jsx(Jy,{source:b.source,hasStored:z})]})]}),s.jsxs("form",{onSubmit:k=>void p(k),className:"settings-form","data-testid":"hub-origin-form",children:[s.jsxs("label",{htmlFor:"hub-origin-input",children:[s.jsx("span",{children:"Canonical URL"}),s.jsx("input",{id:"hub-origin-input",type:"url",inputMode:"url",placeholder:"https://hub.example.com",value:r,disabled:d,onChange:k=>o(k.target.value),autoComplete:"off",spellCheck:!1})]}),s.jsxs("p",{className:"muted",children:["Set this when you've attached a custom domain. Tokens are minted against this URL — changing it invalidates any tokens already in circulation (the ",s.jsx("code",{children:"iss"})," claim won't match the new issuer on verification). Leave blank to use the request origin (default for Render-assigned URLs)."]}),s.jsxs("div",{className:"actions",children:[s.jsx("button",{type:"submit",disabled:d||!R,children:d?"Saving…":"Save"}),s.jsx("button",{type:"button",className:"destructive",disabled:d||!z,onClick:()=>void y(),children:"Reset to default"})]}),g&&s.jsx("div",{className:"error","data-testid":"hub-origin-save-error",children:g})]})]})]})}function Jy({source:i,hasStored:c}){return i==="settings"?s.jsx("span",{className:"badge badge-info","data-testid":"hub-origin-source",children:"from settings"}):i==="env"?s.jsxs("span",{className:"badge badge-info","data-testid":"hub-origin-source",children:["from env var ",s.jsx("code",{children:"PARACHUTE_HUB_ORIGIN"})]}):s.jsx("span",{className:"badge badge-info","data-testid":"hub-origin-source",children:"from request origin"})}const Wc={scope:"",audience:"",expiresIn:"",subject:"",permissions:""};function Ky(){const[i,c]=lm(),r=Wy(i.get("status")),o=Iy(i.get("source")),[d,h]=C.useState({kind:"loading"}),[g,j]=C.useState(0),[v,p]=C.useState({kind:"idle"}),[y,b]=C.useState(Wc),[z,R]=C.useState({kind:"idle"}),[k,q]=C.useState(!1),[X,Z]=C.useState(!1);function P(S,O){c(G=>{const ve=new URLSearchParams(G);return O==="all"?ve.delete(S):ve.set(S,O),ve},{replace:!0})}C.useEffect(()=>{let S=!1;return h({kind:"loading"}),Mh(Dh(r,o)).then(O=>{S||h({kind:"ok",tokens:O.tokens,nextCursor:O.next_cursor})}).catch(O=>{if(S)return;const G=O instanceof Error?O.message:String(O);h({kind:"error",message:G})}),()=>{S=!0}},[g,r,o]);async function W(){if(d.kind!=="ok"||!d.nextCursor||X)return;const S={...Dh(r,o),cursor:d.nextCursor};Z(!0);try{const O=await Mh(S);h({kind:"ok",tokens:[...d.tokens,...O.tokens],nextCursor:O.next_cursor})}catch(O){const G=O instanceof Error?O.message:String(O);h({kind:"error",message:G})}finally{Z(!1)}}async function ue(S){S.preventDefault();const O=y.scope.trim();if(O.length===0){p({kind:"error",message:"scope is required"});return}let G;if(y.permissions.trim().length>0)try{const te=JSON.parse(y.permissions);if(te===null||typeof te!="object"||Array.isArray(te)){p({kind:"error",message:'permissions must be a JSON object (e.g. {"vault":{"default":...}})'});return}G=te}catch(te){const he=te instanceof Error?te.message:String(te);p({kind:"error",message:`permissions is not valid JSON — ${he}`});return}let ve;if(y.expiresIn.trim().length>0){const te=Number(y.expiresIn);if(!Number.isInteger(te)||te<=0){p({kind:"error",message:"expires_in must be a positive integer (seconds)"});return}ve=te}p({kind:"submitting"});try{const te=await sm({scope:O,...y.audience.trim()?{audience:y.audience.trim()}:{},...ve!==void 0?{expires_in:ve}:{},...y.subject.trim()?{subject:y.subject.trim()}:{},...G?{permissions:G}:{}});p({kind:"minted",token:te}),b(Wc),q(!1),j(he=>he+1)}catch(te){const he=te instanceof Q?`mint failed (${te.status}): ${te.message}`:te instanceof Error?te.message:String(te);p({kind:"error",message:he})}}async function K(S){R({kind:"revoking",jti:S});try{await X0(S),R({kind:"idle"}),j(O=>O+1)}catch(O){const G=O instanceof Q?`revoke failed (${O.status}): ${O.message}`:O instanceof Error?O.message:String(O);R({kind:"error",jti:S,message:G})}}function Y(S){typeof navigator<"u"&&navigator.clipboard&&navigator.clipboard.writeText(S)}return s.jsxs("div",{children:[s.jsxs("div",{className:"list-header",children:[s.jsx("h1",{children:"Tokens"}),s.jsx("button",{type:"button",onClick:()=>q(S=>!S),children:k?"Hide form":"Mint new token"})]}),s.jsxs("p",{className:"muted",children:["The hub's token registry. Every CLI / OAuth / operator-mint writes a row here. Revoking flips ",s.jsx("code",{children:"revoked_at"}),"; resource servers on"," ",s.jsx("code",{children:"@openparachute/scope-guard@^0.2.0"})," reject within ~60s of the next poll."]}),v.kind==="minted"?s.jsxs("div",{className:"mint-banner",children:[s.jsx("h3",{children:"Minted"}),s.jsxs("p",{children:["Your new access token (jti: ",s.jsx("code",{children:v.token.jti}),"):"]}),s.jsx("div",{className:"token-box",children:s.jsx("code",{children:v.token.token})}),s.jsx("p",{className:"warn",children:"This is the only time the JWT is shown. Copy it now — there is no DB-side recovery."}),s.jsxs("div",{className:"actions",children:[s.jsx("button",{type:"button",onClick:()=>Y(v.token.token),children:"Copy"}),s.jsx("button",{type:"button",className:"secondary",onClick:()=>p({kind:"idle"}),children:"Dismiss"})]})]}):null,k?s.jsx("div",{className:"section",children:s.jsxs("form",{onSubmit:ue,children:[s.jsxs("div",{className:"row",children:[s.jsx("label",{htmlFor:"mint-scope",children:"Scope (space-separated)"}),s.jsx("input",{id:"mint-scope",type:"text",value:y.scope,onChange:S=>b({...y,scope:S.target.value}),placeholder:"e.g. scribe:transcribe vault:default:read",required:!0}),s.jsxs("div",{className:"field-hint",children:["Space-separated ",s.jsx("code",{children:"resource:verb"})," or ",s.jsx("code",{children:"resource:name:verb"})," ","tuples. The hub rejects non-requestable scopes (admin, host:*) per the privilege-diffusion guard."]})]}),s.jsxs("div",{className:"row",children:[s.jsx("label",{htmlFor:"mint-audience",children:"Audience (optional)"}),s.jsx("input",{id:"mint-audience",type:"text",value:y.audience,onChange:S=>b({...y,audience:S.target.value}),placeholder:"inferred from scope when blank"}),s.jsxs("div",{className:"field-hint",children:["Inferred from scope if omitted. ",s.jsx("code",{children:"vault:<name>:<verb>"})," →"," ",s.jsx("code",{children:"vault.<name>"}),"; otherwise the first colon-prefixed scope's namespace; fallback ",s.jsx("code",{children:"hub"}),"."]})]}),s.jsxs("div",{className:"row",children:[s.jsx("label",{htmlFor:"mint-expires-in",children:"Expires in (seconds, optional)"}),s.jsx("input",{id:"mint-expires-in",type:"text",inputMode:"numeric",value:y.expiresIn,onChange:S=>b({...y,expiresIn:S.target.value}),placeholder:"default 90d (7776000)"})]}),s.jsxs("div",{className:"row",children:[s.jsx("label",{htmlFor:"mint-subject",children:"Subject (optional)"}),s.jsx("input",{id:"mint-subject",type:"text",value:y.subject,onChange:S=>b({...y,subject:S.target.value}),placeholder:"defaults to operator's sub"})]}),s.jsxs("div",{className:"row",children:[s.jsx("label",{htmlFor:"mint-permissions",children:"Permissions (JSON object, optional)"}),s.jsx("textarea",{id:"mint-permissions",value:y.permissions,onChange:S=>b({...y,permissions:S.target.value}),placeholder:'e.g. {"vault":{"default":{"write_tags":["health"]}}}',rows:3,style:{width:"100%",fontFamily:"monospace",fontSize:"0.9rem"}})]}),v.kind==="error"?s.jsx("div",{className:"field-error",children:s.jsx("code",{children:v.message})}):null,s.jsxs("div",{className:"actions",children:[s.jsx("button",{type:"submit",disabled:v.kind==="submitting",children:v.kind==="submitting"?"Minting…":"Mint"}),s.jsx("button",{type:"button",className:"secondary",onClick:()=>{q(!1),b(Wc),p({kind:"idle"})},children:"Cancel"})]})]})}):null,s.jsxs("div",{style:{marginTop:"1rem",marginBottom:"0.5rem",display:"flex",flexWrap:"wrap",gap:"0.5rem",alignItems:"center"},children:[s.jsx("span",{className:"muted",style:{marginRight:"0.5rem",minWidth:"4rem"},children:"Status:"}),[{value:"all",label:"Show all"},{value:"live",label:"Live only"},{value:"revoked",label:"Revoked only"}].map(S=>s.jsx("button",{type:"button",onClick:()=>P("status",S.value),className:r===S.value?void 0:"secondary","aria-pressed":r===S.value,children:S.label},S.value))]}),s.jsxs("div",{style:{marginBottom:"1rem",display:"flex",flexWrap:"wrap",gap:"0.5rem",alignItems:"center"},children:[s.jsx("span",{className:"muted",style:{marginRight:"0.5rem",minWidth:"4rem"},children:"Source:"}),[{value:"all",label:"All sources"},{value:"oauth_refresh",label:"OAuth"},{value:"operator_mint",label:"Operator"},{value:"cli_mint",label:"CLI mint"}].map(S=>s.jsx("button",{type:"button",onClick:()=>P("source",S.value),className:o===S.value?void 0:"secondary","aria-pressed":o===S.value,children:S.label},S.value))]}),$y({list:d,revoke:z,setRevoke:R,onConfirm:K,onLoadMore:W,onRetry:()=>j(S=>S+1),loadingMore:X,filtersActive:r!=="all"||o!=="all"})]})}function $y({list:i,revoke:c,setRevoke:r,onConfirm:o,onLoadMore:d,onRetry:h,loadingMore:g,filtersActive:j}){return i.kind==="loading"?s.jsx("p",{className:"muted","data-loading":"true",children:"Loading…"}):i.kind==="error"?s.jsxs(s.Fragment,{children:[s.jsxs("div",{className:"error-banner",children:["Couldn't load tokens: ",s.jsx("code",{children:i.message})]}),s.jsx("button",{type:"button",onClick:h,className:"secondary",children:"Retry"})]}):i.tokens.length===0?j?s.jsxs("div",{className:"empty empty-rich",children:[s.jsx("p",{className:"empty-headline",children:"No tokens match the current filter."}),s.jsx("p",{className:"muted",children:'Try widening the Status or Source pills above. The default "Show all / All sources" view shows every registry row.'})]}):s.jsxs("div",{className:"empty empty-rich",children:[s.jsx("p",{className:"empty-headline",children:"No tokens."}),s.jsxs("p",{className:"muted",children:["Every CLI mint, OAuth grant, and operator-token rotation lands here. Mint one with the form above, or via ",s.jsx("code",{children:"parachute auth mint-token"}),"."]})]}):s.jsxs("div",{"data-route-content":"true",children:[i.tokens.map(v=>{const p=Fy(v),y=c.kind==="revoking"&&c.jti===v.jti,b=c.kind==="confirming"&&c.jti===v.jti,z=c.kind==="error"&&c.jti===v.jti?c:null,R=v.user_id??v.subject??"(unknown)";return s.jsxs("div",{className:"vault-row",children:[s.jsxs("div",{className:"body",children:[s.jsxs("div",{className:"name",children:[s.jsx("code",{title:v.jti,children:du(v.jti)}),s.jsx("span",{className:`tag${p==="live"?"":" muted"}`,children:p}),s.jsx("span",{className:`tag source-${eg(v.created_via)}`,title:`created_via: ${v.created_via}`,children:Py(v.created_via)})]}),s.jsxs("div",{className:"dim",style:{marginTop:"0.25rem"},children:[s.jsx("span",{className:"muted",children:"identity: "}),s.jsx("code",{children:R}),v.client_id?s.jsxs(s.Fragment,{children:[s.jsx("span",{className:"muted",children:" · client: "}),s.jsx("code",{children:v.client_id})]}):null]}),s.jsxs("div",{className:"dim",style:{marginTop:"0.25rem"},children:[s.jsx("span",{className:"muted",children:"scope: "}),v.scopes.map((k,q)=>s.jsxs("span",{children:[s.jsx("code",{children:k}),q<v.scopes.length-1?" ":null]},k))]}),s.jsxs("div",{className:"dim",style:{marginTop:"0.25rem",fontSize:"0.82rem"},children:[s.jsx("span",{className:"muted",children:"created "}),s.jsx("code",{title:v.created_at,children:Ic(v.created_at)}),s.jsx("span",{className:"muted",children:" · expires "}),s.jsx("code",{title:v.expires_at,children:Ic(v.expires_at)}),v.revoked_at?s.jsxs(s.Fragment,{children:[s.jsx("span",{className:"muted",children:" · revoked "}),s.jsx("code",{title:v.revoked_at,children:Ic(v.revoked_at)})]}):null]}),v.permissions?s.jsxs("details",{style:{marginTop:"0.35rem"},children:[s.jsx("summary",{className:"muted",style:{cursor:"pointer",fontSize:"0.85rem"},children:"permissions"}),s.jsx("pre",{style:{fontSize:"0.82rem",marginTop:"0.25rem"},children:JSON.stringify(v.permissions,null,2)})]}):null,z?s.jsx("div",{className:"error-banner",style:{marginTop:"0.5rem"},children:s.jsx("code",{children:z.message})}):null,b?s.jsxs("dialog",{open:!0,className:"error-banner",style:{marginTop:"0.5rem",background:"var(--bg-warn, #fffbe6)"},"aria-label":`Confirm revoke ${du(v.jti)}`,children:[s.jsxs("p",{children:["Revoke ",s.jsx("code",{children:du(v.jti)}),"? Resource servers reject within ~60s of the next revocation-list poll. This cannot be undone."]}),s.jsxs("div",{style:{display:"flex",gap:"0.5rem",marginTop:"0.5rem"},children:[s.jsx("button",{type:"button",onClick:()=>{o(v.jti)},disabled:y,children:y?"Revoking…":"Revoke"}),s.jsx("button",{type:"button",className:"secondary",onClick:()=>r({kind:"idle"}),disabled:y,children:"Cancel"})]})]}):null]}),!b&&p==="live"?s.jsx("button",{type:"button",className:"secondary",onClick:()=>r({kind:"confirming",jti:v.jti}),"aria-label":`Revoke ${du(v.jti)}`,children:"Revoke"}):null]},v.jti)}),i.nextCursor?s.jsx("div",{style:{marginTop:"1rem"},children:s.jsx("button",{type:"button",className:"secondary",disabled:g,onClick:()=>{d()},children:g?"Loading…":"Load more"})}):null]})}function Fy(i){if(i.revoked_at)return"revoked";const c=new Date(i.expires_at).getTime();return!Number.isNaN(c)&&c<Date.now()?"expired":"live"}function Wy(i){return i==="live"||i==="revoked"||i==="all"?i:"all"}function Iy(i){return i==="oauth_refresh"||i==="operator_mint"||i==="cli_mint"||i==="all"?i:"all"}function Dh(i,c){const r={};return i==="live"?r.revoked="false":i==="revoked"?r.revoked="true":r.revoked="all",c!=="all"&&(r.createdVia=c),r}function Py(i){switch(i){case"oauth_refresh":return"OAuth";case"operator_mint":return"Operator";case"cli_mint":return"CLI";default:return i}}function eg(i){switch(i){case"oauth_refresh":return"oauth";case"operator_mint":return"operator";case"cli_mint":return"cli";default:return"unknown"}}function du(i){return i.length<=14?i:`${i.slice(0,8)}…${i.slice(-4)}`}function Ic(i){const c=new Date(i);return Number.isNaN(c.getTime())?i:c.toLocaleString()}const ka=12,tg=/^[a-z0-9_-]+$/,yu=2,gu=32,kh={username:"",password:"",assignedVaults:[]};function pm({username:i,hubOrigin:c}){const r=`${c||""}/login`;return s.jsxs("div",{className:"muted",style:{marginTop:"0.5rem",fontSize:"0.9em"},children:["Send them to ",s.jsx("code",{children:r})," with username ",s.jsx("code",{children:i})," and this password — they'll be prompted to set a new one on first sign-in."]})}function ag(){const[i,c]=C.useState({kind:"loading"}),[r,o]=C.useState(0),[d,h]=C.useState(!1),[g,j]=C.useState(kh),[v,p]=C.useState({kind:"idle"}),[y,b]=C.useState({kind:"idle"}),[z,R]=C.useState({kind:"idle"}),[k,q]=C.useState({kind:"idle"});C.useEffect(()=>{let K=!1;return c({kind:"loading"}),Promise.all([ay(),sy(),rm()]).then(([Y,S,O])=>{if(K)return;const G=O.resolved_issuer.replace(/\/+$/,"");c({kind:"ok",data:{users:Y,vaults:S,hubOrigin:G}})}).catch(Y=>{if(K)return;const S=Y instanceof Error?Y.message:String(Y);c({kind:"error",message:S})}),()=>{K=!0}},[r]);function X(K){return K.username.length<yu||K.username.length>gu?`Username must be ${yu}-${gu} characters.`:tg.test(K.username)?K.password.length<ka?`Password must be at least ${ka} characters.`:null:"Username may only contain lowercase letters, digits, hyphens, and underscores."}async function Z(K){K.preventDefault();const Y=X(g);if(Y){p({kind:"error",message:Y});return}p({kind:"submitting"});const S={username:g.username,password:g.password,assignedVaults:g.assignedVaults};try{const O=await ny(S);j(kh),p({kind:"created",username:O.username}),o(G=>G+1)}catch(O){const G=O instanceof Q?`Create failed (${O.status}): ${O.message}`:O instanceof Error?O.message:String(O);p({kind:"error",message:G})}}async function P(K){b({kind:"deleting",userId:K.id});try{const{revocationLagSeconds:Y}=await ly(K.id);b({kind:"done",username:K.username,revocationLagSeconds:Y}),o(S=>S+1)}catch(Y){const S=Y instanceof Q?`Delete failed (${Y.status}): ${Y.message}`:Y instanceof Error?Y.message:String(Y);b({kind:"error",userId:K.id,message:S})}}async function W(K,Y){q({kind:"submitting",userId:K.id,selected:Y});try{await uy(K.id,Y),q({kind:"done",userId:K.id,username:K.username}),o(S=>S+1)}catch(S){const O=S instanceof Q?`Edit vaults failed (${S.status}): ${S.message}`:S instanceof Error?S.message:String(S);q({kind:"error",userId:K.id,selected:Y,message:O})}}async function ue(K,Y){if(Y.length<ka){R({kind:"error",userId:K.id,password:Y,message:`Password must be at least ${ka} characters.`});return}R({kind:"submitting",userId:K.id,password:Y});try{const{revocationLagSeconds:S}=await iy(K.id,Y);R({kind:"done",userId:K.id,username:K.username,revocationLagSeconds:S}),o(O=>O+1)}catch(S){const O=S instanceof Q?`Reset failed (${S.status}): ${S.message}`:S instanceof Error?S.message:String(S);R({kind:"error",userId:K.id,password:Y,message:O})}}return s.jsxs("div",{"data-route-content":"true",children:[s.jsx("div",{className:"list-header",children:s.jsx("h1",{children:"Users"})}),s.jsxs("p",{className:"muted",children:["Hub user accounts. Each user can be a member of one or more vaults — the OAuth issuer narrows their tokens to ",s.jsx("code",{children:"vault:<assigned>:*"})," scopes for any vault in their list. Users with no assignments can't authorize any vault yet — assign at least one above. The first admin is unrestricted (admin posture). Admin-created users land with a default password and are prompted to change it on first sign-in",i.kind==="ok"?s.jsxs(s.Fragment,{children:[" ","at ",s.jsxs("code",{children:[i.data.hubOrigin,"/login"]})]}):null,"."]}),y.kind==="done"&&s.jsxs("output",{className:"success-banner",style:{display:"block",marginBottom:"0.75rem"},"data-testid":"delete-done-banner",children:["Deleted ",s.jsx("code",{children:y.username}),". Their tokens are revoked. Resource servers (vault, scribe, etc.) cache the revocation list for up to ",y.revocationLagSeconds," ","seconds — if you're deleting because of a suspected compromise, also restart the affected services (e.g. ",s.jsx("code",{children:"parachute restart vault"}),") to flush their cache immediately.",s.jsx("div",{style:{marginTop:"0.5rem"},children:s.jsx("button",{type:"button",className:"secondary",onClick:()=>b({kind:"idle"}),children:"Dismiss"})})]}),ng(i,y,b,P,z,R,ue,k,q,W,i.kind==="ok"?i.data.vaults:[],i.kind==="ok"?i.data.hubOrigin:"",()=>o(K=>K+1)),i.kind==="ok"&&s.jsx(sg,{show:d,setShow:h,form:g,setForm:j,vaults:i.data.vaults,hubOrigin:i.data.hubOrigin,createState:v,setCreateState:p,onSubmit:Z})]})}function ng(i,c,r,o,d,h,g,j,v,p,y,b,z){var q;if(i.kind==="loading")return s.jsx("p",{className:"muted",children:"Loading users…"});if(i.kind==="error")return s.jsxs(s.Fragment,{children:[s.jsxs("div",{className:"error-banner",children:["Couldn't load users: ",s.jsx("code",{children:i.message})]}),s.jsx("button",{type:"button",onClick:z,className:"secondary",children:"Retry"})]});const{users:R}=i.data;if(R.length===0)return s.jsxs("div",{className:"empty empty-rich",children:[s.jsx("p",{className:"empty-headline",children:"No users yet."}),s.jsx("p",{className:"muted",children:"Click Create User below to invite someone."})]});const k=(q=R[0])==null?void 0:q.id;return s.jsx(lg,{users:R,firstAdminId:k,deleteSt:c,setDeleteSt:r,onConfirmDelete:o,resetSt:d,setResetSt:h,onSubmitReset:g,editVaultsSt:j,setEditVaultsSt:v,onSubmitEditVaults:p,availableVaults:y,hubOrigin:b})}function lg({users:i,firstAdminId:c,deleteSt:r,setDeleteSt:o,onConfirmDelete:d,resetSt:h,setResetSt:g,onSubmitReset:j,editVaultsSt:v,setEditVaultsSt:p,onSubmitEditVaults:y,availableVaults:b,hubOrigin:z}){return s.jsx("div",{className:"user-list",style:{marginTop:"1rem"},children:s.jsx("div",{className:"table-scroll",children:s.jsxs("table",{className:"user-table",children:[s.jsx("thead",{children:s.jsxs("tr",{children:[s.jsx("th",{scope:"col",children:"Username"}),s.jsx("th",{scope:"col",children:"Assigned vaults"}),s.jsx("th",{scope:"col",children:"Password set"}),s.jsx("th",{scope:"col",children:"Created"}),s.jsx("th",{scope:"col",children:"Actions"})]})}),s.jsx("tbody",{children:i.map(R=>{const k=R.id===c,q=r.kind==="deleting"&&r.userId===R.id,X=r.kind==="confirming"&&r.user.id===R.id,Z=r.kind==="error"&&r.userId===R.id?r:null,P=(h.kind==="open"||h.kind==="submitting"||h.kind==="error")&&h.userId===R.id?h:null,W=h.kind==="done"&&h.userId===R.id?h:null,ue=(v.kind==="open"||v.kind==="submitting"||v.kind==="error")&&v.userId===R.id?v:null,K=v.kind==="done"&&v.userId===R.id?v:null;return s.jsxs("tr",{"data-user-id":R.id,children:[s.jsxs("td",{children:[s.jsx("code",{children:R.username}),k&&s.jsx("span",{className:"badge",style:{marginLeft:"0.5rem"},children:"first admin"})]}),s.jsx("td",{children:R.assigned_vaults.length>0?s.jsx("span",{style:{display:"inline-flex",flexWrap:"wrap",gap:"0.25rem"},children:R.assigned_vaults.map(Y=>s.jsx("code",{children:Y},Y))}):s.jsx("span",{className:"muted",title:k?"First admin is unrestricted (admin posture)":"No vaults assigned — user can't authorize any vault yet",children:"—"})}),s.jsx("td",{children:R.password_changed?s.jsx("span",{"aria-label":"changed",children:"✓"}):s.jsx("span",{className:"status status-pending",title:"User hasn't completed first-sign-in change-password yet",children:"pending first login"})}),s.jsx("td",{children:s.jsx("span",{title:R.created_at,children:cg(R.created_at)})}),s.jsxs("td",{children:[X?null:s.jsxs("div",{style:{display:"flex",flexWrap:"wrap",gap:"0.5rem",alignItems:"center"},children:[k&&s.jsxs(s.Fragment,{children:[s.jsx("span",{id:`first-admin-tooltip-${R.id}`,className:"sr-only",children:"First admin can't be deleted (would self-lock the hub)"}),s.jsx("span",{id:`first-admin-reset-tooltip-${R.id}`,className:"sr-only",children:"First admin uses /account/change-password directly"}),s.jsx("span",{id:`first-admin-vaults-tooltip-${R.id}`,className:"sr-only",children:"First admin's vault membership is unrestricted by design"})]}),s.jsx("button",{type:"button",className:"secondary",disabled:k||ue!==null||v.kind==="submitting"&&v.userId===R.id,title:k?"First admin's vault membership is unrestricted by design":void 0,"aria-describedby":k?`first-admin-vaults-tooltip-${R.id}`:void 0,onClick:()=>p({kind:"open",userId:R.id,selected:[...R.assigned_vaults]}),"aria-label":`Edit vaults for ${R.username}`,children:"Edit vaults"}),s.jsx("button",{type:"button",className:"secondary",disabled:k||P!==null||h.kind==="submitting"&&h.userId===R.id,title:k?"First admin uses /account/change-password directly":void 0,"aria-describedby":k?`first-admin-reset-tooltip-${R.id}`:void 0,onClick:()=>g({kind:"open",userId:R.id,password:""}),"aria-label":`Reset password for ${R.username}`,children:"Reset password"}),s.jsx("button",{type:"button",className:"secondary",disabled:k||q,title:k?"First admin can't be deleted (would self-lock the hub)":void 0,"aria-describedby":k?`first-admin-tooltip-${R.id}`:void 0,onClick:()=>o({kind:"confirming",user:R}),"aria-label":`Delete ${R.username}`,children:q?"Deleting…":"Delete"})]}),X&&s.jsxs("dialog",{open:!0,className:"error-banner",style:{marginTop:"0.25rem",background:"var(--bg-warn, #fffbe6)"},"aria-label":`Confirm delete ${R.username}`,children:[s.jsxs("p",{children:["Delete ",s.jsx("code",{children:R.username}),"? This revokes their tokens, drops their sessions and grants, and removes the account. The audit trail is preserved — tokens stay with ",s.jsx("code",{children:"revoked_at"})," set, anonymised."]}),s.jsxs("div",{style:{display:"flex",gap:"0.5rem",marginTop:"0.5rem"},children:[s.jsx("button",{type:"button",className:"destructive",onClick:()=>{d(R)},disabled:q,children:q?"Deleting…":"Delete"}),s.jsx("button",{type:"button",className:"secondary",onClick:()=>o({kind:"idle"}),disabled:q,children:"Cancel"})]})]}),Z&&s.jsx("div",{className:"error-banner",style:{marginTop:"0.25rem"},children:s.jsx("code",{children:Z.message})}),P&&s.jsx(ig,{user:R,state:P,onCancel:()=>g({kind:"idle"}),onPasswordChange:Y=>g({kind:"open",userId:R.id,password:Y}),onSubmit:Y=>{j(R,Y)}}),W&&s.jsxs("output",{className:"success-banner",style:{marginTop:"0.25rem",display:"block"},children:["Password reset for ",s.jsx("code",{children:W.username}),". Hand them the new password and tell them they'll be prompted to change it on first sign-in.",s.jsx(pm,{username:W.username,hubOrigin:z}),s.jsxs("div",{className:"muted",style:{marginTop:"0.5rem",fontSize:"0.85em"},children:["Their existing tokens are revoked. Resource servers (vault, scribe, etc.) cache the revocation list for up to ",W.revocationLagSeconds," ","seconds — if you're resetting because of a suspected compromise, also restart the affected services (e.g. ",s.jsx("code",{children:"parachute restart vault"}),") to flush their cache immediately."]}),s.jsx("div",{style:{marginTop:"0.5rem"},children:s.jsx("button",{type:"button",className:"secondary",onClick:()=>g({kind:"idle"}),children:"Dismiss"})})]}),ue&&s.jsx(ug,{user:R,state:ue,availableVaults:b,onCancel:()=>p({kind:"idle"}),onSelectedChange:Y=>p({kind:"open",userId:R.id,selected:Y}),onSubmit:Y=>{y(R,Y)}}),K&&s.jsxs("output",{className:"success-banner",style:{marginTop:"0.25rem",display:"block"},children:["Vault assignments updated for ",s.jsx("code",{children:K.username}),".",s.jsx("div",{style:{marginTop:"0.5rem"},children:s.jsx("button",{type:"button",className:"secondary",onClick:()=>p({kind:"idle"}),children:"Dismiss"})})]})]})]},R.id)})})]})})})}function ig({user:i,state:c,onCancel:r,onPasswordChange:o,onSubmit:d}){const h=c.kind==="submitting",g=c.kind==="error"?c.message:null,j=`reset-password-input-${i.id}`;return s.jsxs("form",{onSubmit:v=>{v.preventDefault(),d(c.password)},"aria-label":`Reset password for ${i.username}`,style:{marginTop:"0.5rem",padding:"0.5rem",background:"var(--bg-soft, #f5f5f5)",borderRadius:"4px"},children:[s.jsxs("p",{style:{margin:0},children:[s.jsxs("label",{htmlFor:j,children:["New temporary password for ",s.jsx("code",{children:i.username})," ",s.jsxs("span",{className:"muted",children:["(min ",ka," chars)"]})]}),s.jsx("br",{}),s.jsx("input",{id:j,type:"password",required:!0,autoComplete:"new-password",minLength:ka,value:c.password,disabled:h,onChange:v=>o(v.target.value)})]}),g&&s.jsx("div",{className:"error-banner",style:{marginTop:"0.25rem"},children:s.jsx("code",{children:g})}),s.jsxs("div",{style:{display:"flex",gap:"0.5rem",marginTop:"0.5rem"},children:[s.jsx("button",{type:"submit",disabled:h,children:h?"Setting…":"Set new password"}),s.jsx("button",{type:"button",className:"secondary",onClick:r,disabled:h,children:"Cancel"})]})]})}function ug({user:i,state:c,availableVaults:r,onCancel:o,onSelectedChange:d,onSubmit:h}){const g=c.kind==="submitting",j=c.kind==="error"?c.message:null,v=`edit-vaults-select-${i.id}`;function p(y){const b=Array.from(y.target.selectedOptions).map(z=>z.value);d(b)}return s.jsxs("form",{onSubmit:y=>{y.preventDefault(),h(c.selected)},"aria-label":`Edit vaults for ${i.username}`,style:{marginTop:"0.5rem",padding:"0.5rem",background:"var(--bg-soft, #f5f5f5)",borderRadius:"4px"},children:[s.jsx("p",{style:{margin:0},children:s.jsxs("label",{htmlFor:v,children:["Vault assignments for ",s.jsx("code",{children:i.username})," ",s.jsx("span",{className:"muted",children:"(empty = no narrowing; shift-click to multi-select)"})]})}),c.selected.length>0&&s.jsx("div",{"data-testid":`edit-vaults-chips-${i.id}`,style:{marginTop:"0.4rem",display:"flex",flexWrap:"wrap",gap:"0.25rem"},children:c.selected.map(y=>s.jsx("code",{style:{padding:"0.1rem 0.4rem",borderRadius:"4px"},children:y},y))}),s.jsx("select",{id:v,multiple:!0,value:c.selected,onChange:p,disabled:g,size:Math.min(Math.max(r.length,3),8),style:{marginTop:"0.4rem",minWidth:"12rem"},children:r.map(y=>s.jsx("option",{value:y,children:y},y))}),r.length===0&&s.jsx("p",{className:"muted",style:{marginTop:"0.25rem"},children:"No vaults registered on this hub yet."}),j&&s.jsx("div",{className:"error-banner",style:{marginTop:"0.25rem"},children:s.jsx("code",{children:j})}),s.jsxs("div",{style:{display:"flex",gap:"0.5rem",marginTop:"0.5rem"},children:[s.jsx("button",{type:"submit",disabled:g,children:g?"Saving…":"Save vault assignments"}),s.jsx("button",{type:"button",className:"secondary",onClick:o,disabled:g,children:"Cancel"})]})]})}function sg({show:i,setShow:c,form:r,setForm:o,vaults:d,hubOrigin:h,createState:g,setCreateState:j,onSubmit:v}){const p=g.kind==="submitting";return s.jsx("section",{style:{marginTop:"1.5rem"},children:i?s.jsxs("form",{onSubmit:y=>void v(y),"aria-label":"Create user",children:[s.jsx("h3",{children:"Create user"}),s.jsxs("p",{children:[s.jsxs("label",{htmlFor:"new-user-username",children:["Username"," ",s.jsxs("span",{className:"muted",children:["(",yu,"-",gu," chars, lowercase letters/digits/hyphens/ underscores)"]})]}),s.jsx("br",{}),s.jsx("input",{id:"new-user-username",type:"text",required:!0,autoComplete:"off",value:r.username,minLength:yu,maxLength:gu,pattern:"[a-z0-9_\\-]+",onChange:y=>o({...r,username:y.target.value})})]}),s.jsxs("p",{children:[s.jsxs("label",{htmlFor:"new-user-password",children:["Password ",s.jsxs("span",{className:"muted",children:["(min ",ka," chars)"]})]}),s.jsx("br",{}),s.jsx("input",{id:"new-user-password",type:"password",required:!0,autoComplete:"new-password",value:r.password,minLength:ka,onChange:y=>o({...r,password:y.target.value})})]}),s.jsxs("p",{children:[s.jsxs("label",{htmlFor:"new-user-vaults",children:["Assigned vaults"," ",s.jsx("span",{className:"muted",children:"(empty = no restriction; shift-click to select multiple)"})]}),s.jsx("br",{}),r.assignedVaults.length>0&&s.jsx("span",{"data-testid":"new-user-vault-chips",style:{display:"inline-flex",flexWrap:"wrap",gap:"0.25rem",marginBottom:"0.25rem"},children:r.assignedVaults.map(y=>s.jsx("code",{children:y},y))}),s.jsx("br",{}),s.jsx("select",{id:"new-user-vaults",multiple:!0,value:r.assignedVaults,onChange:y=>o({...r,assignedVaults:Array.from(y.target.selectedOptions).map(b=>b.value)}),size:Math.min(Math.max(d.length,3),8),style:{minWidth:"12rem"},children:d.map(y=>s.jsx("option",{value:y,children:y},y))}),d.length===0&&s.jsx("span",{className:"muted",style:{marginLeft:"0.5rem"},children:"No vaults registered on this hub yet."})]}),g.kind==="error"&&s.jsx("div",{className:"error-banner",children:s.jsx("code",{children:g.message})}),g.kind==="created"&&s.jsxs("output",{className:"success-banner",children:["User ",s.jsx("code",{children:g.username})," created. They'll be prompted to change their password on first sign-in.",s.jsx(pm,{username:g.username,hubOrigin:h})]}),s.jsxs("div",{style:{display:"flex",gap:"0.5rem",marginTop:"0.5rem"},children:[s.jsx("button",{type:"submit",disabled:p,children:p?"Creating…":"Create user"}),s.jsx("button",{type:"button",className:"secondary",disabled:p,onClick:()=>{c(!1),j({kind:"idle"})},children:"Close"})]})]}):s.jsx("button",{type:"button",onClick:()=>c(!0),children:"Create User"})})}function cg(i){const c=new Date(i);return Number.isNaN(c.getTime())?i:c.toLocaleString()}function Hh(){const[i,c]=C.useState({kind:"loading"}),[r,o]=C.useState(0),[d,h]=C.useState({kind:"idle"}),[g,j]=C.useState(null);async function v(y){if(y.managementUrl){h({kind:"minting",name:y.name});try{const b=await B0(y.name),z=Z0(y.url,y.managementUrl),R=z.includes("#")?"&":"#";window.location.assign(`${z}${R}token=${b.token}`)}catch(b){const z=b instanceof Q?`mint failed (${b.status}): ${b.message}`:b instanceof Error?b.message:String(b);h({kind:"error",name:y.name,message:z})}}}if(C.useEffect(()=>{let y=!1;return D0().then(b=>{y||c({kind:"ok",vaults:b.vaults,moduleInstalled:b.moduleInstalled})}).catch(b=>{if(y)return;const z=b instanceof Error?b.message:String(b);c({kind:"error",message:z})}),()=>{y=!0}},[r]),i.kind==="loading")return s.jsxs("div",{children:[s.jsx("div",{className:"list-header",children:s.jsx("h1",{children:"Vaults"})}),s.jsx("p",{className:"muted",children:"Loading…"})]});if(i.kind==="error")return s.jsxs("div",{children:[s.jsxs("div",{className:"list-header",children:[s.jsx("h1",{children:"Vaults"}),s.jsx(Ke,{to:"/vaults/new",children:s.jsx("button",{type:"button",children:"New vault"})})]}),s.jsxs("div",{className:"error-banner",children:["Couldn't load vaults: ",s.jsx("code",{children:i.message})]}),s.jsx("button",{type:"button",onClick:()=>o(y=>y+1),className:"secondary",children:"Retry"})]});const p=i.vaults.length===0&&!i.moduleInstalled;return s.jsxs("div",{"data-route-content":"true",children:[s.jsxs("div",{className:"list-header",children:[s.jsxs("h1",{children:["Vaults (",i.vaults.length,")"]}),p?s.jsx(Ke,{to:"/modules",children:s.jsx("button",{type:"button",children:"Install vault module"})}):s.jsx(Ke,{to:"/vaults/new",children:s.jsx("button",{type:"button",children:"New vault"})})]}),s.jsxs("p",{className:"muted",children:["Vaults registered with this hub at ",s.jsx("code",{children:"/.well-known/parachute.json"}),"."]}),i.vaults.length===0?p?s.jsxs("div",{className:"empty empty-rich",children:[s.jsx("p",{className:"empty-headline",children:"No vault module installed."}),s.jsx("p",{className:"muted",children:"The vault backend isn't installed on this hub yet, so there's nothing to provision a vault against. Install it from the Modules page first, then come back here to create your first vault."}),s.jsx("p",{style:{marginTop:"0.75rem"},children:s.jsx(Ke,{to:"/modules",children:"Install vault module →"})})]}):s.jsxs("div",{className:"empty empty-rich",children:[s.jsx("p",{className:"empty-headline",children:"No vaults yet."}),s.jsx("p",{className:"muted",children:"Create your first vault to start storing tokens, secrets, and notes scoped to this hub."}),s.jsx("p",{style:{marginTop:"0.75rem"},children:s.jsx(Ke,{to:"/vaults/new",children:"Create a vault →"})})]}):s.jsx("div",{style:{marginTop:"1rem"},children:i.vaults.map(y=>{const b=d.kind==="minting"&&d.name===y.name,z=d.kind==="error"&&d.name===y.name?d:null,R=g===y.name;return s.jsxs("div",{className:"vault-row-group",children:[s.jsxs("div",{className:"vault-row",children:[s.jsxs("div",{className:"body",children:[s.jsxs("div",{className:"name",children:[s.jsx("code",{children:y.name}),s.jsxs("span",{className:"tag muted",title:"Vault version",children:["v",y.version]})]}),s.jsx("div",{className:"dim url",children:s.jsx("code",{children:y.url})}),z?s.jsx("div",{className:"error-banner",style:{marginTop:"0.5rem"},children:s.jsx("code",{children:z.message})}):null]}),s.jsxs("div",{className:"vault-row-actions",children:[s.jsx("button",{type:"button",className:R?void 0:"secondary","aria-expanded":R,"aria-label":`Connect an MCP client to vault ${y.name}`,onClick:()=>j(k=>k===y.name?null:y.name),children:R?"Hide connect":"Connect"}),y.managementUrl?s.jsx("button",{type:"button",onClick:()=>{v(y)},disabled:b,"aria-label":`Manage vault ${y.name}`,children:b?"Opening…":"Manage"}):s.jsx("span",{className:"muted",title:"This vault has no admin SPA — manage with parachute-vault on the host.",children:"CLI only"})]})]}),R?s.jsx(mm,{vaultName:y.name,vaultUrl:y.url}):null]},y.name)})})]})}function vm(i){return i==="/permissions"||i.startsWith("/permissions/")?"permissions":i==="/tokens"||i.startsWith("/tokens/")?"tokens":i==="/modules"||i.startsWith("/modules/")?/^\/modules\/[a-z][a-z0-9-]*\/config$/.test(i)?"module config":"modules":i==="/users"||i.startsWith("/users/")?"users":i==="/settings"||i.startsWith("/settings/")?"settings":i.startsWith("/approve-client/")?"approve app":"vaults"}function rg(i){return`${vm(i).split(" ").map(r=>r.length>0?r[0].toUpperCase()+r.slice(1):r).join(" ")} · ${im}`}function og(){const{pathname:i}=Dt(),c=vm(i),[r,o]=C.useState(null);C.useEffect(()=>{document.title=rg(i)},[i]);const[d,h]=C.useState(!1),[g,j]=C.useState([]);C.useEffect(()=>{let p=!1;return Y0().then(y=>{p||o(y)}).catch(()=>{p||o({hasSession:!1})}),()=>{p=!0}},[]),C.useEffect(()=>{if(!r||!r.hasSession)return;let p=!1;return cm().then(y=>{p||j(y.modules.filter(b=>b.installed))}).catch(()=>{p||j([])}),()=>{p=!0}},[r]);async function v(p){h(!0);try{await G0(p),window.location.href="/"}catch{h(!1)}}return s.jsxs("div",{className:"page",children:[s.jsxs("nav",{className:"nav",children:[s.jsxs(Ke,{to:"/vaults",className:"brand",children:[s.jsx(A0,{size:18,idSuffix:"spa-nav",className:"brand-mark-icon"}),s.jsx("span",{className:"brand-wordmark",children:im}),s.jsx("span",{className:"sub",children:c})]}),s.jsx(dg,{me:r,signingOut:d,onSignOut:v}),s.jsx(Gn,{to:"/vaults",label:"Vaults",alsoActiveAt:"/"}),s.jsx(Gn,{to:"/modules",label:"Modules"}),s.jsx(fg,{services:g}),s.jsx(Gn,{to:"/users",label:"Users"}),s.jsx(Gn,{to:"/permissions",label:"Permissions"}),s.jsx(Gn,{to:"/tokens",label:"Tokens"}),s.jsx(Gn,{to:"/settings",label:"Settings"}),s.jsx("span",{className:"nav-divider","aria-hidden":"true"}),s.jsx("a",{href:"/",title:"Hub discovery page (top-level)",children:"Discovery"})]}),s.jsxs(Jv,{children:[s.jsx(Ot,{path:"/",element:s.jsx(Hh,{})}),s.jsx(Ot,{path:"/vaults",element:s.jsx(Hh,{})}),s.jsx(Ot,{path:"/vaults/new",element:s.jsx(qy,{})}),s.jsx(Ot,{path:"/modules",element:s.jsx(Ay,{})}),s.jsx(Ot,{path:"/modules/:short/config",element:s.jsx(by,{})}),s.jsx(Ot,{path:"/users",element:s.jsx(ag,{})}),s.jsx(Ot,{path:"/permissions",element:s.jsx(Zy,{})}),s.jsx(Ot,{path:"/tokens",element:s.jsx(Ky,{})}),s.jsx(Ot,{path:"/settings",element:s.jsx(Qy,{})}),s.jsx(Ot,{path:"/approve-client/:clientId",element:s.jsx(dy,{})}),s.jsx(Ot,{path:"*",element:s.jsxs("div",{className:"empty",children:["404 — back to ",s.jsx(Ke,{to:"/vaults",children:"vaults"}),"."]})})]}),r!=null&&r.hasSession?s.jsx(fy,{}):null]})}function Gn({to:i,label:c,alsoActiveAt:r}){const{pathname:o}=Dt(),g=o===i||o.startsWith(`${i}/`)||r!==void 0&&o===r;return s.jsx(Ke,{to:i,className:g?"nav-link nav-link-active":"nav-link","aria-current":g?"page":void 0,children:c})}function fg({services:i}){return i.length===0?null:s.jsxs("details",{className:"nav-dropdown","data-testid":"installed-services-dropdown",children:[s.jsx("summary",{className:"nav-dropdown-summary",children:"Services"}),s.jsx("div",{className:"nav-dropdown-panel",role:"menu",children:i.map(c=>{const r=c.management_url;return r?s.jsx("a",{className:"nav-dropdown-item",href:r,role:"menuitem","data-testid":`nav-service-${c.short}`,children:c.display_name},c.short):s.jsx("span",{className:"nav-dropdown-item nav-dropdown-item-disabled",role:"menuitem","aria-disabled":"true",title:"This module hasn't shipped an admin UI yet.","data-testid":`nav-service-${c.short}`,children:c.display_name},c.short)})})]})}function dg({me:i,signingOut:c,onSignOut:r}){return i===null?null:i.hasSession?s.jsxs("span",{className:"auth-spa",children:[s.jsxs("span",{className:"muted",children:["Signed in as ",s.jsx("strong",{children:i.user.displayName})]})," ","·"," ",s.jsx("button",{type:"button",className:"auth-spa-signout",disabled:c,onClick:()=>{r(i.csrf)},children:c?"Signing out…":"Sign out"})]}):s.jsx("a",{href:`/login?next=${encodeURIComponent(window.location.pathname)}`,className:"auth-spa",children:"Sign in"})}const ym=document.getElementById("root");if(!ym)throw new Error("#root not found");function hg(){const i=window.location.pathname;return i==="/admin"||i.startsWith("/admin/")?"/admin":""}F1.createRoot(ym).render(s.jsx(C.StrictMode,{children:s.jsx(g0,{basename:hg(),children:s.jsx(og,{})})}));