=M)return P;var R=h[d];return P*(R=="desc"?-1:1)}}return s.index-o.index}function yc(s,o,h,d){for(var m=-1,x=s.length,v=h.length,M=-1,P=o.length,R=It(x-v,0),E=O(P+R),F=!d;++M1?h[m-1]:e,v=m>2?h[2]:e;for(x=s.length>3&&typeof x=="function"?(m--,x):e,v&&qt(h[0],h[1],v)&&(x=m<3?e:x,m=1),o=mt(o);++d-1?m[x?o[v]:v]:e}}function kc(s){return Ye(function(o){var h=o.length,d=h,m=me.prototype.thru;for(s&&o.reverse();d--;){var x=o[d];if(typeof x!="function")throw new pe(l);if(m&&!v&&Hs(x)=="wrapper")var v=new me([],!0)}for(d=v?d:h;++d1&&ot.reverse(),E&&PM))return!1;var R=x.get(s),E=x.get(o);if(R&&E)return R==o&&E==s;var F=-1,H=!0,$=h&S?new kn:e;for(x.set(s,o),x.set(o,s);++F1?"& ":"")+o[d],o=o.join(h>2?", ":" "),s.replace(ud,`{
+/* [wrapped with `+o+`] */
+`)}function hm(s){return q(s)||Dn(s)||!!(Hl&&s&&s[Hl])}function Xe(s,o){var h=typeof s;return o=o==null?Lt:o,!!o&&(h=="number"||h!="symbol"&&wd.test(s))&&s>-1&&s%1==0&&s0){if(++o>=at)return arguments[0]}else o=0;return s.apply(e,arguments)}}function Us(s,o){var h=-1,d=s.length,m=d-1;for(o=o===e?d:o;++h1?s[o-1]:e;return h=typeof h=="function"?(s.pop(),h):e,Zc(s,h)});function Jc(s){var o=b(s);return o.__chain__=!0,o}function v_(s,o){return o(s),s}function $s(s,o){return o(s)}var w_=Ye(function(s){var o=s.length,h=o?s[0]:0,d=this.__wrapped__,m=function(x){return po(x,s)};return o>1||this.__actions__.length||!(d instanceof st)||!Xe(h)?this.thru(m):(d=d.slice(h,+h+(o?1:0)),d.__actions__.push({func:$s,args:[m],thisArg:e}),new me(d,this.__chain__).thru(function(x){return o&&!x.length&&x.push(e),x}))});function S_(){return Jc(this)}function M_(){return new me(this.value(),this.__chain__)}function A_(){this.__values__===e&&(this.__values__=fh(this.value()));var s=this.__index__>=this.__values__.length,o=s?e:this.__values__[this.__index__++];return{done:s,value:o}}function k_(){return this}function P_(s){for(var o,h=this;h instanceof Os;){var d=Yc(h);d.__index__=0,d.__values__=e,o?m.__wrapped__=d:o=d;var m=d;h=h.__wrapped__}return m.__wrapped__=s,o}function C_(){var s=this.__wrapped__;if(s instanceof st){var o=s;return this.__actions__.length&&(o=new st(this)),o=o.reverse(),o.__actions__.push({func:$s,args:[Uo],thisArg:e}),new me(o,this.__chain__)}return this.thru(Uo)}function O_(){return gc(this.__wrapped__,this.__actions__)}var T_=Fs(function(s,o,h){dt.call(s,h)?++s[h]:Ue(s,h,1)});function D_(s,o,h){var d=q(s)?Pl:vp;return h&&qt(s,o,h)&&(o=e),d(s,X(o,3))}function L_(s,o){var h=q(s)?sn:Zl;return h(s,X(o,3))}var R_=Ac(Xc),E_=Ac(Gc);function I_(s,o){return Ht(Ys(s,o),1)}function F_(s,o){return Ht(Ys(s,o),ft)}function B_(s,o,h){return h=h===e?1:tt(h),Ht(Ys(s,o),h)}function Qc(s,o){var h=q(s)?ge:ln;return h(s,X(o,3))}function th(s,o){var h=q(s)?ng:ql;return h(s,X(o,3))}var z_=Fs(function(s,o,h){dt.call(s,h)?s[h].push(o):Ue(s,h,[o])});function W_(s,o,h,d){s=Qt(s)?s:ri(s),h=h&&!d?tt(h):0;var m=s.length;return h<0&&(h=It(m+h,0)),qs(s)?h<=m&&s.indexOf(o,h)>-1:!!m&&Gn(s,o,h)>-1}var N_=nt(function(s,o,h){var d=-1,m=typeof o=="function",x=Qt(s)?O(s.length):[];return ln(s,function(v){x[++d]=m?se(o,v,h):Pi(v,o,h)}),x}),H_=Fs(function(s,o,h){Ue(s,h,o)});function Ys(s,o){var h=q(s)?St:ic;return h(s,X(o,3))}function V_(s,o,h,d){return s==null?[]:(q(o)||(o=o==null?[]:[o]),h=d?e:h,q(h)||(h=h==null?[]:[h]),ac(s,o,h))}var U_=Fs(function(s,o,h){s[h?0:1].push(o)},function(){return[[],[]]});function $_(s,o,h){var d=q(s)?eo:Dl,m=arguments.length<3;return d(s,X(o,4),h,m,ln)}function Y_(s,o,h){var d=q(s)?ig:Dl,m=arguments.length<3;return d(s,X(o,4),h,m,ql)}function X_(s,o){var h=q(s)?sn:Zl;return h(s,Ks(X(o,3)))}function G_(s){var o=q(s)?Xl:Wp;return o(s)}function K_(s,o,h){(h?qt(s,o,h):o===e)?o=1:o=tt(o);var d=q(s)?mp:Np;return d(s,o)}function j_(s){var o=q(s)?_p:Vp;return o(s)}function q_(s){if(s==null)return 0;if(Qt(s))return qs(s)?jn(s):s.length;var o=$t(s);return o==Me||o==Ae?s.size:vo(s).length}function Z_(s,o,h){var d=q(s)?no:Up;return h&&qt(s,o,h)&&(o=e),d(s,X(o,3))}var J_=nt(function(s,o){if(s==null)return[];var h=o.length;return h>1&&qt(s,o[0],o[1])?o=[]:h>2&&qt(o[0],o[1],o[2])&&(o=[o[0]]),ac(s,Ht(o,1),[])}),Xs=Lg||function(){return Nt.Date.now()};function Q_(s,o){if(typeof o!="function")throw new pe(l);return s=tt(s),function(){if(--s<1)return o.apply(this,arguments)}}function eh(s,o,h){return o=h?e:o,o=s&&o==null?s.length:o,$e(s,W,e,e,e,e,o)}function nh(s,o){var h;if(typeof o!="function")throw new pe(l);return s=tt(s),function(){return--s>0&&(h=o.apply(this,arguments)),s<=1&&(o=e),h}}var Yo=nt(function(s,o,h){var d=A;if(h.length){var m=on(h,ii(Yo));d|=L}return $e(s,d,o,h,m)}),ih=nt(function(s,o,h){var d=A|C;if(h.length){var m=on(h,ii(ih));d|=L}return $e(o,d,s,h,m)});function sh(s,o,h){o=h?e:o;var d=$e(s,I,e,e,e,e,e,o);return d.placeholder=sh.placeholder,d}function rh(s,o,h){o=h?e:o;var d=$e(s,B,e,e,e,e,e,o);return d.placeholder=rh.placeholder,d}function oh(s,o,h){var d,m,x,v,M,P,R=0,E=!1,F=!1,H=!0;if(typeof s!="function")throw new pe(l);o=ye(o)||0,At(h)&&(E=!!h.leading,F="maxWait"in h,x=F?It(ye(h.maxWait)||0,o):x,H="trailing"in h?!!h.trailing:H);function $(Tt){var Oe=d,je=m;return d=m=e,R=Tt,v=s.apply(je,Oe),v}function G(Tt){return R=Tt,M=Li(it,o),E?$(Tt):v}function et(Tt){var Oe=Tt-P,je=Tt-R,Ah=o-Oe;return F?Ut(Ah,x-je):Ah}function K(Tt){var Oe=Tt-P,je=Tt-R;return P===e||Oe>=o||Oe<0||F&&je>=x}function it(){var Tt=Xs();if(K(Tt))return ot(Tt);M=Li(it,et(Tt))}function ot(Tt){return M=e,H&&d?$(Tt):(d=m=e,v)}function le(){M!==e&&mc(M),R=0,d=P=m=M=e}function Zt(){return M===e?v:ot(Xs())}function ce(){var Tt=Xs(),Oe=K(Tt);if(d=arguments,m=this,P=Tt,Oe){if(M===e)return G(P);if(F)return mc(M),M=Li(it,o),$(P)}return M===e&&(M=Li(it,o)),v}return ce.cancel=le,ce.flush=Zt,ce}var t0=nt(function(s,o){return jl(s,1,o)}),e0=nt(function(s,o,h){return jl(s,ye(o)||0,h)});function n0(s){return $e(s,Y)}function Gs(s,o){if(typeof s!="function"||o!=null&&typeof o!="function")throw new pe(l);var h=function(){var d=arguments,m=o?o.apply(this,d):d[0],x=h.cache;if(x.has(m))return x.get(m);var v=s.apply(this,d);return h.cache=x.set(m,v)||x,v};return h.cache=new(Gs.Cache||Ve),h}Gs.Cache=Ve;function Ks(s){if(typeof s!="function")throw new pe(l);return function(){var o=arguments;switch(o.length){case 0:return!s.call(this);case 1:return!s.call(this,o[0]);case 2:return!s.call(this,o[0],o[1]);case 3:return!s.call(this,o[0],o[1],o[2])}return!s.apply(this,o)}}function i0(s){return nh(2,s)}var s0=$p(function(s,o){o=o.length==1&&q(o[0])?St(o[0],re(X())):St(Ht(o,1),re(X()));var h=o.length;return nt(function(d){for(var m=-1,x=Ut(d.length,h);++m=o}),Dn=tc(function(){return arguments}())?tc:function(s){return kt(s)&&dt.call(s,"callee")&&!Nl.call(s,"callee")},q=O.isArray,x0=vl?re(vl):Pp;function Qt(s){return s!=null&&js(s.length)&&!Ge(s)}function Ot(s){return kt(s)&&Qt(s)}function y0(s){return s===!0||s===!1||kt(s)&&jt(s)==fi}var fn=Eg||ia,v0=wl?re(wl):Cp;function w0(s){return kt(s)&&s.nodeType===1&&!Ri(s)}function S0(s){if(s==null)return!0;if(Qt(s)&&(q(s)||typeof s=="string"||typeof s.splice=="function"||fn(s)||si(s)||Dn(s)))return!s.length;var o=$t(s);if(o==Me||o==Ae)return!s.size;if(Di(s))return!vo(s).length;for(var h in s)if(dt.call(s,h))return!1;return!0}function M0(s,o){return Ci(s,o)}function A0(s,o,h){h=typeof h=="function"?h:e;var d=h?h(s,o):e;return d===e?Ci(s,o,e,h):!!d}function Go(s){if(!kt(s))return!1;var o=jt(s);return o==as||o==Kf||typeof s.message=="string"&&typeof s.name=="string"&&!Ri(s)}function k0(s){return typeof s=="number"&&Vl(s)}function Ge(s){if(!At(s))return!1;var o=jt(s);return o==ls||o==ja||o==Gf||o==qf}function lh(s){return typeof s=="number"&&s==tt(s)}function js(s){return typeof s=="number"&&s>-1&&s%1==0&&s<=Lt}function At(s){var o=typeof s;return s!=null&&(o=="object"||o=="function")}function kt(s){return s!=null&&typeof s=="object"}var ch=Sl?re(Sl):Tp;function P0(s,o){return s===o||yo(s,o,Bo(o))}function C0(s,o,h){return h=typeof h=="function"?h:e,yo(s,o,Bo(o),h)}function O0(s){return hh(s)&&s!=+s}function T0(s){if(dm(s))throw new j(a);return ec(s)}function D0(s){return s===null}function L0(s){return s==null}function hh(s){return typeof s=="number"||kt(s)&&jt(s)==gi}function Ri(s){if(!kt(s)||jt(s)!=Ne)return!1;var o=ws(s);if(o===null)return!0;var h=dt.call(o,"constructor")&&o.constructor;return typeof h=="function"&&h instanceof h&&bs.call(h)==Cg}var Ko=Ml?re(Ml):Dp;function R0(s){return lh(s)&&s>=-Lt&&s<=Lt}var uh=Al?re(Al):Lp;function qs(s){return typeof s=="string"||!q(s)&&kt(s)&&jt(s)==mi}function ae(s){return typeof s=="symbol"||kt(s)&&jt(s)==cs}var si=kl?re(kl):Rp;function E0(s){return s===e}function I0(s){return kt(s)&&$t(s)==_i}function F0(s){return kt(s)&&jt(s)==Jf}var B0=Ns(wo),z0=Ns(function(s,o){return s<=o});function fh(s){if(!s)return[];if(Qt(s))return qs(s)?ke(s):Jt(s);if(yi&&s[yi])return mg(s[yi]());var o=$t(s),h=o==Me?lo:o==Ae?ps:ri;return h(s)}function Ke(s){if(!s)return s===0?s:0;if(s=ye(s),s===ft||s===-ft){var o=s<0?-1:1;return o*Bt}return s===s?s:0}function tt(s){var o=Ke(s),h=o%1;return o===o?h?o-h:o:0}function dh(s){return s?Pn(tt(s),0,Kt):0}function ye(s){if(typeof s=="number")return s;if(ae(s))return Se;if(At(s)){var o=typeof s.valueOf=="function"?s.valueOf():s;s=At(o)?o+"":o}if(typeof s!="string")return s===0?s:+s;s=Ll(s);var h=xd.test(s);return h||vd.test(s)?Qd(s.slice(2),h?2:8):bd.test(s)?Se:+s}function gh(s){return Ie(s,te(s))}function W0(s){return s?Pn(tt(s),-Lt,Lt):s===0?s:0}function ut(s){return s==null?"":oe(s)}var N0=ei(function(s,o){if(Di(o)||Qt(o)){Ie(o,zt(o),s);return}for(var h in o)dt.call(o,h)&&Ai(s,h,o[h])}),ph=ei(function(s,o){Ie(o,te(o),s)}),Zs=ei(function(s,o,h,d){Ie(o,te(o),s,d)}),H0=ei(function(s,o,h,d){Ie(o,zt(o),s,d)}),V0=Ye(po);function U0(s,o){var h=ti(s);return o==null?h:Gl(h,o)}var $0=nt(function(s,o){s=mt(s);var h=-1,d=o.length,m=d>2?o[2]:e;for(m&&qt(o[0],o[1],m)&&(d=1);++h1),x}),Ie(s,Io(s),h),d&&(h=_e(h,p|_|y,em));for(var m=o.length;m--;)Po(h,o[m]);return h});function lb(s,o){return _h(s,Ks(X(o)))}var cb=Ye(function(s,o){return s==null?{}:Fp(s,o)});function _h(s,o){if(s==null)return{};var h=St(Io(s),function(d){return[d]});return o=X(o),lc(s,h,function(d,m){return o(d,m[0])})}function hb(s,o,h){o=hn(o,s);var d=-1,m=o.length;for(m||(m=1,s=e);++do){var d=s;s=o,o=d}if(h||s%1||o%1){var m=Ul();return Ut(s+m*(o-s+Jd("1e-"+((m+"").length-1))),o)}return Mo(s,o)}var vb=ni(function(s,o,h){return o=o.toLowerCase(),s+(h?yh(o):o)});function yh(s){return Zo(ut(s).toLowerCase())}function vh(s){return s=ut(s),s&&s.replace(Sd,ug).replace(Vd,"")}function wb(s,o,h){s=ut(s),o=oe(o);var d=s.length;h=h===e?d:Pn(tt(h),0,d);var m=h;return h-=o.length,h>=0&&s.slice(h,m)==o}function Sb(s){return s=ut(s),s&&id.test(s)?s.replace(Ja,fg):s}function Mb(s){return s=ut(s),s&&cd.test(s)?s.replace(Yr,"\\$&"):s}var Ab=ni(function(s,o,h){return s+(h?"-":"")+o.toLowerCase()}),kb=ni(function(s,o,h){return s+(h?" ":"")+o.toLowerCase()}),Pb=Mc("toLowerCase");function Cb(s,o,h){s=ut(s),o=tt(o);var d=o?jn(s):0;if(!o||d>=o)return s;var m=(o-d)/2;return Ws(ks(m),h)+s+Ws(As(m),h)}function Ob(s,o,h){s=ut(s),o=tt(o);var d=o?jn(s):0;return o&&d>>0,h?(s=ut(s),s&&(typeof o=="string"||o!=null&&!Ko(o))&&(o=oe(o),!o&&Kn(s))?un(ke(s),0,h):s.split(o,h)):[]}var Fb=ni(function(s,o,h){return s+(h?" ":"")+Zo(o)});function Bb(s,o,h){return s=ut(s),h=h==null?0:Pn(tt(h),0,s.length),o=oe(o),s.slice(h,h+o.length)==o}function zb(s,o,h){var d=b.templateSettings;h&&qt(s,o,h)&&(o=e),s=ut(s),o=Zs({},o,d,Dc);var m=Zs({},o.imports,d.imports,Dc),x=zt(m),v=ao(m,x),M,P,R=0,E=o.interpolate||hs,F="__p += '",H=co((o.escape||hs).source+"|"+E.source+"|"+(E===Qa?_d:hs).source+"|"+(o.evaluate||hs).source+"|$","g"),$="//# sourceURL="+(dt.call(o,"sourceURL")?(o.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++Gd+"]")+`
+`;s.replace(H,function(K,it,ot,le,Zt,ce){return ot||(ot=le),F+=s.slice(R,ce).replace(Md,dg),it&&(M=!0,F+=`' +
+__e(`+it+`) +
+'`),Zt&&(P=!0,F+=`';
+`+Zt+`;
+__p += '`),ot&&(F+=`' +
+((__t = (`+ot+`)) == null ? '' : __t) +
+'`),R=ce+K.length,K}),F+=`';
+`;var G=dt.call(o,"variable")&&o.variable;if(!G)F=`with (obj) {
+`+F+`
+}
+`;else if(pd.test(G))throw new j(c);F=(P?F.replace(Qf,""):F).replace(td,"$1").replace(ed,"$1;"),F="function("+(G||"obj")+`) {
+`+(G?"":`obj || (obj = {});
+`)+"var __t, __p = ''"+(M?", __e = _.escape":"")+(P?`, __j = Array.prototype.join;
+function print() { __p += __j.call(arguments, '') }
+`:`;
+`)+F+`return __p
+}`;var et=Sh(function(){return ct(x,$+"return "+F).apply(e,v)});if(et.source=F,Go(et))throw et;return et}function Wb(s){return ut(s).toLowerCase()}function Nb(s){return ut(s).toUpperCase()}function Hb(s,o,h){if(s=ut(s),s&&(h||o===e))return Ll(s);if(!s||!(o=oe(o)))return s;var d=ke(s),m=ke(o),x=Rl(d,m),v=El(d,m)+1;return un(d,x,v).join("")}function Vb(s,o,h){if(s=ut(s),s&&(h||o===e))return s.slice(0,Fl(s)+1);if(!s||!(o=oe(o)))return s;var d=ke(s),m=El(d,ke(o))+1;return un(d,0,m).join("")}function Ub(s,o,h){if(s=ut(s),s&&(h||o===e))return s.replace(Xr,"");if(!s||!(o=oe(o)))return s;var d=ke(s),m=Rl(d,ke(o));return un(d,m).join("")}function $b(s,o){var h=J,d=Q;if(At(o)){var m="separator"in o?o.separator:m;h="length"in o?tt(o.length):h,d="omission"in o?oe(o.omission):d}s=ut(s);var x=s.length;if(Kn(s)){var v=ke(s);x=v.length}if(h>=x)return s;var M=h-jn(d);if(M<1)return d;var P=v?un(v,0,M).join(""):s.slice(0,M);if(m===e)return P+d;if(v&&(M+=P.length-M),Ko(m)){if(s.slice(M).search(m)){var R,E=P;for(m.global||(m=co(m.source,ut(tl.exec(m))+"g")),m.lastIndex=0;R=m.exec(E);)var F=R.index;P=P.slice(0,F===e?M:F)}}else if(s.indexOf(oe(m),M)!=M){var H=P.lastIndexOf(m);H>-1&&(P=P.slice(0,H))}return P+d}function Yb(s){return s=ut(s),s&&nd.test(s)?s.replace(Za,yg):s}var Xb=ni(function(s,o,h){return s+(h?" ":"")+o.toUpperCase()}),Zo=Mc("toUpperCase");function wh(s,o,h){return s=ut(s),o=h?e:o,o===e?pg(s)?Sg(s):og(s):s.match(o)||[]}var Sh=nt(function(s,o){try{return se(s,e,o)}catch(h){return Go(h)?h:new j(h)}}),Gb=Ye(function(s,o){return ge(o,function(h){h=Fe(h),Ue(s,h,Yo(s[h],s))}),s});function Kb(s){var o=s==null?0:s.length,h=X();return s=o?St(s,function(d){if(typeof d[1]!="function")throw new pe(l);return[h(d[0]),d[1]]}):[],nt(function(d){for(var m=-1;++mLt)return[];var h=Kt,d=Ut(s,Kt);o=X(o),s-=Kt;for(var m=oo(d,o);++h0||o<0)?new st(h):(s<0?h=h.takeRight(-s):s&&(h=h.drop(s)),o!==e&&(o=tt(o),h=o<0?h.dropRight(-o):h.take(o-s)),h)},st.prototype.takeRightWhile=function(s){return this.reverse().takeWhile(s).reverse()},st.prototype.toArray=function(){return this.take(Kt)},Ee(st.prototype,function(s,o){var h=/^(?:filter|find|map|reject)|While$/.test(o),d=/^(?:head|last)$/.test(o),m=b[d?"take"+(o=="last"?"Right":""):o],x=d||/^find/.test(o);!m||(b.prototype[o]=function(){var v=this.__wrapped__,M=d?[1]:arguments,P=v instanceof st,R=M[0],E=P||q(v),F=function(it){var ot=m.apply(b,rn([it],M));return d&&H?ot[0]:ot};E&&h&&typeof R=="function"&&R.length!=1&&(P=E=!1);var H=this.__chain__,$=!!this.__actions__.length,G=x&&!H,et=P&&!$;if(!x&&E){v=et?v:new st(this);var K=s.apply(v,M);return K.__actions__.push({func:$s,args:[F],thisArg:e}),new me(K,H)}return G&&et?s.apply(this,M):(K=this.thru(F),G?d?K.value()[0]:K.value():K)})}),ge(["pop","push","shift","sort","splice","unshift"],function(s){var o=ms[s],h=/^(?:push|sort|unshift)$/.test(s)?"tap":"thru",d=/^(?:pop|shift)$/.test(s);b.prototype[s]=function(){var m=arguments;if(d&&!this.__chain__){var x=this.value();return o.apply(q(x)?x:[],m)}return this[h](function(v){return o.apply(q(v)?v:[],m)})}}),Ee(st.prototype,function(s,o){var h=b[o];if(h){var d=h.name+"";dt.call(Qn,d)||(Qn[d]=[]),Qn[d].push({name:o,func:h})}}),Qn[Bs(e,C).name]=[{name:"wrapper",func:e}],st.prototype.clone=Yg,st.prototype.reverse=Xg,st.prototype.value=Gg,b.prototype.at=w_,b.prototype.chain=S_,b.prototype.commit=M_,b.prototype.next=A_,b.prototype.plant=P_,b.prototype.reverse=C_,b.prototype.toJSON=b.prototype.valueOf=b.prototype.value=O_,b.prototype.first=b.prototype.head,yi&&(b.prototype[yi]=k_),b},qn=Mg();Sn?((Sn.exports=qn)._=qn,Jr._=qn):Nt._=qn}).call(Ei)})(kh,kh.exports);/*!
+ * @kurkle/color v0.3.2
+ * https://github.com/kurkle/color#readme
+ * (c) 2023 Jukka Kurkela
+ * Released under the MIT License
+ */function ss(n){return n+.5|0}const dn=(n,t,e)=>Math.max(Math.min(n,e),t);function Ni(n){return dn(ss(n*2.55),0,255)}function _n(n){return dn(ss(n*255),0,255)}function Qe(n){return dn(ss(n/2.55)/100,0,1)}function Ph(n){return dn(ss(n*100),0,100)}const ve={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15},xa=[..."0123456789ABCDEF"],Vx=n=>xa[n&15],Ux=n=>xa[(n&240)>>4]+xa[n&15],Js=n=>(n&240)>>4===(n&15),$x=n=>Js(n.r)&&Js(n.g)&&Js(n.b)&&Js(n.a);function Yx(n){var t=n.length,e;return n[0]==="#"&&(t===4||t===5?e={r:255&ve[n[1]]*17,g:255&ve[n[2]]*17,b:255&ve[n[3]]*17,a:t===5?ve[n[4]]*17:255}:(t===7||t===9)&&(e={r:ve[n[1]]<<4|ve[n[2]],g:ve[n[3]]<<4|ve[n[4]],b:ve[n[5]]<<4|ve[n[6]],a:t===9?ve[n[7]]<<4|ve[n[8]]:255})),e}const Xx=(n,t)=>n<255?t(n):"";function Gx(n){var t=$x(n)?Vx:Ux;return n?"#"+t(n.r)+t(n.g)+t(n.b)+Xx(n.a,t):void 0}const Kx=/^(hsla?|hwb|hsv)\(\s*([-+.e\d]+)(?:deg)?[\s,]+([-+.e\d]+)%[\s,]+([-+.e\d]+)%(?:[\s,]+([-+.e\d]+)(%)?)?\s*\)$/;function Ku(n,t,e){const i=t*Math.min(e,1-e),r=(a,l=(a+n/30)%12)=>e-i*Math.max(Math.min(l-3,9-l,1),-1);return[r(0),r(8),r(4)]}function jx(n,t,e){const i=(r,a=(r+n/60)%6)=>e-e*t*Math.max(Math.min(a,4-a,1),0);return[i(5),i(3),i(1)]}function qx(n,t,e){const i=Ku(n,1,.5);let r;for(t+e>1&&(r=1/(t+e),t*=r,e*=r),r=0;r<3;r++)i[r]*=1-t-e,i[r]+=t;return i}function Zx(n,t,e,i,r){return n===r?(t-e)/i+(t.5?g/(2-a-l):g/(a+l),u=Zx(e,i,r,g,a),u=u*60+.5),[u|0,f||0,c]}function Ia(n,t,e,i){return(Array.isArray(t)?n(t[0],t[1],t[2]):n(t,e,i)).map(_n)}function Fa(n,t,e){return Ia(Ku,n,t,e)}function Jx(n,t,e){return Ia(qx,n,t,e)}function Qx(n,t,e){return Ia(jx,n,t,e)}function ju(n){return(n%360+360)%360}function ty(n){const t=Kx.exec(n);let e=255,i;if(!t)return;t[5]!==i&&(e=t[6]?Ni(+t[5]):_n(+t[5]));const r=ju(+t[2]),a=+t[3]/100,l=+t[4]/100;return t[1]==="hwb"?i=Jx(r,a,l):t[1]==="hsv"?i=Qx(r,a,l):i=Fa(r,a,l),{r:i[0],g:i[1],b:i[2],a:e}}function ey(n,t){var e=Ea(n);e[0]=ju(e[0]+t),e=Fa(e),n.r=e[0],n.g=e[1],n.b=e[2]}function ny(n){if(!n)return;const t=Ea(n),e=t[0],i=Ph(t[1]),r=Ph(t[2]);return n.a<255?`hsla(${e}, ${i}%, ${r}%, ${Qe(n.a)})`:`hsl(${e}, ${i}%, ${r}%)`}const Ch={x:"dark",Z:"light",Y:"re",X:"blu",W:"gr",V:"medium",U:"slate",A:"ee",T:"ol",S:"or",B:"ra",C:"lateg",D:"ights",R:"in",Q:"turquois",E:"hi",P:"ro",O:"al",N:"le",M:"de",L:"yello",F:"en",K:"ch",G:"arks",H:"ea",I:"ightg",J:"wh"},Oh={OiceXe:"f0f8ff",antiquewEte:"faebd7",aqua:"ffff",aquamarRe:"7fffd4",azuY:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"0",blanKedOmond:"ffebcd",Xe:"ff",XeviTet:"8a2be2",bPwn:"a52a2a",burlywood:"deb887",caMtXe:"5f9ea0",KartYuse:"7fff00",KocTate:"d2691e",cSO:"ff7f50",cSnflowerXe:"6495ed",cSnsilk:"fff8dc",crimson:"dc143c",cyan:"ffff",xXe:"8b",xcyan:"8b8b",xgTMnPd:"b8860b",xWay:"a9a9a9",xgYF:"6400",xgYy:"a9a9a9",xkhaki:"bdb76b",xmagFta:"8b008b",xTivegYF:"556b2f",xSange:"ff8c00",xScEd:"9932cc",xYd:"8b0000",xsOmon:"e9967a",xsHgYF:"8fbc8f",xUXe:"483d8b",xUWay:"2f4f4f",xUgYy:"2f4f4f",xQe:"ced1",xviTet:"9400d3",dAppRk:"ff1493",dApskyXe:"bfff",dimWay:"696969",dimgYy:"696969",dodgerXe:"1e90ff",fiYbrick:"b22222",flSOwEte:"fffaf0",foYstWAn:"228b22",fuKsia:"ff00ff",gaRsbSo:"dcdcdc",ghostwEte:"f8f8ff",gTd:"ffd700",gTMnPd:"daa520",Way:"808080",gYF:"8000",gYFLw:"adff2f",gYy:"808080",honeyMw:"f0fff0",hotpRk:"ff69b4",RdianYd:"cd5c5c",Rdigo:"4b0082",ivSy:"fffff0",khaki:"f0e68c",lavFMr:"e6e6fa",lavFMrXsh:"fff0f5",lawngYF:"7cfc00",NmoncEffon:"fffacd",ZXe:"add8e6",ZcSO:"f08080",Zcyan:"e0ffff",ZgTMnPdLw:"fafad2",ZWay:"d3d3d3",ZgYF:"90ee90",ZgYy:"d3d3d3",ZpRk:"ffb6c1",ZsOmon:"ffa07a",ZsHgYF:"20b2aa",ZskyXe:"87cefa",ZUWay:"778899",ZUgYy:"778899",ZstAlXe:"b0c4de",ZLw:"ffffe0",lime:"ff00",limegYF:"32cd32",lRF:"faf0e6",magFta:"ff00ff",maPon:"800000",VaquamarRe:"66cdaa",VXe:"cd",VScEd:"ba55d3",VpurpN:"9370db",VsHgYF:"3cb371",VUXe:"7b68ee",VsprRggYF:"fa9a",VQe:"48d1cc",VviTetYd:"c71585",midnightXe:"191970",mRtcYam:"f5fffa",mistyPse:"ffe4e1",moccasR:"ffe4b5",navajowEte:"ffdead",navy:"80",Tdlace:"fdf5e6",Tive:"808000",TivedBb:"6b8e23",Sange:"ffa500",SangeYd:"ff4500",ScEd:"da70d6",pOegTMnPd:"eee8aa",pOegYF:"98fb98",pOeQe:"afeeee",pOeviTetYd:"db7093",papayawEp:"ffefd5",pHKpuff:"ffdab9",peru:"cd853f",pRk:"ffc0cb",plum:"dda0dd",powMrXe:"b0e0e6",purpN:"800080",YbeccapurpN:"663399",Yd:"ff0000",Psybrown:"bc8f8f",PyOXe:"4169e1",saddNbPwn:"8b4513",sOmon:"fa8072",sandybPwn:"f4a460",sHgYF:"2e8b57",sHshell:"fff5ee",siFna:"a0522d",silver:"c0c0c0",skyXe:"87ceeb",UXe:"6a5acd",UWay:"708090",UgYy:"708090",snow:"fffafa",sprRggYF:"ff7f",stAlXe:"4682b4",tan:"d2b48c",teO:"8080",tEstN:"d8bfd8",tomato:"ff6347",Qe:"40e0d0",viTet:"ee82ee",JHt:"f5deb3",wEte:"ffffff",wEtesmoke:"f5f5f5",Lw:"ffff00",LwgYF:"9acd32"};function iy(){const n={},t=Object.keys(Oh),e=Object.keys(Ch);let i,r,a,l,c;for(i=0;i>16&255,a>>8&255,a&255]}return n}let Qs;function sy(n){Qs||(Qs=iy(),Qs.transparent=[0,0,0,0]);const t=Qs[n.toLowerCase()];return t&&{r:t[0],g:t[1],b:t[2],a:t.length===4?t[3]:255}}const ry=/^rgba?\(\s*([-+.\d]+)(%)?[\s,]+([-+.e\d]+)(%)?[\s,]+([-+.e\d]+)(%)?(?:[\s,/]+([-+.e\d]+)(%)?)?\s*\)$/;function oy(n){const t=ry.exec(n);let e=255,i,r,a;if(!!t){if(t[7]!==i){const l=+t[7];e=t[8]?Ni(l):dn(l*255,0,255)}return i=+t[1],r=+t[3],a=+t[5],i=255&(t[2]?Ni(i):dn(i,0,255)),r=255&(t[4]?Ni(r):dn(r,0,255)),a=255&(t[6]?Ni(a):dn(a,0,255)),{r:i,g:r,b:a,a:e}}}function ay(n){return n&&(n.a<255?`rgba(${n.r}, ${n.g}, ${n.b}, ${Qe(n.a)})`:`rgb(${n.r}, ${n.g}, ${n.b})`)}const oa=n=>n<=.0031308?n*12.92:Math.pow(n,1/2.4)*1.055-.055,oi=n=>n<=.04045?n/12.92:Math.pow((n+.055)/1.055,2.4);function ly(n,t,e){const i=oi(Qe(n.r)),r=oi(Qe(n.g)),a=oi(Qe(n.b));return{r:_n(oa(i+e*(oi(Qe(t.r))-i))),g:_n(oa(r+e*(oi(Qe(t.g))-r))),b:_n(oa(a+e*(oi(Qe(t.b))-a))),a:n.a+e*(t.a-n.a)}}function tr(n,t,e){if(n){let i=Ea(n);i[t]=Math.max(0,Math.min(i[t]+i[t]*e,t===0?360:1)),i=Fa(i),n.r=i[0],n.g=i[1],n.b=i[2]}}function qu(n,t){return n&&Object.assign(t||{},n)}function Th(n){var t={r:0,g:0,b:0,a:255};return Array.isArray(n)?n.length>=3&&(t={r:n[0],g:n[1],b:n[2],a:255},n.length>3&&(t.a=_n(n[3]))):(t=qu(n,{r:0,g:0,b:0,a:1}),t.a=_n(t.a)),t}function cy(n){return n.charAt(0)==="r"?oy(n):ty(n)}class qi{constructor(t){if(t instanceof qi)return t;const e=typeof t;let i;e==="object"?i=Th(t):e==="string"&&(i=Yx(t)||sy(t)||cy(t)),this._rgb=i,this._valid=!!i}get valid(){return this._valid}get rgb(){var t=qu(this._rgb);return t&&(t.a=Qe(t.a)),t}set rgb(t){this._rgb=Th(t)}rgbString(){return this._valid?ay(this._rgb):void 0}hexString(){return this._valid?Gx(this._rgb):void 0}hslString(){return this._valid?ny(this._rgb):void 0}mix(t,e){if(t){const i=this.rgb,r=t.rgb;let a;const l=e===a?.5:e,c=2*l-1,u=i.a-r.a,f=((c*u===-1?c:(c+u)/(1+c*u))+1)/2;a=1-f,i.r=255&f*i.r+a*r.r+.5,i.g=255&f*i.g+a*r.g+.5,i.b=255&f*i.b+a*r.b+.5,i.a=l*i.a+(1-l)*r.a,this.rgb=i}return this}interpolate(t,e){return t&&(this._rgb=ly(this._rgb,t._rgb,e)),this}clone(){return new qi(this.rgb)}alpha(t){return this._rgb.a=_n(t),this}clearer(t){const e=this._rgb;return e.a*=1-t,this}greyscale(){const t=this._rgb,e=ss(t.r*.3+t.g*.59+t.b*.11);return t.r=t.g=t.b=e,this}opaquer(t){const e=this._rgb;return e.a*=1+t,this}negate(){const t=this._rgb;return t.r=255-t.r,t.g=255-t.g,t.b=255-t.b,this}lighten(t){return tr(this._rgb,2,t),this}darken(t){return tr(this._rgb,2,-t),this}saturate(t){return tr(this._rgb,1,t),this}desaturate(t){return tr(this._rgb,1,-t),this}rotate(t){return ey(this._rgb,t),this}}/*!
+ * Chart.js v4.1.2
+ * https://www.chartjs.org
+ * (c) 2023 Chart.js Contributors
+ * Released under the MIT License
+ */function qe(){}const hy=(()=>{let n=0;return()=>n++})();function lt(n){return n===null||typeof n>"u"}function vt(n){if(Array.isArray&&Array.isArray(n))return!0;const t=Object.prototype.toString.call(n);return t.slice(0,7)==="[object"&&t.slice(-6)==="Array]"}function rt(n){return n!==null&&Object.prototype.toString.call(n)==="[object Object]"}function Pt(n){return(typeof n=="number"||n instanceof Number)&&isFinite(+n)}function he(n,t){return Pt(n)?n:t}function Z(n,t){return typeof n>"u"?t:n}const uy=(n,t)=>typeof n=="string"&&n.endsWith("%")?parseFloat(n)/100:+n/t,Zu=(n,t)=>typeof n=="string"&&n.endsWith("%")?parseFloat(n)/100*t:+n;function xt(n,t,e){if(n&&typeof n.call=="function")return n.apply(e,t)}function pt(n,t,e,i){let r,a,l;if(vt(n))if(a=n.length,i)for(r=a-1;r>=0;r--)t.call(e,n[r],r);else for(r=0;rn,x:n=>n.x,y:n=>n.y};function gy(n){const t=n.split("."),e=[];let i="";for(const r of t)i+=r,i.endsWith("\\")?i=i.slice(0,-1)+".":(e.push(i),i="");return e}function py(n){const t=gy(n);return e=>{for(const i of t){if(i==="")break;e=e&&e[i]}return e}}function bn(n,t){return(Dh[t]||(Dh[t]=py(t)))(n)}function Ba(n){return n.charAt(0).toUpperCase()+n.slice(1)}const we=n=>typeof n<"u",xn=n=>typeof n=="function",Lh=(n,t)=>{if(n.size!==t.size)return!1;for(const e of n)if(!t.has(e))return!1;return!0};function my(n){return n.type==="mouseup"||n.type==="click"||n.type==="contextmenu"}const Mt=Math.PI,wt=2*Mt,_y=wt+Mt,Mr=Number.POSITIVE_INFINITY,by=Mt/180,Ct=Mt/2,Ln=Mt/4,Rh=Mt*2/3,gn=Math.log10,We=Math.sign;function Xi(n,t,e){return Math.abs(n-t)r-a).pop(),t}function ci(n){return!isNaN(parseFloat(n))&&isFinite(n)}function yy(n,t){const e=Math.round(n);return e-t<=n&&e+t>=n}function Qu(n,t,e){let i,r,a;for(i=0,r=n.length;iu&&f=Math.min(t,e)-i&&n<=Math.max(t,e)+i}function Wa(n,t,e){e=e||(l=>n[l]1;)a=r+i>>1,e(a)?r=a:i=a;return{lo:r,hi:i}}const en=(n,t,e,i)=>Wa(n,e,i?r=>{const a=n[r][t];return an[r][t]Wa(n,e,i=>n[i][t]>=e);function My(n,t,e){let i=0,r=n.length;for(;ii&&n[r-1]>e;)r--;return i>0||r{const i="_onData"+Ba(e),r=n[e];Object.defineProperty(n,e,{configurable:!0,enumerable:!1,value(...a){const l=r.apply(this,a);return n._chartjs.listeners.forEach(c=>{typeof c[i]=="function"&&c[i](...a)}),l}})})}function Fh(n,t){const e=n._chartjs;if(!e)return;const i=e.listeners,r=i.indexOf(t);r!==-1&&i.splice(r,1),!(i.length>0)&&(ef.forEach(a=>{delete n[a]}),delete n._chartjs)}function nf(n){const t=new Set;let e,i;for(e=0,i=n.length;e"u"?function(n){return n()}:window.requestAnimationFrame}();function rf(n,t){let e=[],i=!1;return function(...r){e=r,i||(i=!0,sf.call(window,()=>{i=!1,n.apply(t,e)}))}}function ky(n,t){let e;return function(...i){return t?(clearTimeout(e),e=setTimeout(n,t,i)):n.apply(this,i),t}}const Na=n=>n==="start"?"left":n==="end"?"right":"center",Yt=(n,t,e)=>n==="start"?t:n==="end"?e:(t+e)/2,Py=(n,t,e,i)=>n===(i?"left":"right")?e:n==="center"?(t+e)/2:t;function of(n,t,e){const i=t.length;let r=0,a=i;if(n._sorted){const{iScale:l,_parsed:c}=n,u=l.axis,{min:f,max:g,minDefined:p,maxDefined:_}=l.getUserBounds();p&&(r=Wt(Math.min(en(c,l.axis,f).lo,e?i:en(t,u,l.getPixelForValue(f)).lo),0,i-1)),_?a=Wt(Math.max(en(c,l.axis,g,!0).hi+1,e?0:en(t,u,l.getPixelForValue(g),!0).hi+1),r,i)-r:a=i-r}return{start:r,count:a}}function af(n){const{xScale:t,yScale:e,_scaleRanges:i}=n,r={xmin:t.min,xmax:t.max,ymin:e.min,ymax:e.max};if(!i)return n._scaleRanges=r,!0;const a=i.xmin!==t.min||i.xmax!==t.max||i.ymin!==e.min||i.ymax!==e.max;return Object.assign(i,r),a}const er=n=>n===0||n===1,Bh=(n,t,e)=>-(Math.pow(2,10*(n-=1))*Math.sin((n-t)*wt/e)),zh=(n,t,e)=>Math.pow(2,-10*n)*Math.sin((n-t)*wt/e)+1,Gi={linear:n=>n,easeInQuad:n=>n*n,easeOutQuad:n=>-n*(n-2),easeInOutQuad:n=>(n/=.5)<1?.5*n*n:-.5*(--n*(n-2)-1),easeInCubic:n=>n*n*n,easeOutCubic:n=>(n-=1)*n*n+1,easeInOutCubic:n=>(n/=.5)<1?.5*n*n*n:.5*((n-=2)*n*n+2),easeInQuart:n=>n*n*n*n,easeOutQuart:n=>-((n-=1)*n*n*n-1),easeInOutQuart:n=>(n/=.5)<1?.5*n*n*n*n:-.5*((n-=2)*n*n*n-2),easeInQuint:n=>n*n*n*n*n,easeOutQuint:n=>(n-=1)*n*n*n*n+1,easeInOutQuint:n=>(n/=.5)<1?.5*n*n*n*n*n:.5*((n-=2)*n*n*n*n+2),easeInSine:n=>-Math.cos(n*Ct)+1,easeOutSine:n=>Math.sin(n*Ct),easeInOutSine:n=>-.5*(Math.cos(Mt*n)-1),easeInExpo:n=>n===0?0:Math.pow(2,10*(n-1)),easeOutExpo:n=>n===1?1:-Math.pow(2,-10*n)+1,easeInOutExpo:n=>er(n)?n:n<.5?.5*Math.pow(2,10*(n*2-1)):.5*(-Math.pow(2,-10*(n*2-1))+2),easeInCirc:n=>n>=1?n:-(Math.sqrt(1-n*n)-1),easeOutCirc:n=>Math.sqrt(1-(n-=1)*n),easeInOutCirc:n=>(n/=.5)<1?-.5*(Math.sqrt(1-n*n)-1):.5*(Math.sqrt(1-(n-=2)*n)+1),easeInElastic:n=>er(n)?n:Bh(n,.075,.3),easeOutElastic:n=>er(n)?n:zh(n,.075,.3),easeInOutElastic(n){return er(n)?n:n<.5?.5*Bh(n*2,.1125,.45):.5+.5*zh(n*2-1,.1125,.45)},easeInBack(n){return n*n*((1.70158+1)*n-1.70158)},easeOutBack(n){return(n-=1)*n*((1.70158+1)*n+1.70158)+1},easeInOutBack(n){let t=1.70158;return(n/=.5)<1?.5*(n*n*(((t*=1.525)+1)*n-t)):.5*((n-=2)*n*(((t*=1.525)+1)*n+t)+2)},easeInBounce:n=>1-Gi.easeOutBounce(1-n),easeOutBounce(n){return n<1/2.75?7.5625*n*n:n<2/2.75?7.5625*(n-=1.5/2.75)*n+.75:n<2.5/2.75?7.5625*(n-=2.25/2.75)*n+.9375:7.5625*(n-=2.625/2.75)*n+.984375},easeInOutBounce:n=>n<.5?Gi.easeInBounce(n*2)*.5:Gi.easeOutBounce(n*2-1)*.5+.5};function lf(n){if(n&&typeof n=="object"){const t=n.toString();return t==="[object CanvasPattern]"||t==="[object CanvasGradient]"}return!1}function Wh(n){return lf(n)?n:new qi(n)}function aa(n){return lf(n)?n:new qi(n).saturate(.5).darken(.1).hexString()}const Cy=["x","y","borderWidth","radius","tension"],Oy=["color","borderColor","backgroundColor"];function Ty(n){n.set("animation",{delay:void 0,duration:1e3,easing:"easeOutQuart",fn:void 0,from:void 0,loop:void 0,to:void 0,type:void 0}),n.describe("animation",{_fallback:!1,_indexable:!1,_scriptable:t=>t!=="onProgress"&&t!=="onComplete"&&t!=="fn"}),n.set("animations",{colors:{type:"color",properties:Oy},numbers:{type:"number",properties:Cy}}),n.describe("animations",{_fallback:"animation"}),n.set("transitions",{active:{animation:{duration:400}},resize:{animation:{duration:0}},show:{animations:{colors:{from:"transparent"},visible:{type:"boolean",duration:0}}},hide:{animations:{colors:{to:"transparent"},visible:{type:"boolean",easing:"linear",fn:t=>t|0}}}})}function Dy(n){n.set("layout",{autoPadding:!0,padding:{top:0,right:0,bottom:0,left:0}})}const Nh=new Map;function Ly(n,t){t=t||{};const e=n+JSON.stringify(t);let i=Nh.get(e);return i||(i=new Intl.NumberFormat(n,t),Nh.set(e,i)),i}function rs(n,t,e){return Ly(t,e).format(n)}const cf={values(n){return vt(n)?n:""+n},numeric(n,t,e){if(n===0)return"0";const i=this.chart.options.locale;let r,a=n;if(e.length>1){const f=Math.max(Math.abs(e[0].value),Math.abs(e[e.length-1].value));(f<1e-4||f>1e15)&&(r="scientific"),a=Ry(n,e)}const l=gn(Math.abs(a)),c=Math.max(Math.min(-1*Math.floor(l),20),0),u={notation:r,minimumFractionDigits:c,maximumFractionDigits:c};return Object.assign(u,this.options.ticks.format),rs(n,i,u)},logarithmic(n,t,e){if(n===0)return"0";const i=e[t].significand||n/Math.pow(10,Math.floor(gn(n)));return[1,2,3,5,10,15].includes(i)||t>.8*e.length?cf.numeric.call(this,n,t,e):""}};function Ry(n,t){let e=t.length>3?t[2].value-t[1].value:t[1].value-t[0].value;return Math.abs(e)>=1&&n!==Math.floor(n)&&(e=n-Math.floor(n)),e}var Dr={formatters:cf};function Ey(n){n.set("scale",{display:!0,offset:!1,reverse:!1,beginAtZero:!1,bounds:"ticks",grace:0,grid:{display:!0,lineWidth:1,drawOnChartArea:!0,drawTicks:!0,tickLength:8,tickWidth:(t,e)=>e.lineWidth,tickColor:(t,e)=>e.color,offset:!1},border:{display:!0,dash:[],dashOffset:0,width:1},title:{display:!1,text:"",padding:{top:4,bottom:4}},ticks:{minRotation:0,maxRotation:50,mirror:!1,textStrokeWidth:0,textStrokeColor:"",padding:3,display:!0,autoSkip:!0,autoSkipPadding:3,labelOffset:0,callback:Dr.formatters.values,minor:{},major:{},align:"center",crossAlign:"near",showLabelBackdrop:!1,backdropColor:"rgba(255, 255, 255, 0.75)",backdropPadding:2}}),n.route("scale.ticks","color","","color"),n.route("scale.grid","color","","borderColor"),n.route("scale.border","color","","borderColor"),n.route("scale.title","color","","color"),n.describe("scale",{_fallback:!1,_scriptable:t=>!t.startsWith("before")&&!t.startsWith("after")&&t!=="callback"&&t!=="parser",_indexable:t=>t!=="borderDash"&&t!=="tickBorderDash"&&t!=="dash"}),n.describe("scales",{_fallback:"scale"}),n.describe("scale.ticks",{_scriptable:t=>t!=="backdropPadding"&&t!=="callback",_indexable:t=>t!=="backdropPadding"})}const Vn=Object.create(null),va=Object.create(null);function Ki(n,t){if(!t)return n;const e=t.split(".");for(let i=0,r=e.length;ii.chart.platform.getDevicePixelRatio(),this.elements={},this.events=["mousemove","mouseout","click","touchstart","touchmove"],this.font={family:"'Helvetica Neue', 'Helvetica', 'Arial', sans-serif",size:12,style:"normal",lineHeight:1.2,weight:null},this.hover={},this.hoverBackgroundColor=(i,r)=>aa(r.backgroundColor),this.hoverBorderColor=(i,r)=>aa(r.borderColor),this.hoverColor=(i,r)=>aa(r.color),this.indexAxis="x",this.interaction={mode:"nearest",intersect:!0,includeInvisible:!1},this.maintainAspectRatio=!0,this.onHover=null,this.onClick=null,this.parsing=!0,this.plugins={},this.responsive=!0,this.scale=void 0,this.scales={},this.showLine=!0,this.drawActiveElementsOnTop=!0,this.describe(t),this.apply(e)}set(t,e){return la(this,t,e)}get(t){return Ki(this,t)}describe(t,e){return la(va,t,e)}override(t,e){return la(Vn,t,e)}route(t,e,i,r){const a=Ki(this,t),l=Ki(this,i),c="_"+e;Object.defineProperties(a,{[c]:{value:a[e],writable:!0},[e]:{enumerable:!0,get(){const u=this[c],f=l[r];return rt(u)?Object.assign({},f,u):Z(u,f)},set(u){this[c]=u}}})}apply(t){t.forEach(e=>e(this))}}var Dt=new Iy({_scriptable:n=>!n.startsWith("on"),_indexable:n=>n!=="events",hover:{_fallback:"interaction"},interaction:{_scriptable:!1,_indexable:!1}},[Ty,Dy,Ey]);function Fy(n){return!n||lt(n.size)||lt(n.family)?null:(n.style?n.style+" ":"")+(n.weight?n.weight+" ":"")+n.size+"px "+n.family}function Ar(n,t,e,i,r){let a=t[r];return a||(a=t[r]=n.measureText(r).width,e.push(r)),a>i&&(i=a),i}function By(n,t,e,i){i=i||{};let r=i.data=i.data||{},a=i.garbageCollect=i.garbageCollect||[];i.font!==t&&(r=i.data={},a=i.garbageCollect=[],i.font=t),n.save(),n.font=t;let l=0;const c=e.length;let u,f,g,p,_;for(u=0;ue.length){for(u=0;u0&&n.stroke()}}function Qi(n,t,e){return e=e||.5,!t||n&&n.x>t.left-e&&n.xt.top-e&&n.y0&&a.strokeColor!=="";let u,f;for(n.save(),n.font=r.string,Ny(n,a),u=0;u+n||0;function Ha(n,t){const e={},i=rt(t),r=i?Object.keys(t):t,a=rt(n)?i?l=>Z(n[l],n[t[l]]):l=>n[l]:()=>n;for(const l of r)e[l]=Xy(a(l));return e}function uf(n){return Ha(n,{top:"y",right:"x",bottom:"y",left:"x"})}function Nn(n){return Ha(n,["topLeft","topRight","bottomLeft","bottomRight"])}function Gt(n){const t=uf(n);return t.width=t.left+t.right,t.height=t.top+t.bottom,t}function Ft(n,t){n=n||{},t=t||Dt.font;let e=Z(n.size,t.size);typeof e=="string"&&(e=parseInt(e,10));let i=Z(n.style,t.style);i&&!(""+i).match($y)&&(console.warn('Invalid font style specified: "'+i+'"'),i=void 0);const r={family:Z(n.family,t.family),lineHeight:Yy(Z(n.lineHeight,t.lineHeight),e),size:e,style:i,weight:Z(n.weight,t.weight),string:""};return r.string=Fy(r),r}function Hi(n,t,e,i){let r=!0,a,l,c;for(a=0,l=n.length;ae&&c===0?0:c+u;return{min:l(i,-Math.abs(a)),max:l(r,a)}}function yn(n,t){return Object.assign(Object.create(n),t)}function Va(n,t=[""],e=n,i,r=()=>n[0]){we(i)||(i=pf("_fallback",n));const a={[Symbol.toStringTag]:"Object",_cacheable:!0,_scopes:n,_rootScopes:e,_fallback:i,_getTarget:r,override:l=>Va([l,...n],t,e,i)};return new Proxy(a,{deleteProperty(l,c){return delete l[c],delete l._keys,delete n[0][c],!0},get(l,c){return df(l,c,()=>ev(c,t,n,l))},getOwnPropertyDescriptor(l,c){return Reflect.getOwnPropertyDescriptor(l._scopes[0],c)},getPrototypeOf(){return Reflect.getPrototypeOf(n[0])},has(l,c){return Uh(l).includes(c)},ownKeys(l){return Uh(l)},set(l,c,u){const f=l._storage||(l._storage=r());return l[c]=f[c]=u,delete l._keys,!0}})}function hi(n,t,e,i){const r={_cacheable:!1,_proxy:n,_context:t,_subProxy:e,_stack:new Set,_descriptors:ff(n,i),setContext:a=>hi(n,a,e,i),override:a=>hi(n.override(a),t,e,i)};return new Proxy(r,{deleteProperty(a,l){return delete a[l],delete n[l],!0},get(a,l,c){return df(a,l,()=>jy(a,l,c))},getOwnPropertyDescriptor(a,l){return a._descriptors.allKeys?Reflect.has(n,l)?{enumerable:!0,configurable:!0}:void 0:Reflect.getOwnPropertyDescriptor(n,l)},getPrototypeOf(){return Reflect.getPrototypeOf(n)},has(a,l){return Reflect.has(n,l)},ownKeys(){return Reflect.ownKeys(n)},set(a,l,c){return n[l]=c,delete a[l],!0}})}function ff(n,t={scriptable:!0,indexable:!0}){const{_scriptable:e=t.scriptable,_indexable:i=t.indexable,_allKeys:r=t.allKeys}=n;return{allKeys:r,scriptable:e,indexable:i,isScriptable:xn(e)?e:()=>e,isIndexable:xn(i)?i:()=>i}}const Ky=(n,t)=>n?n+Ba(t):t,Ua=(n,t)=>rt(t)&&n!=="adapters"&&(Object.getPrototypeOf(t)===null||t.constructor===Object);function df(n,t,e){if(Object.prototype.hasOwnProperty.call(n,t))return n[t];const i=e();return n[t]=i,i}function jy(n,t,e){const{_proxy:i,_context:r,_subProxy:a,_descriptors:l}=n;let c=i[t];return xn(c)&&l.isScriptable(t)&&(c=qy(t,c,n,e)),vt(c)&&c.length&&(c=Zy(t,c,n,l.isIndexable)),Ua(t,c)&&(c=hi(c,r,a&&a[t],l)),c}function qy(n,t,e,i){const{_proxy:r,_context:a,_subProxy:l,_stack:c}=e;if(c.has(n))throw new Error("Recursion detected: "+Array.from(c).join("->")+"->"+n);return c.add(n),t=t(a,l||i),c.delete(n),Ua(n,t)&&(t=$a(r._scopes,r,n,t)),t}function Zy(n,t,e,i){const{_proxy:r,_context:a,_subProxy:l,_descriptors:c}=e;if(we(a.index)&&i(n))t=t[a.index%t.length];else if(rt(t[0])){const u=t,f=r._scopes.filter(g=>g!==u);t=[];for(const g of u){const p=$a(f,r,n,g);t.push(hi(p,a,l&&l[n],c))}}return t}function gf(n,t,e){return xn(n)?n(t,e):n}const Jy=(n,t)=>n===!0?t:typeof n=="string"?bn(t,n):void 0;function Qy(n,t,e,i,r){for(const a of t){const l=Jy(e,a);if(l){n.add(l);const c=gf(l._fallback,e,r);if(we(c)&&c!==e&&c!==i)return c}else if(l===!1&&we(i)&&e!==i)return null}return!1}function $a(n,t,e,i){const r=t._rootScopes,a=gf(t._fallback,e,i),l=[...n,...r],c=new Set;c.add(i);let u=Vh(c,l,e,a||e,i);return u===null||we(a)&&a!==e&&(u=Vh(c,l,a,u,i),u===null)?!1:Va(Array.from(c),[""],r,a,()=>tv(t,e,i))}function Vh(n,t,e,i,r){for(;e;)e=Qy(n,t,e,i,r);return e}function tv(n,t,e){const i=n._getTarget();t in i||(i[t]={});const r=i[t];return vt(r)&&rt(e)?e:r||{}}function ev(n,t,e,i){let r;for(const a of t)if(r=pf(Ky(a,n),e),we(r))return Ua(n,r)?$a(e,i,n,r):r}function pf(n,t){for(const e of t){if(!e)continue;const i=e[n];if(we(i))return i}}function Uh(n){let t=n._keys;return t||(t=n._keys=nv(n._scopes)),t}function nv(n){const t=new Set;for(const e of n)for(const i of Object.keys(e).filter(r=>!r.startsWith("_")))t.add(i);return Array.from(t)}function mf(n,t,e,i){const{iScale:r}=n,{key:a="r"}=this._parsing,l=new Array(i);let c,u,f,g;for(c=0,u=i;ctn==="x"?"y":"x";function sv(n,t,e,i){const r=n.skip?t:n,a=t,l=e.skip?t:e,c=ya(a,r),u=ya(l,a);let f=c/(c+u),g=u/(c+u);f=isNaN(f)?0:f,g=isNaN(g)?0:g;const p=i*f,_=i*g;return{previous:{x:a.x-p*(l.x-r.x),y:a.y-p*(l.y-r.y)},next:{x:a.x+_*(l.x-r.x),y:a.y+_*(l.y-r.y)}}}function rv(n,t,e){const i=n.length;let r,a,l,c,u,f=ui(n,0);for(let g=0;g!f.skip)),t.cubicInterpolationMode==="monotone")av(n,r);else{let f=i?n[n.length-1]:n[0];for(a=0,l=n.length;an.ownerDocument.defaultView.getComputedStyle(n,null);function hv(n,t){return Er(n).getPropertyValue(t)}const uv=["top","right","bottom","left"];function Hn(n,t,e){const i={};e=e?"-"+e:"";for(let r=0;r<4;r++){const a=uv[r];i[a]=parseFloat(n[t+"-"+a+e])||0}return i.width=i.left+i.right,i.height=i.top+i.bottom,i}const fv=(n,t,e)=>(n>0||t>0)&&(!e||!e.shadowRoot);function dv(n,t){const e=n.touches,i=e&&e.length?e[0]:n,{offsetX:r,offsetY:a}=i;let l=!1,c,u;if(fv(r,a,n.target))c=r,u=a;else{const f=t.getBoundingClientRect();c=i.clientX-f.left,u=i.clientY-f.top,l=!0}return{x:c,y:u,box:l}}function Fn(n,t){if("native"in n)return n;const{canvas:e,currentDevicePixelRatio:i}=t,r=Er(e),a=r.boxSizing==="border-box",l=Hn(r,"padding"),c=Hn(r,"border","width"),{x:u,y:f,box:g}=dv(n,e),p=l.left+(g&&c.left),_=l.top+(g&&c.top);let{width:y,height:w}=t;return a&&(y-=l.width+c.width,w-=l.height+c.height),{x:Math.round((u-p)/y*e.width/i),y:Math.round((f-_)/w*e.height/i)}}function gv(n,t,e){let i,r;if(t===void 0||e===void 0){const a=Ya(n);if(!a)t=n.clientWidth,e=n.clientHeight;else{const l=a.getBoundingClientRect(),c=Er(a),u=Hn(c,"border","width"),f=Hn(c,"padding");t=l.width-f.width-u.width,e=l.height-f.height-u.height,i=kr(c.maxWidth,a,"clientWidth"),r=kr(c.maxHeight,a,"clientHeight")}}return{width:t,height:e,maxWidth:i||Mr,maxHeight:r||Mr}}const ir=n=>Math.round(n*10)/10;function pv(n,t,e,i){const r=Er(n),a=Hn(r,"margin"),l=kr(r.maxWidth,n,"clientWidth")||Mr,c=kr(r.maxHeight,n,"clientHeight")||Mr,u=gv(n,t,e);let{width:f,height:g}=u;if(r.boxSizing==="content-box"){const _=Hn(r,"border","width"),y=Hn(r,"padding");f-=y.width+_.width,g-=y.height+_.height}return f=Math.max(0,f-a.width),g=Math.max(0,i?f/i:g-a.height),f=ir(Math.min(f,l,u.maxWidth)),g=ir(Math.min(g,c,u.maxHeight)),f&&!g&&(g=ir(f/2)),(t!==void 0||e!==void 0)&&i&&u.height&&g>u.height&&(g=u.height,f=ir(Math.floor(g*i))),{width:f,height:g}}function $h(n,t,e){const i=t||1,r=Math.floor(n.height*i),a=Math.floor(n.width*i);n.height=Math.floor(n.height),n.width=Math.floor(n.width);const l=n.canvas;return l.style&&(e||!l.style.height&&!l.style.width)&&(l.style.height=`${n.height}px`,l.style.width=`${n.width}px`),n.currentDevicePixelRatio!==i||l.height!==r||l.width!==a?(n.currentDevicePixelRatio=i,l.height=r,l.width=a,n.ctx.setTransform(i,0,0,i,0,0),!0):!1}const mv=function(){let n=!1;try{const t={get passive(){return n=!0,!1}};window.addEventListener("test",null,t),window.removeEventListener("test",null,t)}catch(t){}return n}();function Yh(n,t){const e=hv(n,t),i=e&&e.match(/^(\d+)(\.\d+)?px$/);return i?+i[1]:void 0}function Bn(n,t,e,i){return{x:n.x+e*(t.x-n.x),y:n.y+e*(t.y-n.y)}}function _v(n,t,e,i){return{x:n.x+e*(t.x-n.x),y:i==="middle"?e<.5?n.y:t.y:i==="after"?e<1?n.y:t.y:e>0?t.y:n.y}}function bv(n,t,e,i){const r={x:n.cp2x,y:n.cp2y},a={x:t.cp1x,y:t.cp1y},l=Bn(n,r,e),c=Bn(r,a,e),u=Bn(a,t,e),f=Bn(l,c,e),g=Bn(c,u,e);return Bn(f,g,e)}const xv=function(n,t){return{x(e){return n+n+t-e},setWidth(e){t=e},textAlign(e){return e==="center"?e:e==="right"?"left":"right"},xPlus(e,i){return e-i},leftForLtr(e,i){return e-i}}},yv=function(){return{x(n){return n},setWidth(n){},textAlign(n){return n},xPlus(n,t){return n+t},leftForLtr(n,t){return n}}};function li(n,t,e){return n?xv(t,e):yv()}function xf(n,t){let e,i;(t==="ltr"||t==="rtl")&&(e=n.canvas.style,i=[e.getPropertyValue("direction"),e.getPropertyPriority("direction")],e.setProperty("direction",t,"important"),n.prevTextDirection=i)}function yf(n,t){t!==void 0&&(delete n.prevTextDirection,n.canvas.style.setProperty("direction",t[0],t[1]))}function vf(n){return n==="angle"?{between:Ji,compare:vy,normalize:ue}:{between:tn,compare:(t,e)=>t-e,normalize:t=>t}}function Xh({start:n,end:t,count:e,loop:i,style:r}){return{start:n%e,end:t%e,loop:i&&(t-n+1)%e===0,style:r}}function vv(n,t,e){const{property:i,start:r,end:a}=e,{between:l,normalize:c}=vf(i),u=t.length;let{start:f,end:g,loop:p}=n,_,y;if(p){for(f+=u,g+=u,_=0,y=u;_u(r,I,C)&&c(r,I)!==0,L=()=>c(a,C)===0||u(a,I,C),z=()=>S||B(),W=()=>!S||L();for(let N=g,Y=g;N<=p;++N)T=t[N%l],!T.skip&&(C=f(T[i]),C!==I&&(S=u(C,r,a),A===null&&z()&&(A=c(C,r)===0?N:Y),A!==null&&W()&&(w.push(Xh({start:A,end:N,loop:_,count:l,style:y})),A=null),Y=N,I=C));return A!==null&&w.push(Xh({start:A,end:p,loop:_,count:l,style:y})),w}function Sf(n,t){const e=[],i=n.segments;for(let r=0;rr&&n[a%t].skip;)a--;return a%=t,{start:r,end:a}}function Sv(n,t,e,i){const r=n.length,a=[];let l=t,c=n[t],u;for(u=t+1;u<=e;++u){const f=n[u%r];f.skip||f.stop?c.skip||(i=!1,a.push({start:t%r,end:(u-1)%r,loop:i}),t=l=f.stop?u:null):(l=u,c.skip&&(t=u)),c=f}return l!==null&&a.push({start:t%r,end:l%r,loop:i}),a}function Mv(n,t){const e=n.points,i=n.options.spanGaps,r=e.length;if(!r)return[];const a=!!n._loop,{start:l,end:c}=wv(e,r,a,i);if(i===!0)return Gh(n,[{start:l,end:c,loop:a}],e,t);const u=c