lorgg-v2-components 0.0.231 → 0.0.232

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -212,15 +212,23 @@ export declare function setupi18n(locale?: string): import("vue-i18n").I18n<{
212
212
  prompt: {
213
213
  checkedIn: {
214
214
  text: string;
215
- button: string;
215
+ buttons: {
216
+ toParticipantPage: string;
217
+ };
216
218
  };
217
219
  registered: {
218
220
  text: string;
219
- button: string;
221
+ buttons: {
222
+ checkIn: string;
223
+ withdraw: string;
224
+ editDecks: string;
225
+ };
220
226
  };
221
227
  signUp: {
222
228
  text: string;
223
- button: string;
229
+ buttons: {
230
+ signUp: string;
231
+ };
224
232
  };
225
233
  };
226
234
  errors: {
@@ -1 +1 @@
1
- {"version":3,"file":"i18n.d.ts","sourceRoot":"","sources":["../../../src/components/setup/i18n.ts"],"names":[],"mappings":"AACA,wBAAgB,SAAS,CAAC,MAAM,SAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0BAw7FtC"}
1
+ {"version":3,"file":"i18n.d.ts","sourceRoot":"","sources":["../../../src/components/setup/i18n.ts"],"names":[],"mappings":"AACA,wBAAgB,SAAS,CAAC,MAAM,SAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0BAg8FtC"}
@@ -29,7 +29,7 @@ ${l}`:A)}else throw o},onCacheKey:o=>j3(t,n,o)}}function lS(e,t,n,r){const{modif
29
29
  */const BS="9.2.2";function wS(){let e=!1;typeof __VUE_I18N_FULL_INSTALL__!="boolean"&&(e=!0,Wo().__VUE_I18N_FULL_INSTALL__=!0),typeof __VUE_I18N_LEGACY_API__!="boolean"&&(e=!0,Wo().__VUE_I18N_LEGACY_API__=!0),typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(Wo().__INTLIFY_PROD_DEVTOOLS__=!1),process.env.NODE_ENV!=="production"&&e&&console.warn("You are running the esm-bundler build of vue-i18n. It is recommended to configure your bundler to explicitly replace feature flag globals with boolean literals to get proper tree-shaking in the final bundle.")}let aw=Sn.__EXTEND_POINT__;const os=()=>++aw,Pt={FALLBACK_TO_ROOT:aw,NOT_SUPPORTED_PRESERVE:os(),NOT_SUPPORTED_FORMATTER:os(),NOT_SUPPORTED_PRESERVE_DIRECTIVE:os(),NOT_SUPPORTED_GET_CHOICE_INDEX:os(),COMPONENT_NAME_LEGACY_COMPATIBLE:os(),NOT_FOUND_PARENT_SCOPE:os()},bS={[Pt.FALLBACK_TO_ROOT]:"Fall back to {type} '{key}' with root locale.",[Pt.NOT_SUPPORTED_PRESERVE]:"Not supported 'preserve'.",[Pt.NOT_SUPPORTED_FORMATTER]:"Not supported 'formatter'.",[Pt.NOT_SUPPORTED_PRESERVE_DIRECTIVE]:"Not supported 'preserveDirectiveContent'.",[Pt.NOT_SUPPORTED_GET_CHOICE_INDEX]:"Not supported 'getChoiceIndex'.",[Pt.COMPONENT_NAME_LEGACY_COMPATIBLE]:"Component name legacy compatible: '{name}' -> 'i18n'",[Pt.NOT_FOUND_PARENT_SCOPE]:"Not found parent scope. use the global scope."};function er(e,...t){return Gu(bS[e],...t)}let iw=he.__EXTEND_POINT__;const ln=()=>++iw,Ue={UNEXPECTED_RETURN_TYPE:iw,INVALID_ARGUMENT:ln(),MUST_BE_CALL_SETUP_TOP:ln(),NOT_INSLALLED:ln(),NOT_AVAILABLE_IN_LEGACY_MODE:ln(),REQUIRED_VALUE:ln(),INVALID_VALUE:ln(),CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN:ln(),NOT_INSLALLED_WITH_PROVIDE:ln(),UNEXPECTED_ERROR:ln(),NOT_COMPATIBLE_LEGACY_VUE_I18N:ln(),BRIDGE_SUPPORT_VUE_2_ONLY:ln(),MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION:ln(),NOT_AVAILABLE_COMPOSITION_IN_LEGACY:ln(),__EXTEND_POINT__:ln()};function It(e,...t){return Yu(e,null,process.env.NODE_ENV!=="production"?{messages:_S,args:t}:void 0)}const _S={[Ue.UNEXPECTED_RETURN_TYPE]:"Unexpected return type in composer",[Ue.INVALID_ARGUMENT]:"Invalid argument",[Ue.MUST_BE_CALL_SETUP_TOP]:"Must be called at the top of a `setup` function",[Ue.NOT_INSLALLED]:"Need to install with `app.use` function",[Ue.UNEXPECTED_ERROR]:"Unexpected error",[Ue.NOT_AVAILABLE_IN_LEGACY_MODE]:"Not available in legacy mode",[Ue.REQUIRED_VALUE]:"Required in value: {0}",[Ue.INVALID_VALUE]:"Invalid value",[Ue.CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN]:"Cannot setup vue-devtools plugin",[Ue.NOT_INSLALLED_WITH_PROVIDE]:"Need to install with `provide` function",[Ue.NOT_COMPATIBLE_LEGACY_VUE_I18N]:"Not compatible legacy VueI18n.",[Ue.BRIDGE_SUPPORT_VUE_2_ONLY]:"vue-i18n-bridge support Vue 2.x only",[Ue.MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION]:"Must define ‘i18n’ option or custom block in Composition API with using local scope in Legacy API mode",[Ue.NOT_AVAILABLE_COMPOSITION_IN_LEGACY]:"Not available Compostion API in Legacy API mode. Please make sure that the legacy API mode is working properly"},gp=Ir("__transrateVNode"),vp=Ir("__datetimeParts"),yp=Ir("__numberParts"),Oi=Ir("__enableEmitter"),BA=Ir("__disableEmitter"),sw=Ir("__setPluralRules");Ir("__intlifyMeta");const ow=Ir("__injectWithOption");function Bp(e){if(!Ke(e))return e;for(const t in e)if(Xh(e,t))if(!t.includes("."))Ke(e[t])&&Bp(e[t]);else{const n=t.split("."),r=n.length-1;let a=e;for(let i=0;i<r;i++)n[i]in a||(a[n[i]]={}),a=a[n[i]];a[n[r]]=e[t],delete e[t],Ke(a[n[r]])&&Bp(a[n[r]])}return e}function Ju(e,t){const{messages:n,__i18n:r,messageResolver:a,flatJson:i}=t,o=me(n)?n:Ye(r)?{}:{[e]:{}};if(Ye(r)&&r.forEach(A=>{if("locale"in A&&"resource"in A){const{locale:l,resource:c}=A;l?(o[l]=o[l]||{},Go(c,o[l])):Go(c,o)}else j(A)&&Go(JSON.parse(A),o)}),a==null&&i)for(const A in o)Xh(o,A)&&Bp(o[A]);return o}const Ql=e=>!Ke(e)||Ye(e);function Go(e,t){if(Ql(e)||Ql(t))throw It(Ue.INVALID_VALUE);for(const n in e)Xh(e,n)&&(Ql(e[n])||Ql(t[n])?t[n]=e[n]:Go(e[n],t[n]))}function Aw(e){return e.type}function lw(e,t,n){let r=Ke(t.messages)?t.messages:{};"__i18nGlobal"in n&&(r=Ju(e.locale.value,{messages:r,__i18n:n.__i18nGlobal}));const a=Object.keys(r);a.length&&a.forEach(i=>{e.mergeLocaleMessage(i,r[i])});{if(Ke(t.datetimeFormats)){const i=Object.keys(t.datetimeFormats);i.length&&i.forEach(o=>{e.mergeDateTimeFormat(o,t.datetimeFormats[o])})}if(Ke(t.numberFormats)){const i=Object.keys(t.numberFormats);i.length&&i.forEach(o=>{e.mergeNumberFormat(o,t.numberFormats[o])})}}}function av(e){return s.createVNode(s.Text,null,e,0)}const iv="__INTLIFY_META__";let sv=0;function ov(e){return(t,n,r,a)=>e(n,r,s.getCurrentInstance()||void 0,a)}const CS=()=>{const e=s.getCurrentInstance();let t=null;return e&&(t=Aw(e)[iv])?{[iv]:t}:null};function nm(e={},t){const{__root:n}=e,r=n===void 0;let a=Fe(e.inheritLocale)?e.inheritLocale:!0;const i=s.ref(n&&a?n.locale.value:j(e.locale)?e.locale:qA),o=s.ref(n&&a?n.fallbackLocale.value:j(e.fallbackLocale)||Ye(e.fallbackLocale)||me(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:i.value),A=s.ref(Ju(i.value,e)),l=s.ref(me(e.datetimeFormats)?e.datetimeFormats:{[i.value]:{}}),c=s.ref(me(e.numberFormats)?e.numberFormats:{[i.value]:{}});let u=n?n.missingWarn:Fe(e.missingWarn)||qa(e.missingWarn)?e.missingWarn:!0,d=n?n.fallbackWarn:Fe(e.fallbackWarn)||qa(e.fallbackWarn)?e.fallbackWarn:!0,f=n?n.fallbackRoot:Fe(e.fallbackRoot)?e.fallbackRoot:!0,p=!!e.fallbackFormat,h=Bt(e.missing)?e.missing:null,g=Bt(e.missing)?ov(e.missing):null,B=Bt(e.postTranslation)?e.postTranslation:null,m=n?n.warnHtmlMessage:Fe(e.warnHtmlMessage)?e.warnHtmlMessage:!0,v=!!e.escapeParameter;const w=n?n.modifiers:me(e.modifiers)?e.modifiers:{};let y=e.pluralRules||n&&n.pluralRules,b;b=(()=>{r&&j1(null);const M={version:BS,locale:i.value,fallbackLocale:o.value,messages:A.value,modifiers:w,pluralRules:y,missing:g===null?void 0:g,missingWarn:u,fallbackWarn:d,fallbackFormat:p,unresolving:!0,postTranslation:B===null?void 0:B,warnHtmlMessage:m,escapeParameter:v,messageResolver:e.messageResolver,__meta:{framework:"vue"}};M.datetimeFormats=l.value,M.numberFormats=c.value,M.__datetimeFormatters=me(b)?b.__datetimeFormatters:void 0,M.__numberFormatters=me(b)?b.__numberFormatters:void 0,process.env.NODE_ENV!=="production"&&(M.__v_emitter=me(b)?b.__v_emitter:void 0);const P=ZE(M);return r&&j1(P),P})(),go(b,i.value,o.value);function C(){return[i.value,o.value,A.value,l.value,c.value]}const E=s.computed({get:()=>i.value,set:M=>{i.value=M,b.locale=i.value}}),S=s.computed({get:()=>o.value,set:M=>{o.value=M,b.fallbackLocale=o.value,go(b,i.value,M)}}),U=s.computed(()=>A.value),T=s.computed(()=>l.value),F=s.computed(()=>c.value);function D(){return Bt(B)?B:null}function q(M){B=M,b.postTranslation=M}function J(){return h}function Y(M){M!==null&&(g=ov(M)),h=M,b.missing=g}function K(M,P){return M!=="translate"||!P.resolvedMessage}const Ae=(M,P,tt,nt,cr,On)=>{C();let Mn;if(process.env.NODE_ENV!=="production"||__INTLIFY_PROD_DEVTOOLS__)try{G1(CS()),r||(b.fallbackContext=n?JE():void 0),Mn=M(b)}finally{G1(null),r||(b.fallbackContext=void 0)}else Mn=M(b);if(Qt(Mn)&&Mn===qu){const[Xn,fo]=P();if(process.env.NODE_ENV!=="production"&&n&&j(Xn)&&K(tt,fo)&&(f&&(Xu(d,Xn)||q2(u,Xn))&&mn(er(Pt.FALLBACK_TO_ROOT,{key:Xn,type:tt})),process.env.NODE_ENV!=="production")){const{__v_emitter:is}=b;is&&f&&is.emit("fallback",{type:tt,key:Xn,to:"global",groupId:`${tt}:${Xn}`})}return n&&f?nt(n):cr(Xn)}else{if(On(Mn))return Mn;throw It(Ue.UNEXPECTED_RETURN_TYPE)}};function z(...M){return Ae(P=>Reflect.apply(J1,null,[P,...M]),()=>fp(...M),"translate",P=>Reflect.apply(P.t,P,[...M]),P=>P,P=>j(P))}function ie(...M){const[P,tt,nt]=M;if(nt&&!Ke(nt))throw It(Ue.INVALID_ARGUMENT);return z(P,tt,Rt({resolvedMessage:!0},nt||{}))}function ce(...M){return Ae(P=>Reflect.apply(ev,null,[P,...M]),()=>pp(...M),"datetime format",P=>Reflect.apply(P.d,P,[...M]),()=>su,P=>j(P))}function Be(...M){return Ae(P=>Reflect.apply(nv,null,[P,...M]),()=>hp(...M),"number format",P=>Reflect.apply(P.n,P,[...M]),()=>su,P=>j(P))}function xe(M){return M.map(P=>j(P)||Qt(P)||Fe(P)?av(String(P)):P)}const re={normalize:xe,interpolate:M=>M,type:"vnode"};function N(...M){return Ae(P=>{let tt;const nt=P;try{nt.processor=re,tt=Reflect.apply(J1,null,[nt,...M])}finally{nt.processor=null}return tt},()=>fp(...M),"translate",P=>P[gp](...M),P=>[av(P)],P=>Ye(P))}function ne(...M){return Ae(P=>Reflect.apply(nv,null,[P,...M]),()=>hp(...M),"number format",P=>P[yp](...M),()=>[],P=>j(P)||Ye(P))}function He(...M){return Ae(P=>Reflect.apply(ev,null,[P,...M]),()=>pp(...M),"datetime format",P=>P[vp](...M),()=>[],P=>j(P)||Ye(P))}function ct(M){y=M,b.pluralRules=y}function Tt(M,P){const tt=j(P)?P:i.value,nt=x(tt);return b.messageResolver(nt,M)!==null}function bt(M){let P=null;const tt=K2(b,o.value,i.value);for(let nt=0;nt<tt.length;nt++){const cr=A.value[tt[nt]]||{},On=b.messageResolver(cr,M);if(On!=null){P=On;break}}return P}function Ln(M){const P=bt(M);return P??(n?n.tm(M)||{}:{})}function x(M){return A.value[M]||{}}function k(M,P){A.value[M]=P,b.messages=A.value}function Q(M,P){A.value[M]=A.value[M]||{},Go(P,A.value[M]),b.messages=A.value}function W(M){return l.value[M]||{}}function oe(M,P){l.value[M]=P,b.datetimeFormats=l.value,tv(b,M,P)}function pe(M,P){l.value[M]=Rt(l.value[M]||{},P),b.datetimeFormats=l.value,tv(b,M,P)}function Dt(M){return c.value[M]||{}}function mt(M,P){c.value[M]=P,b.numberFormats=c.value,rv(b,M,P)}function bn(M,P){c.value[M]=Rt(c.value[M]||{},P),b.numberFormats=c.value,rv(b,M,P)}sv++,n&&Cr&&(s.watch(n.locale,M=>{a&&(i.value=M,b.locale=M,go(b,i.value,o.value))}),s.watch(n.fallbackLocale,M=>{a&&(o.value=M,b.fallbackLocale=M,go(b,i.value,o.value))}));const ze={id:sv,locale:E,fallbackLocale:S,get inheritLocale(){return a},set inheritLocale(M){a=M,M&&n&&(i.value=n.locale.value,o.value=n.fallbackLocale.value,go(b,i.value,o.value))},get availableLocales(){return Object.keys(A.value).sort()},messages:U,get modifiers(){return w},get pluralRules(){return y||{}},get isGlobal(){return r},get missingWarn(){return u},set missingWarn(M){u=M,b.missingWarn=u},get fallbackWarn(){return d},set fallbackWarn(M){d=M,b.fallbackWarn=d},get fallbackRoot(){return f},set fallbackRoot(M){f=M},get fallbackFormat(){return p},set fallbackFormat(M){p=M,b.fallbackFormat=p},get warnHtmlMessage(){return m},set warnHtmlMessage(M){m=M,b.warnHtmlMessage=M},get escapeParameter(){return v},set escapeParameter(M){v=M,b.escapeParameter=M},t:z,getLocaleMessage:x,setLocaleMessage:k,mergeLocaleMessage:Q,getPostTranslationHandler:D,setPostTranslationHandler:q,getMissingHandler:J,setMissingHandler:Y,[sw]:ct};return ze.datetimeFormats=T,ze.numberFormats=F,ze.rt=ie,ze.te=Tt,ze.tm=Ln,ze.d=ce,ze.n=Be,ze.getDateTimeFormat=W,ze.setDateTimeFormat=oe,ze.mergeDateTimeFormat=pe,ze.getNumberFormat=Dt,ze.setNumberFormat=mt,ze.mergeNumberFormat=bn,ze[ow]=e.__injectWithOption,ze[gp]=N,ze[vp]=He,ze[yp]=ne,process.env.NODE_ENV!=="production"&&(ze[Oi]=M=>{b.__v_emitter=M},ze[BA]=()=>{b.__v_emitter=void 0}),ze}function kS(e){const t=j(e.locale)?e.locale:qA,n=j(e.fallbackLocale)||Ye(e.fallbackLocale)||me(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:t,r=Bt(e.missing)?e.missing:void 0,a=Fe(e.silentTranslationWarn)||qa(e.silentTranslationWarn)?!e.silentTranslationWarn:!0,i=Fe(e.silentFallbackWarn)||qa(e.silentFallbackWarn)?!e.silentFallbackWarn:!0,o=Fe(e.fallbackRoot)?e.fallbackRoot:!0,A=!!e.formatFallbackMessages,l=me(e.modifiers)?e.modifiers:{},c=e.pluralizationRules,u=Bt(e.postTranslation)?e.postTranslation:void 0,d=j(e.warnHtmlInMessage)?e.warnHtmlInMessage!=="off":!0,f=!!e.escapeParameterHtml,p=Fe(e.sync)?e.sync:!0;process.env.NODE_ENV!=="production"&&e.formatter&&mn(er(Pt.NOT_SUPPORTED_FORMATTER)),process.env.NODE_ENV!=="production"&&e.preserveDirectiveContent&&mn(er(Pt.NOT_SUPPORTED_PRESERVE_DIRECTIVE));let h=e.messages;if(me(e.sharedMessages)){const b=e.sharedMessages;h=Object.keys(b).reduce((C,E)=>{const S=C[E]||(C[E]={});return Rt(S,b[E]),C},h||{})}const{__i18n:g,__root:B,__injectWithOption:m}=e,v=e.datetimeFormats,w=e.numberFormats,y=e.flatJson;return{locale:t,fallbackLocale:n,messages:h,flatJson:y,datetimeFormats:v,numberFormats:w,missing:r,missingWarn:a,fallbackWarn:i,fallbackRoot:o,fallbackFormat:A,modifiers:l,pluralRules:c,postTranslation:u,warnHtmlMessage:d,escapeParameter:f,messageResolver:e.messageResolver,inheritLocale:p,__i18n:g,__root:B,__injectWithOption:m}}function wp(e={},t){{const n=nm(kS(e)),r={id:n.id,get locale(){return n.locale.value},set locale(a){n.locale.value=a},get fallbackLocale(){return n.fallbackLocale.value},set fallbackLocale(a){n.fallbackLocale.value=a},get messages(){return n.messages.value},get datetimeFormats(){return n.datetimeFormats.value},get numberFormats(){return n.numberFormats.value},get availableLocales(){return n.availableLocales},get formatter(){return process.env.NODE_ENV!=="production"&&mn(er(Pt.NOT_SUPPORTED_FORMATTER)),{interpolate(){return[]}}},set formatter(a){process.env.NODE_ENV!=="production"&&mn(er(Pt.NOT_SUPPORTED_FORMATTER))},get missing(){return n.getMissingHandler()},set missing(a){n.setMissingHandler(a)},get silentTranslationWarn(){return Fe(n.missingWarn)?!n.missingWarn:n.missingWarn},set silentTranslationWarn(a){n.missingWarn=Fe(a)?!a:a},get silentFallbackWarn(){return Fe(n.fallbackWarn)?!n.fallbackWarn:n.fallbackWarn},set silentFallbackWarn(a){n.fallbackWarn=Fe(a)?!a:a},get modifiers(){return n.modifiers},get formatFallbackMessages(){return n.fallbackFormat},set formatFallbackMessages(a){n.fallbackFormat=a},get postTranslation(){return n.getPostTranslationHandler()},set postTranslation(a){n.setPostTranslationHandler(a)},get sync(){return n.inheritLocale},set sync(a){n.inheritLocale=a},get warnHtmlInMessage(){return n.warnHtmlMessage?"warn":"off"},set warnHtmlInMessage(a){n.warnHtmlMessage=a!=="off"},get escapeParameterHtml(){return n.escapeParameter},set escapeParameterHtml(a){n.escapeParameter=a},get preserveDirectiveContent(){return process.env.NODE_ENV!=="production"&&mn(er(Pt.NOT_SUPPORTED_PRESERVE_DIRECTIVE)),!0},set preserveDirectiveContent(a){process.env.NODE_ENV!=="production"&&mn(er(Pt.NOT_SUPPORTED_PRESERVE_DIRECTIVE))},get pluralizationRules(){return n.pluralRules||{}},__composer:n,t(...a){const[i,o,A]=a,l={};let c=null,u=null;if(!j(i))throw It(Ue.INVALID_ARGUMENT);const d=i;return j(o)?l.locale=o:Ye(o)?c=o:me(o)&&(u=o),Ye(A)?c=A:me(A)&&(u=A),Reflect.apply(n.t,n,[d,c||u||{},l])},rt(...a){return Reflect.apply(n.rt,n,[...a])},tc(...a){const[i,o,A]=a,l={plural:1};let c=null,u=null;if(!j(i))throw It(Ue.INVALID_ARGUMENT);const d=i;return j(o)?l.locale=o:Qt(o)?l.plural=o:Ye(o)?c=o:me(o)&&(u=o),j(A)?l.locale=A:Ye(A)?c=A:me(A)&&(u=A),Reflect.apply(n.t,n,[d,c||u||{},l])},te(a,i){return n.te(a,i)},tm(a){return n.tm(a)},getLocaleMessage(a){return n.getLocaleMessage(a)},setLocaleMessage(a,i){n.setLocaleMessage(a,i)},mergeLocaleMessage(a,i){n.mergeLocaleMessage(a,i)},d(...a){return Reflect.apply(n.d,n,[...a])},getDateTimeFormat(a){return n.getDateTimeFormat(a)},setDateTimeFormat(a,i){n.setDateTimeFormat(a,i)},mergeDateTimeFormat(a,i){n.mergeDateTimeFormat(a,i)},n(...a){return Reflect.apply(n.n,n,[...a])},getNumberFormat(a){return n.getNumberFormat(a)},setNumberFormat(a,i){n.setNumberFormat(a,i)},mergeNumberFormat(a,i){n.mergeNumberFormat(a,i)},getChoiceIndex(a,i){return process.env.NODE_ENV!=="production"&&mn(er(Pt.NOT_SUPPORTED_GET_CHOICE_INDEX)),-1},__onComponentInstanceCreated(a){const{componentInstanceCreatedListener:i}=e;i&&i(a,r)}};return process.env.NODE_ENV!=="production"&&(r.__enableEmitter=a=>{const i=n;i[Oi]&&i[Oi](a)},r.__disableEmitter=()=>{const a=n;a[BA]&&a[BA]()}),r}}const rm={tag:{type:[String,Object]},locale:{type:String},scope:{type:String,validator:e=>e==="parent"||e==="global",default:"parent"},i18n:{type:Object}};function ES({slots:e},t){return t.length===1&&t[0]==="default"?(e.default?e.default():[]).reduce((r,a)=>r=[...r,...Ye(a.children)?a.children:[a]],[]):t.reduce((n,r)=>{const a=e[r];return a&&(n[r]=a()),n},{})}function cw(e){return s.Fragment}const af={name:"i18n-t",props:Rt({keypath:{type:String,required:!0},plural:{type:[Number,String],validator:e=>Qt(e)||!isNaN(e)}},rm),setup(e,t){const{slots:n,attrs:r}=t,a=e.i18n||$({useScope:e.scope,__useComponent:!0});return()=>{const i=Object.keys(n).filter(d=>d!=="_"),o={};e.locale&&(o.locale=e.locale),e.plural!==void 0&&(o.plural=j(e.plural)?+e.plural:e.plural);const A=ES(t,i),l=a[gp](e.keypath,A,o),c=Rt({},r),u=j(e.tag)||Ke(e.tag)?e.tag:cw();return s.h(u,c,l)}}};function SS(e){return Ye(e)&&!j(e[0])}function uw(e,t,n,r){const{slots:a,attrs:i}=t;return()=>{const o={part:!0};let A={};e.locale&&(o.locale=e.locale),j(e.format)?o.key=e.format:Ke(e.format)&&(j(e.format.key)&&(o.key=e.format.key),A=Object.keys(e.format).reduce((f,p)=>n.includes(p)?Rt({},f,{[p]:e.format[p]}):f,{}));const l=r(e.value,o,A);let c=[o.key];Ye(l)?c=l.map((f,p)=>{const h=a[f.type],g=h?h({[f.type]:f.value,index:p,parts:l}):[f.value];return SS(g)&&(g[0].key=`${f.type}-${p}`),g}):j(l)&&(c=[l]);const u=Rt({},i),d=j(e.tag)||Ke(e.tag)?e.tag:cw();return s.h(d,u,c)}}const Av={name:"i18n-n",props:Rt({value:{type:Number,required:!0},format:{type:[String,Object]}},rm),setup(e,t){const n=e.i18n||$({useScope:"parent",__useComponent:!0});return uw(e,t,nw,(...r)=>n[yp](...r))}},lv={name:"i18n-d",props:Rt({value:{type:[Number,Date],required:!0},format:{type:[String,Object]}},rm),setup(e,t){const n=e.i18n||$({useScope:"parent",__useComponent:!0});return uw(e,t,tw,(...r)=>n[vp](...r))}};function xS(e,t){const n=e;if(e.mode==="composition")return n.__getInstance(t)||e.global;{const r=n.__getInstance(t);return r!=null?r.__composer:e.global.__composer}}function FS(e){const t=o=>{const{instance:A,modifiers:l,value:c}=o;if(!A||!A.$)throw It(Ue.UNEXPECTED_ERROR);const u=xS(e,A.$);process.env.NODE_ENV!=="production"&&l.preserve&&mn(er(Pt.NOT_SUPPORTED_PRESERVE));const d=cv(c);return[Reflect.apply(u.t,u,[...uv(d)]),u]};return{created:(o,A)=>{const[l,c]=t(A);Cr&&e.global===c&&(o.__i18nWatcher=s.watch(c.locale,()=>{A.instance&&A.instance.$forceUpdate()})),o.__composer=c,o.textContent=l},unmounted:o=>{Cr&&o.__i18nWatcher&&(o.__i18nWatcher(),o.__i18nWatcher=void 0,delete o.__i18nWatcher),o.__composer&&(o.__composer=void 0,delete o.__composer)},beforeUpdate:(o,{value:A})=>{if(o.__composer){const l=o.__composer,c=cv(A);o.textContent=Reflect.apply(l.t,l,[...uv(c)])}},getSSRProps:o=>{const[A]=t(o);return{textContent:A}}}}function cv(e){if(j(e))return{path:e};if(me(e)){if(!("path"in e))throw It(Ue.REQUIRED_VALUE,"path");return e}else throw It(Ue.INVALID_VALUE)}function uv(e){const{path:t,locale:n,args:r,choice:a,plural:i}=e,o={},A=r||{};return j(n)&&(o.locale=n),Qt(a)&&(o.plural=a),Qt(i)&&(o.plural=i),[t,A,o]}function IS(e,t,...n){const r=me(n[0])?n[0]:{},a=!!r.useI18nComponentName,i=Fe(r.globalInstall)?r.globalInstall:!0;process.env.NODE_ENV!=="production"&&i&&a&&mn(er(Pt.COMPONENT_NAME_LEGACY_COMPATIBLE,{name:af.name})),i&&(e.component(a?"i18n":af.name,af),e.component(Av.name,Av),e.component(lv.name,lv)),e.directive("t",FS(t))}const dw="vue-i18n: composer properties";let bp;async function TS(e,t){return new Promise((n,r)=>{try{gS({id:"vue-devtools-plugin-vue-i18n",label:rf["vue-devtools-plugin-vue-i18n"],packageName:"vue-i18n",homepage:"https://vue-i18n.intlify.dev",logo:"https://vue-i18n.intlify.dev/vue-i18n-devtools-logo.png",componentStateTypes:[dw],app:e},a=>{bp=a,a.on.visitComponentTree(({componentInstance:o,treeNode:A})=>{DS(o,A,t)}),a.on.inspectComponent(({componentInstance:o,instanceData:A})=>{o.vnode.el&&o.vnode.el.__VUE_I18N__&&A&&(t.mode==="legacy"?o.vnode.el.__VUE_I18N__!==t.global.__composer&&dv(A,o.vnode.el.__VUE_I18N__):dv(A,o.vnode.el.__VUE_I18N__))}),a.addInspector({id:"vue-i18n-resource-inspector",label:rf["vue-i18n-resource-inspector"],icon:"language",treeFilterPlaceholder:vS["vue-i18n-resource-inspector"]}),a.on.getInspectorTree(o=>{o.app===e&&o.inspectorId==="vue-i18n-resource-inspector"&&MS(o,t)});const i=new Map;a.on.getInspectorState(async o=>{if(o.app===e&&o.inspectorId==="vue-i18n-resource-inspector")if(a.unhighlightElement(),PS(o,t),o.nodeId==="global"){if(!i.has(o.app)){const[A]=await a.getComponentInstances(o.app);i.set(o.app,A)}a.highlightElement(i.get(o.app))}else{const A=NS(o.nodeId,t);A&&a.highlightElement(A)}}),a.on.editInspectorState(o=>{o.app===e&&o.inspectorId==="vue-i18n-resource-inspector"&&RS(o,t)}),a.addTimelineLayer({id:"vue-i18n-timeline",label:rf["vue-i18n-timeline"],color:yS["vue-i18n-timeline"]}),n(!0)})}catch(a){console.error(a),r(!1)}})}function fw(e){return e.type.name||e.type.displayName||e.type.__file||"Anonymous"}function DS(e,t,n){const r=n.mode==="composition"?n.global:n.global.__composer;if(e&&e.vnode.el&&e.vnode.el.__VUE_I18N__&&e.vnode.el.__VUE_I18N__!==r){const a={label:`i18n (${fw(e)} Scope)`,textColor:0,backgroundColor:16764185};t.tags.push(a)}}function dv(e,t){const n=dw;e.state.push({type:n,key:"locale",editable:!0,value:t.locale.value}),e.state.push({type:n,key:"availableLocales",editable:!1,value:t.availableLocales}),e.state.push({type:n,key:"fallbackLocale",editable:!0,value:t.fallbackLocale.value}),e.state.push({type:n,key:"inheritLocale",editable:!0,value:t.inheritLocale}),e.state.push({type:n,key:"messages",editable:!1,value:am(t.messages.value)}),e.state.push({type:n,key:"datetimeFormats",editable:!1,value:t.datetimeFormats.value}),e.state.push({type:n,key:"numberFormats",editable:!1,value:t.numberFormats.value})}function am(e){const t={};return Object.keys(e).forEach(n=>{const r=e[n];Bt(r)&&"source"in r?t[n]=OS(r):Ke(r)?t[n]=am(r):t[n]=r}),t}const US={"<":"&lt;",">":"&gt;",'"':"&quot;","&":"&amp;"};function QS(e){return e.replace(/[<>"&]/g,LS)}function LS(e){return US[e]||e}function OS(e){return{_custom:{type:"function",display:`<span>ƒ</span> ${e.source?`("${QS(e.source)}")`:"(?)"}`}}}function MS(e,t){e.rootNodes.push({id:"global",label:"Global Scope"});const n=t.mode==="composition"?t.global:t.global.__composer;for(const[r,a]of t.__instances){const i=t.mode==="composition"?a:a.__composer;n!==i&&e.rootNodes.push({id:i.id.toString(),label:`${fw(r)} Scope`})}}function NS(e,t){let n=null;if(e!=="global"){for(const[r,a]of t.__instances.entries())if(a.id.toString()===e){n=r;break}}return n}function pw(e,t){if(e==="global")return t.mode==="composition"?t.global:t.global.__composer;{const n=Array.from(t.__instances.values()).find(r=>r.id.toString()===e);return n?t.mode==="composition"?n:n.__composer:null}}function PS(e,t){const n=pw(e.nodeId,t);return n&&(e.state=HS(n)),null}function HS(e){const t={},n="Locale related info",r=[{type:n,key:"locale",editable:!0,value:e.locale.value},{type:n,key:"fallbackLocale",editable:!0,value:e.fallbackLocale.value},{type:n,key:"availableLocales",editable:!1,value:e.availableLocales},{type:n,key:"inheritLocale",editable:!0,value:e.inheritLocale}];t[n]=r;const a="Locale messages info",i=[{type:a,key:"messages",editable:!1,value:am(e.messages.value)}];t[a]=i;{const o="Datetime formats info",A=[{type:o,key:"datetimeFormats",editable:!1,value:e.datetimeFormats.value}];t[o]=A;const l="Datetime formats info",c=[{type:l,key:"numberFormats",editable:!1,value:e.numberFormats.value}];t[l]=c}return t}function wA(e,t){if(bp){let n;t&&"groupId"in t&&(n=t.groupId,delete t.groupId),bp.addTimelineEvent({layerId:"vue-i18n-timeline",event:{title:e,groupId:n,time:Date.now(),meta:{},data:t||{},logType:e==="compile-error"?"error":e==="fallback"||e==="missing"?"warning":"default"}})}}function RS(e,t){const n=pw(e.nodeId,t);if(n){const[r]=e.path;r==="locale"&&j(e.state.value)?n.locale.value=e.state.value:r==="fallbackLocale"&&(j(e.state.value)||Ye(e.state.value)||Ke(e.state.value))?n.fallbackLocale.value=e.state.value:r==="inheritLocale"&&Fe(e.state.value)&&(n.inheritLocale=e.state.value)}}function VS(e,t,n){return{beforeCreate(){const r=s.getCurrentInstance();if(!r)throw It(Ue.UNEXPECTED_ERROR);const a=this.$options;if(a.i18n){const i=a.i18n;a.__i18n&&(i.__i18n=a.__i18n),i.__root=t,this===this.$root?this.$i18n=fv(e,i):(i.__injectWithOption=!0,this.$i18n=wp(i))}else a.__i18n?this===this.$root?this.$i18n=fv(e,a):this.$i18n=wp({__i18n:a.__i18n,__injectWithOption:!0,__root:t}):this.$i18n=e;a.__i18nGlobal&&lw(t,a,a),e.__onComponentInstanceCreated(this.$i18n),n.__setInstance(r,this.$i18n),this.$t=(...i)=>this.$i18n.t(...i),this.$rt=(...i)=>this.$i18n.rt(...i),this.$tc=(...i)=>this.$i18n.tc(...i),this.$te=(i,o)=>this.$i18n.te(i,o),this.$d=(...i)=>this.$i18n.d(...i),this.$n=(...i)=>this.$i18n.n(...i),this.$tm=i=>this.$i18n.tm(i)},mounted(){if(process.env.NODE_ENV!=="production"&&this.$el&&this.$i18n){this.$el.__VUE_I18N__=this.$i18n.__composer;const r=this.__v_emitter=Zh(),a=this.$i18n;a.__enableEmitter&&a.__enableEmitter(r),r.on("*",wA)}},unmounted(){const r=s.getCurrentInstance();if(!r)throw It(Ue.UNEXPECTED_ERROR);if(process.env.NODE_ENV!=="production"&&this.$el&&this.$el.__VUE_I18N__&&(this.__v_emitter&&(this.__v_emitter.off("*",wA),delete this.__v_emitter),this.$i18n)){const a=this.$i18n;a.__disableEmitter&&a.__disableEmitter(),delete this.$el.__VUE_I18N__}delete this.$t,delete this.$rt,delete this.$tc,delete this.$te,delete this.$d,delete this.$n,delete this.$tm,n.__deleteInstance(r),delete this.$i18n}}}function fv(e,t){e.locale=t.locale||e.locale,e.fallbackLocale=t.fallbackLocale||e.fallbackLocale,e.missing=t.missing||e.missing,e.silentTranslationWarn=t.silentTranslationWarn||e.silentFallbackWarn,e.silentFallbackWarn=t.silentFallbackWarn||e.silentFallbackWarn,e.formatFallbackMessages=t.formatFallbackMessages||e.formatFallbackMessages,e.postTranslation=t.postTranslation||e.postTranslation,e.warnHtmlInMessage=t.warnHtmlInMessage||e.warnHtmlInMessage,e.escapeParameterHtml=t.escapeParameterHtml||e.escapeParameterHtml,e.sync=t.sync||e.sync,e.__composer[sw](t.pluralizationRules||e.pluralizationRules);const n=Ju(e.locale,{messages:t.messages,__i18n:t.__i18n});return Object.keys(n).forEach(r=>e.mergeLocaleMessage(r,n[r])),t.datetimeFormats&&Object.keys(t.datetimeFormats).forEach(r=>e.mergeDateTimeFormat(r,t.datetimeFormats[r])),t.numberFormats&&Object.keys(t.numberFormats).forEach(r=>e.mergeNumberFormat(r,t.numberFormats[r])),e}const $S=Ir("global-vue-i18n");function KS(e={},t){const n=__VUE_I18N_LEGACY_API__&&Fe(e.legacy)?e.legacy:__VUE_I18N_LEGACY_API__,r=Fe(e.globalInjection)?e.globalInjection:!0,a=__VUE_I18N_LEGACY_API__&&n?!!e.allowComposition:!0,i=new Map,[o,A]=zS(e,n),l=Ir(process.env.NODE_ENV!=="production"?"vue-i18n":"");function c(f){return i.get(f)||null}function u(f,p){i.set(f,p)}function d(f){i.delete(f)}{const f={get mode(){return __VUE_I18N_LEGACY_API__&&n?"legacy":"composition"},get allowComposition(){return a},async install(p,...h){process.env.NODE_ENV!=="production"&&(p.__VUE_I18N__=f),p.__VUE_I18N_SYMBOL__=l,p.provide(p.__VUE_I18N_SYMBOL__,f),!n&&r&&ex(p,f.global),__VUE_I18N_FULL_INSTALL__&&IS(p,f,...h),__VUE_I18N_LEGACY_API__&&n&&p.mixin(VS(A,A.__composer,f));const g=p.unmount;if(p.unmount=()=>{f.dispose(),g()},process.env.NODE_ENV!=="production"){if(!await TS(p,f))throw It(Ue.CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN);const m=Zh();if(n){const v=A;v.__enableEmitter&&v.__enableEmitter(m)}else{const v=A;v[Oi]&&v[Oi](m)}m.on("*",wA)}},get global(){return A},dispose(){o.stop()},__instances:i,__getInstance:c,__setInstance:u,__deleteInstance:d};return f}}function $(e={}){const t=s.getCurrentInstance();if(t==null)throw It(Ue.MUST_BE_CALL_SETUP_TOP);if(!t.isCE&&t.appContext.app!=null&&!t.appContext.app.__VUE_I18N_SYMBOL__)throw It(Ue.NOT_INSLALLED);const n=WS(t),r=jS(n),a=Aw(t),i=GS(e,a);if(__VUE_I18N_LEGACY_API__&&n.mode==="legacy"&&!e.__useComponent){if(!n.allowComposition)throw It(Ue.NOT_AVAILABLE_IN_LEGACY_MODE);return XS(t,i,r,e)}if(i==="global")return lw(r,e,a),r;if(i==="parent"){let l=YS(n,t,e.__useComponent);return l==null&&(process.env.NODE_ENV!=="production"&&mn(er(Pt.NOT_FOUND_PARENT_SCOPE)),l=r),l}const o=n;let A=o.__getInstance(t);if(A==null){const l=Rt({},e);"__i18n"in a&&(l.__i18n=a.__i18n),r&&(l.__root=r),A=nm(l),qS(o,t,A),o.__setInstance(t,A)}return A}function zS(e,t,n){const r=s.effectScope();{const a=__VUE_I18N_LEGACY_API__&&t?r.run(()=>wp(e)):r.run(()=>nm(e));if(a==null)throw It(Ue.UNEXPECTED_ERROR);return[r,a]}}function WS(e){{const t=s.inject(e.isCE?$S:e.appContext.app.__VUE_I18N_SYMBOL__);if(!t)throw It(e.isCE?Ue.NOT_INSLALLED_WITH_PROVIDE:Ue.UNEXPECTED_ERROR);return t}}function GS(e,t){return ju(e)?"__i18n"in t?"local":"global":e.useScope?e.useScope:"local"}function jS(e){return e.mode==="composition"?e.global:e.global.__composer}function YS(e,t,n=!1){let r=null;const a=t.root;let i=t.parent;for(;i!=null;){const o=e;if(e.mode==="composition")r=o.__getInstance(i);else if(__VUE_I18N_LEGACY_API__){const A=o.__getInstance(i);A!=null&&(r=A.__composer,n&&r&&!r[ow]&&(r=null))}if(r!=null||a===i)break;i=i.parent}return r}function qS(e,t,n){let r=null;s.onMounted(()=>{if(process.env.NODE_ENV!=="production"&&t.vnode.el){t.vnode.el.__VUE_I18N__=n,r=Zh();const a=n;a[Oi]&&a[Oi](r),r.on("*",wA)}},t),s.onUnmounted(()=>{if(process.env.NODE_ENV!=="production"&&t.vnode.el&&t.vnode.el.__VUE_I18N__){r&&r.off("*",wA);const a=n;a[BA]&&a[BA](),delete t.vnode.el.__VUE_I18N__}e.__deleteInstance(t)},t)}function XS(e,t,n,r={}){const a=t==="local",i=s.shallowRef(null);if(a&&e.proxy&&!(e.proxy.$options.i18n||e.proxy.$options.__i18n))throw It(Ue.MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION);const o=Fe(r.inheritLocale)?r.inheritLocale:!0,A=s.ref(a&&o?n.locale.value:j(r.locale)?r.locale:qA),l=s.ref(a&&o?n.fallbackLocale.value:j(r.fallbackLocale)||Ye(r.fallbackLocale)||me(r.fallbackLocale)||r.fallbackLocale===!1?r.fallbackLocale:A.value),c=s.ref(Ju(A.value,r)),u=s.ref(me(r.datetimeFormats)?r.datetimeFormats:{[A.value]:{}}),d=s.ref(me(r.numberFormats)?r.numberFormats:{[A.value]:{}}),f=a?n.missingWarn:Fe(r.missingWarn)||qa(r.missingWarn)?r.missingWarn:!0,p=a?n.fallbackWarn:Fe(r.fallbackWarn)||qa(r.fallbackWarn)?r.fallbackWarn:!0,h=a?n.fallbackRoot:Fe(r.fallbackRoot)?r.fallbackRoot:!0,g=!!r.fallbackFormat,B=Bt(r.missing)?r.missing:null,m=Bt(r.postTranslation)?r.postTranslation:null,v=a?n.warnHtmlMessage:Fe(r.warnHtmlMessage)?r.warnHtmlMessage:!0,w=!!r.escapeParameter,y=a?n.modifiers:me(r.modifiers)?r.modifiers:{},b=r.pluralRules||a&&n.pluralRules;function _(){return[A.value,l.value,c.value,u.value,d.value]}const C=s.computed({get:()=>i.value?i.value.locale.value:A.value,set:k=>{i.value&&(i.value.locale.value=k),A.value=k}}),E=s.computed({get:()=>i.value?i.value.fallbackLocale.value:l.value,set:k=>{i.value&&(i.value.fallbackLocale.value=k),l.value=k}}),S=s.computed(()=>i.value?i.value.messages.value:c.value),U=s.computed(()=>u.value),T=s.computed(()=>d.value);function F(){return i.value?i.value.getPostTranslationHandler():m}function D(k){i.value&&i.value.setPostTranslationHandler(k)}function q(){return i.value?i.value.getMissingHandler():B}function J(k){i.value&&i.value.setMissingHandler(k)}function Y(k){return _(),k()}function K(...k){return i.value?Y(()=>Reflect.apply(i.value.t,null,[...k])):Y(()=>"")}function Ae(...k){return i.value?Reflect.apply(i.value.rt,null,[...k]):""}function z(...k){return i.value?Y(()=>Reflect.apply(i.value.d,null,[...k])):Y(()=>"")}function ie(...k){return i.value?Y(()=>Reflect.apply(i.value.n,null,[...k])):Y(()=>"")}function ce(k){return i.value?i.value.tm(k):{}}function Be(k,Q){return i.value?i.value.te(k,Q):!1}function xe(k){return i.value?i.value.getLocaleMessage(k):{}}function fe(k,Q){i.value&&(i.value.setLocaleMessage(k,Q),c.value[k]=Q)}function re(k,Q){i.value&&i.value.mergeLocaleMessage(k,Q)}function N(k){return i.value?i.value.getDateTimeFormat(k):{}}function ne(k,Q){i.value&&(i.value.setDateTimeFormat(k,Q),u.value[k]=Q)}function He(k,Q){i.value&&i.value.mergeDateTimeFormat(k,Q)}function ct(k){return i.value?i.value.getNumberFormat(k):{}}function Tt(k,Q){i.value&&(i.value.setNumberFormat(k,Q),d.value[k]=Q)}function bt(k,Q){i.value&&i.value.mergeNumberFormat(k,Q)}const Ln={get id(){return i.value?i.value.id:-1},locale:C,fallbackLocale:E,messages:S,datetimeFormats:U,numberFormats:T,get inheritLocale(){return i.value?i.value.inheritLocale:o},set inheritLocale(k){i.value&&(i.value.inheritLocale=k)},get availableLocales(){return i.value?i.value.availableLocales:Object.keys(c.value)},get modifiers(){return i.value?i.value.modifiers:y},get pluralRules(){return i.value?i.value.pluralRules:b},get isGlobal(){return i.value?i.value.isGlobal:!1},get missingWarn(){return i.value?i.value.missingWarn:f},set missingWarn(k){i.value&&(i.value.missingWarn=k)},get fallbackWarn(){return i.value?i.value.fallbackWarn:p},set fallbackWarn(k){i.value&&(i.value.missingWarn=k)},get fallbackRoot(){return i.value?i.value.fallbackRoot:h},set fallbackRoot(k){i.value&&(i.value.fallbackRoot=k)},get fallbackFormat(){return i.value?i.value.fallbackFormat:g},set fallbackFormat(k){i.value&&(i.value.fallbackFormat=k)},get warnHtmlMessage(){return i.value?i.value.warnHtmlMessage:v},set warnHtmlMessage(k){i.value&&(i.value.warnHtmlMessage=k)},get escapeParameter(){return i.value?i.value.escapeParameter:w},set escapeParameter(k){i.value&&(i.value.escapeParameter=k)},t:K,getPostTranslationHandler:F,setPostTranslationHandler:D,getMissingHandler:q,setMissingHandler:J,rt:Ae,d:z,n:ie,tm:ce,te:Be,getLocaleMessage:xe,setLocaleMessage:fe,mergeLocaleMessage:re,getDateTimeFormat:N,setDateTimeFormat:ne,mergeDateTimeFormat:He,getNumberFormat:ct,setNumberFormat:Tt,mergeNumberFormat:bt};function x(k){k.locale.value=A.value,k.fallbackLocale.value=l.value,Object.keys(c.value).forEach(Q=>{k.mergeLocaleMessage(Q,c.value[Q])}),Object.keys(u.value).forEach(Q=>{k.mergeDateTimeFormat(Q,u.value[Q])}),Object.keys(d.value).forEach(Q=>{k.mergeNumberFormat(Q,d.value[Q])}),k.escapeParameter=w,k.fallbackFormat=g,k.fallbackRoot=h,k.fallbackWarn=p,k.missingWarn=f,k.warnHtmlMessage=v}return s.onBeforeMount(()=>{if(e.proxy==null||e.proxy.$i18n==null)throw It(Ue.NOT_AVAILABLE_COMPOSITION_IN_LEGACY);const k=i.value=e.proxy.$i18n.__composer;t==="global"?(A.value=k.locale.value,l.value=k.fallbackLocale.value,c.value=k.messages.value,u.value=k.datetimeFormats.value,d.value=k.numberFormats.value):a&&x(k)}),Ln}const JS=["locale","fallbackLocale","availableLocales"],ZS=["t","rt","d","n","tm"];function ex(e,t){const n=Object.create(null);JS.forEach(r=>{const a=Object.getOwnPropertyDescriptor(t,r);if(!a)throw It(Ue.UNEXPECTED_ERROR);const i=s.isRef(a.value)?{get(){return a.value.value},set(o){a.value.value=o}}:{get(){return a.get&&a.get()}};Object.defineProperty(n,r,i)}),e.config.globalProperties.$i18n=n,ZS.forEach(r=>{const a=Object.getOwnPropertyDescriptor(t,r);if(!a||!a.value)throw It(Ue.UNEXPECTED_ERROR);Object.defineProperty(e.config.globalProperties,`$${r}`,a)})}jE(aS);YE(FE);qE(K2);wS();if(process.env.NODE_ENV!=="production"||__INTLIFY_PROD_DEVTOOLS__){const e=Wo();e.__INTLIFY__=!0,NE(e.__INTLIFY_DEVTOOLS_GLOBAL_HOOK__)}process.env.NODE_ENV;function tx(e="en"){return KS({legacy:!1,locale:e,fallbackLocale:"en",messages:{en:{cardLottery:{setBanner:"Set As Banner",setIcon:"Set As Icon",openAnother:"Open Another"},cards:{roundDrawn:"Round Drawn",roundPlayed:"Round Played",card:"Card",cards:"Cards",inclusion:"Inclusion",avgCopies:"Avg. Copies",mulliganWinrate:"Mull. Winrate",keptInMulligan:"Kept In Mull.",drawnWinrate:"Drawn Winrate",turnPlayed:"Turn Played",turnsHeld:"Turns Held",recommendedDecks:"Recommended Decks",similarCards:"Similar Cards",attack:"Attack",health:"Health",quantityOwned:"Quantity Owned",cost:"Cost"},deck:{copyDeckCode:"Copy Deck Code",deckCodeCopied:"Deck Code Copied",deleteDeck:"Delete Deck",deleteDeckConfirmation:"Are you sure you would like to delete this deck?",editDeckName:"Edit Deck Name",signInToUpload:"Please sign in to upload deck to LoR",uploadDeckToLor:"Upload Deck to Legends of Runeterra",deckUploaded:"Deck Uploaded!",updatePrivacy:"Update Deck Privacy",deckPrivate:"Currently Private",deckPublic:"Currently Public",openInDeckBuilder:"Open in Deck Builder",numManaCards:"{num} Mana Cards",simulateMulligan:"Simulate Mulligan",replaceAllCards:"Replace All Cards",replaceSelectedCards:"Replace Selected Cards",personalCost:"Personal Cost",originalCost:"Original Cost",openArchetypePage:"Open Archetype Page",shareDeck:"Share Deck",showPreview:"Show Deck Preview"},archetype:{abbreviation:"A"},deckBuilder:{confirmOverwrite:`You already have a deck with this name.
30
30
  Would you like to overwrite the previous version?`,deckCreated:"Deck Created",inputDeckCode:"Paste Deck Code"},leaderboard:{totalPlayers:"Total Players",lp:"LP",rank:"Rank",updated:"Updated"},personalization:{noGiftsAvailable:"No Cards Available",noGiftsAvailableDesc:`Oh no!
31
31
  You've run out of card openings!
32
- Don't worry, you can receive more using any of the methods below so you can find the card that fits you.`,cards:{option1:"Logging into LOR.GG each week will grant you 10 cards.",option2:"Each time you sync your user data with the game, your 20 latest matches are uploaded. You get 1 card for every 2 matches uploaded!",option3:"Tired of waiting for that one perfect card? Upgrade to premium and you can set any card as your icon or banner!"}},settings:{privacy:"Privacy",privateProfile:"Private Profile",privateProfileDesc:"Checking this ensures none of your player details will be shown when others view your profile. Created decks set to public will still show in your collection.",email:"Email",resendVerification:"Resend Verification",account:"Account",payment:"Payment",personalization:"Personalization",images:"Images",banner:"Banner",bannerDesc:'Banners can be received via the "Open Cards" tab in navigation menu. This will be shown on the leaderboard, profile, and top players list.',bannerDescPremium:"You may set your banner to any card in the game by buying premium.",icon:"Icon",iconDesc:'Icons can be received via the "Open Cards" tab in navigation menu. This will be shown on your profile.',iconDescPremium:"You may set your icon to any card in the game by buying premium.",color:"Color",colorDesc:"You can distinguish yourself with your favorite color. Shown everywhere your banner is shown.",colorDescPremium:"Color can only be selected if you are a premium user."},descriptions:{archetypeOverview:'Get an in-depth overview of the "{title}" archetype in Legends of Runeterra.',archetypeCards:'Explore cards within the "{title}" archetype in Legends of Runeterra. Craft unique deck strategies.',archetypeStatistics:'Analyze statistics and performance data for the "{title}" archetype. Optimize your gameplay.',archetypeTopPlayers:'Discover the top players dominating with the "{title}" archetype in Legends of Runeterra.',archetypeDecks:'Find and explore decks centered around the "{title}" archetype. Adapt to the meta.',archetypeMatchups:'Analyze matchups and strategies for the "{title}" archetype in Legends of Runeterra.',deckOverview:'Get an in-depth overview of the "{title}" deck in Legends of Runeterra.',deckCards:'Explore the key cards within the "{title}" deck. Master your strategy.',deckStatistics:'Analyze detailed statistics and performance data for the "{title}" deck.',deckTopPlayers:'Discover the top players who excel with the "{title}" deck.',deckDecks:'Find decks similar to "{title}" for varied gameplay options.',deckMatchups:'Analyze matchups and strategies for the "{title}" deck in Legends of Runeterra.',cards:"Discover the complete card collection in Legends of Runeterra with detailed information on each card's stats, abilities, and more on LOR.GG.",deckBuilder:"Craft your perfect deck with our intuitive deck builder tool on LOR.GG. Fine-tune your strategies and create winning decks.",deckLibrary:"Explore a vast library of user-created decks for Legends of Runeterra. Find inspiration and share your own creations.",leaderboard:"Climb the ranks and compete with the best on our Legends of Runeterra leaderboard. Track your progress and see where you stand.",meta:"Stay up-to-date with the ever-evolving meta in Legends of Runeterra. Get insights into the top strategies and decks.",decks:"Browse and analyze a wide selection of decks for Legends of Runeterra. Find the perfect deck to suit your playstyle.",cardStatistics:"Dig deep into card statistics and analytics for Legends of Runeterra. Gain a competitive edge with our comprehensive card data.",cardPageStatistics:'Detailed statistics and insights for the "{title}" card in Legends of Runeterra. Master its potential with our analysis.',cardPageSimilarCards:'Discover cards similar to "{title}" in Legends of Runeterra. Find alternatives and expand your card knowledge.',cardPageDecks:'Explore decks featuring the powerful "{title}" card in Legends of Runeterra. Unleash its potential in your strategies.',profile:"Access and customize your LOR.GG profile. Track your match history, decks, and progress in Legends of Runeterra.",profileUser:"Explore the profile of {title} on LOR.GG. Check out their match history, statistics, and decks.",profileUserStatistics:"Analyze detailed statistics and achievements for {title}'s profile on LOR.GG. Learn from their gameplay.",profileUserDecks:"Explore the decks created by {title} on LOR.GG. Get insights into their strategies and card choices.",landing:"Unlock the full potential of Runeterra with LOR.GG's comprehensive toolkit. Explore cards, stats, and deck-building tools to reach new heights."},landing:{tagLine:"Chart Your Path to Victory",description1:"Welcome to LOR.GG, your definitive gateway to victory in Legends of Runeterra. Here, we offer you a comprehensive arsenal of tools and resources designed to elevate your gameplay and lead you towards triumph on the Runeterran battlefield.",description2:"Unleash your strategic prowess by exploring our extensive card database, where every card's statistics, abilities, and nuances are at your fingertips. Dive deep into the ever-evolving meta, discover top-tier decks, and adapt your strategies to conquer opponents with confidence.",newCards:{title:"New Cards",navigation:"Reveal Tracker"},builtDecks:{title:"User Created Decks",navigation:"Deck Library"},deckBuilder:{title:"Builder",navigation:"Deck Builder",description:"Elevate your gameplay and become a deck-building virtuoso with LOR.GG's intuitive Deck Builder tool. Craft decks tailored to your playstyle and fine-tune your strategies like never before. Experiment with card combinations, analyze synergies, and create powerful, winning decks. Whether you're a novice or a seasoned player, our Deck Builder empowers you to chart your path to victory in Legends of Runeterra. Join the ranks of top-tier players who have honed their skills through our platform and take your gameplay to the next level."},leaderboard:{title:"Leaderboard",navigation:"Leaderboard",description:"Test your skills against the best and climb the ranks on our Legends of Runeterra Leaderboard. See where you stand among the elite players of Runeterra, track your progress, and aim for the coveted top spots. Our Leaderboard is a testament to your dedication and progress in the game, providing a clear path to becoming a Runeterra legend. Join the competitive community, set your goals high, and embark on a journey to prove your worth on the Leaderboard at LOR.GG."},meta:{title:"Archetypes",navigation:"Meta",description:"Stay at the forefront of the ever-changing meta in Legends of Runeterra with LOR.GG. Our Meta section is your gateway to understanding the current landscape of strategies, top-tier decks, and prevailing trends in the game. Arm yourself with valuable insights, adapt your decks, and outmaneuver your opponents. Whether you're aiming for the top ranks or simply looking to stay competitive, our Meta resources offer the guidance you need to thrive in the dynamic world of Runeterra."},decks:{title:"Decks",navigation:"Decks",description:"Explore an expansive collection of decks meticulously curated for your success in Legends of Runeterra. Our Decks section is a goldmine of strategic possibilities, offering a diverse range of decks to suit every playstyle and skill level. Dive into the intricacies of each deck, discover their strengths, and harness their power. Whether you're searching for a proven winning formula or a fresh approach to the game, LOR.GG's Decks section is your gateway to mastering Runeterra and becoming a force to be reckoned"},cards:{title:"Cards",navigation:"Card Statistics",description:"At LOR.GG, we believe that knowledge is power, and our Card Statistics section is your key to unlocking that power in Legends of Runeterra. Delve deep into the data behind every card, gaining insights into their win rates, play rates, and performance in the meta. Equip yourself with the knowledge to make informed choices, optimize your decks, and stay ahead of the competition. Whether you're a competitive player or simply a Runeterra enthusiast, our comprehensive card statistics are your secret weapon for success."}},tournament:{standings:"Standings",oppWinrate:"Opponents' Winrate",oppGameWinrate:"Opponents' Game Winrate",gameWinrate:"Game Winrate",admin:{editMatchWinner:"Edit Match Winner",nextRound:{text:"The previous round has concluded. Please advance to the next round.",button:"Next Round"},wrongDeck:{text:"Player {name} played a deck that was not submitted. Review the match in Brackets."},start:{text:"You may start the tournament now. This will automatically start the first round.",button:"Start Tournament"}},feed:{withdrawal:"Withdrawal",withdrawalMessage:"A player has withdrawn from the tournament.",signUp:"New Sign Up",matchUpdate:"Match Update",checkIn:"Check In",adminUpdate:"Admin Update",adminUpdateMessage:"An admin has manually updated a match in the tournament.",created:"Tournament Created",createdMessage:"The tournament has been created.",roundStarted:"Round Started",roundStartedMessage:"A new round has started.",edited:"Tournament Edited",editedMessage:"The tournament has been edited by a tournament admin."},timeline:{registration:{title:"Registration",description:"Registration for the tournament is open. Sign up now!"},checkIn:{title:"Check In",description:"Check in to the tournament to confirm your participation."},start:{title:"Start",description:"The tournament has started!"},end:{title:"Concluded",description:"The tournament has concluded."}},prompt:{checkedIn:{text:"You are checked in for the tournament.",button:"Go to Participant Page"},registered:{text:"You are registered for the tournament.",button:"Check in"},signUp:{text:"Sign up to participate in this tournament.",button:"Sign Up"}},errors:{private:"This tournament has a private sign-up. Contact the tournament organizer for the correct link.",notLoggedIn:"You must be logged in to sign up for a tournament.",wrongServer:"You must be on the same server as the tournament to sign up."},decksSubmission:{heading:"Decks Submission",description:"Submit your decks for the tournament.",submitDecks:"Submit Decks",decksAreDue:"Decks are due"},participant:{banDecks:{heading:"Ban Decks",description:"No decks to bans | Choose a deck to ban against {name} | Choose {count} decks to ban against {name}",submit:"Submit Ban | Submit Bans"},playMatch:{heading:"Play Match",description:`You must play your match against the below opponent.
32
+ Don't worry, you can receive more using any of the methods below so you can find the card that fits you.`,cards:{option1:"Logging into LOR.GG each week will grant you 10 cards.",option2:"Each time you sync your user data with the game, your 20 latest matches are uploaded. You get 1 card for every 2 matches uploaded!",option3:"Tired of waiting for that one perfect card? Upgrade to premium and you can set any card as your icon or banner!"}},settings:{privacy:"Privacy",privateProfile:"Private Profile",privateProfileDesc:"Checking this ensures none of your player details will be shown when others view your profile. Created decks set to public will still show in your collection.",email:"Email",resendVerification:"Resend Verification",account:"Account",payment:"Payment",personalization:"Personalization",images:"Images",banner:"Banner",bannerDesc:'Banners can be received via the "Open Cards" tab in navigation menu. This will be shown on the leaderboard, profile, and top players list.',bannerDescPremium:"You may set your banner to any card in the game by buying premium.",icon:"Icon",iconDesc:'Icons can be received via the "Open Cards" tab in navigation menu. This will be shown on your profile.',iconDescPremium:"You may set your icon to any card in the game by buying premium.",color:"Color",colorDesc:"You can distinguish yourself with your favorite color. Shown everywhere your banner is shown.",colorDescPremium:"Color can only be selected if you are a premium user."},descriptions:{archetypeOverview:'Get an in-depth overview of the "{title}" archetype in Legends of Runeterra.',archetypeCards:'Explore cards within the "{title}" archetype in Legends of Runeterra. Craft unique deck strategies.',archetypeStatistics:'Analyze statistics and performance data for the "{title}" archetype. Optimize your gameplay.',archetypeTopPlayers:'Discover the top players dominating with the "{title}" archetype in Legends of Runeterra.',archetypeDecks:'Find and explore decks centered around the "{title}" archetype. Adapt to the meta.',archetypeMatchups:'Analyze matchups and strategies for the "{title}" archetype in Legends of Runeterra.',deckOverview:'Get an in-depth overview of the "{title}" deck in Legends of Runeterra.',deckCards:'Explore the key cards within the "{title}" deck. Master your strategy.',deckStatistics:'Analyze detailed statistics and performance data for the "{title}" deck.',deckTopPlayers:'Discover the top players who excel with the "{title}" deck.',deckDecks:'Find decks similar to "{title}" for varied gameplay options.',deckMatchups:'Analyze matchups and strategies for the "{title}" deck in Legends of Runeterra.',cards:"Discover the complete card collection in Legends of Runeterra with detailed information on each card's stats, abilities, and more on LOR.GG.",deckBuilder:"Craft your perfect deck with our intuitive deck builder tool on LOR.GG. Fine-tune your strategies and create winning decks.",deckLibrary:"Explore a vast library of user-created decks for Legends of Runeterra. Find inspiration and share your own creations.",leaderboard:"Climb the ranks and compete with the best on our Legends of Runeterra leaderboard. Track your progress and see where you stand.",meta:"Stay up-to-date with the ever-evolving meta in Legends of Runeterra. Get insights into the top strategies and decks.",decks:"Browse and analyze a wide selection of decks for Legends of Runeterra. Find the perfect deck to suit your playstyle.",cardStatistics:"Dig deep into card statistics and analytics for Legends of Runeterra. Gain a competitive edge with our comprehensive card data.",cardPageStatistics:'Detailed statistics and insights for the "{title}" card in Legends of Runeterra. Master its potential with our analysis.',cardPageSimilarCards:'Discover cards similar to "{title}" in Legends of Runeterra. Find alternatives and expand your card knowledge.',cardPageDecks:'Explore decks featuring the powerful "{title}" card in Legends of Runeterra. Unleash its potential in your strategies.',profile:"Access and customize your LOR.GG profile. Track your match history, decks, and progress in Legends of Runeterra.",profileUser:"Explore the profile of {title} on LOR.GG. Check out their match history, statistics, and decks.",profileUserStatistics:"Analyze detailed statistics and achievements for {title}'s profile on LOR.GG. Learn from their gameplay.",profileUserDecks:"Explore the decks created by {title} on LOR.GG. Get insights into their strategies and card choices.",landing:"Unlock the full potential of Runeterra with LOR.GG's comprehensive toolkit. Explore cards, stats, and deck-building tools to reach new heights."},landing:{tagLine:"Chart Your Path to Victory",description1:"Welcome to LOR.GG, your definitive gateway to victory in Legends of Runeterra. Here, we offer you a comprehensive arsenal of tools and resources designed to elevate your gameplay and lead you towards triumph on the Runeterran battlefield.",description2:"Unleash your strategic prowess by exploring our extensive card database, where every card's statistics, abilities, and nuances are at your fingertips. Dive deep into the ever-evolving meta, discover top-tier decks, and adapt your strategies to conquer opponents with confidence.",newCards:{title:"New Cards",navigation:"Reveal Tracker"},builtDecks:{title:"User Created Decks",navigation:"Deck Library"},deckBuilder:{title:"Builder",navigation:"Deck Builder",description:"Elevate your gameplay and become a deck-building virtuoso with LOR.GG's intuitive Deck Builder tool. Craft decks tailored to your playstyle and fine-tune your strategies like never before. Experiment with card combinations, analyze synergies, and create powerful, winning decks. Whether you're a novice or a seasoned player, our Deck Builder empowers you to chart your path to victory in Legends of Runeterra. Join the ranks of top-tier players who have honed their skills through our platform and take your gameplay to the next level."},leaderboard:{title:"Leaderboard",navigation:"Leaderboard",description:"Test your skills against the best and climb the ranks on our Legends of Runeterra Leaderboard. See where you stand among the elite players of Runeterra, track your progress, and aim for the coveted top spots. Our Leaderboard is a testament to your dedication and progress in the game, providing a clear path to becoming a Runeterra legend. Join the competitive community, set your goals high, and embark on a journey to prove your worth on the Leaderboard at LOR.GG."},meta:{title:"Archetypes",navigation:"Meta",description:"Stay at the forefront of the ever-changing meta in Legends of Runeterra with LOR.GG. Our Meta section is your gateway to understanding the current landscape of strategies, top-tier decks, and prevailing trends in the game. Arm yourself with valuable insights, adapt your decks, and outmaneuver your opponents. Whether you're aiming for the top ranks or simply looking to stay competitive, our Meta resources offer the guidance you need to thrive in the dynamic world of Runeterra."},decks:{title:"Decks",navigation:"Decks",description:"Explore an expansive collection of decks meticulously curated for your success in Legends of Runeterra. Our Decks section is a goldmine of strategic possibilities, offering a diverse range of decks to suit every playstyle and skill level. Dive into the intricacies of each deck, discover their strengths, and harness their power. Whether you're searching for a proven winning formula or a fresh approach to the game, LOR.GG's Decks section is your gateway to mastering Runeterra and becoming a force to be reckoned"},cards:{title:"Cards",navigation:"Card Statistics",description:"At LOR.GG, we believe that knowledge is power, and our Card Statistics section is your key to unlocking that power in Legends of Runeterra. Delve deep into the data behind every card, gaining insights into their win rates, play rates, and performance in the meta. Equip yourself with the knowledge to make informed choices, optimize your decks, and stay ahead of the competition. Whether you're a competitive player or simply a Runeterra enthusiast, our comprehensive card statistics are your secret weapon for success."}},tournament:{standings:"Standings",oppWinrate:"Opponents' Winrate",oppGameWinrate:"Opponents' Game Winrate",gameWinrate:"Game Winrate",admin:{editMatchWinner:"Edit Match Winner",nextRound:{text:"The previous round has concluded. Please advance to the next round.",button:"Next Round"},wrongDeck:{text:"Player {name} played a deck that was not submitted. Review the match in Brackets."},start:{text:"You may start the tournament now. This will automatically start the first round.",button:"Start Tournament"}},feed:{withdrawal:"Withdrawal",withdrawalMessage:"A player has withdrawn from the tournament.",signUp:"New Sign Up",matchUpdate:"Match Update",checkIn:"Check In",adminUpdate:"Admin Update",adminUpdateMessage:"An admin has manually updated a match in the tournament.",created:"Tournament Created",createdMessage:"The tournament has been created.",roundStarted:"Round Started",roundStartedMessage:"A new round has started.",edited:"Tournament Edited",editedMessage:"The tournament has been edited by a tournament admin."},timeline:{registration:{title:"Registration",description:"Registration for the tournament is open. Sign up now!"},checkIn:{title:"Check In",description:"Check in to the tournament to confirm your participation."},start:{title:"Start",description:"The tournament has started!"},end:{title:"Concluded",description:"The tournament has concluded."}},prompt:{checkedIn:{text:"You are checked in for the tournament.",buttons:{toParticipantPage:"Go to Participant Page"}},registered:{text:"You are registered for the tournament.",buttons:{checkIn:"Check in",withdraw:"Withdraw",editDecks:"Edit Decks"}},signUp:{text:"Sign up to participate in this tournament.",buttons:{signUp:"Sign Up"}}},errors:{private:"This tournament has a private sign-up. Contact the tournament organizer for the correct link.",notLoggedIn:"You must be logged in to sign up for a tournament.",wrongServer:"You must be on the same server as the tournament to sign up."},decksSubmission:{heading:"Decks Submission",description:"Submit your decks for the tournament.",submitDecks:"Submit Decks",decksAreDue:"Decks are due"},participant:{banDecks:{heading:"Ban Decks",description:"No decks to bans | Choose a deck to ban against {name} | Choose {count} decks to ban against {name}",submit:"Submit Ban | Submit Bans"},playMatch:{heading:"Play Match",description:`You must play your match against the below opponent.
33
33
  To do this, add them as a friend in game and challenge them to a match.
34
34
  If the tournament is a best of 3 using normal deck rules, use the Standard / Eternal Best of Three. Submit the same three decks you submitted for the tournament and ban the same deck you banned for this match.
35
35
  If there are any issues, please contact the tournament organizer.`}}},general:{manaCost:"Mana Cost",cost:"Cost",regions:"Regions",clear:"Clear",clearAll:"Clear All",copy:"Copy",patch:"Patch",matches:"Matches",wins:"Wins",losses:"Losses",winrate:"Winrate",quantity:"Quantity",round:"Round",total:"Total",champion:"Champion",follower:"Follower",spell:"Spell",landmark:"Landmark",equipment:"Equipment",champions:"Champions",followers:"Followers",spells:"Spells",landmarks:"Landmarks",equipments:"Equipment",statistics:"Statistics",advanced:"Advanced",newAdvancedFilter:"New Advanced Filter",types:"Types",rarities:"Rarities",sets:"Sets",keywords:"Keywords",pastDays:"Past {count} Days",pastHours:"Past {count} Hours",pastHour:"Past Hour",season:"Season",servers:"Servers",sampleSize:"Sample Size",minimumMatches:"Minimum Matches",ranks:"Ranks",allRanks:"All Ranks",platPlus:"Platinum+",deck:"Deck",manaCurve:"Mana Curve",name:"Name",updated:"Updated",created:"Created",card:"Card",cards:"Cards",inclusion:"Inclusion",avgCopies:"Avg. Copies",turnsHeld:"Turns Held",mulliganWinrate:"Mulligan WR",keptInMulligan:"Kept in Mulligan",drawnWinrate:"Drawn Winrate",turnPlayed:"Turn Played",playrate:"Playrate",deckDifferences:"Deck Differences",player:"Player",lp:"LP",change:"Change",favoriteDeck:"Favorite Deck",server:"Server",players:"Players",time:"Time",type:"Type",rarity:"Rarity",archetypes:"Archetypes",archetype:"Archetype",profile:"Profile",leaderboard:"Leaderboard",victory:"Victory",defeat:"Defeat",newCards:"New Cards",signIn:"Sign In",syncUserData:"Sync User Data",settings:"Settings",gamesPlayed:"Games Played",premium:"Premium",renews:"Renews",expires:"Expires",getPremium:"Get Premium!",becomeTheMaster:"Become The Master",format:"Format",otherFormats:"Other Formats",queues:"Queues",save:"Save",captureImage:"Capture Image",deckCode:"Deck Code",library:"Library",openCards:"Open Cards",attackingFirst:"Attacking First",attackingSecond:"Attacking Second",overall:"Overall",list:"List",graph:"Graph",decks:"Decks",attackTokenOddsWr:"Attack Token: Odds Winrate",attackTokenEvensWr:"Attack Token: Evens Winrate",popularityTimeline:"Popularity Timeline",overallWinrate:"Overall Winrate",deckLibrary:"Deck Library",deckBuilder:"Deck Builder",inclusionTimeline:"Inclusion Timeline",winrateTimeline:"Winrate Timeline",winrateByGamesPlayed:"Winrate by Games Played",meta:"Meta",youHave:"You have: ",holdShiftForAssociated:"Hold Shift to see Associated Cards",cardArt:"Card Art",regionDistribution:"Region Distribution",noResults:"No Results",tryAgain:"Adjust filters and try again.",createdAt:"Created At",updatedAt:"Updated At",page:"Page",deckStats:"Deck Statistics",cardStats:"Card Statistics",cardGallery:"Card Gallery",close:"Close",overwrite:"Overwrite",rename:"Rename",view:"View",mustBeLoggedIn:"You must be logged in to complete this action.",uploadFailed:"Upload Failed",successfullyUploaded:"Successfully Uploaded",cardLottery:"Card Lottery",confirm:"Confirm",verified:"Verified",notVerified:"Not Verified",patches:"Patches",seasons:"Seasons",premiumBarrier:"You must be a premium user to access these filtering options.",verificationEmailSent:"Verification Email Sent.",updateEmail:"Update Email",text:"Text",syncingInProgress:"Syncing In Progress",matchRecord:"Match Record",gameRecord:"Game Record",vs:"vs",game:"Game",tie:"Tie",submit:"Submit"},profile:{winrateOverTime:"Winrate over Time",winrateByChampion:"Winrate by Champion",winrateByRegion:"Winrate by Region",winrateByRoundAttacking:"Winrate by Round Attacking",winrateAgainstChampion:"Winrate Against Champion",winrateAgainstRegion:"Winrate Against Region",commonOpponents:"Common Opponents"},navigation:{searchPlaceholder:"Search Cards or Players"},"profile-overview":"Overview","profile-statistics":"Statistics","profile-decks":"Decks","card-statistics":"Statistics","card-similar-cards":"Similar Cards","card-decks":"Decks","deck-overview":"Overview","deck-cards":"Cards","deck-statistics":"Statistics","deck-top-players":"Top Players","deck-similar":"Similar Decks","deck-matchups":"Matchups","archetype-overview":"Overview","archetype-cards":"Cards","archetype-statistics":"Statistics","archetype-top-players":"Top Players","archetype-decks":"Decks","archetype-matchups":"Matchups","tournament-overview":"Overview","tournament-brackets":"Brackets","tournament-players":"Players"},de:{cardLottery:{setBanner:"Als Banner festlegen",setIcon:"Als Symbol festlegen",openAnother:"Weitere öffnen"},cards:{roundDrawn:"Runde gezogen",roundPlayed:"Runde gespielt",card:"Karte",cards:"Karten",inclusion:"Einbindung",avgCopies:"Durchschn. Kopien",mulliganWinrate:"Mulligan-Gewinnrate",keptInMulligan:"Im Mulligan behalten",drawnWinrate:"Gewinnrate beim Ziehen",turnPlayed:"Zug gespielt",turnsHeld:"Runden gehalten",recommendedDecks:"Empfohlene Decks",similarCards:"Ähnliche Karten",attack:"Angriff",health:"Leben",quantityOwned:"Menge im Besitz",cost:"Kosten"},deck:{copyDeckCode:"Deckcode kopieren",deckCodeCopied:"Deckcode kopiert",deleteDeck:"Deck löschen",deleteDeckConfirmation:"Möchten Sie dieses Deck wirklich löschen?",editDeckName:"Decknamen bearbeiten",signInToUpload:"Bitte melden Sie sich an, um das Deck in LoR hochzuladen",uploadDeckToLor:"Deck in Legends of Runeterra hochladen",deckUploaded:"Deck hochgeladen!",updatePrivacy:"Deck-Privatsphäre aktualisieren",deckPrivate:"Derzeit privat",deckPublic:"Derzeit öffentlich",openInDeckBuilder:"Im Deck-Builder öffnen",numManaCards:"{num} Manakarten",simulateMulligan:"Mulligan simulieren",replaceAllCards:"Alle Karten ersetzen",replaceSelectedCards:"Ausgewählte Karten ersetzen",personalCost:"Persönliche Kosten",originalCost:"Ursprüngliche Kosten",openArchetypePage:"Archetyp-Seite öffnen",shareDeck:"Deck teilen",showPreview:"Deckvorschau anzeigen"},archetype:{abbreviation:"A"},leaderboard:{totalPlayers:"Gesamtzahl der Spieler",lp:"LP",rank:"Rang",updated:"Aktualisiert"},general:{manaCost:"Manakosten",cost:"Kosten",regions:"Regionen",clear:"Leeren",clearAll:"Alle leeren",copy:"Kopieren",patch:"Patch",matches:"Partien",wins:"Gewonnen",losses:"Verloren",winrate:"Gewinnrate",quantity:"Menge",round:"Runde",total:"Gesamt",champion:"Champion",follower:"Anhänger",spell:"Zauber",landmark:"Wahrzeichen",equipment:"Ausrüstung",champions:"Champions",followers:"Anhänger",spells:"Zauber",landmarks:"Wahrzeichen",equipments:"Ausrüstungen",statistics:"Statistiken",advanced:"Erweitert",newAdvancedFilter:"Neuer erweiterter Filter",types:"Typen",rarities:"Seltenheiten",sets:"Sets",keywords:"Schlüsselwörter",pastDays:"Vergangene {count} Tage",pastHours:"Vergangene {count} Stunden",pastHour:"Vergangene Stunde",season:"Saison",servers:"Server",sampleSize:"Stichprobengröße",minimumMatches:"Mindestanzahl an Partien",ranks:"Ränge",allRanks:"Alle Ränge",platPlus:"Platin+",deck:"Deck",manaCurve:"Manakurve",name:"Name",updated:"Aktualisiert",created:"Erstellt",card:"Karte",cards:"Karten",inclusion:"Einbindung",avgCopies:"Durchschn. Kopien",turnsHeld:"Runden gehalten",mulliganWinrate:"Mulligan-Gewinnrate",keptInMulligan:"Im Mulligan behalten",drawnWinrate:"Gewinnrate beim Ziehen",turnPlayed:"Zug gespielt",playrate:"Spielrate",deckDifferences:"Deckunterschiede",player:"Spieler",lp:"LP",change:"Änderung",favoriteDeck:"Favorisiertes Deck",server:"Server",players:"Spieler",time:"Zeit",type:"Typ",rarity:"Seltenheit",archetypes:"Archetypen",leaderboard:"Bestenliste",victory:"Sieg",defeat:"Niederlage",newCards:"Neue Karten",signIn:"Anmelden",syncUserData:"Benutzerdaten synchronisieren",settings:"Einstellungen",gamesPlayed:"Gespielte Partien",premium:"Premium",renews:"Verlängert sich",expires:"Läuft ab",getPremium:"Holen Sie sich Premium!",becomeTheMaster:"Werden Sie der Meister",format:"Format",otherFormats:"Andere Formate",queues:"Warteschlangen",save:"Speichern",captureImage:"Bild aufnehmen",deckCode:"Deckcode",library:"Bibliothek",openCards:"Karten öffnen",attackingFirst:"Als Erster angreifen",attackingSecond:"Als Zweiter angreifen",overall:"Insgesamt",list:"Liste",graph:"Diagramm",decks:"Decks",attackTokenOddsWr:"Angriffs-Token: Gewinnchance (ungerade)",attackTokenEvensWr:"Angriffs-Token: Gewinnchance (gerade)",popularityTimeline:"Beliebtheitsverlauf",overallWinrate:"Gesamte Gewinnrate",deckLibrary:"Deckbibliothek",deckBuilder:"Deck-Builder",inclusionTimeline:"Einbindungsverlauf",winrateTimeline:"Gewinnrate-Verlauf",winrateByGamesPlayed:"Gewinnrate nach gespielten Partien",meta:"Meta",youHave:"Sie haben: ",holdShiftForAssociated:"Shift halten, um zugehörige Karten anzuzeigen",cardArt:"Kartenillustration",regionDistribution:"Verteilung der Regionen",noResults:"Keine Ergebnisse",tryAgain:"Filter anpassen und erneut versuchen.",createdAt:"Erstellt am",updatedAt:"Aktualisiert am",page:"Seite",deckStats:"Deckstatistiken",cardStats:"Kartenstatistiken",cardGallery:"Kartengalerie",archetype:"Archetyp",profile:"Profil",uploadFailed:"Hochladen fehlgeschlagen",successfullyUploaded:"Erfolgreich hochgeladen"},deckBuilder:{confirmOverwrite:`Sie haben bereits ein Deck mit diesem Namen.
@@ -842,7 +842,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
842
842
  * Released under the MIT License
843
843
  */class lM{constructor(){this._request=null,this._charts=new Map,this._running=!1,this._lastDate=void 0}_notify(t,n,r,a){const i=n.listeners[a],o=n.duration;i.forEach(A=>A({chart:t,initial:n.initial,numSteps:o,currentStep:Math.min(r-n.start,o)}))}_refresh(){this._request||(this._running=!0,this._request=Vb.call(window,()=>{this._update(),this._request=null,this._running&&this._refresh()}))}_update(t=Date.now()){let n=0;this._charts.forEach((r,a)=>{if(!r.running||!r.items.length)return;const i=r.items;let o=i.length-1,A=!1,l;for(;o>=0;--o)l=i[o],l._active?(l._total>r.duration&&(r.duration=l._total),l.tick(t),A=!0):(i[o]=i[i.length-1],i.pop());A&&(a.draw(),this._notify(a,r,t,"progress")),i.length||(r.running=!1,this._notify(a,r,t,"complete"),r.initial=!1),n+=i.length}),this._lastDate=t,n===0&&(this._running=!1)}_getAnims(t){const n=this._charts;let r=n.get(t);return r||(r={running:!1,initial:!0,items:[],listeners:{complete:[],progress:[]}},n.set(t,r)),r}listen(t,n,r){this._getAnims(t).listeners[n].push(r)}add(t,n){!n||!n.length||this._getAnims(t).items.push(...n)}has(t){return this._getAnims(t).items.length>0}start(t){const n=this._charts.get(t);n&&(n.running=!0,n.start=Date.now(),n.duration=n.items.reduce((r,a)=>Math.max(r,a._duration),0),this._refresh())}running(t){if(!this._running)return!1;const n=this._charts.get(t);return!(!n||!n.running||!n.items.length)}stop(t){const n=this._charts.get(t);if(!n||!n.items.length)return;const r=n.items;let a=r.length-1;for(;a>=0;--a)r[a].cancel();n.items=[],this._notify(t,n,Date.now(),"complete")}remove(t){return this._charts.delete(t)}}var Kr=new lM;const M0="transparent",cM={boolean(e,t,n){return n>.5?t:e},color(e,t,n){const r=S0(e||M0),a=r.valid&&S0(t||M0);return a&&a.valid?a.mix(r,n).hexString():t},number(e,t,n){return e+(t-e)*n}};class uM{constructor(t,n,r,a){const i=n[r];a=rt([t.to,a,i,t.from]);const o=rt([t.from,i,a]);this._active=!0,this._fn=t.fn||cM[t.type||typeof o],this._easing=nA[t.easing]||nA.linear,this._start=Math.floor(Date.now()+(t.delay||0)),this._duration=this._total=Math.floor(t.duration),this._loop=!!t.loop,this._target=n,this._prop=r,this._from=o,this._to=a,this._promises=void 0}active(){return this._active}update(t,n,r){if(this._active){this._notify(!1);const a=this._target[this._prop],i=r-this._start,o=this._duration-i;this._start=r,this._duration=Math.floor(Math.max(o,t.duration)),this._total+=i,this._loop=!!t.loop,this._to=rt([t.to,n,a,t.from]),this._from=rt([t.from,a,n])}}cancel(){this._active&&(this.tick(Date.now()),this._active=!1,this._notify(!1))}tick(t){const n=t-this._start,r=this._duration,a=this._prop,i=this._from,o=this._loop,A=this._to;let l;if(this._active=i!==A&&(o||n<r),!this._active){this._target[a]=A,this._notify(!0);return}if(n<0){this._target[a]=i;return}l=n/r%2,l=o&&l>1?2-l:l,l=this._easing(Math.min(1,Math.max(0,l))),this._target[a]=this._fn(i,A,l)}wait(){const t=this._promises||(this._promises=[]);return new Promise((n,r)=>{t.push({res:n,rej:r})})}_notify(t){const n=t?"res":"rej",r=this._promises||[];for(let a=0;a<r.length;a++)r[a][n]()}}class rg{constructor(t,n){this._chart=t,this._properties=new Map,this.configure(n)}configure(t){if(!we(t))return;const n=Object.keys(pt.animation),r=this._properties;Object.getOwnPropertyNames(t).forEach(a=>{const i=t[a];if(!we(i))return;const o={};for(const A of n)o[A]=i[A];(Me(i.properties)&&i.properties||[a]).forEach(A=>{(A===a||!r.has(A))&&r.set(A,o)})})}_animateOptions(t,n){const r=n.options,a=fM(t,r);if(!a)return[];const i=this._createAnimations(a,r);return r.$shared&&dM(t.options.$animations,r).then(()=>{t.options=r},()=>{}),i}_createAnimations(t,n){const r=this._properties,a=[],i=t.$animations||(t.$animations={}),o=Object.keys(n),A=Date.now();let l;for(l=o.length-1;l>=0;--l){const c=o[l];if(c.charAt(0)==="$")continue;if(c==="options"){a.push(...this._animateOptions(t,n));continue}const u=n[c];let d=i[c];const f=r.get(c);if(d)if(f&&d.active()){d.update(f,u,A);continue}else d.cancel();if(!f||!f.duration){t[c]=u;continue}i[c]=d=new uM(f,t,c,u),a.push(d)}return a}update(t,n){if(this._properties.size===0){Object.assign(t,n);return}const r=this._createAnimations(t,n);if(r.length)return Kr.add(this._chart,r),!0}}function dM(e,t){const n=[],r=Object.keys(t);for(let a=0;a<r.length;a++){const i=e[r[a]];i&&i.active()&&n.push(i.wait())}return Promise.all(n)}function fM(e,t){if(!t)return;let n=e.options;if(!n){e.options=t;return}return n.$shared&&(e.options=n=Object.assign({},n,{$shared:!1,$animations:{}})),n}function N0(e,t){const n=e&&e.options||{},r=n.reverse,a=n.min===void 0?t:0,i=n.max===void 0?t:0;return{start:r?i:a,end:r?a:i}}function pM(e,t,n){if(n===!1)return!1;const r=N0(e,n),a=N0(t,n);return{top:a.end,right:r.end,bottom:a.start,left:r.start}}function hM(e){let t,n,r,a;return we(e)?(t=e.top,n=e.right,r=e.bottom,a=e.left):t=n=r=a=e,{top:t,right:n,bottom:r,left:a,disabled:e===!1}}function o_(e,t){const n=[],r=e._getSortedDatasetMetas(t);let a,i;for(a=0,i=r.length;a<i;++a)n.push(r[a].index);return n}function P0(e,t,n,r={}){const a=e.keys,i=r.mode==="single";let o,A,l,c;if(t!==null){for(o=0,A=a.length;o<A;++o){if(l=+a[o],l===n){if(r.all)continue;break}c=e.values[l],ft(c)&&(i||t===0||_r(t)===_r(c))&&(t+=c)}return t}}function mM(e){const t=Object.keys(e),n=new Array(t.length);let r,a,i;for(r=0,a=t.length;r<a;++r)i=t[r],n[r]={x:i,y:e[i]};return n}function H0(e,t){const n=e&&e.options.stacked;return n||n===void 0&&t.stack!==void 0}function gM(e,t,n){return`${e.id}.${t.id}.${n.stack||n.type}`}function vM(e){const{min:t,max:n,minDefined:r,maxDefined:a}=e.getUserBounds();return{min:r?t:Number.NEGATIVE_INFINITY,max:a?n:Number.POSITIVE_INFINITY}}function yM(e,t,n){const r=e[t]||(e[t]={});return r[n]||(r[n]={})}function R0(e,t,n,r){for(const a of t.getMatchingVisibleMetas(r).reverse()){const i=e[a.index];if(n&&i>0||!n&&i<0)return a.index}return null}function V0(e,t){const{chart:n,_cachedMeta:r}=e,a=n._stacks||(n._stacks={}),{iScale:i,vScale:o,index:A}=r,l=i.axis,c=o.axis,u=gM(i,o,r),d=t.length;let f;for(let p=0;p<d;++p){const h=t[p],{[l]:g,[c]:B}=h,m=h._stacks||(h._stacks={});f=m[c]=yM(a,u,g),f[A]=B,f._top=R0(f,o,!0,r.type),f._bottom=R0(f,o,!1,r.type);const v=f._visualValues||(f._visualValues={});v[A]=B}}function Cf(e,t){const n=e.scales;return Object.keys(n).filter(r=>n[r].axis===t).shift()}function BM(e,t){return Ai(e,{active:!1,dataset:void 0,datasetIndex:t,index:t,mode:"default",type:"dataset"})}function wM(e,t,n){return Ai(e,{active:!1,dataIndex:t,parsed:void 0,raw:void 0,element:n,index:t,mode:"default",type:"data"})}function yo(e,t){const n=e.controller.index,r=e.vScale&&e.vScale.axis;if(r){t=t||e._parsed;for(const a of t){const i=a._stacks;if(!i||i[r]===void 0||i[r][n]===void 0)return;delete i[r][n],i[r]._visualValues!==void 0&&i[r]._visualValues[n]!==void 0&&delete i[r]._visualValues[n]}}}const kf=e=>e==="reset"||e==="none",$0=(e,t)=>t?e:Object.assign({},e),bM=(e,t,n)=>e&&!t.hidden&&t._stacked&&{keys:o_(n,!0),values:null};class ir{constructor(t,n){this.chart=t,this._ctx=t.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 t=this._cachedMeta;this.configure(),this.linkScales(),t._stacked=H0(t.vScale,t),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(t){this.index!==t&&yo(this._cachedMeta),this.index=t}linkScales(){const t=this.chart,n=this._cachedMeta,r=this.getDataset(),a=(d,f,p,h)=>d==="x"?f:d==="r"?h:p,i=n.xAxisID=de(r.xAxisID,Cf(t,"x")),o=n.yAxisID=de(r.yAxisID,Cf(t,"y")),A=n.rAxisID=de(r.rAxisID,Cf(t,"r")),l=n.indexAxis,c=n.iAxisID=a(l,i,o,A),u=n.vAxisID=a(l,o,i,A);n.xScale=this.getScaleForId(i),n.yScale=this.getScaleForId(o),n.rScale=this.getScaleForId(A),n.iScale=this.getScaleForId(c),n.vScale=this.getScaleForId(u)}getDataset(){return this.chart.data.datasets[this.index]}getMeta(){return this.chart.getDatasetMeta(this.index)}getScaleForId(t){return this.chart.scales[t]}_getOtherScale(t){const n=this._cachedMeta;return t===n.iScale?n.vScale:n.iScale}reset(){this._update("reset")}_destroy(){const t=this._cachedMeta;this._data&&C0(this._data,this),t._stacked&&yo(t)}_dataCheck(){const t=this.getDataset(),n=t.data||(t.data=[]),r=this._data;if(we(n))this._data=mM(n);else if(r!==n){if(r){C0(r,this);const a=this._cachedMeta;yo(a),a._parsed=[]}n&&Object.isExtensible(n)&&oO(n,this),this._syncList=[],this._data=n}}addElements(){const t=this._cachedMeta;this._dataCheck(),this.datasetElementType&&(t.dataset=new this.datasetElementType)}buildOrUpdateElements(t){const n=this._cachedMeta,r=this.getDataset();let a=!1;this._dataCheck();const i=n._stacked;n._stacked=H0(n.vScale,n),n.stack!==r.stack&&(a=!0,yo(n),n.stack=r.stack),this._resyncElements(t),(a||i!==n._stacked)&&V0(this,n._parsed)}configure(){const t=this.chart.config,n=t.datasetScopeKeys(this._type),r=t.getOptionScopes(this.getDataset(),n,!0);this.options=t.createResolver(r,this.getContext()),this._parsing=this.options.parsing,this._cachedDataOpts={}}parse(t,n){const{_cachedMeta:r,_data:a}=this,{iScale:i,_stacked:o}=r,A=i.axis;let l=t===0&&n===a.length?!0:r._sorted,c=t>0&&r._parsed[t-1],u,d,f;if(this._parsing===!1)r._parsed=a,r._sorted=!0,f=a;else{Me(a[t])?f=this.parseArrayData(r,a,t,n):we(a[t])?f=this.parseObjectData(r,a,t,n):f=this.parsePrimitiveData(r,a,t,n);const p=()=>d[A]===null||c&&d[A]<c[A];for(u=0;u<n;++u)r._parsed[u+t]=d=f[u],l&&(p()&&(l=!1),c=d);r._sorted=l}o&&V0(this,f)}parsePrimitiveData(t,n,r,a){const{iScale:i,vScale:o}=t,A=i.axis,l=o.axis,c=i.getLabels(),u=i===o,d=new Array(a);let f,p,h;for(f=0,p=a;f<p;++f)h=f+r,d[f]={[A]:u||i.parse(c[h],h),[l]:o.parse(n[h],h)};return d}parseArrayData(t,n,r,a){const{xScale:i,yScale:o}=t,A=new Array(a);let l,c,u,d;for(l=0,c=a;l<c;++l)u=l+r,d=n[u],A[l]={x:i.parse(d[0],u),y:o.parse(d[1],u)};return A}parseObjectData(t,n,r,a){const{xScale:i,yScale:o}=t,{xAxisKey:A="x",yAxisKey:l="y"}=this._parsing,c=new Array(a);let u,d,f,p;for(u=0,d=a;u<d;++u)f=u+r,p=n[f],c[u]={x:i.parse(ei(p,A),f),y:o.parse(ei(p,l),f)};return c}getParsed(t){return this._cachedMeta._parsed[t]}getDataElement(t){return this._cachedMeta.data[t]}applyStack(t,n,r){const a=this.chart,i=this._cachedMeta,o=n[t.axis],A={keys:o_(a,!0),values:n._stacks[t.axis]._visualValues};return P0(A,o,i.index,{mode:r})}updateRangeFromParsed(t,n,r,a){const i=r[n.axis];let o=i===null?NaN:i;const A=a&&r._stacks[n.axis];a&&A&&(a.values=A,o=P0(a,i,this._cachedMeta.index)),t.min=Math.min(t.min,o),t.max=Math.max(t.max,o)}getMinMax(t,n){const r=this._cachedMeta,a=r._parsed,i=r._sorted&&t===r.iScale,o=a.length,A=this._getOtherScale(t),l=bM(n,r,this.chart),c={min:Number.POSITIVE_INFINITY,max:Number.NEGATIVE_INFINITY},{min:u,max:d}=vM(A);let f,p;function h(){p=a[f];const g=p[A.axis];return!ft(p[t.axis])||u>g||d<g}for(f=0;f<o&&!(!h()&&(this.updateRangeFromParsed(c,t,p,l),i));++f);if(i){for(f=o-1;f>=0;--f)if(!h()){this.updateRangeFromParsed(c,t,p,l);break}}return c}getAllParsedValues(t){const n=this._cachedMeta._parsed,r=[];let a,i,o;for(a=0,i=n.length;a<i;++a)o=n[a][t.axis],ft(o)&&r.push(o);return r}getMaxOverflow(){return!1}getLabelAndValue(t){const n=this._cachedMeta,r=n.iScale,a=n.vScale,i=this.getParsed(t);return{label:r?""+r.getLabelForValue(i[r.axis]):"",value:a?""+a.getLabelForValue(i[a.axis]):""}}_update(t){const n=this._cachedMeta;this.update(t||"default"),n._clip=hM(de(this.options.clip,pM(n.xScale,n.yScale,this.getMaxOverflow())))}update(t){}draw(){const t=this._ctx,n=this.chart,r=this._cachedMeta,a=r.data||[],i=n.chartArea,o=[],A=this._drawStart||0,l=this._drawCount||a.length-A,c=this.options.drawActiveElementsOnTop;let u;for(r.dataset&&r.dataset.draw(t,i,A,l),u=A;u<A+l;++u){const d=a[u];d.hidden||(d.active&&c?o.push(d):d.draw(t,i))}for(u=0;u<o.length;++u)o[u].draw(t,i)}getStyle(t,n){const r=n?"active":"default";return t===void 0&&this._cachedMeta.dataset?this.resolveDatasetElementOptions(r):this.resolveDataElementOptions(t||0,r)}getContext(t,n,r){const a=this.getDataset();let i;if(t>=0&&t<this._cachedMeta.data.length){const o=this._cachedMeta.data[t];i=o.$context||(o.$context=wM(this.getContext(),t,o)),i.parsed=this.getParsed(t),i.raw=a.data[t],i.index=i.dataIndex=t}else i=this.$context||(this.$context=BM(this.chart.getContext(),this.index)),i.dataset=a,i.index=i.datasetIndex=this.index;return i.active=!!n,i.mode=r,i}resolveDatasetElementOptions(t){return this._resolveElementOptions(this.datasetElementType.id,t)}resolveDataElementOptions(t,n){return this._resolveElementOptions(this.dataElementType.id,n,t)}_resolveElementOptions(t,n="default",r){const a=n==="active",i=this._cachedDataOpts,o=t+"-"+n,A=i[o],l=this.enableOptionSharing&&wn(r);if(A)return $0(A,l);const c=this.chart.config,u=c.datasetElementScopeKeys(this._type,t),d=a?[`${t}Hover`,"hover",t,""]:[t,""],f=c.getOptionScopes(this.getDataset(),u),p=Object.keys(pt.elements[t]),h=()=>this.getContext(r,a,n),g=c.resolveNamedOptions(f,p,h,d);return g.$shared&&(g.$shared=l,i[o]=Object.freeze($0(g,l))),g}_resolveAnimations(t,n,r){const a=this.chart,i=this._cachedDataOpts,o=`animation-${n}`,A=i[o];if(A)return A;let l;if(a.options.animation!==!1){const u=this.chart.config,d=u.datasetAnimationScopeKeys(this._type,n),f=u.getOptionScopes(this.getDataset(),d);l=u.createResolver(f,this.getContext(t,r,n))}const c=new rg(a,l&&l.animations);return l&&l._cacheable&&(i[o]=Object.freeze(c)),c}getSharedOptions(t){if(t.$shared)return this._sharedOptions||(this._sharedOptions=Object.assign({},t))}includeOptions(t,n){return!n||kf(t)||this.chart._animationsDisabled}_getSharedOptions(t,n){const r=this.resolveDataElementOptions(t,n),a=this._sharedOptions,i=this.getSharedOptions(r),o=this.includeOptions(n,i)||i!==a;return this.updateSharedOptions(i,n,r),{sharedOptions:i,includeOptions:o}}updateElement(t,n,r,a){kf(a)?Object.assign(t,r):this._resolveAnimations(n,a).update(t,r)}updateSharedOptions(t,n,r){t&&!kf(n)&&this._resolveAnimations(void 0,n).update(t,r)}_setStyle(t,n,r,a){t.active=a;const i=this.getStyle(n,a);this._resolveAnimations(n,r,a).update(t,{options:!a&&this.getSharedOptions(i)||i})}removeHoverStyle(t,n,r){this._setStyle(t,r,"active",!1)}setHoverStyle(t,n,r){this._setStyle(t,r,"active",!0)}_removeDatasetHoverStyle(){const t=this._cachedMeta.dataset;t&&this._setStyle(t,void 0,"active",!1)}_setDatasetHoverStyle(){const t=this._cachedMeta.dataset;t&&this._setStyle(t,void 0,"active",!0)}_resyncElements(t){const n=this._data,r=this._cachedMeta.data;for(const[A,l,c]of this._syncList)this[A](l,c);this._syncList=[];const a=r.length,i=n.length,o=Math.min(i,a);o&&this.parse(0,o),i>a?this._insertElements(a,i-a,t):i<a&&this._removeElements(i,a-i)}_insertElements(t,n,r=!0){const a=this._cachedMeta,i=a.data,o=t+n;let A;const l=c=>{for(c.length+=n,A=c.length-1;A>=o;A--)c[A]=c[A-n]};for(l(i),A=t;A<o;++A)i[A]=new this.dataElementType;this._parsing&&l(a._parsed),this.parse(t,n),r&&this.updateElements(i,t,n,"reset")}updateElements(t,n,r,a){}_removeElements(t,n){const r=this._cachedMeta;if(this._parsing){const a=r._parsed.splice(t,n);r._stacked&&yo(r,a)}r.data.splice(t,n)}_sync(t){if(this._parsing)this._syncList.push(t);else{const[n,r,a]=t;this[n](r,a)}this.chart._dataChanges.push([this.index,...t])}_onDataPush(){const t=arguments.length;this._sync(["_insertElements",this.getDataset().data.length-t,t])}_onDataPop(){this._sync(["_removeElements",this._cachedMeta.data.length-1,1])}_onDataShift(){this._sync(["_removeElements",0,1])}_onDataSplice(t,n){n&&this._sync(["_removeElements",t,n]);const r=arguments.length-2;r&&this._sync(["_insertElements",t,r])}_onDataUnshift(){this._sync(["_insertElements",0,arguments.length])}}R(ir,"defaults",{}),R(ir,"datasetElementType",null),R(ir,"dataElementType",null);function _M(e,t){if(!e._cache.$bar){const n=e.getMatchingVisibleMetas(t);let r=[];for(let a=0,i=n.length;a<i;a++)r=r.concat(n[a].controller.getAllParsedValues(e));e._cache.$bar=Rb(r.sort((a,i)=>a-i))}return e._cache.$bar}function CM(e){const t=e.iScale,n=_M(t,e.type);let r=t._length,a,i,o,A;const l=()=>{o===32767||o===-32768||(wn(A)&&(r=Math.min(r,Math.abs(o-A)||r)),A=o)};for(a=0,i=n.length;a<i;++a)o=t.getPixelForValue(n[a]),l();for(A=void 0,a=0,i=t.ticks.length;a<i;++a)o=t.getPixelForTick(a),l();return r}function kM(e,t,n,r){const a=n.barThickness;let i,o;return Ee(a)?(i=t.min*n.categoryPercentage,o=n.barPercentage):(i=a*r,o=1),{chunk:i/r,ratio:o,start:t.pixels[e]-i/2}}function EM(e,t,n,r){const a=t.pixels,i=a[e];let o=e>0?a[e-1]:null,A=e<a.length-1?a[e+1]:null;const l=n.categoryPercentage;o===null&&(o=i-(A===null?t.end-t.start:A-i)),A===null&&(A=i+i-o);const c=i-(i-Math.min(o,A))/2*l;return{chunk:Math.abs(A-o)/2*l/r,ratio:n.barPercentage,start:c}}function SM(e,t,n,r){const a=n.parse(e[0],r),i=n.parse(e[1],r),o=Math.min(a,i),A=Math.max(a,i);let l=o,c=A;Math.abs(o)>Math.abs(A)&&(l=A,c=o),t[n.axis]=c,t._custom={barStart:l,barEnd:c,start:a,end:i,min:o,max:A}}function A_(e,t,n,r){return Me(e)?SM(e,t,n,r):t[n.axis]=n.parse(e,r),t}function K0(e,t,n,r){const a=e.iScale,i=e.vScale,o=a.getLabels(),A=a===i,l=[];let c,u,d,f;for(c=n,u=n+r;c<u;++c)f=t[c],d={},d[a.axis]=A||a.parse(o[c],c),l.push(A_(f,d,i,c));return l}function Ef(e){return e&&e.barStart!==void 0&&e.barEnd!==void 0}function xM(e,t,n){return e!==0?_r(e):(t.isHorizontal()?1:-1)*(t.min>=n?1:-1)}function FM(e){let t,n,r,a,i;return e.horizontal?(t=e.base>e.x,n="left",r="right"):(t=e.base<e.y,n="bottom",r="top"),t?(a="end",i="start"):(a="start",i="end"),{start:n,end:r,reverse:t,top:a,bottom:i}}function IM(e,t,n,r){let a=t.borderSkipped;const i={};if(!a){e.borderSkipped=i;return}if(a===!0){e.borderSkipped={top:!0,right:!0,bottom:!0,left:!0};return}const{start:o,end:A,reverse:l,top:c,bottom:u}=FM(e);a==="middle"&&n&&(e.enableBorderRadius=!0,(n._top||0)===r?a=c:(n._bottom||0)===r?a=u:(i[z0(u,o,A,l)]=!0,a=c)),i[z0(a,o,A,l)]=!0,e.borderSkipped=i}function z0(e,t,n,r){return r?(e=TM(e,t,n),e=W0(e,n,t)):e=W0(e,t,n),e}function TM(e,t,n){return e===t?n:e===n?t:e}function W0(e,t,n){return e==="start"?t:e==="end"?n:e}function DM(e,{inflateAmount:t},n){e.inflateAmount=t==="auto"?n===1?.33:0:t}class $c extends ir{parsePrimitiveData(t,n,r,a){return K0(t,n,r,a)}parseArrayData(t,n,r,a){return K0(t,n,r,a)}parseObjectData(t,n,r,a){const{iScale:i,vScale:o}=t,{xAxisKey:A="x",yAxisKey:l="y"}=this._parsing,c=i.axis==="x"?A:l,u=o.axis==="x"?A:l,d=[];let f,p,h,g;for(f=r,p=r+a;f<p;++f)g=n[f],h={},h[i.axis]=i.parse(ei(g,c),f),d.push(A_(ei(g,u),h,o,f));return d}updateRangeFromParsed(t,n,r,a){super.updateRangeFromParsed(t,n,r,a);const i=r._custom;i&&n===this._cachedMeta.vScale&&(t.min=Math.min(t.min,i.min),t.max=Math.max(t.max,i.max))}getMaxOverflow(){return 0}getLabelAndValue(t){const n=this._cachedMeta,{iScale:r,vScale:a}=n,i=this.getParsed(t),o=i._custom,A=Ef(o)?"["+o.start+", "+o.end+"]":""+a.getLabelForValue(i[a.axis]);return{label:""+r.getLabelForValue(i[r.axis]),value:A}}initialize(){this.enableOptionSharing=!0,super.initialize();const t=this._cachedMeta;t.stack=this.getDataset().stack}update(t){const n=this._cachedMeta;this.updateElements(n.data,0,n.data.length,t)}updateElements(t,n,r,a){const i=a==="reset",{index:o,_cachedMeta:{vScale:A}}=this,l=A.getBasePixel(),c=A.isHorizontal(),u=this._getRuler(),{sharedOptions:d,includeOptions:f}=this._getSharedOptions(n,a);for(let p=n;p<n+r;p++){const h=this.getParsed(p),g=i||Ee(h[A.axis])?{base:l,head:l}:this._calculateBarValuePixels(p),B=this._calculateBarIndexPixels(p,u),m=(h._stacks||{})[A.axis],v={horizontal:c,base:g.base,enableBorderRadius:!m||Ef(h._custom)||o===m._top||o===m._bottom,x:c?g.head:B.center,y:c?B.center:g.head,height:c?B.size:Math.abs(g.size),width:c?Math.abs(g.size):B.size};f&&(v.options=d||this.resolveDataElementOptions(p,t[p].active?"active":a));const w=v.options||t[p].options;IM(v,w,m,o),DM(v,w,u.ratio),this.updateElement(t[p],p,v,a)}}_getStacks(t,n){const{iScale:r}=this._cachedMeta,a=r.getMatchingVisibleMetas(this._type).filter(l=>l.controller.options.grouped),i=r.options.stacked,o=[],A=l=>{const c=l.controller.getParsed(n),u=c&&c[l.vScale.axis];if(Ee(u)||isNaN(u))return!0};for(const l of a)if(!(n!==void 0&&A(l))&&((i===!1||o.indexOf(l.stack)===-1||i===void 0&&l.stack===void 0)&&o.push(l.stack),l.index===t))break;return o.length||o.push(void 0),o}_getStackCount(t){return this._getStacks(void 0,t).length}_getStackIndex(t,n,r){const a=this._getStacks(t,r),i=n!==void 0?a.indexOf(n):-1;return i===-1?a.length-1:i}_getRuler(){const t=this.options,n=this._cachedMeta,r=n.iScale,a=[];let i,o;for(i=0,o=n.data.length;i<o;++i)a.push(r.getPixelForValue(this.getParsed(i)[r.axis],i));const A=t.barThickness;return{min:A||CM(n),pixels:a,start:r._startPixel,end:r._endPixel,stackCount:this._getStackCount(),scale:r,grouped:t.grouped,ratio:A?1:t.categoryPercentage*t.barPercentage}}_calculateBarValuePixels(t){const{_cachedMeta:{vScale:n,_stacked:r,index:a},options:{base:i,minBarLength:o}}=this,A=i||0,l=this.getParsed(t),c=l._custom,u=Ef(c);let d=l[n.axis],f=0,p=r?this.applyStack(n,l,r):d,h,g;p!==d&&(f=p-d,p=d),u&&(d=c.barStart,p=c.barEnd-c.barStart,d!==0&&_r(d)!==_r(c.barEnd)&&(f=0),f+=d);const B=!Ee(i)&&!u?i:f;let m=n.getPixelForValue(B);if(this.chart.getDataVisibility(t)?h=n.getPixelForValue(f+p):h=m,g=h-m,Math.abs(g)<o){g=xM(g,n,A)*o,d===A&&(m-=g/2);const v=n.getPixelForDecimal(0),w=n.getPixelForDecimal(1),y=Math.min(v,w),b=Math.max(v,w);m=Math.max(Math.min(m,b),y),h=m+g,r&&!u&&(l._stacks[n.axis]._visualValues[a]=n.getValueForPixel(h)-n.getValueForPixel(m))}if(m===n.getPixelForValue(A)){const v=_r(g)*n.getLineWidthForValue(A)/2;m+=v,g-=v}return{size:g,base:m,head:h,center:h+g/2}}_calculateBarIndexPixels(t,n){const r=n.scale,a=this.options,i=a.skipNull,o=de(a.maxBarThickness,1/0);let A,l;if(n.grouped){const c=i?this._getStackCount(t):n.stackCount,u=a.barThickness==="flex"?EM(t,n,a,c):kM(t,n,a,c),d=this._getStackIndex(this.index,this._cachedMeta.stack,i?t:void 0);A=u.start+u.chunk*d+u.chunk/2,l=Math.min(o,u.chunk*u.ratio)}else A=r.getPixelForValue(this.getParsed(t)[r.axis],t),l=Math.min(o,n.min*n.ratio);return{base:A-l/2,head:A+l/2,center:A,size:l}}draw(){const t=this._cachedMeta,n=t.vScale,r=t.data,a=r.length;let i=0;for(;i<a;++i)this.getParsed(i)[n.axis]!==null&&r[i].draw(this._ctx)}}R($c,"id","bar"),R($c,"defaults",{datasetElementType:!1,dataElementType:"bar",categoryPercentage:.8,barPercentage:.9,grouped:!0,animations:{numbers:{type:"number",properties:["x","y","base","width","height"]}}}),R($c,"overrides",{scales:{_index_:{type:"category",offset:!0,grid:{offset:!0}},_value_:{type:"linear",beginAtZero:!0}}});class Kc extends ir{initialize(){this.enableOptionSharing=!0,super.initialize()}parsePrimitiveData(t,n,r,a){const i=super.parsePrimitiveData(t,n,r,a);for(let o=0;o<i.length;o++)i[o]._custom=this.resolveDataElementOptions(o+r).radius;return i}parseArrayData(t,n,r,a){const i=super.parseArrayData(t,n,r,a);for(let o=0;o<i.length;o++){const A=n[r+o];i[o]._custom=de(A[2],this.resolveDataElementOptions(o+r).radius)}return i}parseObjectData(t,n,r,a){const i=super.parseObjectData(t,n,r,a);for(let o=0;o<i.length;o++){const A=n[r+o];i[o]._custom=de(A&&A.r&&+A.r,this.resolveDataElementOptions(o+r).radius)}return i}getMaxOverflow(){const t=this._cachedMeta.data;let n=0;for(let r=t.length-1;r>=0;--r)n=Math.max(n,t[r].size(this.resolveDataElementOptions(r))/2);return n>0&&n}getLabelAndValue(t){const n=this._cachedMeta,r=this.chart.data.labels||[],{xScale:a,yScale:i}=n,o=this.getParsed(t),A=a.getLabelForValue(o.x),l=i.getLabelForValue(o.y),c=o._custom;return{label:r[t]||"",value:"("+A+", "+l+(c?", "+c:"")+")"}}update(t){const n=this._cachedMeta.data;this.updateElements(n,0,n.length,t)}updateElements(t,n,r,a){const i=a==="reset",{iScale:o,vScale:A}=this._cachedMeta,{sharedOptions:l,includeOptions:c}=this._getSharedOptions(n,a),u=o.axis,d=A.axis;for(let f=n;f<n+r;f++){const p=t[f],h=!i&&this.getParsed(f),g={},B=g[u]=i?o.getPixelForDecimal(.5):o.getPixelForValue(h[u]),m=g[d]=i?A.getBasePixel():A.getPixelForValue(h[d]);g.skip=isNaN(B)||isNaN(m),c&&(g.options=l||this.resolveDataElementOptions(f,p.active?"active":a),i&&(g.options.radius=0)),this.updateElement(p,f,g,a)}}resolveDataElementOptions(t,n){const r=this.getParsed(t);let a=super.resolveDataElementOptions(t,n);a.$shared&&(a=Object.assign({},a,{$shared:!1}));const i=a.radius;return n!=="active"&&(a.radius=0),a.radius+=de(r&&r._custom,i),a}}R(Kc,"id","bubble"),R(Kc,"defaults",{datasetElementType:!1,dataElementType:"point",animations:{numbers:{type:"number",properties:["x","y","borderWidth","radius"]}}}),R(Kc,"overrides",{scales:{x:{type:"linear"},y:{type:"linear"}}});function UM(e,t,n){let r=1,a=1,i=0,o=0;if(t<Ze){const A=e,l=A+t,c=Math.cos(A),u=Math.sin(A),d=Math.cos(l),f=Math.sin(l),p=(w,y,b)=>LA(w,A,l,!0)?1:Math.max(y,y*n,b,b*n),h=(w,y,b)=>LA(w,A,l,!0)?-1:Math.min(y,y*n,b,b*n),g=p(0,c,d),B=p(et,u,f),m=h(Qe,c,d),v=h(Qe+et,u,f);r=(g-m)/2,a=(B-v)/2,i=-(g+m)/2,o=-(B+v)/2}return{ratioX:r,ratioY:a,offsetX:i,offsetY:o}}class ki extends ir{constructor(t,n){super(t,n),this.enableOptionSharing=!0,this.innerRadius=void 0,this.outerRadius=void 0,this.offsetX=void 0,this.offsetY=void 0}linkScales(){}parse(t,n){const r=this.getDataset().data,a=this._cachedMeta;if(this._parsing===!1)a._parsed=r;else{let i=l=>+r[l];if(we(r[t])){const{key:l="value"}=this._parsing;i=c=>+ei(r[c],l)}let o,A;for(o=t,A=t+n;o<A;++o)a._parsed[o]=i(o)}}_getRotation(){return Ft(this.options.rotation-90)}_getCircumference(){return Ft(this.options.circumference)}_getRotationExtents(){let t=Ze,n=-Ze;for(let r=0;r<this.chart.data.datasets.length;++r)if(this.chart.isDatasetVisible(r)&&this.chart.getDatasetMeta(r).type===this._type){const a=this.chart.getDatasetMeta(r).controller,i=a._getRotation(),o=a._getCircumference();t=Math.min(t,i),n=Math.max(n,i+o)}return{rotation:t,circumference:n-t}}update(t){const n=this.chart,{chartArea:r}=n,a=this._cachedMeta,i=a.data,o=this.getMaxBorderWidth()+this.getMaxOffset(i)+this.options.spacing,A=Math.max((Math.min(r.width,r.height)-o)/2,0),l=Math.min(jL(this.options.cutout,A),1),c=this._getRingWeight(this.index),{circumference:u,rotation:d}=this._getRotationExtents(),{ratioX:f,ratioY:p,offsetX:h,offsetY:g}=UM(d,u,l),B=(r.width-o)/f,m=(r.height-o)/p,v=Math.max(Math.min(B,m)/2,0),w=Ob(this.options.radius,v),y=Math.max(w*l,0),b=(w-y)/this._getVisibleDatasetWeightTotal();this.offsetX=h*w,this.offsetY=g*w,a.total=this.calculateTotal(),this.outerRadius=w-b*this._getRingWeightOffset(this.index),this.innerRadius=Math.max(this.outerRadius-b*c,0),this.updateElements(i,0,i.length,t)}_circumference(t,n){const r=this.options,a=this._cachedMeta,i=this._getCircumference();return n&&r.animation.animateRotate||!this.chart.getDataVisibility(t)||a._parsed[t]===null||a.data[t].hidden?0:this.calculateCircumference(a._parsed[t]*i/Ze)}updateElements(t,n,r,a){const i=a==="reset",o=this.chart,A=o.chartArea,c=o.options.animation,u=(A.left+A.right)/2,d=(A.top+A.bottom)/2,f=i&&c.animateScale,p=f?0:this.innerRadius,h=f?0:this.outerRadius,{sharedOptions:g,includeOptions:B}=this._getSharedOptions(n,a);let m=this._getRotation(),v;for(v=0;v<n;++v)m+=this._circumference(v,i);for(v=n;v<n+r;++v){const w=this._circumference(v,i),y=t[v],b={x:u+this.offsetX,y:d+this.offsetY,startAngle:m,endAngle:m+w,circumference:w,outerRadius:h,innerRadius:p};B&&(b.options=g||this.resolveDataElementOptions(v,y.active?"active":a)),m+=w,this.updateElement(y,v,b,a)}}calculateTotal(){const t=this._cachedMeta,n=t.data;let r=0,a;for(a=0;a<n.length;a++){const i=t._parsed[a];i!==null&&!isNaN(i)&&this.chart.getDataVisibility(a)&&!n[a].hidden&&(r+=Math.abs(i))}return r}calculateCircumference(t){const n=this._cachedMeta.total;return n>0&&!isNaN(t)?Ze*(Math.abs(t)/n):0}getLabelAndValue(t){const n=this._cachedMeta,r=this.chart,a=r.data.labels||[],i=ul(n._parsed[t],r.options.locale);return{label:a[t]||"",value:i}}getMaxBorderWidth(t){let n=0;const r=this.chart;let a,i,o,A,l;if(!t){for(a=0,i=r.data.datasets.length;a<i;++a)if(r.isDatasetVisible(a)){o=r.getDatasetMeta(a),t=o.data,A=o.controller;break}}if(!t)return 0;for(a=0,i=t.length;a<i;++a)l=A.resolveDataElementOptions(a),l.borderAlign!=="inner"&&(n=Math.max(n,l.borderWidth||0,l.hoverBorderWidth||0));return n}getMaxOffset(t){let n=0;for(let r=0,a=t.length;r<a;++r){const i=this.resolveDataElementOptions(r);n=Math.max(n,i.offset||0,i.hoverOffset||0)}return n}_getRingWeightOffset(t){let n=0;for(let r=0;r<t;++r)this.chart.isDatasetVisible(r)&&(n+=this._getRingWeight(r));return n}_getRingWeight(t){return Math.max(de(this.chart.data.datasets[t].weight,1),0)}_getVisibleDatasetWeightTotal(){return this._getRingWeightOffset(this.chart.data.datasets.length)||1}}R(ki,"id","doughnut"),R(ki,"defaults",{datasetElementType:!1,dataElementType:"arc",animation:{animateRotate:!0,animateScale:!1},animations:{numbers:{type:"number",properties:["circumference","endAngle","innerRadius","outerRadius","startAngle","x","y","offset","borderWidth","spacing"]}},cutout:"50%",rotation:0,circumference:360,radius:"100%",spacing:0,indexAxis:"r"}),R(ki,"descriptors",{_scriptable:t=>t!=="spacing",_indexable:t=>t!=="spacing"&&!t.startsWith("borderDash")&&!t.startsWith("hoverBorderDash")}),R(ki,"overrides",{aspectRatio:1,plugins:{legend:{labels:{generateLabels(t){const n=t.data;if(n.labels.length&&n.datasets.length){const{labels:{pointStyle:r,color:a}}=t.legend.options;return n.labels.map((i,o)=>{const l=t.getDatasetMeta(0).controller.getStyle(o);return{text:i,fillStyle:l.backgroundColor,strokeStyle:l.borderColor,fontColor:a,lineWidth:l.borderWidth,pointStyle:r,hidden:!t.getDataVisibility(o),index:o}})}return[]}},onClick(t,n,r){r.chart.toggleDataVisibility(n.index),r.chart.update()}}}});class zc extends ir{initialize(){this.enableOptionSharing=!0,this.supportsDecimation=!0,super.initialize()}update(t){const n=this._cachedMeta,{dataset:r,data:a=[],_dataset:i}=n,o=this.chart._animationsDisabled;let{start:A,count:l}=Kb(n,a,o);this._drawStart=A,this._drawCount=l,zb(n)&&(A=0,l=a.length),r._chart=this.chart,r._datasetIndex=this.index,r._decimated=!!i._decimated,r.points=a;const c=this.resolveDatasetElementOptions(t);this.options.showLine||(c.borderWidth=0),c.segment=this.options.segment,this.updateElement(r,void 0,{animated:!o,options:c},t),this.updateElements(a,A,l,t)}updateElements(t,n,r,a){const i=a==="reset",{iScale:o,vScale:A,_stacked:l,_dataset:c}=this._cachedMeta,{sharedOptions:u,includeOptions:d}=this._getSharedOptions(n,a),f=o.axis,p=A.axis,{spanGaps:h,segment:g}=this.options,B=ti(h)?h:Number.POSITIVE_INFINITY,m=this.chart._animationsDisabled||i||a==="none",v=n+r,w=t.length;let y=n>0&&this.getParsed(n-1);for(let b=0;b<w;++b){const _=t[b],C=m?_:{};if(b<n||b>=v){C.skip=!0;continue}const E=this.getParsed(b),S=Ee(E[p]),U=C[f]=o.getPixelForValue(E[f],b),T=C[p]=i||S?A.getBasePixel():A.getPixelForValue(l?this.applyStack(A,E,l):E[p],b);C.skip=isNaN(U)||isNaN(T)||S,C.stop=b>0&&Math.abs(E[f]-y[f])>B,g&&(C.parsed=E,C.raw=c.data[b]),d&&(C.options=u||this.resolveDataElementOptions(b,_.active?"active":a)),m||this.updateElement(_,b,C,a),y=E}}getMaxOverflow(){const t=this._cachedMeta,n=t.dataset,r=n.options&&n.options.borderWidth||0,a=t.data||[];if(!a.length)return r;const i=a[0].size(this.resolveDataElementOptions(0)),o=a[a.length-1].size(this.resolveDataElementOptions(a.length-1));return Math.max(r,i,o)/2}draw(){const t=this._cachedMeta;t.dataset.updateControlPoints(this.chart.chartArea,t.iScale.axis),super.draw()}}R(zc,"id","line"),R(zc,"defaults",{datasetElementType:"line",dataElementType:"point",showLine:!0,spanGaps:!1}),R(zc,"overrides",{scales:{_index_:{type:"category"},_value_:{type:"linear"}}});class aA extends ir{constructor(t,n){super(t,n),this.innerRadius=void 0,this.outerRadius=void 0}getLabelAndValue(t){const n=this._cachedMeta,r=this.chart,a=r.data.labels||[],i=ul(n._parsed[t].r,r.options.locale);return{label:a[t]||"",value:i}}parseObjectData(t,n,r,a){return Zb.bind(this)(t,n,r,a)}update(t){const n=this._cachedMeta.data;this._updateRadius(),this.updateElements(n,0,n.length,t)}getMinMax(){const t=this._cachedMeta,n={min:Number.POSITIVE_INFINITY,max:Number.NEGATIVE_INFINITY};return t.data.forEach((r,a)=>{const i=this.getParsed(a).r;!isNaN(i)&&this.chart.getDataVisibility(a)&&(i<n.min&&(n.min=i),i>n.max&&(n.max=i))}),n}_updateRadius(){const t=this.chart,n=t.chartArea,r=t.options,a=Math.min(n.right-n.left,n.bottom-n.top),i=Math.max(a/2,0),o=Math.max(r.cutoutPercentage?i/100*r.cutoutPercentage:1,0),A=(i-o)/t.getVisibleDatasetCount();this.outerRadius=i-A*this.index,this.innerRadius=this.outerRadius-A}updateElements(t,n,r,a){const i=a==="reset",o=this.chart,l=o.options.animation,c=this._cachedMeta.rScale,u=c.xCenter,d=c.yCenter,f=c.getIndexAngle(0)-.5*Qe;let p=f,h;const g=360/this.countVisibleElements();for(h=0;h<n;++h)p+=this._computeAngle(h,a,g);for(h=n;h<n+r;h++){const B=t[h];let m=p,v=p+this._computeAngle(h,a,g),w=o.getDataVisibility(h)?c.getDistanceFromCenterForValue(this.getParsed(h).r):0;p=v,i&&(l.animateScale&&(w=0),l.animateRotate&&(m=v=f));const y={x:u,y:d,innerRadius:0,outerRadius:w,startAngle:m,endAngle:v,options:this.resolveDataElementOptions(h,B.active?"active":a)};this.updateElement(B,h,y,a)}}countVisibleElements(){const t=this._cachedMeta;let n=0;return t.data.forEach((r,a)=>{!isNaN(this.getParsed(a).r)&&this.chart.getDataVisibility(a)&&n++}),n}_computeAngle(t,n,r){return this.chart.getDataVisibility(t)?Ft(this.resolveDataElementOptions(t,n).angle||r):0}}R(aA,"id","polarArea"),R(aA,"defaults",{dataElementType:"arc",animation:{animateRotate:!0,animateScale:!0},animations:{numbers:{type:"number",properties:["x","y","startAngle","endAngle","innerRadius","outerRadius"]}},indexAxis:"r",startAngle:0}),R(aA,"overrides",{aspectRatio:1,plugins:{legend:{labels:{generateLabels(t){const n=t.data;if(n.labels.length&&n.datasets.length){const{labels:{pointStyle:r,color:a}}=t.legend.options;return n.labels.map((i,o)=>{const l=t.getDatasetMeta(0).controller.getStyle(o);return{text:i,fillStyle:l.backgroundColor,strokeStyle:l.borderColor,fontColor:a,lineWidth:l.borderWidth,pointStyle:r,hidden:!t.getDataVisibility(o),index:o}})}return[]}},onClick(t,n,r){r.chart.toggleDataVisibility(n.index),r.chart.update()}}},scales:{r:{type:"radialLinear",angleLines:{display:!1},beginAtZero:!0,grid:{circular:!0},pointLabels:{display:!1},startAngle:0}}});class Wp extends ki{}R(Wp,"id","pie"),R(Wp,"defaults",{cutout:0,rotation:0,circumference:360,radius:"100%"});class Wc extends ir{getLabelAndValue(t){const n=this._cachedMeta.vScale,r=this.getParsed(t);return{label:n.getLabels()[t],value:""+n.getLabelForValue(r[n.axis])}}parseObjectData(t,n,r,a){return Zb.bind(this)(t,n,r,a)}update(t){const n=this._cachedMeta,r=n.dataset,a=n.data||[],i=n.iScale.getLabels();if(r.points=a,t!=="resize"){const o=this.resolveDatasetElementOptions(t);this.options.showLine||(o.borderWidth=0);const A={_loop:!0,_fullLoop:i.length===a.length,options:o};this.updateElement(r,void 0,A,t)}this.updateElements(a,0,a.length,t)}updateElements(t,n,r,a){const i=this._cachedMeta.rScale,o=a==="reset";for(let A=n;A<n+r;A++){const l=t[A],c=this.resolveDataElementOptions(A,l.active?"active":a),u=i.getPointPositionForValue(A,this.getParsed(A).r),d=o?i.xCenter:u.x,f=o?i.yCenter:u.y,p={x:d,y:f,angle:u.angle,skip:isNaN(d)||isNaN(f),options:c};this.updateElement(l,A,p,a)}}}R(Wc,"id","radar"),R(Wc,"defaults",{datasetElementType:"line",dataElementType:"point",indexAxis:"r",showLine:!0,elements:{line:{fill:"start"}}}),R(Wc,"overrides",{aspectRatio:1,scales:{r:{type:"radialLinear"}}});class Gc extends ir{getLabelAndValue(t){const n=this._cachedMeta,r=this.chart.data.labels||[],{xScale:a,yScale:i}=n,o=this.getParsed(t),A=a.getLabelForValue(o.x),l=i.getLabelForValue(o.y);return{label:r[t]||"",value:"("+A+", "+l+")"}}update(t){const n=this._cachedMeta,{data:r=[]}=n,a=this.chart._animationsDisabled;let{start:i,count:o}=Kb(n,r,a);if(this._drawStart=i,this._drawCount=o,zb(n)&&(i=0,o=r.length),this.options.showLine){const{dataset:A,_dataset:l}=n;A._chart=this.chart,A._datasetIndex=this.index,A._decimated=!!l._decimated,A.points=r;const c=this.resolveDatasetElementOptions(t);c.segment=this.options.segment,this.updateElement(A,void 0,{animated:!a,options:c},t)}this.updateElements(r,i,o,t)}addElements(){const{showLine:t}=this.options;!this.datasetElementType&&t&&(this.datasetElementType=this.chart.registry.getElement("line")),super.addElements()}updateElements(t,n,r,a){const i=a==="reset",{iScale:o,vScale:A,_stacked:l,_dataset:c}=this._cachedMeta,u=this.resolveDataElementOptions(n,a),d=this.getSharedOptions(u),f=this.includeOptions(a,d),p=o.axis,h=A.axis,{spanGaps:g,segment:B}=this.options,m=ti(g)?g:Number.POSITIVE_INFINITY,v=this.chart._animationsDisabled||i||a==="none";let w=n>0&&this.getParsed(n-1);for(let y=n;y<n+r;++y){const b=t[y],_=this.getParsed(y),C=v?b:{},E=Ee(_[h]),S=C[p]=o.getPixelForValue(_[p],y),U=C[h]=i||E?A.getBasePixel():A.getPixelForValue(l?this.applyStack(A,_,l):_[h],y);C.skip=isNaN(S)||isNaN(U)||E,C.stop=y>0&&Math.abs(_[p]-w[p])>m,B&&(C.parsed=_,C.raw=c.data[y]),f&&(C.options=d||this.resolveDataElementOptions(y,b.active?"active":a)),v||this.updateElement(b,y,C,a),w=_}this.updateSharedOptions(d,a,u)}getMaxOverflow(){const t=this._cachedMeta,n=t.data||[];if(!this.options.showLine){let A=0;for(let l=n.length-1;l>=0;--l)A=Math.max(A,n[l].size(this.resolveDataElementOptions(l))/2);return A>0&&A}const r=t.dataset,a=r.options&&r.options.borderWidth||0;if(!n.length)return a;const i=n[0].size(this.resolveDataElementOptions(0)),o=n[n.length-1].size(this.resolveDataElementOptions(n.length-1));return Math.max(a,i,o)/2}}R(Gc,"id","scatter"),R(Gc,"defaults",{datasetElementType:!1,dataElementType:"point",showLine:!1,fill:!1}),R(Gc,"overrides",{interaction:{mode:"point"},scales:{x:{type:"linear"},y:{type:"linear"}}});var QM=Object.freeze({__proto__:null,BarController:$c,BubbleController:Kc,DoughnutController:ki,LineController:zc,PieController:Wp,PolarAreaController:aA,RadarController:Wc,ScatterController:Gc});function fi(){throw new Error("This method is not implemented: Check that a complete date adapter is provided.")}class ag{constructor(t){R(this,"options");this.options=t||{}}static override(t){Object.assign(ag.prototype,t)}init(){}formats(){return fi()}parse(){return fi()}format(){return fi()}add(){return fi()}diff(){return fi()}startOf(){return fi()}endOf(){return fi()}}var l_={_date:ag};function LM(e,t,n,r){const{controller:a,data:i,_sorted:o}=e,A=a._cachedMeta.iScale;if(A&&t===A.axis&&t!=="r"&&o&&i.length){const l=A._reversePixels?iO:Xr;if(r){if(a._sharedOptions){const c=i[0],u=typeof c.getRange=="function"&&c.getRange(t);if(u){const d=l(i,t,n-u),f=l(i,t,n+u);return{lo:d.lo,hi:f.hi}}}}else return l(i,t,n)}return{lo:0,hi:i.length-1}}function pl(e,t,n,r,a){const i=e.getSortedVisibleDatasetMetas(),o=n[t];for(let A=0,l=i.length;A<l;++A){const{index:c,data:u}=i[A],{lo:d,hi:f}=LM(i[A],t,o,a);for(let p=d;p<=f;++p){const h=u[p];h.skip||r(h,c,p)}}}function OM(e){const t=e.indexOf("x")!==-1,n=e.indexOf("y")!==-1;return function(r,a){const i=t?Math.abs(r.x-a.x):0,o=n?Math.abs(r.y-a.y):0;return Math.sqrt(Math.pow(i,2)+Math.pow(o,2))}}function Sf(e,t,n,r,a){const i=[];return!a&&!e.isPointInArea(t)||pl(e,n,t,function(A,l,c){!a&&!Jr(A,e.chartArea,0)||A.inRange(t.x,t.y,r)&&i.push({element:A,datasetIndex:l,index:c})},!0),i}function MM(e,t,n,r){let a=[];function i(o,A,l){const{startAngle:c,endAngle:u}=o.getProps(["startAngle","endAngle"],r),{angle:d}=Pb(o,{x:t.x,y:t.y});LA(d,c,u)&&a.push({element:o,datasetIndex:A,index:l})}return pl(e,n,t,i),a}function NM(e,t,n,r,a,i){let o=[];const A=OM(n);let l=Number.POSITIVE_INFINITY;function c(u,d,f){const p=u.inRange(t.x,t.y,a);if(r&&!p)return;const h=u.getCenterPoint(a);if(!(!!i||e.isPointInArea(h))&&!p)return;const B=A(t,h);B<l?(o=[{element:u,datasetIndex:d,index:f}],l=B):B===l&&o.push({element:u,datasetIndex:d,index:f})}return pl(e,n,t,c),o}function xf(e,t,n,r,a,i){return!i&&!e.isPointInArea(t)?[]:n==="r"&&!r?MM(e,t,n,a):NM(e,t,n,r,a,i)}function G0(e,t,n,r,a){const i=[],o=n==="x"?"inXRange":"inYRange";let A=!1;return pl(e,n,t,(l,c,u)=>{l[o](t[n],a)&&(i.push({element:l,datasetIndex:c,index:u}),A=A||l.inRange(t.x,t.y,a))}),r&&!A?[]:i}var PM={evaluateInteractionItems:pl,modes:{index(e,t,n,r){const a=vi(t,e),i=n.axis||"x",o=n.includeInvisible||!1,A=n.intersect?Sf(e,a,i,r,o):xf(e,a,i,!1,r,o),l=[];return A.length?(e.getSortedVisibleDatasetMetas().forEach(c=>{const u=A[0].index,d=c.data[u];d&&!d.skip&&l.push({element:d,datasetIndex:c.index,index:u})}),l):[]},dataset(e,t,n,r){const a=vi(t,e),i=n.axis||"xy",o=n.includeInvisible||!1;let A=n.intersect?Sf(e,a,i,r,o):xf(e,a,i,!1,r,o);if(A.length>0){const l=A[0].datasetIndex,c=e.getDatasetMeta(l).data;A=[];for(let u=0;u<c.length;++u)A.push({element:c[u],datasetIndex:l,index:u})}return A},point(e,t,n,r){const a=vi(t,e),i=n.axis||"xy",o=n.includeInvisible||!1;return Sf(e,a,i,r,o)},nearest(e,t,n,r){const a=vi(t,e),i=n.axis||"xy",o=n.includeInvisible||!1;return xf(e,a,i,n.intersect,r,o)},x(e,t,n,r){const a=vi(t,e);return G0(e,a,"x",n.intersect,r)},y(e,t,n,r){const a=vi(t,e);return G0(e,a,"y",n.intersect,r)}}};const c_=["left","top","right","bottom"];function Bo(e,t){return e.filter(n=>n.pos===t)}function j0(e,t){return e.filter(n=>c_.indexOf(n.pos)===-1&&n.box.axis===t)}function wo(e,t){return e.sort((n,r)=>{const a=t?r:n,i=t?n:r;return a.weight===i.weight?a.index-i.index:a.weight-i.weight})}function HM(e){const t=[];let n,r,a,i,o,A;for(n=0,r=(e||[]).length;n<r;++n)a=e[n],{position:i,options:{stack:o,stackWeight:A=1}}=a,t.push({index:n,box:a,pos:i,horizontal:a.isHorizontal(),weight:a.weight,stack:o&&i+o,stackWeight:A});return t}function RM(e){const t={};for(const n of e){const{stack:r,pos:a,stackWeight:i}=n;if(!r||!c_.includes(a))continue;const o=t[r]||(t[r]={count:0,placed:0,weight:0,size:0});o.count++,o.weight+=i}return t}function VM(e,t){const n=RM(e),{vBoxMaxWidth:r,hBoxMaxHeight:a}=t;let i,o,A;for(i=0,o=e.length;i<o;++i){A=e[i];const{fullSize:l}=A.box,c=n[A.stack],u=c&&A.stackWeight/c.weight;A.horizontal?(A.width=u?u*r:l&&t.availableWidth,A.height=a):(A.width=r,A.height=u?u*a:l&&t.availableHeight)}return n}function $M(e){const t=HM(e),n=wo(t.filter(c=>c.box.fullSize),!0),r=wo(Bo(t,"left"),!0),a=wo(Bo(t,"right")),i=wo(Bo(t,"top"),!0),o=wo(Bo(t,"bottom")),A=j0(t,"x"),l=j0(t,"y");return{fullSize:n,leftAndTop:r.concat(i),rightAndBottom:a.concat(l).concat(o).concat(A),chartArea:Bo(t,"chartArea"),vertical:r.concat(a).concat(l),horizontal:i.concat(o).concat(A)}}function Y0(e,t,n,r){return Math.max(e[n],t[n])+Math.max(e[r],t[r])}function u_(e,t){e.top=Math.max(e.top,t.top),e.left=Math.max(e.left,t.left),e.bottom=Math.max(e.bottom,t.bottom),e.right=Math.max(e.right,t.right)}function KM(e,t,n,r){const{pos:a,box:i}=n,o=e.maxPadding;if(!we(a)){n.size&&(e[a]-=n.size);const d=r[n.stack]||{size:0,count:1};d.size=Math.max(d.size,n.horizontal?i.height:i.width),n.size=d.size/d.count,e[a]+=n.size}i.getPadding&&u_(o,i.getPadding());const A=Math.max(0,t.outerWidth-Y0(o,e,"left","right")),l=Math.max(0,t.outerHeight-Y0(o,e,"top","bottom")),c=A!==e.w,u=l!==e.h;return e.w=A,e.h=l,n.horizontal?{same:c,other:u}:{same:u,other:c}}function zM(e){const t=e.maxPadding;function n(r){const a=Math.max(t[r]-e[r],0);return e[r]+=a,a}e.y+=n("top"),e.x+=n("left"),n("right"),n("bottom")}function WM(e,t){const n=t.maxPadding;function r(a){const i={left:0,top:0,right:0,bottom:0};return a.forEach(o=>{i[o]=Math.max(t[o],n[o])}),i}return r(e?["left","right"]:["top","bottom"])}function Lo(e,t,n,r){const a=[];let i,o,A,l,c,u;for(i=0,o=e.length,c=0;i<o;++i){A=e[i],l=A.box,l.update(A.width||t.w,A.height||t.h,WM(A.horizontal,t));const{same:d,other:f}=KM(t,n,A,r);c|=d&&a.length,u=u||f,l.fullSize||a.push(A)}return c&&Lo(a,t,n,r)||u}function ec(e,t,n,r,a){e.top=n,e.left=t,e.right=t+r,e.bottom=n+a,e.width=r,e.height=a}function q0(e,t,n,r){const a=n.padding;let{x:i,y:o}=t;for(const A of e){const l=A.box,c=r[A.stack]||{count:1,placed:0,weight:1},u=A.stackWeight/c.weight||1;if(A.horizontal){const d=t.w*u,f=c.size||l.height;wn(c.start)&&(o=c.start),l.fullSize?ec(l,a.left,o,n.outerWidth-a.right-a.left,f):ec(l,t.left+c.placed,o,d,f),c.start=o,c.placed+=d,o=l.bottom}else{const d=t.h*u,f=c.size||l.width;wn(c.start)&&(i=c.start),l.fullSize?ec(l,i,a.top,f,n.outerHeight-a.bottom-a.top):ec(l,i,t.top+c.placed,f,d),c.start=i,c.placed+=d,i=l.right}}t.x=i,t.y=o}var Xt={addBox(e,t){e.boxes||(e.boxes=[]),t.fullSize=t.fullSize||!1,t.position=t.position||"top",t.weight=t.weight||0,t._layers=t._layers||function(){return[{z:0,draw(n){t.draw(n)}}]},e.boxes.push(t)},removeBox(e,t){const n=e.boxes?e.boxes.indexOf(t):-1;n!==-1&&e.boxes.splice(n,1)},configure(e,t,n){t.fullSize=n.fullSize,t.position=n.position,t.weight=n.weight},update(e,t,n,r){if(!e)return;const a=St(e.options.layout.padding),i=Math.max(t-a.width,0),o=Math.max(n-a.height,0),A=$M(e.boxes),l=A.vertical,c=A.horizontal;$e(e.boxes,g=>{typeof g.beforeLayout=="function"&&g.beforeLayout()});const u=l.reduce((g,B)=>B.box.options&&B.box.options.display===!1?g:g+1,0)||1,d=Object.freeze({outerWidth:t,outerHeight:n,padding:a,availableWidth:i,availableHeight:o,vBoxMaxWidth:i/2/u,hBoxMaxHeight:o/2}),f=Object.assign({},a);u_(f,St(r));const p=Object.assign({maxPadding:f,w:i,h:o,x:a.left,y:a.top},a),h=VM(l.concat(c),d);Lo(A.fullSize,p,d,h),Lo(l,p,d,h),Lo(c,p,d,h)&&Lo(l,p,d,h),zM(p),q0(A.leftAndTop,p,d,h),p.x+=p.w,p.y+=p.h,q0(A.rightAndBottom,p,d,h),e.chartArea={left:p.left,top:p.top,right:p.left+p.w,bottom:p.top+p.h,height:p.h,width:p.w},$e(A.chartArea,g=>{const B=g.box;Object.assign(B,e.chartArea),B.update(p.w,p.h,{left:0,top:0,right:0,bottom:0})})}};class d_{acquireContext(t,n){}releaseContext(t){return!1}addEventListener(t,n,r){}removeEventListener(t,n,r){}getDevicePixelRatio(){return 1}getMaximumSize(t,n,r,a){return n=Math.max(0,n||t.width),r=r||t.height,{width:n,height:Math.max(0,a?Math.floor(n/a):r)}}isAttached(t){return!0}updateConfig(t){}}class GM extends d_{acquireContext(t){return t&&t.getContext&&t.getContext("2d")||null}updateConfig(t){t.options.animation=!1}}const jc="$chartjs",jM={touchstart:"mousedown",touchmove:"mousemove",touchend:"mouseup",pointerenter:"mouseenter",pointerdown:"mousedown",pointermove:"mousemove",pointerup:"mouseup",pointerleave:"mouseout",pointerout:"mouseout"},X0=e=>e===null||e==="";function YM(e,t){const n=e.style,r=e.getAttribute("height"),a=e.getAttribute("width");if(e[jc]={initial:{height:r,width:a,style:{display:n.display,height:n.height,width:n.width}}},n.display=n.display||"block",n.boxSizing=n.boxSizing||"border-box",X0(a)){const i=U0(e,"width");i!==void 0&&(e.width=i)}if(X0(r))if(e.style.height==="")e.height=e.width/(t||2);else{const i=U0(e,"height");i!==void 0&&(e.height=i)}return e}const f_=JO?{passive:!0}:!1;function qM(e,t,n){e.addEventListener(t,n,f_)}function XM(e,t,n){e.canvas.removeEventListener(t,n,f_)}function JM(e,t){const n=jM[e.type]||e.type,{x:r,y:a}=vi(e,t);return{type:n,chart:t,native:e,x:r!==void 0?r:null,y:a!==void 0?a:null}}function bu(e,t){for(const n of e)if(n===t||n.contains(t))return!0}function ZM(e,t,n){const r=e.canvas,a=new MutationObserver(i=>{let o=!1;for(const A of i)o=o||bu(A.addedNodes,r),o=o&&!bu(A.removedNodes,r);o&&n()});return a.observe(document,{childList:!0,subtree:!0}),a}function e7(e,t,n){const r=e.canvas,a=new MutationObserver(i=>{let o=!1;for(const A of i)o=o||bu(A.removedNodes,r),o=o&&!bu(A.addedNodes,r);o&&n()});return a.observe(document,{childList:!0,subtree:!0}),a}const OA=new Map;let J0=0;function p_(){const e=window.devicePixelRatio;e!==J0&&(J0=e,OA.forEach((t,n)=>{n.currentDevicePixelRatio!==e&&t()}))}function t7(e,t){OA.size||window.addEventListener("resize",p_),OA.set(e,t)}function n7(e){OA.delete(e),OA.size||window.removeEventListener("resize",p_)}function r7(e,t,n){const r=e.canvas,a=r&&ng(r);if(!a)return;const i=$b((A,l)=>{const c=a.clientWidth;n(A,l),c<a.clientWidth&&n()},window),o=new ResizeObserver(A=>{const l=A[0],c=l.contentRect.width,u=l.contentRect.height;c===0&&u===0||i(c,u)});return o.observe(a),t7(e,i),o}function Ff(e,t,n){n&&n.disconnect(),t==="resize"&&n7(e)}function a7(e,t,n){const r=e.canvas,a=$b(i=>{e.ctx!==null&&n(JM(i,e))},e);return qM(r,t,a),a}class i7 extends d_{acquireContext(t,n){const r=t&&t.getContext&&t.getContext("2d");return r&&r.canvas===t?(YM(t,n),r):null}releaseContext(t){const n=t.canvas;if(!n[jc])return!1;const r=n[jc].initial;["height","width"].forEach(i=>{const o=r[i];Ee(o)?n.removeAttribute(i):n.setAttribute(i,o)});const a=r.style||{};return Object.keys(a).forEach(i=>{n.style[i]=a[i]}),n.width=n.width,delete n[jc],!0}addEventListener(t,n,r){this.removeEventListener(t,n);const a=t.$proxies||(t.$proxies={}),o={attach:ZM,detach:e7,resize:r7}[n]||a7;a[n]=o(t,n,r)}removeEventListener(t,n){const r=t.$proxies||(t.$proxies={}),a=r[n];if(!a)return;({attach:Ff,detach:Ff,resize:Ff}[n]||XM)(t,n,a),r[n]=void 0}getDevicePixelRatio(){return window.devicePixelRatio}getMaximumSize(t,n,r,a){return XO(t,n,r,a)}isAttached(t){const n=ng(t);return!!(n&&n.isConnected)}}function s7(e){return!t_()||typeof OffscreenCanvas<"u"&&e instanceof OffscreenCanvas?GM:i7}var Nc;let An=(Nc=class{constructor(){R(this,"x");R(this,"y");R(this,"active",!1);R(this,"options");R(this,"$animations")}tooltipPosition(t){const{x:n,y:r}=this.getProps(["x","y"],t);return{x:n,y:r}}hasValue(){return ti(this.x)&&ti(this.y)}getProps(t,n){const r=this.$animations;if(!n||!r)return this;const a={};return t.forEach(i=>{a[i]=r[i]&&r[i].active()?r[i]._to:this[i]}),a}},R(Nc,"defaults",{}),R(Nc,"defaultRoutes"),Nc);function o7(e,t){const n=e.options.ticks,r=A7(e),a=Math.min(n.maxTicksLimit||r,r),i=n.major.enabled?c7(t):[],o=i.length,A=i[0],l=i[o-1],c=[];if(o>a)return u7(t,c,i,o/a),c;const u=l7(i,t,a);if(o>0){let d,f;const p=o>1?Math.round((l-A)/(o-1)):null;for(tc(t,c,u,Ee(p)?0:A-p,A),d=0,f=o-1;d<f;d++)tc(t,c,u,i[d],i[d+1]);return tc(t,c,u,l,Ee(p)?t.length:l+p),c}return tc(t,c,u),c}function A7(e){const t=e.options.offset,n=e._tickSize(),r=e._length/n+(t?0:1),a=e._maxLength/n;return Math.floor(Math.min(r,a))}function l7(e,t,n){const r=d7(e),a=t.length/n;if(!r)return Math.max(a,1);const i=tO(r);for(let o=0,A=i.length-1;o<A;o++){const l=i[o];if(l>a)return l}return Math.max(a,1)}function c7(e){const t=[];let n,r;for(n=0,r=e.length;n<r;n++)e[n].major&&t.push(n);return t}function u7(e,t,n,r){let a=0,i=n[0],o;for(r=Math.ceil(r),o=0;o<e.length;o++)o===i&&(t.push(e[o]),a++,i=n[a*r])}function tc(e,t,n,r,a){const i=de(r,0),o=Math.min(de(a,e.length),e.length);let A=0,l,c,u;for(n=Math.ceil(n),a&&(l=a-r,n=l/Math.floor(l/n)),u=i;u<0;)A++,u=Math.round(i+A*n);for(c=Math.max(i,0);c<o;c++)c===u&&(t.push(e[c]),A++,u=Math.round(i+A*n))}function d7(e){const t=e.length;let n,r;if(t<2)return!1;for(r=e[0],n=1;n<t;++n)if(e[n]-e[n-1]!==r)return!1;return r}const f7=e=>e==="left"?"right":e==="right"?"left":e,Z0=(e,t,n)=>t==="top"||t==="left"?e[t]+n:e[t]-n,ey=(e,t)=>Math.min(t||e,e);function ty(e,t){const n=[],r=e.length/t,a=e.length;let i=0;for(;i<a;i+=r)n.push(e[Math.floor(i)]);return n}function p7(e,t,n){const r=e.ticks.length,a=Math.min(t,r-1),i=e._startPixel,o=e._endPixel,A=1e-6;let l=e.getPixelForTick(a),c;if(!(n&&(r===1?c=Math.max(l-i,o-l):t===0?c=(e.getPixelForTick(1)-l)/2:c=(l-e.getPixelForTick(a-1))/2,l+=a<t?c:-c,l<i-A||l>o+A)))return l}function h7(e,t){$e(e,n=>{const r=n.gc,a=r.length/2;let i;if(a>t){for(i=0;i<a;++i)delete n.data[r[i]];r.splice(0,a)}})}function bo(e){return e.drawTicks?e.tickLength:0}function ny(e,t){if(!e.display)return 0;const n=ht(e.font,t),r=St(e.padding);return(Me(e.text)?e.text.length:1)*n.lineHeight+r.height}function m7(e,t){return Ai(e,{scale:t,type:"scale"})}function g7(e,t,n){return Ai(e,{tick:n,index:t,type:"tick"})}function v7(e,t,n){let r=qm(e);return(n&&t!=="right"||!n&&t==="right")&&(r=f7(r)),r}function y7(e,t,n,r){const{top:a,left:i,bottom:o,right:A,chart:l}=e,{chartArea:c,scales:u}=l;let d=0,f,p,h;const g=o-a,B=A-i;if(e.isHorizontal()){if(p=jt(r,i,A),we(n)){const m=Object.keys(n)[0],v=n[m];h=u[m].getPixelForValue(v)+g-t}else n==="center"?h=(c.bottom+c.top)/2+g-t:h=Z0(e,n,t);f=A-i}else{if(we(n)){const m=Object.keys(n)[0],v=n[m];p=u[m].getPixelForValue(v)-B+t}else n==="center"?p=(c.left+c.right)/2-B+t:p=Z0(e,n,t);h=jt(r,o,a),d=n==="left"?-et:et}return{titleX:p,titleY:h,maxWidth:f,rotation:d}}class Xi extends An{constructor(t){super(),this.id=t.id,this.type=t.type,this.options=void 0,this.ctx=t.ctx,this.chart=t.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(t){this.options=t.setContext(this.getContext()),this.axis=t.axis,this._userMin=this.parse(t.min),this._userMax=this.parse(t.max),this._suggestedMin=this.parse(t.suggestedMin),this._suggestedMax=this.parse(t.suggestedMax)}parse(t,n){return t}getUserBounds(){let{_userMin:t,_userMax:n,_suggestedMin:r,_suggestedMax:a}=this;return t=Cn(t,Number.POSITIVE_INFINITY),n=Cn(n,Number.NEGATIVE_INFINITY),r=Cn(r,Number.POSITIVE_INFINITY),a=Cn(a,Number.NEGATIVE_INFINITY),{min:Cn(t,r),max:Cn(n,a),minDefined:ft(t),maxDefined:ft(n)}}getMinMax(t){let{min:n,max:r,minDefined:a,maxDefined:i}=this.getUserBounds(),o;if(a&&i)return{min:n,max:r};const A=this.getMatchingVisibleMetas();for(let l=0,c=A.length;l<c;++l)o=A[l].controller.getMinMax(this,t),a||(n=Math.min(n,o.min)),i||(r=Math.max(r,o.max));return n=i&&n>r?r:n,r=a&&n>r?n:r,{min:Cn(n,Cn(r,n)),max:Cn(r,Cn(n,r))}}getPadding(){return{left:this.paddingLeft||0,top:this.paddingTop||0,right:this.paddingRight||0,bottom:this.paddingBottom||0}}getTicks(){return this.ticks}getLabels(){const t=this.chart.data;return this.options.labels||(this.isHorizontal()?t.xLabels:t.yLabels)||t.labels||[]}getLabelItems(t=this.chart.chartArea){return this._labelItems||(this._labelItems=this._computeLabelItems(t))}beforeLayout(){this._cache={},this._dataLimitsCached=!1}beforeUpdate(){Re(this.options.beforeUpdate,[this])}update(t,n,r){const{beginAtZero:a,grace:i,ticks:o}=this.options,A=o.sampleSize;this.beforeUpdate(),this.maxWidth=t,this.maxHeight=n,this._margins=r=Object.assign({left:0,right:0,top:0,bottom:0},r),this.ticks=null,this._labelSizes=null,this._gridLineItems=null,this._labelItems=null,this.beforeSetDimensions(),this.setDimensions(),this.afterSetDimensions(),this._maxLength=this.isHorizontal()?this.width+r.left+r.right:this.height+r.top+r.bottom,this._dataLimitsCached||(this.beforeDataLimits(),this.determineDataLimits(),this.afterDataLimits(),this._range=FO(this,i,a),this._dataLimitsCached=!0),this.beforeBuildTicks(),this.ticks=this.buildTicks()||[],this.afterBuildTicks();const l=A<this.ticks.length;this._convertTicksToLabels(l?ty(this.ticks,A):this.ticks),this.configure(),this.beforeCalculateLabelRotation(),this.calculateLabelRotation(),this.afterCalculateLabelRotation(),o.display&&(o.autoSkip||o.source==="auto")&&(this.ticks=o7(this,this.ticks),this._labelSizes=null,this.afterAutoSkip()),l&&this._convertTicksToLabels(this.ticks),this.beforeFit(),this.fit(),this.afterFit(),this.afterUpdate()}configure(){let t=this.options.reverse,n,r;this.isHorizontal()?(n=this.left,r=this.right):(n=this.top,r=this.bottom,t=!t),this._startPixel=n,this._endPixel=r,this._reversePixels=t,this._length=r-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(t){this.chart.notifyPlugins(t,this.getContext()),Re(this.options[t],[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(t){const n=this.options.ticks;let r,a,i;for(r=0,a=t.length;r<a;r++)i=t[r],i.label=Re(n.callback,[i.value,r,t],this)}afterTickToLabelConversion(){Re(this.options.afterTickToLabelConversion,[this])}beforeCalculateLabelRotation(){Re(this.options.beforeCalculateLabelRotation,[this])}calculateLabelRotation(){const t=this.options,n=t.ticks,r=ey(this.ticks.length,t.ticks.maxTicksLimit),a=n.minRotation||0,i=n.maxRotation;let o=a,A,l,c;if(!this._isVisible()||!n.display||a>=i||r<=1||!this.isHorizontal()){this.labelRotation=a;return}const u=this._getLabelSizes(),d=u.widest.width,f=u.highest.height,p=Ht(this.chart.width-d,0,this.maxWidth);A=t.offset?this.maxWidth/r:p/(r-1),d+6>A&&(A=p/(r-(t.offset?.5:1)),l=this.maxHeight-bo(t.grid)-n.padding-ny(t.title,this.chart.options.font),c=Math.sqrt(d*d+f*f),o=Ad(Math.min(Math.asin(Ht((u.highest.height+6)/A,-1,1)),Math.asin(Ht(l/c,-1,1))-Math.asin(Ht(f/c,-1,1)))),o=Math.max(a,Math.min(i,o))),this.labelRotation=o}afterCalculateLabelRotation(){Re(this.options.afterCalculateLabelRotation,[this])}afterAutoSkip(){}beforeFit(){Re(this.options.beforeFit,[this])}fit(){const t={width:0,height:0},{chart:n,options:{ticks:r,title:a,grid:i}}=this,o=this._isVisible(),A=this.isHorizontal();if(o){const l=ny(a,n.options.font);if(A?(t.width=this.maxWidth,t.height=bo(i)+l):(t.height=this.maxHeight,t.width=bo(i)+l),r.display&&this.ticks.length){const{first:c,last:u,widest:d,highest:f}=this._getLabelSizes(),p=r.padding*2,h=Ft(this.labelRotation),g=Math.cos(h),B=Math.sin(h);if(A){const m=r.mirror?0:B*d.width+g*f.height;t.height=Math.min(this.maxHeight,t.height+m+p)}else{const m=r.mirror?0:g*d.width+B*f.height;t.width=Math.min(this.maxWidth,t.width+m+p)}this._calculatePadding(c,u,B,g)}}this._handleMargins(),A?(this.width=this._length=n.width-this._margins.left-this._margins.right,this.height=t.height):(this.width=t.width,this.height=this._length=n.height-this._margins.top-this._margins.bottom)}_calculatePadding(t,n,r,a){const{ticks:{align:i,padding:o},position:A}=this.options,l=this.labelRotation!==0,c=A!=="top"&&this.axis==="x";if(this.isHorizontal()){const u=this.getPixelForTick(0)-this.left,d=this.right-this.getPixelForTick(this.ticks.length-1);let f=0,p=0;l?c?(f=a*t.width,p=r*n.height):(f=r*t.height,p=a*n.width):i==="start"?p=n.width:i==="end"?f=t.width:i!=="inner"&&(f=t.width/2,p=n.width/2),this.paddingLeft=Math.max((f-u+o)*this.width/(this.width-u),0),this.paddingRight=Math.max((p-d+o)*this.width/(this.width-d),0)}else{let u=n.height/2,d=t.height/2;i==="start"?(u=0,d=t.height):i==="end"&&(u=n.height,d=0),this.paddingTop=u+o,this.paddingBottom=d+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:t,position:n}=this.options;return n==="top"||n==="bottom"||t==="x"}isFullSize(){return this.options.fullSize}_convertTicksToLabels(t){this.beforeTickToLabelConversion(),this.generateTickLabels(t);let n,r;for(n=0,r=t.length;n<r;n++)Ee(t[n].label)&&(t.splice(n,1),r--,n--);this.afterTickToLabelConversion()}_getLabelSizes(){let t=this._labelSizes;if(!t){const n=this.options.ticks.sampleSize;let r=this.ticks;n<r.length&&(r=ty(r,n)),this._labelSizes=t=this._computeLabelSizes(r,r.length,this.options.ticks.maxTicksLimit)}return t}_computeLabelSizes(t,n,r){const{ctx:a,_longestTextCache:i}=this,o=[],A=[],l=Math.floor(n/ey(n,r));let c=0,u=0,d,f,p,h,g,B,m,v,w,y,b;for(d=0;d<n;d+=l){if(h=t[d].label,g=this._resolveTickFontOptions(d),a.font=B=g.string,m=i[B]=i[B]||{data:{},gc:[]},v=g.lineHeight,w=y=0,!Ee(h)&&!Me(h))w=Bu(a,m.data,m.gc,w,h),y=v;else if(Me(h))for(f=0,p=h.length;f<p;++f)b=h[f],!Ee(b)&&!Me(b)&&(w=Bu(a,m.data,m.gc,w,b),y+=v);o.push(w),A.push(y),c=Math.max(w,c),u=Math.max(y,u)}h7(i,n);const _=o.indexOf(c),C=A.indexOf(u),E=S=>({width:o[S]||0,height:A[S]||0});return{first:E(0),last:E(n-1),widest:E(_),highest:E(C),widths:o,heights:A}}getLabelForValue(t){return t}getPixelForValue(t,n){return NaN}getValueForPixel(t){}getPixelForTick(t){const n=this.ticks;return t<0||t>n.length-1?null:this.getPixelForValue(n[t].value)}getPixelForDecimal(t){this._reversePixels&&(t=1-t);const n=this._startPixel+t*this._length;return aO(this._alignToPixels?di(this.chart,n,0):n)}getDecimalForPixel(t){const n=(t-this._startPixel)/this._length;return this._reversePixels?1-n:n}getBasePixel(){return this.getPixelForValue(this.getBaseValue())}getBaseValue(){const{min:t,max:n}=this;return t<0&&n<0?n:t>0&&n>0?t:0}getContext(t){const n=this.ticks||[];if(t>=0&&t<n.length){const r=n[t];return r.$context||(r.$context=g7(this.getContext(),t,r))}return this.$context||(this.$context=m7(this.chart.getContext(),this))}_tickSize(){const t=this.options.ticks,n=Ft(this.labelRotation),r=Math.abs(Math.cos(n)),a=Math.abs(Math.sin(n)),i=this._getLabelSizes(),o=t.autoSkipPadding||0,A=i?i.widest.width+o:0,l=i?i.highest.height+o:0;return this.isHorizontal()?l*r>A*a?A/r:l/a:l*a<A*r?l/r:A/a}_isVisible(){const t=this.options.display;return t!=="auto"?!!t:this.getMatchingVisibleMetas().length>0}_computeGridLineItems(t){const n=this.axis,r=this.chart,a=this.options,{grid:i,position:o,border:A}=a,l=i.offset,c=this.isHorizontal(),d=this.ticks.length+(l?1:0),f=bo(i),p=[],h=A.setContext(this.getContext()),g=h.display?h.width:0,B=g/2,m=function(Y){return di(r,Y,g)};let v,w,y,b,_,C,E,S,U,T,F,D;if(o==="top")v=m(this.bottom),C=this.bottom-f,S=v-B,T=m(t.top)+B,D=t.bottom;else if(o==="bottom")v=m(this.top),T=t.top,D=m(t.bottom)-B,C=v+B,S=this.top+f;else if(o==="left")v=m(this.right),_=this.right-f,E=v-B,U=m(t.left)+B,F=t.right;else if(o==="right")v=m(this.left),U=t.left,F=m(t.right)-B,_=v+B,E=this.left+f;else if(n==="x"){if(o==="center")v=m((t.top+t.bottom)/2+.5);else if(we(o)){const Y=Object.keys(o)[0],K=o[Y];v=m(this.chart.scales[Y].getPixelForValue(K))}T=t.top,D=t.bottom,C=v+B,S=C+f}else if(n==="y"){if(o==="center")v=m((t.left+t.right)/2);else if(we(o)){const Y=Object.keys(o)[0],K=o[Y];v=m(this.chart.scales[Y].getPixelForValue(K))}_=v-B,E=_-f,U=t.left,F=t.right}const q=de(a.ticks.maxTicksLimit,d),J=Math.max(1,Math.ceil(d/q));for(w=0;w<d;w+=J){const Y=this.getContext(w),K=i.setContext(Y),Ae=A.setContext(Y),z=K.lineWidth,ie=K.color,ce=Ae.dash||[],Be=Ae.dashOffset,xe=K.tickWidth,fe=K.tickColor,re=K.tickBorderDash||[],N=K.tickBorderDashOffset;y=p7(this,w,l),y!==void 0&&(b=di(r,y,z),c?_=E=U=F=b:C=S=T=D=b,p.push({tx1:_,ty1:C,tx2:E,ty2:S,x1:U,y1:T,x2:F,y2:D,width:z,color:ie,borderDash:ce,borderDashOffset:Be,tickWidth:xe,tickColor:fe,tickBorderDash:re,tickBorderDashOffset:N}))}return this._ticksLength=d,this._borderValue=v,p}_computeLabelItems(t){const n=this.axis,r=this.options,{position:a,ticks:i}=r,o=this.isHorizontal(),A=this.ticks,{align:l,crossAlign:c,padding:u,mirror:d}=i,f=bo(r.grid),p=f+u,h=d?-u:p,g=-Ft(this.labelRotation),B=[];let m,v,w,y,b,_,C,E,S,U,T,F,D="middle";if(a==="top")_=this.bottom-h,C=this._getXAxisLabelAlignment();else if(a==="bottom")_=this.top+h,C=this._getXAxisLabelAlignment();else if(a==="left"){const J=this._getYAxisLabelAlignment(f);C=J.textAlign,b=J.x}else if(a==="right"){const J=this._getYAxisLabelAlignment(f);C=J.textAlign,b=J.x}else if(n==="x"){if(a==="center")_=(t.top+t.bottom)/2+p;else if(we(a)){const J=Object.keys(a)[0],Y=a[J];_=this.chart.scales[J].getPixelForValue(Y)+p}C=this._getXAxisLabelAlignment()}else if(n==="y"){if(a==="center")b=(t.left+t.right)/2-p;else if(we(a)){const J=Object.keys(a)[0],Y=a[J];b=this.chart.scales[J].getPixelForValue(Y)}C=this._getYAxisLabelAlignment(f).textAlign}n==="y"&&(l==="start"?D="top":l==="end"&&(D="bottom"));const q=this._getLabelSizes();for(m=0,v=A.length;m<v;++m){w=A[m],y=w.label;const J=i.setContext(this.getContext(m));E=this.getPixelForTick(m)+i.labelOffset,S=this._resolveTickFontOptions(m),U=S.lineHeight,T=Me(y)?y.length:1;const Y=T/2,K=J.color,Ae=J.textStrokeColor,z=J.textStrokeWidth;let ie=C;o?(b=E,C==="inner"&&(m===v-1?ie=this.options.reverse?"left":"right":m===0?ie=this.options.reverse?"right":"left":ie="center"),a==="top"?c==="near"||g!==0?F=-T*U+U/2:c==="center"?F=-q.highest.height/2-Y*U+U:F=-q.highest.height+U/2:c==="near"||g!==0?F=U/2:c==="center"?F=q.highest.height/2-Y*U:F=q.highest.height-T*U,d&&(F*=-1),g!==0&&!J.showLabelBackdrop&&(b+=U/2*Math.sin(g))):(_=E,F=(1-T)*U/2);let ce;if(J.showLabelBackdrop){const Be=St(J.backdropPadding),xe=q.heights[m],fe=q.widths[m];let re=F-Be.top,N=0-Be.left;switch(D){case"middle":re-=xe/2;break;case"bottom":re-=xe;break}switch(C){case"center":N-=fe/2;break;case"right":N-=fe;break}ce={left:N,top:re,width:fe+Be.width,height:xe+Be.height,color:J.backdropColor}}B.push({label:y,font:S,textOffset:F,options:{rotation:g,color:K,strokeColor:Ae,strokeWidth:z,textAlign:ie,textBaseline:D,translation:[b,_],backdrop:ce}})}return B}_getXAxisLabelAlignment(){const{position:t,ticks:n}=this.options;if(-Ft(this.labelRotation))return t==="top"?"left":"right";let a="center";return n.align==="start"?a="left":n.align==="end"?a="right":n.align==="inner"&&(a="inner"),a}_getYAxisLabelAlignment(t){const{position:n,ticks:{crossAlign:r,mirror:a,padding:i}}=this.options,o=this._getLabelSizes(),A=t+i,l=o.widest.width;let c,u;return n==="left"?a?(u=this.right+i,r==="near"?c="left":r==="center"?(c="center",u+=l/2):(c="right",u+=l)):(u=this.right-A,r==="near"?c="right":r==="center"?(c="center",u-=l/2):(c="left",u=this.left)):n==="right"?a?(u=this.left+i,r==="near"?c="right":r==="center"?(c="center",u-=l/2):(c="left",u-=l)):(u=this.left+A,r==="near"?c="left":r==="center"?(c="center",u+=l/2):(c="right",u=this.right)):c="right",{textAlign:c,x:u}}_computeLabelArea(){if(this.options.ticks.mirror)return;const t=this.chart,n=this.options.position;if(n==="left"||n==="right")return{top:0,left:this.left,bottom:t.height,right:this.right};if(n==="top"||n==="bottom")return{top:this.top,left:0,bottom:this.bottom,right:t.width}}drawBackground(){const{ctx:t,options:{backgroundColor:n},left:r,top:a,width:i,height:o}=this;n&&(t.save(),t.fillStyle=n,t.fillRect(r,a,i,o),t.restore())}getLineWidthForValue(t){const n=this.options.grid;if(!this._isVisible()||!n.display)return 0;const a=this.ticks.findIndex(i=>i.value===t);return a>=0?n.setContext(this.getContext(a)).lineWidth:0}drawGrid(t){const n=this.options.grid,r=this.ctx,a=this._gridLineItems||(this._gridLineItems=this._computeGridLineItems(t));let i,o;const A=(l,c,u)=>{!u.width||!u.color||(r.save(),r.lineWidth=u.width,r.strokeStyle=u.color,r.setLineDash(u.borderDash||[]),r.lineDashOffset=u.borderDashOffset,r.beginPath(),r.moveTo(l.x,l.y),r.lineTo(c.x,c.y),r.stroke(),r.restore())};if(n.display)for(i=0,o=a.length;i<o;++i){const l=a[i];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:t,ctx:n,options:{border:r,grid:a}}=this,i=r.setContext(this.getContext()),o=r.display?i.width:0;if(!o)return;const A=a.setContext(this.getContext(0)).lineWidth,l=this._borderValue;let c,u,d,f;this.isHorizontal()?(c=di(t,this.left,o)-o/2,u=di(t,this.right,A)+A/2,d=f=l):(d=di(t,this.top,o)-o/2,f=di(t,this.bottom,A)+A/2,c=u=l),n.save(),n.lineWidth=i.width,n.strokeStyle=i.color,n.beginPath(),n.moveTo(c,d),n.lineTo(u,f),n.stroke(),n.restore()}drawLabels(t){if(!this.options.ticks.display)return;const r=this.ctx,a=this._computeLabelArea();a&&dl(r,a);const i=this.getLabelItems(t);for(const o of i){const A=o.options,l=o.font,c=o.label,u=o.textOffset;$i(r,c,0,u,l,A)}a&&fl(r)}drawTitle(){const{ctx:t,options:{position:n,title:r,reverse:a}}=this;if(!r.display)return;const i=ht(r.font),o=St(r.padding),A=r.align;let l=i.lineHeight/2;n==="bottom"||n==="center"||we(n)?(l+=o.bottom,Me(r.text)&&(l+=i.lineHeight*(r.text.length-1))):l+=o.top;const{titleX:c,titleY:u,maxWidth:d,rotation:f}=y7(this,l,n,A);$i(t,r.text,0,0,i,{color:r.color,maxWidth:d,rotation:f,textAlign:v7(A,n,a),textBaseline:"middle",translation:[c,u]})}draw(t){this._isVisible()&&(this.drawBackground(),this.drawGrid(t),this.drawBorder(),this.drawTitle(),this.drawLabels(t))}_layers(){const t=this.options,n=t.ticks&&t.ticks.z||0,r=de(t.grid&&t.grid.z,-1),a=de(t.border&&t.border.z,0);return!this._isVisible()||this.draw!==Xi.prototype.draw?[{z:n,draw:i=>{this.draw(i)}}]:[{z:r,draw:i=>{this.drawBackground(),this.drawGrid(i),this.drawTitle()}},{z:a,draw:()=>{this.drawBorder()}},{z:n,draw:i=>{this.drawLabels(i)}}]}getMatchingVisibleMetas(t){const n=this.chart.getSortedVisibleDatasetMetas(),r=this.axis+"AxisID",a=[];let i,o;for(i=0,o=n.length;i<o;++i){const A=n[i];A[r]===this.id&&(!t||A.type===t)&&a.push(A)}return a}_resolveTickFontOptions(t){const n=this.options.ticks.setContext(this.getContext(t));return ht(n.font)}_maxDigits(){const t=this._resolveTickFontOptions(0).lineHeight;return(this.isHorizontal()?this.width:this.height)/t}}class nc{constructor(t,n,r){this.type=t,this.scope=n,this.override=r,this.items=Object.create(null)}isForType(t){return Object.prototype.isPrototypeOf.call(this.type.prototype,t.prototype)}register(t){const n=Object.getPrototypeOf(t);let r;b7(n)&&(r=this.register(n));const a=this.items,i=t.id,o=this.scope+"."+i;if(!i)throw new Error("class does not have id: "+t);return i in a||(a[i]=t,B7(t,o,r),this.override&&pt.override(t.id,t.overrides)),o}get(t){return this.items[t]}unregister(t){const n=this.items,r=t.id,a=this.scope;r in n&&delete n[r],a&&r in pt[a]&&(delete pt[a][r],this.override&&delete Vi[r])}}function B7(e,t,n){const r=Sr(Object.create(null),[n?pt.get(n):{},pt.get(t),e.defaults]);pt.set(t,r),e.defaultRoutes&&w7(t,e.defaultRoutes),e.descriptors&&pt.describe(t,e.descriptors)}function w7(e,t){Object.keys(t).forEach(n=>{const r=n.split("."),a=r.pop(),i=[e].concat(r).join("."),o=t[n].split("."),A=o.pop(),l=o.join(".");pt.route(i,a,l,A)})}function b7(e){return"id"in e&&"defaults"in e}class _7{constructor(){this.controllers=new nc(ir,"datasets",!0),this.elements=new nc(An,"elements"),this.plugins=new nc(Object,"plugins"),this.scales=new nc(Xi,"scales"),this._typedRegistries=[this.controllers,this.scales,this.elements]}add(...t){this._each("register",t)}remove(...t){this._each("unregister",t)}addControllers(...t){this._each("register",t,this.controllers)}addElements(...t){this._each("register",t,this.elements)}addPlugins(...t){this._each("register",t,this.plugins)}addScales(...t){this._each("register",t,this.scales)}getController(t){return this._get(t,this.controllers,"controller")}getElement(t){return this._get(t,this.elements,"element")}getPlugin(t){return this._get(t,this.plugins,"plugin")}getScale(t){return this._get(t,this.scales,"scale")}removeControllers(...t){this._each("unregister",t,this.controllers)}removeElements(...t){this._each("unregister",t,this.elements)}removePlugins(...t){this._each("unregister",t,this.plugins)}removeScales(...t){this._each("unregister",t,this.scales)}_each(t,n,r){[...n].forEach(a=>{const i=r||this._getRegistryForType(a);r||i.isForType(a)||i===this.plugins&&a.id?this._exec(t,i,a):$e(a,o=>{const A=r||this._getRegistryForType(o);this._exec(t,A,o)})})}_exec(t,n,r){const a=Gm(t);Re(r["before"+a],[],r),n[t](r),Re(r["after"+a],[],r)}_getRegistryForType(t){for(let n=0;n<this._typedRegistries.length;n++){const r=this._typedRegistries[n];if(r.isForType(t))return r}return this.plugins}_get(t,n,r){const a=n.get(t);if(a===void 0)throw new Error('"'+t+'" is not a registered '+r+".");return a}}var mr=new _7;class C7{constructor(){this._init=[]}notify(t,n,r,a){n==="beforeInit"&&(this._init=this._createDescriptors(t,!0),this._notify(this._init,t,"install"));const i=a?this._descriptors(t).filter(a):this._descriptors(t),o=this._notify(i,t,n,r);return n==="afterDestroy"&&(this._notify(i,t,"stop"),this._notify(this._init,t,"uninstall")),o}_notify(t,n,r,a){a=a||{};for(const i of t){const o=i.plugin,A=o[r],l=[n,a,i.options];if(Re(A,l,o)===!1&&a.cancelable)return!1}return!0}invalidate(){Ee(this._cache)||(this._oldCache=this._cache,this._cache=void 0)}_descriptors(t){if(this._cache)return this._cache;const n=this._cache=this._createDescriptors(t);return this._notifyStateChanges(t),n}_createDescriptors(t,n){const r=t&&t.config,a=de(r.options&&r.options.plugins,{}),i=k7(r);return a===!1&&!n?[]:S7(t,i,a,n)}_notifyStateChanges(t){const n=this._oldCache||[],r=this._cache,a=(i,o)=>i.filter(A=>!o.some(l=>A.plugin.id===l.plugin.id));this._notify(a(n,r),t,"stop"),this._notify(a(r,n),t,"start")}}function k7(e){const t={},n=[],r=Object.keys(mr.plugins.items);for(let i=0;i<r.length;i++)n.push(mr.getPlugin(r[i]));const a=e.plugins||[];for(let i=0;i<a.length;i++){const o=a[i];n.indexOf(o)===-1&&(n.push(o),t[o.id]=!0)}return{plugins:n,localIds:t}}function E7(e,t){return!t&&e===!1?null:e===!0?{}:e}function S7(e,{plugins:t,localIds:n},r,a){const i=[],o=e.getContext();for(const A of t){const l=A.id,c=E7(r[l],a);c!==null&&i.push({plugin:A,options:x7(e.config,{plugin:A,local:n[l]},c,o)})}return i}function x7(e,{plugin:t,local:n},r,a){const i=e.pluginScopeKeys(t),o=e.getOptionScopes(r,i);return n&&t.defaults&&o.push(t.defaults),e.createResolver(o,a,[""],{scriptable:!1,indexable:!1,allKeys:!0})}function Gp(e,t){const n=pt.datasets[e]||{};return((t.datasets||{})[e]||{}).indexAxis||t.indexAxis||n.indexAxis||"x"}function F7(e,t){let n=e;return e==="_index_"?n=t:e==="_value_"&&(n=t==="x"?"y":"x"),n}function I7(e,t){return e===t?"_index_":"_value_"}function ry(e){if(e==="x"||e==="y"||e==="r")return e}function T7(e){if(e==="top"||e==="bottom")return"x";if(e==="left"||e==="right")return"y"}function jp(e,...t){if(ry(e))return e;for(const n of t){const r=n.axis||T7(n.position)||e.length>1&&ry(e[0].toLowerCase());if(r)return r}throw new Error(`Cannot determine type of '${e}' axis. Please provide 'axis' or 'position' option.`)}function ay(e,t,n){if(n[t+"AxisID"]===e)return{axis:t}}function D7(e,t){if(t.data&&t.data.datasets){const n=t.data.datasets.filter(r=>r.xAxisID===e||r.yAxisID===e);if(n.length)return ay(e,"x",n[0])||ay(e,"y",n[0])}return{}}function U7(e,t){const n=Vi[e.type]||{scales:{}},r=t.scales||{},a=Gp(e.type,t),i=Object.create(null);return Object.keys(r).forEach(o=>{const A=r[o];if(!we(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=jp(o,A,D7(o,e),pt.scales[A.type]),c=I7(l,a),u=n.scales||{};i[o]=eA(Object.create(null),[{axis:l},A,u[l],u[c]])}),e.data.datasets.forEach(o=>{const A=o.type||e.type,l=o.indexAxis||Gp(A,t),u=(Vi[A]||{}).scales||{};Object.keys(u).forEach(d=>{const f=F7(d,l),p=o[f+"AxisID"]||f;i[p]=i[p]||Object.create(null),eA(i[p],[{axis:f},r[p],u[d]])})}),Object.keys(i).forEach(o=>{const A=i[o];eA(A,[pt.scales[A.type],pt.scale])}),i}function h_(e){const t=e.options||(e.options={});t.plugins=de(t.plugins,{}),t.scales=U7(e,t)}function m_(e){return e=e||{},e.datasets=e.datasets||[],e.labels=e.labels||[],e}function Q7(e){return e=e||{},e.data=m_(e.data),h_(e),e}const iy=new Map,g_=new Set;function rc(e,t){let n=iy.get(e);return n||(n=t(),iy.set(e,n),g_.add(n)),n}const _o=(e,t,n)=>{const r=ei(t,n);r!==void 0&&e.add(r)};class L7{constructor(t){this._config=Q7(t),this._scopeCache=new Map,this._resolverCache=new Map}get platform(){return this._config.platform}get type(){return this._config.type}set type(t){this._config.type=t}get data(){return this._config.data}set data(t){this._config.data=m_(t)}get options(){return this._config.options}set options(t){this._config.options=t}get plugins(){return this._config.plugins}update(){const t=this._config;this.clearCache(),h_(t)}clearCache(){this._scopeCache.clear(),this._resolverCache.clear()}datasetScopeKeys(t){return rc(t,()=>[[`datasets.${t}`,""]])}datasetAnimationScopeKeys(t,n){return rc(`${t}.transition.${n}`,()=>[[`datasets.${t}.transitions.${n}`,`transitions.${n}`],[`datasets.${t}`,""]])}datasetElementScopeKeys(t,n){return rc(`${t}-${n}`,()=>[[`datasets.${t}.elements.${n}`,`datasets.${t}`,`elements.${n}`,""]])}pluginScopeKeys(t){const n=t.id,r=this.type;return rc(`${r}-plugin-${n}`,()=>[[`plugins.${n}`,...t.additionalOptionScopes||[]]])}_cachedScopes(t,n){const r=this._scopeCache;let a=r.get(t);return(!a||n)&&(a=new Map,r.set(t,a)),a}getOptionScopes(t,n,r){const{options:a,type:i}=this,o=this._cachedScopes(t,r),A=o.get(n);if(A)return A;const l=new Set;n.forEach(u=>{t&&(l.add(t),u.forEach(d=>_o(l,t,d))),u.forEach(d=>_o(l,a,d)),u.forEach(d=>_o(l,Vi[i]||{},d)),u.forEach(d=>_o(l,pt,d)),u.forEach(d=>_o(l,Kp,d))});const c=Array.from(l);return c.length===0&&c.push(Object.create(null)),g_.has(n)&&o.set(n,c),c}chartOptionScopes(){const{options:t,type:n}=this;return[t,Vi[n]||{},pt.datasets[n]||{},{type:n},pt,Kp]}resolveNamedOptions(t,n,r,a=[""]){const i={$shared:!0},{resolver:o,subPrefixes:A}=sy(this._resolverCache,t,a);let l=o;if(M7(o,n)){i.$shared=!1,r=Bn(r)?r():r;const c=this.createResolver(t,r,A);l=js(o,r,c)}for(const c of n)i[c]=l[c];return i}createResolver(t,n,r=[""],a){const{resolver:i}=sy(this._resolverCache,t,r);return we(n)?js(i,n,void 0,a):i}}function sy(e,t,n){let r=e.get(t);r||(r=new Map,e.set(t,r));const a=n.join();let i=r.get(a);return i||(i={resolver:Zm(t,n),subPrefixes:n.filter(A=>!A.toLowerCase().includes("hover"))},r.set(a,i)),i}const O7=e=>we(e)&&Object.getOwnPropertyNames(e).reduce((t,n)=>t||Bn(e[n]),!1);function M7(e,t){const{isScriptable:n,isIndexable:r}=Yb(e);for(const a of t){const i=n(a),o=r(a),A=(o||i)&&e[a];if(i&&(Bn(A)||O7(A))||o&&Me(A))return!0}return!1}var N7="4.3.0";const P7=["top","bottom","left","right","chartArea"];function oy(e,t){return e==="top"||e==="bottom"||P7.indexOf(e)===-1&&t==="x"}function Ay(e,t){return function(n,r){return n[e]===r[e]?n[t]-r[t]:n[e]-r[e]}}function ly(e){const t=e.chart,n=t.options.animation;t.notifyPlugins("afterRender"),Re(n&&n.onComplete,[e],t)}function H7(e){const t=e.chart,n=t.options.animation;Re(n&&n.onProgress,[e],t)}function v_(e){return t_()&&typeof e=="string"?e=document.getElementById(e):e&&e.length&&(e=e[0]),e&&e.canvas&&(e=e.canvas),e}const Yc={},cy=e=>{const t=v_(e);return Object.values(Yc).filter(n=>n.canvas===t).pop()};function R7(e,t,n){const r=Object.keys(e);for(const a of r){const i=+a;if(i>=t){const o=e[a];delete e[a],(n>0||i>t)&&(e[i+n]=o)}}}function V7(e,t,n,r){return!n||e.type==="mouseout"?null:r?t:e}function $7(e){const{xScale:t,yScale:n}=e;if(t&&n)return{left:t.left,right:t.right,top:n.top,bottom:n.bottom}}class Oe{static register(...t){mr.add(...t),uy()}static unregister(...t){mr.remove(...t),uy()}constructor(t,n){const r=this.config=new L7(n),a=v_(t),i=cy(a);if(i)throw new Error("Canvas is already in use. Chart with ID '"+i.id+"' must be destroyed before the canvas with ID '"+i.canvas.id+"' can be reused.");const o=r.createResolver(r.chartOptionScopes(),this.getContext());this.platform=new(r.platform||s7(a)),this.platform.updateConfig(r);const A=this.platform.acquireContext(a,o.aspectRatio),l=A&&A.canvas,c=l&&l.height,u=l&&l.width;if(this.id=GL(),this.ctx=A,this.canvas=l,this.width=u,this.height=c,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 C7,this.$proxies={},this._hiddenIndices={},this.attached=!1,this._animationsDisabled=void 0,this.$context=void 0,this._doResize=AO(d=>this.update(d),o.resizeDelay||0),this._dataChanges=[],Yc[this.id]=this,!A||!l){console.error("Failed to create chart: can't acquire context from the given item");return}Kr.listen(this,"complete",ly),Kr.listen(this,"progress",H7),this._initialize(),this.attached&&this.update()}get aspectRatio(){const{options:{aspectRatio:t,maintainAspectRatio:n},width:r,height:a,_aspectRatio:i}=this;return Ee(t)?n&&i?i:a?r/a:null:t}get data(){return this.config.data}set data(t){this.config.data=t}get options(){return this._options}set options(t){this.config.options=t}get registry(){return mr}_initialize(){return this.notifyPlugins("beforeInit"),this.options.responsive?this.resize():D0(this,this.options.devicePixelRatio),this.bindEvents(),this.notifyPlugins("afterInit"),this}clear(){return F0(this.canvas,this.ctx),this}stop(){return Kr.stop(this),this}resize(t,n){Kr.running(this)?this._resizeBeforeDraw={width:t,height:n}:this._resize(t,n)}_resize(t,n){const r=this.options,a=this.canvas,i=r.maintainAspectRatio&&this.aspectRatio,o=this.platform.getMaximumSize(a,t,n,i),A=r.devicePixelRatio||this.platform.getDevicePixelRatio(),l=this.width?"resize":"attach";this.width=o.width,this.height=o.height,this._aspectRatio=this.aspectRatio,D0(this,A,!0)&&(this.notifyPlugins("resize",{size:o}),Re(r.onResize,[this,o],this),this.attached&&this._doResize(l)&&this.render())}ensureScalesHaveIDs(){const n=this.options.scales||{};$e(n,(r,a)=>{r.id=a})}buildOrUpdateScales(){const t=this.options,n=t.scales,r=this.scales,a=Object.keys(r).reduce((o,A)=>(o[A]=!1,o),{});let i=[];n&&(i=i.concat(Object.keys(n).map(o=>{const A=n[o],l=jp(o,A),c=l==="r",u=l==="x";return{options:A,dposition:c?"chartArea":u?"bottom":"left",dtype:c?"radialLinear":u?"category":"linear"}}))),$e(i,o=>{const A=o.options,l=A.id,c=jp(l,A),u=de(A.type,o.dtype);(A.position===void 0||oy(A.position,c)!==oy(o.dposition))&&(A.position=o.dposition),a[l]=!0;let d=null;if(l in r&&r[l].type===u)d=r[l];else{const f=mr.getScale(u);d=new f({id:l,type:u,ctx:this.ctx,chart:this}),r[d.id]=d}d.init(A,t)}),$e(a,(o,A)=>{o||delete r[A]}),$e(r,o=>{Xt.configure(this,o,o.options),Xt.addBox(this,o)})}_updateMetasets(){const t=this._metasets,n=this.data.datasets.length,r=t.length;if(t.sort((a,i)=>a.index-i.index),r>n){for(let a=n;a<r;++a)this._destroyDatasetMeta(a);t.splice(n,r-n)}this._sortedMetasets=t.slice(0).sort(Ay("order","index"))}_removeUnreferencedMetasets(){const{_metasets:t,data:{datasets:n}}=this;t.length>n.length&&delete this._stacks,t.forEach((r,a)=>{n.filter(i=>i===r._dataset).length===0&&this._destroyDatasetMeta(a)})}buildOrUpdateControllers(){const t=[],n=this.data.datasets;let r,a;for(this._removeUnreferencedMetasets(),r=0,a=n.length;r<a;r++){const i=n[r];let o=this.getDatasetMeta(r);const A=i.type||this.config.type;if(o.type&&o.type!==A&&(this._destroyDatasetMeta(r),o=this.getDatasetMeta(r)),o.type=A,o.indexAxis=i.indexAxis||Gp(A,this.options),o.order=i.order||0,o.index=r,o.label=""+i.label,o.visible=this.isDatasetVisible(r),o.controller)o.controller.updateIndex(r),o.controller.linkScales();else{const l=mr.getController(A),{datasetElementType:c,dataElementType:u}=pt.datasets[A];Object.assign(l,{dataElementType:mr.getElement(u),datasetElementType:c&&mr.getElement(c)}),o.controller=new l(this,r),t.push(o.controller)}}return this._updateMetasets(),t}_resetElements(){$e(this.data.datasets,(t,n)=>{this.getDatasetMeta(n).controller.reset()},this)}reset(){this._resetElements(),this.notifyPlugins("reset")}update(t){const n=this.config;n.update();const r=this._options=n.createResolver(n.chartOptionScopes(),this.getContext()),a=this._animationsDisabled=!r.animation;if(this._updateScales(),this._checkEventBindings(),this._updateHiddenIndices(),this._plugins.invalidate(),this.notifyPlugins("beforeUpdate",{mode:t,cancelable:!0})===!1)return;const i=this.buildOrUpdateControllers();this.notifyPlugins("beforeElementsUpdate");let o=0;for(let c=0,u=this.data.datasets.length;c<u;c++){const{controller:d}=this.getDatasetMeta(c),f=!a&&i.indexOf(d)===-1;d.buildOrUpdateElements(f),o=Math.max(+d.getMaxOverflow(),o)}o=this._minPadding=r.layout.autoPadding?o:0,this._updateLayout(o),a||$e(i,c=>{c.reset()}),this._updateDatasets(t),this.notifyPlugins("afterUpdate",{mode:t}),this._layers.sort(Ay("z","_idx"));const{_active:A,_lastEvent:l}=this;l?this._eventHandler(l,!0):A.length&&this._updateHoverStyles(A,A,!0),this.render()}_updateScales(){$e(this.scales,t=>{Xt.removeBox(this,t)}),this.ensureScalesHaveIDs(),this.buildOrUpdateScales()}_checkEventBindings(){const t=this.options,n=new Set(Object.keys(this._listeners)),r=new Set(t.events);(!w0(n,r)||!!this._responsiveListeners!==t.responsive)&&(this.unbindEvents(),this.bindEvents())}_updateHiddenIndices(){const{_hiddenIndices:t}=this,n=this._getUniformDataChanges()||[];for(const{method:r,start:a,count:i}of n){const o=r==="_removeElements"?-i:i;R7(t,a,o)}}_getUniformDataChanges(){const t=this._dataChanges;if(!t||!t.length)return;this._dataChanges=[];const n=this.data.datasets.length,r=i=>new Set(t.filter(o=>o[0]===i).map((o,A)=>A+","+o.splice(1).join(","))),a=r(0);for(let i=1;i<n;i++)if(!w0(a,r(i)))return;return Array.from(a).map(i=>i.split(",")).map(i=>({method:i[1],start:+i[2],count:+i[3]}))}_updateLayout(t){if(this.notifyPlugins("beforeLayout",{cancelable:!0})===!1)return;Xt.update(this,this.width,this.height,t);const n=this.chartArea,r=n.width<=0||n.height<=0;this._layers=[],$e(this.boxes,a=>{r&&a.position==="chartArea"||(a.configure&&a.configure(),this._layers.push(...a._layers()))},this),this._layers.forEach((a,i)=>{a._idx=i}),this.notifyPlugins("afterLayout")}_updateDatasets(t){if(this.notifyPlugins("beforeDatasetsUpdate",{mode:t,cancelable:!0})!==!1){for(let n=0,r=this.data.datasets.length;n<r;++n)this.getDatasetMeta(n).controller.configure();for(let n=0,r=this.data.datasets.length;n<r;++n)this._updateDataset(n,Bn(t)?t({datasetIndex:n}):t);this.notifyPlugins("afterDatasetsUpdate",{mode:t})}}_updateDataset(t,n){const r=this.getDatasetMeta(t),a={meta:r,index:t,mode:n,cancelable:!0};this.notifyPlugins("beforeDatasetUpdate",a)!==!1&&(r.controller._update(n),a.cancelable=!1,this.notifyPlugins("afterDatasetUpdate",a))}render(){this.notifyPlugins("beforeRender",{cancelable:!0})!==!1&&(Kr.has(this)?this.attached&&!Kr.running(this)&&Kr.start(this):(this.draw(),ly({chart:this})))}draw(){let t;if(this._resizeBeforeDraw){const{width:r,height:a}=this._resizeBeforeDraw;this._resize(r,a),this._resizeBeforeDraw=null}if(this.clear(),this.width<=0||this.height<=0||this.notifyPlugins("beforeDraw",{cancelable:!0})===!1)return;const n=this._layers;for(t=0;t<n.length&&n[t].z<=0;++t)n[t].draw(this.chartArea);for(this._drawDatasets();t<n.length;++t)n[t].draw(this.chartArea);this.notifyPlugins("afterDraw")}_getSortedDatasetMetas(t){const n=this._sortedMetasets,r=[];let a,i;for(a=0,i=n.length;a<i;++a){const o=n[a];(!t||o.visible)&&r.push(o)}return r}getSortedVisibleDatasetMetas(){return this._getSortedDatasetMetas(!0)}_drawDatasets(){if(this.notifyPlugins("beforeDatasetsDraw",{cancelable:!0})===!1)return;const t=this.getSortedVisibleDatasetMetas();for(let n=t.length-1;n>=0;--n)this._drawDataset(t[n]);this.notifyPlugins("afterDatasetsDraw")}_drawDataset(t){const n=this.ctx,r=t._clip,a=!r.disabled,i=$7(t)||this.chartArea,o={meta:t,index:t.index,cancelable:!0};this.notifyPlugins("beforeDatasetDraw",o)!==!1&&(a&&dl(n,{left:r.left===!1?0:i.left-r.left,right:r.right===!1?this.width:i.right+r.right,top:r.top===!1?0:i.top-r.top,bottom:r.bottom===!1?this.height:i.bottom+r.bottom}),t.controller.draw(),a&&fl(n),o.cancelable=!1,this.notifyPlugins("afterDatasetDraw",o))}isPointInArea(t){return Jr(t,this.chartArea,this._minPadding)}getElementsAtEventForMode(t,n,r,a){const i=PM.modes[n];return typeof i=="function"?i(this,t,r,a):[]}getDatasetMeta(t){const n=this.data.datasets[t],r=this._metasets;let a=r.filter(i=>i&&i._dataset===n).pop();return a||(a={type:null,data:[],dataset:null,controller:null,hidden:null,xAxisID:null,yAxisID:null,order:n&&n.order||0,index:t,_dataset:n,_parsed:[],_sorted:!1},r.push(a)),a}getContext(){return this.$context||(this.$context=Ai(null,{chart:this,type:"chart"}))}getVisibleDatasetCount(){return this.getSortedVisibleDatasetMetas().length}isDatasetVisible(t){const n=this.data.datasets[t];if(!n)return!1;const r=this.getDatasetMeta(t);return typeof r.hidden=="boolean"?!r.hidden:!n.hidden}setDatasetVisibility(t,n){const r=this.getDatasetMeta(t);r.hidden=!n}toggleDataVisibility(t){this._hiddenIndices[t]=!this._hiddenIndices[t]}getDataVisibility(t){return!this._hiddenIndices[t]}_updateVisibility(t,n,r){const a=r?"show":"hide",i=this.getDatasetMeta(t),o=i.controller._resolveAnimations(void 0,a);wn(n)?(i.data[n].hidden=!r,this.update()):(this.setDatasetVisibility(t,r),o.update(i,{visible:r}),this.update(A=>A.datasetIndex===t?a:void 0))}hide(t,n){this._updateVisibility(t,n,!1)}show(t,n){this._updateVisibility(t,n,!0)}_destroyDatasetMeta(t){const n=this._metasets[t];n&&n.controller&&n.controller._destroy(),delete this._metasets[t]}_stop(){let t,n;for(this.stop(),Kr.remove(this),t=0,n=this.data.datasets.length;t<n;++t)this._destroyDatasetMeta(t)}destroy(){this.notifyPlugins("beforeDestroy");const{canvas:t,ctx:n}=this;this._stop(),this.config.clearCache(),t&&(this.unbindEvents(),F0(t,n),this.platform.releaseContext(n),this.canvas=null,this.ctx=null),delete Yc[this.id],this.notifyPlugins("afterDestroy")}toBase64Image(...t){return this.canvas.toDataURL(...t)}bindEvents(){this.bindUserEvents(),this.options.responsive?this.bindResponsiveEvents():this.attached=!0}bindUserEvents(){const t=this._listeners,n=this.platform,r=(i,o)=>{n.addEventListener(this,i,o),t[i]=o},a=(i,o,A)=>{i.offsetX=o,i.offsetY=A,this._eventHandler(i)};$e(this.options.events,i=>r(i,a))}bindResponsiveEvents(){this._responsiveListeners||(this._responsiveListeners={});const t=this._responsiveListeners,n=this.platform,r=(l,c)=>{n.addEventListener(this,l,c),t[l]=c},a=(l,c)=>{t[l]&&(n.removeEventListener(this,l,c),delete t[l])},i=(l,c)=>{this.canvas&&this.resize(l,c)};let o;const A=()=>{a("attach",A),this.attached=!0,this.resize(),r("resize",i),r("detach",o)};o=()=>{this.attached=!1,a("resize",i),this._stop(),this._resize(0,0),r("attach",A)},n.isAttached(this.canvas)?A():o()}unbindEvents(){$e(this._listeners,(t,n)=>{this.platform.removeEventListener(this,n,t)}),this._listeners={},$e(this._responsiveListeners,(t,n)=>{this.platform.removeEventListener(this,n,t)}),this._responsiveListeners=void 0}updateHoverStyle(t,n,r){const a=r?"set":"remove";let i,o,A,l;for(n==="dataset"&&(i=this.getDatasetMeta(t[0].datasetIndex),i.controller["_"+a+"DatasetHoverStyle"]()),A=0,l=t.length;A<l;++A){o=t[A];const c=o&&this.getDatasetMeta(o.datasetIndex).controller;c&&c[a+"HoverStyle"](o.element,o.datasetIndex,o.index)}}getActiveElements(){return this._active||[]}setActiveElements(t){const n=this._active||[],r=t.map(({datasetIndex:i,index:o})=>{const A=this.getDatasetMeta(i);if(!A)throw new Error("No dataset found at index "+i);return{datasetIndex:i,element:A.data[o],index:o}});!mu(r,n)&&(this._active=r,this._lastEvent=null,this._updateHoverStyles(r,n))}notifyPlugins(t,n,r){return this._plugins.notify(this,t,n,r)}isPluginEnabled(t){return this._plugins._cache.filter(n=>n.plugin.id===t).length===1}_updateHoverStyles(t,n,r){const a=this.options.hover,i=(l,c)=>l.filter(u=>!c.some(d=>u.datasetIndex===d.datasetIndex&&u.index===d.index)),o=i(n,t),A=r?t:i(t,n);o.length&&this.updateHoverStyle(o,a.mode,!1),A.length&&a.mode&&this.updateHoverStyle(A,a.mode,!0)}_eventHandler(t,n){const r={event:t,replay:n,cancelable:!0,inChartArea:this.isPointInArea(t)},a=o=>(o.options.events||this.options.events).includes(t.native.type);if(this.notifyPlugins("beforeEvent",r,a)===!1)return;const i=this._handleEvent(t,n,r.inChartArea);return r.cancelable=!1,this.notifyPlugins("afterEvent",r,a),(i||r.changed)&&this.render(),this}_handleEvent(t,n,r){const{_active:a=[],options:i}=this,o=n,A=this._getActiveElements(t,a,r,o),l=ZL(t),c=V7(t,this._lastEvent,r,l);r&&(this._lastEvent=null,Re(i.onHover,[t,A,this],this),l&&Re(i.onClick,[t,A,this],this));const u=!mu(A,a);return(u||n)&&(this._active=A,this._updateHoverStyles(A,a,n)),this._lastEvent=c,u}_getActiveElements(t,n,r,a){if(t.type==="mouseout")return[];if(!r)return n;const i=this.options.hover;return this.getElementsAtEventForMode(t,i.mode,i,a)}}R(Oe,"defaults",pt),R(Oe,"instances",Yc),R(Oe,"overrides",Vi),R(Oe,"registry",mr),R(Oe,"version",N7),R(Oe,"getChart",cy);function uy(){return $e(Oe.instances,e=>e._plugins.invalidate())}function K7(e,t,n){const{startAngle:r,pixelMargin:a,x:i,y:o,outerRadius:A,innerRadius:l}=t;let c=a/A;e.beginPath(),e.arc(i,o,A,r-c,n+c),l>a?(c=a/l,e.arc(i,o,l,n+c,r-c,!0)):e.arc(i,o,a,n+et,r-et),e.closePath(),e.clip()}function z7(e){return Jm(e,["outerStart","outerEnd","innerStart","innerEnd"])}function W7(e,t,n,r){const a=z7(e.options.borderRadius),i=(n-t)/2,o=Math.min(i,r*t/2),A=l=>{const c=(n-Math.min(i,l))*r/2;return Ht(l,0,Math.min(i,c))};return{outerStart:A(a.outerStart),outerEnd:A(a.outerEnd),innerStart:Ht(a.innerStart,0,o),innerEnd:Ht(a.innerEnd,0,o)}}function cs(e,t,n,r){return{x:n+e*Math.cos(t),y:r+e*Math.sin(t)}}function _u(e,t,n,r,a,i){const{x:o,y:A,startAngle:l,pixelMargin:c,innerRadius:u}=t,d=Math.max(t.outerRadius+r+n-c,0),f=u>0?u+r+n+c:0;let p=0;const h=a-l;if(r){const J=u>0?u-r:0,Y=d>0?d-r:0,K=(J+Y)/2,Ae=K!==0?h*K/(K+r):h;p=(h-Ae)/2}const g=Math.max(.001,h*d-n/Qe)/d,B=(h-g)/2,m=l+B+p,v=a-B-p,{outerStart:w,outerEnd:y,innerStart:b,innerEnd:_}=W7(t,f,d,v-m),C=d-w,E=d-y,S=m+w/C,U=v-y/E,T=f+b,F=f+_,D=m+b/T,q=v-_/F;if(e.beginPath(),i){const J=(S+U)/2;if(e.arc(o,A,d,S,J),e.arc(o,A,d,J,U),y>0){const z=cs(E,U,o,A);e.arc(z.x,z.y,y,U,v+et)}const Y=cs(F,v,o,A);if(e.lineTo(Y.x,Y.y),_>0){const z=cs(F,q,o,A);e.arc(z.x,z.y,_,v+et,q+Math.PI)}const K=(v-_/f+(m+b/f))/2;if(e.arc(o,A,f,v-_/f,K,!0),e.arc(o,A,f,K,m+b/f,!0),b>0){const z=cs(T,D,o,A);e.arc(z.x,z.y,b,D+Math.PI,m-et)}const Ae=cs(C,m,o,A);if(e.lineTo(Ae.x,Ae.y),w>0){const z=cs(C,S,o,A);e.arc(z.x,z.y,w,m-et,S)}}else{e.moveTo(o,A);const J=Math.cos(S)*d+o,Y=Math.sin(S)*d+A;e.lineTo(J,Y);const K=Math.cos(U)*d+o,Ae=Math.sin(U)*d+A;e.lineTo(K,Ae)}e.closePath()}function G7(e,t,n,r,a){const{fullCircles:i,startAngle:o,circumference:A}=t;let l=t.endAngle;if(i){_u(e,t,n,r,l,a);for(let c=0;c<i;++c)e.fill();isNaN(A)||(l=o+(A%Ze||Ze))}return _u(e,t,n,r,l,a),e.fill(),l}function j7(e,t,n,r,a){const{fullCircles:i,startAngle:o,circumference:A,options:l}=t,{borderWidth:c,borderJoinStyle:u,borderDash:d,borderDashOffset:f}=l,p=l.borderAlign==="inner";if(!c)return;e.setLineDash(d||[]),e.lineDashOffset=f,p?(e.lineWidth=c*2,e.lineJoin=u||"round"):(e.lineWidth=c,e.lineJoin=u||"bevel");let h=t.endAngle;if(i){_u(e,t,n,r,h,a);for(let g=0;g<i;++g)e.stroke();isNaN(A)||(h=o+(A%Ze||Ze))}p&&K7(e,t,h),i||(_u(e,t,n,r,h,a),e.stroke())}class Es extends An{constructor(n){super();R(this,"circumference");R(this,"endAngle");R(this,"fullCircles");R(this,"innerRadius");R(this,"outerRadius");R(this,"pixelMargin");R(this,"startAngle");this.options=void 0,this.circumference=void 0,this.startAngle=void 0,this.endAngle=void 0,this.innerRadius=void 0,this.outerRadius=void 0,this.pixelMargin=0,this.fullCircles=0,n&&Object.assign(this,n)}inRange(n,r,a){const i=this.getProps(["x","y"],a),{angle:o,distance:A}=Pb(i,{x:n,y:r}),{startAngle:l,endAngle:c,innerRadius:u,outerRadius:d,circumference:f}=this.getProps(["startAngle","endAngle","innerRadius","outerRadius","circumference"],a),p=(this.options.spacing+this.options.borderWidth)/2,g=de(f,c-l)>=Ze||LA(o,l,c),B=qr(A,u+p,d+p);return g&&B}getCenterPoint(n){const{x:r,y:a,startAngle:i,endAngle:o,innerRadius:A,outerRadius:l}=this.getProps(["x","y","startAngle","endAngle","innerRadius","outerRadius"],n),{offset:c,spacing:u}=this.options,d=(i+o)/2,f=(A+l+u+c)/2;return{x:r+Math.cos(d)*f,y:a+Math.sin(d)*f}}tooltipPosition(n){return this.getCenterPoint(n)}draw(n){const{options:r,circumference:a}=this,i=(r.offset||0)/4,o=(r.spacing||0)/2,A=r.circular;if(this.pixelMargin=r.borderAlign==="inner"?.33:0,this.fullCircles=a>Ze?Math.floor(a/Ze):0,a===0||this.innerRadius<0||this.outerRadius<0)return;n.save();const l=(this.startAngle+this.endAngle)/2;n.translate(Math.cos(l)*i,Math.sin(l)*i);const c=1-Math.sin(Math.min(Qe,a||0)),u=i*c;n.fillStyle=r.backgroundColor,n.strokeStyle=r.borderColor,G7(n,this,u,o,A),j7(n,this,u,o,A),n.restore()}}R(Es,"id","arc"),R(Es,"defaults",{borderAlign:"center",borderColor:"#fff",borderDash:[],borderDashOffset:0,borderJoinStyle:void 0,borderRadius:0,borderWidth:2,offset:0,spacing:0,angle:void 0,circular:!0}),R(Es,"defaultRoutes",{backgroundColor:"backgroundColor"}),R(Es,"descriptors",{_scriptable:!0,_indexable:n=>n!=="borderDash"});function y_(e,t,n=t){e.lineCap=de(n.borderCapStyle,t.borderCapStyle),e.setLineDash(de(n.borderDash,t.borderDash)),e.lineDashOffset=de(n.borderDashOffset,t.borderDashOffset),e.lineJoin=de(n.borderJoinStyle,t.borderJoinStyle),e.lineWidth=de(n.borderWidth,t.borderWidth),e.strokeStyle=de(n.borderColor,t.borderColor)}function Y7(e,t,n){e.lineTo(n.x,n.y)}function q7(e){return e.stepped?BO:e.tension||e.cubicInterpolationMode==="monotone"?wO:Y7}function B_(e,t,n={}){const r=e.length,{start:a=0,end:i=r-1}=n,{start:o,end:A}=t,l=Math.max(a,o),c=Math.min(i,A),u=a<o&&i<o||a>A&&i>A;return{count:r,start:l,loop:t.loop,ilen:c<l&&!u?r+c-l:c-l}}function X7(e,t,n,r){const{points:a,options:i}=t,{count:o,start:A,loop:l,ilen:c}=B_(a,n,r),u=q7(i);let{move:d=!0,reverse:f}=r||{},p,h,g;for(p=0;p<=c;++p)h=a[(A+(f?c-p:p))%o],!h.skip&&(d?(e.moveTo(h.x,h.y),d=!1):u(e,g,h,f,i.stepped),g=h);return l&&(h=a[(A+(f?c:0))%o],u(e,g,h,f,i.stepped)),!!l}function J7(e,t,n,r){const a=t.points,{count:i,start:o,ilen:A}=B_(a,n,r),{move:l=!0,reverse:c}=r||{};let u=0,d=0,f,p,h,g,B,m;const v=y=>(o+(c?A-y:y))%i,w=()=>{g!==B&&(e.lineTo(u,B),e.lineTo(u,g),e.lineTo(u,m))};for(l&&(p=a[v(0)],e.moveTo(p.x,p.y)),f=0;f<=A;++f){if(p=a[v(f)],p.skip)continue;const y=p.x,b=p.y,_=y|0;_===h?(b<g?g=b:b>B&&(B=b),u=(d*u+y)/++d):(w(),e.lineTo(y,b),h=_,d=0,g=B=b),m=b}w()}function Yp(e){const t=e.options,n=t.borderDash&&t.borderDash.length;return!e._decimated&&!e._loop&&!t.tension&&t.cubicInterpolationMode!=="monotone"&&!t.stepped&&!n?J7:X7}function Z7(e){return e.stepped?ZO:e.tension||e.cubicInterpolationMode==="monotone"?eM:yi}function eN(e,t,n,r){let a=t._path;a||(a=t._path=new Path2D,t.path(a,n,r)&&a.closePath()),y_(e,t.options),e.stroke(a)}function tN(e,t,n,r){const{segments:a,options:i}=t,o=Yp(t);for(const A of a)y_(e,i,A.style),e.beginPath(),o(e,t,A,{start:n,end:n+r-1})&&e.closePath(),e.stroke()}const nN=typeof Path2D=="function";function rN(e,t,n,r){nN&&!t.options.segment?eN(e,t,n,r):tN(e,t,n,r)}class Oa extends An{constructor(t){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,t&&Object.assign(this,t)}updateControlPoints(t,n){const r=this.options;if((r.tension||r.cubicInterpolationMode==="monotone")&&!r.stepped&&!this._pointsUpdated){const a=r.spanGaps?this._loop:this._fullLoop;zO(this._points,r,t,a,n),this._pointsUpdated=!0}}set points(t){this._points=t,delete this._segments,delete this._path,this._pointsUpdated=!1}get points(){return this._points}get segments(){return this._segments||(this._segments=sM(this,this.options.segment))}first(){const t=this.segments,n=this.points;return t.length&&n[t[0].start]}last(){const t=this.segments,n=this.points,r=t.length;return r&&n[t[r-1].end]}interpolate(t,n){const r=this.options,a=t[n],i=this.points,o=s_(this,{property:n,start:a,end:a});if(!o.length)return;const A=[],l=Z7(r);let c,u;for(c=0,u=o.length;c<u;++c){const{start:d,end:f}=o[c],p=i[d],h=i[f];if(p===h){A.push(p);continue}const g=Math.abs((a-p[n])/(h[n]-p[n])),B=l(p,h,g,r.stepped);B[n]=t[n],A.push(B)}return A.length===1?A[0]:A}pathSegment(t,n,r){return Yp(this)(t,this,n,r)}path(t,n,r){const a=this.segments,i=Yp(this);let o=this._loop;n=n||0,r=r||this.points.length-n;for(const A of a)o&=i(t,this,A,{start:n,end:n+r-1});return!!o}draw(t,n,r,a){const i=this.options||{};(this.points||[]).length&&i.borderWidth&&(t.save(),rN(t,this,r,a),t.restore()),this.animated&&(this._pointsUpdated=!1,this._path=void 0)}}R(Oa,"id","line"),R(Oa,"defaults",{borderCapStyle:"butt",borderDash:[],borderDashOffset:0,borderJoinStyle:"miter",borderWidth:3,capBezierPoints:!0,cubicInterpolationMode:"default",fill:!1,spanGaps:!1,stepped:!1,tension:0}),R(Oa,"defaultRoutes",{backgroundColor:"backgroundColor",borderColor:"borderColor"}),R(Oa,"descriptors",{_scriptable:!0,_indexable:t=>t!=="borderDash"&&t!=="fill"});function dy(e,t,n,r){const a=e.options,{[n]:i}=e.getProps([n],r);return Math.abs(t-i)<a.radius+a.hitRadius}class iA extends An{constructor(n){super();R(this,"parsed");R(this,"skip");R(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,r,a){const i=this.options,{x:o,y:A}=this.getProps(["x","y"],a);return Math.pow(n-o,2)+Math.pow(r-A,2)<Math.pow(i.hitRadius+i.radius,2)}inXRange(n,r){return dy(this,n,"x",r)}inYRange(n,r){return dy(this,n,"y",r)}getCenterPoint(n){const{x:r,y:a}=this.getProps(["x","y"],n);return{x:r,y:a}}size(n){n=n||this.options||{};let r=n.radius||0;r=Math.max(r,r&&n.hoverRadius||0);const a=r&&n.borderWidth||0;return(r+a)*2}draw(n,r){const a=this.options;this.skip||a.radius<.1||!Jr(this,r,this.size(a)/2)||(n.strokeStyle=a.borderColor,n.lineWidth=a.borderWidth,n.fillStyle=a.backgroundColor,zp(n,a,this.x,this.y))}getRange(){const n=this.options||{};return n.radius+n.hitRadius}}R(iA,"id","point"),R(iA,"defaults",{borderWidth:1,hitRadius:1,hoverBorderWidth:1,hoverRadius:4,pointStyle:"circle",radius:3,rotation:0}),R(iA,"defaultRoutes",{backgroundColor:"backgroundColor",borderColor:"borderColor"});function w_(e,t){const{x:n,y:r,base:a,width:i,height:o}=e.getProps(["x","y","base","width","height"],t);let A,l,c,u,d;return e.horizontal?(d=o/2,A=Math.min(n,a),l=Math.max(n,a),c=r-d,u=r+d):(d=i/2,A=n-d,l=n+d,c=Math.min(r,a),u=Math.max(r,a)),{left:A,top:c,right:l,bottom:u}}function Ma(e,t,n,r){return e?0:Ht(t,n,r)}function aN(e,t,n){const r=e.options.borderWidth,a=e.borderSkipped,i=jb(r);return{t:Ma(a.top,i.top,0,n),r:Ma(a.right,i.right,0,t),b:Ma(a.bottom,i.bottom,0,n),l:Ma(a.left,i.left,0,t)}}function iN(e,t,n){const{enableBorderRadius:r}=e.getProps(["enableBorderRadius"]),a=e.options.borderRadius,i=Ka(a),o=Math.min(t,n),A=e.borderSkipped,l=r||we(a);return{topLeft:Ma(!l||A.top||A.left,i.topLeft,0,o),topRight:Ma(!l||A.top||A.right,i.topRight,0,o),bottomLeft:Ma(!l||A.bottom||A.left,i.bottomLeft,0,o),bottomRight:Ma(!l||A.bottom||A.right,i.bottomRight,0,o)}}function sN(e){const t=w_(e),n=t.right-t.left,r=t.bottom-t.top,a=aN(e,n/2,r/2),i=iN(e,n/2,r/2);return{outer:{x:t.left,y:t.top,w:n,h:r,radius:i},inner:{x:t.left+a.l,y:t.top+a.t,w:n-a.l-a.r,h:r-a.t-a.b,radius:{topLeft:Math.max(0,i.topLeft-Math.max(a.t,a.l)),topRight:Math.max(0,i.topRight-Math.max(a.t,a.r)),bottomLeft:Math.max(0,i.bottomLeft-Math.max(a.b,a.l)),bottomRight:Math.max(0,i.bottomRight-Math.max(a.b,a.r))}}}}function If(e,t,n,r){const a=t===null,i=n===null,A=e&&!(a&&i)&&w_(e,r);return A&&(a||qr(t,A.left,A.right))&&(i||qr(n,A.top,A.bottom))}function oN(e){return e.topLeft||e.topRight||e.bottomLeft||e.bottomRight}function AN(e,t){e.rect(t.x,t.y,t.w,t.h)}function Tf(e,t,n={}){const r=e.x!==n.x?-t:0,a=e.y!==n.y?-t:0,i=(e.x+e.w!==n.x+n.w?t:0)-r,o=(e.y+e.h!==n.y+n.h?t:0)-a;return{x:e.x+r,y:e.y+a,w:e.w+i,h:e.h+o,radius:e.radius}}class sA extends An{constructor(t){super(),this.options=void 0,this.horizontal=void 0,this.base=void 0,this.width=void 0,this.height=void 0,this.inflateAmount=void 0,t&&Object.assign(this,t)}draw(t){const{inflateAmount:n,options:{borderColor:r,backgroundColor:a}}=this,{inner:i,outer:o}=sN(this),A=oN(o.radius)?Gs:AN;t.save(),(o.w!==i.w||o.h!==i.h)&&(t.beginPath(),A(t,Tf(o,n,i)),t.clip(),A(t,Tf(i,-n,o)),t.fillStyle=r,t.fill("evenodd")),t.beginPath(),A(t,Tf(i,n)),t.fillStyle=a,t.fill(),t.restore()}inRange(t,n,r){return If(this,t,n,r)}inXRange(t,n){return If(this,t,null,n)}inYRange(t,n){return If(this,null,t,n)}getCenterPoint(t){const{x:n,y:r,base:a,horizontal:i}=this.getProps(["x","y","base","horizontal"],t);return{x:i?(n+a)/2:n,y:i?r:(r+a)/2}}getRange(t){return t==="x"?this.width/2:this.height/2}}R(sA,"id","bar"),R(sA,"defaults",{borderSkipped:"start",borderWidth:0,borderRadius:0,inflateAmount:"auto",pointStyle:void 0}),R(sA,"defaultRoutes",{backgroundColor:"backgroundColor",borderColor:"borderColor"});var lN=Object.freeze({__proto__:null,ArcElement:Es,BarElement:sA,LineElement:Oa,PointElement:iA});const qp=["rgb(54, 162, 235)","rgb(255, 99, 132)","rgb(255, 159, 64)","rgb(255, 205, 86)","rgb(75, 192, 192)","rgb(153, 102, 255)","rgb(201, 203, 207)"],fy=qp.map(e=>e.replace("rgb(","rgba(").replace(")",", 0.5)"));function b_(e){return qp[e%qp.length]}function __(e){return fy[e%fy.length]}function cN(e,t){return e.borderColor=b_(t),e.backgroundColor=__(t),++t}function uN(e,t){return e.backgroundColor=e.data.map(()=>b_(t++)),t}function dN(e,t){return e.backgroundColor=e.data.map(()=>__(t++)),t}function fN(e){let t=0;return(n,r)=>{const a=e.getDatasetMeta(r).controller;a instanceof ki?t=uN(n,t):a instanceof aA?t=dN(n,t):a&&(t=cN(n,t))}}function py(e){let t;for(t in e)if(e[t].borderColor||e[t].backgroundColor)return!0;return!1}function pN(e){return e&&(e.borderColor||e.backgroundColor)}var hN={id:"colors",defaults:{enabled:!0,forceOverride:!1},beforeLayout(e,t,n){if(!n.enabled)return;const{data:{datasets:r},options:a}=e.config,{elements:i}=a;if(!n.forceOverride&&(py(r)||pN(a)||i&&py(i)))return;const o=fN(e);r.forEach(o)}};function mN(e,t,n,r,a){const i=a.samples||r;if(i>=n)return e.slice(t,t+n);const o=[],A=(n-2)/(i-2);let l=0;const c=t+n-1;let u=t,d,f,p,h,g;for(o[l++]=e[u],d=0;d<i-2;d++){let B=0,m=0,v;const w=Math.floor((d+1)*A)+1+t,y=Math.min(Math.floor((d+2)*A)+1,n)+t,b=y-w;for(v=w;v<y;v++)B+=e[v].x,m+=e[v].y;B/=b,m/=b;const _=Math.floor(d*A)+1+t,C=Math.min(Math.floor((d+1)*A)+1,n)+t,{x:E,y:S}=e[u];for(p=h=-1,v=_;v<C;v++)h=.5*Math.abs((E-B)*(e[v].y-S)-(E-e[v].x)*(m-S)),h>p&&(p=h,f=e[v],g=v);o[l++]=f,u=g}return o[l++]=e[c],o}function gN(e,t,n,r){let a=0,i=0,o,A,l,c,u,d,f,p,h,g;const B=[],m=t+n-1,v=e[t].x,y=e[m].x-v;for(o=t;o<t+n;++o){A=e[o],l=(A.x-v)/y*r,c=A.y;const b=l|0;if(b===u)c<h?(h=c,d=o):c>g&&(g=c,f=o),a=(i*a+A.x)/++i;else{const _=o-1;if(!Ee(d)&&!Ee(f)){const C=Math.min(d,f),E=Math.max(d,f);C!==p&&C!==_&&B.push({...e[C],x:a}),E!==p&&E!==_&&B.push({...e[E],x:a})}o>0&&_!==p&&B.push(e[_]),B.push(A),u=b,i=0,h=g=c,d=f=p=o}}return B}function C_(e){if(e._decimated){const t=e._data;delete e._decimated,delete e._data,Object.defineProperty(e,"data",{configurable:!0,enumerable:!0,writable:!0,value:t})}}function hy(e){e.data.datasets.forEach(t=>{C_(t)})}function vN(e,t){const n=t.length;let r=0,a;const{iScale:i}=e,{min:o,max:A,minDefined:l,maxDefined:c}=i.getUserBounds();return l&&(r=Ht(Xr(t,i.axis,o).lo,0,n-1)),c?a=Ht(Xr(t,i.axis,A).hi+1,r,n)-r:a=n-r,{start:r,count:a}}var yN={id:"decimation",defaults:{algorithm:"min-max",enabled:!1},beforeElementsUpdate:(e,t,n)=>{if(!n.enabled){hy(e);return}const r=e.width;e.data.datasets.forEach((a,i)=>{const{_data:o,indexAxis:A}=a,l=e.getDatasetMeta(i),c=o||a.data;if(rt([A,e.options.indexAxis])==="y"||!l.controller.supportsDecimation)return;const u=e.scales[l.xAxisID];if(u.type!=="linear"&&u.type!=="time"||e.options.parsing)return;let{start:d,count:f}=vN(l,c);const p=n.threshold||4*r;if(f<=p){C_(a);return}Ee(o)&&(a._data=c,delete a.data,Object.defineProperty(a,"data",{configurable:!0,enumerable:!0,get:function(){return this._decimated},set:function(g){this._data=g}}));let h;switch(n.algorithm){case"lttb":h=mN(c,d,f,r,n);break;case"min-max":h=gN(c,d,f,r);break;default:throw new Error(`Unsupported decimation algorithm '${n.algorithm}'`)}a._decimated=h})},destroy(e){hy(e)}};function BN(e,t,n){const r=e.segments,a=e.points,i=t.points,o=[];for(const A of r){let{start:l,end:c}=A;c=ig(l,c,a);const u=Xp(n,a[l],a[c],A.loop);if(!t.segments){o.push({source:A,target:u,start:a[l],end:a[c]});continue}const d=s_(t,u);for(const f of d){const p=Xp(n,i[f.start],i[f.end],f.loop),h=i_(A,a,p);for(const g of h)o.push({source:g,target:f,start:{[n]:my(u,p,"start",Math.max)},end:{[n]:my(u,p,"end",Math.min)}})}}return o}function Xp(e,t,n,r){if(r)return;let a=t[e],i=n[e];return e==="angle"&&(a=En(a),i=En(i)),{property:e,start:a,end:i}}function wN(e,t){const{x:n=null,y:r=null}=e||{},a=t.points,i=[];return t.segments.forEach(({start:o,end:A})=>{A=ig(o,A,a);const l=a[o],c=a[A];r!==null?(i.push({x:l.x,y:r}),i.push({x:c.x,y:r})):n!==null&&(i.push({x:n,y:l.y}),i.push({x:n,y:c.y}))}),i}function ig(e,t,n){for(;t>e;t--){const r=n[t];if(!isNaN(r.x)&&!isNaN(r.y))break}return t}function my(e,t,n,r){return e&&t?r(e[n],t[n]):e?e[n]:t?t[n]:0}function k_(e,t){let n=[],r=!1;return Me(e)?(r=!0,n=e):n=wN(e,t),n.length?new Oa({points:n,options:{tension:0},_loop:r,_fullLoop:r}):null}function gy(e){return e&&e.fill!==!1}function bN(e,t,n){let a=e[t].fill;const i=[t];let o;if(!n)return a;for(;a!==!1&&i.indexOf(a)===-1;){if(!ft(a))return a;if(o=e[a],!o)return!1;if(o.visible)return a;i.push(a),a=o.fill}return!1}function _N(e,t,n){const r=SN(e);if(we(r))return isNaN(r.value)?!1:r;let a=parseFloat(r);return ft(a)&&Math.floor(a)===a?CN(r[0],t,a,n):["origin","start","end","stack","shape"].indexOf(r)>=0&&r}function CN(e,t,n,r){return(e==="-"||e==="+")&&(n=t+n),n===t||n<0||n>=r?!1:n}function kN(e,t){let n=null;return e==="start"?n=t.bottom:e==="end"?n=t.top:we(e)?n=t.getPixelForValue(e.value):t.getBasePixel&&(n=t.getBasePixel()),n}function EN(e,t,n){let r;return e==="start"?r=n:e==="end"?r=t.options.reverse?t.min:t.max:we(e)?r=e.value:r=t.getBaseValue(),r}function SN(e){const t=e.options,n=t.fill;let r=de(n&&n.target,n);return r===void 0&&(r=!!t.backgroundColor),r===!1||r===null?!1:r===!0?"origin":r}function xN(e){const{scale:t,index:n,line:r}=e,a=[],i=r.segments,o=r.points,A=FN(t,n);A.push(k_({x:null,y:t.bottom},r));for(let l=0;l<i.length;l++){const c=i[l];for(let u=c.start;u<=c.end;u++)IN(a,o[u],A)}return new Oa({points:a,options:{}})}function FN(e,t){const n=[],r=e.getMatchingVisibleMetas("line");for(let a=0;a<r.length;a++){const i=r[a];if(i.index===t)break;i.hidden||n.unshift(i.dataset)}return n}function IN(e,t,n){const r=[];for(let a=0;a<n.length;a++){const i=n[a],{first:o,last:A,point:l}=TN(i,t,"x");if(!(!l||o&&A)){if(o)r.unshift(l);else if(e.push(l),!A)break}}e.push(...r)}function TN(e,t,n){const r=e.interpolate(t,n);if(!r)return{};const a=r[n],i=e.segments,o=e.points;let A=!1,l=!1;for(let c=0;c<i.length;c++){const u=i[c],d=o[u.start][n],f=o[u.end][n];if(qr(a,d,f)){A=a===d,l=a===f;break}}return{first:A,last:l,point:r}}class E_{constructor(t){this.x=t.x,this.y=t.y,this.radius=t.radius}pathSegment(t,n,r){const{x:a,y:i,radius:o}=this;return n=n||{start:0,end:Ze},t.arc(a,i,o,n.end,n.start,!0),!r.bounds}interpolate(t){const{x:n,y:r,radius:a}=this,i=t.angle;return{x:n+Math.cos(i)*a,y:r+Math.sin(i)*a,angle:i}}}function DN(e){const{chart:t,fill:n,line:r}=e;if(ft(n))return UN(t,n);if(n==="stack")return xN(e);if(n==="shape")return!0;const a=QN(e);return a instanceof E_?a:k_(a,r)}function UN(e,t){const n=e.getDatasetMeta(t);return n&&e.isDatasetVisible(t)?n.dataset:null}function QN(e){return(e.scale||{}).getPointPositionForValue?ON(e):LN(e)}function LN(e){const{scale:t={},fill:n}=e,r=kN(n,t);if(ft(r)){const a=t.isHorizontal();return{x:a?r:null,y:a?null:r}}return null}function ON(e){const{scale:t,fill:n}=e,r=t.options,a=t.getLabels().length,i=r.reverse?t.max:t.min,o=EN(n,t,i),A=[];if(r.grid.circular){const l=t.getPointPositionForValue(0,i);return new E_({x:l.x,y:l.y,radius:t.getDistanceFromCenterForValue(o)})}for(let l=0;l<a;++l)A.push(t.getPointPositionForValue(l,o));return A}function Df(e,t,n){const r=DN(t),{line:a,scale:i,axis:o}=t,A=a.options,l=A.fill,c=A.backgroundColor,{above:u=c,below:d=c}=l||{};r&&a.points.length&&(dl(e,n),MN(e,{line:a,target:r,above:u,below:d,area:n,scale:i,axis:o}),fl(e))}function MN(e,t){const{line:n,target:r,above:a,below:i,area:o,scale:A}=t,l=n._loop?"angle":t.axis;e.save(),l==="x"&&i!==a&&(vy(e,r,o.top),yy(e,{line:n,target:r,color:a,scale:A,property:l}),e.restore(),e.save(),vy(e,r,o.bottom)),yy(e,{line:n,target:r,color:i,scale:A,property:l}),e.restore()}function vy(e,t,n){const{segments:r,points:a}=t;let i=!0,o=!1;e.beginPath();for(const A of r){const{start:l,end:c}=A,u=a[l],d=a[ig(l,c,a)];i?(e.moveTo(u.x,u.y),i=!1):(e.lineTo(u.x,n),e.lineTo(u.x,u.y)),o=!!t.pathSegment(e,A,{move:o}),o?e.closePath():e.lineTo(d.x,n)}e.lineTo(t.first().x,n),e.closePath(),e.clip()}function yy(e,t){const{line:n,target:r,property:a,color:i,scale:o}=t,A=BN(n,r,a);for(const{source:l,target:c,start:u,end:d}of A){const{style:{backgroundColor:f=i}={}}=l,p=r!==!0;e.save(),e.fillStyle=f,NN(e,o,p&&Xp(a,u,d)),e.beginPath();const h=!!n.pathSegment(e,l);let g;if(p){h?e.closePath():By(e,r,d,a);const B=!!r.pathSegment(e,c,{move:h,reverse:!0});g=h&&B,g||By(e,r,u,a)}e.closePath(),e.fill(g?"evenodd":"nonzero"),e.restore()}}function NN(e,t,n){const{top:r,bottom:a}=t.chart.chartArea,{property:i,start:o,end:A}=n||{};i==="x"&&(e.beginPath(),e.rect(o,r,A-o,a-r),e.clip())}function By(e,t,n,r){const a=t.interpolate(n,r);a&&e.lineTo(a.x,a.y)}var PN={id:"filler",afterDatasetsUpdate(e,t,n){const r=(e.data.datasets||[]).length,a=[];let i,o,A,l;for(o=0;o<r;++o)i=e.getDatasetMeta(o),A=i.dataset,l=null,A&&A.options&&A instanceof Oa&&(l={visible:e.isDatasetVisible(o),index:o,fill:_N(A,o,r),chart:e,axis:i.controller.options.indexAxis,scale:i.vScale,line:A}),i.$filler=l,a.push(l);for(o=0;o<r;++o)l=a[o],!(!l||l.fill===!1)&&(l.fill=bN(a,o,n.propagate))},beforeDraw(e,t,n){const r=n.drawTime==="beforeDraw",a=e.getSortedVisibleDatasetMetas(),i=e.chartArea;for(let o=a.length-1;o>=0;--o){const A=a[o].$filler;A&&(A.line.updateControlPoints(i,A.axis),r&&A.fill&&Df(e.ctx,A,i))}},beforeDatasetsDraw(e,t,n){if(n.drawTime!=="beforeDatasetsDraw")return;const r=e.getSortedVisibleDatasetMetas();for(let a=r.length-1;a>=0;--a){const i=r[a].$filler;gy(i)&&Df(e.ctx,i,e.chartArea)}},beforeDatasetDraw(e,t,n){const r=t.meta.$filler;!gy(r)||n.drawTime!=="beforeDatasetDraw"||Df(e.ctx,r,e.chartArea)},defaults:{propagate:!0,drawTime:"beforeDatasetDraw"}};const wy=(e,t)=>{let{boxHeight:n=t,boxWidth:r=t}=e;return e.usePointStyle&&(n=Math.min(n,t),r=e.pointStyleWidth||Math.min(r,t)),{boxWidth:r,boxHeight:n,itemHeight:Math.max(t,n)}},HN=(e,t)=>e!==null&&t!==null&&e.datasetIndex===t.datasetIndex&&e.index===t.index;class by extends An{constructor(t){super(),this._added=!1,this.legendHitBoxes=[],this._hoveredItem=null,this.doughnutMode=!1,this.chart=t.chart,this.options=t.options,this.ctx=t.ctx,this.legendItems=void 0,this.columnSizes=void 0,this.lineWidths=void 0,this.maxHeight=void 0,this.maxWidth=void 0,this.top=void 0,this.bottom=void 0,this.left=void 0,this.right=void 0,this.height=void 0,this.width=void 0,this._margins=void 0,this.position=void 0,this.weight=void 0,this.fullSize=void 0}update(t,n,r){this.maxWidth=t,this.maxHeight=n,this._margins=r,this.setDimensions(),this.buildLabels(),this.fit()}setDimensions(){this.isHorizontal()?(this.width=this.maxWidth,this.left=this._margins.left,this.right=this.width):(this.height=this.maxHeight,this.top=this._margins.top,this.bottom=this.height)}buildLabels(){const t=this.options.labels||{};let n=Re(t.generateLabels,[this.chart],this)||[];t.filter&&(n=n.filter(r=>t.filter(r,this.chart.data))),t.sort&&(n=n.sort((r,a)=>t.sort(r,a,this.chart.data))),this.options.reverse&&n.reverse(),this.legendItems=n}fit(){const{options:t,ctx:n}=this;if(!t.display){this.width=this.height=0;return}const r=t.labels,a=ht(r.font),i=a.size,o=this._computeTitleHeight(),{boxWidth:A,itemHeight:l}=wy(r,i);let c,u;n.font=a.string,this.isHorizontal()?(c=this.maxWidth,u=this._fitRows(o,i,A,l)+10):(u=this.maxHeight,c=this._fitCols(o,a,A,l)+10),this.width=Math.min(c,t.maxWidth||this.maxWidth),this.height=Math.min(u,t.maxHeight||this.maxHeight)}_fitRows(t,n,r,a){const{ctx:i,maxWidth:o,options:{labels:{padding:A}}}=this,l=this.legendHitBoxes=[],c=this.lineWidths=[0],u=a+A;let d=t;i.textAlign="left",i.textBaseline="middle";let f=-1,p=-u;return this.legendItems.forEach((h,g)=>{const B=r+n/2+i.measureText(h.text).width;(g===0||c[c.length-1]+B+2*A>o)&&(d+=u,c[c.length-(g>0?0:1)]=0,p+=u,f++),l[g]={left:0,top:p,row:f,width:B,height:a},c[c.length-1]+=B+A}),d}_fitCols(t,n,r,a){const{ctx:i,maxHeight:o,options:{labels:{padding:A}}}=this,l=this.legendHitBoxes=[],c=this.columnSizes=[],u=o-t;let d=A,f=0,p=0,h=0,g=0;return this.legendItems.forEach((B,m)=>{const{itemWidth:v,itemHeight:w}=RN(r,n,i,B,a);m>0&&p+w+2*A>u&&(d+=f+A,c.push({width:f,height:p}),h+=f+A,g++,f=p=0),l[m]={left:h,top:p,col:g,width:v,height:w},f=Math.max(f,v),p+=w+A}),d+=f,c.push({width:f,height:p}),d}adjustHitBoxes(){if(!this.options.display)return;const t=this._computeTitleHeight(),{legendHitBoxes:n,options:{align:r,labels:{padding:a},rtl:i}}=this,o=Is(i,this.left,this.width);if(this.isHorizontal()){let A=0,l=jt(r,this.left+a,this.right-this.lineWidths[A]);for(const c of n)A!==c.row&&(A=c.row,l=jt(r,this.left+a,this.right-this.lineWidths[A])),c.top+=this.top+t+a,c.left=o.leftForLtr(o.x(l),c.width),l+=c.width+a}else{let A=0,l=jt(r,this.top+t+a,this.bottom-this.columnSizes[A].height);for(const c of n)c.col!==A&&(A=c.col,l=jt(r,this.top+t+a,this.bottom-this.columnSizes[A].height)),c.top=l,c.left+=this.left+a,c.left=o.leftForLtr(o.x(c.left),c.width),l+=c.height+a}}isHorizontal(){return this.options.position==="top"||this.options.position==="bottom"}draw(){if(this.options.display){const t=this.ctx;dl(t,this),this._draw(),fl(t)}}_draw(){const{options:t,columnSizes:n,lineWidths:r,ctx:a}=this,{align:i,labels:o}=t,A=pt.color,l=Is(t.rtl,this.left,this.width),c=ht(o.font),{padding:u}=o,d=c.size,f=d/2;let p;this.drawTitle(),a.textAlign=l.textAlign("left"),a.textBaseline="middle",a.lineWidth=.5,a.font=c.string;const{boxWidth:h,boxHeight:g,itemHeight:B}=wy(o,d),m=function(_,C,E){if(isNaN(h)||h<=0||isNaN(g)||g<0)return;a.save();const S=de(E.lineWidth,1);if(a.fillStyle=de(E.fillStyle,A),a.lineCap=de(E.lineCap,"butt"),a.lineDashOffset=de(E.lineDashOffset,0),a.lineJoin=de(E.lineJoin,"miter"),a.lineWidth=S,a.strokeStyle=de(E.strokeStyle,A),a.setLineDash(de(E.lineDash,[])),o.usePointStyle){const U={radius:g*Math.SQRT2/2,pointStyle:E.pointStyle,rotation:E.rotation,borderWidth:S},T=l.xPlus(_,h/2),F=C+f;Gb(a,U,T,F,o.pointStyleWidth&&h)}else{const U=C+Math.max((d-g)/2,0),T=l.leftForLtr(_,h),F=Ka(E.borderRadius);a.beginPath(),Object.values(F).some(D=>D!==0)?Gs(a,{x:T,y:U,w:h,h:g,radius:F}):a.rect(T,U,h,g),a.fill(),S!==0&&a.stroke()}a.restore()},v=function(_,C,E){$i(a,E.text,_,C+B/2,c,{strikethrough:E.hidden,textAlign:l.textAlign(E.textAlign)})},w=this.isHorizontal(),y=this._computeTitleHeight();w?p={x:jt(i,this.left+u,this.right-r[0]),y:this.top+u+y,line:0}:p={x:this.left+u,y:jt(i,this.top+y+u,this.bottom-n[0].height),line:0},n_(this.ctx,t.textDirection);const b=B+u;this.legendItems.forEach((_,C)=>{a.strokeStyle=_.fontColor,a.fillStyle=_.fontColor;const E=a.measureText(_.text).width,S=l.textAlign(_.textAlign||(_.textAlign=o.textAlign)),U=h+f+E;let T=p.x,F=p.y;l.setWidth(this.width),w?C>0&&T+U+u>this.right&&(F=p.y+=b,p.line++,T=p.x=jt(i,this.left+u,this.right-r[p.line])):C>0&&F+b>this.bottom&&(T=p.x=T+n[p.line].width+u,p.line++,F=p.y=jt(i,this.top+y+u,this.bottom-n[p.line].height));const D=l.x(T);if(m(D,F,_),T=lO(S,T+h+f,w?T+U:this.right,t.rtl),v(l.x(T),F,_),w)p.x+=U+u;else if(typeof _.text!="string"){const q=c.lineHeight;p.y+=S_(_,q)}else p.y+=b}),r_(this.ctx,t.textDirection)}drawTitle(){const t=this.options,n=t.title,r=ht(n.font),a=St(n.padding);if(!n.display)return;const i=Is(t.rtl,this.left,this.width),o=this.ctx,A=n.position,l=r.size/2,c=a.top+l;let u,d=this.left,f=this.width;if(this.isHorizontal())f=Math.max(...this.lineWidths),u=this.top+c,d=jt(t.align,d,this.right-f);else{const h=this.columnSizes.reduce((g,B)=>Math.max(g,B.height),0);u=c+jt(t.align,this.top,this.bottom-h-t.labels.padding-this._computeTitleHeight())}const p=jt(A,d,d+f);o.textAlign=i.textAlign(qm(A)),o.textBaseline="middle",o.strokeStyle=n.color,o.fillStyle=n.color,o.font=r.string,$i(o,n.text,p,u,r)}_computeTitleHeight(){const t=this.options.title,n=ht(t.font),r=St(t.padding);return t.display?n.lineHeight+r.height:0}_getLegendItemAt(t,n){let r,a,i;if(qr(t,this.left,this.right)&&qr(n,this.top,this.bottom)){for(i=this.legendHitBoxes,r=0;r<i.length;++r)if(a=i[r],qr(t,a.left,a.left+a.width)&&qr(n,a.top,a.top+a.height))return this.legendItems[r]}return null}handleEvent(t){const n=this.options;if(!KN(t.type,n))return;const r=this._getLegendItemAt(t.x,t.y);if(t.type==="mousemove"||t.type==="mouseout"){const a=this._hoveredItem,i=HN(a,r);a&&!i&&Re(n.onLeave,[t,a,this],this),this._hoveredItem=r,r&&!i&&Re(n.onHover,[t,r,this],this)}else r&&Re(n.onClick,[t,r,this],this)}}function RN(e,t,n,r,a){const i=VN(r,e,t,n),o=$N(a,r,t.lineHeight);return{itemWidth:i,itemHeight:o}}function VN(e,t,n,r){let a=e.text;return a&&typeof a!="string"&&(a=a.reduce((i,o)=>i.length>o.length?i:o)),t+n.size/2+r.measureText(a).width}function $N(e,t,n){let r=e;return typeof t.text!="string"&&(r=S_(t,n)),r}function S_(e,t){const n=e.text?e.text.length+.5:0;return t*n}function KN(e,t){return!!((e==="mousemove"||e==="mouseout")&&(t.onHover||t.onLeave)||t.onClick&&(e==="click"||e==="mouseup"))}var zN={id:"legend",_element:by,start(e,t,n){const r=e.legend=new by({ctx:e.ctx,options:n,chart:e});Xt.configure(e,r,n),Xt.addBox(e,r)},stop(e){Xt.removeBox(e,e.legend),delete e.legend},beforeUpdate(e,t,n){const r=e.legend;Xt.configure(e,r,n),r.options=n},afterUpdate(e){const t=e.legend;t.buildLabels(),t.adjustHitBoxes()},afterEvent(e,t){t.replay||e.legend.handleEvent(t.event)},defaults:{display:!0,position:"top",align:"center",fullSize:!0,reverse:!1,weight:1e3,onClick(e,t,n){const r=t.datasetIndex,a=n.chart;a.isDatasetVisible(r)?(a.hide(r),t.hidden=!0):(a.show(r),t.hidden=!1)},onHover:null,onLeave:null,labels:{color:e=>e.chart.options.color,boxWidth:40,padding:10,generateLabels(e){const t=e.data.datasets,{labels:{usePointStyle:n,pointStyle:r,textAlign:a,color:i,useBorderRadius:o,borderRadius:A}}=e.legend.options;return e._getSortedDatasetMetas().map(l=>{const c=l.controller.getStyle(n?0:void 0),u=St(c.borderWidth);return{text:t[l.index].label,fillStyle:c.backgroundColor,fontColor:i,hidden:!l.visible,lineCap:c.borderCapStyle,lineDash:c.borderDash,lineDashOffset:c.borderDashOffset,lineJoin:c.borderJoinStyle,lineWidth:(u.width+u.height)/4,strokeStyle:c.borderColor,pointStyle:r||c.pointStyle,rotation:c.rotation,textAlign:a||c.textAlign,borderRadius:o&&(A||c.borderRadius),datasetIndex:l.index}},this)}},title:{color:e=>e.chart.options.color,display:!1,position:"center",text:""}},descriptors:{_scriptable:e=>!e.startsWith("on"),labels:{_scriptable:e=>!["generateLabels","filter","sort"].includes(e)}}};class sg extends An{constructor(t){super(),this.chart=t.chart,this.options=t.options,this.ctx=t.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(t,n){const r=this.options;if(this.left=0,this.top=0,!r.display){this.width=this.height=this.right=this.bottom=0;return}this.width=this.right=t,this.height=this.bottom=n;const a=Me(r.text)?r.text.length:1;this._padding=St(r.padding);const i=a*ht(r.font).lineHeight+this._padding.height;this.isHorizontal()?this.height=i:this.width=i}isHorizontal(){const t=this.options.position;return t==="top"||t==="bottom"}_drawArgs(t){const{top:n,left:r,bottom:a,right:i,options:o}=this,A=o.align;let l=0,c,u,d;return this.isHorizontal()?(u=jt(A,r,i),d=n+t,c=i-r):(o.position==="left"?(u=r+t,d=jt(A,a,n),l=Qe*-.5):(u=i-t,d=jt(A,n,a),l=Qe*.5),c=a-n),{titleX:u,titleY:d,maxWidth:c,rotation:l}}draw(){const t=this.ctx,n=this.options;if(!n.display)return;const r=ht(n.font),i=r.lineHeight/2+this._padding.top,{titleX:o,titleY:A,maxWidth:l,rotation:c}=this._drawArgs(i);$i(t,n.text,0,0,r,{color:n.color,maxWidth:l,rotation:c,textAlign:qm(n.align),textBaseline:"middle",translation:[o,A]})}}function WN(e,t){const n=new sg({ctx:e.ctx,options:t,chart:e});Xt.configure(e,n,t),Xt.addBox(e,n),e.titleBlock=n}var GN={id:"title",_element:sg,start(e,t,n){WN(e,n)},stop(e){const t=e.titleBlock;Xt.removeBox(e,t),delete e.titleBlock},beforeUpdate(e,t,n){const r=e.titleBlock;Xt.configure(e,r,n),r.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 ac=new WeakMap;var jN={id:"subtitle",start(e,t,n){const r=new sg({ctx:e.ctx,options:n,chart:e});Xt.configure(e,r,n),Xt.addBox(e,r),ac.set(e,r)},stop(e){Xt.removeBox(e,ac.get(e)),ac.delete(e)},beforeUpdate(e,t,n){const r=ac.get(e);Xt.configure(e,r,n),r.options=n},defaults:{align:"center",display:!1,font:{weight:"normal"},fullSize:!0,padding:0,position:"top",text:"",weight:1500},defaultRoutes:{color:"color"},descriptors:{_scriptable:!0,_indexable:!1}};const Oo={average(e){if(!e.length)return!1;let t,n,r=0,a=0,i=0;for(t=0,n=e.length;t<n;++t){const o=e[t].element;if(o&&o.hasValue()){const A=o.tooltipPosition();r+=A.x,a+=A.y,++i}}return{x:r/i,y:a/i}},nearest(e,t){if(!e.length)return!1;let n=t.x,r=t.y,a=Number.POSITIVE_INFINITY,i,o,A;for(i=0,o=e.length;i<o;++i){const l=e[i].element;if(l&&l.hasValue()){const c=l.getCenterPoint(),u=Ws(t,c);u<a&&(a=u,A=l)}}if(A){const l=A.tooltipPosition();n=l.x,r=l.y}return{x:n,y:r}}};function pr(e,t){return t&&(Me(t)?Array.prototype.push.apply(e,t):e.push(t)),e}function zr(e){return(typeof e=="string"||e instanceof String)&&e.indexOf(`
844
844
  `)>-1?e.split(`
845
- `):e}function YN(e,t){const{element:n,datasetIndex:r,index:a}=t,i=e.getDatasetMeta(r).controller,{label:o,value:A}=i.getLabelAndValue(a);return{chart:e,label:o,parsed:i.getParsed(a),raw:e.data.datasets[r].data[a],formattedValue:A,dataset:i.getDataset(),dataIndex:a,datasetIndex:r,element:n}}function _y(e,t){const n=e.chart.ctx,{body:r,footer:a,title:i}=e,{boxWidth:o,boxHeight:A}=t,l=ht(t.bodyFont),c=ht(t.titleFont),u=ht(t.footerFont),d=i.length,f=a.length,p=r.length,h=St(t.padding);let g=h.height,B=0,m=r.reduce((y,b)=>y+b.before.length+b.lines.length+b.after.length,0);if(m+=e.beforeBody.length+e.afterBody.length,d&&(g+=d*c.lineHeight+(d-1)*t.titleSpacing+t.titleMarginBottom),m){const y=t.displayColors?Math.max(A,l.lineHeight):l.lineHeight;g+=p*y+(m-p)*l.lineHeight+(m-1)*t.bodySpacing}f&&(g+=t.footerMarginTop+f*u.lineHeight+(f-1)*t.footerSpacing);let v=0;const w=function(y){B=Math.max(B,n.measureText(y).width+v)};return n.save(),n.font=c.string,$e(e.title,w),n.font=l.string,$e(e.beforeBody.concat(e.afterBody),w),v=t.displayColors?o+2+t.boxPadding:0,$e(r,y=>{$e(y.before,w),$e(y.lines,w),$e(y.after,w)}),v=0,n.font=u.string,$e(e.footer,w),n.restore(),B+=h.width,{width:B,height:g}}function qN(e,t){const{y:n,height:r}=t;return n<r/2?"top":n>e.height-r/2?"bottom":"center"}function XN(e,t,n,r){const{x:a,width:i}=r,o=n.caretSize+n.caretPadding;if(e==="left"&&a+i+o>t.width||e==="right"&&a-i-o<0)return!0}function JN(e,t,n,r){const{x:a,width:i}=n,{width:o,chartArea:{left:A,right:l}}=e;let c="center";return r==="center"?c=a<=(A+l)/2?"left":"right":a<=i/2?c="left":a>=o-i/2&&(c="right"),XN(c,e,t,n)&&(c="center"),c}function Cy(e,t,n){const r=n.yAlign||t.yAlign||qN(e,n);return{xAlign:n.xAlign||t.xAlign||JN(e,t,n,r),yAlign:r}}function ZN(e,t){let{x:n,width:r}=e;return t==="right"?n-=r:t==="center"&&(n-=r/2),n}function e9(e,t,n){let{y:r,height:a}=e;return t==="top"?r+=n:t==="bottom"?r-=a+n:r-=a/2,r}function ky(e,t,n,r){const{caretSize:a,caretPadding:i,cornerRadius:o}=e,{xAlign:A,yAlign:l}=n,c=a+i,{topLeft:u,topRight:d,bottomLeft:f,bottomRight:p}=Ka(o);let h=ZN(t,A);const g=e9(t,l,c);return l==="center"?A==="left"?h+=c:A==="right"&&(h-=c):A==="left"?h-=Math.max(u,f)+a:A==="right"&&(h+=Math.max(d,p)+a),{x:Ht(h,0,r.width-t.width),y:Ht(g,0,r.height-t.height)}}function ic(e,t,n){const r=St(n.padding);return t==="center"?e.x+e.width/2:t==="right"?e.x+e.width-r.right:e.x+r.left}function Ey(e){return pr([],zr(e))}function t9(e,t,n){return Ai(e,{tooltip:t,tooltipItems:n,type:"tooltip"})}function Sy(e,t){const n=t&&t.dataset&&t.dataset.tooltip&&t.dataset.tooltip.callbacks;return n?e.override(n):e}const x_={beforeTitle:Pr,title(e){if(e.length>0){const t=e[0],n=t.chart.data.labels,r=n?n.length:0;if(this&&this.options&&this.options.mode==="dataset")return t.dataset.label||"";if(t.label)return t.label;if(r>0&&t.dataIndex<r)return n[t.dataIndex]}return""},afterTitle:Pr,beforeBody:Pr,beforeLabel:Pr,label(e){if(this&&this.options&&this.options.mode==="dataset")return e.label+": "+e.formattedValue||e.formattedValue;let t=e.dataset.label||"";t&&(t+=": ");const n=e.formattedValue;return Ee(n)||(t+=n),t},labelColor(e){const n=e.chart.getDatasetMeta(e.datasetIndex).controller.getStyle(e.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(e){const n=e.chart.getDatasetMeta(e.datasetIndex).controller.getStyle(e.dataIndex);return{pointStyle:n.pointStyle,rotation:n.rotation}},afterLabel:Pr,afterBody:Pr,beforeFooter:Pr,footer:Pr,afterFooter:Pr};function cn(e,t,n,r){const a=e[t].call(n,r);return typeof a>"u"?x_[t].call(n,r):a}class Jp extends An{constructor(t){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=t.chart,this.options=t.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(t){this.options=t,this._cachedAnimations=void 0,this.$context=void 0}_resolveAnimations(){const t=this._cachedAnimations;if(t)return t;const n=this.chart,r=this.options.setContext(this.getContext()),a=r.enabled&&n.options.animation&&r.animations,i=new rg(this.chart,a);return a._cacheable&&(this._cachedAnimations=Object.freeze(i)),i}getContext(){return this.$context||(this.$context=t9(this.chart.getContext(),this,this._tooltipItems))}getTitle(t,n){const{callbacks:r}=n,a=cn(r,"beforeTitle",this,t),i=cn(r,"title",this,t),o=cn(r,"afterTitle",this,t);let A=[];return A=pr(A,zr(a)),A=pr(A,zr(i)),A=pr(A,zr(o)),A}getBeforeBody(t,n){return Ey(cn(n.callbacks,"beforeBody",this,t))}getBody(t,n){const{callbacks:r}=n,a=[];return $e(t,i=>{const o={before:[],lines:[],after:[]},A=Sy(r,i);pr(o.before,zr(cn(A,"beforeLabel",this,i))),pr(o.lines,cn(A,"label",this,i)),pr(o.after,zr(cn(A,"afterLabel",this,i))),a.push(o)}),a}getAfterBody(t,n){return Ey(cn(n.callbacks,"afterBody",this,t))}getFooter(t,n){const{callbacks:r}=n,a=cn(r,"beforeFooter",this,t),i=cn(r,"footer",this,t),o=cn(r,"afterFooter",this,t);let A=[];return A=pr(A,zr(a)),A=pr(A,zr(i)),A=pr(A,zr(o)),A}_createItems(t){const n=this._active,r=this.chart.data,a=[],i=[],o=[];let A=[],l,c;for(l=0,c=n.length;l<c;++l)A.push(YN(this.chart,n[l]));return t.filter&&(A=A.filter((u,d,f)=>t.filter(u,d,f,r))),t.itemSort&&(A=A.sort((u,d)=>t.itemSort(u,d,r))),$e(A,u=>{const d=Sy(t.callbacks,u);a.push(cn(d,"labelColor",this,u)),i.push(cn(d,"labelPointStyle",this,u)),o.push(cn(d,"labelTextColor",this,u))}),this.labelColors=a,this.labelPointStyles=i,this.labelTextColors=o,this.dataPoints=A,A}update(t,n){const r=this.options.setContext(this.getContext()),a=this._active;let i,o=[];if(!a.length)this.opacity!==0&&(i={opacity:0});else{const A=Oo[r.position].call(this,a,this._eventPosition);o=this._createItems(r),this.title=this.getTitle(o,r),this.beforeBody=this.getBeforeBody(o,r),this.body=this.getBody(o,r),this.afterBody=this.getAfterBody(o,r),this.footer=this.getFooter(o,r);const l=this._size=_y(this,r),c=Object.assign({},A,l),u=Cy(this.chart,r,c),d=ky(r,c,u,this.chart);this.xAlign=u.xAlign,this.yAlign=u.yAlign,i={opacity:1,x:d.x,y:d.y,width:l.width,height:l.height,caretX:A.x,caretY:A.y}}this._tooltipItems=o,this.$context=void 0,i&&this._resolveAnimations().update(this,i),t&&r.external&&r.external.call(this,{chart:this.chart,tooltip:this,replay:n})}drawCaret(t,n,r,a){const i=this.getCaretPosition(t,r,a);n.lineTo(i.x1,i.y1),n.lineTo(i.x2,i.y2),n.lineTo(i.x3,i.y3)}getCaretPosition(t,n,r){const{xAlign:a,yAlign:i}=this,{caretSize:o,cornerRadius:A}=r,{topLeft:l,topRight:c,bottomLeft:u,bottomRight:d}=Ka(A),{x:f,y:p}=t,{width:h,height:g}=n;let B,m,v,w,y,b;return i==="center"?(y=p+g/2,a==="left"?(B=f,m=B-o,w=y+o,b=y-o):(B=f+h,m=B+o,w=y-o,b=y+o),v=B):(a==="left"?m=f+Math.max(l,u)+o:a==="right"?m=f+h-Math.max(c,d)-o:m=this.caretX,i==="top"?(w=p,y=w-o,B=m-o,v=m+o):(w=p+g,y=w+o,B=m+o,v=m-o),b=w),{x1:B,x2:m,x3:v,y1:w,y2:y,y3:b}}drawTitle(t,n,r){const a=this.title,i=a.length;let o,A,l;if(i){const c=Is(r.rtl,this.x,this.width);for(t.x=ic(this,r.titleAlign,r),n.textAlign=c.textAlign(r.titleAlign),n.textBaseline="middle",o=ht(r.titleFont),A=r.titleSpacing,n.fillStyle=r.titleColor,n.font=o.string,l=0;l<i;++l)n.fillText(a[l],c.x(t.x),t.y+o.lineHeight/2),t.y+=o.lineHeight+A,l+1===i&&(t.y+=r.titleMarginBottom-A)}}_drawColorBox(t,n,r,a,i){const o=this.labelColors[r],A=this.labelPointStyles[r],{boxHeight:l,boxWidth:c}=i,u=ht(i.bodyFont),d=ic(this,"left",i),f=a.x(d),p=l<u.lineHeight?(u.lineHeight-l)/2:0,h=n.y+p;if(i.usePointStyle){const g={radius:Math.min(c,l)/2,pointStyle:A.pointStyle,rotation:A.rotation,borderWidth:1},B=a.leftForLtr(f,c)+c/2,m=h+l/2;t.strokeStyle=i.multiKeyBackground,t.fillStyle=i.multiKeyBackground,zp(t,g,B,m),t.strokeStyle=o.borderColor,t.fillStyle=o.backgroundColor,zp(t,g,B,m)}else{t.lineWidth=we(o.borderWidth)?Math.max(...Object.values(o.borderWidth)):o.borderWidth||1,t.strokeStyle=o.borderColor,t.setLineDash(o.borderDash||[]),t.lineDashOffset=o.borderDashOffset||0;const g=a.leftForLtr(f,c),B=a.leftForLtr(a.xPlus(f,1),c-2),m=Ka(o.borderRadius);Object.values(m).some(v=>v!==0)?(t.beginPath(),t.fillStyle=i.multiKeyBackground,Gs(t,{x:g,y:h,w:c,h:l,radius:m}),t.fill(),t.stroke(),t.fillStyle=o.backgroundColor,t.beginPath(),Gs(t,{x:B,y:h+1,w:c-2,h:l-2,radius:m}),t.fill()):(t.fillStyle=i.multiKeyBackground,t.fillRect(g,h,c,l),t.strokeRect(g,h,c,l),t.fillStyle=o.backgroundColor,t.fillRect(B,h+1,c-2,l-2))}t.fillStyle=this.labelTextColors[r]}drawBody(t,n,r){const{body:a}=this,{bodySpacing:i,bodyAlign:o,displayColors:A,boxHeight:l,boxWidth:c,boxPadding:u}=r,d=ht(r.bodyFont);let f=d.lineHeight,p=0;const h=Is(r.rtl,this.x,this.width),g=function(E){n.fillText(E,h.x(t.x+p),t.y+f/2),t.y+=f+i},B=h.textAlign(o);let m,v,w,y,b,_,C;for(n.textAlign=o,n.textBaseline="middle",n.font=d.string,t.x=ic(this,B,r),n.fillStyle=r.bodyColor,$e(this.beforeBody,g),p=A&&B!=="right"?o==="center"?c/2+u:c+2+u:0,y=0,_=a.length;y<_;++y){for(m=a[y],v=this.labelTextColors[y],n.fillStyle=v,$e(m.before,g),w=m.lines,A&&w.length&&(this._drawColorBox(n,t,y,h,r),f=Math.max(d.lineHeight,l)),b=0,C=w.length;b<C;++b)g(w[b]),f=d.lineHeight;$e(m.after,g)}p=0,f=d.lineHeight,$e(this.afterBody,g),t.y-=i}drawFooter(t,n,r){const a=this.footer,i=a.length;let o,A;if(i){const l=Is(r.rtl,this.x,this.width);for(t.x=ic(this,r.footerAlign,r),t.y+=r.footerMarginTop,n.textAlign=l.textAlign(r.footerAlign),n.textBaseline="middle",o=ht(r.footerFont),n.fillStyle=r.footerColor,n.font=o.string,A=0;A<i;++A)n.fillText(a[A],l.x(t.x),t.y+o.lineHeight/2),t.y+=o.lineHeight+r.footerSpacing}}drawBackground(t,n,r,a){const{xAlign:i,yAlign:o}=this,{x:A,y:l}=t,{width:c,height:u}=r,{topLeft:d,topRight:f,bottomLeft:p,bottomRight:h}=Ka(a.cornerRadius);n.fillStyle=a.backgroundColor,n.strokeStyle=a.borderColor,n.lineWidth=a.borderWidth,n.beginPath(),n.moveTo(A+d,l),o==="top"&&this.drawCaret(t,n,r,a),n.lineTo(A+c-f,l),n.quadraticCurveTo(A+c,l,A+c,l+f),o==="center"&&i==="right"&&this.drawCaret(t,n,r,a),n.lineTo(A+c,l+u-h),n.quadraticCurveTo(A+c,l+u,A+c-h,l+u),o==="bottom"&&this.drawCaret(t,n,r,a),n.lineTo(A+p,l+u),n.quadraticCurveTo(A,l+u,A,l+u-p),o==="center"&&i==="left"&&this.drawCaret(t,n,r,a),n.lineTo(A,l+d),n.quadraticCurveTo(A,l,A+d,l),n.closePath(),n.fill(),a.borderWidth>0&&n.stroke()}_updateAnimationTarget(t){const n=this.chart,r=this.$animations,a=r&&r.x,i=r&&r.y;if(a||i){const o=Oo[t.position].call(this,this._active,this._eventPosition);if(!o)return;const A=this._size=_y(this,t),l=Object.assign({},o,this._size),c=Cy(n,t,l),u=ky(t,l,c,n);(a._to!==u.x||i._to!==u.y)&&(this.xAlign=c.xAlign,this.yAlign=c.yAlign,this.width=A.width,this.height=A.height,this.caretX=o.x,this.caretY=o.y,this._resolveAnimations().update(this,u))}}_willRender(){return!!this.opacity}draw(t){const n=this.options.setContext(this.getContext());let r=this.opacity;if(!r)return;this._updateAnimationTarget(n);const a={width:this.width,height:this.height},i={x:this.x,y:this.y};r=Math.abs(r)<.001?0:r;const o=St(n.padding),A=this.title.length||this.beforeBody.length||this.body.length||this.afterBody.length||this.footer.length;n.enabled&&A&&(t.save(),t.globalAlpha=r,this.drawBackground(i,t,a,n),n_(t,n.textDirection),i.y+=o.top,this.drawTitle(i,t,n),this.drawBody(i,t,n),this.drawFooter(i,t,n),r_(t,n.textDirection),t.restore())}getActiveElements(){return this._active||[]}setActiveElements(t,n){const r=this._active,a=t.map(({datasetIndex:A,index:l})=>{const c=this.chart.getDatasetMeta(A);if(!c)throw new Error("Cannot find a dataset at index "+A);return{datasetIndex:A,element:c.data[l],index:l}}),i=!mu(r,a),o=this._positionChanged(a,n);(i||o)&&(this._active=a,this._eventPosition=n,this._ignoreReplayEvents=!0,this.update(!0))}handleEvent(t,n,r=!0){if(n&&this._ignoreReplayEvents)return!1;this._ignoreReplayEvents=!1;const a=this.options,i=this._active||[],o=this._getActiveElements(t,i,n,r),A=this._positionChanged(o,t),l=n||!mu(o,i)||A;return l&&(this._active=o,(a.enabled||a.external)&&(this._eventPosition={x:t.x,y:t.y},this.update(!0,n))),l}_getActiveElements(t,n,r,a){const i=this.options;if(t.type==="mouseout")return[];if(!a)return n;const o=this.chart.getElementsAtEventForMode(t,i.mode,i,r);return i.reverse&&o.reverse(),o}_positionChanged(t,n){const{caretX:r,caretY:a,options:i}=this,o=Oo[i.position].call(this,t,n);return o!==!1&&(r!==o.x||a!==o.y)}}R(Jp,"positioners",Oo);var n9={id:"tooltip",_element:Jp,positioners:Oo,afterInit(e,t,n){n&&(e.tooltip=new Jp({chart:e,options:n}))},beforeUpdate(e,t,n){e.tooltip&&e.tooltip.initialize(n)},reset(e,t,n){e.tooltip&&e.tooltip.initialize(n)},afterDraw(e){const t=e.tooltip;if(t&&t._willRender()){const n={tooltip:t};if(e.notifyPlugins("beforeTooltipDraw",{...n,cancelable:!0})===!1)return;t.draw(e.ctx),e.notifyPlugins("afterTooltipDraw",n)}},afterEvent(e,t){if(e.tooltip){const n=t.replay;e.tooltip.handleEvent(t.event,n,t.inChartArea)&&(t.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:(e,t)=>t.bodyFont.size,boxWidth:(e,t)=>t.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:x_},defaultRoutes:{bodyFont:"font",footerFont:"font",titleFont:"font"},descriptors:{_scriptable:e=>e!=="filter"&&e!=="itemSort"&&e!=="external",_indexable:!1,callbacks:{_scriptable:!1,_indexable:!1},animation:{_fallback:!1},animations:{_fallback:"animation"}},additionalOptionScopes:["interaction"]},r9=Object.freeze({__proto__:null,Colors:hN,Decimation:yN,Filler:PN,Legend:zN,SubTitle:jN,Title:GN,Tooltip:n9});const a9=(e,t,n,r)=>(typeof t=="string"?(n=e.push(t)-1,r.unshift({index:n,label:t})):isNaN(t)&&(n=null),n);function i9(e,t,n,r){const a=e.indexOf(t);if(a===-1)return a9(e,t,n,r);const i=e.lastIndexOf(t);return a!==i?n:a}const s9=(e,t)=>e===null?null:Ht(Math.round(e),0,t);function xy(e){const t=this.getLabels();return e>=0&&e<t.length?t[e]:e}class Zp extends Xi{constructor(t){super(t),this._startValue=void 0,this._valueRange=0,this._addedLabels=[]}init(t){const n=this._addedLabels;if(n.length){const r=this.getLabels();for(const{index:a,label:i}of n)r[a]===i&&r.splice(a,1);this._addedLabels=[]}super.init(t)}parse(t,n){if(Ee(t))return null;const r=this.getLabels();return n=isFinite(n)&&r[n]===t?n:i9(r,t,de(n,t),this._addedLabels),s9(n,r.length-1)}determineDataLimits(){const{minDefined:t,maxDefined:n}=this.getUserBounds();let{min:r,max:a}=this.getMinMax(!0);this.options.bounds==="ticks"&&(t||(r=0),n||(a=this.getLabels().length-1)),this.min=r,this.max=a}buildTicks(){const t=this.min,n=this.max,r=this.options.offset,a=[];let i=this.getLabels();i=t===0&&n===i.length-1?i:i.slice(t,n+1),this._valueRange=Math.max(i.length-(r?0:1),1),this._startValue=this.min-(r?.5:0);for(let o=t;o<=n;o++)a.push({value:o});return a}getLabelForValue(t){return xy.call(this,t)}configure(){super.configure(),this.isHorizontal()||(this._reversePixels=!this._reversePixels)}getPixelForValue(t){return typeof t!="number"&&(t=this.parse(t)),t===null?NaN:this.getPixelForDecimal((t-this._startValue)/this._valueRange)}getPixelForTick(t){const n=this.ticks;return t<0||t>n.length-1?null:this.getPixelForValue(n[t].value)}getValueForPixel(t){return Math.round(this._startValue+this.getDecimalForPixel(t)*this._valueRange)}getBasePixel(){return this.bottom}}R(Zp,"id","category"),R(Zp,"defaults",{ticks:{callback:xy}});function o9(e,t){const n=[],{bounds:a,step:i,min:o,max:A,precision:l,count:c,maxTicks:u,maxDigits:d,includeBounds:f}=e,p=i||1,h=u-1,{min:g,max:B}=t,m=!Ee(o),v=!Ee(A),w=!Ee(c),y=(B-g)/(d+1);let b=b0((B-g)/h/p)*p,_,C,E,S;if(b<1e-14&&!m&&!v)return[{value:g},{value:B}];S=Math.ceil(B/b)-Math.floor(g/b),S>h&&(b=b0(S*b/h/p)*p),Ee(l)||(_=Math.pow(10,l),b=Math.ceil(b*_)/_),a==="ticks"?(C=Math.floor(g/b)*b,E=Math.ceil(B/b)*b):(C=g,E=B),m&&v&&i&&nO((A-o)/i,b/1e3)?(S=Math.round(Math.min((A-o)/b,u)),b=(A-o)/S,C=o,E=A):w?(C=m?o:C,E=v?A:E,S=c-1,b=(E-C)/S):(S=(E-C)/b,tA(S,Math.round(S),b/1e3)?S=Math.round(S):S=Math.ceil(S));const U=Math.max(_0(b),_0(C));_=Math.pow(10,Ee(l)?U:l),C=Math.round(C*_)/_,E=Math.round(E*_)/_;let T=0;for(m&&(f&&C!==o?(n.push({value:o}),C<o&&T++,tA(Math.round((C+T*b)*_)/_,o,Fy(o,y,e))&&T++):C<o&&T++);T<S;++T){const F=Math.round((C+T*b)*_)/_;if(v&&F>A)break;n.push({value:F})}return v&&f&&E!==A?n.length&&tA(n[n.length-1].value,A,Fy(A,y,e))?n[n.length-1].value=A:n.push({value:A}):(!v||E===A)&&n.push({value:E}),n}function Fy(e,t,{horizontal:n,minRotation:r}){const a=Ft(r),i=(n?Math.sin(a):Math.cos(a))||.001,o=.75*t*(""+e).length;return Math.min(t/i,o)}class Cu extends Xi{constructor(t){super(t),this.start=void 0,this.end=void 0,this._startValue=void 0,this._endValue=void 0,this._valueRange=0}parse(t,n){return Ee(t)||(typeof t=="number"||t instanceof Number)&&!isFinite(+t)?null:+t}handleTickRangeOptions(){const{beginAtZero:t}=this.options,{minDefined:n,maxDefined:r}=this.getUserBounds();let{min:a,max:i}=this;const o=l=>a=n?a:l,A=l=>i=r?i:l;if(t){const l=_r(a),c=_r(i);l<0&&c<0?A(0):l>0&&c>0&&o(0)}if(a===i){let l=i===0?1:Math.abs(i*.05);A(i+l),t||o(a-l)}this.min=a,this.max=i}getTickLimit(){const t=this.options.ticks;let{maxTicksLimit:n,stepSize:r}=t,a;return r?(a=Math.ceil(this.max/r)-Math.floor(this.min/r)+1,a>1e3&&(console.warn(`scales.${this.id}.ticks.stepSize: ${r} would result generating up to ${a} ticks. Limiting to 1000.`),a=1e3)):(a=this.computeTickLimit(),n=n||11),n&&(a=Math.min(n,a)),a}computeTickLimit(){return Number.POSITIVE_INFINITY}buildTicks(){const t=this.options,n=t.ticks;let r=this.getTickLimit();r=Math.max(2,r);const a={maxTicks:r,bounds:t.bounds,min:t.min,max:t.max,precision:n.precision,step:n.stepSize,count:n.count,maxDigits:this._maxDigits(),horizontal:this.isHorizontal(),minRotation:n.minRotation||0,includeBounds:n.includeBounds!==!1},i=this._range||this,o=o9(a,i);return t.bounds==="ticks"&&Nb(o,this,"value"),t.reverse?(o.reverse(),this.start=this.max,this.end=this.min):(this.start=this.min,this.end=this.max),o}configure(){const t=this.ticks;let n=this.min,r=this.max;if(super.configure(),this.options.offset&&t.length){const a=(r-n)/Math.max(t.length-1,1)/2;n-=a,r+=a}this._startValue=n,this._endValue=r,this._valueRange=r-n}getLabelForValue(t){return ul(t,this.chart.options.locale,this.options.ticks.format)}}class eh extends Cu{determineDataLimits(){const{min:t,max:n}=this.getMinMax(!0);this.min=ft(t)?t:0,this.max=ft(n)?n:1,this.handleTickRangeOptions()}computeTickLimit(){const t=this.isHorizontal(),n=t?this.width:this.height,r=Ft(this.options.ticks.minRotation),a=(t?Math.sin(r):Math.cos(r))||.001,i=this._resolveTickFontOptions(0);return Math.ceil(n/Math.min(40,i.lineHeight/a))}getPixelForValue(t){return t===null?NaN:this.getPixelForDecimal((t-this._startValue)/this._valueRange)}getValueForPixel(t){return this._startValue+this.getDecimalForPixel(t)*this._valueRange}}R(eh,"id","linear"),R(eh,"defaults",{ticks:{callback:ld.formatters.numeric}});const MA=e=>Math.floor(La(e)),pi=(e,t)=>Math.pow(10,MA(e)+t);function Iy(e){return e/Math.pow(10,MA(e))===1}function Ty(e,t,n){const r=Math.pow(10,n),a=Math.floor(e/r);return Math.ceil(t/r)-a}function A9(e,t){const n=t-e;let r=MA(n);for(;Ty(e,t,r)>10;)r++;for(;Ty(e,t,r)<10;)r--;return Math.min(r,MA(e))}function l9(e,{min:t,max:n}){t=Cn(e.min,t);const r=[],a=MA(t);let i=A9(t,n),o=i<0?Math.pow(10,Math.abs(i)):1;const A=Math.pow(10,i),l=a>i?Math.pow(10,a):0,c=Math.round((t-l)*o)/o,u=Math.floor((t-l)/A/10)*A*10;let d=Math.floor((c-u)/Math.pow(10,i)),f=Cn(e.min,Math.round((l+u+d*Math.pow(10,i))*o)/o);for(;f<n;)r.push({value:f,major:Iy(f),significand:d}),d>=10?d=d<15?15:20:d++,d>=20&&(i++,d=2,o=i>=0?1:o),f=Math.round((l+u+d*Math.pow(10,i))*o)/o;const p=Cn(e.max,f);return r.push({value:p,major:Iy(p),significand:d}),r}class th extends Xi{constructor(t){super(t),this.start=void 0,this.end=void 0,this._startValue=void 0,this._valueRange=0}parse(t,n){const r=Cu.prototype.parse.apply(this,[t,n]);if(r===0){this._zero=!0;return}return ft(r)&&r>0?r:null}determineDataLimits(){const{min:t,max:n}=this.getMinMax(!0);this.min=ft(t)?Math.max(0,t):null,this.max=ft(n)?Math.max(0,n):null,this.options.beginAtZero&&(this._zero=!0),this._zero&&this.min!==this._suggestedMin&&!ft(this._userMin)&&(this.min=t===pi(this.min,0)?pi(this.min,-1):pi(this.min,0)),this.handleTickRangeOptions()}handleTickRangeOptions(){const{minDefined:t,maxDefined:n}=this.getUserBounds();let r=this.min,a=this.max;const i=A=>r=t?r:A,o=A=>a=n?a:A;r===a&&(r<=0?(i(1),o(10)):(i(pi(r,-1)),o(pi(a,1)))),r<=0&&i(pi(a,-1)),a<=0&&o(pi(r,1)),this.min=r,this.max=a}buildTicks(){const t=this.options,n={min:this._userMin,max:this._userMax},r=l9(n,this);return t.bounds==="ticks"&&Nb(r,this,"value"),t.reverse?(r.reverse(),this.start=this.max,this.end=this.min):(this.start=this.min,this.end=this.max),r}getLabelForValue(t){return t===void 0?"0":ul(t,this.chart.options.locale,this.options.ticks.format)}configure(){const t=this.min;super.configure(),this._startValue=La(t),this._valueRange=La(this.max)-La(t)}getPixelForValue(t){return(t===void 0||t===0)&&(t=this.min),t===null||isNaN(t)?NaN:this.getPixelForDecimal(t===this.min?0:(La(t)-this._startValue)/this._valueRange)}getValueForPixel(t){const n=this.getDecimalForPixel(t);return Math.pow(10,this._startValue+n*this._valueRange)}}R(th,"id","logarithmic"),R(th,"defaults",{ticks:{callback:ld.formatters.logarithmic,major:{enabled:!0}}});function nh(e){const t=e.ticks;if(t.display&&e.display){const n=St(t.backdropPadding);return de(t.font&&t.font.size,pt.font.size)+n.height}return 0}function c9(e,t,n){return n=Me(n)?n:[n],{w:yO(e,t.string,n),h:n.length*t.lineHeight}}function Dy(e,t,n,r,a){return e===r||e===a?{start:t-n/2,end:t+n/2}:e<r||e>a?{start:t-n,end:t}:{start:t,end:t+n}}function u9(e){const t={l:e.left+e._padding.left,r:e.right-e._padding.right,t:e.top+e._padding.top,b:e.bottom-e._padding.bottom},n=Object.assign({},t),r=[],a=[],i=e._pointLabels.length,o=e.options.pointLabels,A=o.centerPointLabels?Qe/i:0;for(let l=0;l<i;l++){const c=o.setContext(e.getPointLabelContext(l));a[l]=c.padding;const u=e.getPointPosition(l,e.drawingArea+a[l],A),d=ht(c.font),f=c9(e.ctx,d,e._pointLabels[l]);r[l]=f;const p=En(e.getIndexAngle(l)+A),h=Math.round(Ad(p)),g=Dy(h,u.x,f.w,0,180),B=Dy(h,u.y,f.h,90,270);d9(n,t,p,g,B)}e.setCenterPoint(t.l-n.l,n.r-t.r,t.t-n.t,n.b-t.b),e._pointLabelItems=h9(e,r,a)}function d9(e,t,n,r,a){const i=Math.abs(Math.sin(n)),o=Math.abs(Math.cos(n));let A=0,l=0;r.start<t.l?(A=(t.l-r.start)/i,e.l=Math.min(e.l,t.l-A)):r.end>t.r&&(A=(r.end-t.r)/i,e.r=Math.max(e.r,t.r+A)),a.start<t.t?(l=(t.t-a.start)/o,e.t=Math.min(e.t,t.t-l)):a.end>t.b&&(l=(a.end-t.b)/o,e.b=Math.max(e.b,t.b+l))}function f9(e,t,n){const r=e.drawingArea,{extra:a,additionalAngle:i,padding:o,size:A}=n,l=e.getPointPosition(t,r+a+o,i),c=Math.round(Ad(En(l.angle+et))),u=v9(l.y,A.h,c),d=m9(c),f=g9(l.x,A.w,d);return{visible:!0,x:l.x,y:u,textAlign:d,left:f,top:u,right:f+A.w,bottom:u+A.h}}function p9(e,t){if(!t)return!0;const{left:n,top:r,right:a,bottom:i}=e;return!(Jr({x:n,y:r},t)||Jr({x:n,y:i},t)||Jr({x:a,y:r},t)||Jr({x:a,y:i},t))}function h9(e,t,n){const r=[],a=e._pointLabels.length,i=e.options,{centerPointLabels:o,display:A}=i.pointLabels,l={extra:nh(i)/2,additionalAngle:o?Qe/a:0};let c;for(let u=0;u<a;u++){l.padding=n[u],l.size=t[u];const d=f9(e,u,l);r.push(d),A==="auto"&&(d.visible=p9(d,c),d.visible&&(c=d))}return r}function m9(e){return e===0||e===180?"center":e<180?"left":"right"}function g9(e,t,n){return n==="right"?e-=t:n==="center"&&(e-=t/2),e}function v9(e,t,n){return n===90||n===270?e-=t/2:(n>270||n<90)&&(e-=t),e}function y9(e,t,n){const{left:r,top:a,right:i,bottom:o}=n,{backdropColor:A}=t;if(!Ee(A)){const l=Ka(t.borderRadius),c=St(t.backdropPadding);e.fillStyle=A;const u=r-c.left,d=a-c.top,f=i-r+c.width,p=o-a+c.height;Object.values(l).some(h=>h!==0)?(e.beginPath(),Gs(e,{x:u,y:d,w:f,h:p,radius:l}),e.fill()):e.fillRect(u,d,f,p)}}function B9(e,t){const{ctx:n,options:{pointLabels:r}}=e;for(let a=t-1;a>=0;a--){const i=e._pointLabelItems[a];if(!i.visible)continue;const o=r.setContext(e.getPointLabelContext(a));y9(n,o,i);const A=ht(o.font),{x:l,y:c,textAlign:u}=i;$i(n,e._pointLabels[a],l,c+A.lineHeight/2,A,{color:o.color,textAlign:u,textBaseline:"middle"})}}function F_(e,t,n,r){const{ctx:a}=e;if(n)a.arc(e.xCenter,e.yCenter,t,0,Ze);else{let i=e.getPointPosition(0,t);a.moveTo(i.x,i.y);for(let o=1;o<r;o++)i=e.getPointPosition(o,t),a.lineTo(i.x,i.y)}}function w9(e,t,n,r,a){const i=e.ctx,o=t.circular,{color:A,lineWidth:l}=t;!o&&!r||!A||!l||n<0||(i.save(),i.strokeStyle=A,i.lineWidth=l,i.setLineDash(a.dash),i.lineDashOffset=a.dashOffset,i.beginPath(),F_(e,n,o,r),i.closePath(),i.stroke(),i.restore())}function b9(e,t,n){return Ai(e,{label:n,index:t,type:"pointLabel"})}class Mo extends Cu{constructor(t){super(t),this.xCenter=void 0,this.yCenter=void 0,this.drawingArea=void 0,this._pointLabels=[],this._pointLabelItems=[]}setDimensions(){const t=this._padding=St(nh(this.options)/2),n=this.width=this.maxWidth-t.width,r=this.height=this.maxHeight-t.height;this.xCenter=Math.floor(this.left+n/2+t.left),this.yCenter=Math.floor(this.top+r/2+t.top),this.drawingArea=Math.floor(Math.min(n,r)/2)}determineDataLimits(){const{min:t,max:n}=this.getMinMax(!1);this.min=ft(t)&&!isNaN(t)?t:0,this.max=ft(n)&&!isNaN(n)?n:0,this.handleTickRangeOptions()}computeTickLimit(){return Math.ceil(this.drawingArea/nh(this.options))}generateTickLabels(t){Cu.prototype.generateTickLabels.call(this,t),this._pointLabels=this.getLabels().map((n,r)=>{const a=Re(this.options.pointLabels.callback,[n,r],this);return a||a===0?a:""}).filter((n,r)=>this.chart.getDataVisibility(r))}fit(){const t=this.options;t.display&&t.pointLabels.display?u9(this):this.setCenterPoint(0,0,0,0)}setCenterPoint(t,n,r,a){this.xCenter+=Math.floor((t-n)/2),this.yCenter+=Math.floor((r-a)/2),this.drawingArea-=Math.min(this.drawingArea/2,Math.max(t,n,r,a))}getIndexAngle(t){const n=Ze/(this._pointLabels.length||1),r=this.options.startAngle||0;return En(t*n+Ft(r))}getDistanceFromCenterForValue(t){if(Ee(t))return NaN;const n=this.drawingArea/(this.max-this.min);return this.options.reverse?(this.max-t)*n:(t-this.min)*n}getValueForDistanceFromCenter(t){if(Ee(t))return NaN;const n=t/(this.drawingArea/(this.max-this.min));return this.options.reverse?this.max-n:this.min+n}getPointLabelContext(t){const n=this._pointLabels||[];if(t>=0&&t<n.length){const r=n[t];return b9(this.getContext(),t,r)}}getPointPosition(t,n,r=0){const a=this.getIndexAngle(t)-et+r;return{x:Math.cos(a)*n+this.xCenter,y:Math.sin(a)*n+this.yCenter,angle:a}}getPointPositionForValue(t,n){return this.getPointPosition(t,this.getDistanceFromCenterForValue(n))}getBasePosition(t){return this.getPointPositionForValue(t||0,this.getBaseValue())}getPointLabelPosition(t){const{left:n,top:r,right:a,bottom:i}=this._pointLabelItems[t];return{left:n,top:r,right:a,bottom:i}}drawBackground(){const{backgroundColor:t,grid:{circular:n}}=this.options;if(t){const r=this.ctx;r.save(),r.beginPath(),F_(this,this.getDistanceFromCenterForValue(this._endValue),n,this._pointLabels.length),r.closePath(),r.fillStyle=t,r.fill(),r.restore()}}drawGrid(){const t=this.ctx,n=this.options,{angleLines:r,grid:a,border:i}=n,o=this._pointLabels.length;let A,l,c;if(n.pointLabels.display&&B9(this,o),a.display&&this.ticks.forEach((u,d)=>{if(d!==0){l=this.getDistanceFromCenterForValue(u.value);const f=this.getContext(d),p=a.setContext(f),h=i.setContext(f);w9(this,p,l,o,h)}}),r.display){for(t.save(),A=o-1;A>=0;A--){const u=r.setContext(this.getPointLabelContext(A)),{color:d,lineWidth:f}=u;!f||!d||(t.lineWidth=f,t.strokeStyle=d,t.setLineDash(u.borderDash),t.lineDashOffset=u.borderDashOffset,l=this.getDistanceFromCenterForValue(n.ticks.reverse?this.min:this.max),c=this.getPointPosition(A,l),t.beginPath(),t.moveTo(this.xCenter,this.yCenter),t.lineTo(c.x,c.y),t.stroke())}t.restore()}}drawBorder(){}drawLabels(){const t=this.ctx,n=this.options,r=n.ticks;if(!r.display)return;const a=this.getIndexAngle(0);let i,o;t.save(),t.translate(this.xCenter,this.yCenter),t.rotate(a),t.textAlign="center",t.textBaseline="middle",this.ticks.forEach((A,l)=>{if(l===0&&!n.reverse)return;const c=r.setContext(this.getContext(l)),u=ht(c.font);if(i=this.getDistanceFromCenterForValue(this.ticks[l].value),c.showLabelBackdrop){t.font=u.string,o=t.measureText(A.label).width,t.fillStyle=c.backdropColor;const d=St(c.backdropPadding);t.fillRect(-o/2-d.left,-i-u.size/2-d.top,o+d.width,u.size+d.height)}$i(t,A.label,0,-i,u,{color:c.color})}),t.restore()}drawTitle(){}}R(Mo,"id","radialLinear"),R(Mo,"defaults",{display:!0,animate:!0,position:"chartArea",angleLines:{display:!0,lineWidth:1,borderDash:[],borderDashOffset:0},grid:{circular:!1},startAngle:0,ticks:{showLabelBackdrop:!0,callback:ld.formatters.numeric},pointLabels:{backdropColor:void 0,backdropPadding:2,display:!0,font:{size:10},callback(t){return t},padding:5,centerPointLabels:!1}}),R(Mo,"defaultRoutes",{"angleLines.color":"borderColor","pointLabels.color":"color","ticks.color":"color"}),R(Mo,"descriptors",{angleLines:{_fallback:"grid"}});const ud={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}},gn=Object.keys(ud);function _9(e,t){return e-t}function Uy(e,t){if(Ee(t))return null;const n=e._adapter,{parser:r,round:a,isoWeekday:i}=e._parseOpts;let o=t;return typeof r=="function"&&(o=r(o)),ft(o)||(o=typeof r=="string"?n.parse(o,r):n.parse(o)),o===null?null:(a&&(o=a==="week"&&(ti(i)||i===!0)?n.startOf(o,"isoWeek",i):n.startOf(o,a)),+o)}function Qy(e,t,n,r){const a=gn.length;for(let i=gn.indexOf(e);i<a-1;++i){const o=ud[gn[i]],A=o.steps?o.steps:Number.MAX_SAFE_INTEGER;if(o.common&&Math.ceil((n-t)/(A*o.size))<=r)return gn[i]}return gn[a-1]}function C9(e,t,n,r,a){for(let i=gn.length-1;i>=gn.indexOf(n);i--){const o=gn[i];if(ud[o].common&&e._adapter.diff(a,r,o)>=t-1)return o}return gn[n?gn.indexOf(n):0]}function k9(e){for(let t=gn.indexOf(e)+1,n=gn.length;t<n;++t)if(ud[gn[t]].common)return gn[t]}function Ly(e,t,n){if(!n)e[t]=!0;else if(n.length){const{lo:r,hi:a}=Ym(n,t),i=n[r]>=t?n[r]:n[a];e[i]=!0}}function E9(e,t,n,r){const a=e._adapter,i=+a.startOf(t[0].value,r),o=t[t.length-1].value;let A,l;for(A=i;A<=o;A=+a.add(A,1,r))l=n[A],l>=0&&(t[l].major=!0);return t}function Oy(e,t,n){const r=[],a={},i=t.length;let o,A;for(o=0;o<i;++o)A=t[o],a[A]=o,r.push({value:A,major:!1});return i===0||!n?r:E9(e,r,a,n)}class NA extends Xi{constructor(t){super(t),this._cache={data:[],labels:[],all:[]},this._unit="day",this._majorUnit=void 0,this._offsets={},this._normalized=!1,this._parseOpts=void 0}init(t,n={}){const r=t.time||(t.time={}),a=this._adapter=new l_._date(t.adapters.date);a.init(n),eA(r.displayFormats,a.formats()),this._parseOpts={parser:r.parser,round:r.round,isoWeekday:r.isoWeekday},super.init(t),this._normalized=n.normalized}parse(t,n){return t===void 0?null:Uy(this,t)}beforeLayout(){super.beforeLayout(),this._cache={data:[],labels:[],all:[]}}determineDataLimits(){const t=this.options,n=this._adapter,r=t.time.unit||"day";let{min:a,max:i,minDefined:o,maxDefined:A}=this.getUserBounds();function l(c){!o&&!isNaN(c.min)&&(a=Math.min(a,c.min)),!A&&!isNaN(c.max)&&(i=Math.max(i,c.max))}(!o||!A)&&(l(this._getLabelBounds()),(t.bounds!=="ticks"||t.ticks.source!=="labels")&&l(this.getMinMax(!1))),a=ft(a)&&!isNaN(a)?a:+n.startOf(Date.now(),r),i=ft(i)&&!isNaN(i)?i:+n.endOf(Date.now(),r)+1,this.min=Math.min(a,i-1),this.max=Math.max(a+1,i)}_getLabelBounds(){const t=this.getLabelTimestamps();let n=Number.POSITIVE_INFINITY,r=Number.NEGATIVE_INFINITY;return t.length&&(n=t[0],r=t[t.length-1]),{min:n,max:r}}buildTicks(){const t=this.options,n=t.time,r=t.ticks,a=r.source==="labels"?this.getLabelTimestamps():this._generate();t.bounds==="ticks"&&a.length&&(this.min=this._userMin||a[0],this.max=this._userMax||a[a.length-1]);const i=this.min,o=this.max,A=sO(a,i,o);return this._unit=n.unit||(r.autoSkip?Qy(n.minUnit,this.min,this.max,this._getLabelCapacity(i)):C9(this,A.length,n.minUnit,this.min,this.max)),this._majorUnit=!r.major.enabled||this._unit==="year"?void 0:k9(this._unit),this.initOffsets(a),t.reverse&&A.reverse(),Oy(this,A,this._majorUnit)}afterAutoSkip(){this.options.offsetAfterAutoskip&&this.initOffsets(this.ticks.map(t=>+t.value))}initOffsets(t=[]){let n=0,r=0,a,i;this.options.offset&&t.length&&(a=this.getDecimalForValue(t[0]),t.length===1?n=1-a:n=(this.getDecimalForValue(t[1])-a)/2,i=this.getDecimalForValue(t[t.length-1]),t.length===1?r=i:r=(i-this.getDecimalForValue(t[t.length-2]))/2);const o=t.length<3?.5:.25;n=Ht(n,0,o),r=Ht(r,0,o),this._offsets={start:n,end:r,factor:1/(n+1+r)}}_generate(){const t=this._adapter,n=this.min,r=this.max,a=this.options,i=a.time,o=i.unit||Qy(i.minUnit,n,r,this._getLabelCapacity(n)),A=de(a.ticks.stepSize,1),l=o==="week"?i.isoWeekday:!1,c=ti(l)||l===!0,u={};let d=n,f,p;if(c&&(d=+t.startOf(d,"isoWeek",l)),d=+t.startOf(d,c?"day":o),t.diff(r,n,o)>1e5*A)throw new Error(n+" and "+r+" are too far apart with stepSize of "+A+" "+o);const h=a.ticks.source==="data"&&this.getDataTimestamps();for(f=d,p=0;f<r;f=+t.add(f,A,o),p++)Ly(u,f,h);return(f===r||a.bounds==="ticks"||p===1)&&Ly(u,f,h),Object.keys(u).sort((g,B)=>g-B).map(g=>+g)}getLabelForValue(t){const n=this._adapter,r=this.options.time;return r.tooltipFormat?n.format(t,r.tooltipFormat):n.format(t,r.displayFormats.datetime)}format(t,n){const a=this.options.time.displayFormats,i=this._unit,o=n||a[i];return this._adapter.format(t,o)}_tickFormatFunction(t,n,r,a){const i=this.options,o=i.ticks.callback;if(o)return Re(o,[t,n,r],this);const A=i.time.displayFormats,l=this._unit,c=this._majorUnit,u=l&&A[l],d=c&&A[c],f=r[n],p=c&&d&&f&&f.major;return this._adapter.format(t,a||(p?d:u))}generateTickLabels(t){let n,r,a;for(n=0,r=t.length;n<r;++n)a=t[n],a.label=this._tickFormatFunction(a.value,n,t)}getDecimalForValue(t){return t===null?NaN:(t-this.min)/(this.max-this.min)}getPixelForValue(t){const n=this._offsets,r=this.getDecimalForValue(t);return this.getPixelForDecimal((n.start+r)*n.factor)}getValueForPixel(t){const n=this._offsets,r=this.getDecimalForPixel(t)/n.factor-n.end;return this.min+r*(this.max-this.min)}_getLabelSize(t){const n=this.options.ticks,r=this.ctx.measureText(t).width,a=Ft(this.isHorizontal()?n.maxRotation:n.minRotation),i=Math.cos(a),o=Math.sin(a),A=this._resolveTickFontOptions(0).size;return{w:r*i+A*o,h:r*o+A*i}}_getLabelCapacity(t){const n=this.options.time,r=n.displayFormats,a=r[n.unit]||r.millisecond,i=this._tickFormatFunction(t,0,Oy(this,[t],this._majorUnit),a),o=this._getLabelSize(i),A=Math.floor(this.isHorizontal()?this.width/o.w:this.height/o.h)-1;return A>0?A:1}getDataTimestamps(){let t=this._cache.data||[],n,r;if(t.length)return t;const a=this.getMatchingVisibleMetas();if(this._normalized&&a.length)return this._cache.data=a[0].controller.getAllParsedValues(this);for(n=0,r=a.length;n<r;++n)t=t.concat(a[n].controller.getAllParsedValues(this));return this._cache.data=this.normalize(t)}getLabelTimestamps(){const t=this._cache.labels||[];let n,r;if(t.length)return t;const a=this.getLabels();for(n=0,r=a.length;n<r;++n)t.push(Uy(this,a[n]));return this._cache.labels=this._normalized?t:this.normalize(t)}normalize(t){return Rb(t.sort(_9))}}R(NA,"id","time"),R(NA,"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 sc(e,t,n){let r=0,a=e.length-1,i,o,A,l;n?(t>=e[r].pos&&t<=e[a].pos&&({lo:r,hi:a}=Xr(e,"pos",t)),{pos:i,time:A}=e[r],{pos:o,time:l}=e[a]):(t>=e[r].time&&t<=e[a].time&&({lo:r,hi:a}=Xr(e,"time",t)),{time:i,pos:A}=e[r],{time:o,pos:l}=e[a]);const c=o-i;return c?A+(l-A)*(t-i)/c:A}class rh extends NA{constructor(t){super(t),this._table=[],this._minPos=void 0,this._tableRange=void 0}initOffsets(){const t=this._getTimestampsForTable(),n=this._table=this.buildLookupTable(t);this._minPos=sc(n,this.min),this._tableRange=sc(n,this.max)-this._minPos,super.initOffsets(t)}buildLookupTable(t){const{min:n,max:r}=this,a=[],i=[];let o,A,l,c,u;for(o=0,A=t.length;o<A;++o)c=t[o],c>=n&&c<=r&&a.push(c);if(a.length<2)return[{time:n,pos:0},{time:r,pos:1}];for(o=0,A=a.length;o<A;++o)u=a[o+1],l=a[o-1],c=a[o],Math.round((u+l)/2)!==c&&i.push({time:c,pos:o/(A-1)});return i}_getTimestampsForTable(){let t=this._cache.all||[];if(t.length)return t;const n=this.getDataTimestamps(),r=this.getLabelTimestamps();return n.length&&r.length?t=this.normalize(n.concat(r)):t=n.length?n:r,t=this._cache.all=t,t}getDecimalForValue(t){return(sc(this._table,t)-this._minPos)/this._tableRange}getValueForPixel(t){const n=this._offsets,r=this.getDecimalForPixel(t)/n.factor-n.end;return sc(this._table,r*this._tableRange+this._minPos,!0)}}R(rh,"id","timeseries"),R(rh,"defaults",NA.defaults);var S9=Object.freeze({__proto__:null,CategoryScale:Zp,LinearScale:eh,LogarithmicScale:th,RadialLinearScale:Mo,TimeScale:NA,TimeSeriesScale:rh});const Tr=[QM,lN,r9,S9];var x9=typeof global=="object"&&global&&global.Object===Object&&global;const I_=x9;var F9=typeof self=="object"&&self&&self.Object===Object&&self,I9=I_||F9||Function("return this")();const Dr=I9;var T9=Dr.Symbol;const ni=T9;var T_=Object.prototype,D9=T_.hasOwnProperty,U9=T_.toString,Co=ni?ni.toStringTag:void 0;function Q9(e){var t=D9.call(e,Co),n=e[Co];try{e[Co]=void 0;var r=!0}catch{}var a=U9.call(e);return r&&(t?e[Co]=n:delete e[Co]),a}var L9=Object.prototype,O9=L9.toString;function M9(e){return O9.call(e)}var N9="[object Null]",P9="[object Undefined]",My=ni?ni.toStringTag:void 0;function hl(e){return e==null?e===void 0?P9:N9:My&&My in Object(e)?Q9(e):M9(e)}function Ki(e){return e!=null&&typeof e=="object"}var H9=Array.isArray;const qs=H9;function ml(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}var R9="[object AsyncFunction]",V9="[object Function]",$9="[object GeneratorFunction]",K9="[object Proxy]";function D_(e){if(!ml(e))return!1;var t=hl(e);return t==V9||t==$9||t==R9||t==K9}var z9=Dr["__core-js_shared__"];const Uf=z9;var Ny=function(){var e=/[^.]+$/.exec(Uf&&Uf.keys&&Uf.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function W9(e){return!!Ny&&Ny in e}var G9=Function.prototype,j9=G9.toString;function Ji(e){if(e!=null){try{return j9.call(e)}catch{}try{return e+""}catch{}}return""}var Y9=/[\\^$.*+?()[\]{}|]/g,q9=/^\[object .+?Constructor\]$/,X9=Function.prototype,J9=Object.prototype,Z9=X9.toString,eP=J9.hasOwnProperty,tP=RegExp("^"+Z9.call(eP).replace(Y9,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function nP(e){if(!ml(e)||W9(e))return!1;var t=D_(e)?tP:q9;return t.test(Ji(e))}function rP(e,t){return e==null?void 0:e[t]}function Zi(e,t){var n=rP(e,t);return nP(n)?n:void 0}var aP=Zi(Dr,"WeakMap");const ah=aP;var Py=Object.create,iP=function(){function e(){}return function(t){if(!ml(t))return{};if(Py)return Py(t);e.prototype=t;var n=new e;return e.prototype=void 0,n}}();const sP=iP;function oP(e,t){var n=-1,r=e.length;for(t||(t=Array(r));++n<r;)t[n]=e[n];return t}var AP=function(){try{var e=Zi(Object,"defineProperty");return e({},"",{}),e}catch{}}();const Hy=AP;function lP(e,t){for(var n=-1,r=e==null?0:e.length;++n<r&&t(e[n],n,e)!==!1;);return e}var cP=9007199254740991,uP=/^(?:0|[1-9]\d*)$/;function dP(e,t){var n=typeof e;return t=t??cP,!!t&&(n=="number"||n!="symbol"&&uP.test(e))&&e>-1&&e%1==0&&e<t}function U_(e,t,n){t=="__proto__"&&Hy?Hy(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}function og(e,t){return e===t||e!==e&&t!==t}var fP=Object.prototype,pP=fP.hasOwnProperty;function Q_(e,t,n){var r=e[t];(!(pP.call(e,t)&&og(r,n))||n===void 0&&!(t in e))&&U_(e,t,n)}function dd(e,t,n,r){var a=!n;n||(n={});for(var i=-1,o=t.length;++i<o;){var A=t[i],l=r?r(n[A],e[A],A,n,e):void 0;l===void 0&&(l=e[A]),a?U_(n,A,l):Q_(n,A,l)}return n}var hP=9007199254740991;function L_(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=hP}function Ag(e){return e!=null&&L_(e.length)&&!D_(e)}var mP=Object.prototype;function fd(e){var t=e&&e.constructor,n=typeof t=="function"&&t.prototype||mP;return e===n}function gP(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}var vP="[object Arguments]";function Ry(e){return Ki(e)&&hl(e)==vP}var O_=Object.prototype,yP=O_.hasOwnProperty,BP=O_.propertyIsEnumerable,wP=Ry(function(){return arguments}())?Ry:function(e){return Ki(e)&&yP.call(e,"callee")&&!BP.call(e,"callee")};const M_=wP;function bP(){return!1}var N_=typeof exports=="object"&&exports&&!exports.nodeType&&exports,Vy=N_&&typeof module=="object"&&module&&!module.nodeType&&module,_P=Vy&&Vy.exports===N_,$y=_P?Dr.Buffer:void 0,CP=$y?$y.isBuffer:void 0,kP=CP||bP;const PA=kP;var EP="[object Arguments]",SP="[object Array]",xP="[object Boolean]",FP="[object Date]",IP="[object Error]",TP="[object Function]",DP="[object Map]",UP="[object Number]",QP="[object Object]",LP="[object RegExp]",OP="[object Set]",MP="[object String]",NP="[object WeakMap]",PP="[object ArrayBuffer]",HP="[object DataView]",RP="[object Float32Array]",VP="[object Float64Array]",$P="[object Int8Array]",KP="[object Int16Array]",zP="[object Int32Array]",WP="[object Uint8Array]",GP="[object Uint8ClampedArray]",jP="[object Uint16Array]",YP="[object Uint32Array]",at={};at[RP]=at[VP]=at[$P]=at[KP]=at[zP]=at[WP]=at[GP]=at[jP]=at[YP]=!0;at[EP]=at[SP]=at[PP]=at[xP]=at[HP]=at[FP]=at[IP]=at[TP]=at[DP]=at[UP]=at[QP]=at[LP]=at[OP]=at[MP]=at[NP]=!1;function qP(e){return Ki(e)&&L_(e.length)&&!!at[hl(e)]}function lg(e){return function(t){return e(t)}}var P_=typeof exports=="object"&&exports&&!exports.nodeType&&exports,oA=P_&&typeof module=="object"&&module&&!module.nodeType&&module,XP=oA&&oA.exports===P_,Qf=XP&&I_.process,JP=function(){try{var e=oA&&oA.require&&oA.require("util").types;return e||Qf&&Qf.binding&&Qf.binding("util")}catch{}}();const Xs=JP;var Ky=Xs&&Xs.isTypedArray,ZP=Ky?lg(Ky):qP;const cg=ZP;var eH=Object.prototype,tH=eH.hasOwnProperty;function H_(e,t){var n=qs(e),r=!n&&M_(e),a=!n&&!r&&PA(e),i=!n&&!r&&!a&&cg(e),o=n||r||a||i,A=o?gP(e.length,String):[],l=A.length;for(var c in e)(t||tH.call(e,c))&&!(o&&(c=="length"||a&&(c=="offset"||c=="parent")||i&&(c=="buffer"||c=="byteLength"||c=="byteOffset")||dP(c,l)))&&A.push(c);return A}function R_(e,t){return function(n){return e(t(n))}}var nH=R_(Object.keys,Object);const rH=nH;var aH=Object.prototype,iH=aH.hasOwnProperty;function V_(e){if(!fd(e))return rH(e);var t=[];for(var n in Object(e))iH.call(e,n)&&n!="constructor"&&t.push(n);return t}function ug(e){return Ag(e)?H_(e):V_(e)}function sH(e){var t=[];if(e!=null)for(var n in Object(e))t.push(n);return t}var oH=Object.prototype,AH=oH.hasOwnProperty;function lH(e){if(!ml(e))return sH(e);var t=fd(e),n=[];for(var r in e)r=="constructor"&&(t||!AH.call(e,r))||n.push(r);return n}function dg(e){return Ag(e)?H_(e,!0):lH(e)}var cH=Zi(Object,"create");const HA=cH;function uH(){this.__data__=HA?HA(null):{},this.size=0}function dH(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}var fH="__lodash_hash_undefined__",pH=Object.prototype,hH=pH.hasOwnProperty;function mH(e){var t=this.__data__;if(HA){var n=t[e];return n===fH?void 0:n}return hH.call(t,e)?t[e]:void 0}var gH=Object.prototype,vH=gH.hasOwnProperty;function yH(e){var t=this.__data__;return HA?t[e]!==void 0:vH.call(t,e)}var BH="__lodash_hash_undefined__";function wH(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=HA&&t===void 0?BH:t,this}function zi(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}zi.prototype.clear=uH;zi.prototype.delete=dH;zi.prototype.get=mH;zi.prototype.has=yH;zi.prototype.set=wH;function bH(){this.__data__=[],this.size=0}function pd(e,t){for(var n=e.length;n--;)if(og(e[n][0],t))return n;return-1}var _H=Array.prototype,CH=_H.splice;function kH(e){var t=this.__data__,n=pd(t,e);if(n<0)return!1;var r=t.length-1;return n==r?t.pop():CH.call(t,n,1),--this.size,!0}function EH(e){var t=this.__data__,n=pd(t,e);return n<0?void 0:t[n][1]}function SH(e){return pd(this.__data__,e)>-1}function xH(e,t){var n=this.__data__,r=pd(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this}function ga(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}ga.prototype.clear=bH;ga.prototype.delete=kH;ga.prototype.get=EH;ga.prototype.has=SH;ga.prototype.set=xH;var FH=Zi(Dr,"Map");const RA=FH;function IH(){this.size=0,this.__data__={hash:new zi,map:new(RA||ga),string:new zi}}function TH(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}function hd(e,t){var n=e.__data__;return TH(t)?n[typeof t=="string"?"string":"hash"]:n.map}function DH(e){var t=hd(this,e).delete(e);return this.size-=t?1:0,t}function UH(e){return hd(this,e).get(e)}function QH(e){return hd(this,e).has(e)}function LH(e,t){var n=hd(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this}function es(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}es.prototype.clear=IH;es.prototype.delete=DH;es.prototype.get=UH;es.prototype.has=QH;es.prototype.set=LH;function $_(e,t){for(var n=-1,r=t.length,a=e.length;++n<r;)e[a+n]=t[n];return e}var OH=R_(Object.getPrototypeOf,Object);const K_=OH;function MH(){this.__data__=new ga,this.size=0}function NH(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}function PH(e){return this.__data__.get(e)}function HH(e){return this.__data__.has(e)}var RH=200;function VH(e,t){var n=this.__data__;if(n instanceof ga){var r=n.__data__;if(!RA||r.length<RH-1)return r.push([e,t]),this.size=++n.size,this;n=this.__data__=new es(r)}return n.set(e,t),this.size=n.size,this}function na(e){var t=this.__data__=new ga(e);this.size=t.size}na.prototype.clear=MH;na.prototype.delete=NH;na.prototype.get=PH;na.prototype.has=HH;na.prototype.set=VH;function $H(e,t){return e&&dd(t,ug(t),e)}function KH(e,t){return e&&dd(t,dg(t),e)}var z_=typeof exports=="object"&&exports&&!exports.nodeType&&exports,zy=z_&&typeof module=="object"&&module&&!module.nodeType&&module,zH=zy&&zy.exports===z_,Wy=zH?Dr.Buffer:void 0,Gy=Wy?Wy.allocUnsafe:void 0;function WH(e,t){if(t)return e.slice();var n=e.length,r=Gy?Gy(n):new e.constructor(n);return e.copy(r),r}function GH(e,t){for(var n=-1,r=e==null?0:e.length,a=0,i=[];++n<r;){var o=e[n];t(o,n,e)&&(i[a++]=o)}return i}function W_(){return[]}var jH=Object.prototype,YH=jH.propertyIsEnumerable,jy=Object.getOwnPropertySymbols,qH=jy?function(e){return e==null?[]:(e=Object(e),GH(jy(e),function(t){return YH.call(e,t)}))}:W_;const fg=qH;function XH(e,t){return dd(e,fg(e),t)}var JH=Object.getOwnPropertySymbols,ZH=JH?function(e){for(var t=[];e;)$_(t,fg(e)),e=K_(e);return t}:W_;const G_=ZH;function eR(e,t){return dd(e,G_(e),t)}function j_(e,t,n){var r=t(e);return qs(e)?r:$_(r,n(e))}function ih(e){return j_(e,ug,fg)}function tR(e){return j_(e,dg,G_)}var nR=Zi(Dr,"DataView");const sh=nR;var rR=Zi(Dr,"Promise");const oh=rR;var aR=Zi(Dr,"Set");const Ah=aR;var Yy="[object Map]",iR="[object Object]",qy="[object Promise]",Xy="[object Set]",Jy="[object WeakMap]",Zy="[object DataView]",sR=Ji(sh),oR=Ji(RA),AR=Ji(oh),lR=Ji(Ah),cR=Ji(ah),Bi=hl;(sh&&Bi(new sh(new ArrayBuffer(1)))!=Zy||RA&&Bi(new RA)!=Yy||oh&&Bi(oh.resolve())!=qy||Ah&&Bi(new Ah)!=Xy||ah&&Bi(new ah)!=Jy)&&(Bi=function(e){var t=hl(e),n=t==iR?e.constructor:void 0,r=n?Ji(n):"";if(r)switch(r){case sR:return Zy;case oR:return Yy;case AR:return qy;case lR:return Xy;case cR:return Jy}return t});const Js=Bi;var uR=Object.prototype,dR=uR.hasOwnProperty;function fR(e){var t=e.length,n=new e.constructor(t);return t&&typeof e[0]=="string"&&dR.call(e,"index")&&(n.index=e.index,n.input=e.input),n}var pR=Dr.Uint8Array;const ku=pR;function pg(e){var t=new e.constructor(e.byteLength);return new ku(t).set(new ku(e)),t}function hR(e,t){var n=t?pg(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.byteLength)}var mR=/\w*$/;function gR(e){var t=new e.constructor(e.source,mR.exec(e));return t.lastIndex=e.lastIndex,t}var eB=ni?ni.prototype:void 0,tB=eB?eB.valueOf:void 0;function vR(e){return tB?Object(tB.call(e)):{}}function yR(e,t){var n=t?pg(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}var BR="[object Boolean]",wR="[object Date]",bR="[object Map]",_R="[object Number]",CR="[object RegExp]",kR="[object Set]",ER="[object String]",SR="[object Symbol]",xR="[object ArrayBuffer]",FR="[object DataView]",IR="[object Float32Array]",TR="[object Float64Array]",DR="[object Int8Array]",UR="[object Int16Array]",QR="[object Int32Array]",LR="[object Uint8Array]",OR="[object Uint8ClampedArray]",MR="[object Uint16Array]",NR="[object Uint32Array]";function PR(e,t,n){var r=e.constructor;switch(t){case xR:return pg(e);case BR:case wR:return new r(+e);case FR:return hR(e,n);case IR:case TR:case DR:case UR:case QR:case LR:case OR:case MR:case NR:return yR(e,n);case bR:return new r;case _R:case ER:return new r(e);case CR:return gR(e);case kR:return new r;case SR:return vR(e)}}function HR(e){return typeof e.constructor=="function"&&!fd(e)?sP(K_(e)):{}}var RR="[object Map]";function VR(e){return Ki(e)&&Js(e)==RR}var nB=Xs&&Xs.isMap,$R=nB?lg(nB):VR;const KR=$R;var zR="[object Set]";function WR(e){return Ki(e)&&Js(e)==zR}var rB=Xs&&Xs.isSet,GR=rB?lg(rB):WR;const jR=GR;var YR=1,qR=2,XR=4,Y_="[object Arguments]",JR="[object Array]",ZR="[object Boolean]",eV="[object Date]",tV="[object Error]",q_="[object Function]",nV="[object GeneratorFunction]",rV="[object Map]",aV="[object Number]",X_="[object Object]",iV="[object RegExp]",sV="[object Set]",oV="[object String]",AV="[object Symbol]",lV="[object WeakMap]",cV="[object ArrayBuffer]",uV="[object DataView]",dV="[object Float32Array]",fV="[object Float64Array]",pV="[object Int8Array]",hV="[object Int16Array]",mV="[object Int32Array]",gV="[object Uint8Array]",vV="[object Uint8ClampedArray]",yV="[object Uint16Array]",BV="[object Uint32Array]",Xe={};Xe[Y_]=Xe[JR]=Xe[cV]=Xe[uV]=Xe[ZR]=Xe[eV]=Xe[dV]=Xe[fV]=Xe[pV]=Xe[hV]=Xe[mV]=Xe[rV]=Xe[aV]=Xe[X_]=Xe[iV]=Xe[sV]=Xe[oV]=Xe[AV]=Xe[gV]=Xe[vV]=Xe[yV]=Xe[BV]=!0;Xe[tV]=Xe[q_]=Xe[lV]=!1;function qc(e,t,n,r,a,i){var o,A=t&YR,l=t&qR,c=t&XR;if(n&&(o=a?n(e,r,a,i):n(e)),o!==void 0)return o;if(!ml(e))return e;var u=qs(e);if(u){if(o=fR(e),!A)return oP(e,o)}else{var d=Js(e),f=d==q_||d==nV;if(PA(e))return WH(e,A);if(d==X_||d==Y_||f&&!a){if(o=l||f?{}:HR(e),!A)return l?eR(e,KH(o,e)):XH(e,$H(o,e))}else{if(!Xe[d])return a?e:{};o=PR(e,d,A)}}i||(i=new na);var p=i.get(e);if(p)return p;i.set(e,o),jR(e)?e.forEach(function(B){o.add(qc(B,t,n,B,e,i))}):KR(e)&&e.forEach(function(B,m){o.set(m,qc(B,t,n,m,e,i))});var h=c?l?tR:ih:l?dg:ug,g=u?void 0:h(e);return lP(g||e,function(B,m){g&&(m=B,B=e[m]),Q_(o,m,qc(B,t,n,m,e,i))}),o}var wV=1,bV=4;function ko(e){return qc(e,wV|bV)}var _V="__lodash_hash_undefined__";function CV(e){return this.__data__.set(e,_V),this}function kV(e){return this.__data__.has(e)}function Eu(e){var t=-1,n=e==null?0:e.length;for(this.__data__=new es;++t<n;)this.add(e[t])}Eu.prototype.add=Eu.prototype.push=CV;Eu.prototype.has=kV;function EV(e,t){for(var n=-1,r=e==null?0:e.length;++n<r;)if(t(e[n],n,e))return!0;return!1}function SV(e,t){return e.has(t)}var xV=1,FV=2;function J_(e,t,n,r,a,i){var o=n&xV,A=e.length,l=t.length;if(A!=l&&!(o&&l>A))return!1;var c=i.get(e),u=i.get(t);if(c&&u)return c==t&&u==e;var d=-1,f=!0,p=n&FV?new Eu:void 0;for(i.set(e,t),i.set(t,e);++d<A;){var h=e[d],g=t[d];if(r)var B=o?r(g,h,d,t,e,i):r(h,g,d,e,t,i);if(B!==void 0){if(B)continue;f=!1;break}if(p){if(!EV(t,function(m,v){if(!SV(p,v)&&(h===m||a(h,m,n,r,i)))return p.push(v)})){f=!1;break}}else if(!(h===g||a(h,g,n,r,i))){f=!1;break}}return i.delete(e),i.delete(t),f}function IV(e){var t=-1,n=Array(e.size);return e.forEach(function(r,a){n[++t]=[a,r]}),n}function TV(e){var t=-1,n=Array(e.size);return e.forEach(function(r){n[++t]=r}),n}var DV=1,UV=2,QV="[object Boolean]",LV="[object Date]",OV="[object Error]",MV="[object Map]",NV="[object Number]",PV="[object RegExp]",HV="[object Set]",RV="[object String]",VV="[object Symbol]",$V="[object ArrayBuffer]",KV="[object DataView]",aB=ni?ni.prototype:void 0,Lf=aB?aB.valueOf:void 0;function zV(e,t,n,r,a,i,o){switch(n){case KV:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case $V:return!(e.byteLength!=t.byteLength||!i(new ku(e),new ku(t)));case QV:case LV:case NV:return og(+e,+t);case OV:return e.name==t.name&&e.message==t.message;case PV:case RV:return e==t+"";case MV:var A=IV;case HV:var l=r&DV;if(A||(A=TV),e.size!=t.size&&!l)return!1;var c=o.get(e);if(c)return c==t;r|=UV,o.set(e,t);var u=J_(A(e),A(t),r,a,i,o);return o.delete(e),u;case VV:if(Lf)return Lf.call(e)==Lf.call(t)}return!1}var WV=1,GV=Object.prototype,jV=GV.hasOwnProperty;function YV(e,t,n,r,a,i){var o=n&WV,A=ih(e),l=A.length,c=ih(t),u=c.length;if(l!=u&&!o)return!1;for(var d=l;d--;){var f=A[d];if(!(o?f in t:jV.call(t,f)))return!1}var p=i.get(e),h=i.get(t);if(p&&h)return p==t&&h==e;var g=!0;i.set(e,t),i.set(t,e);for(var B=o;++d<l;){f=A[d];var m=e[f],v=t[f];if(r)var w=o?r(v,m,f,t,e,i):r(m,v,f,e,t,i);if(!(w===void 0?m===v||a(m,v,n,r,i):w)){g=!1;break}B||(B=f=="constructor")}if(g&&!B){var y=e.constructor,b=t.constructor;y!=b&&"constructor"in e&&"constructor"in t&&!(typeof y=="function"&&y instanceof y&&typeof b=="function"&&b instanceof b)&&(g=!1)}return i.delete(e),i.delete(t),g}var qV=1,iB="[object Arguments]",sB="[object Array]",oc="[object Object]",XV=Object.prototype,oB=XV.hasOwnProperty;function JV(e,t,n,r,a,i){var o=qs(e),A=qs(t),l=o?sB:Js(e),c=A?sB:Js(t);l=l==iB?oc:l,c=c==iB?oc:c;var u=l==oc,d=c==oc,f=l==c;if(f&&PA(e)){if(!PA(t))return!1;o=!0,u=!1}if(f&&!u)return i||(i=new na),o||cg(e)?J_(e,t,n,r,a,i):zV(e,t,l,n,r,a,i);if(!(n&qV)){var p=u&&oB.call(e,"__wrapped__"),h=d&&oB.call(t,"__wrapped__");if(p||h){var g=p?e.value():e,B=h?t.value():t;return i||(i=new na),a(g,B,n,r,i)}}return f?(i||(i=new na),YV(e,t,n,r,a,i)):!1}function Z_(e,t,n,r,a){return e===t?!0:e==null||t==null||!Ki(e)&&!Ki(t)?e!==e&&t!==t:JV(e,t,n,r,Z_,a)}var ZV="[object Map]",e$="[object Set]",t$=Object.prototype,n$=t$.hasOwnProperty;function r$(e){if(e==null)return!0;if(Ag(e)&&(qs(e)||typeof e=="string"||typeof e.splice=="function"||PA(e)||cg(e)||M_(e)))return!e.length;var t=Js(e);if(t==ZV||t==e$)return!e.size;if(fd(e))return!V_(e).length;for(var n in e)if(n$.call(e,n))return!1;return!0}function AB(e,t){return Z_(e,t)}var a$=Object.defineProperty,i$=Object.defineProperties,s$=Object.getOwnPropertyDescriptors,lB=Object.getOwnPropertySymbols,o$=Object.prototype.hasOwnProperty,A$=Object.prototype.propertyIsEnumerable,cB=(e,t,n)=>t in e?a$(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,l$=(e,t)=>{for(var n in t||(t={}))o$.call(t,n)&&cB(e,n,t[n]);if(lB)for(var n of lB(t))A$.call(t,n)&&cB(e,n,t[n]);return e},c$=(e,t)=>i$(e,s$(t));function u$(e){return(e.match(/[a-zA-Z0-9]+/g)||[]).map(t=>`${t.charAt(0).toUpperCase()}${t.slice(1)}`).join("")}var li=(e,t)=>{const n={chartData:{type:Object,required:!0},options:{type:Object,required:!1},chartId:{default:e,type:String},width:{default:400,type:Number},height:{default:400,type:Number},cssClasses:{type:String,default:""},styles:{type:Object},plugins:{type:Array,default:()=>[]},onLabelsUpdate:{type:Function},onChartUpdate:{type:Function},onChartDestroy:{type:Function},onChartRender:{type:Function}},r=u$(e);return s.defineComponent({name:r,props:n,emits:{"labels:update":()=>!0,"chart:update":a=>!0,"chart:destroy":()=>!0,"chart:render":a=>!0},setup(a,{emit:i,expose:o}){const A=s.ref(null),l=`${a.chartId}`;let c=s.shallowRef(null);s.watch(()=>a.chartData,u,{deep:!0}),s.watch(()=>a.options,B=>{c.value&&B&&(c.value.options=ko(B),h())},{deep:!0});function u(B){if(c.value){let m=c.value;AB(B.labels,c.value.data.labels)||(m.data.labels=B.labels,f()),AB(B.datasets,c.value.data.datasets)||B.datasets.forEach((v,w)=>{var y,b;if(r$(v))m.data.datasets=[];else{const _=ko(m.data),C=Object.keys((b=(y=_.datasets)==null?void 0:y[w])!=null?b:{}),E=Object.keys(v);C.filter(U=>U!=="_meta"&&E.indexOf(U)===-1).forEach(U=>{m.data.datasets[w]&&delete m.data.datasets[w][U]});for(const U in v){const T=ko(v[U]);m.data.datasets[w]||(m.data.datasets[w]={}),v.hasOwnProperty(U)&&T!=null&&m&&(m.data.datasets[w][U]=T)}}}),h()}else c.value&&g(),d()}function d(){A.value?(c.value=new Oe(A.value,{data:ko(a.chartData),type:t,options:ko(a.options),plugins:a.plugins}),p()):console.error(`Error on component ${r}, canvas cannot be rendered. Check if the render appends server-side`)}function f(){i("labels:update"),a.onLabelsUpdate&&a.onLabelsUpdate()}function p(){c.value&&(i("chart:render",c.value),a.onChartRender&&a.onChartRender(c.value))}function h(){c.value&&(c.value.update(),i("chart:update",c.value),a.onChartUpdate&&a.onChartUpdate(c.value))}function g(){c.value&&c.value.destroy(),i("chart:destroy"),a.onChartDestroy&&a.onChartDestroy()}return s.onMounted(d),s.onBeforeUnmount(()=>{c.value&&c.value.destroy()}),o({canvasRef:A,renderChart:d,chartInstance:c,canvasId:l,update:h}),()=>s.h("div",{style:c$(l$({maxWidth:"100%"},a.styles),{position:"relative"}),class:a.cssClasses},[s.h("canvas",{style:{maxWidth:"100%",maxHeight:"100%"},id:l,width:a.width,height:a.height,ref:A})])}})},md=li("bar-chart","bar"),gd=li("doughnut-chart","doughnut"),eC=li("line-chart","line");li("pie-chart","pie");li("polar-chart","polarArea");li("radar-chart","radar");li("bubble-chart","bubble");li("scatter-chart","scatter");const Su=s.defineComponent({__name:"InfoDoughnutChart",props:CL,setup(e){const t=e,n=s.ref(null);Oe.register(...Tr);const r=s.computed(()=>{const i=t.info==="typeRef"?"types":"rarities",o={},A=wt(t.deckCode);for(const c in A){const u=on().cardJsonObject[c];if(u===void 0)continue;let d=u[t.info];d==="Unit"&&(d=u.supertype==="Champion"?"Champion":"Follower"),o[d]===void 0&&(o[d]=0),o[d]+=A[c]}const l=[];for(const c in o){const u=ve().dataJson[i].find(f=>f.nameRef===c),d={key:c,value:o[c],color:u==null?void 0:u.color,name:u==null?void 0:u.name,order:u==null?void 0:u.order};l.push(d)}return console.log(l),l.sort((c,u)=>c.order-u.order),{labels:l.map(c=>c.name),datasets:[{data:l.map(c=>c.value),backgroundColor:l.map(c=>c.color)}]}}),a={cutout:55,layout:{padding:{top:10,bottom:10}},elements:{arc:{borderWidth:0}},plugins:{legend:{display:!0,position:"right",labels:{usePointStyle:!0,generateLabels(i){const o=[],A=i.data.labels;for(let l=0;l<i.data.labels.length;l++)o.push({text:`${A[l]} (${i.data.datasets[0].data[l]})`,borderRadius:999,datasetIndex:0,index:l,fontColor:Ya("--color-0"),fillStyle:i.data.datasets[0].backgroundColor[l]});return o}}},datalabels:{display:!1}}};return(i,o)=>(s.openBlock(),s.createBlock(s.unref(gd),{ref_key:"chart",ref:n,"chart-data":r.value,options:a},null,8,["chart-data"]))}}),d$={deck:{type:Object,required:!1,default:void 0},deckCode:{type:String,required:!1,default:void 0},paddingTop:{type:Number,required:!1,default:10},showDataLabels:{type:Boolean,required:!1,default:!0},dataLabelsOffset:{type:Number,required:!1,default:-10},tooltipsEnabled:{type:Boolean,required:!1,default:!0},displayXScale:{type:Boolean,required:!1,default:!0},animation:{type:Boolean,required:!1}};//! moment.js
845
+ `):e}function YN(e,t){const{element:n,datasetIndex:r,index:a}=t,i=e.getDatasetMeta(r).controller,{label:o,value:A}=i.getLabelAndValue(a);return{chart:e,label:o,parsed:i.getParsed(a),raw:e.data.datasets[r].data[a],formattedValue:A,dataset:i.getDataset(),dataIndex:a,datasetIndex:r,element:n}}function _y(e,t){const n=e.chart.ctx,{body:r,footer:a,title:i}=e,{boxWidth:o,boxHeight:A}=t,l=ht(t.bodyFont),c=ht(t.titleFont),u=ht(t.footerFont),d=i.length,f=a.length,p=r.length,h=St(t.padding);let g=h.height,B=0,m=r.reduce((y,b)=>y+b.before.length+b.lines.length+b.after.length,0);if(m+=e.beforeBody.length+e.afterBody.length,d&&(g+=d*c.lineHeight+(d-1)*t.titleSpacing+t.titleMarginBottom),m){const y=t.displayColors?Math.max(A,l.lineHeight):l.lineHeight;g+=p*y+(m-p)*l.lineHeight+(m-1)*t.bodySpacing}f&&(g+=t.footerMarginTop+f*u.lineHeight+(f-1)*t.footerSpacing);let v=0;const w=function(y){B=Math.max(B,n.measureText(y).width+v)};return n.save(),n.font=c.string,$e(e.title,w),n.font=l.string,$e(e.beforeBody.concat(e.afterBody),w),v=t.displayColors?o+2+t.boxPadding:0,$e(r,y=>{$e(y.before,w),$e(y.lines,w),$e(y.after,w)}),v=0,n.font=u.string,$e(e.footer,w),n.restore(),B+=h.width,{width:B,height:g}}function qN(e,t){const{y:n,height:r}=t;return n<r/2?"top":n>e.height-r/2?"bottom":"center"}function XN(e,t,n,r){const{x:a,width:i}=r,o=n.caretSize+n.caretPadding;if(e==="left"&&a+i+o>t.width||e==="right"&&a-i-o<0)return!0}function JN(e,t,n,r){const{x:a,width:i}=n,{width:o,chartArea:{left:A,right:l}}=e;let c="center";return r==="center"?c=a<=(A+l)/2?"left":"right":a<=i/2?c="left":a>=o-i/2&&(c="right"),XN(c,e,t,n)&&(c="center"),c}function Cy(e,t,n){const r=n.yAlign||t.yAlign||qN(e,n);return{xAlign:n.xAlign||t.xAlign||JN(e,t,n,r),yAlign:r}}function ZN(e,t){let{x:n,width:r}=e;return t==="right"?n-=r:t==="center"&&(n-=r/2),n}function eP(e,t,n){let{y:r,height:a}=e;return t==="top"?r+=n:t==="bottom"?r-=a+n:r-=a/2,r}function ky(e,t,n,r){const{caretSize:a,caretPadding:i,cornerRadius:o}=e,{xAlign:A,yAlign:l}=n,c=a+i,{topLeft:u,topRight:d,bottomLeft:f,bottomRight:p}=Ka(o);let h=ZN(t,A);const g=eP(t,l,c);return l==="center"?A==="left"?h+=c:A==="right"&&(h-=c):A==="left"?h-=Math.max(u,f)+a:A==="right"&&(h+=Math.max(d,p)+a),{x:Ht(h,0,r.width-t.width),y:Ht(g,0,r.height-t.height)}}function ic(e,t,n){const r=St(n.padding);return t==="center"?e.x+e.width/2:t==="right"?e.x+e.width-r.right:e.x+r.left}function Ey(e){return pr([],zr(e))}function tP(e,t,n){return Ai(e,{tooltip:t,tooltipItems:n,type:"tooltip"})}function Sy(e,t){const n=t&&t.dataset&&t.dataset.tooltip&&t.dataset.tooltip.callbacks;return n?e.override(n):e}const x_={beforeTitle:Pr,title(e){if(e.length>0){const t=e[0],n=t.chart.data.labels,r=n?n.length:0;if(this&&this.options&&this.options.mode==="dataset")return t.dataset.label||"";if(t.label)return t.label;if(r>0&&t.dataIndex<r)return n[t.dataIndex]}return""},afterTitle:Pr,beforeBody:Pr,beforeLabel:Pr,label(e){if(this&&this.options&&this.options.mode==="dataset")return e.label+": "+e.formattedValue||e.formattedValue;let t=e.dataset.label||"";t&&(t+=": ");const n=e.formattedValue;return Ee(n)||(t+=n),t},labelColor(e){const n=e.chart.getDatasetMeta(e.datasetIndex).controller.getStyle(e.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(e){const n=e.chart.getDatasetMeta(e.datasetIndex).controller.getStyle(e.dataIndex);return{pointStyle:n.pointStyle,rotation:n.rotation}},afterLabel:Pr,afterBody:Pr,beforeFooter:Pr,footer:Pr,afterFooter:Pr};function cn(e,t,n,r){const a=e[t].call(n,r);return typeof a>"u"?x_[t].call(n,r):a}class Jp extends An{constructor(t){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=t.chart,this.options=t.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(t){this.options=t,this._cachedAnimations=void 0,this.$context=void 0}_resolveAnimations(){const t=this._cachedAnimations;if(t)return t;const n=this.chart,r=this.options.setContext(this.getContext()),a=r.enabled&&n.options.animation&&r.animations,i=new rg(this.chart,a);return a._cacheable&&(this._cachedAnimations=Object.freeze(i)),i}getContext(){return this.$context||(this.$context=tP(this.chart.getContext(),this,this._tooltipItems))}getTitle(t,n){const{callbacks:r}=n,a=cn(r,"beforeTitle",this,t),i=cn(r,"title",this,t),o=cn(r,"afterTitle",this,t);let A=[];return A=pr(A,zr(a)),A=pr(A,zr(i)),A=pr(A,zr(o)),A}getBeforeBody(t,n){return Ey(cn(n.callbacks,"beforeBody",this,t))}getBody(t,n){const{callbacks:r}=n,a=[];return $e(t,i=>{const o={before:[],lines:[],after:[]},A=Sy(r,i);pr(o.before,zr(cn(A,"beforeLabel",this,i))),pr(o.lines,cn(A,"label",this,i)),pr(o.after,zr(cn(A,"afterLabel",this,i))),a.push(o)}),a}getAfterBody(t,n){return Ey(cn(n.callbacks,"afterBody",this,t))}getFooter(t,n){const{callbacks:r}=n,a=cn(r,"beforeFooter",this,t),i=cn(r,"footer",this,t),o=cn(r,"afterFooter",this,t);let A=[];return A=pr(A,zr(a)),A=pr(A,zr(i)),A=pr(A,zr(o)),A}_createItems(t){const n=this._active,r=this.chart.data,a=[],i=[],o=[];let A=[],l,c;for(l=0,c=n.length;l<c;++l)A.push(YN(this.chart,n[l]));return t.filter&&(A=A.filter((u,d,f)=>t.filter(u,d,f,r))),t.itemSort&&(A=A.sort((u,d)=>t.itemSort(u,d,r))),$e(A,u=>{const d=Sy(t.callbacks,u);a.push(cn(d,"labelColor",this,u)),i.push(cn(d,"labelPointStyle",this,u)),o.push(cn(d,"labelTextColor",this,u))}),this.labelColors=a,this.labelPointStyles=i,this.labelTextColors=o,this.dataPoints=A,A}update(t,n){const r=this.options.setContext(this.getContext()),a=this._active;let i,o=[];if(!a.length)this.opacity!==0&&(i={opacity:0});else{const A=Oo[r.position].call(this,a,this._eventPosition);o=this._createItems(r),this.title=this.getTitle(o,r),this.beforeBody=this.getBeforeBody(o,r),this.body=this.getBody(o,r),this.afterBody=this.getAfterBody(o,r),this.footer=this.getFooter(o,r);const l=this._size=_y(this,r),c=Object.assign({},A,l),u=Cy(this.chart,r,c),d=ky(r,c,u,this.chart);this.xAlign=u.xAlign,this.yAlign=u.yAlign,i={opacity:1,x:d.x,y:d.y,width:l.width,height:l.height,caretX:A.x,caretY:A.y}}this._tooltipItems=o,this.$context=void 0,i&&this._resolveAnimations().update(this,i),t&&r.external&&r.external.call(this,{chart:this.chart,tooltip:this,replay:n})}drawCaret(t,n,r,a){const i=this.getCaretPosition(t,r,a);n.lineTo(i.x1,i.y1),n.lineTo(i.x2,i.y2),n.lineTo(i.x3,i.y3)}getCaretPosition(t,n,r){const{xAlign:a,yAlign:i}=this,{caretSize:o,cornerRadius:A}=r,{topLeft:l,topRight:c,bottomLeft:u,bottomRight:d}=Ka(A),{x:f,y:p}=t,{width:h,height:g}=n;let B,m,v,w,y,b;return i==="center"?(y=p+g/2,a==="left"?(B=f,m=B-o,w=y+o,b=y-o):(B=f+h,m=B+o,w=y-o,b=y+o),v=B):(a==="left"?m=f+Math.max(l,u)+o:a==="right"?m=f+h-Math.max(c,d)-o:m=this.caretX,i==="top"?(w=p,y=w-o,B=m-o,v=m+o):(w=p+g,y=w+o,B=m+o,v=m-o),b=w),{x1:B,x2:m,x3:v,y1:w,y2:y,y3:b}}drawTitle(t,n,r){const a=this.title,i=a.length;let o,A,l;if(i){const c=Is(r.rtl,this.x,this.width);for(t.x=ic(this,r.titleAlign,r),n.textAlign=c.textAlign(r.titleAlign),n.textBaseline="middle",o=ht(r.titleFont),A=r.titleSpacing,n.fillStyle=r.titleColor,n.font=o.string,l=0;l<i;++l)n.fillText(a[l],c.x(t.x),t.y+o.lineHeight/2),t.y+=o.lineHeight+A,l+1===i&&(t.y+=r.titleMarginBottom-A)}}_drawColorBox(t,n,r,a,i){const o=this.labelColors[r],A=this.labelPointStyles[r],{boxHeight:l,boxWidth:c}=i,u=ht(i.bodyFont),d=ic(this,"left",i),f=a.x(d),p=l<u.lineHeight?(u.lineHeight-l)/2:0,h=n.y+p;if(i.usePointStyle){const g={radius:Math.min(c,l)/2,pointStyle:A.pointStyle,rotation:A.rotation,borderWidth:1},B=a.leftForLtr(f,c)+c/2,m=h+l/2;t.strokeStyle=i.multiKeyBackground,t.fillStyle=i.multiKeyBackground,zp(t,g,B,m),t.strokeStyle=o.borderColor,t.fillStyle=o.backgroundColor,zp(t,g,B,m)}else{t.lineWidth=we(o.borderWidth)?Math.max(...Object.values(o.borderWidth)):o.borderWidth||1,t.strokeStyle=o.borderColor,t.setLineDash(o.borderDash||[]),t.lineDashOffset=o.borderDashOffset||0;const g=a.leftForLtr(f,c),B=a.leftForLtr(a.xPlus(f,1),c-2),m=Ka(o.borderRadius);Object.values(m).some(v=>v!==0)?(t.beginPath(),t.fillStyle=i.multiKeyBackground,Gs(t,{x:g,y:h,w:c,h:l,radius:m}),t.fill(),t.stroke(),t.fillStyle=o.backgroundColor,t.beginPath(),Gs(t,{x:B,y:h+1,w:c-2,h:l-2,radius:m}),t.fill()):(t.fillStyle=i.multiKeyBackground,t.fillRect(g,h,c,l),t.strokeRect(g,h,c,l),t.fillStyle=o.backgroundColor,t.fillRect(B,h+1,c-2,l-2))}t.fillStyle=this.labelTextColors[r]}drawBody(t,n,r){const{body:a}=this,{bodySpacing:i,bodyAlign:o,displayColors:A,boxHeight:l,boxWidth:c,boxPadding:u}=r,d=ht(r.bodyFont);let f=d.lineHeight,p=0;const h=Is(r.rtl,this.x,this.width),g=function(E){n.fillText(E,h.x(t.x+p),t.y+f/2),t.y+=f+i},B=h.textAlign(o);let m,v,w,y,b,_,C;for(n.textAlign=o,n.textBaseline="middle",n.font=d.string,t.x=ic(this,B,r),n.fillStyle=r.bodyColor,$e(this.beforeBody,g),p=A&&B!=="right"?o==="center"?c/2+u:c+2+u:0,y=0,_=a.length;y<_;++y){for(m=a[y],v=this.labelTextColors[y],n.fillStyle=v,$e(m.before,g),w=m.lines,A&&w.length&&(this._drawColorBox(n,t,y,h,r),f=Math.max(d.lineHeight,l)),b=0,C=w.length;b<C;++b)g(w[b]),f=d.lineHeight;$e(m.after,g)}p=0,f=d.lineHeight,$e(this.afterBody,g),t.y-=i}drawFooter(t,n,r){const a=this.footer,i=a.length;let o,A;if(i){const l=Is(r.rtl,this.x,this.width);for(t.x=ic(this,r.footerAlign,r),t.y+=r.footerMarginTop,n.textAlign=l.textAlign(r.footerAlign),n.textBaseline="middle",o=ht(r.footerFont),n.fillStyle=r.footerColor,n.font=o.string,A=0;A<i;++A)n.fillText(a[A],l.x(t.x),t.y+o.lineHeight/2),t.y+=o.lineHeight+r.footerSpacing}}drawBackground(t,n,r,a){const{xAlign:i,yAlign:o}=this,{x:A,y:l}=t,{width:c,height:u}=r,{topLeft:d,topRight:f,bottomLeft:p,bottomRight:h}=Ka(a.cornerRadius);n.fillStyle=a.backgroundColor,n.strokeStyle=a.borderColor,n.lineWidth=a.borderWidth,n.beginPath(),n.moveTo(A+d,l),o==="top"&&this.drawCaret(t,n,r,a),n.lineTo(A+c-f,l),n.quadraticCurveTo(A+c,l,A+c,l+f),o==="center"&&i==="right"&&this.drawCaret(t,n,r,a),n.lineTo(A+c,l+u-h),n.quadraticCurveTo(A+c,l+u,A+c-h,l+u),o==="bottom"&&this.drawCaret(t,n,r,a),n.lineTo(A+p,l+u),n.quadraticCurveTo(A,l+u,A,l+u-p),o==="center"&&i==="left"&&this.drawCaret(t,n,r,a),n.lineTo(A,l+d),n.quadraticCurveTo(A,l,A+d,l),n.closePath(),n.fill(),a.borderWidth>0&&n.stroke()}_updateAnimationTarget(t){const n=this.chart,r=this.$animations,a=r&&r.x,i=r&&r.y;if(a||i){const o=Oo[t.position].call(this,this._active,this._eventPosition);if(!o)return;const A=this._size=_y(this,t),l=Object.assign({},o,this._size),c=Cy(n,t,l),u=ky(t,l,c,n);(a._to!==u.x||i._to!==u.y)&&(this.xAlign=c.xAlign,this.yAlign=c.yAlign,this.width=A.width,this.height=A.height,this.caretX=o.x,this.caretY=o.y,this._resolveAnimations().update(this,u))}}_willRender(){return!!this.opacity}draw(t){const n=this.options.setContext(this.getContext());let r=this.opacity;if(!r)return;this._updateAnimationTarget(n);const a={width:this.width,height:this.height},i={x:this.x,y:this.y};r=Math.abs(r)<.001?0:r;const o=St(n.padding),A=this.title.length||this.beforeBody.length||this.body.length||this.afterBody.length||this.footer.length;n.enabled&&A&&(t.save(),t.globalAlpha=r,this.drawBackground(i,t,a,n),n_(t,n.textDirection),i.y+=o.top,this.drawTitle(i,t,n),this.drawBody(i,t,n),this.drawFooter(i,t,n),r_(t,n.textDirection),t.restore())}getActiveElements(){return this._active||[]}setActiveElements(t,n){const r=this._active,a=t.map(({datasetIndex:A,index:l})=>{const c=this.chart.getDatasetMeta(A);if(!c)throw new Error("Cannot find a dataset at index "+A);return{datasetIndex:A,element:c.data[l],index:l}}),i=!mu(r,a),o=this._positionChanged(a,n);(i||o)&&(this._active=a,this._eventPosition=n,this._ignoreReplayEvents=!0,this.update(!0))}handleEvent(t,n,r=!0){if(n&&this._ignoreReplayEvents)return!1;this._ignoreReplayEvents=!1;const a=this.options,i=this._active||[],o=this._getActiveElements(t,i,n,r),A=this._positionChanged(o,t),l=n||!mu(o,i)||A;return l&&(this._active=o,(a.enabled||a.external)&&(this._eventPosition={x:t.x,y:t.y},this.update(!0,n))),l}_getActiveElements(t,n,r,a){const i=this.options;if(t.type==="mouseout")return[];if(!a)return n;const o=this.chart.getElementsAtEventForMode(t,i.mode,i,r);return i.reverse&&o.reverse(),o}_positionChanged(t,n){const{caretX:r,caretY:a,options:i}=this,o=Oo[i.position].call(this,t,n);return o!==!1&&(r!==o.x||a!==o.y)}}R(Jp,"positioners",Oo);var nP={id:"tooltip",_element:Jp,positioners:Oo,afterInit(e,t,n){n&&(e.tooltip=new Jp({chart:e,options:n}))},beforeUpdate(e,t,n){e.tooltip&&e.tooltip.initialize(n)},reset(e,t,n){e.tooltip&&e.tooltip.initialize(n)},afterDraw(e){const t=e.tooltip;if(t&&t._willRender()){const n={tooltip:t};if(e.notifyPlugins("beforeTooltipDraw",{...n,cancelable:!0})===!1)return;t.draw(e.ctx),e.notifyPlugins("afterTooltipDraw",n)}},afterEvent(e,t){if(e.tooltip){const n=t.replay;e.tooltip.handleEvent(t.event,n,t.inChartArea)&&(t.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:(e,t)=>t.bodyFont.size,boxWidth:(e,t)=>t.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:x_},defaultRoutes:{bodyFont:"font",footerFont:"font",titleFont:"font"},descriptors:{_scriptable:e=>e!=="filter"&&e!=="itemSort"&&e!=="external",_indexable:!1,callbacks:{_scriptable:!1,_indexable:!1},animation:{_fallback:!1},animations:{_fallback:"animation"}},additionalOptionScopes:["interaction"]},rP=Object.freeze({__proto__:null,Colors:hN,Decimation:yN,Filler:PN,Legend:zN,SubTitle:jN,Title:GN,Tooltip:nP});const aP=(e,t,n,r)=>(typeof t=="string"?(n=e.push(t)-1,r.unshift({index:n,label:t})):isNaN(t)&&(n=null),n);function iP(e,t,n,r){const a=e.indexOf(t);if(a===-1)return aP(e,t,n,r);const i=e.lastIndexOf(t);return a!==i?n:a}const sP=(e,t)=>e===null?null:Ht(Math.round(e),0,t);function xy(e){const t=this.getLabels();return e>=0&&e<t.length?t[e]:e}class Zp extends Xi{constructor(t){super(t),this._startValue=void 0,this._valueRange=0,this._addedLabels=[]}init(t){const n=this._addedLabels;if(n.length){const r=this.getLabels();for(const{index:a,label:i}of n)r[a]===i&&r.splice(a,1);this._addedLabels=[]}super.init(t)}parse(t,n){if(Ee(t))return null;const r=this.getLabels();return n=isFinite(n)&&r[n]===t?n:iP(r,t,de(n,t),this._addedLabels),sP(n,r.length-1)}determineDataLimits(){const{minDefined:t,maxDefined:n}=this.getUserBounds();let{min:r,max:a}=this.getMinMax(!0);this.options.bounds==="ticks"&&(t||(r=0),n||(a=this.getLabels().length-1)),this.min=r,this.max=a}buildTicks(){const t=this.min,n=this.max,r=this.options.offset,a=[];let i=this.getLabels();i=t===0&&n===i.length-1?i:i.slice(t,n+1),this._valueRange=Math.max(i.length-(r?0:1),1),this._startValue=this.min-(r?.5:0);for(let o=t;o<=n;o++)a.push({value:o});return a}getLabelForValue(t){return xy.call(this,t)}configure(){super.configure(),this.isHorizontal()||(this._reversePixels=!this._reversePixels)}getPixelForValue(t){return typeof t!="number"&&(t=this.parse(t)),t===null?NaN:this.getPixelForDecimal((t-this._startValue)/this._valueRange)}getPixelForTick(t){const n=this.ticks;return t<0||t>n.length-1?null:this.getPixelForValue(n[t].value)}getValueForPixel(t){return Math.round(this._startValue+this.getDecimalForPixel(t)*this._valueRange)}getBasePixel(){return this.bottom}}R(Zp,"id","category"),R(Zp,"defaults",{ticks:{callback:xy}});function oP(e,t){const n=[],{bounds:a,step:i,min:o,max:A,precision:l,count:c,maxTicks:u,maxDigits:d,includeBounds:f}=e,p=i||1,h=u-1,{min:g,max:B}=t,m=!Ee(o),v=!Ee(A),w=!Ee(c),y=(B-g)/(d+1);let b=b0((B-g)/h/p)*p,_,C,E,S;if(b<1e-14&&!m&&!v)return[{value:g},{value:B}];S=Math.ceil(B/b)-Math.floor(g/b),S>h&&(b=b0(S*b/h/p)*p),Ee(l)||(_=Math.pow(10,l),b=Math.ceil(b*_)/_),a==="ticks"?(C=Math.floor(g/b)*b,E=Math.ceil(B/b)*b):(C=g,E=B),m&&v&&i&&nO((A-o)/i,b/1e3)?(S=Math.round(Math.min((A-o)/b,u)),b=(A-o)/S,C=o,E=A):w?(C=m?o:C,E=v?A:E,S=c-1,b=(E-C)/S):(S=(E-C)/b,tA(S,Math.round(S),b/1e3)?S=Math.round(S):S=Math.ceil(S));const U=Math.max(_0(b),_0(C));_=Math.pow(10,Ee(l)?U:l),C=Math.round(C*_)/_,E=Math.round(E*_)/_;let T=0;for(m&&(f&&C!==o?(n.push({value:o}),C<o&&T++,tA(Math.round((C+T*b)*_)/_,o,Fy(o,y,e))&&T++):C<o&&T++);T<S;++T){const F=Math.round((C+T*b)*_)/_;if(v&&F>A)break;n.push({value:F})}return v&&f&&E!==A?n.length&&tA(n[n.length-1].value,A,Fy(A,y,e))?n[n.length-1].value=A:n.push({value:A}):(!v||E===A)&&n.push({value:E}),n}function Fy(e,t,{horizontal:n,minRotation:r}){const a=Ft(r),i=(n?Math.sin(a):Math.cos(a))||.001,o=.75*t*(""+e).length;return Math.min(t/i,o)}class Cu extends Xi{constructor(t){super(t),this.start=void 0,this.end=void 0,this._startValue=void 0,this._endValue=void 0,this._valueRange=0}parse(t,n){return Ee(t)||(typeof t=="number"||t instanceof Number)&&!isFinite(+t)?null:+t}handleTickRangeOptions(){const{beginAtZero:t}=this.options,{minDefined:n,maxDefined:r}=this.getUserBounds();let{min:a,max:i}=this;const o=l=>a=n?a:l,A=l=>i=r?i:l;if(t){const l=_r(a),c=_r(i);l<0&&c<0?A(0):l>0&&c>0&&o(0)}if(a===i){let l=i===0?1:Math.abs(i*.05);A(i+l),t||o(a-l)}this.min=a,this.max=i}getTickLimit(){const t=this.options.ticks;let{maxTicksLimit:n,stepSize:r}=t,a;return r?(a=Math.ceil(this.max/r)-Math.floor(this.min/r)+1,a>1e3&&(console.warn(`scales.${this.id}.ticks.stepSize: ${r} would result generating up to ${a} ticks. Limiting to 1000.`),a=1e3)):(a=this.computeTickLimit(),n=n||11),n&&(a=Math.min(n,a)),a}computeTickLimit(){return Number.POSITIVE_INFINITY}buildTicks(){const t=this.options,n=t.ticks;let r=this.getTickLimit();r=Math.max(2,r);const a={maxTicks:r,bounds:t.bounds,min:t.min,max:t.max,precision:n.precision,step:n.stepSize,count:n.count,maxDigits:this._maxDigits(),horizontal:this.isHorizontal(),minRotation:n.minRotation||0,includeBounds:n.includeBounds!==!1},i=this._range||this,o=oP(a,i);return t.bounds==="ticks"&&Nb(o,this,"value"),t.reverse?(o.reverse(),this.start=this.max,this.end=this.min):(this.start=this.min,this.end=this.max),o}configure(){const t=this.ticks;let n=this.min,r=this.max;if(super.configure(),this.options.offset&&t.length){const a=(r-n)/Math.max(t.length-1,1)/2;n-=a,r+=a}this._startValue=n,this._endValue=r,this._valueRange=r-n}getLabelForValue(t){return ul(t,this.chart.options.locale,this.options.ticks.format)}}class eh extends Cu{determineDataLimits(){const{min:t,max:n}=this.getMinMax(!0);this.min=ft(t)?t:0,this.max=ft(n)?n:1,this.handleTickRangeOptions()}computeTickLimit(){const t=this.isHorizontal(),n=t?this.width:this.height,r=Ft(this.options.ticks.minRotation),a=(t?Math.sin(r):Math.cos(r))||.001,i=this._resolveTickFontOptions(0);return Math.ceil(n/Math.min(40,i.lineHeight/a))}getPixelForValue(t){return t===null?NaN:this.getPixelForDecimal((t-this._startValue)/this._valueRange)}getValueForPixel(t){return this._startValue+this.getDecimalForPixel(t)*this._valueRange}}R(eh,"id","linear"),R(eh,"defaults",{ticks:{callback:ld.formatters.numeric}});const MA=e=>Math.floor(La(e)),pi=(e,t)=>Math.pow(10,MA(e)+t);function Iy(e){return e/Math.pow(10,MA(e))===1}function Ty(e,t,n){const r=Math.pow(10,n),a=Math.floor(e/r);return Math.ceil(t/r)-a}function AP(e,t){const n=t-e;let r=MA(n);for(;Ty(e,t,r)>10;)r++;for(;Ty(e,t,r)<10;)r--;return Math.min(r,MA(e))}function lP(e,{min:t,max:n}){t=Cn(e.min,t);const r=[],a=MA(t);let i=AP(t,n),o=i<0?Math.pow(10,Math.abs(i)):1;const A=Math.pow(10,i),l=a>i?Math.pow(10,a):0,c=Math.round((t-l)*o)/o,u=Math.floor((t-l)/A/10)*A*10;let d=Math.floor((c-u)/Math.pow(10,i)),f=Cn(e.min,Math.round((l+u+d*Math.pow(10,i))*o)/o);for(;f<n;)r.push({value:f,major:Iy(f),significand:d}),d>=10?d=d<15?15:20:d++,d>=20&&(i++,d=2,o=i>=0?1:o),f=Math.round((l+u+d*Math.pow(10,i))*o)/o;const p=Cn(e.max,f);return r.push({value:p,major:Iy(p),significand:d}),r}class th extends Xi{constructor(t){super(t),this.start=void 0,this.end=void 0,this._startValue=void 0,this._valueRange=0}parse(t,n){const r=Cu.prototype.parse.apply(this,[t,n]);if(r===0){this._zero=!0;return}return ft(r)&&r>0?r:null}determineDataLimits(){const{min:t,max:n}=this.getMinMax(!0);this.min=ft(t)?Math.max(0,t):null,this.max=ft(n)?Math.max(0,n):null,this.options.beginAtZero&&(this._zero=!0),this._zero&&this.min!==this._suggestedMin&&!ft(this._userMin)&&(this.min=t===pi(this.min,0)?pi(this.min,-1):pi(this.min,0)),this.handleTickRangeOptions()}handleTickRangeOptions(){const{minDefined:t,maxDefined:n}=this.getUserBounds();let r=this.min,a=this.max;const i=A=>r=t?r:A,o=A=>a=n?a:A;r===a&&(r<=0?(i(1),o(10)):(i(pi(r,-1)),o(pi(a,1)))),r<=0&&i(pi(a,-1)),a<=0&&o(pi(r,1)),this.min=r,this.max=a}buildTicks(){const t=this.options,n={min:this._userMin,max:this._userMax},r=lP(n,this);return t.bounds==="ticks"&&Nb(r,this,"value"),t.reverse?(r.reverse(),this.start=this.max,this.end=this.min):(this.start=this.min,this.end=this.max),r}getLabelForValue(t){return t===void 0?"0":ul(t,this.chart.options.locale,this.options.ticks.format)}configure(){const t=this.min;super.configure(),this._startValue=La(t),this._valueRange=La(this.max)-La(t)}getPixelForValue(t){return(t===void 0||t===0)&&(t=this.min),t===null||isNaN(t)?NaN:this.getPixelForDecimal(t===this.min?0:(La(t)-this._startValue)/this._valueRange)}getValueForPixel(t){const n=this.getDecimalForPixel(t);return Math.pow(10,this._startValue+n*this._valueRange)}}R(th,"id","logarithmic"),R(th,"defaults",{ticks:{callback:ld.formatters.logarithmic,major:{enabled:!0}}});function nh(e){const t=e.ticks;if(t.display&&e.display){const n=St(t.backdropPadding);return de(t.font&&t.font.size,pt.font.size)+n.height}return 0}function cP(e,t,n){return n=Me(n)?n:[n],{w:yO(e,t.string,n),h:n.length*t.lineHeight}}function Dy(e,t,n,r,a){return e===r||e===a?{start:t-n/2,end:t+n/2}:e<r||e>a?{start:t-n,end:t}:{start:t,end:t+n}}function uP(e){const t={l:e.left+e._padding.left,r:e.right-e._padding.right,t:e.top+e._padding.top,b:e.bottom-e._padding.bottom},n=Object.assign({},t),r=[],a=[],i=e._pointLabels.length,o=e.options.pointLabels,A=o.centerPointLabels?Qe/i:0;for(let l=0;l<i;l++){const c=o.setContext(e.getPointLabelContext(l));a[l]=c.padding;const u=e.getPointPosition(l,e.drawingArea+a[l],A),d=ht(c.font),f=cP(e.ctx,d,e._pointLabels[l]);r[l]=f;const p=En(e.getIndexAngle(l)+A),h=Math.round(Ad(p)),g=Dy(h,u.x,f.w,0,180),B=Dy(h,u.y,f.h,90,270);dP(n,t,p,g,B)}e.setCenterPoint(t.l-n.l,n.r-t.r,t.t-n.t,n.b-t.b),e._pointLabelItems=hP(e,r,a)}function dP(e,t,n,r,a){const i=Math.abs(Math.sin(n)),o=Math.abs(Math.cos(n));let A=0,l=0;r.start<t.l?(A=(t.l-r.start)/i,e.l=Math.min(e.l,t.l-A)):r.end>t.r&&(A=(r.end-t.r)/i,e.r=Math.max(e.r,t.r+A)),a.start<t.t?(l=(t.t-a.start)/o,e.t=Math.min(e.t,t.t-l)):a.end>t.b&&(l=(a.end-t.b)/o,e.b=Math.max(e.b,t.b+l))}function fP(e,t,n){const r=e.drawingArea,{extra:a,additionalAngle:i,padding:o,size:A}=n,l=e.getPointPosition(t,r+a+o,i),c=Math.round(Ad(En(l.angle+et))),u=vP(l.y,A.h,c),d=mP(c),f=gP(l.x,A.w,d);return{visible:!0,x:l.x,y:u,textAlign:d,left:f,top:u,right:f+A.w,bottom:u+A.h}}function pP(e,t){if(!t)return!0;const{left:n,top:r,right:a,bottom:i}=e;return!(Jr({x:n,y:r},t)||Jr({x:n,y:i},t)||Jr({x:a,y:r},t)||Jr({x:a,y:i},t))}function hP(e,t,n){const r=[],a=e._pointLabels.length,i=e.options,{centerPointLabels:o,display:A}=i.pointLabels,l={extra:nh(i)/2,additionalAngle:o?Qe/a:0};let c;for(let u=0;u<a;u++){l.padding=n[u],l.size=t[u];const d=fP(e,u,l);r.push(d),A==="auto"&&(d.visible=pP(d,c),d.visible&&(c=d))}return r}function mP(e){return e===0||e===180?"center":e<180?"left":"right"}function gP(e,t,n){return n==="right"?e-=t:n==="center"&&(e-=t/2),e}function vP(e,t,n){return n===90||n===270?e-=t/2:(n>270||n<90)&&(e-=t),e}function yP(e,t,n){const{left:r,top:a,right:i,bottom:o}=n,{backdropColor:A}=t;if(!Ee(A)){const l=Ka(t.borderRadius),c=St(t.backdropPadding);e.fillStyle=A;const u=r-c.left,d=a-c.top,f=i-r+c.width,p=o-a+c.height;Object.values(l).some(h=>h!==0)?(e.beginPath(),Gs(e,{x:u,y:d,w:f,h:p,radius:l}),e.fill()):e.fillRect(u,d,f,p)}}function BP(e,t){const{ctx:n,options:{pointLabels:r}}=e;for(let a=t-1;a>=0;a--){const i=e._pointLabelItems[a];if(!i.visible)continue;const o=r.setContext(e.getPointLabelContext(a));yP(n,o,i);const A=ht(o.font),{x:l,y:c,textAlign:u}=i;$i(n,e._pointLabels[a],l,c+A.lineHeight/2,A,{color:o.color,textAlign:u,textBaseline:"middle"})}}function F_(e,t,n,r){const{ctx:a}=e;if(n)a.arc(e.xCenter,e.yCenter,t,0,Ze);else{let i=e.getPointPosition(0,t);a.moveTo(i.x,i.y);for(let o=1;o<r;o++)i=e.getPointPosition(o,t),a.lineTo(i.x,i.y)}}function wP(e,t,n,r,a){const i=e.ctx,o=t.circular,{color:A,lineWidth:l}=t;!o&&!r||!A||!l||n<0||(i.save(),i.strokeStyle=A,i.lineWidth=l,i.setLineDash(a.dash),i.lineDashOffset=a.dashOffset,i.beginPath(),F_(e,n,o,r),i.closePath(),i.stroke(),i.restore())}function bP(e,t,n){return Ai(e,{label:n,index:t,type:"pointLabel"})}class Mo extends Cu{constructor(t){super(t),this.xCenter=void 0,this.yCenter=void 0,this.drawingArea=void 0,this._pointLabels=[],this._pointLabelItems=[]}setDimensions(){const t=this._padding=St(nh(this.options)/2),n=this.width=this.maxWidth-t.width,r=this.height=this.maxHeight-t.height;this.xCenter=Math.floor(this.left+n/2+t.left),this.yCenter=Math.floor(this.top+r/2+t.top),this.drawingArea=Math.floor(Math.min(n,r)/2)}determineDataLimits(){const{min:t,max:n}=this.getMinMax(!1);this.min=ft(t)&&!isNaN(t)?t:0,this.max=ft(n)&&!isNaN(n)?n:0,this.handleTickRangeOptions()}computeTickLimit(){return Math.ceil(this.drawingArea/nh(this.options))}generateTickLabels(t){Cu.prototype.generateTickLabels.call(this,t),this._pointLabels=this.getLabels().map((n,r)=>{const a=Re(this.options.pointLabels.callback,[n,r],this);return a||a===0?a:""}).filter((n,r)=>this.chart.getDataVisibility(r))}fit(){const t=this.options;t.display&&t.pointLabels.display?uP(this):this.setCenterPoint(0,0,0,0)}setCenterPoint(t,n,r,a){this.xCenter+=Math.floor((t-n)/2),this.yCenter+=Math.floor((r-a)/2),this.drawingArea-=Math.min(this.drawingArea/2,Math.max(t,n,r,a))}getIndexAngle(t){const n=Ze/(this._pointLabels.length||1),r=this.options.startAngle||0;return En(t*n+Ft(r))}getDistanceFromCenterForValue(t){if(Ee(t))return NaN;const n=this.drawingArea/(this.max-this.min);return this.options.reverse?(this.max-t)*n:(t-this.min)*n}getValueForDistanceFromCenter(t){if(Ee(t))return NaN;const n=t/(this.drawingArea/(this.max-this.min));return this.options.reverse?this.max-n:this.min+n}getPointLabelContext(t){const n=this._pointLabels||[];if(t>=0&&t<n.length){const r=n[t];return bP(this.getContext(),t,r)}}getPointPosition(t,n,r=0){const a=this.getIndexAngle(t)-et+r;return{x:Math.cos(a)*n+this.xCenter,y:Math.sin(a)*n+this.yCenter,angle:a}}getPointPositionForValue(t,n){return this.getPointPosition(t,this.getDistanceFromCenterForValue(n))}getBasePosition(t){return this.getPointPositionForValue(t||0,this.getBaseValue())}getPointLabelPosition(t){const{left:n,top:r,right:a,bottom:i}=this._pointLabelItems[t];return{left:n,top:r,right:a,bottom:i}}drawBackground(){const{backgroundColor:t,grid:{circular:n}}=this.options;if(t){const r=this.ctx;r.save(),r.beginPath(),F_(this,this.getDistanceFromCenterForValue(this._endValue),n,this._pointLabels.length),r.closePath(),r.fillStyle=t,r.fill(),r.restore()}}drawGrid(){const t=this.ctx,n=this.options,{angleLines:r,grid:a,border:i}=n,o=this._pointLabels.length;let A,l,c;if(n.pointLabels.display&&BP(this,o),a.display&&this.ticks.forEach((u,d)=>{if(d!==0){l=this.getDistanceFromCenterForValue(u.value);const f=this.getContext(d),p=a.setContext(f),h=i.setContext(f);wP(this,p,l,o,h)}}),r.display){for(t.save(),A=o-1;A>=0;A--){const u=r.setContext(this.getPointLabelContext(A)),{color:d,lineWidth:f}=u;!f||!d||(t.lineWidth=f,t.strokeStyle=d,t.setLineDash(u.borderDash),t.lineDashOffset=u.borderDashOffset,l=this.getDistanceFromCenterForValue(n.ticks.reverse?this.min:this.max),c=this.getPointPosition(A,l),t.beginPath(),t.moveTo(this.xCenter,this.yCenter),t.lineTo(c.x,c.y),t.stroke())}t.restore()}}drawBorder(){}drawLabels(){const t=this.ctx,n=this.options,r=n.ticks;if(!r.display)return;const a=this.getIndexAngle(0);let i,o;t.save(),t.translate(this.xCenter,this.yCenter),t.rotate(a),t.textAlign="center",t.textBaseline="middle",this.ticks.forEach((A,l)=>{if(l===0&&!n.reverse)return;const c=r.setContext(this.getContext(l)),u=ht(c.font);if(i=this.getDistanceFromCenterForValue(this.ticks[l].value),c.showLabelBackdrop){t.font=u.string,o=t.measureText(A.label).width,t.fillStyle=c.backdropColor;const d=St(c.backdropPadding);t.fillRect(-o/2-d.left,-i-u.size/2-d.top,o+d.width,u.size+d.height)}$i(t,A.label,0,-i,u,{color:c.color})}),t.restore()}drawTitle(){}}R(Mo,"id","radialLinear"),R(Mo,"defaults",{display:!0,animate:!0,position:"chartArea",angleLines:{display:!0,lineWidth:1,borderDash:[],borderDashOffset:0},grid:{circular:!1},startAngle:0,ticks:{showLabelBackdrop:!0,callback:ld.formatters.numeric},pointLabels:{backdropColor:void 0,backdropPadding:2,display:!0,font:{size:10},callback(t){return t},padding:5,centerPointLabels:!1}}),R(Mo,"defaultRoutes",{"angleLines.color":"borderColor","pointLabels.color":"color","ticks.color":"color"}),R(Mo,"descriptors",{angleLines:{_fallback:"grid"}});const ud={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}},gn=Object.keys(ud);function _P(e,t){return e-t}function Uy(e,t){if(Ee(t))return null;const n=e._adapter,{parser:r,round:a,isoWeekday:i}=e._parseOpts;let o=t;return typeof r=="function"&&(o=r(o)),ft(o)||(o=typeof r=="string"?n.parse(o,r):n.parse(o)),o===null?null:(a&&(o=a==="week"&&(ti(i)||i===!0)?n.startOf(o,"isoWeek",i):n.startOf(o,a)),+o)}function Qy(e,t,n,r){const a=gn.length;for(let i=gn.indexOf(e);i<a-1;++i){const o=ud[gn[i]],A=o.steps?o.steps:Number.MAX_SAFE_INTEGER;if(o.common&&Math.ceil((n-t)/(A*o.size))<=r)return gn[i]}return gn[a-1]}function CP(e,t,n,r,a){for(let i=gn.length-1;i>=gn.indexOf(n);i--){const o=gn[i];if(ud[o].common&&e._adapter.diff(a,r,o)>=t-1)return o}return gn[n?gn.indexOf(n):0]}function kP(e){for(let t=gn.indexOf(e)+1,n=gn.length;t<n;++t)if(ud[gn[t]].common)return gn[t]}function Ly(e,t,n){if(!n)e[t]=!0;else if(n.length){const{lo:r,hi:a}=Ym(n,t),i=n[r]>=t?n[r]:n[a];e[i]=!0}}function EP(e,t,n,r){const a=e._adapter,i=+a.startOf(t[0].value,r),o=t[t.length-1].value;let A,l;for(A=i;A<=o;A=+a.add(A,1,r))l=n[A],l>=0&&(t[l].major=!0);return t}function Oy(e,t,n){const r=[],a={},i=t.length;let o,A;for(o=0;o<i;++o)A=t[o],a[A]=o,r.push({value:A,major:!1});return i===0||!n?r:EP(e,r,a,n)}class NA extends Xi{constructor(t){super(t),this._cache={data:[],labels:[],all:[]},this._unit="day",this._majorUnit=void 0,this._offsets={},this._normalized=!1,this._parseOpts=void 0}init(t,n={}){const r=t.time||(t.time={}),a=this._adapter=new l_._date(t.adapters.date);a.init(n),eA(r.displayFormats,a.formats()),this._parseOpts={parser:r.parser,round:r.round,isoWeekday:r.isoWeekday},super.init(t),this._normalized=n.normalized}parse(t,n){return t===void 0?null:Uy(this,t)}beforeLayout(){super.beforeLayout(),this._cache={data:[],labels:[],all:[]}}determineDataLimits(){const t=this.options,n=this._adapter,r=t.time.unit||"day";let{min:a,max:i,minDefined:o,maxDefined:A}=this.getUserBounds();function l(c){!o&&!isNaN(c.min)&&(a=Math.min(a,c.min)),!A&&!isNaN(c.max)&&(i=Math.max(i,c.max))}(!o||!A)&&(l(this._getLabelBounds()),(t.bounds!=="ticks"||t.ticks.source!=="labels")&&l(this.getMinMax(!1))),a=ft(a)&&!isNaN(a)?a:+n.startOf(Date.now(),r),i=ft(i)&&!isNaN(i)?i:+n.endOf(Date.now(),r)+1,this.min=Math.min(a,i-1),this.max=Math.max(a+1,i)}_getLabelBounds(){const t=this.getLabelTimestamps();let n=Number.POSITIVE_INFINITY,r=Number.NEGATIVE_INFINITY;return t.length&&(n=t[0],r=t[t.length-1]),{min:n,max:r}}buildTicks(){const t=this.options,n=t.time,r=t.ticks,a=r.source==="labels"?this.getLabelTimestamps():this._generate();t.bounds==="ticks"&&a.length&&(this.min=this._userMin||a[0],this.max=this._userMax||a[a.length-1]);const i=this.min,o=this.max,A=sO(a,i,o);return this._unit=n.unit||(r.autoSkip?Qy(n.minUnit,this.min,this.max,this._getLabelCapacity(i)):CP(this,A.length,n.minUnit,this.min,this.max)),this._majorUnit=!r.major.enabled||this._unit==="year"?void 0:kP(this._unit),this.initOffsets(a),t.reverse&&A.reverse(),Oy(this,A,this._majorUnit)}afterAutoSkip(){this.options.offsetAfterAutoskip&&this.initOffsets(this.ticks.map(t=>+t.value))}initOffsets(t=[]){let n=0,r=0,a,i;this.options.offset&&t.length&&(a=this.getDecimalForValue(t[0]),t.length===1?n=1-a:n=(this.getDecimalForValue(t[1])-a)/2,i=this.getDecimalForValue(t[t.length-1]),t.length===1?r=i:r=(i-this.getDecimalForValue(t[t.length-2]))/2);const o=t.length<3?.5:.25;n=Ht(n,0,o),r=Ht(r,0,o),this._offsets={start:n,end:r,factor:1/(n+1+r)}}_generate(){const t=this._adapter,n=this.min,r=this.max,a=this.options,i=a.time,o=i.unit||Qy(i.minUnit,n,r,this._getLabelCapacity(n)),A=de(a.ticks.stepSize,1),l=o==="week"?i.isoWeekday:!1,c=ti(l)||l===!0,u={};let d=n,f,p;if(c&&(d=+t.startOf(d,"isoWeek",l)),d=+t.startOf(d,c?"day":o),t.diff(r,n,o)>1e5*A)throw new Error(n+" and "+r+" are too far apart with stepSize of "+A+" "+o);const h=a.ticks.source==="data"&&this.getDataTimestamps();for(f=d,p=0;f<r;f=+t.add(f,A,o),p++)Ly(u,f,h);return(f===r||a.bounds==="ticks"||p===1)&&Ly(u,f,h),Object.keys(u).sort((g,B)=>g-B).map(g=>+g)}getLabelForValue(t){const n=this._adapter,r=this.options.time;return r.tooltipFormat?n.format(t,r.tooltipFormat):n.format(t,r.displayFormats.datetime)}format(t,n){const a=this.options.time.displayFormats,i=this._unit,o=n||a[i];return this._adapter.format(t,o)}_tickFormatFunction(t,n,r,a){const i=this.options,o=i.ticks.callback;if(o)return Re(o,[t,n,r],this);const A=i.time.displayFormats,l=this._unit,c=this._majorUnit,u=l&&A[l],d=c&&A[c],f=r[n],p=c&&d&&f&&f.major;return this._adapter.format(t,a||(p?d:u))}generateTickLabels(t){let n,r,a;for(n=0,r=t.length;n<r;++n)a=t[n],a.label=this._tickFormatFunction(a.value,n,t)}getDecimalForValue(t){return t===null?NaN:(t-this.min)/(this.max-this.min)}getPixelForValue(t){const n=this._offsets,r=this.getDecimalForValue(t);return this.getPixelForDecimal((n.start+r)*n.factor)}getValueForPixel(t){const n=this._offsets,r=this.getDecimalForPixel(t)/n.factor-n.end;return this.min+r*(this.max-this.min)}_getLabelSize(t){const n=this.options.ticks,r=this.ctx.measureText(t).width,a=Ft(this.isHorizontal()?n.maxRotation:n.minRotation),i=Math.cos(a),o=Math.sin(a),A=this._resolveTickFontOptions(0).size;return{w:r*i+A*o,h:r*o+A*i}}_getLabelCapacity(t){const n=this.options.time,r=n.displayFormats,a=r[n.unit]||r.millisecond,i=this._tickFormatFunction(t,0,Oy(this,[t],this._majorUnit),a),o=this._getLabelSize(i),A=Math.floor(this.isHorizontal()?this.width/o.w:this.height/o.h)-1;return A>0?A:1}getDataTimestamps(){let t=this._cache.data||[],n,r;if(t.length)return t;const a=this.getMatchingVisibleMetas();if(this._normalized&&a.length)return this._cache.data=a[0].controller.getAllParsedValues(this);for(n=0,r=a.length;n<r;++n)t=t.concat(a[n].controller.getAllParsedValues(this));return this._cache.data=this.normalize(t)}getLabelTimestamps(){const t=this._cache.labels||[];let n,r;if(t.length)return t;const a=this.getLabels();for(n=0,r=a.length;n<r;++n)t.push(Uy(this,a[n]));return this._cache.labels=this._normalized?t:this.normalize(t)}normalize(t){return Rb(t.sort(_P))}}R(NA,"id","time"),R(NA,"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 sc(e,t,n){let r=0,a=e.length-1,i,o,A,l;n?(t>=e[r].pos&&t<=e[a].pos&&({lo:r,hi:a}=Xr(e,"pos",t)),{pos:i,time:A}=e[r],{pos:o,time:l}=e[a]):(t>=e[r].time&&t<=e[a].time&&({lo:r,hi:a}=Xr(e,"time",t)),{time:i,pos:A}=e[r],{time:o,pos:l}=e[a]);const c=o-i;return c?A+(l-A)*(t-i)/c:A}class rh extends NA{constructor(t){super(t),this._table=[],this._minPos=void 0,this._tableRange=void 0}initOffsets(){const t=this._getTimestampsForTable(),n=this._table=this.buildLookupTable(t);this._minPos=sc(n,this.min),this._tableRange=sc(n,this.max)-this._minPos,super.initOffsets(t)}buildLookupTable(t){const{min:n,max:r}=this,a=[],i=[];let o,A,l,c,u;for(o=0,A=t.length;o<A;++o)c=t[o],c>=n&&c<=r&&a.push(c);if(a.length<2)return[{time:n,pos:0},{time:r,pos:1}];for(o=0,A=a.length;o<A;++o)u=a[o+1],l=a[o-1],c=a[o],Math.round((u+l)/2)!==c&&i.push({time:c,pos:o/(A-1)});return i}_getTimestampsForTable(){let t=this._cache.all||[];if(t.length)return t;const n=this.getDataTimestamps(),r=this.getLabelTimestamps();return n.length&&r.length?t=this.normalize(n.concat(r)):t=n.length?n:r,t=this._cache.all=t,t}getDecimalForValue(t){return(sc(this._table,t)-this._minPos)/this._tableRange}getValueForPixel(t){const n=this._offsets,r=this.getDecimalForPixel(t)/n.factor-n.end;return sc(this._table,r*this._tableRange+this._minPos,!0)}}R(rh,"id","timeseries"),R(rh,"defaults",NA.defaults);var SP=Object.freeze({__proto__:null,CategoryScale:Zp,LinearScale:eh,LogarithmicScale:th,RadialLinearScale:Mo,TimeScale:NA,TimeSeriesScale:rh});const Tr=[QM,lN,rP,SP];var xP=typeof global=="object"&&global&&global.Object===Object&&global;const I_=xP;var FP=typeof self=="object"&&self&&self.Object===Object&&self,IP=I_||FP||Function("return this")();const Dr=IP;var TP=Dr.Symbol;const ni=TP;var T_=Object.prototype,DP=T_.hasOwnProperty,UP=T_.toString,Co=ni?ni.toStringTag:void 0;function QP(e){var t=DP.call(e,Co),n=e[Co];try{e[Co]=void 0;var r=!0}catch{}var a=UP.call(e);return r&&(t?e[Co]=n:delete e[Co]),a}var LP=Object.prototype,OP=LP.toString;function MP(e){return OP.call(e)}var NP="[object Null]",PP="[object Undefined]",My=ni?ni.toStringTag:void 0;function hl(e){return e==null?e===void 0?PP:NP:My&&My in Object(e)?QP(e):MP(e)}function Ki(e){return e!=null&&typeof e=="object"}var HP=Array.isArray;const qs=HP;function ml(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}var RP="[object AsyncFunction]",VP="[object Function]",$P="[object GeneratorFunction]",KP="[object Proxy]";function D_(e){if(!ml(e))return!1;var t=hl(e);return t==VP||t==$P||t==RP||t==KP}var zP=Dr["__core-js_shared__"];const Uf=zP;var Ny=function(){var e=/[^.]+$/.exec(Uf&&Uf.keys&&Uf.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function WP(e){return!!Ny&&Ny in e}var GP=Function.prototype,jP=GP.toString;function Ji(e){if(e!=null){try{return jP.call(e)}catch{}try{return e+""}catch{}}return""}var YP=/[\\^$.*+?()[\]{}|]/g,qP=/^\[object .+?Constructor\]$/,XP=Function.prototype,JP=Object.prototype,ZP=XP.toString,e9=JP.hasOwnProperty,t9=RegExp("^"+ZP.call(e9).replace(YP,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function n9(e){if(!ml(e)||WP(e))return!1;var t=D_(e)?t9:qP;return t.test(Ji(e))}function r9(e,t){return e==null?void 0:e[t]}function Zi(e,t){var n=r9(e,t);return n9(n)?n:void 0}var a9=Zi(Dr,"WeakMap");const ah=a9;var Py=Object.create,i9=function(){function e(){}return function(t){if(!ml(t))return{};if(Py)return Py(t);e.prototype=t;var n=new e;return e.prototype=void 0,n}}();const s9=i9;function o9(e,t){var n=-1,r=e.length;for(t||(t=Array(r));++n<r;)t[n]=e[n];return t}var A9=function(){try{var e=Zi(Object,"defineProperty");return e({},"",{}),e}catch{}}();const Hy=A9;function l9(e,t){for(var n=-1,r=e==null?0:e.length;++n<r&&t(e[n],n,e)!==!1;);return e}var c9=9007199254740991,u9=/^(?:0|[1-9]\d*)$/;function d9(e,t){var n=typeof e;return t=t??c9,!!t&&(n=="number"||n!="symbol"&&u9.test(e))&&e>-1&&e%1==0&&e<t}function U_(e,t,n){t=="__proto__"&&Hy?Hy(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}function og(e,t){return e===t||e!==e&&t!==t}var f9=Object.prototype,p9=f9.hasOwnProperty;function Q_(e,t,n){var r=e[t];(!(p9.call(e,t)&&og(r,n))||n===void 0&&!(t in e))&&U_(e,t,n)}function dd(e,t,n,r){var a=!n;n||(n={});for(var i=-1,o=t.length;++i<o;){var A=t[i],l=r?r(n[A],e[A],A,n,e):void 0;l===void 0&&(l=e[A]),a?U_(n,A,l):Q_(n,A,l)}return n}var h9=9007199254740991;function L_(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=h9}function Ag(e){return e!=null&&L_(e.length)&&!D_(e)}var m9=Object.prototype;function fd(e){var t=e&&e.constructor,n=typeof t=="function"&&t.prototype||m9;return e===n}function g9(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}var v9="[object Arguments]";function Ry(e){return Ki(e)&&hl(e)==v9}var O_=Object.prototype,y9=O_.hasOwnProperty,B9=O_.propertyIsEnumerable,w9=Ry(function(){return arguments}())?Ry:function(e){return Ki(e)&&y9.call(e,"callee")&&!B9.call(e,"callee")};const M_=w9;function b9(){return!1}var N_=typeof exports=="object"&&exports&&!exports.nodeType&&exports,Vy=N_&&typeof module=="object"&&module&&!module.nodeType&&module,_9=Vy&&Vy.exports===N_,$y=_9?Dr.Buffer:void 0,C9=$y?$y.isBuffer:void 0,k9=C9||b9;const PA=k9;var E9="[object Arguments]",S9="[object Array]",x9="[object Boolean]",F9="[object Date]",I9="[object Error]",T9="[object Function]",D9="[object Map]",U9="[object Number]",Q9="[object Object]",L9="[object RegExp]",O9="[object Set]",M9="[object String]",N9="[object WeakMap]",P9="[object ArrayBuffer]",H9="[object DataView]",R9="[object Float32Array]",V9="[object Float64Array]",$9="[object Int8Array]",K9="[object Int16Array]",z9="[object Int32Array]",W9="[object Uint8Array]",G9="[object Uint8ClampedArray]",j9="[object Uint16Array]",Y9="[object Uint32Array]",at={};at[R9]=at[V9]=at[$9]=at[K9]=at[z9]=at[W9]=at[G9]=at[j9]=at[Y9]=!0;at[E9]=at[S9]=at[P9]=at[x9]=at[H9]=at[F9]=at[I9]=at[T9]=at[D9]=at[U9]=at[Q9]=at[L9]=at[O9]=at[M9]=at[N9]=!1;function q9(e){return Ki(e)&&L_(e.length)&&!!at[hl(e)]}function lg(e){return function(t){return e(t)}}var P_=typeof exports=="object"&&exports&&!exports.nodeType&&exports,oA=P_&&typeof module=="object"&&module&&!module.nodeType&&module,X9=oA&&oA.exports===P_,Qf=X9&&I_.process,J9=function(){try{var e=oA&&oA.require&&oA.require("util").types;return e||Qf&&Qf.binding&&Qf.binding("util")}catch{}}();const Xs=J9;var Ky=Xs&&Xs.isTypedArray,Z9=Ky?lg(Ky):q9;const cg=Z9;var eH=Object.prototype,tH=eH.hasOwnProperty;function H_(e,t){var n=qs(e),r=!n&&M_(e),a=!n&&!r&&PA(e),i=!n&&!r&&!a&&cg(e),o=n||r||a||i,A=o?g9(e.length,String):[],l=A.length;for(var c in e)(t||tH.call(e,c))&&!(o&&(c=="length"||a&&(c=="offset"||c=="parent")||i&&(c=="buffer"||c=="byteLength"||c=="byteOffset")||d9(c,l)))&&A.push(c);return A}function R_(e,t){return function(n){return e(t(n))}}var nH=R_(Object.keys,Object);const rH=nH;var aH=Object.prototype,iH=aH.hasOwnProperty;function V_(e){if(!fd(e))return rH(e);var t=[];for(var n in Object(e))iH.call(e,n)&&n!="constructor"&&t.push(n);return t}function ug(e){return Ag(e)?H_(e):V_(e)}function sH(e){var t=[];if(e!=null)for(var n in Object(e))t.push(n);return t}var oH=Object.prototype,AH=oH.hasOwnProperty;function lH(e){if(!ml(e))return sH(e);var t=fd(e),n=[];for(var r in e)r=="constructor"&&(t||!AH.call(e,r))||n.push(r);return n}function dg(e){return Ag(e)?H_(e,!0):lH(e)}var cH=Zi(Object,"create");const HA=cH;function uH(){this.__data__=HA?HA(null):{},this.size=0}function dH(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}var fH="__lodash_hash_undefined__",pH=Object.prototype,hH=pH.hasOwnProperty;function mH(e){var t=this.__data__;if(HA){var n=t[e];return n===fH?void 0:n}return hH.call(t,e)?t[e]:void 0}var gH=Object.prototype,vH=gH.hasOwnProperty;function yH(e){var t=this.__data__;return HA?t[e]!==void 0:vH.call(t,e)}var BH="__lodash_hash_undefined__";function wH(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=HA&&t===void 0?BH:t,this}function zi(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}zi.prototype.clear=uH;zi.prototype.delete=dH;zi.prototype.get=mH;zi.prototype.has=yH;zi.prototype.set=wH;function bH(){this.__data__=[],this.size=0}function pd(e,t){for(var n=e.length;n--;)if(og(e[n][0],t))return n;return-1}var _H=Array.prototype,CH=_H.splice;function kH(e){var t=this.__data__,n=pd(t,e);if(n<0)return!1;var r=t.length-1;return n==r?t.pop():CH.call(t,n,1),--this.size,!0}function EH(e){var t=this.__data__,n=pd(t,e);return n<0?void 0:t[n][1]}function SH(e){return pd(this.__data__,e)>-1}function xH(e,t){var n=this.__data__,r=pd(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this}function ga(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}ga.prototype.clear=bH;ga.prototype.delete=kH;ga.prototype.get=EH;ga.prototype.has=SH;ga.prototype.set=xH;var FH=Zi(Dr,"Map");const RA=FH;function IH(){this.size=0,this.__data__={hash:new zi,map:new(RA||ga),string:new zi}}function TH(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}function hd(e,t){var n=e.__data__;return TH(t)?n[typeof t=="string"?"string":"hash"]:n.map}function DH(e){var t=hd(this,e).delete(e);return this.size-=t?1:0,t}function UH(e){return hd(this,e).get(e)}function QH(e){return hd(this,e).has(e)}function LH(e,t){var n=hd(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this}function es(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}es.prototype.clear=IH;es.prototype.delete=DH;es.prototype.get=UH;es.prototype.has=QH;es.prototype.set=LH;function $_(e,t){for(var n=-1,r=t.length,a=e.length;++n<r;)e[a+n]=t[n];return e}var OH=R_(Object.getPrototypeOf,Object);const K_=OH;function MH(){this.__data__=new ga,this.size=0}function NH(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}function PH(e){return this.__data__.get(e)}function HH(e){return this.__data__.has(e)}var RH=200;function VH(e,t){var n=this.__data__;if(n instanceof ga){var r=n.__data__;if(!RA||r.length<RH-1)return r.push([e,t]),this.size=++n.size,this;n=this.__data__=new es(r)}return n.set(e,t),this.size=n.size,this}function na(e){var t=this.__data__=new ga(e);this.size=t.size}na.prototype.clear=MH;na.prototype.delete=NH;na.prototype.get=PH;na.prototype.has=HH;na.prototype.set=VH;function $H(e,t){return e&&dd(t,ug(t),e)}function KH(e,t){return e&&dd(t,dg(t),e)}var z_=typeof exports=="object"&&exports&&!exports.nodeType&&exports,zy=z_&&typeof module=="object"&&module&&!module.nodeType&&module,zH=zy&&zy.exports===z_,Wy=zH?Dr.Buffer:void 0,Gy=Wy?Wy.allocUnsafe:void 0;function WH(e,t){if(t)return e.slice();var n=e.length,r=Gy?Gy(n):new e.constructor(n);return e.copy(r),r}function GH(e,t){for(var n=-1,r=e==null?0:e.length,a=0,i=[];++n<r;){var o=e[n];t(o,n,e)&&(i[a++]=o)}return i}function W_(){return[]}var jH=Object.prototype,YH=jH.propertyIsEnumerable,jy=Object.getOwnPropertySymbols,qH=jy?function(e){return e==null?[]:(e=Object(e),GH(jy(e),function(t){return YH.call(e,t)}))}:W_;const fg=qH;function XH(e,t){return dd(e,fg(e),t)}var JH=Object.getOwnPropertySymbols,ZH=JH?function(e){for(var t=[];e;)$_(t,fg(e)),e=K_(e);return t}:W_;const G_=ZH;function eR(e,t){return dd(e,G_(e),t)}function j_(e,t,n){var r=t(e);return qs(e)?r:$_(r,n(e))}function ih(e){return j_(e,ug,fg)}function tR(e){return j_(e,dg,G_)}var nR=Zi(Dr,"DataView");const sh=nR;var rR=Zi(Dr,"Promise");const oh=rR;var aR=Zi(Dr,"Set");const Ah=aR;var Yy="[object Map]",iR="[object Object]",qy="[object Promise]",Xy="[object Set]",Jy="[object WeakMap]",Zy="[object DataView]",sR=Ji(sh),oR=Ji(RA),AR=Ji(oh),lR=Ji(Ah),cR=Ji(ah),Bi=hl;(sh&&Bi(new sh(new ArrayBuffer(1)))!=Zy||RA&&Bi(new RA)!=Yy||oh&&Bi(oh.resolve())!=qy||Ah&&Bi(new Ah)!=Xy||ah&&Bi(new ah)!=Jy)&&(Bi=function(e){var t=hl(e),n=t==iR?e.constructor:void 0,r=n?Ji(n):"";if(r)switch(r){case sR:return Zy;case oR:return Yy;case AR:return qy;case lR:return Xy;case cR:return Jy}return t});const Js=Bi;var uR=Object.prototype,dR=uR.hasOwnProperty;function fR(e){var t=e.length,n=new e.constructor(t);return t&&typeof e[0]=="string"&&dR.call(e,"index")&&(n.index=e.index,n.input=e.input),n}var pR=Dr.Uint8Array;const ku=pR;function pg(e){var t=new e.constructor(e.byteLength);return new ku(t).set(new ku(e)),t}function hR(e,t){var n=t?pg(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.byteLength)}var mR=/\w*$/;function gR(e){var t=new e.constructor(e.source,mR.exec(e));return t.lastIndex=e.lastIndex,t}var eB=ni?ni.prototype:void 0,tB=eB?eB.valueOf:void 0;function vR(e){return tB?Object(tB.call(e)):{}}function yR(e,t){var n=t?pg(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}var BR="[object Boolean]",wR="[object Date]",bR="[object Map]",_R="[object Number]",CR="[object RegExp]",kR="[object Set]",ER="[object String]",SR="[object Symbol]",xR="[object ArrayBuffer]",FR="[object DataView]",IR="[object Float32Array]",TR="[object Float64Array]",DR="[object Int8Array]",UR="[object Int16Array]",QR="[object Int32Array]",LR="[object Uint8Array]",OR="[object Uint8ClampedArray]",MR="[object Uint16Array]",NR="[object Uint32Array]";function PR(e,t,n){var r=e.constructor;switch(t){case xR:return pg(e);case BR:case wR:return new r(+e);case FR:return hR(e,n);case IR:case TR:case DR:case UR:case QR:case LR:case OR:case MR:case NR:return yR(e,n);case bR:return new r;case _R:case ER:return new r(e);case CR:return gR(e);case kR:return new r;case SR:return vR(e)}}function HR(e){return typeof e.constructor=="function"&&!fd(e)?s9(K_(e)):{}}var RR="[object Map]";function VR(e){return Ki(e)&&Js(e)==RR}var nB=Xs&&Xs.isMap,$R=nB?lg(nB):VR;const KR=$R;var zR="[object Set]";function WR(e){return Ki(e)&&Js(e)==zR}var rB=Xs&&Xs.isSet,GR=rB?lg(rB):WR;const jR=GR;var YR=1,qR=2,XR=4,Y_="[object Arguments]",JR="[object Array]",ZR="[object Boolean]",eV="[object Date]",tV="[object Error]",q_="[object Function]",nV="[object GeneratorFunction]",rV="[object Map]",aV="[object Number]",X_="[object Object]",iV="[object RegExp]",sV="[object Set]",oV="[object String]",AV="[object Symbol]",lV="[object WeakMap]",cV="[object ArrayBuffer]",uV="[object DataView]",dV="[object Float32Array]",fV="[object Float64Array]",pV="[object Int8Array]",hV="[object Int16Array]",mV="[object Int32Array]",gV="[object Uint8Array]",vV="[object Uint8ClampedArray]",yV="[object Uint16Array]",BV="[object Uint32Array]",Xe={};Xe[Y_]=Xe[JR]=Xe[cV]=Xe[uV]=Xe[ZR]=Xe[eV]=Xe[dV]=Xe[fV]=Xe[pV]=Xe[hV]=Xe[mV]=Xe[rV]=Xe[aV]=Xe[X_]=Xe[iV]=Xe[sV]=Xe[oV]=Xe[AV]=Xe[gV]=Xe[vV]=Xe[yV]=Xe[BV]=!0;Xe[tV]=Xe[q_]=Xe[lV]=!1;function qc(e,t,n,r,a,i){var o,A=t&YR,l=t&qR,c=t&XR;if(n&&(o=a?n(e,r,a,i):n(e)),o!==void 0)return o;if(!ml(e))return e;var u=qs(e);if(u){if(o=fR(e),!A)return o9(e,o)}else{var d=Js(e),f=d==q_||d==nV;if(PA(e))return WH(e,A);if(d==X_||d==Y_||f&&!a){if(o=l||f?{}:HR(e),!A)return l?eR(e,KH(o,e)):XH(e,$H(o,e))}else{if(!Xe[d])return a?e:{};o=PR(e,d,A)}}i||(i=new na);var p=i.get(e);if(p)return p;i.set(e,o),jR(e)?e.forEach(function(B){o.add(qc(B,t,n,B,e,i))}):KR(e)&&e.forEach(function(B,m){o.set(m,qc(B,t,n,m,e,i))});var h=c?l?tR:ih:l?dg:ug,g=u?void 0:h(e);return l9(g||e,function(B,m){g&&(m=B,B=e[m]),Q_(o,m,qc(B,t,n,m,e,i))}),o}var wV=1,bV=4;function ko(e){return qc(e,wV|bV)}var _V="__lodash_hash_undefined__";function CV(e){return this.__data__.set(e,_V),this}function kV(e){return this.__data__.has(e)}function Eu(e){var t=-1,n=e==null?0:e.length;for(this.__data__=new es;++t<n;)this.add(e[t])}Eu.prototype.add=Eu.prototype.push=CV;Eu.prototype.has=kV;function EV(e,t){for(var n=-1,r=e==null?0:e.length;++n<r;)if(t(e[n],n,e))return!0;return!1}function SV(e,t){return e.has(t)}var xV=1,FV=2;function J_(e,t,n,r,a,i){var o=n&xV,A=e.length,l=t.length;if(A!=l&&!(o&&l>A))return!1;var c=i.get(e),u=i.get(t);if(c&&u)return c==t&&u==e;var d=-1,f=!0,p=n&FV?new Eu:void 0;for(i.set(e,t),i.set(t,e);++d<A;){var h=e[d],g=t[d];if(r)var B=o?r(g,h,d,t,e,i):r(h,g,d,e,t,i);if(B!==void 0){if(B)continue;f=!1;break}if(p){if(!EV(t,function(m,v){if(!SV(p,v)&&(h===m||a(h,m,n,r,i)))return p.push(v)})){f=!1;break}}else if(!(h===g||a(h,g,n,r,i))){f=!1;break}}return i.delete(e),i.delete(t),f}function IV(e){var t=-1,n=Array(e.size);return e.forEach(function(r,a){n[++t]=[a,r]}),n}function TV(e){var t=-1,n=Array(e.size);return e.forEach(function(r){n[++t]=r}),n}var DV=1,UV=2,QV="[object Boolean]",LV="[object Date]",OV="[object Error]",MV="[object Map]",NV="[object Number]",PV="[object RegExp]",HV="[object Set]",RV="[object String]",VV="[object Symbol]",$V="[object ArrayBuffer]",KV="[object DataView]",aB=ni?ni.prototype:void 0,Lf=aB?aB.valueOf:void 0;function zV(e,t,n,r,a,i,o){switch(n){case KV:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case $V:return!(e.byteLength!=t.byteLength||!i(new ku(e),new ku(t)));case QV:case LV:case NV:return og(+e,+t);case OV:return e.name==t.name&&e.message==t.message;case PV:case RV:return e==t+"";case MV:var A=IV;case HV:var l=r&DV;if(A||(A=TV),e.size!=t.size&&!l)return!1;var c=o.get(e);if(c)return c==t;r|=UV,o.set(e,t);var u=J_(A(e),A(t),r,a,i,o);return o.delete(e),u;case VV:if(Lf)return Lf.call(e)==Lf.call(t)}return!1}var WV=1,GV=Object.prototype,jV=GV.hasOwnProperty;function YV(e,t,n,r,a,i){var o=n&WV,A=ih(e),l=A.length,c=ih(t),u=c.length;if(l!=u&&!o)return!1;for(var d=l;d--;){var f=A[d];if(!(o?f in t:jV.call(t,f)))return!1}var p=i.get(e),h=i.get(t);if(p&&h)return p==t&&h==e;var g=!0;i.set(e,t),i.set(t,e);for(var B=o;++d<l;){f=A[d];var m=e[f],v=t[f];if(r)var w=o?r(v,m,f,t,e,i):r(m,v,f,e,t,i);if(!(w===void 0?m===v||a(m,v,n,r,i):w)){g=!1;break}B||(B=f=="constructor")}if(g&&!B){var y=e.constructor,b=t.constructor;y!=b&&"constructor"in e&&"constructor"in t&&!(typeof y=="function"&&y instanceof y&&typeof b=="function"&&b instanceof b)&&(g=!1)}return i.delete(e),i.delete(t),g}var qV=1,iB="[object Arguments]",sB="[object Array]",oc="[object Object]",XV=Object.prototype,oB=XV.hasOwnProperty;function JV(e,t,n,r,a,i){var o=qs(e),A=qs(t),l=o?sB:Js(e),c=A?sB:Js(t);l=l==iB?oc:l,c=c==iB?oc:c;var u=l==oc,d=c==oc,f=l==c;if(f&&PA(e)){if(!PA(t))return!1;o=!0,u=!1}if(f&&!u)return i||(i=new na),o||cg(e)?J_(e,t,n,r,a,i):zV(e,t,l,n,r,a,i);if(!(n&qV)){var p=u&&oB.call(e,"__wrapped__"),h=d&&oB.call(t,"__wrapped__");if(p||h){var g=p?e.value():e,B=h?t.value():t;return i||(i=new na),a(g,B,n,r,i)}}return f?(i||(i=new na),YV(e,t,n,r,a,i)):!1}function Z_(e,t,n,r,a){return e===t?!0:e==null||t==null||!Ki(e)&&!Ki(t)?e!==e&&t!==t:JV(e,t,n,r,Z_,a)}var ZV="[object Map]",e$="[object Set]",t$=Object.prototype,n$=t$.hasOwnProperty;function r$(e){if(e==null)return!0;if(Ag(e)&&(qs(e)||typeof e=="string"||typeof e.splice=="function"||PA(e)||cg(e)||M_(e)))return!e.length;var t=Js(e);if(t==ZV||t==e$)return!e.size;if(fd(e))return!V_(e).length;for(var n in e)if(n$.call(e,n))return!1;return!0}function AB(e,t){return Z_(e,t)}var a$=Object.defineProperty,i$=Object.defineProperties,s$=Object.getOwnPropertyDescriptors,lB=Object.getOwnPropertySymbols,o$=Object.prototype.hasOwnProperty,A$=Object.prototype.propertyIsEnumerable,cB=(e,t,n)=>t in e?a$(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,l$=(e,t)=>{for(var n in t||(t={}))o$.call(t,n)&&cB(e,n,t[n]);if(lB)for(var n of lB(t))A$.call(t,n)&&cB(e,n,t[n]);return e},c$=(e,t)=>i$(e,s$(t));function u$(e){return(e.match(/[a-zA-Z0-9]+/g)||[]).map(t=>`${t.charAt(0).toUpperCase()}${t.slice(1)}`).join("")}var li=(e,t)=>{const n={chartData:{type:Object,required:!0},options:{type:Object,required:!1},chartId:{default:e,type:String},width:{default:400,type:Number},height:{default:400,type:Number},cssClasses:{type:String,default:""},styles:{type:Object},plugins:{type:Array,default:()=>[]},onLabelsUpdate:{type:Function},onChartUpdate:{type:Function},onChartDestroy:{type:Function},onChartRender:{type:Function}},r=u$(e);return s.defineComponent({name:r,props:n,emits:{"labels:update":()=>!0,"chart:update":a=>!0,"chart:destroy":()=>!0,"chart:render":a=>!0},setup(a,{emit:i,expose:o}){const A=s.ref(null),l=`${a.chartId}`;let c=s.shallowRef(null);s.watch(()=>a.chartData,u,{deep:!0}),s.watch(()=>a.options,B=>{c.value&&B&&(c.value.options=ko(B),h())},{deep:!0});function u(B){if(c.value){let m=c.value;AB(B.labels,c.value.data.labels)||(m.data.labels=B.labels,f()),AB(B.datasets,c.value.data.datasets)||B.datasets.forEach((v,w)=>{var y,b;if(r$(v))m.data.datasets=[];else{const _=ko(m.data),C=Object.keys((b=(y=_.datasets)==null?void 0:y[w])!=null?b:{}),E=Object.keys(v);C.filter(U=>U!=="_meta"&&E.indexOf(U)===-1).forEach(U=>{m.data.datasets[w]&&delete m.data.datasets[w][U]});for(const U in v){const T=ko(v[U]);m.data.datasets[w]||(m.data.datasets[w]={}),v.hasOwnProperty(U)&&T!=null&&m&&(m.data.datasets[w][U]=T)}}}),h()}else c.value&&g(),d()}function d(){A.value?(c.value=new Oe(A.value,{data:ko(a.chartData),type:t,options:ko(a.options),plugins:a.plugins}),p()):console.error(`Error on component ${r}, canvas cannot be rendered. Check if the render appends server-side`)}function f(){i("labels:update"),a.onLabelsUpdate&&a.onLabelsUpdate()}function p(){c.value&&(i("chart:render",c.value),a.onChartRender&&a.onChartRender(c.value))}function h(){c.value&&(c.value.update(),i("chart:update",c.value),a.onChartUpdate&&a.onChartUpdate(c.value))}function g(){c.value&&c.value.destroy(),i("chart:destroy"),a.onChartDestroy&&a.onChartDestroy()}return s.onMounted(d),s.onBeforeUnmount(()=>{c.value&&c.value.destroy()}),o({canvasRef:A,renderChart:d,chartInstance:c,canvasId:l,update:h}),()=>s.h("div",{style:c$(l$({maxWidth:"100%"},a.styles),{position:"relative"}),class:a.cssClasses},[s.h("canvas",{style:{maxWidth:"100%",maxHeight:"100%"},id:l,width:a.width,height:a.height,ref:A})])}})},md=li("bar-chart","bar"),gd=li("doughnut-chart","doughnut"),eC=li("line-chart","line");li("pie-chart","pie");li("polar-chart","polarArea");li("radar-chart","radar");li("bubble-chart","bubble");li("scatter-chart","scatter");const Su=s.defineComponent({__name:"InfoDoughnutChart",props:CL,setup(e){const t=e,n=s.ref(null);Oe.register(...Tr);const r=s.computed(()=>{const i=t.info==="typeRef"?"types":"rarities",o={},A=wt(t.deckCode);for(const c in A){const u=on().cardJsonObject[c];if(u===void 0)continue;let d=u[t.info];d==="Unit"&&(d=u.supertype==="Champion"?"Champion":"Follower"),o[d]===void 0&&(o[d]=0),o[d]+=A[c]}const l=[];for(const c in o){const u=ve().dataJson[i].find(f=>f.nameRef===c),d={key:c,value:o[c],color:u==null?void 0:u.color,name:u==null?void 0:u.name,order:u==null?void 0:u.order};l.push(d)}return console.log(l),l.sort((c,u)=>c.order-u.order),{labels:l.map(c=>c.name),datasets:[{data:l.map(c=>c.value),backgroundColor:l.map(c=>c.color)}]}}),a={cutout:55,layout:{padding:{top:10,bottom:10}},elements:{arc:{borderWidth:0}},plugins:{legend:{display:!0,position:"right",labels:{usePointStyle:!0,generateLabels(i){const o=[],A=i.data.labels;for(let l=0;l<i.data.labels.length;l++)o.push({text:`${A[l]} (${i.data.datasets[0].data[l]})`,borderRadius:999,datasetIndex:0,index:l,fontColor:Ya("--color-0"),fillStyle:i.data.datasets[0].backgroundColor[l]});return o}}},datalabels:{display:!1}}};return(i,o)=>(s.openBlock(),s.createBlock(s.unref(gd),{ref_key:"chart",ref:n,"chart-data":r.value,options:a},null,8,["chart-data"]))}}),d$={deck:{type:Object,required:!1,default:void 0},deckCode:{type:String,required:!1,default:void 0},paddingTop:{type:Number,required:!1,default:10},showDataLabels:{type:Boolean,required:!1,default:!0},dataLabelsOffset:{type:Number,required:!1,default:-10},tooltipsEnabled:{type:Boolean,required:!1,default:!0},displayXScale:{type:Boolean,required:!1,default:!0},animation:{type:Boolean,required:!1}};//! moment.js
846
846
  //! version : 2.29.4
847
847
  //! authors : Tim Wood, Iskren Chernev, Moment.js contributors
848
848
  //! license : MIT
@@ -4374,15 +4374,23 @@ Don't worry, you can receive more using any of the methods below so you can find
4374
4374
  prompt: {
4375
4375
  checkedIn: {
4376
4376
  text: "You are checked in for the tournament.",
4377
- button: "Go to Participant Page"
4377
+ buttons: {
4378
+ toParticipantPage: "Go to Participant Page"
4379
+ }
4378
4380
  },
4379
4381
  registered: {
4380
4382
  text: "You are registered for the tournament.",
4381
- button: "Check in"
4383
+ buttons: {
4384
+ checkIn: "Check in",
4385
+ withdraw: "Withdraw",
4386
+ editDecks: "Edit Decks"
4387
+ }
4382
4388
  },
4383
4389
  signUp: {
4384
4390
  text: "Sign up to participate in this tournament.",
4385
- button: "Sign Up"
4391
+ buttons: {
4392
+ signUp: "Sign Up"
4393
+ }
4386
4394
  }
4387
4395
  },
4388
4396
  errors: {
@@ -30,7 +30,7 @@ ${l}`:A)}else throw s},onCacheKey:s=>P3(t,r,s)}}function eE(e,t,r,n){const{modif
30
30
  */const dE="9.2.2";function uE(){let e=!1;typeof __VUE_I18N_FULL_INSTALL__!="boolean"&&(e=!0,ms().__VUE_I18N_FULL_INSTALL__=!0),typeof __VUE_I18N_LEGACY_API__!="boolean"&&(e=!0,ms().__VUE_I18N_LEGACY_API__=!0),typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(ms().__INTLIFY_PROD_DEVTOOLS__=!1),process.env.NODE_ENV!=="production"&&e&&console.warn("You are running the esm-bundler build of vue-i18n. It is recommended to configure your bundler to explicitly replace feature flag globals with boolean literals to get proper tree-shaking in the final bundle.")}let C0=Cr.__EXTEND_POINT__;const go=()=>++C0,Ht={FALLBACK_TO_ROOT:C0,NOT_SUPPORTED_PRESERVE:go(),NOT_SUPPORTED_FORMATTER:go(),NOT_SUPPORTED_PRESERVE_DIRECTIVE:go(),NOT_SUPPORTED_GET_CHOICE_INDEX:go(),COMPONENT_NAME_LEGACY_COMPATIBLE:go(),NOT_FOUND_PARENT_SCOPE:go()},fE={[Ht.FALLBACK_TO_ROOT]:"Fall back to {type} '{key}' with root locale.",[Ht.NOT_SUPPORTED_PRESERVE]:"Not supported 'preserve'.",[Ht.NOT_SUPPORTED_FORMATTER]:"Not supported 'formatter'.",[Ht.NOT_SUPPORTED_PRESERVE_DIRECTIVE]:"Not supported 'preserveDirectiveContent'.",[Ht.NOT_SUPPORTED_GET_CHOICE_INDEX]:"Not supported 'getChoiceIndex'.",[Ht.COMPONENT_NAME_LEGACY_COMPATIBLE]:"Component name legacy compatible: '{name}' -> 'i18n'",[Ht.NOT_FOUND_PARENT_SCOPE]:"Not found parent scope. use the global scope."};function Zr(e,...t){return Ql(fE[e],...t)}let k0=ge.__EXTEND_POINT__;const ur=()=>++k0,Qe={UNEXPECTED_RETURN_TYPE:k0,INVALID_ARGUMENT:ur(),MUST_BE_CALL_SETUP_TOP:ur(),NOT_INSLALLED:ur(),NOT_AVAILABLE_IN_LEGACY_MODE:ur(),REQUIRED_VALUE:ur(),INVALID_VALUE:ur(),CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN:ur(),NOT_INSLALLED_WITH_PROVIDE:ur(),UNEXPECTED_ERROR:ur(),NOT_COMPATIBLE_LEGACY_VUE_I18N:ur(),BRIDGE_SUPPORT_VUE_2_ONLY:ur(),MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION:ur(),NOT_AVAILABLE_COMPOSITION_IN_LEGACY:ur(),__EXTEND_POINT__:ur()};function Ft(e,...t){return Ol(e,null,process.env.NODE_ENV!=="production"?{messages:pE,args:t}:void 0)}const pE={[Qe.UNEXPECTED_RETURN_TYPE]:"Unexpected return type in composer",[Qe.INVALID_ARGUMENT]:"Invalid argument",[Qe.MUST_BE_CALL_SETUP_TOP]:"Must be called at the top of a `setup` function",[Qe.NOT_INSLALLED]:"Need to install with `app.use` function",[Qe.UNEXPECTED_ERROR]:"Unexpected error",[Qe.NOT_AVAILABLE_IN_LEGACY_MODE]:"Not available in legacy mode",[Qe.REQUIRED_VALUE]:"Required in value: {0}",[Qe.INVALID_VALUE]:"Invalid value",[Qe.CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN]:"Cannot setup vue-devtools plugin",[Qe.NOT_INSLALLED_WITH_PROVIDE]:"Need to install with `provide` function",[Qe.NOT_COMPATIBLE_LEGACY_VUE_I18N]:"Not compatible legacy VueI18n.",[Qe.BRIDGE_SUPPORT_VUE_2_ONLY]:"vue-i18n-bridge support Vue 2.x only",[Qe.MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION]:"Must define ‘i18n’ option or custom block in Composition API with using local scope in Legacy API mode",[Qe.NOT_AVAILABLE_COMPOSITION_IN_LEGACY]:"Not available Compostion API in Legacy API mode. Please make sure that the legacy API mode is working properly"},bf=hn("__transrateVNode"),wf=hn("__datetimeParts"),Bf=hn("__numberParts"),hi=hn("__enableEmitter"),Bs=hn("__disableEmitter"),x0=hn("__setPluralRules");hn("__intlifyMeta");const E0=hn("__injectWithOption");function vf(e){if(!Ke(e))return e;for(const t in e)if(sf(e,t))if(!t.includes("."))Ke(e[t])&&vf(e[t]);else{const r=t.split("."),n=r.length-1;let a=e;for(let i=0;i<n;i++)r[i]in a||(a[r[i]]={}),a=a[r[i]];a[r[n]]=e[t],delete e[t],Ke(a[r[n]])&&vf(a[r[n]])}return e}function Hl(e,t){const{messages:r,__i18n:n,messageResolver:a,flatJson:i}=t,s=me(r)?r:qe(n)?{}:{[e]:{}};if(qe(n)&&n.forEach(A=>{if("locale"in A&&"resource"in A){const{locale:l,resource:c}=A;l?(s[l]=s[l]||{},vs(c,s[l])):vs(c,s)}else Y(A)&&vs(JSON.parse(A),s)}),a==null&&i)for(const A in s)sf(s,A)&&vf(s[A]);return s}const Rl=e=>!Ke(e)||qe(e);function vs(e,t){if(Rl(e)||Rl(t))throw Ft(Qe.INVALID_VALUE);for(const r in e)sf(e,r)&&(Rl(e[r])||Rl(t[r])?t[r]=e[r]:vs(e[r],t[r]))}function S0(e){return e.type}function F0(e,t,r){let n=Ke(t.messages)?t.messages:{};"__i18nGlobal"in r&&(n=Hl(e.locale.value,{messages:n,__i18n:r.__i18nGlobal}));const a=Object.keys(n);a.length&&a.forEach(i=>{e.mergeLocaleMessage(i,n[i])});{if(Ke(t.datetimeFormats)){const i=Object.keys(t.datetimeFormats);i.length&&i.forEach(s=>{e.mergeDateTimeFormat(s,t.datetimeFormats[s])})}if(Ke(t.numberFormats)){const i=Object.keys(t.numberFormats);i.length&&i.forEach(s=>{e.mergeNumberFormat(s,t.numberFormats[s])})}}}function I0(e){return o.createVNode(o.Text,null,e,0)}const T0="__INTLIFY_META__";let D0=0;function U0(e){return(t,r,n,a)=>e(r,n,o.getCurrentInstance()||void 0,a)}const hE=()=>{const e=o.getCurrentInstance();let t=null;return e&&(t=S0(e)[T0])?{[T0]:t}:null};function _f(e={},t){const{__root:r}=e,n=r===void 0;let a=Fe(e.inheritLocale)?e.inheritLocale:!0;const i=o.ref(r&&a?r.locale.value:Y(e.locale)?e.locale:bs),s=o.ref(r&&a?r.fallbackLocale.value:Y(e.fallbackLocale)||qe(e.fallbackLocale)||me(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:i.value),A=o.ref(Hl(i.value,e)),l=o.ref(me(e.datetimeFormats)?e.datetimeFormats:{[i.value]:{}}),c=o.ref(me(e.numberFormats)?e.numberFormats:{[i.value]:{}});let d=r?r.missingWarn:Fe(e.missingWarn)||va(e.missingWarn)?e.missingWarn:!0,u=r?r.fallbackWarn:Fe(e.fallbackWarn)||va(e.fallbackWarn)?e.fallbackWarn:!0,f=r?r.fallbackRoot:Fe(e.fallbackRoot)?e.fallbackRoot:!0,p=!!e.fallbackFormat,h=Bt(e.missing)?e.missing:null,m=Bt(e.missing)?U0(e.missing):null,w=Bt(e.postTranslation)?e.postTranslation:null,g=r?r.warnHtmlMessage:Fe(e.warnHtmlMessage)?e.warnHtmlMessage:!0,y=!!e.escapeParameter;const B=r?r.modifiers:me(e.modifiers)?e.modifiers:{};let b=e.pluralRules||r&&r.pluralRules,v;v=(()=>{n&&o0(null);const N={version:dE,locale:i.value,fallbackLocale:s.value,messages:A.value,modifiers:B,pluralRules:b,missing:m===null?void 0:m,missingWarn:d,fallbackWarn:u,fallbackFormat:p,unresolving:!0,postTranslation:w===null?void 0:w,warnHtmlMessage:g,escapeParameter:y,messageResolver:e.messageResolver,__meta:{framework:"vue"}};N.datetimeFormats=l.value,N.numberFormats=c.value,N.__datetimeFormatters=me(v)?v.__datetimeFormatters:void 0,N.__numberFormatters=me(v)?v.__numberFormatters:void 0,process.env.NODE_ENV!=="production"&&(N.__v_emitter=me(v)?v.__v_emitter:void 0);const H=$x(N);return n&&o0(H),H})(),ws(v,i.value,s.value);function C(){return[i.value,s.value,A.value,l.value,c.value]}const x=o.computed({get:()=>i.value,set:N=>{i.value=N,v.locale=i.value}}),E=o.computed({get:()=>s.value,set:N=>{s.value=N,v.fallbackLocale=s.value,ws(v,i.value,N)}}),Q=o.computed(()=>A.value),D=o.computed(()=>l.value),I=o.computed(()=>c.value);function U(){return Bt(w)?w:null}function X(N){w=N,v.postTranslation=N}function Z(){return h}function q(N){N!==null&&(m=U0(N)),h=N,v.missing=m}function K(N,H){return N!=="translate"||!H.resolvedMessage}const ce=(N,H,lt,ct,Nn,qr)=>{C();let Xr;if(process.env.NODE_ENV!=="production"||__INTLIFY_PROD_DEVTOOLS__)try{a0(hE()),n||(v.fallbackContext=r?zx():void 0),Xr=N(v)}finally{a0(null),n||(v.fallbackContext=void 0)}else Xr=N(v);if(Dt(Xr)&&Xr===Ml){const[dn,El]=H();if(process.env.NODE_ENV!=="production"&&r&&Y(dn)&&K(lt,El)&&(f&&(Pl(u,dn)||A0(d,dn))&&dr(Zr(Ht.FALLBACK_TO_ROOT,{key:dn,type:lt})),process.env.NODE_ENV!=="production")){const{__v_emitter:fs}=v;fs&&f&&fs.emit("fallback",{type:lt,key:dn,to:"global",groupId:`${lt}:${dn}`})}return r&&f?ct(r):Nn(dn)}else{if(qr(Xr))return Xr;throw Ft(Qe.UNEXPECTED_RETURN_TYPE)}};function W(...N){return ce(H=>Reflect.apply(u0,null,[H,...N]),()=>pf(...N),"translate",H=>Reflect.apply(H.t,H,[...N]),H=>H,H=>Y(H))}function oe(...N){const[H,lt,ct]=N;if(ct&&!Ke(ct))throw Ft(Qe.INVALID_ARGUMENT);return W(H,lt,Pt({resolvedMessage:!0},ct||{}))}function de(...N){return ce(H=>Reflect.apply(m0,null,[H,...N]),()=>hf(...N),"datetime format",H=>Reflect.apply(H.d,H,[...N]),()=>Nl,H=>Y(H))}function ve(...N){return ce(H=>Reflect.apply(w0,null,[H,...N]),()=>gf(...N),"number format",H=>Reflect.apply(H.n,H,[...N]),()=>Nl,H=>Y(H))}function Ie(N){return N.map(H=>Y(H)||Dt(H)||Fe(H)?I0(String(H)):H)}const ae={normalize:Ie,interpolate:N=>N,type:"vnode"};function P(...N){return ce(H=>{let lt;const ct=H;try{ct.processor=ae,lt=Reflect.apply(u0,null,[ct,...N])}finally{ct.processor=null}return lt},()=>pf(...N),"translate",H=>H[bf](...N),H=>[I0(H)],H=>qe(H))}function ne(...N){return ce(H=>Reflect.apply(w0,null,[H,...N]),()=>gf(...N),"number format",H=>H[Bf](...N),()=>[],H=>Y(H)||qe(H))}function Ve(...N){return ce(H=>Reflect.apply(m0,null,[H,...N]),()=>hf(...N),"datetime format",H=>H[wf](...N),()=>[],H=>Y(H)||qe(H))}function gt(N){b=N,v.pluralRules=b}function Ot(N,H){const lt=Y(H)?H:i.value,ct=S(lt);return v.messageResolver(ct,N)!==null}function Et(N){let H=null;const lt=X1(v,s.value,i.value);for(let ct=0;ct<lt.length;ct++){const Nn=A.value[lt[ct]]||{},qr=v.messageResolver(Nn,N);if(qr!=null){H=qr;break}}return H}function Yr(N){const H=Et(N);return H??(r?r.tm(N)||{}:{})}function S(N){return A.value[N]||{}}function k(N,H){A.value[N]=H,v.messages=A.value}function L(N,H){A.value[N]=A.value[N]||{},vs(H,A.value[N]),v.messages=A.value}function G(N){return l.value[N]||{}}function Ae(N,H){l.value[N]=H,v.datetimeFormats=l.value,b0(v,N,H)}function he(N,H){l.value[N]=Pt(l.value[N]||{},H),v.datetimeFormats=l.value,b0(v,N,H)}function Mt(N){return c.value[N]||{}}function bt(N,H){c.value[N]=H,v.numberFormats=c.value,v0(v,N,H)}function Lr(N,H){c.value[N]=Pt(c.value[N]||{},H),v.numberFormats=c.value,v0(v,N,H)}D0++,r&&pn&&(o.watch(r.locale,N=>{a&&(i.value=N,v.locale=N,ws(v,i.value,s.value))}),o.watch(r.fallbackLocale,N=>{a&&(s.value=N,v.fallbackLocale=N,ws(v,i.value,s.value))}));const je={id:D0,locale:x,fallbackLocale:E,get inheritLocale(){return a},set inheritLocale(N){a=N,N&&r&&(i.value=r.locale.value,s.value=r.fallbackLocale.value,ws(v,i.value,s.value))},get availableLocales(){return Object.keys(A.value).sort()},messages:Q,get modifiers(){return B},get pluralRules(){return b||{}},get isGlobal(){return n},get missingWarn(){return d},set missingWarn(N){d=N,v.missingWarn=d},get fallbackWarn(){return u},set fallbackWarn(N){u=N,v.fallbackWarn=u},get fallbackRoot(){return f},set fallbackRoot(N){f=N},get fallbackFormat(){return p},set fallbackFormat(N){p=N,v.fallbackFormat=p},get warnHtmlMessage(){return g},set warnHtmlMessage(N){g=N,v.warnHtmlMessage=N},get escapeParameter(){return y},set escapeParameter(N){y=N,v.escapeParameter=N},t:W,getLocaleMessage:S,setLocaleMessage:k,mergeLocaleMessage:L,getPostTranslationHandler:U,setPostTranslationHandler:X,getMissingHandler:Z,setMissingHandler:q,[x0]:gt};return je.datetimeFormats=D,je.numberFormats=I,je.rt=oe,je.te=Ot,je.tm=Yr,je.d=de,je.n=ve,je.getDateTimeFormat=G,je.setDateTimeFormat=Ae,je.mergeDateTimeFormat=he,je.getNumberFormat=Mt,je.setNumberFormat=bt,je.mergeNumberFormat=Lr,je[E0]=e.__injectWithOption,je[bf]=P,je[wf]=Ve,je[Bf]=ne,process.env.NODE_ENV!=="production"&&(je[hi]=N=>{v.__v_emitter=N},je[Bs]=()=>{v.__v_emitter=void 0}),je}function gE(e){const t=Y(e.locale)?e.locale:bs,r=Y(e.fallbackLocale)||qe(e.fallbackLocale)||me(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:t,n=Bt(e.missing)?e.missing:void 0,a=Fe(e.silentTranslationWarn)||va(e.silentTranslationWarn)?!e.silentTranslationWarn:!0,i=Fe(e.silentFallbackWarn)||va(e.silentFallbackWarn)?!e.silentFallbackWarn:!0,s=Fe(e.fallbackRoot)?e.fallbackRoot:!0,A=!!e.formatFallbackMessages,l=me(e.modifiers)?e.modifiers:{},c=e.pluralizationRules,d=Bt(e.postTranslation)?e.postTranslation:void 0,u=Y(e.warnHtmlInMessage)?e.warnHtmlInMessage!=="off":!0,f=!!e.escapeParameterHtml,p=Fe(e.sync)?e.sync:!0;process.env.NODE_ENV!=="production"&&e.formatter&&dr(Zr(Ht.NOT_SUPPORTED_FORMATTER)),process.env.NODE_ENV!=="production"&&e.preserveDirectiveContent&&dr(Zr(Ht.NOT_SUPPORTED_PRESERVE_DIRECTIVE));let h=e.messages;if(me(e.sharedMessages)){const v=e.sharedMessages;h=Object.keys(v).reduce((C,x)=>{const E=C[x]||(C[x]={});return Pt(E,v[x]),C},h||{})}const{__i18n:m,__root:w,__injectWithOption:g}=e,y=e.datetimeFormats,B=e.numberFormats,b=e.flatJson;return{locale:t,fallbackLocale:r,messages:h,flatJson:b,datetimeFormats:y,numberFormats:B,missing:n,missingWarn:a,fallbackWarn:i,fallbackRoot:s,fallbackFormat:A,modifiers:l,pluralRules:c,postTranslation:d,warnHtmlMessage:u,escapeParameter:f,messageResolver:e.messageResolver,inheritLocale:p,__i18n:m,__root:w,__injectWithOption:g}}function Cf(e={},t){{const r=_f(gE(e)),n={id:r.id,get locale(){return r.locale.value},set locale(a){r.locale.value=a},get fallbackLocale(){return r.fallbackLocale.value},set fallbackLocale(a){r.fallbackLocale.value=a},get messages(){return r.messages.value},get datetimeFormats(){return r.datetimeFormats.value},get numberFormats(){return r.numberFormats.value},get availableLocales(){return r.availableLocales},get formatter(){return process.env.NODE_ENV!=="production"&&dr(Zr(Ht.NOT_SUPPORTED_FORMATTER)),{interpolate(){return[]}}},set formatter(a){process.env.NODE_ENV!=="production"&&dr(Zr(Ht.NOT_SUPPORTED_FORMATTER))},get missing(){return r.getMissingHandler()},set missing(a){r.setMissingHandler(a)},get silentTranslationWarn(){return Fe(r.missingWarn)?!r.missingWarn:r.missingWarn},set silentTranslationWarn(a){r.missingWarn=Fe(a)?!a:a},get silentFallbackWarn(){return Fe(r.fallbackWarn)?!r.fallbackWarn:r.fallbackWarn},set silentFallbackWarn(a){r.fallbackWarn=Fe(a)?!a:a},get modifiers(){return r.modifiers},get formatFallbackMessages(){return r.fallbackFormat},set formatFallbackMessages(a){r.fallbackFormat=a},get postTranslation(){return r.getPostTranslationHandler()},set postTranslation(a){r.setPostTranslationHandler(a)},get sync(){return r.inheritLocale},set sync(a){r.inheritLocale=a},get warnHtmlInMessage(){return r.warnHtmlMessage?"warn":"off"},set warnHtmlInMessage(a){r.warnHtmlMessage=a!=="off"},get escapeParameterHtml(){return r.escapeParameter},set escapeParameterHtml(a){r.escapeParameter=a},get preserveDirectiveContent(){return process.env.NODE_ENV!=="production"&&dr(Zr(Ht.NOT_SUPPORTED_PRESERVE_DIRECTIVE)),!0},set preserveDirectiveContent(a){process.env.NODE_ENV!=="production"&&dr(Zr(Ht.NOT_SUPPORTED_PRESERVE_DIRECTIVE))},get pluralizationRules(){return r.pluralRules||{}},__composer:r,t(...a){const[i,s,A]=a,l={};let c=null,d=null;if(!Y(i))throw Ft(Qe.INVALID_ARGUMENT);const u=i;return Y(s)?l.locale=s:qe(s)?c=s:me(s)&&(d=s),qe(A)?c=A:me(A)&&(d=A),Reflect.apply(r.t,r,[u,c||d||{},l])},rt(...a){return Reflect.apply(r.rt,r,[...a])},tc(...a){const[i,s,A]=a,l={plural:1};let c=null,d=null;if(!Y(i))throw Ft(Qe.INVALID_ARGUMENT);const u=i;return Y(s)?l.locale=s:Dt(s)?l.plural=s:qe(s)?c=s:me(s)&&(d=s),Y(A)?l.locale=A:qe(A)?c=A:me(A)&&(d=A),Reflect.apply(r.t,r,[u,c||d||{},l])},te(a,i){return r.te(a,i)},tm(a){return r.tm(a)},getLocaleMessage(a){return r.getLocaleMessage(a)},setLocaleMessage(a,i){r.setLocaleMessage(a,i)},mergeLocaleMessage(a,i){r.mergeLocaleMessage(a,i)},d(...a){return Reflect.apply(r.d,r,[...a])},getDateTimeFormat(a){return r.getDateTimeFormat(a)},setDateTimeFormat(a,i){r.setDateTimeFormat(a,i)},mergeDateTimeFormat(a,i){r.mergeDateTimeFormat(a,i)},n(...a){return Reflect.apply(r.n,r,[...a])},getNumberFormat(a){return r.getNumberFormat(a)},setNumberFormat(a,i){r.setNumberFormat(a,i)},mergeNumberFormat(a,i){r.mergeNumberFormat(a,i)},getChoiceIndex(a,i){return process.env.NODE_ENV!=="production"&&dr(Zr(Ht.NOT_SUPPORTED_GET_CHOICE_INDEX)),-1},__onComponentInstanceCreated(a){const{componentInstanceCreatedListener:i}=e;i&&i(a,n)}};return process.env.NODE_ENV!=="production"&&(n.__enableEmitter=a=>{const i=r;i[hi]&&i[hi](a)},n.__disableEmitter=()=>{const a=r;a[Bs]&&a[Bs]()}),n}}const kf={tag:{type:[String,Object]},locale:{type:String},scope:{type:String,validator:e=>e==="parent"||e==="global",default:"parent"},i18n:{type:Object}};function mE({slots:e},t){return t.length===1&&t[0]==="default"?(e.default?e.default():[]).reduce((n,a)=>n=[...n,...qe(a.children)?a.children:[a]],[]):t.reduce((r,n)=>{const a=e[n];return a&&(r[n]=a()),r},{})}function Q0(e){return o.Fragment}const xf={name:"i18n-t",props:Pt({keypath:{type:String,required:!0},plural:{type:[Number,String],validator:e=>Dt(e)||!isNaN(e)}},kf),setup(e,t){const{slots:r,attrs:n}=t,a=e.i18n||V({useScope:e.scope,__useComponent:!0});return()=>{const i=Object.keys(r).filter(u=>u!=="_"),s={};e.locale&&(s.locale=e.locale),e.plural!==void 0&&(s.plural=Y(e.plural)?+e.plural:e.plural);const A=mE(t,i),l=a[bf](e.keypath,A,s),c=Pt({},n),d=Y(e.tag)||Ke(e.tag)?e.tag:Q0();return o.h(d,c,l)}}};function yE(e){return qe(e)&&!Y(e[0])}function L0(e,t,r,n){const{slots:a,attrs:i}=t;return()=>{const s={part:!0};let A={};e.locale&&(s.locale=e.locale),Y(e.format)?s.key=e.format:Ke(e.format)&&(Y(e.format.key)&&(s.key=e.format.key),A=Object.keys(e.format).reduce((f,p)=>r.includes(p)?Pt({},f,{[p]:e.format[p]}):f,{}));const l=n(e.value,s,A);let c=[s.key];qe(l)?c=l.map((f,p)=>{const h=a[f.type],m=h?h({[f.type]:f.value,index:p,parts:l}):[f.value];return yE(m)&&(m[0].key=`${f.type}-${p}`),m}):Y(l)&&(c=[l]);const d=Pt({},i),u=Y(e.tag)||Ke(e.tag)?e.tag:Q0();return o.h(u,d,c)}}const O0={name:"i18n-n",props:Pt({value:{type:Number,required:!0},format:{type:[String,Object]}},kf),setup(e,t){const r=e.i18n||V({useScope:"parent",__useComponent:!0});return L0(e,t,B0,(...n)=>r[Bf](...n))}},M0={name:"i18n-d",props:Pt({value:{type:[Number,Date],required:!0},format:{type:[String,Object]}},kf),setup(e,t){const r=e.i18n||V({useScope:"parent",__useComponent:!0});return L0(e,t,y0,(...n)=>r[wf](...n))}};function bE(e,t){const r=e;if(e.mode==="composition")return r.__getInstance(t)||e.global;{const n=r.__getInstance(t);return n!=null?n.__composer:e.global.__composer}}function wE(e){const t=s=>{const{instance:A,modifiers:l,value:c}=s;if(!A||!A.$)throw Ft(Qe.UNEXPECTED_ERROR);const d=bE(e,A.$);process.env.NODE_ENV!=="production"&&l.preserve&&dr(Zr(Ht.NOT_SUPPORTED_PRESERVE));const u=N0(c);return[Reflect.apply(d.t,d,[...P0(u)]),d]};return{created:(s,A)=>{const[l,c]=t(A);pn&&e.global===c&&(s.__i18nWatcher=o.watch(c.locale,()=>{A.instance&&A.instance.$forceUpdate()})),s.__composer=c,s.textContent=l},unmounted:s=>{pn&&s.__i18nWatcher&&(s.__i18nWatcher(),s.__i18nWatcher=void 0,delete s.__i18nWatcher),s.__composer&&(s.__composer=void 0,delete s.__composer)},beforeUpdate:(s,{value:A})=>{if(s.__composer){const l=s.__composer,c=N0(A);s.textContent=Reflect.apply(l.t,l,[...P0(c)])}},getSSRProps:s=>{const[A]=t(s);return{textContent:A}}}}function N0(e){if(Y(e))return{path:e};if(me(e)){if(!("path"in e))throw Ft(Qe.REQUIRED_VALUE,"path");return e}else throw Ft(Qe.INVALID_VALUE)}function P0(e){const{path:t,locale:r,args:n,choice:a,plural:i}=e,s={},A=n||{};return Y(r)&&(s.locale=r),Dt(a)&&(s.plural=a),Dt(i)&&(s.plural=i),[t,A,s]}function BE(e,t,...r){const n=me(r[0])?r[0]:{},a=!!n.useI18nComponentName,i=Fe(n.globalInstall)?n.globalInstall:!0;process.env.NODE_ENV!=="production"&&i&&a&&dr(Zr(Ht.COMPONENT_NAME_LEGACY_COMPATIBLE,{name:xf.name})),i&&(e.component(a?"i18n":xf.name,xf),e.component(O0.name,O0),e.component(M0.name,M0)),e.directive("t",wE(t))}const H0="vue-i18n: composer properties";let Ef;async function vE(e,t){return new Promise((r,n)=>{try{AE({id:"vue-devtools-plugin-vue-i18n",label:yf["vue-devtools-plugin-vue-i18n"],packageName:"vue-i18n",homepage:"https://vue-i18n.intlify.dev",logo:"https://vue-i18n.intlify.dev/vue-i18n-devtools-logo.png",componentStateTypes:[H0],app:e},a=>{Ef=a,a.on.visitComponentTree(({componentInstance:s,treeNode:A})=>{_E(s,A,t)}),a.on.inspectComponent(({componentInstance:s,instanceData:A})=>{s.vnode.el&&s.vnode.el.__VUE_I18N__&&A&&(t.mode==="legacy"?s.vnode.el.__VUE_I18N__!==t.global.__composer&&V0(A,s.vnode.el.__VUE_I18N__):V0(A,s.vnode.el.__VUE_I18N__))}),a.addInspector({id:"vue-i18n-resource-inspector",label:yf["vue-i18n-resource-inspector"],icon:"language",treeFilterPlaceholder:lE["vue-i18n-resource-inspector"]}),a.on.getInspectorTree(s=>{s.app===e&&s.inspectorId==="vue-i18n-resource-inspector"&&SE(s,t)});const i=new Map;a.on.getInspectorState(async s=>{if(s.app===e&&s.inspectorId==="vue-i18n-resource-inspector")if(a.unhighlightElement(),IE(s,t),s.nodeId==="global"){if(!i.has(s.app)){const[A]=await a.getComponentInstances(s.app);i.set(s.app,A)}a.highlightElement(i.get(s.app))}else{const A=FE(s.nodeId,t);A&&a.highlightElement(A)}}),a.on.editInspectorState(s=>{s.app===e&&s.inspectorId==="vue-i18n-resource-inspector"&&DE(s,t)}),a.addTimelineLayer({id:"vue-i18n-timeline",label:yf["vue-i18n-timeline"],color:cE["vue-i18n-timeline"]}),r(!0)})}catch(a){console.error(a),n(!1)}})}function R0(e){return e.type.name||e.type.displayName||e.type.__file||"Anonymous"}function _E(e,t,r){const n=r.mode==="composition"?r.global:r.global.__composer;if(e&&e.vnode.el&&e.vnode.el.__VUE_I18N__&&e.vnode.el.__VUE_I18N__!==n){const a={label:`i18n (${R0(e)} Scope)`,textColor:0,backgroundColor:16764185};t.tags.push(a)}}function V0(e,t){const r=H0;e.state.push({type:r,key:"locale",editable:!0,value:t.locale.value}),e.state.push({type:r,key:"availableLocales",editable:!1,value:t.availableLocales}),e.state.push({type:r,key:"fallbackLocale",editable:!0,value:t.fallbackLocale.value}),e.state.push({type:r,key:"inheritLocale",editable:!0,value:t.inheritLocale}),e.state.push({type:r,key:"messages",editable:!1,value:Sf(t.messages.value)}),e.state.push({type:r,key:"datetimeFormats",editable:!1,value:t.datetimeFormats.value}),e.state.push({type:r,key:"numberFormats",editable:!1,value:t.numberFormats.value})}function Sf(e){const t={};return Object.keys(e).forEach(r=>{const n=e[r];Bt(n)&&"source"in n?t[r]=EE(n):Ke(n)?t[r]=Sf(n):t[r]=n}),t}const CE={"<":"&lt;",">":"&gt;",'"':"&quot;","&":"&amp;"};function kE(e){return e.replace(/[<>"&]/g,xE)}function xE(e){return CE[e]||e}function EE(e){return{_custom:{type:"function",display:`<span>ƒ</span> ${e.source?`("${kE(e.source)}")`:"(?)"}`}}}function SE(e,t){e.rootNodes.push({id:"global",label:"Global Scope"});const r=t.mode==="composition"?t.global:t.global.__composer;for(const[n,a]of t.__instances){const i=t.mode==="composition"?a:a.__composer;r!==i&&e.rootNodes.push({id:i.id.toString(),label:`${R0(n)} Scope`})}}function FE(e,t){let r=null;if(e!=="global"){for(const[n,a]of t.__instances.entries())if(a.id.toString()===e){r=n;break}}return r}function z0(e,t){if(e==="global")return t.mode==="composition"?t.global:t.global.__composer;{const r=Array.from(t.__instances.values()).find(n=>n.id.toString()===e);return r?t.mode==="composition"?r:r.__composer:null}}function IE(e,t){const r=z0(e.nodeId,t);return r&&(e.state=TE(r)),null}function TE(e){const t={},r="Locale related info",n=[{type:r,key:"locale",editable:!0,value:e.locale.value},{type:r,key:"fallbackLocale",editable:!0,value:e.fallbackLocale.value},{type:r,key:"availableLocales",editable:!1,value:e.availableLocales},{type:r,key:"inheritLocale",editable:!0,value:e.inheritLocale}];t[r]=n;const a="Locale messages info",i=[{type:a,key:"messages",editable:!1,value:Sf(e.messages.value)}];t[a]=i;{const s="Datetime formats info",A=[{type:s,key:"datetimeFormats",editable:!1,value:e.datetimeFormats.value}];t[s]=A;const l="Datetime formats info",c=[{type:l,key:"numberFormats",editable:!1,value:e.numberFormats.value}];t[l]=c}return t}function _s(e,t){if(Ef){let r;t&&"groupId"in t&&(r=t.groupId,delete t.groupId),Ef.addTimelineEvent({layerId:"vue-i18n-timeline",event:{title:e,groupId:r,time:Date.now(),meta:{},data:t||{},logType:e==="compile-error"?"error":e==="fallback"||e==="missing"?"warning":"default"}})}}function DE(e,t){const r=z0(e.nodeId,t);if(r){const[n]=e.path;n==="locale"&&Y(e.state.value)?r.locale.value=e.state.value:n==="fallbackLocale"&&(Y(e.state.value)||qe(e.state.value)||Ke(e.state.value))?r.fallbackLocale.value=e.state.value:n==="inheritLocale"&&Fe(e.state.value)&&(r.inheritLocale=e.state.value)}}function UE(e,t,r){return{beforeCreate(){const n=o.getCurrentInstance();if(!n)throw Ft(Qe.UNEXPECTED_ERROR);const a=this.$options;if(a.i18n){const i=a.i18n;a.__i18n&&(i.__i18n=a.__i18n),i.__root=t,this===this.$root?this.$i18n=$0(e,i):(i.__injectWithOption=!0,this.$i18n=Cf(i))}else a.__i18n?this===this.$root?this.$i18n=$0(e,a):this.$i18n=Cf({__i18n:a.__i18n,__injectWithOption:!0,__root:t}):this.$i18n=e;a.__i18nGlobal&&F0(t,a,a),e.__onComponentInstanceCreated(this.$i18n),r.__setInstance(n,this.$i18n),this.$t=(...i)=>this.$i18n.t(...i),this.$rt=(...i)=>this.$i18n.rt(...i),this.$tc=(...i)=>this.$i18n.tc(...i),this.$te=(i,s)=>this.$i18n.te(i,s),this.$d=(...i)=>this.$i18n.d(...i),this.$n=(...i)=>this.$i18n.n(...i),this.$tm=i=>this.$i18n.tm(i)},mounted(){if(process.env.NODE_ENV!=="production"&&this.$el&&this.$i18n){this.$el.__VUE_I18N__=this.$i18n.__composer;const n=this.__v_emitter=lf(),a=this.$i18n;a.__enableEmitter&&a.__enableEmitter(n),n.on("*",_s)}},unmounted(){const n=o.getCurrentInstance();if(!n)throw Ft(Qe.UNEXPECTED_ERROR);if(process.env.NODE_ENV!=="production"&&this.$el&&this.$el.__VUE_I18N__&&(this.__v_emitter&&(this.__v_emitter.off("*",_s),delete this.__v_emitter),this.$i18n)){const a=this.$i18n;a.__disableEmitter&&a.__disableEmitter(),delete this.$el.__VUE_I18N__}delete this.$t,delete this.$rt,delete this.$tc,delete this.$te,delete this.$d,delete this.$n,delete this.$tm,r.__deleteInstance(n),delete this.$i18n}}}function $0(e,t){e.locale=t.locale||e.locale,e.fallbackLocale=t.fallbackLocale||e.fallbackLocale,e.missing=t.missing||e.missing,e.silentTranslationWarn=t.silentTranslationWarn||e.silentFallbackWarn,e.silentFallbackWarn=t.silentFallbackWarn||e.silentFallbackWarn,e.formatFallbackMessages=t.formatFallbackMessages||e.formatFallbackMessages,e.postTranslation=t.postTranslation||e.postTranslation,e.warnHtmlInMessage=t.warnHtmlInMessage||e.warnHtmlInMessage,e.escapeParameterHtml=t.escapeParameterHtml||e.escapeParameterHtml,e.sync=t.sync||e.sync,e.__composer[x0](t.pluralizationRules||e.pluralizationRules);const r=Hl(e.locale,{messages:t.messages,__i18n:t.__i18n});return Object.keys(r).forEach(n=>e.mergeLocaleMessage(n,r[n])),t.datetimeFormats&&Object.keys(t.datetimeFormats).forEach(n=>e.mergeDateTimeFormat(n,t.datetimeFormats[n])),t.numberFormats&&Object.keys(t.numberFormats).forEach(n=>e.mergeNumberFormat(n,t.numberFormats[n])),e}const QE=hn("global-vue-i18n");function LE(e={},t){const r=__VUE_I18N_LEGACY_API__&&Fe(e.legacy)?e.legacy:__VUE_I18N_LEGACY_API__,n=Fe(e.globalInjection)?e.globalInjection:!0,a=__VUE_I18N_LEGACY_API__&&r?!!e.allowComposition:!0,i=new Map,[s,A]=OE(e,r),l=hn(process.env.NODE_ENV!=="production"?"vue-i18n":"");function c(f){return i.get(f)||null}function d(f,p){i.set(f,p)}function u(f){i.delete(f)}{const f={get mode(){return __VUE_I18N_LEGACY_API__&&r?"legacy":"composition"},get allowComposition(){return a},async install(p,...h){process.env.NODE_ENV!=="production"&&(p.__VUE_I18N__=f),p.__VUE_I18N_SYMBOL__=l,p.provide(p.__VUE_I18N_SYMBOL__,f),!r&&n&&KE(p,f.global),__VUE_I18N_FULL_INSTALL__&&BE(p,f,...h),__VUE_I18N_LEGACY_API__&&r&&p.mixin(UE(A,A.__composer,f));const m=p.unmount;if(p.unmount=()=>{f.dispose(),m()},process.env.NODE_ENV!=="production"){if(!await vE(p,f))throw Ft(Qe.CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN);const g=lf();if(r){const y=A;y.__enableEmitter&&y.__enableEmitter(g)}else{const y=A;y[hi]&&y[hi](g)}g.on("*",_s)}},get global(){return A},dispose(){s.stop()},__instances:i,__getInstance:c,__setInstance:d,__deleteInstance:u};return f}}function V(e={}){const t=o.getCurrentInstance();if(t==null)throw Ft(Qe.MUST_BE_CALL_SETUP_TOP);if(!t.isCE&&t.appContext.app!=null&&!t.appContext.app.__VUE_I18N_SYMBOL__)throw Ft(Qe.NOT_INSLALLED);const r=ME(t),n=PE(r),a=S0(t),i=NE(e,a);if(__VUE_I18N_LEGACY_API__&&r.mode==="legacy"&&!e.__useComponent){if(!r.allowComposition)throw Ft(Qe.NOT_AVAILABLE_IN_LEGACY_MODE);return VE(t,i,n,e)}if(i==="global")return F0(n,e,a),n;if(i==="parent"){let l=HE(r,t,e.__useComponent);return l==null&&(process.env.NODE_ENV!=="production"&&dr(Zr(Ht.NOT_FOUND_PARENT_SCOPE)),l=n),l}const s=r;let A=s.__getInstance(t);if(A==null){const l=Pt({},e);"__i18n"in a&&(l.__i18n=a.__i18n),n&&(l.__root=n),A=_f(l),RE(s,t,A),s.__setInstance(t,A)}return A}function OE(e,t,r){const n=o.effectScope();{const a=__VUE_I18N_LEGACY_API__&&t?n.run(()=>Cf(e)):n.run(()=>_f(e));if(a==null)throw Ft(Qe.UNEXPECTED_ERROR);return[n,a]}}function ME(e){{const t=o.inject(e.isCE?QE:e.appContext.app.__VUE_I18N_SYMBOL__);if(!t)throw Ft(e.isCE?Qe.NOT_INSLALLED_WITH_PROVIDE:Qe.UNEXPECTED_ERROR);return t}}function NE(e,t){return Ll(e)?"__i18n"in t?"local":"global":e.useScope?e.useScope:"local"}function PE(e){return e.mode==="composition"?e.global:e.global.__composer}function HE(e,t,r=!1){let n=null;const a=t.root;let i=t.parent;for(;i!=null;){const s=e;if(e.mode==="composition")n=s.__getInstance(i);else if(__VUE_I18N_LEGACY_API__){const A=s.__getInstance(i);A!=null&&(n=A.__composer,r&&n&&!n[E0]&&(n=null))}if(n!=null||a===i)break;i=i.parent}return n}function RE(e,t,r){let n=null;o.onMounted(()=>{if(process.env.NODE_ENV!=="production"&&t.vnode.el){t.vnode.el.__VUE_I18N__=r,n=lf();const a=r;a[hi]&&a[hi](n),n.on("*",_s)}},t),o.onUnmounted(()=>{if(process.env.NODE_ENV!=="production"&&t.vnode.el&&t.vnode.el.__VUE_I18N__){n&&n.off("*",_s);const a=r;a[Bs]&&a[Bs](),delete t.vnode.el.__VUE_I18N__}e.__deleteInstance(t)},t)}function VE(e,t,r,n={}){const a=t==="local",i=o.shallowRef(null);if(a&&e.proxy&&!(e.proxy.$options.i18n||e.proxy.$options.__i18n))throw Ft(Qe.MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION);const s=Fe(n.inheritLocale)?n.inheritLocale:!0,A=o.ref(a&&s?r.locale.value:Y(n.locale)?n.locale:bs),l=o.ref(a&&s?r.fallbackLocale.value:Y(n.fallbackLocale)||qe(n.fallbackLocale)||me(n.fallbackLocale)||n.fallbackLocale===!1?n.fallbackLocale:A.value),c=o.ref(Hl(A.value,n)),d=o.ref(me(n.datetimeFormats)?n.datetimeFormats:{[A.value]:{}}),u=o.ref(me(n.numberFormats)?n.numberFormats:{[A.value]:{}}),f=a?r.missingWarn:Fe(n.missingWarn)||va(n.missingWarn)?n.missingWarn:!0,p=a?r.fallbackWarn:Fe(n.fallbackWarn)||va(n.fallbackWarn)?n.fallbackWarn:!0,h=a?r.fallbackRoot:Fe(n.fallbackRoot)?n.fallbackRoot:!0,m=!!n.fallbackFormat,w=Bt(n.missing)?n.missing:null,g=Bt(n.postTranslation)?n.postTranslation:null,y=a?r.warnHtmlMessage:Fe(n.warnHtmlMessage)?n.warnHtmlMessage:!0,B=!!n.escapeParameter,b=a?r.modifiers:me(n.modifiers)?n.modifiers:{},v=n.pluralRules||a&&r.pluralRules;function _(){return[A.value,l.value,c.value,d.value,u.value]}const C=o.computed({get:()=>i.value?i.value.locale.value:A.value,set:k=>{i.value&&(i.value.locale.value=k),A.value=k}}),x=o.computed({get:()=>i.value?i.value.fallbackLocale.value:l.value,set:k=>{i.value&&(i.value.fallbackLocale.value=k),l.value=k}}),E=o.computed(()=>i.value?i.value.messages.value:c.value),Q=o.computed(()=>d.value),D=o.computed(()=>u.value);function I(){return i.value?i.value.getPostTranslationHandler():g}function U(k){i.value&&i.value.setPostTranslationHandler(k)}function X(){return i.value?i.value.getMissingHandler():w}function Z(k){i.value&&i.value.setMissingHandler(k)}function q(k){return _(),k()}function K(...k){return i.value?q(()=>Reflect.apply(i.value.t,null,[...k])):q(()=>"")}function ce(...k){return i.value?Reflect.apply(i.value.rt,null,[...k]):""}function W(...k){return i.value?q(()=>Reflect.apply(i.value.d,null,[...k])):q(()=>"")}function oe(...k){return i.value?q(()=>Reflect.apply(i.value.n,null,[...k])):q(()=>"")}function de(k){return i.value?i.value.tm(k):{}}function ve(k,L){return i.value?i.value.te(k,L):!1}function Ie(k){return i.value?i.value.getLocaleMessage(k):{}}function pe(k,L){i.value&&(i.value.setLocaleMessage(k,L),c.value[k]=L)}function ae(k,L){i.value&&i.value.mergeLocaleMessage(k,L)}function P(k){return i.value?i.value.getDateTimeFormat(k):{}}function ne(k,L){i.value&&(i.value.setDateTimeFormat(k,L),d.value[k]=L)}function Ve(k,L){i.value&&i.value.mergeDateTimeFormat(k,L)}function gt(k){return i.value?i.value.getNumberFormat(k):{}}function Ot(k,L){i.value&&(i.value.setNumberFormat(k,L),u.value[k]=L)}function Et(k,L){i.value&&i.value.mergeNumberFormat(k,L)}const Yr={get id(){return i.value?i.value.id:-1},locale:C,fallbackLocale:x,messages:E,datetimeFormats:Q,numberFormats:D,get inheritLocale(){return i.value?i.value.inheritLocale:s},set inheritLocale(k){i.value&&(i.value.inheritLocale=k)},get availableLocales(){return i.value?i.value.availableLocales:Object.keys(c.value)},get modifiers(){return i.value?i.value.modifiers:b},get pluralRules(){return i.value?i.value.pluralRules:v},get isGlobal(){return i.value?i.value.isGlobal:!1},get missingWarn(){return i.value?i.value.missingWarn:f},set missingWarn(k){i.value&&(i.value.missingWarn=k)},get fallbackWarn(){return i.value?i.value.fallbackWarn:p},set fallbackWarn(k){i.value&&(i.value.missingWarn=k)},get fallbackRoot(){return i.value?i.value.fallbackRoot:h},set fallbackRoot(k){i.value&&(i.value.fallbackRoot=k)},get fallbackFormat(){return i.value?i.value.fallbackFormat:m},set fallbackFormat(k){i.value&&(i.value.fallbackFormat=k)},get warnHtmlMessage(){return i.value?i.value.warnHtmlMessage:y},set warnHtmlMessage(k){i.value&&(i.value.warnHtmlMessage=k)},get escapeParameter(){return i.value?i.value.escapeParameter:B},set escapeParameter(k){i.value&&(i.value.escapeParameter=k)},t:K,getPostTranslationHandler:I,setPostTranslationHandler:U,getMissingHandler:X,setMissingHandler:Z,rt:ce,d:W,n:oe,tm:de,te:ve,getLocaleMessage:Ie,setLocaleMessage:pe,mergeLocaleMessage:ae,getDateTimeFormat:P,setDateTimeFormat:ne,mergeDateTimeFormat:Ve,getNumberFormat:gt,setNumberFormat:Ot,mergeNumberFormat:Et};function S(k){k.locale.value=A.value,k.fallbackLocale.value=l.value,Object.keys(c.value).forEach(L=>{k.mergeLocaleMessage(L,c.value[L])}),Object.keys(d.value).forEach(L=>{k.mergeDateTimeFormat(L,d.value[L])}),Object.keys(u.value).forEach(L=>{k.mergeNumberFormat(L,u.value[L])}),k.escapeParameter=B,k.fallbackFormat=m,k.fallbackRoot=h,k.fallbackWarn=p,k.missingWarn=f,k.warnHtmlMessage=y}return o.onBeforeMount(()=>{if(e.proxy==null||e.proxy.$i18n==null)throw Ft(Qe.NOT_AVAILABLE_COMPOSITION_IN_LEGACY);const k=i.value=e.proxy.$i18n.__composer;t==="global"?(A.value=k.locale.value,l.value=k.fallbackLocale.value,c.value=k.messages.value,d.value=k.datetimeFormats.value,u.value=k.numberFormats.value):a&&S(k)}),Yr}const zE=["locale","fallbackLocale","availableLocales"],$E=["t","rt","d","n","tm"];function KE(e,t){const r=Object.create(null);zE.forEach(n=>{const a=Object.getOwnPropertyDescriptor(t,n);if(!a)throw Ft(Qe.UNEXPECTED_ERROR);const i=o.isRef(a.value)?{get(){return a.value.value},set(s){a.value.value=s}}:{get(){return a.get&&a.get()}};Object.defineProperty(r,n,i)}),e.config.globalProperties.$i18n=r,$E.forEach(n=>{const a=Object.getOwnPropertyDescriptor(t,n);if(!a||!a.value)throw Ft(Qe.UNEXPECTED_ERROR);Object.defineProperty(e.config.globalProperties,`$${n}`,a)})}if(Px(Yx),Hx(wx),Rx(X1),uE(),process.env.NODE_ENV!=="production"||__INTLIFY_PROD_DEVTOOLS__){const e=ms();e.__INTLIFY__=!0,Fx(e.__INTLIFY_DEVTOOLS_GLOBAL_HOOK__)}process.env.NODE_ENV;function WE(e="en"){return LE({legacy:!1,locale:e,fallbackLocale:"en",messages:{en:{cardLottery:{setBanner:"Set As Banner",setIcon:"Set As Icon",openAnother:"Open Another"},cards:{roundDrawn:"Round Drawn",roundPlayed:"Round Played",card:"Card",cards:"Cards",inclusion:"Inclusion",avgCopies:"Avg. Copies",mulliganWinrate:"Mull. Winrate",keptInMulligan:"Kept In Mull.",drawnWinrate:"Drawn Winrate",turnPlayed:"Turn Played",turnsHeld:"Turns Held",recommendedDecks:"Recommended Decks",similarCards:"Similar Cards",attack:"Attack",health:"Health",quantityOwned:"Quantity Owned",cost:"Cost"},deck:{copyDeckCode:"Copy Deck Code",deckCodeCopied:"Deck Code Copied",deleteDeck:"Delete Deck",deleteDeckConfirmation:"Are you sure you would like to delete this deck?",editDeckName:"Edit Deck Name",signInToUpload:"Please sign in to upload deck to LoR",uploadDeckToLor:"Upload Deck to Legends of Runeterra",deckUploaded:"Deck Uploaded!",updatePrivacy:"Update Deck Privacy",deckPrivate:"Currently Private",deckPublic:"Currently Public",openInDeckBuilder:"Open in Deck Builder",numManaCards:"{num} Mana Cards",simulateMulligan:"Simulate Mulligan",replaceAllCards:"Replace All Cards",replaceSelectedCards:"Replace Selected Cards",personalCost:"Personal Cost",originalCost:"Original Cost",openArchetypePage:"Open Archetype Page",shareDeck:"Share Deck",showPreview:"Show Deck Preview"},archetype:{abbreviation:"A"},deckBuilder:{confirmOverwrite:`You already have a deck with this name.
31
31
  Would you like to overwrite the previous version?`,deckCreated:"Deck Created",inputDeckCode:"Paste Deck Code"},leaderboard:{totalPlayers:"Total Players",lp:"LP",rank:"Rank",updated:"Updated"},personalization:{noGiftsAvailable:"No Cards Available",noGiftsAvailableDesc:`Oh no!
32
32
  You've run out of card openings!
33
- Don't worry, you can receive more using any of the methods below so you can find the card that fits you.`,cards:{option1:"Logging into LOR.GG each week will grant you 10 cards.",option2:"Each time you sync your user data with the game, your 20 latest matches are uploaded. You get 1 card for every 2 matches uploaded!",option3:"Tired of waiting for that one perfect card? Upgrade to premium and you can set any card as your icon or banner!"}},settings:{privacy:"Privacy",privateProfile:"Private Profile",privateProfileDesc:"Checking this ensures none of your player details will be shown when others view your profile. Created decks set to public will still show in your collection.",email:"Email",resendVerification:"Resend Verification",account:"Account",payment:"Payment",personalization:"Personalization",images:"Images",banner:"Banner",bannerDesc:'Banners can be received via the "Open Cards" tab in navigation menu. This will be shown on the leaderboard, profile, and top players list.',bannerDescPremium:"You may set your banner to any card in the game by buying premium.",icon:"Icon",iconDesc:'Icons can be received via the "Open Cards" tab in navigation menu. This will be shown on your profile.',iconDescPremium:"You may set your icon to any card in the game by buying premium.",color:"Color",colorDesc:"You can distinguish yourself with your favorite color. Shown everywhere your banner is shown.",colorDescPremium:"Color can only be selected if you are a premium user."},descriptions:{archetypeOverview:'Get an in-depth overview of the "{title}" archetype in Legends of Runeterra.',archetypeCards:'Explore cards within the "{title}" archetype in Legends of Runeterra. Craft unique deck strategies.',archetypeStatistics:'Analyze statistics and performance data for the "{title}" archetype. Optimize your gameplay.',archetypeTopPlayers:'Discover the top players dominating with the "{title}" archetype in Legends of Runeterra.',archetypeDecks:'Find and explore decks centered around the "{title}" archetype. Adapt to the meta.',archetypeMatchups:'Analyze matchups and strategies for the "{title}" archetype in Legends of Runeterra.',deckOverview:'Get an in-depth overview of the "{title}" deck in Legends of Runeterra.',deckCards:'Explore the key cards within the "{title}" deck. Master your strategy.',deckStatistics:'Analyze detailed statistics and performance data for the "{title}" deck.',deckTopPlayers:'Discover the top players who excel with the "{title}" deck.',deckDecks:'Find decks similar to "{title}" for varied gameplay options.',deckMatchups:'Analyze matchups and strategies for the "{title}" deck in Legends of Runeterra.',cards:"Discover the complete card collection in Legends of Runeterra with detailed information on each card's stats, abilities, and more on LOR.GG.",deckBuilder:"Craft your perfect deck with our intuitive deck builder tool on LOR.GG. Fine-tune your strategies and create winning decks.",deckLibrary:"Explore a vast library of user-created decks for Legends of Runeterra. Find inspiration and share your own creations.",leaderboard:"Climb the ranks and compete with the best on our Legends of Runeterra leaderboard. Track your progress and see where you stand.",meta:"Stay up-to-date with the ever-evolving meta in Legends of Runeterra. Get insights into the top strategies and decks.",decks:"Browse and analyze a wide selection of decks for Legends of Runeterra. Find the perfect deck to suit your playstyle.",cardStatistics:"Dig deep into card statistics and analytics for Legends of Runeterra. Gain a competitive edge with our comprehensive card data.",cardPageStatistics:'Detailed statistics and insights for the "{title}" card in Legends of Runeterra. Master its potential with our analysis.',cardPageSimilarCards:'Discover cards similar to "{title}" in Legends of Runeterra. Find alternatives and expand your card knowledge.',cardPageDecks:'Explore decks featuring the powerful "{title}" card in Legends of Runeterra. Unleash its potential in your strategies.',profile:"Access and customize your LOR.GG profile. Track your match history, decks, and progress in Legends of Runeterra.",profileUser:"Explore the profile of {title} on LOR.GG. Check out their match history, statistics, and decks.",profileUserStatistics:"Analyze detailed statistics and achievements for {title}'s profile on LOR.GG. Learn from their gameplay.",profileUserDecks:"Explore the decks created by {title} on LOR.GG. Get insights into their strategies and card choices.",landing:"Unlock the full potential of Runeterra with LOR.GG's comprehensive toolkit. Explore cards, stats, and deck-building tools to reach new heights."},landing:{tagLine:"Chart Your Path to Victory",description1:"Welcome to LOR.GG, your definitive gateway to victory in Legends of Runeterra. Here, we offer you a comprehensive arsenal of tools and resources designed to elevate your gameplay and lead you towards triumph on the Runeterran battlefield.",description2:"Unleash your strategic prowess by exploring our extensive card database, where every card's statistics, abilities, and nuances are at your fingertips. Dive deep into the ever-evolving meta, discover top-tier decks, and adapt your strategies to conquer opponents with confidence.",newCards:{title:"New Cards",navigation:"Reveal Tracker"},builtDecks:{title:"User Created Decks",navigation:"Deck Library"},deckBuilder:{title:"Builder",navigation:"Deck Builder",description:"Elevate your gameplay and become a deck-building virtuoso with LOR.GG's intuitive Deck Builder tool. Craft decks tailored to your playstyle and fine-tune your strategies like never before. Experiment with card combinations, analyze synergies, and create powerful, winning decks. Whether you're a novice or a seasoned player, our Deck Builder empowers you to chart your path to victory in Legends of Runeterra. Join the ranks of top-tier players who have honed their skills through our platform and take your gameplay to the next level."},leaderboard:{title:"Leaderboard",navigation:"Leaderboard",description:"Test your skills against the best and climb the ranks on our Legends of Runeterra Leaderboard. See where you stand among the elite players of Runeterra, track your progress, and aim for the coveted top spots. Our Leaderboard is a testament to your dedication and progress in the game, providing a clear path to becoming a Runeterra legend. Join the competitive community, set your goals high, and embark on a journey to prove your worth on the Leaderboard at LOR.GG."},meta:{title:"Archetypes",navigation:"Meta",description:"Stay at the forefront of the ever-changing meta in Legends of Runeterra with LOR.GG. Our Meta section is your gateway to understanding the current landscape of strategies, top-tier decks, and prevailing trends in the game. Arm yourself with valuable insights, adapt your decks, and outmaneuver your opponents. Whether you're aiming for the top ranks or simply looking to stay competitive, our Meta resources offer the guidance you need to thrive in the dynamic world of Runeterra."},decks:{title:"Decks",navigation:"Decks",description:"Explore an expansive collection of decks meticulously curated for your success in Legends of Runeterra. Our Decks section is a goldmine of strategic possibilities, offering a diverse range of decks to suit every playstyle and skill level. Dive into the intricacies of each deck, discover their strengths, and harness their power. Whether you're searching for a proven winning formula or a fresh approach to the game, LOR.GG's Decks section is your gateway to mastering Runeterra and becoming a force to be reckoned"},cards:{title:"Cards",navigation:"Card Statistics",description:"At LOR.GG, we believe that knowledge is power, and our Card Statistics section is your key to unlocking that power in Legends of Runeterra. Delve deep into the data behind every card, gaining insights into their win rates, play rates, and performance in the meta. Equip yourself with the knowledge to make informed choices, optimize your decks, and stay ahead of the competition. Whether you're a competitive player or simply a Runeterra enthusiast, our comprehensive card statistics are your secret weapon for success."}},tournament:{standings:"Standings",oppWinrate:"Opponents' Winrate",oppGameWinrate:"Opponents' Game Winrate",gameWinrate:"Game Winrate",admin:{editMatchWinner:"Edit Match Winner",nextRound:{text:"The previous round has concluded. Please advance to the next round.",button:"Next Round"},wrongDeck:{text:"Player {name} played a deck that was not submitted. Review the match in Brackets."},start:{text:"You may start the tournament now. This will automatically start the first round.",button:"Start Tournament"}},feed:{withdrawal:"Withdrawal",withdrawalMessage:"A player has withdrawn from the tournament.",signUp:"New Sign Up",matchUpdate:"Match Update",checkIn:"Check In",adminUpdate:"Admin Update",adminUpdateMessage:"An admin has manually updated a match in the tournament.",created:"Tournament Created",createdMessage:"The tournament has been created.",roundStarted:"Round Started",roundStartedMessage:"A new round has started.",edited:"Tournament Edited",editedMessage:"The tournament has been edited by a tournament admin."},timeline:{registration:{title:"Registration",description:"Registration for the tournament is open. Sign up now!"},checkIn:{title:"Check In",description:"Check in to the tournament to confirm your participation."},start:{title:"Start",description:"The tournament has started!"},end:{title:"Concluded",description:"The tournament has concluded."}},prompt:{checkedIn:{text:"You are checked in for the tournament.",button:"Go to Participant Page"},registered:{text:"You are registered for the tournament.",button:"Check in"},signUp:{text:"Sign up to participate in this tournament.",button:"Sign Up"}},errors:{private:"This tournament has a private sign-up. Contact the tournament organizer for the correct link.",notLoggedIn:"You must be logged in to sign up for a tournament.",wrongServer:"You must be on the same server as the tournament to sign up."},decksSubmission:{heading:"Decks Submission",description:"Submit your decks for the tournament.",submitDecks:"Submit Decks",decksAreDue:"Decks are due"},participant:{banDecks:{heading:"Ban Decks",description:"No decks to bans | Choose a deck to ban against {name} | Choose {count} decks to ban against {name}",submit:"Submit Ban | Submit Bans"},playMatch:{heading:"Play Match",description:`You must play your match against the below opponent.
33
+ Don't worry, you can receive more using any of the methods below so you can find the card that fits you.`,cards:{option1:"Logging into LOR.GG each week will grant you 10 cards.",option2:"Each time you sync your user data with the game, your 20 latest matches are uploaded. You get 1 card for every 2 matches uploaded!",option3:"Tired of waiting for that one perfect card? Upgrade to premium and you can set any card as your icon or banner!"}},settings:{privacy:"Privacy",privateProfile:"Private Profile",privateProfileDesc:"Checking this ensures none of your player details will be shown when others view your profile. Created decks set to public will still show in your collection.",email:"Email",resendVerification:"Resend Verification",account:"Account",payment:"Payment",personalization:"Personalization",images:"Images",banner:"Banner",bannerDesc:'Banners can be received via the "Open Cards" tab in navigation menu. This will be shown on the leaderboard, profile, and top players list.',bannerDescPremium:"You may set your banner to any card in the game by buying premium.",icon:"Icon",iconDesc:'Icons can be received via the "Open Cards" tab in navigation menu. This will be shown on your profile.',iconDescPremium:"You may set your icon to any card in the game by buying premium.",color:"Color",colorDesc:"You can distinguish yourself with your favorite color. Shown everywhere your banner is shown.",colorDescPremium:"Color can only be selected if you are a premium user."},descriptions:{archetypeOverview:'Get an in-depth overview of the "{title}" archetype in Legends of Runeterra.',archetypeCards:'Explore cards within the "{title}" archetype in Legends of Runeterra. Craft unique deck strategies.',archetypeStatistics:'Analyze statistics and performance data for the "{title}" archetype. Optimize your gameplay.',archetypeTopPlayers:'Discover the top players dominating with the "{title}" archetype in Legends of Runeterra.',archetypeDecks:'Find and explore decks centered around the "{title}" archetype. Adapt to the meta.',archetypeMatchups:'Analyze matchups and strategies for the "{title}" archetype in Legends of Runeterra.',deckOverview:'Get an in-depth overview of the "{title}" deck in Legends of Runeterra.',deckCards:'Explore the key cards within the "{title}" deck. Master your strategy.',deckStatistics:'Analyze detailed statistics and performance data for the "{title}" deck.',deckTopPlayers:'Discover the top players who excel with the "{title}" deck.',deckDecks:'Find decks similar to "{title}" for varied gameplay options.',deckMatchups:'Analyze matchups and strategies for the "{title}" deck in Legends of Runeterra.',cards:"Discover the complete card collection in Legends of Runeterra with detailed information on each card's stats, abilities, and more on LOR.GG.",deckBuilder:"Craft your perfect deck with our intuitive deck builder tool on LOR.GG. Fine-tune your strategies and create winning decks.",deckLibrary:"Explore a vast library of user-created decks for Legends of Runeterra. Find inspiration and share your own creations.",leaderboard:"Climb the ranks and compete with the best on our Legends of Runeterra leaderboard. Track your progress and see where you stand.",meta:"Stay up-to-date with the ever-evolving meta in Legends of Runeterra. Get insights into the top strategies and decks.",decks:"Browse and analyze a wide selection of decks for Legends of Runeterra. Find the perfect deck to suit your playstyle.",cardStatistics:"Dig deep into card statistics and analytics for Legends of Runeterra. Gain a competitive edge with our comprehensive card data.",cardPageStatistics:'Detailed statistics and insights for the "{title}" card in Legends of Runeterra. Master its potential with our analysis.',cardPageSimilarCards:'Discover cards similar to "{title}" in Legends of Runeterra. Find alternatives and expand your card knowledge.',cardPageDecks:'Explore decks featuring the powerful "{title}" card in Legends of Runeterra. Unleash its potential in your strategies.',profile:"Access and customize your LOR.GG profile. Track your match history, decks, and progress in Legends of Runeterra.",profileUser:"Explore the profile of {title} on LOR.GG. Check out their match history, statistics, and decks.",profileUserStatistics:"Analyze detailed statistics and achievements for {title}'s profile on LOR.GG. Learn from their gameplay.",profileUserDecks:"Explore the decks created by {title} on LOR.GG. Get insights into their strategies and card choices.",landing:"Unlock the full potential of Runeterra with LOR.GG's comprehensive toolkit. Explore cards, stats, and deck-building tools to reach new heights."},landing:{tagLine:"Chart Your Path to Victory",description1:"Welcome to LOR.GG, your definitive gateway to victory in Legends of Runeterra. Here, we offer you a comprehensive arsenal of tools and resources designed to elevate your gameplay and lead you towards triumph on the Runeterran battlefield.",description2:"Unleash your strategic prowess by exploring our extensive card database, where every card's statistics, abilities, and nuances are at your fingertips. Dive deep into the ever-evolving meta, discover top-tier decks, and adapt your strategies to conquer opponents with confidence.",newCards:{title:"New Cards",navigation:"Reveal Tracker"},builtDecks:{title:"User Created Decks",navigation:"Deck Library"},deckBuilder:{title:"Builder",navigation:"Deck Builder",description:"Elevate your gameplay and become a deck-building virtuoso with LOR.GG's intuitive Deck Builder tool. Craft decks tailored to your playstyle and fine-tune your strategies like never before. Experiment with card combinations, analyze synergies, and create powerful, winning decks. Whether you're a novice or a seasoned player, our Deck Builder empowers you to chart your path to victory in Legends of Runeterra. Join the ranks of top-tier players who have honed their skills through our platform and take your gameplay to the next level."},leaderboard:{title:"Leaderboard",navigation:"Leaderboard",description:"Test your skills against the best and climb the ranks on our Legends of Runeterra Leaderboard. See where you stand among the elite players of Runeterra, track your progress, and aim for the coveted top spots. Our Leaderboard is a testament to your dedication and progress in the game, providing a clear path to becoming a Runeterra legend. Join the competitive community, set your goals high, and embark on a journey to prove your worth on the Leaderboard at LOR.GG."},meta:{title:"Archetypes",navigation:"Meta",description:"Stay at the forefront of the ever-changing meta in Legends of Runeterra with LOR.GG. Our Meta section is your gateway to understanding the current landscape of strategies, top-tier decks, and prevailing trends in the game. Arm yourself with valuable insights, adapt your decks, and outmaneuver your opponents. Whether you're aiming for the top ranks or simply looking to stay competitive, our Meta resources offer the guidance you need to thrive in the dynamic world of Runeterra."},decks:{title:"Decks",navigation:"Decks",description:"Explore an expansive collection of decks meticulously curated for your success in Legends of Runeterra. Our Decks section is a goldmine of strategic possibilities, offering a diverse range of decks to suit every playstyle and skill level. Dive into the intricacies of each deck, discover their strengths, and harness their power. Whether you're searching for a proven winning formula or a fresh approach to the game, LOR.GG's Decks section is your gateway to mastering Runeterra and becoming a force to be reckoned"},cards:{title:"Cards",navigation:"Card Statistics",description:"At LOR.GG, we believe that knowledge is power, and our Card Statistics section is your key to unlocking that power in Legends of Runeterra. Delve deep into the data behind every card, gaining insights into their win rates, play rates, and performance in the meta. Equip yourself with the knowledge to make informed choices, optimize your decks, and stay ahead of the competition. Whether you're a competitive player or simply a Runeterra enthusiast, our comprehensive card statistics are your secret weapon for success."}},tournament:{standings:"Standings",oppWinrate:"Opponents' Winrate",oppGameWinrate:"Opponents' Game Winrate",gameWinrate:"Game Winrate",admin:{editMatchWinner:"Edit Match Winner",nextRound:{text:"The previous round has concluded. Please advance to the next round.",button:"Next Round"},wrongDeck:{text:"Player {name} played a deck that was not submitted. Review the match in Brackets."},start:{text:"You may start the tournament now. This will automatically start the first round.",button:"Start Tournament"}},feed:{withdrawal:"Withdrawal",withdrawalMessage:"A player has withdrawn from the tournament.",signUp:"New Sign Up",matchUpdate:"Match Update",checkIn:"Check In",adminUpdate:"Admin Update",adminUpdateMessage:"An admin has manually updated a match in the tournament.",created:"Tournament Created",createdMessage:"The tournament has been created.",roundStarted:"Round Started",roundStartedMessage:"A new round has started.",edited:"Tournament Edited",editedMessage:"The tournament has been edited by a tournament admin."},timeline:{registration:{title:"Registration",description:"Registration for the tournament is open. Sign up now!"},checkIn:{title:"Check In",description:"Check in to the tournament to confirm your participation."},start:{title:"Start",description:"The tournament has started!"},end:{title:"Concluded",description:"The tournament has concluded."}},prompt:{checkedIn:{text:"You are checked in for the tournament.",buttons:{toParticipantPage:"Go to Participant Page"}},registered:{text:"You are registered for the tournament.",buttons:{checkIn:"Check in",withdraw:"Withdraw",editDecks:"Edit Decks"}},signUp:{text:"Sign up to participate in this tournament.",buttons:{signUp:"Sign Up"}}},errors:{private:"This tournament has a private sign-up. Contact the tournament organizer for the correct link.",notLoggedIn:"You must be logged in to sign up for a tournament.",wrongServer:"You must be on the same server as the tournament to sign up."},decksSubmission:{heading:"Decks Submission",description:"Submit your decks for the tournament.",submitDecks:"Submit Decks",decksAreDue:"Decks are due"},participant:{banDecks:{heading:"Ban Decks",description:"No decks to bans | Choose a deck to ban against {name} | Choose {count} decks to ban against {name}",submit:"Submit Ban | Submit Bans"},playMatch:{heading:"Play Match",description:`You must play your match against the below opponent.
34
34
  To do this, add them as a friend in game and challenge them to a match.
35
35
  If the tournament is a best of 3 using normal deck rules, use the Standard / Eternal Best of Three. Submit the same three decks you submitted for the tournament and ban the same deck you banned for this match.
36
36
  If there are any issues, please contact the tournament organizer.`}}},general:{manaCost:"Mana Cost",cost:"Cost",regions:"Regions",clear:"Clear",clearAll:"Clear All",copy:"Copy",patch:"Patch",matches:"Matches",wins:"Wins",losses:"Losses",winrate:"Winrate",quantity:"Quantity",round:"Round",total:"Total",champion:"Champion",follower:"Follower",spell:"Spell",landmark:"Landmark",equipment:"Equipment",champions:"Champions",followers:"Followers",spells:"Spells",landmarks:"Landmarks",equipments:"Equipment",statistics:"Statistics",advanced:"Advanced",newAdvancedFilter:"New Advanced Filter",types:"Types",rarities:"Rarities",sets:"Sets",keywords:"Keywords",pastDays:"Past {count} Days",pastHours:"Past {count} Hours",pastHour:"Past Hour",season:"Season",servers:"Servers",sampleSize:"Sample Size",minimumMatches:"Minimum Matches",ranks:"Ranks",allRanks:"All Ranks",platPlus:"Platinum+",deck:"Deck",manaCurve:"Mana Curve",name:"Name",updated:"Updated",created:"Created",card:"Card",cards:"Cards",inclusion:"Inclusion",avgCopies:"Avg. Copies",turnsHeld:"Turns Held",mulliganWinrate:"Mulligan WR",keptInMulligan:"Kept in Mulligan",drawnWinrate:"Drawn Winrate",turnPlayed:"Turn Played",playrate:"Playrate",deckDifferences:"Deck Differences",player:"Player",lp:"LP",change:"Change",favoriteDeck:"Favorite Deck",server:"Server",players:"Players",time:"Time",type:"Type",rarity:"Rarity",archetypes:"Archetypes",archetype:"Archetype",profile:"Profile",leaderboard:"Leaderboard",victory:"Victory",defeat:"Defeat",newCards:"New Cards",signIn:"Sign In",syncUserData:"Sync User Data",settings:"Settings",gamesPlayed:"Games Played",premium:"Premium",renews:"Renews",expires:"Expires",getPremium:"Get Premium!",becomeTheMaster:"Become The Master",format:"Format",otherFormats:"Other Formats",queues:"Queues",save:"Save",captureImage:"Capture Image",deckCode:"Deck Code",library:"Library",openCards:"Open Cards",attackingFirst:"Attacking First",attackingSecond:"Attacking Second",overall:"Overall",list:"List",graph:"Graph",decks:"Decks",attackTokenOddsWr:"Attack Token: Odds Winrate",attackTokenEvensWr:"Attack Token: Evens Winrate",popularityTimeline:"Popularity Timeline",overallWinrate:"Overall Winrate",deckLibrary:"Deck Library",deckBuilder:"Deck Builder",inclusionTimeline:"Inclusion Timeline",winrateTimeline:"Winrate Timeline",winrateByGamesPlayed:"Winrate by Games Played",meta:"Meta",youHave:"You have: ",holdShiftForAssociated:"Hold Shift to see Associated Cards",cardArt:"Card Art",regionDistribution:"Region Distribution",noResults:"No Results",tryAgain:"Adjust filters and try again.",createdAt:"Created At",updatedAt:"Updated At",page:"Page",deckStats:"Deck Statistics",cardStats:"Card Statistics",cardGallery:"Card Gallery",close:"Close",overwrite:"Overwrite",rename:"Rename",view:"View",mustBeLoggedIn:"You must be logged in to complete this action.",uploadFailed:"Upload Failed",successfullyUploaded:"Successfully Uploaded",cardLottery:"Card Lottery",confirm:"Confirm",verified:"Verified",notVerified:"Not Verified",patches:"Patches",seasons:"Seasons",premiumBarrier:"You must be a premium user to access these filtering options.",verificationEmailSent:"Verification Email Sent.",updateEmail:"Update Email",text:"Text",syncingInProgress:"Syncing In Progress",matchRecord:"Match Record",gameRecord:"Game Record",vs:"vs",game:"Game",tie:"Tie",submit:"Submit"},profile:{winrateOverTime:"Winrate over Time",winrateByChampion:"Winrate by Champion",winrateByRegion:"Winrate by Region",winrateByRoundAttacking:"Winrate by Round Attacking",winrateAgainstChampion:"Winrate Against Champion",winrateAgainstRegion:"Winrate Against Region",commonOpponents:"Common Opponents"},navigation:{searchPlaceholder:"Search Cards or Players"},"profile-overview":"Overview","profile-statistics":"Statistics","profile-decks":"Decks","card-statistics":"Statistics","card-similar-cards":"Similar Cards","card-decks":"Decks","deck-overview":"Overview","deck-cards":"Cards","deck-statistics":"Statistics","deck-top-players":"Top Players","deck-similar":"Similar Decks","deck-matchups":"Matchups","archetype-overview":"Overview","archetype-cards":"Cards","archetype-statistics":"Statistics","archetype-top-players":"Top Players","archetype-decks":"Decks","archetype-matchups":"Matchups","tournament-overview":"Overview","tournament-brackets":"Brackets","tournament-players":"Players"},de:{cardLottery:{setBanner:"Als Banner festlegen",setIcon:"Als Symbol festlegen",openAnother:"Weitere öffnen"},cards:{roundDrawn:"Runde gezogen",roundPlayed:"Runde gespielt",card:"Karte",cards:"Karten",inclusion:"Einbindung",avgCopies:"Durchschn. Kopien",mulliganWinrate:"Mulligan-Gewinnrate",keptInMulligan:"Im Mulligan behalten",drawnWinrate:"Gewinnrate beim Ziehen",turnPlayed:"Zug gespielt",turnsHeld:"Runden gehalten",recommendedDecks:"Empfohlene Decks",similarCards:"Ähnliche Karten",attack:"Angriff",health:"Leben",quantityOwned:"Menge im Besitz",cost:"Kosten"},deck:{copyDeckCode:"Deckcode kopieren",deckCodeCopied:"Deckcode kopiert",deleteDeck:"Deck löschen",deleteDeckConfirmation:"Möchten Sie dieses Deck wirklich löschen?",editDeckName:"Decknamen bearbeiten",signInToUpload:"Bitte melden Sie sich an, um das Deck in LoR hochzuladen",uploadDeckToLor:"Deck in Legends of Runeterra hochladen",deckUploaded:"Deck hochgeladen!",updatePrivacy:"Deck-Privatsphäre aktualisieren",deckPrivate:"Derzeit privat",deckPublic:"Derzeit öffentlich",openInDeckBuilder:"Im Deck-Builder öffnen",numManaCards:"{num} Manakarten",simulateMulligan:"Mulligan simulieren",replaceAllCards:"Alle Karten ersetzen",replaceSelectedCards:"Ausgewählte Karten ersetzen",personalCost:"Persönliche Kosten",originalCost:"Ursprüngliche Kosten",openArchetypePage:"Archetyp-Seite öffnen",shareDeck:"Deck teilen",showPreview:"Deckvorschau anzeigen"},archetype:{abbreviation:"A"},leaderboard:{totalPlayers:"Gesamtzahl der Spieler",lp:"LP",rank:"Rang",updated:"Aktualisiert"},general:{manaCost:"Manakosten",cost:"Kosten",regions:"Regionen",clear:"Leeren",clearAll:"Alle leeren",copy:"Kopieren",patch:"Patch",matches:"Partien",wins:"Gewonnen",losses:"Verloren",winrate:"Gewinnrate",quantity:"Menge",round:"Runde",total:"Gesamt",champion:"Champion",follower:"Anhänger",spell:"Zauber",landmark:"Wahrzeichen",equipment:"Ausrüstung",champions:"Champions",followers:"Anhänger",spells:"Zauber",landmarks:"Wahrzeichen",equipments:"Ausrüstungen",statistics:"Statistiken",advanced:"Erweitert",newAdvancedFilter:"Neuer erweiterter Filter",types:"Typen",rarities:"Seltenheiten",sets:"Sets",keywords:"Schlüsselwörter",pastDays:"Vergangene {count} Tage",pastHours:"Vergangene {count} Stunden",pastHour:"Vergangene Stunde",season:"Saison",servers:"Server",sampleSize:"Stichprobengröße",minimumMatches:"Mindestanzahl an Partien",ranks:"Ränge",allRanks:"Alle Ränge",platPlus:"Platin+",deck:"Deck",manaCurve:"Manakurve",name:"Name",updated:"Aktualisiert",created:"Erstellt",card:"Karte",cards:"Karten",inclusion:"Einbindung",avgCopies:"Durchschn. Kopien",turnsHeld:"Runden gehalten",mulliganWinrate:"Mulligan-Gewinnrate",keptInMulligan:"Im Mulligan behalten",drawnWinrate:"Gewinnrate beim Ziehen",turnPlayed:"Zug gespielt",playrate:"Spielrate",deckDifferences:"Deckunterschiede",player:"Spieler",lp:"LP",change:"Änderung",favoriteDeck:"Favorisiertes Deck",server:"Server",players:"Spieler",time:"Zeit",type:"Typ",rarity:"Seltenheit",archetypes:"Archetypen",leaderboard:"Bestenliste",victory:"Sieg",defeat:"Niederlage",newCards:"Neue Karten",signIn:"Anmelden",syncUserData:"Benutzerdaten synchronisieren",settings:"Einstellungen",gamesPlayed:"Gespielte Partien",premium:"Premium",renews:"Verlängert sich",expires:"Läuft ab",getPremium:"Holen Sie sich Premium!",becomeTheMaster:"Werden Sie der Meister",format:"Format",otherFormats:"Andere Formate",queues:"Warteschlangen",save:"Speichern",captureImage:"Bild aufnehmen",deckCode:"Deckcode",library:"Bibliothek",openCards:"Karten öffnen",attackingFirst:"Als Erster angreifen",attackingSecond:"Als Zweiter angreifen",overall:"Insgesamt",list:"Liste",graph:"Diagramm",decks:"Decks",attackTokenOddsWr:"Angriffs-Token: Gewinnchance (ungerade)",attackTokenEvensWr:"Angriffs-Token: Gewinnchance (gerade)",popularityTimeline:"Beliebtheitsverlauf",overallWinrate:"Gesamte Gewinnrate",deckLibrary:"Deckbibliothek",deckBuilder:"Deck-Builder",inclusionTimeline:"Einbindungsverlauf",winrateTimeline:"Gewinnrate-Verlauf",winrateByGamesPlayed:"Gewinnrate nach gespielten Partien",meta:"Meta",youHave:"Sie haben: ",holdShiftForAssociated:"Shift halten, um zugehörige Karten anzuzeigen",cardArt:"Kartenillustration",regionDistribution:"Verteilung der Regionen",noResults:"Keine Ergebnisse",tryAgain:"Filter anpassen und erneut versuchen.",createdAt:"Erstellt am",updatedAt:"Aktualisiert am",page:"Seite",deckStats:"Deckstatistiken",cardStats:"Kartenstatistiken",cardGallery:"Kartengalerie",archetype:"Archetyp",profile:"Profil",uploadFailed:"Hochladen fehlgeschlagen",successfullyUploaded:"Erfolgreich hochgeladen"},deckBuilder:{confirmOverwrite:`Sie haben bereits ein Deck mit diesem Namen.
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "lorgg-v2-components",
3
3
  "private": false,
4
- "version": "0.0.231",
4
+ "version": "0.0.232",
5
5
  "type": "module",
6
6
  "files": [
7
7
  "dist"