summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--assets/browser-Bqx6gyK_.js (renamed from assets/browser-Bualf7xz.js)2
-rw-r--r--assets/index-D1q52ERy.js (renamed from assets/index-CgrZ0Hr8.js)12
-rw-r--r--assets/index-mbMV1tM0.css (renamed from assets/index-DvPzh0o3.css)2
-rw-r--r--index.html4
4 files changed, 10 insertions, 10 deletions
diff --git a/assets/browser-Bualf7xz.js b/assets/browser-Bqx6gyK_.js
index 83b61b7..1dbab27 100644
--- a/assets/browser-Bualf7xz.js
+++ b/assets/browser-Bqx6gyK_.js
@@ -1 +1 @@
-import{g as a}from"./index-CgrZ0Hr8.js";function f(t,s){for(var o=0;o<s.length;o++){const e=s[o];if(typeof e!="string"&&!Array.isArray(e)){for(const r in e)if(r!=="default"&&!(r in t)){const n=Object.getOwnPropertyDescriptor(e,r);n&&Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:()=>e[r]})}}}return Object.freeze(Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}))}var c=function(){throw new Error("ws does not work in the browser. Browser clients must use the native WebSocket object")};const i=a(c),u=f({__proto__:null,default:i},[c]);export{u as b};
+import{g as a}from"./index-D1q52ERy.js";function f(t,s){for(var o=0;o<s.length;o++){const e=s[o];if(typeof e!="string"&&!Array.isArray(e)){for(const r in e)if(r!=="default"&&!(r in t)){const n=Object.getOwnPropertyDescriptor(e,r);n&&Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:()=>e[r]})}}}return Object.freeze(Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}))}var c=function(){throw new Error("ws does not work in the browser. Browser clients must use the native WebSocket object")};const i=a(c),u=f({__proto__:null,default:i},[c]);export{u as b};
diff --git a/assets/index-CgrZ0Hr8.js b/assets/index-D1q52ERy.js
index fff6edc..7a358b0 100644
--- a/assets/index-CgrZ0Hr8.js
+++ b/assets/index-D1q52ERy.js
@@ -14,7 +14,7 @@ var Zm=Object.defineProperty;var e0=(t,e,n)=>e in t?Zm(t,e,{enumerable:!0,config
  *
  * This source code is licensed under the MIT license found in the
  * LICENSE file in the root directory of this source tree.
- */var _0=E,w0=Symbol.for("react.element"),x0=Symbol.for("react.fragment"),k0=Object.prototype.hasOwnProperty,b0=_0.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,S0={key:!0,ref:!0,__self:!0,__source:!0};function $f(t,e,n){var i,r={},s=null,o=null;n!==void 0&&(s=""+n),e.key!==void 0&&(s=""+e.key),e.ref!==void 0&&(o=e.ref);for(i in e)k0.call(e,i)&&!S0.hasOwnProperty(i)&&(r[i]=e[i]);if(t&&t.defaultProps)for(i in e=t.defaultProps,e)r[i]===void 0&&(r[i]=e[i]);return{$$typeof:w0,type:t,key:s,ref:o,props:r,_owner:b0.current}}Ko.Fragment=x0;Ko.jsx=$f;Ko.jsxs=$f;Lf.exports=Ko;var O=Lf.exports,ol={},Uf={exports:{}},Qe={},Bf={exports:{}},Vf={};/**
+ */var _0=E,w0=Symbol.for("react.element"),x0=Symbol.for("react.fragment"),k0=Object.prototype.hasOwnProperty,b0=_0.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,S0={key:!0,ref:!0,__self:!0,__source:!0};function $f(t,e,n){var i,r={},s=null,o=null;n!==void 0&&(s=""+n),e.key!==void 0&&(s=""+e.key),e.ref!==void 0&&(o=e.ref);for(i in e)k0.call(e,i)&&!S0.hasOwnProperty(i)&&(r[i]=e[i]);if(t&&t.defaultProps)for(i in e=t.defaultProps,e)r[i]===void 0&&(r[i]=e[i]);return{$$typeof:w0,type:t,key:s,ref:o,props:r,_owner:b0.current}}Ko.Fragment=x0;Ko.jsx=$f;Ko.jsxs=$f;Lf.exports=Ko;var P=Lf.exports,ol={},Uf={exports:{}},Qe={},Bf={exports:{}},Vf={};/**
  * @license React
  * scheduler.production.min.js
  *
@@ -22,7 +22,7 @@ var Zm=Object.defineProperty;var e0=(t,e,n)=>e in t?Zm(t,e,{enumerable:!0,config
  *
  * This source code is licensed under the MIT license found in the
  * LICENSE file in the root directory of this source tree.
- */(function(t){function e(P,R){var A=P.length;P.push(R);e:for(;0<A;){var Y=A-1>>>1,Q=P[Y];if(0<r(Q,R))P[Y]=R,P[A]=Q,A=Y;else break e}}function n(P){return P.length===0?null:P[0]}function i(P){if(P.length===0)return null;var R=P[0],A=P.pop();if(A!==R){P[0]=A;e:for(var Y=0,Q=P.length,vt=Q>>>1;Y<vt;){var Te=2*(Y+1)-1,Et=P[Te],Oe=Te+1,hs=P[Oe];if(0>r(Et,A))Oe<Q&&0>r(hs,Et)?(P[Y]=hs,P[Oe]=A,Y=Oe):(P[Y]=Et,P[Te]=A,Y=Te);else if(Oe<Q&&0>r(hs,A))P[Y]=hs,P[Oe]=A,Y=Oe;else break e}}return R}function r(P,R){var A=P.sortIndex-R.sortIndex;return A!==0?A:P.id-R.id}if(typeof performance=="object"&&typeof performance.now=="function"){var s=performance;t.unstable_now=function(){return s.now()}}else{var o=Date,a=o.now();t.unstable_now=function(){return o.now()-a}}var l=[],u=[],c=1,h=null,d=3,f=!1,m=!1,y=!1,v=typeof setTimeout=="function"?setTimeout:null,p=typeof clearTimeout=="function"?clearTimeout:null,g=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function _(P){for(var R=n(u);R!==null;){if(R.callback===null)i(u);else if(R.startTime<=P)i(u),R.sortIndex=R.expirationTime,e(l,R);else break;R=n(u)}}function w(P){if(y=!1,_(P),!m)if(n(l)!==null)m=!0,K(x);else{var R=n(u);R!==null&&me(w,R.startTime-P)}}function x(P,R){m=!1,y&&(y=!1,p(S),S=-1),f=!0;var A=d;try{for(_(R),h=n(l);h!==null&&(!(h.expirationTime>R)||P&&!D());){var Y=h.callback;if(typeof Y=="function"){h.callback=null,d=h.priorityLevel;var Q=Y(h.expirationTime<=R);R=t.unstable_now(),typeof Q=="function"?h.callback=Q:h===n(l)&&i(l),_(R)}else i(l);h=n(l)}if(h!==null)var vt=!0;else{var Te=n(u);Te!==null&&me(w,Te.startTime-R),vt=!1}return vt}finally{h=null,d=A,f=!1}}var b=!1,k=null,S=-1,M=5,L=-1;function D(){return!(t.unstable_now()-L<M)}function B(){if(k!==null){var P=t.unstable_now();L=P;var R=!0;try{R=k(!0,P)}finally{R?ce():(b=!1,k=null)}}else b=!1}var ce;if(typeof g=="function")ce=function(){g(B)};else if(typeof MessageChannel<"u"){var ae=new MessageChannel,$=ae.port2;ae.port1.onmessage=B,ce=function(){$.postMessage(null)}}else ce=function(){v(B,0)};function K(P){k=P,b||(b=!0,ce())}function me(P,R){S=v(function(){P(t.unstable_now())},R)}t.unstable_IdlePriority=5,t.unstable_ImmediatePriority=1,t.unstable_LowPriority=4,t.unstable_NormalPriority=3,t.unstable_Profiling=null,t.unstable_UserBlockingPriority=2,t.unstable_cancelCallback=function(P){P.callback=null},t.unstable_continueExecution=function(){m||f||(m=!0,K(x))},t.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"):M=0<P?Math.floor(1e3/P):5},t.unstable_getCurrentPriorityLevel=function(){return d},t.unstable_getFirstCallbackNode=function(){return n(l)},t.unstable_next=function(P){switch(d){case 1:case 2:case 3:var R=3;break;default:R=d}var A=d;d=R;try{return P()}finally{d=A}},t.unstable_pauseExecution=function(){},t.unstable_requestPaint=function(){},t.unstable_runWithPriority=function(P,R){switch(P){case 1:case 2:case 3:case 4:case 5:break;default:P=3}var A=d;d=P;try{return R()}finally{d=A}},t.unstable_scheduleCallback=function(P,R,A){var Y=t.unstable_now();switch(typeof A=="object"&&A!==null?(A=A.delay,A=typeof A=="number"&&0<A?Y+A:Y):A=Y,P){case 1:var Q=-1;break;case 2:Q=250;break;case 5:Q=1073741823;break;case 4:Q=1e4;break;default:Q=5e3}return Q=A+Q,P={id:c++,callback:R,priorityLevel:P,startTime:A,expirationTime:Q,sortIndex:-1},A>Y?(P.sortIndex=A,e(u,P),n(l)===null&&P===n(u)&&(y?(p(S),S=-1):y=!0,me(w,A-Y))):(P.sortIndex=Q,e(l,P),m||f||(m=!0,K(x))),P},t.unstable_shouldYield=D,t.unstable_wrapCallback=function(P){var R=d;return function(){var A=d;d=R;try{return P.apply(this,arguments)}finally{d=A}}}})(Vf);Bf.exports=Vf;var C0=Bf.exports;/**
+ */(function(t){function e(T,R){var A=T.length;T.push(R);e:for(;0<A;){var Y=A-1>>>1,Q=T[Y];if(0<r(Q,R))T[Y]=R,T[A]=Q,A=Y;else break e}}function n(T){return T.length===0?null:T[0]}function i(T){if(T.length===0)return null;var R=T[0],A=T.pop();if(A!==R){T[0]=A;e:for(var Y=0,Q=T.length,vt=Q>>>1;Y<vt;){var Te=2*(Y+1)-1,Et=T[Te],Oe=Te+1,hs=T[Oe];if(0>r(Et,A))Oe<Q&&0>r(hs,Et)?(T[Y]=hs,T[Oe]=A,Y=Oe):(T[Y]=Et,T[Te]=A,Y=Te);else if(Oe<Q&&0>r(hs,A))T[Y]=hs,T[Oe]=A,Y=Oe;else break e}}return R}function r(T,R){var A=T.sortIndex-R.sortIndex;return A!==0?A:T.id-R.id}if(typeof performance=="object"&&typeof performance.now=="function"){var s=performance;t.unstable_now=function(){return s.now()}}else{var o=Date,a=o.now();t.unstable_now=function(){return o.now()-a}}var l=[],u=[],c=1,h=null,d=3,f=!1,m=!1,y=!1,v=typeof setTimeout=="function"?setTimeout:null,p=typeof clearTimeout=="function"?clearTimeout:null,g=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function _(T){for(var R=n(u);R!==null;){if(R.callback===null)i(u);else if(R.startTime<=T)i(u),R.sortIndex=R.expirationTime,e(l,R);else break;R=n(u)}}function w(T){if(y=!1,_(T),!m)if(n(l)!==null)m=!0,K(x);else{var R=n(u);R!==null&&me(w,R.startTime-T)}}function x(T,R){m=!1,y&&(y=!1,p(S),S=-1),f=!0;var A=d;try{for(_(R),h=n(l);h!==null&&(!(h.expirationTime>R)||T&&!D());){var Y=h.callback;if(typeof Y=="function"){h.callback=null,d=h.priorityLevel;var Q=Y(h.expirationTime<=R);R=t.unstable_now(),typeof Q=="function"?h.callback=Q:h===n(l)&&i(l),_(R)}else i(l);h=n(l)}if(h!==null)var vt=!0;else{var Te=n(u);Te!==null&&me(w,Te.startTime-R),vt=!1}return vt}finally{h=null,d=A,f=!1}}var b=!1,k=null,S=-1,M=5,L=-1;function D(){return!(t.unstable_now()-L<M)}function B(){if(k!==null){var T=t.unstable_now();L=T;var R=!0;try{R=k(!0,T)}finally{R?ce():(b=!1,k=null)}}else b=!1}var ce;if(typeof g=="function")ce=function(){g(B)};else if(typeof MessageChannel<"u"){var ae=new MessageChannel,$=ae.port2;ae.port1.onmessage=B,ce=function(){$.postMessage(null)}}else ce=function(){v(B,0)};function K(T){k=T,b||(b=!0,ce())}function me(T,R){S=v(function(){T(t.unstable_now())},R)}t.unstable_IdlePriority=5,t.unstable_ImmediatePriority=1,t.unstable_LowPriority=4,t.unstable_NormalPriority=3,t.unstable_Profiling=null,t.unstable_UserBlockingPriority=2,t.unstable_cancelCallback=function(T){T.callback=null},t.unstable_continueExecution=function(){m||f||(m=!0,K(x))},t.unstable_forceFrameRate=function(T){0>T||125<T?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):M=0<T?Math.floor(1e3/T):5},t.unstable_getCurrentPriorityLevel=function(){return d},t.unstable_getFirstCallbackNode=function(){return n(l)},t.unstable_next=function(T){switch(d){case 1:case 2:case 3:var R=3;break;default:R=d}var A=d;d=R;try{return T()}finally{d=A}},t.unstable_pauseExecution=function(){},t.unstable_requestPaint=function(){},t.unstable_runWithPriority=function(T,R){switch(T){case 1:case 2:case 3:case 4:case 5:break;default:T=3}var A=d;d=T;try{return R()}finally{d=A}},t.unstable_scheduleCallback=function(T,R,A){var Y=t.unstable_now();switch(typeof A=="object"&&A!==null?(A=A.delay,A=typeof A=="number"&&0<A?Y+A:Y):A=Y,T){case 1:var Q=-1;break;case 2:Q=250;break;case 5:Q=1073741823;break;case 4:Q=1e4;break;default:Q=5e3}return Q=A+Q,T={id:c++,callback:R,priorityLevel:T,startTime:A,expirationTime:Q,sortIndex:-1},A>Y?(T.sortIndex=A,e(u,T),n(l)===null&&T===n(u)&&(y?(p(S),S=-1):y=!0,me(w,A-Y))):(T.sortIndex=Q,e(l,T),m||f||(m=!0,K(x))),T},t.unstable_shouldYield=D,t.unstable_wrapCallback=function(T){var R=d;return function(){var A=d;d=R;try{return T.apply(this,arguments)}finally{d=A}}}})(Vf);Bf.exports=Vf;var C0=Bf.exports;/**
  * @license React
  * react-dom.production.min.js
  *
@@ -37,7 +37,7 @@ var Zm=Object.defineProperty;var e0=(t,e,n)=>e in t?Zm(t,e,{enumerable:!0,config
 `+r[o].replace(" at new "," at ");return t.displayName&&l.includes("<anonymous>")&&(l=l.replace("<anonymous>",t.displayName)),l}while(1<=o&&0<=a);break}}}finally{wa=!1,Error.prepareStackTrace=n}return(t=t?t.displayName||t.name:"")?rr(t):""}function M0(t){switch(t.tag){case 5:return rr(t.type);case 16:return rr("Lazy");case 13:return rr("Suspense");case 19:return rr("SuspenseList");case 0:case 2:case 15:return t=xa(t.type,!1),t;case 11:return t=xa(t.type.render,!1),t;case 1:return t=xa(t.type,!0),t;default:return""}}function hl(t){if(t==null)return null;if(typeof t=="function")return t.displayName||t.name||null;if(typeof t=="string")return t;switch(t){case ai:return"Fragment";case oi:return"Portal";case ll:return"Profiler";case Eu:return"StrictMode";case ul:return"Suspense";case cl:return"SuspenseList"}if(typeof t=="object")switch(t.$$typeof){case Kf:return(t.displayName||"Context")+".Consumer";case Wf:return(t._context.displayName||"Context")+".Provider";case Pu:var e=t.render;return t=t.displayName,t||(t=e.displayName||e.name||"",t=t!==""?"ForwardRef("+t+")":"ForwardRef"),t;case Tu:return e=t.displayName||null,e!==null?e:hl(t.type)||"Memo";case Wt:e=t._payload,t=t._init;try{return hl(t(e))}catch{}}return null}function R0(t){var e=t.type;switch(t.tag){case 24:return"Cache";case 9:return(e.displayName||"Context")+".Consumer";case 10:return(e._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return t=e.render,t=t.displayName||t.name||"",e.displayName||(t!==""?"ForwardRef("+t+")":"ForwardRef");case 7:return"Fragment";case 5:return e;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return hl(e);case 8:return e===Eu?"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 e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e}return null}function pn(t){switch(typeof t){case"boolean":case"number":case"string":case"undefined":return t;case"object":return t;default:return""}}function Gf(t){var e=t.type;return(t=t.nodeName)&&t.toLowerCase()==="input"&&(e==="checkbox"||e==="radio")}function I0(t){var e=Gf(t)?"checked":"value",n=Object.getOwnPropertyDescriptor(t.constructor.prototype,e),i=""+t[e];if(!t.hasOwnProperty(e)&&typeof n<"u"&&typeof n.get=="function"&&typeof n.set=="function"){var r=n.get,s=n.set;return Object.defineProperty(t,e,{configurable:!0,get:function(){return r.call(this)},set:function(o){i=""+o,s.call(this,o)}}),Object.defineProperty(t,e,{enumerable:n.enumerable}),{getValue:function(){return i},setValue:function(o){i=""+o},stopTracking:function(){t._valueTracker=null,delete t[e]}}}}function ps(t){t._valueTracker||(t._valueTracker=I0(t))}function qf(t){if(!t)return!1;var e=t._valueTracker;if(!e)return!0;var n=e.getValue(),i="";return t&&(i=Gf(t)?t.checked?"true":"false":t.value),t=i,t!==n?(e.setValue(t),!0):!1}function co(t){if(t=t||(typeof document<"u"?document:void 0),typeof t>"u")return null;try{return t.activeElement||t.body}catch{return t.body}}function dl(t,e){var n=e.checked;return ie({},e,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??t._wrapperState.initialChecked})}function $c(t,e){var n=e.defaultValue==null?"":e.defaultValue,i=e.checked!=null?e.checked:e.defaultChecked;n=pn(e.value!=null?e.value:n),t._wrapperState={initialChecked:i,initialValue:n,controlled:e.type==="checkbox"||e.type==="radio"?e.checked!=null:e.value!=null}}function Qf(t,e){e=e.checked,e!=null&&Cu(t,"checked",e,!1)}function fl(t,e){Qf(t,e);var n=pn(e.value),i=e.type;if(n!=null)i==="number"?(n===0&&t.value===""||t.value!=n)&&(t.value=""+n):t.value!==""+n&&(t.value=""+n);else if(i==="submit"||i==="reset"){t.removeAttribute("value");return}e.hasOwnProperty("value")?pl(t,e.type,n):e.hasOwnProperty("defaultValue")&&pl(t,e.type,pn(e.defaultValue)),e.checked==null&&e.defaultChecked!=null&&(t.defaultChecked=!!e.defaultChecked)}function Uc(t,e,n){if(e.hasOwnProperty("value")||e.hasOwnProperty("defaultValue")){var i=e.type;if(!(i!=="submit"&&i!=="reset"||e.value!==void 0&&e.value!==null))return;e=""+t._wrapperState.initialValue,n||e===t.value||(t.value=e),t.defaultValue=e}n=t.name,n!==""&&(t.name=""),t.defaultChecked=!!t._wrapperState.initialChecked,n!==""&&(t.name=n)}function pl(t,e,n){(e!=="number"||co(t.ownerDocument)!==t)&&(n==null?t.defaultValue=""+t._wrapperState.initialValue:t.defaultValue!==""+n&&(t.defaultValue=""+n))}var sr=Array.isArray;function vi(t,e,n,i){if(t=t.options,e){e={};for(var r=0;r<n.length;r++)e["$"+n[r]]=!0;for(n=0;n<t.length;n++)r=e.hasOwnProperty("$"+t[n].value),t[n].selected!==r&&(t[n].selected=r),r&&i&&(t[n].defaultSelected=!0)}else{for(n=""+pn(n),e=null,r=0;r<t.length;r++){if(t[r].value===n){t[r].selected=!0,i&&(t[r].defaultSelected=!0);return}e!==null||t[r].disabled||(e=t[r])}e!==null&&(e.selected=!0)}}function gl(t,e){if(e.dangerouslySetInnerHTML!=null)throw Error(C(91));return ie({},e,{value:void 0,defaultValue:void 0,children:""+t._wrapperState.initialValue})}function Bc(t,e){var n=e.value;if(n==null){if(n=e.children,e=e.defaultValue,n!=null){if(e!=null)throw Error(C(92));if(sr(n)){if(1<n.length)throw Error(C(93));n=n[0]}e=n}e==null&&(e=""),n=e}t._wrapperState={initialValue:pn(n)}}function Xf(t,e){var n=pn(e.value),i=pn(e.defaultValue);n!=null&&(n=""+n,n!==t.value&&(t.value=n),e.defaultValue==null&&t.defaultValue!==n&&(t.defaultValue=n)),i!=null&&(t.defaultValue=""+i)}function Vc(t){var e=t.textContent;e===t._wrapperState.initialValue&&e!==""&&e!==null&&(t.value=e)}function Jf(t){switch(t){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 ml(t,e){return t==null||t==="http://www.w3.org/1999/xhtml"?Jf(e):t==="http://www.w3.org/2000/svg"&&e==="foreignObject"?"http://www.w3.org/1999/xhtml":t}var gs,Zf=function(t){return typeof MSApp<"u"&&MSApp.execUnsafeLocalFunction?function(e,n,i,r){MSApp.execUnsafeLocalFunction(function(){return t(e,n,i,r)})}:t}(function(t,e){if(t.namespaceURI!=="http://www.w3.org/2000/svg"||"innerHTML"in t)t.innerHTML=e;else{for(gs=gs||document.createElement("div"),gs.innerHTML="<svg>"+e.valueOf().toString()+"</svg>",e=gs.firstChild;t.firstChild;)t.removeChild(t.firstChild);for(;e.firstChild;)t.appendChild(e.firstChild)}});function Rr(t,e){if(e){var n=t.firstChild;if(n&&n===t.lastChild&&n.nodeType===3){n.nodeValue=e;return}}t.textContent=e}var fr={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},A0=["Webkit","ms","Moz","O"];Object.keys(fr).forEach(function(t){A0.forEach(function(e){e=e+t.charAt(0).toUpperCase()+t.substring(1),fr[e]=fr[t]})});function ep(t,e,n){return e==null||typeof e=="boolean"||e===""?"":n||typeof e!="number"||e===0||fr.hasOwnProperty(t)&&fr[t]?(""+e).trim():e+"px"}function tp(t,e){t=t.style;for(var n in e)if(e.hasOwnProperty(n)){var i=n.indexOf("--")===0,r=ep(n,e[n],i);n==="float"&&(n="cssFloat"),i?t.setProperty(n,r):t[n]=r}}var D0=ie({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 yl(t,e){if(e){if(D0[t]&&(e.children!=null||e.dangerouslySetInnerHTML!=null))throw Error(C(137,t));if(e.dangerouslySetInnerHTML!=null){if(e.children!=null)throw Error(C(60));if(typeof e.dangerouslySetInnerHTML!="object"||!("__html"in e.dangerouslySetInnerHTML))throw Error(C(61))}if(e.style!=null&&typeof e.style!="object")throw Error(C(62))}}function vl(t,e){if(t.indexOf("-")===-1)return typeof e.is=="string";switch(t){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 _l=null;function Ou(t){return t=t.target||t.srcElement||window,t.correspondingUseElement&&(t=t.correspondingUseElement),t.nodeType===3?t.parentNode:t}var wl=null,_i=null,wi=null;function Hc(t){if(t=os(t)){if(typeof wl!="function")throw Error(C(280));var e=t.stateNode;e&&(e=Xo(e),wl(t.stateNode,t.type,e))}}function np(t){_i?wi?wi.push(t):wi=[t]:_i=t}function ip(){if(_i){var t=_i,e=wi;if(wi=_i=null,Hc(t),e)for(t=0;t<e.length;t++)Hc(e[t])}}function rp(t,e){return t(e)}function sp(){}var ka=!1;function op(t,e,n){if(ka)return t(e,n);ka=!0;try{return rp(t,e,n)}finally{ka=!1,(_i!==null||wi!==null)&&(sp(),ip())}}function Ir(t,e){var n=t.stateNode;if(n===null)return null;var i=Xo(n);if(i===null)return null;n=i[e];e:switch(e){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(i=!i.disabled)||(t=t.type,i=!(t==="button"||t==="input"||t==="select"||t==="textarea")),t=!i;break e;default:t=!1}if(t)return null;if(n&&typeof n!="function")throw Error(C(231,e,typeof n));return n}var xl=!1;if(Nt)try{var Wi={};Object.defineProperty(Wi,"passive",{get:function(){xl=!0}}),window.addEventListener("test",Wi,Wi),window.removeEventListener("test",Wi,Wi)}catch{xl=!1}function j0(t,e,n,i,r,s,o,a,l){var u=Array.prototype.slice.call(arguments,3);try{e.apply(n,u)}catch(c){this.onError(c)}}var pr=!1,ho=null,fo=!1,kl=null,N0={onError:function(t){pr=!0,ho=t}};function z0(t,e,n,i,r,s,o,a,l){pr=!1,ho=null,j0.apply(N0,arguments)}function F0(t,e,n,i,r,s,o,a,l){if(z0.apply(this,arguments),pr){if(pr){var u=ho;pr=!1,ho=null}else throw Error(C(198));fo||(fo=!0,kl=u)}}function qn(t){var e=t,n=t;if(t.alternate)for(;e.return;)e=e.return;else{t=e;do e=t,e.flags&4098&&(n=e.return),t=e.return;while(t)}return e.tag===3?n:null}function ap(t){if(t.tag===13){var e=t.memoizedState;if(e===null&&(t=t.alternate,t!==null&&(e=t.memoizedState)),e!==null)return e.dehydrated}return null}function Wc(t){if(qn(t)!==t)throw Error(C(188))}function $0(t){var e=t.alternate;if(!e){if(e=qn(t),e===null)throw Error(C(188));return e!==t?null:t}for(var n=t,i=e;;){var r=n.return;if(r===null)break;var s=r.alternate;if(s===null){if(i=r.return,i!==null){n=i;continue}break}if(r.child===s.child){for(s=r.child;s;){if(s===n)return Wc(r),t;if(s===i)return Wc(r),e;s=s.sibling}throw Error(C(188))}if(n.return!==i.return)n=r,i=s;else{for(var o=!1,a=r.child;a;){if(a===n){o=!0,n=r,i=s;break}if(a===i){o=!0,i=r,n=s;break}a=a.sibling}if(!o){for(a=s.child;a;){if(a===n){o=!0,n=s,i=r;break}if(a===i){o=!0,i=s,n=r;break}a=a.sibling}if(!o)throw Error(C(189))}}if(n.alternate!==i)throw Error(C(190))}if(n.tag!==3)throw Error(C(188));return n.stateNode.current===n?t:e}function lp(t){return t=$0(t),t!==null?up(t):null}function up(t){if(t.tag===5||t.tag===6)return t;for(t=t.child;t!==null;){var e=up(t);if(e!==null)return e;t=t.sibling}return null}var cp=Ge.unstable_scheduleCallback,Kc=Ge.unstable_cancelCallback,U0=Ge.unstable_shouldYield,B0=Ge.unstable_requestPaint,le=Ge.unstable_now,V0=Ge.unstable_getCurrentPriorityLevel,Lu=Ge.unstable_ImmediatePriority,hp=Ge.unstable_UserBlockingPriority,po=Ge.unstable_NormalPriority,H0=Ge.unstable_LowPriority,dp=Ge.unstable_IdlePriority,Yo=null,St=null;function W0(t){if(St&&typeof St.onCommitFiberRoot=="function")try{St.onCommitFiberRoot(Yo,t,void 0,(t.current.flags&128)===128)}catch{}}var pt=Math.clz32?Math.clz32:G0,K0=Math.log,Y0=Math.LN2;function G0(t){return t>>>=0,t===0?32:31-(K0(t)/Y0|0)|0}var ms=64,ys=4194304;function or(t){switch(t&-t){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64: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&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return t&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return t}}function go(t,e){var n=t.pendingLanes;if(n===0)return 0;var i=0,r=t.suspendedLanes,s=t.pingedLanes,o=n&268435455;if(o!==0){var a=o&~r;a!==0?i=or(a):(s&=o,s!==0&&(i=or(s)))}else o=n&~r,o!==0?i=or(o):s!==0&&(i=or(s));if(i===0)return 0;if(e!==0&&e!==i&&!(e&r)&&(r=i&-i,s=e&-e,r>=s||r===16&&(s&4194240)!==0))return e;if(i&4&&(i|=n&16),e=t.entangledLanes,e!==0)for(t=t.entanglements,e&=i;0<e;)n=31-pt(e),r=1<<n,i|=t[n],e&=~r;return i}function q0(t,e){switch(t){case 1:case 2:case 4:return e+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 e+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 Q0(t,e){for(var n=t.suspendedLanes,i=t.pingedLanes,r=t.expirationTimes,s=t.pendingLanes;0<s;){var o=31-pt(s),a=1<<o,l=r[o];l===-1?(!(a&n)||a&i)&&(r[o]=q0(a,e)):l<=e&&(t.expiredLanes|=a),s&=~a}}function bl(t){return t=t.pendingLanes&-1073741825,t!==0?t:t&1073741824?1073741824:0}function fp(){var t=ms;return ms<<=1,!(ms&4194240)&&(ms=64),t}function ba(t){for(var e=[],n=0;31>n;n++)e.push(t);return e}function rs(t,e,n){t.pendingLanes|=e,e!==536870912&&(t.suspendedLanes=0,t.pingedLanes=0),t=t.eventTimes,e=31-pt(e),t[e]=n}function X0(t,e){var n=t.pendingLanes&~e;t.pendingLanes=e,t.suspendedLanes=0,t.pingedLanes=0,t.expiredLanes&=e,t.mutableReadLanes&=e,t.entangledLanes&=e,e=t.entanglements;var i=t.eventTimes;for(t=t.expirationTimes;0<n;){var r=31-pt(n),s=1<<r;e[r]=0,i[r]=-1,t[r]=-1,n&=~s}}function Mu(t,e){var n=t.entangledLanes|=e;for(t=t.entanglements;n;){var i=31-pt(n),r=1<<i;r&e|t[i]&e&&(t[i]|=e),n&=~r}}var H=0;function pp(t){return t&=-t,1<t?4<t?t&268435455?16:536870912:4:1}var gp,Ru,mp,yp,vp,Sl=!1,vs=[],sn=null,on=null,an=null,Ar=new Map,Dr=new Map,Gt=[],J0="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 Yc(t,e){switch(t){case"focusin":case"focusout":sn=null;break;case"dragenter":case"dragleave":on=null;break;case"mouseover":case"mouseout":an=null;break;case"pointerover":case"pointerout":Ar.delete(e.pointerId);break;case"gotpointercapture":case"lostpointercapture":Dr.delete(e.pointerId)}}function Ki(t,e,n,i,r,s){return t===null||t.nativeEvent!==s?(t={blockedOn:e,domEventName:n,eventSystemFlags:i,nativeEvent:s,targetContainers:[r]},e!==null&&(e=os(e),e!==null&&Ru(e)),t):(t.eventSystemFlags|=i,e=t.targetContainers,r!==null&&e.indexOf(r)===-1&&e.push(r),t)}function Z0(t,e,n,i,r){switch(e){case"focusin":return sn=Ki(sn,t,e,n,i,r),!0;case"dragenter":return on=Ki(on,t,e,n,i,r),!0;case"mouseover":return an=Ki(an,t,e,n,i,r),!0;case"pointerover":var s=r.pointerId;return Ar.set(s,Ki(Ar.get(s)||null,t,e,n,i,r)),!0;case"gotpointercapture":return s=r.pointerId,Dr.set(s,Ki(Dr.get(s)||null,t,e,n,i,r)),!0}return!1}function _p(t){var e=An(t.target);if(e!==null){var n=qn(e);if(n!==null){if(e=n.tag,e===13){if(e=ap(n),e!==null){t.blockedOn=e,vp(t.priority,function(){mp(n)});return}}else if(e===3&&n.stateNode.current.memoizedState.isDehydrated){t.blockedOn=n.tag===3?n.stateNode.containerInfo:null;return}}}t.blockedOn=null}function Qs(t){if(t.blockedOn!==null)return!1;for(var e=t.targetContainers;0<e.length;){var n=Cl(t.domEventName,t.eventSystemFlags,e[0],t.nativeEvent);if(n===null){n=t.nativeEvent;var i=new n.constructor(n.type,n);_l=i,n.target.dispatchEvent(i),_l=null}else return e=os(n),e!==null&&Ru(e),t.blockedOn=n,!1;e.shift()}return!0}function Gc(t,e,n){Qs(t)&&n.delete(e)}function ey(){Sl=!1,sn!==null&&Qs(sn)&&(sn=null),on!==null&&Qs(on)&&(on=null),an!==null&&Qs(an)&&(an=null),Ar.forEach(Gc),Dr.forEach(Gc)}function Yi(t,e){t.blockedOn===e&&(t.blockedOn=null,Sl||(Sl=!0,Ge.unstable_scheduleCallback(Ge.unstable_NormalPriority,ey)))}function jr(t){function e(r){return Yi(r,t)}if(0<vs.length){Yi(vs[0],t);for(var n=1;n<vs.length;n++){var i=vs[n];i.blockedOn===t&&(i.blockedOn=null)}}for(sn!==null&&Yi(sn,t),on!==null&&Yi(on,t),an!==null&&Yi(an,t),Ar.forEach(e),Dr.forEach(e),n=0;n<Gt.length;n++)i=Gt[n],i.blockedOn===t&&(i.blockedOn=null);for(;0<Gt.length&&(n=Gt[0],n.blockedOn===null);)_p(n),n.blockedOn===null&&Gt.shift()}var xi=Ut.ReactCurrentBatchConfig,mo=!0;function ty(t,e,n,i){var r=H,s=xi.transition;xi.transition=null;try{H=1,Iu(t,e,n,i)}finally{H=r,xi.transition=s}}function ny(t,e,n,i){var r=H,s=xi.transition;xi.transition=null;try{H=4,Iu(t,e,n,i)}finally{H=r,xi.transition=s}}function Iu(t,e,n,i){if(mo){var r=Cl(t,e,n,i);if(r===null)Ia(t,e,i,yo,n),Yc(t,i);else if(Z0(r,t,e,n,i))i.stopPropagation();else if(Yc(t,i),e&4&&-1<J0.indexOf(t)){for(;r!==null;){var s=os(r);if(s!==null&&gp(s),s=Cl(t,e,n,i),s===null&&Ia(t,e,i,yo,n),s===r)break;r=s}r!==null&&i.stopPropagation()}else Ia(t,e,i,null,n)}}var yo=null;function Cl(t,e,n,i){if(yo=null,t=Ou(i),t=An(t),t!==null)if(e=qn(t),e===null)t=null;else if(n=e.tag,n===13){if(t=ap(e),t!==null)return t;t=null}else if(n===3){if(e.stateNode.current.memoizedState.isDehydrated)return e.tag===3?e.stateNode.containerInfo:null;t=null}else e!==t&&(t=null);return yo=t,null}function wp(t){switch(t){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(V0()){case Lu:return 1;case hp:return 4;case po:case H0:return 16;case dp:return 536870912;default:return 16}default:return 16}}var Xt=null,Au=null,Xs=null;function xp(){if(Xs)return Xs;var t,e=Au,n=e.length,i,r="value"in Xt?Xt.value:Xt.textContent,s=r.length;for(t=0;t<n&&e[t]===r[t];t++);var o=n-t;for(i=1;i<=o&&e[n-i]===r[s-i];i++);return Xs=r.slice(t,1<i?1-i:void 0)}function Js(t){var e=t.keyCode;return"charCode"in t?(t=t.charCode,t===0&&e===13&&(t=13)):t=e,t===10&&(t=13),32<=t||t===13?t:0}function _s(){return!0}function qc(){return!1}function Xe(t){function e(n,i,r,s,o){this._reactName=n,this._targetInst=r,this.type=i,this.nativeEvent=s,this.target=o,this.currentTarget=null;for(var a in t)t.hasOwnProperty(a)&&(n=t[a],this[a]=n?n(s):s[a]);return this.isDefaultPrevented=(s.defaultPrevented!=null?s.defaultPrevented:s.returnValue===!1)?_s:qc,this.isPropagationStopped=qc,this}return ie(e.prototype,{preventDefault:function(){this.defaultPrevented=!0;var n=this.nativeEvent;n&&(n.preventDefault?n.preventDefault():typeof n.returnValue!="unknown"&&(n.returnValue=!1),this.isDefaultPrevented=_s)},stopPropagation:function(){var n=this.nativeEvent;n&&(n.stopPropagation?n.stopPropagation():typeof n.cancelBubble!="unknown"&&(n.cancelBubble=!0),this.isPropagationStopped=_s)},persist:function(){},isPersistent:_s}),e}var Fi={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(t){return t.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},Du=Xe(Fi),ss=ie({},Fi,{view:0,detail:0}),iy=Xe(ss),Sa,Ca,Gi,Go=ie({},ss,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:ju,button:0,buttons:0,relatedTarget:function(t){return t.relatedTarget===void 0?t.fromElement===t.srcElement?t.toElement:t.fromElement:t.relatedTarget},movementX:function(t){return"movementX"in t?t.movementX:(t!==Gi&&(Gi&&t.type==="mousemove"?(Sa=t.screenX-Gi.screenX,Ca=t.screenY-Gi.screenY):Ca=Sa=0,Gi=t),Sa)},movementY:function(t){return"movementY"in t?t.movementY:Ca}}),Qc=Xe(Go),ry=ie({},Go,{dataTransfer:0}),sy=Xe(ry),oy=ie({},ss,{relatedTarget:0}),Ea=Xe(oy),ay=ie({},Fi,{animationName:0,elapsedTime:0,pseudoElement:0}),ly=Xe(ay),uy=ie({},Fi,{clipboardData:function(t){return"clipboardData"in t?t.clipboardData:window.clipboardData}}),cy=Xe(uy),hy=ie({},Fi,{data:0}),Xc=Xe(hy),dy={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},fy={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"},py={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function gy(t){var e=this.nativeEvent;return e.getModifierState?e.getModifierState(t):(t=py[t])?!!e[t]:!1}function ju(){return gy}var my=ie({},ss,{key:function(t){if(t.key){var e=dy[t.key]||t.key;if(e!=="Unidentified")return e}return t.type==="keypress"?(t=Js(t),t===13?"Enter":String.fromCharCode(t)):t.type==="keydown"||t.type==="keyup"?fy[t.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:ju,charCode:function(t){return t.type==="keypress"?Js(t):0},keyCode:function(t){return t.type==="keydown"||t.type==="keyup"?t.keyCode:0},which:function(t){return t.type==="keypress"?Js(t):t.type==="keydown"||t.type==="keyup"?t.keyCode:0}}),yy=Xe(my),vy=ie({},Go,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),Jc=Xe(vy),_y=ie({},ss,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:ju}),wy=Xe(_y),xy=ie({},Fi,{propertyName:0,elapsedTime:0,pseudoElement:0}),ky=Xe(xy),by=ie({},Go,{deltaX:function(t){return"deltaX"in t?t.deltaX:"wheelDeltaX"in t?-t.wheelDeltaX:0},deltaY:function(t){return"deltaY"in t?t.deltaY:"wheelDeltaY"in t?-t.wheelDeltaY:"wheelDelta"in t?-t.wheelDelta:0},deltaZ:0,deltaMode:0}),Sy=Xe(by),Cy=[9,13,27,32],Nu=Nt&&"CompositionEvent"in window,gr=null;Nt&&"documentMode"in document&&(gr=document.documentMode);var Ey=Nt&&"TextEvent"in window&&!gr,kp=Nt&&(!Nu||gr&&8<gr&&11>=gr),Zc=" ",eh=!1;function bp(t,e){switch(t){case"keyup":return Cy.indexOf(e.keyCode)!==-1;case"keydown":return e.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Sp(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var li=!1;function Py(t,e){switch(t){case"compositionend":return Sp(e);case"keypress":return e.which!==32?null:(eh=!0,Zc);case"textInput":return t=e.data,t===Zc&&eh?null:t;default:return null}}function Ty(t,e){if(li)return t==="compositionend"||!Nu&&bp(t,e)?(t=xp(),Xs=Au=Xt=null,li=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(e.ctrlKey||e.altKey||e.metaKey)||e.ctrlKey&&e.altKey){if(e.char&&1<e.char.length)return e.char;if(e.which)return String.fromCharCode(e.which)}return null;case"compositionend":return kp&&e.locale!=="ko"?null:e.data;default:return null}}var Oy={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 th(t){var e=t&&t.nodeName&&t.nodeName.toLowerCase();return e==="input"?!!Oy[t.type]:e==="textarea"}function Cp(t,e,n,i){np(i),e=vo(e,"onChange"),0<e.length&&(n=new Du("onChange","change",null,n,i),t.push({event:n,listeners:e}))}var mr=null,Nr=null;function Ly(t){jp(t,0)}function qo(t){var e=hi(t);if(qf(e))return t}function My(t,e){if(t==="change")return e}var Ep=!1;if(Nt){var Pa;if(Nt){var Ta="oninput"in document;if(!Ta){var nh=document.createElement("div");nh.setAttribute("oninput","return;"),Ta=typeof nh.oninput=="function"}Pa=Ta}else Pa=!1;Ep=Pa&&(!document.documentMode||9<document.documentMode)}function ih(){mr&&(mr.detachEvent("onpropertychange",Pp),Nr=mr=null)}function Pp(t){if(t.propertyName==="value"&&qo(Nr)){var e=[];Cp(e,Nr,t,Ou(t)),op(Ly,e)}}function Ry(t,e,n){t==="focusin"?(ih(),mr=e,Nr=n,mr.attachEvent("onpropertychange",Pp)):t==="focusout"&&ih()}function Iy(t){if(t==="selectionchange"||t==="keyup"||t==="keydown")return qo(Nr)}function Ay(t,e){if(t==="click")return qo(e)}function Dy(t,e){if(t==="input"||t==="change")return qo(e)}function jy(t,e){return t===e&&(t!==0||1/t===1/e)||t!==t&&e!==e}var yt=typeof Object.is=="function"?Object.is:jy;function zr(t,e){if(yt(t,e))return!0;if(typeof t!="object"||t===null||typeof e!="object"||e===null)return!1;var n=Object.keys(t),i=Object.keys(e);if(n.length!==i.length)return!1;for(i=0;i<n.length;i++){var r=n[i];if(!al.call(e,r)||!yt(t[r],e[r]))return!1}return!0}function rh(t){for(;t&&t.firstChild;)t=t.firstChild;return t}function sh(t,e){var n=rh(t);t=0;for(var i;n;){if(n.nodeType===3){if(i=t+n.textContent.length,t<=e&&i>=e)return{node:n,offset:e-t};t=i}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=rh(n)}}function Tp(t,e){return t&&e?t===e?!0:t&&t.nodeType===3?!1:e&&e.nodeType===3?Tp(t,e.parentNode):"contains"in t?t.contains(e):t.compareDocumentPosition?!!(t.compareDocumentPosition(e)&16):!1:!1}function Op(){for(var t=window,e=co();e instanceof t.HTMLIFrameElement;){try{var n=typeof e.contentWindow.location.href=="string"}catch{n=!1}if(n)t=e.contentWindow;else break;e=co(t.document)}return e}function zu(t){var e=t&&t.nodeName&&t.nodeName.toLowerCase();return e&&(e==="input"&&(t.type==="text"||t.type==="search"||t.type==="tel"||t.type==="url"||t.type==="password")||e==="textarea"||t.contentEditable==="true")}function Ny(t){var e=Op(),n=t.focusedElem,i=t.selectionRange;if(e!==n&&n&&n.ownerDocument&&Tp(n.ownerDocument.documentElement,n)){if(i!==null&&zu(n)){if(e=i.start,t=i.end,t===void 0&&(t=e),"selectionStart"in n)n.selectionStart=e,n.selectionEnd=Math.min(t,n.value.length);else if(t=(e=n.ownerDocument||document)&&e.defaultView||window,t.getSelection){t=t.getSelection();var r=n.textContent.length,s=Math.min(i.start,r);i=i.end===void 0?s:Math.min(i.end,r),!t.extend&&s>i&&(r=i,i=s,s=r),r=sh(n,s);var o=sh(n,i);r&&o&&(t.rangeCount!==1||t.anchorNode!==r.node||t.anchorOffset!==r.offset||t.focusNode!==o.node||t.focusOffset!==o.offset)&&(e=e.createRange(),e.setStart(r.node,r.offset),t.removeAllRanges(),s>i?(t.addRange(e),t.extend(o.node,o.offset)):(e.setEnd(o.node,o.offset),t.addRange(e)))}}for(e=[],t=n;t=t.parentNode;)t.nodeType===1&&e.push({element:t,left:t.scrollLeft,top:t.scrollTop});for(typeof n.focus=="function"&&n.focus(),n=0;n<e.length;n++)t=e[n],t.element.scrollLeft=t.left,t.element.scrollTop=t.top}}var zy=Nt&&"documentMode"in document&&11>=document.documentMode,ui=null,El=null,yr=null,Pl=!1;function oh(t,e,n){var i=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;Pl||ui==null||ui!==co(i)||(i=ui,"selectionStart"in i&&zu(i)?i={start:i.selectionStart,end:i.selectionEnd}:(i=(i.ownerDocument&&i.ownerDocument.defaultView||window).getSelection(),i={anchorNode:i.anchorNode,anchorOffset:i.anchorOffset,focusNode:i.focusNode,focusOffset:i.focusOffset}),yr&&zr(yr,i)||(yr=i,i=vo(El,"onSelect"),0<i.length&&(e=new Du("onSelect","select",null,e,n),t.push({event:e,listeners:i}),e.target=ui)))}function ws(t,e){var n={};return n[t.toLowerCase()]=e.toLowerCase(),n["Webkit"+t]="webkit"+e,n["Moz"+t]="moz"+e,n}var ci={animationend:ws("Animation","AnimationEnd"),animationiteration:ws("Animation","AnimationIteration"),animationstart:ws("Animation","AnimationStart"),transitionend:ws("Transition","TransitionEnd")},Oa={},Lp={};Nt&&(Lp=document.createElement("div").style,"AnimationEvent"in window||(delete ci.animationend.animation,delete ci.animationiteration.animation,delete ci.animationstart.animation),"TransitionEvent"in window||delete ci.transitionend.transition);function Qo(t){if(Oa[t])return Oa[t];if(!ci[t])return t;var e=ci[t],n;for(n in e)if(e.hasOwnProperty(n)&&n in Lp)return Oa[t]=e[n];return t}var Mp=Qo("animationend"),Rp=Qo("animationiteration"),Ip=Qo("animationstart"),Ap=Qo("transitionend"),Dp=new Map,ah="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 vn(t,e){Dp.set(t,e),Gn(e,[t])}for(var La=0;La<ah.length;La++){var Ma=ah[La],Fy=Ma.toLowerCase(),$y=Ma[0].toUpperCase()+Ma.slice(1);vn(Fy,"on"+$y)}vn(Mp,"onAnimationEnd");vn(Rp,"onAnimationIteration");vn(Ip,"onAnimationStart");vn("dblclick","onDoubleClick");vn("focusin","onFocus");vn("focusout","onBlur");vn(Ap,"onTransitionEnd");Ci("onMouseEnter",["mouseout","mouseover"]);Ci("onMouseLeave",["mouseout","mouseover"]);Ci("onPointerEnter",["pointerout","pointerover"]);Ci("onPointerLeave",["pointerout","pointerover"]);Gn("onChange","change click focusin focusout input keydown keyup selectionchange".split(" "));Gn("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" "));Gn("onBeforeInput",["compositionend","keypress","textInput","paste"]);Gn("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" "));Gn("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" "));Gn("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var ar="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(" "),Uy=new Set("cancel close invalid load scroll toggle".split(" ").concat(ar));function lh(t,e,n){var i=t.type||"unknown-event";t.currentTarget=n,F0(i,e,void 0,t),t.currentTarget=null}function jp(t,e){e=(e&4)!==0;for(var n=0;n<t.length;n++){var i=t[n],r=i.event;i=i.listeners;e:{var s=void 0;if(e)for(var o=i.length-1;0<=o;o--){var a=i[o],l=a.instance,u=a.currentTarget;if(a=a.listener,l!==s&&r.isPropagationStopped())break e;lh(r,a,u),s=l}else for(o=0;o<i.length;o++){if(a=i[o],l=a.instance,u=a.currentTarget,a=a.listener,l!==s&&r.isPropagationStopped())break e;lh(r,a,u),s=l}}}if(fo)throw t=kl,fo=!1,kl=null,t}function X(t,e){var n=e[Rl];n===void 0&&(n=e[Rl]=new Set);var i=t+"__bubble";n.has(i)||(Np(e,t,2,!1),n.add(i))}function Ra(t,e,n){var i=0;e&&(i|=4),Np(n,t,i,e)}var xs="_reactListening"+Math.random().toString(36).slice(2);function Fr(t){if(!t[xs]){t[xs]=!0,Hf.forEach(function(n){n!=="selectionchange"&&(Uy.has(n)||Ra(n,!1,t),Ra(n,!0,t))});var e=t.nodeType===9?t:t.ownerDocument;e===null||e[xs]||(e[xs]=!0,Ra("selectionchange",!1,e))}}function Np(t,e,n,i){switch(wp(e)){case 1:var r=ty;break;case 4:r=ny;break;default:r=Iu}n=r.bind(null,e,n,t),r=void 0,!xl||e!=="touchstart"&&e!=="touchmove"&&e!=="wheel"||(r=!0),i?r!==void 0?t.addEventListener(e,n,{capture:!0,passive:r}):t.addEventListener(e,n,!0):r!==void 0?t.addEventListener(e,n,{passive:r}):t.addEventListener(e,n,!1)}function Ia(t,e,n,i,r){var s=i;if(!(e&1)&&!(e&2)&&i!==null)e:for(;;){if(i===null)return;var o=i.tag;if(o===3||o===4){var a=i.stateNode.containerInfo;if(a===r||a.nodeType===8&&a.parentNode===r)break;if(o===4)for(o=i.return;o!==null;){var l=o.tag;if((l===3||l===4)&&(l=o.stateNode.containerInfo,l===r||l.nodeType===8&&l.parentNode===r))return;o=o.return}for(;a!==null;){if(o=An(a),o===null)return;if(l=o.tag,l===5||l===6){i=s=o;continue e}a=a.parentNode}}i=i.return}op(function(){var u=s,c=Ou(n),h=[];e:{var d=Dp.get(t);if(d!==void 0){var f=Du,m=t;switch(t){case"keypress":if(Js(n)===0)break e;case"keydown":case"keyup":f=yy;break;case"focusin":m="focus",f=Ea;break;case"focusout":m="blur",f=Ea;break;case"beforeblur":case"afterblur":f=Ea;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":f=Qc;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":f=sy;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":f=wy;break;case Mp:case Rp:case Ip:f=ly;break;case Ap:f=ky;break;case"scroll":f=iy;break;case"wheel":f=Sy;break;case"copy":case"cut":case"paste":f=cy;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":f=Jc}var y=(e&4)!==0,v=!y&&t==="scroll",p=y?d!==null?d+"Capture":null:d;y=[];for(var g=u,_;g!==null;){_=g;var w=_.stateNode;if(_.tag===5&&w!==null&&(_=w,p!==null&&(w=Ir(g,p),w!=null&&y.push($r(g,w,_)))),v)break;g=g.return}0<y.length&&(d=new f(d,m,null,n,c),h.push({event:d,listeners:y}))}}if(!(e&7)){e:{if(d=t==="mouseover"||t==="pointerover",f=t==="mouseout"||t==="pointerout",d&&n!==_l&&(m=n.relatedTarget||n.fromElement)&&(An(m)||m[zt]))break e;if((f||d)&&(d=c.window===c?c:(d=c.ownerDocument)?d.defaultView||d.parentWindow:window,f?(m=n.relatedTarget||n.toElement,f=u,m=m?An(m):null,m!==null&&(v=qn(m),m!==v||m.tag!==5&&m.tag!==6)&&(m=null)):(f=null,m=u),f!==m)){if(y=Qc,w="onMouseLeave",p="onMouseEnter",g="mouse",(t==="pointerout"||t==="pointerover")&&(y=Jc,w="onPointerLeave",p="onPointerEnter",g="pointer"),v=f==null?d:hi(f),_=m==null?d:hi(m),d=new y(w,g+"leave",f,n,c),d.target=v,d.relatedTarget=_,w=null,An(c)===u&&(y=new y(p,g+"enter",m,n,c),y.target=_,y.relatedTarget=v,w=y),v=w,f&&m)t:{for(y=f,p=m,g=0,_=y;_;_=Jn(_))g++;for(_=0,w=p;w;w=Jn(w))_++;for(;0<g-_;)y=Jn(y),g--;for(;0<_-g;)p=Jn(p),_--;for(;g--;){if(y===p||p!==null&&y===p.alternate)break t;y=Jn(y),p=Jn(p)}y=null}else y=null;f!==null&&uh(h,d,f,y,!1),m!==null&&v!==null&&uh(h,v,m,y,!0)}}e:{if(d=u?hi(u):window,f=d.nodeName&&d.nodeName.toLowerCase(),f==="select"||f==="input"&&d.type==="file")var x=My;else if(th(d))if(Ep)x=Dy;else{x=Iy;var b=Ry}else(f=d.nodeName)&&f.toLowerCase()==="input"&&(d.type==="checkbox"||d.type==="radio")&&(x=Ay);if(x&&(x=x(t,u))){Cp(h,x,n,c);break e}b&&b(t,d,u),t==="focusout"&&(b=d._wrapperState)&&b.controlled&&d.type==="number"&&pl(d,"number",d.value)}switch(b=u?hi(u):window,t){case"focusin":(th(b)||b.contentEditable==="true")&&(ui=b,El=u,yr=null);break;case"focusout":yr=El=ui=null;break;case"mousedown":Pl=!0;break;case"contextmenu":case"mouseup":case"dragend":Pl=!1,oh(h,n,c);break;case"selectionchange":if(zy)break;case"keydown":case"keyup":oh(h,n,c)}var k;if(Nu)e:{switch(t){case"compositionstart":var S="onCompositionStart";break e;case"compositionend":S="onCompositionEnd";break e;case"compositionupdate":S="onCompositionUpdate";break e}S=void 0}else li?bp(t,n)&&(S="onCompositionEnd"):t==="keydown"&&n.keyCode===229&&(S="onCompositionStart");S&&(kp&&n.locale!=="ko"&&(li||S!=="onCompositionStart"?S==="onCompositionEnd"&&li&&(k=xp()):(Xt=c,Au="value"in Xt?Xt.value:Xt.textContent,li=!0)),b=vo(u,S),0<b.length&&(S=new Xc(S,t,null,n,c),h.push({event:S,listeners:b}),k?S.data=k:(k=Sp(n),k!==null&&(S.data=k)))),(k=Ey?Py(t,n):Ty(t,n))&&(u=vo(u,"onBeforeInput"),0<u.length&&(c=new Xc("onBeforeInput","beforeinput",null,n,c),h.push({event:c,listeners:u}),c.data=k))}jp(h,e)})}function $r(t,e,n){return{instance:t,listener:e,currentTarget:n}}function vo(t,e){for(var n=e+"Capture",i=[];t!==null;){var r=t,s=r.stateNode;r.tag===5&&s!==null&&(r=s,s=Ir(t,n),s!=null&&i.unshift($r(t,s,r)),s=Ir(t,e),s!=null&&i.push($r(t,s,r))),t=t.return}return i}function Jn(t){if(t===null)return null;do t=t.return;while(t&&t.tag!==5);return t||null}function uh(t,e,n,i,r){for(var s=e._reactName,o=[];n!==null&&n!==i;){var a=n,l=a.alternate,u=a.stateNode;if(l!==null&&l===i)break;a.tag===5&&u!==null&&(a=u,r?(l=Ir(n,s),l!=null&&o.unshift($r(n,l,a))):r||(l=Ir(n,s),l!=null&&o.push($r(n,l,a)))),n=n.return}o.length!==0&&t.push({event:e,listeners:o})}var By=/\r\n?/g,Vy=/\u0000|\uFFFD/g;function ch(t){return(typeof t=="string"?t:""+t).replace(By,`
 `).replace(Vy,"")}function ks(t,e,n){if(e=ch(e),ch(t)!==e&&n)throw Error(C(425))}function _o(){}var Tl=null,Ol=null;function Ll(t,e){return t==="textarea"||t==="noscript"||typeof e.children=="string"||typeof e.children=="number"||typeof e.dangerouslySetInnerHTML=="object"&&e.dangerouslySetInnerHTML!==null&&e.dangerouslySetInnerHTML.__html!=null}var Ml=typeof setTimeout=="function"?setTimeout:void 0,Hy=typeof clearTimeout=="function"?clearTimeout:void 0,hh=typeof Promise=="function"?Promise:void 0,Wy=typeof queueMicrotask=="function"?queueMicrotask:typeof hh<"u"?function(t){return hh.resolve(null).then(t).catch(Ky)}:Ml;function Ky(t){setTimeout(function(){throw t})}function Aa(t,e){var n=e,i=0;do{var r=n.nextSibling;if(t.removeChild(n),r&&r.nodeType===8)if(n=r.data,n==="/$"){if(i===0){t.removeChild(r),jr(e);return}i--}else n!=="$"&&n!=="$?"&&n!=="$!"||i++;n=r}while(n);jr(e)}function ln(t){for(;t!=null;t=t.nextSibling){var e=t.nodeType;if(e===1||e===3)break;if(e===8){if(e=t.data,e==="$"||e==="$!"||e==="$?")break;if(e==="/$")return null}}return t}function dh(t){t=t.previousSibling;for(var e=0;t;){if(t.nodeType===8){var n=t.data;if(n==="$"||n==="$!"||n==="$?"){if(e===0)return t;e--}else n==="/$"&&e++}t=t.previousSibling}return null}var $i=Math.random().toString(36).slice(2),bt="__reactFiber$"+$i,Ur="__reactProps$"+$i,zt="__reactContainer$"+$i,Rl="__reactEvents$"+$i,Yy="__reactListeners$"+$i,Gy="__reactHandles$"+$i;function An(t){var e=t[bt];if(e)return e;for(var n=t.parentNode;n;){if(e=n[zt]||n[bt]){if(n=e.alternate,e.child!==null||n!==null&&n.child!==null)for(t=dh(t);t!==null;){if(n=t[bt])return n;t=dh(t)}return e}t=n,n=t.parentNode}return null}function os(t){return t=t[bt]||t[zt],!t||t.tag!==5&&t.tag!==6&&t.tag!==13&&t.tag!==3?null:t}function hi(t){if(t.tag===5||t.tag===6)return t.stateNode;throw Error(C(33))}function Xo(t){return t[Ur]||null}var Il=[],di=-1;function _n(t){return{current:t}}function Z(t){0>di||(t.current=Il[di],Il[di]=null,di--)}function q(t,e){di++,Il[di]=t.current,t.current=e}var gn={},Pe=_n(gn),Fe=_n(!1),Bn=gn;function Ei(t,e){var n=t.type.contextTypes;if(!n)return gn;var i=t.stateNode;if(i&&i.__reactInternalMemoizedUnmaskedChildContext===e)return i.__reactInternalMemoizedMaskedChildContext;var r={},s;for(s in n)r[s]=e[s];return i&&(t=t.stateNode,t.__reactInternalMemoizedUnmaskedChildContext=e,t.__reactInternalMemoizedMaskedChildContext=r),r}function $e(t){return t=t.childContextTypes,t!=null}function wo(){Z(Fe),Z(Pe)}function fh(t,e,n){if(Pe.current!==gn)throw Error(C(168));q(Pe,e),q(Fe,n)}function zp(t,e,n){var i=t.stateNode;if(e=e.childContextTypes,typeof i.getChildContext!="function")return n;i=i.getChildContext();for(var r in i)if(!(r in e))throw Error(C(108,R0(t)||"Unknown",r));return ie({},n,i)}function xo(t){return t=(t=t.stateNode)&&t.__reactInternalMemoizedMergedChildContext||gn,Bn=Pe.current,q(Pe,t),q(Fe,Fe.current),!0}function ph(t,e,n){var i=t.stateNode;if(!i)throw Error(C(169));n?(t=zp(t,e,Bn),i.__reactInternalMemoizedMergedChildContext=t,Z(Fe),Z(Pe),q(Pe,t)):Z(Fe),q(Fe,n)}var Mt=null,Jo=!1,Da=!1;function Fp(t){Mt===null?Mt=[t]:Mt.push(t)}function qy(t){Jo=!0,Fp(t)}function wn(){if(!Da&&Mt!==null){Da=!0;var t=0,e=H;try{var n=Mt;for(H=1;t<n.length;t++){var i=n[t];do i=i(!0);while(i!==null)}Mt=null,Jo=!1}catch(r){throw Mt!==null&&(Mt=Mt.slice(t+1)),cp(Lu,wn),r}finally{H=e,Da=!1}}return null}var fi=[],pi=0,ko=null,bo=0,et=[],tt=0,Vn=null,It=1,At="";function Tn(t,e){fi[pi++]=bo,fi[pi++]=ko,ko=t,bo=e}function $p(t,e,n){et[tt++]=It,et[tt++]=At,et[tt++]=Vn,Vn=t;var i=It;t=At;var r=32-pt(i)-1;i&=~(1<<r),n+=1;var s=32-pt(e)+r;if(30<s){var o=r-r%5;s=(i&(1<<o)-1).toString(32),i>>=o,r-=o,It=1<<32-pt(e)+r|n<<r|i,At=s+t}else It=1<<s|n<<r|i,At=t}function Fu(t){t.return!==null&&(Tn(t,1),$p(t,1,0))}function $u(t){for(;t===ko;)ko=fi[--pi],fi[pi]=null,bo=fi[--pi],fi[pi]=null;for(;t===Vn;)Vn=et[--tt],et[tt]=null,At=et[--tt],et[tt]=null,It=et[--tt],et[tt]=null}var Ye=null,We=null,ee=!1,ft=null;function Up(t,e){var n=nt(5,null,null,0);n.elementType="DELETED",n.stateNode=e,n.return=t,e=t.deletions,e===null?(t.deletions=[n],t.flags|=16):e.push(n)}function gh(t,e){switch(t.tag){case 5:var n=t.type;return e=e.nodeType!==1||n.toLowerCase()!==e.nodeName.toLowerCase()?null:e,e!==null?(t.stateNode=e,Ye=t,We=ln(e.firstChild),!0):!1;case 6:return e=t.pendingProps===""||e.nodeType!==3?null:e,e!==null?(t.stateNode=e,Ye=t,We=null,!0):!1;case 13:return e=e.nodeType!==8?null:e,e!==null?(n=Vn!==null?{id:It,overflow:At}:null,t.memoizedState={dehydrated:e,treeContext:n,retryLane:1073741824},n=nt(18,null,null,0),n.stateNode=e,n.return=t,t.child=n,Ye=t,We=null,!0):!1;default:return!1}}function Al(t){return(t.mode&1)!==0&&(t.flags&128)===0}function Dl(t){if(ee){var e=We;if(e){var n=e;if(!gh(t,e)){if(Al(t))throw Error(C(418));e=ln(n.nextSibling);var i=Ye;e&&gh(t,e)?Up(i,n):(t.flags=t.flags&-4097|2,ee=!1,Ye=t)}}else{if(Al(t))throw Error(C(418));t.flags=t.flags&-4097|2,ee=!1,Ye=t}}}function mh(t){for(t=t.return;t!==null&&t.tag!==5&&t.tag!==3&&t.tag!==13;)t=t.return;Ye=t}function bs(t){if(t!==Ye)return!1;if(!ee)return mh(t),ee=!0,!1;var e;if((e=t.tag!==3)&&!(e=t.tag!==5)&&(e=t.type,e=e!=="head"&&e!=="body"&&!Ll(t.type,t.memoizedProps)),e&&(e=We)){if(Al(t))throw Bp(),Error(C(418));for(;e;)Up(t,e),e=ln(e.nextSibling)}if(mh(t),t.tag===13){if(t=t.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(C(317));e:{for(t=t.nextSibling,e=0;t;){if(t.nodeType===8){var n=t.data;if(n==="/$"){if(e===0){We=ln(t.nextSibling);break e}e--}else n!=="$"&&n!=="$!"&&n!=="$?"||e++}t=t.nextSibling}We=null}}else We=Ye?ln(t.stateNode.nextSibling):null;return!0}function Bp(){for(var t=We;t;)t=ln(t.nextSibling)}function Pi(){We=Ye=null,ee=!1}function Uu(t){ft===null?ft=[t]:ft.push(t)}var Qy=Ut.ReactCurrentBatchConfig;function qi(t,e,n){if(t=n.ref,t!==null&&typeof t!="function"&&typeof t!="object"){if(n._owner){if(n=n._owner,n){if(n.tag!==1)throw Error(C(309));var i=n.stateNode}if(!i)throw Error(C(147,t));var r=i,s=""+t;return e!==null&&e.ref!==null&&typeof e.ref=="function"&&e.ref._stringRef===s?e.ref:(e=function(o){var a=r.refs;o===null?delete a[s]:a[s]=o},e._stringRef=s,e)}if(typeof t!="string")throw Error(C(284));if(!n._owner)throw Error(C(290,t))}return t}function Ss(t,e){throw t=Object.prototype.toString.call(e),Error(C(31,t==="[object Object]"?"object with keys {"+Object.keys(e).join(", ")+"}":t))}function yh(t){var e=t._init;return e(t._payload)}function Vp(t){function e(p,g){if(t){var _=p.deletions;_===null?(p.deletions=[g],p.flags|=16):_.push(g)}}function n(p,g){if(!t)return null;for(;g!==null;)e(p,g),g=g.sibling;return null}function i(p,g){for(p=new Map;g!==null;)g.key!==null?p.set(g.key,g):p.set(g.index,g),g=g.sibling;return p}function r(p,g){return p=dn(p,g),p.index=0,p.sibling=null,p}function s(p,g,_){return p.index=_,t?(_=p.alternate,_!==null?(_=_.index,_<g?(p.flags|=2,g):_):(p.flags|=2,g)):(p.flags|=1048576,g)}function o(p){return t&&p.alternate===null&&(p.flags|=2),p}function a(p,g,_,w){return g===null||g.tag!==6?(g=Ba(_,p.mode,w),g.return=p,g):(g=r(g,_),g.return=p,g)}function l(p,g,_,w){var x=_.type;return x===ai?c(p,g,_.props.children,w,_.key):g!==null&&(g.elementType===x||typeof x=="object"&&x!==null&&x.$$typeof===Wt&&yh(x)===g.type)?(w=r(g,_.props),w.ref=qi(p,g,_),w.return=p,w):(w=so(_.type,_.key,_.props,null,p.mode,w),w.ref=qi(p,g,_),w.return=p,w)}function u(p,g,_,w){return g===null||g.tag!==4||g.stateNode.containerInfo!==_.containerInfo||g.stateNode.implementation!==_.implementation?(g=Va(_,p.mode,w),g.return=p,g):(g=r(g,_.children||[]),g.return=p,g)}function c(p,g,_,w,x){return g===null||g.tag!==7?(g=Fn(_,p.mode,w,x),g.return=p,g):(g=r(g,_),g.return=p,g)}function h(p,g,_){if(typeof g=="string"&&g!==""||typeof g=="number")return g=Ba(""+g,p.mode,_),g.return=p,g;if(typeof g=="object"&&g!==null){switch(g.$$typeof){case fs:return _=so(g.type,g.key,g.props,null,p.mode,_),_.ref=qi(p,null,g),_.return=p,_;case oi:return g=Va(g,p.mode,_),g.return=p,g;case Wt:var w=g._init;return h(p,w(g._payload),_)}if(sr(g)||Hi(g))return g=Fn(g,p.mode,_,null),g.return=p,g;Ss(p,g)}return null}function d(p,g,_,w){var x=g!==null?g.key:null;if(typeof _=="string"&&_!==""||typeof _=="number")return x!==null?null:a(p,g,""+_,w);if(typeof _=="object"&&_!==null){switch(_.$$typeof){case fs:return _.key===x?l(p,g,_,w):null;case oi:return _.key===x?u(p,g,_,w):null;case Wt:return x=_._init,d(p,g,x(_._payload),w)}if(sr(_)||Hi(_))return x!==null?null:c(p,g,_,w,null);Ss(p,_)}return null}function f(p,g,_,w,x){if(typeof w=="string"&&w!==""||typeof w=="number")return p=p.get(_)||null,a(g,p,""+w,x);if(typeof w=="object"&&w!==null){switch(w.$$typeof){case fs:return p=p.get(w.key===null?_:w.key)||null,l(g,p,w,x);case oi:return p=p.get(w.key===null?_:w.key)||null,u(g,p,w,x);case Wt:var b=w._init;return f(p,g,_,b(w._payload),x)}if(sr(w)||Hi(w))return p=p.get(_)||null,c(g,p,w,x,null);Ss(g,w)}return null}function m(p,g,_,w){for(var x=null,b=null,k=g,S=g=0,M=null;k!==null&&S<_.length;S++){k.index>S?(M=k,k=null):M=k.sibling;var L=d(p,k,_[S],w);if(L===null){k===null&&(k=M);break}t&&k&&L.alternate===null&&e(p,k),g=s(L,g,S),b===null?x=L:b.sibling=L,b=L,k=M}if(S===_.length)return n(p,k),ee&&Tn(p,S),x;if(k===null){for(;S<_.length;S++)k=h(p,_[S],w),k!==null&&(g=s(k,g,S),b===null?x=k:b.sibling=k,b=k);return ee&&Tn(p,S),x}for(k=i(p,k);S<_.length;S++)M=f(k,p,S,_[S],w),M!==null&&(t&&M.alternate!==null&&k.delete(M.key===null?S:M.key),g=s(M,g,S),b===null?x=M:b.sibling=M,b=M);return t&&k.forEach(function(D){return e(p,D)}),ee&&Tn(p,S),x}function y(p,g,_,w){var x=Hi(_);if(typeof x!="function")throw Error(C(150));if(_=x.call(_),_==null)throw Error(C(151));for(var b=x=null,k=g,S=g=0,M=null,L=_.next();k!==null&&!L.done;S++,L=_.next()){k.index>S?(M=k,k=null):M=k.sibling;var D=d(p,k,L.value,w);if(D===null){k===null&&(k=M);break}t&&k&&D.alternate===null&&e(p,k),g=s(D,g,S),b===null?x=D:b.sibling=D,b=D,k=M}if(L.done)return n(p,k),ee&&Tn(p,S),x;if(k===null){for(;!L.done;S++,L=_.next())L=h(p,L.value,w),L!==null&&(g=s(L,g,S),b===null?x=L:b.sibling=L,b=L);return ee&&Tn(p,S),x}for(k=i(p,k);!L.done;S++,L=_.next())L=f(k,p,S,L.value,w),L!==null&&(t&&L.alternate!==null&&k.delete(L.key===null?S:L.key),g=s(L,g,S),b===null?x=L:b.sibling=L,b=L);return t&&k.forEach(function(B){return e(p,B)}),ee&&Tn(p,S),x}function v(p,g,_,w){if(typeof _=="object"&&_!==null&&_.type===ai&&_.key===null&&(_=_.props.children),typeof _=="object"&&_!==null){switch(_.$$typeof){case fs:e:{for(var x=_.key,b=g;b!==null;){if(b.key===x){if(x=_.type,x===ai){if(b.tag===7){n(p,b.sibling),g=r(b,_.props.children),g.return=p,p=g;break e}}else if(b.elementType===x||typeof x=="object"&&x!==null&&x.$$typeof===Wt&&yh(x)===b.type){n(p,b.sibling),g=r(b,_.props),g.ref=qi(p,b,_),g.return=p,p=g;break e}n(p,b);break}else e(p,b);b=b.sibling}_.type===ai?(g=Fn(_.props.children,p.mode,w,_.key),g.return=p,p=g):(w=so(_.type,_.key,_.props,null,p.mode,w),w.ref=qi(p,g,_),w.return=p,p=w)}return o(p);case oi:e:{for(b=_.key;g!==null;){if(g.key===b)if(g.tag===4&&g.stateNode.containerInfo===_.containerInfo&&g.stateNode.implementation===_.implementation){n(p,g.sibling),g=r(g,_.children||[]),g.return=p,p=g;break e}else{n(p,g);break}else e(p,g);g=g.sibling}g=Va(_,p.mode,w),g.return=p,p=g}return o(p);case Wt:return b=_._init,v(p,g,b(_._payload),w)}if(sr(_))return m(p,g,_,w);if(Hi(_))return y(p,g,_,w);Ss(p,_)}return typeof _=="string"&&_!==""||typeof _=="number"?(_=""+_,g!==null&&g.tag===6?(n(p,g.sibling),g=r(g,_),g.return=p,p=g):(n(p,g),g=Ba(_,p.mode,w),g.return=p,p=g),o(p)):n(p,g)}return v}var Ti=Vp(!0),Hp=Vp(!1),So=_n(null),Co=null,gi=null,Bu=null;function Vu(){Bu=gi=Co=null}function Hu(t){var e=So.current;Z(So),t._currentValue=e}function jl(t,e,n){for(;t!==null;){var i=t.alternate;if((t.childLanes&e)!==e?(t.childLanes|=e,i!==null&&(i.childLanes|=e)):i!==null&&(i.childLanes&e)!==e&&(i.childLanes|=e),t===n)break;t=t.return}}function ki(t,e){Co=t,Bu=gi=null,t=t.dependencies,t!==null&&t.firstContext!==null&&(t.lanes&e&&(ze=!0),t.firstContext=null)}function st(t){var e=t._currentValue;if(Bu!==t)if(t={context:t,memoizedValue:e,next:null},gi===null){if(Co===null)throw Error(C(308));gi=t,Co.dependencies={lanes:0,firstContext:t}}else gi=gi.next=t;return e}var Dn=null;function Wu(t){Dn===null?Dn=[t]:Dn.push(t)}function Wp(t,e,n,i){var r=e.interleaved;return r===null?(n.next=n,Wu(e)):(n.next=r.next,r.next=n),e.interleaved=n,Ft(t,i)}function Ft(t,e){t.lanes|=e;var n=t.alternate;for(n!==null&&(n.lanes|=e),n=t,t=t.return;t!==null;)t.childLanes|=e,n=t.alternate,n!==null&&(n.childLanes|=e),n=t,t=t.return;return n.tag===3?n.stateNode:null}var Kt=!1;function Ku(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function Kp(t,e){t=t.updateQueue,e.updateQueue===t&&(e.updateQueue={baseState:t.baseState,firstBaseUpdate:t.firstBaseUpdate,lastBaseUpdate:t.lastBaseUpdate,shared:t.shared,effects:t.effects})}function jt(t,e){return{eventTime:t,lane:e,tag:0,payload:null,callback:null,next:null}}function un(t,e,n){var i=t.updateQueue;if(i===null)return null;if(i=i.shared,F&2){var r=i.pending;return r===null?e.next=e:(e.next=r.next,r.next=e),i.pending=e,Ft(t,n)}return r=i.interleaved,r===null?(e.next=e,Wu(i)):(e.next=r.next,r.next=e),i.interleaved=e,Ft(t,n)}function Zs(t,e,n){if(e=e.updateQueue,e!==null&&(e=e.shared,(n&4194240)!==0)){var i=e.lanes;i&=t.pendingLanes,n|=i,e.lanes=n,Mu(t,n)}}function vh(t,e){var n=t.updateQueue,i=t.alternate;if(i!==null&&(i=i.updateQueue,n===i)){var r=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?r=s=o:s=s.next=o,n=n.next}while(n!==null);s===null?r=s=e:s=s.next=e}else r=s=e;n={baseState:i.baseState,firstBaseUpdate:r,lastBaseUpdate:s,shared:i.shared,effects:i.effects},t.updateQueue=n;return}t=n.lastBaseUpdate,t===null?n.firstBaseUpdate=e:t.next=e,n.lastBaseUpdate=e}function Eo(t,e,n,i){var r=t.updateQueue;Kt=!1;var s=r.firstBaseUpdate,o=r.lastBaseUpdate,a=r.shared.pending;if(a!==null){r.shared.pending=null;var l=a,u=l.next;l.next=null,o===null?s=u:o.next=u,o=l;var c=t.alternate;c!==null&&(c=c.updateQueue,a=c.lastBaseUpdate,a!==o&&(a===null?c.firstBaseUpdate=u:a.next=u,c.lastBaseUpdate=l))}if(s!==null){var h=r.baseState;o=0,c=u=l=null,a=s;do{var d=a.lane,f=a.eventTime;if((i&d)===d){c!==null&&(c=c.next={eventTime:f,lane:0,tag:a.tag,payload:a.payload,callback:a.callback,next:null});e:{var m=t,y=a;switch(d=e,f=n,y.tag){case 1:if(m=y.payload,typeof m=="function"){h=m.call(f,h,d);break e}h=m;break e;case 3:m.flags=m.flags&-65537|128;case 0:if(m=y.payload,d=typeof m=="function"?m.call(f,h,d):m,d==null)break e;h=ie({},h,d);break e;case 2:Kt=!0}}a.callback!==null&&a.lane!==0&&(t.flags|=64,d=r.effects,d===null?r.effects=[a]:d.push(a))}else f={eventTime:f,lane:d,tag:a.tag,payload:a.payload,callback:a.callback,next:null},c===null?(u=c=f,l=h):c=c.next=f,o|=d;if(a=a.next,a===null){if(a=r.shared.pending,a===null)break;d=a,a=d.next,d.next=null,r.lastBaseUpdate=d,r.shared.pending=null}}while(!0);if(c===null&&(l=h),r.baseState=l,r.firstBaseUpdate=u,r.lastBaseUpdate=c,e=r.shared.interleaved,e!==null){r=e;do o|=r.lane,r=r.next;while(r!==e)}else s===null&&(r.shared.lanes=0);Wn|=o,t.lanes=o,t.memoizedState=h}}function _h(t,e,n){if(t=e.effects,e.effects=null,t!==null)for(e=0;e<t.length;e++){var i=t[e],r=i.callback;if(r!==null){if(i.callback=null,i=n,typeof r!="function")throw Error(C(191,r));r.call(i)}}}var as={},Ct=_n(as),Br=_n(as),Vr=_n(as);function jn(t){if(t===as)throw Error(C(174));return t}function Yu(t,e){switch(q(Vr,e),q(Br,t),q(Ct,as),t=e.nodeType,t){case 9:case 11:e=(e=e.documentElement)?e.namespaceURI:ml(null,"");break;default:t=t===8?e.parentNode:e,e=t.namespaceURI||null,t=t.tagName,e=ml(e,t)}Z(Ct),q(Ct,e)}function Oi(){Z(Ct),Z(Br),Z(Vr)}function Yp(t){jn(Vr.current);var e=jn(Ct.current),n=ml(e,t.type);e!==n&&(q(Br,t),q(Ct,n))}function Gu(t){Br.current===t&&(Z(Ct),Z(Br))}var te=_n(0);function Po(t){for(var e=t;e!==null;){if(e.tag===13){var n=e.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||n.data==="$?"||n.data==="$!"))return e}else if(e.tag===19&&e.memoizedProps.revealOrder!==void 0){if(e.flags&128)return e}else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break;for(;e.sibling===null;){if(e.return===null||e.return===t)return null;e=e.return}e.sibling.return=e.return,e=e.sibling}return null}var ja=[];function qu(){for(var t=0;t<ja.length;t++)ja[t]._workInProgressVersionPrimary=null;ja.length=0}var eo=Ut.ReactCurrentDispatcher,Na=Ut.ReactCurrentBatchConfig,Hn=0,ne=null,fe=null,ye=null,To=!1,vr=!1,Hr=0,Xy=0;function be(){throw Error(C(321))}function Qu(t,e){if(e===null)return!1;for(var n=0;n<e.length&&n<t.length;n++)if(!yt(t[n],e[n]))return!1;return!0}function Xu(t,e,n,i,r,s){if(Hn=s,ne=e,e.memoizedState=null,e.updateQueue=null,e.lanes=0,eo.current=t===null||t.memoizedState===null?tv:nv,t=n(i,r),vr){s=0;do{if(vr=!1,Hr=0,25<=s)throw Error(C(301));s+=1,ye=fe=null,e.updateQueue=null,eo.current=iv,t=n(i,r)}while(vr)}if(eo.current=Oo,e=fe!==null&&fe.next!==null,Hn=0,ye=fe=ne=null,To=!1,e)throw Error(C(300));return t}function Ju(){var t=Hr!==0;return Hr=0,t}function xt(){var t={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return ye===null?ne.memoizedState=ye=t:ye=ye.next=t,ye}function ot(){if(fe===null){var t=ne.alternate;t=t!==null?t.memoizedState:null}else t=fe.next;var e=ye===null?ne.memoizedState:ye.next;if(e!==null)ye=e,fe=t;else{if(t===null)throw Error(C(310));fe=t,t={memoizedState:fe.memoizedState,baseState:fe.baseState,baseQueue:fe.baseQueue,queue:fe.queue,next:null},ye===null?ne.memoizedState=ye=t:ye=ye.next=t}return ye}function Wr(t,e){return typeof e=="function"?e(t):e}function za(t){var e=ot(),n=e.queue;if(n===null)throw Error(C(311));n.lastRenderedReducer=t;var i=fe,r=i.baseQueue,s=n.pending;if(s!==null){if(r!==null){var o=r.next;r.next=s.next,s.next=o}i.baseQueue=r=s,n.pending=null}if(r!==null){s=r.next,i=i.baseState;var a=o=null,l=null,u=s;do{var c=u.lane;if((Hn&c)===c)l!==null&&(l=l.next={lane:0,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null}),i=u.hasEagerState?u.eagerState:t(i,u.action);else{var h={lane:c,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null};l===null?(a=l=h,o=i):l=l.next=h,ne.lanes|=c,Wn|=c}u=u.next}while(u!==null&&u!==s);l===null?o=i:l.next=a,yt(i,e.memoizedState)||(ze=!0),e.memoizedState=i,e.baseState=o,e.baseQueue=l,n.lastRenderedState=i}if(t=n.interleaved,t!==null){r=t;do s=r.lane,ne.lanes|=s,Wn|=s,r=r.next;while(r!==t)}else r===null&&(n.lanes=0);return[e.memoizedState,n.dispatch]}function Fa(t){var e=ot(),n=e.queue;if(n===null)throw Error(C(311));n.lastRenderedReducer=t;var i=n.dispatch,r=n.pending,s=e.memoizedState;if(r!==null){n.pending=null;var o=r=r.next;do s=t(s,o.action),o=o.next;while(o!==r);yt(s,e.memoizedState)||(ze=!0),e.memoizedState=s,e.baseQueue===null&&(e.baseState=s),n.lastRenderedState=s}return[s,i]}function Gp(){}function qp(t,e){var n=ne,i=ot(),r=e(),s=!yt(i.memoizedState,r);if(s&&(i.memoizedState=r,ze=!0),i=i.queue,Zu(Jp.bind(null,n,i,t),[t]),i.getSnapshot!==e||s||ye!==null&&ye.memoizedState.tag&1){if(n.flags|=2048,Kr(9,Xp.bind(null,n,i,r,e),void 0,null),_e===null)throw Error(C(349));Hn&30||Qp(n,e,r)}return r}function Qp(t,e,n){t.flags|=16384,t={getSnapshot:e,value:n},e=ne.updateQueue,e===null?(e={lastEffect:null,stores:null},ne.updateQueue=e,e.stores=[t]):(n=e.stores,n===null?e.stores=[t]:n.push(t))}function Xp(t,e,n,i){e.value=n,e.getSnapshot=i,Zp(e)&&eg(t)}function Jp(t,e,n){return n(function(){Zp(e)&&eg(t)})}function Zp(t){var e=t.getSnapshot;t=t.value;try{var n=e();return!yt(t,n)}catch{return!0}}function eg(t){var e=Ft(t,1);e!==null&&gt(e,t,1,-1)}function wh(t){var e=xt();return typeof t=="function"&&(t=t()),e.memoizedState=e.baseState=t,t={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:Wr,lastRenderedState:t},e.queue=t,t=t.dispatch=ev.bind(null,ne,t),[e.memoizedState,t]}function Kr(t,e,n,i){return t={tag:t,create:e,destroy:n,deps:i,next:null},e=ne.updateQueue,e===null?(e={lastEffect:null,stores:null},ne.updateQueue=e,e.lastEffect=t.next=t):(n=e.lastEffect,n===null?e.lastEffect=t.next=t:(i=n.next,n.next=t,t.next=i,e.lastEffect=t)),t}function tg(){return ot().memoizedState}function to(t,e,n,i){var r=xt();ne.flags|=t,r.memoizedState=Kr(1|e,n,void 0,i===void 0?null:i)}function Zo(t,e,n,i){var r=ot();i=i===void 0?null:i;var s=void 0;if(fe!==null){var o=fe.memoizedState;if(s=o.destroy,i!==null&&Qu(i,o.deps)){r.memoizedState=Kr(e,n,s,i);return}}ne.flags|=t,r.memoizedState=Kr(1|e,n,s,i)}function xh(t,e){return to(8390656,8,t,e)}function Zu(t,e){return Zo(2048,8,t,e)}function ng(t,e){return Zo(4,2,t,e)}function ig(t,e){return Zo(4,4,t,e)}function rg(t,e){if(typeof e=="function")return t=t(),e(t),function(){e(null)};if(e!=null)return t=t(),e.current=t,function(){e.current=null}}function sg(t,e,n){return n=n!=null?n.concat([t]):null,Zo(4,4,rg.bind(null,e,t),n)}function ec(){}function og(t,e){var n=ot();e=e===void 0?null:e;var i=n.memoizedState;return i!==null&&e!==null&&Qu(e,i[1])?i[0]:(n.memoizedState=[t,e],t)}function ag(t,e){var n=ot();e=e===void 0?null:e;var i=n.memoizedState;return i!==null&&e!==null&&Qu(e,i[1])?i[0]:(t=t(),n.memoizedState=[t,e],t)}function lg(t,e,n){return Hn&21?(yt(n,e)||(n=fp(),ne.lanes|=n,Wn|=n,t.baseState=!0),e):(t.baseState&&(t.baseState=!1,ze=!0),t.memoizedState=n)}function Jy(t,e){var n=H;H=n!==0&&4>n?n:4,t(!0);var i=Na.transition;Na.transition={};try{t(!1),e()}finally{H=n,Na.transition=i}}function ug(){return ot().memoizedState}function Zy(t,e,n){var i=hn(t);if(n={lane:i,action:n,hasEagerState:!1,eagerState:null,next:null},cg(t))hg(e,n);else if(n=Wp(t,e,n,i),n!==null){var r=Re();gt(n,t,i,r),dg(n,e,i)}}function ev(t,e,n){var i=hn(t),r={lane:i,action:n,hasEagerState:!1,eagerState:null,next:null};if(cg(t))hg(e,r);else{var s=t.alternate;if(t.lanes===0&&(s===null||s.lanes===0)&&(s=e.lastRenderedReducer,s!==null))try{var o=e.lastRenderedState,a=s(o,n);if(r.hasEagerState=!0,r.eagerState=a,yt(a,o)){var l=e.interleaved;l===null?(r.next=r,Wu(e)):(r.next=l.next,l.next=r),e.interleaved=r;return}}catch{}finally{}n=Wp(t,e,r,i),n!==null&&(r=Re(),gt(n,t,i,r),dg(n,e,i))}}function cg(t){var e=t.alternate;return t===ne||e!==null&&e===ne}function hg(t,e){vr=To=!0;var n=t.pending;n===null?e.next=e:(e.next=n.next,n.next=e),t.pending=e}function dg(t,e,n){if(n&4194240){var i=e.lanes;i&=t.pendingLanes,n|=i,e.lanes=n,Mu(t,n)}}var Oo={readContext:st,useCallback:be,useContext:be,useEffect:be,useImperativeHandle:be,useInsertionEffect:be,useLayoutEffect:be,useMemo:be,useReducer:be,useRef:be,useState:be,useDebugValue:be,useDeferredValue:be,useTransition:be,useMutableSource:be,useSyncExternalStore:be,useId:be,unstable_isNewReconciler:!1},tv={readContext:st,useCallback:function(t,e){return xt().memoizedState=[t,e===void 0?null:e],t},useContext:st,useEffect:xh,useImperativeHandle:function(t,e,n){return n=n!=null?n.concat([t]):null,to(4194308,4,rg.bind(null,e,t),n)},useLayoutEffect:function(t,e){return to(4194308,4,t,e)},useInsertionEffect:function(t,e){return to(4,2,t,e)},useMemo:function(t,e){var n=xt();return e=e===void 0?null:e,t=t(),n.memoizedState=[t,e],t},useReducer:function(t,e,n){var i=xt();return e=n!==void 0?n(e):e,i.memoizedState=i.baseState=e,t={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:e},i.queue=t,t=t.dispatch=Zy.bind(null,ne,t),[i.memoizedState,t]},useRef:function(t){var e=xt();return t={current:t},e.memoizedState=t},useState:wh,useDebugValue:ec,useDeferredValue:function(t){return xt().memoizedState=t},useTransition:function(){var t=wh(!1),e=t[0];return t=Jy.bind(null,t[1]),xt().memoizedState=t,[e,t]},useMutableSource:function(){},useSyncExternalStore:function(t,e,n){var i=ne,r=xt();if(ee){if(n===void 0)throw Error(C(407));n=n()}else{if(n=e(),_e===null)throw Error(C(349));Hn&30||Qp(i,e,n)}r.memoizedState=n;var s={value:n,getSnapshot:e};return r.queue=s,xh(Jp.bind(null,i,s,t),[t]),i.flags|=2048,Kr(9,Xp.bind(null,i,s,n,e),void 0,null),n},useId:function(){var t=xt(),e=_e.identifierPrefix;if(ee){var n=At,i=It;n=(i&~(1<<32-pt(i)-1)).toString(32)+n,e=":"+e+"R"+n,n=Hr++,0<n&&(e+="H"+n.toString(32)),e+=":"}else n=Xy++,e=":"+e+"r"+n.toString(32)+":";return t.memoizedState=e},unstable_isNewReconciler:!1},nv={readContext:st,useCallback:og,useContext:st,useEffect:Zu,useImperativeHandle:sg,useInsertionEffect:ng,useLayoutEffect:ig,useMemo:ag,useReducer:za,useRef:tg,useState:function(){return za(Wr)},useDebugValue:ec,useDeferredValue:function(t){var e=ot();return lg(e,fe.memoizedState,t)},useTransition:function(){var t=za(Wr)[0],e=ot().memoizedState;return[t,e]},useMutableSource:Gp,useSyncExternalStore:qp,useId:ug,unstable_isNewReconciler:!1},iv={readContext:st,useCallback:og,useContext:st,useEffect:Zu,useImperativeHandle:sg,useInsertionEffect:ng,useLayoutEffect:ig,useMemo:ag,useReducer:Fa,useRef:tg,useState:function(){return Fa(Wr)},useDebugValue:ec,useDeferredValue:function(t){var e=ot();return fe===null?e.memoizedState=t:lg(e,fe.memoizedState,t)},useTransition:function(){var t=Fa(Wr)[0],e=ot().memoizedState;return[t,e]},useMutableSource:Gp,useSyncExternalStore:qp,useId:ug,unstable_isNewReconciler:!1};function ut(t,e){if(t&&t.defaultProps){e=ie({},e),t=t.defaultProps;for(var n in t)e[n]===void 0&&(e[n]=t[n]);return e}return e}function Nl(t,e,n,i){e=t.memoizedState,n=n(i,e),n=n==null?e:ie({},e,n),t.memoizedState=n,t.lanes===0&&(t.updateQueue.baseState=n)}var ea={isMounted:function(t){return(t=t._reactInternals)?qn(t)===t:!1},enqueueSetState:function(t,e,n){t=t._reactInternals;var i=Re(),r=hn(t),s=jt(i,r);s.payload=e,n!=null&&(s.callback=n),e=un(t,s,r),e!==null&&(gt(e,t,r,i),Zs(e,t,r))},enqueueReplaceState:function(t,e,n){t=t._reactInternals;var i=Re(),r=hn(t),s=jt(i,r);s.tag=1,s.payload=e,n!=null&&(s.callback=n),e=un(t,s,r),e!==null&&(gt(e,t,r,i),Zs(e,t,r))},enqueueForceUpdate:function(t,e){t=t._reactInternals;var n=Re(),i=hn(t),r=jt(n,i);r.tag=2,e!=null&&(r.callback=e),e=un(t,r,i),e!==null&&(gt(e,t,i,n),Zs(e,t,i))}};function kh(t,e,n,i,r,s,o){return t=t.stateNode,typeof t.shouldComponentUpdate=="function"?t.shouldComponentUpdate(i,s,o):e.prototype&&e.prototype.isPureReactComponent?!zr(n,i)||!zr(r,s):!0}function fg(t,e,n){var i=!1,r=gn,s=e.contextType;return typeof s=="object"&&s!==null?s=st(s):(r=$e(e)?Bn:Pe.current,i=e.contextTypes,s=(i=i!=null)?Ei(t,r):gn),e=new e(n,s),t.memoizedState=e.state!==null&&e.state!==void 0?e.state:null,e.updater=ea,t.stateNode=e,e._reactInternals=t,i&&(t=t.stateNode,t.__reactInternalMemoizedUnmaskedChildContext=r,t.__reactInternalMemoizedMaskedChildContext=s),e}function bh(t,e,n,i){t=e.state,typeof e.componentWillReceiveProps=="function"&&e.componentWillReceiveProps(n,i),typeof e.UNSAFE_componentWillReceiveProps=="function"&&e.UNSAFE_componentWillReceiveProps(n,i),e.state!==t&&ea.enqueueReplaceState(e,e.state,null)}function zl(t,e,n,i){var r=t.stateNode;r.props=n,r.state=t.memoizedState,r.refs={},Ku(t);var s=e.contextType;typeof s=="object"&&s!==null?r.context=st(s):(s=$e(e)?Bn:Pe.current,r.context=Ei(t,s)),r.state=t.memoizedState,s=e.getDerivedStateFromProps,typeof s=="function"&&(Nl(t,e,s,n),r.state=t.memoizedState),typeof e.getDerivedStateFromProps=="function"||typeof r.getSnapshotBeforeUpdate=="function"||typeof r.UNSAFE_componentWillMount!="function"&&typeof r.componentWillMount!="function"||(e=r.state,typeof r.componentWillMount=="function"&&r.componentWillMount(),typeof r.UNSAFE_componentWillMount=="function"&&r.UNSAFE_componentWillMount(),e!==r.state&&ea.enqueueReplaceState(r,r.state,null),Eo(t,n,r,i),r.state=t.memoizedState),typeof r.componentDidMount=="function"&&(t.flags|=4194308)}function Li(t,e){try{var n="",i=e;do n+=M0(i),i=i.return;while(i);var r=n}catch(s){r=`
 Error generating stack: `+s.message+`
-`+s.stack}return{value:t,source:e,stack:r,digest:null}}function $a(t,e,n){return{value:t,source:null,stack:n??null,digest:e??null}}function Fl(t,e){try{console.error(e.value)}catch(n){setTimeout(function(){throw n})}}var rv=typeof WeakMap=="function"?WeakMap:Map;function pg(t,e,n){n=jt(-1,n),n.tag=3,n.payload={element:null};var i=e.value;return n.callback=function(){Mo||(Mo=!0,ql=i),Fl(t,e)},n}function gg(t,e,n){n=jt(-1,n),n.tag=3;var i=t.type.getDerivedStateFromError;if(typeof i=="function"){var r=e.value;n.payload=function(){return i(r)},n.callback=function(){Fl(t,e)}}var s=t.stateNode;return s!==null&&typeof s.componentDidCatch=="function"&&(n.callback=function(){Fl(t,e),typeof i!="function"&&(cn===null?cn=new Set([this]):cn.add(this));var o=e.stack;this.componentDidCatch(e.value,{componentStack:o!==null?o:""})}),n}function Sh(t,e,n){var i=t.pingCache;if(i===null){i=t.pingCache=new rv;var r=new Set;i.set(e,r)}else r=i.get(e),r===void 0&&(r=new Set,i.set(e,r));r.has(n)||(r.add(n),t=vv.bind(null,t,e,n),e.then(t,t))}function Ch(t){do{var e;if((e=t.tag===13)&&(e=t.memoizedState,e=e!==null?e.dehydrated!==null:!0),e)return t;t=t.return}while(t!==null);return null}function Eh(t,e,n,i,r){return t.mode&1?(t.flags|=65536,t.lanes=r,t):(t===e?t.flags|=65536:(t.flags|=128,n.flags|=131072,n.flags&=-52805,n.tag===1&&(n.alternate===null?n.tag=17:(e=jt(-1,1),e.tag=2,un(n,e,1))),n.lanes|=1),t)}var sv=Ut.ReactCurrentOwner,ze=!1;function Le(t,e,n,i){e.child=t===null?Hp(e,null,n,i):Ti(e,t.child,n,i)}function Ph(t,e,n,i,r){n=n.render;var s=e.ref;return ki(e,r),i=Xu(t,e,n,i,s,r),n=Ju(),t!==null&&!ze?(e.updateQueue=t.updateQueue,e.flags&=-2053,t.lanes&=~r,$t(t,e,r)):(ee&&n&&Fu(e),e.flags|=1,Le(t,e,i,r),e.child)}function Th(t,e,n,i,r){if(t===null){var s=n.type;return typeof s=="function"&&!lc(s)&&s.defaultProps===void 0&&n.compare===null&&n.defaultProps===void 0?(e.tag=15,e.type=s,mg(t,e,s,i,r)):(t=so(n.type,null,i,e,e.mode,r),t.ref=e.ref,t.return=e,e.child=t)}if(s=t.child,!(t.lanes&r)){var o=s.memoizedProps;if(n=n.compare,n=n!==null?n:zr,n(o,i)&&t.ref===e.ref)return $t(t,e,r)}return e.flags|=1,t=dn(s,i),t.ref=e.ref,t.return=e,e.child=t}function mg(t,e,n,i,r){if(t!==null){var s=t.memoizedProps;if(zr(s,i)&&t.ref===e.ref)if(ze=!1,e.pendingProps=i=s,(t.lanes&r)!==0)t.flags&131072&&(ze=!0);else return e.lanes=t.lanes,$t(t,e,r)}return $l(t,e,n,i,r)}function yg(t,e,n){var i=e.pendingProps,r=i.children,s=t!==null?t.memoizedState:null;if(i.mode==="hidden")if(!(e.mode&1))e.memoizedState={baseLanes:0,cachePool:null,transitions:null},q(yi,He),He|=n;else{if(!(n&1073741824))return t=s!==null?s.baseLanes|n:n,e.lanes=e.childLanes=1073741824,e.memoizedState={baseLanes:t,cachePool:null,transitions:null},e.updateQueue=null,q(yi,He),He|=t,null;e.memoizedState={baseLanes:0,cachePool:null,transitions:null},i=s!==null?s.baseLanes:n,q(yi,He),He|=i}else s!==null?(i=s.baseLanes|n,e.memoizedState=null):i=n,q(yi,He),He|=i;return Le(t,e,r,n),e.child}function vg(t,e){var n=e.ref;(t===null&&n!==null||t!==null&&t.ref!==n)&&(e.flags|=512,e.flags|=2097152)}function $l(t,e,n,i,r){var s=$e(n)?Bn:Pe.current;return s=Ei(e,s),ki(e,r),n=Xu(t,e,n,i,s,r),i=Ju(),t!==null&&!ze?(e.updateQueue=t.updateQueue,e.flags&=-2053,t.lanes&=~r,$t(t,e,r)):(ee&&i&&Fu(e),e.flags|=1,Le(t,e,n,r),e.child)}function Oh(t,e,n,i,r){if($e(n)){var s=!0;xo(e)}else s=!1;if(ki(e,r),e.stateNode===null)no(t,e),fg(e,n,i),zl(e,n,i,r),i=!0;else if(t===null){var o=e.stateNode,a=e.memoizedProps;o.props=a;var l=o.context,u=n.contextType;typeof u=="object"&&u!==null?u=st(u):(u=$e(n)?Bn:Pe.current,u=Ei(e,u));var c=n.getDerivedStateFromProps,h=typeof c=="function"||typeof o.getSnapshotBeforeUpdate=="function";h||typeof o.UNSAFE_componentWillReceiveProps!="function"&&typeof o.componentWillReceiveProps!="function"||(a!==i||l!==u)&&bh(e,o,i,u),Kt=!1;var d=e.memoizedState;o.state=d,Eo(e,i,o,r),l=e.memoizedState,a!==i||d!==l||Fe.current||Kt?(typeof c=="function"&&(Nl(e,n,c,i),l=e.memoizedState),(a=Kt||kh(e,n,a,i,d,l,u))?(h||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"&&(e.flags|=4194308)):(typeof o.componentDidMount=="function"&&(e.flags|=4194308),e.memoizedProps=i,e.memoizedState=l),o.props=i,o.state=l,o.context=u,i=a):(typeof o.componentDidMount=="function"&&(e.flags|=4194308),i=!1)}else{o=e.stateNode,Kp(t,e),a=e.memoizedProps,u=e.type===e.elementType?a:ut(e.type,a),o.props=u,h=e.pendingProps,d=o.context,l=n.contextType,typeof l=="object"&&l!==null?l=st(l):(l=$e(n)?Bn:Pe.current,l=Ei(e,l));var f=n.getDerivedStateFromProps;(c=typeof f=="function"||typeof o.getSnapshotBeforeUpdate=="function")||typeof o.UNSAFE_componentWillReceiveProps!="function"&&typeof o.componentWillReceiveProps!="function"||(a!==h||d!==l)&&bh(e,o,i,l),Kt=!1,d=e.memoizedState,o.state=d,Eo(e,i,o,r);var m=e.memoizedState;a!==h||d!==m||Fe.current||Kt?(typeof f=="function"&&(Nl(e,n,f,i),m=e.memoizedState),(u=Kt||kh(e,n,u,i,d,m,l)||!1)?(c||typeof o.UNSAFE_componentWillUpdate!="function"&&typeof o.componentWillUpdate!="function"||(typeof o.componentWillUpdate=="function"&&o.componentWillUpdate(i,m,l),typeof o.UNSAFE_componentWillUpdate=="function"&&o.UNSAFE_componentWillUpdate(i,m,l)),typeof o.componentDidUpdate=="function"&&(e.flags|=4),typeof o.getSnapshotBeforeUpdate=="function"&&(e.flags|=1024)):(typeof o.componentDidUpdate!="function"||a===t.memoizedProps&&d===t.memoizedState||(e.flags|=4),typeof o.getSnapshotBeforeUpdate!="function"||a===t.memoizedProps&&d===t.memoizedState||(e.flags|=1024),e.memoizedProps=i,e.memoizedState=m),o.props=i,o.state=m,o.context=l,i=u):(typeof o.componentDidUpdate!="function"||a===t.memoizedProps&&d===t.memoizedState||(e.flags|=4),typeof o.getSnapshotBeforeUpdate!="function"||a===t.memoizedProps&&d===t.memoizedState||(e.flags|=1024),i=!1)}return Ul(t,e,n,i,s,r)}function Ul(t,e,n,i,r,s){vg(t,e);var o=(e.flags&128)!==0;if(!i&&!o)return r&&ph(e,n,!1),$t(t,e,s);i=e.stateNode,sv.current=e;var a=o&&typeof n.getDerivedStateFromError!="function"?null:i.render();return e.flags|=1,t!==null&&o?(e.child=Ti(e,t.child,null,s),e.child=Ti(e,null,a,s)):Le(t,e,a,s),e.memoizedState=i.state,r&&ph(e,n,!0),e.child}function _g(t){var e=t.stateNode;e.pendingContext?fh(t,e.pendingContext,e.pendingContext!==e.context):e.context&&fh(t,e.context,!1),Yu(t,e.containerInfo)}function Lh(t,e,n,i,r){return Pi(),Uu(r),e.flags|=256,Le(t,e,n,i),e.child}var Bl={dehydrated:null,treeContext:null,retryLane:0};function Vl(t){return{baseLanes:t,cachePool:null,transitions:null}}function wg(t,e,n){var i=e.pendingProps,r=te.current,s=!1,o=(e.flags&128)!==0,a;if((a=o)||(a=t!==null&&t.memoizedState===null?!1:(r&2)!==0),a?(s=!0,e.flags&=-129):(t===null||t.memoizedState!==null)&&(r|=1),q(te,r&1),t===null)return Dl(e),t=e.memoizedState,t!==null&&(t=t.dehydrated,t!==null)?(e.mode&1?t.data==="$!"?e.lanes=8:e.lanes=1073741824:e.lanes=1,null):(o=i.children,t=i.fallback,s?(i=e.mode,s=e.child,o={mode:"hidden",children:o},!(i&1)&&s!==null?(s.childLanes=0,s.pendingProps=o):s=ia(o,i,0,null),t=Fn(t,i,n,null),s.return=e,t.return=e,s.sibling=t,e.child=s,e.child.memoizedState=Vl(n),e.memoizedState=Bl,t):tc(e,o));if(r=t.memoizedState,r!==null&&(a=r.dehydrated,a!==null))return ov(t,e,o,i,a,r,n);if(s){s=i.fallback,o=e.mode,r=t.child,a=r.sibling;var l={mode:"hidden",children:i.children};return!(o&1)&&e.child!==r?(i=e.child,i.childLanes=0,i.pendingProps=l,e.deletions=null):(i=dn(r,l),i.subtreeFlags=r.subtreeFlags&14680064),a!==null?s=dn(a,s):(s=Fn(s,o,n,null),s.flags|=2),s.return=e,i.return=e,i.sibling=s,e.child=i,i=s,s=e.child,o=t.child.memoizedState,o=o===null?Vl(n):{baseLanes:o.baseLanes|n,cachePool:null,transitions:o.transitions},s.memoizedState=o,s.childLanes=t.childLanes&~n,e.memoizedState=Bl,i}return s=t.child,t=s.sibling,i=dn(s,{mode:"visible",children:i.children}),!(e.mode&1)&&(i.lanes=n),i.return=e,i.sibling=null,t!==null&&(n=e.deletions,n===null?(e.deletions=[t],e.flags|=16):n.push(t)),e.child=i,e.memoizedState=null,i}function tc(t,e){return e=ia({mode:"visible",children:e},t.mode,0,null),e.return=t,t.child=e}function Cs(t,e,n,i){return i!==null&&Uu(i),Ti(e,t.child,null,n),t=tc(e,e.pendingProps.children),t.flags|=2,e.memoizedState=null,t}function ov(t,e,n,i,r,s,o){if(n)return e.flags&256?(e.flags&=-257,i=$a(Error(C(422))),Cs(t,e,o,i)):e.memoizedState!==null?(e.child=t.child,e.flags|=128,null):(s=i.fallback,r=e.mode,i=ia({mode:"visible",children:i.children},r,0,null),s=Fn(s,r,o,null),s.flags|=2,i.return=e,s.return=e,i.sibling=s,e.child=i,e.mode&1&&Ti(e,t.child,null,o),e.child.memoizedState=Vl(o),e.memoizedState=Bl,s);if(!(e.mode&1))return Cs(t,e,o,null);if(r.data==="$!"){if(i=r.nextSibling&&r.nextSibling.dataset,i)var a=i.dgst;return i=a,s=Error(C(419)),i=$a(s,i,void 0),Cs(t,e,o,i)}if(a=(o&t.childLanes)!==0,ze||a){if(i=_e,i!==null){switch(o&-o){case 4:r=2;break;case 16:r=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:r=32;break;case 536870912:r=268435456;break;default:r=0}r=r&(i.suspendedLanes|o)?0:r,r!==0&&r!==s.retryLane&&(s.retryLane=r,Ft(t,r),gt(i,t,r,-1))}return ac(),i=$a(Error(C(421))),Cs(t,e,o,i)}return r.data==="$?"?(e.flags|=128,e.child=t.child,e=_v.bind(null,t),r._reactRetry=e,null):(t=s.treeContext,We=ln(r.nextSibling),Ye=e,ee=!0,ft=null,t!==null&&(et[tt++]=It,et[tt++]=At,et[tt++]=Vn,It=t.id,At=t.overflow,Vn=e),e=tc(e,i.children),e.flags|=4096,e)}function Mh(t,e,n){t.lanes|=e;var i=t.alternate;i!==null&&(i.lanes|=e),jl(t.return,e,n)}function Ua(t,e,n,i,r){var s=t.memoizedState;s===null?t.memoizedState={isBackwards:e,rendering:null,renderingStartTime:0,last:i,tail:n,tailMode:r}:(s.isBackwards=e,s.rendering=null,s.renderingStartTime=0,s.last=i,s.tail=n,s.tailMode=r)}function xg(t,e,n){var i=e.pendingProps,r=i.revealOrder,s=i.tail;if(Le(t,e,i.children,n),i=te.current,i&2)i=i&1|2,e.flags|=128;else{if(t!==null&&t.flags&128)e:for(t=e.child;t!==null;){if(t.tag===13)t.memoizedState!==null&&Mh(t,n,e);else if(t.tag===19)Mh(t,n,e);else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break e;for(;t.sibling===null;){if(t.return===null||t.return===e)break e;t=t.return}t.sibling.return=t.return,t=t.sibling}i&=1}if(q(te,i),!(e.mode&1))e.memoizedState=null;else switch(r){case"forwards":for(n=e.child,r=null;n!==null;)t=n.alternate,t!==null&&Po(t)===null&&(r=n),n=n.sibling;n=r,n===null?(r=e.child,e.child=null):(r=n.sibling,n.sibling=null),Ua(e,!1,r,n,s);break;case"backwards":for(n=null,r=e.child,e.child=null;r!==null;){if(t=r.alternate,t!==null&&Po(t)===null){e.child=r;break}t=r.sibling,r.sibling=n,n=r,r=t}Ua(e,!0,n,null,s);break;case"together":Ua(e,!1,null,null,void 0);break;default:e.memoizedState=null}return e.child}function no(t,e){!(e.mode&1)&&t!==null&&(t.alternate=null,e.alternate=null,e.flags|=2)}function $t(t,e,n){if(t!==null&&(e.dependencies=t.dependencies),Wn|=e.lanes,!(n&e.childLanes))return null;if(t!==null&&e.child!==t.child)throw Error(C(153));if(e.child!==null){for(t=e.child,n=dn(t,t.pendingProps),e.child=n,n.return=e;t.sibling!==null;)t=t.sibling,n=n.sibling=dn(t,t.pendingProps),n.return=e;n.sibling=null}return e.child}function av(t,e,n){switch(e.tag){case 3:_g(e),Pi();break;case 5:Yp(e);break;case 1:$e(e.type)&&xo(e);break;case 4:Yu(e,e.stateNode.containerInfo);break;case 10:var i=e.type._context,r=e.memoizedProps.value;q(So,i._currentValue),i._currentValue=r;break;case 13:if(i=e.memoizedState,i!==null)return i.dehydrated!==null?(q(te,te.current&1),e.flags|=128,null):n&e.child.childLanes?wg(t,e,n):(q(te,te.current&1),t=$t(t,e,n),t!==null?t.sibling:null);q(te,te.current&1);break;case 19:if(i=(n&e.childLanes)!==0,t.flags&128){if(i)return xg(t,e,n);e.flags|=128}if(r=e.memoizedState,r!==null&&(r.rendering=null,r.tail=null,r.lastEffect=null),q(te,te.current),i)break;return null;case 22:case 23:return e.lanes=0,yg(t,e,n)}return $t(t,e,n)}var kg,Hl,bg,Sg;kg=function(t,e){for(var n=e.child;n!==null;){if(n.tag===5||n.tag===6)t.appendChild(n.stateNode);else if(n.tag!==4&&n.child!==null){n.child.return=n,n=n.child;continue}if(n===e)break;for(;n.sibling===null;){if(n.return===null||n.return===e)return;n=n.return}n.sibling.return=n.return,n=n.sibling}};Hl=function(){};bg=function(t,e,n,i){var r=t.memoizedProps;if(r!==i){t=e.stateNode,jn(Ct.current);var s=null;switch(n){case"input":r=dl(t,r),i=dl(t,i),s=[];break;case"select":r=ie({},r,{value:void 0}),i=ie({},i,{value:void 0}),s=[];break;case"textarea":r=gl(t,r),i=gl(t,i),s=[];break;default:typeof r.onClick!="function"&&typeof i.onClick=="function"&&(t.onclick=_o)}yl(n,i);var o;n=null;for(u in r)if(!i.hasOwnProperty(u)&&r.hasOwnProperty(u)&&r[u]!=null)if(u==="style"){var a=r[u];for(o in a)a.hasOwnProperty(o)&&(n||(n={}),n[o]="")}else u!=="dangerouslySetInnerHTML"&&u!=="children"&&u!=="suppressContentEditableWarning"&&u!=="suppressHydrationWarning"&&u!=="autoFocus"&&(Mr.hasOwnProperty(u)?s||(s=[]):(s=s||[]).push(u,null));for(u in i){var l=i[u];if(a=r!=null?r[u]:void 0,i.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"&&(Mr.hasOwnProperty(u)?(l!=null&&u==="onScroll"&&X("scroll",t),s||a===l||(s=[])):(s=s||[]).push(u,l))}n&&(s=s||[]).push("style",n);var u=s;(e.updateQueue=u)&&(e.flags|=4)}};Sg=function(t,e,n,i){n!==i&&(e.flags|=4)};function Qi(t,e){if(!ee)switch(t.tailMode){case"hidden":e=t.tail;for(var n=null;e!==null;)e.alternate!==null&&(n=e),e=e.sibling;n===null?t.tail=null:n.sibling=null;break;case"collapsed":n=t.tail;for(var i=null;n!==null;)n.alternate!==null&&(i=n),n=n.sibling;i===null?e||t.tail===null?t.tail=null:t.tail.sibling=null:i.sibling=null}}function Se(t){var e=t.alternate!==null&&t.alternate.child===t.child,n=0,i=0;if(e)for(var r=t.child;r!==null;)n|=r.lanes|r.childLanes,i|=r.subtreeFlags&14680064,i|=r.flags&14680064,r.return=t,r=r.sibling;else for(r=t.child;r!==null;)n|=r.lanes|r.childLanes,i|=r.subtreeFlags,i|=r.flags,r.return=t,r=r.sibling;return t.subtreeFlags|=i,t.childLanes=n,e}function lv(t,e,n){var i=e.pendingProps;switch($u(e),e.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Se(e),null;case 1:return $e(e.type)&&wo(),Se(e),null;case 3:return i=e.stateNode,Oi(),Z(Fe),Z(Pe),qu(),i.pendingContext&&(i.context=i.pendingContext,i.pendingContext=null),(t===null||t.child===null)&&(bs(e)?e.flags|=4:t===null||t.memoizedState.isDehydrated&&!(e.flags&256)||(e.flags|=1024,ft!==null&&(Jl(ft),ft=null))),Hl(t,e),Se(e),null;case 5:Gu(e);var r=jn(Vr.current);if(n=e.type,t!==null&&e.stateNode!=null)bg(t,e,n,i,r),t.ref!==e.ref&&(e.flags|=512,e.flags|=2097152);else{if(!i){if(e.stateNode===null)throw Error(C(166));return Se(e),null}if(t=jn(Ct.current),bs(e)){i=e.stateNode,n=e.type;var s=e.memoizedProps;switch(i[bt]=e,i[Ur]=s,t=(e.mode&1)!==0,n){case"dialog":X("cancel",i),X("close",i);break;case"iframe":case"object":case"embed":X("load",i);break;case"video":case"audio":for(r=0;r<ar.length;r++)X(ar[r],i);break;case"source":X("error",i);break;case"img":case"image":case"link":X("error",i),X("load",i);break;case"details":X("toggle",i);break;case"input":$c(i,s),X("invalid",i);break;case"select":i._wrapperState={wasMultiple:!!s.multiple},X("invalid",i);break;case"textarea":Bc(i,s),X("invalid",i)}yl(n,s),r=null;for(var o in s)if(s.hasOwnProperty(o)){var a=s[o];o==="children"?typeof a=="string"?i.textContent!==a&&(s.suppressHydrationWarning!==!0&&ks(i.textContent,a,t),r=["children",a]):typeof a=="number"&&i.textContent!==""+a&&(s.suppressHydrationWarning!==!0&&ks(i.textContent,a,t),r=["children",""+a]):Mr.hasOwnProperty(o)&&a!=null&&o==="onScroll"&&X("scroll",i)}switch(n){case"input":ps(i),Uc(i,s,!0);break;case"textarea":ps(i),Vc(i);break;case"select":case"option":break;default:typeof s.onClick=="function"&&(i.onclick=_o)}i=r,e.updateQueue=i,i!==null&&(e.flags|=4)}else{o=r.nodeType===9?r:r.ownerDocument,t==="http://www.w3.org/1999/xhtml"&&(t=Jf(n)),t==="http://www.w3.org/1999/xhtml"?n==="script"?(t=o.createElement("div"),t.innerHTML="<script><\/script>",t=t.removeChild(t.firstChild)):typeof i.is=="string"?t=o.createElement(n,{is:i.is}):(t=o.createElement(n),n==="select"&&(o=t,i.multiple?o.multiple=!0:i.size&&(o.size=i.size))):t=o.createElementNS(t,n),t[bt]=e,t[Ur]=i,kg(t,e,!1,!1),e.stateNode=t;e:{switch(o=vl(n,i),n){case"dialog":X("cancel",t),X("close",t),r=i;break;case"iframe":case"object":case"embed":X("load",t),r=i;break;case"video":case"audio":for(r=0;r<ar.length;r++)X(ar[r],t);r=i;break;case"source":X("error",t),r=i;break;case"img":case"image":case"link":X("error",t),X("load",t),r=i;break;case"details":X("toggle",t),r=i;break;case"input":$c(t,i),r=dl(t,i),X("invalid",t);break;case"option":r=i;break;case"select":t._wrapperState={wasMultiple:!!i.multiple},r=ie({},i,{value:void 0}),X("invalid",t);break;case"textarea":Bc(t,i),r=gl(t,i),X("invalid",t);break;default:r=i}yl(n,r),a=r;for(s in a)if(a.hasOwnProperty(s)){var l=a[s];s==="style"?tp(t,l):s==="dangerouslySetInnerHTML"?(l=l?l.__html:void 0,l!=null&&Zf(t,l)):s==="children"?typeof l=="string"?(n!=="textarea"||l!=="")&&Rr(t,l):typeof l=="number"&&Rr(t,""+l):s!=="suppressContentEditableWarning"&&s!=="suppressHydrationWarning"&&s!=="autoFocus"&&(Mr.hasOwnProperty(s)?l!=null&&s==="onScroll"&&X("scroll",t):l!=null&&Cu(t,s,l,o))}switch(n){case"input":ps(t),Uc(t,i,!1);break;case"textarea":ps(t),Vc(t);break;case"option":i.value!=null&&t.setAttribute("value",""+pn(i.value));break;case"select":t.multiple=!!i.multiple,s=i.value,s!=null?vi(t,!!i.multiple,s,!1):i.defaultValue!=null&&vi(t,!!i.multiple,i.defaultValue,!0);break;default:typeof r.onClick=="function"&&(t.onclick=_o)}switch(n){case"button":case"input":case"select":case"textarea":i=!!i.autoFocus;break e;case"img":i=!0;break e;default:i=!1}}i&&(e.flags|=4)}e.ref!==null&&(e.flags|=512,e.flags|=2097152)}return Se(e),null;case 6:if(t&&e.stateNode!=null)Sg(t,e,t.memoizedProps,i);else{if(typeof i!="string"&&e.stateNode===null)throw Error(C(166));if(n=jn(Vr.current),jn(Ct.current),bs(e)){if(i=e.stateNode,n=e.memoizedProps,i[bt]=e,(s=i.nodeValue!==n)&&(t=Ye,t!==null))switch(t.tag){case 3:ks(i.nodeValue,n,(t.mode&1)!==0);break;case 5:t.memoizedProps.suppressHydrationWarning!==!0&&ks(i.nodeValue,n,(t.mode&1)!==0)}s&&(e.flags|=4)}else i=(n.nodeType===9?n:n.ownerDocument).createTextNode(i),i[bt]=e,e.stateNode=i}return Se(e),null;case 13:if(Z(te),i=e.memoizedState,t===null||t.memoizedState!==null&&t.memoizedState.dehydrated!==null){if(ee&&We!==null&&e.mode&1&&!(e.flags&128))Bp(),Pi(),e.flags|=98560,s=!1;else if(s=bs(e),i!==null&&i.dehydrated!==null){if(t===null){if(!s)throw Error(C(318));if(s=e.memoizedState,s=s!==null?s.dehydrated:null,!s)throw Error(C(317));s[bt]=e}else Pi(),!(e.flags&128)&&(e.memoizedState=null),e.flags|=4;Se(e),s=!1}else ft!==null&&(Jl(ft),ft=null),s=!0;if(!s)return e.flags&65536?e:null}return e.flags&128?(e.lanes=n,e):(i=i!==null,i!==(t!==null&&t.memoizedState!==null)&&i&&(e.child.flags|=8192,e.mode&1&&(t===null||te.current&1?pe===0&&(pe=3):ac())),e.updateQueue!==null&&(e.flags|=4),Se(e),null);case 4:return Oi(),Hl(t,e),t===null&&Fr(e.stateNode.containerInfo),Se(e),null;case 10:return Hu(e.type._context),Se(e),null;case 17:return $e(e.type)&&wo(),Se(e),null;case 19:if(Z(te),s=e.memoizedState,s===null)return Se(e),null;if(i=(e.flags&128)!==0,o=s.rendering,o===null)if(i)Qi(s,!1);else{if(pe!==0||t!==null&&t.flags&128)for(t=e.child;t!==null;){if(o=Po(t),o!==null){for(e.flags|=128,Qi(s,!1),i=o.updateQueue,i!==null&&(e.updateQueue=i,e.flags|=4),e.subtreeFlags=0,i=n,n=e.child;n!==null;)s=n,t=i,s.flags&=14680066,o=s.alternate,o===null?(s.childLanes=0,s.lanes=t,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,t=o.dependencies,s.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext}),n=n.sibling;return q(te,te.current&1|2),e.child}t=t.sibling}s.tail!==null&&le()>Mi&&(e.flags|=128,i=!0,Qi(s,!1),e.lanes=4194304)}else{if(!i)if(t=Po(o),t!==null){if(e.flags|=128,i=!0,n=t.updateQueue,n!==null&&(e.updateQueue=n,e.flags|=4),Qi(s,!0),s.tail===null&&s.tailMode==="hidden"&&!o.alternate&&!ee)return Se(e),null}else 2*le()-s.renderingStartTime>Mi&&n!==1073741824&&(e.flags|=128,i=!0,Qi(s,!1),e.lanes=4194304);s.isBackwards?(o.sibling=e.child,e.child=o):(n=s.last,n!==null?n.sibling=o:e.child=o,s.last=o)}return s.tail!==null?(e=s.tail,s.rendering=e,s.tail=e.sibling,s.renderingStartTime=le(),e.sibling=null,n=te.current,q(te,i?n&1|2:n&1),e):(Se(e),null);case 22:case 23:return oc(),i=e.memoizedState!==null,t!==null&&t.memoizedState!==null!==i&&(e.flags|=8192),i&&e.mode&1?He&1073741824&&(Se(e),e.subtreeFlags&6&&(e.flags|=8192)):Se(e),null;case 24:return null;case 25:return null}throw Error(C(156,e.tag))}function uv(t,e){switch($u(e),e.tag){case 1:return $e(e.type)&&wo(),t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 3:return Oi(),Z(Fe),Z(Pe),qu(),t=e.flags,t&65536&&!(t&128)?(e.flags=t&-65537|128,e):null;case 5:return Gu(e),null;case 13:if(Z(te),t=e.memoizedState,t!==null&&t.dehydrated!==null){if(e.alternate===null)throw Error(C(340));Pi()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 19:return Z(te),null;case 4:return Oi(),null;case 10:return Hu(e.type._context),null;case 22:case 23:return oc(),null;case 24:return null;default:return null}}var Es=!1,Ee=!1,cv=typeof WeakSet=="function"?WeakSet:Set,T=null;function mi(t,e){var n=t.ref;if(n!==null)if(typeof n=="function")try{n(null)}catch(i){se(t,e,i)}else n.current=null}function Wl(t,e,n){try{n()}catch(i){se(t,e,i)}}var Rh=!1;function hv(t,e){if(Tl=mo,t=Op(),zu(t)){if("selectionStart"in t)var n={start:t.selectionStart,end:t.selectionEnd};else e:{n=(n=t.ownerDocument)&&n.defaultView||window;var i=n.getSelection&&n.getSelection();if(i&&i.rangeCount!==0){n=i.anchorNode;var r=i.anchorOffset,s=i.focusNode;i=i.focusOffset;try{n.nodeType,s.nodeType}catch{n=null;break e}var o=0,a=-1,l=-1,u=0,c=0,h=t,d=null;t:for(;;){for(var f;h!==n||r!==0&&h.nodeType!==3||(a=o+r),h!==s||i!==0&&h.nodeType!==3||(l=o+i),h.nodeType===3&&(o+=h.nodeValue.length),(f=h.firstChild)!==null;)d=h,h=f;for(;;){if(h===t)break t;if(d===n&&++u===r&&(a=o),d===s&&++c===i&&(l=o),(f=h.nextSibling)!==null)break;h=d,d=h.parentNode}h=f}n=a===-1||l===-1?null:{start:a,end:l}}else n=null}n=n||{start:0,end:0}}else n=null;for(Ol={focusedElem:t,selectionRange:n},mo=!1,T=e;T!==null;)if(e=T,t=e.child,(e.subtreeFlags&1028)!==0&&t!==null)t.return=e,T=t;else for(;T!==null;){e=T;try{var m=e.alternate;if(e.flags&1024)switch(e.tag){case 0:case 11:case 15:break;case 1:if(m!==null){var y=m.memoizedProps,v=m.memoizedState,p=e.stateNode,g=p.getSnapshotBeforeUpdate(e.elementType===e.type?y:ut(e.type,y),v);p.__reactInternalSnapshotBeforeUpdate=g}break;case 3:var _=e.stateNode.containerInfo;_.nodeType===1?_.textContent="":_.nodeType===9&&_.documentElement&&_.removeChild(_.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(C(163))}}catch(w){se(e,e.return,w)}if(t=e.sibling,t!==null){t.return=e.return,T=t;break}T=e.return}return m=Rh,Rh=!1,m}function _r(t,e,n){var i=e.updateQueue;if(i=i!==null?i.lastEffect:null,i!==null){var r=i=i.next;do{if((r.tag&t)===t){var s=r.destroy;r.destroy=void 0,s!==void 0&&Wl(e,n,s)}r=r.next}while(r!==i)}}function ta(t,e){if(e=e.updateQueue,e=e!==null?e.lastEffect:null,e!==null){var n=e=e.next;do{if((n.tag&t)===t){var i=n.create;n.destroy=i()}n=n.next}while(n!==e)}}function Kl(t){var e=t.ref;if(e!==null){var n=t.stateNode;switch(t.tag){case 5:t=n;break;default:t=n}typeof e=="function"?e(t):e.current=t}}function Cg(t){var e=t.alternate;e!==null&&(t.alternate=null,Cg(e)),t.child=null,t.deletions=null,t.sibling=null,t.tag===5&&(e=t.stateNode,e!==null&&(delete e[bt],delete e[Ur],delete e[Rl],delete e[Yy],delete e[Gy])),t.stateNode=null,t.return=null,t.dependencies=null,t.memoizedProps=null,t.memoizedState=null,t.pendingProps=null,t.stateNode=null,t.updateQueue=null}function Eg(t){return t.tag===5||t.tag===3||t.tag===4}function Ih(t){e:for(;;){for(;t.sibling===null;){if(t.return===null||Eg(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.flags&2||t.child===null||t.tag===4)continue e;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function Yl(t,e,n){var i=t.tag;if(i===5||i===6)t=t.stateNode,e?n.nodeType===8?n.parentNode.insertBefore(t,e):n.insertBefore(t,e):(n.nodeType===8?(e=n.parentNode,e.insertBefore(t,n)):(e=n,e.appendChild(t)),n=n._reactRootContainer,n!=null||e.onclick!==null||(e.onclick=_o));else if(i!==4&&(t=t.child,t!==null))for(Yl(t,e,n),t=t.sibling;t!==null;)Yl(t,e,n),t=t.sibling}function Gl(t,e,n){var i=t.tag;if(i===5||i===6)t=t.stateNode,e?n.insertBefore(t,e):n.appendChild(t);else if(i!==4&&(t=t.child,t!==null))for(Gl(t,e,n),t=t.sibling;t!==null;)Gl(t,e,n),t=t.sibling}var we=null,ct=!1;function Bt(t,e,n){for(n=n.child;n!==null;)Pg(t,e,n),n=n.sibling}function Pg(t,e,n){if(St&&typeof St.onCommitFiberUnmount=="function")try{St.onCommitFiberUnmount(Yo,n)}catch{}switch(n.tag){case 5:Ee||mi(n,e);case 6:var i=we,r=ct;we=null,Bt(t,e,n),we=i,ct=r,we!==null&&(ct?(t=we,n=n.stateNode,t.nodeType===8?t.parentNode.removeChild(n):t.removeChild(n)):we.removeChild(n.stateNode));break;case 18:we!==null&&(ct?(t=we,n=n.stateNode,t.nodeType===8?Aa(t.parentNode,n):t.nodeType===1&&Aa(t,n),jr(t)):Aa(we,n.stateNode));break;case 4:i=we,r=ct,we=n.stateNode.containerInfo,ct=!0,Bt(t,e,n),we=i,ct=r;break;case 0:case 11:case 14:case 15:if(!Ee&&(i=n.updateQueue,i!==null&&(i=i.lastEffect,i!==null))){r=i=i.next;do{var s=r,o=s.destroy;s=s.tag,o!==void 0&&(s&2||s&4)&&Wl(n,e,o),r=r.next}while(r!==i)}Bt(t,e,n);break;case 1:if(!Ee&&(mi(n,e),i=n.stateNode,typeof i.componentWillUnmount=="function"))try{i.props=n.memoizedProps,i.state=n.memoizedState,i.componentWillUnmount()}catch(a){se(n,e,a)}Bt(t,e,n);break;case 21:Bt(t,e,n);break;case 22:n.mode&1?(Ee=(i=Ee)||n.memoizedState!==null,Bt(t,e,n),Ee=i):Bt(t,e,n);break;default:Bt(t,e,n)}}function Ah(t){var e=t.updateQueue;if(e!==null){t.updateQueue=null;var n=t.stateNode;n===null&&(n=t.stateNode=new cv),e.forEach(function(i){var r=wv.bind(null,t,i);n.has(i)||(n.add(i),i.then(r,r))})}}function at(t,e){var n=e.deletions;if(n!==null)for(var i=0;i<n.length;i++){var r=n[i];try{var s=t,o=e,a=o;e:for(;a!==null;){switch(a.tag){case 5:we=a.stateNode,ct=!1;break e;case 3:we=a.stateNode.containerInfo,ct=!0;break e;case 4:we=a.stateNode.containerInfo,ct=!0;break e}a=a.return}if(we===null)throw Error(C(160));Pg(s,o,r),we=null,ct=!1;var l=r.alternate;l!==null&&(l.return=null),r.return=null}catch(u){se(r,e,u)}}if(e.subtreeFlags&12854)for(e=e.child;e!==null;)Tg(e,t),e=e.sibling}function Tg(t,e){var n=t.alternate,i=t.flags;switch(t.tag){case 0:case 11:case 14:case 15:if(at(e,t),_t(t),i&4){try{_r(3,t,t.return),ta(3,t)}catch(y){se(t,t.return,y)}try{_r(5,t,t.return)}catch(y){se(t,t.return,y)}}break;case 1:at(e,t),_t(t),i&512&&n!==null&&mi(n,n.return);break;case 5:if(at(e,t),_t(t),i&512&&n!==null&&mi(n,n.return),t.flags&32){var r=t.stateNode;try{Rr(r,"")}catch(y){se(t,t.return,y)}}if(i&4&&(r=t.stateNode,r!=null)){var s=t.memoizedProps,o=n!==null?n.memoizedProps:s,a=t.type,l=t.updateQueue;if(t.updateQueue=null,l!==null)try{a==="input"&&s.type==="radio"&&s.name!=null&&Qf(r,s),vl(a,o);var u=vl(a,s);for(o=0;o<l.length;o+=2){var c=l[o],h=l[o+1];c==="style"?tp(r,h):c==="dangerouslySetInnerHTML"?Zf(r,h):c==="children"?Rr(r,h):Cu(r,c,h,u)}switch(a){case"input":fl(r,s);break;case"textarea":Xf(r,s);break;case"select":var d=r._wrapperState.wasMultiple;r._wrapperState.wasMultiple=!!s.multiple;var f=s.value;f!=null?vi(r,!!s.multiple,f,!1):d!==!!s.multiple&&(s.defaultValue!=null?vi(r,!!s.multiple,s.defaultValue,!0):vi(r,!!s.multiple,s.multiple?[]:"",!1))}r[Ur]=s}catch(y){se(t,t.return,y)}}break;case 6:if(at(e,t),_t(t),i&4){if(t.stateNode===null)throw Error(C(162));r=t.stateNode,s=t.memoizedProps;try{r.nodeValue=s}catch(y){se(t,t.return,y)}}break;case 3:if(at(e,t),_t(t),i&4&&n!==null&&n.memoizedState.isDehydrated)try{jr(e.containerInfo)}catch(y){se(t,t.return,y)}break;case 4:at(e,t),_t(t);break;case 13:at(e,t),_t(t),r=t.child,r.flags&8192&&(s=r.memoizedState!==null,r.stateNode.isHidden=s,!s||r.alternate!==null&&r.alternate.memoizedState!==null||(rc=le())),i&4&&Ah(t);break;case 22:if(c=n!==null&&n.memoizedState!==null,t.mode&1?(Ee=(u=Ee)||c,at(e,t),Ee=u):at(e,t),_t(t),i&8192){if(u=t.memoizedState!==null,(t.stateNode.isHidden=u)&&!c&&t.mode&1)for(T=t,c=t.child;c!==null;){for(h=T=c;T!==null;){switch(d=T,f=d.child,d.tag){case 0:case 11:case 14:case 15:_r(4,d,d.return);break;case 1:mi(d,d.return);var m=d.stateNode;if(typeof m.componentWillUnmount=="function"){i=d,n=d.return;try{e=i,m.props=e.memoizedProps,m.state=e.memoizedState,m.componentWillUnmount()}catch(y){se(i,n,y)}}break;case 5:mi(d,d.return);break;case 22:if(d.memoizedState!==null){jh(h);continue}}f!==null?(f.return=d,T=f):jh(h)}c=c.sibling}e:for(c=null,h=t;;){if(h.tag===5){if(c===null){c=h;try{r=h.stateNode,u?(s=r.style,typeof s.setProperty=="function"?s.setProperty("display","none","important"):s.display="none"):(a=h.stateNode,l=h.memoizedProps.style,o=l!=null&&l.hasOwnProperty("display")?l.display:null,a.style.display=ep("display",o))}catch(y){se(t,t.return,y)}}}else if(h.tag===6){if(c===null)try{h.stateNode.nodeValue=u?"":h.memoizedProps}catch(y){se(t,t.return,y)}}else if((h.tag!==22&&h.tag!==23||h.memoizedState===null||h===t)&&h.child!==null){h.child.return=h,h=h.child;continue}if(h===t)break e;for(;h.sibling===null;){if(h.return===null||h.return===t)break e;c===h&&(c=null),h=h.return}c===h&&(c=null),h.sibling.return=h.return,h=h.sibling}}break;case 19:at(e,t),_t(t),i&4&&Ah(t);break;case 21:break;default:at(e,t),_t(t)}}function _t(t){var e=t.flags;if(e&2){try{e:{for(var n=t.return;n!==null;){if(Eg(n)){var i=n;break e}n=n.return}throw Error(C(160))}switch(i.tag){case 5:var r=i.stateNode;i.flags&32&&(Rr(r,""),i.flags&=-33);var s=Ih(t);Gl(t,s,r);break;case 3:case 4:var o=i.stateNode.containerInfo,a=Ih(t);Yl(t,a,o);break;default:throw Error(C(161))}}catch(l){se(t,t.return,l)}t.flags&=-3}e&4096&&(t.flags&=-4097)}function dv(t,e,n){T=t,Og(t)}function Og(t,e,n){for(var i=(t.mode&1)!==0;T!==null;){var r=T,s=r.child;if(r.tag===22&&i){var o=r.memoizedState!==null||Es;if(!o){var a=r.alternate,l=a!==null&&a.memoizedState!==null||Ee;a=Es;var u=Ee;if(Es=o,(Ee=l)&&!u)for(T=r;T!==null;)o=T,l=o.child,o.tag===22&&o.memoizedState!==null?Nh(r):l!==null?(l.return=o,T=l):Nh(r);for(;s!==null;)T=s,Og(s),s=s.sibling;T=r,Es=a,Ee=u}Dh(t)}else r.subtreeFlags&8772&&s!==null?(s.return=r,T=s):Dh(t)}}function Dh(t){for(;T!==null;){var e=T;if(e.flags&8772){var n=e.alternate;try{if(e.flags&8772)switch(e.tag){case 0:case 11:case 15:Ee||ta(5,e);break;case 1:var i=e.stateNode;if(e.flags&4&&!Ee)if(n===null)i.componentDidMount();else{var r=e.elementType===e.type?n.memoizedProps:ut(e.type,n.memoizedProps);i.componentDidUpdate(r,n.memoizedState,i.__reactInternalSnapshotBeforeUpdate)}var s=e.updateQueue;s!==null&&_h(e,s,i);break;case 3:var o=e.updateQueue;if(o!==null){if(n=null,e.child!==null)switch(e.child.tag){case 5:n=e.child.stateNode;break;case 1:n=e.child.stateNode}_h(e,o,n)}break;case 5:var a=e.stateNode;if(n===null&&e.flags&4){n=a;var l=e.memoizedProps;switch(e.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(e.memoizedState===null){var u=e.alternate;if(u!==null){var c=u.memoizedState;if(c!==null){var h=c.dehydrated;h!==null&&jr(h)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(C(163))}Ee||e.flags&512&&Kl(e)}catch(d){se(e,e.return,d)}}if(e===t){T=null;break}if(n=e.sibling,n!==null){n.return=e.return,T=n;break}T=e.return}}function jh(t){for(;T!==null;){var e=T;if(e===t){T=null;break}var n=e.sibling;if(n!==null){n.return=e.return,T=n;break}T=e.return}}function Nh(t){for(;T!==null;){var e=T;try{switch(e.tag){case 0:case 11:case 15:var n=e.return;try{ta(4,e)}catch(l){se(e,n,l)}break;case 1:var i=e.stateNode;if(typeof i.componentDidMount=="function"){var r=e.return;try{i.componentDidMount()}catch(l){se(e,r,l)}}var s=e.return;try{Kl(e)}catch(l){se(e,s,l)}break;case 5:var o=e.return;try{Kl(e)}catch(l){se(e,o,l)}}}catch(l){se(e,e.return,l)}if(e===t){T=null;break}var a=e.sibling;if(a!==null){a.return=e.return,T=a;break}T=e.return}}var fv=Math.ceil,Lo=Ut.ReactCurrentDispatcher,nc=Ut.ReactCurrentOwner,rt=Ut.ReactCurrentBatchConfig,F=0,_e=null,he=null,xe=0,He=0,yi=_n(0),pe=0,Yr=null,Wn=0,na=0,ic=0,wr=null,je=null,rc=0,Mi=1/0,Lt=null,Mo=!1,ql=null,cn=null,Ps=!1,Jt=null,Ro=0,xr=0,Ql=null,io=-1,ro=0;function Re(){return F&6?le():io!==-1?io:io=le()}function hn(t){return t.mode&1?F&2&&xe!==0?xe&-xe:Qy.transition!==null?(ro===0&&(ro=fp()),ro):(t=H,t!==0||(t=window.event,t=t===void 0?16:wp(t.type)),t):1}function gt(t,e,n,i){if(50<xr)throw xr=0,Ql=null,Error(C(185));rs(t,n,i),(!(F&2)||t!==_e)&&(t===_e&&(!(F&2)&&(na|=n),pe===4&&qt(t,xe)),Ue(t,i),n===1&&F===0&&!(e.mode&1)&&(Mi=le()+500,Jo&&wn()))}function Ue(t,e){var n=t.callbackNode;Q0(t,e);var i=go(t,t===_e?xe:0);if(i===0)n!==null&&Kc(n),t.callbackNode=null,t.callbackPriority=0;else if(e=i&-i,t.callbackPriority!==e){if(n!=null&&Kc(n),e===1)t.tag===0?qy(zh.bind(null,t)):Fp(zh.bind(null,t)),Wy(function(){!(F&6)&&wn()}),n=null;else{switch(pp(i)){case 1:n=Lu;break;case 4:n=hp;break;case 16:n=po;break;case 536870912:n=dp;break;default:n=po}n=Ng(n,Lg.bind(null,t))}t.callbackPriority=e,t.callbackNode=n}}function Lg(t,e){if(io=-1,ro=0,F&6)throw Error(C(327));var n=t.callbackNode;if(bi()&&t.callbackNode!==n)return null;var i=go(t,t===_e?xe:0);if(i===0)return null;if(i&30||i&t.expiredLanes||e)e=Io(t,i);else{e=i;var r=F;F|=2;var s=Rg();(_e!==t||xe!==e)&&(Lt=null,Mi=le()+500,zn(t,e));do try{mv();break}catch(a){Mg(t,a)}while(!0);Vu(),Lo.current=s,F=r,he!==null?e=0:(_e=null,xe=0,e=pe)}if(e!==0){if(e===2&&(r=bl(t),r!==0&&(i=r,e=Xl(t,r))),e===1)throw n=Yr,zn(t,0),qt(t,i),Ue(t,le()),n;if(e===6)qt(t,i);else{if(r=t.current.alternate,!(i&30)&&!pv(r)&&(e=Io(t,i),e===2&&(s=bl(t),s!==0&&(i=s,e=Xl(t,s))),e===1))throw n=Yr,zn(t,0),qt(t,i),Ue(t,le()),n;switch(t.finishedWork=r,t.finishedLanes=i,e){case 0:case 1:throw Error(C(345));case 2:On(t,je,Lt);break;case 3:if(qt(t,i),(i&130023424)===i&&(e=rc+500-le(),10<e)){if(go(t,0)!==0)break;if(r=t.suspendedLanes,(r&i)!==i){Re(),t.pingedLanes|=t.suspendedLanes&r;break}t.timeoutHandle=Ml(On.bind(null,t,je,Lt),e);break}On(t,je,Lt);break;case 4:if(qt(t,i),(i&4194240)===i)break;for(e=t.eventTimes,r=-1;0<i;){var o=31-pt(i);s=1<<o,o=e[o],o>r&&(r=o),i&=~s}if(i=r,i=le()-i,i=(120>i?120:480>i?480:1080>i?1080:1920>i?1920:3e3>i?3e3:4320>i?4320:1960*fv(i/1960))-i,10<i){t.timeoutHandle=Ml(On.bind(null,t,je,Lt),i);break}On(t,je,Lt);break;case 5:On(t,je,Lt);break;default:throw Error(C(329))}}}return Ue(t,le()),t.callbackNode===n?Lg.bind(null,t):null}function Xl(t,e){var n=wr;return t.current.memoizedState.isDehydrated&&(zn(t,e).flags|=256),t=Io(t,e),t!==2&&(e=je,je=n,e!==null&&Jl(e)),t}function Jl(t){je===null?je=t:je.push.apply(je,t)}function pv(t){for(var e=t;;){if(e.flags&16384){var n=e.updateQueue;if(n!==null&&(n=n.stores,n!==null))for(var i=0;i<n.length;i++){var r=n[i],s=r.getSnapshot;r=r.value;try{if(!yt(s(),r))return!1}catch{return!1}}}if(n=e.child,e.subtreeFlags&16384&&n!==null)n.return=e,e=n;else{if(e===t)break;for(;e.sibling===null;){if(e.return===null||e.return===t)return!0;e=e.return}e.sibling.return=e.return,e=e.sibling}}return!0}function qt(t,e){for(e&=~ic,e&=~na,t.suspendedLanes|=e,t.pingedLanes&=~e,t=t.expirationTimes;0<e;){var n=31-pt(e),i=1<<n;t[n]=-1,e&=~i}}function zh(t){if(F&6)throw Error(C(327));bi();var e=go(t,0);if(!(e&1))return Ue(t,le()),null;var n=Io(t,e);if(t.tag!==0&&n===2){var i=bl(t);i!==0&&(e=i,n=Xl(t,i))}if(n===1)throw n=Yr,zn(t,0),qt(t,e),Ue(t,le()),n;if(n===6)throw Error(C(345));return t.finishedWork=t.current.alternate,t.finishedLanes=e,On(t,je,Lt),Ue(t,le()),null}function sc(t,e){var n=F;F|=1;try{return t(e)}finally{F=n,F===0&&(Mi=le()+500,Jo&&wn())}}function Kn(t){Jt!==null&&Jt.tag===0&&!(F&6)&&bi();var e=F;F|=1;var n=rt.transition,i=H;try{if(rt.transition=null,H=1,t)return t()}finally{H=i,rt.transition=n,F=e,!(F&6)&&wn()}}function oc(){He=yi.current,Z(yi)}function zn(t,e){t.finishedWork=null,t.finishedLanes=0;var n=t.timeoutHandle;if(n!==-1&&(t.timeoutHandle=-1,Hy(n)),he!==null)for(n=he.return;n!==null;){var i=n;switch($u(i),i.tag){case 1:i=i.type.childContextTypes,i!=null&&wo();break;case 3:Oi(),Z(Fe),Z(Pe),qu();break;case 5:Gu(i);break;case 4:Oi();break;case 13:Z(te);break;case 19:Z(te);break;case 10:Hu(i.type._context);break;case 22:case 23:oc()}n=n.return}if(_e=t,he=t=dn(t.current,null),xe=He=e,pe=0,Yr=null,ic=na=Wn=0,je=wr=null,Dn!==null){for(e=0;e<Dn.length;e++)if(n=Dn[e],i=n.interleaved,i!==null){n.interleaved=null;var r=i.next,s=n.pending;if(s!==null){var o=s.next;s.next=r,i.next=o}n.pending=i}Dn=null}return t}function Mg(t,e){do{var n=he;try{if(Vu(),eo.current=Oo,To){for(var i=ne.memoizedState;i!==null;){var r=i.queue;r!==null&&(r.pending=null),i=i.next}To=!1}if(Hn=0,ye=fe=ne=null,vr=!1,Hr=0,nc.current=null,n===null||n.return===null){pe=1,Yr=e,he=null;break}e:{var s=t,o=n.return,a=n,l=e;if(e=xe,a.flags|=32768,l!==null&&typeof l=="object"&&typeof l.then=="function"){var u=l,c=a,h=c.tag;if(!(c.mode&1)&&(h===0||h===11||h===15)){var d=c.alternate;d?(c.updateQueue=d.updateQueue,c.memoizedState=d.memoizedState,c.lanes=d.lanes):(c.updateQueue=null,c.memoizedState=null)}var f=Ch(o);if(f!==null){f.flags&=-257,Eh(f,o,a,s,e),f.mode&1&&Sh(s,u,e),e=f,l=u;var m=e.updateQueue;if(m===null){var y=new Set;y.add(l),e.updateQueue=y}else m.add(l);break e}else{if(!(e&1)){Sh(s,u,e),ac();break e}l=Error(C(426))}}else if(ee&&a.mode&1){var v=Ch(o);if(v!==null){!(v.flags&65536)&&(v.flags|=256),Eh(v,o,a,s,e),Uu(Li(l,a));break e}}s=l=Li(l,a),pe!==4&&(pe=2),wr===null?wr=[s]:wr.push(s),s=o;do{switch(s.tag){case 3:s.flags|=65536,e&=-e,s.lanes|=e;var p=pg(s,l,e);vh(s,p);break e;case 1:a=l;var g=s.type,_=s.stateNode;if(!(s.flags&128)&&(typeof g.getDerivedStateFromError=="function"||_!==null&&typeof _.componentDidCatch=="function"&&(cn===null||!cn.has(_)))){s.flags|=65536,e&=-e,s.lanes|=e;var w=gg(s,a,e);vh(s,w);break e}}s=s.return}while(s!==null)}Ag(n)}catch(x){e=x,he===n&&n!==null&&(he=n=n.return);continue}break}while(!0)}function Rg(){var t=Lo.current;return Lo.current=Oo,t===null?Oo:t}function ac(){(pe===0||pe===3||pe===2)&&(pe=4),_e===null||!(Wn&268435455)&&!(na&268435455)||qt(_e,xe)}function Io(t,e){var n=F;F|=2;var i=Rg();(_e!==t||xe!==e)&&(Lt=null,zn(t,e));do try{gv();break}catch(r){Mg(t,r)}while(!0);if(Vu(),F=n,Lo.current=i,he!==null)throw Error(C(261));return _e=null,xe=0,pe}function gv(){for(;he!==null;)Ig(he)}function mv(){for(;he!==null&&!U0();)Ig(he)}function Ig(t){var e=jg(t.alternate,t,He);t.memoizedProps=t.pendingProps,e===null?Ag(t):he=e,nc.current=null}function Ag(t){var e=t;do{var n=e.alternate;if(t=e.return,e.flags&32768){if(n=uv(n,e),n!==null){n.flags&=32767,he=n;return}if(t!==null)t.flags|=32768,t.subtreeFlags=0,t.deletions=null;else{pe=6,he=null;return}}else if(n=lv(n,e,He),n!==null){he=n;return}if(e=e.sibling,e!==null){he=e;return}he=e=t}while(e!==null);pe===0&&(pe=5)}function On(t,e,n){var i=H,r=rt.transition;try{rt.transition=null,H=1,yv(t,e,n,i)}finally{rt.transition=r,H=i}return null}function yv(t,e,n,i){do bi();while(Jt!==null);if(F&6)throw Error(C(327));n=t.finishedWork;var r=t.finishedLanes;if(n===null)return null;if(t.finishedWork=null,t.finishedLanes=0,n===t.current)throw Error(C(177));t.callbackNode=null,t.callbackPriority=0;var s=n.lanes|n.childLanes;if(X0(t,s),t===_e&&(he=_e=null,xe=0),!(n.subtreeFlags&2064)&&!(n.flags&2064)||Ps||(Ps=!0,Ng(po,function(){return bi(),null})),s=(n.flags&15990)!==0,n.subtreeFlags&15990||s){s=rt.transition,rt.transition=null;var o=H;H=1;var a=F;F|=4,nc.current=null,hv(t,n),Tg(n,t),Ny(Ol),mo=!!Tl,Ol=Tl=null,t.current=n,dv(n),B0(),F=a,H=o,rt.transition=s}else t.current=n;if(Ps&&(Ps=!1,Jt=t,Ro=r),s=t.pendingLanes,s===0&&(cn=null),W0(n.stateNode),Ue(t,le()),e!==null)for(i=t.onRecoverableError,n=0;n<e.length;n++)r=e[n],i(r.value,{componentStack:r.stack,digest:r.digest});if(Mo)throw Mo=!1,t=ql,ql=null,t;return Ro&1&&t.tag!==0&&bi(),s=t.pendingLanes,s&1?t===Ql?xr++:(xr=0,Ql=t):xr=0,wn(),null}function bi(){if(Jt!==null){var t=pp(Ro),e=rt.transition,n=H;try{if(rt.transition=null,H=16>t?16:t,Jt===null)var i=!1;else{if(t=Jt,Jt=null,Ro=0,F&6)throw Error(C(331));var r=F;for(F|=4,T=t.current;T!==null;){var s=T,o=s.child;if(T.flags&16){var a=s.deletions;if(a!==null){for(var l=0;l<a.length;l++){var u=a[l];for(T=u;T!==null;){var c=T;switch(c.tag){case 0:case 11:case 15:_r(8,c,s)}var h=c.child;if(h!==null)h.return=c,T=h;else for(;T!==null;){c=T;var d=c.sibling,f=c.return;if(Cg(c),c===u){T=null;break}if(d!==null){d.return=f,T=d;break}T=f}}}var m=s.alternate;if(m!==null){var y=m.child;if(y!==null){m.child=null;do{var v=y.sibling;y.sibling=null,y=v}while(y!==null)}}T=s}}if(s.subtreeFlags&2064&&o!==null)o.return=s,T=o;else e:for(;T!==null;){if(s=T,s.flags&2048)switch(s.tag){case 0:case 11:case 15:_r(9,s,s.return)}var p=s.sibling;if(p!==null){p.return=s.return,T=p;break e}T=s.return}}var g=t.current;for(T=g;T!==null;){o=T;var _=o.child;if(o.subtreeFlags&2064&&_!==null)_.return=o,T=_;else e:for(o=g;T!==null;){if(a=T,a.flags&2048)try{switch(a.tag){case 0:case 11:case 15:ta(9,a)}}catch(x){se(a,a.return,x)}if(a===o){T=null;break e}var w=a.sibling;if(w!==null){w.return=a.return,T=w;break e}T=a.return}}if(F=r,wn(),St&&typeof St.onPostCommitFiberRoot=="function")try{St.onPostCommitFiberRoot(Yo,t)}catch{}i=!0}return i}finally{H=n,rt.transition=e}}return!1}function Fh(t,e,n){e=Li(n,e),e=pg(t,e,1),t=un(t,e,1),e=Re(),t!==null&&(rs(t,1,e),Ue(t,e))}function se(t,e,n){if(t.tag===3)Fh(t,t,n);else for(;e!==null;){if(e.tag===3){Fh(e,t,n);break}else if(e.tag===1){var i=e.stateNode;if(typeof e.type.getDerivedStateFromError=="function"||typeof i.componentDidCatch=="function"&&(cn===null||!cn.has(i))){t=Li(n,t),t=gg(e,t,1),e=un(e,t,1),t=Re(),e!==null&&(rs(e,1,t),Ue(e,t));break}}e=e.return}}function vv(t,e,n){var i=t.pingCache;i!==null&&i.delete(e),e=Re(),t.pingedLanes|=t.suspendedLanes&n,_e===t&&(xe&n)===n&&(pe===4||pe===3&&(xe&130023424)===xe&&500>le()-rc?zn(t,0):ic|=n),Ue(t,e)}function Dg(t,e){e===0&&(t.mode&1?(e=ys,ys<<=1,!(ys&130023424)&&(ys=4194304)):e=1);var n=Re();t=Ft(t,e),t!==null&&(rs(t,e,n),Ue(t,n))}function _v(t){var e=t.memoizedState,n=0;e!==null&&(n=e.retryLane),Dg(t,n)}function wv(t,e){var n=0;switch(t.tag){case 13:var i=t.stateNode,r=t.memoizedState;r!==null&&(n=r.retryLane);break;case 19:i=t.stateNode;break;default:throw Error(C(314))}i!==null&&i.delete(e),Dg(t,n)}var jg;jg=function(t,e,n){if(t!==null)if(t.memoizedProps!==e.pendingProps||Fe.current)ze=!0;else{if(!(t.lanes&n)&&!(e.flags&128))return ze=!1,av(t,e,n);ze=!!(t.flags&131072)}else ze=!1,ee&&e.flags&1048576&&$p(e,bo,e.index);switch(e.lanes=0,e.tag){case 2:var i=e.type;no(t,e),t=e.pendingProps;var r=Ei(e,Pe.current);ki(e,n),r=Xu(null,e,i,t,r,n);var s=Ju();return e.flags|=1,typeof r=="object"&&r!==null&&typeof r.render=="function"&&r.$$typeof===void 0?(e.tag=1,e.memoizedState=null,e.updateQueue=null,$e(i)?(s=!0,xo(e)):s=!1,e.memoizedState=r.state!==null&&r.state!==void 0?r.state:null,Ku(e),r.updater=ea,e.stateNode=r,r._reactInternals=e,zl(e,i,t,n),e=Ul(null,e,i,!0,s,n)):(e.tag=0,ee&&s&&Fu(e),Le(null,e,r,n),e=e.child),e;case 16:i=e.elementType;e:{switch(no(t,e),t=e.pendingProps,r=i._init,i=r(i._payload),e.type=i,r=e.tag=kv(i),t=ut(i,t),r){case 0:e=$l(null,e,i,t,n);break e;case 1:e=Oh(null,e,i,t,n);break e;case 11:e=Ph(null,e,i,t,n);break e;case 14:e=Th(null,e,i,ut(i.type,t),n);break e}throw Error(C(306,i,""))}return e;case 0:return i=e.type,r=e.pendingProps,r=e.elementType===i?r:ut(i,r),$l(t,e,i,r,n);case 1:return i=e.type,r=e.pendingProps,r=e.elementType===i?r:ut(i,r),Oh(t,e,i,r,n);case 3:e:{if(_g(e),t===null)throw Error(C(387));i=e.pendingProps,s=e.memoizedState,r=s.element,Kp(t,e),Eo(e,i,null,n);var o=e.memoizedState;if(i=o.element,s.isDehydrated)if(s={element:i,isDehydrated:!1,cache:o.cache,pendingSuspenseBoundaries:o.pendingSuspenseBoundaries,transitions:o.transitions},e.updateQueue.baseState=s,e.memoizedState=s,e.flags&256){r=Li(Error(C(423)),e),e=Lh(t,e,i,n,r);break e}else if(i!==r){r=Li(Error(C(424)),e),e=Lh(t,e,i,n,r);break e}else for(We=ln(e.stateNode.containerInfo.firstChild),Ye=e,ee=!0,ft=null,n=Hp(e,null,i,n),e.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(Pi(),i===r){e=$t(t,e,n);break e}Le(t,e,i,n)}e=e.child}return e;case 5:return Yp(e),t===null&&Dl(e),i=e.type,r=e.pendingProps,s=t!==null?t.memoizedProps:null,o=r.children,Ll(i,r)?o=null:s!==null&&Ll(i,s)&&(e.flags|=32),vg(t,e),Le(t,e,o,n),e.child;case 6:return t===null&&Dl(e),null;case 13:return wg(t,e,n);case 4:return Yu(e,e.stateNode.containerInfo),i=e.pendingProps,t===null?e.child=Ti(e,null,i,n):Le(t,e,i,n),e.child;case 11:return i=e.type,r=e.pendingProps,r=e.elementType===i?r:ut(i,r),Ph(t,e,i,r,n);case 7:return Le(t,e,e.pendingProps,n),e.child;case 8:return Le(t,e,e.pendingProps.children,n),e.child;case 12:return Le(t,e,e.pendingProps.children,n),e.child;case 10:e:{if(i=e.type._context,r=e.pendingProps,s=e.memoizedProps,o=r.value,q(So,i._currentValue),i._currentValue=o,s!==null)if(yt(s.value,o)){if(s.children===r.children&&!Fe.current){e=$t(t,e,n);break e}}else for(s=e.child,s!==null&&(s.return=e);s!==null;){var a=s.dependencies;if(a!==null){o=s.child;for(var l=a.firstContext;l!==null;){if(l.context===i){if(s.tag===1){l=jt(-1,n&-n),l.tag=2;var u=s.updateQueue;if(u!==null){u=u.shared;var c=u.pending;c===null?l.next=l:(l.next=c.next,c.next=l),u.pending=l}}s.lanes|=n,l=s.alternate,l!==null&&(l.lanes|=n),jl(s.return,n,e),a.lanes|=n;break}l=l.next}}else if(s.tag===10)o=s.type===e.type?null:s.child;else if(s.tag===18){if(o=s.return,o===null)throw Error(C(341));o.lanes|=n,a=o.alternate,a!==null&&(a.lanes|=n),jl(o,n,e),o=s.sibling}else o=s.child;if(o!==null)o.return=s;else for(o=s;o!==null;){if(o===e){o=null;break}if(s=o.sibling,s!==null){s.return=o.return,o=s;break}o=o.return}s=o}Le(t,e,r.children,n),e=e.child}return e;case 9:return r=e.type,i=e.pendingProps.children,ki(e,n),r=st(r),i=i(r),e.flags|=1,Le(t,e,i,n),e.child;case 14:return i=e.type,r=ut(i,e.pendingProps),r=ut(i.type,r),Th(t,e,i,r,n);case 15:return mg(t,e,e.type,e.pendingProps,n);case 17:return i=e.type,r=e.pendingProps,r=e.elementType===i?r:ut(i,r),no(t,e),e.tag=1,$e(i)?(t=!0,xo(e)):t=!1,ki(e,n),fg(e,i,r),zl(e,i,r,n),Ul(null,e,i,!0,t,n);case 19:return xg(t,e,n);case 22:return yg(t,e,n)}throw Error(C(156,e.tag))};function Ng(t,e){return cp(t,e)}function xv(t,e,n,i){this.tag=t,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=e,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=i,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function nt(t,e,n,i){return new xv(t,e,n,i)}function lc(t){return t=t.prototype,!(!t||!t.isReactComponent)}function kv(t){if(typeof t=="function")return lc(t)?1:0;if(t!=null){if(t=t.$$typeof,t===Pu)return 11;if(t===Tu)return 14}return 2}function dn(t,e){var n=t.alternate;return n===null?(n=nt(t.tag,e,t.key,t.mode),n.elementType=t.elementType,n.type=t.type,n.stateNode=t.stateNode,n.alternate=t,t.alternate=n):(n.pendingProps=e,n.type=t.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=t.flags&14680064,n.childLanes=t.childLanes,n.lanes=t.lanes,n.child=t.child,n.memoizedProps=t.memoizedProps,n.memoizedState=t.memoizedState,n.updateQueue=t.updateQueue,e=t.dependencies,n.dependencies=e===null?null:{lanes:e.lanes,firstContext:e.firstContext},n.sibling=t.sibling,n.index=t.index,n.ref=t.ref,n}function so(t,e,n,i,r,s){var o=2;if(i=t,typeof t=="function")lc(t)&&(o=1);else if(typeof t=="string")o=5;else e:switch(t){case ai:return Fn(n.children,r,s,e);case Eu:o=8,r|=8;break;case ll:return t=nt(12,n,e,r|2),t.elementType=ll,t.lanes=s,t;case ul:return t=nt(13,n,e,r),t.elementType=ul,t.lanes=s,t;case cl:return t=nt(19,n,e,r),t.elementType=cl,t.lanes=s,t;case Yf:return ia(n,r,s,e);default:if(typeof t=="object"&&t!==null)switch(t.$$typeof){case Wf:o=10;break e;case Kf:o=9;break e;case Pu:o=11;break e;case Tu:o=14;break e;case Wt:o=16,i=null;break e}throw Error(C(130,t==null?t:typeof t,""))}return e=nt(o,n,e,r),e.elementType=t,e.type=i,e.lanes=s,e}function Fn(t,e,n,i){return t=nt(7,t,i,e),t.lanes=n,t}function ia(t,e,n,i){return t=nt(22,t,i,e),t.elementType=Yf,t.lanes=n,t.stateNode={isHidden:!1},t}function Ba(t,e,n){return t=nt(6,t,null,e),t.lanes=n,t}function Va(t,e,n){return e=nt(4,t.children!==null?t.children:[],t.key,e),e.lanes=n,e.stateNode={containerInfo:t.containerInfo,pendingChildren:null,implementation:t.implementation},e}function bv(t,e,n,i,r){this.tag=e,this.containerInfo=t,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=ba(0),this.expirationTimes=ba(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=ba(0),this.identifierPrefix=i,this.onRecoverableError=r,this.mutableSourceEagerHydrationData=null}function uc(t,e,n,i,r,s,o,a,l){return t=new bv(t,e,n,a,l),e===1?(e=1,s===!0&&(e|=8)):e=0,s=nt(3,null,null,e),t.current=s,s.stateNode=t,s.memoizedState={element:i,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},Ku(s),t}function Sv(t,e,n){var i=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:oi,key:i==null?null:""+i,children:t,containerInfo:e,implementation:n}}function zg(t){if(!t)return gn;t=t._reactInternals;e:{if(qn(t)!==t||t.tag!==1)throw Error(C(170));var e=t;do{switch(e.tag){case 3:e=e.stateNode.context;break e;case 1:if($e(e.type)){e=e.stateNode.__reactInternalMemoizedMergedChildContext;break e}}e=e.return}while(e!==null);throw Error(C(171))}if(t.tag===1){var n=t.type;if($e(n))return zp(t,n,e)}return e}function Fg(t,e,n,i,r,s,o,a,l){return t=uc(n,i,!0,t,r,s,o,a,l),t.context=zg(null),n=t.current,i=Re(),r=hn(n),s=jt(i,r),s.callback=e??null,un(n,s,r),t.current.lanes=r,rs(t,r,i),Ue(t,i),t}function ra(t,e,n,i){var r=e.current,s=Re(),o=hn(r);return n=zg(n),e.context===null?e.context=n:e.pendingContext=n,e=jt(s,o),e.payload={element:t},i=i===void 0?null:i,i!==null&&(e.callback=i),t=un(r,e,o),t!==null&&(gt(t,r,o,s),Zs(t,r,o)),o}function Ao(t){if(t=t.current,!t.child)return null;switch(t.child.tag){case 5:return t.child.stateNode;default:return t.child.stateNode}}function $h(t,e){if(t=t.memoizedState,t!==null&&t.dehydrated!==null){var n=t.retryLane;t.retryLane=n!==0&&n<e?n:e}}function cc(t,e){$h(t,e),(t=t.alternate)&&$h(t,e)}function Cv(){return null}var $g=typeof reportError=="function"?reportError:function(t){console.error(t)};function hc(t){this._internalRoot=t}sa.prototype.render=hc.prototype.render=function(t){var e=this._internalRoot;if(e===null)throw Error(C(409));ra(t,e,null,null)};sa.prototype.unmount=hc.prototype.unmount=function(){var t=this._internalRoot;if(t!==null){this._internalRoot=null;var e=t.containerInfo;Kn(function(){ra(null,t,null,null)}),e[zt]=null}};function sa(t){this._internalRoot=t}sa.prototype.unstable_scheduleHydration=function(t){if(t){var e=yp();t={blockedOn:null,target:t,priority:e};for(var n=0;n<Gt.length&&e!==0&&e<Gt[n].priority;n++);Gt.splice(n,0,t),n===0&&_p(t)}};function dc(t){return!(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11)}function oa(t){return!(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11&&(t.nodeType!==8||t.nodeValue!==" react-mount-point-unstable "))}function Uh(){}function Ev(t,e,n,i,r){if(r){if(typeof i=="function"){var s=i;i=function(){var u=Ao(o);s.call(u)}}var o=Fg(e,i,t,0,null,!1,!1,"",Uh);return t._reactRootContainer=o,t[zt]=o.current,Fr(t.nodeType===8?t.parentNode:t),Kn(),o}for(;r=t.lastChild;)t.removeChild(r);if(typeof i=="function"){var a=i;i=function(){var u=Ao(l);a.call(u)}}var l=uc(t,0,!1,null,null,!1,!1,"",Uh);return t._reactRootContainer=l,t[zt]=l.current,Fr(t.nodeType===8?t.parentNode:t),Kn(function(){ra(e,l,n,i)}),l}function aa(t,e,n,i,r){var s=n._reactRootContainer;if(s){var o=s;if(typeof r=="function"){var a=r;r=function(){var l=Ao(o);a.call(l)}}ra(e,o,t,r)}else o=Ev(n,e,t,r,i);return Ao(o)}gp=function(t){switch(t.tag){case 3:var e=t.stateNode;if(e.current.memoizedState.isDehydrated){var n=or(e.pendingLanes);n!==0&&(Mu(e,n|1),Ue(e,le()),!(F&6)&&(Mi=le()+500,wn()))}break;case 13:Kn(function(){var i=Ft(t,1);if(i!==null){var r=Re();gt(i,t,1,r)}}),cc(t,1)}};Ru=function(t){if(t.tag===13){var e=Ft(t,134217728);if(e!==null){var n=Re();gt(e,t,134217728,n)}cc(t,134217728)}};mp=function(t){if(t.tag===13){var e=hn(t),n=Ft(t,e);if(n!==null){var i=Re();gt(n,t,e,i)}cc(t,e)}};yp=function(){return H};vp=function(t,e){var n=H;try{return H=t,e()}finally{H=n}};wl=function(t,e,n){switch(e){case"input":if(fl(t,n),e=n.name,n.type==="radio"&&e!=null){for(n=t;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll("input[name="+JSON.stringify(""+e)+'][type="radio"]'),e=0;e<n.length;e++){var i=n[e];if(i!==t&&i.form===t.form){var r=Xo(i);if(!r)throw Error(C(90));qf(i),fl(i,r)}}}break;case"textarea":Xf(t,n);break;case"select":e=n.value,e!=null&&vi(t,!!n.multiple,e,!1)}};rp=sc;sp=Kn;var Pv={usingClientEntryPoint:!1,Events:[os,hi,Xo,np,ip,sc]},Xi={findFiberByHostInstance:An,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},Tv={bundleType:Xi.bundleType,version:Xi.version,rendererPackageName:Xi.rendererPackageName,rendererConfig:Xi.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:Ut.ReactCurrentDispatcher,findHostInstanceByFiber:function(t){return t=lp(t),t===null?null:t.stateNode},findFiberByHostInstance:Xi.findFiberByHostInstance||Cv,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.3.1-next-f1338f8080-20240426"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var Ts=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!Ts.isDisabled&&Ts.supportsFiber)try{Yo=Ts.inject(Tv),St=Ts}catch{}}Qe.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=Pv;Qe.createPortal=function(t,e){var n=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!dc(e))throw Error(C(200));return Sv(t,e,null,n)};Qe.createRoot=function(t,e){if(!dc(t))throw Error(C(299));var n=!1,i="",r=$g;return e!=null&&(e.unstable_strictMode===!0&&(n=!0),e.identifierPrefix!==void 0&&(i=e.identifierPrefix),e.onRecoverableError!==void 0&&(r=e.onRecoverableError)),e=uc(t,1,!1,null,null,n,!1,i,r),t[zt]=e.current,Fr(t.nodeType===8?t.parentNode:t),new hc(e)};Qe.findDOMNode=function(t){if(t==null)return null;if(t.nodeType===1)return t;var e=t._reactInternals;if(e===void 0)throw typeof t.render=="function"?Error(C(188)):(t=Object.keys(t).join(","),Error(C(268,t)));return t=lp(e),t=t===null?null:t.stateNode,t};Qe.flushSync=function(t){return Kn(t)};Qe.hydrate=function(t,e,n){if(!oa(e))throw Error(C(200));return aa(null,t,e,!0,n)};Qe.hydrateRoot=function(t,e,n){if(!dc(t))throw Error(C(405));var i=n!=null&&n.hydratedSources||null,r=!1,s="",o=$g;if(n!=null&&(n.unstable_strictMode===!0&&(r=!0),n.identifierPrefix!==void 0&&(s=n.identifierPrefix),n.onRecoverableError!==void 0&&(o=n.onRecoverableError)),e=Fg(e,null,t,1,n??null,r,!1,s,o),t[zt]=e.current,Fr(t),i)for(t=0;t<i.length;t++)n=i[t],r=n._getVersion,r=r(n._source),e.mutableSourceEagerHydrationData==null?e.mutableSourceEagerHydrationData=[n,r]:e.mutableSourceEagerHydrationData.push(n,r);return new sa(e)};Qe.render=function(t,e,n){if(!oa(e))throw Error(C(200));return aa(null,t,e,!1,n)};Qe.unmountComponentAtNode=function(t){if(!oa(t))throw Error(C(40));return t._reactRootContainer?(Kn(function(){aa(null,null,t,!1,function(){t._reactRootContainer=null,t[zt]=null})}),!0):!1};Qe.unstable_batchedUpdates=sc;Qe.unstable_renderSubtreeIntoContainer=function(t,e,n,i){if(!oa(n))throw Error(C(200));if(t==null||t._reactInternals===void 0)throw Error(C(38));return aa(t,e,n,!1,i)};Qe.version="18.3.1-next-f1338f8080-20240426";function Ug(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(Ug)}catch(t){console.error(t)}}Ug(),Uf.exports=Qe;var Ov=Uf.exports,Bh=Ov;ol.createRoot=Bh.createRoot,ol.hydrateRoot=Bh.hydrateRoot;/**
+`+s.stack}return{value:t,source:e,stack:r,digest:null}}function $a(t,e,n){return{value:t,source:null,stack:n??null,digest:e??null}}function Fl(t,e){try{console.error(e.value)}catch(n){setTimeout(function(){throw n})}}var rv=typeof WeakMap=="function"?WeakMap:Map;function pg(t,e,n){n=jt(-1,n),n.tag=3,n.payload={element:null};var i=e.value;return n.callback=function(){Mo||(Mo=!0,ql=i),Fl(t,e)},n}function gg(t,e,n){n=jt(-1,n),n.tag=3;var i=t.type.getDerivedStateFromError;if(typeof i=="function"){var r=e.value;n.payload=function(){return i(r)},n.callback=function(){Fl(t,e)}}var s=t.stateNode;return s!==null&&typeof s.componentDidCatch=="function"&&(n.callback=function(){Fl(t,e),typeof i!="function"&&(cn===null?cn=new Set([this]):cn.add(this));var o=e.stack;this.componentDidCatch(e.value,{componentStack:o!==null?o:""})}),n}function Sh(t,e,n){var i=t.pingCache;if(i===null){i=t.pingCache=new rv;var r=new Set;i.set(e,r)}else r=i.get(e),r===void 0&&(r=new Set,i.set(e,r));r.has(n)||(r.add(n),t=vv.bind(null,t,e,n),e.then(t,t))}function Ch(t){do{var e;if((e=t.tag===13)&&(e=t.memoizedState,e=e!==null?e.dehydrated!==null:!0),e)return t;t=t.return}while(t!==null);return null}function Eh(t,e,n,i,r){return t.mode&1?(t.flags|=65536,t.lanes=r,t):(t===e?t.flags|=65536:(t.flags|=128,n.flags|=131072,n.flags&=-52805,n.tag===1&&(n.alternate===null?n.tag=17:(e=jt(-1,1),e.tag=2,un(n,e,1))),n.lanes|=1),t)}var sv=Ut.ReactCurrentOwner,ze=!1;function Le(t,e,n,i){e.child=t===null?Hp(e,null,n,i):Ti(e,t.child,n,i)}function Ph(t,e,n,i,r){n=n.render;var s=e.ref;return ki(e,r),i=Xu(t,e,n,i,s,r),n=Ju(),t!==null&&!ze?(e.updateQueue=t.updateQueue,e.flags&=-2053,t.lanes&=~r,$t(t,e,r)):(ee&&n&&Fu(e),e.flags|=1,Le(t,e,i,r),e.child)}function Th(t,e,n,i,r){if(t===null){var s=n.type;return typeof s=="function"&&!lc(s)&&s.defaultProps===void 0&&n.compare===null&&n.defaultProps===void 0?(e.tag=15,e.type=s,mg(t,e,s,i,r)):(t=so(n.type,null,i,e,e.mode,r),t.ref=e.ref,t.return=e,e.child=t)}if(s=t.child,!(t.lanes&r)){var o=s.memoizedProps;if(n=n.compare,n=n!==null?n:zr,n(o,i)&&t.ref===e.ref)return $t(t,e,r)}return e.flags|=1,t=dn(s,i),t.ref=e.ref,t.return=e,e.child=t}function mg(t,e,n,i,r){if(t!==null){var s=t.memoizedProps;if(zr(s,i)&&t.ref===e.ref)if(ze=!1,e.pendingProps=i=s,(t.lanes&r)!==0)t.flags&131072&&(ze=!0);else return e.lanes=t.lanes,$t(t,e,r)}return $l(t,e,n,i,r)}function yg(t,e,n){var i=e.pendingProps,r=i.children,s=t!==null?t.memoizedState:null;if(i.mode==="hidden")if(!(e.mode&1))e.memoizedState={baseLanes:0,cachePool:null,transitions:null},q(yi,He),He|=n;else{if(!(n&1073741824))return t=s!==null?s.baseLanes|n:n,e.lanes=e.childLanes=1073741824,e.memoizedState={baseLanes:t,cachePool:null,transitions:null},e.updateQueue=null,q(yi,He),He|=t,null;e.memoizedState={baseLanes:0,cachePool:null,transitions:null},i=s!==null?s.baseLanes:n,q(yi,He),He|=i}else s!==null?(i=s.baseLanes|n,e.memoizedState=null):i=n,q(yi,He),He|=i;return Le(t,e,r,n),e.child}function vg(t,e){var n=e.ref;(t===null&&n!==null||t!==null&&t.ref!==n)&&(e.flags|=512,e.flags|=2097152)}function $l(t,e,n,i,r){var s=$e(n)?Bn:Pe.current;return s=Ei(e,s),ki(e,r),n=Xu(t,e,n,i,s,r),i=Ju(),t!==null&&!ze?(e.updateQueue=t.updateQueue,e.flags&=-2053,t.lanes&=~r,$t(t,e,r)):(ee&&i&&Fu(e),e.flags|=1,Le(t,e,n,r),e.child)}function Oh(t,e,n,i,r){if($e(n)){var s=!0;xo(e)}else s=!1;if(ki(e,r),e.stateNode===null)no(t,e),fg(e,n,i),zl(e,n,i,r),i=!0;else if(t===null){var o=e.stateNode,a=e.memoizedProps;o.props=a;var l=o.context,u=n.contextType;typeof u=="object"&&u!==null?u=st(u):(u=$e(n)?Bn:Pe.current,u=Ei(e,u));var c=n.getDerivedStateFromProps,h=typeof c=="function"||typeof o.getSnapshotBeforeUpdate=="function";h||typeof o.UNSAFE_componentWillReceiveProps!="function"&&typeof o.componentWillReceiveProps!="function"||(a!==i||l!==u)&&bh(e,o,i,u),Kt=!1;var d=e.memoizedState;o.state=d,Eo(e,i,o,r),l=e.memoizedState,a!==i||d!==l||Fe.current||Kt?(typeof c=="function"&&(Nl(e,n,c,i),l=e.memoizedState),(a=Kt||kh(e,n,a,i,d,l,u))?(h||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"&&(e.flags|=4194308)):(typeof o.componentDidMount=="function"&&(e.flags|=4194308),e.memoizedProps=i,e.memoizedState=l),o.props=i,o.state=l,o.context=u,i=a):(typeof o.componentDidMount=="function"&&(e.flags|=4194308),i=!1)}else{o=e.stateNode,Kp(t,e),a=e.memoizedProps,u=e.type===e.elementType?a:ut(e.type,a),o.props=u,h=e.pendingProps,d=o.context,l=n.contextType,typeof l=="object"&&l!==null?l=st(l):(l=$e(n)?Bn:Pe.current,l=Ei(e,l));var f=n.getDerivedStateFromProps;(c=typeof f=="function"||typeof o.getSnapshotBeforeUpdate=="function")||typeof o.UNSAFE_componentWillReceiveProps!="function"&&typeof o.componentWillReceiveProps!="function"||(a!==h||d!==l)&&bh(e,o,i,l),Kt=!1,d=e.memoizedState,o.state=d,Eo(e,i,o,r);var m=e.memoizedState;a!==h||d!==m||Fe.current||Kt?(typeof f=="function"&&(Nl(e,n,f,i),m=e.memoizedState),(u=Kt||kh(e,n,u,i,d,m,l)||!1)?(c||typeof o.UNSAFE_componentWillUpdate!="function"&&typeof o.componentWillUpdate!="function"||(typeof o.componentWillUpdate=="function"&&o.componentWillUpdate(i,m,l),typeof o.UNSAFE_componentWillUpdate=="function"&&o.UNSAFE_componentWillUpdate(i,m,l)),typeof o.componentDidUpdate=="function"&&(e.flags|=4),typeof o.getSnapshotBeforeUpdate=="function"&&(e.flags|=1024)):(typeof o.componentDidUpdate!="function"||a===t.memoizedProps&&d===t.memoizedState||(e.flags|=4),typeof o.getSnapshotBeforeUpdate!="function"||a===t.memoizedProps&&d===t.memoizedState||(e.flags|=1024),e.memoizedProps=i,e.memoizedState=m),o.props=i,o.state=m,o.context=l,i=u):(typeof o.componentDidUpdate!="function"||a===t.memoizedProps&&d===t.memoizedState||(e.flags|=4),typeof o.getSnapshotBeforeUpdate!="function"||a===t.memoizedProps&&d===t.memoizedState||(e.flags|=1024),i=!1)}return Ul(t,e,n,i,s,r)}function Ul(t,e,n,i,r,s){vg(t,e);var o=(e.flags&128)!==0;if(!i&&!o)return r&&ph(e,n,!1),$t(t,e,s);i=e.stateNode,sv.current=e;var a=o&&typeof n.getDerivedStateFromError!="function"?null:i.render();return e.flags|=1,t!==null&&o?(e.child=Ti(e,t.child,null,s),e.child=Ti(e,null,a,s)):Le(t,e,a,s),e.memoizedState=i.state,r&&ph(e,n,!0),e.child}function _g(t){var e=t.stateNode;e.pendingContext?fh(t,e.pendingContext,e.pendingContext!==e.context):e.context&&fh(t,e.context,!1),Yu(t,e.containerInfo)}function Lh(t,e,n,i,r){return Pi(),Uu(r),e.flags|=256,Le(t,e,n,i),e.child}var Bl={dehydrated:null,treeContext:null,retryLane:0};function Vl(t){return{baseLanes:t,cachePool:null,transitions:null}}function wg(t,e,n){var i=e.pendingProps,r=te.current,s=!1,o=(e.flags&128)!==0,a;if((a=o)||(a=t!==null&&t.memoizedState===null?!1:(r&2)!==0),a?(s=!0,e.flags&=-129):(t===null||t.memoizedState!==null)&&(r|=1),q(te,r&1),t===null)return Dl(e),t=e.memoizedState,t!==null&&(t=t.dehydrated,t!==null)?(e.mode&1?t.data==="$!"?e.lanes=8:e.lanes=1073741824:e.lanes=1,null):(o=i.children,t=i.fallback,s?(i=e.mode,s=e.child,o={mode:"hidden",children:o},!(i&1)&&s!==null?(s.childLanes=0,s.pendingProps=o):s=ia(o,i,0,null),t=Fn(t,i,n,null),s.return=e,t.return=e,s.sibling=t,e.child=s,e.child.memoizedState=Vl(n),e.memoizedState=Bl,t):tc(e,o));if(r=t.memoizedState,r!==null&&(a=r.dehydrated,a!==null))return ov(t,e,o,i,a,r,n);if(s){s=i.fallback,o=e.mode,r=t.child,a=r.sibling;var l={mode:"hidden",children:i.children};return!(o&1)&&e.child!==r?(i=e.child,i.childLanes=0,i.pendingProps=l,e.deletions=null):(i=dn(r,l),i.subtreeFlags=r.subtreeFlags&14680064),a!==null?s=dn(a,s):(s=Fn(s,o,n,null),s.flags|=2),s.return=e,i.return=e,i.sibling=s,e.child=i,i=s,s=e.child,o=t.child.memoizedState,o=o===null?Vl(n):{baseLanes:o.baseLanes|n,cachePool:null,transitions:o.transitions},s.memoizedState=o,s.childLanes=t.childLanes&~n,e.memoizedState=Bl,i}return s=t.child,t=s.sibling,i=dn(s,{mode:"visible",children:i.children}),!(e.mode&1)&&(i.lanes=n),i.return=e,i.sibling=null,t!==null&&(n=e.deletions,n===null?(e.deletions=[t],e.flags|=16):n.push(t)),e.child=i,e.memoizedState=null,i}function tc(t,e){return e=ia({mode:"visible",children:e},t.mode,0,null),e.return=t,t.child=e}function Cs(t,e,n,i){return i!==null&&Uu(i),Ti(e,t.child,null,n),t=tc(e,e.pendingProps.children),t.flags|=2,e.memoizedState=null,t}function ov(t,e,n,i,r,s,o){if(n)return e.flags&256?(e.flags&=-257,i=$a(Error(C(422))),Cs(t,e,o,i)):e.memoizedState!==null?(e.child=t.child,e.flags|=128,null):(s=i.fallback,r=e.mode,i=ia({mode:"visible",children:i.children},r,0,null),s=Fn(s,r,o,null),s.flags|=2,i.return=e,s.return=e,i.sibling=s,e.child=i,e.mode&1&&Ti(e,t.child,null,o),e.child.memoizedState=Vl(o),e.memoizedState=Bl,s);if(!(e.mode&1))return Cs(t,e,o,null);if(r.data==="$!"){if(i=r.nextSibling&&r.nextSibling.dataset,i)var a=i.dgst;return i=a,s=Error(C(419)),i=$a(s,i,void 0),Cs(t,e,o,i)}if(a=(o&t.childLanes)!==0,ze||a){if(i=_e,i!==null){switch(o&-o){case 4:r=2;break;case 16:r=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:r=32;break;case 536870912:r=268435456;break;default:r=0}r=r&(i.suspendedLanes|o)?0:r,r!==0&&r!==s.retryLane&&(s.retryLane=r,Ft(t,r),gt(i,t,r,-1))}return ac(),i=$a(Error(C(421))),Cs(t,e,o,i)}return r.data==="$?"?(e.flags|=128,e.child=t.child,e=_v.bind(null,t),r._reactRetry=e,null):(t=s.treeContext,We=ln(r.nextSibling),Ye=e,ee=!0,ft=null,t!==null&&(et[tt++]=It,et[tt++]=At,et[tt++]=Vn,It=t.id,At=t.overflow,Vn=e),e=tc(e,i.children),e.flags|=4096,e)}function Mh(t,e,n){t.lanes|=e;var i=t.alternate;i!==null&&(i.lanes|=e),jl(t.return,e,n)}function Ua(t,e,n,i,r){var s=t.memoizedState;s===null?t.memoizedState={isBackwards:e,rendering:null,renderingStartTime:0,last:i,tail:n,tailMode:r}:(s.isBackwards=e,s.rendering=null,s.renderingStartTime=0,s.last=i,s.tail=n,s.tailMode=r)}function xg(t,e,n){var i=e.pendingProps,r=i.revealOrder,s=i.tail;if(Le(t,e,i.children,n),i=te.current,i&2)i=i&1|2,e.flags|=128;else{if(t!==null&&t.flags&128)e:for(t=e.child;t!==null;){if(t.tag===13)t.memoizedState!==null&&Mh(t,n,e);else if(t.tag===19)Mh(t,n,e);else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break e;for(;t.sibling===null;){if(t.return===null||t.return===e)break e;t=t.return}t.sibling.return=t.return,t=t.sibling}i&=1}if(q(te,i),!(e.mode&1))e.memoizedState=null;else switch(r){case"forwards":for(n=e.child,r=null;n!==null;)t=n.alternate,t!==null&&Po(t)===null&&(r=n),n=n.sibling;n=r,n===null?(r=e.child,e.child=null):(r=n.sibling,n.sibling=null),Ua(e,!1,r,n,s);break;case"backwards":for(n=null,r=e.child,e.child=null;r!==null;){if(t=r.alternate,t!==null&&Po(t)===null){e.child=r;break}t=r.sibling,r.sibling=n,n=r,r=t}Ua(e,!0,n,null,s);break;case"together":Ua(e,!1,null,null,void 0);break;default:e.memoizedState=null}return e.child}function no(t,e){!(e.mode&1)&&t!==null&&(t.alternate=null,e.alternate=null,e.flags|=2)}function $t(t,e,n){if(t!==null&&(e.dependencies=t.dependencies),Wn|=e.lanes,!(n&e.childLanes))return null;if(t!==null&&e.child!==t.child)throw Error(C(153));if(e.child!==null){for(t=e.child,n=dn(t,t.pendingProps),e.child=n,n.return=e;t.sibling!==null;)t=t.sibling,n=n.sibling=dn(t,t.pendingProps),n.return=e;n.sibling=null}return e.child}function av(t,e,n){switch(e.tag){case 3:_g(e),Pi();break;case 5:Yp(e);break;case 1:$e(e.type)&&xo(e);break;case 4:Yu(e,e.stateNode.containerInfo);break;case 10:var i=e.type._context,r=e.memoizedProps.value;q(So,i._currentValue),i._currentValue=r;break;case 13:if(i=e.memoizedState,i!==null)return i.dehydrated!==null?(q(te,te.current&1),e.flags|=128,null):n&e.child.childLanes?wg(t,e,n):(q(te,te.current&1),t=$t(t,e,n),t!==null?t.sibling:null);q(te,te.current&1);break;case 19:if(i=(n&e.childLanes)!==0,t.flags&128){if(i)return xg(t,e,n);e.flags|=128}if(r=e.memoizedState,r!==null&&(r.rendering=null,r.tail=null,r.lastEffect=null),q(te,te.current),i)break;return null;case 22:case 23:return e.lanes=0,yg(t,e,n)}return $t(t,e,n)}var kg,Hl,bg,Sg;kg=function(t,e){for(var n=e.child;n!==null;){if(n.tag===5||n.tag===6)t.appendChild(n.stateNode);else if(n.tag!==4&&n.child!==null){n.child.return=n,n=n.child;continue}if(n===e)break;for(;n.sibling===null;){if(n.return===null||n.return===e)return;n=n.return}n.sibling.return=n.return,n=n.sibling}};Hl=function(){};bg=function(t,e,n,i){var r=t.memoizedProps;if(r!==i){t=e.stateNode,jn(Ct.current);var s=null;switch(n){case"input":r=dl(t,r),i=dl(t,i),s=[];break;case"select":r=ie({},r,{value:void 0}),i=ie({},i,{value:void 0}),s=[];break;case"textarea":r=gl(t,r),i=gl(t,i),s=[];break;default:typeof r.onClick!="function"&&typeof i.onClick=="function"&&(t.onclick=_o)}yl(n,i);var o;n=null;for(u in r)if(!i.hasOwnProperty(u)&&r.hasOwnProperty(u)&&r[u]!=null)if(u==="style"){var a=r[u];for(o in a)a.hasOwnProperty(o)&&(n||(n={}),n[o]="")}else u!=="dangerouslySetInnerHTML"&&u!=="children"&&u!=="suppressContentEditableWarning"&&u!=="suppressHydrationWarning"&&u!=="autoFocus"&&(Mr.hasOwnProperty(u)?s||(s=[]):(s=s||[]).push(u,null));for(u in i){var l=i[u];if(a=r!=null?r[u]:void 0,i.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"&&(Mr.hasOwnProperty(u)?(l!=null&&u==="onScroll"&&X("scroll",t),s||a===l||(s=[])):(s=s||[]).push(u,l))}n&&(s=s||[]).push("style",n);var u=s;(e.updateQueue=u)&&(e.flags|=4)}};Sg=function(t,e,n,i){n!==i&&(e.flags|=4)};function Qi(t,e){if(!ee)switch(t.tailMode){case"hidden":e=t.tail;for(var n=null;e!==null;)e.alternate!==null&&(n=e),e=e.sibling;n===null?t.tail=null:n.sibling=null;break;case"collapsed":n=t.tail;for(var i=null;n!==null;)n.alternate!==null&&(i=n),n=n.sibling;i===null?e||t.tail===null?t.tail=null:t.tail.sibling=null:i.sibling=null}}function Se(t){var e=t.alternate!==null&&t.alternate.child===t.child,n=0,i=0;if(e)for(var r=t.child;r!==null;)n|=r.lanes|r.childLanes,i|=r.subtreeFlags&14680064,i|=r.flags&14680064,r.return=t,r=r.sibling;else for(r=t.child;r!==null;)n|=r.lanes|r.childLanes,i|=r.subtreeFlags,i|=r.flags,r.return=t,r=r.sibling;return t.subtreeFlags|=i,t.childLanes=n,e}function lv(t,e,n){var i=e.pendingProps;switch($u(e),e.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Se(e),null;case 1:return $e(e.type)&&wo(),Se(e),null;case 3:return i=e.stateNode,Oi(),Z(Fe),Z(Pe),qu(),i.pendingContext&&(i.context=i.pendingContext,i.pendingContext=null),(t===null||t.child===null)&&(bs(e)?e.flags|=4:t===null||t.memoizedState.isDehydrated&&!(e.flags&256)||(e.flags|=1024,ft!==null&&(Jl(ft),ft=null))),Hl(t,e),Se(e),null;case 5:Gu(e);var r=jn(Vr.current);if(n=e.type,t!==null&&e.stateNode!=null)bg(t,e,n,i,r),t.ref!==e.ref&&(e.flags|=512,e.flags|=2097152);else{if(!i){if(e.stateNode===null)throw Error(C(166));return Se(e),null}if(t=jn(Ct.current),bs(e)){i=e.stateNode,n=e.type;var s=e.memoizedProps;switch(i[bt]=e,i[Ur]=s,t=(e.mode&1)!==0,n){case"dialog":X("cancel",i),X("close",i);break;case"iframe":case"object":case"embed":X("load",i);break;case"video":case"audio":for(r=0;r<ar.length;r++)X(ar[r],i);break;case"source":X("error",i);break;case"img":case"image":case"link":X("error",i),X("load",i);break;case"details":X("toggle",i);break;case"input":$c(i,s),X("invalid",i);break;case"select":i._wrapperState={wasMultiple:!!s.multiple},X("invalid",i);break;case"textarea":Bc(i,s),X("invalid",i)}yl(n,s),r=null;for(var o in s)if(s.hasOwnProperty(o)){var a=s[o];o==="children"?typeof a=="string"?i.textContent!==a&&(s.suppressHydrationWarning!==!0&&ks(i.textContent,a,t),r=["children",a]):typeof a=="number"&&i.textContent!==""+a&&(s.suppressHydrationWarning!==!0&&ks(i.textContent,a,t),r=["children",""+a]):Mr.hasOwnProperty(o)&&a!=null&&o==="onScroll"&&X("scroll",i)}switch(n){case"input":ps(i),Uc(i,s,!0);break;case"textarea":ps(i),Vc(i);break;case"select":case"option":break;default:typeof s.onClick=="function"&&(i.onclick=_o)}i=r,e.updateQueue=i,i!==null&&(e.flags|=4)}else{o=r.nodeType===9?r:r.ownerDocument,t==="http://www.w3.org/1999/xhtml"&&(t=Jf(n)),t==="http://www.w3.org/1999/xhtml"?n==="script"?(t=o.createElement("div"),t.innerHTML="<script><\/script>",t=t.removeChild(t.firstChild)):typeof i.is=="string"?t=o.createElement(n,{is:i.is}):(t=o.createElement(n),n==="select"&&(o=t,i.multiple?o.multiple=!0:i.size&&(o.size=i.size))):t=o.createElementNS(t,n),t[bt]=e,t[Ur]=i,kg(t,e,!1,!1),e.stateNode=t;e:{switch(o=vl(n,i),n){case"dialog":X("cancel",t),X("close",t),r=i;break;case"iframe":case"object":case"embed":X("load",t),r=i;break;case"video":case"audio":for(r=0;r<ar.length;r++)X(ar[r],t);r=i;break;case"source":X("error",t),r=i;break;case"img":case"image":case"link":X("error",t),X("load",t),r=i;break;case"details":X("toggle",t),r=i;break;case"input":$c(t,i),r=dl(t,i),X("invalid",t);break;case"option":r=i;break;case"select":t._wrapperState={wasMultiple:!!i.multiple},r=ie({},i,{value:void 0}),X("invalid",t);break;case"textarea":Bc(t,i),r=gl(t,i),X("invalid",t);break;default:r=i}yl(n,r),a=r;for(s in a)if(a.hasOwnProperty(s)){var l=a[s];s==="style"?tp(t,l):s==="dangerouslySetInnerHTML"?(l=l?l.__html:void 0,l!=null&&Zf(t,l)):s==="children"?typeof l=="string"?(n!=="textarea"||l!=="")&&Rr(t,l):typeof l=="number"&&Rr(t,""+l):s!=="suppressContentEditableWarning"&&s!=="suppressHydrationWarning"&&s!=="autoFocus"&&(Mr.hasOwnProperty(s)?l!=null&&s==="onScroll"&&X("scroll",t):l!=null&&Cu(t,s,l,o))}switch(n){case"input":ps(t),Uc(t,i,!1);break;case"textarea":ps(t),Vc(t);break;case"option":i.value!=null&&t.setAttribute("value",""+pn(i.value));break;case"select":t.multiple=!!i.multiple,s=i.value,s!=null?vi(t,!!i.multiple,s,!1):i.defaultValue!=null&&vi(t,!!i.multiple,i.defaultValue,!0);break;default:typeof r.onClick=="function"&&(t.onclick=_o)}switch(n){case"button":case"input":case"select":case"textarea":i=!!i.autoFocus;break e;case"img":i=!0;break e;default:i=!1}}i&&(e.flags|=4)}e.ref!==null&&(e.flags|=512,e.flags|=2097152)}return Se(e),null;case 6:if(t&&e.stateNode!=null)Sg(t,e,t.memoizedProps,i);else{if(typeof i!="string"&&e.stateNode===null)throw Error(C(166));if(n=jn(Vr.current),jn(Ct.current),bs(e)){if(i=e.stateNode,n=e.memoizedProps,i[bt]=e,(s=i.nodeValue!==n)&&(t=Ye,t!==null))switch(t.tag){case 3:ks(i.nodeValue,n,(t.mode&1)!==0);break;case 5:t.memoizedProps.suppressHydrationWarning!==!0&&ks(i.nodeValue,n,(t.mode&1)!==0)}s&&(e.flags|=4)}else i=(n.nodeType===9?n:n.ownerDocument).createTextNode(i),i[bt]=e,e.stateNode=i}return Se(e),null;case 13:if(Z(te),i=e.memoizedState,t===null||t.memoizedState!==null&&t.memoizedState.dehydrated!==null){if(ee&&We!==null&&e.mode&1&&!(e.flags&128))Bp(),Pi(),e.flags|=98560,s=!1;else if(s=bs(e),i!==null&&i.dehydrated!==null){if(t===null){if(!s)throw Error(C(318));if(s=e.memoizedState,s=s!==null?s.dehydrated:null,!s)throw Error(C(317));s[bt]=e}else Pi(),!(e.flags&128)&&(e.memoizedState=null),e.flags|=4;Se(e),s=!1}else ft!==null&&(Jl(ft),ft=null),s=!0;if(!s)return e.flags&65536?e:null}return e.flags&128?(e.lanes=n,e):(i=i!==null,i!==(t!==null&&t.memoizedState!==null)&&i&&(e.child.flags|=8192,e.mode&1&&(t===null||te.current&1?pe===0&&(pe=3):ac())),e.updateQueue!==null&&(e.flags|=4),Se(e),null);case 4:return Oi(),Hl(t,e),t===null&&Fr(e.stateNode.containerInfo),Se(e),null;case 10:return Hu(e.type._context),Se(e),null;case 17:return $e(e.type)&&wo(),Se(e),null;case 19:if(Z(te),s=e.memoizedState,s===null)return Se(e),null;if(i=(e.flags&128)!==0,o=s.rendering,o===null)if(i)Qi(s,!1);else{if(pe!==0||t!==null&&t.flags&128)for(t=e.child;t!==null;){if(o=Po(t),o!==null){for(e.flags|=128,Qi(s,!1),i=o.updateQueue,i!==null&&(e.updateQueue=i,e.flags|=4),e.subtreeFlags=0,i=n,n=e.child;n!==null;)s=n,t=i,s.flags&=14680066,o=s.alternate,o===null?(s.childLanes=0,s.lanes=t,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,t=o.dependencies,s.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext}),n=n.sibling;return q(te,te.current&1|2),e.child}t=t.sibling}s.tail!==null&&le()>Mi&&(e.flags|=128,i=!0,Qi(s,!1),e.lanes=4194304)}else{if(!i)if(t=Po(o),t!==null){if(e.flags|=128,i=!0,n=t.updateQueue,n!==null&&(e.updateQueue=n,e.flags|=4),Qi(s,!0),s.tail===null&&s.tailMode==="hidden"&&!o.alternate&&!ee)return Se(e),null}else 2*le()-s.renderingStartTime>Mi&&n!==1073741824&&(e.flags|=128,i=!0,Qi(s,!1),e.lanes=4194304);s.isBackwards?(o.sibling=e.child,e.child=o):(n=s.last,n!==null?n.sibling=o:e.child=o,s.last=o)}return s.tail!==null?(e=s.tail,s.rendering=e,s.tail=e.sibling,s.renderingStartTime=le(),e.sibling=null,n=te.current,q(te,i?n&1|2:n&1),e):(Se(e),null);case 22:case 23:return oc(),i=e.memoizedState!==null,t!==null&&t.memoizedState!==null!==i&&(e.flags|=8192),i&&e.mode&1?He&1073741824&&(Se(e),e.subtreeFlags&6&&(e.flags|=8192)):Se(e),null;case 24:return null;case 25:return null}throw Error(C(156,e.tag))}function uv(t,e){switch($u(e),e.tag){case 1:return $e(e.type)&&wo(),t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 3:return Oi(),Z(Fe),Z(Pe),qu(),t=e.flags,t&65536&&!(t&128)?(e.flags=t&-65537|128,e):null;case 5:return Gu(e),null;case 13:if(Z(te),t=e.memoizedState,t!==null&&t.dehydrated!==null){if(e.alternate===null)throw Error(C(340));Pi()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 19:return Z(te),null;case 4:return Oi(),null;case 10:return Hu(e.type._context),null;case 22:case 23:return oc(),null;case 24:return null;default:return null}}var Es=!1,Ee=!1,cv=typeof WeakSet=="function"?WeakSet:Set,O=null;function mi(t,e){var n=t.ref;if(n!==null)if(typeof n=="function")try{n(null)}catch(i){se(t,e,i)}else n.current=null}function Wl(t,e,n){try{n()}catch(i){se(t,e,i)}}var Rh=!1;function hv(t,e){if(Tl=mo,t=Op(),zu(t)){if("selectionStart"in t)var n={start:t.selectionStart,end:t.selectionEnd};else e:{n=(n=t.ownerDocument)&&n.defaultView||window;var i=n.getSelection&&n.getSelection();if(i&&i.rangeCount!==0){n=i.anchorNode;var r=i.anchorOffset,s=i.focusNode;i=i.focusOffset;try{n.nodeType,s.nodeType}catch{n=null;break e}var o=0,a=-1,l=-1,u=0,c=0,h=t,d=null;t:for(;;){for(var f;h!==n||r!==0&&h.nodeType!==3||(a=o+r),h!==s||i!==0&&h.nodeType!==3||(l=o+i),h.nodeType===3&&(o+=h.nodeValue.length),(f=h.firstChild)!==null;)d=h,h=f;for(;;){if(h===t)break t;if(d===n&&++u===r&&(a=o),d===s&&++c===i&&(l=o),(f=h.nextSibling)!==null)break;h=d,d=h.parentNode}h=f}n=a===-1||l===-1?null:{start:a,end:l}}else n=null}n=n||{start:0,end:0}}else n=null;for(Ol={focusedElem:t,selectionRange:n},mo=!1,O=e;O!==null;)if(e=O,t=e.child,(e.subtreeFlags&1028)!==0&&t!==null)t.return=e,O=t;else for(;O!==null;){e=O;try{var m=e.alternate;if(e.flags&1024)switch(e.tag){case 0:case 11:case 15:break;case 1:if(m!==null){var y=m.memoizedProps,v=m.memoizedState,p=e.stateNode,g=p.getSnapshotBeforeUpdate(e.elementType===e.type?y:ut(e.type,y),v);p.__reactInternalSnapshotBeforeUpdate=g}break;case 3:var _=e.stateNode.containerInfo;_.nodeType===1?_.textContent="":_.nodeType===9&&_.documentElement&&_.removeChild(_.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(C(163))}}catch(w){se(e,e.return,w)}if(t=e.sibling,t!==null){t.return=e.return,O=t;break}O=e.return}return m=Rh,Rh=!1,m}function _r(t,e,n){var i=e.updateQueue;if(i=i!==null?i.lastEffect:null,i!==null){var r=i=i.next;do{if((r.tag&t)===t){var s=r.destroy;r.destroy=void 0,s!==void 0&&Wl(e,n,s)}r=r.next}while(r!==i)}}function ta(t,e){if(e=e.updateQueue,e=e!==null?e.lastEffect:null,e!==null){var n=e=e.next;do{if((n.tag&t)===t){var i=n.create;n.destroy=i()}n=n.next}while(n!==e)}}function Kl(t){var e=t.ref;if(e!==null){var n=t.stateNode;switch(t.tag){case 5:t=n;break;default:t=n}typeof e=="function"?e(t):e.current=t}}function Cg(t){var e=t.alternate;e!==null&&(t.alternate=null,Cg(e)),t.child=null,t.deletions=null,t.sibling=null,t.tag===5&&(e=t.stateNode,e!==null&&(delete e[bt],delete e[Ur],delete e[Rl],delete e[Yy],delete e[Gy])),t.stateNode=null,t.return=null,t.dependencies=null,t.memoizedProps=null,t.memoizedState=null,t.pendingProps=null,t.stateNode=null,t.updateQueue=null}function Eg(t){return t.tag===5||t.tag===3||t.tag===4}function Ih(t){e:for(;;){for(;t.sibling===null;){if(t.return===null||Eg(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.flags&2||t.child===null||t.tag===4)continue e;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function Yl(t,e,n){var i=t.tag;if(i===5||i===6)t=t.stateNode,e?n.nodeType===8?n.parentNode.insertBefore(t,e):n.insertBefore(t,e):(n.nodeType===8?(e=n.parentNode,e.insertBefore(t,n)):(e=n,e.appendChild(t)),n=n._reactRootContainer,n!=null||e.onclick!==null||(e.onclick=_o));else if(i!==4&&(t=t.child,t!==null))for(Yl(t,e,n),t=t.sibling;t!==null;)Yl(t,e,n),t=t.sibling}function Gl(t,e,n){var i=t.tag;if(i===5||i===6)t=t.stateNode,e?n.insertBefore(t,e):n.appendChild(t);else if(i!==4&&(t=t.child,t!==null))for(Gl(t,e,n),t=t.sibling;t!==null;)Gl(t,e,n),t=t.sibling}var we=null,ct=!1;function Bt(t,e,n){for(n=n.child;n!==null;)Pg(t,e,n),n=n.sibling}function Pg(t,e,n){if(St&&typeof St.onCommitFiberUnmount=="function")try{St.onCommitFiberUnmount(Yo,n)}catch{}switch(n.tag){case 5:Ee||mi(n,e);case 6:var i=we,r=ct;we=null,Bt(t,e,n),we=i,ct=r,we!==null&&(ct?(t=we,n=n.stateNode,t.nodeType===8?t.parentNode.removeChild(n):t.removeChild(n)):we.removeChild(n.stateNode));break;case 18:we!==null&&(ct?(t=we,n=n.stateNode,t.nodeType===8?Aa(t.parentNode,n):t.nodeType===1&&Aa(t,n),jr(t)):Aa(we,n.stateNode));break;case 4:i=we,r=ct,we=n.stateNode.containerInfo,ct=!0,Bt(t,e,n),we=i,ct=r;break;case 0:case 11:case 14:case 15:if(!Ee&&(i=n.updateQueue,i!==null&&(i=i.lastEffect,i!==null))){r=i=i.next;do{var s=r,o=s.destroy;s=s.tag,o!==void 0&&(s&2||s&4)&&Wl(n,e,o),r=r.next}while(r!==i)}Bt(t,e,n);break;case 1:if(!Ee&&(mi(n,e),i=n.stateNode,typeof i.componentWillUnmount=="function"))try{i.props=n.memoizedProps,i.state=n.memoizedState,i.componentWillUnmount()}catch(a){se(n,e,a)}Bt(t,e,n);break;case 21:Bt(t,e,n);break;case 22:n.mode&1?(Ee=(i=Ee)||n.memoizedState!==null,Bt(t,e,n),Ee=i):Bt(t,e,n);break;default:Bt(t,e,n)}}function Ah(t){var e=t.updateQueue;if(e!==null){t.updateQueue=null;var n=t.stateNode;n===null&&(n=t.stateNode=new cv),e.forEach(function(i){var r=wv.bind(null,t,i);n.has(i)||(n.add(i),i.then(r,r))})}}function at(t,e){var n=e.deletions;if(n!==null)for(var i=0;i<n.length;i++){var r=n[i];try{var s=t,o=e,a=o;e:for(;a!==null;){switch(a.tag){case 5:we=a.stateNode,ct=!1;break e;case 3:we=a.stateNode.containerInfo,ct=!0;break e;case 4:we=a.stateNode.containerInfo,ct=!0;break e}a=a.return}if(we===null)throw Error(C(160));Pg(s,o,r),we=null,ct=!1;var l=r.alternate;l!==null&&(l.return=null),r.return=null}catch(u){se(r,e,u)}}if(e.subtreeFlags&12854)for(e=e.child;e!==null;)Tg(e,t),e=e.sibling}function Tg(t,e){var n=t.alternate,i=t.flags;switch(t.tag){case 0:case 11:case 14:case 15:if(at(e,t),_t(t),i&4){try{_r(3,t,t.return),ta(3,t)}catch(y){se(t,t.return,y)}try{_r(5,t,t.return)}catch(y){se(t,t.return,y)}}break;case 1:at(e,t),_t(t),i&512&&n!==null&&mi(n,n.return);break;case 5:if(at(e,t),_t(t),i&512&&n!==null&&mi(n,n.return),t.flags&32){var r=t.stateNode;try{Rr(r,"")}catch(y){se(t,t.return,y)}}if(i&4&&(r=t.stateNode,r!=null)){var s=t.memoizedProps,o=n!==null?n.memoizedProps:s,a=t.type,l=t.updateQueue;if(t.updateQueue=null,l!==null)try{a==="input"&&s.type==="radio"&&s.name!=null&&Qf(r,s),vl(a,o);var u=vl(a,s);for(o=0;o<l.length;o+=2){var c=l[o],h=l[o+1];c==="style"?tp(r,h):c==="dangerouslySetInnerHTML"?Zf(r,h):c==="children"?Rr(r,h):Cu(r,c,h,u)}switch(a){case"input":fl(r,s);break;case"textarea":Xf(r,s);break;case"select":var d=r._wrapperState.wasMultiple;r._wrapperState.wasMultiple=!!s.multiple;var f=s.value;f!=null?vi(r,!!s.multiple,f,!1):d!==!!s.multiple&&(s.defaultValue!=null?vi(r,!!s.multiple,s.defaultValue,!0):vi(r,!!s.multiple,s.multiple?[]:"",!1))}r[Ur]=s}catch(y){se(t,t.return,y)}}break;case 6:if(at(e,t),_t(t),i&4){if(t.stateNode===null)throw Error(C(162));r=t.stateNode,s=t.memoizedProps;try{r.nodeValue=s}catch(y){se(t,t.return,y)}}break;case 3:if(at(e,t),_t(t),i&4&&n!==null&&n.memoizedState.isDehydrated)try{jr(e.containerInfo)}catch(y){se(t,t.return,y)}break;case 4:at(e,t),_t(t);break;case 13:at(e,t),_t(t),r=t.child,r.flags&8192&&(s=r.memoizedState!==null,r.stateNode.isHidden=s,!s||r.alternate!==null&&r.alternate.memoizedState!==null||(rc=le())),i&4&&Ah(t);break;case 22:if(c=n!==null&&n.memoizedState!==null,t.mode&1?(Ee=(u=Ee)||c,at(e,t),Ee=u):at(e,t),_t(t),i&8192){if(u=t.memoizedState!==null,(t.stateNode.isHidden=u)&&!c&&t.mode&1)for(O=t,c=t.child;c!==null;){for(h=O=c;O!==null;){switch(d=O,f=d.child,d.tag){case 0:case 11:case 14:case 15:_r(4,d,d.return);break;case 1:mi(d,d.return);var m=d.stateNode;if(typeof m.componentWillUnmount=="function"){i=d,n=d.return;try{e=i,m.props=e.memoizedProps,m.state=e.memoizedState,m.componentWillUnmount()}catch(y){se(i,n,y)}}break;case 5:mi(d,d.return);break;case 22:if(d.memoizedState!==null){jh(h);continue}}f!==null?(f.return=d,O=f):jh(h)}c=c.sibling}e:for(c=null,h=t;;){if(h.tag===5){if(c===null){c=h;try{r=h.stateNode,u?(s=r.style,typeof s.setProperty=="function"?s.setProperty("display","none","important"):s.display="none"):(a=h.stateNode,l=h.memoizedProps.style,o=l!=null&&l.hasOwnProperty("display")?l.display:null,a.style.display=ep("display",o))}catch(y){se(t,t.return,y)}}}else if(h.tag===6){if(c===null)try{h.stateNode.nodeValue=u?"":h.memoizedProps}catch(y){se(t,t.return,y)}}else if((h.tag!==22&&h.tag!==23||h.memoizedState===null||h===t)&&h.child!==null){h.child.return=h,h=h.child;continue}if(h===t)break e;for(;h.sibling===null;){if(h.return===null||h.return===t)break e;c===h&&(c=null),h=h.return}c===h&&(c=null),h.sibling.return=h.return,h=h.sibling}}break;case 19:at(e,t),_t(t),i&4&&Ah(t);break;case 21:break;default:at(e,t),_t(t)}}function _t(t){var e=t.flags;if(e&2){try{e:{for(var n=t.return;n!==null;){if(Eg(n)){var i=n;break e}n=n.return}throw Error(C(160))}switch(i.tag){case 5:var r=i.stateNode;i.flags&32&&(Rr(r,""),i.flags&=-33);var s=Ih(t);Gl(t,s,r);break;case 3:case 4:var o=i.stateNode.containerInfo,a=Ih(t);Yl(t,a,o);break;default:throw Error(C(161))}}catch(l){se(t,t.return,l)}t.flags&=-3}e&4096&&(t.flags&=-4097)}function dv(t,e,n){O=t,Og(t)}function Og(t,e,n){for(var i=(t.mode&1)!==0;O!==null;){var r=O,s=r.child;if(r.tag===22&&i){var o=r.memoizedState!==null||Es;if(!o){var a=r.alternate,l=a!==null&&a.memoizedState!==null||Ee;a=Es;var u=Ee;if(Es=o,(Ee=l)&&!u)for(O=r;O!==null;)o=O,l=o.child,o.tag===22&&o.memoizedState!==null?Nh(r):l!==null?(l.return=o,O=l):Nh(r);for(;s!==null;)O=s,Og(s),s=s.sibling;O=r,Es=a,Ee=u}Dh(t)}else r.subtreeFlags&8772&&s!==null?(s.return=r,O=s):Dh(t)}}function Dh(t){for(;O!==null;){var e=O;if(e.flags&8772){var n=e.alternate;try{if(e.flags&8772)switch(e.tag){case 0:case 11:case 15:Ee||ta(5,e);break;case 1:var i=e.stateNode;if(e.flags&4&&!Ee)if(n===null)i.componentDidMount();else{var r=e.elementType===e.type?n.memoizedProps:ut(e.type,n.memoizedProps);i.componentDidUpdate(r,n.memoizedState,i.__reactInternalSnapshotBeforeUpdate)}var s=e.updateQueue;s!==null&&_h(e,s,i);break;case 3:var o=e.updateQueue;if(o!==null){if(n=null,e.child!==null)switch(e.child.tag){case 5:n=e.child.stateNode;break;case 1:n=e.child.stateNode}_h(e,o,n)}break;case 5:var a=e.stateNode;if(n===null&&e.flags&4){n=a;var l=e.memoizedProps;switch(e.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(e.memoizedState===null){var u=e.alternate;if(u!==null){var c=u.memoizedState;if(c!==null){var h=c.dehydrated;h!==null&&jr(h)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(C(163))}Ee||e.flags&512&&Kl(e)}catch(d){se(e,e.return,d)}}if(e===t){O=null;break}if(n=e.sibling,n!==null){n.return=e.return,O=n;break}O=e.return}}function jh(t){for(;O!==null;){var e=O;if(e===t){O=null;break}var n=e.sibling;if(n!==null){n.return=e.return,O=n;break}O=e.return}}function Nh(t){for(;O!==null;){var e=O;try{switch(e.tag){case 0:case 11:case 15:var n=e.return;try{ta(4,e)}catch(l){se(e,n,l)}break;case 1:var i=e.stateNode;if(typeof i.componentDidMount=="function"){var r=e.return;try{i.componentDidMount()}catch(l){se(e,r,l)}}var s=e.return;try{Kl(e)}catch(l){se(e,s,l)}break;case 5:var o=e.return;try{Kl(e)}catch(l){se(e,o,l)}}}catch(l){se(e,e.return,l)}if(e===t){O=null;break}var a=e.sibling;if(a!==null){a.return=e.return,O=a;break}O=e.return}}var fv=Math.ceil,Lo=Ut.ReactCurrentDispatcher,nc=Ut.ReactCurrentOwner,rt=Ut.ReactCurrentBatchConfig,F=0,_e=null,he=null,xe=0,He=0,yi=_n(0),pe=0,Yr=null,Wn=0,na=0,ic=0,wr=null,je=null,rc=0,Mi=1/0,Lt=null,Mo=!1,ql=null,cn=null,Ps=!1,Jt=null,Ro=0,xr=0,Ql=null,io=-1,ro=0;function Re(){return F&6?le():io!==-1?io:io=le()}function hn(t){return t.mode&1?F&2&&xe!==0?xe&-xe:Qy.transition!==null?(ro===0&&(ro=fp()),ro):(t=H,t!==0||(t=window.event,t=t===void 0?16:wp(t.type)),t):1}function gt(t,e,n,i){if(50<xr)throw xr=0,Ql=null,Error(C(185));rs(t,n,i),(!(F&2)||t!==_e)&&(t===_e&&(!(F&2)&&(na|=n),pe===4&&qt(t,xe)),Ue(t,i),n===1&&F===0&&!(e.mode&1)&&(Mi=le()+500,Jo&&wn()))}function Ue(t,e){var n=t.callbackNode;Q0(t,e);var i=go(t,t===_e?xe:0);if(i===0)n!==null&&Kc(n),t.callbackNode=null,t.callbackPriority=0;else if(e=i&-i,t.callbackPriority!==e){if(n!=null&&Kc(n),e===1)t.tag===0?qy(zh.bind(null,t)):Fp(zh.bind(null,t)),Wy(function(){!(F&6)&&wn()}),n=null;else{switch(pp(i)){case 1:n=Lu;break;case 4:n=hp;break;case 16:n=po;break;case 536870912:n=dp;break;default:n=po}n=Ng(n,Lg.bind(null,t))}t.callbackPriority=e,t.callbackNode=n}}function Lg(t,e){if(io=-1,ro=0,F&6)throw Error(C(327));var n=t.callbackNode;if(bi()&&t.callbackNode!==n)return null;var i=go(t,t===_e?xe:0);if(i===0)return null;if(i&30||i&t.expiredLanes||e)e=Io(t,i);else{e=i;var r=F;F|=2;var s=Rg();(_e!==t||xe!==e)&&(Lt=null,Mi=le()+500,zn(t,e));do try{mv();break}catch(a){Mg(t,a)}while(!0);Vu(),Lo.current=s,F=r,he!==null?e=0:(_e=null,xe=0,e=pe)}if(e!==0){if(e===2&&(r=bl(t),r!==0&&(i=r,e=Xl(t,r))),e===1)throw n=Yr,zn(t,0),qt(t,i),Ue(t,le()),n;if(e===6)qt(t,i);else{if(r=t.current.alternate,!(i&30)&&!pv(r)&&(e=Io(t,i),e===2&&(s=bl(t),s!==0&&(i=s,e=Xl(t,s))),e===1))throw n=Yr,zn(t,0),qt(t,i),Ue(t,le()),n;switch(t.finishedWork=r,t.finishedLanes=i,e){case 0:case 1:throw Error(C(345));case 2:On(t,je,Lt);break;case 3:if(qt(t,i),(i&130023424)===i&&(e=rc+500-le(),10<e)){if(go(t,0)!==0)break;if(r=t.suspendedLanes,(r&i)!==i){Re(),t.pingedLanes|=t.suspendedLanes&r;break}t.timeoutHandle=Ml(On.bind(null,t,je,Lt),e);break}On(t,je,Lt);break;case 4:if(qt(t,i),(i&4194240)===i)break;for(e=t.eventTimes,r=-1;0<i;){var o=31-pt(i);s=1<<o,o=e[o],o>r&&(r=o),i&=~s}if(i=r,i=le()-i,i=(120>i?120:480>i?480:1080>i?1080:1920>i?1920:3e3>i?3e3:4320>i?4320:1960*fv(i/1960))-i,10<i){t.timeoutHandle=Ml(On.bind(null,t,je,Lt),i);break}On(t,je,Lt);break;case 5:On(t,je,Lt);break;default:throw Error(C(329))}}}return Ue(t,le()),t.callbackNode===n?Lg.bind(null,t):null}function Xl(t,e){var n=wr;return t.current.memoizedState.isDehydrated&&(zn(t,e).flags|=256),t=Io(t,e),t!==2&&(e=je,je=n,e!==null&&Jl(e)),t}function Jl(t){je===null?je=t:je.push.apply(je,t)}function pv(t){for(var e=t;;){if(e.flags&16384){var n=e.updateQueue;if(n!==null&&(n=n.stores,n!==null))for(var i=0;i<n.length;i++){var r=n[i],s=r.getSnapshot;r=r.value;try{if(!yt(s(),r))return!1}catch{return!1}}}if(n=e.child,e.subtreeFlags&16384&&n!==null)n.return=e,e=n;else{if(e===t)break;for(;e.sibling===null;){if(e.return===null||e.return===t)return!0;e=e.return}e.sibling.return=e.return,e=e.sibling}}return!0}function qt(t,e){for(e&=~ic,e&=~na,t.suspendedLanes|=e,t.pingedLanes&=~e,t=t.expirationTimes;0<e;){var n=31-pt(e),i=1<<n;t[n]=-1,e&=~i}}function zh(t){if(F&6)throw Error(C(327));bi();var e=go(t,0);if(!(e&1))return Ue(t,le()),null;var n=Io(t,e);if(t.tag!==0&&n===2){var i=bl(t);i!==0&&(e=i,n=Xl(t,i))}if(n===1)throw n=Yr,zn(t,0),qt(t,e),Ue(t,le()),n;if(n===6)throw Error(C(345));return t.finishedWork=t.current.alternate,t.finishedLanes=e,On(t,je,Lt),Ue(t,le()),null}function sc(t,e){var n=F;F|=1;try{return t(e)}finally{F=n,F===0&&(Mi=le()+500,Jo&&wn())}}function Kn(t){Jt!==null&&Jt.tag===0&&!(F&6)&&bi();var e=F;F|=1;var n=rt.transition,i=H;try{if(rt.transition=null,H=1,t)return t()}finally{H=i,rt.transition=n,F=e,!(F&6)&&wn()}}function oc(){He=yi.current,Z(yi)}function zn(t,e){t.finishedWork=null,t.finishedLanes=0;var n=t.timeoutHandle;if(n!==-1&&(t.timeoutHandle=-1,Hy(n)),he!==null)for(n=he.return;n!==null;){var i=n;switch($u(i),i.tag){case 1:i=i.type.childContextTypes,i!=null&&wo();break;case 3:Oi(),Z(Fe),Z(Pe),qu();break;case 5:Gu(i);break;case 4:Oi();break;case 13:Z(te);break;case 19:Z(te);break;case 10:Hu(i.type._context);break;case 22:case 23:oc()}n=n.return}if(_e=t,he=t=dn(t.current,null),xe=He=e,pe=0,Yr=null,ic=na=Wn=0,je=wr=null,Dn!==null){for(e=0;e<Dn.length;e++)if(n=Dn[e],i=n.interleaved,i!==null){n.interleaved=null;var r=i.next,s=n.pending;if(s!==null){var o=s.next;s.next=r,i.next=o}n.pending=i}Dn=null}return t}function Mg(t,e){do{var n=he;try{if(Vu(),eo.current=Oo,To){for(var i=ne.memoizedState;i!==null;){var r=i.queue;r!==null&&(r.pending=null),i=i.next}To=!1}if(Hn=0,ye=fe=ne=null,vr=!1,Hr=0,nc.current=null,n===null||n.return===null){pe=1,Yr=e,he=null;break}e:{var s=t,o=n.return,a=n,l=e;if(e=xe,a.flags|=32768,l!==null&&typeof l=="object"&&typeof l.then=="function"){var u=l,c=a,h=c.tag;if(!(c.mode&1)&&(h===0||h===11||h===15)){var d=c.alternate;d?(c.updateQueue=d.updateQueue,c.memoizedState=d.memoizedState,c.lanes=d.lanes):(c.updateQueue=null,c.memoizedState=null)}var f=Ch(o);if(f!==null){f.flags&=-257,Eh(f,o,a,s,e),f.mode&1&&Sh(s,u,e),e=f,l=u;var m=e.updateQueue;if(m===null){var y=new Set;y.add(l),e.updateQueue=y}else m.add(l);break e}else{if(!(e&1)){Sh(s,u,e),ac();break e}l=Error(C(426))}}else if(ee&&a.mode&1){var v=Ch(o);if(v!==null){!(v.flags&65536)&&(v.flags|=256),Eh(v,o,a,s,e),Uu(Li(l,a));break e}}s=l=Li(l,a),pe!==4&&(pe=2),wr===null?wr=[s]:wr.push(s),s=o;do{switch(s.tag){case 3:s.flags|=65536,e&=-e,s.lanes|=e;var p=pg(s,l,e);vh(s,p);break e;case 1:a=l;var g=s.type,_=s.stateNode;if(!(s.flags&128)&&(typeof g.getDerivedStateFromError=="function"||_!==null&&typeof _.componentDidCatch=="function"&&(cn===null||!cn.has(_)))){s.flags|=65536,e&=-e,s.lanes|=e;var w=gg(s,a,e);vh(s,w);break e}}s=s.return}while(s!==null)}Ag(n)}catch(x){e=x,he===n&&n!==null&&(he=n=n.return);continue}break}while(!0)}function Rg(){var t=Lo.current;return Lo.current=Oo,t===null?Oo:t}function ac(){(pe===0||pe===3||pe===2)&&(pe=4),_e===null||!(Wn&268435455)&&!(na&268435455)||qt(_e,xe)}function Io(t,e){var n=F;F|=2;var i=Rg();(_e!==t||xe!==e)&&(Lt=null,zn(t,e));do try{gv();break}catch(r){Mg(t,r)}while(!0);if(Vu(),F=n,Lo.current=i,he!==null)throw Error(C(261));return _e=null,xe=0,pe}function gv(){for(;he!==null;)Ig(he)}function mv(){for(;he!==null&&!U0();)Ig(he)}function Ig(t){var e=jg(t.alternate,t,He);t.memoizedProps=t.pendingProps,e===null?Ag(t):he=e,nc.current=null}function Ag(t){var e=t;do{var n=e.alternate;if(t=e.return,e.flags&32768){if(n=uv(n,e),n!==null){n.flags&=32767,he=n;return}if(t!==null)t.flags|=32768,t.subtreeFlags=0,t.deletions=null;else{pe=6,he=null;return}}else if(n=lv(n,e,He),n!==null){he=n;return}if(e=e.sibling,e!==null){he=e;return}he=e=t}while(e!==null);pe===0&&(pe=5)}function On(t,e,n){var i=H,r=rt.transition;try{rt.transition=null,H=1,yv(t,e,n,i)}finally{rt.transition=r,H=i}return null}function yv(t,e,n,i){do bi();while(Jt!==null);if(F&6)throw Error(C(327));n=t.finishedWork;var r=t.finishedLanes;if(n===null)return null;if(t.finishedWork=null,t.finishedLanes=0,n===t.current)throw Error(C(177));t.callbackNode=null,t.callbackPriority=0;var s=n.lanes|n.childLanes;if(X0(t,s),t===_e&&(he=_e=null,xe=0),!(n.subtreeFlags&2064)&&!(n.flags&2064)||Ps||(Ps=!0,Ng(po,function(){return bi(),null})),s=(n.flags&15990)!==0,n.subtreeFlags&15990||s){s=rt.transition,rt.transition=null;var o=H;H=1;var a=F;F|=4,nc.current=null,hv(t,n),Tg(n,t),Ny(Ol),mo=!!Tl,Ol=Tl=null,t.current=n,dv(n),B0(),F=a,H=o,rt.transition=s}else t.current=n;if(Ps&&(Ps=!1,Jt=t,Ro=r),s=t.pendingLanes,s===0&&(cn=null),W0(n.stateNode),Ue(t,le()),e!==null)for(i=t.onRecoverableError,n=0;n<e.length;n++)r=e[n],i(r.value,{componentStack:r.stack,digest:r.digest});if(Mo)throw Mo=!1,t=ql,ql=null,t;return Ro&1&&t.tag!==0&&bi(),s=t.pendingLanes,s&1?t===Ql?xr++:(xr=0,Ql=t):xr=0,wn(),null}function bi(){if(Jt!==null){var t=pp(Ro),e=rt.transition,n=H;try{if(rt.transition=null,H=16>t?16:t,Jt===null)var i=!1;else{if(t=Jt,Jt=null,Ro=0,F&6)throw Error(C(331));var r=F;for(F|=4,O=t.current;O!==null;){var s=O,o=s.child;if(O.flags&16){var a=s.deletions;if(a!==null){for(var l=0;l<a.length;l++){var u=a[l];for(O=u;O!==null;){var c=O;switch(c.tag){case 0:case 11:case 15:_r(8,c,s)}var h=c.child;if(h!==null)h.return=c,O=h;else for(;O!==null;){c=O;var d=c.sibling,f=c.return;if(Cg(c),c===u){O=null;break}if(d!==null){d.return=f,O=d;break}O=f}}}var m=s.alternate;if(m!==null){var y=m.child;if(y!==null){m.child=null;do{var v=y.sibling;y.sibling=null,y=v}while(y!==null)}}O=s}}if(s.subtreeFlags&2064&&o!==null)o.return=s,O=o;else e:for(;O!==null;){if(s=O,s.flags&2048)switch(s.tag){case 0:case 11:case 15:_r(9,s,s.return)}var p=s.sibling;if(p!==null){p.return=s.return,O=p;break e}O=s.return}}var g=t.current;for(O=g;O!==null;){o=O;var _=o.child;if(o.subtreeFlags&2064&&_!==null)_.return=o,O=_;else e:for(o=g;O!==null;){if(a=O,a.flags&2048)try{switch(a.tag){case 0:case 11:case 15:ta(9,a)}}catch(x){se(a,a.return,x)}if(a===o){O=null;break e}var w=a.sibling;if(w!==null){w.return=a.return,O=w;break e}O=a.return}}if(F=r,wn(),St&&typeof St.onPostCommitFiberRoot=="function")try{St.onPostCommitFiberRoot(Yo,t)}catch{}i=!0}return i}finally{H=n,rt.transition=e}}return!1}function Fh(t,e,n){e=Li(n,e),e=pg(t,e,1),t=un(t,e,1),e=Re(),t!==null&&(rs(t,1,e),Ue(t,e))}function se(t,e,n){if(t.tag===3)Fh(t,t,n);else for(;e!==null;){if(e.tag===3){Fh(e,t,n);break}else if(e.tag===1){var i=e.stateNode;if(typeof e.type.getDerivedStateFromError=="function"||typeof i.componentDidCatch=="function"&&(cn===null||!cn.has(i))){t=Li(n,t),t=gg(e,t,1),e=un(e,t,1),t=Re(),e!==null&&(rs(e,1,t),Ue(e,t));break}}e=e.return}}function vv(t,e,n){var i=t.pingCache;i!==null&&i.delete(e),e=Re(),t.pingedLanes|=t.suspendedLanes&n,_e===t&&(xe&n)===n&&(pe===4||pe===3&&(xe&130023424)===xe&&500>le()-rc?zn(t,0):ic|=n),Ue(t,e)}function Dg(t,e){e===0&&(t.mode&1?(e=ys,ys<<=1,!(ys&130023424)&&(ys=4194304)):e=1);var n=Re();t=Ft(t,e),t!==null&&(rs(t,e,n),Ue(t,n))}function _v(t){var e=t.memoizedState,n=0;e!==null&&(n=e.retryLane),Dg(t,n)}function wv(t,e){var n=0;switch(t.tag){case 13:var i=t.stateNode,r=t.memoizedState;r!==null&&(n=r.retryLane);break;case 19:i=t.stateNode;break;default:throw Error(C(314))}i!==null&&i.delete(e),Dg(t,n)}var jg;jg=function(t,e,n){if(t!==null)if(t.memoizedProps!==e.pendingProps||Fe.current)ze=!0;else{if(!(t.lanes&n)&&!(e.flags&128))return ze=!1,av(t,e,n);ze=!!(t.flags&131072)}else ze=!1,ee&&e.flags&1048576&&$p(e,bo,e.index);switch(e.lanes=0,e.tag){case 2:var i=e.type;no(t,e),t=e.pendingProps;var r=Ei(e,Pe.current);ki(e,n),r=Xu(null,e,i,t,r,n);var s=Ju();return e.flags|=1,typeof r=="object"&&r!==null&&typeof r.render=="function"&&r.$$typeof===void 0?(e.tag=1,e.memoizedState=null,e.updateQueue=null,$e(i)?(s=!0,xo(e)):s=!1,e.memoizedState=r.state!==null&&r.state!==void 0?r.state:null,Ku(e),r.updater=ea,e.stateNode=r,r._reactInternals=e,zl(e,i,t,n),e=Ul(null,e,i,!0,s,n)):(e.tag=0,ee&&s&&Fu(e),Le(null,e,r,n),e=e.child),e;case 16:i=e.elementType;e:{switch(no(t,e),t=e.pendingProps,r=i._init,i=r(i._payload),e.type=i,r=e.tag=kv(i),t=ut(i,t),r){case 0:e=$l(null,e,i,t,n);break e;case 1:e=Oh(null,e,i,t,n);break e;case 11:e=Ph(null,e,i,t,n);break e;case 14:e=Th(null,e,i,ut(i.type,t),n);break e}throw Error(C(306,i,""))}return e;case 0:return i=e.type,r=e.pendingProps,r=e.elementType===i?r:ut(i,r),$l(t,e,i,r,n);case 1:return i=e.type,r=e.pendingProps,r=e.elementType===i?r:ut(i,r),Oh(t,e,i,r,n);case 3:e:{if(_g(e),t===null)throw Error(C(387));i=e.pendingProps,s=e.memoizedState,r=s.element,Kp(t,e),Eo(e,i,null,n);var o=e.memoizedState;if(i=o.element,s.isDehydrated)if(s={element:i,isDehydrated:!1,cache:o.cache,pendingSuspenseBoundaries:o.pendingSuspenseBoundaries,transitions:o.transitions},e.updateQueue.baseState=s,e.memoizedState=s,e.flags&256){r=Li(Error(C(423)),e),e=Lh(t,e,i,n,r);break e}else if(i!==r){r=Li(Error(C(424)),e),e=Lh(t,e,i,n,r);break e}else for(We=ln(e.stateNode.containerInfo.firstChild),Ye=e,ee=!0,ft=null,n=Hp(e,null,i,n),e.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(Pi(),i===r){e=$t(t,e,n);break e}Le(t,e,i,n)}e=e.child}return e;case 5:return Yp(e),t===null&&Dl(e),i=e.type,r=e.pendingProps,s=t!==null?t.memoizedProps:null,o=r.children,Ll(i,r)?o=null:s!==null&&Ll(i,s)&&(e.flags|=32),vg(t,e),Le(t,e,o,n),e.child;case 6:return t===null&&Dl(e),null;case 13:return wg(t,e,n);case 4:return Yu(e,e.stateNode.containerInfo),i=e.pendingProps,t===null?e.child=Ti(e,null,i,n):Le(t,e,i,n),e.child;case 11:return i=e.type,r=e.pendingProps,r=e.elementType===i?r:ut(i,r),Ph(t,e,i,r,n);case 7:return Le(t,e,e.pendingProps,n),e.child;case 8:return Le(t,e,e.pendingProps.children,n),e.child;case 12:return Le(t,e,e.pendingProps.children,n),e.child;case 10:e:{if(i=e.type._context,r=e.pendingProps,s=e.memoizedProps,o=r.value,q(So,i._currentValue),i._currentValue=o,s!==null)if(yt(s.value,o)){if(s.children===r.children&&!Fe.current){e=$t(t,e,n);break e}}else for(s=e.child,s!==null&&(s.return=e);s!==null;){var a=s.dependencies;if(a!==null){o=s.child;for(var l=a.firstContext;l!==null;){if(l.context===i){if(s.tag===1){l=jt(-1,n&-n),l.tag=2;var u=s.updateQueue;if(u!==null){u=u.shared;var c=u.pending;c===null?l.next=l:(l.next=c.next,c.next=l),u.pending=l}}s.lanes|=n,l=s.alternate,l!==null&&(l.lanes|=n),jl(s.return,n,e),a.lanes|=n;break}l=l.next}}else if(s.tag===10)o=s.type===e.type?null:s.child;else if(s.tag===18){if(o=s.return,o===null)throw Error(C(341));o.lanes|=n,a=o.alternate,a!==null&&(a.lanes|=n),jl(o,n,e),o=s.sibling}else o=s.child;if(o!==null)o.return=s;else for(o=s;o!==null;){if(o===e){o=null;break}if(s=o.sibling,s!==null){s.return=o.return,o=s;break}o=o.return}s=o}Le(t,e,r.children,n),e=e.child}return e;case 9:return r=e.type,i=e.pendingProps.children,ki(e,n),r=st(r),i=i(r),e.flags|=1,Le(t,e,i,n),e.child;case 14:return i=e.type,r=ut(i,e.pendingProps),r=ut(i.type,r),Th(t,e,i,r,n);case 15:return mg(t,e,e.type,e.pendingProps,n);case 17:return i=e.type,r=e.pendingProps,r=e.elementType===i?r:ut(i,r),no(t,e),e.tag=1,$e(i)?(t=!0,xo(e)):t=!1,ki(e,n),fg(e,i,r),zl(e,i,r,n),Ul(null,e,i,!0,t,n);case 19:return xg(t,e,n);case 22:return yg(t,e,n)}throw Error(C(156,e.tag))};function Ng(t,e){return cp(t,e)}function xv(t,e,n,i){this.tag=t,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=e,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=i,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function nt(t,e,n,i){return new xv(t,e,n,i)}function lc(t){return t=t.prototype,!(!t||!t.isReactComponent)}function kv(t){if(typeof t=="function")return lc(t)?1:0;if(t!=null){if(t=t.$$typeof,t===Pu)return 11;if(t===Tu)return 14}return 2}function dn(t,e){var n=t.alternate;return n===null?(n=nt(t.tag,e,t.key,t.mode),n.elementType=t.elementType,n.type=t.type,n.stateNode=t.stateNode,n.alternate=t,t.alternate=n):(n.pendingProps=e,n.type=t.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=t.flags&14680064,n.childLanes=t.childLanes,n.lanes=t.lanes,n.child=t.child,n.memoizedProps=t.memoizedProps,n.memoizedState=t.memoizedState,n.updateQueue=t.updateQueue,e=t.dependencies,n.dependencies=e===null?null:{lanes:e.lanes,firstContext:e.firstContext},n.sibling=t.sibling,n.index=t.index,n.ref=t.ref,n}function so(t,e,n,i,r,s){var o=2;if(i=t,typeof t=="function")lc(t)&&(o=1);else if(typeof t=="string")o=5;else e:switch(t){case ai:return Fn(n.children,r,s,e);case Eu:o=8,r|=8;break;case ll:return t=nt(12,n,e,r|2),t.elementType=ll,t.lanes=s,t;case ul:return t=nt(13,n,e,r),t.elementType=ul,t.lanes=s,t;case cl:return t=nt(19,n,e,r),t.elementType=cl,t.lanes=s,t;case Yf:return ia(n,r,s,e);default:if(typeof t=="object"&&t!==null)switch(t.$$typeof){case Wf:o=10;break e;case Kf:o=9;break e;case Pu:o=11;break e;case Tu:o=14;break e;case Wt:o=16,i=null;break e}throw Error(C(130,t==null?t:typeof t,""))}return e=nt(o,n,e,r),e.elementType=t,e.type=i,e.lanes=s,e}function Fn(t,e,n,i){return t=nt(7,t,i,e),t.lanes=n,t}function ia(t,e,n,i){return t=nt(22,t,i,e),t.elementType=Yf,t.lanes=n,t.stateNode={isHidden:!1},t}function Ba(t,e,n){return t=nt(6,t,null,e),t.lanes=n,t}function Va(t,e,n){return e=nt(4,t.children!==null?t.children:[],t.key,e),e.lanes=n,e.stateNode={containerInfo:t.containerInfo,pendingChildren:null,implementation:t.implementation},e}function bv(t,e,n,i,r){this.tag=e,this.containerInfo=t,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=ba(0),this.expirationTimes=ba(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=ba(0),this.identifierPrefix=i,this.onRecoverableError=r,this.mutableSourceEagerHydrationData=null}function uc(t,e,n,i,r,s,o,a,l){return t=new bv(t,e,n,a,l),e===1?(e=1,s===!0&&(e|=8)):e=0,s=nt(3,null,null,e),t.current=s,s.stateNode=t,s.memoizedState={element:i,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},Ku(s),t}function Sv(t,e,n){var i=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:oi,key:i==null?null:""+i,children:t,containerInfo:e,implementation:n}}function zg(t){if(!t)return gn;t=t._reactInternals;e:{if(qn(t)!==t||t.tag!==1)throw Error(C(170));var e=t;do{switch(e.tag){case 3:e=e.stateNode.context;break e;case 1:if($e(e.type)){e=e.stateNode.__reactInternalMemoizedMergedChildContext;break e}}e=e.return}while(e!==null);throw Error(C(171))}if(t.tag===1){var n=t.type;if($e(n))return zp(t,n,e)}return e}function Fg(t,e,n,i,r,s,o,a,l){return t=uc(n,i,!0,t,r,s,o,a,l),t.context=zg(null),n=t.current,i=Re(),r=hn(n),s=jt(i,r),s.callback=e??null,un(n,s,r),t.current.lanes=r,rs(t,r,i),Ue(t,i),t}function ra(t,e,n,i){var r=e.current,s=Re(),o=hn(r);return n=zg(n),e.context===null?e.context=n:e.pendingContext=n,e=jt(s,o),e.payload={element:t},i=i===void 0?null:i,i!==null&&(e.callback=i),t=un(r,e,o),t!==null&&(gt(t,r,o,s),Zs(t,r,o)),o}function Ao(t){if(t=t.current,!t.child)return null;switch(t.child.tag){case 5:return t.child.stateNode;default:return t.child.stateNode}}function $h(t,e){if(t=t.memoizedState,t!==null&&t.dehydrated!==null){var n=t.retryLane;t.retryLane=n!==0&&n<e?n:e}}function cc(t,e){$h(t,e),(t=t.alternate)&&$h(t,e)}function Cv(){return null}var $g=typeof reportError=="function"?reportError:function(t){console.error(t)};function hc(t){this._internalRoot=t}sa.prototype.render=hc.prototype.render=function(t){var e=this._internalRoot;if(e===null)throw Error(C(409));ra(t,e,null,null)};sa.prototype.unmount=hc.prototype.unmount=function(){var t=this._internalRoot;if(t!==null){this._internalRoot=null;var e=t.containerInfo;Kn(function(){ra(null,t,null,null)}),e[zt]=null}};function sa(t){this._internalRoot=t}sa.prototype.unstable_scheduleHydration=function(t){if(t){var e=yp();t={blockedOn:null,target:t,priority:e};for(var n=0;n<Gt.length&&e!==0&&e<Gt[n].priority;n++);Gt.splice(n,0,t),n===0&&_p(t)}};function dc(t){return!(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11)}function oa(t){return!(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11&&(t.nodeType!==8||t.nodeValue!==" react-mount-point-unstable "))}function Uh(){}function Ev(t,e,n,i,r){if(r){if(typeof i=="function"){var s=i;i=function(){var u=Ao(o);s.call(u)}}var o=Fg(e,i,t,0,null,!1,!1,"",Uh);return t._reactRootContainer=o,t[zt]=o.current,Fr(t.nodeType===8?t.parentNode:t),Kn(),o}for(;r=t.lastChild;)t.removeChild(r);if(typeof i=="function"){var a=i;i=function(){var u=Ao(l);a.call(u)}}var l=uc(t,0,!1,null,null,!1,!1,"",Uh);return t._reactRootContainer=l,t[zt]=l.current,Fr(t.nodeType===8?t.parentNode:t),Kn(function(){ra(e,l,n,i)}),l}function aa(t,e,n,i,r){var s=n._reactRootContainer;if(s){var o=s;if(typeof r=="function"){var a=r;r=function(){var l=Ao(o);a.call(l)}}ra(e,o,t,r)}else o=Ev(n,e,t,r,i);return Ao(o)}gp=function(t){switch(t.tag){case 3:var e=t.stateNode;if(e.current.memoizedState.isDehydrated){var n=or(e.pendingLanes);n!==0&&(Mu(e,n|1),Ue(e,le()),!(F&6)&&(Mi=le()+500,wn()))}break;case 13:Kn(function(){var i=Ft(t,1);if(i!==null){var r=Re();gt(i,t,1,r)}}),cc(t,1)}};Ru=function(t){if(t.tag===13){var e=Ft(t,134217728);if(e!==null){var n=Re();gt(e,t,134217728,n)}cc(t,134217728)}};mp=function(t){if(t.tag===13){var e=hn(t),n=Ft(t,e);if(n!==null){var i=Re();gt(n,t,e,i)}cc(t,e)}};yp=function(){return H};vp=function(t,e){var n=H;try{return H=t,e()}finally{H=n}};wl=function(t,e,n){switch(e){case"input":if(fl(t,n),e=n.name,n.type==="radio"&&e!=null){for(n=t;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll("input[name="+JSON.stringify(""+e)+'][type="radio"]'),e=0;e<n.length;e++){var i=n[e];if(i!==t&&i.form===t.form){var r=Xo(i);if(!r)throw Error(C(90));qf(i),fl(i,r)}}}break;case"textarea":Xf(t,n);break;case"select":e=n.value,e!=null&&vi(t,!!n.multiple,e,!1)}};rp=sc;sp=Kn;var Pv={usingClientEntryPoint:!1,Events:[os,hi,Xo,np,ip,sc]},Xi={findFiberByHostInstance:An,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},Tv={bundleType:Xi.bundleType,version:Xi.version,rendererPackageName:Xi.rendererPackageName,rendererConfig:Xi.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:Ut.ReactCurrentDispatcher,findHostInstanceByFiber:function(t){return t=lp(t),t===null?null:t.stateNode},findFiberByHostInstance:Xi.findFiberByHostInstance||Cv,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.3.1-next-f1338f8080-20240426"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var Ts=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!Ts.isDisabled&&Ts.supportsFiber)try{Yo=Ts.inject(Tv),St=Ts}catch{}}Qe.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=Pv;Qe.createPortal=function(t,e){var n=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!dc(e))throw Error(C(200));return Sv(t,e,null,n)};Qe.createRoot=function(t,e){if(!dc(t))throw Error(C(299));var n=!1,i="",r=$g;return e!=null&&(e.unstable_strictMode===!0&&(n=!0),e.identifierPrefix!==void 0&&(i=e.identifierPrefix),e.onRecoverableError!==void 0&&(r=e.onRecoverableError)),e=uc(t,1,!1,null,null,n,!1,i,r),t[zt]=e.current,Fr(t.nodeType===8?t.parentNode:t),new hc(e)};Qe.findDOMNode=function(t){if(t==null)return null;if(t.nodeType===1)return t;var e=t._reactInternals;if(e===void 0)throw typeof t.render=="function"?Error(C(188)):(t=Object.keys(t).join(","),Error(C(268,t)));return t=lp(e),t=t===null?null:t.stateNode,t};Qe.flushSync=function(t){return Kn(t)};Qe.hydrate=function(t,e,n){if(!oa(e))throw Error(C(200));return aa(null,t,e,!0,n)};Qe.hydrateRoot=function(t,e,n){if(!dc(t))throw Error(C(405));var i=n!=null&&n.hydratedSources||null,r=!1,s="",o=$g;if(n!=null&&(n.unstable_strictMode===!0&&(r=!0),n.identifierPrefix!==void 0&&(s=n.identifierPrefix),n.onRecoverableError!==void 0&&(o=n.onRecoverableError)),e=Fg(e,null,t,1,n??null,r,!1,s,o),t[zt]=e.current,Fr(t),i)for(t=0;t<i.length;t++)n=i[t],r=n._getVersion,r=r(n._source),e.mutableSourceEagerHydrationData==null?e.mutableSourceEagerHydrationData=[n,r]:e.mutableSourceEagerHydrationData.push(n,r);return new sa(e)};Qe.render=function(t,e,n){if(!oa(e))throw Error(C(200));return aa(null,t,e,!1,n)};Qe.unmountComponentAtNode=function(t){if(!oa(t))throw Error(C(40));return t._reactRootContainer?(Kn(function(){aa(null,null,t,!1,function(){t._reactRootContainer=null,t[zt]=null})}),!0):!1};Qe.unstable_batchedUpdates=sc;Qe.unstable_renderSubtreeIntoContainer=function(t,e,n,i){if(!oa(n))throw Error(C(200));if(t==null||t._reactInternals===void 0)throw Error(C(38));return aa(t,e,n,!1,i)};Qe.version="18.3.1-next-f1338f8080-20240426";function Ug(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(Ug)}catch(t){console.error(t)}}Ug(),Uf.exports=Qe;var Ov=Uf.exports,Bh=Ov;ol.createRoot=Bh.createRoot,ol.hydrateRoot=Bh.hydrateRoot;/**
  * @remix-run/router v1.16.1
  *
  * Copyright (c) Remix Software Inc.
@@ -64,7 +64,7 @@ Error generating stack: `+s.message+`
  * LICENSE.md file in the root directory of this source tree.
  *
  * @license MIT
- */const __="6";try{window.__reactRouterVersion=__}catch{}const w_="startTransition",Yh=v0[w_];function x_(t){let{basename:e,children:n,future:i,window:r}=t,s=E.useRef();s.current==null&&(s.current=Lv({window:r,v5Compat:!0}));let o=s.current,[a,l]=E.useState({action:o.action,location:o.location}),{v7_startTransition:u}=i||{},c=E.useCallback(h=>{u&&Yh?Yh(()=>l(h)):l(h)},[l,u]);return E.useLayoutEffect(()=>o.listen(c),[o,c]),E.createElement(y_,{basename:e,children:n,location:a.location,navigationType:a.action,navigator:o,future:i})}var Gh;(function(t){t.UseScrollRestoration="useScrollRestoration",t.UseSubmit="useSubmit",t.UseSubmitFetcher="useSubmitFetcher",t.UseFetcher="useFetcher",t.useViewTransitionState="useViewTransitionState"})(Gh||(Gh={}));var qh;(function(t){t.UseFetcher="useFetcher",t.UseFetchers="useFetchers",t.UseScrollRestoration="useScrollRestoration"})(qh||(qh={}));const k_="modulepreload",b_=function(t,e){return new URL(t,e).href},Qh={},Ri=function(e,n,i){let r=Promise.resolve();if(n&&n.length>0){const s=document.getElementsByTagName("link"),o=document.querySelector("meta[property=csp-nonce]"),a=(o==null?void 0:o.nonce)||(o==null?void 0:o.getAttribute("nonce"));r=Promise.all(n.map(l=>{if(l=b_(l,i),l in Qh)return;Qh[l]=!0;const u=l.endsWith(".css"),c=u?'[rel="stylesheet"]':"";if(!!i)for(let f=s.length-1;f>=0;f--){const m=s[f];if(m.href===l&&(!u||m.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${l}"]${c}`))return;const d=document.createElement("link");if(d.rel=u?"stylesheet":k_,u||(d.as="script",d.crossOrigin=""),d.href=l,a&&d.setAttribute("nonce",a),document.head.appendChild(d),u)return new Promise((f,m)=>{d.addEventListener("load",f),d.addEventListener("error",()=>m(new Error(`Unable to preload CSS for ${l}`)))})}))}return r.then(()=>e()).catch(s=>{const o=new Event("vite:preloadError",{cancelable:!0});if(o.payload=s,window.dispatchEvent(o),!o.defaultPrevented)throw s})},S_=t=>{let e;return t?e=t:typeof fetch>"u"?e=(...n)=>Ri(()=>Promise.resolve().then(()=>ls),void 0,import.meta.url).then(({default:i})=>i(...n)):e=fetch,(...n)=>e(...n)};class pc extends Error{constructor(e,n="FunctionsError",i){super(e),this.name=n,this.context=i}}class C_ extends pc{constructor(e){super("Failed to send a request to the Edge Function","FunctionsFetchError",e)}}class E_ extends pc{constructor(e){super("Relay Error invoking the Edge Function","FunctionsRelayError",e)}}class P_ extends pc{constructor(e){super("Edge Function returned a non-2xx status code","FunctionsHttpError",e)}}var tu;(function(t){t.Any="any",t.ApNortheast1="ap-northeast-1",t.ApNortheast2="ap-northeast-2",t.ApSouth1="ap-south-1",t.ApSoutheast1="ap-southeast-1",t.ApSoutheast2="ap-southeast-2",t.CaCentral1="ca-central-1",t.EuCentral1="eu-central-1",t.EuWest1="eu-west-1",t.EuWest2="eu-west-2",t.EuWest3="eu-west-3",t.SaEast1="sa-east-1",t.UsEast1="us-east-1",t.UsWest1="us-west-1",t.UsWest2="us-west-2"})(tu||(tu={}));var T_=function(t,e,n,i){function r(s){return s instanceof n?s:new n(function(o){o(s)})}return new(n||(n=Promise))(function(s,o){function a(c){try{u(i.next(c))}catch(h){o(h)}}function l(c){try{u(i.throw(c))}catch(h){o(h)}}function u(c){c.done?s(c.value):r(c.value).then(a,l)}u((i=i.apply(t,e||[])).next())})};class O_{constructor(e,{headers:n={},customFetch:i,region:r=tu.Any}={}){this.url=e,this.headers=n,this.region=r,this.fetch=S_(i)}setAuth(e){this.headers.Authorization=`Bearer ${e}`}invoke(e,n={}){var i;return T_(this,void 0,void 0,function*(){try{const{headers:r,method:s,body:o}=n;let a={},{region:l}=n;l||(l=this.region),l&&l!=="any"&&(a["x-region"]=l);let u;o&&(r&&!Object.prototype.hasOwnProperty.call(r,"Content-Type")||!r)&&(typeof Blob<"u"&&o instanceof Blob||o instanceof ArrayBuffer?(a["Content-Type"]="application/octet-stream",u=o):typeof o=="string"?(a["Content-Type"]="text/plain",u=o):typeof FormData<"u"&&o instanceof FormData?u=o:(a["Content-Type"]="application/json",u=JSON.stringify(o)));const c=yield this.fetch(`${this.url}/${e}`,{method:s||"POST",headers:Object.assign(Object.assign(Object.assign({},a),this.headers),r),body:u}).catch(m=>{throw new C_(m)}),h=c.headers.get("x-relay-error");if(h&&h==="true")throw new E_(c);if(!c.ok)throw new P_(c);let d=((i=c.headers.get("Content-Type"))!==null&&i!==void 0?i:"text/plain").split(";")[0].trim(),f;return d==="application/json"?f=yield c.json():d==="application/octet-stream"?f=yield c.blob():d==="text/event-stream"?f=c:d==="multipart/form-data"?f=yield c.formData():f=yield c.text(),{data:f,error:null}}catch(r){return{data:null,error:r}}})}}var L_=function(){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")},Ii=L_();const M_=Ii.fetch,gc=Ii.fetch.bind(Ii),Zg=Ii.Headers,R_=Ii.Request,I_=Ii.Response,ls=Object.freeze(Object.defineProperty({__proto__:null,Headers:Zg,Request:R_,Response:I_,default:gc,fetch:M_},Symbol.toStringTag,{value:"Module"}));class A_ extends Error{constructor(e){super(e.message),this.name="PostgrestError",this.details=e.details,this.hint=e.hint,this.code=e.code}}class D_{constructor(e){this.shouldThrowOnError=!1,this.method=e.method,this.url=e.url,this.headers=e.headers,this.schema=e.schema,this.body=e.body,this.shouldThrowOnError=e.shouldThrowOnError,this.signal=e.signal,this.isMaybeSingle=e.isMaybeSingle,e.fetch?this.fetch=e.fetch:typeof fetch>"u"?this.fetch=gc:this.fetch=fetch}throwOnError(){return this.shouldThrowOnError=!0,this}then(e,n){this.schema===void 0||(["GET","HEAD"].includes(this.method)?this.headers["Accept-Profile"]=this.schema:this.headers["Content-Profile"]=this.schema),this.method!=="GET"&&this.method!=="HEAD"&&(this.headers["Content-Type"]="application/json");const i=this.fetch;let r=i(this.url.toString(),{method:this.method,headers:this.headers,body:JSON.stringify(this.body),signal:this.signal}).then(async s=>{var o,a,l;let u=null,c=null,h=null,d=s.status,f=s.statusText;if(s.ok){if(this.method!=="HEAD"){const p=await s.text();p===""||(this.headers.Accept==="text/csv"||this.headers.Accept&&this.headers.Accept.includes("application/vnd.pgrst.plan+text")?c=p:c=JSON.parse(p))}const y=(o=this.headers.Prefer)===null||o===void 0?void 0:o.match(/count=(exact|planned|estimated)/),v=(a=s.headers.get("content-range"))===null||a===void 0?void 0:a.split("/");y&&v&&v.length>1&&(h=parseInt(v[1])),this.isMaybeSingle&&this.method==="GET"&&Array.isArray(c)&&(c.length>1?(u={code:"PGRST116",details:`Results contain ${c.length} rows, application/vnd.pgrst.object+json requires 1 row`,hint:null,message:"JSON object requested, multiple (or no) rows returned"},c=null,h=null,d=406,f="Not Acceptable"):c.length===1?c=c[0]:c=null)}else{const y=await s.text();try{u=JSON.parse(y),Array.isArray(u)&&s.status===404&&(c=[],u=null,d=200,f="OK")}catch{s.status===404&&y===""?(d=204,f="No Content"):u={message:y}}if(u&&this.isMaybeSingle&&(!((l=u==null?void 0:u.details)===null||l===void 0)&&l.includes("0 rows"))&&(u=null,d=200,f="OK"),u&&this.shouldThrowOnError)throw new A_(u)}return{error:u,data:c,count:h,status:d,statusText:f}});return this.shouldThrowOnError||(r=r.catch(s=>{var o,a,l;return{error:{message:`${(o=s==null?void 0:s.name)!==null&&o!==void 0?o:"FetchError"}: ${s==null?void 0:s.message}`,details:`${(a=s==null?void 0:s.stack)!==null&&a!==void 0?a:""}`,hint:"",code:`${(l=s==null?void 0:s.code)!==null&&l!==void 0?l:""}`},data:null,count:null,status:0,statusText:""}})),r.then(e,n)}}class j_ extends D_{select(e){let n=!1;const i=(e??"*").split("").map(r=>/\s/.test(r)&&!n?"":(r==='"'&&(n=!n),r)).join("");return this.url.searchParams.set("select",i),this.headers.Prefer&&(this.headers.Prefer+=","),this.headers.Prefer+="return=representation",this}order(e,{ascending:n=!0,nullsFirst:i,foreignTable:r,referencedTable:s=r}={}){const o=s?`${s}.order`:"order",a=this.url.searchParams.get(o);return this.url.searchParams.set(o,`${a?`${a},`:""}${e}.${n?"asc":"desc"}${i===void 0?"":i?".nullsfirst":".nullslast"}`),this}limit(e,{foreignTable:n,referencedTable:i=n}={}){const r=typeof i>"u"?"limit":`${i}.limit`;return this.url.searchParams.set(r,`${e}`),this}range(e,n,{foreignTable:i,referencedTable:r=i}={}){const s=typeof r>"u"?"offset":`${r}.offset`,o=typeof r>"u"?"limit":`${r}.limit`;return this.url.searchParams.set(s,`${e}`),this.url.searchParams.set(o,`${n-e+1}`),this}abortSignal(e){return this.signal=e,this}single(){return this.headers.Accept="application/vnd.pgrst.object+json",this}maybeSingle(){return this.method==="GET"?this.headers.Accept="application/json":this.headers.Accept="application/vnd.pgrst.object+json",this.isMaybeSingle=!0,this}csv(){return this.headers.Accept="text/csv",this}geojson(){return this.headers.Accept="application/geo+json",this}explain({analyze:e=!1,verbose:n=!1,settings:i=!1,buffers:r=!1,wal:s=!1,format:o="text"}={}){var a;const l=[e?"analyze":null,n?"verbose":null,i?"settings":null,r?"buffers":null,s?"wal":null].filter(Boolean).join("|"),u=(a=this.headers.Accept)!==null&&a!==void 0?a:"application/json";return this.headers.Accept=`application/vnd.pgrst.plan+${o}; for="${u}"; options=${l};`,o==="json"?this:this}rollback(){var e;return((e=this.headers.Prefer)!==null&&e!==void 0?e:"").trim().length>0?this.headers.Prefer+=",tx=rollback":this.headers.Prefer="tx=rollback",this}returns(){return this}}class si extends j_{eq(e,n){return this.url.searchParams.append(e,`eq.${n}`),this}neq(e,n){return this.url.searchParams.append(e,`neq.${n}`),this}gt(e,n){return this.url.searchParams.append(e,`gt.${n}`),this}gte(e,n){return this.url.searchParams.append(e,`gte.${n}`),this}lt(e,n){return this.url.searchParams.append(e,`lt.${n}`),this}lte(e,n){return this.url.searchParams.append(e,`lte.${n}`),this}like(e,n){return this.url.searchParams.append(e,`like.${n}`),this}likeAllOf(e,n){return this.url.searchParams.append(e,`like(all).{${n.join(",")}}`),this}likeAnyOf(e,n){return this.url.searchParams.append(e,`like(any).{${n.join(",")}}`),this}ilike(e,n){return this.url.searchParams.append(e,`ilike.${n}`),this}ilikeAllOf(e,n){return this.url.searchParams.append(e,`ilike(all).{${n.join(",")}}`),this}ilikeAnyOf(e,n){return this.url.searchParams.append(e,`ilike(any).{${n.join(",")}}`),this}is(e,n){return this.url.searchParams.append(e,`is.${n}`),this}in(e,n){const i=Array.from(new Set(n)).map(r=>typeof r=="string"&&new RegExp("[,()]").test(r)?`"${r}"`:`${r}`).join(",");return this.url.searchParams.append(e,`in.(${i})`),this}contains(e,n){return typeof n=="string"?this.url.searchParams.append(e,`cs.${n}`):Array.isArray(n)?this.url.searchParams.append(e,`cs.{${n.join(",")}}`):this.url.searchParams.append(e,`cs.${JSON.stringify(n)}`),this}containedBy(e,n){return typeof n=="string"?this.url.searchParams.append(e,`cd.${n}`):Array.isArray(n)?this.url.searchParams.append(e,`cd.{${n.join(",")}}`):this.url.searchParams.append(e,`cd.${JSON.stringify(n)}`),this}rangeGt(e,n){return this.url.searchParams.append(e,`sr.${n}`),this}rangeGte(e,n){return this.url.searchParams.append(e,`nxl.${n}`),this}rangeLt(e,n){return this.url.searchParams.append(e,`sl.${n}`),this}rangeLte(e,n){return this.url.searchParams.append(e,`nxr.${n}`),this}rangeAdjacent(e,n){return this.url.searchParams.append(e,`adj.${n}`),this}overlaps(e,n){return typeof n=="string"?this.url.searchParams.append(e,`ov.${n}`):this.url.searchParams.append(e,`ov.{${n.join(",")}}`),this}textSearch(e,n,{config:i,type:r}={}){let s="";r==="plain"?s="pl":r==="phrase"?s="ph":r==="websearch"&&(s="w");const o=i===void 0?"":`(${i})`;return this.url.searchParams.append(e,`${s}fts${o}.${n}`),this}match(e){return Object.entries(e).forEach(([n,i])=>{this.url.searchParams.append(n,`eq.${i}`)}),this}not(e,n,i){return this.url.searchParams.append(e,`not.${n}.${i}`),this}or(e,{foreignTable:n,referencedTable:i=n}={}){const r=i?`${i}.or`:"or";return this.url.searchParams.append(r,`(${e})`),this}filter(e,n,i){return this.url.searchParams.append(e,`${n}.${i}`),this}}class N_{constructor(e,{headers:n={},schema:i,fetch:r}){this.url=e,this.headers=n,this.schema=i,this.fetch=r}select(e,{head:n=!1,count:i}={}){const r=n?"HEAD":"GET";let s=!1;const o=(e??"*").split("").map(a=>/\s/.test(a)&&!s?"":(a==='"'&&(s=!s),a)).join("");return this.url.searchParams.set("select",o),i&&(this.headers.Prefer=`count=${i}`),new si({method:r,url:this.url,headers:this.headers,schema:this.schema,fetch:this.fetch,allowEmpty:!1})}insert(e,{count:n,defaultToNull:i=!0}={}){const r="POST",s=[];if(this.headers.Prefer&&s.push(this.headers.Prefer),n&&s.push(`count=${n}`),i||s.push("missing=default"),this.headers.Prefer=s.join(","),Array.isArray(e)){const o=e.reduce((a,l)=>a.concat(Object.keys(l)),[]);if(o.length>0){const a=[...new Set(o)].map(l=>`"${l}"`);this.url.searchParams.set("columns",a.join(","))}}return new si({method:r,url:this.url,headers:this.headers,schema:this.schema,body:e,fetch:this.fetch,allowEmpty:!1})}upsert(e,{onConflict:n,ignoreDuplicates:i=!1,count:r,defaultToNull:s=!0}={}){const o="POST",a=[`resolution=${i?"ignore":"merge"}-duplicates`];if(n!==void 0&&this.url.searchParams.set("on_conflict",n),this.headers.Prefer&&a.push(this.headers.Prefer),r&&a.push(`count=${r}`),s||a.push("missing=default"),this.headers.Prefer=a.join(","),Array.isArray(e)){const l=e.reduce((u,c)=>u.concat(Object.keys(c)),[]);if(l.length>0){const u=[...new Set(l)].map(c=>`"${c}"`);this.url.searchParams.set("columns",u.join(","))}}return new si({method:o,url:this.url,headers:this.headers,schema:this.schema,body:e,fetch:this.fetch,allowEmpty:!1})}update(e,{count:n}={}){const i="PATCH",r=[];return this.headers.Prefer&&r.push(this.headers.Prefer),n&&r.push(`count=${n}`),this.headers.Prefer=r.join(","),new si({method:i,url:this.url,headers:this.headers,schema:this.schema,body:e,fetch:this.fetch,allowEmpty:!1})}delete({count:e}={}){const n="DELETE",i=[];return e&&i.push(`count=${e}`),this.headers.Prefer&&i.unshift(this.headers.Prefer),this.headers.Prefer=i.join(","),new si({method:n,url:this.url,headers:this.headers,schema:this.schema,fetch:this.fetch,allowEmpty:!1})}}const z_="1.15.2",F_={"X-Client-Info":`postgrest-js/${z_}`};class mc{constructor(e,{headers:n={},schema:i,fetch:r}={}){this.url=e,this.headers=Object.assign(Object.assign({},F_),n),this.schemaName=i,this.fetch=r}from(e){const n=new URL(`${this.url}/${e}`);return new N_(n,{headers:Object.assign({},this.headers),schema:this.schemaName,fetch:this.fetch})}schema(e){return new mc(this.url,{headers:this.headers,schema:e,fetch:this.fetch})}rpc(e,n={},{head:i=!1,get:r=!1,count:s}={}){let o;const a=new URL(`${this.url}/rpc/${e}`);let l;i||r?(o=i?"HEAD":"GET",Object.entries(n).filter(([c,h])=>h!==void 0).map(([c,h])=>[c,Array.isArray(h)?`{${h.join(",")}}`:`${h}`]).forEach(([c,h])=>{a.searchParams.append(c,h)})):(o="POST",l=n);const u=Object.assign({},this.headers);return s&&(u.Prefer=`count=${s}`),new si({method:o,url:a,headers:u,schema:this.schemaName,body:l,fetch:this.fetch,allowEmpty:!1})}}const $_="2.9.5",U_={"X-Client-Info":`realtime-js/${$_}`},B_="1.0.0",em=1e4,V_=1e3;var Si;(function(t){t[t.connecting=0]="connecting",t[t.open=1]="open",t[t.closing=2]="closing",t[t.closed=3]="closed"})(Si||(Si={}));var Be;(function(t){t.closed="closed",t.errored="errored",t.joined="joined",t.joining="joining",t.leaving="leaving"})(Be||(Be={}));var ht;(function(t){t.close="phx_close",t.error="phx_error",t.join="phx_join",t.reply="phx_reply",t.leave="phx_leave",t.access_token="access_token"})(ht||(ht={}));var nu;(function(t){t.websocket="websocket"})(nu||(nu={}));var In;(function(t){t.Connecting="connecting",t.Open="open",t.Closing="closing",t.Closed="closed"})(In||(In={}));class tm{constructor(e,n){this.callback=e,this.timerCalc=n,this.timer=void 0,this.tries=0,this.callback=e,this.timerCalc=n}reset(){this.tries=0,clearTimeout(this.timer)}scheduleTimeout(){clearTimeout(this.timer),this.timer=setTimeout(()=>{this.tries=this.tries+1,this.callback()},this.timerCalc(this.tries+1))}}class H_{constructor(){this.HEADER_LENGTH=1}decode(e,n){return e.constructor===ArrayBuffer?n(this._binaryDecode(e)):n(typeof e=="string"?JSON.parse(e):{})}_binaryDecode(e){const n=new DataView(e),i=new TextDecoder;return this._decodeBroadcast(e,n,i)}_decodeBroadcast(e,n,i){const r=n.getUint8(1),s=n.getUint8(2);let o=this.HEADER_LENGTH+2;const a=i.decode(e.slice(o,o+r));o=o+r;const l=i.decode(e.slice(o,o+s));o=o+s;const u=JSON.parse(i.decode(e.slice(o,e.byteLength)));return{ref:null,topic:a,event:l,payload:u}}}class Wa{constructor(e,n,i={},r=em){this.channel=e,this.event=n,this.payload=i,this.timeout=r,this.sent=!1,this.timeoutTimer=void 0,this.ref="",this.receivedResp=null,this.recHooks=[],this.refEvent=null}resend(e){this.timeout=e,this._cancelRefEvent(),this.ref="",this.refEvent=null,this.receivedResp=null,this.sent=!1,this.send()}send(){this._hasReceived("timeout")||(this.startTimeout(),this.sent=!0,this.channel.socket.push({topic:this.channel.topic,event:this.event,payload:this.payload,ref:this.ref,join_ref:this.channel._joinRef()}))}updatePayload(e){this.payload=Object.assign(Object.assign({},this.payload),e)}receive(e,n){var i;return this._hasReceived(e)&&n((i=this.receivedResp)===null||i===void 0?void 0:i.response),this.recHooks.push({status:e,callback:n}),this}startTimeout(){if(this.timeoutTimer)return;this.ref=this.channel.socket._makeRef(),this.refEvent=this.channel._replyEventName(this.ref);const e=n=>{this._cancelRefEvent(),this._cancelTimeout(),this.receivedResp=n,this._matchReceive(n)};this.channel._on(this.refEvent,{},e),this.timeoutTimer=setTimeout(()=>{this.trigger("timeout",{})},this.timeout)}trigger(e,n){this.refEvent&&this.channel._trigger(this.refEvent,{status:e,response:n})}destroy(){this._cancelRefEvent(),this._cancelTimeout()}_cancelRefEvent(){this.refEvent&&this.channel._off(this.refEvent,{})}_cancelTimeout(){clearTimeout(this.timeoutTimer),this.timeoutTimer=void 0}_matchReceive({status:e,response:n}){this.recHooks.filter(i=>i.status===e).forEach(i=>i.callback(n))}_hasReceived(e){return this.receivedResp&&this.receivedResp.status===e}}var Xh;(function(t){t.SYNC="sync",t.JOIN="join",t.LEAVE="leave"})(Xh||(Xh={}));class kr{constructor(e,n){this.channel=e,this.state={},this.pendingDiffs=[],this.joinRef=null,this.caller={onJoin:()=>{},onLeave:()=>{},onSync:()=>{}};const i=(n==null?void 0:n.events)||{state:"presence_state",diff:"presence_diff"};this.channel._on(i.state,{},r=>{const{onJoin:s,onLeave:o,onSync:a}=this.caller;this.joinRef=this.channel._joinRef(),this.state=kr.syncState(this.state,r,s,o),this.pendingDiffs.forEach(l=>{this.state=kr.syncDiff(this.state,l,s,o)}),this.pendingDiffs=[],a()}),this.channel._on(i.diff,{},r=>{const{onJoin:s,onLeave:o,onSync:a}=this.caller;this.inPendingSyncState()?this.pendingDiffs.push(r):(this.state=kr.syncDiff(this.state,r,s,o),a())}),this.onJoin((r,s,o)=>{this.channel._trigger("presence",{event:"join",key:r,currentPresences:s,newPresences:o})}),this.onLeave((r,s,o)=>{this.channel._trigger("presence",{event:"leave",key:r,currentPresences:s,leftPresences:o})}),this.onSync(()=>{this.channel._trigger("presence",{event:"sync"})})}static syncState(e,n,i,r){const s=this.cloneDeep(e),o=this.transformState(n),a={},l={};return this.map(s,(u,c)=>{o[u]||(l[u]=c)}),this.map(o,(u,c)=>{const h=s[u];if(h){const d=c.map(v=>v.presence_ref),f=h.map(v=>v.presence_ref),m=c.filter(v=>f.indexOf(v.presence_ref)<0),y=h.filter(v=>d.indexOf(v.presence_ref)<0);m.length>0&&(a[u]=m),y.length>0&&(l[u]=y)}else a[u]=c}),this.syncDiff(s,{joins:a,leaves:l},i,r)}static syncDiff(e,n,i,r){const{joins:s,leaves:o}={joins:this.transformState(n.joins),leaves:this.transformState(n.leaves)};return i||(i=()=>{}),r||(r=()=>{}),this.map(s,(a,l)=>{var u;const c=(u=e[a])!==null&&u!==void 0?u:[];if(e[a]=this.cloneDeep(l),c.length>0){const h=e[a].map(f=>f.presence_ref),d=c.filter(f=>h.indexOf(f.presence_ref)<0);e[a].unshift(...d)}i(a,c,l)}),this.map(o,(a,l)=>{let u=e[a];if(!u)return;const c=l.map(h=>h.presence_ref);u=u.filter(h=>c.indexOf(h.presence_ref)<0),e[a]=u,r(a,u,l),u.length===0&&delete e[a]}),e}static map(e,n){return Object.getOwnPropertyNames(e).map(i=>n(i,e[i]))}static transformState(e){return e=this.cloneDeep(e),Object.getOwnPropertyNames(e).reduce((n,i)=>{const r=e[i];return"metas"in r?n[i]=r.metas.map(s=>(s.presence_ref=s.phx_ref,delete s.phx_ref,delete s.phx_ref_prev,s)):n[i]=r,n},{})}static cloneDeep(e){return JSON.parse(JSON.stringify(e))}onJoin(e){this.caller.onJoin=e}onLeave(e){this.caller.onLeave=e}onSync(e){this.caller.onSync=e}inPendingSyncState(){return!this.joinRef||this.joinRef!==this.channel._joinRef()}}var G;(function(t){t.abstime="abstime",t.bool="bool",t.date="date",t.daterange="daterange",t.float4="float4",t.float8="float8",t.int2="int2",t.int4="int4",t.int4range="int4range",t.int8="int8",t.int8range="int8range",t.json="json",t.jsonb="jsonb",t.money="money",t.numeric="numeric",t.oid="oid",t.reltime="reltime",t.text="text",t.time="time",t.timestamp="timestamp",t.timestamptz="timestamptz",t.timetz="timetz",t.tsrange="tsrange",t.tstzrange="tstzrange"})(G||(G={}));const Jh=(t,e,n={})=>{var i;const r=(i=n.skipTypes)!==null&&i!==void 0?i:[];return Object.keys(e).reduce((s,o)=>(s[o]=W_(o,t,e,r),s),{})},W_=(t,e,n,i)=>{const r=e.find(a=>a.name===t),s=r==null?void 0:r.type,o=n[t];return s&&!i.includes(s)?nm(s,o):iu(o)},nm=(t,e)=>{if(t.charAt(0)==="_"){const n=t.slice(1,t.length);return q_(e,n)}switch(t){case G.bool:return K_(e);case G.float4:case G.float8:case G.int2:case G.int4:case G.int8:case G.numeric:case G.oid:return Y_(e);case G.json:case G.jsonb:return G_(e);case G.timestamp:return Q_(e);case G.abstime:case G.date:case G.daterange:case G.int4range:case G.int8range:case G.money:case G.reltime:case G.text:case G.time:case G.timestamptz:case G.timetz:case G.tsrange:case G.tstzrange:return iu(e);default:return iu(e)}},iu=t=>t,K_=t=>{switch(t){case"t":return!0;case"f":return!1;default:return t}},Y_=t=>{if(typeof t=="string"){const e=parseFloat(t);if(!Number.isNaN(e))return e}return t},G_=t=>{if(typeof t=="string")try{return JSON.parse(t)}catch(e){return console.log(`JSON parse error: ${e}`),t}return t},q_=(t,e)=>{if(typeof t!="string")return t;const n=t.length-1,i=t[n];if(t[0]==="{"&&i==="}"){let s;const o=t.slice(1,n);try{s=JSON.parse("["+o+"]")}catch{s=o?o.split(","):[]}return s.map(a=>nm(e,a))}return t},Q_=t=>typeof t=="string"?t.replace(" ","T"):t;var Zh;(function(t){t.ALL="*",t.INSERT="INSERT",t.UPDATE="UPDATE",t.DELETE="DELETE"})(Zh||(Zh={}));var ed;(function(t){t.BROADCAST="broadcast",t.PRESENCE="presence",t.POSTGRES_CHANGES="postgres_changes"})(ed||(ed={}));var td;(function(t){t.SUBSCRIBED="SUBSCRIBED",t.TIMED_OUT="TIMED_OUT",t.CLOSED="CLOSED",t.CHANNEL_ERROR="CHANNEL_ERROR"})(td||(td={}));class yc{constructor(e,n={config:{}},i){this.topic=e,this.params=n,this.socket=i,this.bindings={},this.state=Be.closed,this.joinedOnce=!1,this.pushBuffer=[],this.subTopic=e.replace(/^realtime:/i,""),this.params.config=Object.assign({broadcast:{ack:!1,self:!1},presence:{key:""}},n.config),this.timeout=this.socket.timeout,this.joinPush=new Wa(this,ht.join,this.params,this.timeout),this.rejoinTimer=new tm(()=>this._rejoinUntilConnected(),this.socket.reconnectAfterMs),this.joinPush.receive("ok",()=>{this.state=Be.joined,this.rejoinTimer.reset(),this.pushBuffer.forEach(r=>r.send()),this.pushBuffer=[]}),this._onClose(()=>{this.rejoinTimer.reset(),this.socket.log("channel",`close ${this.topic} ${this._joinRef()}`),this.state=Be.closed,this.socket._remove(this)}),this._onError(r=>{this._isLeaving()||this._isClosed()||(this.socket.log("channel",`error ${this.topic}`,r),this.state=Be.errored,this.rejoinTimer.scheduleTimeout())}),this.joinPush.receive("timeout",()=>{this._isJoining()&&(this.socket.log("channel",`timeout ${this.topic}`,this.joinPush.timeout),this.state=Be.errored,this.rejoinTimer.scheduleTimeout())}),this._on(ht.reply,{},(r,s)=>{this._trigger(this._replyEventName(s),r)}),this.presence=new kr(this),this.broadcastEndpointURL=this._broadcastEndpointURL()}subscribe(e,n=this.timeout){var i,r;if(this.socket.isConnected()||this.socket.connect(),this.joinedOnce)throw"tried to subscribe multiple times. 'subscribe' can only be called a single time per channel instance";{const{config:{broadcast:s,presence:o}}=this.params;this._onError(u=>e&&e("CHANNEL_ERROR",u)),this._onClose(()=>e&&e("CLOSED"));const a={},l={broadcast:s,presence:o,postgres_changes:(r=(i=this.bindings.postgres_changes)===null||i===void 0?void 0:i.map(u=>u.filter))!==null&&r!==void 0?r:[]};this.socket.accessToken&&(a.access_token=this.socket.accessToken),this.updateJoinPayload(Object.assign({config:l},a)),this.joinedOnce=!0,this._rejoin(n),this.joinPush.receive("ok",({postgres_changes:u})=>{var c;if(this.socket.accessToken&&this.socket.setAuth(this.socket.accessToken),u===void 0){e&&e("SUBSCRIBED");return}else{const h=this.bindings.postgres_changes,d=(c=h==null?void 0:h.length)!==null&&c!==void 0?c:0,f=[];for(let m=0;m<d;m++){const y=h[m],{filter:{event:v,schema:p,table:g,filter:_}}=y,w=u&&u[m];if(w&&w.event===v&&w.schema===p&&w.table===g&&w.filter===_)f.push(Object.assign(Object.assign({},y),{id:w.id}));else{this.unsubscribe(),e&&e("CHANNEL_ERROR",new Error("mismatch between server and client bindings for postgres changes"));return}}this.bindings.postgres_changes=f,e&&e("SUBSCRIBED");return}}).receive("error",u=>{e&&e("CHANNEL_ERROR",new Error(JSON.stringify(Object.values(u).join(", ")||"error")))}).receive("timeout",()=>{e&&e("TIMED_OUT")})}return this}presenceState(){return this.presence.state}async track(e,n={}){return await this.send({type:"presence",event:"track",payload:e},n.timeout||this.timeout)}async untrack(e={}){return await this.send({type:"presence",event:"untrack"},e)}on(e,n,i){return this._on(e,n,i)}async send(e,n={}){var i,r;if(!this._canPush()&&e.type==="broadcast"){const{event:s,payload:o}=e,a={method:"POST",headers:{apikey:(i=this.socket.apiKey)!==null&&i!==void 0?i:"","Content-Type":"application/json"},body:JSON.stringify({messages:[{topic:this.subTopic,event:s,payload:o}]})};try{return(await this._fetchWithTimeout(this.broadcastEndpointURL,a,(r=n.timeout)!==null&&r!==void 0?r:this.timeout)).ok?"ok":"error"}catch(l){return l.name==="AbortError"?"timed out":"error"}}else return new Promise(s=>{var o,a,l;const u=this._push(e.type,e,n.timeout||this.timeout);e.type==="broadcast"&&!(!((l=(a=(o=this.params)===null||o===void 0?void 0:o.config)===null||a===void 0?void 0:a.broadcast)===null||l===void 0)&&l.ack)&&s("ok"),u.receive("ok",()=>s("ok")),u.receive("error",()=>s("error")),u.receive("timeout",()=>s("timed out"))})}updateJoinPayload(e){this.joinPush.updatePayload(e)}unsubscribe(e=this.timeout){this.state=Be.leaving;const n=()=>{this.socket.log("channel",`leave ${this.topic}`),this._trigger(ht.close,"leave",this._joinRef())};return this.rejoinTimer.reset(),this.joinPush.destroy(),new Promise(i=>{const r=new Wa(this,ht.leave,{},e);r.receive("ok",()=>{n(),i("ok")}).receive("timeout",()=>{n(),i("timed out")}).receive("error",()=>{i("error")}),r.send(),this._canPush()||r.trigger("ok",{})})}_broadcastEndpointURL(){let e=this.socket.endPoint;return e=e.replace(/^ws/i,"http"),e=e.replace(/(\/socket\/websocket|\/socket|\/websocket)\/?$/i,""),e.replace(/\/+$/,"")+"/api/broadcast"}async _fetchWithTimeout(e,n,i){const r=new AbortController,s=setTimeout(()=>r.abort(),i),o=await this.socket.fetch(e,Object.assign(Object.assign({},n),{signal:r.signal}));return clearTimeout(s),o}_push(e,n,i=this.timeout){if(!this.joinedOnce)throw`tried to push '${e}' to '${this.topic}' before joining. Use channel.subscribe() before pushing events`;let r=new Wa(this,e,n,i);return this._canPush()?r.send():(r.startTimeout(),this.pushBuffer.push(r)),r}_onMessage(e,n,i){return n}_isMember(e){return this.topic===e}_joinRef(){return this.joinPush.ref}_trigger(e,n,i){var r,s;const o=e.toLocaleLowerCase(),{close:a,error:l,leave:u,join:c}=ht;if(i&&[a,l,u,c].indexOf(o)>=0&&i!==this._joinRef())return;let d=this._onMessage(o,n,i);if(n&&!d)throw"channel onMessage callbacks must return the payload, modified or unmodified";["insert","update","delete"].includes(o)?(r=this.bindings.postgres_changes)===null||r===void 0||r.filter(f=>{var m,y,v;return((m=f.filter)===null||m===void 0?void 0:m.event)==="*"||((v=(y=f.filter)===null||y===void 0?void 0:y.event)===null||v===void 0?void 0:v.toLocaleLowerCase())===o}).map(f=>f.callback(d,i)):(s=this.bindings[o])===null||s===void 0||s.filter(f=>{var m,y,v,p,g,_;if(["broadcast","presence","postgres_changes"].includes(o))if("id"in f){const w=f.id,x=(m=f.filter)===null||m===void 0?void 0:m.event;return w&&((y=n.ids)===null||y===void 0?void 0:y.includes(w))&&(x==="*"||(x==null?void 0:x.toLocaleLowerCase())===((v=n.data)===null||v===void 0?void 0:v.type.toLocaleLowerCase()))}else{const w=(g=(p=f==null?void 0:f.filter)===null||p===void 0?void 0:p.event)===null||g===void 0?void 0:g.toLocaleLowerCase();return w==="*"||w===((_=n==null?void 0:n.event)===null||_===void 0?void 0:_.toLocaleLowerCase())}else return f.type.toLocaleLowerCase()===o}).map(f=>{if(typeof d=="object"&&"ids"in d){const m=d.data,{schema:y,table:v,commit_timestamp:p,type:g,errors:_}=m;d=Object.assign(Object.assign({},{schema:y,table:v,commit_timestamp:p,eventType:g,new:{},old:{},errors:_}),this._getPayloadRecords(m))}f.callback(d,i)})}_isClosed(){return this.state===Be.closed}_isJoined(){return this.state===Be.joined}_isJoining(){return this.state===Be.joining}_isLeaving(){return this.state===Be.leaving}_replyEventName(e){return`chan_reply_${e}`}_on(e,n,i){const r=e.toLocaleLowerCase(),s={type:r,filter:n,callback:i};return this.bindings[r]?this.bindings[r].push(s):this.bindings[r]=[s],this}_off(e,n){const i=e.toLocaleLowerCase();return this.bindings[i]=this.bindings[i].filter(r=>{var s;return!(((s=r.type)===null||s===void 0?void 0:s.toLocaleLowerCase())===i&&yc.isEqual(r.filter,n))}),this}static isEqual(e,n){if(Object.keys(e).length!==Object.keys(n).length)return!1;for(const i in e)if(e[i]!==n[i])return!1;return!0}_rejoinUntilConnected(){this.rejoinTimer.scheduleTimeout(),this.socket.isConnected()&&this._rejoin()}_onClose(e){this._on(ht.close,{},e)}_onError(e){this._on(ht.error,{},n=>e(n))}_canPush(){return this.socket.isConnected()&&this._isJoined()}_rejoin(e=this.timeout){this._isLeaving()||(this.socket._leaveOpenTopic(this.topic),this.state=Be.joining,this.joinPush.resend(e))}_getPayloadRecords(e){const n={new:{},old:{}};return(e.type==="INSERT"||e.type==="UPDATE")&&(n.new=Jh(e.columns,e.record)),(e.type==="UPDATE"||e.type==="DELETE")&&(n.old=Jh(e.columns,e.old_record)),n}}const X_=()=>{},J_=typeof WebSocket<"u";class Z_{constructor(e,n){var i;this.accessToken=null,this.apiKey=null,this.channels=[],this.endPoint="",this.headers=U_,this.params={},this.timeout=em,this.heartbeatIntervalMs=3e4,this.heartbeatTimer=void 0,this.pendingHeartbeatRef=null,this.ref=0,this.logger=X_,this.conn=null,this.sendBuffer=[],this.serializer=new H_,this.stateChangeCallbacks={open:[],close:[],error:[],message:[]},this._resolveFetch=s=>{let o;return s?o=s:typeof fetch>"u"?o=(...a)=>Ri(()=>Promise.resolve().then(()=>ls),void 0,import.meta.url).then(({default:l})=>l(...a)):o=fetch,(...a)=>o(...a)},this.endPoint=`${e}/${nu.websocket}`,n!=null&&n.transport?this.transport=n.transport:this.transport=null,n!=null&&n.params&&(this.params=n.params),n!=null&&n.headers&&(this.headers=Object.assign(Object.assign({},this.headers),n.headers)),n!=null&&n.timeout&&(this.timeout=n.timeout),n!=null&&n.logger&&(this.logger=n.logger),n!=null&&n.heartbeatIntervalMs&&(this.heartbeatIntervalMs=n.heartbeatIntervalMs);const r=(i=n==null?void 0:n.params)===null||i===void 0?void 0:i.apikey;r&&(this.accessToken=r,this.apiKey=r),this.reconnectAfterMs=n!=null&&n.reconnectAfterMs?n.reconnectAfterMs:s=>[1e3,2e3,5e3,1e4][s-1]||1e4,this.encode=n!=null&&n.encode?n.encode:(s,o)=>o(JSON.stringify(s)),this.decode=n!=null&&n.decode?n.decode:this.serializer.decode.bind(this.serializer),this.reconnectTimer=new tm(async()=>{this.disconnect(),this.connect()},this.reconnectAfterMs),this.fetch=this._resolveFetch(n==null?void 0:n.fetch)}connect(){if(!this.conn){if(this.transport){this.conn=new this.transport(this._endPointURL(),void 0,{headers:this.headers});return}if(J_){this.conn=new WebSocket(this._endPointURL()),this.setupConnection();return}this.conn=new ew(this._endPointURL(),void 0,{close:()=>{this.conn=null}}),Ri(()=>import("./browser-Bualf7xz.js").then(e=>e.b),[],import.meta.url).then(({default:e})=>{this.conn=new e(this._endPointURL(),void 0,{headers:this.headers}),this.setupConnection()})}}disconnect(e,n){this.conn&&(this.conn.onclose=function(){},e?this.conn.close(e,n??""):this.conn.close(),this.conn=null,this.heartbeatTimer&&clearInterval(this.heartbeatTimer),this.reconnectTimer.reset())}getChannels(){return this.channels}async removeChannel(e){const n=await e.unsubscribe();return this.channels.length===0&&this.disconnect(),n}async removeAllChannels(){const e=await Promise.all(this.channels.map(n=>n.unsubscribe()));return this.disconnect(),e}log(e,n,i){this.logger(e,n,i)}connectionState(){switch(this.conn&&this.conn.readyState){case Si.connecting:return In.Connecting;case Si.open:return In.Open;case Si.closing:return In.Closing;default:return In.Closed}}isConnected(){return this.connectionState()===In.Open}channel(e,n={config:{}}){const i=new yc(`realtime:${e}`,n,this);return this.channels.push(i),i}push(e){const{topic:n,event:i,payload:r,ref:s}=e,o=()=>{this.encode(e,a=>{var l;(l=this.conn)===null||l===void 0||l.send(a)})};this.log("push",`${n} ${i} (${s})`,r),this.isConnected()?o():this.sendBuffer.push(o)}setAuth(e){this.accessToken=e,this.channels.forEach(n=>{e&&n.updateJoinPayload({access_token:e}),n.joinedOnce&&n._isJoined()&&n._push(ht.access_token,{access_token:e})})}_makeRef(){let e=this.ref+1;return e===this.ref?this.ref=0:this.ref=e,this.ref.toString()}_leaveOpenTopic(e){let n=this.channels.find(i=>i.topic===e&&(i._isJoined()||i._isJoining()));n&&(this.log("transport",`leaving duplicate topic "${e}"`),n.unsubscribe())}_remove(e){this.channels=this.channels.filter(n=>n._joinRef()!==e._joinRef())}setupConnection(){this.conn&&(this.conn.binaryType="arraybuffer",this.conn.onopen=()=>this._onConnOpen(),this.conn.onerror=e=>this._onConnError(e),this.conn.onmessage=e=>this._onConnMessage(e),this.conn.onclose=e=>this._onConnClose(e))}_endPointURL(){return this._appendParams(this.endPoint,Object.assign({},this.params,{vsn:B_}))}_onConnMessage(e){this.decode(e.data,n=>{let{topic:i,event:r,payload:s,ref:o}=n;(o&&o===this.pendingHeartbeatRef||r===(s==null?void 0:s.type))&&(this.pendingHeartbeatRef=null),this.log("receive",`${s.status||""} ${i} ${r} ${o&&"("+o+")"||""}`,s),this.channels.filter(a=>a._isMember(i)).forEach(a=>a._trigger(r,s,o)),this.stateChangeCallbacks.message.forEach(a=>a(n))})}_onConnOpen(){this.log("transport",`connected to ${this._endPointURL()}`),this._flushSendBuffer(),this.reconnectTimer.reset(),this.heartbeatTimer&&clearInterval(this.heartbeatTimer),this.heartbeatTimer=setInterval(()=>this._sendHeartbeat(),this.heartbeatIntervalMs),this.stateChangeCallbacks.open.forEach(e=>e())}_onConnClose(e){this.log("transport","close",e),this._triggerChanError(),this.heartbeatTimer&&clearInterval(this.heartbeatTimer),this.reconnectTimer.scheduleTimeout(),this.stateChangeCallbacks.close.forEach(n=>n(e))}_onConnError(e){this.log("transport",e.message),this._triggerChanError(),this.stateChangeCallbacks.error.forEach(n=>n(e))}_triggerChanError(){this.channels.forEach(e=>e._trigger(ht.error))}_appendParams(e,n){if(Object.keys(n).length===0)return e;const i=e.match(/\?/)?"&":"?",r=new URLSearchParams(n);return`${e}${i}${r}`}_flushSendBuffer(){this.isConnected()&&this.sendBuffer.length>0&&(this.sendBuffer.forEach(e=>e()),this.sendBuffer=[])}_sendHeartbeat(){var e;if(this.isConnected()){if(this.pendingHeartbeatRef){this.pendingHeartbeatRef=null,this.log("transport","heartbeat timeout. Attempting to re-establish connection"),(e=this.conn)===null||e===void 0||e.close(V_,"hearbeat timeout");return}this.pendingHeartbeatRef=this._makeRef(),this.push({topic:"phoenix",event:"heartbeat",payload:{},ref:this.pendingHeartbeatRef}),this.setAuth(this.accessToken)}}}class ew{constructor(e,n,i){this.binaryType="arraybuffer",this.onclose=()=>{},this.onerror=()=>{},this.onmessage=()=>{},this.onopen=()=>{},this.readyState=Si.connecting,this.send=()=>{},this.url=null,this.url=e,this.close=i.close}}class vc extends Error{constructor(e){super(e),this.__isStorageError=!0,this.name="StorageError"}}function Ce(t){return typeof t=="object"&&t!==null&&"__isStorageError"in t}class tw extends vc{constructor(e,n){super(e),this.name="StorageApiError",this.status=n}toJSON(){return{name:this.name,message:this.message,status:this.status}}}class nd extends vc{constructor(e,n){super(e),this.name="StorageUnknownError",this.originalError=n}}var nw=function(t,e,n,i){function r(s){return s instanceof n?s:new n(function(o){o(s)})}return new(n||(n=Promise))(function(s,o){function a(c){try{u(i.next(c))}catch(h){o(h)}}function l(c){try{u(i.throw(c))}catch(h){o(h)}}function u(c){c.done?s(c.value):r(c.value).then(a,l)}u((i=i.apply(t,e||[])).next())})};const im=t=>{let e;return t?e=t:typeof fetch>"u"?e=(...n)=>Ri(()=>Promise.resolve().then(()=>ls),void 0,import.meta.url).then(({default:i})=>i(...n)):e=fetch,(...n)=>e(...n)},iw=()=>nw(void 0,void 0,void 0,function*(){return typeof Response>"u"?(yield Ri(()=>Promise.resolve().then(()=>ls),void 0,import.meta.url)).Response:Response});var Vi=function(t,e,n,i){function r(s){return s instanceof n?s:new n(function(o){o(s)})}return new(n||(n=Promise))(function(s,o){function a(c){try{u(i.next(c))}catch(h){o(h)}}function l(c){try{u(i.throw(c))}catch(h){o(h)}}function u(c){c.done?s(c.value):r(c.value).then(a,l)}u((i=i.apply(t,e||[])).next())})};const Ka=t=>t.msg||t.message||t.error_description||t.error||JSON.stringify(t),rw=(t,e)=>Vi(void 0,void 0,void 0,function*(){const n=yield iw();t instanceof n?t.json().then(i=>{e(new tw(Ka(i),t.status||500))}).catch(i=>{e(new nd(Ka(i),i))}):e(new nd(Ka(t),t))}),sw=(t,e,n,i)=>{const r={method:t,headers:(e==null?void 0:e.headers)||{}};return t==="GET"?r:(r.headers=Object.assign({"Content-Type":"application/json"},e==null?void 0:e.headers),r.body=JSON.stringify(i),Object.assign(Object.assign({},r),n))};function da(t,e,n,i,r,s){return Vi(this,void 0,void 0,function*(){return new Promise((o,a)=>{t(n,sw(e,i,r,s)).then(l=>{if(!l.ok)throw l;return i!=null&&i.noResolveJson?l:l.json()}).then(l=>o(l)).catch(l=>rw(l,a))})})}function ru(t,e,n,i){return Vi(this,void 0,void 0,function*(){return da(t,"GET",e,n,i)})}function Yt(t,e,n,i,r){return Vi(this,void 0,void 0,function*(){return da(t,"POST",e,i,r,n)})}function ow(t,e,n,i,r){return Vi(this,void 0,void 0,function*(){return da(t,"PUT",e,i,r,n)})}function rm(t,e,n,i,r){return Vi(this,void 0,void 0,function*(){return da(t,"DELETE",e,i,r,n)})}var Je=function(t,e,n,i){function r(s){return s instanceof n?s:new n(function(o){o(s)})}return new(n||(n=Promise))(function(s,o){function a(c){try{u(i.next(c))}catch(h){o(h)}}function l(c){try{u(i.throw(c))}catch(h){o(h)}}function u(c){c.done?s(c.value):r(c.value).then(a,l)}u((i=i.apply(t,e||[])).next())})};const aw={limit:100,offset:0,sortBy:{column:"name",order:"asc"}},id={cacheControl:"3600",contentType:"text/plain;charset=UTF-8",upsert:!1};class lw{constructor(e,n={},i,r){this.url=e,this.headers=n,this.bucketId=i,this.fetch=im(r)}uploadOrUpdate(e,n,i,r){return Je(this,void 0,void 0,function*(){try{let s;const o=Object.assign(Object.assign({},id),r),a=Object.assign(Object.assign({},this.headers),e==="POST"&&{"x-upsert":String(o.upsert)});typeof Blob<"u"&&i instanceof Blob?(s=new FormData,s.append("cacheControl",o.cacheControl),s.append("",i)):typeof FormData<"u"&&i instanceof FormData?(s=i,s.append("cacheControl",o.cacheControl)):(s=i,a["cache-control"]=`max-age=${o.cacheControl}`,a["content-type"]=o.contentType);const l=this._removeEmptyFolders(n),u=this._getFinalPath(l),c=yield this.fetch(`${this.url}/object/${u}`,Object.assign({method:e,body:s,headers:a},o!=null&&o.duplex?{duplex:o.duplex}:{})),h=yield c.json();return c.ok?{data:{path:l,id:h.Id,fullPath:h.Key},error:null}:{data:null,error:h}}catch(s){if(Ce(s))return{data:null,error:s};throw s}})}upload(e,n,i){return Je(this,void 0,void 0,function*(){return this.uploadOrUpdate("POST",e,n,i)})}uploadToSignedUrl(e,n,i,r){return Je(this,void 0,void 0,function*(){const s=this._removeEmptyFolders(e),o=this._getFinalPath(s),a=new URL(this.url+`/object/upload/sign/${o}`);a.searchParams.set("token",n);try{let l;const u=Object.assign({upsert:id.upsert},r),c=Object.assign(Object.assign({},this.headers),{"x-upsert":String(u.upsert)});typeof Blob<"u"&&i instanceof Blob?(l=new FormData,l.append("cacheControl",u.cacheControl),l.append("",i)):typeof FormData<"u"&&i instanceof FormData?(l=i,l.append("cacheControl",u.cacheControl)):(l=i,c["cache-control"]=`max-age=${u.cacheControl}`,c["content-type"]=u.contentType);const h=yield this.fetch(a.toString(),{method:"PUT",body:l,headers:c}),d=yield h.json();return h.ok?{data:{path:s,fullPath:d.Key},error:null}:{data:null,error:d}}catch(l){if(Ce(l))return{data:null,error:l};throw l}})}createSignedUploadUrl(e){return Je(this,void 0,void 0,function*(){try{let n=this._getFinalPath(e);const i=yield Yt(this.fetch,`${this.url}/object/upload/sign/${n}`,{},{headers:this.headers}),r=new URL(this.url+i.url),s=r.searchParams.get("token");if(!s)throw new vc("No token returned by API");return{data:{signedUrl:r.toString(),path:e,token:s},error:null}}catch(n){if(Ce(n))return{data:null,error:n};throw n}})}update(e,n,i){return Je(this,void 0,void 0,function*(){return this.uploadOrUpdate("PUT",e,n,i)})}move(e,n){return Je(this,void 0,void 0,function*(){try{return{data:yield Yt(this.fetch,`${this.url}/object/move`,{bucketId:this.bucketId,sourceKey:e,destinationKey:n},{headers:this.headers}),error:null}}catch(i){if(Ce(i))return{data:null,error:i};throw i}})}copy(e,n){return Je(this,void 0,void 0,function*(){try{return{data:{path:(yield Yt(this.fetch,`${this.url}/object/copy`,{bucketId:this.bucketId,sourceKey:e,destinationKey:n},{headers:this.headers})).Key},error:null}}catch(i){if(Ce(i))return{data:null,error:i};throw i}})}createSignedUrl(e,n,i){return Je(this,void 0,void 0,function*(){try{let r=this._getFinalPath(e),s=yield Yt(this.fetch,`${this.url}/object/sign/${r}`,Object.assign({expiresIn:n},i!=null&&i.transform?{transform:i.transform}:{}),{headers:this.headers});const o=i!=null&&i.download?`&download=${i.download===!0?"":i.download}`:"";return s={signedUrl:encodeURI(`${this.url}${s.signedURL}${o}`)},{data:s,error:null}}catch(r){if(Ce(r))return{data:null,error:r};throw r}})}createSignedUrls(e,n,i){return Je(this,void 0,void 0,function*(){try{const r=yield Yt(this.fetch,`${this.url}/object/sign/${this.bucketId}`,{expiresIn:n,paths:e},{headers:this.headers}),s=i!=null&&i.download?`&download=${i.download===!0?"":i.download}`:"";return{data:r.map(o=>Object.assign(Object.assign({},o),{signedUrl:o.signedURL?encodeURI(`${this.url}${o.signedURL}${s}`):null})),error:null}}catch(r){if(Ce(r))return{data:null,error:r};throw r}})}download(e,n){return Je(this,void 0,void 0,function*(){const r=typeof(n==null?void 0:n.transform)<"u"?"render/image/authenticated":"object",s=this.transformOptsToQueryString((n==null?void 0:n.transform)||{}),o=s?`?${s}`:"";try{const a=this._getFinalPath(e);return{data:yield(yield ru(this.fetch,`${this.url}/${r}/${a}${o}`,{headers:this.headers,noResolveJson:!0})).blob(),error:null}}catch(a){if(Ce(a))return{data:null,error:a};throw a}})}getPublicUrl(e,n){const i=this._getFinalPath(e),r=[],s=n!=null&&n.download?`download=${n.download===!0?"":n.download}`:"";s!==""&&r.push(s);const a=typeof(n==null?void 0:n.transform)<"u"?"render/image":"object",l=this.transformOptsToQueryString((n==null?void 0:n.transform)||{});l!==""&&r.push(l);let u=r.join("&");return u!==""&&(u=`?${u}`),{data:{publicUrl:encodeURI(`${this.url}/${a}/public/${i}${u}`)}}}remove(e){return Je(this,void 0,void 0,function*(){try{return{data:yield rm(this.fetch,`${this.url}/object/${this.bucketId}`,{prefixes:e},{headers:this.headers}),error:null}}catch(n){if(Ce(n))return{data:null,error:n};throw n}})}list(e,n,i){return Je(this,void 0,void 0,function*(){try{const r=Object.assign(Object.assign(Object.assign({},aw),n),{prefix:e||""});return{data:yield Yt(this.fetch,`${this.url}/object/list/${this.bucketId}`,r,{headers:this.headers},i),error:null}}catch(r){if(Ce(r))return{data:null,error:r};throw r}})}_getFinalPath(e){return`${this.bucketId}/${e}`}_removeEmptyFolders(e){return e.replace(/^\/|\/$/g,"").replace(/\/+/g,"/")}transformOptsToQueryString(e){const n=[];return e.width&&n.push(`width=${e.width}`),e.height&&n.push(`height=${e.height}`),e.resize&&n.push(`resize=${e.resize}`),e.format&&n.push(`format=${e.format}`),e.quality&&n.push(`quality=${e.quality}`),n.join("&")}}const uw="2.5.5",cw={"X-Client-Info":`storage-js/${uw}`};var Zn=function(t,e,n,i){function r(s){return s instanceof n?s:new n(function(o){o(s)})}return new(n||(n=Promise))(function(s,o){function a(c){try{u(i.next(c))}catch(h){o(h)}}function l(c){try{u(i.throw(c))}catch(h){o(h)}}function u(c){c.done?s(c.value):r(c.value).then(a,l)}u((i=i.apply(t,e||[])).next())})};class hw{constructor(e,n={},i){this.url=e,this.headers=Object.assign(Object.assign({},cw),n),this.fetch=im(i)}listBuckets(){return Zn(this,void 0,void 0,function*(){try{return{data:yield ru(this.fetch,`${this.url}/bucket`,{headers:this.headers}),error:null}}catch(e){if(Ce(e))return{data:null,error:e};throw e}})}getBucket(e){return Zn(this,void 0,void 0,function*(){try{return{data:yield ru(this.fetch,`${this.url}/bucket/${e}`,{headers:this.headers}),error:null}}catch(n){if(Ce(n))return{data:null,error:n};throw n}})}createBucket(e,n={public:!1}){return Zn(this,void 0,void 0,function*(){try{return{data:yield Yt(this.fetch,`${this.url}/bucket`,{id:e,name:e,public:n.public,file_size_limit:n.fileSizeLimit,allowed_mime_types:n.allowedMimeTypes},{headers:this.headers}),error:null}}catch(i){if(Ce(i))return{data:null,error:i};throw i}})}updateBucket(e,n){return Zn(this,void 0,void 0,function*(){try{return{data:yield ow(this.fetch,`${this.url}/bucket/${e}`,{id:e,name:e,public:n.public,file_size_limit:n.fileSizeLimit,allowed_mime_types:n.allowedMimeTypes},{headers:this.headers}),error:null}}catch(i){if(Ce(i))return{data:null,error:i};throw i}})}emptyBucket(e){return Zn(this,void 0,void 0,function*(){try{return{data:yield Yt(this.fetch,`${this.url}/bucket/${e}/empty`,{},{headers:this.headers}),error:null}}catch(n){if(Ce(n))return{data:null,error:n};throw n}})}deleteBucket(e){return Zn(this,void 0,void 0,function*(){try{return{data:yield rm(this.fetch,`${this.url}/bucket/${e}`,{},{headers:this.headers}),error:null}}catch(n){if(Ce(n))return{data:null,error:n};throw n}})}}class dw extends hw{constructor(e,n={},i){super(e,n,i)}from(e){return new lw(this.url,this.headers,e,this.fetch)}}const fw="2.43.4";let lr="";typeof Deno<"u"?lr="deno":typeof document<"u"?lr="web":typeof navigator<"u"&&navigator.product==="ReactNative"?lr="react-native":lr="node";const pw={"X-Client-Info":`supabase-js-${lr}/${fw}`},gw={headers:pw},mw={schema:"public"},yw={autoRefreshToken:!0,persistSession:!0,detectSessionInUrl:!0,flowType:"implicit"},vw={};var _w=function(t,e,n,i){function r(s){return s instanceof n?s:new n(function(o){o(s)})}return new(n||(n=Promise))(function(s,o){function a(c){try{u(i.next(c))}catch(h){o(h)}}function l(c){try{u(i.throw(c))}catch(h){o(h)}}function u(c){c.done?s(c.value):r(c.value).then(a,l)}u((i=i.apply(t,e||[])).next())})};const ww=t=>{let e;return t?e=t:typeof fetch>"u"?e=gc:e=fetch,(...n)=>e(...n)},xw=()=>typeof Headers>"u"?Zg:Headers,kw=(t,e,n)=>{const i=ww(n),r=xw();return(s,o)=>_w(void 0,void 0,void 0,function*(){var a;const l=(a=yield e())!==null&&a!==void 0?a:t;let u=new r(o==null?void 0:o.headers);return u.has("apikey")||u.set("apikey",t),u.has("Authorization")||u.set("Authorization",`Bearer ${l}`),i(s,Object.assign(Object.assign({},o),{headers:u}))})};function bw(t){return t.replace(/\/$/,"")}function Sw(t,e){const{db:n,auth:i,realtime:r,global:s}=t,{db:o,auth:a,realtime:l,global:u}=e;return{db:Object.assign(Object.assign({},o),n),auth:Object.assign(Object.assign({},a),i),realtime:Object.assign(Object.assign({},l),r),global:Object.assign(Object.assign({},u),s)}}const sm="2.64.2",Cw="http://localhost:9999",Ew="supabase.auth.token",Pw={"X-Client-Info":`gotrue-js/${sm}`},rd=10,su="X-Supabase-Api-Version",om={"2024-01-01":{timestamp:Date.parse("2024-01-01T00:00:00.0Z"),name:"2024-01-01"}};function Tw(t){return Math.round(Date.now()/1e3)+t}function Ow(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(t){const e=Math.random()*16|0;return(t=="x"?e:e&3|8).toString(16)})}const lt=()=>typeof document<"u",kn={tested:!1,writable:!1},br=()=>{if(!lt())return!1;try{if(typeof globalThis.localStorage!="object")return!1}catch{return!1}if(kn.tested)return kn.writable;const t=`lswt-${Math.random()}${Math.random()}`;try{globalThis.localStorage.setItem(t,t),globalThis.localStorage.removeItem(t),kn.tested=!0,kn.writable=!0}catch{kn.tested=!0,kn.writable=!1}return kn.writable};function Ya(t){const e={},n=new URL(t);if(n.hash&&n.hash[0]==="#")try{new URLSearchParams(n.hash.substring(1)).forEach((r,s)=>{e[s]=r})}catch{}return n.searchParams.forEach((i,r)=>{e[r]=i}),e}const am=t=>{let e;return t?e=t:typeof fetch>"u"?e=(...n)=>Ri(()=>Promise.resolve().then(()=>ls),void 0,import.meta.url).then(({default:i})=>i(...n)):e=fetch,(...n)=>e(...n)},Lw=t=>typeof t=="object"&&t!==null&&"status"in t&&"ok"in t&&"json"in t&&typeof t.json=="function",lm=async(t,e,n)=>{await t.setItem(e,JSON.stringify(n))},Os=async(t,e)=>{const n=await t.getItem(e);if(!n)return null;try{return JSON.parse(n)}catch{return n}},Ga=async(t,e)=>{await t.removeItem(e)};function Mw(t){const e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";let n="",i,r,s,o,a,l,u,c=0;for(t=t.replace("-","+").replace("_","/");c<t.length;)o=e.indexOf(t.charAt(c++)),a=e.indexOf(t.charAt(c++)),l=e.indexOf(t.charAt(c++)),u=e.indexOf(t.charAt(c++)),i=o<<2|a>>4,r=(a&15)<<4|l>>2,s=(l&3)<<6|u,n=n+String.fromCharCode(i),l!=64&&r!=0&&(n=n+String.fromCharCode(r)),u!=64&&s!=0&&(n=n+String.fromCharCode(s));return n}class fa{constructor(){this.promise=new fa.promiseConstructor((e,n)=>{this.resolve=e,this.reject=n})}}fa.promiseConstructor=Promise;function sd(t){const e=/^([a-z0-9_-]{4})*($|[a-z0-9_-]{3}=?$|[a-z0-9_-]{2}(==)?$)$/i,n=t.split(".");if(n.length!==3)throw new Error("JWT is not valid: not a JWT structure");if(!e.test(n[1]))throw new Error("JWT is not valid: payload is not in base64url format");const i=n[1];return JSON.parse(Mw(i))}async function Rw(t){return await new Promise(e=>{setTimeout(()=>e(null),t)})}function Iw(t,e){return new Promise((i,r)=>{(async()=>{for(let s=0;s<1/0;s++)try{const o=await t(s);if(!e(s,null,o)){i(o);return}}catch(o){if(!e(s,o)){r(o);return}}})()})}function Aw(t){return("0"+t.toString(16)).substr(-2)}function Dw(){const e=new Uint32Array(56);if(typeof crypto>"u"){const n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._~",i=n.length;let r="";for(let s=0;s<56;s++)r+=n.charAt(Math.floor(Math.random()*i));return r}return crypto.getRandomValues(e),Array.from(e,Aw).join("")}async function jw(t){const n=new TextEncoder().encode(t),i=await crypto.subtle.digest("SHA-256",n),r=new Uint8Array(i);return Array.from(r).map(s=>String.fromCharCode(s)).join("")}function Nw(t){return btoa(t).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}async function zw(t){if(!(typeof crypto<"u"&&typeof crypto.subtle<"u"&&typeof TextEncoder<"u"))return console.warn("WebCrypto API is not supported. Code challenge method will default to use plain instead of sha256."),t;const n=await jw(t);return Nw(n)}async function ei(t,e,n=!1){const i=Dw();let r=i;n&&(r+="/PASSWORD_RECOVERY"),await lm(t,`${e}-code-verifier`,r);const s=await zw(i);return[s,i===s?"plain":"s256"]}const Fw=/^2[0-9]{3}-(0[1-9]|1[0-2])-(0[1-9]|1[0-9]|2[0-9]|3[0-1])$/i;function $w(t){const e=t.headers.get(su);if(!e||!e.match(Fw))return null;try{return new Date(`${e}T00:00:00.0Z`)}catch{return null}}class _c extends Error{constructor(e,n,i){super(e),this.__isAuthError=!0,this.name="AuthError",this.status=n,this.code=i}}function j(t){return typeof t=="object"&&t!==null&&"__isAuthError"in t}class Uw extends _c{constructor(e,n,i){super(e,n,i),this.name="AuthApiError",this.status=n,this.code=i}}function Bw(t){return j(t)&&t.name==="AuthApiError"}class um extends _c{constructor(e,n){super(e),this.name="AuthUnknownError",this.originalError=n}}class Qn extends _c{constructor(e,n,i,r){super(e,i,r),this.name=n,this.status=i}}class bn extends Qn{constructor(){super("Auth session missing!","AuthSessionMissingError",400,void 0)}}class qa extends Qn{constructor(){super("Auth session or user missing","AuthInvalidTokenResponseError",500,void 0)}}class Ls extends Qn{constructor(e){super(e,"AuthInvalidCredentialsError",400,void 0)}}class Ms extends Qn{constructor(e,n=null){super(e,"AuthImplicitGrantRedirectError",500,void 0),this.details=null,this.details=n}toJSON(){return{name:this.name,message:this.message,status:this.status,details:this.details}}}class od extends Qn{constructor(e,n=null){super(e,"AuthPKCEGrantCodeExchangeError",500,void 0),this.details=null,this.details=n}toJSON(){return{name:this.name,message:this.message,status:this.status,details:this.details}}}class ou extends Qn{constructor(e,n){super(e,"AuthRetryableFetchError",n,void 0)}}function Qa(t){return j(t)&&t.name==="AuthRetryableFetchError"}class ad extends Qn{constructor(e,n,i){super(e,"AuthWeakPasswordError",n,"weak_password"),this.reasons=i}}var Vw=function(t,e){var n={};for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&e.indexOf(i)<0&&(n[i]=t[i]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var r=0,i=Object.getOwnPropertySymbols(t);r<i.length;r++)e.indexOf(i[r])<0&&Object.prototype.propertyIsEnumerable.call(t,i[r])&&(n[i[r]]=t[i[r]]);return n};const Ln=t=>t.msg||t.message||t.error_description||t.error||JSON.stringify(t),Hw=[502,503,504];async function ld(t){var e;if(!Lw(t))throw new ou(Ln(t),0);if(Hw.includes(t.status))throw new ou(Ln(t),t.status);let n;try{n=await t.json()}catch(s){throw new um(Ln(s),s)}let i;const r=$w(t);if(r&&r.getTime()>=om["2024-01-01"].timestamp&&typeof n=="object"&&n&&typeof n.code=="string"?i=n.code:typeof n=="object"&&n&&typeof n.error_code=="string"&&(i=n.error_code),i){if(i==="weak_password")throw new ad(Ln(n),t.status,((e=n.weak_password)===null||e===void 0?void 0:e.reasons)||[])}else if(typeof n=="object"&&n&&typeof n.weak_password=="object"&&n.weak_password&&Array.isArray(n.weak_password.reasons)&&n.weak_password.reasons.length&&n.weak_password.reasons.reduce((s,o)=>s&&typeof o=="string",!0))throw new ad(Ln(n),t.status,n.weak_password.reasons);throw new Uw(Ln(n),t.status||500,i)}const Ww=(t,e,n,i)=>{const r={method:t,headers:(e==null?void 0:e.headers)||{}};return t==="GET"?r:(r.headers=Object.assign({"Content-Type":"application/json;charset=UTF-8"},e==null?void 0:e.headers),r.body=JSON.stringify(i),Object.assign(Object.assign({},r),n))};async function z(t,e,n,i){var r;const s=Object.assign({},i==null?void 0:i.headers);s[su]||(s[su]=om["2024-01-01"].name),i!=null&&i.jwt&&(s.Authorization=`Bearer ${i.jwt}`);const o=(r=i==null?void 0:i.query)!==null&&r!==void 0?r:{};i!=null&&i.redirectTo&&(o.redirect_to=i.redirectTo);const a=Object.keys(o).length?"?"+new URLSearchParams(o).toString():"",l=await Kw(t,e,n+a,{headers:s,noResolveJson:i==null?void 0:i.noResolveJson},{},i==null?void 0:i.body);return i!=null&&i.xform?i==null?void 0:i.xform(l):{data:Object.assign({},l),error:null}}async function Kw(t,e,n,i,r,s){const o=Ww(e,i,r,s);let a;try{a=await t(n,Object.assign({},o))}catch(l){throw console.error(l),new ou(Ln(l),0)}if(a.ok||await ld(a),i!=null&&i.noResolveJson)return a;try{return await a.json()}catch(l){await ld(l)}}function Ht(t){var e;let n=null;Qw(t)&&(n=Object.assign({},t),t.expires_at||(n.expires_at=Tw(t.expires_in)));const i=(e=t.user)!==null&&e!==void 0?e:t;return{data:{session:n,user:i},error:null}}function ud(t){const e=Ht(t);return!e.error&&t.weak_password&&typeof t.weak_password=="object"&&Array.isArray(t.weak_password.reasons)&&t.weak_password.reasons.length&&t.weak_password.message&&typeof t.weak_password.message=="string"&&t.weak_password.reasons.reduce((n,i)=>n&&typeof i=="string",!0)&&(e.data.weak_password=t.weak_password),e}function Qt(t){var e;return{data:{user:(e=t.user)!==null&&e!==void 0?e:t},error:null}}function Yw(t){return{data:t,error:null}}function Gw(t){const{action_link:e,email_otp:n,hashed_token:i,redirect_to:r,verification_type:s}=t,o=Vw(t,["action_link","email_otp","hashed_token","redirect_to","verification_type"]),a={action_link:e,email_otp:n,hashed_token:i,redirect_to:r,verification_type:s},l=Object.assign({},o);return{data:{properties:a,user:l},error:null}}function qw(t){return t}function Qw(t){return t.access_token&&t.refresh_token&&t.expires_in}var Xw=function(t,e){var n={};for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&e.indexOf(i)<0&&(n[i]=t[i]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var r=0,i=Object.getOwnPropertySymbols(t);r<i.length;r++)e.indexOf(i[r])<0&&Object.prototype.propertyIsEnumerable.call(t,i[r])&&(n[i[r]]=t[i[r]]);return n};class Jw{constructor({url:e="",headers:n={},fetch:i}){this.url=e,this.headers=n,this.fetch=am(i),this.mfa={listFactors:this._listFactors.bind(this),deleteFactor:this._deleteFactor.bind(this)}}async signOut(e,n="global"){try{return await z(this.fetch,"POST",`${this.url}/logout?scope=${n}`,{headers:this.headers,jwt:e,noResolveJson:!0}),{data:null,error:null}}catch(i){if(j(i))return{data:null,error:i};throw i}}async inviteUserByEmail(e,n={}){try{return await z(this.fetch,"POST",`${this.url}/invite`,{body:{email:e,data:n.data},headers:this.headers,redirectTo:n.redirectTo,xform:Qt})}catch(i){if(j(i))return{data:{user:null},error:i};throw i}}async generateLink(e){try{const{options:n}=e,i=Xw(e,["options"]),r=Object.assign(Object.assign({},i),n);return"newEmail"in i&&(r.new_email=i==null?void 0:i.newEmail,delete r.newEmail),await z(this.fetch,"POST",`${this.url}/admin/generate_link`,{body:r,headers:this.headers,xform:Gw,redirectTo:n==null?void 0:n.redirectTo})}catch(n){if(j(n))return{data:{properties:null,user:null},error:n};throw n}}async createUser(e){try{return await z(this.fetch,"POST",`${this.url}/admin/users`,{body:e,headers:this.headers,xform:Qt})}catch(n){if(j(n))return{data:{user:null},error:n};throw n}}async listUsers(e){var n,i,r,s,o,a,l;try{const u={nextPage:null,lastPage:0,total:0},c=await z(this.fetch,"GET",`${this.url}/admin/users`,{headers:this.headers,noResolveJson:!0,query:{page:(i=(n=e==null?void 0:e.page)===null||n===void 0?void 0:n.toString())!==null&&i!==void 0?i:"",per_page:(s=(r=e==null?void 0:e.perPage)===null||r===void 0?void 0:r.toString())!==null&&s!==void 0?s:""},xform:qw});if(c.error)throw c.error;const h=await c.json(),d=(o=c.headers.get("x-total-count"))!==null&&o!==void 0?o:0,f=(l=(a=c.headers.get("link"))===null||a===void 0?void 0:a.split(","))!==null&&l!==void 0?l:[];return f.length>0&&(f.forEach(m=>{const y=parseInt(m.split(";")[0].split("=")[1].substring(0,1)),v=JSON.parse(m.split(";")[1].split("=")[1]);u[`${v}Page`]=y}),u.total=parseInt(d)),{data:Object.assign(Object.assign({},h),u),error:null}}catch(u){if(j(u))return{data:{users:[]},error:u};throw u}}async getUserById(e){try{return await z(this.fetch,"GET",`${this.url}/admin/users/${e}`,{headers:this.headers,xform:Qt})}catch(n){if(j(n))return{data:{user:null},error:n};throw n}}async updateUserById(e,n){try{return await z(this.fetch,"PUT",`${this.url}/admin/users/${e}`,{body:n,headers:this.headers,xform:Qt})}catch(i){if(j(i))return{data:{user:null},error:i};throw i}}async deleteUser(e,n=!1){try{return await z(this.fetch,"DELETE",`${this.url}/admin/users/${e}`,{headers:this.headers,body:{should_soft_delete:n},xform:Qt})}catch(i){if(j(i))return{data:{user:null},error:i};throw i}}async _listFactors(e){try{const{data:n,error:i}=await z(this.fetch,"GET",`${this.url}/admin/users/${e.userId}/factors`,{headers:this.headers,xform:r=>({data:{factors:r},error:null})});return{data:n,error:i}}catch(n){if(j(n))return{data:null,error:n};throw n}}async _deleteFactor(e){try{return{data:await z(this.fetch,"DELETE",`${this.url}/admin/users/${e.userId}/factors/${e.id}`,{headers:this.headers}),error:null}}catch(n){if(j(n))return{data:null,error:n};throw n}}}const Zw={getItem:t=>br()?globalThis.localStorage.getItem(t):null,setItem:(t,e)=>{br()&&globalThis.localStorage.setItem(t,e)},removeItem:t=>{br()&&globalThis.localStorage.removeItem(t)}};function cd(t={}){return{getItem:e=>t[e]||null,setItem:(e,n)=>{t[e]=n},removeItem:e=>{delete t[e]}}}function ex(){if(typeof globalThis!="object")try{Object.defineProperty(Object.prototype,"__magic__",{get:function(){return this},configurable:!0}),__magic__.globalThis=__magic__,delete Object.prototype.__magic__}catch{typeof self<"u"&&(self.globalThis=self)}}const ti={debug:!!(globalThis&&br()&&globalThis.localStorage&&globalThis.localStorage.getItem("supabase.gotrue-js.locks.debug")==="true")};class cm extends Error{constructor(e){super(e),this.isAcquireTimeout=!0}}class tx extends cm{}async function nx(t,e,n){ti.debug&&console.log("@supabase/gotrue-js: navigatorLock: acquire lock",t,e);const i=new globalThis.AbortController;return e>0&&setTimeout(()=>{i.abort(),ti.debug&&console.log("@supabase/gotrue-js: navigatorLock acquire timed out",t)},e),await globalThis.navigator.locks.request(t,e===0?{mode:"exclusive",ifAvailable:!0}:{mode:"exclusive",signal:i.signal},async r=>{if(r){ti.debug&&console.log("@supabase/gotrue-js: navigatorLock: acquired",t,r.name);try{return await n()}finally{ti.debug&&console.log("@supabase/gotrue-js: navigatorLock: released",t,r.name)}}else{if(e===0)throw ti.debug&&console.log("@supabase/gotrue-js: navigatorLock: not immediately available",t),new tx(`Acquiring an exclusive Navigator LockManager lock "${t}" immediately failed`);if(ti.debug)try{const s=await globalThis.navigator.locks.query();console.log("@supabase/gotrue-js: Navigator LockManager state",JSON.stringify(s,null,"  "))}catch(s){console.warn("@supabase/gotrue-js: Error when querying Navigator LockManager state",s)}return console.warn("@supabase/gotrue-js: Navigator LockManager returned a null lock when using #request without ifAvailable set to true, it appears this browser is not following the LockManager spec https://developer.mozilla.org/en-US/docs/Web/API/LockManager/request"),await n()}})}ex();const ix={url:Cw,storageKey:Ew,autoRefreshToken:!0,persistSession:!0,detectSessionInUrl:!0,headers:Pw,flowType:"implicit",debug:!1,hasCustomAuthorizationHeader:!1},Ji=30*1e3,hd=3;async function dd(t,e,n){return await n()}class Qr{constructor(e){var n,i;this.memoryStorage=null,this.stateChangeEmitters=new Map,this.autoRefreshTicker=null,this.visibilityChangedCallback=null,this.refreshingDeferred=null,this.initializePromise=null,this.detectSessionInUrl=!0,this.hasCustomAuthorizationHeader=!1,this.suppressGetSessionWarning=!1,this.lockAcquired=!1,this.pendingInLock=[],this.broadcastChannel=null,this.logger=console.log,this.instanceID=Qr.nextInstanceID,Qr.nextInstanceID+=1,this.instanceID>0&&lt()&&console.warn("Multiple GoTrueClient instances detected in the same browser context. It is not an error, but this should be avoided as it may produce undefined behavior when used concurrently under the same storage key.");const r=Object.assign(Object.assign({},ix),e);if(this.logDebugMessages=!!r.debug,typeof r.debug=="function"&&(this.logger=r.debug),this.persistSession=r.persistSession,this.storageKey=r.storageKey,this.autoRefreshToken=r.autoRefreshToken,this.admin=new Jw({url:r.url,headers:r.headers,fetch:r.fetch}),this.url=r.url,this.headers=r.headers,this.fetch=am(r.fetch),this.lock=r.lock||dd,this.detectSessionInUrl=r.detectSessionInUrl,this.flowType=r.flowType,this.hasCustomAuthorizationHeader=r.hasCustomAuthorizationHeader,r.lock?this.lock=r.lock:lt()&&(!((n=globalThis==null?void 0:globalThis.navigator)===null||n===void 0)&&n.locks)?this.lock=nx:this.lock=dd,this.mfa={verify:this._verify.bind(this),enroll:this._enroll.bind(this),unenroll:this._unenroll.bind(this),challenge:this._challenge.bind(this),listFactors:this._listFactors.bind(this),challengeAndVerify:this._challengeAndVerify.bind(this),getAuthenticatorAssuranceLevel:this._getAuthenticatorAssuranceLevel.bind(this)},this.persistSession?r.storage?this.storage=r.storage:br()?this.storage=Zw:(this.memoryStorage={},this.storage=cd(this.memoryStorage)):(this.memoryStorage={},this.storage=cd(this.memoryStorage)),lt()&&globalThis.BroadcastChannel&&this.persistSession&&this.storageKey){try{this.broadcastChannel=new globalThis.BroadcastChannel(this.storageKey)}catch(s){console.error("Failed to create a new BroadcastChannel, multi-tab state changes will not be available",s)}(i=this.broadcastChannel)===null||i===void 0||i.addEventListener("message",async s=>{this._debug("received broadcast notification from other tab or client",s),await this._notifyAllSubscribers(s.data.event,s.data.session,!1)})}this.initialize()}_debug(...e){return this.logDebugMessages&&this.logger(`GoTrueClient@${this.instanceID} (${sm}) ${new Date().toISOString()}`,...e),this}async initialize(){return this.initializePromise?await this.initializePromise:(this.initializePromise=(async()=>await this._acquireLock(-1,async()=>await this._initialize()))(),await this.initializePromise)}async _initialize(){try{const e=lt()?await this._isPKCEFlow():!1;if(this._debug("#_initialize()","begin","is PKCE flow",e),e||this.detectSessionInUrl&&this._isImplicitGrantFlow()){const{data:n,error:i}=await this._getSessionFromURL(e);if(i)return this._debug("#_initialize()","error detecting session from URL",i),(i==null?void 0:i.message)==="Identity is already linked"||(i==null?void 0:i.message)==="Identity is already linked to another user"?{error:i}:(await this._removeSession(),{error:i});const{session:r,redirectType:s}=n;return this._debug("#_initialize()","detected session in URL",r,"redirect type",s),await this._saveSession(r),setTimeout(async()=>{s==="recovery"?await this._notifyAllSubscribers("PASSWORD_RECOVERY",r):await this._notifyAllSubscribers("SIGNED_IN",r)},0),{error:null}}return await this._recoverAndRefresh(),{error:null}}catch(e){return j(e)?{error:e}:{error:new um("Unexpected error during initialization",e)}}finally{await this._handleVisibilityChange(),this._debug("#_initialize()","end")}}async signInAnonymously(e){var n,i,r;try{await this._removeSession();const s=await z(this.fetch,"POST",`${this.url}/signup`,{headers:this.headers,body:{data:(i=(n=e==null?void 0:e.options)===null||n===void 0?void 0:n.data)!==null&&i!==void 0?i:{},gotrue_meta_security:{captcha_token:(r=e==null?void 0:e.options)===null||r===void 0?void 0:r.captchaToken}},xform:Ht}),{data:o,error:a}=s;if(a||!o)return{data:{user:null,session:null},error:a};const l=o.session,u=o.user;return o.session&&(await this._saveSession(o.session),await this._notifyAllSubscribers("SIGNED_IN",l)),{data:{user:u,session:l},error:null}}catch(s){if(j(s))return{data:{user:null,session:null},error:s};throw s}}async signUp(e){var n,i,r;try{await this._removeSession();let s;if("email"in e){const{email:c,password:h,options:d}=e;let f=null,m=null;this.flowType==="pkce"&&([f,m]=await ei(this.storage,this.storageKey)),s=await z(this.fetch,"POST",`${this.url}/signup`,{headers:this.headers,redirectTo:d==null?void 0:d.emailRedirectTo,body:{email:c,password:h,data:(n=d==null?void 0:d.data)!==null&&n!==void 0?n:{},gotrue_meta_security:{captcha_token:d==null?void 0:d.captchaToken},code_challenge:f,code_challenge_method:m},xform:Ht})}else if("phone"in e){const{phone:c,password:h,options:d}=e;s=await z(this.fetch,"POST",`${this.url}/signup`,{headers:this.headers,body:{phone:c,password:h,data:(i=d==null?void 0:d.data)!==null&&i!==void 0?i:{},channel:(r=d==null?void 0:d.channel)!==null&&r!==void 0?r:"sms",gotrue_meta_security:{captcha_token:d==null?void 0:d.captchaToken}},xform:Ht})}else throw new Ls("You must provide either an email or phone number and a password");const{data:o,error:a}=s;if(a||!o)return{data:{user:null,session:null},error:a};const l=o.session,u=o.user;return o.session&&(await this._saveSession(o.session),await this._notifyAllSubscribers("SIGNED_IN",l)),{data:{user:u,session:l},error:null}}catch(s){if(j(s))return{data:{user:null,session:null},error:s};throw s}}async signInWithPassword(e){try{await this._removeSession();let n;if("email"in e){const{email:s,password:o,options:a}=e;n=await z(this.fetch,"POST",`${this.url}/token?grant_type=password`,{headers:this.headers,body:{email:s,password:o,gotrue_meta_security:{captcha_token:a==null?void 0:a.captchaToken}},xform:ud})}else if("phone"in e){const{phone:s,password:o,options:a}=e;n=await z(this.fetch,"POST",`${this.url}/token?grant_type=password`,{headers:this.headers,body:{phone:s,password:o,gotrue_meta_security:{captcha_token:a==null?void 0:a.captchaToken}},xform:ud})}else throw new Ls("You must provide either an email or phone number and a password");const{data:i,error:r}=n;return r?{data:{user:null,session:null},error:r}:!i||!i.session||!i.user?{data:{user:null,session:null},error:new qa}:(i.session&&(await this._saveSession(i.session),await this._notifyAllSubscribers("SIGNED_IN",i.session)),{data:Object.assign({user:i.user,session:i.session},i.weak_password?{weakPassword:i.weak_password}:null),error:r})}catch(n){if(j(n))return{data:{user:null,session:null},error:n};throw n}}async signInWithOAuth(e){var n,i,r,s;return await this._removeSession(),await this._handleProviderSignIn(e.provider,{redirectTo:(n=e.options)===null||n===void 0?void 0:n.redirectTo,scopes:(i=e.options)===null||i===void 0?void 0:i.scopes,queryParams:(r=e.options)===null||r===void 0?void 0:r.queryParams,skipBrowserRedirect:(s=e.options)===null||s===void 0?void 0:s.skipBrowserRedirect})}async exchangeCodeForSession(e){return await this.initializePromise,this._acquireLock(-1,async()=>this._exchangeCodeForSession(e))}async _exchangeCodeForSession(e){const n=await Os(this.storage,`${this.storageKey}-code-verifier`),[i,r]=(n??"").split("/"),{data:s,error:o}=await z(this.fetch,"POST",`${this.url}/token?grant_type=pkce`,{headers:this.headers,body:{auth_code:e,code_verifier:i},xform:Ht});return await Ga(this.storage,`${this.storageKey}-code-verifier`),o?{data:{user:null,session:null,redirectType:null},error:o}:!s||!s.session||!s.user?{data:{user:null,session:null,redirectType:null},error:new qa}:(s.session&&(await this._saveSession(s.session),await this._notifyAllSubscribers("SIGNED_IN",s.session)),{data:Object.assign(Object.assign({},s),{redirectType:r??null}),error:o})}async signInWithIdToken(e){await this._removeSession();try{const{options:n,provider:i,token:r,access_token:s,nonce:o}=e,a=await z(this.fetch,"POST",`${this.url}/token?grant_type=id_token`,{headers:this.headers,body:{provider:i,id_token:r,access_token:s,nonce:o,gotrue_meta_security:{captcha_token:n==null?void 0:n.captchaToken}},xform:Ht}),{data:l,error:u}=a;return u?{data:{user:null,session:null},error:u}:!l||!l.session||!l.user?{data:{user:null,session:null},error:new qa}:(l.session&&(await this._saveSession(l.session),await this._notifyAllSubscribers("SIGNED_IN",l.session)),{data:l,error:u})}catch(n){if(j(n))return{data:{user:null,session:null},error:n};throw n}}async signInWithOtp(e){var n,i,r,s,o;try{if(await this._removeSession(),"email"in e){const{email:a,options:l}=e;let u=null,c=null;this.flowType==="pkce"&&([u,c]=await ei(this.storage,this.storageKey));const{error:h}=await z(this.fetch,"POST",`${this.url}/otp`,{headers:this.headers,body:{email:a,data:(n=l==null?void 0:l.data)!==null&&n!==void 0?n:{},create_user:(i=l==null?void 0:l.shouldCreateUser)!==null&&i!==void 0?i:!0,gotrue_meta_security:{captcha_token:l==null?void 0:l.captchaToken},code_challenge:u,code_challenge_method:c},redirectTo:l==null?void 0:l.emailRedirectTo});return{data:{user:null,session:null},error:h}}if("phone"in e){const{phone:a,options:l}=e,{data:u,error:c}=await z(this.fetch,"POST",`${this.url}/otp`,{headers:this.headers,body:{phone:a,data:(r=l==null?void 0:l.data)!==null&&r!==void 0?r:{},create_user:(s=l==null?void 0:l.shouldCreateUser)!==null&&s!==void 0?s:!0,gotrue_meta_security:{captcha_token:l==null?void 0:l.captchaToken},channel:(o=l==null?void 0:l.channel)!==null&&o!==void 0?o:"sms"}});return{data:{user:null,session:null,messageId:u==null?void 0:u.message_id},error:c}}throw new Ls("You must provide either an email or phone number.")}catch(a){if(j(a))return{data:{user:null,session:null},error:a};throw a}}async verifyOtp(e){var n,i;try{e.type!=="email_change"&&e.type!=="phone_change"&&await this._removeSession();let r,s;"options"in e&&(r=(n=e.options)===null||n===void 0?void 0:n.redirectTo,s=(i=e.options)===null||i===void 0?void 0:i.captchaToken);const{data:o,error:a}=await z(this.fetch,"POST",`${this.url}/verify`,{headers:this.headers,body:Object.assign(Object.assign({},e),{gotrue_meta_security:{captcha_token:s}}),redirectTo:r,xform:Ht});if(a)throw a;if(!o)throw new Error("An error occurred on token verification.");const l=o.session,u=o.user;return l!=null&&l.access_token&&(await this._saveSession(l),await this._notifyAllSubscribers(e.type=="recovery"?"PASSWORD_RECOVERY":"SIGNED_IN",l)),{data:{user:u,session:l},error:null}}catch(r){if(j(r))return{data:{user:null,session:null},error:r};throw r}}async signInWithSSO(e){var n,i,r;try{await this._removeSession();let s=null,o=null;return this.flowType==="pkce"&&([s,o]=await ei(this.storage,this.storageKey)),await z(this.fetch,"POST",`${this.url}/sso`,{body:Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},"providerId"in e?{provider_id:e.providerId}:null),"domain"in e?{domain:e.domain}:null),{redirect_to:(i=(n=e.options)===null||n===void 0?void 0:n.redirectTo)!==null&&i!==void 0?i:void 0}),!((r=e==null?void 0:e.options)===null||r===void 0)&&r.captchaToken?{gotrue_meta_security:{captcha_token:e.options.captchaToken}}:null),{skip_http_redirect:!0,code_challenge:s,code_challenge_method:o}),headers:this.headers,xform:Yw})}catch(s){if(j(s))return{data:null,error:s};throw s}}async reauthenticate(){return await this.initializePromise,await this._acquireLock(-1,async()=>await this._reauthenticate())}async _reauthenticate(){try{return await this._useSession(async e=>{const{data:{session:n},error:i}=e;if(i)throw i;if(!n)throw new bn;const{error:r}=await z(this.fetch,"GET",`${this.url}/reauthenticate`,{headers:this.headers,jwt:n.access_token});return{data:{user:null,session:null},error:r}})}catch(e){if(j(e))return{data:{user:null,session:null},error:e};throw e}}async resend(e){try{e.type!="email_change"&&e.type!="phone_change"&&await this._removeSession();const n=`${this.url}/resend`;if("email"in e){const{email:i,type:r,options:s}=e,{error:o}=await z(this.fetch,"POST",n,{headers:this.headers,body:{email:i,type:r,gotrue_meta_security:{captcha_token:s==null?void 0:s.captchaToken}},redirectTo:s==null?void 0:s.emailRedirectTo});return{data:{user:null,session:null},error:o}}else if("phone"in e){const{phone:i,type:r,options:s}=e,{data:o,error:a}=await z(this.fetch,"POST",n,{headers:this.headers,body:{phone:i,type:r,gotrue_meta_security:{captcha_token:s==null?void 0:s.captchaToken}}});return{data:{user:null,session:null,messageId:o==null?void 0:o.message_id},error:a}}throw new Ls("You must provide either an email or phone number and a type")}catch(n){if(j(n))return{data:{user:null,session:null},error:n};throw n}}async getSession(){return await this.initializePromise,await this._acquireLock(-1,async()=>this._useSession(async n=>n))}async _acquireLock(e,n){this._debug("#_acquireLock","begin",e);try{if(this.lockAcquired){const i=this.pendingInLock.length?this.pendingInLock[this.pendingInLock.length-1]:Promise.resolve(),r=(async()=>(await i,await n()))();return this.pendingInLock.push((async()=>{try{await r}catch{}})()),r}return await this.lock(`lock:${this.storageKey}`,e,async()=>{this._debug("#_acquireLock","lock acquired for storage key",this.storageKey);try{this.lockAcquired=!0;const i=n();for(this.pendingInLock.push((async()=>{try{await i}catch{}})()),await i;this.pendingInLock.length;){const r=[...this.pendingInLock];await Promise.all(r),this.pendingInLock.splice(0,r.length)}return await i}finally{this._debug("#_acquireLock","lock released for storage key",this.storageKey),this.lockAcquired=!1}})}finally{this._debug("#_acquireLock","end")}}async _useSession(e){this._debug("#_useSession","begin");try{const n=await this.__loadSession();return await e(n)}finally{this._debug("#_useSession","end")}}async __loadSession(){this._debug("#__loadSession()","begin"),this.lockAcquired||this._debug("#__loadSession()","used outside of an acquired lock!",new Error().stack);try{let e=null;const n=await Os(this.storage,this.storageKey);if(this._debug("#getSession()","session from storage",n),n!==null&&(this._isValidSession(n)?e=n:(this._debug("#getSession()","session from storage is not valid"),await this._removeSession())),!e)return{data:{session:null},error:null};const i=e.expires_at?e.expires_at<=Date.now()/1e3:!1;if(this._debug("#__loadSession()",`session has${i?"":" not"} expired`,"expires_at",e.expires_at),!i){if(this.storage.isServer){const o=this.suppressGetSessionWarning;e=new Proxy(e,{get(l,u,c){return!o&&u==="user"&&console.warn("Using the user object as returned from supabase.auth.getSession() or from some supabase.auth.onAuthStateChange() events could be insecure! This value comes directly from the storage medium (usually cookies on the server) and many not be authentic. Use supabase.auth.getUser() instead which authenticates the data by contacting the Supabase Auth server."),Reflect.get(l,u,c)}})}return{data:{session:e},error:null}}const{session:r,error:s}=await this._callRefreshToken(e.refresh_token);return s?{data:{session:null},error:s}:{data:{session:r},error:null}}finally{this._debug("#__loadSession()","end")}}async getUser(e){return e?await this._getUser(e):(await this.initializePromise,await this._acquireLock(-1,async()=>await this._getUser()))}async _getUser(e){try{return e?await z(this.fetch,"GET",`${this.url}/user`,{headers:this.headers,jwt:e,xform:Qt}):await this._useSession(async n=>{var i,r,s;const{data:o,error:a}=n;if(a)throw a;return!(!((i=o.session)===null||i===void 0)&&i.access_token)&&!this.hasCustomAuthorizationHeader?{data:{user:null},error:new bn}:await z(this.fetch,"GET",`${this.url}/user`,{headers:this.headers,jwt:(s=(r=o.session)===null||r===void 0?void 0:r.access_token)!==null&&s!==void 0?s:void 0,xform:Qt})})}catch(n){if(j(n))return{data:{user:null},error:n};throw n}}async updateUser(e,n={}){return await this.initializePromise,await this._acquireLock(-1,async()=>await this._updateUser(e,n))}async _updateUser(e,n={}){try{return await this._useSession(async i=>{const{data:r,error:s}=i;if(s)throw s;if(!r.session)throw new bn;const o=r.session;let a=null,l=null;this.flowType==="pkce"&&e.email!=null&&([a,l]=await ei(this.storage,this.storageKey));const{data:u,error:c}=await z(this.fetch,"PUT",`${this.url}/user`,{headers:this.headers,redirectTo:n==null?void 0:n.emailRedirectTo,body:Object.assign(Object.assign({},e),{code_challenge:a,code_challenge_method:l}),jwt:o.access_token,xform:Qt});if(c)throw c;return o.user=u.user,await this._saveSession(o),await this._notifyAllSubscribers("USER_UPDATED",o),{data:{user:o.user},error:null}})}catch(i){if(j(i))return{data:{user:null},error:i};throw i}}_decodeJWT(e){return sd(e)}async setSession(e){return await this.initializePromise,await this._acquireLock(-1,async()=>await this._setSession(e))}async _setSession(e){try{if(!e.access_token||!e.refresh_token)throw new bn;const n=Date.now()/1e3;let i=n,r=!0,s=null;const o=sd(e.access_token);if(o.exp&&(i=o.exp,r=i<=n),r){const{session:a,error:l}=await this._callRefreshToken(e.refresh_token);if(l)return{data:{user:null,session:null},error:l};if(!a)return{data:{user:null,session:null},error:null};s=a}else{const{data:a,error:l}=await this._getUser(e.access_token);if(l)throw l;s={access_token:e.access_token,refresh_token:e.refresh_token,user:a.user,token_type:"bearer",expires_in:i-n,expires_at:i},await this._saveSession(s),await this._notifyAllSubscribers("SIGNED_IN",s)}return{data:{user:s.user,session:s},error:null}}catch(n){if(j(n))return{data:{session:null,user:null},error:n};throw n}}async refreshSession(e){return await this.initializePromise,await this._acquireLock(-1,async()=>await this._refreshSession(e))}async _refreshSession(e){try{return await this._useSession(async n=>{var i;if(!e){const{data:o,error:a}=n;if(a)throw a;e=(i=o.session)!==null&&i!==void 0?i:void 0}if(!(e!=null&&e.refresh_token))throw new bn;const{session:r,error:s}=await this._callRefreshToken(e.refresh_token);return s?{data:{user:null,session:null},error:s}:r?{data:{user:r.user,session:r},error:null}:{data:{user:null,session:null},error:null}})}catch(n){if(j(n))return{data:{user:null,session:null},error:n};throw n}}async _getSessionFromURL(e){try{if(!lt())throw new Ms("No browser detected.");if(this.flowType==="implicit"&&!this._isImplicitGrantFlow())throw new Ms("Not a valid implicit grant flow url.");if(this.flowType=="pkce"&&!e)throw new od("Not a valid PKCE flow url.");const n=Ya(window.location.href);if(e){if(!n.code)throw new od("No code detected.");const{data:g,error:_}=await this._exchangeCodeForSession(n.code);if(_)throw _;const w=new URL(window.location.href);return w.searchParams.delete("code"),window.history.replaceState(window.history.state,"",w.toString()),{data:{session:g.session,redirectType:null},error:null}}if(n.error||n.error_description||n.error_code)throw new Ms(n.error_description||"Error in URL with unspecified error_description",{error:n.error||"unspecified_error",code:n.error_code||"unspecified_code"});const{provider_token:i,provider_refresh_token:r,access_token:s,refresh_token:o,expires_in:a,expires_at:l,token_type:u}=n;if(!s||!a||!o||!u)throw new Ms("No session defined in URL");const c=Math.round(Date.now()/1e3),h=parseInt(a);let d=c+h;l&&(d=parseInt(l));const f=d-c;f*1e3<=Ji&&console.warn(`@supabase/gotrue-js: Session as retrieved from URL expires in ${f}s, should have been closer to ${h}s`);const m=d-h;c-m>=120?console.warn("@supabase/gotrue-js: Session as retrieved from URL was issued over 120s ago, URL could be stale",m,d,c):c-m<0&&console.warn("@supabase/gotrue-js: Session as retrieved from URL was issued in the future? Check the device clok for skew",m,d,c);const{data:y,error:v}=await this._getUser(s);if(v)throw v;const p={provider_token:i,provider_refresh_token:r,access_token:s,expires_in:h,expires_at:d,refresh_token:o,token_type:u,user:y.user};return window.location.hash="",this._debug("#_getSessionFromURL()","clearing window.location.hash"),{data:{session:p,redirectType:n.type},error:null}}catch(n){if(j(n))return{data:{session:null,redirectType:null},error:n};throw n}}_isImplicitGrantFlow(){const e=Ya(window.location.href);return!!(lt()&&(e.access_token||e.error_description))}async _isPKCEFlow(){const e=Ya(window.location.href),n=await Os(this.storage,`${this.storageKey}-code-verifier`);return!!(e.code&&n)}async signOut(e={scope:"global"}){return await this.initializePromise,await this._acquireLock(-1,async()=>await this._signOut(e))}async _signOut({scope:e}={scope:"global"}){return await this._useSession(async n=>{var i;const{data:r,error:s}=n;if(s)return{error:s};const o=(i=r.session)===null||i===void 0?void 0:i.access_token;if(o){const{error:a}=await this.admin.signOut(o,e);if(a&&!(Bw(a)&&(a.status===404||a.status===401||a.status===403)))return{error:a}}return e!=="others"&&(await this._removeSession(),await Ga(this.storage,`${this.storageKey}-code-verifier`),await this._notifyAllSubscribers("SIGNED_OUT",null)),{error:null}})}onAuthStateChange(e){const n=Ow(),i={id:n,callback:e,unsubscribe:()=>{this._debug("#unsubscribe()","state change callback with id removed",n),this.stateChangeEmitters.delete(n)}};return this._debug("#onAuthStateChange()","registered callback with id",n),this.stateChangeEmitters.set(n,i),(async()=>(await this.initializePromise,await this._acquireLock(-1,async()=>{this._emitInitialSession(n)})))(),{data:{subscription:i}}}async _emitInitialSession(e){return await this._useSession(async n=>{var i,r;try{const{data:{session:s},error:o}=n;if(o)throw o;await((i=this.stateChangeEmitters.get(e))===null||i===void 0?void 0:i.callback("INITIAL_SESSION",s)),this._debug("INITIAL_SESSION","callback id",e,"session",s)}catch(s){await((r=this.stateChangeEmitters.get(e))===null||r===void 0?void 0:r.callback("INITIAL_SESSION",null)),this._debug("INITIAL_SESSION","callback id",e,"error",s),console.error(s)}})}async resetPasswordForEmail(e,n={}){let i=null,r=null;this.flowType==="pkce"&&([i,r]=await ei(this.storage,this.storageKey,!0));try{return await z(this.fetch,"POST",`${this.url}/recover`,{body:{email:e,code_challenge:i,code_challenge_method:r,gotrue_meta_security:{captcha_token:n.captchaToken}},headers:this.headers,redirectTo:n.redirectTo})}catch(s){if(j(s))return{data:null,error:s};throw s}}async getUserIdentities(){var e;try{const{data:n,error:i}=await this.getUser();if(i)throw i;return{data:{identities:(e=n.user.identities)!==null&&e!==void 0?e:[]},error:null}}catch(n){if(j(n))return{data:null,error:n};throw n}}async linkIdentity(e){var n;try{const{data:i,error:r}=await this._useSession(async s=>{var o,a,l,u,c;const{data:h,error:d}=s;if(d)throw d;const f=await this._getUrlForProvider(`${this.url}/user/identities/authorize`,e.provider,{redirectTo:(o=e.options)===null||o===void 0?void 0:o.redirectTo,scopes:(a=e.options)===null||a===void 0?void 0:a.scopes,queryParams:(l=e.options)===null||l===void 0?void 0:l.queryParams,skipBrowserRedirect:!0});return await z(this.fetch,"GET",f,{headers:this.headers,jwt:(c=(u=h.session)===null||u===void 0?void 0:u.access_token)!==null&&c!==void 0?c:void 0})});if(r)throw r;return lt()&&!(!((n=e.options)===null||n===void 0)&&n.skipBrowserRedirect)&&window.location.assign(i==null?void 0:i.url),{data:{provider:e.provider,url:i==null?void 0:i.url},error:null}}catch(i){if(j(i))return{data:{provider:e.provider,url:null},error:i};throw i}}async unlinkIdentity(e){try{return await this._useSession(async n=>{var i,r;const{data:s,error:o}=n;if(o)throw o;return await z(this.fetch,"DELETE",`${this.url}/user/identities/${e.identity_id}`,{headers:this.headers,jwt:(r=(i=s.session)===null||i===void 0?void 0:i.access_token)!==null&&r!==void 0?r:void 0})})}catch(n){if(j(n))return{data:null,error:n};throw n}}async _refreshAccessToken(e){const n=`#_refreshAccessToken(${e.substring(0,5)}...)`;this._debug(n,"begin");try{const i=Date.now();return await Iw(async r=>(r>0&&await Rw(200*Math.pow(2,r-1)),this._debug(n,"refreshing attempt",r),await z(this.fetch,"POST",`${this.url}/token?grant_type=refresh_token`,{body:{refresh_token:e},headers:this.headers,xform:Ht})),(r,s)=>{const o=200*Math.pow(2,r);return s&&Qa(s)&&Date.now()+o-i<Ji})}catch(i){if(this._debug(n,"error",i),j(i))return{data:{session:null,user:null},error:i};throw i}finally{this._debug(n,"end")}}_isValidSession(e){return typeof e=="object"&&e!==null&&"access_token"in e&&"refresh_token"in e&&"expires_at"in e}async _handleProviderSignIn(e,n){const i=await this._getUrlForProvider(`${this.url}/authorize`,e,{redirectTo:n.redirectTo,scopes:n.scopes,queryParams:n.queryParams});return this._debug("#_handleProviderSignIn()","provider",e,"options",n,"url",i),lt()&&!n.skipBrowserRedirect&&window.location.assign(i),{data:{provider:e,url:i},error:null}}async _recoverAndRefresh(){var e;const n="#_recoverAndRefresh()";this._debug(n,"begin");try{const i=await Os(this.storage,this.storageKey);if(this._debug(n,"session from storage",i),!this._isValidSession(i)){this._debug(n,"session is not valid"),i!==null&&await this._removeSession();return}const r=Math.round(Date.now()/1e3),s=((e=i.expires_at)!==null&&e!==void 0?e:1/0)<r+rd;if(this._debug(n,`session has${s?"":" not"} expired with margin of ${rd}s`),s){if(this.autoRefreshToken&&i.refresh_token){const{error:o}=await this._callRefreshToken(i.refresh_token);o&&(console.error(o),Qa(o)||(this._debug(n,"refresh failed with a non-retryable error, removing the session",o),await this._removeSession()))}}else await this._notifyAllSubscribers("SIGNED_IN",i)}catch(i){this._debug(n,"error",i),console.error(i);return}finally{this._debug(n,"end")}}async _callRefreshToken(e){var n,i;if(!e)throw new bn;if(this.refreshingDeferred)return this.refreshingDeferred.promise;const r=`#_callRefreshToken(${e.substring(0,5)}...)`;this._debug(r,"begin");try{this.refreshingDeferred=new fa;const{data:s,error:o}=await this._refreshAccessToken(e);if(o)throw o;if(!s.session)throw new bn;await this._saveSession(s.session),await this._notifyAllSubscribers("TOKEN_REFRESHED",s.session);const a={session:s.session,error:null};return this.refreshingDeferred.resolve(a),a}catch(s){if(this._debug(r,"error",s),j(s)){const o={session:null,error:s};return Qa(s)||(await this._removeSession(),await this._notifyAllSubscribers("SIGNED_OUT",null)),(n=this.refreshingDeferred)===null||n===void 0||n.resolve(o),o}throw(i=this.refreshingDeferred)===null||i===void 0||i.reject(s),s}finally{this.refreshingDeferred=null,this._debug(r,"end")}}async _notifyAllSubscribers(e,n,i=!0){const r=`#_notifyAllSubscribers(${e})`;this._debug(r,"begin",n,`broadcast = ${i}`);try{this.broadcastChannel&&i&&this.broadcastChannel.postMessage({event:e,session:n});const s=[],o=Array.from(this.stateChangeEmitters.values()).map(async a=>{try{await a.callback(e,n)}catch(l){s.push(l)}});if(await Promise.all(o),s.length>0){for(let a=0;a<s.length;a+=1)console.error(s[a]);throw s[0]}}finally{this._debug(r,"end")}}async _saveSession(e){this._debug("#_saveSession()",e),this.suppressGetSessionWarning=!0,await lm(this.storage,this.storageKey,e)}async _removeSession(){this._debug("#_removeSession()"),await Ga(this.storage,this.storageKey)}_removeVisibilityChangedCallback(){this._debug("#_removeVisibilityChangedCallback()");const e=this.visibilityChangedCallback;this.visibilityChangedCallback=null;try{e&&lt()&&(window!=null&&window.removeEventListener)&&window.removeEventListener("visibilitychange",e)}catch(n){console.error("removing visibilitychange callback failed",n)}}async _startAutoRefresh(){await this._stopAutoRefresh(),this._debug("#_startAutoRefresh()");const e=setInterval(()=>this._autoRefreshTokenTick(),Ji);this.autoRefreshTicker=e,e&&typeof e=="object"&&typeof e.unref=="function"?e.unref():typeof Deno<"u"&&typeof Deno.unrefTimer=="function"&&Deno.unrefTimer(e),setTimeout(async()=>{await this.initializePromise,await this._autoRefreshTokenTick()},0)}async _stopAutoRefresh(){this._debug("#_stopAutoRefresh()");const e=this.autoRefreshTicker;this.autoRefreshTicker=null,e&&clearInterval(e)}async startAutoRefresh(){this._removeVisibilityChangedCallback(),await this._startAutoRefresh()}async stopAutoRefresh(){this._removeVisibilityChangedCallback(),await this._stopAutoRefresh()}async _autoRefreshTokenTick(){this._debug("#_autoRefreshTokenTick()","begin");try{await this._acquireLock(0,async()=>{try{const e=Date.now();try{return await this._useSession(async n=>{const{data:{session:i}}=n;if(!i||!i.refresh_token||!i.expires_at){this._debug("#_autoRefreshTokenTick()","no session");return}const r=Math.floor((i.expires_at*1e3-e)/Ji);this._debug("#_autoRefreshTokenTick()",`access token expires in ${r} ticks, a tick lasts ${Ji}ms, refresh threshold is ${hd} ticks`),r<=hd&&await this._callRefreshToken(i.refresh_token)})}catch(n){console.error("Auto refresh tick failed with error. This is likely a transient error.",n)}}finally{this._debug("#_autoRefreshTokenTick()","end")}})}catch(e){if(e.isAcquireTimeout||e instanceof cm)this._debug("auto refresh token tick lock not available");else throw e}}async _handleVisibilityChange(){if(this._debug("#_handleVisibilityChange()"),!lt()||!(window!=null&&window.addEventListener))return this.autoRefreshToken&&this.startAutoRefresh(),!1;try{this.visibilityChangedCallback=async()=>await this._onVisibilityChanged(!1),window==null||window.addEventListener("visibilitychange",this.visibilityChangedCallback),await this._onVisibilityChanged(!0)}catch(e){console.error("_handleVisibilityChange",e)}}async _onVisibilityChanged(e){const n=`#_onVisibilityChanged(${e})`;this._debug(n,"visibilityState",document.visibilityState),document.visibilityState==="visible"?(this.autoRefreshToken&&this._startAutoRefresh(),e||(await this.initializePromise,await this._acquireLock(-1,async()=>{if(document.visibilityState!=="visible"){this._debug(n,"acquired the lock to recover the session, but the browser visibilityState is no longer visible, aborting");return}await this._recoverAndRefresh()}))):document.visibilityState==="hidden"&&this.autoRefreshToken&&this._stopAutoRefresh()}async _getUrlForProvider(e,n,i){const r=[`provider=${encodeURIComponent(n)}`];if(i!=null&&i.redirectTo&&r.push(`redirect_to=${encodeURIComponent(i.redirectTo)}`),i!=null&&i.scopes&&r.push(`scopes=${encodeURIComponent(i.scopes)}`),this.flowType==="pkce"){const[s,o]=await ei(this.storage,this.storageKey),a=new URLSearchParams({code_challenge:`${encodeURIComponent(s)}`,code_challenge_method:`${encodeURIComponent(o)}`});r.push(a.toString())}if(i!=null&&i.queryParams){const s=new URLSearchParams(i.queryParams);r.push(s.toString())}return i!=null&&i.skipBrowserRedirect&&r.push(`skip_http_redirect=${i.skipBrowserRedirect}`),`${e}?${r.join("&")}`}async _unenroll(e){try{return await this._useSession(async n=>{var i;const{data:r,error:s}=n;return s?{data:null,error:s}:await z(this.fetch,"DELETE",`${this.url}/factors/${e.factorId}`,{headers:this.headers,jwt:(i=r==null?void 0:r.session)===null||i===void 0?void 0:i.access_token})})}catch(n){if(j(n))return{data:null,error:n};throw n}}async _enroll(e){try{return await this._useSession(async n=>{var i,r;const{data:s,error:o}=n;if(o)return{data:null,error:o};const{data:a,error:l}=await z(this.fetch,"POST",`${this.url}/factors`,{body:{friendly_name:e.friendlyName,factor_type:e.factorType,issuer:e.issuer},headers:this.headers,jwt:(i=s==null?void 0:s.session)===null||i===void 0?void 0:i.access_token});return l?{data:null,error:l}:(!((r=a==null?void 0:a.totp)===null||r===void 0)&&r.qr_code&&(a.totp.qr_code=`data:image/svg+xml;utf-8,${a.totp.qr_code}`),{data:a,error:null})})}catch(n){if(j(n))return{data:null,error:n};throw n}}async _verify(e){return this._acquireLock(-1,async()=>{try{return await this._useSession(async n=>{var i;const{data:r,error:s}=n;if(s)return{data:null,error:s};const{data:o,error:a}=await z(this.fetch,"POST",`${this.url}/factors/${e.factorId}/verify`,{body:{code:e.code,challenge_id:e.challengeId},headers:this.headers,jwt:(i=r==null?void 0:r.session)===null||i===void 0?void 0:i.access_token});return a?{data:null,error:a}:(await this._saveSession(Object.assign({expires_at:Math.round(Date.now()/1e3)+o.expires_in},o)),await this._notifyAllSubscribers("MFA_CHALLENGE_VERIFIED",o),{data:o,error:a})})}catch(n){if(j(n))return{data:null,error:n};throw n}})}async _challenge(e){return this._acquireLock(-1,async()=>{try{return await this._useSession(async n=>{var i;const{data:r,error:s}=n;return s?{data:null,error:s}:await z(this.fetch,"POST",`${this.url}/factors/${e.factorId}/challenge`,{headers:this.headers,jwt:(i=r==null?void 0:r.session)===null||i===void 0?void 0:i.access_token})})}catch(n){if(j(n))return{data:null,error:n};throw n}})}async _challengeAndVerify(e){const{data:n,error:i}=await this._challenge({factorId:e.factorId});return i?{data:null,error:i}:await this._verify({factorId:e.factorId,challengeId:n.id,code:e.code})}async _listFactors(){const{data:{user:e},error:n}=await this.getUser();if(n)return{data:null,error:n};const i=(e==null?void 0:e.factors)||[],r=i.filter(s=>s.factor_type==="totp"&&s.status==="verified");return{data:{all:i,totp:r},error:null}}async _getAuthenticatorAssuranceLevel(){return this._acquireLock(-1,async()=>await this._useSession(async e=>{var n,i;const{data:{session:r},error:s}=e;if(s)return{data:null,error:s};if(!r)return{data:{currentLevel:null,nextLevel:null,currentAuthenticationMethods:[]},error:null};const o=this._decodeJWT(r.access_token);let a=null;o.aal&&(a=o.aal);let l=a;((i=(n=r.user.factors)===null||n===void 0?void 0:n.filter(h=>h.status==="verified"))!==null&&i!==void 0?i:[]).length>0&&(l="aal2");const c=o.amr||[];return{data:{currentLevel:a,nextLevel:l,currentAuthenticationMethods:c},error:null}}))}}Qr.nextInstanceID=0;const rx=Qr;class sx extends rx{constructor(e){super(e)}}var ox=function(t,e,n,i){function r(s){return s instanceof n?s:new n(function(o){o(s)})}return new(n||(n=Promise))(function(s,o){function a(c){try{u(i.next(c))}catch(h){o(h)}}function l(c){try{u(i.throw(c))}catch(h){o(h)}}function u(c){c.done?s(c.value):r(c.value).then(a,l)}u((i=i.apply(t,e||[])).next())})};class ax{constructor(e,n,i){var r,s,o;if(this.supabaseUrl=e,this.supabaseKey=n,!e)throw new Error("supabaseUrl is required.");if(!n)throw new Error("supabaseKey is required.");const a=bw(e);this.realtimeUrl=`${a}/realtime/v1`.replace(/^http/i,"ws"),this.authUrl=`${a}/auth/v1`,this.storageUrl=`${a}/storage/v1`,this.functionsUrl=`${a}/functions/v1`;const l=`sb-${new URL(this.authUrl).hostname.split(".")[0]}-auth-token`,u={db:mw,realtime:vw,auth:Object.assign(Object.assign({},yw),{storageKey:l}),global:gw},c=Sw(i??{},u);this.storageKey=(r=c.auth.storageKey)!==null&&r!==void 0?r:"",this.headers=(s=c.global.headers)!==null&&s!==void 0?s:{},this.auth=this._initSupabaseAuthClient((o=c.auth)!==null&&o!==void 0?o:{},this.headers,c.global.fetch),this.fetch=kw(n,this._getAccessToken.bind(this),c.global.fetch),this.realtime=this._initRealtimeClient(Object.assign({headers:this.headers},c.realtime)),this.rest=new mc(`${a}/rest/v1`,{headers:this.headers,schema:c.db.schema,fetch:this.fetch}),this._listenForAuthEvents()}get functions(){return new O_(this.functionsUrl,{headers:this.headers,customFetch:this.fetch})}get storage(){return new dw(this.storageUrl,this.headers,this.fetch)}from(e){return this.rest.from(e)}schema(e){return this.rest.schema(e)}rpc(e,n={},i={}){return this.rest.rpc(e,n,i)}channel(e,n={config:{}}){return this.realtime.channel(e,n)}getChannels(){return this.realtime.getChannels()}removeChannel(e){return this.realtime.removeChannel(e)}removeAllChannels(){return this.realtime.removeAllChannels()}_getAccessToken(){var e,n;return ox(this,void 0,void 0,function*(){const{data:i}=yield this.auth.getSession();return(n=(e=i.session)===null||e===void 0?void 0:e.access_token)!==null&&n!==void 0?n:null})}_initSupabaseAuthClient({autoRefreshToken:e,persistSession:n,detectSessionInUrl:i,storage:r,storageKey:s,flowType:o,debug:a},l,u){var c;const h={Authorization:`Bearer ${this.supabaseKey}`,apikey:`${this.supabaseKey}`};return new sx({url:this.authUrl,headers:Object.assign(Object.assign({},h),l),storageKey:s,autoRefreshToken:e,persistSession:n,detectSessionInUrl:i,storage:r,flowType:o,debug:a,fetch:u,hasCustomAuthorizationHeader:(c="Authorization"in this.headers)!==null&&c!==void 0?c:!1})}_initRealtimeClient(e){return new Z_(this.realtimeUrl,Object.assign(Object.assign({},e),{params:Object.assign({apikey:this.supabaseKey},e==null?void 0:e.params)}))}_listenForAuthEvents(){return this.auth.onAuthStateChange((n,i)=>{this._handleTokenChanged(n,"CLIENT",i==null?void 0:i.access_token)})}_handleTokenChanged(e,n,i){(e==="TOKEN_REFRESHED"||e==="SIGNED_IN")&&this.changedAccessToken!==i?(this.realtime.setAuth(i??null),this.changedAccessToken=i):e==="SIGNED_OUT"&&(this.realtime.setAuth(this.supabaseKey),n=="STORAGE"&&this.auth.signOut(),this.changedAccessToken=void 0)}}const lx=(t,e,n)=>new ax(t,e,n);function ni(t){return O.jsxs("div",{role:"button",className:"flex items-center w-full p-3 leading-tight transition-all rounded-lg outline-none text-start hover:bg-blue-gray-50 hover:bg-opacity-80 hover:text-blue-gray-900 focus:bg-blue-gray-50 focus:bg-opacity-80 focus:text-blue-gray-900 active:bg-blue-gray-50 active:bg-opacity-80 active:text-blue-gray-900",children:[O.jsx("div",{className:"grid mr-4 place-items-center",children:O.jsx("i",{className:t.icon})}),O.jsx("a",{href:t.href,children:t.name})]})}function hm(){return O.jsxs("div",{className:"relative flex h-full w-full max-w-[20rem] flex-col rounded-xl bg-white bg-clip-border p-4 text-gray-700 shadow-xl shadow-blue-gray-900/5 mr-5",children:[O.jsx("div",{className:"p-4 mb-2",children:O.jsx("h5",{className:"block font-sans text-xl antialiased font-semibold leading-snug tracking-normal text-blue-gray-900",children:O.jsx("a",{href:"/",children:"fs-tracer"})})}),O.jsxs("nav",{className:"flex min-w-[240px] flex-col gap-1 p-2 font-sans text-base font-normal text-blue-gray-700",children:[O.jsx(ni,{name:"Home",icon:"fa-solid fa-house",href:"/"}),O.jsx(ni,{name:"Recent files",icon:"fa-solid fa-folder",href:"/recent"}),O.jsx(ni,{name:"Search",icon:"fa-solid fa-magnifying-glass",href:"/search"}),O.jsx(ni,{name:"Monitoring",icon:"fa-solid fa-chart-column",href:"/monitoring"}),O.jsx(ni,{name:"Setup",icon:"fa-solid fa-gear",href:"/setup"}),O.jsx(ni,{name:"Logout",icon:"fa-solid fa-right-from-bracket",href:"/logout"})]})]})}/*!
+ */const __="6";try{window.__reactRouterVersion=__}catch{}const w_="startTransition",Yh=v0[w_];function x_(t){let{basename:e,children:n,future:i,window:r}=t,s=E.useRef();s.current==null&&(s.current=Lv({window:r,v5Compat:!0}));let o=s.current,[a,l]=E.useState({action:o.action,location:o.location}),{v7_startTransition:u}=i||{},c=E.useCallback(h=>{u&&Yh?Yh(()=>l(h)):l(h)},[l,u]);return E.useLayoutEffect(()=>o.listen(c),[o,c]),E.createElement(y_,{basename:e,children:n,location:a.location,navigationType:a.action,navigator:o,future:i})}var Gh;(function(t){t.UseScrollRestoration="useScrollRestoration",t.UseSubmit="useSubmit",t.UseSubmitFetcher="useSubmitFetcher",t.UseFetcher="useFetcher",t.useViewTransitionState="useViewTransitionState"})(Gh||(Gh={}));var qh;(function(t){t.UseFetcher="useFetcher",t.UseFetchers="useFetchers",t.UseScrollRestoration="useScrollRestoration"})(qh||(qh={}));const k_="modulepreload",b_=function(t,e){return new URL(t,e).href},Qh={},Ri=function(e,n,i){let r=Promise.resolve();if(n&&n.length>0){const s=document.getElementsByTagName("link"),o=document.querySelector("meta[property=csp-nonce]"),a=(o==null?void 0:o.nonce)||(o==null?void 0:o.getAttribute("nonce"));r=Promise.all(n.map(l=>{if(l=b_(l,i),l in Qh)return;Qh[l]=!0;const u=l.endsWith(".css"),c=u?'[rel="stylesheet"]':"";if(!!i)for(let f=s.length-1;f>=0;f--){const m=s[f];if(m.href===l&&(!u||m.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${l}"]${c}`))return;const d=document.createElement("link");if(d.rel=u?"stylesheet":k_,u||(d.as="script",d.crossOrigin=""),d.href=l,a&&d.setAttribute("nonce",a),document.head.appendChild(d),u)return new Promise((f,m)=>{d.addEventListener("load",f),d.addEventListener("error",()=>m(new Error(`Unable to preload CSS for ${l}`)))})}))}return r.then(()=>e()).catch(s=>{const o=new Event("vite:preloadError",{cancelable:!0});if(o.payload=s,window.dispatchEvent(o),!o.defaultPrevented)throw s})},S_=t=>{let e;return t?e=t:typeof fetch>"u"?e=(...n)=>Ri(()=>Promise.resolve().then(()=>ls),void 0,import.meta.url).then(({default:i})=>i(...n)):e=fetch,(...n)=>e(...n)};class pc extends Error{constructor(e,n="FunctionsError",i){super(e),this.name=n,this.context=i}}class C_ extends pc{constructor(e){super("Failed to send a request to the Edge Function","FunctionsFetchError",e)}}class E_ extends pc{constructor(e){super("Relay Error invoking the Edge Function","FunctionsRelayError",e)}}class P_ extends pc{constructor(e){super("Edge Function returned a non-2xx status code","FunctionsHttpError",e)}}var tu;(function(t){t.Any="any",t.ApNortheast1="ap-northeast-1",t.ApNortheast2="ap-northeast-2",t.ApSouth1="ap-south-1",t.ApSoutheast1="ap-southeast-1",t.ApSoutheast2="ap-southeast-2",t.CaCentral1="ca-central-1",t.EuCentral1="eu-central-1",t.EuWest1="eu-west-1",t.EuWest2="eu-west-2",t.EuWest3="eu-west-3",t.SaEast1="sa-east-1",t.UsEast1="us-east-1",t.UsWest1="us-west-1",t.UsWest2="us-west-2"})(tu||(tu={}));var T_=function(t,e,n,i){function r(s){return s instanceof n?s:new n(function(o){o(s)})}return new(n||(n=Promise))(function(s,o){function a(c){try{u(i.next(c))}catch(h){o(h)}}function l(c){try{u(i.throw(c))}catch(h){o(h)}}function u(c){c.done?s(c.value):r(c.value).then(a,l)}u((i=i.apply(t,e||[])).next())})};class O_{constructor(e,{headers:n={},customFetch:i,region:r=tu.Any}={}){this.url=e,this.headers=n,this.region=r,this.fetch=S_(i)}setAuth(e){this.headers.Authorization=`Bearer ${e}`}invoke(e,n={}){var i;return T_(this,void 0,void 0,function*(){try{const{headers:r,method:s,body:o}=n;let a={},{region:l}=n;l||(l=this.region),l&&l!=="any"&&(a["x-region"]=l);let u;o&&(r&&!Object.prototype.hasOwnProperty.call(r,"Content-Type")||!r)&&(typeof Blob<"u"&&o instanceof Blob||o instanceof ArrayBuffer?(a["Content-Type"]="application/octet-stream",u=o):typeof o=="string"?(a["Content-Type"]="text/plain",u=o):typeof FormData<"u"&&o instanceof FormData?u=o:(a["Content-Type"]="application/json",u=JSON.stringify(o)));const c=yield this.fetch(`${this.url}/${e}`,{method:s||"POST",headers:Object.assign(Object.assign(Object.assign({},a),this.headers),r),body:u}).catch(m=>{throw new C_(m)}),h=c.headers.get("x-relay-error");if(h&&h==="true")throw new E_(c);if(!c.ok)throw new P_(c);let d=((i=c.headers.get("Content-Type"))!==null&&i!==void 0?i:"text/plain").split(";")[0].trim(),f;return d==="application/json"?f=yield c.json():d==="application/octet-stream"?f=yield c.blob():d==="text/event-stream"?f=c:d==="multipart/form-data"?f=yield c.formData():f=yield c.text(),{data:f,error:null}}catch(r){return{data:null,error:r}}})}}var L_=function(){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")},Ii=L_();const M_=Ii.fetch,gc=Ii.fetch.bind(Ii),Zg=Ii.Headers,R_=Ii.Request,I_=Ii.Response,ls=Object.freeze(Object.defineProperty({__proto__:null,Headers:Zg,Request:R_,Response:I_,default:gc,fetch:M_},Symbol.toStringTag,{value:"Module"}));class A_ extends Error{constructor(e){super(e.message),this.name="PostgrestError",this.details=e.details,this.hint=e.hint,this.code=e.code}}class D_{constructor(e){this.shouldThrowOnError=!1,this.method=e.method,this.url=e.url,this.headers=e.headers,this.schema=e.schema,this.body=e.body,this.shouldThrowOnError=e.shouldThrowOnError,this.signal=e.signal,this.isMaybeSingle=e.isMaybeSingle,e.fetch?this.fetch=e.fetch:typeof fetch>"u"?this.fetch=gc:this.fetch=fetch}throwOnError(){return this.shouldThrowOnError=!0,this}then(e,n){this.schema===void 0||(["GET","HEAD"].includes(this.method)?this.headers["Accept-Profile"]=this.schema:this.headers["Content-Profile"]=this.schema),this.method!=="GET"&&this.method!=="HEAD"&&(this.headers["Content-Type"]="application/json");const i=this.fetch;let r=i(this.url.toString(),{method:this.method,headers:this.headers,body:JSON.stringify(this.body),signal:this.signal}).then(async s=>{var o,a,l;let u=null,c=null,h=null,d=s.status,f=s.statusText;if(s.ok){if(this.method!=="HEAD"){const p=await s.text();p===""||(this.headers.Accept==="text/csv"||this.headers.Accept&&this.headers.Accept.includes("application/vnd.pgrst.plan+text")?c=p:c=JSON.parse(p))}const y=(o=this.headers.Prefer)===null||o===void 0?void 0:o.match(/count=(exact|planned|estimated)/),v=(a=s.headers.get("content-range"))===null||a===void 0?void 0:a.split("/");y&&v&&v.length>1&&(h=parseInt(v[1])),this.isMaybeSingle&&this.method==="GET"&&Array.isArray(c)&&(c.length>1?(u={code:"PGRST116",details:`Results contain ${c.length} rows, application/vnd.pgrst.object+json requires 1 row`,hint:null,message:"JSON object requested, multiple (or no) rows returned"},c=null,h=null,d=406,f="Not Acceptable"):c.length===1?c=c[0]:c=null)}else{const y=await s.text();try{u=JSON.parse(y),Array.isArray(u)&&s.status===404&&(c=[],u=null,d=200,f="OK")}catch{s.status===404&&y===""?(d=204,f="No Content"):u={message:y}}if(u&&this.isMaybeSingle&&(!((l=u==null?void 0:u.details)===null||l===void 0)&&l.includes("0 rows"))&&(u=null,d=200,f="OK"),u&&this.shouldThrowOnError)throw new A_(u)}return{error:u,data:c,count:h,status:d,statusText:f}});return this.shouldThrowOnError||(r=r.catch(s=>{var o,a,l;return{error:{message:`${(o=s==null?void 0:s.name)!==null&&o!==void 0?o:"FetchError"}: ${s==null?void 0:s.message}`,details:`${(a=s==null?void 0:s.stack)!==null&&a!==void 0?a:""}`,hint:"",code:`${(l=s==null?void 0:s.code)!==null&&l!==void 0?l:""}`},data:null,count:null,status:0,statusText:""}})),r.then(e,n)}}class j_ extends D_{select(e){let n=!1;const i=(e??"*").split("").map(r=>/\s/.test(r)&&!n?"":(r==='"'&&(n=!n),r)).join("");return this.url.searchParams.set("select",i),this.headers.Prefer&&(this.headers.Prefer+=","),this.headers.Prefer+="return=representation",this}order(e,{ascending:n=!0,nullsFirst:i,foreignTable:r,referencedTable:s=r}={}){const o=s?`${s}.order`:"order",a=this.url.searchParams.get(o);return this.url.searchParams.set(o,`${a?`${a},`:""}${e}.${n?"asc":"desc"}${i===void 0?"":i?".nullsfirst":".nullslast"}`),this}limit(e,{foreignTable:n,referencedTable:i=n}={}){const r=typeof i>"u"?"limit":`${i}.limit`;return this.url.searchParams.set(r,`${e}`),this}range(e,n,{foreignTable:i,referencedTable:r=i}={}){const s=typeof r>"u"?"offset":`${r}.offset`,o=typeof r>"u"?"limit":`${r}.limit`;return this.url.searchParams.set(s,`${e}`),this.url.searchParams.set(o,`${n-e+1}`),this}abortSignal(e){return this.signal=e,this}single(){return this.headers.Accept="application/vnd.pgrst.object+json",this}maybeSingle(){return this.method==="GET"?this.headers.Accept="application/json":this.headers.Accept="application/vnd.pgrst.object+json",this.isMaybeSingle=!0,this}csv(){return this.headers.Accept="text/csv",this}geojson(){return this.headers.Accept="application/geo+json",this}explain({analyze:e=!1,verbose:n=!1,settings:i=!1,buffers:r=!1,wal:s=!1,format:o="text"}={}){var a;const l=[e?"analyze":null,n?"verbose":null,i?"settings":null,r?"buffers":null,s?"wal":null].filter(Boolean).join("|"),u=(a=this.headers.Accept)!==null&&a!==void 0?a:"application/json";return this.headers.Accept=`application/vnd.pgrst.plan+${o}; for="${u}"; options=${l};`,o==="json"?this:this}rollback(){var e;return((e=this.headers.Prefer)!==null&&e!==void 0?e:"").trim().length>0?this.headers.Prefer+=",tx=rollback":this.headers.Prefer="tx=rollback",this}returns(){return this}}class si extends j_{eq(e,n){return this.url.searchParams.append(e,`eq.${n}`),this}neq(e,n){return this.url.searchParams.append(e,`neq.${n}`),this}gt(e,n){return this.url.searchParams.append(e,`gt.${n}`),this}gte(e,n){return this.url.searchParams.append(e,`gte.${n}`),this}lt(e,n){return this.url.searchParams.append(e,`lt.${n}`),this}lte(e,n){return this.url.searchParams.append(e,`lte.${n}`),this}like(e,n){return this.url.searchParams.append(e,`like.${n}`),this}likeAllOf(e,n){return this.url.searchParams.append(e,`like(all).{${n.join(",")}}`),this}likeAnyOf(e,n){return this.url.searchParams.append(e,`like(any).{${n.join(",")}}`),this}ilike(e,n){return this.url.searchParams.append(e,`ilike.${n}`),this}ilikeAllOf(e,n){return this.url.searchParams.append(e,`ilike(all).{${n.join(",")}}`),this}ilikeAnyOf(e,n){return this.url.searchParams.append(e,`ilike(any).{${n.join(",")}}`),this}is(e,n){return this.url.searchParams.append(e,`is.${n}`),this}in(e,n){const i=Array.from(new Set(n)).map(r=>typeof r=="string"&&new RegExp("[,()]").test(r)?`"${r}"`:`${r}`).join(",");return this.url.searchParams.append(e,`in.(${i})`),this}contains(e,n){return typeof n=="string"?this.url.searchParams.append(e,`cs.${n}`):Array.isArray(n)?this.url.searchParams.append(e,`cs.{${n.join(",")}}`):this.url.searchParams.append(e,`cs.${JSON.stringify(n)}`),this}containedBy(e,n){return typeof n=="string"?this.url.searchParams.append(e,`cd.${n}`):Array.isArray(n)?this.url.searchParams.append(e,`cd.{${n.join(",")}}`):this.url.searchParams.append(e,`cd.${JSON.stringify(n)}`),this}rangeGt(e,n){return this.url.searchParams.append(e,`sr.${n}`),this}rangeGte(e,n){return this.url.searchParams.append(e,`nxl.${n}`),this}rangeLt(e,n){return this.url.searchParams.append(e,`sl.${n}`),this}rangeLte(e,n){return this.url.searchParams.append(e,`nxr.${n}`),this}rangeAdjacent(e,n){return this.url.searchParams.append(e,`adj.${n}`),this}overlaps(e,n){return typeof n=="string"?this.url.searchParams.append(e,`ov.${n}`):this.url.searchParams.append(e,`ov.{${n.join(",")}}`),this}textSearch(e,n,{config:i,type:r}={}){let s="";r==="plain"?s="pl":r==="phrase"?s="ph":r==="websearch"&&(s="w");const o=i===void 0?"":`(${i})`;return this.url.searchParams.append(e,`${s}fts${o}.${n}`),this}match(e){return Object.entries(e).forEach(([n,i])=>{this.url.searchParams.append(n,`eq.${i}`)}),this}not(e,n,i){return this.url.searchParams.append(e,`not.${n}.${i}`),this}or(e,{foreignTable:n,referencedTable:i=n}={}){const r=i?`${i}.or`:"or";return this.url.searchParams.append(r,`(${e})`),this}filter(e,n,i){return this.url.searchParams.append(e,`${n}.${i}`),this}}class N_{constructor(e,{headers:n={},schema:i,fetch:r}){this.url=e,this.headers=n,this.schema=i,this.fetch=r}select(e,{head:n=!1,count:i}={}){const r=n?"HEAD":"GET";let s=!1;const o=(e??"*").split("").map(a=>/\s/.test(a)&&!s?"":(a==='"'&&(s=!s),a)).join("");return this.url.searchParams.set("select",o),i&&(this.headers.Prefer=`count=${i}`),new si({method:r,url:this.url,headers:this.headers,schema:this.schema,fetch:this.fetch,allowEmpty:!1})}insert(e,{count:n,defaultToNull:i=!0}={}){const r="POST",s=[];if(this.headers.Prefer&&s.push(this.headers.Prefer),n&&s.push(`count=${n}`),i||s.push("missing=default"),this.headers.Prefer=s.join(","),Array.isArray(e)){const o=e.reduce((a,l)=>a.concat(Object.keys(l)),[]);if(o.length>0){const a=[...new Set(o)].map(l=>`"${l}"`);this.url.searchParams.set("columns",a.join(","))}}return new si({method:r,url:this.url,headers:this.headers,schema:this.schema,body:e,fetch:this.fetch,allowEmpty:!1})}upsert(e,{onConflict:n,ignoreDuplicates:i=!1,count:r,defaultToNull:s=!0}={}){const o="POST",a=[`resolution=${i?"ignore":"merge"}-duplicates`];if(n!==void 0&&this.url.searchParams.set("on_conflict",n),this.headers.Prefer&&a.push(this.headers.Prefer),r&&a.push(`count=${r}`),s||a.push("missing=default"),this.headers.Prefer=a.join(","),Array.isArray(e)){const l=e.reduce((u,c)=>u.concat(Object.keys(c)),[]);if(l.length>0){const u=[...new Set(l)].map(c=>`"${c}"`);this.url.searchParams.set("columns",u.join(","))}}return new si({method:o,url:this.url,headers:this.headers,schema:this.schema,body:e,fetch:this.fetch,allowEmpty:!1})}update(e,{count:n}={}){const i="PATCH",r=[];return this.headers.Prefer&&r.push(this.headers.Prefer),n&&r.push(`count=${n}`),this.headers.Prefer=r.join(","),new si({method:i,url:this.url,headers:this.headers,schema:this.schema,body:e,fetch:this.fetch,allowEmpty:!1})}delete({count:e}={}){const n="DELETE",i=[];return e&&i.push(`count=${e}`),this.headers.Prefer&&i.unshift(this.headers.Prefer),this.headers.Prefer=i.join(","),new si({method:n,url:this.url,headers:this.headers,schema:this.schema,fetch:this.fetch,allowEmpty:!1})}}const z_="1.15.2",F_={"X-Client-Info":`postgrest-js/${z_}`};class mc{constructor(e,{headers:n={},schema:i,fetch:r}={}){this.url=e,this.headers=Object.assign(Object.assign({},F_),n),this.schemaName=i,this.fetch=r}from(e){const n=new URL(`${this.url}/${e}`);return new N_(n,{headers:Object.assign({},this.headers),schema:this.schemaName,fetch:this.fetch})}schema(e){return new mc(this.url,{headers:this.headers,schema:e,fetch:this.fetch})}rpc(e,n={},{head:i=!1,get:r=!1,count:s}={}){let o;const a=new URL(`${this.url}/rpc/${e}`);let l;i||r?(o=i?"HEAD":"GET",Object.entries(n).filter(([c,h])=>h!==void 0).map(([c,h])=>[c,Array.isArray(h)?`{${h.join(",")}}`:`${h}`]).forEach(([c,h])=>{a.searchParams.append(c,h)})):(o="POST",l=n);const u=Object.assign({},this.headers);return s&&(u.Prefer=`count=${s}`),new si({method:o,url:a,headers:u,schema:this.schemaName,body:l,fetch:this.fetch,allowEmpty:!1})}}const $_="2.9.5",U_={"X-Client-Info":`realtime-js/${$_}`},B_="1.0.0",em=1e4,V_=1e3;var Si;(function(t){t[t.connecting=0]="connecting",t[t.open=1]="open",t[t.closing=2]="closing",t[t.closed=3]="closed"})(Si||(Si={}));var Be;(function(t){t.closed="closed",t.errored="errored",t.joined="joined",t.joining="joining",t.leaving="leaving"})(Be||(Be={}));var ht;(function(t){t.close="phx_close",t.error="phx_error",t.join="phx_join",t.reply="phx_reply",t.leave="phx_leave",t.access_token="access_token"})(ht||(ht={}));var nu;(function(t){t.websocket="websocket"})(nu||(nu={}));var In;(function(t){t.Connecting="connecting",t.Open="open",t.Closing="closing",t.Closed="closed"})(In||(In={}));class tm{constructor(e,n){this.callback=e,this.timerCalc=n,this.timer=void 0,this.tries=0,this.callback=e,this.timerCalc=n}reset(){this.tries=0,clearTimeout(this.timer)}scheduleTimeout(){clearTimeout(this.timer),this.timer=setTimeout(()=>{this.tries=this.tries+1,this.callback()},this.timerCalc(this.tries+1))}}class H_{constructor(){this.HEADER_LENGTH=1}decode(e,n){return e.constructor===ArrayBuffer?n(this._binaryDecode(e)):n(typeof e=="string"?JSON.parse(e):{})}_binaryDecode(e){const n=new DataView(e),i=new TextDecoder;return this._decodeBroadcast(e,n,i)}_decodeBroadcast(e,n,i){const r=n.getUint8(1),s=n.getUint8(2);let o=this.HEADER_LENGTH+2;const a=i.decode(e.slice(o,o+r));o=o+r;const l=i.decode(e.slice(o,o+s));o=o+s;const u=JSON.parse(i.decode(e.slice(o,e.byteLength)));return{ref:null,topic:a,event:l,payload:u}}}class Wa{constructor(e,n,i={},r=em){this.channel=e,this.event=n,this.payload=i,this.timeout=r,this.sent=!1,this.timeoutTimer=void 0,this.ref="",this.receivedResp=null,this.recHooks=[],this.refEvent=null}resend(e){this.timeout=e,this._cancelRefEvent(),this.ref="",this.refEvent=null,this.receivedResp=null,this.sent=!1,this.send()}send(){this._hasReceived("timeout")||(this.startTimeout(),this.sent=!0,this.channel.socket.push({topic:this.channel.topic,event:this.event,payload:this.payload,ref:this.ref,join_ref:this.channel._joinRef()}))}updatePayload(e){this.payload=Object.assign(Object.assign({},this.payload),e)}receive(e,n){var i;return this._hasReceived(e)&&n((i=this.receivedResp)===null||i===void 0?void 0:i.response),this.recHooks.push({status:e,callback:n}),this}startTimeout(){if(this.timeoutTimer)return;this.ref=this.channel.socket._makeRef(),this.refEvent=this.channel._replyEventName(this.ref);const e=n=>{this._cancelRefEvent(),this._cancelTimeout(),this.receivedResp=n,this._matchReceive(n)};this.channel._on(this.refEvent,{},e),this.timeoutTimer=setTimeout(()=>{this.trigger("timeout",{})},this.timeout)}trigger(e,n){this.refEvent&&this.channel._trigger(this.refEvent,{status:e,response:n})}destroy(){this._cancelRefEvent(),this._cancelTimeout()}_cancelRefEvent(){this.refEvent&&this.channel._off(this.refEvent,{})}_cancelTimeout(){clearTimeout(this.timeoutTimer),this.timeoutTimer=void 0}_matchReceive({status:e,response:n}){this.recHooks.filter(i=>i.status===e).forEach(i=>i.callback(n))}_hasReceived(e){return this.receivedResp&&this.receivedResp.status===e}}var Xh;(function(t){t.SYNC="sync",t.JOIN="join",t.LEAVE="leave"})(Xh||(Xh={}));class kr{constructor(e,n){this.channel=e,this.state={},this.pendingDiffs=[],this.joinRef=null,this.caller={onJoin:()=>{},onLeave:()=>{},onSync:()=>{}};const i=(n==null?void 0:n.events)||{state:"presence_state",diff:"presence_diff"};this.channel._on(i.state,{},r=>{const{onJoin:s,onLeave:o,onSync:a}=this.caller;this.joinRef=this.channel._joinRef(),this.state=kr.syncState(this.state,r,s,o),this.pendingDiffs.forEach(l=>{this.state=kr.syncDiff(this.state,l,s,o)}),this.pendingDiffs=[],a()}),this.channel._on(i.diff,{},r=>{const{onJoin:s,onLeave:o,onSync:a}=this.caller;this.inPendingSyncState()?this.pendingDiffs.push(r):(this.state=kr.syncDiff(this.state,r,s,o),a())}),this.onJoin((r,s,o)=>{this.channel._trigger("presence",{event:"join",key:r,currentPresences:s,newPresences:o})}),this.onLeave((r,s,o)=>{this.channel._trigger("presence",{event:"leave",key:r,currentPresences:s,leftPresences:o})}),this.onSync(()=>{this.channel._trigger("presence",{event:"sync"})})}static syncState(e,n,i,r){const s=this.cloneDeep(e),o=this.transformState(n),a={},l={};return this.map(s,(u,c)=>{o[u]||(l[u]=c)}),this.map(o,(u,c)=>{const h=s[u];if(h){const d=c.map(v=>v.presence_ref),f=h.map(v=>v.presence_ref),m=c.filter(v=>f.indexOf(v.presence_ref)<0),y=h.filter(v=>d.indexOf(v.presence_ref)<0);m.length>0&&(a[u]=m),y.length>0&&(l[u]=y)}else a[u]=c}),this.syncDiff(s,{joins:a,leaves:l},i,r)}static syncDiff(e,n,i,r){const{joins:s,leaves:o}={joins:this.transformState(n.joins),leaves:this.transformState(n.leaves)};return i||(i=()=>{}),r||(r=()=>{}),this.map(s,(a,l)=>{var u;const c=(u=e[a])!==null&&u!==void 0?u:[];if(e[a]=this.cloneDeep(l),c.length>0){const h=e[a].map(f=>f.presence_ref),d=c.filter(f=>h.indexOf(f.presence_ref)<0);e[a].unshift(...d)}i(a,c,l)}),this.map(o,(a,l)=>{let u=e[a];if(!u)return;const c=l.map(h=>h.presence_ref);u=u.filter(h=>c.indexOf(h.presence_ref)<0),e[a]=u,r(a,u,l),u.length===0&&delete e[a]}),e}static map(e,n){return Object.getOwnPropertyNames(e).map(i=>n(i,e[i]))}static transformState(e){return e=this.cloneDeep(e),Object.getOwnPropertyNames(e).reduce((n,i)=>{const r=e[i];return"metas"in r?n[i]=r.metas.map(s=>(s.presence_ref=s.phx_ref,delete s.phx_ref,delete s.phx_ref_prev,s)):n[i]=r,n},{})}static cloneDeep(e){return JSON.parse(JSON.stringify(e))}onJoin(e){this.caller.onJoin=e}onLeave(e){this.caller.onLeave=e}onSync(e){this.caller.onSync=e}inPendingSyncState(){return!this.joinRef||this.joinRef!==this.channel._joinRef()}}var G;(function(t){t.abstime="abstime",t.bool="bool",t.date="date",t.daterange="daterange",t.float4="float4",t.float8="float8",t.int2="int2",t.int4="int4",t.int4range="int4range",t.int8="int8",t.int8range="int8range",t.json="json",t.jsonb="jsonb",t.money="money",t.numeric="numeric",t.oid="oid",t.reltime="reltime",t.text="text",t.time="time",t.timestamp="timestamp",t.timestamptz="timestamptz",t.timetz="timetz",t.tsrange="tsrange",t.tstzrange="tstzrange"})(G||(G={}));const Jh=(t,e,n={})=>{var i;const r=(i=n.skipTypes)!==null&&i!==void 0?i:[];return Object.keys(e).reduce((s,o)=>(s[o]=W_(o,t,e,r),s),{})},W_=(t,e,n,i)=>{const r=e.find(a=>a.name===t),s=r==null?void 0:r.type,o=n[t];return s&&!i.includes(s)?nm(s,o):iu(o)},nm=(t,e)=>{if(t.charAt(0)==="_"){const n=t.slice(1,t.length);return q_(e,n)}switch(t){case G.bool:return K_(e);case G.float4:case G.float8:case G.int2:case G.int4:case G.int8:case G.numeric:case G.oid:return Y_(e);case G.json:case G.jsonb:return G_(e);case G.timestamp:return Q_(e);case G.abstime:case G.date:case G.daterange:case G.int4range:case G.int8range:case G.money:case G.reltime:case G.text:case G.time:case G.timestamptz:case G.timetz:case G.tsrange:case G.tstzrange:return iu(e);default:return iu(e)}},iu=t=>t,K_=t=>{switch(t){case"t":return!0;case"f":return!1;default:return t}},Y_=t=>{if(typeof t=="string"){const e=parseFloat(t);if(!Number.isNaN(e))return e}return t},G_=t=>{if(typeof t=="string")try{return JSON.parse(t)}catch(e){return console.log(`JSON parse error: ${e}`),t}return t},q_=(t,e)=>{if(typeof t!="string")return t;const n=t.length-1,i=t[n];if(t[0]==="{"&&i==="}"){let s;const o=t.slice(1,n);try{s=JSON.parse("["+o+"]")}catch{s=o?o.split(","):[]}return s.map(a=>nm(e,a))}return t},Q_=t=>typeof t=="string"?t.replace(" ","T"):t;var Zh;(function(t){t.ALL="*",t.INSERT="INSERT",t.UPDATE="UPDATE",t.DELETE="DELETE"})(Zh||(Zh={}));var ed;(function(t){t.BROADCAST="broadcast",t.PRESENCE="presence",t.POSTGRES_CHANGES="postgres_changes"})(ed||(ed={}));var td;(function(t){t.SUBSCRIBED="SUBSCRIBED",t.TIMED_OUT="TIMED_OUT",t.CLOSED="CLOSED",t.CHANNEL_ERROR="CHANNEL_ERROR"})(td||(td={}));class yc{constructor(e,n={config:{}},i){this.topic=e,this.params=n,this.socket=i,this.bindings={},this.state=Be.closed,this.joinedOnce=!1,this.pushBuffer=[],this.subTopic=e.replace(/^realtime:/i,""),this.params.config=Object.assign({broadcast:{ack:!1,self:!1},presence:{key:""}},n.config),this.timeout=this.socket.timeout,this.joinPush=new Wa(this,ht.join,this.params,this.timeout),this.rejoinTimer=new tm(()=>this._rejoinUntilConnected(),this.socket.reconnectAfterMs),this.joinPush.receive("ok",()=>{this.state=Be.joined,this.rejoinTimer.reset(),this.pushBuffer.forEach(r=>r.send()),this.pushBuffer=[]}),this._onClose(()=>{this.rejoinTimer.reset(),this.socket.log("channel",`close ${this.topic} ${this._joinRef()}`),this.state=Be.closed,this.socket._remove(this)}),this._onError(r=>{this._isLeaving()||this._isClosed()||(this.socket.log("channel",`error ${this.topic}`,r),this.state=Be.errored,this.rejoinTimer.scheduleTimeout())}),this.joinPush.receive("timeout",()=>{this._isJoining()&&(this.socket.log("channel",`timeout ${this.topic}`,this.joinPush.timeout),this.state=Be.errored,this.rejoinTimer.scheduleTimeout())}),this._on(ht.reply,{},(r,s)=>{this._trigger(this._replyEventName(s),r)}),this.presence=new kr(this),this.broadcastEndpointURL=this._broadcastEndpointURL()}subscribe(e,n=this.timeout){var i,r;if(this.socket.isConnected()||this.socket.connect(),this.joinedOnce)throw"tried to subscribe multiple times. 'subscribe' can only be called a single time per channel instance";{const{config:{broadcast:s,presence:o}}=this.params;this._onError(u=>e&&e("CHANNEL_ERROR",u)),this._onClose(()=>e&&e("CLOSED"));const a={},l={broadcast:s,presence:o,postgres_changes:(r=(i=this.bindings.postgres_changes)===null||i===void 0?void 0:i.map(u=>u.filter))!==null&&r!==void 0?r:[]};this.socket.accessToken&&(a.access_token=this.socket.accessToken),this.updateJoinPayload(Object.assign({config:l},a)),this.joinedOnce=!0,this._rejoin(n),this.joinPush.receive("ok",({postgres_changes:u})=>{var c;if(this.socket.accessToken&&this.socket.setAuth(this.socket.accessToken),u===void 0){e&&e("SUBSCRIBED");return}else{const h=this.bindings.postgres_changes,d=(c=h==null?void 0:h.length)!==null&&c!==void 0?c:0,f=[];for(let m=0;m<d;m++){const y=h[m],{filter:{event:v,schema:p,table:g,filter:_}}=y,w=u&&u[m];if(w&&w.event===v&&w.schema===p&&w.table===g&&w.filter===_)f.push(Object.assign(Object.assign({},y),{id:w.id}));else{this.unsubscribe(),e&&e("CHANNEL_ERROR",new Error("mismatch between server and client bindings for postgres changes"));return}}this.bindings.postgres_changes=f,e&&e("SUBSCRIBED");return}}).receive("error",u=>{e&&e("CHANNEL_ERROR",new Error(JSON.stringify(Object.values(u).join(", ")||"error")))}).receive("timeout",()=>{e&&e("TIMED_OUT")})}return this}presenceState(){return this.presence.state}async track(e,n={}){return await this.send({type:"presence",event:"track",payload:e},n.timeout||this.timeout)}async untrack(e={}){return await this.send({type:"presence",event:"untrack"},e)}on(e,n,i){return this._on(e,n,i)}async send(e,n={}){var i,r;if(!this._canPush()&&e.type==="broadcast"){const{event:s,payload:o}=e,a={method:"POST",headers:{apikey:(i=this.socket.apiKey)!==null&&i!==void 0?i:"","Content-Type":"application/json"},body:JSON.stringify({messages:[{topic:this.subTopic,event:s,payload:o}]})};try{return(await this._fetchWithTimeout(this.broadcastEndpointURL,a,(r=n.timeout)!==null&&r!==void 0?r:this.timeout)).ok?"ok":"error"}catch(l){return l.name==="AbortError"?"timed out":"error"}}else return new Promise(s=>{var o,a,l;const u=this._push(e.type,e,n.timeout||this.timeout);e.type==="broadcast"&&!(!((l=(a=(o=this.params)===null||o===void 0?void 0:o.config)===null||a===void 0?void 0:a.broadcast)===null||l===void 0)&&l.ack)&&s("ok"),u.receive("ok",()=>s("ok")),u.receive("error",()=>s("error")),u.receive("timeout",()=>s("timed out"))})}updateJoinPayload(e){this.joinPush.updatePayload(e)}unsubscribe(e=this.timeout){this.state=Be.leaving;const n=()=>{this.socket.log("channel",`leave ${this.topic}`),this._trigger(ht.close,"leave",this._joinRef())};return this.rejoinTimer.reset(),this.joinPush.destroy(),new Promise(i=>{const r=new Wa(this,ht.leave,{},e);r.receive("ok",()=>{n(),i("ok")}).receive("timeout",()=>{n(),i("timed out")}).receive("error",()=>{i("error")}),r.send(),this._canPush()||r.trigger("ok",{})})}_broadcastEndpointURL(){let e=this.socket.endPoint;return e=e.replace(/^ws/i,"http"),e=e.replace(/(\/socket\/websocket|\/socket|\/websocket)\/?$/i,""),e.replace(/\/+$/,"")+"/api/broadcast"}async _fetchWithTimeout(e,n,i){const r=new AbortController,s=setTimeout(()=>r.abort(),i),o=await this.socket.fetch(e,Object.assign(Object.assign({},n),{signal:r.signal}));return clearTimeout(s),o}_push(e,n,i=this.timeout){if(!this.joinedOnce)throw`tried to push '${e}' to '${this.topic}' before joining. Use channel.subscribe() before pushing events`;let r=new Wa(this,e,n,i);return this._canPush()?r.send():(r.startTimeout(),this.pushBuffer.push(r)),r}_onMessage(e,n,i){return n}_isMember(e){return this.topic===e}_joinRef(){return this.joinPush.ref}_trigger(e,n,i){var r,s;const o=e.toLocaleLowerCase(),{close:a,error:l,leave:u,join:c}=ht;if(i&&[a,l,u,c].indexOf(o)>=0&&i!==this._joinRef())return;let d=this._onMessage(o,n,i);if(n&&!d)throw"channel onMessage callbacks must return the payload, modified or unmodified";["insert","update","delete"].includes(o)?(r=this.bindings.postgres_changes)===null||r===void 0||r.filter(f=>{var m,y,v;return((m=f.filter)===null||m===void 0?void 0:m.event)==="*"||((v=(y=f.filter)===null||y===void 0?void 0:y.event)===null||v===void 0?void 0:v.toLocaleLowerCase())===o}).map(f=>f.callback(d,i)):(s=this.bindings[o])===null||s===void 0||s.filter(f=>{var m,y,v,p,g,_;if(["broadcast","presence","postgres_changes"].includes(o))if("id"in f){const w=f.id,x=(m=f.filter)===null||m===void 0?void 0:m.event;return w&&((y=n.ids)===null||y===void 0?void 0:y.includes(w))&&(x==="*"||(x==null?void 0:x.toLocaleLowerCase())===((v=n.data)===null||v===void 0?void 0:v.type.toLocaleLowerCase()))}else{const w=(g=(p=f==null?void 0:f.filter)===null||p===void 0?void 0:p.event)===null||g===void 0?void 0:g.toLocaleLowerCase();return w==="*"||w===((_=n==null?void 0:n.event)===null||_===void 0?void 0:_.toLocaleLowerCase())}else return f.type.toLocaleLowerCase()===o}).map(f=>{if(typeof d=="object"&&"ids"in d){const m=d.data,{schema:y,table:v,commit_timestamp:p,type:g,errors:_}=m;d=Object.assign(Object.assign({},{schema:y,table:v,commit_timestamp:p,eventType:g,new:{},old:{},errors:_}),this._getPayloadRecords(m))}f.callback(d,i)})}_isClosed(){return this.state===Be.closed}_isJoined(){return this.state===Be.joined}_isJoining(){return this.state===Be.joining}_isLeaving(){return this.state===Be.leaving}_replyEventName(e){return`chan_reply_${e}`}_on(e,n,i){const r=e.toLocaleLowerCase(),s={type:r,filter:n,callback:i};return this.bindings[r]?this.bindings[r].push(s):this.bindings[r]=[s],this}_off(e,n){const i=e.toLocaleLowerCase();return this.bindings[i]=this.bindings[i].filter(r=>{var s;return!(((s=r.type)===null||s===void 0?void 0:s.toLocaleLowerCase())===i&&yc.isEqual(r.filter,n))}),this}static isEqual(e,n){if(Object.keys(e).length!==Object.keys(n).length)return!1;for(const i in e)if(e[i]!==n[i])return!1;return!0}_rejoinUntilConnected(){this.rejoinTimer.scheduleTimeout(),this.socket.isConnected()&&this._rejoin()}_onClose(e){this._on(ht.close,{},e)}_onError(e){this._on(ht.error,{},n=>e(n))}_canPush(){return this.socket.isConnected()&&this._isJoined()}_rejoin(e=this.timeout){this._isLeaving()||(this.socket._leaveOpenTopic(this.topic),this.state=Be.joining,this.joinPush.resend(e))}_getPayloadRecords(e){const n={new:{},old:{}};return(e.type==="INSERT"||e.type==="UPDATE")&&(n.new=Jh(e.columns,e.record)),(e.type==="UPDATE"||e.type==="DELETE")&&(n.old=Jh(e.columns,e.old_record)),n}}const X_=()=>{},J_=typeof WebSocket<"u";class Z_{constructor(e,n){var i;this.accessToken=null,this.apiKey=null,this.channels=[],this.endPoint="",this.headers=U_,this.params={},this.timeout=em,this.heartbeatIntervalMs=3e4,this.heartbeatTimer=void 0,this.pendingHeartbeatRef=null,this.ref=0,this.logger=X_,this.conn=null,this.sendBuffer=[],this.serializer=new H_,this.stateChangeCallbacks={open:[],close:[],error:[],message:[]},this._resolveFetch=s=>{let o;return s?o=s:typeof fetch>"u"?o=(...a)=>Ri(()=>Promise.resolve().then(()=>ls),void 0,import.meta.url).then(({default:l})=>l(...a)):o=fetch,(...a)=>o(...a)},this.endPoint=`${e}/${nu.websocket}`,n!=null&&n.transport?this.transport=n.transport:this.transport=null,n!=null&&n.params&&(this.params=n.params),n!=null&&n.headers&&(this.headers=Object.assign(Object.assign({},this.headers),n.headers)),n!=null&&n.timeout&&(this.timeout=n.timeout),n!=null&&n.logger&&(this.logger=n.logger),n!=null&&n.heartbeatIntervalMs&&(this.heartbeatIntervalMs=n.heartbeatIntervalMs);const r=(i=n==null?void 0:n.params)===null||i===void 0?void 0:i.apikey;r&&(this.accessToken=r,this.apiKey=r),this.reconnectAfterMs=n!=null&&n.reconnectAfterMs?n.reconnectAfterMs:s=>[1e3,2e3,5e3,1e4][s-1]||1e4,this.encode=n!=null&&n.encode?n.encode:(s,o)=>o(JSON.stringify(s)),this.decode=n!=null&&n.decode?n.decode:this.serializer.decode.bind(this.serializer),this.reconnectTimer=new tm(async()=>{this.disconnect(),this.connect()},this.reconnectAfterMs),this.fetch=this._resolveFetch(n==null?void 0:n.fetch)}connect(){if(!this.conn){if(this.transport){this.conn=new this.transport(this._endPointURL(),void 0,{headers:this.headers});return}if(J_){this.conn=new WebSocket(this._endPointURL()),this.setupConnection();return}this.conn=new ew(this._endPointURL(),void 0,{close:()=>{this.conn=null}}),Ri(()=>import("./browser-Bqx6gyK_.js").then(e=>e.b),[],import.meta.url).then(({default:e})=>{this.conn=new e(this._endPointURL(),void 0,{headers:this.headers}),this.setupConnection()})}}disconnect(e,n){this.conn&&(this.conn.onclose=function(){},e?this.conn.close(e,n??""):this.conn.close(),this.conn=null,this.heartbeatTimer&&clearInterval(this.heartbeatTimer),this.reconnectTimer.reset())}getChannels(){return this.channels}async removeChannel(e){const n=await e.unsubscribe();return this.channels.length===0&&this.disconnect(),n}async removeAllChannels(){const e=await Promise.all(this.channels.map(n=>n.unsubscribe()));return this.disconnect(),e}log(e,n,i){this.logger(e,n,i)}connectionState(){switch(this.conn&&this.conn.readyState){case Si.connecting:return In.Connecting;case Si.open:return In.Open;case Si.closing:return In.Closing;default:return In.Closed}}isConnected(){return this.connectionState()===In.Open}channel(e,n={config:{}}){const i=new yc(`realtime:${e}`,n,this);return this.channels.push(i),i}push(e){const{topic:n,event:i,payload:r,ref:s}=e,o=()=>{this.encode(e,a=>{var l;(l=this.conn)===null||l===void 0||l.send(a)})};this.log("push",`${n} ${i} (${s})`,r),this.isConnected()?o():this.sendBuffer.push(o)}setAuth(e){this.accessToken=e,this.channels.forEach(n=>{e&&n.updateJoinPayload({access_token:e}),n.joinedOnce&&n._isJoined()&&n._push(ht.access_token,{access_token:e})})}_makeRef(){let e=this.ref+1;return e===this.ref?this.ref=0:this.ref=e,this.ref.toString()}_leaveOpenTopic(e){let n=this.channels.find(i=>i.topic===e&&(i._isJoined()||i._isJoining()));n&&(this.log("transport",`leaving duplicate topic "${e}"`),n.unsubscribe())}_remove(e){this.channels=this.channels.filter(n=>n._joinRef()!==e._joinRef())}setupConnection(){this.conn&&(this.conn.binaryType="arraybuffer",this.conn.onopen=()=>this._onConnOpen(),this.conn.onerror=e=>this._onConnError(e),this.conn.onmessage=e=>this._onConnMessage(e),this.conn.onclose=e=>this._onConnClose(e))}_endPointURL(){return this._appendParams(this.endPoint,Object.assign({},this.params,{vsn:B_}))}_onConnMessage(e){this.decode(e.data,n=>{let{topic:i,event:r,payload:s,ref:o}=n;(o&&o===this.pendingHeartbeatRef||r===(s==null?void 0:s.type))&&(this.pendingHeartbeatRef=null),this.log("receive",`${s.status||""} ${i} ${r} ${o&&"("+o+")"||""}`,s),this.channels.filter(a=>a._isMember(i)).forEach(a=>a._trigger(r,s,o)),this.stateChangeCallbacks.message.forEach(a=>a(n))})}_onConnOpen(){this.log("transport",`connected to ${this._endPointURL()}`),this._flushSendBuffer(),this.reconnectTimer.reset(),this.heartbeatTimer&&clearInterval(this.heartbeatTimer),this.heartbeatTimer=setInterval(()=>this._sendHeartbeat(),this.heartbeatIntervalMs),this.stateChangeCallbacks.open.forEach(e=>e())}_onConnClose(e){this.log("transport","close",e),this._triggerChanError(),this.heartbeatTimer&&clearInterval(this.heartbeatTimer),this.reconnectTimer.scheduleTimeout(),this.stateChangeCallbacks.close.forEach(n=>n(e))}_onConnError(e){this.log("transport",e.message),this._triggerChanError(),this.stateChangeCallbacks.error.forEach(n=>n(e))}_triggerChanError(){this.channels.forEach(e=>e._trigger(ht.error))}_appendParams(e,n){if(Object.keys(n).length===0)return e;const i=e.match(/\?/)?"&":"?",r=new URLSearchParams(n);return`${e}${i}${r}`}_flushSendBuffer(){this.isConnected()&&this.sendBuffer.length>0&&(this.sendBuffer.forEach(e=>e()),this.sendBuffer=[])}_sendHeartbeat(){var e;if(this.isConnected()){if(this.pendingHeartbeatRef){this.pendingHeartbeatRef=null,this.log("transport","heartbeat timeout. Attempting to re-establish connection"),(e=this.conn)===null||e===void 0||e.close(V_,"hearbeat timeout");return}this.pendingHeartbeatRef=this._makeRef(),this.push({topic:"phoenix",event:"heartbeat",payload:{},ref:this.pendingHeartbeatRef}),this.setAuth(this.accessToken)}}}class ew{constructor(e,n,i){this.binaryType="arraybuffer",this.onclose=()=>{},this.onerror=()=>{},this.onmessage=()=>{},this.onopen=()=>{},this.readyState=Si.connecting,this.send=()=>{},this.url=null,this.url=e,this.close=i.close}}class vc extends Error{constructor(e){super(e),this.__isStorageError=!0,this.name="StorageError"}}function Ce(t){return typeof t=="object"&&t!==null&&"__isStorageError"in t}class tw extends vc{constructor(e,n){super(e),this.name="StorageApiError",this.status=n}toJSON(){return{name:this.name,message:this.message,status:this.status}}}class nd extends vc{constructor(e,n){super(e),this.name="StorageUnknownError",this.originalError=n}}var nw=function(t,e,n,i){function r(s){return s instanceof n?s:new n(function(o){o(s)})}return new(n||(n=Promise))(function(s,o){function a(c){try{u(i.next(c))}catch(h){o(h)}}function l(c){try{u(i.throw(c))}catch(h){o(h)}}function u(c){c.done?s(c.value):r(c.value).then(a,l)}u((i=i.apply(t,e||[])).next())})};const im=t=>{let e;return t?e=t:typeof fetch>"u"?e=(...n)=>Ri(()=>Promise.resolve().then(()=>ls),void 0,import.meta.url).then(({default:i})=>i(...n)):e=fetch,(...n)=>e(...n)},iw=()=>nw(void 0,void 0,void 0,function*(){return typeof Response>"u"?(yield Ri(()=>Promise.resolve().then(()=>ls),void 0,import.meta.url)).Response:Response});var Vi=function(t,e,n,i){function r(s){return s instanceof n?s:new n(function(o){o(s)})}return new(n||(n=Promise))(function(s,o){function a(c){try{u(i.next(c))}catch(h){o(h)}}function l(c){try{u(i.throw(c))}catch(h){o(h)}}function u(c){c.done?s(c.value):r(c.value).then(a,l)}u((i=i.apply(t,e||[])).next())})};const Ka=t=>t.msg||t.message||t.error_description||t.error||JSON.stringify(t),rw=(t,e)=>Vi(void 0,void 0,void 0,function*(){const n=yield iw();t instanceof n?t.json().then(i=>{e(new tw(Ka(i),t.status||500))}).catch(i=>{e(new nd(Ka(i),i))}):e(new nd(Ka(t),t))}),sw=(t,e,n,i)=>{const r={method:t,headers:(e==null?void 0:e.headers)||{}};return t==="GET"?r:(r.headers=Object.assign({"Content-Type":"application/json"},e==null?void 0:e.headers),r.body=JSON.stringify(i),Object.assign(Object.assign({},r),n))};function da(t,e,n,i,r,s){return Vi(this,void 0,void 0,function*(){return new Promise((o,a)=>{t(n,sw(e,i,r,s)).then(l=>{if(!l.ok)throw l;return i!=null&&i.noResolveJson?l:l.json()}).then(l=>o(l)).catch(l=>rw(l,a))})})}function ru(t,e,n,i){return Vi(this,void 0,void 0,function*(){return da(t,"GET",e,n,i)})}function Yt(t,e,n,i,r){return Vi(this,void 0,void 0,function*(){return da(t,"POST",e,i,r,n)})}function ow(t,e,n,i,r){return Vi(this,void 0,void 0,function*(){return da(t,"PUT",e,i,r,n)})}function rm(t,e,n,i,r){return Vi(this,void 0,void 0,function*(){return da(t,"DELETE",e,i,r,n)})}var Je=function(t,e,n,i){function r(s){return s instanceof n?s:new n(function(o){o(s)})}return new(n||(n=Promise))(function(s,o){function a(c){try{u(i.next(c))}catch(h){o(h)}}function l(c){try{u(i.throw(c))}catch(h){o(h)}}function u(c){c.done?s(c.value):r(c.value).then(a,l)}u((i=i.apply(t,e||[])).next())})};const aw={limit:100,offset:0,sortBy:{column:"name",order:"asc"}},id={cacheControl:"3600",contentType:"text/plain;charset=UTF-8",upsert:!1};class lw{constructor(e,n={},i,r){this.url=e,this.headers=n,this.bucketId=i,this.fetch=im(r)}uploadOrUpdate(e,n,i,r){return Je(this,void 0,void 0,function*(){try{let s;const o=Object.assign(Object.assign({},id),r),a=Object.assign(Object.assign({},this.headers),e==="POST"&&{"x-upsert":String(o.upsert)});typeof Blob<"u"&&i instanceof Blob?(s=new FormData,s.append("cacheControl",o.cacheControl),s.append("",i)):typeof FormData<"u"&&i instanceof FormData?(s=i,s.append("cacheControl",o.cacheControl)):(s=i,a["cache-control"]=`max-age=${o.cacheControl}`,a["content-type"]=o.contentType);const l=this._removeEmptyFolders(n),u=this._getFinalPath(l),c=yield this.fetch(`${this.url}/object/${u}`,Object.assign({method:e,body:s,headers:a},o!=null&&o.duplex?{duplex:o.duplex}:{})),h=yield c.json();return c.ok?{data:{path:l,id:h.Id,fullPath:h.Key},error:null}:{data:null,error:h}}catch(s){if(Ce(s))return{data:null,error:s};throw s}})}upload(e,n,i){return Je(this,void 0,void 0,function*(){return this.uploadOrUpdate("POST",e,n,i)})}uploadToSignedUrl(e,n,i,r){return Je(this,void 0,void 0,function*(){const s=this._removeEmptyFolders(e),o=this._getFinalPath(s),a=new URL(this.url+`/object/upload/sign/${o}`);a.searchParams.set("token",n);try{let l;const u=Object.assign({upsert:id.upsert},r),c=Object.assign(Object.assign({},this.headers),{"x-upsert":String(u.upsert)});typeof Blob<"u"&&i instanceof Blob?(l=new FormData,l.append("cacheControl",u.cacheControl),l.append("",i)):typeof FormData<"u"&&i instanceof FormData?(l=i,l.append("cacheControl",u.cacheControl)):(l=i,c["cache-control"]=`max-age=${u.cacheControl}`,c["content-type"]=u.contentType);const h=yield this.fetch(a.toString(),{method:"PUT",body:l,headers:c}),d=yield h.json();return h.ok?{data:{path:s,fullPath:d.Key},error:null}:{data:null,error:d}}catch(l){if(Ce(l))return{data:null,error:l};throw l}})}createSignedUploadUrl(e){return Je(this,void 0,void 0,function*(){try{let n=this._getFinalPath(e);const i=yield Yt(this.fetch,`${this.url}/object/upload/sign/${n}`,{},{headers:this.headers}),r=new URL(this.url+i.url),s=r.searchParams.get("token");if(!s)throw new vc("No token returned by API");return{data:{signedUrl:r.toString(),path:e,token:s},error:null}}catch(n){if(Ce(n))return{data:null,error:n};throw n}})}update(e,n,i){return Je(this,void 0,void 0,function*(){return this.uploadOrUpdate("PUT",e,n,i)})}move(e,n){return Je(this,void 0,void 0,function*(){try{return{data:yield Yt(this.fetch,`${this.url}/object/move`,{bucketId:this.bucketId,sourceKey:e,destinationKey:n},{headers:this.headers}),error:null}}catch(i){if(Ce(i))return{data:null,error:i};throw i}})}copy(e,n){return Je(this,void 0,void 0,function*(){try{return{data:{path:(yield Yt(this.fetch,`${this.url}/object/copy`,{bucketId:this.bucketId,sourceKey:e,destinationKey:n},{headers:this.headers})).Key},error:null}}catch(i){if(Ce(i))return{data:null,error:i};throw i}})}createSignedUrl(e,n,i){return Je(this,void 0,void 0,function*(){try{let r=this._getFinalPath(e),s=yield Yt(this.fetch,`${this.url}/object/sign/${r}`,Object.assign({expiresIn:n},i!=null&&i.transform?{transform:i.transform}:{}),{headers:this.headers});const o=i!=null&&i.download?`&download=${i.download===!0?"":i.download}`:"";return s={signedUrl:encodeURI(`${this.url}${s.signedURL}${o}`)},{data:s,error:null}}catch(r){if(Ce(r))return{data:null,error:r};throw r}})}createSignedUrls(e,n,i){return Je(this,void 0,void 0,function*(){try{const r=yield Yt(this.fetch,`${this.url}/object/sign/${this.bucketId}`,{expiresIn:n,paths:e},{headers:this.headers}),s=i!=null&&i.download?`&download=${i.download===!0?"":i.download}`:"";return{data:r.map(o=>Object.assign(Object.assign({},o),{signedUrl:o.signedURL?encodeURI(`${this.url}${o.signedURL}${s}`):null})),error:null}}catch(r){if(Ce(r))return{data:null,error:r};throw r}})}download(e,n){return Je(this,void 0,void 0,function*(){const r=typeof(n==null?void 0:n.transform)<"u"?"render/image/authenticated":"object",s=this.transformOptsToQueryString((n==null?void 0:n.transform)||{}),o=s?`?${s}`:"";try{const a=this._getFinalPath(e);return{data:yield(yield ru(this.fetch,`${this.url}/${r}/${a}${o}`,{headers:this.headers,noResolveJson:!0})).blob(),error:null}}catch(a){if(Ce(a))return{data:null,error:a};throw a}})}getPublicUrl(e,n){const i=this._getFinalPath(e),r=[],s=n!=null&&n.download?`download=${n.download===!0?"":n.download}`:"";s!==""&&r.push(s);const a=typeof(n==null?void 0:n.transform)<"u"?"render/image":"object",l=this.transformOptsToQueryString((n==null?void 0:n.transform)||{});l!==""&&r.push(l);let u=r.join("&");return u!==""&&(u=`?${u}`),{data:{publicUrl:encodeURI(`${this.url}/${a}/public/${i}${u}`)}}}remove(e){return Je(this,void 0,void 0,function*(){try{return{data:yield rm(this.fetch,`${this.url}/object/${this.bucketId}`,{prefixes:e},{headers:this.headers}),error:null}}catch(n){if(Ce(n))return{data:null,error:n};throw n}})}list(e,n,i){return Je(this,void 0,void 0,function*(){try{const r=Object.assign(Object.assign(Object.assign({},aw),n),{prefix:e||""});return{data:yield Yt(this.fetch,`${this.url}/object/list/${this.bucketId}`,r,{headers:this.headers},i),error:null}}catch(r){if(Ce(r))return{data:null,error:r};throw r}})}_getFinalPath(e){return`${this.bucketId}/${e}`}_removeEmptyFolders(e){return e.replace(/^\/|\/$/g,"").replace(/\/+/g,"/")}transformOptsToQueryString(e){const n=[];return e.width&&n.push(`width=${e.width}`),e.height&&n.push(`height=${e.height}`),e.resize&&n.push(`resize=${e.resize}`),e.format&&n.push(`format=${e.format}`),e.quality&&n.push(`quality=${e.quality}`),n.join("&")}}const uw="2.5.5",cw={"X-Client-Info":`storage-js/${uw}`};var Zn=function(t,e,n,i){function r(s){return s instanceof n?s:new n(function(o){o(s)})}return new(n||(n=Promise))(function(s,o){function a(c){try{u(i.next(c))}catch(h){o(h)}}function l(c){try{u(i.throw(c))}catch(h){o(h)}}function u(c){c.done?s(c.value):r(c.value).then(a,l)}u((i=i.apply(t,e||[])).next())})};class hw{constructor(e,n={},i){this.url=e,this.headers=Object.assign(Object.assign({},cw),n),this.fetch=im(i)}listBuckets(){return Zn(this,void 0,void 0,function*(){try{return{data:yield ru(this.fetch,`${this.url}/bucket`,{headers:this.headers}),error:null}}catch(e){if(Ce(e))return{data:null,error:e};throw e}})}getBucket(e){return Zn(this,void 0,void 0,function*(){try{return{data:yield ru(this.fetch,`${this.url}/bucket/${e}`,{headers:this.headers}),error:null}}catch(n){if(Ce(n))return{data:null,error:n};throw n}})}createBucket(e,n={public:!1}){return Zn(this,void 0,void 0,function*(){try{return{data:yield Yt(this.fetch,`${this.url}/bucket`,{id:e,name:e,public:n.public,file_size_limit:n.fileSizeLimit,allowed_mime_types:n.allowedMimeTypes},{headers:this.headers}),error:null}}catch(i){if(Ce(i))return{data:null,error:i};throw i}})}updateBucket(e,n){return Zn(this,void 0,void 0,function*(){try{return{data:yield ow(this.fetch,`${this.url}/bucket/${e}`,{id:e,name:e,public:n.public,file_size_limit:n.fileSizeLimit,allowed_mime_types:n.allowedMimeTypes},{headers:this.headers}),error:null}}catch(i){if(Ce(i))return{data:null,error:i};throw i}})}emptyBucket(e){return Zn(this,void 0,void 0,function*(){try{return{data:yield Yt(this.fetch,`${this.url}/bucket/${e}/empty`,{},{headers:this.headers}),error:null}}catch(n){if(Ce(n))return{data:null,error:n};throw n}})}deleteBucket(e){return Zn(this,void 0,void 0,function*(){try{return{data:yield rm(this.fetch,`${this.url}/bucket/${e}`,{},{headers:this.headers}),error:null}}catch(n){if(Ce(n))return{data:null,error:n};throw n}})}}class dw extends hw{constructor(e,n={},i){super(e,n,i)}from(e){return new lw(this.url,this.headers,e,this.fetch)}}const fw="2.43.4";let lr="";typeof Deno<"u"?lr="deno":typeof document<"u"?lr="web":typeof navigator<"u"&&navigator.product==="ReactNative"?lr="react-native":lr="node";const pw={"X-Client-Info":`supabase-js-${lr}/${fw}`},gw={headers:pw},mw={schema:"public"},yw={autoRefreshToken:!0,persistSession:!0,detectSessionInUrl:!0,flowType:"implicit"},vw={};var _w=function(t,e,n,i){function r(s){return s instanceof n?s:new n(function(o){o(s)})}return new(n||(n=Promise))(function(s,o){function a(c){try{u(i.next(c))}catch(h){o(h)}}function l(c){try{u(i.throw(c))}catch(h){o(h)}}function u(c){c.done?s(c.value):r(c.value).then(a,l)}u((i=i.apply(t,e||[])).next())})};const ww=t=>{let e;return t?e=t:typeof fetch>"u"?e=gc:e=fetch,(...n)=>e(...n)},xw=()=>typeof Headers>"u"?Zg:Headers,kw=(t,e,n)=>{const i=ww(n),r=xw();return(s,o)=>_w(void 0,void 0,void 0,function*(){var a;const l=(a=yield e())!==null&&a!==void 0?a:t;let u=new r(o==null?void 0:o.headers);return u.has("apikey")||u.set("apikey",t),u.has("Authorization")||u.set("Authorization",`Bearer ${l}`),i(s,Object.assign(Object.assign({},o),{headers:u}))})};function bw(t){return t.replace(/\/$/,"")}function Sw(t,e){const{db:n,auth:i,realtime:r,global:s}=t,{db:o,auth:a,realtime:l,global:u}=e;return{db:Object.assign(Object.assign({},o),n),auth:Object.assign(Object.assign({},a),i),realtime:Object.assign(Object.assign({},l),r),global:Object.assign(Object.assign({},u),s)}}const sm="2.64.2",Cw="http://localhost:9999",Ew="supabase.auth.token",Pw={"X-Client-Info":`gotrue-js/${sm}`},rd=10,su="X-Supabase-Api-Version",om={"2024-01-01":{timestamp:Date.parse("2024-01-01T00:00:00.0Z"),name:"2024-01-01"}};function Tw(t){return Math.round(Date.now()/1e3)+t}function Ow(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(t){const e=Math.random()*16|0;return(t=="x"?e:e&3|8).toString(16)})}const lt=()=>typeof document<"u",kn={tested:!1,writable:!1},br=()=>{if(!lt())return!1;try{if(typeof globalThis.localStorage!="object")return!1}catch{return!1}if(kn.tested)return kn.writable;const t=`lswt-${Math.random()}${Math.random()}`;try{globalThis.localStorage.setItem(t,t),globalThis.localStorage.removeItem(t),kn.tested=!0,kn.writable=!0}catch{kn.tested=!0,kn.writable=!1}return kn.writable};function Ya(t){const e={},n=new URL(t);if(n.hash&&n.hash[0]==="#")try{new URLSearchParams(n.hash.substring(1)).forEach((r,s)=>{e[s]=r})}catch{}return n.searchParams.forEach((i,r)=>{e[r]=i}),e}const am=t=>{let e;return t?e=t:typeof fetch>"u"?e=(...n)=>Ri(()=>Promise.resolve().then(()=>ls),void 0,import.meta.url).then(({default:i})=>i(...n)):e=fetch,(...n)=>e(...n)},Lw=t=>typeof t=="object"&&t!==null&&"status"in t&&"ok"in t&&"json"in t&&typeof t.json=="function",lm=async(t,e,n)=>{await t.setItem(e,JSON.stringify(n))},Os=async(t,e)=>{const n=await t.getItem(e);if(!n)return null;try{return JSON.parse(n)}catch{return n}},Ga=async(t,e)=>{await t.removeItem(e)};function Mw(t){const e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";let n="",i,r,s,o,a,l,u,c=0;for(t=t.replace("-","+").replace("_","/");c<t.length;)o=e.indexOf(t.charAt(c++)),a=e.indexOf(t.charAt(c++)),l=e.indexOf(t.charAt(c++)),u=e.indexOf(t.charAt(c++)),i=o<<2|a>>4,r=(a&15)<<4|l>>2,s=(l&3)<<6|u,n=n+String.fromCharCode(i),l!=64&&r!=0&&(n=n+String.fromCharCode(r)),u!=64&&s!=0&&(n=n+String.fromCharCode(s));return n}class fa{constructor(){this.promise=new fa.promiseConstructor((e,n)=>{this.resolve=e,this.reject=n})}}fa.promiseConstructor=Promise;function sd(t){const e=/^([a-z0-9_-]{4})*($|[a-z0-9_-]{3}=?$|[a-z0-9_-]{2}(==)?$)$/i,n=t.split(".");if(n.length!==3)throw new Error("JWT is not valid: not a JWT structure");if(!e.test(n[1]))throw new Error("JWT is not valid: payload is not in base64url format");const i=n[1];return JSON.parse(Mw(i))}async function Rw(t){return await new Promise(e=>{setTimeout(()=>e(null),t)})}function Iw(t,e){return new Promise((i,r)=>{(async()=>{for(let s=0;s<1/0;s++)try{const o=await t(s);if(!e(s,null,o)){i(o);return}}catch(o){if(!e(s,o)){r(o);return}}})()})}function Aw(t){return("0"+t.toString(16)).substr(-2)}function Dw(){const e=new Uint32Array(56);if(typeof crypto>"u"){const n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._~",i=n.length;let r="";for(let s=0;s<56;s++)r+=n.charAt(Math.floor(Math.random()*i));return r}return crypto.getRandomValues(e),Array.from(e,Aw).join("")}async function jw(t){const n=new TextEncoder().encode(t),i=await crypto.subtle.digest("SHA-256",n),r=new Uint8Array(i);return Array.from(r).map(s=>String.fromCharCode(s)).join("")}function Nw(t){return btoa(t).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}async function zw(t){if(!(typeof crypto<"u"&&typeof crypto.subtle<"u"&&typeof TextEncoder<"u"))return console.warn("WebCrypto API is not supported. Code challenge method will default to use plain instead of sha256."),t;const n=await jw(t);return Nw(n)}async function ei(t,e,n=!1){const i=Dw();let r=i;n&&(r+="/PASSWORD_RECOVERY"),await lm(t,`${e}-code-verifier`,r);const s=await zw(i);return[s,i===s?"plain":"s256"]}const Fw=/^2[0-9]{3}-(0[1-9]|1[0-2])-(0[1-9]|1[0-9]|2[0-9]|3[0-1])$/i;function $w(t){const e=t.headers.get(su);if(!e||!e.match(Fw))return null;try{return new Date(`${e}T00:00:00.0Z`)}catch{return null}}class _c extends Error{constructor(e,n,i){super(e),this.__isAuthError=!0,this.name="AuthError",this.status=n,this.code=i}}function j(t){return typeof t=="object"&&t!==null&&"__isAuthError"in t}class Uw extends _c{constructor(e,n,i){super(e,n,i),this.name="AuthApiError",this.status=n,this.code=i}}function Bw(t){return j(t)&&t.name==="AuthApiError"}class um extends _c{constructor(e,n){super(e),this.name="AuthUnknownError",this.originalError=n}}class Qn extends _c{constructor(e,n,i,r){super(e,i,r),this.name=n,this.status=i}}class bn extends Qn{constructor(){super("Auth session missing!","AuthSessionMissingError",400,void 0)}}class qa extends Qn{constructor(){super("Auth session or user missing","AuthInvalidTokenResponseError",500,void 0)}}class Ls extends Qn{constructor(e){super(e,"AuthInvalidCredentialsError",400,void 0)}}class Ms extends Qn{constructor(e,n=null){super(e,"AuthImplicitGrantRedirectError",500,void 0),this.details=null,this.details=n}toJSON(){return{name:this.name,message:this.message,status:this.status,details:this.details}}}class od extends Qn{constructor(e,n=null){super(e,"AuthPKCEGrantCodeExchangeError",500,void 0),this.details=null,this.details=n}toJSON(){return{name:this.name,message:this.message,status:this.status,details:this.details}}}class ou extends Qn{constructor(e,n){super(e,"AuthRetryableFetchError",n,void 0)}}function Qa(t){return j(t)&&t.name==="AuthRetryableFetchError"}class ad extends Qn{constructor(e,n,i){super(e,"AuthWeakPasswordError",n,"weak_password"),this.reasons=i}}var Vw=function(t,e){var n={};for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&e.indexOf(i)<0&&(n[i]=t[i]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var r=0,i=Object.getOwnPropertySymbols(t);r<i.length;r++)e.indexOf(i[r])<0&&Object.prototype.propertyIsEnumerable.call(t,i[r])&&(n[i[r]]=t[i[r]]);return n};const Ln=t=>t.msg||t.message||t.error_description||t.error||JSON.stringify(t),Hw=[502,503,504];async function ld(t){var e;if(!Lw(t))throw new ou(Ln(t),0);if(Hw.includes(t.status))throw new ou(Ln(t),t.status);let n;try{n=await t.json()}catch(s){throw new um(Ln(s),s)}let i;const r=$w(t);if(r&&r.getTime()>=om["2024-01-01"].timestamp&&typeof n=="object"&&n&&typeof n.code=="string"?i=n.code:typeof n=="object"&&n&&typeof n.error_code=="string"&&(i=n.error_code),i){if(i==="weak_password")throw new ad(Ln(n),t.status,((e=n.weak_password)===null||e===void 0?void 0:e.reasons)||[])}else if(typeof n=="object"&&n&&typeof n.weak_password=="object"&&n.weak_password&&Array.isArray(n.weak_password.reasons)&&n.weak_password.reasons.length&&n.weak_password.reasons.reduce((s,o)=>s&&typeof o=="string",!0))throw new ad(Ln(n),t.status,n.weak_password.reasons);throw new Uw(Ln(n),t.status||500,i)}const Ww=(t,e,n,i)=>{const r={method:t,headers:(e==null?void 0:e.headers)||{}};return t==="GET"?r:(r.headers=Object.assign({"Content-Type":"application/json;charset=UTF-8"},e==null?void 0:e.headers),r.body=JSON.stringify(i),Object.assign(Object.assign({},r),n))};async function z(t,e,n,i){var r;const s=Object.assign({},i==null?void 0:i.headers);s[su]||(s[su]=om["2024-01-01"].name),i!=null&&i.jwt&&(s.Authorization=`Bearer ${i.jwt}`);const o=(r=i==null?void 0:i.query)!==null&&r!==void 0?r:{};i!=null&&i.redirectTo&&(o.redirect_to=i.redirectTo);const a=Object.keys(o).length?"?"+new URLSearchParams(o).toString():"",l=await Kw(t,e,n+a,{headers:s,noResolveJson:i==null?void 0:i.noResolveJson},{},i==null?void 0:i.body);return i!=null&&i.xform?i==null?void 0:i.xform(l):{data:Object.assign({},l),error:null}}async function Kw(t,e,n,i,r,s){const o=Ww(e,i,r,s);let a;try{a=await t(n,Object.assign({},o))}catch(l){throw console.error(l),new ou(Ln(l),0)}if(a.ok||await ld(a),i!=null&&i.noResolveJson)return a;try{return await a.json()}catch(l){await ld(l)}}function Ht(t){var e;let n=null;Qw(t)&&(n=Object.assign({},t),t.expires_at||(n.expires_at=Tw(t.expires_in)));const i=(e=t.user)!==null&&e!==void 0?e:t;return{data:{session:n,user:i},error:null}}function ud(t){const e=Ht(t);return!e.error&&t.weak_password&&typeof t.weak_password=="object"&&Array.isArray(t.weak_password.reasons)&&t.weak_password.reasons.length&&t.weak_password.message&&typeof t.weak_password.message=="string"&&t.weak_password.reasons.reduce((n,i)=>n&&typeof i=="string",!0)&&(e.data.weak_password=t.weak_password),e}function Qt(t){var e;return{data:{user:(e=t.user)!==null&&e!==void 0?e:t},error:null}}function Yw(t){return{data:t,error:null}}function Gw(t){const{action_link:e,email_otp:n,hashed_token:i,redirect_to:r,verification_type:s}=t,o=Vw(t,["action_link","email_otp","hashed_token","redirect_to","verification_type"]),a={action_link:e,email_otp:n,hashed_token:i,redirect_to:r,verification_type:s},l=Object.assign({},o);return{data:{properties:a,user:l},error:null}}function qw(t){return t}function Qw(t){return t.access_token&&t.refresh_token&&t.expires_in}var Xw=function(t,e){var n={};for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&e.indexOf(i)<0&&(n[i]=t[i]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var r=0,i=Object.getOwnPropertySymbols(t);r<i.length;r++)e.indexOf(i[r])<0&&Object.prototype.propertyIsEnumerable.call(t,i[r])&&(n[i[r]]=t[i[r]]);return n};class Jw{constructor({url:e="",headers:n={},fetch:i}){this.url=e,this.headers=n,this.fetch=am(i),this.mfa={listFactors:this._listFactors.bind(this),deleteFactor:this._deleteFactor.bind(this)}}async signOut(e,n="global"){try{return await z(this.fetch,"POST",`${this.url}/logout?scope=${n}`,{headers:this.headers,jwt:e,noResolveJson:!0}),{data:null,error:null}}catch(i){if(j(i))return{data:null,error:i};throw i}}async inviteUserByEmail(e,n={}){try{return await z(this.fetch,"POST",`${this.url}/invite`,{body:{email:e,data:n.data},headers:this.headers,redirectTo:n.redirectTo,xform:Qt})}catch(i){if(j(i))return{data:{user:null},error:i};throw i}}async generateLink(e){try{const{options:n}=e,i=Xw(e,["options"]),r=Object.assign(Object.assign({},i),n);return"newEmail"in i&&(r.new_email=i==null?void 0:i.newEmail,delete r.newEmail),await z(this.fetch,"POST",`${this.url}/admin/generate_link`,{body:r,headers:this.headers,xform:Gw,redirectTo:n==null?void 0:n.redirectTo})}catch(n){if(j(n))return{data:{properties:null,user:null},error:n};throw n}}async createUser(e){try{return await z(this.fetch,"POST",`${this.url}/admin/users`,{body:e,headers:this.headers,xform:Qt})}catch(n){if(j(n))return{data:{user:null},error:n};throw n}}async listUsers(e){var n,i,r,s,o,a,l;try{const u={nextPage:null,lastPage:0,total:0},c=await z(this.fetch,"GET",`${this.url}/admin/users`,{headers:this.headers,noResolveJson:!0,query:{page:(i=(n=e==null?void 0:e.page)===null||n===void 0?void 0:n.toString())!==null&&i!==void 0?i:"",per_page:(s=(r=e==null?void 0:e.perPage)===null||r===void 0?void 0:r.toString())!==null&&s!==void 0?s:""},xform:qw});if(c.error)throw c.error;const h=await c.json(),d=(o=c.headers.get("x-total-count"))!==null&&o!==void 0?o:0,f=(l=(a=c.headers.get("link"))===null||a===void 0?void 0:a.split(","))!==null&&l!==void 0?l:[];return f.length>0&&(f.forEach(m=>{const y=parseInt(m.split(";")[0].split("=")[1].substring(0,1)),v=JSON.parse(m.split(";")[1].split("=")[1]);u[`${v}Page`]=y}),u.total=parseInt(d)),{data:Object.assign(Object.assign({},h),u),error:null}}catch(u){if(j(u))return{data:{users:[]},error:u};throw u}}async getUserById(e){try{return await z(this.fetch,"GET",`${this.url}/admin/users/${e}`,{headers:this.headers,xform:Qt})}catch(n){if(j(n))return{data:{user:null},error:n};throw n}}async updateUserById(e,n){try{return await z(this.fetch,"PUT",`${this.url}/admin/users/${e}`,{body:n,headers:this.headers,xform:Qt})}catch(i){if(j(i))return{data:{user:null},error:i};throw i}}async deleteUser(e,n=!1){try{return await z(this.fetch,"DELETE",`${this.url}/admin/users/${e}`,{headers:this.headers,body:{should_soft_delete:n},xform:Qt})}catch(i){if(j(i))return{data:{user:null},error:i};throw i}}async _listFactors(e){try{const{data:n,error:i}=await z(this.fetch,"GET",`${this.url}/admin/users/${e.userId}/factors`,{headers:this.headers,xform:r=>({data:{factors:r},error:null})});return{data:n,error:i}}catch(n){if(j(n))return{data:null,error:n};throw n}}async _deleteFactor(e){try{return{data:await z(this.fetch,"DELETE",`${this.url}/admin/users/${e.userId}/factors/${e.id}`,{headers:this.headers}),error:null}}catch(n){if(j(n))return{data:null,error:n};throw n}}}const Zw={getItem:t=>br()?globalThis.localStorage.getItem(t):null,setItem:(t,e)=>{br()&&globalThis.localStorage.setItem(t,e)},removeItem:t=>{br()&&globalThis.localStorage.removeItem(t)}};function cd(t={}){return{getItem:e=>t[e]||null,setItem:(e,n)=>{t[e]=n},removeItem:e=>{delete t[e]}}}function ex(){if(typeof globalThis!="object")try{Object.defineProperty(Object.prototype,"__magic__",{get:function(){return this},configurable:!0}),__magic__.globalThis=__magic__,delete Object.prototype.__magic__}catch{typeof self<"u"&&(self.globalThis=self)}}const ti={debug:!!(globalThis&&br()&&globalThis.localStorage&&globalThis.localStorage.getItem("supabase.gotrue-js.locks.debug")==="true")};class cm extends Error{constructor(e){super(e),this.isAcquireTimeout=!0}}class tx extends cm{}async function nx(t,e,n){ti.debug&&console.log("@supabase/gotrue-js: navigatorLock: acquire lock",t,e);const i=new globalThis.AbortController;return e>0&&setTimeout(()=>{i.abort(),ti.debug&&console.log("@supabase/gotrue-js: navigatorLock acquire timed out",t)},e),await globalThis.navigator.locks.request(t,e===0?{mode:"exclusive",ifAvailable:!0}:{mode:"exclusive",signal:i.signal},async r=>{if(r){ti.debug&&console.log("@supabase/gotrue-js: navigatorLock: acquired",t,r.name);try{return await n()}finally{ti.debug&&console.log("@supabase/gotrue-js: navigatorLock: released",t,r.name)}}else{if(e===0)throw ti.debug&&console.log("@supabase/gotrue-js: navigatorLock: not immediately available",t),new tx(`Acquiring an exclusive Navigator LockManager lock "${t}" immediately failed`);if(ti.debug)try{const s=await globalThis.navigator.locks.query();console.log("@supabase/gotrue-js: Navigator LockManager state",JSON.stringify(s,null,"  "))}catch(s){console.warn("@supabase/gotrue-js: Error when querying Navigator LockManager state",s)}return console.warn("@supabase/gotrue-js: Navigator LockManager returned a null lock when using #request without ifAvailable set to true, it appears this browser is not following the LockManager spec https://developer.mozilla.org/en-US/docs/Web/API/LockManager/request"),await n()}})}ex();const ix={url:Cw,storageKey:Ew,autoRefreshToken:!0,persistSession:!0,detectSessionInUrl:!0,headers:Pw,flowType:"implicit",debug:!1,hasCustomAuthorizationHeader:!1},Ji=30*1e3,hd=3;async function dd(t,e,n){return await n()}class Qr{constructor(e){var n,i;this.memoryStorage=null,this.stateChangeEmitters=new Map,this.autoRefreshTicker=null,this.visibilityChangedCallback=null,this.refreshingDeferred=null,this.initializePromise=null,this.detectSessionInUrl=!0,this.hasCustomAuthorizationHeader=!1,this.suppressGetSessionWarning=!1,this.lockAcquired=!1,this.pendingInLock=[],this.broadcastChannel=null,this.logger=console.log,this.instanceID=Qr.nextInstanceID,Qr.nextInstanceID+=1,this.instanceID>0&&lt()&&console.warn("Multiple GoTrueClient instances detected in the same browser context. It is not an error, but this should be avoided as it may produce undefined behavior when used concurrently under the same storage key.");const r=Object.assign(Object.assign({},ix),e);if(this.logDebugMessages=!!r.debug,typeof r.debug=="function"&&(this.logger=r.debug),this.persistSession=r.persistSession,this.storageKey=r.storageKey,this.autoRefreshToken=r.autoRefreshToken,this.admin=new Jw({url:r.url,headers:r.headers,fetch:r.fetch}),this.url=r.url,this.headers=r.headers,this.fetch=am(r.fetch),this.lock=r.lock||dd,this.detectSessionInUrl=r.detectSessionInUrl,this.flowType=r.flowType,this.hasCustomAuthorizationHeader=r.hasCustomAuthorizationHeader,r.lock?this.lock=r.lock:lt()&&(!((n=globalThis==null?void 0:globalThis.navigator)===null||n===void 0)&&n.locks)?this.lock=nx:this.lock=dd,this.mfa={verify:this._verify.bind(this),enroll:this._enroll.bind(this),unenroll:this._unenroll.bind(this),challenge:this._challenge.bind(this),listFactors:this._listFactors.bind(this),challengeAndVerify:this._challengeAndVerify.bind(this),getAuthenticatorAssuranceLevel:this._getAuthenticatorAssuranceLevel.bind(this)},this.persistSession?r.storage?this.storage=r.storage:br()?this.storage=Zw:(this.memoryStorage={},this.storage=cd(this.memoryStorage)):(this.memoryStorage={},this.storage=cd(this.memoryStorage)),lt()&&globalThis.BroadcastChannel&&this.persistSession&&this.storageKey){try{this.broadcastChannel=new globalThis.BroadcastChannel(this.storageKey)}catch(s){console.error("Failed to create a new BroadcastChannel, multi-tab state changes will not be available",s)}(i=this.broadcastChannel)===null||i===void 0||i.addEventListener("message",async s=>{this._debug("received broadcast notification from other tab or client",s),await this._notifyAllSubscribers(s.data.event,s.data.session,!1)})}this.initialize()}_debug(...e){return this.logDebugMessages&&this.logger(`GoTrueClient@${this.instanceID} (${sm}) ${new Date().toISOString()}`,...e),this}async initialize(){return this.initializePromise?await this.initializePromise:(this.initializePromise=(async()=>await this._acquireLock(-1,async()=>await this._initialize()))(),await this.initializePromise)}async _initialize(){try{const e=lt()?await this._isPKCEFlow():!1;if(this._debug("#_initialize()","begin","is PKCE flow",e),e||this.detectSessionInUrl&&this._isImplicitGrantFlow()){const{data:n,error:i}=await this._getSessionFromURL(e);if(i)return this._debug("#_initialize()","error detecting session from URL",i),(i==null?void 0:i.message)==="Identity is already linked"||(i==null?void 0:i.message)==="Identity is already linked to another user"?{error:i}:(await this._removeSession(),{error:i});const{session:r,redirectType:s}=n;return this._debug("#_initialize()","detected session in URL",r,"redirect type",s),await this._saveSession(r),setTimeout(async()=>{s==="recovery"?await this._notifyAllSubscribers("PASSWORD_RECOVERY",r):await this._notifyAllSubscribers("SIGNED_IN",r)},0),{error:null}}return await this._recoverAndRefresh(),{error:null}}catch(e){return j(e)?{error:e}:{error:new um("Unexpected error during initialization",e)}}finally{await this._handleVisibilityChange(),this._debug("#_initialize()","end")}}async signInAnonymously(e){var n,i,r;try{await this._removeSession();const s=await z(this.fetch,"POST",`${this.url}/signup`,{headers:this.headers,body:{data:(i=(n=e==null?void 0:e.options)===null||n===void 0?void 0:n.data)!==null&&i!==void 0?i:{},gotrue_meta_security:{captcha_token:(r=e==null?void 0:e.options)===null||r===void 0?void 0:r.captchaToken}},xform:Ht}),{data:o,error:a}=s;if(a||!o)return{data:{user:null,session:null},error:a};const l=o.session,u=o.user;return o.session&&(await this._saveSession(o.session),await this._notifyAllSubscribers("SIGNED_IN",l)),{data:{user:u,session:l},error:null}}catch(s){if(j(s))return{data:{user:null,session:null},error:s};throw s}}async signUp(e){var n,i,r;try{await this._removeSession();let s;if("email"in e){const{email:c,password:h,options:d}=e;let f=null,m=null;this.flowType==="pkce"&&([f,m]=await ei(this.storage,this.storageKey)),s=await z(this.fetch,"POST",`${this.url}/signup`,{headers:this.headers,redirectTo:d==null?void 0:d.emailRedirectTo,body:{email:c,password:h,data:(n=d==null?void 0:d.data)!==null&&n!==void 0?n:{},gotrue_meta_security:{captcha_token:d==null?void 0:d.captchaToken},code_challenge:f,code_challenge_method:m},xform:Ht})}else if("phone"in e){const{phone:c,password:h,options:d}=e;s=await z(this.fetch,"POST",`${this.url}/signup`,{headers:this.headers,body:{phone:c,password:h,data:(i=d==null?void 0:d.data)!==null&&i!==void 0?i:{},channel:(r=d==null?void 0:d.channel)!==null&&r!==void 0?r:"sms",gotrue_meta_security:{captcha_token:d==null?void 0:d.captchaToken}},xform:Ht})}else throw new Ls("You must provide either an email or phone number and a password");const{data:o,error:a}=s;if(a||!o)return{data:{user:null,session:null},error:a};const l=o.session,u=o.user;return o.session&&(await this._saveSession(o.session),await this._notifyAllSubscribers("SIGNED_IN",l)),{data:{user:u,session:l},error:null}}catch(s){if(j(s))return{data:{user:null,session:null},error:s};throw s}}async signInWithPassword(e){try{await this._removeSession();let n;if("email"in e){const{email:s,password:o,options:a}=e;n=await z(this.fetch,"POST",`${this.url}/token?grant_type=password`,{headers:this.headers,body:{email:s,password:o,gotrue_meta_security:{captcha_token:a==null?void 0:a.captchaToken}},xform:ud})}else if("phone"in e){const{phone:s,password:o,options:a}=e;n=await z(this.fetch,"POST",`${this.url}/token?grant_type=password`,{headers:this.headers,body:{phone:s,password:o,gotrue_meta_security:{captcha_token:a==null?void 0:a.captchaToken}},xform:ud})}else throw new Ls("You must provide either an email or phone number and a password");const{data:i,error:r}=n;return r?{data:{user:null,session:null},error:r}:!i||!i.session||!i.user?{data:{user:null,session:null},error:new qa}:(i.session&&(await this._saveSession(i.session),await this._notifyAllSubscribers("SIGNED_IN",i.session)),{data:Object.assign({user:i.user,session:i.session},i.weak_password?{weakPassword:i.weak_password}:null),error:r})}catch(n){if(j(n))return{data:{user:null,session:null},error:n};throw n}}async signInWithOAuth(e){var n,i,r,s;return await this._removeSession(),await this._handleProviderSignIn(e.provider,{redirectTo:(n=e.options)===null||n===void 0?void 0:n.redirectTo,scopes:(i=e.options)===null||i===void 0?void 0:i.scopes,queryParams:(r=e.options)===null||r===void 0?void 0:r.queryParams,skipBrowserRedirect:(s=e.options)===null||s===void 0?void 0:s.skipBrowserRedirect})}async exchangeCodeForSession(e){return await this.initializePromise,this._acquireLock(-1,async()=>this._exchangeCodeForSession(e))}async _exchangeCodeForSession(e){const n=await Os(this.storage,`${this.storageKey}-code-verifier`),[i,r]=(n??"").split("/"),{data:s,error:o}=await z(this.fetch,"POST",`${this.url}/token?grant_type=pkce`,{headers:this.headers,body:{auth_code:e,code_verifier:i},xform:Ht});return await Ga(this.storage,`${this.storageKey}-code-verifier`),o?{data:{user:null,session:null,redirectType:null},error:o}:!s||!s.session||!s.user?{data:{user:null,session:null,redirectType:null},error:new qa}:(s.session&&(await this._saveSession(s.session),await this._notifyAllSubscribers("SIGNED_IN",s.session)),{data:Object.assign(Object.assign({},s),{redirectType:r??null}),error:o})}async signInWithIdToken(e){await this._removeSession();try{const{options:n,provider:i,token:r,access_token:s,nonce:o}=e,a=await z(this.fetch,"POST",`${this.url}/token?grant_type=id_token`,{headers:this.headers,body:{provider:i,id_token:r,access_token:s,nonce:o,gotrue_meta_security:{captcha_token:n==null?void 0:n.captchaToken}},xform:Ht}),{data:l,error:u}=a;return u?{data:{user:null,session:null},error:u}:!l||!l.session||!l.user?{data:{user:null,session:null},error:new qa}:(l.session&&(await this._saveSession(l.session),await this._notifyAllSubscribers("SIGNED_IN",l.session)),{data:l,error:u})}catch(n){if(j(n))return{data:{user:null,session:null},error:n};throw n}}async signInWithOtp(e){var n,i,r,s,o;try{if(await this._removeSession(),"email"in e){const{email:a,options:l}=e;let u=null,c=null;this.flowType==="pkce"&&([u,c]=await ei(this.storage,this.storageKey));const{error:h}=await z(this.fetch,"POST",`${this.url}/otp`,{headers:this.headers,body:{email:a,data:(n=l==null?void 0:l.data)!==null&&n!==void 0?n:{},create_user:(i=l==null?void 0:l.shouldCreateUser)!==null&&i!==void 0?i:!0,gotrue_meta_security:{captcha_token:l==null?void 0:l.captchaToken},code_challenge:u,code_challenge_method:c},redirectTo:l==null?void 0:l.emailRedirectTo});return{data:{user:null,session:null},error:h}}if("phone"in e){const{phone:a,options:l}=e,{data:u,error:c}=await z(this.fetch,"POST",`${this.url}/otp`,{headers:this.headers,body:{phone:a,data:(r=l==null?void 0:l.data)!==null&&r!==void 0?r:{},create_user:(s=l==null?void 0:l.shouldCreateUser)!==null&&s!==void 0?s:!0,gotrue_meta_security:{captcha_token:l==null?void 0:l.captchaToken},channel:(o=l==null?void 0:l.channel)!==null&&o!==void 0?o:"sms"}});return{data:{user:null,session:null,messageId:u==null?void 0:u.message_id},error:c}}throw new Ls("You must provide either an email or phone number.")}catch(a){if(j(a))return{data:{user:null,session:null},error:a};throw a}}async verifyOtp(e){var n,i;try{e.type!=="email_change"&&e.type!=="phone_change"&&await this._removeSession();let r,s;"options"in e&&(r=(n=e.options)===null||n===void 0?void 0:n.redirectTo,s=(i=e.options)===null||i===void 0?void 0:i.captchaToken);const{data:o,error:a}=await z(this.fetch,"POST",`${this.url}/verify`,{headers:this.headers,body:Object.assign(Object.assign({},e),{gotrue_meta_security:{captcha_token:s}}),redirectTo:r,xform:Ht});if(a)throw a;if(!o)throw new Error("An error occurred on token verification.");const l=o.session,u=o.user;return l!=null&&l.access_token&&(await this._saveSession(l),await this._notifyAllSubscribers(e.type=="recovery"?"PASSWORD_RECOVERY":"SIGNED_IN",l)),{data:{user:u,session:l},error:null}}catch(r){if(j(r))return{data:{user:null,session:null},error:r};throw r}}async signInWithSSO(e){var n,i,r;try{await this._removeSession();let s=null,o=null;return this.flowType==="pkce"&&([s,o]=await ei(this.storage,this.storageKey)),await z(this.fetch,"POST",`${this.url}/sso`,{body:Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},"providerId"in e?{provider_id:e.providerId}:null),"domain"in e?{domain:e.domain}:null),{redirect_to:(i=(n=e.options)===null||n===void 0?void 0:n.redirectTo)!==null&&i!==void 0?i:void 0}),!((r=e==null?void 0:e.options)===null||r===void 0)&&r.captchaToken?{gotrue_meta_security:{captcha_token:e.options.captchaToken}}:null),{skip_http_redirect:!0,code_challenge:s,code_challenge_method:o}),headers:this.headers,xform:Yw})}catch(s){if(j(s))return{data:null,error:s};throw s}}async reauthenticate(){return await this.initializePromise,await this._acquireLock(-1,async()=>await this._reauthenticate())}async _reauthenticate(){try{return await this._useSession(async e=>{const{data:{session:n},error:i}=e;if(i)throw i;if(!n)throw new bn;const{error:r}=await z(this.fetch,"GET",`${this.url}/reauthenticate`,{headers:this.headers,jwt:n.access_token});return{data:{user:null,session:null},error:r}})}catch(e){if(j(e))return{data:{user:null,session:null},error:e};throw e}}async resend(e){try{e.type!="email_change"&&e.type!="phone_change"&&await this._removeSession();const n=`${this.url}/resend`;if("email"in e){const{email:i,type:r,options:s}=e,{error:o}=await z(this.fetch,"POST",n,{headers:this.headers,body:{email:i,type:r,gotrue_meta_security:{captcha_token:s==null?void 0:s.captchaToken}},redirectTo:s==null?void 0:s.emailRedirectTo});return{data:{user:null,session:null},error:o}}else if("phone"in e){const{phone:i,type:r,options:s}=e,{data:o,error:a}=await z(this.fetch,"POST",n,{headers:this.headers,body:{phone:i,type:r,gotrue_meta_security:{captcha_token:s==null?void 0:s.captchaToken}}});return{data:{user:null,session:null,messageId:o==null?void 0:o.message_id},error:a}}throw new Ls("You must provide either an email or phone number and a type")}catch(n){if(j(n))return{data:{user:null,session:null},error:n};throw n}}async getSession(){return await this.initializePromise,await this._acquireLock(-1,async()=>this._useSession(async n=>n))}async _acquireLock(e,n){this._debug("#_acquireLock","begin",e);try{if(this.lockAcquired){const i=this.pendingInLock.length?this.pendingInLock[this.pendingInLock.length-1]:Promise.resolve(),r=(async()=>(await i,await n()))();return this.pendingInLock.push((async()=>{try{await r}catch{}})()),r}return await this.lock(`lock:${this.storageKey}`,e,async()=>{this._debug("#_acquireLock","lock acquired for storage key",this.storageKey);try{this.lockAcquired=!0;const i=n();for(this.pendingInLock.push((async()=>{try{await i}catch{}})()),await i;this.pendingInLock.length;){const r=[...this.pendingInLock];await Promise.all(r),this.pendingInLock.splice(0,r.length)}return await i}finally{this._debug("#_acquireLock","lock released for storage key",this.storageKey),this.lockAcquired=!1}})}finally{this._debug("#_acquireLock","end")}}async _useSession(e){this._debug("#_useSession","begin");try{const n=await this.__loadSession();return await e(n)}finally{this._debug("#_useSession","end")}}async __loadSession(){this._debug("#__loadSession()","begin"),this.lockAcquired||this._debug("#__loadSession()","used outside of an acquired lock!",new Error().stack);try{let e=null;const n=await Os(this.storage,this.storageKey);if(this._debug("#getSession()","session from storage",n),n!==null&&(this._isValidSession(n)?e=n:(this._debug("#getSession()","session from storage is not valid"),await this._removeSession())),!e)return{data:{session:null},error:null};const i=e.expires_at?e.expires_at<=Date.now()/1e3:!1;if(this._debug("#__loadSession()",`session has${i?"":" not"} expired`,"expires_at",e.expires_at),!i){if(this.storage.isServer){const o=this.suppressGetSessionWarning;e=new Proxy(e,{get(l,u,c){return!o&&u==="user"&&console.warn("Using the user object as returned from supabase.auth.getSession() or from some supabase.auth.onAuthStateChange() events could be insecure! This value comes directly from the storage medium (usually cookies on the server) and many not be authentic. Use supabase.auth.getUser() instead which authenticates the data by contacting the Supabase Auth server."),Reflect.get(l,u,c)}})}return{data:{session:e},error:null}}const{session:r,error:s}=await this._callRefreshToken(e.refresh_token);return s?{data:{session:null},error:s}:{data:{session:r},error:null}}finally{this._debug("#__loadSession()","end")}}async getUser(e){return e?await this._getUser(e):(await this.initializePromise,await this._acquireLock(-1,async()=>await this._getUser()))}async _getUser(e){try{return e?await z(this.fetch,"GET",`${this.url}/user`,{headers:this.headers,jwt:e,xform:Qt}):await this._useSession(async n=>{var i,r,s;const{data:o,error:a}=n;if(a)throw a;return!(!((i=o.session)===null||i===void 0)&&i.access_token)&&!this.hasCustomAuthorizationHeader?{data:{user:null},error:new bn}:await z(this.fetch,"GET",`${this.url}/user`,{headers:this.headers,jwt:(s=(r=o.session)===null||r===void 0?void 0:r.access_token)!==null&&s!==void 0?s:void 0,xform:Qt})})}catch(n){if(j(n))return{data:{user:null},error:n};throw n}}async updateUser(e,n={}){return await this.initializePromise,await this._acquireLock(-1,async()=>await this._updateUser(e,n))}async _updateUser(e,n={}){try{return await this._useSession(async i=>{const{data:r,error:s}=i;if(s)throw s;if(!r.session)throw new bn;const o=r.session;let a=null,l=null;this.flowType==="pkce"&&e.email!=null&&([a,l]=await ei(this.storage,this.storageKey));const{data:u,error:c}=await z(this.fetch,"PUT",`${this.url}/user`,{headers:this.headers,redirectTo:n==null?void 0:n.emailRedirectTo,body:Object.assign(Object.assign({},e),{code_challenge:a,code_challenge_method:l}),jwt:o.access_token,xform:Qt});if(c)throw c;return o.user=u.user,await this._saveSession(o),await this._notifyAllSubscribers("USER_UPDATED",o),{data:{user:o.user},error:null}})}catch(i){if(j(i))return{data:{user:null},error:i};throw i}}_decodeJWT(e){return sd(e)}async setSession(e){return await this.initializePromise,await this._acquireLock(-1,async()=>await this._setSession(e))}async _setSession(e){try{if(!e.access_token||!e.refresh_token)throw new bn;const n=Date.now()/1e3;let i=n,r=!0,s=null;const o=sd(e.access_token);if(o.exp&&(i=o.exp,r=i<=n),r){const{session:a,error:l}=await this._callRefreshToken(e.refresh_token);if(l)return{data:{user:null,session:null},error:l};if(!a)return{data:{user:null,session:null},error:null};s=a}else{const{data:a,error:l}=await this._getUser(e.access_token);if(l)throw l;s={access_token:e.access_token,refresh_token:e.refresh_token,user:a.user,token_type:"bearer",expires_in:i-n,expires_at:i},await this._saveSession(s),await this._notifyAllSubscribers("SIGNED_IN",s)}return{data:{user:s.user,session:s},error:null}}catch(n){if(j(n))return{data:{session:null,user:null},error:n};throw n}}async refreshSession(e){return await this.initializePromise,await this._acquireLock(-1,async()=>await this._refreshSession(e))}async _refreshSession(e){try{return await this._useSession(async n=>{var i;if(!e){const{data:o,error:a}=n;if(a)throw a;e=(i=o.session)!==null&&i!==void 0?i:void 0}if(!(e!=null&&e.refresh_token))throw new bn;const{session:r,error:s}=await this._callRefreshToken(e.refresh_token);return s?{data:{user:null,session:null},error:s}:r?{data:{user:r.user,session:r},error:null}:{data:{user:null,session:null},error:null}})}catch(n){if(j(n))return{data:{user:null,session:null},error:n};throw n}}async _getSessionFromURL(e){try{if(!lt())throw new Ms("No browser detected.");if(this.flowType==="implicit"&&!this._isImplicitGrantFlow())throw new Ms("Not a valid implicit grant flow url.");if(this.flowType=="pkce"&&!e)throw new od("Not a valid PKCE flow url.");const n=Ya(window.location.href);if(e){if(!n.code)throw new od("No code detected.");const{data:g,error:_}=await this._exchangeCodeForSession(n.code);if(_)throw _;const w=new URL(window.location.href);return w.searchParams.delete("code"),window.history.replaceState(window.history.state,"",w.toString()),{data:{session:g.session,redirectType:null},error:null}}if(n.error||n.error_description||n.error_code)throw new Ms(n.error_description||"Error in URL with unspecified error_description",{error:n.error||"unspecified_error",code:n.error_code||"unspecified_code"});const{provider_token:i,provider_refresh_token:r,access_token:s,refresh_token:o,expires_in:a,expires_at:l,token_type:u}=n;if(!s||!a||!o||!u)throw new Ms("No session defined in URL");const c=Math.round(Date.now()/1e3),h=parseInt(a);let d=c+h;l&&(d=parseInt(l));const f=d-c;f*1e3<=Ji&&console.warn(`@supabase/gotrue-js: Session as retrieved from URL expires in ${f}s, should have been closer to ${h}s`);const m=d-h;c-m>=120?console.warn("@supabase/gotrue-js: Session as retrieved from URL was issued over 120s ago, URL could be stale",m,d,c):c-m<0&&console.warn("@supabase/gotrue-js: Session as retrieved from URL was issued in the future? Check the device clok for skew",m,d,c);const{data:y,error:v}=await this._getUser(s);if(v)throw v;const p={provider_token:i,provider_refresh_token:r,access_token:s,expires_in:h,expires_at:d,refresh_token:o,token_type:u,user:y.user};return window.location.hash="",this._debug("#_getSessionFromURL()","clearing window.location.hash"),{data:{session:p,redirectType:n.type},error:null}}catch(n){if(j(n))return{data:{session:null,redirectType:null},error:n};throw n}}_isImplicitGrantFlow(){const e=Ya(window.location.href);return!!(lt()&&(e.access_token||e.error_description))}async _isPKCEFlow(){const e=Ya(window.location.href),n=await Os(this.storage,`${this.storageKey}-code-verifier`);return!!(e.code&&n)}async signOut(e={scope:"global"}){return await this.initializePromise,await this._acquireLock(-1,async()=>await this._signOut(e))}async _signOut({scope:e}={scope:"global"}){return await this._useSession(async n=>{var i;const{data:r,error:s}=n;if(s)return{error:s};const o=(i=r.session)===null||i===void 0?void 0:i.access_token;if(o){const{error:a}=await this.admin.signOut(o,e);if(a&&!(Bw(a)&&(a.status===404||a.status===401||a.status===403)))return{error:a}}return e!=="others"&&(await this._removeSession(),await Ga(this.storage,`${this.storageKey}-code-verifier`),await this._notifyAllSubscribers("SIGNED_OUT",null)),{error:null}})}onAuthStateChange(e){const n=Ow(),i={id:n,callback:e,unsubscribe:()=>{this._debug("#unsubscribe()","state change callback with id removed",n),this.stateChangeEmitters.delete(n)}};return this._debug("#onAuthStateChange()","registered callback with id",n),this.stateChangeEmitters.set(n,i),(async()=>(await this.initializePromise,await this._acquireLock(-1,async()=>{this._emitInitialSession(n)})))(),{data:{subscription:i}}}async _emitInitialSession(e){return await this._useSession(async n=>{var i,r;try{const{data:{session:s},error:o}=n;if(o)throw o;await((i=this.stateChangeEmitters.get(e))===null||i===void 0?void 0:i.callback("INITIAL_SESSION",s)),this._debug("INITIAL_SESSION","callback id",e,"session",s)}catch(s){await((r=this.stateChangeEmitters.get(e))===null||r===void 0?void 0:r.callback("INITIAL_SESSION",null)),this._debug("INITIAL_SESSION","callback id",e,"error",s),console.error(s)}})}async resetPasswordForEmail(e,n={}){let i=null,r=null;this.flowType==="pkce"&&([i,r]=await ei(this.storage,this.storageKey,!0));try{return await z(this.fetch,"POST",`${this.url}/recover`,{body:{email:e,code_challenge:i,code_challenge_method:r,gotrue_meta_security:{captcha_token:n.captchaToken}},headers:this.headers,redirectTo:n.redirectTo})}catch(s){if(j(s))return{data:null,error:s};throw s}}async getUserIdentities(){var e;try{const{data:n,error:i}=await this.getUser();if(i)throw i;return{data:{identities:(e=n.user.identities)!==null&&e!==void 0?e:[]},error:null}}catch(n){if(j(n))return{data:null,error:n};throw n}}async linkIdentity(e){var n;try{const{data:i,error:r}=await this._useSession(async s=>{var o,a,l,u,c;const{data:h,error:d}=s;if(d)throw d;const f=await this._getUrlForProvider(`${this.url}/user/identities/authorize`,e.provider,{redirectTo:(o=e.options)===null||o===void 0?void 0:o.redirectTo,scopes:(a=e.options)===null||a===void 0?void 0:a.scopes,queryParams:(l=e.options)===null||l===void 0?void 0:l.queryParams,skipBrowserRedirect:!0});return await z(this.fetch,"GET",f,{headers:this.headers,jwt:(c=(u=h.session)===null||u===void 0?void 0:u.access_token)!==null&&c!==void 0?c:void 0})});if(r)throw r;return lt()&&!(!((n=e.options)===null||n===void 0)&&n.skipBrowserRedirect)&&window.location.assign(i==null?void 0:i.url),{data:{provider:e.provider,url:i==null?void 0:i.url},error:null}}catch(i){if(j(i))return{data:{provider:e.provider,url:null},error:i};throw i}}async unlinkIdentity(e){try{return await this._useSession(async n=>{var i,r;const{data:s,error:o}=n;if(o)throw o;return await z(this.fetch,"DELETE",`${this.url}/user/identities/${e.identity_id}`,{headers:this.headers,jwt:(r=(i=s.session)===null||i===void 0?void 0:i.access_token)!==null&&r!==void 0?r:void 0})})}catch(n){if(j(n))return{data:null,error:n};throw n}}async _refreshAccessToken(e){const n=`#_refreshAccessToken(${e.substring(0,5)}...)`;this._debug(n,"begin");try{const i=Date.now();return await Iw(async r=>(r>0&&await Rw(200*Math.pow(2,r-1)),this._debug(n,"refreshing attempt",r),await z(this.fetch,"POST",`${this.url}/token?grant_type=refresh_token`,{body:{refresh_token:e},headers:this.headers,xform:Ht})),(r,s)=>{const o=200*Math.pow(2,r);return s&&Qa(s)&&Date.now()+o-i<Ji})}catch(i){if(this._debug(n,"error",i),j(i))return{data:{session:null,user:null},error:i};throw i}finally{this._debug(n,"end")}}_isValidSession(e){return typeof e=="object"&&e!==null&&"access_token"in e&&"refresh_token"in e&&"expires_at"in e}async _handleProviderSignIn(e,n){const i=await this._getUrlForProvider(`${this.url}/authorize`,e,{redirectTo:n.redirectTo,scopes:n.scopes,queryParams:n.queryParams});return this._debug("#_handleProviderSignIn()","provider",e,"options",n,"url",i),lt()&&!n.skipBrowserRedirect&&window.location.assign(i),{data:{provider:e,url:i},error:null}}async _recoverAndRefresh(){var e;const n="#_recoverAndRefresh()";this._debug(n,"begin");try{const i=await Os(this.storage,this.storageKey);if(this._debug(n,"session from storage",i),!this._isValidSession(i)){this._debug(n,"session is not valid"),i!==null&&await this._removeSession();return}const r=Math.round(Date.now()/1e3),s=((e=i.expires_at)!==null&&e!==void 0?e:1/0)<r+rd;if(this._debug(n,`session has${s?"":" not"} expired with margin of ${rd}s`),s){if(this.autoRefreshToken&&i.refresh_token){const{error:o}=await this._callRefreshToken(i.refresh_token);o&&(console.error(o),Qa(o)||(this._debug(n,"refresh failed with a non-retryable error, removing the session",o),await this._removeSession()))}}else await this._notifyAllSubscribers("SIGNED_IN",i)}catch(i){this._debug(n,"error",i),console.error(i);return}finally{this._debug(n,"end")}}async _callRefreshToken(e){var n,i;if(!e)throw new bn;if(this.refreshingDeferred)return this.refreshingDeferred.promise;const r=`#_callRefreshToken(${e.substring(0,5)}...)`;this._debug(r,"begin");try{this.refreshingDeferred=new fa;const{data:s,error:o}=await this._refreshAccessToken(e);if(o)throw o;if(!s.session)throw new bn;await this._saveSession(s.session),await this._notifyAllSubscribers("TOKEN_REFRESHED",s.session);const a={session:s.session,error:null};return this.refreshingDeferred.resolve(a),a}catch(s){if(this._debug(r,"error",s),j(s)){const o={session:null,error:s};return Qa(s)||(await this._removeSession(),await this._notifyAllSubscribers("SIGNED_OUT",null)),(n=this.refreshingDeferred)===null||n===void 0||n.resolve(o),o}throw(i=this.refreshingDeferred)===null||i===void 0||i.reject(s),s}finally{this.refreshingDeferred=null,this._debug(r,"end")}}async _notifyAllSubscribers(e,n,i=!0){const r=`#_notifyAllSubscribers(${e})`;this._debug(r,"begin",n,`broadcast = ${i}`);try{this.broadcastChannel&&i&&this.broadcastChannel.postMessage({event:e,session:n});const s=[],o=Array.from(this.stateChangeEmitters.values()).map(async a=>{try{await a.callback(e,n)}catch(l){s.push(l)}});if(await Promise.all(o),s.length>0){for(let a=0;a<s.length;a+=1)console.error(s[a]);throw s[0]}}finally{this._debug(r,"end")}}async _saveSession(e){this._debug("#_saveSession()",e),this.suppressGetSessionWarning=!0,await lm(this.storage,this.storageKey,e)}async _removeSession(){this._debug("#_removeSession()"),await Ga(this.storage,this.storageKey)}_removeVisibilityChangedCallback(){this._debug("#_removeVisibilityChangedCallback()");const e=this.visibilityChangedCallback;this.visibilityChangedCallback=null;try{e&&lt()&&(window!=null&&window.removeEventListener)&&window.removeEventListener("visibilitychange",e)}catch(n){console.error("removing visibilitychange callback failed",n)}}async _startAutoRefresh(){await this._stopAutoRefresh(),this._debug("#_startAutoRefresh()");const e=setInterval(()=>this._autoRefreshTokenTick(),Ji);this.autoRefreshTicker=e,e&&typeof e=="object"&&typeof e.unref=="function"?e.unref():typeof Deno<"u"&&typeof Deno.unrefTimer=="function"&&Deno.unrefTimer(e),setTimeout(async()=>{await this.initializePromise,await this._autoRefreshTokenTick()},0)}async _stopAutoRefresh(){this._debug("#_stopAutoRefresh()");const e=this.autoRefreshTicker;this.autoRefreshTicker=null,e&&clearInterval(e)}async startAutoRefresh(){this._removeVisibilityChangedCallback(),await this._startAutoRefresh()}async stopAutoRefresh(){this._removeVisibilityChangedCallback(),await this._stopAutoRefresh()}async _autoRefreshTokenTick(){this._debug("#_autoRefreshTokenTick()","begin");try{await this._acquireLock(0,async()=>{try{const e=Date.now();try{return await this._useSession(async n=>{const{data:{session:i}}=n;if(!i||!i.refresh_token||!i.expires_at){this._debug("#_autoRefreshTokenTick()","no session");return}const r=Math.floor((i.expires_at*1e3-e)/Ji);this._debug("#_autoRefreshTokenTick()",`access token expires in ${r} ticks, a tick lasts ${Ji}ms, refresh threshold is ${hd} ticks`),r<=hd&&await this._callRefreshToken(i.refresh_token)})}catch(n){console.error("Auto refresh tick failed with error. This is likely a transient error.",n)}}finally{this._debug("#_autoRefreshTokenTick()","end")}})}catch(e){if(e.isAcquireTimeout||e instanceof cm)this._debug("auto refresh token tick lock not available");else throw e}}async _handleVisibilityChange(){if(this._debug("#_handleVisibilityChange()"),!lt()||!(window!=null&&window.addEventListener))return this.autoRefreshToken&&this.startAutoRefresh(),!1;try{this.visibilityChangedCallback=async()=>await this._onVisibilityChanged(!1),window==null||window.addEventListener("visibilitychange",this.visibilityChangedCallback),await this._onVisibilityChanged(!0)}catch(e){console.error("_handleVisibilityChange",e)}}async _onVisibilityChanged(e){const n=`#_onVisibilityChanged(${e})`;this._debug(n,"visibilityState",document.visibilityState),document.visibilityState==="visible"?(this.autoRefreshToken&&this._startAutoRefresh(),e||(await this.initializePromise,await this._acquireLock(-1,async()=>{if(document.visibilityState!=="visible"){this._debug(n,"acquired the lock to recover the session, but the browser visibilityState is no longer visible, aborting");return}await this._recoverAndRefresh()}))):document.visibilityState==="hidden"&&this.autoRefreshToken&&this._stopAutoRefresh()}async _getUrlForProvider(e,n,i){const r=[`provider=${encodeURIComponent(n)}`];if(i!=null&&i.redirectTo&&r.push(`redirect_to=${encodeURIComponent(i.redirectTo)}`),i!=null&&i.scopes&&r.push(`scopes=${encodeURIComponent(i.scopes)}`),this.flowType==="pkce"){const[s,o]=await ei(this.storage,this.storageKey),a=new URLSearchParams({code_challenge:`${encodeURIComponent(s)}`,code_challenge_method:`${encodeURIComponent(o)}`});r.push(a.toString())}if(i!=null&&i.queryParams){const s=new URLSearchParams(i.queryParams);r.push(s.toString())}return i!=null&&i.skipBrowserRedirect&&r.push(`skip_http_redirect=${i.skipBrowserRedirect}`),`${e}?${r.join("&")}`}async _unenroll(e){try{return await this._useSession(async n=>{var i;const{data:r,error:s}=n;return s?{data:null,error:s}:await z(this.fetch,"DELETE",`${this.url}/factors/${e.factorId}`,{headers:this.headers,jwt:(i=r==null?void 0:r.session)===null||i===void 0?void 0:i.access_token})})}catch(n){if(j(n))return{data:null,error:n};throw n}}async _enroll(e){try{return await this._useSession(async n=>{var i,r;const{data:s,error:o}=n;if(o)return{data:null,error:o};const{data:a,error:l}=await z(this.fetch,"POST",`${this.url}/factors`,{body:{friendly_name:e.friendlyName,factor_type:e.factorType,issuer:e.issuer},headers:this.headers,jwt:(i=s==null?void 0:s.session)===null||i===void 0?void 0:i.access_token});return l?{data:null,error:l}:(!((r=a==null?void 0:a.totp)===null||r===void 0)&&r.qr_code&&(a.totp.qr_code=`data:image/svg+xml;utf-8,${a.totp.qr_code}`),{data:a,error:null})})}catch(n){if(j(n))return{data:null,error:n};throw n}}async _verify(e){return this._acquireLock(-1,async()=>{try{return await this._useSession(async n=>{var i;const{data:r,error:s}=n;if(s)return{data:null,error:s};const{data:o,error:a}=await z(this.fetch,"POST",`${this.url}/factors/${e.factorId}/verify`,{body:{code:e.code,challenge_id:e.challengeId},headers:this.headers,jwt:(i=r==null?void 0:r.session)===null||i===void 0?void 0:i.access_token});return a?{data:null,error:a}:(await this._saveSession(Object.assign({expires_at:Math.round(Date.now()/1e3)+o.expires_in},o)),await this._notifyAllSubscribers("MFA_CHALLENGE_VERIFIED",o),{data:o,error:a})})}catch(n){if(j(n))return{data:null,error:n};throw n}})}async _challenge(e){return this._acquireLock(-1,async()=>{try{return await this._useSession(async n=>{var i;const{data:r,error:s}=n;return s?{data:null,error:s}:await z(this.fetch,"POST",`${this.url}/factors/${e.factorId}/challenge`,{headers:this.headers,jwt:(i=r==null?void 0:r.session)===null||i===void 0?void 0:i.access_token})})}catch(n){if(j(n))return{data:null,error:n};throw n}})}async _challengeAndVerify(e){const{data:n,error:i}=await this._challenge({factorId:e.factorId});return i?{data:null,error:i}:await this._verify({factorId:e.factorId,challengeId:n.id,code:e.code})}async _listFactors(){const{data:{user:e},error:n}=await this.getUser();if(n)return{data:null,error:n};const i=(e==null?void 0:e.factors)||[],r=i.filter(s=>s.factor_type==="totp"&&s.status==="verified");return{data:{all:i,totp:r},error:null}}async _getAuthenticatorAssuranceLevel(){return this._acquireLock(-1,async()=>await this._useSession(async e=>{var n,i;const{data:{session:r},error:s}=e;if(s)return{data:null,error:s};if(!r)return{data:{currentLevel:null,nextLevel:null,currentAuthenticationMethods:[]},error:null};const o=this._decodeJWT(r.access_token);let a=null;o.aal&&(a=o.aal);let l=a;((i=(n=r.user.factors)===null||n===void 0?void 0:n.filter(h=>h.status==="verified"))!==null&&i!==void 0?i:[]).length>0&&(l="aal2");const c=o.amr||[];return{data:{currentLevel:a,nextLevel:l,currentAuthenticationMethods:c},error:null}}))}}Qr.nextInstanceID=0;const rx=Qr;class sx extends rx{constructor(e){super(e)}}var ox=function(t,e,n,i){function r(s){return s instanceof n?s:new n(function(o){o(s)})}return new(n||(n=Promise))(function(s,o){function a(c){try{u(i.next(c))}catch(h){o(h)}}function l(c){try{u(i.throw(c))}catch(h){o(h)}}function u(c){c.done?s(c.value):r(c.value).then(a,l)}u((i=i.apply(t,e||[])).next())})};class ax{constructor(e,n,i){var r,s,o;if(this.supabaseUrl=e,this.supabaseKey=n,!e)throw new Error("supabaseUrl is required.");if(!n)throw new Error("supabaseKey is required.");const a=bw(e);this.realtimeUrl=`${a}/realtime/v1`.replace(/^http/i,"ws"),this.authUrl=`${a}/auth/v1`,this.storageUrl=`${a}/storage/v1`,this.functionsUrl=`${a}/functions/v1`;const l=`sb-${new URL(this.authUrl).hostname.split(".")[0]}-auth-token`,u={db:mw,realtime:vw,auth:Object.assign(Object.assign({},yw),{storageKey:l}),global:gw},c=Sw(i??{},u);this.storageKey=(r=c.auth.storageKey)!==null&&r!==void 0?r:"",this.headers=(s=c.global.headers)!==null&&s!==void 0?s:{},this.auth=this._initSupabaseAuthClient((o=c.auth)!==null&&o!==void 0?o:{},this.headers,c.global.fetch),this.fetch=kw(n,this._getAccessToken.bind(this),c.global.fetch),this.realtime=this._initRealtimeClient(Object.assign({headers:this.headers},c.realtime)),this.rest=new mc(`${a}/rest/v1`,{headers:this.headers,schema:c.db.schema,fetch:this.fetch}),this._listenForAuthEvents()}get functions(){return new O_(this.functionsUrl,{headers:this.headers,customFetch:this.fetch})}get storage(){return new dw(this.storageUrl,this.headers,this.fetch)}from(e){return this.rest.from(e)}schema(e){return this.rest.schema(e)}rpc(e,n={},i={}){return this.rest.rpc(e,n,i)}channel(e,n={config:{}}){return this.realtime.channel(e,n)}getChannels(){return this.realtime.getChannels()}removeChannel(e){return this.realtime.removeChannel(e)}removeAllChannels(){return this.realtime.removeAllChannels()}_getAccessToken(){var e,n;return ox(this,void 0,void 0,function*(){const{data:i}=yield this.auth.getSession();return(n=(e=i.session)===null||e===void 0?void 0:e.access_token)!==null&&n!==void 0?n:null})}_initSupabaseAuthClient({autoRefreshToken:e,persistSession:n,detectSessionInUrl:i,storage:r,storageKey:s,flowType:o,debug:a},l,u){var c;const h={Authorization:`Bearer ${this.supabaseKey}`,apikey:`${this.supabaseKey}`};return new sx({url:this.authUrl,headers:Object.assign(Object.assign({},h),l),storageKey:s,autoRefreshToken:e,persistSession:n,detectSessionInUrl:i,storage:r,flowType:o,debug:a,fetch:u,hasCustomAuthorizationHeader:(c="Authorization"in this.headers)!==null&&c!==void 0?c:!1})}_initRealtimeClient(e){return new Z_(this.realtimeUrl,Object.assign(Object.assign({},e),{params:Object.assign({apikey:this.supabaseKey},e==null?void 0:e.params)}))}_listenForAuthEvents(){return this.auth.onAuthStateChange((n,i)=>{this._handleTokenChanged(n,"CLIENT",i==null?void 0:i.access_token)})}_handleTokenChanged(e,n,i){(e==="TOKEN_REFRESHED"||e==="SIGNED_IN")&&this.changedAccessToken!==i?(this.realtime.setAuth(i??null),this.changedAccessToken=i):e==="SIGNED_OUT"&&(this.realtime.setAuth(this.supabaseKey),n=="STORAGE"&&this.auth.signOut(),this.changedAccessToken=void 0)}}const lx=(t,e,n)=>new ax(t,e,n);function ni(t){return P.jsxs("div",{role:"button",className:"flex items-center w-full p-3 leading-tight transition-all rounded-lg outline-none text-start hover:bg-blue-gray-50 hover:bg-opacity-80 hover:text-blue-gray-900 focus:bg-blue-gray-50 focus:bg-opacity-80 focus:text-blue-gray-900 active:bg-blue-gray-50 active:bg-opacity-80 active:text-blue-gray-900",children:[P.jsx("div",{className:"grid mr-4 place-items-center",children:P.jsx("i",{className:t.icon})}),P.jsx("a",{href:t.href,children:t.name})]})}function hm(){return P.jsxs("div",{className:"relative flex h-full w-full max-w-[20rem] flex-col rounded-xl bg-white bg-clip-border p-4 text-gray-700 shadow-xl shadow-blue-gray-900/5",children:[P.jsx("div",{className:"p-4 mb-2",children:P.jsx("h5",{className:"block font-sans text-xl antialiased font-semibold leading-snug tracking-normal text-blue-gray-900",children:P.jsx("a",{href:"/",children:"fs-tracer"})})}),P.jsxs("nav",{className:"flex min-w-[240px] flex-col gap-1 p-2 font-sans text-base font-normal text-blue-gray-700",children:[P.jsx(ni,{name:"Home",icon:"fa-solid fa-house",href:"/"}),P.jsx(ni,{name:"Recent files",icon:"fa-solid fa-folder",href:"/recent"}),P.jsx(ni,{name:"Search",icon:"fa-solid fa-magnifying-glass",href:"/search"}),P.jsx(ni,{name:"Monitoring",icon:"fa-solid fa-chart-column",href:"/monitoring"}),P.jsx(ni,{name:"Setup",icon:"fa-solid fa-gear",href:"/setup"}),P.jsx(ni,{name:"Logout",icon:"fa-solid fa-right-from-bracket",href:"/logout"})]})]})}/*!
  * @kurkle/color v0.3.2
  * https://github.com/kurkle/color#readme
  * (c) 2023 Jukka Kurkela
@@ -79,6 +79,6 @@ Error generating stack: `+s.message+`
  * https://www.chartjs.org
  * (c) 2024 Chart.js Contributors
  * Released under the MIT License
- */class rk{constructor(){this._request=null,this._charts=new Map,this._running=!1,this._lastDate=void 0}_notify(e,n,i,r){const s=n.listeners[r],o=n.duration;s.forEach(a=>a({chart:e,initial:n.initial,numSteps:o,currentStep:Math.min(i-n.start,o)}))}_refresh(){this._request||(this._running=!0,this._request=_m.call(window,()=>{this._update(),this._request=null,this._running&&this._refresh()}))}_update(e=Date.now()){let n=0;this._charts.forEach((i,r)=>{if(!i.running||!i.items.length)return;const s=i.items;let o=s.length-1,a=!1,l;for(;o>=0;--o)l=s[o],l._active?(l._total>i.duration&&(i.duration=l._total),l.tick(e),a=!0):(s[o]=s[s.length-1],s.pop());a&&(r.draw(),this._notify(r,i,e,"progress")),s.length||(i.running=!1,this._notify(r,i,e,"complete"),i.initial=!1),n+=s.length}),this._lastDate=e,n===0&&(this._running=!1)}_getAnims(e){const n=this._charts;let i=n.get(e);return i||(i={running:!1,initial:!0,items:[],listeners:{complete:[],progress:[]}},n.set(e,i)),i}listen(e,n,i){this._getAnims(e).listeners[n].push(i)}add(e,n){!n||!n.length||this._getAnims(e).items.push(...n)}has(e){return this._getAnims(e).items.length>0}start(e){const n=this._charts.get(e);n&&(n.running=!0,n.start=Date.now(),n.duration=n.items.reduce((i,r)=>Math.max(i,r._duration),0),this._refresh())}running(e){if(!this._running)return!1;const n=this._charts.get(e);return!(!n||!n.running||!n.items.length)}stop(e){const n=this._charts.get(e);if(!n||!n.items.length)return;const i=n.items;let r=i.length-1;for(;r>=0;--r)i[r].cancel();n.items=[],this._notify(e,n,Date.now(),"complete")}remove(e){return this._charts.delete(e)}}var Tt=new rk;const Dd="transparent",sk={boolean(t,e,n){return n>.5?e:t},color(t,e,n){const i=Cd(t||Dd),r=i.valid&&Cd(e||Dd);return r&&r.valid?r.mix(i,n).hexString():e},number(t,e,n){return t+(e-t)*n}};class ok{constructor(e,n,i,r){const s=n[i];r=js([e.to,r,s,e.from]);const o=js([e.from,s,r]);this._active=!0,this._fn=e.fn||sk[e.type||typeof o],this._easing=Pr[e.easing]||Pr.linear,this._start=Math.floor(Date.now()+(e.delay||0)),this._duration=this._total=Math.floor(e.duration),this._loop=!!e.loop,this._target=n,this._prop=i,this._from=o,this._to=r,this._promises=void 0}active(){return this._active}update(e,n,i){if(this._active){this._notify(!1);const r=this._target[this._prop],s=i-this._start,o=this._duration-s;this._start=i,this._duration=Math.floor(Math.max(o,e.duration)),this._total+=s,this._loop=!!e.loop,this._to=js([e.to,n,r,e.from]),this._from=js([e.from,r,n])}}cancel(){this._active&&(this.tick(Date.now()),this._active=!1,this._notify(!1))}tick(e){const n=e-this._start,i=this._duration,r=this._prop,s=this._from,o=this._loop,a=this._to;let l;if(this._active=s!==a&&(o||n<i),!this._active){this._target[r]=a,this._notify(!0);return}if(n<0){this._target[r]=s;return}l=n/i%2,l=o&&l>1?2-l:l,l=this._easing(Math.min(1,Math.max(0,l))),this._target[r]=this._fn(s,a,l)}wait(){const e=this._promises||(this._promises=[]);return new Promise((n,i)=>{e.push({res:n,rej:i})})}_notify(e){const n=e?"res":"rej",i=this._promises||[];for(let r=0;r<i.length;r++)i[r][n]()}}class Rm{constructor(e,n){this._chart=e,this._properties=new Map,this.configure(n)}configure(e){if(!U(e))return;const n=Object.keys(ue.animation),i=this._properties;Object.getOwnPropertyNames(e).forEach(r=>{const s=e[r];if(!U(s))return;const o={};for(const a of n)o[a]=s[a];(oe(s.properties)&&s.properties||[r]).forEach(a=>{(a===r||!i.has(a))&&i.set(a,o)})})}_animateOptions(e,n){const i=n.options,r=lk(e,i);if(!r)return[];const s=this._createAnimations(r,i);return i.$shared&&ak(e.options.$animations,i).then(()=>{e.options=i},()=>{}),s}_createAnimations(e,n){const i=this._properties,r=[],s=e.$animations||(e.$animations={}),o=Object.keys(n),a=Date.now();let l;for(l=o.length-1;l>=0;--l){const u=o[l];if(u.charAt(0)==="$")continue;if(u==="options"){r.push(...this._animateOptions(e,n));continue}const c=n[u];let h=s[u];const d=i.get(u);if(h)if(d&&h.active()){h.update(d,c,a);continue}else h.cancel();if(!d||!d.duration){e[u]=c;continue}s[u]=h=new ok(d,e,u,c),r.push(h)}return r}update(e,n){if(this._properties.size===0){Object.assign(e,n);return}const i=this._createAnimations(e,n);if(i.length)return Tt.add(this._chart,i),!0}}function ak(t,e){const n=[],i=Object.keys(e);for(let r=0;r<i.length;r++){const s=t[i[r]];s&&s.active()&&n.push(s.wait())}return Promise.all(n)}function lk(t,e){if(!e)return;let n=t.options;if(!n){t.options=e;return}return n.$shared&&(t.options=n=Object.assign({},n,{$shared:!1,$animations:{}})),n}function jd(t,e){const n=t&&t.options||{},i=n.reverse,r=n.min===void 0?e:0,s=n.max===void 0?e:0;return{start:i?s:r,end:i?r:s}}function uk(t,e,n){if(n===!1)return!1;const i=jd(t,n),r=jd(e,n);return{top:r.end,right:i.end,bottom:r.start,left:i.start}}function ck(t){let e,n,i,r;return U(t)?(e=t.top,n=t.right,i=t.bottom,r=t.left):e=n=i=r=t,{top:e,right:n,bottom:i,left:r,disabled:t===!1}}function Im(t,e){const n=[],i=t._getSortedDatasetMetas(e);let r,s;for(r=0,s=i.length;r<s;++r)n.push(i[r].index);return n}function Nd(t,e,n,i={}){const r=t.keys,s=i.mode==="single";let o,a,l,u;if(e!==null){for(o=0,a=r.length;o<a;++o){if(l=+r[o],l===n){if(i.all)continue;break}u=t.values[l],ve(u)&&(s||e===0||Ai(e)===Ai(u))&&(e+=u)}return e}}function hk(t,e){const{iScale:n,vScale:i}=e,r=n.axis==="x"?"x":"y",s=i.axis==="x"?"x":"y",o=Object.keys(t),a=new Array(o.length);let l,u,c;for(l=0,u=o.length;l<u;++l)c=o[l],a[l]={[r]:c,[s]:t[c]};return a}function zd(t,e){const n=t&&t.options.stacked;return n||n===void 0&&e.stack!==void 0}function dk(t,e,n){return`${t.id}.${e.id}.${n.stack||n.type}`}function fk(t){const{min:e,max:n,minDefined:i,maxDefined:r}=t.getUserBounds();return{min:i?e:Number.NEGATIVE_INFINITY,max:r?n:Number.POSITIVE_INFINITY}}function pk(t,e,n){const i=t[e]||(t[e]={});return i[n]||(i[n]={})}function Fd(t,e,n,i){for(const r of e.getMatchingVisibleMetas(i).reverse()){const s=t[r.index];if(n&&s>0||!n&&s<0)return r.index}return null}function $d(t,e){const{chart:n,_cachedMeta:i}=t,r=n._stacks||(n._stacks={}),{iScale:s,vScale:o,index:a}=i,l=s.axis,u=o.axis,c=dk(s,o,i),h=e.length;let d;for(let f=0;f<h;++f){const m=e[f],{[l]:y,[u]:v}=m,p=m._stacks||(m._stacks={});d=p[u]=pk(r,c,y),d[a]=v,d._top=Fd(d,o,!0,i.type),d._bottom=Fd(d,o,!1,i.type);const g=d._visualValues||(d._visualValues={});g[a]=v}}function tl(t,e){const n=t.scales;return Object.keys(n).filter(i=>n[i].axis===e).shift()}function gk(t,e){return xn(t,{active:!1,dataset:void 0,datasetIndex:e,index:e,mode:"default",type:"dataset"})}function mk(t,e,n){return xn(t,{active:!1,dataIndex:e,parsed:void 0,raw:void 0,element:n,index:e,mode:"default",type:"data"})}function Zi(t,e){const n=t.controller.index,i=t.vScale&&t.vScale.axis;if(i){e=e||t._parsed;for(const r of e){const s=r._stacks;if(!s||s[i]===void 0||s[i][n]===void 0)return;delete s[i][n],s[i]._visualValues!==void 0&&s[i]._visualValues[n]!==void 0&&delete s[i]._visualValues[n]}}}const nl=t=>t==="reset"||t==="none",Ud=(t,e)=>e?t:Object.assign({},t),yk=(t,e,n)=>t&&!e.hidden&&e._stacked&&{keys:Im(n,!0),values:null};class Lr{constructor(e,n){this.chart=e,this._ctx=e.ctx,this.index=n,this._cachedDataOpts={},this._cachedMeta=this.getMeta(),this._type=this._cachedMeta.type,this.options=void 0,this._parsing=!1,this._data=void 0,this._objectData=void 0,this._sharedOptions=void 0,this._drawStart=void 0,this._drawCount=void 0,this.enableOptionSharing=!1,this.supportsDecimation=!1,this.$context=void 0,this._syncList=[],this.datasetElementType=new.target.datasetElementType,this.dataElementType=new.target.dataElementType,this.initialize()}initialize(){const e=this._cachedMeta;this.configure(),this.linkScales(),e._stacked=zd(e.vScale,e),this.addElements(),this.options.fill&&!this.chart.isPluginEnabled("filler")&&console.warn("Tried to use the 'fill' option without the 'Filler' plugin enabled. Please import and register the 'Filler' plugin and make sure it is not disabled in the options")}updateIndex(e){this.index!==e&&Zi(this._cachedMeta),this.index=e}linkScales(){const e=this.chart,n=this._cachedMeta,i=this.getDataset(),r=(h,d,f,m)=>h==="x"?d:h==="r"?m:f,s=n.xAxisID=W(i.xAxisID,tl(e,"x")),o=n.yAxisID=W(i.yAxisID,tl(e,"y")),a=n.rAxisID=W(i.rAxisID,tl(e,"r")),l=n.indexAxis,u=n.iAxisID=r(l,s,o,a),c=n.vAxisID=r(l,o,s,a);n.xScale=this.getScaleForId(s),n.yScale=this.getScaleForId(o),n.rScale=this.getScaleForId(a),n.iScale=this.getScaleForId(u),n.vScale=this.getScaleForId(c)}getDataset(){return this.chart.data.datasets[this.index]}getMeta(){return this.chart.getDatasetMeta(this.index)}getScaleForId(e){return this.chart.scales[e]}_getOtherScale(e){const n=this._cachedMeta;return e===n.iScale?n.vScale:n.iScale}reset(){this._update("reset")}_destroy(){const e=this._cachedMeta;this._data&&kd(this._data,this),e._stacked&&Zi(e)}_dataCheck(){const e=this.getDataset(),n=e.data||(e.data=[]),i=this._data;if(U(n)){const r=this._cachedMeta;this._data=hk(n,r)}else if(i!==n){if(i){kd(i,this);const r=this._cachedMeta;Zi(r),r._parsed=[]}n&&Object.isExtensible(n)&&Gx(n,this),this._syncList=[],this._data=n}}addElements(){const e=this._cachedMeta;this._dataCheck(),this.datasetElementType&&(e.dataset=new this.datasetElementType)}buildOrUpdateElements(e){const n=this._cachedMeta,i=this.getDataset();let r=!1;this._dataCheck();const s=n._stacked;n._stacked=zd(n.vScale,n),n.stack!==i.stack&&(r=!0,Zi(n),n.stack=i.stack),this._resyncElements(e),(r||s!==n._stacked)&&$d(this,n._parsed)}configure(){const e=this.chart.config,n=e.datasetScopeKeys(this._type),i=e.getOptionScopes(this.getDataset(),n,!0);this.options=e.createResolver(i,this.getContext()),this._parsing=this.options.parsing,this._cachedDataOpts={}}parse(e,n){const{_cachedMeta:i,_data:r}=this,{iScale:s,_stacked:o}=i,a=s.axis;let l=e===0&&n===r.length?!0:i._sorted,u=e>0&&i._parsed[e-1],c,h,d;if(this._parsing===!1)i._parsed=r,i._sorted=!0,d=r;else{oe(r[e])?d=this.parseArrayData(i,r,e,n):U(r[e])?d=this.parseObjectData(i,r,e,n):d=this.parsePrimitiveData(i,r,e,n);const f=()=>h[a]===null||u&&h[a]<u[a];for(c=0;c<n;++c)i._parsed[c+e]=h=d[c],l&&(f()&&(l=!1),u=h);i._sorted=l}o&&$d(this,d)}parsePrimitiveData(e,n,i,r){const{iScale:s,vScale:o}=e,a=s.axis,l=o.axis,u=s.getLabels(),c=s===o,h=new Array(r);let d,f,m;for(d=0,f=r;d<f;++d)m=d+i,h[d]={[a]:c||s.parse(u[m],m),[l]:o.parse(n[m],m)};return h}parseArrayData(e,n,i,r){const{xScale:s,yScale:o}=e,a=new Array(r);let l,u,c,h;for(l=0,u=r;l<u;++l)c=l+i,h=n[c],a[l]={x:s.parse(h[0],c),y:o.parse(h[1],c)};return a}parseObjectData(e,n,i,r){const{xScale:s,yScale:o}=e,{xAxisKey:a="x",yAxisKey:l="y"}=this._parsing,u=new Array(r);let c,h,d,f;for(c=0,h=r;c<h;++c)d=c+i,f=n[d],u[c]={x:s.parse(zo(f,a),d),y:o.parse(zo(f,l),d)};return u}getParsed(e){return this._cachedMeta._parsed[e]}getDataElement(e){return this._cachedMeta.data[e]}applyStack(e,n,i){const r=this.chart,s=this._cachedMeta,o=n[e.axis],a={keys:Im(r,!0),values:n._stacks[e.axis]._visualValues};return Nd(a,o,s.index,{mode:i})}updateRangeFromParsed(e,n,i,r){const s=i[n.axis];let o=s===null?NaN:s;const a=r&&i._stacks[n.axis];r&&a&&(r.values=a,o=Nd(r,s,this._cachedMeta.index)),e.min=Math.min(e.min,o),e.max=Math.max(e.max,o)}getMinMax(e,n){const i=this._cachedMeta,r=i._parsed,s=i._sorted&&e===i.iScale,o=r.length,a=this._getOtherScale(e),l=yk(n,i,this.chart),u={min:Number.POSITIVE_INFINITY,max:Number.NEGATIVE_INFINITY},{min:c,max:h}=fk(a);let d,f;function m(){f=r[d];const y=f[a.axis];return!ve(f[e.axis])||c>y||h<y}for(d=0;d<o&&!(!m()&&(this.updateRangeFromParsed(u,e,f,l),s));++d);if(s){for(d=o-1;d>=0;--d)if(!m()){this.updateRangeFromParsed(u,e,f,l);break}}return u}getAllParsedValues(e){const n=this._cachedMeta._parsed,i=[];let r,s,o;for(r=0,s=n.length;r<s;++r)o=n[r][e.axis],ve(o)&&i.push(o);return i}getMaxOverflow(){return!1}getLabelAndValue(e){const n=this._cachedMeta,i=n.iScale,r=n.vScale,s=this.getParsed(e);return{label:i?""+i.getLabelForValue(s[i.axis]):"",value:r?""+r.getLabelForValue(s[r.axis]):""}}_update(e){const n=this._cachedMeta;this.update(e||"default"),n._clip=ck(W(this.options.clip,uk(n.xScale,n.yScale,this.getMaxOverflow())))}update(e){}draw(){const e=this._ctx,n=this.chart,i=this._cachedMeta,r=i.data||[],s=n.chartArea,o=[],a=this._drawStart||0,l=this._drawCount||r.length-a,u=this.options.drawActiveElementsOnTop;let c;for(i.dataset&&i.dataset.draw(e,s,a,l),c=a;c<a+l;++c){const h=r[c];h.hidden||(h.active&&u?o.push(h):h.draw(e,s))}for(c=0;c<o.length;++c)o[c].draw(e,s)}getStyle(e,n){const i=n?"active":"default";return e===void 0&&this._cachedMeta.dataset?this.resolveDatasetElementOptions(i):this.resolveDataElementOptions(e||0,i)}getContext(e,n,i){const r=this.getDataset();let s;if(e>=0&&e<this._cachedMeta.data.length){const o=this._cachedMeta.data[e];s=o.$context||(o.$context=mk(this.getContext(),e,o)),s.parsed=this.getParsed(e),s.raw=r.data[e],s.index=s.dataIndex=e}else s=this.$context||(this.$context=gk(this.chart.getContext(),this.index)),s.dataset=r,s.index=s.datasetIndex=this.index;return s.active=!!n,s.mode=i,s}resolveDatasetElementOptions(e){return this._resolveElementOptions(this.datasetElementType.id,e)}resolveDataElementOptions(e,n){return this._resolveElementOptions(this.dataElementType.id,n,e)}_resolveElementOptions(e,n="default",i){const r=n==="active",s=this._cachedDataOpts,o=e+"-"+n,a=s[o],l=this.enableOptionSharing&&Fo(i);if(a)return Ud(a,l);const u=this.chart.config,c=u.datasetElementScopeKeys(this._type,e),h=r?[`${e}Hover`,"hover",e,""]:[e,""],d=u.getOptionScopes(this.getDataset(),c),f=Object.keys(ue.elements[e]),m=()=>this.getContext(i,r,n),y=u.resolveNamedOptions(d,f,m,h);return y.$shared&&(y.$shared=l,s[o]=Object.freeze(Ud(y,l))),y}_resolveAnimations(e,n,i){const r=this.chart,s=this._cachedDataOpts,o=`animation-${n}`,a=s[o];if(a)return a;let l;if(r.options.animation!==!1){const c=this.chart.config,h=c.datasetAnimationScopeKeys(this._type,n),d=c.getOptionScopes(this.getDataset(),h);l=c.createResolver(d,this.getContext(e,i,n))}const u=new Rm(r,l&&l.animations);return l&&l._cacheable&&(s[o]=Object.freeze(u)),u}getSharedOptions(e){if(e.$shared)return this._sharedOptions||(this._sharedOptions=Object.assign({},e))}includeOptions(e,n){return!n||nl(e)||this.chart._animationsDisabled}_getSharedOptions(e,n){const i=this.resolveDataElementOptions(e,n),r=this._sharedOptions,s=this.getSharedOptions(i),o=this.includeOptions(n,s)||s!==r;return this.updateSharedOptions(s,n,i),{sharedOptions:s,includeOptions:o}}updateElement(e,n,i,r){nl(r)?Object.assign(e,i):this._resolveAnimations(n,r).update(e,i)}updateSharedOptions(e,n,i){e&&!nl(n)&&this._resolveAnimations(void 0,n).update(e,i)}_setStyle(e,n,i,r){e.active=r;const s=this.getStyle(n,r);this._resolveAnimations(n,i,r).update(e,{options:!r&&this.getSharedOptions(s)||s})}removeHoverStyle(e,n,i){this._setStyle(e,i,"active",!1)}setHoverStyle(e,n,i){this._setStyle(e,i,"active",!0)}_removeDatasetHoverStyle(){const e=this._cachedMeta.dataset;e&&this._setStyle(e,void 0,"active",!1)}_setDatasetHoverStyle(){const e=this._cachedMeta.dataset;e&&this._setStyle(e,void 0,"active",!0)}_resyncElements(e){const n=this._data,i=this._cachedMeta.data;for(const[a,l,u]of this._syncList)this[a](l,u);this._syncList=[];const r=i.length,s=n.length,o=Math.min(s,r);o&&this.parse(0,o),s>r?this._insertElements(r,s-r,e):s<r&&this._removeElements(s,r-s)}_insertElements(e,n,i=!0){const r=this._cachedMeta,s=r.data,o=e+n;let a;const l=u=>{for(u.length+=n,a=u.length-1;a>=o;a--)u[a]=u[a-n]};for(l(s),a=e;a<o;++a)s[a]=new this.dataElementType;this._parsing&&l(r._parsed),this.parse(e,n),i&&this.updateElements(s,e,n,"reset")}updateElements(e,n,i,r){}_removeElements(e,n){const i=this._cachedMeta;if(this._parsing){const r=i._parsed.splice(e,n);i._stacked&&Zi(i,r)}i.data.splice(e,n)}_sync(e){if(this._parsing)this._syncList.push(e);else{const[n,i,r]=e;this[n](i,r)}this.chart._dataChanges.push([this.index,...e])}_onDataPush(){const e=arguments.length;this._sync(["_insertElements",this.getDataset().data.length-e,e])}_onDataPop(){this._sync(["_removeElements",this._cachedMeta.data.length-1,1])}_onDataShift(){this._sync(["_removeElements",0,1])}_onDataSplice(e,n){n&&this._sync(["_removeElements",e,n]);const i=arguments.length-2;i&&this._sync(["_insertElements",e,i])}_onDataUnshift(){this._sync(["_insertElements",0,arguments.length])}}I(Lr,"defaults",{}),I(Lr,"datasetElementType",null),I(Lr,"dataElementType",null);class oo extends Lr{initialize(){this.enableOptionSharing=!0,this.supportsDecimation=!0,super.initialize()}update(e){const n=this._cachedMeta,{dataset:i,data:r=[],_dataset:s}=n,o=this.chart._animationsDisabled;let{start:a,count:l}=Xx(n,r,o);this._drawStart=a,this._drawCount=l,Jx(n)&&(a=0,l=r.length),i._chart=this.chart,i._datasetIndex=this.index,i._decimated=!!s._decimated,i.points=r;const u=this.resolveDatasetElementOptions(e);this.options.showLine||(u.borderWidth=0),u.segment=this.options.segment,this.updateElement(i,void 0,{animated:!o,options:u},e),this.updateElements(r,a,l,e)}updateElements(e,n,i,r){const s=r==="reset",{iScale:o,vScale:a,_stacked:l,_dataset:u}=this._cachedMeta,{sharedOptions:c,includeOptions:h}=this._getSharedOptions(n,r),d=o.axis,f=a.axis,{spanGaps:m,segment:y}=this.options,v=Zr(m)?m:Number.POSITIVE_INFINITY,p=this.chart._animationsDisabled||s||r==="none",g=n+i,_=e.length;let w=n>0&&this.getParsed(n-1);for(let x=0;x<_;++x){const b=e[x],k=p?b:{};if(x<n||x>=g){k.skip=!0;continue}const S=this.getParsed(x),M=J(S[f]),L=k[d]=o.getPixelForValue(S[d],x),D=k[f]=s||M?a.getBasePixel():a.getPixelForValue(l?this.applyStack(a,S,l):S[f],x);k.skip=isNaN(L)||isNaN(D)||M,k.stop=x>0&&Math.abs(S[d]-w[d])>v,y&&(k.parsed=S,k.raw=u.data[x]),h&&(k.options=c||this.resolveDataElementOptions(x,b.active?"active":r)),p||this.updateElement(b,x,k,r),w=S}}getMaxOverflow(){const e=this._cachedMeta,n=e.dataset,i=n.options&&n.options.borderWidth||0,r=e.data||[];if(!r.length)return i;const s=r[0].size(this.resolveDataElementOptions(0)),o=r[r.length-1].size(this.resolveDataElementOptions(r.length-1));return Math.max(i,s,o)/2}draw(){const e=this._cachedMeta;e.dataset.updateControlPoints(this.chart.chartArea,e.iScale.axis),super.draw()}}I(oo,"id","line"),I(oo,"defaults",{datasetElementType:"line",dataElementType:"point",showLine:!0,spanGaps:!1}),I(oo,"overrides",{scales:{_index_:{type:"category"},_value_:{type:"linear"}}});function En(){throw new Error("This method is not implemented: Check that a complete date adapter is provided.")}class Ic{constructor(e){I(this,"options");this.options=e||{}}static override(e){Object.assign(Ic.prototype,e)}init(){}formats(){return En()}parse(){return En()}format(){return En()}add(){return En()}diff(){return En()}startOf(){return En()}endOf(){return En()}}var vk={_date:Ic};function _k(t,e,n,i){const{controller:r,data:s,_sorted:o}=t,a=r._cachedMeta.iScale;if(a&&e===a.axis&&e!=="r"&&o&&s.length){const l=a._reversePixels?Kx:Nn;if(i){if(r._sharedOptions){const u=s[0],c=typeof u.getRange=="function"&&u.getRange(e);if(c){const h=l(s,e,n-c),d=l(s,e,n+c);return{lo:h.lo,hi:d.hi}}}}else return l(s,e,n)}return{lo:0,hi:s.length-1}}function cs(t,e,n,i,r){const s=t.getSortedVisibleDatasetMetas(),o=n[e];for(let a=0,l=s.length;a<l;++a){const{index:u,data:c}=s[a],{lo:h,hi:d}=_k(s[a],e,o,r);for(let f=h;f<=d;++f){const m=c[f];m.skip||i(m,u,f)}}}function wk(t){const e=t.indexOf("x")!==-1,n=t.indexOf("y")!==-1;return function(i,r){const s=e?Math.abs(i.x-r.x):0,o=n?Math.abs(i.y-r.y):0;return Math.sqrt(Math.pow(s,2)+Math.pow(o,2))}}function il(t,e,n,i,r){const s=[];return!r&&!t.isPointInArea(e)||cs(t,n,e,function(a,l,u){!r&&!Dt(a,t.chartArea,0)||a.inRange(e.x,e.y,i)&&s.push({element:a,datasetIndex:l,index:u})},!0),s}function xk(t,e,n,i){let r=[];function s(o,a,l){const{startAngle:u,endAngle:c}=o.getProps(["startAngle","endAngle"],i),{angle:h}=Bx(o,{x:e.x,y:e.y});ym(h,u,c)&&r.push({element:o,datasetIndex:a,index:l})}return cs(t,n,e,s),r}function kk(t,e,n,i,r,s){let o=[];const a=wk(n);let l=Number.POSITIVE_INFINITY;function u(c,h,d){const f=c.inRange(e.x,e.y,r);if(i&&!f)return;const m=c.getCenterPoint(r);if(!(!!s||t.isPointInArea(m))&&!f)return;const v=a(e,m);v<l?(o=[{element:c,datasetIndex:h,index:d}],l=v):v===l&&o.push({element:c,datasetIndex:h,index:d})}return cs(t,n,e,u),o}function rl(t,e,n,i,r,s){return!s&&!t.isPointInArea(e)?[]:n==="r"&&!i?xk(t,e,n,r):kk(t,e,n,i,r,s)}function Bd(t,e,n,i,r){const s=[],o=n==="x"?"inXRange":"inYRange";let a=!1;return cs(t,n,e,(l,u,c)=>{l[o](e[n],r)&&(s.push({element:l,datasetIndex:u,index:c}),a=a||l.inRange(e.x,e.y,r))}),i&&!a?[]:s}var bk={evaluateInteractionItems:cs,modes:{index(t,e,n,i){const r=Mn(e,t),s=n.axis||"x",o=n.includeInvisible||!1,a=n.intersect?il(t,r,s,i,o):rl(t,r,s,!1,i,o),l=[];return a.length?(t.getSortedVisibleDatasetMetas().forEach(u=>{const c=a[0].index,h=u.data[c];h&&!h.skip&&l.push({element:h,datasetIndex:u.index,index:c})}),l):[]},dataset(t,e,n,i){const r=Mn(e,t),s=n.axis||"xy",o=n.includeInvisible||!1;let a=n.intersect?il(t,r,s,i,o):rl(t,r,s,!1,i,o);if(a.length>0){const l=a[0].datasetIndex,u=t.getDatasetMeta(l).data;a=[];for(let c=0;c<u.length;++c)a.push({element:u[c],datasetIndex:l,index:c})}return a},point(t,e,n,i){const r=Mn(e,t),s=n.axis||"xy",o=n.includeInvisible||!1;return il(t,r,s,i,o)},nearest(t,e,n,i){const r=Mn(e,t),s=n.axis||"xy",o=n.includeInvisible||!1;return rl(t,r,s,n.intersect,i,o)},x(t,e,n,i){const r=Mn(e,t);return Bd(t,r,"x",n.intersect,i)},y(t,e,n,i){const r=Mn(e,t);return Bd(t,r,"y",n.intersect,i)}}};const Am=["left","top","right","bottom"];function er(t,e){return t.filter(n=>n.pos===e)}function Vd(t,e){return t.filter(n=>Am.indexOf(n.pos)===-1&&n.box.axis===e)}function tr(t,e){return t.sort((n,i)=>{const r=e?i:n,s=e?n:i;return r.weight===s.weight?r.index-s.index:r.weight-s.weight})}function Sk(t){const e=[];let n,i,r,s,o,a;for(n=0,i=(t||[]).length;n<i;++n)r=t[n],{position:s,options:{stack:o,stackWeight:a=1}}=r,e.push({index:n,box:r,pos:s,horizontal:r.isHorizontal(),weight:r.weight,stack:o&&s+o,stackWeight:a});return e}function Ck(t){const e={};for(const n of t){const{stack:i,pos:r,stackWeight:s}=n;if(!i||!Am.includes(r))continue;const o=e[i]||(e[i]={count:0,placed:0,weight:0,size:0});o.count++,o.weight+=s}return e}function Ek(t,e){const n=Ck(t),{vBoxMaxWidth:i,hBoxMaxHeight:r}=e;let s,o,a;for(s=0,o=t.length;s<o;++s){a=t[s];const{fullSize:l}=a.box,u=n[a.stack],c=u&&a.stackWeight/u.weight;a.horizontal?(a.width=c?c*i:l&&e.availableWidth,a.height=r):(a.width=i,a.height=c?c*r:l&&e.availableHeight)}return n}function Pk(t){const e=Sk(t),n=tr(e.filter(u=>u.box.fullSize),!0),i=tr(er(e,"left"),!0),r=tr(er(e,"right")),s=tr(er(e,"top"),!0),o=tr(er(e,"bottom")),a=Vd(e,"x"),l=Vd(e,"y");return{fullSize:n,leftAndTop:i.concat(s),rightAndBottom:r.concat(l).concat(o).concat(a),chartArea:er(e,"chartArea"),vertical:i.concat(r).concat(l),horizontal:s.concat(o).concat(a)}}function Hd(t,e,n,i){return Math.max(t[n],e[n])+Math.max(t[i],e[i])}function Dm(t,e){t.top=Math.max(t.top,e.top),t.left=Math.max(t.left,e.left),t.bottom=Math.max(t.bottom,e.bottom),t.right=Math.max(t.right,e.right)}function Tk(t,e,n,i){const{pos:r,box:s}=n,o=t.maxPadding;if(!U(r)){n.size&&(t[r]-=n.size);const h=i[n.stack]||{size:0,count:1};h.size=Math.max(h.size,n.horizontal?s.height:s.width),n.size=h.size/h.count,t[r]+=n.size}s.getPadding&&Dm(o,s.getPadding());const a=Math.max(0,e.outerWidth-Hd(o,t,"left","right")),l=Math.max(0,e.outerHeight-Hd(o,t,"top","bottom")),u=a!==t.w,c=l!==t.h;return t.w=a,t.h=l,n.horizontal?{same:u,other:c}:{same:c,other:u}}function Ok(t){const e=t.maxPadding;function n(i){const r=Math.max(e[i]-t[i],0);return t[i]+=r,r}t.y+=n("top"),t.x+=n("left"),n("right"),n("bottom")}function Lk(t,e){const n=e.maxPadding;function i(r){const s={left:0,top:0,right:0,bottom:0};return r.forEach(o=>{s[o]=Math.max(e[o],n[o])}),s}return i(t?["left","right"]:["top","bottom"])}function cr(t,e,n,i){const r=[];let s,o,a,l,u,c;for(s=0,o=t.length,u=0;s<o;++s){a=t[s],l=a.box,l.update(a.width||e.w,a.height||e.h,Lk(a.horizontal,e));const{same:h,other:d}=Tk(e,n,a,i);u|=h&&r.length,c=c||d,l.fullSize||r.push(a)}return u&&cr(r,e,n,i)||c}function Fs(t,e,n,i,r){t.top=n,t.left=e,t.right=e+i,t.bottom=n+r,t.width=i,t.height=r}function Wd(t,e,n,i){const r=n.padding;let{x:s,y:o}=e;for(const a of t){const l=a.box,u=i[a.stack]||{count:1,placed:0,weight:1},c=a.stackWeight/u.weight||1;if(a.horizontal){const h=e.w*c,d=u.size||l.height;Fo(u.start)&&(o=u.start),l.fullSize?Fs(l,r.left,o,n.outerWidth-r.right-r.left,d):Fs(l,e.left+u.placed,o,h,d),u.start=o,u.placed+=h,o=l.bottom}else{const h=e.h*c,d=u.size||l.width;Fo(u.start)&&(s=u.start),l.fullSize?Fs(l,s,r.top,d,n.outerHeight-r.bottom-r.top):Fs(l,s,e.top+u.placed,d,h),u.start=s,u.placed+=h,s=l.right}}e.x=s,e.y=o}var rn={addBox(t,e){t.boxes||(t.boxes=[]),e.fullSize=e.fullSize||!1,e.position=e.position||"top",e.weight=e.weight||0,e._layers=e._layers||function(){return[{z:0,draw(n){e.draw(n)}}]},t.boxes.push(e)},removeBox(t,e){const n=t.boxes?t.boxes.indexOf(e):-1;n!==-1&&t.boxes.splice(n,1)},configure(t,e,n){e.fullSize=n.fullSize,e.position=n.position,e.weight=n.weight},update(t,e,n,i){if(!t)return;const r=qe(t.options.layout.padding),s=Math.max(e-r.width,0),o=Math.max(n-r.height,0),a=Pk(t.boxes),l=a.vertical,u=a.horizontal;V(t.boxes,y=>{typeof y.beforeLayout=="function"&&y.beforeLayout()});const c=l.reduce((y,v)=>v.box.options&&v.box.options.display===!1?y:y+1,0)||1,h=Object.freeze({outerWidth:e,outerHeight:n,padding:r,availableWidth:s,availableHeight:o,vBoxMaxWidth:s/2/c,hBoxMaxHeight:o/2}),d=Object.assign({},r);Dm(d,qe(i));const f=Object.assign({maxPadding:d,w:s,h:o,x:r.left,y:r.top},r),m=Ek(l.concat(u),h);cr(a.fullSize,f,h,m),cr(l,f,h,m),cr(u,f,h,m)&&cr(l,f,h,m),Ok(f),Wd(a.leftAndTop,f,h,m),f.x+=f.w,f.y+=f.h,Wd(a.rightAndBottom,f,h,m),t.chartArea={left:f.left,top:f.top,right:f.left+f.w,bottom:f.top+f.h,height:f.h,width:f.w},V(a.chartArea,y=>{const v=y.box;Object.assign(v,t.chartArea),v.update(f.w,f.h,{left:0,top:0,right:0,bottom:0})})}};class jm{acquireContext(e,n){}releaseContext(e){return!1}addEventListener(e,n,i){}removeEventListener(e,n,i){}getDevicePixelRatio(){return 1}getMaximumSize(e,n,i,r){return n=Math.max(0,n||e.width),i=i||e.height,{width:n,height:Math.max(0,r?Math.floor(n/r):i)}}isAttached(e){return!0}updateConfig(e){}}class Mk extends jm{acquireContext(e){return e&&e.getContext&&e.getContext("2d")||null}updateConfig(e){e.options.animation=!1}}const ao="$chartjs",Rk={touchstart:"mousedown",touchmove:"mousemove",touchend:"mouseup",pointerenter:"mouseenter",pointerdown:"mousedown",pointermove:"mousemove",pointerup:"mouseup",pointerleave:"mouseout",pointerout:"mouseout"},Kd=t=>t===null||t==="";function Ik(t,e){const n=t.style,i=t.getAttribute("height"),r=t.getAttribute("width");if(t[ao]={initial:{height:i,width:r,style:{display:n.display,height:n.height,width:n.width}}},n.display=n.display||"block",n.boxSizing=n.boxSizing||"border-box",Kd(r)){const s=Md(t,"width");s!==void 0&&(t.width=s)}if(Kd(i))if(t.style.height==="")t.height=t.width/(e||2);else{const s=Md(t,"height");s!==void 0&&(t.height=s)}return t}const Nm=V1?{passive:!0}:!1;function Ak(t,e,n){t&&t.addEventListener(e,n,Nm)}function Dk(t,e,n){t&&t.canvas&&t.canvas.removeEventListener(e,n,Nm)}function jk(t,e){const n=Rk[t.type]||t.type,{x:i,y:r}=Mn(t,e);return{type:n,chart:e,native:t,x:i!==void 0?i:null,y:r!==void 0?r:null}}function Vo(t,e){for(const n of t)if(n===e||n.contains(e))return!0}function Nk(t,e,n){const i=t.canvas,r=new MutationObserver(s=>{let o=!1;for(const a of s)o=o||Vo(a.addedNodes,i),o=o&&!Vo(a.removedNodes,i);o&&n()});return r.observe(document,{childList:!0,subtree:!0}),r}function zk(t,e,n){const i=t.canvas,r=new MutationObserver(s=>{let o=!1;for(const a of s)o=o||Vo(a.removedNodes,i),o=o&&!Vo(a.addedNodes,i);o&&n()});return r.observe(document,{childList:!0,subtree:!0}),r}const ts=new Map;let Yd=0;function zm(){const t=window.devicePixelRatio;t!==Yd&&(Yd=t,ts.forEach((e,n)=>{n.currentDevicePixelRatio!==t&&e()}))}function Fk(t,e){ts.size||window.addEventListener("resize",zm),ts.set(t,e)}function $k(t){ts.delete(t),ts.size||window.removeEventListener("resize",zm)}function Uk(t,e,n){const i=t.canvas,r=i&&Rc(i);if(!r)return;const s=wm((a,l)=>{const u=r.clientWidth;n(a,l),u<r.clientWidth&&n()},window),o=new ResizeObserver(a=>{const l=a[0],u=l.contentRect.width,c=l.contentRect.height;u===0&&c===0||s(u,c)});return o.observe(r),Fk(t,s),o}function sl(t,e,n){n&&n.disconnect(),e==="resize"&&$k(t)}function Bk(t,e,n){const i=t.canvas,r=wm(s=>{t.ctx!==null&&n(jk(s,t))},t);return Ak(i,e,r),r}class Vk extends jm{acquireContext(e,n){const i=e&&e.getContext&&e.getContext("2d");return i&&i.canvas===e?(Ik(e,n),i):null}releaseContext(e){const n=e.canvas;if(!n[ao])return!1;const i=n[ao].initial;["height","width"].forEach(s=>{const o=i[s];J(o)?n.removeAttribute(s):n.setAttribute(s,o)});const r=i.style||{};return Object.keys(r).forEach(s=>{n.style[s]=r[s]}),n.width=n.width,delete n[ao],!0}addEventListener(e,n,i){this.removeEventListener(e,n);const r=e.$proxies||(e.$proxies={}),o={attach:Nk,detach:zk,resize:Uk}[n]||Bk;r[n]=o(e,n,i)}removeEventListener(e,n){const i=e.$proxies||(e.$proxies={}),r=i[n];if(!r)return;({attach:sl,detach:sl,resize:sl}[n]||Dk)(e,n,r),i[n]=void 0}getDevicePixelRatio(){return window.devicePixelRatio}getMaximumSize(e,n,i,r){return B1(e,n,i,r)}isAttached(e){const n=e&&Rc(e);return!!(n&&n.isConnected)}}function Hk(t){return!Mc()||typeof OffscreenCanvas<"u"&&t instanceof OffscreenCanvas?Mk:Vk}class yn{constructor(){I(this,"x");I(this,"y");I(this,"active",!1);I(this,"options");I(this,"$animations")}tooltipPosition(e){const{x:n,y:i}=this.getProps(["x","y"],e);return{x:n,y:i}}hasValue(){return Zr(this.x)&&Zr(this.y)}getProps(e,n){const i=this.$animations;if(!n||!i)return this;const r={};return e.forEach(s=>{r[s]=i[s]&&i[s].active()?i[s]._to:this[s]}),r}}I(yn,"defaults",{}),I(yn,"defaultRoutes");function Wk(t,e){const n=t.options.ticks,i=Kk(t),r=Math.min(n.maxTicksLimit||i,i),s=n.major.enabled?Gk(e):[],o=s.length,a=s[0],l=s[o-1],u=[];if(o>r)return qk(e,u,s,o/r),u;const c=Yk(s,e,r);if(o>0){let h,d;const f=o>1?Math.round((l-a)/(o-1)):null;for($s(e,u,c,J(f)?0:a-f,a),h=0,d=o-1;h<d;h++)$s(e,u,c,s[h],s[h+1]);return $s(e,u,c,l,J(f)?e.length:l+f),u}return $s(e,u,c),u}function Kk(t){const e=t.options.offset,n=t._tickSize(),i=t._length/n+(e?0:1),r=t._maxLength/n;return Math.floor(Math.min(i,r))}function Yk(t,e,n){const i=Qk(t),r=e.length/n;if(!i)return Math.max(r,1);const s=$x(i);for(let o=0,a=s.length-1;o<a;o++){const l=s[o];if(l>r)return l}return Math.max(r,1)}function Gk(t){const e=[];let n,i;for(n=0,i=t.length;n<i;n++)t[n].major&&e.push(n);return e}function qk(t,e,n,i){let r=0,s=n[0],o;for(i=Math.ceil(i),o=0;o<t.length;o++)o===s&&(e.push(t[o]),r++,s=n[r*i])}function $s(t,e,n,i,r){const s=W(i,0),o=Math.min(W(r,t.length),t.length);let a=0,l,u,c;for(n=Math.ceil(n),r&&(l=r-i,n=l/Math.floor(l/n)),c=s;c<0;)a++,c=Math.round(s+a*n);for(u=Math.max(s,0);u<o;u++)u===c&&(e.push(t[u]),a++,c=Math.round(s+a*n))}function Qk(t){const e=t.length;let n,i;if(e<2)return!1;for(i=t[0],n=1;n<e;++n)if(t[n]-t[n-1]!==i)return!1;return i}const Xk=t=>t==="left"?"right":t==="right"?"left":t,Gd=(t,e,n)=>e==="top"||e==="left"?t[e]+n:t[e]-n,qd=(t,e)=>Math.min(e||t,t);function Qd(t,e){const n=[],i=t.length/e,r=t.length;let s=0;for(;s<r;s+=i)n.push(t[Math.floor(s)]);return n}function Jk(t,e,n){const i=t.ticks.length,r=Math.min(e,i-1),s=t._startPixel,o=t._endPixel,a=1e-6;let l=t.getPixelForTick(r),u;if(!(n&&(i===1?u=Math.max(l-s,o-l):e===0?u=(t.getPixelForTick(1)-l)/2:u=(l-t.getPixelForTick(r-1))/2,l+=r<e?u:-u,l<s-a||l>o+a)))return l}function Zk(t,e){V(t,n=>{const i=n.gc,r=i.length/2;let s;if(r>e){for(s=0;s<r;++s)delete n.data[i[s]];i.splice(0,r)}})}function nr(t){return t.drawTicks?t.tickLength:0}function Xd(t,e){if(!t.display)return 0;const n=Me(t.font,e),i=qe(t.padding);return(oe(t.text)?t.text.length:1)*n.lineHeight+i.height}function eb(t,e){return xn(t,{scale:e,type:"scale"})}function tb(t,e,n){return xn(t,{tick:n,index:e,type:"tick"})}function nb(t,e,n){let i=xm(t);return(n&&e!=="right"||!n&&e==="right")&&(i=Xk(i)),i}function ib(t,e,n,i){const{top:r,left:s,bottom:o,right:a,chart:l}=t,{chartArea:u,scales:c}=l;let h=0,d,f,m;const y=o-r,v=a-s;if(t.isHorizontal()){if(f=Er(i,s,a),U(n)){const p=Object.keys(n)[0],g=n[p];m=c[p].getPixelForValue(g)+y-e}else n==="center"?m=(u.bottom+u.top)/2+y-e:m=Gd(t,n,e);d=a-s}else{if(U(n)){const p=Object.keys(n)[0],g=n[p];f=c[p].getPixelForValue(g)-v+e}else n==="center"?f=(u.left+u.right)/2-v+e:f=Gd(t,n,e);m=Er(i,o,r),h=n==="left"?-Ke:Ke}return{titleX:f,titleY:m,maxWidth:d,rotation:h}}class Xn extends yn{constructor(e){super(),this.id=e.id,this.type=e.type,this.options=void 0,this.ctx=e.ctx,this.chart=e.chart,this.top=void 0,this.bottom=void 0,this.left=void 0,this.right=void 0,this.width=void 0,this.height=void 0,this._margins={left:0,right:0,top:0,bottom:0},this.maxWidth=void 0,this.maxHeight=void 0,this.paddingTop=void 0,this.paddingBottom=void 0,this.paddingLeft=void 0,this.paddingRight=void 0,this.axis=void 0,this.labelRotation=void 0,this.min=void 0,this.max=void 0,this._range=void 0,this.ticks=[],this._gridLineItems=null,this._labelItems=null,this._labelSizes=null,this._length=0,this._maxLength=0,this._longestTextCache={},this._startPixel=void 0,this._endPixel=void 0,this._reversePixels=!1,this._userMax=void 0,this._userMin=void 0,this._suggestedMax=void 0,this._suggestedMin=void 0,this._ticksLength=0,this._borderValue=0,this._cache={},this._dataLimitsCached=!1,this.$context=void 0}init(e){this.options=e.setContext(this.getContext()),this.axis=e.axis,this._userMin=this.parse(e.min),this._userMax=this.parse(e.max),this._suggestedMin=this.parse(e.suggestedMin),this._suggestedMax=this.parse(e.suggestedMax)}parse(e,n){return e}getUserBounds(){let{_userMin:e,_userMax:n,_suggestedMin:i,_suggestedMax:r}=this;return e=Ve(e,Number.POSITIVE_INFINITY),n=Ve(n,Number.NEGATIVE_INFINITY),i=Ve(i,Number.POSITIVE_INFINITY),r=Ve(r,Number.NEGATIVE_INFINITY),{min:Ve(e,i),max:Ve(n,r),minDefined:ve(e),maxDefined:ve(n)}}getMinMax(e){let{min:n,max:i,minDefined:r,maxDefined:s}=this.getUserBounds(),o;if(r&&s)return{min:n,max:i};const a=this.getMatchingVisibleMetas();for(let l=0,u=a.length;l<u;++l)o=a[l].controller.getMinMax(this,e),r||(n=Math.min(n,o.min)),s||(i=Math.max(i,o.max));return n=s&&n>i?i:n,i=r&&n>i?n:i,{min:Ve(n,Ve(i,n)),max:Ve(i,Ve(n,i))}}getPadding(){return{left:this.paddingLeft||0,top:this.paddingTop||0,right:this.paddingRight||0,bottom:this.paddingBottom||0}}getTicks(){return this.ticks}getLabels(){const e=this.chart.data;return this.options.labels||(this.isHorizontal()?e.xLabels:e.yLabels)||e.labels||[]}getLabelItems(e=this.chart.chartArea){return this._labelItems||(this._labelItems=this._computeLabelItems(e))}beforeLayout(){this._cache={},this._dataLimitsCached=!1}beforeUpdate(){re(this.options.beforeUpdate,[this])}update(e,n,i){const{beginAtZero:r,grace:s,ticks:o}=this.options,a=o.sampleSize;this.beforeUpdate(),this.maxWidth=e,this.maxHeight=n,this._margins=i=Object.assign({left:0,right:0,top:0,bottom:0},i),this.ticks=null,this._labelSizes=null,this._gridLineItems=null,this._labelItems=null,this.beforeSetDimensions(),this.setDimensions(),this.afterSetDimensions(),this._maxLength=this.isHorizontal()?this.width+i.left+i.right:this.height+i.top+i.bottom,this._dataLimitsCached||(this.beforeDataLimits(),this.determineDataLimits(),this.afterDataLimits(),this._range=w1(this,s,r),this._dataLimitsCached=!0),this.beforeBuildTicks(),this.ticks=this.buildTicks()||[],this.afterBuildTicks();const l=a<this.ticks.length;this._convertTicksToLabels(l?Qd(this.ticks,a):this.ticks),this.configure(),this.beforeCalculateLabelRotation(),this.calculateLabelRotation(),this.afterCalculateLabelRotation(),o.display&&(o.autoSkip||o.source==="auto")&&(this.ticks=Wk(this,this.ticks),this._labelSizes=null,this.afterAutoSkip()),l&&this._convertTicksToLabels(this.ticks),this.beforeFit(),this.fit(),this.afterFit(),this.afterUpdate()}configure(){let e=this.options.reverse,n,i;this.isHorizontal()?(n=this.left,i=this.right):(n=this.top,i=this.bottom,e=!e),this._startPixel=n,this._endPixel=i,this._reversePixels=e,this._length=i-n,this._alignToPixels=this.options.alignToPixels}afterUpdate(){re(this.options.afterUpdate,[this])}beforeSetDimensions(){re(this.options.beforeSetDimensions,[this])}setDimensions(){this.isHorizontal()?(this.width=this.maxWidth,this.left=0,this.right=this.width):(this.height=this.maxHeight,this.top=0,this.bottom=this.height),this.paddingLeft=0,this.paddingTop=0,this.paddingRight=0,this.paddingBottom=0}afterSetDimensions(){re(this.options.afterSetDimensions,[this])}_callHooks(e){this.chart.notifyPlugins(e,this.getContext()),re(this.options[e],[this])}beforeDataLimits(){this._callHooks("beforeDataLimits")}determineDataLimits(){}afterDataLimits(){this._callHooks("afterDataLimits")}beforeBuildTicks(){this._callHooks("beforeBuildTicks")}buildTicks(){return[]}afterBuildTicks(){this._callHooks("afterBuildTicks")}beforeTickToLabelConversion(){re(this.options.beforeTickToLabelConversion,[this])}generateTickLabels(e){const n=this.options.ticks;let i,r,s;for(i=0,r=e.length;i<r;i++)s=e[i],s.label=re(n.callback,[s.value,i,e],this)}afterTickToLabelConversion(){re(this.options.afterTickToLabelConversion,[this])}beforeCalculateLabelRotation(){re(this.options.beforeCalculateLabelRotation,[this])}calculateLabelRotation(){const e=this.options,n=e.ticks,i=qd(this.ticks.length,e.ticks.maxTicksLimit),r=n.minRotation||0,s=n.maxRotation;let o=r,a,l,u;if(!this._isVisible()||!n.display||r>=s||i<=1||!this.isHorizontal()){this.labelRotation=r;return}const c=this._getLabelSizes(),h=c.widest.width,d=c.highest.height,f=it(this.chart.width-h,0,this.maxWidth);a=e.offset?this.maxWidth/i:f/(i-1),h+6>a&&(a=f/(i-(e.offset?.5:1)),l=this.maxHeight-nr(e.grid)-n.padding-Xd(e.title,this.chart.options.font),u=Math.sqrt(h*h+d*d),o=Sc(Math.min(Math.asin(it((c.highest.height+6)/a,-1,1)),Math.asin(it(l/u,-1,1))-Math.asin(it(d/u,-1,1)))),o=Math.max(r,Math.min(s,o))),this.labelRotation=o}afterCalculateLabelRotation(){re(this.options.afterCalculateLabelRotation,[this])}afterAutoSkip(){}beforeFit(){re(this.options.beforeFit,[this])}fit(){const e={width:0,height:0},{chart:n,options:{ticks:i,title:r,grid:s}}=this,o=this._isVisible(),a=this.isHorizontal();if(o){const l=Xd(r,n.options.font);if(a?(e.width=this.maxWidth,e.height=nr(s)+l):(e.height=this.maxHeight,e.width=nr(s)+l),i.display&&this.ticks.length){const{first:u,last:c,widest:h,highest:d}=this._getLabelSizes(),f=i.padding*2,m=nn(this.labelRotation),y=Math.cos(m),v=Math.sin(m);if(a){const p=i.mirror?0:v*h.width+y*d.height;e.height=Math.min(this.maxHeight,e.height+p+f)}else{const p=i.mirror?0:y*h.width+v*d.height;e.width=Math.min(this.maxWidth,e.width+p+f)}this._calculatePadding(u,c,v,y)}}this._handleMargins(),a?(this.width=this._length=n.width-this._margins.left-this._margins.right,this.height=e.height):(this.width=e.width,this.height=this._length=n.height-this._margins.top-this._margins.bottom)}_calculatePadding(e,n,i,r){const{ticks:{align:s,padding:o},position:a}=this.options,l=this.labelRotation!==0,u=a!=="top"&&this.axis==="x";if(this.isHorizontal()){const c=this.getPixelForTick(0)-this.left,h=this.right-this.getPixelForTick(this.ticks.length-1);let d=0,f=0;l?u?(d=r*e.width,f=i*n.height):(d=i*e.height,f=r*n.width):s==="start"?f=n.width:s==="end"?d=e.width:s!=="inner"&&(d=e.width/2,f=n.width/2),this.paddingLeft=Math.max((d-c+o)*this.width/(this.width-c),0),this.paddingRight=Math.max((f-h+o)*this.width/(this.width-h),0)}else{let c=n.height/2,h=e.height/2;s==="start"?(c=0,h=e.height):s==="end"&&(c=n.height,h=0),this.paddingTop=c+o,this.paddingBottom=h+o}}_handleMargins(){this._margins&&(this._margins.left=Math.max(this.paddingLeft,this._margins.left),this._margins.top=Math.max(this.paddingTop,this._margins.top),this._margins.right=Math.max(this.paddingRight,this._margins.right),this._margins.bottom=Math.max(this.paddingBottom,this._margins.bottom))}afterFit(){re(this.options.afterFit,[this])}isHorizontal(){const{axis:e,position:n}=this.options;return n==="top"||n==="bottom"||e==="x"}isFullSize(){return this.options.fullSize}_convertTicksToLabels(e){this.beforeTickToLabelConversion(),this.generateTickLabels(e);let n,i;for(n=0,i=e.length;n<i;n++)J(e[n].label)&&(e.splice(n,1),i--,n--);this.afterTickToLabelConversion()}_getLabelSizes(){let e=this._labelSizes;if(!e){const n=this.options.ticks.sampleSize;let i=this.ticks;n<i.length&&(i=Qd(i,n)),this._labelSizes=e=this._computeLabelSizes(i,i.length,this.options.ticks.maxTicksLimit)}return e}_computeLabelSizes(e,n,i){const{ctx:r,_longestTextCache:s}=this,o=[],a=[],l=Math.floor(n/qd(n,i));let u=0,c=0,h,d,f,m,y,v,p,g,_,w,x;for(h=0;h<n;h+=l){if(m=e[h].label,y=this._resolveTickFontOptions(h),r.font=v=y.string,p=s[v]=s[v]||{data:{},gc:[]},g=y.lineHeight,_=w=0,!J(m)&&!oe(m))_=Uo(r,p.data,p.gc,_,m),w=g;else if(oe(m))for(d=0,f=m.length;d<f;++d)x=m[d],!J(x)&&!oe(x)&&(_=Uo(r,p.data,p.gc,_,x),w+=g);o.push(_),a.push(w),u=Math.max(_,u),c=Math.max(w,c)}Zk(s,n);const b=o.indexOf(u),k=a.indexOf(c),S=M=>({width:o[M]||0,height:a[M]||0});return{first:S(0),last:S(n-1),widest:S(b),highest:S(k),widths:o,heights:a}}getLabelForValue(e){return e}getPixelForValue(e,n){return NaN}getValueForPixel(e){}getPixelForTick(e){const n=this.ticks;return e<0||e>n.length-1?null:this.getPixelForValue(n[e].value)}getPixelForDecimal(e){this._reversePixels&&(e=1-e);const n=this._startPixel+e*this._length;return Hx(this._alignToPixels?Cn(this.chart,n,0):n)}getDecimalForPixel(e){const n=(e-this._startPixel)/this._length;return this._reversePixels?1-n:n}getBasePixel(){return this.getPixelForValue(this.getBaseValue())}getBaseValue(){const{min:e,max:n}=this;return e<0&&n<0?n:e>0&&n>0?e:0}getContext(e){const n=this.ticks||[];if(e>=0&&e<n.length){const i=n[e];return i.$context||(i.$context=tb(this.getContext(),e,i))}return this.$context||(this.$context=eb(this.chart.getContext(),this))}_tickSize(){const e=this.options.ticks,n=nn(this.labelRotation),i=Math.abs(Math.cos(n)),r=Math.abs(Math.sin(n)),s=this._getLabelSizes(),o=e.autoSkipPadding||0,a=s?s.widest.width+o:0,l=s?s.highest.height+o:0;return this.isHorizontal()?l*i>a*r?a/i:l/r:l*r<a*i?l/i:a/r}_isVisible(){const e=this.options.display;return e!=="auto"?!!e:this.getMatchingVisibleMetas().length>0}_computeGridLineItems(e){const n=this.axis,i=this.chart,r=this.options,{grid:s,position:o,border:a}=r,l=s.offset,u=this.isHorizontal(),h=this.ticks.length+(l?1:0),d=nr(s),f=[],m=a.setContext(this.getContext()),y=m.display?m.width:0,v=y/2,p=function(K){return Cn(i,K,y)};let g,_,w,x,b,k,S,M,L,D,B,ce;if(o==="top")g=p(this.bottom),k=this.bottom-d,M=g-v,D=p(e.top)+v,ce=e.bottom;else if(o==="bottom")g=p(this.top),D=e.top,ce=p(e.bottom)-v,k=g+v,M=this.top+d;else if(o==="left")g=p(this.right),b=this.right-d,S=g-v,L=p(e.left)+v,B=e.right;else if(o==="right")g=p(this.left),L=e.left,B=p(e.right)-v,b=g+v,S=this.left+d;else if(n==="x"){if(o==="center")g=p((e.top+e.bottom)/2+.5);else if(U(o)){const K=Object.keys(o)[0],me=o[K];g=p(this.chart.scales[K].getPixelForValue(me))}D=e.top,ce=e.bottom,k=g+v,M=k+d}else if(n==="y"){if(o==="center")g=p((e.left+e.right)/2);else if(U(o)){const K=Object.keys(o)[0],me=o[K];g=p(this.chart.scales[K].getPixelForValue(me))}b=g-v,S=b-d,L=e.left,B=e.right}const ae=W(r.ticks.maxTicksLimit,h),$=Math.max(1,Math.ceil(h/ae));for(_=0;_<h;_+=$){const K=this.getContext(_),me=s.setContext(K),P=a.setContext(K),R=me.lineWidth,A=me.color,Y=P.dash||[],Q=P.dashOffset,vt=me.tickWidth,Te=me.tickColor,Et=me.tickBorderDash||[],Oe=me.tickBorderDashOffset;w=Jk(this,_,l),w!==void 0&&(x=Cn(i,w,R),u?b=S=L=B=x:k=M=D=ce=x,f.push({tx1:b,ty1:k,tx2:S,ty2:M,x1:L,y1:D,x2:B,y2:ce,width:R,color:A,borderDash:Y,borderDashOffset:Q,tickWidth:vt,tickColor:Te,tickBorderDash:Et,tickBorderDashOffset:Oe}))}return this._ticksLength=h,this._borderValue=g,f}_computeLabelItems(e){const n=this.axis,i=this.options,{position:r,ticks:s}=i,o=this.isHorizontal(),a=this.ticks,{align:l,crossAlign:u,padding:c,mirror:h}=s,d=nr(i.grid),f=d+c,m=h?-c:f,y=-nn(this.labelRotation),v=[];let p,g,_,w,x,b,k,S,M,L,D,B,ce="middle";if(r==="top")b=this.bottom-m,k=this._getXAxisLabelAlignment();else if(r==="bottom")b=this.top+m,k=this._getXAxisLabelAlignment();else if(r==="left"){const $=this._getYAxisLabelAlignment(d);k=$.textAlign,x=$.x}else if(r==="right"){const $=this._getYAxisLabelAlignment(d);k=$.textAlign,x=$.x}else if(n==="x"){if(r==="center")b=(e.top+e.bottom)/2+f;else if(U(r)){const $=Object.keys(r)[0],K=r[$];b=this.chart.scales[$].getPixelForValue(K)+f}k=this._getXAxisLabelAlignment()}else if(n==="y"){if(r==="center")x=(e.left+e.right)/2-f;else if(U(r)){const $=Object.keys(r)[0],K=r[$];x=this.chart.scales[$].getPixelForValue(K)}k=this._getYAxisLabelAlignment(d).textAlign}n==="y"&&(l==="start"?ce="top":l==="end"&&(ce="bottom"));const ae=this._getLabelSizes();for(p=0,g=a.length;p<g;++p){_=a[p],w=_.label;const $=s.setContext(this.getContext(p));S=this.getPixelForTick(p)+s.labelOffset,M=this._resolveTickFontOptions(p),L=M.lineHeight,D=oe(w)?w.length:1;const K=D/2,me=$.color,P=$.textStrokeColor,R=$.textStrokeWidth;let A=k;o?(x=S,k==="inner"&&(p===g-1?A=this.options.reverse?"left":"right":p===0?A=this.options.reverse?"right":"left":A="center"),r==="top"?u==="near"||y!==0?B=-D*L+L/2:u==="center"?B=-ae.highest.height/2-K*L+L:B=-ae.highest.height+L/2:u==="near"||y!==0?B=L/2:u==="center"?B=ae.highest.height/2-K*L:B=ae.highest.height-D*L,h&&(B*=-1),y!==0&&!$.showLabelBackdrop&&(x+=L/2*Math.sin(y))):(b=S,B=(1-D)*L/2);let Y;if($.showLabelBackdrop){const Q=qe($.backdropPadding),vt=ae.heights[p],Te=ae.widths[p];let Et=B-Q.top,Oe=0-Q.left;switch(ce){case"middle":Et-=vt/2;break;case"bottom":Et-=vt;break}switch(k){case"center":Oe-=Te/2;break;case"right":Oe-=Te;break;case"inner":p===g-1?Oe-=Te:p>0&&(Oe-=Te/2);break}Y={left:Oe,top:Et,width:Te+Q.width,height:vt+Q.height,color:$.backdropColor}}v.push({label:w,font:M,textOffset:B,options:{rotation:y,color:me,strokeColor:P,strokeWidth:R,textAlign:A,textBaseline:ce,translation:[x,b],backdrop:Y}})}return v}_getXAxisLabelAlignment(){const{position:e,ticks:n}=this.options;if(-nn(this.labelRotation))return e==="top"?"left":"right";let r="center";return n.align==="start"?r="left":n.align==="end"?r="right":n.align==="inner"&&(r="inner"),r}_getYAxisLabelAlignment(e){const{position:n,ticks:{crossAlign:i,mirror:r,padding:s}}=this.options,o=this._getLabelSizes(),a=e+s,l=o.widest.width;let u,c;return n==="left"?r?(c=this.right+s,i==="near"?u="left":i==="center"?(u="center",c+=l/2):(u="right",c+=l)):(c=this.right-a,i==="near"?u="right":i==="center"?(u="center",c-=l/2):(u="left",c=this.left)):n==="right"?r?(c=this.left+s,i==="near"?u="right":i==="center"?(u="center",c-=l/2):(u="left",c-=l)):(c=this.left+a,i==="near"?u="left":i==="center"?(u="center",c+=l/2):(u="right",c=this.right)):u="right",{textAlign:u,x:c}}_computeLabelArea(){if(this.options.ticks.mirror)return;const e=this.chart,n=this.options.position;if(n==="left"||n==="right")return{top:0,left:this.left,bottom:e.height,right:this.right};if(n==="top"||n==="bottom")return{top:this.top,left:0,bottom:this.bottom,right:e.width}}drawBackground(){const{ctx:e,options:{backgroundColor:n},left:i,top:r,width:s,height:o}=this;n&&(e.save(),e.fillStyle=n,e.fillRect(i,r,s,o),e.restore())}getLineWidthForValue(e){const n=this.options.grid;if(!this._isVisible()||!n.display)return 0;const r=this.ticks.findIndex(s=>s.value===e);return r>=0?n.setContext(this.getContext(r)).lineWidth:0}drawGrid(e){const n=this.options.grid,i=this.ctx,r=this._gridLineItems||(this._gridLineItems=this._computeGridLineItems(e));let s,o;const a=(l,u,c)=>{!c.width||!c.color||(i.save(),i.lineWidth=c.width,i.strokeStyle=c.color,i.setLineDash(c.borderDash||[]),i.lineDashOffset=c.borderDashOffset,i.beginPath(),i.moveTo(l.x,l.y),i.lineTo(u.x,u.y),i.stroke(),i.restore())};if(n.display)for(s=0,o=r.length;s<o;++s){const l=r[s];n.drawOnChartArea&&a({x:l.x1,y:l.y1},{x:l.x2,y:l.y2},l),n.drawTicks&&a({x:l.tx1,y:l.ty1},{x:l.tx2,y:l.ty2},{color:l.tickColor,width:l.tickWidth,borderDash:l.tickBorderDash,borderDashOffset:l.tickBorderDashOffset})}}drawBorder(){const{chart:e,ctx:n,options:{border:i,grid:r}}=this,s=i.setContext(this.getContext()),o=i.display?s.width:0;if(!o)return;const a=r.setContext(this.getContext(0)).lineWidth,l=this._borderValue;let u,c,h,d;this.isHorizontal()?(u=Cn(e,this.left,o)-o/2,c=Cn(e,this.right,a)+a/2,h=d=l):(h=Cn(e,this.top,o)-o/2,d=Cn(e,this.bottom,a)+a/2,u=c=l),n.save(),n.lineWidth=s.width,n.strokeStyle=s.color,n.beginPath(),n.moveTo(u,h),n.lineTo(c,d),n.stroke(),n.restore()}drawLabels(e){if(!this.options.ticks.display)return;const i=this.ctx,r=this._computeLabelArea();r&&bm(i,r);const s=this.getLabelItems(e);for(const o of s){const a=o.options,l=o.font,u=o.label,c=o.textOffset;es(i,u,0,c,l,a)}r&&Sm(i)}drawTitle(){const{ctx:e,options:{position:n,title:i,reverse:r}}=this;if(!i.display)return;const s=Me(i.font),o=qe(i.padding),a=i.align;let l=s.lineHeight/2;n==="bottom"||n==="center"||U(n)?(l+=o.bottom,oe(i.text)&&(l+=s.lineHeight*(i.text.length-1))):l+=o.top;const{titleX:u,titleY:c,maxWidth:h,rotation:d}=ib(this,l,n,a);es(e,i.text,0,0,s,{color:i.color,maxWidth:h,rotation:d,textAlign:nb(a,n,r),textBaseline:"middle",translation:[u,c]})}draw(e){this._isVisible()&&(this.drawBackground(),this.drawGrid(e),this.drawBorder(),this.drawTitle(),this.drawLabels(e))}_layers(){const e=this.options,n=e.ticks&&e.ticks.z||0,i=W(e.grid&&e.grid.z,-1),r=W(e.border&&e.border.z,0);return!this._isVisible()||this.draw!==Xn.prototype.draw?[{z:n,draw:s=>{this.draw(s)}}]:[{z:i,draw:s=>{this.drawBackground(),this.drawGrid(s),this.drawTitle()}},{z:r,draw:()=>{this.drawBorder()}},{z:n,draw:s=>{this.drawLabels(s)}}]}getMatchingVisibleMetas(e){const n=this.chart.getSortedVisibleDatasetMetas(),i=this.axis+"AxisID",r=[];let s,o;for(s=0,o=n.length;s<o;++s){const a=n[s];a[i]===this.id&&(!e||a.type===e)&&r.push(a)}return r}_resolveTickFontOptions(e){const n=this.options.ticks.setContext(this.getContext(e));return Me(n.font)}_maxDigits(){const e=this._resolveTickFontOptions(0).lineHeight;return(this.isHorizontal()?this.width:this.height)/e}}class Us{constructor(e,n,i){this.type=e,this.scope=n,this.override=i,this.items=Object.create(null)}isForType(e){return Object.prototype.isPrototypeOf.call(this.type.prototype,e.prototype)}register(e){const n=Object.getPrototypeOf(e);let i;ob(n)&&(i=this.register(n));const r=this.items,s=e.id,o=this.scope+"."+s;if(!s)throw new Error("class does not have id: "+e);return s in r||(r[s]=e,rb(e,o,i),this.override&&ue.override(e.id,e.overrides)),o}get(e){return this.items[e]}unregister(e){const n=this.items,i=e.id,r=this.scope;i in n&&delete n[i],r&&i in ue[r]&&(delete ue[r][i],this.override&&delete Yn[i])}}function rb(t,e,n){const i=Jr(Object.create(null),[n?ue.get(n):{},ue.get(e),t.defaults]);ue.set(e,i),t.defaultRoutes&&sb(e,t.defaultRoutes),t.descriptors&&ue.describe(e,t.descriptors)}function sb(t,e){Object.keys(e).forEach(n=>{const i=n.split("."),r=i.pop(),s=[t].concat(i).join("."),o=e[n].split("."),a=o.pop(),l=o.join(".");ue.route(s,r,l,a)})}function ob(t){return"id"in t&&"defaults"in t}class ab{constructor(){this.controllers=new Us(Lr,"datasets",!0),this.elements=new Us(yn,"elements"),this.plugins=new Us(Object,"plugins"),this.scales=new Us(Xn,"scales"),this._typedRegistries=[this.controllers,this.scales,this.elements]}add(...e){this._each("register",e)}remove(...e){this._each("unregister",e)}addControllers(...e){this._each("register",e,this.controllers)}addElements(...e){this._each("register",e,this.elements)}addPlugins(...e){this._each("register",e,this.plugins)}addScales(...e){this._each("register",e,this.scales)}getController(e){return this._get(e,this.controllers,"controller")}getElement(e){return this._get(e,this.elements,"element")}getPlugin(e){return this._get(e,this.plugins,"plugin")}getScale(e){return this._get(e,this.scales,"scale")}removeControllers(...e){this._each("unregister",e,this.controllers)}removeElements(...e){this._each("unregister",e,this.elements)}removePlugins(...e){this._each("unregister",e,this.plugins)}removeScales(...e){this._each("unregister",e,this.scales)}_each(e,n,i){[...n].forEach(r=>{const s=i||this._getRegistryForType(r);i||s.isForType(r)||s===this.plugins&&r.id?this._exec(e,s,r):V(r,o=>{const a=i||this._getRegistryForType(o);this._exec(e,a,o)})})}_exec(e,n,i){const r=bc(e);re(i["before"+r],[],i),n[e](i),re(i["after"+r],[],i)}_getRegistryForType(e){for(let n=0;n<this._typedRegistries.length;n++){const i=this._typedRegistries[n];if(i.isForType(e))return i}return this.plugins}_get(e,n,i){const r=n.get(e);if(r===void 0)throw new Error('"'+e+'" is not a registered '+i+".");return r}}var kt=new ab;class lb{constructor(){this._init=[]}notify(e,n,i,r){n==="beforeInit"&&(this._init=this._createDescriptors(e,!0),this._notify(this._init,e,"install"));const s=r?this._descriptors(e).filter(r):this._descriptors(e),o=this._notify(s,e,n,i);return n==="afterDestroy"&&(this._notify(s,e,"stop"),this._notify(this._init,e,"uninstall")),o}_notify(e,n,i,r){r=r||{};for(const s of e){const o=s.plugin,a=o[i],l=[n,r,s.options];if(re(a,l,o)===!1&&r.cancelable)return!1}return!0}invalidate(){J(this._cache)||(this._oldCache=this._cache,this._cache=void 0)}_descriptors(e){if(this._cache)return this._cache;const n=this._cache=this._createDescriptors(e);return this._notifyStateChanges(e),n}_createDescriptors(e,n){const i=e&&e.config,r=W(i.options&&i.options.plugins,{}),s=ub(i);return r===!1&&!n?[]:hb(e,s,r,n)}_notifyStateChanges(e){const n=this._oldCache||[],i=this._cache,r=(s,o)=>s.filter(a=>!o.some(l=>a.plugin.id===l.plugin.id));this._notify(r(n,i),e,"stop"),this._notify(r(i,n),e,"start")}}function ub(t){const e={},n=[],i=Object.keys(kt.plugins.items);for(let s=0;s<i.length;s++)n.push(kt.getPlugin(i[s]));const r=t.plugins||[];for(let s=0;s<r.length;s++){const o=r[s];n.indexOf(o)===-1&&(n.push(o),e[o.id]=!0)}return{plugins:n,localIds:e}}function cb(t,e){return!e&&t===!1?null:t===!0?{}:t}function hb(t,{plugins:e,localIds:n},i,r){const s=[],o=t.getContext();for(const a of e){const l=a.id,u=cb(i[l],r);u!==null&&s.push({plugin:a,options:db(t.config,{plugin:a,local:n[l]},u,o)})}return s}function db(t,{plugin:e,local:n},i,r){const s=t.pluginScopeKeys(e),o=t.getOptionScopes(i,s);return n&&e.defaults&&o.push(e.defaults),t.createResolver(o,r,[""],{scriptable:!1,indexable:!1,allKeys:!0})}function du(t,e){const n=ue.datasets[t]||{};return((e.datasets||{})[t]||{}).indexAxis||e.indexAxis||n.indexAxis||"x"}function fb(t,e){let n=t;return t==="_index_"?n=e:t==="_value_"&&(n=e==="x"?"y":"x"),n}function pb(t,e){return t===e?"_index_":"_value_"}function Jd(t){if(t==="x"||t==="y"||t==="r")return t}function gb(t){if(t==="top"||t==="bottom")return"x";if(t==="left"||t==="right")return"y"}function fu(t,...e){if(Jd(t))return t;for(const n of e){const i=n.axis||gb(n.position)||t.length>1&&Jd(t[0].toLowerCase());if(i)return i}throw new Error(`Cannot determine type of '${t}' axis. Please provide 'axis' or 'position' option.`)}function Zd(t,e,n){if(n[e+"AxisID"]===t)return{axis:e}}function mb(t,e){if(e.data&&e.data.datasets){const n=e.data.datasets.filter(i=>i.xAxisID===t||i.yAxisID===t);if(n.length)return Zd(t,"x",n[0])||Zd(t,"y",n[0])}return{}}function yb(t,e){const n=Yn[t.type]||{scales:{}},i=e.scales||{},r=du(t.type,e),s=Object.create(null);return Object.keys(i).forEach(o=>{const a=i[o];if(!U(a))return console.error(`Invalid scale configuration for scale: ${o}`);if(a._proxy)return console.warn(`Ignoring resolver passed as options for scale: ${o}`);const l=fu(o,a,mb(o,t),ue.scales[a.type]),u=pb(l,r),c=n.scales||{};s[o]=Sr(Object.create(null),[{axis:l},a,c[l],c[u]])}),t.data.datasets.forEach(o=>{const a=o.type||t.type,l=o.indexAxis||du(a,e),c=(Yn[a]||{}).scales||{};Object.keys(c).forEach(h=>{const d=fb(h,l),f=o[d+"AxisID"]||d;s[f]=s[f]||Object.create(null),Sr(s[f],[{axis:d},i[f],c[h]])})}),Object.keys(s).forEach(o=>{const a=s[o];Sr(a,[ue.scales[a.type],ue.scale])}),s}function Fm(t){const e=t.options||(t.options={});e.plugins=W(e.plugins,{}),e.scales=yb(t,e)}function $m(t){return t=t||{},t.datasets=t.datasets||[],t.labels=t.labels||[],t}function vb(t){return t=t||{},t.data=$m(t.data),Fm(t),t}const ef=new Map,Um=new Set;function Bs(t,e){let n=ef.get(t);return n||(n=e(),ef.set(t,n),Um.add(n)),n}const ir=(t,e,n)=>{const i=zo(e,n);i!==void 0&&t.add(i)};class _b{constructor(e){this._config=vb(e),this._scopeCache=new Map,this._resolverCache=new Map}get platform(){return this._config.platform}get type(){return this._config.type}set type(e){this._config.type=e}get data(){return this._config.data}set data(e){this._config.data=$m(e)}get options(){return this._config.options}set options(e){this._config.options=e}get plugins(){return this._config.plugins}update(){const e=this._config;this.clearCache(),Fm(e)}clearCache(){this._scopeCache.clear(),this._resolverCache.clear()}datasetScopeKeys(e){return Bs(e,()=>[[`datasets.${e}`,""]])}datasetAnimationScopeKeys(e,n){return Bs(`${e}.transition.${n}`,()=>[[`datasets.${e}.transitions.${n}`,`transitions.${n}`],[`datasets.${e}`,""]])}datasetElementScopeKeys(e,n){return Bs(`${e}-${n}`,()=>[[`datasets.${e}.elements.${n}`,`datasets.${e}`,`elements.${n}`,""]])}pluginScopeKeys(e){const n=e.id,i=this.type;return Bs(`${i}-plugin-${n}`,()=>[[`plugins.${n}`,...e.additionalOptionScopes||[]]])}_cachedScopes(e,n){const i=this._scopeCache;let r=i.get(e);return(!r||n)&&(r=new Map,i.set(e,r)),r}getOptionScopes(e,n,i){const{options:r,type:s}=this,o=this._cachedScopes(e,i),a=o.get(n);if(a)return a;const l=new Set;n.forEach(c=>{e&&(l.add(e),c.forEach(h=>ir(l,e,h))),c.forEach(h=>ir(l,r,h)),c.forEach(h=>ir(l,Yn[s]||{},h)),c.forEach(h=>ir(l,ue,h)),c.forEach(h=>ir(l,uu,h))});const u=Array.from(l);return u.length===0&&u.push(Object.create(null)),Um.has(n)&&o.set(n,u),u}chartOptionScopes(){const{options:e,type:n}=this;return[e,Yn[n]||{},ue.datasets[n]||{},{type:n},ue,uu]}resolveNamedOptions(e,n,i,r=[""]){const s={$shared:!0},{resolver:o,subPrefixes:a}=tf(this._resolverCache,e,r);let l=o;if(xb(o,n)){s.$shared=!1,i=mn(i)?i():i;const u=this.createResolver(e,i,a);l=Di(o,i,u)}for(const u of n)s[u]=l[u];return s}createResolver(e,n,i=[""],r){const{resolver:s}=tf(this._resolverCache,e,i);return U(n)?Di(s,n,void 0,r):s}}function tf(t,e,n){let i=t.get(e);i||(i=new Map,t.set(e,i));const r=n.join();let s=i.get(r);return s||(s={resolver:Tc(e,n),subPrefixes:n.filter(a=>!a.toLowerCase().includes("hover"))},i.set(r,s)),s}const wb=t=>U(t)&&Object.getOwnPropertyNames(t).some(e=>mn(t[e]));function xb(t,e){const{isScriptable:n,isIndexable:i}=Em(t);for(const r of e){const s=n(r),o=i(r),a=(o||s)&&t[r];if(s&&(mn(a)||wb(a))||o&&oe(a))return!0}return!1}var kb="4.4.3";const bb=["top","bottom","left","right","chartArea"];function nf(t,e){return t==="top"||t==="bottom"||bb.indexOf(t)===-1&&e==="x"}function rf(t,e){return function(n,i){return n[t]===i[t]?n[e]-i[e]:n[t]-i[t]}}function sf(t){const e=t.chart,n=e.options.animation;e.notifyPlugins("afterRender"),re(n&&n.onComplete,[t],e)}function Sb(t){const e=t.chart,n=e.options.animation;re(n&&n.onProgress,[t],e)}function Bm(t){return Mc()&&typeof t=="string"?t=document.getElementById(t):t&&t.length&&(t=t[0]),t&&t.canvas&&(t=t.canvas),t}const lo={},of=t=>{const e=Bm(t);return Object.values(lo).filter(n=>n.canvas===e).pop()};function Cb(t,e,n){const i=Object.keys(t);for(const r of i){const s=+r;if(s>=e){const o=t[r];delete t[r],(n>0||s>e)&&(t[s+n]=o)}}}function Eb(t,e,n,i){return!n||t.type==="mouseout"?null:i?e:t}function Vs(t,e,n){return t.options.clip?t[n]:e[n]}function Pb(t,e){const{xScale:n,yScale:i}=t;return n&&i?{left:Vs(n,e,"left"),right:Vs(n,e,"right"),top:Vs(i,e,"top"),bottom:Vs(i,e,"bottom")}:e}var Vt;let ma=(Vt=class{static register(...e){kt.add(...e),af()}static unregister(...e){kt.remove(...e),af()}constructor(e,n){const i=this.config=new _b(n),r=Bm(e),s=of(r);if(s)throw new Error("Canvas is already in use. Chart with ID '"+s.id+"' must be destroyed before the canvas with ID '"+s.canvas.id+"' can be reused.");const o=i.createResolver(i.chartOptionScopes(),this.getContext());this.platform=new(i.platform||Hk(r)),this.platform.updateConfig(i);const a=this.platform.acquireContext(r,o.aspectRatio),l=a&&a.canvas,u=l&&l.height,c=l&&l.width;if(this.id=Mx(),this.ctx=a,this.canvas=l,this.width=c,this.height=u,this._options=o,this._aspectRatio=this.aspectRatio,this._layers=[],this._metasets=[],this._stacks=void 0,this.boxes=[],this.currentDevicePixelRatio=void 0,this.chartArea=void 0,this._active=[],this._lastEvent=void 0,this._listeners={},this._responsiveListeners=void 0,this._sortedMetasets=[],this.scales={},this._plugins=new lb,this.$proxies={},this._hiddenIndices={},this.attached=!1,this._animationsDisabled=void 0,this.$context=void 0,this._doResize=Qx(h=>this.update(h),o.resizeDelay||0),this._dataChanges=[],lo[this.id]=this,!a||!l){console.error("Failed to create chart: can't acquire context from the given item");return}Tt.listen(this,"complete",sf),Tt.listen(this,"progress",Sb),this._initialize(),this.attached&&this.update()}get aspectRatio(){const{options:{aspectRatio:e,maintainAspectRatio:n},width:i,height:r,_aspectRatio:s}=this;return J(e)?n&&s?s:r?i/r:null:e}get data(){return this.config.data}set data(e){this.config.data=e}get options(){return this._options}set options(e){this.config.options=e}get registry(){return kt}_initialize(){return this.notifyPlugins("beforeInit"),this.options.responsive?this.resize():Ld(this,this.options.devicePixelRatio),this.bindEvents(),this.notifyPlugins("afterInit"),this}clear(){return Pd(this.canvas,this.ctx),this}stop(){return Tt.stop(this),this}resize(e,n){Tt.running(this)?this._resizeBeforeDraw={width:e,height:n}:this._resize(e,n)}_resize(e,n){const i=this.options,r=this.canvas,s=i.maintainAspectRatio&&this.aspectRatio,o=this.platform.getMaximumSize(r,e,n,s),a=i.devicePixelRatio||this.platform.getDevicePixelRatio(),l=this.width?"resize":"attach";this.width=o.width,this.height=o.height,this._aspectRatio=this.aspectRatio,Ld(this,a,!0)&&(this.notifyPlugins("resize",{size:o}),re(i.onResize,[this,o],this),this.attached&&this._doResize(l)&&this.render())}ensureScalesHaveIDs(){const n=this.options.scales||{};V(n,(i,r)=>{i.id=r})}buildOrUpdateScales(){const e=this.options,n=e.scales,i=this.scales,r=Object.keys(i).reduce((o,a)=>(o[a]=!1,o),{});let s=[];n&&(s=s.concat(Object.keys(n).map(o=>{const a=n[o],l=fu(o,a),u=l==="r",c=l==="x";return{options:a,dposition:u?"chartArea":c?"bottom":"left",dtype:u?"radialLinear":c?"category":"linear"}}))),V(s,o=>{const a=o.options,l=a.id,u=fu(l,a),c=W(a.type,o.dtype);(a.position===void 0||nf(a.position,u)!==nf(o.dposition))&&(a.position=o.dposition),r[l]=!0;let h=null;if(l in i&&i[l].type===c)h=i[l];else{const d=kt.getScale(c);h=new d({id:l,type:c,ctx:this.ctx,chart:this}),i[h.id]=h}h.init(a,e)}),V(r,(o,a)=>{o||delete i[a]}),V(i,o=>{rn.configure(this,o,o.options),rn.addBox(this,o)})}_updateMetasets(){const e=this._metasets,n=this.data.datasets.length,i=e.length;if(e.sort((r,s)=>r.index-s.index),i>n){for(let r=n;r<i;++r)this._destroyDatasetMeta(r);e.splice(n,i-n)}this._sortedMetasets=e.slice(0).sort(rf("order","index"))}_removeUnreferencedMetasets(){const{_metasets:e,data:{datasets:n}}=this;e.length>n.length&&delete this._stacks,e.forEach((i,r)=>{n.filter(s=>s===i._dataset).length===0&&this._destroyDatasetMeta(r)})}buildOrUpdateControllers(){const e=[],n=this.data.datasets;let i,r;for(this._removeUnreferencedMetasets(),i=0,r=n.length;i<r;i++){const s=n[i];let o=this.getDatasetMeta(i);const a=s.type||this.config.type;if(o.type&&o.type!==a&&(this._destroyDatasetMeta(i),o=this.getDatasetMeta(i)),o.type=a,o.indexAxis=s.indexAxis||du(a,this.options),o.order=s.order||0,o.index=i,o.label=""+s.label,o.visible=this.isDatasetVisible(i),o.controller)o.controller.updateIndex(i),o.controller.linkScales();else{const l=kt.getController(a),{datasetElementType:u,dataElementType:c}=ue.datasets[a];Object.assign(l,{dataElementType:kt.getElement(c),datasetElementType:u&&kt.getElement(u)}),o.controller=new l(this,i),e.push(o.controller)}}return this._updateMetasets(),e}_resetElements(){V(this.data.datasets,(e,n)=>{this.getDatasetMeta(n).controller.reset()},this)}reset(){this._resetElements(),this.notifyPlugins("reset")}update(e){const n=this.config;n.update();const i=this._options=n.createResolver(n.chartOptionScopes(),this.getContext()),r=this._animationsDisabled=!i.animation;if(this._updateScales(),this._checkEventBindings(),this._updateHiddenIndices(),this._plugins.invalidate(),this.notifyPlugins("beforeUpdate",{mode:e,cancelable:!0})===!1)return;const s=this.buildOrUpdateControllers();this.notifyPlugins("beforeElementsUpdate");let o=0;for(let u=0,c=this.data.datasets.length;u<c;u++){const{controller:h}=this.getDatasetMeta(u),d=!r&&s.indexOf(h)===-1;h.buildOrUpdateElements(d),o=Math.max(+h.getMaxOverflow(),o)}o=this._minPadding=i.layout.autoPadding?o:0,this._updateLayout(o),r||V(s,u=>{u.reset()}),this._updateDatasets(e),this.notifyPlugins("afterUpdate",{mode:e}),this._layers.sort(rf("z","_idx"));const{_active:a,_lastEvent:l}=this;l?this._eventHandler(l,!0):a.length&&this._updateHoverStyles(a,a,!0),this.render()}_updateScales(){V(this.scales,e=>{rn.removeBox(this,e)}),this.ensureScalesHaveIDs(),this.buildOrUpdateScales()}_checkEventBindings(){const e=this.options,n=new Set(Object.keys(this._listeners)),i=new Set(e.events);(!vd(n,i)||!!this._responsiveListeners!==e.responsive)&&(this.unbindEvents(),this.bindEvents())}_updateHiddenIndices(){const{_hiddenIndices:e}=this,n=this._getUniformDataChanges()||[];for(const{method:i,start:r,count:s}of n){const o=i==="_removeElements"?-s:s;Cb(e,r,o)}}_getUniformDataChanges(){const e=this._dataChanges;if(!e||!e.length)return;this._dataChanges=[];const n=this.data.datasets.length,i=s=>new Set(e.filter(o=>o[0]===s).map((o,a)=>a+","+o.splice(1).join(","))),r=i(0);for(let s=1;s<n;s++)if(!vd(r,i(s)))return;return Array.from(r).map(s=>s.split(",")).map(s=>({method:s[1],start:+s[2],count:+s[3]}))}_updateLayout(e){if(this.notifyPlugins("beforeLayout",{cancelable:!0})===!1)return;rn.update(this,this.width,this.height,e);const n=this.chartArea,i=n.width<=0||n.height<=0;this._layers=[],V(this.boxes,r=>{i&&r.position==="chartArea"||(r.configure&&r.configure(),this._layers.push(...r._layers()))},this),this._layers.forEach((r,s)=>{r._idx=s}),this.notifyPlugins("afterLayout")}_updateDatasets(e){if(this.notifyPlugins("beforeDatasetsUpdate",{mode:e,cancelable:!0})!==!1){for(let n=0,i=this.data.datasets.length;n<i;++n)this.getDatasetMeta(n).controller.configure();for(let n=0,i=this.data.datasets.length;n<i;++n)this._updateDataset(n,mn(e)?e({datasetIndex:n}):e);this.notifyPlugins("afterDatasetsUpdate",{mode:e})}}_updateDataset(e,n){const i=this.getDatasetMeta(e),r={meta:i,index:e,mode:n,cancelable:!0};this.notifyPlugins("beforeDatasetUpdate",r)!==!1&&(i.controller._update(n),r.cancelable=!1,this.notifyPlugins("afterDatasetUpdate",r))}render(){this.notifyPlugins("beforeRender",{cancelable:!0})!==!1&&(Tt.has(this)?this.attached&&!Tt.running(this)&&Tt.start(this):(this.draw(),sf({chart:this})))}draw(){let e;if(this._resizeBeforeDraw){const{width:i,height:r}=this._resizeBeforeDraw;this._resize(i,r),this._resizeBeforeDraw=null}if(this.clear(),this.width<=0||this.height<=0||this.notifyPlugins("beforeDraw",{cancelable:!0})===!1)return;const n=this._layers;for(e=0;e<n.length&&n[e].z<=0;++e)n[e].draw(this.chartArea);for(this._drawDatasets();e<n.length;++e)n[e].draw(this.chartArea);this.notifyPlugins("afterDraw")}_getSortedDatasetMetas(e){const n=this._sortedMetasets,i=[];let r,s;for(r=0,s=n.length;r<s;++r){const o=n[r];(!e||o.visible)&&i.push(o)}return i}getSortedVisibleDatasetMetas(){return this._getSortedDatasetMetas(!0)}_drawDatasets(){if(this.notifyPlugins("beforeDatasetsDraw",{cancelable:!0})===!1)return;const e=this.getSortedVisibleDatasetMetas();for(let n=e.length-1;n>=0;--n)this._drawDataset(e[n]);this.notifyPlugins("afterDatasetsDraw")}_drawDataset(e){const n=this.ctx,i=e._clip,r=!i.disabled,s=Pb(e,this.chartArea),o={meta:e,index:e.index,cancelable:!0};this.notifyPlugins("beforeDatasetDraw",o)!==!1&&(r&&bm(n,{left:i.left===!1?0:s.left-i.left,right:i.right===!1?this.width:s.right+i.right,top:i.top===!1?0:s.top-i.top,bottom:i.bottom===!1?this.height:s.bottom+i.bottom}),e.controller.draw(),r&&Sm(n),o.cancelable=!1,this.notifyPlugins("afterDatasetDraw",o))}isPointInArea(e){return Dt(e,this.chartArea,this._minPadding)}getElementsAtEventForMode(e,n,i,r){const s=bk.modes[n];return typeof s=="function"?s(this,e,i,r):[]}getDatasetMeta(e){const n=this.data.datasets[e],i=this._metasets;let r=i.filter(s=>s&&s._dataset===n).pop();return r||(r={type:null,data:[],dataset:null,controller:null,hidden:null,xAxisID:null,yAxisID:null,order:n&&n.order||0,index:e,_dataset:n,_parsed:[],_sorted:!1},i.push(r)),r}getContext(){return this.$context||(this.$context=xn(null,{chart:this,type:"chart"}))}getVisibleDatasetCount(){return this.getSortedVisibleDatasetMetas().length}isDatasetVisible(e){const n=this.data.datasets[e];if(!n)return!1;const i=this.getDatasetMeta(e);return typeof i.hidden=="boolean"?!i.hidden:!n.hidden}setDatasetVisibility(e,n){const i=this.getDatasetMeta(e);i.hidden=!n}toggleDataVisibility(e){this._hiddenIndices[e]=!this._hiddenIndices[e]}getDataVisibility(e){return!this._hiddenIndices[e]}_updateVisibility(e,n,i){const r=i?"show":"hide",s=this.getDatasetMeta(e),o=s.controller._resolveAnimations(void 0,r);Fo(n)?(s.data[n].hidden=!i,this.update()):(this.setDatasetVisibility(e,i),o.update(s,{visible:i}),this.update(a=>a.datasetIndex===e?r:void 0))}hide(e,n){this._updateVisibility(e,n,!1)}show(e,n){this._updateVisibility(e,n,!0)}_destroyDatasetMeta(e){const n=this._metasets[e];n&&n.controller&&n.controller._destroy(),delete this._metasets[e]}_stop(){let e,n;for(this.stop(),Tt.remove(this),e=0,n=this.data.datasets.length;e<n;++e)this._destroyDatasetMeta(e)}destroy(){this.notifyPlugins("beforeDestroy");const{canvas:e,ctx:n}=this;this._stop(),this.config.clearCache(),e&&(this.unbindEvents(),Pd(e,n),this.platform.releaseContext(n),this.canvas=null,this.ctx=null),delete lo[this.id],this.notifyPlugins("afterDestroy")}toBase64Image(...e){return this.canvas.toDataURL(...e)}bindEvents(){this.bindUserEvents(),this.options.responsive?this.bindResponsiveEvents():this.attached=!0}bindUserEvents(){const e=this._listeners,n=this.platform,i=(s,o)=>{n.addEventListener(this,s,o),e[s]=o},r=(s,o,a)=>{s.offsetX=o,s.offsetY=a,this._eventHandler(s)};V(this.options.events,s=>i(s,r))}bindResponsiveEvents(){this._responsiveListeners||(this._responsiveListeners={});const e=this._responsiveListeners,n=this.platform,i=(l,u)=>{n.addEventListener(this,l,u),e[l]=u},r=(l,u)=>{e[l]&&(n.removeEventListener(this,l,u),delete e[l])},s=(l,u)=>{this.canvas&&this.resize(l,u)};let o;const a=()=>{r("attach",a),this.attached=!0,this.resize(),i("resize",s),i("detach",o)};o=()=>{this.attached=!1,r("resize",s),this._stop(),this._resize(0,0),i("attach",a)},n.isAttached(this.canvas)?a():o()}unbindEvents(){V(this._listeners,(e,n)=>{this.platform.removeEventListener(this,n,e)}),this._listeners={},V(this._responsiveListeners,(e,n)=>{this.platform.removeEventListener(this,n,e)}),this._responsiveListeners=void 0}updateHoverStyle(e,n,i){const r=i?"set":"remove";let s,o,a,l;for(n==="dataset"&&(s=this.getDatasetMeta(e[0].datasetIndex),s.controller["_"+r+"DatasetHoverStyle"]()),a=0,l=e.length;a<l;++a){o=e[a];const u=o&&this.getDatasetMeta(o.datasetIndex).controller;u&&u[r+"HoverStyle"](o.element,o.datasetIndex,o.index)}}getActiveElements(){return this._active||[]}setActiveElements(e){const n=this._active||[],i=e.map(({datasetIndex:s,index:o})=>{const a=this.getDatasetMeta(s);if(!a)throw new Error("No dataset found at index "+s);return{datasetIndex:s,element:a.data[o],index:o}});!jo(i,n)&&(this._active=i,this._lastEvent=null,this._updateHoverStyles(i,n))}notifyPlugins(e,n,i){return this._plugins.notify(this,e,n,i)}isPluginEnabled(e){return this._plugins._cache.filter(n=>n.plugin.id===e).length===1}_updateHoverStyles(e,n,i){const r=this.options.hover,s=(l,u)=>l.filter(c=>!u.some(h=>c.datasetIndex===h.datasetIndex&&c.index===h.index)),o=s(n,e),a=i?e:s(e,n);o.length&&this.updateHoverStyle(o,r.mode,!1),a.length&&r.mode&&this.updateHoverStyle(a,r.mode,!0)}_eventHandler(e,n){const i={event:e,replay:n,cancelable:!0,inChartArea:this.isPointInArea(e)},r=o=>(o.options.events||this.options.events).includes(e.native.type);if(this.notifyPlugins("beforeEvent",i,r)===!1)return;const s=this._handleEvent(e,n,i.inChartArea);return i.cancelable=!1,this.notifyPlugins("afterEvent",i,r),(s||i.changed)&&this.render(),this}_handleEvent(e,n,i){const{_active:r=[],options:s}=this,o=n,a=this._getActiveElements(e,r,i,o),l=Nx(e),u=Eb(e,this._lastEvent,i,l);i&&(this._lastEvent=null,re(s.onHover,[e,a,this],this),l&&re(s.onClick,[e,a,this],this));const c=!jo(a,r);return(c||n)&&(this._active=a,this._updateHoverStyles(a,r,n)),this._lastEvent=u,c}_getActiveElements(e,n,i,r){if(e.type==="mouseout")return[];if(!i)return n;const s=this.options.hover;return this.getElementsAtEventForMode(e,s.mode,s,r)}},I(Vt,"defaults",ue),I(Vt,"instances",lo),I(Vt,"overrides",Yn),I(Vt,"registry",kt),I(Vt,"version",kb),I(Vt,"getChart",of),Vt);function af(){return V(ma.instances,t=>t._plugins.invalidate())}function Vm(t,e,n=e){t.lineCap=W(n.borderCapStyle,e.borderCapStyle),t.setLineDash(W(n.borderDash,e.borderDash)),t.lineDashOffset=W(n.borderDashOffset,e.borderDashOffset),t.lineJoin=W(n.borderJoinStyle,e.borderJoinStyle),t.lineWidth=W(n.borderWidth,e.borderWidth),t.strokeStyle=W(n.borderColor,e.borderColor)}function Tb(t,e,n){t.lineTo(n.x,n.y)}function Ob(t){return t.stepped?c1:t.tension||t.cubicInterpolationMode==="monotone"?h1:Tb}function Hm(t,e,n={}){const i=t.length,{start:r=0,end:s=i-1}=n,{start:o,end:a}=e,l=Math.max(r,o),u=Math.min(s,a),c=r<o&&s<o||r>a&&s>a;return{count:i,start:l,loop:e.loop,ilen:u<l&&!c?i+u-l:u-l}}function Lb(t,e,n,i){const{points:r,options:s}=e,{count:o,start:a,loop:l,ilen:u}=Hm(r,n,i),c=Ob(s);let{move:h=!0,reverse:d}=i||{},f,m,y;for(f=0;f<=u;++f)m=r[(a+(d?u-f:f))%o],!m.skip&&(h?(t.moveTo(m.x,m.y),h=!1):c(t,y,m,d,s.stepped),y=m);return l&&(m=r[(a+(d?u:0))%o],c(t,y,m,d,s.stepped)),!!l}function Mb(t,e,n,i){const r=e.points,{count:s,start:o,ilen:a}=Hm(r,n,i),{move:l=!0,reverse:u}=i||{};let c=0,h=0,d,f,m,y,v,p;const g=w=>(o+(u?a-w:w))%s,_=()=>{y!==v&&(t.lineTo(c,v),t.lineTo(c,y),t.lineTo(c,p))};for(l&&(f=r[g(0)],t.moveTo(f.x,f.y)),d=0;d<=a;++d){if(f=r[g(d)],f.skip)continue;const w=f.x,x=f.y,b=w|0;b===m?(x<y?y=x:x>v&&(v=x),c=(h*c+w)/++h):(_(),t.lineTo(w,x),m=b,h=0,y=v=x),p=x}_()}function pu(t){const e=t.options,n=e.borderDash&&e.borderDash.length;return!t._decimated&&!t._loop&&!e.tension&&e.cubicInterpolationMode!=="monotone"&&!e.stepped&&!n?Mb:Lb}function Rb(t){return t.stepped?H1:t.tension||t.cubicInterpolationMode==="monotone"?W1:Rn}function Ib(t,e,n,i){let r=e._path;r||(r=e._path=new Path2D,e.path(r,n,i)&&r.closePath()),Vm(t,e.options),t.stroke(r)}function Ab(t,e,n,i){const{segments:r,options:s}=e,o=pu(e);for(const a of r)Vm(t,s,a.style),t.beginPath(),o(t,e,a,{start:n,end:n+i-1})&&t.closePath(),t.stroke()}const Db=typeof Path2D=="function";function jb(t,e,n,i){Db&&!e.options.segment?Ib(t,e,n,i):Ab(t,e,n,i)}class hr extends yn{constructor(e){super(),this.animated=!0,this.options=void 0,this._chart=void 0,this._loop=void 0,this._fullLoop=void 0,this._path=void 0,this._points=void 0,this._segments=void 0,this._decimated=!1,this._pointsUpdated=!1,this._datasetIndex=void 0,e&&Object.assign(this,e)}updateControlPoints(e,n){const i=this.options;if((i.tension||i.cubicInterpolationMode==="monotone")&&!i.stepped&&!this._pointsUpdated){const r=i.spanGaps?this._loop:this._fullLoop;j1(this._points,i,e,r,n),this._pointsUpdated=!0}}set points(e){this._points=e,delete this._segments,delete this._path,this._pointsUpdated=!1}get points(){return this._points}get segments(){return this._segments||(this._segments=tk(this,this.options.segment))}first(){const e=this.segments,n=this.points;return e.length&&n[e[0].start]}last(){const e=this.segments,n=this.points,i=e.length;return i&&n[e[i-1].end]}interpolate(e,n){const i=this.options,r=e[n],s=this.points,o=J1(this,{property:n,start:r,end:r});if(!o.length)return;const a=[],l=Rb(i);let u,c;for(u=0,c=o.length;u<c;++u){const{start:h,end:d}=o[u],f=s[h],m=s[d];if(f===m){a.push(f);continue}const y=Math.abs((r-f[n])/(m[n]-f[n])),v=l(f,m,y,i.stepped);v[n]=e[n],a.push(v)}return a.length===1?a[0]:a}pathSegment(e,n,i){return pu(this)(e,this,n,i)}path(e,n,i){const r=this.segments,s=pu(this);let o=this._loop;n=n||0,i=i||this.points.length-n;for(const a of r)o&=s(e,this,a,{start:n,end:n+i-1});return!!o}draw(e,n,i,r){const s=this.options||{};(this.points||[]).length&&s.borderWidth&&(e.save(),jb(e,this,i,r),e.restore()),this.animated&&(this._pointsUpdated=!1,this._path=void 0)}}I(hr,"id","line"),I(hr,"defaults",{borderCapStyle:"butt",borderDash:[],borderDashOffset:0,borderJoinStyle:"miter",borderWidth:3,capBezierPoints:!0,cubicInterpolationMode:"default",fill:!1,spanGaps:!1,stepped:!1,tension:0}),I(hr,"defaultRoutes",{backgroundColor:"backgroundColor",borderColor:"borderColor"}),I(hr,"descriptors",{_scriptable:!0,_indexable:e=>e!=="borderDash"&&e!=="fill"});function lf(t,e,n,i){const r=t.options,{[n]:s}=t.getProps([n],i);return Math.abs(e-s)<r.radius+r.hitRadius}class uo extends yn{constructor(n){super();I(this,"parsed");I(this,"skip");I(this,"stop");this.options=void 0,this.parsed=void 0,this.skip=void 0,this.stop=void 0,n&&Object.assign(this,n)}inRange(n,i,r){const s=this.options,{x:o,y:a}=this.getProps(["x","y"],r);return Math.pow(n-o,2)+Math.pow(i-a,2)<Math.pow(s.hitRadius+s.radius,2)}inXRange(n,i){return lf(this,n,"x",i)}inYRange(n,i){return lf(this,n,"y",i)}getCenterPoint(n){const{x:i,y:r}=this.getProps(["x","y"],n);return{x:i,y:r}}size(n){n=n||this.options||{};let i=n.radius||0;i=Math.max(i,i&&n.hoverRadius||0);const r=i&&n.borderWidth||0;return(i+r)*2}draw(n,i){const r=this.options;this.skip||r.radius<.1||!Dt(this,i,this.size(r)/2)||(n.strokeStyle=r.borderColor,n.lineWidth=r.borderWidth,n.fillStyle=r.backgroundColor,cu(n,r,this.x,this.y))}getRange(){const n=this.options||{};return n.radius+n.hitRadius}}I(uo,"id","point"),I(uo,"defaults",{borderWidth:1,hitRadius:1,hoverBorderWidth:1,hoverRadius:4,pointStyle:"circle",radius:3,rotation:0}),I(uo,"defaultRoutes",{backgroundColor:"backgroundColor",borderColor:"borderColor"});class Wm extends yn{constructor(e){super(),this.chart=e.chart,this.options=e.options,this.ctx=e.ctx,this._padding=void 0,this.top=void 0,this.bottom=void 0,this.left=void 0,this.right=void 0,this.width=void 0,this.height=void 0,this.position=void 0,this.weight=void 0,this.fullSize=void 0}update(e,n){const i=this.options;if(this.left=0,this.top=0,!i.display){this.width=this.height=this.right=this.bottom=0;return}this.width=this.right=e,this.height=this.bottom=n;const r=oe(i.text)?i.text.length:1;this._padding=qe(i.padding);const s=r*Me(i.font).lineHeight+this._padding.height;this.isHorizontal()?this.height=s:this.width=s}isHorizontal(){const e=this.options.position;return e==="top"||e==="bottom"}_drawArgs(e){const{top:n,left:i,bottom:r,right:s,options:o}=this,a=o.align;let l=0,u,c,h;return this.isHorizontal()?(c=Er(a,i,s),h=n+e,u=s-i):(o.position==="left"?(c=i+e,h=Er(a,r,n),l=de*-.5):(c=s-e,h=Er(a,n,r),l=de*.5),u=r-n),{titleX:c,titleY:h,maxWidth:u,rotation:l}}draw(){const e=this.ctx,n=this.options;if(!n.display)return;const i=Me(n.font),s=i.lineHeight/2+this._padding.top,{titleX:o,titleY:a,maxWidth:l,rotation:u}=this._drawArgs(s);es(e,n.text,0,0,i,{color:n.color,maxWidth:l,rotation:u,textAlign:xm(n.align),textBaseline:"middle",translation:[o,a]})}}function Nb(t,e){const n=new Wm({ctx:t.ctx,options:e,chart:t});rn.configure(t,n,e),rn.addBox(t,n),t.titleBlock=n}var zb={id:"title",_element:Wm,start(t,e,n){Nb(t,n)},stop(t){const e=t.titleBlock;rn.removeBox(t,e),delete t.titleBlock},beforeUpdate(t,e,n){const i=t.titleBlock;rn.configure(t,i,n),i.options=n},defaults:{align:"center",display:!1,font:{weight:"bold"},fullSize:!0,padding:10,position:"top",text:"",weight:2e3},defaultRoutes:{color:"color"},descriptors:{_scriptable:!0,_indexable:!1}};const dr={average(t){if(!t.length)return!1;let e,n,i=new Set,r=0,s=0;for(e=0,n=t.length;e<n;++e){const a=t[e].element;if(a&&a.hasValue()){const l=a.tooltipPosition();i.add(l.x),r+=l.y,++s}}return{x:[...i].reduce((a,l)=>a+l)/i.size,y:r/s}},nearest(t,e){if(!t.length)return!1;let n=e.x,i=e.y,r=Number.POSITIVE_INFINITY,s,o,a;for(s=0,o=t.length;s<o;++s){const l=t[s].element;if(l&&l.hasValue()){const u=l.getCenterPoint(),c=lu(e,u);c<r&&(r=c,a=l)}}if(a){const l=a.tooltipPosition();n=l.x,i=l.y}return{x:n,y:i}}};function wt(t,e){return e&&(oe(e)?Array.prototype.push.apply(t,e):t.push(e)),t}function Ot(t){return(typeof t=="string"||t instanceof String)&&t.indexOf(`
+ */class rk{constructor(){this._request=null,this._charts=new Map,this._running=!1,this._lastDate=void 0}_notify(e,n,i,r){const s=n.listeners[r],o=n.duration;s.forEach(a=>a({chart:e,initial:n.initial,numSteps:o,currentStep:Math.min(i-n.start,o)}))}_refresh(){this._request||(this._running=!0,this._request=_m.call(window,()=>{this._update(),this._request=null,this._running&&this._refresh()}))}_update(e=Date.now()){let n=0;this._charts.forEach((i,r)=>{if(!i.running||!i.items.length)return;const s=i.items;let o=s.length-1,a=!1,l;for(;o>=0;--o)l=s[o],l._active?(l._total>i.duration&&(i.duration=l._total),l.tick(e),a=!0):(s[o]=s[s.length-1],s.pop());a&&(r.draw(),this._notify(r,i,e,"progress")),s.length||(i.running=!1,this._notify(r,i,e,"complete"),i.initial=!1),n+=s.length}),this._lastDate=e,n===0&&(this._running=!1)}_getAnims(e){const n=this._charts;let i=n.get(e);return i||(i={running:!1,initial:!0,items:[],listeners:{complete:[],progress:[]}},n.set(e,i)),i}listen(e,n,i){this._getAnims(e).listeners[n].push(i)}add(e,n){!n||!n.length||this._getAnims(e).items.push(...n)}has(e){return this._getAnims(e).items.length>0}start(e){const n=this._charts.get(e);n&&(n.running=!0,n.start=Date.now(),n.duration=n.items.reduce((i,r)=>Math.max(i,r._duration),0),this._refresh())}running(e){if(!this._running)return!1;const n=this._charts.get(e);return!(!n||!n.running||!n.items.length)}stop(e){const n=this._charts.get(e);if(!n||!n.items.length)return;const i=n.items;let r=i.length-1;for(;r>=0;--r)i[r].cancel();n.items=[],this._notify(e,n,Date.now(),"complete")}remove(e){return this._charts.delete(e)}}var Tt=new rk;const Dd="transparent",sk={boolean(t,e,n){return n>.5?e:t},color(t,e,n){const i=Cd(t||Dd),r=i.valid&&Cd(e||Dd);return r&&r.valid?r.mix(i,n).hexString():e},number(t,e,n){return t+(e-t)*n}};class ok{constructor(e,n,i,r){const s=n[i];r=js([e.to,r,s,e.from]);const o=js([e.from,s,r]);this._active=!0,this._fn=e.fn||sk[e.type||typeof o],this._easing=Pr[e.easing]||Pr.linear,this._start=Math.floor(Date.now()+(e.delay||0)),this._duration=this._total=Math.floor(e.duration),this._loop=!!e.loop,this._target=n,this._prop=i,this._from=o,this._to=r,this._promises=void 0}active(){return this._active}update(e,n,i){if(this._active){this._notify(!1);const r=this._target[this._prop],s=i-this._start,o=this._duration-s;this._start=i,this._duration=Math.floor(Math.max(o,e.duration)),this._total+=s,this._loop=!!e.loop,this._to=js([e.to,n,r,e.from]),this._from=js([e.from,r,n])}}cancel(){this._active&&(this.tick(Date.now()),this._active=!1,this._notify(!1))}tick(e){const n=e-this._start,i=this._duration,r=this._prop,s=this._from,o=this._loop,a=this._to;let l;if(this._active=s!==a&&(o||n<i),!this._active){this._target[r]=a,this._notify(!0);return}if(n<0){this._target[r]=s;return}l=n/i%2,l=o&&l>1?2-l:l,l=this._easing(Math.min(1,Math.max(0,l))),this._target[r]=this._fn(s,a,l)}wait(){const e=this._promises||(this._promises=[]);return new Promise((n,i)=>{e.push({res:n,rej:i})})}_notify(e){const n=e?"res":"rej",i=this._promises||[];for(let r=0;r<i.length;r++)i[r][n]()}}class Rm{constructor(e,n){this._chart=e,this._properties=new Map,this.configure(n)}configure(e){if(!U(e))return;const n=Object.keys(ue.animation),i=this._properties;Object.getOwnPropertyNames(e).forEach(r=>{const s=e[r];if(!U(s))return;const o={};for(const a of n)o[a]=s[a];(oe(s.properties)&&s.properties||[r]).forEach(a=>{(a===r||!i.has(a))&&i.set(a,o)})})}_animateOptions(e,n){const i=n.options,r=lk(e,i);if(!r)return[];const s=this._createAnimations(r,i);return i.$shared&&ak(e.options.$animations,i).then(()=>{e.options=i},()=>{}),s}_createAnimations(e,n){const i=this._properties,r=[],s=e.$animations||(e.$animations={}),o=Object.keys(n),a=Date.now();let l;for(l=o.length-1;l>=0;--l){const u=o[l];if(u.charAt(0)==="$")continue;if(u==="options"){r.push(...this._animateOptions(e,n));continue}const c=n[u];let h=s[u];const d=i.get(u);if(h)if(d&&h.active()){h.update(d,c,a);continue}else h.cancel();if(!d||!d.duration){e[u]=c;continue}s[u]=h=new ok(d,e,u,c),r.push(h)}return r}update(e,n){if(this._properties.size===0){Object.assign(e,n);return}const i=this._createAnimations(e,n);if(i.length)return Tt.add(this._chart,i),!0}}function ak(t,e){const n=[],i=Object.keys(e);for(let r=0;r<i.length;r++){const s=t[i[r]];s&&s.active()&&n.push(s.wait())}return Promise.all(n)}function lk(t,e){if(!e)return;let n=t.options;if(!n){t.options=e;return}return n.$shared&&(t.options=n=Object.assign({},n,{$shared:!1,$animations:{}})),n}function jd(t,e){const n=t&&t.options||{},i=n.reverse,r=n.min===void 0?e:0,s=n.max===void 0?e:0;return{start:i?s:r,end:i?r:s}}function uk(t,e,n){if(n===!1)return!1;const i=jd(t,n),r=jd(e,n);return{top:r.end,right:i.end,bottom:r.start,left:i.start}}function ck(t){let e,n,i,r;return U(t)?(e=t.top,n=t.right,i=t.bottom,r=t.left):e=n=i=r=t,{top:e,right:n,bottom:i,left:r,disabled:t===!1}}function Im(t,e){const n=[],i=t._getSortedDatasetMetas(e);let r,s;for(r=0,s=i.length;r<s;++r)n.push(i[r].index);return n}function Nd(t,e,n,i={}){const r=t.keys,s=i.mode==="single";let o,a,l,u;if(e!==null){for(o=0,a=r.length;o<a;++o){if(l=+r[o],l===n){if(i.all)continue;break}u=t.values[l],ve(u)&&(s||e===0||Ai(e)===Ai(u))&&(e+=u)}return e}}function hk(t,e){const{iScale:n,vScale:i}=e,r=n.axis==="x"?"x":"y",s=i.axis==="x"?"x":"y",o=Object.keys(t),a=new Array(o.length);let l,u,c;for(l=0,u=o.length;l<u;++l)c=o[l],a[l]={[r]:c,[s]:t[c]};return a}function zd(t,e){const n=t&&t.options.stacked;return n||n===void 0&&e.stack!==void 0}function dk(t,e,n){return`${t.id}.${e.id}.${n.stack||n.type}`}function fk(t){const{min:e,max:n,minDefined:i,maxDefined:r}=t.getUserBounds();return{min:i?e:Number.NEGATIVE_INFINITY,max:r?n:Number.POSITIVE_INFINITY}}function pk(t,e,n){const i=t[e]||(t[e]={});return i[n]||(i[n]={})}function Fd(t,e,n,i){for(const r of e.getMatchingVisibleMetas(i).reverse()){const s=t[r.index];if(n&&s>0||!n&&s<0)return r.index}return null}function $d(t,e){const{chart:n,_cachedMeta:i}=t,r=n._stacks||(n._stacks={}),{iScale:s,vScale:o,index:a}=i,l=s.axis,u=o.axis,c=dk(s,o,i),h=e.length;let d;for(let f=0;f<h;++f){const m=e[f],{[l]:y,[u]:v}=m,p=m._stacks||(m._stacks={});d=p[u]=pk(r,c,y),d[a]=v,d._top=Fd(d,o,!0,i.type),d._bottom=Fd(d,o,!1,i.type);const g=d._visualValues||(d._visualValues={});g[a]=v}}function tl(t,e){const n=t.scales;return Object.keys(n).filter(i=>n[i].axis===e).shift()}function gk(t,e){return xn(t,{active:!1,dataset:void 0,datasetIndex:e,index:e,mode:"default",type:"dataset"})}function mk(t,e,n){return xn(t,{active:!1,dataIndex:e,parsed:void 0,raw:void 0,element:n,index:e,mode:"default",type:"data"})}function Zi(t,e){const n=t.controller.index,i=t.vScale&&t.vScale.axis;if(i){e=e||t._parsed;for(const r of e){const s=r._stacks;if(!s||s[i]===void 0||s[i][n]===void 0)return;delete s[i][n],s[i]._visualValues!==void 0&&s[i]._visualValues[n]!==void 0&&delete s[i]._visualValues[n]}}}const nl=t=>t==="reset"||t==="none",Ud=(t,e)=>e?t:Object.assign({},t),yk=(t,e,n)=>t&&!e.hidden&&e._stacked&&{keys:Im(n,!0),values:null};class Lr{constructor(e,n){this.chart=e,this._ctx=e.ctx,this.index=n,this._cachedDataOpts={},this._cachedMeta=this.getMeta(),this._type=this._cachedMeta.type,this.options=void 0,this._parsing=!1,this._data=void 0,this._objectData=void 0,this._sharedOptions=void 0,this._drawStart=void 0,this._drawCount=void 0,this.enableOptionSharing=!1,this.supportsDecimation=!1,this.$context=void 0,this._syncList=[],this.datasetElementType=new.target.datasetElementType,this.dataElementType=new.target.dataElementType,this.initialize()}initialize(){const e=this._cachedMeta;this.configure(),this.linkScales(),e._stacked=zd(e.vScale,e),this.addElements(),this.options.fill&&!this.chart.isPluginEnabled("filler")&&console.warn("Tried to use the 'fill' option without the 'Filler' plugin enabled. Please import and register the 'Filler' plugin and make sure it is not disabled in the options")}updateIndex(e){this.index!==e&&Zi(this._cachedMeta),this.index=e}linkScales(){const e=this.chart,n=this._cachedMeta,i=this.getDataset(),r=(h,d,f,m)=>h==="x"?d:h==="r"?m:f,s=n.xAxisID=W(i.xAxisID,tl(e,"x")),o=n.yAxisID=W(i.yAxisID,tl(e,"y")),a=n.rAxisID=W(i.rAxisID,tl(e,"r")),l=n.indexAxis,u=n.iAxisID=r(l,s,o,a),c=n.vAxisID=r(l,o,s,a);n.xScale=this.getScaleForId(s),n.yScale=this.getScaleForId(o),n.rScale=this.getScaleForId(a),n.iScale=this.getScaleForId(u),n.vScale=this.getScaleForId(c)}getDataset(){return this.chart.data.datasets[this.index]}getMeta(){return this.chart.getDatasetMeta(this.index)}getScaleForId(e){return this.chart.scales[e]}_getOtherScale(e){const n=this._cachedMeta;return e===n.iScale?n.vScale:n.iScale}reset(){this._update("reset")}_destroy(){const e=this._cachedMeta;this._data&&kd(this._data,this),e._stacked&&Zi(e)}_dataCheck(){const e=this.getDataset(),n=e.data||(e.data=[]),i=this._data;if(U(n)){const r=this._cachedMeta;this._data=hk(n,r)}else if(i!==n){if(i){kd(i,this);const r=this._cachedMeta;Zi(r),r._parsed=[]}n&&Object.isExtensible(n)&&Gx(n,this),this._syncList=[],this._data=n}}addElements(){const e=this._cachedMeta;this._dataCheck(),this.datasetElementType&&(e.dataset=new this.datasetElementType)}buildOrUpdateElements(e){const n=this._cachedMeta,i=this.getDataset();let r=!1;this._dataCheck();const s=n._stacked;n._stacked=zd(n.vScale,n),n.stack!==i.stack&&(r=!0,Zi(n),n.stack=i.stack),this._resyncElements(e),(r||s!==n._stacked)&&$d(this,n._parsed)}configure(){const e=this.chart.config,n=e.datasetScopeKeys(this._type),i=e.getOptionScopes(this.getDataset(),n,!0);this.options=e.createResolver(i,this.getContext()),this._parsing=this.options.parsing,this._cachedDataOpts={}}parse(e,n){const{_cachedMeta:i,_data:r}=this,{iScale:s,_stacked:o}=i,a=s.axis;let l=e===0&&n===r.length?!0:i._sorted,u=e>0&&i._parsed[e-1],c,h,d;if(this._parsing===!1)i._parsed=r,i._sorted=!0,d=r;else{oe(r[e])?d=this.parseArrayData(i,r,e,n):U(r[e])?d=this.parseObjectData(i,r,e,n):d=this.parsePrimitiveData(i,r,e,n);const f=()=>h[a]===null||u&&h[a]<u[a];for(c=0;c<n;++c)i._parsed[c+e]=h=d[c],l&&(f()&&(l=!1),u=h);i._sorted=l}o&&$d(this,d)}parsePrimitiveData(e,n,i,r){const{iScale:s,vScale:o}=e,a=s.axis,l=o.axis,u=s.getLabels(),c=s===o,h=new Array(r);let d,f,m;for(d=0,f=r;d<f;++d)m=d+i,h[d]={[a]:c||s.parse(u[m],m),[l]:o.parse(n[m],m)};return h}parseArrayData(e,n,i,r){const{xScale:s,yScale:o}=e,a=new Array(r);let l,u,c,h;for(l=0,u=r;l<u;++l)c=l+i,h=n[c],a[l]={x:s.parse(h[0],c),y:o.parse(h[1],c)};return a}parseObjectData(e,n,i,r){const{xScale:s,yScale:o}=e,{xAxisKey:a="x",yAxisKey:l="y"}=this._parsing,u=new Array(r);let c,h,d,f;for(c=0,h=r;c<h;++c)d=c+i,f=n[d],u[c]={x:s.parse(zo(f,a),d),y:o.parse(zo(f,l),d)};return u}getParsed(e){return this._cachedMeta._parsed[e]}getDataElement(e){return this._cachedMeta.data[e]}applyStack(e,n,i){const r=this.chart,s=this._cachedMeta,o=n[e.axis],a={keys:Im(r,!0),values:n._stacks[e.axis]._visualValues};return Nd(a,o,s.index,{mode:i})}updateRangeFromParsed(e,n,i,r){const s=i[n.axis];let o=s===null?NaN:s;const a=r&&i._stacks[n.axis];r&&a&&(r.values=a,o=Nd(r,s,this._cachedMeta.index)),e.min=Math.min(e.min,o),e.max=Math.max(e.max,o)}getMinMax(e,n){const i=this._cachedMeta,r=i._parsed,s=i._sorted&&e===i.iScale,o=r.length,a=this._getOtherScale(e),l=yk(n,i,this.chart),u={min:Number.POSITIVE_INFINITY,max:Number.NEGATIVE_INFINITY},{min:c,max:h}=fk(a);let d,f;function m(){f=r[d];const y=f[a.axis];return!ve(f[e.axis])||c>y||h<y}for(d=0;d<o&&!(!m()&&(this.updateRangeFromParsed(u,e,f,l),s));++d);if(s){for(d=o-1;d>=0;--d)if(!m()){this.updateRangeFromParsed(u,e,f,l);break}}return u}getAllParsedValues(e){const n=this._cachedMeta._parsed,i=[];let r,s,o;for(r=0,s=n.length;r<s;++r)o=n[r][e.axis],ve(o)&&i.push(o);return i}getMaxOverflow(){return!1}getLabelAndValue(e){const n=this._cachedMeta,i=n.iScale,r=n.vScale,s=this.getParsed(e);return{label:i?""+i.getLabelForValue(s[i.axis]):"",value:r?""+r.getLabelForValue(s[r.axis]):""}}_update(e){const n=this._cachedMeta;this.update(e||"default"),n._clip=ck(W(this.options.clip,uk(n.xScale,n.yScale,this.getMaxOverflow())))}update(e){}draw(){const e=this._ctx,n=this.chart,i=this._cachedMeta,r=i.data||[],s=n.chartArea,o=[],a=this._drawStart||0,l=this._drawCount||r.length-a,u=this.options.drawActiveElementsOnTop;let c;for(i.dataset&&i.dataset.draw(e,s,a,l),c=a;c<a+l;++c){const h=r[c];h.hidden||(h.active&&u?o.push(h):h.draw(e,s))}for(c=0;c<o.length;++c)o[c].draw(e,s)}getStyle(e,n){const i=n?"active":"default";return e===void 0&&this._cachedMeta.dataset?this.resolveDatasetElementOptions(i):this.resolveDataElementOptions(e||0,i)}getContext(e,n,i){const r=this.getDataset();let s;if(e>=0&&e<this._cachedMeta.data.length){const o=this._cachedMeta.data[e];s=o.$context||(o.$context=mk(this.getContext(),e,o)),s.parsed=this.getParsed(e),s.raw=r.data[e],s.index=s.dataIndex=e}else s=this.$context||(this.$context=gk(this.chart.getContext(),this.index)),s.dataset=r,s.index=s.datasetIndex=this.index;return s.active=!!n,s.mode=i,s}resolveDatasetElementOptions(e){return this._resolveElementOptions(this.datasetElementType.id,e)}resolveDataElementOptions(e,n){return this._resolveElementOptions(this.dataElementType.id,n,e)}_resolveElementOptions(e,n="default",i){const r=n==="active",s=this._cachedDataOpts,o=e+"-"+n,a=s[o],l=this.enableOptionSharing&&Fo(i);if(a)return Ud(a,l);const u=this.chart.config,c=u.datasetElementScopeKeys(this._type,e),h=r?[`${e}Hover`,"hover",e,""]:[e,""],d=u.getOptionScopes(this.getDataset(),c),f=Object.keys(ue.elements[e]),m=()=>this.getContext(i,r,n),y=u.resolveNamedOptions(d,f,m,h);return y.$shared&&(y.$shared=l,s[o]=Object.freeze(Ud(y,l))),y}_resolveAnimations(e,n,i){const r=this.chart,s=this._cachedDataOpts,o=`animation-${n}`,a=s[o];if(a)return a;let l;if(r.options.animation!==!1){const c=this.chart.config,h=c.datasetAnimationScopeKeys(this._type,n),d=c.getOptionScopes(this.getDataset(),h);l=c.createResolver(d,this.getContext(e,i,n))}const u=new Rm(r,l&&l.animations);return l&&l._cacheable&&(s[o]=Object.freeze(u)),u}getSharedOptions(e){if(e.$shared)return this._sharedOptions||(this._sharedOptions=Object.assign({},e))}includeOptions(e,n){return!n||nl(e)||this.chart._animationsDisabled}_getSharedOptions(e,n){const i=this.resolveDataElementOptions(e,n),r=this._sharedOptions,s=this.getSharedOptions(i),o=this.includeOptions(n,s)||s!==r;return this.updateSharedOptions(s,n,i),{sharedOptions:s,includeOptions:o}}updateElement(e,n,i,r){nl(r)?Object.assign(e,i):this._resolveAnimations(n,r).update(e,i)}updateSharedOptions(e,n,i){e&&!nl(n)&&this._resolveAnimations(void 0,n).update(e,i)}_setStyle(e,n,i,r){e.active=r;const s=this.getStyle(n,r);this._resolveAnimations(n,i,r).update(e,{options:!r&&this.getSharedOptions(s)||s})}removeHoverStyle(e,n,i){this._setStyle(e,i,"active",!1)}setHoverStyle(e,n,i){this._setStyle(e,i,"active",!0)}_removeDatasetHoverStyle(){const e=this._cachedMeta.dataset;e&&this._setStyle(e,void 0,"active",!1)}_setDatasetHoverStyle(){const e=this._cachedMeta.dataset;e&&this._setStyle(e,void 0,"active",!0)}_resyncElements(e){const n=this._data,i=this._cachedMeta.data;for(const[a,l,u]of this._syncList)this[a](l,u);this._syncList=[];const r=i.length,s=n.length,o=Math.min(s,r);o&&this.parse(0,o),s>r?this._insertElements(r,s-r,e):s<r&&this._removeElements(s,r-s)}_insertElements(e,n,i=!0){const r=this._cachedMeta,s=r.data,o=e+n;let a;const l=u=>{for(u.length+=n,a=u.length-1;a>=o;a--)u[a]=u[a-n]};for(l(s),a=e;a<o;++a)s[a]=new this.dataElementType;this._parsing&&l(r._parsed),this.parse(e,n),i&&this.updateElements(s,e,n,"reset")}updateElements(e,n,i,r){}_removeElements(e,n){const i=this._cachedMeta;if(this._parsing){const r=i._parsed.splice(e,n);i._stacked&&Zi(i,r)}i.data.splice(e,n)}_sync(e){if(this._parsing)this._syncList.push(e);else{const[n,i,r]=e;this[n](i,r)}this.chart._dataChanges.push([this.index,...e])}_onDataPush(){const e=arguments.length;this._sync(["_insertElements",this.getDataset().data.length-e,e])}_onDataPop(){this._sync(["_removeElements",this._cachedMeta.data.length-1,1])}_onDataShift(){this._sync(["_removeElements",0,1])}_onDataSplice(e,n){n&&this._sync(["_removeElements",e,n]);const i=arguments.length-2;i&&this._sync(["_insertElements",e,i])}_onDataUnshift(){this._sync(["_insertElements",0,arguments.length])}}I(Lr,"defaults",{}),I(Lr,"datasetElementType",null),I(Lr,"dataElementType",null);class oo extends Lr{initialize(){this.enableOptionSharing=!0,this.supportsDecimation=!0,super.initialize()}update(e){const n=this._cachedMeta,{dataset:i,data:r=[],_dataset:s}=n,o=this.chart._animationsDisabled;let{start:a,count:l}=Xx(n,r,o);this._drawStart=a,this._drawCount=l,Jx(n)&&(a=0,l=r.length),i._chart=this.chart,i._datasetIndex=this.index,i._decimated=!!s._decimated,i.points=r;const u=this.resolveDatasetElementOptions(e);this.options.showLine||(u.borderWidth=0),u.segment=this.options.segment,this.updateElement(i,void 0,{animated:!o,options:u},e),this.updateElements(r,a,l,e)}updateElements(e,n,i,r){const s=r==="reset",{iScale:o,vScale:a,_stacked:l,_dataset:u}=this._cachedMeta,{sharedOptions:c,includeOptions:h}=this._getSharedOptions(n,r),d=o.axis,f=a.axis,{spanGaps:m,segment:y}=this.options,v=Zr(m)?m:Number.POSITIVE_INFINITY,p=this.chart._animationsDisabled||s||r==="none",g=n+i,_=e.length;let w=n>0&&this.getParsed(n-1);for(let x=0;x<_;++x){const b=e[x],k=p?b:{};if(x<n||x>=g){k.skip=!0;continue}const S=this.getParsed(x),M=J(S[f]),L=k[d]=o.getPixelForValue(S[d],x),D=k[f]=s||M?a.getBasePixel():a.getPixelForValue(l?this.applyStack(a,S,l):S[f],x);k.skip=isNaN(L)||isNaN(D)||M,k.stop=x>0&&Math.abs(S[d]-w[d])>v,y&&(k.parsed=S,k.raw=u.data[x]),h&&(k.options=c||this.resolveDataElementOptions(x,b.active?"active":r)),p||this.updateElement(b,x,k,r),w=S}}getMaxOverflow(){const e=this._cachedMeta,n=e.dataset,i=n.options&&n.options.borderWidth||0,r=e.data||[];if(!r.length)return i;const s=r[0].size(this.resolveDataElementOptions(0)),o=r[r.length-1].size(this.resolveDataElementOptions(r.length-1));return Math.max(i,s,o)/2}draw(){const e=this._cachedMeta;e.dataset.updateControlPoints(this.chart.chartArea,e.iScale.axis),super.draw()}}I(oo,"id","line"),I(oo,"defaults",{datasetElementType:"line",dataElementType:"point",showLine:!0,spanGaps:!1}),I(oo,"overrides",{scales:{_index_:{type:"category"},_value_:{type:"linear"}}});function En(){throw new Error("This method is not implemented: Check that a complete date adapter is provided.")}class Ic{constructor(e){I(this,"options");this.options=e||{}}static override(e){Object.assign(Ic.prototype,e)}init(){}formats(){return En()}parse(){return En()}format(){return En()}add(){return En()}diff(){return En()}startOf(){return En()}endOf(){return En()}}var vk={_date:Ic};function _k(t,e,n,i){const{controller:r,data:s,_sorted:o}=t,a=r._cachedMeta.iScale;if(a&&e===a.axis&&e!=="r"&&o&&s.length){const l=a._reversePixels?Kx:Nn;if(i){if(r._sharedOptions){const u=s[0],c=typeof u.getRange=="function"&&u.getRange(e);if(c){const h=l(s,e,n-c),d=l(s,e,n+c);return{lo:h.lo,hi:d.hi}}}}else return l(s,e,n)}return{lo:0,hi:s.length-1}}function cs(t,e,n,i,r){const s=t.getSortedVisibleDatasetMetas(),o=n[e];for(let a=0,l=s.length;a<l;++a){const{index:u,data:c}=s[a],{lo:h,hi:d}=_k(s[a],e,o,r);for(let f=h;f<=d;++f){const m=c[f];m.skip||i(m,u,f)}}}function wk(t){const e=t.indexOf("x")!==-1,n=t.indexOf("y")!==-1;return function(i,r){const s=e?Math.abs(i.x-r.x):0,o=n?Math.abs(i.y-r.y):0;return Math.sqrt(Math.pow(s,2)+Math.pow(o,2))}}function il(t,e,n,i,r){const s=[];return!r&&!t.isPointInArea(e)||cs(t,n,e,function(a,l,u){!r&&!Dt(a,t.chartArea,0)||a.inRange(e.x,e.y,i)&&s.push({element:a,datasetIndex:l,index:u})},!0),s}function xk(t,e,n,i){let r=[];function s(o,a,l){const{startAngle:u,endAngle:c}=o.getProps(["startAngle","endAngle"],i),{angle:h}=Bx(o,{x:e.x,y:e.y});ym(h,u,c)&&r.push({element:o,datasetIndex:a,index:l})}return cs(t,n,e,s),r}function kk(t,e,n,i,r,s){let o=[];const a=wk(n);let l=Number.POSITIVE_INFINITY;function u(c,h,d){const f=c.inRange(e.x,e.y,r);if(i&&!f)return;const m=c.getCenterPoint(r);if(!(!!s||t.isPointInArea(m))&&!f)return;const v=a(e,m);v<l?(o=[{element:c,datasetIndex:h,index:d}],l=v):v===l&&o.push({element:c,datasetIndex:h,index:d})}return cs(t,n,e,u),o}function rl(t,e,n,i,r,s){return!s&&!t.isPointInArea(e)?[]:n==="r"&&!i?xk(t,e,n,r):kk(t,e,n,i,r,s)}function Bd(t,e,n,i,r){const s=[],o=n==="x"?"inXRange":"inYRange";let a=!1;return cs(t,n,e,(l,u,c)=>{l[o](e[n],r)&&(s.push({element:l,datasetIndex:u,index:c}),a=a||l.inRange(e.x,e.y,r))}),i&&!a?[]:s}var bk={evaluateInteractionItems:cs,modes:{index(t,e,n,i){const r=Mn(e,t),s=n.axis||"x",o=n.includeInvisible||!1,a=n.intersect?il(t,r,s,i,o):rl(t,r,s,!1,i,o),l=[];return a.length?(t.getSortedVisibleDatasetMetas().forEach(u=>{const c=a[0].index,h=u.data[c];h&&!h.skip&&l.push({element:h,datasetIndex:u.index,index:c})}),l):[]},dataset(t,e,n,i){const r=Mn(e,t),s=n.axis||"xy",o=n.includeInvisible||!1;let a=n.intersect?il(t,r,s,i,o):rl(t,r,s,!1,i,o);if(a.length>0){const l=a[0].datasetIndex,u=t.getDatasetMeta(l).data;a=[];for(let c=0;c<u.length;++c)a.push({element:u[c],datasetIndex:l,index:c})}return a},point(t,e,n,i){const r=Mn(e,t),s=n.axis||"xy",o=n.includeInvisible||!1;return il(t,r,s,i,o)},nearest(t,e,n,i){const r=Mn(e,t),s=n.axis||"xy",o=n.includeInvisible||!1;return rl(t,r,s,n.intersect,i,o)},x(t,e,n,i){const r=Mn(e,t);return Bd(t,r,"x",n.intersect,i)},y(t,e,n,i){const r=Mn(e,t);return Bd(t,r,"y",n.intersect,i)}}};const Am=["left","top","right","bottom"];function er(t,e){return t.filter(n=>n.pos===e)}function Vd(t,e){return t.filter(n=>Am.indexOf(n.pos)===-1&&n.box.axis===e)}function tr(t,e){return t.sort((n,i)=>{const r=e?i:n,s=e?n:i;return r.weight===s.weight?r.index-s.index:r.weight-s.weight})}function Sk(t){const e=[];let n,i,r,s,o,a;for(n=0,i=(t||[]).length;n<i;++n)r=t[n],{position:s,options:{stack:o,stackWeight:a=1}}=r,e.push({index:n,box:r,pos:s,horizontal:r.isHorizontal(),weight:r.weight,stack:o&&s+o,stackWeight:a});return e}function Ck(t){const e={};for(const n of t){const{stack:i,pos:r,stackWeight:s}=n;if(!i||!Am.includes(r))continue;const o=e[i]||(e[i]={count:0,placed:0,weight:0,size:0});o.count++,o.weight+=s}return e}function Ek(t,e){const n=Ck(t),{vBoxMaxWidth:i,hBoxMaxHeight:r}=e;let s,o,a;for(s=0,o=t.length;s<o;++s){a=t[s];const{fullSize:l}=a.box,u=n[a.stack],c=u&&a.stackWeight/u.weight;a.horizontal?(a.width=c?c*i:l&&e.availableWidth,a.height=r):(a.width=i,a.height=c?c*r:l&&e.availableHeight)}return n}function Pk(t){const e=Sk(t),n=tr(e.filter(u=>u.box.fullSize),!0),i=tr(er(e,"left"),!0),r=tr(er(e,"right")),s=tr(er(e,"top"),!0),o=tr(er(e,"bottom")),a=Vd(e,"x"),l=Vd(e,"y");return{fullSize:n,leftAndTop:i.concat(s),rightAndBottom:r.concat(l).concat(o).concat(a),chartArea:er(e,"chartArea"),vertical:i.concat(r).concat(l),horizontal:s.concat(o).concat(a)}}function Hd(t,e,n,i){return Math.max(t[n],e[n])+Math.max(t[i],e[i])}function Dm(t,e){t.top=Math.max(t.top,e.top),t.left=Math.max(t.left,e.left),t.bottom=Math.max(t.bottom,e.bottom),t.right=Math.max(t.right,e.right)}function Tk(t,e,n,i){const{pos:r,box:s}=n,o=t.maxPadding;if(!U(r)){n.size&&(t[r]-=n.size);const h=i[n.stack]||{size:0,count:1};h.size=Math.max(h.size,n.horizontal?s.height:s.width),n.size=h.size/h.count,t[r]+=n.size}s.getPadding&&Dm(o,s.getPadding());const a=Math.max(0,e.outerWidth-Hd(o,t,"left","right")),l=Math.max(0,e.outerHeight-Hd(o,t,"top","bottom")),u=a!==t.w,c=l!==t.h;return t.w=a,t.h=l,n.horizontal?{same:u,other:c}:{same:c,other:u}}function Ok(t){const e=t.maxPadding;function n(i){const r=Math.max(e[i]-t[i],0);return t[i]+=r,r}t.y+=n("top"),t.x+=n("left"),n("right"),n("bottom")}function Lk(t,e){const n=e.maxPadding;function i(r){const s={left:0,top:0,right:0,bottom:0};return r.forEach(o=>{s[o]=Math.max(e[o],n[o])}),s}return i(t?["left","right"]:["top","bottom"])}function cr(t,e,n,i){const r=[];let s,o,a,l,u,c;for(s=0,o=t.length,u=0;s<o;++s){a=t[s],l=a.box,l.update(a.width||e.w,a.height||e.h,Lk(a.horizontal,e));const{same:h,other:d}=Tk(e,n,a,i);u|=h&&r.length,c=c||d,l.fullSize||r.push(a)}return u&&cr(r,e,n,i)||c}function Fs(t,e,n,i,r){t.top=n,t.left=e,t.right=e+i,t.bottom=n+r,t.width=i,t.height=r}function Wd(t,e,n,i){const r=n.padding;let{x:s,y:o}=e;for(const a of t){const l=a.box,u=i[a.stack]||{count:1,placed:0,weight:1},c=a.stackWeight/u.weight||1;if(a.horizontal){const h=e.w*c,d=u.size||l.height;Fo(u.start)&&(o=u.start),l.fullSize?Fs(l,r.left,o,n.outerWidth-r.right-r.left,d):Fs(l,e.left+u.placed,o,h,d),u.start=o,u.placed+=h,o=l.bottom}else{const h=e.h*c,d=u.size||l.width;Fo(u.start)&&(s=u.start),l.fullSize?Fs(l,s,r.top,d,n.outerHeight-r.bottom-r.top):Fs(l,s,e.top+u.placed,d,h),u.start=s,u.placed+=h,s=l.right}}e.x=s,e.y=o}var rn={addBox(t,e){t.boxes||(t.boxes=[]),e.fullSize=e.fullSize||!1,e.position=e.position||"top",e.weight=e.weight||0,e._layers=e._layers||function(){return[{z:0,draw(n){e.draw(n)}}]},t.boxes.push(e)},removeBox(t,e){const n=t.boxes?t.boxes.indexOf(e):-1;n!==-1&&t.boxes.splice(n,1)},configure(t,e,n){e.fullSize=n.fullSize,e.position=n.position,e.weight=n.weight},update(t,e,n,i){if(!t)return;const r=qe(t.options.layout.padding),s=Math.max(e-r.width,0),o=Math.max(n-r.height,0),a=Pk(t.boxes),l=a.vertical,u=a.horizontal;V(t.boxes,y=>{typeof y.beforeLayout=="function"&&y.beforeLayout()});const c=l.reduce((y,v)=>v.box.options&&v.box.options.display===!1?y:y+1,0)||1,h=Object.freeze({outerWidth:e,outerHeight:n,padding:r,availableWidth:s,availableHeight:o,vBoxMaxWidth:s/2/c,hBoxMaxHeight:o/2}),d=Object.assign({},r);Dm(d,qe(i));const f=Object.assign({maxPadding:d,w:s,h:o,x:r.left,y:r.top},r),m=Ek(l.concat(u),h);cr(a.fullSize,f,h,m),cr(l,f,h,m),cr(u,f,h,m)&&cr(l,f,h,m),Ok(f),Wd(a.leftAndTop,f,h,m),f.x+=f.w,f.y+=f.h,Wd(a.rightAndBottom,f,h,m),t.chartArea={left:f.left,top:f.top,right:f.left+f.w,bottom:f.top+f.h,height:f.h,width:f.w},V(a.chartArea,y=>{const v=y.box;Object.assign(v,t.chartArea),v.update(f.w,f.h,{left:0,top:0,right:0,bottom:0})})}};class jm{acquireContext(e,n){}releaseContext(e){return!1}addEventListener(e,n,i){}removeEventListener(e,n,i){}getDevicePixelRatio(){return 1}getMaximumSize(e,n,i,r){return n=Math.max(0,n||e.width),i=i||e.height,{width:n,height:Math.max(0,r?Math.floor(n/r):i)}}isAttached(e){return!0}updateConfig(e){}}class Mk extends jm{acquireContext(e){return e&&e.getContext&&e.getContext("2d")||null}updateConfig(e){e.options.animation=!1}}const ao="$chartjs",Rk={touchstart:"mousedown",touchmove:"mousemove",touchend:"mouseup",pointerenter:"mouseenter",pointerdown:"mousedown",pointermove:"mousemove",pointerup:"mouseup",pointerleave:"mouseout",pointerout:"mouseout"},Kd=t=>t===null||t==="";function Ik(t,e){const n=t.style,i=t.getAttribute("height"),r=t.getAttribute("width");if(t[ao]={initial:{height:i,width:r,style:{display:n.display,height:n.height,width:n.width}}},n.display=n.display||"block",n.boxSizing=n.boxSizing||"border-box",Kd(r)){const s=Md(t,"width");s!==void 0&&(t.width=s)}if(Kd(i))if(t.style.height==="")t.height=t.width/(e||2);else{const s=Md(t,"height");s!==void 0&&(t.height=s)}return t}const Nm=V1?{passive:!0}:!1;function Ak(t,e,n){t&&t.addEventListener(e,n,Nm)}function Dk(t,e,n){t&&t.canvas&&t.canvas.removeEventListener(e,n,Nm)}function jk(t,e){const n=Rk[t.type]||t.type,{x:i,y:r}=Mn(t,e);return{type:n,chart:e,native:t,x:i!==void 0?i:null,y:r!==void 0?r:null}}function Vo(t,e){for(const n of t)if(n===e||n.contains(e))return!0}function Nk(t,e,n){const i=t.canvas,r=new MutationObserver(s=>{let o=!1;for(const a of s)o=o||Vo(a.addedNodes,i),o=o&&!Vo(a.removedNodes,i);o&&n()});return r.observe(document,{childList:!0,subtree:!0}),r}function zk(t,e,n){const i=t.canvas,r=new MutationObserver(s=>{let o=!1;for(const a of s)o=o||Vo(a.removedNodes,i),o=o&&!Vo(a.addedNodes,i);o&&n()});return r.observe(document,{childList:!0,subtree:!0}),r}const ts=new Map;let Yd=0;function zm(){const t=window.devicePixelRatio;t!==Yd&&(Yd=t,ts.forEach((e,n)=>{n.currentDevicePixelRatio!==t&&e()}))}function Fk(t,e){ts.size||window.addEventListener("resize",zm),ts.set(t,e)}function $k(t){ts.delete(t),ts.size||window.removeEventListener("resize",zm)}function Uk(t,e,n){const i=t.canvas,r=i&&Rc(i);if(!r)return;const s=wm((a,l)=>{const u=r.clientWidth;n(a,l),u<r.clientWidth&&n()},window),o=new ResizeObserver(a=>{const l=a[0],u=l.contentRect.width,c=l.contentRect.height;u===0&&c===0||s(u,c)});return o.observe(r),Fk(t,s),o}function sl(t,e,n){n&&n.disconnect(),e==="resize"&&$k(t)}function Bk(t,e,n){const i=t.canvas,r=wm(s=>{t.ctx!==null&&n(jk(s,t))},t);return Ak(i,e,r),r}class Vk extends jm{acquireContext(e,n){const i=e&&e.getContext&&e.getContext("2d");return i&&i.canvas===e?(Ik(e,n),i):null}releaseContext(e){const n=e.canvas;if(!n[ao])return!1;const i=n[ao].initial;["height","width"].forEach(s=>{const o=i[s];J(o)?n.removeAttribute(s):n.setAttribute(s,o)});const r=i.style||{};return Object.keys(r).forEach(s=>{n.style[s]=r[s]}),n.width=n.width,delete n[ao],!0}addEventListener(e,n,i){this.removeEventListener(e,n);const r=e.$proxies||(e.$proxies={}),o={attach:Nk,detach:zk,resize:Uk}[n]||Bk;r[n]=o(e,n,i)}removeEventListener(e,n){const i=e.$proxies||(e.$proxies={}),r=i[n];if(!r)return;({attach:sl,detach:sl,resize:sl}[n]||Dk)(e,n,r),i[n]=void 0}getDevicePixelRatio(){return window.devicePixelRatio}getMaximumSize(e,n,i,r){return B1(e,n,i,r)}isAttached(e){const n=e&&Rc(e);return!!(n&&n.isConnected)}}function Hk(t){return!Mc()||typeof OffscreenCanvas<"u"&&t instanceof OffscreenCanvas?Mk:Vk}class yn{constructor(){I(this,"x");I(this,"y");I(this,"active",!1);I(this,"options");I(this,"$animations")}tooltipPosition(e){const{x:n,y:i}=this.getProps(["x","y"],e);return{x:n,y:i}}hasValue(){return Zr(this.x)&&Zr(this.y)}getProps(e,n){const i=this.$animations;if(!n||!i)return this;const r={};return e.forEach(s=>{r[s]=i[s]&&i[s].active()?i[s]._to:this[s]}),r}}I(yn,"defaults",{}),I(yn,"defaultRoutes");function Wk(t,e){const n=t.options.ticks,i=Kk(t),r=Math.min(n.maxTicksLimit||i,i),s=n.major.enabled?Gk(e):[],o=s.length,a=s[0],l=s[o-1],u=[];if(o>r)return qk(e,u,s,o/r),u;const c=Yk(s,e,r);if(o>0){let h,d;const f=o>1?Math.round((l-a)/(o-1)):null;for($s(e,u,c,J(f)?0:a-f,a),h=0,d=o-1;h<d;h++)$s(e,u,c,s[h],s[h+1]);return $s(e,u,c,l,J(f)?e.length:l+f),u}return $s(e,u,c),u}function Kk(t){const e=t.options.offset,n=t._tickSize(),i=t._length/n+(e?0:1),r=t._maxLength/n;return Math.floor(Math.min(i,r))}function Yk(t,e,n){const i=Qk(t),r=e.length/n;if(!i)return Math.max(r,1);const s=$x(i);for(let o=0,a=s.length-1;o<a;o++){const l=s[o];if(l>r)return l}return Math.max(r,1)}function Gk(t){const e=[];let n,i;for(n=0,i=t.length;n<i;n++)t[n].major&&e.push(n);return e}function qk(t,e,n,i){let r=0,s=n[0],o;for(i=Math.ceil(i),o=0;o<t.length;o++)o===s&&(e.push(t[o]),r++,s=n[r*i])}function $s(t,e,n,i,r){const s=W(i,0),o=Math.min(W(r,t.length),t.length);let a=0,l,u,c;for(n=Math.ceil(n),r&&(l=r-i,n=l/Math.floor(l/n)),c=s;c<0;)a++,c=Math.round(s+a*n);for(u=Math.max(s,0);u<o;u++)u===c&&(e.push(t[u]),a++,c=Math.round(s+a*n))}function Qk(t){const e=t.length;let n,i;if(e<2)return!1;for(i=t[0],n=1;n<e;++n)if(t[n]-t[n-1]!==i)return!1;return i}const Xk=t=>t==="left"?"right":t==="right"?"left":t,Gd=(t,e,n)=>e==="top"||e==="left"?t[e]+n:t[e]-n,qd=(t,e)=>Math.min(e||t,t);function Qd(t,e){const n=[],i=t.length/e,r=t.length;let s=0;for(;s<r;s+=i)n.push(t[Math.floor(s)]);return n}function Jk(t,e,n){const i=t.ticks.length,r=Math.min(e,i-1),s=t._startPixel,o=t._endPixel,a=1e-6;let l=t.getPixelForTick(r),u;if(!(n&&(i===1?u=Math.max(l-s,o-l):e===0?u=(t.getPixelForTick(1)-l)/2:u=(l-t.getPixelForTick(r-1))/2,l+=r<e?u:-u,l<s-a||l>o+a)))return l}function Zk(t,e){V(t,n=>{const i=n.gc,r=i.length/2;let s;if(r>e){for(s=0;s<r;++s)delete n.data[i[s]];i.splice(0,r)}})}function nr(t){return t.drawTicks?t.tickLength:0}function Xd(t,e){if(!t.display)return 0;const n=Me(t.font,e),i=qe(t.padding);return(oe(t.text)?t.text.length:1)*n.lineHeight+i.height}function eb(t,e){return xn(t,{scale:e,type:"scale"})}function tb(t,e,n){return xn(t,{tick:n,index:e,type:"tick"})}function nb(t,e,n){let i=xm(t);return(n&&e!=="right"||!n&&e==="right")&&(i=Xk(i)),i}function ib(t,e,n,i){const{top:r,left:s,bottom:o,right:a,chart:l}=t,{chartArea:u,scales:c}=l;let h=0,d,f,m;const y=o-r,v=a-s;if(t.isHorizontal()){if(f=Er(i,s,a),U(n)){const p=Object.keys(n)[0],g=n[p];m=c[p].getPixelForValue(g)+y-e}else n==="center"?m=(u.bottom+u.top)/2+y-e:m=Gd(t,n,e);d=a-s}else{if(U(n)){const p=Object.keys(n)[0],g=n[p];f=c[p].getPixelForValue(g)-v+e}else n==="center"?f=(u.left+u.right)/2-v+e:f=Gd(t,n,e);m=Er(i,o,r),h=n==="left"?-Ke:Ke}return{titleX:f,titleY:m,maxWidth:d,rotation:h}}class Xn extends yn{constructor(e){super(),this.id=e.id,this.type=e.type,this.options=void 0,this.ctx=e.ctx,this.chart=e.chart,this.top=void 0,this.bottom=void 0,this.left=void 0,this.right=void 0,this.width=void 0,this.height=void 0,this._margins={left:0,right:0,top:0,bottom:0},this.maxWidth=void 0,this.maxHeight=void 0,this.paddingTop=void 0,this.paddingBottom=void 0,this.paddingLeft=void 0,this.paddingRight=void 0,this.axis=void 0,this.labelRotation=void 0,this.min=void 0,this.max=void 0,this._range=void 0,this.ticks=[],this._gridLineItems=null,this._labelItems=null,this._labelSizes=null,this._length=0,this._maxLength=0,this._longestTextCache={},this._startPixel=void 0,this._endPixel=void 0,this._reversePixels=!1,this._userMax=void 0,this._userMin=void 0,this._suggestedMax=void 0,this._suggestedMin=void 0,this._ticksLength=0,this._borderValue=0,this._cache={},this._dataLimitsCached=!1,this.$context=void 0}init(e){this.options=e.setContext(this.getContext()),this.axis=e.axis,this._userMin=this.parse(e.min),this._userMax=this.parse(e.max),this._suggestedMin=this.parse(e.suggestedMin),this._suggestedMax=this.parse(e.suggestedMax)}parse(e,n){return e}getUserBounds(){let{_userMin:e,_userMax:n,_suggestedMin:i,_suggestedMax:r}=this;return e=Ve(e,Number.POSITIVE_INFINITY),n=Ve(n,Number.NEGATIVE_INFINITY),i=Ve(i,Number.POSITIVE_INFINITY),r=Ve(r,Number.NEGATIVE_INFINITY),{min:Ve(e,i),max:Ve(n,r),minDefined:ve(e),maxDefined:ve(n)}}getMinMax(e){let{min:n,max:i,minDefined:r,maxDefined:s}=this.getUserBounds(),o;if(r&&s)return{min:n,max:i};const a=this.getMatchingVisibleMetas();for(let l=0,u=a.length;l<u;++l)o=a[l].controller.getMinMax(this,e),r||(n=Math.min(n,o.min)),s||(i=Math.max(i,o.max));return n=s&&n>i?i:n,i=r&&n>i?n:i,{min:Ve(n,Ve(i,n)),max:Ve(i,Ve(n,i))}}getPadding(){return{left:this.paddingLeft||0,top:this.paddingTop||0,right:this.paddingRight||0,bottom:this.paddingBottom||0}}getTicks(){return this.ticks}getLabels(){const e=this.chart.data;return this.options.labels||(this.isHorizontal()?e.xLabels:e.yLabels)||e.labels||[]}getLabelItems(e=this.chart.chartArea){return this._labelItems||(this._labelItems=this._computeLabelItems(e))}beforeLayout(){this._cache={},this._dataLimitsCached=!1}beforeUpdate(){re(this.options.beforeUpdate,[this])}update(e,n,i){const{beginAtZero:r,grace:s,ticks:o}=this.options,a=o.sampleSize;this.beforeUpdate(),this.maxWidth=e,this.maxHeight=n,this._margins=i=Object.assign({left:0,right:0,top:0,bottom:0},i),this.ticks=null,this._labelSizes=null,this._gridLineItems=null,this._labelItems=null,this.beforeSetDimensions(),this.setDimensions(),this.afterSetDimensions(),this._maxLength=this.isHorizontal()?this.width+i.left+i.right:this.height+i.top+i.bottom,this._dataLimitsCached||(this.beforeDataLimits(),this.determineDataLimits(),this.afterDataLimits(),this._range=w1(this,s,r),this._dataLimitsCached=!0),this.beforeBuildTicks(),this.ticks=this.buildTicks()||[],this.afterBuildTicks();const l=a<this.ticks.length;this._convertTicksToLabels(l?Qd(this.ticks,a):this.ticks),this.configure(),this.beforeCalculateLabelRotation(),this.calculateLabelRotation(),this.afterCalculateLabelRotation(),o.display&&(o.autoSkip||o.source==="auto")&&(this.ticks=Wk(this,this.ticks),this._labelSizes=null,this.afterAutoSkip()),l&&this._convertTicksToLabels(this.ticks),this.beforeFit(),this.fit(),this.afterFit(),this.afterUpdate()}configure(){let e=this.options.reverse,n,i;this.isHorizontal()?(n=this.left,i=this.right):(n=this.top,i=this.bottom,e=!e),this._startPixel=n,this._endPixel=i,this._reversePixels=e,this._length=i-n,this._alignToPixels=this.options.alignToPixels}afterUpdate(){re(this.options.afterUpdate,[this])}beforeSetDimensions(){re(this.options.beforeSetDimensions,[this])}setDimensions(){this.isHorizontal()?(this.width=this.maxWidth,this.left=0,this.right=this.width):(this.height=this.maxHeight,this.top=0,this.bottom=this.height),this.paddingLeft=0,this.paddingTop=0,this.paddingRight=0,this.paddingBottom=0}afterSetDimensions(){re(this.options.afterSetDimensions,[this])}_callHooks(e){this.chart.notifyPlugins(e,this.getContext()),re(this.options[e],[this])}beforeDataLimits(){this._callHooks("beforeDataLimits")}determineDataLimits(){}afterDataLimits(){this._callHooks("afterDataLimits")}beforeBuildTicks(){this._callHooks("beforeBuildTicks")}buildTicks(){return[]}afterBuildTicks(){this._callHooks("afterBuildTicks")}beforeTickToLabelConversion(){re(this.options.beforeTickToLabelConversion,[this])}generateTickLabels(e){const n=this.options.ticks;let i,r,s;for(i=0,r=e.length;i<r;i++)s=e[i],s.label=re(n.callback,[s.value,i,e],this)}afterTickToLabelConversion(){re(this.options.afterTickToLabelConversion,[this])}beforeCalculateLabelRotation(){re(this.options.beforeCalculateLabelRotation,[this])}calculateLabelRotation(){const e=this.options,n=e.ticks,i=qd(this.ticks.length,e.ticks.maxTicksLimit),r=n.minRotation||0,s=n.maxRotation;let o=r,a,l,u;if(!this._isVisible()||!n.display||r>=s||i<=1||!this.isHorizontal()){this.labelRotation=r;return}const c=this._getLabelSizes(),h=c.widest.width,d=c.highest.height,f=it(this.chart.width-h,0,this.maxWidth);a=e.offset?this.maxWidth/i:f/(i-1),h+6>a&&(a=f/(i-(e.offset?.5:1)),l=this.maxHeight-nr(e.grid)-n.padding-Xd(e.title,this.chart.options.font),u=Math.sqrt(h*h+d*d),o=Sc(Math.min(Math.asin(it((c.highest.height+6)/a,-1,1)),Math.asin(it(l/u,-1,1))-Math.asin(it(d/u,-1,1)))),o=Math.max(r,Math.min(s,o))),this.labelRotation=o}afterCalculateLabelRotation(){re(this.options.afterCalculateLabelRotation,[this])}afterAutoSkip(){}beforeFit(){re(this.options.beforeFit,[this])}fit(){const e={width:0,height:0},{chart:n,options:{ticks:i,title:r,grid:s}}=this,o=this._isVisible(),a=this.isHorizontal();if(o){const l=Xd(r,n.options.font);if(a?(e.width=this.maxWidth,e.height=nr(s)+l):(e.height=this.maxHeight,e.width=nr(s)+l),i.display&&this.ticks.length){const{first:u,last:c,widest:h,highest:d}=this._getLabelSizes(),f=i.padding*2,m=nn(this.labelRotation),y=Math.cos(m),v=Math.sin(m);if(a){const p=i.mirror?0:v*h.width+y*d.height;e.height=Math.min(this.maxHeight,e.height+p+f)}else{const p=i.mirror?0:y*h.width+v*d.height;e.width=Math.min(this.maxWidth,e.width+p+f)}this._calculatePadding(u,c,v,y)}}this._handleMargins(),a?(this.width=this._length=n.width-this._margins.left-this._margins.right,this.height=e.height):(this.width=e.width,this.height=this._length=n.height-this._margins.top-this._margins.bottom)}_calculatePadding(e,n,i,r){const{ticks:{align:s,padding:o},position:a}=this.options,l=this.labelRotation!==0,u=a!=="top"&&this.axis==="x";if(this.isHorizontal()){const c=this.getPixelForTick(0)-this.left,h=this.right-this.getPixelForTick(this.ticks.length-1);let d=0,f=0;l?u?(d=r*e.width,f=i*n.height):(d=i*e.height,f=r*n.width):s==="start"?f=n.width:s==="end"?d=e.width:s!=="inner"&&(d=e.width/2,f=n.width/2),this.paddingLeft=Math.max((d-c+o)*this.width/(this.width-c),0),this.paddingRight=Math.max((f-h+o)*this.width/(this.width-h),0)}else{let c=n.height/2,h=e.height/2;s==="start"?(c=0,h=e.height):s==="end"&&(c=n.height,h=0),this.paddingTop=c+o,this.paddingBottom=h+o}}_handleMargins(){this._margins&&(this._margins.left=Math.max(this.paddingLeft,this._margins.left),this._margins.top=Math.max(this.paddingTop,this._margins.top),this._margins.right=Math.max(this.paddingRight,this._margins.right),this._margins.bottom=Math.max(this.paddingBottom,this._margins.bottom))}afterFit(){re(this.options.afterFit,[this])}isHorizontal(){const{axis:e,position:n}=this.options;return n==="top"||n==="bottom"||e==="x"}isFullSize(){return this.options.fullSize}_convertTicksToLabels(e){this.beforeTickToLabelConversion(),this.generateTickLabels(e);let n,i;for(n=0,i=e.length;n<i;n++)J(e[n].label)&&(e.splice(n,1),i--,n--);this.afterTickToLabelConversion()}_getLabelSizes(){let e=this._labelSizes;if(!e){const n=this.options.ticks.sampleSize;let i=this.ticks;n<i.length&&(i=Qd(i,n)),this._labelSizes=e=this._computeLabelSizes(i,i.length,this.options.ticks.maxTicksLimit)}return e}_computeLabelSizes(e,n,i){const{ctx:r,_longestTextCache:s}=this,o=[],a=[],l=Math.floor(n/qd(n,i));let u=0,c=0,h,d,f,m,y,v,p,g,_,w,x;for(h=0;h<n;h+=l){if(m=e[h].label,y=this._resolveTickFontOptions(h),r.font=v=y.string,p=s[v]=s[v]||{data:{},gc:[]},g=y.lineHeight,_=w=0,!J(m)&&!oe(m))_=Uo(r,p.data,p.gc,_,m),w=g;else if(oe(m))for(d=0,f=m.length;d<f;++d)x=m[d],!J(x)&&!oe(x)&&(_=Uo(r,p.data,p.gc,_,x),w+=g);o.push(_),a.push(w),u=Math.max(_,u),c=Math.max(w,c)}Zk(s,n);const b=o.indexOf(u),k=a.indexOf(c),S=M=>({width:o[M]||0,height:a[M]||0});return{first:S(0),last:S(n-1),widest:S(b),highest:S(k),widths:o,heights:a}}getLabelForValue(e){return e}getPixelForValue(e,n){return NaN}getValueForPixel(e){}getPixelForTick(e){const n=this.ticks;return e<0||e>n.length-1?null:this.getPixelForValue(n[e].value)}getPixelForDecimal(e){this._reversePixels&&(e=1-e);const n=this._startPixel+e*this._length;return Hx(this._alignToPixels?Cn(this.chart,n,0):n)}getDecimalForPixel(e){const n=(e-this._startPixel)/this._length;return this._reversePixels?1-n:n}getBasePixel(){return this.getPixelForValue(this.getBaseValue())}getBaseValue(){const{min:e,max:n}=this;return e<0&&n<0?n:e>0&&n>0?e:0}getContext(e){const n=this.ticks||[];if(e>=0&&e<n.length){const i=n[e];return i.$context||(i.$context=tb(this.getContext(),e,i))}return this.$context||(this.$context=eb(this.chart.getContext(),this))}_tickSize(){const e=this.options.ticks,n=nn(this.labelRotation),i=Math.abs(Math.cos(n)),r=Math.abs(Math.sin(n)),s=this._getLabelSizes(),o=e.autoSkipPadding||0,a=s?s.widest.width+o:0,l=s?s.highest.height+o:0;return this.isHorizontal()?l*i>a*r?a/i:l/r:l*r<a*i?l/i:a/r}_isVisible(){const e=this.options.display;return e!=="auto"?!!e:this.getMatchingVisibleMetas().length>0}_computeGridLineItems(e){const n=this.axis,i=this.chart,r=this.options,{grid:s,position:o,border:a}=r,l=s.offset,u=this.isHorizontal(),h=this.ticks.length+(l?1:0),d=nr(s),f=[],m=a.setContext(this.getContext()),y=m.display?m.width:0,v=y/2,p=function(K){return Cn(i,K,y)};let g,_,w,x,b,k,S,M,L,D,B,ce;if(o==="top")g=p(this.bottom),k=this.bottom-d,M=g-v,D=p(e.top)+v,ce=e.bottom;else if(o==="bottom")g=p(this.top),D=e.top,ce=p(e.bottom)-v,k=g+v,M=this.top+d;else if(o==="left")g=p(this.right),b=this.right-d,S=g-v,L=p(e.left)+v,B=e.right;else if(o==="right")g=p(this.left),L=e.left,B=p(e.right)-v,b=g+v,S=this.left+d;else if(n==="x"){if(o==="center")g=p((e.top+e.bottom)/2+.5);else if(U(o)){const K=Object.keys(o)[0],me=o[K];g=p(this.chart.scales[K].getPixelForValue(me))}D=e.top,ce=e.bottom,k=g+v,M=k+d}else if(n==="y"){if(o==="center")g=p((e.left+e.right)/2);else if(U(o)){const K=Object.keys(o)[0],me=o[K];g=p(this.chart.scales[K].getPixelForValue(me))}b=g-v,S=b-d,L=e.left,B=e.right}const ae=W(r.ticks.maxTicksLimit,h),$=Math.max(1,Math.ceil(h/ae));for(_=0;_<h;_+=$){const K=this.getContext(_),me=s.setContext(K),T=a.setContext(K),R=me.lineWidth,A=me.color,Y=T.dash||[],Q=T.dashOffset,vt=me.tickWidth,Te=me.tickColor,Et=me.tickBorderDash||[],Oe=me.tickBorderDashOffset;w=Jk(this,_,l),w!==void 0&&(x=Cn(i,w,R),u?b=S=L=B=x:k=M=D=ce=x,f.push({tx1:b,ty1:k,tx2:S,ty2:M,x1:L,y1:D,x2:B,y2:ce,width:R,color:A,borderDash:Y,borderDashOffset:Q,tickWidth:vt,tickColor:Te,tickBorderDash:Et,tickBorderDashOffset:Oe}))}return this._ticksLength=h,this._borderValue=g,f}_computeLabelItems(e){const n=this.axis,i=this.options,{position:r,ticks:s}=i,o=this.isHorizontal(),a=this.ticks,{align:l,crossAlign:u,padding:c,mirror:h}=s,d=nr(i.grid),f=d+c,m=h?-c:f,y=-nn(this.labelRotation),v=[];let p,g,_,w,x,b,k,S,M,L,D,B,ce="middle";if(r==="top")b=this.bottom-m,k=this._getXAxisLabelAlignment();else if(r==="bottom")b=this.top+m,k=this._getXAxisLabelAlignment();else if(r==="left"){const $=this._getYAxisLabelAlignment(d);k=$.textAlign,x=$.x}else if(r==="right"){const $=this._getYAxisLabelAlignment(d);k=$.textAlign,x=$.x}else if(n==="x"){if(r==="center")b=(e.top+e.bottom)/2+f;else if(U(r)){const $=Object.keys(r)[0],K=r[$];b=this.chart.scales[$].getPixelForValue(K)+f}k=this._getXAxisLabelAlignment()}else if(n==="y"){if(r==="center")x=(e.left+e.right)/2-f;else if(U(r)){const $=Object.keys(r)[0],K=r[$];x=this.chart.scales[$].getPixelForValue(K)}k=this._getYAxisLabelAlignment(d).textAlign}n==="y"&&(l==="start"?ce="top":l==="end"&&(ce="bottom"));const ae=this._getLabelSizes();for(p=0,g=a.length;p<g;++p){_=a[p],w=_.label;const $=s.setContext(this.getContext(p));S=this.getPixelForTick(p)+s.labelOffset,M=this._resolveTickFontOptions(p),L=M.lineHeight,D=oe(w)?w.length:1;const K=D/2,me=$.color,T=$.textStrokeColor,R=$.textStrokeWidth;let A=k;o?(x=S,k==="inner"&&(p===g-1?A=this.options.reverse?"left":"right":p===0?A=this.options.reverse?"right":"left":A="center"),r==="top"?u==="near"||y!==0?B=-D*L+L/2:u==="center"?B=-ae.highest.height/2-K*L+L:B=-ae.highest.height+L/2:u==="near"||y!==0?B=L/2:u==="center"?B=ae.highest.height/2-K*L:B=ae.highest.height-D*L,h&&(B*=-1),y!==0&&!$.showLabelBackdrop&&(x+=L/2*Math.sin(y))):(b=S,B=(1-D)*L/2);let Y;if($.showLabelBackdrop){const Q=qe($.backdropPadding),vt=ae.heights[p],Te=ae.widths[p];let Et=B-Q.top,Oe=0-Q.left;switch(ce){case"middle":Et-=vt/2;break;case"bottom":Et-=vt;break}switch(k){case"center":Oe-=Te/2;break;case"right":Oe-=Te;break;case"inner":p===g-1?Oe-=Te:p>0&&(Oe-=Te/2);break}Y={left:Oe,top:Et,width:Te+Q.width,height:vt+Q.height,color:$.backdropColor}}v.push({label:w,font:M,textOffset:B,options:{rotation:y,color:me,strokeColor:T,strokeWidth:R,textAlign:A,textBaseline:ce,translation:[x,b],backdrop:Y}})}return v}_getXAxisLabelAlignment(){const{position:e,ticks:n}=this.options;if(-nn(this.labelRotation))return e==="top"?"left":"right";let r="center";return n.align==="start"?r="left":n.align==="end"?r="right":n.align==="inner"&&(r="inner"),r}_getYAxisLabelAlignment(e){const{position:n,ticks:{crossAlign:i,mirror:r,padding:s}}=this.options,o=this._getLabelSizes(),a=e+s,l=o.widest.width;let u,c;return n==="left"?r?(c=this.right+s,i==="near"?u="left":i==="center"?(u="center",c+=l/2):(u="right",c+=l)):(c=this.right-a,i==="near"?u="right":i==="center"?(u="center",c-=l/2):(u="left",c=this.left)):n==="right"?r?(c=this.left+s,i==="near"?u="right":i==="center"?(u="center",c-=l/2):(u="left",c-=l)):(c=this.left+a,i==="near"?u="left":i==="center"?(u="center",c+=l/2):(u="right",c=this.right)):u="right",{textAlign:u,x:c}}_computeLabelArea(){if(this.options.ticks.mirror)return;const e=this.chart,n=this.options.position;if(n==="left"||n==="right")return{top:0,left:this.left,bottom:e.height,right:this.right};if(n==="top"||n==="bottom")return{top:this.top,left:0,bottom:this.bottom,right:e.width}}drawBackground(){const{ctx:e,options:{backgroundColor:n},left:i,top:r,width:s,height:o}=this;n&&(e.save(),e.fillStyle=n,e.fillRect(i,r,s,o),e.restore())}getLineWidthForValue(e){const n=this.options.grid;if(!this._isVisible()||!n.display)return 0;const r=this.ticks.findIndex(s=>s.value===e);return r>=0?n.setContext(this.getContext(r)).lineWidth:0}drawGrid(e){const n=this.options.grid,i=this.ctx,r=this._gridLineItems||(this._gridLineItems=this._computeGridLineItems(e));let s,o;const a=(l,u,c)=>{!c.width||!c.color||(i.save(),i.lineWidth=c.width,i.strokeStyle=c.color,i.setLineDash(c.borderDash||[]),i.lineDashOffset=c.borderDashOffset,i.beginPath(),i.moveTo(l.x,l.y),i.lineTo(u.x,u.y),i.stroke(),i.restore())};if(n.display)for(s=0,o=r.length;s<o;++s){const l=r[s];n.drawOnChartArea&&a({x:l.x1,y:l.y1},{x:l.x2,y:l.y2},l),n.drawTicks&&a({x:l.tx1,y:l.ty1},{x:l.tx2,y:l.ty2},{color:l.tickColor,width:l.tickWidth,borderDash:l.tickBorderDash,borderDashOffset:l.tickBorderDashOffset})}}drawBorder(){const{chart:e,ctx:n,options:{border:i,grid:r}}=this,s=i.setContext(this.getContext()),o=i.display?s.width:0;if(!o)return;const a=r.setContext(this.getContext(0)).lineWidth,l=this._borderValue;let u,c,h,d;this.isHorizontal()?(u=Cn(e,this.left,o)-o/2,c=Cn(e,this.right,a)+a/2,h=d=l):(h=Cn(e,this.top,o)-o/2,d=Cn(e,this.bottom,a)+a/2,u=c=l),n.save(),n.lineWidth=s.width,n.strokeStyle=s.color,n.beginPath(),n.moveTo(u,h),n.lineTo(c,d),n.stroke(),n.restore()}drawLabels(e){if(!this.options.ticks.display)return;const i=this.ctx,r=this._computeLabelArea();r&&bm(i,r);const s=this.getLabelItems(e);for(const o of s){const a=o.options,l=o.font,u=o.label,c=o.textOffset;es(i,u,0,c,l,a)}r&&Sm(i)}drawTitle(){const{ctx:e,options:{position:n,title:i,reverse:r}}=this;if(!i.display)return;const s=Me(i.font),o=qe(i.padding),a=i.align;let l=s.lineHeight/2;n==="bottom"||n==="center"||U(n)?(l+=o.bottom,oe(i.text)&&(l+=s.lineHeight*(i.text.length-1))):l+=o.top;const{titleX:u,titleY:c,maxWidth:h,rotation:d}=ib(this,l,n,a);es(e,i.text,0,0,s,{color:i.color,maxWidth:h,rotation:d,textAlign:nb(a,n,r),textBaseline:"middle",translation:[u,c]})}draw(e){this._isVisible()&&(this.drawBackground(),this.drawGrid(e),this.drawBorder(),this.drawTitle(),this.drawLabels(e))}_layers(){const e=this.options,n=e.ticks&&e.ticks.z||0,i=W(e.grid&&e.grid.z,-1),r=W(e.border&&e.border.z,0);return!this._isVisible()||this.draw!==Xn.prototype.draw?[{z:n,draw:s=>{this.draw(s)}}]:[{z:i,draw:s=>{this.drawBackground(),this.drawGrid(s),this.drawTitle()}},{z:r,draw:()=>{this.drawBorder()}},{z:n,draw:s=>{this.drawLabels(s)}}]}getMatchingVisibleMetas(e){const n=this.chart.getSortedVisibleDatasetMetas(),i=this.axis+"AxisID",r=[];let s,o;for(s=0,o=n.length;s<o;++s){const a=n[s];a[i]===this.id&&(!e||a.type===e)&&r.push(a)}return r}_resolveTickFontOptions(e){const n=this.options.ticks.setContext(this.getContext(e));return Me(n.font)}_maxDigits(){const e=this._resolveTickFontOptions(0).lineHeight;return(this.isHorizontal()?this.width:this.height)/e}}class Us{constructor(e,n,i){this.type=e,this.scope=n,this.override=i,this.items=Object.create(null)}isForType(e){return Object.prototype.isPrototypeOf.call(this.type.prototype,e.prototype)}register(e){const n=Object.getPrototypeOf(e);let i;ob(n)&&(i=this.register(n));const r=this.items,s=e.id,o=this.scope+"."+s;if(!s)throw new Error("class does not have id: "+e);return s in r||(r[s]=e,rb(e,o,i),this.override&&ue.override(e.id,e.overrides)),o}get(e){return this.items[e]}unregister(e){const n=this.items,i=e.id,r=this.scope;i in n&&delete n[i],r&&i in ue[r]&&(delete ue[r][i],this.override&&delete Yn[i])}}function rb(t,e,n){const i=Jr(Object.create(null),[n?ue.get(n):{},ue.get(e),t.defaults]);ue.set(e,i),t.defaultRoutes&&sb(e,t.defaultRoutes),t.descriptors&&ue.describe(e,t.descriptors)}function sb(t,e){Object.keys(e).forEach(n=>{const i=n.split("."),r=i.pop(),s=[t].concat(i).join("."),o=e[n].split("."),a=o.pop(),l=o.join(".");ue.route(s,r,l,a)})}function ob(t){return"id"in t&&"defaults"in t}class ab{constructor(){this.controllers=new Us(Lr,"datasets",!0),this.elements=new Us(yn,"elements"),this.plugins=new Us(Object,"plugins"),this.scales=new Us(Xn,"scales"),this._typedRegistries=[this.controllers,this.scales,this.elements]}add(...e){this._each("register",e)}remove(...e){this._each("unregister",e)}addControllers(...e){this._each("register",e,this.controllers)}addElements(...e){this._each("register",e,this.elements)}addPlugins(...e){this._each("register",e,this.plugins)}addScales(...e){this._each("register",e,this.scales)}getController(e){return this._get(e,this.controllers,"controller")}getElement(e){return this._get(e,this.elements,"element")}getPlugin(e){return this._get(e,this.plugins,"plugin")}getScale(e){return this._get(e,this.scales,"scale")}removeControllers(...e){this._each("unregister",e,this.controllers)}removeElements(...e){this._each("unregister",e,this.elements)}removePlugins(...e){this._each("unregister",e,this.plugins)}removeScales(...e){this._each("unregister",e,this.scales)}_each(e,n,i){[...n].forEach(r=>{const s=i||this._getRegistryForType(r);i||s.isForType(r)||s===this.plugins&&r.id?this._exec(e,s,r):V(r,o=>{const a=i||this._getRegistryForType(o);this._exec(e,a,o)})})}_exec(e,n,i){const r=bc(e);re(i["before"+r],[],i),n[e](i),re(i["after"+r],[],i)}_getRegistryForType(e){for(let n=0;n<this._typedRegistries.length;n++){const i=this._typedRegistries[n];if(i.isForType(e))return i}return this.plugins}_get(e,n,i){const r=n.get(e);if(r===void 0)throw new Error('"'+e+'" is not a registered '+i+".");return r}}var kt=new ab;class lb{constructor(){this._init=[]}notify(e,n,i,r){n==="beforeInit"&&(this._init=this._createDescriptors(e,!0),this._notify(this._init,e,"install"));const s=r?this._descriptors(e).filter(r):this._descriptors(e),o=this._notify(s,e,n,i);return n==="afterDestroy"&&(this._notify(s,e,"stop"),this._notify(this._init,e,"uninstall")),o}_notify(e,n,i,r){r=r||{};for(const s of e){const o=s.plugin,a=o[i],l=[n,r,s.options];if(re(a,l,o)===!1&&r.cancelable)return!1}return!0}invalidate(){J(this._cache)||(this._oldCache=this._cache,this._cache=void 0)}_descriptors(e){if(this._cache)return this._cache;const n=this._cache=this._createDescriptors(e);return this._notifyStateChanges(e),n}_createDescriptors(e,n){const i=e&&e.config,r=W(i.options&&i.options.plugins,{}),s=ub(i);return r===!1&&!n?[]:hb(e,s,r,n)}_notifyStateChanges(e){const n=this._oldCache||[],i=this._cache,r=(s,o)=>s.filter(a=>!o.some(l=>a.plugin.id===l.plugin.id));this._notify(r(n,i),e,"stop"),this._notify(r(i,n),e,"start")}}function ub(t){const e={},n=[],i=Object.keys(kt.plugins.items);for(let s=0;s<i.length;s++)n.push(kt.getPlugin(i[s]));const r=t.plugins||[];for(let s=0;s<r.length;s++){const o=r[s];n.indexOf(o)===-1&&(n.push(o),e[o.id]=!0)}return{plugins:n,localIds:e}}function cb(t,e){return!e&&t===!1?null:t===!0?{}:t}function hb(t,{plugins:e,localIds:n},i,r){const s=[],o=t.getContext();for(const a of e){const l=a.id,u=cb(i[l],r);u!==null&&s.push({plugin:a,options:db(t.config,{plugin:a,local:n[l]},u,o)})}return s}function db(t,{plugin:e,local:n},i,r){const s=t.pluginScopeKeys(e),o=t.getOptionScopes(i,s);return n&&e.defaults&&o.push(e.defaults),t.createResolver(o,r,[""],{scriptable:!1,indexable:!1,allKeys:!0})}function du(t,e){const n=ue.datasets[t]||{};return((e.datasets||{})[t]||{}).indexAxis||e.indexAxis||n.indexAxis||"x"}function fb(t,e){let n=t;return t==="_index_"?n=e:t==="_value_"&&(n=e==="x"?"y":"x"),n}function pb(t,e){return t===e?"_index_":"_value_"}function Jd(t){if(t==="x"||t==="y"||t==="r")return t}function gb(t){if(t==="top"||t==="bottom")return"x";if(t==="left"||t==="right")return"y"}function fu(t,...e){if(Jd(t))return t;for(const n of e){const i=n.axis||gb(n.position)||t.length>1&&Jd(t[0].toLowerCase());if(i)return i}throw new Error(`Cannot determine type of '${t}' axis. Please provide 'axis' or 'position' option.`)}function Zd(t,e,n){if(n[e+"AxisID"]===t)return{axis:e}}function mb(t,e){if(e.data&&e.data.datasets){const n=e.data.datasets.filter(i=>i.xAxisID===t||i.yAxisID===t);if(n.length)return Zd(t,"x",n[0])||Zd(t,"y",n[0])}return{}}function yb(t,e){const n=Yn[t.type]||{scales:{}},i=e.scales||{},r=du(t.type,e),s=Object.create(null);return Object.keys(i).forEach(o=>{const a=i[o];if(!U(a))return console.error(`Invalid scale configuration for scale: ${o}`);if(a._proxy)return console.warn(`Ignoring resolver passed as options for scale: ${o}`);const l=fu(o,a,mb(o,t),ue.scales[a.type]),u=pb(l,r),c=n.scales||{};s[o]=Sr(Object.create(null),[{axis:l},a,c[l],c[u]])}),t.data.datasets.forEach(o=>{const a=o.type||t.type,l=o.indexAxis||du(a,e),c=(Yn[a]||{}).scales||{};Object.keys(c).forEach(h=>{const d=fb(h,l),f=o[d+"AxisID"]||d;s[f]=s[f]||Object.create(null),Sr(s[f],[{axis:d},i[f],c[h]])})}),Object.keys(s).forEach(o=>{const a=s[o];Sr(a,[ue.scales[a.type],ue.scale])}),s}function Fm(t){const e=t.options||(t.options={});e.plugins=W(e.plugins,{}),e.scales=yb(t,e)}function $m(t){return t=t||{},t.datasets=t.datasets||[],t.labels=t.labels||[],t}function vb(t){return t=t||{},t.data=$m(t.data),Fm(t),t}const ef=new Map,Um=new Set;function Bs(t,e){let n=ef.get(t);return n||(n=e(),ef.set(t,n),Um.add(n)),n}const ir=(t,e,n)=>{const i=zo(e,n);i!==void 0&&t.add(i)};class _b{constructor(e){this._config=vb(e),this._scopeCache=new Map,this._resolverCache=new Map}get platform(){return this._config.platform}get type(){return this._config.type}set type(e){this._config.type=e}get data(){return this._config.data}set data(e){this._config.data=$m(e)}get options(){return this._config.options}set options(e){this._config.options=e}get plugins(){return this._config.plugins}update(){const e=this._config;this.clearCache(),Fm(e)}clearCache(){this._scopeCache.clear(),this._resolverCache.clear()}datasetScopeKeys(e){return Bs(e,()=>[[`datasets.${e}`,""]])}datasetAnimationScopeKeys(e,n){return Bs(`${e}.transition.${n}`,()=>[[`datasets.${e}.transitions.${n}`,`transitions.${n}`],[`datasets.${e}`,""]])}datasetElementScopeKeys(e,n){return Bs(`${e}-${n}`,()=>[[`datasets.${e}.elements.${n}`,`datasets.${e}`,`elements.${n}`,""]])}pluginScopeKeys(e){const n=e.id,i=this.type;return Bs(`${i}-plugin-${n}`,()=>[[`plugins.${n}`,...e.additionalOptionScopes||[]]])}_cachedScopes(e,n){const i=this._scopeCache;let r=i.get(e);return(!r||n)&&(r=new Map,i.set(e,r)),r}getOptionScopes(e,n,i){const{options:r,type:s}=this,o=this._cachedScopes(e,i),a=o.get(n);if(a)return a;const l=new Set;n.forEach(c=>{e&&(l.add(e),c.forEach(h=>ir(l,e,h))),c.forEach(h=>ir(l,r,h)),c.forEach(h=>ir(l,Yn[s]||{},h)),c.forEach(h=>ir(l,ue,h)),c.forEach(h=>ir(l,uu,h))});const u=Array.from(l);return u.length===0&&u.push(Object.create(null)),Um.has(n)&&o.set(n,u),u}chartOptionScopes(){const{options:e,type:n}=this;return[e,Yn[n]||{},ue.datasets[n]||{},{type:n},ue,uu]}resolveNamedOptions(e,n,i,r=[""]){const s={$shared:!0},{resolver:o,subPrefixes:a}=tf(this._resolverCache,e,r);let l=o;if(xb(o,n)){s.$shared=!1,i=mn(i)?i():i;const u=this.createResolver(e,i,a);l=Di(o,i,u)}for(const u of n)s[u]=l[u];return s}createResolver(e,n,i=[""],r){const{resolver:s}=tf(this._resolverCache,e,i);return U(n)?Di(s,n,void 0,r):s}}function tf(t,e,n){let i=t.get(e);i||(i=new Map,t.set(e,i));const r=n.join();let s=i.get(r);return s||(s={resolver:Tc(e,n),subPrefixes:n.filter(a=>!a.toLowerCase().includes("hover"))},i.set(r,s)),s}const wb=t=>U(t)&&Object.getOwnPropertyNames(t).some(e=>mn(t[e]));function xb(t,e){const{isScriptable:n,isIndexable:i}=Em(t);for(const r of e){const s=n(r),o=i(r),a=(o||s)&&t[r];if(s&&(mn(a)||wb(a))||o&&oe(a))return!0}return!1}var kb="4.4.3";const bb=["top","bottom","left","right","chartArea"];function nf(t,e){return t==="top"||t==="bottom"||bb.indexOf(t)===-1&&e==="x"}function rf(t,e){return function(n,i){return n[t]===i[t]?n[e]-i[e]:n[t]-i[t]}}function sf(t){const e=t.chart,n=e.options.animation;e.notifyPlugins("afterRender"),re(n&&n.onComplete,[t],e)}function Sb(t){const e=t.chart,n=e.options.animation;re(n&&n.onProgress,[t],e)}function Bm(t){return Mc()&&typeof t=="string"?t=document.getElementById(t):t&&t.length&&(t=t[0]),t&&t.canvas&&(t=t.canvas),t}const lo={},of=t=>{const e=Bm(t);return Object.values(lo).filter(n=>n.canvas===e).pop()};function Cb(t,e,n){const i=Object.keys(t);for(const r of i){const s=+r;if(s>=e){const o=t[r];delete t[r],(n>0||s>e)&&(t[s+n]=o)}}}function Eb(t,e,n,i){return!n||t.type==="mouseout"?null:i?e:t}function Vs(t,e,n){return t.options.clip?t[n]:e[n]}function Pb(t,e){const{xScale:n,yScale:i}=t;return n&&i?{left:Vs(n,e,"left"),right:Vs(n,e,"right"),top:Vs(i,e,"top"),bottom:Vs(i,e,"bottom")}:e}var Vt;let ma=(Vt=class{static register(...e){kt.add(...e),af()}static unregister(...e){kt.remove(...e),af()}constructor(e,n){const i=this.config=new _b(n),r=Bm(e),s=of(r);if(s)throw new Error("Canvas is already in use. Chart with ID '"+s.id+"' must be destroyed before the canvas with ID '"+s.canvas.id+"' can be reused.");const o=i.createResolver(i.chartOptionScopes(),this.getContext());this.platform=new(i.platform||Hk(r)),this.platform.updateConfig(i);const a=this.platform.acquireContext(r,o.aspectRatio),l=a&&a.canvas,u=l&&l.height,c=l&&l.width;if(this.id=Mx(),this.ctx=a,this.canvas=l,this.width=c,this.height=u,this._options=o,this._aspectRatio=this.aspectRatio,this._layers=[],this._metasets=[],this._stacks=void 0,this.boxes=[],this.currentDevicePixelRatio=void 0,this.chartArea=void 0,this._active=[],this._lastEvent=void 0,this._listeners={},this._responsiveListeners=void 0,this._sortedMetasets=[],this.scales={},this._plugins=new lb,this.$proxies={},this._hiddenIndices={},this.attached=!1,this._animationsDisabled=void 0,this.$context=void 0,this._doResize=Qx(h=>this.update(h),o.resizeDelay||0),this._dataChanges=[],lo[this.id]=this,!a||!l){console.error("Failed to create chart: can't acquire context from the given item");return}Tt.listen(this,"complete",sf),Tt.listen(this,"progress",Sb),this._initialize(),this.attached&&this.update()}get aspectRatio(){const{options:{aspectRatio:e,maintainAspectRatio:n},width:i,height:r,_aspectRatio:s}=this;return J(e)?n&&s?s:r?i/r:null:e}get data(){return this.config.data}set data(e){this.config.data=e}get options(){return this._options}set options(e){this.config.options=e}get registry(){return kt}_initialize(){return this.notifyPlugins("beforeInit"),this.options.responsive?this.resize():Ld(this,this.options.devicePixelRatio),this.bindEvents(),this.notifyPlugins("afterInit"),this}clear(){return Pd(this.canvas,this.ctx),this}stop(){return Tt.stop(this),this}resize(e,n){Tt.running(this)?this._resizeBeforeDraw={width:e,height:n}:this._resize(e,n)}_resize(e,n){const i=this.options,r=this.canvas,s=i.maintainAspectRatio&&this.aspectRatio,o=this.platform.getMaximumSize(r,e,n,s),a=i.devicePixelRatio||this.platform.getDevicePixelRatio(),l=this.width?"resize":"attach";this.width=o.width,this.height=o.height,this._aspectRatio=this.aspectRatio,Ld(this,a,!0)&&(this.notifyPlugins("resize",{size:o}),re(i.onResize,[this,o],this),this.attached&&this._doResize(l)&&this.render())}ensureScalesHaveIDs(){const n=this.options.scales||{};V(n,(i,r)=>{i.id=r})}buildOrUpdateScales(){const e=this.options,n=e.scales,i=this.scales,r=Object.keys(i).reduce((o,a)=>(o[a]=!1,o),{});let s=[];n&&(s=s.concat(Object.keys(n).map(o=>{const a=n[o],l=fu(o,a),u=l==="r",c=l==="x";return{options:a,dposition:u?"chartArea":c?"bottom":"left",dtype:u?"radialLinear":c?"category":"linear"}}))),V(s,o=>{const a=o.options,l=a.id,u=fu(l,a),c=W(a.type,o.dtype);(a.position===void 0||nf(a.position,u)!==nf(o.dposition))&&(a.position=o.dposition),r[l]=!0;let h=null;if(l in i&&i[l].type===c)h=i[l];else{const d=kt.getScale(c);h=new d({id:l,type:c,ctx:this.ctx,chart:this}),i[h.id]=h}h.init(a,e)}),V(r,(o,a)=>{o||delete i[a]}),V(i,o=>{rn.configure(this,o,o.options),rn.addBox(this,o)})}_updateMetasets(){const e=this._metasets,n=this.data.datasets.length,i=e.length;if(e.sort((r,s)=>r.index-s.index),i>n){for(let r=n;r<i;++r)this._destroyDatasetMeta(r);e.splice(n,i-n)}this._sortedMetasets=e.slice(0).sort(rf("order","index"))}_removeUnreferencedMetasets(){const{_metasets:e,data:{datasets:n}}=this;e.length>n.length&&delete this._stacks,e.forEach((i,r)=>{n.filter(s=>s===i._dataset).length===0&&this._destroyDatasetMeta(r)})}buildOrUpdateControllers(){const e=[],n=this.data.datasets;let i,r;for(this._removeUnreferencedMetasets(),i=0,r=n.length;i<r;i++){const s=n[i];let o=this.getDatasetMeta(i);const a=s.type||this.config.type;if(o.type&&o.type!==a&&(this._destroyDatasetMeta(i),o=this.getDatasetMeta(i)),o.type=a,o.indexAxis=s.indexAxis||du(a,this.options),o.order=s.order||0,o.index=i,o.label=""+s.label,o.visible=this.isDatasetVisible(i),o.controller)o.controller.updateIndex(i),o.controller.linkScales();else{const l=kt.getController(a),{datasetElementType:u,dataElementType:c}=ue.datasets[a];Object.assign(l,{dataElementType:kt.getElement(c),datasetElementType:u&&kt.getElement(u)}),o.controller=new l(this,i),e.push(o.controller)}}return this._updateMetasets(),e}_resetElements(){V(this.data.datasets,(e,n)=>{this.getDatasetMeta(n).controller.reset()},this)}reset(){this._resetElements(),this.notifyPlugins("reset")}update(e){const n=this.config;n.update();const i=this._options=n.createResolver(n.chartOptionScopes(),this.getContext()),r=this._animationsDisabled=!i.animation;if(this._updateScales(),this._checkEventBindings(),this._updateHiddenIndices(),this._plugins.invalidate(),this.notifyPlugins("beforeUpdate",{mode:e,cancelable:!0})===!1)return;const s=this.buildOrUpdateControllers();this.notifyPlugins("beforeElementsUpdate");let o=0;for(let u=0,c=this.data.datasets.length;u<c;u++){const{controller:h}=this.getDatasetMeta(u),d=!r&&s.indexOf(h)===-1;h.buildOrUpdateElements(d),o=Math.max(+h.getMaxOverflow(),o)}o=this._minPadding=i.layout.autoPadding?o:0,this._updateLayout(o),r||V(s,u=>{u.reset()}),this._updateDatasets(e),this.notifyPlugins("afterUpdate",{mode:e}),this._layers.sort(rf("z","_idx"));const{_active:a,_lastEvent:l}=this;l?this._eventHandler(l,!0):a.length&&this._updateHoverStyles(a,a,!0),this.render()}_updateScales(){V(this.scales,e=>{rn.removeBox(this,e)}),this.ensureScalesHaveIDs(),this.buildOrUpdateScales()}_checkEventBindings(){const e=this.options,n=new Set(Object.keys(this._listeners)),i=new Set(e.events);(!vd(n,i)||!!this._responsiveListeners!==e.responsive)&&(this.unbindEvents(),this.bindEvents())}_updateHiddenIndices(){const{_hiddenIndices:e}=this,n=this._getUniformDataChanges()||[];for(const{method:i,start:r,count:s}of n){const o=i==="_removeElements"?-s:s;Cb(e,r,o)}}_getUniformDataChanges(){const e=this._dataChanges;if(!e||!e.length)return;this._dataChanges=[];const n=this.data.datasets.length,i=s=>new Set(e.filter(o=>o[0]===s).map((o,a)=>a+","+o.splice(1).join(","))),r=i(0);for(let s=1;s<n;s++)if(!vd(r,i(s)))return;return Array.from(r).map(s=>s.split(",")).map(s=>({method:s[1],start:+s[2],count:+s[3]}))}_updateLayout(e){if(this.notifyPlugins("beforeLayout",{cancelable:!0})===!1)return;rn.update(this,this.width,this.height,e);const n=this.chartArea,i=n.width<=0||n.height<=0;this._layers=[],V(this.boxes,r=>{i&&r.position==="chartArea"||(r.configure&&r.configure(),this._layers.push(...r._layers()))},this),this._layers.forEach((r,s)=>{r._idx=s}),this.notifyPlugins("afterLayout")}_updateDatasets(e){if(this.notifyPlugins("beforeDatasetsUpdate",{mode:e,cancelable:!0})!==!1){for(let n=0,i=this.data.datasets.length;n<i;++n)this.getDatasetMeta(n).controller.configure();for(let n=0,i=this.data.datasets.length;n<i;++n)this._updateDataset(n,mn(e)?e({datasetIndex:n}):e);this.notifyPlugins("afterDatasetsUpdate",{mode:e})}}_updateDataset(e,n){const i=this.getDatasetMeta(e),r={meta:i,index:e,mode:n,cancelable:!0};this.notifyPlugins("beforeDatasetUpdate",r)!==!1&&(i.controller._update(n),r.cancelable=!1,this.notifyPlugins("afterDatasetUpdate",r))}render(){this.notifyPlugins("beforeRender",{cancelable:!0})!==!1&&(Tt.has(this)?this.attached&&!Tt.running(this)&&Tt.start(this):(this.draw(),sf({chart:this})))}draw(){let e;if(this._resizeBeforeDraw){const{width:i,height:r}=this._resizeBeforeDraw;this._resize(i,r),this._resizeBeforeDraw=null}if(this.clear(),this.width<=0||this.height<=0||this.notifyPlugins("beforeDraw",{cancelable:!0})===!1)return;const n=this._layers;for(e=0;e<n.length&&n[e].z<=0;++e)n[e].draw(this.chartArea);for(this._drawDatasets();e<n.length;++e)n[e].draw(this.chartArea);this.notifyPlugins("afterDraw")}_getSortedDatasetMetas(e){const n=this._sortedMetasets,i=[];let r,s;for(r=0,s=n.length;r<s;++r){const o=n[r];(!e||o.visible)&&i.push(o)}return i}getSortedVisibleDatasetMetas(){return this._getSortedDatasetMetas(!0)}_drawDatasets(){if(this.notifyPlugins("beforeDatasetsDraw",{cancelable:!0})===!1)return;const e=this.getSortedVisibleDatasetMetas();for(let n=e.length-1;n>=0;--n)this._drawDataset(e[n]);this.notifyPlugins("afterDatasetsDraw")}_drawDataset(e){const n=this.ctx,i=e._clip,r=!i.disabled,s=Pb(e,this.chartArea),o={meta:e,index:e.index,cancelable:!0};this.notifyPlugins("beforeDatasetDraw",o)!==!1&&(r&&bm(n,{left:i.left===!1?0:s.left-i.left,right:i.right===!1?this.width:s.right+i.right,top:i.top===!1?0:s.top-i.top,bottom:i.bottom===!1?this.height:s.bottom+i.bottom}),e.controller.draw(),r&&Sm(n),o.cancelable=!1,this.notifyPlugins("afterDatasetDraw",o))}isPointInArea(e){return Dt(e,this.chartArea,this._minPadding)}getElementsAtEventForMode(e,n,i,r){const s=bk.modes[n];return typeof s=="function"?s(this,e,i,r):[]}getDatasetMeta(e){const n=this.data.datasets[e],i=this._metasets;let r=i.filter(s=>s&&s._dataset===n).pop();return r||(r={type:null,data:[],dataset:null,controller:null,hidden:null,xAxisID:null,yAxisID:null,order:n&&n.order||0,index:e,_dataset:n,_parsed:[],_sorted:!1},i.push(r)),r}getContext(){return this.$context||(this.$context=xn(null,{chart:this,type:"chart"}))}getVisibleDatasetCount(){return this.getSortedVisibleDatasetMetas().length}isDatasetVisible(e){const n=this.data.datasets[e];if(!n)return!1;const i=this.getDatasetMeta(e);return typeof i.hidden=="boolean"?!i.hidden:!n.hidden}setDatasetVisibility(e,n){const i=this.getDatasetMeta(e);i.hidden=!n}toggleDataVisibility(e){this._hiddenIndices[e]=!this._hiddenIndices[e]}getDataVisibility(e){return!this._hiddenIndices[e]}_updateVisibility(e,n,i){const r=i?"show":"hide",s=this.getDatasetMeta(e),o=s.controller._resolveAnimations(void 0,r);Fo(n)?(s.data[n].hidden=!i,this.update()):(this.setDatasetVisibility(e,i),o.update(s,{visible:i}),this.update(a=>a.datasetIndex===e?r:void 0))}hide(e,n){this._updateVisibility(e,n,!1)}show(e,n){this._updateVisibility(e,n,!0)}_destroyDatasetMeta(e){const n=this._metasets[e];n&&n.controller&&n.controller._destroy(),delete this._metasets[e]}_stop(){let e,n;for(this.stop(),Tt.remove(this),e=0,n=this.data.datasets.length;e<n;++e)this._destroyDatasetMeta(e)}destroy(){this.notifyPlugins("beforeDestroy");const{canvas:e,ctx:n}=this;this._stop(),this.config.clearCache(),e&&(this.unbindEvents(),Pd(e,n),this.platform.releaseContext(n),this.canvas=null,this.ctx=null),delete lo[this.id],this.notifyPlugins("afterDestroy")}toBase64Image(...e){return this.canvas.toDataURL(...e)}bindEvents(){this.bindUserEvents(),this.options.responsive?this.bindResponsiveEvents():this.attached=!0}bindUserEvents(){const e=this._listeners,n=this.platform,i=(s,o)=>{n.addEventListener(this,s,o),e[s]=o},r=(s,o,a)=>{s.offsetX=o,s.offsetY=a,this._eventHandler(s)};V(this.options.events,s=>i(s,r))}bindResponsiveEvents(){this._responsiveListeners||(this._responsiveListeners={});const e=this._responsiveListeners,n=this.platform,i=(l,u)=>{n.addEventListener(this,l,u),e[l]=u},r=(l,u)=>{e[l]&&(n.removeEventListener(this,l,u),delete e[l])},s=(l,u)=>{this.canvas&&this.resize(l,u)};let o;const a=()=>{r("attach",a),this.attached=!0,this.resize(),i("resize",s),i("detach",o)};o=()=>{this.attached=!1,r("resize",s),this._stop(),this._resize(0,0),i("attach",a)},n.isAttached(this.canvas)?a():o()}unbindEvents(){V(this._listeners,(e,n)=>{this.platform.removeEventListener(this,n,e)}),this._listeners={},V(this._responsiveListeners,(e,n)=>{this.platform.removeEventListener(this,n,e)}),this._responsiveListeners=void 0}updateHoverStyle(e,n,i){const r=i?"set":"remove";let s,o,a,l;for(n==="dataset"&&(s=this.getDatasetMeta(e[0].datasetIndex),s.controller["_"+r+"DatasetHoverStyle"]()),a=0,l=e.length;a<l;++a){o=e[a];const u=o&&this.getDatasetMeta(o.datasetIndex).controller;u&&u[r+"HoverStyle"](o.element,o.datasetIndex,o.index)}}getActiveElements(){return this._active||[]}setActiveElements(e){const n=this._active||[],i=e.map(({datasetIndex:s,index:o})=>{const a=this.getDatasetMeta(s);if(!a)throw new Error("No dataset found at index "+s);return{datasetIndex:s,element:a.data[o],index:o}});!jo(i,n)&&(this._active=i,this._lastEvent=null,this._updateHoverStyles(i,n))}notifyPlugins(e,n,i){return this._plugins.notify(this,e,n,i)}isPluginEnabled(e){return this._plugins._cache.filter(n=>n.plugin.id===e).length===1}_updateHoverStyles(e,n,i){const r=this.options.hover,s=(l,u)=>l.filter(c=>!u.some(h=>c.datasetIndex===h.datasetIndex&&c.index===h.index)),o=s(n,e),a=i?e:s(e,n);o.length&&this.updateHoverStyle(o,r.mode,!1),a.length&&r.mode&&this.updateHoverStyle(a,r.mode,!0)}_eventHandler(e,n){const i={event:e,replay:n,cancelable:!0,inChartArea:this.isPointInArea(e)},r=o=>(o.options.events||this.options.events).includes(e.native.type);if(this.notifyPlugins("beforeEvent",i,r)===!1)return;const s=this._handleEvent(e,n,i.inChartArea);return i.cancelable=!1,this.notifyPlugins("afterEvent",i,r),(s||i.changed)&&this.render(),this}_handleEvent(e,n,i){const{_active:r=[],options:s}=this,o=n,a=this._getActiveElements(e,r,i,o),l=Nx(e),u=Eb(e,this._lastEvent,i,l);i&&(this._lastEvent=null,re(s.onHover,[e,a,this],this),l&&re(s.onClick,[e,a,this],this));const c=!jo(a,r);return(c||n)&&(this._active=a,this._updateHoverStyles(a,r,n)),this._lastEvent=u,c}_getActiveElements(e,n,i,r){if(e.type==="mouseout")return[];if(!i)return n;const s=this.options.hover;return this.getElementsAtEventForMode(e,s.mode,s,r)}},I(Vt,"defaults",ue),I(Vt,"instances",lo),I(Vt,"overrides",Yn),I(Vt,"registry",kt),I(Vt,"version",kb),I(Vt,"getChart",of),Vt);function af(){return V(ma.instances,t=>t._plugins.invalidate())}function Vm(t,e,n=e){t.lineCap=W(n.borderCapStyle,e.borderCapStyle),t.setLineDash(W(n.borderDash,e.borderDash)),t.lineDashOffset=W(n.borderDashOffset,e.borderDashOffset),t.lineJoin=W(n.borderJoinStyle,e.borderJoinStyle),t.lineWidth=W(n.borderWidth,e.borderWidth),t.strokeStyle=W(n.borderColor,e.borderColor)}function Tb(t,e,n){t.lineTo(n.x,n.y)}function Ob(t){return t.stepped?c1:t.tension||t.cubicInterpolationMode==="monotone"?h1:Tb}function Hm(t,e,n={}){const i=t.length,{start:r=0,end:s=i-1}=n,{start:o,end:a}=e,l=Math.max(r,o),u=Math.min(s,a),c=r<o&&s<o||r>a&&s>a;return{count:i,start:l,loop:e.loop,ilen:u<l&&!c?i+u-l:u-l}}function Lb(t,e,n,i){const{points:r,options:s}=e,{count:o,start:a,loop:l,ilen:u}=Hm(r,n,i),c=Ob(s);let{move:h=!0,reverse:d}=i||{},f,m,y;for(f=0;f<=u;++f)m=r[(a+(d?u-f:f))%o],!m.skip&&(h?(t.moveTo(m.x,m.y),h=!1):c(t,y,m,d,s.stepped),y=m);return l&&(m=r[(a+(d?u:0))%o],c(t,y,m,d,s.stepped)),!!l}function Mb(t,e,n,i){const r=e.points,{count:s,start:o,ilen:a}=Hm(r,n,i),{move:l=!0,reverse:u}=i||{};let c=0,h=0,d,f,m,y,v,p;const g=w=>(o+(u?a-w:w))%s,_=()=>{y!==v&&(t.lineTo(c,v),t.lineTo(c,y),t.lineTo(c,p))};for(l&&(f=r[g(0)],t.moveTo(f.x,f.y)),d=0;d<=a;++d){if(f=r[g(d)],f.skip)continue;const w=f.x,x=f.y,b=w|0;b===m?(x<y?y=x:x>v&&(v=x),c=(h*c+w)/++h):(_(),t.lineTo(w,x),m=b,h=0,y=v=x),p=x}_()}function pu(t){const e=t.options,n=e.borderDash&&e.borderDash.length;return!t._decimated&&!t._loop&&!e.tension&&e.cubicInterpolationMode!=="monotone"&&!e.stepped&&!n?Mb:Lb}function Rb(t){return t.stepped?H1:t.tension||t.cubicInterpolationMode==="monotone"?W1:Rn}function Ib(t,e,n,i){let r=e._path;r||(r=e._path=new Path2D,e.path(r,n,i)&&r.closePath()),Vm(t,e.options),t.stroke(r)}function Ab(t,e,n,i){const{segments:r,options:s}=e,o=pu(e);for(const a of r)Vm(t,s,a.style),t.beginPath(),o(t,e,a,{start:n,end:n+i-1})&&t.closePath(),t.stroke()}const Db=typeof Path2D=="function";function jb(t,e,n,i){Db&&!e.options.segment?Ib(t,e,n,i):Ab(t,e,n,i)}class hr extends yn{constructor(e){super(),this.animated=!0,this.options=void 0,this._chart=void 0,this._loop=void 0,this._fullLoop=void 0,this._path=void 0,this._points=void 0,this._segments=void 0,this._decimated=!1,this._pointsUpdated=!1,this._datasetIndex=void 0,e&&Object.assign(this,e)}updateControlPoints(e,n){const i=this.options;if((i.tension||i.cubicInterpolationMode==="monotone")&&!i.stepped&&!this._pointsUpdated){const r=i.spanGaps?this._loop:this._fullLoop;j1(this._points,i,e,r,n),this._pointsUpdated=!0}}set points(e){this._points=e,delete this._segments,delete this._path,this._pointsUpdated=!1}get points(){return this._points}get segments(){return this._segments||(this._segments=tk(this,this.options.segment))}first(){const e=this.segments,n=this.points;return e.length&&n[e[0].start]}last(){const e=this.segments,n=this.points,i=e.length;return i&&n[e[i-1].end]}interpolate(e,n){const i=this.options,r=e[n],s=this.points,o=J1(this,{property:n,start:r,end:r});if(!o.length)return;const a=[],l=Rb(i);let u,c;for(u=0,c=o.length;u<c;++u){const{start:h,end:d}=o[u],f=s[h],m=s[d];if(f===m){a.push(f);continue}const y=Math.abs((r-f[n])/(m[n]-f[n])),v=l(f,m,y,i.stepped);v[n]=e[n],a.push(v)}return a.length===1?a[0]:a}pathSegment(e,n,i){return pu(this)(e,this,n,i)}path(e,n,i){const r=this.segments,s=pu(this);let o=this._loop;n=n||0,i=i||this.points.length-n;for(const a of r)o&=s(e,this,a,{start:n,end:n+i-1});return!!o}draw(e,n,i,r){const s=this.options||{};(this.points||[]).length&&s.borderWidth&&(e.save(),jb(e,this,i,r),e.restore()),this.animated&&(this._pointsUpdated=!1,this._path=void 0)}}I(hr,"id","line"),I(hr,"defaults",{borderCapStyle:"butt",borderDash:[],borderDashOffset:0,borderJoinStyle:"miter",borderWidth:3,capBezierPoints:!0,cubicInterpolationMode:"default",fill:!1,spanGaps:!1,stepped:!1,tension:0}),I(hr,"defaultRoutes",{backgroundColor:"backgroundColor",borderColor:"borderColor"}),I(hr,"descriptors",{_scriptable:!0,_indexable:e=>e!=="borderDash"&&e!=="fill"});function lf(t,e,n,i){const r=t.options,{[n]:s}=t.getProps([n],i);return Math.abs(e-s)<r.radius+r.hitRadius}class uo extends yn{constructor(n){super();I(this,"parsed");I(this,"skip");I(this,"stop");this.options=void 0,this.parsed=void 0,this.skip=void 0,this.stop=void 0,n&&Object.assign(this,n)}inRange(n,i,r){const s=this.options,{x:o,y:a}=this.getProps(["x","y"],r);return Math.pow(n-o,2)+Math.pow(i-a,2)<Math.pow(s.hitRadius+s.radius,2)}inXRange(n,i){return lf(this,n,"x",i)}inYRange(n,i){return lf(this,n,"y",i)}getCenterPoint(n){const{x:i,y:r}=this.getProps(["x","y"],n);return{x:i,y:r}}size(n){n=n||this.options||{};let i=n.radius||0;i=Math.max(i,i&&n.hoverRadius||0);const r=i&&n.borderWidth||0;return(i+r)*2}draw(n,i){const r=this.options;this.skip||r.radius<.1||!Dt(this,i,this.size(r)/2)||(n.strokeStyle=r.borderColor,n.lineWidth=r.borderWidth,n.fillStyle=r.backgroundColor,cu(n,r,this.x,this.y))}getRange(){const n=this.options||{};return n.radius+n.hitRadius}}I(uo,"id","point"),I(uo,"defaults",{borderWidth:1,hitRadius:1,hoverBorderWidth:1,hoverRadius:4,pointStyle:"circle",radius:3,rotation:0}),I(uo,"defaultRoutes",{backgroundColor:"backgroundColor",borderColor:"borderColor"});class Wm extends yn{constructor(e){super(),this.chart=e.chart,this.options=e.options,this.ctx=e.ctx,this._padding=void 0,this.top=void 0,this.bottom=void 0,this.left=void 0,this.right=void 0,this.width=void 0,this.height=void 0,this.position=void 0,this.weight=void 0,this.fullSize=void 0}update(e,n){const i=this.options;if(this.left=0,this.top=0,!i.display){this.width=this.height=this.right=this.bottom=0;return}this.width=this.right=e,this.height=this.bottom=n;const r=oe(i.text)?i.text.length:1;this._padding=qe(i.padding);const s=r*Me(i.font).lineHeight+this._padding.height;this.isHorizontal()?this.height=s:this.width=s}isHorizontal(){const e=this.options.position;return e==="top"||e==="bottom"}_drawArgs(e){const{top:n,left:i,bottom:r,right:s,options:o}=this,a=o.align;let l=0,u,c,h;return this.isHorizontal()?(c=Er(a,i,s),h=n+e,u=s-i):(o.position==="left"?(c=i+e,h=Er(a,r,n),l=de*-.5):(c=s-e,h=Er(a,n,r),l=de*.5),u=r-n),{titleX:c,titleY:h,maxWidth:u,rotation:l}}draw(){const e=this.ctx,n=this.options;if(!n.display)return;const i=Me(n.font),s=i.lineHeight/2+this._padding.top,{titleX:o,titleY:a,maxWidth:l,rotation:u}=this._drawArgs(s);es(e,n.text,0,0,i,{color:n.color,maxWidth:l,rotation:u,textAlign:xm(n.align),textBaseline:"middle",translation:[o,a]})}}function Nb(t,e){const n=new Wm({ctx:t.ctx,options:e,chart:t});rn.configure(t,n,e),rn.addBox(t,n),t.titleBlock=n}var zb={id:"title",_element:Wm,start(t,e,n){Nb(t,n)},stop(t){const e=t.titleBlock;rn.removeBox(t,e),delete t.titleBlock},beforeUpdate(t,e,n){const i=t.titleBlock;rn.configure(t,i,n),i.options=n},defaults:{align:"center",display:!1,font:{weight:"bold"},fullSize:!0,padding:10,position:"top",text:"",weight:2e3},defaultRoutes:{color:"color"},descriptors:{_scriptable:!0,_indexable:!1}};const dr={average(t){if(!t.length)return!1;let e,n,i=new Set,r=0,s=0;for(e=0,n=t.length;e<n;++e){const a=t[e].element;if(a&&a.hasValue()){const l=a.tooltipPosition();i.add(l.x),r+=l.y,++s}}return{x:[...i].reduce((a,l)=>a+l)/i.size,y:r/s}},nearest(t,e){if(!t.length)return!1;let n=e.x,i=e.y,r=Number.POSITIVE_INFINITY,s,o,a;for(s=0,o=t.length;s<o;++s){const l=t[s].element;if(l&&l.hasValue()){const u=l.getCenterPoint(),c=lu(e,u);c<r&&(r=c,a=l)}}if(a){const l=a.tooltipPosition();n=l.x,i=l.y}return{x:n,y:i}}};function wt(t,e){return e&&(oe(e)?Array.prototype.push.apply(t,e):t.push(e)),t}function Ot(t){return(typeof t=="string"||t instanceof String)&&t.indexOf(`
 `)>-1?t.split(`
-`):t}function Fb(t,e){const{element:n,datasetIndex:i,index:r}=e,s=t.getDatasetMeta(i).controller,{label:o,value:a}=s.getLabelAndValue(r);return{chart:t,label:o,parsed:s.getParsed(r),raw:t.data.datasets[i].data[r],formattedValue:a,dataset:s.getDataset(),dataIndex:r,datasetIndex:i,element:n}}function uf(t,e){const n=t.chart.ctx,{body:i,footer:r,title:s}=t,{boxWidth:o,boxHeight:a}=e,l=Me(e.bodyFont),u=Me(e.titleFont),c=Me(e.footerFont),h=s.length,d=r.length,f=i.length,m=qe(e.padding);let y=m.height,v=0,p=i.reduce((w,x)=>w+x.before.length+x.lines.length+x.after.length,0);if(p+=t.beforeBody.length+t.afterBody.length,h&&(y+=h*u.lineHeight+(h-1)*e.titleSpacing+e.titleMarginBottom),p){const w=e.displayColors?Math.max(a,l.lineHeight):l.lineHeight;y+=f*w+(p-f)*l.lineHeight+(p-1)*e.bodySpacing}d&&(y+=e.footerMarginTop+d*c.lineHeight+(d-1)*e.footerSpacing);let g=0;const _=function(w){v=Math.max(v,n.measureText(w).width+g)};return n.save(),n.font=u.string,V(t.title,_),n.font=l.string,V(t.beforeBody.concat(t.afterBody),_),g=e.displayColors?o+2+e.boxPadding:0,V(i,w=>{V(w.before,_),V(w.lines,_),V(w.after,_)}),g=0,n.font=c.string,V(t.footer,_),n.restore(),v+=m.width,{width:v,height:y}}function $b(t,e){const{y:n,height:i}=e;return n<i/2?"top":n>t.height-i/2?"bottom":"center"}function Ub(t,e,n,i){const{x:r,width:s}=i,o=n.caretSize+n.caretPadding;if(t==="left"&&r+s+o>e.width||t==="right"&&r-s-o<0)return!0}function Bb(t,e,n,i){const{x:r,width:s}=n,{width:o,chartArea:{left:a,right:l}}=t;let u="center";return i==="center"?u=r<=(a+l)/2?"left":"right":r<=s/2?u="left":r>=o-s/2&&(u="right"),Ub(u,t,e,n)&&(u="center"),u}function cf(t,e,n){const i=n.yAlign||e.yAlign||$b(t,n);return{xAlign:n.xAlign||e.xAlign||Bb(t,e,n,i),yAlign:i}}function Vb(t,e){let{x:n,width:i}=t;return e==="right"?n-=i:e==="center"&&(n-=i/2),n}function Hb(t,e,n){let{y:i,height:r}=t;return e==="top"?i+=n:e==="bottom"?i-=r+n:i-=r/2,i}function hf(t,e,n,i){const{caretSize:r,caretPadding:s,cornerRadius:o}=t,{xAlign:a,yAlign:l}=n,u=r+s,{topLeft:c,topRight:h,bottomLeft:d,bottomRight:f}=Or(o);let m=Vb(e,a);const y=Hb(e,l,u);return l==="center"?a==="left"?m+=u:a==="right"&&(m-=u):a==="left"?m-=Math.max(c,d)+r:a==="right"&&(m+=Math.max(h,f)+r),{x:it(m,0,i.width-e.width),y:it(y,0,i.height-e.height)}}function Hs(t,e,n){const i=qe(n.padding);return e==="center"?t.x+t.width/2:e==="right"?t.x+t.width-i.right:t.x+i.left}function df(t){return wt([],Ot(t))}function Wb(t,e,n){return xn(t,{tooltip:e,tooltipItems:n,type:"tooltip"})}function ff(t,e){const n=e&&e.dataset&&e.dataset.tooltip&&e.dataset.tooltip.callbacks;return n?t.override(n):t}const Km={beforeTitle:Pt,title(t){if(t.length>0){const e=t[0],n=e.chart.data.labels,i=n?n.length:0;if(this&&this.options&&this.options.mode==="dataset")return e.dataset.label||"";if(e.label)return e.label;if(i>0&&e.dataIndex<i)return n[e.dataIndex]}return""},afterTitle:Pt,beforeBody:Pt,beforeLabel:Pt,label(t){if(this&&this.options&&this.options.mode==="dataset")return t.label+": "+t.formattedValue||t.formattedValue;let e=t.dataset.label||"";e&&(e+=": ");const n=t.formattedValue;return J(n)||(e+=n),e},labelColor(t){const n=t.chart.getDatasetMeta(t.datasetIndex).controller.getStyle(t.dataIndex);return{borderColor:n.borderColor,backgroundColor:n.backgroundColor,borderWidth:n.borderWidth,borderDash:n.borderDash,borderDashOffset:n.borderDashOffset,borderRadius:0}},labelTextColor(){return this.options.bodyColor},labelPointStyle(t){const n=t.chart.getDatasetMeta(t.datasetIndex).controller.getStyle(t.dataIndex);return{pointStyle:n.pointStyle,rotation:n.rotation}},afterLabel:Pt,afterBody:Pt,beforeFooter:Pt,footer:Pt,afterFooter:Pt};function De(t,e,n,i){const r=t[e].call(n,i);return typeof r>"u"?Km[e].call(n,i):r}class gu extends yn{constructor(e){super(),this.opacity=0,this._active=[],this._eventPosition=void 0,this._size=void 0,this._cachedAnimations=void 0,this._tooltipItems=[],this.$animations=void 0,this.$context=void 0,this.chart=e.chart,this.options=e.options,this.dataPoints=void 0,this.title=void 0,this.beforeBody=void 0,this.body=void 0,this.afterBody=void 0,this.footer=void 0,this.xAlign=void 0,this.yAlign=void 0,this.x=void 0,this.y=void 0,this.height=void 0,this.width=void 0,this.caretX=void 0,this.caretY=void 0,this.labelColors=void 0,this.labelPointStyles=void 0,this.labelTextColors=void 0}initialize(e){this.options=e,this._cachedAnimations=void 0,this.$context=void 0}_resolveAnimations(){const e=this._cachedAnimations;if(e)return e;const n=this.chart,i=this.options.setContext(this.getContext()),r=i.enabled&&n.options.animation&&i.animations,s=new Rm(this.chart,r);return r._cacheable&&(this._cachedAnimations=Object.freeze(s)),s}getContext(){return this.$context||(this.$context=Wb(this.chart.getContext(),this,this._tooltipItems))}getTitle(e,n){const{callbacks:i}=n,r=De(i,"beforeTitle",this,e),s=De(i,"title",this,e),o=De(i,"afterTitle",this,e);let a=[];return a=wt(a,Ot(r)),a=wt(a,Ot(s)),a=wt(a,Ot(o)),a}getBeforeBody(e,n){return df(De(n.callbacks,"beforeBody",this,e))}getBody(e,n){const{callbacks:i}=n,r=[];return V(e,s=>{const o={before:[],lines:[],after:[]},a=ff(i,s);wt(o.before,Ot(De(a,"beforeLabel",this,s))),wt(o.lines,De(a,"label",this,s)),wt(o.after,Ot(De(a,"afterLabel",this,s))),r.push(o)}),r}getAfterBody(e,n){return df(De(n.callbacks,"afterBody",this,e))}getFooter(e,n){const{callbacks:i}=n,r=De(i,"beforeFooter",this,e),s=De(i,"footer",this,e),o=De(i,"afterFooter",this,e);let a=[];return a=wt(a,Ot(r)),a=wt(a,Ot(s)),a=wt(a,Ot(o)),a}_createItems(e){const n=this._active,i=this.chart.data,r=[],s=[],o=[];let a=[],l,u;for(l=0,u=n.length;l<u;++l)a.push(Fb(this.chart,n[l]));return e.filter&&(a=a.filter((c,h,d)=>e.filter(c,h,d,i))),e.itemSort&&(a=a.sort((c,h)=>e.itemSort(c,h,i))),V(a,c=>{const h=ff(e.callbacks,c);r.push(De(h,"labelColor",this,c)),s.push(De(h,"labelPointStyle",this,c)),o.push(De(h,"labelTextColor",this,c))}),this.labelColors=r,this.labelPointStyles=s,this.labelTextColors=o,this.dataPoints=a,a}update(e,n){const i=this.options.setContext(this.getContext()),r=this._active;let s,o=[];if(!r.length)this.opacity!==0&&(s={opacity:0});else{const a=dr[i.position].call(this,r,this._eventPosition);o=this._createItems(i),this.title=this.getTitle(o,i),this.beforeBody=this.getBeforeBody(o,i),this.body=this.getBody(o,i),this.afterBody=this.getAfterBody(o,i),this.footer=this.getFooter(o,i);const l=this._size=uf(this,i),u=Object.assign({},a,l),c=cf(this.chart,i,u),h=hf(i,u,c,this.chart);this.xAlign=c.xAlign,this.yAlign=c.yAlign,s={opacity:1,x:h.x,y:h.y,width:l.width,height:l.height,caretX:a.x,caretY:a.y}}this._tooltipItems=o,this.$context=void 0,s&&this._resolveAnimations().update(this,s),e&&i.external&&i.external.call(this,{chart:this.chart,tooltip:this,replay:n})}drawCaret(e,n,i,r){const s=this.getCaretPosition(e,i,r);n.lineTo(s.x1,s.y1),n.lineTo(s.x2,s.y2),n.lineTo(s.x3,s.y3)}getCaretPosition(e,n,i){const{xAlign:r,yAlign:s}=this,{caretSize:o,cornerRadius:a}=i,{topLeft:l,topRight:u,bottomLeft:c,bottomRight:h}=Or(a),{x:d,y:f}=e,{width:m,height:y}=n;let v,p,g,_,w,x;return s==="center"?(w=f+y/2,r==="left"?(v=d,p=v-o,_=w+o,x=w-o):(v=d+m,p=v+o,_=w-o,x=w+o),g=v):(r==="left"?p=d+Math.max(l,c)+o:r==="right"?p=d+m-Math.max(u,h)-o:p=this.caretX,s==="top"?(_=f,w=_-o,v=p-o,g=p+o):(_=f+y,w=_+o,v=p+o,g=p-o),x=_),{x1:v,x2:p,x3:g,y1:_,y2:w,y3:x}}drawTitle(e,n,i){const r=this.title,s=r.length;let o,a,l;if(s){const u=el(i.rtl,this.x,this.width);for(e.x=Hs(this,i.titleAlign,i),n.textAlign=u.textAlign(i.titleAlign),n.textBaseline="middle",o=Me(i.titleFont),a=i.titleSpacing,n.fillStyle=i.titleColor,n.font=o.string,l=0;l<s;++l)n.fillText(r[l],u.x(e.x),e.y+o.lineHeight/2),e.y+=o.lineHeight+a,l+1===s&&(e.y+=i.titleMarginBottom-a)}}_drawColorBox(e,n,i,r,s){const o=this.labelColors[i],a=this.labelPointStyles[i],{boxHeight:l,boxWidth:u}=s,c=Me(s.bodyFont),h=Hs(this,"left",s),d=r.x(h),f=l<c.lineHeight?(c.lineHeight-l)/2:0,m=n.y+f;if(s.usePointStyle){const y={radius:Math.min(u,l)/2,pointStyle:a.pointStyle,rotation:a.rotation,borderWidth:1},v=r.leftForLtr(d,u)+u/2,p=m+l/2;e.strokeStyle=s.multiKeyBackground,e.fillStyle=s.multiKeyBackground,cu(e,y,v,p),e.strokeStyle=o.borderColor,e.fillStyle=o.backgroundColor,cu(e,y,v,p)}else{e.lineWidth=U(o.borderWidth)?Math.max(...Object.values(o.borderWidth)):o.borderWidth||1,e.strokeStyle=o.borderColor,e.setLineDash(o.borderDash||[]),e.lineDashOffset=o.borderDashOffset||0;const y=r.leftForLtr(d,u),v=r.leftForLtr(r.xPlus(d,1),u-2),p=Or(o.borderRadius);Object.values(p).some(g=>g!==0)?(e.beginPath(),e.fillStyle=s.multiKeyBackground,hu(e,{x:y,y:m,w:u,h:l,radius:p}),e.fill(),e.stroke(),e.fillStyle=o.backgroundColor,e.beginPath(),hu(e,{x:v,y:m+1,w:u-2,h:l-2,radius:p}),e.fill()):(e.fillStyle=s.multiKeyBackground,e.fillRect(y,m,u,l),e.strokeRect(y,m,u,l),e.fillStyle=o.backgroundColor,e.fillRect(v,m+1,u-2,l-2))}e.fillStyle=this.labelTextColors[i]}drawBody(e,n,i){const{body:r}=this,{bodySpacing:s,bodyAlign:o,displayColors:a,boxHeight:l,boxWidth:u,boxPadding:c}=i,h=Me(i.bodyFont);let d=h.lineHeight,f=0;const m=el(i.rtl,this.x,this.width),y=function(S){n.fillText(S,m.x(e.x+f),e.y+d/2),e.y+=d+s},v=m.textAlign(o);let p,g,_,w,x,b,k;for(n.textAlign=o,n.textBaseline="middle",n.font=h.string,e.x=Hs(this,v,i),n.fillStyle=i.bodyColor,V(this.beforeBody,y),f=a&&v!=="right"?o==="center"?u/2+c:u+2+c:0,w=0,b=r.length;w<b;++w){for(p=r[w],g=this.labelTextColors[w],n.fillStyle=g,V(p.before,y),_=p.lines,a&&_.length&&(this._drawColorBox(n,e,w,m,i),d=Math.max(h.lineHeight,l)),x=0,k=_.length;x<k;++x)y(_[x]),d=h.lineHeight;V(p.after,y)}f=0,d=h.lineHeight,V(this.afterBody,y),e.y-=s}drawFooter(e,n,i){const r=this.footer,s=r.length;let o,a;if(s){const l=el(i.rtl,this.x,this.width);for(e.x=Hs(this,i.footerAlign,i),e.y+=i.footerMarginTop,n.textAlign=l.textAlign(i.footerAlign),n.textBaseline="middle",o=Me(i.footerFont),n.fillStyle=i.footerColor,n.font=o.string,a=0;a<s;++a)n.fillText(r[a],l.x(e.x),e.y+o.lineHeight/2),e.y+=o.lineHeight+i.footerSpacing}}drawBackground(e,n,i,r){const{xAlign:s,yAlign:o}=this,{x:a,y:l}=e,{width:u,height:c}=i,{topLeft:h,topRight:d,bottomLeft:f,bottomRight:m}=Or(r.cornerRadius);n.fillStyle=r.backgroundColor,n.strokeStyle=r.borderColor,n.lineWidth=r.borderWidth,n.beginPath(),n.moveTo(a+h,l),o==="top"&&this.drawCaret(e,n,i,r),n.lineTo(a+u-d,l),n.quadraticCurveTo(a+u,l,a+u,l+d),o==="center"&&s==="right"&&this.drawCaret(e,n,i,r),n.lineTo(a+u,l+c-m),n.quadraticCurveTo(a+u,l+c,a+u-m,l+c),o==="bottom"&&this.drawCaret(e,n,i,r),n.lineTo(a+f,l+c),n.quadraticCurveTo(a,l+c,a,l+c-f),o==="center"&&s==="left"&&this.drawCaret(e,n,i,r),n.lineTo(a,l+h),n.quadraticCurveTo(a,l,a+h,l),n.closePath(),n.fill(),r.borderWidth>0&&n.stroke()}_updateAnimationTarget(e){const n=this.chart,i=this.$animations,r=i&&i.x,s=i&&i.y;if(r||s){const o=dr[e.position].call(this,this._active,this._eventPosition);if(!o)return;const a=this._size=uf(this,e),l=Object.assign({},o,this._size),u=cf(n,e,l),c=hf(e,l,u,n);(r._to!==c.x||s._to!==c.y)&&(this.xAlign=u.xAlign,this.yAlign=u.yAlign,this.width=a.width,this.height=a.height,this.caretX=o.x,this.caretY=o.y,this._resolveAnimations().update(this,c))}}_willRender(){return!!this.opacity}draw(e){const n=this.options.setContext(this.getContext());let i=this.opacity;if(!i)return;this._updateAnimationTarget(n);const r={width:this.width,height:this.height},s={x:this.x,y:this.y};i=Math.abs(i)<.001?0:i;const o=qe(n.padding),a=this.title.length||this.beforeBody.length||this.body.length||this.afterBody.length||this.footer.length;n.enabled&&a&&(e.save(),e.globalAlpha=i,this.drawBackground(s,e,r,n),G1(e,n.textDirection),s.y+=o.top,this.drawTitle(s,e,n),this.drawBody(s,e,n),this.drawFooter(s,e,n),q1(e,n.textDirection),e.restore())}getActiveElements(){return this._active||[]}setActiveElements(e,n){const i=this._active,r=e.map(({datasetIndex:a,index:l})=>{const u=this.chart.getDatasetMeta(a);if(!u)throw new Error("Cannot find a dataset at index "+a);return{datasetIndex:a,element:u.data[l],index:l}}),s=!jo(i,r),o=this._positionChanged(r,n);(s||o)&&(this._active=r,this._eventPosition=n,this._ignoreReplayEvents=!0,this.update(!0))}handleEvent(e,n,i=!0){if(n&&this._ignoreReplayEvents)return!1;this._ignoreReplayEvents=!1;const r=this.options,s=this._active||[],o=this._getActiveElements(e,s,n,i),a=this._positionChanged(o,e),l=n||!jo(o,s)||a;return l&&(this._active=o,(r.enabled||r.external)&&(this._eventPosition={x:e.x,y:e.y},this.update(!0,n))),l}_getActiveElements(e,n,i,r){const s=this.options;if(e.type==="mouseout")return[];if(!r)return n.filter(a=>this.chart.data.datasets[a.datasetIndex]&&this.chart.getDatasetMeta(a.datasetIndex).controller.getParsed(a.index)!==void 0);const o=this.chart.getElementsAtEventForMode(e,s.mode,s,i);return s.reverse&&o.reverse(),o}_positionChanged(e,n){const{caretX:i,caretY:r,options:s}=this,o=dr[s.position].call(this,e,n);return o!==!1&&(i!==o.x||r!==o.y)}}I(gu,"positioners",dr);var Kb={id:"tooltip",_element:gu,positioners:dr,afterInit(t,e,n){n&&(t.tooltip=new gu({chart:t,options:n}))},beforeUpdate(t,e,n){t.tooltip&&t.tooltip.initialize(n)},reset(t,e,n){t.tooltip&&t.tooltip.initialize(n)},afterDraw(t){const e=t.tooltip;if(e&&e._willRender()){const n={tooltip:e};if(t.notifyPlugins("beforeTooltipDraw",{...n,cancelable:!0})===!1)return;e.draw(t.ctx),t.notifyPlugins("afterTooltipDraw",n)}},afterEvent(t,e){if(t.tooltip){const n=e.replay;t.tooltip.handleEvent(e.event,n,e.inChartArea)&&(e.changed=!0)}},defaults:{enabled:!0,external:null,position:"average",backgroundColor:"rgba(0,0,0,0.8)",titleColor:"#fff",titleFont:{weight:"bold"},titleSpacing:2,titleMarginBottom:6,titleAlign:"left",bodyColor:"#fff",bodySpacing:2,bodyFont:{},bodyAlign:"left",footerColor:"#fff",footerSpacing:2,footerMarginTop:6,footerFont:{weight:"bold"},footerAlign:"left",padding:6,caretPadding:2,caretSize:5,cornerRadius:6,boxHeight:(t,e)=>e.bodyFont.size,boxWidth:(t,e)=>e.bodyFont.size,multiKeyBackground:"#fff",displayColors:!0,boxPadding:0,borderColor:"rgba(0,0,0,0)",borderWidth:0,animation:{duration:400,easing:"easeOutQuart"},animations:{numbers:{type:"number",properties:["x","y","width","height","caretX","caretY"]},opacity:{easing:"linear",duration:200}},callbacks:Km},defaultRoutes:{bodyFont:"font",footerFont:"font",titleFont:"font"},descriptors:{_scriptable:t=>t!=="filter"&&t!=="itemSort"&&t!=="external",_indexable:!1,callbacks:{_scriptable:!1,_indexable:!1},animation:{_fallback:!1},animations:{_fallback:"animation"}},additionalOptionScopes:["interaction"]};const Yb=(t,e,n,i)=>(typeof e=="string"?(n=t.push(e)-1,i.unshift({index:n,label:e})):isNaN(e)&&(n=null),n);function Gb(t,e,n,i){const r=t.indexOf(e);if(r===-1)return Yb(t,e,n,i);const s=t.lastIndexOf(e);return r!==s?n:r}const qb=(t,e)=>t===null?null:it(Math.round(t),0,e);function pf(t){const e=this.getLabels();return t>=0&&t<e.length?e[t]:t}class mu extends Xn{constructor(e){super(e),this._startValue=void 0,this._valueRange=0,this._addedLabels=[]}init(e){const n=this._addedLabels;if(n.length){const i=this.getLabels();for(const{index:r,label:s}of n)i[r]===s&&i.splice(r,1);this._addedLabels=[]}super.init(e)}parse(e,n){if(J(e))return null;const i=this.getLabels();return n=isFinite(n)&&i[n]===e?n:Gb(i,e,W(n,e),this._addedLabels),qb(n,i.length-1)}determineDataLimits(){const{minDefined:e,maxDefined:n}=this.getUserBounds();let{min:i,max:r}=this.getMinMax(!0);this.options.bounds==="ticks"&&(e||(i=0),n||(r=this.getLabels().length-1)),this.min=i,this.max=r}buildTicks(){const e=this.min,n=this.max,i=this.options.offset,r=[];let s=this.getLabels();s=e===0&&n===s.length-1?s:s.slice(e,n+1),this._valueRange=Math.max(s.length-(i?0:1),1),this._startValue=this.min-(i?.5:0);for(let o=e;o<=n;o++)r.push({value:o});return r}getLabelForValue(e){return pf.call(this,e)}configure(){super.configure(),this.isHorizontal()||(this._reversePixels=!this._reversePixels)}getPixelForValue(e){return typeof e!="number"&&(e=this.parse(e)),e===null?NaN:this.getPixelForDecimal((e-this._startValue)/this._valueRange)}getPixelForTick(e){const n=this.ticks;return e<0||e>n.length-1?null:this.getPixelForValue(n[e].value)}getValueForPixel(e){return Math.round(this._startValue+this.getDecimalForPixel(e)*this._valueRange)}getBasePixel(){return this.bottom}}I(mu,"id","category"),I(mu,"defaults",{ticks:{callback:pf}});function Qb(t,e){const n=[],{bounds:r,step:s,min:o,max:a,precision:l,count:u,maxTicks:c,maxDigits:h,includeBounds:d}=t,f=s||1,m=c-1,{min:y,max:v}=e,p=!J(o),g=!J(a),_=!J(u),w=(v-y)/(h+1);let x=wd((v-y)/m/f)*f,b,k,S,M;if(x<1e-14&&!p&&!g)return[{value:y},{value:v}];M=Math.ceil(v/x)-Math.floor(y/x),M>m&&(x=wd(M*x/m/f)*f),J(l)||(b=Math.pow(10,l),x=Math.ceil(x*b)/b),r==="ticks"?(k=Math.floor(y/x)*x,S=Math.ceil(v/x)*x):(k=y,S=v),p&&g&&s&&Ux((a-o)/s,x/1e3)?(M=Math.round(Math.min((a-o)/x,c)),x=(a-o)/M,k=o,S=a):_?(k=p?o:k,S=g?a:S,M=u-1,x=(S-k)/M):(M=(S-k)/x,Cr(M,Math.round(M),x/1e3)?M=Math.round(M):M=Math.ceil(M));const L=Math.max(xd(x),xd(k));b=Math.pow(10,J(l)?L:l),k=Math.round(k*b)/b,S=Math.round(S*b)/b;let D=0;for(p&&(d&&k!==o?(n.push({value:o}),k<o&&D++,Cr(Math.round((k+D*x)*b)/b,o,gf(o,w,t))&&D++):k<o&&D++);D<M;++D){const B=Math.round((k+D*x)*b)/b;if(g&&B>a)break;n.push({value:B})}return g&&d&&S!==a?n.length&&Cr(n[n.length-1].value,a,gf(a,w,t))?n[n.length-1].value=a:n.push({value:a}):(!g||S===a)&&n.push({value:S}),n}function gf(t,e,{horizontal:n,minRotation:i}){const r=nn(i),s=(n?Math.sin(r):Math.cos(r))||.001,o=.75*e*(""+t).length;return Math.min(e/s,o)}class Ho extends Xn{constructor(e){super(e),this.start=void 0,this.end=void 0,this._startValue=void 0,this._endValue=void 0,this._valueRange=0}parse(e,n){return J(e)||(typeof e=="number"||e instanceof Number)&&!isFinite(+e)?null:+e}handleTickRangeOptions(){const{beginAtZero:e}=this.options,{minDefined:n,maxDefined:i}=this.getUserBounds();let{min:r,max:s}=this;const o=l=>r=n?r:l,a=l=>s=i?s:l;if(e){const l=Ai(r),u=Ai(s);l<0&&u<0?a(0):l>0&&u>0&&o(0)}if(r===s){let l=s===0?1:Math.abs(s*.05);a(s+l),e||o(r-l)}this.min=r,this.max=s}getTickLimit(){const e=this.options.ticks;let{maxTicksLimit:n,stepSize:i}=e,r;return i?(r=Math.ceil(this.max/i)-Math.floor(this.min/i)+1,r>1e3&&(console.warn(`scales.${this.id}.ticks.stepSize: ${i} would result generating up to ${r} ticks. Limiting to 1000.`),r=1e3)):(r=this.computeTickLimit(),n=n||11),n&&(r=Math.min(n,r)),r}computeTickLimit(){return Number.POSITIVE_INFINITY}buildTicks(){const e=this.options,n=e.ticks;let i=this.getTickLimit();i=Math.max(2,i);const r={maxTicks:i,bounds:e.bounds,min:e.min,max:e.max,precision:n.precision,step:n.stepSize,count:n.count,maxDigits:this._maxDigits(),horizontal:this.isHorizontal(),minRotation:n.minRotation||0,includeBounds:n.includeBounds!==!1},s=this._range||this,o=Qb(r,s);return e.bounds==="ticks"&&mm(o,this,"value"),e.reverse?(o.reverse(),this.start=this.max,this.end=this.min):(this.start=this.min,this.end=this.max),o}configure(){const e=this.ticks;let n=this.min,i=this.max;if(super.configure(),this.options.offset&&e.length){const r=(i-n)/Math.max(e.length-1,1)/2;n-=r,i+=r}this._startValue=n,this._endValue=i,this._valueRange=i-n}getLabelForValue(e){return Pc(e,this.chart.options.locale,this.options.ticks.format)}}class yu extends Ho{determineDataLimits(){const{min:e,max:n}=this.getMinMax(!0);this.min=ve(e)?e:0,this.max=ve(n)?n:1,this.handleTickRangeOptions()}computeTickLimit(){const e=this.isHorizontal(),n=e?this.width:this.height,i=nn(this.options.ticks.minRotation),r=(e?Math.sin(i):Math.cos(i))||.001,s=this._resolveTickFontOptions(0);return Math.ceil(n/Math.min(40,s.lineHeight/r))}getPixelForValue(e){return e===null?NaN:this.getPixelForDecimal((e-this._startValue)/this._valueRange)}getValueForPixel(e){return this._startValue+this.getDecimalForPixel(e)*this._valueRange}}I(yu,"id","linear"),I(yu,"defaults",{ticks:{callback:pa.formatters.numeric}});const ns=t=>Math.floor(tn(t)),Pn=(t,e)=>Math.pow(10,ns(t)+e);function mf(t){return t/Math.pow(10,ns(t))===1}function yf(t,e,n){const i=Math.pow(10,n),r=Math.floor(t/i);return Math.ceil(e/i)-r}function Xb(t,e){const n=e-t;let i=ns(n);for(;yf(t,e,i)>10;)i++;for(;yf(t,e,i)<10;)i--;return Math.min(i,ns(t))}function Jb(t,{min:e,max:n}){e=Ve(t.min,e);const i=[],r=ns(e);let s=Xb(e,n),o=s<0?Math.pow(10,Math.abs(s)):1;const a=Math.pow(10,s),l=r>s?Math.pow(10,r):0,u=Math.round((e-l)*o)/o,c=Math.floor((e-l)/a/10)*a*10;let h=Math.floor((u-c)/Math.pow(10,s)),d=Ve(t.min,Math.round((l+c+h*Math.pow(10,s))*o)/o);for(;d<n;)i.push({value:d,major:mf(d),significand:h}),h>=10?h=h<15?15:20:h++,h>=20&&(s++,h=2,o=s>=0?1:o),d=Math.round((l+c+h*Math.pow(10,s))*o)/o;const f=Ve(t.max,d);return i.push({value:f,major:mf(f),significand:h}),i}class vf extends Xn{constructor(e){super(e),this.start=void 0,this.end=void 0,this._startValue=void 0,this._valueRange=0}parse(e,n){const i=Ho.prototype.parse.apply(this,[e,n]);if(i===0){this._zero=!0;return}return ve(i)&&i>0?i:null}determineDataLimits(){const{min:e,max:n}=this.getMinMax(!0);this.min=ve(e)?Math.max(0,e):null,this.max=ve(n)?Math.max(0,n):null,this.options.beginAtZero&&(this._zero=!0),this._zero&&this.min!==this._suggestedMin&&!ve(this._userMin)&&(this.min=e===Pn(this.min,0)?Pn(this.min,-1):Pn(this.min,0)),this.handleTickRangeOptions()}handleTickRangeOptions(){const{minDefined:e,maxDefined:n}=this.getUserBounds();let i=this.min,r=this.max;const s=a=>i=e?i:a,o=a=>r=n?r:a;i===r&&(i<=0?(s(1),o(10)):(s(Pn(i,-1)),o(Pn(r,1)))),i<=0&&s(Pn(r,-1)),r<=0&&o(Pn(i,1)),this.min=i,this.max=r}buildTicks(){const e=this.options,n={min:this._userMin,max:this._userMax},i=Jb(n,this);return e.bounds==="ticks"&&mm(i,this,"value"),e.reverse?(i.reverse(),this.start=this.max,this.end=this.min):(this.start=this.min,this.end=this.max),i}getLabelForValue(e){return e===void 0?"0":Pc(e,this.chart.options.locale,this.options.ticks.format)}configure(){const e=this.min;super.configure(),this._startValue=tn(e),this._valueRange=tn(this.max)-tn(e)}getPixelForValue(e){return(e===void 0||e===0)&&(e=this.min),e===null||isNaN(e)?NaN:this.getPixelForDecimal(e===this.min?0:(tn(e)-this._startValue)/this._valueRange)}getValueForPixel(e){const n=this.getDecimalForPixel(e);return Math.pow(10,this._startValue+n*this._valueRange)}}I(vf,"id","logarithmic"),I(vf,"defaults",{ticks:{callback:pa.formatters.logarithmic,major:{enabled:!0}}});function vu(t){const e=t.ticks;if(e.display&&t.display){const n=qe(e.backdropPadding);return W(e.font&&e.font.size,ue.font.size)+n.height}return 0}function Zb(t,e,n){return n=oe(n)?n:[n],{w:l1(t,e.string,n),h:n.length*e.lineHeight}}function _f(t,e,n,i,r){return t===i||t===r?{start:e-n/2,end:e+n/2}:t<i||t>r?{start:e-n,end:e}:{start:e,end:e+n}}function eS(t){const e={l:t.left+t._padding.left,r:t.right-t._padding.right,t:t.top+t._padding.top,b:t.bottom-t._padding.bottom},n=Object.assign({},e),i=[],r=[],s=t._pointLabels.length,o=t.options.pointLabels,a=o.centerPointLabels?de/s:0;for(let l=0;l<s;l++){const u=o.setContext(t.getPointLabelContext(l));r[l]=u.padding;const c=t.getPointPosition(l,t.drawingArea+r[l],a),h=Me(u.font),d=Zb(t.ctx,h,t._pointLabels[l]);i[l]=d;const f=dt(t.getIndexAngle(l)+a),m=Math.round(Sc(f)),y=_f(m,c.x,d.w,0,180),v=_f(m,c.y,d.h,90,270);tS(n,e,f,y,v)}t.setCenterPoint(e.l-n.l,n.r-e.r,e.t-n.t,n.b-e.b),t._pointLabelItems=rS(t,i,r)}function tS(t,e,n,i,r){const s=Math.abs(Math.sin(n)),o=Math.abs(Math.cos(n));let a=0,l=0;i.start<e.l?(a=(e.l-i.start)/s,t.l=Math.min(t.l,e.l-a)):i.end>e.r&&(a=(i.end-e.r)/s,t.r=Math.max(t.r,e.r+a)),r.start<e.t?(l=(e.t-r.start)/o,t.t=Math.min(t.t,e.t-l)):r.end>e.b&&(l=(r.end-e.b)/o,t.b=Math.max(t.b,e.b+l))}function nS(t,e,n){const i=t.drawingArea,{extra:r,additionalAngle:s,padding:o,size:a}=n,l=t.getPointPosition(e,i+r+o,s),u=Math.round(Sc(dt(l.angle+Ke))),c=aS(l.y,a.h,u),h=sS(u),d=oS(l.x,a.w,h);return{visible:!0,x:l.x,y:c,textAlign:h,left:d,top:c,right:d+a.w,bottom:c+a.h}}function iS(t,e){if(!e)return!0;const{left:n,top:i,right:r,bottom:s}=t;return!(Dt({x:n,y:i},e)||Dt({x:n,y:s},e)||Dt({x:r,y:i},e)||Dt({x:r,y:s},e))}function rS(t,e,n){const i=[],r=t._pointLabels.length,s=t.options,{centerPointLabels:o,display:a}=s.pointLabels,l={extra:vu(s)/2,additionalAngle:o?de/r:0};let u;for(let c=0;c<r;c++){l.padding=n[c],l.size=e[c];const h=nS(t,c,l);i.push(h),a==="auto"&&(h.visible=iS(h,u),h.visible&&(u=h))}return i}function sS(t){return t===0||t===180?"center":t<180?"left":"right"}function oS(t,e,n){return n==="right"?t-=e:n==="center"&&(t-=e/2),t}function aS(t,e,n){return n===90||n===270?t-=e/2:(n>270||n<90)&&(t-=e),t}function lS(t,e,n){const{left:i,top:r,right:s,bottom:o}=n,{backdropColor:a}=e;if(!J(a)){const l=Or(e.borderRadius),u=qe(e.backdropPadding);t.fillStyle=a;const c=i-u.left,h=r-u.top,d=s-i+u.width,f=o-r+u.height;Object.values(l).some(m=>m!==0)?(t.beginPath(),hu(t,{x:c,y:h,w:d,h:f,radius:l}),t.fill()):t.fillRect(c,h,d,f)}}function uS(t,e){const{ctx:n,options:{pointLabels:i}}=t;for(let r=e-1;r>=0;r--){const s=t._pointLabelItems[r];if(!s.visible)continue;const o=i.setContext(t.getPointLabelContext(r));lS(n,o,s);const a=Me(o.font),{x:l,y:u,textAlign:c}=s;es(n,t._pointLabels[r],l,u+a.lineHeight/2,a,{color:o.color,textAlign:c,textBaseline:"middle"})}}function Ym(t,e,n,i){const{ctx:r}=t;if(n)r.arc(t.xCenter,t.yCenter,e,0,mt);else{let s=t.getPointPosition(0,e);r.moveTo(s.x,s.y);for(let o=1;o<i;o++)s=t.getPointPosition(o,e),r.lineTo(s.x,s.y)}}function cS(t,e,n,i,r){const s=t.ctx,o=e.circular,{color:a,lineWidth:l}=e;!o&&!i||!a||!l||n<0||(s.save(),s.strokeStyle=a,s.lineWidth=l,s.setLineDash(r.dash),s.lineDashOffset=r.dashOffset,s.beginPath(),Ym(t,n,o,i),s.closePath(),s.stroke(),s.restore())}function hS(t,e,n){return xn(t,{label:n,index:e,type:"pointLabel"})}class Ws extends Ho{constructor(e){super(e),this.xCenter=void 0,this.yCenter=void 0,this.drawingArea=void 0,this._pointLabels=[],this._pointLabelItems=[]}setDimensions(){const e=this._padding=qe(vu(this.options)/2),n=this.width=this.maxWidth-e.width,i=this.height=this.maxHeight-e.height;this.xCenter=Math.floor(this.left+n/2+e.left),this.yCenter=Math.floor(this.top+i/2+e.top),this.drawingArea=Math.floor(Math.min(n,i)/2)}determineDataLimits(){const{min:e,max:n}=this.getMinMax(!1);this.min=ve(e)&&!isNaN(e)?e:0,this.max=ve(n)&&!isNaN(n)?n:0,this.handleTickRangeOptions()}computeTickLimit(){return Math.ceil(this.drawingArea/vu(this.options))}generateTickLabels(e){Ho.prototype.generateTickLabels.call(this,e),this._pointLabels=this.getLabels().map((n,i)=>{const r=re(this.options.pointLabels.callback,[n,i],this);return r||r===0?r:""}).filter((n,i)=>this.chart.getDataVisibility(i))}fit(){const e=this.options;e.display&&e.pointLabels.display?eS(this):this.setCenterPoint(0,0,0,0)}setCenterPoint(e,n,i,r){this.xCenter+=Math.floor((e-n)/2),this.yCenter+=Math.floor((i-r)/2),this.drawingArea-=Math.min(this.drawingArea/2,Math.max(e,n,i,r))}getIndexAngle(e){const n=mt/(this._pointLabels.length||1),i=this.options.startAngle||0;return dt(e*n+nn(i))}getDistanceFromCenterForValue(e){if(J(e))return NaN;const n=this.drawingArea/(this.max-this.min);return this.options.reverse?(this.max-e)*n:(e-this.min)*n}getValueForDistanceFromCenter(e){if(J(e))return NaN;const n=e/(this.drawingArea/(this.max-this.min));return this.options.reverse?this.max-n:this.min+n}getPointLabelContext(e){const n=this._pointLabels||[];if(e>=0&&e<n.length){const i=n[e];return hS(this.getContext(),e,i)}}getPointPosition(e,n,i=0){const r=this.getIndexAngle(e)-Ke+i;return{x:Math.cos(r)*n+this.xCenter,y:Math.sin(r)*n+this.yCenter,angle:r}}getPointPositionForValue(e,n){return this.getPointPosition(e,this.getDistanceFromCenterForValue(n))}getBasePosition(e){return this.getPointPositionForValue(e||0,this.getBaseValue())}getPointLabelPosition(e){const{left:n,top:i,right:r,bottom:s}=this._pointLabelItems[e];return{left:n,top:i,right:r,bottom:s}}drawBackground(){const{backgroundColor:e,grid:{circular:n}}=this.options;if(e){const i=this.ctx;i.save(),i.beginPath(),Ym(this,this.getDistanceFromCenterForValue(this._endValue),n,this._pointLabels.length),i.closePath(),i.fillStyle=e,i.fill(),i.restore()}}drawGrid(){const e=this.ctx,n=this.options,{angleLines:i,grid:r,border:s}=n,o=this._pointLabels.length;let a,l,u;if(n.pointLabels.display&&uS(this,o),r.display&&this.ticks.forEach((c,h)=>{if(h!==0||h===0&&this.min<0){l=this.getDistanceFromCenterForValue(c.value);const d=this.getContext(h),f=r.setContext(d),m=s.setContext(d);cS(this,f,l,o,m)}}),i.display){for(e.save(),a=o-1;a>=0;a--){const c=i.setContext(this.getPointLabelContext(a)),{color:h,lineWidth:d}=c;!d||!h||(e.lineWidth=d,e.strokeStyle=h,e.setLineDash(c.borderDash),e.lineDashOffset=c.borderDashOffset,l=this.getDistanceFromCenterForValue(n.ticks.reverse?this.min:this.max),u=this.getPointPosition(a,l),e.beginPath(),e.moveTo(this.xCenter,this.yCenter),e.lineTo(u.x,u.y),e.stroke())}e.restore()}}drawBorder(){}drawLabels(){const e=this.ctx,n=this.options,i=n.ticks;if(!i.display)return;const r=this.getIndexAngle(0);let s,o;e.save(),e.translate(this.xCenter,this.yCenter),e.rotate(r),e.textAlign="center",e.textBaseline="middle",this.ticks.forEach((a,l)=>{if(l===0&&this.min>=0&&!n.reverse)return;const u=i.setContext(this.getContext(l)),c=Me(u.font);if(s=this.getDistanceFromCenterForValue(this.ticks[l].value),u.showLabelBackdrop){e.font=c.string,o=e.measureText(a.label).width,e.fillStyle=u.backdropColor;const h=qe(u.backdropPadding);e.fillRect(-o/2-h.left,-s-c.size/2-h.top,o+h.width,c.size+h.height)}es(e,a.label,0,-s,c,{color:u.color,strokeColor:u.textStrokeColor,strokeWidth:u.textStrokeWidth})}),e.restore()}drawTitle(){}}I(Ws,"id","radialLinear"),I(Ws,"defaults",{display:!0,animate:!0,position:"chartArea",angleLines:{display:!0,lineWidth:1,borderDash:[],borderDashOffset:0},grid:{circular:!1},startAngle:0,ticks:{showLabelBackdrop:!0,callback:pa.formatters.numeric},pointLabels:{backdropColor:void 0,backdropPadding:2,display:!0,font:{size:10},callback(e){return e},padding:5,centerPointLabels:!1}}),I(Ws,"defaultRoutes",{"angleLines.color":"borderColor","pointLabels.color":"color","ticks.color":"color"}),I(Ws,"descriptors",{angleLines:{_fallback:"grid"}});const ya={millisecond:{common:!0,size:1,steps:1e3},second:{common:!0,size:1e3,steps:60},minute:{common:!0,size:6e4,steps:60},hour:{common:!0,size:36e5,steps:24},day:{common:!0,size:864e5,steps:30},week:{common:!1,size:6048e5,steps:4},month:{common:!0,size:2628e6,steps:12},quarter:{common:!1,size:7884e6,steps:4},year:{common:!0,size:3154e7}},Ne=Object.keys(ya);function wf(t,e){return t-e}function xf(t,e){if(J(e))return null;const n=t._adapter,{parser:i,round:r,isoWeekday:s}=t._parseOpts;let o=e;return typeof i=="function"&&(o=i(o)),ve(o)||(o=typeof i=="string"?n.parse(o,i):n.parse(o)),o===null?null:(r&&(o=r==="week"&&(Zr(s)||s===!0)?n.startOf(o,"isoWeek",s):n.startOf(o,r)),+o)}function kf(t,e,n,i){const r=Ne.length;for(let s=Ne.indexOf(t);s<r-1;++s){const o=ya[Ne[s]],a=o.steps?o.steps:Number.MAX_SAFE_INTEGER;if(o.common&&Math.ceil((n-e)/(a*o.size))<=i)return Ne[s]}return Ne[r-1]}function dS(t,e,n,i,r){for(let s=Ne.length-1;s>=Ne.indexOf(n);s--){const o=Ne[s];if(ya[o].common&&t._adapter.diff(r,i,o)>=e-1)return o}return Ne[n?Ne.indexOf(n):0]}function fS(t){for(let e=Ne.indexOf(t)+1,n=Ne.length;e<n;++e)if(ya[Ne[e]].common)return Ne[e]}function bf(t,e,n){if(!n)t[e]=!0;else if(n.length){const{lo:i,hi:r}=Cc(n,e),s=n[i]>=e?n[i]:n[r];t[s]=!0}}function pS(t,e,n,i){const r=t._adapter,s=+r.startOf(e[0].value,i),o=e[e.length-1].value;let a,l;for(a=s;a<=o;a=+r.add(a,1,i))l=n[a],l>=0&&(e[l].major=!0);return e}function Sf(t,e,n){const i=[],r={},s=e.length;let o,a;for(o=0;o<s;++o)a=e[o],r[a]=o,i.push({value:a,major:!1});return s===0||!n?i:pS(t,i,r,n)}class Wo extends Xn{constructor(e){super(e),this._cache={data:[],labels:[],all:[]},this._unit="day",this._majorUnit=void 0,this._offsets={},this._normalized=!1,this._parseOpts=void 0}init(e,n={}){const i=e.time||(e.time={}),r=this._adapter=new vk._date(e.adapters.date);r.init(n),Sr(i.displayFormats,r.formats()),this._parseOpts={parser:i.parser,round:i.round,isoWeekday:i.isoWeekday},super.init(e),this._normalized=n.normalized}parse(e,n){return e===void 0?null:xf(this,e)}beforeLayout(){super.beforeLayout(),this._cache={data:[],labels:[],all:[]}}determineDataLimits(){const e=this.options,n=this._adapter,i=e.time.unit||"day";let{min:r,max:s,minDefined:o,maxDefined:a}=this.getUserBounds();function l(u){!o&&!isNaN(u.min)&&(r=Math.min(r,u.min)),!a&&!isNaN(u.max)&&(s=Math.max(s,u.max))}(!o||!a)&&(l(this._getLabelBounds()),(e.bounds!=="ticks"||e.ticks.source!=="labels")&&l(this.getMinMax(!1))),r=ve(r)&&!isNaN(r)?r:+n.startOf(Date.now(),i),s=ve(s)&&!isNaN(s)?s:+n.endOf(Date.now(),i)+1,this.min=Math.min(r,s-1),this.max=Math.max(r+1,s)}_getLabelBounds(){const e=this.getLabelTimestamps();let n=Number.POSITIVE_INFINITY,i=Number.NEGATIVE_INFINITY;return e.length&&(n=e[0],i=e[e.length-1]),{min:n,max:i}}buildTicks(){const e=this.options,n=e.time,i=e.ticks,r=i.source==="labels"?this.getLabelTimestamps():this._generate();e.bounds==="ticks"&&r.length&&(this.min=this._userMin||r[0],this.max=this._userMax||r[r.length-1]);const s=this.min,o=this.max,a=Yx(r,s,o);return this._unit=n.unit||(i.autoSkip?kf(n.minUnit,this.min,this.max,this._getLabelCapacity(s)):dS(this,a.length,n.minUnit,this.min,this.max)),this._majorUnit=!i.major.enabled||this._unit==="year"?void 0:fS(this._unit),this.initOffsets(r),e.reverse&&a.reverse(),Sf(this,a,this._majorUnit)}afterAutoSkip(){this.options.offsetAfterAutoskip&&this.initOffsets(this.ticks.map(e=>+e.value))}initOffsets(e=[]){let n=0,i=0,r,s;this.options.offset&&e.length&&(r=this.getDecimalForValue(e[0]),e.length===1?n=1-r:n=(this.getDecimalForValue(e[1])-r)/2,s=this.getDecimalForValue(e[e.length-1]),e.length===1?i=s:i=(s-this.getDecimalForValue(e[e.length-2]))/2);const o=e.length<3?.5:.25;n=it(n,0,o),i=it(i,0,o),this._offsets={start:n,end:i,factor:1/(n+1+i)}}_generate(){const e=this._adapter,n=this.min,i=this.max,r=this.options,s=r.time,o=s.unit||kf(s.minUnit,n,i,this._getLabelCapacity(n)),a=W(r.ticks.stepSize,1),l=o==="week"?s.isoWeekday:!1,u=Zr(l)||l===!0,c={};let h=n,d,f;if(u&&(h=+e.startOf(h,"isoWeek",l)),h=+e.startOf(h,u?"day":o),e.diff(i,n,o)>1e5*a)throw new Error(n+" and "+i+" are too far apart with stepSize of "+a+" "+o);const m=r.ticks.source==="data"&&this.getDataTimestamps();for(d=h,f=0;d<i;d=+e.add(d,a,o),f++)bf(c,d,m);return(d===i||r.bounds==="ticks"||f===1)&&bf(c,d,m),Object.keys(c).sort(wf).map(y=>+y)}getLabelForValue(e){const n=this._adapter,i=this.options.time;return i.tooltipFormat?n.format(e,i.tooltipFormat):n.format(e,i.displayFormats.datetime)}format(e,n){const r=this.options.time.displayFormats,s=this._unit,o=n||r[s];return this._adapter.format(e,o)}_tickFormatFunction(e,n,i,r){const s=this.options,o=s.ticks.callback;if(o)return re(o,[e,n,i],this);const a=s.time.displayFormats,l=this._unit,u=this._majorUnit,c=l&&a[l],h=u&&a[u],d=i[n],f=u&&h&&d&&d.major;return this._adapter.format(e,r||(f?h:c))}generateTickLabels(e){let n,i,r;for(n=0,i=e.length;n<i;++n)r=e[n],r.label=this._tickFormatFunction(r.value,n,e)}getDecimalForValue(e){return e===null?NaN:(e-this.min)/(this.max-this.min)}getPixelForValue(e){const n=this._offsets,i=this.getDecimalForValue(e);return this.getPixelForDecimal((n.start+i)*n.factor)}getValueForPixel(e){const n=this._offsets,i=this.getDecimalForPixel(e)/n.factor-n.end;return this.min+i*(this.max-this.min)}_getLabelSize(e){const n=this.options.ticks,i=this.ctx.measureText(e).width,r=nn(this.isHorizontal()?n.maxRotation:n.minRotation),s=Math.cos(r),o=Math.sin(r),a=this._resolveTickFontOptions(0).size;return{w:i*s+a*o,h:i*o+a*s}}_getLabelCapacity(e){const n=this.options.time,i=n.displayFormats,r=i[n.unit]||i.millisecond,s=this._tickFormatFunction(e,0,Sf(this,[e],this._majorUnit),r),o=this._getLabelSize(s),a=Math.floor(this.isHorizontal()?this.width/o.w:this.height/o.h)-1;return a>0?a:1}getDataTimestamps(){let e=this._cache.data||[],n,i;if(e.length)return e;const r=this.getMatchingVisibleMetas();if(this._normalized&&r.length)return this._cache.data=r[0].controller.getAllParsedValues(this);for(n=0,i=r.length;n<i;++n)e=e.concat(r[n].controller.getAllParsedValues(this));return this._cache.data=this.normalize(e)}getLabelTimestamps(){const e=this._cache.labels||[];let n,i;if(e.length)return e;const r=this.getLabels();for(n=0,i=r.length;n<i;++n)e.push(xf(this,r[n]));return this._cache.labels=this._normalized?e:this.normalize(e)}normalize(e){return qx(e.sort(wf))}}I(Wo,"id","time"),I(Wo,"defaults",{bounds:"data",adapters:{},time:{parser:!1,unit:!1,round:!1,isoWeekday:!1,minUnit:"millisecond",displayFormats:{}},ticks:{source:"auto",callback:!1,major:{enabled:!1}}});function Ks(t,e,n){let i=0,r=t.length-1,s,o,a,l;n?(e>=t[i].pos&&e<=t[r].pos&&({lo:i,hi:r}=Nn(t,"pos",e)),{pos:s,time:a}=t[i],{pos:o,time:l}=t[r]):(e>=t[i].time&&e<=t[r].time&&({lo:i,hi:r}=Nn(t,"time",e)),{time:s,pos:a}=t[i],{time:o,pos:l}=t[r]);const u=o-s;return u?a+(l-a)*(e-s)/u:a}class Cf extends Wo{constructor(e){super(e),this._table=[],this._minPos=void 0,this._tableRange=void 0}initOffsets(){const e=this._getTimestampsForTable(),n=this._table=this.buildLookupTable(e);this._minPos=Ks(n,this.min),this._tableRange=Ks(n,this.max)-this._minPos,super.initOffsets(e)}buildLookupTable(e){const{min:n,max:i}=this,r=[],s=[];let o,a,l,u,c;for(o=0,a=e.length;o<a;++o)u=e[o],u>=n&&u<=i&&r.push(u);if(r.length<2)return[{time:n,pos:0},{time:i,pos:1}];for(o=0,a=r.length;o<a;++o)c=r[o+1],l=r[o-1],u=r[o],Math.round((c+l)/2)!==u&&s.push({time:u,pos:o/(a-1)});return s}_generate(){const e=this.min,n=this.max;let i=super.getDataTimestamps();return(!i.includes(e)||!i.length)&&i.splice(0,0,e),(!i.includes(n)||i.length===1)&&i.push(n),i.sort((r,s)=>r-s)}_getTimestampsForTable(){let e=this._cache.all||[];if(e.length)return e;const n=this.getDataTimestamps(),i=this.getLabelTimestamps();return n.length&&i.length?e=this.normalize(n.concat(i)):e=n.length?n:i,e=this._cache.all=e,e}getDecimalForValue(e){return(Ks(this._table,e)-this._minPos)/this._tableRange}getValueForPixel(e){const n=this._offsets,i=this.getDecimalForPixel(e)/n.factor-n.end;return Ks(this._table,i*this._tableRange+this._minPos,!0)}}I(Cf,"id","timeseries"),I(Cf,"defaults",Wo.defaults);const Gm="label";function Ef(t,e){typeof t=="function"?t(e):t&&(t.current=e)}function gS(t,e){const n=t.options;n&&e&&Object.assign(n,e)}function qm(t,e){t.labels=e}function Qm(t,e){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Gm;const i=[];t.datasets=e.map(r=>{const s=t.datasets.find(o=>o[n]===r[n]);return!s||!r.data||i.includes(s)?{...r}:(i.push(s),Object.assign(s,r),s)})}function mS(t){let e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Gm;const n={labels:[],datasets:[]};return qm(n,t.labels),Qm(n,t.datasets,e),n}function yS(t,e){const{height:n=150,width:i=300,redraw:r=!1,datasetIdKey:s,type:o,data:a,options:l,plugins:u=[],fallbackContent:c,updateMode:h,...d}=t,f=E.useRef(null),m=E.useRef(),y=()=>{f.current&&(m.current=new ma(f.current,{type:o,data:mS(a,s),options:l&&{...l},plugins:u}),Ef(e,m.current))},v=()=>{Ef(e,null),m.current&&(m.current.destroy(),m.current=null)};return E.useEffect(()=>{!r&&m.current&&l&&gS(m.current,l)},[r,l]),E.useEffect(()=>{!r&&m.current&&qm(m.current.config.data,a.labels)},[r,a.labels]),E.useEffect(()=>{!r&&m.current&&a.datasets&&Qm(m.current.config.data,a.datasets,s)},[r,a.datasets]),E.useEffect(()=>{m.current&&(r?(v(),setTimeout(y)):m.current.update(h))},[r,l,a.labels,a.datasets,h]),E.useEffect(()=>{m.current&&(v(),setTimeout(y))},[o]),E.useEffect(()=>(y(),()=>v()),[]),zi.createElement("canvas",Object.assign({ref:f,role:"img",height:n,width:i},d),c)}const vS=E.forwardRef(yS);function _S(t,e){return ma.register(e),E.forwardRef((n,i)=>zi.createElement(vS,Object.assign({},n,{ref:i,type:t})))}const wS=_S("line",oo);ma.register(mu,yu,uo,hr,zb,Kb);function Pf(){const t={responsive:!0,plugins:{title:{display:!0,text:"File writes per second"}},scales:{x:{grid:{display:!1}},y:{ticks:{callback:function(i,r,s){return i+"wps"}},grid:{display:!1}}}},e=["January","February","March","April","May","June","July"],n={labels:e,datasets:[{label:"Dataset 1",data:e.map(()=>Math.random()*1e3),borderColor:"rgb(255, 99, 132)",backgroundColor:"rgba(255, 99, 132, 0.5)"},{label:"Dataset 2",data:e.map(()=>Math.random()*1e3),borderColor:"rgb(53, 162, 235)",backgroundColor:"rgba(53, 162, 235, 0.5)"}]};return O.jsx(wS,{data:n,options:t})}function xS(t){const e=ha(),[n,i]=E.useState([]);E.useEffect(()=>{t.session||e("/login")},[t.session]);const r=E.useCallback(async()=>{const{data:s,error:o}=await t.supabase.from("file").select();if(o){console.error(o);return}i(s.map(a=>a))},[t.supabase]);return E.useEffect(()=>{r()},[]),O.jsx(O.Fragment,{children:O.jsxs("div",{className:"flex h-screen",children:[O.jsx(hm,{}),O.jsxs("main",{className:"flex-1 overflow-y-auto",children:[O.jsx("div",{className:"w-3/12",children:O.jsx(Pf,{})}),O.jsx("div",{className:"w-3/12",children:O.jsx(Pf,{})})]})]})})}function kS(t={}){const{nonce:e,onScriptLoadSuccess:n,onScriptLoadError:i}=t,[r,s]=E.useState(!1),o=E.useRef(n);o.current=n;const a=E.useRef(i);return a.current=i,E.useEffect(()=>{const l=document.createElement("script");return l.src="https://accounts.google.com/gsi/client",l.async=!0,l.defer=!0,l.nonce=e,l.onload=()=>{var u;s(!0),(u=o.current)===null||u===void 0||u.call(o)},l.onerror=()=>{var u;s(!1),(u=a.current)===null||u===void 0||u.call(a)},document.body.appendChild(l),()=>{document.body.removeChild(l)}},[e]),r}const Xm=E.createContext(null);function bS({clientId:t,nonce:e,onScriptLoadSuccess:n,onScriptLoadError:i,children:r}){const s=kS({nonce:e,onScriptLoadSuccess:n,onScriptLoadError:i}),o=E.useMemo(()=>({clientId:t,scriptLoadedSuccessfully:s}),[t,s]);return zi.createElement(Xm.Provider,{value:o},r)}function SS(){const t=E.useContext(Xm);if(!t)throw new Error("Google OAuth components must be used within GoogleOAuthProvider");return t}function CS(t){var e;return(e=t==null?void 0:t.clientId)!==null&&e!==void 0?e:t==null?void 0:t.client_id}const ES={large:40,medium:32,small:20};function PS({onSuccess:t,onError:e,useOneTap:n,promptMomentNotification:i,type:r="standard",theme:s="outline",size:o="large",text:a,shape:l,logo_alignment:u,width:c,locale:h,click_listener:d,containerProps:f,...m}){const y=E.useRef(null),{clientId:v,scriptLoadedSuccessfully:p}=SS(),g=E.useRef(t);g.current=t;const _=E.useRef(e);_.current=e;const w=E.useRef(i);return w.current=i,E.useEffect(()=>{var x,b,k,S,M,L,D,B,ce;if(p)return(k=(b=(x=window==null?void 0:window.google)===null||x===void 0?void 0:x.accounts)===null||b===void 0?void 0:b.id)===null||k===void 0||k.initialize({client_id:v,callback:ae=>{var $;if(!(ae!=null&&ae.credential))return($=_.current)===null||$===void 0?void 0:$.call(_);const{credential:K,select_by:me}=ae;g.current({credential:K,clientId:CS(ae),select_by:me})},...m}),(L=(M=(S=window==null?void 0:window.google)===null||S===void 0?void 0:S.accounts)===null||M===void 0?void 0:M.id)===null||L===void 0||L.renderButton(y.current,{type:r,theme:s,size:o,text:a,shape:l,logo_alignment:u,width:c,locale:h,click_listener:d}),n&&((ce=(B=(D=window==null?void 0:window.google)===null||D===void 0?void 0:D.accounts)===null||B===void 0?void 0:B.id)===null||ce===void 0||ce.prompt(w.current)),()=>{var ae,$,K;n&&((K=($=(ae=window==null?void 0:window.google)===null||ae===void 0?void 0:ae.accounts)===null||$===void 0?void 0:$.id)===null||K===void 0||K.cancel())}},[v,p,n,r,s,o,a,l,u,c,h]),zi.createElement("div",{...f,ref:y,style:{height:ES[o],...f==null?void 0:f.style}})}function TS(t){const e=ha();return E.useEffect(()=>{t.supabase.auth.getSession().then(({data:{session:i}})=>{t.setSession(i),console.log("LOGIN SESSION",i)});const{data:{subscription:n}}=t.supabase.auth.onAuthStateChange((i,r)=>{t.setSession(r),console.log("SESSION CHANGE",r)});return()=>n.unsubscribe()},[t.supabase]),E.useEffect(()=>{t.session&&e("/")},[t.session]),O.jsx(O.Fragment,{children:O.jsx("div",{className:"flex flex-col items-center h-screen w-screen",children:O.jsxs("div",{className:"flex flex-row items-center gap-x-8 m-auto",children:[O.jsx("div",{children:O.jsx("h1",{className:"text-4xl text-bold font-sans antialiased text-blue-700 tracking-wide",children:"fs-tracer"})}),O.jsx("div",{className:"block max-w-sm p-6 bg-white border border-gray-200 rounded-lg shadow dark:bg-gray-800 dark:border-gray-700",children:O.jsxs("div",{className:"mx-7 my-5",children:[O.jsx("h5",{className:"mb-2 text-2xl font-bold font-sans antialiased text-gray-900",children:"Hello!"}),O.jsxs("div",{className:"flex flex-row items-center gap-2",children:[O.jsx("span",{className:"font-normal text-gray-700 dark:text-gray-400",children:"Continue with"}),O.jsx("span",{children:O.jsx(bS,{clientId:"952965459060-nrnrsdoq22mf646vfa72hk410pvdda5q.apps.googleusercontent.com",children:O.jsx(PS,{onSuccess:async n=>{await t.supabase.auth.signInWithIdToken({provider:"google",token:n.credential})},onError:()=>{console.log("Login Failed")},width:7777,size:"large",type:"icon"})})})]})]})})]})})})}function OS(t){const e=ha();return E.useEffect(()=>{(async()=>{await t.supabase.auth.signOut()})(),e("/login")},[t.session]),O.jsx(O.Fragment,{})}function LS(t){const e=ha(),[n,i]=E.useState([]);E.useEffect(()=>{t.session||e("/login")},[t.session]);const r=E.useCallback(async()=>{const{data:s,error:o}=await t.supabase.from("file").select();if(o){console.error(o);return}i(s.map(a=>a))},[t.supabase]);return E.useEffect(()=>{r()},[]),O.jsx(O.Fragment,{children:O.jsxs("div",{className:"flex h-screen",children:[O.jsx(hm,{}),O.jsx("main",{className:"flex-1 overflow-y-auto",children:O.jsx("div",{children:n.map(s=>O.jsx("div",{children:O.jsxs("p",{className:"underline",children:["file: ",s.absolute_path]})},s.id))})})]})})}function Jm(t,e){window.dispatchEvent(new StorageEvent("storage",{key:t,newValue:e}))}const Tf=(t,e)=>{const n=JSON.stringify(e);window.localStorage.setItem(t,n),Jm(t,n)},MS=t=>{window.localStorage.removeItem(t),Jm(t,null)},Of=t=>window.localStorage.getItem(t),RS=t=>(window.addEventListener("storage",t),()=>window.removeEventListener("storage",t)),IS=()=>{throw Error("useLocalStorage is a client-only hook")};function AS(t,e){const n=()=>Of(t),i=E.useSyncExternalStore(RS,n,IS),r=E.useCallback(s=>{try{const o=typeof s=="function"?s(JSON.parse(i)):s;o==null?MS(t):Tf(t,o)}catch(o){console.warn(o)}},[t,i]);return E.useEffect(()=>{Of(t)===null&&typeof e<"u"&&Tf(t,e)},[t,e]),[i?JSON.parse(i):e,r]}const Ys=lx("https://slpoocycjgqsuoedhkbn.supabase.co","eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6InNscG9vY3ljamdxc3VvZWRoa2JuIiwicm9sZSI6ImFub24iLCJpYXQiOjE3MTUyMDU0MjUsImV4cCI6MjAzMDc4MTQyNX0.xZYRTRN65rlms1Hb96IBAQvw3EGtMzUxlGPP5TVey34");function DS(){const[t,e]=AS("session",null);return O.jsx(O.Fragment,{children:O.jsx(x_,{basename:"/fs-tracer-frontend",children:O.jsxs(v_,{children:[O.jsx(ri,{index:!0,element:O.jsx(xS,{supabase:Ys,session:t})}),O.jsx(ri,{path:"/recent",element:O.jsx(LS,{supabase:Ys,session:t})}),O.jsx(ri,{path:"/login",element:O.jsx(TS,{supabase:Ys,session:t,setSession:e})}),O.jsx(ri,{path:"/logout",element:O.jsx(OS,{supabase:Ys,session:t,setSession:e})}),O.jsx(ri,{path:"*",element:O.jsx("p",{children:"notfound"})})]})})})}ol.createRoot(document.getElementById("root")).render(O.jsx(zi.StrictMode,{children:O.jsx(DS,{})}));export{n0 as g};
+`):t}function Fb(t,e){const{element:n,datasetIndex:i,index:r}=e,s=t.getDatasetMeta(i).controller,{label:o,value:a}=s.getLabelAndValue(r);return{chart:t,label:o,parsed:s.getParsed(r),raw:t.data.datasets[i].data[r],formattedValue:a,dataset:s.getDataset(),dataIndex:r,datasetIndex:i,element:n}}function uf(t,e){const n=t.chart.ctx,{body:i,footer:r,title:s}=t,{boxWidth:o,boxHeight:a}=e,l=Me(e.bodyFont),u=Me(e.titleFont),c=Me(e.footerFont),h=s.length,d=r.length,f=i.length,m=qe(e.padding);let y=m.height,v=0,p=i.reduce((w,x)=>w+x.before.length+x.lines.length+x.after.length,0);if(p+=t.beforeBody.length+t.afterBody.length,h&&(y+=h*u.lineHeight+(h-1)*e.titleSpacing+e.titleMarginBottom),p){const w=e.displayColors?Math.max(a,l.lineHeight):l.lineHeight;y+=f*w+(p-f)*l.lineHeight+(p-1)*e.bodySpacing}d&&(y+=e.footerMarginTop+d*c.lineHeight+(d-1)*e.footerSpacing);let g=0;const _=function(w){v=Math.max(v,n.measureText(w).width+g)};return n.save(),n.font=u.string,V(t.title,_),n.font=l.string,V(t.beforeBody.concat(t.afterBody),_),g=e.displayColors?o+2+e.boxPadding:0,V(i,w=>{V(w.before,_),V(w.lines,_),V(w.after,_)}),g=0,n.font=c.string,V(t.footer,_),n.restore(),v+=m.width,{width:v,height:y}}function $b(t,e){const{y:n,height:i}=e;return n<i/2?"top":n>t.height-i/2?"bottom":"center"}function Ub(t,e,n,i){const{x:r,width:s}=i,o=n.caretSize+n.caretPadding;if(t==="left"&&r+s+o>e.width||t==="right"&&r-s-o<0)return!0}function Bb(t,e,n,i){const{x:r,width:s}=n,{width:o,chartArea:{left:a,right:l}}=t;let u="center";return i==="center"?u=r<=(a+l)/2?"left":"right":r<=s/2?u="left":r>=o-s/2&&(u="right"),Ub(u,t,e,n)&&(u="center"),u}function cf(t,e,n){const i=n.yAlign||e.yAlign||$b(t,n);return{xAlign:n.xAlign||e.xAlign||Bb(t,e,n,i),yAlign:i}}function Vb(t,e){let{x:n,width:i}=t;return e==="right"?n-=i:e==="center"&&(n-=i/2),n}function Hb(t,e,n){let{y:i,height:r}=t;return e==="top"?i+=n:e==="bottom"?i-=r+n:i-=r/2,i}function hf(t,e,n,i){const{caretSize:r,caretPadding:s,cornerRadius:o}=t,{xAlign:a,yAlign:l}=n,u=r+s,{topLeft:c,topRight:h,bottomLeft:d,bottomRight:f}=Or(o);let m=Vb(e,a);const y=Hb(e,l,u);return l==="center"?a==="left"?m+=u:a==="right"&&(m-=u):a==="left"?m-=Math.max(c,d)+r:a==="right"&&(m+=Math.max(h,f)+r),{x:it(m,0,i.width-e.width),y:it(y,0,i.height-e.height)}}function Hs(t,e,n){const i=qe(n.padding);return e==="center"?t.x+t.width/2:e==="right"?t.x+t.width-i.right:t.x+i.left}function df(t){return wt([],Ot(t))}function Wb(t,e,n){return xn(t,{tooltip:e,tooltipItems:n,type:"tooltip"})}function ff(t,e){const n=e&&e.dataset&&e.dataset.tooltip&&e.dataset.tooltip.callbacks;return n?t.override(n):t}const Km={beforeTitle:Pt,title(t){if(t.length>0){const e=t[0],n=e.chart.data.labels,i=n?n.length:0;if(this&&this.options&&this.options.mode==="dataset")return e.dataset.label||"";if(e.label)return e.label;if(i>0&&e.dataIndex<i)return n[e.dataIndex]}return""},afterTitle:Pt,beforeBody:Pt,beforeLabel:Pt,label(t){if(this&&this.options&&this.options.mode==="dataset")return t.label+": "+t.formattedValue||t.formattedValue;let e=t.dataset.label||"";e&&(e+=": ");const n=t.formattedValue;return J(n)||(e+=n),e},labelColor(t){const n=t.chart.getDatasetMeta(t.datasetIndex).controller.getStyle(t.dataIndex);return{borderColor:n.borderColor,backgroundColor:n.backgroundColor,borderWidth:n.borderWidth,borderDash:n.borderDash,borderDashOffset:n.borderDashOffset,borderRadius:0}},labelTextColor(){return this.options.bodyColor},labelPointStyle(t){const n=t.chart.getDatasetMeta(t.datasetIndex).controller.getStyle(t.dataIndex);return{pointStyle:n.pointStyle,rotation:n.rotation}},afterLabel:Pt,afterBody:Pt,beforeFooter:Pt,footer:Pt,afterFooter:Pt};function De(t,e,n,i){const r=t[e].call(n,i);return typeof r>"u"?Km[e].call(n,i):r}class gu extends yn{constructor(e){super(),this.opacity=0,this._active=[],this._eventPosition=void 0,this._size=void 0,this._cachedAnimations=void 0,this._tooltipItems=[],this.$animations=void 0,this.$context=void 0,this.chart=e.chart,this.options=e.options,this.dataPoints=void 0,this.title=void 0,this.beforeBody=void 0,this.body=void 0,this.afterBody=void 0,this.footer=void 0,this.xAlign=void 0,this.yAlign=void 0,this.x=void 0,this.y=void 0,this.height=void 0,this.width=void 0,this.caretX=void 0,this.caretY=void 0,this.labelColors=void 0,this.labelPointStyles=void 0,this.labelTextColors=void 0}initialize(e){this.options=e,this._cachedAnimations=void 0,this.$context=void 0}_resolveAnimations(){const e=this._cachedAnimations;if(e)return e;const n=this.chart,i=this.options.setContext(this.getContext()),r=i.enabled&&n.options.animation&&i.animations,s=new Rm(this.chart,r);return r._cacheable&&(this._cachedAnimations=Object.freeze(s)),s}getContext(){return this.$context||(this.$context=Wb(this.chart.getContext(),this,this._tooltipItems))}getTitle(e,n){const{callbacks:i}=n,r=De(i,"beforeTitle",this,e),s=De(i,"title",this,e),o=De(i,"afterTitle",this,e);let a=[];return a=wt(a,Ot(r)),a=wt(a,Ot(s)),a=wt(a,Ot(o)),a}getBeforeBody(e,n){return df(De(n.callbacks,"beforeBody",this,e))}getBody(e,n){const{callbacks:i}=n,r=[];return V(e,s=>{const o={before:[],lines:[],after:[]},a=ff(i,s);wt(o.before,Ot(De(a,"beforeLabel",this,s))),wt(o.lines,De(a,"label",this,s)),wt(o.after,Ot(De(a,"afterLabel",this,s))),r.push(o)}),r}getAfterBody(e,n){return df(De(n.callbacks,"afterBody",this,e))}getFooter(e,n){const{callbacks:i}=n,r=De(i,"beforeFooter",this,e),s=De(i,"footer",this,e),o=De(i,"afterFooter",this,e);let a=[];return a=wt(a,Ot(r)),a=wt(a,Ot(s)),a=wt(a,Ot(o)),a}_createItems(e){const n=this._active,i=this.chart.data,r=[],s=[],o=[];let a=[],l,u;for(l=0,u=n.length;l<u;++l)a.push(Fb(this.chart,n[l]));return e.filter&&(a=a.filter((c,h,d)=>e.filter(c,h,d,i))),e.itemSort&&(a=a.sort((c,h)=>e.itemSort(c,h,i))),V(a,c=>{const h=ff(e.callbacks,c);r.push(De(h,"labelColor",this,c)),s.push(De(h,"labelPointStyle",this,c)),o.push(De(h,"labelTextColor",this,c))}),this.labelColors=r,this.labelPointStyles=s,this.labelTextColors=o,this.dataPoints=a,a}update(e,n){const i=this.options.setContext(this.getContext()),r=this._active;let s,o=[];if(!r.length)this.opacity!==0&&(s={opacity:0});else{const a=dr[i.position].call(this,r,this._eventPosition);o=this._createItems(i),this.title=this.getTitle(o,i),this.beforeBody=this.getBeforeBody(o,i),this.body=this.getBody(o,i),this.afterBody=this.getAfterBody(o,i),this.footer=this.getFooter(o,i);const l=this._size=uf(this,i),u=Object.assign({},a,l),c=cf(this.chart,i,u),h=hf(i,u,c,this.chart);this.xAlign=c.xAlign,this.yAlign=c.yAlign,s={opacity:1,x:h.x,y:h.y,width:l.width,height:l.height,caretX:a.x,caretY:a.y}}this._tooltipItems=o,this.$context=void 0,s&&this._resolveAnimations().update(this,s),e&&i.external&&i.external.call(this,{chart:this.chart,tooltip:this,replay:n})}drawCaret(e,n,i,r){const s=this.getCaretPosition(e,i,r);n.lineTo(s.x1,s.y1),n.lineTo(s.x2,s.y2),n.lineTo(s.x3,s.y3)}getCaretPosition(e,n,i){const{xAlign:r,yAlign:s}=this,{caretSize:o,cornerRadius:a}=i,{topLeft:l,topRight:u,bottomLeft:c,bottomRight:h}=Or(a),{x:d,y:f}=e,{width:m,height:y}=n;let v,p,g,_,w,x;return s==="center"?(w=f+y/2,r==="left"?(v=d,p=v-o,_=w+o,x=w-o):(v=d+m,p=v+o,_=w-o,x=w+o),g=v):(r==="left"?p=d+Math.max(l,c)+o:r==="right"?p=d+m-Math.max(u,h)-o:p=this.caretX,s==="top"?(_=f,w=_-o,v=p-o,g=p+o):(_=f+y,w=_+o,v=p+o,g=p-o),x=_),{x1:v,x2:p,x3:g,y1:_,y2:w,y3:x}}drawTitle(e,n,i){const r=this.title,s=r.length;let o,a,l;if(s){const u=el(i.rtl,this.x,this.width);for(e.x=Hs(this,i.titleAlign,i),n.textAlign=u.textAlign(i.titleAlign),n.textBaseline="middle",o=Me(i.titleFont),a=i.titleSpacing,n.fillStyle=i.titleColor,n.font=o.string,l=0;l<s;++l)n.fillText(r[l],u.x(e.x),e.y+o.lineHeight/2),e.y+=o.lineHeight+a,l+1===s&&(e.y+=i.titleMarginBottom-a)}}_drawColorBox(e,n,i,r,s){const o=this.labelColors[i],a=this.labelPointStyles[i],{boxHeight:l,boxWidth:u}=s,c=Me(s.bodyFont),h=Hs(this,"left",s),d=r.x(h),f=l<c.lineHeight?(c.lineHeight-l)/2:0,m=n.y+f;if(s.usePointStyle){const y={radius:Math.min(u,l)/2,pointStyle:a.pointStyle,rotation:a.rotation,borderWidth:1},v=r.leftForLtr(d,u)+u/2,p=m+l/2;e.strokeStyle=s.multiKeyBackground,e.fillStyle=s.multiKeyBackground,cu(e,y,v,p),e.strokeStyle=o.borderColor,e.fillStyle=o.backgroundColor,cu(e,y,v,p)}else{e.lineWidth=U(o.borderWidth)?Math.max(...Object.values(o.borderWidth)):o.borderWidth||1,e.strokeStyle=o.borderColor,e.setLineDash(o.borderDash||[]),e.lineDashOffset=o.borderDashOffset||0;const y=r.leftForLtr(d,u),v=r.leftForLtr(r.xPlus(d,1),u-2),p=Or(o.borderRadius);Object.values(p).some(g=>g!==0)?(e.beginPath(),e.fillStyle=s.multiKeyBackground,hu(e,{x:y,y:m,w:u,h:l,radius:p}),e.fill(),e.stroke(),e.fillStyle=o.backgroundColor,e.beginPath(),hu(e,{x:v,y:m+1,w:u-2,h:l-2,radius:p}),e.fill()):(e.fillStyle=s.multiKeyBackground,e.fillRect(y,m,u,l),e.strokeRect(y,m,u,l),e.fillStyle=o.backgroundColor,e.fillRect(v,m+1,u-2,l-2))}e.fillStyle=this.labelTextColors[i]}drawBody(e,n,i){const{body:r}=this,{bodySpacing:s,bodyAlign:o,displayColors:a,boxHeight:l,boxWidth:u,boxPadding:c}=i,h=Me(i.bodyFont);let d=h.lineHeight,f=0;const m=el(i.rtl,this.x,this.width),y=function(S){n.fillText(S,m.x(e.x+f),e.y+d/2),e.y+=d+s},v=m.textAlign(o);let p,g,_,w,x,b,k;for(n.textAlign=o,n.textBaseline="middle",n.font=h.string,e.x=Hs(this,v,i),n.fillStyle=i.bodyColor,V(this.beforeBody,y),f=a&&v!=="right"?o==="center"?u/2+c:u+2+c:0,w=0,b=r.length;w<b;++w){for(p=r[w],g=this.labelTextColors[w],n.fillStyle=g,V(p.before,y),_=p.lines,a&&_.length&&(this._drawColorBox(n,e,w,m,i),d=Math.max(h.lineHeight,l)),x=0,k=_.length;x<k;++x)y(_[x]),d=h.lineHeight;V(p.after,y)}f=0,d=h.lineHeight,V(this.afterBody,y),e.y-=s}drawFooter(e,n,i){const r=this.footer,s=r.length;let o,a;if(s){const l=el(i.rtl,this.x,this.width);for(e.x=Hs(this,i.footerAlign,i),e.y+=i.footerMarginTop,n.textAlign=l.textAlign(i.footerAlign),n.textBaseline="middle",o=Me(i.footerFont),n.fillStyle=i.footerColor,n.font=o.string,a=0;a<s;++a)n.fillText(r[a],l.x(e.x),e.y+o.lineHeight/2),e.y+=o.lineHeight+i.footerSpacing}}drawBackground(e,n,i,r){const{xAlign:s,yAlign:o}=this,{x:a,y:l}=e,{width:u,height:c}=i,{topLeft:h,topRight:d,bottomLeft:f,bottomRight:m}=Or(r.cornerRadius);n.fillStyle=r.backgroundColor,n.strokeStyle=r.borderColor,n.lineWidth=r.borderWidth,n.beginPath(),n.moveTo(a+h,l),o==="top"&&this.drawCaret(e,n,i,r),n.lineTo(a+u-d,l),n.quadraticCurveTo(a+u,l,a+u,l+d),o==="center"&&s==="right"&&this.drawCaret(e,n,i,r),n.lineTo(a+u,l+c-m),n.quadraticCurveTo(a+u,l+c,a+u-m,l+c),o==="bottom"&&this.drawCaret(e,n,i,r),n.lineTo(a+f,l+c),n.quadraticCurveTo(a,l+c,a,l+c-f),o==="center"&&s==="left"&&this.drawCaret(e,n,i,r),n.lineTo(a,l+h),n.quadraticCurveTo(a,l,a+h,l),n.closePath(),n.fill(),r.borderWidth>0&&n.stroke()}_updateAnimationTarget(e){const n=this.chart,i=this.$animations,r=i&&i.x,s=i&&i.y;if(r||s){const o=dr[e.position].call(this,this._active,this._eventPosition);if(!o)return;const a=this._size=uf(this,e),l=Object.assign({},o,this._size),u=cf(n,e,l),c=hf(e,l,u,n);(r._to!==c.x||s._to!==c.y)&&(this.xAlign=u.xAlign,this.yAlign=u.yAlign,this.width=a.width,this.height=a.height,this.caretX=o.x,this.caretY=o.y,this._resolveAnimations().update(this,c))}}_willRender(){return!!this.opacity}draw(e){const n=this.options.setContext(this.getContext());let i=this.opacity;if(!i)return;this._updateAnimationTarget(n);const r={width:this.width,height:this.height},s={x:this.x,y:this.y};i=Math.abs(i)<.001?0:i;const o=qe(n.padding),a=this.title.length||this.beforeBody.length||this.body.length||this.afterBody.length||this.footer.length;n.enabled&&a&&(e.save(),e.globalAlpha=i,this.drawBackground(s,e,r,n),G1(e,n.textDirection),s.y+=o.top,this.drawTitle(s,e,n),this.drawBody(s,e,n),this.drawFooter(s,e,n),q1(e,n.textDirection),e.restore())}getActiveElements(){return this._active||[]}setActiveElements(e,n){const i=this._active,r=e.map(({datasetIndex:a,index:l})=>{const u=this.chart.getDatasetMeta(a);if(!u)throw new Error("Cannot find a dataset at index "+a);return{datasetIndex:a,element:u.data[l],index:l}}),s=!jo(i,r),o=this._positionChanged(r,n);(s||o)&&(this._active=r,this._eventPosition=n,this._ignoreReplayEvents=!0,this.update(!0))}handleEvent(e,n,i=!0){if(n&&this._ignoreReplayEvents)return!1;this._ignoreReplayEvents=!1;const r=this.options,s=this._active||[],o=this._getActiveElements(e,s,n,i),a=this._positionChanged(o,e),l=n||!jo(o,s)||a;return l&&(this._active=o,(r.enabled||r.external)&&(this._eventPosition={x:e.x,y:e.y},this.update(!0,n))),l}_getActiveElements(e,n,i,r){const s=this.options;if(e.type==="mouseout")return[];if(!r)return n.filter(a=>this.chart.data.datasets[a.datasetIndex]&&this.chart.getDatasetMeta(a.datasetIndex).controller.getParsed(a.index)!==void 0);const o=this.chart.getElementsAtEventForMode(e,s.mode,s,i);return s.reverse&&o.reverse(),o}_positionChanged(e,n){const{caretX:i,caretY:r,options:s}=this,o=dr[s.position].call(this,e,n);return o!==!1&&(i!==o.x||r!==o.y)}}I(gu,"positioners",dr);var Kb={id:"tooltip",_element:gu,positioners:dr,afterInit(t,e,n){n&&(t.tooltip=new gu({chart:t,options:n}))},beforeUpdate(t,e,n){t.tooltip&&t.tooltip.initialize(n)},reset(t,e,n){t.tooltip&&t.tooltip.initialize(n)},afterDraw(t){const e=t.tooltip;if(e&&e._willRender()){const n={tooltip:e};if(t.notifyPlugins("beforeTooltipDraw",{...n,cancelable:!0})===!1)return;e.draw(t.ctx),t.notifyPlugins("afterTooltipDraw",n)}},afterEvent(t,e){if(t.tooltip){const n=e.replay;t.tooltip.handleEvent(e.event,n,e.inChartArea)&&(e.changed=!0)}},defaults:{enabled:!0,external:null,position:"average",backgroundColor:"rgba(0,0,0,0.8)",titleColor:"#fff",titleFont:{weight:"bold"},titleSpacing:2,titleMarginBottom:6,titleAlign:"left",bodyColor:"#fff",bodySpacing:2,bodyFont:{},bodyAlign:"left",footerColor:"#fff",footerSpacing:2,footerMarginTop:6,footerFont:{weight:"bold"},footerAlign:"left",padding:6,caretPadding:2,caretSize:5,cornerRadius:6,boxHeight:(t,e)=>e.bodyFont.size,boxWidth:(t,e)=>e.bodyFont.size,multiKeyBackground:"#fff",displayColors:!0,boxPadding:0,borderColor:"rgba(0,0,0,0)",borderWidth:0,animation:{duration:400,easing:"easeOutQuart"},animations:{numbers:{type:"number",properties:["x","y","width","height","caretX","caretY"]},opacity:{easing:"linear",duration:200}},callbacks:Km},defaultRoutes:{bodyFont:"font",footerFont:"font",titleFont:"font"},descriptors:{_scriptable:t=>t!=="filter"&&t!=="itemSort"&&t!=="external",_indexable:!1,callbacks:{_scriptable:!1,_indexable:!1},animation:{_fallback:!1},animations:{_fallback:"animation"}},additionalOptionScopes:["interaction"]};const Yb=(t,e,n,i)=>(typeof e=="string"?(n=t.push(e)-1,i.unshift({index:n,label:e})):isNaN(e)&&(n=null),n);function Gb(t,e,n,i){const r=t.indexOf(e);if(r===-1)return Yb(t,e,n,i);const s=t.lastIndexOf(e);return r!==s?n:r}const qb=(t,e)=>t===null?null:it(Math.round(t),0,e);function pf(t){const e=this.getLabels();return t>=0&&t<e.length?e[t]:t}class mu extends Xn{constructor(e){super(e),this._startValue=void 0,this._valueRange=0,this._addedLabels=[]}init(e){const n=this._addedLabels;if(n.length){const i=this.getLabels();for(const{index:r,label:s}of n)i[r]===s&&i.splice(r,1);this._addedLabels=[]}super.init(e)}parse(e,n){if(J(e))return null;const i=this.getLabels();return n=isFinite(n)&&i[n]===e?n:Gb(i,e,W(n,e),this._addedLabels),qb(n,i.length-1)}determineDataLimits(){const{minDefined:e,maxDefined:n}=this.getUserBounds();let{min:i,max:r}=this.getMinMax(!0);this.options.bounds==="ticks"&&(e||(i=0),n||(r=this.getLabels().length-1)),this.min=i,this.max=r}buildTicks(){const e=this.min,n=this.max,i=this.options.offset,r=[];let s=this.getLabels();s=e===0&&n===s.length-1?s:s.slice(e,n+1),this._valueRange=Math.max(s.length-(i?0:1),1),this._startValue=this.min-(i?.5:0);for(let o=e;o<=n;o++)r.push({value:o});return r}getLabelForValue(e){return pf.call(this,e)}configure(){super.configure(),this.isHorizontal()||(this._reversePixels=!this._reversePixels)}getPixelForValue(e){return typeof e!="number"&&(e=this.parse(e)),e===null?NaN:this.getPixelForDecimal((e-this._startValue)/this._valueRange)}getPixelForTick(e){const n=this.ticks;return e<0||e>n.length-1?null:this.getPixelForValue(n[e].value)}getValueForPixel(e){return Math.round(this._startValue+this.getDecimalForPixel(e)*this._valueRange)}getBasePixel(){return this.bottom}}I(mu,"id","category"),I(mu,"defaults",{ticks:{callback:pf}});function Qb(t,e){const n=[],{bounds:r,step:s,min:o,max:a,precision:l,count:u,maxTicks:c,maxDigits:h,includeBounds:d}=t,f=s||1,m=c-1,{min:y,max:v}=e,p=!J(o),g=!J(a),_=!J(u),w=(v-y)/(h+1);let x=wd((v-y)/m/f)*f,b,k,S,M;if(x<1e-14&&!p&&!g)return[{value:y},{value:v}];M=Math.ceil(v/x)-Math.floor(y/x),M>m&&(x=wd(M*x/m/f)*f),J(l)||(b=Math.pow(10,l),x=Math.ceil(x*b)/b),r==="ticks"?(k=Math.floor(y/x)*x,S=Math.ceil(v/x)*x):(k=y,S=v),p&&g&&s&&Ux((a-o)/s,x/1e3)?(M=Math.round(Math.min((a-o)/x,c)),x=(a-o)/M,k=o,S=a):_?(k=p?o:k,S=g?a:S,M=u-1,x=(S-k)/M):(M=(S-k)/x,Cr(M,Math.round(M),x/1e3)?M=Math.round(M):M=Math.ceil(M));const L=Math.max(xd(x),xd(k));b=Math.pow(10,J(l)?L:l),k=Math.round(k*b)/b,S=Math.round(S*b)/b;let D=0;for(p&&(d&&k!==o?(n.push({value:o}),k<o&&D++,Cr(Math.round((k+D*x)*b)/b,o,gf(o,w,t))&&D++):k<o&&D++);D<M;++D){const B=Math.round((k+D*x)*b)/b;if(g&&B>a)break;n.push({value:B})}return g&&d&&S!==a?n.length&&Cr(n[n.length-1].value,a,gf(a,w,t))?n[n.length-1].value=a:n.push({value:a}):(!g||S===a)&&n.push({value:S}),n}function gf(t,e,{horizontal:n,minRotation:i}){const r=nn(i),s=(n?Math.sin(r):Math.cos(r))||.001,o=.75*e*(""+t).length;return Math.min(e/s,o)}class Ho extends Xn{constructor(e){super(e),this.start=void 0,this.end=void 0,this._startValue=void 0,this._endValue=void 0,this._valueRange=0}parse(e,n){return J(e)||(typeof e=="number"||e instanceof Number)&&!isFinite(+e)?null:+e}handleTickRangeOptions(){const{beginAtZero:e}=this.options,{minDefined:n,maxDefined:i}=this.getUserBounds();let{min:r,max:s}=this;const o=l=>r=n?r:l,a=l=>s=i?s:l;if(e){const l=Ai(r),u=Ai(s);l<0&&u<0?a(0):l>0&&u>0&&o(0)}if(r===s){let l=s===0?1:Math.abs(s*.05);a(s+l),e||o(r-l)}this.min=r,this.max=s}getTickLimit(){const e=this.options.ticks;let{maxTicksLimit:n,stepSize:i}=e,r;return i?(r=Math.ceil(this.max/i)-Math.floor(this.min/i)+1,r>1e3&&(console.warn(`scales.${this.id}.ticks.stepSize: ${i} would result generating up to ${r} ticks. Limiting to 1000.`),r=1e3)):(r=this.computeTickLimit(),n=n||11),n&&(r=Math.min(n,r)),r}computeTickLimit(){return Number.POSITIVE_INFINITY}buildTicks(){const e=this.options,n=e.ticks;let i=this.getTickLimit();i=Math.max(2,i);const r={maxTicks:i,bounds:e.bounds,min:e.min,max:e.max,precision:n.precision,step:n.stepSize,count:n.count,maxDigits:this._maxDigits(),horizontal:this.isHorizontal(),minRotation:n.minRotation||0,includeBounds:n.includeBounds!==!1},s=this._range||this,o=Qb(r,s);return e.bounds==="ticks"&&mm(o,this,"value"),e.reverse?(o.reverse(),this.start=this.max,this.end=this.min):(this.start=this.min,this.end=this.max),o}configure(){const e=this.ticks;let n=this.min,i=this.max;if(super.configure(),this.options.offset&&e.length){const r=(i-n)/Math.max(e.length-1,1)/2;n-=r,i+=r}this._startValue=n,this._endValue=i,this._valueRange=i-n}getLabelForValue(e){return Pc(e,this.chart.options.locale,this.options.ticks.format)}}class yu extends Ho{determineDataLimits(){const{min:e,max:n}=this.getMinMax(!0);this.min=ve(e)?e:0,this.max=ve(n)?n:1,this.handleTickRangeOptions()}computeTickLimit(){const e=this.isHorizontal(),n=e?this.width:this.height,i=nn(this.options.ticks.minRotation),r=(e?Math.sin(i):Math.cos(i))||.001,s=this._resolveTickFontOptions(0);return Math.ceil(n/Math.min(40,s.lineHeight/r))}getPixelForValue(e){return e===null?NaN:this.getPixelForDecimal((e-this._startValue)/this._valueRange)}getValueForPixel(e){return this._startValue+this.getDecimalForPixel(e)*this._valueRange}}I(yu,"id","linear"),I(yu,"defaults",{ticks:{callback:pa.formatters.numeric}});const ns=t=>Math.floor(tn(t)),Pn=(t,e)=>Math.pow(10,ns(t)+e);function mf(t){return t/Math.pow(10,ns(t))===1}function yf(t,e,n){const i=Math.pow(10,n),r=Math.floor(t/i);return Math.ceil(e/i)-r}function Xb(t,e){const n=e-t;let i=ns(n);for(;yf(t,e,i)>10;)i++;for(;yf(t,e,i)<10;)i--;return Math.min(i,ns(t))}function Jb(t,{min:e,max:n}){e=Ve(t.min,e);const i=[],r=ns(e);let s=Xb(e,n),o=s<0?Math.pow(10,Math.abs(s)):1;const a=Math.pow(10,s),l=r>s?Math.pow(10,r):0,u=Math.round((e-l)*o)/o,c=Math.floor((e-l)/a/10)*a*10;let h=Math.floor((u-c)/Math.pow(10,s)),d=Ve(t.min,Math.round((l+c+h*Math.pow(10,s))*o)/o);for(;d<n;)i.push({value:d,major:mf(d),significand:h}),h>=10?h=h<15?15:20:h++,h>=20&&(s++,h=2,o=s>=0?1:o),d=Math.round((l+c+h*Math.pow(10,s))*o)/o;const f=Ve(t.max,d);return i.push({value:f,major:mf(f),significand:h}),i}class vf extends Xn{constructor(e){super(e),this.start=void 0,this.end=void 0,this._startValue=void 0,this._valueRange=0}parse(e,n){const i=Ho.prototype.parse.apply(this,[e,n]);if(i===0){this._zero=!0;return}return ve(i)&&i>0?i:null}determineDataLimits(){const{min:e,max:n}=this.getMinMax(!0);this.min=ve(e)?Math.max(0,e):null,this.max=ve(n)?Math.max(0,n):null,this.options.beginAtZero&&(this._zero=!0),this._zero&&this.min!==this._suggestedMin&&!ve(this._userMin)&&(this.min=e===Pn(this.min,0)?Pn(this.min,-1):Pn(this.min,0)),this.handleTickRangeOptions()}handleTickRangeOptions(){const{minDefined:e,maxDefined:n}=this.getUserBounds();let i=this.min,r=this.max;const s=a=>i=e?i:a,o=a=>r=n?r:a;i===r&&(i<=0?(s(1),o(10)):(s(Pn(i,-1)),o(Pn(r,1)))),i<=0&&s(Pn(r,-1)),r<=0&&o(Pn(i,1)),this.min=i,this.max=r}buildTicks(){const e=this.options,n={min:this._userMin,max:this._userMax},i=Jb(n,this);return e.bounds==="ticks"&&mm(i,this,"value"),e.reverse?(i.reverse(),this.start=this.max,this.end=this.min):(this.start=this.min,this.end=this.max),i}getLabelForValue(e){return e===void 0?"0":Pc(e,this.chart.options.locale,this.options.ticks.format)}configure(){const e=this.min;super.configure(),this._startValue=tn(e),this._valueRange=tn(this.max)-tn(e)}getPixelForValue(e){return(e===void 0||e===0)&&(e=this.min),e===null||isNaN(e)?NaN:this.getPixelForDecimal(e===this.min?0:(tn(e)-this._startValue)/this._valueRange)}getValueForPixel(e){const n=this.getDecimalForPixel(e);return Math.pow(10,this._startValue+n*this._valueRange)}}I(vf,"id","logarithmic"),I(vf,"defaults",{ticks:{callback:pa.formatters.logarithmic,major:{enabled:!0}}});function vu(t){const e=t.ticks;if(e.display&&t.display){const n=qe(e.backdropPadding);return W(e.font&&e.font.size,ue.font.size)+n.height}return 0}function Zb(t,e,n){return n=oe(n)?n:[n],{w:l1(t,e.string,n),h:n.length*e.lineHeight}}function _f(t,e,n,i,r){return t===i||t===r?{start:e-n/2,end:e+n/2}:t<i||t>r?{start:e-n,end:e}:{start:e,end:e+n}}function eS(t){const e={l:t.left+t._padding.left,r:t.right-t._padding.right,t:t.top+t._padding.top,b:t.bottom-t._padding.bottom},n=Object.assign({},e),i=[],r=[],s=t._pointLabels.length,o=t.options.pointLabels,a=o.centerPointLabels?de/s:0;for(let l=0;l<s;l++){const u=o.setContext(t.getPointLabelContext(l));r[l]=u.padding;const c=t.getPointPosition(l,t.drawingArea+r[l],a),h=Me(u.font),d=Zb(t.ctx,h,t._pointLabels[l]);i[l]=d;const f=dt(t.getIndexAngle(l)+a),m=Math.round(Sc(f)),y=_f(m,c.x,d.w,0,180),v=_f(m,c.y,d.h,90,270);tS(n,e,f,y,v)}t.setCenterPoint(e.l-n.l,n.r-e.r,e.t-n.t,n.b-e.b),t._pointLabelItems=rS(t,i,r)}function tS(t,e,n,i,r){const s=Math.abs(Math.sin(n)),o=Math.abs(Math.cos(n));let a=0,l=0;i.start<e.l?(a=(e.l-i.start)/s,t.l=Math.min(t.l,e.l-a)):i.end>e.r&&(a=(i.end-e.r)/s,t.r=Math.max(t.r,e.r+a)),r.start<e.t?(l=(e.t-r.start)/o,t.t=Math.min(t.t,e.t-l)):r.end>e.b&&(l=(r.end-e.b)/o,t.b=Math.max(t.b,e.b+l))}function nS(t,e,n){const i=t.drawingArea,{extra:r,additionalAngle:s,padding:o,size:a}=n,l=t.getPointPosition(e,i+r+o,s),u=Math.round(Sc(dt(l.angle+Ke))),c=aS(l.y,a.h,u),h=sS(u),d=oS(l.x,a.w,h);return{visible:!0,x:l.x,y:c,textAlign:h,left:d,top:c,right:d+a.w,bottom:c+a.h}}function iS(t,e){if(!e)return!0;const{left:n,top:i,right:r,bottom:s}=t;return!(Dt({x:n,y:i},e)||Dt({x:n,y:s},e)||Dt({x:r,y:i},e)||Dt({x:r,y:s},e))}function rS(t,e,n){const i=[],r=t._pointLabels.length,s=t.options,{centerPointLabels:o,display:a}=s.pointLabels,l={extra:vu(s)/2,additionalAngle:o?de/r:0};let u;for(let c=0;c<r;c++){l.padding=n[c],l.size=e[c];const h=nS(t,c,l);i.push(h),a==="auto"&&(h.visible=iS(h,u),h.visible&&(u=h))}return i}function sS(t){return t===0||t===180?"center":t<180?"left":"right"}function oS(t,e,n){return n==="right"?t-=e:n==="center"&&(t-=e/2),t}function aS(t,e,n){return n===90||n===270?t-=e/2:(n>270||n<90)&&(t-=e),t}function lS(t,e,n){const{left:i,top:r,right:s,bottom:o}=n,{backdropColor:a}=e;if(!J(a)){const l=Or(e.borderRadius),u=qe(e.backdropPadding);t.fillStyle=a;const c=i-u.left,h=r-u.top,d=s-i+u.width,f=o-r+u.height;Object.values(l).some(m=>m!==0)?(t.beginPath(),hu(t,{x:c,y:h,w:d,h:f,radius:l}),t.fill()):t.fillRect(c,h,d,f)}}function uS(t,e){const{ctx:n,options:{pointLabels:i}}=t;for(let r=e-1;r>=0;r--){const s=t._pointLabelItems[r];if(!s.visible)continue;const o=i.setContext(t.getPointLabelContext(r));lS(n,o,s);const a=Me(o.font),{x:l,y:u,textAlign:c}=s;es(n,t._pointLabels[r],l,u+a.lineHeight/2,a,{color:o.color,textAlign:c,textBaseline:"middle"})}}function Ym(t,e,n,i){const{ctx:r}=t;if(n)r.arc(t.xCenter,t.yCenter,e,0,mt);else{let s=t.getPointPosition(0,e);r.moveTo(s.x,s.y);for(let o=1;o<i;o++)s=t.getPointPosition(o,e),r.lineTo(s.x,s.y)}}function cS(t,e,n,i,r){const s=t.ctx,o=e.circular,{color:a,lineWidth:l}=e;!o&&!i||!a||!l||n<0||(s.save(),s.strokeStyle=a,s.lineWidth=l,s.setLineDash(r.dash),s.lineDashOffset=r.dashOffset,s.beginPath(),Ym(t,n,o,i),s.closePath(),s.stroke(),s.restore())}function hS(t,e,n){return xn(t,{label:n,index:e,type:"pointLabel"})}class Ws extends Ho{constructor(e){super(e),this.xCenter=void 0,this.yCenter=void 0,this.drawingArea=void 0,this._pointLabels=[],this._pointLabelItems=[]}setDimensions(){const e=this._padding=qe(vu(this.options)/2),n=this.width=this.maxWidth-e.width,i=this.height=this.maxHeight-e.height;this.xCenter=Math.floor(this.left+n/2+e.left),this.yCenter=Math.floor(this.top+i/2+e.top),this.drawingArea=Math.floor(Math.min(n,i)/2)}determineDataLimits(){const{min:e,max:n}=this.getMinMax(!1);this.min=ve(e)&&!isNaN(e)?e:0,this.max=ve(n)&&!isNaN(n)?n:0,this.handleTickRangeOptions()}computeTickLimit(){return Math.ceil(this.drawingArea/vu(this.options))}generateTickLabels(e){Ho.prototype.generateTickLabels.call(this,e),this._pointLabels=this.getLabels().map((n,i)=>{const r=re(this.options.pointLabels.callback,[n,i],this);return r||r===0?r:""}).filter((n,i)=>this.chart.getDataVisibility(i))}fit(){const e=this.options;e.display&&e.pointLabels.display?eS(this):this.setCenterPoint(0,0,0,0)}setCenterPoint(e,n,i,r){this.xCenter+=Math.floor((e-n)/2),this.yCenter+=Math.floor((i-r)/2),this.drawingArea-=Math.min(this.drawingArea/2,Math.max(e,n,i,r))}getIndexAngle(e){const n=mt/(this._pointLabels.length||1),i=this.options.startAngle||0;return dt(e*n+nn(i))}getDistanceFromCenterForValue(e){if(J(e))return NaN;const n=this.drawingArea/(this.max-this.min);return this.options.reverse?(this.max-e)*n:(e-this.min)*n}getValueForDistanceFromCenter(e){if(J(e))return NaN;const n=e/(this.drawingArea/(this.max-this.min));return this.options.reverse?this.max-n:this.min+n}getPointLabelContext(e){const n=this._pointLabels||[];if(e>=0&&e<n.length){const i=n[e];return hS(this.getContext(),e,i)}}getPointPosition(e,n,i=0){const r=this.getIndexAngle(e)-Ke+i;return{x:Math.cos(r)*n+this.xCenter,y:Math.sin(r)*n+this.yCenter,angle:r}}getPointPositionForValue(e,n){return this.getPointPosition(e,this.getDistanceFromCenterForValue(n))}getBasePosition(e){return this.getPointPositionForValue(e||0,this.getBaseValue())}getPointLabelPosition(e){const{left:n,top:i,right:r,bottom:s}=this._pointLabelItems[e];return{left:n,top:i,right:r,bottom:s}}drawBackground(){const{backgroundColor:e,grid:{circular:n}}=this.options;if(e){const i=this.ctx;i.save(),i.beginPath(),Ym(this,this.getDistanceFromCenterForValue(this._endValue),n,this._pointLabels.length),i.closePath(),i.fillStyle=e,i.fill(),i.restore()}}drawGrid(){const e=this.ctx,n=this.options,{angleLines:i,grid:r,border:s}=n,o=this._pointLabels.length;let a,l,u;if(n.pointLabels.display&&uS(this,o),r.display&&this.ticks.forEach((c,h)=>{if(h!==0||h===0&&this.min<0){l=this.getDistanceFromCenterForValue(c.value);const d=this.getContext(h),f=r.setContext(d),m=s.setContext(d);cS(this,f,l,o,m)}}),i.display){for(e.save(),a=o-1;a>=0;a--){const c=i.setContext(this.getPointLabelContext(a)),{color:h,lineWidth:d}=c;!d||!h||(e.lineWidth=d,e.strokeStyle=h,e.setLineDash(c.borderDash),e.lineDashOffset=c.borderDashOffset,l=this.getDistanceFromCenterForValue(n.ticks.reverse?this.min:this.max),u=this.getPointPosition(a,l),e.beginPath(),e.moveTo(this.xCenter,this.yCenter),e.lineTo(u.x,u.y),e.stroke())}e.restore()}}drawBorder(){}drawLabels(){const e=this.ctx,n=this.options,i=n.ticks;if(!i.display)return;const r=this.getIndexAngle(0);let s,o;e.save(),e.translate(this.xCenter,this.yCenter),e.rotate(r),e.textAlign="center",e.textBaseline="middle",this.ticks.forEach((a,l)=>{if(l===0&&this.min>=0&&!n.reverse)return;const u=i.setContext(this.getContext(l)),c=Me(u.font);if(s=this.getDistanceFromCenterForValue(this.ticks[l].value),u.showLabelBackdrop){e.font=c.string,o=e.measureText(a.label).width,e.fillStyle=u.backdropColor;const h=qe(u.backdropPadding);e.fillRect(-o/2-h.left,-s-c.size/2-h.top,o+h.width,c.size+h.height)}es(e,a.label,0,-s,c,{color:u.color,strokeColor:u.textStrokeColor,strokeWidth:u.textStrokeWidth})}),e.restore()}drawTitle(){}}I(Ws,"id","radialLinear"),I(Ws,"defaults",{display:!0,animate:!0,position:"chartArea",angleLines:{display:!0,lineWidth:1,borderDash:[],borderDashOffset:0},grid:{circular:!1},startAngle:0,ticks:{showLabelBackdrop:!0,callback:pa.formatters.numeric},pointLabels:{backdropColor:void 0,backdropPadding:2,display:!0,font:{size:10},callback(e){return e},padding:5,centerPointLabels:!1}}),I(Ws,"defaultRoutes",{"angleLines.color":"borderColor","pointLabels.color":"color","ticks.color":"color"}),I(Ws,"descriptors",{angleLines:{_fallback:"grid"}});const ya={millisecond:{common:!0,size:1,steps:1e3},second:{common:!0,size:1e3,steps:60},minute:{common:!0,size:6e4,steps:60},hour:{common:!0,size:36e5,steps:24},day:{common:!0,size:864e5,steps:30},week:{common:!1,size:6048e5,steps:4},month:{common:!0,size:2628e6,steps:12},quarter:{common:!1,size:7884e6,steps:4},year:{common:!0,size:3154e7}},Ne=Object.keys(ya);function wf(t,e){return t-e}function xf(t,e){if(J(e))return null;const n=t._adapter,{parser:i,round:r,isoWeekday:s}=t._parseOpts;let o=e;return typeof i=="function"&&(o=i(o)),ve(o)||(o=typeof i=="string"?n.parse(o,i):n.parse(o)),o===null?null:(r&&(o=r==="week"&&(Zr(s)||s===!0)?n.startOf(o,"isoWeek",s):n.startOf(o,r)),+o)}function kf(t,e,n,i){const r=Ne.length;for(let s=Ne.indexOf(t);s<r-1;++s){const o=ya[Ne[s]],a=o.steps?o.steps:Number.MAX_SAFE_INTEGER;if(o.common&&Math.ceil((n-e)/(a*o.size))<=i)return Ne[s]}return Ne[r-1]}function dS(t,e,n,i,r){for(let s=Ne.length-1;s>=Ne.indexOf(n);s--){const o=Ne[s];if(ya[o].common&&t._adapter.diff(r,i,o)>=e-1)return o}return Ne[n?Ne.indexOf(n):0]}function fS(t){for(let e=Ne.indexOf(t)+1,n=Ne.length;e<n;++e)if(ya[Ne[e]].common)return Ne[e]}function bf(t,e,n){if(!n)t[e]=!0;else if(n.length){const{lo:i,hi:r}=Cc(n,e),s=n[i]>=e?n[i]:n[r];t[s]=!0}}function pS(t,e,n,i){const r=t._adapter,s=+r.startOf(e[0].value,i),o=e[e.length-1].value;let a,l;for(a=s;a<=o;a=+r.add(a,1,i))l=n[a],l>=0&&(e[l].major=!0);return e}function Sf(t,e,n){const i=[],r={},s=e.length;let o,a;for(o=0;o<s;++o)a=e[o],r[a]=o,i.push({value:a,major:!1});return s===0||!n?i:pS(t,i,r,n)}class Wo extends Xn{constructor(e){super(e),this._cache={data:[],labels:[],all:[]},this._unit="day",this._majorUnit=void 0,this._offsets={},this._normalized=!1,this._parseOpts=void 0}init(e,n={}){const i=e.time||(e.time={}),r=this._adapter=new vk._date(e.adapters.date);r.init(n),Sr(i.displayFormats,r.formats()),this._parseOpts={parser:i.parser,round:i.round,isoWeekday:i.isoWeekday},super.init(e),this._normalized=n.normalized}parse(e,n){return e===void 0?null:xf(this,e)}beforeLayout(){super.beforeLayout(),this._cache={data:[],labels:[],all:[]}}determineDataLimits(){const e=this.options,n=this._adapter,i=e.time.unit||"day";let{min:r,max:s,minDefined:o,maxDefined:a}=this.getUserBounds();function l(u){!o&&!isNaN(u.min)&&(r=Math.min(r,u.min)),!a&&!isNaN(u.max)&&(s=Math.max(s,u.max))}(!o||!a)&&(l(this._getLabelBounds()),(e.bounds!=="ticks"||e.ticks.source!=="labels")&&l(this.getMinMax(!1))),r=ve(r)&&!isNaN(r)?r:+n.startOf(Date.now(),i),s=ve(s)&&!isNaN(s)?s:+n.endOf(Date.now(),i)+1,this.min=Math.min(r,s-1),this.max=Math.max(r+1,s)}_getLabelBounds(){const e=this.getLabelTimestamps();let n=Number.POSITIVE_INFINITY,i=Number.NEGATIVE_INFINITY;return e.length&&(n=e[0],i=e[e.length-1]),{min:n,max:i}}buildTicks(){const e=this.options,n=e.time,i=e.ticks,r=i.source==="labels"?this.getLabelTimestamps():this._generate();e.bounds==="ticks"&&r.length&&(this.min=this._userMin||r[0],this.max=this._userMax||r[r.length-1]);const s=this.min,o=this.max,a=Yx(r,s,o);return this._unit=n.unit||(i.autoSkip?kf(n.minUnit,this.min,this.max,this._getLabelCapacity(s)):dS(this,a.length,n.minUnit,this.min,this.max)),this._majorUnit=!i.major.enabled||this._unit==="year"?void 0:fS(this._unit),this.initOffsets(r),e.reverse&&a.reverse(),Sf(this,a,this._majorUnit)}afterAutoSkip(){this.options.offsetAfterAutoskip&&this.initOffsets(this.ticks.map(e=>+e.value))}initOffsets(e=[]){let n=0,i=0,r,s;this.options.offset&&e.length&&(r=this.getDecimalForValue(e[0]),e.length===1?n=1-r:n=(this.getDecimalForValue(e[1])-r)/2,s=this.getDecimalForValue(e[e.length-1]),e.length===1?i=s:i=(s-this.getDecimalForValue(e[e.length-2]))/2);const o=e.length<3?.5:.25;n=it(n,0,o),i=it(i,0,o),this._offsets={start:n,end:i,factor:1/(n+1+i)}}_generate(){const e=this._adapter,n=this.min,i=this.max,r=this.options,s=r.time,o=s.unit||kf(s.minUnit,n,i,this._getLabelCapacity(n)),a=W(r.ticks.stepSize,1),l=o==="week"?s.isoWeekday:!1,u=Zr(l)||l===!0,c={};let h=n,d,f;if(u&&(h=+e.startOf(h,"isoWeek",l)),h=+e.startOf(h,u?"day":o),e.diff(i,n,o)>1e5*a)throw new Error(n+" and "+i+" are too far apart with stepSize of "+a+" "+o);const m=r.ticks.source==="data"&&this.getDataTimestamps();for(d=h,f=0;d<i;d=+e.add(d,a,o),f++)bf(c,d,m);return(d===i||r.bounds==="ticks"||f===1)&&bf(c,d,m),Object.keys(c).sort(wf).map(y=>+y)}getLabelForValue(e){const n=this._adapter,i=this.options.time;return i.tooltipFormat?n.format(e,i.tooltipFormat):n.format(e,i.displayFormats.datetime)}format(e,n){const r=this.options.time.displayFormats,s=this._unit,o=n||r[s];return this._adapter.format(e,o)}_tickFormatFunction(e,n,i,r){const s=this.options,o=s.ticks.callback;if(o)return re(o,[e,n,i],this);const a=s.time.displayFormats,l=this._unit,u=this._majorUnit,c=l&&a[l],h=u&&a[u],d=i[n],f=u&&h&&d&&d.major;return this._adapter.format(e,r||(f?h:c))}generateTickLabels(e){let n,i,r;for(n=0,i=e.length;n<i;++n)r=e[n],r.label=this._tickFormatFunction(r.value,n,e)}getDecimalForValue(e){return e===null?NaN:(e-this.min)/(this.max-this.min)}getPixelForValue(e){const n=this._offsets,i=this.getDecimalForValue(e);return this.getPixelForDecimal((n.start+i)*n.factor)}getValueForPixel(e){const n=this._offsets,i=this.getDecimalForPixel(e)/n.factor-n.end;return this.min+i*(this.max-this.min)}_getLabelSize(e){const n=this.options.ticks,i=this.ctx.measureText(e).width,r=nn(this.isHorizontal()?n.maxRotation:n.minRotation),s=Math.cos(r),o=Math.sin(r),a=this._resolveTickFontOptions(0).size;return{w:i*s+a*o,h:i*o+a*s}}_getLabelCapacity(e){const n=this.options.time,i=n.displayFormats,r=i[n.unit]||i.millisecond,s=this._tickFormatFunction(e,0,Sf(this,[e],this._majorUnit),r),o=this._getLabelSize(s),a=Math.floor(this.isHorizontal()?this.width/o.w:this.height/o.h)-1;return a>0?a:1}getDataTimestamps(){let e=this._cache.data||[],n,i;if(e.length)return e;const r=this.getMatchingVisibleMetas();if(this._normalized&&r.length)return this._cache.data=r[0].controller.getAllParsedValues(this);for(n=0,i=r.length;n<i;++n)e=e.concat(r[n].controller.getAllParsedValues(this));return this._cache.data=this.normalize(e)}getLabelTimestamps(){const e=this._cache.labels||[];let n,i;if(e.length)return e;const r=this.getLabels();for(n=0,i=r.length;n<i;++n)e.push(xf(this,r[n]));return this._cache.labels=this._normalized?e:this.normalize(e)}normalize(e){return qx(e.sort(wf))}}I(Wo,"id","time"),I(Wo,"defaults",{bounds:"data",adapters:{},time:{parser:!1,unit:!1,round:!1,isoWeekday:!1,minUnit:"millisecond",displayFormats:{}},ticks:{source:"auto",callback:!1,major:{enabled:!1}}});function Ks(t,e,n){let i=0,r=t.length-1,s,o,a,l;n?(e>=t[i].pos&&e<=t[r].pos&&({lo:i,hi:r}=Nn(t,"pos",e)),{pos:s,time:a}=t[i],{pos:o,time:l}=t[r]):(e>=t[i].time&&e<=t[r].time&&({lo:i,hi:r}=Nn(t,"time",e)),{time:s,pos:a}=t[i],{time:o,pos:l}=t[r]);const u=o-s;return u?a+(l-a)*(e-s)/u:a}class Cf extends Wo{constructor(e){super(e),this._table=[],this._minPos=void 0,this._tableRange=void 0}initOffsets(){const e=this._getTimestampsForTable(),n=this._table=this.buildLookupTable(e);this._minPos=Ks(n,this.min),this._tableRange=Ks(n,this.max)-this._minPos,super.initOffsets(e)}buildLookupTable(e){const{min:n,max:i}=this,r=[],s=[];let o,a,l,u,c;for(o=0,a=e.length;o<a;++o)u=e[o],u>=n&&u<=i&&r.push(u);if(r.length<2)return[{time:n,pos:0},{time:i,pos:1}];for(o=0,a=r.length;o<a;++o)c=r[o+1],l=r[o-1],u=r[o],Math.round((c+l)/2)!==u&&s.push({time:u,pos:o/(a-1)});return s}_generate(){const e=this.min,n=this.max;let i=super.getDataTimestamps();return(!i.includes(e)||!i.length)&&i.splice(0,0,e),(!i.includes(n)||i.length===1)&&i.push(n),i.sort((r,s)=>r-s)}_getTimestampsForTable(){let e=this._cache.all||[];if(e.length)return e;const n=this.getDataTimestamps(),i=this.getLabelTimestamps();return n.length&&i.length?e=this.normalize(n.concat(i)):e=n.length?n:i,e=this._cache.all=e,e}getDecimalForValue(e){return(Ks(this._table,e)-this._minPos)/this._tableRange}getValueForPixel(e){const n=this._offsets,i=this.getDecimalForPixel(e)/n.factor-n.end;return Ks(this._table,i*this._tableRange+this._minPos,!0)}}I(Cf,"id","timeseries"),I(Cf,"defaults",Wo.defaults);const Gm="label";function Ef(t,e){typeof t=="function"?t(e):t&&(t.current=e)}function gS(t,e){const n=t.options;n&&e&&Object.assign(n,e)}function qm(t,e){t.labels=e}function Qm(t,e){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Gm;const i=[];t.datasets=e.map(r=>{const s=t.datasets.find(o=>o[n]===r[n]);return!s||!r.data||i.includes(s)?{...r}:(i.push(s),Object.assign(s,r),s)})}function mS(t){let e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Gm;const n={labels:[],datasets:[]};return qm(n,t.labels),Qm(n,t.datasets,e),n}function yS(t,e){const{height:n=150,width:i=300,redraw:r=!1,datasetIdKey:s,type:o,data:a,options:l,plugins:u=[],fallbackContent:c,updateMode:h,...d}=t,f=E.useRef(null),m=E.useRef(),y=()=>{f.current&&(m.current=new ma(f.current,{type:o,data:mS(a,s),options:l&&{...l},plugins:u}),Ef(e,m.current))},v=()=>{Ef(e,null),m.current&&(m.current.destroy(),m.current=null)};return E.useEffect(()=>{!r&&m.current&&l&&gS(m.current,l)},[r,l]),E.useEffect(()=>{!r&&m.current&&qm(m.current.config.data,a.labels)},[r,a.labels]),E.useEffect(()=>{!r&&m.current&&a.datasets&&Qm(m.current.config.data,a.datasets,s)},[r,a.datasets]),E.useEffect(()=>{m.current&&(r?(v(),setTimeout(y)):m.current.update(h))},[r,l,a.labels,a.datasets,h]),E.useEffect(()=>{m.current&&(v(),setTimeout(y))},[o]),E.useEffect(()=>(y(),()=>v()),[]),zi.createElement("canvas",Object.assign({ref:f,role:"img",height:n,width:i},d),c)}const vS=E.forwardRef(yS);function _S(t,e){return ma.register(e),E.forwardRef((n,i)=>zi.createElement(vS,Object.assign({},n,{ref:i,type:t})))}const wS=_S("line",oo);ma.register(mu,yu,uo,hr,zb,Kb);function Pf(){const t={responsive:!0,plugins:{title:{display:!0,text:"File writes per second"}},scales:{x:{grid:{display:!1}},y:{ticks:{callback:function(i,r,s){return i+"wps"}},grid:{display:!1}}}},e=["January","February","March","April","May","June","July"],n={labels:e,datasets:[{label:"Dataset 1",data:e.map(()=>Math.random()*1e3),borderColor:"rgb(255, 99, 132)",backgroundColor:"rgba(255, 99, 132, 0.5)"},{label:"Dataset 2",data:e.map(()=>Math.random()*1e3),borderColor:"rgb(53, 162, 235)",backgroundColor:"rgba(53, 162, 235, 0.5)"}]};return P.jsx(wS,{data:n,options:t})}function xS(){return P.jsx(P.Fragment,{children:P.jsx("p",{children:"TODO"})})}function kS(t){const e=ha(),[n,i]=E.useState([]);E.useEffect(()=>{t.session||e("/login")},[t.session]);const r=E.useCallback(async()=>{const{data:s,error:o}=await t.supabase.from("file").select();if(o){console.error(o);return}i(s.map(a=>a))},[t.supabase]);return E.useEffect(()=>{r()},[]),P.jsx(P.Fragment,{children:P.jsxs("div",{className:"flex h-screen",children:[P.jsx(hm,{}),P.jsx("main",{className:"overflow-y-auto flex flex-col flex-1 mx-5",children:P.jsxs("div",{className:"flex flex-col w-full gap-7 flex-grow",children:[P.jsx("div",{className:"flex flex-row gap-7 flex-grow",children:P.jsx("div",{className:"ml-auto",children:P.jsx(xS,{})})}),P.jsxs("div",{className:"flex flex-row gap-7 flex-grow",children:[P.jsx("div",{className:"w-1/2 block bg-white border border-gray-200 rounded-lg shadow"}),P.jsx("div",{className:"w-1/2 ml-auto",children:P.jsx(Pf,{})})]}),P.jsxs("div",{className:"flex flex-row gap-7 mb-5 flex-grow",children:[P.jsx("div",{className:"w-1/2 mr-auto",children:P.jsx(Pf,{})}),P.jsx("div",{className:"w-1/2 block bg-white-500 border border-gray-200 rounded-lg shadow"})]})]})})]})})}function bS(t={}){const{nonce:e,onScriptLoadSuccess:n,onScriptLoadError:i}=t,[r,s]=E.useState(!1),o=E.useRef(n);o.current=n;const a=E.useRef(i);return a.current=i,E.useEffect(()=>{const l=document.createElement("script");return l.src="https://accounts.google.com/gsi/client",l.async=!0,l.defer=!0,l.nonce=e,l.onload=()=>{var u;s(!0),(u=o.current)===null||u===void 0||u.call(o)},l.onerror=()=>{var u;s(!1),(u=a.current)===null||u===void 0||u.call(a)},document.body.appendChild(l),()=>{document.body.removeChild(l)}},[e]),r}const Xm=E.createContext(null);function SS({clientId:t,nonce:e,onScriptLoadSuccess:n,onScriptLoadError:i,children:r}){const s=bS({nonce:e,onScriptLoadSuccess:n,onScriptLoadError:i}),o=E.useMemo(()=>({clientId:t,scriptLoadedSuccessfully:s}),[t,s]);return zi.createElement(Xm.Provider,{value:o},r)}function CS(){const t=E.useContext(Xm);if(!t)throw new Error("Google OAuth components must be used within GoogleOAuthProvider");return t}function ES(t){var e;return(e=t==null?void 0:t.clientId)!==null&&e!==void 0?e:t==null?void 0:t.client_id}const PS={large:40,medium:32,small:20};function TS({onSuccess:t,onError:e,useOneTap:n,promptMomentNotification:i,type:r="standard",theme:s="outline",size:o="large",text:a,shape:l,logo_alignment:u,width:c,locale:h,click_listener:d,containerProps:f,...m}){const y=E.useRef(null),{clientId:v,scriptLoadedSuccessfully:p}=CS(),g=E.useRef(t);g.current=t;const _=E.useRef(e);_.current=e;const w=E.useRef(i);return w.current=i,E.useEffect(()=>{var x,b,k,S,M,L,D,B,ce;if(p)return(k=(b=(x=window==null?void 0:window.google)===null||x===void 0?void 0:x.accounts)===null||b===void 0?void 0:b.id)===null||k===void 0||k.initialize({client_id:v,callback:ae=>{var $;if(!(ae!=null&&ae.credential))return($=_.current)===null||$===void 0?void 0:$.call(_);const{credential:K,select_by:me}=ae;g.current({credential:K,clientId:ES(ae),select_by:me})},...m}),(L=(M=(S=window==null?void 0:window.google)===null||S===void 0?void 0:S.accounts)===null||M===void 0?void 0:M.id)===null||L===void 0||L.renderButton(y.current,{type:r,theme:s,size:o,text:a,shape:l,logo_alignment:u,width:c,locale:h,click_listener:d}),n&&((ce=(B=(D=window==null?void 0:window.google)===null||D===void 0?void 0:D.accounts)===null||B===void 0?void 0:B.id)===null||ce===void 0||ce.prompt(w.current)),()=>{var ae,$,K;n&&((K=($=(ae=window==null?void 0:window.google)===null||ae===void 0?void 0:ae.accounts)===null||$===void 0?void 0:$.id)===null||K===void 0||K.cancel())}},[v,p,n,r,s,o,a,l,u,c,h]),zi.createElement("div",{...f,ref:y,style:{height:PS[o],...f==null?void 0:f.style}})}function OS(t){const e=ha();return E.useEffect(()=>{t.supabase.auth.getSession().then(({data:{session:i}})=>{t.setSession(i),console.log("LOGIN SESSION",i)});const{data:{subscription:n}}=t.supabase.auth.onAuthStateChange((i,r)=>{t.setSession(r),console.log("SESSION CHANGE",r)});return()=>n.unsubscribe()},[t.supabase]),E.useEffect(()=>{t.session&&e("/")},[t.session]),P.jsx(P.Fragment,{children:P.jsx("div",{className:"flex flex-col items-center h-screen w-screen",children:P.jsxs("div",{className:"flex flex-row items-center gap-x-8 m-auto",children:[P.jsx("div",{children:P.jsx("h1",{className:"text-4xl text-bold font-sans antialiased text-blue-700 tracking-wide",children:"fs-tracer"})}),P.jsx("div",{className:"block max-w-sm p-6 bg-white border border-gray-200 rounded-lg shadow dark:bg-gray-800 dark:border-gray-700",children:P.jsxs("div",{className:"mx-7 my-5",children:[P.jsx("h5",{className:"mb-2 text-2xl font-bold font-sans antialiased text-gray-900",children:"Hello!"}),P.jsxs("div",{className:"flex flex-row items-center gap-2",children:[P.jsx("span",{className:"font-normal text-gray-700 dark:text-gray-400",children:"Continue with"}),P.jsx("span",{children:P.jsx(SS,{clientId:"952965459060-nrnrsdoq22mf646vfa72hk410pvdda5q.apps.googleusercontent.com",children:P.jsx(TS,{onSuccess:async n=>{await t.supabase.auth.signInWithIdToken({provider:"google",token:n.credential})},onError:()=>{console.log("Login Failed")},width:7777,size:"large",type:"icon"})})})]})]})})]})})})}function LS(t){const e=ha();return E.useEffect(()=>{(async()=>{await t.supabase.auth.signOut()})(),e("/login")},[t.session]),P.jsx(P.Fragment,{})}function MS(t){const e=ha(),[n,i]=E.useState([]);E.useEffect(()=>{t.session||e("/login")},[t.session]);const r=E.useCallback(async()=>{const{data:s,error:o}=await t.supabase.from("file").select();if(o){console.error(o);return}i(s.map(a=>a))},[t.supabase]);return E.useEffect(()=>{r()},[]),P.jsx(P.Fragment,{children:P.jsxs("div",{className:"flex h-screen",children:[P.jsx(hm,{}),P.jsx("main",{className:"flex-1 overflow-y-auto",children:P.jsx("div",{children:n.map(s=>P.jsx("div",{children:P.jsxs("p",{className:"underline",children:["file: ",s.absolute_path]})},s.id))})})]})})}function Jm(t,e){window.dispatchEvent(new StorageEvent("storage",{key:t,newValue:e}))}const Tf=(t,e)=>{const n=JSON.stringify(e);window.localStorage.setItem(t,n),Jm(t,n)},RS=t=>{window.localStorage.removeItem(t),Jm(t,null)},Of=t=>window.localStorage.getItem(t),IS=t=>(window.addEventListener("storage",t),()=>window.removeEventListener("storage",t)),AS=()=>{throw Error("useLocalStorage is a client-only hook")};function DS(t,e){const n=()=>Of(t),i=E.useSyncExternalStore(IS,n,AS),r=E.useCallback(s=>{try{const o=typeof s=="function"?s(JSON.parse(i)):s;o==null?RS(t):Tf(t,o)}catch(o){console.warn(o)}},[t,i]);return E.useEffect(()=>{Of(t)===null&&typeof e<"u"&&Tf(t,e)},[t,e]),[i?JSON.parse(i):e,r]}const Ys=lx("https://slpoocycjgqsuoedhkbn.supabase.co","eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6InNscG9vY3ljamdxc3VvZWRoa2JuIiwicm9sZSI6ImFub24iLCJpYXQiOjE3MTUyMDU0MjUsImV4cCI6MjAzMDc4MTQyNX0.xZYRTRN65rlms1Hb96IBAQvw3EGtMzUxlGPP5TVey34");function jS(){const[t,e]=DS("session",null);return P.jsx(P.Fragment,{children:P.jsx(x_,{basename:"/fs-tracer-frontend",children:P.jsxs(v_,{children:[P.jsx(ri,{index:!0,element:P.jsx(kS,{supabase:Ys,session:t})}),P.jsx(ri,{path:"/recent",element:P.jsx(MS,{supabase:Ys,session:t})}),P.jsx(ri,{path:"/login",element:P.jsx(OS,{supabase:Ys,session:t,setSession:e})}),P.jsx(ri,{path:"/logout",element:P.jsx(LS,{supabase:Ys,session:t,setSession:e})}),P.jsx(ri,{path:"*",element:P.jsx("p",{children:"notfound"})})]})})})}ol.createRoot(document.getElementById("root")).render(P.jsx(zi.StrictMode,{children:P.jsx(jS,{})}));export{n0 as g};
diff --git a/assets/index-DvPzh0o3.css b/assets/index-mbMV1tM0.css
index 0cc029f..d17acee 100644
--- a/assets/index-DvPzh0o3.css
+++ b/assets/index-mbMV1tM0.css
@@ -1 +1 @@
-*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.relative{position:relative}.m-auto{margin:auto}.mx-7{margin-left:1.75rem;margin-right:1.75rem}.my-5{margin-top:1.25rem;margin-bottom:1.25rem}.mb-2{margin-bottom:.5rem}.mr-4{margin-right:1rem}.mr-5{margin-right:1.25rem}.block{display:block}.flex{display:flex}.grid{display:grid}.contents{display:contents}.h-full{height:100%}.h-screen{height:100vh}.w-3\/12{width:25%}.w-full{width:100%}.w-screen{width:100vw}.min-w-\[240px\]{min-width:240px}.min-w-full{min-width:100%}.max-w-\[20rem\]{max-width:20rem}.max-w-sm{max-width:24rem}.flex-1{flex:1 1 0%}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.place-items-center{place-items:center}.items-center{align-items:center}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-x-8{-moz-column-gap:2rem;column-gap:2rem}.overflow-y-auto{overflow-y:auto}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity))}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.bg-clip-border{background-clip:border-box}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.text-start{text-align:start}.font-sans{font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji"}.text-2xl{font-size:1.5rem;line-height:2rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-base{font-size:1rem;line-height:1.5rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.font-bold{font-weight:700}.font-normal{font-weight:400}.font-semibold{font-weight:600}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-normal{letter-spacing:0em}.tracking-wide{letter-spacing:.025em}.text-blue-700{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity))}.underline{text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.hover\:bg-opacity-80:hover{--tw-bg-opacity: .8}.focus\:bg-opacity-80:focus{--tw-bg-opacity: .8}.active\:bg-opacity-80:active{--tw-bg-opacity: .8}@media (prefers-color-scheme: dark){.dark\:border-gray-700{--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity))}.dark\:bg-gray-800{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.dark\:text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}}
+*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.relative{position:relative}.m-auto{margin:auto}.mx-5{margin-left:1.25rem;margin-right:1.25rem}.mx-7{margin-left:1.75rem;margin-right:1.75rem}.my-5{margin-top:1.25rem;margin-bottom:1.25rem}.mb-2{margin-bottom:.5rem}.mb-5{margin-bottom:1.25rem}.ml-auto{margin-left:auto}.mr-4{margin-right:1rem}.mr-auto{margin-right:auto}.block{display:block}.flex{display:flex}.grid{display:grid}.contents{display:contents}.h-full{height:100%}.h-screen{height:100vh}.w-1\/2{width:50%}.w-full{width:100%}.w-screen{width:100vw}.min-w-\[240px\]{min-width:240px}.min-w-full{min-width:100%}.max-w-\[20rem\]{max-width:20rem}.max-w-sm{max-width:24rem}.flex-1{flex:1 1 0%}.flex-grow{flex-grow:1}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.place-items-center{place-items:center}.items-center{align-items:center}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-7{gap:1.75rem}.gap-x-8{-moz-column-gap:2rem;column-gap:2rem}.overflow-y-auto{overflow-y:auto}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity))}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.bg-clip-border{background-clip:border-box}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.text-start{text-align:start}.font-sans{font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji"}.text-2xl{font-size:1.5rem;line-height:2rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-base{font-size:1rem;line-height:1.5rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.font-bold{font-weight:700}.font-normal{font-weight:400}.font-semibold{font-weight:600}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-normal{letter-spacing:0em}.tracking-wide{letter-spacing:.025em}.text-blue-700{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity))}.underline{text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.hover\:bg-opacity-80:hover{--tw-bg-opacity: .8}.focus\:bg-opacity-80:focus{--tw-bg-opacity: .8}.active\:bg-opacity-80:active{--tw-bg-opacity: .8}@media (prefers-color-scheme: dark){.dark\:border-gray-700{--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity))}.dark\:bg-gray-800{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.dark\:text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}}
diff --git a/index.html b/index.html
index a23df35..ee9d424 100644
--- a/index.html
+++ b/index.html
@@ -32,8 +32,8 @@ href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.2/css/all.min.css"
       }(window.location))
     </script>
     <!-- End Single Page Apps for GitHub Pages -->
-    <script type="module" crossorigin src="./assets/index-CgrZ0Hr8.js"></script>
-    <link rel="stylesheet" crossorigin href="./assets/index-DvPzh0o3.css">
+    <script type="module" crossorigin src="./assets/index-D1q52ERy.js"></script>
+    <link rel="stylesheet" crossorigin href="./assets/index-mbMV1tM0.css">
   </head>
   <body>
     <div id="root"></div>