| Server IP : 158.247.231.215 / Your IP : 216.73.217.122 Web Server : Apache/2.4.41 (Ubuntu) System : Linux CTMS 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64 User : www-data ( 33) PHP Version : 8.0.30 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /mnt/blockstorage/ctms/apk-admin/assets/ |
Upload File : |
function _d(o,i){for(var a=0;a<i.length;a++){const u=i[a];if(typeof u!="string"&&!Array.isArray(u)){for(const d in u)if(d!=="default"&&!(d in o)){const h=Object.getOwnPropertyDescriptor(u,d);h&&Object.defineProperty(o,d,h.get?h:{enumerable:!0,get:()=>u[d]})}}}return Object.freeze(Object.defineProperty(o,Symbol.toStringTag,{value:"Module"}))}(function(){const i=document.createElement("link").relList;if(i&&i.supports&&i.supports("modulepreload"))return;for(const d of document.querySelectorAll('link[rel="modulepreload"]'))u(d);new MutationObserver(d=>{for(const h of d)if(h.type==="childList")for(const p of h.addedNodes)p.tagName==="LINK"&&p.rel==="modulepreload"&&u(p)}).observe(document,{childList:!0,subtree:!0});function a(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 u(d){if(d.ep)return;d.ep=!0;const h=a(d);fetch(d.href,h)}})();function Rd(o){return o&&o.__esModule&&Object.prototype.hasOwnProperty.call(o,"default")?o.default:o}var es={exports:{}},Ql={},ts={exports:{}},Pe={};/**
* @license React
* react.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/var $c;function Dp(){if($c)return Pe;$c=1;var o=Symbol.for("react.element"),i=Symbol.for("react.portal"),a=Symbol.for("react.fragment"),u=Symbol.for("react.strict_mode"),d=Symbol.for("react.profiler"),h=Symbol.for("react.provider"),p=Symbol.for("react.context"),v=Symbol.for("react.forward_ref"),g=Symbol.for("react.suspense"),x=Symbol.for("react.memo"),S=Symbol.for("react.lazy"),_=Symbol.iterator;function C(E){return E===null||typeof E!="object"?null:(E=_&&E[_]||E["@@iterator"],typeof E=="function"?E:null)}var M={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},z=Object.assign,F={};function K(E,D,ye){this.props=E,this.context=D,this.refs=F,this.updater=ye||M}K.prototype.isReactComponent={},K.prototype.setState=function(E,D){if(typeof E!="object"&&typeof E!="function"&&E!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,E,D,"setState")},K.prototype.forceUpdate=function(E){this.updater.enqueueForceUpdate(this,E,"forceUpdate")};function Ce(){}Ce.prototype=K.prototype;function oe(E,D,ye){this.props=E,this.context=D,this.refs=F,this.updater=ye||M}var xe=oe.prototype=new Ce;xe.constructor=oe,z(xe,K.prototype),xe.isPureReactComponent=!0;var pe=Array.isArray,je=Object.prototype.hasOwnProperty,$={current:null},T={key:!0,ref:!0,__self:!0,__source:!0};function se(E,D,ye){var ke,Se={},_e=null,Te=null;if(D!=null)for(ke in D.ref!==void 0&&(Te=D.ref),D.key!==void 0&&(_e=""+D.key),D)je.call(D,ke)&&!T.hasOwnProperty(ke)&&(Se[ke]=D[ke]);var Le=arguments.length-2;if(Le===1)Se.children=ye;else if(1<Le){for(var $e=Array(Le),vt=0;vt<Le;vt++)$e[vt]=arguments[vt+2];Se.children=$e}if(E&&E.defaultProps)for(ke in Le=E.defaultProps,Le)Se[ke]===void 0&&(Se[ke]=Le[ke]);return{$$typeof:o,type:E,key:_e,ref:Te,props:Se,_owner:$.current}}function Re(E,D){return{$$typeof:o,type:E.type,key:D,ref:E.ref,props:E.props,_owner:E._owner}}function he(E){return typeof E=="object"&&E!==null&&E.$$typeof===o}function Q(E){var D={"=":"=0",":":"=2"};return"$"+E.replace(/[=:]/g,function(ye){return D[ye]})}var ee=/\/+/g;function de(E,D){return typeof E=="object"&&E!==null&&E.key!=null?Q(""+E.key):D.toString(36)}function Oe(E,D,ye,ke,Se){var _e=typeof E;(_e==="undefined"||_e==="boolean")&&(E=null);var Te=!1;if(E===null)Te=!0;else switch(_e){case"string":case"number":Te=!0;break;case"object":switch(E.$$typeof){case o:case i:Te=!0}}if(Te)return Te=E,Se=Se(Te),E=ke===""?"."+de(Te,0):ke,pe(Se)?(ye="",E!=null&&(ye=E.replace(ee,"$&/")+"/"),Oe(Se,D,ye,"",function(vt){return vt})):Se!=null&&(he(Se)&&(Se=Re(Se,ye+(!Se.key||Te&&Te.key===Se.key?"":(""+Se.key).replace(ee,"$&/")+"/")+E)),D.push(Se)),1;if(Te=0,ke=ke===""?".":ke+":",pe(E))for(var Le=0;Le<E.length;Le++){_e=E[Le];var $e=ke+de(_e,Le);Te+=Oe(_e,D,ye,$e,Se)}else if($e=C(E),typeof $e=="function")for(E=$e.call(E),Le=0;!(_e=E.next()).done;)_e=_e.value,$e=ke+de(_e,Le++),Te+=Oe(_e,D,ye,$e,Se);else if(_e==="object")throw D=String(E),Error("Objects are not valid as a React child (found: "+(D==="[object Object]"?"object with keys {"+Object.keys(E).join(", ")+"}":D)+"). If you meant to render a collection of children, use an array instead.");return Te}function Ve(E,D,ye){if(E==null)return E;var ke=[],Se=0;return Oe(E,ke,"","",function(_e){return D.call(ye,_e,Se++)}),ke}function at(E){if(E._status===-1){var D=E._result;D=D(),D.then(function(ye){(E._status===0||E._status===-1)&&(E._status=1,E._result=ye)},function(ye){(E._status===0||E._status===-1)&&(E._status=2,E._result=ye)}),E._status===-1&&(E._status=0,E._result=D)}if(E._status===1)return E._result.default;throw E._result}var Me={current:null},W={transition:null},te={ReactCurrentDispatcher:Me,ReactCurrentBatchConfig:W,ReactCurrentOwner:$};function Y(){throw Error("act(...) is not supported in production builds of React.")}return Pe.Children={map:Ve,forEach:function(E,D,ye){Ve(E,function(){D.apply(this,arguments)},ye)},count:function(E){var D=0;return Ve(E,function(){D++}),D},toArray:function(E){return Ve(E,function(D){return D})||[]},only:function(E){if(!he(E))throw Error("React.Children.only expected to receive a single React element child.");return E}},Pe.Component=K,Pe.Fragment=a,Pe.Profiler=d,Pe.PureComponent=oe,Pe.StrictMode=u,Pe.Suspense=g,Pe.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=te,Pe.act=Y,Pe.cloneElement=function(E,D,ye){if(E==null)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+E+".");var ke=z({},E.props),Se=E.key,_e=E.ref,Te=E._owner;if(D!=null){if(D.ref!==void 0&&(_e=D.ref,Te=$.current),D.key!==void 0&&(Se=""+D.key),E.type&&E.type.defaultProps)var Le=E.type.defaultProps;for($e in D)je.call(D,$e)&&!T.hasOwnProperty($e)&&(ke[$e]=D[$e]===void 0&&Le!==void 0?Le[$e]:D[$e])}var $e=arguments.length-2;if($e===1)ke.children=ye;else if(1<$e){Le=Array($e);for(var vt=0;vt<$e;vt++)Le[vt]=arguments[vt+2];ke.children=Le}return{$$typeof:o,type:E.type,key:Se,ref:_e,props:ke,_owner:Te}},Pe.createContext=function(E){return E={$$typeof:p,_currentValue:E,_currentValue2:E,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null},E.Provider={$$typeof:h,_context:E},E.Consumer=E},Pe.createElement=se,Pe.createFactory=function(E){var D=se.bind(null,E);return D.type=E,D},Pe.createRef=function(){return{current:null}},Pe.forwardRef=function(E){return{$$typeof:v,render:E}},Pe.isValidElement=he,Pe.lazy=function(E){return{$$typeof:S,_payload:{_status:-1,_result:E},_init:at}},Pe.memo=function(E,D){return{$$typeof:x,type:E,compare:D===void 0?null:D}},Pe.startTransition=function(E){var D=W.transition;W.transition={};try{E()}finally{W.transition=D}},Pe.unstable_act=Y,Pe.useCallback=function(E,D){return Me.current.useCallback(E,D)},Pe.useContext=function(E){return Me.current.useContext(E)},Pe.useDebugValue=function(){},Pe.useDeferredValue=function(E){return Me.current.useDeferredValue(E)},Pe.useEffect=function(E,D){return Me.current.useEffect(E,D)},Pe.useId=function(){return Me.current.useId()},Pe.useImperativeHandle=function(E,D,ye){return Me.current.useImperativeHandle(E,D,ye)},Pe.useInsertionEffect=function(E,D){return Me.current.useInsertionEffect(E,D)},Pe.useLayoutEffect=function(E,D){return Me.current.useLayoutEffect(E,D)},Pe.useMemo=function(E,D){return Me.current.useMemo(E,D)},Pe.useReducer=function(E,D,ye){return Me.current.useReducer(E,D,ye)},Pe.useRef=function(E){return Me.current.useRef(E)},Pe.useState=function(E){return Me.current.useState(E)},Pe.useSyncExternalStore=function(E,D,ye){return Me.current.useSyncExternalStore(E,D,ye)},Pe.useTransition=function(){return Me.current.useTransition()},Pe.version="18.3.1",Pe}var Hc;function ms(){return Hc||(Hc=1,ts.exports=Dp()),ts.exports}/**
* @license React
* react-jsx-runtime.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/var Qc;function zp(){if(Qc)return Ql;Qc=1;var o=ms(),i=Symbol.for("react.element"),a=Symbol.for("react.fragment"),u=Object.prototype.hasOwnProperty,d=o.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,h={key:!0,ref:!0,__self:!0,__source:!0};function p(v,g,x){var S,_={},C=null,M=null;x!==void 0&&(C=""+x),g.key!==void 0&&(C=""+g.key),g.ref!==void 0&&(M=g.ref);for(S in g)u.call(g,S)&&!h.hasOwnProperty(S)&&(_[S]=g[S]);if(v&&v.defaultProps)for(S in g=v.defaultProps,g)_[S]===void 0&&(_[S]=g[S]);return{$$typeof:i,type:v,key:C,ref:M,props:_,_owner:d.current}}return Ql.Fragment=a,Ql.jsx=p,Ql.jsxs=p,Ql}var Kc;function Mp(){return Kc||(Kc=1,es.exports=zp()),es.exports}var f=Mp(),N=ms();const Fp=Rd(N),Op=_d({__proto__:null,default:Fp},[N]);var ui={},rs={exports:{}},Ft={},ns={exports:{}},ls={};/**
* @license React
* scheduler.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/var qc;function bp(){return qc||(qc=1,(function(o){function i(W,te){var Y=W.length;W.push(te);e:for(;0<Y;){var E=Y-1>>>1,D=W[E];if(0<d(D,te))W[E]=te,W[Y]=D,Y=E;else break e}}function a(W){return W.length===0?null:W[0]}function u(W){if(W.length===0)return null;var te=W[0],Y=W.pop();if(Y!==te){W[0]=Y;e:for(var E=0,D=W.length,ye=D>>>1;E<ye;){var ke=2*(E+1)-1,Se=W[ke],_e=ke+1,Te=W[_e];if(0>d(Se,Y))_e<D&&0>d(Te,Se)?(W[E]=Te,W[_e]=Y,E=_e):(W[E]=Se,W[ke]=Y,E=ke);else if(_e<D&&0>d(Te,Y))W[E]=Te,W[_e]=Y,E=_e;else break e}}return te}function d(W,te){var Y=W.sortIndex-te.sortIndex;return Y!==0?Y:W.id-te.id}if(typeof performance=="object"&&typeof performance.now=="function"){var h=performance;o.unstable_now=function(){return h.now()}}else{var p=Date,v=p.now();o.unstable_now=function(){return p.now()-v}}var g=[],x=[],S=1,_=null,C=3,M=!1,z=!1,F=!1,K=typeof setTimeout=="function"?setTimeout:null,Ce=typeof clearTimeout=="function"?clearTimeout:null,oe=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function xe(W){for(var te=a(x);te!==null;){if(te.callback===null)u(x);else if(te.startTime<=W)u(x),te.sortIndex=te.expirationTime,i(g,te);else break;te=a(x)}}function pe(W){if(F=!1,xe(W),!z)if(a(g)!==null)z=!0,at(je);else{var te=a(x);te!==null&&Me(pe,te.startTime-W)}}function je(W,te){z=!1,F&&(F=!1,Ce(se),se=-1),M=!0;var Y=C;try{for(xe(te),_=a(g);_!==null&&(!(_.expirationTime>te)||W&&!Q());){var E=_.callback;if(typeof E=="function"){_.callback=null,C=_.priorityLevel;var D=E(_.expirationTime<=te);te=o.unstable_now(),typeof D=="function"?_.callback=D:_===a(g)&&u(g),xe(te)}else u(g);_=a(g)}if(_!==null)var ye=!0;else{var ke=a(x);ke!==null&&Me(pe,ke.startTime-te),ye=!1}return ye}finally{_=null,C=Y,M=!1}}var $=!1,T=null,se=-1,Re=5,he=-1;function Q(){return!(o.unstable_now()-he<Re)}function ee(){if(T!==null){var W=o.unstable_now();he=W;var te=!0;try{te=T(!0,W)}finally{te?de():($=!1,T=null)}}else $=!1}var de;if(typeof oe=="function")de=function(){oe(ee)};else if(typeof MessageChannel<"u"){var Oe=new MessageChannel,Ve=Oe.port2;Oe.port1.onmessage=ee,de=function(){Ve.postMessage(null)}}else de=function(){K(ee,0)};function at(W){T=W,$||($=!0,de())}function Me(W,te){se=K(function(){W(o.unstable_now())},te)}o.unstable_IdlePriority=5,o.unstable_ImmediatePriority=1,o.unstable_LowPriority=4,o.unstable_NormalPriority=3,o.unstable_Profiling=null,o.unstable_UserBlockingPriority=2,o.unstable_cancelCallback=function(W){W.callback=null},o.unstable_continueExecution=function(){z||M||(z=!0,at(je))},o.unstable_forceFrameRate=function(W){0>W||125<W?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):Re=0<W?Math.floor(1e3/W):5},o.unstable_getCurrentPriorityLevel=function(){return C},o.unstable_getFirstCallbackNode=function(){return a(g)},o.unstable_next=function(W){switch(C){case 1:case 2:case 3:var te=3;break;default:te=C}var Y=C;C=te;try{return W()}finally{C=Y}},o.unstable_pauseExecution=function(){},o.unstable_requestPaint=function(){},o.unstable_runWithPriority=function(W,te){switch(W){case 1:case 2:case 3:case 4:case 5:break;default:W=3}var Y=C;C=W;try{return te()}finally{C=Y}},o.unstable_scheduleCallback=function(W,te,Y){var E=o.unstable_now();switch(typeof Y=="object"&&Y!==null?(Y=Y.delay,Y=typeof Y=="number"&&0<Y?E+Y:E):Y=E,W){case 1:var D=-1;break;case 2:D=250;break;case 5:D=1073741823;break;case 4:D=1e4;break;default:D=5e3}return D=Y+D,W={id:S++,callback:te,priorityLevel:W,startTime:Y,expirationTime:D,sortIndex:-1},Y>E?(W.sortIndex=Y,i(x,W),a(g)===null&&W===a(x)&&(F?(Ce(se),se=-1):F=!0,Me(pe,Y-E))):(W.sortIndex=D,i(g,W),z||M||(z=!0,at(je))),W},o.unstable_shouldYield=Q,o.unstable_wrapCallback=function(W){var te=C;return function(){var Y=C;C=te;try{return W.apply(this,arguments)}finally{C=Y}}}})(ls)),ls}var Yc;function Up(){return Yc||(Yc=1,ns.exports=bp()),ns.exports}/**
* @license React
* react-dom.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/var Jc;function Ap(){if(Jc)return Ft;Jc=1;var o=ms(),i=Up();function a(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,r=1;r<arguments.length;r++)t+="&args[]="+encodeURIComponent(arguments[r]);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."}var u=new Set,d={};function h(e,t){p(e,t),p(e+"Capture",t)}function p(e,t){for(d[e]=t,e=0;e<t.length;e++)u.add(t[e])}var v=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),g=Object.prototype.hasOwnProperty,x=/^[: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]*$/,S={},_={};function C(e){return g.call(_,e)?!0:g.call(S,e)?!1:x.test(e)?_[e]=!0:(S[e]=!0,!1)}function M(e,t,r,n){if(r!==null&&r.type===0)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return n?!1:r!==null?!r.acceptsBooleans:(e=e.toLowerCase().slice(0,5),e!=="data-"&&e!=="aria-");default:return!1}}function z(e,t,r,n){if(t===null||typeof t>"u"||M(e,t,r,n))return!0;if(n)return!1;if(r!==null)switch(r.type){case 3:return!t;case 4:return t===!1;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}function F(e,t,r,n,l,s,c){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=n,this.attributeNamespace=l,this.mustUseProperty=r,this.propertyName=e,this.type=t,this.sanitizeURL=s,this.removeEmptyString=c}var K={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){K[e]=new F(e,0,!1,e,null,!1,!1)}),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];K[t]=new F(t,1,!1,e[1],null,!1,!1)}),["contentEditable","draggable","spellCheck","value"].forEach(function(e){K[e]=new F(e,2,!1,e.toLowerCase(),null,!1,!1)}),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){K[e]=new F(e,2,!1,e,null,!1,!1)}),"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(e){K[e]=new F(e,3,!1,e.toLowerCase(),null,!1,!1)}),["checked","multiple","muted","selected"].forEach(function(e){K[e]=new F(e,3,!0,e,null,!1,!1)}),["capture","download"].forEach(function(e){K[e]=new F(e,4,!1,e,null,!1,!1)}),["cols","rows","size","span"].forEach(function(e){K[e]=new F(e,6,!1,e,null,!1,!1)}),["rowSpan","start"].forEach(function(e){K[e]=new F(e,5,!1,e.toLowerCase(),null,!1,!1)});var Ce=/[\-:]([a-z])/g;function oe(e){return e[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(e){var t=e.replace(Ce,oe);K[t]=new F(t,1,!1,e,null,!1,!1)}),"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(e){var t=e.replace(Ce,oe);K[t]=new F(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)}),["xml:base","xml:lang","xml:space"].forEach(function(e){var t=e.replace(Ce,oe);K[t]=new F(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)}),["tabIndex","crossOrigin"].forEach(function(e){K[e]=new F(e,1,!1,e.toLowerCase(),null,!1,!1)}),K.xlinkHref=new F("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach(function(e){K[e]=new F(e,1,!1,e.toLowerCase(),null,!0,!0)});function xe(e,t,r,n){var l=K.hasOwnProperty(t)?K[t]:null;(l!==null?l.type!==0:n||!(2<t.length)||t[0]!=="o"&&t[0]!=="O"||t[1]!=="n"&&t[1]!=="N")&&(z(t,r,l,n)&&(r=null),n||l===null?C(t)&&(r===null?e.removeAttribute(t):e.setAttribute(t,""+r)):l.mustUseProperty?e[l.propertyName]=r===null?l.type===3?!1:"":r:(t=l.attributeName,n=l.attributeNamespace,r===null?e.removeAttribute(t):(l=l.type,r=l===3||l===4&&r===!0?"":""+r,n?e.setAttributeNS(n,t,r):e.setAttribute(t,r))))}var pe=o.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,je=Symbol.for("react.element"),$=Symbol.for("react.portal"),T=Symbol.for("react.fragment"),se=Symbol.for("react.strict_mode"),Re=Symbol.for("react.profiler"),he=Symbol.for("react.provider"),Q=Symbol.for("react.context"),ee=Symbol.for("react.forward_ref"),de=Symbol.for("react.suspense"),Oe=Symbol.for("react.suspense_list"),Ve=Symbol.for("react.memo"),at=Symbol.for("react.lazy"),Me=Symbol.for("react.offscreen"),W=Symbol.iterator;function te(e){return e===null||typeof e!="object"?null:(e=W&&e[W]||e["@@iterator"],typeof e=="function"?e:null)}var Y=Object.assign,E;function D(e){if(E===void 0)try{throw Error()}catch(r){var t=r.stack.trim().match(/\n( *(at )?)/);E=t&&t[1]||""}return`
`+E+e}var ye=!1;function ke(e,t){if(!e||ye)return"";ye=!0;var r=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(t)if(t=function(){throw Error()},Object.defineProperty(t.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(t,[])}catch(L){var n=L}Reflect.construct(e,[],t)}else{try{t.call()}catch(L){n=L}e.call(t.prototype)}else{try{throw Error()}catch(L){n=L}e()}}catch(L){if(L&&n&&typeof L.stack=="string"){for(var l=L.stack.split(`
`),s=n.stack.split(`
`),c=l.length-1,m=s.length-1;1<=c&&0<=m&&l[c]!==s[m];)m--;for(;1<=c&&0<=m;c--,m--)if(l[c]!==s[m]){if(c!==1||m!==1)do if(c--,m--,0>m||l[c]!==s[m]){var w=`
`+l[c].replace(" at new "," at ");return e.displayName&&w.includes("<anonymous>")&&(w=w.replace("<anonymous>",e.displayName)),w}while(1<=c&&0<=m);break}}}finally{ye=!1,Error.prepareStackTrace=r}return(e=e?e.displayName||e.name:"")?D(e):""}function Se(e){switch(e.tag){case 5:return D(e.type);case 16:return D("Lazy");case 13:return D("Suspense");case 19:return D("SuspenseList");case 0:case 2:case 15:return e=ke(e.type,!1),e;case 11:return e=ke(e.type.render,!1),e;case 1:return e=ke(e.type,!0),e;default:return""}}function _e(e){if(e==null)return null;if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case T:return"Fragment";case $:return"Portal";case Re:return"Profiler";case se:return"StrictMode";case de:return"Suspense";case Oe:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case Q:return(e.displayName||"Context")+".Consumer";case he:return(e._context.displayName||"Context")+".Provider";case ee:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case Ve:return t=e.displayName||null,t!==null?t:_e(e.type)||"Memo";case at:t=e._payload,e=e._init;try{return _e(e(t))}catch{}}return null}function Te(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=t.render,e=e.displayName||e.name||"",t.displayName||(e!==""?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return _e(t);case 8:return t===se?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof t=="function")return t.displayName||t.name||null;if(typeof t=="string")return t}return null}function Le(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function $e(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function vt(e){var t=$e(e)?"checked":"value",r=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),n=""+e[t];if(!e.hasOwnProperty(t)&&typeof r<"u"&&typeof r.get=="function"&&typeof r.set=="function"){var l=r.get,s=r.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return l.call(this)},set:function(c){n=""+c,s.call(this,c)}}),Object.defineProperty(e,t,{enumerable:r.enumerable}),{getValue:function(){return n},setValue:function(c){n=""+c},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function Ir(e){e._valueTracker||(e._valueTracker=vt(e))}function ot(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var r=t.getValue(),n="";return e&&(n=$e(e)?e.checked?"true":"false":e.value),e=n,e!==r?(t.setValue(e),!0):!1}function Rt(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}}function Dr(e,t){var r=t.checked;return Y({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:r??e._wrapperState.initialChecked})}function Ln(e,t){var r=t.defaultValue==null?"":t.defaultValue,n=t.checked!=null?t.checked:t.defaultChecked;r=Le(t.value!=null?t.value:r),e._wrapperState={initialChecked:n,initialValue:r,controlled:t.type==="checkbox"||t.type==="radio"?t.checked!=null:t.value!=null}}function Ht(e,t){t=t.checked,t!=null&&xe(e,"checked",t,!1)}function un(e,t){Ht(e,t);var r=Le(t.value),n=t.type;if(r!=null)n==="number"?(r===0&&e.value===""||e.value!=r)&&(e.value=""+r):e.value!==""+r&&(e.value=""+r);else if(n==="submit"||n==="reset"){e.removeAttribute("value");return}t.hasOwnProperty("value")?vr(e,t.type,r):t.hasOwnProperty("defaultValue")&&vr(e,t.type,Le(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function Nn(e,t,r){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var n=t.type;if(!(n!=="submit"&&n!=="reset"||t.value!==void 0&&t.value!==null))return;t=""+e._wrapperState.initialValue,r||t===e.value||(e.value=t),e.defaultValue=t}r=e.name,r!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,r!==""&&(e.name=r)}function vr(e,t,r){(t!=="number"||Rt(e.ownerDocument)!==e)&&(r==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+r&&(e.defaultValue=""+r))}var yr=Array.isArray;function ur(e,t,r,n){if(e=e.options,t){t={};for(var l=0;l<r.length;l++)t["$"+r[l]]=!0;for(r=0;r<e.length;r++)l=t.hasOwnProperty("$"+e[r].value),e[r].selected!==l&&(e[r].selected=l),l&&n&&(e[r].defaultSelected=!0)}else{for(r=""+Le(r),t=null,l=0;l<e.length;l++){if(e[l].value===r){e[l].selected=!0,n&&(e[l].defaultSelected=!0);return}t!==null||e[l].disabled||(t=e[l])}t!==null&&(t.selected=!0)}}function H(e,t){if(t.dangerouslySetInnerHTML!=null)throw Error(a(91));return Y({},t,{value:void 0,defaultValue:void 0,children:""+e._wrapperState.initialValue})}function b(e,t){var r=t.value;if(r==null){if(r=t.children,t=t.defaultValue,r!=null){if(t!=null)throw Error(a(92));if(yr(r)){if(1<r.length)throw Error(a(93));r=r[0]}t=r}t==null&&(t=""),r=t}e._wrapperState={initialValue:Le(r)}}function J(e,t){var r=Le(t.value),n=Le(t.defaultValue);r!=null&&(r=""+r,r!==e.value&&(e.value=r),t.defaultValue==null&&e.defaultValue!==r&&(e.defaultValue=r)),n!=null&&(e.defaultValue=""+n)}function fe(e){var t=e.textContent;t===e._wrapperState.initialValue&&t!==""&&t!==null&&(e.value=t)}function We(e){switch(e){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function be(e,t){return e==null||e==="http://www.w3.org/1999/xhtml"?We(t):e==="http://www.w3.org/2000/svg"&&t==="foreignObject"?"http://www.w3.org/1999/xhtml":e}var qe,Je=(function(e){return typeof MSApp<"u"&&MSApp.execUnsafeLocalFunction?function(t,r,n,l){MSApp.execUnsafeLocalFunction(function(){return e(t,r,n,l)})}:e})(function(e,t){if(e.namespaceURI!=="http://www.w3.org/2000/svg"||"innerHTML"in e)e.innerHTML=t;else{for(qe=qe||document.createElement("div"),qe.innerHTML="<svg>"+t.valueOf().toString()+"</svg>",t=qe.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function bt(e,t){if(t){var r=e.firstChild;if(r&&r===e.lastChild&&r.nodeType===3){r.nodeValue=t;return}}e.textContent=t}var Qt={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},In=["Webkit","ms","Moz","O"];Object.keys(Qt).forEach(function(e){In.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),Qt[t]=Qt[e]})});function Lt(e,t,r){return t==null||typeof t=="boolean"||t===""?"":r||typeof t!="number"||t===0||Qt.hasOwnProperty(e)&&Qt[e]?(""+t).trim():t+"px"}function zr(e,t){e=e.style;for(var r in t)if(t.hasOwnProperty(r)){var n=r.indexOf("--")===0,l=Lt(r,t[r],n);r==="float"&&(r="cssFloat"),n?e.setProperty(r,l):e[r]=l}}var Ut=Y({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function er(e,t){if(t){if(Ut[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(a(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(a(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(a(61))}if(t.style!=null&&typeof t.style!="object")throw Error(a(62))}}function ul(e,t){if(e.indexOf("-")===-1)return typeof t.is=="string";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 Dn=null;function Mr(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var zn=null,cr=null,dr=null;function to(e){if(e=Nl(e)){if(typeof zn!="function")throw Error(a(280));var t=e.stateNode;t&&(t=Co(t),zn(e.stateNode,e.type,t))}}function cl(e){cr?dr?dr.push(e):dr=[e]:cr=e}function ro(){if(cr){var e=cr,t=dr;if(dr=cr=null,to(e),t)for(e=0;e<t.length;e++)to(t[e])}}function dl(e,t){return e(t)}function cn(){}var Fr=!1;function no(e,t,r){if(Fr)return e(t,r);Fr=!0;try{return dl(e,t,r)}finally{Fr=!1,(cr!==null||dr!==null)&&(cn(),ro())}}function dn(e,t){var r=e.stateNode;if(r===null)return null;var n=Co(r);if(n===null)return null;r=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(r&&typeof r!="function")throw Error(a(231,t,typeof r));return r}var y=!1;if(v)try{var j={};Object.defineProperty(j,"passive",{get:function(){y=!0}}),window.addEventListener("test",j,j),window.removeEventListener("test",j,j)}catch{y=!1}function I(e,t,r,n,l,s,c,m,w){var L=Array.prototype.slice.call(arguments,3);try{t.apply(r,L)}catch(A){this.onError(A)}}var O=!1,q=null,ce=!1,ve=null,ne={onError:function(e){O=!0,q=e}};function ie(e,t,r,n,l,s,c,m,w){O=!1,q=null,I.apply(ne,arguments)}function G(e,t,r,n,l,s,c,m,w){if(ie.apply(this,arguments),O){if(O){var L=q;O=!1,q=null}else throw Error(a(198));ce||(ce=!0,ve=L)}}function re(e){var t=e,r=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,(t.flags&4098)!==0&&(r=t.return),e=t.return;while(e)}return t.tag===3?r:null}function Ee(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 Ne(e){if(re(e)!==e)throw Error(a(188))}function dt(e){var t=e.alternate;if(!t){if(t=re(e),t===null)throw Error(a(188));return t!==e?null:e}for(var r=e,n=t;;){var l=r.return;if(l===null)break;var s=l.alternate;if(s===null){if(n=l.return,n!==null){r=n;continue}break}if(l.child===s.child){for(s=l.child;s;){if(s===r)return Ne(l),e;if(s===n)return Ne(l),t;s=s.sibling}throw Error(a(188))}if(r.return!==n.return)r=l,n=s;else{for(var c=!1,m=l.child;m;){if(m===r){c=!0,r=l,n=s;break}if(m===n){c=!0,n=l,r=s;break}m=m.sibling}if(!c){for(m=s.child;m;){if(m===r){c=!0,r=s,n=l;break}if(m===n){c=!0,n=s,r=l;break}m=m.sibling}if(!c)throw Error(a(189))}}if(r.alternate!==n)throw Error(a(190))}if(r.tag!==3)throw Error(a(188));return r.stateNode.current===r?e:t}function He(e){return e=dt(e),e!==null?ze(e):null}function ze(e){if(e.tag===5||e.tag===6)return e;for(e=e.child;e!==null;){var t=ze(e);if(t!==null)return t;e=e.sibling}return null}var Ge=i.unstable_scheduleCallback,wr=i.unstable_cancelCallback,fn=i.unstable_shouldYield,tr=i.unstable_requestPaint,Ue=i.unstable_now,fl=i.unstable_getCurrentPriorityLevel,xr=i.unstable_ImmediatePriority,fr=i.unstable_UserBlockingPriority,Sr=i.unstable_NormalPriority,Mn=i.unstable_LowPriority,De=i.unstable_IdlePriority,Ye=null,yt=null;function pn(e){if(yt&&typeof yt.onCommitFiberRoot=="function")try{yt.onCommitFiberRoot(Ye,e,void 0,(e.current.flags&128)===128)}catch{}}var Ae=Math.clz32?Math.clz32:xi,Or=Math.log,lo=Math.LN2;function xi(e){return e>>>=0,e===0?32:31-(Or(e)/lo|0)|0}var oo=64,io=4194304;function pl(e){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:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return e&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return e&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function ao(e,t){var r=e.pendingLanes;if(r===0)return 0;var n=0,l=e.suspendedLanes,s=e.pingedLanes,c=r&268435455;if(c!==0){var m=c&~l;m!==0?n=pl(m):(s&=c,s!==0&&(n=pl(s)))}else c=r&~l,c!==0?n=pl(c):s!==0&&(n=pl(s));if(n===0)return 0;if(t!==0&&t!==n&&(t&l)===0&&(l=n&-n,s=t&-t,l>=s||l===16&&(s&4194240)!==0))return t;if((n&4)!==0&&(n|=r&16),t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=n;0<t;)r=31-Ae(t),l=1<<r,n|=e[r],t&=~l;return n}function Xd(e,t){switch(e){case 1:case 2:case 4:return t+250;case 8:case 16:case 32:case 64: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:case 67108864:return-1;case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Gd(e,t){for(var r=e.suspendedLanes,n=e.pingedLanes,l=e.expirationTimes,s=e.pendingLanes;0<s;){var c=31-Ae(s),m=1<<c,w=l[c];w===-1?((m&r)===0||(m&n)!==0)&&(l[c]=Xd(m,t)):w<=t&&(e.expiredLanes|=m),s&=~m}}function Si(e){return e=e.pendingLanes&-1073741825,e!==0?e:e&1073741824?1073741824:0}function Ss(){var e=oo;return oo<<=1,(oo&4194240)===0&&(oo=64),e}function ki(e){for(var t=[],r=0;31>r;r++)t.push(e);return t}function hl(e,t,r){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-Ae(t),e[t]=r}function Zd(e,t){var r=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var n=e.eventTimes;for(e=e.expirationTimes;0<r;){var l=31-Ae(r),s=1<<l;t[l]=0,n[l]=-1,e[l]=-1,r&=~s}}function Ei(e,t){var r=e.entangledLanes|=t;for(e=e.entanglements;r;){var n=31-Ae(r),l=1<<n;l&t|e[n]&t&&(e[n]|=t),r&=~l}}var Qe=0;function ks(e){return e&=-e,1<e?4<e?(e&268435455)!==0?16:536870912:4:1}var Es,Ci,Cs,js,_s,ji=!1,so=[],br=null,Ur=null,Ar=null,ml=new Map,gl=new Map,Br=[],ef="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 submit".split(" ");function Rs(e,t){switch(e){case"focusin":case"focusout":br=null;break;case"dragenter":case"dragleave":Ur=null;break;case"mouseover":case"mouseout":Ar=null;break;case"pointerover":case"pointerout":ml.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":gl.delete(t.pointerId)}}function vl(e,t,r,n,l,s){return e===null||e.nativeEvent!==s?(e={blockedOn:t,domEventName:r,eventSystemFlags:n,nativeEvent:s,targetContainers:[l]},t!==null&&(t=Nl(t),t!==null&&Ci(t)),e):(e.eventSystemFlags|=n,t=e.targetContainers,l!==null&&t.indexOf(l)===-1&&t.push(l),e)}function tf(e,t,r,n,l){switch(t){case"focusin":return br=vl(br,e,t,r,n,l),!0;case"dragenter":return Ur=vl(Ur,e,t,r,n,l),!0;case"mouseover":return Ar=vl(Ar,e,t,r,n,l),!0;case"pointerover":var s=l.pointerId;return ml.set(s,vl(ml.get(s)||null,e,t,r,n,l)),!0;case"gotpointercapture":return s=l.pointerId,gl.set(s,vl(gl.get(s)||null,e,t,r,n,l)),!0}return!1}function Ps(e){var t=hn(e.target);if(t!==null){var r=re(t);if(r!==null){if(t=r.tag,t===13){if(t=Ee(r),t!==null){e.blockedOn=t,_s(e.priority,function(){Cs(r)});return}}else if(t===3&&r.stateNode.current.memoizedState.isDehydrated){e.blockedOn=r.tag===3?r.stateNode.containerInfo:null;return}}}e.blockedOn=null}function uo(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var r=Ri(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(r===null){r=e.nativeEvent;var n=new r.constructor(r.type,r);Dn=n,r.target.dispatchEvent(n),Dn=null}else return t=Nl(r),t!==null&&Ci(t),e.blockedOn=r,!1;t.shift()}return!0}function Ts(e,t,r){uo(e)&&r.delete(t)}function rf(){ji=!1,br!==null&&uo(br)&&(br=null),Ur!==null&&uo(Ur)&&(Ur=null),Ar!==null&&uo(Ar)&&(Ar=null),ml.forEach(Ts),gl.forEach(Ts)}function yl(e,t){e.blockedOn===t&&(e.blockedOn=null,ji||(ji=!0,i.unstable_scheduleCallback(i.unstable_NormalPriority,rf)))}function wl(e){function t(l){return yl(l,e)}if(0<so.length){yl(so[0],e);for(var r=1;r<so.length;r++){var n=so[r];n.blockedOn===e&&(n.blockedOn=null)}}for(br!==null&&yl(br,e),Ur!==null&&yl(Ur,e),Ar!==null&&yl(Ar,e),ml.forEach(t),gl.forEach(t),r=0;r<Br.length;r++)n=Br[r],n.blockedOn===e&&(n.blockedOn=null);for(;0<Br.length&&(r=Br[0],r.blockedOn===null);)Ps(r),r.blockedOn===null&&Br.shift()}var Fn=pe.ReactCurrentBatchConfig,co=!0;function nf(e,t,r,n){var l=Qe,s=Fn.transition;Fn.transition=null;try{Qe=1,_i(e,t,r,n)}finally{Qe=l,Fn.transition=s}}function lf(e,t,r,n){var l=Qe,s=Fn.transition;Fn.transition=null;try{Qe=4,_i(e,t,r,n)}finally{Qe=l,Fn.transition=s}}function _i(e,t,r,n){if(co){var l=Ri(e,t,r,n);if(l===null)$i(e,t,n,fo,r),Rs(e,n);else if(tf(l,e,t,r,n))n.stopPropagation();else if(Rs(e,n),t&4&&-1<ef.indexOf(e)){for(;l!==null;){var s=Nl(l);if(s!==null&&Es(s),s=Ri(e,t,r,n),s===null&&$i(e,t,n,fo,r),s===l)break;l=s}l!==null&&n.stopPropagation()}else $i(e,t,n,null,r)}}var fo=null;function Ri(e,t,r,n){if(fo=null,e=Mr(n),e=hn(e),e!==null)if(t=re(e),t===null)e=null;else if(r=t.tag,r===13){if(e=Ee(t),e!==null)return e;e=null}else if(r===3){if(t.stateNode.current.memoizedState.isDehydrated)return t.tag===3?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null);return fo=e,null}function Ls(e){switch(e){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"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 1;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"toggle":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 4;case"message":switch(fl()){case xr:return 1;case fr:return 4;case Sr:case Mn:return 16;case De:return 536870912;default:return 16}default:return 16}}var Wr=null,Pi=null,po=null;function Ns(){if(po)return po;var e,t=Pi,r=t.length,n,l="value"in Wr?Wr.value:Wr.textContent,s=l.length;for(e=0;e<r&&t[e]===l[e];e++);var c=r-e;for(n=1;n<=c&&t[r-n]===l[s-n];n++);return po=l.slice(e,1<n?1-n:void 0)}function ho(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 mo(){return!0}function Is(){return!1}function At(e){function t(r,n,l,s,c){this._reactName=r,this._targetInst=l,this.type=n,this.nativeEvent=s,this.target=c,this.currentTarget=null;for(var m in e)e.hasOwnProperty(m)&&(r=e[m],this[m]=r?r(s):s[m]);return this.isDefaultPrevented=(s.defaultPrevented!=null?s.defaultPrevented:s.returnValue===!1)?mo:Is,this.isPropagationStopped=Is,this}return Y(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var r=this.nativeEvent;r&&(r.preventDefault?r.preventDefault():typeof r.returnValue!="unknown"&&(r.returnValue=!1),this.isDefaultPrevented=mo)},stopPropagation:function(){var r=this.nativeEvent;r&&(r.stopPropagation?r.stopPropagation():typeof r.cancelBubble!="unknown"&&(r.cancelBubble=!0),this.isPropagationStopped=mo)},persist:function(){},isPersistent:mo}),t}var On={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},Ti=At(On),xl=Y({},On,{view:0,detail:0}),of=At(xl),Li,Ni,Sl,go=Y({},xl,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Di,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!==Sl&&(Sl&&e.type==="mousemove"?(Li=e.screenX-Sl.screenX,Ni=e.screenY-Sl.screenY):Ni=Li=0,Sl=e),Li)},movementY:function(e){return"movementY"in e?e.movementY:Ni}}),Ds=At(go),af=Y({},go,{dataTransfer:0}),sf=At(af),uf=Y({},xl,{relatedTarget:0}),Ii=At(uf),cf=Y({},On,{animationName:0,elapsedTime:0,pseudoElement:0}),df=At(cf),ff=Y({},On,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),pf=At(ff),hf=Y({},On,{data:0}),zs=At(hf),mf={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},gf={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"},vf={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function yf(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=vf[e])?!!t[e]:!1}function Di(){return yf}var wf=Y({},xl,{key:function(e){if(e.key){var t=mf[e.key]||e.key;if(t!=="Unidentified")return t}return e.type==="keypress"?(e=ho(e),e===13?"Enter":String.fromCharCode(e)):e.type==="keydown"||e.type==="keyup"?gf[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Di,charCode:function(e){return e.type==="keypress"?ho(e):0},keyCode:function(e){return e.type==="keydown"||e.type==="keyup"?e.keyCode:0},which:function(e){return e.type==="keypress"?ho(e):e.type==="keydown"||e.type==="keyup"?e.keyCode:0}}),xf=At(wf),Sf=Y({},go,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),Ms=At(Sf),kf=Y({},xl,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Di}),Ef=At(kf),Cf=Y({},On,{propertyName:0,elapsedTime:0,pseudoElement:0}),jf=At(Cf),_f=Y({},go,{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}),Rf=At(_f),Pf=[9,13,27,32],zi=v&&"CompositionEvent"in window,kl=null;v&&"documentMode"in document&&(kl=document.documentMode);var Tf=v&&"TextEvent"in window&&!kl,Fs=v&&(!zi||kl&&8<kl&&11>=kl),Os=" ",bs=!1;function Us(e,t){switch(e){case"keyup":return Pf.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function As(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var bn=!1;function Lf(e,t){switch(e){case"compositionend":return As(t);case"keypress":return t.which!==32?null:(bs=!0,Os);case"textInput":return e=t.data,e===Os&&bs?null:e;default:return null}}function Nf(e,t){if(bn)return e==="compositionend"||!zi&&Us(e,t)?(e=Ns(),po=Pi=Wr=null,bn=!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 Fs&&t.locale!=="ko"?null:t.data;default:return null}}var If={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 Bs(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t==="input"?!!If[e.type]:t==="textarea"}function Ws(e,t,r,n){cl(n),t=So(t,"onChange"),0<t.length&&(r=new Ti("onChange","change",null,r,n),e.push({event:r,listeners:t}))}var El=null,Cl=null;function Df(e){iu(e,0)}function vo(e){var t=Vn(e);if(ot(t))return e}function zf(e,t){if(e==="change")return t}var Vs=!1;if(v){var Mi;if(v){var Fi="oninput"in document;if(!Fi){var $s=document.createElement("div");$s.setAttribute("oninput","return;"),Fi=typeof $s.oninput=="function"}Mi=Fi}else Mi=!1;Vs=Mi&&(!document.documentMode||9<document.documentMode)}function Hs(){El&&(El.detachEvent("onpropertychange",Qs),Cl=El=null)}function Qs(e){if(e.propertyName==="value"&&vo(Cl)){var t=[];Ws(t,Cl,e,Mr(e)),no(Df,t)}}function Mf(e,t,r){e==="focusin"?(Hs(),El=t,Cl=r,El.attachEvent("onpropertychange",Qs)):e==="focusout"&&Hs()}function Ff(e){if(e==="selectionchange"||e==="keyup"||e==="keydown")return vo(Cl)}function Of(e,t){if(e==="click")return vo(t)}function bf(e,t){if(e==="input"||e==="change")return vo(t)}function Uf(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var rr=typeof Object.is=="function"?Object.is:Uf;function jl(e,t){if(rr(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;var r=Object.keys(e),n=Object.keys(t);if(r.length!==n.length)return!1;for(n=0;n<r.length;n++){var l=r[n];if(!g.call(t,l)||!rr(e[l],t[l]))return!1}return!0}function Ks(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function qs(e,t){var r=Ks(e);e=0;for(var n;r;){if(r.nodeType===3){if(n=e+r.textContent.length,e<=t&&n>=t)return{node:r,offset:t-e};e=n}e:{for(;r;){if(r.nextSibling){r=r.nextSibling;break e}r=r.parentNode}r=void 0}r=Ks(r)}}function Ys(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Ys(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Js(){for(var e=window,t=Rt();t instanceof e.HTMLIFrameElement;){try{var r=typeof t.contentWindow.location.href=="string"}catch{r=!1}if(r)e=t.contentWindow;else break;t=Rt(e.document)}return t}function Oi(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")}function Af(e){var t=Js(),r=e.focusedElem,n=e.selectionRange;if(t!==r&&r&&r.ownerDocument&&Ys(r.ownerDocument.documentElement,r)){if(n!==null&&Oi(r)){if(t=n.start,e=n.end,e===void 0&&(e=t),"selectionStart"in r)r.selectionStart=t,r.selectionEnd=Math.min(e,r.value.length);else if(e=(t=r.ownerDocument||document)&&t.defaultView||window,e.getSelection){e=e.getSelection();var l=r.textContent.length,s=Math.min(n.start,l);n=n.end===void 0?s:Math.min(n.end,l),!e.extend&&s>n&&(l=n,n=s,s=l),l=qs(r,s);var c=qs(r,n);l&&c&&(e.rangeCount!==1||e.anchorNode!==l.node||e.anchorOffset!==l.offset||e.focusNode!==c.node||e.focusOffset!==c.offset)&&(t=t.createRange(),t.setStart(l.node,l.offset),e.removeAllRanges(),s>n?(e.addRange(t),e.extend(c.node,c.offset)):(t.setEnd(c.node,c.offset),e.addRange(t)))}}for(t=[],e=r;e=e.parentNode;)e.nodeType===1&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof r.focus=="function"&&r.focus(),r=0;r<t.length;r++)e=t[r],e.element.scrollLeft=e.left,e.element.scrollTop=e.top}}var Bf=v&&"documentMode"in document&&11>=document.documentMode,Un=null,bi=null,_l=null,Ui=!1;function Xs(e,t,r){var n=r.window===r?r.document:r.nodeType===9?r:r.ownerDocument;Ui||Un==null||Un!==Rt(n)||(n=Un,"selectionStart"in n&&Oi(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}),_l&&jl(_l,n)||(_l=n,n=So(bi,"onSelect"),0<n.length&&(t=new Ti("onSelect","select",null,t,r),e.push({event:t,listeners:n}),t.target=Un)))}function yo(e,t){var r={};return r[e.toLowerCase()]=t.toLowerCase(),r["Webkit"+e]="webkit"+t,r["Moz"+e]="moz"+t,r}var An={animationend:yo("Animation","AnimationEnd"),animationiteration:yo("Animation","AnimationIteration"),animationstart:yo("Animation","AnimationStart"),transitionend:yo("Transition","TransitionEnd")},Ai={},Gs={};v&&(Gs=document.createElement("div").style,"AnimationEvent"in window||(delete An.animationend.animation,delete An.animationiteration.animation,delete An.animationstart.animation),"TransitionEvent"in window||delete An.transitionend.transition);function wo(e){if(Ai[e])return Ai[e];if(!An[e])return e;var t=An[e],r;for(r in t)if(t.hasOwnProperty(r)&&r in Gs)return Ai[e]=t[r];return e}var Zs=wo("animationend"),eu=wo("animationiteration"),tu=wo("animationstart"),ru=wo("transitionend"),nu=new Map,lu="abort auxClick 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(" ");function Vr(e,t){nu.set(e,t),h(t,[e])}for(var Bi=0;Bi<lu.length;Bi++){var Wi=lu[Bi],Wf=Wi.toLowerCase(),Vf=Wi[0].toUpperCase()+Wi.slice(1);Vr(Wf,"on"+Vf)}Vr(Zs,"onAnimationEnd"),Vr(eu,"onAnimationIteration"),Vr(tu,"onAnimationStart"),Vr("dblclick","onDoubleClick"),Vr("focusin","onFocus"),Vr("focusout","onBlur"),Vr(ru,"onTransitionEnd"),p("onMouseEnter",["mouseout","mouseover"]),p("onMouseLeave",["mouseout","mouseover"]),p("onPointerEnter",["pointerout","pointerover"]),p("onPointerLeave",["pointerout","pointerover"]),h("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),h("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),h("onBeforeInput",["compositionend","keypress","textInput","paste"]),h("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),h("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),h("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var Rl="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(" "),$f=new Set("cancel close invalid load scroll toggle".split(" ").concat(Rl));function ou(e,t,r){var n=e.type||"unknown-event";e.currentTarget=r,G(n,t,void 0,e),e.currentTarget=null}function iu(e,t){t=(t&4)!==0;for(var r=0;r<e.length;r++){var n=e[r],l=n.event;n=n.listeners;e:{var s=void 0;if(t)for(var c=n.length-1;0<=c;c--){var m=n[c],w=m.instance,L=m.currentTarget;if(m=m.listener,w!==s&&l.isPropagationStopped())break e;ou(l,m,L),s=w}else for(c=0;c<n.length;c++){if(m=n[c],w=m.instance,L=m.currentTarget,m=m.listener,w!==s&&l.isPropagationStopped())break e;ou(l,m,L),s=w}}}if(ce)throw e=ve,ce=!1,ve=null,e}function Ze(e,t){var r=t[Ji];r===void 0&&(r=t[Ji]=new Set);var n=e+"__bubble";r.has(n)||(au(t,e,2,!1),r.add(n))}function Vi(e,t,r){var n=0;t&&(n|=4),au(r,e,n,t)}var xo="_reactListening"+Math.random().toString(36).slice(2);function Pl(e){if(!e[xo]){e[xo]=!0,u.forEach(function(r){r!=="selectionchange"&&($f.has(r)||Vi(r,!1,e),Vi(r,!0,e))});var t=e.nodeType===9?e:e.ownerDocument;t===null||t[xo]||(t[xo]=!0,Vi("selectionchange",!1,t))}}function au(e,t,r,n){switch(Ls(t)){case 1:var l=nf;break;case 4:l=lf;break;default:l=_i}r=l.bind(null,t,r,e),l=void 0,!y||t!=="touchstart"&&t!=="touchmove"&&t!=="wheel"||(l=!0),n?l!==void 0?e.addEventListener(t,r,{capture:!0,passive:l}):e.addEventListener(t,r,!0):l!==void 0?e.addEventListener(t,r,{passive:l}):e.addEventListener(t,r,!1)}function $i(e,t,r,n,l){var s=n;if((t&1)===0&&(t&2)===0&&n!==null)e:for(;;){if(n===null)return;var c=n.tag;if(c===3||c===4){var m=n.stateNode.containerInfo;if(m===l||m.nodeType===8&&m.parentNode===l)break;if(c===4)for(c=n.return;c!==null;){var w=c.tag;if((w===3||w===4)&&(w=c.stateNode.containerInfo,w===l||w.nodeType===8&&w.parentNode===l))return;c=c.return}for(;m!==null;){if(c=hn(m),c===null)return;if(w=c.tag,w===5||w===6){n=s=c;continue e}m=m.parentNode}}n=n.return}no(function(){var L=s,A=Mr(r),B=[];e:{var U=nu.get(e);if(U!==void 0){var X=Ti,le=e;switch(e){case"keypress":if(ho(r)===0)break e;case"keydown":case"keyup":X=xf;break;case"focusin":le="focus",X=Ii;break;case"focusout":le="blur",X=Ii;break;case"beforeblur":case"afterblur":X=Ii;break;case"click":if(r.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":X=Ds;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":X=sf;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":X=Ef;break;case Zs:case eu:case tu:X=df;break;case ru:X=jf;break;case"scroll":X=of;break;case"wheel":X=Rf;break;case"copy":case"cut":case"paste":X=pf;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":X=Ms}var ae=(t&4)!==0,st=!ae&&e==="scroll",R=ae?U!==null?U+"Capture":null:U;ae=[];for(var k=L,P;k!==null;){P=k;var V=P.stateNode;if(P.tag===5&&V!==null&&(P=V,R!==null&&(V=dn(k,R),V!=null&&ae.push(Tl(k,V,P)))),st)break;k=k.return}0<ae.length&&(U=new X(U,le,null,r,A),B.push({event:U,listeners:ae}))}}if((t&7)===0){e:{if(U=e==="mouseover"||e==="pointerover",X=e==="mouseout"||e==="pointerout",U&&r!==Dn&&(le=r.relatedTarget||r.fromElement)&&(hn(le)||le[kr]))break e;if((X||U)&&(U=A.window===A?A:(U=A.ownerDocument)?U.defaultView||U.parentWindow:window,X?(le=r.relatedTarget||r.toElement,X=L,le=le?hn(le):null,le!==null&&(st=re(le),le!==st||le.tag!==5&&le.tag!==6)&&(le=null)):(X=null,le=L),X!==le)){if(ae=Ds,V="onMouseLeave",R="onMouseEnter",k="mouse",(e==="pointerout"||e==="pointerover")&&(ae=Ms,V="onPointerLeave",R="onPointerEnter",k="pointer"),st=X==null?U:Vn(X),P=le==null?U:Vn(le),U=new ae(V,k+"leave",X,r,A),U.target=st,U.relatedTarget=P,V=null,hn(A)===L&&(ae=new ae(R,k+"enter",le,r,A),ae.target=P,ae.relatedTarget=st,V=ae),st=V,X&&le)t:{for(ae=X,R=le,k=0,P=ae;P;P=Bn(P))k++;for(P=0,V=R;V;V=Bn(V))P++;for(;0<k-P;)ae=Bn(ae),k--;for(;0<P-k;)R=Bn(R),P--;for(;k--;){if(ae===R||R!==null&&ae===R.alternate)break t;ae=Bn(ae),R=Bn(R)}ae=null}else ae=null;X!==null&&su(B,U,X,ae,!1),le!==null&&st!==null&&su(B,st,le,ae,!0)}}e:{if(U=L?Vn(L):window,X=U.nodeName&&U.nodeName.toLowerCase(),X==="select"||X==="input"&&U.type==="file")var ue=zf;else if(Bs(U))if(Vs)ue=bf;else{ue=Ff;var me=Mf}else(X=U.nodeName)&&X.toLowerCase()==="input"&&(U.type==="checkbox"||U.type==="radio")&&(ue=Of);if(ue&&(ue=ue(e,L))){Ws(B,ue,r,A);break e}me&&me(e,U,L),e==="focusout"&&(me=U._wrapperState)&&me.controlled&&U.type==="number"&&vr(U,"number",U.value)}switch(me=L?Vn(L):window,e){case"focusin":(Bs(me)||me.contentEditable==="true")&&(Un=me,bi=L,_l=null);break;case"focusout":_l=bi=Un=null;break;case"mousedown":Ui=!0;break;case"contextmenu":case"mouseup":case"dragend":Ui=!1,Xs(B,r,A);break;case"selectionchange":if(Bf)break;case"keydown":case"keyup":Xs(B,r,A)}var ge;if(zi)e:{switch(e){case"compositionstart":var we="onCompositionStart";break e;case"compositionend":we="onCompositionEnd";break e;case"compositionupdate":we="onCompositionUpdate";break e}we=void 0}else bn?Us(e,r)&&(we="onCompositionEnd"):e==="keydown"&&r.keyCode===229&&(we="onCompositionStart");we&&(Fs&&r.locale!=="ko"&&(bn||we!=="onCompositionStart"?we==="onCompositionEnd"&&bn&&(ge=Ns()):(Wr=A,Pi="value"in Wr?Wr.value:Wr.textContent,bn=!0)),me=So(L,we),0<me.length&&(we=new zs(we,e,null,r,A),B.push({event:we,listeners:me}),ge?we.data=ge:(ge=As(r),ge!==null&&(we.data=ge)))),(ge=Tf?Lf(e,r):Nf(e,r))&&(L=So(L,"onBeforeInput"),0<L.length&&(A=new zs("onBeforeInput","beforeinput",null,r,A),B.push({event:A,listeners:L}),A.data=ge))}iu(B,t)})}function Tl(e,t,r){return{instance:e,listener:t,currentTarget:r}}function So(e,t){for(var r=t+"Capture",n=[];e!==null;){var l=e,s=l.stateNode;l.tag===5&&s!==null&&(l=s,s=dn(e,r),s!=null&&n.unshift(Tl(e,s,l)),s=dn(e,t),s!=null&&n.push(Tl(e,s,l))),e=e.return}return n}function Bn(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5);return e||null}function su(e,t,r,n,l){for(var s=t._reactName,c=[];r!==null&&r!==n;){var m=r,w=m.alternate,L=m.stateNode;if(w!==null&&w===n)break;m.tag===5&&L!==null&&(m=L,l?(w=dn(r,s),w!=null&&c.unshift(Tl(r,w,m))):l||(w=dn(r,s),w!=null&&c.push(Tl(r,w,m)))),r=r.return}c.length!==0&&e.push({event:t,listeners:c})}var Hf=/\r\n?/g,Qf=/\u0000|\uFFFD/g;function uu(e){return(typeof e=="string"?e:""+e).replace(Hf,`
`).replace(Qf,"")}function ko(e,t,r){if(t=uu(t),uu(e)!==t&&r)throw Error(a(425))}function Eo(){}var Hi=null,Qi=null;function Ki(e,t){return e==="textarea"||e==="noscript"||typeof t.children=="string"||typeof t.children=="number"||typeof t.dangerouslySetInnerHTML=="object"&&t.dangerouslySetInnerHTML!==null&&t.dangerouslySetInnerHTML.__html!=null}var qi=typeof setTimeout=="function"?setTimeout:void 0,Kf=typeof clearTimeout=="function"?clearTimeout:void 0,cu=typeof Promise=="function"?Promise:void 0,qf=typeof queueMicrotask=="function"?queueMicrotask:typeof cu<"u"?function(e){return cu.resolve(null).then(e).catch(Yf)}:qi;function Yf(e){setTimeout(function(){throw e})}function Yi(e,t){var r=t,n=0;do{var l=r.nextSibling;if(e.removeChild(r),l&&l.nodeType===8)if(r=l.data,r==="/$"){if(n===0){e.removeChild(l),wl(t);return}n--}else r!=="$"&&r!=="$?"&&r!=="$!"||n++;r=l}while(r);wl(t)}function $r(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==="$?")break;if(t==="/$")return null}}return e}function du(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var r=e.data;if(r==="$"||r==="$!"||r==="$?"){if(t===0)return e;t--}else r==="/$"&&t++}e=e.previousSibling}return null}var Wn=Math.random().toString(36).slice(2),pr="__reactFiber$"+Wn,Ll="__reactProps$"+Wn,kr="__reactContainer$"+Wn,Ji="__reactEvents$"+Wn,Jf="__reactListeners$"+Wn,Xf="__reactHandles$"+Wn;function hn(e){var t=e[pr];if(t)return t;for(var r=e.parentNode;r;){if(t=r[kr]||r[pr]){if(r=t.alternate,t.child!==null||r!==null&&r.child!==null)for(e=du(e);e!==null;){if(r=e[pr])return r;e=du(e)}return t}e=r,r=e.parentNode}return null}function Nl(e){return e=e[pr]||e[kr],!e||e.tag!==5&&e.tag!==6&&e.tag!==13&&e.tag!==3?null:e}function Vn(e){if(e.tag===5||e.tag===6)return e.stateNode;throw Error(a(33))}function Co(e){return e[Ll]||null}var Xi=[],$n=-1;function Hr(e){return{current:e}}function et(e){0>$n||(e.current=Xi[$n],Xi[$n]=null,$n--)}function Xe(e,t){$n++,Xi[$n]=e.current,e.current=t}var Qr={},St=Hr(Qr),Nt=Hr(!1),mn=Qr;function Hn(e,t){var r=e.type.contextTypes;if(!r)return Qr;var n=e.stateNode;if(n&&n.__reactInternalMemoizedUnmaskedChildContext===t)return n.__reactInternalMemoizedMaskedChildContext;var l={},s;for(s in r)l[s]=t[s];return n&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=l),l}function It(e){return e=e.childContextTypes,e!=null}function jo(){et(Nt),et(St)}function fu(e,t,r){if(St.current!==Qr)throw Error(a(168));Xe(St,t),Xe(Nt,r)}function pu(e,t,r){var n=e.stateNode;if(t=t.childContextTypes,typeof n.getChildContext!="function")return r;n=n.getChildContext();for(var l in n)if(!(l in t))throw Error(a(108,Te(e)||"Unknown",l));return Y({},r,n)}function _o(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||Qr,mn=St.current,Xe(St,e),Xe(Nt,Nt.current),!0}function hu(e,t,r){var n=e.stateNode;if(!n)throw Error(a(169));r?(e=pu(e,t,mn),n.__reactInternalMemoizedMergedChildContext=e,et(Nt),et(St),Xe(St,e)):et(Nt),Xe(Nt,r)}var Er=null,Ro=!1,Gi=!1;function mu(e){Er===null?Er=[e]:Er.push(e)}function Gf(e){Ro=!0,mu(e)}function Kr(){if(!Gi&&Er!==null){Gi=!0;var e=0,t=Qe;try{var r=Er;for(Qe=1;e<r.length;e++){var n=r[e];do n=n(!0);while(n!==null)}Er=null,Ro=!1}catch(l){throw Er!==null&&(Er=Er.slice(e+1)),Ge(xr,Kr),l}finally{Qe=t,Gi=!1}}return null}var Qn=[],Kn=0,Po=null,To=0,Kt=[],qt=0,gn=null,Cr=1,jr="";function vn(e,t){Qn[Kn++]=To,Qn[Kn++]=Po,Po=e,To=t}function gu(e,t,r){Kt[qt++]=Cr,Kt[qt++]=jr,Kt[qt++]=gn,gn=e;var n=Cr;e=jr;var l=32-Ae(n)-1;n&=~(1<<l),r+=1;var s=32-Ae(t)+l;if(30<s){var c=l-l%5;s=(n&(1<<c)-1).toString(32),n>>=c,l-=c,Cr=1<<32-Ae(t)+l|r<<l|n,jr=s+e}else Cr=1<<s|r<<l|n,jr=e}function Zi(e){e.return!==null&&(vn(e,1),gu(e,1,0))}function ea(e){for(;e===Po;)Po=Qn[--Kn],Qn[Kn]=null,To=Qn[--Kn],Qn[Kn]=null;for(;e===gn;)gn=Kt[--qt],Kt[qt]=null,jr=Kt[--qt],Kt[qt]=null,Cr=Kt[--qt],Kt[qt]=null}var Bt=null,Wt=null,tt=!1,nr=null;function vu(e,t){var r=Gt(5,null,null,0);r.elementType="DELETED",r.stateNode=t,r.return=e,t=e.deletions,t===null?(e.deletions=[r],e.flags|=16):t.push(r)}function yu(e,t){switch(e.tag){case 5:var r=e.type;return t=t.nodeType!==1||r.toLowerCase()!==t.nodeName.toLowerCase()?null:t,t!==null?(e.stateNode=t,Bt=e,Wt=$r(t.firstChild),!0):!1;case 6:return t=e.pendingProps===""||t.nodeType!==3?null:t,t!==null?(e.stateNode=t,Bt=e,Wt=null,!0):!1;case 13:return t=t.nodeType!==8?null:t,t!==null?(r=gn!==null?{id:Cr,overflow:jr}:null,e.memoizedState={dehydrated:t,treeContext:r,retryLane:1073741824},r=Gt(18,null,null,0),r.stateNode=t,r.return=e,e.child=r,Bt=e,Wt=null,!0):!1;default:return!1}}function ta(e){return(e.mode&1)!==0&&(e.flags&128)===0}function ra(e){if(tt){var t=Wt;if(t){var r=t;if(!yu(e,t)){if(ta(e))throw Error(a(418));t=$r(r.nextSibling);var n=Bt;t&&yu(e,t)?vu(n,r):(e.flags=e.flags&-4097|2,tt=!1,Bt=e)}}else{if(ta(e))throw Error(a(418));e.flags=e.flags&-4097|2,tt=!1,Bt=e}}}function wu(e){for(e=e.return;e!==null&&e.tag!==5&&e.tag!==3&&e.tag!==13;)e=e.return;Bt=e}function Lo(e){if(e!==Bt)return!1;if(!tt)return wu(e),tt=!0,!1;var t;if((t=e.tag!==3)&&!(t=e.tag!==5)&&(t=e.type,t=t!=="head"&&t!=="body"&&!Ki(e.type,e.memoizedProps)),t&&(t=Wt)){if(ta(e))throw xu(),Error(a(418));for(;t;)vu(e,t),t=$r(t.nextSibling)}if(wu(e),e.tag===13){if(e=e.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(a(317));e:{for(e=e.nextSibling,t=0;e;){if(e.nodeType===8){var r=e.data;if(r==="/$"){if(t===0){Wt=$r(e.nextSibling);break e}t--}else r!=="$"&&r!=="$!"&&r!=="$?"||t++}e=e.nextSibling}Wt=null}}else Wt=Bt?$r(e.stateNode.nextSibling):null;return!0}function xu(){for(var e=Wt;e;)e=$r(e.nextSibling)}function qn(){Wt=Bt=null,tt=!1}function na(e){nr===null?nr=[e]:nr.push(e)}var Zf=pe.ReactCurrentBatchConfig;function Il(e,t,r){if(e=r.ref,e!==null&&typeof e!="function"&&typeof e!="object"){if(r._owner){if(r=r._owner,r){if(r.tag!==1)throw Error(a(309));var n=r.stateNode}if(!n)throw Error(a(147,e));var l=n,s=""+e;return t!==null&&t.ref!==null&&typeof t.ref=="function"&&t.ref._stringRef===s?t.ref:(t=function(c){var m=l.refs;c===null?delete m[s]:m[s]=c},t._stringRef=s,t)}if(typeof e!="string")throw Error(a(284));if(!r._owner)throw Error(a(290,e))}return e}function No(e,t){throw e=Object.prototype.toString.call(t),Error(a(31,e==="[object Object]"?"object with keys {"+Object.keys(t).join(", ")+"}":e))}function Su(e){var t=e._init;return t(e._payload)}function ku(e){function t(R,k){if(e){var P=R.deletions;P===null?(R.deletions=[k],R.flags|=16):P.push(k)}}function r(R,k){if(!e)return null;for(;k!==null;)t(R,k),k=k.sibling;return null}function n(R,k){for(R=new Map;k!==null;)k.key!==null?R.set(k.key,k):R.set(k.index,k),k=k.sibling;return R}function l(R,k){return R=tn(R,k),R.index=0,R.sibling=null,R}function s(R,k,P){return R.index=P,e?(P=R.alternate,P!==null?(P=P.index,P<k?(R.flags|=2,k):P):(R.flags|=2,k)):(R.flags|=1048576,k)}function c(R){return e&&R.alternate===null&&(R.flags|=2),R}function m(R,k,P,V){return k===null||k.tag!==6?(k=qa(P,R.mode,V),k.return=R,k):(k=l(k,P),k.return=R,k)}function w(R,k,P,V){var ue=P.type;return ue===T?A(R,k,P.props.children,V,P.key):k!==null&&(k.elementType===ue||typeof ue=="object"&&ue!==null&&ue.$$typeof===at&&Su(ue)===k.type)?(V=l(k,P.props),V.ref=Il(R,k,P),V.return=R,V):(V=ti(P.type,P.key,P.props,null,R.mode,V),V.ref=Il(R,k,P),V.return=R,V)}function L(R,k,P,V){return k===null||k.tag!==4||k.stateNode.containerInfo!==P.containerInfo||k.stateNode.implementation!==P.implementation?(k=Ya(P,R.mode,V),k.return=R,k):(k=l(k,P.children||[]),k.return=R,k)}function A(R,k,P,V,ue){return k===null||k.tag!==7?(k=jn(P,R.mode,V,ue),k.return=R,k):(k=l(k,P),k.return=R,k)}function B(R,k,P){if(typeof k=="string"&&k!==""||typeof k=="number")return k=qa(""+k,R.mode,P),k.return=R,k;if(typeof k=="object"&&k!==null){switch(k.$$typeof){case je:return P=ti(k.type,k.key,k.props,null,R.mode,P),P.ref=Il(R,null,k),P.return=R,P;case $:return k=Ya(k,R.mode,P),k.return=R,k;case at:var V=k._init;return B(R,V(k._payload),P)}if(yr(k)||te(k))return k=jn(k,R.mode,P,null),k.return=R,k;No(R,k)}return null}function U(R,k,P,V){var ue=k!==null?k.key:null;if(typeof P=="string"&&P!==""||typeof P=="number")return ue!==null?null:m(R,k,""+P,V);if(typeof P=="object"&&P!==null){switch(P.$$typeof){case je:return P.key===ue?w(R,k,P,V):null;case $:return P.key===ue?L(R,k,P,V):null;case at:return ue=P._init,U(R,k,ue(P._payload),V)}if(yr(P)||te(P))return ue!==null?null:A(R,k,P,V,null);No(R,P)}return null}function X(R,k,P,V,ue){if(typeof V=="string"&&V!==""||typeof V=="number")return R=R.get(P)||null,m(k,R,""+V,ue);if(typeof V=="object"&&V!==null){switch(V.$$typeof){case je:return R=R.get(V.key===null?P:V.key)||null,w(k,R,V,ue);case $:return R=R.get(V.key===null?P:V.key)||null,L(k,R,V,ue);case at:var me=V._init;return X(R,k,P,me(V._payload),ue)}if(yr(V)||te(V))return R=R.get(P)||null,A(k,R,V,ue,null);No(k,V)}return null}function le(R,k,P,V){for(var ue=null,me=null,ge=k,we=k=0,gt=null;ge!==null&&we<P.length;we++){ge.index>we?(gt=ge,ge=null):gt=ge.sibling;var Be=U(R,ge,P[we],V);if(Be===null){ge===null&&(ge=gt);break}e&&ge&&Be.alternate===null&&t(R,ge),k=s(Be,k,we),me===null?ue=Be:me.sibling=Be,me=Be,ge=gt}if(we===P.length)return r(R,ge),tt&&vn(R,we),ue;if(ge===null){for(;we<P.length;we++)ge=B(R,P[we],V),ge!==null&&(k=s(ge,k,we),me===null?ue=ge:me.sibling=ge,me=ge);return tt&&vn(R,we),ue}for(ge=n(R,ge);we<P.length;we++)gt=X(ge,R,we,P[we],V),gt!==null&&(e&>.alternate!==null&&ge.delete(gt.key===null?we:gt.key),k=s(gt,k,we),me===null?ue=gt:me.sibling=gt,me=gt);return e&&ge.forEach(function(rn){return t(R,rn)}),tt&&vn(R,we),ue}function ae(R,k,P,V){var ue=te(P);if(typeof ue!="function")throw Error(a(150));if(P=ue.call(P),P==null)throw Error(a(151));for(var me=ue=null,ge=k,we=k=0,gt=null,Be=P.next();ge!==null&&!Be.done;we++,Be=P.next()){ge.index>we?(gt=ge,ge=null):gt=ge.sibling;var rn=U(R,ge,Be.value,V);if(rn===null){ge===null&&(ge=gt);break}e&&ge&&rn.alternate===null&&t(R,ge),k=s(rn,k,we),me===null?ue=rn:me.sibling=rn,me=rn,ge=gt}if(Be.done)return r(R,ge),tt&&vn(R,we),ue;if(ge===null){for(;!Be.done;we++,Be=P.next())Be=B(R,Be.value,V),Be!==null&&(k=s(Be,k,we),me===null?ue=Be:me.sibling=Be,me=Be);return tt&&vn(R,we),ue}for(ge=n(R,ge);!Be.done;we++,Be=P.next())Be=X(ge,R,we,Be.value,V),Be!==null&&(e&&Be.alternate!==null&&ge.delete(Be.key===null?we:Be.key),k=s(Be,k,we),me===null?ue=Be:me.sibling=Be,me=Be);return e&&ge.forEach(function(Ip){return t(R,Ip)}),tt&&vn(R,we),ue}function st(R,k,P,V){if(typeof P=="object"&&P!==null&&P.type===T&&P.key===null&&(P=P.props.children),typeof P=="object"&&P!==null){switch(P.$$typeof){case je:e:{for(var ue=P.key,me=k;me!==null;){if(me.key===ue){if(ue=P.type,ue===T){if(me.tag===7){r(R,me.sibling),k=l(me,P.props.children),k.return=R,R=k;break e}}else if(me.elementType===ue||typeof ue=="object"&&ue!==null&&ue.$$typeof===at&&Su(ue)===me.type){r(R,me.sibling),k=l(me,P.props),k.ref=Il(R,me,P),k.return=R,R=k;break e}r(R,me);break}else t(R,me);me=me.sibling}P.type===T?(k=jn(P.props.children,R.mode,V,P.key),k.return=R,R=k):(V=ti(P.type,P.key,P.props,null,R.mode,V),V.ref=Il(R,k,P),V.return=R,R=V)}return c(R);case $:e:{for(me=P.key;k!==null;){if(k.key===me)if(k.tag===4&&k.stateNode.containerInfo===P.containerInfo&&k.stateNode.implementation===P.implementation){r(R,k.sibling),k=l(k,P.children||[]),k.return=R,R=k;break e}else{r(R,k);break}else t(R,k);k=k.sibling}k=Ya(P,R.mode,V),k.return=R,R=k}return c(R);case at:return me=P._init,st(R,k,me(P._payload),V)}if(yr(P))return le(R,k,P,V);if(te(P))return ae(R,k,P,V);No(R,P)}return typeof P=="string"&&P!==""||typeof P=="number"?(P=""+P,k!==null&&k.tag===6?(r(R,k.sibling),k=l(k,P),k.return=R,R=k):(r(R,k),k=qa(P,R.mode,V),k.return=R,R=k),c(R)):r(R,k)}return st}var Yn=ku(!0),Eu=ku(!1),Io=Hr(null),Do=null,Jn=null,la=null;function oa(){la=Jn=Do=null}function ia(e){var t=Io.current;et(Io),e._currentValue=t}function aa(e,t,r){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===r)break;e=e.return}}function Xn(e,t){Do=e,la=Jn=null,e=e.dependencies,e!==null&&e.firstContext!==null&&((e.lanes&t)!==0&&(Dt=!0),e.firstContext=null)}function Yt(e){var t=e._currentValue;if(la!==e)if(e={context:e,memoizedValue:t,next:null},Jn===null){if(Do===null)throw Error(a(308));Jn=e,Do.dependencies={lanes:0,firstContext:e}}else Jn=Jn.next=e;return t}var yn=null;function sa(e){yn===null?yn=[e]:yn.push(e)}function Cu(e,t,r,n){var l=t.interleaved;return l===null?(r.next=r,sa(t)):(r.next=l.next,l.next=r),t.interleaved=r,_r(e,n)}function _r(e,t){e.lanes|=t;var r=e.alternate;for(r!==null&&(r.lanes|=t),r=e,e=e.return;e!==null;)e.childLanes|=t,r=e.alternate,r!==null&&(r.childLanes|=t),r=e,e=e.return;return r.tag===3?r.stateNode:null}var qr=!1;function ua(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function ju(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function Rr(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function Yr(e,t,r){var n=e.updateQueue;if(n===null)return null;if(n=n.shared,(Fe&2)!==0){var l=n.pending;return l===null?t.next=t:(t.next=l.next,l.next=t),n.pending=t,_r(e,r)}return l=n.interleaved,l===null?(t.next=t,sa(n)):(t.next=l.next,l.next=t),n.interleaved=t,_r(e,r)}function zo(e,t,r){if(t=t.updateQueue,t!==null&&(t=t.shared,(r&4194240)!==0)){var n=t.lanes;n&=e.pendingLanes,r|=n,t.lanes=r,Ei(e,r)}}function _u(e,t){var r=e.updateQueue,n=e.alternate;if(n!==null&&(n=n.updateQueue,r===n)){var l=null,s=null;if(r=r.firstBaseUpdate,r!==null){do{var c={eventTime:r.eventTime,lane:r.lane,tag:r.tag,payload:r.payload,callback:r.callback,next:null};s===null?l=s=c:s=s.next=c,r=r.next}while(r!==null);s===null?l=s=t:s=s.next=t}else l=s=t;r={baseState:n.baseState,firstBaseUpdate:l,lastBaseUpdate:s,shared:n.shared,effects:n.effects},e.updateQueue=r;return}e=r.lastBaseUpdate,e===null?r.firstBaseUpdate=t:e.next=t,r.lastBaseUpdate=t}function Mo(e,t,r,n){var l=e.updateQueue;qr=!1;var s=l.firstBaseUpdate,c=l.lastBaseUpdate,m=l.shared.pending;if(m!==null){l.shared.pending=null;var w=m,L=w.next;w.next=null,c===null?s=L:c.next=L,c=w;var A=e.alternate;A!==null&&(A=A.updateQueue,m=A.lastBaseUpdate,m!==c&&(m===null?A.firstBaseUpdate=L:m.next=L,A.lastBaseUpdate=w))}if(s!==null){var B=l.baseState;c=0,A=L=w=null,m=s;do{var U=m.lane,X=m.eventTime;if((n&U)===U){A!==null&&(A=A.next={eventTime:X,lane:0,tag:m.tag,payload:m.payload,callback:m.callback,next:null});e:{var le=e,ae=m;switch(U=t,X=r,ae.tag){case 1:if(le=ae.payload,typeof le=="function"){B=le.call(X,B,U);break e}B=le;break e;case 3:le.flags=le.flags&-65537|128;case 0:if(le=ae.payload,U=typeof le=="function"?le.call(X,B,U):le,U==null)break e;B=Y({},B,U);break e;case 2:qr=!0}}m.callback!==null&&m.lane!==0&&(e.flags|=64,U=l.effects,U===null?l.effects=[m]:U.push(m))}else X={eventTime:X,lane:U,tag:m.tag,payload:m.payload,callback:m.callback,next:null},A===null?(L=A=X,w=B):A=A.next=X,c|=U;if(m=m.next,m===null){if(m=l.shared.pending,m===null)break;U=m,m=U.next,U.next=null,l.lastBaseUpdate=U,l.shared.pending=null}}while(!0);if(A===null&&(w=B),l.baseState=w,l.firstBaseUpdate=L,l.lastBaseUpdate=A,t=l.shared.interleaved,t!==null){l=t;do c|=l.lane,l=l.next;while(l!==t)}else s===null&&(l.shared.lanes=0);Sn|=c,e.lanes=c,e.memoizedState=B}}function Ru(e,t,r){if(e=t.effects,t.effects=null,e!==null)for(t=0;t<e.length;t++){var n=e[t],l=n.callback;if(l!==null){if(n.callback=null,n=r,typeof l!="function")throw Error(a(191,l));l.call(n)}}}var Dl={},hr=Hr(Dl),zl=Hr(Dl),Ml=Hr(Dl);function wn(e){if(e===Dl)throw Error(a(174));return e}function ca(e,t){switch(Xe(Ml,t),Xe(zl,e),Xe(hr,Dl),e=t.nodeType,e){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:be(null,"");break;default:e=e===8?t.parentNode:t,t=e.namespaceURI||null,e=e.tagName,t=be(t,e)}et(hr),Xe(hr,t)}function Gn(){et(hr),et(zl),et(Ml)}function Pu(e){wn(Ml.current);var t=wn(hr.current),r=be(t,e.type);t!==r&&(Xe(zl,e),Xe(hr,r))}function da(e){zl.current===e&&(et(hr),et(zl))}var nt=Hr(0);function Fo(e){for(var t=e;t!==null;){if(t.tag===13){var r=t.memoizedState;if(r!==null&&(r=r.dehydrated,r===null||r.data==="$?"||r.data==="$!"))return t}else if(t.tag===19&&t.memoizedProps.revealOrder!==void 0){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 fa=[];function pa(){for(var e=0;e<fa.length;e++)fa[e]._workInProgressVersionPrimary=null;fa.length=0}var Oo=pe.ReactCurrentDispatcher,ha=pe.ReactCurrentBatchConfig,xn=0,lt=null,ft=null,ht=null,bo=!1,Fl=!1,Ol=0,ep=0;function kt(){throw Error(a(321))}function ma(e,t){if(t===null)return!1;for(var r=0;r<t.length&&r<e.length;r++)if(!rr(e[r],t[r]))return!1;return!0}function ga(e,t,r,n,l,s){if(xn=s,lt=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,Oo.current=e===null||e.memoizedState===null?lp:op,e=r(n,l),Fl){s=0;do{if(Fl=!1,Ol=0,25<=s)throw Error(a(301));s+=1,ht=ft=null,t.updateQueue=null,Oo.current=ip,e=r(n,l)}while(Fl)}if(Oo.current=Bo,t=ft!==null&&ft.next!==null,xn=0,ht=ft=lt=null,bo=!1,t)throw Error(a(300));return e}function va(){var e=Ol!==0;return Ol=0,e}function mr(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return ht===null?lt.memoizedState=ht=e:ht=ht.next=e,ht}function Jt(){if(ft===null){var e=lt.alternate;e=e!==null?e.memoizedState:null}else e=ft.next;var t=ht===null?lt.memoizedState:ht.next;if(t!==null)ht=t,ft=e;else{if(e===null)throw Error(a(310));ft=e,e={memoizedState:ft.memoizedState,baseState:ft.baseState,baseQueue:ft.baseQueue,queue:ft.queue,next:null},ht===null?lt.memoizedState=ht=e:ht=ht.next=e}return ht}function bl(e,t){return typeof t=="function"?t(e):t}function ya(e){var t=Jt(),r=t.queue;if(r===null)throw Error(a(311));r.lastRenderedReducer=e;var n=ft,l=n.baseQueue,s=r.pending;if(s!==null){if(l!==null){var c=l.next;l.next=s.next,s.next=c}n.baseQueue=l=s,r.pending=null}if(l!==null){s=l.next,n=n.baseState;var m=c=null,w=null,L=s;do{var A=L.lane;if((xn&A)===A)w!==null&&(w=w.next={lane:0,action:L.action,hasEagerState:L.hasEagerState,eagerState:L.eagerState,next:null}),n=L.hasEagerState?L.eagerState:e(n,L.action);else{var B={lane:A,action:L.action,hasEagerState:L.hasEagerState,eagerState:L.eagerState,next:null};w===null?(m=w=B,c=n):w=w.next=B,lt.lanes|=A,Sn|=A}L=L.next}while(L!==null&&L!==s);w===null?c=n:w.next=m,rr(n,t.memoizedState)||(Dt=!0),t.memoizedState=n,t.baseState=c,t.baseQueue=w,r.lastRenderedState=n}if(e=r.interleaved,e!==null){l=e;do s=l.lane,lt.lanes|=s,Sn|=s,l=l.next;while(l!==e)}else l===null&&(r.lanes=0);return[t.memoizedState,r.dispatch]}function wa(e){var t=Jt(),r=t.queue;if(r===null)throw Error(a(311));r.lastRenderedReducer=e;var n=r.dispatch,l=r.pending,s=t.memoizedState;if(l!==null){r.pending=null;var c=l=l.next;do s=e(s,c.action),c=c.next;while(c!==l);rr(s,t.memoizedState)||(Dt=!0),t.memoizedState=s,t.baseQueue===null&&(t.baseState=s),r.lastRenderedState=s}return[s,n]}function Tu(){}function Lu(e,t){var r=lt,n=Jt(),l=t(),s=!rr(n.memoizedState,l);if(s&&(n.memoizedState=l,Dt=!0),n=n.queue,xa(Du.bind(null,r,n,e),[e]),n.getSnapshot!==t||s||ht!==null&&ht.memoizedState.tag&1){if(r.flags|=2048,Ul(9,Iu.bind(null,r,n,l,t),void 0,null),mt===null)throw Error(a(349));(xn&30)!==0||Nu(r,t,l)}return l}function Nu(e,t,r){e.flags|=16384,e={getSnapshot:t,value:r},t=lt.updateQueue,t===null?(t={lastEffect:null,stores:null},lt.updateQueue=t,t.stores=[e]):(r=t.stores,r===null?t.stores=[e]:r.push(e))}function Iu(e,t,r,n){t.value=r,t.getSnapshot=n,zu(t)&&Mu(e)}function Du(e,t,r){return r(function(){zu(t)&&Mu(e)})}function zu(e){var t=e.getSnapshot;e=e.value;try{var r=t();return!rr(e,r)}catch{return!0}}function Mu(e){var t=_r(e,1);t!==null&&ar(t,e,1,-1)}function Fu(e){var t=mr();return typeof e=="function"&&(e=e()),t.memoizedState=t.baseState=e,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:bl,lastRenderedState:e},t.queue=e,e=e.dispatch=np.bind(null,lt,e),[t.memoizedState,e]}function Ul(e,t,r,n){return e={tag:e,create:t,destroy:r,deps:n,next:null},t=lt.updateQueue,t===null?(t={lastEffect:null,stores:null},lt.updateQueue=t,t.lastEffect=e.next=e):(r=t.lastEffect,r===null?t.lastEffect=e.next=e:(n=r.next,r.next=e,e.next=n,t.lastEffect=e)),e}function Ou(){return Jt().memoizedState}function Uo(e,t,r,n){var l=mr();lt.flags|=e,l.memoizedState=Ul(1|t,r,void 0,n===void 0?null:n)}function Ao(e,t,r,n){var l=Jt();n=n===void 0?null:n;var s=void 0;if(ft!==null){var c=ft.memoizedState;if(s=c.destroy,n!==null&&ma(n,c.deps)){l.memoizedState=Ul(t,r,s,n);return}}lt.flags|=e,l.memoizedState=Ul(1|t,r,s,n)}function bu(e,t){return Uo(8390656,8,e,t)}function xa(e,t){return Ao(2048,8,e,t)}function Uu(e,t){return Ao(4,2,e,t)}function Au(e,t){return Ao(4,4,e,t)}function Bu(e,t){if(typeof t=="function")return e=e(),t(e),function(){t(null)};if(t!=null)return e=e(),t.current=e,function(){t.current=null}}function Wu(e,t,r){return r=r!=null?r.concat([e]):null,Ao(4,4,Bu.bind(null,t,e),r)}function Sa(){}function Vu(e,t){var r=Jt();t=t===void 0?null:t;var n=r.memoizedState;return n!==null&&t!==null&&ma(t,n[1])?n[0]:(r.memoizedState=[e,t],e)}function $u(e,t){var r=Jt();t=t===void 0?null:t;var n=r.memoizedState;return n!==null&&t!==null&&ma(t,n[1])?n[0]:(e=e(),r.memoizedState=[e,t],e)}function Hu(e,t,r){return(xn&21)===0?(e.baseState&&(e.baseState=!1,Dt=!0),e.memoizedState=r):(rr(r,t)||(r=Ss(),lt.lanes|=r,Sn|=r,e.baseState=!0),t)}function tp(e,t){var r=Qe;Qe=r!==0&&4>r?r:4,e(!0);var n=ha.transition;ha.transition={};try{e(!1),t()}finally{Qe=r,ha.transition=n}}function Qu(){return Jt().memoizedState}function rp(e,t,r){var n=Zr(e);if(r={lane:n,action:r,hasEagerState:!1,eagerState:null,next:null},Ku(e))qu(t,r);else if(r=Cu(e,t,r,n),r!==null){var l=Tt();ar(r,e,n,l),Yu(r,t,n)}}function np(e,t,r){var n=Zr(e),l={lane:n,action:r,hasEagerState:!1,eagerState:null,next:null};if(Ku(e))qu(t,l);else{var s=e.alternate;if(e.lanes===0&&(s===null||s.lanes===0)&&(s=t.lastRenderedReducer,s!==null))try{var c=t.lastRenderedState,m=s(c,r);if(l.hasEagerState=!0,l.eagerState=m,rr(m,c)){var w=t.interleaved;w===null?(l.next=l,sa(t)):(l.next=w.next,w.next=l),t.interleaved=l;return}}catch{}finally{}r=Cu(e,t,l,n),r!==null&&(l=Tt(),ar(r,e,n,l),Yu(r,t,n))}}function Ku(e){var t=e.alternate;return e===lt||t!==null&&t===lt}function qu(e,t){Fl=bo=!0;var r=e.pending;r===null?t.next=t:(t.next=r.next,r.next=t),e.pending=t}function Yu(e,t,r){if((r&4194240)!==0){var n=t.lanes;n&=e.pendingLanes,r|=n,t.lanes=r,Ei(e,r)}}var Bo={readContext:Yt,useCallback:kt,useContext:kt,useEffect:kt,useImperativeHandle:kt,useInsertionEffect:kt,useLayoutEffect:kt,useMemo:kt,useReducer:kt,useRef:kt,useState:kt,useDebugValue:kt,useDeferredValue:kt,useTransition:kt,useMutableSource:kt,useSyncExternalStore:kt,useId:kt,unstable_isNewReconciler:!1},lp={readContext:Yt,useCallback:function(e,t){return mr().memoizedState=[e,t===void 0?null:t],e},useContext:Yt,useEffect:bu,useImperativeHandle:function(e,t,r){return r=r!=null?r.concat([e]):null,Uo(4194308,4,Bu.bind(null,t,e),r)},useLayoutEffect:function(e,t){return Uo(4194308,4,e,t)},useInsertionEffect:function(e,t){return Uo(4,2,e,t)},useMemo:function(e,t){var r=mr();return t=t===void 0?null:t,e=e(),r.memoizedState=[e,t],e},useReducer:function(e,t,r){var n=mr();return t=r!==void 0?r(t):t,n.memoizedState=n.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},n.queue=e,e=e.dispatch=rp.bind(null,lt,e),[n.memoizedState,e]},useRef:function(e){var t=mr();return e={current:e},t.memoizedState=e},useState:Fu,useDebugValue:Sa,useDeferredValue:function(e){return mr().memoizedState=e},useTransition:function(){var e=Fu(!1),t=e[0];return e=tp.bind(null,e[1]),mr().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,r){var n=lt,l=mr();if(tt){if(r===void 0)throw Error(a(407));r=r()}else{if(r=t(),mt===null)throw Error(a(349));(xn&30)!==0||Nu(n,t,r)}l.memoizedState=r;var s={value:r,getSnapshot:t};return l.queue=s,bu(Du.bind(null,n,s,e),[e]),n.flags|=2048,Ul(9,Iu.bind(null,n,s,r,t),void 0,null),r},useId:function(){var e=mr(),t=mt.identifierPrefix;if(tt){var r=jr,n=Cr;r=(n&~(1<<32-Ae(n)-1)).toString(32)+r,t=":"+t+"R"+r,r=Ol++,0<r&&(t+="H"+r.toString(32)),t+=":"}else r=ep++,t=":"+t+"r"+r.toString(32)+":";return e.memoizedState=t},unstable_isNewReconciler:!1},op={readContext:Yt,useCallback:Vu,useContext:Yt,useEffect:xa,useImperativeHandle:Wu,useInsertionEffect:Uu,useLayoutEffect:Au,useMemo:$u,useReducer:ya,useRef:Ou,useState:function(){return ya(bl)},useDebugValue:Sa,useDeferredValue:function(e){var t=Jt();return Hu(t,ft.memoizedState,e)},useTransition:function(){var e=ya(bl)[0],t=Jt().memoizedState;return[e,t]},useMutableSource:Tu,useSyncExternalStore:Lu,useId:Qu,unstable_isNewReconciler:!1},ip={readContext:Yt,useCallback:Vu,useContext:Yt,useEffect:xa,useImperativeHandle:Wu,useInsertionEffect:Uu,useLayoutEffect:Au,useMemo:$u,useReducer:wa,useRef:Ou,useState:function(){return wa(bl)},useDebugValue:Sa,useDeferredValue:function(e){var t=Jt();return ft===null?t.memoizedState=e:Hu(t,ft.memoizedState,e)},useTransition:function(){var e=wa(bl)[0],t=Jt().memoizedState;return[e,t]},useMutableSource:Tu,useSyncExternalStore:Lu,useId:Qu,unstable_isNewReconciler:!1};function lr(e,t){if(e&&e.defaultProps){t=Y({},t),e=e.defaultProps;for(var r in e)t[r]===void 0&&(t[r]=e[r]);return t}return t}function ka(e,t,r,n){t=e.memoizedState,r=r(n,t),r=r==null?t:Y({},t,r),e.memoizedState=r,e.lanes===0&&(e.updateQueue.baseState=r)}var Wo={isMounted:function(e){return(e=e._reactInternals)?re(e)===e:!1},enqueueSetState:function(e,t,r){e=e._reactInternals;var n=Tt(),l=Zr(e),s=Rr(n,l);s.payload=t,r!=null&&(s.callback=r),t=Yr(e,s,l),t!==null&&(ar(t,e,l,n),zo(t,e,l))},enqueueReplaceState:function(e,t,r){e=e._reactInternals;var n=Tt(),l=Zr(e),s=Rr(n,l);s.tag=1,s.payload=t,r!=null&&(s.callback=r),t=Yr(e,s,l),t!==null&&(ar(t,e,l,n),zo(t,e,l))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var r=Tt(),n=Zr(e),l=Rr(r,n);l.tag=2,t!=null&&(l.callback=t),t=Yr(e,l,n),t!==null&&(ar(t,e,n,r),zo(t,e,n))}};function Ju(e,t,r,n,l,s,c){return e=e.stateNode,typeof e.shouldComponentUpdate=="function"?e.shouldComponentUpdate(n,s,c):t.prototype&&t.prototype.isPureReactComponent?!jl(r,n)||!jl(l,s):!0}function Xu(e,t,r){var n=!1,l=Qr,s=t.contextType;return typeof s=="object"&&s!==null?s=Yt(s):(l=It(t)?mn:St.current,n=t.contextTypes,s=(n=n!=null)?Hn(e,l):Qr),t=new t(r,s),e.memoizedState=t.state!==null&&t.state!==void 0?t.state:null,t.updater=Wo,e.stateNode=t,t._reactInternals=e,n&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=l,e.__reactInternalMemoizedMaskedChildContext=s),t}function Gu(e,t,r,n){e=t.state,typeof t.componentWillReceiveProps=="function"&&t.componentWillReceiveProps(r,n),typeof t.UNSAFE_componentWillReceiveProps=="function"&&t.UNSAFE_componentWillReceiveProps(r,n),t.state!==e&&Wo.enqueueReplaceState(t,t.state,null)}function Ea(e,t,r,n){var l=e.stateNode;l.props=r,l.state=e.memoizedState,l.refs={},ua(e);var s=t.contextType;typeof s=="object"&&s!==null?l.context=Yt(s):(s=It(t)?mn:St.current,l.context=Hn(e,s)),l.state=e.memoizedState,s=t.getDerivedStateFromProps,typeof s=="function"&&(ka(e,t,s,r),l.state=e.memoizedState),typeof t.getDerivedStateFromProps=="function"||typeof l.getSnapshotBeforeUpdate=="function"||typeof l.UNSAFE_componentWillMount!="function"&&typeof l.componentWillMount!="function"||(t=l.state,typeof l.componentWillMount=="function"&&l.componentWillMount(),typeof l.UNSAFE_componentWillMount=="function"&&l.UNSAFE_componentWillMount(),t!==l.state&&Wo.enqueueReplaceState(l,l.state,null),Mo(e,r,l,n),l.state=e.memoizedState),typeof l.componentDidMount=="function"&&(e.flags|=4194308)}function Zn(e,t){try{var r="",n=t;do r+=Se(n),n=n.return;while(n);var l=r}catch(s){l=`
Error generating stack: `+s.message+`
`+s.stack}return{value:e,source:t,stack:l,digest:null}}function Ca(e,t,r){return{value:e,source:null,stack:r??null,digest:t??null}}function ja(e,t){try{console.error(t.value)}catch(r){setTimeout(function(){throw r})}}var ap=typeof WeakMap=="function"?WeakMap:Map;function Zu(e,t,r){r=Rr(-1,r),r.tag=3,r.payload={element:null};var n=t.value;return r.callback=function(){Yo||(Yo=!0,Aa=n),ja(e,t)},r}function ec(e,t,r){r=Rr(-1,r),r.tag=3;var n=e.type.getDerivedStateFromError;if(typeof n=="function"){var l=t.value;r.payload=function(){return n(l)},r.callback=function(){ja(e,t)}}var s=e.stateNode;return s!==null&&typeof s.componentDidCatch=="function"&&(r.callback=function(){ja(e,t),typeof n!="function"&&(Xr===null?Xr=new Set([this]):Xr.add(this));var c=t.stack;this.componentDidCatch(t.value,{componentStack:c!==null?c:""})}),r}function tc(e,t,r){var n=e.pingCache;if(n===null){n=e.pingCache=new ap;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(r)||(l.add(r),e=Sp.bind(null,e,t,r),t.then(e,e))}function rc(e){do{var t;if((t=e.tag===13)&&(t=e.memoizedState,t=t!==null?t.dehydrated!==null:!0),t)return e;e=e.return}while(e!==null);return null}function nc(e,t,r,n,l){return(e.mode&1)===0?(e===t?e.flags|=65536:(e.flags|=128,r.flags|=131072,r.flags&=-52805,r.tag===1&&(r.alternate===null?r.tag=17:(t=Rr(-1,1),t.tag=2,Yr(r,t,1))),r.lanes|=1),e):(e.flags|=65536,e.lanes=l,e)}var sp=pe.ReactCurrentOwner,Dt=!1;function Pt(e,t,r,n){t.child=e===null?Eu(t,null,r,n):Yn(t,e.child,r,n)}function lc(e,t,r,n,l){r=r.render;var s=t.ref;return Xn(t,l),n=ga(e,t,r,n,s,l),r=va(),e!==null&&!Dt?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~l,Pr(e,t,l)):(tt&&r&&Zi(t),t.flags|=1,Pt(e,t,n,l),t.child)}function oc(e,t,r,n,l){if(e===null){var s=r.type;return typeof s=="function"&&!Ka(s)&&s.defaultProps===void 0&&r.compare===null&&r.defaultProps===void 0?(t.tag=15,t.type=s,ic(e,t,s,n,l)):(e=ti(r.type,null,n,t,t.mode,l),e.ref=t.ref,e.return=t,t.child=e)}if(s=e.child,(e.lanes&l)===0){var c=s.memoizedProps;if(r=r.compare,r=r!==null?r:jl,r(c,n)&&e.ref===t.ref)return Pr(e,t,l)}return t.flags|=1,e=tn(s,n),e.ref=t.ref,e.return=t,t.child=e}function ic(e,t,r,n,l){if(e!==null){var s=e.memoizedProps;if(jl(s,n)&&e.ref===t.ref)if(Dt=!1,t.pendingProps=n=s,(e.lanes&l)!==0)(e.flags&131072)!==0&&(Dt=!0);else return t.lanes=e.lanes,Pr(e,t,l)}return _a(e,t,r,n,l)}function ac(e,t,r){var n=t.pendingProps,l=n.children,s=e!==null?e.memoizedState:null;if(n.mode==="hidden")if((t.mode&1)===0)t.memoizedState={baseLanes:0,cachePool:null,transitions:null},Xe(tl,Vt),Vt|=r;else{if((r&1073741824)===0)return e=s!==null?s.baseLanes|r:r,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,Xe(tl,Vt),Vt|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},n=s!==null?s.baseLanes:r,Xe(tl,Vt),Vt|=n}else s!==null?(n=s.baseLanes|r,t.memoizedState=null):n=r,Xe(tl,Vt),Vt|=n;return Pt(e,t,l,r),t.child}function sc(e,t){var r=t.ref;(e===null&&r!==null||e!==null&&e.ref!==r)&&(t.flags|=512,t.flags|=2097152)}function _a(e,t,r,n,l){var s=It(r)?mn:St.current;return s=Hn(t,s),Xn(t,l),r=ga(e,t,r,n,s,l),n=va(),e!==null&&!Dt?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~l,Pr(e,t,l)):(tt&&n&&Zi(t),t.flags|=1,Pt(e,t,r,l),t.child)}function uc(e,t,r,n,l){if(It(r)){var s=!0;_o(t)}else s=!1;if(Xn(t,l),t.stateNode===null)$o(e,t),Xu(t,r,n),Ea(t,r,n,l),n=!0;else if(e===null){var c=t.stateNode,m=t.memoizedProps;c.props=m;var w=c.context,L=r.contextType;typeof L=="object"&&L!==null?L=Yt(L):(L=It(r)?mn:St.current,L=Hn(t,L));var A=r.getDerivedStateFromProps,B=typeof A=="function"||typeof c.getSnapshotBeforeUpdate=="function";B||typeof c.UNSAFE_componentWillReceiveProps!="function"&&typeof c.componentWillReceiveProps!="function"||(m!==n||w!==L)&&Gu(t,c,n,L),qr=!1;var U=t.memoizedState;c.state=U,Mo(t,n,c,l),w=t.memoizedState,m!==n||U!==w||Nt.current||qr?(typeof A=="function"&&(ka(t,r,A,n),w=t.memoizedState),(m=qr||Ju(t,r,m,n,U,w,L))?(B||typeof c.UNSAFE_componentWillMount!="function"&&typeof c.componentWillMount!="function"||(typeof c.componentWillMount=="function"&&c.componentWillMount(),typeof c.UNSAFE_componentWillMount=="function"&&c.UNSAFE_componentWillMount()),typeof c.componentDidMount=="function"&&(t.flags|=4194308)):(typeof c.componentDidMount=="function"&&(t.flags|=4194308),t.memoizedProps=n,t.memoizedState=w),c.props=n,c.state=w,c.context=L,n=m):(typeof c.componentDidMount=="function"&&(t.flags|=4194308),n=!1)}else{c=t.stateNode,ju(e,t),m=t.memoizedProps,L=t.type===t.elementType?m:lr(t.type,m),c.props=L,B=t.pendingProps,U=c.context,w=r.contextType,typeof w=="object"&&w!==null?w=Yt(w):(w=It(r)?mn:St.current,w=Hn(t,w));var X=r.getDerivedStateFromProps;(A=typeof X=="function"||typeof c.getSnapshotBeforeUpdate=="function")||typeof c.UNSAFE_componentWillReceiveProps!="function"&&typeof c.componentWillReceiveProps!="function"||(m!==B||U!==w)&&Gu(t,c,n,w),qr=!1,U=t.memoizedState,c.state=U,Mo(t,n,c,l);var le=t.memoizedState;m!==B||U!==le||Nt.current||qr?(typeof X=="function"&&(ka(t,r,X,n),le=t.memoizedState),(L=qr||Ju(t,r,L,n,U,le,w)||!1)?(A||typeof c.UNSAFE_componentWillUpdate!="function"&&typeof c.componentWillUpdate!="function"||(typeof c.componentWillUpdate=="function"&&c.componentWillUpdate(n,le,w),typeof c.UNSAFE_componentWillUpdate=="function"&&c.UNSAFE_componentWillUpdate(n,le,w)),typeof c.componentDidUpdate=="function"&&(t.flags|=4),typeof c.getSnapshotBeforeUpdate=="function"&&(t.flags|=1024)):(typeof c.componentDidUpdate!="function"||m===e.memoizedProps&&U===e.memoizedState||(t.flags|=4),typeof c.getSnapshotBeforeUpdate!="function"||m===e.memoizedProps&&U===e.memoizedState||(t.flags|=1024),t.memoizedProps=n,t.memoizedState=le),c.props=n,c.state=le,c.context=w,n=L):(typeof c.componentDidUpdate!="function"||m===e.memoizedProps&&U===e.memoizedState||(t.flags|=4),typeof c.getSnapshotBeforeUpdate!="function"||m===e.memoizedProps&&U===e.memoizedState||(t.flags|=1024),n=!1)}return Ra(e,t,r,n,s,l)}function Ra(e,t,r,n,l,s){sc(e,t);var c=(t.flags&128)!==0;if(!n&&!c)return l&&hu(t,r,!1),Pr(e,t,s);n=t.stateNode,sp.current=t;var m=c&&typeof r.getDerivedStateFromError!="function"?null:n.render();return t.flags|=1,e!==null&&c?(t.child=Yn(t,e.child,null,s),t.child=Yn(t,null,m,s)):Pt(e,t,m,s),t.memoizedState=n.state,l&&hu(t,r,!0),t.child}function cc(e){var t=e.stateNode;t.pendingContext?fu(e,t.pendingContext,t.pendingContext!==t.context):t.context&&fu(e,t.context,!1),ca(e,t.containerInfo)}function dc(e,t,r,n,l){return qn(),na(l),t.flags|=256,Pt(e,t,r,n),t.child}var Pa={dehydrated:null,treeContext:null,retryLane:0};function Ta(e){return{baseLanes:e,cachePool:null,transitions:null}}function fc(e,t,r){var n=t.pendingProps,l=nt.current,s=!1,c=(t.flags&128)!==0,m;if((m=c)||(m=e!==null&&e.memoizedState===null?!1:(l&2)!==0),m?(s=!0,t.flags&=-129):(e===null||e.memoizedState!==null)&&(l|=1),Xe(nt,l&1),e===null)return ra(t),e=t.memoizedState,e!==null&&(e=e.dehydrated,e!==null)?((t.mode&1)===0?t.lanes=1:e.data==="$!"?t.lanes=8:t.lanes=1073741824,null):(c=n.children,e=n.fallback,s?(n=t.mode,s=t.child,c={mode:"hidden",children:c},(n&1)===0&&s!==null?(s.childLanes=0,s.pendingProps=c):s=ri(c,n,0,null),e=jn(e,n,r,null),s.return=t,e.return=t,s.sibling=e,t.child=s,t.child.memoizedState=Ta(r),t.memoizedState=Pa,e):La(t,c));if(l=e.memoizedState,l!==null&&(m=l.dehydrated,m!==null))return up(e,t,c,n,m,l,r);if(s){s=n.fallback,c=t.mode,l=e.child,m=l.sibling;var w={mode:"hidden",children:n.children};return(c&1)===0&&t.child!==l?(n=t.child,n.childLanes=0,n.pendingProps=w,t.deletions=null):(n=tn(l,w),n.subtreeFlags=l.subtreeFlags&14680064),m!==null?s=tn(m,s):(s=jn(s,c,r,null),s.flags|=2),s.return=t,n.return=t,n.sibling=s,t.child=n,n=s,s=t.child,c=e.child.memoizedState,c=c===null?Ta(r):{baseLanes:c.baseLanes|r,cachePool:null,transitions:c.transitions},s.memoizedState=c,s.childLanes=e.childLanes&~r,t.memoizedState=Pa,n}return s=e.child,e=s.sibling,n=tn(s,{mode:"visible",children:n.children}),(t.mode&1)===0&&(n.lanes=r),n.return=t,n.sibling=null,e!==null&&(r=t.deletions,r===null?(t.deletions=[e],t.flags|=16):r.push(e)),t.child=n,t.memoizedState=null,n}function La(e,t){return t=ri({mode:"visible",children:t},e.mode,0,null),t.return=e,e.child=t}function Vo(e,t,r,n){return n!==null&&na(n),Yn(t,e.child,null,r),e=La(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function up(e,t,r,n,l,s,c){if(r)return t.flags&256?(t.flags&=-257,n=Ca(Error(a(422))),Vo(e,t,c,n)):t.memoizedState!==null?(t.child=e.child,t.flags|=128,null):(s=n.fallback,l=t.mode,n=ri({mode:"visible",children:n.children},l,0,null),s=jn(s,l,c,null),s.flags|=2,n.return=t,s.return=t,n.sibling=s,t.child=n,(t.mode&1)!==0&&Yn(t,e.child,null,c),t.child.memoizedState=Ta(c),t.memoizedState=Pa,s);if((t.mode&1)===0)return Vo(e,t,c,null);if(l.data==="$!"){if(n=l.nextSibling&&l.nextSibling.dataset,n)var m=n.dgst;return n=m,s=Error(a(419)),n=Ca(s,n,void 0),Vo(e,t,c,n)}if(m=(c&e.childLanes)!==0,Dt||m){if(n=mt,n!==null){switch(c&-c){case 4:l=2;break;case 16:l=8;break;case 64: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:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:l=32;break;case 536870912:l=268435456;break;default:l=0}l=(l&(n.suspendedLanes|c))!==0?0:l,l!==0&&l!==s.retryLane&&(s.retryLane=l,_r(e,l),ar(n,e,l,-1))}return Qa(),n=Ca(Error(a(421))),Vo(e,t,c,n)}return l.data==="$?"?(t.flags|=128,t.child=e.child,t=kp.bind(null,e),l._reactRetry=t,null):(e=s.treeContext,Wt=$r(l.nextSibling),Bt=t,tt=!0,nr=null,e!==null&&(Kt[qt++]=Cr,Kt[qt++]=jr,Kt[qt++]=gn,Cr=e.id,jr=e.overflow,gn=t),t=La(t,n.children),t.flags|=4096,t)}function pc(e,t,r){e.lanes|=t;var n=e.alternate;n!==null&&(n.lanes|=t),aa(e.return,t,r)}function Na(e,t,r,n,l){var s=e.memoizedState;s===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:n,tail:r,tailMode:l}:(s.isBackwards=t,s.rendering=null,s.renderingStartTime=0,s.last=n,s.tail=r,s.tailMode=l)}function hc(e,t,r){var n=t.pendingProps,l=n.revealOrder,s=n.tail;if(Pt(e,t,n.children,r),n=nt.current,(n&2)!==0)n=n&1|2,t.flags|=128;else{if(e!==null&&(e.flags&128)!==0)e:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&pc(e,r,t);else if(e.tag===19)pc(e,r,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}n&=1}if(Xe(nt,n),(t.mode&1)===0)t.memoizedState=null;else switch(l){case"forwards":for(r=t.child,l=null;r!==null;)e=r.alternate,e!==null&&Fo(e)===null&&(l=r),r=r.sibling;r=l,r===null?(l=t.child,t.child=null):(l=r.sibling,r.sibling=null),Na(t,!1,l,r,s);break;case"backwards":for(r=null,l=t.child,t.child=null;l!==null;){if(e=l.alternate,e!==null&&Fo(e)===null){t.child=l;break}e=l.sibling,l.sibling=r,r=l,l=e}Na(t,!0,r,null,s);break;case"together":Na(t,!1,null,null,void 0);break;default:t.memoizedState=null}return t.child}function $o(e,t){(t.mode&1)===0&&e!==null&&(e.alternate=null,t.alternate=null,t.flags|=2)}function Pr(e,t,r){if(e!==null&&(t.dependencies=e.dependencies),Sn|=t.lanes,(r&t.childLanes)===0)return null;if(e!==null&&t.child!==e.child)throw Error(a(153));if(t.child!==null){for(e=t.child,r=tn(e,e.pendingProps),t.child=r,r.return=t;e.sibling!==null;)e=e.sibling,r=r.sibling=tn(e,e.pendingProps),r.return=t;r.sibling=null}return t.child}function cp(e,t,r){switch(t.tag){case 3:cc(t),qn();break;case 5:Pu(t);break;case 1:It(t.type)&&_o(t);break;case 4:ca(t,t.stateNode.containerInfo);break;case 10:var n=t.type._context,l=t.memoizedProps.value;Xe(Io,n._currentValue),n._currentValue=l;break;case 13:if(n=t.memoizedState,n!==null)return n.dehydrated!==null?(Xe(nt,nt.current&1),t.flags|=128,null):(r&t.child.childLanes)!==0?fc(e,t,r):(Xe(nt,nt.current&1),e=Pr(e,t,r),e!==null?e.sibling:null);Xe(nt,nt.current&1);break;case 19:if(n=(r&t.childLanes)!==0,(e.flags&128)!==0){if(n)return hc(e,t,r);t.flags|=128}if(l=t.memoizedState,l!==null&&(l.rendering=null,l.tail=null,l.lastEffect=null),Xe(nt,nt.current),n)break;return null;case 22:case 23:return t.lanes=0,ac(e,t,r)}return Pr(e,t,r)}var mc,Ia,gc,vc;mc=function(e,t){for(var r=t.child;r!==null;){if(r.tag===5||r.tag===6)e.appendChild(r.stateNode);else if(r.tag!==4&&r.child!==null){r.child.return=r,r=r.child;continue}if(r===t)break;for(;r.sibling===null;){if(r.return===null||r.return===t)return;r=r.return}r.sibling.return=r.return,r=r.sibling}},Ia=function(){},gc=function(e,t,r,n){var l=e.memoizedProps;if(l!==n){e=t.stateNode,wn(hr.current);var s=null;switch(r){case"input":l=Dr(e,l),n=Dr(e,n),s=[];break;case"select":l=Y({},l,{value:void 0}),n=Y({},n,{value:void 0}),s=[];break;case"textarea":l=H(e,l),n=H(e,n),s=[];break;default:typeof l.onClick!="function"&&typeof n.onClick=="function"&&(e.onclick=Eo)}er(r,n);var c;r=null;for(L in l)if(!n.hasOwnProperty(L)&&l.hasOwnProperty(L)&&l[L]!=null)if(L==="style"){var m=l[L];for(c in m)m.hasOwnProperty(c)&&(r||(r={}),r[c]="")}else L!=="dangerouslySetInnerHTML"&&L!=="children"&&L!=="suppressContentEditableWarning"&&L!=="suppressHydrationWarning"&&L!=="autoFocus"&&(d.hasOwnProperty(L)?s||(s=[]):(s=s||[]).push(L,null));for(L in n){var w=n[L];if(m=l!=null?l[L]:void 0,n.hasOwnProperty(L)&&w!==m&&(w!=null||m!=null))if(L==="style")if(m){for(c in m)!m.hasOwnProperty(c)||w&&w.hasOwnProperty(c)||(r||(r={}),r[c]="");for(c in w)w.hasOwnProperty(c)&&m[c]!==w[c]&&(r||(r={}),r[c]=w[c])}else r||(s||(s=[]),s.push(L,r)),r=w;else L==="dangerouslySetInnerHTML"?(w=w?w.__html:void 0,m=m?m.__html:void 0,w!=null&&m!==w&&(s=s||[]).push(L,w)):L==="children"?typeof w!="string"&&typeof w!="number"||(s=s||[]).push(L,""+w):L!=="suppressContentEditableWarning"&&L!=="suppressHydrationWarning"&&(d.hasOwnProperty(L)?(w!=null&&L==="onScroll"&&Ze("scroll",e),s||m===w||(s=[])):(s=s||[]).push(L,w))}r&&(s=s||[]).push("style",r);var L=s;(t.updateQueue=L)&&(t.flags|=4)}},vc=function(e,t,r,n){r!==n&&(t.flags|=4)};function Al(e,t){if(!tt)switch(e.tailMode){case"hidden":t=e.tail;for(var r=null;t!==null;)t.alternate!==null&&(r=t),t=t.sibling;r===null?e.tail=null:r.sibling=null;break;case"collapsed":r=e.tail;for(var n=null;r!==null;)r.alternate!==null&&(n=r),r=r.sibling;n===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:n.sibling=null}}function Et(e){var t=e.alternate!==null&&e.alternate.child===e.child,r=0,n=0;if(t)for(var l=e.child;l!==null;)r|=l.lanes|l.childLanes,n|=l.subtreeFlags&14680064,n|=l.flags&14680064,l.return=e,l=l.sibling;else for(l=e.child;l!==null;)r|=l.lanes|l.childLanes,n|=l.subtreeFlags,n|=l.flags,l.return=e,l=l.sibling;return e.subtreeFlags|=n,e.childLanes=r,t}function dp(e,t,r){var n=t.pendingProps;switch(ea(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Et(t),null;case 1:return It(t.type)&&jo(),Et(t),null;case 3:return n=t.stateNode,Gn(),et(Nt),et(St),pa(),n.pendingContext&&(n.context=n.pendingContext,n.pendingContext=null),(e===null||e.child===null)&&(Lo(t)?t.flags|=4:e===null||e.memoizedState.isDehydrated&&(t.flags&256)===0||(t.flags|=1024,nr!==null&&(Va(nr),nr=null))),Ia(e,t),Et(t),null;case 5:da(t);var l=wn(Ml.current);if(r=t.type,e!==null&&t.stateNode!=null)gc(e,t,r,n,l),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!n){if(t.stateNode===null)throw Error(a(166));return Et(t),null}if(e=wn(hr.current),Lo(t)){n=t.stateNode,r=t.type;var s=t.memoizedProps;switch(n[pr]=t,n[Ll]=s,e=(t.mode&1)!==0,r){case"dialog":Ze("cancel",n),Ze("close",n);break;case"iframe":case"object":case"embed":Ze("load",n);break;case"video":case"audio":for(l=0;l<Rl.length;l++)Ze(Rl[l],n);break;case"source":Ze("error",n);break;case"img":case"image":case"link":Ze("error",n),Ze("load",n);break;case"details":Ze("toggle",n);break;case"input":Ln(n,s),Ze("invalid",n);break;case"select":n._wrapperState={wasMultiple:!!s.multiple},Ze("invalid",n);break;case"textarea":b(n,s),Ze("invalid",n)}er(r,s),l=null;for(var c in s)if(s.hasOwnProperty(c)){var m=s[c];c==="children"?typeof m=="string"?n.textContent!==m&&(s.suppressHydrationWarning!==!0&&ko(n.textContent,m,e),l=["children",m]):typeof m=="number"&&n.textContent!==""+m&&(s.suppressHydrationWarning!==!0&&ko(n.textContent,m,e),l=["children",""+m]):d.hasOwnProperty(c)&&m!=null&&c==="onScroll"&&Ze("scroll",n)}switch(r){case"input":Ir(n),Nn(n,s,!0);break;case"textarea":Ir(n),fe(n);break;case"select":case"option":break;default:typeof s.onClick=="function"&&(n.onclick=Eo)}n=l,t.updateQueue=n,n!==null&&(t.flags|=4)}else{c=l.nodeType===9?l:l.ownerDocument,e==="http://www.w3.org/1999/xhtml"&&(e=We(r)),e==="http://www.w3.org/1999/xhtml"?r==="script"?(e=c.createElement("div"),e.innerHTML="<script><\/script>",e=e.removeChild(e.firstChild)):typeof n.is=="string"?e=c.createElement(r,{is:n.is}):(e=c.createElement(r),r==="select"&&(c=e,n.multiple?c.multiple=!0:n.size&&(c.size=n.size))):e=c.createElementNS(e,r),e[pr]=t,e[Ll]=n,mc(e,t,!1,!1),t.stateNode=e;e:{switch(c=ul(r,n),r){case"dialog":Ze("cancel",e),Ze("close",e),l=n;break;case"iframe":case"object":case"embed":Ze("load",e),l=n;break;case"video":case"audio":for(l=0;l<Rl.length;l++)Ze(Rl[l],e);l=n;break;case"source":Ze("error",e),l=n;break;case"img":case"image":case"link":Ze("error",e),Ze("load",e),l=n;break;case"details":Ze("toggle",e),l=n;break;case"input":Ln(e,n),l=Dr(e,n),Ze("invalid",e);break;case"option":l=n;break;case"select":e._wrapperState={wasMultiple:!!n.multiple},l=Y({},n,{value:void 0}),Ze("invalid",e);break;case"textarea":b(e,n),l=H(e,n),Ze("invalid",e);break;default:l=n}er(r,l),m=l;for(s in m)if(m.hasOwnProperty(s)){var w=m[s];s==="style"?zr(e,w):s==="dangerouslySetInnerHTML"?(w=w?w.__html:void 0,w!=null&&Je(e,w)):s==="children"?typeof w=="string"?(r!=="textarea"||w!=="")&&bt(e,w):typeof w=="number"&&bt(e,""+w):s!=="suppressContentEditableWarning"&&s!=="suppressHydrationWarning"&&s!=="autoFocus"&&(d.hasOwnProperty(s)?w!=null&&s==="onScroll"&&Ze("scroll",e):w!=null&&xe(e,s,w,c))}switch(r){case"input":Ir(e),Nn(e,n,!1);break;case"textarea":Ir(e),fe(e);break;case"option":n.value!=null&&e.setAttribute("value",""+Le(n.value));break;case"select":e.multiple=!!n.multiple,s=n.value,s!=null?ur(e,!!n.multiple,s,!1):n.defaultValue!=null&&ur(e,!!n.multiple,n.defaultValue,!0);break;default:typeof l.onClick=="function"&&(e.onclick=Eo)}switch(r){case"button":case"input":case"select":case"textarea":n=!!n.autoFocus;break e;case"img":n=!0;break e;default:n=!1}}n&&(t.flags|=4)}t.ref!==null&&(t.flags|=512,t.flags|=2097152)}return Et(t),null;case 6:if(e&&t.stateNode!=null)vc(e,t,e.memoizedProps,n);else{if(typeof n!="string"&&t.stateNode===null)throw Error(a(166));if(r=wn(Ml.current),wn(hr.current),Lo(t)){if(n=t.stateNode,r=t.memoizedProps,n[pr]=t,(s=n.nodeValue!==r)&&(e=Bt,e!==null))switch(e.tag){case 3:ko(n.nodeValue,r,(e.mode&1)!==0);break;case 5:e.memoizedProps.suppressHydrationWarning!==!0&&ko(n.nodeValue,r,(e.mode&1)!==0)}s&&(t.flags|=4)}else n=(r.nodeType===9?r:r.ownerDocument).createTextNode(n),n[pr]=t,t.stateNode=n}return Et(t),null;case 13:if(et(nt),n=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(tt&&Wt!==null&&(t.mode&1)!==0&&(t.flags&128)===0)xu(),qn(),t.flags|=98560,s=!1;else if(s=Lo(t),n!==null&&n.dehydrated!==null){if(e===null){if(!s)throw Error(a(318));if(s=t.memoizedState,s=s!==null?s.dehydrated:null,!s)throw Error(a(317));s[pr]=t}else qn(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Et(t),s=!1}else nr!==null&&(Va(nr),nr=null),s=!0;if(!s)return t.flags&65536?t:null}return(t.flags&128)!==0?(t.lanes=r,t):(n=n!==null,n!==(e!==null&&e.memoizedState!==null)&&n&&(t.child.flags|=8192,(t.mode&1)!==0&&(e===null||(nt.current&1)!==0?pt===0&&(pt=3):Qa())),t.updateQueue!==null&&(t.flags|=4),Et(t),null);case 4:return Gn(),Ia(e,t),e===null&&Pl(t.stateNode.containerInfo),Et(t),null;case 10:return ia(t.type._context),Et(t),null;case 17:return It(t.type)&&jo(),Et(t),null;case 19:if(et(nt),s=t.memoizedState,s===null)return Et(t),null;if(n=(t.flags&128)!==0,c=s.rendering,c===null)if(n)Al(s,!1);else{if(pt!==0||e!==null&&(e.flags&128)!==0)for(e=t.child;e!==null;){if(c=Fo(e),c!==null){for(t.flags|=128,Al(s,!1),n=c.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),t.subtreeFlags=0,n=r,r=t.child;r!==null;)s=r,e=n,s.flags&=14680066,c=s.alternate,c===null?(s.childLanes=0,s.lanes=e,s.child=null,s.subtreeFlags=0,s.memoizedProps=null,s.memoizedState=null,s.updateQueue=null,s.dependencies=null,s.stateNode=null):(s.childLanes=c.childLanes,s.lanes=c.lanes,s.child=c.child,s.subtreeFlags=0,s.deletions=null,s.memoizedProps=c.memoizedProps,s.memoizedState=c.memoizedState,s.updateQueue=c.updateQueue,s.type=c.type,e=c.dependencies,s.dependencies=e===null?null:{lanes:e.lanes,firstContext:e.firstContext}),r=r.sibling;return Xe(nt,nt.current&1|2),t.child}e=e.sibling}s.tail!==null&&Ue()>rl&&(t.flags|=128,n=!0,Al(s,!1),t.lanes=4194304)}else{if(!n)if(e=Fo(c),e!==null){if(t.flags|=128,n=!0,r=e.updateQueue,r!==null&&(t.updateQueue=r,t.flags|=4),Al(s,!0),s.tail===null&&s.tailMode==="hidden"&&!c.alternate&&!tt)return Et(t),null}else 2*Ue()-s.renderingStartTime>rl&&r!==1073741824&&(t.flags|=128,n=!0,Al(s,!1),t.lanes=4194304);s.isBackwards?(c.sibling=t.child,t.child=c):(r=s.last,r!==null?r.sibling=c:t.child=c,s.last=c)}return s.tail!==null?(t=s.tail,s.rendering=t,s.tail=t.sibling,s.renderingStartTime=Ue(),t.sibling=null,r=nt.current,Xe(nt,n?r&1|2:r&1),t):(Et(t),null);case 22:case 23:return Ha(),n=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==n&&(t.flags|=8192),n&&(t.mode&1)!==0?(Vt&1073741824)!==0&&(Et(t),t.subtreeFlags&6&&(t.flags|=8192)):Et(t),null;case 24:return null;case 25:return null}throw Error(a(156,t.tag))}function fp(e,t){switch(ea(t),t.tag){case 1:return It(t.type)&&jo(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Gn(),et(Nt),et(St),pa(),e=t.flags,(e&65536)!==0&&(e&128)===0?(t.flags=e&-65537|128,t):null;case 5:return da(t),null;case 13:if(et(nt),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(a(340));qn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return et(nt),null;case 4:return Gn(),null;case 10:return ia(t.type._context),null;case 22:case 23:return Ha(),null;case 24:return null;default:return null}}var Ho=!1,Ct=!1,pp=typeof WeakSet=="function"?WeakSet:Set,Z=null;function el(e,t){var r=e.ref;if(r!==null)if(typeof r=="function")try{r(null)}catch(n){it(e,t,n)}else r.current=null}function Da(e,t,r){try{r()}catch(n){it(e,t,n)}}var yc=!1;function hp(e,t){if(Hi=co,e=Js(),Oi(e)){if("selectionStart"in e)var r={start:e.selectionStart,end:e.selectionEnd};else e:{r=(r=e.ownerDocument)&&r.defaultView||window;var n=r.getSelection&&r.getSelection();if(n&&n.rangeCount!==0){r=n.anchorNode;var l=n.anchorOffset,s=n.focusNode;n=n.focusOffset;try{r.nodeType,s.nodeType}catch{r=null;break e}var c=0,m=-1,w=-1,L=0,A=0,B=e,U=null;t:for(;;){for(var X;B!==r||l!==0&&B.nodeType!==3||(m=c+l),B!==s||n!==0&&B.nodeType!==3||(w=c+n),B.nodeType===3&&(c+=B.nodeValue.length),(X=B.firstChild)!==null;)U=B,B=X;for(;;){if(B===e)break t;if(U===r&&++L===l&&(m=c),U===s&&++A===n&&(w=c),(X=B.nextSibling)!==null)break;B=U,U=B.parentNode}B=X}r=m===-1||w===-1?null:{start:m,end:w}}else r=null}r=r||{start:0,end:0}}else r=null;for(Qi={focusedElem:e,selectionRange:r},co=!1,Z=t;Z!==null;)if(t=Z,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,Z=e;else for(;Z!==null;){t=Z;try{var le=t.alternate;if((t.flags&1024)!==0)switch(t.tag){case 0:case 11:case 15:break;case 1:if(le!==null){var ae=le.memoizedProps,st=le.memoizedState,R=t.stateNode,k=R.getSnapshotBeforeUpdate(t.elementType===t.type?ae:lr(t.type,ae),st);R.__reactInternalSnapshotBeforeUpdate=k}break;case 3:var P=t.stateNode.containerInfo;P.nodeType===1?P.textContent="":P.nodeType===9&&P.documentElement&&P.removeChild(P.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(a(163))}}catch(V){it(t,t.return,V)}if(e=t.sibling,e!==null){e.return=t.return,Z=e;break}Z=t.return}return le=yc,yc=!1,le}function Bl(e,t,r){var n=t.updateQueue;if(n=n!==null?n.lastEffect:null,n!==null){var l=n=n.next;do{if((l.tag&e)===e){var s=l.destroy;l.destroy=void 0,s!==void 0&&Da(t,r,s)}l=l.next}while(l!==n)}}function Qo(e,t){if(t=t.updateQueue,t=t!==null?t.lastEffect:null,t!==null){var r=t=t.next;do{if((r.tag&e)===e){var n=r.create;r.destroy=n()}r=r.next}while(r!==t)}}function za(e){var t=e.ref;if(t!==null){var r=e.stateNode;switch(e.tag){case 5:e=r;break;default:e=r}typeof t=="function"?t(e):t.current=e}}function wc(e){var t=e.alternate;t!==null&&(e.alternate=null,wc(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[pr],delete t[Ll],delete t[Ji],delete t[Jf],delete t[Xf])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function xc(e){return e.tag===5||e.tag===3||e.tag===4}function Sc(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||xc(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.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 Ma(e,t,r){var n=e.tag;if(n===5||n===6)e=e.stateNode,t?r.nodeType===8?r.parentNode.insertBefore(e,t):r.insertBefore(e,t):(r.nodeType===8?(t=r.parentNode,t.insertBefore(e,r)):(t=r,t.appendChild(e)),r=r._reactRootContainer,r!=null||t.onclick!==null||(t.onclick=Eo));else if(n!==4&&(e=e.child,e!==null))for(Ma(e,t,r),e=e.sibling;e!==null;)Ma(e,t,r),e=e.sibling}function Fa(e,t,r){var n=e.tag;if(n===5||n===6)e=e.stateNode,t?r.insertBefore(e,t):r.appendChild(e);else if(n!==4&&(e=e.child,e!==null))for(Fa(e,t,r),e=e.sibling;e!==null;)Fa(e,t,r),e=e.sibling}var wt=null,or=!1;function Jr(e,t,r){for(r=r.child;r!==null;)kc(e,t,r),r=r.sibling}function kc(e,t,r){if(yt&&typeof yt.onCommitFiberUnmount=="function")try{yt.onCommitFiberUnmount(Ye,r)}catch{}switch(r.tag){case 5:Ct||el(r,t);case 6:var n=wt,l=or;wt=null,Jr(e,t,r),wt=n,or=l,wt!==null&&(or?(e=wt,r=r.stateNode,e.nodeType===8?e.parentNode.removeChild(r):e.removeChild(r)):wt.removeChild(r.stateNode));break;case 18:wt!==null&&(or?(e=wt,r=r.stateNode,e.nodeType===8?Yi(e.parentNode,r):e.nodeType===1&&Yi(e,r),wl(e)):Yi(wt,r.stateNode));break;case 4:n=wt,l=or,wt=r.stateNode.containerInfo,or=!0,Jr(e,t,r),wt=n,or=l;break;case 0:case 11:case 14:case 15:if(!Ct&&(n=r.updateQueue,n!==null&&(n=n.lastEffect,n!==null))){l=n=n.next;do{var s=l,c=s.destroy;s=s.tag,c!==void 0&&((s&2)!==0||(s&4)!==0)&&Da(r,t,c),l=l.next}while(l!==n)}Jr(e,t,r);break;case 1:if(!Ct&&(el(r,t),n=r.stateNode,typeof n.componentWillUnmount=="function"))try{n.props=r.memoizedProps,n.state=r.memoizedState,n.componentWillUnmount()}catch(m){it(r,t,m)}Jr(e,t,r);break;case 21:Jr(e,t,r);break;case 22:r.mode&1?(Ct=(n=Ct)||r.memoizedState!==null,Jr(e,t,r),Ct=n):Jr(e,t,r);break;default:Jr(e,t,r)}}function Ec(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var r=e.stateNode;r===null&&(r=e.stateNode=new pp),t.forEach(function(n){var l=Ep.bind(null,e,n);r.has(n)||(r.add(n),n.then(l,l))})}}function ir(e,t){var r=t.deletions;if(r!==null)for(var n=0;n<r.length;n++){var l=r[n];try{var s=e,c=t,m=c;e:for(;m!==null;){switch(m.tag){case 5:wt=m.stateNode,or=!1;break e;case 3:wt=m.stateNode.containerInfo,or=!0;break e;case 4:wt=m.stateNode.containerInfo,or=!0;break e}m=m.return}if(wt===null)throw Error(a(160));kc(s,c,l),wt=null,or=!1;var w=l.alternate;w!==null&&(w.return=null),l.return=null}catch(L){it(l,t,L)}}if(t.subtreeFlags&12854)for(t=t.child;t!==null;)Cc(t,e),t=t.sibling}function Cc(e,t){var r=e.alternate,n=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:if(ir(t,e),gr(e),n&4){try{Bl(3,e,e.return),Qo(3,e)}catch(ae){it(e,e.return,ae)}try{Bl(5,e,e.return)}catch(ae){it(e,e.return,ae)}}break;case 1:ir(t,e),gr(e),n&512&&r!==null&&el(r,r.return);break;case 5:if(ir(t,e),gr(e),n&512&&r!==null&&el(r,r.return),e.flags&32){var l=e.stateNode;try{bt(l,"")}catch(ae){it(e,e.return,ae)}}if(n&4&&(l=e.stateNode,l!=null)){var s=e.memoizedProps,c=r!==null?r.memoizedProps:s,m=e.type,w=e.updateQueue;if(e.updateQueue=null,w!==null)try{m==="input"&&s.type==="radio"&&s.name!=null&&Ht(l,s),ul(m,c);var L=ul(m,s);for(c=0;c<w.length;c+=2){var A=w[c],B=w[c+1];A==="style"?zr(l,B):A==="dangerouslySetInnerHTML"?Je(l,B):A==="children"?bt(l,B):xe(l,A,B,L)}switch(m){case"input":un(l,s);break;case"textarea":J(l,s);break;case"select":var U=l._wrapperState.wasMultiple;l._wrapperState.wasMultiple=!!s.multiple;var X=s.value;X!=null?ur(l,!!s.multiple,X,!1):U!==!!s.multiple&&(s.defaultValue!=null?ur(l,!!s.multiple,s.defaultValue,!0):ur(l,!!s.multiple,s.multiple?[]:"",!1))}l[Ll]=s}catch(ae){it(e,e.return,ae)}}break;case 6:if(ir(t,e),gr(e),n&4){if(e.stateNode===null)throw Error(a(162));l=e.stateNode,s=e.memoizedProps;try{l.nodeValue=s}catch(ae){it(e,e.return,ae)}}break;case 3:if(ir(t,e),gr(e),n&4&&r!==null&&r.memoizedState.isDehydrated)try{wl(t.containerInfo)}catch(ae){it(e,e.return,ae)}break;case 4:ir(t,e),gr(e);break;case 13:ir(t,e),gr(e),l=e.child,l.flags&8192&&(s=l.memoizedState!==null,l.stateNode.isHidden=s,!s||l.alternate!==null&&l.alternate.memoizedState!==null||(Ua=Ue())),n&4&&Ec(e);break;case 22:if(A=r!==null&&r.memoizedState!==null,e.mode&1?(Ct=(L=Ct)||A,ir(t,e),Ct=L):ir(t,e),gr(e),n&8192){if(L=e.memoizedState!==null,(e.stateNode.isHidden=L)&&!A&&(e.mode&1)!==0)for(Z=e,A=e.child;A!==null;){for(B=Z=A;Z!==null;){switch(U=Z,X=U.child,U.tag){case 0:case 11:case 14:case 15:Bl(4,U,U.return);break;case 1:el(U,U.return);var le=U.stateNode;if(typeof le.componentWillUnmount=="function"){n=U,r=U.return;try{t=n,le.props=t.memoizedProps,le.state=t.memoizedState,le.componentWillUnmount()}catch(ae){it(n,r,ae)}}break;case 5:el(U,U.return);break;case 22:if(U.memoizedState!==null){Rc(B);continue}}X!==null?(X.return=U,Z=X):Rc(B)}A=A.sibling}e:for(A=null,B=e;;){if(B.tag===5){if(A===null){A=B;try{l=B.stateNode,L?(s=l.style,typeof s.setProperty=="function"?s.setProperty("display","none","important"):s.display="none"):(m=B.stateNode,w=B.memoizedProps.style,c=w!=null&&w.hasOwnProperty("display")?w.display:null,m.style.display=Lt("display",c))}catch(ae){it(e,e.return,ae)}}}else if(B.tag===6){if(A===null)try{B.stateNode.nodeValue=L?"":B.memoizedProps}catch(ae){it(e,e.return,ae)}}else if((B.tag!==22&&B.tag!==23||B.memoizedState===null||B===e)&&B.child!==null){B.child.return=B,B=B.child;continue}if(B===e)break e;for(;B.sibling===null;){if(B.return===null||B.return===e)break e;A===B&&(A=null),B=B.return}A===B&&(A=null),B.sibling.return=B.return,B=B.sibling}}break;case 19:ir(t,e),gr(e),n&4&&Ec(e);break;case 21:break;default:ir(t,e),gr(e)}}function gr(e){var t=e.flags;if(t&2){try{e:{for(var r=e.return;r!==null;){if(xc(r)){var n=r;break e}r=r.return}throw Error(a(160))}switch(n.tag){case 5:var l=n.stateNode;n.flags&32&&(bt(l,""),n.flags&=-33);var s=Sc(e);Fa(e,s,l);break;case 3:case 4:var c=n.stateNode.containerInfo,m=Sc(e);Ma(e,m,c);break;default:throw Error(a(161))}}catch(w){it(e,e.return,w)}e.flags&=-3}t&4096&&(e.flags&=-4097)}function mp(e,t,r){Z=e,jc(e)}function jc(e,t,r){for(var n=(e.mode&1)!==0;Z!==null;){var l=Z,s=l.child;if(l.tag===22&&n){var c=l.memoizedState!==null||Ho;if(!c){var m=l.alternate,w=m!==null&&m.memoizedState!==null||Ct;m=Ho;var L=Ct;if(Ho=c,(Ct=w)&&!L)for(Z=l;Z!==null;)c=Z,w=c.child,c.tag===22&&c.memoizedState!==null?Pc(l):w!==null?(w.return=c,Z=w):Pc(l);for(;s!==null;)Z=s,jc(s),s=s.sibling;Z=l,Ho=m,Ct=L}_c(e)}else(l.subtreeFlags&8772)!==0&&s!==null?(s.return=l,Z=s):_c(e)}}function _c(e){for(;Z!==null;){var t=Z;if((t.flags&8772)!==0){var r=t.alternate;try{if((t.flags&8772)!==0)switch(t.tag){case 0:case 11:case 15:Ct||Qo(5,t);break;case 1:var n=t.stateNode;if(t.flags&4&&!Ct)if(r===null)n.componentDidMount();else{var l=t.elementType===t.type?r.memoizedProps:lr(t.type,r.memoizedProps);n.componentDidUpdate(l,r.memoizedState,n.__reactInternalSnapshotBeforeUpdate)}var s=t.updateQueue;s!==null&&Ru(t,s,n);break;case 3:var c=t.updateQueue;if(c!==null){if(r=null,t.child!==null)switch(t.child.tag){case 5:r=t.child.stateNode;break;case 1:r=t.child.stateNode}Ru(t,c,r)}break;case 5:var m=t.stateNode;if(r===null&&t.flags&4){r=m;var w=t.memoizedProps;switch(t.type){case"button":case"input":case"select":case"textarea":w.autoFocus&&r.focus();break;case"img":w.src&&(r.src=w.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(t.memoizedState===null){var L=t.alternate;if(L!==null){var A=L.memoizedState;if(A!==null){var B=A.dehydrated;B!==null&&wl(B)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(a(163))}Ct||t.flags&512&&za(t)}catch(U){it(t,t.return,U)}}if(t===e){Z=null;break}if(r=t.sibling,r!==null){r.return=t.return,Z=r;break}Z=t.return}}function Rc(e){for(;Z!==null;){var t=Z;if(t===e){Z=null;break}var r=t.sibling;if(r!==null){r.return=t.return,Z=r;break}Z=t.return}}function Pc(e){for(;Z!==null;){var t=Z;try{switch(t.tag){case 0:case 11:case 15:var r=t.return;try{Qo(4,t)}catch(w){it(t,r,w)}break;case 1:var n=t.stateNode;if(typeof n.componentDidMount=="function"){var l=t.return;try{n.componentDidMount()}catch(w){it(t,l,w)}}var s=t.return;try{za(t)}catch(w){it(t,s,w)}break;case 5:var c=t.return;try{za(t)}catch(w){it(t,c,w)}}}catch(w){it(t,t.return,w)}if(t===e){Z=null;break}var m=t.sibling;if(m!==null){m.return=t.return,Z=m;break}Z=t.return}}var gp=Math.ceil,Ko=pe.ReactCurrentDispatcher,Oa=pe.ReactCurrentOwner,Xt=pe.ReactCurrentBatchConfig,Fe=0,mt=null,ut=null,xt=0,Vt=0,tl=Hr(0),pt=0,Wl=null,Sn=0,qo=0,ba=0,Vl=null,zt=null,Ua=0,rl=1/0,Tr=null,Yo=!1,Aa=null,Xr=null,Jo=!1,Gr=null,Xo=0,$l=0,Ba=null,Go=-1,Zo=0;function Tt(){return(Fe&6)!==0?Ue():Go!==-1?Go:Go=Ue()}function Zr(e){return(e.mode&1)===0?1:(Fe&2)!==0&&xt!==0?xt&-xt:Zf.transition!==null?(Zo===0&&(Zo=Ss()),Zo):(e=Qe,e!==0||(e=window.event,e=e===void 0?16:Ls(e.type)),e)}function ar(e,t,r,n){if(50<$l)throw $l=0,Ba=null,Error(a(185));hl(e,r,n),((Fe&2)===0||e!==mt)&&(e===mt&&((Fe&2)===0&&(qo|=r),pt===4&&en(e,xt)),Mt(e,n),r===1&&Fe===0&&(t.mode&1)===0&&(rl=Ue()+500,Ro&&Kr()))}function Mt(e,t){var r=e.callbackNode;Gd(e,t);var n=ao(e,e===mt?xt:0);if(n===0)r!==null&&wr(r),e.callbackNode=null,e.callbackPriority=0;else if(t=n&-n,e.callbackPriority!==t){if(r!=null&&wr(r),t===1)e.tag===0?Gf(Lc.bind(null,e)):mu(Lc.bind(null,e)),qf(function(){(Fe&6)===0&&Kr()}),r=null;else{switch(ks(n)){case 1:r=xr;break;case 4:r=fr;break;case 16:r=Sr;break;case 536870912:r=De;break;default:r=Sr}r=bc(r,Tc.bind(null,e))}e.callbackPriority=t,e.callbackNode=r}}function Tc(e,t){if(Go=-1,Zo=0,(Fe&6)!==0)throw Error(a(327));var r=e.callbackNode;if(nl()&&e.callbackNode!==r)return null;var n=ao(e,e===mt?xt:0);if(n===0)return null;if((n&30)!==0||(n&e.expiredLanes)!==0||t)t=ei(e,n);else{t=n;var l=Fe;Fe|=2;var s=Ic();(mt!==e||xt!==t)&&(Tr=null,rl=Ue()+500,En(e,t));do try{wp();break}catch(m){Nc(e,m)}while(!0);oa(),Ko.current=s,Fe=l,ut!==null?t=0:(mt=null,xt=0,t=pt)}if(t!==0){if(t===2&&(l=Si(e),l!==0&&(n=l,t=Wa(e,l))),t===1)throw r=Wl,En(e,0),en(e,n),Mt(e,Ue()),r;if(t===6)en(e,n);else{if(l=e.current.alternate,(n&30)===0&&!vp(l)&&(t=ei(e,n),t===2&&(s=Si(e),s!==0&&(n=s,t=Wa(e,s))),t===1))throw r=Wl,En(e,0),en(e,n),Mt(e,Ue()),r;switch(e.finishedWork=l,e.finishedLanes=n,t){case 0:case 1:throw Error(a(345));case 2:Cn(e,zt,Tr);break;case 3:if(en(e,n),(n&130023424)===n&&(t=Ua+500-Ue(),10<t)){if(ao(e,0)!==0)break;if(l=e.suspendedLanes,(l&n)!==n){Tt(),e.pingedLanes|=e.suspendedLanes&l;break}e.timeoutHandle=qi(Cn.bind(null,e,zt,Tr),t);break}Cn(e,zt,Tr);break;case 4:if(en(e,n),(n&4194240)===n)break;for(t=e.eventTimes,l=-1;0<n;){var c=31-Ae(n);s=1<<c,c=t[c],c>l&&(l=c),n&=~s}if(n=l,n=Ue()-n,n=(120>n?120:480>n?480:1080>n?1080:1920>n?1920:3e3>n?3e3:4320>n?4320:1960*gp(n/1960))-n,10<n){e.timeoutHandle=qi(Cn.bind(null,e,zt,Tr),n);break}Cn(e,zt,Tr);break;case 5:Cn(e,zt,Tr);break;default:throw Error(a(329))}}}return Mt(e,Ue()),e.callbackNode===r?Tc.bind(null,e):null}function Wa(e,t){var r=Vl;return e.current.memoizedState.isDehydrated&&(En(e,t).flags|=256),e=ei(e,t),e!==2&&(t=zt,zt=r,t!==null&&Va(t)),e}function Va(e){zt===null?zt=e:zt.push.apply(zt,e)}function vp(e){for(var t=e;;){if(t.flags&16384){var r=t.updateQueue;if(r!==null&&(r=r.stores,r!==null))for(var n=0;n<r.length;n++){var l=r[n],s=l.getSnapshot;l=l.value;try{if(!rr(s(),l))return!1}catch{return!1}}}if(r=t.child,t.subtreeFlags&16384&&r!==null)r.return=t,t=r;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 en(e,t){for(t&=~ba,t&=~qo,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0<t;){var r=31-Ae(t),n=1<<r;e[r]=-1,t&=~n}}function Lc(e){if((Fe&6)!==0)throw Error(a(327));nl();var t=ao(e,0);if((t&1)===0)return Mt(e,Ue()),null;var r=ei(e,t);if(e.tag!==0&&r===2){var n=Si(e);n!==0&&(t=n,r=Wa(e,n))}if(r===1)throw r=Wl,En(e,0),en(e,t),Mt(e,Ue()),r;if(r===6)throw Error(a(345));return e.finishedWork=e.current.alternate,e.finishedLanes=t,Cn(e,zt,Tr),Mt(e,Ue()),null}function $a(e,t){var r=Fe;Fe|=1;try{return e(t)}finally{Fe=r,Fe===0&&(rl=Ue()+500,Ro&&Kr())}}function kn(e){Gr!==null&&Gr.tag===0&&(Fe&6)===0&&nl();var t=Fe;Fe|=1;var r=Xt.transition,n=Qe;try{if(Xt.transition=null,Qe=1,e)return e()}finally{Qe=n,Xt.transition=r,Fe=t,(Fe&6)===0&&Kr()}}function Ha(){Vt=tl.current,et(tl)}function En(e,t){e.finishedWork=null,e.finishedLanes=0;var r=e.timeoutHandle;if(r!==-1&&(e.timeoutHandle=-1,Kf(r)),ut!==null)for(r=ut.return;r!==null;){var n=r;switch(ea(n),n.tag){case 1:n=n.type.childContextTypes,n!=null&&jo();break;case 3:Gn(),et(Nt),et(St),pa();break;case 5:da(n);break;case 4:Gn();break;case 13:et(nt);break;case 19:et(nt);break;case 10:ia(n.type._context);break;case 22:case 23:Ha()}r=r.return}if(mt=e,ut=e=tn(e.current,null),xt=Vt=t,pt=0,Wl=null,ba=qo=Sn=0,zt=Vl=null,yn!==null){for(t=0;t<yn.length;t++)if(r=yn[t],n=r.interleaved,n!==null){r.interleaved=null;var l=n.next,s=r.pending;if(s!==null){var c=s.next;s.next=l,n.next=c}r.pending=n}yn=null}return e}function Nc(e,t){do{var r=ut;try{if(oa(),Oo.current=Bo,bo){for(var n=lt.memoizedState;n!==null;){var l=n.queue;l!==null&&(l.pending=null),n=n.next}bo=!1}if(xn=0,ht=ft=lt=null,Fl=!1,Ol=0,Oa.current=null,r===null||r.return===null){pt=1,Wl=t,ut=null;break}e:{var s=e,c=r.return,m=r,w=t;if(t=xt,m.flags|=32768,w!==null&&typeof w=="object"&&typeof w.then=="function"){var L=w,A=m,B=A.tag;if((A.mode&1)===0&&(B===0||B===11||B===15)){var U=A.alternate;U?(A.updateQueue=U.updateQueue,A.memoizedState=U.memoizedState,A.lanes=U.lanes):(A.updateQueue=null,A.memoizedState=null)}var X=rc(c);if(X!==null){X.flags&=-257,nc(X,c,m,s,t),X.mode&1&&tc(s,L,t),t=X,w=L;var le=t.updateQueue;if(le===null){var ae=new Set;ae.add(w),t.updateQueue=ae}else le.add(w);break e}else{if((t&1)===0){tc(s,L,t),Qa();break e}w=Error(a(426))}}else if(tt&&m.mode&1){var st=rc(c);if(st!==null){(st.flags&65536)===0&&(st.flags|=256),nc(st,c,m,s,t),na(Zn(w,m));break e}}s=w=Zn(w,m),pt!==4&&(pt=2),Vl===null?Vl=[s]:Vl.push(s),s=c;do{switch(s.tag){case 3:s.flags|=65536,t&=-t,s.lanes|=t;var R=Zu(s,w,t);_u(s,R);break e;case 1:m=w;var k=s.type,P=s.stateNode;if((s.flags&128)===0&&(typeof k.getDerivedStateFromError=="function"||P!==null&&typeof P.componentDidCatch=="function"&&(Xr===null||!Xr.has(P)))){s.flags|=65536,t&=-t,s.lanes|=t;var V=ec(s,m,t);_u(s,V);break e}}s=s.return}while(s!==null)}zc(r)}catch(ue){t=ue,ut===r&&r!==null&&(ut=r=r.return);continue}break}while(!0)}function Ic(){var e=Ko.current;return Ko.current=Bo,e===null?Bo:e}function Qa(){(pt===0||pt===3||pt===2)&&(pt=4),mt===null||(Sn&268435455)===0&&(qo&268435455)===0||en(mt,xt)}function ei(e,t){var r=Fe;Fe|=2;var n=Ic();(mt!==e||xt!==t)&&(Tr=null,En(e,t));do try{yp();break}catch(l){Nc(e,l)}while(!0);if(oa(),Fe=r,Ko.current=n,ut!==null)throw Error(a(261));return mt=null,xt=0,pt}function yp(){for(;ut!==null;)Dc(ut)}function wp(){for(;ut!==null&&!fn();)Dc(ut)}function Dc(e){var t=Oc(e.alternate,e,Vt);e.memoizedProps=e.pendingProps,t===null?zc(e):ut=t,Oa.current=null}function zc(e){var t=e;do{var r=t.alternate;if(e=t.return,(t.flags&32768)===0){if(r=dp(r,t,Vt),r!==null){ut=r;return}}else{if(r=fp(r,t),r!==null){r.flags&=32767,ut=r;return}if(e!==null)e.flags|=32768,e.subtreeFlags=0,e.deletions=null;else{pt=6,ut=null;return}}if(t=t.sibling,t!==null){ut=t;return}ut=t=e}while(t!==null);pt===0&&(pt=5)}function Cn(e,t,r){var n=Qe,l=Xt.transition;try{Xt.transition=null,Qe=1,xp(e,t,r,n)}finally{Xt.transition=l,Qe=n}return null}function xp(e,t,r,n){do nl();while(Gr!==null);if((Fe&6)!==0)throw Error(a(327));r=e.finishedWork;var l=e.finishedLanes;if(r===null)return null;if(e.finishedWork=null,e.finishedLanes=0,r===e.current)throw Error(a(177));e.callbackNode=null,e.callbackPriority=0;var s=r.lanes|r.childLanes;if(Zd(e,s),e===mt&&(ut=mt=null,xt=0),(r.subtreeFlags&2064)===0&&(r.flags&2064)===0||Jo||(Jo=!0,bc(Sr,function(){return nl(),null})),s=(r.flags&15990)!==0,(r.subtreeFlags&15990)!==0||s){s=Xt.transition,Xt.transition=null;var c=Qe;Qe=1;var m=Fe;Fe|=4,Oa.current=null,hp(e,r),Cc(r,e),Af(Qi),co=!!Hi,Qi=Hi=null,e.current=r,mp(r),tr(),Fe=m,Qe=c,Xt.transition=s}else e.current=r;if(Jo&&(Jo=!1,Gr=e,Xo=l),s=e.pendingLanes,s===0&&(Xr=null),pn(r.stateNode),Mt(e,Ue()),t!==null)for(n=e.onRecoverableError,r=0;r<t.length;r++)l=t[r],n(l.value,{componentStack:l.stack,digest:l.digest});if(Yo)throw Yo=!1,e=Aa,Aa=null,e;return(Xo&1)!==0&&e.tag!==0&&nl(),s=e.pendingLanes,(s&1)!==0?e===Ba?$l++:($l=0,Ba=e):$l=0,Kr(),null}function nl(){if(Gr!==null){var e=ks(Xo),t=Xt.transition,r=Qe;try{if(Xt.transition=null,Qe=16>e?16:e,Gr===null)var n=!1;else{if(e=Gr,Gr=null,Xo=0,(Fe&6)!==0)throw Error(a(331));var l=Fe;for(Fe|=4,Z=e.current;Z!==null;){var s=Z,c=s.child;if((Z.flags&16)!==0){var m=s.deletions;if(m!==null){for(var w=0;w<m.length;w++){var L=m[w];for(Z=L;Z!==null;){var A=Z;switch(A.tag){case 0:case 11:case 15:Bl(8,A,s)}var B=A.child;if(B!==null)B.return=A,Z=B;else for(;Z!==null;){A=Z;var U=A.sibling,X=A.return;if(wc(A),A===L){Z=null;break}if(U!==null){U.return=X,Z=U;break}Z=X}}}var le=s.alternate;if(le!==null){var ae=le.child;if(ae!==null){le.child=null;do{var st=ae.sibling;ae.sibling=null,ae=st}while(ae!==null)}}Z=s}}if((s.subtreeFlags&2064)!==0&&c!==null)c.return=s,Z=c;else e:for(;Z!==null;){if(s=Z,(s.flags&2048)!==0)switch(s.tag){case 0:case 11:case 15:Bl(9,s,s.return)}var R=s.sibling;if(R!==null){R.return=s.return,Z=R;break e}Z=s.return}}var k=e.current;for(Z=k;Z!==null;){c=Z;var P=c.child;if((c.subtreeFlags&2064)!==0&&P!==null)P.return=c,Z=P;else e:for(c=k;Z!==null;){if(m=Z,(m.flags&2048)!==0)try{switch(m.tag){case 0:case 11:case 15:Qo(9,m)}}catch(ue){it(m,m.return,ue)}if(m===c){Z=null;break e}var V=m.sibling;if(V!==null){V.return=m.return,Z=V;break e}Z=m.return}}if(Fe=l,Kr(),yt&&typeof yt.onPostCommitFiberRoot=="function")try{yt.onPostCommitFiberRoot(Ye,e)}catch{}n=!0}return n}finally{Qe=r,Xt.transition=t}}return!1}function Mc(e,t,r){t=Zn(r,t),t=Zu(e,t,1),e=Yr(e,t,1),t=Tt(),e!==null&&(hl(e,1,t),Mt(e,t))}function it(e,t,r){if(e.tag===3)Mc(e,e,r);else for(;t!==null;){if(t.tag===3){Mc(t,e,r);break}else if(t.tag===1){var n=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof n.componentDidCatch=="function"&&(Xr===null||!Xr.has(n))){e=Zn(r,e),e=ec(t,e,1),t=Yr(t,e,1),e=Tt(),t!==null&&(hl(t,1,e),Mt(t,e));break}}t=t.return}}function Sp(e,t,r){var n=e.pingCache;n!==null&&n.delete(t),t=Tt(),e.pingedLanes|=e.suspendedLanes&r,mt===e&&(xt&r)===r&&(pt===4||pt===3&&(xt&130023424)===xt&&500>Ue()-Ua?En(e,0):ba|=r),Mt(e,t)}function Fc(e,t){t===0&&((e.mode&1)===0?t=1:(t=io,io<<=1,(io&130023424)===0&&(io=4194304)));var r=Tt();e=_r(e,t),e!==null&&(hl(e,t,r),Mt(e,r))}function kp(e){var t=e.memoizedState,r=0;t!==null&&(r=t.retryLane),Fc(e,r)}function Ep(e,t){var r=0;switch(e.tag){case 13:var n=e.stateNode,l=e.memoizedState;l!==null&&(r=l.retryLane);break;case 19:n=e.stateNode;break;default:throw Error(a(314))}n!==null&&n.delete(t),Fc(e,r)}var Oc;Oc=function(e,t,r){if(e!==null)if(e.memoizedProps!==t.pendingProps||Nt.current)Dt=!0;else{if((e.lanes&r)===0&&(t.flags&128)===0)return Dt=!1,cp(e,t,r);Dt=(e.flags&131072)!==0}else Dt=!1,tt&&(t.flags&1048576)!==0&&gu(t,To,t.index);switch(t.lanes=0,t.tag){case 2:var n=t.type;$o(e,t),e=t.pendingProps;var l=Hn(t,St.current);Xn(t,r),l=ga(null,t,n,e,l,r);var s=va();return t.flags|=1,typeof l=="object"&&l!==null&&typeof l.render=="function"&&l.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,It(n)?(s=!0,_o(t)):s=!1,t.memoizedState=l.state!==null&&l.state!==void 0?l.state:null,ua(t),l.updater=Wo,t.stateNode=l,l._reactInternals=t,Ea(t,n,e,r),t=Ra(null,t,n,!0,s,r)):(t.tag=0,tt&&s&&Zi(t),Pt(null,t,l,r),t=t.child),t;case 16:n=t.elementType;e:{switch($o(e,t),e=t.pendingProps,l=n._init,n=l(n._payload),t.type=n,l=t.tag=jp(n),e=lr(n,e),l){case 0:t=_a(null,t,n,e,r);break e;case 1:t=uc(null,t,n,e,r);break e;case 11:t=lc(null,t,n,e,r);break e;case 14:t=oc(null,t,n,lr(n.type,e),r);break e}throw Error(a(306,n,""))}return t;case 0:return n=t.type,l=t.pendingProps,l=t.elementType===n?l:lr(n,l),_a(e,t,n,l,r);case 1:return n=t.type,l=t.pendingProps,l=t.elementType===n?l:lr(n,l),uc(e,t,n,l,r);case 3:e:{if(cc(t),e===null)throw Error(a(387));n=t.pendingProps,s=t.memoizedState,l=s.element,ju(e,t),Mo(t,n,null,r);var c=t.memoizedState;if(n=c.element,s.isDehydrated)if(s={element:n,isDehydrated:!1,cache:c.cache,pendingSuspenseBoundaries:c.pendingSuspenseBoundaries,transitions:c.transitions},t.updateQueue.baseState=s,t.memoizedState=s,t.flags&256){l=Zn(Error(a(423)),t),t=dc(e,t,n,r,l);break e}else if(n!==l){l=Zn(Error(a(424)),t),t=dc(e,t,n,r,l);break e}else for(Wt=$r(t.stateNode.containerInfo.firstChild),Bt=t,tt=!0,nr=null,r=Eu(t,null,n,r),t.child=r;r;)r.flags=r.flags&-3|4096,r=r.sibling;else{if(qn(),n===l){t=Pr(e,t,r);break e}Pt(e,t,n,r)}t=t.child}return t;case 5:return Pu(t),e===null&&ra(t),n=t.type,l=t.pendingProps,s=e!==null?e.memoizedProps:null,c=l.children,Ki(n,l)?c=null:s!==null&&Ki(n,s)&&(t.flags|=32),sc(e,t),Pt(e,t,c,r),t.child;case 6:return e===null&&ra(t),null;case 13:return fc(e,t,r);case 4:return ca(t,t.stateNode.containerInfo),n=t.pendingProps,e===null?t.child=Yn(t,null,n,r):Pt(e,t,n,r),t.child;case 11:return n=t.type,l=t.pendingProps,l=t.elementType===n?l:lr(n,l),lc(e,t,n,l,r);case 7:return Pt(e,t,t.pendingProps,r),t.child;case 8:return Pt(e,t,t.pendingProps.children,r),t.child;case 12:return Pt(e,t,t.pendingProps.children,r),t.child;case 10:e:{if(n=t.type._context,l=t.pendingProps,s=t.memoizedProps,c=l.value,Xe(Io,n._currentValue),n._currentValue=c,s!==null)if(rr(s.value,c)){if(s.children===l.children&&!Nt.current){t=Pr(e,t,r);break e}}else for(s=t.child,s!==null&&(s.return=t);s!==null;){var m=s.dependencies;if(m!==null){c=s.child;for(var w=m.firstContext;w!==null;){if(w.context===n){if(s.tag===1){w=Rr(-1,r&-r),w.tag=2;var L=s.updateQueue;if(L!==null){L=L.shared;var A=L.pending;A===null?w.next=w:(w.next=A.next,A.next=w),L.pending=w}}s.lanes|=r,w=s.alternate,w!==null&&(w.lanes|=r),aa(s.return,r,t),m.lanes|=r;break}w=w.next}}else if(s.tag===10)c=s.type===t.type?null:s.child;else if(s.tag===18){if(c=s.return,c===null)throw Error(a(341));c.lanes|=r,m=c.alternate,m!==null&&(m.lanes|=r),aa(c,r,t),c=s.sibling}else c=s.child;if(c!==null)c.return=s;else for(c=s;c!==null;){if(c===t){c=null;break}if(s=c.sibling,s!==null){s.return=c.return,c=s;break}c=c.return}s=c}Pt(e,t,l.children,r),t=t.child}return t;case 9:return l=t.type,n=t.pendingProps.children,Xn(t,r),l=Yt(l),n=n(l),t.flags|=1,Pt(e,t,n,r),t.child;case 14:return n=t.type,l=lr(n,t.pendingProps),l=lr(n.type,l),oc(e,t,n,l,r);case 15:return ic(e,t,t.type,t.pendingProps,r);case 17:return n=t.type,l=t.pendingProps,l=t.elementType===n?l:lr(n,l),$o(e,t),t.tag=1,It(n)?(e=!0,_o(t)):e=!1,Xn(t,r),Xu(t,n,l),Ea(t,n,l,r),Ra(null,t,n,!0,e,r);case 19:return hc(e,t,r);case 22:return ac(e,t,r)}throw Error(a(156,t.tag))};function bc(e,t){return Ge(e,t)}function Cp(e,t,r,n){this.tag=e,this.key=r,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,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 Gt(e,t,r,n){return new Cp(e,t,r,n)}function Ka(e){return e=e.prototype,!(!e||!e.isReactComponent)}function jp(e){if(typeof e=="function")return Ka(e)?1:0;if(e!=null){if(e=e.$$typeof,e===ee)return 11;if(e===Ve)return 14}return 2}function tn(e,t){var r=e.alternate;return r===null?(r=Gt(e.tag,t,e.key,e.mode),r.elementType=e.elementType,r.type=e.type,r.stateNode=e.stateNode,r.alternate=e,e.alternate=r):(r.pendingProps=t,r.type=e.type,r.flags=0,r.subtreeFlags=0,r.deletions=null),r.flags=e.flags&14680064,r.childLanes=e.childLanes,r.lanes=e.lanes,r.child=e.child,r.memoizedProps=e.memoizedProps,r.memoizedState=e.memoizedState,r.updateQueue=e.updateQueue,t=e.dependencies,r.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},r.sibling=e.sibling,r.index=e.index,r.ref=e.ref,r}function ti(e,t,r,n,l,s){var c=2;if(n=e,typeof e=="function")Ka(e)&&(c=1);else if(typeof e=="string")c=5;else e:switch(e){case T:return jn(r.children,l,s,t);case se:c=8,l|=8;break;case Re:return e=Gt(12,r,t,l|2),e.elementType=Re,e.lanes=s,e;case de:return e=Gt(13,r,t,l),e.elementType=de,e.lanes=s,e;case Oe:return e=Gt(19,r,t,l),e.elementType=Oe,e.lanes=s,e;case Me:return ri(r,l,s,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case he:c=10;break e;case Q:c=9;break e;case ee:c=11;break e;case Ve:c=14;break e;case at:c=16,n=null;break e}throw Error(a(130,e==null?e:typeof e,""))}return t=Gt(c,r,t,l),t.elementType=e,t.type=n,t.lanes=s,t}function jn(e,t,r,n){return e=Gt(7,e,n,t),e.lanes=r,e}function ri(e,t,r,n){return e=Gt(22,e,n,t),e.elementType=Me,e.lanes=r,e.stateNode={isHidden:!1},e}function qa(e,t,r){return e=Gt(6,e,null,t),e.lanes=r,e}function Ya(e,t,r){return t=Gt(4,e.children!==null?e.children:[],e.key,t),t.lanes=r,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function _p(e,t,r,n,l){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=ki(0),this.expirationTimes=ki(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=ki(0),this.identifierPrefix=n,this.onRecoverableError=l,this.mutableSourceEagerHydrationData=null}function Ja(e,t,r,n,l,s,c,m,w){return e=new _p(e,t,r,m,w),t===1?(t=1,s===!0&&(t|=8)):t=0,s=Gt(3,null,null,t),e.current=s,s.stateNode=e,s.memoizedState={element:n,isDehydrated:r,cache:null,transitions:null,pendingSuspenseBoundaries:null},ua(s),e}function Rp(e,t,r){var n=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:$,key:n==null?null:""+n,children:e,containerInfo:t,implementation:r}}function Uc(e){if(!e)return Qr;e=e._reactInternals;e:{if(re(e)!==e||e.tag!==1)throw Error(a(170));var t=e;do{switch(t.tag){case 3:t=t.stateNode.context;break e;case 1:if(It(t.type)){t=t.stateNode.__reactInternalMemoizedMergedChildContext;break e}}t=t.return}while(t!==null);throw Error(a(171))}if(e.tag===1){var r=e.type;if(It(r))return pu(e,r,t)}return t}function Ac(e,t,r,n,l,s,c,m,w){return e=Ja(r,n,!0,e,l,s,c,m,w),e.context=Uc(null),r=e.current,n=Tt(),l=Zr(r),s=Rr(n,l),s.callback=t??null,Yr(r,s,l),e.current.lanes=l,hl(e,l,n),Mt(e,n),e}function ni(e,t,r,n){var l=t.current,s=Tt(),c=Zr(l);return r=Uc(r),t.context===null?t.context=r:t.pendingContext=r,t=Rr(s,c),t.payload={element:e},n=n===void 0?null:n,n!==null&&(t.callback=n),e=Yr(l,t,c),e!==null&&(ar(e,l,c,s),zo(e,l,c)),c}function li(e){if(e=e.current,!e.child)return null;switch(e.child.tag){case 5:return e.child.stateNode;default:return e.child.stateNode}}function Bc(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var r=e.retryLane;e.retryLane=r!==0&&r<t?r:t}}function Xa(e,t){Bc(e,t),(e=e.alternate)&&Bc(e,t)}function Pp(){return null}var Wc=typeof reportError=="function"?reportError:function(e){console.error(e)};function Ga(e){this._internalRoot=e}oi.prototype.render=Ga.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(a(409));ni(e,t,null,null)},oi.prototype.unmount=Ga.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var t=e.containerInfo;kn(function(){ni(null,e,null,null)}),t[kr]=null}};function oi(e){this._internalRoot=e}oi.prototype.unstable_scheduleHydration=function(e){if(e){var t=js();e={blockedOn:null,target:e,priority:t};for(var r=0;r<Br.length&&t!==0&&t<Br[r].priority;r++);Br.splice(r,0,e),r===0&&Ps(e)}};function Za(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function ii(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11&&(e.nodeType!==8||e.nodeValue!==" react-mount-point-unstable "))}function Vc(){}function Tp(e,t,r,n,l){if(l){if(typeof n=="function"){var s=n;n=function(){var L=li(c);s.call(L)}}var c=Ac(t,n,e,0,null,!1,!1,"",Vc);return e._reactRootContainer=c,e[kr]=c.current,Pl(e.nodeType===8?e.parentNode:e),kn(),c}for(;l=e.lastChild;)e.removeChild(l);if(typeof n=="function"){var m=n;n=function(){var L=li(w);m.call(L)}}var w=Ja(e,0,!1,null,null,!1,!1,"",Vc);return e._reactRootContainer=w,e[kr]=w.current,Pl(e.nodeType===8?e.parentNode:e),kn(function(){ni(t,w,r,n)}),w}function ai(e,t,r,n,l){var s=r._reactRootContainer;if(s){var c=s;if(typeof l=="function"){var m=l;l=function(){var w=li(c);m.call(w)}}ni(t,c,e,l)}else c=Tp(r,t,e,l,n);return li(c)}Es=function(e){switch(e.tag){case 3:var t=e.stateNode;if(t.current.memoizedState.isDehydrated){var r=pl(t.pendingLanes);r!==0&&(Ei(t,r|1),Mt(t,Ue()),(Fe&6)===0&&(rl=Ue()+500,Kr()))}break;case 13:kn(function(){var n=_r(e,1);if(n!==null){var l=Tt();ar(n,e,1,l)}}),Xa(e,1)}},Ci=function(e){if(e.tag===13){var t=_r(e,134217728);if(t!==null){var r=Tt();ar(t,e,134217728,r)}Xa(e,134217728)}},Cs=function(e){if(e.tag===13){var t=Zr(e),r=_r(e,t);if(r!==null){var n=Tt();ar(r,e,t,n)}Xa(e,t)}},js=function(){return Qe},_s=function(e,t){var r=Qe;try{return Qe=e,t()}finally{Qe=r}},zn=function(e,t,r){switch(t){case"input":if(un(e,r),t=r.name,r.type==="radio"&&t!=null){for(r=e;r.parentNode;)r=r.parentNode;for(r=r.querySelectorAll("input[name="+JSON.stringify(""+t)+'][type="radio"]'),t=0;t<r.length;t++){var n=r[t];if(n!==e&&n.form===e.form){var l=Co(n);if(!l)throw Error(a(90));ot(n),un(n,l)}}}break;case"textarea":J(e,r);break;case"select":t=r.value,t!=null&&ur(e,!!r.multiple,t,!1)}},dl=$a,cn=kn;var Lp={usingClientEntryPoint:!1,Events:[Nl,Vn,Co,cl,ro,$a]},Hl={findFiberByHostInstance:hn,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},Np={bundleType:Hl.bundleType,version:Hl.version,rendererPackageName:Hl.rendererPackageName,rendererConfig:Hl.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:pe.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return e=He(e),e===null?null:e.stateNode},findFiberByHostInstance:Hl.findFiberByHostInstance||Pp,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.3.1-next-f1338f8080-20240426"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var si=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!si.isDisabled&&si.supportsFiber)try{Ye=si.inject(Np),yt=si}catch{}}return Ft.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=Lp,Ft.createPortal=function(e,t){var r=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!Za(t))throw Error(a(200));return Rp(e,t,null,r)},Ft.createRoot=function(e,t){if(!Za(e))throw Error(a(299));var r=!1,n="",l=Wc;return t!=null&&(t.unstable_strictMode===!0&&(r=!0),t.identifierPrefix!==void 0&&(n=t.identifierPrefix),t.onRecoverableError!==void 0&&(l=t.onRecoverableError)),t=Ja(e,1,!1,null,null,r,!1,n,l),e[kr]=t.current,Pl(e.nodeType===8?e.parentNode:e),new Ga(t)},Ft.findDOMNode=function(e){if(e==null)return null;if(e.nodeType===1)return e;var t=e._reactInternals;if(t===void 0)throw typeof e.render=="function"?Error(a(188)):(e=Object.keys(e).join(","),Error(a(268,e)));return e=He(t),e=e===null?null:e.stateNode,e},Ft.flushSync=function(e){return kn(e)},Ft.hydrate=function(e,t,r){if(!ii(t))throw Error(a(200));return ai(null,e,t,!0,r)},Ft.hydrateRoot=function(e,t,r){if(!Za(e))throw Error(a(405));var n=r!=null&&r.hydratedSources||null,l=!1,s="",c=Wc;if(r!=null&&(r.unstable_strictMode===!0&&(l=!0),r.identifierPrefix!==void 0&&(s=r.identifierPrefix),r.onRecoverableError!==void 0&&(c=r.onRecoverableError)),t=Ac(t,null,e,1,r??null,l,!1,s,c),e[kr]=t.current,Pl(e),n)for(e=0;e<n.length;e++)r=n[e],l=r._getVersion,l=l(r._source),t.mutableSourceEagerHydrationData==null?t.mutableSourceEagerHydrationData=[r,l]:t.mutableSourceEagerHydrationData.push(r,l);return new oi(t)},Ft.render=function(e,t,r){if(!ii(t))throw Error(a(200));return ai(null,e,t,!1,r)},Ft.unmountComponentAtNode=function(e){if(!ii(e))throw Error(a(40));return e._reactRootContainer?(kn(function(){ai(null,null,e,!1,function(){e._reactRootContainer=null,e[kr]=null})}),!0):!1},Ft.unstable_batchedUpdates=$a,Ft.unstable_renderSubtreeIntoContainer=function(e,t,r,n){if(!ii(r))throw Error(a(200));if(e==null||e._reactInternals===void 0)throw Error(a(38));return ai(e,t,r,!1,n)},Ft.version="18.3.1-next-f1338f8080-20240426",Ft}var Xc;function Pd(){if(Xc)return rs.exports;Xc=1;function o(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(o)}catch(i){console.error(i)}}return o(),rs.exports=Ap(),rs.exports}var Gc;function Bp(){if(Gc)return ui;Gc=1;var o=Pd();return ui.createRoot=o.createRoot,ui.hydrateRoot=o.hydrateRoot,ui}var Wp=Bp(),Td=Pd();const Vp=Rd(Td),$p=_d({__proto__:null,default:Vp},[Td]);/**
* @remix-run/router v1.23.0
*
* Copyright (c) Remix Software Inc.
*
* This source code is licensed under the MIT license found in the
* LICENSE.md file in the root directory of this source tree.
*
* @license MIT
*/function rt(){return rt=Object.assign?Object.assign.bind():function(o){for(var i=1;i<arguments.length;i++){var a=arguments[i];for(var u in a)Object.prototype.hasOwnProperty.call(a,u)&&(o[u]=a[u])}return o},rt.apply(this,arguments)}var ct;(function(o){o.Pop="POP",o.Push="PUSH",o.Replace="REPLACE"})(ct||(ct={}));const Zc="popstate";function Hp(o){o===void 0&&(o={});function i(u,d){let{pathname:h,search:p,hash:v}=u.location;return Xl("",{pathname:h,search:p,hash:v},d.state&&d.state.usr||null,d.state&&d.state.key||"default")}function a(u,d){return typeof d=="string"?d:Tn(d)}return Kp(i,a,null,o)}function Ie(o,i){if(o===!1||o===null||typeof o>"u")throw new Error(i)}function ol(o,i){if(!o){typeof console<"u"&&console.warn(i);try{throw new Error(i)}catch{}}}function Qp(){return Math.random().toString(36).substr(2,8)}function ed(o,i){return{usr:o.state,key:o.key,idx:i}}function Xl(o,i,a,u){return a===void 0&&(a=null),rt({pathname:typeof o=="string"?o:o.pathname,search:"",hash:""},typeof i=="string"?an(i):i,{state:a,key:i&&i.key||u||Qp()})}function Tn(o){let{pathname:i="/",search:a="",hash:u=""}=o;return a&&a!=="?"&&(i+=a.charAt(0)==="?"?a:"?"+a),u&&u!=="#"&&(i+=u.charAt(0)==="#"?u:"#"+u),i}function an(o){let i={};if(o){let a=o.indexOf("#");a>=0&&(i.hash=o.substr(a),o=o.substr(0,a));let u=o.indexOf("?");u>=0&&(i.search=o.substr(u),o=o.substr(0,u)),o&&(i.pathname=o)}return i}function Kp(o,i,a,u){u===void 0&&(u={});let{window:d=document.defaultView,v5Compat:h=!1}=u,p=d.history,v=ct.Pop,g=null,x=S();x==null&&(x=0,p.replaceState(rt({},p.state,{idx:x}),""));function S(){return(p.state||{idx:null}).idx}function _(){v=ct.Pop;let K=S(),Ce=K==null?null:K-x;x=K,g&&g({action:v,location:F.location,delta:Ce})}function C(K,Ce){v=ct.Push;let oe=Xl(F.location,K,Ce);x=S()+1;let xe=ed(oe,x),pe=F.createHref(oe);try{p.pushState(xe,"",pe)}catch(je){if(je instanceof DOMException&&je.name==="DataCloneError")throw je;d.location.assign(pe)}h&&g&&g({action:v,location:F.location,delta:1})}function M(K,Ce){v=ct.Replace;let oe=Xl(F.location,K,Ce);x=S();let xe=ed(oe,x),pe=F.createHref(oe);p.replaceState(xe,"",pe),h&&g&&g({action:v,location:F.location,delta:0})}function z(K){let Ce=d.location.origin!=="null"?d.location.origin:d.location.href,oe=typeof K=="string"?K:Tn(K);return oe=oe.replace(/ $/,"%20"),Ie(Ce,"No window.location.(origin|href) available to create URL for href: "+oe),new URL(oe,Ce)}let F={get action(){return v},get location(){return o(d,p)},listen(K){if(g)throw new Error("A history only accepts one active listener");return d.addEventListener(Zc,_),g=K,()=>{d.removeEventListener(Zc,_),g=null}},createHref(K){return i(d,K)},createURL:z,encodeLocation(K){let Ce=z(K);return{pathname:Ce.pathname,search:Ce.search,hash:Ce.hash}},push:C,replace:M,go(K){return p.go(K)}};return F}var Ke;(function(o){o.data="data",o.deferred="deferred",o.redirect="redirect",o.error="error"})(Ke||(Ke={}));const qp=new Set(["lazy","caseSensitive","path","id","index","children"]);function Yp(o){return o.index===!0}function fi(o,i,a,u){return a===void 0&&(a=[]),u===void 0&&(u={}),o.map((d,h)=>{let p=[...a,String(h)],v=typeof d.id=="string"?d.id:p.join("-");if(Ie(d.index!==!0||!d.children,"Cannot specify children on an index route"),Ie(!u[v],'Found a route id collision on id "'+v+`". Route id's must be globally unique within Data Router usages`),Yp(d)){let g=rt({},d,i(d),{id:v});return u[v]=g,g}else{let g=rt({},d,i(d),{id:v,children:void 0});return u[v]=g,d.children&&(g.children=fi(d.children,i,p,u)),g}})}function _n(o,i,a){return a===void 0&&(a="/"),di(o,i,a,!1)}function di(o,i,a,u){let d=typeof i=="string"?an(i):i,h=il(d.pathname||"/",a);if(h==null)return null;let p=Ld(o);Xp(p);let v=null;for(let g=0;v==null&&g<p.length;++g){let x=sh(h);v=ih(p[g],x,u)}return v}function Jp(o,i){let{route:a,pathname:u,params:d}=o;return{id:a.id,pathname:u,params:d,data:i[a.id],handle:a.handle}}function Ld(o,i,a,u){i===void 0&&(i=[]),a===void 0&&(a=[]),u===void 0&&(u="");let d=(h,p,v)=>{let g={relativePath:v===void 0?h.path||"":v,caseSensitive:h.caseSensitive===!0,childrenIndex:p,route:h};g.relativePath.startsWith("/")&&(Ie(g.relativePath.startsWith(u),'Absolute route path "'+g.relativePath+'" nested under path '+('"'+u+'" is not valid. An absolute child route path ')+"must start with the combined path of all its parent routes."),g.relativePath=g.relativePath.slice(u.length));let x=Lr([u,g.relativePath]),S=a.concat(g);h.children&&h.children.length>0&&(Ie(h.index!==!0,"Index routes must not have child routes. Please remove "+('all child routes from route path "'+x+'".')),Ld(h.children,i,S,x)),!(h.path==null&&!h.index)&&i.push({path:x,score:lh(x,h.index),routesMeta:S})};return o.forEach((h,p)=>{var v;if(h.path===""||!((v=h.path)!=null&&v.includes("?")))d(h,p);else for(let g of Nd(h.path))d(h,p,g)}),i}function Nd(o){let i=o.split("/");if(i.length===0)return[];let[a,...u]=i,d=a.endsWith("?"),h=a.replace(/\?$/,"");if(u.length===0)return d?[h,""]:[h];let p=Nd(u.join("/")),v=[];return v.push(...p.map(g=>g===""?h:[h,g].join("/"))),d&&v.push(...p),v.map(g=>o.startsWith("/")&&g===""?"/":g)}function Xp(o){o.sort((i,a)=>i.score!==a.score?a.score-i.score:oh(i.routesMeta.map(u=>u.childrenIndex),a.routesMeta.map(u=>u.childrenIndex)))}const Gp=/^:[\w-]+$/,Zp=3,eh=2,th=1,rh=10,nh=-2,td=o=>o==="*";function lh(o,i){let a=o.split("/"),u=a.length;return a.some(td)&&(u+=nh),i&&(u+=eh),a.filter(d=>!td(d)).reduce((d,h)=>d+(Gp.test(h)?Zp:h===""?th:rh),u)}function oh(o,i){return o.length===i.length&&o.slice(0,-1).every((u,d)=>u===i[d])?o[o.length-1]-i[i.length-1]:0}function ih(o,i,a){a===void 0&&(a=!1);let{routesMeta:u}=o,d={},h="/",p=[];for(let v=0;v<u.length;++v){let g=u[v],x=v===u.length-1,S=h==="/"?i:i.slice(h.length)||"/",_=rd({path:g.relativePath,caseSensitive:g.caseSensitive,end:x},S),C=g.route;if(!_&&x&&a&&!u[u.length-1].route.index&&(_=rd({path:g.relativePath,caseSensitive:g.caseSensitive,end:!1},S)),!_)return null;Object.assign(d,_.params),p.push({params:d,pathname:Lr([h,_.pathname]),pathnameBase:dh(Lr([h,_.pathnameBase])),route:C}),_.pathnameBase!=="/"&&(h=Lr([h,_.pathnameBase]))}return p}function rd(o,i){typeof o=="string"&&(o={path:o,caseSensitive:!1,end:!0});let[a,u]=ah(o.path,o.caseSensitive,o.end),d=i.match(a);if(!d)return null;let h=d[0],p=h.replace(/(.)\/+$/,"$1"),v=d.slice(1);return{params:u.reduce((x,S,_)=>{let{paramName:C,isOptional:M}=S;if(C==="*"){let F=v[_]||"";p=h.slice(0,h.length-F.length).replace(/(.)\/+$/,"$1")}const z=v[_];return M&&!z?x[C]=void 0:x[C]=(z||"").replace(/%2F/g,"/"),x},{}),pathname:h,pathnameBase:p,pattern:o}}function ah(o,i,a){i===void 0&&(i=!1),a===void 0&&(a=!0),ol(o==="*"||!o.endsWith("*")||o.endsWith("/*"),'Route path "'+o+'" will be treated as if it were '+('"'+o.replace(/\*$/,"/*")+'" because the `*` character must ')+"always follow a `/` in the pattern. To get rid of this warning, "+('please change the route path to "'+o.replace(/\*$/,"/*")+'".'));let u=[],d="^"+o.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(p,v,g)=>(u.push({paramName:v,isOptional:g!=null}),g?"/?([^\\/]+)?":"/([^\\/]+)"));return o.endsWith("*")?(u.push({paramName:"*"}),d+=o==="*"||o==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):a?d+="\\/*$":o!==""&&o!=="/"&&(d+="(?:(?=\\/|$))"),[new RegExp(d,i?void 0:"i"),u]}function sh(o){try{return o.split("/").map(i=>decodeURIComponent(i).replace(/\//g,"%2F")).join("/")}catch(i){return ol(!1,'The URL path "'+o+'" could not be decoded because it is is a malformed URL segment. This is probably due to a bad percent '+("encoding ("+i+").")),o}}function il(o,i){if(i==="/")return o;if(!o.toLowerCase().startsWith(i.toLowerCase()))return null;let a=i.endsWith("/")?i.length-1:i.length,u=o.charAt(a);return u&&u!=="/"?null:o.slice(a)||"/"}function uh(o,i){i===void 0&&(i="/");let{pathname:a,search:u="",hash:d=""}=typeof o=="string"?an(o):o;return{pathname:a?a.startsWith("/")?a:ch(a,i):i,search:fh(u),hash:ph(d)}}function ch(o,i){let a=i.replace(/\/+$/,"").split("/");return o.split("/").forEach(d=>{d===".."?a.length>1&&a.pop():d!=="."&&a.push(d)}),a.length>1?a.join("/"):"/"}function os(o,i,a,u){return"Cannot include a '"+o+"' character in a manually specified "+("`to."+i+"` field ["+JSON.stringify(u)+"]. Please separate it out to the ")+("`to."+a+"` field. Alternatively you may provide the full path as ")+'a string in <Link to="..."> and the router will parse it for you.'}function Id(o){return o.filter((i,a)=>a===0||i.route.path&&i.route.path.length>0)}function gi(o,i){let a=Id(o);return i?a.map((u,d)=>d===a.length-1?u.pathname:u.pathnameBase):a.map(u=>u.pathnameBase)}function vi(o,i,a,u){u===void 0&&(u=!1);let d;typeof o=="string"?d=an(o):(d=rt({},o),Ie(!d.pathname||!d.pathname.includes("?"),os("?","pathname","search",d)),Ie(!d.pathname||!d.pathname.includes("#"),os("#","pathname","hash",d)),Ie(!d.search||!d.search.includes("#"),os("#","search","hash",d)));let h=o===""||d.pathname==="",p=h?"/":d.pathname,v;if(p==null)v=a;else{let _=i.length-1;if(!u&&p.startsWith("..")){let C=p.split("/");for(;C[0]==="..";)C.shift(),_-=1;d.pathname=C.join("/")}v=_>=0?i[_]:"/"}let g=uh(d,v),x=p&&p!=="/"&&p.endsWith("/"),S=(h||p===".")&&a.endsWith("/");return!g.pathname.endsWith("/")&&(x||S)&&(g.pathname+="/"),g}const Lr=o=>o.join("/").replace(/\/\/+/g,"/"),dh=o=>o.replace(/\/+$/,"").replace(/^\/*/,"/"),fh=o=>!o||o==="?"?"":o.startsWith("?")?o:"?"+o,ph=o=>!o||o==="#"?"":o.startsWith("#")?o:"#"+o;class pi{constructor(i,a,u,d){d===void 0&&(d=!1),this.status=i,this.statusText=a||"",this.internal=d,u instanceof Error?(this.data=u.toString(),this.error=u):this.data=u}}function Gl(o){return o!=null&&typeof o.status=="number"&&typeof o.statusText=="string"&&typeof o.internal=="boolean"&&"data"in o}const Dd=["post","put","patch","delete"],hh=new Set(Dd),mh=["get",...Dd],gh=new Set(mh),vh=new Set([301,302,303,307,308]),yh=new Set([307,308]),is={state:"idle",location:void 0,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0},wh={state:"idle",data:void 0,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0},Kl={state:"unblocked",proceed:void 0,reset:void 0,location:void 0},gs=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,xh=o=>({hasErrorBoundary:!!o.hasErrorBoundary}),zd="remix-router-transitions";function Sh(o){const i=o.window?o.window:typeof window<"u"?window:void 0,a=typeof i<"u"&&typeof i.document<"u"&&typeof i.document.createElement<"u",u=!a;Ie(o.routes.length>0,"You must provide a non-empty routes array to createRouter");let d;if(o.mapRouteProperties)d=o.mapRouteProperties;else if(o.detectErrorBoundary){let y=o.detectErrorBoundary;d=j=>({hasErrorBoundary:y(j)})}else d=xh;let h={},p=fi(o.routes,d,void 0,h),v,g=o.basename||"/",x=o.dataStrategy||jh,S=o.patchRoutesOnNavigation,_=rt({v7_fetcherPersist:!1,v7_normalizeFormMethod:!1,v7_partialHydration:!1,v7_prependBasename:!1,v7_relativeSplatPath:!1,v7_skipActionErrorRevalidation:!1},o.future),C=null,M=new Set,z=null,F=null,K=null,Ce=o.hydrationData!=null,oe=_n(p,o.history.location,g),xe=!1,pe=null;if(oe==null&&!S){let y=Ot(404,{pathname:o.history.location.pathname}),{matches:j,route:I}=pd(p);oe=j,pe={[I.id]:y}}oe&&!o.hydrationData&&cn(oe,p,o.history.location.pathname).active&&(oe=null);let je;if(oe)if(oe.some(y=>y.route.lazy))je=!1;else if(!oe.some(y=>y.route.loader))je=!0;else if(_.v7_partialHydration){let y=o.hydrationData?o.hydrationData.loaderData:null,j=o.hydrationData?o.hydrationData.errors:null;if(j){let I=oe.findIndex(O=>j[O.route.id]!==void 0);je=oe.slice(0,I+1).every(O=>!fs(O.route,y,j))}else je=oe.every(I=>!fs(I.route,y,j))}else je=o.hydrationData!=null;else if(je=!1,oe=[],_.v7_partialHydration){let y=cn(null,p,o.history.location.pathname);y.active&&y.matches&&(xe=!0,oe=y.matches)}let $,T={historyAction:o.history.action,location:o.history.location,matches:oe,initialized:je,navigation:is,restoreScrollPosition:o.hydrationData!=null?!1:null,preventScrollReset:!1,revalidation:"idle",loaderData:o.hydrationData&&o.hydrationData.loaderData||{},actionData:o.hydrationData&&o.hydrationData.actionData||null,errors:o.hydrationData&&o.hydrationData.errors||pe,fetchers:new Map,blockers:new Map},se=ct.Pop,Re=!1,he,Q=!1,ee=new Map,de=null,Oe=!1,Ve=!1,at=[],Me=new Set,W=new Map,te=0,Y=-1,E=new Map,D=new Set,ye=new Map,ke=new Map,Se=new Set,_e=new Map,Te=new Map,Le;function $e(){if(C=o.history.listen(y=>{let{action:j,location:I,delta:O}=y;if(Le){Le(),Le=void 0;return}ol(Te.size===0||O!=null,"You are trying to use a blocker on a POP navigation to a location that was not created by @remix-run/router. This will fail silently in production. This can happen if you are navigating outside the router via `window.history.pushState`/`window.location.hash` instead of using router navigation APIs. This can also happen if you are using createHashRouter and the user manually changes the URL.");let q=zn({currentLocation:T.location,nextLocation:I,historyAction:j});if(q&&O!=null){let ce=new Promise(ve=>{Le=ve});o.history.go(O*-1),Mr(q,{state:"blocked",location:I,proceed(){Mr(q,{state:"proceeding",proceed:void 0,reset:void 0,location:I}),ce.then(()=>o.history.go(O))},reset(){let ve=new Map(T.blockers);ve.set(q,Kl),ot({blockers:ve})}});return}return Ht(j,I)}),a){Uh(i,ee);let y=()=>Ah(i,ee);i.addEventListener("pagehide",y),de=()=>i.removeEventListener("pagehide",y)}return T.initialized||Ht(ct.Pop,T.location,{initialHydration:!0}),$}function vt(){C&&C(),de&&de(),M.clear(),he&&he.abort(),T.fetchers.forEach((y,j)=>Qt(j)),T.blockers.forEach((y,j)=>Dn(j))}function Ir(y){return M.add(y),()=>M.delete(y)}function ot(y,j){j===void 0&&(j={}),T=rt({},T,y);let I=[],O=[];_.v7_fetcherPersist&&T.fetchers.forEach((q,ce)=>{q.state==="idle"&&(Se.has(ce)?O.push(ce):I.push(ce))}),Se.forEach(q=>{!T.fetchers.has(q)&&!W.has(q)&&O.push(q)}),[...M].forEach(q=>q(T,{deletedFetchers:O,viewTransitionOpts:j.viewTransitionOpts,flushSync:j.flushSync===!0})),_.v7_fetcherPersist?(I.forEach(q=>T.fetchers.delete(q)),O.forEach(q=>Qt(q))):O.forEach(q=>Se.delete(q))}function Rt(y,j,I){var O,q;let{flushSync:ce}=I===void 0?{}:I,ve=T.actionData!=null&&T.navigation.formMethod!=null&&sr(T.navigation.formMethod)&&T.navigation.state==="loading"&&((O=y.state)==null?void 0:O._isRedirect)!==!0,ne;j.actionData?Object.keys(j.actionData).length>0?ne=j.actionData:ne=null:ve?ne=T.actionData:ne=null;let ie=j.loaderData?dd(T.loaderData,j.loaderData,j.matches||[],j.errors):T.loaderData,G=T.blockers;G.size>0&&(G=new Map(G),G.forEach((Ne,dt)=>G.set(dt,Kl)));let re=Re===!0||T.navigation.formMethod!=null&&sr(T.navigation.formMethod)&&((q=y.state)==null?void 0:q._isRedirect)!==!0;v&&(p=v,v=void 0),Oe||se===ct.Pop||(se===ct.Push?o.history.push(y,y.state):se===ct.Replace&&o.history.replace(y,y.state));let Ee;if(se===ct.Pop){let Ne=ee.get(T.location.pathname);Ne&&Ne.has(y.pathname)?Ee={currentLocation:T.location,nextLocation:y}:ee.has(y.pathname)&&(Ee={currentLocation:y,nextLocation:T.location})}else if(Q){let Ne=ee.get(T.location.pathname);Ne?Ne.add(y.pathname):(Ne=new Set([y.pathname]),ee.set(T.location.pathname,Ne)),Ee={currentLocation:T.location,nextLocation:y}}ot(rt({},j,{actionData:ne,loaderData:ie,historyAction:se,location:y,initialized:!0,navigation:is,revalidation:"idle",restoreScrollPosition:dl(y,j.matches||T.matches),preventScrollReset:re,blockers:G}),{viewTransitionOpts:Ee,flushSync:ce===!0}),se=ct.Pop,Re=!1,Q=!1,Oe=!1,Ve=!1,at=[]}async function Dr(y,j){if(typeof y=="number"){o.history.go(y);return}let I=ds(T.location,T.matches,g,_.v7_prependBasename,y,_.v7_relativeSplatPath,j==null?void 0:j.fromRouteId,j==null?void 0:j.relative),{path:O,submission:q,error:ce}=nd(_.v7_normalizeFormMethod,!1,I,j),ve=T.location,ne=Xl(T.location,O,j&&j.state);ne=rt({},ne,o.history.encodeLocation(ne));let ie=j&&j.replace!=null?j.replace:void 0,G=ct.Push;ie===!0?G=ct.Replace:ie===!1||q!=null&&sr(q.formMethod)&&q.formAction===T.location.pathname+T.location.search&&(G=ct.Replace);let re=j&&"preventScrollReset"in j?j.preventScrollReset===!0:void 0,Ee=(j&&j.flushSync)===!0,Ne=zn({currentLocation:ve,nextLocation:ne,historyAction:G});if(Ne){Mr(Ne,{state:"blocked",location:ne,proceed(){Mr(Ne,{state:"proceeding",proceed:void 0,reset:void 0,location:ne}),Dr(y,j)},reset(){let dt=new Map(T.blockers);dt.set(Ne,Kl),ot({blockers:dt})}});return}return await Ht(G,ne,{submission:q,pendingError:ce,preventScrollReset:re,replace:j&&j.replace,enableViewTransition:j&&j.viewTransition,flushSync:Ee})}function Ln(){if(be(),ot({revalidation:"loading"}),T.navigation.state!=="submitting"){if(T.navigation.state==="idle"){Ht(T.historyAction,T.location,{startUninterruptedRevalidation:!0});return}Ht(se||T.historyAction,T.navigation.location,{overrideNavigation:T.navigation,enableViewTransition:Q===!0})}}async function Ht(y,j,I){he&&he.abort(),he=null,se=y,Oe=(I&&I.startUninterruptedRevalidation)===!0,ro(T.location,T.matches),Re=(I&&I.preventScrollReset)===!0,Q=(I&&I.enableViewTransition)===!0;let O=v||p,q=I&&I.overrideNavigation,ce=I!=null&&I.initialHydration&&T.matches&&T.matches.length>0&&!xe?T.matches:_n(O,j,g),ve=(I&&I.flushSync)===!0;if(ce&&T.initialized&&!Ve&&Nh(T.location,j)&&!(I&&I.submission&&sr(I.submission.formMethod))){Rt(j,{matches:ce},{flushSync:ve});return}let ne=cn(ce,O,j.pathname);if(ne.active&&ne.matches&&(ce=ne.matches),!ce){let{error:He,notFoundMatches:ze,route:Ge}=cr(j.pathname);Rt(j,{matches:ze,loaderData:{},errors:{[Ge.id]:He}},{flushSync:ve});return}he=new AbortController;let ie=ll(o.history,j,he.signal,I&&I.submission),G;if(I&&I.pendingError)G=[Rn(ce).route.id,{type:Ke.error,error:I.pendingError}];else if(I&&I.submission&&sr(I.submission.formMethod)){let He=await un(ie,j,I.submission,ce,ne.active,{replace:I.replace,flushSync:ve});if(He.shortCircuited)return;if(He.pendingActionResult){let[ze,Ge]=He.pendingActionResult;if($t(Ge)&&Gl(Ge.error)&&Ge.error.status===404){he=null,Rt(j,{matches:He.matches,loaderData:{},errors:{[ze]:Ge.error}});return}}ce=He.matches||ce,G=He.pendingActionResult,q=as(j,I.submission),ve=!1,ne.active=!1,ie=ll(o.history,ie.url,ie.signal)}let{shortCircuited:re,matches:Ee,loaderData:Ne,errors:dt}=await Nn(ie,j,ce,ne.active,q,I&&I.submission,I&&I.fetcherSubmission,I&&I.replace,I&&I.initialHydration===!0,ve,G);re||(he=null,Rt(j,rt({matches:Ee||ce},fd(G),{loaderData:Ne,errors:dt})))}async function un(y,j,I,O,q,ce){ce===void 0&&(ce={}),be();let ve=Oh(j,I);if(ot({navigation:ve},{flushSync:ce.flushSync===!0}),q){let G=await Fr(O,j.pathname,y.signal);if(G.type==="aborted")return{shortCircuited:!0};if(G.type==="error"){let re=Rn(G.partialMatches).route.id;return{matches:G.partialMatches,pendingActionResult:[re,{type:Ke.error,error:G.error}]}}else if(G.matches)O=G.matches;else{let{notFoundMatches:re,error:Ee,route:Ne}=cr(j.pathname);return{matches:re,pendingActionResult:[Ne.id,{type:Ke.error,error:Ee}]}}}let ne,ie=Jl(O,j);if(!ie.route.action&&!ie.route.lazy)ne={type:Ke.error,error:Ot(405,{method:y.method,pathname:j.pathname,routeId:ie.route.id})};else if(ne=(await fe("action",T,y,[ie],O,null))[ie.route.id],y.signal.aborted)return{shortCircuited:!0};if(Pn(ne)){let G;return ce&&ce.replace!=null?G=ce.replace:G=sd(ne.response.headers.get("Location"),new URL(y.url),g)===T.location.pathname+T.location.search,await J(y,ne,!0,{submission:I,replace:G}),{shortCircuited:!0}}if(ln(ne))throw Ot(400,{type:"defer-action"});if($t(ne)){let G=Rn(O,ie.route.id);return(ce&&ce.replace)!==!0&&(se=ct.Push),{matches:O,pendingActionResult:[G.route.id,ne]}}return{matches:O,pendingActionResult:[ie.route.id,ne]}}async function Nn(y,j,I,O,q,ce,ve,ne,ie,G,re){let Ee=q||as(j,ce),Ne=ce||ve||md(Ee),dt=!Oe&&(!_.v7_partialHydration||!ie);if(O){if(dt){let Ye=vr(re);ot(rt({navigation:Ee},Ye!==void 0?{actionData:Ye}:{}),{flushSync:G})}let De=await Fr(I,j.pathname,y.signal);if(De.type==="aborted")return{shortCircuited:!0};if(De.type==="error"){let Ye=Rn(De.partialMatches).route.id;return{matches:De.partialMatches,loaderData:{},errors:{[Ye]:De.error}}}else if(De.matches)I=De.matches;else{let{error:Ye,notFoundMatches:yt,route:pn}=cr(j.pathname);return{matches:yt,loaderData:{},errors:{[pn.id]:Ye}}}}let He=v||p,[ze,Ge]=od(o.history,T,I,Ne,j,_.v7_partialHydration&&ie===!0,_.v7_skipActionErrorRevalidation,Ve,at,Me,Se,ye,D,He,g,re);if(dr(De=>!(I&&I.some(Ye=>Ye.route.id===De))||ze&&ze.some(Ye=>Ye.route.id===De)),Y=++te,ze.length===0&&Ge.length===0){let De=Ut();return Rt(j,rt({matches:I,loaderData:{},errors:re&&$t(re[1])?{[re[0]]:re[1].error}:null},fd(re),De?{fetchers:new Map(T.fetchers)}:{}),{flushSync:G}),{shortCircuited:!0}}if(dt){let De={};if(!O){De.navigation=Ee;let Ye=vr(re);Ye!==void 0&&(De.actionData=Ye)}Ge.length>0&&(De.fetchers=yr(Ge)),ot(De,{flushSync:G})}Ge.forEach(De=>{Lt(De.key),De.controller&&W.set(De.key,De.controller)});let wr=()=>Ge.forEach(De=>Lt(De.key));he&&he.signal.addEventListener("abort",wr);let{loaderResults:fn,fetcherResults:tr}=await We(T,I,ze,Ge,y);if(y.signal.aborted)return{shortCircuited:!0};he&&he.signal.removeEventListener("abort",wr),Ge.forEach(De=>W.delete(De.key));let Ue=ci(fn);if(Ue)return await J(y,Ue.result,!0,{replace:ne}),{shortCircuited:!0};if(Ue=ci(tr),Ue)return D.add(Ue.key),await J(y,Ue.result,!0,{replace:ne}),{shortCircuited:!0};let{loaderData:fl,errors:xr}=cd(T,I,fn,re,Ge,tr,_e);_e.forEach((De,Ye)=>{De.subscribe(yt=>{(yt||De.done)&&_e.delete(Ye)})}),_.v7_partialHydration&&ie&&T.errors&&(xr=rt({},T.errors,xr));let fr=Ut(),Sr=er(Y),Mn=fr||Sr||Ge.length>0;return rt({matches:I,loaderData:fl,errors:xr},Mn?{fetchers:new Map(T.fetchers)}:{})}function vr(y){if(y&&!$t(y[1]))return{[y[0]]:y[1].data};if(T.actionData)return Object.keys(T.actionData).length===0?null:T.actionData}function yr(y){return y.forEach(j=>{let I=T.fetchers.get(j.key),O=ql(void 0,I?I.data:void 0);T.fetchers.set(j.key,O)}),new Map(T.fetchers)}function ur(y,j,I,O){if(u)throw new Error("router.fetch() was called during the server render, but it shouldn't be. You are likely calling a useFetcher() method in the body of your component. Try moving it to a useEffect or a callback.");Lt(y);let q=(O&&O.flushSync)===!0,ce=v||p,ve=ds(T.location,T.matches,g,_.v7_prependBasename,I,_.v7_relativeSplatPath,j,O==null?void 0:O.relative),ne=_n(ce,ve,g),ie=cn(ne,ce,ve);if(ie.active&&ie.matches&&(ne=ie.matches),!ne){Je(y,j,Ot(404,{pathname:ve}),{flushSync:q});return}let{path:G,submission:re,error:Ee}=nd(_.v7_normalizeFormMethod,!0,ve,O);if(Ee){Je(y,j,Ee,{flushSync:q});return}let Ne=Jl(ne,G),dt=(O&&O.preventScrollReset)===!0;if(re&&sr(re.formMethod)){H(y,j,G,Ne,ne,ie.active,q,dt,re);return}ye.set(y,{routeId:j,path:G}),b(y,j,G,Ne,ne,ie.active,q,dt,re)}async function H(y,j,I,O,q,ce,ve,ne,ie){be(),ye.delete(y);function G(Ae){if(!Ae.route.action&&!Ae.route.lazy){let Or=Ot(405,{method:ie.formMethod,pathname:I,routeId:j});return Je(y,j,Or,{flushSync:ve}),!0}return!1}if(!ce&&G(O))return;let re=T.fetchers.get(y);qe(y,bh(ie,re),{flushSync:ve});let Ee=new AbortController,Ne=ll(o.history,I,Ee.signal,ie);if(ce){let Ae=await Fr(q,new URL(Ne.url).pathname,Ne.signal,y);if(Ae.type==="aborted")return;if(Ae.type==="error"){Je(y,j,Ae.error,{flushSync:ve});return}else if(Ae.matches){if(q=Ae.matches,O=Jl(q,I),G(O))return}else{Je(y,j,Ot(404,{pathname:I}),{flushSync:ve});return}}W.set(y,Ee);let dt=te,ze=(await fe("action",T,Ne,[O],q,y))[O.route.id];if(Ne.signal.aborted){W.get(y)===Ee&&W.delete(y);return}if(_.v7_fetcherPersist&&Se.has(y)){if(Pn(ze)||$t(ze)){qe(y,nn(void 0));return}}else{if(Pn(ze))if(W.delete(y),Y>dt){qe(y,nn(void 0));return}else return D.add(y),qe(y,ql(ie)),J(Ne,ze,!1,{fetcherSubmission:ie,preventScrollReset:ne});if($t(ze)){Je(y,j,ze.error);return}}if(ln(ze))throw Ot(400,{type:"defer-action"});let Ge=T.navigation.location||T.location,wr=ll(o.history,Ge,Ee.signal),fn=v||p,tr=T.navigation.state!=="idle"?_n(fn,T.navigation.location,g):T.matches;Ie(tr,"Didn't find any matches after fetcher action");let Ue=++te;E.set(y,Ue);let fl=ql(ie,ze.data);T.fetchers.set(y,fl);let[xr,fr]=od(o.history,T,tr,ie,Ge,!1,_.v7_skipActionErrorRevalidation,Ve,at,Me,Se,ye,D,fn,g,[O.route.id,ze]);fr.filter(Ae=>Ae.key!==y).forEach(Ae=>{let Or=Ae.key,lo=T.fetchers.get(Or),xi=ql(void 0,lo?lo.data:void 0);T.fetchers.set(Or,xi),Lt(Or),Ae.controller&&W.set(Or,Ae.controller)}),ot({fetchers:new Map(T.fetchers)});let Sr=()=>fr.forEach(Ae=>Lt(Ae.key));Ee.signal.addEventListener("abort",Sr);let{loaderResults:Mn,fetcherResults:De}=await We(T,tr,xr,fr,wr);if(Ee.signal.aborted)return;Ee.signal.removeEventListener("abort",Sr),E.delete(y),W.delete(y),fr.forEach(Ae=>W.delete(Ae.key));let Ye=ci(Mn);if(Ye)return J(wr,Ye.result,!1,{preventScrollReset:ne});if(Ye=ci(De),Ye)return D.add(Ye.key),J(wr,Ye.result,!1,{preventScrollReset:ne});let{loaderData:yt,errors:pn}=cd(T,tr,Mn,void 0,fr,De,_e);if(T.fetchers.has(y)){let Ae=nn(ze.data);T.fetchers.set(y,Ae)}er(Ue),T.navigation.state==="loading"&&Ue>Y?(Ie(se,"Expected pending action"),he&&he.abort(),Rt(T.navigation.location,{matches:tr,loaderData:yt,errors:pn,fetchers:new Map(T.fetchers)})):(ot({errors:pn,loaderData:dd(T.loaderData,yt,tr,pn),fetchers:new Map(T.fetchers)}),Ve=!1)}async function b(y,j,I,O,q,ce,ve,ne,ie){let G=T.fetchers.get(y);qe(y,ql(ie,G?G.data:void 0),{flushSync:ve});let re=new AbortController,Ee=ll(o.history,I,re.signal);if(ce){let ze=await Fr(q,new URL(Ee.url).pathname,Ee.signal,y);if(ze.type==="aborted")return;if(ze.type==="error"){Je(y,j,ze.error,{flushSync:ve});return}else if(ze.matches)q=ze.matches,O=Jl(q,I);else{Je(y,j,Ot(404,{pathname:I}),{flushSync:ve});return}}W.set(y,re);let Ne=te,He=(await fe("loader",T,Ee,[O],q,y))[O.route.id];if(ln(He)&&(He=await vs(He,Ee.signal,!0)||He),W.get(y)===re&&W.delete(y),!Ee.signal.aborted){if(Se.has(y)){qe(y,nn(void 0));return}if(Pn(He))if(Y>Ne){qe(y,nn(void 0));return}else{D.add(y),await J(Ee,He,!1,{preventScrollReset:ne});return}if($t(He)){Je(y,j,He.error);return}Ie(!ln(He),"Unhandled fetcher deferred data"),qe(y,nn(He.data))}}async function J(y,j,I,O){let{submission:q,fetcherSubmission:ce,preventScrollReset:ve,replace:ne}=O===void 0?{}:O;j.response.headers.has("X-Remix-Revalidate")&&(Ve=!0);let ie=j.response.headers.get("Location");Ie(ie,"Expected a Location header on the redirect Response"),ie=sd(ie,new URL(y.url),g);let G=Xl(T.location,ie,{_isRedirect:!0});if(a){let ze=!1;if(j.response.headers.has("X-Remix-Reload-Document"))ze=!0;else if(gs.test(ie)){const Ge=o.history.createURL(ie);ze=Ge.origin!==i.location.origin||il(Ge.pathname,g)==null}if(ze){ne?i.location.replace(ie):i.location.assign(ie);return}}he=null;let re=ne===!0||j.response.headers.has("X-Remix-Replace")?ct.Replace:ct.Push,{formMethod:Ee,formAction:Ne,formEncType:dt}=T.navigation;!q&&!ce&&Ee&&Ne&&dt&&(q=md(T.navigation));let He=q||ce;if(yh.has(j.response.status)&&He&&sr(He.formMethod))await Ht(re,G,{submission:rt({},He,{formAction:ie}),preventScrollReset:ve||Re,enableViewTransition:I?Q:void 0});else{let ze=as(G,q);await Ht(re,G,{overrideNavigation:ze,fetcherSubmission:ce,preventScrollReset:ve||Re,enableViewTransition:I?Q:void 0})}}async function fe(y,j,I,O,q,ce){let ve,ne={};try{ve=await _h(x,y,j,I,O,q,ce,h,d)}catch(ie){return O.forEach(G=>{ne[G.route.id]={type:Ke.error,error:ie}}),ne}for(let[ie,G]of Object.entries(ve))if(Ih(G)){let re=G.result;ne[ie]={type:Ke.redirect,response:Th(re,I,ie,q,g,_.v7_relativeSplatPath)}}else ne[ie]=await Ph(G);return ne}async function We(y,j,I,O,q){let ce=y.matches,ve=fe("loader",y,q,I,j,null),ne=Promise.all(O.map(async re=>{if(re.matches&&re.match&&re.controller){let Ne=(await fe("loader",y,ll(o.history,re.path,re.controller.signal),[re.match],re.matches,re.key))[re.match.route.id];return{[re.key]:Ne}}else return Promise.resolve({[re.key]:{type:Ke.error,error:Ot(404,{pathname:re.path})}})})),ie=await ve,G=(await ne).reduce((re,Ee)=>Object.assign(re,Ee),{});return await Promise.all([Mh(j,ie,q.signal,ce,y.loaderData),Fh(j,G,O)]),{loaderResults:ie,fetcherResults:G}}function be(){Ve=!0,at.push(...dr()),ye.forEach((y,j)=>{W.has(j)&&Me.add(j),Lt(j)})}function qe(y,j,I){I===void 0&&(I={}),T.fetchers.set(y,j),ot({fetchers:new Map(T.fetchers)},{flushSync:(I&&I.flushSync)===!0})}function Je(y,j,I,O){O===void 0&&(O={});let q=Rn(T.matches,j);Qt(y),ot({errors:{[q.route.id]:I},fetchers:new Map(T.fetchers)},{flushSync:(O&&O.flushSync)===!0})}function bt(y){return ke.set(y,(ke.get(y)||0)+1),Se.has(y)&&Se.delete(y),T.fetchers.get(y)||wh}function Qt(y){let j=T.fetchers.get(y);W.has(y)&&!(j&&j.state==="loading"&&E.has(y))&&Lt(y),ye.delete(y),E.delete(y),D.delete(y),_.v7_fetcherPersist&&Se.delete(y),Me.delete(y),T.fetchers.delete(y)}function In(y){let j=(ke.get(y)||0)-1;j<=0?(ke.delete(y),Se.add(y),_.v7_fetcherPersist||Qt(y)):ke.set(y,j),ot({fetchers:new Map(T.fetchers)})}function Lt(y){let j=W.get(y);j&&(j.abort(),W.delete(y))}function zr(y){for(let j of y){let I=bt(j),O=nn(I.data);T.fetchers.set(j,O)}}function Ut(){let y=[],j=!1;for(let I of D){let O=T.fetchers.get(I);Ie(O,"Expected fetcher: "+I),O.state==="loading"&&(D.delete(I),y.push(I),j=!0)}return zr(y),j}function er(y){let j=[];for(let[I,O]of E)if(O<y){let q=T.fetchers.get(I);Ie(q,"Expected fetcher: "+I),q.state==="loading"&&(Lt(I),E.delete(I),j.push(I))}return zr(j),j.length>0}function ul(y,j){let I=T.blockers.get(y)||Kl;return Te.get(y)!==j&&Te.set(y,j),I}function Dn(y){T.blockers.delete(y),Te.delete(y)}function Mr(y,j){let I=T.blockers.get(y)||Kl;Ie(I.state==="unblocked"&&j.state==="blocked"||I.state==="blocked"&&j.state==="blocked"||I.state==="blocked"&&j.state==="proceeding"||I.state==="blocked"&&j.state==="unblocked"||I.state==="proceeding"&&j.state==="unblocked","Invalid blocker state transition: "+I.state+" -> "+j.state);let O=new Map(T.blockers);O.set(y,j),ot({blockers:O})}function zn(y){let{currentLocation:j,nextLocation:I,historyAction:O}=y;if(Te.size===0)return;Te.size>1&&ol(!1,"A router only supports one blocker at a time");let q=Array.from(Te.entries()),[ce,ve]=q[q.length-1],ne=T.blockers.get(ce);if(!(ne&&ne.state==="proceeding")&&ve({currentLocation:j,nextLocation:I,historyAction:O}))return ce}function cr(y){let j=Ot(404,{pathname:y}),I=v||p,{matches:O,route:q}=pd(I);return dr(),{notFoundMatches:O,route:q,error:j}}function dr(y){let j=[];return _e.forEach((I,O)=>{(!y||y(O))&&(I.cancel(),j.push(O),_e.delete(O))}),j}function to(y,j,I){if(z=y,K=j,F=I||null,!Ce&&T.navigation===is){Ce=!0;let O=dl(T.location,T.matches);O!=null&&ot({restoreScrollPosition:O})}return()=>{z=null,K=null,F=null}}function cl(y,j){return F&&F(y,j.map(O=>Jp(O,T.loaderData)))||y.key}function ro(y,j){if(z&&K){let I=cl(y,j);z[I]=K()}}function dl(y,j){if(z){let I=cl(y,j),O=z[I];if(typeof O=="number")return O}return null}function cn(y,j,I){if(S)if(y){if(Object.keys(y[0].params).length>0)return{active:!0,matches:di(j,I,g,!0)}}else return{active:!0,matches:di(j,I,g,!0)||[]};return{active:!1,matches:null}}async function Fr(y,j,I,O){if(!S)return{type:"success",matches:y};let q=y;for(;;){let ce=v==null,ve=v||p,ne=h;try{await S({signal:I,path:j,matches:q,fetcherKey:O,patch:(re,Ee)=>{I.aborted||ad(re,Ee,ve,ne,d)}})}catch(re){return{type:"error",error:re,partialMatches:q}}finally{ce&&!I.aborted&&(p=[...p])}if(I.aborted)return{type:"aborted"};let ie=_n(ve,j,g);if(ie)return{type:"success",matches:ie};let G=di(ve,j,g,!0);if(!G||q.length===G.length&&q.every((re,Ee)=>re.route.id===G[Ee].route.id))return{type:"success",matches:null};q=G}}function no(y){h={},v=fi(y,d,void 0,h)}function dn(y,j){let I=v==null;ad(y,j,v||p,h,d),I&&(p=[...p],ot({}))}return $={get basename(){return g},get future(){return _},get state(){return T},get routes(){return p},get window(){return i},initialize:$e,subscribe:Ir,enableScrollRestoration:to,navigate:Dr,fetch:ur,revalidate:Ln,createHref:y=>o.history.createHref(y),encodeLocation:y=>o.history.encodeLocation(y),getFetcher:bt,deleteFetcher:In,dispose:vt,getBlocker:ul,deleteBlocker:Dn,patchRoutes:dn,_internalFetchControllers:W,_internalActiveDeferreds:_e,_internalSetRoutes:no},$}function kh(o){return o!=null&&("formData"in o&&o.formData!=null||"body"in o&&o.body!==void 0)}function ds(o,i,a,u,d,h,p,v){let g,x;if(p){g=[];for(let _ of i)if(g.push(_),_.route.id===p){x=_;break}}else g=i,x=i[i.length-1];let S=vi(d||".",gi(g,h),il(o.pathname,a)||o.pathname,v==="path");if(d==null&&(S.search=o.search,S.hash=o.hash),(d==null||d===""||d===".")&&x){let _=ys(S.search);if(x.route.index&&!_)S.search=S.search?S.search.replace(/^\?/,"?index&"):"?index";else if(!x.route.index&&_){let C=new URLSearchParams(S.search),M=C.getAll("index");C.delete("index"),M.filter(F=>F).forEach(F=>C.append("index",F));let z=C.toString();S.search=z?"?"+z:""}}return u&&a!=="/"&&(S.pathname=S.pathname==="/"?a:Lr([a,S.pathname])),Tn(S)}function nd(o,i,a,u){if(!u||!kh(u))return{path:a};if(u.formMethod&&!zh(u.formMethod))return{path:a,error:Ot(405,{method:u.formMethod})};let d=()=>({path:a,error:Ot(400,{type:"invalid-body"})}),h=u.formMethod||"get",p=o?h.toUpperCase():h.toLowerCase(),v=Od(a);if(u.body!==void 0){if(u.formEncType==="text/plain"){if(!sr(p))return d();let C=typeof u.body=="string"?u.body:u.body instanceof FormData||u.body instanceof URLSearchParams?Array.from(u.body.entries()).reduce((M,z)=>{let[F,K]=z;return""+M+F+"="+K+`
`},""):String(u.body);return{path:a,submission:{formMethod:p,formAction:v,formEncType:u.formEncType,formData:void 0,json:void 0,text:C}}}else if(u.formEncType==="application/json"){if(!sr(p))return d();try{let C=typeof u.body=="string"?JSON.parse(u.body):u.body;return{path:a,submission:{formMethod:p,formAction:v,formEncType:u.formEncType,formData:void 0,json:C,text:void 0}}}catch{return d()}}}Ie(typeof FormData=="function","FormData is not available in this environment");let g,x;if(u.formData)g=ps(u.formData),x=u.formData;else if(u.body instanceof FormData)g=ps(u.body),x=u.body;else if(u.body instanceof URLSearchParams)g=u.body,x=ud(g);else if(u.body==null)g=new URLSearchParams,x=new FormData;else try{g=new URLSearchParams(u.body),x=ud(g)}catch{return d()}let S={formMethod:p,formAction:v,formEncType:u&&u.formEncType||"application/x-www-form-urlencoded",formData:x,json:void 0,text:void 0};if(sr(S.formMethod))return{path:a,submission:S};let _=an(a);return i&&_.search&&ys(_.search)&&g.append("index",""),_.search="?"+g,{path:Tn(_),submission:S}}function ld(o,i,a){a===void 0&&(a=!1);let u=o.findIndex(d=>d.route.id===i);return u>=0?o.slice(0,a?u+1:u):o}function od(o,i,a,u,d,h,p,v,g,x,S,_,C,M,z,F){let K=F?$t(F[1])?F[1].error:F[1].data:void 0,Ce=o.createURL(i.location),oe=o.createURL(d),xe=a;h&&i.errors?xe=ld(a,Object.keys(i.errors)[0],!0):F&&$t(F[1])&&(xe=ld(a,F[0]));let pe=F?F[1].statusCode:void 0,je=p&&pe&&pe>=400,$=xe.filter((se,Re)=>{let{route:he}=se;if(he.lazy)return!0;if(he.loader==null)return!1;if(h)return fs(he,i.loaderData,i.errors);if(Eh(i.loaderData,i.matches[Re],se)||g.some(de=>de===se.route.id))return!0;let Q=i.matches[Re],ee=se;return id(se,rt({currentUrl:Ce,currentParams:Q.params,nextUrl:oe,nextParams:ee.params},u,{actionResult:K,actionStatus:pe,defaultShouldRevalidate:je?!1:v||Ce.pathname+Ce.search===oe.pathname+oe.search||Ce.search!==oe.search||Md(Q,ee)}))}),T=[];return _.forEach((se,Re)=>{if(h||!a.some(Oe=>Oe.route.id===se.routeId)||S.has(Re))return;let he=_n(M,se.path,z);if(!he){T.push({key:Re,routeId:se.routeId,path:se.path,matches:null,match:null,controller:null});return}let Q=i.fetchers.get(Re),ee=Jl(he,se.path),de=!1;C.has(Re)?de=!1:x.has(Re)?(x.delete(Re),de=!0):Q&&Q.state!=="idle"&&Q.data===void 0?de=v:de=id(ee,rt({currentUrl:Ce,currentParams:i.matches[i.matches.length-1].params,nextUrl:oe,nextParams:a[a.length-1].params},u,{actionResult:K,actionStatus:pe,defaultShouldRevalidate:je?!1:v})),de&&T.push({key:Re,routeId:se.routeId,path:se.path,matches:he,match:ee,controller:new AbortController})}),[$,T]}function fs(o,i,a){if(o.lazy)return!0;if(!o.loader)return!1;let u=i!=null&&i[o.id]!==void 0,d=a!=null&&a[o.id]!==void 0;return!u&&d?!1:typeof o.loader=="function"&&o.loader.hydrate===!0?!0:!u&&!d}function Eh(o,i,a){let u=!i||a.route.id!==i.route.id,d=o[a.route.id]===void 0;return u||d}function Md(o,i){let a=o.route.path;return o.pathname!==i.pathname||a!=null&&a.endsWith("*")&&o.params["*"]!==i.params["*"]}function id(o,i){if(o.route.shouldRevalidate){let a=o.route.shouldRevalidate(i);if(typeof a=="boolean")return a}return i.defaultShouldRevalidate}function ad(o,i,a,u,d){var h;let p;if(o){let x=u[o];Ie(x,"No route found to patch children into: routeId = "+o),x.children||(x.children=[]),p=x.children}else p=a;let v=i.filter(x=>!p.some(S=>Fd(x,S))),g=fi(v,d,[o||"_","patch",String(((h=p)==null?void 0:h.length)||"0")],u);p.push(...g)}function Fd(o,i){return"id"in o&&"id"in i&&o.id===i.id?!0:o.index===i.index&&o.path===i.path&&o.caseSensitive===i.caseSensitive?(!o.children||o.children.length===0)&&(!i.children||i.children.length===0)?!0:o.children.every((a,u)=>{var d;return(d=i.children)==null?void 0:d.some(h=>Fd(a,h))}):!1}async function Ch(o,i,a){if(!o.lazy)return;let u=await o.lazy();if(!o.lazy)return;let d=a[o.id];Ie(d,"No route found in manifest");let h={};for(let p in u){let g=d[p]!==void 0&&p!=="hasErrorBoundary";ol(!g,'Route "'+d.id+'" has a static property "'+p+'" defined but its lazy function is also returning a value for this property. '+('The lazy route property "'+p+'" will be ignored.')),!g&&!qp.has(p)&&(h[p]=u[p])}Object.assign(d,h),Object.assign(d,rt({},i(d),{lazy:void 0}))}async function jh(o){let{matches:i}=o,a=i.filter(d=>d.shouldLoad);return(await Promise.all(a.map(d=>d.resolve()))).reduce((d,h,p)=>Object.assign(d,{[a[p].route.id]:h}),{})}async function _h(o,i,a,u,d,h,p,v,g,x){let S=h.map(M=>M.route.lazy?Ch(M.route,g,v):void 0),_=h.map((M,z)=>{let F=S[z],K=d.some(oe=>oe.route.id===M.route.id);return rt({},M,{shouldLoad:K,resolve:async oe=>(oe&&u.method==="GET"&&(M.route.lazy||M.route.loader)&&(K=!0),K?Rh(i,u,M,F,oe,x):Promise.resolve({type:Ke.data,result:void 0}))})}),C=await o({matches:_,request:u,params:h[0].params,fetcherKey:p,context:x});try{await Promise.all(S)}catch{}return C}async function Rh(o,i,a,u,d,h){let p,v,g=x=>{let S,_=new Promise((z,F)=>S=F);v=()=>S(),i.signal.addEventListener("abort",v);let C=z=>typeof x!="function"?Promise.reject(new Error("You cannot call the handler for a route which defines a boolean "+('"'+o+'" [routeId: '+a.route.id+"]"))):x({request:i,params:a.params,context:h},...z!==void 0?[z]:[]),M=(async()=>{try{return{type:"data",result:await(d?d(F=>C(F)):C())}}catch(z){return{type:"error",result:z}}})();return Promise.race([M,_])};try{let x=a.route[o];if(u)if(x){let S,[_]=await Promise.all([g(x).catch(C=>{S=C}),u]);if(S!==void 0)throw S;p=_}else if(await u,x=a.route[o],x)p=await g(x);else if(o==="action"){let S=new URL(i.url),_=S.pathname+S.search;throw Ot(405,{method:i.method,pathname:_,routeId:a.route.id})}else return{type:Ke.data,result:void 0};else if(x)p=await g(x);else{let S=new URL(i.url),_=S.pathname+S.search;throw Ot(404,{pathname:_})}Ie(p.result!==void 0,"You defined "+(o==="action"?"an action":"a loader")+" for route "+('"'+a.route.id+"\" but didn't return anything from your `"+o+"` ")+"function. Please return a value or `null`.")}catch(x){return{type:Ke.error,result:x}}finally{v&&i.signal.removeEventListener("abort",v)}return p}async function Ph(o){let{result:i,type:a}=o;if(bd(i)){let _;try{let C=i.headers.get("Content-Type");C&&/\bapplication\/json\b/.test(C)?i.body==null?_=null:_=await i.json():_=await i.text()}catch(C){return{type:Ke.error,error:C}}return a===Ke.error?{type:Ke.error,error:new pi(i.status,i.statusText,_),statusCode:i.status,headers:i.headers}:{type:Ke.data,data:_,statusCode:i.status,headers:i.headers}}if(a===Ke.error){if(hd(i)){var u,d;if(i.data instanceof Error){var h,p;return{type:Ke.error,error:i.data,statusCode:(h=i.init)==null?void 0:h.status,headers:(p=i.init)!=null&&p.headers?new Headers(i.init.headers):void 0}}return{type:Ke.error,error:new pi(((u=i.init)==null?void 0:u.status)||500,void 0,i.data),statusCode:Gl(i)?i.status:void 0,headers:(d=i.init)!=null&&d.headers?new Headers(i.init.headers):void 0}}return{type:Ke.error,error:i,statusCode:Gl(i)?i.status:void 0}}if(Dh(i)){var v,g;return{type:Ke.deferred,deferredData:i,statusCode:(v=i.init)==null?void 0:v.status,headers:((g=i.init)==null?void 0:g.headers)&&new Headers(i.init.headers)}}if(hd(i)){var x,S;return{type:Ke.data,data:i.data,statusCode:(x=i.init)==null?void 0:x.status,headers:(S=i.init)!=null&&S.headers?new Headers(i.init.headers):void 0}}return{type:Ke.data,data:i}}function Th(o,i,a,u,d,h){let p=o.headers.get("Location");if(Ie(p,"Redirects returned/thrown from loaders/actions must have a Location header"),!gs.test(p)){let v=u.slice(0,u.findIndex(g=>g.route.id===a)+1);p=ds(new URL(i.url),v,d,!0,p,h),o.headers.set("Location",p)}return o}function sd(o,i,a){if(gs.test(o)){let u=o,d=u.startsWith("//")?new URL(i.protocol+u):new URL(u),h=il(d.pathname,a)!=null;if(d.origin===i.origin&&h)return d.pathname+d.search+d.hash}return o}function ll(o,i,a,u){let d=o.createURL(Od(i)).toString(),h={signal:a};if(u&&sr(u.formMethod)){let{formMethod:p,formEncType:v}=u;h.method=p.toUpperCase(),v==="application/json"?(h.headers=new Headers({"Content-Type":v}),h.body=JSON.stringify(u.json)):v==="text/plain"?h.body=u.text:v==="application/x-www-form-urlencoded"&&u.formData?h.body=ps(u.formData):h.body=u.formData}return new Request(d,h)}function ps(o){let i=new URLSearchParams;for(let[a,u]of o.entries())i.append(a,typeof u=="string"?u:u.name);return i}function ud(o){let i=new FormData;for(let[a,u]of o.entries())i.append(a,u);return i}function Lh(o,i,a,u,d){let h={},p=null,v,g=!1,x={},S=a&&$t(a[1])?a[1].error:void 0;return o.forEach(_=>{if(!(_.route.id in i))return;let C=_.route.id,M=i[C];if(Ie(!Pn(M),"Cannot handle redirect results in processLoaderData"),$t(M)){let z=M.error;S!==void 0&&(z=S,S=void 0),p=p||{};{let F=Rn(o,C);p[F.route.id]==null&&(p[F.route.id]=z)}h[C]=void 0,g||(g=!0,v=Gl(M.error)?M.error.status:500),M.headers&&(x[C]=M.headers)}else ln(M)?(u.set(C,M.deferredData),h[C]=M.deferredData.data,M.statusCode!=null&&M.statusCode!==200&&!g&&(v=M.statusCode),M.headers&&(x[C]=M.headers)):(h[C]=M.data,M.statusCode&&M.statusCode!==200&&!g&&(v=M.statusCode),M.headers&&(x[C]=M.headers))}),S!==void 0&&a&&(p={[a[0]]:S},h[a[0]]=void 0),{loaderData:h,errors:p,statusCode:v||200,loaderHeaders:x}}function cd(o,i,a,u,d,h,p){let{loaderData:v,errors:g}=Lh(i,a,u,p);return d.forEach(x=>{let{key:S,match:_,controller:C}=x,M=h[S];if(Ie(M,"Did not find corresponding fetcher result"),!(C&&C.signal.aborted))if($t(M)){let z=Rn(o.matches,_==null?void 0:_.route.id);g&&g[z.route.id]||(g=rt({},g,{[z.route.id]:M.error})),o.fetchers.delete(S)}else if(Pn(M))Ie(!1,"Unhandled fetcher revalidation redirect");else if(ln(M))Ie(!1,"Unhandled fetcher deferred data");else{let z=nn(M.data);o.fetchers.set(S,z)}}),{loaderData:v,errors:g}}function dd(o,i,a,u){let d=rt({},i);for(let h of a){let p=h.route.id;if(i.hasOwnProperty(p)?i[p]!==void 0&&(d[p]=i[p]):o[p]!==void 0&&h.route.loader&&(d[p]=o[p]),u&&u.hasOwnProperty(p))break}return d}function fd(o){return o?$t(o[1])?{actionData:{}}:{actionData:{[o[0]]:o[1].data}}:{}}function Rn(o,i){return(i?o.slice(0,o.findIndex(u=>u.route.id===i)+1):[...o]).reverse().find(u=>u.route.hasErrorBoundary===!0)||o[0]}function pd(o){let i=o.length===1?o[0]:o.find(a=>a.index||!a.path||a.path==="/")||{id:"__shim-error-route__"};return{matches:[{params:{},pathname:"",pathnameBase:"",route:i}],route:i}}function Ot(o,i){let{pathname:a,routeId:u,method:d,type:h,message:p}=i===void 0?{}:i,v="Unknown Server Error",g="Unknown @remix-run/router error";return o===400?(v="Bad Request",d&&a&&u?g="You made a "+d+' request to "'+a+'" but '+('did not provide a `loader` for route "'+u+'", ')+"so there is no way to handle the request.":h==="defer-action"?g="defer() is not supported in actions":h==="invalid-body"&&(g="Unable to encode submission body")):o===403?(v="Forbidden",g='Route "'+u+'" does not match URL "'+a+'"'):o===404?(v="Not Found",g='No route matches URL "'+a+'"'):o===405&&(v="Method Not Allowed",d&&a&&u?g="You made a "+d.toUpperCase()+' request to "'+a+'" but '+('did not provide an `action` for route "'+u+'", ')+"so there is no way to handle the request.":d&&(g='Invalid request method "'+d.toUpperCase()+'"')),new pi(o||500,v,new Error(g),!0)}function ci(o){let i=Object.entries(o);for(let a=i.length-1;a>=0;a--){let[u,d]=i[a];if(Pn(d))return{key:u,result:d}}}function Od(o){let i=typeof o=="string"?an(o):o;return Tn(rt({},i,{hash:""}))}function Nh(o,i){return o.pathname!==i.pathname||o.search!==i.search?!1:o.hash===""?i.hash!=="":o.hash===i.hash?!0:i.hash!==""}function Ih(o){return bd(o.result)&&vh.has(o.result.status)}function ln(o){return o.type===Ke.deferred}function $t(o){return o.type===Ke.error}function Pn(o){return(o&&o.type)===Ke.redirect}function hd(o){return typeof o=="object"&&o!=null&&"type"in o&&"data"in o&&"init"in o&&o.type==="DataWithResponseInit"}function Dh(o){let i=o;return i&&typeof i=="object"&&typeof i.data=="object"&&typeof i.subscribe=="function"&&typeof i.cancel=="function"&&typeof i.resolveData=="function"}function bd(o){return o!=null&&typeof o.status=="number"&&typeof o.statusText=="string"&&typeof o.headers=="object"&&typeof o.body<"u"}function zh(o){return gh.has(o.toLowerCase())}function sr(o){return hh.has(o.toLowerCase())}async function Mh(o,i,a,u,d){let h=Object.entries(i);for(let p=0;p<h.length;p++){let[v,g]=h[p],x=o.find(C=>(C==null?void 0:C.route.id)===v);if(!x)continue;let S=u.find(C=>C.route.id===x.route.id),_=S!=null&&!Md(S,x)&&(d&&d[x.route.id])!==void 0;ln(g)&&_&&await vs(g,a,!1).then(C=>{C&&(i[v]=C)})}}async function Fh(o,i,a){for(let u=0;u<a.length;u++){let{key:d,routeId:h,controller:p}=a[u],v=i[d];o.find(x=>(x==null?void 0:x.route.id)===h)&&ln(v)&&(Ie(p,"Expected an AbortController for revalidating fetcher deferred result"),await vs(v,p.signal,!0).then(x=>{x&&(i[d]=x)}))}}async function vs(o,i,a){if(a===void 0&&(a=!1),!await o.deferredData.resolveData(i)){if(a)try{return{type:Ke.data,data:o.deferredData.unwrappedData}}catch(d){return{type:Ke.error,error:d}}return{type:Ke.data,data:o.deferredData.data}}}function ys(o){return new URLSearchParams(o).getAll("index").some(i=>i==="")}function Jl(o,i){let a=typeof i=="string"?an(i).search:i.search;if(o[o.length-1].route.index&&ys(a||""))return o[o.length-1];let u=Id(o);return u[u.length-1]}function md(o){let{formMethod:i,formAction:a,formEncType:u,text:d,formData:h,json:p}=o;if(!(!i||!a||!u)){if(d!=null)return{formMethod:i,formAction:a,formEncType:u,formData:void 0,json:void 0,text:d};if(h!=null)return{formMethod:i,formAction:a,formEncType:u,formData:h,json:void 0,text:void 0};if(p!==void 0)return{formMethod:i,formAction:a,formEncType:u,formData:void 0,json:p,text:void 0}}}function as(o,i){return i?{state:"loading",location:o,formMethod:i.formMethod,formAction:i.formAction,formEncType:i.formEncType,formData:i.formData,json:i.json,text:i.text}:{state:"loading",location:o,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0}}function Oh(o,i){return{state:"submitting",location:o,formMethod:i.formMethod,formAction:i.formAction,formEncType:i.formEncType,formData:i.formData,json:i.json,text:i.text}}function ql(o,i){return o?{state:"loading",formMethod:o.formMethod,formAction:o.formAction,formEncType:o.formEncType,formData:o.formData,json:o.json,text:o.text,data:i}:{state:"loading",formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0,data:i}}function bh(o,i){return{state:"submitting",formMethod:o.formMethod,formAction:o.formAction,formEncType:o.formEncType,formData:o.formData,json:o.json,text:o.text,data:i?i.data:void 0}}function nn(o){return{state:"idle",formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0,data:o}}function Uh(o,i){try{let a=o.sessionStorage.getItem(zd);if(a){let u=JSON.parse(a);for(let[d,h]of Object.entries(u||{}))h&&Array.isArray(h)&&i.set(d,new Set(h||[]))}}catch{}}function Ah(o,i){if(i.size>0){let a={};for(let[u,d]of i)a[u]=[...d];try{o.sessionStorage.setItem(zd,JSON.stringify(a))}catch(u){ol(!1,"Failed to save applied view transitions in sessionStorage ("+u+").")}}}/**
* React Router v6.30.1
*
* Copyright (c) Remix Software Inc.
*
* This source code is licensed under the MIT license found in the
* LICENSE.md file in the root directory of this source tree.
*
* @license MIT
*/function hi(){return hi=Object.assign?Object.assign.bind():function(o){for(var i=1;i<arguments.length;i++){var a=arguments[i];for(var u in a)Object.prototype.hasOwnProperty.call(a,u)&&(o[u]=a[u])}return o},hi.apply(this,arguments)}const yi=N.createContext(null),Ud=N.createContext(null),sn=N.createContext(null),ws=N.createContext(null),Nr=N.createContext({outlet:null,matches:[],isDataRoute:!1}),Ad=N.createContext(null);function Bh(o,i){let{relative:a}=i===void 0?{}:i;al()||Ie(!1);let{basename:u,navigator:d}=N.useContext(sn),{hash:h,pathname:p,search:v}=Wd(o,{relative:a}),g=p;return u!=="/"&&(g=p==="/"?u:Lr([u,p])),d.createHref({pathname:g,search:v,hash:h})}function al(){return N.useContext(ws)!=null}function sl(){return al()||Ie(!1),N.useContext(ws).location}function Bd(o){N.useContext(sn).static||N.useLayoutEffect(o)}function wi(){let{isDataRoute:o}=N.useContext(Nr);return o?tm():Wh()}function Wh(){al()||Ie(!1);let o=N.useContext(yi),{basename:i,future:a,navigator:u}=N.useContext(sn),{matches:d}=N.useContext(Nr),{pathname:h}=sl(),p=JSON.stringify(gi(d,a.v7_relativeSplatPath)),v=N.useRef(!1);return Bd(()=>{v.current=!0}),N.useCallback(function(x,S){if(S===void 0&&(S={}),!v.current)return;if(typeof x=="number"){u.go(x);return}let _=vi(x,JSON.parse(p),h,S.relative==="path");o==null&&i!=="/"&&(_.pathname=_.pathname==="/"?i:Lr([i,_.pathname])),(S.replace?u.replace:u.push)(_,S.state,S)},[i,u,p,h,o])}const Vh=N.createContext(null);function $h(o){let i=N.useContext(Nr).outlet;return i&&N.createElement(Vh.Provider,{value:o},i)}function Wd(o,i){let{relative:a}=i===void 0?{}:i,{future:u}=N.useContext(sn),{matches:d}=N.useContext(Nr),{pathname:h}=sl(),p=JSON.stringify(gi(d,u.v7_relativeSplatPath));return N.useMemo(()=>vi(o,JSON.parse(p),h,a==="path"),[o,p,h,a])}function Hh(o,i,a,u){al()||Ie(!1);let{navigator:d}=N.useContext(sn),{matches:h}=N.useContext(Nr),p=h[h.length-1],v=p?p.params:{};p&&p.pathname;let g=p?p.pathnameBase:"/";p&&p.route;let x=sl(),S;S=x;let _=S.pathname||"/",C=_;if(g!=="/"){let F=g.replace(/^\//,"").split("/");C="/"+_.replace(/^\//,"").split("/").slice(F.length).join("/")}let M=_n(o,{pathname:C});return Jh(M&&M.map(F=>Object.assign({},F,{params:Object.assign({},v,F.params),pathname:Lr([g,d.encodeLocation?d.encodeLocation(F.pathname).pathname:F.pathname]),pathnameBase:F.pathnameBase==="/"?g:Lr([g,d.encodeLocation?d.encodeLocation(F.pathnameBase).pathname:F.pathnameBase])})),h,a,u)}function Qh(){let o=em(),i=Gl(o)?o.status+" "+o.statusText:o instanceof Error?o.message:JSON.stringify(o),a=o instanceof Error?o.stack:null,d={padding:"0.5rem",backgroundColor:"rgba(200,200,200, 0.5)"};return N.createElement(N.Fragment,null,N.createElement("h2",null,"Unexpected Application Error!"),N.createElement("h3",{style:{fontStyle:"italic"}},i),a?N.createElement("pre",{style:d},a):null,null)}const Kh=N.createElement(Qh,null);class qh extends N.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,a){return a.location!==i.location||a.revalidation!=="idle"&&i.revalidation==="idle"?{error:i.error,location:i.location,revalidation:i.revalidation}:{error:i.error!==void 0?i.error:a.error,location:a.location,revalidation:i.revalidation||a.revalidation}}componentDidCatch(i,a){console.error("React Router caught the following error during render",i,a)}render(){return this.state.error!==void 0?N.createElement(Nr.Provider,{value:this.props.routeContext},N.createElement(Ad.Provider,{value:this.state.error,children:this.props.component})):this.props.children}}function Yh(o){let{routeContext:i,match:a,children:u}=o,d=N.useContext(yi);return d&&d.static&&d.staticContext&&(a.route.errorElement||a.route.ErrorBoundary)&&(d.staticContext._deepestRenderedBoundaryId=a.route.id),N.createElement(Nr.Provider,{value:i},u)}function Jh(o,i,a,u){var d;if(i===void 0&&(i=[]),a===void 0&&(a=null),u===void 0&&(u=null),o==null){var h;if(!a)return null;if(a.errors)o=a.matches;else if((h=u)!=null&&h.v7_partialHydration&&i.length===0&&!a.initialized&&a.matches.length>0)o=a.matches;else return null}let p=o,v=(d=a)==null?void 0:d.errors;if(v!=null){let S=p.findIndex(_=>_.route.id&&(v==null?void 0:v[_.route.id])!==void 0);S>=0||Ie(!1),p=p.slice(0,Math.min(p.length,S+1))}let g=!1,x=-1;if(a&&u&&u.v7_partialHydration)for(let S=0;S<p.length;S++){let _=p[S];if((_.route.HydrateFallback||_.route.hydrateFallbackElement)&&(x=S),_.route.id){let{loaderData:C,errors:M}=a,z=_.route.loader&&C[_.route.id]===void 0&&(!M||M[_.route.id]===void 0);if(_.route.lazy||z){g=!0,x>=0?p=p.slice(0,x+1):p=[p[0]];break}}}return p.reduceRight((S,_,C)=>{let M,z=!1,F=null,K=null;a&&(M=v&&_.route.id?v[_.route.id]:void 0,F=_.route.errorElement||Kh,g&&(x<0&&C===0?(rm("route-fallback"),z=!0,K=null):x===C&&(z=!0,K=_.route.hydrateFallbackElement||null)));let Ce=i.concat(p.slice(0,C+1)),oe=()=>{let xe;return M?xe=F:z?xe=K:_.route.Component?xe=N.createElement(_.route.Component,null):_.route.element?xe=_.route.element:xe=S,N.createElement(Yh,{match:_,routeContext:{outlet:S,matches:Ce,isDataRoute:a!=null},children:xe})};return a&&(_.route.ErrorBoundary||_.route.errorElement||C===0)?N.createElement(qh,{location:a.location,revalidation:a.revalidation,component:F,error:M,children:oe(),routeContext:{outlet:null,matches:Ce,isDataRoute:!0}}):oe()},null)}var Vd=(function(o){return o.UseBlocker="useBlocker",o.UseRevalidator="useRevalidator",o.UseNavigateStable="useNavigate",o})(Vd||{}),$d=(function(o){return o.UseBlocker="useBlocker",o.UseLoaderData="useLoaderData",o.UseActionData="useActionData",o.UseRouteError="useRouteError",o.UseNavigation="useNavigation",o.UseRouteLoaderData="useRouteLoaderData",o.UseMatches="useMatches",o.UseRevalidator="useRevalidator",o.UseNavigateStable="useNavigate",o.UseRouteId="useRouteId",o})($d||{});function Xh(o){let i=N.useContext(yi);return i||Ie(!1),i}function Gh(o){let i=N.useContext(Ud);return i||Ie(!1),i}function Zh(o){let i=N.useContext(Nr);return i||Ie(!1),i}function Hd(o){let i=Zh(),a=i.matches[i.matches.length-1];return a.route.id||Ie(!1),a.route.id}function em(){var o;let i=N.useContext(Ad),a=Gh(),u=Hd();return i!==void 0?i:(o=a.errors)==null?void 0:o[u]}function tm(){let{router:o}=Xh(Vd.UseNavigateStable),i=Hd($d.UseNavigateStable),a=N.useRef(!1);return Bd(()=>{a.current=!0}),N.useCallback(function(d,h){h===void 0&&(h={}),a.current&&(typeof d=="number"?o.navigate(d):o.navigate(d,hi({fromRouteId:i},h)))},[o,i])}const gd={};function rm(o,i,a){gd[o]||(gd[o]=!0)}function nm(o,i){o==null||o.v7_startTransition,(o==null?void 0:o.v7_relativeSplatPath)===void 0&&(!i||i.v7_relativeSplatPath),i&&(i.v7_fetcherPersist,i.v7_normalizeFormMethod,i.v7_partialHydration,i.v7_skipActionErrorRevalidation)}function ss(o){let{to:i,replace:a,state:u,relative:d}=o;al()||Ie(!1);let{future:h,static:p}=N.useContext(sn),{matches:v}=N.useContext(Nr),{pathname:g}=sl(),x=wi(),S=vi(i,gi(v,h.v7_relativeSplatPath),g,d==="path"),_=JSON.stringify(S);return N.useEffect(()=>x(JSON.parse(_),{replace:a,state:u,relative:d}),[x,_,d,a,u]),null}function lm(o){return $h(o.context)}function om(o){let{basename:i="/",children:a=null,location:u,navigationType:d=ct.Pop,navigator:h,static:p=!1,future:v}=o;al()&&Ie(!1);let g=i.replace(/^\/*/,"/"),x=N.useMemo(()=>({basename:g,navigator:h,static:p,future:hi({v7_relativeSplatPath:!1},v)}),[g,v,h,p]);typeof u=="string"&&(u=an(u));let{pathname:S="/",search:_="",hash:C="",state:M=null,key:z="default"}=u,F=N.useMemo(()=>{let K=il(S,g);return K==null?null:{location:{pathname:K,search:_,hash:C,state:M,key:z},navigationType:d}},[g,S,_,C,M,z,d]);return F==null?null:N.createElement(sn.Provider,{value:x},N.createElement(ws.Provider,{children:a,value:F}))}new Promise(()=>{});function im(o){let i={hasErrorBoundary:o.ErrorBoundary!=null||o.errorElement!=null};return o.Component&&Object.assign(i,{element:N.createElement(o.Component),Component:void 0}),o.HydrateFallback&&Object.assign(i,{hydrateFallbackElement:N.createElement(o.HydrateFallback),HydrateFallback:void 0}),o.ErrorBoundary&&Object.assign(i,{errorElement:N.createElement(o.ErrorBoundary),ErrorBoundary:void 0}),i}/**
* React Router DOM v6.30.1
*
* Copyright (c) Remix Software Inc.
*
* This source code is licensed under the MIT license found in the
* LICENSE.md file in the root directory of this source tree.
*
* @license MIT
*/function Zl(){return Zl=Object.assign?Object.assign.bind():function(o){for(var i=1;i<arguments.length;i++){var a=arguments[i];for(var u in a)Object.prototype.hasOwnProperty.call(a,u)&&(o[u]=a[u])}return o},Zl.apply(this,arguments)}function am(o,i){if(o==null)return{};var a={},u=Object.keys(o),d,h;for(h=0;h<u.length;h++)d=u[h],!(i.indexOf(d)>=0)&&(a[d]=o[d]);return a}function sm(o){return!!(o.metaKey||o.altKey||o.ctrlKey||o.shiftKey)}function um(o,i){return o.button===0&&(!i||i==="_self")&&!sm(o)}const cm=["onClick","relative","reloadDocument","replace","state","target","to","preventScrollReset","viewTransition"],dm="6";try{window.__reactRouterVersion=dm}catch{}function fm(o,i){return Sh({basename:i==null?void 0:i.basename,future:Zl({},i==null?void 0:i.future,{v7_prependBasename:!0}),history:Hp({window:i==null?void 0:i.window}),hydrationData:(i==null?void 0:i.hydrationData)||pm(),routes:o,mapRouteProperties:im,dataStrategy:i==null?void 0:i.dataStrategy,patchRoutesOnNavigation:i==null?void 0:i.patchRoutesOnNavigation,window:i==null?void 0:i.window}).initialize()}function pm(){var o;let i=(o=window)==null?void 0:o.__staticRouterHydrationData;return i&&i.errors&&(i=Zl({},i,{errors:hm(i.errors)})),i}function hm(o){if(!o)return null;let i=Object.entries(o),a={};for(let[u,d]of i)if(d&&d.__type==="RouteErrorResponse")a[u]=new pi(d.status,d.statusText,d.data,d.internal===!0);else if(d&&d.__type==="Error"){if(d.__subType){let h=window[d.__subType];if(typeof h=="function")try{let p=new h(d.message);p.stack="",a[u]=p}catch{}}if(a[u]==null){let h=new Error(d.message);h.stack="",a[u]=h}}else a[u]=d;return a}const mm=N.createContext({isTransitioning:!1}),gm=N.createContext(new Map),vm="startTransition",vd=Op[vm],ym="flushSync",yd=$p[ym];function wm(o){vd?vd(o):o()}function Yl(o){yd?yd(o):o()}class xm{constructor(){this.status="pending",this.promise=new Promise((i,a)=>{this.resolve=u=>{this.status==="pending"&&(this.status="resolved",i(u))},this.reject=u=>{this.status==="pending"&&(this.status="rejected",a(u))}})}}function Sm(o){let{fallbackElement:i,router:a,future:u}=o,[d,h]=N.useState(a.state),[p,v]=N.useState(),[g,x]=N.useState({isTransitioning:!1}),[S,_]=N.useState(),[C,M]=N.useState(),[z,F]=N.useState(),K=N.useRef(new Map),{v7_startTransition:Ce}=u||{},oe=N.useCallback(se=>{Ce?wm(se):se()},[Ce]),xe=N.useCallback((se,Re)=>{let{deletedFetchers:he,flushSync:Q,viewTransitionOpts:ee}=Re;se.fetchers.forEach((Oe,Ve)=>{Oe.data!==void 0&&K.current.set(Ve,Oe.data)}),he.forEach(Oe=>K.current.delete(Oe));let de=a.window==null||a.window.document==null||typeof a.window.document.startViewTransition!="function";if(!ee||de){Q?Yl(()=>h(se)):oe(()=>h(se));return}if(Q){Yl(()=>{C&&(S&&S.resolve(),C.skipTransition()),x({isTransitioning:!0,flushSync:!0,currentLocation:ee.currentLocation,nextLocation:ee.nextLocation})});let Oe=a.window.document.startViewTransition(()=>{Yl(()=>h(se))});Oe.finished.finally(()=>{Yl(()=>{_(void 0),M(void 0),v(void 0),x({isTransitioning:!1})})}),Yl(()=>M(Oe));return}C?(S&&S.resolve(),C.skipTransition(),F({state:se,currentLocation:ee.currentLocation,nextLocation:ee.nextLocation})):(v(se),x({isTransitioning:!0,flushSync:!1,currentLocation:ee.currentLocation,nextLocation:ee.nextLocation}))},[a.window,C,S,K,oe]);N.useLayoutEffect(()=>a.subscribe(xe),[a,xe]),N.useEffect(()=>{g.isTransitioning&&!g.flushSync&&_(new xm)},[g]),N.useEffect(()=>{if(S&&p&&a.window){let se=p,Re=S.promise,he=a.window.document.startViewTransition(async()=>{oe(()=>h(se)),await Re});he.finished.finally(()=>{_(void 0),M(void 0),v(void 0),x({isTransitioning:!1})}),M(he)}},[oe,p,S,a.window]),N.useEffect(()=>{S&&p&&d.location.key===p.location.key&&S.resolve()},[S,C,d.location,p]),N.useEffect(()=>{!g.isTransitioning&&z&&(v(z.state),x({isTransitioning:!0,flushSync:!1,currentLocation:z.currentLocation,nextLocation:z.nextLocation}),F(void 0))},[g.isTransitioning,z]),N.useEffect(()=>{},[]);let pe=N.useMemo(()=>({createHref:a.createHref,encodeLocation:a.encodeLocation,go:se=>a.navigate(se),push:(se,Re,he)=>a.navigate(se,{state:Re,preventScrollReset:he==null?void 0:he.preventScrollReset}),replace:(se,Re,he)=>a.navigate(se,{replace:!0,state:Re,preventScrollReset:he==null?void 0:he.preventScrollReset})}),[a]),je=a.basename||"/",$=N.useMemo(()=>({router:a,navigator:pe,static:!1,basename:je}),[a,pe,je]),T=N.useMemo(()=>({v7_relativeSplatPath:a.future.v7_relativeSplatPath}),[a.future.v7_relativeSplatPath]);return N.useEffect(()=>nm(u,a.future),[u,a.future]),N.createElement(N.Fragment,null,N.createElement(yi.Provider,{value:$},N.createElement(Ud.Provider,{value:d},N.createElement(gm.Provider,{value:K.current},N.createElement(mm.Provider,{value:g},N.createElement(om,{basename:je,location:d.location,navigationType:d.historyAction,navigator:pe,future:T},d.initialized||a.future.v7_partialHydration?N.createElement(km,{routes:a.routes,future:a.future,state:d}):i))))),null)}const km=N.memo(Em);function Em(o){let{routes:i,future:a,state:u}=o;return Hh(i,void 0,u,a)}const Cm=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",jm=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,wd=N.forwardRef(function(i,a){let{onClick:u,relative:d,reloadDocument:h,replace:p,state:v,target:g,to:x,preventScrollReset:S,viewTransition:_}=i,C=am(i,cm),{basename:M}=N.useContext(sn),z,F=!1;if(typeof x=="string"&&jm.test(x)&&(z=x,Cm))try{let xe=new URL(window.location.href),pe=x.startsWith("//")?new URL(xe.protocol+x):new URL(x),je=il(pe.pathname,M);pe.origin===xe.origin&&je!=null?x=je+pe.search+pe.hash:F=!0}catch{}let K=Bh(x,{relative:d}),Ce=_m(x,{replace:p,state:v,target:g,preventScrollReset:S,relative:d,viewTransition:_});function oe(xe){u&&u(xe),xe.defaultPrevented||Ce(xe)}return N.createElement("a",Zl({},C,{href:z||K,onClick:F||h?u:oe,ref:a,target:g}))});var xd;(function(o){o.UseScrollRestoration="useScrollRestoration",o.UseSubmit="useSubmit",o.UseSubmitFetcher="useSubmitFetcher",o.UseFetcher="useFetcher",o.useViewTransitionState="useViewTransitionState"})(xd||(xd={}));var Sd;(function(o){o.UseFetcher="useFetcher",o.UseFetchers="useFetchers",o.UseScrollRestoration="useScrollRestoration"})(Sd||(Sd={}));function _m(o,i){let{target:a,replace:u,state:d,preventScrollReset:h,relative:p,viewTransition:v}=i===void 0?{}:i,g=wi(),x=sl(),S=Wd(o,{relative:p});return N.useCallback(_=>{if(um(_,a)){_.preventDefault();let C=u!==void 0?u:Tn(x)===Tn(S);g(o,{replace:C,state:d,preventScrollReset:h,relative:p,viewTransition:v})}},[x,g,S,u,d,a,o,h,p,v])}function Rm(){const o=wi(),i=sl(),a=()=>{localStorage.removeItem("isAdminLoggedIn"),localStorage.removeItem("currentAdmin"),localStorage.removeItem("jwt_token"),o("/login")},u=d=>d==="/"?i.pathname==="/":i.pathname.startsWith(d);return f.jsxs("div",{className:"admin-layout",children:[f.jsxs("aside",{className:"admin-sidebar",children:[f.jsx("h2",{className:"text-lg font-bold",children:"설치 Admin"}),f.jsx("nav",{children:f.jsxs("ul",{children:[f.jsx("li",{className:u("/")&&i.pathname==="/"?"active":"",children:f.jsx(wd,{to:"/",children:"컨텐츠 / APK 관리"})}),f.jsx("li",{className:u("/download-requests")?"active":"",children:f.jsx(wd,{to:"/download-requests",children:"설치요청 관리"})})]})}),f.jsx("button",{onClick:a,className:"logout-button",children:"로그아웃"})]}),f.jsx("main",{className:"admin-main",children:f.jsx(lm,{})})]})}function Pm({children:o}){if(!(localStorage.getItem("isAdminLoggedIn")==="true"))return f.jsx(ss,{to:"/login",replace:!0});try{const a=JSON.parse(localStorage.getItem("currentAdmin")||"null");if(!a||!a.roles||!a.roles.includes("administrator"))return localStorage.removeItem("isAdminLoggedIn"),localStorage.removeItem("currentAdmin"),f.jsx(ss,{to:"/login",replace:!0})}catch{return localStorage.removeItem("isAdminLoggedIn"),localStorage.removeItem("currentAdmin"),f.jsx(ss,{to:"/login",replace:!0})}return o}function mi({isOpen:o,onClose:i,title:a,children:u}){return o?f.jsx("div",{className:"modal-overlay",onClick:i,children:f.jsxs("div",{className:"modal-content",onClick:d=>d.stopPropagation(),children:[f.jsxs("div",{className:"modal-header",children:[f.jsx("h2",{children:a}),f.jsx("button",{className:"modal-close",onClick:i,children:"×"})]}),f.jsx("div",{className:"modal-body",children:u})]})}):null}function Tm(){const[o,i]=N.useState(()=>{const C=localStorage.getItem("notices");return C?JSON.parse(C):[]}),[a,u]=N.useState({title:"",content:""}),[d,h]=N.useState(null),[p,v]=N.useState(!1);N.useEffect(()=>{localStorage.setItem("notices",JSON.stringify(o))},[o]);const g=C=>{C.preventDefault(),d?(i(o.map(M=>M.id===d?{...M,title:a.title,content:a.content}:M)),h(null)):i([...o,{...a,id:Date.now(),date:new Date().toLocaleDateString()}]),u({title:"",content:""}),v(!1)},x=(C=null)=>{C?(u({title:C.title,content:C.content}),h(C.id)):(u({title:"",content:""}),h(null)),v(!0)},S=()=>{u({title:"",content:""}),h(null),v(!1)},_=C=>{i(o.filter(M=>M.id!==C))};return f.jsxs("div",{children:[f.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[f.jsx("h1",{className:"text-white font-bold text-2xl",children:"공지사항 관리"}),f.jsx("button",{onClick:()=>x(),style:{padding:"0.75rem 1.5rem",backgroundColor:"#6841b9",border:"none",borderRadius:"4px",color:"white",cursor:"pointer",fontWeight:"bold",fontSize:"1rem"},children:"+ 새 공지사항"})]}),f.jsx(mi,{isOpen:p,onClose:S,title:d?"공지사항 수정":"새 공지사항 작성",children:f.jsxs("form",{onSubmit:g,children:[f.jsxs("div",{style:{marginBottom:"1rem"},children:[f.jsx("label",{style:{display:"block",marginBottom:"0.5rem",color:"#333"},children:"제목"}),f.jsx("input",{type:"text",value:a.title,onChange:C=>u({...a,title:C.target.value}),required:!0,style:{width:"100%",padding:"0.5rem",backgroundColor:"#f5f5f5",border:"1px solid #ddd",borderRadius:"4px",color:"#333"}})]}),f.jsxs("div",{style:{marginBottom:"1rem"},children:[f.jsx("label",{style:{display:"block",marginBottom:"0.5rem",color:"#333"},children:"내용"}),f.jsx("textarea",{value:a.content,onChange:C=>u({...a,content:C.target.value}),required:!0,rows:"8",style:{width:"100%",padding:"0.5rem",backgroundColor:"#f5f5f5",border:"1px solid #ddd",borderRadius:"4px",color:"#333"}})]}),f.jsxs("div",{style:{display:"flex",gap:"0.5rem",justifyContent:"flex-end"},children:[f.jsx("button",{type:"button",onClick:S,style:{padding:"0.5rem 1.5rem",backgroundColor:"#757575",border:"none",borderRadius:"4px",color:"white",cursor:"pointer",fontWeight:"bold"},children:"취소"}),f.jsx("button",{type:"submit",style:{padding:"0.5rem 1.5rem",backgroundColor:"#6841b9",border:"none",borderRadius:"4px",color:"white",cursor:"pointer",fontWeight:"bold"},children:d?"수정 완료":"등록"})]})]})}),f.jsxs("div",{style:{marginTop:"2rem"},children:[f.jsx("h2",{className:"text-white text-lg",children:"공지사항 목록"}),o.length===0?f.jsx("p",{style:{marginTop:"1rem",color:"#888"},children:"등록된 공지사항이 없습니다."}):f.jsx("div",{style:{marginTop:"1rem"},children:o.map(C=>f.jsx("div",{style:{padding:"1.5rem",backgroundColor:"#ffffff",borderRadius:"8px",border:"1px solid rgba(0, 0, 0, 0.1)",boxShadow:"0 2px 8px rgba(0, 0, 0, 0.1)",marginBottom:"1rem"},children:f.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"start"},children:[f.jsxs("div",{style:{flex:1},children:[f.jsx("h3",{style:{color:"#333"},children:C.title}),f.jsx("p",{style:{fontSize:"0.9rem",color:"#888",margin:"0.5rem 0"},children:C.date}),f.jsx("p",{style:{marginTop:"1rem",color:"#555",whiteSpace:"pre-wrap"},children:C.content})]}),f.jsxs("div",{style:{display:"flex",gap:"0.5rem",marginLeft:"1rem"},children:[f.jsx("button",{onClick:()=>x(C),style:{padding:"0.5rem 1rem",backgroundColor:"#6841b9",border:"none",borderRadius:"4px",color:"white",cursor:"pointer"},children:"수정"}),f.jsx("button",{onClick:()=>_(C.id),style:{padding:"0.5rem 1rem",backgroundColor:"#d32f2f",border:"none",borderRadius:"4px",color:"white",cursor:"pointer"},children:"삭제"})]})]})},C.id))})]})]})}function kd({label:o,options:i,selectedIds:a,onChange:u,placeholder:d}){const[h,p]=N.useState(!1),v=x=>{a.includes(x)?u(a.filter(S=>S!==x)):u([...a,x])},g=()=>a.length===0?d||"선택하세요...":a.map(x=>{var S;return(S=i.find(_=>_.id===x))==null?void 0:S.name}).filter(Boolean).join(", ");return f.jsxs("div",{style:{marginBottom:"1rem",position:"relative"},children:[f.jsx("label",{style:{display:"block",marginBottom:"0.5rem",color:"#333"},children:o}),f.jsxs("div",{onClick:()=>p(!h),style:{width:"100%",padding:"0.5rem",backgroundColor:"#f5f5f5",border:"1px solid #ddd",borderRadius:"4px",color:"#333",cursor:"pointer",minHeight:"38px",display:"flex",alignItems:"center",justifyContent:"space-between"},children:[f.jsx("span",{style:{flex:1,color:a.length===0?"#999":"#333"},children:g()}),f.jsx("span",{style:{marginLeft:"0.5rem"},children:h?"▲":"▼"})]}),h&&f.jsx("div",{style:{position:"absolute",top:"100%",left:0,right:0,backgroundColor:"white",border:"1px solid #ddd",borderRadius:"4px",marginTop:"0.25rem",maxHeight:"200px",overflowY:"auto",zIndex:1e3,boxShadow:"0 2px 8px rgba(0, 0, 0, 0.1)"},children:i.length===0?f.jsx("div",{style:{padding:"0.75rem",color:"#999",textAlign:"center"},children:"옵션이 없습니다"}):i.map(x=>f.jsxs("div",{onClick:()=>v(x.id),style:{padding:"0.75rem",cursor:"pointer",backgroundColor:a.includes(x.id)?"#e3f2fd":"white",borderBottom:"1px solid #f0f0f0",display:"flex",alignItems:"center",gap:"0.5rem"},onMouseEnter:S=>{a.includes(x.id)||(S.currentTarget.style.backgroundColor="#f5f5f5")},onMouseLeave:S=>{a.includes(x.id)||(S.currentTarget.style.backgroundColor="white")},children:[f.jsx("input",{type:"checkbox",checked:a.includes(x.id),readOnly:!0,style:{cursor:"pointer"}}),f.jsx("span",{style:{color:"#333"},children:x.name})]},x.id))}),h&&f.jsx("div",{onClick:()=>p(!1),style:{position:"fixed",top:0,left:0,right:0,bottom:0,zIndex:999}})]})}const Lm="NugunaVR_DB",Nm=3,Ed="apkFiles",on="mediaFiles",us="categories",Cd="topics",xs=()=>new Promise((o,i)=>{const a=indexedDB.open(Lm,Nm);a.onerror=()=>i(a.error),a.onsuccess=()=>o(a.result),a.onupgradeneeded=u=>{const d=u.target.result;if(d.objectStoreNames.contains(Ed)||d.createObjectStore(Ed,{keyPath:"id"}),d.objectStoreNames.contains(on)||d.createObjectStore(on,{keyPath:"id"}),!d.objectStoreNames.contains(us)){d.createObjectStore(us,{keyPath:"id",autoIncrement:!0});const p=u.target.transaction.objectStore(us);p.add({name:"Free",isDefault:!0}),p.add({name:"Student",isDefault:!0}),p.add({name:"Master",isDefault:!0})}d.objectStoreNames.contains(Cd)||d.createObjectStore(Cd,{keyPath:"id",autoIncrement:!0})}}),jd=async(o,i)=>{const a=await xs();return new Promise((u,d)=>{const v=a.transaction([on],"readwrite").objectStore(on).put({id:o,file:i});v.onsuccess=()=>u(),v.onerror=()=>d(v.error)})},hs=async o=>{const i=await xs();return new Promise((a,u)=>{const p=i.transaction([on],"readonly").objectStore(on).get(o);p.onsuccess=()=>{var v;return a((v=p.result)==null?void 0:v.file)},p.onerror=()=>u(p.error)})},Im=async o=>{const i=await xs();return new Promise((a,u)=>{const h=i.transaction([on],"readwrite").objectStore(on);let p=0,v=!1;o.forEach(g=>{const x=h.delete(g);x.onsuccess=()=>{p++,p===o.length&&!v&&a()},x.onerror=()=>{v=!0,u(x.error)}}),o.length===0&&a()})},Qd="https://training.contentsda.kr/wp-json/wp/v2",jt="https://training.contentsda.kr/api/custom-api",eo=()=>localStorage.getItem("jwt_token"),Zt=()=>{const o=eo();return o?{Authorization:`Bearer ${o}`}:{}},_t=()=>{localStorage.removeItem("jwt_token"),localStorage.removeItem("isAdminLoggedIn"),localStorage.removeItem("currentAdmin"),window.location.href="/login"},Dm=async()=>{try{const o=await fetch(`${Qd}/course-category`);if(!o.ok)throw new Error("Failed to fetch categories");return(await o.json()).map(a=>({id:a.id,name:a.name,count:a.count,slug:a.slug}))}catch(o){return console.error("Error fetching categories:",o),[]}},zm=async()=>{try{const o=await fetch(`${Qd}/course-tag`);if(!o.ok)throw new Error("Failed to fetch topics");return(await o.json()).map(a=>({id:a.id,name:a.name,count:a.count,slug:a.slug}))}catch(o){return console.error("Error fetching topics:",o),[]}},Mm=async()=>{const[o,i]=await Promise.all([Dm(),zm()]);return{categories:o,topics:i}},Fm=async({page:o=1,limit:i=20,search:a=""}={})=>{try{const u=new URLSearchParams({page:o.toString(),limit:i.toString()});a&&u.append("search",a);const d=await fetch(`${jt}/vr-content-list.php?${u}`,{headers:{...Zt()}});if(d.status===401)throw _t(),new Error("User not authenticated");if(!d.ok)throw new Error(`HTTP error! status: ${d.status}`);const h=await d.json();if(h.status==="error")throw new Error(h.message);return h.data}catch(u){throw console.error("Error fetching VR contents:",u),u}},Om=async o=>{try{const i=await fetch(`${jt}/vr-content-detail.php?id=${o}`,{headers:{...Zt()}});if(i.status===401)throw _t(),new Error("User not authenticated");if(!i.ok)throw new Error(`HTTP error! status: ${i.status}`);const a=await i.json();if(a.status==="error")throw new Error(a.message);return a.data}catch(i){throw console.error("Error fetching VR content detail:",i),i}},bm=async(o,i=null)=>{try{const a=new FormData;if(a.append("title",o.title),a.append("description",o.description),a.append("created_by",o.created_by||"1"),o.thumbnail&&a.append("thumbnail",o.thumbnail),o.video&&a.append("video",o.video),o.images&&o.images.length>0&&o.images.forEach(h=>{a.append("images[]",h)}),i&&(o.thumbnail||o.video||o.images&&o.images.length>0))return new Promise((h,p)=>{const v=new XMLHttpRequest;v.upload.addEventListener("progress",x=>{if(x.lengthComputable){const S=x.loaded/x.total*100;i(S,v)}}),v.addEventListener("load",()=>{if(v.status===401)_t(),p(new Error("User not authenticated"));else if(v.status>=200&&v.status<300)try{const x=JSON.parse(v.responseText);x.status==="error"?p(new Error(x.message)):h(x.data)}catch{p(new Error("Failed to parse response"))}else p(new Error(`HTTP error! status: ${v.status}`))}),v.addEventListener("error",()=>{p(new Error("Network error"))}),v.addEventListener("abort",()=>{p(new Error("Upload cancelled"))}),v.open("POST",`${jt}/vr-content-create.php`);const g=eo();g&&v.setRequestHeader("Authorization",`Bearer ${g}`),v.send(a)});const u=await fetch(`${jt}/vr-content-create.php`,{method:"POST",headers:{...Zt()},body:a});if(u.status===401)throw _t(),new Error("User not authenticated");if(!u.ok)throw new Error(`HTTP error! status: ${u.status}`);const d=await u.json();if(d.status==="error")throw new Error(d.message);return d.data}catch(a){throw console.error("Error creating VR content:",a),a}},Um=async(o,i,a=null)=>{try{const u=new FormData;if(u.append("id",o.toString()),i.title&&u.append("title",i.title),i.description&&u.append("description",i.description),i.thumbnail&&u.append("thumbnail",i.thumbnail),i.delete_video?(u.append("delete_video",i.delete_video),console.log("📤 API: delete_video 파라미터 전송 =",i.delete_video)):i.video?(u.append("video",i.video),console.log("📤 API: 새 영상 파일 전송 =",i.video.name)):console.log("📤 API: 영상 관련 파라미터 없음"),i.images&&i.images.length>0&&i.images.forEach(p=>{u.append("images[]",p)}),i.existingImages!==void 0){const p=JSON.stringify(i.existingImages);u.append("existing_images",p),console.log("📡 서버로 전송하는 existing_images:",p)}else console.log("📡 existing_images 전송 안 함 (undefined)");if(a&&(i.thumbnail||i.video||i.images&&i.images.length>0))return new Promise((p,v)=>{const g=new XMLHttpRequest;g.upload.addEventListener("progress",S=>{if(S.lengthComputable){const _=S.loaded/S.total*100;a(_,g)}}),g.addEventListener("load",()=>{if(g.status===401)_t(),v(new Error("User not authenticated"));else if(g.status>=200&&g.status<300)try{const S=JSON.parse(g.responseText);S.status==="error"?v(new Error(S.message)):p(S.data)}catch{v(new Error("Failed to parse response"))}else v(new Error(`HTTP error! status: ${g.status}`))}),g.addEventListener("error",()=>{v(new Error("Network error"))}),g.addEventListener("abort",()=>{v(new Error("Upload cancelled"))}),g.open("POST",`${jt}/vr-content-update.php`);const x=eo();x&&g.setRequestHeader("Authorization",`Bearer ${x}`),g.send(u)});const d=await fetch(`${jt}/vr-content-update.php`,{method:"POST",headers:{...Zt()},body:u});if(d.status===401)throw _t(),new Error("User not authenticated");if(!d.ok)throw new Error(`HTTP error! status: ${d.status}`);const h=await d.json();if(h.status==="error")throw new Error(h.message);return h.data}catch(u){throw console.error("Error updating VR content:",u),u}},Am=async o=>{try{const i=await fetch(`${jt}/vr-content-delete.php`,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",...Zt()},body:`id=${o}`});if(i.status===401)throw _t(),new Error("User not authenticated");if(!i.ok)throw new Error(`HTTP error! status: ${i.status}`);const a=await i.json();if(a.status==="error")throw new Error(a.message);return a}catch(i){throw console.error("Error deleting VR content:",i),i}},cs=async o=>{try{const i=await fetch(`${jt}/vr-version-list.php?content_id=${o}`,{headers:{...Zt()}});if(i.status===401)throw _t(),new Error("User not authenticated");if(!i.ok)throw new Error(`HTTP error! status: ${i.status}`);const a=await i.json();if(a.status==="error")throw new Error(a.message);return a.data.versions||[]}catch(i){throw console.error("Error fetching VR versions:",i),i}},Bm=async(o,i=null)=>{try{const a=new FormData;if(a.append("content_id",o.content_id.toString()),a.append("version_number",o.version_number),o.release_notes&&a.append("release_notes",o.release_notes),o.pico_apk&&a.append("pico_apk",o.pico_apk),o.quest_apk&&a.append("quest_apk",o.quest_apk),i&&(o.pico_apk||o.quest_apk))return new Promise((h,p)=>{const v=new XMLHttpRequest;v.upload.addEventListener("progress",x=>{if(x.lengthComputable){const S=x.loaded/x.total*100;i(S,v)}}),v.addEventListener("load",()=>{if(v.status===401)_t(),p(new Error("User not authenticated"));else if(v.status>=200&&v.status<300)try{const x=JSON.parse(v.responseText);x.status==="error"?p(new Error(x.message)):h(x.data)}catch{p(new Error("Failed to parse response"))}else p(new Error(`HTTP error! status: ${v.status}`))}),v.addEventListener("error",()=>{p(new Error("Network error"))}),v.addEventListener("abort",()=>{p(new Error("Upload cancelled"))}),v.open("POST",`${jt}/vr-version-create.php`);const g=eo();g&&v.setRequestHeader("Authorization",`Bearer ${g}`),v.send(a)});const u=await fetch(`${jt}/vr-version-create.php`,{method:"POST",headers:{...Zt()},body:a});if(u.status===401)throw _t(),new Error("User not authenticated");if(!u.ok)throw new Error(`HTTP error! status: ${u.status}`);const d=await u.json();if(d.status==="error")throw new Error(d.message);return d.data}catch(a){throw console.error("Error creating VR version:",a),a}},Wm=async(o,i,a=null)=>{try{const u=new FormData;if(u.append("id",o.toString()),i.version_number&&u.append("version_number",i.version_number),i.release_notes&&u.append("release_notes",i.release_notes),i.pico_apk&&u.append("pico_apk",i.pico_apk),i.quest_apk&&u.append("quest_apk",i.quest_apk),a&&(i.pico_apk||i.quest_apk))return new Promise((p,v)=>{const g=new XMLHttpRequest;g.upload.addEventListener("progress",S=>{if(S.lengthComputable){const _=S.loaded/S.total*100;a(_,g)}}),g.addEventListener("load",()=>{if(g.status===401)_t(),v(new Error("User not authenticated"));else if(g.status>=200&&g.status<300)try{const S=JSON.parse(g.responseText);S.status==="error"?v(new Error(S.message)):p(S.data)}catch{v(new Error("Failed to parse response"))}else v(new Error(`HTTP error! status: ${g.status}`))}),g.addEventListener("error",()=>{v(new Error("Network error"))}),g.addEventListener("abort",()=>{v(new Error("Upload cancelled"))}),g.open("POST",`${jt}/vr-version-update.php`);const x=eo();x&&g.setRequestHeader("Authorization",`Bearer ${x}`),g.send(u)});const d=await fetch(`${jt}/vr-version-update.php`,{method:"POST",headers:{...Zt()},body:u});if(d.status===401)throw _t(),new Error("User not authenticated");if(!d.ok)throw new Error(`HTTP error! status: ${d.status}`);const h=await d.json();if(h.status==="error")throw new Error(h.message);return h.data}catch(u){throw console.error("Error updating VR version:",u),u}},Vm=async o=>{try{const i=await fetch(`${jt}/vr-version-delete.php`,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",...Zt()},body:`id=${o}`});if(i.status===401)throw _t(),new Error("User not authenticated");if(!i.ok)throw new Error(`HTTP error! status: ${i.status}`);const a=await i.json();if(a.status==="error")throw new Error(a.message);return a}catch(i){throw console.error("Error deleting VR version:",i),i}},$m=async({status:o="",page:i=1,limit:a=50}={})=>{try{const u=new URLSearchParams({page:i.toString(),limit:a.toString()});o&&u.append("status",o);const d=await fetch(`${jt}/vr-download-requests-admin.php?${u}`,{headers:{...Zt()}});if(d.status===401)throw _t(),new Error("User not authenticated");if(!d.ok)throw new Error(`HTTP error! status: ${d.status}`);const h=await d.json();if(h.status==="error")throw new Error(h.message);return h.data}catch(u){throw console.error("Error fetching download requests:",u),u}},Hm=async(o,i)=>{try{const a=await fetch(`${jt}/vr-download-approve.php`,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",...Zt()},body:`request_id=${o}&admin_id=${i}`});if(a.status===401)throw _t(),new Error("User not authenticated");if(!a.ok)throw new Error(`HTTP error! status: ${a.status}`);const u=await a.json();if(u.status==="error")throw new Error(u.message);return u}catch(a){throw console.error("Error approving download request:",a),a}},Qm=async(o,i)=>{try{const a=await fetch(`${jt}/vr-download-reject.php`,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",...Zt()},body:`request_id=${o}&admin_id=${i}`});if(a.status===401)throw _t(),new Error("User not authenticated");if(!a.ok)throw new Error(`HTTP error! status: ${a.status}`);const u=await a.json();if(u.status==="error")throw new Error(u.message);return u}catch(a){throw console.error("Error rejecting download request:",a),a}};function Km(){const[o,i]=N.useState(()=>{const Q=localStorage.getItem("courses");return Q?JSON.parse(Q):[]}),[a,u]=N.useState({title:"",description:"",thumbnailId:null,videoId:null,categoryIds:[],topicIds:[]}),[d,h]=N.useState([]),[p,v]=N.useState([]),[g,x]=N.useState(null),[S,_]=N.useState(null),[C,M]=N.useState(null),[z,F]=N.useState(!1);N.useEffect(()=>{localStorage.setItem("courses",JSON.stringify(o))},[o]),N.useEffect(()=>{K()},[]);const K=async()=>{try{const{categories:Q,topics:ee}=await Mm();h(Q),v(ee)}catch(Q){console.error("Failed to load categories and topics:",Q)}},Ce=async Q=>{Q.preventDefault(),C?(i(o.map(ee=>ee.id===C?{...ee,...a}:ee)),M(null)):i([...o,{...a,id:Date.now()}]),u({title:"",description:"",thumbnailId:null,videoId:null,categoryIds:[],topicIds:[]}),x(null),_(null),F(!1)},oe=async(Q=null)=>{if(Q){if(u({title:Q.title,description:Q.description,thumbnailId:Q.thumbnailId,videoId:Q.videoId,categoryIds:Q.categoryIds||[],topicIds:Q.topicIds||[]}),M(Q.id),Q.thumbnailId){const ee=await hs(Q.thumbnailId);ee&&x(URL.createObjectURL(ee))}if(Q.videoId){const ee=await hs(Q.videoId);ee&&_(URL.createObjectURL(ee))}}else u({title:"",description:"",thumbnailId:null,videoId:null,categoryIds:[],topicIds:[]}),M(null),x(null),_(null);F(!0)},xe=()=>{u({title:"",description:"",thumbnailId:null,videoId:null,categoryIds:[],topicIds:[]}),M(null),x(null),_(null),F(!1)},[pe,je]=N.useState(!1),$=async Q=>{const ee=Q.target.files[0];if(ee)try{je(!0);const de=`thumbnail_${Date.now()}`;await jd(de,ee),u({...a,thumbnailId:de}),x(URL.createObjectURL(ee))}catch(de){console.error("Failed to process thumbnail:",de),alert("썸네일 파일 처리에 실패했습니다.")}finally{je(!1)}},T=async Q=>{const ee=Q.target.files[0];if(ee)try{je(!0);const de=`video_${Date.now()}`;await jd(de,ee),u({...a,videoId:de}),_(URL.createObjectURL(ee))}catch(de){console.error("Failed to process video:",de),alert("동영상 파일 처리에 실패했습니다.")}finally{je(!1)}},se=async Q=>{const ee=o.find(de=>de.id===Q);if(ee){const de=[ee.thumbnailId,ee.videoId].filter(Boolean);de.length>0&&await Im(de)}i(o.filter(de=>de.id!==Q))},Re=Q=>!Q||Q.length===0?"없음":Q.map(ee=>{var de;return(de=d.find(Oe=>Oe.id===ee))==null?void 0:de.name}).filter(Boolean).join(", "),he=Q=>!Q||Q.length===0?"없음":Q.map(ee=>{var de;return(de=p.find(Oe=>Oe.id===ee))==null?void 0:de.name}).filter(Boolean).join(", ");return f.jsxs("div",{children:[f.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[f.jsx("h1",{className:"text-white font-bold text-2xl",children:"콘텐츠 관리"}),f.jsx("button",{onClick:()=>oe(),style:{padding:"0.75rem 1.5rem",backgroundColor:"#6841b9",border:"none",borderRadius:"4px",color:"white",cursor:"pointer",fontWeight:"bold",fontSize:"1rem"},children:"+ 새 콘텐츠 추가"})]}),f.jsx(mi,{isOpen:z,onClose:xe,title:C?"콘텐츠 수정":"새 콘텐츠 추가",children:f.jsxs("form",{onSubmit:Ce,children:[f.jsxs("div",{style:{marginBottom:"1rem"},children:[f.jsx("label",{style:{display:"block",marginBottom:"0.5rem",color:"#333"},children:"제목"}),f.jsx("input",{type:"text",value:a.title,onChange:Q=>u({...a,title:Q.target.value}),required:!0,style:{width:"100%",padding:"0.5rem",backgroundColor:"#f5f5f5",border:"1px solid #ddd",borderRadius:"4px",color:"#333"}})]}),f.jsxs("div",{style:{marginBottom:"1rem"},children:[f.jsx("label",{style:{display:"block",marginBottom:"0.5rem",color:"#333"},children:"설명"}),f.jsx("textarea",{value:a.description,onChange:Q=>u({...a,description:Q.target.value}),required:!0,rows:"4",style:{width:"100%",padding:"0.5rem",backgroundColor:"#f5f5f5",border:"1px solid #ddd",borderRadius:"4px",color:"#333"}})]}),f.jsxs("div",{style:{marginBottom:"1rem"},children:[f.jsx("label",{style:{display:"block",marginBottom:"0.5rem",color:"#333"},children:"썸네일 이미지"}),f.jsx("input",{type:"file",accept:"image/*",onChange:$,disabled:pe,style:{width:"100%",padding:"0.5rem",backgroundColor:pe?"#e0e0e0":"#f5f5f5",border:"1px solid #ddd",borderRadius:"4px",color:"#333",cursor:pe?"not-allowed":"pointer"}}),pe&&f.jsx("p",{style:{marginTop:"0.5rem",color:"#6841b9",fontSize:"0.9rem"},children:"파일 처리 중..."}),g&&!pe&&f.jsx("img",{src:g,alt:"Thumbnail preview",style:{marginTop:"0.5rem",maxWidth:"200px",maxHeight:"150px",borderRadius:"4px"}})]}),f.jsxs("div",{style:{marginBottom:"1rem"},children:[f.jsx("label",{style:{display:"block",marginBottom:"0.5rem",color:"#333"},children:"동영상"}),f.jsx("input",{type:"file",accept:"video/*",onChange:T,disabled:pe,style:{width:"100%",padding:"0.5rem",backgroundColor:pe?"#e0e0e0":"#f5f5f5",border:"1px solid #ddd",borderRadius:"4px",color:"#333",cursor:pe?"not-allowed":"pointer"}}),pe&&f.jsx("p",{style:{marginTop:"0.5rem",color:"#6841b9",fontSize:"0.9rem"},children:"파일 처리 중..."}),S&&!pe&&f.jsx("video",{src:S,controls:!0,style:{marginTop:"0.5rem",maxWidth:"100%",maxHeight:"200px",borderRadius:"4px"}})]}),f.jsx(kd,{label:"카테고리 (중복 선택 가능)",options:d,selectedIds:a.categoryIds,onChange:Q=>u({...a,categoryIds:Q}),placeholder:"카테고리를 선택하세요..."}),f.jsx(kd,{label:"토픽 (중복 선택 가능)",options:p,selectedIds:a.topicIds,onChange:Q=>u({...a,topicIds:Q}),placeholder:"토픽을 선택하세요..."}),f.jsxs("div",{style:{display:"flex",gap:"0.5rem",justifyContent:"flex-end",marginTop:"1.5rem"},children:[f.jsx("button",{type:"button",onClick:xe,style:{padding:"0.5rem 1.5rem",backgroundColor:"#757575",border:"none",borderRadius:"4px",color:"white",cursor:"pointer",fontWeight:"bold"},children:"취소"}),f.jsx("button",{type:"submit",style:{padding:"0.5rem 1.5rem",backgroundColor:"#6841b9",border:"none",borderRadius:"4px",color:"white",cursor:"pointer",fontWeight:"bold"},children:C?"수정 완료":"등록"})]})]})}),f.jsxs("div",{style:{marginTop:"2rem"},children:[f.jsx("h2",{className:"text-white text-lg",children:"등록된 콘텐츠 목록"}),o.length===0?f.jsx("p",{style:{marginTop:"1rem",color:"rgba(255, 255, 255, 0.6)"},children:"등록된 콘텐츠가 없습니다."}):f.jsx("div",{style:{marginTop:"1rem"},children:o.map(Q=>f.jsx("div",{style:{padding:"1.5rem",backgroundColor:"#ffffff",borderRadius:"8px",border:"1px solid rgba(0, 0, 0, 0.1)",boxShadow:"0 2px 8px rgba(0, 0, 0, 0.1)",marginBottom:"1rem"},children:f.jsxs("div",{style:{display:"flex",gap:"1rem"},children:[Q.thumbnailId&&f.jsx(qm,{thumbnailId:Q.thumbnailId}),f.jsxs("div",{style:{flex:1},children:[f.jsx("h3",{style:{color:"#333",marginBottom:"0.5rem"},children:Q.title}),f.jsx("p",{style:{margin:"0.5rem 0",color:"#555"},children:Q.description}),f.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"0.5rem",marginTop:"1rem",fontSize:"0.9rem",color:"#888"},children:[f.jsxs("div",{children:[f.jsx("strong",{children:"카테고리:"})," ",Re(Q.categoryIds)]}),f.jsxs("div",{children:[f.jsx("strong",{children:"토픽:"})," ",he(Q.topicIds)]}),Q.videoId&&f.jsxs("div",{children:[f.jsx("strong",{children:"동영상:"})," ✓ 첨부됨"]})]}),f.jsxs("div",{style:{marginTop:"1rem",display:"flex",gap:"0.5rem"},children:[f.jsx("button",{onClick:()=>oe(Q),style:{padding:"0.5rem 1rem",backgroundColor:"#6841b9",border:"none",borderRadius:"4px",color:"white",cursor:"pointer"},children:"수정"}),f.jsx("button",{onClick:()=>se(Q.id),style:{padding:"0.5rem 1rem",backgroundColor:"#d32f2f",border:"none",borderRadius:"4px",color:"white",cursor:"pointer"},children:"삭제"})]})]})]})},Q.id))})]})]})}function qm({thumbnailId:o}){const[i,a]=N.useState(null);return N.useEffect(()=>((async()=>{const d=await hs(o);d&&a(URL.createObjectURL(d))})(),()=>{i&&URL.revokeObjectURL(i)}),[o]),i?f.jsx("img",{src:i,alt:"Thumbnail",style:{width:"150px",height:"100px",objectFit:"cover",borderRadius:"4px"}}):null}function Ym({isUploading:o,progress:i,fileName:a,fileType:u="file",onCancel:d}){const[h,p]=N.useState(0);return N.useEffect(()=>{p(o?i:0)},[o,i]),o?f.jsx("div",{style:{position:"fixed",top:0,left:0,right:0,bottom:0,backgroundColor:"rgba(0, 0, 0, 0.7)",display:"flex",justifyContent:"center",alignItems:"center",zIndex:9999},children:f.jsxs("div",{style:{backgroundColor:"white",borderRadius:"12px",padding:"2rem",minWidth:"400px",maxWidth:"500px",boxShadow:"0 8px 32px rgba(0, 0, 0, 0.3)",position:"relative"},children:[d&&f.jsx("button",{onClick:d,style:{position:"absolute",top:"1rem",right:"1rem",width:"32px",height:"32px",borderRadius:"50%",border:"none",backgroundColor:"#f5f5f5",color:"#666",cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",fontSize:"1.25rem",fontWeight:"bold",transition:"all 0.2s",padding:0,lineHeight:1},onMouseEnter:v=>{v.target.style.backgroundColor="#e0e0e0",v.target.style.color="#333"},onMouseLeave:v=>{v.target.style.backgroundColor="#f5f5f5",v.target.style.color="#666"},title:"업로드 취소",children:"×"}),f.jsxs("div",{style:{marginBottom:"1.5rem",textAlign:"center",paddingRight:"2rem"},children:[f.jsx("h3",{style:{margin:0,color:"#333",fontSize:"1.25rem",fontWeight:"bold"},children:"파일 업로드 중"}),a&&f.jsx("p",{style:{margin:"0.5rem 0 0 0",color:"#666",fontSize:"0.9rem"},children:a})]}),f.jsx("div",{style:{display:"flex",justifyContent:"center",marginBottom:"1.5rem"},children:f.jsx("div",{style:{width:"60px",height:"60px",border:"4px solid #f3f3f3",borderTop:"4px solid #6841b9",borderRadius:"50%",animation:"spin 1s linear infinite"}})}),f.jsx("div",{style:{marginBottom:"1rem"},children:f.jsx("div",{style:{width:"100%",height:"12px",backgroundColor:"#e0e0e0",borderRadius:"6px",overflow:"hidden"},children:f.jsx("div",{style:{width:`${h}%`,height:"100%",backgroundColor:"#6841b9",transition:"width 0.3s ease",borderRadius:"6px"}})})}),f.jsxs("div",{style:{textAlign:"center"},children:[f.jsxs("p",{style:{margin:0,color:"#666",fontSize:"1rem",fontWeight:"bold"},children:[h.toFixed(0),"%"]}),f.jsx("p",{style:{margin:"0.5rem 0 0 0",color:"#999",fontSize:"0.85rem"},children:h<100?"잠시만 기다려 주세요...":"업로드 완료 중..."})]}),f.jsx("style",{children:`
@keyframes spin {
0% { transform: rotate(0deg); }
100% { transform: rotate(360deg); }
}
`})]})}):null}function Jm(){const[o,i]=N.useState([]),[a,u]=N.useState({}),[d,h]=N.useState(!0),[p,v]=N.useState(!1),[g,x]=N.useState(null),[S,_]=N.useState(null),[C,M]=N.useState({versionNumber:"",picoFile:null,questFile:null,releaseNotes:""}),[z,F]=N.useState(new Set),[K,Ce]=N.useState(()=>{const H=localStorage.getItem("publishedContentId");return H?JSON.parse(H):null}),[oe,xe]=N.useState(!1),[pe,je]=N.useState(null),[$,T]=N.useState({title:"",description:"",videoFile:null,videoPreview:null,deleteVideo:!1,images:[],imagePreviews:[],existingImages:[]}),[se,Re]=N.useState(0),he=N.useRef(null),Q=N.useRef(null),ee=N.useRef(null),de=N.useRef(null),[Oe,Ve]=N.useState(0),[at,Me]=N.useState(!1),[W,te]=N.useState(""),[Y,E]=N.useState(null);N.useEffect(()=>{localStorage.setItem("publishedContentId",JSON.stringify(K))},[K]),N.useEffect(()=>{D()},[]);const D=async()=>{try{h(!0);const b=(await Fm({limit:100})).contents||[],J={};await Promise.all(b.map(async fe=>{try{const be=(await cs(fe.id)).sort((qe,Je)=>new Date(qe.created_at)-new Date(Je.created_at));J[fe.id]=be}catch(We){console.error(`Failed to load versions for content ${fe.id}:`,We),J[fe.id]=[]}})),i(b),u(J)}catch(H){console.error("Failed to load contents:",H),alert("컨텐츠 데이터를 불러오는 데 실패했습니다.")}finally{h(!1)}},ye=H=>{const b=Array.from(H),J=[...$.images,...b],fe=[...$.imagePreviews];b.forEach(We=>{fe.push(URL.createObjectURL(We))}),T({...$,images:J,imagePreviews:fe})},ke=H=>{const b=$.images.filter((fe,We)=>We!==H),J=$.imagePreviews.filter((fe,We)=>We!==H);URL.revokeObjectURL($.imagePreviews[H]),T({...$,images:b,imagePreviews:J}),ee.current&&(ee.current.value="")},Se=()=>{$.videoFile&&$.videoPreview&&URL.revokeObjectURL($.videoPreview),T({...$,videoFile:null,videoPreview:null,deleteVideo:!!pe}),de.current&&(de.current.value="")},_e=H=>{const b=$.existingImages.filter(J=>J.id!==H);T({...$,existingImages:b})},Te=(H,b,J,fe)=>{const We=$.existingImages.length,be=J==="existing"?H:H+We,qe=fe==="existing"?b:b+We;if(be===qe)return;const Je=[...$.existingImages.map((Ut,er)=>({type:"existing",data:Ut,originalIndex:er})),...$.images.map((Ut,er)=>({type:"new",data:Ut,preview:$.imagePreviews[er],originalIndex:er}))],[bt]=Je.splice(be,1),Qt=be<qe?qe-1:qe;Je.splice(Qt,0,bt);const In=[],Lt=[],zr=[];Je.forEach(Ut=>{Ut.type==="existing"?In.push(Ut.data):(Lt.push(Ut.data),zr.push(Ut.preview))}),T({...$,existingImages:In,images:Lt,imagePreviews:zr})},Le=async(H=null)=>{if(H)try{const b=await Om(H);console.log("📸 컨텐츠 상세 조회 결과:",b),console.log("📸 모든 이미지 (all_images):",b.all_images);const J=b.all_images||[];je(H);const fe=b.video_url?`${b.video_url}?t=${Date.now()}`:null;T({title:b.title,description:b.description,videoFile:null,videoPreview:fe,deleteVideo:!1,images:[],imagePreviews:[],existingImages:J}),Re(J.length),console.log("📸 설정된 existingImages:",J),console.log("🎬 영상 URL:",b.video_url),console.log("🎬 영상 URL (캐시 무효화):",fe),console.log("🎬 영상 경로:",b.video_path)}catch(b){console.error("컨텐츠 상세 조회 실패:",b),alert("컨텐츠 정보를 불러오는 데 실패했습니다.")}else je(null),T({title:"",description:"",videoFile:null,videoPreview:null,deleteVideo:!1,images:[],imagePreviews:[],existingImages:[]}),Re(0);xe(!0)},$e=()=>{xe(!1),je(null),Re(0),$.imagePreviews.forEach(H=>{URL.revokeObjectURL(H)}),T({title:"",description:"",videoFile:null,videoPreview:null,deleteVideo:!1,images:[],imagePreviews:[],existingImages:[]}),ee.current&&(ee.current.value=""),de.current&&(de.current.value="")},vt=async H=>{var b;H.preventDefault();try{if(Me(!0),Ve(0),pe){const J={title:$.title,description:$.description};$.deleteVideo?(J.delete_video="true",console.log("🎬 영상 삭제 요청")):$.videoFile?(J.video=$.videoFile,te($.videoFile.name),console.log("🎬 새 영상 업로드:",$.videoFile.name)):console.log("🎬 영상 변경 없음"),$.images.length>0&&($.existingImages.length===0?(J.thumbnail=$.images[0],$.images.length>1&&(J.images=$.images.slice(1)),te(`이미지 ${$.images.length}장`)):(J.images=$.images,te(`이미지 ${$.images.length}장`))),console.log("🔍 이미지 업데이트 디버깅:",{originalExistingImagesCount:se,currentExistingImagesLength:$.existingImages.length,currentExistingImages:$.existingImages,newImagesLength:$.images.length}),$.existingImages.length>0?(J.existingImages=$.existingImages.map((We,be)=>({id:We.id,display_order:be===0?-1:be-1})),console.log("✅ 케이스 1: 기존 이미지 유지",J.existingImages)):se>0?(J.existingImages=[],console.log("✅ 케이스 2: 모든 기존 이미지 삭제",J.existingImages)):console.log("✅ 케이스 3: 원래 이미지 없음 - existing_images 전송 안 함"),console.log("📤 서버로 전송할 전체 데이터:",{...J,existingImages:J.existingImages,hasNewImages:$.images.length>0});const fe=await Um(pe,J,(We,be)=>{Ve(We),be&&!Y&&E(be)});console.log("✅ 컨텐츠 수정 완료:",fe),alert("컨텐츠가 수정되었습니다.")}else{if($.images.length===0){alert("최소 1개의 이미지를 추가해주세요.");return}const J=((b=$.videoFile)==null?void 0:b.name)||($.images.length>0?`이미지 ${$.images.length}장`:"파일");te(J);const fe=$.images[0],We=$.images.slice(1),be=await bm({title:$.title,description:$.description,thumbnail:fe,images:We,video:$.videoFile,created_by:"1"},(qe,Je)=>{Ve(qe),Je&&!Y&&E(Je)});alert("컨텐츠가 생성되었습니다.")}await D(),$e()}catch(J){console.error("컨텐츠 저장 실패:",J),J.message!=="Upload cancelled"&&alert(`컨텐츠 저장에 실패했습니다: ${J.message}`)}finally{Me(!1),Ve(0),te(""),E(null)}},Ir=async H=>{if(confirm("이 컨텐츠와 모든 버전을 삭제하시겠습니까?"))try{await Am(H),alert("컨텐츠가 삭제되었습니다."),await D()}catch(b){console.error("컨텐츠 삭제 실패:",b),alert("컨텐츠 삭제에 실패했습니다.")}},ot=(H,b=null)=>{x(H),b?(_(b.id),M({versionNumber:b.version_number,picoFile:null,questFile:null,releaseNotes:b.release_notes||""})):(_(null),M({versionNumber:"",picoFile:null,questFile:null,releaseNotes:""})),v(!0)},Rt=()=>{x(null),_(null),M({versionNumber:"",picoFile:null,questFile:null,releaseNotes:""}),he.current&&(he.current.value=""),Q.current&&(Q.current.value=""),v(!1)},Dr=H=>{M({...C,picoFile:H.target.files[0]})},Ln=H=>{M({...C,questFile:H.target.files[0]})},Ht=()=>{M({...C,picoFile:null}),he.current&&(he.current.value="")},un=()=>{M({...C,questFile:null}),Q.current&&(Q.current.value="")},Nn=async H=>{var b,J;H.preventDefault();try{if(Me(!0),Ve(0),S){const be={};C.versionNumber&&(be.version_number=C.versionNumber),C.releaseNotes&&(be.release_notes=C.releaseNotes),C.picoFile&&(be.pico_apk=C.picoFile,te(C.picoFile.name)),C.questFile&&(be.quest_apk=C.questFile,te(C.questFile.name)),await Wm(S,be,(qe,Je)=>{Ve(qe),Je&&!Y&&E(Je)}),alert("버전이 수정되었습니다.")}else{const be=((b=C.picoFile)==null?void 0:b.name)||((J=C.questFile)==null?void 0:J.name)||"APK 파일";te(be);const qe=await Bm({content_id:g,version_number:C.versionNumber,pico_apk:C.picoFile,quest_apk:C.questFile,release_notes:C.releaseNotes},(Je,bt)=>{Ve(Je),bt&&!Y&&E(bt)});alert("버전이 추가되었습니다.")}const We=(await cs(g)).sort((be,qe)=>new Date(be.created_at)-new Date(qe.created_at));u({...a,[g]:We}),Rt()}catch(fe){console.error("버전 저장 실패:",fe),fe.message!=="Upload cancelled"&&alert(`버전 저장에 실패했습니다: ${fe.message}`)}finally{Me(!1),Ve(0),te(""),E(null)}},vr=async(H,b)=>{if(confirm("이 버전을 삭제하시겠습니까?"))try{await Vm(b),alert("버전이 삭제되었습니다.");const fe=(await cs(H)).sort((We,be)=>new Date(We.created_at)-new Date(be.created_at));u({...a,[H]:fe})}catch(J){console.error("버전 삭제 실패:",J),alert("버전 삭제에 실패했습니다.")}},yr=H=>{const b=new Set(z);b.has(H)?b.delete(H):b.add(H),F(b)},ur=()=>{confirm("업로드를 취소하시겠습니까?")&&(Y&&(Y.abort(),E(null)),Me(!1),Ve(0),te(""),alert("업로드가 취소되었습니다."))};return f.jsxs("div",{children:[f.jsx(Ym,{isUploading:at,progress:Oe,fileName:W,onCancel:ur}),f.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[f.jsx("h1",{className:"text-white font-bold text-2xl",children:"컨텐츠 / APK 관리"}),f.jsx("button",{onClick:()=>Le(),style:{padding:"0.75rem 1.5rem",backgroundColor:"#6841b9",border:"none",borderRadius:"4px",color:"white",cursor:"pointer",fontWeight:"bold",fontSize:"1rem"},children:"+ 새 컨텐츠 생성"})]}),d&&f.jsx("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",minHeight:"60vh",color:"white",fontSize:"1.5rem"},children:"컨텐츠 데이터 로딩 중..."}),f.jsx(mi,{isOpen:oe,onClose:$e,title:pe?"컨텐츠 수정":"새 컨텐츠 생성",children:f.jsxs("form",{onSubmit:vt,children:[f.jsxs("div",{style:{marginBottom:"1rem"},children:[f.jsx("label",{style:{display:"block",marginBottom:"0.5rem",color:"#333",fontWeight:"bold"},children:"컨텐츠 제목"}),f.jsx("input",{type:"text",value:$.title,onChange:H=>T({...$,title:H.target.value}),placeholder:"예: 누구나 VR 체험 앱",required:!0,style:{width:"100%",padding:"0.5rem",backgroundColor:"#f5f5f5",border:"1px solid #ddd",borderRadius:"4px",color:"#333"}})]}),f.jsxs("div",{style:{marginBottom:"1rem"},children:[f.jsx("label",{style:{display:"block",marginBottom:"0.5rem",color:"#333",fontWeight:"bold"},children:"설명"}),f.jsx("textarea",{value:$.description,onChange:H=>T({...$,description:H.target.value}),placeholder:"컨텐츠 설명을 입력하세요",rows:"4",style:{width:"100%",padding:"0.5rem",backgroundColor:"#f5f5f5",border:"1px solid #ddd",borderRadius:"4px",color:"#333"}})]}),f.jsxs("div",{style:{marginBottom:"1rem"},children:[f.jsx("label",{style:{display:"block",marginBottom:"0.5rem",color:"#333",fontWeight:"bold"},children:"이미지"}),f.jsx("input",{ref:ee,type:"file",accept:"image/*",multiple:!0,onChange:H=>{H.target.files&&H.target.files.length>0&&ye(H.target.files)},style:{width:"100%",padding:"0.5rem",backgroundColor:"#f5f5f5",border:"1px solid #ddd",borderRadius:"4px",color:"#333"}}),($.existingImages.length>0||$.imagePreviews.length>0)&&f.jsx("div",{style:{marginTop:"1rem"},children:f.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(120px, 1fr))",gap:"0.5rem"},children:[$.existingImages.map((H,b)=>f.jsxs("div",{draggable:!0,onDragStart:J=>{J.dataTransfer.setData("imageIndex",b.toString()),J.dataTransfer.setData("imageType","existing")},onDragOver:J=>J.preventDefault(),onDrop:J=>{J.preventDefault();const fe=parseInt(J.dataTransfer.getData("imageIndex")),We=J.dataTransfer.getData("imageType");isNaN(fe)||Te(fe,b,We,"existing")},style:{position:"relative",borderRadius:"4px",overflow:"hidden",border:b===0?"2px solid #2196f3":"1px solid #ddd",cursor:"move"},children:[b===0&&f.jsx("div",{style:{position:"absolute",top:"4px",left:"4px",backgroundColor:"#2196f3",color:"white",padding:"2px 6px",borderRadius:"4px",fontSize:"0.7rem",fontWeight:"bold",zIndex:1},children:"썸네일"}),f.jsx("img",{src:H.url,alt:`Image ${b+1}`,style:{width:"100%",height:"120px",objectFit:"cover"}}),f.jsx("button",{type:"button",onClick:()=>_e(H.id),style:{position:"absolute",top:"4px",right:"4px",width:"24px",height:"24px",borderRadius:"50%",border:"none",backgroundColor:"rgba(211, 47, 47, 0.9)",color:"white",cursor:"pointer",fontSize:"0.9rem",fontWeight:"bold",display:"flex",alignItems:"center",justifyContent:"center",padding:0,zIndex:1},title:"이미지 삭제",children:"×"})]},`existing-${H.id}`)),$.imagePreviews.map((H,b)=>f.jsxs("div",{draggable:!0,onDragStart:J=>{J.dataTransfer.setData("imageIndex",b.toString()),J.dataTransfer.setData("imageType","new")},onDragOver:J=>J.preventDefault(),onDrop:J=>{J.preventDefault();const fe=parseInt(J.dataTransfer.getData("imageIndex")),We=J.dataTransfer.getData("imageType");isNaN(fe)||Te(fe,b,We,"new")},style:{position:"relative",borderRadius:"4px",overflow:"hidden",border:b===0&&$.existingImages.length===0?"2px solid #2196f3":"1px solid #ddd",cursor:"move"},children:[b===0&&$.existingImages.length===0&&f.jsx("div",{style:{position:"absolute",top:"4px",left:"4px",backgroundColor:"#2196f3",color:"white",padding:"2px 6px",borderRadius:"4px",fontSize:"0.7rem",fontWeight:"bold",zIndex:1},children:"썸네일"}),f.jsx("img",{src:H,alt:`New image ${b+1}`,style:{width:"100%",height:"120px",objectFit:"cover"}}),f.jsx("button",{type:"button",onClick:()=>ke(b),style:{position:"absolute",top:"4px",right:"4px",width:"24px",height:"24px",borderRadius:"50%",border:"none",backgroundColor:"rgba(211, 47, 47, 0.9)",color:"white",cursor:"pointer",fontSize:"0.9rem",fontWeight:"bold",display:"flex",alignItems:"center",justifyContent:"center",padding:0,zIndex:1},title:"이미지 삭제",children:"×"})]},`new-${b}`))]})})]}),f.jsxs("div",{style:{marginBottom:"1rem"},children:[f.jsx("label",{style:{display:"block",marginBottom:"0.5rem",color:"#333",fontWeight:"bold"},children:"소개 동영상 (선택사항)"}),f.jsx("input",{ref:de,type:"file",accept:"video/mp4,video/webm,video/ogg",onChange:H=>{const b=H.target.files[0];b&&T({...$,videoFile:b,videoPreview:URL.createObjectURL(b),deleteVideo:!1})},style:{width:"100%",padding:"0.5rem",backgroundColor:"#f5f5f5",border:"1px solid #ddd",borderRadius:"4px",color:"#333"}}),f.jsx("p",{style:{marginTop:"0.25rem",fontSize:"0.85rem",color:"#888"},children:"지원 형식: MP4, WebM, OGG"}),$.videoPreview&&f.jsxs("div",{style:{marginTop:"0.5rem",position:"relative",display:"inline-block"},children:[f.jsx("video",{src:$.videoPreview,controls:!0,style:{maxWidth:"100%",maxHeight:"200px",borderRadius:"4px"}}),f.jsx("button",{type:"button",onClick:Se,style:{position:"absolute",top:"8px",right:"8px",width:"32px",height:"32px",borderRadius:"50%",border:"none",backgroundColor:"rgba(211, 47, 47, 0.9)",color:"white",cursor:"pointer",fontSize:"1.2rem",fontWeight:"bold",display:"flex",alignItems:"center",justifyContent:"center",padding:0,zIndex:1},title:"영상 삭제",children:"×"})]})]}),f.jsxs("div",{style:{display:"flex",gap:"0.5rem",justifyContent:"flex-end",marginTop:"1.5rem"},children:[f.jsx("button",{type:"button",onClick:$e,style:{padding:"0.5rem 1.5rem",backgroundColor:"#757575",border:"none",borderRadius:"4px",color:"white",cursor:"pointer",fontWeight:"bold"},children:"취소"}),f.jsx("button",{type:"submit",style:{padding:"0.5rem 1.5rem",backgroundColor:"#6841b9",border:"none",borderRadius:"4px",color:"white",cursor:"pointer",fontWeight:"bold"},children:pe?"수정 완료":"생성"})]})]})}),f.jsx(mi,{isOpen:p,onClose:Rt,title:S?"버전 APK 수정/추가":"새 버전 추가",children:f.jsxs("form",{onSubmit:Nn,children:[f.jsxs("div",{style:{marginBottom:"1rem"},children:[f.jsx("label",{style:{display:"block",marginBottom:"0.5rem",color:"#333",fontWeight:"bold"},children:"버전 번호 *"}),f.jsx("input",{type:"text",value:C.versionNumber,onChange:H=>M({...C,versionNumber:H.target.value}),placeholder:"예: 1.0.0",required:!0,disabled:!!S,style:{width:"100%",padding:"0.5rem",backgroundColor:S?"#e0e0e0":"#f5f5f5",border:"1px solid #ddd",borderRadius:"4px",color:"#333",cursor:S?"not-allowed":"text"}}),S&&f.jsx("p",{style:{marginTop:"0.5rem",fontSize:"0.85rem",color:"#888"},children:"* 수정 모드에서는 버전 번호를 변경할 수 없습니다."})]}),f.jsxs("div",{style:{marginBottom:"1rem"},children:[f.jsx("label",{style:{display:"block",marginBottom:"0.5rem",color:"#333",fontWeight:"bold"},children:"릴리즈 노트"}),f.jsx("textarea",{value:C.releaseNotes,onChange:H=>M({...C,releaseNotes:H.target.value}),placeholder:"이 버전의 변경사항을 입력하세요",rows:"3",style:{width:"100%",padding:"0.5rem",backgroundColor:"#f5f5f5",border:"1px solid #ddd",borderRadius:"4px",color:"#333"}})]}),f.jsxs("div",{style:{marginBottom:"1rem"},children:[f.jsx("label",{style:{display:"block",marginBottom:"0.5rem",color:"#333",fontWeight:"bold"},children:"Pico APK"}),f.jsx("input",{ref:he,type:"file",accept:".apk",onChange:Dr,style:{width:"100%",padding:"0.5rem",backgroundColor:"#f5f5f5",border:"1px solid #ddd",borderRadius:"4px",color:"#333"}}),C.picoFile&&f.jsxs("div",{style:{marginTop:"0.5rem",display:"flex",alignItems:"center",gap:"0.5rem",padding:"0.5rem",backgroundColor:"#f9f9f9",borderRadius:"4px",border:"1px solid #e0e0e0"},children:[f.jsxs("div",{style:{flex:1,fontSize:"0.9rem",color:"#555"},children:[C.picoFile.name," (",(C.picoFile.size/1024/1024).toFixed(2)," MB)"]}),f.jsx("button",{type:"button",onClick:Ht,style:{padding:"0.5rem 1rem",backgroundColor:"#d32f2f",color:"white",border:"none",borderRadius:"4px",cursor:"pointer",fontSize:"0.85rem",fontWeight:"bold",whiteSpace:"nowrap"},children:"삭제"})]})]}),f.jsxs("div",{style:{marginBottom:"1rem"},children:[f.jsx("label",{style:{display:"block",marginBottom:"0.5rem",color:"#333",fontWeight:"bold"},children:"Quest APK"}),f.jsx("input",{ref:Q,type:"file",accept:".apk",onChange:Ln,style:{width:"100%",padding:"0.5rem",backgroundColor:"#f5f5f5",border:"1px solid #ddd",borderRadius:"4px",color:"#333"}}),C.questFile&&f.jsxs("div",{style:{marginTop:"0.5rem",display:"flex",alignItems:"center",gap:"0.5rem",padding:"0.5rem",backgroundColor:"#f9f9f9",borderRadius:"4px",border:"1px solid #e0e0e0"},children:[f.jsxs("div",{style:{flex:1,fontSize:"0.9rem",color:"#555"},children:[C.questFile.name," (",(C.questFile.size/1024/1024).toFixed(2)," MB)"]}),f.jsx("button",{type:"button",onClick:un,style:{padding:"0.5rem 1rem",backgroundColor:"#d32f2f",color:"white",border:"none",borderRadius:"4px",cursor:"pointer",fontSize:"0.85rem",fontWeight:"bold",whiteSpace:"nowrap"},children:"삭제"})]})]}),!S&&f.jsx("p",{style:{fontSize:"0.85rem",color:"#888",marginBottom:"1rem"},children:"* Pico와 Quest 중 최소 하나의 APK는 업로드해야 합니다."}),f.jsxs("div",{style:{display:"flex",gap:"0.5rem",justifyContent:"flex-end"},children:[f.jsx("button",{type:"button",onClick:Rt,style:{padding:"0.5rem 1.5rem",backgroundColor:"#757575",border:"none",borderRadius:"4px",color:"white",cursor:"pointer",fontWeight:"bold"},children:"취소"}),f.jsx("button",{type:"submit",disabled:!S&&!C.picoFile&&!C.questFile,style:{padding:"0.5rem 1.5rem",backgroundColor:!S&&!C.picoFile&&!C.questFile?"#ccc":"#6841b9",border:"none",borderRadius:"4px",color:"white",cursor:!S&&!C.picoFile&&!C.questFile?"not-allowed":"pointer",fontWeight:"bold"},children:S?"수정 완료":"추가"})]})]})}),!d&&f.jsxs("div",{style:{marginTop:"2rem"},children:[f.jsxs("h2",{className:"text-white text-lg",children:["컨텐츠 목록 (",o.length,")"]}),o.length===0?f.jsx("p",{style:{marginTop:"1rem",color:"rgba(255, 255, 255, 0.6)"},children:"등록된 컨텐츠가 없습니다."}):f.jsx("div",{style:{marginTop:"1rem"},children:o.map(H=>{const b=a[H.id]||[],J=K===H.id;return f.jsxs("div",{style:{padding:"1.5rem",backgroundColor:"#ffffff",borderRadius:"8px",border:J?"2px solid #6841b9":"1px solid rgba(0, 0, 0, 0.1)",boxShadow:"0 2px 8px rgba(0, 0, 0, 0.1)",marginBottom:"1rem"},children:[f.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"start"},children:[f.jsxs("div",{style:{flex:1,display:"flex",gap:"1rem"},children:[H.thumbnail_url&&f.jsx("img",{src:H.thumbnail_url,alt:H.title,style:{width:"150px",height:"100px",objectFit:"cover",borderRadius:"4px"}}),f.jsxs("div",{style:{flex:1},children:[f.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"0.5rem"},children:[f.jsx("h3",{style:{color:"#333",margin:0},children:H.title}),J&&f.jsx("span",{style:{padding:"0.25rem 0.5rem",backgroundColor:"#6841b9",color:"white",borderRadius:"4px",fontSize:"0.75rem",fontWeight:"bold"},children:"배포중"})]}),f.jsx("p",{style:{fontSize:"0.9rem",color:"#666",margin:"0.5rem 0"},children:H.description}),f.jsxs("p",{style:{fontSize:"0.85rem",color:"#888",margin:"0.5rem 0"},children:["생성일: ",new Date(H.created_at).toLocaleDateString()," | 버전 수: ",b.length]})]})]}),f.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"0.5rem",marginLeft:"1rem"},children:[f.jsx("button",{onClick:()=>ot(H.id),style:{padding:"0.5rem 1rem",backgroundColor:"#2196f3",border:"none",borderRadius:"4px",color:"white",cursor:"pointer",fontWeight:"bold",whiteSpace:"nowrap"},children:"버전 추가"}),f.jsx("button",{onClick:()=>Le(H.id),style:{padding:"0.5rem 1rem",backgroundColor:"#757575",border:"none",borderRadius:"4px",color:"white",cursor:"pointer",fontWeight:"bold",whiteSpace:"nowrap"},children:"수정"}),f.jsx("button",{onClick:()=>Ir(H.id),style:{padding:"0.5rem 1rem",backgroundColor:"#d32f2f",border:"none",borderRadius:"4px",color:"white",cursor:"pointer",fontWeight:"bold",whiteSpace:"nowrap"},children:"삭제"})]})]}),f.jsxs("div",{style:{marginTop:"1rem",borderTop:"1px solid #e0e0e0",paddingTop:"1rem"},children:[f.jsxs("h4",{style:{margin:"0 0 1rem 0",color:"#333",fontSize:"1rem"},children:["버전 목록 (",b.length,")"]}),b.length===0?f.jsx("p",{style:{color:"#888",textAlign:"center",padding:"1rem",backgroundColor:"#f9f9f9",borderRadius:"4px"},children:"등록된 버전이 없습니다."}):f.jsxs(f.Fragment,{children:[b.length>0&&f.jsx("div",{style:{marginBottom:"1rem"},children:f.jsx("div",{style:{padding:"1rem",backgroundColor:"#e3f2fd",borderRadius:"4px",border:"2px solid #2196f3",marginBottom:"0.5rem"},children:f.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"start"},children:[f.jsxs("div",{style:{flex:1},children:[f.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"0.5rem",marginBottom:"0.5rem"},children:[f.jsxs("h4",{style:{margin:0,color:"#333"},children:["버전 ",b[b.length-1].version_number]}),f.jsx("span",{style:{padding:"0.25rem 0.5rem",backgroundColor:"#2196f3",color:"white",borderRadius:"4px",fontSize:"0.75rem",fontWeight:"bold"},children:"최신"})]}),f.jsxs("p",{style:{fontSize:"0.85rem",color:"#888",margin:"0.25rem 0"},children:["등록일: ",new Date(b[b.length-1].created_at).toLocaleDateString()]}),b[b.length-1].release_notes&&f.jsxs("p",{style:{fontSize:"0.9rem",color:"#555",margin:"0.5rem 0",fontStyle:"italic"},children:['"',b[b.length-1].release_notes,'"']}),f.jsxs("div",{style:{marginTop:"0.75rem"},children:[b[b.length-1].pico_apk_url?f.jsxs("div",{style:{marginBottom:"0.5rem"},children:[f.jsx("span",{style:{fontWeight:"bold",color:"#555"},children:"Pico: "}),f.jsx("a",{href:b[b.length-1].pico_apk_url,target:"_blank",rel:"noopener noreferrer",style:{color:"#2196f3",fontSize:"0.9rem",textDecoration:"underline"},children:"다운로드"}),b[b.length-1].pico_apk_size&&f.jsxs("span",{style:{color:"#666",fontSize:"0.9rem",marginLeft:"0.5rem"},children:["(",(b[b.length-1].pico_apk_size/1024/1024).toFixed(2)," MB)"]})]}):f.jsxs("div",{style:{marginBottom:"0.5rem"},children:[f.jsx("span",{style:{fontWeight:"bold",color:"#999"},children:"Pico: "}),f.jsx("span",{style:{color:"#999",fontSize:"0.9rem",fontStyle:"italic"},children:"없음"})]}),b[b.length-1].quest_apk_url?f.jsxs("div",{children:[f.jsx("span",{style:{fontWeight:"bold",color:"#555"},children:"Quest: "}),f.jsx("a",{href:b[b.length-1].quest_apk_url,target:"_blank",rel:"noopener noreferrer",style:{color:"#2196f3",fontSize:"0.9rem",textDecoration:"underline"},children:"다운로드"}),b[b.length-1].quest_apk_size&&f.jsxs("span",{style:{color:"#666",fontSize:"0.9rem",marginLeft:"0.5rem"},children:["(",(b[b.length-1].quest_apk_size/1024/1024).toFixed(2)," MB)"]})]}):f.jsxs("div",{children:[f.jsx("span",{style:{fontWeight:"bold",color:"#999"},children:"Quest: "}),f.jsx("span",{style:{color:"#999",fontSize:"0.9rem",fontStyle:"italic"},children:"없음"})]})]})]}),f.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"0.5rem"},children:[f.jsx("button",{onClick:()=>ot(H.id,b[b.length-1]),style:{padding:"0.5rem 1rem",backgroundColor:"#2196f3",border:"none",borderRadius:"4px",color:"white",cursor:"pointer",fontSize:"0.9rem",whiteSpace:"nowrap"},children:"수정"}),f.jsx("button",{onClick:()=>vr(H.id,b[b.length-1].id),style:{padding:"0.5rem 1rem",backgroundColor:"#d32f2f",border:"none",borderRadius:"4px",color:"white",cursor:"pointer",fontSize:"0.9rem",whiteSpace:"nowrap"},children:"삭제"})]})]})})}),b.length>1&&f.jsxs(f.Fragment,{children:[f.jsxs("button",{onClick:()=>yr(H.id),style:{padding:"0.5rem 1rem",backgroundColor:"#f5f5f5",border:"1px solid #ddd",borderRadius:"4px",color:"#333",cursor:"pointer",fontWeight:"bold",width:"100%",display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:"0.5rem"},children:[f.jsxs("span",{children:["이전 버전 (",b.length-1,")"]}),f.jsx("span",{children:z.has(H.id)?"▲":"▼"})]}),z.has(H.id)&&f.jsx("div",{style:{marginTop:"0.5rem"},children:b.slice(0,-1).reverse().map(fe=>f.jsx("div",{style:{padding:"1rem",backgroundColor:"#f9f9f9",borderRadius:"4px",border:"1px solid #e0e0e0",marginBottom:"0.5rem"},children:f.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"start"},children:[f.jsxs("div",{style:{flex:1},children:[f.jsxs("h4",{style:{margin:"0 0 0.5rem 0",color:"#333"},children:["버전 ",fe.version_number]}),f.jsxs("p",{style:{fontSize:"0.85rem",color:"#888",margin:"0.25rem 0"},children:["등록일: ",new Date(fe.created_at).toLocaleDateString()]}),fe.release_notes&&f.jsxs("p",{style:{fontSize:"0.9rem",color:"#555",margin:"0.5rem 0",fontStyle:"italic"},children:['"',fe.release_notes,'"']}),f.jsxs("div",{style:{marginTop:"0.75rem"},children:[fe.pico_apk_url?f.jsxs("div",{style:{marginBottom:"0.5rem"},children:[f.jsx("span",{style:{fontWeight:"bold",color:"#555"},children:"Pico: "}),f.jsx("a",{href:fe.pico_apk_url,target:"_blank",rel:"noopener noreferrer",style:{color:"#2196f3",fontSize:"0.9rem",textDecoration:"underline"},children:"다운로드"}),fe.pico_apk_size&&f.jsxs("span",{style:{color:"#666",fontSize:"0.9rem",marginLeft:"0.5rem"},children:["(",(fe.pico_apk_size/1024/1024).toFixed(2)," MB)"]})]}):f.jsxs("div",{style:{marginBottom:"0.5rem"},children:[f.jsx("span",{style:{fontWeight:"bold",color:"#999"},children:"Pico: "}),f.jsx("span",{style:{color:"#999",fontSize:"0.9rem",fontStyle:"italic"},children:"없음"})]}),fe.quest_apk_url?f.jsxs("div",{children:[f.jsx("span",{style:{fontWeight:"bold",color:"#555"},children:"Quest: "}),f.jsx("a",{href:fe.quest_apk_url,target:"_blank",rel:"noopener noreferrer",style:{color:"#2196f3",fontSize:"0.9rem",textDecoration:"underline"},children:"다운로드"}),fe.quest_apk_size&&f.jsxs("span",{style:{color:"#666",fontSize:"0.9rem",marginLeft:"0.5rem"},children:["(",(fe.quest_apk_size/1024/1024).toFixed(2)," MB)"]})]}):f.jsxs("div",{children:[f.jsx("span",{style:{fontWeight:"bold",color:"#999"},children:"Quest: "}),f.jsx("span",{style:{color:"#999",fontSize:"0.9rem",fontStyle:"italic"},children:"없음"})]})]})]}),f.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"0.5rem"},children:[f.jsx("button",{onClick:()=>ot(H.id,fe),style:{padding:"0.5rem 1rem",backgroundColor:"#2196f3",border:"none",borderRadius:"4px",color:"white",cursor:"pointer",fontSize:"0.9rem",whiteSpace:"nowrap"},children:"수정"}),f.jsx("button",{onClick:()=>vr(H.id,fe.id),style:{padding:"0.5rem 1rem",backgroundColor:"#d32f2f",border:"none",borderRadius:"4px",color:"white",cursor:"pointer",fontSize:"0.9rem",whiteSpace:"nowrap"},children:"삭제"})]})]})},fe.id))})]})]})]})]},H.id)})})]})]})}function Xm(){const[o,i]=N.useState([]),[a,u]=N.useState(!0),[d,h]=N.useState("pending"),[p,v]=N.useState({page:1,total:0}),g=async()=>{try{u(!0);const z=await $m({status:d,page:p.page,limit:50});i(z.requests||[]),v(z.pagination||{page:1,total:0})}catch(z){console.error("Failed to load download requests:",z),alert("다운로드 요청 목록을 불러오는 데 실패했습니다.")}finally{u(!1)}};N.useEffect(()=>{g()},[d]);const x=async z=>{if(confirm("이 요청을 승인하시겠습니까?"))try{await Hm(z,1),alert("요청이 승인되었습니다."),g()}catch(F){console.error("Failed to approve request:",F),alert(`승인에 실패했습니다: ${F.message}`)}},S=async z=>{if(confirm("이 요청을 거부하시겠습니까?"))try{await Qm(z,1),alert("요청이 거부되었습니다."),g()}catch(F){console.error("Failed to reject request:",F),alert(`거부에 실패했습니다: ${F.message}`)}},_=z=>{const F={padding:"0.25rem 0.75rem",borderRadius:"4px",fontSize:"0.85rem",fontWeight:"bold"};switch(z){case"pending":return{...F,backgroundColor:"#ff9800",color:"white"};case"approved":return{...F,backgroundColor:"#4caf50",color:"white"};case"rejected":return{...F,backgroundColor:"#d32f2f",color:"white"};default:return{...F,backgroundColor:"#757575",color:"white"}}},C=z=>{switch(z){case"pending":return"대기 중";case"approved":return"승인됨";case"rejected":return"거부됨";default:return z}},M=z=>{switch(z){case"pico":return"Pico";case"quest":return"Quest";default:return z}};return f.jsxs("div",{children:[f.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:"1.5rem"},children:[f.jsx("h1",{className:"text-white font-bold text-2xl",children:"설치요청 관리"}),f.jsx("button",{onClick:g,style:{padding:"0.75rem 1.5rem",backgroundColor:"#6841b9",border:"none",borderRadius:"4px",color:"white",cursor:"pointer",fontWeight:"bold",fontSize:"1rem"},children:"새로고침"})]}),f.jsxs("div",{style:{marginBottom:"1.5rem",display:"flex",gap:"0.5rem"},children:[f.jsx("button",{onClick:()=>h("pending"),style:{padding:"0.5rem 1rem",backgroundColor:d==="pending"?"#280E5C":"#424242",border:"none",borderRadius:"4px",color:"white",cursor:"pointer",fontWeight:d==="pending"?"bold":"normal"},children:"대기 중"}),f.jsx("button",{onClick:()=>h("approved"),style:{padding:"0.5rem 1rem",backgroundColor:d==="approved"?"#280E5C":"#424242",border:"none",borderRadius:"4px",color:"white",cursor:"pointer",fontWeight:d==="approved"?"bold":"normal"},children:"승인됨"}),f.jsx("button",{onClick:()=>h("rejected"),style:{padding:"0.5rem 1rem",backgroundColor:d==="rejected"?"#280E5C":"#424242",border:"none",borderRadius:"4px",color:"white",cursor:"pointer",fontWeight:d==="rejected"?"bold":"normal"},children:"거부됨"}),f.jsx("button",{onClick:()=>h(""),style:{padding:"0.5rem 1rem",backgroundColor:d===""?"#280E5C":"#424242",border:"none",borderRadius:"4px",color:"white",cursor:"pointer",fontWeight:d===""?"bold":"normal"},children:"전체"})]}),a?f.jsx("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",minHeight:"60vh",color:"white",fontSize:"1.5rem"},children:"로딩 중..."}):f.jsxs("div",{style:{backgroundColor:"white",borderRadius:"8px",overflow:"hidden",boxShadow:"0 2px 8px rgba(0, 0, 0, 0.1)"},children:[f.jsxs("table",{style:{width:"100%",borderCollapse:"collapse"},children:[f.jsx("thead",{children:f.jsxs("tr",{style:{backgroundColor:"#f5f5f5",borderBottom:"2px solid #ddd"},children:[f.jsx("th",{style:{padding:"1rem",textAlign:"left",fontWeight:"bold",color:"#333",width:"50px"},children:"No."}),f.jsx("th",{style:{padding:"1rem",textAlign:"left",fontWeight:"bold",color:"#333",width:"80px"},children:"요청 번호"}),f.jsx("th",{style:{padding:"1rem",textAlign:"left",fontWeight:"bold",color:"#333",width:"150px"},children:"요청인"}),f.jsx("th",{style:{padding:"1rem",textAlign:"left",fontWeight:"bold",color:"#333"},children:"컨텐츠명"}),f.jsx("th",{style:{padding:"1rem",textAlign:"left",fontWeight:"bold",color:"#333",width:"100px"},children:"버전"}),f.jsx("th",{style:{padding:"1rem",textAlign:"left",fontWeight:"bold",color:"#333",width:"80px"},children:"종류"}),f.jsx("th",{style:{padding:"1rem",textAlign:"left",fontWeight:"bold",color:"#333",width:"100px"},children:"상태"}),f.jsx("th",{style:{padding:"1rem",textAlign:"left",fontWeight:"bold",color:"#333",width:"150px"},children:"요청시간"}),f.jsx("th",{style:{padding:"1rem",textAlign:"center",fontWeight:"bold",color:"#333",width:"180px"},children:"작업"})]})}),f.jsx("tbody",{children:o.length===0?f.jsx("tr",{children:f.jsx("td",{colSpan:"10",style:{padding:"2rem",textAlign:"center",color:"#888"},children:"요청 내역이 없습니다."})}):o.map((z,F)=>f.jsxs("tr",{style:{borderBottom:"1px solid #e0e0e0"},children:[f.jsx("td",{style:{padding:"1rem",color:"#333"},children:F+1}),f.jsx("td",{style:{padding:"1rem",color:"#333",fontWeight:"bold"},children:z.id}),f.jsx("td",{style:{padding:"1rem",color:"#333"},children:z.user_login}),f.jsx("td",{style:{padding:"1rem",color:"#333"},children:z.content_title}),f.jsx("td",{style:{padding:"1rem",color:"#333",fontWeight:"bold"},children:z.version_number}),f.jsx("td",{style:{padding:"1rem",color:"#333"},children:f.jsx("span",{style:{padding:"0.25rem 0.5rem",backgroundColor:z.device_type==="pico"?"#e3f2fd":"#fff3e0",color:z.device_type==="pico"?"#1976d2":"#f57c00",borderRadius:"4px",fontSize:"0.85rem",fontWeight:"bold"},children:M(z.device_type)})}),f.jsx("td",{className:"whitespace-nowrap",style:{padding:"1rem"},children:f.jsx("span",{style:_(z.status),children:C(z.status)})}),f.jsx("td",{style:{padding:"1rem",color:"#666",fontSize:"0.9rem"},children:new Date(z.created_at).toLocaleString("ko-KR")}),f.jsx("td",{className:"whitespace-nowrap",style:{padding:"1rem",textAlign:"center"},children:z.status==="pending"?f.jsxs("div",{style:{display:"flex",gap:"0.5rem",justifyContent:"center"},children:[f.jsx("button",{onClick:()=>x(z.id),style:{padding:"0.5rem 1rem",backgroundColor:"#4caf50",border:"none",borderRadius:"4px",color:"white",cursor:"pointer",fontWeight:"bold",fontSize:"0.9rem"},children:"승인"}),f.jsx("button",{onClick:()=>S(z.id),style:{padding:"0.5rem 1rem",backgroundColor:"#d32f2f",border:"none",borderRadius:"4px",color:"white",cursor:"pointer",fontWeight:"bold",fontSize:"0.9rem"},children:"거부"})]}):f.jsxs("div",{style:{color:"#888",fontSize:"0.9rem"},children:[z.status==="approved"&&z.approved_at&&f.jsxs("div",{children:["승인: ",new Date(z.approved_at).toLocaleString("ko-KR",{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})]}),z.status==="approved"&&z.is_downloaded&&f.jsx("div",{style:{color:"#4caf50",fontWeight:"bold",marginTop:"0.25rem"},children:"다운로드 완료"}),z.status==="rejected"&&"-"]})})]},z.id))})]}),p.total>0&&f.jsxs("div",{style:{padding:"1rem",textAlign:"center",borderTop:"1px solid #e0e0e0",color:"#666"},children:["총 ",p.total,"개의 요청"]})]})]})}const Kd=o=>{if(!o)return"";const i=document.createElement("textarea");i.innerHTML=o;const a=i.value,u=document.createElement("div");return u.innerHTML=a,u.textContent||u.innerText||""},qd="https://training.contentsda.kr/wp-json",Gm=async o=>{try{const i=await fetch(`${qd}/jwt-auth/v1/token`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({username:o.username,password:o.password})}),a=await i.json();if(!i.ok){const u=a.message?Kd(a.message):"로그인에 실패했습니다.";throw new Error(u)}return a}catch(i){throw console.error("Error during login:",i),i}},Zm=async()=>{try{const o=localStorage.getItem("jwt_token"),i=await fetch(`${qd}/custom/v1/me`,{headers:{Authorization:`Bearer ${o}`,"Content-Type":"application/json"}}),a=await i.json();if(!i.ok){const u=a.message?Kd(a.message):"사용자 정보를 가져오는데 실패했습니다.";throw new Error(u)}return a}catch(o){throw console.error("Error fetching current user:",o),o}};function eg(){const[o,i]=N.useState({username:"",password:""}),[a,u]=N.useState(""),[d,h]=N.useState(!1),p=wi(),v=async g=>{g.preventDefault(),u(""),h(!0);try{const x=await Gm({username:o.username,password:o.password});localStorage.setItem("jwt_token",x.token);const S=await Zm();if(!S.roles||!S.roles.includes("administrator")){localStorage.removeItem("jwt_token"),u("관리자 권한이 없습니다."),h(!1);return}localStorage.setItem("isAdminLoggedIn","true"),localStorage.setItem("currentAdmin",JSON.stringify({id:S.id,username:S.username||S.name,name:S.name,email:S.email,roles:S.roles})),p("/")}catch(x){u(x.message||"아이디 또는 비밀번호가 일치하지 않습니다."),h(!1)}};return f.jsx("div",{className:"admin-login-container",children:f.jsxs("div",{className:"admin-login-box",children:[f.jsx("h1",{children:"관리자 로그인"}),f.jsxs("form",{onSubmit:v,children:[f.jsxs("div",{className:"admin-form-group",children:[f.jsx("label",{children:"아이디"}),f.jsx("input",{type:"text",value:o.username,onChange:g=>i({...o,username:g.target.value}),required:!0,placeholder:"관리자 아이디"})]}),f.jsxs("div",{className:"admin-form-group",children:[f.jsx("label",{children:"비밀번호"}),f.jsx("input",{type:"password",value:o.password,onChange:g=>i({...o,password:g.target.value}),required:!0,placeholder:"비밀번호"})]}),a&&f.jsx("div",{style:{marginBottom:"1rem",padding:"0.75rem",backgroundColor:"#ffebee",color:"#c62828",borderRadius:"4px",fontSize:"0.9rem"},children:a}),f.jsx("button",{type:"submit",className:"login-button",disabled:d,children:d?"로그인 중...":"로그인"})]})]})})}const tg=fm([{path:"/login",element:f.jsx(eg,{})},{path:"/",element:f.jsx(Pm,{children:f.jsx(Rm,{})}),children:[{index:!0,element:f.jsx(Jm,{})},{path:"notice",element:f.jsx(Tm,{})},{path:"courses",element:f.jsx(Km,{})},{path:"download-requests",element:f.jsx(Xm,{})}]}],{basename:"/apk-admin"}),Yd=()=>{const o={id:Date.now(),name:"누구나 VR 교육 콘텐츠",description:`이 콘텐츠는 VR을 활용한 혁신적인 교육 프로그램입니다.
주요 특징:
- 몰입형 가상현실 체험
- 과학 실험 시뮬레이션
- 코딩 학습 도구
- 안전 교육 시나리오
학습자들은 VR 환경에서 직접 실험하고 체험하며 배울 수 있습니다.`,thumbnailId:null,videoIds:[],versions:[{id:Date.now()-1e5,versionNumber:"v1.0.0",picoApkId:"dummy_pico_1",picoFileName:"nuguna-vr-pico-v1.0.0.apk",picoFileSize:"45.23 MB",questApkId:"dummy_quest_1",questFileName:"nuguna-vr-quest-v1.0.0.apk",questFileSize:"50.12 MB",createdAt:new Date(Date.now()-2592e6).toLocaleDateString()},{id:Date.now()-5e4,versionNumber:"v1.1.0",picoApkId:"dummy_pico_2",picoFileName:"nuguna-vr-pico-v1.1.0.apk",picoFileSize:"46.50 MB",questApkId:null,questFileName:null,questFileSize:null,createdAt:new Date(Date.now()-1296e6).toLocaleDateString()},{id:Date.now(),versionNumber:"v1.2.0",picoApkId:null,picoFileName:null,picoFileSize:null,questApkId:"dummy_quest_3",questFileName:"nuguna-vr-quest-v1.2.0.apk",questFileSize:"52.80 MB",createdAt:new Date().toLocaleDateString()}],isPublished:!0,createdAt:new Date(Date.now()-5184e6).toLocaleDateString()};return localStorage.setItem("contentList",JSON.stringify([o])),window.dispatchEvent(new Event("contentListUpdated")),console.log("✅ 더미 데이터가 생성되었습니다!"),console.log("콘텐츠:",o),o},Jd=()=>{localStorage.removeItem("contentList"),window.dispatchEvent(new Event("contentListUpdated")),console.log("🗑️ 더미 데이터가 삭제되었습니다.")};typeof window<"u"&&(window.createDummyData=Yd,window.clearDummyData=Jd,console.log("🔧 더미 데이터 유틸리티가 로드되었습니다."),console.log("사용법:"),console.log(" - createDummyData() : 더미 데이터 생성"),console.log(" - clearDummyData() : 더미 데이터 삭제"));const rg=()=>{const o=JSON.parse(localStorage.getItem("users")||"[]");o.find(i=>i.username==="test")||(o.push({id:Date.now(),username:"test",email:"test@test.com",password:"1234",membershipLevel:"Student",createdAt:new Date().toISOString()}),localStorage.setItem("users",JSON.stringify(o)),console.log("Test account created: username: test, password: 1234"))};rg();window.createDummyData=Yd;window.clearDummyData=Jd;console.log("%c[Nuguna VR Dev Tools]","color: #6841b9; font-weight: bold; font-size: 14px");console.log("📦 더미 데이터 유틸리티:");console.log(" - createDummyData() : 더미 콘텐츠 데이터 생성");console.log(" - clearDummyData() : 더미 데이터 삭제");console.log(" ↳ 함수 실행 후 페이지를 새로고침하세요");Wp.createRoot(document.getElementById("root")).render(f.jsx(N.StrictMode,{children:f.jsx(Sm,{router:tg})}));