PageSourceSearch

https://lcm26-prod.web.app/assets/index-D0vldV-d.js

js lcm26-prod.web.app collected 2026-10-03 12:28:09 UTC 457,363 bytes, 2,814 lines download raw bytes

vendor: 6,483 bytes, lines 1-10
1const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/Libraries-CJP_yZao.js","assets/LibraryModal-Bzbzv5NF.js","assets/useEscapeKey-Z3OiUK1_.js","assets/timezone-lbQe0Hjp.js","assets/Users-Cifz8MoL.js","assets/Stories-CNz1gFvV.js","assets/storagePath-CwGt9_q2.js","assets/uploadCleanup-DpPNgZes.js","assets/languages-CCA5Hx_w.js","assets/Schedules-Dl25hdO9.js","assets/luxon-B2tYaDwt.js","assets/PhoneNumbers-RUh8_iDu.js","assets/Widgets-BG7WpCGU.js","assets/loadWidgetScript-CbO8KZSY.js","assets/WidgetsDemo-ixKnV4Xc.js","assets/Messages-CJ2SeC43.js","assets/Logs-B18BpfXD.js","assets/Utilities-BGdKiHcW.js","assets/LibraryView-j22g0GhA.js","assets/NowPlayingAdmin-Bqn0_Ykl.js"])))=>i.map(i=>d[i]);
2function Tg(e,t){for(var n=0;n<t.length;n++){const r=t[n];if(typeof r!="string"&&!Array.isArray(r)){for(const i in r)if(i!=="default"&&!(i in e)){const s=Object.getOwnPropertyDescriptor(r,i);s&&Object.defineProperty(e,i,s.get?s:{enumerable:!0,get:()=>r[i]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))r(i);new MutationObserver(i=>{for(const s of i)if(s.type==="childList")for(const o of s.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&r(o)}).observe(document,{childList:!0,subtree:!0});function n(i){const s={};return i.integrity&&(s.integrity=i.integrity),i.referrerPolicy&&(s.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?s.credentials="include":i.crossOrigin==="anonymous"?s.credentials="omit":s.credentials="same-origin",s}function r(i){if(i.ep)return;i.ep=!0;const s=n(i);fetch(i.href,s)}})();var ub=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Cg(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Ad={exports:{}},$s={},Dd={exports:{}},A={};/**
3 * @license React
4 * react.production.min.js
5 *
6 * Copyright (c) Facebook, Inc. and its affiliates.
7 *
8 * This source code is licensed under the MIT license found in the
9 * LICENSE file in the root directory of this source tree.
10 */var hi=Symbol.for("react.element"),Ig=Symbol.for("react.portal"),Rg=Symbol.for("react.fragment"),Pg=Symbol.for("react.strict_mode"),xg=Symbol.for("react.profiler"),Og=Symbol.for("react.provider"),Lg=Symbol.for("react.context"),Ng=Symbol.for("react.forward_ref"),Ag=Symbol.for("react.suspense"),Dg=Symbol.for("react.memo"),Ug=Symbol.for("react.lazy"),Tu=Symbol.iterator;function Mg(e){return e===null||typeof e!="object"?null:(e=Tu&&e[Tu]||e["@@iterator"],typeof e=="function"?e:null)}var Ud={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},Md=Object.assign,jd={};function ar(e,t,n){this.props=e,this.context=t,this.refs=jd,this.updater=n||Ud}ar.prototype.isReactComponent={};ar.prototype.setState=function(e,t){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,t,"setState")};ar.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function Fd(){}Fd.prototype=ar.prototype;function ll(e,t,n){this.props=e,this.context=t,this.refs=jd,this.updater=n||Ud}var ul=ll.prototype=new Fd;ul.constructor=ll;Md(ul,ar.prototype);ul.isPureReactComponent=!0;var Cu=Array.isArray,zd=Object.prototype.hasOwnProperty,cl={current:null},Bd={key:!0,ref:!0,__self:!0,__source:!0};function Wd(e,t,n){var r,i={},s=null,o=null;if(t!=null)for(r in t.ref!==void 0&&(o=t.ref),t.key!==void 0&&(s=""+t.key),t)zd.call(t,r)&&!Bd.hasOwnProperty(r)&&(i[r]=t[r]);var a=arguments.length-2;if(a===1)i.children=n;else if(1<a){for(var l=Array(a),u=0;u<a;u++)l[u]=arguments[u+2];i.children=l}if(e&&e.defaultProps)for(r in a=e.defaultProps,a)i[r]===void 0&&(i[r]=a[r]);return{$$typeof:hi,type:e,key:s,ref:o,props:i,_owner:cl.current}}function jg(e,t){return{$$typeof:hi,type:e.type,key:t,ref:e.ref,props:e.props,_owner:e._owner}}function dl(e){return typeof e=="object"&&e!==null&&e.$$typeof===hi}function Fg(e){var t={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,function(n){return t[n]})}var Iu=/\/+/g;function vo(e,t){return typeof e=="object"&&e!==null&&e.key!=null?Fg(""+e.key):t.toString(36)}function Gi(e,t,n,r,i){var s=typeof e;(s==="undefined"||s==="boolean")&&(e=null);var o=!1;if(e===null)o=!0;else switch(s){case"string":case"number":o=!0;break;case"object":switch(e.$$typeof){case hi:case Ig:o=!0}}if(o)return o=e,i=i(o),e=r===""?"."+vo(o,0):r,Cu(i)?(n="",e!=null&&(n=e.replace(Iu,"$&/")+"/"),Gi(i,t,n,"",function(u){return u})):i!=null&&(dl(i)&&(i=jg(i,n+(!i.key||o&&o.key===i.key?"":(""+i.key).replace(Iu,"$&/")+"/")+e)),t.push(i)),1;if(o=0,r=r===""?".":r+":",Cu(e))for(var a=0;a<e.length;a++){s=e[a];var l=r+vo(s,a);o+=Gi(s,t,n,l,i)}else if(l=Mg(e),typeof l=="function")for(e=l.call(e),a=0;!(s=e.next()).done;)s=s.value,l=r+vo(s,a++),o+=Gi(s,t,n,l,i);else if(s==="object")throw t=String(e),Error("Objects are not valid as a React child (found: "+(t==="[object Object]"?"object with keys {"+Object.keys(e).join(", ")+"}":t)+"). If you meant to render a collection of children, use an array instead.");return o}function Ci(e,t,n){if(e==null)return e;var r=[],i=0;return Gi(e,r,"","",function(s){return t.call(n,s,i++)}),r}function zg(e){if(e._status===-1){var t=e._result;t=t(),t.then(function(n){(e._status===0||e._status===-1)&&(e._status=1,e._result=n)},function(n){(e._status===0||e._status===-1)&&(e._status=2,e._result=n)}),e._status===-1&&(e._status=0,e._result=t)}if(e._status===1)return e._result.default;throw e._result}var ye={current:null},qi={transition:null},Bg={ReactCurrentDispatcher:ye,ReactCurrentBatchConfig:qi,ReactCurrentOwner:cl};function $d(){throw Error("act(...) is not supported in production builds of React.")}A.Children={map:Ci,forEach:function(e,t,n){Ci(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return Ci(e,function(){t++}),t},toArray:function(e){return Ci(e,function(t){return t})||[]},only:function(e){if(!dl(e))throw Error("React.Children.only expected to receive a single React element child.");return e}};A.Component=ar;A.Fragment=Rg;A.Profiler=xg;A.PureComponent=ll;A.StrictMode=Pg;A.Suspense=Ag;
vendor: 4,692 bytes, lines 10-26
10A.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=Bg;A.act=$d;A.cloneElement=function(e,t,n){if(e==null)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+e+".");var r=Md({},e.props),i=e.key,s=e.ref,o=e._owner;if(t!=null){if(t.ref!==void 0&&(s=t.ref,o=cl.current),t.key!==void 0&&(i=""+t.key),e.type&&e.type.defaultProps)var a=e.type.defaultProps;for(l in t)zd.call(t,l)&&!Bd.hasOwnProperty(l)&&(r[l]=t[l]===void 0&&a!==void 0?a[l]:t[l])}var l=arguments.length-2;if(l===1)r.children=n;else if(1<l){a=Array(l);for(var u=0;u<l;u++)a[u]=arguments[u+2];r.children=a}return{$$typeof:hi,type:e.type,key:i,ref:s,props:r,_owner:o}};A.createContext=function(e){return e={$$typeof:Lg,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null},e.Provider={$$typeof:Og,_context:e},e.Consumer=e};A.createElement=Wd;A.createFactory=function(e){var t=Wd.bind(null,e);return t.type=e,t};A.createRef=function(){return{current:null}};A.forwardRef=function(e){return{$$typeof:Ng,render:e}};A.isValidElement=dl;A.lazy=function(e){return{$$typeof:Ug,_payload:{_status:-1,_result:e},_init:zg}};A.memo=function(e,t){return{$$typeof:Dg,type:e,compare:t===void 0?null:t}};A.startTransition=function(e){var t=qi.transition;qi.transition={};try{e()}finally{qi.transition=t}};A.unstable_act=$d;A.useCallback=function(e,t){return ye.current.useCallback(e,t)};A.useContext=function(e){return ye.current.useContext(e)};A.useDebugValue=function(){};A.useDeferredValue=function(e){return ye.current.useDeferredValue(e)};A.useEffect=function(e,t){return ye.current.useEffect(e,t)};A.useId=function(){return ye.current.useId()};A.useImperativeHandle=function(e,t,n){return ye.current.useImperativeHandle(e,t,n)};A.useInsertionEffect=function(e,t){return ye.current.useInsertionEffect(e,t)};A.useLayoutEffect=function(e,t){return ye.current.useLayoutEffect(e,t)};A.useMemo=function(e,t){return ye.current.useMemo(e,t)};A.useReducer=function(e,t,n){return ye.current.useReducer(e,t,n)};A.useRef=function(e){return ye.current.useRef(e)};A.useState=function(e){return ye.current.useState(e)};A.useSyncExternalStore=function(e,t,n){return ye.current.useSyncExternalStore(e,t,n)};A.useTransition=function(){return ye.current.useTransition()};A.version="18.3.1";Dd.exports=A;var w=Dd.exports;const Vd=Cg(w),Wg=Tg({__proto__:null,default:Vd},[w]);/**
11 * @license React
12 * react-jsx-runtime.production.min.js
13 *
14 * Copyright (c) Facebook, Inc. and its affiliates.
15 *
16 * This source code is licensed under the MIT license found in the
17 * LICENSE file in the root directory of this source tree.
18 */var $g=w,Vg=Symbol.for("react.element"),Hg=Symbol.for("react.fragment"),Gg=Object.prototype.hasOwnProperty,qg=$g.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,Kg={key:!0,ref:!0,__self:!0,__source:!0};function Hd(e,t,n){var r,i={},s=null,o=null;n!==void 0&&(s=""+n),t.key!==void 0&&(s=""+t.key),t.ref!==void 0&&(o=t.ref);for(r in t)Gg.call(t,r)&&!Kg.hasOwnProperty(r)&&(i[r]=t[r]);if(e&&e.defaultProps)for(r in t=e.defaultProps,t)i[r]===void 0&&(i[r]=t[r]);return{$$typeof:Vg,type:e,key:s,ref:o,props:i,_owner:qg.current}}$s.Fragment=Hg;$s.jsx=Hd;$s.jsxs=Hd;Ad.exports=$s;var S=Ad.exports,ta={},Gd={exports:{}},Le={},qd={exports:{}},Kd={};/**
19 * @license React
20 * scheduler.production.min.js
21 *
22 * Copyright (c) Facebook, Inc. and its affiliates.
23 *
24 * This source code is licensed under the MIT license found in the
25 * LICENSE file in the root directory of this source tree.
26 */(function(e){function t(P,L){var N=P.length;P.push(L);e:for(;0<N;){var X=N-1>>>1,re=P[X];if(0<i(re,L))P[X]=L,P[N]=re,N=X;else break e}}function n(P){return P.length===0?null:P[0]}function r(P){if(P.length===0)return null;var L=P[0],N=P.pop();if(N!==L){P[0]=N;e:for(var X=0,re=P.length,bi=re>>>1;X<bi;){var nn=2*(X+1)-1,yo=P[nn],rn=nn+1,Ti=P[rn];if(0>i(yo,N))rn<re&&0>i(Ti,yo)?(P[X]=Ti,P[rn]=N,X=rn):(P[X]=yo,P[nn]=N,X=nn);else if(rn<re&&0>i(Ti,N))P[X]=Ti,P[rn]=N,X=rn;else break e}}return L}function i(P,L){var N=P.sortIndex-L.sortIndex;return N!==0?N:P.id-L.id}if(typeof performance=="object"&&typeof performance.now=="function"){var s=performance;e.unstable_now=function(){return s.now()}}else{var o=Date,a=o.now();e.unstable_now=function(){return o.now()-a}}var l=[],u=[],h=1,c=null,g=3,v=!1,y=!1,_=!1,k=typeof setTimeout=="function"?setTimeout:null,p=typeof clearTimeout=="function"?clearTimeout:null,d=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function f(P){for(var L=n(u);
vendor: 9,552 bytes, lines 26-35
26L!==null;){if(L.callback===null)r(u);else if(L.startTime<=P)r(u),L.sortIndex=L.expirationTime,t(l,L);else break;L=n(u)}}function m(P){if(_=!1,f(P),!y)if(n(l)!==null)y=!0,go(b);else{var L=n(u);L!==null&&mo(m,L.startTime-P)}}function b(P,L){y=!1,_&&(_=!1,p(R),R=-1),v=!0;var N=g;try{for(f(L),c=n(l);c!==null&&(!(c.expirationTime>L)||P&&!Ce());){var X=c.callback;if(typeof X=="function"){c.callback=null,g=c.priorityLevel;var re=X(c.expirationTime<=L);L=e.unstable_now(),typeof re=="function"?c.callback=re:c===n(l)&&r(l),f(L)}else r(l);c=n(l)}if(c!==null)var bi=!0;else{var nn=n(u);nn!==null&&mo(m,nn.startTime-L),bi=!1}return bi}finally{c=null,g=N,v=!1}}var T=!1,C=null,R=-1,U=5,O=-1;function Ce(){return!(e.unstable_now()-O<U)}function mr(){if(C!==null){var P=e.unstable_now();O=P;var L=!0;try{L=C(!0,P)}finally{L?yr():(T=!1,C=null)}}else T=!1}var yr;if(typeof d=="function")yr=function(){d(mr)};else if(typeof MessageChannel<"u"){var bu=new MessageChannel,bg=bu.port2;bu.port1.onmessage=mr,yr=function(){bg.postMessage(null)}}else yr=function(){k(mr,0)};function go(P){C=P,T||(T=!0,yr())}function mo(P,L){R=k(function(){P(e.unstable_now())},L)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(P){P.callback=null},e.unstable_continueExecution=function(){y||v||(y=!0,go(b))},e.unstable_forceFrameRate=function(P){0>P||125<P?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):U=0<P?Math.floor(1e3/P):5},e.unstable_getCurrentPriorityLevel=function(){return g},e.unstable_getFirstCallbackNode=function(){return n(l)},e.unstable_next=function(P){switch(g){case 1:case 2:case 3:var L=3;break;default:L=g}var N=g;g=L;try{return P()}finally{g=N}},e.unstable_pauseExecution=function(){},e.unstable_requestPaint=function(){},e.unstable_runWithPriority=function(P,L){switch(P){case 1:case 2:case 3:case 4:case 5:break;default:P=3}var N=g;g=P;try{return L()}finally{g=N}},e.unstable_scheduleCallback=function(P,L,N){var X=e.unstable_now();switch(typeof N=="object"&&N!==null?(N=N.delay,N=typeof N=="number"&&0<N?X+N:X):N=X,P){case 1:var re=-1;break;case 2:re=250;break;case 5:re=1073741823;break;case 4:re=1e4;break;default:re=5e3}return re=N+re,P={id:h++,callback:L,priorityLevel:P,startTime:N,expirationTime:re,sortIndex:-1},N>X?(P.sortIndex=N,t(u,P),n(l)===null&&P===n(u)&&(_?(p(R),R=-1):_=!0,mo(m,N-X))):(P.sortIndex=re,t(l,P),y||v||(y=!0,go(b))),P},e.unstable_shouldYield=Ce,e.unstable_wrapCallback=function(P){var L=g;return function(){var N=g;g=L;try{return P.apply(this,arguments)}finally{g=N}}}})(Kd);qd.exports=Kd;var Qg=qd.exports;/**
27 * @license React
28 * react-dom.production.min.js
29 *
30 * Copyright (c) Facebook, Inc. and its affiliates.
31 *
32 * This source code is licensed under the MIT license found in the
33 * LICENSE file in the root directory of this source tree.
34 */var Yg=w,Oe=Qg;function E(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n]);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 Qd=new Set,Vr={};function En(e,t){Xn(e,t),Xn(e+"Capture",t)}function Xn(e,t){for(Vr[e]=t,e=0;e<t.length;e++)Qd.add(t[e])}var ft=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),na=Object.prototype.hasOwnProperty,Xg=/^[: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]*$/,Ru={},Pu={};function Jg(e){return na.call(Pu,e)?!0:na.call(Ru,e)?!1:Xg.test(e)?Pu[e]=!0:(Ru[e]=!0,!1)}function Zg(e,t,n,r){if(n!==null&&n.type===0)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return r?!1:n!==null?!n.acceptsBooleans:(e=e.toLowerCase().slice(0,5),e!=="data-"&&e!=="aria-");default:return!1}}function em(e,t,n,r){if(t===null||typeof t>"u"||Zg(e,t,n,r))return!0;if(r)return!1;if(n!==null)switch(n.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 ve(e,t,n,r,i,s,o){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=r,this.attributeNamespace=i,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=s,this.removeEmptyString=o}var le={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){le[e]=new ve(e,0,!1,e,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];le[t]=new ve(t,1,!1,e[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(e){le[e]=new ve(e,2,!1,e.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){le[e]=new ve(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){le[e]=new ve(e,3,!1,e.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(e){le[e]=new ve(e,3,!0,e,null,!1,!1)});["capture","download"].forEach(function(e){le[e]=new ve(e,4,!1,e,null,!1,!1)});["cols","rows","size","span"].forEach(function(e){le[e]=new ve(e,6,!1,e,null,!1,!1)});["rowSpan","start"].forEach(function(e){le[e]=new ve(e,5,!1,e.toLowerCase(),null,!1,!1)});var hl=/[\-:]([a-z])/g;function fl(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(hl,fl);le[t]=new ve(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(hl,fl);le[t]=new ve(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(hl,fl);le[t]=new ve(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(e){le[e]=new ve(e,1,!1,e.toLowerCase(),null,!1,!1)});le.xlinkHref=new ve("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(e){le[e]=new ve(e,1,!1,e.toLowerCase(),null,!0,!0)});function pl(e,t,n,r){var i=le.hasOwnProperty(t)?le[t]:null;(i!==null?i.type!==0:r||!(2<t.length)||t[0]!=="o"&&t[0]!=="O"||t[1]!=="n"&&t[1]!=="N")&&(em(t,n,i,r)&&(n=null),r||i===null?Jg(t)&&(n===null?e.removeAttribute(t):e.setAttribute(t,""+n)):i.mustUseProperty?e[i.propertyName]=n===null?i.type===3?!1:"":n:(t=i.attributeName,r=i.attributeNamespace,n===null?e.removeAttribute(t):(i=i.type,n=i===3||i===4&&n===!0?"":""+n,r?e.setAttributeNS(r,t,n):e.setAttribute(t,n))))}var wt=Yg.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,Ii=Symbol.for("react.element"),Pn=Symbol.for("react.portal"),xn=Symbol.for("react.fragment"),gl=Symbol.for("react.strict_mode"),ra=Symbol.for("react.profiler"),Yd=Symbol.for("react.provider"),Xd=Symbol.for("react.context"),ml=Symbol.for("react.forward_ref"),ia=Symbol.for("react.suspense"),sa=Symbol.for("react.suspense_list"),yl=Symbol.for("react.memo"),bt=Symbol.for("react.lazy"),Jd=Symbol.for("react.offscreen"),xu=Symbol.iterator;function vr(e){return e===null||typeof e!="object"?null:(e=xu&&e[xu]||e["@@iterator"],typeof e=="function"?e:null)}var K=Object.assign,wo;function Ir(e){if(wo===void 0)try{throw Error()}catch(n){var t=n.stack.trim().match(/\n( *(at )?)/);wo=t&&t[1]||""}return`
35`+wo+e}var _o=!1;function ko(e,t){if(!e||_o)return"";_o=!0;var n=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(u){var r=u}Reflect.construct(e,[],t)}else{try{t.call()}catch(u){r=u}e.call(t.prototype)}else{try{throw Error()}catch(u){r=u}e()}}
vendor: 5,495 bytes, lines 35-38
35catch(u){if(u&&r&&typeof u.stack=="string"){for(var i=u.stack.split(`
36`),s=r.stack.split(`
37`),o=i.length-1,a=s.length-1;1<=o&&0<=a&&i[o]!==s[a];)a--;for(;1<=o&&0<=a;o--,a--)if(i[o]!==s[a]){if(o!==1||a!==1)do if(o--,a--,0>a||i[o]!==s[a]){var l=`
38`+i[o].replace(" at new "," at ");return e.displayName&&l.includes("<anonymous>")&&(l=l.replace("<anonymous>",e.displayName)),l}while(1<=o&&0<=a);break}}}finally{_o=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?Ir(e):""}function tm(e){switch(e.tag){case 5:return Ir(e.type);case 16:return Ir("Lazy");case 13:return Ir("Suspense");case 19:return Ir("SuspenseList");case 0:case 2:case 15:return e=ko(e.type,!1),e;case 11:return e=ko(e.type.render,!1),e;case 1:return e=ko(e.type,!0),e;default:return""}}function oa(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 xn:return"Fragment";case Pn:return"Portal";case ra:return"Profiler";case gl:return"StrictMode";case ia:return"Suspense";case sa:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case Xd:return(e.displayName||"Context")+".Consumer";case Yd:return(e._context.displayName||"Context")+".Provider";case ml:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case yl:return t=e.displayName||null,t!==null?t:oa(e.type)||"Memo";case bt:t=e._payload,e=e._init;try{return oa(e(t))}catch{}}return null}function nm(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 oa(t);case 8:return t===gl?"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 Qt(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function Zd(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function rm(e){var t=Zd(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=""+e[t];if(!e.hasOwnProperty(t)&&typeof n<"u"&&typeof n.get=="function"&&typeof n.set=="function"){var i=n.get,s=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return i.call(this)},set:function(o){r=""+o,s.call(this,o)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(o){r=""+o},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function Ri(e){e._valueTracker||(e._valueTracker=rm(e))}function eh(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=Zd(e)?e.checked?"true":"false":e.value),e=r,e!==n?(t.setValue(e),!0):!1}function ls(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 aa(e,t){var n=t.checked;return K({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??e._wrapperState.initialChecked})}function Ou(e,t){var n=t.defaultValue==null?"":t.defaultValue,r=t.checked!=null?t.checked:t.defaultChecked;n=Qt(t.value!=null?t.value:n),e._wrapperState={initialChecked:r,initialValue:n,controlled:t.type==="checkbox"||t.type==="radio"?t.checked!=null:t.value!=null}}function th(e,t){t=t.checked,t!=null&&pl(e,"checked",t,!1)}function la(e,t){th(e,t);var n=Qt(t.value),r=t.type;if(n!=null)r==="number"?(n===0&&e.value===""||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if(r==="submit"||r==="reset"){e.removeAttribute("value");return}t.hasOwnProperty("value")?ua(e,t.type,n):t.hasOwnProperty("defaultValue")&&ua(e,t.type,Qt(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function Lu(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var r=t.type;if(!(r!=="submit"&&r!=="reset"||t.value!==void 0&&t.value!==null))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}n=e.name,n!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,n!==""&&(e.name=n)}function ua(e,t,n){(t!=="number"||ls(e.ownerDocument)!==e)&&(n==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}var Rr=Array.isArray;function Wn(e,t,n,r){if(e=e.options,t){t={};for(var i=0;i<n.length;i++)t["$"+n[i]]=!0;for(n=0;n<e.length;n++)i=t.hasOwnProperty("$"+e[n].value),e[n].selected!==i&&(e[n].selected=i),i&&r&&(e[n].defaultSelected=!0)}else{for(n=""+Qt(n),t=null,i=0;i<e.length;i++){if(e[i].value===n){e[i].selected=!0,r&&(e[i].defaultSelected=!0);return}t!==null||e[i].disabled||(t=e[i])}t!==null&&(t.selected=!0)}}function ca(e,t){if(t.dangerouslySetInnerHTML!=null)throw Error(E(91));return K({},t,{value:void 0,defaultValue:void 0,children:""+e._wrapperState.initialValue})}function Nu(e,t){var n=t.value;if(n==null){if(n=t.children,t=t.defaultValue,n!=null){if(t!=null)throw Error(E(92));
vendor: 12,671 bytes, line 38
38if(Rr(n)){if(1<n.length)throw Error(E(93));n=n[0]}t=n}t==null&&(t=""),n=t}e._wrapperState={initialValue:Qt(n)}}function nh(e,t){var n=Qt(t.value),r=Qt(t.defaultValue);n!=null&&(n=""+n,n!==e.value&&(e.value=n),t.defaultValue==null&&e.defaultValue!==n&&(e.defaultValue=n)),r!=null&&(e.defaultValue=""+r)}function Au(e){var t=e.textContent;t===e._wrapperState.initialValue&&t!==""&&t!==null&&(e.value=t)}function rh(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 da(e,t){return e==null||e==="http://www.w3.org/1999/xhtml"?rh(t):e==="http://www.w3.org/2000/svg"&&t==="foreignObject"?"http://www.w3.org/1999/xhtml":e}var Pi,ih=function(e){return typeof MSApp<"u"&&MSApp.execUnsafeLocalFunction?function(t,n,r,i){MSApp.execUnsafeLocalFunction(function(){return e(t,n,r,i)})}:e}(function(e,t){if(e.namespaceURI!=="http://www.w3.org/2000/svg"||"innerHTML"in e)e.innerHTML=t;else{for(Pi=Pi||document.createElement("div"),Pi.innerHTML="<svg>"+t.valueOf().toString()+"</svg>",t=Pi.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function Hr(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var Nr={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},im=["Webkit","ms","Moz","O"];Object.keys(Nr).forEach(function(e){im.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),Nr[t]=Nr[e]})});function sh(e,t,n){return t==null||typeof t=="boolean"||t===""?"":n||typeof t!="number"||t===0||Nr.hasOwnProperty(e)&&Nr[e]?(""+t).trim():t+"px"}function oh(e,t){e=e.style;for(var n in t)if(t.hasOwnProperty(n)){var r=n.indexOf("--")===0,i=sh(n,t[n],r);n==="float"&&(n="cssFloat"),r?e.setProperty(n,i):e[n]=i}}var sm=K({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 ha(e,t){if(t){if(sm[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(E(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(E(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(E(61))}if(t.style!=null&&typeof t.style!="object")throw Error(E(62))}}function fa(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 pa=null;function vl(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var ga=null,$n=null,Vn=null;function Du(e){if(e=gi(e)){if(typeof ga!="function")throw Error(E(280));var t=e.stateNode;t&&(t=Ks(t),ga(e.stateNode,e.type,t))}}function ah(e){$n?Vn?Vn.push(e):Vn=[e]:$n=e}function lh(){if($n){var e=$n,t=Vn;if(Vn=$n=null,Du(e),t)for(e=0;e<t.length;e++)Du(t[e])}}function uh(e,t){return e(t)}function ch(){}var So=!1;function dh(e,t,n){if(So)return e(t,n);So=!0;try{return uh(e,t,n)}finally{So=!1,($n!==null||Vn!==null)&&(ch(),lh())}}function Gr(e,t){var n=e.stateNode;if(n===null)return null;var r=Ks(n);if(r===null)return null;n=r[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":(r=!r.disabled)||(e=e.type,r=!(e==="button"||e==="input"||e==="select"||e==="textarea")),e=!r;break e;default:e=!1}if(e)return null;if(n&&typeof n!="function")throw Error(E(231,t,typeof n));return n}var ma=!1;if(ft)try{var wr={};Object.defineProperty(wr,"passive",{get:function(){ma=!0}}),window.addEventListener("test",wr,wr),window.removeEventListener("test",wr,wr)}catch{ma=!1}function om(e,t,n,r,i,s,o,a,l){var u=Array.prototype.slice.call(arguments,3);try{t.apply(n,u)}catch(h){this.onError(h)}}var Ar=!1,us=null,cs=!1,ya=null,am={onError:function(e){Ar=!0,us=e}};function lm(e,t,n,r,i,s,o,a,l){Ar=!1,us=null,om.apply(am,arguments)}function um(e,t,n,r,i,s,o,a,l){if(lm.apply(this,arguments),Ar){if(Ar){var u=us;Ar=!1,us=null}else throw Error(E(198));cs||(cs=!0,ya=u)}}function bn(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,t.flags&4098&&(n=t.return),e=t.return;while(e)}return t.tag===3?n:null}function hh(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 Uu(e){if(bn(e)!==e)throw Error(E(188))}function cm(e){var t=e.alternate;if(!t){if(t=bn(e),t===null)throw Error(E(188));return t!==e?null:e}for(var n=e,r=t;;){var i=n.return;if(i===null)break;var s=i.alternate;if(s===null){if(r=i.return,r!==null){n=r;continue}break}if(i.child===s.child){for(s=i.child;s;){if(s===n)return Uu(i),e;if(s===r)return Uu(i),t;s=s.sibling}throw Error(E(188))}if(n.return!==r.return)n=i,r=s;else{for(var o=!1,a=i.child;a;){if(a===n){o=!0,n=i,r=s;break}if(a===r){o=!0,r=i,n=s;break}a=a.sibling}if(!o){for(a=s.child;a;){if(a===n){o=!0,n=s,r=i;break}if(a===r){o=!0,r=s,n=i;break}a=a.sibling}if(!o)throw Error(E(189))}}if(n.alternate!==r)throw Error(E(190))}if(n.tag!==3)throw Error(E(188));return n.stateNode.current===n?e:t}function fh(e){return e=cm(e),e!==null?ph(e):null}function ph(e){if(e.tag===5||e.tag===6)return e;for(e=e.child;e!==null;){var t=ph(e);if(t!==null)return t;e=e.sibling}return null}var gh=Oe.unstable_scheduleCallback,Mu=Oe.unstable_cancelCallback,dm=Oe.unstable_shouldYield,hm=Oe.unstable_requestPaint,J=Oe.unstable_now,fm=Oe.unstable_getCurrentPriorityLevel,wl=Oe.unstable_ImmediatePriority,mh=Oe.unstable_UserBlockingPriority,ds=Oe.unstable_NormalPriority,pm=Oe.unstable_LowPriority,yh=Oe.unstable_IdlePriority,Vs=null,Je=null;function gm(e){if(Je&&typeof Je.onCommitFiberRoot=="function")try{Je.onCommitFiberRoot(Vs,e,void 0,(e.current.flags&128)===128)}catch{}}var Ve=Math.clz32?Math.clz32:vm,mm=Math.log,ym=Math.LN2;function vm(e){return e>>>=0,e===0?32:31-(mm(e)/ym|0)|0}var xi=64,Oi=4194304;function Pr(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 hs(e,t){var n=e.pendingLanes;if(n===0)return 0;var r=0,i=e.suspendedLanes,s=e.pingedLanes,o=n&268435455;if(o!==0){var a=o&~i;a!==0?r=Pr(a):(s&=o,s!==0&&(r=Pr(s)))}else o=n&~i,o!==0?r=Pr(o):s!==0&&(r=Pr(s));if(r===0)return 0;if(t!==0&&t!==r&&!(t&i)&&(i=r&-r,s=t&-t,i>=s||i===16&&(s&4194240)!==0))return t;if(r&4&&(r|=n&16),t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=r;0<t;)n=31-Ve(t),i=1<<n,r|=e[n],t&=~i;return r}function wm(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 _m(e,t){for(var n=e.suspendedLanes,r=e.pingedLanes,i=e.expirationTimes,s=e.pendingLanes;0<s;){var o=31-Ve(s),a=1<<o,l=i[o];l===-1?(!(a&n)||a&r)&&(i[o]=wm(a,t)):l<=t&&(e.expiredLanes|=a),s&=~a}}function va(e){return e=e.pendingLanes&-1073741825,e!==0?e:e&1073741824?1073741824:0}function vh(){var e=xi;return xi<<=1,!(xi&4194240)&&(xi=64),e}function Eo(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function fi(e,t,n){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-Ve(t),e[t]=n}function km(e,t){var n=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 r=e.eventTimes;for(e=e.expirationTimes;0<n;){var i=31-Ve(n),s=1<<i;t[i]=0,r[i]=-1,e[i]=-1,n&=~s}}function _l(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var r=31-Ve(n),i=1<<r;i&t|e[r]&t&&(e[r]|=t),n&=~i}}var M=0;function wh(e){return e&=-e,1<e?4<e?e&268435455?16:536870912:4:1}var _h,kl,kh,Sh,Eh,wa=!1,Li=[],Ut=null,Mt=null,jt=null,qr=new Map,Kr=new Map,Ct=[],Sm="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 ju(e,t){switch(e){case"focusin":case"focusout":Ut=null;break;case"dragenter":case"dragleave":Mt=null;break;case"mouseover":case"mouseout":jt=null;break;case"pointerover":case"pointerout":qr.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":Kr.delete(t.pointerId)}}function _r(e,t,n,r,i,s){return e===null||e.nativeEvent!==s?(e={blockedOn:t,domEventName:n,eventSystemFlags:r,nativeEvent:s,targetContainers:[i]},t!==null&&(t=gi(t),t!==null&&kl(t)),e):(e.eventSystemFlags|=r,t=e.targetContainers,i!==null&&t.indexOf(i)===-1&&t.push(i),e)}function Em(e,t,n,r,i){switch(t){case"focusin":return Ut=_r(Ut,e,t,n,r,i),!0;case"dragenter":return Mt=_r(Mt,e,t,n,r,i),!0;case"mouseover":return jt=_r(jt,e,t,n,r,i),!0;case"pointerover":var s=i.pointerId;return qr.set(s,_r(qr.get(s)||null,e,t,n,r,i)),!0;case"gotpointercapture":return s=i.pointerId,Kr.set(s,_r(Kr.get(s)||null,e,t,n,r,i)),!0}return!1}function bh(e){var t=un(e.target);if(t!==null){var n=bn(t);if(n!==null){if(t=n.tag,t===13){if(t=hh(n),t!==null){e.blockedOn=t,Eh(e.priority,function(){kh(n)});return}}else if(t===3&&n.stateNode.current.memoizedState.isDehydrated){e.blockedOn=n.tag===3?n.stateNode.containerInfo:null;return}}}e.blockedOn=null}function Ki(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var n=_a(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(n===null){n=e.nativeEvent;var r=new n.constructor(n.type,n);pa=r,n.target.dispatchEvent(r),pa=null}else return t=gi(n),t!==null&&kl(t),e.blockedOn=n,!1;t.shift()}return!0}function Fu(e,t,n){Ki(e)&&n.delete(t)}function bm(){wa=!1,Ut!==null&&Ki(Ut)&&(Ut=null),Mt!==null&&Ki(Mt)&&(Mt=null),jt!==null&&Ki(jt)&&(jt=null),qr.forEach(Fu),Kr.forEach(Fu)}function kr(e,t){e.blockedOn===t&&(e.blockedOn=null,wa||(wa=!0,Oe.unstable_scheduleCallback(Oe.unstable_NormalPriority,bm)))}function Qr(e){function t(i){return kr(i,e)}if(0<Li.length){kr(Li[0],e);for(var n=1;n<Li.length;n++){var r=Li[n];r.blockedOn===e&&(r.blockedOn=null)}}for(Ut!==null&&kr(Ut,e),Mt!==null&&kr(Mt,e),jt!==null&&kr(jt,e),qr.forEach(t),Kr.forEach(t),n=0;n<Ct.length;n++)r=Ct[n],r.blockedOn===e&&(r.blockedOn=null);for(;0<Ct.length&&(n=Ct[0],n.blockedOn===null);)bh(n),n.blockedOn===null&&Ct.shift()}var Hn=wt.ReactCurrentBatchConfig,fs=!0;function Tm(e,t,n,r){var i=M,s=Hn.transition;Hn.transition=null;try{M=1,Sl(e,t,n,r)}finally{M=i,Hn.transition=s}}function Cm(e,t,n,r){var i=M,s=Hn.transition;Hn.transition=null;try{M=4,Sl(e,t,n,r)}finally{M=i,Hn.transition=s}}function Sl(e,t,n,r){if(fs){var i=_a(e,t,n,r);if(i===null)No(e,t,r,ps,n),ju(e,r);else if(Em(i,e,t,n,r))r.stopPropagation();else if(ju(e,r),t&4&&-1<Sm.indexOf(e)){for(;i!==null;){var s=gi(i);if(s!==null&&_h(s),s=_a(e,t,n,r),s===null&&No(e,t,r,ps,n),s===i)break;i=s}i!==null&&r.stopPropagation()}else No(e,t,r,null,n)}}var ps=null;function _a(e,t,n,r){if(ps=null,e=vl(r),e=un(e),e!==null)if(t=bn(e),t===null)e=null;else if(n=t.tag,n===13){if(e=hh(t),e!==null)return e;e=null}else if(n===3){if(t.stateNode.current.memoizedState.isDehydrated)return t.tag===3?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null);return ps=e,null}
vendor: 10,388 bytes, line 38
38function Th(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(fm()){case wl:return 1;case mh:return 4;case ds:case pm:return 16;case yh:return 536870912;default:return 16}default:return 16}}var Nt=null,El=null,Qi=null;function Ch(){if(Qi)return Qi;var e,t=El,n=t.length,r,i="value"in Nt?Nt.value:Nt.textContent,s=i.length;for(e=0;e<n&&t[e]===i[e];e++);var o=n-e;for(r=1;r<=o&&t[n-r]===i[s-r];r++);return Qi=i.slice(e,1<r?1-r:void 0)}function Yi(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 Ni(){return!0}function zu(){return!1}function Ne(e){function t(n,r,i,s,o){this._reactName=n,this._targetInst=i,this.type=r,this.nativeEvent=s,this.target=o,this.currentTarget=null;for(var a in e)e.hasOwnProperty(a)&&(n=e[a],this[a]=n?n(s):s[a]);return this.isDefaultPrevented=(s.defaultPrevented!=null?s.defaultPrevented:s.returnValue===!1)?Ni:zu,this.isPropagationStopped=zu,this}return K(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var n=this.nativeEvent;n&&(n.preventDefault?n.preventDefault():typeof n.returnValue!="unknown"&&(n.returnValue=!1),this.isDefaultPrevented=Ni)},stopPropagation:function(){var n=this.nativeEvent;n&&(n.stopPropagation?n.stopPropagation():typeof n.cancelBubble!="unknown"&&(n.cancelBubble=!0),this.isPropagationStopped=Ni)},persist:function(){},isPersistent:Ni}),t}var lr={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},bl=Ne(lr),pi=K({},lr,{view:0,detail:0}),Im=Ne(pi),bo,To,Sr,Hs=K({},pi,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Tl,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!==Sr&&(Sr&&e.type==="mousemove"?(bo=e.screenX-Sr.screenX,To=e.screenY-Sr.screenY):To=bo=0,Sr=e),bo)},movementY:function(e){return"movementY"in e?e.movementY:To}}),Bu=Ne(Hs),Rm=K({},Hs,{dataTransfer:0}),Pm=Ne(Rm),xm=K({},pi,{relatedTarget:0}),Co=Ne(xm),Om=K({},lr,{animationName:0,elapsedTime:0,pseudoElement:0}),Lm=Ne(Om),Nm=K({},lr,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),Am=Ne(Nm),Dm=K({},lr,{data:0}),Wu=Ne(Dm),Um={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},Mm={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"},jm={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function Fm(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=jm[e])?!!t[e]:!1}function Tl(){return Fm}var zm=K({},pi,{key:function(e){if(e.key){var t=Um[e.key]||e.key;if(t!=="Unidentified")return t}return e.type==="keypress"?(e=Yi(e),e===13?"Enter":String.fromCharCode(e)):e.type==="keydown"||e.type==="keyup"?Mm[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Tl,charCode:function(e){return e.type==="keypress"?Yi(e):0},keyCode:function(e){return e.type==="keydown"||e.type==="keyup"?e.keyCode:0},which:function(e){return e.type==="keypress"?Yi(e):e.type==="keydown"||e.type==="keyup"?e.keyCode:0}}),Bm=Ne(zm),Wm=K({},Hs,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),$u=Ne(Wm),$m=K({},pi,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Tl}),Vm=Ne($m),Hm=K({},lr,{propertyName:0,elapsedTime:0,pseudoElement:0}),Gm=Ne(Hm),qm=K({},Hs,{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}),Km=Ne(qm),Qm=[9,13,27,32],Cl=ft&&"CompositionEvent"in window,Dr=null;ft&&"documentMode"in document&&(Dr=document.documentMode);var Ym=ft&&"TextEvent"in window&&!Dr,Ih=ft&&(!Cl||Dr&&8<Dr&&11>=Dr),Vu=" ",Hu=!1;function Rh(e,t){switch(e){case"keyup":return Qm.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Ph(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var On=!1;function Xm(e,t){switch(e){case"compositionend":return Ph(t);case"keypress":return t.which!==32?null:(Hu=!0,Vu);case"textInput":return e=t.data,e===Vu&&Hu?null:e;default:return null}}function Jm(e,t){if(On)return e==="compositionend"||!Cl&&Rh(e,t)?(e=Ch(),Qi=El=Nt=null,On=!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 Ih&&t.locale!=="ko"?null:t.data;default:return null}}var Zm={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 Gu(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t==="input"?!!Zm[e.type]:t==="textarea"}function xh(e,t,n,r){ah(r),t=gs(t,"onChange"),0<t.length&&(n=new bl("onChange","change",null,n,r),e.push({event:n,listeners:t}))}var Ur=null,Yr=null;function ey(e){Bh(e,0)}function Gs(e){var t=An(e);if(eh(t))return e}function ty(e,t){if(e==="change")return t}var Oh=!1;if(ft){var Io;if(ft){var Ro="oninput"in document;if(!Ro){var qu=document.createElement("div");qu.setAttribute("oninput","return;"),Ro=typeof qu.oninput=="function"}Io=Ro}else Io=!1;Oh=Io&&(!document.documentMode||9<document.documentMode)}function Ku(){Ur&&(Ur.detachEvent("onpropertychange",Lh),Yr=Ur=null)}function Lh(e){if(e.propertyName==="value"&&Gs(Yr)){var t=[];xh(t,Yr,e,vl(e)),dh(ey,t)}}function ny(e,t,n){e==="focusin"?(Ku(),Ur=t,Yr=n,Ur.attachEvent("onpropertychange",Lh)):e==="focusout"&&Ku()}function ry(e){if(e==="selectionchange"||e==="keyup"||e==="keydown")return Gs(Yr)}function iy(e,t){if(e==="click")return Gs(t)}function sy(e,t){if(e==="input"||e==="change")return Gs(t)}function oy(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var Ge=typeof Object.is=="function"?Object.is:oy;function Xr(e,t){if(Ge(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(r=0;r<n.length;r++){var i=n[r];if(!na.call(t,i)||!Ge(e[i],t[i]))return!1}return!0}function Qu(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function Yu(e,t){var n=Qu(e);e=0;for(var r;n;){if(n.nodeType===3){if(r=e+n.textContent.length,e<=t&&r>=t)return{node:n,offset:t-e};e=r}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=Qu(n)}}function Nh(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Nh(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Ah(){for(var e=window,t=ls();t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=ls(e.document)}return t}function Il(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 ay(e){var t=Ah(),n=e.focusedElem,r=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&Nh(n.ownerDocument.documentElement,n)){if(r!==null&&Il(n)){if(t=r.start,e=r.end,e===void 0&&(e=t),"selectionStart"in n)n.selectionStart=t,n.selectionEnd=Math.min(e,n.value.length);else if(e=(t=n.ownerDocument||document)&&t.defaultView||window,e.getSelection){e=e.getSelection();var i=n.textContent.length,s=Math.min(r.start,i);r=r.end===void 0?s:Math.min(r.end,i),!e.extend&&s>r&&(i=r,r=s,s=i),i=Yu(n,s);var o=Yu(n,r);i&&o&&(e.rangeCount!==1||e.anchorNode!==i.node||e.anchorOffset!==i.offset||e.focusNode!==o.node||e.focusOffset!==o.offset)&&(t=t.createRange(),t.setStart(i.node,i.offset),e.removeAllRanges(),s>r?(e.addRange(t),e.extend(o.node,o.offset)):(t.setEnd(o.node,o.offset),e.addRange(t)))}}for(t=[],e=n;e=e.parentNode;)e.nodeType===1&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof n.focus=="function"&&n.focus(),n=0;n<t.length;n++)e=t[n],e.element.scrollLeft=e.left,e.element.scrollTop=e.top}}var ly=ft&&"documentMode"in document&&11>=document.documentMode,Ln=null,ka=null,Mr=null,Sa=!1;function Xu(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;Sa||Ln==null||Ln!==ls(r)||(r=Ln,"selectionStart"in r&&Il(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focu
vendor: 4,500 bytes, line 38
38sNode:r.focusNode,focusOffset:r.focusOffset}),Mr&&Xr(Mr,r)||(Mr=r,r=gs(ka,"onSelect"),0<r.length&&(t=new bl("onSelect","select",null,t,n),e.push({event:t,listeners:r}),t.target=Ln)))}function Ai(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n}var Nn={animationend:Ai("Animation","AnimationEnd"),animationiteration:Ai("Animation","AnimationIteration"),animationstart:Ai("Animation","AnimationStart"),transitionend:Ai("Transition","TransitionEnd")},Po={},Dh={};ft&&(Dh=document.createElement("div").style,"AnimationEvent"in window||(delete Nn.animationend.animation,delete Nn.animationiteration.animation,delete Nn.animationstart.animation),"TransitionEvent"in window||delete Nn.transitionend.transition);function qs(e){if(Po[e])return Po[e];if(!Nn[e])return e;var t=Nn[e],n;for(n in t)if(t.hasOwnProperty(n)&&n in Dh)return Po[e]=t[n];return e}var Uh=qs("animationend"),Mh=qs("animationiteration"),jh=qs("animationstart"),Fh=qs("transitionend"),zh=new Map,Ju="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 Xt(e,t){zh.set(e,t),En(t,[e])}for(var xo=0;xo<Ju.length;xo++){var Oo=Ju[xo],uy=Oo.toLowerCase(),cy=Oo[0].toUpperCase()+Oo.slice(1);Xt(uy,"on"+cy)}Xt(Uh,"onAnimationEnd");Xt(Mh,"onAnimationIteration");Xt(jh,"onAnimationStart");Xt("dblclick","onDoubleClick");Xt("focusin","onFocus");Xt("focusout","onBlur");Xt(Fh,"onTransitionEnd");Xn("onMouseEnter",["mouseout","mouseover"]);Xn("onMouseLeave",["mouseout","mouseover"]);Xn("onPointerEnter",["pointerout","pointerover"]);Xn("onPointerLeave",["pointerout","pointerover"]);En("onChange","change click focusin focusout input keydown keyup selectionchange".split(" "));En("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" "));En("onBeforeInput",["compositionend","keypress","textInput","paste"]);En("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" "));En("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" "));En("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var xr="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(" "),dy=new Set("cancel close invalid load scroll toggle".split(" ").concat(xr));function Zu(e,t,n){var r=e.type||"unknown-event";e.currentTarget=n,um(r,t,void 0,e),e.currentTarget=null}function Bh(e,t){t=(t&4)!==0;for(var n=0;n<e.length;n++){var r=e[n],i=r.event;r=r.listeners;e:{var s=void 0;if(t)for(var o=r.length-1;0<=o;o--){var a=r[o],l=a.instance,u=a.currentTarget;if(a=a.listener,l!==s&&i.isPropagationStopped())break e;Zu(i,a,u),s=l}else for(o=0;o<r.length;o++){if(a=r[o],l=a.instance,u=a.currentTarget,a=a.listener,l!==s&&i.isPropagationStopped())break e;Zu(i,a,u),s=l}}}if(cs)throw e=ya,cs=!1,ya=null,e}function z(e,t){var n=t[Ia];n===void 0&&(n=t[Ia]=new Set);var r=e+"__bubble";n.has(r)||(Wh(t,e,2,!1),n.add(r))}function Lo(e,t,n){var r=0;t&&(r|=4),Wh(n,e,r,t)}var Di="_reactListening"+Math.random().toString(36).slice(2);function Jr(e){if(!e[Di]){e[Di]=!0,Qd.forEach(function(n){n!=="selectionchange"&&(dy.has(n)||Lo(n,!1,e),Lo(n,!0,e))});var t=e.nodeType===9?e:e.ownerDocument;t===null||t[Di]||(t[Di]=!0,Lo("selectionchange",!1,t))}}function Wh(e,t,n,r){switch(Th(t)){case 1:var i=Tm;break;case 4:i=Cm;break;default:i=Sl}n=i.bind(null,t,n,e),i=void 0,!ma||t!=="touchstart"&&t!=="touchmove"&&t!=="wheel"||(i=!0),r?i!==void 0?e.addEventListener(t,n,{capture:!0,passive:i}):e.addEventListener(t,n,!0):i!==void 0?e.addEventListener(t,n,{passive:i}):e.addEventListener(t,n,!1)}function No(e,t,n,r,i){var s=r;if(!(t&1)&&!(t&2)&&r!==null)e:for(;;){if(r===null)return;var o=r.tag;if(o===3||o===4){var a=r.stateNode.containerInfo;
vendor: 11,128 bytes, lines 38-39
38if(a===i||a.nodeType===8&&a.parentNode===i)break;if(o===4)for(o=r.return;o!==null;){var l=o.tag;if((l===3||l===4)&&(l=o.stateNode.containerInfo,l===i||l.nodeType===8&&l.parentNode===i))return;o=o.return}for(;a!==null;){if(o=un(a),o===null)return;if(l=o.tag,l===5||l===6){r=s=o;continue e}a=a.parentNode}}r=r.return}dh(function(){var u=s,h=vl(n),c=[];e:{var g=zh.get(e);if(g!==void 0){var v=bl,y=e;switch(e){case"keypress":if(Yi(n)===0)break e;case"keydown":case"keyup":v=Bm;break;case"focusin":y="focus",v=Co;break;case"focusout":y="blur",v=Co;break;case"beforeblur":case"afterblur":v=Co;break;case"click":if(n.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":v=Bu;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":v=Pm;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":v=Vm;break;case Uh:case Mh:case jh:v=Lm;break;case Fh:v=Gm;break;case"scroll":v=Im;break;case"wheel":v=Km;break;case"copy":case"cut":case"paste":v=Am;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":v=$u}var _=(t&4)!==0,k=!_&&e==="scroll",p=_?g!==null?g+"Capture":null:g;_=[];for(var d=u,f;d!==null;){f=d;var m=f.stateNode;if(f.tag===5&&m!==null&&(f=m,p!==null&&(m=Gr(d,p),m!=null&&_.push(Zr(d,m,f)))),k)break;d=d.return}0<_.length&&(g=new v(g,y,null,n,h),c.push({event:g,listeners:_}))}}if(!(t&7)){e:{if(g=e==="mouseover"||e==="pointerover",v=e==="mouseout"||e==="pointerout",g&&n!==pa&&(y=n.relatedTarget||n.fromElement)&&(un(y)||y[pt]))break e;if((v||g)&&(g=h.window===h?h:(g=h.ownerDocument)?g.defaultView||g.parentWindow:window,v?(y=n.relatedTarget||n.toElement,v=u,y=y?un(y):null,y!==null&&(k=bn(y),y!==k||y.tag!==5&&y.tag!==6)&&(y=null)):(v=null,y=u),v!==y)){if(_=Bu,m="onMouseLeave",p="onMouseEnter",d="mouse",(e==="pointerout"||e==="pointerover")&&(_=$u,m="onPointerLeave",p="onPointerEnter",d="pointer"),k=v==null?g:An(v),f=y==null?g:An(y),g=new _(m,d+"leave",v,n,h),g.target=k,g.relatedTarget=f,m=null,un(h)===u&&(_=new _(p,d+"enter",y,n,h),_.target=f,_.relatedTarget=k,m=_),k=m,v&&y)t:{for(_=v,p=y,d=0,f=_;f;f=In(f))d++;for(f=0,m=p;m;m=In(m))f++;for(;0<d-f;)_=In(_),d--;for(;0<f-d;)p=In(p),f--;for(;d--;){if(_===p||p!==null&&_===p.alternate)break t;_=In(_),p=In(p)}_=null}else _=null;v!==null&&ec(c,g,v,_,!1),y!==null&&k!==null&&ec(c,k,y,_,!0)}}e:{if(g=u?An(u):window,v=g.nodeName&&g.nodeName.toLowerCase(),v==="select"||v==="input"&&g.type==="file")var b=ty;else if(Gu(g))if(Oh)b=sy;else{b=ry;var T=ny}else(v=g.nodeName)&&v.toLowerCase()==="input"&&(g.type==="checkbox"||g.type==="radio")&&(b=iy);if(b&&(b=b(e,u))){xh(c,b,n,h);break e}T&&T(e,g,u),e==="focusout"&&(T=g._wrapperState)&&T.controlled&&g.type==="number"&&ua(g,"number",g.value)}switch(T=u?An(u):window,e){case"focusin":(Gu(T)||T.contentEditable==="true")&&(Ln=T,ka=u,Mr=null);break;case"focusout":Mr=ka=Ln=null;break;case"mousedown":Sa=!0;break;case"contextmenu":case"mouseup":case"dragend":Sa=!1,Xu(c,n,h);break;case"selectionchange":if(ly)break;case"keydown":case"keyup":Xu(c,n,h)}var C;if(Cl)e:{switch(e){case"compositionstart":var R="onCompositionStart";break e;case"compositionend":R="onCompositionEnd";break e;case"compositionupdate":R="onCompositionUpdate";break e}R=void 0}else On?Rh(e,n)&&(R="onCompositionEnd"):e==="keydown"&&n.keyCode===229&&(R="onCompositionStart");R&&(Ih&&n.locale!=="ko"&&(On||R!=="onCompositionStart"?R==="onCompositionEnd"&&On&&(C=Ch()):(Nt=h,El="value"in Nt?Nt.value:Nt.textContent,On=!0)),T=gs(u,R),0<T.length&&(R=new Wu(R,e,null,n,h),c.push({event:R,listeners:T}),C?R.data=C:(C=Ph(n),C!==null&&(R.data=C)))),(C=Ym?Xm(e,n):Jm(e,n))&&(u=gs(u,"onBeforeInput"),0<u.length&&(h=new Wu("onBeforeInput","beforeinput",null,n,h),c.push({event:h,listeners:u}),h.data=C))}Bh(c,t)})}function Zr(e,t,n){return{instance:e,listener:t,currentTarget:n}}function gs(e,t){for(var n=t+"Capture",r=[];e!==null;){var i=e,s=i.stateNode;i.tag===5&&s!==null&&(i=s,s=Gr(e,n),s!=null&&r.unshift(Zr(e,s,i)),s=Gr(e,t),s!=null&&r.push(Zr(e,s,i))),e=e.return}return r}function In(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5);return e||null}function ec(e,t,n,r,i){for(var s=t._reactName,o=[];n!==null&&n!==r;){var a=n,l=a.alternate,u=a.stateNode;if(l!==null&&l===r)break;a.tag===5&&u!==null&&(a=u,i?(l=Gr(n,s),l!=null&&o.unshift(Zr(n,l,a))):i||(l=Gr(n,s),l!=null&&o.push(Zr(n,l,a)))),n=n.return}o.length!==0&&e.push({event:t,listeners:o})}var hy=/\r\n?/g,fy=/\u0000|\uFFFD/g;function tc(e){return(typeof e=="string"?e:""+e).replace(hy,`
39`).replace(fy,"")}function Ui(e,t,n){if(t=tc(t),tc(e)!==t&&n)throw Error(E(425))}function ms(){}var Ea=null,ba=null;function Ta(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 Ca=typeof setTimeout=="function"?setTimeout:void 0,py=typeof clearTimeout=="function"?clearTimeout:void 0,nc=typeof Promise=="function"?Promise:void 0,gy=typeof queueMicrotask=="function"?queueMicrotask:typeof nc<"u"?function(e){return nc.resolve(null).then(e).catch(my)}:Ca;function my(e){setTimeout(function(){throw e})}function Ao(e,t){var n=t,r=0;do{var i=n.nextSibling;if(e.removeChild(n),i&&i.nodeType===8)if(n=i.data,n==="/$"){if(r===0){e.removeChild(i),Qr(t);return}r--}else n!=="$"&&n!=="$?"&&n!=="$!"||r++;n=i}while(n);Qr(t)}function Ft(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 rc(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n==="$"||n==="$!"||n==="$?"){if(t===0)return e;t--}else n==="/$"&&t++}e=e.previousSibling}return null}var ur=Math.random().toString(36).slice(2),Ye="__reactFiber$"+ur,ei="__reactProps$"+ur,pt="__reactContainer$"+ur,Ia="__reactEvents$"+ur,yy="__reactListeners$"+ur,vy="__reactHandles$"+ur;function un(e){var t=e[Ye];if(t)return t;for(var n=e.parentNode;n;){if(t=n[pt]||n[Ye]){if(n=t.alternate,t.child!==null||n!==null&&n.child!==null)for(e=rc(e);e!==null;){if(n=e[Ye])return n;e=rc(e)}return t}e=n,n=e.parentNode}return null}function gi(e){return e=e[Ye]||e[pt],!e||e.tag!==5&&e.tag!==6&&e.tag!==13&&e.tag!==3?null:e}function An(e){if(e.tag===5||e.tag===6)return e.stateNode;throw Error(E(33))}function Ks(e){return e[ei]||null}var Ra=[],Dn=-1;function Jt(e){return{current:e}}function W(e){0>Dn||(e.current=Ra[Dn],Ra[Dn]=null,Dn--)}function F(e,t){Dn++,Ra[Dn]=e.current,e.current=t}var Yt={},he=Jt(Yt),Se=Jt(!1),gn=Yt;function Jn(e,t){var n=e.type.contextTypes;if(!n)return Yt;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var i={},s;for(s in n)i[s]=t[s];return r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=i),i}function Ee(e){return e=e.childContextTypes,e!=null}function ys(){W(Se),W(he)}function ic(e,t,n){if(he.current!==Yt)throw Error(E(168));F(he,t),F(Se,n)}function $h(e,t,n){var r=e.stateNode;if(t=t.childContextTypes,typeof r.getChildContext!="function")return n;r=r.getChildContext();for(var i in r)if(!(i in t))throw Error(E(108,nm(e)||"Unknown",i));return K({},n,r)}function vs(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||Yt,gn=he.current,F(he,e),F(Se,Se.current),!0}function sc(e,t,n){var r=e.stateNode;if(!r)throw Error(E(169));n?(e=$h(e,t,gn),r.__reactInternalMemoizedMergedChildContext=e,W(Se),W(he),F(he,e)):W(Se),F(Se,n)}var it=null,Qs=!1,Do=!1;function Vh(e){it===null?it=[e]:it.push(e)}function wy(e){Qs=!0,Vh(e)}function Zt(){if(!Do&&it!==null){Do=!0;var e=0,t=M;try{var n=it;for(M=1;e<n.length;e++){var r=n[e];do r=r(!0);while(r!==null)}it=null,Qs=!1}catch(i){throw it!==null&&(it=it.slice(e+1)),gh(wl,Zt),i}finally{M=t,Do=!1}}return null}var Un=[],Mn=0,ws=null,_s=0,Ae=[],De=0,mn=null,st=1,ot="";function sn(e,t){Un[Mn++]=_s,Un[Mn++]=ws,ws=e,_s=t}function Hh(e,t,n){Ae[De++]=st,Ae[De++]=ot,Ae[De++]=mn,mn=e;var r=st;e=ot;var i=32-Ve(r)-1;r&=~(1<<i),n+=1;var s=32-Ve(t)+i;if(30<s){var o=i-i%5;s=(r&(1<<o)-1).toString(32),r>>=o,i-=o,st=1<<32-Ve(t)+i|n<<i|r,ot=s+e}else st=1<<s|n<<i|r,ot=e}function Rl(e){e.return!==null&&(sn(e,1),Hh(e,1,0))}function Pl(e){for(;e===ws;)ws=Un[--Mn],Un[Mn]=null,_s=Un[--Mn],Un[Mn]=null;for(;e===mn;)mn=Ae[--De],Ae[De]=null,ot=Ae[--De],Ae[De]=null,st=Ae[--De],Ae[De]=null}var xe=null,Re=null,V=!1,$e=null;function Gh(e,t){var n=Ue(5,null,null,0);n.elementType="DELETED",n.stateNode=t,n.return=e,t=e.deletions,t===null?(e.deletions=[n],e.flags|=16):t.push(n)}function oc(e,t){switch(e.tag){case 5:var n=e.type;return t=t.nodeType!==1||n.toLowerCase()!==t.nodeName.toLowerCase()?null:t,t!==null?(e.stateNode=t,xe=e,Re=Ft(t.firstChild),!0):!1;case 6:return t=e.pendingProps===""||t.nodeType!==3?null:t,t!==null?(e.stateNode=t,xe=e,Re=null,!0):!1;case 13:return t=t.nodeType!==8?null:t,t!==null?(n=mn!==null?{id:st,overflow:ot}:null,e.memoizedState={dehydrated:t,treeContext:n,retryLane:1073741824},n=Ue(18,null,null,0),n.stateNode=t,n.return=e,e.child=n,xe=e,Re=null,!0):!1;default:return!1}}function Pa(e){return(e.mode&1)!==0&&(e.flags&128)===0}function xa(e){if(V){var t=Re;if(t){var n=t;if(!oc(e,t)){if(Pa(e))throw Error(E(418));t=Ft(n.nextSibling);var r=xe;t&&oc(e,t)?Gh(r,n):(e.flags=e.flags&-4097|2,V=!1,xe=e)}}else{if(Pa(e))throw Error(E(418));e.flags=e.flags&-4097|2,V=!1,xe=e}}}function ac(e){for(e=e.return;e!==null&&e.tag!==5&&e.tag!==3&&e.tag!==13;)e=e.return;xe=e}function Mi(e){if(e!==xe)return!1;if(!V)return ac(e),V=!0,!1;var t;if((t=e.tag!==3)&&!(t=e.tag!==5)&&(t=e.type,t=t!=="head"&&t!=="body"&&!Ta(e.type,e.memoizedProps)),t&&(t=Re)){if(Pa(e))throw qh(),Error(E(418));for(;t;)Gh(e,t),t=Ft(t.nextSibling)}if(ac(e),e.tag===13){if(e=e.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(E(317));e:{for(e=e.nextSibling,t=0;e;){if(e.nodeType===8){var n=e.data;if(n==="/$"){if(t===0){Re=Ft(e.nextSibling);break e}t--}else n!=="$"&&n!=="$!"&&n!=="$?"||t++}e=e.nextSibling}Re=null}}else Re=xe?Ft(e.stateNode.nextSibling):null;return!0}function qh(){for(var e=Re;e;)e=Ft(e.nextSibling)}function Zn(){Re=xe=null,V=!1}function xl(e){$e===null?$e=[e]:$e.push(e)}var _y=wt.ReactCurrentBatchConfig;function Er(e,t,n){if(e=n.ref,e!==null&&typeof e!="function"&&typeof e!="object"){if(n._owner){if(n=n._owner,n){if(n.tag!==1)throw Error(E(309));var r=n.stateNode}if(!r)throw Error(E(147,e));var i=r,s=""+e;return t!==null&&t.ref!==null&&typeof t.ref=="function"&&t.ref._stringRef===s?t.ref:(t=function(o){var a=i.refs;o===null?delete a[s]:a[s]=o},t._stringRef=s,t)}if(typeof e!="string")throw Error(E(284));if(!n._owner)throw Error(E(290,e))}return e}function ji(e,t){throw e=Object.prototype.toString.call(t),Error(E(31,e==="[object Object]"?"object with keys {"+Object.keys(t).join(", ")+"}":e))}function lc(e){var t=e._init;return t(e._payload)}
vendor: 5,097 bytes, line 39
39function Kh(e){function t(p,d){if(e){var f=p.deletions;f===null?(p.deletions=[d],p.flags|=16):f.push(d)}}function n(p,d){if(!e)return null;for(;d!==null;)t(p,d),d=d.sibling;return null}function r(p,d){for(p=new Map;d!==null;)d.key!==null?p.set(d.key,d):p.set(d.index,d),d=d.sibling;return p}function i(p,d){return p=$t(p,d),p.index=0,p.sibling=null,p}function s(p,d,f){return p.index=f,e?(f=p.alternate,f!==null?(f=f.index,f<d?(p.flags|=2,d):f):(p.flags|=2,d)):(p.flags|=1048576,d)}function o(p){return e&&p.alternate===null&&(p.flags|=2),p}function a(p,d,f,m){return d===null||d.tag!==6?(d=Wo(f,p.mode,m),d.return=p,d):(d=i(d,f),d.return=p,d)}function l(p,d,f,m){var b=f.type;return b===xn?h(p,d,f.props.children,m,f.key):d!==null&&(d.elementType===b||typeof b=="object"&&b!==null&&b.$$typeof===bt&&lc(b)===d.type)?(m=i(d,f.props),m.ref=Er(p,d,f),m.return=p,m):(m=rs(f.type,f.key,f.props,null,p.mode,m),m.ref=Er(p,d,f),m.return=p,m)}function u(p,d,f,m){return d===null||d.tag!==4||d.stateNode.containerInfo!==f.containerInfo||d.stateNode.implementation!==f.implementation?(d=$o(f,p.mode,m),d.return=p,d):(d=i(d,f.children||[]),d.return=p,d)}function h(p,d,f,m,b){return d===null||d.tag!==7?(d=fn(f,p.mode,m,b),d.return=p,d):(d=i(d,f),d.return=p,d)}function c(p,d,f){if(typeof d=="string"&&d!==""||typeof d=="number")return d=Wo(""+d,p.mode,f),d.return=p,d;if(typeof d=="object"&&d!==null){switch(d.$$typeof){case Ii:return f=rs(d.type,d.key,d.props,null,p.mode,f),f.ref=Er(p,null,d),f.return=p,f;case Pn:return d=$o(d,p.mode,f),d.return=p,d;case bt:var m=d._init;return c(p,m(d._payload),f)}if(Rr(d)||vr(d))return d=fn(d,p.mode,f,null),d.return=p,d;ji(p,d)}return null}function g(p,d,f,m){var b=d!==null?d.key:null;if(typeof f=="string"&&f!==""||typeof f=="number")return b!==null?null:a(p,d,""+f,m);if(typeof f=="object"&&f!==null){switch(f.$$typeof){case Ii:return f.key===b?l(p,d,f,m):null;case Pn:return f.key===b?u(p,d,f,m):null;case bt:return b=f._init,g(p,d,b(f._payload),m)}if(Rr(f)||vr(f))return b!==null?null:h(p,d,f,m,null);ji(p,f)}return null}function v(p,d,f,m,b){if(typeof m=="string"&&m!==""||typeof m=="number")return p=p.get(f)||null,a(d,p,""+m,b);if(typeof m=="object"&&m!==null){switch(m.$$typeof){case Ii:return p=p.get(m.key===null?f:m.key)||null,l(d,p,m,b);case Pn:return p=p.get(m.key===null?f:m.key)||null,u(d,p,m,b);case bt:var T=m._init;return v(p,d,f,T(m._payload),b)}if(Rr(m)||vr(m))return p=p.get(f)||null,h(d,p,m,b,null);ji(d,m)}return null}function y(p,d,f,m){for(var b=null,T=null,C=d,R=d=0,U=null;C!==null&&R<f.length;R++){C.index>R?(U=C,C=null):U=C.sibling;var O=g(p,C,f[R],m);if(O===null){C===null&&(C=U);break}e&&C&&O.alternate===null&&t(p,C),d=s(O,d,R),T===null?b=O:T.sibling=O,T=O,C=U}if(R===f.length)return n(p,C),V&&sn(p,R),b;if(C===null){for(;R<f.length;R++)C=c(p,f[R],m),C!==null&&(d=s(C,d,R),T===null?b=C:T.sibling=C,T=C);return V&&sn(p,R),b}for(C=r(p,C);R<f.length;R++)U=v(C,p,R,f[R],m),U!==null&&(e&&U.alternate!==null&&C.delete(U.key===null?R:U.key),d=s(U,d,R),T===null?b=U:T.sibling=U,T=U);return e&&C.forEach(function(Ce){return t(p,Ce)}),V&&sn(p,R),b}function _(p,d,f,m){var b=vr(f);if(typeof b!="function")throw Error(E(150));if(f=b.call(f),f==null)throw Error(E(151));for(var T=b=null,C=d,R=d=0,U=null,O=f.next();C!==null&&!O.done;R++,O=f.next()){C.index>R?(U=C,C=null):U=C.sibling;var Ce=g(p,C,O.value,m);if(Ce===null){C===null&&(C=U);break}e&&C&&Ce.alternate===null&&t(p,C),d=s(Ce,d,R),T===null?b=Ce:T.sibling=Ce,T=Ce,C=U}if(O.done)return n(p,C),V&&sn(p,R),b;if(C===null){for(;!O.done;R++,O=f.next())O=c(p,O.value,m),O!==null&&(d=s(O,d,R),T===null?b=O:T.sibling=O,T=O);return V&&sn(p,R),b}for(C=r(p,C);!O.done;R++,O=f.next())O=v(C,p,R,O.value,m),O!==null&&(e&&O.alternate!==null&&C.delete(O.key===null?R:O.key),d=s(O,d,R),T===null?b=O:T.sibling=O,T=O);return e&&C.forEach(function(mr){return t(p,mr)}),V&&sn(p,R),b}function k(p,d,f,m){if(typeof f=="object"&&f!==null&&f.type===xn&&f.key===null&&(f=f.props.children),typeof f=="object"&&f!==null){switch(f.$$typeof){case Ii:e:{for(var b=f.key,T=d;T!==null;){if(T.key===b){if(b=f.type,b===xn){if(T.tag===7){n(p,T.sibling),d=i(T,f.props.children),d.return=p,p=d;break e}}else if(T.elementType===b||typeof b=="object"&&b!==null&&b.$$typeof===bt&&lc(b)===T.type){n(p,T.sibling),d=i(T,f.props),d.ref=Er(p,T,f),d.return=p,p=d;break e}n(p,T);break}else t(p,T);T=T.sibling}f.type===xn?(d=fn(f.props.children,p.mode,m,f.key),d.return=p,p=d):(m=rs(f.type,f.key,f.props,null,p.mode,m),m.ref=Er(p,d,f),m.return=p,p=m)}return o(p);case Pn:e:{for(T=f.key;d!==null;){if(d.key===T)if(d.tag===4&&d.stateNode.containerInfo===f.containerInfo&&d.stateNode.implementation===f.implementation){n(p,d.sibling),d=i(d,f.children||[]),d.return=p,p=d;break e}else{n(p,d);break}else t(p,d);d=d.sibling}d=$o(f,p.mode,m),d.return=p,p=d}return o(p);case bt:return T=f._init,k(p,d,T(f._payload),m)}if(Rr(f))return y(p,d,f,m);if(vr(f))return _(p,d,f,m);ji(p,f)}return typeof f=="string"&&f!==""||typeof f=="number"?(f=""+f,d!==null&&d.tag===6?(n(p,d.sibling),d=i(d,f),d.return=p,p=d):(n(p,d),d=Wo(f,p.mode,m),d.return=p,p=d),o(p
vendor: 6,424 bytes, line 39
39)):n(p,d)}return k}var er=Kh(!0),Qh=Kh(!1),ks=Jt(null),Ss=null,jn=null,Ol=null;function Ll(){Ol=jn=Ss=null}function Nl(e){var t=ks.current;W(ks),e._currentValue=t}function Oa(e,t,n){for(;e!==null;){var r=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,r!==null&&(r.childLanes|=t)):r!==null&&(r.childLanes&t)!==t&&(r.childLanes|=t),e===n)break;e=e.return}}function Gn(e,t){Ss=e,Ol=jn=null,e=e.dependencies,e!==null&&e.firstContext!==null&&(e.lanes&t&&(ke=!0),e.firstContext=null)}function je(e){var t=e._currentValue;if(Ol!==e)if(e={context:e,memoizedValue:t,next:null},jn===null){if(Ss===null)throw Error(E(308));jn=e,Ss.dependencies={lanes:0,firstContext:e}}else jn=jn.next=e;return t}var cn=null;function Al(e){cn===null?cn=[e]:cn.push(e)}function Yh(e,t,n,r){var i=t.interleaved;return i===null?(n.next=n,Al(t)):(n.next=i.next,i.next=n),t.interleaved=n,gt(e,r)}function gt(e,t){e.lanes|=t;var n=e.alternate;for(n!==null&&(n.lanes|=t),n=e,e=e.return;e!==null;)e.childLanes|=t,n=e.alternate,n!==null&&(n.childLanes|=t),n=e,e=e.return;return n.tag===3?n.stateNode:null}var Tt=!1;function Dl(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function Xh(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 dt(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function zt(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,D&2){var i=r.pending;return i===null?t.next=t:(t.next=i.next,i.next=t),r.pending=t,gt(e,n)}return i=r.interleaved,i===null?(t.next=t,Al(r)):(t.next=i.next,i.next=t),r.interleaved=t,gt(e,n)}function Xi(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194240)!==0)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,_l(e,n)}}function uc(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var i=null,s=null;if(n=n.firstBaseUpdate,n!==null){do{var o={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};s===null?i=s=o:s=s.next=o,n=n.next}while(n!==null);s===null?i=s=t:s=s.next=t}else i=s=t;n={baseState:r.baseState,firstBaseUpdate:i,lastBaseUpdate:s,shared:r.shared,effects:r.effects},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function Es(e,t,n,r){var i=e.updateQueue;Tt=!1;var s=i.firstBaseUpdate,o=i.lastBaseUpdate,a=i.shared.pending;if(a!==null){i.shared.pending=null;var l=a,u=l.next;l.next=null,o===null?s=u:o.next=u,o=l;var h=e.alternate;h!==null&&(h=h.updateQueue,a=h.lastBaseUpdate,a!==o&&(a===null?h.firstBaseUpdate=u:a.next=u,h.lastBaseUpdate=l))}if(s!==null){var c=i.baseState;o=0,h=u=l=null,a=s;do{var g=a.lane,v=a.eventTime;if((r&g)===g){h!==null&&(h=h.next={eventTime:v,lane:0,tag:a.tag,payload:a.payload,callback:a.callback,next:null});e:{var y=e,_=a;switch(g=t,v=n,_.tag){case 1:if(y=_.payload,typeof y=="function"){c=y.call(v,c,g);break e}c=y;break e;case 3:y.flags=y.flags&-65537|128;case 0:if(y=_.payload,g=typeof y=="function"?y.call(v,c,g):y,g==null)break e;c=K({},c,g);break e;case 2:Tt=!0}}a.callback!==null&&a.lane!==0&&(e.flags|=64,g=i.effects,g===null?i.effects=[a]:g.push(a))}else v={eventTime:v,lane:g,tag:a.tag,payload:a.payload,callback:a.callback,next:null},h===null?(u=h=v,l=c):h=h.next=v,o|=g;if(a=a.next,a===null){if(a=i.shared.pending,a===null)break;g=a,a=g.next,g.next=null,i.lastBaseUpdate=g,i.shared.pending=null}}while(!0);if(h===null&&(l=c),i.baseState=l,i.firstBaseUpdate=u,i.lastBaseUpdate=h,t=i.shared.interleaved,t!==null){i=t;do o|=i.lane,i=i.next;while(i!==t)}else s===null&&(i.shared.lanes=0);vn|=o,e.lanes=o,e.memoizedState=c}}function cc(e,t,n){if(e=t.effects,t.effects=null,e!==null)for(t=0;t<e.length;t++){var r=e[t],i=r.callback;if(i!==null){if(r.callback=null,r=n,typeof i!="function")throw Error(E(191,i));i.call(r)}}}var mi={},Ze=Jt(mi),ti=Jt(mi),ni=Jt(mi);function dn(e){if(e===mi)throw Error(E(174));return e}function Ul(e,t){switch(F(ni,t),F(ti,e),F(Ze,mi),e=t.nodeType,e){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:da(null,"");break;default:e=e===8?t.parentNode:t,t=e.namespaceURI||null,e=e.tagName,t=da(t,e)}W(Ze),F(Ze,t)}function tr(){W(Ze),W(ti),W(ni)}function Jh(e){dn(ni.current);var t=dn(Ze.current),n=da(t,e.type);t!==n&&(F(ti,e),F(Ze,n))}function Ml(e){ti.current===e&&(W(Ze),W(ti))}var H=Jt(0);function bs(e){for(var t=e;t!==null;){if(t.tag===13){var n=t.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||n.data==="$?"||n.data==="$!"))return t}else if(t.tag===19&&t.memoizedProps.revealOrder!==void 0){if(t.flags&128)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 Uo=[];function jl(){for(var e=0;e<Uo.length;e++)Uo[e]._workInProgressVersionPrimary=null;Uo.length=0}var Ji=wt.ReactCurrentDispatcher,Mo=wt.ReactCurrentBatchConfig,yn=0,G=null,ee=null,ie=null,Ts=!1,jr=!1,ri=0,ky=0;function ue(){throw Error(E(321))}function Fl(e,t){if(t===null)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!Ge(e[n],t[n]))return!1;return!0}function zl(e,t,n,r,i,s){if(yn=s,G=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,Ji.current=e===null||e.memoizedState===null?Ty:Cy,e=n(r,i),jr){s=0;do{if(jr=!1,ri=0,25<=s)throw Error(E(301));s+=1,ie=ee=null,t.updateQueue=null,Ji.current=Iy,e=n(r,i)}while(jr)}if(Ji.current=Cs,t=ee!==null&&ee.next!==null,yn=0,ie=ee=G=null,Ts=!1,t)throw Error(E(300));return e}function Bl(){var e=ri!==0;return ri=0,e}function Qe(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return ie===null?G.memoizedState=ie=e:ie=ie.next=e,ie}function Fe(){if(ee===null){var e=G.alternate;e=e!==null?e.memoizedState:null}else e=ee.next;var t=ie===null?G.memoizedState:ie.next;if(t!==null)ie=t,ee=e;else{if(e===null)throw Error(E(310));ee=e,e={memoizedState:ee.memoizedState,baseState:ee.baseState,baseQueue:ee.baseQueue,queue:ee.queue,next:null},ie===null?G.memoizedState=ie=e:ie=ie.next=e}return ie}function ii(e,t){return typeof t=="function"?t(e):t}function jo(e){var t=Fe(),n=t.queue;if(n===null)throw Error(E(311));n.lastRenderedReducer=e;var r=ee,i=r.baseQueue,s=n.pending;if(s!==null){if(i!==null){var o=i.next;
vendor: 5,597 bytes, line 39
39i.next=s.next,s.next=o}r.baseQueue=i=s,n.pending=null}if(i!==null){s=i.next,r=r.baseState;var a=o=null,l=null,u=s;do{var h=u.lane;if((yn&h)===h)l!==null&&(l=l.next={lane:0,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null}),r=u.hasEagerState?u.eagerState:e(r,u.action);else{var c={lane:h,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null};l===null?(a=l=c,o=r):l=l.next=c,G.lanes|=h,vn|=h}u=u.next}while(u!==null&&u!==s);l===null?o=r:l.next=a,Ge(r,t.memoizedState)||(ke=!0),t.memoizedState=r,t.baseState=o,t.baseQueue=l,n.lastRenderedState=r}if(e=n.interleaved,e!==null){i=e;do s=i.lane,G.lanes|=s,vn|=s,i=i.next;while(i!==e)}else i===null&&(n.lanes=0);return[t.memoizedState,n.dispatch]}function Fo(e){var t=Fe(),n=t.queue;if(n===null)throw Error(E(311));n.lastRenderedReducer=e;var r=n.dispatch,i=n.pending,s=t.memoizedState;if(i!==null){n.pending=null;var o=i=i.next;do s=e(s,o.action),o=o.next;while(o!==i);Ge(s,t.memoizedState)||(ke=!0),t.memoizedState=s,t.baseQueue===null&&(t.baseState=s),n.lastRenderedState=s}return[s,r]}function Zh(){}function ef(e,t){var n=G,r=Fe(),i=t(),s=!Ge(r.memoizedState,i);if(s&&(r.memoizedState=i,ke=!0),r=r.queue,Wl(rf.bind(null,n,r,e),[e]),r.getSnapshot!==t||s||ie!==null&&ie.memoizedState.tag&1){if(n.flags|=2048,si(9,nf.bind(null,n,r,i,t),void 0,null),se===null)throw Error(E(349));yn&30||tf(n,t,i)}return i}function tf(e,t,n){e.flags|=16384,e={getSnapshot:t,value:n},t=G.updateQueue,t===null?(t={lastEffect:null,stores:null},G.updateQueue=t,t.stores=[e]):(n=t.stores,n===null?t.stores=[e]:n.push(e))}function nf(e,t,n,r){t.value=n,t.getSnapshot=r,sf(t)&&of(e)}function rf(e,t,n){return n(function(){sf(t)&&of(e)})}function sf(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!Ge(e,n)}catch{return!0}}function of(e){var t=gt(e,1);t!==null&&He(t,e,1,-1)}function dc(e){var t=Qe();return typeof e=="function"&&(e=e()),t.memoizedState=t.baseState=e,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:ii,lastRenderedState:e},t.queue=e,e=e.dispatch=by.bind(null,G,e),[t.memoizedState,e]}function si(e,t,n,r){return e={tag:e,create:t,destroy:n,deps:r,next:null},t=G.updateQueue,t===null?(t={lastEffect:null,stores:null},G.updateQueue=t,t.lastEffect=e.next=e):(n=t.lastEffect,n===null?t.lastEffect=e.next=e:(r=n.next,n.next=e,e.next=r,t.lastEffect=e)),e}function af(){return Fe().memoizedState}function Zi(e,t,n,r){var i=Qe();G.flags|=e,i.memoizedState=si(1|t,n,void 0,r===void 0?null:r)}function Ys(e,t,n,r){var i=Fe();r=r===void 0?null:r;var s=void 0;if(ee!==null){var o=ee.memoizedState;if(s=o.destroy,r!==null&&Fl(r,o.deps)){i.memoizedState=si(t,n,s,r);return}}G.flags|=e,i.memoizedState=si(1|t,n,s,r)}function hc(e,t){return Zi(8390656,8,e,t)}function Wl(e,t){return Ys(2048,8,e,t)}function lf(e,t){return Ys(4,2,e,t)}function uf(e,t){return Ys(4,4,e,t)}function cf(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 df(e,t,n){return n=n!=null?n.concat([e]):null,Ys(4,4,cf.bind(null,t,e),n)}function $l(){}function hf(e,t){var n=Fe();t=t===void 0?null:t;var r=n.memoizedState;return r!==null&&t!==null&&Fl(t,r[1])?r[0]:(n.memoizedState=[e,t],e)}function ff(e,t){var n=Fe();t=t===void 0?null:t;var r=n.memoizedState;return r!==null&&t!==null&&Fl(t,r[1])?r[0]:(e=e(),n.memoizedState=[e,t],e)}function pf(e,t,n){return yn&21?(Ge(n,t)||(n=vh(),G.lanes|=n,vn|=n,e.baseState=!0),t):(e.baseState&&(e.baseState=!1,ke=!0),e.memoizedState=n)}function Sy(e,t){var n=M;M=n!==0&&4>n?n:4,e(!0);var r=Mo.transition;Mo.transition={};try{e(!1),t()}finally{M=n,Mo.transition=r}}function gf(){return Fe().memoizedState}function Ey(e,t,n){var r=Wt(e);if(n={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null},mf(e))yf(t,n);else if(n=Yh(e,t,n,r),n!==null){var i=ge();He(n,e,r,i),vf(n,t,r)}}function by(e,t,n){var r=Wt(e),i={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null};if(mf(e))yf(t,i);else{var s=e.alternate;if(e.lanes===0&&(s===null||s.lanes===0)&&(s=t.lastRenderedReducer,s!==null))try{var o=t.lastRenderedState,a=s(o,n);if(i.hasEagerState=!0,i.eagerState=a,Ge(a,o)){var l=t.interleaved;l===null?(i.next=i,Al(t)):(i.next=l.next,l.next=i),t.interleaved=i;return}}catch{}finally{}n=Yh(e,t,i,r),n!==null&&(i=ge(),He(n,e,r,i),vf(n,t,r))}}function mf(e){var t=e.alternate;return e===G||t!==null&&t===G}function yf(e,t){jr=Ts=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function vf(e,t,n){if(n&4194240){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,_l(e,n)}}var Cs={readContext:je,useCallback:ue,useContext:ue,useEffect:ue,useImperativeHandle:ue,useInsertionEffect:ue,useLayoutEffect:ue,useMemo:ue,useReducer:ue,useRef:ue,useState:ue,useDebugValue:ue,useDeferredValue:ue,useTransition:ue,useMutableSource:ue,useSyncExternalStore:ue,useId:ue,unstable_isNewReconciler:!1},Ty={readContext:je,useCallback:function(e,t){return Qe().memoizedState=[e,t===void 0?null:t],e},useContext:je,useEffect:hc,useImperativeHandle:function(e,t,n){return n=n!=null?n.concat([e]):null,Zi(4194308,4,cf.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Zi(4194308,4,e,t)},useInsertionEffect:function(e,t){return Zi(4,2,e,t)},useMemo:function(e,t){var n=Qe();return t=t===void 0?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=Qe();return t=n!==void 0?n(t):t,r.memoizedState=r.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},r.queue=e,e=e.dispatch=Ey.bind(null,G,e),[r.memoizedState,e]}
vendor: 5,194 bytes, lines 39-41
39,useRef:function(e){var t=Qe();return e={current:e},t.memoizedState=e},useState:dc,useDebugValue:$l,useDeferredValue:function(e){return Qe().memoizedState=e},useTransition:function(){var e=dc(!1),t=e[0];return e=Sy.bind(null,e[1]),Qe().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var r=G,i=Qe();if(V){if(n===void 0)throw Error(E(407));n=n()}else{if(n=t(),se===null)throw Error(E(349));yn&30||tf(r,t,n)}i.memoizedState=n;var s={value:n,getSnapshot:t};return i.queue=s,hc(rf.bind(null,r,s,e),[e]),r.flags|=2048,si(9,nf.bind(null,r,s,n,t),void 0,null),n},useId:function(){var e=Qe(),t=se.identifierPrefix;if(V){var n=ot,r=st;n=(r&~(1<<32-Ve(r)-1)).toString(32)+n,t=":"+t+"R"+n,n=ri++,0<n&&(t+="H"+n.toString(32)),t+=":"}else n=ky++,t=":"+t+"r"+n.toString(32)+":";return e.memoizedState=t},unstable_isNewReconciler:!1},Cy={readContext:je,useCallback:hf,useContext:je,useEffect:Wl,useImperativeHandle:df,useInsertionEffect:lf,useLayoutEffect:uf,useMemo:ff,useReducer:jo,useRef:af,useState:function(){return jo(ii)},useDebugValue:$l,useDeferredValue:function(e){var t=Fe();return pf(t,ee.memoizedState,e)},useTransition:function(){var e=jo(ii)[0],t=Fe().memoizedState;return[e,t]},useMutableSource:Zh,useSyncExternalStore:ef,useId:gf,unstable_isNewReconciler:!1},Iy={readContext:je,useCallback:hf,useContext:je,useEffect:Wl,useImperativeHandle:df,useInsertionEffect:lf,useLayoutEffect:uf,useMemo:ff,useReducer:Fo,useRef:af,useState:function(){return Fo(ii)},useDebugValue:$l,useDeferredValue:function(e){var t=Fe();return ee===null?t.memoizedState=e:pf(t,ee.memoizedState,e)},useTransition:function(){var e=Fo(ii)[0],t=Fe().memoizedState;return[e,t]},useMutableSource:Zh,useSyncExternalStore:ef,useId:gf,unstable_isNewReconciler:!1};function Be(e,t){if(e&&e.defaultProps){t=K({},t),e=e.defaultProps;for(var n in e)t[n]===void 0&&(t[n]=e[n]);return t}return t}function La(e,t,n,r){t=e.memoizedState,n=n(r,t),n=n==null?t:K({},t,n),e.memoizedState=n,e.lanes===0&&(e.updateQueue.baseState=n)}var Xs={isMounted:function(e){return(e=e._reactInternals)?bn(e)===e:!1},enqueueSetState:function(e,t,n){e=e._reactInternals;var r=ge(),i=Wt(e),s=dt(r,i);s.payload=t,n!=null&&(s.callback=n),t=zt(e,s,i),t!==null&&(He(t,e,i,r),Xi(t,e,i))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var r=ge(),i=Wt(e),s=dt(r,i);s.tag=1,s.payload=t,n!=null&&(s.callback=n),t=zt(e,s,i),t!==null&&(He(t,e,i,r),Xi(t,e,i))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=ge(),r=Wt(e),i=dt(n,r);i.tag=2,t!=null&&(i.callback=t),t=zt(e,i,r),t!==null&&(He(t,e,r,n),Xi(t,e,r))}};function fc(e,t,n,r,i,s,o){return e=e.stateNode,typeof e.shouldComponentUpdate=="function"?e.shouldComponentUpdate(r,s,o):t.prototype&&t.prototype.isPureReactComponent?!Xr(n,r)||!Xr(i,s):!0}function wf(e,t,n){var r=!1,i=Yt,s=t.contextType;return typeof s=="object"&&s!==null?s=je(s):(i=Ee(t)?gn:he.current,r=t.contextTypes,s=(r=r!=null)?Jn(e,i):Yt),t=new t(n,s),e.memoizedState=t.state!==null&&t.state!==void 0?t.state:null,t.updater=Xs,e.stateNode=t,t._reactInternals=e,r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=i,e.__reactInternalMemoizedMaskedChildContext=s),t}function pc(e,t,n,r){e=t.state,typeof t.componentWillReceiveProps=="function"&&t.componentWillReceiveProps(n,r),typeof t.UNSAFE_componentWillReceiveProps=="function"&&t.UNSAFE_componentWillReceiveProps(n,r),t.state!==e&&Xs.enqueueReplaceState(t,t.state,null)}function Na(e,t,n,r){var i=e.stateNode;i.props=n,i.state=e.memoizedState,i.refs={},Dl(e);var s=t.contextType;typeof s=="object"&&s!==null?i.context=je(s):(s=Ee(t)?gn:he.current,i.context=Jn(e,s)),i.state=e.memoizedState,s=t.getDerivedStateFromProps,typeof s=="function"&&(La(e,t,s,n),i.state=e.memoizedState),typeof t.getDerivedStateFromProps=="function"||typeof i.getSnapshotBeforeUpdate=="function"||typeof i.UNSAFE_componentWillMount!="function"&&typeof i.componentWillMount!="function"||(t=i.state,typeof i.componentWillMount=="function"&&i.componentWillMount(),typeof i.UNSAFE_componentWillMount=="function"&&i.UNSAFE_componentWillMount(),t!==i.state&&Xs.enqueueReplaceState(i,i.state,null),Es(e,n,i,r),i.state=e.memoizedState),typeof i.componentDidMount=="function"&&(e.flags|=4194308)}function nr(e,t){try{var n="",r=t;do n+=tm(r),r=r.return;while(r);var i=n}catch(s){i=`
40Error generating stack: `+s.message+`
41`+s.stack}return{value:e,source:t,stack:i,digest:null}}function zo(e,t,n){return{value:e,source:null,stack:n??null,digest:t??null}}function Aa(e,t){try{console.error(t.value)}catch(n){setTimeout(function(){throw n})}}var Ry=typeof WeakMap=="function"?WeakMap:Map;function _f(e,t,n){n=dt(-1,n),n.tag=3,n.payload={element:null};var r=t.value;return n.callback=function(){Rs||(Rs=!0,Va=r),Aa(e,t)},n}function kf(e,t,n){n=dt(-1,n),n.tag=3;var r=e.type.getDerivedStateFromError;if(typeof r=="function"){var i=t.value;n.payload=function(){return r(i)},n.callback=function(){Aa(e,t)}}var s=e.stateNode;return s!==null&&typeof s.componentDidCatch=="function"&&(n.callback=function(){Aa(e,t),typeof r!="function"&&(Bt===null?Bt=new Set([this]):Bt.add(this));var o=t.stack;this.componentDidCatch(t.value,{componentStack:o!==null?o:""})}),n}
vendor: 9,640 bytes, line 41
41function gc(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new Ry;var i=new Set;r.set(t,i)}else i=r.get(t),i===void 0&&(i=new Set,r.set(t,i));i.has(n)||(i.add(n),e=Wy.bind(null,e,t,n),t.then(e,e))}function mc(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 yc(e,t,n,r,i){return e.mode&1?(e.flags|=65536,e.lanes=i,e):(e===t?e.flags|=65536:(e.flags|=128,n.flags|=131072,n.flags&=-52805,n.tag===1&&(n.alternate===null?n.tag=17:(t=dt(-1,1),t.tag=2,zt(n,t,1))),n.lanes|=1),e)}var Py=wt.ReactCurrentOwner,ke=!1;function pe(e,t,n,r){t.child=e===null?Qh(t,null,n,r):er(t,e.child,n,r)}function vc(e,t,n,r,i){n=n.render;var s=t.ref;return Gn(t,i),r=zl(e,t,n,r,s,i),n=Bl(),e!==null&&!ke?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~i,mt(e,t,i)):(V&&n&&Rl(t),t.flags|=1,pe(e,t,r,i),t.child)}function wc(e,t,n,r,i){if(e===null){var s=n.type;return typeof s=="function"&&!Xl(s)&&s.defaultProps===void 0&&n.compare===null&&n.defaultProps===void 0?(t.tag=15,t.type=s,Sf(e,t,s,r,i)):(e=rs(n.type,null,r,t,t.mode,i),e.ref=t.ref,e.return=t,t.child=e)}if(s=e.child,!(e.lanes&i)){var o=s.memoizedProps;if(n=n.compare,n=n!==null?n:Xr,n(o,r)&&e.ref===t.ref)return mt(e,t,i)}return t.flags|=1,e=$t(s,r),e.ref=t.ref,e.return=t,t.child=e}function Sf(e,t,n,r,i){if(e!==null){var s=e.memoizedProps;if(Xr(s,r)&&e.ref===t.ref)if(ke=!1,t.pendingProps=r=s,(e.lanes&i)!==0)e.flags&131072&&(ke=!0);else return t.lanes=e.lanes,mt(e,t,i)}return Da(e,t,n,r,i)}function Ef(e,t,n){var r=t.pendingProps,i=r.children,s=e!==null?e.memoizedState:null;if(r.mode==="hidden")if(!(t.mode&1))t.memoizedState={baseLanes:0,cachePool:null,transitions:null},F(zn,Ie),Ie|=n;else{if(!(n&1073741824))return e=s!==null?s.baseLanes|n:n,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,F(zn,Ie),Ie|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},r=s!==null?s.baseLanes:n,F(zn,Ie),Ie|=r}else s!==null?(r=s.baseLanes|n,t.memoizedState=null):r=n,F(zn,Ie),Ie|=r;return pe(e,t,i,n),t.child}function bf(e,t){var n=t.ref;(e===null&&n!==null||e!==null&&e.ref!==n)&&(t.flags|=512,t.flags|=2097152)}function Da(e,t,n,r,i){var s=Ee(n)?gn:he.current;return s=Jn(t,s),Gn(t,i),n=zl(e,t,n,r,s,i),r=Bl(),e!==null&&!ke?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~i,mt(e,t,i)):(V&&r&&Rl(t),t.flags|=1,pe(e,t,n,i),t.child)}function _c(e,t,n,r,i){if(Ee(n)){var s=!0;vs(t)}else s=!1;if(Gn(t,i),t.stateNode===null)es(e,t),wf(t,n,r),Na(t,n,r,i),r=!0;else if(e===null){var o=t.stateNode,a=t.memoizedProps;o.props=a;var l=o.context,u=n.contextType;typeof u=="object"&&u!==null?u=je(u):(u=Ee(n)?gn:he.current,u=Jn(t,u));var h=n.getDerivedStateFromProps,c=typeof h=="function"||typeof o.getSnapshotBeforeUpdate=="function";c||typeof o.UNSAFE_componentWillReceiveProps!="function"&&typeof o.componentWillReceiveProps!="function"||(a!==r||l!==u)&&pc(t,o,r,u),Tt=!1;var g=t.memoizedState;o.state=g,Es(t,r,o,i),l=t.memoizedState,a!==r||g!==l||Se.current||Tt?(typeof h=="function"&&(La(t,n,h,r),l=t.memoizedState),(a=Tt||fc(t,n,a,r,g,l,u))?(c||typeof o.UNSAFE_componentWillMount!="function"&&typeof o.componentWillMount!="function"||(typeof o.componentWillMount=="function"&&o.componentWillMount(),typeof o.UNSAFE_componentWillMount=="function"&&o.UNSAFE_componentWillMount()),typeof o.componentDidMount=="function"&&(t.flags|=4194308)):(typeof o.componentDidMount=="function"&&(t.flags|=4194308),t.memoizedProps=r,t.memoizedState=l),o.props=r,o.state=l,o.context=u,r=a):(typeof o.componentDidMount=="function"&&(t.flags|=4194308),r=!1)}else{o=t.stateNode,Xh(e,t),a=t.memoizedProps,u=t.type===t.elementType?a:Be(t.type,a),o.props=u,c=t.pendingProps,g=o.context,l=n.contextType,typeof l=="object"&&l!==null?l=je(l):(l=Ee(n)?gn:he.current,l=Jn(t,l));var v=n.getDerivedStateFromProps;(h=typeof v=="function"||typeof o.getSnapshotBeforeUpdate=="function")||typeof o.UNSAFE_componentWillReceiveProps!="function"&&typeof o.componentWillReceiveProps!="function"||(a!==c||g!==l)&&pc(t,o,r,l),Tt=!1,g=t.memoizedState,o.state=g,Es(t,r,o,i);var y=t.memoizedState;a!==c||g!==y||Se.current||Tt?(typeof v=="function"&&(La(t,n,v,r),y=t.memoizedState),(u=Tt||fc(t,n,u,r,g,y,l)||!1)?(h||typeof o.UNSAFE_componentWillUpdate!="function"&&typeof o.componentWillUpdate!="function"||(typeof o.componentWillUpdate=="function"&&o.componentWillUpdate(r,y,l),typeof o.UNSAFE_componentWillUpdate=="function"&&o.UNSAFE_componentWillUpdate(r,y,l)),typeof o.componentDidUpdate=="function"&&(t.flags|=4),typeof o.getSnapshotBeforeUpdate=="function"&&(t.flags|=1024)):(typeof o.componentDidUpdate!="function"||a===e.memoizedProps&&g===e.memoizedState||(t.flags|=4),typeof o.getSnapshotBeforeUpdate!="function"||a===e.memoizedProps&&g===e.memoizedState||(t.flags|=1024),t.memoizedProps=r,t.memoizedState=y),o.props=r,o.state=y,o.context=l,r=u):(typeof o.componentDidUpdate!="function"||a===e.memoizedProps&&g===e.memoizedState||(t.flags|=4),typeof o.getSnapshotBeforeUpdate!="function"||a===e.memoizedProps&&g===e.memoizedState||(t.flags|=1024),r=!1)}return Ua(e,t,n,r,s,i)}function Ua(e,t,n,r,i,s){bf(e,t);var o=(t.flags&128)!==0;if(!r&&!o)return i&&sc(t,n,!1),mt(e,t,s);r=t.stateNode,Py.current=t;var a=o&&typeof n.getDerivedStateFromError!="function"?null:r.render();return t.flags|=1,e!==null&&o?(t.child=er(t,e.child,null,s),t.child=er(t,null,a,s)):pe(e,t,a,s),t.memoizedState=r.state,i&&sc(t,n,!0),t.child}function Tf(e){var t=e.stateNode;t.pendingContext?ic(e,t.pendingContext,t.pendingContext!==t.context):t.context&&ic(e,t.context,!1),Ul(e,t.containerInfo)}function kc(e,t,n,r,i){return Zn(),xl(i),t.flags|=256,pe(e,t,n,r),t.child}var Ma={dehydrated:null,treeContext:null,retryLane:0};function ja(e){return{baseLanes:e,cachePool:null,transitions:null}}function Cf(e,t,n){var r=t.pendingProps,i=H.current,s=!1,o=(t.flags&128)!==0,a;if((a=o)||(a=e!==null&&e.memoizedState===null?!1:(i&2)!==0),a?(s=!0,t.flags&=-129):(e===null||e.memoizedState!==null)&&(i|=1),F(H,i&1),e===null)return xa(t),e=t.memoizedState,e!==null&&(e=e.dehydrated,e!==null)?(t.mode&1?e.data==="$!"?t.lanes=8:t.lanes=1073741824:t.lanes=1,null):(o=r.children,e=r.fallback,s?(r=t.mode,s=t.child,o={mode:"hidden",children:o},!(r&1)&&s!==null?(s.childLanes=0,s.pendingProps=o):s=eo(o,r,0,null),e=fn(e,r,n,null),s.return=t,e.return=t,s.sibling=e,t.child=s,t.child.memoizedState=ja(n),t.memoizedState=Ma,e):Vl(t,o));if(i=e.memoizedState,i!==null&&(a=i.dehydrated,a!==null))return xy(e,t,o,r,a,i,n);if(s){s=r.fallback,o=t.mode,i=e.child,a=i.sibling;var l={mode:"hidden",children:r.children};return!(o&1)&&t.child!==i?(r=t.child,r.childLanes=0,r.pendingProps=l,t.deletions=null):(r=$t(i,l),r.subtreeFlags=i.subtreeFlags&14680064),a!==null?s=$t(a,s):(s=fn(s,o,n,null),s.flags|=2),s.return=t,r.return=t,r.sibling=s,t.child=r,r=s,s=t.child,o=e.child.memoizedState,o=o===null?ja(n):{baseLanes:o.baseLanes|n,cachePool:null,transitions:o.transitions},s.memoizedState=o,s.childLanes=e.childLanes&~n,t.memoizedState=Ma,r}return s=e.child,e=s.sibling,r=$t(s,{mode:"visible",children:r.children}),!(t.mode&1)&&(r.lanes=n),r.return=t,r.sibling=null,e!==null&&(n=t.deletions,n===null?(t.deletions=[e],t.flags|=16):n.push(e)),t.child=r,t.memoizedState=null,r}function Vl(e,t){return t=eo({mode:"visible",children:t},e.mode,0,null),t.return=e,e.child=t}function Fi(e,t,n,r){return r!==null&&xl(r),er(t,e.child,null,n),e=Vl(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function xy(e,t,n,r,i,s,o){if(n)return t.flags&256?(t.flags&=-257,r=zo(Error(E(422))),Fi(e,t,o,r)):t.memoizedState!==null?(t.child=e.child,t.flags|=128,null):(s=r.fallback,i=t.mode,r=eo({mode:"visible",children:r.children},i,0,null),s=fn(s,i,o,null),s.flags|=2,r.return=t,s.return=t,r.sibling=s,t.child=r,t.mode&1&&er(t,e.child,null,o),t.child.memoizedState=ja(o),t.memoizedState=Ma,s);if(!(t.mode&1))return Fi(e,t,o,null);if(i.data==="$!"){if(r=i.nextSibling&&i.nextSibling.dataset,r)var a=r.dgst;return r=a,s=Error(E(419)),r=zo(s,r,void 0),Fi(e,t,o,r)}if(a=(o&e.childLanes)!==0,ke||a){if(r=se,r!==null){switch(o&-o){case 4:i=2;break;case 16:i=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:i=32;break;case 536870912:i=268435456;break;default:i=0}i=i&(r.suspendedLanes|o)?0:i,i!==0&&i!==s.retryLane&&(s.retryLane=i,gt(e,i),He(r,e,i,-1))}return Yl(),r=zo(Error(E(421))),Fi(e,t,o,r)}return i.data==="$?"?(t.flags|=128,t.child=e.child,t=$y.bind(null,e),i._reactRetry=t,null):(e=s.treeContext,Re=Ft(i.nextSibling),xe=t,V=!0,$e=null,e!==null&&(Ae[De++]=st,Ae[De++]=ot,Ae[De++]=mn,st=e.id,ot=e.overflow,mn=t),t=Vl(t,r.children),t.flags|=4096,t)}function Sc(e,t,n){e.lanes|=t;var r=e.alternate;r!==null&&(r.lanes|=t),Oa(e.return,t,n)}function Bo(e,t,n,r,i){var s=e.memoizedState;s===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:i}:(s.isBackwards=t,s.rendering=null,s.renderingStartTime=0,s.last=r,s.tail=n,s.tailMode=i)}function If(e,t,n){var r=t.pendingProps,i=r.revealOrder,s=r.tail;if(pe(e,t,r.children,n),r=H.current,r&2)r=r&1|2,t.flags|=128;else{if(e!==null&&e.flags&128)e:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&Sc(e,n,t);else if(e.tag===19)Sc(e,n,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}r&=1}
vendor: 5,122 bytes, line 41
41if(F(H,r),!(t.mode&1))t.memoizedState=null;else switch(i){case"forwards":for(n=t.child,i=null;n!==null;)e=n.alternate,e!==null&&bs(e)===null&&(i=n),n=n.sibling;n=i,n===null?(i=t.child,t.child=null):(i=n.sibling,n.sibling=null),Bo(t,!1,i,n,s);break;case"backwards":for(n=null,i=t.child,t.child=null;i!==null;){if(e=i.alternate,e!==null&&bs(e)===null){t.child=i;break}e=i.sibling,i.sibling=n,n=i,i=e}Bo(t,!0,n,null,s);break;case"together":Bo(t,!1,null,null,void 0);break;default:t.memoizedState=null}return t.child}function es(e,t){!(t.mode&1)&&e!==null&&(e.alternate=null,t.alternate=null,t.flags|=2)}function mt(e,t,n){if(e!==null&&(t.dependencies=e.dependencies),vn|=t.lanes,!(n&t.childLanes))return null;if(e!==null&&t.child!==e.child)throw Error(E(153));if(t.child!==null){for(e=t.child,n=$t(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=$t(e,e.pendingProps),n.return=t;n.sibling=null}return t.child}function Oy(e,t,n){switch(t.tag){case 3:Tf(t),Zn();break;case 5:Jh(t);break;case 1:Ee(t.type)&&vs(t);break;case 4:Ul(t,t.stateNode.containerInfo);break;case 10:var r=t.type._context,i=t.memoizedProps.value;F(ks,r._currentValue),r._currentValue=i;break;case 13:if(r=t.memoizedState,r!==null)return r.dehydrated!==null?(F(H,H.current&1),t.flags|=128,null):n&t.child.childLanes?Cf(e,t,n):(F(H,H.current&1),e=mt(e,t,n),e!==null?e.sibling:null);F(H,H.current&1);break;case 19:if(r=(n&t.childLanes)!==0,e.flags&128){if(r)return If(e,t,n);t.flags|=128}if(i=t.memoizedState,i!==null&&(i.rendering=null,i.tail=null,i.lastEffect=null),F(H,H.current),r)break;return null;case 22:case 23:return t.lanes=0,Ef(e,t,n)}return mt(e,t,n)}var Rf,Fa,Pf,xf;Rf=function(e,t){for(var n=t.child;n!==null;){if(n.tag===5||n.tag===6)e.appendChild(n.stateNode);else if(n.tag!==4&&n.child!==null){n.child.return=n,n=n.child;continue}if(n===t)break;for(;n.sibling===null;){if(n.return===null||n.return===t)return;n=n.return}n.sibling.return=n.return,n=n.sibling}};Fa=function(){};Pf=function(e,t,n,r){var i=e.memoizedProps;if(i!==r){e=t.stateNode,dn(Ze.current);var s=null;switch(n){case"input":i=aa(e,i),r=aa(e,r),s=[];break;case"select":i=K({},i,{value:void 0}),r=K({},r,{value:void 0}),s=[];break;case"textarea":i=ca(e,i),r=ca(e,r),s=[];break;default:typeof i.onClick!="function"&&typeof r.onClick=="function"&&(e.onclick=ms)}ha(n,r);var o;n=null;for(u in i)if(!r.hasOwnProperty(u)&&i.hasOwnProperty(u)&&i[u]!=null)if(u==="style"){var a=i[u];for(o in a)a.hasOwnProperty(o)&&(n||(n={}),n[o]="")}else u!=="dangerouslySetInnerHTML"&&u!=="children"&&u!=="suppressContentEditableWarning"&&u!=="suppressHydrationWarning"&&u!=="autoFocus"&&(Vr.hasOwnProperty(u)?s||(s=[]):(s=s||[]).push(u,null));for(u in r){var l=r[u];if(a=i!=null?i[u]:void 0,r.hasOwnProperty(u)&&l!==a&&(l!=null||a!=null))if(u==="style")if(a){for(o in a)!a.hasOwnProperty(o)||l&&l.hasOwnProperty(o)||(n||(n={}),n[o]="");for(o in l)l.hasOwnProperty(o)&&a[o]!==l[o]&&(n||(n={}),n[o]=l[o])}else n||(s||(s=[]),s.push(u,n)),n=l;else u==="dangerouslySetInnerHTML"?(l=l?l.__html:void 0,a=a?a.__html:void 0,l!=null&&a!==l&&(s=s||[]).push(u,l)):u==="children"?typeof l!="string"&&typeof l!="number"||(s=s||[]).push(u,""+l):u!=="suppressContentEditableWarning"&&u!=="suppressHydrationWarning"&&(Vr.hasOwnProperty(u)?(l!=null&&u==="onScroll"&&z("scroll",e),s||a===l||(s=[])):(s=s||[]).push(u,l))}n&&(s=s||[]).push("style",n);var u=s;(t.updateQueue=u)&&(t.flags|=4)}};xf=function(e,t,n,r){n!==r&&(t.flags|=4)};function br(e,t){if(!V)switch(e.tailMode){case"hidden":t=e.tail;for(var n=null;t!==null;)t.alternate!==null&&(n=t),t=t.sibling;n===null?e.tail=null:n.sibling=null;break;case"collapsed":n=e.tail;for(var r=null;n!==null;)n.alternate!==null&&(r=n),n=n.sibling;r===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:r.sibling=null}}function ce(e){var t=e.alternate!==null&&e.alternate.child===e.child,n=0,r=0;if(t)for(var i=e.child;i!==null;)n|=i.lanes|i.childLanes,r|=i.subtreeFlags&14680064,r|=i.flags&14680064,i.return=e,i=i.sibling;else for(i=e.child;i!==null;)n|=i.lanes|i.childLanes,r|=i.subtreeFlags,r|=i.flags,i.return=e,i=i.sibling;return e.subtreeFlags|=r,e.childLanes=n,t}function Ly(e,t,n){var r=t.pendingProps;switch(Pl(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return ce(t),null;case 1:return Ee(t.type)&&ys(),ce(t),null;case 3:return r=t.stateNode,tr(),W(Se),W(he),jl(),r.pendingContext&&(r.context=r.pendingContext,r.pendingContext=null),(e===null||e.child===null)&&(Mi(t)?t.flags|=4:e===null||e.memoizedState.isDehydrated&&!(t.flags&256)||(t.flags|=1024,$e!==null&&(qa($e),$e=null))),Fa(e,t),ce(t),null;case 5:Ml(t);var i=dn(ni.current);if(n=t.type,e!==null&&t.stateNode!=null)Pf(e,t,n,r,i),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!r){if(t.stateNode===null)throw Error(E(166));return ce(t),null}if(e=dn(Ze.current),Mi(t)){r=t.stateNode,n=t.type;var s=t.memoizedProps;switch(r[Ye]=t,r[ei]=s,e=(t.mode&1)!==0,n){case"dialog":z("cancel",r),z("close",r);break;case"iframe":case"object":case"embed":z("load",r);break;case"video":case"audio":for(i=0;i<xr.length;i++)z(xr[i],r);break;
vendor: 29,446 bytes, line 41
41case"source":z("error",r);break;case"img":case"image":case"link":z("error",r),z("load",r);break;case"details":z("toggle",r);break;case"input":Ou(r,s),z("invalid",r);break;case"select":r._wrapperState={wasMultiple:!!s.multiple},z("invalid",r);break;case"textarea":Nu(r,s),z("invalid",r)}ha(n,s),i=null;for(var o in s)if(s.hasOwnProperty(o)){var a=s[o];o==="children"?typeof a=="string"?r.textContent!==a&&(s.suppressHydrationWarning!==!0&&Ui(r.textContent,a,e),i=["children",a]):typeof a=="number"&&r.textContent!==""+a&&(s.suppressHydrationWarning!==!0&&Ui(r.textContent,a,e),i=["children",""+a]):Vr.hasOwnProperty(o)&&a!=null&&o==="onScroll"&&z("scroll",r)}switch(n){case"input":Ri(r),Lu(r,s,!0);break;case"textarea":Ri(r),Au(r);break;case"select":case"option":break;default:typeof s.onClick=="function"&&(r.onclick=ms)}r=i,t.updateQueue=r,r!==null&&(t.flags|=4)}else{o=i.nodeType===9?i:i.ownerDocument,e==="http://www.w3.org/1999/xhtml"&&(e=rh(n)),e==="http://www.w3.org/1999/xhtml"?n==="script"?(e=o.createElement("div"),e.innerHTML="<script><\/script>",e=e.removeChild(e.firstChild)):typeof r.is=="string"?e=o.createElement(n,{is:r.is}):(e=o.createElement(n),n==="select"&&(o=e,r.multiple?o.multiple=!0:r.size&&(o.size=r.size))):e=o.createElementNS(e,n),e[Ye]=t,e[ei]=r,Rf(e,t,!1,!1),t.stateNode=e;e:{switch(o=fa(n,r),n){case"dialog":z("cancel",e),z("close",e),i=r;break;case"iframe":case"object":case"embed":z("load",e),i=r;break;case"video":case"audio":for(i=0;i<xr.length;i++)z(xr[i],e);i=r;break;case"source":z("error",e),i=r;break;case"img":case"image":case"link":z("error",e),z("load",e),i=r;break;case"details":z("toggle",e),i=r;break;case"input":Ou(e,r),i=aa(e,r),z("invalid",e);break;case"option":i=r;break;case"select":e._wrapperState={wasMultiple:!!r.multiple},i=K({},r,{value:void 0}),z("invalid",e);break;case"textarea":Nu(e,r),i=ca(e,r),z("invalid",e);break;default:i=r}ha(n,i),a=i;for(s in a)if(a.hasOwnProperty(s)){var l=a[s];s==="style"?oh(e,l):s==="dangerouslySetInnerHTML"?(l=l?l.__html:void 0,l!=null&&ih(e,l)):s==="children"?typeof l=="string"?(n!=="textarea"||l!=="")&&Hr(e,l):typeof l=="number"&&Hr(e,""+l):s!=="suppressContentEditableWarning"&&s!=="suppressHydrationWarning"&&s!=="autoFocus"&&(Vr.hasOwnProperty(s)?l!=null&&s==="onScroll"&&z("scroll",e):l!=null&&pl(e,s,l,o))}switch(n){case"input":Ri(e),Lu(e,r,!1);break;case"textarea":Ri(e),Au(e);break;case"option":r.value!=null&&e.setAttribute("value",""+Qt(r.value));break;case"select":e.multiple=!!r.multiple,s=r.value,s!=null?Wn(e,!!r.multiple,s,!1):r.defaultValue!=null&&Wn(e,!!r.multiple,r.defaultValue,!0);break;default:typeof i.onClick=="function"&&(e.onclick=ms)}switch(n){case"button":case"input":case"select":case"textarea":r=!!r.autoFocus;break e;case"img":r=!0;break e;default:r=!1}}r&&(t.flags|=4)}t.ref!==null&&(t.flags|=512,t.flags|=2097152)}return ce(t),null;case 6:if(e&&t.stateNode!=null)xf(e,t,e.memoizedProps,r);else{if(typeof r!="string"&&t.stateNode===null)throw Error(E(166));if(n=dn(ni.current),dn(Ze.current),Mi(t)){if(r=t.stateNode,n=t.memoizedProps,r[Ye]=t,(s=r.nodeValue!==n)&&(e=xe,e!==null))switch(e.tag){case 3:Ui(r.nodeValue,n,(e.mode&1)!==0);break;case 5:e.memoizedProps.suppressHydrationWarning!==!0&&Ui(r.nodeValue,n,(e.mode&1)!==0)}s&&(t.flags|=4)}else r=(n.nodeType===9?n:n.ownerDocument).createTextNode(r),r[Ye]=t,t.stateNode=r}return ce(t),null;case 13:if(W(H),r=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(V&&Re!==null&&t.mode&1&&!(t.flags&128))qh(),Zn(),t.flags|=98560,s=!1;else if(s=Mi(t),r!==null&&r.dehydrated!==null){if(e===null){if(!s)throw Error(E(318));if(s=t.memoizedState,s=s!==null?s.dehydrated:null,!s)throw Error(E(317));s[Ye]=t}else Zn(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;ce(t),s=!1}else $e!==null&&(qa($e),$e=null),s=!0;if(!s)return t.flags&65536?t:null}return t.flags&128?(t.lanes=n,t):(r=r!==null,r!==(e!==null&&e.memoizedState!==null)&&r&&(t.child.flags|=8192,t.mode&1&&(e===null||H.current&1?te===0&&(te=3):Yl())),t.updateQueue!==null&&(t.flags|=4),ce(t),null);case 4:return tr(),Fa(e,t),e===null&&Jr(t.stateNode.containerInfo),ce(t),null;case 10:return Nl(t.type._context),ce(t),null;case 17:return Ee(t.type)&&ys(),ce(t),null;case 19:if(W(H),s=t.memoizedState,s===null)return ce(t),null;if(r=(t.flags&128)!==0,o=s.rendering,o===null)if(r)br(s,!1);else{if(te!==0||e!==null&&e.flags&128)for(e=t.child;e!==null;){if(o=bs(e),o!==null){for(t.flags|=128,br(s,!1),r=o.updateQueue,r!==null&&(t.updateQueue=r,t.flags|=4),t.subtreeFlags=0,r=n,n=t.child;n!==null;)s=n,e=r,s.flags&=14680066,o=s.alternate,o===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=o.childLanes,s.lanes=o.lanes,s.child=o.child,s.subtreeFlags=0,s.deletions=null,s.memoizedProps=o.memoizedProps,s.memoizedState=o.memoizedState,s.updateQueue=o.updateQueue,s.type=o.type,e=o.dependencies,s.dependencies=e===null?null:{lanes:e.lanes,firstContext:e.firstContext}),n=n.sibling;return F(H,H.current&1|2),t.child}e=e.sibling}s.tail!==null&&J()>rr&&(t.flags|=128,r=!0,br(s,!1),t.lanes=4194304)}else{if(!r)if(e=bs(o),e!==null){if(t.flags|=128,r=!0,n=e.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),br(s,!0),s.tail===null&&s.tailMode==="hidden"&&!o.alternate&&!V)return ce(t),null}else 2*J()-s.renderingStartTime>rr&&n!==1073741824&&(t.flags|=128,r=!0,br(s,!1),t.lanes=4194304);s.isBackwards?(o.sibling=t.child,t.child=o):(n=s.last,n!==null?n.sibling=o:t.child=o,s.last=o)}return s.tail!==null?(t=s.tail,s.rendering=t,s.tail=t.sibling,s.renderingStartTime=J(),t.sibling=null,n=H.current,F(H,r?n&1|2:n&1),t):(ce(t),null);case 22:case 23:return Ql(),r=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==r&&(t.flags|=8192),r&&t.mode&1?Ie&1073741824&&(ce(t),t.subtreeFlags&6&&(t.flags|=8192)):ce(t),null;case 24:return null;case 25:return null}throw Error(E(156,t.tag))}function Ny(e,t){switch(Pl(t),t.tag){case 1:return Ee(t.type)&&ys(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return tr(),W(Se),W(he),jl(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return Ml(t),null;case 13:if(W(H),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(E(340));Zn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return W(H),null;case 4:return tr(),null;case 10:return Nl(t.type._context),null;case 22:case 23:return Ql(),null;case 24:return null;default:return null}}var zi=!1,de=!1,Ay=typeof WeakSet=="function"?WeakSet:Set,I=null;function Fn(e,t){var n=e.ref;if(n!==null)if(typeof n=="function")try{n(null)}catch(r){Y(e,t,r)}else n.current=null}function za(e,t,n){try{n()}catch(r){Y(e,t,r)}}var Ec=!1;function Dy(e,t){if(Ea=fs,e=Ah(),Il(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var i=r.anchorOffset,s=r.focusNode;r=r.focusOffset;try{n.nodeType,s.nodeType}catch{n=null;break e}var o=0,a=-1,l=-1,u=0,h=0,c=e,g=null;t:for(;;){for(var v;c!==n||i!==0&&c.nodeType!==3||(a=o+i),c!==s||r!==0&&c.nodeType!==3||(l=o+r),c.nodeType===3&&(o+=c.nodeValue.length),(v=c.firstChild)!==null;)g=c,c=v;for(;;){if(c===e)break t;if(g===n&&++u===i&&(a=o),g===s&&++h===r&&(l=o),(v=c.nextSibling)!==null)break;c=g,g=c.parentNode}c=v}n=a===-1||l===-1?null:{start:a,end:l}}else n=null}n=n||{start:0,end:0}}else n=null;for(ba={focusedElem:e,selectionRange:n},fs=!1,I=t;I!==null;)if(t=I,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,I=e;else for(;I!==null;){t=I;try{var y=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(y!==null){var _=y.memoizedProps,k=y.memoizedState,p=t.stateNode,d=p.getSnapshotBeforeUpdate(t.elementType===t.type?_:Be(t.type,_),k);p.__reactInternalSnapshotBeforeUpdate=d}break;case 3:var f=t.stateNode.containerInfo;f.nodeType===1?f.textContent="":f.nodeType===9&&f.documentElement&&f.removeChild(f.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(E(163))}}catch(m){Y(t,t.return,m)}if(e=t.sibling,e!==null){e.return=t.return,I=e;break}I=t.return}return y=Ec,Ec=!1,y}function Fr(e,t,n){var r=t.updateQueue;if(r=r!==null?r.lastEffect:null,r!==null){var i=r=r.next;do{if((i.tag&e)===e){var s=i.destroy;i.destroy=void 0,s!==void 0&&za(t,n,s)}i=i.next}while(i!==r)}}function Js(e,t){if(t=t.updateQueue,t=t!==null?t.lastEffect:null,t!==null){var n=t=t.next;do{if((n.tag&e)===e){var r=n.create;n.destroy=r()}n=n.next}while(n!==t)}}function Ba(e){var t=e.ref;if(t!==null){var n=e.stateNode;switch(e.tag){case 5:e=n;break;default:e=n}typeof t=="function"?t(e):t.current=e}}function Of(e){var t=e.alternate;t!==null&&(e.alternate=null,Of(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[Ye],delete t[ei],delete t[Ia],delete t[yy],delete t[vy])),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 Lf(e){return e.tag===5||e.tag===3||e.tag===4}function bc(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||Lf(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 Wa(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.nodeType===8?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(n.nodeType===8?(t=n.parentNode,t.insertBefore(e,n)):(t=n,t.appendChild(e)),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=ms));else if(r!==4&&(e=e.child,e!==null))for(Wa(e,t,n),e=e.sibling;e!==null;)Wa(e,t,n),e=e.sibling}function $a(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(e=e.child,e!==null))for($a(e,t,n),e=e.sibling;e!==null;)$a(e,t,n),e=e.sibling}var oe=null,We=!1;function St(e,t,n){for(n=n.child;n!==null;)Nf(e,t,n),n=n.sibling}function Nf(e,t,n){if(Je&&typeof Je.onCommitFiberUnmount=="function")try{Je.onCommitFiberUnmount(Vs,n)}catch{}switch(n.tag){case 5:de||Fn(n,t);case 6:var r=oe,i=We;oe=null,St(e,t,n),oe=r,We=i,oe!==null&&(We?(e=oe,n=n.stateNode,e.nodeType===8?e.parentNode.removeChild(n):e.removeChild(n)):oe.removeChild(n.stateNode));break;case 18:oe!==null&&(We?(e=oe,n=n.stateNode,e.nodeType===8?Ao(e.parentNode,n):e.nodeType===1&&Ao(e,n),Qr(e)):Ao(oe,n.stateNode));break;case 4:r=oe,i=We,oe=n.stateNode.containerInfo,We=!0,St(e,t,n),oe=r,We=i;break;case 0:case 11:case 14:case 15:if(!de&&(r=n.updateQueue,r!==null&&(r=r.lastEffect,r!==null))){i=r=r.next;do{var s=i,o=s.destroy;s=s.tag,o!==void 0&&(s&2||s&4)&&za(n,t,o),i=i.next}while(i!==r)}St(e,t,n);break;case 1:if(!de&&(Fn(n,t),r=n.stateNode,typeof r.componentWillUnmount=="function"))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(a){Y(n,t,a)}St(e,t,n);break;case 21:St(e,t,n);break;case 22:n.mode&1?(de=(r=de)||n.memoizedState!==null,St(e,t,n),de=r):St(e,t,n);break;default:St(e,t,n)}}function Tc(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var n=e.stateNode;n===null&&(n=e.stateNode=new Ay),t.forEach(function(r){var i=Vy.bind(null,e,r);n.has(r)||(n.add(r),r.then(i,i))})}}function ze(e,t){var n=t.deletions;if(n!==null)for(var r=0;r<n.length;r++){var i=n[r];try{var s=e,o=t,a=o;e:for(;a!==null;){switch(a.tag){case 5:oe=a.stateNode,We=!1;break e;case 3:oe=a.stateNode.containerInfo,We=!0;break e;case 4:oe=a.stateNode.containerInfo,We=!0;break e}a=a.return}if(oe===null)throw Error(E(160));Nf(s,o,i),oe=null,We=!1;var l=i.alternate;l!==null&&(l.return=null),i.return=null}catch(u){Y(i,t,u)}}if(t.subtreeFlags&12854)for(t=t.child;t!==null;)Af(t,e),t=t.sibling}function Af(e,t){var n=e.alternate,r=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:if(ze(t,e),Ke(e),r&4){try{Fr(3,e,e.return),Js(3,e)}catch(_){Y(e,e.return,_)}try{Fr(5,e,e.return)}catch(_){Y(e,e.return,_)}}break;case 1:ze(t,e),Ke(e),r&512&&n!==null&&Fn(n,n.return);break;case 5:if(ze(t,e),Ke(e),r&512&&n!==null&&Fn(n,n.return),e.flags&32){var i=e.stateNode;try{Hr(i,"")}catch(_){Y(e,e.return,_)}}if(r&4&&(i=e.stateNode,i!=null)){var s=e.memoizedProps,o=n!==null?n.memoizedProps:s,a=e.type,l=e.updateQueue;if(e.updateQueue=null,l!==null)try{a==="input"&&s.type==="radio"&&s.name!=null&&th(i,s),fa(a,o);var u=fa(a,s);for(o=0;o<l.length;o+=2){var h=l[o],c=l[o+1];h==="style"?oh(i,c):h==="dangerouslySetInnerHTML"?ih(i,c):h==="children"?Hr(i,c):pl(i,h,c,u)}switch(a){case"input":la(i,s);break;case"textarea":nh(i,s);break;case"select":var g=i._wrapperState.wasMultiple;i._wrapperState.wasMultiple=!!s.multiple;var v=s.value;v!=null?Wn(i,!!s.multiple,v,!1):g!==!!s.multiple&&(s.defaultValue!=null?Wn(i,!!s.multiple,s.defaultValue,!0):Wn(i,!!s.multiple,s.multiple?[]:"",!1))}i[ei]=s}catch(_){Y(e,e.return,_)}}break;case 6:if(ze(t,e),Ke(e),r&4){if(e.stateNode===null)throw Error(E(162));i=e.stateNode,s=e.memoizedProps;try{i.nodeValue=s}catch(_){Y(e,e.return,_)}}break;case 3:if(ze(t,e),Ke(e),r&4&&n!==null&&n.memoizedState.isDehydrated)try{Qr(t.containerInfo)}catch(_){Y(e,e.return,_)}break;case 4:ze(t,e),Ke(e);break;case 13:ze(t,e),Ke(e),i=e.child,i.flags&8192&&(s=i.memoizedState!==null,i.stateNode.isHidden=s,!s||i.alternate!==null&&i.alternate.memoizedState!==null||(ql=J())),r&4&&Tc(e);break;case 22:if(h=n!==null&&n.memoizedState!==null,e.mode&1?(de=(u=de)||h,ze(t,e),de=u):ze(t,e),Ke(e),r&8192){if(u=e.memoizedState!==null,(e.stateNode.isHidden=u)&&!h&&e.mode&1)for(I=e,h=e.child;h!==null;){for(c=I=h;I!==null;){switch(g=I,v=g.child,g.tag){case 0:case 11:case 14:case 15:Fr(4,g,g.return);break;case 1:Fn(g,g.return);var y=g.stateNode;if(typeof y.componentWillUnmount=="function"){r=g,n=g.return;try{t=r,y.props=t.memoizedProps,y.state=t.memoizedState,y.componentWillUnmount()}catch(_){Y(r,n,_)}}break;case 5:Fn(g,g.return);break;case 22:if(g.memoizedState!==null){Ic(c);continue}}v!==null?(v.return=g,I=v):Ic(c)}h=h.sibling}e:for(h=null,c=e;;){if(c.tag===5){if(h===null){h=c;try{i=c.stateNode,u?(s=i.style,typeof s.setProperty=="function"?s.setProperty("display","none","important"):s.display="none"):(a=c.stateNode,l=c.memoizedProps.style,o=l!=null&&l.hasOwnProperty("display")?l.display:null,a.style.display=sh("display",o))}catch(_){Y(e,e.return,_)}}}else if(c.tag===6){if(h===null)try{c.stateNode.nodeValue=u?"":c.memoizedProps}catch(_){Y(e,e.return,_)}}else if((c.tag!==22&&c.tag!==23||c.memoizedState===null||c===e)&&c.child!==null){c.child.return=c,c=c.child;continue}if(c===e)break e;for(;c.sibling===null;){if(c.return===null||c.return===e)break e;h===c&&(h=null),c=c.return}h===c&&(h=null),c.sibling.return=c.return,c=c.sibling}}break;case 19:ze(t,e),Ke(e),r&4&&Tc(e);break;case 21:break;default:ze(t,e),Ke(e)}}function Ke(e){var t=e.flags;if(t&2){try{e:{for(var n=e.return;n!==null;){if(Lf(n)){var r=n;break e}n=n.return}throw Error(E(160))}switch(r.tag){case 5:var i=r.stateNode;r.flags&32&&(Hr(i,""),r.flags&=-33);var s=bc(e);$a(e,s,i);break;case 3:case 4:var o=r.stateNode.containerInfo,a=bc(e);Wa(e,a,o);break;default:throw Error(E(161))}}catch(l){Y(e,e.return,l)}e.flags&=-3}t&4096&&(e.flags&=-4097)}function Uy(e,t,n){I=e,Df(e)}function Df(e,t,n){for(var r=(e.mode&1)!==0;I!==null;){var i=I,s=i.child;if(i.tag===22&&r){var o=i.memoizedState!==null||zi;if(!o){var a=i.alternate,l=a!==null&&a.memoizedState!==null||de;a=zi;var u=de;if(zi=o,(de=l)&&!u)for(I=i;I!==null;)o=I,l=o.child,o.tag===22&&o.memoizedState!==null?Rc(i):l!==null?(l.return=o,I=l):Rc(i);for(;s!==null;)I=s,Df(s),s=s.sibling;I=i,zi=a,de=u}Cc(e)}else i.subtreeFlags&8772&&s!==null?(s.return=i,I=s):Cc(e)}}function Cc(e){for(;I!==null;){var t=I;if(t.flags&8772){var n=t.alternate;try{if(t.flags&8772)switch(t.tag){case 0:case 11:case 15:de||Js(5,t);break;case 1:var r=t.stateNode;if(t.flags&4&&!de)if(n===null)r.componentDidMount();else{var i=t.elementType===t.type?n.memoizedProps:Be(t.type,n.memoizedProps);r.componentDidUpdate(i,n.memoizedState,r.__reactInternalSnapshotBeforeUpdate)}var s=t.updateQueue;s!==null&&cc(t,s,r);break;case 3:var o=t.updateQueue;if(o!==null){if(n=null,t.child!==null)switch(t.child.tag){case 5:n=t.child.stateNode;break;case 1:n=t.child.stateNode}cc(t,o,n)}break;case 5:var a=t.stateNode;if(n===null&&t.flags&4){n=a;var l=t.memoizedProps;switch(t.type){case"button":case"input":case"select":case"textarea":l.autoFocus&&n.focus();break;case"img":l.src&&(n.src=l.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(t.memoizedState===null){var u=t.alternate;if(u!==null){var h=u.memoizedState;if(h!==null){var c=h.dehydrated;c!==null&&Qr(c)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(E(163))}de||t.flags&512&&Ba(t)}catch(g){Y(t,t.return,g)}}if(t===e){I=null;break}if(n=t.sibling,n!==null){n.return=t.return,I=n;break}I=t.return}}function Ic(e){for(;I!==null;){var t=I;if(t===e){I=null;break}var n=t.sibling;if(n!==null){n.return=t.return,I=n;break}I=t.return}}function Rc(e){for(;I!==null;){var t=I;try{switch(t.tag){case 0:case 11:case 15:var n=t.return;try{Js(4,t)}catch(l){Y(t,n,l)}break;case 1:var r=t.stateNode;if(typeof r.componentDidMount=="function"){var i=t.return;try{r.componentDidMount()}catch(l){Y(t,i,l)}}var s=t.return;try{Ba(t)}catch(l){Y(t,s,l)}break;case 5:var o=t.return;try{Ba(t)}catch(l){Y(t,o,l)}}}catch(l){Y(t,t.return,l)}if(t===e){I=null;break}var a=t.sibling;if(a!==null){a.return=t.return,I=a;break}I=t.return}}var My=Math.ceil,Is=wt.ReactCurrentDispatcher,Hl=wt.ReactCurrentOwner,Me=wt.ReactCurrentBatchConfig,D=0,se=null,Z=null,ae=0,Ie=0,zn=Jt(0),te=0,oi=null,vn=0,Zs=0,Gl=0,zr=null,_e=null,ql=0,rr=1/0,rt=null,Rs=!1,Va=null,Bt=null,Bi=!1,At=null,Ps=0,Br=0,Ha=null,ts=-1,ns=0;function ge(){return D&6?J():ts!==-1?ts:ts=J()}function Wt(e){return e.mode&1?D&2&&ae!==0?ae&-ae:_y.transition!==null?(ns===0&&(ns=vh()),ns):(e=M,e!==0||(e=window.event,e=e===void 0?16:Th(e.type)),e):1}function He(e,t,n,r){if(50<Br)throw Br=0,Ha=null,Error(E(185));fi(e,n,r),(!(D&2)||e!==se)&&(e===se&&(!(D&2)&&(Zs|=n),te===4&&It(e,ae)),be(e,r),n===1&&D===0&&!(t.mode&1)&&(rr=J()+500,Qs&&Zt()))}function be(e,t){var n=e.callbackNode;_m(e,t);var r=hs(e,e===se?ae:0);if(r===0)n!==null&&Mu(n),e.callbackNode=null,e.callbackPriority=0;else if(t=r&-r,e.callbackPriority!==t){if(n!=null&&Mu(n),t===1)e.tag===0?wy(Pc.bind(null,e)):Vh(Pc.bind(null,e)),gy(function(){!(D&6)&&Zt()}),n=null;else{switch(wh(r)){case 1:n=wl;break;case 4:n=mh;break;case 16:n=ds;break;case 536870912:n=yh;break;default:n=ds}n=$f(n,Uf.bind(null,e))}e.callbackPriority=t,e.callbackNode=n}}function Uf(e,t){if(ts=-1,ns=0,D&6)throw Error(E(327));var n=e.callbackNode;if(qn()&&e.callbackNode!==n)return null;var r=hs(e,e===se?ae:0);if(r===0)return null;if(r&30||r&e.expiredLanes||t)t=xs(e,r);else{t=r;var i=D;D|=2;var s=jf();(se!==e||ae!==t)&&(rt=null,rr=J()+500,hn(e,t));do try{zy();break}catch(a){Mf(e,a)}while(!0);Ll(),Is.current=s,D=i,Z!==null?t=0:(se=null,ae=0,t=te)}if(t!==0){if(t===2&&(i=va(e),i!==0&&(r=i,t=Ga(e,i))),t===1)throw n=oi,hn(e,0),It(e,r),be(e,J()),n;if(t===6)It(e,r);else{if(i=e.current.alternate,!(r&30)&&!jy(i)&&(t=xs(e,r),t===2&&(s=va(e),s!==0&&(r=s,t=Ga(e,s))),t===1))throw n=oi,hn(e,0),It(e,r),be(e,J()),n;switch(e.finishedWork=i,e.finishedLanes=r,t){case 0:case 1:throw Error(E(345));case 2:on(e,_e,rt);break;case 3:if(It(e,r),(r&130023424)===r&&(t=ql+500-J(),10<t)){if(hs(e,0)!==0)break;if(i=e.suspendedLanes,(i&r)!==r){ge(),e.pingedLanes|=e.suspendedLanes&i;break}e.timeoutHandle=Ca(on.bind(null,e,_e,rt),t);break}on(e,_e,rt);break;case 4:if(It(e,r),(r&4194240)===r)break;for(t=e.eventTimes,i=-1;0<r;){var o=31-Ve(r);s=1<<o,o=t[o],o>i&&(i=o),r&=~s}if(r=i,r=J()-r,r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*My(r/1960))-r,10<r){e.timeoutHandle=Ca(on.bind(null,e,_e,rt),r);break}on(e,_e,rt);break;case 5:on(e,_e,rt);break;default:throw Error(E(329))}}}return be(e,J()),e.callbackNode===n?Uf.bind(null,e):null}function Ga(e,t){var n=zr;return e.current.memoizedState.isDehydrated&&(hn(e,t).flags|=256),e=xs(e,t),e!==2&&(t=_e,_e=n,t!==null&&qa(t)),e}function qa(e){_e===null?_e=e:_e.push.apply(_e,e)}function jy(e){for(var t=e;;){if(t.flags&16384){var n=t.updateQueue;if(n!==null&&(n=n.stores,n!==null))for(var r=0;r<n.length;r++){var i=n[r],s=i.getSnapshot;i=i.value;try{if(!Ge(s(),i))return!1}catch{return!1}}}if(n=t.child,t.subtreeFlags&16384&&n!==null)n.return=t,t=n;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 It(e,t){for(t&=~Gl,t&=~Zs,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0<t;){var n=31-Ve(t),r=1<<n;e[n]=-1,t&=~r}}function Pc(e){if(D&6)throw Error(E(327));qn();var t=hs(e,0);if(!(t&1))return be(e,J()),null;var n=xs(e,t);if(e.tag!==0&&n===2){var r=va(e);r!==0&&(t=r,n=Ga(e,r))}if(n===1)throw n=oi,hn(e,0),It(e,t),be(e,J()),n;if(n===6)throw Error(E(345));return e.finishedWork=e.current.alternate,e.finishedLanes=t,on(e,_e,rt),be(e,J()),null}function Kl(e,t){var n=D;D|=1;try{return e(t)}finally{D=n,D===0&&(rr=J()+500,Qs&&Zt())}}function wn(e){At!==null&&At.tag===0&&!(D&6)&&qn();var t=D;D|=1;var n=Me.transition,r=M;try{if(Me.transition=null,M=1,e)return e()}finally{M=r,Me.transition=n,D=t,!(D&6)&&Zt()}}function Ql(){Ie=zn.current,W(zn)}function hn(e,t){e.finishedWork=null,e.finishedLanes=0;var n=e.timeoutHandle;if(n!==-1&&(e.timeoutHandle=-1,py(n)),Z!==null)for(n=Z.return;n!==null;){var r=n;switch(Pl(r),r.tag){case 1:r=r.type.childContextTypes,r!=null&&ys();break;case 3:tr(),W(Se),W(he),jl();break;case 5:Ml(r);break;case 4:tr();break;case 13:W(H);break;case 19:W(H);break;case 10:Nl(r.type._context);break;case 22:case 23:Ql()}n=n.return}if(se=e,Z=e=$t(e.current,null),ae=Ie=t,te=0,oi=null,Gl=Zs=vn=0,_e=zr=null,cn!==null){for(t=0;t<cn.length;t++)if(n=cn[t],r=n.interleaved,r!==null){n.interleaved=null;var i=r.next,s=n.pending;if(s!==null){var o=s.next;s.next=i,r.next=o}n.pending=r}cn=null}return e}function Mf(e,t){do{var n=Z;try{if(Ll(),Ji.current=Cs,Ts){for(var r=G.memoizedState;r!==null;){var i=r.queue;i!==null&&(i.pending=null),r=r.next}Ts=!1}if(yn=0,ie=ee=G=null,jr=!1,ri=0,Hl.current=null,n===null||n.return===null){te=1,oi=t,Z=null;break}e:{var s=e,o=n.return,a=n,l=t;if(t=ae,a.flags|=32768,l!==null&&typeof l=="object"&&typeof l.then=="function"){var u=l,h=a,c=h.tag;if(!(h.mode&1)&&(c===0||c===11||c===15)){var g=h.alternate;g?(h.updateQueue=g.updateQueue,h.memoizedState=g.memoizedState,h.lanes=g.lanes):(h.updateQueue=null,h.memoizedState=null)}var v=mc(o);if(v!==null){v.flags&=-257,yc(v,o,a,s,t),v.mode&1&&gc(s,u,t),t=v,l=u;var y=t.updateQueue;if(y===null){var _=new Set;_.add(l),t.updateQueue=_}else y.add(l);break e}else{if(!(t&1)){gc(s,u,t),Yl();break e}l=Error(E(426))}}else if(V&&a.mode&1){var k=mc(o);if(k!==null){!(k.flags&65536)&&(k.flags|=256),yc(k,o,a,s,t),xl(nr(l,a));break e}}s=l=nr(l,a),te!==4&&(te=2),zr===null?zr=[s]:zr.push(s),s=o;do{switch(s.tag){case 3:s.flags|=65536,t&=-t,s.lanes|=t;var p=_f(s,l,t);uc(s,p);break e;case 1:a=l;var d=s.type,f=s.stateNode;if(!(s.flags&128)&&(typeof d.getDerivedStateFromError=="function"||f!==null&&typeof f.componentDidCatch=="function"&&(Bt===null||!Bt.has(f)))){s.flags|=65536,t&=-t,s.lanes|=t;var m=kf(s,a,t);uc(s,m);break e}}s=s.return}while(s!==null)}zf(n)}catch(b){t=b,Z===n&&n!==null&&(Z=n=n.return);continue}break}while(!0)}function jf(){var e=Is.current;return Is.current=Cs,e===null?Cs:e}function Yl(){(te===0||te===3||te===2)&&(te=4),se===null||!(vn&268435455)&&!(Zs&268435455)||It(se,ae)}function xs(e,t){var n=D;D|=2;var r=jf();(se!==e||ae!==t)&&(rt=null,hn(e,t));do try{Fy();break}catch(i){Mf(e,i)}while(!0);if(Ll(),D=n,Is.current=r,Z!==null)throw Error(E(261));return se=null,ae=0,te}function Fy(){for(;Z!==null;)Ff(Z)}function zy(){for(;Z!==null&&!dm();)Ff(Z)}function Ff(e){var t=Wf(e.alternate,e,Ie);e.memoizedProps=e.pendingProps,t===null?zf(e):Z=t,Hl.current=null}function zf(e){var t=e;do{var n=t.alternate;if(e=t.return,t.flags&32768){if(n=Ny(n,t),n!==null){n.flags&=32767,Z=n;return}if(e!==null)e.flags|=32768,e.subtreeFlags=0,e.deletions=null;else{te=6,Z=null;return}}else if(n=Ly(n,t,Ie),n!==null){Z=n;return}if(t=t.sibling,t!==null){Z=t;return}Z=t=e}while(t!==null);te===0&&(te=5)}function on(e,t,n){var r=M,i=Me.transition;try{Me.transition=null,M=1,By(e,t,n,r)}finally{Me.transition=i,M=r}return null}function By(e,t,n,r){do qn();while(At!==null);if(D&6)throw Error(E(327));n=e.finishedWork;var i=e.finishedLanes;if(n===null)return null;if(e.finishedWork=null,e.finishedLanes=0,n===e.current)throw Error(E(177));e.callbackNode=null,e.callbackPriority=0;var s=n.lanes|n.childLanes;if(km(e,s),e===se&&(Z=se=null,ae=0),!(n.subtreeFlags&2064)&&!(n.flags&2064)||Bi||(Bi=!0,$f(ds,function(){return qn(),null})),s=(n.flags&15990)!==0,n.subtreeFlags&15990||s){s=Me.transition,Me.transition=null;var o=M;M=1;var a=D;D|=4,Hl.current=null,Dy(e,n),Af(n,e),ay(ba),fs=!!Ea,ba=Ea=null,e.current=n,Uy(n),hm(),D=a,M=o,Me.transition=s}else e.current=n;if(Bi&&(Bi=!1,At=e,Ps=i),s=e.pendingLanes,s===0&&(Bt=null),gm(n.stateNode),be(e,J()),t!==null)for(r=e.onRecoverableError,n=0;n<t.length;n++)i=t[n],r(i.value,{componentStack:i.stack,digest:i.digest});if(Rs)throw Rs=!1,e=Va,Va=null,e;return Ps&1&&e.tag!==0&&qn(),s=e.pendingLanes,s&1?e===Ha?Br++:(Br=0,Ha=e):Br=0,Zt(),null}function qn(){if(At!==null){var e=wh(Ps),t=Me.transition,n=M;try{if(Me.transition=null,M=16>e?16:e,At===null)var r=!1;else{if(e=At,At=null,Ps=0,D&6)throw Error(E(331));var i=D;for(D|=4,I=e.current;I!==null;){var s=I,o=s.child;if(I.flags&16){var a=s.deletions;if(a!==null){for(var l=0;l<a.length;l++){var u=a[l];for(I=u;I!==null;){var h=I;switch(h.tag){case 0:case 11:case 15:Fr(8,h,s)}var c=h.child;if(c!==null)c.return=h,I=c;else for(;I!==null;){h=I;var g=h.sibling,v=h.return;if(Of(h),h===u){I=null;break}if(g!==null){g.return=v,I=g;break}I=v}}}var y=s.alternate;if(y!==null){var _=y.child;if(_!==null){y.child=null;do{var k=_.sibling;_.sibling=null,_=k}while(_!==null)}}I=s}}if(s.subtreeFlags&2064&&o!==null)o.return=s,I=o;else e:for(;I!==null;){if(s=I,s.flags&2048)switch(s.tag){case 0:case 11:case 15:Fr(9,s,s.return)}var p=s.sibling;if(p!==null){p.return=s.return,I=p;break e}I=s.return}}var d=e.current;for(I=d;I!==null;){o=I;var f=o.child;if(o.subtreeFlags&2064&&f!==null)f.return=o,I=f;else e:for(o=d;I!==null;){if(a=I,a.flags&2048)try{switch(a.tag){case 0:case 11:case 15:Js(9,a)}}catch(b){Y(a,a.return,b)}if(a===o){I=null;break e}var m=a.sibling;if(m!==null){m.return=a.return,I=m;break e}I=a.return}}if(D=i,Zt(),Je&&typeof Je.onPostCommitFiberRoot=="function")try{Je.onPostCommitFiberRoot(Vs,e)}catch{}r=!0}return r}finally{M=n,Me.transition=t}}return!1}function xc(e,t,n){t=nr(n,t),t=_f(e,t,1),e=zt(e,t,1),t=ge(),e!==null&&(fi(e,1,t),be(e,t))}function Y(e,t,n){if(e.tag===3)xc(e,e,n);else for(;t!==null;){if(t.tag===3){xc(t,e,n);break}else if(t.tag===1){var r=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof r.componentDidCatch=="function"&&(Bt===null||!Bt.has(r))){e=nr(n,e),e=kf(t,e,1),t=zt(t,e,1),e=ge(),t!==null&&(fi(t,1,e),be(t,e));break}}t=t.return}}function Wy(e,t,n){var r=e.pingCache;r!==null&&r.delete(t),t=ge(),e.pingedLanes|=e.suspendedLanes&n,se===e&&(ae&n)===n&&(te===4||te===3&&(ae&130023424)===ae&&500>J()-ql?hn(e,0):Gl|=n),be(e,t)}function Bf(e,t){t===0&&(e.mode&1?(t=Oi,Oi<<=1,!(Oi&130023424)&&(Oi=4194304)):t=1);var n=ge();e=gt(e,t),e!==null&&(fi(e,t,n),be(e,n))}function $y(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),Bf(e,n)}function Vy(e,t){var n=0;switch(e.tag){case 13:var r=e.stateNode,i=e.memoizedState;i!==null&&(n=i.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(E(314))}r!==null&&r.delete(t),Bf(e,n)}var Wf;Wf=function(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps||Se.current)ke=!0;else{if(!(e.lanes&n)&&!(t.flags&128))return ke=!1,Oy(e,t,n);ke=!!(e.flags&131072)}else ke=!1,V&&t.flags&1048576&&Hh(t,_s,t.index);switch(t.lanes=0,t.tag){case 2:var r=t.type;es(e,t),e=t.pendingProps;var i=Jn(t,he.current);Gn(t,n),i=zl(null,t,r,e,i,n);var s=Bl();return t.flags|=1,typeof i=="object"&&i!==null&&typeof i.render=="function"&&i.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,Ee(r)?(s=!0,vs(t)):s=!1,t.memoizedState=i.state!==null&&i.state!==void 0?i.state:null,Dl(t),i.updater=Xs,t.stateNode=i,i._reactInternals=t,Na(t,r,e,n),t=Ua(null,t,r,!0,s,n)):(t.tag=0,V&&s&&Rl(t),pe(null,t,i,n),t=t.child),t;case 16:r=t.elementType;e:{switch(es(e,t),e=t.pendingProps,i=r._init,r=i(r._payload),t.type=r,i=t.tag=Gy(r),e=Be(r,e),i){case 0:t=Da(null,t,r,e,n);break e;case 1:t=_c(null,t,r,e,n);break e;case 11:t=vc(null,t,r,e,n);break e;case 14:t=wc(null,t,r,Be(r.type,e),n);break e}throw Error(E(306,r,""))}return t;case 0:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:Be(r,i),Da(e,t,r,i,n);case 1:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:Be(r,i),_c(e,t,r,i,n);case 3:e:{if(Tf(t),e===null)throw Error(E(387));r=t.pendingProps,s=t.memoizedState,i=s.element,Xh(e,t),Es(t,r,null,n);var o=t.memoizedState;if(r=o.element,s.isDehydrated)if(s={element:r,isDehydrated:!1,cache:o.cache,pendingSuspenseBoundaries:o.pendingSuspenseBoundaries,transitions:o.transitions},t.updateQueue.baseState=s,t.memoizedState=s,t.flags&256){i=nr(Error(E(423)),t),t=kc(e,t,r,n,i);break e}
vendor: 10,004 bytes, line 41
41else if(r!==i){i=nr(Error(E(424)),t),t=kc(e,t,r,n,i);break e}else for(Re=Ft(t.stateNode.containerInfo.firstChild),xe=t,V=!0,$e=null,n=Qh(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(Zn(),r===i){t=mt(e,t,n);break e}pe(e,t,r,n)}t=t.child}return t;case 5:return Jh(t),e===null&&xa(t),r=t.type,i=t.pendingProps,s=e!==null?e.memoizedProps:null,o=i.children,Ta(r,i)?o=null:s!==null&&Ta(r,s)&&(t.flags|=32),bf(e,t),pe(e,t,o,n),t.child;case 6:return e===null&&xa(t),null;case 13:return Cf(e,t,n);case 4:return Ul(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=er(t,null,r,n):pe(e,t,r,n),t.child;case 11:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:Be(r,i),vc(e,t,r,i,n);case 7:return pe(e,t,t.pendingProps,n),t.child;case 8:return pe(e,t,t.pendingProps.children,n),t.child;case 12:return pe(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(r=t.type._context,i=t.pendingProps,s=t.memoizedProps,o=i.value,F(ks,r._currentValue),r._currentValue=o,s!==null)if(Ge(s.value,o)){if(s.children===i.children&&!Se.current){t=mt(e,t,n);break e}}else for(s=t.child,s!==null&&(s.return=t);s!==null;){var a=s.dependencies;if(a!==null){o=s.child;for(var l=a.firstContext;l!==null;){if(l.context===r){if(s.tag===1){l=dt(-1,n&-n),l.tag=2;var u=s.updateQueue;if(u!==null){u=u.shared;var h=u.pending;h===null?l.next=l:(l.next=h.next,h.next=l),u.pending=l}}s.lanes|=n,l=s.alternate,l!==null&&(l.lanes|=n),Oa(s.return,n,t),a.lanes|=n;break}l=l.next}}else if(s.tag===10)o=s.type===t.type?null:s.child;else if(s.tag===18){if(o=s.return,o===null)throw Error(E(341));o.lanes|=n,a=o.alternate,a!==null&&(a.lanes|=n),Oa(o,n,t),o=s.sibling}else o=s.child;if(o!==null)o.return=s;else for(o=s;o!==null;){if(o===t){o=null;break}if(s=o.sibling,s!==null){s.return=o.return,o=s;break}o=o.return}s=o}pe(e,t,i.children,n),t=t.child}return t;case 9:return i=t.type,r=t.pendingProps.children,Gn(t,n),i=je(i),r=r(i),t.flags|=1,pe(e,t,r,n),t.child;case 14:return r=t.type,i=Be(r,t.pendingProps),i=Be(r.type,i),wc(e,t,r,i,n);case 15:return Sf(e,t,t.type,t.pendingProps,n);case 17:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:Be(r,i),es(e,t),t.tag=1,Ee(r)?(e=!0,vs(t)):e=!1,Gn(t,n),wf(t,r,i),Na(t,r,i,n),Ua(null,t,r,!0,e,n);case 19:return If(e,t,n);case 22:return Ef(e,t,n)}throw Error(E(156,t.tag))};function $f(e,t){return gh(e,t)}function Hy(e,t,n,r){this.tag=e,this.key=n,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=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Ue(e,t,n,r){return new Hy(e,t,n,r)}function Xl(e){return e=e.prototype,!(!e||!e.isReactComponent)}function Gy(e){if(typeof e=="function")return Xl(e)?1:0;if(e!=null){if(e=e.$$typeof,e===ml)return 11;if(e===yl)return 14}return 2}function $t(e,t){var n=e.alternate;return n===null?(n=Ue(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=e.flags&14680064,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function rs(e,t,n,r,i,s){var o=2;if(r=e,typeof e=="function")Xl(e)&&(o=1);else if(typeof e=="string")o=5;else e:switch(e){case xn:return fn(n.children,i,s,t);case gl:o=8,i|=8;break;case ra:return e=Ue(12,n,t,i|2),e.elementType=ra,e.lanes=s,e;case ia:return e=Ue(13,n,t,i),e.elementType=ia,e.lanes=s,e;case sa:return e=Ue(19,n,t,i),e.elementType=sa,e.lanes=s,e;case Jd:return eo(n,i,s,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case Yd:o=10;break e;case Xd:o=9;break e;case ml:o=11;break e;case yl:o=14;break e;case bt:o=16,r=null;break e}throw Error(E(130,e==null?e:typeof e,""))}return t=Ue(o,n,t,i),t.elementType=e,t.type=r,t.lanes=s,t}function fn(e,t,n,r){return e=Ue(7,e,r,t),e.lanes=n,e}function eo(e,t,n,r){return e=Ue(22,e,r,t),e.elementType=Jd,e.lanes=n,e.stateNode={isHidden:!1},e}function Wo(e,t,n){return e=Ue(6,e,null,t),e.lanes=n,e}function $o(e,t,n){return t=Ue(4,e.children!==null?e.children:[],e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function qy(e,t,n,r,i){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=Eo(0),this.expirationTimes=Eo(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Eo(0),this.identifierPrefix=r,this.onRecoverableError=i,this.mutableSourceEagerHydrationData=null}function Jl(e,t,n,r,i,s,o,a,l){return e=new qy(e,t,n,a,l),t===1?(t=1,s===!0&&(t|=8)):t=0,s=Ue(3,null,null,t),e.current=s,s.stateNode=e,s.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},Dl(s),e}function Ky(e,t,n){var r=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:Pn,key:r==null?null:""+r,children:e,containerInfo:t,implementation:n}}function Vf(e){if(!e)return Yt;e=e._reactInternals;e:{if(bn(e)!==e||e.tag!==1)throw Error(E(170));var t=e;do{switch(t.tag){case 3:t=t.stateNode.context;break e;case 1:if(Ee(t.type)){t=t.stateNode.__reactInternalMemoizedMergedChildContext;break e}}t=t.return}while(t!==null);throw Error(E(171))}if(e.tag===1){var n=e.type;if(Ee(n))return $h(e,n,t)}return t}function Hf(e,t,n,r,i,s,o,a,l){return e=Jl(n,r,!0,e,i,s,o,a,l),e.context=Vf(null),n=e.current,r=ge(),i=Wt(n),s=dt(r,i),s.callback=t??null,zt(n,s,i),e.current.lanes=i,fi(e,i,r),be(e,r),e}function to(e,t,n,r){var i=t.current,s=ge(),o=Wt(i);return n=Vf(n),t.context===null?t.context=n:t.pendingContext=n,t=dt(s,o),t.payload={element:e},r=r===void 0?null:r,r!==null&&(t.callback=r),e=zt(i,t,o),e!==null&&(He(e,i,o,s),Xi(e,i,o)),o}function Os(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 Oc(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var n=e.retryLane;e.retryLane=n!==0&&n<t?n:t}}function Zl(e,t){Oc(e,t),(e=e.alternate)&&Oc(e,t)}function Qy(){return null}var Gf=typeof reportError=="function"?reportError:function(e){console.error(e)};function eu(e){this._internalRoot=e}no.prototype.render=eu.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(E(409));to(e,t,null,null)};no.prototype.unmount=eu.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var t=e.containerInfo;wn(function(){to(null,e,null,null)}),t[pt]=null}};function no(e){this._internalRoot=e}no.prototype.unstable_scheduleHydration=function(e){if(e){var t=Sh();e={blockedOn:null,target:e,priority:t};for(var n=0;n<Ct.length&&t!==0&&t<Ct[n].priority;n++);Ct.splice(n,0,e),n===0&&bh(e)}};function tu(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function ro(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11&&(e.nodeType!==8||e.nodeValue!==" react-mount-point-unstable "))}function Lc(){}function Yy(e,t,n,r,i){if(i){if(typeof r=="function"){var s=r;r=function(){var u=Os(o);s.call(u)}}var o=Hf(t,r,e,0,null,!1,!1,"",Lc);return e._reactRootContainer=o,e[pt]=o.current,Jr(e.nodeType===8?e.parentNode:e),wn(),o}for(;i=e.lastChild;)e.removeChild(i);if(typeof r=="function"){var a=r;r=function(){var u=Os(l);a.call(u)}}var l=Jl(e,0,!1,null,null,!1,!1,"",Lc);return e._reactRootContainer=l,e[pt]=l.current,Jr(e.nodeType===8?e.parentNode:e),wn(function(){to(t,l,n,r)}),l}function io(e,t,n,r,i){var s=n._reactRootContainer;if(s){var o=s;if(typeof i=="function"){var a=i;i=function(){var l=Os(o);a.call(l)}}to(t,o,e,i)}else o=Yy(n,t,e,i,r);return Os(o)}_h=function(e){switch(e.tag){case 3:var t=e.stateNode;if(t.current.memoizedState.isDehydrated){var n=Pr(t.pendingLanes);n!==0&&(_l(t,n|1),be(t,J()),!(D&6)&&(rr=J()+500,Zt()))}break;case 13:wn(function(){var r=gt(e,1);if(r!==null){var i=ge();He(r,e,1,i)}}),Zl(e,1)}};kl=function(e){if(e.tag===13){var t=gt(e,134217728);if(t!==null){var n=ge();He(t,e,134217728,n)}Zl(e,134217728)}};kh=function(e){if(e.tag===13){var t=Wt(e),n=gt(e,t);if(n!==null){var r=ge();He(n,e,t,r)}Zl(e,t)}};Sh=function(){return M};Eh=function(e,t){var n=M;try{return M=e,t()}finally{M=n}};ga=function(e,t,n){switch(t){case"input":if(la(e,n),t=n.name,n.type==="radio"&&t!=null){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll("input[name="+JSON.stringify(""+t)+'][type="radio"]'),t=0;t<n.length;t++){var r=n[t];if(r!==e&&r.form===e.form){var i=Ks(r);if(!i)throw Error(E(90));eh(r),la(r,i)}}}break;case"textarea":nh(e,n);break;case"select":t=n.value,t!=null&&Wn(e,!!n.multiple,t,!1)}};uh=Kl;ch=wn;var Xy={usingClientEntryPoint:!1,Events:[gi,An,Ks,ah,lh,Kl]},Tr={findFiberByHostInstance:un,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},Jy={bundleType:Tr.bundleType,version:Tr.version,rendererPackageName:Tr.rendererPackageName,rendererConfig:Tr.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:wt.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return e=fh(e),e===null?null:e.stateNode},findFiberByHostInstance:Tr.findFiberByHostInstance||Qy,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.3.1-next-f1338f8080-20240426"};
41if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var Wi=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!Wi.isDisabled&&Wi.supportsFiber)try{Vs=Wi.inject(Jy),Je=Wi}catch{}}Le.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=Xy;Le.createPortal=function(e,t){var n=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!tu(t))throw Error(E(200));return Ky(e,t,null,n)};Le.createRoot=function(e,t){if(!tu(e))throw Error(E(299));var n=!1,r="",i=Gf;return t!=null&&(t.unstable_strictMode===!0&&(n=!0),t.identifierPrefix!==void 0&&(r=t.identifierPrefix),t.onRecoverableError!==void 0&&(i=t.onRecoverableError)),t=Jl(e,1,!1,null,null,n,!1,r,i),e[pt]=t.current,Jr(e.nodeType===8?e.parentNode:e),new eu(t)};Le.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(E(188)):(e=Object.keys(e).join(","),Error(E(268,e)));return e=fh(t),e=e===null?null:e.stateNode,e};Le.flushSync=function(e){return wn(e)};Le.hydrate=function(e,t,n){if(!ro(t))throw Error(E(200));return io(null,e,t,!0,n)};Le.hydrateRoot=function(e,t,n){if(!tu(e))throw Error(E(405));var r=n!=null&&n.hydratedSources||null,i=!1,s="",o=Gf;if(n!=null&&(n.unstable_strictMode===!0&&(i=!0),n.identifierPrefix!==void 0&&(s=n.identifierPrefix),n.onRecoverableError!==void 0&&(o=n.onRecoverableError)),t=Hf(t,null,e,1,n??null,i,!1,s,o),e[pt]=t.current,Jr(e),r)for(e=0;e<r.length;e++)n=r[e],i=n._getVersion,i=i(n._source),t.mutableSourceEagerHydrationData==null?t.mutableSourceEagerHydrationData=[n,i]:t.mutableSourceEagerHydrationData.push(n,i);return new no(t)};Le.render=function(e,t,n){if(!ro(t))throw Error(E(200));return io(null,e,t,!1,n)};Le.unmountComponentAtNode=function(e){if(!ro(e))throw Error(E(40));return e._reactRootContainer?(wn(function(){io(null,null,e,!1,function(){e._reactRootContainer=null,e[pt]=null})}),!0):!1};Le.unstable_batchedUpdates=Kl;Le.unstable_renderSubtreeIntoContainer=function(e,t,n,r){if(!ro(n))throw Error(E(200));if(e==null||e._reactInternals===void 0)throw Error(E(38));return io(e,t,n,!1,r)};Le.version="18.3.1-next-f1338f8080-20240426";function qf(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(qf)}catch(e){console.error(e)}}qf(),Gd.exports=Le;var Kf=Gd.exports,Nc=Kf;ta.createRoot=Nc.createRoot,ta.hydrateRoot=Nc.hydrateRoot;const Zy="modulepreload",ev=function(e){return"/"+e},Ac={},ne=function(t,n,r){let i=Promise.resolve();if(n&&n.length>0){document.getElementsByTagName("link");const o=document.querySelector("meta[property=csp-nonce]"),a=(o==null?void 0:o.nonce)||(o==null?void 0:o.getAttribute("nonce"));i=Promise.allSettled(n.map(l=>{if(l=ev(l),l in Ac)return;Ac[l]=!0;const u=l.endsWith(".css"),h=u?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${l}"]${h}`))return;const c=document.createElement("link");if(c.rel=u?"stylesheet":Zy,u||(c.as="script"),c.crossOrigin="",c.href=l,a&&c.setAttribute("nonce",a),document.head.appendChild(c),u)return new Promise((g,v)=>{c.addEventListener("load",g),c.addEventListener("error",()=>v(new Error(`Unable to preload CSS for ${l}`)))})}))}function s(o){const a=new Event("vite:preloadError",{cancelable:!0});if(a.payload=o,window.dispatchEvent(a),!a.defaultPrevented)throw o}return i.then(o=>{for(const a of o||[])a.status==="rejected"&&s(a.reason);return t().catch(s)})};/**
42 * @remix-run/router v1.23.2
43 *
44 * Copyright (c) Remix Software Inc.
45 *
46 * This source code is licensed under the MIT license found in the
47 * LICENSE.md file in the root directory of this source tree.
48 *
49 * @license MIT
50 */function ai(){return ai=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},ai.apply(this,arguments)}var Dt;(function(e){e.Pop="POP",e.Push="PUSH",e.Replace="REPLACE"})(Dt||(Dt={}));const Dc="popstate";function tv(e){e===void 0&&(e={});function t(r,i){let{pathname:s,search:o,hash:a}=r.location;return Ka("",{pathname:s,search:o,hash:a},i.state&&i.state.usr||null,i.state&&i.state.key||"default")}function n(r,i){return typeof i=="string"?i:Ls(i)}return rv(t,n,null,e)}function q(e,t){if(e===!1||e===null||typeof e>"u")throw new Error(t)}function nu(e,t){if(!e){typeof console<"u"&&console.warn(t);try{throw new Error(t)}catch{}}}function nv(){return Math.random().toString(36).substr(2,8)}function Uc(e,t){return{usr:e.state,key:e.key,idx:t}}function Ka(e,t,n,r){return n===void 0&&(n=null),ai({pathname:typeof e=="string"?e:e.pathname,search:"",hash:""},typeof t=="string"?cr(t):t,{state:n,key:t&&t.key||r||nv()})}function Ls(e){let{pathname:t="/",search:n="",hash:r=""}=e;return n&&n!=="?"&&(t+=n.charAt(0)==="?"?n:"?"+n),r&&r!=="#"&&(t+=r.charAt(0)==="#"?r:"#"+r),t}function cr(e){let t={};if(e){let n=e.indexOf("#");n>=0&&(t.hash=e.substr(n),e=e.substr(0,n));let r=e.indexOf("?");r>=0&&(t.search=e.substr(r),e=e.substr(0,r)),e&&(t.pathname=e)}return t}function rv(e,t,n,r){r===void 0&&(r={});let{window:i=document.defaultView,v5Compat:s=!1}
vendor: 8,474 bytes, lines 50-59
50=r,o=i.history,a=Dt.Pop,l=null,u=h();u==null&&(u=0,o.replaceState(ai({},o.state,{idx:u}),""));function h(){return(o.state||{idx:null}).idx}function c(){a=Dt.Pop;let k=h(),p=k==null?null:k-u;u=k,l&&l({action:a,location:_.location,delta:p})}function g(k,p){a=Dt.Push;let d=Ka(_.location,k,p);u=h()+1;let f=Uc(d,u),m=_.createHref(d);try{o.pushState(f,"",m)}catch(b){if(b instanceof DOMException&&b.name==="DataCloneError")throw b;i.location.assign(m)}s&&l&&l({action:a,location:_.location,delta:1})}function v(k,p){a=Dt.Replace;let d=Ka(_.location,k,p);u=h();let f=Uc(d,u),m=_.createHref(d);o.replaceState(f,"",m),s&&l&&l({action:a,location:_.location,delta:0})}function y(k){let p=i.location.origin!=="null"?i.location.origin:i.location.href,d=typeof k=="string"?k:Ls(k);return d=d.replace(/ $/,"%20"),q(p,"No window.location.(origin|href) available to create URL for href: "+d),new URL(d,p)}let _={get action(){return a},get location(){return e(i,o)},listen(k){if(l)throw new Error("A history only accepts one active listener");return i.addEventListener(Dc,c),l=k,()=>{i.removeEventListener(Dc,c),l=null}},createHref(k){return t(i,k)},createURL:y,encodeLocation(k){let p=y(k);return{pathname:p.pathname,search:p.search,hash:p.hash}},push:g,replace:v,go(k){return o.go(k)}};return _}var Mc;(function(e){e.data="data",e.deferred="deferred",e.redirect="redirect",e.error="error"})(Mc||(Mc={}));function iv(e,t,n){return n===void 0&&(n="/"),sv(e,t,n)}function sv(e,t,n,r){let i=typeof t=="string"?cr(t):t,s=ir(i.pathname||"/",n);if(s==null)return null;let o=Qf(e);ov(o);let a=null;for(let l=0;a==null&&l<o.length;++l){let u=yv(s);a=gv(o[l],u)}return a}function Qf(e,t,n,r){t===void 0&&(t=[]),n===void 0&&(n=[]),r===void 0&&(r="");let i=(s,o,a)=>{let l={relativePath:a===void 0?s.path||"":a,caseSensitive:s.caseSensitive===!0,childrenIndex:o,route:s};l.relativePath.startsWith("/")&&(q(l.relativePath.startsWith(r),'Absolute route path "'+l.relativePath+'" nested under path '+('"'+r+'" is not valid. An absolute child route path ')+"must start with the combined path of all its parent routes."),l.relativePath=l.relativePath.slice(r.length));let u=Vt([r,l.relativePath]),h=n.concat(l);s.children&&s.children.length>0&&(q(s.index!==!0,"Index routes must not have child routes. Please remove "+('all child routes from route path "'+u+'".')),Qf(s.children,t,h,u)),!(s.path==null&&!s.index)&&t.push({path:u,score:fv(u,s.index),routesMeta:h})};return e.forEach((s,o)=>{var a;if(s.path===""||!((a=s.path)!=null&&a.includes("?")))i(s,o);else for(let l of Yf(s.path))i(s,o,l)}),t}function Yf(e){let t=e.split("/");if(t.length===0)return[];let[n,...r]=t,i=n.endsWith("?"),s=n.replace(/\?$/,"");if(r.length===0)return i?[s,""]:[s];let o=Yf(r.join("/")),a=[];return a.push(...o.map(l=>l===""?s:[s,l].join("/"))),i&&a.push(...o),a.map(l=>e.startsWith("/")&&l===""?"/":l)}function ov(e){e.sort((t,n)=>t.score!==n.score?n.score-t.score:pv(t.routesMeta.map(r=>r.childrenIndex),n.routesMeta.map(r=>r.childrenIndex)))}const av=/^:[\w-]+$/,lv=3,uv=2,cv=1,dv=10,hv=-2,jc=e=>e==="*";function fv(e,t){let n=e.split("/"),r=n.length;return n.some(jc)&&(r+=hv),t&&(r+=uv),n.filter(i=>!jc(i)).reduce((i,s)=>i+(av.test(s)?lv:s===""?cv:dv),r)}function pv(e,t){return e.length===t.length&&e.slice(0,-1).every((r,i)=>r===t[i])?e[e.length-1]-t[t.length-1]:0}function gv(e,t,n){let{routesMeta:r}=e,i={},s="/",o=[];for(let a=0;a<r.length;++a){let l=r[a],u=a===r.length-1,h=s==="/"?t:t.slice(s.length)||"/",c=Qa({path:l.relativePath,caseSensitive:l.caseSensitive,end:u},h),g=l.route;if(!c)return null;Object.assign(i,c.params),o.push({params:i,pathname:Vt([s,c.pathname]),pathnameBase:Sv(Vt([s,c.pathnameBase])),route:g}),c.pathnameBase!=="/"&&(s=Vt([s,c.pathnameBase]))}return o}function Qa(e,t){typeof e=="string"&&(e={path:e,caseSensitive:!1,end:!0});let[n,r]=mv(e.path,e.caseSensitive,e.end),i=t.match(n);if(!i)return null;let s=i[0],o=s.replace(/(.)\/+$/,"$1"),a=i.slice(1);return{params:r.reduce((u,h,c)=>{let{paramName:g,isOptional:v}=h;if(g==="*"){let _=a[c]||"";o=s.slice(0,s.length-_.length).replace(/(.)\/+$/,"$1")}const y=a[c];return v&&!y?u[g]=void 0:u[g]=(y||"").replace(/%2F/g,"/"),u},{}),pathname:s,pathnameBase:o,pattern:e}}function mv(e,t,n){t===void 0&&(t=!1),n===void 0&&(n=!0),nu(e==="*"||!e.endsWith("*")||e.endsWith("/*"),'Route path "'+e+'" will be treated as if it were '+('"'+e.replace(/\*$/,"/*")+'" because the `*` character must ')+"always follow a `/` in the pattern. To get rid of this warning, "+('please change the route path to "'+e.replace(/\*$/,"/*")+'".'));let r=[],i="^"+e.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(o,a,l)=>(r.push({paramName:a,isOptional:l!=null}),l?"/?([^\\/]+)?":"/([^\\/]+)"));return e.endsWith("*")?(r.push({paramName:"*"}),i+=e==="*"||e==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):n?i+="\\/*$":e!==""&&e!=="/"&&(i+="(?:(?=\\/|$))"),[new RegExp(i,t?void 0:"i"),r]}function yv(e){try{return e.split("/").map(t=>decodeURIComponent(t).replace(/\//g,"%2F")).join("/")}catch(t){return nu(!1,'The URL path "'+e+'" could not be decoded because it is is a malformed URL segment. This is probably due to a bad percent '+("encoding ("+t+").")),e}}function ir(e,t){if(t==="/")return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let n=t.endsWith("/")?t.length-1:t.length,r=e.charAt(n);return r&&r!=="/"?null:e.slice(n)||"/"}const vv=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,wv=e=>vv.test(e);function _v(e,t){t===void 0&&(t="/");let{pathname:n,search:r="",hash:i=""}=typeof e=="string"?cr(e):e,s;if(n)if(wv(n))s=n;else{if(n.includes("//")){let o=n;n=n.replace(/\/\/+/g,"/"),nu(!1,"Pathnames cannot have embedded double slashes - normalizing "+(o+" -> "+n))}n.startsWith("/")?s=Fc(n.substring(1),"/"):s=Fc(n,t)}else s=t;return{pathname:s,search:Ev(r),hash:bv(i)}}function Fc(e,t){let n=t.replace(/\/+$/,"").split("/");return e.split("/").forEach(i=>{i===".."?n.length>1&&n.pop():i!=="."&&n.push(i)}),n.length>1?n.join("/"):"/"}function Vo(e,t,n,r){return"Cannot include a '"+e+"' character in a manually specified "+("`to."+t+"` field ["+JSON.stringify(r)+"].  Please separate it out to the ")+("`to."+n+"` field. Alternatively you may provide the full path as ")+'a string in <Link to="..."> and the router will parse it for you.'}function kv(e){return e.filter((t,n)=>n===0||t.route.path&&t.route.path.length>0)}function ru(e,t){let n=kv(e);return t?n.map((r,i)=>i===n.length-1?r.pathname:r.pathnameBase):n.map(r=>r.pathnameBase)}function iu(e,t,n,r){r===void 0&&(r=!1);let i;typeof e=="string"?i=cr(e):(i=ai({},e),q(!i.pathname||!i.pathname.includes("?"),Vo("?","pathname","search",i)),q(!i.pathname||!i.pathname.includes("#"),Vo("#","pathname","hash",i)),q(!i.search||!i.search.includes("#"),Vo("#","search","hash",i)));let s=e===""||i.pathname==="",o=s?"/":i.pathname,a;if(o==null)a=n;else{let c=t.length-1;if(!r&&o.startsWith("..")){let g=o.split("/");for(;g[0]==="..";)g.shift(),c-=1;i.pathname=g.join("/")}a=c>=0?t[c]:"/"}let l=_v(i,a),u=o&&o!=="/"&&o.endsWith("/"),h=(s||o===".")&&n.endsWith("/");return!l.pathname.endsWith("/")&&(u||h)&&(l.pathname+="/"),l}const Vt=e=>e.join("/").replace(/\/\/+/g,"/"),Sv=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),Ev=e=>!e||e==="?"?"":e.startsWith("?")?e:"?"+e,bv=e=>!e||e==="#"?"":e.startsWith("#")?e:"#"+e;function Tv(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.internal=="boolean"&&"data"in e}const Xf=["post","put","patch","delete"];new Set(Xf);const Cv=["get",...Xf];new Set(Cv);/**
51 * React Router v6.30.3
52 *
53 * Copyright (c) Remix Software Inc.
54 *
55 * This source code is licensed under the MIT license found in the
56 * LICENSE.md file in the root directory of this source tree.
57 *
58 * @license MIT
59 */function li(){return li=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},li.apply(this,arguments)}const so=w.createContext(null),Jf=w.createContext(null),_t=w.createContext(null),oo=w.createContext(null),nt=w.createContext({outlet:null,matches:[],isDataRoute:!1}),Zf=w.createContext(null);function Iv(e,t){let{relative:n}=t===void 0?{}:t;dr()||q(!1);let{basename:r,navigator:i}=w.useContext(_t),{hash:s,pathname:o,search:a}=lo(e,{relative:n}),l=o;return r!=="/"&&(l=o==="/"?r:Vt([r,o])),i.createHref({pathname:l,search:a,hash:s})}function dr(){return w.useContext(oo)!=null}
vendor: 4,976 bytes, line 59
59function en(){return dr()||q(!1),w.useContext(oo).location}function ep(e){w.useContext(_t).static||w.useLayoutEffect(e)}function ao(){let{isDataRoute:e}=w.useContext(nt);return e?Wv():Rv()}function Rv(){dr()||q(!1);let e=w.useContext(so),{basename:t,future:n,navigator:r}=w.useContext(_t),{matches:i}=w.useContext(nt),{pathname:s}=en(),o=JSON.stringify(ru(i,n.v7_relativeSplatPath)),a=w.useRef(!1);return ep(()=>{a.current=!0}),w.useCallback(function(u,h){if(h===void 0&&(h={}),!a.current)return;if(typeof u=="number"){r.go(u);return}let c=iu(u,JSON.parse(o),s,h.relative==="path");e==null&&t!=="/"&&(c.pathname=c.pathname==="/"?t:Vt([t,c.pathname])),(h.replace?r.replace:r.push)(c,h.state,h)},[t,r,o,s,e])}const Pv=w.createContext(null);function xv(e){let t=w.useContext(nt).outlet;return t&&w.createElement(Pv.Provider,{value:e},t)}function cb(){let{matches:e}=w.useContext(nt),t=e[e.length-1];return t?t.params:{}}function lo(e,t){let{relative:n}=t===void 0?{}:t,{future:r}=w.useContext(_t),{matches:i}=w.useContext(nt),{pathname:s}=en(),o=JSON.stringify(ru(i,r.v7_relativeSplatPath));return w.useMemo(()=>iu(e,JSON.parse(o),s,n==="path"),[e,o,s,n])}function Ov(e,t){return Lv(e,t)}function Lv(e,t,n,r){dr()||q(!1);let{navigator:i}=w.useContext(_t),{matches:s}=w.useContext(nt),o=s[s.length-1],a=o?o.params:{};o&&o.pathname;let l=o?o.pathnameBase:"/";o&&o.route;let u=en(),h;if(t){var c;let k=typeof t=="string"?cr(t):t;l==="/"||(c=k.pathname)!=null&&c.startsWith(l)||q(!1),h=k}else h=u;let g=h.pathname||"/",v=g;if(l!=="/"){let k=l.replace(/^\//,"").split("/");v="/"+g.replace(/^\//,"").split("/").slice(k.length).join("/")}let y=iv(e,{pathname:v}),_=Mv(y&&y.map(k=>Object.assign({},k,{params:Object.assign({},a,k.params),pathname:Vt([l,i.encodeLocation?i.encodeLocation(k.pathname).pathname:k.pathname]),pathnameBase:k.pathnameBase==="/"?l:Vt([l,i.encodeLocation?i.encodeLocation(k.pathnameBase).pathname:k.pathnameBase])})),s,n,r);return t&&_?w.createElement(oo.Provider,{value:{location:li({pathname:"/",search:"",hash:"",state:null,key:"default"},h),navigationType:Dt.Pop}},_):_}function Nv(){let e=Bv(),t=Tv(e)?e.status+" "+e.statusText:e instanceof Error?e.message:JSON.stringify(e),n=e instanceof Error?e.stack:null,i={padding:"0.5rem",backgroundColor:"rgba(200,200,200, 0.5)"};return w.createElement(w.Fragment,null,w.createElement("h2",null,"Unexpected Application Error!"),w.createElement("h3",{style:{fontStyle:"italic"}},t),n?w.createElement("pre",{style:i},n):null,null)}const Av=w.createElement(Nv,null);class Dv extends w.Component{constructor(t){super(t),this.state={location:t.location,revalidation:t.revalidation,error:t.error}}static getDerivedStateFromError(t){return{error:t}}static getDerivedStateFromProps(t,n){return n.location!==t.location||n.revalidation!=="idle"&&t.revalidation==="idle"?{error:t.error,location:t.location,revalidation:t.revalidation}:{error:t.error!==void 0?t.error:n.error,location:n.location,revalidation:t.revalidation||n.revalidation}}componentDidCatch(t,n){console.error("React Router caught the following error during render",t,n)}render(){return this.state.error!==void 0?w.createElement(nt.Provider,{value:this.props.routeContext},w.createElement(Zf.Provider,{value:this.state.error,children:this.props.component})):this.props.children}}function Uv(e){let{routeContext:t,match:n,children:r}=e,i=w.useContext(so);return i&&i.static&&i.staticContext&&(n.route.errorElement||n.route.ErrorBoundary)&&(i.staticContext._deepestRenderedBoundaryId=n.route.id),w.createElement(nt.Provider,{value:t},r)}function Mv(e,t,n,r){var i;if(t===void 0&&(t=[]),n===void 0&&(n=null),r===void 0&&(r=null),e==null){var s;if(!n)return null;if(n.errors)e=n.matches;else if((s=r)!=null&&s.v7_partialHydration&&t.length===0&&!n.initialized&&n.matches.length>0)e=n.matches;else return null}let o=e,a=(i=n)==null?void 0:i.errors;if(a!=null){let h=o.findIndex(c=>c.route.id&&(a==null?void 0:a[c.route.id])!==void 0);h>=0||q(!1),o=o.slice(0,Math.min(o.length,h+1))}let l=!1,u=-1;if(n&&r&&r.v7_partialHydration)for(let h=0;h<o.length;h++){let c=o[h];if((c.route.HydrateFallback||c.route.hydrateFallbackElement)&&(u=h),c.route.id){let{loaderData:g,errors:v}=n,y=c.route.loader&&g[c.route.id]===void 0&&(!v||v[c.route.id]===void 0);if(c.route.lazy||y){l=!0,u>=0?o=o.slice(0,u+1):o=[o[0]];break}}}return o.reduceRight((h,c,g)=>{let v,y=!1,_=null,k=null;n&&(v=a&&c.route.id?a[c.route.id]:void 0,_=c.route.errorElement||Av,l&&(u<0&&g===0?($v("route-fallback"),y=!0,k=null):u===g&&(y=!0,k=c.route.hydrateFallbackElement||null)));let p=t.concat(o.slice(0,g+1)),d=()=>{let f;return v?f=_:y?f=k:c.route.Component?f=w.createElement(c.route.Component,null):c.route.element?f=c.route.element:f=h,w.createElement(Uv,{match:c,routeContext:{outlet:h,matches:p,isDataRoute:n!=null},children:f})};return n&&(c.route.ErrorBoundary||c.route.errorElement||g===0)?w.createElement(Dv,{location:n.location,revalidation:n.revalidation,component:_,error:v,children:d(),routeC
59ontext:{outlet:null,matches:p,isDataRoute:!0}}):d()},null)}var tp=function(e){return e.UseBlocker="useBlocker",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e}(tp||{}),np=function(e){return e.UseBlocker="useBlocker",e.UseLoaderData="useLoaderData",e.UseActionData="useActionData",e.UseRouteError="useRouteError",e.UseNavigation="useNavigation",e.UseRouteLoaderData="useRouteLoaderData",e.UseMatches="useMatches",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e.UseRouteId="useRouteId",e}(np||{});function jv(e){let t=w.useContext(so);return t||q(!1),t}function Fv(e){let t=w.useContext(Jf);return t||q(!1),t}function zv(e){let t=w.useContext(nt);return t||q(!1),t}function rp(e){let t=zv(),n=t.matches[t.matches.length-1];return n.route.id||q(!1),n.route.id}function Bv(){var e;let t=w.useContext(Zf),n=Fv(),r=rp();return t!==void 0?t:(e=n.errors)==null?void 0:e[r]}function Wv(){let{router:e}=jv(tp.UseNavigateStable),t=rp(np.UseNavigateStable),n=w.useRef(!1);return ep(()=>{n.current=!0}),w.useCallback(function(i,s){s===void 0&&(s={}),n.current&&(typeof i=="number"?e.navigate(i):e.navigate(i,li({fromRouteId:t},s)))},[e,t])}const zc={};function $v(e,t,n){zc[e]||(zc[e]=!0)}function Vv(e,t){e==null||e.v7_startTransition,e==null||e.v7_relativeSplatPath}function ip(e){let{to:t,replace:n,state:r,relative:i}=e;dr()||q(!1);let{future:s,static:o}=w.useContext(_t),{matches:a}=w.useContext(nt),{pathname:l}=en(),u=ao(),h=iu(t,ru(a,s.v7_relativeSplatPath),l,i==="path"),c=JSON.stringify(h);return w.useEffect(()=>u(JSON.parse(c),{replace:n,state:r,relative:i}),[u,c,i,n,r]),null}function sp(e){return xv(e.context)}function B(e){q(!1)}function Hv(e){let{basename:t="/",children:n=null,location:r,navigationType:i=Dt.Pop,navigator:s,static:o=!1,future:a}=e;dr()&&q(!1);let l=t.replace(/^\/*/,"/"),u=w.useMemo(()=>({basename:l,navigator:s,static:o,future:li({v7_relativeSplatPath:!1},a)}),[l,a,s,o]);typeof r=="string"&&(r=cr(r));let{pathname:h="/",search:c="",hash:g="",state:v=null,key:y="default"}=r,_=w.useMemo(()=>{let k=ir(h,l);return k==null?null:{location:{pathname:k,search:c,hash:g,state:v,key:y},navigationType:i}},[l,h,c,g,v,y,i]);return _==null?null:w.createElement(_t.Provider,{value:u},w.createElement(oo.Provider,{children:n,value:_}))}function Gv(e){let{children:t,location:n}=e;return Ov(Ya(t),n)}new Promise(()=>{});function Ya(e,t){t===void 0&&(t=[]);let n=[];return w.Children.forEach(e,(r,i)=>{if(!w.isValidElement(r))return;let s=[...t,i];if(r.type===w.Fragment){n.push.apply(n,Ya(r.props.children,s));return}r.type!==B&&q(!1),!r.props.index||!r.props.children||q(!1);let o={id:r.props.id||s.join("-"),caseSensitive:r.props.caseSensitive,element:r.props.element,Component:r.props.Component,index:r.props.index,path:r.props.path,loader:r.props.loader,action:r.props.action,errorElement:r.props.errorElement,ErrorBoundary:r.props.ErrorBoundary,hasErrorBoundary:r.props.ErrorBoundary!=null||r.props.errorElement!=null,shouldRevalidate:r.props.shouldRevalidate,handle:r.props.handle,lazy:r.props.lazy};r.props.children&&(o.children=Ya(r.props.children,s)),n.push(o)}),n}/**
60 * React Router DOM v6.30.3
61 *
62 * Copyright (c) Remix Software Inc.
63 *
64 * This source code is licensed under the MIT license found in the
65 * LICENSE.md file in the root directory of this source tree.
66 *
67 * @license MIT
68 */function Ns(){return Ns=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Ns.apply(this,arguments)}function op(e,t){if(e==null)return{};var n={},r=Object.keys(e),i,s;for(s=0;s<r.length;s++)i=r[s],!(t.indexOf(i)>=0)&&(n[i]=e[i]);return n}function qv(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function Kv(e,t){return e.button===0&&(!t||t==="_self")&&!qv(e)}function Xa(e){return e===void 0&&(e=""),new URLSearchParams(typeof e=="string"||Array.isArray(e)||e instanceof URLSearchParams?e:Object.keys(e).reduce((t,n)=>{let r=e[n];return t.concat(Array.isArray(r)?r.map(i=>[n,i]):[[n,r]])},[]))}function Qv(e,t){let n=Xa(e);return t&&t.forEach((r,i)=>
68{n.has(i)||t.getAll(i).forEach(s=>{n.append(i,s)})}),n}const Yv=["onClick","relative","reloadDocument","replace","state","target","to","preventScrollReset","viewTransition"],Xv=["aria-current","caseSensitive","className","end","style","to","viewTransition","children"],Jv="6";try{window.__reactRouterVersion=Jv}catch{}const Zv=w.createContext({isTransitioning:!1}),ew="startTransition",Bc=Wg[ew];function tw(e){let{basename:t,children:n,future:r,window:i}=e,s=w.useRef();s.current==null&&(s.current=tv({window:i,v5Compat:!0}));let o=s.current,[a,l]=w.useState({action:o.action,location:o.location}),{v7_startTransition:u}=r||{},h=w.useCallback(c=>{u&&Bc?Bc(()=>l(c)):l(c)},[l,u]);return w.useLayoutEffect(()=>o.listen(h),[o,h]),w.useEffect(()=>Vv(r),[r]),w.createElement(Hv,{basename:t,children:n,location:a.location,navigationType:a.action,navigator:o,future:r})}const nw=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",rw=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,ap=w.forwardRef(function(t,n){let{onClick:r,relative:i,reloadDocument:s,replace:o,state:a,target:l,to:u,preventScrollReset:h,viewTransition:c}=t,g=op(t,Yv),{basename:v}=w.useContext(_t),y,_=!1;if(typeof u=="string"&&rw.test(u)&&(y=u,nw))try{let f=new URL(window.location.href),m=u.startsWith("//")?new URL(f.protocol+u):new URL(u),b=ir(m.pathname,v);m.origin===f.origin&&b!=null?u=b+m.search+m.hash:_=!0}catch{}let k=Iv(u,{relative:i}),p=ow(u,{replace:o,state:a,target:l,preventScrollReset:h,relative:i,viewTransition:c});function d(f){r&&r(f),f.defaultPrevented||p(f)}return w.createElement("a",Ns({},g,{href:y||k,onClick:_||s?r:d,ref:n,target:l}))}),iw=w.forwardRef(function(t,n){let{"aria-current":r="page",caseSensitive:i=!1,className:s="",end:o=!1,style:a,to:l,viewTransition:u,children:h}=t,c=op(t,Xv),g=lo(l,{relative:c.relative}),v=en(),y=w.useContext(Jf),{navigator:_,basename:k}=w.useContext(_t),p=y!=null&&aw(g)&&u===!0,d=_.encodeLocation?_.encodeLocation(g).pathname:g.pathname,f=v.pathname,m=y&&y.navigation&&y.navigation.location?y.navigation.location.pathname:null;i||(f=f.toLowerCase(),m=m?m.toLowerCase():null,d=d.toLowerCase()),m&&k&&(m=ir(m,k)||m);const b=d!=="/"&&d.endsWith("/")?d.length-1:d.length;let T=f===d||!o&&f.startsWith(d)&&f.charAt(b)==="/",C=m!=null&&(m===d||!o&&m.startsWith(d)&&m.charAt(d.length)==="/"),R={isActive:T,isPending:C,isTransitioning:p},U=T?r:void 0,O;typeof s=="function"?O=s(R):O=[s,T?"active":null,C?"pending":null,p?"transitioning":null].filter(Boolean).join(" ");let Ce=typeof a=="function"?a(R):a;return w.createElement(ap,Ns({},c,{"aria-current":U,className:O,ref:n,style:Ce,to:l,viewTransition:u}),typeof h=="function"?h(R):h)});var Ja;(function(e){e.UseScrollRestoration="useScrollRestoration",e.UseSubmit="useSubmit",e.UseSubmitFetcher="useSubmitFetcher",e.UseFetcher="useFetcher",e.useViewTransitionState="useViewTransitionState"})(Ja||(Ja={}));var Wc;(function(e){e.UseFetcher="useFetcher",e.UseFetchers="useFetchers",e.UseScrollRestoration="useScrollRestoration"})(Wc||(Wc={}));function sw(e){let t=w.useContext(so);return t||q(!1),t}function ow(e,t){let{target:n,replace:r,state:i,preventScrollReset:s,relative:o,viewTransition:a}=t===void 0?{}:t,l=ao(),u=en(),h=lo(e,{relative:o});return w.useCallback(c=>{if(Kv(c,n)){c.preventDefault();let g=r!==void 0?r:Ls(u)===Ls(h);l(e,{replace:g,state:i,preventScrollReset:s,relative:o,viewTransition:a})}},[u,l,h,r,i,n,e,s,o,a])}function db(e){let t=w.useRef(Xa(e)),n=w.useRef(!1),r=en(),i=w.useMemo(()=>Qv(r.search,n.current?null:t.current),[r.search]),s=ao(),o=w.useCallback((a,l)=>{const u=Xa(typeof a=="function"?a(i):a);n.current=!0,s("?"+u,l)},[s,i]);return[i,o]}function aw(e,t){t===void 0&&(t={});let n=w.useContext(Zv);n==null&&q(!1);let{basename:r}=sw(Ja.useViewTransitionState),i=lo(e,{relative:t.relative});if(!n.isTransitioning)return!1;let s=ir(n.currentLocation.pathname,r)||n.currentLocation.pathname,o=ir(n.nextLocation.pathname,r)||n.nextLocation.pathname;return Qa(i.pathname,o)!=null||Qa(i.pathname,s)!=null}var $c={};/**
69 * @license
70 * Copyright 2017 Google LLC
71 *
72 * Licensed under the Apache License, Version 2.0 (the "License");
73 * you may not use this file except in compliance with the License.
74 * You may obtain a copy of the License at
75 *
76 *   http://www.apache.org/licenses/LICENSE-2.0
77 *
78 * Unless required by applicable law or agreed to in writing, software
79 * distributed under the License is distributed on an "AS IS" BASIS,
80 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
81 * See the License for the specific language governing permissions and
82 * limitations under the License.
83 */const lp=function(e){const t=[];let n=0;for(let r=0;r<e.length;r++){let i=e.charCodeAt(r);i<128?t[n++]=i:i<2048?(t[n++]=i>>6|192,t[n++]=i&63|128):(i&64512)===55296&&r+1<e.length&&(e.charCodeAt(r+1)&64512)===56320?(i=65536+((i&1023)<<10)+(e.charCodeAt(++r)&1023),t[n++]=i>>18|240,t[n++]=i>>12&63|128,t[n++]=i>>6&63|128,t[n++]=i&63|128):(t[n++]=i>>12|224,t[n++]=i>>6&63|128,t[n++]=i&63|128)}return t},lw=function(e){const t=[];let n=0,r=0;for(;n<e.length;){const i=e[n++];if(i<128)t[r++]=String.fromCharCode(i);else if(i>191&&i<224){const s=e[n++];t[r++]=String.fromCharCode((i&31)<<6|s&63)}else if(i>239&&i<365){const s=e[n++],o=e[n++],a=e[n++],l=((i&7)<<18|(s&63)<<12|(o&63)<<6|a&63)-65536;t[r++]=String.fromCharCode(55296+(l>>10)),t[r++]=String.fromCharCode(56320+(l&1023))}else{const s=e[n++],o=e[n++];t[r++]=String.fromCharCode((i&15)<<12|(s&63)<<6|o&63)}}return t.join("")},up={byteToCharMap_:null,charToByteMap_:null,byteToCharMapWebSafe_:null,charToByteMapWebSafe_:null,ENCODED_VALS_BASE:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",get ENCODED_VALS(){return this.ENCODED_VALS_BASE+"+/="},get ENCODED_VALS_WEBSAFE(){return this.ENCODED_VALS_BASE+"-_."},HAS_NATIVE_SUPPORT:typeof atob=="function",encodeByteArray(e,t){if(!Array.isArray(e))throw Error("encodeByteArray takes an array as a parameter");this.init_();const n=t?this.byteToCharMapWebSafe_:this.byteToCharMap_,r=[];for(let i=0;i<e.length;i+=3){const s=e[i],o=i+1<e.length,a=o?e[i+1]:0,l=i+2<e.length,u=l?e[i+2]:0,h=s>>2,c=(s&3)<<4|a>>4;let g=(a&15)<<2|u>>6,v=u&63;l||(v=64,o||(g=64)),r.push(n[h],n[c],n[g],n[v])}return r.join("")},encodeString(e,t){return this.HAS_NATIVE_SUPPORT&&!t?btoa(e):this.encodeByteArray(lp(e),t)},decodeString(e,t){return this.HAS_NATIVE_SUPPORT&&!t?atob(e):lw(this.decodeStringToByteArray(e,t))},decodeStringToByteArray(e,t){this.init_();const n=t?this.charToByteMapWebSafe_:this.charToByteMap_,r=[];for(let i=0;i<e.length;){const s=n[e.charAt(i++)],a=i<e.length?n[e.charAt(i)]:0;++i;const u=i<e.length?n[e.charAt(i)]:64;++i;const c=i<e.length?n[e.charAt(i)]:64;if(++i,s==null||a==null||u==null||c==null)throw new uw;const g=s<<2|a>>4;if(r.push(g),u!==64){const v=a<<4&240|u>>2;if(r.push(v),c!==64){const y=u<<6&192|c;r.push(y)}}}return r},init_(){if(!this.byteToCharMap_){this.byteToCharMap_={},this.charToByteMap_={},this.byteToCharMapWebSafe_={},this.charToByteMapWebSafe_={};for(let e=0;e<this.ENCODED_VALS.length;e++)this.byteToCharMap_[e]=this.ENCODED_VALS.charAt(e),this.charToByteMap_[this.byteToCharMap_[e]]=e,this.byteToCharMapWebSafe_[e]=this.ENCODED_VALS_WEBSAFE.charAt(e),this.charToByteMapWebSafe_[this.byteToCharMapWebSafe_[e]]=e,e>=this.ENCODED_VALS_BASE.length&&(this.charToByteMap_[this.ENCODED_VALS_WEBSAFE.charAt(e)]=e,this.charToByteMapWebSafe_[this.ENCODED_VALS.charAt(e)]=e)}}};class uw extends Error{constructor(){super(...arguments),this.name="DecodeBase64StringError"}}const cw=function(e){const t=lp(e);return up.encodeByteArray(t,!0)},As=function(e){return cw(e).replace(/\./g,"")},cp=function(e){try{return up.decodeString(e,!0)}catch(t){console.error("base64Decode failed: ",t)}return null};/**
84 * @license
85 * Copyright 2022 Google LLC
86 *
87 * Licensed under the Apache License, Version 2.0 (the "License");
88 * you may not use this file except in compliance with the License.
89 * You may obtain a copy of the License at
90 *
91 *   http://www.apache.org/licenses/LICENSE-2.0
92 *
93 * Unless required by applicable law or agreed to in writing, software
94 * distributed under the License is distributed on an "AS IS" BASIS,
95 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
96 * See the License for the specific language governing permissions and
97 * limitations under the License.
98 */function dw(){if(typeof self<"u")return self;if(typeof window<"u")return window;if(typeof global<"u")return global;throw new Error("Unable to locate global object.")}/**
99 * @license
100 * Copyright 2022 Google LLC
101 *
102 * Licensed under the Apache License, Version 2.0 (the "License");
103 * you may not use this file except in compliance with the License.
104 * You may obtain a copy of the License at
105 *
106 *   http://www.apache.org/licenses/LICENSE-2.0
107 *
108 * Unless required by applicable law or agreed to in writing, software
109 * distributed under the License is distributed on an "AS IS" BASIS,
110 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
111 * See the License for the specific language governing permissions and
112 * limitations under the License.
113 */const hw=()=>dw().__FIREBASE_DEFAULTS__,fw=()=>{if(typeof process>"u"||typeof $c>"u")return;const e=$c.__FIREBASE_DEFAULTS__;if(e)return JSON.parse(e)},pw=()=>{if(typeof document>"u")return;let e;try{e=document.cookie.match(/__FIREBASE_DEFAULTS__=([^;]+)/)}catch{return}const t=e&&cp(e[1]);return t&&JSON.parse(t)},su=()=>{try{return hw()||fw()||pw()}catch(e){console.info(`Unable to get __FIREBASE_DEFAULTS__ due to: ${e}`);return}},dp=e=>{var t,n;return(n=(t=su())===null||t===void 0?void 0:t.emulatorHosts)===null||n===void 0?void 0:n[e]},gw=e=>{const t=dp(e);if(!t)return;const n=t.lastIndexOf(":");if(n<=0||n+1===t.length)throw new Error(`Invalid host ${t} with no separate hostname and port!`);const r=parseInt(t.substring(n+1),10);return t[0]==="["?[t.substring(1,n-1),r]:[t.substring(0,n),r]},hp=()=>{var e;return(e=su())===null||e===void 0?void 0:e.config},fp=e=>{var t;return(t=su())===null||t===void 0?void 0:t[`_${e}`]};/**
114 * @license
115 * Copyright 2017 Google LLC
116 *
117 * Licensed under the Apache License, Version 2.0 (the "License");
118 * you may not use this file except in compliance with the License.
119 * You may obtain a copy of the License at
120 *
121 *   http://www.apache.org/licenses/LICENSE-2.0
122 *
123 * Unless required by applicable law or agreed to in writing, software
124 * distributed under the License is distributed on an "AS IS" BASIS,
125 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
126 * See the License for the specific language governing permissions and
127 * limitations under the License.
128 */class mw{constructor(){this.reject=()=>{},this.resolve=()=>{},this.promise=new Promise((t,n)=>{this.resolve=t,this.reject=n})}wrapCallback(t){return(n,r)=>{n?this.reject(n):this.resolve(r),typeof t=="function"&&(this.promise.catch(()=>{}),t.length===1?t(n):t(n,r))}}}/**
129 * @license
130 * Copyright 2021 Google LLC
131 *
132 * Licensed under the Apache License, Version 2.0 (the "License");
133 * you may not use this file except in compliance with the License.
134 * You may obtain a copy of the License at
135 *
136 *   http://www.apache.org/licenses/LICENSE-2.0
137 *
138 * Unless required by applicable law or agreed to in writing, software
139 * distributed under the License is distributed on an "AS IS" BASIS,
140 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
141 * See the License for the specific language governing permissions and
142 * limitations under the License.
143 */function yw(e,t){if(e.uid)throw new Error('The "uid" field is no longer supported by mockUserToken. Please use "sub" instead for Firebase Auth User ID.');const n={alg:"none",type:"JWT"},r=t||"demo-project",i=e.iat||0,s=e.sub||e.user_id;if(!s)throw new Error("mockUserToken must contain 'sub' or 'user_id' field!");const o=Object.assign({iss:`https://securetoken.google.com/${r}`,aud:r,iat:i,exp:i+3600,auth_time:i,sub:s,user_id:s,firebase:{sign_in_provider:"custom",identities:{}}},e);return[As(JSON.stringify(n)),As(JSON.stringify(o)),""].join(".")}/**
144 * @license
145 * Copyright 2017 Google LLC
146 *
147 * Licensed under the Apache License, Version 2.0 (the "License");
148 * you may not use this file except in compliance with the License.
149 * You may obtain a copy of the License at
150 *
151 *   http://www.apache.org/licenses/LICENSE-2.0
152 *
153 * Unless required by applicable law or agreed to in writing, software
154 * distributed under the License is distributed on an "AS IS" BASIS,
155 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
156 * See the License for the specific language governing permissions and
157 * limitations under the License.
158 */function me(){return typeof navigator<"u"&&typeof navigator.userAgent=="string"?navigator.userAgent:""}function vw(){return typeof window<"u"&&!!(window.cordova||window.phonegap||window.PhoneGap)&&/ios|iphone|ipod|ipad|android|blackberry|iemobile/i.test(me())}function ww(){return typeof navigator<"u"&&navigator.userAgent==="Cloudflare-Workers"}function _w(){const e=typeof chrome=="object"?chrome.runtime:typeof browser=="object"?browser.runtime:void 0;return typeof e=="object"&&e.id!==void 0}function kw(){return typeof navigator=="object"&&navigator.product==="ReactNative"}function Sw(){const e=me();return e.indexOf("MSIE ")>=0||e.indexOf("Trident/")>=0}function Ew(){try{return typeof indexedDB=="object"}catch{return!1}}function bw(){return new Promise((e,t)=>
158{try{let n=!0;const r="validate-browser-context-for-indexeddb-analytics-module",i=self.indexedDB.open(r);i.onsuccess=()=>{i.result.close(),n||self.indexedDB.deleteDatabase(r),e(!0)},i.onupgradeneeded=()=>{n=!1},i.onerror=()=>{var s;t(((s=i.error)===null||s===void 0?void 0:s.message)||"")}}catch(n){t(n)}})}/**
159 * @license
160 * Copyright 2017 Google LLC
161 *
162 * Licensed under the Apache License, Version 2.0 (the "License");
163 * you may not use this file except in compliance with the License.
164 * You may obtain a copy of the License at
165 *
166 *   http://www.apache.org/licenses/LICENSE-2.0
167 *
168 * Unless required by applicable law or agreed to in writing, software
169 * distributed under the License is distributed on an "AS IS" BASIS,
170 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
171 * See the License for the specific language governing permissions and
172 * limitations under the License.
173 */const Tw="FirebaseError";class kt extends Error{constructor(t,n,r){super(n),this.code=t,this.customData=r,this.name=Tw,Object.setPrototypeOf(this,kt.prototype),Error.captureStackTrace&&Error.captureStackTrace(this,yi.prototype.create)}}class yi{constructor(t,n,r){this.service=t,this.serviceName=n,this.errors=r}create(t,...n){const r=n[0]||{},i=`${this.service}/${t}`,s=this.errors[t],o=s?Cw(s,r):"Error",a=`${this.serviceName}: ${o} (${i}).`;return new kt(i,a,r)}}function Cw(e,t){return e.replace(Iw,(n,r)=>{const i=t[r];return i!=null?String(i):`<${r}?>`})}const Iw=/\{\$([^}]+)}/g;function Rw(e){for(const t in e)if(Object.prototype.hasOwnProperty.call(e,t))return!1;return!0}function Ds(e,t){if(e===t)return!0;const n=Object.keys(e),r=Object.keys(t);for(const i of n){if(!r.includes(i))return!1;const s=e[i],o=t[i];if(Vc(s)&&Vc(o)){if(!Ds(s,o))return!1}else if(s!==o)return!1}for(const i of r)if(!n.includes(i))return!1;return!0}function Vc(e){return e!==null&&typeof e=="object"}/**
174 * @license
175 * Copyright 2017 Google LLC
176 *
177 * Licensed under the Apache License, Version 2.0 (the "License");
178 * you may not use this file except in compliance with the License.
179 * You may obtain a copy of the License at
180 *
181 *   http://www.apache.org/licenses/LICENSE-2.0
182 *
183 * Unless required by applicable law or agreed to in writing, software
184 * distributed under the License is distributed on an "AS IS" BASIS,
185 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
186 * See the License for the specific language governing permissions and
187 * limitations under the License.
188 */function vi(e){const t=[];for(const[n,r]of Object.entries(e))Array.isArray(r)?r.forEach(i=>{t.push(encodeURIComponent(n)+"="+encodeURIComponent(i))}):t.push(encodeURIComponent(n)+"="+encodeURIComponent(r));return t.length?"&"+t.join("&"):""}function Or(e){const t={};return e.replace(/^\?/,"").split("&").forEach(r=>{if(r){const[i,s]=r.split("=");
188t[decodeURIComponent(i)]=decodeURIComponent(s)}}),t}function Lr(e){const t=e.indexOf("?");if(!t)return"";const n=e.indexOf("#",t);return e.substring(t,n>0?n:void 0)}function Pw(e,t){const n=new xw(e,t);return n.subscribe.bind(n)}class xw{constructor(t,n){this.observers=[],this.unsubscribes=[],this.observerCount=0,this.task=Promise.resolve(),this.finalized=!1,this.onNoObservers=n,this.task.then(()=>{t(this)}).catch(r=>{this.error(r)})}next(t){this.forEachObserver(n=>{n.next(t)})}error(t){this.forEachObserver(n=>{n.error(t)}),this.close(t)}complete(){this.forEachObserver(t=>{t.complete()}),this.close()}subscribe(t,n,r){let i;if(t===void 0&&n===void 0&&r===void 0)throw new Error("Missing Observer.");Ow(t,["next","error","complete"])?i=t:i={next:t,error:n,complete:r},i.next===void 0&&(i.next=Ho),i.error===void 0&&(i.error=Ho),i.complete===void 0&&(i.complete=Ho);const s=this.unsubscribeOne.bind(this,this.observers.length);return this.finalized&&this.task.then(()=>{try{this.finalError?i.error(this.finalError):i.complete()}catch{}}),this.observers.push(i),s}unsubscribeOne(t){this.observers===void 0||this.observers[t]===void 0||(delete this.observers[t],this.observerCount-=1,this.observerCount===0&&this.onNoObservers!==void 0&&this.onNoObservers(this))}forEachObserver(t){if(!this.finalized)for(let n=0;n<this.observers.length;n++)this.sendOne(n,t)}sendOne(t,n){this.task.then(()=>{if(this.observers!==void 0&&this.observers[t]!==void 0)try{n(this.observers[t])}catch(r){typeof console<"u"&&console.error&&console.error(r)}})}close(t){this.finalized||(this.finalized=!0,t!==void 0&&(this.finalError=t),this.task.then(()=>{this.observers=void 0,this.onNoObservers=void 0}))}}function Ow(e,t){if(typeof e!="object"||e===null)return!1;for(const n of t)if(n in e&&typeof e[n]=="function")return!0;return!1}function Ho(){}/**
189 * @license
190 * Copyright 2021 Google LLC
191 *
192 * Licensed under the Apache License, Version 2.0 (the "License");
193 * you may not use this file except in compliance with the License.
194 * You may obtain a copy of the License at
195 *
196 *   http://www.apache.org/licenses/LICENSE-2.0
197 *
198 * Unless required by applicable law or agreed to in writing, software
199 * distributed under the License is distributed on an "AS IS" BASIS,
200 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
201 * See the License for the specific language governing permissions and
202 * limitations under the License.
203 */function Te(e){return e&&e._delegate?e._delegate:e}class _n{constructor(t,n,r){this.name=t,this.instanceFactory=n,this.type=r,this.multipleInstances=!1,this.serviceProps={},this.instantiationMode="LAZY",this.onInstanceCreated=null}setInstantiationMode(t){return this.instantiationMode=t,this}setMultipleInstances(t){return this.multipleInstances=t,this}setServiceProps(t){return this.serviceProps=t,this}setInstanceCreatedCallback(t){return this.onInstanceCreated=t,this}}/**
204 * @license
205 * Copyright 2019 Google LLC
206 *
207 * Licensed under the Apache License, Version 2.0 (the "License");
208 * you may not use this file except in compliance with the License.
209 * You may obtain a copy of the License at
210 *
211 *   http://www.apache.org/licenses/LICENSE-2.0
212 *
213 * Unless required by applicable law or agreed to in writing, software
214 * distributed under the License is distributed on an "AS IS" BASIS,
215 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
216 * See the License for the specific language governing permissions and
217 * limitations under the License.
218 */const an="[DEFAULT]";/**
219 * @license
220 * Copyright 2019 Google LLC
221 *
222 * Licensed under the Apache License, Version 2.0 (the "License");
223 * you may not use this file except in compliance with the License.
224 * You may obtain a copy of the License at
225 *
226 *   http://www.apache.org/licenses/LICENSE-2.0
227 *
228 * Unless required by applicable law or agreed to in writing, software
229 * distributed under the License is distributed on an "AS IS" BASIS,
230 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
231 * See the License for the specific language governing permissions and
232 * limitations under the License.
233 */class Lw{constructor(t,n){this.name=t,this.container=n,this.component=null,this.instances=new Map,this.instancesDeferred=new Map,this.instancesOptions=new Map,this.onInitCallbacks=new Map}get(t){const n=this.normalizeInstanceIdentifier(t);if(!this.instancesDeferred.has(n)){const r=new mw;if(this.instancesDeferred.set(n,r),this.isInitialized(n)||this.shouldAutoInitialize())try{const i=this.getOrInitializeService({instanceIdentifier:n});i&&r.resolve(i)}catch{}}return this.instancesDeferred.get(n).promise}getImmediate(t){var n;const r=this.normalizeInstanceIdentifier(t==null?void 0:t.identifier),i=(n=t==null?void 0:t.optional)!==null&&n!==void 0?n:!1;if(this.isInitialized(r)||this.shouldAutoInitialize())try{return this.getOrInitializeService({instanceIdentifier:r})}catch(s){if(i)return null;throw s}else{if(i)return null;throw Error(`Service ${this.name} is not available`)}}getComponent(){return this.component}setComponent(t){if(t.name!==this.name)throw Error(`Mismatching Component ${t.name} for Provider ${this.name}.`);if(this.component)throw Error(`Component for ${this.name} has already been provided`);if(this.component=t,!!this.shouldAutoInitialize()){if(Aw(t))try{this.getOrInitializeService({instanceIdentifier:an})}catch{}for(const[n,r]of this.instancesDeferred.entries()){const i=this.normalizeInstanceIdentifier(n);try{const s=this.getOrInitializeService({instanceIdentifier:i});r.resolve(s)}catch{}}}}clearInstance(t=an){this.instancesDeferred.delete(t),this.instancesOptions.delete(t),this.instances.delete(t)}async delete(){const t=Array.from(this.instances.values());await Promise.all([...t.filter(n=>"INTERNAL"in n).map(n=>n.INTERNAL.delete()),...t.filter(n=>"_delete"in n).map(n=>n._delete())])}isComponentSet(){return this.component!=null}isInitialized(t=an){return this.instances.has(t)}getOptions(t=an){return this.instancesOptions.get(t)||{}}initialize(t={}){const{options:n={}}=t,r=this.normalizeInstanceIdentifier(t.instanceIdentifier);if(this.isInitialized(r))throw Error(`${this.name}(${r}) has already been initialized`);if(!this.isComponentSet())throw Error(`Component ${this.name} has not been registered yet`);const i=this.getOrInitializeService({instanceIdentifier:r,options:n});for(const[s,o]of this.instancesDeferred.entries()){const a=this.normalizeInstanceIdentifier(s);r===a&&o.resolve(i)}return i}onInit(t,n){var r;const i=this.normalizeInstanceIdentifier(n),s=(r=this.onInitCallbacks.get(i))!==null&&r!==void 0?r:new Set;s.add(t),this.onInitCallbacks.set(i,s);const o=this.instances.get(i);return o&&t(o,i),()=>{s.delete(t)}}invokeOnInitCallbacks(t,n){const r=this.onInitCallbacks.get(n);if(r)for(const i of r)try{i(t,n)}catch{}}getOrInitializeService({instanceIdentifier:t,options:n={}}){let r=this.instances.get(t);if(!r&&this.component&&(r=this.component.instanceFactory(this.container,{instanceIdentifier:Nw(t),options:n}),this.instances.set(t,r),this.instancesOptions.set(t,n),this.invokeOnInitCallbacks(r,t),this.component.onInstanceCreated))try{this.component.onInstanceCreated(this.container,t,r)}catch{}return r||null}normalizeInstanceIdentifier(t=an){return this.component?this.component.multipleInstances?t:an:t}shouldAutoInitialize(){return!!this.component&&this.component.instantiationMode!=="EXPLICIT"}}function Nw(e){return e===an?void 0:e}function Aw(e){return e.instantiationMode==="EAGER"}/**
234 * @license
235 * Copyright 2019 Google LLC
236 *
237 * Licensed under the Apache License, Version 2.0 (the "License");
238 * you may not use this file except in compliance with the License.
239 * You may obtain a copy of the License at
240 *
241 *   http://www.apache.org/licenses/LICENSE-2.0
242 *
243 * Unless required by applicable law or agreed to in writing, software
244 * distributed under the License is distributed on an "AS IS" BASIS,
245 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
246 * See the License for the specific language governing permissions and
247 * limitations under the License.
248 */class Dw{constructor(t){this.name=t,this.providers=new Map}addComponent(t){const n=this.getProvider(t.name);if(n.isComponentSet())throw new Error(`Component ${t.name} has already been registered with ${this.name}`);n.setComponent(t)}addOrOverwriteComponent(t){this.getProvider(t.name).isComponentSet()&&this.providers.delete(t.name),this.addComponent(t)}getProvider(t){if(this.providers.has(t))return this.providers.get(t);const n=new Lw(t,this);return this.providers.set(t,n),n}getProviders(){return Array.from(this.providers.values())}}/**
249 * @license
250 * Copyright 2017 Google LLC
251 *
252 * Licensed under the Apache License, Version 2.0 (the "License");
253 * you may not use this file except in compliance with the License.
254 * You may obtain a copy of the License at
255 *
256 *   http://www.apache.org/licenses/LICENSE-2.0
257 *
258 * Unless required by applicable law or agreed to in writing, software
259 * distributed under the License is distributed on an "AS IS" BASIS,
260 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
261 * See the License for the specific language governing permissions and
262 * limitations under the License.
263 */var j;(function(e){e[e.DEBUG=0]="DEBUG",e[e.VERBOSE=1]="VERBOSE",e[e.INFO=2]="INFO",e[e.WARN=3]="WARN",e[e.ERROR=4]="ERROR",e[e.SILENT=5]="SILENT"})(j||(j={}));const Uw={debug:j.DEBUG,verbose:j.VERBOSE,info:j.INFO,warn:j.WARN,error:j.ERROR,silent:j.SILENT},Mw=j.INFO,jw={[j.DEBUG]:"log",[j.VERBOSE]:"log",[j.INFO]:"info",[j.WARN]:"warn",[j.ERROR]:"error"},Fw=(e,t,...n)=>{if(t<e.logLevel)return;const r=new Date().toISOString(),i=jw[t];if(i)console[i](`[${r}]  ${e.name}:`,...n);else throw new Error(`Attempted to log a message with an invalid logType (value: ${t})`)};class pp{constructor(t){this.name=t,this._logLevel=Mw,this._logHandler=Fw,this._userLogHandler=null}get logLevel(){return this._logLevel}set logLevel(t){if(!(t in j))throw new TypeError(`Invalid value "${t}" assigned to \`logLevel\``);this._logLevel=t}setLogLevel(t){this._logLevel=typeof t=="string"?Uw[t]:t}get logHandler(){return this._logHandler}set logHandler(t){if(typeof t!="function")throw new TypeError("Value assigned to `logHandler` must be a function");this._logHandler=t}get userLogHandler(){return this._userLogHandler}set userLogHandler(t){this._userLogHandler=t}debug(...t){this._userLogHandler&&this._userLogHandler(this,j.DEBUG,...t),this._logHandler(this,j.DEBUG,...t)}log(...t){this._userLogHandler&&this._userLogHandler(this,j.VERBOSE,...t),this._logHandler(this,j.VERBOSE,...t)}info(...t){this._userLogHandler&&this._userLogHandler(this,j.INFO,...t),this._logHandler(this,j.INFO,...t)}warn(...t){this._userLogHandler&&this._userLogHandler(this,j.WARN,...t),this._logHandler(this,j.WARN,...t)}error(...t){this._userLogHandler&&this._userLogHandler(this,j.ERROR,...t),this._logHandler(this,j.ERROR,...t)}}const zw=(e,t)=>t.some(n=>e instanceof n);let Hc,Gc;function Bw(){return Hc||(Hc=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction])}function Ww(){return Gc||(Gc=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])}const gp=new WeakMap,Za=new WeakMap,mp=new WeakMap,Go=new WeakMap,ou=new WeakMap;function $w(e){const t=new Promise((n,r)=>{const i=()=>{e.removeEventListener("success",s),e.removeEventListener("error",o)},s=()=>{n(Ht(e.result)),i()},o=()=>{r(e.error),i()};e.addEventListener("success",s),e.addEventListener("error",o)});return t.then(n=>{n instanceof IDBCursor&&gp.set(n,e)}).catch(()=>{}),ou.set(t,e),t}function Vw(e){if(Za.has(e))return;const t=new Promise((n,r)=>{const i=()=>{e.removeEventListener("complete",s),e.removeEventListener("error",o),e.removeEventListener("abort",o)},s=()=>{n(),i()},o=()=>{r(e.error||new DOMException("AbortError","AbortError")),i()};e.addEventListener("complete",s),e.addEventListener("error",o),e.addEventListener("abort",o)});Za.set(e,t)}let el={get(e,t,n){if(e instanceof IDBTransaction){if(t==="done")return Za.get(e);if(t==="objectStoreNames")return e.objectStoreNames||mp.get(e);if(t==="store")return n.objectStoreNames[1]?void 0:n.objectStore(n.objectStoreNames[0])}return Ht(e[t])},set(e,t,n){return e[t]=n,!0},has(e,t){return e instanceof IDBTransaction&&(t==="done"||t==="store")?!0:t in e}};function Hw(e){el=e(el)}function Gw(e){return e===IDBDatabase.prototype.transaction&&!("objectStoreNames"in IDBTransaction.prototype)?function(t,...n){const r=e.call(qo(this),t,...n);return mp.set(r,t.sort?t.sort():[t]),Ht(r)}:Ww().includes(e)?function(...t){return e.apply(qo(this),t),Ht(gp.get(this))}:function(...t){return Ht(e.apply(qo(this),t))}}function qw(e){return typeof e=="function"?Gw(e):(e instanceof IDBTransaction&&Vw(e),zw(e,Bw())?new Proxy(e,el):e)}function Ht(e){if(e instanceof IDBRequest)return $w(e);if(Go.has(e))return Go.get(e);const t=qw(e);return t!==e&&(Go.set(e,t),ou.set(t,e)),t}const qo=e=>ou.get(e);function Kw(e,t,{blocked:n,upgrade:r,blocking:i,terminated:s}={}){const o=indexedDB.open(e,t),a=Ht(o);return r&&o.addEventListener("upgradeneeded",l=>{r(Ht(o.result),l.oldVersion,l.newVersion,Ht(o.transaction),l)}),n&&o.addEventListener("blocked",l=>n(l.oldVersion,l.newVersion,l)),a.then(l=>{s&&l.addEventListener("close",()=>s()),i&&l.addEventListener("versionchange",u=>i(u.oldVersion,u.newVersion,u))}).catch(()=>{}),a}const Qw=["get","getKey","getAll","getAllKeys","count"],Yw=["put","add","delete","clear"],Ko=new Map;function qc(e,t){if(!(e instanceof IDBDatabase&&!(t in e)&&typeof t=="string"))return;if(Ko.get(t))return Ko.get(t);const n=t.replace(/FromIndex$/,""),r=t!==n,i=Yw.includes(n);if(!(n in(r?IDBIndex:IDBObjectStore).prototype)||!(i||Qw.includes(n)))return;const s=async function(o,...a){const l=this.transaction(o,i?"readwrite":"readonly");let u=l.store;
263return r&&(u=u.index(a.shift())),(await Promise.all([u[n](...a),i&&l.done]))[0]};return Ko.set(t,s),s}Hw(e=>({...e,get:(t,n,r)=>qc(t,n)||e.get(t,n,r),has:(t,n)=>!!qc(t,n)||e.has(t,n)}));/**
264 * @license
265 * Copyright 2019 Google LLC
266 *
267 * Licensed under the Apache License, Version 2.0 (the "License");
268 * you may not use this file except in compliance with the License.
269 * You may obtain a copy of the License at
270 *
271 *   http://www.apache.org/licenses/LICENSE-2.0
272 *
273 * Unless required by applicable law or agreed to in writing, software
274 * distributed under the License is distributed on an "AS IS" BASIS,
275 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
276 * See the License for the specific language governing permissions and
277 * limitations under the License.
278 */class Xw{constructor(t){this.container=t}getPlatformInfoString(){return this.container.getProviders().map(n=>{if(Jw(n)){const r=n.getImmediate();return`${r.library}/${r.version}`}else return null}).filter(n=>n).join(" ")}}function Jw(e){const t=e.getComponent();return(t==null?void 0:t.type)==="VERSION"}const tl="@firebase/app",Kc="0.10.13";/**
279 * @license
280 * Copyright 2019 Google LLC
281 *
282 * Licensed under the Apache License, Version 2.0 (the "License");
283 * you may not use this file except in compliance with the License.
284 * You may obtain a copy of the License at
285 *
286 *   http://www.apache.org/licenses/LICENSE-2.0
287 *
288 * Unless required by applicable law or agreed to in writing, software
289 * distributed under the License is distributed on an "AS IS" BASIS,
290 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
291 * See the License for the specific language governing permissions and
292 * limitations under the License.
293 */const yt=new pp("@firebase/app"),Zw="@firebase/app-compat",e_="@firebase/analytics-compat",t_="@firebase/analytics",n_="@firebase/app-check-compat",r_="@firebase/app-check",i_="@firebase/auth",s_="@firebase/auth-compat",o_="@firebase/database",a_="@firebase/data-connect",l_="@firebase/database-compat",u_="@firebase/functions",c_="@firebase/functions-compat",d_="@firebase/installations",h_="@firebase/installations-compat",f_="@firebase/messaging",p_="@firebase/messaging-compat",g_="@firebase/performance",m_="@firebase/performance-compat",y_="@firebase/remote-config",v_="@firebase/remote-config-compat",w_="@firebase/storage",__="@firebase/storage-compat",k_="@firebase/firestore",S_="@firebase/vertexai-preview",E_="@firebase/firestore-compat",b_="firebase",T_="10.14.1";/**
294 * @license
295 * Copyright 2019 Google LLC
296 *
297 * Licensed under the Apache License, Version 2.0 (the "License");
298 * you may not use this file except in compliance with the License.
299 * You may obtain a copy of the License at
300 *
301 *   http://www.apache.org/licenses/LICENSE-2.0
302 *
303 * Unless required by applicable law or agreed to in writing, software
304 * distributed under the License is distributed on an "AS IS" BASIS,
305 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
306 * See the License for the specific language governing permissions and
307 * limitations under the License.
308 */const nl="[DEFAULT]",C_={[tl]:"fire-core",[Zw]:"fire-core-compat",[t_]:"fire-analytics",[e_]:"fire-analytics-compat",[r_]:"fire-app-check",[n_]:"fire-app-check-compat",[i_]:"fire-auth",[s_]:"fire-auth-compat",[o_]:"fire-rtdb",[a_]:"fire-data-connect",[l_]:"fire-rtdb-compat",[u_]:"fire-fn",[c_]:"fire-fn-compat",[d_]:"fire-iid",[h_]:"fire-iid-compat",[f_]:"fire-fcm",[p_]:"fire-fcm-compat",[g_]:"fire-perf",[m_]:"fire-perf-compat",[y_]:"fire-rc",[v_]:"fire-rc-compat",[w_]:"fire-gcs",[__]:"fire-gcs-compat",[k_]:"fire-fst",[E_]:"fire-fst-compat",[S_]:"fire-vertex","fire-js":"fire-js",[b_]:"fire-js-all"};/**
309 * @license
310 * Copyright 2019 Google LLC
311 *
312 * Licensed under the Apache License, Version 2.0 (the "License");
313 * you may not use this file except in compliance with the License.
314 * You may obtain a copy of the License at
315 *
316 *   http://www.apache.org/licenses/LICENSE-2.0
317 *
318 * Unless required by applicable law or agreed to in writing, software
319 * distributed under the License is distributed on an "AS IS" BASIS,
320 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
321 * See the License for the specific language governing permissions and
322 * limitations under the License.
323 */const Us=new Map,I_=new Map,rl=new Map;function Qc(e,t){try{e.container.addComponent(t)}catch(n){yt.debug(`Component ${t.name} failed to register with FirebaseApp ${e.name}`,n)}}function sr(e){const t=e.name;if(rl.has(t))return yt.debug(`There were multiple attempts to register component ${t}.`),!1;rl.set(t,e);for(const n of Us.values())Qc(n,e);for(const n of I_.values())Qc(n,e);return!0}function au(e,t){const n=e.container.getProvider("heartbeat").getImmediate({optional:!0});return n&&n.triggerHeartbeat(),e.container.getProvider(t)}function at(e){return e.settings!==void 0}/**
324 * @license
325 * Copyright 2019 Google LLC
326 *
327 * Licensed under the Apache License, Version 2.0 (the "License");
328 * you may not use this file except in compliance with the License.
329 * You may obtain a copy of the License at
330 *
331 *   http://www.apache.org/licenses/LICENSE-2.0
332 *
333 * Unless required by applicable law or agreed to in writing, software
334 * distributed under the License is distributed on an "AS IS" BASIS,
335 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
336 * See the License for the specific language governing permissions and
337 * limitations under the License.
338 */const R_={"no-app":"No Firebase App '{$appName}' has been created - call initializeApp() first","bad-app-name":"Illegal App name: '{$appName}'","duplicate-app":"Firebase App named '{$appName}' already exists with different options or config","app-deleted":"Firebase App named '{$appName}' already deleted","server-app-deleted":"Firebase Server App has been deleted","no-options":"Need to provide options, when not being deployed to hosting via source.","invalid-app-argument":"firebase.{$appName}() takes either no argument or a Firebase App instance.","invali
338d-log-argument":"First argument to `onLog` must be null or a function.","idb-open":"Error thrown when opening IndexedDB. Original error: {$originalErrorMessage}.","idb-get":"Error thrown when reading from IndexedDB. Original error: {$originalErrorMessage}.","idb-set":"Error thrown when writing to IndexedDB. Original error: {$originalErrorMessage}.","idb-delete":"Error thrown when deleting from IndexedDB. Original error: {$originalErrorMessage}.","finalization-registry-not-supported":"FirebaseServerApp deleteOnDeref field defined but the JS runtime does not support FinalizationRegistry.","invalid-server-app-environment":"FirebaseServerApp is not for use in browser environments."},Gt=new yi("app","Firebase",R_);/**
339 * @license
340 * Copyright 2019 Google LLC
341 *
342 * Licensed under the Apache License, Version 2.0 (the "License");
343 * you may not use this file except in compliance with the License.
344 * You may obtain a copy of the License at
345 *
346 *   http://www.apache.org/licenses/LICENSE-2.0
347 *
348 * Unless required by applicable law or agreed to in writing, software
349 * distributed under the License is distributed on an "AS IS" BASIS,
350 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
351 * See the License for the specific language governing permissions and
352 * limitations under the License.
353 */class P_{constructor(t,n,r){this._isDeleted=!1,this._options=Object.assign({},t),this._config=Object.assign({},n),this._name=n.name,this._automaticDataCollectionEnabled=n.automaticDataCollectionEnabled,this._container=r,this.container.addComponent(new _n("app",()=>this,"PUBLIC"))}get automaticDataCollectionEnabled(){return this.checkDestroyed(),this._automaticDataCollectionEnabled}set automaticDataCollectionEnabled(t){this.checkDestroyed(),this._automaticDataCollectionEnabled=t}get name(){return this.checkDestroyed(),this._name}get options(){return this.checkDestroyed(),this._options}get config(){return this.checkDestroyed(),this._config}get container(){return this._container}get isDeleted(){return this._isDeleted}set isDeleted(t){this._isDeleted=t}checkDestroyed(){if(this.isDeleted)throw Gt.create("app-deleted",{appName:this._name})}}/**
354 * @license
355 * Copyright 2019 Google LLC
356 *
357 * Licensed under the Apache License, Version 2.0 (the "License");
358 * you may not use this file except in compliance with the License.
359 * You may obtain a copy of the License at
360 *
361 *   http://www.apache.org/licenses/LICENSE-2.0
362 *
363 * Unless required by applicable law or agreed to in writing, software
364 * distributed under the License is distributed on an "AS IS" BASIS,
365 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
366 * See the License for the specific language governing permissions and
367 * limitations under the License.
368 */const hr=T_;function yp(e,t={}){let n=e;typeof t!="object"&&(t={name:t});const r=Object.assign({name:nl,automaticDataCollectionEnabled:!1},t),i=r.name;if(typeof i!="string"||!i)throw Gt.create("bad-app-name",{appName:String(i)});if(n||(n=hp()),!n)throw Gt.create("no-options");const s=Us.get(i);if(s){if(Ds(n,s.options)&&Ds(r,s.config))return s;throw Gt.create("duplicate-app",{appName:i})}const o=new Dw(i);for(const l of rl.values())o.addComponent(l);const a=new P_(n,r,o);return Us.set(i,a),a}function vp(e=nl){const t=Us.get(e);if(!t&&e===nl&&hp())return yp();if(!t)throw Gt.create("no-app",{appName:e});return t}function qt(e,t,n){var r;let i=(r=C_[e])!==null&&r!==void 0?r:e;n&&(i+=`-${n}`);const s=i.match(/\s|\//),o=t.match(/\s|\//);if(s||o){const a=[`Unable to register library "${i}" with version "${t}":`];s&&a.push(`library name "${i}" contains illegal characters (whitespace or "/")`),s&&o&&a.push("and"),o&&a.push(`version name "${t}" contains illegal characters (whitespace or "/")`),yt.warn(a.join(" "));return}sr(new _n(`${i}-version`,()=>({library:i,version:t}),"VERSION"))}/**
369 * @license
370 * Copyright 2021 Google LLC
371 *
372 * Licensed under the Apache License, Version 2.0 (the "License");
373 * you may not use this file except in compliance with the License.
374 * You may obtain a copy of the License at
375 *
376 *   http://www.apache.org/licenses/LICENSE-2.0
377 *
378 * Unless required by applicable law or agreed to in writing, softw
378are
379 * distributed under the License is distributed on an "AS IS" BASIS,
380 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
381 * See the License for the specific language governing permissions and
382 * limitations under the License.
383 */const x_="firebase-heartbeat-database",O_=1,ui="firebase-heartbeat-store";let Qo=null;function wp(){return Qo||(Qo=Kw(x_,O_,{upgrade:(e,t)=>{switch(t){case 0:try{e.createObjectStore(ui)}catch(n){console.warn(n)}}}}).catch(e=>{throw Gt.create("idb-open",{originalErrorMessage:e.message})})),Qo}async function L_(e){try{const n=(await wp()).transaction(ui),r=await n.objectStore(ui).get(_p(e));return await n.done,r}catch(t){if(t instanceof kt)yt.warn(t.message);else{const n=Gt.create("idb-get",{originalErrorMessage:t==null?void 0:t.message});yt.warn(n.message)}}}async function Yc(e,t){try{const r=(await wp()).transaction(ui,"readwrite");await r.objectStore(ui).put(t,_p(e)),await r.done}catch(n){if(n instanceof kt)yt.warn(n.message);else{const r=Gt.create("idb-set",{originalErrorMessage:n==null?void 0:n.message});yt.warn(r.message)}}}function _p(e){return`${e.name}!${e.options.appId}`}/**
384 * @license
385 * Copyright 2021 Google LLC
386 *
387 * Licensed under the Apache License, Version 2.0 (the "License");
388 * you may not use this file except in compliance with the License.
389 * You may obtain a copy of the License at
390 *
391 *   http://www.apache.org/licenses/LICENSE-2.0
392 *
393 * Unless required by applicable law or agreed to in writing, software
394 * distributed under the License is distributed on an "AS IS" BASIS,
395 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
396 * See the License for the specific language governing permissions and
397 * limitations under the License.
398 */const N_=1024,A_=30*24*60*60*1e3;class D_{constructor(t){this.container=t,this._heartbeatsCache=null;const n=this.container.getProvider("app").getImmediate();this._storage=new M_(n),this._heartbeatsCachePromise=this._storage.read().then(r=>(this._heartbeatsCache=r,r))}async triggerHeartbeat(){var t,n;try{const i=this.container.getProvider("platform-logger").getImmediate().getPlatformInfoString(),s=Xc();return((t=this._heartbeatsCache)===null||t===void 0?void 0:t.heartbeats)==null&&(this._heartbeatsCache=await this._heartbeatsCachePromise,((n=this._heartbeatsCache)===null||n===void 0?void 0:n.heartbeats)==null)||this._heartbeatsCache.lastSentHeartbeatDate===s||this._heartbeatsCache.heartbeats.some(o=>o.date===s)?void 0:(this._heartbeatsCache.heartbeats.push({date:s,agent:i}),this._heartbeatsCache.heartbeats=this._heartbeatsCache.heartbeats.filter(o=>{const a=new Date(o.date).valueOf();return Date.now()-a<=A_}),this._storage.overwrite(this._heartbeatsCache))}catch(r){yt.warn(r)}}async getHeartbeatsHeader(){var t;try{if(this._heartbeatsCache===null&&await this._heartbeatsCachePromise,((t=this._heartbeatsCache)===null||t===void 0?void 0:t.heartbeats)==null||this._heartbeatsCache.heartbeats.length===0)return"";const n=Xc(),{heartbeatsToSend:r,unsentEntries:i}=U_(this._heartbeatsCache.heartbeats),s=As(JSON.stringify({version:2,heartbeats:r}));return this._heartbeatsCache.lastSentHeartbeatDate=n,i.length>0?(this._heartbeatsCache.heartbeats=i,await this._storage.overwrite(this._heartbeatsCache)):(this._heartbeatsCache.heartbeats=[],this._storage.overwrite(this._heartbeatsCache)),s}catch(n){return yt.warn(n),""}}}function Xc(){return new Date().toISOString().substring(0,10)}function U_(e,t=N_){const n=[];let r=e.slice();for(const i of e){const s=n.find(o=>o.agent===i.agent);if(s){if(s.dates.push(i.date),Jc(n)>t){s.dates.pop();break}}else if(n.push({agent:i.agent,dates:[i.date]}),Jc(n)>t){n.pop();break}r=r.slice(1)}return{heartbeatsToSend:n,unsentEntries:r}}class M_{constructor(t){this.app=t,this._canUseIndexedDBPromise=this.runIndexedDBEnvironmentCheck()}async runIndexedDBEnvironmentCheck(){return Ew()?bw().then(()=>!0).catch(()=>!1):!1}async read(){if(await this._canUseIndexedDBPromise){const n=await L_(this.app);return n!=null&&n.heartbeats?n:{heartbeats:[]}}else return{heartbeats:[]}}async overwrite(t){var n;if(await this._canUseIndexedDBPromise){const i=await this.read();return Yc(this.app,{lastSentHeartbeatDate:(n=t.lastSentHeartbeatDate)!==null&&n!==void 0?n:i.lastSentHeartbeatDate,heartbeats:t.heartbeats})}else return}async add(t){var n;if(await this._canUseIndexedDBPromise){const i=await this.read();return Yc(this.app,{lastSentHeartbeatDate:(n=t.lastSentHeartbeatDate)!==null&&n!==void 0?n:i.lastSentHeartbeatDate,heartbeats:[...i.heartbeats,...t.heartbeats]})}else return}}
398function Jc(e){return As(JSON.stringify({version:2,heartbeats:e})).length}/**
399 * @license
400 * Copyright 2019 Google LLC
401 *
402 * Licensed under the Apache License, Version 2.0 (the "License");
403 * you may not use this file except in compliance with the License.
404 * You may obtain a copy of the License at
405 *
406 *   http://www.apache.org/licenses/LICENSE-2.0
407 *
408 * Unless required by applicable law or agreed to in writing, software
409 * distributed under the License is distributed on an "AS IS" BASIS,
410 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
411 * See the License for the specific language governing permissions and
412 * limitations under the License.
413 */function j_(e){sr(new _n("platform-logger",t=>new Xw(t),"PRIVATE")),sr(new _n("heartbeat",t=>new D_(t),"PRIVATE")),qt(tl,Kc,e),qt(tl,Kc,"esm2017"),qt("fire-js","")}j_("");function lu(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n}function kp(){return{"dependent-sdk-initialized-before-auth":"Another Firebase SDK was initialized and is trying to use Auth before Auth is initialized. Please be sure to call `initializeAuth` or `getAuth` before starting any other Firebase SDK."}}const F_=kp,Sp=new yi("auth","Firebase",kp());/**
414 * @license
415 * Copyright 2020 Google LLC
416 *
417 * Licensed under the Apache License, Version 2.0 (the "License");
418 * you may not use this file except in compliance with the License.
419 * You may obtain a copy of the License at
420 *
421 *   http://www.apache.org/licenses/LICENSE-2.0
422 *
423 * Unless required by applicable law or agreed to in writing, software
424 * distributed under the License is distributed on an "AS IS" BASIS,
425 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
426 * See the License for the specific language governing permissions and
427 * limitations under the License.
428 */const Ms=new pp("@firebase/auth");function z_(e,...t){Ms.logLevel<=j.WARN&&Ms.warn(`Auth (${hr}): ${e}`,...t)}function is(e,...t){Ms.logLevel<=j.ERROR&&Ms.error(`Auth (${hr}): ${e}`,...t)}/**
429 * @license
430 * Copyright 2020 Google LLC
431 *
432 * Licensed under the Apache License, Version 2.0 (the "License");
433 * you may not use this file except in compliance with the License.
434 * You may obtain a copy of the License at
435 *
436 *   http://www.apache.org/licenses/LICENSE-2.0
437 *
438 * Unless required by applicable law or agreed to in writing, software
439 * distributed under the License is distributed on an "AS IS" BASIS,
440 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
441 * See the License for the specific language governing permissions and
442 * limitations under the License.
443 */function qe(e,...t){throw uu(e,...t)}function et(e,...t){return uu(e,...t)}function Ep(e,t,n){const r=Object.assign(Object.assign({},F_()),{[t]:n});return new yi("auth","Firebase",r).create(t,{appName:e.name})}function Kt(e){return Ep(e,"operation-not-supported-in-this-environment","Operations that alter the current user are not supported in conjunction with FirebaseServerApp")}function uu(e,...t){if(typeof e!="string"){const n=t[0],r=[...t.slice(1)];return r[0]&&(r[0].appName=e.name),e._errorFactory.create(n,...r)}return Sp.create(e,...t)}function x(e,t,...n){if(!e)throw uu(t,...n)}function lt(e){const t="INTERNAL ASSERTION FAILED: "+e;throw is(t),new Error(t)}function vt(e,t){e||lt(t)}/**
444 * @license
445 * Copyright 2020 Google LLC
446 *
447 * Licensed under the Apache License, Version 2.0 (the "License");
448 * you may not use this file except in compliance with the License.
449 * You may obtain a copy of the License at
450 *
451 *   http://www.apache.org/licenses/LICENSE-2.0
452 *
453 * Unless required by applicable law or agreed to in writing, software
454 * distributed under the License is distributed on an "AS IS" BASIS,
455 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
456 * See the License for the specific language governing permissions and
457 * limitations under the License.
458 */function il(){var e;return typeof self<"u"&&((e=self.location)===null||e===void 0?void 0:e.href)||""}function B_(){return Zc()==="http:"||Zc()==="https:"}function Zc(){var e;return typeof self<"u"&&((e=self.location)===null||e===void 0?void 0:e.protocol)||null}/**
459 * @license
460 * Copyright 2020 Google LLC
461 *
462 * Licensed under the Apache License, Version 2.0 (the "License");
463 * you may not use this file except in compliance with the License.
464 * You may obtain a copy of the License at
465 *
466 *   http://www.apache.org/licenses/LICENSE-2.0
467 *
468 * Unless required by applicable law or agreed to in writing, software
469 * distributed under the License is distributed on an "AS IS" BASIS,
470 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
471 * See the License for the specific language governing permissions and
472 * limitations under the License.
473 */function W_(){return typeof navigator<"u"&&navigator&&"onLine"in navigator&&typeof navigator.onLine=="boolean"&&(B_()||_w()||"connection"in navigator)?navigator.onLine:!0}function $_(){if(typeof navigator>"u")return null;const e=navigator;return e.languages&&e.languages[0]||e.language||null}/**
474 * @license
475 * Copyright 2020 Google LLC
476 *
477 * Licensed under the Apache License, Version 2.0 (the "License");
478 * you may not use this file except in compliance with the License.
479 * You may obtain a copy of the License at
480 *
481 *   http://www.apache.org/licenses/LICENSE-2.0
482 *
483 * Unless required by applicable law or agreed to in writing, software
484 * distributed under the License is distributed on an "AS IS" BASIS,
485 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
486 * See the License for the specific language governing permissions and
487 * limitations under the License.
488 */class wi{constructor(t,n){this.shortDelay=t,this.longDelay=n,vt(n>t,"Short delay should be less than long delay!"),this.isMobile=vw()||kw()}get(){return W_()?this.isMobile?this.longDelay:this.shortDelay:Math.min(5e3,this.shortDelay)}}/**
489 * @license
490 * Copyright 2020 Google LLC
491 *
492 * Licensed under the Apache License, Version 2.0 (the "License");
493 * you may not use this file except in compliance with the License.
494 * You may obtain a copy of the License at
495 *
496 *   http://www.apache.org/licenses/LICENSE-2.0
497 *
498 * Unless required by applicable law or agreed to in writing, software
499 * distributed under the License is distributed on an "AS IS" BASIS,
500 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
501 * See the License for the specific language governing permissions and
502 * limitations under the License.
503 */function cu(e,t){vt(e.emulator,"Emulator should always be set here");const{url:n}=e.emulator;return t?`${n}${t.startsWith("/")?t.slice(1):t}`:n}/**
504 * @license
505 * Copyright 2020 Google LLC
506 *
507 * Licensed under the Apache License, Version 2.0 (the "License");
508 * you may not use this file except in compliance with the License.
509 * You may obtain a copy of the License at
510 *
511 *   http://www.apache.org/licenses/LICENSE-2.0
512 *
513 * Unless required by applicable law or agreed to in writing, software
514 * distributed under the License is distributed on an "AS IS" BASIS,
515 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
516 * See the License for the specific language governing permissions and
517 * limitations under the License.
518 */class bp{static initialize(t,n,r){this.fetchImpl=t,n&&(this.headersImpl=n),r&&(this.responseImpl=r)}static fetch(){if(this.fetchImpl)return this.fetchImpl;if(typeof self<"u"&&"fetch"in self)return self.fetch;if(typeof globalThis<"u"&&globalThis.fetch)return globalThis.fetch;if(typeof fetch<"u")return fetch;lt("Could not find fetch implementation, make sure you call FetchProvider.initialize() with an appropriate polyfill")}static headers(){if(this.headersImpl)return this.headersImpl;if(typeof self<"u"&&"Headers"in self)return self.Headers;if(typeof globalThis<"u"&&globalThis.Headers)return globalThis.Headers;if(typeof Headers<"u")return Headers;lt("Could not find Headers implementation, make sure you call FetchProvider.initialize() with an appropriate polyfill")}static response(){if(this.responseImpl)return this.responseImpl;if(typeof self<"u"&&"Response"in self)return self.Response;if(typeof globalThis<"u"&&globalThis.Response)return globalThis.Response;if(typeof Response<"u")return Response;lt("Could not find Response implementation, make sure you call FetchProvider.initialize() with an appropriate polyfill")}}/**
519 * @license
520 * Copyright 2020 Google LLC
521 *
522 * Licensed under the Apache License, Version 2.0 (the "License");
523 * you may not use this file except in compliance with the License.
524 * You may obtain a copy of the License at
525 *
526 *   http://www.apache.org/licenses/LICENSE-2.0
527 *
528 * Unless required by applicable law or agreed to in writing, software
529 * distributed under the License is distributed on an "AS IS" BASIS,
530 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
531 * See the License for the specific language governing permissions and
532 * limitations under the License.
533 */const V_={CREDENTIAL_MISMATCH:"custom-token-mismatch",MISSING_CUSTOM_TOKEN:"internal-error",INVALID_IDENTIFIER:"invalid-email",MISSING_CONTINUE_URI:"internal-error",INVALID_PASSWORD:"wrong-password",MISSING_PASSWORD:"missing-password",INVALID_LOGIN_CREDENTIALS:"invalid-credential",EMAIL_EXISTS:"email-already-in-use",PASSWORD_LOGIN_DISABLED:"operation-not-allowed",INVALID_IDP_RESPONSE:"invalid-credential",INVALID_PENDING_TOKEN:"invalid-credential",FEDERATED_USER_ID_ALREADY_LINKED:"credential-already-in-use",MISSING_REQ_TYPE:"internal-error",EMAIL_NOT_FOUND:"user-not-found",RESET_PASSWORD_EXCEED_LIMIT:"too-many-requests",EXPIRED_OOB_CODE:"expired-action-code",INVALID_OOB_CODE:"invalid-action-code",MISSING_OOB_CODE:"internal-error",CREDENTIAL_TOO_OLD_LOGIN_AGAIN:"requires-recent-login",INVALID_ID_TOKEN:"invalid-user-token",TOKEN_EXPIRED:"user-token-expired",USER_NOT_FOUND:"user-token-expired",TOO_MANY_ATTEMPTS_TRY_LATER:"too-many-requests",PASSWORD_DOES_NOT_MEET_REQUIREMENTS:"password-does-not-meet-requirements",INVALID_CODE:"invalid-verification-code",INVALID_SESSION_INFO:"invalid-verification-id",INVALID_TEMPORARY_PROOF:"invalid-credential",MISSING_SESSION_INFO:"missing-verification-id",SESSION_EXPIRED:"code-expired",MISSING_ANDROID_PACKAGE_NAME:"missing-android-pkg-name",UNAUTHORIZED_DOMAIN:"unauthorized-continue-uri",INVALID_OAUTH_CLIENT_ID:"invalid-oauth-client-id",ADMIN_ONLY_OPERATION:"admin-restricted-operation",INVALID_MFA_PENDING_CREDENTIAL:"invalid-multi-factor-session",MFA_ENROLLMENT_NOT_FOUND:"multi-factor-info-not-found",MISSING_MFA_ENROLLMENT_ID:"missing-multi-factor-info",MISSING_MFA_PENDING_CREDENTIAL:"missing-multi-factor-session",SECOND_FACTOR_EXISTS:"second-factor-already-in-use",SECOND_FACTOR_LIMIT_EXCEEDED:"maximum-second-factor-count-exceeded",BLOCKING_FUNCTION_ERROR_RESPONSE:"internal-error",RECAPTCHA_NOT_ENABLED:"recaptcha-not-enabled",MISSING_RECAPTCHA_TOKEN:"missing-recaptcha-token",INVALID_RECAPTCHA_TOKEN:"invalid-recaptcha-token",INVALID_RECAPTCHA_ACTION:"invalid-recaptcha-action",MISSING_CLIENT_TYPE:"missing-client-type",MISSING_RECAPTCHA_VERSION:"missing-recaptcha-version",INVALID_RECAPTCHA_VERSION:"invalid-recaptcha-version",INVALID_REQ_TYPE:"invalid-req-type"};/**
534 * @license
535 * Copyright 2020 Google LLC
536 *
537 * Licensed under the Apache License, Version 2.0 (the "License");
538 * you may not use this file except in compliance with the License.
539 * You may obtain a copy of the License at
540 *
541 *   http://www.apache.org/licenses/LICENSE-2.0
542 *
543 * Unless required by applicable law or agreed to in writing, software
544 * distributed under the License is distributed on an "AS IS" BASIS,
545 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
546 * See the License for the specific language governing permissions and
547 * limitations under the License.
548 */const H_=new wi(3e4,6e4);function Tn(e,t){return e.tenantId&&!t.tenantId?Object.assign(Object.assign({},t),{tenantId:e.tenantId}):t}async function tn(e,t,n,r,i={}){return Tp(e,i,async()=>{let s={},o={};r&&(t==="GET"?o=r:s={body:JSON.stringify(r)});const a=vi(Object.assign({key:e.config.apiKey},o)).slice(1),l=await e._getAdditionalHeaders();l["Content-Type"]="application/json",e.languageCode&&(l["X-Firebase-Locale"]=e.languageCode);const u=Object.assign({method:t,headers:l},s);return ww()||(u.referrerPolicy="no-referrer"),bp.fetch()(Cp(e,e.config.apiHost,n,a),u)})}async function Tp(e,t,n){e._canInitEmulator=!1;const r=Object.assign(Object.assign({},V_),t);try{const i=new q_(e),s=await Promise.race([n(),i.promise]);i.clearNetworkTimeout();const o=await s.json();if("needConfirmation"in o)throw $i(e,"account-exists-with-different-credential",o);if(s.ok&&!("errorMessage"in o))return o;{const a=s.ok?o.errorMessage:o.error.message,[l,u]=a.split(" : ");if(l==="FEDERATED_USER_ID_ALREADY_LINKED")throw $i(e,"credential-already-in-use",o);if(l==="EMAIL_EXISTS")throw $i(e,"email-already-in-use",o);if(l==="USER_DISABLED")throw $i(e,"user-disabled",o);const h=r[l]||l.toLowerCase().replace(/[_\s]+/g,"-");if(u)throw Ep(e,h,u);qe(e,h)}}catch(i){if(i instanceof kt)throw i;qe(e,"network-request-failed",{message:String(i)})}}async function uo(e,t,n,r,i={}){const s=await tn(e,t,n,r,i);return"mfaPendingCredential"in s&&qe(e,"multi-factor-auth-required",{_serverResponse:s}),s}function Cp(e,t,n,r){const i=`${t}${n}?${r}`;return e.config.emulator?cu(e.config,i):`${e.config.apiScheme}://${i}`}function G_(e){switch(e){case"ENFORCE":return"ENFORCE";case"AUDIT":return"AUDIT";case"OFF":return"OFF";default:return"ENFORCEMENT_STATE_UNSPECIFIED"}}class q_{constructor(t){this.auth=t,this.timer=null,this.promise=new Promise((n,r)=>{this.timer=setTimeout(()=>r(et(this.auth,"network-request-failed")),H_.get())})}clearNetworkTimeout(){clearTimeout(this.timer)}}
548function $i(e,t,n){const r={appName:e.name};n.email&&(r.email=n.email),n.phoneNumber&&(r.phoneNumber=n.phoneNumber);const i=et(e,t,r);return i.customData._tokenResponse=n,i}function ed(e){return e!==void 0&&e.enterprise!==void 0}class K_{constructor(t){if(this.siteKey="",this.recaptchaEnforcementState=[],t.recaptchaKey===void 0)throw new Error("recaptchaKey undefined");this.siteKey=t.recaptchaKey.split("/")[3],this.recaptchaEnforcementState=t.recaptchaEnforcementState}getProviderEnforcementState(t){if(!this.recaptchaEnforcementState||this.recaptchaEnforcementState.length===0)return null;for(const n of this.recaptchaEnforcementState)if(n.provider&&n.provider===t)return G_(n.enforcementState);return null}isProviderEnabled(t){return this.getProviderEnforcementState(t)==="ENFORCE"||this.getProviderEnforcementState(t)==="AUDIT"}}async function Q_(e,t){return tn(e,"GET","/v2/recaptchaConfig",Tn(e,t))}/**
549 * @license
550 * Copyright 2020 Google LLC
551 *
552 * Licensed under the Apache License, Version 2.0 (the "License");
553 * you may not use this file except in compliance with the License.
554 * You may obtain a copy of the License at
555 *
556 *   http://www.apache.org/licenses/LICENSE-2.0
557 *
558 * Unless required by applicable law or agreed to in writing, software
559 * distributed under the License is distributed on an "AS IS" BASIS,
560 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
561 * See the License for the specific language governing permissions and
562 * limitations under the License.
563 */async function Y_(e,t){return tn(e,"POST","/v1/accounts:delete",t)}async function Ip(e,t){return tn(e,"POST","/v1/accounts:lookup",t)}/**
564 * @license
565 * Copyright 2020 Google LLC
566 *
567 * Licensed under the Apache License, Version 2.0 (the "License");
568 * you may not use this file except in compliance with the License.
569 * You may obtain a copy of the License at
570 *
571 *   http://www.apache.org/licenses/LICENSE-2.0
572 *
573 * Unless required by applicable law or agreed to in writing, software
574 * distributed under the License is distributed on an "AS IS" BASIS,
575 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
576 * See the License for the specific language governing permissions and
577 * limitations under the License.
578 */function Wr(e){if(e)try{const t=new Date(Number(e));if(!isNaN(t.getTime()))return t.toUTCString()}catch{}}async function X_(e,t=!1){const n=Te(e),r=await n.getIdToken(t),i=du(r);x(i&&i.exp&&i.auth_time&&i.iat,n.auth,"internal-error");const s=typeof i.firebase=="object"?i.firebase:void 0,o=s==null?void 0:s.sign_in_provider;return{claims:i,token:r,authTime:Wr(Yo(i.auth_time)),issuedAtTime:Wr(Yo(i.iat)),expirationTime:Wr(Yo(i.exp)),signInProvider:o||null,signInSecondFactor:(s==null?void 0:s.sign_in_second_factor)||null}}function Yo(e){return Number(e)*1e3}function du(e){const[t,n,r]=e.split(".");if(t===void 0||n===void 0||r===void 0)return is("JWT malformed, contained fewer than 3 sections"),null;try{const i=cp(n);return i?JSON.parse(i):(is("Failed to decode base64 JWT payload"),null)}catch(i){return is("Caught error parsing JWT payload as JSON",i==null?void 0:i.toString()),null}}function td(e){const t=du(e);return x(t,"internal-error"),x(typeof t.exp<"u","internal-error"),x(typeof t.iat<"u","internal-error"),Number(t.exp)-Number(t.iat)}/**
579 * @license
580 * Copyright 2020 Google LLC
581 *
582 * Licensed under the Apache License, Version 2.0 (the "License");
583 * you may not use this file except in compliance with the License.
584 * You may obtain a copy of the License at
585 *
586 *   http://www.apache.org/licenses/LICENSE-2.0
587 *
588 * Unless required by applicable law or agreed to in writing, software
589 * distributed under the License is distributed on an "AS IS" BASIS,
590 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
591 * See the License for the specific language governing permissions and
592 * limitations under the License.
593 */async function ci(e,t,n=!1){if(n)return t;try{return await t}catch(r){throw r instanceof kt&&J_(r)&&e.auth.currentUser===e&&await e.auth.signOut(),r}}function J_({code:e}){return e==="auth/user-disabled"||e==="auth/user-token-expired"}/**
594 * @license
595 * Copyright 2020 Google LLC
596 *
597 * Licensed under the Apache License, Version 2.0 (the "License");
598 * you may not use this file except in compliance with the License.
599 * You may obtain a copy of the License at
600 *
601 *   http://www.apache.org/licenses/LICENSE-2.0
602 *
603 * Unless required by applicable law or agreed to in writing, software
604 * distributed under the License is distributed on an "AS IS" BASIS,
605 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
606 * See the License for the specific language governing permissions and
607 * limitations under the License.
608 */class Z_{constructor(t){this.user=t,this.isRunning=!1,this.timerId=null,this.errorBackoff=3e4}_start(){this.isRunning||(this.isRunning=!0,this.schedule())}_stop(){this.isRunning&&(this.isRunning=!1,this.timerId!==null&&clearTimeout(this.timerId))}getInterval(t){var n;if(t){const r=this.errorBackoff;return this.errorBackoff=Math.min(this.errorBackoff*2,96e4),r}else{this.errorBackoff=3e4;const i=((n=this.user.stsTokenManager.expirationTime)!==null&&n!==void 0?n:0)-Date.now()-3e5;return Math.max(0,i)}}schedule(t=!1){if(!this.isRunning)return;const n=this.getInterval(t);this.timerId=setTimeout(async()=>{await this.iteration()},n)}async iteration(){try{await this.user.getIdToken(!0)}catch(t){(t==null?void 0:t.code)==="auth/network-request-failed"&&this.schedule(!0);return}this.schedule()}}/**
609 * @license
610 * Copyright 2020 Google LLC
611 *
612 * Licensed under the Apache License, Version 2.0 (the "License");
613 * you may not use this file except in compliance with the License.
614 * You may obtain a copy of the License at
615 *
616 *   http://www.apache.org/licenses/LICENSE-2.0
617 *
618 * Unless required by applicable law or agreed to in writing, software
619 * distributed under the License is distributed on an "AS IS" BASIS,
620 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
621 * See the License for the specific language governing permissions and
622 * limitations under the License.
623 */class sl{constructor(t,n){this.createdAt=t,this.lastLoginAt=n,this._initializeTime()}_initializeTime(){this.lastSignInTime=Wr(this.lastLoginAt),this.creationTime=Wr(this.createdAt)}_copy(t){this.createdAt=t.createdAt,this.lastLoginAt=t.lastLoginAt,this._initializeTime()}toJSON(){return{createdAt:this.createdAt,lastLoginAt:this.lastLoginAt}}}/**
624 * @license
625 * Copyright 2019 Google LLC
626 *
627 * Licensed under the Apache License, Version 2.0 (the "License");
628 * you may not use this file except in compliance with the License.
629 * You may obtain a copy of the License at
630 *
631 *   http://www.apache.org/licenses/LICENSE-2.0
632 *
633 * Unless required by applicable law or agreed to in writing, software
634 * distributed under the License is distributed on an "AS IS" BASIS,
635 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
636 * See the License for the specific language governing permissions and
637 * limitations under the License.
638 */async function js(e){var t;const n=e.auth,r=await e.getIdToken(),i=await ci(e,Ip(n,{idToken:r}));x(i==null?void 0:i.users.length,n,"internal-error");const s=i.users[0];e._notifyReloadListener(s);const o=!((t=s.providerUserInfo)===null||t===void 0)&&t.length?Rp(s.providerUserInfo):[],a=t0(e.providerData,o),l=e.isAnonymous,u=!(e.email&&s.passwordHash)&&!(a!=null&&a.length),h=l?u:!1,c={uid:s.localId,displayName:s.displayName||null,photoURL:s.photoUrl||null,email:s.email||null,emailVerified:s.emailVerified||!1,phoneNumber:s.phoneNumber||null,tenantId:s.tenantId||null,providerData:a,metadata:new sl(s.createdAt,s.lastLoginAt),isAnonymous:h};Object.assign(e,c)}async function e0(e){const t=Te(e);await js(t),await t.auth._persistUserIfCurrent(t),t.auth._notifyListenersIfCurrent(t)}function t0(e,t){return[...e.filter(r=>!t.some(i=>i.providerId===r.providerId)),...t]}function Rp(e){return e.map(t=>{var{providerId:n}=t,r=lu(t,["providerId"]);return{providerId:n,uid:r.rawId||"",displayName:r.displayName||null,email:r.email||null,phoneNumber:r.phoneNumber||null,photoURL:r.photoUrl||null}})}/**
639 * @license
640 * Copyright 2020 Google LLC
641 *
642 * Licensed under the Apache License, Version 2.0 (the "License");
643 * you may not use this file except in compliance with the License.
644 * You may obtain a copy of the License at
645 *
646 *   http://www.apache.org/licenses/LICENSE-2.0
647 *
648 * Unless required by applicable law or agreed to in writing, softw
648are
649 * distributed under the License is distributed on an "AS IS" BASIS,
650 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
651 * See the License for the specific language governing permissions and
652 * limitations under the License.
653 */async function n0(e,t){const n=await Tp(e,{},async()=>{const r=vi({grant_type:"refresh_token",refresh_token:t}).slice(1),{tokenApiHost:i,apiKey:s}=e.config,o=Cp(e,i,"/v1/token",`key=${s}`),a=await e._getAdditionalHeaders();return a["Content-Type"]="application/x-www-form-urlencoded",bp.fetch()(o,{method:"POST",headers:a,body:r})});return{accessToken:n.access_token,expiresIn:n.expires_in,refreshToken:n.refresh_token}}async function r0(e,t){return tn(e,"POST","/v2/accounts:revokeToken",Tn(e,t))}/**
654 * @license
655 * Copyright 2020 Google LLC
656 *
657 * Licensed under the Apache License, Version 2.0 (the "License");
658 * you may not use this file except in compliance with the License.
659 * You may obtain a copy of the License at
660 *
661 *   http://www.apache.org/licenses/LICENSE-2.0
662 *
663 * Unless required by applicable law or agreed to in writing, software
664 * distributed under the License is distributed on an "AS IS" BASIS,
665 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
666 * See the License for the specific language governing permissions and
667 * limitations under the License.
668 */class Kn{constructor(){this.refreshToken=null,this.accessToken=null,this.expirationTime=null}get isExpired(){return!this.expirationTime||Date.now()>this.expirationTime-3e4}updateFromServerResponse(t){x(t.idToken,"internal-error"),x(typeof t.idToken<"u","internal-error"),x(typeof t.refreshToken<"u","internal-error");const n="expiresIn"in t&&typeof t.expiresIn<"u"?Number(t.expiresIn):td(t.idToken);this.updateTokensAndExpiration(t.idToken,t.refreshToken,n)}updateFromIdToken(t){x(t.length!==0,"internal-error");const n=td(t);this.updateTokensAndExpiration(t,null,n)}async getToken(t,n=!1){return!n&&this.accessToken&&!this.isExpired?this.accessToken:(x(this.refreshToken,t,"user-token-expired"),this.refreshToken?(await this.refresh(t,this.refreshToken),this.accessToken):null)}clearRefreshToken(){this.refreshToken=null}async refresh(t,n){const{accessToken:r,refreshToken:i,expiresIn:s}=await n0(t,n);this.updateTokensAndExpiration(r,i,Number(s))}updateTokensAndExpiration(t,n,r){this.refreshToken=n||null,this.accessToken=t||null,this.expirationTime=Date.now()+r*1e3}static fromJSON(t,n){const{refreshToken:r,accessToken:i,expirationTime:s}=n,o=new Kn;return r&&(x(typeof r=="string","internal-error",{appName:t}),o.refreshToken=r),i&&(x(typeof i=="string","internal-error",{appName:t}),o.accessToken=i),s&&(x(typeof s=="number","internal-error",{appName:t}),o.expirationTime=s),o}toJSON(){return{refreshToken:this.refreshToken,accessToken:this.accessToken,expirationTime:this.expirationTime}}_assign(t){this.accessToken=t.accessToken,this.refreshToken=t.refreshToken,this.expirationTime=t.expirationTime}_clone(){return Object.assign(new Kn,this.toJSON())}_performRefresh(){return lt("not implemented")}}/**
669 * @license
670 * Copyright 2020 Google LLC
671 *
672 * Licensed under the Apache License, Version 2.0 (the "License");
673 * you may not use this file except in compliance with the License.
674 * You may obtain a copy of the License at
675 *
676 *   http://www.apache.org/licenses/LICENSE-2.0
677 *
678 * Unless required by applicable law or agreed to in writing, software
679 * distributed under the License is distributed on an "AS IS" BASIS,
680 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
681 * See the License for the specific language governing permissions and
682 * limitations under the License.
683 */function Et(e,t){x(typeof e=="string"||typeof e>"u","internal-error",{appName:t})}class ut{constructor(t){var{uid:n,auth:r,stsTokenManager:i}=t,s=lu(t,["uid","auth","stsTokenManager"]);this.providerId="firebase",this.proactiveRefresh=new Z_(this),this.reloadUserInfo=null,this.reloadListener=null,this.uid=n,this.auth=r,this.stsTokenManager=i,this.accessToken=i.accessToken,this.displayName=s.displayName||null,this.email=s.email||null,this.emailVerified=s.emailVerified||!1,this.phoneNumber=s.phoneNumber||null,this.photoURL=s.photoURL||null,this.isAnonymous=s.isAnonymous||!1,this.tenantId=s.tenantId||null,this.providerData=s.providerData?[...s.providerData]:[],this.metadata=new sl(s.createdAt||void 0,s.lastLoginAt||void 0)}async getIdToken(t){const n=await ci(this,this.stsTokenManager.getToken(this.auth,t));return x(n,this.auth,"internal-error"),this.accessToken!==n&&(this.accessToken=n,await this.auth._persistUserIfCurrent(this),this.auth._notifyListenersIfCurrent(this)),n}getIdTokenResult(t){return X_(this,t)}reload(){return e0(this)}_assign(t){this!==t&&(x(this.uid===t.uid,this.auth,"internal-error"),this.displayName=t.displayName,this.photoURL=t.photoURL,this.email=t.email,this.emailVerified=t.emailVerified,this.phoneNumber=t.phoneNumber,this.isAnonymous=t.isAnonymous,this.tenantId=t.tenantId,this.providerData=t.providerData.map(n=>Object.assign({},n)),this.metadata._copy(t.metadata),this.stsTokenManager._assign(t.stsTokenManager))}_clone(t){const n=new ut(Object.assign(Object.assign({},this),{auth:t,stsTokenManager:this.stsTokenManager._clone()}));return n.metadata._copy(this.metadata),n}_onReload(t){x(!this.reloadListener,this.auth,"internal-error"),this.reloadListener=t,this.reloadUserInfo&&(this._notifyReloadListener(this.reloadUserInfo),this.reloadUserInfo=null)}_notifyReloadListener(t){this.reloadListener?this.reloadListener(t):this.reloadUserInfo=t}_startProactiveRefresh(){this.proactiveRefresh._start()}_stopProactiveRefresh(){this.proactiveRefresh._stop()}async _updateTokensIfNecessary(t,n=!1){let r=!1;t.idToken&&t.idToken!==this.stsTokenManager.accessToken&&(this.stsTokenManager.updateFromServerResponse(t),r=!0),n&&await js(this),await this.auth._persistUserIfCurrent(this),r&&this.auth._notifyListenersIfCurrent(this)}async delete(){if(at(this.auth.app))return Promise.reject(Kt(this.auth));const t=await this.getIdToken();return await ci(this,Y_(this.auth,{idToken:t})),this.stsTokenManager.clearRefreshToken(),this.auth.signOut()}toJSON(){return Object.assign(Object.assign({uid:this.uid,email:this.email||void 0,emailVerified:this.emailVerified,displayName:this.displayName||void 0,isA
683nonymous:this.isAnonymous,photoURL:this.photoURL||void 0,phoneNumber:this.phoneNumber||void 0,tenantId:this.tenantId||void 0,providerData:this.providerData.map(t=>Object.assign({},t)),stsTokenManager:this.stsTokenManager.toJSON(),_redirectEventId:this._redirectEventId},this.metadata.toJSON()),{apiKey:this.auth.config.apiKey,appName:this.auth.name})}get refreshToken(){return this.stsTokenManager.refreshToken||""}static _fromJSON(t,n){var r,i,s,o,a,l,u,h;const c=(r=n.displayName)!==null&&r!==void 0?r:void 0,g=(i=n.email)!==null&&i!==void 0?i:void 0,v=(s=n.phoneNumber)!==null&&s!==void 0?s:void 0,y=(o=n.photoURL)!==null&&o!==void 0?o:void 0,_=(a=n.tenantId)!==null&&a!==void 0?a:void 0,k=(l=n._redirectEventId)!==null&&l!==void 0?l:void 0,p=(u=n.createdAt)!==null&&u!==void 0?u:void 0,d=(h=n.lastLoginAt)!==null&&h!==void 0?h:void 0,{uid:f,emailVerified:m,isAnonymous:b,providerData:T,stsTokenManager:C}=n;x(f&&C,t,"internal-error");const R=Kn.fromJSON(this.name,C);x(typeof f=="string",t,"internal-error"),Et(c,t.name),Et(g,t.name),x(typeof m=="boolean",t,"internal-error"),x(typeof b=="boolean",t,"internal-error"),Et(v,t.name),Et(y,t.name),Et(_,t.name),Et(k,t.name),Et(p,t.name),Et(d,t.name);const U=new ut({uid:f,auth:t,email:g,emailVerified:m,displayName:c,isAnonymous:b,photoURL:y,phoneNumber:v,tenantId:_,stsTokenManager:R,createdAt:p,lastLoginAt:d});return T&&Array.isArray(T)&&(U.providerData=T.map(O=>Object.assign({},O))),k&&(U._redirectEventId=k),U}static async _fromIdTokenResponse(t,n,r=!1){const i=new Kn;i.updateFromServerResponse(n);const s=new ut({uid:n.localId,auth:t,stsTokenManager:i,isAnonymous:r});return await js(s),s}static async _fromGetAccountInfoResponse(t,n,r){const i=n.users[0];x(i.localId!==void 0,"internal-error");const s=i.providerUserInfo!==void 0?Rp(i.providerUserInfo):[],o=!(i.email&&i.passwordHash)&&!(s!=null&&s.length),a=new Kn;a.updateFromIdToken(r);const l=new ut({uid:i.localId,auth:t,stsTokenManager:a,isAnonymous:o}),u={uid:i.localId,displayName:i.displayName||null,photoURL:i.photoUrl||null,email:i.email||null,emailVerified:i.emailVerified||!1,phoneNumber:i.phoneNumber||null,tenantId:i.tenantId||null,providerData:s,metadata:new sl(i.createdAt,i.lastLoginAt),isAnonymous:!(i.email&&i.passwordHash)&&!(s!=null&&s.length)};return Object.assign(l,u),l}}/**
684 * @license
685 * Copyright 2020 Google LLC
686 *
687 * Licensed under the Apache License, Version 2.0 (the "License");
688 * you may not use this file except in compliance with the License.
689 * You may obtain a copy of the License at
690 *
691 *   http://www.apache.org/licenses/LICENSE-2.0
692 *
693 * Unless required by applicable law or agreed to in writing, software
694 * distributed under the License is distributed on an "AS IS" BASIS,
695 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
696 * See the License for the specific language governing permissions and
697 * limitations under the License.
698 */const nd=new Map;function ct(e){vt(e instanceof Function,"Expected a class definition");let t=nd.get(e);return t?(vt(t instanceof e,"Instance stored in cache mismatched with class"),t):(t=new e,nd.set(e,t),t)}/**
699 * @license
700 * Copyright 2019 Google LLC
701 *
702 * Licensed under the Apache License, Version 2.0 (the "License");
703 * you may not use this file except in compliance with the License.
704 * You may obtain a copy of the License at
705 *
706 *   http://www.apache.org/licenses/LICENSE-2.0
707 *
708 * Unless required by applicable law or agreed to in writing, software
709 * distributed under the License is distributed on an "AS IS" BASIS,
710 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
711 * See the License for the specific language governing permissions and
712 * limitations under the License.
713 */class Pp{constructor(){this.type="NONE",this.storage={}}async _isAvailable(){return!0}async _set(t,n){this.storage[t]=n}async _get(t){const n=this.storage[t];return n===void 0?null:n}async _remove(t){delete this.storage[t]}_addListener(t,n){}_removeListener(t,n){}}Pp.type="NONE";const rd=Pp;/**
714 * @license
715 * Copyright 2019 Google LLC
716 *
717 * Licensed under the Apache License, Version 2.0 (the "License");
718 * you may not use this file except in compliance with the License.
719 * You may obtain a copy of the License at
720 *
721 *   http://www.apache.org/licenses/LICENSE-2.0
722 *
723 * Unless required by applicable law or agreed to in writing, software
724 * distributed under the License is distributed on an "AS IS" BASIS,
725 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
726 * See the License for the specific language governing permissions and
727 * limitations under the License.
728 */function ss(e,t,n){return`firebase:${e}:${t}:${n}`}class Qn{constructor(t,n,r){this.persistence=t,this.auth=n,this.userKey=r;const{config:i,name:s}=this.auth;this.fullUserKey=ss(this.userKey,i.apiKey,s),this.fullPersistenceKey=ss("persistence",i.apiKey,s),this.boundEventHandler=n._onStorageEvent.bind(n),this.persistence._addListener(this.fullUserKey,this.boundEventHandler)}setCurrentUser(t){return this.persistence._set(this.fullUserKey,t.toJSON())}async getCurrentUser(){const t=await this.persistence._get(this.fullUserKey);return t?ut._fromJSON(this.auth,t):null}removeCurrentUser(){return this.persistence._remove(this.fullUserKey)}savePersistenceForRedirect(){return this.persistence._set(this.fullPersistenceKey,this.persistence.type)}async setPersistence(t){if(this.persistence===t)return;const n=await this.getCurrentUser();if(await this.removeCurrentUser(),this.persistence=t,n)return this.setCurrentUser(n)}delete(){this.persistence._removeListener(this.fullUserKey,this.boundEventHandler)}static async create(t,n,r="authUser"){if(!n.length)return new Qn(ct(rd),t,r);const i=(await Promise.all(n.map(async u=>{if(await u._isAvailable())return u}))).filter(u=>u);let s=i[0]||ct(rd);const o=ss(r,t.config.apiKey,t.name);let a=null;for(const u of n)try{const h=await u._get(o);if(h){const c=ut._fromJSON(t,h);u!==s&&(a=c),s=u;break}}catch{}const l=i.filter(u=>u._shouldAllowMigration);return!s._shouldAllowMigration||!l.length?new Qn(s,t,r):(s=l[0],a&&await s._set(o,a.toJSON()),await Promise.all(n.map(async u=>{if(u!==s)try{await u._remove(o)}catch{}})),new Qn(s,t,r))}}/**
729 * @license
730 * Copyright 2020 Google LLC
731 *
732 * Licensed under the Apache License, Version 2.0 (the "License");
733 * you may not use this file except in compliance with the License.
734 * You may obtain a copy of the License at
735 *
736 *   http://www.apache.org/licenses/LICENSE-2.0
737 *
738 * Unless required by applicable law or agreed to in writing, software
739 * distributed under the License is distributed on an "AS IS" BASIS,
740 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
741 * See the License for the specific language governing permissions and
742 * limitations under the License.
743 */function id(e){const t=e.toLowerCase();if(t.includes("opera/")||t.includes("opr/")||t.includes("opios/"))return"Opera";if(Np(t))return"IEMobile";if(t.includes("msie")||t.includes("trident/"))return"IE";if(t.includes("edge/"))return"Edge";if(xp(t))return"Firefox";if(t.includes("silk/"))return"Silk";if(Dp(t))return"Blackberry";if(Up(t))return"Webos";if(Op(t))return"Safari";if((t.includes("chrome/")||Lp(t))&&!t.includes("edge/"))return"Chrome";if(Ap(t))return"Android";{const n=/([a-zA-Z\d\.]+)\/[a-zA-Z\d\.]*$/,r=e.match(n);if((r==null?void 0:r.length)===2)return r[1]}return"Other"}function xp(e=me()){return/firefox\//i.test(e)}function Op(e=me()){const t=e.toLowerCase();return t.includes("safari/")&&!t.includes("chrome/")&&!t.includes("crios/")&&!t.includes("android")}function Lp(e=me()){return/crios\//i.test(e)}function Np(e=me()){return/iemobile/i.test(e)}function Ap(e=me()){return/android/i.test(e)}function Dp(e=me()){return/blackberry/i.test(e)}function Up(e=me()){return/webos/i.test(e)}function hu(e=me()){return/iphone|ipad|ipod/i.test(e)||/macintosh/i.test(e)&&/mobile/i.test(e)}function i0(e=me()){var t;return hu(e)&&!!(!((t=window.navigator)===null||t===void 0)&&t.standalone)}function s0(){return Sw()&&document.documentMode===10}function Mp(e=me()){return hu(e)||Ap(e)||Up(e)||Dp(e)||/windows phone/i.test(e)||Np(e)}/**
744 * @license
745 * Copyright 2020 Google LLC
746 *
747 * Licensed under the Apache License, Version 2.0 (the "License");
748 * you may not use this file except in compliance with the License.
749 * You may obtain a copy of the License at
750 *
751 *   http://www.apache.org/licenses/LICENSE-2.0
752 *
753 * Unless required by applicable law or agreed to in writing, software
754 * distributed under the License is distributed on an "AS IS" BASIS,
755 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
756 * See the License for the specific language governing permissions and
757 * limitations under the License.
758 */function jp(e,t=[]){let n;switch(e){case"Browser":n=id(me());break;case"Worker":n=`${id(me())}-${e}`;break;default:n=e}const r=t.length?t.join(","):"FirebaseCore-web";return`${n}/JsCore/${hr}/${r}`}/**
759 * @license
760 * Copyright 2022 Google LLC
761 *
762 * Licensed under the Apache License, Version 2.0 (the "License");
763 * you may not use this file except in compliance with the License.
764 * You may obtain a copy of the License at
765 *
766 *   http://www.apache.org/licenses/LICENSE-2.0
767 *
768 * Unless required by applicable law or agreed to in writing, software
769 * distributed under the License is distributed on an "AS IS" BASIS,
770 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
771 * See the License for the specific language governing permissions and
772 * limitations under the License.
773 */class o0{constructor(t){this.auth=t,this.queue=[]}pushCallback(t,n){const r=s=>new Promise((o,a)=>{try{const l=t(s);o(l)}catch(l){a(l)}});r.onAbort=n,this.queue.push(r);const i=this.queue.length-1;return()=>{this.queue[i]=()=>Promise.resolve()}}async runMiddleware(t){if(this.auth.currentUser===t)return;const n=[];try{for(const r of this.queue)await r(t),r.onAbort&&n.push(r.onAbort)}catch(r){n.reverse();for(const i of n)try{i()}catch{}throw this.auth._errorFactory.create("login-blocked",{originalMessage:r==null?void 0:r.message})}}}/**
774 * @license
775 * Copyright 2023 Google LLC
776 *
777 * Licensed under the Apache License, Version 2.0 (the "License");
778 * you may not use this file except in compliance with the License.
779 * You may obtain a copy of the License at
780 *
781 *   http://www.apache.org/licenses/LICENSE-2.0
782 *
783 * Unless required by applicable law or agreed to in writing, software
784 * distributed under the License is distributed on an "AS IS" BASIS,
785 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
786 * See the License for the specific language governing permissions and
787 * limitations under the License.
788 */async function a0(e,t={}){return tn(e,"GET","/v2/passwordPolicy",Tn(e,t))}/**
789 * @license
790 * Copyright 2023 Google LLC
791 *
792 * Licensed under the Apache License, Version 2.0 (the "License");
793 * you may not use this file except in compliance with the License.
794 * You may obtain a copy of the License at
795 *
796 *   http://www.apache.org/licenses/LICENSE-2.0
797 *
798 * Unless required by applicable law or agreed to in writing, software
799 * distributed under the License is distributed on an "AS IS" BASIS,
800 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
801 * See the License for the specific language governing permissions and
802 * limitations under the License.
803 */const l0=6;class u0{constructor(t){var n,r,i,s;const o=t.customStrengthOptions;this.customStrengthOptions={},this.customStrengthOptions.minPasswordLength=(n=o.minPasswordLength)!==null&&n!==void 0?n:l0,o.maxPasswordLength&&(this.customStrengthOptions.maxPasswordLength=o.maxPasswordLength),o.containsLowercaseCharacter!==void 0&&(this.customStrengthOptions.containsLowercaseLetter=o.containsLowercaseCharacter),o.containsUppercaseCharacter!==void 0&&(this.customStrengthOptions.containsUppercaseLetter=o.containsUppercaseCharacter),o.containsNumericCharacter!==void 0&&(this.customStrengthOptions.containsNumericCharacter=o.containsNumericCharacter),o.containsNonAlphanumericCharacter!==void 0&&(this.customStrengthOptions.containsNonAlphanumericCharacter=o.containsNonAlphanumericCharacter),this.enforcementState=t.enforcementState,this.enforcementState==="ENFORCEMENT_STATE_UNSPECIFIED"&&(this.enforcementState="OFF"),this.allowedNonAlphanumericCharacters=(i=(r=t.allowedNonAlphanumericCharacters)===null||r===void 0?void 0:r.join(""))!==null&&i!==void 0?i:"",this.forceUpgradeOnSignin=(s=t.forceUpgradeOnSignin)!==null&&s!==void 0?s:!1,this.schemaVersion=t.schemaVersion}validatePassword(t){var n,r,i,s,o,a;const l={isValid:!0,passwordPolicy:this};return this.validatePasswordLengthOptions(t,l),this.validatePasswordCharacterOptions(t,l),l.isValid&&
803(l.isValid=(n=l.meetsMinPasswordLength)!==null&&n!==void 0?n:!0),l.isValid&&(l.isValid=(r=l.meetsMaxPasswordLength)!==null&&r!==void 0?r:!0),l.isValid&&(l.isValid=(i=l.containsLowercaseLetter)!==null&&i!==void 0?i:!0),l.isValid&&(l.isValid=(s=l.containsUppercaseLetter)!==null&&s!==void 0?s:!0),l.isValid&&(l.isValid=(o=l.containsNumericCharacter)!==null&&o!==void 0?o:!0),l.isValid&&(l.isValid=(a=l.containsNonAlphanumericCharacter)!==null&&a!==void 0?a:!0),l}validatePasswordLengthOptions(t,n){const r=this.customStrengthOptions.minPasswordLength,i=this.customStrengthOptions.maxPasswordLength;r&&(n.meetsMinPasswordLength=t.length>=r),i&&(n.meetsMaxPasswordLength=t.length<=i)}validatePasswordCharacterOptions(t,n){this.updatePasswordCharacterOptionsStatuses(n,!1,!1,!1,!1);let r;for(let i=0;i<t.length;i++)r=t.charAt(i),this.updatePasswordCharacterOptionsStatuses(n,r>="a"&&r<="z",r>="A"&&r<="Z",r>="0"&&r<="9",this.allowedNonAlphanumericCharacters.includes(r))}updatePasswordCharacterOptionsStatuses(t,n,r,i,s){this.customStrengthOptions.containsLowercaseLetter&&(t.containsLowercaseLetter||(t.containsLowercaseLetter=n)),this.customStrengthOptions.containsUppercaseLetter&&(t.containsUppercaseLetter||(t.containsUppercaseLetter=r)),this.customStrengthOptions.containsNumericCharacter&&(t.containsNumericCharacter||(t.containsNumericCharacter=i)),this.customStrengthOptions.containsNonAlphanumericCharacter&&(t.containsNonAlphanumericCharacter||(t.containsNonAlphanumericCharacter=s))}}/**
804 * @license
805 * Copyright 2020 Google LLC
806 *
807 * Licensed under the Apache License, Version 2.0 (the "License");
808 * you may not use this file except in compliance with the License.
809 * You may obtain a copy of the License at
810 *
811 *   http://www.apache.org/licenses/LICENSE-2.0
812 *
813 * Unless required by applicable law or agreed to in writing, software
814 * distributed under the License is distributed on an "AS IS" BASIS,
815 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
816 * See the License for the specific language governing permissions and
817 * limitations under the License.
818 */class c0{constructor(t,n,r,i){this.app=t,this.heartbeatServiceProvider=n,this.appCheckServiceProvider=r,this.config=i,this.currentUser=null,this.emulatorConfig=null,this.operations=Promise.resolve(),this.authStateSubscription=new sd(this),this.idTokenSubscription=new sd(this),this.beforeStateQueue=new o0(this),this.redirectUser=null,this.isProactiveRefreshEnabled=!1,this.EXPECTED_PASSWORD_POLICY_SCHEMA_VERSION=1,this._canInitEmulator=!0,this._isInitialized=!1,this._deleted=!1,this._initializationPromise=null,this._popupRedirectResolver=null,this._errorFactory=Sp,this._agentRecaptchaConfig=null,this._tenantRecaptchaConfigs={},this._projectPasswordPolicy=null,this._tenantPasswordPolicies={},this.lastNotifiedUid=void 0,this.languageCode=null,this.tenantId=null,this.settings={appVerificationDisabledForTesting:!1},this.frameworks=[],this.name=t.name,this.clientVersion=i.sdkClientVersion}_initializeWithPersistence(t,n){return n&&(this._popupRedirectResolver=ct(n)),this._initializationPromise=this.queue(async()=>{var r,i;if(!this._deleted&&(this.persistenceManager=await Qn.create(this,t),!this._deleted)){if(!((r=this._popupRedirectResolver)===null||r===void 0)&&r._shouldInitProactively)try{await this._popupRedirectResolver._initialize(this)}catch{}await this.initializeCurrentUser(n),this.lastNotifiedUid=((i=this.currentUser)===null||i===void 0?void 0:i.uid)||null,!this._deleted&&(this._isInitialized=!0)}}),this._initializationPromise}async _onStorageEvent(){if(this._deleted)return;const t=await this.assertedPersistence.getCurrentUser();if(!(!this.currentUser&&!t)){if(this.currentUser&&t&&this.currentUser.uid===t.uid){this._currentUser._assign(t),await this.currentUser.getIdToken();return}await this._updateCurrentUser(t,!0)}}async initializeCurrentUserFromIdToken(t){try{const n=await Ip(this,{idToken:t}),r=await ut._fromGetAccountInfoResponse(this,n,t);await this.directlySetCurrentUser(r)}catch(n){console.warn("FirebaseServerApp could not login user with provided authIdToken: ",n),await this.directlySetCurrentUser(null)}}async initializeCurrentUser(t){var n;if(at(this.app)){const o=this.app.settings.authIdToken;return o?new Promise(a=>{setTimeout(()=>this.initializeCurrentUserFromIdToken(o).then(a,a))}):this.directlySetCurrentUser(null)}const r=await this.assertedPersistence.getCurrentUser();let i=r,s=!1;if(t&&this.config.authDomain){await this.getOrInitRedirectPersistenceManager();const o=(n=this.redirectUser)===null||n===void 0?void 0:n._redirectEventId,a=i==null?void 0:i._redirectEventId,l=await this.tryRedirectSignIn(t);(!o||o===a)&&(l!=null&&l.user)&&(i=l.user,s=!0)}if(!i)return this.directlySetCurrentUser(null);
818if(!i._redirectEventId){if(s)try{await this.beforeStateQueue.runMiddleware(i)}catch(o){i=r,this._popupRedirectResolver._overrideRedirectResult(this,()=>Promise.reject(o))}return i?this.reloadAndSetCurrentUserOrClear(i):this.directlySetCurrentUser(null)}return x(this._popupRedirectResolver,this,"argument-error"),await this.getOrInitRedirectPersistenceManager(),this.redirectUser&&this.redirectUser._redirectEventId===i._redirectEventId?this.directlySetCurrentUser(i):this.reloadAndSetCurrentUserOrClear(i)}async tryRedirectSignIn(t){let n=null;try{n=await this._popupRedirectResolver._completeRedirectFn(this,t,!0)}catch{await this._setRedirectUser(null)}return n}async reloadAndSetCurrentUserOrClear(t){try{await js(t)}catch(n){if((n==null?void 0:n.code)!=="auth/network-request-failed")return this.directlySetCurrentUser(null)}return this.directlySetCurrentUser(t)}useDeviceLanguage(){this.languageCode=$_()}async _delete(){this._deleted=!0}async updateCurrentUser(t){if(at(this.app))return Promise.reject(Kt(this));const n=t?Te(t):null;return n&&x(n.auth.config.apiKey===this.config.apiKey,this,"invalid-user-token"),this._updateCurrentUser(n&&n._clone(this))}async _updateCurrentUser(t,n=!1){if(!this._deleted)return t&&x(this.tenantId===t.tenantId,this,"tenant-id-mismatch"),n||await this.beforeStateQueue.runMiddleware(t),this.queue(async()=>{await this.directlySetCurrentUser(t),this.notifyAuthListeners()})}async signOut(){return at(this.app)?Promise.reject(Kt(this)):(await this.beforeStateQueue.runMiddleware(null),(this.redirectPersistenceManager||this._popupRedirectResolver)&&await this._setRedirectUser(null),this._updateCurrentUser(null,!0))}setPersistence(t){return at(this.app)?Promise.reject(Kt(this)):this.queue(async()=>{await this.assertedPersistence.setPersistence(ct(t))})}_getRecaptchaConfig(){return this.tenantId==null?this._agentRecaptchaConfig:this._tenantRecaptchaConfigs[this.tenantId]}async validatePassword(t){this._getPasswordPolicyInternal()||await this._updatePasswordPolicy();const n=this._getPasswordPolicyInternal();return n.schemaVersion!==this.EXPECTED_PASSWORD_POLICY_SCHEMA_VERSION?Promise.reject(this._errorFactory.create("unsupported-password-policy-schema-version",{})):n.validatePassword(t)}_getPasswordPolicyInternal(){return this.tenantId===null?this._projectPasswordPolicy:this._tenantPasswordPolicies[this.tenantId]}async _updatePasswordPolicy(){const t=await a0(this),n=new u0(t);this.tenantId===null?this._projectPasswordPolicy=n:this._tenantPasswordPolicies[this.tenantId]=n}_getPersistence(){return this.assertedPersistence.persistence.type}_updateErrorMap(t){this._errorFactory=new yi("auth","Firebase",t())}onAuthStateChanged(t,n,r){return this.registerStateListener(this.authStateSubscription,t,n,r)}beforeAuthStateChanged(t,n){return this.beforeStateQueue.pushCallback(t,n)}onIdTokenChanged(t,n,r){return this.registerStateListener(this.idTokenSubscription,t,n,r)}authStateReady(){return new Promise((t,n)=>{if(this.currentUser)t();else{const r=this.onAuthStateChanged(()=>{r(),t()},n)}})}async revokeAccessToken(t){if(this.currentUser){const n=await this.currentUser.getIdToken(),r={providerId:"apple.com",tokenType:"ACCESS_TOKEN",token:t,idToken:n};this.tenantId!=null&&(r.tenantId=this.tenantId),await r0(this,r)}}toJSON(){var t;return{apiKey:this.config.apiKey,authDomain:this.config.authDomain,appName:this.name,currentUser:(t=this._currentUser)===null||t===void 0?void 0:t.toJSON()}}async _setRedirectUser(t,n){const r=await this.getOrInitRedirectPersistenceManager(n);return t===null?r.removeCurrentUser():r.setCurrentUser(t)}async getOrInitRedirectPersistenceManager(t){if(!this.redirectPersistenceManager){const n=t&&ct(t)||this._popupRedirectResolver;x(n,this,"argument-error"),this.redirectPersistenceManager=await Qn.create(this,[ct(n._redirectPersistence)],"redirectUser"),this.redirectUser=await this.redirectPersistenceManager.getCurrentUser()}return this.redirectPersistenceManager}async _redirectUserForId(t){var n,r;return this._isInitialized&&await this.queue(async()=>{}),((n=this._currentUser)===null||n===void 0?void 0:n._redirectEventId)===t?this._currentUser:((r=this.redirectUser)===null||r===void 0?void 0:r._redirectEventId)===t?this.redirectUser:null}async _persistUserIfCurrent(t){if(t===this.currentUser)return this.queue(async()=>this.directlySetCurrentUser(t))}_notifyListenersIfCurrent(t){t===this.currentUser&&this.notifyAuthListeners()}_key(){return`${this.config.authDomain}:${this.config.apiKey}:${this.name}`}_startProactiveRefresh(){this.isProactiveRefreshEnabled=!0,this.currentUser&&this._currentUser._startProactiveRefresh()}_stopProactiveRefresh(){this.isProactiveRefreshEnabled=!1,this.currentUser&&this._currentUser._stopProactiveRefresh()}get _currentUser(){return this.currentUser}notifyAuthListeners(){var t,n;if(!this._isInitialized)return;this.idTokenSubscription.next(this.currentUser);const r=(n=(t=this.currentUser)===null||t===void 0?void 0:t.uid)!==null&&n!==void 0?n:null;this.lastNotifiedUid!==r&&(this.lastNotifiedUid=r,this.authStateSubscription.next(this.currentUser))}registerStateListener(t,n,r,i){if(this._deleted)return()=>{};const s=typeof n=="function"?n:n.next.bind(n);let o=!1;const a=this._isInitialized?Promise.resolve():this._initializationPromise;if(x(a,this,"internal-error"),a.then(()=>{o||s(this.currentUser)}),typeof n=="function"){const l=t.addObserver(n,r,i);return()=>{o=!0,l()}}else{const l=t.addObserver(n);return()=>{o=!0,l()}}}async directlySetCurrentUser(t){this.currentUser&&this.currentUser!==t&&this._currentUser._stopProactiveRefresh(),t&&this.isProactiveRefreshEnabled&&t._startProactiveRefresh(),this.currentUser=t,t?await this.assertedPersistence.setCurrentUser(t):await this.assertedPersistence.removeCurrentUser()}queue(t){return this.operations=this.operations.then(t,t),this.operations}get assertedPersistence(){return x(this.persistenceManager,this,"internal-error"),this.persistenceManager}_logFramework(t){!t||this.frameworks.includes(t)||(this.frameworks.push(t),this.frameworks.sort(),this.clientVersion=jp(this.config.clientPlatform,this._getFrameworks()))}_getFrameworks(){return this.frameworks}async _getAdditionalHeaders(){var t;const n={"X-Client-Version":this.clientVersion};this.app.options.appId&&(n["X-Firebase-gmpid"]=this.app.options.appId);const r=await((t=this.heartbeatServiceProvider.getImmediate({optional:!0}))===null||t===void 0?void 0:t.getHeartbeatsHeader());r&&(n["X-Firebase-Client"]=r);const i=await this._getAppCheckToken();return i&&(n["X-Firebase-AppCheck"]=i),n}async _getAppCheckToken(){var t;const n=await((t=this.appCheckServiceProvider.getImmediate({optional:!0}))===null||t===void 0?void 0:t.getToken());return n!=null&&n.error&&z_(`Error while retrieving App Check token: ${n.error}`),n==null?void 0:n.token}}function fr(e){return Te(e)}class sd{constructor(t){this.auth=t,this.observer=null,this.addObserver=Pw(n=>this.observer=n)}get next(){return x(this.observer,this.auth,"internal-error"),this.observer.next.bind(this.observer)}}/**
819 * @license
820 * Copyright 2020 Google LLC
821 *
822 * Licensed under the Apache License, Version 2.0 (the "License");
823 * you may not use this file except in compliance with the License.
824 * You may obtain a copy of the License at
825 *
826 *   http://www.apache.org/licenses/LICENSE-2.0
827 *
828 * Unless required by applicable law or agreed to in writing, software
829 * distributed under the License is distributed on an "AS IS" BASIS,
830 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
831 * See the License for the specific language governing permissions and
832 * limitations under the License.
833 */let co={async loadJS(){throw new Error("Unable to load external scripts")},recaptchaV2Script:"",recaptchaEnterpriseScript:"",gapiScript:""};function d0(e){co=e}function Fp(e){return co.loadJS(e)}function h0(){return co.recaptchaEnterpriseScript}function f0(){return co.gapiScript}function p0(e){return`__${e}${Math.floor(Math.random()*1e6)}`}const g0="recaptcha-enterprise",m0="NO_RECAPTCHA";class y0{constructor(t){this.type=g0,this.auth=fr(t)}async verify(t="verify",n=!1){async function r(s){if(!n){if(s.tenantId==null&&s._agentRecaptchaConfig!=null)return s._agentRecaptchaConfig.siteKey;if(s.tenantId!=null&&s._tenantRecaptchaConfigs[s.tenantId]!==void 0)return s._tenantRecaptchaConfigs[s.tenantId].siteKey}return new Promise(async(o,a)=>{Q_(s,{clientType:"CLIENT_TYPE_WEB",version:"RECAPTCHA_ENTERPRISE"}).then(l=>{if(l.recaptchaKey===void 0)a(new Error("recaptcha Enterprise site key undefined"));else{const u=new K_(l);return s.tenantId==null?s._agentRecaptchaConfig=u:s._tenantRecaptchaConfigs[s.tenantId]=u,o(u.siteKey)}}).catch(l=>{a(l)})})}function i(s,o,a){const l=window.grecaptcha;ed(l)?l.enterprise.ready(()=>{l.enterprise.execute(s,{action:t}).then(u=>{o(u)}).catch(()=>{o(m0)})}):a(Error("No reCAPTCHA enterprise script loaded."))}return new Promise((s,o)=>{r(this.auth).then(a=>{if(!n&&ed(window.grecaptcha))i(a,s,o);else{if(typeof window>"u"){o(new Error("RecaptchaVerifier is only supported in browser"));return}let l=h0();l.length!==0&&(l+=a),Fp(l).then(()=>{i(a,s,o)}).catch(u=>{o(u)})}}).catch(a=>{o(a)})})}}async function od(e,t,n,r=!1){const i=new y0(e);let s;try{s=await i.verify(n)}catch{s=await i.verify(n,!0)}const o=Object.assign({},t);return r?Object.assign(o,{captchaResp:s}):Object.assign(o,{captchaResponse:s}),Object.assign(o,{clientType:"CLIENT_TYPE_WEB"}),Object.assign(o,{recaptchaVersion:"RECAPTCHA_ENTERPRISE"}),o}async function ad(e,t,n,r){var i;if(!((i=e._getRecaptchaConfig())===null||i===void 0)&&i.isProviderEnabled("EMAIL_PASSWORD_PROVIDER")){const s=await od(e,t,n,n==="getOobCode");return r(e,s)}else return r(e,t).catch(async s=>{if(s.code==="auth/missing-recaptcha-token"){console.log(`${n} is protected by reCAPTCHA Enterprise for this project. Automatically triggering the reCAPTCHA flow and restarting the flow.`);const o=await od(e,t,n,n==="getOobCode");return r(e,o)}else return Promise.reject(s)})}/**
834 * @license
835 * Copyright 2020 Google LLC
836 *
837 * Licensed under the Apache License, Version 2.0 (the "License");
838 * you may not use this file except in compliance with the License.
839 * You may obtain a copy of the License at
840 *
841 *   http://www.apache.org/licenses/LICENSE-2.0
842 *
843 * Unless required by applicable law or agreed to in writing, software
844 * distributed under the License is distributed on an "AS IS" BASIS,
845 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
846 * See the License for the specific language governing permissions and
847 * limitations under the License.
848 */function v0(e,t){const n=au(e,"auth");if(n.isInitialized()){const i=n.getImmediate(),s=n.getOptions();if(Ds(s,t??{}))return i;qe(i,"already-initialized")}return n.initialize({options:t})}function w0(e,t){const n=(t==null?void 0:t.persistence)||[],r=(Array.isArray(n)?n:[n]).map(ct);t!=null&&t.errorMap&&e._updateErrorMap(t.errorMap),e._initializeWithPersistence(r,t==null?void 0:t.popupRedirectResolver)}function _0(e,t,n){const r=fr(e);x(r._canInitEmulator,r,"emulator-config-failed"),x(/^https?:\/\//.test(t),r,"invalid-emulator-scheme");const i=!1,s=zp(t),{host:o,port:a}=k0(t),l=a===null?"":`:${a}`;r.config.emulator={url:`${s}//${o}${l}/`},r.settings.appVerificationDisabledForTesting=!0,r.emulatorConfig=Object.freeze({host:o,port:a,protocol:s.replace(":",""),options:Object.freeze({disableWarnings:i})}),S0()}function zp(e){const t=e.indexOf(":");
848return t<0?"":e.substr(0,t+1)}function k0(e){const t=zp(e),n=/(\/\/)?([^?#/]+)/.exec(e.substr(t.length));if(!n)return{host:"",port:null};const r=n[2].split("@").pop()||"",i=/^(\[[^\]]+\])(:|$)/.exec(r);if(i){const s=i[1];return{host:s,port:ld(r.substr(s.length+1))}}else{const[s,o]=r.split(":");return{host:s,port:ld(o)}}}function ld(e){if(!e)return null;const t=Number(e);return isNaN(t)?null:t}function S0(){function e(){const t=document.createElement("p"),n=t.style;t.innerText="Running in emulator mode. Do not use with production credentials.",n.position="fixed",n.width="100%",n.backgroundColor="#ffffff",n.border=".1em solid #000000",n.color="#b50000",n.bottom="0px",n.left="0px",n.margin="0px",n.zIndex="10000",n.textAlign="center",t.classList.add("firebase-emulator-warning"),document.body.appendChild(t)}typeof console<"u"&&typeof console.info=="function"&&console.info("WARNING: You are using the Auth Emulator, which is intended for local testing only.  Do not use with production credentials."),typeof window<"u"&&typeof document<"u"&&(document.readyState==="loading"?window.addEventListener("DOMContentLoaded",e):e())}/**
849 * @license
850 * Copyright 2020 Google LLC
851 *
852 * Licensed under the Apache License, Version 2.0 (the "License");
853 * you may not use this file except in compliance with the License.
854 * You may obtain a copy of the License at
855 *
856 *   http://www.apache.org/licenses/LICENSE-2.0
857 *
858 * Unless required by applicable law or agreed to in writing, software
859 * distributed under the License is distributed on an "AS IS" BASIS,
860 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
861 * See the License for the specific language governing permissions and
862 * limitations under the License.
863 */class fu{constructor(t,n){this.providerId=t,this.signInMethod=n}toJSON(){return lt("not implemented")}_getIdTokenResponse(t){return lt("not implemented")}_linkToIdToken(t,n){return lt("not implemented")}_getReauthenticationResolver(t){return lt("not implemented")}}async function E0(e,t){return tn(e,"POST","/v1/accounts:signUp",t)}/**
864 * @license
865 * Copyright 2020 Google LLC
866 *
867 * Licensed under the Apache License, Version 2.0 (the "License");
868 * you may not use this file except in compliance with the License.
869 * You may obtain a copy of the License at
870 *
871 *   http://www.apache.org/licenses/LICENSE-2.0
872 *
873 * Unless required by applicable law or agreed to in writing, software
874 * distributed under the License is distributed on an "AS IS" BASIS,
875 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
876 * See the License for the specific language governing permissions and
877 * limitations under the License.
878 */async function b0(e,t){return uo(e,"POST","/v1/accounts:signInWithPassword",Tn(e,t))}/**
879 * @license
880 * Copyright 2020 Google LLC
881 *
882 * Licensed under the Apache License, Version 2.0 (the "License");
883 * you may not use this file except in compliance with the License.
884 * You may obtain a copy of the License at
885 *
886 *   http://www.apache.org/licenses/LICENSE-2.0
887 *
888 * Unless required by applicable law or agreed to in writing, software
889 * distributed under the License is distributed on an "AS IS" BASIS,
890 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
891 * See the License for the specific language governing permissions and
892 * limitations under the License.
893 */async function T0(e,t){return uo(e,"POST","/v1/accounts:signInWithEmailLink",Tn(e,t))}async function C0(e,t){return uo(e,"POST","/v1/accounts:signInWithEmailLink",Tn(e,t))}/**
894 * @license
895 * Copyright 2020 Google LLC
896 *
897 * Licensed under the Apache License, Version 2.0 (the "License");
898 * you may not use this file except in compliance with the License.
899 * You may obtain a copy of the License at
900 *
901 *   http://www.apache.org/licenses/LICENSE-2.0
902 *
903 * Unless required by applicable law or agreed to in writing, software
904 * distributed under the License is distributed on an "AS IS" BASIS,
905 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
906 * See the License for the specific language governing permissions and
907 * limitations under the License.
908 */class di extends fu{constructor(t,n,r,i=null){super("password",r),this._email=t,this._password=n,this._tenantId=i}static _fromEmailAndPassword(t,n){return new di(t,n,"password")}static _fromEmailAndCode(t,n,r=null){return new di(t,n,"emailLink",r)}toJSON(){return{email:this._email,password:this._password,signInMethod:this.signInMethod,tenantId:this._tenantId}}static fromJSON(t){const n=typeof t=="string"?JSON.parse(t):t;if(n!=null&&n.email&&(n!=null&&n.password)){if(n.signInMethod==="password")return this._fromEmailAndPassword(n.email,n.password);if(n.signInMethod==="emailLink")return this._fromEmailAndCode(n.email,n.password,n.tenantId)}return null}async _getIdTokenResponse(t){switch(this.signInMethod){case"password":const n={returnSecureToken:!0,email:this._email,password:this._password,clientType:"CLIENT_TYPE_WEB"};return ad(t,n,"signInWithPassword",b0);case"emailLink":return T0(t,{email:this._email,oobCode:this._password});default:qe(t,"internal-error")}}async _linkToIdToken(t,n){switch(this.signInMethod){case"password":const r={idToken:n,returnSecureToken:!0,email:this._email,password:this._password,clientType:"CLIENT_TYPE_WEB"};return ad(t,r,"signUpPassword",E0);case"emailLink":return C0(t,{idToken:n,email:this._email,oobCode:this._password});default:qe(t,"internal-error")}}_getReauthenticationResolver(t){return this._getIdTokenResponse(t)}}/**
909 * @license
910 * Copyright 2020 Google LLC
911 *
912 * Licensed under the Apache License, Version 2.0 (the "License");
913 * you may not use this file except in compliance with the License.
914 * You may obtain a copy of the License at
915 *
916 *   http://www.apache.org/licenses/LICENSE-2.0
917 *
918 * Unless required by applicable law or agreed to in writing, software
919 * distributed under the License is distributed on an "AS IS" BASIS,
920 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
921 * See the License for the specific language governing permissions and
922 * limitations under the License.
923 */async function Yn(e,t){return uo(e,"POST","/v1/accounts:signInWithIdp",Tn(e,t))}/**
924 * @license
925 * Copyright 2020 Google LLC
926 *
927 * Licensed under the Apache License, Version 2.0 (the "License");
928 * you may not use this file except in compliance with the License.
929 * You may obtain a copy of the License at
930 *
931 *   http://www.apache.org/licenses/LICENSE-2.0
932 *
933 * Unless required by applicable law or agreed to in writing, software
934 * distributed under the License is distributed on an "AS IS" BASIS,
935 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
936 * See the License for the specific language governing permissions and
937 * limitations under the License.
938 */const I0="http://localhost";class kn extends fu{constructor(){super(...arguments),this.pendingToken=null}static _fromParams(t){const n=new kn(t.providerId,t.signInMethod);return t.idToken||t.accessToken?(t.idToken&&(n.idToken=t.idToken),t.accessToken&&(n.accessToken=t.accessToken),t.nonce&&!t.pendingToken&&(n.nonce=t.nonce),t.pendingToken&&(n.pendingToken=t.pendingToken)):t.oauthToken&&t.oauthTokenSecret?(n.accessToken=t.oauthToken,n.secret=t.oauthTokenSecret):qe("argument-error"),n}toJSON(){return{idToken:this.idToken,accessToken:this.accessToken,secret:this.secret,n
938once:this.nonce,pendingToken:this.pendingToken,providerId:this.providerId,signInMethod:this.signInMethod}}static fromJSON(t){const n=typeof t=="string"?JSON.parse(t):t,{providerId:r,signInMethod:i}=n,s=lu(n,["providerId","signInMethod"]);if(!r||!i)return null;const o=new kn(r,i);return o.idToken=s.idToken||void 0,o.accessToken=s.accessToken||void 0,o.secret=s.secret,o.nonce=s.nonce,o.pendingToken=s.pendingToken||null,o}_getIdTokenResponse(t){const n=this.buildRequest();return Yn(t,n)}_linkToIdToken(t,n){const r=this.buildRequest();return r.idToken=n,Yn(t,r)}_getReauthenticationResolver(t){const n=this.buildRequest();return n.autoCreate=!1,Yn(t,n)}buildRequest(){const t={requestUri:I0,returnSecureToken:!0};if(this.pendingToken)t.pendingToken=this.pendingToken;else{const n={};this.idToken&&(n.id_token=this.idToken),this.accessToken&&(n.access_token=this.accessToken),this.secret&&(n.oauth_token_secret=this.secret),n.providerId=this.providerId,this.nonce&&!this.pendingToken&&(n.nonce=this.nonce),t.postBody=vi(n)}return t}}/**
939 * @license
940 * Copyright 2020 Google LLC
941 *
942 * Licensed under the Apache License, Version 2.0 (the "License");
943 * you may not use this file except in compliance with the License.
944 * You may obtain a copy of the License at
945 *
946 *   http://www.apache.org/licenses/LICENSE-2.0
947 *
948 * Unless required by applicable law or agreed to in writing, software
949 * distributed under the License is distributed on an "AS IS" BASIS,
950 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
951 * See the License for the specific language governing permissions and
952 * limitations under the License.
953 */function R0(e){switch(e){case"recoverEmail":return"RECOVER_EMAIL";case"resetPassword":return"PASSWORD_RESET";case"signIn":return"EMAIL_SIGNIN";case"verifyEmail":return"VERIFY_EMAIL";case"verifyAndChangeEmail":return"VERIFY_AND_CHANGE_EMAIL";case"revertSecondFactorAddition":return"REVERT_SECOND_FACTOR_ADDITION";default:return null}}function P0(e){const t=Or(Lr(e)).link,n=t?Or(Lr(t)).deep_link_id:null,r=Or(Lr(e)).deep_link_id;return(r?Or(Lr(r)).link:null)||r||n||t||e}class pu{constructor(t){var n,r,i,s,o,a;const l=Or(Lr(t)),u=(n=l.apiKey)!==null&&n!==void 0?n:null,h=(r=l.oobCode)!==null&&r!==void 0?r:null,c=R0((i=l.mode)!==null&&i!==void 0?i:null);x(u&&h&&c,"argument-error"),this.apiKey=u,this.operation=c,this.code=h,this.continueUrl=(s=l.continueUrl)!==null&&s!==void 0?s:null,this.languageCode=(o=l.languageCode)!==null&&o!==void 0?o:null,this.tenantId=(a=l.tenantId)!==null&&a!==void 0?a:null}static parseLink(t){const n=P0(t);try{return new pu(n)}catch{return null}}}/**
954 * @license
955 * Copyright 2020 Google LLC
956 *
957 * Licensed under the Apache License, Version 2.0 (the "License");
958 * you may not use this file except in compliance with the License.
959 * You may obtain a copy of the License at
960 *
961 *   http://www.apache.org/licenses/LICENSE-2.0
962 *
963 * Unless required by applicable law or agreed to in writing, software
964 * distributed under the License is distributed on an "AS IS" BASIS,
965 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
966 * See the License for the specific language governing permissions and
967 * limitations under the License.
968 */class pr{constructor(){this.providerId=pr.PROVIDER_ID}static credential(t,n){return di._fromEmailAndPassword(t,n)}static credentialWithLink(t,n){const r=pu.parseLink(n);return x(r,"argument-error"),di._fromEmailAndCode(t,r.code,r.tenantId)}}pr.PROVIDER_ID="password";pr.EMAIL_PASSWORD_SIGN_IN_METHOD="password";pr.EMAIL_LINK_SIGN_IN_METHOD="emailLink";/**
969 * @license
970 * Copyright 2020 Google LLC
971 *
972 * Licensed under the Apache License, Version 2.0 (the "License");
973 * you may not use this file except in compliance with the License.
974 * You may obtain a copy of the License at
975 *
976 *   http://www.apache.org/licenses/LICENSE-2.0
977 *
978 * Unless required by applicable law or agreed to in writing, software
979 * distributed under the License is distributed on an "AS IS" BASIS,
980 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
981 * See the License for the specific language governing permissions and
982 * limitations under the License.
983 */class Bp{constructor(t){this.providerId=t,this.defaultLanguageCode=null,this.customParameters={}}setDefaultLanguage(t){this.defaultLanguageCode=t}setCustomParameters(t){return this.customParameters=t,this}getCustomParameters(){return this.customParameters}}/**
984 * @license
985 * Copyright 2019 Google LLC
986 *
987 * Licensed under the Apache License, Version 2.0 (the "License");
988 * you may not use this file except in compliance with the License.
989 * You may obtain a copy of the License at
990 *
991 *   http://www.apache.org/licenses/LICENSE-2.0
992 *
993 * Unless required by applicable law or agreed to in writing, software
994 * distributed under the License is distributed on an "AS IS" BASIS,
995 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
996 * See the License for the specific language governing permissions and
997 * limitations under the License.
998 */class _i extends Bp{constructor(){super(...arguments),this.scopes=[]}addScope(t){return this.scopes.includes(t)||this.scopes.push(t),this}getScopes(){return[...this.scopes]}}/**
999 * @license
1000 * Copyright 2020 Google LLC
1001 *
1002 * Licensed under the Apache License, Version 2.0 (the "License");
1003 * you may not use this file except in compliance with the License.
1004 * You may obtain a copy of the License at
1005 *
1006 *   http://www.apache.org/licenses/LICENSE-2.0
1007 *
1008 * Unless required by applicable law or agreed to in writing, software
1009 * distributed under the License is distributed on an "AS IS" BASIS,
1010 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1011 * See the License for the specific language governing permissions and
1012 * limitations under the License.
1013 */class Rt extends _i{constructor(){super("facebook.com")}static credential(t){return kn._fromParams({providerId:Rt.PROVIDER_ID,signInMethod:Rt.FACEBOOK_SIGN_IN_METHOD,accessToken:t})}static credentialFromResult(t){return Rt.credentialFromTaggedObject(t)}static credentialFromError(t){return Rt.credentialFromTaggedObject(t.customData||{})}static credentialFromTaggedObject({_tokenResponse:t}){if(!t||!("oauthAccessToken"in t)||!t.oauthAccessToken)return null;try{return Rt.credential(t.oauthAccessToken)}catch{return null}}}Rt.FACEBOOK_SIGN_IN_METHOD="facebook.com";Rt.PROVIDER_ID="facebook.com";/**
1014 * @license
1015 * Copyright 2020 Google LLC
1016 *
1017 * Licensed under the Apache License, Version 2.0 (the "License");
1018 * you may not use this file except in compliance with the License.
1019 * You may obtain a copy of the License at
1020 *
1021 *   http://www.apache.org/licenses/LICENSE-2.0
1022 *
1023 * Unless required by applicable law or agreed to in writing, software
1024 * distributed under the License is distributed on an "AS IS" BASIS,
1025 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1026 * See the License for the specific language governing permissions and
1027 * limitations under the License.
1028 */class Pt extends _i{constructor(){super("google.com"),this.addScope("profile")}static credential(t,n){return kn._fromParams({providerId:Pt.PROVIDER_ID,signInMethod:Pt.GOOGLE_SIGN_IN_METHOD,idToken:t,accessToken:n})}static credentialFromResult(t){return Pt.credentialFromTaggedObject(t)}static credentialFromError(t){return Pt.credentialFromTaggedObject(t.customData||{})}static credentialFromTaggedObject({_tokenResponse:t}){if(!t)return null;const{oauthIdToken:n,oauthAccessToken:r}=t;if(!n&&!r)return null;try{return Pt.credential(n,r)}catch{return null}}}Pt.GOOGLE_SIGN_IN_METHOD="google.com";Pt.PROVIDER_ID="google.com";/**
1029 * @license
1030 * Copyright 2020 Google LLC
1031 *
1032 * Licensed under the Apache License, Version 2.0 (the "License");
1033 * you may not use this file except in compliance with the License.
1034 * You may obtain a copy of the License at
1035 *
1036 *   http://www.apache.org/licenses/LICENSE-2.0
1037 *
1038 * Unless required by applicable law or agreed to in writing, software
1039 * distributed under the License is distributed on an "AS IS" BASIS,
1040 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1041 * See the License for the specific language governing permissions and
1042 * limitations under the License.
1043 */class xt extends _i{constructor(){super("github.com")}static credential(t){return kn._fromParams({providerId:xt.PROVIDER_ID,signInMethod:xt.GITHUB_SIGN_IN_METHOD,accessToken:t})}static credentialFromResult(t){return xt.credentialFromTaggedObject(t)}static credentialFromError(t){return xt.credentialFromTaggedObject(t.customData||{})}static credentialFromTaggedObject({_tokenResponse:t}){if(!t||!("oauthAccessToken"in t)||!t.oauthAccessToken)return null;try{return xt.credential(t.oauthAccessToken)}catch{return null}}}xt.GITHUB_SIGN_IN_METHOD="github.com";
1043xt.PROVIDER_ID="github.com";/**
1044 * @license
1045 * Copyright 2020 Google LLC
1046 *
1047 * Licensed under the Apache License, Version 2.0 (the "License");
1048 * you may not use this file except in compliance with the License.
1049 * You may obtain a copy of the License at
1050 *
1051 *   http://www.apache.org/licenses/LICENSE-2.0
1052 *
1053 * Unless required by applicable law or agreed to in writing, software
1054 * distributed under the License is distributed on an "AS IS" BASIS,
1055 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1056 * See the License for the specific language governing permissions and
1057 * limitations under the License.
1058 */class Ot extends _i{constructor(){super("twitter.com")}static credential(t,n){return kn._fromParams({providerId:Ot.PROVIDER_ID,signInMethod:Ot.TWITTER_SIGN_IN_METHOD,oauthToken:t,oauthTokenSecret:n})}static credentialFromResult(t){return Ot.credentialFromTaggedObject(t)}static credentialFromError(t){return Ot.credentialFromTaggedObject(t.customData||{})}static credentialFromTaggedObject({_tokenResponse:t}){if(!t)return null;const{oauthAccessToken:n,oauthTokenSecret:r}=t;if(!n||!r)return null;try{return Ot.credential(n,r)}catch{return null}}}Ot.TWITTER_SIGN_IN_METHOD="twitter.com";Ot.PROVIDER_ID="twitter.com";/**
1059 * @license
1060 * Copyright 2020 Google LLC
1061 *
1062 * Licensed under the Apache License, Version 2.0 (the "License");
1063 * you may not use this file except in compliance with the License.
1064 * You may obtain a copy of the License at
1065 *
1066 *   http://www.apache.org/licenses/LICENSE-2.0
1067 *
1068 * Unless required by applicable law or agreed to in writing, software
1069 * distributed under the License is distributed on an "AS IS" BASIS,
1070 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1071 * See the License for the specific language governing permissions and
1072 * limitations under the License.
1073 */class or{constructor(t){this.user=t.user,this.providerId=t.providerId,this._tokenResponse=t._tokenResponse,this.operationType=t.operationType}static async _fromIdTokenResponse(t,n,r,i=!1){const s=await ut._fromIdTokenResponse(t,r,i),o=ud(r);return new or({user:s,providerId:o,_tokenResponse:r,operationType:n})}static async _forOperation(t,n,r){await t._updateTokensIfNecessary(r,!0);const i=ud(r);return new or({user:t,providerId:i,_tokenResponse:r,operationType:n})}}function ud(e){return e.providerId?e.providerId:"phoneNumber"in e?"phone":null}/**
1074 * @license
1075 * Copyright 2020 Google LLC
1076 *
1077 * Licensed under the Apache License, Version 2.0 (the "License");
1078 * you may not use this file except in compliance with the License.
1079 * You may obtain a copy of the License at
1080 *
1081 *   http://www.apache.org/licenses/LICENSE-2.0
1082 *
1083 * Unless required by applicable law or agreed to in writing, software
1084 * distributed under the License is distributed on an "AS IS" BASIS,
1085 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1086 * See the License for the specific language governing permissions and
1087 * limitations under the License.
1088 */class Fs extends kt{constructor(t,n,r,i){var s;super(n.code,n.message),this.operationType=r,this.user=i,Object.setPrototypeOf(this,Fs.prototype),this.customData={appName:t.name,tenantId:(s=t.tenantId)!==null&&s!==void 0?s:void 0,_serverResponse:n.customData._serverResponse,operationType:r}}static _fromErrorAndOperation(t,n,r,i){return new Fs(t,n,r,i)}}function Wp(e,t,n,r){return(t==="reauthenticate"?n._getReauthenticationResolver(e):n._getIdTokenResponse(e)).catch(s=>{throw s.code==="auth/multi-factor-auth-required"?Fs._fromErrorAndOperation(e,s,t,r):s})}async function x0(e,t,n=!1){const r=await ci(e,t._linkToIdToken(e.auth,await e.getIdToken()),n);return or._forOperation(e,"link",r)}/**
1089 * @license
1090 * Copyright 2019 Google LLC
1091 *
1092 * Licensed under the Apache License, Version 2.0 (the "License");
1093 * you may not use this file except in compliance with the License.
1094 * You may obtain a copy of the License at
1095 *
1096 *   http://www.apache.org/licenses/LICENSE-2.0
1097 *
1098 * Unless required by applicable law or agreed to in writing, software
1099 * distributed under the License is distributed on an "AS IS" BASIS,
1100 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1101 * See the License for the specific language governing permissions and
1102 * limitations under the License.
1103 */async function O0(e,t,n=!1){const{auth:r}=e;if(at(r.app))return Promise.reject(Kt(r));const i="reauthenticate";try{const s=await ci(e,Wp(r,i,t,e),n);x(s.idToken,r,"internal-error");const o=du(s.idToken);x(o,r,"internal-error");const{sub:a}=o;return x(e.uid===a,r,"user-mismatch"),or._forOperation(e,i,s)}catch(s){throw(s==null?void 0:s.code)==="auth/user-not-found"&&qe(r,"user-mismatch"),s}}/**
1104 * @license
1105 * Copyright 2020 Google LLC
1106 *
1107 * Licensed under the Apache License, Version 2.0 (the "License");
1108 * you may not use this file except in compliance with the License.
1109 * You may obtain a copy of the License at
1110 *
1111 *   http://www.apache.org/licenses/LICENSE-2.0
1112 *
1113 * Unless required by applicable law or agreed to in writing, software
1114 * distributed under the License is distributed on an "AS IS" BASIS,
1115 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1116 * See the License for the specific language governing permissions and
1117 * limitations under the License.
1118 */async function $p(e,t,n=!1){if(at(e.app))return Promise.reject(Kt(e));const r="signIn",i=await Wp(e,r,t),s=await or._fromIdTokenResponse(e,r,i);return n||await e._updateCurrentUser(s.user),s}async function L0(e,t){return $p(fr(e),t)}/**
1119 * @license
1120 * Copyright 2020 Google LLC
1121 *
1122 * Licensed under the Apache License, Version 2.0 (the "License");
1123 * you may not use this file except in compliance with the License.
1124 * You may obtain a copy of the License at
1125 *
1126 *   http://www.apache.org/licenses/LICENSE-2.0
1127 *
1128 * Unless required by applicable law or agreed to in writing, software
1129 * distributed under the License is distributed on an "AS IS" BASIS,
1130 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1131 * See the License for the specific language governing permissions and
1132 * limitations under the License.
1133 */async function N0(e){const t=fr(e);t._getPasswordPolicyInternal()&&await t._updatePasswordPolicy()}function hb(e,t,n){return at(e.app)?Promise.reject(Kt(e)):L0(Te(e),pr.credential(t,n)).catch(async r=>{throw r.code==="auth/password-does-not-meet-requirements"&&N0(e),r})}function A0(e,t,n,r){return Te(e).onIdTokenChanged(t,n,r)}function D0(e,t,n){return Te(e).beforeAuthStateChanged(t,n)}function U0(e,t,n,r){return Te(e).onAuthStateChanged(t,n,r)}function M0(e){return Te(e).signOut()}const zs="__sak";/**
1134 * @license
1135 * Copyright 2019 Google LLC
1136 *
1137 * Licensed under the Apache License, Version 2.0 (the "License");
1138 * you may not use this file except in compliance with the License.
1139 * You may obtain a copy of the License at
1140 *
1141 *   http://www.apache.org/licenses/LICENSE-2.0
1142 *
1143 * Unless required by applicable law or agreed to in writing, software
1144 * distributed under the License is distributed on an "AS IS" BASIS,
1145 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1146 * See the License for the specific language governing permissions and
1147 * limitations under the License.
1148 */class Vp{constructor(t,n){this.storageRetriever=t,this.type=n}_isAvailable(){try{return this.storage?(this.storage.setItem(zs,"1"),this.storage.removeItem(zs),Promise.resolve(!0)):Promise.resolve(!1)}catch{return Promise.resolve(!1)}}_set(t,n){return this.storage.setItem(t,JSON.stringify(n)),Promise.resolve()}_get(t){const n=this.storage.getItem(t);return Promise.resolve(n?JSON.parse(n):null)}_remove(t){return this.storage.removeItem(t),Promise.resolve()}get storage(){return this.storageRetriever()}}/**
1149 * @license
1150 * Copyright 2020 Google LLC
1151 *
1152 * Licensed under the Apache License, Version 2.0 (the "License");
1153 * you may not use this file except in compliance with the License.
1154 * You may obtain a copy of the License at
1155 *
1156 *   http://www.apache.org/licenses/LICENSE-2.0
1157 *
1158 * Unless required by applicable law or agreed to in writing, software
1159 * distributed under the License is distributed on an "AS IS" BASIS,
1160 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1161 * See the License for the specific language governing permissions and
1162 * limitations under the License.
1163 */const j0=1e3,F0=10;class Hp extends Vp{constructor(){super(()=>window.localStorage,"LOCAL"),this.boundEventHandler=(t,n)=>this.onStorageEvent(t,n),this.listeners={},this.localCache={},this.pollTimer=null,this.fallbackToPolling=Mp(),this._shouldAllowMigration=!0}forAllChangedKeys(t){for(const n of Object.keys(this.listeners)){const r=this.storage.getItem(n),i=this.localCache[n];r!==i&&t(n,i,r)}}onStorageEvent(t,n=!1){if(!t.key){this.forAllChangedKeys((o,a,l)=>{this.notifyListeners(o,l)});return}const r=t.key;n?this.detachListener():this.stopPolling();const i=()=>{const o=this.storage.getItem(r);!n&&this.localCache[r]===o||this.notifyListeners(r,o)},s=this.storage.getItem(r);s0()&&s!==t.newValue&&t.newValue!==t.oldValue?setTimeout(i,F0):i()}notifyListeners(t,n){this.localCache[t]=n;const r=this.listeners[t];if(r)for(const i of Array.from(r))i(n&&JSON.parse(n))}startPolling(){this.stopPolling(),this.pollTimer=setInterval(()=>{this.forAllChangedKeys((t,n,r)=>{this.onStorageEvent(new StorageEvent("storage",{key:t,oldValue:n,newValue:r}),!0)})},j0)}stopPolling(){this.pollTimer&&(clearInterval(this.pollTimer),this.pollTimer=null)}attachListener(){window.addEventListener("storage",this.boundEventHandler)}detachListener(){window.removeEventListener("storage",this.boundEventHandler)}_addListener(t,n){Object.keys(this.listeners).length===0&&(this.fallbackToPolling?this.startPolling():this.attachListener()),this.listeners[t]||(this.listeners[t]=new Set,this.localCache[t]=this.storage.getItem(t)),this.listeners[t].add(n)}_removeListener(t,n){this.listeners[t]&&(this.listeners[t].delete(n),this.listeners[t].size===0&&delete this.listeners[t]),Object.keys(this.listeners).length===0&&(this.detachListener(),this.stopPolling())}async _set(t,n){await super._set(t,n),this.localCache[t]=JSON.stringify(n)}async _get(t){const n=await super._get(t);return this.localCache[t]=JSON.stringify(n),n}async _remove(t){await super._remove(t),delete this.localCache[t]}}Hp.type="LOCAL";const z0=Hp;/**
1164 * @license
1165 * Copyright 2020 Google LLC
1166 *
1167 * Licensed under the Apache License, Version 2.0 (the "License");
1168 * you may not use this file except in compliance with the License.
1169 * You may obtain a copy of the License at
1170 *
1171 *   http://www.apache.org/licenses/LICENSE-2.0
1172 *
1173 * Unless required by applicable law or agreed to in writing, software
1174 * distributed under the License is distributed on an "AS IS" BASIS,
1175 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1176 * See the License for the specific language governing permissions and
1177 * limitations under the License.
1178 */class Gp extends Vp{constructor(){super(()=>window.sessionStorage,"SESSION")}_addListener(t,n){}_removeListener(t,n){}}Gp.type="SESSION";const qp=Gp;/**
1179 * @license
1180 * Copyright 2019 Google LLC
1181 *
1182 * Licensed under the Apache License, Version 2.0 (the "License");
1183 * you may not use this file except in compliance with the License.
1184 * You may obtain a copy of the License at
1185 *
1186 *   http://www.apache.org/licenses/LICENSE-2.0
1187 *
1188 * Unless required by applicable law or agreed to in writing, software
1189 * distributed under the License is distributed on an "AS IS" BASIS,
1190 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1191 * See the License for the specific language governing permissions and
1192 * limitations under the License.
1193 */function B0(e){return Promise.all(e.map(async t=>{try{return{fulfilled:!0,value:await t}}catch(n){return{fulfilled:!1,reason:n}}}))}/**
1194 * @license
1195 * Copyright 2019 Google LLC
1196 *
1197 * Licensed under the Apache License, Version 2.0 (the "License");
1198 * you may not use this file except in compliance with the License.
1199 * You may obtain a copy of the License at
1200 *
1201 *   http://www.apache.org/licenses/LICENSE-2.0
1202 *
1203 * Unless required by applicable law or agreed to in writing, software
1204 * distributed under the License is distributed on an "AS IS" BASIS,
1205 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1206 * See the License for the specific language governing permissions and
1207 * limitations under the License.
1208 */class ho{constructor(t){this.eventTarget=t,this.handlersMap={},this.boundEventHandler=this.handleEvent.bind(this)}static _getInstance(t){const n=this.receivers.find(i=>i.isListeningto(t));if(n)return n;const r=new ho(t);return this.receivers.push(r),r}isListeningto(t){return this.eventTarget===t}async handleEvent(t){const n=t,{eventId:r,eventType:i,data:s}=n.data,o=this.handlersMap[i];if(!(o!=null&&o.size))return;n.ports[0].postMessage({status:"ack",eventId:r,eventType:i});const a=Array.from(o).map(async u=>u(n.origin,s)),l=await B0(a);n.ports[0].postMessage({status:"done",eventId:r,eventType:i,response:l})}_subscribe(t,n){Object.keys(this.handlersMap).length===0&&this.eventTarget.addEventListener("message",this.boundEventHandler),this.handlersMap[t]||(this.handlersMap[t]=new Set),this.handlersMap[t].add(n)}_unsubscribe(t,n){this.handlersMap[t]&&n&&this.handlersMap[t].delete(n),(!n||this.handlersMap[t].size===0)&&delete this.handlersMap[t],Object.keys(this.handlersMap).length===0&&this.eventTarget.removeEventListener("message",this.boundEventHandler)}}ho.receivers=[];/**
1209 * @license
1210 * Copyright 2020 Google LLC
1211 *
1212 * Licensed under the Apache License, Version 2.0 (the "License");
1213 * you may not use this file except in compliance with the License.
1214 * You may obtain a copy of the License at
1215 *
1216 *   http://www.apache.org/licenses/LICENSE-2.0
1217 *
1218 * Unless required by applicable law or agreed to in writing, software
1219 * distributed under the License is distributed on an "AS IS" BASIS,
1220 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1221 * See the License for the specific language governing permissions and
1222 * limitations under the License.
1223 */function gu(e="",t=10){let n="";for(let r=0;r<t;r++)n+=Math.floor(Math.random()*10);return e+n}/**
1224 * @license
1225 * Copyright 2019 Google LLC
1226 *
1227 * Licensed under the Apache License, Version 2.0 (the "License");
1228 * you may not use this file except in compliance with the License.
1229 * You may obtain a copy of the License at
1230 *
1231 *   http://www.apache.org/licenses/LICENSE-2.0
1232 *
1233 * Unless required by applicable law or agreed to in writing, softw
1233are
1234 * distributed under the License is distributed on an "AS IS" BASIS,
1235 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1236 * See the License for the specific language governing permissions and
1237 * limitations under the License.
1238 */class W0{constructor(t){this.target=t,this.handlers=new Set}removeMessageHandler(t){t.messageChannel&&(t.messageChannel.port1.removeEventListener("message",t.onMessage),t.messageChannel.port1.close()),this.handlers.delete(t)}async _send(t,n,r=50){const i=typeof MessageChannel<"u"?new MessageChannel:null;if(!i)throw new Error("connection_unavailable");let s,o;return new Promise((a,l)=>{const u=gu("",20);i.port1.start();const h=setTimeout(()=>{l(new Error("unsupported_event"))},r);o={messageChannel:i,onMessage(c){const g=c;if(g.data.eventId===u)switch(g.data.status){case"ack":clearTimeout(h),s=setTimeout(()=>{l(new Error("timeout"))},3e3);break;case"done":clearTimeout(s),a(g.data.response);break;default:clearTimeout(h),clearTimeout(s),l(new Error("invalid_response"));break}}},this.handlers.add(o),i.port1.addEventListener("message",o.onMessage),this.target.postMessage({eventType:t,eventId:u,data:n},[i.port2])}).finally(()=>{o&&this.removeMessageHandler(o)})}}/**
1239 * @license
1240 * Copyright 2020 Google LLC
1241 *
1242 * Licensed under the Apache License, Version 2.0 (the "License");
1243 * you may not use this file except in compliance with the License.
1244 * You may obtain a copy of the License at
1245 *
1246 *   http://www.apache.org/licenses/LICENSE-2.0
1247 *
1248 * Unless required by applicable law or agreed to in writing, software
1249 * distributed under the License is distributed on an "AS IS" BASIS,
1250 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1251 * See the License for the specific language governing permissions and
1252 * limitations under the License.
1253 */function tt(){return window}function $0(e){tt().location.href=e}/**
1254 * @license
1255 * Copyright 2020 Google LLC.
1256 *
1257 * Licensed under the Apache License, Version 2.0 (the "License");
1258 * you may not use this file except in compliance with the License.
1259 * You may obtain a copy of the License at
1260 *
1261 *   http://www.apache.org/licenses/LICENSE-2.0
1262 *
1263 * Unless required by applicable law or agreed to in writing, software
1264 * distributed under the License is distributed on an "AS IS" BASIS,
1265 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1266 * See the License for the specific language governing permissions and
1267 * limitations under the License.
1268 */function Kp(){return typeof tt().WorkerGlobalScope<"u"&&typeof tt().importScripts=="function"}async function V0(){if(!(navigator!=null&&navigator.serviceWorker))return null;try{return(await navigator.serviceWorker.ready).active}catch{return null}}function H0(){var e;return((e=navigator==null?void 0:navigator.serviceWorker)===null||e===void 0?void 0:e.controller)||null}function G0(){return Kp()?self:null}/**
1269 * @license
1270 * Copyright 2019 Google LLC
1271 *
1272 * Licensed under the Apache License, Version 2.0 (the "License");
1273 * you may not use this file except in compliance with the License.
1274 * You may obtain a copy of the License at
1275 *
1276 *   http://www.apache.org/licenses/LICENSE-2.0
1277 *
1278 * Unless required by applicable law or agreed to in writing, software
1279 * distributed under the License is distributed on an "AS IS" BASIS,
1280 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1281 * See the License for the specific language governing permissions and
1282 * limitations under the License.
1283 */const Qp="firebaseLocalStorageDb",q0=1,Bs="firebaseLocalStorage",Yp="fbase_key";class ki{constructor(t){this.request=t}toPromise(){return new Promise((t,n)=>{this.request.addEventListener("success",()=>{t(this.request.result)}),this.request.addEventListener("error",()=>{n(this.request.error)})})}}function fo(e,t){return e.transaction([Bs],t?"readwrite":"readonly").objectStore(Bs)}function K0(){const e=indexedDB.deleteDatabase(Qp);return new ki(e).toPromise()}function ol(){const e=indexedDB.open(Qp,q0);return new Promise((t,n)=>{e.addEventListener("error",()=>{n(e.error)}),e.addEventListener("upgradeneeded",()=>{const r=e.result;try{r.createObjectStore(Bs,{keyPath:Yp})}catch(i){n(i)}}),e.addEventListener("success",async()=>{const r=e.result;r.objectStoreNames.contains(Bs)?t(r):(r.close(),await K0(),t(await ol()))})})}async function cd(e,t,n){const r=fo(e,!0).put({[Yp]:t,value:n});
1283return new ki(r).toPromise()}async function Q0(e,t){const n=fo(e,!1).get(t),r=await new ki(n).toPromise();return r===void 0?null:r.value}function dd(e,t){const n=fo(e,!0).delete(t);return new ki(n).toPromise()}const Y0=800,X0=3;class Xp{constructor(){this.type="LOCAL",this._shouldAllowMigration=!0,this.listeners={},this.localCache={},this.pollTimer=null,this.pendingWrites=0,this.receiver=null,this.sender=null,this.serviceWorkerReceiverAvailable=!1,this.activeServiceWorker=null,this._workerInitializationPromise=this.initializeServiceWorkerMessaging().then(()=>{},()=>{})}async _openDb(){return this.db?this.db:(this.db=await ol(),this.db)}async _withRetries(t){let n=0;for(;;)try{const r=await this._openDb();return await t(r)}catch(r){if(n++>X0)throw r;this.db&&(this.db.close(),this.db=void 0)}}async initializeServiceWorkerMessaging(){return Kp()?this.initializeReceiver():this.initializeSender()}async initializeReceiver(){this.receiver=ho._getInstance(G0()),this.receiver._subscribe("keyChanged",async(t,n)=>({keyProcessed:(await this._poll()).includes(n.key)}
1283)),this.receiver._subscribe("ping",async(t,n)=>["keyChanged"])}async initializeSender(){var t,n;if(this.activeServiceWorker=await V0(),!this.activeServiceWorker)return;this.sender=new W0(this.activeServiceWorker);const r=await this.sender._send("ping",{},800);r&&!((t=r[0])===null||t===void 0)&&t.fulfilled&&!((n=r[0])===null||n===void 0)&&n.value.includes("keyChanged")&&(this.serviceWorkerReceiverAvailable=!0)}async notifyServiceWorker(t){if(!(!this.sender||!this.activeServiceWorker||H0()!==this.activeServiceWorker))try{await this.sender._send("keyChanged",{key:t},this.serviceWorkerReceiverAvailable?800:50)}catch{}}async _isAvailable(){try{if(!indexedDB)return!1;const t=await ol();return await cd(t,zs,"1"),await dd(t,zs),!0}catch{}return!1}async _withPendingWrite(t){this.pendingWrites++;try{await t()}finally{this.pendingWrites--}}async _set(t,n){return this._withPendingWrite(async()=>(await this._withRetries(r=>cd(r,t,n)),this.localCache[t]=n,this.notifyServiceWorker(t)))}async _get(t){const n=await this._withRetries(r=>Q0(r,t));return this.localCache[t]=n,n}async _remove(t){return this._withPendingWrite(async()=>(await this._withRetries(n=>dd(n,t)),delete this.localCache[t],this.notifyServiceWorker(t)))}async _poll(){const t=await this._withRetries(i=>{const s=fo(i,!1).getAll();return new ki(s).toPromise()});if(!t)return[];if(this.pendingWrites!==0)return[];const n=[],r=new Set;if(t.length!==0)for(const{fbase_key:i,value:s}of t)r.add(i),JSON.stringify(this.localCache[i])!==JSON.stringify(s)&&(this.notifyListeners(i,s),n.push(i));for(const i of Object.keys(this.localCache))this.localCache[i]&&!r.has(i)&&(this.notifyListeners(i,null),n.push(i));return n}notifyListeners(t,n){this.localCache[t]=n;const r=this.listeners[t];if(r)for(const i of Array.from(r))i(n)}startPolling(){this.stopPolling(),this.pollTimer=setInterval(async()=>this._poll(),Y0)}stopPolling(){this.pollTimer&&(clearInterval(this.pollTimer),this.pollTimer=null)}_addListener(t,n){Object.keys(this.listeners).length===0&&this.startPolling(),this.listeners[t]||(this.listeners[t]=new Set,this._get(t)),this.listeners[t].add(n)}_removeListener(t,n){this.listeners[t]&&(this.listeners[t].delete(n),this.listeners[t].size===0&&delete this.listeners[t]),Object.keys(this.listeners).length===0&&this.stopPolling()}}Xp.type="LOCAL";const J0=Xp;new wi(3e4,6e4);/**
1284 * @license
1285 * Copyright 2021 Google LLC
1286 *
1287 * Licensed under the Apache License, Version 2.0 (the "License");
1288 * you may not use this file except in compliance with the License.
1289 * You may obtain a copy of the License at
1290 *
1291 *   http://www.apache.org/licenses/LICENSE-2.0
1292 *
1293 * Unless required by applicable law or agreed to in writing, software
1294 * distributed under the License is distributed on an "AS IS" BASIS,
1295 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1296 * See the License for the specific language governing permissions and
1297 * limitations under the License.
1298 */function Z0(e,t){return t?ct(t):(x(e._popupRedirectResolver,e,"argument-error"),e._popupRedirectResolver)}/**
1299 * @license
1300 * Copyright 2019 Google LLC
1301 *
1302 * Licensed under the Apache License, Version 2.0 (the "License");
1303 * you may not use this file except in compliance with the License.
1304 * You may obtain a copy of the License at
1305 *
1306 *   http://www.apache.org/licenses/LICENSE-2.0
1307 *
1308 * Unless required by applicable law or agreed to in writing, software
1309 * distributed under the License is distributed on an "AS IS" BASIS,
1310 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1311 * See the License for the specific language governing permissions and
1312 * limitations under the License.
1313 */class mu extends fu{constructor(t){super("custom","custom"),this.params=t}_getIdTokenResponse(t){return Yn(t,this._buildIdpRequest())}_linkToIdToken(t,n){return Yn(t,this._buildIdpRequest(n))}_getReauthenticationResolver(t){return Yn(t,this._buildIdpRequest())}_buildIdpRequest(t){const n={requestUri:this.params.requestUri,sessionId:this.params.sessionId,postBody:this.params.postBody,tenantId:this.params.tenantId,pendingToken:this.params.pendingToken,returnSecureToken:!0,returnIdpCredential:!0};return t&&(n.idToken=t),n}}function ek(e){return $p(e.auth,new mu(e),e.bypassAuthState)}function tk(e){const{auth:t,user:n}=e;return x(n,t,"internal-error"),O0(n,new mu(e),e.bypassAuthState)}async function nk(e){const{auth:t,user:n}=e;return x(n,t,"internal-error"),x0(n,new mu(e),e.bypassAuthState)}/**
1314 * @license
1315 * Copyright 2020 Google LLC
1316 *
1317 * Licensed under the Apache License, Version 2.0 (the "License");
1318 * you may not use this file except in compliance with the License.
1319 * You may obtain a copy of the License at
1320 *
1321 *   http://www.apache.org/licenses/LICENSE-2.0
1322 *
1323 * Unless required by applicable law or agreed to in writing, software
1324 * distributed under the License is distributed on an "AS IS" BASIS,
1325 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1326 * See the License for the specific language governing permissions and
1327 * limitations under the License.
1328 */class Jp{constructor(t,n,r,i,s=!1){this.auth=t,this.resolver=r,this.user=i,this.bypassAuthState=s,this.pendingPromise=null,this.eventManager=null,this.filter=Array.isArray(n)?n:[n]}execute(){return new Promise(async(t,n)=>{this.pendingPromise={resolve:t,reject:n};try{this.eventManager=await this.resolver._initialize(this.auth),await this.onExecution(),this.eventManager.registerConsumer(this)}catch(r){this.reject(r)}})}async onAuthEvent(t){const{urlResponse:n,sessionId:r,postBody:i,tenantId:s,error:o,type:a}=t;if(o){this.reject(o);return}const l={auth:this.auth,requestUri:n,sessionId:r,tenantId:s||void 0,postBody:i||void 0,user:this.user,bypassAuthState:this.bypassAuthState};try{this.resolve(await this.getIdpTask(a)(l))}catch(u){this.reject(u)}}onError(t){this.reject(t)}getIdpTask(t){switch(t){case"signInViaPopup":case"signInViaRedirect":return ek;case"linkViaPopup":case"linkViaRedirect":return nk;case"reauthViaPopup":case"reauthViaRedirect":return tk;default:qe(this.auth,"internal-error")}}resolve(t){vt(this.pendingPromise,"Pending promise was never set"),this.pendingPromise.resolve(t),this.unregisterAndCleanUp()}reject(t){vt(this.pendingPromise,"Pending promise was never set"),this.pendingPromise.reject(t),this.unregisterAndCleanUp()}unregisterAndCleanUp(){this.eventManager&&this.eventManager.unregisterConsumer(this),this.pendingPromise=null,this.cleanUp()}}/**
1329 * @license
1330 * Copyright 2020 Google LLC
1331 *
1332 * Licensed under the Apache License, Version 2.0 (the "License");
1333 * you may not use this file except in compliance with the License.
1334 * You may obtain a copy of the License at
1335 *
1336 *   http://www.apache.org/licenses/LICENSE-2.0
1337 *
1338 * Unless required by applicable law or agreed to in writing, software
1339 * distributed under the License is distributed on an "AS IS" BASIS,
1340 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1341 * See the License for the specific language governing permissions and
1342 * limitations under the License.
1343 */const rk=new wi(2e3,1e4);class Bn extends Jp{constructor(t,n,r,i,s){super(t,n,i,s),this.provider=r,this.authWindow=null,this.pollId=null,Bn.currentPopupAction&&Bn.currentPopupAction.cancel(),Bn.currentPopupAction=this}async executeNotNull(){const t=await this.execute();return x(t,this.auth,"internal-error"),t}async onExecution(){vt(this.filter.length===1,"Popup operations only handle one event");const t=gu();this.authWindow=await this.resolver._openPopup(this.auth,this.provider,this.filter[0],t),this.authWindow.associatedEvent=t,this.resolver._originValidation(this.auth).catch(n=>{this.reject(n)}),this.resolver._isIframeWebStorageSupported(this.auth,n=>{n||this.reject(et(this.auth,"web-storage-unsupported"))}),this.pollUserCancellation()}get eventId(){var t;return((t=this.authWindow)===null||t===void 0?void 0:t.associatedEvent)||null}cancel(){this.reject(et(this.auth,"cancelled-popup-request"))}cleanUp(){this.authWindow&&this.authWindow.close(),this.pollId&&window.clearTimeout(this.pollId),this.authWindow=null,this.pollId=null,Bn.currentPopupAction=null}pollUserCancellation(){const t=()=>{var n,r;if(!((r=(n=this.authWindow)===null||n===void 0?void 0:n.window)===null||r===void 0)&&r.closed){this.pollId=window.setTimeout(()=>{this.pollId=null,this.reject(et(this.auth,"popup-closed-by-user"))},8e3);return}this.pollId=window.setTimeout(t,rk.get())};t()}}Bn.currentPopupAction=null;/**
1344 * @license
1345 * Copyright 2020 Google LLC
1346 *
1347 * Licensed under the Apache License, Version 2.0 (the "License");
1348 * you may not use this file except in compliance with the License.
1349 * You may obtain a copy of the License at
1350 *
1351 *   http://www.apache.org/licenses/LICENSE-2.0
1352 *
1353 * Unless required by applicable law or agreed to in writing, softw
1353are
1354 * distributed under the License is distributed on an "AS IS" BASIS,
1355 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1356 * See the License for the specific language governing permissions and
1357 * limitations under the License.
1358 */const ik="pendingRedirect",os=new Map;class sk extends Jp{constructor(t,n,r=!1){super(t,["signInViaRedirect","linkViaRedirect","reauthViaRedirect","unknown"],n,void 0,r),this.eventId=null}async execute(){let t=os.get(this.auth._key());if(!t){try{const r=await ok(this.resolver,this.auth)?await super.execute():null;t=()=>Promise.resolve(r)}catch(n){t=()=>Promise.reject(n)}os.set(this.auth._key(),t)}return this.bypassAuthState||os.set(this.auth._key(),()=>Promise.resolve(null)),t()}async onAuthEvent(t){if(t.type==="signInViaRedirect")return super.onAuthEvent(t);if(t.type==="unknown"){this.resolve(null);return}if(t.eventId){const n=await this.auth._redirectUserForId(t.eventId);if(n)return this.user=n,super.onAuthEvent(t);this.resolve(null)}}async onExecution(){}cleanUp(){}}async function ok(e,t){const n=uk(t),r=lk(e);if(!await r._isAvailable())return!1;const i=await r._get(n)==="true";return await r._remove(n),i}function ak(e,t){os.set(e._key(),t)}function lk(e){return ct(e._redirectPersistence)}function uk(e){return ss(ik,e.config.apiKey,e.name)}async function ck(e,t,n=!1){if(at(e.app))return Promise.reject(Kt(e));const r=fr(e),i=Z0(r,t),o=await new sk(r,i,n).execute();return o&&!n&&(delete o.user._redirectEventId,await r._persistUserIfCurrent(o.user),await r._setRedirectUser(null,t)),o}/**
1359 * @license
1360 * Copyright 2020 Google LLC
1361 *
1362 * Licensed under the Apache License, Version 2.0 (the "License");
1363 * you may not use this file except in compliance with the License.
1364 * You may obtain a copy of the License at
1365 *
1366 *   http://www.apache.org/licenses/LICENSE-2.0
1367 *
1368 * Unless required by applicable law or agreed to in writing, software
1369 * distributed under the License is distributed on an "AS IS" BASIS,
1370 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1371 * See the License for the specific language governing permissions and
1372 * limitations under the License.
1373 */const dk=10*60*1e3;class hk{constructor(t){this.auth=t,this.cachedEventUids=new Set,this.consumers=new Set,this.queuedRedirectEvent=null,this.hasHandledPotentialRedirect=!1,this.lastProcessedEventTime=Date.now()}registerConsumer(t){this.consumers.add(t),this.queuedRedirectEvent&&this.isEventForConsumer(this.queuedRedirectEvent,t)&&(this.sendToConsumer(this.queuedRedirectEvent,t),this.saveEventToCache(this.queuedRedirectEvent),this.queuedRedirectEvent=null)}unregisterConsumer(t){this.consumers.delete(t)}onEvent(t){if(this.hasEventBeenHandled(t))return!1;let n=!1;return this.consumers.forEach(r=>{this.isEventForConsumer(t,r)&&(n=!0,this.sendToConsumer(t,r),this.saveEventToCache(t))}),this.hasHandledPotentialRedirect||!fk(t)||(this.hasHandledPotentialRedirect=!0,n||(this.queuedRedirectEvent=t,n=!0)),n}sendToConsumer(t,n){var r;if(t.error&&!Zp(t)){const i=((r=t.error.code)===null||r===void 0?void 0:r.split("auth/")[1])||"internal-error";n.onError(et(this.auth,i))}else n.onAuthEvent(t)}isEventForConsumer(t,n){const r=n.eventId===null||!!t.eventId&&t.eventId===n.eventId;return n.filter.includes(t.type)&&r}hasEventBeenHandled(t){return Date.now()-this.lastProcessedEventTime>=dk&&this.cachedEventUids.clear(),this.cachedEventUids.has(hd(t))}saveEventToCache(t){this.cachedEventUids.add(hd(t)),this.lastProcessedEventTime=Date.now()}}function hd(e){return[e.type,e.eventId,e.sessionId,e.tenantId].filter(t=>t).join("-")}function Zp({type:e,error:t}){return e==="unknown"&&(t==null?void 0:t.code)==="auth/no-auth-event"}function fk(e){switch(e.type){case"signInViaRedirect":case"linkViaRedirect":case"reauthViaRedirect":return!0;case"unknown":return Zp(e);default:return!1}}/**
1374 * @license
1375 * Copyright 2020 Google LLC
1376 *
1377 * Licensed under the Apache License, Version 2.0 (the "License");
1378 * you may not use this file except in compliance with the License.
1379 * You may obtain a copy of the License at
1380 *
1381 *   http://www.apache.org/licenses/LICENSE-2.0
1382 *
1383 * Unless required by applicable law or agreed to in writing, softw
1383are
1384 * distributed under the License is distributed on an "AS IS" BASIS,
1385 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1386 * See the License for the specific language governing permissions and
1387 * limitations under the License.
1388 */async function pk(e,t={}){return tn(e,"GET","/v1/projects",t)}/**
1389 * @license
1390 * Copyright 2020 Google LLC
1391 *
1392 * Licensed under the Apache License, Version 2.0 (the "License");
1393 * you may not use this file except in compliance with the License.
1394 * You may obtain a copy of the License at
1395 *
1396 *   http://www.apache.org/licenses/LICENSE-2.0
1397 *
1398 * Unless required by applicable law or agreed to in writing, software
1399 * distributed under the License is distributed on an "AS IS" BASIS,
1400 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1401 * See the License for the specific language governing permissions and
1402 * limitations under the License.
1403 */const gk=/^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/,mk=/^https?/;async function yk(e){if(e.config.emulator)return;const{authorizedDomains:t}=await pk(e);for(const n of t)try{if(vk(n))return}catch{}qe(e,"unauthorized-domain")}function vk(e){const t=il(),{protocol:n,hostname:r}=new URL(t);if(e.startsWith("chrome-extension://")){const o=new URL(e);return o.hostname===""&&r===""?n==="chrome-extension:"&&e.replace("chrome-extension://","")===t.replace("chrome-extension://",""):n==="chrome-extension:"&&o.hostname===r}if(!mk.test(n))return!1;if(gk.test(e))return r===e;const i=e.replace(/\./g,"\\.");return new RegExp("^(.+\\."+i+"|"+i+")$","i").test(r)}/**
1404 * @license
1405 * Copyright 2020 Google LLC.
1406 *
1407 * Licensed under the Apache License, Version 2.0 (the "License");
1408 * you may not use this file except in compliance with the License.
1409 * You may obtain a copy of the License at
1410 *
1411 *   http://www.apache.org/licenses/LICENSE-2.0
1412 *
1413 * Unless required by applicable law or agreed to in writing, software
1414 * distributed under the License is distributed on an "AS IS" BASIS,
1415 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1416 * See the License for the specific language governing permissions and
1417 * limitations under the License.
1418 */const wk=new wi(3e4,6e4);function fd(){const e=tt().___jsl;if(e!=null&&e.H){for(const t of Object.keys(e.H))if(e.H[t].r=e.H[t].r||[],e.H[t].L=e.H[t].L||[],e.H[t].r=[...e.H[t].L],e.CP)for(let n=0;n<e.CP.length;n++)e.CP[n]=null}}function _k(e){return new Promise((t,n)=>{var r,i,s;function o(){fd(),gapi.load("gapi.iframes",{callback:()=>{t(gapi.iframes.getContext())},ontimeout:()=>{fd(),n(et(e,"network-request-failed"))},timeout:wk.get()})}if(!((i=(r=tt().gapi)===null||r===void 0?void 0:r.iframes)===null||i===void 0)&&i.Iframe)t(gapi.iframes.getContext());else if(!((s=tt().gapi)===null||s===void 0)&&s.load)o();else{const a=p0("iframefcb");return tt()[a]=()=>{gapi.load?o():n(et(e,"network-request-failed"))},Fp(`${f0()}?onload=${a}`).catch(l=>n(l))}}).catch(t=>{throw as=null,t})}let as=null;function kk(e){return as=as||_k(e),as}/**
1419 * @license
1420 * Copyright 2020 Google LLC.
1421 *
1422 * Licensed under the Apache License, Version 2.0 (the "License");
1423 * you may not use this file except in compliance with the License.
1424 * You may obtain a copy of the License at
1425 *
1426 *   http://www.apache.org/licenses/LICENSE-2.0
1427 *
1428 * Unless required by applicable law or agreed to in writing, software
1429 * distributed under the License is distributed on an "AS IS" BASIS,
1430 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1431 * See the License for the specific language governing permissions and
1432 * limitations under the License.
1433 */const Sk=new wi(5e3,15e3),Ek="__/auth/iframe",bk="emulator/auth/iframe",Tk={style:{position:"absolute",top:"-100px",width:"1px",height:"1px"},"aria-hidden":"true",tabindex:"-1"},Ck=new Map([["identitytoolkit.googleapis.com","p"],["staging-identitytoolkit.sandbox.googleapis.com","s"],["test-identitytoolkit.sandbox.googleapis.com","t"]]);function Ik(e){const t=e.config;x(t.authDomain,e,"auth-domain-config-required");const n=t.emulator?cu(t,bk):`https://${e.config.authDomain}/${Ek}
1433`,r={apiKey:t.apiKey,appName:e.name,v:hr},i=Ck.get(e.config.apiHost);i&&(r.eid=i);const s=e._getFrameworks();return s.length&&(r.fw=s.join(",")),`${n}?${vi(r).slice(1)}`}async function Rk(e){const t=await kk(e),n=tt().gapi;return x(n,e,"internal-error"),t.open({where:document.body,url:Ik(e),messageHandlersFilter:n.iframes.CROSS_ORIGIN_IFRAMES_FILTER,attributes:Tk,dontclear:!0},r=>new Promise(async(i,s)=>{await r.restyle({setHideOnLeave:!1});const o=et(e,"network-request-failed"),a=tt().setTimeout(()=>{s(o)},Sk.get());function l(){tt().clearTimeout(a),i(r)}r.ping(l).then(l,()=>{s(o)})}))}/**
1434 * @license
1435 * Copyright 2020 Google LLC.
1436 *
1437 * Licensed under the Apache License, Version 2.0 (the "License");
1438 * you may not use this file except in compliance with the License.
1439 * You may obtain a copy of the License at
1440 *
1441 *   http://www.apache.org/licenses/LICENSE-2.0
1442 *
1443 * Unless required by applicable law or agreed to in writing, software
1444 * distributed under the License is distributed on an "AS IS" BASIS,
1445 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1446 * See the License for the specific language governing permissions and
1447 * limitations under the License.
1448 */const Pk={location:"yes",resizable:"yes",statusbar:"yes",toolbar:"no"},xk=500,Ok=600,Lk="_blank",Nk="http://localhost";class pd{constructor(t){this.window=t,this.associatedEvent=null}close(){if(this.window)try{this.window.close()}catch{}}}function Ak(e,t,n,r=xk,i=Ok){const s=Math.max((window.screen.availHeight-i)/2,0).toString(),o=Math.max((window.screen.availWidth-r)/2,0).toString();let a="";const l=Object.assign(Object.assign({},Pk),{width:r.toString(),height:i.toString(),top:s,left:o}),u=me().toLowerCase();n&&(a=Lp(u)?Lk:n),xp(u)&&(t=t||Nk,l.scrollbars="yes");const h=Object.entries(l).reduce((g,[v,y])=>`${g}${v}=${y},`,"");if(i0(u)&&a!=="_self")return Dk(t||"",a),new pd(null);const c=window.open(t||"",a,h);x(c,e,"popup-blocked");try{c.focus()}catch{}return new pd(c)}function Dk(e,t){const n=document.createElement("a");n.href=e,n.target=t;const r=document.createEvent("MouseEvent");r.initMouseEvent("click",!0,!0,window,1,0,0,0,0,!1,!1,!1,!1,1,null),n.dispatchEvent(r)}/**
1449 * @license
1450 * Copyright 2021 Google LLC
1451 *
1452 * Licensed under the Apache License, Version 2.0 (the "License");
1453 * you may not use this file except in compliance with the License.
1454 * You may obtain a copy of the License at
1455 *
1456 *   http://www.apache.org/licenses/LICENSE-2.0
1457 *
1458 * Unless required by applicable law or agreed to in writing, software
1459 * distributed under the License is distributed on an "AS IS" BASIS,
1460 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1461 * See the License for the specific language governing permissions and
1462 * limitations under the License.
1463 */const Uk="__/auth/handler",Mk="emulator/auth/handler",jk=encodeURIComponent("fac");async function gd(e,t,n,r,i,s){x(e.config.authDomain,e,"auth-domain-config-required"),x(e.config.apiKey,e,"invalid-api-key");const o={apiKey:e.config.apiKey,appName:e.name,authType:n,redirectUrl:r,v:hr,eventId:i};if(t instanceof Bp){t.setDefaultLanguage(e.languageCode),o.providerId=t.providerId||"",Rw(t.getCustomParameters())||(o.customParameters=JSON.stringify(t.getCustomParameters()));for(const[h,c]of Object.entries({}))o[h]=c}if(t instanceof _i){const h=t.getScopes().filter(c=>c!=="");h.length>0&&(o.scopes=h.join(","))}e.tenantId&&(o.tid=e.tenantId);const a=o;for(const h of Object.keys(a))a[h]===void 0&&delete a[h];const l=await e._getAppCheckToken(),u=l?`#${jk}=${encodeURIComponent(l)}`:"";return`${Fk(e)}?${vi(a).slice(1)}${u}`}function Fk({config:e}){return e.emulator?cu(e,Mk):`https://${e.authDomain}/${Uk}`}/**
1464 * @license
1465 * Copyright 2020 Google LLC
1466 *
1467 * Licensed under the Apache License, Version 2.0 (the "License");
1468 * you may not use this file except in compliance with the License.
1469 * You may obtain a copy of the License at
1470 *
1471 *   http://www.apache.org/licenses/LICENSE-2.0
1472 *
1473 * Unless required by applicable law or agreed to in writing, software
1474 * distributed under the License is distributed on an "AS IS" BASIS,
1475 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1476 * See the License for the specific language governing permissions and
1477 * limitations under the License.
1478 */const Xo="webStorageSupport";class zk{constructor(){this.eventManagers={},this.iframes={},this.originValidationPromises={},this._redirectPersistence=qp,this._completeRedirectFn=ck,this._overrideRedirectResult=ak}async _openPopup(t,n,r,i){var s;vt((s=this.eventManagers[t._key()])===null||s===void 0?void 0:s.manager,"_initialize() not called before _openPopup()");const o=await gd(t,n,r,il(),i);return Ak(t,o,gu())}async _openRedirect(t,n,r,i){await this._originValidation(t);const s=await gd(t,n,r,il(),i);return $0(s),new Promise(()=>{})}_initialize(t){const n=t._key();if(this.eventManagers[n]){const{manager:i,promise:s}=this.eventManagers[n];return i?Promise.resolve(i):(vt(s,"If manager is not set, promise should be"),s)}const r=this.initAndGetManager(t);return this.eventManagers[n]={promise:r},r.catch(()=>{delete this.eventManagers[n]}),r}async initAndGetManager(t){const n=await Rk(t),r=new hk(t);return n.register("authEvent",i=>
1478(x(i==null?void 0:i.authEvent,t,"invalid-auth-event"),{status:r.onEvent(i.authEvent)?"ACK":"ERROR"}),gapi.iframes.CROSS_ORIGIN_IFRAMES_FILTER),this.eventManagers[t._key()]={manager:r},this.iframes[t._key()]=n,r}_isIframeWebStorageSupported(t,n){this.iframes[t._key()].send(Xo,{type:Xo},i=>{var s;const o=(s=i==null?void 0:i[0])===null||s===void 0?void 0:s[Xo];o!==void 0&&n(!!o),qe(t,"internal-error")},gapi.iframes.CROSS_ORIGIN_IFRAMES_FILTER)}_originValidation(t){const n=t._key();return this.originValidationPromises[n]||(this.originValidationPromises[n]=yk(t)),this.originValidationPromises[n]}get _shouldInitProactively(){return Mp()||Op()||hu()}}const Bk=zk;var md="@firebase/auth",yd="1.7.9";/**
1479 * @license
1480 * Copyright 2020 Google LLC
1481 *
1482 * Licensed under the Apache License, Version 2.0 (the "License");
1483 * you may not use this file except in compliance with the License.
1484 * You may obtain a copy of the License at
1485 *
1486 *   http://www.apache.org/licenses/LICENSE-2.0
1487 *
1488 * Unless required by applicable law or agreed to in writing, software
1489 * distributed under the License is distributed on an "AS IS" BASIS,
1490 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1491 * See the License for the specific language governing permissions and
1492 * limitations under the License.
1493 */class Wk{constructor(t){this.auth=t,this.internalListeners=new Map}getUid(){var t;return this.assertAuthConfigured(),((t=this.auth.currentUser)===null||t===void 0?void 0:t.uid)||null}async getToken(t){return this.assertAuthConfigured(),await this.auth._initializationPromise,this.auth.currentUser?{accessToken:await this.auth.currentUser.getIdToken(t)}:null}addAuthTokenListener(t){if(this.assertAuthConfigured(),this.internalListeners.has(t))return;const n=this.auth.onIdTokenChanged(r=>{t((r==null?void 0:r.stsTokenManager.accessToken)||null)});this.internalListeners.set(t,n),this.updateProactiveRefresh()}removeAuthTokenListener(t){this.assertAuthConfigured();const n=this.internalListeners.get(t);n&&(this.internalListeners.delete(t),n(),this.updateProactiveRefresh())}assertAuthConfigured(){x(this.auth._initializationPromise,"dependent-sdk-initialized-before-auth")}updateProactiveRefresh(){this.internalListeners.size>0?this.auth._startProactiveRefresh():this.auth._stopProactiveRefresh()}}/**
1494 * @license
1495 * Copyright 2020 Google LLC
1496 *
1497 * Licensed under the Apache License, Version 2.0 (the "License");
1498 * you may not use this file except in compliance with the License.
1499 * You may obtain a copy of the License at
1500 *
1501 *   http://www.apache.org/licenses/LICENSE-2.0
1502 *
1503 * Unless required by applicable law or agreed to in writing, software
1504 * distributed under the License is distributed on an "AS IS" BASIS,
1505 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1506 * See the License for the specific language governing permissions and
1507 * limitations under the License.
1508 */function $k(e){switch(e){case"Node":return"node";case"ReactNative":return"rn";case"Worker":return"webworker";case"Cordova":return"cordova";case"WebExtension":return"web-extension";default:return}}function Vk(e){sr(new _n("auth",(t,{options:n})=>{const r=t.getProvider("app").getImmediate(),i=t.getProvider("heartbeat"),s=t.getProvider("app-check-internal"),{apiKey:o,authDomain:a}=r.options;x(o&&!o.includes(":"),"invalid-api-key",{appName:r.name});const l={apiKey:o,authDomain:a,clientPlatform:e,apiHost:"identitytoolkit.googleapis.com",tokenApiHost:"securetoken.googleapis.com",apiScheme:"https",sdkClientVersion:jp(e)},u=new c0(r,i,s,l);return w0(u,n),u},"PUBLIC").setInstantiationMode("EXPLICIT").setInstanceCreatedCallback((t,n,r)=>{t.getProvider("auth-internal").initialize()})),sr(new _n("auth-internal",t=>{const n=fr(t.getProvider("auth").getImmediate());return(r=>new Wk(r))(n)},"PRIVATE").setInstantiationMode("EXPLICIT")),qt(md,yd,$k(e)),qt(md,yd,"esm2017")}/**
1509 * @license
1510 * Copyright 2021 Google LLC
1511 *
1512 * Licensed under the Apache License, Version 2.0 (the "License");
1513 * you may not use this file except in compliance with the License.
1514 * You may obtain a copy of the License at
1515 *
1516 *   http://www.apache.org/licenses/LICENSE-2.0
1517 *
1518 * Unless required by applicable law or agreed to in writing, softw
1518are
1519 * distributed under the License is distributed on an "AS IS" BASIS,
1520 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1521 * See the License for the specific language governing permissions and
1522 * limitations under the License.
1523 */const Hk=5*60,Gk=fp("authIdTokenMaxAge")||Hk;let vd=null;const qk=e=>async t=>{const n=t&&await t.getIdTokenResult(),r=n&&(new Date().getTime()-Date.parse(n.issuedAtTime))/1e3;if(r&&r>Gk)return;const i=n==null?void 0:n.token;vd!==i&&(vd=i,await fetch(e,{method:i?"POST":"DELETE",headers:i?{Authorization:`Bearer ${i}`}:{}}))};function Kk(e=vp()){const t=au(e,"auth");if(t.isInitialized())return t.getImmediate();const n=v0(e,{popupRedirectResolver:Bk,persistence:[J0,z0,qp]}),r=fp("authTokenSyncURL");if(r&&typeof isSecureContext=="boolean"&&isSecureContext){const s=new URL(r,location.origin);if(location.origin===s.origin){const o=qk(s.toString());D0(n,o,()=>o(n.currentUser)),A0(n,a=>o(a))}}const i=dp("auth");return i&&_0(n,`http://${i}`),n}function Qk(){var e,t;return(t=(e=document.getElementsByTagName("head"))===null||e===void 0?void 0:e[0])!==null&&t!==void 0?t:document}d0({loadJS(e){return new Promise((t,n)=>{const r=document.createElement("script");r.setAttribute("src",e),r.onload=t,r.onerror=i=>{const s=et("internal-error");s.customData=i,n(s)},r.type="text/javascript",r.charset="UTF-8",Qk().appendChild(r)})},gapiScript:"https://apis.google.com/js/api.js",recaptchaV2Script:"https://www.google.com/recaptcha/api.js",recaptchaEnterpriseScript:"https://www.google.com/recaptcha/enterprise.js?render="});Vk("Browser");var Yk="firebase",Xk="10.14.1";/**
1524 * @license
1525 * Copyright 2020 Google LLC
1526 *
1527 * Licensed under the Apache License, Version 2.0 (the "License");
1528 * you may not use this file except in compliance with the License.
1529 * You may obtain a copy of the License at
1530 *
1531 *   http://www.apache.org/licenses/LICENSE-2.0
1532 *
1533 * Unless required by applicable law or agreed to in writing, software
1534 * distributed under the License is distributed on an "AS IS" BASIS,
1535 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1536 * See the License for the specific language governing permissions and
1537 * limitations under the License.
1538 */qt(Yk,Xk,"app");/**
1539 * @license
1540 * Copyright 2017 Google LLC
1541 *
1542 * Licensed under the Apache License, Version 2.0 (the "License");
1543 * you may not use this file except in compliance with the License.
1544 * You may obtain a copy of the License at
1545 *
1546 *   http://www.apache.org/licenses/LICENSE-2.0
1547 *
1548 * Unless required by applicable law or agreed to in writing, software
1549 * distributed under the License is distributed on an "AS IS" BASIS,
1550 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1551 * See the License for the specific language governing permissions and
1552 * limitations under the License.
1553 */const eg="firebasestorage.googleapis.com",tg="storageBucket",Jk=2*60*1e3,Zk=10*60*1e3,eS=1e3;/**
1554 * @license
1555 * Copyright 2017 Google LLC
1556 *
1557 * Licensed under the Apache License, Version 2.0 (the "License");
1558 * you may not use this file except in compliance with the License.
1559 * You may obtain a copy of the License at
1560 *
1561 *   http://www.apache.org/licenses/LICENSE-2.0
1562 *
1563 * Unless required by applicable law or agreed to in writing, software
1564 * distributed under the License is distributed on an "AS IS" BASIS,
1565 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1566 * See the License for the specific language governing permissions and
1567 * limitations under the License.
1568 */class Q extends kt{constructor(t,n,r=0){super(Jo(t),`Firebase Storage: ${n} (${Jo(t)})`),this.status_=r,this.customData={serverResponse:null},this._baseMessage=this.message,Object.setPrototypeOf(this,Q.prototype)}get status(){return this.status_}set status(t){this.status_=t}_codeEquals(t){return Jo(t)===this.code}get serverResponse(){return this.customData.serverResponse}set serverResponse(t){this.customData.serverResponse=t,this.customData.serverResponse?this.message=`${this._baseMessage}
1569${this.customData.serverResponse}`:this.message=this._baseMessage}}var $;(function(e){e.UNKNOWN="unknown",e.OBJECT_NOT_FOUND="object-not-found",e.BUCKET_NOT_FOUND="bucket-not-found",e.PROJECT_NOT_FOUND="project-not-found",e.QUOTA_EXCEEDED="quota-exceeded",e.UNAUTHENTICATED="unauthenticated",e.UNAUTHORIZED="unauthorized",e.UNAUTHORIZED_APP="unauthorized-app",e.RETRY_LIMIT_EXCEEDED="retry-limit-exceeded",e.INVALID_CHECKSUM="invalid-checksum",e.CANCELED="canceled",e.INVALID_EVENT_NAME="invalid-event-name",e.INVALID_URL="invalid-url",e.INVALID_DEFAULT_BUCKET="invalid-default-bucket",e.NO_DEFAULT_BUCKET="no-default-bucket",e.CA
1569NNOT_SLICE_BLOB="cannot-slice-blob",e.SERVER_FILE_WRONG_SIZE="server-file-wrong-size",e.NO_DOWNLOAD_URL="no-download-url",e.INVALID_ARGUMENT="invalid-argument",e.INVALID_ARGUMENT_COUNT="invalid-argument-count",e.APP_DELETED="app-deleted",e.INVALID_ROOT_OPERATION="invalid-root-operation",e.INVALID_FORMAT="invalid-format",e.INTERNAL_ERROR="internal-error",e.UNSUPPORTED_ENVIRONMENT="unsupported-environment"})($||($={}));function Jo(e){return"storage/"+e}function yu(){const e="An unknown error occurred, please check the error payload for server response.";return new Q($.UNKNOWN,e)}function tS(e){return new Q($.OBJECT_NOT_FOUND,"Object '"+e+"' does not exist.")}function nS(e){return new Q($.QUOTA_EXCEEDED,"Quota for bucket '"+e+"' exceeded, please view quota on https://firebase.google.com/pricing/.")}function rS(){const e="User is not authenticated, please authenticate using Firebase Authentication and try again.";return new Q($.UNAUTHENTICATED,e)}function iS(){return new Q($.UNAUTHORIZED_APP,"This app does not have permission to access Firebase Storage on this project.")}function sS(e){return new Q($.UNAUTHORIZED,"User does not have permission to access '"+e+"'.")}function ng(){return new Q($.RETRY_LIMIT_EXCEEDED,"Max retry time for operation exceeded, please try again.")}function rg(){return new Q($.CANCELED,"User canceled the upload/download.")}function oS(e){return new Q($.INVALID_URL,"Invalid URL '"+e+"'.")}function aS(e){return new Q($.INVALID_DEFAULT_BUCKET,"Invalid default bucket '"+e+"'.")}function lS(){return new Q($.NO_DEFAULT_BUCKET,"No default bucket found. Did you set the '"+tg+"' property when initializing the app?")}function ig(){return new Q($.CANNOT_SLICE_BLOB,"Cannot slice blob for upload. Please retry the upload.")}function uS(){return new Q($.SERVER_FILE_WRONG_SIZE,"Server recorded incorrect upload file size, please retry the upload.")}function cS(){return new Q($.NO_DOWNLOAD_URL,"The given file does not have any download URLs.")}function dS(e){return new Q($.UNSUPPORTED_ENVIRONMENT,`${e} is missing. Make sure to install the required polyfills. See https://firebase.google.com/docs/web/environments-js-sdk#polyfills for more information.`)}function al(e){return new Q($.INVALID_ARGUMENT,e)}function sg(){return new Q($.APP_DELETED,"The Firebase app was deleted.")}function hS(e){return new Q($.INVALID_ROOT_OPERATION,"The operation '"+e+"' cannot be performed on a root reference, create a non-root reference using child, such as .child('file.png').")}function $r(e,t){return new Q($.INVALID_FORMAT,"String does not match format '"+e+"': "+t)}function Cr(e){throw new Q($.INTERNAL_ERROR,"Internal error: "+e)}/**
1570 * @license
1571 * Copyright 2017 Google LLC
1572 *
1573 * Licensed under the Apache License, Version 2.0 (the "License");
1574 * you may not use this file except in compliance with the License.
1575 * You may obtain a copy of the License at
1576 *
1577 *   http://www.apache.org/licenses/LICENSE-2.0
1578 *
1579 * Unless required by applicable law or agreed to in writing, software
1580 * distributed under the License is distributed on an "AS IS" BASIS,
1581 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1582 * See the License for the specific language governing permissions and
1583 * limitations under the License.
1584 */class Pe{constructor(t,n){this.bucket=t,this.path_=n}get path(){return this.path_}get isRoot(){return this.path.length===0}fullServerUrl(){const t=encodeURIComponent;return"/b/"+t(this.bucket)+"/o/"+t(this.path)}bucketOnlyServerUrl(){return"/b/"+encodeURIComponent(this.bucket)+"/o"}static makeFromBucketSpec(t,n){let r;try{r=Pe.makeFromUrl(t,n)}catch{return new Pe(t,"")}if(r.path==="")return r;throw aS(t)}static makeFromUrl(t,n){let r=null;const i="([A-Za-z0-9.\\-_]+)";function s(m){m.path.charAt(m.path.length-1)==="/"&&(m.path_=m.path_.slice(0,-1))}const o="(/(.*))?$",a=new RegExp("^gs://"+i+o,"i"),l={bucket:1,path:3};function u(m){m.path_=decodeURIComponent(m.path)}const h="v[A-Za-z0-9_]+",c=n.replace(/[.]/g,"\\."),g="(/([^?#]*).*)?$",v=new RegExp(`^https?://${c}/${h}/b/${i}/o${g}`,"i"),y={bucket:1,path:3},_=n===eg?"(?:storage.googleapis.com|storage.cloud.google.com)":n,k="([^?#]*)",p=new RegExp(`^https?://${_}/${i}/${k}`,"i"),f=[{regex:a,indices:l,postModify:s},{regex:v,indices:y,postModify:u},{regex:p,indices:{bucket:1,path:2},postModify:u}];for(let m=0;m<f.length;m++){const b=f[m],T=b.regex.exec(t);if(T){const C=T[b.indices.bucket];let R=T[b.indices.path];R||(R=""),r=new Pe(C,R),b.postModify(r);break}}if(r==null)throw oS(t);return r}}class fS{constructor(t){this.promise_=Promise.reject(t)}getPromise(){return this.promise_}cancel(t=!1){}}/**
1585 * @license
1586 * Copyright 2017 Google LLC
1587 *
1588 * Licensed under the Apache License, Version 2.0 (the "License");
1589 * you may not use this file except in compliance with the License.
1590 * You may obtain a copy of the License at
1591 *
1592 *   http://www.apache.org/licenses/LICENSE-2.0
1593 *
1594 * Unless required by applicable law or agreed to in writing, software
1595 * distributed under the License is distributed on an "AS IS" BASIS,
1596 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1597 * See the License for the specific language governing permissions and
1598 * limitations under the License.
1599 */function pS(e,t,n){let r=1,i=null,s=null,o=!1,a=0;function l(){return a===2}let u=!1;function h(...k){u||(u=!0,t.apply(null,k))}function c(k){i=setTimeout(()=>{i=null,e(v,l())},k)}function g(){s&&clearTimeout(s)}function v(k,...p){if(u){g();return}if(k){g(),h.call(null,k,...p);return}if(l()||o){g(),h.call(null,k,...p);return}r<64&&(r*=2);let f;a===1?(a=2,f=0):f=(r+Math.random())*1e3,c(f)}let y=!1;function _(k){y||(y=!0,g(),!u&&(i!==null?(k||(a=2),clearTimeout(i),c(0)):k||(a=1)))}return c(0),s=setTimeout(()=>{o=!0,_(!0)},n),_}function gS(e){e(!1)}/**
1600 * @license
1601 * Copyright 2017 Google LLC
1602 *
1603 * Licensed under the Apache License, Version 2.0 (the "License");
1604 * you may not use this file except in compliance with the License.
1605 * You may obtain a copy of the License at
1606 *
1607 *   http://www.apache.org/licenses/LICENSE-2.0
1608 *
1609 * Unless required by applicable law or agreed to in writing, software
1610 * distributed under the License is distributed on an "AS IS" BASIS,
1611 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1612 * See the License for the specific language governing permissions and
1613 * limitations under the License.
1614 */function mS(e){return e!==void 0}function yS(e){return typeof e=="function"}function vS(e){return typeof e=="object"&&!Array.isArray(e)}function po(e){return typeof e=="string"||e instanceof String}function wd(e){return vu()&&e instanceof Blob}function vu(){return typeof Blob<"u"}function _d(e,t,n,r){if(r<t)throw al(`Invalid value for '${e}'. Expected ${t} or greater.`);if(r>n)throw al(`Invalid value for '${e}'. Expected ${n} or less.`)}/**
1615 * @license
1616 * Copyright 2017 Google LLC
1617 *
1618 * Licensed under the Apache License, Version 2.0 (the "License");
1619 * you may not use this file except in compliance with the License.
1620 * You may obtain a copy of the License at
1621 *
1622 *   http://www.apache.org/licenses/LICENSE-2.0
1623 *
1624 * Unless required by applicable law or agreed to in writing, software
1625 * distributed under the License is distributed on an "AS IS" BASIS,
1626 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1627 * See the License for the specific language governing permissions and
1628 * limitations under the License.
1629 */function gr(e,t,n){let r=t;return n==null&&(r=`https://${t}`),`${n}://${r}/v0${e}`}function og(e){const t=encodeURIComponent;let n="?";for(const r in e)if(e.hasOwnProperty(r)){const i=t(r)+"="+t(e[r]);n=n+i+"&"}return n=n.slice(0,-1),n}var pn;(function(e){e[e.NO_ERROR=0]="NO_ERROR",e[e.NETWORK_ERROR=1]="NETWORK_ERROR",e[e.ABORT=2]="ABORT"})(pn||(pn={}));/**
1630 * @license
1631 * Copyright 2022 Google LLC
1632 *
1633 * Licensed under the Apache License, Version 2.0 (the "License");
1634 * you may not use this file except in compliance with the License.
1635 * You may obtain a copy of the License at
1636 *
1637 *   http://www.apache.org/licenses/LICENSE-2.0
1638 *
1639 * Unless required by applicable law or agreed to in writing, software
1640 * distributed under the License is distributed on an "AS IS" BASIS,
1641 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1642 * See the License for the specific language governing permissions and
1643 * limitations under the License.
1644 */function ag(e,t){const n=e>=500&&e<600,i=[408,429].indexOf(e)!==-1,s=t.indexOf(e)!==-1;return n||i||s}/**
1645 * @license
1646 * Copyright 2017 Google LLC
1647 *
1648 * Licensed under the Apache License, Version 2.0 (the "License");
1649 * you may not use this file except in compliance with the License.
1650 * You may obtain a copy of the License at
1651 *
1652 *   http://www.apache.org/licenses/LICENSE-2.0
1653 *
1654 * Unless required by applicable law or agreed to in writing, softw
1654are
1655 * distributed under the License is distributed on an "AS IS" BASIS,
1656 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1657 * See the License for the specific language governing permissions and
1658 * limitations under the License.
1659 */class wS{constructor(t,n,r,i,s,o,a,l,u,h,c,g=!0){this.url_=t,this.method_=n,this.headers_=r,this.body_=i,this.successCodes_=s,this.additionalRetryCodes_=o,this.callback_=a,this.errorCallback_=l,this.timeout_=u,this.progressCallback_=h,this.connectionFactory_=c,this.retry=g,this.pendingConnection_=null,this.backoffId_=null,this.canceled_=!1,this.appDelete_=!1,this.promise_=new Promise((v,y)=>{this.resolve_=v,this.reject_=y,this.start_()})}start_(){const t=(r,i)=>{if(i){r(!1,new Vi(!1,null,!0));return}const s=this.connectionFactory_();this.pendingConnection_=s;const o=a=>{const l=a.loaded,u=a.lengthComputable?a.total:-1;this.progressCallback_!==null&&this.progressCallback_(l,u)};this.progressCallback_!==null&&s.addUploadProgressListener(o),s.send(this.url_,this.method_,this.body_,this.headers_).then(()=>{this.progressCallback_!==null&&s.removeUploadProgressListener(o),this.pendingConnection_=null;const a=s.getErrorCode()===pn.NO_ERROR,l=s.getStatus();if(!a||ag(l,this.additionalRetryCodes_)&&this.retry){const h=s.getErrorCode()===pn.ABORT;r(!1,new Vi(!1,null,h));return}const u=this.successCodes_.indexOf(l)!==-1;r(!0,new Vi(u,s))})},n=(r,i)=>{const s=this.resolve_,o=this.reject_,a=i.connection;if(i.wasSuccessCode)try{const l=this.callback_(a,a.getResponse());mS(l)?s(l):s()}catch(l){o(l)}else if(a!==null){const l=yu();l.serverResponse=a.getErrorText(),this.errorCallback_?o(this.errorCallback_(a,l)):o(l)}else if(i.canceled){const l=this.appDelete_?sg():rg();o(l)}else{const l=ng();o(l)}};this.canceled_?n(!1,new Vi(!1,null,!0)):this.backoffId_=pS(t,n,this.timeout_)}getPromise(){return this.promise_}cancel(t){this.canceled_=!0,this.appDelete_=t||!1,this.backoffId_!==null&&gS(this.backoffId_),this.pendingConnection_!==null&&this.pendingConnection_.abort()}}class Vi{constructor(t,n,r){this.wasSuccessCode=t,this.connection=n,this.canceled=!!r}}function _S(e,t){t!==null&&t.length>0&&(e.Authorization="Firebase "+t)}function kS(e,t){e["X-Firebase-Storage-Version"]="webjs/"+(t??"AppManager")}function SS(e,t){t&&(e["X-Firebase-GMPID"]=t)}function ES(e,t){t!==null&&(e["X-Firebase-AppCheck"]=t)}function bS(e,t,n,r,i,s,o=!0){const a=og(e.urlParams),l=e.url+a,u=Object.assign({},e.headers);return SS(u,t),_S(u,n),kS(u,s),ES(u,r),new wS(l,e.method,u,e.body,e.successCodes,e.additionalRetryCodes,e.handler,e.errorHandler,e.timeout,e.progressCallback,i,o)}/**
1660 * @license
1661 * Copyright 2017 Google LLC
1662 *
1663 * Licensed under the Apache License, Version 2.0 (the "License");
1664 * you may not use this file except in compliance with the License.
1665 * You may obtain a copy of the License at
1666 *
1667 *   http://www.apache.org/licenses/LICENSE-2.0
1668 *
1669 * Unless required by applicable law or agreed to in writing, software
1670 * distributed under the License is distributed on an "AS IS" BASIS,
1671 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1672 * See the License for the specific language governing permissions and
1673 * limitations under the License.
1674 */function TS(){return typeof BlobBuilder<"u"?BlobBuilder:typeof WebKitBlobBuilder<"u"?WebKitBlobBuilder:void 0}function CS(...e){const t=TS();if(t!==void 0){const n=new t;for(let r=0;r<e.length;r++)n.append(e[r]);return n.getBlob()}else{if(vu())return new Blob(e);throw new Q($.UNSUPPORTED_ENVIRONMENT,"This browser doesn't seem to support creating Blobs")}}function IS(e,t,n){return e.webkitSlice?e.webkitSlice(t,n):e.mozSlice?e.mozSlice(t,n):e.slice?e.slice(t,n):null}/**
1675 * @license
1676 * Copyright 2021 Google LLC
1677 *
1678 * Licensed under the Apache License, Version 2.0 (the "License");
1679 * you may not use this file except in compliance with the License.
1680 * You may obtain a copy of the License at
1681 *
1682 *   http://www.apache.org/licenses/LICENSE-2.0
1683 *
1684 * Unless required by applicable law or agreed to in writing, software
1685 * distributed under the License is distributed on an "AS IS" BASIS,
1686 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1687 * See the License for the specific language governing permissions and
1688 * limitations under the License.
1689 */function RS(e){if(typeof atob>"u")throw dS("base-64");return atob(e)}/**
1690 * @license
1691 * Copyright 2017 Google LLC
1692 *
1693 * Licensed under the Apache License, Version 2.0 (the "License");
1694 * you may not use this file except in compliance with the License.
1695 * You may obtain a copy of the License at
1696 *
1697 *   http://www.apache.org/licenses/LICENSE-2.0
1698 *
1699 * Unless required by applicable law or agreed to in writing, software
1700 * distributed under the License is distributed on an "AS IS" BASIS,
1701 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1702 * See the License for the specific language governing permissions and
1703 * limitations under the License.
1704 */const Xe={RAW:"raw",BASE64:"base64",BASE64URL:"base64url",DATA_URL:"data_url"};class Zo{constructor(t,n){this.data=t,this.contentType=n||null}}function PS(e,t){switch(e){case Xe.RAW:return new Zo(lg(t));case Xe.BASE64:case Xe.BASE64URL:return new Zo(ug(e,t));case Xe.DATA_URL:return new Zo(OS(t),LS(t))}throw yu()}function lg(e){const t=[];for(let n=0;n<e.length;n++){let r=e.charCodeAt(n);if(r<=127)t.push(r);else if(r<=2047)t.push(192|r>>6,128|r&63);else if((r&64512)===55296)if(!(n<e.length-1&&(e.charCodeAt(n+1)&64512)===56320))t.push(239,191,189);else{const s=r,o=e.charCodeAt(++n);r=65536|(s&1023)<<10|o&1023,t.push(240|r>>18,128|r>>12&63,128|r>>6&63,128|r&63)}else(r&64512)===56320?t.push(239,191,189):t.push(224|r>>12,128|r>>6&63,128|r&63)}return new Uint8Array(t)}function xS(e){let t;try{t=decodeURIComponent(e)}catch{throw $r(Xe.DATA_URL,"Malformed data URL.")}return lg(t)}function ug(e,t){switch(e){case Xe.BASE64:{const i=t.indexOf("-")!==-1,s=t.indexOf("_")!==-1;if(i||s)throw $r(e,"Invalid character '"+(i?"-":"_")+"' found: is it base64url encoded?");break}case Xe.BASE64URL:{const i=t.indexOf("+")!==-1,s=t.indexOf("/")!==-1;if(i||s)throw $r(e,"Invalid character '"+(i?"+":"/")+"' found: is it base64 encoded?");t=t.replace(/-/g,"+").replace(/_/g,"/");break}}let n;try{n=RS(t)}catch(i){throw i.message.includes("polyfill")?i:$r(e,"Invalid character found")}const r=new Uint8Array(n.length);for(let i=0;i<n.length;i++)r[i]=n.charCodeAt(i);return r}class cg{constructor(t){this.base64=!1,this.contentType=null;const n=t.match(/^data:([^,]+)?,/);if(n===null)throw $r(Xe.DATA_URL,"Must be formatted 'data:[<mediatype>][;base64],<data>");const r=n[1]||null;r!=null&&(this.base64=NS(r,";base64"),this.contentType=this.base64?r.substring(0,r.length-7):r),this.rest=t.substring(t.indexOf(",")+1)}}function OS(e){const t=new cg(e);return t.base64?ug(Xe.BASE64,t.rest):xS(t.rest)}function LS(e){return new cg(e).contentType}function NS(e,t){return e.length>=t.length?e.substring(e.length-t.length)===t:!1}/**
1705 * @license
1706 * Copyright 2017 Google LLC
1707 *
1708 * Licensed under the Apache License, Version 2.0 (the "License");
1709 * you may not use this file except in compliance with the License.
1710 * You may obtain a copy of the License at
1711 *
1712 *   http://www.apache.org/licenses/LICENSE-2.0
1713 *
1714 * Unless required by applicable law or agreed to in writing, software
1715 * distributed under the License is distributed on an "AS IS" BASIS,
1716 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1717 * See the License for the specific language governing permissions and
1718 * limitations under the License.
1719 */class Lt{constructor(t,n){let r=0,i="";wd(t)?(this.data_=t,r=t.size,i=t.type):t instanceof ArrayBuffer?(n?this.data_=new Uint8Array(t):(this.data_=new Uint8Array(t.byteLength),this.data_.set(new Uint8Array(t))),r=this.data_.length):t instanceof Uint8Array&&(n?this.data_=t:(this.data_=new Uint8Array(t.length),this.data_.set(t)),r=t.length),this.size_=r,this.type_=i}size(){return this.size_}type(){return this.type_}slice(t,n){if(wd(this.data_)){const r=this.data_,i=IS(r,t,n);return i===null?null:new Lt(i)}else{const r=new Uint8Array(this.data_.buffer,t,n-t);return new Lt(r,!0)}}static getBlob(...t){if(vu()){const n=t.map(r=>r instanceof Lt?r.data_:r);return new Lt(CS.apply(null,n))}else{const n=t.map(o=>po(o)?PS(Xe.RAW,o).data:o.data_);let r=0;n.forEach(o=>{r+=o.byteLength});const i=new Uint8Array(r);let s=0;return n.forEach(o=>{for(let a=0;a<o.length;a++)i[s++]=o[a]}),new Lt(i,!0)}}uploadData(){return this.data_}}/**
1720 * @license
1721 * Copyright 2017 Google LLC
1722 *
1723 * Licensed under the Apache License, Version 2.0 (the "License");
1724 * you may not use this file except in compliance with the License.
1725 * You may obtain a copy of the License at
1726 *
1727 *   http://www.apache.org/licenses/LICENSE-2.0
1728 *
1729 * Unless required by applicable law or agreed to in writing, software
1730 * distributed under the License is distributed on an "AS IS" BASIS,
1731 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1732 * See the License for the specific language governing permissions and
1733 * limitations under the License.
1734 */function dg(e){let t;try{t=JSON.parse(e)}catch{return null}return vS(t)?t:null}/**
1735 * @license
1736 * Copyright 2017 Google LLC
1737 *
1738 * Licensed under the Apache License, Version 2.0 (the "License");
1739 * you may not use this file except in compliance with the License.
1740 * You may obtain a copy of the License at
1741 *
1742 *   http://www.apache.org/licenses/LICENSE-2.0
1743 *
1744 * Unless required by applicable law or agreed to in writing, software
1745 * distributed under the License is distributed on an "AS IS" BASIS,
1746 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1747 * See the License for the specific language governing permissions and
1748 * limitations under the License.
1749 */function AS(e){if(e.length===0)return null;const t=e.lastIndexOf("/");return t===-1?"":e.slice(0,t)}function DS(e,t){const n=t.split("/").filter(r=>r.length>0).join("/");return e.length===0?n:e+"/"+n}function hg(e){const t=e.lastIndexOf("/",e.length-2);return t===-1?e:e.slice(t+1)}/**
1750 * @license
1751 * Copyright 2017 Google LLC
1752 *
1753 * Licensed under the Apache License, Version 2.0 (the "License");
1754 * you may not use this file except in compliance with the License.
1755 * You may obtain a copy of the License at
1756 *
1757 *   http://www.apache.org/licenses/LICENSE-2.0
1758 *
1759 * Unless required by applicable law or agreed to in writing, software
1760 * distributed under the License is distributed on an "AS IS" BASIS,
1761 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1762 * See the License for the specific language governing permissions and
1763 * limitations under the License.
1764 */function US(e,t){return t}class fe{constructor(t,n,r,i){this.server=t,this.local=n||t,this.writable=!!r,this.xform=i||US}}let Hi=null;function MS(e){return!po(e)||e.length<2?e:hg(e)}function fg(){if(Hi)return Hi;const e=[];e.push(new fe("bucket")),e.push(new fe("generation")),e.push(new fe("metageneration")),e.push(new fe("name","fullPath",!0));function t(s,o){return MS(o)}const n=new fe("name");n.xform=t,e.push(n);function r(s,o){return o!==void 0?Number(o):o}const i=new fe("size");return i.xform=r,e.push(i),e.push(new fe("timeCreated")),e.push(new fe("updated")),e.push(new fe("md5Hash",null,!0)),e.push(new fe("cacheControl",null,!0)),e.push(new fe("contentDisposition",null,!0)),e.push(new fe("contentEncoding",null,!0)),e.push(new fe("contentLanguage",null,!0)),e.push(new fe("contentType",null,!0)),e.push(new fe("metadata","customMetadata",!0)),Hi=e,Hi}function jS(e,t){function n(){const r=e.bucket,i=e.fullPath,s=new Pe(r,i);return t._makeStorageReference(s)}Object.defineProperty(e,"ref",{get:n})}function FS(e,t,n){const r={};r.type="file";const i=n.length;for(let s=0;s<i;s++){const o=n[s];r[o.local]=o.xform(r,t[o.server])}return jS(r,e),r}function pg(e,t,n){const r=dg(t);return r===null?null:FS(e,r,n)}function zS(e,t,n,r){const i=dg(t);if(i===null||!po(i.downloadTokens))return null;const s=i.downloadTokens;if(s.length===0)return null;const o=encodeURIComponent;return s.split(",").map(u=>{const h=e.bucket,c=e.fullPath,g="/b/"+o(h)+"/o/"+o(c),v=gr(g,n,r),y=og({alt:"media",token:u});return v+y})[0]}function gg(e,t){const n={},r=t.length;for(let i=0;i<r;i++){const s=t[i];s.writable&&(n[s.server]=e[s.local])}return JSON.stringify(n)}class Cn{constructor(t,n,r,i){this.url=t,this.method=n,this.handler=r,this.timeout=i,this.urlParams={},this.headers={},this.body=null,this.errorHandler=null,this.progressCallback=null,this.successCodes=[200],this.additionalRetryCodes=[]}}/**
1765 * @license
1766 * Copyright 2017 Google LLC
1767 *
1768 * Licensed under the Apache License, Version 2.0 (the "License");
1769 * you may not use this file except in compliance with the License.
1770 * You may obtain a copy of the License at
1771 *
1772 *   http://www.apache.org/licenses/LICENSE-2.0
1773 *
1774 * Unless required by applicable law or agreed to in writing, softw
1774are
1775 * distributed under the License is distributed on an "AS IS" BASIS,
1776 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1777 * See the License for the specific language governing permissions and
1778 * limitations under the License.
1779 */function ht(e){if(!e)throw yu()}function wu(e,t){function n(r,i){const s=pg(e,i,t);return ht(s!==null),s}return n}function BS(e,t){function n(r,i){const s=pg(e,i,t);return ht(s!==null),zS(s,i,e.host,e._protocol)}return n}function Si(e){function t(n,r){let i;return n.getStatus()===401?n.getErrorText().includes("Firebase App Check token is invalid")?i=iS():i=rS():n.getStatus()===402?i=nS(e.bucket):n.getStatus()===403?i=sS(e.path):i=r,i.status=n.getStatus(),i.serverResponse=r.serverResponse,i}return t}function _u(e){const t=Si(e);function n(r,i){let s=t(r,i);return r.getStatus()===404&&(s=tS(e.path)),s.serverResponse=i.serverResponse,s}return n}function WS(e,t,n){const r=t.fullServerUrl(),i=gr(r,e.host,e._protocol),s="GET",o=e.maxOperationRetryTime,a=new Cn(i,s,wu(e,n),o);return a.errorHandler=_u(t),a}function $S(e,t,n){const r=t.fullServerUrl(),i=gr(r,e.host,e._protocol),s="GET",o=e.maxOperationRetryTime,a=new Cn(i,s,BS(e,n),o);return a.errorHandler=_u(t),a}function VS(e,t){const n=t.fullServerUrl(),r=gr(n,e.host,e._protocol),i="DELETE",s=e.maxOperationRetryTime;function o(l,u){}const a=new Cn(r,i,o,s);return a.successCodes=[200,204],a.errorHandler=_u(t),a}function HS(e,t){return e&&e.contentType||t&&t.type()||"application/octet-stream"}function mg(e,t,n){const r=Object.assign({},n);return r.fullPath=e.path,r.size=t.size(),r.contentType||(r.contentType=HS(null,t)),r}function GS(e,t,n,r,i){const s=t.bucketOnlyServerUrl(),o={"X-Goog-Upload-Protocol":"multipart"};function a(){let f="";for(let m=0;m<2;m++)f=f+Math.random().toString().slice(2);return f}const l=a();o["Content-Type"]="multipart/related; boundary="+l;const u=mg(t,r,i),h=gg(u,n),c="--"+l+`\r
1780Content-Type: application/json; charset=utf-8\r
1781\r
1782`+h+`\r
1783--`+l+`\r
1784Content-Type: `+u.contentType+`\r
1785\r
1786`,g=`\r
1787--`+l+"--",v=Lt.getBlob(c,r,g);if(v===null)throw ig();const y={name:u.fullPath},_=gr(s,e.host,e._protocol),k="POST",p=e.maxUploadRetryTime,d=new Cn(_,k,wu(e,n),p);return d.urlParams=y,d.headers=o,d.body=v.uploadData(),d.errorHandler=Si(t),d}class Ws{constructor(t,n,r,i){this.current=t,this.total=n,this.finalized=!!r,this.metadata=i||null}}function ku(e,t){let n=null;try{n=e.getResponseHeader("X-Goog-Upload-Status")}catch{ht(!1)}return ht(!!n&&(t||["active"]).indexOf(n)!==-1),n}function qS(e,t,n,r,i){const s=t.bucketOnlyServerUrl(),o=mg(t,r,i),a={name:o.fullPath}
1787,l=gr(s,e.host,e._protocol),u="POST",h={"X-Goog-Upload-Protocol":"resumable","X-Goog-Upload-Command":"start","X-Goog-Upload-Header-Content-Length":`${r.size()}`,"X-Goog-Upload-Header-Content-Type":o.contentType,"Content-Type":"application/json; charset=utf-8"},c=gg(o,n),g=e.maxUploadRetryTime;function v(_){ku(_);let k;try{k=_.getResponseHeader("X-Goog-Upload-URL")}catch{ht(!1)}return ht(po(k)),k}const y=new Cn(l,u,v,g);return y.urlParams=a,y.headers=h,y.body=c,y.errorHandler=Si(t),y}function KS(e,t,n,r){const i={"X-Goog-Upload-Command":"query"};function s(u){const h=ku(u,["active","final"]);let c=null;try{c=u.getResponseHeader("X-Goog-Upload-Size-Received")}catch{ht(!1)}c||ht(!1);const g=Number(c);return ht(!isNaN(g)),new Ws(g,r.size(),h==="final")}const o="POST",a=e.maxUploadRetryTime,l=new Cn(n,o,s,a);return l.headers=i,l.errorHandler=Si(t),l}const kd=256*1024;function QS(e,t,n,r,i,s,o,a){const l=new Ws(0,0);if(o?(l.current=o.current,l.total=o.total):(l.current=0,l.total=r.size()),r.size()!==l.total)throw uS();const u=l.total-l.current;let h=u;i>0&&(h=Math.min(h,i));const c=l.current,g=c+h;let v="";h===0?v="finalize":u===h?v="upload, finalize":v="upload";const y={"X-Goog-Upload-Command":v,"X-Goog-Upload-Offset":`${l.current}`},_=r.slice(c,g);
1787if(_===null)throw ig();function k(m,b){const T=ku(m,["active","final"]),C=l.current+h,R=r.size();let U;return T==="final"?U=wu(t,s)(m,b):U=null,new Ws(C,R,T==="final",U)}const p="POST",d=t.maxUploadRetryTime,f=new Cn(n,p,k,d);return f.headers=y,f.body=_.uploadData(),f.progressCallback=a||null,f.errorHandler=Si(e),f}const we={RUNNING:"running",PAUSED:"paused",SUCCESS:"success",CANCELED:"canceled",ERROR:"error"};function ea(e){switch(e){case"running":case"pausing":case"canceling":return we.RUNNING;case"paused":return we.PAUSED;case"success":return we.SUCCESS;case"canceled":return we.CANCELED;case"error":return we.ERROR;default:return we.ERROR}}/**
1788 * @license
1789 * Copyright 2017 Google LLC
1790 *
1791 * Licensed under the Apache License, Version 2.0 (the "License");
1792 * you may not use this file except in compliance with the License.
1793 * You may obtain a copy of the License at
1794 *
1795 *   http://www.apache.org/licenses/LICENSE-2.0
1796 *
1797 * Unless required by applicable law or agreed to in writing, software
1798 * distributed under the License is distributed on an "AS IS" BASIS,
1799 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1800 * See the License for the specific language governing permissions and
1801 * limitations under the License.
1802 */class YS{constructor(t,n,r){if(yS(t)||n!=null||r!=null)this.next=t,this.error=n??void 0,this.complete=r??void 0;else{const s=t;this.next=s.next,this.error=s.error,this.complete=s.complete}}}/**
1803 * @license
1804 * Copyright 2017 Google LLC
1805 *
1806 * Licensed under the Apache License, Version 2.0 (the "License");
1807 * you may not use this file except in compliance with the License.
1808 * You may obtain a copy of the License at
1809 *
1810 *   http://www.apache.org/licenses/LICENSE-2.0
1811 *
1812 * Unless required by applicable law or agreed to in writing, software
1813 * distributed under the License is distributed on an "AS IS" BASIS,
1814 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1815 * See the License for the specific language governing permissions and
1816 * limitations under the License.
1817 */function Rn(e){return(...t)=>{Promise.resolve().then(()=>e(...t))}}class XS{constructor(){this.sent_=!1,this.xhr_=new XMLHttpRequest,this.initXhr(),this.errorCode_=pn.NO_ERROR,this.sendPromise_=new Promise(t=>{this.xhr_.addEventListener("abort",()=>{this.errorCode_=pn.ABORT,t()}),this.xhr_.addEventListener("error",()=>{this.errorCode_=pn.NETWORK_ERROR,t()}),this.xhr_.addEventListener("load",()=>{t()})})}send(t,n,r,i){if(this.sent_)throw Cr("cannot .send() more than once");if(this.sent_=!0,this.xhr_.open(n,t,!0),i!==void 0)for(const s in i)i.hasOwnProperty(s)&&this.xhr_.setRequestHeader(s,i[s].toString());return r!==void 0?this.xhr_.send(r):this.xhr_.send(),this.sendPromise_}getErrorCode(){if(!this.sent_)throw Cr("cannot .getErrorCode() before sending");return this.errorCode_}getStatus(){if(!this.sent_)throw Cr("cannot .getStatus() before sending");try{return this.xhr_.status}catch{return-1}}getResponse(){if(!this.sent_)throw Cr("cannot .getResponse() before sending");return this.xhr_.response}getErrorText(){if(!this.sent_)throw Cr("cannot .getErrorText() before sending");return this.xhr_.statusText}abort(){this.xhr_.abort()}getResponseHeader(t){return this.xhr_.getResponseHeader(t)}addUploadProgressListener(t){this.xhr_.upload!=null&&this.xhr_.upload.addEventListener("progress",t)}removeUploadProgressListener(t){this.xhr_.upload!=null&&this.xhr_.upload.removeEventListener("progress",t)}}class JS extends XS{initXhr(){this.xhr_.responseType="text"}}function ln(){return new JS}/**
1818 * @license
1819 * Copyright 2017 Google LLC
1820 *
1821 * Licensed under the Apache License, Version 2.0 (the "License");
1822 * you may not use this file except in compliance with the License.
1823 * You may obtain a copy of the License at
1824 *
1825 *   http://www.apache.org/licenses/LICENSE-2.0
1826 *
1827 * Unless required by applicable law or agreed to in writing, software
1828 * distributed under the License is distributed on an "AS IS" BASIS,
1829 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1830 * See the License for the specific language governing permissions and
1831 * limitations under the License.
1832 */class ZS{constructor(t,n,r=null){this._transferred=0,this._needToFetchStatus=!1,this._needToFetchMetadata=!1,this._observers=[],this._error=void 0,this._uploadUrl=void 0,this._request=void 0,this._chunkMultiplier=1,this._resolve=void 0,this._reject=void 0,this._ref=t,this._blob=n,this._metadata=r,this._mappings=fg(),this._resumable=this._shouldDoResumable(this._blob),this._state="running",this._errorHandler=i=>{if(this._request=void 0,this._chunkMultiplier=1,i._codeEquals($.CANCELED))this._needToFetchStatus=!0,this.completeTransitions_();else{const s=this.isExponentialBackoffExpired();if(ag(i.status,[]))if(s)i=ng();else{this.sleepTime=Math.max(this.sleepTime*2,eS),this._needToFetchStatus=!0,this.completeTransitions_();return}this._error=i,this._transition("error")}},this._metadataErrorHandler=i=>{this._request=void 0,i._codeEquals($.CANCELED)?this.completeTransitions_():(this._error=i,this._transition("error"))},this.sleepTime=0,this.maxSleepTime=this._ref.storage.maxUploadRetryTime,this._promise=new Promise((i,s)=>{this._resolve=i,this._reject=s,this._start()}),this._promise.then(null,()=>{})}isExponentialBackoffExpired(){return this.sleepTime>this.maxSleepTime}_makeProgressCallback(){const t=this._transferred;return n=>this._updateProgress(t+n)}_shouldDoResumable(t){return t.size()>256*1024}_start(){this._state==="running"&&this._request===void 0&&(this._resumable?this._uploadUrl===void 0?this._createResumable():this._needToFetchStatus?this._fetchStatus():this._needToFetchMetadata?this._fetchMetadata():this.pendingTimeout=setTimeout(()=>{this.pendingTimeout=void 0,this._continueUpload()},this.sleepTime):this._oneShotUpload())}_resolveToken(t){Promise.all([this._ref.storage._getAuthToken(),this._ref.storage._getAppCheckToken()]).then(([n,r])=>{switch(this._state){case"running":t(n,r);break;case"canceling":this._transition("canceled");break;case"pausing":this._transition("paused");break}})}_createResumable(){this._resolveToken((t,n)=>{const r=qS(this._ref.storage,this._ref._location,this._mappings,this._blob,this._metadata),i=this._ref.storage._makeRequest
vendor: 4,118 bytes, line 1832
1832(r,ln,t,n);this._request=i,i.getPromise().then(s=>{this._request=void 0,this._uploadUrl=s,this._needToFetchStatus=!1,this.completeTransitions_()},this._errorHandler)})}_fetchStatus(){const t=this._uploadUrl;this._resolveToken((n,r)=>{const i=KS(this._ref.storage,this._ref._location,t,this._blob),s=this._ref.storage._makeRequest(i,ln,n,r);this._request=s,s.getPromise().then(o=>{o=o,this._request=void 0,this._updateProgress(o.current),this._needToFetchStatus=!1,o.finalized&&(this._needToFetchMetadata=!0),this.completeTransitions_()},this._errorHandler)})}_continueUpload(){const t=kd*this._chunkMultiplier,n=new Ws(this._transferred,this._blob.size()),r=this._uploadUrl;this._resolveToken((i,s)=>{let o;try{o=QS(this._ref._location,this._ref.storage,r,this._blob,t,this._mappings,n,this._makeProgressCallback())}catch(l){this._error=l,this._transition("error");return}const a=this._ref.storage._makeRequest(o,ln,i,s,!1);this._request=a,a.getPromise().then(l=>{this._increaseMultiplier(),this._request=void 0,this._updateProgress(l.current),l.finalized?(this._metadata=l.metadata,this._transition("success")):this.completeTransitions_()},this._errorHandler)})}_increaseMultiplier(){kd*this._chunkMultiplier*2<32*1024*1024&&(this._chunkMultiplier*=2)}_fetchMetadata(){this._resolveToken((t,n)=>{const r=WS(this._ref.storage,this._ref._location,this._mappings),i=this._ref.storage._makeRequest(r,ln,t,n);this._request=i,i.getPromise().then(s=>{this._request=void 0,this._metadata=s,this._transition("success")},this._metadataErrorHandler)})}_oneShotUpload(){this._resolveToken((t,n)=>{const r=GS(this._ref.storage,this._ref._location,this._mappings,this._blob,this._metadata),i=this._ref.storage._makeRequest(r,ln,t,n);this._request=i,i.getPromise().then(s=>{this._request=void 0,this._metadata=s,this._updateProgress(this._blob.size()),this._transition("success")},this._errorHandler)})}_updateProgress(t){const n=this._transferred;this._transferred=t,this._transferred!==n&&this._notifyObservers()}_transition(t){if(this._state!==t)switch(t){case"canceling":case"pausing":this._state=t,this._request!==void 0?this._request.cancel():this.pendingTimeout&&(clearTimeout(this.pendingTimeout),this.pendingTimeout=void 0,this.completeTransitions_());break;case"running":const n=this._state==="paused";this._state=t,n&&(this._notifyObservers(),this._start());break;case"paused":this._state=t,this._notifyObservers();break;case"canceled":this._error=rg(),this._state=t,this._notifyObservers();break;case"error":this._state=t,this._notifyObservers();break;case"success":this._state=t,this._notifyObservers();break}}completeTransitions_(){switch(this._state){case"pausing":this._transition("paused");break;case"canceling":this._transition("canceled");break;case"running":this._start();break}}get snapshot(){const t=ea(this._state);return{bytesTransferred:this._transferred,totalBytes:this._blob.size(),state:t,metadata:this._metadata,task:this,ref:this._ref}}on(t,n,r,i){const s=new YS(n||void 0,r||void 0,i||void 0);return this._addObserver(s),()=>{this._removeObserver(s)}}then(t,n){return this._promise.then(t,n)}catch(t){return this.then(null,t)}_addObserver(t){this._observers.push(t),this._notifyObserver(t)}_removeObserver(t){const n=this._observers.indexOf(t);n!==-1&&this._observers.splice(n,1)}_notifyObservers(){this._finishPromise(),this._observers.slice().forEach(n=>{this._notifyObserver(n)})}_finishPromise(){if(this._resolve!==void 0){let t=!0;switch(ea(this._state)){case we.SUCCESS:Rn(this._resolve.bind(null,this.snapshot))();break;case we.CANCELED:case we.ERROR:const n=this._reject;Rn(n.bind(null,this._error))();break;default:t=!1;break}t&&(this._resolve=void 0,this._reject=void 0)}}_notifyObserver(t){switch(ea(this._state)){case we.RUNNING:case we.PAUSED:t.next&&Rn(t.next.bind(t,this.snapshot))();break;case we.SUCCESS:t.complete&&Rn(t.complete.bind(t))();break;case we.CANCELED:case we.ERROR:t.error&&Rn(t.error.bind(t,this._error))();break;default:t.error&&Rn(t.error.bind(t,this._error))()}}resume(){const t=this._state==="paused"||this._state==="pausing";return t&&this._transition("running"),t}
1832pause(){const t=this._state==="running";return t&&this._transition("pausing"),t}cancel(){const t=this._state==="running"||this._state==="pausing";return t&&this._transition("canceling"),t}}/**
1833 * @license
1834 * Copyright 2019 Google LLC
1835 *
1836 * Licensed under the Apache License, Version 2.0 (the "License");
1837 * you may not use this file except in compliance with the License.
1838 * You may obtain a copy of the License at
1839 *
1840 *   http://www.apache.org/licenses/LICENSE-2.0
1841 *
1842 * Unless required by applicable law or agreed to in writing, software
1843 * distributed under the License is distributed on an "AS IS" BASIS,
1844 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1845 * See the License for the specific language governing permissions and
1846 * limitations under the License.
1847 */class Sn{constructor(t,n){this._service=t,n instanceof Pe?this._location=n:this._location=Pe.makeFromUrl(n,t.host)}toString(){return"gs://"+this._location.bucket+"/"+this._location.path}_newRef(t,n){return new Sn(t,n)}get root(){const t=new Pe(this._location.bucket,"");return this._newRef(this._service,t)}get bucket(){return this._location.bucket}get fullPath(){return this._location.path}get name(){return hg(this._location.path)}get storage(){return this._service}get parent(){const t=AS(this._location.path);if(t===null)return null;const n=new Pe(this._location.bucket,t);return new Sn(this._service,n)}_throwIfRoot(t){if(this._location.path==="")throw hS(t)}}function eE(e,t,n){return e._throwIfRoot("uploadBytesResumable"),new ZS(e,new Lt(t),n)}function tE(e){e._throwIfRoot("getDownloadURL");const t=$S(e.storage,e._location,fg());return e.storage.makeRequestWithTokens(t,ln).then(n=>{if(n===null)throw cS();return n})}function nE(e){e._throwIfRoot("deleteObject");const t=VS(e.storage,e._location);return e.storage.makeRequestWithTokens(t,ln)}function rE(e,t){const n=DS(e._location.path,t),r=new Pe(e._location.bucket,n);return new Sn(e.storage,r)}/**
1848 * @license
1849 * Copyright 2017 Google LLC
1850 *
1851 * Licensed under the Apache License, Version 2.0 (the "License");
1852 * you may not use this file except in compliance with the License.
1853 * You may obtain a copy of the License at
1854 *
1855 *   http://www.apache.org/licenses/LICENSE-2.0
1856 *
1857 * Unless required by applicable law or agreed to in writing, software
1858 * distributed under the License is distributed on an "AS IS" BASIS,
1859 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1860 * See the License for the specific language governing permissions and
1861 * limitations under the License.
1862 */function iE(e){return/^[A-Za-z]+:\/\//.test(e)}function sE(e,t){return new Sn(e,t)}function yg(e,t){if(e instanceof Su){const n=e;if(n._bucket==null)throw lS();const r=new Sn(n,n._bucket);return t!=null?yg(r,t):r}else return t!==void 0?rE(e,t):e}function oE(e,t){if(t&&iE(t)){if(e instanceof Su)return sE(e,t);throw al("To use ref(service, url), the first argument must be a Storage instance.")}else return yg(e,t)}function Sd(e,t){const n=t==null?void 0:t[tg];return n==null?null:Pe.makeFromBucketSpec(n,e)}function aE(e,t,n,r={}){e.host=`${t}:${n}`,e._protocol="http";const{mockUserToken:i}=r;i&&(e._overrideAuthToken=typeof i=="string"?i:yw(i,e.app.options.projectId))}class Su{constructor(t,n,r,i,s){this.app=t,this._authProvider=n,this._appCheckProvider=r,this._url=i,this._firebaseVersion=s,this._bucket=null,this._host=eg,this._protocol="https",this._appId=null,this._deleted=!1,this._maxOperationRetryTime=Jk,this._maxUploadRetryTime=Zk,this._requests=new Set,i!=null?this._bucket=Pe.makeFromBucketSpec(i,this._host):this._bucket=Sd(this._host,this.app.options)}get host(){return this._host}set host(t){this._host=t,this._url!=null?this._bucket=Pe.makeFromBucketSpec(this._url,t):this._bucket=Sd(t,this.app.options)}get maxUploadRetryTime(){return this._maxUploadRetryTime}set maxUploadRetryTime(t){_d("time",0,Number.POSITIVE_INFINITY,t),this._maxUploadRetryTime=t}get maxOperationRetryTime(){return this._maxOperationRetryTime}set maxOperationRetryTime(t){_d("time",0,Number.POSITIVE_INFINITY,t),this._maxOperationRetryTime=t}async _getAuthToken(){if(this._overrideAuthToken)return this._overrideAuthToken;const t=this._authProvider.getImmediate({optional:!0});if(t){const n=await t.getToken();if(n!==null)return n.accessToken}return null}async _getAppCheckToken(){const t=this._appCheckProvider.getImmediate({optional:!0});return t?(await t.getToken()).token:null}_delete(){return this._deleted||(this._deleted=!0,this._requests.forEac
1862h(t=>t.cancel()),this._requests.clear()),Promise.resolve()}_makeStorageReference(t){return new Sn(this,t)}_makeRequest(t,n,r,i,s=!0){if(this._deleted)return new fS(sg());{const o=bS(t,this._appId,r,i,n,this._firebaseVersion,s);return this._requests.add(o),o.getPromise().then(()=>this._requests.delete(o),()=>this._requests.delete(o)),o}}async makeRequestWithTokens(t,n){const[r,i]=await Promise.all([this._getAuthToken(),this._getAppCheckToken()]);return this._makeRequest(t,n,r,i).getPromise()}}const Ed="@firebase/storage",bd="0.13.2";/**
1863 * @license
1864 * Copyright 2020 Google LLC
1865 *
1866 * Licensed under the Apache License, Version 2.0 (the "License");
1867 * you may not use this file except in compliance with the License.
1868 * You may obtain a copy of the License at
1869 *
1870 *   http://www.apache.org/licenses/LICENSE-2.0
1871 *
1872 * Unless required by applicable law or agreed to in writing, software
1873 * distributed under the License is distributed on an "AS IS" BASIS,
1874 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1875 * See the License for the specific language governing permissions and
1876 * limitations under the License.
1877 */const vg="storage";function fb(e,t,n){return e=Te(e),eE(e,t,n)}function pb(e){return e=Te(e),tE(e)}function gb(e){return e=Te(e),nE(e)}function mb(e,t){return e=Te(e),oE(e,t)}function lE(e=vp(),t){e=Te(e);const r=au(e,vg).getImmediate({identifier:t}),i=gw("storage");return i&&uE(r,...i),r}function uE(e,t,n,r={}){aE(e,t,n,r)}function cE(e,{instanceIdentifier:t}){const n=e.getProvider("app").getImmediate(),r=e.getProvider("auth-internal"),i=e.getProvider("app-check-internal");return new Su(n,r,i,t,hr)}function dE(){sr(new _n(vg,cE,"PUBLIC").setMultipleInstances(!0)),qt(Ed,bd,""),qt(Ed,bd,"esm2017")}dE();const hE={apiKey:"AIzaSyDBhy681G0f5yP68aeIzm310YJOmwzNVHg",authDomain:"lcm26-prod.firebaseapp.com",projectId:"lcm26-prod",storageBucket:"lcm26-prod.firebasestorage.app",messagingSenderId:"593643872613",appId:"1:593643872613:web:e7ded3cfd5e1dce2e3418c"},wg=yp(hE),Td=Kk(wg),yb=lE(wg),_g=w.createContext(null);function fE({children:e}){const[t,n]=w.useState(null),[r,i]=w.useState(null),[s,o]=w.useState(null),[a,l]=w.useState(null),[u,h]=w.useState(!0),c=ao();w.useEffect(()=>U0(Td,async y=>{if(y)try{const _=await y.getIdTokenResult(),k=_.claims;n(y),i(_.token),o(k.role??null),l(k.libraryId??null)}catch{n(null),i(null),o(null),l(null)}else n(null),i(null),o(null),l(null);h(!1)}),[]);const g=w.useCallback(async()=>{await M0(Td),c("/login")},[c]);return S.jsx(_g.Provider,{value:{user:t,idToken:r,role:s,libraryId:a,loading:u,logout:g},children:e})}function Ei(){const e=w.useContext(_g);if(!e)throw new Error("useAuth must be used within AuthProvider");return e}function Cd(e,t){if(!t)return e;const n=new URLSearchParams;for(const[i,s]of Object.entries(t))s!=null&&n.set(i,String(s));const r=n.toString();return r?`${e}?${r}`:e}async function Id(e){let t=`HTTP ${e.status}`,n;try{n=await e.json(),t=(n==null?void 0:n.error)||(n==null?void 0:n.message)||t}catch{}const r=new Error(t);throw r.status=e.status,n&&(r.details=n),r}function pE(){const{user:e}=Ei(),t=w.useCallback(async(r,i={})=>{if(!e)throw new Error("Not authenticated");const s=await e.getIdToken(),{method:o="GET",body:a,params:l}=i,u=Cd(r,l),h={Authorization:`Bearer ${s}`};a!==void 0&&(h["Content-Type"]="application/json");const c=await fetch(u,{method:o,headers:h,body:a!==void 0?JSON.stringify(a):void 0});if(c.ok||await Id(c),c.status!==204)return c.json()},[e]),n=w.useCallback(async(r,i={})=>{if(!e)throw new Error("Not authenticated");const s=await e.getIdToken(),o=await fetch(Cd(r,i.params),{headers:{Authorization:`Bearer ${s}`}});o.ok||await Id(o);const a=await o.blob(),l=o.headers.get("Content-Disposition")||"",u=/filename="([^"]+)"/.exec(l),h=(u==null?void 0:u[1])||i.fallbackName||"download",c=URL.createObjectURL(a),g=document.createElement("a");g.href=c,g.download=h,document.body.appendChild(g),g.click(),g.remove(),URL.revokeObjectURL(c)},[e]);return{call:t,download:n}}const kg=w.createContext(null);function gE({children:e}
1877){const{user:t,role:n,libraryId:r}=Ei(),{call:i}=pE(),[s,o]=w.useState([]),[a,l]=w.useState(null),[u,h]=w.useState(!0),[c,g]=w.useState(0),v=w.useCallback(()=>g(k=>k+1),[]);w.useEffect(()=>{!t||!n||(n==="admin"?(h(!0),i("/api/admin/libraries").then(k=>{o(k),l(null)}).catch(console.error).finally(()=>h(!1))):(l(r),r&&(h(!0),i(`/api/admin/libraries/${r}`).then(k=>o([k])).catch(console.error).finally(()=>h(!1)))))},[t,n,r,c]);const y=s.find(k=>k.id===a)??null,_=w.useCallback(k=>{n==="admin"&&l(k)},[n]);return S.jsx(kg.Provider,{value:{libraries:s,activeLibraryId:a,setActiveLibraryId:_,activeLibrary:y,loading:u,reload:v},children:e})}function Sg(){const e=w.useContext(kg);if(!e)throw new Error("useLibrary must be used within LibraryProvider");return e}function mE(){const{libraries:e,activeLibraryId:t,setActiveLibraryId:n}=Sg();return S.jsxs("div",{className:"library-switcher",children:[S.jsx("label",{htmlFor:"library-select",className:"library-switcher__label",children:"Library"}),S.jsxs("select",{id:"library-select",className:"library-switcher__select",value:t??"",onChange:r=>n(r.target.value||null),children:[S.jsx("option",{value:"",children:"All Libraries"}),e.map(r=>S.jsxs("option",{value:r.id,children:[r.active?"* ":"- ",r.name]},r.id))]})]})}const yE=[{to:"/",label:"Dashboard"},{to:"/libraries",label:"Libraries",adminOnly:!0},{to:"/users",label:"Users",adminOnly:!0},{to:"/stories",label:"Stories",title:"Available stories"},{to:"/messages",label:"Messages",title:"Menus and Messages to accompany stories"},{to:"/schedules",label:"Schedules",title:"What's playing on which day"},{to:"/phone-numbers",label:"Phone Numbers",title:"Assign your menus/messages to a specific option"},{to:"/widgets",label:"Widgets",title:"Allow playback on your website"},{to:"/logs",label:"Logs",title:"Analytics and reports"},{to:"/utilities",label:"Utilities"},{to:"/now-playing",label:"Now Playing",title:"Marketing Materials"},{to:"/help",label:"Help"}];function vE({collapsed:e,onToggle:t}){const{user:n,role:r,logout:i}=Ei(),{activeLibrary:s,loading:o}=Sg(),a=r==="admin",l=yE.filter(u=>!u.adminOnly||a);return S.jsxs("nav",{className:"sidebar","aria-hidden":e,children:[S.jsxs("div",{className:"sidebar__brand",children:[S.jsxs("div",{className:"sidebar__brand-text",children:[S.jsx("span",{className:"sidebar__logo",children:"LibraryCall"}),S.jsx("span",{className:"sidebar__subtitle",children:"Switchboard"})]}),S.jsx("button",{type:"button",className:"sidebar__collapse",onClick:t,"aria-label":"Collapse navigation sidebar",tabIndex:e?-1:0,children:"«"})]}),a&&S.jsx("div",{className:"sidebar__switcher",children:S.jsx(mE,{})}),S.jsx("ul",{className:"sidebar__nav",children:l.map(u=>{const h=u.label;return S.jsx("li",{className:"sidebar__nav-item",children:S.jsx(iw,{to:u.to,end:u.to==="/",title:u.title,className:({isActive:c})=>`sidebar__link${c?" sidebar__link--active":""}`,children:h})},u.to)})}),S.jsxs("div",{className:"sidebar__footer",children:[S.jsxs("div",{className:"sidebar__debug",children:[S.jsx("span",{className:"sidebar__debug-label",children:"signed in as"}),S.jsx("span",{className:"sidebar__debug-value",children:(n==null?void 0:n.email)??"—"}),S.jsx("span",{className:"sidebar__debug-label",children:"role"}),S.jsx("span",{className:"sidebar__debug-value",children:r??"—"}),S.jsx("span",{className:"sidebar__debug-label",children:"library"}),S.jsx("span",{className:"sidebar__debug-value",children:o?"…":(s==null?void 0:s.name)??"—"})]}),S.jsx("button",{className:"sidebar__logout",onClick:i,children:"Sign Out"})]})]})}const wE=`---
1878title: The Dashboard
1879category: Getting Started
1880order: 40
1881relatedPaths: /
1882---
1883
1884# The Dashboard
1885
1886The Dashboard is the home page of the Switchboard. Every time you sign in, this is where you land. It gives you a quick read on activity and inventory without making you click into anything.
1887
1888![Dashboard page showing eight stat cards across the top — Calls Today, Widget Plays Today, Calls This Week, Widget Plays This Week, Stories, Schedules, Phone Numbers, Widgets — and two tables below labeled Recent Calls and Recent Widget Plays](/help/images/dashboard-overview.png)
1889
1890## Activity at a glance
1891
1892The top row of cards shows recent **activity** for the current library:
1893
1894- **Calls today** and **Calls this week** — phone calls answered and routed through one of the library's numbers.
1895- **Widget plays today** and **Widget plays this week** — sessions where a patron clicked play on an embedded widget on the library's site.
1896
1897Use these to spot a sudden drop (maybe a phone number stopped working) or a spike (a marketing push paid off).
1898
1899## Inventory at a glance
1900
1901The next row shows totals for **content and configuration** the library currently has:
1902
1903- **Stories** — total uploaded audio stories owned by this library.
1904- **Schedules** — calendars that map dates to stories.
1905- **Phone Numbers** — phone numbers assigned to this library.
1906- **Widgets** — embed-code instances active on the library's website.
1907
1908If any of these is \`0\`, that's usually the next thing to fix. A library with \`0 schedules\` has no way to play stories on the phone; a library with \`0 widgets\` isn't reaching its website visitors yet.
1909
1910## Recent calls and widget plays
1911
1912The two tables at the bottom list the **most recent events**:
1913
1914- **Recent Calls** — time, duration, and which story the caller heard.
1915- **Recent Widget Plays** — time, the milestone reached (start / 50% / 90%), and which story.
1916
1917Each story title is a link — click it to jump to the story's detail page. For full charts, breakdowns, and longer time windows, go to the **[Logs and analytics](/help/logs)** page.
1918`,_E=`---
1919title: Getting Started
1920category: Getting Started
1921order: 10
1922---
1923
1924# Getting Started
1925
1926Welcome to the **LibraryCall Switchboard** — the admin app library staff use to upload audio stories, schedule them by day, and serve them to patrons through phone calls and embedded web players.
1927
1928This page is your map of the system. Each section below has its own help topic with screenshots and step-by-step instructions; click the topic name to jump straight in.
1929
1930## What LibraryCall does
1931
1932LibraryCall delivers short audio stories to library patrons through two channels:
1933
1934- **Phone.** A patron dials a library's number and hears today's scheduled story. If the number has multiple language options, the caller presses a digit to choose; otherwise the menu is skipped and the story plays straight through.
1935- **Web widget.** The library embeds a small \`<script>\` tag on its site, which renders an audio player showing today's story.
1936
1937Every piece of content is owned by exactly one **library** (tenant), or belongs to the **Commons** — a shared pool of stories and messages that any library can use.
1938
1939## How the pieces fit together
1940
1941![Overview diagram of LibraryCall Switchboard: library staff upload stories and schedule them; patrons reach them through phone calls or the embedded web widget. For phone calls, a Library has a Phone Number, which has Language Options, each pointing at a Schedule whose Schedule Entries resolve to a Story (with a fallback Story when no entry is set). For the embedded widget, a Library has a Widget pointing at a Schedule whose Schedule Entries resolve to a Story. The same Schedule can power both a phone Language Option and a web Widget so the same story plays everywhere on a given day.](/help/images/getting-started-overview.png)
1942
1943The same **Schedule** can power both a phone language option and a web widget — that's how a library guarantees the same story plays everywhere on a given day.
1944
1945## Where to go next
1946
1947- **[Signing in](/help/signing-in)** — first-time login and password reset.
1948- **[The Dashboard](/help/dashboard)** — what the home page tells you at a glance.
1949- **[Managing stories](/help/managing-stories)** — upload and manage audio stories (Studio only).
1950- **[The Commons](/help/the-commons)** — share stories across libraries.
1951- **[Managing messages](/help/managing-messages)** — short audio prompts (welcomes, menu prompts, closings).
1952- **[Managing schedules](/help/managing-schedules)** — pick which story plays on which day.
1953- **[Phone numbers and language menus](/help/phone-numbers)** — wire up the call-in experience.
1954- **[Widgets](/help/widgets)** — generate embed code for your library's website.
1955- **[Logs and analytics](/help/logs)** — see how patrons are actually using the system.
1956- **[Utilities (recorder, QR codes)](/help/utilities)** — record audio in the browser and make QR posters.
1957
1958## Resources for Storytime Direct customer
1959
1960- **[Now Playing assets](/help/now-playing)** — monthly calendars, social-media graphics, and posters you can download to promote LibraryCall.
1961
1962## The contextual help button
1963
1964Anywhere in the admin app, click the **?** icon in the top-right corner of the page to jump to the help topic that explains the page you're on. If nothing happens, there isn't a topic for that page yet.
1965`,kE=`---
1966title: Logs and Analytics
1967category: Daily Use
1968order: 50
1969relatedPaths: /logs
1970---
1971
1972# Logs and Analytics
1973
1974The Logs page is where you confirm that LibraryCall is doing what you set it up to do. Every phone call answered and every widget play on your site shows up here.
1975
1976![Logs page in Calls view: header with 7 Days / 30 Days / 90 Days / 1 Year / Custom range chips; tabs labeled Calls, Widget Plays, Raw Logs; four KPI cards (Total Calls, Unique Callers, Repeat Callers, Average Duration); a Calls Per Day bar chart stacked by line with a legend; a Call Breakdown bar list with By Line / By Number / By Language toggle buttons; and a Top Stories bar chart](/help/images/logs-overview.png)
1977
1978## The three tabs
1979
1980Across the top of the page:
1981
1982- **Calls** — phone activity. Total calls, unique callers, repeat-caller share, average duration, and breakdowns by line, phone number, or language, and by story.
1983- **Widget Plays** — web activity. Total plays, unique sessions, completion funnel (start / 50% / 90%), top referrers, and which widgets are most active.
1984- **Raw Logs** — a flat, timestamped list of every event. Useful when you're trying to debug a specific call or play instead of looking at trends.
1985
1986## The time range
1987
1988In the header, preset chips — **7 Days**, **30 Days**, **90 Days**, and **1 Year** — set the window every chart and KPI on the page covers. Pick one and the page recomputes; nothing else needs to be selected.
1989
1990For anything else — a specific month, a school semester, a year-over-year comparison — choose **Custom** and pick a start and end date. Custom ranges can reach back through your full history (up to five years per view).
1991
1992For longer windows the volume chart automatically switches from daily bars to weekly or monthly ones so trends stay readable: up to about three months you see days, up to about a year you see weeks, and beyond that you see months. The chart title tells you which ("Calls Per Day", "Calls Per Week", "Calls Per Month").
1993
1994## Reading the Calls tab
1995
1996The four KPIs at the top tell you the headline numbers:
1997
1998- **Total Calls** — every answered call in the window.
1999- **Unique Callers** — distinct phone numbers (hashed for privacy; you'll never see the actual numbers).
2000- **Repeat Callers** — how many of those unique callers called more than once. Repeat callers are your most engaged audience.
2001- **Avg Duration** — average call length. If today's story is 90 seconds and your average is 30 seconds, callers are hanging up early — the story may be too long, or there's a problem you should listen for.
2002
2003Below the KPIs:
2004
2005- **Calls Per Day** — a bar chart showing call volume by day. If you have more than one line, the bars are stacked by line with a legend, so you can see at a glance how your lines compare over time. Spikes line up with marketing pushes, school program days, and holidays.
2006- **Call Breakdown** — where your calls went, with three views you can switch between:
2007  - **By Line** — one row per line (a menu option on one of your phone numbers). This is the default, and the right view when you run several lines — even several in the same language. Each row is labeled with the phone number, the menu key (shown only when that number actually has a menu), and the language.
2008  - **By Number** — the same calls summed per phone number. Useful when each number serves a distinct audience or branch.
2009  - **By Language** — calls summed per language across all your lines. Useful for justifying which languages to keep and which to add.
2010- **Top Stories** — which stories drew the most calls. Strong evidence for what content works.
2011
2012If your history reaches back before Switchboard, calls imported from the old system appear as **Imported** rows (grouped by the menu key callers pressed) — the old system didn't record which line or story served them. Imported calls whose menu choice wasn't recorded cleanly still count toward your totals and show up as **Unattributed** in the stacked chart.
2013
2014## Reading the Widget Plays tab
2015
2016The same shape, but for the embedded widget:
2017
2018- **Total Plays / Unique Sessions** — how many people clicked play and how many distinct browser sessions that came from.
2019- **Completion Funnel (start → 50% → 90%)** — the most diagnostic chart on the page. A widget that gets thousands of starts but very few 90%-finishes is a widget patrons quit. Look at the story length, the page placement, and whether the audio loads cleanly.
2020- **Plays Per Day** — daily volume.
2021- **Top Referrers** — which page on your site drove the most plays. Helps you decide where to feature the widget more prominently.
2022- **Widget Breakdown** — if you have multiple widgets, which one is doing the work.
2023
2024## Raw Logs
2025
2026The Raw Logs tab is a chronological list — most recent first. Each row tells you who/what/when:
2027
2028- For a call: timestamp, the phone number called, which language option was chosen, which story played, the call duration, and a hashed caller identifier.
2029- For a widget play: timestamp, which widget, which story, which milestone 
2029(start / 50% / 90%), and the referring URL.
2030
2031### Caller numbers
2032
2033By default the only caller identifier on a call row is the hash — a scrambled, one-way fingerprint that lets Switchboard count unique and repeat callers without ever storing a phone number.
2034
2035If your library needs to see roughly *where* calls come from, we can enable a **Caller** column that shows the area code and exchange with the last four digits masked — for example \`(812) 579-••••\`. That's enough to tell a local caller from an out-of-area one, or to spot a burst of calls from one community, but it can never identify an individual patron. Ask your Switchboard administrator to turn it on for your library.
2036
2037Two things to expect when it's enabled:
2038
2039- It only covers calls received from **August 2026 onward**. Earlier calls were never stored with this detail — the hash can't be reversed — so they show a dash.
2040- Calls from outside the U.S. and Canada, and callers who block their number, also show a dash.
2041
2042This view is the right place to check when:
2043
2044- A specific patron told you they had trouble reaching a story — you can find the call and see what actually played.
2045- You changed a configuration this morning and want to confirm the next call after the change took it.
2046- You want to confirm a brand-new widget is firing at all.
2047
2048## Practical tips
2049
2050- **Check after every config change.** When you switch a phone number's schedule, edit a language option, or replace a story file, check the next call's row in Raw Logs. The logs are the system's testimony about what *actually* happened, not what you expected to happen.
2051- **Widget completion is the truer engagement metric.** It's much easier to start a widget than to call a phone number; treat 90%-completion plays as your "real listeners" number, not raw starts.
2052- **Logs are scoped to your library.** You only see your own library's events.
2053`,SE=`---
2054title: Managing Messages
2055category: Daily Use
2056order: 30
2057relatedPaths: /messages
2058video: messages.mp4
2059---
2060
2061# Managing Messages
2062
2063A **message** is a short audio prompt — distinct from a story. Stories are the content patrons came to hear; messages are the friendly voice around the content: a welcome on the main menu, the prompt that says "for English, press 1," a closing that thanks the caller for calling.
2064
2065Stories live on their own page and have rich metadata (titles, tags, transcripts, cover images). Messages are simpler: just a name and an audio file.
2066
2067![Flowchart showing the structure of a typical call: caller dials the number, hears the main menu prompt, presses 1 for English or 2 for Spanish, then hears the optional welcome message, the scheduled story for the day, and the optional closing message. Red outlines mark system messages (welcome, menu, closing); blue outlines mark the scheduled story content.](/help/images/managing-messages-flowchart.png)
2068
2069## The Messages page
2070
2071![Messages page listing existing messages with Name, Audio (Play link), Updated, and Edit/Delete columns; the New Message modal is open showing Name and Audio Recording (MP3) fields](/help/images/managing-messages-new-modal.png)
2072
2073The table shows each message your library has, along with a **Play** link (so you can preview without leaving the page) and the date it was last updated. Click **Edit** to change the name or replace the audio; click **Delete** to remove it.
2074
2075## Creating a new message
2076
2077Click **+ New Message** at the top right. The modal asks for two things:
2078
2079- **Name** *(required)* — what staff see when picking the message in other parts of the Switchboard. Use clear names like "English Welcome," "Spanish Closing," or "Main Menu Prompt — Holiday." Patrons never see this name; it's only for you.
2080- **Audio Recording (MP3)** — upload the audio. **MP3 only**, just like stories. The link in the modal points at the **[Audio Recorder on the Utilities page](/help/utilities)** if you want to record from scratch in your browser.
2081
2082Click **Save** and the message is ready to use.
2083
2084## Where messages get used
2085
2086You attach messages to **phone numbers** and **language options** to shape the calling experience:
2087
2088| Setting | Plays when… |
2089|---|---|
2090| **Welcome message on a phone number** | Right after the call connects, before the language menu (if any). Common content: "Welcome to ExampleTown Library Story Hour. To hear today's story, please make a selection." |
2091| **Welcome message on a language option** | After the caller picks that language option. Often a short language-specific greeting. |
2092| **Closing message on a language option** | After today's story finishes, before the call ends. Common content: "Thanks for calling. We'll have a new story tomorrow." |
2093
2094You set these from the **[Phone Numbers](/help/phone-numbers)** page when editing a number or its language options.
2095
2096## Sharing messages with the Commons
2097
2098Messages can be shared in the same way as stories. When you're picking a message in another part of the Switchboard, the picker has two tabs: **Our Messages** and **Commons**. Common defaults like "Default Main Menu (En/Es)" are typically Commons messages contributed by LibraryCall — which is why a brand-new library can have something sensible to play right away without needing to re
2098cord their own.
2099
2100To share one of your library's messages, contact the LibraryCall team — as with stories, adding content to the Commons is handled by a LibraryCall administrator. See **[The Commons](/help/the-commons)** for details.
2101
2102## Practical tips
2103
2104- **Keep messages short.** A 5–8 second welcome feels professional. A 30-second welcome makes patrons hang up.
2105- **Match the language.** Don't put English in a "Spanish Welcome" message — the language tag is just a label here, but if the caller pressed **2 for Spanish** and hears English, they'll think the system is broken.
2106- **Test on a real phone.** Once you've wired a message to a number, call the number yourself and listen end-to-end. The recorder you used in the browser sounds different over a phone connection.
2107`,EE=`---
2108title: Managing Schedules
2109category: Daily Use
2110order: 40
2111relatedPaths: /schedules
2112video: schedules.mp4
2113---
2114
2115# Managing Schedules
2116
2117A **schedule** is a calendar that says *"on this date, play this story."* It's the heart of how LibraryCall delivers fresh content every day. You can have several schedules running at once — one per language, one per phone number, one per program — and each runs independently.
2118
2119## The Schedules page
2120
2121![Schedules page showing schedule selector chips at the top, then a calendar in monthly view with each day showing the assigned story title](/help/images/managing-schedules-calendar.png)
2122
2123Across the top is a row of **schedule selector chips** — one per schedule the library has. The active chip is highlighted; click another to switch the calendar view to that schedule. Beside the chips is an **Edit Schedule** button for changing the active schedule's settings.
2124
2125Below the toolbar, the calendar tells you everything important about the selected schedule:
2126
2127- The **timezone** the schedule runs in (e.g., \`Central\`).
2128- The **language** the schedule is set to.
2129- A reminder: "Click a day to assign a story. Drag to select a range."
2130
2131Each day in the calendar grid shows the **title of the story assigned to that date**. Empty days are days where the **fallback story** will play (more on that below).
2132
2133## Creating or editing a schedule
2134
2135Click **Edit Schedule** at the top of the page (or **+ New Schedule** if you don't have one yet). The schedule modal asks for:
2136
2137![Edit Schedule modal with Name, Timezone, Language, and Fallback Story fields. The Fallback Story uses a tab control with Our Stories and Commons; a Commons story called "Why Pigs Have Curly Tails" is selected](/help/images/managing-schedules-edit-modal.png)
2138
2139- **Name** *(required)* — a clear label staff will recognize. Common patterns: "Riverton 1 English," "Toll-Free Spanish," "After-School Program."
2140- **Timezone** *(required)* — used to decide which date "today" is. A schedule for an East Coast library should be \`America/New_York\`; a West Coast library is \`America/Los_Angeles\`. Get this right — if it's wrong, the schedule rolls over to the next day's story too early or too late.
2141- **Language** *(required)* — the language of the audio in this schedule. **This also drives the wording of the embedded widget's UI** — labels like "Today's Story," "Listen now," and the call-to-action button. If the schedule is "Spanish," the widget says it in Spanish.
2142- **Fallback Story** *(required)* — the story that plays on any date that doesn't have an explicit assignment. Pick something seasonally evergreen so it doesn't feel out of place when it surfaces. Use the **Our Stories** / **Commons** tabs to pick from your own library or the shared pool.
2143
2144Click **Save** to create or update. Click **Delete** at the bottom of the modal to remove the schedule entirely (and all its calendar entries). If the schedule is currently used by a widget or a phone language option, the Switchboard will refuse to delete it and tell you which references are blocking the delete — fix those first.
2145
2146## Assigning a story to a date
2147
2148Click any day on the calendar. The **Assign Story** modal opens, scoped to that date.
2149
2150![Assign Story modal scoped to June 5, 2026, with Our Stories and Commons tabs and a search f
2150ield; an Assign button is at the bottom right](/help/images/managing-schedules-assign-story.png)
2151
21521. Use **Our Stories** or **Commons** to pick the source.
21532. Type in the search field to filter. The list is automatically restricted to stories that match the schedule's **language** — you won't see Spanish stories on an English schedule and vice versa.
21543. Pick the story.
21554. Click **Assign**.
2156
2157The story now shows on that date in the calendar. Click the date again to swap in a different story; click again with a different story selected to update.
2158
2159To remove a date's assignment (so the fallback story takes over), open the date and clear the selection, or use the calendar's "remove" affordance if shown. You can also drag-select a **range of dates** and assign the same story to all of them at once — handy for a week-long themed series.
2160
2161## How "today" gets resolved
2162
2163When a phone call comes in or a widget loads, the system asks the schedule:
2164
21651. What is "today" in the schedule's **timezone**?
21662. Is there a schedule entry for that exact date? If yes, play that story.
21673. If no, play the schedule's **fallback story**.
2168
2169That's it. There's no "yesterday," no "next available story" — just today's entry, or the fallback. Plan accordingly: if you skip a Tuesday, the fallback plays on Tuesday.
2170
2171One exception: **retired stories**. If a day points at a story that LibraryCall has retired (see [Managing Stories](/help/managing-stories)), it keeps playing through the story's plays-through date and then the fallback takes over, as if the day were empty. Those days show a **⚑ flag** on the calendar, and the title is struck through once the fallback has taken over. If a schedule's *fallback* is retired, a yellow warning appears above the calendar — pick a new fallback in **Edit Schedule**, or callers will hear an error on unscheduled days.
2172
2173## Practical tips
2174
2175- **One schedule per language per phone path.** If your phone number has English (digit 1) and Spanish (digit 2), each digit has its own language option, and each language option points at a separate schedule. The schedules are independent — assigning a Spanish story doesn't affect what plays for English callers.
2176- **Re-use a schedule across channels.** A single schedule can be wired to a phone language option *and* an embedded widget at the same time — that's the simplest way to guarantee both channels play the same daily story.
2177- **Watch the schedule selector chips.** The chip's color tells you whether the schedule is local (blue) or shared from the Commons (green). It's easy to think you're editing your own schedule when you're actually viewing one from the Commons; check the chip color and the active library before clicking **Edit Schedule**.
2178`,bE=`---
2179title: Managing Stories
2180category: Daily Use
2181order: 10
2182relatedPaths: /stories
2183video: stories.mp4
2184---
2185
2186# Managing Stories
2187
2188A **story** is a single audio recording — typically a couple of minutes long — that patrons hear when they call the library or press play on the embedded widget. The Stories page is where you upload new stories, edit existing ones, and find stories the Commons makes available to your library.
2189
2190## The Stories page
2191
2192The page has two tabs above the search bar:
2193
2194- **Our Stories** — stories your library owns. Only your library can edit or delete these.
2195- **Commons** — stories that other libraries (and the LibraryCall team) have shared. You can use them in your schedules; you cannot edit or delete them.
2196
2197![Stories page with Our Stories and Commons tabs at the top, a search bar, transcript search, language filter, and sort order, followed by a table of stories with cover thumbnails, titles, languages, durations, tags, and creation dates](/help/images/managing-stories-commons-tab.png)
2198
2199The toolbar lets you:
2200
2201- **Search by title** — filters as you type. Matches the title, English title, and transliterated title, so an English search finds non-English recordings too.
2202- **Search transcript** — full-text search across the transcript field. Great for finding a story when you remember a phrase but not the title.
2203- **Filter by language** — narrow to one language.
2204- **Hide / Show / Only Retired** — retired stories are hidden by default. See "Retired stories" below.
2205- **Sort** — newest first (default) or other orders.
2206
2207Each row shows a **cover image**, the **title**, the **language**, the **duration**, any **tags** you've added, and the date the story was created. Click **View** at the right of a row to open the story detail page.
2208
2209## Creating a new story
2210
2211Click **+ New Story** at the top right. The new-story modal has two halves.
2212
2213### Top of the modal — text content
2214
2215![Top of the New Story modal, showing the Title field, Language picker (English by default), Duration in seconds, Backdated Created Date, Blurb, and Transcript fields](/help/images/managing-stories-new-modal-top.png)
2216
2217- **Title** *(required)* — what staff and patrons see in pickers and players.
2218- **Language** *(required)* — pick from the dropdown. The system uses ISO codes under the hood (\`en\`, \`es\`, \`fa\`, \`prs\`, etc.); you just see the language name. Set this carefully — schedules and phone language options group stories by language.
2219- **Duration (seconds)** — auto-fills from the audio file when you upload one. You can override it if needed.
2220- **Backdated Created Date** — leave empty unless you're importing an older story and want it to sort by its original creation date instead of "today."
2221- **Blurb** — a one- or two-sentence summary, displayed under the player on the widget. Optional but recommended.
2222- **Transcript** — the full text of the audio. Optional but very useful: it powers transcript search, helps with accessibility, and gives staff a way to skim a story without listening.
2223
2224### Audio and tags
2225
2226![Lower portion of the New Story modal, showing the Audio File picker with a note about MP3 and a link to the Audio Recorder on the Utilities page, and a Tags input with an Add button](/help/images/managing-stories-new-modal-bottom.png)
2227
2228- **Audio File** — the recording itself. **MP3 only.** Phone playback and the widget player both require MP3 for reliable playback. If you need to record from scratch, use the **[Audio Recorder on the Utilities page](/help/utilities)** — it produces a clean MP3 you can save directly as a story.
2229- **Tags** — short labels for grouping (\`bedtime\`, \`aesop\`, \`holiday\`). Type a tag and click **Add**, or press Enter. Tags are casual classification, not a structured taxonomy — pick what's useful for your staff. They're searchable and visible in the table.
2230
2231### The Website Widget section
2232
2233Everything that shows up in the embedded [widget](/help/widgets) is grouped here: a text blurb, a cover image, and up to two optional **Related Resources** links.
2234
2235![The Website Widget section of the Story form, showing a Text Blurb, an Image with Remove and Choose File controls, and a Related Resources card containing Related File and Related File Text on one row and Related Link and Related Link Text on the next](/help/images/managing-stories-widget-section.png)
2236
2237- **Text Blurb** — a one- or two-sentence summary shown under the player on the widget. Optional but recommended.
2238- **Image** — a square JPG or PNG that appears in the widget and on this index. Optional; if you skip it, a default placeholder shows.
2239- **Related File** — an optional download (PDF activity sheet, transcript, lyrics, etc.) that appears as a link beneath the blurb.
2240- **Related File Text** — what the link to the related file says. If left empty, the file's filename is used.
2241- **Related Link** — an optional web address (e.g. a related page on your library's own site, such as a catalog record) that appears as a link beneath the related file. Enter the full URL, including \`https://\`.
2242- **Related Link Text** — what the link says. If left empty, the address itself is shown.
2243
2244Both related resources open in a **new browser tab**, so patrons don't lose the widget when they follow one.
2245
2246When everything is set, click **Create Story**. The audio uploads to storage and the story appears in **Our Stories**.
2247
2248## Editing or deleting a story
2249
2250From the Stories table, click **View** to open the story's detail page. The same fields as the create modal are editable there. To delete, use the **Delete** button at the bottom of the detail page; this is permanent and removes the audio file from storage as well as the story record.
2251
2252You cannot delete a story that's currently being used as the **fallback story** for a schedule, or assigned to a date in a schedule entry. The system will tell you what's in the way — fix the schedule first, then delete.
2253
2254## Retired stories
2255
2256Sometimes a recording has to leave circulation — a license expired, or the recording was never LibraryCall's to share. Rather than deleting it and leaving holes in everyone's calendars, a LibraryCall administrator marks it **Retired**, usually with a **plays through** date.
2257
2258What that means for you:
2259
2260- **You can't add it to a schedule anymore.** Retired stories disappear from the story picker in Schedules, and the system refuses them if you try. Use the **Show Retired** filter on the Stories page if you need to find one.
2261- **Days you already scheduled keep working — for now.** Any day already on your calendar keeps playing the story through its plays-through date. On the calendar, those days show a small **⚑ flag**; hover to see the date.
2262- **After the plays-through date, the fallback plays instead.** The day stays on your calendar with the title struck through, but callers and the widget hear your schedule's **fallback story**. If you'd rather choose a replacement, open the day and pick another story.
2263- **Watch your fallback.** If a schedule's fallback story is itself retired, callers hear an error message on days with 
2263nothing scheduled. The Schedules page shows a yellow warning when this is the case; open **Edit Schedule** and choose a new fallback.
2264
2265Retired stories show a red **Retired** badge on the Stories page and on the story's detail page. Only LibraryCall administrators can retire or un-retire a story; if you think one was retired by mistake, contact us.
2266
2267## Sharing a story to the Commons
2268
2269If a story would be useful to other libraries, contact the LibraryCall team and tell us which story you'd like to share. Adding a story to the Commons is handled by a LibraryCall administrator — there's no self-service option on the story page. Once we've reviewed and approved it, the story appears in every library's Commons tab. See **[The Commons](/help/the-commons)** for how this works in practice.
2270`,TE=`---
2271title: Now Playing Assets
2272category: Daily Use
2273order: 70
2274relatedPaths: /now-playing
2275---
2276
2277# Now Playing Assets
2278
2279**Now Playing** is your download spot for monthly promotional assets — printable calendars, social-media graphics, posters — produced by the LibraryCall team. Grab what you need to promote LibraryCall on your library's website, social channels, newsletters, and print materials. The page lives at \`/now-playing\`, outside the admin area, so you can pull files quickly without signing in.
2280
2281![Now Playing page with three month sections — May 2026, June 2026, July 2026 — each containing a bulleted list of asset links such as "May Calendar - English" and "May Social Media - Spanish"](/help/images/now-playing-page.png)
2282
2283## Where the content comes from
2284
2285Now Playing items are organized into **filesets** (one per month, typically), and each fileset has a list of files with descriptions and a display order. Files are stored in cloud storage and served directly from the URLs shown on the page.
2286
2287The content of Now Playing is **global, not per-library**. Every library on LibraryCall sees the same listing. That's intentional — the assets are produced by the LibraryCall team for the network, not by individual libraries.
2288
2289## How updates happen
2290
2291The LibraryCall service team maintains the filesets and files for the whole network. New months, new files, and reordering all show up on the public Now Playing page automatically — you don't need to do anything to keep this page current.
2292
2293## Tips
2294
2295- **Check at the start of each month.** Confirm new calendars and graphics are posted before you plan your monthly promotion.
2296- **Links open in a new tab.** You can keep browsing the listing while files download.
2297`,CE=`---
2298title: Phone Numbers
2299category: Configuration
2300order: 10
2301relatedPaths: /phone-numbers
2302---
2303
2304# Phone Numbers
2305
2306This page is where you configure what happens when a patron dials your library's number. A phone number can play a single story straight through, or it can offer a menu (*"for English, press 1; for Spanish, press 2"*) and route the call to a different schedule based on the digit pressed.
2307
2308## Reading the index
2309
2310![Phone Numbers page with a search bar across the top and a table of numbers; the first row is the toll-free number for Riverton Village Library, and four indented rows below it show language options 1 through 4. The Edit button on the phone-number row is highlighted with a red box labeled 1, and the Edit button on the first language-option row is highlighted with a blue box labeled 2](/help/images/phone-numbers-index.png)
2311
2312Each phone number gets a top-level row showing the **display number**, the **E.164 (international) number**, the **owning library**, and a friendly **label**. Below that, indented, are the **language options** — each with a digit key, a language, and the schedule it's pointing at.
2313
2314Two **Edit** buttons matter:
2315
2316- **1 (red box) — edit the phone number itself** (label, display number, welcome message).
2317- **2 (blue box) — edit a language option** (digit, language, schedule, welcome and closing messages).
2318
2319To add a new language option (another menu choice), contact your account manager at **+1 (888) 699-2111** or **[email protected]** — the LibraryCall team will set it up for you.
2320
2321## Editing a phone number
2322
2323![Edit Phone Number modal with fields for Label, Display Number, and Welcome Message — the welcome message is set to "Default Main Menu (En/Es)" from the Commons](/help/images/phone-numbers-edit-modal.png)
2324
2325The fields you can edit:
2326
2327- **Label** — internal name; helps you recognize the number in pickers ("RVL Test Number").
2328- **Display Number** — the human-friendly format you put on flyers (\`(833) 922-2665\`). The system uses this anywhere it shows the number to patrons.
2329- **Welcome Message** — the audio that plays right after the call connects, before the language menu (if any). Pick from **Our Messages** or **Commons**.
2330
2331If you need a brand-new phone number on your account, or you need the underlying number changed, contact your LibraryCall administrator.
2332
2333## Editing a language option
2334
2335![Edit Language Option modal with Phone Key (1), Language (English), Schedule (RVL 1 English), Welcome Message (English Welcome from Our Messages), and Closing Message (English Closing Message from Our Messages) fields](/help/images/phone-numbers-language-option-modal.png)
2336
2337A language option is one branch of the phone menu. The fields:
2338
2339- **Phone Key** *(required)* — the digit the caller presses (1 through 9). If the phone number only has one language option, this digit is unused — any value is fine as a placeholder, because the menu is skipped entirely (see "Direct mode" below).
2340- **Language** *(required)* — the language tag for the audio on this branch. Must match the language of the schedule you point at.
2341- **Schedule** *(required)* — which schedule's "today" story should play on this branch. You can only pick schedules from your own library. The schedule's language must match the language option's language.
2342- **Welcome Message** — plays after the caller picks this option but before the story. A short language-specific greeting works well here.
2343- **Closing Message** — plays after today's story finishes, before the call ends.
2344
2345Each message picker has the **Our Messages / Commons** tabs so you can pull from your own library or shared content.
2346
2347## Direct mode (single language option)
2348
2349If a phone number has **exactly one** language option, LibraryCall skips the menu entirely. The caller hears:
2350
23511. The phone number's **welcome message** (if any).
23522. The language option's **welcome message** (if any).
23533. Today's **story** from the schedule.
23544. The language option's **closing message** (if any).
23555. Hang up.
2356
2357No "press a digit" prompt. The **Phone Key** value still has to be set in the form, but it's never used. This is the right setup for libraries that only serve content in one language.
2358
2359If you add a *second* language option, the menu reappears automatically — no other changes needed.
2360
2361## What patrons hear
2362
2363Putting the pieces together for a typical bilingual number:
2364
23651. Caller dials the number → **welcome message** on the phone number plays.
23662. The system reads the menu, e.g. *"For English, press 1; for Spanish, press 2."*
23673. Caller presses **2** → **welcome message** on the Spanish language option plays (if one is set).
23684. The Spanish schedule resolves "today's story" and plays it.
23695. The **closing message** on the Spanish language option plays (if set).
23706. Call ends.
2371
2372If anything is misconfigured (no schedule on the language option, no fallback story on the schedule), the caller hears a generic error message and the call drops cleanly. The **[Logs](/help/logs)** page records every call, so you can spot a problem fast.
2373
2374## Practical tips
2375
2376- **Test from a real phone after every change.** What you set here is what the phone system reads at call time, so a typo lands immediately.
2377- **Don't change the digit key on a popular number** without warning patrons. If your flyer says "press 2 for Spanish" and you swap 2 to 3, every call by a regular caller silently gets the wrong story.
2378- **Match languages between the option and the schedule.** Putting an English schedule on a "Spanish" language option will not be auto-corrected; you'll just confuse callers.
2379`,IE=`---
2380title: Signing In
2381category: Getting Started
2382order: 20
2383relatedPaths: /login
2384---
2385
2386# Signing In
2387
2388The LibraryCall Switchboard is a private admin tool. Every staff member needs their own email and password to sign in.
2389
2390## Signing in for the first time
2391
2392When a LibraryCall administrator creates your account, you'll receive an email with a link to set your password. Once that's done, go to the Switchboard URL your library was given and sign in with your email and password.
2393
2394![Sign-in page with the LibraryCall logo, an email field pre-filled with [email protected], a password field, a Sign In button, and a Forgot Password link](/help/images/signing-in-login.png)
2395
23961. Enter the **Email** address you used when your account was created.
23972. Enter your **Password**.
23983. Click **Sign In**.
2399
2400If your credentials are correct, you'll land on the **Dashboard**. If they're not, you'll see an error message — try again or use the **Forgot Password?** link.
2401
2402## Resetting your password
2403
2404If you've forgotten your password, click **Forgot Password?** on the sign-in page.
2405
2406![Password reset page with a single email field and a Send Reset Email button](/help/images/signing-in-password-reset.png)
2407
24081. Type the email address tied to your LibraryCall account.
24092. Click **Send Reset Email**.
24103. Open the email that arrives (check your spam folder if it doesn't show up within a minute or two) and click the link inside.
24114. Choose a new password.
24125. Return to the sign-in page and sign in with your new password.
2413
2414If you click **Back to Sign In** without sending the reset, your existing password remains unchanged.
2415
2416## Signing out
2417
2418Use the **Sign Out** button at the bottom of the left-hand sidebar. The sidebar also shows the email you're signed in as, your role, and the library you're currently working on — useful confirmation when you have access to more than one place.
2419
2420## Trouble signing in?
2421
2422- **Reset emails don't arrive.** Confirm the address you entered is exactly the one your account was created with. If the address is wrong, the system won't tell you — it just silently does nothing. Ask your LibraryCall administrator to check the address on file.
2423- **You see a generic "invalid credentials" error.** That covers both wrong-email and wrong-password cases. Try the reset flow.
2424- **You used to have access and now don't.** Your account may have been deactivated. Contact your LibraryCall administrator.
2425`,RE=`---
2426title: The Commons
2427category: Daily Use
2428order: 20
2429video: commons.mp4
2430---
2431
2432# The Commons
2433
2434The **Commons** is the shared library of stories and messages that any library on LibraryCall can use. Some libraries record more than they can play; smaller libraries don't have time to record fresh content every week. The Commons lets contributing libraries share, and lets every library draw from a pool that's bigger than what they could produce alone.
2435
2436## Where you'll see it
2437
2438There are two places the Commons shows up:
2439
24401. On the **[Stories](/help/managing-stories)** page, the **Commons** tab next to **Our Stories** — a browsable index of every story your library can use that it didn't record itself.
2441
2442   ![Stories page with the Commons tab selected, listing shared stories from across the LibraryCall network](/help/images/managing-stories-commons-tab.png)
2443
24442. Inside pickers throughout the Switchboard — anywhere you choose a story or a message, you'll see two small buttons labeled **Our Stories / Commons** (or **Our Messages / Commons**). Clicking **Commons** swaps the autocomplete list to show shared content. The two affordances mean you can stay inside one workflow and still pull from the network.
2445
2446## Using a Commons item
2447
2448A Commons story behaves exactly like one of your own when it comes to *playing* it:
2449
2450- Drop it onto a date in your schedule (it shows up in the **Commons** picker tab).
2451- Use it as a schedule's fallback story.
2452- Reference it from a widget.
2453
2454What you *cannot* do is edit it, delete it, change its tags, or rerecord its audio. Those rights stay with the library that contributed it.
2455
2456## Contributing to the Commons
2457
2458If your library has a story or message that other libraries could use, contact the LibraryCall team and let us know. A LibraryCall administrator reviews the content and adds it to the Commons — there's no self-service sharing option in the Switchboard. Your library remains the owner: you can still edit or delete the item, and other libraries only get to play it.
2459
2460## Behavior to know about
2461
2462- **Updates flow through.** When the contributing library edits a Commons story (fixes a typo in the transcript, replaces the cover image), every library using it sees the update — there's no "snapshot" copy.
2463- **Removed Commons items.** If the contributing library deletes a story that you were referencing, the schedule entry pointing at it falls back to the schedule's **fallback story** for that day. Check the **[Logs](/help/logs)** if a particular date suddenly serves the fallback.
2464- **Languages cross over.** A schedule for English will only show English Commons stories in its picker; the same goes for Spanish, Dari, and so on. The picker filters by the schedule's language automatically.
2465`,PE=`---
2466title: Troubleshooting Phone Calls
2467category: Troubleshooting
2468order: 10
2469---
2470
2471# Troubleshooting Phone Calls
2472
2473When a caller doesn't hear what they should — or hears nothing at all — work through this list. The fix is almost always upstream of the phone number itself.
2474
2475## "I called and got the wrong story"
2476
2477LibraryCall picks today's story by asking the **schedule** that's wired to the language option the caller chose. Check, in order:
2478
24791. **Did the caller pick the right language option?** A caller pressing **2** when they meant **1** gets the digit-2 schedule.
24802. **Is today's date assigned in that schedule?** Open the **[Schedules](/help/managing-schedules)** page, switch to the right schedule, and look at today on the calendar. If the day is empty, the **fallback story** is what plays — that's by design.
24813. **Is the schedule's timezone correct?** A schedule set to \`America/New_York\` will roll over at midnight Eastern, even if the library is in California. Open the schedule's edit modal to confirm.
2482
2483## "The caller heard the wrong language"
2484
2485Each language option has its own **language tag** and points at a separate **schedule**. If the schedule's language doesn't match the option's language tag, the audio you assign there can drift away from what the option promised.
2486
2487- Open the **[Phone Numbers](/help/phone-numbers)** page and edit the language option in question.
2488- Check that the **Language** field matches what the caller pressed for (English on digit 1 = English schedule).
2489- Open the linked schedule and confirm its **Language** field matches too.
2490
2491## "Nothing plays — the call ends right away"
2492
2493A few possibilities:
2494
2495- The language option points at a **schedule that has no fallback story** (or the fallback was deleted). The call has nothing to play. Open the schedule's edit modal and pick a fallback.
2496- The audio file for today's story or fallback is **missing or not an MP3**. LibraryCall requires MP3 for phone playback. If the file got uploaded as WAV or M4A, the call will fail. Re-upload as MP3 — use the **[Audio Recorder](/help/utilities)** if you need to convert.
2497- The phone number isn't actually connected to LibraryCall on the phone-provider side. Library users can't fix this — contact your LibraryCall administrator.
2498
2499Check **[Logs → Raw Logs](/help/logs)** for the call. The log row tells you which language option, which schedule, and which story were resolved (or that resolution failed).
2500
2501## "The caller heard the menu when they shouldn't have" (or vice versa)
2502
2503LibraryCall uses a "direct mode" rule: if the phone number has **exactly one** language option, the menu is skipped entirely. If it has two or more, the menu is read.
2504
2505- If callers are hearing a menu but you want a single direct path, delete or merge extra language options until there's exactly one.
2506- If callers are *not* hearing a menu but you've added a second language option, double-check that the second option saved correctly — it should appear under the phone number on the Phone Numbers page.
2507
2508## "The welcome / closing message doesn't play"
2509
2510Both welcome and closing messages are optional. If you've set one and it isn't playing:
2511
2512- Open the language option (for the closing message and the language welcome) or the phone number (for the top-level welcome).
2513- Confirm the message picker shows the message you expect, not "(none)."
2514- Click the **Play** link on the **[Messages](/help/managing-messages)** page to confirm the audio file actually opens. If it doesn't, re-upload.
2515
2516## When to ask for help
2517
2518If everything looks right in the Switchboard and calls still misbehave, the issue is likely with the phone provider — a number that didn't get connected to LibraryCall correctly, or a misconfigured account. That's a LibraryCall administrator's job. Send them:
2519
2520- The phone number (display format is fine).
2521- The approximate time of a recent failing call.
2522- What the caller heard versus what should have happened.
2523
2524That's enough for the team to find the call in the system and trace it.
2525`,xE=`---
2526title: Troubleshooting Uploads
2527category: Troubleshooting
2528order: 30
2529---
2530
2531# Troubleshooting Uploads
2532
2533If uploading a story, message, cover image, or related file fails, work through these checks.
2534
2535## "Upload spins forever and never finishes"
2536
2537- **Big files take longer than you think.** A 5-minute story at 128 kbps is around 5 MB; on a slow connection that can take a couple of minutes. Wait a moment before assuming it's stuck.
2538- **Browser tab went to background.** Some browsers throttle uploads in inactive tabs. Bring the tab back to the foreground.
2539- **Network blip.** If the network drops mid-upload, the upload won't auto-retry. Cancel the modal, refresh the page, and try again.
2540
2541## "Upload fails with an error"
2542
2543The error message at the top of the modal usually tells you what's wrong. Common cases:
2544
2545- **"MP3 only" or similar format error.** The file isn't an MP3. Convert it (the **[Audio Recorder](/help/utilities)** in the Utilities page produces MP3, and many free tools online will convert WAV/M4A/AAC to MP3).
2546- **"File too large."** There's a practical upper limit on individual uploads. If you're uploading a long story, consider trimming it down — most LibraryCall stories are 1–5 minutes.
2547- **"Unauthorized" or sign-in-required error.** Your session may have expired. Sign out and sign back in.
2548
2549## "Upload succeeds but the audio doesn't play"
2550
2551- **Wrong format.** A file with an \`.mp3\` extension that's actually MP4 or WAV won't play. If you renamed a file, redo the conversion properly instead of just changing the extension.
2552- **Corrupt file.** Try downloading the file from the story's detail page and playing it locally. If it doesn't play locally, re-upload from a known-good source.
2553
2554## "The image I uploaded looks bad"
2555
2556- **Square, please.** Cover images render in a square. A wide image will be center-cropped or letterboxed depending on the player.
2557- **Resolution.** Anything from 400×400 to 1200×1200 looks great. Smaller images get blurry on retina displays; larger ones bloat the bundle without improving quality.
2558- **Transparent backgrounds.** If you upload a PNG with transparency, the widget's background shows through. That can look intentional or sloppy depending on the theme — preview before publishing.
2559
2560## "I uploaded the wrong file"
2561
2562Open the story or message and re-upload. The previous file is replaced; you don't end up with both. Storage is cleaned up automatically when the record is deleted.
2563
2564## When to ask for help
2565
2566Persistent upload failures across multiple browsers or files are likely a problem on the LibraryCall side. Send a LibraryCall administrator:
2567
2568- What you were uploading (story / message / image / related file).
2569- The error message or a screenshot.
2570- Approximate time of the failed attempt.
2571
2572The team can check storage logs to see what actually happened.
2573`,OE=`---
2574title: Troubleshooting Widgets
2575category: Troubleshooting
2576order: 20
2577---
2578
2579# Troubleshooting Widgets
2580
2581When the embedded widget doesn't appear, doesn't play, or shows the wrong story, work through these checks.
2582
2583## "I added the embed code but nothing shows up"
2584
2585The widget renders inside a \`<div>\` and is brought to life by the \`<script>\` tag. If the div is empty:
2586
25871. **Did both the \`<div>\` and the \`<script>\` make it into your page's HTML?** Open the live page in a browser, view the page source, and search for \`dial-a-story-widget\`. If it's missing, your CMS may have stripped it — paste it back in via raw-HTML mode.
25882. **Is the \`data-key\` attribute on the div the right embed key?** Open the **[Widgets](/help/widgets)** page, click into the widget, and copy the embed snippet again. A typo in the key produces a silent failure.
25893. **Is your library's domain on the allowed list?** Each library can have a list of allowed domains; if your site isn't in it, the widget refuses to load. Ask a LibraryCall administrator to confirm or add the domain. See **[Widgets → Allowed Domains](/help/widgets)**.
2590
2591## "The \`<script>\` disappears from my page (BiblioCommons, some CMS platforms)"
2592
2593Some platforms strip third-party \`<script>\` tags for security — **BiblioCommons** is the common one, and some LibGuides/CMS setups do it too. If you paste the standard snippet, save, and the \`<script>\` line is gone when you re-check the source (and the widget never appears), the platform is removing it.
2594
2595Switch to the **iframe embed** instead. In the embed-code modal, open the **iframe** tab and copy that snippet — it loads the widget in a self-contained frame that these platforms don't block. See **[Widgets → iframe embed](/help/widgets)**. Set the iframe's \`width\`/\`height\` to fit your page, and use one iframe per widget.
2596
2597## "The widget loads but the play button does nothing"
2598
2599- Open the page in a browser and watch the developer console for errors. Mixed-content errors (\`https\` page loading \`http\` audio) will block playback; LibraryCall serves audio over \`https\` so this usually only comes up if you've manually edited the snippet.
2600- Check that today's schedule entry has a real audio file. The **[Logs → Widget Plays → Raw Logs](/help/logs)** tab will show whether the manifest fetch succeeded.
2601
2602## "The widget shows the wrong story"
2603
2604Widgets play whatever the **schedule they're tied to** says is today's story. Same diagnostic steps as the phone-call equivalent:
2605
2606- Wrong widget → wrong schedule. Confirm the widget you embedded references the schedule you intended.
2607- Right widget → check the schedule's **timezone** and the **calendar entry for today**. An empty entry means the **fallback story** plays.
2608
2609## "The widget's text is in the wrong language"
2610
2611The widget's UI labels (button text, "Today's Story" caption, etc.) come from the **language** field on the *schedule*, not from the story that resolves on a given day. If your widget shows English text but a Spanish story:
2612
2613- Open the schedule and change its **Language** to match the audio.
2614- Save. The widget picks up the new language on the next page load.
2615
2616## "My patrons say the widget never finishes"
2617
2618Open **[Logs → Widget Plays](/help/logs)**. The completion funnel shows how many sessions reached the start, the 50% mark, and the 90% mark. A heavy drop between start and 50% usually means:
2619
2620- The story is too long for the page context (a homepage banner widget can't compete with the rest of the page).
2621- The audio loads slowly. If your hosting is slow, even short audio takes a while to start; consider whether the page above the widget is too heavy.
2622- Patrons are previewing and bouncing — that's normal for casual visitors.
2623
2624## "Multiple widgets on the same page misbehave"
2625
2626You only need **one \`<script>\` tag per page**, even if you have many \`<div>\`s. Some CMS templates add the script multiple times; that can cause double-rendering or strange order issues. Trim down to one script tag and refresh.
2627
2628## When to ask for help
2629
2630If everything in the Switchboard looks right and the widget still doesn't render or play, send a LibraryCall administrator:
2631
2632- The widget's name or embed key.
2633- The exact URL where the widget should appear.
2634- A screenshot or description of what's happening.
2635
2636The team can then check whether the manifest is being requested, whether the domain is allowed, and whether anything is wrong on the storage side.
2637`,LE=`---
2638title: Utilities
2639category: Daily Use
2640order: 60
2641relatedPaths: /utilities
2642---
2643
2644# Utilities
2645
2646The Utilities page is a small collection of in-browser tools that save you a trip to outside software. Everyone gets two: an **Audio Recorder** that produces an MP3 ready for use as a story or message, and a **QR Code Generator** for posters and flyers. LibraryCall administrators see additional data-maintenance panels, described at the end of this page.
2647
2648![Utilities page with two cards side by side. Left: Audio Recorder with a Start Recording button. Right: QR Code Generator with Type radio buttons (Text/URL or Phone Number), a Content text field, and a Generate QR Code button](/help/images/utilities-overview.png)
2649
2650## The Audio Recorder
2651
2652Use this when you want to record a story or message directly from your microphone instead of editing audio in another program. The recorder produces an MP3 — exactly the format both phone playback and the widget player require.
2653
2654To record:
2655
26561. Click **Start Recording**.
26572. Your browser will ask for microphone permission the first time. Allow it.
26583. Speak. The recorder is doing its work in the browser; nothing is uploaded yet.
26594. Click **Stop** when you're done.
2660
2661After you stop, the card switches to a player so you can preview what you recorded:
2662
2663![Audio Recorder card after recording: an audio player at the top showing 0:00 / 0:03, then four buttons — Download, Save as Message, Save as Story, and a Record Again link below them](/help/images/utilities-recorder-recorded.png)
2664
2665Press play to listen back. Then choose what to do with the clip:
2666
2667- **Download** — saves the MP3 to your computer. Use this if you want to edit the audio in another program before uploading.
2668- **Save as Message** — opens a small dialog where you give the recording a **name**. Saves the clip directly as a [message](/help/managing-messages) — handy for welcomes, menu prompts, and closings.
2669- **Save as Story** — opens the same flow but routes the recording into the [Stories](/help/managing-stories) area, where you fill in title, language, transcript, etc.
2670- **Record Again** — discards the current clip and returns to the start screen. The clip is gone the moment you click this; download or save first if you want to keep it.
2671
2672### Tips for clean recordings
2673
2674- **Use a wired headset or USB mic.** Laptop built-in mics pick up keyboard noise.
2675- **Record in a quiet room.** A closet works surprisingly well — soft surfaces kill echo.
2676- **Check the level on playback before saving.** If the recording is too quiet, redo it closer to the mic; if it clips ("crunches" on loud syllables), back off.
2677- **Record one or two test runs first.** The first take always sounds a little stiff.
2678
2679## The QR Code Generator
2680
2681Generates a QR code patrons can scan from a flyer, bookmark, or sign. Two types:
2682
2683- **Text / URL** — paste any text or a URL (\`https://example.com\`, your widget page, an event page).
2684- **Phone Number** — paste a phone number; the generated QR opens the dialer on a smartphone, pre-filled with the number, so the patron just hits "call."
2685
2686Click **Generate QR Code** and the resulting image appears below. Right-click to save it, or paste it directly into your design tool.
2687
2688### Practical tips
2689
2690- **Test the code on your phone before printing.** A QR that doesn't scan because of contrast or print resolution will frustrate patrons.
2691- **Print at a reasonable size.** A 1-inch QR works at arm's length; a wall poster needs 4 inches or more.
2692- **Add a short caption.** "Scan to call our story line" tells patrons what to expect; QRs without context are usually ignored.
2693
2694## Administrator panels
2695
2696These appear only for LibraryCall administrators. Each one is safe to run more than once, and the two story panels always start with a **Preview** that changes nothing.
2697
2698### Retire Stories (bulk)
2699
2700Marks a pasted list of stories as **retired** (see [Managing Stories](/help/managing-stories) for what that means to libraries). Paste story ids one per line — anything after a \`#\` or a space on the line is ignored, so you can keep titles as notes. Optionally set a **Plays through** date; leave it blank to stop the stories immediately.
2701
2702**Preview** shows, for every id: the story's owner, whether it is in the Commons, how many upcoming calendar days still reference it, and any schedule that uses it as its **fallback**. A retired fallback means callers hear an error on unscheduled days, so those rows are highlighted in red — fix the schedule's fallback before or right after retiring. Missing ids are listed rather than failing the run. When the preview looks right, click **Retire N stories** and confirm.
2703
2704### Transfer Story Ownership (bulk)
2705
2706Moves a pasted list of stories to another library and withdraws them from the Commons, so only that library can schedule them from then on. This is how donated recordings go back to the library that donated them.
2707
2708**Preview** shows each story's current owner and flags titles the target library already owns (a likely duplicate). Ret
2708ired stories are refused, and stories the target already owns are skipped. Calendar days at other libraries that already reference a transferred story keep playing; those libraries just can't add more. Click **Transfer N stories** and confirm.
2709
2710### Language Data Cleanup and Log Rollups Backfill
2711
2712One-time data migrations from earlier releases: normalizing stored language codes to ISO and building historical analytics rollups. Both are idempotent.
2713`,NE=`---
2714title: Widgets
2715category: Configuration
2716order: 20
2717relatedPaths: /widgets
2718---
2719
2720# Widgets
2721
2722A **widget** is a tiny audio player you embed on your library's website. It shows today's scheduled story, a play button, and (optionally) the dial-in number for patrons who'd rather call. One library can have several widgets — for example, an English widget on the homepage and a Spanish widget on the en-español page.
2723
2724## Creating a widget
2725
2726Click **+ New Widget** at the top right of the Widgets page. The widget modal asks for:
2727
2728- **Name** *(required)* — internal label so you can tell widgets apart in the list ("English widget," "Homepage Spanish").
2729- **Schedule** *(required)* — which schedule the widget should follow. The widget's language and "today's story" both come from this schedule.
2730- **Theme** — pick the visual style. Several built-in themes are available (LibraryCall, Default, Dark, Light, Library Blue, Warm, High Contrast). The colored swatches help you preview each.
2731- **Phone Number** — optional; if set, the widget shows a "call us" button next to the player using this number's display format.
2732- **Phone Display Override** — optional; if you want the widget to show a different number (an extension, a marketing-only line) without changing the underlying phone-number record, type that here.
2733
2734After saving, the widget appears in the index with its name, schedule, and a unique **embed key** that lets your website request the right widget.
2735
2736## Previewing a widget
2737
2738Each widget in the list has a **Preview** button. It opens a live preview of the widget exactly as visitors see it right now — today's scheduled story, the theme you picked, the optional phone call-to-action, and a **working audio player**. Use it to sanity-check a new widget or a theme change before you paste the embed code onto your site.
2739
2740Preview playback is for your eyes only: **plays in the preview are not counted in your widget statistics**, so testing here won't skew the numbers on your Logs page.
2741
2742If the preview shows *"No story available today,"* the widget's schedule simply has nothing scheduled for today — check the schedule, not the widget.
2743
2744## What the widget shows
2745
2746The widget's *content* — the summary, cover image, and any related links — isn't configured on the widget itself. It comes from whichever **story** the widget's schedule resolves for the day. You set it in the **Website Widget** section of each story (on the **Stories** page), so a widget automatically updates as the schedule moves from one story to the next.
2747
2748![The Website Widget section of the New/Edit Story form, showing a Text Blurb, an Image with Remove and Choose File controls, and a Related Resources card containing Related File and Related File Text on one row and Related Link and Related Link Text on the next](/help/images/managing-stories-widget-section.png)
2749
2750- **Text Blurb** — a one- or two-sentence summary shown under the player.
2751- **Image** — a square cover image shown above the blurb.
2752- **Related Resources** — up to two optional links shown beneath the blurb, each opening in a **new browser tab** so patrons don't lose the widget:
2753  - **Related File** — an uploaded download (PDF activity sheet, transcript, lyrics, etc.). **Related File Text** sets the link label; if it's empty, the file's filename is used.
2754  - **Related Link** — a web address (for example, a related page on your library's own site, such as a catalog record). Enter the full URL including \`https://\`. **Related Link Text** sets the link label; if it's empty, the address itself is shown.
2755
2756For step-by-step instructions on filling these in, see **[Managing Stories](/help/managing-stories)**.
2757
2758## Getting the embed code
2759
2760Click the widget's **Get Embed Code** button to open the embed-code modal. It offers two options on tabs — **Standard (Recommended)** and **iframe**.
2761
2762![Embed Code modal showing a div followed by a script tag, plus a Copy to Clipboard button. The div has a data-key attribute containing the widget's embed key.](/help/images/widgets-embed-code.png)
2763
2764### Standard embed (recommended)
2765
2766This is the default tab and works on most websites. The snippet looks like this:
2767
2768\`\`\`html
2769<div class="dial-a-story-widget" data-key="<your-widget-key>"></div>
2770<script src="https://lcm26-prod.web.app/widget.js"><\/script>
2771\`\`\`
2772
2773Add the \`<div>\` wherever you want the widget to render. The \`<script>\` only needs to appear **once per page**, even if you embed multiple widgets — the script finds every widget div on the page and renders them all.
2774
2775Click **Copy to Clipboard** and paste the snippet into your CMS, page builder, or HTML source.
2776
2777### iframe embed (for sites that block scripts)
2778
2779Some website platforms — notably **BiblioCommons**, and some LibGuides/CMS setups — strip third-party \`<script>\` tags for security. On those platforms the standard snippet silently does nothing. The **iframe** tab gives you an alternative that works there:
2780
2781\`\`\`html
2782<iframe src="https://lcm26-prod.web.app/api/widget/<your-widget-key>/embed"
2783        width="300" height="700" style="border:none;" title="LibraryCall"></iframe>
2784\`\`\`
2785
2786Only use the iframe if the standard embed doesn't work — it's slightly less flexible:
2787
2788- **Set the size yourself.** An iframe can't resize itself to fit its contents, so adjust \`width\` and \`height\` to suit the widget and your page.
2789- **One iframe per widget.** For multiple languages, embed one iframe per language (each with its own widget key), just as you would with the standard embed.
2790
2791## Allowed Domains (security)
2792
2793A widget's audio is served from LibraryCall, and your library can restrict *where* the widget is allowed to load from. Each library has a list of **allowed domains**; the widget will refuse to render on any other site.
2794
2795If your library's allowed-domains list is empty, the widget loads on any site (the default). If it's populated, only the listed domains can embed the widget. Patterns supported:
2796
2797- \`mylib.org\` — exact hostname match.
2798- \`*.mylib.org\` — match any subdomain (\`www.mylib.org\`, \`kids.mylib.org\`, etc.).
2799
2800This applies to both embed methods: the iframe embed is checked against the page it's placed on, exactly like the standard embed. If your domain is on the list, both work; if it isn't, both are blocked.
2801
2802If you've copied the embed code and the widget shows nothing on your site, the allowed-domains list is the first thing to check. Contact your LibraryCall administrator to confirm or update it.
2803
2804## The Theme Demo page
2805
2806There's a **View Theme Demo** link at the top of the Widgets page. It renders a real widget in every available theme side-by-side using sample content, so you can compare the color schemes at a glance and pick the one that best matches your site — without pasting embed codes into draft pages. To preview a *specific* widget with its own live story and audio, use that widget's **Preview** button instead (see above).
2807
2808## Practical tips
2809
2810- **Pick the right schedule.** A widget on your Spanish-language page should reference a Spanish-language schedule. The widget's UI text (button labels, "Today's Story" caption) is driven by the schedule's **language** setting — not by the story that resolves on a given day.
2811- **One widget per language, per page.** Don't try to run a single widget that serves different languages depending on the visitor. Make two widgets and put them on the appropriate pages.
2812- **Check the player after a theme change.** Themes can subtly affect contrast and font size. Open the page after publishing and confirm the widget reads cleanly.
2813- **The embed key is not secret, but it's not easily guessable either.** It's safe to put in public HTML; just don't share it on social media as if it were credentials.
2814`,AE="lcm26-prod.firebasestorage.app";function DE(e){if(!e)return;const t=encodeURIComponent(`help-videos/${e}`);return`https://firebasestorage.googleapis.com/v0/b/${AE}/o/${t}?alt=media`}const UE=Object.assign({"./dashboard.md":wE,"./getting-started.md":_E,"./logs.md":kE,"./managing-messages.md":SE,"./managing-schedules.md":EE,"./managing-stories.md":bE,"./now-playing.md":TE,"./phone-numbers.md":CE,"./signing-in.md":IE,"./the-commons.md":RE,"./troubleshooting-phone-calls.md":PE,"./troubleshooting-uploads.md":xE,"./troubleshooting-widgets.md":OE,"./utilities.md":LE,"./widgets.md":NE});function ME(e){const t=e.match(/^---\r?\n([\s\S]*?)\r?\n---\r?\n?([\s\S]*)$/);if(!t)return{meta:{},body:e};const n={};for(const r of t[1].split(/\r?\n/)){const i=r.indexOf(":");if(i===-1)continue;const s=r.slice(0,i).trim(),o=r.slice(i+1).trim();s&&(n[s]=o)}return{meta:n,body:t[2]}}function jE(e){return e?e.split(",").map(t=>
2814t.trim()).filter(Boolean):[]}function FE(e){return(e.split("/").pop()??e).replace(/\.md$/,"")}const Eu=Object.entries(UE).map(([e,t])=>{const{meta:n,body:r}=ME(t),i=FE(e);return{slug:i,title:n.title||i,category:n.category||"Uncategorized",order:n.order?Number(n.order):999,relatedPaths:jE(n.relatedPaths),body:r.trimStart(),videoUrl:DE(n.video)}}),zE=["Getting Started","Configuration","Daily Use","Troubleshooting"];function Rd(e){const t=zE.indexOf(e);return t===-1?Number.POSITIVE_INFINITY:t}function BE(){return[...Eu].sort((e,t)=>{if(e.category!==t.category){const n=Rd(e.category)-Rd(t.category);return n!==0?n:e.category.localeCompare(t.category)}return e.order!==t.order?e.order-t.order:e.title.localeCompare(t.title)})}function vb(e){return Eu.find(t=>t.slug===e)}function wb(){const e=new Map;for(const t of BE()){const n=e.get(t.category)??[];n.push(t),e.set(t.category,n)}return Array.from(e.entries()).map(([t,n])=>({category:t,topics:n}))}function Pd(e){let t,n=-1;for(const r of Eu)for(const i of r.relatedPaths)i.length>n&&(e===i||e.startsWith(i+"/"))&&(t=r.slug,n=i.length);return t}function WE(){const{pathname:e}=en(),[t,n]=w.useState(null);if(w.useEffect(()=>{if(n(null),e.startsWith("/help")||!Pd(e))return;let s=null;const o=()=>{if(s!=null&&s.isConnected)return!0;const u=document.querySelector(".page-title");if(!(u!=null&&u.parentElement))return!1;const h=document.createElement("span");return h.className="help-button-slot",u.parentElement.insertBefore(h,u.nextSibling),s=h,n(h),!0};if(o())return()=>s==null?void 0:s.remove();const a=document.querySelector(".app-content")??document.body,l=new MutationObserver(()=>{o()&&l.disconnect()});return l.observe(a,{childList:!0,subtree:!0}),()=>{l.disconnect(),s==null||s.remove()}},[e]),e.startsWith("/help"))return null;const r=Pd(e);return!r||!t?null:Kf.createPortal(S.jsx(ap,{to:`/help/${r}`,className:"help-button",title:"Help for this page","aria-label":"Help for this page",children:"?"}),t)}const xd="lcm26.sidebarCollapsed";function Eg({children:e}){const[t,n]=w.useState(()=>localStorage.getItem(xd)==="true");w.useEffect(()=>{localStorage.setItem(xd,String(t))},[t]);const r=()=>n(i=>!i);return S.jsxs("div",{className:`app-layout${t?" app-layout--collapsed":""}`,children:[S.jsx(vE,{collapsed:t,onToggle:r}),S.jsx("button",{type:"button",className:"app-toggle",onClick:r,"aria-label":"Open navigation sidebar",children:"≡"}),S.jsxs("main",{className:"app-content",children:[S.jsx(WE,{}),e??S.jsx(sp,{})]})]})}const $E=w.lazy(()=>ne(()=>import("./Login-DbenqbqO.js"),[])),VE=w.lazy(()=>ne(()=>import("./Dashboard-dvMCGHbf.js"),[])),HE=w.lazy(()=>ne(()=>import("./Libraries-CJP_yZao.js"),__vite__mapDeps([0,1,2,3]))),GE=w.lazy(()=>ne(()=>import("./Users-Cifz8MoL.js"),__vite__mapDeps([4,2]))),qE=w.lazy(()=>ne(()=>import("./Stories-CNz1gFvV.js"),__vite__mapDeps([5,6,7,2,8]))),KE=w.lazy(()=>ne(()=>import("./Stories-CNz1gFvV.js"),__vite__mapDeps([5,6,7,2,8])).then(e=>({default:e.StoryDetail}))),Od=w.lazy(()=>ne(()=>import("./Schedules-Dl25hdO9.js"),__vite__mapDeps([9,10,2,8,3]))),Ld=w.lazy(()=>ne(()=>import("./PhoneNumbers-RUh8_iDu.js"),__vite__mapDeps([11,2,8]))),QE=w.lazy(()=>ne(()=>import("./Widgets-BG7WpCGU.js"),__vite__mapDeps([12,2,13]))),YE=w.lazy(()=>ne(()=>import("./WidgetsDemo-ixKnV4Xc.js"),__vite__mapDeps([14,13]))),XE=w.lazy(()=>ne(()=>import("./Messages-CJ2SeC43.js"),__vite__mapDeps([15,6,7,2]))),JE=w.lazy(()=>ne(()=>import("./Logs-B18BpfXD.js"),__vite__mapDeps([16,10,8]))),ZE=w.lazy(()=>ne(()=>import("./Utilities-BGdKiHcW.js"),__vite__mapDeps([17,2,8,6]))),eb=w.lazy(()=>ne(()=>import("./LibraryView-j22g0GhA.js"),__vite__mapDeps([18,1,2,3,8]))),Nd=w.lazy(()=>ne(()=>import("./NowPlaying-B9tltvyv.js"),[])),tb=w.lazy(()=>ne(()=>import("./NowPlayingAdmin-Bqn0_Ykl.js"),__vite__mapDeps([19,6,7,2]))),nb=w.lazy(()=>ne(()=>import("./RenewalReport-D9YNIajL.js"),[])),rb=w.lazy(()=>ne(()=>import("./HelpIndex-vXfnJ2f7.js"),[])),ib=w.lazy(()=>ne(()=>import("./HelpTopic-DDJy3yyR.js"),[]));function sb(){const{user:e,loading:t}=Ei();return t?S.jsx("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",height:"100vh"},children:"Loading..."}):e?S.jsx(sp,{}):S.jsx(ip,{to:"/login",replace:!0})}function ob(){const{user:e,loading:t}=Ei();return t?S.jsx("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",height:"100vh"},children:"Loading..."}):e?S.jsx(Eg,{children:S.jsx(Nd,{})}):S.jsx(Nd,{})}function ab(){return S.jsx(w.Suspense,{fallback:S.jsx("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",height:"100vh"},children:"Loading..."}),children:S.jsxs(Gv,{children:[S.jsx(B,{path:"/login",element:S.jsx($E,{})}),S.jsx(B,{path:"/now-playing",element:S.jsx(ob,{})}),S.jsx(B,{element:S.jsx(sb,{}),children:S.jsxs(B,{element:S.jsx(Eg,{}),children:[S.jsx(B,{path:"/",element:S.jsx(VE,{})}),S.jsx(B,{path:"/libraries",element:S.jsx(HE,{})}),S.jsx(B,{path:"/libraries/:id",element:S.jsx(eb,{})}),S.jsx(B,{path:"/users",element:S.jsx(GE,{})}),S.jsx(B,{path:"/stories",element:S.jsx(qE,{})}),S.jsx(B,{path:"/stories/:id",element:S.jsx(KE,{})}),S.jsx(B,{path:"/schedules",element:S.jsx(Od,{})}),S.jsx(B,{path:"/schedules/:id",element:S.jsx(Od,{})}),S.jsx(B,{path:"/phone-numbers",element:S.jsx(Ld,{})}),S.jsx(B,{path:"/phone-numbers/:id",element:S.jsx(Ld,{})}),S.jsx(B,{path:"/widgets",element:S.jsx(QE,{})}),S.jsx(B,{path:"/widgets/demo",element:S.jsx(YE,{})}),S.jsx(B,{path:"/messages",element:S.jsx(XE,{})}),S.jsx(B,{path:"/logs",element:S.jsx(JE,{})}),S.jsx(B,{path:"/utilities",element:S.jsx(ZE,{})}),S.jsx(B,{path:"/now-playing-admin",element:S.jsx(tb,{})}),S.jsx(B,{path:"/renewal-report-admin",element:S.jsx(nb,{})}),S.jsx(B,{path:"/help",element:S.jsx(rb,{})}),S.jsx(B,{path:"/help/:slug",element:S.jsx(ib,{})}),S.jsx(B,{path:"*",element:S.jsx(ip,{to:"/",replace:!0})})]})})]})})}function lb(){return S.jsx(tw,{children:S.jsx(fE,{children:S.jsx(gE,{children:S.jsx(ab,{})})})})}window.addEventListener("vite:preloadError",()=>{window.location.reload()});ta.createRoot(document.getElementById("root")).render(S.jsx(Vd.StrictMode,{children:S.jsx(lb,{})}));export{ap as L,ip as N,Vd as R,Td as a,pE as b,Sg as c,Ei as d,db as e,cb as f,mb as g,fb as h,pb as i,S as j,yb as k,Kf as l,ub as m,Cg as n,gb as o,wb as p,vb as q,w as r,hb as s,ao as u};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.