From 067ed6593dd02ed82758502970369f3cc6157a24 Mon Sep 17 00:00:00 2001 From: theapache64 Date: Sun, 7 Jul 2024 03:05:08 +0530 Subject: [PATCH] =?UTF-8?q?=F0=9F=93=A6=20update=20gh-pages?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- benchart.js | 2 +- benchart.js.map | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/benchart.js b/benchart.js index 1a2e56e..8e06bfc 100644 --- a/benchart.js +++ b/benchart.js @@ -1,3 +1,3 @@ /*! For license information please see benchart.js.LICENSE.txt */ -!function(t,n){"object"==typeof exports&&"object"==typeof module?module.exports=n():"function"==typeof define&&define.amd?define([],n):"object"==typeof exports?exports.benchart=n():t.benchart=n()}(this,(()=>(()=>{var t={868:function(t,n,e){var o,r,i;r=[n,e(744)],void 0===(i="function"==typeof(o=function(t,n){"use strict";var e,o=n.$_$.la,r=n.$_$.h9,i=n.$_$.rd;function s(){e=this,u.call(this)}function a(){return null==e&&new s,e}function u(){}function c(t){this.ko_1=t}function l(t){this.oo_1=t}function h(t){this.lo_1=t}return s.prototype=Object.create(u.prototype),s.prototype.constructor=s,s.$metadata$=o("None",void 0,void 0,void 0,void 0,u.prototype),u.prototype.atomicfu$Trace$append$1=function(t){},u.prototype.atomicfu$Trace$append$2=function(t,n){},u.prototype.atomicfu$Trace$append$3=function(t,n,e){},u.prototype.atomicfu$Trace$append$4=function(t,n,e,o){},u.$metadata$=r("TraceBase"),c.prototype.mo=function(t){this.ko_1=t},c.prototype.no=function(){return this.ko_1},c.prototype.atomicfu$compareAndSet=function(t,n){return this.ko_1===t&&(this.ko_1=n,!0)},c.prototype.atomicfu$getAndSet=function(t){var n=this.ko_1;return this.ko_1=t,n},c.prototype.toString=function(){return i(this.ko_1)},c.$metadata$=r("AtomicRef"),Object.defineProperty(c.prototype,"kotlinx$atomicfu$value",{configurable:!0,get:c.prototype.no,set:c.prototype.mo}),l.prototype.po=function(t){this.oo_1=t},l.prototype.no=function(){return this.oo_1},l.prototype.atomicfu$compareAndSet=function(t,n){return this.oo_1===t&&(this.oo_1=n,!0)},l.prototype.atomicfu$getAndSet=function(t){var n=this.oo_1;return this.oo_1=t,n},l.prototype.toString=function(){return this.oo_1.toString()},l.$metadata$=r("AtomicBoolean"),Object.defineProperty(l.prototype,"kotlinx$atomicfu$value",{configurable:!0,get:l.prototype.no,set:l.prototype.po}),h.prototype.qo=function(t){this.lo_1=t},h.prototype.no=function(){return this.lo_1},h.prototype.atomicfu$compareAndSet=function(t,n){return this.lo_1===t&&(this.lo_1=n,!0)},h.prototype.atomicfu$getAndSet=function(t){var n=this.lo_1;return this.lo_1=t,n},h.prototype.atomicfu$getAndIncrement=function(){var t=this.lo_1;return this.lo_1=t+1|0,t},h.prototype.atomicfu$getAndDecrement=function(){var t=this.lo_1;return this.lo_1=t-1|0,t},h.prototype.atomicfu$getAndAdd=function(t){var n=this.lo_1;return this.lo_1=this.lo_1+t|0,n},h.prototype.atomicfu$addAndGet=function(t){return this.lo_1=this.lo_1+t|0,this.lo_1},h.prototype.atomicfu$incrementAndGet=function(){var t=this;return t.lo_1=t.lo_1+1|0,t.lo_1},h.prototype.atomicfu$decrementAndGet=function(){var t=this;return t.lo_1=t.lo_1-1|0,t.lo_1},h.prototype.toString=function(){return this.lo_1.toString()},h.$metadata$=r("AtomicInt"),Object.defineProperty(h.prototype,"kotlinx$atomicfu$value",{configurable:!0,get:h.prototype.no,set:h.prototype.qo}),r("ReentrantLock"),t.$_$=t.$_$||{},t.$_$.a=function(t){return function(t,n){return new l(t)}(t,a())},t.$_$.b=function(t){return function(t,n){return new c(t)}(t,a())},t.$_$.c=function(t){return function(t,n){return new h(t)}(t,a())},t})?o.apply(n,r):o)||(t.exports=i)},769:function(t,n,e){var o,r;o=[n,e(744),e(646)],void 0===(r=function(t,n,e){"use strict";var o,r,i,s,a,u,c,l,h,p,f,_,d,v,y,m,g,$,b,w,x,k,j,C,z,S,q,O,P,M,A,E,I,D,T,B,L,N,F,R,H,U,V,W,J,K,G,Y,X,Z,Q,tt,nt,et,ot,rt,it,st,at,ut,ct,lt,ht,pt,ft,_t,dt,vt,yt,mt,gt,$t=Math.imul,bt=n.$_$.s9,wt=n.$_$.r4,xt=n.$_$.pa,kt=n.$_$.h9,jt=n.$_$.t,Ct=n.$_$.nc,zt=n.$_$.da,St=n.$_$.w1,qt=n.$_$.od,Ot=n.$_$.pd,Pt=n.$_$.m4,Mt=n.$_$.k2,At=n.$_$.ed,Et=n.$_$.qd,It=n.$_$.h8,Dt=e.$_$.n,Tt=e.$_$.i,Bt=n.$_$.p8,Lt=n.$_$.o8,Nt=n.$_$.q8,Ft=n.$_$.t8,Rt=n.$_$.ba,Ht=n.$_$.j9,Ut=n.$_$.e1,Vt=n.$_$.j,Wt=n.$_$.w,Jt=n.$_$.q9,Kt=n.$_$.fc,Gt=n.$_$.k6,Yt=n.$_$.a8,Xt=n.$_$.r7,Zt=n.$_$.cc,Qt=n.$_$.s,tn=n.$_$.sd,nn=n.$_$.d8,en=n.$_$.la,on=n.$_$.t1,rn=n.$_$.kd,sn=n.$_$.p6,an=n.$_$.i9,un=n.$_$.ya,cn=n.$_$.o9,ln=n.$_$.t9,hn=n.$_$.o5,pn=n.$_$.fd,fn=n.$_$.z,_n=n.$_$.j7,dn=e.$_$.k,vn=e.$_$.e,yn=e.$_$.f,mn=n.$_$.rd,gn=n.$_$.s8,$n=n.$_$.r8,bn=n.$_$.p9,wn=n.$_$.y4,xn=n.$_$.q5,kn=n.$_$.u8,jn=e.$_$.l,Cn=n.$_$.f8,zn=e.$_$.c,Sn=n.$_$.v,qn=n.$_$.x7,On=n.$_$.s6,Pn=e.$_$.h,Mn=n.$_$.i1,An=n.$_$.e8,En=n.$_$.ad,In=e.$_$.o,Dn=e.$_$.b,Tn=n.$_$.i,Bn=n.$_$.jc,Ln=e.$_$.g,Nn=e.$_$.m,Fn=n.$_$.c1,Rn=n.$_$.m7,Hn=(n.$_$.v8,n.$_$.w8,n.$_$.r5),Un=n.$_$.n6,Vn=n.$_$.l9,Wn=n.$_$.e4,Jn=n.$_$.c5,Kn=n.$_$.b5,Gn=n.$_$.q6,Yn=n.$_$.b7,Xn=n.$_$.o1,Zn=n.$_$.i6,Qn=n.$_$.h6,te=n.$_$.j5,ne=n.$_$.l5,ee=n.$_$.g5,oe=n.$_$.i5,re=n.$_$.z1,ie=n.$_$.f5,se=n.$_$.t4,ae=n.$_$.ra,ue=n.$_$.a9,ce=n.$_$.v4,le=n.$_$.v1,he=n.$_$.k5,pe=n.$_$.u6,fe=n.$_$.z6,_e=n.$_$.u4,de=n.$_$.h5,ve=n.$_$.w4,ye=n.$_$.s4,me=n.$_$.ua,ge=n.$_$.ta,$e=n.$_$.cd,be=n.$_$.p1,we=n.$_$.y1,xe=n.$_$.n1,ke=n.$_$.y,je=n.$_$.bc,Ce=n.$_$.x9,ze=n.$_$.x5,Se=n.$_$.e,qe=n.$_$.q7,Oe=n.$_$.ab,Pe=n.$_$.r9,Me=n.$_$.l4,Ae=n.$_$.w7,Ee=n.$_$.cb,Ie=n.$_$.z8,De=n.$_$.w5,Te=n.$_$.c2,Be=n.$_$.g,Le=n.$_$.zb,Ne=n.$_$.f2,Fe=n.$_$.j1;function Re(){}function He(){}function Ue(){return Pi()}function Ve(){}function We(t,n){this.j11_1=t,this.k11_1=n,this.l11_1=0}function Je(t){this.m11_1=t;var n;n=jt(),this.n11_1=n,this.o11_1=this.m11_1,this.p11_1=8}function Ke(t,n){this.s11_1=t,this.t11_1=n}function Ge(t){this.w11_1=t,this.x11_1=Va(),this.y11_1=null;var n;n=jt(),this.z11_1=n;var e;e=jt(),this.a12_1=e,this.b12_1=8}function Ye(){return Kr(),o}function Xe(){return Kr(),s}function Ze(){return Kr(),c}function Qe(){return Kr(),l}function to(){}function no(t,n){Kr();for(var e=t.i13();e.d();){var o=e.e(),r=o;if(null!=r&&Rt(r,xs))n.m12(o);else if(r instanceof Ti){var i=o.k13_1;null!=i&&(i.d14_1=!0,o.pt())}}t.l14()}function eo(t){var n;t.s15_1=t.o14_1.u16(),ro(t,100),t.n14_1.w16(),t.g15_1=t.n14_1.x16(),t.j15_1.a17((n=t.i15_1,Kr(),n?1:0)),t.i15_1=t.g12(t.g15_1),t.w15_1=null,t.b15_1||(t.b15_1=t.n14_1.b17());var e=function(t,n,e){return function(t,n){return Kr(),t.v2(n instanceof vi?n:Ct())}(e,n)?function(t,n){Kr();var e=t.b3(n instanceof vi?n:Ct()),o=null==e?null:e.n2();return null==o||zt(o)?o:Ct()}(e,n):n.x17_1.n2()}(0,(Ah(),_t),t.g15_1);null==e||(e.a(t.o14_1),t.n14_1.c17(e),wt()),ro(t,t.n14_1.d17())}function oo(t){so(t),t.n14_1.e17(),so(t),function(t){t.e16_1&&(Ao(t,!1,Xe(),2),t.e16_1=!1)}(t),function(t){Eo(t),t.t14_1.h()||Pr(xt("Start/end imbalance")),t.g16_1.h()||Pr(xt("Missed recording an endGroup()")),Uo(t)}(t),t.s15_1.q17(),t.c15_1=!1}function ro(t,n){return lo(t,n,null,!1,null)}function io(t,n,e){return lo(t,n,e,!1,null)}function so(t){return po(t,!1)}function ao(t,n){if(null==n){var e=t.w15_1;if(null!=e)return e}if(t.z15_1&&t.v15_1)for(var o=t.u15_1.f13_1;o>0;){if(202===t.u15_1.v17(o)&&Ht(t.u15_1.u17(o),Qe())){var r=t.u15_1.t17(o),i=null!=r&&Rt(r,_u)?r:Ct();return t.w15_1=i,i}o=t.u15_1.w17(o)}if(t.s15_1.f()>0)for(var s=n,a=null==s?t.s15_1.m17_1:s;a>0;){if(202===t.s15_1.v17(a)&&Ht(t.s15_1.u17(a),Qe())){var u,c=t.h15_1.b3(a);if(null==c){var l=t.s15_1.t17(a);u=null!=l&&Rt(l,_u)?l:Ct()}else u=c;var h=u;return t.w15_1=h,h}a=t.s15_1.w17(a)}return t.w15_1=t.g15_1,t.g15_1}function uo(t){gr(t.u15_1.g13_1),t.t15_1=new oa;var n,e=t,o=t.t15_1.z17();o.q17(),n=o,e.u15_1=n}function co(t,n,e){var o;n?t.s15_1.d18():(null!=e&&t.s15_1.b18()!==e&&Ao(t,!1,(o=e,function(t,n,e){return n.s1b(o),wt()}),2),t.s15_1.c18())}function lo(t,n,e,o,r){if(So(t),Ko(t,n,e,r),t.z15_1){t.s15_1.e18();var i=t.u15_1.e13_1;if(o)t.u15_1.h18(_r().j12_1);else if(null!=r){var s=e;t.u15_1.g18(n,null==s?_r().j12_1:s,r)}else{var a=e;t.u15_1.f18(n,null==a?_r().j12_1:a)}var u=t.u14_1;if(null==u);else{var c=new Ma(n,-1,_o(0,i),-1,0);u.o18(c,t.v14_1-u.j18_1|0),u.p18(c)}return ho(t,o,null),wt()}null==t.u14_1&&(t.s15_1.q18()===n&&Ht(e,t.s15_1.s18())?co(t,o,r):t.u14_1=new jr(t.s15_1.r18(),t.v14_1));var l,h=t.u14_1,p=null;if(null!=h){var f=h.t18(n,e);if(null!=f){h.p18(f);var _=f.y18_1;t.v14_1=h.b19(f)+h.j18_1|0;var d=h.c19(f),v=d-h.k18_1|0;h.d19(d,h.k18_1),Ro(t,_),t.s15_1.e19(_),v>0&&Po(t,(l=v,function(t,n,e){return n.t1b(l),wt()})),co(t,o,r)}else{t.s15_1.e18(),t.z15_1=!0,t.w15_1=null,function(t){t.u15_1.g13_1&&(t.u15_1=t.t15_1.z17(),t.u15_1.a18(),t.v15_1=!1,t.w15_1=null)}(t),t.u15_1.u18();var y=t.u15_1.e13_1;if(o)t.u15_1.h18(_r().j12_1);else if(null!=r){var m=e;t.u15_1.g18(n,null==m?_r().j12_1:m,r)}else{var g=e;t.u15_1.f18(n,null==g?_r().j12_1:g)}t.x15_1=t.u15_1.v18(y);var $=new Ma(n,-1,_o(0,y),-1,0);h.o18($,t.v14_1-h.j18_1|0),h.p18($),p=new jr(jt(),o?0:t.v14_1)}}ho(t,o,p)}function ho(t,n,e){t.t14_1.f19(t.u14_1),t.u14_1=e,t.w14_1.a17(t.v14_1),n&&(t.v14_1=0),t.y14_1.a17(t.x14_1),t.x14_1=0}function po(t,n){if(t.z15_1){var e=t.u15_1.f13_1;Yo(t,t.u15_1.v17(e),t.u15_1.u17(e),t.u15_1.t17(e))}else{var o=t.s15_1.m17_1;Yo(t,t.s15_1.v17(o),t.s15_1.u17(o),t.s15_1.t17(o))}var r=t.x14_1,i=t.u14_1;if(null!=i&&i.i18_1.f()>0){for(var s=i.i18_1,a=i.h19(),u=function(t){var n=ke(t.f()),e=0,o=t.f()-1|0;if(e<=o)do{var r=e;e=e+1|0;var i=t.g(r);n.a(i)}while(e<=o);return n}(a),c=Ut(),l=0,h=a.f(),p=0,f=s.f(),_=0;p0&&(Ro(t,t.s15_1.m19()),t.s15_1.a18())}for(var g=t.v14_1;!t.s15_1.n19();){var $=t.s15_1.k17_1;Fo(t);var b=t.s15_1.s17();Vo(t,g,b),zr(t.e15_1,$,t.s15_1.k17_1)}var w=t.z15_1;if(w){n&&(function(t){t.y15_1.a(t.h16_1.g19())}(t),r=1),t.s15_1.p19();var x=t.u15_1.f13_1;if(t.u15_1.q19(),!t.s15_1.s19()){var k=_o(0,x);t.u15_1.r19(),t.u15_1.q17(),function(t,n){if(t.y15_1.h())Po(t,(o=t.t15_1,r=n,function(t,n,e){return n.u18(),n.n1c(o,r.m1c(o)),n.r19(),wt()}));else{var e=Yt(t.y15_1);t.y15_1.s7(),Eo(t),Do(t),Po(t,function(t,n,e){return function(o,r,i){var s=t.z17();try{var a=0,u=n.f()-1|0;if(a<=u){do{var c=a;a=a+1|0,n.g(c)(o,s,i)}while(a<=u);wt()}}finally{s.q17()}return r.u18(),r.n1c(t,e.m1c(t)),r.r19(),wt()}}(t.t15_1,e,n))}var o,r}(t,t.x15_1),t.z15_1=!1,t.o14_1.eu()||(go(t,k,0),vo(t,k,r))}}else{n&&Bo(t),function(t){var n=t.s15_1.m17_1;t.g16_1.r1a(-1)<=n||Pr(xt("Missed recording an endGroup")),t.g16_1.r1a(-1)===n&&(t.g16_1.g19(),Ao(t,!1,Xe(),2))}(t);var j=t.s15_1.m17_1;r!==mo(t,j)&&vo(t,j,r),n&&(r=1),t.s15_1.o19(),Jo(t)}!function(t,n,e){var o=t.t14_1.g19();if(null!=o&&!e){var r=o,i=r.k18_1;r.k18_1=i+1|0}t.u14_1=o,t.v14_1=t.w14_1.g19()+n|0,t.x14_1=t.y14_1.g19()+n|0}(t,r,w)}function fo(t){var n=t.q15_1;t.q15_1=!0;for(var e=!1,o=t.s15_1.m17_1,r=o+t.s15_1.j19(o)|0,i=t.v14_1,s=t.a16_1,a=t.x14_1,u=o,c=Sr(t.e15_1,t.s15_1.k17_1,r);null!=c;){var l=c.u19_1;if(qr(t.e15_1,l),c.z19()){e=!0,t.s15_1.e19(l);var h=t.s15_1.k17_1;$o(t,u,h,o),u=h,t.v14_1=yo(t,l,h,o,i),t.a16_1=wo(t,t.s15_1.w17(h),o,s),t.w15_1=null,c.t19_1.x19(t),t.w15_1=null,t.s15_1.y19(o)}else t.p15_1.f19(c.t19_1),c.t19_1.w19(),t.p15_1.g19();c=Sr(t.e15_1,t.s15_1.k17_1,r)}if(e){$o(t,u,o,o),t.s15_1.a18();var p=mo(t,o);t.v14_1=i+p|0,t.x14_1=a+p|0}else xo(t);t.a16_1=s,t.q15_1=n}function _o(t,n){return-2-n|0}function vo(t,n,e){var o=mo(t,n);if(o!==e){var r=e-o|0,i=n,s=t.t14_1.f()-1|0;t:for(;-1!==i;){var a=mo(t,i)+r|0;go(t,i,a);var u=s;if(0<=u)n:do{var c=u;u=u+-1|0;var l=t.t14_1.a1a(c);if(null!=l&&l.i19(i,a)){s=c-1|0;break n}}while(0<=u);if(i<0)i=t.s15_1.m17_1;else{if(t.s15_1.b1a(i))break t;i=t.s15_1.w17(i)}}}}function yo(t,n,e,o,r){for(var i=t.s15_1.w17(e);i!==o&&!t.s15_1.b1a(i);)i=t.s15_1.w17(i);var s=t.s15_1.b1a(i)?0:r;if(i===e)return s;var a=i,u=s+(mo(t,i)-t.s15_1.c1a(e)|0)|0;t:for(;s=0)return i}return t.s15_1.c1a(n)}function go(t,n,e){if(mo(t,n)!==e)if(n<0){var o,r=t.a15_1;if(null==r){var i=Wt();t.a15_1=i,o=i}else o=r;o.n(n,e)}else{var s,a=t.z14_1;if(null==a){var u=new Int32Array(t.s15_1.f());Vt(u,-1,0,0,6,null),t.z14_1=u,s=u}else s=a;s[n]=e}}function $o(t,n,e,o){for(var r=t.s15_1,i=function(t,n,e,o){if(Kr(),n===e)return n;if(n===o||e===o)return o;if(t.w17(n)===e)return e;if(t.w17(e)===n)return n;if(t.w17(n)===t.w17(e))return t.w17(n);var r=n,i=e,s=Tr(t,n,o),a=Tr(t,e,o),u=s-a|0,c=0;if(c0&&s!==i;)r.b1a(s)&&Bo(t),s=r.w17(s);bo(t,e,i)}function bo(t,n,e){var o,r;n>0&&n!==e&&(bo(t,t.s15_1.w17(n),e),t.s15_1.b1a(n)&&To(t,(o=t.s15_1,r=n,o.o1a(r))))}function wo(t,n,e,o){var r;if(n===e)r=o;else{var i,s=function(t,n,e){var o;if(t.d1a(e)){var r,i=t.u17(e);if(null==i)r=null;else{var s=i;r=s instanceof Kt?i.t1_1:s instanceof xr?Ai():Jt(i)}o=null==r?0:r}else{var a,u=t.v17(e);if(207===u){var c,l=t.t17(e);a=null==(c=null==l?null:Ht(l,_r().j12_1)?u:Jt(l))?u:c}else a=u;o=a}return o}(t.s15_1,0,n);if(s===Ai())i=s;else{var a=wo(t,t.s15_1.w17(n),e,o);i=qt(a,3)^s}r=i}return r}function xo(t){t.x14_1=t.s15_1.e1a(),t.s15_1.a18()}function ko(t,n,e,o,r){t.i1a(Ai(),n),t.g12(o);var i=t.a16_1;t.a16_1=Ai(),t.z15_1&&t.u15_1.j1a(0,1,null);var s,a,u,c=!t.z15_1&&!Ht(t.s15_1.b18(),e);if(c){var l=t.h15_1,h=t.s15_1.k17_1;l.n(h,e)}if(lo(t,202,Qe(),!1,e),t.z15_1&&!r){t.v15_1=!0,t.w15_1=null;var p=t.u15_1.v18(t.u15_1.w17(t.u15_1.f13_1)),f=t.t15_1,_=Gt(),d=new mr(n,o,t.s14_1,f,p,_,function(t,n,e,o){return 0!=(2&e)&&(n=null),ao(t,n)}(t,null,2));t.n14_1.k1a(d)}else{var v=t.i15_1;t.i15_1=c,Hh(t,(s=cl(1378964644,!0,(a=n,u=o,function(t,n){var e=t;return br(e,"C2821@107760L18:Composer.kt#9igjgp"),2==(11&n)&&e.w1b()?(e.a18(),wt()):a.v1b_1(u,e,0),wt()})),function(t,n){return s.u1b(t,n)})),t.i15_1=v}so(t),t.a16_1=i,t.l1a()}function jo(t,n,e,o,r,i){var s=t.f16_1,a=t.q15_1,u=t.v14_1;try{t.f16_1=!1,t.q15_1=!0,t.v14_1=0;var c,l=0,h=r.f()-1|0;if(l<=h)do{var p=l;l=l+1|0;var f=r.g(p),_=f.l4(),d=f.m4();if(null!=d)for(var v=d.c();v.d();){var y=v.e();t.m1a(_,y)}else t.m1a(_,null)}while(l<=h);if(null==n)c=null;else{var m=o;c=n.n1a(e,null==m?-1:m,i)}var g=c;return null==g?i():g}finally{t.f16_1=s,t.q15_1=a,t.v14_1=u}}function Co(t,n,e,o,r,i,s,a){return 0!=(2&s)&&(n=null),0!=(4&s)&&(e=null),0!=(8&s)&&(o=null),0!=(16&s)&&(r=Gt()),jo(t,n,e,o,r,i)}function zo(t){t.d15_1||Pr(xt("A call to createNode(), emitNode() or useNode() expected was not expected")),t.d15_1=!1}function So(t){!t.d15_1||Pr(xt("A call to createNode(), emitNode() or useNode() expected"))}function qo(t,n){t.q14_1.a(n)}function Oo(t,n){Eo(t),Do(t),qo(t,n)}function Po(t,n){(function(t,n,e,o){0!=(2&e)&&(n=!1),Lo(t,n)})(t,!1,2),Ho(t),qo(t,n)}function Mo(t,n,e){Lo(t,n),qo(t,e)}function Ao(t,n,e,o,r){return 0!=(2&o)&&(n=!1),Mo(t,n,e)}function Eo(t){var n,e=t.b16_1;e>0&&(t.b16_1=0,qo(t,(n=e,function(t,e,o){var r=0;if(r=0||Pr(xt("Tried to seek backward")),r>0&&(qo(t,(e=r,function(t,n,o){return n.l1c(e),wt()})),t.d16_1=o)}function No(t,n){t.y15_1.a(n)}function Fo(t){(function(t,n){nr(t,n,!1,0),Jo(t)})(t,t.s15_1.k17_1),Po(t,(Kr(),r));var n=t;n.d16_1=n.d16_1+t.s15_1.q1a()|0}function Ro(t,n){var e=t.s15_1.k17_1-t.d16_1|0;t.d16_1=n-e|0}function Ho(t){if(t.s15_1.f()>0){var n=t.s15_1,e=n.m17_1;if(t.g16_1.r1a(-1)!==e){!t.e16_1&&t.f16_1&&(Ao(t,!1,(Kr(),a),2),t.e16_1=!0);var o=n.v18(e);t.g16_1.a17(e),Ao(t,!1,(r=o,function(t,n,e){return n.o1c(r),wt()}),2)}}var r}function Uo(t){t.u14_1=null,t.v14_1=0,t.x14_1=0,t.d16_1=0,t.a16_1=0,t.d15_1=!1,t.e16_1=!1,t.g16_1.s7(),t.p15_1.s7(),function(t){t.z14_1=null,t.a15_1=null}(t)}function Vo(t,n,e){if(e>0)if(n>=0||Pr(xt("Invalid remove index "+n)),t.i16_1===n){var o=t;o.l16_1=o.l16_1+e|0}else Jo(t),t.i16_1=n,t.l16_1=e}function Wo(t,n,e,o){if(o>0)if(t.l16_1>0&&t.j16_1===(n-t.l16_1|0)&&t.k16_1===(e-t.l16_1|0)){var r=t;r.l16_1=r.l16_1+o|0}else Jo(t),t.j16_1=n,t.k16_1=e,t.l16_1=o}function Jo(t){var n,e,o=t.l16_1;if(t.l16_1=0,o>0)if(t.i16_1>=0){var r=t.i16_1;t.i16_1=-1,Oo(t,(n=r,e=o,function(t,o,r){return t.h11(n,e),wt()}))}else{var i=t.j16_1;t.j16_1=-1;var s=t.k16_1;t.k16_1=-1,Oo(t,function(t,n,e){return function(o,r,i){return o.i11(t,n,e),wt()}}(i,s,o))}}function Ko(t,n,e,o){null==e?null==o||207!==n||Ht(o,_r().j12_1)?Go(t,n):Go(t,Jt(o)):Go(t,e instanceof Kt?e.t1_1:Jt(e))}function Go(t,n){var e,o=t,r=t.a16_1;e=qt(r,3),o.a16_1=e^n}function Yo(t,n,e,o){null==e?null==o||207!==n||Ht(o,_r().j12_1)?Xo(t,n):Xo(t,Jt(o)):Xo(t,e instanceof Kt?e.t1_1:Jt(e))}function Xo(t,n){var e,o=t,r=t.a16_1^n;e=Ot(r,3),o.a16_1=e}function Zo(t,n,e){!t.q15_1||Pr(xt("Reentrant composition is not supported"));t:{var o=Rh().s1a("Compose:recompose");try{t.n15_1=Hl(),t.o15_1=t.n15_1.y1a(),t.h15_1.s7();var r=0,i=n.b1b_1;if(r1&&(_=new Qo(lr),Xt(d,_)),t.v14_1=0;var v=!1;t.q15_1=!0;try{eo(t);var y=t.d1b();y!==e&&null!=e&&t.f1a(null==e||zt(e)?e:Ct()),function(t,n,e){bi();var o=gi().lu();try{var r=gi(),i=gi().lu();r.r1h((null==i?gu():i).a(tn(t,n))),e()}finally{gi().r1h(o)}}((m=t,function(t){var n=m,e=n.m15_1;return n.m15_1=e+1|0,wt()}),function(t){return function(n){var e=t,o=e.m15_1;return e.m15_1=o-1|0,wt()}}(t),function(t,n,e){return function(){return null!=t?(io(n,200,Ze()),Hh(n,t),so(n),wt()):n.c15_1&&null!=e&&!Ht(e,_r().j12_1)?(io(n,200,Ze()),Hh(n,null!=e&&"function"==typeof e?e:Ct()),so(n),wt()):(n.p1c(),wt()),wt()}}(e,t,y)),oo(t),v=!0,wt()}finally{t.q15_1=!1,t.e15_1.s7(),v||function(t){Uo(t),t.t14_1.s7(),t.w14_1.s7(),t.y14_1.s7(),t.f15_1.s7(),t.j15_1.s7(),t.h15_1.s7(),t.s15_1.q17(),t.a16_1=0,t.m15_1=0,t.d15_1=!1,t.q15_1=!1,t.c15_1=!1}(t)}break t}finally{Rh().e1b(o)}}var m}function Qo(t){this.f1b_1=t}function tr(t,n,e){for(;!t.g1b(e);)t.a18(),t.b1a(t.f13_1)&&n.e11(),t.q19()}function nr(t,n,e,o){var r;if(t.s15_1.o1b(n)){var i=t.s15_1.u17(n),s=i instanceof xr?i:Ct(),a=t.s15_1.m1b(n,0),u=t.s15_1.v18(n),c=n+t.s15_1.j19(n)|0,l=function(t,n,e){Kr();var o=jt(),r=Ir(t,n);t:for(;r0&&Vo(t,o,$),y=0}else y=t.s15_1.c1a(n);r=y}else if(t.s15_1.l1b(n)){for(var b=n+t.s15_1.j19(n)|0,w=n+1|0,x=0;w=0&&!t.b1a(e);)e=t.w17(e);var o=0;for(e=e+1|0;e0?new We(e,t._v):e,s=0,a=n.f()-1|0;if(s<=a){do{var u=s;s=s+1|0,n.g(u)(i,o,r)}while(s<=a);wt()}return wt()}}function ir(t,n){return function(e,o,r){var i=t._v,s=0,a=n.f()-1|0;if(s<=a){do{var u=s;s=s+1|0;var c=n.g(u);Rt(e,Ve)||Ct(),e.g11(i+u|0,c),e.f11(i+u|0,c)}while(s<=a);wt()}return wt()}}function sr(t,n,e){return function(o,r,i){var s,a=t.n14_1.f1c(n);null==a?Pr("Could not resolve state for movable content"):s=a;var u=s,c=r.i1c(1,u.g1c_1,1);if(!c.h()){var l=e.z1b_1,h=l instanceof ai?l:Ct(),p=0,f=c.f()-1|0;if(p<=f){do{var _=p;p=p+1|0;var d=c.g(_),v=r.j1c(d,0),y=v instanceof Ti?v:null;null==y||y.k1c(h)}while(p<=f);wt()}}return wt()}}function ar(t,n){return function(){return ko(t,n.x1b_1,n.d1c_1,n.y1b_1,!0),wt()}}function ur(t,n){return function(e,o,r){var i=t._v>0?new We(e,t._v):e,s=0,a=n.f()-1|0;if(s<=a){do{var u=s;s=s+1|0,n.g(u)(i,o,r)}while(s<=a);wt()}return wt()}}function cr(t,n,e){return Rt(t,Ve)||Ct(),tr(n,t,0),n.q19(),wt()}function lr(t,n){var e,o=t.u19_1;return e=n.u19_1,nn(o,e)}function hr(t,n,e,o,r,i,s){this.m14_1=t,this.n14_1=n,this.o14_1=e,this.p14_1=o,this.q14_1=r,this.r14_1=i,this.s14_1=s,this.t14_1=new Ha,this.u14_1=null,this.v14_1=0,this.w14_1=new Ra,this.x14_1=0,this.y14_1=new Ra,this.z14_1=null,this.a15_1=null,this.b15_1=!1,this.c15_1=!1,this.d15_1=!1;var a;a=jt(),this.e15_1=a,this.f15_1=new Ra,this.g15_1=mu(),this.h15_1=Wt(),this.i15_1=!1,this.j15_1=new Ra,this.k15_1=!1,this.l15_1=-1,this.m15_1=0,this.n15_1=Hl(),this.o15_1=0,this.p15_1=new Ha,this.q15_1=!1,this.r15_1=!1;var u,c=this.o14_1.u16();c.q17(),u=c,this.s15_1=u,this.t15_1=new oa;var l,h=this.t15_1.z17();h.q17(),l=h,this.u15_1=l,this.v15_1=!1,this.w15_1=null;var p,f,_=this.t15_1.u16();try{f=_.v18(0)}finally{_.q17()}p=f,this.x15_1=p;var d;d=jt(),this.y15_1=d,this.z15_1=!1,this.a16_1=0,this.b16_1=0,this.c16_1=new Ha,this.d16_1=0,this.e16_1=!1,this.f16_1=!0,this.g16_1=new Ra,this.h16_1=new Ha,this.i16_1=-1,this.j16_1=-1,this.k16_1=-1,this.l16_1=0}function pr(){}function fr(){h=this,this.j12_1=new pr}function _r(){return null==h&&new fr,h}function dr(){}function vr(){if(v)return wt();v=!0,p=new yr("IGNORED",0),f=new yr("SCHEDULED",1),_=new yr("DEFERRED",2),d=new yr("IMMINENT",3)}function yr(t,n){Kt.call(this,t,n)}function mr(t,n,e,o,r,i,s){this.x1b_1=t,this.y1b_1=n,this.z1b_1=e,this.a1c_1=o,this.b1c_1=r,this.c1c_1=i,this.d1c_1=s,this.e1c_1=8}function gr(t){return Kr(),void(t||Pr(xt("Check failed")))}function $r(t){this.g1c_1=t,this.h1c_1=8}function br(t,n){Kr(),t.u1d(n)}function wr(){}function xr(){}function kr(t){return function(){var n,e=(Kr(),Wt()),o=0,r=t.i18_1.f();if(o=0))throw on(xt("Invalid start index"));var e;e=jt(),this.l18_1=e;var o,r=0,i=Wt(),s=0,a=this.i18_1.f();if(s=0?t.n4(e):null}function Or(t,n){Kr();var e=jt(),o=t.u16();try{Nr(o,e,t.i1b(n)),wt()}finally{o.q17()}return e}function Pr(t){throw Kr(),St(xt("Compose Runtime internal error. Unexpected or incorrect use of the Compose internal runtime API ("+t+"). Please report to Google or use https://goo.gle/compose-feedback"))}function Mr(t,n,e){this.o1e_1=t,this.p1e_1=n,this.q1e_1=e}function Ar(t,n,e){Kr();var o,r=t.b3(n);if(null==r){var i=Ut();t.n(n,i),o=i}else o=r;return o.a(e)}function Er(t,n){Kr();var e,o=t.b3(n),r=null==o?null:sn(o);return null==r?e=null:(function(t,n,e){Kr();var o,r=t.b3(n);null==r?o=null:(r.kf(e),r.h()&&(t.pg(n),wt()),o=wt())}(t,n,r),e=r),e}function Ir(t,n){Kr();var e=Dr(t,n);return e<0?0|-(e+1|0):e}function Dr(t,n){Kr();for(var e=0,o=t.f()-1|0;e<=o;){var r=(e+o|0)>>>1|0,i=t.g(r),s=an(i.u19_1,n);if(s<0)e=r+1|0;else{if(!(s>0))return r;o=r-1|0}}return 0|-(e+1|0)}function Tr(t,n,e){Kr();for(var o=0,r=n;r>0&&r!==e;)r=t.w17(r),o=o+1|0;return o}function Br(t){this.f1f_1=t}function Lr(t){this.g1f_1=t}function Nr(t,n,e){if(t.b1a(e))n.a(t.o1a(e));else for(var o=e+1|0,r=e+t.j19(e)|0;o=0)for(var u=ru(s,a).c();u.d();)si(t,e,o,u.e())}}if(e&&!t.x13_1.h()){var c=t.w13_1,l=0,h=0,p=c.q1f_1;if(h0){if(l!==f){var z=c.n1f_1[l];c.n1f_1[l]=_,c.n1f_1[f]=z}l=l+1|0}}while(h0){if(A!==D){var K=M.n1f_1[A];M.n1f_1[A]=T,M.n1f_1[D]=K}A=A+1|0}}while(E0){if(e!==i){var y=n.n1f_1[e];n.n1f_1[e]=s,n.n1f_1[i]=y}e=e+1|0}}while(o=0)for(var r=ru(e,o).c();r.d();){var i=r.e();i.m1f(n).equals(Jr())&&t.b14_1.t1f(n,i)}}function ei(t,n){var e=new ii(t.u13_1);try{if(n.h())return wt();t:{var o=Rh().s1a("Compose:applyChanges");try{t.r13_1.b11();var r=t.v13_1.z17();try{var i=t.r13_1,s=0,a=n.f()-1|0;if(s<=a)do{var u=s;s=s+1|0,n.g(u)(i,r,e)}while(s<=a);n.s7(),wt()}finally{r.q17()}t.r13_1.c11(),wt();break t}finally{Rh().e1b(o)}}if(e.y1f(),e.z1f(),t.d14_1)t:{var c=Rh().s1a("Compose:unobserve");try{t.d14_1=!1;var l=t.w13_1,h=0,p=0,f=l.q1f_1;if(p0){if(h!==_){var C=l.n1f_1[h];l.n1f_1[h]=d,l.n1f_1[_]=C}h=h+1|0}}while(p=0)for(var s=ru(r,i).c();s.d();){var a=s.e();if(!t.b14_1.j1g(o,a)&&!a.m1f(o).equals(Wr()))if(a.s1f()&&!n)t.x13_1.a(a);else{var u,c=e._v;if(null==c){var l=fn();e._v=l,u=l}else u=c;u.a(a)}}}function ai(t,n,e){this.q13_1=t,this.r13_1=n,this.s13_1=new Eh(null),this.t13_1=Va(),this.u13_1=fn(),this.v13_1=new oa,this.w13_1=new au,this.x13_1=fn(),this.y13_1=new au;var o;o=jt(),this.z13_1=o;var r;r=jt(),this.a14_1=r,this.b14_1=new au,this.c14_1=Ya(0,1,null),this.d14_1=!1,this.e14_1=null,this.f14_1=0;var i,s=new hr(this.r13_1,this.q13_1,this.v13_1,this.u13_1,this.z13_1,this.a14_1,this);this.q13_1.k1g(s),i=s,this.g14_1=i,this.h14_1=e;var a=this.q13_1;this.i14_1=a instanceof gs,this.j14_1=!1,this.k14_1=(null==g&&new hi,g).l1g_1}function ui(){}function ci(t,n){var e=t;return br(e,"C:Composition.kt#9igjgp"),2==(11&n)&&e.w1b()&&e.a18(),wt()}function li(t,n){var e=t;return br(e,"C:Composition.kt#9igjgp"),2==(11&n)&&e.w1b()&&e.a18(),wt()}function hi(){var t;g=this,this.l1g_1=(t=cl(954879418,!1,ci),function(n,e){return t.u1b(n,e)}),this.m1g_1=function(t){return function(n,e){return t.u1b(n,e)}}(cl(1918065384,!1,li))}function pi(){}function fi(){$||($=!0,m=new Object)}function _i(){return w||(w=!0,b=mu()),b}function di(){this.v16_1=0}function vi(t){this.x17_1=new Ja(t)}function yi(t){vi.call(this,t)}function mi(t){yi.call(this,t)}function gi(){return bi(),x}function $i(){}function bi(){k||(k=!0,x=new Ih,new Ih)}function wi(t){this.s1h_1=t}function xi(){this.t1h_1=0}function ki(){}function ji(t,n){this.v1h_1=n,this.w1h_1=dn(t),this.x1h_1=null}function Ci(t){this.y1h_1=t,this.z1h_1=null}function zi(){C||(C=!0,j=new xi)}function Si(t,n){var e;if(n instanceof Kt)e=n.t1_1;else{var o=null==n?null:Jt(n);e=null==o?0:o}return e}function qi(t,n){this.a1i_1=t,this.b1i_1=n}function Oi(){z=this}function Pi(){return null==z&&new Oi,z}function Mi(){}function Ai(){return S}function Ei(t){this.c1i_1=t}function Ii(t,n){t.j13_1=n?32|t.j13_1:-33&t.j13_1}function Di(t,n){t.j13_1=n?16|t.j13_1:-17&t.j13_1}function Ti(t){this.j13_1=0,this.k13_1=t,this.l13_1=null,this.m13_1=null,this.n13_1=0,this.o13_1=null,this.p13_1=null}function Bi(){}function Li(){if(I)return wt();I=!0,q=new Ji("ShutDown",0),O=new Ji("ShuttingDown",1),P=new Ji("Inactive",2),M=new Ji("InactivePendingWork",3),A=new Ji("Idle",4),E=new Ji("PendingWork",5)}function Ni(t,n){t:for(;;){var e=t.i1i_1.n2(),o=e.a(n);if(e===o||t.i1i_1.ly(e,o))break t}}function Fi(t,n){t:for(;;){var e=t.i1i_1.n2(),o=e.kf(n);if(e===o||t.i1i_1.ly(e,o))break t}}function Ri(t,n){t.s7(),n.o1i_1;var e=n.v1i_1,o=0,r=e.f()-1|0;if(o<=r)do{var i=o;o=o+1|0;var s=e.g(i);t.a(s)}while(o<=r);n.v1i_1.s7(),wt()}function Hi(t,n,e,o,r,i){return function(s){var a;if(t.l1i_1.c12())t:{var u=Rh().s1a("Recomposer:animation");try{t.l1i_1.d12(s),Ml().e1j(),wt();break t}finally{Rh().e1b(u)}}t:{var c=Rh().s1a("Recomposer:recompose");try{t.o1i_1,Xi(t);var l=t.t1i_1,h=0,p=l.f()-1|0;if(h<=p)do{var f=h;h=h+1|0;var _=l.g(f);n.a(_)}while(h<=p);t.t1i_1.s7(),wt();var d=new ou,v=new ou;n:for(;!n.h()||!e.h();){try{var y=0,m=n.f()-1|0;if(y<=m)do{var g=y;y=y+1|0;var $=n.g(g);v.x1e($);var b=ns(t,$,d);null==b||(o.a(b),wt())}while(y<=m)}finally{n.s7()}if(d.p1a()){t.o1i_1;var w=t.r1i_1,x=0,k=w.f()-1|0;if(x<=k){do{var j=x;x=x+1|0;var C=w.g(j);!v.m3(C)&&C.q1g(d)&&n.a(C)}while(x<=k);wt()}}if(n.h())for(Ri(e,t);!e.h();){var z=es(t,e,d);xn(r,z),Ri(e,t)}}if(!o.h()){var S=t,q=S.k1i_1;S.k1i_1=q.dn();try{xn(i,o);var O=0,P=o.f()-1|0;if(O<=P)do{var M=O;O=O+1|0,o.g(M).z1g()}while(O<=P)}finally{o.s7()}}if(!r.h())try{xn(i,r);for(var A=r.c();A.d();)A.e().a1h()}finally{r.s7()}if(!i.h())try{for(var E=i.c();E.d();)E.e().c1d()}finally{i.s7()}(function(t){var n;if(t.o1i_1,t.w1i_1.h())n=Gt();else{var e=On(t.w1i_1.d3());t.w1i_1.s7();var o=Qt(e.f()),r=0,i=e.f()-1|0;if(r<=i)do{var s=r;r=r+1|0;var a=e.g(s),u=tn(a,t.x1i_1.b3(a));o.a(u)}while(r<=i);var c=o;t.x1i_1.s7(),n=c}var l=n,h=0,p=l.f()-1|0;if(h<=p)do{var f=h;h=h+1|0;var _=l.g(f),d=_.l4(),v=_.m4();null!=v&&d.z1b_1.y1g(v)}while(h<=p)})(t),t.o1i_1,a=Ki(t);break t}finally{Rh().e1b(c)}}return a}}function Ui(t){return function(n,e){var o;t.o1i_1,t.b1j_1.n2().x1(vs())>=0?(t.s1i_1.a(n),o=Ki(t)):o=null;var r,i=o;return null==i||(Pt(),r=Mt(wt()),i.z4(r),wt()),wt()}}function Vi(t,n,e){this.n1j_1=t,this.o1j_1=n,kn.call(this,e)}function Wi(t,n,e){var o=new Vi(t,n,e),r=function(t,n){return o.q1j(t,n)};return r.$arity=1,r}function Ji(t,n){Kt.call(this,t,n)}function Ki(t){if(t.b1j_1.n2().x1(_s())<=0){t.r1i_1.s7(),t.s1i_1.s7(),t.t1i_1.s7(),t.u1i_1.s7(),t.v1i_1.s7();var n=t.y1i_1;return null==n||n.kr(null,1,null),t.y1i_1=null,null}var e;null==t.p1i_1?(t.s1i_1.s7(),t.t1i_1.s7(),e=t.l1i_1.c12()?(Li(),M):ds()):e=!!(!!(!t.t1i_1.h()||!t.s1i_1.h())||!t.u1i_1.h())||!t.v1i_1.h()||t.z1i_1>0||t.l1i_1.c12()?ys():vs();var o,r=e;if(t.b1j_1.ky(r),r.equals(ys())){var i=t.y1i_1;t.y1i_1=null,o=i}else o=null;return o}function Gi(t){var n;if(t.o1i_1,t.a1j_1){var e;t:{for(var o=t.m1i_1.jt().c();o.d();)if(o.e().yo()){e=!0;break t}e=!1}n=e}else n=!0;return n}function Yi(t){this.s1j_1=t}function Xi(t){if(!t.s1i_1.h()){var n=t.s1i_1,e=0,o=n.f()-1|0;if(e<=o)do{var r=e;e=e+1|0;var i=n.g(r),s=t.r1i_1,a=0,u=s.f()-1|0;if(a<=u)do{var c=a;a=a+1|0,s.g(c).o1g(i)}while(a<=u)}while(e<=o);if(t.s1i_1.s7(),null!=Ki(t))throw St("called outside of runRecomposeAndApplyChanges")}}function Zi(t,n){t.o1i_1;var e=t.q1i_1;if(null!=e)throw e;if(t.b1j_1.n2().x1(_s())<=0)throw St("Recomposer shut down");if(null!=t.p1i_1)throw St("Recomposer already running");t.p1i_1=n,Ki(t)}function Qi(t){return t.o1i_1,!(t.s1i_1.h()&&t.t1i_1.h())||t.l1i_1.c12()}function ts(t,n,e){var o,r,i=function(t){var n=t.z7(Pi());if(null==n)throw St(xt("A MonotonicFrameClock is not available in this CoroutineContext. Callers should supply an appropriate MonotonicFrameClock using withContext."));return n}(e.b5());return zn(t.l1i_1,(o=new ps(t,n,i,null),r=function(t,n){return o.q1j(t,n)},r.$arity=1,r),e)}function ns(t,n,e){if(n.d1g()||n.n1g())return null;var o,r,i;t:{var s=Ml().f1k(os(0,n),rs(0,n,e));try{var a;n:{var u=s.g1k();try{!0===(null==e?null:e.p1a())&&n.w1d((r=e,i=n,function(){for(var t=r.c();t.d();){var n=t.e();i.v1g(n)}return wt()})),a=n.w1g();break n}finally{s.h1k(u)}}o=a;break t}finally{is(0,s)}}return o?n:null}function es(t,n,e){var o=Sn(n.f()),r=0,i=n.f()-1|0;if(r<=i)do{var s=r;r=r+1|0;var a,u=n.g(s),c=u.z1b_1,l=o.b3(c);if(null==l){var h=jt();o.n(c,h),a=h}else a=l;a.a(u)}while(r<=i);for(var p=o,f=p.v().c();f.d();){var _=f.e(),d=_.l2(),v=_.n2();gr(!d.d1g());t:{var y=Ml().f1k(os(0,d),rs(0,d,e));try{n:{var m=y.g1k();try{t.o1i_1;var g=Qt(v.f()),$=0,b=v.f()-1|0;if($<=b)do{var w=$;$=$+1|0;var x=v.g(w),k=tn(x,bs(t.w1i_1,x.x1b_1));g.a(k)}while($<=b);var j=g;d.x1g(j),wt();break n}finally{y.h1k(m)}}break t}finally{is(0,y)}}}return qn(p.c3())}function os(t,n){return e=n,function(t){return e.r1g(t),wt()};var e}function rs(t,n,e){return o=n,r=e,function(t){return o.v1g(t),null==r||r.x1e(t),wt()};var o,r}function is(t,n){try{if(n.v1k()instanceof Bl)throw St(xt("Unsupported concurrent change during composition. A state object was modified by composition as well as being modified outside composition."))}finally{n.ks()}}function ss(t){return!t.t1i_1.h()||t.l1i_1.c12()}function as(){D=this,this.i1i_1=Pn(Zc().z1o())}function us(){return null==D&&new as,D}function cs(t,n,e){t.s7(),n.o1i_1;for(var o=n.v1i_1.c();o.d();){var r=o.e();Ht(r.z1b_1,e)&&(t.a(r),o.o4())}wt()}function ls(t){return function(n){var e=Mn("Recomposer effect job completed",n),o=null,r=(t.o1i_1,t.p1i_1);null!=r?(t.b1j_1.ky(_s()),t.a1j_1?null!=t.y1i_1&&(o=t.y1i_1):r.dq(e),t.y1i_1=null,r.yp(function(t,n){return function(e){t.o1i_1;var o,r,i=t,s=n;return null==s?o=null:(null==(r=null==e||e instanceof An?null:e)||(En(s,r),wt()),o=s),i.q1i_1=o,t.b1j_1.ky(fs()),wt(),wt()}}(t,n))):(t.q1i_1=e,t.b1j_1.ky(fs()),wt());var i,s=o;return null==s||(Pt(),i=Mt(wt()),s.z4(i),wt()),wt()}}function hs(t,n){this.e1l_1=t,kn.call(this,n)}function ps(t,n,e,o){this.x1l_1=t,this.y1l_1=n,this.z1l_1=e,kn.call(this,o)}function fs(){return Li(),q}function _s(){return Li(),O}function ds(){return Li(),P}function vs(){return Li(),A}function ys(){return Li(),E}function ms(t,n){kn.call(this,n),this.b1k_1=t}function gs(t){var n;us(),di.call(this),this.k1i_1=new Bn(0,0),this.l1i_1=new Ge((n=this,function(){n.o1i_1;var t=Ki(n);if(n.b1j_1.n2().x1(_s())<=0)throw Mn("Recomposer shutdown; frame clock awaiter will never resume",n.q1i_1);var e,o=t;return null==o||(Pt(),e=Mt(wt()),o.z4(e),wt()),wt()}));var e,o=Nn(t.z7(Ln()));o.yp(ls(this)),e=o,this.m1i_1=e,this.n1i_1=t.g8(this.l1i_1).g8(this.m1i_1),this.o1i_1=Va(),this.p1i_1=null,this.q1i_1=null;var r;r=jt(),this.r1i_1=r;var i;i=jt(),this.s1i_1=i;var s;s=jt(),this.t1i_1=s;var a;a=jt(),this.u1i_1=a;var u;u=jt(),this.v1i_1=u;var c;c=Fn(),this.w1i_1=c;var l;l=Fn(),this.x1i_1=l,this.y1i_1=null,this.z1i_1=0,this.a1j_1=!1,this.b1j_1=Pn(ds()),this.c1j_1=new Yi(this),this.d1j_1=8}function $s(){}function bs(t,n){ws();var e,o=t.b3(n);if(null==o)e=null;else{var r=Rn(o);o.h()&&t.pg(n),e=r}return e}function ws(){T||(T=!0,new Object,new Object)}function xs(){}function ks(t,n,e,o,r,i){var s=n.j19(e),a=e+s|0,u=Vs(n,e),c=Vs(n,a),l=c-u|0,h=function(t,n){return n>=0&&wa(t.o12_1,Rs(t,n))}(n,e);Ds(o,s),Ts(o,l,o.e13_1),n.r12_1=0;U&&(n.c18(),n.l1c(H-n.e13_1|0),n.c18()),n.l1c(e-n.e13_1|0);var V=n.l14();U&&(n.a18(),n.q19(),n.a18(),n.q19()),F=V}else{var W=Bs(n,e,s);Ls(n,u,l,e-1|0),F=W}!F||Pr(xt("Unexpectedly removed anchors"));var J=o;return J.a13_1=J.a13_1+(ia(p,f)?1:sa(p,f))|0,i&&(o.e13_1=f+s|0,o.u12_1=g+l|0),h&&qs(o,b),R}function js(t,n,e,o,r){var i=t.z12_1>0;t.d13_1.a17(t.a13_1);var s,a=t;if(i){Ds(t,1);var u=t.e13_1,c=Rs(t,u),l=!(e===_r().j12_1),h=!(o||r===_r().j12_1);(function(t,n,e,o,r,i,s,a){var u=o?1073741824:0,c=r?536870912:0,l=i?268435456:0,h=$t(n,5);t[h+0|0]=e,t[h+1|0]=u|c|l,t[h+2|0]=s,t[h+3|0]=0,t[h+4|0]=a})(t.o12_1,c,n,o,l,h,t.f13_1,t.u12_1),t.v12_1=t.u12_1;var p=((o?1:0)+(l?1:0)|0)+(h?1:0)|0;if(p>0){Ts(t,p,u);var f=t.p12_1,_=t.u12_1;if(o){var d=_;_=d+1|0,f[d]=r}if(l){var v=_;_=v+1|0,f[v]=e}if(h){var y=_;_=y+1|0,f[y]=r}t.u12_1=_}t.a13_1=0;var m=u+1|0;t.f13_1=u,t.e13_1=m,s=m}else{var g=t.f13_1;t.b13_1.a17(g),Ps(t);var $=t.e13_1,b=Rs(t,$);Ht(r,_r().j12_1)||(o?t.k1m(r):t.s1b(r)),t.u12_1=Js(t.o12_1,t,b),t.v12_1=Ws(t.o12_1,t,Rs(t,t.e13_1+1|0)),t.a13_1=sa(t.o12_1,b),t.f13_1=$,t.e13_1=$+1|0,s=$+la(t.o12_1,b)|0}a.t12_1=s}function Cs(){B=this}function zs(){return null==B&&new Cs,B}function Ss(t){var n=t.h13_1;if(null==n);else{for(;n.p1a();)Os(t,n.m1m(),n);wt()}}function qs(t,n){if(n>=0){var e,o=t.h13_1;if(null==o){var r=function(t,n,e,o){var r;return 0!=(1&n)&&(r=jt(),wt(),t=r),_a.call(o,t),o}(null,1,0,Object.create(_a.prototype));t.h13_1=r,e=r}else e=o;e.n1m(n)}}function Os(t,n,e){var o,r,i,s=Rs(t,n),a=function(t,n){for(var e=n+1|0,o=n+t.j19(n)|0;e=0&&e.n1m(u)}}function Ps(t){t.c13_1.a17((Fs(t)-t.s12_1|0)-t.t12_1|0)}function Ms(t){var n=(Fs(t)-t.s12_1|0)-t.c13_1.g19()|0;return t.t12_1=n,n}function As(t,n,e,o){for(var r=Qs(t,n,t.r12_1),i=o;i=0))break t;c.c1b_1=0|-(r-l|0),u=u+1|0}}}(t,o,n),e>0){var r=t.o12_1,i=$t(n,5),s=$t(e,5),a=$t(o,5);n=0||Pr(xt("Unexpected anchor value, expected a positive anchor")),ya(t.o12_1,h,0|-(1+(l-_|0)|0)),(h=h+1|0)===f&&(h=h+t.s12_1|0)}else for(var d=Rs(t,i),v=Rs(t,c);d0){var e=t.e13_1;Es(t,e);var o=t.r12_1,r=t.s12_1,i=t.o12_1.length/5|0,s=i-r|0;if(r=o&&(t.t12_1=$+n|0),t.r12_1=o+n|0,t.s12_1=r-n|0;var b=Xs(0,s>0?Vs(t,e+n|0):0,t.y12_1=o&&(t.y12_1=j+n|0)}}function Ts(t,n,e){if(n>0){Is(t,t.u12_1,e);var o=t.w12_1,r=t.x12_1;if(r=o&&(t.v12_1=g+n|0),t.w12_1=o+n|0,t.x12_1=r-n|0}}function Bs(t,n,e){var o;if(e>0){var r=!1,i=t.q12_1;Es(t,n),!i.h()&&(r=function(t,n,e){var o=t.s12_1,r=n+e|0,i=Fs(t)-o|0,s=ma(t.q12_1,n+e|0,i),a=s>=t.q12_1.f()?s-1|0:s,u=0,c=a+1|0;t:for(;a>=0;){var l=t.q12_1.g(a),h=t.i1b(l);if(!(h>=n))break t;hn){var u,c=t,l=a-e|0;u=Math.max(n,l),c.y12_1=u}if(t.t12_1>=t.r12_1){var h=t;h.t12_1=h.t12_1-e|0}(function(t,n){return n>=0&&ba(t.o12_1,Rs(t,n))})(t,t.f13_1)&&qs(t,t.f13_1),o=r}else o=!1;return o}function Ls(t,n,e,o){if(e>0){var r=t.x12_1;Is(t,n+e|0,o),t.w12_1=n,t.x12_1=r+e|0,Un(t.p12_1,null,n,n+e|0);var i=t.v12_1;i>=n&&(t.v12_1=i-e|0)}}function Ns(t,n,e){var o=Rs(t,n);o=Fs(n)?n.p12_1.length-n.x12_1|0:Zs(0,ga(t,e),n.x12_1,n.p12_1.length)}function Js(t,n,e){return e>=Fs(n)?n.p12_1.length-n.x12_1|0:Zs(0,xa(t,e),n.x12_1,n.p12_1.length)}function Ks(t,n,e,o){ya(t,e,Xs(0,o,n.w12_1,n.x12_1,n.p12_1.length))}function Gs(t,n,e){return Ws(t,n,e)}function Ys(t,n,e){return Ws(t,n,e)+ka(function(t,n){return t[$t(n,5)+1|0]}(t,e)>>29)|0}function Xs(t,n,e,o,r){return n>e?0|-(1+((r-o|0)-n|0)|0):n}function Zs(t,n,e,o){return n<0?1+((o-e|0)+n|0)|0:n}function Qs(t,n,e){return n-2?n:(t.f()+n|0)- -2|0}function na(t,n,e){this.p1m_1=n,this.q1m_1=e,this.o1m_1=t}function ea(t){zs(),this.n12_1=t,this.o12_1=this.n12_1.m16_1,this.p12_1=this.n12_1.o16_1,this.q12_1=this.n12_1.t16_1,this.r12_1=this.n12_1.n16_1,this.s12_1=(this.o12_1.length/5|0)-this.n12_1.n16_1|0,this.t12_1=this.n12_1.n16_1,this.u12_1=0,this.v12_1=0,this.w12_1=this.n12_1.p16_1,this.x12_1=this.p12_1.length-this.n12_1.p16_1|0,this.y12_1=this.n12_1.n16_1,this.z12_1=0,this.a13_1=0,this.b13_1=new Ra,this.c13_1=new Ra,this.d13_1=new Ra,this.e13_1=0,this.f13_1=-1,this.g13_1=!1,this.h13_1=null}function oa(){this.m16_1=new Int32Array(0),this.n16_1=0;for(var t=0,n=Vn(Array(0),null);t<0;){null,n[t]=null,t=t+1|0}this.o16_1=n,this.p16_1=0,this.q16_1=0,this.r16_1=!1,this.s16_1=0;var e;e=jt(),this.t16_1=e}function ra(t){this.c1b_1=t}function ia(t,n){return!(0==(1073741824&t[$t(n,5)+1|0]))}function sa(t,n){return 67108863&t[$t(n,5)+1|0]}function aa(t,n){return t[$t(n,5)]}function ua(t,n){return!(0==(536870912&t[$t(n,5)+1|0]))}function ca(t,n){var e=$t(n,5);return t[e+4|0]+ka(t[e+1|0]>>30)|0}function la(t,n){return t[$t(n,5)+3|0]}function ha(t,n){return!(0==(268435456&t[$t(n,5)+1|0]))}function pa(t,n,e){if(!(e>=0))throw on(xt("Failed requirement."));t[$t(n,5)+3|0]=e}function fa(t,n,e){if(!(e>=0&&e<67108863))throw on(xt("Failed requirement."));t[$t(n,5)+1|0]=-67108864&t[$t(n,5)+1|0]|e}function _a(t){this.l1m_1=t}function da(t,n,e){t[$t(n,5)+2|0]=e}function va(t,n){return t[$t(n,5)+2|0]}function ya(t,n,e){t[$t(n,5)+4|0]=e}function ma(t,n,e){var o=Aa(t,n,e);return o>=0?o:0|-(o+1|0)}function ga(t,n){return t[$t(n,5)+4|0]}function $a(t,n){return!(0==(134217728&t[$t(n,5)+1|0]))}function ba(t,n){return!(0==(67108864&t[$t(n,5)+1|0]))}function wa(t,n){return!(0==(201326592&t[$t(n,5)+1|0]))}function xa(t,n){var e=$t(n,5);return t[e+4|0]+ka(t[e+1|0]>>28)|0}function ka(t){switch(t){case 0:return 0;case 1:case 2:case 4:return 1;case 3:case 5:case 6:return 2;default:return 3}}function ja(t,n,e){return ia(t,e)?n.i17_1[function(t,n){return t[$t(n,5)+4|0]}(t,e)]:_r().j12_1}function Ca(t,n,e){return ha(t,e)?n.i17_1[function(t,n){var e=$t(n,5);return e>=t.length?t.length:t[e+4|0]+ka(t[e+1|0]>>29)|0}(t,e)]:_r().j12_1}function za(t,n,e){return ua(t,e)?n.i17_1[ca(t,e)]:null}function Sa(t){this.f17_1=t,this.g17_1=this.f17_1.m16_1,this.h17_1=this.f17_1.n16_1,this.i17_1=this.f17_1.o16_1,this.j17_1=this.f17_1.p16_1,this.k17_1=0,this.l17_1=this.h17_1,this.m17_1=-1,this.n17_1=0,this.o17_1=0,this.p17_1=0}function qa(t){if(t.g1n_1.s16_1!==t.j1n_1)throw Xn()}function Oa(t,n){this.k1n_1=t,this.l1n_1=n}function Pa(t,n,e){if(this.g1n_1=t,this.h1n_1=e,this.i1n_1=n,this.j1n_1=this.g1n_1.s16_1,this.g1n_1.r16_1)throw Xn()}function Ma(t,n,e,o,r){this.w18_1=t,this.x18_1=n,this.y18_1=e,this.z18_1=o,this.a19_1=r}function Aa(t,n,e){return function(t,n,e){for(var o=0,r=t.f()-1|0;o<=r;){var i=(o+r|0)>>>1|0,s=t.g(i).c1b_1,a=an(s<0?e+s|0:s,n);if(a<0)o=i+1|0;else{if(!(a>0))return i;r=i-1|0}}return 0|-(o+1|0)}(t,n,e)}function Ea(){}function Ia(){var t=(null==L&&new Da,L);return Rt(t,Ea)?t:Ct()}function Da(){L=this}function Ta(){}function Ba(){}function La(t,n){return function(t,n){return Nh(),new Fa(t,n)}(t,n)}function Na(t){Fl.call(this),this.t1n_1=t}function Fa(t,n){this.b1o_1=n,this.c1o_1=new Na(t)}function Ra(){this.y16_1=new Int32Array(10),this.z16_1=0}function Ha(){this.r17_1=jt()}function Ua(){}function Va(){return new Ua}function Wa(t){return cn("current",1,un,(function(t){return Wa(t)}),null),t.y17_1.n2()}function Ja(t){this.y17_1=rn(t)}function Ka(t,n,e,o){var r=n-1|0;if(0<=r)t:do{var i=r;r=r+-1|0;var s=t.e1i_1[i];if(s===e)return i;if(Dh(s)!==o)break t}while(0<=r);var a=n+1|0,u=t.d1i_1;if(a>>1|0,s=t.z1a_1[i],a=Dh(s);if(ae))return n===s?i:Za(t,i,n,e);r=i-1|0}}return 0|-(o+1|0)}function Za(t,n,e,o){var r=n-1|0;if(0<=r)t:do{var i=r;r=r+-1|0;var s=t.z1a_1[i];if(s===e)return i;if(Dh(s)!==o)break t}while(0<=r);var a=n+1|0,u=t.b1b_1;if(a>>1|0,s=t.g(i),a=Dh(s);if(ar))return s===n?i:nu(t,i,n,r);o=i-1|0}}return 0|-(e+1|0)}function nu(t,n,e,o){var r=n-1|0;if(0<=r)t:do{var i=r;r=r+-1|0;var s=t.w1e_1[i];if(s===e)return i;if(Dh(s)!==o)break t}while(0<=r);var a=n+1|0,u=t.v1e_1;if(a>>1|0,s=pn(t.o1f_1[t.n1f_1[i]]),a=Dh(s);if(ae))return n===s?i:su(t,i,n,e);r=i-1|0}}return 0|-(o+1|0)}function su(t,n,e,o){var r=n-1|0;if(0<=r)t:do{var i,s=r;if(r=r+-1|0,(i=pn(t.o1f_1[t.n1f_1[s]]))===e)return s;if(Dh(i)!==o)break t}while(0<=r);var a=n+1|0,u=t.q1f_1;if(a>hc()>1<ac()))throw r="Trie-based persistent vector should have at least "+(ac()+1|0)+" elements, got "+this.k1p_1,on(xt(r));this.k1p_1,lc(this.k1p_1),ae(this.j1p_1.length,ac())}function Au(t){return t.v1p_1<=ac()?0:lc(t.v1p_1)}function Eu(t){return n=t.v1p_1,n<=ac()?n:n-lc(n)|0;var n}function Iu(t,n){if(null==n)return Tu(t);if(function(t,n){return n.length===_c()&&n[_c()-1|0]===t.s1p_1}(t,n))return n;var e=Tu(t),o=ae(n.length,ac());return Hn(n,e,0,0,o),e}function Du(t,n){var e=_c(),o=Vn(Array(e),null);return o[0]=n,o[_c()-1|0]=t.s1p_1,o}function Tu(t){var n=_c(),e=Vn(Array(n),null);return e[_c()-1|0]=t.s1p_1,e}function Bu(t,n,e,o){var r;if(t.v1p_1>>hc()>1<=0))throw St(xt("Check failed."));if(0===o)return r.e();var i=Iu(t,n),s=pc(e,o),a=s,u=i[s];for(i[a]=Fu(t,null==u||ln(u)?u:Ct(),e,o-hc()|0,r);(s=s+1|0)0){var o=(t.d1q_1-1|0)-(e/hc()|0)|0;ec(t,t.a1p_1,o+1|0)}}function rc(t){var n=t.a1p_1&cc(),e=t.e1q_1[t.d1q_1-1|0];return(null!=e&&ln(e)?e:Ct())[n]}function ic(t,n,e,o){$u.call(this,n,e),this.d1q_1=o;var r,i=this.d1q_1;r=Vn(Array(i),null),this.e1q_1=r,this.f1q_1=n===e,this.e1q_1[0]=t,ec(this,n-(this.f1q_1?1:0)|0,1)}function sc(){return tc().n1q_1}function ac(){return F}function uc(t){var n=Vn(Array(32),null);return n[0]=t,n}function cc(){return R}function lc(t){return-32&(t-1|0)}function hc(){return H}function pc(t,n){return t>>n&31}function fc(t){this.m1p_1=t}function _c(){return U}function dc(){V=this,this.w1o_1=new yc(Vc().p1q_1,0)}function vc(){return null==V&&new dc,V}function yc(t,n){vc(),_e.call(this),this.s1q_1=t,this.t1q_1=n}function mc(t){for(var n=0,e=Vn(Array(8),null);n<8;){var o,r=n;o=new wc,e[r]=o,n=n+1|0}Cc.call(this,t,e)}function gc(t){for(var n=0,e=Vn(Array(8),null);n<8;){var o,r=n;o=new xc,e[r]=o,n=n+1|0}Cc.call(this,t,e)}function $c(t){for(var n=0,e=Vn(Array(8),null);n<8;){var o,r=n;o=new Sc,e[r]=o,n=n+1|0}Cc.call(this,t,e)}function bc(){this.h1r_1=Vc().p1q_1.x1q_1,this.i1r_1=0,this.j1r_1=0}function wc(){bc.call(this)}function xc(){bc.call(this)}function kc(t,n){if(t.e1r_1[n].m1r())return n;if(t.e1r_1[n].n1r()){var e=t.e1r_1[n].o1r();return 6===n?t.e1r_1[n+1|0].l1r(e.x1q_1,e.x1q_1.length):t.e1r_1[n+1|0].l1r(e.x1q_1,$t(Jc(),e.w1r())),kc(t,n+1|0)}return-1}function jc(t){if(t.e1r_1[t.f1r_1].m1r())return wt();var n=t.f1r_1;if(0<=n)do{var e=n;n=n+-1|0;var o=kc(t,e);if(-1===o&&t.e1r_1[e].n1r()&&(t.e1r_1[e].p1r(),o=kc(t,e)),-1!==o)return t.f1r_1=o,wt();e>0&&t.e1r_1[e-1|0].p1r(),t.e1r_1[e].l1r(Vc().p1q_1.x1q_1,0)}while(0<=n);t.g1r_1=!1}function Cc(t,n){this.e1r_1=n,this.f1r_1=0,this.g1r_1=!0,this.e1r_1[0].l1r(t.x1q_1,$t(Jc(),t.w1r())),this.f1r_1=0,jc(this)}function zc(t,n){this.x1r_1=t,this.y1r_1=n}function Sc(){bc.call(this)}function qc(t){ve.call(this),this.c1s_1=t}function Oc(t){ye.call(this),this.d1s_1=t}function Pc(t){ve.call(this),this.e1s_1=t}function Mc(t,n,e){return function(t,n,e,o){return Wc.call(o,t,n,e,null),o}(t,n,e,Object.create(Wc.prototype))}function Ac(t,n){this.b1r_1=t,this.c1r_1=n}function Ec(t){return new Ac(t,1)}function Ic(t){return new Ac(t,0)}function Dc(t,n){return!(0==(t.v1q_1&n))}function Tc(t,n){var e=t.x1q_1[n];return null==e||zt(e)?e:Ct()}function Bc(t,n){var e=t.x1q_1[n+1|0];return null==e||zt(e)?e:Ct()}function Lc(t,n,e,o){var r=o.x1q_1;if(2===r.length&&0===o.v1q_1){if(1===t.x1q_1.length)return o.u1q_1=t.v1q_1,o;var i=t.j1s(e),s=function(t,n,e,o,r){var i=Qn(t,t.length+1|0),s=n+2|0,a=n+1|0,u=t.length;return Hn(i,i,s,a,u),Hn(i,i,e+2|0,e,n),i[e]=o,i[e+1|0]=r,i}(t.x1q_1,n,i,r[0],r[1]);return Mc(t.u1q_1^e,t.v1q_1^e,s)}var a=Qn(t.x1q_1,t.x1q_1.length);return a[n]=o,Mc(t.u1q_1,t.v1q_1,a)}function Nc(t,n,e){if(1===t.x1q_1.length)return null;var o=function(t,n){var e=t.length-1|0,o=Vn(Array(e),null);Hn(t,o,0,0,n);var r=n+1|0,i=t.length;return Hn(t,o,n,r,i),o}(t.x1q_1,n);return Mc(t.u1q_1,t.v1q_1^e,o)}function Fc(t,n,e,o,r,i,s,a){var u=Tc(t,n),c=null==u?null:Jt(u),l=Rc(t,null==c?0:c,u,Bc(t,n),o,r,i,s+5|0,a),h=t.k1s(e)+1|0;return function(t,n,e,o){var r=e-2|0,i=1+(t.length-2|0)|0,s=Vn(Array(i),null);Hn(t,s,0,0,n),Hn(t,s,n,n+2|0,e),s[r]=o;var a=r+1|0,u=t.length;return Hn(t,s,a,e,u),s}(t.x1q_1,n,h,l)}function Rc(t,n,e,o,r,i,s,a,u){if(a>30)return new Wc(0,0,[e,o,i,s],u);var c=Gc(n,a),l=Gc(r,a);return c!==l?new Wc(1<>n&31}function Yc(t,n){var e=t.length-2|0,o=Vn(Array(e),null);Hn(t,o,0,0,n);var r=n+2|0,i=t.length;return Hn(t,o,n,r,i),o}function Xc(){K=this,this.y1o_1=new Qc(il(),il(),vc().x1o())}function Zc(){return null==K&&new Xc,K}function Qc(t,n,e){Zc(),ve.call(this),this.n1s_1=t,this.o1s_1=n,this.p1s_1=e}function tl(){return t=Object.create(el.prototype),el.call(t,il(),il()),t;var t}function nl(t){return function(t,n){return el.call(n,t,il()),n}(t,Object.create(el.prototype))}function el(t,n){this.q1s_1=t,this.r1s_1=n}function ol(t,n){this.w1s_1=t,this.x1s_1=n,this.y1s_1=0}function rl(){G=this}function il(){return null==G&&new rl,G}function sl(){Y=this}function al(){return null==Y&&new sl,Y}function ul(){}function cl(t,n,e){var o=new Wh(t,n);return o.e1t(e),o}function ll(t,n){return null==t||!!(t instanceof Ti&&n instanceof Ti)&&(!(t.a1g()&&!Ht(t,n))||Ht(t.l13_1,n.l13_1))}function hl(t){return fl(2,t)}function pl(t){return fl(1,t)}function fl(t,n){return t<<($t(n%10|0,3)+1|0)}function _l(t,n,e,o,r,i,s){return function(t,n,e,o,r,i,s,a){n.b(o);var u=0,c=0,l=t.f()-1|0;if(c<=l)t:do{var h=c;c=c+1|0;var p=t.g(h);if((u=u+1|0)>1&&n.b(e),!(i<0||u<=i))break t;dl(n,p,a)}while(c<=l);return i>=0&&u>i&&n.b(s),n.b(r),n}(t,xe(),n,e,o,r,i,s).toString()}function dl(t,n,e){null!=e?t.b(e(n)):null==n||Ce(n)?t.b(n):n instanceof je?t.r9(n.l1_1):t.b(mn(n))}function vl(){return hh(),X}function yl(){return hh(),Z}function ml(){return hh(),Q}function gl(t){hh(),tt=t}function $l(){return hh(),tt}function bl(t){hh(),nt=t}function wl(){return hh(),nt}function xl(){return hh(),et}function kl(){return hh(),ot}function jl(){return hh(),rt}function Cl(){return hh(),it}function zl(){return hh(),st}function Sl(){}function ql(t){this.f1t_1=t}function Ol(t){this.g1t_1=t}function Pl(){at=this}function Ml(){return null==at&&new Pl,at}function Al(t,n){Ml(),this.t1a_1=n,this.u1a_1=t,this.v1a_1=!1,this.w1a_1=0!==t?function(t,n){hh();var e=n.s1v(t);return ml(),xl().y1v(e)}(t,this.k1t()):-1,this.x1a_1=8}function El(){}function Il(t,n,e,o){Al.call(this,t,n),this.n1k_1=e,this.o1k_1=o,this.p1k_1=null,this.q1k_1=vh().h1u_1,this.r1k_1=new Int32Array(0),this.s1k_1=1,this.t1k_1=!1,this.u1k_1=8}function Dl(){ut=this,Ll.call(this),this.y1u_1=0}function Tl(){return null==ut&&new Dl,ut}function Bl(t){Ll.call(this),this.a1v_1=t,this.b1v_1=8}function Ll(){this.c1v_1=0}function Nl(t,n){ml();var e,o,r,i=jl().h()?null:Yt(jl());if(null==i)o=null;else{var s=qe(i);o=null==s?(r=i,function(t){var n=0,e=r.f()-1|0;if(n<=e){do{var o=n;n=n+1|0,r.g(o)(t)}while(n<=e);wt()}return wt()}):s}e=o,Il.call(this,t,n,null,e)}function Fl(){this.w1n_1=Hl().y1a(),this.x1n_1=null,this.y1n_1=8}function Rl(t){hh(),xl().z1v(t)}function Hl(){hh();var t=yl().lu();return null==t?Cl().lu():t}function Ul(t){hh();var n=Cl().lu(),e=(ml(),Ql(n,t)),o=n.j1t();if(null!=o){ml();var r=Yt(kl()),i=0,s=r.f()-1|0;if(i<=s)do{var a=i;i=i+1|0,r.g(a)(o,n)}while(i<=s)}return e}function Vl(){return hh(),Ul(lh)}function Wl(t){t.o1w_1||(t.o1w_1=!0,t.n1w_1.m1u(t))}function Jl(t,n,e,o,r){Il.call(this,t,n,e,o),this.n1w_1=r,this.o1w_1=!1,this.n1w_1.n1u(this)}function Kl(t,n,e){hh();var o=t,r=n;if(r0;){var i=((r+1|0)>>1)-1|0;if(!(e[i]>o))break t;fh(t,i,r),r=i}}function fh(t,n,e){var o=t.u1v_1,r=t.v1v_1,i=t.w1v_1,s=o[n];o[n]=o[e],o[e]=s,s=r[n],r[n]=r[e],r[e]=s,i[r[n]]=n,i[r[e]]=e}function _h(){this.t1v_1=0,this.u1v_1=new Int32Array(16),this.v1v_1=new Int32Array(16);for(var t=0,n=new Int32Array(16);t<16;){var e;e=t+1|0,n[t]=e,t=t+1|0}this.w1v_1=n,this.x1v_1=0}function dh(){lt=this,this.h1u_1=new mh(new Bn(0,0),new Bn(0,0),0,null)}function vh(){return null==lt&&new dh,lt}function yh(t,n){this.z1w_1=t,kn.call(this,n)}function mh(t,n,e,o){vh(),this.y1t_1=t,this.z1t_1=n,this.a1u_1=e,this.b1u_1=o}function gh(t,n){for(var e=0,o=t.length-1|0;e<=o;){var r=(e+o|0)>>>1|0,i=t[r];if(n>i)e=r+1|0;else{if(!(n0||Pr(xt("OffsetApplier up called with no corresponding down"));var t=this.l11_1;this.l11_1=t-1|0,this.j11_1.e11()},We.prototype.f11=function(t,n){this.j11_1.f11(t+(0===this.l11_1?this.k11_1:0)|0,n)},We.prototype.g11=function(t,n){this.j11_1.g11(t+(0===this.l11_1?this.k11_1:0)|0,n)},We.prototype.h11=function(t,n){this.j11_1.h11(t+(0===this.l11_1?this.k11_1:0)|0,n)},We.prototype.i11=function(t,n,e){var o=0===this.l11_1?this.k11_1:0;this.j11_1.i11(t+o|0,n+o|0,e)},We.$metadata$=kt("OffsetApplier",[Ve]),Je.prototype.q11=function(t){this.o11_1=t},Je.prototype.a11=function(){return this.o11_1},Je.prototype.r11=function(t){this.n11_1.a(this.a11()),this.q11(t)},Je.prototype.d11=function(t){return this.r11(null==t||zt(t)?t:Ct())},Je.prototype.e11=function(){if(this.n11_1.h())throw St(xt("Check failed."));this.q11(this.n11_1.n4(this.n11_1.f()-1|0))},Je.$metadata$=kt("AbstractApplier",[Ve]),Ke.prototype.u11=function(){return this.s11_1},Ke.prototype.yy=function(){return this.t11_1},Ke.prototype.v11=function(t){var n,e;try{var o;Pt(),o=this.s11_1(t),e=Mt(o)}catch(t){if(!(t instanceof Error))throw t;Pt(),e=Mt(At(t))}n=e,this.t11_1.z4(n)},Ke.$metadata$=kt("FrameAwaiter"),Ge.prototype.c12=function(){return this.x11_1,!this.z11_1.h()},Ge.prototype.d12=function(t){this.x11_1;var n=this.z11_1;this.z11_1=this.a12_1,this.a12_1=n;var e=0,o=n.f();if(e0},hr.prototype.u1c=function(){return this.t15_1},hr.prototype.v1c=function(){return this.n14_1.w1c()},hr.prototype.f12=function(t){return lo(this,t,null,!1,null)},hr.prototype.k12=function(){return so(this)},hr.prototype.x1c=function(){return lo(this,-127,null,!1,null)},hr.prototype.y1c=function(){so(this);var t=this.z1c();null!=t&&t.h19()&&t.a1d(!0)},hr.prototype.b1d=function(){var t;if(this.i15_1)t=!0;else{var n=this.z1c();t=!0===(null==n?null:n.b1d())}return t},hr.prototype.i1a=function(t,n){return lo(this,t,n,!1,null)},hr.prototype.l1a=function(){return so(this)},hr.prototype.c1d=function(){this.h15_1.s7()},hr.prototype.d1d=function(){return this.z15_1},hr.prototype.w1b=function(){var t;if(this.z15_1||this.k15_1||this.i15_1)t=!1;else{var n=this.z1c();t=!1===(null==n?null:n.e1d())}return!!t&&!this.c15_1},hr.prototype.d18=function(){lo(this,this.z15_1?125:this.k15_1?125===this.s15_1.q18()?126:125:126===this.s15_1.q18()?126:125,null,!0,null),this.d15_1=!0},hr.prototype.f1d=function(t){zo(this),this.z15_1||Pr(xt("createNode() can only be called when inserting"));var n,e,o,r,i,s=this.w14_1.g1d(),a=this.u15_1.v18(this.u15_1.f13_1),u=this.x14_1;this.x14_1=u+1|0,No(this,(o=t,r=a,i=s,function(t,n,e){var s=o();return n.p1b(r,s),(Rt(t,Ve)?t:Ct()).f11(i,s),t.d11(s),wt()})),n=this,e=function(t,n){return function(e,o,r){var i=o.q1b(t);return e.e11(),(Rt(e,Ve)?e:Ct()).g11(n,i),wt()}}(a,s),n.h16_1.f19(e)},hr.prototype.h1d=function(){var t;zo(this),!this.z15_1||Pr(xt("useNode() called while inserting")),To(this,(t=this.s15_1).o1a(t.m17_1))},hr.prototype.i1d=function(){return po(this,!0)},hr.prototype.j1d=function(t,n){var e,o,r=(e=n,o=t,function(t,n,r){var i=t.a11();return e(null==i||zt(i)?i:Ct(),o),wt()});this.z15_1?No(this,r):Oo(this,r)},hr.prototype.d1b=function(){var t;if(this.z15_1)So(this),t=_r().j12_1;else{var n=this.s15_1.e();t=this.k15_1?_r().j12_1:n}return t},hr.prototype.g12=function(t){var n;return Ht(this.d1b(),t)?n=!1:(this.f1a(t),n=!0),n},hr.prototype.k1d=function(t){var n=this.d1b();return(null==n||"boolean"!=typeof n||t!==n)&&(this.f1a(t),!0)},hr.prototype.f1a=function(t){if(this.z15_1)this.u15_1.m1d(t),null!=t&&Rt(t,xs)&&(qo(this,(e=t,function(t,n,o){return o.l12(e),wt()})),this.p14_1.a(t));else{var n=this.s15_1.l1d()-1|0;null!=t&&Rt(t,xs)&&this.p14_1.a(t),Mo(this,!0,function(t,n){return function(e,o,r){null!=t&&Rt(t,xs)&&(r.l12(t),wt());var i=o.r1b(n,t);if(null!=i&&Rt(i,xs))r.m12(i),wt();else if(i instanceof Ti){var s=i.k13_1;null!=s&&(i.pt(),s.d14_1=!0,wt())}return wt()}}(t,n))}var e},hr.prototype.z1c=function(){var t=this.p15_1;return 0===this.m15_1&&t.p1a()?t.g1d():null},hr.prototype.m1a=function(t,n){var e=t.l13_1;if(null==e)return!1;var o=e.m1c(this.o14_1);return!!(this.q15_1&&o>=this.s15_1.k17_1)&&(function(t,n,e,o){Kr();var r=Dr(t,n);if(r<0){var i,s=0|-(r+1|0),a=o;if(null==a)i=null;else{var u=new ou;u.x1e(a),i=u}t.zf(s,new Cr(e,n,i))}else if(null==o)t.g(r).v19_1=null;else{var c=t.g(r).v19_1;null==c||c.x1e(o)}}(this.e15_1,o,t,n),!0)},hr.prototype.p1c=function(){if(this.e15_1.h())(i=r=this).x14_1=i.x14_1+r.s15_1.s17()|0;else{var t=this.s15_1,n=t.q18(),e=t.s18(),o=t.b18();Ko(this,n,e,o),co(this,t.j1b(),null),fo(this),t.o19(),Yo(this,n,e,o)}var r,i},hr.prototype.a18=function(){0===this.x14_1||Pr(xt("No nodes can be emitted before calling skipAndEndGroup"));var t=this.z1c();null==t||t.n1d(),this.e15_1.h()?xo(this):fo(this)},hr.prototype.o1d=function(t){return lo(this,t,null,!1,null),function(t){if(t.z15_1){var n=t.s14_1,e=new Ti(n instanceof ai?n:Ct());t.p15_1.f19(e),t.f1a(e),e.h1a(t.o15_1)}else{var o,r=qr(t.e15_1,t.s15_1.m17_1),i=t.s15_1.e();if(Ht(i,_r().j12_1)){var s=t.s14_1,a=new Ti(s instanceof ai?s:Ct());t.f1a(a),o=a}else o=i instanceof Ti?i:Ct();var u=o;u.g1a(!(null==r)),t.p15_1.f19(u),u.h1a(t.o15_1)}}(this),this},hr.prototype.p1d=function(){var t=this.p15_1.p1a()?this.p15_1.g19():null;null==t||t.g1a(!1);var n,e,o,r=null==t?null:t.q1d(this.o15_1);if(null==r||(qo(this,(e=r,o=this,function(t,n,r){return e(o.s14_1),wt()})),wt()),null==t||t.s1d()||!t.h19()&&!this.b15_1)n=null;else{if(null==t.l13_1){var i,s=t;i=this.z15_1?this.u15_1.v18(this.u15_1.f13_1):this.s15_1.v18(this.s15_1.m17_1),s.l13_1=i}t.r1d(!1),n=t}var a=n;return po(this,!1),a},hr.prototype.t1d=function(t){t:{var n=this.r14_1,e=this.q14_1;try{this.q14_1=n,qo(this,(Kr(),u));var o=0,r=t.f()-1|0;if(o<=r)do{var s=o;o=o+1|0;var a=t.g(s),c=a.l4(),l=a.m4(),h=c.b1c_1,p=c.a1c_1.i1b(h),f={_v:0};if(Eo(this),qo(this,er(f,h)),null==l){var _=c.a1c_1;Ht(_,this.t15_1)&&uo(this);var d=c.a1c_1.u16();try{d.e19(p),this.d16_1=p;var v=jt();Co(this,null,null,null,null,or(this,v,d,c),30),!v.h()&&(qo(this,rr(f,v)),wt())}finally{d.q17()}}else{var y=Or(l.a1c_1,l.b1c_1);if(!y.h()){qo(this,ir(f,y));var m=this.o14_1.i1b(h);go(this,m,mo(this,m)+y.f()|0)}qo(this,sr(this,l,c));var g=l.a1c_1,$=g.u16();try{n:{var b=this.s15_1,w=this.z14_1;this.z14_1=null;try{this.s15_1=$;var x=g.i1b(l.b1c_1);$.e19(x),this.d16_1=x;var k,j=jt();e:{var C=this.q14_1;try{this.q14_1=j;var z=$.k17_1;jo(this,l.z1b_1,c.z1b_1,z,l.c1c_1,ar(this,c));break e}finally{this.q14_1=C}}!j.h()&&(qo(this,ur(f,j)),k=wt()),k;break n}finally{this.s15_1=b,this.z14_1=w}}}finally{$.q17()}}qo(this,(Kr(),i))}while(o<=r);qo(this,cr),this.d16_1=0,wt();break t}finally{this.q14_1=e}}Uo(this)},hr.prototype.u1d=function(t){this.z15_1&&this.u15_1.v1d(t)},hr.prototype.w1d=function(t){!this.q15_1||Pr(xt("Preparing a composition while composing is not supported")),this.q15_1=!0;try{t()}finally{this.q15_1=!1}},hr.prototype.x1d=function(t){return this.q14_1.h()||Pr(xt("Expected applyChanges() to have been called")),!(!t.p1a()&&this.e15_1.h()&&!this.c15_1||(Zo(this,t,null),this.q14_1.h()))},hr.prototype.y1d=function(){return this.z1c()},hr.prototype.h12=function(){return this.d1b()},hr.prototype.i12=function(t){return this.f1a(t)},hr.prototype.z1d=function(t){var n=t instanceof Ti?t:null;null==n||n.a1e(!0)},hr.prototype.b1e=function(t,n){this.q14_1.h()||Pr(xt("Expected applyChanges() to have been called")),Zo(this,t,n)},hr.$metadata$=kt("ComposerImpl",[dr]),pr.prototype.toString=function(){return"Empty"},pr.$metadata$=kt(),fr.prototype.c1e=function(){return this.j12_1},fr.$metadata$=en("Companion"),dr.$metadata$=bt("Composer"),yr.$metadata$=kt("InvalidationResult",void 0,void 0,void 0,void 0,Kt.prototype),mr.prototype.d1e=function(){return this.x1b_1},mr.prototype.e1e=function(){return this.y1b_1},mr.prototype.f1e=function(){return this.z1b_1},mr.prototype.g1e=function(){return this.a1c_1},mr.prototype.h1e=function(){return this.b1c_1},mr.prototype.i1e=function(){return this.c1c_1},mr.prototype.j1e=function(){return this.d1c_1},mr.$metadata$=kt("MovableContentStateReference"),$r.prototype.g1e=function(){return this.g1c_1},$r.$metadata$=kt("MovableContentState"),wr.$metadata$=bt("ScopeUpdateScope"),xr.$metadata$=kt("MovableContent"),jr.prototype.l1e=function(){return this.i18_1},jr.prototype.m1e=function(){return this.j18_1},jr.prototype.n1e=function(){return cn("keyMap",1,un,(function(t){return t.n1e()}),null),this.n18_1.n2()},jr.prototype.t18=function(t,n){var e=null!=n?new qi(t,n):t;return Er(this.n1e(),e)},jr.prototype.p18=function(t){return this.l18_1.a(t)},jr.prototype.h19=function(){return this.l18_1},jr.prototype.d19=function(t,n){if(t>n)for(var e=this.m18_1.d3().c();e.d();){var o=e.e(),r=o.o1e_1;r===t?o.o1e_1=n:n<=r&&rt)for(var i=this.m18_1.d3().c();i.d();){var s=i.e(),a=s.o1e_1;a===t?s.o1e_1=n:(t+1|0)<=a&&an)for(var o=this.m18_1.d3().c();o.d();){var r=o.e(),i=r.p1e_1;t<=i&&i<(t+e|0)?r.p1e_1=n+(i-t|0)|0:n<=i&&it)for(var s=this.m18_1.d3().c();s.d();){var a=s.e(),u=a.p1e_1;t<=u&&u<(t+e|0)?a.p1e_1=n+(u-t|0)|0:(t+1|0)<=u&&u=o&&!Ht(s,e)){var a=s.p1e_1+r|0;a>=0&&(s.p1e_1=a)}}return!0}return!1},jr.prototype.c19=function(t){var n=this.m18_1.b3(t.y18_1),e=null==n?null:n.o1e_1;return null==e?-1:e},jr.prototype.b19=function(t){var n=this.m18_1.b3(t.y18_1),e=null==n?null:n.p1e_1;return null==e?-1:e},jr.prototype.k19=function(t){var n=this.m18_1.b3(t.y18_1),e=null==n?null:n.q1e_1;return null==e?t.z18_1:e},jr.$metadata$=kt("Pending"),Cr.prototype.r1e=function(){return this.t19_1},Cr.prototype.s1e=function(){return this.u19_1},Cr.prototype.t1e=function(){return this.v19_1},Cr.prototype.z19=function(){return this.t19_1.u1e(this.v19_1)},Cr.$metadata$=kt("Invalidation"),Mr.prototype.y1e=function(t){this.o1e_1=t},Mr.prototype.z1e=function(){return this.o1e_1},Mr.prototype.a1f=function(t){this.p1e_1=t},Mr.prototype.b1f=function(){return this.p1e_1},Mr.$metadata$=kt("GroupInfo"),Br.prototype.toString=function(){return"Updater(composer="+this.f1f_1+")"},Br.prototype.hashCode=function(){return t=this.f1f_1,Jt(t);var t},Br.prototype.equals=function(t){return function(t,n){if(!(n instanceof Br))return!1;var e=n instanceof Br?n.f1f_1:Ct();return!!Ht(t,e)}(this.f1f_1,t)},Br.$metadata$=kt("Updater"),Lr.prototype.toString=function(){return"SkippableUpdater(composer="+this.g1f_1+")"},Lr.prototype.hashCode=function(){return t=this.g1f_1,Jt(t);var t},Lr.prototype.equals=function(t){return function(t,n){if(!(n instanceof Lr))return!1;var e=n instanceof Lr?n.g1f_1:Ct();return!!Ht(t,e)}(this.g1f_1,t)},Lr.$metadata$=kt("SkippableUpdater"),ii.prototype.l12=function(t){var n=this.w1f_1.j2(t);n>=0?(this.w1f_1.n4(n),this.u1f_1.kf(t)):this.v1f_1.a(t)},ii.prototype.m12=function(t){var n=this.v1f_1.j2(t);n>=0?(this.v1f_1.n4(n),this.u1f_1.kf(t)):this.w1f_1.a(t)},ii.prototype.y1f=function(){if(!this.w1f_1.h())t:{var t=Rh().s1a("Compose:onForgotten");try{var n=this.w1f_1.f()-1|0;if(0<=n){do{var e=n;n=n+-1|0;var o=this.w1f_1.g(e);this.u1f_1.i(o)||o.g1g()}while(0<=n);wt()}break t}finally{Rh().e1b(t)}}if(!this.v1f_1.h())t:{var r=Rh().s1a("Compose:onRemembered");try{var i=this.v1f_1,s=0,a=i.f()-1|0;if(s<=a){do{var u=s;s=s+1|0;var c=i.g(u);this.u1f_1.kf(c),c.h1g()}while(s<=a);wt()}break t}finally{Rh().e1b(r)}}},ii.prototype.z1f=function(){if(!this.x1f_1.h())t:{var t=Rh().s1a("Compose:sideeffects");try{var n=this.x1f_1,e=0,o=n.f()-1|0;if(e<=o)do{var r=e;e=e+1|0,n.g(r)()}while(e<=o);this.x1f_1.s7(),wt();break t}finally{Rh().e1b(t)}}},ii.prototype.b1g=function(){if(!this.u1f_1.h())t:{var t=Rh().s1a("Compose:abandons");try{for(var n=this.u1f_1.c();n.d();){var e=n.e();n.o4(),e.i1g()}wt();break t}finally{Rh().e1b(t)}}},ii.$metadata$=kt("RememberEventDispatcher",[to]),ai.prototype.g1e=function(){return this.v13_1},ai.prototype.d1g=function(){return this.g14_1.q15_1},ai.prototype.n1g=function(){return this.j14_1},ai.prototype.o1g=function(t){t:for(;;){var n,e=this.s13_1.lu(),o=e;if(null==o||Ht(o,Gr()))n=t;else if(null!=o&&Rt(o,hn))n=[e,t];else{if(null==o||!ln(o)){var r="corrupt pendingModifications: "+this.s13_1;throw St(xt(r))}n=_n(null!=e&&ln(e)?e:Ct(),t)}var i=n;if(this.s13_1.p1g(e,i)){null==e&&(this.t13_1,Zr(this),wt());break t}}},ai.prototype.q1g=function(t){for(var n=t.c();n.d();){var e=n.e();if(this.w13_1.r1f(e)||this.y13_1.r1f(e))return!0}return!1},ai.prototype.w1d=function(t){return this.g14_1.w1d(t)},ai.prototype.r1g=function(t){if(!this.g14_1.t1c()){var n=this.g14_1.z1c();if(null==n);else{if(n.a1e(!0),this.w13_1.t1f(t,n),Rt(t,$i)){this.y13_1.s1g(t);for(var e=t.t1g().c();e.d();){var o=e.e();this.y13_1.t1f(o,t)}}n.u1g(t),wt()}}},ai.prototype.v1g=function(t){this.t13_1,ni(this,t);var n,e=this.y13_1,o=iu(e,t);if(o>=0){for(var r=ru(e,o).c();r.d();)ni(this,r.e());n=wt()}return n},ai.prototype.w1g=function(){this.t13_1,Xr(this);var t,n=!1;try{var e=this.g14_1.x1d(ri(this));e||Zr(this),n=!0,t=e}finally{!n&&!this.u13_1.h()&&new ii(this.u13_1).b1g()}return t},ai.prototype.x1g=function(t){var n;t:{var e=0,o=t.f()-1|0;if(e<=o)do{var r=e;e=e+1|0;var i=t.g(r);if(!Ht(i.j4_1.z1b_1,this)){n=!1;break t}}while(e<=o);n=!0}gr(n);var s=!1;try{this.g14_1.t1d(t);wt();s=!0}finally{!s&&!this.u13_1.h()&&new ii(this.u13_1).b1g()}},ai.prototype.y1g=function(t){var n=new ii(this.u13_1),e=t.g1c_1.z17();try{no(e,n),wt()}finally{e.q17()}n.y1f()},ai.prototype.z1g=function(){this.t13_1,ei(this,this.z13_1),Zr(this),wt()},ai.prototype.a1h=function(){this.t13_1,!this.a14_1.h()&&(ei(this,this.a14_1),wt())},ai.prototype.c1d=function(){this.t13_1,this.g14_1.c1d(),!this.u13_1.h()&&(new ii(this.u13_1).b1g(),wt())},ai.prototype.b1h=function(){this.t13_1;for(var t=this.v13_1.o16_1,n=0,e=t.length;n=0){var r;this.e14_1=t instanceof ai?t:Ct(),this.f14_1=n;try{r=e()}finally{this.e14_1=null,this.f14_1=0}o=r}else o=e();return o},ai.prototype.d1h=function(t,n){t.e1h()&&t.r1d(!0);var e=t.l13_1;return null!=e&&this.v13_1.f1h(e)&&e.a1g()&&e.a1g()&&t.g1h()?oi(this,t,e,n):Wr()},ai.prototype.h1h=function(t,n){this.w13_1.j1g(t,n)},ai.prototype.i1h=function(t){this.w13_1.r1f(t)||this.y13_1.s1g(t)},ai.prototype.j1h=function(t){this.k14_1=t},ai.prototype.k1h=function(t){if(this.j14_1)throw St(xt("The composition is disposed"));this.j1h(t),this.q13_1.l1h(this,this.k14_1)},ai.prototype.m1h=function(t){var n=!1;try{this.t13_1,Xr(this),this.g14_1.b1e(ri(this),t),wt(),n=!0}finally{!n&&!this.u13_1.h()&&new ii(this.u13_1).b1g()}},ai.$metadata$=kt("CompositionImpl",[ui]),ui.$metadata$=bt("ControlledComposition",[pi]),hi.$metadata$=en("ComposableSingletons$CompositionKt"),pi.$metadata$=bt("Composition"),di.prototype.c17=function(t){},di.prototype.k1g=function(t){},di.prototype.x16=function(){return _i()},di.prototype.w16=function(){},di.prototype.e17=function(){},di.prototype.f1c=function(t){return null},di.$metadata$=kt("CompositionContext"),vi.$metadata$=kt("CompositionLocal"),yi.$metadata$=kt("ProvidableCompositionLocal",void 0,void 0,void 0,void 0,vi.prototype),mi.$metadata$=kt("StaticProvidableCompositionLocal",void 0,void 0,void 0,void 0,yi.prototype),$i.$metadata$=bt("DerivedState",[Ta]),wi.prototype.ks=function(){this.s1h_1()},wi.$metadata$=kt(void 0,[ki]),xi.prototype.u1h=function(t){return new wi(t)},xi.$metadata$=kt("DisposableEffectScope"),ki.$metadata$=bt("DisposableEffectResult"),ji.prototype.h1g=function(){var t=this.x1h_1;null==t||vn(t,"Old job was still running!",null,2,null),this.x1h_1=yn(this.w1h_1,null,null,this.v1h_1,3,null)},ji.prototype.g1g=function(){var t=this.x1h_1;null==t||t.eq(null,1,null),this.x1h_1=null},ji.prototype.i1g=function(){var t=this.x1h_1;null==t||t.eq(null,1,null),this.x1h_1=null},ji.$metadata$=kt("LaunchedEffectImpl",[xs]),Ci.prototype.h1g=function(){this.z1h_1=this.y1h_1((zi(),j))},Ci.prototype.g1g=function(){var t=this.z1h_1;null==t||t.ks(),this.z1h_1=null},Ci.prototype.i1g=function(){},Ci.$metadata$=kt("DisposableEffectImpl",[xs]),qi.prototype.hashCode=function(){return $t(Si(0,this.a1i_1),31)+Si(0,this.b1i_1)|0},qi.prototype.toString=function(){return"JoinedKey(left="+mn(this.a1i_1)+", right="+mn(this.b1i_1)+")"},qi.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof qi))return!1;var n=t instanceof qi?t:Ct();return!!Ht(this.a1i_1,n.a1i_1)&&!!Ht(this.b1i_1,n.b1i_1)},qi.$metadata$=kt("JoinedKey"),Oi.$metadata$=en("Key",[gn]),Mi.$metadata$=bt("MonotonicFrameClock",[$n]),Ei.prototype.toString=function(){return"OpaqueKey(key="+this.c1i_1+")"},Ei.prototype.hashCode=function(){return bn(this.c1i_1)},Ei.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof Ei))return!1;var n=t instanceof Ei?t:Ct();return this.c1i_1===n.c1i_1},Ei.$metadata$=kt("OpaqueKey"),Ti.prototype.h1e=function(){return this.l13_1},Ti.prototype.a1g=function(){var t;if(null!=this.k13_1){var n=this.l13_1,e=null==n?null:n.a1g();t=null!=e&&e}else t=!1;return t},Ti.prototype.g1h=function(){return!(null==this.m13_1)},Ti.prototype.a1e=function(t){this.j13_1=t?1|this.j13_1:-2&this.j13_1},Ti.prototype.h19=function(){return!(0==(1&this.j13_1))},Ti.prototype.a1d=function(t){this.j13_1=t?2|this.j13_1:-3&this.j13_1},Ti.prototype.e1h=function(){return!(0==(2&this.j13_1))},Ti.prototype.r1d=function(t){this.j13_1=t?4|this.j13_1:-5&this.j13_1},Ti.prototype.b1d=function(){return!(0==(4&this.j13_1))},Ti.prototype.g1a=function(t){this.j13_1=t?8|this.j13_1:-9&this.j13_1},Ti.prototype.e1d=function(){return!(0==(8&this.j13_1))},Ti.prototype.x19=function(t){var n=this.m13_1;if(null==(null==n?null:n(t,1)))throw St("Invalid restart scope")},Ti.prototype.m1f=function(t){var n=this.k13_1,e=null==n?null:n.d1h(this,t);return null==e?Wr():e},Ti.prototype.pt=function(){this.k13_1=null,this.o13_1=null,this.p13_1=null},Ti.prototype.k1c=function(t){this.k13_1=t},Ti.prototype.c1h=function(){var t=this.k13_1;null==t||t.d1h(this,null)},Ti.prototype.k1e=function(t){this.m13_1=t},Ti.prototype.s1d=function(){return!(0==(16&this.j13_1))},Ti.prototype.h1a=function(t){this.n13_1=t,Di(this,!1)},Ti.prototype.n1d=function(){Di(this,!0)},Ti.prototype.u1g=function(t){if(0!=(32&this.j13_1))return wt();var n,e=this.o13_1;if(null==e){var o=new Ga;this.o13_1=o,n=o}else n=e;if(n.h1i(t,this.n13_1),Rt(t,$i)){var r,i=this.p13_1;if(null==i){var s=Ya(0,1);this.p13_1=s,r=s}else r=i;r.e1g(t,t.p1h())}},Ti.prototype.s1f=function(){return!(null==this.p13_1)},Ti.prototype.u1e=function(t){if(null==t)return!0;var n=this.p13_1;if(null==n)return!0;var e,o=n;if(t.p1a()){var r;t:if(null!=t&&Rt(t,wn)&&t.h())r=!0;else{for(var i=t.c();i.d();){var s=i.e();if(!Rt(s,$i)||!Ht(o.n1h(s),s.p1h())){r=!1;break t}}r=!0}e=r}else e=!1;return!e},Ti.prototype.w19=function(){var t=this.k13_1;if(null==t);else{var n=this.o13_1;if(null==n);else{Ii(this,!0);try{var e=0,o=n.d1i_1;if(e0&&(this.r1i_1.i(t)||(this.r1i_1.a(t),wt())),function(t,n){var e;t.o1i_1;t:{var o=t.v1i_1,r=0,i=o.f()-1|0;if(r<=i)do{var s=r;r=r+1|0;var a=o.g(s);if(Ht(a.z1b_1,n)){e=!0;break t}}while(r<=i);e=!1}if(!e)return wt();var u=jt();for(cs(u,t,n);!u.h();)es(t,u,null),cs(u,t,n)}(this,t),t.z1g(),t.a1h(),e||Ml().j1m()},gs.$metadata$=kt("Recomposer",void 0,void 0,void 0,void 0,di.prototype),$s.$metadata$=bt("RecomposerInfo"),xs.$metadata$=bt("RememberObserver"),Cs.$metadata$=en("Companion"),na.prototype.d=function(){return this.o1m_1this.f13_1&&tthis.b13_1.r1a(0))e=n+this.j19(n)|0;else{var o=this.b13_1.s1m(n);e=o<0?n+this.j19(n)|0:(Fs(this)-this.s12_1|0)-this.c13_1.a1a(o)|0}return t>n&&t=0||Pr(xt("Cannot insert auxiliary data when not inserting"));var n=this.f13_1,e=Rs(this,n);!ha(this.o12_1,e)||Pr(xt("Group already has auxiliary data")),Ts(this,1,n);var o,r,i=Ys(this.o12_1,this,e),s=Hs(this,i);if(this.u12_1>i){var a=this.u12_1-i|0;if(!(a<3))throw St(xt("Moving more than two slot not supported"));a>1&&(this.p12_1[s+2|0]=this.p12_1[s+1|0]),this.p12_1[s+1|0]=this.p12_1[s]}o=this.o12_1,r=$t(e,5)+1|0,o[r]=268435456|o[r],this.p12_1[s]=t;var u=this.u12_1;this.u12_1=u+1|0},ea.prototype.k1m=function(t){return Ns(this,this.e13_1,t)},ea.prototype.p1b=function(t,n){return Ns(this,t.t1m(this),n)},ea.prototype.x1m=function(t){this.u12_1<=this.v12_1||Pr(xt("Writing to an invalid slot")),this.p12_1[Hs(this,this.u12_1-1|0)]=t},ea.prototype.r1b=function(t,n){var e,o=Rs(this,this.e13_1),r=Js(this.o12_1,this,o),i=Ws(this.o12_1,this,Rs(this,this.e13_1+1|0)),s=r+t|0;s>=r&&s0&&Ts(this,1,this.f13_1);var t=this.p12_1,n=this.u12_1;return this.u12_1=n+1|0,t[Hs(this,n)]},ea.prototype.j1c=function(t,n){return this.y1m(this.i1b(t),n)},ea.prototype.y1m=function(t,n){var e=Rs(this,t),o=Js(this.o12_1,this,e),r=Ws(this.o12_1,this,Rs(this,t+1|0)),i=o+n|0;if(!(o<=i&&i=0))throw on(xt("Cannot seek backwards"));if(!(this.z12_1<=0))throw St(xt("Cannot call seek() while inserting"));if(0===t)return wt();var n,e=this.e13_1+t|0;e>=this.f13_1&&e<=this.t12_1||(n="Cannot seek outside the current group ("+this.f13_1+"-"+this.t12_1+")",Pr(xt(n))),this.e13_1=e;var o=Ws(this.o12_1,this,Rs(this,e));this.u12_1=o,this.v12_1=o},ea.prototype.a18=function(){var t=this.t12_1;this.e13_1=t,this.u12_1=Ws(this.o12_1,this,Rs(this,t))},ea.prototype.u18=function(){var t=this.z12_1;this.z12_1=t+1|0,0===t&&Ps(this)},ea.prototype.r19=function(){if(!(this.z12_1>0))throw St(xt("Unbalanced begin/end insert"));var t=this;t.z12_1=t.z12_1-1|0,0===t.z12_1&&(this.d13_1.f()!==this.b13_1.f()&&Pr(xt("startGroup/endGroup mismatch while inserting")),Ms(this))},ea.prototype.c18=function(){if(0!==this.z12_1)throw on(xt("Key must be supplied when inserting"));js(this,0,_r().j12_1,!1,_r().j12_1)},ea.prototype.f18=function(t,n){return js(this,t,n,!1,_r().j12_1)},ea.prototype.h18=function(t){return js(this,125,t,!0,_r().j12_1)},ea.prototype.g18=function(t,n,e){return js(this,t,n,!1,e)},ea.prototype.q19=function(){var t=this.z12_1>0,n=this.e13_1,e=this.t12_1,o=this.f13_1,r=Rs(this,o),i=this.a13_1,s=n-o|0,a=ia(this.o12_1,r);if(t)pa(this.o12_1,r,s),fa(this.o12_1,r,i),this.a13_1=this.d13_1.g19()+(a?1:i)|0,this.f13_1=Us(this.o12_1,this,o);else{if(n!==e)throw on(xt("Expected to be at the end of a group"));var u=la(this.o12_1,r),c=sa(this.o12_1,r);pa(this.o12_1,r,s),fa(this.o12_1,r,i);var l=this.b13_1.g19();Ms(this),this.f13_1=l;var h=Us(this.o12_1,this,o);if(this.a13_1=this.d13_1.g19(),h===l){this.a13_1=this.a13_1+(a?0:i-c|0)|0}else{var p=s-u|0,f=a?0:i-c|0;if(0!==p||0!==f)for(var _=h;0!==_&&_!==l&&(0!==f||0!==p);){var d=Rs(this,_);if(0!==p){var v=la(this.o12_1,d)+p|0;pa(this.o12_1,d,v)}0!==f&&fa(this.o12_1,d,sa(this.o12_1,d)+f|0),ia(this.o12_1,d)&&(f=0),_=Us(this.o12_1,this,_)}this.a13_1=this.a13_1+f|0}}return i},ea.prototype.h1f=function(t){if(!(this.z12_1<=0))throw on(xt("Cannot call ensureStarted() while inserting"));var n=this.f13_1;if(n!==t){if(!(t>=n&&t=t;)o.m1m();wt()}var r=Bs(this,t,this.e13_1-t|0);Ls(this,n,this.u12_1-n|0,t-1|0),this.e13_1=t,this.u12_1=n;return this.a13_1=this.a13_1-e|0,r},ea.prototype.i13=function(){return new na(Ws(this.o12_1,this,Rs(this,this.e13_1)),Ws(this.o12_1,this,Rs(this,this.e13_1+this.j19(this.e13_1)|0)),this)},ea.prototype.t1b=function(t){if(0!==this.z12_1)throw on(xt("Cannot move a group while inserting"));if(!(t>=0))throw on(xt("Parameter offset is out of bounds"));if(0===t)return wt();for(var n=this.e13_1,e=this.f13_1,o=this.t12_1,r=t,i=n;r>0;){if(!((i=i+la(this.o12_1,Rs(this,i))|0)<=o))throw on(xt("Parameter offset is out of bounds"));r=r-1|0}var s=la(this.o12_1,Rs(this,i)),a=this.u12_1,u=Ws(this.o12_1,this,Rs(this,i)),c=Ws(this.o12_1,this,Rs(this,i+s|0)),l=c-u|0,h=this.e13_1-1|0;Ts(this,l,Math.max(h,0)),Ds(this,s);var p=this.o12_1,f=Rs(this,i+s|0),_=$t(f,5),d=Rs(this,n),v=$t(d,5),y=_+$t(s,5)|0;if(Hn(p,p,v,_,y),l>0){var m=this.p12_1,g=Hs(this,u+l|0),$=Hs(this,c+l|0);Hn(m,m,a,g,$)}var b=(u+l|0)-a|0,w=this.w12_1,x=this.x12_1,k=this.p12_1.length,j=this.y12_1,C=n,z=n+s|0;if(C=0)t:for(;s=n&&c=t.r12_1?_.c1b_1=0|-(i-d|0):_.c1b_1=d;var v=ma(t.q12_1,d,i);t.q12_1.zf(v,_)}while(h<=p)})(this,i+s|0,n,s),!Bs(this,i+s|0,s)||Pr(xt("Unexpectedly removed anchors")),As(this,e,this.t12_1,n),l>0&&Ls(this,u+l|0,l,(i+s|0)-1|0)},ea.prototype.q1c=function(t,n,e){if(!(e.z12_1>0))throw on(xt("Failed requirement."));if(0!==this.z12_1)throw on(xt("Failed requirement."));if(!t.a1g())throw on(xt("Failed requirement."));var o=this.i1b(t)+n|0,r=this.e13_1;if(!(r<=o&&o0;c>=r;){var h=Rs(this,c);pa(this.o12_1,h,la(this.o12_1,h)-s|0),l&&(ia(this.o12_1,h)?l=!1:fa(this.o12_1,h,sa(this.o12_1,h)-a|0)),c=this.w17(c)}if(l){gr(this.a13_1>=a);this.a13_1=this.a13_1-a|0}return u},ea.prototype.n1c=function(t,n){if(!(this.z12_1>0))throw on(xt("Failed requirement."));if(0===n&&0===this.e13_1&&0===this.n12_1.n16_1){var e=this.o12_1,o=this.p12_1,r=this.q12_1,i=t.m16_1,s=t.n16_1,a=t.o16_1,u=t.p16_1;return this.o12_1=i,this.p12_1=a,this.q12_1=t.t16_1,this.r12_1=s,this.s12_1=(i.length/5|0)-s|0,this.w12_1=u,this.x12_1=a.length-u|0,this.y12_1=s,t.z1m(e,0,o,0,r),this.q12_1}var c,l=t.z17();try{c=ks(zs(),l,n,this,!0,!0)}finally{l.q17()}return c},ea.prototype.i1c=function(t,n,e){gr(this.z12_1<=0&&1===this.j19(this.e13_1+t|0));var o=this.e13_1,r=this.u12_1,i=this.v12_1;this.l1c(t),this.c18(),this.u18();var s,a=n.z17();try{s=ks(zs(),a,e,this,!1,!0)}finally{a.q17()}var u=s;return this.r19(),this.q19(),this.e13_1=o,this.u12_1=r,this.v12_1=i,u},ea.prototype.v18=function(t){var n,e=this.q12_1,o=Aa(e,t,this.f());if(o<0){var r=new ra(t<=this.r12_1?t:0|-(this.f()-t|0));e.zf(0|-(o+1|0),r),n=r}else n=e.g(o);return n},ea.prototype.a1n=function(t){var n,e,o,r=Rs(this,t);$a(this.o12_1,r)||(n=this.o12_1,e=!0,o=$t(r,5)+1|0,n[o]=e?134217728|n[o]:-134217729&n[o],ba(this.o12_1,r)||qs(this,this.w17(t)))},ea.prototype.j1a=function(t,n,e){return 0!=(1&n)&&(t=this.f13_1),this.a1n(t)},ea.prototype.i1b=function(t){var n=t.c1b_1;return n<0?this.f()+n|0:n},ea.prototype.toString=function(){return"SlotWriter(current = "+this.e13_1+" end="+this.t12_1+" size = "+this.f()+" gap="+this.r12_1+"-"+(this.r12_1+this.s12_1|0)+")"},ea.prototype.f=function(){return Fs(this)-this.s12_1|0},ea.$metadata$=kt("SlotWriter"),oa.prototype.b1n=function(){return this.t16_1},oa.prototype.eu=function(){return 0===this.n16_1},oa.prototype.c1n=function(t){var n,e=this.u16();try{n=t(e)}finally{e.q17()}return n},oa.prototype.d1n=function(t){var n,e=this.z17();try{n=t(e)}finally{e.q17()}return n},oa.prototype.u16=function(){if(this.r16_1)throw St("Cannot read while a writer is pending");var t=this.q16_1;return this.q16_1=t+1|0,new Sa(this)},oa.prototype.z17=function(){!this.r16_1||Pr(xt("Cannot start a writer when another writer is pending")),this.q16_1<=0||Pr(xt("Cannot start a writer when a reader is pending")),this.r16_1=!0;var t=this.s16_1;return this.s16_1=t+1|0,new ea(this)},oa.prototype.i1b=function(t){if(!this.r16_1||Pr(xt("Use active SlotWriter to determine anchor location instead")),!t.a1g())throw on(xt("Anchor refers to a group that was removed"));return t.c1b_1},oa.prototype.f1h=function(t){var n;if(t.a1g()){var e=Aa(this.t16_1,t.c1b_1,this.n16_1);n=e>=0&&Ht(this.t16_1.g(e),t)}else n=!1;return n},oa.prototype.c1g=function(t,n){var e;if(!this.r16_1||Pr(xt("Writer is active")),0<=t&&t0))throw on(xt("Unexpected reader close()"));var n=this.q16_1;this.q16_1=n-1|0},oa.prototype.v1m=function(t,n,e,o,r,i){if(t.n12_1!==this||!this.r16_1)throw on(xt("Unexpected writer close()"));this.r16_1=!1,this.z1m(n,e,o,r,i)},oa.prototype.z1m=function(t,n,e,o,r){this.m16_1=t,this.n16_1=n,this.o16_1=e,this.p16_1=o,this.t16_1=r},oa.prototype.c=function(){return new Pa(this,0,this.n16_1)},oa.$metadata$=kt("SlotTable",[Oh,Kn]),ra.prototype.f1n=function(t){this.c1b_1=t},ra.prototype.s1e=function(){return this.c1b_1},ra.prototype.a1g=function(){return!(this.c1b_1===Wn().x_1)},ra.prototype.m1c=function(t){return t.i1b(this)},ra.prototype.t1m=function(t){return t.i1b(this)},ra.$metadata$=kt("Anchor"),_a.prototype.n1m=function(t){if(!this.l1m_1.h()&&(this.l1m_1.g(0)===t||this.l1m_1.g(this.l1m_1.f()-1|0)===t))return wt();var n=this.l1m_1.f();this.l1m_1.a(t);t:for(;n>0;){var e=((n+1|0)>>>1|0)-1|0,o=this.l1m_1.g(e);if(!(t>o))break t;this.l1m_1.p4(n,o),n=e}this.l1m_1.p4(n,t)},_a.prototype.p1a=function(){return!this.l1m_1.h()},_a.prototype.g1d=function(){return Gn(this.l1m_1)},_a.prototype.m1m=function(){this.l1m_1.f()>0||Pr(xt("Set is empty"));for(var t=this.l1m_1.g(0);!this.l1m_1.h()&&this.l1m_1.g(0)===t;){this.l1m_1.p4(0,Yn(this.l1m_1)),this.l1m_1.n4(this.l1m_1.f()-1|0);var n=0,e=this.l1m_1.f(),o=this.l1m_1.f()>>>1|0;t:for(;ns){if(u>r){this.l1m_1.p4(n,u),this.l1m_1.p4(a,r),n=a;continue t}break t}}if(!(s>r))break t;this.l1m_1.p4(n,s),this.l1m_1.p4(i,r),n=i}}return t},_a.$metadata$=kt("PrioritySet"),Sa.prototype.r1m=function(){return this.k17_1},Sa.prototype.f=function(){return this.h17_1},Sa.prototype.w17=function(t){return va(this.g17_1,t)},Sa.prototype.j1b=function(){return ia(this.g17_1,this.k17_1)},Sa.prototype.b1a=function(t){return ia(this.g17_1,t)},Sa.prototype.c1a=function(t){return sa(this.g17_1,t)},Sa.prototype.o1a=function(t){return ia(this.g17_1,t)?ja(this.g17_1,this,t):null},Sa.prototype.n19=function(){return!!this.s19()||this.k17_1===this.l17_1},Sa.prototype.s19=function(){return this.n17_1>0},Sa.prototype.q1a=function(){return la(this.g17_1,this.k17_1)},Sa.prototype.j19=function(t){return la(this.g17_1,t)},Sa.prototype.m19=function(){return this.l17_1},Sa.prototype.q18=function(){return this.k17_1=0?sa(this.g17_1,this.m17_1):0},Sa.prototype.m1b=function(t,n){var e=t+1|0,o=xa(this.g17_1,t)+n|0;return o<(e0||this.o17_1>=this.p17_1)return _r().j12_1;var t=this.o17_1;return this.o17_1=t+1|0,this.i17_1[t]},Sa.prototype.e18=function(){var t=this.n17_1;this.n17_1=t+1|0},Sa.prototype.p19=function(){if(!(this.n17_1>0))throw on(xt("Unbalanced begin/end empty"));var t=this.n17_1;this.n17_1=t-1|0},Sa.prototype.q17=function(){return this.f17_1.e1n(this)},Sa.prototype.c18=function(){if(this.n17_1<=0){if(va(this.g17_1,this.k17_1)!==this.m17_1)throw on(xt("Invalid slot table detected"));this.m17_1=this.k17_1,this.l17_1=this.k17_1+la(this.g17_1,this.k17_1)|0;var t=this.k17_1;this.k17_1=t+1|0;var n=t;this.o17_1=xa(this.g17_1,n),this.p17_1=n>=(this.h17_1-1|0)?this.j17_1:ga(this.g17_1,n+1|0)}},Sa.prototype.d18=function(){if(this.n17_1<=0){if(!ia(this.g17_1,this.k17_1))throw on(xt("Expected a node group"));this.c18()}},Sa.prototype.s17=function(){if(0!==this.n17_1)throw on(xt("Cannot skip while in an empty region"));var t=ia(this.g17_1,this.k17_1)?1:sa(this.g17_1,this.k17_1);return this.k17_1=this.k17_1+la(this.g17_1,this.k17_1)|0,t},Sa.prototype.a18=function(){if(0!==this.n17_1)throw on(xt("Cannot skip the enclosing group while in an empty region"));this.k17_1=this.l17_1},Sa.prototype.e19=function(t){if(0!==this.n17_1)throw on(xt("Cannot reposition while in an empty region"));this.k17_1=t;var n=t=t&&e<=n))throw on(xt("Index "+t+" is not a parent of "+e));this.m17_1=t,this.l17_1=n,this.o17_1=0,this.p17_1=0},Sa.prototype.o19=function(){if(0===this.n17_1){if(this.k17_1!==this.l17_1)throw on(xt("endGroup() not called at the end of a group"));var t=va(this.g17_1,this.m17_1);this.m17_1=t,this.l17_1=t<0?this.h17_1:t+la(this.g17_1,t)|0}},Sa.prototype.r18=function(){var t=jt();if(this.n17_1>0)return t;for(var n=0,e=this.k17_1;e=this.y16_1.length&&(this.y16_1=Zn(this.y16_1,$t(this.y16_1.length,2)));var n=this.y16_1,e=this.z16_1;this.z16_1=e+1|0,n[e]=t},Ra.prototype.g19=function(){var t=this.y16_1,n=this;return n.z16_1=n.z16_1-1|0,t[n.z16_1]},Ra.prototype.r1a=function(t){return this.z16_1>0?this.g1d():t},Ra.prototype.g1d=function(){return this.y16_1[this.z16_1-1|0]},Ra.prototype.a1a=function(t){return this.y16_1[t]},Ra.prototype.h=function(){return 0===this.z16_1},Ra.prototype.s7=function(){this.z16_1=0},Ra.prototype.s1m=function(t){var n=0,e=this.z16_1;if(n0){if((e=function(t,n){for(var e=0,o=t.d1i_1-1|0,r=Dh(n);e<=o;){var i=(e+o|0)>>>1|0,s=t.e1i_1[i],a=Dh(s);if(ar))return s===n?i:Ka(t,i,n,r);o=i-1|0}}return 0|-(e+1|0)}(this,t))>=0)return this.f1i_1[e]=n,wt()}else e=-1;var o=0|-(e+1|0);if(this.d1i_1===this.e1i_1.length){var r=$t(this.e1i_1.length,2),i=Vn(Array(r),null),s=new Int32Array($t(this.e1i_1.length,2)),a=this.e1i_1,u=o+1|0,c=this.d1i_1;Hn(a,i,u,o,c);var l=this.f1i_1,h=o+1|0,p=this.d1i_1;Hn(l,s,h,o,p);var f,_=this.e1i_1;Hn(_,i,0,0,o),f=this.f1i_1,Hn(f,s,0,0,o),this.e1i_1=i,this.f1i_1=s}else{var d=this.e1i_1,v=this.e1i_1,y=o+1|0,m=this.d1i_1;Hn(d,v,y,o,m);var g=this.f1i_1,$=this.f1i_1,b=o+1|0,w=this.d1i_1;Hn(g,$,b,o,w)}this.e1i_1[o]=t,this.f1i_1[o]=n;var x=this.d1i_1;this.d1i_1=x+1|0},Ga.prototype.i1o=function(t){var n=0,e=0,o=this.d1i_1;if(e0},Qa.prototype.o1h=function(t){return Xa(this,t)>=0},Qa.prototype.n1h=function(t){var n,e=Xa(this,t);if(e>=0){var o=this.a1b_1[e];n=null==o||zt(o)?o:Ct()}else n=null;return n},Qa.prototype.e1g=function(t,n){var e=Xa(this,t);if(e>=0)this.a1b_1[e]=n;else{var o,r=0|-(e+1|0),i=this.b1b_1===this.z1a_1.length;if(i){var s=$t(this.b1b_1,2);o=Vn(Array(s),null)}else o=this.z1a_1;var a,u=o,c=this.z1a_1,l=r+1|0,h=this.b1b_1;if(Hn(c,u,l,r,h),i){var p=this.z1a_1;Hn(p,u,0,0,r)}if(u[r]=t,this.z1a_1=u,i){var f=$t(this.b1b_1,2);a=Vn(Array(f),null)}else a=this.a1b_1;var _=a,d=this.a1b_1,v=r+1|0,y=this.b1b_1;if(Hn(d,_,v,r,y),i){var m=this.a1b_1;Hn(m,_,0,0,r)}_[r]=n,this.a1b_1=_;var g=this.b1b_1;this.b1b_1=g+1|0}},Qa.prototype.g1i=function(t){var n=Xa(this,t);if(n>=0){var e=this.b1b_1,o=this.z1a_1,r=this.a1b_1;Hn(o,o,n,n+1|0,e),Hn(r,r,n,n+1|0,e);var i=e-1|0;return o[i]=null,r[i]=null,this.b1b_1=i,!0}return!1},Qa.prototype.l1o=function(t){var n=0,e=this.b1b_1;if(n=0},ou.prototype.i=function(t){return!!zt(t)&&this.m3(zt(t)?t:Ct())},ou.prototype.g=function(t){var n=this.w1e_1[t];return zt(n)?n:Ct()},ou.prototype.x1e=function(t){var n;if(this.v1e_1>0){if((n=tu(this,t))>=0)return!1}else n=-1;var e=0|-(n+1|0);if(this.v1e_1===this.w1e_1.length){var o=$t(this.w1e_1.length,2),r=Vn(Array(o),null),i=this.w1e_1,s=e+1|0,a=this.v1e_1;Hn(i,r,s,e,a);var u=this.w1e_1;Hn(u,r,0,0,e),this.w1e_1=r}else{var c=this.w1e_1,l=this.w1e_1,h=e+1|0,p=this.v1e_1;Hn(c,l,h,e,p)}this.w1e_1[e]=t;var f=this.v1e_1;return this.v1e_1=f+1|0,!0},ou.prototype.h=function(){return 0===this.v1e_1},ou.prototype.p1a=function(){return this.v1e_1>0},ou.prototype.o1o=function(t){var n=tu(this,t);if(n>=0){if(n<(this.v1e_1-1|0)){var e=this.w1e_1,o=this.w1e_1,r=n+1|0,i=this.v1e_1;Hn(e,o,n,r,i)}var s=this.v1e_1;return this.v1e_1=s-1|0,this.w1e_1[this.v1e_1]=null,!0}return!1},ou.prototype.p1o=function(t){var n=0,e=0,o=this.v1e_1;if(e0){if((e=iu(t,n))>=0)return ru(t,e)}else e=-1;var o=0|-(e+1|0);if(t.q1f_10&&(m=t.n1f_1,Hn(m,g,0,0,o)),t.n1f_1=g;var j=t,C=j.q1f_1;return j.q1f_1=C+1|0,y}(this,t).x1e(n)},au.prototype.r1f=function(t){return iu(this,t)>=0},au.prototype.s1o=function(t,n){var e=iu(this,t);if(e>=0)for(var o=ru(this,e).c();o.d();)n(o.e())},au.prototype.j1g=function(t,n){var e=iu(this,t);if(e>=0){var o=this.n1f_1[e],r=this.p1f_1[o];if(null==r)return!1;var i=r,s=i.o1o(n);if(0===i.v1e_1){var a=e+1|0,u=this.q1f_1;if(a0){if(n!==r){var v=this.n1f_1[n];this.n1f_1[n]=i,this.n1f_1[r]=v}n=n+1|0}}while(e0){if(n!==r){var a=this.n1f_1[n];this.n1f_1[n]=i,this.n1f_1[r]=a}n=n+1|0}}while(e0},$u.prototype.q=function(){return this.a1p_1},$u.prototype.c1p=function(){if(!this.d())throw re()},$u.prototype.d1p=function(){if(!this.p())throw re()},$u.$metadata$=kt("AbstractListIterator",[ie]),bu.prototype.k1=function(t){var n=this.v1o();return n.k1(t),n.t1o()},bu.prototype.kf=function(t){var n=this.j(t);return-1!==n?this.n4(n):this},bu.prototype.i=function(t){return!(-1===this.j(t))},bu.prototype.o1=function(t){var n;t:if(Rt(t,wn)&&t.h())n=!0;else{for(var e=t.c();e.d();){var o=e.e();if(!this.i(o)){n=!1;break t}}n=!0}return n},bu.prototype.c=function(){return this.e1p()},bu.prototype.e1p=function(){return this.o(0)},bu.$metadata$=kt("AbstractPersistentList",[pu],void 0,void 0,void 0,se.prototype),wu.prototype.e=function(){if(!this.d())throw re();var t=this.a1p_1;return this.a1p_1=t+1|0,this.h1p_1[t]},wu.prototype.r=function(){if(!this.p())throw re();var t=this;return t.a1p_1=t.a1p_1-1|0,this.h1p_1[t.a1p_1]},wu.$metadata$=kt("BufferIterator",void 0,void 0,void 0,void 0,$u.prototype),Mu.prototype.f=function(){return this.k1p_1},Mu.prototype.a=function(t){var n=this.k1p_1-xu(this)|0;if(n=e)return Cu(this,this.i1p_1,t-e|0,n);var o=new fc(null);return Cu(this,zu(this,this.i1p_1,this.l1p_1,t,n,o),0,o.m1p_1)},Mu.prototype.n4=function(t){al().e2(t,this.k1p_1);var n=xu(this);return t>=n?Su(this,this.i1p_1,n,this.l1p_1,t-n|0):Su(this,Ou(this,this.i1p_1,this.l1p_1,t,new fc(this.j1p_1[0])),n,this.l1p_1,0)},Mu.prototype.v1o=function(){return new Ku(this,this.i1p_1,this.j1p_1,this.l1p_1)},Mu.prototype.o=function(t){al().d2(t,this.k1p_1);var n=this.j1p_1;return new Gu(this.i1p_1,ln(n)?n:Ct(),t,this.k1p_1,1+(this.l1p_1/hc()|0)|0)},Mu.prototype.g=function(t){al().e2(t,this.k1p_1);var n=function(t,n){if(xu(t)<=n)return t.j1p_1;for(var e=t.i1p_1,o=t.l1p_1;o>0;){var r=e[pc(n,o)];e=null!=r&&ln(r)?r:Ct(),o=o-hc()|0}return e}(this,t)[t&cc()];return null==n||zt(n)?n:Ct()},Mu.prototype.p4=function(t,n){if(al().e2(t,this.k1p_1),xu(this)<=t){var e=Qn(this.j1p_1,ac());return e[t&cc()]=n,new Mu(this.i1p_1,e,this.k1p_1,this.l1p_1)}return new Mu(Pu(this,this.i1p_1,this.l1p_1,t,n),this.j1p_1,this.k1p_1,this.l1p_1)},Mu.$metadata$=kt("PersistentVector",[pu],void 0,void 0,void 0,bu.prototype),Ku.prototype.f=function(){return this.v1p_1},Ku.prototype.w1p=function(){return this.qf_1},Ku.prototype.t1o=function(){var t;return this.t1p_1===this.p1p_1&&this.u1p_1===this.q1p_1?t=this.o1p_1:(this.s1p_1=new ul,this.p1p_1=this.t1p_1,this.q1p_1=this.u1p_1,t=null==this.t1p_1?0===this.u1p_1.length?sc():new nc(Qn(this.u1p_1,this.v1p_1)):new Mu(pn(this.t1p_1),this.u1p_1,this.v1p_1,this.r1p_1)),this.o1p_1=t,this.o1p_1},Ku.prototype.a=function(t){this.qf_1=this.qf_1+1|0;var n=Eu(this);if(n=t.f()){this.u1p_1=Nu(0,Iu(this,this.u1p_1),e,o);this.v1p_1=this.v1p_1+t.f()|0}else{var r=((t.f()+e|0)-1|0)/ac()|0,i=Vn(Array(r),null);i[0]=Nu(0,Iu(this,this.u1p_1),e,o);var s=1;if(s>hc()<1<=e)return Ru(this,this.t1p_1,t-e|0,n),wt();var o=new fc(null),r=Hu(this,pn(this.t1p_1),this.r1p_1,t,n,o),i=o.m1p_1;Ru(this,r,0,null==i||zt(i)?i:Ct())},Ku.prototype.g=function(t){al().e2(t,this.v1p_1);var n=function(t,n){if(Au(t)<=n)return t.u1p_1;for(var e=pn(t.t1p_1),o=t.r1p_1;o>0;){var r=e[pc(n,o)];e=null!=r&&ln(r)?r:Ct(),o=o-hc()|0}return e}(this,t)[t&cc()];return null==n||zt(n)?n:Ct()},Ku.prototype.n4=function(t){al().e2(t,this.v1p_1);this.qf_1=this.qf_1+1|0;var n=Au(this);if(t>=n){var e=Uu(this,this.t1p_1,n,this.r1p_1,t-n|0);return null==e||zt(e)?e:Ct()}var o=new fc(this.u1p_1[0]);Uu(this,Vu(this,pn(this.t1p_1),this.r1p_1,t,o),n,this.r1p_1,0);var r=o.m1p_1;return null==r||zt(r)?r:Ct()},Ku.prototype.p4=function(t,n){if(al().e2(t,this.v1p_1),Au(this)<=t){var e=Iu(this,this.u1p_1);if(e!==this.u1p_1){var o=this.qf_1;this.qf_1=o+1|0}var r=t&cc(),i=e[r];return e[r]=n,this.u1p_1=e,null==i||zt(i)?i:Ct()}var s=new fc(null);this.t1p_1=Ju(this,pn(this.t1p_1),this.r1p_1,t,n,s);var a=s.m1p_1;return null==a||zt(a)?a:Ct()},Ku.prototype.c=function(){return this.e1p()},Ku.prototype.e1p=function(){return this.o(0)},Ku.prototype.o=function(t){return al().d2(t,this.v1p_1),new Zu(this,t)},Ku.$metadata$=kt("PersistentVectorBuilder",[hu],void 0,void 0,void 0,ce.prototype),Gu.prototype.e=function(){if(this.c1p(),this.a1q_1.d()){var t=this.a1p_1;return this.a1p_1=t+1|0,this.a1q_1.e()}var n=this.a1p_1;return this.a1p_1=n+1|0,this.z1p_1[n-this.a1q_1.b1p_1|0]},Gu.prototype.r=function(){if(this.d1p(),this.a1p_1>this.a1q_1.b1p_1){var t=this;return t.a1p_1=t.a1p_1-1|0,this.z1p_1[t.a1p_1-this.a1q_1.b1p_1|0]}var n=this.a1p_1;return this.a1p_1=n-1|0,this.a1q_1.r()},Gu.$metadata$=kt("PersistentVectorIterator",void 0,void 0,void 0,void 0,$u.prototype),Zu.prototype.r=function(){Xu(this),this.d1p(),this.l1q_1=this.a1p_1-1|0;var t=this.k1q_1;if(null==t){var n=this.i1q_1.u1p_1,e=this;e.a1p_1=e.a1p_1-1|0;var o=n[e.a1p_1];return null==o||zt(o)?o:Ct()}var r=t;if(this.a1p_1>r.b1p_1){var i=this.i1q_1.u1p_1,s=this;s.a1p_1=s.a1p_1-1|0;var a=i[s.a1p_1-r.b1p_1|0];return null==a||zt(a)?a:Ct()}var u=this.a1p_1;return this.a1p_1=u-1|0,r.r()},Zu.prototype.e=function(){Xu(this),this.c1p(),this.l1q_1=this.a1p_1;var t=this.k1q_1;if(null==t){var n=this.i1q_1.u1p_1,e=this.a1p_1;this.a1p_1=e+1|0;var o=n[e];return null==o||zt(o)?o:Ct()}var r=t;if(r.d()){var i=this.a1p_1;return this.a1p_1=i+1|0,r.e()}var s=this.i1q_1.u1p_1,a=this.a1p_1;this.a1p_1=a+1|0;var u=s[a-r.b1p_1|0];return null==u||zt(u)?u:Ct()},Zu.prototype.o4=function(){var t;Xu(this),function(t){if(-1===t.l1q_1)throw le()}(this),this.i1q_1.n4(this.l1q_1),this.l1q_10&&o<=r||i<0&&r<=o)do{var s=o;if(o=o+i|0,Ht(n,t.x1q_1[s]))return!0}while(s!==r);return!1}(r,n):r.y1q(t,n,e+5|0)}return!1},Wc.prototype.z1q=function(t,n,e){var o=1<0&&o<=r||i<0&&r<=o)do{var s=o;if(o=o+i|0,Ht(n,Tc(t,s)))return Bc(t,s)}while(s!==r);return null}(i,n):i.z1q(t,n,e+5|0)}return null},Wc.prototype.a1r=function(t,n,e,o){var r=1<0&&r<=i||s<0&&i<=r)do{var a=r;if(r=r+s|0,Ht(n,Tc(t,a))){if(e===Bc(t,a))return null;var u=t.x1q_1.slice();return u[a+1|0]=e,Ic(Mc(0,0,u))}}while(a!==i);return Ec(Mc(0,0,Kc(t.x1q_1,0,n,e)))}(u,n,e);if(null==c)return null;s=c}else{var l=u.a1r(t,n,e,o+5|0);if(null==l)return null;s=l}var h,p=s,f=p;return h=Lc(this,a,r,p.b1r_1),f.b1r_1=h,p}return Ec(function(t,n,e,o){var r=t.j1s(n),i=Kc(t.x1q_1,r,e,o);return Mc(t.u1q_1|n,t.v1q_1,i)}(this,r,n,e))},Wc.prototype.d1r=function(t,n,e){var o=1<0&&o<=r||i<0&&r<=o)do{var s=o;if(o=o+i|0,Ht(n,Tc(t,s)))return Hc(t,s)}while(s!==r);return t}(a,n):a.d1r(t,n,e+5|0),function(t,n,e,o,r){return null==e?Nc(t,o,r):n!==e?Lc(t,o,r,e):t}(this,a,i,s,o)}return this},Wc.$metadata$=kt("TrieNode"),Xc.prototype.z1o=function(){return this.y1o_1},Xc.$metadata$=en("Companion"),Qc.prototype.f=function(){return this.p1s_1.t1q_1},Qc.prototype.i=function(t){return this.p1s_1.v2(t)},Qc.prototype.a=function(t){if(this.p1s_1.v2(t))return this;if(this.h())return new Qc(t,t,this.p1s_1.n(t,tl()));var n=this.o1s_1,e=null==n||zt(n)?n:Ct(),o=pn(this.p1s_1.b3(e)),r=this.p1s_1.n(e,o.s1s(t)).n(t,nl(e));return new Qc(this.n1s_1,t,r)},Qc.prototype.kf=function(t){var n=this.p1s_1.b3(t);if(null==n)return this;var e=n,o=this.p1s_1.pg(t);if(e.t1s()){var r,i=o,s=e.q1s_1;r=(Rt(i,oe)?i:Ct()).b3(s);var a=pn(r),u=o,c=e.q1s_1;o=u.n(null==c||zt(c)?c:Ct(),a.s1s(e.r1s_1))}if(e.v1s()){var l,h=o,p=e.r1s_1;l=(Rt(h,oe)?h:Ct()).b3(p);var f=pn(l),_=o,d=e.r1s_1;o=_.n(null==d||zt(d)?d:Ct(),f.u1s(e.q1s_1))}return new Qc(e.t1s()?this.n1s_1:e.r1s_1,e.v1s()?this.o1s_1:e.q1s_1,o)},Qc.prototype.c=function(){return new ol(this.n1s_1,this.p1s_1)},Qc.$metadata$=kt("PersistentOrderedSet",[vu],void 0,void 0,void 0,ve.prototype),el.prototype.s1s=function(t){return new el(this.q1s_1,t)},el.prototype.u1s=function(t){return new el(t,this.r1s_1)},el.prototype.v1s=function(){return!(this.r1s_1===il())},el.prototype.t1s=function(){return!(this.q1s_1===il())},el.$metadata$=kt("Links"),ol.prototype.d=function(){return this.y1s_1=n)throw we("index: "+t+", size: "+n)},sl.prototype.d2=function(t,n){if(t<0||t>n)throw we("index: "+t+", size: "+n)},sl.$metadata$=en("ListImplementation"),ul.$metadata$=kt("MutabilityOwnership"),Sl.$metadata$=bt("StateObject"),ql.prototype.ks=function(){return this.f1t_1()},ql.$metadata$=kt("sam$androidx_compose_runtime_snapshots_ObserverHandle$0",[El]),Ol.prototype.ks=function(){return this.g1t_1()},Ol.$metadata$=kt("sam$androidx_compose_runtime_snapshots_ObserverHandle$0",[El]),Pl.prototype.a11=function(){return Hl()},Pl.prototype.f1k=function(t,n){var e=Hl(),o=e instanceof Il?e:null,r=null==o?null:o.h1t(t,n);if(null==r)throw St("Cannot create a mutable snapshot of an read-only snapshot");return r},Pl.prototype.g1m=function(t){return Ul(vl()),ml(),kl().a(t),new ql((n=t,function(){return ml(),kl().kf(n),wt(),wt()}));var n},Pl.prototype.i1t=function(t){return ml(),jl().a(t),Vl(),new Ol((n=t,function(){return ml(),jl().kf(n),Vl(),wt()}));var n},Pl.prototype.j1m=function(){return Hl().j1m()},Pl.prototype.e1j=function(){ml();var t=Cl().lu().j1t();!0===(null==t?null:!t.h())&&Vl()},Pl.$metadata$=en("Companion"),Al.prototype.l1t=function(t){this.t1a_1=t},Al.prototype.k1t=function(){return this.t1a_1},Al.prototype.m1t=function(t){this.u1a_1=t},Al.prototype.y1a=function(){return this.u1a_1},Al.prototype.ks=function(){this.v1a_1=!0,ml(),this.o1t(),wt()},Al.prototype.p1t=function(t){var n=this.g1k();try{return t()}finally{this.h1k(n)}},Al.prototype.g1k=function(){var t=yl().lu();return yl().r1h(this),t},Al.prototype.h1k=function(t){yl().r1h(t)},Al.prototype.q1t=function(){return this.v1a_1},Al.prototype.r1t=function(){return this.w1a_1>=0},Al.prototype.v1t=function(){ml(),this.w1t(),this.x1t(),wt()},Al.prototype.w1t=function(){gl($l().c1u(this.y1a()))},Al.prototype.x1t=function(){this.o1t()},Al.prototype.d1u=function(){if(this.v1a_1)throw on(xt("Cannot use a disposed snapshot"))},Al.prototype.o1t=function(){this.w1a_1>=0&&(Rl(this.w1a_1),this.w1a_1=-1)},Al.prototype.e1u=function(){var t=this.w1a_1;return this.w1a_1=-1,t},Al.$metadata$=kt("Snapshot"),El.$metadata$=bt("ObserverHandle"),Il.prototype.s1t=function(){return this.n1k_1},Il.prototype.t1t=function(){return this.o1k_1},Il.prototype.h1t=function(t,n){this.d1u(),this.i1u(),this.j1u(this.y1a()),ml();var e=wl();bl(e+1|0);var o=e;gl($l().k1u(o));var r=this.k1t();this.l1t(r.k1u(o));var i=new Jl(o,Kl(r,this.y1a()+1|0,o),function(t,n,e,o,r){return 0!=(4&o)&&(e=!0),Gl(t,n,e)}(t,this.s1t(),!1,4),Yl(n,this.t1t()),this);if(!this.t1k_1&&!this.v1a_1){var s=this.y1a(),a=(ml(),wl());bl(a+1|0),this.m1t(a),gl($l().k1u(this.y1a())),wt(),this.l1t(Kl(this.k1t(),s+1|0,this.y1a()))}return i},Il.prototype.v1k=function(){var t,n=this.j1t(),e=null!=n?Xl(Cl().lu(),this,$l().c1u(Cl().lu().y1a())):null;if(ml(),Zl(this),null==n||0===n.f()){this.w1t();var o=Cl().lu();Ql(o,vl());var r=o.j1t();t=null!=r&&!r.h()?tn(Yt(kl()),r):tn(Gt(),null)}else{var i=Cl().lu(),s=this.l1u(wl(),e,$l().c1u(i.y1a()));if(!Ht(s,Tl()))return s;this.w1t(),Ql(i,vl());var a=i.j1t();this.g1u(null),i.g1u(null),t=tn(Yt(kl()),a)}var u=t,c=u.l4(),l=u.m4();if(this.t1k_1=!0,null!=l&&!l.h()){var h=0,p=c.f()-1|0;if(h<=p)do{var f=h;h=h+1|0,c.g(f)(l,this)}while(h<=p)}if(null!=n&&!n.h()){var _=0,d=c.f()-1|0;if(_<=d)do{var v=_;_=_+1|0,c.g(v)(n,this)}while(_<=d)}return ml(),this.x1t(),wt(),Tl()},Il.prototype.n1t=function(){return!1},Il.prototype.ks=function(){this.v1a_1||(Al.prototype.ks.call(this),this.m1u(this))},Il.prototype.n1u=function(t){var n=this.s1k_1;this.s1k_1=n+1|0},Il.prototype.m1u=function(t){if(!(this.s1k_1>0))throw on(xt("Failed requirement."));var n=this;n.s1k_1=n.s1k_1-1|0,0===n.s1k_1&&(this.t1k_1||function(t){var n=t.j1t();if(null!=n){t.f1u(),t.g1u(null);for(var e=t.y1a(),o=n.c();o.d();)for(var r=o.e().e1o();null!=r;)(r.w1n_1===e||ze(t.q1k_1,r.w1n_1))&&(r.w1n_1=0),r=r.x1n_1}t.v1t()}(this))},Il.prototype.j1m=function(){if(this.t1k_1||this.v1a_1)return wt();this.o1u()},Il.prototype.w1t=function(){gl($l().c1u(this.y1a()).p1u(this.q1k_1))},Il.prototype.x1t=function(){this.q1u(),Al.prototype.x1t.call(this)},Il.prototype.f1u=function(){if(this.t1k_1)throw St(xt("Unsupported operation on a snapshot that has been applied"))},Il.prototype.i1u=function(){if(this.t1k_1&&!(this.w1a_1>=0))throw St(xt("Unsupported operation on a disposed or applied snapshot"))},Il.prototype.l1u=function(t,n,e){for(var o=null,r=this.k1t().k1u(this.y1a()).r1u(this.q1k_1),i=pn(this.j1t()),s=null,a=i.c();a.d();){var u=a.e(),c=u.e1o(),l=th(c,t,e);if(null!=l){var h=l,p=th(c,this.y1a(),r);if(null!=p){var f=p;if(!Ht(h,f)){var _,d=th(c,this.y1a(),this.k1t());null==d?nh():_=d;var v=_,y=null==n?null:n.b3(h),m=null==y?u.g1o(f,h,v):y,g=m;if(null==g)return new Bl(this);if(Ht(g,v));else if(Ht(g,h)){var $,b,w=o;null==w?(o=b=jt(),$=b):$=w,$.a(tn(u,h.v1n()));var x,k,j=s;null==j?(s=k=jt(),x=k):x=j,x.a(u)}else{var C,z,S=o;null==S?(o=z=jt(),C=z):C=S,C.a(Ht(m,f)?tn(u,f.v1n()):tn(u,m))}}}}}var q=o;if(null==q);else{this.o1u();var O=0,P=q.f()-1|0;if(O<=P){do{var M=O;O=O+1|0;var A=q.g(M),E=A.l4(),I=A.m4();I.w1n_1=this.y1a(),ml(),I.x1n_1=E.e1o(),E.f1o(I),wt()}while(O<=P);wt()}}var D=s;return null==D||i.mf(D),Tl()},Il.prototype.s1u=function(t){this.j1u(this.y1a());var n=t();if(!this.t1k_1&&!this.v1a_1){var e=this.y1a(),o=(ml(),wl());bl(o+1|0),this.m1t(o),gl($l().k1u(this.y1a())),wt(),this.l1t(Kl(this.k1t(),e+1|0,this.y1a()))}return n},Il.prototype.o1u=function(){this.j1u(this.y1a());var t=wt();if(!this.t1k_1&&!this.v1a_1){var n=this.y1a(),e=(ml(),wl());bl(e+1|0),this.m1t(e),gl($l().k1u(this.y1a())),wt(),this.l1t(Kl(this.k1t(),n+1|0,this.y1a()))}return t},Il.prototype.j1u=function(t){ml(),this.q1k_1=this.q1k_1.k1u(t),wt()},Il.prototype.t1u=function(t){if(t>=0){var n,e,o=this.r1k_1;e=new Int32Array([t]),n=Se([o,e]),this.r1k_1=n}},Il.prototype.u1u=function(t){if(0===t.length)return wt();var n=this.r1k_1;if(0===n.length)this.r1k_1=t;else{var e;e=Se([n,t]),this.r1k_1=e}},Il.prototype.q1u=function(){var t=0,n=this.r1k_1.length-1|0;if(t<=n)do{var e=t;t=t+1|0,Rl(this.r1k_1[e])}while(t<=n)},Il.prototype.v1u=function(t){ml(),this.q1k_1=this.q1k_1.r1u(t),wt()},Il.prototype.u1t=function(t){var n,e=this.j1t();if(null==e){var o=fn();this.g1u(o),n=o}else n=e;n.a(t)},Il.prototype.g1u=function(t){this.p1k_1=t},Il.prototype.j1t=function(){return this.p1k_1},Il.prototype.w1u=function(){return this.t1k_1},Il.$metadata$=kt("MutableSnapshot",void 0,void 0,void 0,void 0,Al.prototype),Dl.$metadata$=en("Success",void 0,void 0,void 0,void 0,Ll.prototype),Bl.$metadata$=kt("Failure",void 0,void 0,void 0,void 0,Ll.prototype),Ll.$metadata$=kt("SnapshotApplyResult"),Nl.prototype.h1t=function(t,n){return eh((e=t,o=n,function(t){ml();var n=wl();return bl(n+1|0),new Il(n,t,e,o)}));var e,o},Nl.prototype.j1m=function(){Vl()},Nl.prototype.q1v=function(t){qh()},Nl.prototype.m1u=function(t){return this.q1v(t)},Nl.prototype.r1v=function(t){qh()},Nl.prototype.n1u=function(t){return this.r1v(t)},Nl.prototype.v1k=function(){throw St("Cannot apply the global snapshot directly. Call Snapshot.advanceGlobalSnapshot")},Nl.prototype.ks=function(){ml(),this.o1t(),wt()},Nl.$metadata$=kt("GlobalSnapshot",void 0,void 0,void 0,void 0,Il.prototype),Fl.prototype.z1n=function(t){this.w1n_1=t},Fl.prototype.a1o=function(t){this.x1n_1=t},Fl.$metadata$=kt("StateRecord"),Jl.prototype.u1m=function(){return this.n1w_1},Jl.prototype.ks=function(){this.v1a_1||(Il.prototype.ks.call(this),Wl(this))},Jl.prototype.v1k=function(){if(this.n1w_1.t1k_1||this.n1w_1.v1a_1)return new Bl(this);var t=this.j1t(),n=this.y1a(),e=null!=t?Xl(this.n1w_1,this,this.n1w_1.k1t()):null;if(ml(),Zl(this),null==t||0===t.f())this.v1t();else{var o=this.l1u(this.n1w_1.y1a(),e,this.n1w_1.k1t());if(!Ht(o,Tl()))return o;var r,i=this.n1w_1.j1t();if(null==i){var s=fn();this.n1w_1.g1u(s),r=s}else r=i;r.k1(t)}return this.n1w_1.y1a()0?this.u1v_1[0]:t},_h.prototype.y1v=function(t){!function(t,n){var e=t.u1v_1.length;if(n<=e)return wt();var o=$t(e,2),r=new Int32Array(o),i=new Int32Array(o),s=t.u1v_1,a=s.length;Hn(s,r,0,0,a);var u=t.v1v_1,c=u.length;Hn(u,i,0,0,c),t.u1v_1=r,t.v1v_1=i}(this,this.t1v_1+1|0);var n=this.t1v_1;this.t1v_1=n+1|0;var e=n,o=function(t){var n=t.w1v_1.length;if(t.x1v_1>=n){for(var e=0,o=$t(n,2),r=new Int32Array(o);e>1,r=n;r=0?(Me(),n=o<64):n=!1,n)return!new Bn(1,0).kb(o).xc(this.z1t_1).equals(new Bn(0,0));if(Me(),o>=64?(Me(),e=o<$t(64,2)):e=!1,e){var r=new Bn(1,0);return Me(),!r.kb(o-64|0).xc(this.y1t_1).equals(new Bn(0,0))}if(o>0)return!1;var i,s=this.b1u_1;return null!=(i=null==s?null:gh(s,t)>=0)&&i},mh.prototype.k1u=function(t){var n,e=t-this.a1u_1|0;if(e>=0?(Me(),n=e<64):n=!1,n){var o=new Bn(1,0).kb(e);if(this.z1t_1.xc(o).equals(new Bn(0,0)))return new mh(this.y1t_1,this.z1t_1.fn(o),this.a1u_1,this.b1u_1)}else{var r;if(Me(),e>=64?(Me(),r=e<$t(64,2)):r=!1,r){var i=new Bn(1,0);Me();var s=i.kb(e-64|0);if(this.y1t_1.xc(s).equals(new Bn(0,0)))return new mh(this.y1t_1.fn(s),this.z1t_1,this.a1u_1,this.b1u_1)}else if(Me(),e>=$t(64,2)){if(!this.g(t)){var a=this.y1t_1,u=this.z1t_1,c=this.a1u_1,l=null,h=t+1|0;Me();var p=h/64|0;Me();var f=$t(p,64);t:for(;c=0?(Me(),n=e<64):n=!1,n){var o=new Bn(1,0).kb(e);if(!this.z1t_1.xc(o).equals(new Bn(0,0)))return new mh(this.y1t_1,this.z1t_1.xc(o.en()),this.a1u_1,this.b1u_1)}else{var r;if(Me(),e>=64?(Me(),r=e<$t(64,2)):r=!1,r){var i=new Bn(1,0);Me();var s=i.kb(e-64|0);if(!this.y1t_1.xc(s).equals(new Bn(0,0)))return new mh(this.y1t_1.xc(s.en()),this.z1t_1,this.a1u_1,this.b1u_1)}else if(e<0){var a=this.b1u_1;if(null!=a){var u=gh(a,t);if(u>=0){var c=a.length-1|0;if(0===c)return new mh(this.y1t_1,this.z1t_1,this.a1u_1,null);var l=new Int32Array(c);return u>0&&Hn(a,l,0,0,u),u=0},jh.prototype.q=function(){return this.a1y_1+1|0},jh.prototype.r=function(){kh(this),Ch(this.a1y_1,this.z1x_1.f());var t=this.z1x_1.g(this.a1y_1),n=this.a1y_1;return this.a1y_1=n-1|0,t},jh.prototype.d=function(){return this.a1y_1<(this.z1x_1.f()-1|0)},jh.prototype.e=function(){kh(this);var t=this.a1y_1+1|0;Ch(t,this.z1x_1.f());var n=this.z1x_1.g(t);return this.a1y_1=t,n},jh.prototype.o4=function(){kh(this),this.z1x_1.n4(this.a1y_1);var t=this.a1y_1;this.a1y_1=t-1|0,this.b1y_1=this.z1x_1.r1x()},jh.$metadata$=kt("StateListIterator",[he]),Oh.$metadata$=bt("CompositionData"),Ph.$metadata$=bt("CompositionGroup",[Oh]),Eh.prototype.lu=function(){return this.j1f_1},Eh.prototype.p1w=function(t){this.j1f_1=t},Eh.prototype.l1f=function(t){var n=this.j1f_1;return this.j1f_1=t,n},Eh.prototype.p1g=function(t,n){var e;return Ht(t,this.j1f_1)?(this.j1f_1=n,e=!0):e=!1,e},Eh.$metadata$=kt("AtomicReference"),Ih.prototype.lu=function(){return this.q1h_1},Ih.prototype.r1h=function(t){this.q1h_1=t},Ih.$metadata$=kt("SnapshotThreadLocal"),Bh.prototype.q7=function(){var t=this.l7_1;t:for(;;)try{switch(this.j7_1){case 0:if(this.k7_1=2,this.j7_1=1,this.m1y_1=this,this.n1y_1=Fe(It(this.m1y_1)),window.requestAnimationFrame(Th(this.l1y_1,this.n1y_1)),(t=Tn(this.n1y_1.oi(),this))===Cn())return t;continue t;case 1:return t;case 2:throw this.m7_1}}catch(t){if(2===this.k7_1)throw t;this.j7_1=this.k7_1,this.m7_1=t}},Bh.$metadata$=kt("$withFrameNanosCOROUTINE$4",void 0,void 0,void 0,void 0,kn.prototype),Lh.prototype.e12=function(t,n){var e=new Bh(this,t,n);return e.l7_1=wt(),e.m7_1=null,e.q7()},Lh.$metadata$=kt("MonotonicClockImpl",[Mi]),Fh.prototype.s1a=function(t){return null},Fh.prototype.e1b=function(t){},Fh.$metadata$=en("Trace"),Uh.$metadata$=bt("ComposableLambda"),Wh.prototype.e1t=function(t){if(!Ht(this.b1t_1,t)){var n=null==this.b1t_1;this.b1t_1=t,n||function(t){if(t.a1t_1){var n=t.c1t_1;null!=n&&(n.c1h(),t.c1t_1=null);var e=t.d1t_1;if(null!=e){var o=0,r=e.f();if(o1&&i.a(P)}!function(t,n){if(n.f()>=2)for(var e=Kt(Jt(Wt(n).i35_1.c3())),o=n.c(),r=0;o.d();){var i=r;r=r+1|0;var s=o.e();if(0!==i){var a=Kt(Jt(s.i35_1.c3()));if(!qt(e,a))throw Vt(Lt("Invalid order. Expected '"+e+"', but found '"+a+"'"))}}for(var u=Nt(),c=n.c();c.d();)for(var l=c.e(),h=l.h35_1.v().c();h.d();){var p=h.e(),f=p.l2(),_=p.n2();if(u.v2(f)&&u.b3(f)!==_.f()){var d="Item count mismatch. For '"+f+"', "+u.b3(f)+" rows expected, but found "+_.f()+" in '"+l.g35_1+"' block";throw Vt(Lt(d))}var v=_.f();u.n(f,v)}}(0,r);var M=function(t,n){return Pt(n," vs ",null,null,0,null,Ao,30,null)}(0,r);return o.a(new Do(M,"",r)),"All"!==e&&i.i(e)?new Ft(i,function(t,n,e){for(var o=Mt(),r=n.c();r.d();){for(var i=r.e(),s=Mt(),a=i.e36_1.c();a.d();){var u,c=a.e(),l=c.h35_1.b3(e);if(null==l)u=null;else{for(var h=Dt(It(l,10)),p=0,f=l.c();f.d();){var _,d=f.e(),v=p;p=v+1|0;var y=Rt(v);_=new Ft(ko(Io(),y+1|0),Ht(d)),h.a(_)}u=h}var m,g=null==u?null:Ut(u);if(null==g){var $="Invalid focus group '"+e+"' for "+c.g35_1;throw Vt(Lt($))}m=g,s.a(new vo(c.g35_1,m))}o.a(new Do(e+" - "+i.c36_1,i.d36_1,s))}return o}(0,o,e)):new Ft(i,o)}(t,n,e),r=o.l4(),i=o.m4();return new wo(Bo(),i,r)}function ko(t,n){var e=n%100|0;return n+(11<=e&&e<=13?"th":1==(n%10|0)?"st":2==(n%10|0)?"nd":3==(n%10|0)?"rd":"th")}function jo(t,n){return t.l36_1.ea(n)}function Co(t,n){var e=t.j36_1.da(n," "),o=Gt("\\s{2,}").da(e," ");return Lt(Bt(Tt(o)?o:St()))}function zo(t,n){var e=t.k36_1.da(n," "),o=Gt("\\s{2,}").da(e," ");return Lt(Bt(Tt(o)?o:St()))}function So(t,n){return!function(t,n){return t.i36_1.ea(n)}(t,n)}function qo(t,n,e){var o;if(!Yt(e,n,!1,2,null))throw Vt(Lt("Invalid "+n+".Expected to start with '"+n+"' but found '"+e+"'"));var r=Xt(e,n,"",!1,4,null);o=Gt("\\s+").da(r," ");for(var i=Et(o,[", "],!1,0,6,null),s=Dt(It(i,10)),a=i.c();a.d();){var u,c,l=a.e(),h=Xt(l,",","",!1,4,null);c=Lt(Bt(Tt(h)?h:St())),u=Et(c,[" "],!1,0,6,null),s.a(u)}for(var p=s,f=Nt(),_=p.c();_.d();){var d=_.e(),v=d.g(0),y=d.g(1),m=Zt(y);f.n(v,m)}return f}function Oo(t,n){var e;t:{for(var o=n.h36_1.c();o.d();){var r=o.e();if(Yt(t,r,!1,2,null)){e=r;break t}}e=null}return e}function Po(t,n){switch(t){case"startup type is: cold":case"startup type is: warm":return!0;default:return"startup type is: hot"===t}}function Mo(t){return Lt(Bt(Tt(t)?t:St()))}function Ao(t){return t.g35_1}function Eo(){y=this,this.g36_1="All";for(var t,n=yo(),e=Dt(n.length),o=n,r=0,i=o.length;r "+_);for(var y=Nt(),m=pn(["rgba(255, 99, 132, 1)","rgba(54, 162, 235, 1)","rgba(255, 206, 86, 1)","rgba(75, 192, 192, 1)","rgba(153, 102, 255, 1)","rgba(255, 159, 64, 1)"]),g=f.c();g.d();){var $,b=g.e(),w=Et(b,[" "],!1,0,6,null).g(0),x=y.b3(w);if(null==x){m.h()&&m.a("rgba("+Ho()+", "+Ho()+", "+Ho()+", 1)");var k=Wt(m);m.kf(k);var j=k;y.n(w,j),$=j}else $=x;var C=$;o.n(b,C)}var z=new Fo(o,y);return en("groupMap: "+z),z}function Ho(){var t=fn(0,255);return dn(t,_n())}function Uo(){return $||($=!0,t=Gt("\\d+(.\\d+)?"),m=t),m;var t}function Vo(){g=this;var t;t=Gt("\\(input count : .+\\)$"),this.x35_1=t}function Wo(){return null==g&&new Vo,g}function Jo(t,n){Wo(),this.z35_1=t,this.a36_1=n,this.b36_1=0}function Ko(t,n){this.x36_1=t,this.y36_1=n,this.z36_1=8}function Go(t,n,e,o,r,i){return function(t,n,e,o,r,i,s){return 0!=(8&r)&&(o="col-lg-6"),Yo.call(s,t,n,e,o),s}(t,n,e,o,r,0,Object.create(Yo.prototype))}function Yo(t,n,e,o){this.c37_1=t,this.d37_1=n,this.e37_1=e,this.f37_1=o,this.g37_1=8}function Xo(t,n,e){this.n36_1=t,this.o36_1=n,this.p36_1=e,this.q36_1=0}function Zo(){b=this}function Qo(t,n,e){var o=n;return bn()&&$n(2098833845,e,-1,"components.ComposableSingletons$AutoFormUiKt.lambda-1. (AutoFormUi.kt:30)"),wn("⌨️ Input",o,6),bn()&&xn(),kt()}function tr(t,n,e){var o=n;return bn()&&$n(-1047390949,e,-1,"components.ComposableSingletons$AutoFormUiKt.lambda-2. (AutoFormUi.kt:58)"),wn("Benchmark :",o,6),bn()&&xn(),kt()}function nr(t,n,e){var o=n;return bn()&&$n(-1553178399,e,-1,"components.ComposableSingletons$AutoFormUiKt.lambda-3. (AutoFormUi.kt:89)"),wn("💾 SAVE",o,6),bn()&&xn(),kt()}function er(){var t;w=this,this.r37_1=(t=kn(2098833845,!1,Qo),function(n,e,o){return t.o1y(n,e,o)}),this.s37_1=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(kn(-1047390949,!1,tr)),this.t37_1=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(kn(-1553178399,!1,nr))}function or(){return null==w&&new er,w}function rr(t,n,e,o,r,i,s,a,u,c){var l=u;l=l.o1d(1546286992),jn(l,"C(FormUi$composable)P(!1,7,6,2,4,5,3)");var h,p=c;bn()&&$n(1546286992,p,-1,"components.FormUi$composable (AutoFormUi.kt:14)");var f=l;f.f12(-1124426577),jn(f,"C(remember$composable)P(1,2):Composables.kt#9igjgp");var _,d,v,y=f,m=!!(f.g12(o)|f.g12(t)),g=y.h12();if(m||g===Cn().j12_1){var $=(d=new ir(o,t,null),(v=function(t,n){return d.q1j(t,n)}).$arity=1,v);y.i12($),_=$}else _=g;var b=_,w=null==b||zn(b)?b:St();f.k12(),h=w,Sn(kt(),h,l,64),qn(null,or().r37_1,l,48,1);var x=On(l,950905109,!0,function(t,n,e,o,r,i,s,a,u){return function(c,l,h){var p=l;bn()&&$n(950905109,h,-1,"components.FormUi$composable. (AutoFormUi.kt:34)");var f=On(p,-1972588882,!0,function(t,n,e,o,r,i,s,a,u){return function(c,l,h){var p=l;bn()&&$n(-1972588882,h,-1,"components.FormUi$composable.. (AutoFormUi.kt:35)"),p.i1a(-1629932720,"inputForm"),di(t,n,e,o,r,p,64|14&i>>3|896&i>>9|7168&i>>9|57344&i>>9);var f=p;f.f12(547886695),jn(f,"C(remember$composable):Composables.kt#9igjgp");var _,d=f,v=d.h12();if(v===Cn().j12_1){var y=sr;d.i12(y),_=y}else _=v;var m=_,g=null==m||zn(m)?m:St();f.k12();var $=g,b=On(p,-1534844198,!0,function(t,n,e){return function(n,o,r){var i=o;bn()&&$n(-1534844198,r,-1,"components.FormUi$composable.... (AutoFormUi.kt:51)");var s=i;s.f12(547886695),jn(s,"C(remember$composable):Composables.kt#9igjgp");var a,u=s,c=u.h12();if(c===Cn().j12_1){var l=ar;u.i12(l),a=l}else a=c;var h,p=a,f=null==p||zn(p)?p:St();s.k12(),Tn("benchmark",f,or().s37_1,i,390,0);var _=i;_.f12(-1124426577),jn(_,"C(remember$composable)P(1,2):Composables.kt#9igjgp");var d,v=_,y=!!(_.g12(e)|_.g12(t)),m=v.h12();if(y||m===Cn().j12_1){var g=function(t,n){return function(e){return e.y20("benchmark"),e.x20(["form-control"]),In(e,"Benchmark data"),Dn(e,20),e.l28(function(t,n){return function(e){return t(n.p37(e.g2b_1,!1,!1,6,null)),kt()}}(t,n)),kt()}}(e,t);v.i12(g),d=g}else d=m;var $=d,b=null==$||zn($)?$:St();return _.k12(),h=b,Bn(t.n36_1,h,i,0,0),bn()&&(xn(),kt()),kt()}}(s,0,u)),w=p;w.f12(-838505973),jn(w,"C(remember$composable)P(1):Composables.kt#9igjgp");var x,k,j=w,C=w.g12(b),z=j.h12();if(C||z===Cn().j12_1){var S=(k=b,function(t,n,e){return k.o1y(t,n,e)});j.i12(S),x=S}else x=z;var q=x,O=null==q||zn(q)?q:St();w.k12(),Pn($,O,p,48,0);var P=p;P.f12(-1124426577),jn(P,"C(remember$composable)P(1,2):Composables.kt#9igjgp");var M,A=P,E=!!(P.g12(s)|P.g12(a)),I=A.h12();if(E||I===Cn().j12_1){var D=function(t,n){return function(e){return e.x20(["btn","btn-dark","float-end"]),e.v20(ur),nn(t.n36_1)&&(e.f20("disabled","true"),kt()),e.b21(function(t,n){return function(e){return t(n),kt()}}(n,t)),Rn(e,Fn()),kt()}}(s,a);A.i12(D),M=D}else M=I;var T=M,B=null==T||zn(T)?T:St();return P.k12(),Hn(B,or().t37_1,p,48,0),p.l1a(),bn()&&(xn(),kt()),kt()}}(t,n,e,o,r,i,s,a,u)),_=p;_.f12(-838505973),jn(_,"C(remember$composable)P(1):Composables.kt#9igjgp");var d,v,y=_,m=_.g12(f),g=y.h12();if(m||g===Cn().j12_1){var $=(v=f,function(t,n,e){return v.o1y(t,n,e)});y.i12($),d=$}else d=g;var b=d,w=null==b||zn(b)?b:St();return _.k12(),Un(null,null,w,p,384,3),bn()&&(xn(),kt()),kt()}}(n,e,i,s,a,p,t,r,o)),k=l;k.f12(-838505973),jn(k,"C(remember$composable)P(1):Composables.kt#9igjgp");var j,C,z=k,S=k.g12(x),q=z.h12();if(S||q===Cn().j12_1){var O=(C=x,function(t,n,e){return C.o1y(t,n,e)});z.i12(O),j=O}else j=q;var P=j,M=null==P||zn(P)?P:St();k.k12(),Pn(null,M,l,48,1),bn()&&xn();var A=l.p1d();null===A||A.k1e(function(t,n,e,o,r,i,s,a,u){return function(c,l){return function(t,n,e,o,r,i,s,a,u,c,l){rr(t,n,e,o,r,i,s,a,c,1|u)}(t,n,e,o,r,i,s,a,u,c),kt()}}(t,n,e,o,r,i,s,a,c))}function ir(t,n,e){this.e38_1=t,this.f38_1=n,Mn.call(this,e)}function sr(t){return t.x20(["form-group"]),kt()}function ar(t){return t.x20(["form-label"]),kt()}function ur(t){return Nn(t,Ln(10)),kt()}function cr(t,n,e){var o=n;return bn()&&$n(1529185564,e,-1,"components.ComposableSingletons$AutoGroupToggleKt.lambda-1. (AutoGroupToggle.kt:29)"),wn("Auto Group:",o,6),bn()&&xn(),kt()}function lr(){var t;x=this,this.h38_1=(t=kn(1529185564,!1,cr),function(n,e,o){return t.o1y(n,e,o)})}function hr(t,n,e,o){var r=e;r=r.o1d(442093563),jn(r,"C(AutoGroup$composable)");var i,s,a,u=o;if(0==(14&o)&&(u|=r.k1d(t)?4:2),0==(112&o)&&(u|=r.g12(n)?32:16),18==(91&u)&&r.w1b())r.a18();else{bn()&&$n(442093563,u,-1,"components.AutoGroup$composable (AutoGroupToggle.kt:10)");var c=r;c.f12(547886695),jn(c,"C(remember$composable):Composables.kt#9igjgp");var l,h=c,p=h.h12();if(p===Cn().j12_1){var f=pr;h.i12(f),l=f}else l=p;var _=l,d=null==_||zn(_)?_:St();c.k12();var v=d,y=On(r,1468648411,!0,(s=t,a=n,function(t,n,e){var o=n;bn()&&$n(1468648411,e,-1,"components.AutoGroup$composable. (AutoGroupToggle.kt:21)");var r=o;r.f12(547886695),jn(r,"C(remember$composable):Composables.kt#9igjgp");var i,u=r,c=u.h12();if(c===Cn().j12_1){var l=_r;u.i12(l),i=l}else i=c;var h=i,p=null==h||zn(h)?h:St();r.k12(),Tn("colorMap",p,(null==x&&new lr,x).h38_1,o,390,0),Wn(null,o,0,1);var f=o;f.f12(-1124426577),jn(f,"C(remember$composable)P(1,2):Composables.kt#9igjgp");var _,d=f,v=!!(f.g12(s)|f.g12(a)),y=d.h12();if(v||y===Cn().j12_1){var m=function(t,n){return function(e){return e.y20("colorMap"),e.x20(["btn",t?"btn-success":"btn-secondary"]),e.b21(function(t){return function(n){return t(),kt()}}(n)),Rn(e,Fn()),kt()}}(s,a);d.i12(m),_=m}else _=y;var g=_,$=null==g||zn(g)?g:St();f.k12();var b=$,w=On(o,-431302815,!0,function(t){return function(n,e,o){var r=e;return bn()&&$n(-431302815,o,-1,"components.AutoGroup$composable.. (AutoGroupToggle.kt:42)"),wn(t?"ON":"OFF",r,0),bn()&&(xn(),kt()),kt()}}(s)),k=o;k.f12(-838505973),jn(k,"C(remember$composable)P(1):Composables.kt#9igjgp");var j,C,z=k,S=k.g12(w),q=z.h12();if(S||q===Cn().j12_1){var O=(C=w,function(t,n,e){return C.o1y(t,n,e)});z.i12(O),j=O}else j=q;var P=j,M=null==P||zn(P)?P:St();return k.k12(),Hn(b,M,o,48,0),bn()&&(xn(),kt()),kt()})),m=r;m.f12(-838505973),jn(m,"C(remember$composable)P(1):Composables.kt#9igjgp");var g,$=m,b=m.g12(y),w=$.h12();if(b||w===Cn().j12_1){var k=(i=y,function(t,n,e){return i.o1y(t,n,e)});$.i12(k),g=k}else g=w;var j=g,C=null==j||zn(j)?j:St();m.k12(),Pn(v,C,r,48,0),bn()&&xn()}var z=r.p1d();null===z||z.k1e(function(t,n,e){return function(o,r){return function(t,n,e,o,r){hr(t,n,o,1|e)}(t,n,e,o),kt()}}(t,n,o))}function pr(t){return t.x20(["form-group"]),t.v20(fr),kt()}function fr(t){return Vn(t,Ln(10)),kt()}function _r(t){return t.x20(["form-label"]),kt()}function dr(t,n,e,o,r,i){var s=r;s=s.o1d(-1606680691),jn(s,"C(ChartUi$composable)P(2,1)");var a=i;bn()&&$n(-1606680691,a,-1,"components.ChartUi$composable (ChartUi.kt:19)");var u,c=On(s,708700421,!0,(u=e,function(t,n,e){var o=n;return bn()&&$n(708700421,e,-1,"components.ChartUi$composable. (ChartUi.kt:25)"),wn(u.c37_1+" "+u.d37_1,o,0),bn()&&(xn(),kt()),kt()})),l=s;l.f12(-838505973),jn(l,"C(remember$composable)P(1):Composables.kt#9igjgp");var h,p,f=l,_=l.g12(c),d=f.h12();if(_||d===Cn().j12_1){var v=(p=c,function(t,n,e){return p.o1y(t,n,e)});f.i12(v),h=v}else h=d;var y=h,m=null==y||zn(y)?y:St();l.k12(),qn(null,m,s,48,1);var g=s;g.f12(547886695),jn(g,"C(remember$composable):Composables.kt#9igjgp");var $,w=g,x=w.h12();if(x===Cn().j12_1){var k=vr;w.i12(k),$=k}else $=x;var j=$,C=null==j||zn(j)?j:St();g.k12();var z=C,S=On(s,586919320,!0,function(t,n,e,o,r){return function(i,s,a){var u=s;return bn()&&$n(586919320,a,-1,"components.ChartUi$composable. (ChartUi.kt:38)"),ee(t,n,function(t,n,e,o,r){return function(i){for(var s=Mt(),a=t.e37_1.v().c();a.d();){var u,c,l=a.e(),h=l.l2(),p=l.n2(),f={};f.label=h;var _,d=p.d3();if(c=te(d),f.data=c,n){var v=e.t36_1,y=f.label;_=(En(v,ne)?v:St()).b3(y)}else _=["rgba(255, 99, 132, 1)","rgba(54, 162, 235, 1)","rgba(255, 206, 86, 1)","rgba(75, 192, 192, 1)","rgba(153, 102, 255, 1)","rgba(255, 159, 64, 1)"];f.borderColor=_,f.borderWidth=3,u=f,s.a(u)}var m,g=o.v27(i),$={};null==b&&new Zo,m="line",$.type=m;for(var w=t.e37_1.d3(),x=Mt(),k=w.c();k.d();){var j;j=k.e().c3(),hn(x,j)}var C,z,S,q=cn(x),O=te(q),P={};P.labels=O,z=te(s),P.datasets=z,C=P,$.data=C;var M,A,E,I={},D={};A={display:!0},I.title=A,M=D,I.plugins=M;var T,B={};return T={beginAtZero:!0},B.y=T,E=B,I.scales=E,I.onClick=function(t,n){return function(e,o){if(0!==o.length){var r=o[0],i=(r.datasetIndex,r.index),s=t[null!=i&&"number"==typeof i?i:St()];n(s)}return kt()}}(O,r),S=I,$.options=S,new mr(new K(g,$))}}(t,n,o,i,r),u,8|112&e<<3),bn()&&(xn(),kt()),kt()}}(e,t,a,n,o)),q=s;q.f12(-838505973),jn(q,"C(remember$composable)P(1):Composables.kt#9igjgp");var O,P=q,M=q.g12(S),A=P.h12();if(M||A===Cn().j12_1){var E=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(S);P.i12(E),O=E}else O=A;var I=O,D=null==I||zn(I)?I:St();q.k12(),Jn(z,D,s,48,0),bn()&&xn();var T=s.p1d();null===T||T.k1e(function(t,n,e,o,r){return function(i,s){return function(t,n,e,o,r,i,s){dr(t,n,e,o,i,1|r)}(t,n,e,o,r,i),kt()}}(t,n,e,o,i))}function vr(t){return t.v20(yr),kt()}function yr(t){return Gn(t,Kn(100)),Yn(t,Kn(100)),Xn(t,Ln(700)),Zn(t,Ln(700)),kt()}function mr(t){this.j38_1=t}function gr(t,n,e){var o=n;return bn()&&$n(-646215327,e,-1,"components.ComposableSingletons$EditableTitleKt.lambda-1. (EditableTitle.kt:29)"),wn("Title :",o,6),bn()&&xn(),kt()}function $r(t,n,e){var o=n;bn()&&$n(1730974274,e,-1,"components.ComposableSingletons$EditableTitleKt.lambda-2. (EditableTitle.kt:23)");var r=o;r.f12(547886695),jn(r,"C(remember$composable):Composables.kt#9igjgp");var i,s=r,a=s.h12();if(a===Cn().j12_1){var u=br;s.i12(u),i=u}else i=a;var c=i,l=null==c||zn(c)?c:St();r.k12(),Tn("customTitle",l,zr().k38_1,o,390,0);var h=oe(),p=o;p.f12(547886695),jn(p,"C(remember$composable):Composables.kt#9igjgp");var f,_=p,d=_.h12();if(d===Cn().j12_1){var v=wr;_.i12(v),f=v}else f=d;var y=f,m=null==y||zn(y)?y:St();return p.k12(),re(h,m,o,8),bn()&&xn(),kt()}function br(t){return t.x20(["form-label"]),kt()}function wr(t){return t.y20("customTitle"),t.x20(["form-control"]),ie(t,"Custom title goes here"),t.v20(xr),kt()}function xr(t){return se(t,Ln(24)),kt()}function kr(t,n,e){var o=n;bn()&&$n(1174811809,e,-1,"components.ComposableSingletons$EditableTitleKt.lambda-3. (EditableTitle.kt:18)");var r=o;r.f12(547886695),jn(r,"C(remember$composable):Composables.kt#9igjgp");var i,s=r,a=s.h12();if(a===Cn().j12_1){var u=jr;s.i12(u),i=u}else i=a;var c=i,l=null==c||zn(c)?c:St();return r.k12(),Pn(l,zr().l38_1,o,48,0),bn()&&xn(),kt()}function jr(t){return t.x20(["form-group"]),kt()}function Cr(){var t;k=this,this.k38_1=(t=kn(-646215327,!1,gr),function(n,e,o){return t.o1y(n,e,o)}),this.l38_1=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(kn(1730974274,!1,$r)),this.m38_1=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(kn(1174811809,!1,kr))}function zr(){return null==k&&new Cr,k}function Sr(t,n){var e=t;if(e=e.o1d(1068528252),jn(e,"C(EditableTitle$composable)"),0===n&&e.w1b())e.a18();else{bn()&&$n(1068528252,n,-1,"components.EditableTitle$composable (EditableTitle.kt:13)");var o=e;o.f12(547886695),jn(o,"C(remember$composable):Composables.kt#9igjgp");var r,i=o,s=i.h12();if(s===Cn().j12_1){var a=qr;i.i12(a),r=a}else r=s;var u=r,c=null==u||zn(u)?u:St();o.k12(),Pn(c,zr().m38_1,e,48,0),bn()&&xn()}var l,h=e.p1d();null===h||h.k1e((l=n,function(t,n){return function(t,n,e){Sr(n,1|t)}(l,t),kt()}))}function qr(t){return t.x20(["row"]),kt()}function Or(t,n,e){var o=n;o=o.o1d(-1873638994),jn(o,"C(ErrorUi$composable)");var r,i,s=e;if(0==(14&e)&&(s|=o.g12(t)?4:2),2==(11&s)&&o.w1b())o.a18();else{bn()&&$n(-1873638994,e,-1,"components.ErrorUi$composable (Error.kt:8)");var a=o;a.f12(547886695),jn(a,"C(remember$composable):Composables.kt#9igjgp");var u,c=a,l=c.h12();if(l===Cn().j12_1){var h=Pr;c.i12(h),u=h}else u=l;var p=u,f=null==p||zn(p)?p:St();a.k12();var _=f,d=On(o,1938269174,!0,(i=t,function(t,n,e){var o=n;bn()&&$n(1938269174,e,-1,"components.ErrorUi$composable. (Error.kt:11)");var r=o;r.f12(547886695),jn(r,"C(remember$composable):Composables.kt#9igjgp");var s,a=r,u=a.h12();if(u===Cn().j12_1){var c=Mr;a.i12(c),s=c}else s=u;var l=s,h=null==l||zn(l)?l:St();r.k12();var p=h,f=On(o,-1978518889,!0,function(t){return function(n,e,o){var r=e;bn()&&$n(-1978518889,o,-1,"components.ErrorUi$composable.. (Error.kt:14)");var i=r;i.f12(547886695),jn(i,"C(remember$composable):Composables.kt#9igjgp");var s,a=i,u=a.h12();if(u===Cn().j12_1){var c=Ar;a.i12(c),s=c}else s=u;var l=s,h=null==l||zn(l)?l:St();i.k12();var p=h,f=On(r,153044343,!0,function(t){return function(n,e,o){var r=e;return bn()&&$n(153044343,o,-1,"components.ErrorUi$composable... (Error.kt:17)"),wn("❌ "+t,r,0),bn()&&(xn(),kt()),kt()}}(t)),_=r;_.f12(-838505973),jn(_,"C(remember$composable)P(1):Composables.kt#9igjgp");var d,v,y=_,m=_.g12(f),g=y.h12();if(m||g===Cn().j12_1){var $=(v=f,function(t,n,e){return v.o1y(t,n,e)});y.i12($),d=$}else d=g;var b=d,w=null==b||zn(b)?b:St();return _.k12(),ae(p,w,r,48,0),bn()&&(xn(),kt()),kt()}}(i)),_=o;_.f12(-838505973),jn(_,"C(remember$composable)P(1):Composables.kt#9igjgp");var d,v,y=_,m=_.g12(f),g=y.h12();if(m||g===Cn().j12_1){var $=(v=f,function(t,n,e){return v.o1y(t,n,e)});y.i12($),d=$}else d=g;var b=d,w=null==b||zn(b)?b:St();return _.k12(),Pn(p,w,o,48,0),bn()&&(xn(),kt()),kt()})),v=o;v.f12(-838505973),jn(v,"C(remember$composable)P(1):Composables.kt#9igjgp");var y,m=v,g=v.g12(d),$=m.h12();if(g||$===Cn().j12_1){var b=(r=d,function(t,n,e){return r.o1y(t,n,e)});m.i12(b),y=b}else y=$;var w=y,x=null==w||zn(w)?w:St();v.k12(),Pn(_,x,o,48,0),bn()&&xn()}var k=o.p1d();null===k||k.k1e(function(t,n){return function(e,o){return function(t,n,e,o){Or(t,e,1|n)}(t,n,e),kt()}}(t,e))}function Pr(t){return t.x20(["row"]),kt()}function Mr(t){return t.x20(["col-lg-12"]),kt()}function Ar(t){return t.x20(["text-center"]),kt()}function Er(t,n,e){var o=n;return bn()&&$n(242285827,e,-1,"components.ComposableSingletons$FocusGroupsKt.lambda-1. (FocusGroups.kt:24)"),wn("Focus Group :",o,6),bn()&&xn(),kt()}function Ir(){var t;j=this,this.n38_1=(t=kn(242285827,!1,Er),function(n,e,o){return t.o1y(n,e,o)})}function Dr(t,n,e,o,r){var i=o;i=i.o1d(1269797045),jn(i,"C(FocusGroups$composable)P(1)");var s,a,u,c,l=r;if(bn()&&$n(1269797045,l,-1,"components.FocusGroups$composable (FocusGroups.kt:8)"),!t.h()){var h=i;h.f12(547886695),jn(h,"C(remember$composable):Composables.kt#9igjgp");var p,f=h,_=f.h12();if(_===Cn().j12_1){var d=Tr;f.i12(d),p=d}else p=_;var v=p,y=null==v||zn(v)?v:St();h.k12();var m=y,g=On(i,1549671746,!0,(a=e,u=t,c=n,function(t,n,e){var o=n;bn()&&$n(1549671746,e,-1,"components.FocusGroups$composable. (FocusGroups.kt:18)");var r=o;r.f12(547886695),jn(r,"C(remember$composable):Composables.kt#9igjgp");var i,s=r,l=s.h12();if(l===Cn().j12_1){var h=Br;s.i12(h),i=h}else i=l;var p=i,f=null==p||zn(p)?p:St();r.k12(),Tn("focusGroups",f,(null==j&&new Ir,j).n38_1,o,390,0);var _=o;_.f12(-838505973),jn(_,"C(remember$composable)P(1):Composables.kt#9igjgp");var d,v=_,y=_.g12(a),m=v.h12();if(y||m===Cn().j12_1){var g=function(t){return function(n){return n.x20(["form-select"]),n.y20("focusGroups"),n.y27(function(t){return function(n){var e=n.g2b_1;return null==e||t(e),kt()}}(t)),kt()}}(a);v.i12(g),d=g}else d=m;var $=d,b=null==$||zn($)?$:St();_.k12();var w=b,x=On(o,1251988051,!0,function(t,n,e){return function(n,o,r){var i=o;bn()&&$n(1251988051,r,-1,"components.FocusGroups$composable.. (FocusGroups.kt:37)");for(var s=t.c();s.d();){var a=s.e(),u=i;u.f12(-1124426577),jn(u,"C(remember$composable)P(1,2):Composables.kt#9igjgp");var c,l=u,h=!!(u.g12(a)|u.g12(e)),p=l.h12();if(h||p===Cn().j12_1){var f=Lr(a,e);l.i12(f),c=f}else c=p;var _=c,d=null==_||zn(_)?_:St();u.k12();var v=d,y=On(i,736843431,!0,Nr(a)),m=i;m.f12(-838505973),jn(m,"C(remember$composable)P(1):Composables.kt#9igjgp");var g,$=m,b=m.g12(y),w=$.h12();if(b||w===Cn().j12_1){var x=Fr(y);$.i12(x),g=x}else g=w;var k=g,j=null==k||zn(k)?k:St();m.k12(),ce(a,v,j,i,384,0)}return bn()&&(xn(),kt()),kt()}}(u,0,c)),k=o;k.f12(-838505973),jn(k,"C(remember$composable)P(1):Composables.kt#9igjgp");var C,z,S=k,q=k.g12(x),O=S.h12();if(q||O===Cn().j12_1){var P=(z=x,function(t,n,e){return z.o1y(t,n,e)});S.i12(P),C=P}else C=O;var M=C,A=null==M||zn(M)?M:St();return k.k12(),le(w,!1,A,o,384,2),bn()&&(xn(),kt()),kt()})),$=i;$.f12(-838505973),jn($,"C(remember$composable)P(1):Composables.kt#9igjgp");var b,w=$,x=$.g12(g),k=w.h12();if(x||k===Cn().j12_1){var C=(s=g,function(t,n,e){return s.o1y(t,n,e)});w.i12(C),b=C}else b=k;var z=b,S=null==z||zn(z)?z:St();$.k12(),Pn(m,S,i,48,0)}bn()&&xn();var q=i.p1d();null===q||q.k1e(function(t,n,e,o){return function(r,i){return function(t,n,e,o,r,i){Dr(t,n,e,r,1|o)}(t,n,e,o,r),kt()}}(t,n,e,r))}function Tr(t){return t.x20(["form-group"]),kt()}function Br(t){return t.x20(["form-label"]),kt()}function Lr(t,n){return function(e){return t===n&&(ue(e),kt()),kt()}}function Nr(t){return function(n,e,o){var r=e;return bn()&&$n(736843431,o,-1,"components.FocusGroups$composable... (FocusGroups.kt:46)"),wn(t,r,0),bn()&&(xn(),kt()),kt()}}function Fr(t){return function(n,e,o){return t.o1y(n,e,o)}}function Rr(t,n,e){var o=n;return bn()&&$n(-1817257175,e,-1,"components.ComposableSingletons$HeadingKt.lambda-1. (Heading.kt:21)"),wn("📊 benchart",o,6),bn()&&xn(),kt()}function Hr(t,n,e){var o=n;bn()&&$n(-1445218266,e,-1,"components.ComposableSingletons$HeadingKt.lambda-2. (Heading.kt:18)");var r=o;r.f12(547886695),jn(r,"C(remember$composable):Composables.kt#9igjgp");var i,s=r,a=s.h12();if(a===Cn().j12_1){var u=Ur;s.i12(u),i=u}else i=a;var c=i,l=null==c||zn(c)?c:St();return r.k12(),he(l,Gr().o38_1,o,48,0),bn()&&xn(),kt()}function Ur(t){return t.x20(["text-center"]),kt()}function Vr(t,n,e){var o=n;bn()&&$n(-1522093819,e,-1,"components.ComposableSingletons$HeadingKt.lambda-3. (Heading.kt:11)");var r=o;r.f12(547886695),jn(r,"C(remember$composable):Composables.kt#9igjgp");var i,s=r,a=s.h12();if(a===Cn().j12_1){var u=Wr;s.i12(u),i=u}else i=a;var c=i,l=null==c||zn(c)?c:St();return r.k12(),Pn(l,Gr().p38_1,o,48,0),bn()&&xn(),kt()}function Wr(t){return t.x20(["col-lg-12"]),t.v20(Jr),kt()}function Jr(t){return pe(t,Ln(30)),Nn(t,Ln(30)),kt()}function Kr(){var t;C=this,this.o38_1=(t=kn(-1817257175,!1,Rr),function(n,e,o){return t.o1y(n,e,o)}),this.p38_1=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(kn(-1445218266,!1,Hr)),this.q38_1=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(kn(-1522093819,!1,Vr))}function Gr(){return null==C&&new Kr,C}function Yr(t,n){var e=t;if(e=e.o1d(1340484778),jn(e,"C(Heading$composable)"),0===n&&e.w1b())e.a18();else{bn()&&$n(1340484778,n,-1,"components.Heading$composable (Heading.kt:8)");var o=e;o.f12(547886695),jn(o,"C(remember$composable):Composables.kt#9igjgp");var r,i=o,s=i.h12();if(s===Cn().j12_1){var a=Xr;i.i12(a),r=a}else r=s;var u=r,c=null==u||zn(u)?u:St();o.k12(),Pn(c,Gr().q38_1,e,48,0),bn()&&xn()}var l,h=e.p1d();null===h||h.k1e((l=n,function(t,n){return function(t,n,e){Yr(n,1|t)}(l,t),kt()}))}function Xr(t){return t.x20(["row"]),kt()}function Zr(){z=this}function Qr(){S=this;var t=new fe("components.SavedBenchmarkNode",this,2);t.m2m("key",!1),t.m2m("value",!1),this.r38_1=t,this.s38_1=8}function ti(){return null==S&&new Qr,S}function ni(t,n,e,o){return function(t,n,e,o,r){return 3!=(3&t)&&me(t,3,ti().r38_1),r.u38_1=n,r.v38_1=e,r}(t,n,e,0,Object.create(ei.prototype))}function ei(t,n){null==z&&new Zr,this.u38_1=t,this.v38_1=n,this.w38_1=0}function oi(){q=this}function ri(){O=this;var t=new fe("components.SavedBenchmarks",this,1);t.m2m("items",!1),this.x38_1=t,this.y38_1=8}function ii(){return null==O&&new ri,O}function si(t,n,e){return function(t,n,e,o){return 1!=(1&t)&&me(t,1,ii().x38_1),o.a39_1=n,o}(t,n,0,Object.create(ai.prototype))}function ai(t){null==q&&new oi,this.a39_1=t,this.b39_1=8}function ui(){return Ci(),P}function ci(t,n,e){var o=n;return bn()&&$n(37561396,e,-1,"components.ComposableSingletons$SavedBenchmarksDropDownKt.lambda-1. (SavedBenchmarksDropDown.kt:35)"),wn("Load Benchmark :",o,6),bn()&&xn(),kt()}function li(t,n,e){var o=n;return bn()&&$n(-32633967,e,-1,"components.ComposableSingletons$SavedBenchmarksDropDownKt.lambda-2. (SavedBenchmarksDropDown.kt:88)"),wn("Unsaved benchmark",o,6),bn()&&xn(),kt()}function hi(t,n,e){var o=n;return bn()&&$n(-652929765,e,-1,"components.ComposableSingletons$SavedBenchmarksDropDownKt.lambda-3. (SavedBenchmarksDropDown.kt:114)"),wn("LOAD",o,6),bn()&&xn(),kt()}function pi(t,n,e){var o=n;return bn()&&$n(-1219865148,e,-1,"components.ComposableSingletons$SavedBenchmarksDropDownKt.lambda-4. (SavedBenchmarksDropDown.kt:130)"),wn("DELETE",o,6),bn()&&xn(),kt()}function fi(){var t;M=this,this.c39_1=(t=kn(37561396,!1,ci),function(n,e,o){return t.o1y(n,e,o)}),this.d39_1=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(kn(-32633967,!1,li)),this.e39_1=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(kn(-652929765,!1,hi)),this.f39_1=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(kn(-1219865148,!1,pi))}function _i(){return null==M&&new fi,M}function di(t,n,e,o,r,i,s){Ci();var a=i;a=a.o1d(-441302567),jn(a,"C(SavedBenchmarksDropDown$composable)P(4,3,2,1)");var u,c,l,h,p,f,_=s;if(bn()&&$n(-441302567,_,-1,"components.SavedBenchmarksDropDown$composable (SavedBenchmarksDropDown.kt:15)"),n.h()){bn()&&xn();var d=a.p1d();return null===d||d.k1e((u=t,c=n,l=e,h=o,p=r,f=s,function(t,n){return function(t,n,e,o,r,i,s,a){di(t,n,e,o,r,s,1|i)}(u,c,l,h,p,f,t),kt()})),kt()}var v=a;v.f12(-838505973),jn(v,"C(remember$composable)P(1):Composables.kt#9igjgp");var y,m=v,g=v.g12(n),$=m.h12();if(g||$===Cn().j12_1){var b=Wt(n),w=$e(b,null,2,null);m.i12(w),y=w}else y=$;var x=y,k=null==x||zn(x)?x:St();v.k12();var j=k,C=a;C.f12(547886695),jn(C,"C(remember$composable):Composables.kt#9igjgp");var z,S=C,q=S.h12();if(q===Cn().j12_1){var O=yi;S.i12(O),z=O}else z=q;var P=z,M=null==P||zn(P)?P:St();C.k12(),Tn("savedBenchmarks",M,_i().c39_1,a,390,0);var A=a;A.f12(547886695),jn(A,"C(remember$composable):Composables.kt#9igjgp");var E,I=A,D=I.h12();if(D===Cn().j12_1){var T=mi;I.i12(T),E=T}else E=D;var B=E,L=null==B||zn(B)?B:St();A.k12();var N=L,F=On(a,549151222,!0,function(t,n,e,o,r,i,s){return function(o,a,u){var c=a;bn()&&$n(549151222,u,-1,"components.SavedBenchmarksDropDown$composable. (SavedBenchmarksDropDown.kt:43)");var l=c;l.f12(547886695),jn(l,"C(remember$composable):Composables.kt#9igjgp");var h,p=l,f=p.h12();if(f===Cn().j12_1){var _=gi;p.i12(_),h=_}else h=f;var d=h,v=null==d||zn(d)?d:St();l.k12();var y=v,m=On(c,1940859863,!0,function(t,n,e,o,r,i,s){return function(o,a,u){var c=a;bn()&&$n(1940859863,u,-1,"components.SavedBenchmarksDropDown$composable.. (SavedBenchmarksDropDown.kt:48)");var l=c;l.f12(547886695),jn(l,"C(remember$composable):Composables.kt#9igjgp");var h,p=l,f=p.h12();if(f===Cn().j12_1){var _=$i;p.i12(_),h=_}else h=f;var d=h,v=null==d||zn(d)?d:St();l.k12();var y=v,m=On(c,461626232,!0,function(t,n,e,o,r){return function(o,i,s){var a=i;bn()&&$n(461626232,s,-1,"components.SavedBenchmarksDropDown$composable... (SavedBenchmarksDropDown.kt:54)");var u=function(t,n,e){return function(o){return o.x20(["form-select"]),o.y20("savedBenchmarks"),o.z27(function(t,n,e){return function(o){var r=o.g2a_1;if(null==r);else{var i;t(r);t:{for(var s=n.c();s.d();){var a=s.e();if(a.u38_1===r){i=a;break t}}i=null}(function(t,n){Ci(),xe("selectedBenchmark",be,!0,(function(){return we()})),t.ky(n)})(e,ke(i)),kt()}return kt()}}(t,n,e)),kt()}}(t,n,e),c=On(a,1692700999,!0,function(t,n,e,o){return function(n,r,i){var s=r;bn()&&$n(1692700999,i,-1,"components.SavedBenchmarksDropDown$composable.... (SavedBenchmarksDropDown.kt:67)");for(var a=t.c();a.d();){var u=a.e(),c=s;c.f12(-1058148781),jn(c,"C(remember$composable)P(1,2,3):Composables.kt#9igjgp");var l,h=c,p=!!(!!(c.g12(u)|c.g12(e))|c.g12(o)),f=h.h12();if(p||f===Cn().j12_1){var _=bi(u,o,e);h.i12(_),l=_}else l=f;var d=l,v=null==d||zn(d)?d:St();c.k12();var y,m=v,g=On(s,1052804723,!0,wi(u)),$=s;$.f12(-838505973),jn($,"C(remember$composable)P(1):Composables.kt#9igjgp");var b,w=$,x=$.g12(g),k=w.h12();if(x||k===Cn().j12_1){var j=xi(g);w.i12(j),b=j}else b=k;var C=b,z=null==C||zn(C)?C:St();$.k12(),y=z,ce(u.u38_1,m,y,s,384,0)}var S=ui(),q=s;q.f12(-838505973),jn(q,"C(remember$composable)P(1):Composables.kt#9igjgp");var O,P=q,M=q.g12(o),A=P.h12();if(M||A===Cn().j12_1){var E=function(t){return function(n){return t&&(ue(n),kt()),kt()}}(o);P.i12(E),O=E}else O=A;var I=O,D=null==I||zn(I)?I:St();return q.k12(),ce(S,D,_i().d39_1,s,390,0),bn()&&(xn(),kt()),kt()}}(n,0,e,r)),l=a;l.f12(-838505973),jn(l,"C(remember$composable)P(1):Composables.kt#9igjgp");var h,p,f=l,_=l.g12(c),d=f.h12();if(_||d===Cn().j12_1){var v=(p=c,function(t,n,e){return p.o1y(t,n,e)});f.i12(v),h=v}else h=d;var y=h,m=null==y||zn(y)?y:St();return l.k12(),le(u,!1,m,a,384,2),bn()&&(xn(),kt()),kt()}}(t,n,e,0,r)),g=c;g.f12(-838505973),jn(g,"C(remember$composable)P(1):Composables.kt#9igjgp");var $,b,w=g,x=g.g12(m),k=w.h12();if(x||k===Cn().j12_1){var j=(b=m,function(t,n,e){return b.o1y(t,n,e)});w.i12(j),$=j}else $=k;var C=$,z=null==C||zn(C)?C:St();g.k12(),Pn(y,z,c,48,0);var S=c;S.f12(547886695),jn(S,"C(remember$composable):Composables.kt#9igjgp");var q,O=S,P=O.h12();if(P===Cn().j12_1){var M=ki;O.i12(M),q=M}else q=P;var A=q,E=null==A||zn(A)?A:St();S.k12();var I=E,D=On(c,-282119967,!0,function(t,n,e,o,r){return function(t,i,s){var a=i;bn()&&$n(-282119967,s,-1,"components.SavedBenchmarksDropDown$composable... (SavedBenchmarksDropDown.kt:98)");var u=a;u.f12(-1058148781),jn(u,"C(remember$composable)P(1,2,3):Composables.kt#9igjgp");var c,l=u,h=!!(!!(u.g12(n)|u.g12(e))|u.g12(o)),p=l.h12();if(h||p===Cn().j12_1){var f=function(t,n,e){return function(o){return o.x20(["btn","btn-primary"]),o.v20(ji),o.b21(function(t,n){return function(e){return t(vi(n)),kt()}}(n,e)),Rn(o,Fn()),t&&(Ce(o),kt()),kt()}}(o,n,e);l.i12(f),c=f}else c=p;var _=c,d=null==_||zn(_)?_:St();u.k12(),Hn(d,_i().e39_1,a,48,0);var v=a;v.f12(-1058148781),jn(v,"C(remember$composable)P(1,2,3):Composables.kt#9igjgp");var y,m=v,g=!!(!!(v.g12(r)|v.g12(e))|v.g12(o)),$=m.h12();if(g||$===Cn().j12_1){var b=function(t,n,e){return function(o){return o.x20(["btn","btn-danger"]),o.b21(function(t,n){return function(e){return t(vi(n)),kt()}}(n,e)),Rn(o,Fn()),t&&(Ce(o),kt()),kt()}}(o,r,e);m.i12(b),y=b}else y=$;var w=y,x=null==w||zn(w)?w:St();return v.k12(),Hn(x,_i().f39_1,a,48,0),bn()&&(xn(),kt()),kt()}}(0,i,e,r,s)),T=c;T.f12(-838505973),jn(T,"C(remember$composable)P(1):Composables.kt#9igjgp");var B,L=T,N=T.g12(D),F=L.h12();if(N||F===Cn().j12_1){var R=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(D);L.i12(R),B=R}else B=F;var H=B,U=null==H||zn(H)?H:St();return T.k12(),Pn(I,U,c,48,0),bn()&&(xn(),kt()),kt()}}(t,n,e,0,r,i,s)),g=c;g.f12(-838505973),jn(g,"C(remember$composable)P(1):Composables.kt#9igjgp");var $,b,w=g,x=g.g12(m),k=w.h12();if(x||k===Cn().j12_1){var j=(b=m,function(t,n,e){return b.o1y(t,n,e)});w.i12(j),$=j}else $=k;var C=$,z=null==C||zn(C)?C:St();return g.k12(),Pn(y,z,c,48,0),bn()&&(xn(),kt()),kt()}}(e,n,j,0,t,o,r)),R=a;R.f12(-838505973),jn(R,"C(remember$composable)P(1):Composables.kt#9igjgp");var H,U,V=R,W=R.g12(F),J=V.h12();if(W||J===Cn().j12_1){var K=(U=F,function(t,n,e){return U.o1y(t,n,e)});V.i12(K),H=K}else H=J;var G=H,Y=null==G||zn(G)?G:St();R.k12(),Pn(N,Y,a,48,0),bn()&&xn();var X=a.p1d();null===X||X.k1e(function(t,n,e,o,r,i){return function(s,a){return function(t,n,e,o,r,i,s,a){di(t,n,e,o,r,s,1|i)}(t,n,e,o,r,i,s),kt()}}(t,n,e,o,r,s))}function vi(t){return Ci(),xe("selectedBenchmark",be,!0,(function(){return we()})),t.n2()}function yi(t){return Ci(),t.x20(["form-label"]),kt()}function mi(t){return Ci(),t.x20(["form-group"]),kt()}function gi(t){return Ci(),t.x20(["row"]),kt()}function $i(t){return Ci(),t.x20(["col"]),kt()}function bi(t,n,e){return function(o){return t.u38_1!==vi(e).u38_1||n||(ue(o),kt()),kt()}}function wi(t){return function(n,e,o){var r=e;return bn()&&$n(1052804723,o,-1,"components.SavedBenchmarksDropDown$composable..... (SavedBenchmarksDropDown.kt:76)"),wn(t.u38_1,r,0),bn()&&(xn(),kt()),kt()}}function xi(t){return function(n,e,o){return t.o1y(n,e,o)}}function ki(t){return Ci(),t.x20(["col"]),kt()}function ji(t){return Ci(),je(t,Ln(10)),kt()}function Ci(){A||(A=!0,P="unsavedBenchmark_"+(new Date).getMilliseconds())}function zi(t,n,e,o,r,i,s,a,u,c){this.h39_1=t,this.i39_1=n,this.j39_1=e,this.k39_1=o,this.l39_1=r,this.m39_1=i,this.n39_1=s,this.o39_1=a,this.p39_1=u,this.q39_1=c,this.r39_1=0}function Si(t,n){this.a3a_1=t,this.b3a_1=n,this.c3a_1=8}function qi(t){return Te("el",1,De,(function(t){return qi(t)}),null),t.e3a_1.n2()}function Oi(t){var n;this.d3a_1=t,this.e3a_1=ze((n=this,function(){return document.createElement(n.d3a_1)}))}function Pi(t,n,e){var o=n;return bn()&&$n(323270151,e,-1,"components.ComposableSingletons$SummaryKt.lambda-1. (Summary.kt:180)"),wn("vs",o,6),bn()&&xn(),kt()}function Mi(t,n,e){var o=n;return bn()&&$n(-1108287470,e,-1,"components.ComposableSingletons$SummaryKt.lambda-2. (Summary.kt:179)"),Bi(null,Ii().f3a_1,o,48,1),bn()&&xn(),kt()}function Ai(t,n,e){var o=n;return bn()&&$n(2132966384,e,-1,"components.ComposableSingletons$SummaryKt.lambda-3. (Summary.kt:178)"),qe(null,Ii().g3a_1,o,48,1),bn()&&xn(),kt()}function Ei(){var t;I=this,this.f3a_1=(t=kn(323270151,!1,Pi),function(n,e,o){return t.o1y(n,e,o)}),this.g3a_1=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(kn(-1108287470,!1,Mi)),this.h3a_1=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(kn(2132966384,!1,Ai))}function Ii(){return null==I&&new Ei,I}function Di(t,n,e,o,r){ss();var i=o;i=i.o1d(1689914162),jn(i,"C(SummaryContainer$composable)P(1,2)");var s=r;bn()&&$n(1689914162,s,-1,"components.SummaryContainer$composable (Summary.kt:52)"),t(i,14&s),Wn(null,i,0,1);for(var a=n.c();a.d();){var u=a.e();i.i1a(-380219352,u.a3a_1),Li(u.a3a_1,e,u.b3a_1,i,512|112&s>>3),Wn(null,i,0,1),i.l1a()}bn()&&xn();var c,l,h,p,f=i.p1d();null===f||f.k1e((c=t,l=n,h=e,p=r,function(t,n){return function(t,n,e,o,r,i){Di(t,n,e,r,1|o)}(c,l,h,p,t),kt()}))}function Ti(t,n,e,o,r,i,s,a,u,c,l){ss();var h=c;h=h.o1d(1501225216),jn(h,"C(SummarySelector$composable)P(!1,8,2,5!1,6,7)");var p=l;bn()&&$n(1501225216,p,-1,"components.SummarySelector$composable (Summary.kt:70)");var f=h;f.f12(547886695),jn(f,"C(remember$composable):Composables.kt#9igjgp");var _,d=f,v=d.h12();if(v===Cn().j12_1){var y=Fi;d.i12(y),_=y}else _=v;var m=_,g=null==m||zn(m)?m:St();f.k12();var $,b,w,x,k,j=g,C=On(h,2020978206,!0,($=p,b=e,w=t,x=o,k=n,function(t,n,e){var o=n;bn()&&$n(2020978206,e,-1,"components.SummarySelector$composable. (Summary.kt:86)");var r=o;r.f12(547886695),jn(r,"C(remember$composable):Composables.kt#9igjgp");var i,s=r,a=s.h12();if(a===Cn().j12_1){var u=Ri;s.i12(u),i=u}else i=a;var c=i,l=null==c||zn(c)?c:St();r.k12();var h=l,p=On(o,-871838913,!0,function(t,n,e){return function(o,r,i){var s=r;bn()&&$n(-871838913,i,-1,"components.SummarySelector$composable.. (Summary.kt:92)");var a=s;a.f12(-838505973),jn(a,"C(remember$composable)P(1):Composables.kt#9igjgp");var u,c=a,l=a.g12(n),h=c.h12();if(l||h===Cn().j12_1){var p=function(t){return function(n){return n.x20(["btn","btn-outline-dark","btn-sm"]),n.b21(function(t){return function(n){return t(),kt()}}(t)),Rn(n,Fn()),kt()}}(n);c.i12(p),u=p}else u=h;var f=u,_=null==f||zn(f)?f:St();a.k12();var d=_,v=On(s,-1132288775,!0,function(t,n){return function(e,o,r){var i=o;return bn()&&$n(-1132288775,r,-1,"components.SummarySelector$composable... (Summary.kt:102)"),wn(t,i,14&n),bn()&&(xn(),kt()),kt()}}(e,t)),y=s;y.f12(-838505973),jn(y,"C(remember$composable)P(1):Composables.kt#9igjgp");var m,g,$=y,b=y.g12(v),w=$.h12();if(b||w===Cn().j12_1){var x=(g=v,function(t,n,e){return g.o1y(t,n,e)});$.i12(x),m=x}else m=w;var k=m,j=null==k||zn(k)?k:St();return y.k12(),Hn(d,j,s,48,0),bn()&&(xn(),kt()),kt()}}($,b,w)),f=o;f.f12(-838505973),jn(f,"C(remember$composable)P(1):Composables.kt#9igjgp");var _,d,v=f,y=f.g12(p),m=v.h12();if(y||m===Cn().j12_1){var g=(d=p,function(t,n,e){return d.o1y(t,n,e)});v.i12(g),_=g}else _=m;var j=_,C=null==j||zn(j)?j:St();f.k12(),Pn(h,C,o,48,0);var z=o;z.f12(547886695),jn(z,"C(remember$composable):Composables.kt#9igjgp");var S,q=z,O=q.h12();if(O===Cn().j12_1){var P=Hi;q.i12(P),S=P}else S=O;var M=S,A=null==M||zn(M)?M:St();z.k12();var E=A,I=On(o,782244392,!0,function(t,n,e){return function(o,r,i){var s=r;bn()&&$n(782244392,i,-1,"components.SummarySelector$composable.. (Summary.kt:111)");var a=s;a.f12(-838505973),jn(a,"C(remember$composable)P(1):Composables.kt#9igjgp");var u,c=a,l=a.g12(n),h=c.h12();if(l||h===Cn().j12_1){var p=function(t){return function(n){return n.x20(["btn","btn-outline-dark","btn-sm"]),n.b21(function(t){return function(n){return t(),kt()}}(t)),Rn(n,Fn()),kt()}}(n);c.i12(p),u=p}else u=h;var f=u,_=null==f||zn(f)?f:St();a.k12();var d=_,v=On(s,-401969822,!0,function(t,n){return function(e,o,r){var i=o;return bn()&&$n(-401969822,r,-1,"components.SummarySelector$composable... (Summary.kt:121)"),wn(t,i,14&n>>3),bn()&&(xn(),kt()),kt()}}(e,t)),y=s;y.f12(-838505973),jn(y,"C(remember$composable)P(1):Composables.kt#9igjgp");var m,g=y,$=y.g12(v),b=g.h12();if($||b===Cn().j12_1){var w=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(v);g.i12(w),m=w}else m=b;var x=m,k=null==x||zn(x)?x:St();return y.k12(),Hn(d,k,s,48,0),bn()&&(xn(),kt()),kt()}}($,x,k)),D=o;D.f12(-838505973),jn(D,"C(remember$composable)P(1):Composables.kt#9igjgp");var T,B=D,L=D.g12(I),N=B.h12();if(L||N===Cn().j12_1){var F=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(I);B.i12(F),T=F}else T=N;var R=T,H=null==R||zn(R)?R:St();return D.k12(),Pn(E,H,o,48,0),bn()&&(xn(),kt()),kt()})),z=h;z.f12(-838505973),jn(z,"C(remember$composable)P(1):Composables.kt#9igjgp");var S,q,O=z,P=z.g12(C),M=O.h12();if(P||M===Cn().j12_1){var A=(q=C,function(t,n,e){return q.o1y(t,n,e)});O.i12(A),S=A}else S=M;var E=S,I=null==E||zn(E)?E:St();z.k12(),Pn(j,I,h,48,0);var D=h;D.f12(547886695),jn(D,"C(remember$composable):Composables.kt#9igjgp");var T,B=D,L=B.h12();if(L===Cn().j12_1){var N=Ui;B.i12(N),T=N}else T=L;var F=T,R=null==F||zn(F)?F:St();D.k12();var H,U,V,W,J,K=R,G=On(h,-569509561,!0,(H=a,U=u,V=r,W=i,J=s,function(t,n,e){var o=n;bn()&&$n(-569509561,e,-1,"components.SummarySelector$composable. (Summary.kt:132)");var r=0;if(r<2)do{var i=r;r=r+1|0,o.i1a(1520191834,"block-selector-"+i);var s=o;s.f12(547886695),jn(s,"C(remember$composable):Composables.kt#9igjgp");var a,u=s,c=u.h12();if(c===Cn().j12_1){var l=Vi;u.i12(l),a=l}else a=c;var h=a,p=null==h||zn(h)?h:St();s.k12();var f=p,_=On(o,-850201877,!0,Yi(0,i,H,U,V,W,J)),d=o;d.f12(-838505973),jn(d,"C(remember$composable)P(1):Composables.kt#9igjgp");var v,y=d,m=d.g12(_),g=y.h12();if(m||g===Cn().j12_1){var $=Xi(_);y.i12($),v=$}else v=g;var b=v,w=null==b||zn(b)?b:St();if(d.k12(),Pn(f,w,o,48,0),0===i){var x=o;x.f12(547886695),jn(x,"C(remember$composable):Composables.kt#9igjgp");var k,j=x,C=j.h12();if(C===Cn().j12_1){var z=Zi;j.i12(z),k=z}else k=C;var S=k,q=null==S||zn(S)?S:St();x.k12(),Pn(q,Ii().h3a_1,o,48,0)}o.l1a()}while(r<2);return bn()&&(xn(),kt()),kt()})),Y=h;Y.f12(-838505973),jn(Y,"C(remember$composable)P(1):Composables.kt#9igjgp");var X,Z=Y,Q=Y.g12(G),tt=Z.h12();if(Q||tt===Cn().j12_1){var nt=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(G);Z.i12(nt),X=nt}else X=tt;var et=X,ot=null==et||zn(et)?et:St();Y.k12(),Pn(K,ot,h,48,0),bn()&&xn();var rt=h.p1d();null===rt||rt.k1e(function(t,n,e,o,r,i,s,a,u,c){return function(l,h){return function(t,n,e,o,r,i,s,a,u,c,l,h){Ti(t,n,e,o,r,i,s,a,u,l,1|c)}(t,n,e,o,r,i,s,a,u,c,l),kt()}}(t,n,e,o,r,i,s,a,u,l))}function Bi(t,n,e,o,r){ss();var i={_v:t},s={_v:n},a=e;a=a.o1d(-1706683414),jn(a,"C(Strong$composable)");var u=o;0!=(1&r)?u|=6:0==(14&o)&&(u|=a.g12(i._v)?4:2),0!=(2&r)?u|=48:0==(112&o)&&(u|=a.g12(s._v)?32:16),18==(91&u)&&a.w1b()?a.a18():(0!=(1&r)&&(i._v=null),0!=(2&r)&&(s._v=null),bn()&&$n(-1706683414,u,-1,"components.Strong$composable (Summary.kt:206)"),Oe((ss(),E),i._v,s._v,a,8|112&u<<3|896&u<<3),bn()&&xn());var c,l,h,p,f=a.p1d();null===f||f.k1e((c=i,l=s,h=o,p=r,function(t,n){return function(t,n,e,o,r,i){Bi(t._v,n._v,r,1|e,o)}(c,l,h,p,t),kt()}))}function Li(t,n,e,o,r){ss();var i=o;i=i.o1d(-397929440),jn(i,"C(SummaryUi$composable)P(2)");var s=r;bn()&&$n(-397929440,s,-1,"components.SummaryUi$composable (Summary.kt:212)");var a=i;a.f12(547886695),jn(a,"C(remember$composable):Composables.kt#9igjgp");var u,c=a,l=c.h12();if(l===Cn().j12_1){var h=Qi;c.i12(h),u=h}else u=l;var p=u,f=null==p||zn(p)?p:St();a.k12();var _,d,v,y,m=f,g=On(i,122385029,!0,(_=t,d=s,v=n,y=e,function(t,n,e){var o=n;bn()&&$n(122385029,e,-1,"components.SummaryUi$composable. (Summary.kt:217)");var r=On(o,1987340836,!0,function(t,n,e){return function(o,r,i){var s,a=r;if(bn()&&$n(1987340836,i,-1,"components.SummaryUi$composable.. (Summary.kt:218)"),wn(t,a,14&n),e>1){var u=a;u.f12(547886695),jn(u,"C(remember$composable):Composables.kt#9igjgp");var c,l=u,h=l.h12();if(h===Cn().j12_1){var p=ts;l.i12(p),c=p}else c=h;var f=c,_=null==f||zn(f)?f:St();u.k12();var d=_,v=On(a,923568660,!0,function(t){return function(n,e,o){var r=e;return bn()&&$n(923568660,o,-1,"components.SummaryUi$composable... (Summary.kt:228)"),wn(" (average of "+t+")",r,0),bn()&&(xn(),kt()),kt()}}(e)),y=a;y.f12(-838505973),jn(y,"C(remember$composable)P(1):Composables.kt#9igjgp");var m,g=y,$=y.g12(v),b=g.h12();if($||b===Cn().j12_1){var w=(s=v,function(t,n,e){return s.o1y(t,n,e)});g.i12(w),m=w}else m=b;var x=m,k=null==x||zn(x)?x:St();y.k12(),Me(d,k,a,48,0)}return bn()&&(xn(),kt()),kt()}}(_,d,v)),i=o;i.f12(-838505973),jn(i,"C(remember$composable)P(1):Composables.kt#9igjgp");var s,a,u=i,c=i.g12(r),l=u.h12();if(c||l===Cn().j12_1){var h=(a=r,function(t,n,e){return a.o1y(t,n,e)});u.i12(h),s=h}else s=l;var p=s,f=null==p||zn(p)?p:St();i.k12(),qn(null,f,o,48,1);var m=On(o,1063714288,!0,function(t){return function(n,e,o){var r=e;bn()&&$n(1063714288,o,-1,"components.SummaryUi$composable.. (Summary.kt:233)");for(var i=t.c();i.d();){var s=i.e(),a=On(r,186798062,!0,os(s)),u=r;u.f12(-838505973),jn(u,"C(remember$composable)P(1):Composables.kt#9igjgp");var c,l=u,h=u.g12(a),p=l.h12();if(h||p===Cn().j12_1){var f=rs(a);l.i12(f),c=f}else c=p;var _=c,d=null==_||zn(_)?_:St();u.k12(),Ae(null,d,r,48,1)}return bn()&&(xn(),kt()),kt()}}(y)),g=o;g.f12(-838505973),jn(g,"C(remember$composable)P(1):Composables.kt#9igjgp");var $,b=g,w=g.g12(m),x=b.h12();if(w||x===Cn().j12_1){var k=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(m);b.i12(k),$=k}else $=x;var j=$,C=null==j||zn(j)?j:St();return g.k12(),Ee(null,C,o,48,1),bn()&&(xn(),kt()),kt()})),$=i;$.f12(-838505973),jn($,"C(remember$composable)P(1):Composables.kt#9igjgp");var b,w,x=$,k=$.g12(g),j=x.h12();if(k||j===Cn().j12_1){var C=(w=g,function(t,n,e){return w.o1y(t,n,e)});x.i12(C),b=C}else b=j;var z=b,S=null==z||zn(z)?z:St();$.k12(),Pn(m,S,i,48,0),bn()&&xn();var q=i.p1d();null===q||q.k1e(function(t,n,e,o){return function(r,i){return function(t,n,e,o,r,i){Li(t,n,e,r,1|o)}(t,n,e,o,r),kt()}}(t,n,e,r))}function Ni(t,n,e,o,r){ss();var i={_v:n},s=e;s=s.o1d(-1073265847);var a,u,c,l,h=o;if(0!=(1&r)?h|=6:0==(14&o)&&(h|=s.g12(t)?4:2),0!=(2&r)?h|=48:0==(112&o)&&(h|=s.g12(i._v)?32:16),18==(91&h)&&s.w1b())s.a18();else{0!=(2&r)&&(i._v=null),bn()&&$n(-1073265847,h,-1,"components.BoldText$composable (Summary.kt:274)");var p=i._v,f=s;f.f12(-838505973),jn(f,"C(remember$composable)P(1):Composables.kt#9igjgp");var _,d=f,v=f.g12(p),y=d.h12();if(v||y===Cn().j12_1){var m=(l=i,function(t){var n=l._v;return null==n||n(t),t.v20(is),kt()});d.i12(m),_=m}else _=y;var g=_,$=null==g||zn(g)?g:St();f.k12();var b=$,w=On(s,-374759312,!0,(u=t,c=h,function(t,n,e){var o=n;return bn()&&$n(-374759312,e,-1,"components.BoldText$composable. (Summary.kt:285)"),wn(u,o,14&c),bn()&&(xn(),kt()),kt()})),x=s;x.f12(-838505973),jn(x,"C(remember$composable)P(1):Composables.kt#9igjgp");var k,j=x,C=x.g12(w),z=j.h12();if(C||z===Cn().j12_1){var S=(a=w,function(t,n,e){return a.o1y(t,n,e)});j.i12(S),k=S}else k=z;var q=k,O=null==q||zn(q)?q:St();x.k12(),Pe(b,O,s,48,0),bn()&&xn()}var P=s.p1d();null===P||P.k1e(function(t,n,e,o){return function(r,i){return function(t,n,e,o,r,i){Ni(t,n._v,r,1|e,o)}(t,n,e,o,r),kt()}}(t,i,o,r))}function Fi(t){return ss(),t.x20(["row","mb-3"]),kt()}function Ri(t){return ss(),t.x20(["col-auto"]),kt()}function Hi(t){return ss(),t.x20(["col-auto"]),kt()}function Ui(t){return ss(),t.x20(["row"]),kt()}function Vi(t){return ss(),t.x20(["col"]),kt()}function Wi(t,n,e){return function(o){return o.x20(["form-select"]),o.y27(function(t,n,e){return function(o){var r=o.g2b_1;return null==r||(0===t?n(r):e(r)),kt()}}(t,n,e)),kt()}}function Ji(t,n,e,o){return function(r){return o===(0===t?n:e)&&(ue(r),kt()),kt()}}function Ki(t){return function(n,e,o){var r=e;return bn()&&$n(1538427302,o,-1,"components.SummarySelector$composable...... (Summary.kt:166)"),wn(t,r,0),bn()&&(xn(),kt()),kt()}}function Gi(t){return function(n,e,o){return t.o1y(n,e,o)}}function Yi(t,n,e,o,r,i,s){return function(t,a,u){var c=a;bn()&&$n(-850201877,u,-1,"components.SummarySelector$composable.... (Summary.kt:139)");var l=c;l.f12(-1058148781),jn(l,"C(remember$composable)P(1,2,3):Composables.kt#9igjgp");var h,p=l,f=!!(!!(l.g12(n)|l.g12(e))|l.g12(o)),_=p.h12();if(f||_===Cn().j12_1){var d=Wi(n,e,o);p.i12(d),h=d}else h=_;var v=h,y=null==v||zn(v)?v:St();l.k12();var m=y,g=On(c,1162597754,!0,function(t,n,e,o){return function(r,i,s){var a=i;bn()&&$n(1162597754,s,-1,"components.SummarySelector$composable..... (Summary.kt:155)");for(var u=t.c();u.d();){var c=u.e(),l=a;l.f12(-1603429786),jn(l,"C(remember$composable)P(1):Composables.kt#9igjgp");for(var h=!1,p=[n,e,o,c],f=0,_=p.length;f<_;){var d=p[f];f=f+1|0,h=!!(h|l.g12(d))}var v,y=l,m=h,g=y.h12();if(m||g===Cn().j12_1){var $=Ji(n,e,o,c);y.i12($),v=$}else v=g;var b=v,w=null==b||zn(b)?b:St();l.k12();var x=w,k=On(a,1538427302,!0,Ki(c)),j=a;j.f12(-838505973),jn(j,"C(remember$composable)P(1):Composables.kt#9igjgp");var C,z=j,S=j.g12(k),q=z.h12();if(S||q===Cn().j12_1){var O=Gi(k);z.i12(O),C=O}else C=q;var P=C,M=null==P||zn(P)?P:St();j.k12(),ce(c,x,M,a,384,0)}return bn()&&(xn(),kt()),kt()}}(r,n,i,s)),$=c;$.f12(-838505973),jn($,"C(remember$composable)P(1):Composables.kt#9igjgp");var b,w,x=$,k=$.g12(g),j=x.h12();if(k||j===Cn().j12_1){var C=(w=g,function(t,n,e){return w.o1y(t,n,e)});x.i12(C),b=C}else b=j;var z=b,S=null==z||zn(z)?z:St();return $.k12(),le(m,!1,S,c,384,2),bn()&&(xn(),kt()),kt()}}function Xi(t){return function(n,e,o){return t.o1y(n,e,o)}}function Zi(t){return ss(),t.x20(["col-auto"]),kt()}function Qi(t){return ss(),t.x20(["row"]),kt()}function ts(t){return ss(),t.x20(["text-muted"]),t.v20(ns),kt()}function ns(t){return ss(),se(t,Ln(18)),kt()}function es(t){return ss(),t.x20(["text-capitalize"]),kt()}function os(t){return function(n,e,o){var r,i=e;bn()&&$n(186798062,o,-1,"components.SummaryUi$composable.... (Summary.kt:235)"),wn(t.i39_1+" ",i,0);var s=i;s.f12(547886695),jn(s,"C(remember$composable):Composables.kt#9igjgp");var a,u=s,c=u.h12();if(c===Cn().j12_1){var l=es;u.i12(l),a=l}else a=c;var h=a,p=null==h||zn(h)?h:St();s.k12(),r=p,Ni(t.j39_1,r,i,0,0),wn(" : ",i,6),Ni(t.k39_1,null,i,0,2),wn(t.h39_1?" looks ":" performed ",i,0),Ni(t.l39_1+"% ",null,i,0,2);var f=t.h39_1?"":"ms",_=i;_.f12(-1124426577),jn(_,"C(remember$composable)P(1,2):Composables.kt#9igjgp");var d,v=_,y=!!(_.g12(t)|_.g12(f)),m=v.h12();if(y||m===Cn().j12_1){var g=function(t,n){return function(e){var o=0===t.n39_1?"secondary":t.n39_1>0?"danger":"success";return e.x20(["badge","bg-"+o]),e.f20("data-bs-toggle","tooltip"),e.f20("data-bs-placement","top"),e.f20("title",""+t.q39_1+n+" to "+t.p39_1+n),kt()}}(t,f);v.i12(g),d=g}else d=m;var $=d,b=null==$||zn($)?$:St();_.k12();var w=b,x=On(i,-387292852,!0,function(t){return function(n,e,o){var r=e;return bn()&&$n(-387292852,o,-1,"components.SummaryUi$composable..... (Summary.kt:263)"),wn(t.m39_1,r,0),bn()&&(xn(),kt()),kt()}}(t)),k=i;k.f12(-838505973),jn(k,"C(remember$composable)P(1):Composables.kt#9igjgp");var j,C,z=k,S=k.g12(x),q=z.h12();if(S||q===Cn().j12_1){var O=(C=x,function(t,n,e){return C.o1y(t,n,e)});z.i12(O),j=O}else j=q;var P=j,M=null==P||zn(P)?P:St();return k.k12(),Pe(w,M,i,48,0),wn(" ("+t.o39_1+t.n39_1+f+")",i,0),bn()&&(xn(),kt()),kt()}}function rs(t){return function(n,e,o){return t.o1y(n,e,o)}}function is(t){return ss(),Ie(t,"bold"),kt()}function ss(){D||(D=!0,E=new Oi("strong"))}function as(t,n,e){var o=n;return bn()&&$n(1817043984,e,-1,"components.ComposableSingletons$TestNameDetectionToggleKt.lambda-1. (TestNameDetectionToggle.kt:29)"),wn("Test Name Detection:",o,6),bn()&&xn(),kt()}function us(){var t;T=this,this.i3a_1=(t=kn(1817043984,!1,as),function(n,e,o){return t.o1y(n,e,o)})}function cs(t,n,e,o){var r=e;r=r.o1d(-1801806257),jn(r,"C(TestNameDetectionToggle$composable)");var i,s,a,u=o;if(0==(14&o)&&(u|=r.k1d(t)?4:2),0==(112&o)&&(u|=r.g12(n)?32:16),18==(91&u)&&r.w1b())r.a18();else{bn()&&$n(-1801806257,u,-1,"components.TestNameDetectionToggle$composable (TestNameDetectionToggle.kt:10)");var c=r;c.f12(547886695),jn(c,"C(remember$composable):Composables.kt#9igjgp");var l,h=c,p=h.h12();if(p===Cn().j12_1){var f=ls;h.i12(f),l=f}else l=p;var _=l,d=null==_||zn(_)?_:St();c.k12();var v=d,y=On(r,815464847,!0,(s=t,a=n,function(t,n,e){var o=n;bn()&&$n(815464847,e,-1,"components.TestNameDetectionToggle$composable. (TestNameDetectionToggle.kt:21)");var r=o;r.f12(547886695),jn(r,"C(remember$composable):Composables.kt#9igjgp");var i,u=r,c=u.h12();if(c===Cn().j12_1){var l=ps;u.i12(l),i=l}else i=c;var h=i,p=null==h||zn(h)?h:St();r.k12(),Tn("testNameDetection",p,(null==T&&new us,T).i3a_1,o,390,0),Wn(null,o,0,1);var f=o;f.f12(-1124426577),jn(f,"C(remember$composable)P(1,2):Composables.kt#9igjgp");var _,d=f,v=!!(f.g12(s)|f.g12(a)),y=d.h12();if(v||y===Cn().j12_1){var m=function(t,n){return function(e){return e.y20("testNameDetection"),e.x20(["btn",t?"btn-success":"btn-secondary"]),e.b21(function(t){return function(n){return t(),kt()}}(n)),Rn(e,Fn()),kt()}}(s,a);d.i12(m),_=m}else _=y;var g=_,$=null==g||zn(g)?g:St();f.k12();var b=$,w=On(o,-1071119211,!0,function(t){return function(n,e,o){var r=e;return bn()&&$n(-1071119211,o,-1,"components.TestNameDetectionToggle$composable.. (TestNameDetectionToggle.kt:42)"),wn(t?"ON":"OFF",r,0),bn()&&(xn(),kt()),kt()}}(s)),x=o;x.f12(-838505973),jn(x,"C(remember$composable)P(1):Composables.kt#9igjgp");var k,j,C=x,z=x.g12(w),S=C.h12();if(z||S===Cn().j12_1){var q=(j=w,function(t,n,e){return j.o1y(t,n,e)});C.i12(q),k=q}else k=S;var O=k,P=null==O||zn(O)?O:St();return x.k12(),Hn(b,P,o,48,0),bn()&&(xn(),kt()),kt()})),m=r;m.f12(-838505973),jn(m,"C(remember$composable)P(1):Composables.kt#9igjgp");var g,$=m,b=m.g12(y),w=$.h12();if(b||w===Cn().j12_1){var x=(i=y,function(t,n,e){return i.o1y(t,n,e)});$.i12(x),g=x}else g=w;var k=g,j=null==k||zn(k)?k:St();m.k12(),Pn(v,j,r,48,0),bn()&&xn()}var C=r.p1d();null===C||C.k1e(function(t,n,e){return function(o,r){return function(t,n,e,o,r){cs(t,n,o,1|e)}(t,n,e,o),kt()}}(t,n,o))}function ls(t){return t.x20(["form-group"]),t.v20(hs),kt()}function hs(t){return Vn(t,Ln(10)),kt()}function ps(t){return t.x20(["form-label"]),kt()}function fs(t,n,e){var o=n;return bn()&&$n(-130845949,e,-1,"components.ComposableSingletons$TestNamesKt.lambda-1. (TestNames.kt:24)"),wn("Test Name :",o,6),bn()&&xn(),kt()}function _s(){var t;B=this,this.j3a_1=(t=kn(-130845949,!1,fs),function(n,e,o){return t.o1y(n,e,o)})}function ds(t,n,e,o,r,i){var s={_v:n},a=o;a=a.o1d(246637604),jn(a,"C(TestNames$composable)P(2)");var u,c,l,h,p=r;if(0!=(2&i)&&(s._v=null),bn()&&$n(246637604,p,-1,"components.TestNames$composable (TestNames.kt:8)"),!t.h()){var f=a;f.f12(547886695),jn(f,"C(remember$composable):Composables.kt#9igjgp");var _,d=f,v=d.h12();if(v===Cn().j12_1){var y=vs;d.i12(y),_=y}else _=v;var m=_,g=null==m||zn(m)?m:St();f.k12();var $=g,b=On(a,-1509913918,!0,(c=e,l=t,h=s,function(t,n,e){var o=n;bn()&&$n(-1509913918,e,-1,"components.TestNames$composable. (TestNames.kt:18)");var r=o;r.f12(547886695),jn(r,"C(remember$composable):Composables.kt#9igjgp");var i,s=r,a=s.h12();if(a===Cn().j12_1){var u=ys;s.i12(u),i=u}else i=a;var p=i,f=null==p||zn(p)?p:St();r.k12(),Tn("testNames",f,(null==B&&new _s,B).j3a_1,o,390,0);var _=o;_.f12(-838505973),jn(_,"C(remember$composable)P(1):Composables.kt#9igjgp");var d,v=_,y=_.g12(c),m=v.h12();if(y||m===Cn().j12_1){var g=function(t){return function(n){return n.x20(["form-select"]),n.y20("testNames"),n.y27(function(t){return function(n){var e=n.g2b_1;return null==e||t(e),kt()}}(t)),kt()}}(c);v.i12(g),d=g}else d=m;var $=d,b=null==$||zn($)?$:St();_.k12();var w=b,x=On(o,-1857982381,!0,function(t,n,e){return function(e,o,r){var i=o;bn()&&$n(-1857982381,r,-1,"components.TestNames$composable.. (TestNames.kt:37)");for(var s=t.c();s.d();){var a=s.e(),u=n._v,c=i;c.f12(-1124426577),jn(c,"C(remember$composable)P(1,2):Composables.kt#9igjgp");var l,h=c,p=!!(c.g12(a)|c.g12(u)),f=h.h12();if(p||f===Cn().j12_1){var _=ms(a,n);h.i12(_),l=_}else l=f;var d=l,v=null==d||zn(d)?d:St();c.k12();var y=v,m=On(i,1208237735,!0,gs(a)),g=i;g.f12(-838505973),jn(g,"C(remember$composable)P(1):Composables.kt#9igjgp");var $,b=g,w=g.g12(m),x=b.h12();if(w||x===Cn().j12_1){var k=$s(m);b.i12(k),$=k}else $=x;var j=$,C=null==j||zn(j)?j:St();g.k12(),ce(a,y,C,i,384,0)}return bn()&&(xn(),kt()),kt()}}(l,h)),k=o;k.f12(-838505973),jn(k,"C(remember$composable)P(1):Composables.kt#9igjgp");var j,C,z=k,S=k.g12(x),q=z.h12();if(S||q===Cn().j12_1){var O=(C=x,function(t,n,e){return C.o1y(t,n,e)});z.i12(O),j=O}else j=q;var P=j,M=null==P||zn(P)?P:St();return k.k12(),le(w,!1,M,o,384,2),bn()&&(xn(),kt()),kt()})),w=a;w.f12(-838505973),jn(w,"C(remember$composable)P(1):Composables.kt#9igjgp");var x,k=w,j=w.g12(b),C=k.h12();if(j||C===Cn().j12_1){var z=(u=b,function(t,n,e){return u.o1y(t,n,e)});k.i12(z),x=z}else x=C;var S=x,q=null==S||zn(S)?S:St();w.k12(),Pn($,q,a,48,0)}bn()&&xn();var O=a.p1d();null===O||O.k1e(function(t,n,e,o,r){return function(i,s){return function(t,n,e,o,r,i,s){ds(t,n._v,e,i,1|o,r)}(t,n,e,o,r,i),kt()}}(t,s,e,r,i))}function vs(t){return t.x20(["form-group"]),kt()}function ys(t){return t.x20(["form-label"]),kt()}function ms(t,n){return function(e){return t===n._v&&(ue(e),kt()),kt()}}function gs(t){return function(n,e,o){var r=e;return bn()&&$n(1208237735,o,-1,"components.TestNames$composable... (TestNames.kt:46)"),wn(t,r,0),bn()&&(xn(),kt()),kt()}}function $s(t){return function(n,e,o){return t.o1y(n,e,o)}}function bs(t,n,e){var o=n;return bn()&&$n(1108811911,e,-1,"ComposableSingletons$MainKt.lambda-1. (main.kt:8)"),js(null,o,0,1),bn()&&xn(),kt()}function ws(){var t;L=this,this.k3a_1=(t=kn(1108811911,!1,bs),function(n,e,o){return t.o1y(n,e,o)})}function xs(t,n,e){var o=n;return bn()&&$n(-374992274,e,-1,"page.home.ComposableSingletons$HomePageKt.lambda-1. (HomePage.kt:112)"),wn("🖥 Output",o,6),bn()&&xn(),kt()}function ks(){var t;N=this,this.l3a_1=(t=kn(-374992274,!1,xs),function(n,e,o){return t.o1y(n,e,o)})}function js(t,n,e,o){var r={_v:t},i=n;i=i.o1d(-109696367),jn(i,"C(HomePageUi$composable)");var s,a,u=e;if(0==(14&e)&&(u|=0==(1&o)&&i.g12(r._v)?4:2),2==(11&u)&&i.w1b())i.a18();else{if(i.x1c(),0==(1&e)||i.b1d()){if(0!=(1&o)){var c,l=i;l.f12(547886695),jn(l,"C(remember$composable):Composables.kt#9igjgp");var h,p=l,f=p.h12();if(f===Cn().j12_1){var _=new ha(new va,new $a);p.i12(_),h=_}else h=f;var d=h,v=null==d||zn(d)?d:St();l.k12(),c=v,r._v=c,u&=-15}}else i.a18(),0!=(1&o)&&(u&=-15);i.y1c(),bn()&&$n(-109696367,u,-1,"page.home.HomePageUi$composable (HomePage.kt:29)");var y=i;y.f12(547886695),jn(y,"C(remember$composable):Composables.kt#9igjgp");var m,g=y,$=g.h12();if($===Cn().j12_1){var b=Cs;g.i12(b),m=b}else m=$;var w=m,x=null==w||zn(w)?w:St();y.k12();var k=x,j=On(i,1790973562,!0,(a=r,function(t,n,e){var o=n;bn()&&$n(1790973562,e,-1,"page.home.HomePageUi$composable. (HomePage.kt:36)"),Yr(o,0);var r=a._v.s3c();!nn(r)&&Or(a._v.s3c(),o,0);var i=o;i.f12(547886695),jn(i,"C(remember$composable):Composables.kt#9igjgp");var s,u=i,c=u.h12();if(c===Cn().j12_1){var l=zs;u.i12(l),s=l}else s=c;var h=s,p=null==h||zn(h)?h:St();i.k12();var f=p,_=On(o,-1337148517,!0,function(t,n){return function(n,e,o){var r=e;bn()&&$n(-1337148517,o,-1,"page.home.HomePageUi$composable.. (HomePage.kt:55)");var i=r;i.f12(547886695),jn(i,"C(remember$composable):Composables.kt#9igjgp");var s,a=i,u=a.h12();if(u===Cn().j12_1){var c=qs;a.i12(c),s=c}else s=u;var l=s,h=null==l||zn(l)?l:St();i.k12();var p=h,f=On(r,1509226108,!0,function(t,n){return function(n,e,o){var r=e;bn()&&$n(1509226108,o,-1,"page.home.HomePageUi$composable... (HomePage.kt:58)");var i,s=t._v.e3c(),a=t._v.f3c(),u=(i=t._v,function(t){return function(t,n){t.m3b(n,!1,2,null)}(i,t),kt()}),c=function(t){var n=function(n){return t.n3b(n),kt()};return n.callableName="onSaveClicked",n}(t._v);rr(s,a,t._v.g3c(),u,c,function(t){var n=function(n){return t.o3b(n),kt()};return n.callableName="onSavedBenchmarkChanged",n}(t._v),function(t){var n=function(n){return t.p3b(n),kt()};return n.callableName="onLoadBenchmarkClicked",n}(t._v),function(t){var n=function(n){return t.q3b(n),kt()};return n.callableName="onDeleteBenchmarkClicked",n}(t._v),r,520),Wn(null,r,0,1),Wn(null,r,0,1);var l=On(r,-1521832332,!0,function(t,n){return function(n,e){var o=n;if(2==(11&e)&&o.w1b())o.a18(),kt();else{if(bn()&&$n(-1521832332,e,-1,"page.home.HomePageUi$composable.... (HomePage.kt:74)"),en("block size "+t._v.z3a_1.f()),t._v.z3a_1.f()>2){var r=t._v.v3b(),i="BEST (-"+(null==r?null:r.y3b_1)+t._v.r28()+")",s=t._v.b3c(),a="WORST (+"+(null==s?null:s.z3b_1)+t._v.r28()+")",u=t._v,c=o;c.f12(-838505973),jn(c,"C(remember$composable)P(1):Composables.kt#9igjgp");var l,h=c,p=c.g12(u),f=h.h12();if(p||f===Cn().j12_1){var _=function(t){var n=function(){return t.r3b(),kt()};return n.callableName="onBestClicked",n}(u);h.i12(_),l=_}else l=f;var d=l,v=null==d||zn(d)?d:St();c.k12();var y=v,m=t._v,g=o;g.f12(-838505973),jn(g,"C(remember$composable)P(1):Composables.kt#9igjgp");var $,b=g,w=g.g12(m),x=b.h12();if(w||x===Cn().j12_1){var k=function(t){var n=function(){return t.s3b(),kt()};return n.callableName="onWorstClicked",n}(m);b.i12(k),$=k}else $=x;var j=$,C=null==j||zn(j)?j:St();g.k12(),Ti(i,a,y,C,t._v.z3a_1,t._v.c3c(),t._v.d3c(),function(t){var n=function(n){return t.t3b(n),kt()};return n.callableName="onBlockNameOneChanged",n}(t._v),function(t){var n=function(n){return t.u3b(n),kt()};return n.callableName="onBlockNameTwoChanged",n}(t._v),o,0)}bn()&&(xn(),kt())}return kt()}}(t)),h=r;h.f12(-838505973),jn(h,"C(remember$composable)P(1):Composables.kt#9igjgp");var p,f=h,_=h.g12(l),d=f.h12();if(_||d===Cn().j12_1){var v=function(t){return function(n,e){return t.u1b(n,e)}}(l);f.i12(v),p=v}else p=d;var y=p,m=null==y||zn(y)?y:St();return h.k12(),Di(m,t._v.b3b_1,t._v.h3c(),r,6),bn()&&(xn(),kt()),kt()}}(t)),_=r;_.f12(-838505973),jn(_,"C(remember$composable)P(1):Composables.kt#9igjgp");var d,v,y=_,m=_.g12(f),g=y.h12();if(m||g===Cn().j12_1){var $=(v=f,function(t,n,e){return v.o1y(t,n,e)});y.i12($),d=$}else d=g;var b=d,w=null==b||zn(b)?b:St();_.k12(),Pn(p,w,r,48,0);var x=t._v.r3c(),k=null==x?null:x.y36_1,j=null==k||k.h()?null:k;if(null==j);else{var C=t._v.r3c();if(null==C)throw Vt("TSH");var z=C,S=r;S.f12(547886695),jn(S,"C(remember$composable):Composables.kt#9igjgp");var q,O=S,P=O.h12();if(P===Cn().j12_1){var M=Os;O.i12(M),q=M}else q=P;var A=q,E=null==A||zn(A)?A:St();S.k12();var I=E,D=On(r,2092888171,!0,function(t,n,e,o){return function(n,r,i){var s=r;if(bn()&&$n(2092888171,i,-1,"page.home.HomePageUi$composable.... (HomePage.kt:101)"),t._v.q3c())s.f12(-1006755353),Sr(s,0),s.k12();else{s.f12(-1006755284);var a=t._v,u=s;u.f12(-838505973),jn(u,"C(remember$composable)P(1):Composables.kt#9igjgp");var c,l=u,h=u.g12(a),p=l.h12();if(h||p===Cn().j12_1){var f=function(t){return function(n){return n.c21(function(t){return function(n){return t._v.i3c(),kt()}}(t)),kt()}}(t);l.i12(f),c=f}else c=p;var _=c,d=null==_||zn(_)?_:St();u.k12(),qn(d,(null==N&&new ks,N).l3a_1,s,48,0),s.k12()}var v=s;v.f12(547886695),jn(v,"C(remember$composable):Composables.kt#9igjgp");var y,m=v,g=m.h12();if(g===Cn().j12_1){var $=Ps;m.i12($),y=$}else y=g;var b=y,w=null==b||zn(b)?b:St();v.k12();var x=w,k=On(s,-350149078,!0,function(t,n){return function(n,e,o){var r=e;bn()&&$n(-350149078,o,-1,"page.home.HomePageUi$composable..... (HomePage.kt:122)");var i=On(r,1688816067,!0,function(t,n){return function(n,e,o){var r=e;bn()&&$n(1688816067,o,-1,"page.home.HomePageUi$composable...... (HomePage.kt:123)");var i=r;i.f12(547886695),jn(i,"C(remember$composable):Composables.kt#9igjgp");var s,a=i,u=a.h12();if(u===Cn().j12_1){var c=Ms;a.i12(c),s=c}else s=u;var l=s,h=null==l||zn(l)?l:St();i.k12();var p=h,f=On(r,-1218869404,!0,function(t,n){return function(n,e,o){var r=e;bn()&&$n(-1218869404,o,-1,"page.home.HomePageUi$composable....... (HomePage.kt:128)");var i=r;i.f12(547886695),jn(i,"C(remember$composable):Composables.kt#9igjgp");var s,a=i,u=a.h12();if(u===Cn().j12_1){var c=As;a.i12(c),s=c}else s=u;var l=s,h=null==l||zn(l)?l:St();i.k12();var p=h,f=On(r,-1633797435,!0,function(t,n){return function(n,e,o){var r=e;bn()&&$n(-1633797435,o,-1,"page.home.HomePageUi$composable........ (HomePage.kt:134)");var i=t._v.e3c().p36_1,s=t._v,a=r;a.f12(-838505973),jn(a,"C(remember$composable)P(1):Composables.kt#9igjgp");var u,c=a,l=a.g12(s),h=c.h12();if(l||h===Cn().j12_1){var p=function(t){var n=function(){return t.j3c(),kt()};return n.callableName="onToggleAutoGroupClicked",n}(s);c.i12(p),u=p}else u=h;var f=u,_=null==f||zn(f)?f:St();return a.k12(),hr(i,_,r,0),bn()&&(xn(),kt()),kt()}}(t)),_=r;_.f12(-838505973),jn(_,"C(remember$composable)P(1):Composables.kt#9igjgp");var d,v=_,y=_.g12(f),m=v.h12();if(y||m===Cn().j12_1){var g=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(f);v.i12(g),d=g}else d=m;var $=d,b=null==$||zn($)?$:St();if(_.k12(),Pn(p,b,r,48,0),t._v.s3a_1.f()>1){var w=r;w.f12(547886695),jn(w,"C(remember$composable):Composables.kt#9igjgp");var x,k=w,j=k.h12();if(j===Cn().j12_1){var C=Es;k.i12(C),x=C}else x=j;var z=x,S=null==z||zn(z)?z:St();w.k12();var q=S,O=On(r,-1089967542,!0,function(t,n){return function(n,e,o){var r=e;bn()&&$n(-1089967542,o,-1,"page.home.HomePageUi$composable........ (HomePage.kt:146)");var i=t._v.s3a_1,s=t._v.l3c(),a=t._v,u=r;u.f12(-838505973),jn(u,"C(remember$composable)P(1):Composables.kt#9igjgp");var c,l=u,h=u.g12(a),p=l.h12();if(h||p===Cn().j12_1){var f=function(t){return function(n){return t._v.k3c(n),kt()}}(t);l.i12(f),c=f}else c=p;var _=c,d=null==_||zn(_)?_:St();return u.k12(),Dr(i,s,d,r,0),bn()&&(xn(),kt()),kt()}}(t)),P=r;P.f12(-838505973),jn(P,"C(remember$composable)P(1):Composables.kt#9igjgp");var M,A=P,E=P.g12(O),I=A.h12();if(E||I===Cn().j12_1){var D=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(O);A.i12(D),M=D}else M=I;var T=M,B=null==T||zn(T)?T:St();P.k12(),Pn(q,B,r,48,0)}if(qt(t._v.o3c(),Lo())){var L=r;L.f12(547886695),jn(L,"C(remember$composable):Composables.kt#9igjgp");var N,F=L,R=F.h12();if(R===Cn().j12_1){var H=Is;F.i12(H),N=H}else N=R;var U=N,V=null==U||zn(U)?U:St();L.k12();var W=V,J=On(r,1874650163,!0,function(t,n){return function(n,e,o){var r=e;bn()&&$n(1874650163,o,-1,"page.home.HomePageUi$composable........ (HomePage.kt:162)");var i=t._v.e3c().o36_1,s=t._v,a=r;a.f12(-838505973),jn(a,"C(remember$composable)P(1):Composables.kt#9igjgp");var u,c=a,l=a.g12(s),h=c.h12();if(l||h===Cn().j12_1){var p=function(t){var n=function(){return t.m3c(),kt()};return n.callableName="onToggleTestNameDetectionClicked",n}(s);c.i12(p),u=p}else u=h;var f=u,_=null==f||zn(f)?f:St();return a.k12(),cs(i,_,r,0),bn()&&(xn(),kt()),kt()}}(t)),K=r;K.f12(-838505973),jn(K,"C(remember$composable)P(1):Composables.kt#9igjgp");var G,Y=K,X=K.g12(J),Z=Y.h12();if(X||Z===Cn().j12_1){var Q=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(J);Y.i12(Q),G=Q}else G=Z;var tt=G,nt=null==tt||zn(tt)?tt:St();K.k12(),Pn(W,nt,r,48,0)}if(!t._v.q3a_1.h()){var et=r;et.f12(547886695),jn(et,"C(remember$composable):Composables.kt#9igjgp");var ot,rt=et,it=rt.h12();if(it===Cn().j12_1){var st=Ds;rt.i12(st),ot=st}else ot=it;var at=ot,ut=null==at||zn(at)?at:St();et.k12();var ct=ut,lt=On(r,628742226,!0,function(t,n){return function(n,e,o){var r=e;bn()&&$n(628742226,o,-1,"page.home.HomePageUi$composable........ (HomePage.kt:175)");var i=t._v.q3a_1,s=t._v,a=r;a.f12(-838505973),jn(a,"C(remember$composable)P(1):Composables.kt#9igjgp");var u,c=a,l=a.g12(s),h=c.h12();if(l||h===Cn().j12_1){var p=function(t){return function(n){return t._v.n3c(n),kt()}}(t);c.i12(p),u=p}else u=h;var f=u,_=null==f||zn(f)?f:St();return a.k12(),ds(i,null,_,r,0,2),bn()&&(xn(),kt()),kt()}}(t)),ht=r;ht.f12(-838505973),jn(ht,"C(remember$composable)P(1):Composables.kt#9igjgp");var pt,ft=ht,_t=ht.g12(lt),dt=ft.h12();if(_t||dt===Cn().j12_1){var vt=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(lt);ft.i12(vt),pt=vt}else pt=dt;var yt=pt,mt=null==yt||zn(yt)?yt:St();ht.k12(),Pn(ct,mt,r,48,0)}return bn()&&(xn(),kt()),kt()}}(t)),_=r;_.f12(-838505973),jn(_,"C(remember$composable)P(1):Composables.kt#9igjgp");var d,v=_,y=_.g12(f),m=v.h12();if(y||m===Cn().j12_1){var g=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(f);v.i12(g),d=g}else d=m;var $=d,b=null==$||zn($)?$:St();return _.k12(),Pn(p,b,r,48,0),bn()&&(xn(),kt()),kt()}}(t)),s=r;s.f12(-838505973),jn(s,"C(remember$composable)P(1):Composables.kt#9igjgp");var a,u=s,c=s.g12(i),l=u.h12();if(c||l===Cn().j12_1){var h=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(i);u.i12(h),a=h}else a=l;var p=a,f=null==p||zn(p)?p:St();return s.k12(),Un(null,null,f,r,384,3),bn()&&(xn(),kt()),kt()}}(t)),j=s;j.f12(-838505973),jn(j,"C(remember$composable)P(1):Composables.kt#9igjgp");var C,z=j,S=j.g12(k),q=z.h12();if(S||q===Cn().j12_1){var O=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(k);z.i12(O),C=O}else C=q;var P=C,M=null==P||zn(P)?P:St();j.k12(),Pn(x,M,s,48,0),Wn(null,s,0,1);var A=s;A.f12(-838505973),jn(A,"C(remember$composable)P(1):Composables.kt#9igjgp");var E,I=A,D=A.g12(e),T=I.h12();if(D||T===Cn().j12_1){var B=Re(e,2);I.i12(B),E=B}else E=T;var L=E,F=null==L||zn(L)?L:St();A.k12();for(var R=F.c();R.d();){var H=R.e(),U=s;U.f12(547886695),jn(U,"C(remember$composable):Composables.kt#9igjgp");var V,W=U,J=W.h12();if(J===Cn().j12_1){var K=Ts;W.i12(K),V=K}else V=J;var G=V,Y=null==G||zn(G)?G:St();U.k12();var X=Y,Z=On(s,-2034949684,!0,Fs(H,t,o)),Q=s;Q.f12(-838505973),jn(Q,"C(remember$composable)P(1):Composables.kt#9igjgp");var tt,nt=Q,et=Q.g12(Z),ot=nt.h12();if(et||ot===Cn().j12_1){var rt=Rs(Z);nt.i12(rt),tt=rt}else tt=ot;var it=tt,st=null==it||zn(it)?it:St();Q.k12(),Pn(X,st,s,48,0)}return bn()&&(xn(),kt()),kt()}}(t,0,j,z)),T=r;T.f12(-838505973),jn(T,"C(remember$composable)P(1):Composables.kt#9igjgp");var B,L=T,F=T.g12(D),R=L.h12();if(F||R===Cn().j12_1){var H=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(D);L.i12(H),B=H}else B=R;var U=B,V=null==U||zn(U)?U:St();T.k12(),Pn(I,V,r,48,0),kt(),kt()}return bn()&&(xn(),kt()),kt()}}(a)),d=o;d.f12(-838505973),jn(d,"C(remember$composable)P(1):Composables.kt#9igjgp");var v,y,m=d,g=d.g12(_),$=m.h12();if(g||$===Cn().j12_1){var b=(y=_,function(t,n,e){return y.o1y(t,n,e)});m.i12(b),v=b}else v=$;var w=v,x=null==w||zn(w)?w:St();return d.k12(),Pn(f,x,o,48,0),bn()&&(xn(),kt()),kt()})),C=i;C.f12(-838505973),jn(C,"C(remember$composable)P(1):Composables.kt#9igjgp");var z,S=C,q=C.g12(j),O=S.h12();if(q||O===Cn().j12_1){var P=(s=j,function(t,n,e){return s.o1y(t,n,e)});S.i12(P),z=P}else z=O;var M=z,A=null==M||zn(M)?M:St();C.k12(),Pn(k,A,i,48,0),bn()&&xn()}var E=i.p1d();null===E||E.k1e(function(t,n,e){return function(o,r){return function(t,n,e,o,r){js(t._v,o,1|n,e)}(t,n,e,o),kt()}}(r,e,o))}function Cs(t){return t.x20(["container-fluid"]),kt()}function zs(t){return t.x20(["row"]),t.v20(Ss),kt()}function Ss(t){return Le(t,Ln(40)),Ne(t,Ln(40)),Fe(t,Ln(40)),kt()}function qs(t){return t.x20(["col-lg-4"]),kt()}function Os(t){return t.x20(["col-lg-8"]),kt()}function Ps(t){return t.x20(["row"]),kt()}function Ms(t){return t.x20(["row"]),kt()}function As(t){return t.x20(["col-md-2"]),kt()}function Es(t){return t.x20(["col-md-4"]),kt()}function Is(t){return t.x20(["col-md-2"]),kt()}function Ds(t){return t.x20(["col-md-4"]),kt()}function Ts(t){return t.x20(["row"]),kt()}function Bs(t){return function(n){return n.x20([t.f37_1]),kt()}}function Ls(t,n,e){return function(o,r,i){var s,a,u=r;return bn()&&$n(1979032493,i,-1,"page.home.HomePageUi$composable...... (HomePage.kt:205)"),dr(t._v.e3c().p36_1,n.x36_1,e,(s=t._v,(a=function(t){return s.p3c(t),kt()}).callableName="onDotClicked",a),u,576),bn()&&(xn(),kt()),kt()}}function Ns(t){return function(n,e,o){return t.o1y(n,e,o)}}function Fs(t,n,e){return function(o,r,i){var s=r;bn()&&$n(-2034949684,i,-1,"page.home.HomePageUi$composable..... (HomePage.kt:200)");for(var a=t.c();a.d();){var u=a.e(),c=Bs(u),l=On(s,1979032493,!0,Ls(n,e,u)),h=s;h.f12(-838505973),jn(h,"C(remember$composable)P(1):Composables.kt#9igjgp");var p,f=h,_=h.g12(l),d=f.h12();if(_||d===Cn().j12_1){var v=Ns(l);f.i12(v),p=v}else p=d;var y=p,m=null==y||zn(y)?y:St();h.k12(),Pn(c,m,s,48,0)}return bn()&&(xn(),kt()),kt()}}function Rs(t){return function(n,e,o){return t.o1y(n,e,o)}}function Hs(){F=this,this.t3c_1="Something went wrong!"}function Us(){return null==F&&new Hs,F}function Vs(t,n){return Te("savedBenchmarks",1,Qe,(function(t){return t.g3c()}),(function(t,n){return Vs(t,n)})),t.o3a_1.ky(n)}function Ws(t,n){return Te("currentFocusedGroup",1,Qe,(function(t){return t.l3c()}),(function(t,n){return Ws(t,n)})),t.r3a_1.ky(n)}function Js(t,n){return Te("chartsBundle",1,Qe,(function(t){return t.r3c()}),(function(t,n){return Js(t,n)})),t.t3a_1.ky(n)}function Ks(t,n){return Te("errorMsg",1,Qe,(function(t){return t.s3c()}),(function(t,n){return Ks(t,n)})),t.u3a_1.ky(n)}function Gs(t,n){return Te("isEditableTitleEnabled",1,Qe,(function(t){return t.q3c()}),(function(t,n){return Gs(t,n)})),t.v3a_1.ky(n)}function Ys(t,n){return Te("shouldSelectUnsaved",1,Qe,(function(t){return t.f3c()}),(function(t,n){return Ys(t,n)})),t.w3a_1.ky(n)}function Xs(t,n){return Te("selectedBlockNameOne",1,Qe,(function(t){return t.c3c()}),(function(t,n){return Xs(t,n)})),t.x3a_1.ky(n)}function Zs(t,n){return Te("selectedBlockNameTwo",1,Qe,(function(t){return t.d3c()}),(function(t,n){return Zs(t,n)})),t.y3a_1.ky(n)}function Qs(t,n){return Te("avgOfCount",1,Qe,(function(t){return t.h3c()}),(function(t,n){return Qs(t,n)})),t.a3b_1.ky(n)}function ta(t,n){return Te("inputType",1,Qe,(function(t){return t.o3c()}),(function(t,n){return ta(t,n)})),t.c3b_1.ky(n)}function na(t,n){return Te("unit",1,Qe,(function(t){return t.r28()}),(function(t,n){return na(t,n)})),t.d3b_1.ky(n)}function ea(t,n){return Te("bestAggSummary",1,Qe,(function(t){return t.v3b()}),(function(t,n){return ea(t,n)})),t.e3b_1.ky(n)}function oa(t,n){return Te("worstAggSummary",1,Qe,(function(t){return t.b3c()}),(function(t,n){return oa(t,n)})),t.f3b_1.ky(n)}function ra(t,n){return Te("form",1,Qe,(function(t){return t.e3c()}),(function(t,n){return ra(t,n)})),t.g3b_1.ky(n)}function ia(t){Vs(t,t.m3a_1.u3c())}function sa(t,n){for(var e=Et(n,["\n"],!1,0,6,null),o=Mt(),r=e.c();r.d();){var i=r.e();He(i,"PROCESS ENDED",!1)||He(i,"PROCESS STARTED",!1)||o.a(i)}var s,a=Pt(o,"\n",null,null,0,null,(s=t,function(t){var n,e,o=s.j3b_1.da(t,""),r=Lt(Ge(Tt(o)?o:St())),i=r,a=s.k3b_1.da(i,"");if(n=Lt(Ge(Tt(a)?a:St())),Yt(r=n,"System.out ",!1,2,null)){var u=Xt(r,"System.out ","",!1,4,null);r=Lt(Ge(Tt(u)?u:St())),kt()}var c=r,l=s.l3b_1.da(c,"");e=Lt(Ge(Tt(l)?l:St()));var h=Ye(r=e,"startup type is: cold",!1,2,null)?"startup type is: cold":Ye(r,"startup type is: warm",!1,2,null)?"startup type is: warm":Ye(r,"startup type is: hot",!1,2,null)?"startup type is: hot":r;return Lt(Ge(Tt(h)?h:St()))}),30,null);return en("QuickTag: HomeViewModel:filterOutAndroidJunkLog: '"+a+"'"),a}function aa(t){Xs(t,null),Zs(t,null),t.z3a_1.s7(),Js(t,null),t.b3b_1.s7(),ea(t,null),oa(t,null),Qs(t,-1),ca(t)}function ua(t,n){t.z3a_1.s7();var e=Jt(n.x36_1.u36_1.c3());t.z3a_1.x1x(e),e.f()>=2?(Xs(t,e.g(0)),Zs(t,e.g(1))):(Xs(t,null),Zs(t,null)),ca(t)}function ca(t){t.b3b_1.s7();var n,e=qt(t.o3c(),Bo()),o=t.r3c(),r=null==o?null:o.y36_1;if(null==r)n=null;else{for(var i=Mt(),s=r.c();s.d();){var a=s.e(),u=Ca().w3c(e,a,t.c3c(),t.d3c());null==u||(i.a(u),kt())}n=i}var c=n;t.b3b_1.x1x(null==c?We():c),function(t){for(var n,e=qt(t.o3c(),Bo()),o=Mt(),r=t.z3a_1.c();r.d();)for(var i=r.e(),s=t.z3a_1.c();s.d();){var a=s.e();if(i!==a){var u,c=t.r3c(),l=null==c?null:c.y36_1;if(null==l)u=null;else{for(var h=Mt(),p=l.c();p.d();){var f=p.e(),_=Ca().w3c(e,f,i,a);null==_||(h.a(_),kt())}u=h}if(null==u);else{for(var d=0,v=0,y=u.c();y.d();)for(var m=y.e().b3a_1.c();m.d();){var g=m.e();g.n39_1>0?v=v+Ue(g.n39_1)|0:g.n39_1<0&&(d=d-Ue(g.n39_1)|0)}o.a(new pa(i,a,d,v))}}}var $,b=o.c();if(b.d()){var w=b.e();if(b.d()){var x=w.y3b_1;do{var k=b.e(),j=k.y3b_1;Ve(x,j)<0&&(w=k,x=j)}while(b.d());n=w}else n=w}else n=null;ea(t,n);var C=o.c();if(C.d()){var z=C.e();if(C.d()){var S=z.z3b_1;do{var q=C.e(),O=q.z3b_1;Ve(S,O)<0&&(z=q,S=O)}while(C.d());$=z}else $=z}else $=null;oa(t,$)}(t)}function la(t,n){return function(){Ys(t,n);try{t.h3b_1.s7(),t.q3a_1.s7(),t.s3a_1.s7(),t.z3a_1.s7();var e=Io().m36(t.e3c(),t.l3c());if(null==e)return en("failed to parse form"),aa(t),Ks(t,""),kt();var o,r=e,i=r.l4(),s=r.m4(),a=r.w35();ta(t,i),t.h3b_1.k1(s),t.s3a_1.x1x(a),a.i(t.l3c())||(Io(),Ws(t,"All"));for(var u=Mt(),c=s.c();c.d();){for(var l=c.e().e36_1,h=Dt(It(l,10)),p=l.c();p.d();){for(var f,_=p.e().h35_1,d=Dt(_.f()),v=_.v().c();v.d();){var y;y=v.e().n2().f(),d.a(y)}f=d,h.a(f)}hn(u,h)}var m=un(u),g=null==(o=m.h()?null:m)?null:Je(o);Qs(t,null==g?-1:g);var $=i.t1_1;if(0===$){var b=function(t){for(var n,e=Wt(t),o=Nt(),r=e.e36_1.c();r.d();){var i=r.e();o.n(i.g35_1,i.i35_1)}n=o;var s=new Yo("📊",e.c36_1,n,"col-lg-12");return new Ko(Ro(t,!0),Ht(s))}(t.h3b_1);Js(t,b),ua(t,b),na(t,"")}else if(1===$){for(var w,x=t.q3a_1,k=t.h3b_1,j=Mt(),C=k.c();C.d();){var z=C.e().d36_1;null==z||(j.a(z),kt())}w=j,x.x1x(cn(w));var S,q=t.q3a_1;t:{for(var O=q.c();O.d();){var P=O.e();if(P===t.p3a_1){S=P;break t}}S=null}var M,A=S,E=null==A?yn(t.q3a_1):A;if(null!=E){for(var I=t.h3b_1,D=Mt(),T=I.c();T.d();){var B=T.e();B.d36_1==E&&D.a(B)}M=D}else M=t.h3b_1;var L=No(M);Js(t,L),ua(t,L),na(t,"ms")}Ks(t,""),kt()}catch(n){if(!(n instanceof Error))throw n;Ke(n);var N,F=n.message;null==F?(Us(),N="Something went wrong!"):N=F,Ks(t,N),aa(t),kt()}return kt()}}function ha(t,n){Us(),this.m3a_1=t,this.n3a_1=n;var e=We();this.o3a_1=$e(e,null,2,null),this.p3a_1=null,this.q3a_1=Xe();Io(),this.r3a_1=$e("All",null,2,null),this.s3a_1=Xe(),this.t3a_1=$e(null,null,2,null),this.u3a_1=$e("",null,2,null),this.v3a_1=$e(!1,null,2,null),this.w3a_1=$e(!1,null,2,null),this.x3a_1=$e(null,null,2,null),this.y3a_1=$e(null,null,2,null),this.z3a_1=Xe(),this.a3b_1=$e(-1,null,2,null),this.b3b_1=Xe(),this.c3b_1=$e(null,null,2,null),this.d3b_1=$e("",null,2,null),this.e3b_1=$e(null,null,2,null),this.f3b_1=$e(null,null,2,null);var o=this.n3a_1.x3c(),r=null==o?new Xo((null==U&&new ba,U).y3c_1,!1,!1):o;this.g3b_1=$e(r,null,2,null),ia(this);var i;i=Mt(),this.h3b_1=i,this.i3b_1=null;var s;s=Gt("\\d{4}-\\d{2}-\\d{2} \\d{2}:\\d{2}:\\d{2}\\.\\d{3}"),this.j3b_1=s;var a;a=Gt("\\d{2}:\\d{2}:\\d{2}\\.\\d{3}"),this.k3b_1=a;var u;u=Gt("^(I|D|E|W|V) "),this.l3b_1=u}function pa(t,n,e,o){this.w3b_1=t,this.x3b_1=n,this.y3b_1=e,this.z3b_1=o,this.a3c_1=0}function fa(){}function _a(){R=this,this.l3d_1="savedBenchmarks"}function da(){return null==R&&new _a,R}function va(){da(),this.m3d_1=0}function ya(){}function ma(){H=this,this.p3d_1="auto_form_input",this.q3d_1="is_test_name_detection_enabled",this.r3d_1="is_auto_group_enabled"}function ga(){return null==H&&new ma,H}function $a(){ga(),this.s3d_1=0}function ba(){U=this,this.y3c_1="- Before 1\n# first line will be treated as title of the block\n special chars will be stripped from the title\nHomeScrollBenchmark_scrollTest\nframeDurationCpuMs P50 40.5, P90 45.8, P95 60.4, P99 80.4\nframeOverrunMs P50 -5.9, P90 7.0, P95 20.1, P99 64.4\nTraces: Iteration 0 1 2 3 4\n\n## Before 2\n# line breaks are used to separate the block\nHomeScrollBenchmark_scrollTest\nframeDurationCpuMs P50 45.5, P90 43.8, P95 58.4, P99 78.4\nframeOverrunMs P50 -6.5, P90 5.4, P95 15.0, P99 60.3\nTraces: Iteration 0 1 2 3 4\n\nAfter 1\nyou can include whatever text you want anywhere you want\nHomeScrollBenchmark_scrollTest\nframeDurationCpuMs P50 13.6, P90 21.8, P95 27.5, P99 49.4\nthe order doesn't matter\nframeOverrunMs P50 -6.2, P90 7.3, P95 19.5, P99 61.7\nTraces: Iteration 0 1 2 3 4\n\n> After 2\nHomeScrollBenchmark_scrollTest\nframeDurationCpuMs P50 13.8, P90 21.9, P95 27.3, P99 53.4\nsee.. am some random text\nframeOverrunMs P50 -5.7, P90 7.4, P95 22.4, P99 63.2\nTraces: Iteration 0 1 2 3 4",this.z3c_1=0}function wa(t){return t.b2w_1=!0,kt()}function xa(){V=this,this.n3d_1=co(null,wa,1,null),this.o3d_1=8}function ka(){return null==V&&new xa,V}function ja(){W=this,this.v3c_1=0}function Ca(){return null==W&&new ja,W}return fo.prototype=Object.create(Error.prototype),fo.prototype.constructor=fo,_o.prototype=Object.create(fo.prototype),_o.prototype.constructor=_o,go.prototype=Object.create(Ot.prototype),go.prototype.constructor=go,bo.prototype=Object.create(Ot.prototype),bo.prototype.constructor=bo,ir.prototype=Object.create(Mn.prototype),ir.prototype.constructor=ir,fo.$metadata$=bt("InvalidDataException",void 0,void 0,void 0,void 0,Error.prototype),_o.$metadata$=bt("InvalidBenchmarkDataException",void 0,void 0,void 0,void 0,fo.prototype),vo.prototype.k35=function(){return this.g35_1},vo.prototype.l35=function(){return this.h35_1},vo.prototype.m35=function(){return this.i35_1},vo.prototype.toString=function(){return"BlockRow(title="+this.g35_1+", fullData="+this.h35_1+")"},vo.prototype.hashCode=function(){var t=Ct(this.g35_1);return J(t,31)+zt(this.h35_1)|0},vo.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof vo))return!1;var n=t instanceof vo?t:St();return this.g35_1===n.g35_1&&!!qt(this.h35_1,n.h35_1)},vo.$metadata$=bt("BlockRow"),go.prototype.l2=function(){return this.p35_1},go.$metadata$=bt("SupportedMetrics",void 0,void 0,void 0,void 0,Ot.prototype),bo.$metadata$=bt("InputType",void 0,void 0,void 0,void 0,Ot.prototype),wo.prototype.l4=function(){return this.s35_1},wo.prototype.m4=function(){return this.t35_1},wo.prototype.w35=function(){return this.u35_1},wo.prototype.toString=function(){return"ResultContainer(inputType="+this.s35_1+", benchmarkResults="+this.t35_1+", focusGroups="+this.u35_1+")"},wo.prototype.hashCode=function(){var t=this.s35_1.hashCode();return t=J(t,31)+zt(this.t35_1)|0,J(t,31)+zt(this.u35_1)|0},wo.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof wo))return!1;var n=t instanceof wo?t:St();return!!this.s35_1.equals(n.s35_1)&&!!qt(this.t35_1,n.t35_1)&&!!qt(this.u35_1,n.u35_1)},wo.$metadata$=bt("ResultContainer"),Eo.prototype.m36=function(t,n){for(var e=Et(t.n36_1,["\n"],!1,0,6,null),o=Pt(e,"\n",null,null,0,null,Mo,30,null),r=Qt(),i=tn("^\\s+",r).ca(o,0),s=Dt(It(i,10)),a=i.c();a.d();){var u,c=a.e();u=Lt(Bt(Tt(c)?c:St())),s.a(u)}for(var l=s,h=Mt(),p=l.c();p.d();){var f=p.e();!nn(f)&&h.a(f)}var _=h;if(en("parsing input..."),_.h())return null;if(function(t){var n=t.n36_1,e=yo(),o=an(e,"|","(",")",0,null,To,24,null);return!Gt(o).fa(n)}(t))return xo(this,_,n);en("parsing machine generated benchmark input...");for(var d=Mt(),v=_.c(),y=0;v.d();){var m=y;y=y+1|0;var g=v.e();en("block: '"+g+"'");for(var $=Et(g,["\n"],!1,0,6,null),b=Dt(It($,10)),w=$.c();w.d();){var x,k=w.e();x=Lt(Bt(Tt(k)?k:St())),b.a(x)}for(var j=b,C=null,z=null,S=Mt(),q=j.c();q.d();){var O=q.e();null==C&&So(this,O)&&(C=O),t.o36_1&&jo(this,O)&&(null!=z&&!S.h()&&(null==C&&(C="benchmark "+m+" "+z),d.a(new Do(C,z,S)),S.s7()),z=O);var P=Oo(O,this);if(en("QuickTag: BenchmarkResult:parse: metric name is "+P),null!=P){var M,A;t:{for(var E=S.c();E.d();){var I=E.e();if(I.g35_1===P){M=I;break t}}M=null}if(null!=M)throw new _o("Two "+P+" found in block "+(m+1|0)+". Expected only one");for(var D=qo(0,P,O),T=Dt(D.f()),B=D.v().c();B.d();){var L,N,F=B.e(),R=F.l2();N=F.n2(),L=on(R,Ht(N)),T.a(L)}A=T,S.a(new vo(P,Ut(A)))}}null==C&&(C="benchmark "+m),C=Co(this,C),!S.h()&&d.a(new Do(C,z,S))}return new wo(Lo(),d,rn("All"))},Eo.$metadata$=sn("Companion"),Do.prototype.k35=function(){return this.c36_1},Do.prototype.r36=function(){return this.d36_1},Do.prototype.s36=function(){return this.e36_1},Do.prototype.toString=function(){return"BenchmarkResult(title="+this.c36_1+", testName="+this.d36_1+", blockRows="+this.e36_1+")"},Do.prototype.hashCode=function(){var t=Ct(this.c36_1);return t=J(t,31)+(null==this.d36_1?0:Ct(this.d36_1))|0,J(t,31)+zt(this.e36_1)|0},Do.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof Do))return!1;var n=t instanceof Do?t:St();return this.c36_1===n.c36_1&&this.d36_1==n.d36_1&&!!qt(this.e36_1,n.e36_1)},Do.$metadata$=bt("BenchmarkResult"),Fo.prototype.w36=function(){return this.t36_1},Fo.prototype.toString=function(){return"GroupMap(autoGroupMap="+this.t36_1+", wordColorMap="+this.u36_1+")"},Fo.prototype.hashCode=function(){var t=zt(this.t36_1);return J(t,31)+zt(this.u36_1)|0},Fo.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof Fo))return!1;var n=t instanceof Fo?t:St();return!!qt(this.t36_1,n.t36_1)&&!!qt(this.u36_1,n.u36_1)},Fo.$metadata$=bt("GroupMap"),Vo.prototype.y35=function(t,n){var e,o=this.x35_1.el(n,0,2,null);if(null!=o){var r=Wt(o.ta());e=Xt(n,r,"",!1,4,null)}else e=n;var i=e,s=Uo(),a=vn(s.gl(i,0,2,null)),u=null==a?null:a.ta(),c=null==u?null:yn(u);if(null==c)return null;var l=c,h=mn(i,l,0,!1,6,null);return new Jo(i.substring(0,h),Zt(l))},Vo.$metadata$=sn("Companion"),Jo.prototype.toString=function(){return"TextNumberLine(text="+this.z35_1+", number="+this.a36_1+")"},Jo.prototype.hashCode=function(){var t=Ct(this.z35_1);return J(t,31)+gn(this.a36_1)|0},Jo.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof Jo))return!1;var n=t instanceof Jo?t:St();return this.z35_1===n.z35_1&&!!qt(this.a36_1,n.a36_1)},Jo.$metadata$=bt("TextNumberLine"),Ko.prototype.a37=function(){return this.x36_1},Ko.prototype.b37=function(){return this.y36_1},Ko.prototype.toString=function(){return"ChartsBundle(groupMap="+this.x36_1+", charts="+this.y36_1+")"},Ko.prototype.hashCode=function(){var t=this.x36_1.hashCode();return J(t,31)+zt(this.y36_1)|0},Ko.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof Ko))return!1;var n=t instanceof Ko?t:St();return!!this.x36_1.equals(n.x36_1)&&!!qt(this.y36_1,n.y36_1)},Ko.$metadata$=bt("ChartsBundle"),Yo.prototype.h37=function(){return this.c37_1},Yo.prototype.i37=function(){return this.d37_1},Yo.prototype.j37=function(){return this.e37_1},Yo.prototype.k37=function(){return this.f37_1},Yo.prototype.toString=function(){return"Chart(emoji="+this.c37_1+", label="+this.d37_1+", dataSets="+this.e37_1+", bsClass="+this.f37_1+")"},Yo.prototype.hashCode=function(){var t=Ct(this.c37_1);return t=J(t,31)+Ct(this.d37_1)|0,t=J(t,31)+zt(this.e37_1)|0,J(t,31)+Ct(this.f37_1)|0},Yo.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof Yo))return!1;var n=t instanceof Yo?t:St();return this.c37_1===n.c37_1&&this.d37_1===n.d37_1&&!!qt(this.e37_1,n.e37_1)&&this.f37_1===n.f37_1},Yo.$metadata$=bt("Chart"),Xo.prototype.l37=function(){return this.n36_1},Xo.prototype.m37=function(){return this.o36_1},Xo.prototype.n37=function(){return this.p36_1},Xo.prototype.o37=function(t,n,e){return new Xo(t,n,e)},Xo.prototype.p37=function(t,n,e,o,r){return 0!=(1&o)&&(t=this.n36_1),0!=(2&o)&&(n=this.o36_1),0!=(4&o)&&(e=this.p36_1),this.o37(t,n,e)},Xo.prototype.toString=function(){return"FormData(data="+this.n36_1+", isTestNameDetectionEnabled="+this.o36_1+", isAutoGroupEnabled="+this.p36_1+")"},Xo.prototype.hashCode=function(){var t=Ct(this.n36_1);return t=J(t,31)+(0|this.o36_1)|0,J(t,31)+(0|this.p36_1)|0},Xo.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof Xo))return!1;var n=t instanceof Xo?t:St();return this.n36_1===n.n36_1&&this.o36_1===n.o36_1&&this.p36_1===n.p36_1},Xo.$metadata$=bt("FormData"),Zo.prototype.q37=function(){return"line"},Zo.$metadata$=sn("Companion"),er.prototype.u37=function(){return this.s37_1},er.prototype.v37=function(){return this.t37_1},er.$metadata$=sn("ComposableSingletons$AutoFormUiKt"),ir.prototype.q1j=function(t,n){var e=this.r1j(t,n);return e.l7_1=kt(),e.m7_1=null,e.q7()},ir.prototype.r7=function(t,n){return this.q1j(null!=t&&En(t,An)?t:St(),n)},ir.prototype.q7=function(){for(this.l7_1;;)try{var t=this.j7_1;if(0===t)return this.k7_1=1,this.e38_1(this.f38_1),kt();if(1===t)throw this.m7_1}catch(t){throw t}},ir.prototype.r1j=function(t,n){var e=new ir(this.e38_1,this.f38_1,n);return e.g38_1=t,e},ir.$metadata$=bt("FormUi$composable$slambda",void 0,void 0,void 0,[1],Mn.prototype),lr.prototype.i38=function(){return this.h38_1},lr.$metadata$=sn("ComposableSingletons$AutoGroupToggleKt"),mr.prototype.ks=function(){this.j38_1.destroy()},mr.$metadata$=bt(void 0,[Qn]),Cr.$metadata$=sn("ComposableSingletons$EditableTitleKt"),Ir.prototype.i38=function(){return this.n38_1},Ir.$metadata$=sn("ComposableSingletons$FocusGroupsKt"),Kr.$metadata$=sn("ComposableSingletons$HeadingKt"),Zr.$metadata$=sn("Companion"),Qr.prototype.u2c=function(){return this.r38_1},Qr.prototype.o2m=function(){return[_e(),_e()]},Qr.prototype.w2c=function(t){var n=this.r38_1,e=!0,o=0,r=0,i=null,s=null,a=t.t2f(n);if(a.h2g())i=a.d2g(n,0),r|=1,s=a.d2g(n,1),r|=2;else for(;e;)switch(o=a.i2g(n)){case-1:e=!1;break;case 0:i=a.d2g(n,0),r|=1;break;case 1:s=a.d2g(n,1),r|=2;break;default:throw de(o)}return a.u2f(n),ni(r,i,s)},Qr.prototype.t38=function(t,n){var e=this.r38_1,o=t.t2f(e);o.f2h(e,0,n.u38_1),o.f2h(e,1,n.v38_1),o.u2f(e)},Qr.prototype.v2c=function(t,n){return this.t38(t,n instanceof ei?n:St())},Qr.$metadata$=sn("$serializer",[ye]),ei.prototype.l2=function(){return this.u38_1},ei.prototype.toString=function(){return"SavedBenchmarkNode(key="+this.u38_1+", value="+this.v38_1+")"},ei.prototype.hashCode=function(){var t=Ct(this.u38_1);return J(t,31)+Ct(this.v38_1)|0},ei.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof ei))return!1;var n=t instanceof ei?t:St();return this.u38_1===n.u38_1&&this.v38_1===n.v38_1},ei.$metadata$=bt("SavedBenchmarkNode",void 0,void 0,{0:ti}),oi.$metadata$=sn("Companion"),ri.prototype.u2c=function(){return this.x38_1},ri.prototype.o2m=function(){return[new ge(ti())]},ri.prototype.w2c=function(t){var n=this.x38_1,e=!0,o=0,r=0,i=null,s=t.t2f(n);if(s.h2g())i=s.f2g(n,0,new ge(ti()),i),r|=1;else for(;e;)switch(o=s.i2g(n)){case-1:e=!1;break;case 0:i=s.f2g(n,0,new ge(ti()),i),r|=1;break;default:throw de(o)}return s.u2f(n),si(r,i)},ri.prototype.z38=function(t,n){var e=this.x38_1,o=t.t2f(e);o.h2h(e,0,new ge(ti()),n.a39_1),o.u2f(e)},ri.prototype.v2c=function(t,n){return this.z38(t,n instanceof ai?n:St())},ri.$metadata$=sn("$serializer",[ye]),ai.prototype.toString=function(){return"SavedBenchmarks(items="+this.a39_1+")"},ai.prototype.hashCode=function(){return zt(this.a39_1)},ai.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof ai))return!1;var n=t instanceof ai?t:St();return!!qt(this.a39_1,n.a39_1)},ai.$metadata$=bt("SavedBenchmarks",void 0,void 0,{0:ii}),fi.prototype.u37=function(){return this.d39_1},fi.prototype.v37=function(){return this.e39_1},fi.prototype.g39=function(){return this.f39_1},fi.$metadata$=sn("ComposableSingletons$SavedBenchmarksDropDownKt"),zi.prototype.s39=function(){return this.h39_1},zi.prototype.h37=function(){return this.i39_1},zi.prototype.t39=function(){return this.j39_1},zi.prototype.i37=function(){return this.k39_1},zi.prototype.u39=function(){return this.l39_1},zi.prototype.v39=function(){return this.m39_1},zi.prototype.w39=function(){return this.n39_1},zi.prototype.x39=function(){return this.o39_1},zi.prototype.y39=function(){return this.p39_1},zi.prototype.z39=function(){return this.q39_1},zi.$metadata$=bt("SummaryNode"),Si.prototype.m1n=function(){return this.b3a_1},Si.prototype.toString=function(){return"Summary(title="+this.a3a_1+", nodes="+this.b3a_1+")"},Si.prototype.hashCode=function(){var t=Ct(this.a3a_1);return J(t,31)+zt(this.b3a_1)|0},Si.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof Si))return!1;var n=t instanceof Si?t:St();return this.a3a_1===n.a3a_1&&!!qt(this.b3a_1,n.b3a_1)},Si.$metadata$=bt("Summary"),Oi.prototype.v1n=function(){var t=qi(this).cloneNode();return t instanceof Element?t:St()},Oi.$metadata$=bt("ElementBuilderImplementation",[Se]),Ei.prototype.v37=function(){return this.h3a_1},Ei.$metadata$=sn("ComposableSingletons$SummaryKt"),us.prototype.i38=function(){return this.i3a_1},us.$metadata$=sn("ComposableSingletons$TestNameDetectionToggleKt"),_s.prototype.i38=function(){return this.j3a_1},_s.$metadata$=sn("ComposableSingletons$TestNamesKt"),ws.$metadata$=sn("ComposableSingletons$MainKt"),ks.prototype.i38=function(){return this.l3a_1},ks.$metadata$=sn("ComposableSingletons$HomePageKt"),Hs.$metadata$=sn("Companion"),ha.prototype.g3c=function(){return Te("savedBenchmarks",1,Qe,(function(t){return t.g3c()}),(function(t,n){return Vs(t,n)})),this.o3a_1.n2()},ha.prototype.a3d=function(){return this.q3a_1},ha.prototype.l3c=function(){return Te("currentFocusedGroup",1,Qe,(function(t){return t.l3c()}),(function(t,n){return Ws(t,n)})),this.r3a_1.n2()},ha.prototype.b3d=function(){return this.s3a_1},ha.prototype.r3c=function(){return Te("chartsBundle",1,Qe,(function(t){return t.r3c()}),(function(t,n){return Js(t,n)})),this.t3a_1.n2()},ha.prototype.s3c=function(){return Te("errorMsg",1,Qe,(function(t){return t.s3c()}),(function(t,n){return Ks(t,n)})),this.u3a_1.n2()},ha.prototype.q3c=function(){return Te("isEditableTitleEnabled",1,Qe,(function(t){return t.q3c()}),(function(t,n){return Gs(t,n)})),this.v3a_1.n2()},ha.prototype.f3c=function(){return Te("shouldSelectUnsaved",1,Qe,(function(t){return t.f3c()}),(function(t,n){return Ys(t,n)})),this.w3a_1.n2()},ha.prototype.c3c=function(){return Te("selectedBlockNameOne",1,Qe,(function(t){return t.c3c()}),(function(t,n){return Xs(t,n)})),this.x3a_1.n2()},ha.prototype.d3c=function(){return Te("selectedBlockNameTwo",1,Qe,(function(t){return t.d3c()}),(function(t,n){return Zs(t,n)})),this.y3a_1.n2()},ha.prototype.c3d=function(){return this.z3a_1},ha.prototype.h3c=function(){return Te("avgOfCount",1,Qe,(function(t){return t.h3c()}),(function(t,n){return Qs(t,n)})),this.a3b_1.n2()},ha.prototype.d3d=function(){return this.b3b_1},ha.prototype.o3c=function(){return Te("inputType",1,Qe,(function(t){return t.o3c()}),(function(t,n){return ta(t,n)})),this.c3b_1.n2()},ha.prototype.r28=function(){return Te("unit",1,Qe,(function(t){return t.r28()}),(function(t,n){return na(t,n)})),this.d3b_1.n2()},ha.prototype.v3b=function(){return Te("bestAggSummary",1,Qe,(function(t){return t.v3b()}),(function(t,n){return ea(t,n)})),this.e3b_1.n2()},ha.prototype.b3c=function(){return Te("worstAggSummary",1,Qe,(function(t){return t.b3c()}),(function(t,n){return oa(t,n)})),this.f3b_1.n2()},ha.prototype.e3c=function(){return Te("form",1,Qe,(function(t){return t.e3c()}),(function(t,n){return ra(t,n)})),this.g3b_1.n2()},ha.prototype.e3d=function(t,n){var e,o=this.i3b_1;null==o||(clearTimeout(o),kt()),this.i3b_1=setTimeout((e=t,function(){return e(),kt()}),n)},ha.prototype.f3d=function(t,n){var e=sa(this,t.n36_1);ra(this,t.p37(e,!1,!1,6,null)),this.n3a_1.g3d(this.e3c()),this.e3d(la(this,n),300)},ha.prototype.m3b=function(t,n,e,o){return 0!=(2&e)&&(n=!0),this.f3d(t,n)},ha.prototype.n3c=function(t){try{var n;if(this.p3a_1=t,null!=this.p3a_1){for(var e=this.h3b_1,o=Mt(),r=e.c();r.d();){var i=r.e();i.d36_1==this.p3a_1&&o.a(i)}n=o}else n=this.h3b_1;Js(this,No(n)),ca(this),Ks(this,"")}catch(t){if(!(t instanceof Error))throw t;this.b3b_1.s7(),Ke(t);var s,a=t.message;null==a?(Us(),s="Something went wrong!"):s=a,Ks(this,s)}},ha.prototype.k3c=function(t){Ws(this,t);var n=this.e3c();this.m3b(n,!1,2,null)},ha.prototype.i3c=function(){Gs(this,!0)},ha.prototype.j3c=function(){var t=this.e3c().p37(null,!1,!this.e3c().p36_1,3,null);this.m3b(t,!1,2,null)},ha.prototype.m3c=function(){var t=this.e3c(),n=!this.e3c().o36_1,e=t.p37(null,n,!1,5,null);this.m3b(e,!1,2,null)},ha.prototype.n3b=function(t){var n,e=window.prompt("Name: ");if(null==e||nn(e))return kt();t:{for(var o=this.g3c().c();o.d();){var r=o.e();if(r.u38_1===e){n=r;break t}}n=null}if(null!=n)return window.alert("Bruhh.. "+e+" exists! Try something else"),kt();var i=Ze(this.g3c());i.zf(0,new ei(e,t.n36_1));var s=i;this.m3a_1.h3d(s),Ys(this,!1),ia(this)},ha.prototype.p3b=function(t){var n=this.e3c().p37(t.v38_1,!1,!1,6,null);this.f3d(n,!1)},ha.prototype.q3b=function(t){window.confirm("Do you want to delete `"+t.u38_1+"` ?")&&(this.m3a_1.i3d(t),Ys(this,!0),ia(this))},ha.prototype.o3b=function(t){if(Ys(this,t===ui()),this.f3c()){var n=this.n3a_1.x3c(),e=null==n?this.e3c():n;this.f3d(e,!1)}},ha.prototype.t3b=function(t){Xs(this,t),ca(this)},ha.prototype.u3b=function(t){Zs(this,t),ca(this)},ha.prototype.r3b=function(){var t=this.v3b();Xs(this,null==t?null:t.w3b_1);var n=this.v3b();Zs(this,null==n?null:n.x3b_1),ca(this)},ha.prototype.s3b=function(){var t=this.b3c();Xs(this,null==t?null:t.w3b_1);var n=this.b3c();Zs(this,null==n?null:n.x3b_1),ca(this)},ha.prototype.p3c=function(t){this.s3a_1.m3(t)&&this.k3c(t)},ha.$metadata$=bt("HomeViewModel"),pa.prototype.j3d=function(){return this.y3b_1},pa.prototype.k3d=function(){return this.z3b_1},pa.prototype.toString=function(){return"AggSummary(blockOneName="+this.w3b_1+", blockTwoName="+this.x3b_1+", sumOfGreen="+this.y3b_1+", sumOfRed="+this.z3b_1+")"},pa.prototype.hashCode=function(){var t=Ct(this.w3b_1);return t=J(t,31)+Ct(this.x3b_1)|0,t=J(t,31)+this.y3b_1|0,J(t,31)+this.z3b_1|0},pa.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof pa))return!1;var n=t instanceof pa?t:St();return this.w3b_1===n.w3b_1&&this.x3b_1===n.x3b_1&&this.y3b_1===n.y3b_1&&this.z3b_1===n.z3b_1},pa.$metadata$=bt("AggSummary"),fa.$metadata$=to("BenchmarkRepo"),_a.$metadata$=sn("Companion"),va.prototype.u3c=function(){var t=window.localStorage;da();var n,e=t.getItem("savedBenchmarks");if(null==e)n=new ai(We());else{var o;en("JSON is '"+e+"'");try{var r,i=ka().n3d_1,s=i.o2d(),a=ro(s,oo(no(ai),eo([]),!1));r=En(a,io)?a:St(),o=i.n2d(r,e)}catch(t){var u;if(!(t instanceof so))throw t;Ke(t),u=We(),this.h3d(u),o=new ai(We())}n=o}return Jt(n.a39_1)},va.prototype.h3d=function(t){var n,e=ka().n3d_1,o=new ai(t),r=e.o2d(),i=ro(r,oo(no(ai),eo([]),!1));n=En(i,io)?i:St();var s=e.m2d(n,o),a=window.localStorage;da(),a.setItem("savedBenchmarks",s)},va.prototype.i3d=function(t){var n,e=Ze(this.u3c());ao(e,(n=t,function(t){return t.u38_1===n.u38_1}));var o=e;this.h3d(o)},va.$metadata$=bt("BenchmarkRepoImpl",[fa]),ya.$metadata$=to("FormRepo"),ma.$metadata$=sn("Companion"),$a.prototype.g3d=function(t){var n=window.localStorage;ga(),n.setItem("auto_form_input",t.n36_1),ga(),n.setItem("is_test_name_detection_enabled",t.o36_1.toString()),ga(),n.setItem("is_auto_group_enabled",t.p36_1.toString())},$a.prototype.x3c=function(){var t=window.localStorage;ga();var n=t.getItem("auto_form_input");if(null==n)return null;var e=n;ga();var o=uo(t.getItem("is_test_name_detection_enabled"));return ga(),new Xo(e,o,uo(t.getItem("is_auto_group_enabled")))},$a.$metadata$=bt("FormRepoImpl",[ya]),ba.$metadata$=sn("DefaultValues"),xa.$metadata$=sn("JsonUtils"),ja.prototype.w3c=function(t,n,e,o){if(null==e||null==o)return en("blank block name detected. skipping summary"),null;var r=Nt(),i=lo([e,o]);en("words : "+i);for(var s=i.c();s.d();){for(var a=s.e(),u=n.e37_1,c=Nt(),l=u.v().c();l.d();){var h=l.e(),p=h.l2();Yt(p,a,!1,2,null)&&c.n(h.l2(),h.n2())}for(var f=c.d3(),_=Dt(It(f,10)),d=f.c();d.d();){var v,y=d.e();v=ho(y.d3()),_.a(v)}var m=_,g=Mt(),$=po(n.e37_1.d3()).f(),b=0;if(b<$)do{b=b+1|0,g.a(0)}while(b<$);for(var w=g,x=m.c();x.d();){var k=x.e(),j=0,C=w.f()-1|0;if(j<=C)do{var z=j;j=j+1|0,w.p4(z,w.g(z)+k[z])}while(j<=C)}var S=0,q=w.f()-1|0;if(S<=q)do{var O=S;S=S+1|0,w.p4(O,w.g(O)/m.f())}while(S<=q);var P=w;r.n(a,P)}for(var M=Dt(r.f()),A=r.v().c();A.d();){var E,I=A.e();E=Jt(I.n2()),M.a(E)}en("combinedMap : "+M);var D=Mt(),T=Jt(po(n.e37_1.d3()).c3());en("segments: "+T);var B,L=T.f(),N=0;if(N after: '"+V+"'");var G,Y=""+(V-K).toFixed(2),X=Zt(Y),Z=""+((K-V)/K*100).toFixed(2),Q=Zt(Z),tt=Math.abs(Q),nt=X>0?"worse":"better",et=X>0?"+":"",ot=X>0?"❌":"✅",rt=i.g(1),it=""+V.toFixed(2),st=Zt(it),at=""+K.toFixed(2);G=Zt(at),D.a(new zi(t,ot,R,rt,tt,nt,X,et,st,G))}while(N>>0,o=arguments[1],r=o>>0,i=r<0?Math.max(e+r,0):Math.min(r,e),s=arguments[2],a=void 0===s?e:s>>0,u=a<0?Math.max(e+a,0):Math.min(a,e);i>>0;return 0===n?32:31-(r(n)/i|0)|0})),void 0===String.prototype.startsWith&&Object.defineProperty(String.prototype,"startsWith",{value:function(t,n){return n=n||0,this.lastIndexOf(t,n)===n}}),void 0===Math.imul&&(Math.imul=function(t,n){return(4294901760&t)*(65535&n)+(65535&t)*(0|n)|0}),void 0===(o="function"==typeof(e=function(t){"use strict";var n,e,o,r,i,s,a,u,c,l,h,p,f,_,d,v,y,m,g,$,b,w,x,k,j,C,z,S,q,O,P,M,A,E,I,D,T,B,L,N,F,R,H,U,V,W,J,K,G,Y,X,Z,Q,tt,nt,et,ot,rt,it,st,at,ut,ct,lt,ht,pt,ft,_t,dt,vt,yt,mt,gt,$t,bt,wt,xt,kt,jt,Ct,zt,St,qt,Ot,Pt,Mt,At,Et,It=Math.imul,Dt=Math.clz32,Tt=ArrayBuffer.isView;function Bt(t){return t===Qe()?this:t.f8(this,Ye)}function Lt(t){return Nl(this.l2(),t)?Th(this,Ge)?this:Jl():null}function Nt(t,n){return n(t,this)}function Ft(t){return Nl(this.l2(),t)?Qe():this}function Rt(t,n){if(null==n){var e=0,o=t.length-1|0;if(e<=o)do{var r=e;if(e=e+1|0,null==t[r])return r}while(e<=o)}else{var i=0,s=t.length-1|0;if(i<=s)do{var a=i;if(i=i+1|0,Nl(n,t[a]))return a}while(i<=s)}return-1}function Ht(t,n){if(null==n){var e=t.length-1|0;if(0<=e)do{var o=e;if(e=e+-1|0,null==t[o])return o}while(0<=e)}else{var r=t.length-1|0;if(0<=r)do{var i=r;if(r=r+-1|0,Nl(n,t[i]))return i}while(0<=r)}return-1}function Ut(t,n,e,o,r,i,s){return function(t,n,e,o,r,i,s,a){n.b(o);var u=0,c=t,l=0,h=c.length;t:for(;l1&&n.b(e),!(i<0||u<=i))break t;To(n,p,a)}return i>=0&&u>i&&n.b(s),n.b(r),n}(t,rc(),n,e,o,r,i,s).toString()}function Vt(t,n,e,o,r,i,s,a,u){return 0!=(1&a)&&(n=", "),0!=(2&a)&&(e=""),0!=(4&a)&&(o=""),0!=(8&a)&&(r=-1),0!=(16&a)&&(i="..."),0!=(32&a)&&(s=null),Ut(t,n,e,o,r,i,s)}function Wt(t){return t.length-1|0}function Jt(t,n){for(var e=t,o=0,r=e.length;o=0}function Gt(t,n){return function(t,n){var e=0,o=t.length-1|0;if(e<=o)do{var r=e;if(e=e+1|0,n===t[r])return r}while(e<=o);return-1}(t,n)>=0}function Yt(t,n){return function(t,n){var e=0,o=t.length-1|0;if(e<=o)do{var r=e;if(e=e+1|0,n===t[r])return r}while(e<=o);return-1}(t,n)>=0}function Xt(t,n){return function(t,n){var e=0,o=t.length-1|0;if(e<=o)do{var r=e;if(e=e+1|0,n===t[r])return r}while(e<=o);return-1}(t,n)>=0}function Zt(t){if(Th(t,hl)){var n;switch(t.f()){case 0:n=Kn();break;case 1:n=Js(Th(t,el)?t.g(0):t.c().e());break;default:n=Qt(t)}return n}return Yn(rn(t))}function Qt(t){return da(t)}function tn(t){if(t.h())throw Rp("List is empty.");return t.g(0)}function nn(t,n){return Th(t,hl)?t.i(n):function(t,n){if(Th(t,el))return t.j(n);for(var e=0,o=t.c();o.d();){var r=o.e();if(Ys(e),Nl(n,r))return e;e=e+1|0}return-1}(t,n)>=0}function en(t,n,e,o,r,i,s,a,u){return 0!=(1&a)&&(n=", "),0!=(2&a)&&(e=""),0!=(4&a)&&(o=""),0!=(8&a)&&(r=-1),0!=(16&a)&&(i="..."),0!=(32&a)&&(s=null),function(t,n,e,o,r,i,s){return sn(t,rc(),n,e,o,r,i,s).toString()}(t,n,e,o,r,i,s)}function on(t){if(Th(t,hl)){var n;switch(t.f()){case 0:n=Ee();break;case 1:n=Ws(Th(t,el)?t.g(0):t.c().e());break;default:n=an(t,Za(t.f()))}return n}return function(t){switch(t.f()){case 0:return Ee();case 1:return Ws(t.c().e());default:return t}}(an(t,Ya()))}function rn(t){return Th(t,hl)?Qt(t):an(t,fa())}function sn(t,n,e,o,r,i,s,a){n.b(o);var u=0,c=t.c();t:for(;c.d();){var l=c.e();if((u=u+1|0)>1&&n.b(e),!(i<0||u<=i))break t;To(n,l,a)}return i>=0&&u>i&&n.b(s),n.b(r),n}function an(t,n){for(var e=t.c();e.d();){var o=e.e();n.a(o)}return n}function un(t){if(Th(t,el))return function(t){var n;switch(t.f()){case 0:throw Rp("List is empty.");case 1:n=t.g(0);break;default:throw Mp("List has more than one element.")}return n}(t);var n=t.c();if(!n.d())throw Rp("Collection is empty.");var e=n.e();if(n.d())throw Mp("Collection has more than one element.");return e}function cn(t){this.s_1=t}function ln(t){this.u_1=t}function hn(t){var n=Xc(t).toUpperCase();if(n.length>1){var e;if(Nl(new tl(t),new tl(329)))e=n;else{var o=Ol(n,0),r=n.substring(1).toLowerCase();e=Xc(o)+r}return e}return Xc(function(t){return function(t){var n=Yc(t);return 452<=n&&n<=460||497<=n&&n<=499?zh(It(3,(n+1|0)/3|0)):4304<=n&&n<=4346||4349<=n&&n<=4351?t:sc(t)}(t)}(t))}function pn(t,n){return n<=Bs().x_1?wo().w_1:qh(t,n-1|0)}function fn(t,n,e){if(n.d1(e)>0)throw Mp("Cannot coerce value to an empty range: maximum "+Ll(e)+" is less than minimum "+Ll(n)+".");return t.d1(n)<0?n:t.d1(e)>0?e:t}function _n(t,n){return qo().e1(t,n,-1)}function dn(t,n){return t>n?n:t}function vn(t,n){return t=0))throw Mp(Ll("Requested element count "+n+" is less than zero."));return 0===n?Me():Th(t,Se)?t.i1(n):new Oe(t,n)}function gn(t){return Yn(function(t){return function(t,n){for(var e=t.c();e.d();){var o=e.e();n.a(o)}return n}(t,fa())}(t))}function $n(t){this.j1_1=t}function bn(t,n){if(!(n>=0))throw Mp(Ll("Requested character count "+n+" is less than zero."));return function(t,n){if(!(n>=0))throw Mp(Ll("Requested character count "+n+" is less than zero."));var e=dn(n,t.length);return t.substring(0,e)}(t,vn(t.length-n|0,0))}function wn(t,n){if(!(n>=0))throw Mp(Ll("Requested character count "+n+" is less than zero."));var e=dn(n,t.length);return t.substring(e)}function xn(){Hl(this,xn)}function kn(){}function jn(){this.p1_1=qn(),this.q1_1=null}function Cn(){if(i)return Es();i=!0,n=new zn("Ready",0),e=new zn("NotReady",1),o=new zn("Done",2),r=new zn("Failed",3)}function zn(t,n){_l.call(this,t,n)}function Sn(){return Cn(),n}function qn(){return Cn(),e}function On(){return Cn(),r}function Pn(t){this.z1_1=t,this.y1_1=0}function Mn(t,n){this.c2_1=t,Pn.call(this,t),En().d2(n,this.c2_1.f()),this.y1_1=n}function An(){s=this}function En(){return null==s&&new An,s}function In(){En(),kn.call(this)}function Dn(t){this.k2_1=t}function Tn(t){this.m2_1=t}function Bn(t,n){return n===t?"(this Map)":dl(n)}function Ln(t,n){var e;t:{for(var o=t.v().c();o.d();){var r=o.e();if(Nl(r.l2(),n)){e=r;break t}}e=null}return e}function Nn(){a=this}function Fn(){return null==a&&new Nn,a}function Rn(t){this.r2_1=t,Jn.call(this)}function Hn(t){this.x2_1=t,kn.call(this)}function Un(){Fn(),this.t2_1=null,this.u2_1=null}function Vn(){u=this}function Wn(){return null==u&&new Vn,u}function Jn(){Wn(),kn.call(this)}function Kn(){return Qn()}function Gn(t){return 0===t.length?fa():da(new te(t,!0))}function Yn(t){switch(t.f()){case 0:return Kn();case 1:return Js(t.g(0));default:return t}}function Xn(t){return t.f()-1|0}function Zn(){c=this,this.g3_1=new Zl(-1478467534,-1720727600)}function Qn(){return null==c&&new Zn,c}function te(t,n){this.k3_1=t,this.l3_1=n}function ne(){l=this}function ee(){return null==l&&new ne,l}function oe(t,n){this.o3_1=t,this.p3_1=n}function re(t,n){return Th(t,hl)?t.f():n}function ie(t){this.r3_1=t}function se(t){this.s3_1=t}function ae(t){this.t3_1=t,this.u3_1=0}function ue(){}function ce(){var t=(null==h&&new le,h);return Th(t,cl)?t:Jl()}function le(){h=this,this.g4_1=new Zl(-888910638,1920087921)}function he(t,n){return function(t,n){for(var e=n.c();e.d();){var o=e.e(),r=o.l4(),i=o.m4();t.n(r,i)}}(n,t),n}function pe(t,n){for(var e=n,o=0,r=e.length;o=0))throw Mp(Ll("count must be non-negative, but was "+this.p5_1+"."))}function Pe(){p=this}function Me(){return null==p&&new Pe,p}function Ae(t){this.q5_1=t}function Ee(){return De()}function Ie(){f=this,this.r5_1=new Zl(1993859828,793161749)}function De(){return null==f&&new Ie,f}function Te(t){return function(t,n){var e;return e=yl(Array(t),null),Le.call(n,e,0),n}(t,Object.create(Le.prototype))}function Be(t){this.w5_1=t,jn.call(this),this.u5_1=t.a6_1,this.v5_1=t.z5_1}function Le(t,n){if(In.call(this),this.x5_1=t,!(n>=0))throw Mp(Ll("ring buffer filled size should not be negative but it is "+n));if(!(n<=this.x5_1.length))throw Mp(Ll("ring buffer filled size: "+n+" cannot be larger than the buffer size: "+this.x5_1.length));this.y5_1=this.x5_1.length,this.z5_1=0,this.a6_1=n}function Ne(t,n,e,o,r,i){this.p6_1=t,this.q6_1=n,this.r6_1=e,this.s6_1=o,this.t6_1=r,gp.call(this,i)}function Fe(){var t=(null==_&&new Re,_);return Th(t,Vs)?t:Jl()}function Re(){_=this}function He(t){this.w7_1=t}function Ue(){}function Ve(){d=this}function We(){return null==d&&new Ve,d}function Je(){}function Ke(){}function Ge(){}function Ye(t,n){var e,o=t.e8(n.l2());if(o===Qe())e=n;else{var r,i=o.z7(We());if(null==i)r=new oo(o,n);else{var s=o.e8(We());r=s===Qe()?new oo(n,i):new oo(new oo(s,n),i)}e=r}return e}function Xe(){}function Ze(){v=this,this.h8_1=new Zl(0,0)}function Qe(){return null==v&&new Ze,v}function to(t){for(var n=t,e=2;;){var o=n.i8_1,r=o instanceof oo?o:null;if(null==r)return e;n=r,e=e+1|0}}function no(t,n){return Nl(t.z7(n.l2()),n)}function eo(t,n){return 0===Ml(t)?Ll(n):t+", "+n}function oo(t,n){this.i8_1=t,this.j8_1=n}function ro(t,n){this.a8_1=n;var e;e=t instanceof ro?t.b8_1:t,this.b8_1=e}function io(t){this.k8_1=t}function so(){return ao(),y}function ao(){if($)return Es();$=!0,y=new uo("COROUTINE_SUSPENDED",0),m=new uo("UNDECIDED",1),g=new uo("RESUMED",2)}function uo(t,n){_l.call(this,t,n)}function co(){return ao(),m}function lo(){return ao(),g}function ho(t,n,e){var o;if(e>0)o=t>=n?n:n-po(n,t,e)|0;else{if(!(e<0))throw Mp("Step is zero.");o=t<=n?n:n+po(t,n,0|-e)|0}return o}function po(t,n,e){return fo(fo(t,e)-fo(n,e)|0,e)}function fo(t,n){var e=t%n|0;return e>=0?e:e+n|0}function _o(){var t;b=this,yo.call(this),this.l8_1=(Y||(Y=!0,Math.pow(2,-26),Math.pow(2,-53)),t=Math.random()*Math.pow(2,32)|0,function(t,n,e){return $o.call(e,t,n,0,0,~t,t<<10^(n>>>4|0)),e}(t,t>>31,Object.create($o.prototype)))}function vo(){return null==b&&new _o,b}function yo(){vo()}function mo(t,n){if(!(n>t))throw Mp(Ll(function(t,n){return"Random range is empty: ["+Ll(t)+", "+Ll(n)+")."}(t,n)))}function go(){w=this,this.r8_1=new Zl(0,0)}function $o(t,n,e,o,r,i){if(null==w&&new go,yo.call(this),this.s8_1=t,this.t8_1=n,this.u8_1=e,this.v8_1=o,this.w8_1=r,this.x8_1=i,0==(this.s8_1|this.t8_1|this.u8_1|this.v8_1|this.w8_1))throw Mp(Ll("Initial state must have at least one non-zero element."));var s=0;if(s<64)do{s=s+1|0,this.q4()}while(s<64)}function bo(){x=this,this.w_1=new xo(1,0)}function wo(){return null==x&&new bo,x}function xo(t,n){wo(),Oo.call(this,t,n,1)}function ko(){k=this,this.b9_1=new jo(1,0)}function jo(t,n){null==k&&new ko,Mo.call(this,t,n,1)}function Co(t,n,e){de.call(this),this.j9_1=e,this.k9_1=n,this.l9_1=this.j9_1>0?t<=n:t>=n,this.m9_1=this.l9_1?t:this.k9_1}function zo(t,n,e){ve.call(this),this.n9_1=e;var o;o=Yc(n),this.o9_1=o,this.p9_1=this.n9_1>0?Kc(t,n)<=0:Kc(t,n)>=0;var r;r=this.p9_1?Yc(t):this.o9_1,this.q9_1=r}function So(){j=this}function qo(){return null==j&&new So,j}function Oo(t,n,e){if(qo(),0===e)throw Mp("Step must be non-zero.");if(e===Bs().x_1)throw Mp("Step must be greater than Int.MIN_VALUE to avoid overflow on negation.");this.f1_1=t,this.g1_1=ho(t,n,e),this.h1_1=e}function Po(){C=this}function Mo(t,n,e){if(null==C&&new Po,0===e)throw Mp("Step must be non-zero.");if(e===Bs().x_1)throw Mp("Step must be greater than Int.MIN_VALUE to avoid overflow on negation.");this.g9_1=t;var o,r=Yc(t);o=Yc(n),this.h9_1=zh(ho(r,o,e)),this.i9_1=e}function Ao(){}function Eo(){}function Io(){}function Do(){}function To(t,n,e){null!=e?t.b(e(n)):null==n||Kh(n)?t.b(n):n instanceof tl?t.r9(n.l1_1):t.b(dl(n))}function Bo(t,n,e){if(Nl(new tl(t),new tl(n)))return!0;if(!e)return!1;var o=sc(t),r=sc(n);return!!Nl(new tl(o),new tl(r))||Nl(new tl(Ol(Xc(o).toLowerCase(),0)),new tl(Ol(Xc(r).toLowerCase(),0)))}function Lo(t){var n;t:{var e=0,o=Ml(t)-1|0;if(e<=o)do{var r=e;if(e=e+1|0,!ac(Ol(t,r))){n=r;break t}}while(e<=o);n=-1}var i=n;return-1===i?t.length:i}function No(t){return t}function Fo(t){return function(t,n){uc(n);var e,o,r,i=t.length;if(0===i)return null;var s=Ol(t,0);if(Kc(s,48)<0){if(1===i)return null;if(e=1,Nl(new tl(s),new tl(45)))o=!0,Xl(),r=new Zl(0,-2147483648);else{if(!Nl(new tl(s),new tl(43)))return null;o=!1,Xl(),r=new Zl(-1,2147483647).s9()}}else e=0,o=!1,Xl(),r=new Zl(-1,2147483647).s9();Xl();var a=new Zl(-1,2147483647).s9().t9(new Zl(36,0)),u=a,c=new Zl(0,0),l=e;if(l0,u=_a(a?dn(o,10):10);t:do{var c;if(c=Ll(Al(t,r,i)),u.a(c),r=i+n.length|0,a&&u.f()===(o-1|0))break t;i=Ko(t,n,r,e)}while(-1!==i);return s=Ll(Al(t,r,Ml(t))),u.a(s),u}(t,r,e,o)}for(var i=function(t){return new $n(t)}(ir(t,n,0,e,o,2)),s=_a(re(i,10)),a=i.c();a.d();){var u;u=or(t,a.e()),s.a(u)}return s}function Wo(t,n,e,o,r,i){return 0!=(2&r)&&(e=Xo(t)),0!=(4&r)&&(o=!1),function(t,n,e,o){return o||"string"!=typeof t?sr(t,n,e,0,o,!0):t.lastIndexOf(n,e)}(t,n,e,o)}function Jo(t,n,e){return"string"==typeof n?Go(t,n,0,e,2)>=0:ar(t,n,0,Ml(t),e,!1,16)>=0}function Ko(t,n,e,o){return o||"string"!=typeof t?ar(t,n,e,Ml(t),o,!1,16):t.indexOf(n,e)}function Go(t,n,e,o,r,i){return 0!=(2&r)&&(e=0),0!=(4&r)&&(o=!1),Ko(t,n,e,o)}function Yo(t){return function(t,n,e,o,r,i){return 0!=(2&r)&&(e=!1),0!=(4&r)&&(o=0),function(t,n,e,o){return yn(ir(t,n,0,e,o,2),(r=t,function(t){return or(r,t)}));var r}(t,n,e,o)}(t,["\r\n","\n","\r"],!1,0,6)}function Xo(t){return Ml(t)-1|0}function Zo(t,n,e){return Ll(function(t,n,e){if(n<0)throw Mp("Desired length "+n+" is less than zero.");if(n<=Ml(t))return Al(t,0,Ml(t));var o=ec(n),r=1,i=n-Ml(t)|0;if(r<=i)do{var s=r;r=r+1|0,o.r9(e)}while(s!==i);return o.b(t),o}(Kh(t)?t:Jl(),n,e))}function Qo(t,n,e,o,r){return 0!=(2&o)&&(e=!1),function(t,n,e){return Ml(t)>0&&Bo(Ol(t,0),n,e)}(t,n,e)}function tr(t,n,e,o,r){return 0!=(2&o)&&(e=!1),function(t,n,e){return er(t,n,0,e,2)>=0}(t,n,e)}function nr(t,n,e,o){var r,i;if(o||"string"!=typeof t)r=function(t,n,e,o){if(!o&&1===n.length&&"string"==typeof t){var r=t,i=Xc(function(t){var n;switch(t.length){case 0:throw Rp("Array is empty.");case 1:n=t[0];break;default:throw Mp("Array has more than one element.")}return n}(n));return r.indexOf(i,e)}var s=vn(e,0),a=Xo(t);if(s<=a)do{var u=s;s=s+1|0;var c,l=Ol(t,u);t:{for(var h=n,p=0,f=h.length;p0&&u<=c||l<0&&c<=u)do{var h,p=u;u=u+l|0;t:{for(var f=n.c();f.d();){var _=f.e();if(Mc(_,0,t,p,_.length,o)){h=_;break t}}h=null}if(null!=h)return vi(p,h)}while(p!==c)}else{var d=a.f1_1,v=a.g1_1,y=a.h1_1;if(y>0&&d<=v||y<0&&v<=d)do{var m,g=d;d=d+y|0;t:{for(var $=n.c();$.d();){var b=$.e();if(pr(b,0,t,g,b.length,o)){m=b;break t}}m=null}if(null!=m)return vi(g,m)}while(g!==v)}return null}(t,i,n,s,!1);return null==e?null:vi(e.j4_1,e.k4_1.length)}));var i,s}function ir(t,n,e,o,r,i,s){return 0!=(2&i)&&(e=0),0!=(4&i)&&(o=!1),0!=(8&i)&&(r=0),rr(t,n,e,o,r)}function sr(t,n,e,o,r,i){var s=i?_n(dn(e,Xo(t)),vn(o,0)):qh(vn(e,0),dn(o,Ml(t)));if("string"==typeof t&&"string"==typeof n){var a=s.f1_1,u=s.g1_1,c=s.h1_1;if(c>0&&a<=u||c<0&&u<=a)do{var l=a;if(a=a+c|0,Mc(n,0,t,l,Ml(n),r))return l}while(l!==u)}else{var h=s.f1_1,p=s.g1_1,f=s.h1_1;if(f>0&&h<=p||f<0&&p<=h)do{var _=h;if(h=h+f|0,pr(n,0,t,_,Ml(n),r))return _}while(_!==p)}return-1}function ar(t,n,e,o,r,i,s,a){return 0!=(16&s)&&(i=!1),sr(t,n,e,o,r,i)}function ur(t){if(!(t>=0))throw Mp(Ll("Limit must be non-negative, but was "+t))}function cr(t){if(t.ja_1<0)t.ha_1=0,t.ka_1=null;else{var n;if(t.ma_1.pa_1>0){var e=t;e.la_1=e.la_1+1|0,n=e.la_1>=t.ma_1.pa_1}else n=!1;if(n||t.ja_1>Ml(t.ma_1.na_1))t.ka_1=qh(t.ia_1,Xo(t.ma_1.na_1)),t.ja_1=-1;else{var o=t.ma_1.qa_1(t.ma_1.na_1,t.ja_1);if(null==o)t.ka_1=qh(t.ia_1,Xo(t.ma_1.na_1)),t.ja_1=-1;else{var r=o,i=r.l4(),s=r.m4();t.ka_1=pn(t.ia_1,i),t.ia_1=i+s|0,t.ja_1=t.ia_1+(0===s?1:0)|0}}t.ha_1=1}}function lr(t){this.ma_1=t,this.ha_1=-1,this.ia_1=function(t,n,e){if(n>e)throw Mp("Cannot coerce value to an empty range: maximum "+e+" is less than minimum "+n+".");return te?e:t}(t.oa_1,0,Ml(t.na_1)),this.ja_1=this.ia_1,this.ka_1=null,this.la_1=0}function hr(t,n,e,o){this.na_1=t,this.oa_1=n,this.pa_1=e,this.qa_1=o}function pr(t,n,e,o,r,i){if(o<0||n<0||n>(Ml(t)-r|0)||o>(Ml(e)-r|0))return!1;var s=0;if(s=0)return t;throw Mp("Summing infinite durations of different signs yields an undefined result.")}if(Cr(n))return n;var e,o,r;if((1&t.wa())==(1&n.wa())){var i=yr(t).v9(yr(n));e=mr(t)?(o=i,r=new Zl(387905,-1073741824),o.d1(new Zl(-387905,1073741823))<=0&&r.d1(o)<=0?Ur(o):Br(Rr(o))):Fr(i)}else e=gr(t)?kr(0,yr(t),yr(n)):kr(0,yr(n),yr(t));return e}function kr(t,n,e){var o,r=Rr(e),i=n.v9(r),s=new Zl(1108857478,-1074);if(i.d1(new Zl(-1108857478,1073))<=0&&s.d1(i)<=0){var a=e.w9(Hr(r));o=Ur(Hr(i).v9(a))}else o=Br(fn(i,new Zl(1,-1073741824),new Zl(-1,1073741823)));return o}function jr(t){return t.d1(new Zl(0,0))<0}function Cr(t){return!!t.equals(br().ya_1)||t.equals(br().za_1)}function zr(t){return jr(t)?wr(t):t}function Sr(t,n){var e=t.bb(n);if(e.d1(new Zl(0,0))<0||0==(1&e.wa()))return t.d1(n);var o=(1&t.wa())-(1&n.wa())|0;return jr(t)?0|-o:o}function qr(t){return Cr(t)?0:function(t){return Mr(t,Uc())}(t).db(new Zl(60,0)).wa()}function Or(t){return Cr(t)?0:function(t){return Mr(t,Hc())}(t).db(new Zl(60,0)).wa()}function Pr(t){return Cr(t)?0:gr(t)?Hr(yr(t).db(new Zl(1e3,0))).wa():yr(t).db(new Zl(1e9,0)).wa()}function Mr(t,n){var e,o=t;return o.equals(br().ya_1)?(Xl(),e=new Zl(-1,2147483647)):o.equals(br().za_1)?(Xl(),e=new Zl(0,-2147483648)):e=Lc(yr(t),function(t){return mr(t)?Fc():Rc()}(t),n),e}function Ar(t){return Mr(t,Vc())}function Er(t){var n,e=t;if(e.equals(new Zl(0,0)))n="0s";else if(e.equals(br().ya_1))n="Infinity";else if(e.equals(br().za_1))n="-Infinity";else{var o=jr(t),r=rc();o&&r.r9(45);var i=zr(t),s=function(t){return Mr(t,Wc())}(i),a=function(t){return Cr(t)?0:Ar(t).db(new Zl(24,0)).wa()}(i),u=qr(i),c=Or(i),l=Pr(i),h=!s.equals(new Zl(0,0)),p=!(0===a),f=!(0===u),_=0!==c||!(0===l),d=0;if(h&&(r.eb(s).r9(100),d=d+1|0),p||h&&(f||_)){var v=d;d=v+1|0,v>0&&r.r9(32),r.eb(a).r9(104)}if(f||_&&(p||h)){var y=d;d=y+1|0,y>0&&r.r9(32),r.eb(u).r9(109)}if(_){var m=d;d=m+1|0,m>0&&r.r9(32),0!==c||h||p||f?Ir(r,0,c,l,9,"s",!1):l>=1e6?Ir(r,0,l/1e6|0,l%1e6|0,6,"ms",!1):l>=1e3?Ir(r,0,l/1e3|0,l%1e3|0,3,"us",!1):r.eb(l).fb("ns")}o&&d>1&&(r.gb(1,40).r9(41),Es()),n=r.toString()}return n}function Ir(t,n,e,o,r,i,s){if(t.eb(e),0!==o){t.r9(46);var a,u=Zo(o.toString(),r,48);t:{var c=Ml(u)-1|0;if(0<=c)do{var l=c;if(c=c+-1|0,!Nl(new tl(Ol(u,l)),new tl(48))){a=l;break t}}while(0<=c);a=-1}var h=a+1|0;!s&&h<3?t.hb(u,0,h):t.hb(u,0,It((h+2|0)/3|0,3))}t.fb(i)}function Dr(t){br(),this.cb_1=t}function Tr(t,n){var e=Bc(t,n,Fc());if(hu(e))throw Mp(Ll("Duration value cannot be NaN."));var o=lu(e),r=new Zl(387905,-1073741824);return o.d1(new Zl(-387905,1073741823))<=0&&r.d1(o)<=0?Ur(o):Fr(lu(Bc(t,n,Rc())))}function Br(t){return vr(t.kb(1).v9(new Zl(1,0)))}function Lr(t,n){var e=Nc(new Zl(-387905,1073741823),Fc(),n);return e.s9().d1(t)<=0&&t.d1(e)<=0?Ur(Nc(t,n,Fc())):Br(fn(Lc(t,n,Rc()),new Zl(1,-1073741824),new Zl(-1,1073741823)))}function Nr(t,n){var e=t.length;if(0===e)throw Mp("The string is empty");var o=0,r=br().xa_1,i="Infinity",s=Ol(t,o);(Nl(new tl(s),new tl(43))||Nl(new tl(s),new tl(45)))&&(o=o+1|0);var a=o>0,u=!!a&&Qo(t,45,!1,2);if(e<=o)throw Mp("No components");if(Nl(new tl(Ol(t,o)),new tl(80))){if((o=o+1|0)===e)throw Op();for(var c=!1,l=null;o=0&&y<=Xo(t)))throw Mp("Missing unit for value "+v);o=o+1|0;var m=Wr(Ol(t,y),c);if(null!=l&&l.x1(m)<=0)throw Mp("Unexpected order of duration components");l=m;var g=er(v,46,0,!1,6);m.equals(Hc())&&g>0?(r=xr(r,Lr(Vr(v.substring(0,g)),m)),r=xr(r,Tr(lc(v.substring(g)),m))):r=xr(r,Lr(Vr(v),m))}}else{if(n)throw Op();var $=e-o|0,b=i.length;if(Mc(t,o,i,0,Math.max($,b),!0))r=br().ya_1;else{var w=null,x=!1,k=!a;if(a&&Nl(new tl(Ol(t,o)),new tl(40))&&Nl(new tl(function(t){if(0===Ml(t))throw Rp("Char sequence is empty.");return Ol(t,Xo(t))}(t)),new tl(41))&&(k=!0,(o=o+1|0)==(e=e-1|0)))throw Mp("No components");for(;o0){if(r=xr(r,Lr(hc(P.substring(0,L)),B)),r=xr(r,Tr(lc(P.substring(L)),B)),o0&&tr("+-",Ol(t,0),!1,2)&&(r=r+1|0),(o-r|0)>16){var i;t:{var s=qh(r,Xo(t));if(Th(s,hl)&&s.h())i=!0;else{var a=s.f1_1,u=s.g1_1;if(a<=u)do{var c=a;a=a+1|0;var l=Ol(t,c);if(!(48<=l&&l<=57)){i=!1;break t}}while(c!==u);i=!0}}n=i}else n=!1;return n?(Nl(new tl(Ol(t,0)),new tl(45))?(Xl(),e=new Zl(0,-2147483648)):(Xl(),e=new Zl(-1,2147483647)),e):Oc(t,"+",!1,2)?hc(wn(t,1)):hc(t)}function Wr(t,n){var e;if(n){var o,r=t;if(Nl(new tl(r),new tl(72)))o=Vc();else if(Nl(new tl(r),new tl(77)))o=Uc();else{if(!Nl(new tl(r),new tl(83)))throw Mp("Invalid duration ISO time unit: "+new tl(t));o=Hc()}e=o}else{if(!Nl(new tl(t),new tl(68)))throw Mp("Invalid or unsupported duration ISO non-time unit: "+new tl(t));e=Wc()}return e}function Jr(t){var n;switch(t){case"ns":n=Fc();break;case"us":Dc(),n=it;break;case"ms":n=Rc();break;case"s":n=Hc();break;case"m":n=Uc();break;case"h":n=Vc();break;case"d":n=Wc();break;default:throw Mp("Unknown duration unit short name: "+t)}return n}function Kr(){return Zr(),S}function Gr(){}function Yr(t){this.mb_1=t}function Xr(t,n){Gr.call(this),this.nb_1=function(t,n){if("function"==typeof t)return t.$arity===n;if("object"==typeof t&&df("$metadata$",t.constructor)){var e,o=t.constructor.$metadata$,r=null==o?null:o.suspendArity;if(null!=r){var i=!1,s=ml(r);t:for(;s.d();)if(n===s.e()){i=!0;break t}return i}return null!=(e=null)&&e}return!1}(t,2)?t:Jl(),this.ob_1=n,this.pb_1=Th(this,Ue)?this:Jl(),this.qb_1=Kr()}function Zr(){var t;q||(q=!0,ci(),t=so(),S=t)}function Qr(){}function ti(t,n){_l.call(this,t,n)}function ni(t){this.ub_1=t,this.vb_1=oi()}function ei(){M=this}function oi(){return null==M&&new ei,M}function ri(t){return t}function ii(t){return t}function si(t){return t instanceof li}function ai(t){return t instanceof li?t.xb_1:null}function ui(){A=this}function ci(){return null==A&&new ui,A}function li(t){this.xb_1=t}function hi(t){ci(),this.ac_1=t}function pi(t){return new li(t)}function fi(t){if(t instanceof li)throw t.xb_1}function _i(t){Sp(t,this),Hl(this,_i)}function di(t,n){this.j4_1=t,this.k4_1=n}function vi(t,n){return new di(t,n)}function yi(t,n,e){this.dc_1=t,this.ec_1=n,this.fc_1=e}function mi(t){return t}function gi(t){return t}function $i(){E=this,this.gc_1=0,this.hc_1=-1,this.ic_1=1,this.jc_1=8}function bi(){return null==E&&new $i,E}function wi(t,n){return Il(255&t,255&n)}function xi(t){return(255&t).toString()}function ki(t){bi(),this.kc_1=t}function ji(t){return t}function Ci(t){return t}function zi(t){return t.length}function Si(t){this.mc_1=t,this.nc_1=0}function qi(t,n){return(Vh(new ki(n))?new ki(n):Jl())instanceof ki&&Xt(t,n)}function Oi(t,n){var e;t:{var o=Th(n,hl)?n:Jl();if(Th(o,hl)&&o.h())e=!0;else{for(var r=o.c();r.d();){var i=r.e();if(!(i instanceof ki&&Xt(t,i.kc_1))){e=!1;break t}}e=!0}}return e}function Pi(t){this.pc_1=t}function Mi(t){return t}function Ai(t){return t}function Ei(){I=this,this.sc_1=0,this.tc_1=-1,this.uc_1=4,this.vc_1=32}function Ii(){return null==I&&new Ei,I}function Di(t,n){return ws(t,n)}function Ti(t){return Sh(t).xc(new Zl(-1,0)).toString()}function Bi(t){Ii(),this.wc_1=t}function Li(t){return t}function Ni(t){return t}function Fi(t){return t.length}function Ri(t){this.zc_1=t,this.ad_1=0}function Hi(t,n){return(Vh(new Bi(n))?new Bi(n):Jl())instanceof Bi&&Gt(t,n)}function Ui(t,n){var e;t:{var o=Th(n,hl)?n:Jl();if(Th(o,hl)&&o.h())e=!0;else{for(var r=o.c();r.d();){var i=r.e();if(!(i instanceof Bi&&Gt(t,i.wc_1))){e=!1;break t}}e=!0}}return e}function Vi(t){this.cd_1=t}function Wi(t){return t}function Ji(t){return t}function Ki(){D=this,this.fd_1=new Zl(0,0),this.gd_1=new Zl(-1,-1),this.hd_1=8,this.id_1=64}function Gi(){return null==D&&new Ki,D}function Yi(t,n){return xs(t,n)}function Xi(t){return function(t,n){if(t.d1(new Zl(0,0))>=0)return gf(t,n);var e,o=t.de(1).t9(Sh(n)).kb(1);e=o.u9(Sh(n));var r=t.w9(e);return r.d1(Sh(n))>=0&&(r=r.w9(Sh(n)),o=o.v9(new Zl(1,0))),gf(o,n)+gf(r,n)}(t,10)}function Zi(t){Gi(),this.jd_1=t}function Qi(t){return t}function ts(t){return t}function ns(t){return t.length}function es(t){this.ld_1=t,this.md_1=0}function os(t,n){return(Vh(new Zi(n))?new Zi(n):Jl())instanceof Zi&&Kt(t,n)}function rs(t,n){var e;t:{var o=Th(n,hl)?n:Jl();if(Th(o,hl)&&o.h())e=!0;else{for(var r=o.c();r.d();){var i=r.e();if(!(i instanceof Zi&&Kt(t,i.jd_1))){e=!1;break t}}e=!0}}return e}function is(t){this.od_1=t}function ss(t){return t}function as(t){return t}function us(){T=this,this.rd_1=0,this.sd_1=-1,this.td_1=2,this.ud_1=16}function cs(){return null==T&&new us,T}function ls(t,n){return Il(65535&t,65535&n)}function hs(t){return(65535&t).toString()}function ps(t){cs(),this.vd_1=t}function fs(t){return t}function _s(t){return t}function ds(t){return t.length}function vs(t){this.xd_1=t,this.yd_1=0}function ys(t,n){return(Vh(new ps(n))?new ps(n):Jl())instanceof ps&&Yt(t,n)}function ms(t,n){var e;t:{var o=Th(n,hl)?n:Jl();if(Th(o,hl)&&o.h())e=!0;else{for(var r=o.c();r.d();){var i=r.e();if(!(i instanceof ps&&Yt(t,i.vd_1))){e=!1;break t}}e=!0}}return e}function gs(t){this.ae_1=t}function $s(t){return function(t,n){uc(n);var e=t.length;if(0===e)return null;Gi();var o,r=new Zl(-1,-1),i=Ol(t,0);if(Kc(i,48)<0){if(1===e||!Nl(new tl(i),new tl(43)))return null;o=1}else o=0;var s=new Zl(477218588,119304647),a=s,u=Sh(n),c=new Zl(0,0),l=o;if(l0){if(!Nl(a,s))return null;if(xs(c,a=ks(r,u))>0)return null}var f=c=c.u9(u),_=c,d=Sh(p).xc(new Zl(-1,0));if(xs(c=_.v9(d),f)<0)return null}while(l0){if(c!==u)return null;if(ws(h,(i=l,s=void 0,a=void 0,a=Sh(-1).xc(new Zl(-1,0)),s=Sh(i).xc(new Zl(-1,0)),c=a.t9(s).wa()))>0)return null}var d=h=It(h,l);if(ws(h=h+_|0,d)<0)return null}while(p=0)return e.t9(o);var r=e.de(1).t9(o).kb(1),i=xs(e.w9(r.u9(o)),o)>=0?1:0;return r.v9(Sh(i))}function js(){}function Cs(){}function zs(){}function Ss(){}function qs(){}function Os(){}function Ps(){}function Ms(){}function As(){B=this}function Es(){return null==B&&new As,B}function Is(){L=this,this.he_1=-128,this.ie_1=127,this.je_1=1,this.ke_1=8}function Ds(){N=this,this.pe_1=-32768,this.qe_1=32767,this.re_1=2,this.se_1=16}function Ts(){F=this,this.x_1=-2147483648,this.y_1=2147483647,this.z_1=4,this.a1_1=32}function Bs(){return null==F&&new Ts,F}function Ls(){R=this,this.te_1=14e-46,this.ue_1=34028235e31,this.ve_1=1/0,this.we_1=-1/0,this.xe_1=NaN,this.ye_1=4,this.ze_1=32}function Ns(){return null==R&&new Ls,R}function Fs(){H=this,this.df_1=5e-324,this.ef_1=17976931348623157e292,this.ff_1=1/0,this.gf_1=-1/0,this.hf_1=NaN,this.if_1=8,this.jf_1=64}function Rs(){return null==H&&new Fs,H}function Hs(){U=this}function Us(){V=this}function Vs(){}function Ws(t){return Jt(n=[t],Aa(n.length));var n}function Js(t){return 0===(n=[t]).length?fa():da(new te(n,!0));var n}function Ks(t){return t}function Gs(t){return t<0&&function(){throw ef("Count overflow has happened.")}(),t}function Ys(t){return t<0&&function(){throw ef("Index overflow has happened.")}(),t}function Xs(t){return void 0!==t.toArray?t.toArray():Qs(t)}function Zs(t,n){if(t.f()<=1)return Es();var e=Xs(t);!function(t,n){if(ga()){var e=(o=n,function(t,n){return o.compare(t,n)});t.sort(e)}else $a(t,0,Wt(t),n);var o}(e,n);var o=0,r=e.length;if(o=u)return!1}while(r=0))throw Mp(Ll("Negative initial capacity: "+t));if(!(n>=0))throw Mp(Ll("Non-positive load factor: "+n));return e}function Oa(t){return function(t,n){return qa(t,0,n),n}(t,Object.create(Pa.prototype))}function Pa(){this.fh_1=null}function Ma(t,n,e){return pa.call(e),Ia.call(e),e.ih_1=function(t,n){return qa(t,n,Object.create(Pa.prototype))}(t,n),e}function Aa(t){return function(t,n){return Ma(t,0,n),n}(t,Object.create(Ia.prototype))}function Ea(t,n){return pa.call(n),Ia.call(n),n.ih_1=t,n}function Ia(){}function Da(t,n){var e=Ba(t,t.rh_1.wg(n));if(null==e)return null;var o=e;if(null!=o&&Uh(o))return Ta(o,t,n);var r=o;return t.rh_1.vg(r.l2(),n)?r:null}function Ta(t,n,e){var o;t:{for(var r=t,i=0,s=r.length;inew Zl(-1,2147483647).pi()?(Xl(),n=new Zl(-1,2147483647)):(Xl(),t1?t:Ol(n,0)}function ac(t){return function(t){var n;return 9<=(n=Yc(t))&&n<=13||28<=n&&n<=32||160===n||n>4096&&(5760===n||8192<=n&&n<=8202||8232===n||8233===n||8239===n||8287===n||12288===n)}(t)}function uc(t){if(!(2<=t&&t<=36))throw Mp("radix "+t+" was not in valid range 2..36");return t}function cc(t,n){var e,o,r,i=Kc(t,48)>=0&&Kc(t,57)<=0?Gc(t,48):Kc(t,65)>=0&&Kc(t,90)<=0?Gc(t,65)+10|0:Kc(t,97)>=0&&Kc(t,122)<=0?Gc(t,97)+10|0:Kc(t,128)<0?-1:Kc(t,65313)>=0&&Kc(t,65338)<=0?Gc(t,65313)+10|0:Kc(t,65345)>=0&&Kc(t,65370)<=0?Gc(t,65345)+10|0:(e=Yc(t),o=hp(fp().in_1,e),(r=e-fp().in_1[o]|0)<10?r:-1);return i>=n?-1:i}function lc(t){var n=+t;return(hu(n)&&!fc(t)||0===n&&Pc(t))&&Ho(t),n}function hc(t){var n,e=Fo(t);return null==e?Ho(t):n=e,n}function pc(t){var n,e=Ro(t);return null==e?Ho(t):n=e,n}function fc(t){switch(t.toLowerCase()){case"nan":case"+nan":case"-nan":return!0;default:return!1}}function _c(){nt=this,this.yk_1=new RegExp("[\\\\^$*+?.()|[\\]{}]","g"),this.zk_1=new RegExp("[\\\\$]","g"),this.al_1=new RegExp("\\$","g")}function dc(){return null==nt&&new _c,nt}function vc(t){return t.e()}function yc(t){return function(n){return function(t,n){for(var e=0,o=rc();e=f.f())throw Zp("Group with index "+v+" does not exist");var y=f.g(v),m=null==y?null:y.ll_1;o.fb(null==m?"":m),e=_}}else o.r9(i)}return o.toString()}(n,t)}}function mc(t,n){dc(),this.x9_1=t,this.y9_1=on(n),this.z9_1=new RegExp(t,en(n,"","gu",null,0,null,jc,28)),this.aa_1=null,this.ba_1=null}function gc(t,n,e){_l.call(this,t,n),this.kl_1=e}function $c(t,n,e,o){t.lastIndex=e;var r=t.exec(n);return null==r?null:new Sc(qh(r.index,t.lastIndex-1|0),r,o,n)}function bc(t){this.ll_1=t}function wc(t,n){for(var e=n;e0&&Nl(new tl(Ol(n,Xo(n)-(i-1|0)|0)),new tl(32));)i=i-1|0;return bn(n,i)+"... and "+(o-1|0)+" more common stack frames skipped"}(n,s,u),Ml(e)>0){var c;if(0===u)c=0;else{for(var l=0,h=r,p=0,f=h.length;p=d&&n.xl_1.fb(e),n.xl_1.fb(m).fb("\n")}}else n.xl_1.fb(s).fb("\n")}else n.xl_1.fb(r).fb("\n");var $=function(t){var n=t._suppressed,e=null==n?null:n;return null==e?Kn():e}(t);if(!$.h())for(var b=e+" ",w=$.c();w.d();)Ac(w.e(),n,b,"Suppressed: ");return!0}function Ic(){var t;this.xl_1=rc(),t=[],this.yl_1=t,this.zl_1="",this.am_1=0}function Dc(){if(ht)return Es();ht=!0,rt=new Tc("NANOSECONDS",0,1),it=new Tc("MICROSECONDS",1,1e3),st=new Tc("MILLISECONDS",2,1e6),at=new Tc("SECONDS",3,1e9),ut=new Tc("MINUTES",4,6e10),ct=new Tc("HOURS",5,36e11),lt=new Tc("DAYS",6,864e11)}function Tc(t,n,e){_l.call(this,t,n),this.em_1=e}function Bc(t,n,e){var o=Il(n.em_1,e.em_1);return o>0?t*(n.em_1/e.em_1):o<0?t/(e.em_1/n.em_1):t}function Lc(t,n,e){var o,r=Il(n.em_1,e.em_1);if(r>0){var i,s=Ch(n.em_1/e.em_1),a=t.u9(s);a.t9(s).equals(t)?i=a:t.d1(new Zl(0,0))>0?(Xl(),i=new Zl(-1,2147483647)):(Xl(),i=new Zl(0,-2147483648)),o=i}else o=r<0?t.t9(Ch(e.em_1/n.em_1)):t;return o}function Nc(t,n,e){var o=Il(n.em_1,e.em_1);return o>0?t.u9(Ch(n.em_1/e.em_1)):o<0?t.t9(Ch(e.em_1/n.em_1)):t}function Fc(){return Dc(),rt}function Rc(){return Dc(),st}function Hc(){return Dc(),at}function Uc(){return Dc(),ut}function Vc(){return Dc(),ct}function Wc(){return Dc(),lt}function Jc(t){return t}function Kc(t,n){return t-n|0}function Gc(t,n){return t-n|0}function Yc(t){return t}function Xc(t){return String.fromCharCode(t)}function Zc(){pt=this,this.fm_1=0,this.gm_1=65535,this.hm_1=55296,this.im_1=56319,this.jm_1=56320,this.km_1=57343,this.lm_1=55296,this.mm_1=57343,this.nm_1=2,this.om_1=16}function Qc(){return null==pt&&new Zc,pt}function tl(t){Qc(),this.l1_1=t}function nl(){}function el(){}function ol(){}function rl(){}function il(){}function sl(){}function al(){}function ul(){}function cl(){}function ll(){}function hl(){}function pl(){}function fl(){ft=this}function _l(t,n){null==ft&&new fl,this.s1_1=t,this.t1_1=n}function dl(t){var n=null==t?null:Ll(t);return null==n?"null":n}function vl(t,n){var e=null==t?null:Ll(t),o=null==e?"null":e,r=null==n?null:Ll(n);return o+(null==r?"null":r)}function yl(t,n){var e=0,o=t.length-1|0;if(e<=o)do{var r=e;e=e+1|0,t[r]=n}while(r!==o);return t}function ml(t){return new wl(t)}function gl(t){var n=yl(Array(t),!1);return n.$type$="BooleanArray",n}function $l(t){var n=new Uint16Array(t);return n.$type$="CharArray",n}function bl(t){var n=yl(Array(t),new Zl(0,0));return n.$type$="LongArray",n}function wl(t){this.rm_1=t,this.qm_1=0}function xl(t){this.tm_1=t,de.call(this),this.sm_1=0}function kl(){return ql(),_t}function jl(){return ql(),dt}function Cl(){return ql(),vt}function zl(){return ql(),yt}function Sl(t){return ql(),vf(t,0)===t?kh(t):(jl()[0]=t,It(Cl()[(ql(),mt)],31)+Cl()[zl()]|0)}function ql(){if(gt);else{gt=!0,_t=new ArrayBuffer(8);var t=new Float64Array(kl());dt=t,new Float32Array(kl());var n,e=new Int32Array(kl());vt=e,jl()[0]=-1,n=0!==Cl()[0]?1:0,yt=n,mt=1-zl()|0}}function Ol(t,n){var e;if(Pl(t)){var o,r=t.charCodeAt(n);if(Qc(),r<0?o=!0:(Qc(),o=r>65535),o)throw Mp("Invalid Char code: "+r);e=zh(r)}else e=t.fe(n);return e}function Pl(t){return"string"==typeof t}function Ml(t){return Pl(t)?t.length:t.ee()}function Al(t,n,e){return Pl(t)?t.substring(n,e):t.ge(n,e)}function El(t){return Ll(t)}function Il(t,n){var e;switch(typeof t){case"number":e="number"==typeof n?Dl(t,n):n instanceof Zl?Dl(t,n.pi()):Tl(t,n);break;case"string":case"boolean":e=Tl(t,n);break;default:e=function(t,n){return t.jb(n)}(t,n)}return e}function Dl(t,n){var e;if(tn)e=1;else if(t===n){var o;if(0!==t)o=0;else{var r=1/t;o=r===1/n?0:r<0?-1:1}e=o}else e=t!=t?n!=n?0:1:-1;return e}function Tl(t,n){return tn?1:0}function Bl(t){if(!df("kotlinHashCodeValue$",t)){var n=vf(4294967296*Math.random(),0),e=new Object;e.value=n,e.enumerable=!1,Object.defineProperty(t,"kotlinHashCodeValue$",e)}return t.kotlinHashCodeValue$}function Ll(t){return null==t?"null":Ih(t)?"[...]":t.toString()}function Nl(t,n){return null==t?null==n:null!=n&&("object"==typeof t&&"function"==typeof t.equals?t.equals(n):t!=t?n!=n:"number"==typeof t&&"number"==typeof n?t===n&&(0!==t||1/t==1/n):t===n)}function Fl(t){if(null==t)return 0;var n;switch(typeof t){case"object":n="function"==typeof t.hashCode?t.hashCode():Bl(t);break;case"function":n=Bl(t);break;case"number":n=Sl(t);break;case"boolean":n=t?1:0;break;default:n=Rl(String(t))}return n}function Rl(t){var n=0,e=0,o=t.length-1|0;if(e<=o)do{var r=e;e=e+1|0;var i=t.charCodeAt(r);n=It(n,31)+i|0}while(r!==o);return n}function Hl(t,n){null!=Error.captureStackTrace?Error.captureStackTrace(t,n):t.stack=(new Error).stack}function Ul(t,n,e){Error.call(t),function(t,n,e){if(!Vl(t,"message")){var o;if(null==n){var r;if(null!==n){var i=null==e?null:e.toString();r=null==i?void 0:i}else r=void 0;o=r}else o=n;t.message=o}Vl(t,"cause")||(t.cause=e),t.name=Object.getPrototypeOf(t).constructor.name}(t,n,e)}function Vl(t,n){return Object.getPrototypeOf(t).hasOwnProperty(n)}function Wl(t){var n;return null==t?function(){throw af()}():n=t,n}function Jl(){throw hf()}function Kl(t,n){for(var e=t.length,o=n.length,r=0,i=n;rr)for(o.length=n;r>>16|0,o=65535&t.c1_1,r=t.b1_1>>>16|0,i=65535&t.b1_1,s=n.c1_1>>>16|0,a=65535&n.c1_1,u=n.b1_1>>>16|0,c=0,l=0,h=0,p=0;return c=(c=c+((l=(l=l+((h=(h=h+((p=p+(i+(65535&n.b1_1)|0)|0)>>>16|0)|0)+(r+u|0)|0)>>>16|0)|0)+(o+a|0)|0)>>>16|0)|0)+(e+s|0)|0,new Zl((h&=65535)<<16|(p&=65535),(c&=65535)<<16|(l&=65535))}function sh(t,n){return wh(),ih(t,n.s9())}function ah(t,n){if(wh(),dh(t))return Ql();if(dh(n))return Ql();if(hh(t,eh()))return vh(n)?eh():Ql();if(hh(n,eh()))return vh(t)?eh():Ql();if(_h(t))return _h(n)?ah(yh(t),yh(n)):yh(ah(yh(t),n));if(_h(n))return yh(ah(t,yh(n)));if(mh(t,oh())&&mh(n,oh()))return gh(lh(t)*lh(n));var e=t.c1_1>>>16|0,o=65535&t.c1_1,r=t.b1_1>>>16|0,i=65535&t.b1_1,s=n.c1_1>>>16|0,a=65535&n.c1_1,u=n.b1_1>>>16|0,c=65535&n.b1_1,l=0,h=0,p=0,f=0;return p=p+((f=f+It(i,c)|0)>>>16|0)|0,f&=65535,h=(h=h+((p=p+It(r,c)|0)>>>16|0)|0)+((p=(p&=65535)+It(i,u)|0)>>>16|0)|0,p&=65535,l=(l=(l=l+((h=h+It(o,c)|0)>>>16|0)|0)+((h=(h&=65535)+It(r,u)|0)>>>16|0)|0)+((h=(h&=65535)+It(i,a)|0)>>>16|0)|0,h&=65535,l=l+(((It(e,c)+It(o,u)|0)+It(r,a)|0)+It(i,s)|0)|0,new Zl(p<<16|f,(l&=65535)<<16|h)}function uh(t,n){wh();var e=63&n;return 0===e?t:e<32?new Zl(t.b1_1<>>(32-e|0)|0):new Zl(0,t.b1_1<<(e-32|0))}function ch(t,n){wh();var e=63&n;return 0===e?t:e<32?new Zl(t.b1_1>>>e|0|t.c1_1<<(32-e|0),t.c1_1>>e):new Zl(t.c1_1>>(e-32|0),t.c1_1>=0?0:-1)}function lh(t){return wh(),4294967296*t.c1_1+function(t){return wh(),t.b1_1>=0?t.b1_1:4294967296+t.b1_1}(t)}function hh(t,n){return wh(),t.c1_1===n.c1_1&&t.b1_1===n.b1_1}function ph(t,n){if(wh(),n<2||36=0x8000000000000000)return wh(),kt;if(t<0)return yh(gh(-t));var n=4294967296;return new Zl(vf(t%n,0),vf(t/n,0))}function $h(t,n){return wh(),rh(t,n)>0}function bh(t,n){return wh(),rh(t,n)>=0}function wh(){zt||(zt=!0,bt=fh(0),wt=fh(1),xt=fh(-1),kt=new Zl(-1,2147483647),jt=new Zl(0,-2147483648),Ct=fh(16777216))}function xh(t){return t<<24>>24}function kh(t){return t instanceof Zl?t.wa():function(t){return t>2147483647?2147483647:t<-2147483648?-2147483648:vf(t,0)}(t)}function jh(t){return t<<16>>16}function Ch(t){return t instanceof Zl?t:gh(t)}function zh(t){return 65535&jh(kh(t))}function Sh(t){return fh(t)}function qh(t,n){return new xo(t,n)}function Oh(){Mh();var t=void 0;return Ah(t,t,t,t,t,t)}function Ph(t,n,e,o,r){return Mh(),o.get=o,o.set=r,o.callableName=t,i=o,s=function(t,n,e){Mh();var o=(Mh(),St)[t][null==n?0:1];return 0===o.interfaces.length&&(o.interfaces.push(e),null==o.interfacesCache?o.interfacesCache={isComplete:!1,implementInterfaceMemo:{}}:Wl(o.interfacesCache).isComplete=!1,Fh(Wl(o.interfacesCache),e)),o}(n,r,e),Mh(),i.$metadata$=s,i.constructor=i,i;var i,s}function Mh(){if(qt);else{qt=!0;var t,n=[Oh(),Oh()],e=[Oh(),Oh()];t=[Oh(),Oh()],St=[n,e,t]}}function Ah(t,n,e,o,r,i){return Eh("class",t,n,e,o,r,i)}function Eh(t,n,e,o,r,i,s){return{kind:t,simpleName:n,interfaceId:"interface"===t?-1:void 0,interfaces:e||[],associatedObjectKey:o,associatedObjects:r,suspendArity:i,fastPrototype:s,$kClass$:void 0,interfacesCache:{isComplete:void 0===s&&(void 0===e||0===e.length),implementInterfaceMemo:{}}}}function Ih(t){return!!Dh(t)||Tt(t)}function Dh(t){return Array.isArray(t)}function Th(t,n){var e=t.constructor;return null!=e&&Bh(e,n)}function Bh(t,n){if(t===n)return!0;var e=t.$metadata$;null!=e&&null==e.interfacesCache&&(e.interfacesCache={isComplete:!1,implementInterfaceMemo:{}});var o,r=null==e?null:e.interfacesCache;if(null!=r){r.isComplete||Lh(t);var i=n.$metadata$,s=null==i?null:i.interfaceId;if(null==s)return!1;var a=s;o=!!r.implementInterfaceMemo[a]}else{var u=Nh(t),c=null==u?null:u.constructor;if(null==c)return!1;o=Bh(c,n)}return o}function Lh(t){var n=t.$metadata$;null!=n&&null==n.interfacesCache&&(n.interfacesCache={isComplete:!1,implementInterfaceMemo:{}});var e=null==n?null:n.interfacesCache;if(null!=e){if(!0===e.isComplete)return e;for(var o=n.interfaces,r=0,i=o.length;r=0))throw Mp(Ll("Invalid new array size: "+n+"."));return Gl(t,n,null)}function up(t,n,e){return En().f2(n,e,t.length),t.slice(n,e)}function cp(t){return new ma(t)}function lp(t,n,e){for(var o=new Int32Array(e),r=0,i=0,s=0,a=t,u=0,c=a.length;u(i=t[r=(e+o|0)/2|0]))e=r+1|0;else{if(n===i)return r;o=r-1|0}return r-(n0},Mn.prototype.q=function(){return this.y1_1},Mn.prototype.r=function(){if(!this.p())throw Fp();var t=this;return t.y1_1=t.y1_1-1|0,this.c2_1.g(t.y1_1)},Mn.$metadata$=Ah("ListIteratorImpl",[Os],void 0,void 0,void 0,Pn.prototype),An.prototype.e2=function(t,n){if(t<0||t>=n)throw Zp("index: "+t+", size: "+n)},An.prototype.d2=function(t,n){if(t<0||t>n)throw Zp("index: "+t+", size: "+n)},An.prototype.f2=function(t,n,e){if(t<0||n>e)throw Zp("fromIndex: "+t+", toIndex: "+n+", size: "+e);if(t>n)throw Mp("fromIndex: "+t+" > toIndex: "+n)},An.prototype.g2=function(t,n,e){if(t<0||n>e)throw Zp("startIndex: "+t+", endIndex: "+n+", size: "+e);if(t>n)throw Mp("startIndex: "+t+" > endIndex: "+n)},An.prototype.h2=function(t){for(var n=1,e=t.c();e.d();){var o=e.e(),r=It(31,n),i=null==o?null:Fl(o);n=r+(null==i?0:i)|0}return n},An.prototype.i2=function(t,n){if(t.f()!==n.f())return!1;for(var e=n.c(),o=t.c();o.d();)if(!Nl(o.e(),e.e()))return!1;return!0},An.$metadata$=rp("Companion"),In.prototype.c=function(){return new Pn(this)},In.prototype.j=function(t){var n;t:{for(var e=0,o=this.c();o.d();){if(Nl(o.e(),t)){n=e;break t}e=e+1|0}n=-1}return n},In.prototype.j2=function(t){var n;t:{for(var e=this.o(this.f());e.p();)if(Nl(e.r(),t)){n=e.q();break t}n=-1}return n},In.prototype.o=function(t){return new Mn(this,t)},In.prototype.equals=function(t){return t===this||!(null==t||!Th(t,el))&&En().i2(this,t)},In.prototype.hashCode=function(){return En().h2(this)},In.$metadata$=Ah("AbstractList",[el],void 0,void 0,void 0,kn.prototype),Dn.prototype.d=function(){return this.k2_1.d()},Dn.prototype.e=function(){return this.k2_1.e().l2()},Dn.$metadata$=Ah(void 0,[Ss]),Tn.prototype.d=function(){return this.m2_1.d()},Tn.prototype.e=function(){return this.m2_1.e().n2()},Tn.$metadata$=Ah(void 0,[Ss]),Nn.prototype.o2=function(t){var n=t.l2(),e=null==n?null:Fl(n),o=null==e?0:e,r=t.n2(),i=null==r?null:Fl(r);return o^(null==i?0:i)},Nn.prototype.p2=function(t){return dl(t.l2())+"="+dl(t.n2())},Nn.prototype.q2=function(t,n){return!(null==n||!Th(n,ul))&&!!Nl(t.l2(),n.l2())&&Nl(t.n2(),n.n2())},Nn.$metadata$=rp("Companion"),Rn.prototype.s2=function(t){return this.r2_1.v2(t)},Rn.prototype.i=function(t){return!(null!=t&&!Vh(t))&&this.s2(null==t||Vh(t)?t:Jl())},Rn.prototype.c=function(){return new Dn(this.r2_1.v().c())},Rn.prototype.f=function(){return this.r2_1.f()},Rn.$metadata$=Ah(void 0,void 0,void 0,void 0,void 0,Jn.prototype),Hn.prototype.y2=function(t){return this.x2_1.z2(t)},Hn.prototype.i=function(t){return!(null!=t&&!Vh(t))&&this.y2(null==t||Vh(t)?t:Jl())},Hn.prototype.c=function(){return new Tn(this.x2_1.v().c())},Hn.prototype.f=function(){return this.x2_1.f()},Hn.$metadata$=Ah(void 0,void 0,void 0,void 0,void 0,kn.prototype),Un.prototype.v2=function(t){return!(null==Ln(this,t))},Un.prototype.z2=function(t){var n;t:{var e=this.v();if(Th(e,hl)&&e.h())n=!1;else{for(var o=e.c();o.d();)if(Nl(o.e().n2(),t)){n=!0;break t}n=!1}}return n},Un.prototype.a3=function(t){if(null==t||!Th(t,ul))return!1;var n=t.l2(),e=t.n2(),o=(Th(this,cl)?this:Jl()).b3(n);return!(!Nl(e,o)||null==o&&!(Th(this,cl)?this:Jl()).v2(n))},Un.prototype.equals=function(t){if(t===this)return!0;if(null==t||!Th(t,cl))return!1;if(this.f()!==t.f())return!1;var n;t:{var e=t.v();if(Th(e,hl)&&e.h())n=!0;else{for(var o=e.c();o.d();){var r=o.e();if(!this.a3(r)){n=!1;break t}}n=!0}}return n},Un.prototype.b3=function(t){var n=Ln(this,t);return null==n?null:n.n2()},Un.prototype.hashCode=function(){return Fl(this.v())},Un.prototype.h=function(){return 0===this.f()},Un.prototype.f=function(){return this.v().f()},Un.prototype.c3=function(){return null==this.t2_1&&(this.t2_1=new Rn(this)),Wl(this.t2_1)},Un.prototype.toString=function(){return en(this.v(),", ","{","}",0,null,(t=this,function(n){return t.w2(n)}),24);var t},Un.prototype.w2=function(t){return Bn(this,t.l2())+"="+Bn(this,t.n2())},Un.prototype.d3=function(){return null==this.u2_1&&(this.u2_1=new Hn(this)),Wl(this.u2_1)},Un.$metadata$=Ah("AbstractMap",[cl]),Vn.prototype.e3=function(t){for(var n=0,e=t.c();e.d();){var o=e.e(),r=n,i=null==o?null:Fl(o);n=r+(null==i?0:i)|0}return n},Vn.prototype.f3=function(t,n){return t.f()===n.f()&&t.o1(n)},Vn.$metadata$=rp("Companion"),Jn.prototype.equals=function(t){return t===this||!(null==t||!Th(t,il))&&Wn().f3(this,t)},Jn.prototype.hashCode=function(){return Wn().e3(this)},Jn.$metadata$=Ah("AbstractSet",[il],void 0,void 0,void 0,kn.prototype),Zn.prototype.equals=function(t){return!(null==t||!Th(t,el))&&t.h()},Zn.prototype.hashCode=function(){return 1},Zn.prototype.toString=function(){return"[]"},Zn.prototype.f=function(){return 0},Zn.prototype.h=function(){return!0},Zn.prototype.h3=function(t){return!1},Zn.prototype.i=function(t){return!1},Zn.prototype.i3=function(t){return t.h()},Zn.prototype.o1=function(t){return this.i3(t)},Zn.prototype.g=function(t){throw Zp("Empty list doesn't contain element at index "+t+".")},Zn.prototype.j3=function(t){return-1},Zn.prototype.j=function(t){return-1},Zn.prototype.c=function(){return ee()},Zn.prototype.o=function(t){if(0!==t)throw Zp("Index: "+t);return ee()},Zn.$metadata$=rp("EmptyList",[el,cu,tu]),te.prototype.f=function(){return this.k3_1.length},te.prototype.h=function(){return 0===this.k3_1.length},te.prototype.m3=function(t){return function(t,n){return Rt(t,n)>=0}(this.k3_1,t)},te.prototype.i=function(t){return!(null!=t&&!Vh(t))&&this.m3(null==t||Vh(t)?t:Jl())},te.prototype.n3=function(t){var n;t:if(Th(t,hl)&&t.h())n=!0;else{for(var e=t.c();e.d();){var o=e.e();if(!this.m3(o)){n=!1;break t}}n=!0}return n},te.prototype.o1=function(t){return this.n3(t)},te.prototype.c=function(){return ml(this.k3_1)},te.$metadata$=Ah("ArrayAsCollection",[hl]),ne.prototype.d=function(){return!1},ne.prototype.p=function(){return!1},ne.prototype.q=function(){return 0},ne.prototype.e=function(){throw Fp()},ne.prototype.r=function(){throw Fp()},ne.$metadata$=rp("EmptyIterator",[Os]),oe.prototype.q3=function(){return this.o3_1},oe.prototype.n2=function(){return this.p3_1},oe.prototype.toString=function(){return"IndexedValue(index="+this.o3_1+", value="+this.p3_1+")"},oe.prototype.hashCode=function(){var t=this.o3_1;return It(t,31)+(null==this.p3_1?0:Fl(this.p3_1))|0},oe.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof oe))return!1;var n=t instanceof oe?t:Jl();return this.o3_1===n.o3_1&&!!Nl(this.p3_1,n.p3_1)},oe.$metadata$=Ah("IndexedValue"),ie.prototype.c=function(){return new ae(this.r3_1())},ie.$metadata$=Ah("IndexingIterable",[nl]),se.prototype.c=function(){return this.s3_1()},se.$metadata$=Ah(void 0,[nl]),ae.prototype.d=function(){return this.t3_1.d()},ae.prototype.e=function(){var t=this.u3_1;return this.u3_1=t+1|0,new oe(Ys(t),this.t3_1.e())},ae.$metadata$=Ah("IndexingIterator",[Ss]),ue.$metadata$=op("MapWithDefault",[cl]),le.prototype.equals=function(t){return!(null==t||!Th(t,cl))&&t.h()},le.prototype.hashCode=function(){return 0},le.prototype.toString=function(){return"{}"},le.prototype.f=function(){return 0},le.prototype.h=function(){return!0},le.prototype.h4=function(t){return!1},le.prototype.v2=function(t){return!(null!=t&&!Vh(t))&&this.h4(null==t||Vh(t)?t:Jl())},le.prototype.i4=function(t){return null},le.prototype.b3=function(t){return null==t||Vh(t)?this.i4(null==t||Vh(t)?t:Jl()):null},le.prototype.v=function(){return De()},le.prototype.c3=function(){return De()},le.prototype.d3=function(){return Qn()},le.$metadata$=rp("EmptyMap",[cl,cu]),de.prototype.e=function(){return this.q4()},de.$metadata$=Ah("IntIterator",[Ss]),ve.prototype.r4=function(){return this.s4()},ve.prototype.e=function(){return new tl(this.r4())},ve.$metadata$=Ah("CharIterator",[Ss]),ye.$metadata$=op("Sequence"),me.$metadata$=Ah("SequenceScope"),be.prototype.y4=function(t){this.x4_1=t},be.prototype.d=function(){for(;;){switch(this.u4_1){case 0:break;case 1:if(Wl(this.w4_1).d())return this.u4_1=2,!0;this.w4_1=null;break;case 4:return!1;case 3:case 2:return!0;default:throw $e(this)}this.u4_1=5;var t,n=Wl(this.x4_1);this.x4_1=null,ci(),t=Es(),n.z4(t),Es()}},be.prototype.e=function(){switch(this.u4_1){case 0:case 1:return function(t){if(t.d())return t.e();throw Fp()}(this);case 2:return this.u4_1=1,Wl(this.w4_1).e();case 3:this.u4_1=0;var t=this.v4_1,n=null==t||Vh(t)?t:Jl();return this.v4_1=null,n;default:throw $e(this)}},be.prototype.t4=function(t,n){this.v4_1=t,this.u4_1=3;var e=n;return this.x4_1=e,so()},be.prototype.a5=function(t){fi(t);null==t||Vh(t)||Jl(),this.u4_1=4},be.prototype.z4=function(t){return this.a5(t)},be.prototype.b5=function(){return Qe()},be.$metadata$=Ah("SequenceBuilderIterator",[Ss,Ue],void 0,void 0,void 0,me.prototype),we.prototype.c=function(){return ge(this.c5_1)},we.$metadata$=Ah(void 0,[ye]),ke.prototype.e=function(){if(this.e5_1<0&&xe(this),0===this.e5_1)throw Fp();var t=this.d5_1,n=Vh(t)?t:Jl();return this.e5_1=-1,n},ke.prototype.d=function(){return this.e5_1<0&&xe(this),1===this.e5_1},ke.$metadata$=Ah(void 0,[Ss]),je.prototype.c=function(){return new ke(this)},je.$metadata$=Ah("GeneratorSequence",[ye]),Ce.prototype.e=function(){return this.j5_1.l5_1(this.i5_1.e())},Ce.prototype.d=function(){return this.i5_1.d()},Ce.$metadata$=Ah(void 0,[Ss]),ze.prototype.c=function(){return new Ce(this)},ze.$metadata$=Ah("TransformingSequence",[ye]),Se.$metadata$=op("DropTakeSequence",[ye]),qe.prototype.e=function(){if(0===this.m5_1)throw Fp();var t=this.m5_1;return this.m5_1=t-1|0,this.n5_1.e()},qe.prototype.d=function(){return this.m5_1>0&&this.n5_1.d()},qe.$metadata$=Ah(void 0,[Ss]),Oe.prototype.i1=function(t){return t>=this.p5_1?this:new Oe(this.o5_1,t)},Oe.prototype.c=function(){return new qe(this)},Oe.$metadata$=Ah("TakeSequence",[ye,Se]),Pe.prototype.c=function(){return ee()},Pe.prototype.i1=function(t){return Me()},Pe.$metadata$=rp("EmptySequence",[ye,Se]),Ae.prototype.c=function(){return this.q5_1()},Ae.$metadata$=Ah(void 0,[ye]),Ie.prototype.equals=function(t){return!(null==t||!Th(t,il))&&t.h()},Ie.prototype.hashCode=function(){return 0},Ie.prototype.toString=function(){return"[]"},Ie.prototype.f=function(){return 0},Ie.prototype.h=function(){return!0},Ie.prototype.h3=function(t){return!1},Ie.prototype.i=function(t){return!1},Ie.prototype.i3=function(t){return t.h()},Ie.prototype.o1=function(t){return this.i3(t)},Ie.prototype.c=function(){return ee()},Ie.$metadata$=rp("EmptySet",[il,cu]),Be.prototype.r1=function(){if(0===this.u5_1)this.v1();else{var t=this.w5_1.x5_1[this.v5_1];this.u1(null==t||Vh(t)?t:Jl());var n;n=(this.v5_1+1|0)%this.w5_1.y5_1|0,this.v5_1=n;var e=this.u5_1;this.u5_1=e-1|0}},Be.$metadata$=Ah(void 0,void 0,void 0,void 0,void 0,jn.prototype),Le.prototype.f=function(){return this.a6_1},Le.prototype.g=function(t){var n;En().e2(t,this.a6_1),n=(this.z5_1+t|0)%this.y5_1|0;var e=this.x5_1[n];return null==e||Vh(e)?e:Jl()},Le.prototype.b6=function(){return this.a6_1===this.y5_1},Le.prototype.c=function(){return new Be(this)},Le.prototype.c6=function(t){for(var n=t.lengththis.a6_1&&(n[this.a6_1]=null),Uh(n)?n:Jl()},Le.prototype.d6=function(){var t,n=this.a6_1;return t=yl(Array(n),null),this.c6(t)},Le.prototype.toArray=function(){return this.d6()},Le.prototype.e6=function(t){var n,e,o=dn(1+(this.y5_1+(this.y5_1>>1)|0)|0,t);return 0===this.z5_1?n=ap(this.x5_1,o):(e=yl(Array(o),null),n=this.c6(e)),new Le(n,this.a6_1)},Le.prototype.f6=function(t){if(this.b6())throw Bp("ring buffer is full");var n;n=(this.z5_1+this.a6_1|0)%this.y5_1|0,this.x5_1[n]=t;var e=this.a6_1;this.a6_1=e+1|0},Le.prototype.g6=function(t){if(!(t>=0))throw Mp(Ll("n shouldn't be negative but it is "+t));if(!(t<=this.a6_1))throw Mp(Ll("n shouldn't be greater than the buffer size: n = "+t+", size = "+this.a6_1));if(t>0){var n=this.z5_1,e=(n+t|0)%this.y5_1|0;n>e?(sp(this.x5_1,null,n,this.y5_1),sp(this.x5_1,null,0,e)):sp(this.x5_1,null,n,e),this.z5_1=e;this.a6_1=this.a6_1-t|0}},Le.$metadata$=Ah("RingBuffer",[tu],void 0,void 0,void 0,In.prototype),Ne.prototype.g7=function(t,n){var e=this.h7(t,n);return e.l7_1=Es(),e.m7_1=null,e.q7()},Ne.prototype.r7=function(t,n){return this.g7(t instanceof me?t:Jl(),n)},Ne.prototype.q7=function(){var t=this.l7_1;t:for(;;)try{switch(this.j7_1){case 0:if(this.k7_1=21,this.v6_1=dn(this.p6_1,1024),this.w6_1=this.q6_1-this.p6_1|0,this.w6_1>=0){this.x6_1=_a(this.v6_1),this.y6_1=0,this.z6_1=this.r6_1,this.j7_1=12;continue t}this.a7_1=Te(this.v6_1),this.b7_1=this.r6_1,this.j7_1=1;continue t;case 1:if(!this.b7_1.d()){this.j7_1=5;continue t}if(this.c7_1=this.b7_1.e(),this.a7_1.f6(this.c7_1),this.a7_1.b6()){if(this.a7_1.a6_1this.q6_1)){this.j7_1=8;continue t}if(this.j7_1=7,(t=this.u6_1.t4(this.s6_1?this.a7_1:da(this.a7_1),this))===so())return t;continue t;case 7:this.a7_1.g6(this.q6_1),this.j7_1=6;continue t;case 8:if(this.d7_1=this.a7_1,this.d7_1.h()){this.j7_1=10;continue t}if(this.j7_1=9,(t=this.u6_1.t4(this.a7_1,this))===so())return t;continue t;case 9:this.j7_1=10;continue t;case 10:this.j7_1=11;continue t;case 11:case 19:this.j7_1=20;continue t;case 12:if(!this.z6_1.d()){this.j7_1=16;continue t}if(this.e7_1=this.z6_1.e(),this.y6_1>0){this.y6_1=this.y6_1-1|0,this.j7_1=12;continue t}this.j7_1=13;continue t;case 13:if(this.x6_1.a(this.e7_1),this.x6_1.f()===this.p6_1){if(this.j7_1=14,(t=this.u6_1.t4(this.x6_1,this))===so())return t;continue t}this.j7_1=15;continue t;case 14:this.s6_1?this.x6_1.s7():this.x6_1=_a(this.p6_1),this.y6_1=this.w6_1,this.j7_1=15;continue t;case 15:this.j7_1=12;continue t;case 16:if(this.f7_1=this.x6_1,this.f7_1.h()){this.j7_1=19;continue t}if(this.t6_1||this.x6_1.f()===this.p6_1){if(this.j7_1=17,(t=this.u6_1.t4(this.x6_1,this))===so())return t;continue t}this.j7_1=18;continue t;case 17:this.j7_1=18;continue t;case 18:this.j7_1=19;continue t;case 20:return Es();case 21:throw this.m7_1}}catch(t){if(21===this.k7_1)throw t;this.j7_1=this.k7_1,this.m7_1=t}},Ne.prototype.h7=function(t,n){var e=new Ne(this.p6_1,this.q6_1,this.r6_1,this.s6_1,this.t6_1,n);return e.u6_1=t,e},Ne.$metadata$=Ah("windowedIterator$slambda",void 0,void 0,void 0,[1],gp.prototype),Re.prototype.v7=function(t,n){return Il(t,n)},Re.prototype.compare=function(t,n){var e=null!=t&&Jh(t)?t:Jl();return this.v7(e,null!=n&&Jh(n)?n:Jl())},Re.$metadata$=rp("NaturalOrderComparator",[Vs]),He.prototype.t=function(t,n){return this.w7_1(t,n)},He.prototype.compare=function(t,n){return this.t(t,n)},He.$metadata$=Ah("sam$kotlin_Comparator$0",[Vs]),Ue.$metadata$=op("Continuation"),Ve.$metadata$=rp("Key",[Ke]),Je.$metadata$=op("ContinuationInterceptor",[Ge]),Ke.$metadata$=op("Key"),Ge.$metadata$=op("Element",[Xe]),Xe.$metadata$=op("CoroutineContext"),Ze.prototype.z7=function(t){return null},Ze.prototype.f8=function(t,n){return t},Ze.prototype.g8=function(t){return t},Ze.prototype.e8=function(t){return this},Ze.prototype.hashCode=function(){return 0},Ze.prototype.toString=function(){return"EmptyCoroutineContext"},Ze.$metadata$=rp("EmptyCoroutineContext",[Xe,cu]),oo.prototype.z7=function(t){for(var n=this;;){var e=n.j8_1.z7(t);if(null!=e)return e;var o=n.i8_1;if(!(o instanceof oo))return o.z7(t);n=o}},oo.prototype.f8=function(t,n){return n(this.i8_1.f8(t,n),this.j8_1)},oo.prototype.e8=function(t){if(null!=this.j8_1.z7(t))return this.i8_1;var n=this.i8_1.e8(t);return n===this.i8_1?this:n===Qe()?this.j8_1:new oo(n,this.j8_1)},oo.prototype.equals=function(t){return this===t||!!(t instanceof oo&&to(t)===to(this))&&function(t,n){for(var e=n;;){if(!no(t,e.j8_1))return!1;var o=e.i8_1;if(!(o instanceof oo))return no(t,Th(o,Ge)?o:Jl());e=o}}(t,this)},oo.prototype.hashCode=function(){return Fl(this.i8_1)+Fl(this.j8_1)|0},oo.prototype.toString=function(){return"["+this.f8("",eo)+"]"},oo.$metadata$=Ah("CombinedContext",[Xe,cu]),ro.prototype.c8=function(t){return this.a8_1(t)},ro.prototype.d8=function(t){return t===this||this.b8_1===t},ro.$metadata$=Ah("AbstractCoroutineContextKey",[Ke]),io.prototype.l2=function(){return this.k8_1},io.$metadata$=Ah("AbstractCoroutineContextElement",[Ge]),uo.$metadata$=Ah("CoroutineSingletons",void 0,void 0,void 0,void 0,_l.prototype),_o.prototype.m8=function(t){return this.l8_1.m8(t)},_o.prototype.q4=function(){return this.l8_1.q4()},_o.prototype.n8=function(t,n){return this.l8_1.n8(t,n)},_o.$metadata$=rp("Default",[cu],void 0,void 0,void 0,yo.prototype),yo.prototype.q4=function(){return this.m8(32)},yo.prototype.n8=function(t,n){mo(t,n);var e=n-t|0;if(e>0||e===Bs().x_1){var o;if((e&(0|-e))===e){var r=31-Dt(e)|0;o=this.m8(r)}else{var i;do{var s=this.q4()>>>1|0;i=s%e|0}while(((s-i|0)+(e-1|0)|0)<0);o=i}return t+o|0}for(;;){var a=this.q4();if(t<=a&&a>>2|0,this.s8_1=this.t8_1,this.t8_1=this.u8_1,this.u8_1=this.v8_1;var n=this.w8_1;this.v8_1=n,t=t^t<<1^n^n<<4,this.w8_1=t;return this.x8_1=this.x8_1+362437|0,t+this.x8_1|0},$o.prototype.m8=function(t){return function(t,n){return(t>>>(32-n|0)|0)&(0|-n)>>31}(this.q4(),t)},$o.$metadata$=Ah("XorWowRandom",[cu],void 0,void 0,void 0,yo.prototype),bo.$metadata$=rp("Companion"),xo.prototype.y8=function(){return this.f1_1},xo.prototype.z8=function(){return this.g1_1},xo.prototype.a9=function(t){return this.f1_1<=t&&t<=this.g1_1},xo.prototype.h=function(){return this.f1_1>this.g1_1},xo.prototype.equals=function(t){return t instanceof xo&&(!(!this.h()||!t.h())||this.f1_1===t.f1_1&&this.g1_1===t.g1_1)},xo.prototype.hashCode=function(){return this.h()?-1:It(31,this.f1_1)+this.g1_1|0},xo.prototype.toString=function(){return this.f1_1+".."+this.g1_1},xo.$metadata$=Ah("IntRange",[Ao,Eo],void 0,void 0,void 0,Oo.prototype),ko.$metadata$=rp("Companion"),jo.prototype.f9=function(t){return Kc(this.g9_1,t)<=0&&Kc(t,this.h9_1)<=0},jo.prototype.h=function(){return Kc(this.g9_1,this.h9_1)>0},jo.prototype.equals=function(t){return t instanceof jo&&(!(!this.h()||!t.h())||!!Nl(new tl(this.g9_1),new tl(t.g9_1))&&Nl(new tl(this.h9_1),new tl(t.h9_1)))},jo.prototype.hashCode=function(){var t,n;return this.h()?t=-1:(n=this.g9_1,t=It(31,n)+this.h9_1|0),t},jo.prototype.toString=function(){return new tl(this.g9_1)+".."+new tl(this.h9_1)},jo.$metadata$=Ah("CharRange",[Ao,Eo],void 0,void 0,void 0,Mo.prototype),Co.prototype.d=function(){return this.l9_1},Co.prototype.q4=function(){var t=this.m9_1;if(t===this.k9_1){if(!this.l9_1)throw Fp();this.l9_1=!1}else{this.m9_1=this.m9_1+this.j9_1|0}return t},Co.$metadata$=Ah("IntProgressionIterator",void 0,void 0,void 0,void 0,de.prototype),zo.prototype.d=function(){return this.p9_1},zo.prototype.s4=function(){var t=this.q9_1;if(t===this.o9_1){if(!this.p9_1)throw Fp();this.p9_1=!1}else{this.q9_1=this.q9_1+this.n9_1|0}return zh(t)},zo.$metadata$=Ah("CharProgressionIterator",void 0,void 0,void 0,void 0,ve.prototype),So.prototype.e1=function(t,n,e){return new Oo(t,n,e)},So.$metadata$=rp("Companion"),Oo.prototype.c=function(){return new Co(this.f1_1,this.g1_1,this.h1_1)},Oo.prototype.h=function(){return this.h1_1>0?this.f1_1>this.g1_1:this.f1_10?this.f1_1+".."+this.g1_1+" step "+this.h1_1:this.f1_1+" downTo "+this.g1_1+" step "+(0|-this.h1_1)},Oo.$metadata$=Ah("IntProgression",[nl]),Po.$metadata$=rp("Companion"),Mo.prototype.c=function(){return new zo(this.g9_1,this.h9_1,this.i9_1)},Mo.prototype.h=function(){return this.i9_1>0?Kc(this.g9_1,this.h9_1)>0:Kc(this.g9_1,this.h9_1)<0},Mo.prototype.equals=function(t){return t instanceof Mo&&(!(!this.h()||!t.h())||!(!Nl(new tl(this.g9_1),new tl(t.g9_1))||!Nl(new tl(this.h9_1),new tl(t.h9_1)))&&this.i9_1===t.i9_1)},Mo.prototype.hashCode=function(){var t;if(this.h())t=-1;else{var n;n=this.g9_1;var e,o=It(31,n);e=this.h9_1,t=It(31,o+e|0)+this.i9_1|0}return t},Mo.prototype.toString=function(){return this.i9_1>0?new tl(this.g9_1)+".."+new tl(this.h9_1)+" step "+this.i9_1:new tl(this.g9_1)+" downTo "+new tl(this.h9_1)+" step "+(0|-this.i9_1)},Mo.$metadata$=Ah("CharProgression",[nl]),Ao.$metadata$=op("ClosedRange"),Eo.$metadata$=op("OpenEndRange"),Io.$metadata$=op("KClassifier"),Do.$metadata$=op("KTypeParameter",[Io]),lr.prototype.e=function(){if(-1===this.ha_1&&cr(this),0===this.ha_1)throw Fp();var t=this.ka_1,n=t instanceof xo?t:Jl();return this.ka_1=null,this.ha_1=-1,n},lr.prototype.d=function(){return-1===this.ha_1&&cr(this),1===this.ha_1},lr.$metadata$=Ah(void 0,[Ss]),hr.prototype.c=function(){return new lr(this)},hr.$metadata$=Ah("DelimitedRangesSequence",[ye]),fr.$metadata$=op("MatchResult"),_r.$metadata$=op("MatchGroupCollection",[hl]),dr.$metadata$=op("MatchNamedGroupCollection",[_r]),$r.prototype.ab=function(t){var n;try{n=Nr(t,!0)}catch(n){throw n instanceof Ip?Ep("Invalid ISO duration string format: '"+t+"'.",n):n}return n},$r.$metadata$=rp("Companion"),Dr.prototype.ib=function(t){return Sr(this.cb_1,t)},Dr.prototype.jb=function(t){return function(t,n){return Sr(t.cb_1,n instanceof Dr?n.cb_1:Jl())}(this,t)},Dr.prototype.toString=function(){return Er(this.cb_1)},Dr.prototype.hashCode=function(){return this.cb_1.hashCode()},Dr.prototype.equals=function(t){return function(t,n){if(!(n instanceof Dr))return!1;var e=n instanceof Dr?n.cb_1:Jl();return!!t.equals(e)}(this.cb_1,t)},Dr.$metadata$=Ah("Duration",[zs]),Gr.$metadata$=Ah("DeepRecursiveScope"),Yr.$metadata$=Ah("DeepRecursiveFunction"),Xr.prototype.b5=function(){return Qe()},Xr.prototype.sb=function(t){this.pb_1=null,this.qb_1=t},Xr.prototype.z4=function(t){return this.sb(t)},Xr.prototype.lb=function(t,n){var e=n;return this.pb_1=Th(e,Ue)?e:Jl(),this.ob_1=t,so()},Xr.prototype.rb=function(){t:for(;;){var t=this.qb_1,n=this.pb_1;if(null==n){var e=new hi(t)instanceof hi?t:Jl();fi(e);var o=e;return null==o||Vh(o)?o:Jl()}var r=n;if(Nl(Kr(),t)){var i;try{var s,a=this.nb_1,u=this.ob_1;i="function"==typeof(s=a)?s(this,u,r):a.tb(this,u,r)}catch(t){if(t instanceof Error){var c;ci(),c=pi(t),r.z4(c),Es();continue t}throw t}var l=i;if(l!==so()){var h,p=null==l||Vh(l)?l:Jl();ci(),h=p,r.z4(h),Es()}}else this.qb_1=Kr(),r.z4(t)}},Xr.$metadata$=Ah("DeepRecursiveScopeImpl",[Ue],void 0,void 0,void 0,Gr.prototype),Qr.$metadata$=op("Lazy"),ti.$metadata$=Ah("LazyThreadSafetyMode",void 0,void 0,void 0,void 0,_l.prototype),ni.prototype.n2=function(){this.vb_1===oi()&&(this.vb_1=Wl(this.ub_1)(),this.ub_1=null);var t=this.vb_1;return null==t||Vh(t)?t:Jl()},ni.prototype.wb=function(){return!(this.vb_1===oi())},ni.prototype.toString=function(){return this.wb()?dl(this.n2()):"Lazy value not initialized yet."},ni.$metadata$=Ah("UnsafeLazyImpl",[Qr,cu]),ei.$metadata$=rp("UNINITIALIZED_VALUE"),ui.prototype.yb=function(t){return t},ui.prototype.zb=function(t){return pi(t)},ui.$metadata$=rp("Companion"),li.prototype.equals=function(t){return t instanceof li&&Nl(this.xb_1,t.xb_1)},li.prototype.hashCode=function(){return Fl(this.xb_1)},li.prototype.toString=function(){return"Failure("+this.xb_1+")"},li.$metadata$=Ah("Failure",[cu]),hi.prototype.toString=function(){return(t=this.ac_1)instanceof li?Ll(t):"Success("+dl(t)+")";var t},hi.prototype.hashCode=function(){return null==(t=this.ac_1)?0:Fl(t);var t},hi.prototype.equals=function(t){return function(t,n){return n instanceof hi&&!!Nl(t,n instanceof hi?n.ac_1:Jl())}(this.ac_1,t)},hi.$metadata$=Ah("Result",[cu]),_i.$metadata$=Ah("NotImplementedError",void 0,void 0,void 0,void 0,qp.prototype),di.prototype.bc=function(){return this.j4_1},di.prototype.cc=function(){return this.k4_1},di.prototype.toString=function(){return"("+this.j4_1+", "+this.k4_1+")"},di.prototype.l4=function(){return this.j4_1},di.prototype.m4=function(){return this.k4_1},di.prototype.hashCode=function(){var t=null==this.j4_1?0:Fl(this.j4_1);return It(t,31)+(null==this.k4_1?0:Fl(this.k4_1))|0},di.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof di))return!1;var n=t instanceof di?t:Jl();return!!Nl(this.j4_1,n.j4_1)&&!!Nl(this.k4_1,n.k4_1)},di.$metadata$=Ah("Pair",[cu]),yi.prototype.toString=function(){return"("+this.dc_1+", "+this.ec_1+", "+this.fc_1+")"},yi.prototype.hashCode=function(){var t=null==this.dc_1?0:Fl(this.dc_1);return t=It(t,31)+(null==this.ec_1?0:Fl(this.ec_1))|0,It(t,31)+(null==this.fc_1?0:Fl(this.fc_1))|0},yi.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof yi))return!1;var n=t instanceof yi?t:Jl();return!!Nl(this.dc_1,n.dc_1)&&!!Nl(this.ec_1,n.ec_1)&&!!Nl(this.fc_1,n.fc_1)},yi.$metadata$=Ah("Triple",[cu]),$i.$metadata$=rp("Companion"),ki.prototype.lc=function(t){return wi(this.kc_1,t)},ki.prototype.jb=function(t){return function(t,n){return wi(t.kc_1,n instanceof ki?n.kc_1:Jl())}(this,t)},ki.prototype.toString=function(){return xi(this.kc_1)},ki.prototype.hashCode=function(){return this.kc_1},ki.prototype.equals=function(t){return function(t,n){return n instanceof ki&&t===(n instanceof ki?n.kc_1:Jl())}(this.kc_1,t)},ki.$metadata$=Ah("UByte",[zs]),Si.prototype.d=function(){return this.nc_10},ea.prototype.q=function(){return this.nf_1},ea.prototype.r=function(){if(!this.p())throw Fp();var t=this;return t.nf_1=t.nf_1-1|0,this.of_1=t.nf_1,this.uf_1.g(this.of_1)},ea.$metadata$=Ah("ListIteratorImpl",[Ps],void 0,void 0,void 0,na.prototype),oa.prototype.zf=function(t,n){En().d2(t,this.yf_1),this.wf_1.zf(this.xf_1+t|0,n);var e=this.yf_1;this.yf_1=e+1|0},oa.prototype.g=function(t){return En().e2(t,this.yf_1),this.wf_1.g(this.xf_1+t|0)},oa.prototype.n4=function(t){En().e2(t,this.yf_1);var n=this.wf_1.n4(this.xf_1+t|0),e=this.yf_1;return this.yf_1=e-1|0,n},oa.prototype.p4=function(t,n){return En().e2(t,this.yf_1),this.wf_1.p4(this.xf_1+t|0,n)},oa.prototype.f=function(){return this.yf_1},oa.prototype.lf=function(){return this.wf_1.lf()},oa.$metadata$=Ah("SubList",[tu],void 0,void 0,void 0,ra.prototype),ra.prototype.a=function(t){return this.lf(),this.zf(this.f(),t),!0},ra.prototype.s7=function(){this.lf(),this.ag(0,this.f())},ra.prototype.c=function(){return new na(this)},ra.prototype.i=function(t){return this.j(t)>=0},ra.prototype.j=function(t){var n=0,e=Xn(this);if(n<=e)do{var o=n;if(n=n+1|0,Nl(this.g(o),t))return o}while(o!==e);return-1},ra.prototype.j2=function(t){var n=Xn(this);if(0<=n)do{var e=n;if(n=n+-1|0,Nl(this.g(e),t))return e}while(0<=n);return-1},ra.prototype.o=function(t){return new ea(this,t)},ra.prototype.bg=function(t,n){return new oa(this,t,n)},ra.prototype.ag=function(t,n){var e=this.o(t),o=n-t|0,r=0;if(r=0){var o,r=this,i=this.ki_1;o=n.substring(0,e),r.ki_1=i+o,this.li();var s=e+1|0;n=n.substring(s)}this.ki_1=this.ki_1+n},ou.prototype.li=function(){console.log(this.ki_1),this.ki_1=""},ou.$metadata$=Ah("BufferedOutputToConsoleLog",void 0,void 0,void 0,void 0,ru.prototype),ru.prototype.gi=function(t){var n,e=this,o=this.ki_1;n=String(t),e.ki_1=o+n},ru.$metadata$=Ah("BufferedOutput",void 0,void 0,void 0,void 0,nu.prototype),su.prototype.b5=function(){return this.mi_1.b5()},su.prototype.z4=function(t){var n=this.ni_1;if(n===co())this.ni_1=t;else{if(n!==so())throw Bp("Already resumed");this.ni_1=lo(),this.mi_1.z4(t)}},su.prototype.oi=function(){if(this.ni_1===co())return this.ni_1=so(),so();var t,n=this.ni_1;if(n===lo())t=so();else{if(n instanceof li)throw n.xb_1;t=n}return t},su.$metadata$=Ah("SafeContinuation",[Ue]),uu.$metadata$=Ah("CancellationException",void 0,void 0,void 0,void 0,Np.prototype),cu.$metadata$=op("Serializable"),_u.$metadata$=op("KCallable"),du.$metadata$=op("KClass",[Io]),vu.prototype.ri=function(){return this.qi_1},vu.prototype.equals=function(t){return t instanceof vu&&Nl(this.ri(),t.ri())},vu.prototype.hashCode=function(){var t=this.si(),n=null==t?null:Rl(t);return null==n?0:n},vu.prototype.toString=function(){return"class "+this.si()},vu.$metadata$=Ah("KClassImpl",[du]),yu.prototype.equals=function(t){return t instanceof yu&&!!vu.prototype.equals.call(this,t)&&this.vi_1===t.vi_1},yu.prototype.si=function(){return this.vi_1},yu.prototype.ti=function(t){return this.wi_1(t)},yu.$metadata$=Ah("PrimitiveKClassImpl",void 0,void 0,void 0,void 0,vu.prototype),mu.prototype.si=function(){return this.yi_1},mu.prototype.ti=function(t){return!1},mu.prototype.ri=function(){throw Gp("There's no native JS class for Nothing type")},mu.prototype.equals=function(t){return t===this},mu.prototype.hashCode=function(){return 0},mu.$metadata$=rp("NothingKClassImpl",void 0,void 0,void 0,void 0,vu.prototype),$u.prototype.si=function(){throw Bp("Unknown simpleName for ErrorKClass")},$u.prototype.ti=function(t){throw Bp("Can's check isInstance on ErrorKClass")},$u.prototype.equals=function(t){return t===this},$u.prototype.hashCode=function(){return 0},$u.$metadata$=Ah("ErrorKClass",[du]),bu.prototype.si=function(){return this.aj_1},bu.prototype.ti=function(t){return ip(t,this.ri())},bu.$metadata$=Ah("SimpleKClassImpl",void 0,void 0,void 0,void 0,vu.prototype),wu.$metadata$=op("KProperty1",[ku]),xu.$metadata$=op("KMutableProperty1",[wu,Cu]),ku.$metadata$=op("KProperty",[_u]),ju.$metadata$=op("KMutableProperty0",[zu,Cu]),Cu.$metadata$=op("KMutableProperty",[ku]),zu.$metadata$=op("KProperty0",[ku]),Su.$metadata$=op("KType"),qu.prototype.bj=function(){return this.ej_1},qu.prototype.cj=function(){return this.fj_1},qu.prototype.dj=function(){return this.gj_1},qu.prototype.equals=function(t){return!!(t instanceof qu&&Nl(this.ej_1,t.ej_1)&&Nl(this.fj_1,t.fj_1))&&this.gj_1===t.gj_1},qu.prototype.hashCode=function(){return It(It(Fl(this.ej_1),31)+Fl(this.fj_1)|0,31)+(0|this.gj_1)|0},qu.prototype.toString=function(){var t=this.ej_1,n=Th(t,du)?t:null,e=null==n?Ll(this.ej_1):null!=n.si()?n.si():"(non-denotable type)",o=this.fj_1.h()?"":en(this.fj_1,", ","<",">",0,null,null,56),r=this.gj_1?"?":"";return vl(e,o)+r},qu.$metadata$=Ah("KTypeImpl",[Su]),Yu.prototype.bk=function(){return this.hj_1},Yu.prototype.ck=function(){return this.ij_1},Yu.prototype.dk=function(){return this.jj_1},Yu.prototype.ek=function(){return this.kj_1},Yu.prototype.fk=function(){return this.lj_1},Yu.prototype.gk=function(){return this.mj_1},Yu.prototype.hk=function(){return this.nj_1},Yu.prototype.ik=function(){return this.oj_1},Yu.prototype.jk=function(){return this.pj_1},Yu.prototype.kk=function(){return this.qj_1},Yu.prototype.lk=function(){return this.rj_1},Yu.prototype.mk=function(){return this.sj_1},Yu.prototype.nk=function(){return this.tj_1},Yu.prototype.ok=function(){return this.uj_1},Yu.prototype.pk=function(){return this.vj_1},Yu.prototype.qk=function(){return this.wj_1},Yu.prototype.rk=function(){return this.xj_1},Yu.prototype.sk=function(){return this.yj_1},Yu.prototype.tk=function(){return this.zj_1},Yu.prototype.uk=function(){return this.ak_1},Yu.prototype.functionClass=function(t){var n,e,o=Ou()[t];if(null==o){var r=new yu(Function,"Function"+t,(e=t,function(t){return"function"==typeof t&&t.length===e}));Ou()[t]=r,n=r}else n=o;return n},Yu.$metadata$=rp("PrimitiveClasses"),Object.defineProperty(Yu.prototype,"anyClass",{configurable:!0,get:Yu.prototype.bk}),Object.defineProperty(Yu.prototype,"numberClass",{configurable:!0,get:Yu.prototype.ck}),Object.defineProperty(Yu.prototype,"nothingClass",{configurable:!0,get:Yu.prototype.dk}),Object.defineProperty(Yu.prototype,"booleanClass",{configurable:!0,get:Yu.prototype.ek}),Object.defineProperty(Yu.prototype,"byteClass",{configurable:!0,get:Yu.prototype.fk}),Object.defineProperty(Yu.prototype,"shortClass",{configurable:!0,get:Yu.prototype.gk}),Object.defineProperty(Yu.prototype,"intClass",{configurable:!0,get:Yu.prototype.hk}),Object.defineProperty(Yu.prototype,"floatClass",{configurable:!0,get:Yu.prototype.ik}),Object.defineProperty(Yu.prototype,"doubleClass",{configurable:!0,get:Yu.prototype.jk}),Object.defineProperty(Yu.prototype,"arrayClass",{configurable:!0,get:Yu.prototype.kk}),Object.defineProperty(Yu.prototype,"stringClass",{configurable:!0,get:Yu.prototype.lk}),Object.defineProperty(Yu.prototype,"throwableClass",{configurable:!0,get:Yu.prototype.mk}),Object.defineProperty(Yu.prototype,"booleanArrayClass",{configurable:!0,get:Yu.prototype.nk}),Object.defineProperty(Yu.prototype,"charArrayClass",{configurable:!0,get:Yu.prototype.ok}),Object.defineProperty(Yu.prototype,"byteArrayClass",{configurable:!0,get:Yu.prototype.pk}),Object.defineProperty(Yu.prototype,"shortArrayClass",{configurable:!0,get:Yu.prototype.qk}),Object.defineProperty(Yu.prototype,"intArrayClass",{configurable:!0,get:Yu.prototype.rk}),Object.defineProperty(Yu.prototype,"longArrayClass",{configurable:!0,get:Yu.prototype.sk}),Object.defineProperty(Yu.prototype,"floatArrayClass",{configurable:!0,get:Yu.prototype.tk}),Object.defineProperty(Yu.prototype,"doubleArrayClass",{configurable:!0,get:Yu.prototype.uk}),nc.$metadata$=op("Appendable"),ic.prototype.ee=function(){return this.ga_1.length},ic.prototype.fe=function(t){var n=this.ga_1;if(!(t>=0&&t<=Xo(n)))throw Zp("index: "+t+", length: "+this.ee()+"}");return Ol(n,t)},ic.prototype.ge=function(t,n){return this.ga_1.substring(t,n)},ic.prototype.r9=function(t){return this.ga_1=this.ga_1+new tl(t),this},ic.prototype.b=function(t){return this.ga_1=this.ga_1+dl(t),this},ic.prototype.vk=function(t,n,e){var o=t;return this.hb(null==o?"null":o,n,e)},ic.prototype.eb=function(t){return this.ga_1=this.ga_1+dl(t),this},ic.prototype.fb=function(t){var n=this,e=this.ga_1,o=t;return n.ga_1=e+(null==o?"null":o),this},ic.prototype.gb=function(t,n){En().d2(t,this.ee());var e,o=this.ga_1.substring(0,t)+new tl(n);return e=this.ga_1.substring(t),this.ga_1=o+e,this},ic.prototype.wk=function(t){if(t<0)throw Mp("Negative new length: "+t+".");if(t<=this.ee()){var n;n=this.ga_1.substring(0,t),this.ga_1=n}else{var e=this.ee();if(eMl(t))throw Zp("Start index out of bounds: "+n+", input length: "+Ml(t));return $c(this.z9_1,Ll(t),n,this.z9_1)},mc.prototype.el=function(t,n,e,o){return 0!=(2&e)&&(n=0),this.dl(t,n)},mc.prototype.fl=function(t,n){if(n<0||n>Ml(t))throw Zp("Start index out of bounds: "+n+", input length: "+Ml(t));return e=this,o=t,r=n,new je((function(){return e.dl(o,r)}),vc);var e,o,r},mc.prototype.gl=function(t,n,e,o){return 0!=(2&e)&&(n=0),this.fl(t,n)},mc.prototype.da=function(t,n){if(!tr(n,92,!1,2)&&!tr(n,36,!1,2)){var e=Ll(t),o=this.z9_1;return e.replace(o,n)}return this.hl(t,yc(n))},mc.prototype.hl=function(t,n){var e=this.el(t,0,2,null);if(null==e)return Ll(t);var o=0,r=Ml(t),i=ec();do{var s=Wl(e);i.vk(t,o,s.ra().y8()),i.b(n(s)),o=s.ra().z8()+1|0,e=s.e()}while(o>>e|0|t.c1_1<<(32-e|0),t.c1_1>>>e|0):new Zl(32===e?t.c1_1:t.c1_1>>>(e-32|0)|0,0)}(this,t)},Zl.prototype.xc=function(t){return new Zl(this.b1_1&t.b1_1,this.c1_1&t.c1_1)},Zl.prototype.fn=function(t){return new Zl(this.b1_1|t.b1_1,this.c1_1|t.c1_1)},Zl.prototype.bb=function(t){return new Zl(this.b1_1^t.b1_1,this.c1_1^t.c1_1)},Zl.prototype.en=function(){return new Zl(~this.b1_1,~this.c1_1)},Zl.prototype.gn=function(){return xh(this.b1_1)},Zl.prototype.hn=function(){return jh(this.b1_1)},Zl.prototype.wa=function(){return this.b1_1},Zl.prototype.pi=function(){return lh(this)},Zl.prototype.valueOf=function(){return this.pi()},Zl.prototype.equals=function(t){return t instanceof Zl&&hh(this,t)},Zl.prototype.hashCode=function(){return t=this,wh(),t.b1_1^t.c1_1;var t},Zl.prototype.toString=function(){return ph(this,10)},Zl.$metadata$=Ah("Long",[zs],void 0,void 0,void 0,Ms.prototype),pp.$metadata$=rp("Digit"),_p.$metadata$=rp("Letter"),vp.$metadata$=rp("OtherLowercase"),gp.prototype.b5=function(){return Wl(this.o7_1)},gp.prototype.t7=function(){var t,n=this.p7_1;if(null==n){var e=this.b5().z7(We()),o=null==e?null:e.x7(this),r=null==o?this:o;this.p7_1=r,t=r}else t=n;return t},gp.prototype.u7=function(t){var n,e=this;if(si(t))n=null;else{var o=t;n=null==o||Vh(o)?o:Jl()}for(var r=n,i=ai(t);;){var s=e;null==i?s.l7_1=r:(s.j7_1=s.k7_1,s.m7_1=i);try{var a=s.q7();if(a===so())return Es();r=a,i=null}catch(t){r=null,i=t}mp(s);var u=Wl(s.i7_1);if(!(u instanceof gp)){if(null!=i){var c,l=Wl(i);ci(),c=pi(l),u.z4(c),Es()}else{var h,p=r;ci(),h=p,u.z4(h),Es()}return Es()}e=u,Es()}},gp.prototype.z4=function(t){return this.u7(t)},gp.$metadata$=Ah("CoroutineImpl",[Ue]),$p.prototype.b5=function(){throw Bp("This continuation is already complete")},$p.prototype.u7=function(t){throw Bp("This continuation is already complete")},$p.prototype.z4=function(t){return this.u7(t)},$p.prototype.toString=function(){return"This continuation is already complete"},$p.$metadata$=rp("CompletedContinuation",[Ue]),xp.prototype.q7=function(){if(null!=this.m7_1)throw this.m7_1;var t;return"function"==typeof(t=this.xn_1)?t(this.yn_1,this.wn_1):this.xn_1.r7(this.yn_1,this.wn_1)},xp.$metadata$=Ah(void 0,void 0,void 0,void 0,void 0,gp.prototype),kp.prototype.q7=function(){if(null!=this.m7_1)throw this.m7_1;return this.ho_1()},kp.$metadata$=Ah(void 0,void 0,void 0,void 0,void 0,gp.prototype),zp.$metadata$=Ah("Exception",void 0,void 0,void 0,void 0,Error.prototype),qp.$metadata$=Ah("Error",void 0,void 0,void 0,void 0,Error.prototype),Ip.$metadata$=Ah("IllegalArgumentException",void 0,void 0,void 0,void 0,Jp.prototype),Np.$metadata$=Ah("IllegalStateException",void 0,void 0,void 0,void 0,Jp.prototype),Hp.$metadata$=Ah("NoSuchElementException",void 0,void 0,void 0,void 0,Jp.prototype),Jp.$metadata$=Ah("RuntimeException",void 0,void 0,void 0,void 0,zp.prototype),Yp.$metadata$=Ah("UnsupportedOperationException",void 0,void 0,void 0,void 0,Jp.prototype),Xp.$metadata$=Ah("ConcurrentModificationException",void 0,void 0,void 0,void 0,Jp.prototype),Qp.$metadata$=Ah("IndexOutOfBoundsException",void 0,void 0,void 0,void 0,Jp.prototype),nf.$metadata$=Ah("AssertionError",void 0,void 0,void 0,void 0,qp.prototype),of.$metadata$=Ah("ArithmeticException",void 0,void 0,void 0,void 0,Jp.prototype),sf.$metadata$=Ah("NumberFormatException",void 0,void 0,void 0,void 0,Ip.prototype),uf.$metadata$=Ah("NullPointerException",void 0,void 0,void 0,void 0,Jp.prototype),lf.$metadata$=Ah("NoWhenBranchMatchedException",void 0,void 0,void 0,void 0,Jp.prototype),pf.$metadata$=Ah("ClassCastException",void 0,void 0,void 0,void 0,Jp.prototype),_f.$metadata$=Ah("UninitializedPropertyAccessException",void 0,void 0,void 0,void 0,Jp.prototype),op("Function1"),op("Function0"),$f.$metadata$=op("SuspendFunction1"),bf.$metadata$=op("SuspendFunction2"),oo.prototype.g8=Bt,io.prototype.z7=Lt,io.prototype.f8=Nt,io.prototype.e8=Ft,io.prototype.g8=Bt,Na.prototype.uh=function(){var t=Object.create(null);return t.foo=1,yf(t,"foo"),t},W=null,Ot=0,t.$_$=t.$_$||{},t.$_$.a=function(t,n,e){return new qu(t,cp(n),e)},t.$_$.b=function(t,n){if(t instanceof vu&&n instanceof vu){var e,o=n.ri().$metadata$,r=null==o?null:o.associatedObjectKey;if(null==(e=null==r?null:r))return null;var i=e,s=t.ri().$metadata$,a=null==s?null:s.associatedObjects;if(null==a)return null;var u=a[i];return null==u?null:u()}return null},t.$_$.c=function(t){var n;switch(typeof t){case"string":n=Xu().rj_1;break;case"number":n=vf(t,0)===t?Xu().nj_1:Xu().pj_1;break;case"boolean":n=Xu().kj_1;break;case"function":var e;e=t,n=Xu().functionClass(e.length);break;default:var o;if(Gh(t))o=Xu().tj_1;else if(Zh(t))o=Xu().uj_1;else if(Yh(t))o=Xu().vj_1;else if(Xh(t))o=Xu().wj_1;else if(Qh(t))o=Xu().xj_1;else if(np(t))o=Xu().yj_1;else if(tp(t))o=Xu().zj_1;else if(ep(t))o=Xu().ak_1;else if(Th(t,du))o=Zu(du);else if(Uh(t))o=Xu().qj_1;else{var r=Object.getPrototypeOf(t).constructor;o=r===Object?Xu().hj_1:r===Error?Xu().sj_1:Qu(r)}n=o}return n},t.$_$.d=Zu,t.$_$.e=function(t){var n=0,e=0,o=t.length-1|0;if(e<=o)do{var r=e;e=e+1|0,n=n+t[r].length|0}while(r!==o);var i=t[0],s=new i.constructor(n);if(null!=i.$type$){var a=i.$type$;s.$type$=a}n=0;var u=0,c=t.length-1|0;if(u<=c)do{var l=u;u=u+1|0;var h=t[l],p=0,f=h.length-1|0;if(p<=f)do{var _=p;p=p+1|0;var d=n;n=d+1|0,s[d]=h[_]}while(_!==f)}while(l!==c);return s},t.$_$.f=function(){return function(){if(ot)return Es();ot=!0,new gc("IGNORE_CASE",0,"i"),et=new gc("MULTILINE",1,"m")}(),et},t.$_$.g=Rc,t.$_$.h=function(){return function(){if(P)return Es();P=!0,new ti("SYNCHRONIZED",0),O=new ti("PUBLICATION",1),new ti("NONE",2)}(),O},t.$_$.i=function(t,n){return null==t||Vh(t)?t:Jl()},t.$_$.j=function(t,n,e,o,r,i){return 0!=(2&r)&&(e=0),0!=(4&r)&&(o=t.length),function(t,n,e,o){En().f2(e,o,t.length),t.fill(n,e,o)}(t,n,e,o)},t.$_$.k=en,t.$_$.l=Vt,t.$_$.m=function(t,n,e,o,r){return 0!=(2&o)&&(e=!1),Jo(t,n,e)},t.$_$.n=er,t.$_$.o=Wo,t.$_$.p=function(t,n,e,o,r,i){return 0!=(4&r)&&(o=!1),function(t,n,e,o){var r=new RegExp(dc().bl(n),o?"gui":"gu"),i=dc().cl(e);return t.replace(r,i)}(t,n,e,o)},t.$_$.q=function(t,n,e,o,r,i){return 0!=(2&r)&&(e=!1),0!=(4&r)&&(o=0),Vo(t,n,e,o)},t.$_$.r=Oc,t.$_$.s=_a,t.$_$.t=fa,t.$_$.u=da,t.$_$.v=Oa,t.$_$.w=Sa,t.$_$.x=function(t){return function(t,n){return za(n),n.sg(t),n}(t,Object.create(Pa.prototype))},t.$_$.y=Aa,t.$_$.z=function(){return t=Object.create(Ia.prototype),pa.call(t),Ia.call(t),t.ih_1=Sa(),t;var t},t.$_$.a1=function(t){return function(t,n){return pa.call(n),Ia.call(n),n.ih_1=Oa(t.f()),n.k1(t),n}(t,Object.create(Ia.prototype))},t.$_$.b1=Ka,t.$_$.c1=Wa,t.$_$.d1=function(t){return function(t,n){return za(n),Ga.call(n),n.e4_1=Sa(),n.sg(t),n}(t,Object.create(Ga.prototype))},t.$_$.e1=Ya,t.$_$.f1=function(t){return function(t,n){return Ea(Wa(),n),Qa.call(n),n.k1(t),n}(t,Object.create(Qa.prototype))},t.$_$.g1=function t(n){var e=function(t,n){return Tp(t,n),uu.call(n),n}(n,Object.create(uu.prototype));return Hl(e,t),e},t.$_$.h1=au,t.$_$.i1=function t(n,e){var o=au(n,e,Object.create(uu.prototype));return Hl(o,t),o},t.$_$.j1=function(t){return function(t,n){return su.call(n,t,co()),n}(t,Object.create(su.prototype))},t.$_$.k1=function(t){return function(t,n){return mc.call(n,t,Ee()),n}(t,Object.create(mc.prototype))},t.$_$.l1=function(t,n){return function(t,n,e){return mc.call(e,t,Ws(n)),e}(t,n,Object.create(mc.prototype))},t.$_$.m1=ec,t.$_$.n1=rc,t.$_$.o1=function t(){var n,e=(Up(n=Object.create(Xp.prototype)),Xp.call(n),n);return Hl(e,t),e},t.$_$.p1=function t(n){var e=function(t,n){return Vp(t,n),Xp.call(n),n}(n,Object.create(Xp.prototype));return Hl(e,t),e},t.$_$.q1=function(t,n,e){return Ul(e,t,n),qp.call(e),e},t.$_$.r1=Op,t.$_$.s1=Pp,t.$_$.t1=Mp,t.$_$.u1=Ap,t.$_$.v1=Dp,t.$_$.w1=Bp,t.$_$.x1=function t(n,e){var o=Lp(n,e,Object.create(Np.prototype));return Hl(o,t),o},t.$_$.y1=Zp,t.$_$.z1=Fp,t.$_$.a2=Wp,t.$_$.b2=function t(n,e){var o=Wp(n,e,Object.create(Jp.prototype));return Hl(o,t),o},t.$_$.c2=Kp,t.$_$.d2=Gp,t.$_$.e2=function(t){var n=rc();jr(t)&&n.r9(45),n.fb("PT");var e=zr(t),o=Ar(e),r=qr(e),i=Or(e),s=Pr(e),a=o;Cr(t)&&(a=new Zl(1316134911,2328));var u=!a.equals(new Zl(0,0)),c=0!==i||!(0===s),l=0!==r||!!c&&u;return u&&n.eb(a).r9(72),l&&n.eb(r).r9(77),(c||!u&&!l)&&(Ir(n,0,i,s,9,"S",!0),Es()),n.toString()},t.$_$.f2=function(t){return function(t){var n,e=yr(t);if(mr(t))n=e;else{var o,r;if(Xl(),o=new Zl(-1,2147483647).t9(Sh(1e6)),e.d1(o)>0)Xl(),n=new Zl(-1,2147483647);else Xl(),r=new Zl(0,-2147483648).t9(Sh(1e6)),e.d1(r)<0?(Xl(),n=new Zl(0,-2147483648)):n=Hr(e)}return n}(t)},t.$_$.g2=Jc,t.$_$.h2=Gc,t.$_$.i2=Yc,t.$_$.j2=Xc,t.$_$.k2=ri,t.$_$.l2=ai,t.$_$.m2=si,t.$_$.n2=ii,t.$_$.o2=mi,t.$_$.p2=gi,t.$_$.q2=xi,t.$_$.r2=ji,t.$_$.s2=function(t){return new Int8Array(t)},t.$_$.t2=function(t,n){return t[n]},t.$_$.u2=function(t,n,e){var o;o=e,t[n]=o},t.$_$.v2=zi,t.$_$.w2=Ci,t.$_$.x2=Mi,t.$_$.y2=Ai,t.$_$.z2=Ti,t.$_$.a3=function(t){return new Int32Array(t)},t.$_$.b3=Li,t.$_$.c3=function(t,n){return t[n]},t.$_$.d3=function(t,n,e){var o;o=e,t[n]=o},t.$_$.e3=Fi,t.$_$.f3=Ni,t.$_$.g3=Wi,t.$_$.h3=Ji,t.$_$.i3=Xi,t.$_$.j3=function(t){return bl(t)},t.$_$.k3=Qi,t.$_$.l3=function(t,n){return t[n]},t.$_$.m3=function(t,n,e){var o;o=e,t[n]=o},t.$_$.n3=ns,t.$_$.o3=ts,t.$_$.p3=ss,t.$_$.q3=as,t.$_$.r3=hs,t.$_$.s3=function(t){return new Int16Array(t)},t.$_$.t3=fs,t.$_$.u3=function(t,n){return t[n]},t.$_$.v3=function(t,n,e){var o;o=e,t[n]=o},t.$_$.w3=ds,t.$_$.x3=_s,t.$_$.y3=We,t.$_$.z3=Qe,t.$_$.a4=function(){return null==V&&new Us,V},t.$_$.b4=function(){return null==L&&new Is,L},t.$_$.c4=Rs,t.$_$.d4=Ns,t.$_$.e4=Bs,t.$_$.f4=function(){return null==N&&new Ds,N},t.$_$.g4=function(){return null==U&&new Hs,U},t.$_$.h4=vo,t.$_$.i4=Xu,t.$_$.j4=br,t.$_$.k4=Qc,t.$_$.l4=Xl,t.$_$.m4=ci,t.$_$.n4=bi,t.$_$.o4=Ii,t.$_$.p4=Gi,t.$_$.q4=cs,t.$_$.r4=Es,t.$_$.s4=kn,t.$_$.t4=In,t.$_$.u4=Un,t.$_$.v4=ra,t.$_$.w4=Jn,t.$_$.x4=ma,t.$_$.y4=hl,t.$_$.z4=Pa,t.$_$.a5=Ia,t.$_$.b5=nl,t.$_$.c5=Ss,t.$_$.d5=Ga,t.$_$.e5=Qa,t.$_$.f5=Os,t.$_$.g5=el,t.$_$.h5=ul,t.$_$.i5=cl,t.$_$.j5=ll,t.$_$.k5=Ps,t.$_$.l5=rl,t.$_$.m5=al,t.$_$.n5=ol,t.$_$.o5=il,t.$_$.p5=function(t,n){return t.k1(cp(n))},t.$_$.q5=fe,t.$_$.r5=function(t,n,e,o,r){En().f2(o,r,t.length);var i=r-o|0;if(En().f2(e,e+i|0,n.length),Tt(n)&&Tt(t)){var s=t.subarray(o,r);n.set(s,e)}else if(t!==n||e<=o){var a=0;if(a0&&n>0))throw Mp(Ll(t!==n?"Both size "+t+" and step "+n+" must be greater than zero.":"size "+t+" must be greater than zero."))}(n,e),Th(t,tu)&&Th(t,el)){var r=t.f(),i=_a((r/e|0)+(0==(r%e|0)?0:1)|0),s=0;t:for(;0<=s&&s=0))throw Mp(Ll("Invalid new array size: "+n+"."));return Kl(t,new Int16Array(n))},t.$_$.b6=function(t,n){if(!(n>=0))throw Mp(Ll("Invalid new array size: "+n+"."));var e=Gl(t,n,new Zl(0,0));return e.$type$="LongArray",e},t.$_$.c6=function(t,n){if(!(n>=0))throw Mp(Ll("Invalid new array size: "+n+"."));var e=Gl(t,n,!1);return e.$type$="BooleanArray",e},t.$_$.d6=function(t,n){if(!(n>=0))throw Mp(Ll("Invalid new array size: "+n+"."));var e=Kl(t,$l(n));return e.$type$="CharArray",e},t.$_$.e6=function(t,n){if(!(n>=0))throw Mp(Ll("Invalid new array size: "+n+"."));return Kl(t,new Int8Array(n))},t.$_$.f6=function(t,n){if(!(n>=0))throw Mp(Ll("Invalid new array size: "+n+"."));return Kl(t,new Float64Array(n))},t.$_$.g6=function(t,n){if(!(n>=0))throw Mp(Ll("Invalid new array size: "+n+"."));return Kl(t,new Float32Array(n))},t.$_$.h6=ap,t.$_$.i6=function(t,n){if(!(n>=0))throw Mp(Ll("Invalid new array size: "+n+"."));return Kl(t,new Int32Array(n))},t.$_$.j6=Xs,t.$_$.k6=Kn,t.$_$.l6=ce,t.$_$.m6=Ee,t.$_$.n6=sp,t.$_$.o6=function(t){return t.h()?null:t.g(0)},t.$_$.p6=function(t){if(Th(t,el))return t.h()?null:t.g(0);var n=t.c();return n.d()?n.e():null},t.$_$.q6=tn,t.$_$.r6=function(t){if(Th(t,el))return tn(t);var n=t.c();if(!n.d())throw Rp("Collection is empty.");return n.e()},t.$_$.s6=function(t){for(var n=fa(),e=t.c();e.d();)fe(n,e.e());return n},t.$_$.t6=function(t,n){return function(t,n){if(Th(t,ue))return t.v3(n);var e=t.b3(n);if(null==e&&!t.v2(n))throw Rp("Key "+n+" is missing in the map.");return null==e||Vh(e)?e:Jl()}(t,n)},t.$_$.u6=Rt,t.$_$.v6=function(t){return new xo(0,function(t){return t.length-1|0}(t))},t.$_$.w6=function(t){return new xo(0,Wt(t))},t.$_$.x6=function(t){return t.length-1|0},t.$_$.y6=Xn,t.$_$.z6=Ht,t.$_$.a7=function(t){return t.h()?null:t.g(t.f()-1|0)},t.$_$.b7=function(t){if(t.h())throw Rp("List is empty.");return t.g(Xn(t))},t.$_$.c7=Js,t.$_$.d7=function(t){return t.length>0?cp(t):Kn()},t.$_$.e7=Ks,t.$_$.f7=function(t){return t.length>0?(n=t,pe(e=Ka(t.length),n),e):ce();var n,e},t.$_$.g7=function(t){var n=t.c();if(!n.d())throw Fp();for(var e=n.e();n.d();){var o=n.e();Il(e,o)>0&&(e=o)}return e},t.$_$.h7=Gn,t.$_$.i7=function(t){return Jt(t,Za(t.length))},t.$_$.j7=function(t,n){return function(t,n){var e=t.slice();e.length=e.length+n.f()|0,void 0!==t.$type$&&(e.$type$=t.$type$);for(var o=t.length,r=n.c();r.d();){var i=r.e(),s=o;o=s+1|0,e[s]=i}return e}(t,n)},t.$_$.k7=function(t,n){var e=function(t){return Th(t,hl)?t.f():null}(n),o=null==e?null:t.f()+e|0,r=Za(null==o?It(t.f(),2):o);return r.k1(t),fe(r,n),r},t.$_$.l7=function(t,n){return function(t,n,e){if(!Th(t,tu))return _e(Th(t,pl)?t:Jl(),n,e);var o=0,r=0,i=Xn(t);if(r<=i)do{var s=r;r=r+1|0;var a=t.g(s);n(a)!==e&&(o!==s&&t.p4(o,a),o=o+1|0)}while(s!==i);if(o0?function(t){switch(t.length){case 0:return Ee();case 1:return Ws(t[0]);default:return Jt(t,Za(t.length))}}(t):Ee()},t.$_$.q7=function(t){return 1===t.f()?t.g(0):null},t.$_$.r7=function(t,n){Zs(t,n)},t.$_$.s7=function(t){if(Th(t,hl)){if(t.f()<=1)return Zt(t);var n=Xs(t),e=Uh(n)?n:Jl();return function(t){t.length>1&&function(t){if(ga()){var n=wa;t.sort(n)}else $a(t,0,Wt(t),Fe())}(t)}(e),cp(e)}var o=rn(t);return function(t){Zs(t,Fe())}(o),o},t.$_$.t7=function(t){for(var n=gl(t.f()),e=0,o=t.c();o.d();){var r=o.e(),i=e;e=i+1|0,n[i]=r}return n},t.$_$.u7=function(t){for(var n=new Float32Array(t.f()),e=0,o=t.c();o.d();){var r=o.e(),i=e;e=i+1|0,n[i]=r}return n},t.$_$.v7=function(t){return an(t,Aa(re(t,12)))},t.$_$.w7=function(t){for(var n=new Int32Array(t.f()),e=0,o=t.c();o.d();){var r=o.e(),i=e;e=i+1|0,n[i]=r}return n},t.$_$.x7=Zt,t.$_$.y7=function(t){switch(t.length){case 0:return Kn();case 1:return Js(t[0]);default:return function(t){return da(function(t){return new te(t,!1)}(t))}(t)}},t.$_$.z7=function(t){if(Th(t,hl)){var n;switch(t.f()){case 0:n=ce();break;case 1:e=Th(t,el)?t.g(0):t.c().e(),pe(r=Oa((o=[e]).length),o),n=r;break;default:n=he(t,Ka(t.f()))}return n}var e,o,r;return function(t){var n;n=0===t.f()?ce():t;return n}(he(t,Wa()))},t.$_$.a8=Qt,t.$_$.b8=on,t.$_$.c8=function(t){return new ie((n=t,function(){return ml(n)}));var n},t.$_$.d8=function(t,n){return t===n?0:null==t?-1:null==n?1:Il(null!=t&&Jh(t)?t:Jl(),n)},t.$_$.e8=uu,t.$_$.f8=so,t.$_$.g8=wp,t.$_$.h8=bp,t.$_$.i8=io,t.$_$.j8=ro,t.$_$.k8=function(t){if(t instanceof ro){var n;if(t.d8(this.l2())){var e=t.c8(this);n=null!=e&&Th(e,Ge)?e:null}else n=null;return n}return We()===t?Th(this,Ge)?this:Jl():null},t.$_$.l8=function(t){return t instanceof ro?t.d8(this.l2())&&null!=t.c8(this)?Qe():this:We()===t?Qe():this},t.$_$.m8=Je,t.$_$.n8=Ue,t.$_$.o8=Nt,t.$_$.p8=Lt,t.$_$.q8=Ft,t.$_$.r8=Ge,t.$_$.s8=Ke,t.$_$.t8=Bt,t.$_$.u8=gp,t.$_$.v8=$f,t.$_$.w8=bf,t.$_$.x8=function(t,n,e){var o,r=bp(wp(t,n,e));ci(),o=Es(),r.z4(o),Es()},t.$_$.y8=function(t){iu(),(iu(),K).hi(t)},t.$_$.z8=function(t){return Object.prototype.toString.call(t)},t.$_$.a9=ml,t.$_$.b9=gl,t.$_$.c9=Hl,t.$_$.d9=$l,t.$_$.e9=Ol,t.$_$.f9=Ml,t.$_$.g9=Al,t.$_$.h9=Ah,t.$_$.i9=Il,t.$_$.j9=Nl,t.$_$.k9=Ul,t.$_$.l9=yl,t.$_$.m9=function(t,n,e,o){return Mh(),Ph(t,0,n,o,e?o:null)},t.$_$.n9=Sl,t.$_$.o9=Ph,t.$_$.p9=Rl,t.$_$.q9=Fl,t.$_$.r9=function(t){return new xl(t)},t.$_$.s9=op,t.$_$.t9=Uh,t.$_$.u9=Gh,t.$_$.v9=Yh,t.$_$.w9=Zh,t.$_$.x9=Kh,t.$_$.y9=ep,t.$_$.z9=tp,t.$_$.aa=Qh,t.$_$.ba=Th,t.$_$.ca=np,t.$_$.da=Vh,t.$_$.ea=Xh,t.$_$.fa=fu,t.$_$.ga=bl,t.$_$.ha=qh,t.$_$.ia=zh,t.$_$.ja=function(t){return+t},t.$_$.ka=kh,t.$_$.la=rp,t.$_$.ma=xh,t.$_$.na=Sh,t.$_$.oa=jh,t.$_$.pa=Ll,t.$_$.qa=vn,t.$_$.ra=dn,t.$_$.sa=function(t,n){try{return function(t,n){if(n.h())throw Mp("Cannot get random in empty range: "+n);return n.g1_1Bs().x_1?t.n8(n.f1_1-1|0,n.g1_1)+1|0:t.q4()}(n,t)}catch(t){throw t instanceof Ip?Rp(t.message):t}},t.$_$.ta=function(t,n){return function(t,n){if(!t)throw Mp("Step must be positive, was: "+Ll(n)+".")}(n>0,n),qo().e1(t.f1_1,t.g1_1,t.h1_1>0?n:0|-n)},t.$_$.ua=pn,t.$_$.va=du,t.$_$.wa=ju,t.$_$.xa=xu,t.$_$.ya=wu,t.$_$.za=Do,t.$_$.ab=me,t.$_$.bb=function(t){var n=t.c();if(!n.d())return null;for(var e=n.e();n.d();)e=n.e();return e},t.$_$.cb=function(t){return new we(t)},t.$_$.db=Jo,t.$_$.eb=function(t,n,e){if(null==t)return null==n;if(null==n)return!1;if(!e)return t==n;if(t.length!==n.length)return!1;var o=0,r=t.length;if(or)return 0;var s=3&i;if(0===s){var a=2,u=o,c=0;if(c<=1)do{if(c=c+1|0,(u=u+(i>>a&127)|0)>n)return 3;if((u=u+(i>>(a=a+7|0)&127)|0)>n)return 0;a=a+7|0}while(c<=1);return 3}if(i<=7)return s;var l=n-o|0;return i>>It(2,i<=31?l%2|0:l)&3}(t)||function(t){var n=hp(yp().mn_1,t);return n>=0&&t<(yp().mn_1[n]+yp().nn_1[n]|0)}(Yc(t))}(t)},t.$_$.hb=function(t){var n;switch(Ml(t)){case 0:throw Rp("Char sequence is empty.");case 1:n=Ol(t,0);break;default:throw Mp("Char sequence has more than one element.")}return n},t.$_$.ib=function(t){return hn(t)},t.$_$.jb=function(t){return null!=t&&"true"===t.toLowerCase()},t.$_$.kb=function(t){var n=+t;return hu(n)&&!fc(t)||0===n&&Pc(t)?null:n},t.$_$.lb=lc,t.$_$.mb=Ro,t.$_$.nb=pc,t.$_$.ob=Fo,t.$_$.pb=hc,t.$_$.qb=function(t){var n,e=function(t){return function(t,n){var e=bs(t,n);if(null==(null==e?null:new Bi(e)))return null;var o=e;bi();var r=255;return ws(o,r)>0?null:xh(o)}(t,10)}(t);return null==(null==e?null:new ki(e))?Ho(t):n=e,n},t.$_$.rb=function(t){var n,e=function(t){return bs(t,10)}(t);return null==(null==e?null:new Bi(e))?Ho(t):n=e,n},t.$_$.sb=$s,t.$_$.tb=function(t){var n,e=$s(t);return null==(null==e?null:new Zi(e))?Ho(t):n=e,n},t.$_$.ub=function(t){var n,e=function(t){return function(t,n){var e=bs(t,n);if(null==(null==e?null:new Bi(e)))return null;var o=e;cs();var r=65535;return ws(o,r)>0?null:jh(o)}(t,10)}(t);return null==(null==e?null:new ps(e))?Ho(t):n=e,n},t.$_$.vb=function(t){return function(t,n){for(var e=function(t){return gn(Yo(t))}(t),o=fa(),r=e.c();r.d();){var i=r.e();Uo(i)&&o.a(i)}for(var s=o,a=_a(re(s,10)),u=s.c();u.d();){var c=u.e();a.a(Lo(c))}for(var l=function(t){var n=t.c();if(!n.d())return null;for(var e=n.e();n.d();){var o=n.e();Il(e,o)>0&&(e=o)}return e}(a),h=null==l?0:l,p=t.length+It(n.length,e.f())|0,f=function(t){return 0===Ml(t)?No:(n=t,function(t){return n+t});var n}(n),_=Xn(e),d=fa(),v=0,y=e.c();y.d();){var m=y.e(),g=v;v=g+1|0;var $,b,w,x=Ys(g);0!==x&&x!==_||!Pc(m)?$=null==(w=null==(b=wn(m,h))?null:f(b))?m:w:$=null;var k=$;null==k||(d.a(k),Es())}return function(t,n,e,o,r,i,s,a,u,c){return 0!=(2&u)&&(e=", "),0!=(4&u)&&(o=""),0!=(8&u)&&(r=""),0!=(16&u)&&(i=-1),0!=(32&u)&&(s="..."),0!=(64&u)&&(a=null),sn(t,n,e,o,r,i,s,a)}(d,ec(p),"\n",null,null,0,null,null,124).toString()}(t,"")},t.$_$.wb=function(t){var n;t:{var e=0,o=Ml(t)-1|0;if(e<=o)do{var r=e;if(e=e+1|0,!ac(Ol(t,r))){n=Al(t,r,Ml(t));break t}}while(e<=o);n=""}return n},t.$_$.xb=function(t){var n=0,e=Ml(t)-1|0,o=!1;t:for(;n<=e;){var r=ac(Ol(t,o?e:n));if(o){if(!r)break t;e=e-1|0}else r?n=n+1|0:o=!0}return Al(t,n,e+1|0)},t.$_$.yb=Dr,t.$_$.zb=Tr,t.$_$.ac=js,t.$_$.bc=tl,t.$_$.cc=Vs,t.$_$.dc=Yr,t.$_$.ec=Gr,t.$_$.fc=_l,t.$_$.gc=qp,t.$_$.hc=zp,t.$_$.ic=Ip,t.$_$.jc=Zl,t.$_$.kc=di,t.$_$.lc=hi,t.$_$.mc=Jp,t.$_$.nc=Jl,t.$_$.oc=function(){throw Dp()},t.$_$.pc=yi,t.$_$.qc=Pi,t.$_$.rc=ki,t.$_$.sc=Vi,t.$_$.tc=Bi,t.$_$.uc=is,t.$_$.vc=Zi,t.$_$.wc=gs,t.$_$.xc=ps,t.$_$.yc=As,t.$_$.zc=Yp,t.$_$.ad=function(t,n){if(t!==n){var e=t._suppressed;null==e?t._suppressed=Gn([n]):e.a(n)}},t.$_$.bd=function(t){return t},t.$_$.cd=function(t){var n=t;return(65535&(n=(16711935&(n=(252645135&(n=(858993459&(n=(1431655765&n)+(1431655765&(n>>>1|0))|0))+(858993459&(n>>>2|0))|0))+(252645135&(n>>>4|0))|0))+(16711935&(n>>>8|0))|0))+(n>>>16|0)|0},t.$_$.dd=function(t){var n,e=t.b1_1;return 0===e?(Bs(),n=32+pu(t.c1_1)|0):n=pu(e),n},t.$_$.ed=pi,t.$_$.fd=Wl,t.$_$.gd=function(t,n){return Zr(),new Xr(t.mb_1,n).rb()},t.$_$.hd=function(t){return!function(t){var n;return Rs(),t===1/0?n=!0:(Rs(),n=t===-1/0),n}(t)&&!hu(t)},t.$_$.id=function(t){return!function(t){var n;return Ns(),t===1/0?n=!0:(Ns(),n=t===-1/0),n}(t)&&!function(t){return!(t==t)}(t)},t.$_$.jd=function(t,n){return new ni(n)},t.$_$.kd=function(t){return new ni(t)},t.$_$.ld=function(){throw cf()},t.$_$.md=vl,t.$_$.nd=function(t){console.error(function(t){return(new Ic).bm(t)}(t))},t.$_$.od=function(t,n){var e=t<>>(32-n|0)|0},t.$_$.pd=function(t,n){return Bs(),t<<(32-n|0)|t>>>n|0},t.$_$.qd=function(t){throw ff("lateinit property "+t+" has not been initialized")},t.$_$.rd=dl,t.$_$.sd=vi,t})?e.apply(n,[n]):e)||(t.exports=o)},645:function(t,n,e){var o,r;o=[n,e(744)],void 0===(r=function(t,n){"use strict";var e,o,r,i,s,a,u,c,l,h,p,f,_,d,v,y,m,g,$,b,w,x,k,j,C,z,S,q,O,P,M,A,E,I,D,T,B,L,N,F,R,H,U,V,W,J,K,G,Y,X,Z,Q,tt,nt,et,ot,rt,it,st,at,ut,ct,lt=Math.imul,ht=n.$_$.s9,pt=n.$_$.g4,ft=n.$_$.r4,_t=n.$_$.k6,dt=n.$_$.h,vt=n.$_$.jd,yt=n.$_$.h9,mt=n.$_$.c,gt=n.$_$.ya,$t=n.$_$.o9,bt=n.$_$.s1,wt=n.$_$.c9,xt=n.$_$.u1,kt=n.$_$.ic,jt=n.$_$.w5,Ct=n.$_$.s,zt=n.$_$.nc,St=n.$_$.va,qt=n.$_$.ba,Ot=n.$_$.pc,Pt=n.$_$.d,Mt=n.$_$.kc,At=n.$_$.h5,Et=n.$_$.d5,It=n.$_$.m5,Dt=n.$_$.i5,Tt=n.$_$.z4,Bt=n.$_$.e5,Lt=n.$_$.n5,Nt=n.$_$.o5,Ft=n.$_$.a5,Rt=n.$_$.x4,Ht=n.$_$.l5,Ut=n.$_$.g5,Vt=n.$_$.y4,Wt=n.$_$.j6,Jt=n.$_$.pa,Kt=n.$_$.t1,Gt=n.$_$.l2,Yt=n.$_$.n2,Xt=n.$_$.da,Zt=n.$_$.m2,Qt=n.$_$.lc,tn=n.$_$.fd,nn=n.$_$.j9,en=n.$_$.p9,on=n.$_$.c5,rn=n.$_$.b5,sn=n.$_$.fb,an=n.$_$.y7,un=n.$_$.t,cn=n.$_$.z,ln=n.$_$.v7,hn=n.$_$.t7,pn=n.$_$.c8,fn=n.$_$.sd,_n=n.$_$.z7,dn=n.$_$.kd,vn=n.$_$.y5,yn=n.$_$.ua,mn=n.$_$.k,gn=n.$_$.la,$n=n.$_$.jc,bn=n.$_$.bc,wn=n.$_$.e2,xn=n.$_$.yb,kn=n.$_$.j4,jn=n.$_$.mb,Cn=n.$_$.q9,zn=n.$_$.w1,Sn=n.$_$.u,qn=n.$_$.a1,On=n.$_$.e1,Pn=n.$_$.f1,Mn=n.$_$.w,An=n.$_$.x,En=n.$_$.c1,In=n.$_$.d1,Dn=n.$_$.t9,Tn=n.$_$.a9,Bn=n.$_$.s5,Ln=n.$_$.ta,Nn=n.$_$.t6,Fn=n.$_$.ga,Rn=n.$_$.l4,Hn=n.$_$.x6,Un=n.$_$.dd,Vn=n.$_$.y,Wn=n.$_$.za,Jn=n.$_$.l9,Kn=n.$_$.b9,Gn=n.$_$.l6,Yn=n.$_$.z5,Xn=n.$_$.k4,Zn=n.$_$.w9,Qn=n.$_$.d9,te=n.$_$.c4,ne=n.$_$.y9,ee=n.$_$.d4,oe=n.$_$.z9,re=n.$_$.ca,ie=n.$_$.p4,se=n.$_$.n3,ae=n.$_$.uc,ue=n.$_$.j3,ce=n.$_$.g3,le=n.$_$.l3,he=n.$_$.h3,pe=n.$_$.e4,fe=n.$_$.aa,_e=n.$_$.o4,de=n.$_$.e3,ve=n.$_$.sc,ye=n.$_$.a3,me=n.$_$.x2,ge=n.$_$.c3,$e=n.$_$.y2,be=n.$_$.f4,we=n.$_$.ea,xe=n.$_$.q4,ke=n.$_$.w3,je=n.$_$.wc,Ce=n.$_$.s3,ze=n.$_$.p3,Se=n.$_$.u3,qe=n.$_$.q3,Oe=n.$_$.b4,Pe=n.$_$.v9,Me=n.$_$.n4,Ae=n.$_$.v2,Ee=n.$_$.qc,Ie=n.$_$.s2,De=n.$_$.o2,Te=n.$_$.t2,Be=n.$_$.p2,Le=n.$_$.a4,Ne=n.$_$.u9,Fe=n.$_$.qa,Re=n.$_$.d6,He=n.$_$.f6,Ue=n.$_$.g6,Ve=n.$_$.b6,We=n.$_$.o3,Je=n.$_$.k3,Ke=n.$_$.m3,Ge=n.$_$.i6,Ye=n.$_$.f3,Xe=n.$_$.b3,Ze=n.$_$.d3,Qe=n.$_$.a6,to=n.$_$.x3,no=n.$_$.t3,eo=n.$_$.v3,oo=n.$_$.e6,ro=n.$_$.w2,io=n.$_$.r2,so=n.$_$.u2,ao=n.$_$.c6,uo=n.$_$.yc,co=n.$_$.vb,lo=n.$_$.eb,ho=n.$_$.f9,po=n.$_$.e9,fo=n.$_$.j2,_o=n.$_$.ib,vo=n.$_$.gb,yo=n.$_$.i4,mo=n.$_$.vc,go=n.$_$.tc,$o=n.$_$.xc,bo=n.$_$.rc,wo=n.$_$.f7,xo=n.$_$.a7,ko=n.$_$.y6,jo=n.$_$.ac,Co=n.$_$.fa,zo=n.$_$.b,So=n.$_$.w6,qo=n.$_$.y1,Oo=n.$_$.v6,Po=n.$_$.m4,Mo=n.$_$.k2,Ao=n.$_$.ed;function Eo(){return!1}function Io(){return!1}function Do(){return _t()}function To(t){return t.w2c(this)}function Bo(){return!1}function Lo(t){return-1}function No(t,n,e,o,r,i){return 0!=(8&r)&&(o=null),null==i?this.f2g(t,n,e,o):i(t,n,e,o)}function Fo(){}function Ro(t,n){return this.t2f(t)}function Ho(t,n){t.v2c(this,n)}function Uo(){return Os()}function Vo(){}function Wo(){}function Jo(){}function Ko(t){return function(){return n=Xr("kotlinx.serialization.Polymorphic",(null==l&&new ci,l),[],function(t){return function(n){var e=gr(pt()).u2c();n.f2d("type",e,null,!1,12,null);var o=Xr("kotlinx.serialization.Polymorphic<"+t.g2d_1.si()+">",si(),[],null,12);return n.f2d("value",o,null,!1,12,null),n.z2c_1=t.h2d_1,ft()}}(t),4),e=t.g2d_1,new Wr(n,e);var n,e}}function Go(t){Bi.call(this),this.g2d_1=t,this.h2d_1=_t();var n=dt();this.i2d_1=vt(n,Ko(this))}function Yo(t,n,e){var o,r=t.l2d(n,e);return null==r?function(t,n){var e=t.si();Li(null==e?""+t:e,n)}(mt(e),t.j2d()):o=r,o}function Xo(t,n,e){var o,r=t.k2d(n,e);return null==r?Li(e,t.j2d()):o=r,o}function Zo(){}function Qo(){}function tr(){}function nr(t,n){return bt(t,n),or.call(n),n}function er(t){var n=nr(t,Object.create(or.prototype));return wt(n,er),n}function or(){wt(this,or)}function rr(t){nr(t,this),wt(this,rr)}function ir(t,n){var e=function(t,n,e){return sr.call(e,t,1===t.f()?"Field '"+t.g(0)+"' is required for type with serial name '"+n+"', but it was missing":"Fields "+t+" are required for type with serial name '"+n+"', but they were missing",null),e}(t,n,Object.create(sr.prototype));return wt(e,ir),e}function sr(t,n,e){(function(t,n,e){xt(t,n,e),or.call(e)})(n,e,this),this.p2d_1=t,wt(this,sr)}function ar(t){var n=function(t){var n,e=Ra(t,[]);if(null==e){var o=Co(t).Companion,r=null==o?null:o.serializer();n=null!=r&&qt(r,Vo)?r:null}else n=e;return n}(t);return null==n?function(t){ma();var n=oa().b3(t);return null==n||qt(n,Vo)?n:zt()}(t):n}function ur(t,n,e){var o;if(e){for(var r=Ct(jt(n,10)),i=n.c();i.d();){var s;s=lr(t,i.e()),r.a(s)}o=r}else{for(var a=Ct(jt(n,10)),u=n.c();u.d();){var c,l=hr(t,u.e());if(null==l)return null;c=l,a.a(c)}o=a}return o}function cr(t,n,e){var o=function(t,n,e){var o,r=t;if(r.equals(Pt(Vt))||r.equals(Pt(Ut))||r.equals(Pt(Ht))||r.equals(Pt(Rt)))o=new Xi(e.g(0));else if(r.equals(Pt(Ft)))o=new Zi(e.g(0));else if(r.equals(Pt(Nt))||r.equals(Pt(Lt))||r.equals(Pt(Bt)))o=new Qi(e.g(0));else if(r.equals(Pt(Tt)))o=new ts(e.g(0),e.g(1));else if(r.equals(Pt(Dt))||r.equals(Pt(It))||r.equals(Pt(Et)))o=new ns(e.g(0),e.g(1));else if(r.equals(Pt(At)))p=e.g(0),f=e.g(1),o=new xa(p,f);else if(r.equals(Pt(Mt)))o=function(t,n){return new ka(t,n)}(e.g(0),e.g(1));else if(r.equals(Pt(Ot)))c=e.g(0),l=e.g(1),h=e.g(2),o=new ja(c,l,h);else{var i;if(t.equals(yo().kk())){var s=n.g(0).bj();a=null!=s&&qt(s,St)?s:zt(),u=e.g(0),i=new es(a,u)}else i=null;o=i}var a,u;var c,l,h;var p,f;return o}(t,n,e);return null==o?function(t,n){return Ra(t,Wt(n).slice())}(t,e):o}function lr(t,n){var e,o=pr(t,n,!0);return null==o?function(t){throw er("Serializer for class '"+t.si()+"' is not found.\nMark the class as @Serializable or provide the serializer explicitly.\nOn Kotlin/JS explicitly declared serializer should be used for interfaces and enums without @Serializable annotation")}(xs(n)):e=o,e}function hr(t,n){return pr(t,n,!1)}function pr(t,n,s){for(var a=xs(n),u=n.dj(),c=n.cj(),l=Ct(jt(c,10)),h=c.c();h.d();){var p,f=h.e().r2d_1;if(null==f)throw Kt(Jt("Star projections in type arguments are not allowed, but had "+n));p=f,l.a(p)}var _,d,v=l;if(v.h())_=function(t,n){var r;if(yr(),n)r=(yr(),o).u2d(t);else{var i=(yr(),e).u2d(t);r=null==i?null:null!=i&&qt(i,Vo)?i:zt()}return r}(a,u);else{var y,m=function(t,n,e){var o;if(yr(),e)o=(yr(),i).v2d(t,n);else{var s=(yr(),r).v2d(t,n);o=new Qt(s)instanceof Qt?s:zt()}return o}(a,v,u);if(s){var g;if(Zt(m))g=null;else{var $=Yt(m);g=null==$||Xt($)?$:zt()}y=g}else{if(null!=Gt(m))return null;var b=Yt(m);y=null==b||Xt(b)?b:zt()}_=y}if(null!=_)return _;if(v.h())d=t.t2d(a,null,2,null);else{var w=ur(t,v,s);if(null==w)return null;var x=w,k=cr(a,v,x);d=null==k?t.s2d(a,x):k}var j,C=d;return null==(j=null==C?null:null!=C&&qt(C,Vo)?C:zt())?null:function(t,n){return n?mr(t):qt(t,Vo)?t:zt()}(j,u)}function fr(t){return yr(),ar(t)}function _r(t){yr();var n=ar(t),e=null==n?null:mr(n);return null==e?null:null!=e&&qt(e,Vo)?e:zt()}function dr(t,n){return yr(),cr(t,n,tn(ur(Ta(),n,!0)))}function vr(t,n){yr();var e=cr(t,n,tn(ur(Ta(),n,!0))),o=null==e?null:mr(e);return null==o?null:null!=o&&qt(o,Vo)?o:zt()}function yr(){s||(s=!0,e=Na(fr),o=Na(_r),r=Fa(dr),i=Fa(vr))}function mr(t){return t.u2c().w2d()?qt(t,Vo)?t:zt():new vs(t)}function gr(t){return ia()}function $r(t){return null==W&&new sa,W}function br(){return null==M&&new As,M}function wr(t){return null==J&&new aa,J}function xr(){return null==A&&new Es,A}function kr(t){return null==K&&new ua,K}function jr(){return null==E&&new Is,E}function Cr(t){return null==G&&new ca,G}function zr(){return null==I&&new Ds,I}function Sr(t){return null==rt&&new za,rt}function qr(){return null==D&&new Ts,D}function Or(t){return null==Y&&new la,Y}function Pr(){return null==T&&new Bs,T}function Mr(t){return null==it&&new Sa,it}function Ar(){return null==B&&new Ls,B}function Er(t){return null==X&&new ha,X}function Ir(){return null==L&&new Ns,L}function Dr(t){return null==st&&new qa,st}function Tr(){return null==N&&new Fs,N}function Br(t){return null==Z&&new pa,Z}function Lr(){return null==F&&new Rs,F}function Nr(t){return null==at&&new Oa,at}function Fr(){return null==R&&new Hs,R}function Rr(t){return null==Q&&new fa,Q}function Hr(){return null==H&&new Us,H}function Ur(t){return null==tt&&new _a,tt}function Vr(t){return null==j&&new Ni,j}function Wr(t,n){this.x2d_1=t,this.y2d_1=n,this.z2d_1=this.x2d_1.a2e()+"<"+this.y2d_1.si()+">"}function Jr(t){var n=t;return n instanceof Wr?t.y2d_1:n instanceof ys?Jr(t.k2e_1):null}function Kr(){}function Gr(t){this.o2e_1=t,this.n2e_1=t.c2e()}function Yr(t){this.p2e_1=t}function Xr(t,n,e,o,r,i){return 0!=(8&r)&&(o=ei),function(t,n,e,o){if(sn(t))throw Kt(Jt("Blank serial names are prohibited"));if(nn(n,xi()))throw Kt(Jt("For StructureKind.CLASS please use 'buildClassSerialDescriptor' instead"));var r=new Zr(t);return o(r),new ni(t,n,r.a2d_1.f(),an(e),r)}(t,n,e,o)}function Zr(t){this.x2c_1=t,this.y2c_1=!1,this.z2c_1=_t(),this.a2d_1=un(),this.b2d_1=cn(),this.c2d_1=un(),this.d2d_1=un(),this.e2d_1=un()}function Qr(t,n,e,o,r){return 0!=(4&o)&&(e=oi),function(t,n,e){if(sn(t))throw Kt(Jt("Blank serial names are prohibited"));var o=new Zr(t);return e(o),new ni(t,xi(),o.a2d_1.f(),an(n),o)}(t,n,e)}function ti(t){return $t("_hashCode",1,gt,(function(t){return ti(t)}),null),t.c2f_1.n2()}function ni(t,n,e,o,r){this.r2e_1=t,this.s2e_1=n,this.t2e_1=e,this.u2e_1=r.z2c_1,this.v2e_1=ln(r.a2d_1);var i,s=r.a2d_1;i=Wt(s),this.w2e_1=i,this.x2e_1=ks(r.c2d_1);var a,u,c=r.d2d_1;a=Wt(c),this.y2e_1=a,this.z2e_1=hn(r.e2d_1);for(var l,h=pn(this.w2e_1),p=Ct(jt(h,10)),f=h.c();f.d();){var _,d=f.e();_=fn(d.p3_1,d.o3_1),p.a(_)}l=p,this.a2f_1=_n(l),this.b2f_1=ks(o),this.c2f_1=dn((u=this,function(){return qs(u,u.b2f_1)}))}function ei(t){return ft()}function oi(t){return ft()}function ri(){a=this,ai.call(this)}function ii(){u=this,ai.call(this)}function si(){return null==u&&new ii,u}function ai(){}function ui(){c=this,li.call(this)}function ci(){l=this,li.call(this)}function li(){ai.call(this)}function hi(){h=this,bi.call(this)}function pi(){p=this,bi.call(this)}function fi(){f=this,bi.call(this)}function _i(){_=this,bi.call(this)}function di(){d=this,bi.call(this)}function vi(){v=this,bi.call(this)}function yi(){y=this,bi.call(this)}function mi(){m=this,bi.call(this)}function gi(){g=this,bi.call(this)}function $i(){return null==g&&new gi,g}function bi(){ai.call(this)}function wi(){$=this,qi.call(this)}function xi(){return null==$&&new wi,$}function ki(){b=this,qi.call(this)}function ji(){return null==b&&new ki,b}function Ci(){w=this,qi.call(this)}function zi(){return null==w&&new Ci,w}function Si(){x=this,qi.call(this)}function qi(){ai.call(this)}function Oi(){}function Pi(){}function Mi(){}function Ai(){k=this,this.l2h_1=-1,this.m2h_1=-3}function Ei(){return null==k&&new Ai,k}function Ii(){}function Di(){}function Ti(){}function Bi(){}function Li(t,n){var e="in the scope of '"+n.si()+"'";throw er(null==t?"Class discriminator was missing and no default polymorphic serializers were registered "+e:"Class '"+t+"' is not registered for polymorphic serialization "+e+".\nMark the base class as 'sealed' or register the serializer explicitly.")}function Ni(){j=this,this.q2h_1=new va("kotlin.time.Duration",$i())}function Fi(){}function Ri(t){Gi.call(this,t)}function Hi(t){Gi.call(this,t)}function Ui(t){Gi.call(this,t)}function Vi(t,n){Yi.call(this,"kotlin.collections.HashMap",t,n)}function Wi(t,n){Yi.call(this,"kotlin.collections.LinkedHashMap",t,n)}function Ji(t){Gi.call(this,t)}function Ki(t){Gi.call(this,t),this.j2i_1=t.a2e()+"Array"}function Gi(t){this.v2h_1=t,this.w2h_1=1}function Yi(t,n,e){this.b2i_1=t,this.c2i_1=n,this.d2i_1=e,this.e2i_1=2}function Xi(t){os.call(this,t),this.l2i_1=new Ri(t.u2c())}function Zi(t){os.call(this,t),this.g2j_1=new Hi(t.u2c())}function Qi(t){os.call(this,t),this.n2j_1=new Ui(t.u2c())}function ts(t,n){rs.call(this,t,n),this.u2j_1=new Vi(t.u2c(),n.u2c())}function ns(t,n){rs.call(this,t,n),this.j2k_1=new Wi(t.u2c(),n.u2c())}function es(t,n){is.call(this,n),this.o2k_1=t,this.p2k_1=new Ji(n.u2c())}function os(t){is.call(this,t)}function rs(t,n){ss.call(this),this.d2k_1=t,this.e2k_1=n}function is(t){ss.call(this),this.z2i_1=t}function ss(){}function as(t){is.call(this,t),this.y2k_1=new Ki(t.u2c())}function us(){}function cs(){C=this,this.f2l_1=Fn(0)}function ls(){return null==C&&new cs,C}function hs(t,n){ls(),this.g2l_1=t,this.h2l_1=n;var e=this.g2l_1.c2e();if(Rn(),e<=64){var o;Rn(),o=64===e?new $n(0,0):new $n(-1,-1).kb(e),this.i2l_1=o,this.j2l_1=ls().f2l_1}else this.i2l_1=new $n(0,0),this.j2l_1=function(t,n){var e=(n-1|0)>>>6|0;Rn();var o=63&n,r=Fn(e);return 0!==o&&(r[Hn(r)]=new $n(-1,-1).kb(n)),r}(0,e)}function ps(t,n){return new fs(t,new _s(n))}function fs(t,n){Ss.call(this,t,n,1),this.y2l_1=!0}function _s(t){this.n2m_1=t}function ds(){z=this,Pi.call(this),this.q2m_1=Ta()}function vs(t){this.r2m_1=t,this.s2m_1=new ys(this.r2m_1.u2c())}function ys(t){this.k2e_1=t,this.l2e_1=this.k2e_1.a2e()+"?",this.m2e_1=ws(this.k2e_1)}function ms(t,n){return function(){var e=(null==x&&new Si,x);return Xr(t,e,[],function(t){return function(n){return n.z2c_1=t.v2m_1,ft()}}(n),4)}}function gs(t,n){this.u2m_1=n,this.v2m_1=_t();var e=dt();this.w2m_1=vt(e,ms(t,this))}function $s(){}function bs(){}function ws(t){if(js(),qt(t,Fi))return t.d2f();var n=Vn(t.c2e()),e=0,o=t.c2e();if(e0){var e,o=po(t,0);e=vo(o)?_o(o):fo(o),n=Jt(e)+t.substring(1)}else n=t;return n}function ma(){nt||(nt=!0,U=wo([fn(yo().lk(),gr(pt())),fn(Pt(bn),$r(Xn())),fn(yo().ok(),br()),fn(yo().jk(),wr(te())),fn(yo().uk(),xr()),fn(yo().ik(),kr(ee())),fn(yo().tk(),jr()),fn(Pt($n),Cr(Rn())),fn(yo().sk(),zr()),fn(Pt(mo),Sr(ie())),fn(Pt(ae),qr()),fn(yo().hk(),Or(pe())),fn(yo().rk(),Pr()),fn(Pt(go),Mr(_e())),fn(Pt(ve),Ar()),fn(yo().gk(),Er(be())),fn(yo().qk(),Ir()),fn(Pt($o),Dr(xe())),fn(Pt(je),Tr()),fn(yo().fk(),Br(Oe())),fn(yo().pk(),Lr()),fn(Pt(bo),Nr(Me())),fn(Pt(Ee),Fr()),fn(yo().ek(),Rr(Le())),fn(yo().nk(),Hr()),fn(Pt(uo),Ur(ft())),fn(Pt(xn),Vr(kn()))]))}function ga(){$a.call(this)}function $a(){var t;t=un(),this.n2s_1=t,this.o2s_1=!1}function ba(){return ot||(ot=!0,et=new Object),et}function wa(t,n){this.f2t_1=t,this.g2t_1=n}function xa(t,n){Ca.call(this,t,n);var e,o,r=zi();this.j2t_1=Xr("kotlin.collections.Map.Entry",r,[],(e=t,o=n,function(t){var n=e.u2c();t.f2d("key",n,null,!1,12,null);var r=o.u2c();return t.f2d("value",r,null,!1,12,null),ft()}),4)}function ka(t,n){var e,o;Ca.call(this,t,n),this.u2t_1=Qr("kotlin.Pair",[],(e=t,o=n,function(t){var n=e.u2c();t.f2d("first",n,null,!1,12,null);var r=o.u2c();return t.f2d("second",r,null,!1,12,null),ft()}),2)}function ja(t,n,e){var o;this.x2t_1=t,this.y2t_1=n,this.z2t_1=e,this.a2u_1=Qr("kotlin.Triple",[],(o=this,function(t){var n=o.x2t_1.u2c();t.f2d("first",n,null,!1,12,null);var e=o.y2t_1.u2c();t.f2d("second",e,null,!1,12,null);var r=o.z2t_1.u2c();return t.f2d("third",r,null,!1,12,null),ft()}),2)}function Ca(t,n){this.p2t_1=t,this.q2t_1=n}function za(){rt=this,this.c2u_1=ps("kotlin.ULong",Cr(Rn()))}function Sa(){it=this,this.f2u_1=ps("kotlin.UInt",Or(pe()))}function qa(){st=this,this.i2u_1=ps("kotlin.UShort",Er(be()))}function Oa(){at=this,this.l2u_1=ps("kotlin.UByte",Br(Oe()))}function Pa(){return ct||(ct=!0,ut=new Aa(Gn(),Gn(),Gn(),Gn(),Gn())),ut}function Ma(){}function Aa(t,n,e,o,r){Ma.call(this),this.p2u_1=t,this.q2u_1=n,this.r2u_1=e,this.s2u_1=o,this.t2u_1=r}function Ea(){}function Ia(){}function Da(){}function Ta(){return Pa()}function Ba(){}function La(t){this.e2v_1=t}function Na(t){return new Va(t)}function Fa(t){return new Wa(t)}function Ra(t,n){var e;try{var o,r=zo(t,Pt(La));if(null!=r&&qt(r,Vo))o=null!=r&&qt(r,Vo)?r:zt();else if(null!=r&&qt(r,Ps)){var i=r.x2m(n.slice());o=qt(i,Vo)?i:zt()}else o=function(t){var n=Co(t).$metadata$;return"interface"==(null==n?null:n.kind)}(t)?new Go(t):null;e=o}catch(t){e=null}return e}function Ha(t,n){if(!(0<=n&&n<=(t.length-1|0)))throw qo("Index "+n+" out of bounds "+So(t));return t[n]}function Ua(t,n){if(!(0<=n&&n<=(t.length-1|0)))throw qo("Index "+n+" out of bounds "+Oo(t));return t[n]}function Va(t){this.f2v_1=t}function Wa(t){this.g2v_1=t}return Go.prototype=Object.create(Bi.prototype),Go.prototype.constructor=Go,Zo.prototype=Object.create(Bi.prototype),Zo.prototype.constructor=Zo,or.prototype=Object.create(kt.prototype),or.prototype.constructor=or,rr.prototype=Object.create(or.prototype),rr.prototype.constructor=rr,sr.prototype=Object.create(or.prototype),sr.prototype.constructor=sr,ri.prototype=Object.create(ai.prototype),ri.prototype.constructor=ri,ii.prototype=Object.create(ai.prototype),ii.prototype.constructor=ii,li.prototype=Object.create(ai.prototype),li.prototype.constructor=li,ui.prototype=Object.create(li.prototype),ui.prototype.constructor=ui,ci.prototype=Object.create(li.prototype),ci.prototype.constructor=ci,bi.prototype=Object.create(ai.prototype),bi.prototype.constructor=bi,hi.prototype=Object.create(bi.prototype),hi.prototype.constructor=hi,pi.prototype=Object.create(bi.prototype),pi.prototype.constructor=pi,fi.prototype=Object.create(bi.prototype),fi.prototype.constructor=fi,_i.prototype=Object.create(bi.prototype),_i.prototype.constructor=_i,di.prototype=Object.create(bi.prototype),di.prototype.constructor=di,vi.prototype=Object.create(bi.prototype),vi.prototype.constructor=vi,yi.prototype=Object.create(bi.prototype),yi.prototype.constructor=yi,mi.prototype=Object.create(bi.prototype),mi.prototype.constructor=mi,gi.prototype=Object.create(bi.prototype),gi.prototype.constructor=gi,qi.prototype=Object.create(ai.prototype),qi.prototype.constructor=qi,wi.prototype=Object.create(qi.prototype),wi.prototype.constructor=wi,ki.prototype=Object.create(qi.prototype),ki.prototype.constructor=ki,Ci.prototype=Object.create(qi.prototype),Ci.prototype.constructor=Ci,Si.prototype=Object.create(qi.prototype),Si.prototype.constructor=Si,Ri.prototype=Object.create(Gi.prototype),Ri.prototype.constructor=Ri,Hi.prototype=Object.create(Gi.prototype),Hi.prototype.constructor=Hi,Ui.prototype=Object.create(Gi.prototype),Ui.prototype.constructor=Ui,Vi.prototype=Object.create(Yi.prototype),Vi.prototype.constructor=Vi,Wi.prototype=Object.create(Yi.prototype),Wi.prototype.constructor=Wi,Ji.prototype=Object.create(Gi.prototype),Ji.prototype.constructor=Ji,Ki.prototype=Object.create(Gi.prototype),Ki.prototype.constructor=Ki,is.prototype=Object.create(ss.prototype),is.prototype.constructor=is,os.prototype=Object.create(is.prototype),os.prototype.constructor=os,Xi.prototype=Object.create(os.prototype),Xi.prototype.constructor=Xi,Zi.prototype=Object.create(os.prototype),Zi.prototype.constructor=Zi,Qi.prototype=Object.create(os.prototype),Qi.prototype.constructor=Qi,rs.prototype=Object.create(ss.prototype),rs.prototype.constructor=rs,ts.prototype=Object.create(rs.prototype),ts.prototype.constructor=ts,ns.prototype=Object.create(rs.prototype),ns.prototype.constructor=ns,es.prototype=Object.create(is.prototype),es.prototype.constructor=es,as.prototype=Object.create(is.prototype),as.prototype.constructor=as,fs.prototype=Object.create(Ss.prototype),fs.prototype.constructor=fs,ds.prototype=Object.create(Pi.prototype),ds.prototype.constructor=ds,As.prototype=Object.create(as.prototype),As.prototype.constructor=As,Es.prototype=Object.create(as.prototype),Es.prototype.constructor=Es,Is.prototype=Object.create(as.prototype),Is.prototype.constructor=Is,Ds.prototype=Object.create(as.prototype),Ds.prototype.constructor=Ds,Ts.prototype=Object.create(as.prototype),Ts.prototype.constructor=Ts,Bs.prototype=Object.create(as.prototype),Bs.prototype.constructor=Bs,Ls.prototype=Object.create(as.prototype),Ls.prototype.constructor=Ls,Ns.prototype=Object.create(as.prototype),Ns.prototype.constructor=Ns,Fs.prototype=Object.create(as.prototype),Fs.prototype.constructor=Fs,Rs.prototype=Object.create(as.prototype),Rs.prototype.constructor=Rs,Hs.prototype=Object.create(as.prototype),Hs.prototype.constructor=Hs,Us.prototype=Object.create(as.prototype),Us.prototype.constructor=Us,Vs.prototype=Object.create(us.prototype),Vs.prototype.constructor=Vs,Ws.prototype=Object.create(us.prototype),Ws.prototype.constructor=Ws,Js.prototype=Object.create(us.prototype),Js.prototype.constructor=Js,Ks.prototype=Object.create(us.prototype),Ks.prototype.constructor=Ks,Gs.prototype=Object.create(us.prototype),Gs.prototype.constructor=Gs,Ys.prototype=Object.create(us.prototype),Ys.prototype.constructor=Ys,Xs.prototype=Object.create(us.prototype),Xs.prototype.constructor=Xs,Zs.prototype=Object.create(us.prototype),Zs.prototype.constructor=Zs,Qs.prototype=Object.create(us.prototype),Qs.prototype.constructor=Qs,ta.prototype=Object.create(us.prototype),ta.prototype.constructor=ta,na.prototype=Object.create(us.prototype),na.prototype.constructor=na,ea.prototype=Object.create(us.prototype),ea.prototype.constructor=ea,ga.prototype=Object.create($a.prototype),ga.prototype.constructor=ga,xa.prototype=Object.create(Ca.prototype),xa.prototype.constructor=xa,ka.prototype=Object.create(Ca.prototype),ka.prototype.constructor=ka,Aa.prototype=Object.create(Ma.prototype),Aa.prototype.constructor=Aa,Ea.prototype=Object.create(Da.prototype),Ea.prototype.constructor=Ea,Ia.prototype=Object.create(Da.prototype),Ia.prototype.constructor=Ia,Vo.$metadata$=ht("KSerializer",[Wo,Jo]),Wo.$metadata$=ht("SerializationStrategy"),Jo.$metadata$=ht("DeserializationStrategy"),Go.prototype.j2d=function(){return this.g2d_1},Go.prototype.u2c=function(){return $t("descriptor",1,gt,(function(t){return t.u2c()}),null),this.i2d_1.n2()},Go.prototype.toString=function(){return"kotlinx.serialization.PolymorphicSerializer(baseClass: "+this.g2d_1+")"},Go.$metadata$=yt("PolymorphicSerializer",void 0,void 0,void 0,void 0,Bi.prototype),Zo.$metadata$=yt("SealedClassSerializer",void 0,void 0,void 0,void 0,Bi.prototype),Qo.$metadata$=ht("StringFormat",[tr]),tr.$metadata$=ht("SerialFormat"),or.$metadata$=yt("SerializationException",void 0,void 0,void 0,void 0,kt.prototype),rr.$metadata$=yt("UnknownFieldException",void 0,void 0,void 0,void 0,or.prototype),sr.$metadata$=yt("MissingFieldException",void 0,void 0,void 0,void 0,or.prototype),Wr.prototype.b2e=function(){return this.x2d_1.b2e()},Wr.prototype.c2e=function(){return this.x2d_1.c2e()},Wr.prototype.d2e=function(){return this.x2d_1.d2e()},Wr.prototype.w2d=function(){return this.x2d_1.w2d()},Wr.prototype.e2e=function(){return this.x2d_1.e2e()},Wr.prototype.f2e=function(t){return this.x2d_1.f2e(t)},Wr.prototype.g2e=function(t){return this.x2d_1.g2e(t)},Wr.prototype.h2e=function(t){return this.x2d_1.h2e(t)},Wr.prototype.i2e=function(t){return this.x2d_1.i2e(t)},Wr.prototype.j2e=function(t){return this.x2d_1.j2e(t)},Wr.prototype.a2e=function(){return this.z2d_1},Wr.prototype.equals=function(t){var n=t instanceof Wr?t:null;if(null==n)return!1;var e=n;return!!nn(this.x2d_1,e.x2d_1)&&e.y2d_1.equals(this.y2d_1)},Wr.prototype.hashCode=function(){var t=this.y2d_1.hashCode();return lt(31,t)+en(this.z2d_1)|0},Wr.prototype.toString=function(){return"ContextDescriptor(kClass: "+this.y2d_1+", original: "+this.x2d_1+")"},Wr.$metadata$=yt("ContextDescriptor",[Kr]),Kr.$metadata$=ht("SerialDescriptor"),Gr.prototype.d=function(){return this.n2e_1>0},Gr.prototype.e=function(){var t=this.o2e_1.c2e(),n=this.n2e_1;return this.n2e_1=n-1|0,this.o2e_1.g2e(t-n|0)},Gr.$metadata$=yt(void 0,[on]),Yr.prototype.c=function(){return new Gr(this.p2e_1)},Yr.$metadata$=yt(void 0,[rn]),Zr.prototype.q2e=function(t,n,e,o){if(!this.b2d_1.a(t))throw Kt(Jt("Element with name '"+t+"' is already registered"));this.a2d_1.a(t),this.c2d_1.a(n),this.d2d_1.a(e),this.e2d_1.a(o)},Zr.prototype.f2d=function(t,n,e,o,r,i){return 0!=(4&r)&&(e=_t()),0!=(8&r)&&(o=!1),this.q2e(t,n,e,o)},Zr.$metadata$=yt("ClassSerialDescriptorBuilder"),ni.prototype.a2e=function(){return this.r2e_1},ni.prototype.e2e=function(){return this.s2e_1},ni.prototype.c2e=function(){return this.t2e_1},ni.prototype.b2e=function(){return this.u2e_1},ni.prototype.d2f=function(){return this.v2e_1},ni.prototype.i2e=function(t){return Ha(this.w2e_1,t)},ni.prototype.h2e=function(t){var n,e=this.a2f_1.b3(t);return null==e?(Ei(),n=-3):n=e,n},ni.prototype.f2e=function(t){return Ha(this.y2e_1,t)},ni.prototype.g2e=function(t){return Ha(this.x2e_1,t)},ni.prototype.j2e=function(t){return Ua(this.z2e_1,t)},ni.prototype.equals=function(t){var n;t:if(this!==t)if(t instanceof ni)if(this.a2e()===t.a2e()){var e=t;if(vn(this.b2f_1,e.b2f_1))if(this.c2e()===t.c2e()){var o=0,r=this.c2e();if(o=0))throw n="Illegal index "+t+", "+this.a2e()+" expects only non-negative indices",Kt(Jt(n));return!1},Gi.prototype.f2e=function(t){var n;if(!(t>=0))throw n="Illegal index "+t+", "+this.a2e()+" expects only non-negative indices",Kt(Jt(n));return _t()},Gi.prototype.g2e=function(t){var n;if(!(t>=0))throw n="Illegal index "+t+", "+this.a2e()+" expects only non-negative indices",Kt(Jt(n));return this.v2h_1},Gi.prototype.equals=function(t){return this===t||t instanceof Gi&&!(!nn(this.v2h_1,t.v2h_1)||this.a2e()!==t.a2e())},Gi.prototype.hashCode=function(){return lt(Cn(this.v2h_1),31)+en(this.a2e())|0},Gi.prototype.toString=function(){return this.a2e()+"("+this.v2h_1+")"},Gi.$metadata$=yt("ListLikeDescriptor",[Kr]),Yi.prototype.a2e=function(){return this.b2i_1},Yi.prototype.e2e=function(){return zi()},Yi.prototype.c2e=function(){return this.e2i_1},Yi.prototype.i2e=function(t){return t.toString()},Yi.prototype.h2e=function(t){var n=jn(t);if(null==n)throw Kt(t+" is not a valid map index");return n},Yi.prototype.j2e=function(t){var n;if(!(t>=0))throw n="Illegal index "+t+", "+this.a2e()+" expects only non-negative indices",Kt(Jt(n));return!1},Yi.prototype.f2e=function(t){var n;if(!(t>=0))throw n="Illegal index "+t+", "+this.a2e()+" expects only non-negative indices",Kt(Jt(n));return _t()},Yi.prototype.g2e=function(t){var n,e;if(!(t>=0))throw n="Illegal index "+t+", "+this.a2e()+" expects only non-negative indices",Kt(Jt(n));switch(t%2|0){case 0:e=this.c2i_1;break;case 1:e=this.d2i_1;break;default:throw zn("Unreached")}return e},Yi.prototype.equals=function(t){return this===t||t instanceof Yi&&this.a2e()===t.a2e()&&!!nn(this.c2i_1,t.c2i_1)&&!!nn(this.d2i_1,t.d2i_1)},Yi.prototype.hashCode=function(){var t=en(this.a2e());return t=lt(31,t)+Cn(this.c2i_1)|0,lt(31,t)+Cn(this.d2i_1)|0},Yi.prototype.toString=function(){return this.a2e()+"("+this.c2i_1+", "+this.d2i_1+")"},Yi.$metadata$=yt("MapLikeDescriptor",[Kr]),Xi.prototype.u2c=function(){return this.l2i_1},Xi.prototype.v1o=function(){return un()},Xi.prototype.m2i=function(t){return t.f()},Xi.prototype.n2i=function(t){return this.m2i(t instanceof Rt?t:zt())},Xi.prototype.o2i=function(t){return t},Xi.prototype.p2i=function(t){return this.o2i(t instanceof Rt?t:zt())},Xi.prototype.q2i=function(t){var n=t instanceof Rt?t:null;return null==n?Sn(t):n},Xi.prototype.r2i=function(t){return this.q2i(null!=t&&qt(t,Ut)?t:zt())},Xi.prototype.s2i=function(t,n){return t.tg(n)},Xi.prototype.t2i=function(t,n){return this.s2i(t instanceof Rt?t:zt(),n)},Xi.prototype.u2i=function(t,n,e){t.zf(n,e)},Xi.prototype.v2i=function(t,n,e){var o=t instanceof Rt?t:zt();return this.u2i(o,n,null==e||Xt(e)?e:zt())},Xi.$metadata$=yt("ArrayListSerializer",void 0,void 0,void 0,void 0,os.prototype),Zi.prototype.u2c=function(){return this.g2j_1},Zi.prototype.v1o=function(){return cn()},Zi.prototype.h2j=function(t){return t.f()},Zi.prototype.n2i=function(t){return this.h2j(t instanceof Ft?t:zt())},Zi.prototype.i2j=function(t){return t},Zi.prototype.p2i=function(t){return this.i2j(t instanceof Ft?t:zt())},Zi.prototype.j2j=function(t){var n=t instanceof Ft?t:null;return null==n?qn(t):n},Zi.prototype.r2i=function(t){return this.j2j(null!=t&&qt(t,Nt)?t:zt())},Zi.prototype.k2j=function(t,n){},Zi.prototype.t2i=function(t,n){return this.k2j(t instanceof Ft?t:zt(),n)},Zi.prototype.l2j=function(t,n,e){t.a(e)},Zi.prototype.v2i=function(t,n,e){var o=t instanceof Ft?t:zt();return this.l2j(o,n,null==e||Xt(e)?e:zt())},Zi.$metadata$=yt("HashSetSerializer",void 0,void 0,void 0,void 0,os.prototype),Qi.prototype.u2c=function(){return this.n2j_1},Qi.prototype.v1o=function(){return On()},Qi.prototype.o2j=function(t){return t.f()},Qi.prototype.n2i=function(t){return this.o2j(t instanceof Bt?t:zt())},Qi.prototype.p2j=function(t){return t},Qi.prototype.p2i=function(t){return this.p2j(t instanceof Bt?t:zt())},Qi.prototype.j2j=function(t){var n=t instanceof Bt?t:null;return null==n?Pn(t):n},Qi.prototype.r2i=function(t){return this.j2j(null!=t&&qt(t,Nt)?t:zt())},Qi.prototype.q2j=function(t,n){},Qi.prototype.t2i=function(t,n){return this.q2j(t instanceof Bt?t:zt(),n)},Qi.prototype.r2j=function(t,n,e){t.a(e)},Qi.prototype.v2i=function(t,n,e){var o=t instanceof Bt?t:zt();return this.r2j(o,n,null==e||Xt(e)?e:zt())},Qi.$metadata$=yt("LinkedHashSetSerializer",void 0,void 0,void 0,void 0,os.prototype),ts.prototype.u2c=function(){return this.u2j_1},ts.prototype.v2j=function(t){return t.f()},ts.prototype.w2j=function(t){return this.v2j(null!=t&&qt(t,Dt)?t:zt())},ts.prototype.x2j=function(t){return t.v().c()},ts.prototype.y2j=function(t){return this.x2j(null!=t&&qt(t,Dt)?t:zt())},ts.prototype.v1o=function(){return Mn()},ts.prototype.z2j=function(t){return lt(t.f(),2)},ts.prototype.n2i=function(t){return this.z2j(t instanceof Tt?t:zt())},ts.prototype.a2k=function(t){return t},ts.prototype.p2i=function(t){return this.a2k(t instanceof Tt?t:zt())},ts.prototype.b2k=function(t){var n=t instanceof Tt?t:null;return null==n?An(t):n},ts.prototype.r2i=function(t){return this.b2k(null!=t&&qt(t,Dt)?t:zt())},ts.prototype.c2k=function(t,n){},ts.prototype.t2i=function(t,n){return this.c2k(t instanceof Tt?t:zt(),n)},ts.$metadata$=yt("HashMapSerializer",void 0,void 0,void 0,void 0,rs.prototype),ns.prototype.u2c=function(){return this.j2k_1},ns.prototype.v2j=function(t){return t.f()},ns.prototype.w2j=function(t){return this.v2j(null!=t&&qt(t,Dt)?t:zt())},ns.prototype.x2j=function(t){return t.v().c()},ns.prototype.y2j=function(t){return this.x2j(null!=t&&qt(t,Dt)?t:zt())},ns.prototype.v1o=function(){return En()},ns.prototype.k2k=function(t){return lt(t.f(),2)},ns.prototype.n2i=function(t){return this.k2k(t instanceof Et?t:zt())},ns.prototype.l2k=function(t){return t},ns.prototype.p2i=function(t){return this.l2k(t instanceof Et?t:zt())},ns.prototype.b2k=function(t){var n=t instanceof Et?t:null;return null==n?In(t):n},ns.prototype.r2i=function(t){return this.b2k(null!=t&&qt(t,Dt)?t:zt())},ns.prototype.m2k=function(t,n){},ns.prototype.t2i=function(t,n){return this.m2k(t instanceof Et?t:zt(),n)},ns.$metadata$=yt("LinkedHashMapSerializer",void 0,void 0,void 0,void 0,rs.prototype),es.prototype.u2c=function(){return this.p2k_1},es.prototype.q2k=function(t){return t.length},es.prototype.w2j=function(t){return this.q2k(null!=t&&Dn(t)?t:zt())},es.prototype.r2k=function(t){return Tn(t)},es.prototype.y2j=function(t){return this.r2k(null!=t&&Dn(t)?t:zt())},es.prototype.v1o=function(){return un()},es.prototype.s2k=function(t){return t.f()},es.prototype.n2i=function(t){return this.s2k(t instanceof Rt?t:zt())},es.prototype.t2k=function(t){return function(t,n){return Wt(t)}(t,this.o2k_1)},es.prototype.p2i=function(t){return this.t2k(t instanceof Rt?t:zt())},es.prototype.u2k=function(t){return Sn(Bn(t))},es.prototype.r2i=function(t){return this.u2k(null!=t&&Dn(t)?t:zt())},es.prototype.v2k=function(t,n){return t.tg(n)},es.prototype.t2i=function(t,n){return this.v2k(t instanceof Rt?t:zt(),n)},es.prototype.w2k=function(t,n,e){t.zf(n,e)},es.prototype.v2i=function(t,n,e){var o=t instanceof Rt?t:zt();return this.w2k(o,n,null==e||Xt(e)?e:zt())},es.$metadata$=yt("ReferenceArraySerializer",void 0,void 0,void 0,void 0,is.prototype),os.prototype.x2i=function(t){return t.f()},os.prototype.w2j=function(t){return this.x2i(null!=t&&qt(t,Vt)?t:zt())},os.prototype.y2i=function(t){return t.c()},os.prototype.y2j=function(t){return this.y2i(null!=t&&qt(t,Vt)?t:zt())},os.$metadata$=yt("CollectionSerializer",void 0,void 0,void 0,void 0,is.prototype),rs.prototype.f2k=function(){return this.d2k_1},rs.prototype.g2k=function(){return this.e2k_1},rs.prototype.b2j=function(t,n,e,o){if(!(o>=0))throw Kt(Jt("Size must be known in advance when using READ_ALL"));var r=Ln(yn(0,lt(o,2)),2),i=r.f1_1,s=r.g1_1,a=r.h1_1;if(a>0&&i<=s||a<0&&s<=i)do{var u=i;i=i+a|0,this.c2j(t,e+u|0,n,!1)}while(u!==s)},rs.prototype.c2j=function(t,n,e,o){var r,i=this.u2c(),s=t.g2g(i,n,this.d2k_1,null,8,null);if(o){var a=t.i2g(this.u2c());if(a!==(n+1|0))throw Kt(Jt("Value must follow key in a map, index for key: "+n+", returned index for value: "+a));r=a}else r=n+1|0;var u,c=r;if(!e.v2(s)||this.e2k_1.u2c().e2e()instanceof bi){var l=this.u2c();u=t.g2g(l,c,this.e2k_1,null,8,null)}else u=t.f2g(this.u2c(),c,this.e2k_1,Nn(e,s));var h=u;e.n(s,h)},rs.prototype.a2j=function(t,n){for(var e=this.w2j(n),o=this.u2c(),r=t.k2h(o,e),i=0,s=this.y2j(n);s.d();){var a=s.e(),u=a.l2(),c=a.n2(),l=this.u2c(),h=i;i=h+1|0,r.h2h(l,h,this.d2k_1,u);var p=this.u2c(),f=i;i=f+1|0,r.h2h(p,f,this.e2k_1,c)}r.u2f(o)},rs.prototype.v2c=function(t,n){return this.a2j(t,null==n||Xt(n)?n:zt())},rs.$metadata$=yt("MapLikeSerializer",void 0,void 0,void 0,void 0,ss.prototype),is.prototype.a2j=function(t,n){var e=this.w2j(n),o=this.u2c(),r=t.k2h(o,e),i=this.y2j(n),s=0;if(s=0))throw Kt(Jt("Size must be known in advance when using READ_ALL"));var r=0;if(r>>6|0)-1|0;Rn();var o=63&n;t.j2l_1[e]=t.j2l_1[e].fn(new $n(1,0).kb(o))}(this,t)},hs.prototype.l2l=function(){for(var t=this.g2l_1.c2e();!this.i2l_1.equals(new $n(-1,-1));){var n=Un(this.i2l_1.en());if(this.i2l_1=this.i2l_1.fn(new $n(1,0).kb(n)),this.h2l_1(this.g2l_1,n))return n}return Rn(),t>64?function(t){var n=0,e=t.j2l_1.length-1|0;if(n<=e)do{var o=n;n=n+1|0;var r=o+1|0;Rn();for(var i=lt(r,64),s=t.j2l_1[o];!s.equals(new $n(-1,-1));){var a=Un(s.en());s=s.fn(new $n(1,0).kb(a));var u=i+a|0;if(t.h2l_1(t.g2l_1,u))return t.j2l_1[o]=s,u}t.j2l_1[o]=s}while(n<=e);return Ei(),-1}(this):(Ei(),-1)},hs.$metadata$=yt("ElementMarker"),fs.prototype.d2e=function(){return this.y2l_1},fs.prototype.hashCode=function(){return lt(Ss.prototype.hashCode.call(this),31)},fs.prototype.equals=function(t){var n;t:if(this!==t)if(t instanceof fs)if(this.a2e()===t.a2e()){var e=t;if(e.y2l_1&&vn(this.l2m(),e.l2m()))if(this.c2e()===t.c2e()){var o=0,r=this.c2e();if(o>>1|0}while(i<32);throw ir(o,e.a2e())},t.$_$.x1=Ta,t.$_$.y1=function(t,n){return this.w2u(t,(e=n,function(t){return e}));var e},t.$_$.z1=Ba,t.$_$.a2=Jo,t.$_$.b2=Vo,t.$_$.c2=sr,t.$_$.d2=Zo,t.$_$.e2=or,t.$_$.f2=Qo,t.$_$.g2=Yo,t.$_$.h2=lr,t}.apply(n,o))||(t.exports=r)},730:function(t,n,e){var o,r,i;r=[n,e(645),e(744)],void 0===(i="function"==typeof(o=function(t,n,e){"use strict";var o,r,i,s,a,u,c,l,h,p,f,_,d,v,y,m,g,$,b,w,x,k,j,C,z,S,q,O,P,M,A,E,I,D,T,B,L,N,F,R,H,U,V,W,J,K,G,Y,X,Z,Q,tt=Math.imul,nt=n.$_$.x1,et=e.$_$.la,ot=n.$_$.f2,rt=e.$_$.h9,it=e.$_$.r4,st=e.$_$.pa,at=e.$_$.t1,ut=e.$_$.e9,ct=e.$_$.bc,lt=e.$_$.g2,ht=e.$_$.j9,pt=e.$_$.ac,ft=n.$_$.j1,_t=n.$_$.g1,dt=e.$_$.s9,vt=e.$_$.nc,yt=e.$_$.q9,mt=e.$_$.k,gt=e.$_$.g5,$t=e.$_$.n1,bt=e.$_$.i5,wt=e.$_$.c,xt=e.$_$.p9,kt=e.$_$.h,jt=e.$_$.jd,Ct=n.$_$.u1,zt=e.$_$.nb,St=e.$_$.pb,qt=e.$_$.lb,Ot=e.$_$.ob,Pt=e.$_$.kb,Mt=n.$_$.e,At=n.$_$.a,Et=n.$_$.b2,It=n.$_$.m,Dt=n.$_$.z,Tt=e.$_$.g4,Bt=n.$_$.o,Lt=n.$_$.n,Nt=n.$_$.f,Ft=n.$_$.h,Rt=n.$_$.v,Ht=e.$_$.sb,Ut=e.$_$.p4,Vt=n.$_$.s,Wt=e.$_$.h3,Jt=e.$_$.vc,Kt=e.$_$.ba,Gt=e.$_$.w1,Yt=e.$_$.kd,Xt=n.$_$.y,Zt=n.$_$.x,Qt=n.$_$.w,tn=e.$_$.ya,nn=e.$_$.o9,en=n.$_$.m1,on=n.$_$.h1,rn=e.$_$.na,sn=e.$_$.x2,an=e.$_$.z2,un=e.$_$.g3,cn=e.$_$.i3,ln=e.$_$.o2,hn=e.$_$.q2,pn=e.$_$.p3,fn=e.$_$.r3,_n=n.$_$.p1,dn=e.$_$.c9,vn=n.$_$.e2,yn=n.$_$.c,mn=e.$_$.f9,gn=e.$_$.g9,$n=e.$_$.qa,bn=e.$_$.ra,wn=n.$_$.k,xn=e.$_$.t,kn=e.$_$.q7,jn=e.$_$.a9,Cn=e.$_$.fd,zn=e.$_$.l6,Sn=e.$_$.t6,qn=e.$_$.h6,On=e.$_$.i6,Pn=e.$_$.l9,Mn=n.$_$.i,An=e.$_$.c1,En=e.$_$.dc,In=e.$_$.gd,Dn=e.$_$.u8,Tn=e.$_$.ec,Bn=e.$_$.yc,Ln=e.$_$.f8,Nn=(e.$_$.w8,n.$_$.n1),Fn=e.$_$.d,Rn=n.$_$.a2,Hn=e.$_$.da,Un=n.$_$.g2,Vn=n.$_$.d2,Wn=n.$_$.v1,Jn=n.$_$.a1,Kn=n.$_$.u,Gn=n.$_$.t,Yn=n.$_$.g,Xn=n.$_$.j,Zn=n.$_$.y1,Qn=n.$_$.z1,te=n.$_$.c1,ne=e.$_$.md,ee=n.$_$.c2,oe=n.$_$.b,re=e.$_$.ic,ie=e.$_$.id,se=e.$_$.hd,ae=n.$_$.f1,ue=n.$_$.e1,ce=e.$_$.rb,le=e.$_$.y2,he=e.$_$.tb,pe=e.$_$.qb,fe=e.$_$.p2,_e=e.$_$.ub,de=e.$_$.q3,ve=n.$_$.i1,ye=n.$_$.d1,me=e.$_$.j2,ge=n.$_$.l1,$e=n.$_$.k1,be=e.$_$.o4,we=n.$_$.q,xe=e.$_$.n4,ke=n.$_$.r,je=e.$_$.q4,Ce=n.$_$.p,ze=e.$_$.p7,Se=e.$_$.ia,qe=e.$_$.i2,Oe=e.$_$.eb,Pe=e.$_$.ma,Me=n.$_$.s1,Ae=e.$_$.r1,Ee=e.$_$.b4,Ie=e.$_$.f4,De=e.$_$.oa,Te=e.$_$.hb,Be=e.$_$.m6,Le=e.$_$.k7,Ne=e.$_$.x7,Fe=e.$_$.fc,Re=n.$_$.b1,He=e.$_$.b7,Ue=e.$_$.n7,Ve=e.$_$.o,We=e.$_$.jc,Je=e.$_$.h2,Ke=e.$_$.l4,Ge=e.$_$.d9,Ye=e.$_$.n,Xe=e.$_$.m1,Ze=e.$_$.v;function Qe(){o=this,no.call(this,function(t,n,e,o,r,i,s,a,u,c,l,h,p,f){return function(t,n,e,o,r,i,s,a,u,c,l,h,p,f,_){return 0!=(1&p)&&(t=!1),0!=(2&p)&&(n=!1),0!=(4&p)&&(e=!1),0!=(8&p)&&(o=!1),0!=(16&p)&&(r=!1),0!=(32&p)&&(i=!0),0!=(64&p)&&(s=" "),0!=(128&p)&&(a=!1),0!=(256&p)&&(u=!1),0!=(512&p)&&(c="type"),0!=(1024&p)&&(l=!1),0!=(2048&p)&&(h=!0),so.call(_,t,n,e,o,r,i,s,a,u,c,l,h),_}(t,n,e,o,r,i,s,a,u,c,l,h,p,0,Object.create(so.prototype))}(!1,!1,!1,!1,!1,!1,null,!1,!1,null,!1,!1,4095),nt())}function to(){return null==o&&new Qe,o}function no(t,n){to(),this.h2v_1=t,this.i2v_1=n,this.j2v_1=new Dr}function eo(t){this.z2v_1=t.h2v_1.m2w_1,this.a2w_1=t.h2v_1.r2w_1,this.b2w_1=t.h2v_1.n2w_1,this.c2w_1=t.h2v_1.o2w_1,this.d2w_1=t.h2v_1.p2w_1,this.e2w_1=t.h2v_1.q2w_1,this.f2w_1=t.h2v_1.s2w_1,this.g2w_1=t.h2v_1.t2w_1,this.h2w_1=t.h2v_1.u2w_1,this.i2w_1=t.h2v_1.v2w_1,this.j2w_1=t.h2v_1.w2w_1,this.k2w_1=t.h2v_1.x2w_1,this.l2w_1=t.o2d()}function oo(t,n){no.call(this,t,n),function(t){if(ht(t.o2d(),nt()))return it();var n=new Er(t.h2v_1.u2w_1,t.h2v_1.v2w_1);t.o2d().o2u(n)}(this)}function ro(){}function io(){}function so(t,n,e,o,r,i,s,a,u,c,l,h){this.m2w_1=t,this.n2w_1=n,this.o2w_1=e,this.p2w_1=o,this.q2w_1=r,this.r2w_1=i,this.s2w_1=s,this.t2w_1=a,this.u2w_1=u,this.v2w_1=c,this.w2w_1=l,this.x2w_1=h}function ao(){}function uo(){r=this}function co(){null==r&&new uo}function lo(){i=this}function ho(t){null==i&&new lo,co.call(this),this.c2x_1=t}function po(){s=this}function fo(t){var n=t.l2(),e=t.n2(),o=$t();return Kr(o,n),o.r9(lt(58)),o.eb(e),o.toString()}function _o(t){null==s&&new po,co.call(this),this.g2x_1=t}function vo(){a=this}function yo(){null==a&&new vo,co.call(this)}function mo(t,n){yo.call(this),this.i2x_1=n,this.j2x_1=st(t)}function go(){return Ro()}function $o(){u=this,yo.call(this),this.k2x_1="null";var t=kt();this.l2x_1=jt(t,go)}function bo(){return null==u&&new $o,u}function wo(t){return function(t){return Gr(),!!Oe(t,"true",!0)||!Oe(t,"false",!0)&&null}(t.d1e())}function xo(t){return zt(t.d1e())}function ko(t){var n,e=t instanceof yo?t:null;return null==e?function(t,n){throw at("Element "+wt(t)+" is not a "+n)}(t,"JsonPrimitive"):n=e,n}function jo(t){var n=Ho(Co);t.f2d("JsonPrimitive",n,null,!1,12,null);var e=Ho(zo);t.f2d("JsonNull",e,null,!1,12,null);var o=Ho(So);t.f2d("JsonLiteral",o,null,!1,12,null);var r=Ho(qo);t.f2d("JsonObject",r,null,!1,12,null);var i=Ho(Oo);return t.f2d("JsonArray",i,null,!1,12,null),it()}function Co(){return No().n2x_1}function zo(){return Ro().o2x_1}function So(){return Vo().p2x_1}function qo(){return Bo().q2x_1}function Oo(){return Io().r2x_1}function Po(){c=this;var t=Mt();this.s2x_1=At("kotlinx.serialization.json.JsonElement",t,[],jo,4,null)}function Mo(){return null==c&&new Po,c}function Ao(){l=this,this.u2x_1=It(Mo()).u2c(),this.v2x_1="kotlinx.serialization.json.JsonArray"}function Eo(){h=this,this.r2x_1=(null==l&&new Ao,l)}function Io(){return null==h&&new Eo,h}function Do(){p=this,this.x2x_1=Lt(Bt(Tt()),Mo()).u2c(),this.y2x_1="kotlinx.serialization.json.JsonObject"}function To(){f=this,this.q2x_1=(null==p&&new Do,p)}function Bo(){return null==f&&new To,f}function Lo(){_=this;var t=Nt();this.n2x_1=At("kotlinx.serialization.json.JsonPrimitive",t,[],null,12,null)}function No(){return null==_&&new Lo,_}function Fo(){d=this;var t=Ft();this.o2x_1=At("kotlinx.serialization.json.JsonNull",t,[],null,12,null)}function Ro(){return null==d&&new Fo,d}function Ho(t){return new Yo(t)}function Uo(){v=this,this.p2x_1=Rt("kotlinx.serialization.json.JsonLiteral",Nt())}function Vo(){return null==v&&new Uo,v}function Wo(t){!function(t){var n=Kt(t,Xo)?t:null;if(null==n)throw Gt("This serializer can be used only with Json format.Expected Encoder to be JsonEncoder, got "+wt(t))}(t)}function Jo(t){var n=Kt(t,ao)?t:null;if(null==n)throw Gt("This serializer can be used only with Json format.Expected Decoder to be JsonDecoder, got "+wt(t));return n}function Ko(t){Jo(t)}function Go(t){return nn("original",1,tn,(function(t){return Go(t)}),null),t.d2y_1.n2()}function Yo(t){this.d2y_1=Yt(t)}function Xo(){}function Zo(t){this.e2y_1=t,this.f2y_1=!0}function Qo(t,n){Zo.call(this,t),this.a2z_1=n}function tr(t,n){Zo.call(this,t),this.d2z_1=n,this.e2z_1=0}function nr(t){var n,e;this.f2z_1=new _n(t,(n=this,e=function(t,e){return r=t,i=e,(o=n).g2z_1=!r.j2e(i)&&r.g2e(i).w2d(),o.g2z_1;var o,r,i},e.callableName="readIfAbsent",e)),this.g2z_1=!1}function er(t,n){var e="Unexpected special floating-point value "+st(n)+". By default, non-finite floating point values are prohibited because they do not conform JSON specification";t.h2z(e,0,Ji(),2,null)}function or(t){hr.call(this,t),dn(this,or)}function rr(t){return new or("Value of type '"+t.a2e()+"' can't be used in JSON as a key in the map. It should have either primitive or enum kind, but its kind is '"+t.e2e()+"'.\n"+Q)}function ir(t){hr.call(this,t),dn(this,ir)}function sr(t,n,e){return ur(t,n+"\nJSON input: "+pr(e,t))}function ar(t,n,e){return ur(-1,function(t,n,e){return"Unexpected special floating-point value "+st(t)+" with key "+n+". By default, non-finite floating point values are prohibited because they do not conform JSON specification. "+Ji()+"\nCurrent output: "+fr(e,0,1)}(t,n,e))}function ur(t,n){return new ir(t>=0?"Unexpected JSON token at offset "+t+": "+n:n)}function cr(t,n){return ur(-1,"Encountered unknown key '"+t+"'.\n"+Y+"\nCurrent input: "+fr(n,0,1))}function lr(t,n){return new or("Unexpected special floating-point value "+st(t)+". By default, non-finite floating point values are prohibited because they do not conform JSON specification. "+Ji()+"\nCurrent output: "+fr(n,0,1))}function hr(t){yn(t,this),dn(this,hr)}function pr(t,n){if(mn(t)<200)return t;if(-1===n){var e=mn(t)-60|0;if(e<=0)return t;var o=mn(t);return"....."+st(gn(t,e,o))}var r=n-30|0,i=n+30|0,s=r<=0?"":".....",a=i>=mn(t)?"":".....",u=$n(r,0),c=bn(i,mn(t));return s+st(gn(t,u,c))+a}function fr(t,n,e,o){return 0!=(1&e)&&(n=-1),pr(t,n)}function _r(){return mr(),y}function dr(t,n,e){mr();var o=t.h2e(e);if(wn(),-3!==o)return o;if(!n.h2v_1.x2w_1)return o;var r,i,s,a=Gi(n),u=_r(),c=a.j2z(t,u,(i=t,s=function(){return vr(i)},s.callableName="buildAlternativeNamesMap",s)).b3(e);return null==c?(wn(),r=-3):r=c,r}function vr(t){mr();var n=null,e=0,o=t.c2e();if(e>12),r=Jr(e>>8),i=Jr(e>>4),s=Jr(e);t[e]="\\u"+new ct(o)+new ct(r)+new ct(i)+new ct(s)}while(n<=31);t[34]='\\"',t[92]="\\\\",t[9]="\\t",t[8]="\\b",t[10]="\\n",t[13]="\\r",t[12]="\\f",w=t;var a=new Int8Array(93),u=0;if(u<=31)do{var c=u;u=u+1|0,a[c]=1}while(u<=31);34,a[34]=Pe(34),92,a[92]=Pe(92),116,a[9]=Pe(116),98,a[8]=Pe(98),110,a[10]=Pe(110),114,a[13]=Pe(114),102,a[12]=Pe(102)}}function Yr(t){var n=t.p2s(),e=null==n?null:t.s32(n);return null==e?t.n2():e}function Xr(t,n){throw sr(-1,"Failed to parse '"+n+"'",st(Yr(t)))}function Zr(t,n,e){var o=t instanceof mo?t:null;if(null==o)throw ur(-1,"Unexpected 'null' when "+e+" was expected");return o}function Qr(t,n){Me.call(this),this.p32_1=t,this.q32_1=n,this.r32_1=this.a2x().h2v_1}function ti(t,n,e,o,r,i,s){return 0!=(4&r)&&(e=null),0!=(8&r)&&(o=null),oi.call(s,t,n,e,o),s}function ni(t,n,e,o){var r,i;t:{var s=t.a2x(),a=n.g2e(e);if(!a.w2d()&&t.s32(o)instanceof $o)r=!0;else{if(ht(a.e2e(),Ft())){var u=t.s32(o),c=u instanceof yo?u:null,l=null==c?null:(i=c)instanceof $o?null:i.d1e();if(null==l){r=!1;break t}var h=dr(a,s,l);if(wn(),-3===h){it(),r=!0;break t}}r=!1}}return r}function ei(t,n,e){return t.o33_1=!t.a2x().h2v_1.r2w_1&&!n.j2e(e)&&n.g2e(e).w2d(),t.o33_1}function oi(t,n,e,o){Qr.call(this,t,n),this.k33_1=n,this.l33_1=e,this.m33_1=o,this.n33_1=0,this.o33_1=!1}function ri(t,n){Qr.call(this,t,n),this.u33_1=n,this.v33_1=this.u33_1.f(),this.w33_1=-1}function ii(t,n){ti(t,n,null,null,12,0,this),this.h34_1=n,this.i34_1=Ne(this.h34_1.c3()),this.j34_1=tt(this.i34_1.f(),2),this.k34_1=-1}function si(){if(S)return it();S=!0,k=new ai("OBJ",0,qi(),Oi()),j=new ai("LIST",1,Pi(),Mi()),C=new ai("MAP",2,qi(),Oi()),z=new ai("POLY_OBJ",3,Pi(),Mi())}function ai(t,n,e,o){Fe.call(this,t,n),this.g32_1=e,this.h32_1=o}function ui(t,n){var e,o=n.e2e();if(o instanceof Gn)e=fi();else if(ht(o,Mn()))e=hi();else if(ht(o,Xn())){var r,i=ci(n.g2e(0),t.o2d()),s=i.e2e();if(s instanceof Kn||ht(s,Ft()))r=pi();else{if(!t.h2v_1.p2w_1)throw rr(i);r=hi()}e=r}else e=li();return e}function ci(t,n){var e;if(ht(t.e2e(),Yn())){var o=Re(n,t),r=null==o?null:ci(o,n);e=null==r?t:r}else e=t.d2e()?ci(t.g2e(0),n):t;return e}function li(){return si(),k}function hi(){return si(),j}function pi(){return si(),C}function fi(){return si(),z}function _i(t,n,e){return t.l34(n,e),function(t,n){var e=n;-1===(e=t.n34(e))&&t.h2z("Expected escape sequence to continue, got EOF",0,null,6,null);var o=t.m34(),r=e;e=r+1|0;var i=ut(o,r);if(ht(new ct(i),new ct(lt(117))))return yi(t,t.m34(),e);var s=function(t){return t<117?Wi().w34_1[t]:lt(0)}(qe(i));if(ht(new ct(s),new ct(lt(0)))){var a="Invalid escaped char '"+new ct(i)+"'";t.h2z(a,0,null,6,null)}return t.x2v_1.r9(s),e}(t,e+1|0)}function di(t,n,e){t.l34(n,e);var o=t.x2v_1.toString();return t.x2v_1.wk(0),o}function vi(t){var n=Cn(t.w2v_1);return t.w2v_1=null,n}function yi(t,n,e){return(e+4|0)>=mn(n)?(t.u2v_1=e,t.o34(),(t.u2v_1+4|0)>=mn(n)&&t.h2z("Unexpected EOF during unicode escape",0,null,6,null),yi(t,n,t.u2v_1)):(t.x2v_1.r9(Se((((mi(t,n,e)<<12)+(mi(t,n,e+1|0)<<8)|0)+(mi(t,n,e+2|0)<<4)|0)+mi(t,n,e+3|0)|0)),e+4|0)}function mi(t,n,e){var o,r=ut(n,e);if(lt(48)<=r&&r<=lt(57))o=qe(r)-48|0;else if(lt(97)<=r&&r<=lt(102))o=10+(qe(r)-97|0)|0;else if(lt(65)<=r&&r<=lt(70))o=10+(qe(r)-65|0)|0;else{var i="Invalid toHexChar char '"+new ct(r)+"' in unicode escape";t.h2z(i,0,null,6,null)}return o}function gi(t,n){var e=t.n34(n);(e>=mn(t.m34())||-1===e)&&t.h2z("EOF",0,null,6,null);var o=t.m34(),r=e;e=r+1|0;var i,s=ut(o,r),a=32|qe(s);if(116===a)$i(t,"rue",e),i=!0;else if(102===a)$i(t,"alse",e),i=!1;else{var u="Expected valid boolean literal prefix, but had '"+t.j30()+"'";t.h2z(u,0,null,6,null)}return i}function $i(t,n,e){(mn(t.m34())-e|0)=0&&(t.fb("."),t.fb(r.i2e(i)))}else r!==$r()&&(t.fb("["),t.fb("'"),t.eb(r),t.fb("'"),t.fb("]"))}while(e=0&&ht(new ct(t),new ct(lt(34)))&&"null"===this.j30()&&this.s34("Expected string literal but 'null' literal was found",this.u2v_1-4|0,"Use 'coerceInputValues = true' in 'Json {}` builder to coerce nulls to default values."),this.q34(wi(t))},bi.prototype.q34=function(t){var n="Expected "+(1===t?"quotation mark '\"'":4===t?"comma ','":5===t?"colon ':'":6===t?"start of the object '{'":7===t?"end of the object '}'":8===t?"start of the array '['":9===t?"end of the array ']'":"valid token")+", but had '"+(this.u2v_1===mn(this.m34())||this.u2v_1<=0?"EOF":me(ut(this.m34(),this.u2v_1-1|0)))+"' instead",e=this.u2v_1-1|0;this.h2z(n,e,null,4,null)},bi.prototype.g30=function(){for(var t=this.m34(),n=this.u2v_1;-1!==(n=this.n34(n));){var e=ut(t,n);if(!(ht(new ct(e),new ct(lt(32)))||ht(new ct(e),new ct(lt(10)))||ht(new ct(e),new ct(lt(13)))||ht(new ct(e),new ct(lt(9)))))return this.u2v_1=n,wi(e);n=n+1|0}return this.u2v_1=n,10},bi.prototype.w31=function(){var t=this.t34();t=this.n34(t);var n=mn(this.m34())-t|0;if(n<4||-1===t)return!0;var e=0;if(e<=3)do{var o=e;if(e=e+1|0,!ht(new ct(ut("null",o)),new ct(ut(this.m34(),t+o|0))))return!0}while(e<=3);return n>4&&0===wi(ut(this.m34(),t+4|0))||(this.u2v_1=t+4|0,!1)},bi.prototype.t34=function(){var t=this.u2v_1;t:for(;-1!==(t=this.n34(t));){var n=ut(this.m34(),t);if(!(ht(new ct(n),new ct(lt(32)))||ht(new ct(n),new ct(lt(10)))||ht(new ct(n),new ct(lt(13)))||ht(new ct(n),new ct(lt(9)))))break t;t=t+1|0}return this.u2v_1=t,t},bi.prototype.x31=function(t){var n,e=this.g30();if(t){if(1!==e&&0!==e)return null;n=this.j30()}else{if(1!==e)return null;n=this.i30()}var o=n;return this.w2v_1=o,o},bi.prototype.u34=function(t,n){var e=this.m34();return st(gn(e,t,n))},bi.prototype.i30=function(){return null!=this.w2v_1?vi(this):this.a32()},bi.prototype.consumeString2=function(t,n,e){for(var o=e,r=n,i=ut(t,o),s=!1;!ht(new ct(i),new ct(lt(34)));){if(ht(new ct(i),new ct(lt(92)))){if(s=!0,-1===(o=this.n34(_i(this,r,o)))){var a=o;this.h2z("EOF",a,null,4,null)}r=o}else if((o=o+1|0)>=mn(t)){if(s=!0,this.l34(r,o),-1===(o=this.n34(o))){var u=o;this.h2z("EOF",u,null,4,null)}r=o}i=ut(t,o)}var c=s?di(this,r,o):this.u34(r,o);return this.u2v_1=o+1|0,c},bi.prototype.b32=function(){var t,n=this.j30();return"null"===n&&!ht(new ct(ut((t=this).m34(),t.u2v_1-1|0)),new ct(lt(34)))&&this.h2z("Unexpected 'null' value instead of string literal",0,null,6,null),n},bi.prototype.j30=function(){if(null!=this.w2v_1)return vi(this);var t=this.t34();if(t>=mn(this.m34())||-1===t){var n=t;this.h2z("EOF",n,null,4,null)}var e=wi(ut(this.m34(),t));if(1===e)return this.i30();if(0!==e){var o="Expected beginning of the string, but got "+new ct(ut(this.m34(),t));this.h2z(o,0,null,6,null)}for(var r=!1;0===wi(ut(this.m34(),t));)if((t=t+1|0)>=mn(this.m34())){r=!0,this.l34(this.u2v_1,t);var i=this.n34(t);if(-1===i)return this.u2v_1=t,di(this,0,0);t=i}var s=r?di(this,this.u2v_1,t):this.u34(this.u2v_1,t);return this.u2v_1=t,s},bi.prototype.l34=function(t,n){this.x2v_1.vk(this.m34(),t,n)},bi.prototype.v34=function(t,n,e){if(!t){var o=e();this.h2z(o,n,null,4,null)}},bi.prototype.z31=function(t){var n=xn(),e=this.g30();if(8!==e&&6!==e)return this.j30(),it();for(;;)if(1!==(e=this.g30())){var o=e;if(8===o||6===o)n.a(e);else if(9===o){if(8!==He(n))throw sr(this.u2v_1,"found ] instead of } at path: "+this.v2v_1,this.m34());Ue(n)}else if(7===o){if(6!==He(n))throw sr(this.u2v_1,"found } instead of ] at path: "+this.v2v_1,this.m34());Ue(n)}else 10===o&&this.h2z("Unexpected end of input due to malformed JSON during ignoring unknown keys",0,null,6,null);if(this.l30(),0===n.f())return it()}else t?this.j30():this.a32()},bi.prototype.toString=function(){return"JsonReader(source='"+this.m34()+"', currentPosition="+this.u2v_1+")"},bi.prototype.y31=function(t){var n=this.u34(0,this.u2v_1),e=Ve(n,t,0,!1,6,null);this.s34("Encountered an unknown key '"+t+"'",e,"Use 'ignoreUnknownKeys = true' in 'Json {}' builder to ignore unknown keys.")},bi.prototype.s34=function(t,n,e){var o=0===mn(e)?"":"\n"+e;throw sr(n,t+" at path: "+this.v2v_1.t2z()+o,this.m34())},bi.prototype.h2z=function(t,n,e,o,r){return 0!=(2&o)&&(n=this.u2v_1),0!=(4&o)&&(e=""),this.s34(t,n,e)},bi.prototype.k32=function(){var t,n=this.t34();((n=this.n34(n))>=mn(this.m34())||-1===n)&&this.h2z("EOF",0,null,6,null),ht(new ct(ut(this.m34(),n)),new ct(lt(34)))?((n=n+1|0)===mn(this.m34())&&this.h2z("EOF",0,null,6,null),t=!0):t=!1;var e,o=t,r=new We(0,0),i=!1,s=n,a=!0;t:for(;a;){var u=ut(this.m34(),n);if(ht(new ct(u),new ct(lt(45))))n!==s&&this.h2z("Unexpected symbol '-' in numeric literal",0,null,6,null),i=!0,n=n+1|0;else{if(0!==wi(u))break t;a=!((n=n+1|0)===mn(this.m34()));var c=Je(u,lt(48));if(!(0<=c&&c<=9)){var l="Unexpected symbol '"+new ct(u)+"' in numeric literal";this.h2z(l,0,null,6,null)}(r=r.u9(new We(10,0)).w9(rn(c))).d1(new We(0,0))>0&&this.h2z("Numeric value overflow",0,null,6,null)}}if((s===n||i&&s===(n-1|0))&&this.h2z("Expected numeric literal",0,null,6,null),o&&(a||this.h2z("EOF",0,null,6,null),ht(new ct(ut(this.m34(),n)),new ct(lt(34)))||this.h2z("Expected closing quotation mark",0,null,6,null),n=n+1|0),this.u2v_1=n,i)e=r;else{var h=r;Ke(),h.equals(new We(0,-2147483648))?this.h2z("Numeric value overflow",0,null,6,null):e=r.s9()}return e},bi.prototype.i32=function(){return gi(this,this.t34())},bi.prototype.j32=function(){var t,n=this.t34();n===mn(this.m34())&&this.h2z("EOF",0,null,6,null),ht(new ct(ut(this.m34(),n)),new ct(lt(34)))?(n=n+1|0,t=!0):t=!1;var e=t,o=gi(this,n);if(e){this.u2v_1===mn(this.m34())&&this.h2z("EOF",0,null,6,null),ht(new ct(ut(this.m34(),this.u2v_1)),new ct(lt(34)))||this.h2z("Expected closing quotation mark",0,null,6,null);this.u2v_1=this.u2v_1+1|0}return o},bi.$metadata$=rt("AbstractJsonLexer"),Vi.$metadata$=et("CharMappings"),Ki.prototype.m34=function(){return this.c35_1},Ki.prototype.n34=function(t){return t=0},Wn.prototype.du=function(){var t=this.ut_1,n=null==t?null:t.eu();return null==n||n},Wn.prototype.fu=function(t){this.st_1=this.st_1.v9(Vn(0,t)),t||(this.tt_1=!0)},Wn.prototype.gu=function(t){if(this.st_1=this.st_1.w9(Vn(0,t)),this.st_1.d1(new jt(0,0))>0)return N();this.tt_1&&this.hu()},Wn.prototype.hu=function(){},Wn.$metadata$=W("EventLoop",void 0,void 0,void 0,void 0,Tn.prototype),Jn.prototype.ju=function(){var t,n=this.iu_1.lu();if(null==n){var e=new Jo;Kn().iu_1.mu(e),t=e}else t=n;return t},Jn.$metadata$=st("ThreadLocalEventLoop"),Gn.$metadata$=W("CompletionHandlerException",void 0,void 0,void 0,void 0,Ct.prototype),Yn.$metadata$=W("CoroutinesInternalError",void 0,void 0,void 0,void 0,qt.prototype),Xn.$metadata$=nt("DisposableHandle"),Zn.$metadata$=st("Key",[$t]),te.$metadata$=nt("Job",[Pt]),ne.$metadata$=nt("ChildJob",[te]),ee.$metadata$=nt("ParentJob",[te]),oe.$metadata$=nt("ChildHandle",[Xn]),re.prototype.ks=function(){},re.prototype.hq=function(t){return!1},re.prototype.toString=function(){return"NonDisposableHandle"},re.$metadata$=st("NonDisposableHandle",[Xn,oe]),fe.prototype.yo=function(){return this.nu_1},fe.prototype.ou=function(){return null},fe.prototype.toString=function(){return"Empty{"+(this.nu_1?"Active":"New")+"}"},fe.$metadata$=W("Empty",[_e]),_e.$metadata$=nt("Incomplete"),de.prototype.yo=function(){return!0},de.prototype.ou=function(){return this},de.prototype.su=function(t){var n=At();n.fb("List{"),n.fb(t),n.fb("}[");for(var e=!0,o=this.tu_1;!G(o,this);){if(o instanceof ve){var r=o;e?e=!1:n.fb(", "),n.eb(r)}o=o.tu_1}return n.fb("]"),n.toString()},de.prototype.toString=function(){return Fo()?this.su("Active"):ir.prototype.toString.call(this)},de.$metadata$=W("NodeList",[_e],void 0,void 0,void 0,ir.prototype),ve.prototype.hv=function(){var t=this.gv_1;if(null!=t)return t;Et("job")},ve.prototype.yo=function(){return!0},ve.prototype.ou=function(){return null},ve.prototype.ks=function(){return this.hv().bq(this)},ve.prototype.toString=function(){return Ro(this)+"@"+Ho(this)+"[job@"+Ho(this.hv())+"]"},ve.$metadata$=W("JobNode",[Xn,_e],void 0,void 0,void 0,Eo.prototype),Ie.prototype.ou=function(){return this.kv_1},Ie.prototype.vv=function(t){this.lv_1.oo_1=t},Ie.prototype.rv=function(){return this.lv_1.oo_1},Ie.prototype.bw=function(t){this.mv_1.ko_1=t},Ie.prototype.uv=function(){return this.mv_1.ko_1},Ie.prototype.sv=function(){return me(this)===he()},Ie.prototype.ov=function(){return!(null==this.uv())},Ie.prototype.yo=function(){return null==this.uv()},Ie.prototype.pv=function(t){var n,e=me(this);if(null==e)n=ge();else if(e instanceof Error){var o=ge();o.a(e),n=o}else{if(!(e instanceof Tt)){var r="State is "+ot(e);throw X(rt(r))}n=e instanceof Tt?e:B()}var i=n,s=this.uv(),a=s;return null==a||(i.zf(0,a),N()),null==t||G(t,s)||i.a(t),ye(this,he()),i},Ie.prototype.tv=function(t){var n=this.uv();if(null==n)return this.bw(t),N();if(t===n)return N();var e=me(this);if(null==e)ye(this,t);else if(e instanceof Error){if(t===e)return N();var o=ge();o.a(e),o.a(t),ye(this,o)}else{if(!(e instanceof Tt)){var r="State is "+ot(e);throw X(rt(r))}(e instanceof Tt?e:B()).a(t)}},Ie.prototype.toString=function(){return"Finishing[cancelling="+this.ov()+", completing="+this.rv()+", rootCause="+this.uv()+", exceptions="+ot(me(this))+", list="+this.kv_1+"]"},Ie.$metadata$=W("Finishing",[_e]),De.prototype.it=function(t){!function(t,n,e,o){var r=Ae(e);if(null!=r&&Me(t,n,r,o))return N();var i=$e(t,n,o);t.ip(i)}(this.gw_1,this.hw_1,this.iw_1,this.jw_1)},De.prototype.invoke=function(t){return this.it(t)},De.$metadata$=W("ChildCompletion",void 0,void 0,void 0,void 0,ve.prototype),Te.prototype.zw=function(t,n){var e=this.ax(t,n);return e.l7_1=N(),e.m7_1=null,e.q7()},Te.prototype.r7=function(t,n){return this.zw(t instanceof Lt?t:B(),n)},Te.prototype.q7=function(){var t=this.l7_1;t:for(;;)try{switch(this.j7_1){case 0:if(this.k7_1=8,this.uw_1=this.sw_1.rp(),this.uw_1 instanceof Re){if(this.j7_1=6,(t=this.tw_1.t4(this.uw_1.aw_1,this))===tt())return t;continue t}var n=this.uw_1;if(null!=n&&et(n,_e)){if(this.vw_1=this.uw_1.ou(),null==this.vw_1){this.ww_1=null,this.j7_1=5;continue t}this.xw_1=this.vw_1.tu_1,this.j7_1=1;continue t}this.j7_1=7;continue t;case 1:if(G(this.xw_1,this.vw_1)){this.j7_1=4;continue t}if(this.xw_1 instanceof Re){if(this.yw_1=this.xw_1,this.j7_1=2,(t=this.tw_1.t4(this.yw_1.aw_1,this))===tt())return t;continue t}this.j7_1=3;continue t;case 2:this.j7_1=3;continue t;case 3:this.xw_1=this.xw_1.tu_1,this.j7_1=1;continue t;case 4:this.ww_1=N(),this.j7_1=5;continue t;case 5:case 6:this.j7_1=7;continue t;case 7:return N();case 8:throw this.m7_1}}catch(t){if(8===this.k7_1)throw t;this.j7_1=this.k7_1,this.m7_1=t}},Te.prototype.ax=function(t,n){var e=new Te(this.sw_1,n);return e.tw_1=t,e},Te.$metadata$=W("JobSupport$$slambda",void 0,void 0,void 0,[1],Bt.prototype),Be.prototype.l2=function(){return Qn()},Be.prototype.pp=function(t){this.so_1.ko_1=t},Be.prototype.qp=function(){return this.so_1.ko_1},Be.prototype.to=function(t){if(null==t)return this.pp(ie()),N();t.tp();var n=t.lq(this);this.pp(n),this.sp()&&(n.ks(),this.pp(ie()))},Be.prototype.rp=function(){for(var t=this.ro_1;;){var n=t.ko_1;if(!(n instanceof _o))return n;n.bx(this)}},Be.prototype.yo=function(){var t=this.rp();return!(null==t||!et(t,_e))&&t.yo()},Be.prototype.sp=function(){var t=this.rp();return!(null!=t&&et(t,_e))},Be.prototype.tp=function(){for(;;){var t=ke(this,this.rp());if(0===t)return!1;if(1===t)return!0}},Be.prototype.up=function(){},Be.prototype.vp=function(){var t,n=this.rp();if(n instanceof Ie){var e=n.uv(),o=null==e?null:this.wp(e,Ro(this)+" is cancelling");if(null==o)throw X(rt("Job is still new or active: "+this));t=o}else{if(null!=n&&et(n,_e))throw X(rt("Job is still new or active: "+this));t=n instanceof qn?this.xp(n.dp_1,null,1,null):new Ko(Ro(this)+" has completed normally",null,this)}return t},Be.prototype.wp=function(t,n){var e,o=t instanceof Dt?t:null;if(null==o){var r=n;e=new Ko(null==r?this.bp():r,t,this)}else e=o;return e},Be.prototype.xp=function(t,n,e,o){return 0!=(1&e)&&(n=null),this.wp(t,n)},Be.prototype.yp=function(t){return this.zp(!1,!0,t)},Be.prototype.zp=function(t,n,e){for(var o=function(t,n,e){var o;if(e){var r=n instanceof Ne?n:null;o=null==r?new He(n):r}else{var i=n instanceof ve?n:null,s=null==i?null:i;o=null==s?new Ue(n):s}var a=o;return a.gv_1=t,a}(this,e,t);;)t:{var r=this.rp(),i=r;if(i instanceof fe)if(r.nu_1){if(this.ro_1.atomicfu$compareAndSet(r,o))return o}else Ce(this,r);else{if(null==i||!et(i,_e)){if(n){var s=r instanceof qn?r:null;Io(e,null==s?null:s.dp_1)}return ie()}var a=r.ou();if(null==a)ze(this,r instanceof ve?r:B());else{var u=null,c=ie();if(t&&r instanceof Ie&&(null==(u=r.uv())||e instanceof Re&&!r.rv())){if(!je(this,r,a,o)){N();break t}if(null==u)return o;c=o,N()}if(null!=u)return n&&Io(e,u),c;if(je(this,r,a,o))return o}}}},Be.prototype.bq=function(t){for(;;){var n=this.rp();if(!(n instanceof ve))return null!=n&&et(n,_e)?(null!=n.ou()&&t.iv(),N()):N();if(n!==t)return N();if(this.ro_1.atomicfu$compareAndSet(n,pe()))return N()}},Be.prototype.cq=function(){return!1},Be.prototype.dq=function(t){var n,e=t;if(null==e){n=new Ko(this.bp(),null,this)}else n=e;this.fq(n)},Be.prototype.bp=function(){return"Job was cancelled"},Be.prototype.fq=function(t){this.iq(t)},Be.prototype.gq=function(t){this.iq(t)},Be.prototype.hq=function(t){return t instanceof Dt||!!this.iq(t)&&this.oq()},Be.prototype.iq=function(t){var n,e=ae();return!(!this.cq()||(e=function(t,n){for(;;){var e=t.rp();if(null==e||!et(e,_e)||e instanceof Ie&&e.rv())return ae();var o=Pe(t,e,Sn(Se(t,n),!1,2));if(o!==ce())return o}}(this,t))!==ue())||(e===ae()&&(e=function(t,n){for(var e=null;;)t:{var o=t.rp(),r=o;if(r instanceof Ie){if(o.sv())return le();var i=o.ov();if(null!=n||!i){var s,a=e;if(null==a){var u=Se(t,n);e=u,s=u}else s=a;var c=s;o.tv(c)}var l=o.uv(),h=i?null:l;return null==h||(we(t,o.kv_1,h),N()),ae()}if(null==r||!et(r,_e))return le();var p,f=e;if(null==f){var _=Se(t,n);e=_,p=_}else p=f;var d=p;if(!o.yo()){var v=Pe(t,o,Sn(d,!1,2));if(v===ae()){var y="Cannot happen in "+ot(o);throw X(rt(y))}if(v===ce()){N();break t}return v}if(Oe(t,o,d))return ae()}}(this,t)),e===ae()||e===ue()?n=!0:e===le()?n=!1:(this.ip(e),n=!0),n)},Be.prototype.jq=function(t,n){var e=t;return new Ko(null==e?this.bp():e,n,this)},Be.prototype.kq=function(){var t,n=this.rp(),e=n;if(e instanceof Ie)t=n.uv();else if(e instanceof qn)t=n.dp_1;else{if(null!=e&&et(e,_e)){var o="Cannot be cancelling child in this state: "+ot(n);throw X(rt(o))}t=null}var r=t,i=r instanceof Dt?r:null;return null==i?new Ko("Parent job is "+Ee(0,n),r,this):i},Be.prototype.gp=function(t){for(;;){var n=Pe(this,this.rp(),t);if(n===ae())throw Nt("Job "+this+" is already complete or completing, but is being completed with "+ot(t),(o=void 0,null==(o=(e=t)instanceof qn?e:null)?null:o.dp_1));if(n!==ce())return n;N()}var e,o},Be.prototype.jt=function(){return Ft((t=new Te(this,null),(n=function(n,e){return t.zw(n,e)}).$arity=1,n));var t,n},Be.prototype.lq=function(t){var n;n=new Re(t);var e=this.aq(!0,!1,n,2,null);return et(e,oe)?e:B()},Be.prototype.jp=function(t){throw t},Be.prototype.mq=function(t){},Be.prototype.nq=function(){return!1},Be.prototype.oq=function(){return!0},Be.prototype.pq=function(t){return!1},Be.prototype.cp=function(t){},Be.prototype.ip=function(t){},Be.prototype.toString=function(){return this.qq()+"@"+Ho(this)},Be.prototype.qq=function(){return this.kp()+"{"+Ee(0,this.rp())+"}"},Be.prototype.kp=function(){return Ro(this)},Be.$metadata$=W("JobSupport",[te,ne,ee,Ao]),Ne.$metadata$=W("JobCancellingNode",void 0,void 0,void 0,void 0,ve.prototype),Fe.prototype.ou=function(){return this.qv_1},Fe.prototype.yo=function(){return!1},Fe.prototype.toString=function(){return Fo()?this.qv_1.su("New"):Rt(this)},Fe.$metadata$=W("InactiveNodeList",[_e]),Re.prototype.it=function(t){return this.aw_1.gq(this.hv())},Re.prototype.invoke=function(t){return this.it(t)},Re.prototype.hq=function(t){return this.hv().hq(t)},Re.$metadata$=W("ChildHandleNode",[oe],void 0,void 0,void 0,Ne.prototype),He.prototype.it=function(t){this.hx_1.atomicfu$compareAndSet(0,1)&&this.gx_1(t)},He.prototype.invoke=function(t){return this.it(t)},He.$metadata$=W("InvokeOnCancelling",void 0,void 0,void 0,void 0,Ne.prototype),Ue.prototype.it=function(t){return this.mx_1(t)},Ue.prototype.invoke=function(t){return this.it(t)},Ue.$metadata$=W("InvokeOnCompletion",void 0,void 0,void 0,void 0,ve.prototype),We.$metadata$=W("IncompleteStateBox"),Je.prototype.it=function(t){this.sx_1.ws(this.sx_1.xs(this.hv()))},Je.prototype.invoke=function(t){return this.it(t)},Je.$metadata$=W("ChildContinuation",void 0,void 0,void 0,void 0,Ne.prototype),Ke.prototype.cq=function(){return!0},Ke.prototype.oq=function(){return this.vx_1},Ke.$metadata$=W("JobImpl",[zn],void 0,void 0,void 0,Be.prototype),Ye.prototype.toString=function(){var t=this.yx();return null==t?Ro(this)+"@"+Ho(this):t},Ye.prototype.yx=function(){var t,n=Vo().dy();if(this===n)return"Dispatchers.Main";try{t=n.xx()}catch(n){if(!(n instanceof Ht))throw n;t=null}return this===t?"Dispatchers.Main.immediate":null},Ye.$metadata$=W("MainCoroutineDispatcher",void 0,void 0,void 0,void 0,Tn.prototype),Xe.prototype.hq=function(t){return!1},Xe.$metadata$=W("SupervisorJobImpl",void 0,void 0,void 0,void 0,Ke.prototype),Ze.$metadata$=W("TimeoutCancellationException",[Hn],void 0,void 0,void 0,Dt.prototype),Qe.prototype.nt=function(t){return!1},Qe.prototype.ot=function(t,n){var e=t.z7((null==w&&new to,w));if(null!=e)return e.jy_1=!0,N();throw Ut("Dispatchers.Unconfined.dispatch function can only be used by the yield function. If you wrap Unconfined dispatcher in your code, make sure you properly delegate isDispatchNeeded and dispatch calls.")},Qe.prototype.toString=function(){return"Dispatchers.Unconfined"},Qe.$metadata$=st("Unconfined",void 0,void 0,void 0,void 0,Tn.prototype),to.$metadata$=st("Key",[$t]),no.$metadata$=nt("Flow"),eo.$metadata$=nt("FlowCollector"),oo.$metadata$=nt("MutableSharedFlow",[ro,eo]),ro.$metadata$=nt("SharedFlow",[no]),io.$metadata$=nt("MutableStateFlow",[so,oo]),so.$metadata$=nt("StateFlow",[ro]),uo.prototype.ky=function(t){var n=t;ao(this,null,null==n?ho():n)},uo.prototype.n2=function(){var t=ho(),n=this.uy_1.ko_1;return n===t?null:L(n)?n:B()},uo.prototype.ly=function(t,n){var e=t,o=n;return ao(this,null==e?ho():e,null==o?ho():o)},uo.$metadata$=W("StateFlowImpl",[io,po,lo],void 0,void 0,void 0,co.prototype),co.$metadata$=W("AbstractSharedFlow"),lo.$metadata$=nt("FusibleFlow",[no]),po.$metadata$=nt("CancellableFlow",[no]),fo.prototype.eu=function(){return this.xt_1===this.yt_1},fo.prototype.bu=function(t){this.wt_1[this.yt_1]=t,this.yt_1=(this.yt_1+1|0)&(this.wt_1.length-1|0),this.yt_1===this.xt_1&&function(t){var n=t.wt_1.length,e=Wt(Array(n<<1),null),o=t.wt_1,r=t.xt_1,i=o.length;Jt(o,e,0,r,i);var s=t.wt_1,a=t.wt_1.length-t.xt_1|0,u=t.xt_1;Jt(s,e,a,0,u),t.wt_1=e,t.xt_1=0,t.yt_1=n}(this)},fo.prototype.zt=function(){if(this.xt_1===this.yt_1)return null;var t=this.wt_1[this.xt_1];return this.wt_1[this.xt_1]=null,this.xt_1=(this.xt_1+1|0)&(this.wt_1.length-1|0),L(t)?t:B()},fo.$metadata$=W("ArrayQueue"),_o.$metadata$=W("OpDescriptor"),$o.prototype.yy=function(){return this.ur_1},$o.prototype.b5=function(){return this.ur_1.b5()},$o.prototype.zy=function(){return this.wr_1},$o.prototype.yr=function(){return!(null==this.xr_1.ko_1)},$o.prototype.az=function(){for(var t=this.xr_1;;)if(t.ko_1!==yo())return N()},$o.prototype.pt=function(){this.az();var t,n=(t=this.xr_1.ko_1)instanceof gn?t:null;null==n||n.cs()},$o.prototype.bs=function(t){for(var n=this.xr_1;;){var e=n.ko_1;if(e!==yo()){if(e instanceof Error){if(!this.xr_1.atomicfu$compareAndSet(e,null))throw Kt(rt("Failed requirement."));return e}var o="Inconsistent state "+ot(e);throw X(rt(o))}if(this.xr_1.atomicfu$compareAndSet(yo(),t))return null}},$o.prototype.as=function(t){for(var n=this.xr_1;;){var e=n.ko_1,o=e;if(G(o,yo())){if(this.xr_1.atomicfu$compareAndSet(yo(),t))return!0}else{if(o instanceof Error)return!0;if(this.xr_1.atomicfu$compareAndSet(e,null))return!1}}},$o.prototype.ls=function(){var t=this.vr_1;return this.vr_1=vo(),t},$o.prototype.is=function(){return this},$o.prototype.z4=function(t){var n=this.ur_1.b5(),e=Mn(t,null,1);if(this.tr_1.nt(n))this.vr_1=e,this.zr_1=jo(),this.tr_1.ot(n,this);else{var o=jo(),r=Kn().ju();if(r.cu())this.vr_1=e,this.zr_1=o,r.au(this);else{r.fu(!0);try{for(this.b5(),this.wr_1,this.ur_1.z4(t),N();r.vt(););}catch(t){if(!(t instanceof Error))throw t;this.dt(t,null)}finally{r.gu(!0)}}}},$o.prototype.ms=function(t,n){t instanceof An&&t.lt_1(n)},$o.prototype.bz=function(t){var n=this.b5().z7(Qn());if(null!=n&&!n.yo()){var e,o=n.vp();return this.ms(t,o),pt(),e=ft(_t(o)),this.z4(e),N(),!0}return!1},$o.prototype.cz=function(t){this.ur_1,this.wr_1,this.ur_1.z4(t),N()},$o.prototype.toString=function(){return"DispatchedContinuation["+this.tr_1+", "+To(this.ur_1)+"]"},$o.$metadata$=W("DispatchedContinuation",[ar,V],void 0,void 0,void 0,xo.prototype),xo.prototype.bt=function(){return this.zr_1},xo.prototype.ms=function(t,n){},xo.prototype.ys=function(t){return null==t||L(t)?t:B()},xo.prototype.at=function(t){var n=t instanceof qn?t:null;return null==n?null:n.dp_1},xo.prototype.ct=function(){N(),N();var t=null;try{var n=this.is(),e=n instanceof $o?n:B(),o=e.ur_1,r=(e.wr_1,o.b5()),i=this.ls(),s=this.at(i),a=null==s&&ko(this.zr_1)?r.z7(Qn()):null;if(null==a||a.yo()){if(null!=s){var u;pt(),u=ft(_t(s)),o.z4(u),N()}else{var c,l=this.ys(i);pt(),c=ft(l),o.z4(c),N()}}else{var h,p=a.vp();this.ms(i,p),pt();var f=ur(p);h=ft(_t(f)),o.z4(h),N()}}catch(n){if(!(n instanceof Error))throw n;t=n}finally{var _;try{pt(),N(),_=ft(N())}catch(t){if(!(t instanceof Error))throw t;pt(),_=ft(_t(t))}var d=_;this.dt(t,lt(d))}},xo.prototype.dt=function(t,n){if(null===t&&null===n)return N();var e=new Yn("Fatal exception in coroutines machinery for "+this+". Please read KDoc to 'handleFatalException' method and report this incident to maintainers",Gt(null==t?n:t));Bn(this.is().b5(),e)},xo.$metadata$=W("DispatchedTask",void 0,void 0,void 0,void 0,rr.prototype),zo.prototype.xo=function(){return this.dz_1},zo.prototype.toString=function(){return"CoroutineScope(coroutineContext="+this.dz_1+")"},zo.$metadata$=W("ContextScope",[Nn]),So.prototype.nq=function(){return!0},So.prototype.ip=function(t){go(Q(this.ir_1),En(t,this.ir_1),null,2)},So.prototype.hp=function(t){this.ir_1.z4(En(t,this.ir_1))},So.$metadata$=W("ScopeCoroutine",[ar],void 0,void 0,void 0,en.prototype),qo.prototype.toString=function(){return"<"+this.ez_1+">"},qo.prototype.fz=function(t){return t===this?null:null==t||L(t)?t:B()},qo.$metadata$=W("Symbol"),Ao.$metadata$=nt("SelectClause0"),Eo.$metadata$=W("CompletionHandlerBase",void 0,void 0,void 0,void 0,sr.prototype),Do.$metadata$=W("CancelHandlerBase"),Lo.prototype.hp=function(t){return this.ir_1.z4(En(t,this.ir_1))},Lo.$metadata$=W("UndispatchedCoroutine",void 0,void 0,void 0,void 0,So.prototype),Uo.prototype.dy=function(){var t=this.cy_1;return null==t?this.by_1:t},Uo.$metadata$=st("Dispatchers"),Wo.prototype.xx=function(){return this.nz_1},Wo.prototype.nt=function(t){return!this.mz_1},Wo.prototype.ot=function(t,n){return this.lz_1.ot(t,n)},Wo.prototype.toString=function(){var t=this.yx();return null==t?this.lz_1.toString():t},Wo.$metadata$=W("JsMainDispatcher",void 0,void 0,void 0,void 0,Ye.prototype),Jo.prototype.ot=function(t,n){!function(){throw Ut("runBlocking event loop is not supported")}()},Jo.$metadata$=W("UnconfinedEventLoop",void 0,void 0,void 0,void 0,Wn.prototype),Ko.prototype.toString=function(){return Dt.prototype.toString.call(this)+"; job="+this.sz_1},Ko.prototype.equals=function(t){return t===this||!!(t instanceof Ko&&t.message==this.message&&G(t.sz_1,this.sz_1))&&G(t.cause,this.cause)},Ko.prototype.hashCode=function(){var t=T(T(Zt(Gt(this.message)),31)+at(this.sz_1)|0,31),n=this.cause,e=null==n?null:at(n);return t+(null==e?0:e)|0},Ko.$metadata$=W("JobCancellationException",void 0,void 0,void 0,void 0,Dt.prototype),Go.prototype.vz=function(){process.nextTick(this.e10_1.b10_1)},Go.$metadata$=st("NodeDispatcher",void 0,void 0,void 0,void 0,Qo.prototype),Xo.prototype.vz=function(){setTimeout(this.e10_1.b10_1,0)},Xo.$metadata$=st("SetTimeoutDispatcher",void 0,void 0,void 0,void 0,Qo.prototype),Zo.prototype.n10=function(){this.c10_1.vz()},Zo.prototype.o10=function(){setTimeout(this.b10_1,0)},Zo.$metadata$=W("ScheduledMessageQueue",void 0,void 0,void 0,void 0,tr.prototype),Qo.prototype.ot=function(t,n){this.e10_1.p10(n)},Qo.$metadata$=W("SetTimeoutBasedDispatcher",[Un],void 0,void 0,void 0,Tn.prototype),tr.prototype.p10=function(t){this.bu(t),this.l10_1||(this.l10_1=!0,this.n10())},tr.prototype.m10=function(){try{var t=this.k10_1,n=0;if(nn?t+r|0:t,c=t>n?n+r|0:(n+e|0)-2|0,l=this.h1s();i=this.h1s().childNodes[u];var h,p=l.removeChild(a(i)),f=this.h1s();h=this.h1s().childNodes[c],f.insertBefore(p,a(h))}while(o (renderComposable.kt:59)"),v(y,e,0),E()&&(I(),s())),s()})),function(t,n){return d.u1b(t,n)})),p;var d;var v,y}(t,n,e)}(a(document.getElementById(t)),null,n,2)},t}.apply(n,o))||(t.exports=r)},261:function(t,n,e){var o,r,i;r=[n,e(744),e(506),e(769)],void 0===(i="function"==typeof(o=function(t,n,e,o){"use strict";var r,i,s,a,u,c,l,h,p,f,_,d,v,y,m,g,$,b,w,x,k,j,C,z,S,q,O,P,M,A,E,I,D,T,B,L,N,F,R,H,U,V,W,J,K,G,Y,X,Z,Q,tt=Math.imul,nt=n.$_$.r4,et=n.$_$.la,ot=(n.$_$.s5,n.$_$.s9),rt=n.$_$.c1,it=n.$_$.t,st=n.$_$.p5,at=n.$_$.sd,ut=n.$_$.nc,ct=n.$_$.kc,lt=n.$_$.h9,ht=n.$_$.fc,pt=n.$_$.pa,ft=n.$_$.w1,_t=e.$_$.d,dt=n.$_$.f9,vt=n.$_$.e1,yt=n.$_$.fd,mt=n.$_$.rd,gt=o.$_$.s,$t=o.$_$.o,bt=o.$_$.i,wt=o.$_$.r,xt=n.$_$.jb,kt=n.$_$.j9,jt=o.$_$.j,Ct=n.$_$.ja,zt=n.$_$.n9,St=n.$_$.q9,qt=n.$_$.ba,Ot=n.$_$.p9,Pt=n.$_$.y4,Mt=o.$_$.q,At=o.$_$.z,Et=n.$_$.da,It=o.$_$.u,Dt=o.$_$.v,Tt=o.$_$.w,Bt=o.$_$.x,Lt=(o.$_$.m,e.$_$.c),Nt=n.$_$.k6,Ft=n.$_$.j6,Rt=e.$_$.a,Ht=n.$_$.qd,Ut=n.$_$.kd,Vt=o.$_$.n,Wt=e.$_$.b,Jt=o.$_$.t,Kt=o.$_$.b,Gt=n.$_$.ya,Yt=n.$_$.o9;function Xt(t,n){return Zt(),n!==t.value&&(t.value=n),function(t,n){Kn(),Un().set(t,n),t instanceof HTMLInputElement&&function(t){var n;if(Kn(),"radio"===t.type){var e=t.name;n=dt(e)>0}else n=!1;if(n){if(!Vn().v2(t.name)){var o=Vn(),r=t.name,i=vt();o.n(r,i)}yt(Vn().b3(t.name)).a(t)}}(t)}(t,n),nt()}function Zt(){i||(i=!0,r=Xt)}function Qt(){s=this,this.l20_1="class",this.m20_1="id",this.n20_1="hidden",this.o20_1="title",this.p20_1="dir",this.q20_1="draggable",this.r20_1="contenteditable",this.s20_1="lang",this.t20_1="tabindex",this.u20_1="spellcheck"}function tn(){}function nn(t,n,e){return function(t,n,e,o){return 0!=(1&n)&&(t=new an),en.call(o,t),o}(t,n,0,Object.create(en.prototype))}function en(t){this.d21_1=t;var n;n=rt(),this.e21_1=n,this.f21_1=new oe;var e;e=it(),this.g21_1=e,this.h21_1=null;var o;o=it(),this.i21_1=o,this.j21_1=8}function on(){a=this,this.s21_1="copy",this.t21_1="cut",this.u21_1="paste",this.v21_1="contextmenu",this.w21_1="click",this.x21_1="dblclick",this.y21_1="focus",this.z21_1="blur",this.a22_1="focusin",this.b22_1="focusout",this.c22_1="keydown",this.d22_1="keyup",this.e22_1="mousedown",this.f22_1="mouseup",this.g22_1="mouseenter",this.h22_1="mouseleave",this.i22_1="mousemove",this.j22_1="mouseout",this.k22_1="mouseover",this.l22_1="wheel",this.m22_1="scroll",this.n22_1="select",this.o22_1="touchcancel",this.p22_1="touchend",this.q22_1="touchmove",this.r22_1="touchstart",this.s22_1="animationcancel",this.t22_1="animationend",this.u22_1="animationiteration",this.v22_1="animationstart",this.w22_1="beforeinput",this.x22_1="input",this.y22_1="change",this.z22_1="invalid",this.a23_1="drag",this.b23_1="drop",this.c23_1="dragstart",this.d23_1="dragend",this.e23_1="dragover",this.f23_1="dragenter",this.g23_1="dragleave",this.h23_1="submit",this.i23_1="reset"}function rn(){return null==a&&new on,a}function sn(){}function an(){var t;t=it(),this.l21_1=t,this.m21_1=8}function un(t,n,e){ht.call(this,t,n),this.i20_1=e}function cn(){l=this,En.call(this,"button"),this.n23_1=0}function ln(){h=this,In.call(this,"checkbox"),this.v23_1=0}function hn(){return null==h&&new ln,h}function pn(){p=this,An.call(this,"color"),this.d24_1=0}function fn(){f=this,An.call(this,"date"),this.k24_1=0}function _n(){_=this,An.call(this,"datetime-local"),this.o24_1=0}function dn(){d=this,An.call(this,"email"),this.s24_1=0}function vn(){v=this,An.call(this,"file"),this.w24_1=0}function yn(){y=this,An.call(this,"hidden"),this.a25_1=0}function mn(){m=this,An.call(this,"month"),this.e25_1=0}function gn(){g=this,Dn.call(this,"number"),this.i25_1=0}function $n(){$=this,An.call(this,"password"),this.p25_1=0}function bn(){b=this,In.call(this,"radio"),this.t25_1=0}function wn(){return null==b&&new bn,b}function xn(){w=this,Dn.call(this,"range"),this.x25_1=0}function kn(){x=this,An.call(this,"search"),this.b26_1=0}function jn(){k=this,En.call(this,"submit"),this.f26_1=0}function Cn(){j=this,An.call(this,"tel"),this.j26_1=0}function zn(){C=this,An.call(this,"text"),this.n26_1=0}function Sn(){return null==C&&new zn,C}function qn(){z=this,An.call(this,"time"),this.r26_1=0}function On(){S=this,An.call(this,"url"),this.v26_1=0}function Pn(){q=this,An.call(this,"week"),this.z26_1=0}function Mn(){return null==q&&new Pn,q}function An(t){Ln.call(this,t),this.g24_1=0}function En(t){Ln.call(this,t),this.q23_1=0}function In(t){Ln.call(this,t),this.y23_1=0}function Dn(t){Ln.call(this,t),this.l25_1=0}function Tn(){O=this}function Bn(){return null==O&&new Tn,O}function Ln(t){Bn(),this.j20_1=t,this.k20_1=0}function Nn(t,n){this.c27_1=t,this.d27_1=n,this.e27_1=this.c27_1,this.f27_1=0}function Fn(t,n,e){Nn.call(this,t,e),this.l27_1=n}function Rn(t,n){Nn.call(this,t,n)}function Hn(t,n){this.q27_1=t,this.r27_1=n,this.s27_1=8}function Un(){return Kn(),P}function Vn(){return Kn(),M}function Wn(t,n,e){Kn();var o,r=n;r.f12(-1867048565),$t()&>(-1867048565,e,-1,"org.jetbrains.compose.web.attributes.builders.DisposeRadioGroupEffect$composable (InternalControlledInputUtils.kt:67)"),bt(null,(o=t,function(t){return new Jn(o.v27(t))}),r,6),$t()&&wt(),r.k12()}function Jn(t){this.u27_1=t}function Kn(){if(A);else{A=!0;var t,n=new WeakMap;P=n,t=rt(),M=t}}function Gn(t){this.w27_1=t,this.x27_1=8}function Yn(t,n){Nn.call(this,t,n)}function Xn(t){rn(),Nn.call(this,"change",t)}function Zn(t){this.i28_1=t,this.j28_1=8}function Qn(){E=this}function te(){return null==E&&new Qn,E}function ne(t,n){this.o28_1=t,this.p28_1=n,this.q28_1=0}function ee(){}function oe(){var t;t=it(),this.u28_1=t;var n;n=it(),this.v28_1=n,this.w28_1=8}function re(){}function ie(t,n){this.z28_1=t,this.a29_1=n,this.b29_1=8}function se(t,n){if(t.f()!==n.f())return!1;var e,o=0;t:if(qt(t,Pt)&&t.h())e=!0;else{for(var r=t.c();r.d();){var i=r.e(),s=o;o=s+1|0;var a=n.g(s);if(i.z28_1!==a.z28_1||pt(i.a29_1)!==pt(a.a29_1)){e=!1;break t}}e=!0}return e}function ae(t,n,e,o,r){var i=o;i=i.o1d(-1594897193),Mt(i,"C(TagElement$composable)P(2)");var s,a,u,c=r;if(0==(14&r)&&(c|=i.g12(t)?4:2),0==(112&r)&&(c|=i.g12(n)?32:16),0==(896&r)&&(c|=i.g12(e)?256:128),146==(731&c)&&i.w1b())i.a18();else{$t()&>(-1594897193,c,-1,"org.jetbrains.compose.web.dom.TagElement$composable (Base.kt:106)");var l=i;l.f12(547886695),Mt(l,"C(remember$composable):Composables.kt#9igjgp");var h,p=l,f=p.h12();if(f===At().j12_1){var _=new le;p.i12(_),h=_}else h=f;var d=h,v=null==d||Et(d)?d:ut();l.k12();var y,m=v,g=i;g.d18(),g.d1d()?g.f1d((a=t,u=m,function(){var t=a.v1n();return u.o29(t),new ue(t)})):g.h1d();var $=It(g),b=nn(null,1);null==n||n(b),y=b.h21_1,Dt($).f12(509942095);var w=Tt(Dt($));Bt(w,b.i21_1,((s=function(t,n){return t.k29(n),nt()}).callableName="updateClasses",s)),Bt(w,b.f21_1,function(){var t=function(t,n){return t.i29(n),nt()};return t.callableName="updateStyleDeclarations",t}());var x=b.r21();Bt(w,x,function(){var t=function(t,n){return t.j29(n),nt()};return t.callableName="updateAttrs",t}());var k=b.d21_1.j23();Bt(w,k,function(){var t=function(t,n){return t.g29(n),nt()};return t.callableName="updateEventListeners",t}()),Bt(w,b.g21_1,function(){var t=function(t,n){return t.h29(n),nt()};return t.callableName="updateProperties",t}()),Dt($).k12(),g.f12(2058660585);var j=g,C=8;if(18==(91&C)&&j.w1b())j.a18();else{var z=e;i.f12(-1128047990),null==z||z(m,j,14&C|112&c>>3),i.k12()}g.k12(),g.i1d(),null==y||(bt(null,function(t,n){return function(e){return t(e,n.p29())}}(y,m),i,6),nt(),nt()),$t()&&wt()}var S=i.p1d();null===S||S.k1e(function(t,n,e,o){return function(r,i){return function(t,n,e,o,r,i){ae(t,n,e,r,1|o)}(t,n,e,o,r),nt()}}(t,n,e,r))}function ue(t){Lt.call(this,t),this.e29_1=t,this.f29_1=Nt()}function ce(){}function le(){he.call(this)}function he(){this.q29_1=0,this.r29_1=8}function pe(){}function fe(t){return Yt("el",1,Gt,(function(t){return fe(t)}),null),t.t29_1.n2()}function _e(t){var n;this.s29_1=t,this.t29_1=Ut((n=this,function(){return document.createElement(n.s29_1)}))}function de(t,n,e){Re();var o=n;o=o.o1d(-363526853),Mt(o,"C(Text$composable)");var r,i=e;if(0==(14&e)&&(i|=o.g12(t)?4:2),2==(11&i)&&o.w1b())o.a18();else{$t()&>(-363526853,e,-1,"org.jetbrains.compose.web.dom.Text$composable (Elements.kt:479)");var s=o;s.f12(547886695),Mt(s,"C(remember$composable):Composables.kt#9igjgp");var a,u=s,c=u.h12();if(c===At().j12_1){var l=Ee;u.i12(l),a=l}else a=c;var h=a,p=null==h||Et(h)?h:ut();s.k12();var f=p,_=o;_.f12(-1846754774),Mt(_,"C(ComposeNode$composable):Composables.kt#9igjgp"),_.s1c()instanceof Wt||Vt(),_.d18(),_.d1d()?_.f1d((r=f,function(){return r()})):_.h1d();var d=Tt(_);Bt(d,t,Ie),_.i1d(),_.k12(),$t()&&wt()}var v,y,m=o.p1d();null===m||m.k1e((v=t,y=e,function(t,n){return function(t,n,e,o){de(t,e,1|n)}(v,y,t),nt()}))}function ve(t,n,e,o,r){Re();var i={_v:t},s={_v:n},a=e;a=a.o1d(-915831286),Mt(a,"C(H3$composable)");var u=o;0!=(1&r)?u|=6:0==(14&o)&&(u|=a.g12(i._v)?4:2),0!=(2&r)?u|=48:0==(112&o)&&(u|=a.g12(s._v)?32:16),18==(91&u)&&a.w1b()?a.a18():(0!=(1&r)&&(i._v=null),0!=(2&r)&&(s._v=null),$t()&>(-915831286,u,-1,"org.jetbrains.compose.web.dom.H3$composable (Elements.kt:539)"),ae((Re(),N),i._v,s._v,a,112&u<<3|896&u<<3),$t()&&wt());var c,l,h,p,f=a.p1d();null===f||f.k1e((c=i,l=s,h=o,p=r,function(t,n){return function(t,n,e,o,r,i){ve(t._v,n._v,r,1|e,o)}(c,l,h,p,t),nt()}))}function ye(t,n,e,o,r){Re();var i={_v:t},s={_v:n},a=e;a=a.o1d(1021009996),Mt(a,"C(Div$composable)");var u=o;0!=(1&r)?u|=6:0==(14&o)&&(u|=a.g12(i._v)?4:2),0!=(2&r)?u|=48:0==(112&o)&&(u|=a.g12(s._v)?32:16),18==(91&u)&&a.w1b()?a.a18():(0!=(1&r)&&(i._v=null),0!=(2&r)&&(s._v=null),$t()&>(1021009996,u,-1,"org.jetbrains.compose.web.dom.Div$composable (Elements.kt:489)"),ae((Re(),D),i._v,s._v,a,112&u<<3|896&u<<3),$t()&&wt());var c,l,h,p,f=a.p1d();null===f||f.k1e((c=i,l=s,h=o,p=r,function(t,n){return function(t,n,e,o,r,i){ye(t._v,n._v,r,1|e,o)}(c,l,h,p,t),nt()}))}function me(t,n,e,o,r,i){Re();var s={_v:t},a={_v:n},u={_v:e},c=o;c=c.o1d(-319539737),Mt(c,"C(Form$composable)");var l=r;if(0!=(1&i)?l|=6:0==(14&r)&&(l|=c.g12(s._v)?4:2),0!=(2&i)?l|=48:0==(112&r)&&(l|=c.g12(a._v)?32:16),0!=(4&i)?l|=384:0==(896&r)&&(l|=c.g12(u._v)?256:128),146==(731&l)&&c.w1b())c.a18();else{0!=(1&i)&&(s._v=null),0!=(2&i)&&(a._v=null),0!=(4&i)&&(u._v=null),$t()&>(-319539737,l,-1,"org.jetbrains.compose.web.dom.Form$composable (Elements.kt:637)");var h=(Re(),K),p=s._v,f=a._v,_=c;_.f12(-1124426577),Mt(_,"C(remember$composable)P(1,2):Composables.kt#9igjgp");var d,v=_,y=!!(_.g12(p)|_.g12(f)),m=v.h12();if(y||m===At().j12_1){var g=De(s,a);v.i12(g),d=g}else d=m;var $=d,b=null==$||Et($)?$:ut();_.k12(),ae(h,b,u._v,c,896&l),$t()&&wt()}var w,x,k,j,C,z=c.p1d();null===z||z.k1e((w=s,x=a,k=u,j=r,C=i,function(t,n){return function(t,n,e,o,r,i,s){me(t._v,n._v,e._v,i,1|o,r)}(w,x,k,j,C,t),nt()}))}function ge(t,n,e,o,r,i){Re();var s={_v:t},a={_v:n},u={_v:e},c=o;c=c.o1d(-493483649),Mt(c,"C(Label$composable)P(2)");var l=r;if(0!=(1&i)?l|=6:0==(14&r)&&(l|=c.g12(s._v)?4:2),0!=(2&i)?l|=48:0==(112&r)&&(l|=c.g12(a._v)?32:16),0!=(4&i)?l|=384:0==(896&r)&&(l|=c.g12(u._v)?256:128),146==(731&l)&&c.w1b())c.a18();else{0!=(1&i)&&(s._v=null),0!=(2&i)&&(a._v=null),0!=(4&i)&&(u._v=null),$t()&>(-493483649,l,-1,"org.jetbrains.compose.web.dom.Label$composable (Elements.kt:833)");var h=(Re(),Z),p=s._v,f=a._v,_=c;_.f12(-1124426577),Mt(_,"C(remember$composable)P(1,2):Composables.kt#9igjgp");var d,v=_,y=!!(_.g12(p)|_.g12(f)),m=v.h12();if(y||m===At().j12_1){var g=Te(s,a);v.i12(g),d=g}else d=m;var $=d,b=null==$||Et($)?$:ut();_.k12(),ae(h,b,u._v,c,896&l),$t()&&wt()}var w,x,k,j,C,z=c.p1d();null===z||z.k1e((w=s,x=a,k=u,j=r,C=i,function(t,n){return function(t,n,e,o,r,i,s){ge(t._v,n._v,e._v,i,1|o,r)}(w,x,k,j,C,t),nt()}))}function $e(t,n,e,o,r){Re();var i={_v:t},s={_v:n},a=e;a=a.o1d(-577256683),Mt(a,"C(TextArea$composable)P(1)");var u,c,l,h,p,f=o;if(0!=(1&r)?f|=6:0==(14&o)&&(f|=a.g12(i._v)?4:2),0!=(2&r)?f|=48:0==(112&o)&&(f|=a.g12(s._v)?32:16),18==(91&f)&&a.w1b())a.a18();else{0!=(1&r)&&(i._v=null),0!=(2&r)&&(s._v=null),$t()&>(-577256683,o,-1,"org.jetbrains.compose.web.dom.TextArea$composable (Elements.kt:729)");var _=a;_.f12(547886695),Mt(_,"C(remember$composable):Composables.kt#9igjgp");var d,v=_,y=v.h12();if(y===At().j12_1){var m=!(null==i._v);v.i12(m),d=m}else d=y;var g=d,$=null==g||Et(g)?g:ut();_.k12();var b=$,w=a;w.f12(547886695),Mt(w,"C(remember$composable):Composables.kt#9igjgp");var x,k=w,j=k.h12();if(j===At().j12_1){var C=Jt(0,null,2,null);k.i12(C),x=C}else x=j;var z=x,S=null==z||Et(z)?z:ut();w.k12();var q=S,O=(Re(),X),P=[q,s._v,b,i._v],M=a;M.f12(-1603429786),Mt(M,"C(remember$composable)P(1):Composables.kt#9igjgp");for(var A=!1,E=P,I=0,D=E.length;I (Elements.kt:754)");var a=t.n2();bt(a,(r=n,function(t){return n=r.v27(t),Kn(),Un().has(n)&&(n.value=mt(Un().get(n))),new Be;var n}),i,0),$t()&&(wt(),nt())}return nt()}}(q)),J=a;J.f12(-838505973),Mt(J,"C(remember$composable)P(1):Composables.kt#9igjgp");var K,G=J,Y=J.g12(W),Z=G.h12();if(Y||Z===At().j12_1){var Q=(u=W,function(t,n,e){return u.o1y(t,n,e)});G.i12(Q),K=Q}else K=Z;var tt=K,et=null==tt||Et(tt)?tt:ut();J.k12(),ae(O,V,et,a,384),$t()&&wt()}var ot=a.p1d();null===ot||ot.k1e(function(t,n,e,o){return function(r,i){return function(t,n,e,o,r,i){$e(t._v,n._v,r,1|e,o)}(t,n,e,o,r),nt()}}(i,s,o,r))}function be(t,n,e,o,r){Re();var i={_v:t},s={_v:n},a=e;a=a.o1d(-767970749),Mt(a,"C(Button$composable)");var u=o;0!=(1&r)?u|=6:0==(14&o)&&(u|=a.g12(i._v)?4:2),0!=(2&r)?u|=48:0==(112&o)&&(u|=a.g12(s._v)?32:16),18==(91&u)&&a.w1b()?a.a18():(0!=(1&r)&&(i._v=null),0!=(2&r)&&(s._v=null),$t()&>(-767970749,u,-1,"org.jetbrains.compose.web.dom.Button$composable (Elements.kt:521)"),ae((Re(),B),i._v,s._v,a,112&u<<3|896&u<<3),$t()&&wt());var c,l,h,p,f=a.p1d();null===f||f.k1e((c=i,l=s,h=o,p=r,function(t,n){return function(t,n,e,o,r,i){be(t._v,n._v,r,1|e,o)}(c,l,h,p,t),nt()}))}function we(t,n,e,o){Re();var r={_v:t},i=n;i=i.o1d(1126514281),Mt(i,"C(Br$composable)");var s=e;0!=(1&o)?s|=6:0==(14&e)&&(s|=i.g12(r._v)?4:2),2==(11&s)&&i.w1b()?i.a18():(0!=(1&o)&&(r._v=null),$t()&>(1126514281,s,-1,"org.jetbrains.compose.web.dom.Br$composable (Elements.kt:599)"),ae((Re(),V),r._v,null,i,384|112&s<<3),$t()&&wt());var a,u,c,l=i.p1d();null===l||l.k1e((a=r,u=e,c=o,function(t,n){return function(t,n,e,o,r){we(t._v,o,1|n,e)}(a,u,c,t),nt()}))}function xe(t,n,e,o,r){Re();var i={_v:t},s={_v:n},a=e;a=a.o1d(-2140946851),Mt(a,"C(Canvas$composable)");var u=o;0!=(1&r)?u|=6:0==(14&o)&&(u|=a.g12(i._v)?4:2),0!=(2&r)?u|=48:0==(112&o)&&(u|=a.g12(s._v)?32:16),18==(91&u)&&a.w1b()?a.a18():(0!=(1&r)&&(i._v=null),0!=(2&r)&&(s._v=null),$t()&>(-2140946851,u,-1,"org.jetbrains.compose.web.dom.Canvas$composable (Elements.kt:430)"),ae((Re(),I),i._v,s._v,a,112&u<<3|896&u<<3),$t()&&wt());var c,l,h,p,f=a.p1d();null===f||f.k1e((c=i,l=s,h=o,p=r,function(t,n){return function(t,n,e,o,r,i){xe(t._v,n._v,r,1|e,o)}(c,l,h,p,t),nt()}))}function ke(t,n,e,o){Re();var r=e;r=r.o1d(-1013116589),Mt(r,"C(Input$composable)P(1)");var i,s,a,u,c=o;if(0==(14&o)&&(c|=r.g12(t)?4:2),0==(112&o)&&(c|=r.g12(n)?32:16),18==(91&c)&&r.w1b())r.a18();else{$t()&>(-1013116589,c,-1,"org.jetbrains.compose.web.dom.Input$composable (Elements.kt:1054)");var l=r;l.f12(547886695),Mt(l,"C(remember$composable):Composables.kt#9igjgp");var h,p=l,f=p.h12();if(f===At().j12_1){var _=Jt(0,null,2,null);p.i12(_),h=_}else h=f;var d=h,v=null==d||Et(d)?d:ut();l.k12();var y=v,m=(Re(),T),g=r;g.f12(-1058148781),Mt(g,"C(remember$composable)P(1,2,3):Composables.kt#9igjgp");var $,b=g,w=!!(!!(g.g12(t)|g.g12(y))|g.g12(n)),x=b.h12();if(w||x===At().j12_1){var k=(s=t,a=n,u=y,function(t){var n=new Hn(s,t);return function(t,n){Zt(),t.f20("type",n.j20_1)}(n,s),n.t27(function(t){return function(n){return t.ky(t.n2()+1|0),nt()}}(u)),a(n),nt()});b.i12(k),$=k}else $=x;var j=$,C=null==j||Et(j)?j:ut();g.k12();var z=C,S=Kt(r,558133459,!0,function(t,n){return function(e,o,r){var i,s=o,a=r;if(0==(14&r)&&(a|=s.g12(e)?4:2,nt()),18==(91&a)&&s.w1b())s.a18(),nt();else{$t()&>(558133459,a,-1,"org.jetbrains.compose.web.dom.Input$composable. (Elements.kt:1073)"),s.f12(-1270925487),kt(t,wn())&&Wn(e,s,14&a),s.k12();var u=n.n2();bt(u,(i=e,function(t){return function(t){Kn();var n=Bn().b27(t.type);if(Un().has(t)){if(kt(n,wn())){var e=Vn().b3(t.name);if(null==e);else for(var o=e.c();o.d();){var r=o.e();r.checked=xt(mt(Un().get(r)))}return t.checked=xt(mt(Un().get(t))),nt()}kt(n,hn())?t.checked=xt(mt(Un().get(t))):t.value=mt(Un().get(t))}}(i.v27(t)),new Le}),s,0),$t()&&(wt(),nt())}return nt()}}(t,y)),q=r;q.f12(-838505973),Mt(q,"C(remember$composable)P(1):Composables.kt#9igjgp");var O,P=q,M=q.g12(S),A=P.h12();if(M||A===At().j12_1){var E=(i=S,function(t,n,e){return i.o1y(t,n,e)});P.i12(E),O=E}else O=A;var I=O,D=null==I||Et(I)?I:ut();q.k12(),ae(m,z,D,r,384),$t()&&wt()}var B=r.p1d();null===B||B.k1e(function(t,n,e){return function(o,r){return function(t,n,e,o,r){ke(t,n,o,1|e)}(t,n,e,o),nt()}}(t,n,o))}function je(t,n,e,o,r){Re();var i={_v:t},s={_v:n},a=e;a=a.o1d(1065330793),Mt(a,"C(H4$composable)");var u=o;0!=(1&r)?u|=6:0==(14&o)&&(u|=a.g12(i._v)?4:2),0!=(2&r)?u|=48:0==(112&o)&&(u|=a.g12(s._v)?32:16),18==(91&u)&&a.w1b()?a.a18():(0!=(1&r)&&(i._v=null),0!=(2&r)&&(s._v=null),$t()&>(1065330793,u,-1,"org.jetbrains.compose.web.dom.H4$composable (Elements.kt:545)"),ae((Re(),F),i._v,s._v,a,112&u<<3|896&u<<3),$t()&&wt());var c,l,h,p,f=a.p1d();null===f||f.k1e((c=i,l=s,h=o,p=r,function(t,n){return function(t,n,e,o,r,i){je(t._v,n._v,r,1|e,o)}(c,l,h,p,t),nt()}))}function Ce(t,n,e,o,r,i){Re();var s={_v:t},a={_v:n},u={_v:e},c=o;c=c.o1d(-140298183),Mt(c,"C(Select$composable)P(!1,2)");var l=r;if(0!=(1&i)?l|=6:0==(14&r)&&(l|=c.g12(s._v)?4:2),0!=(2&i)?l|=48:0==(112&r)&&(l|=c.k1d(a._v)?32:16),0!=(4&i)?l|=384:0==(896&r)&&(l|=c.g12(u._v)?256:128),146==(731&l)&&c.w1b())c.a18();else{0!=(1&i)&&(s._v=null),0!=(2&i)&&(a._v=!1),0!=(4&i)&&(u._v=null),$t()&>(-140298183,l,-1,"org.jetbrains.compose.web.dom.Select$composable (Elements.kt:653)");var h=(Re(),G),p=a._v,f=s._v,_=c;_.f12(-1124426577),Mt(_,"C(remember$composable)P(1,2):Composables.kt#9igjgp");var d,v=_,y=!!(_.g12(p)|_.g12(f)),m=v.h12();if(y||m===At().j12_1){var g=Ne(a,s);v.i12(g),d=g}else d=m;var $=d,b=null==$||Et($)?$:ut();_.k12(),ae(h,b,u._v,c,896&l),$t()&&wt()}var w,x,k,j,C,z=c.p1d();null===z||z.k1e((w=s,x=a,k=u,j=r,C=i,function(t,n){return function(t,n,e,o,r,i,s){Ce(t._v,n._v,e._v,i,1|o,r)}(w,x,k,j,C,t),nt()}))}function ze(t,n,e,o,r,i){Re();var s={_v:n},a={_v:e},u=o;u=u.o1d(1780967894),Mt(u,"C(Option$composable)P(2)");var c=r;if(0!=(1&i)?c|=6:0==(14&r)&&(c|=u.g12(t)?4:2),0!=(2&i)?c|=48:0==(112&r)&&(c|=u.g12(s._v)?32:16),0!=(4&i)?c|=384:0==(896&r)&&(c|=u.g12(a._v)?256:128),146==(731&c)&&u.w1b())u.a18();else{0!=(2&i)&&(s._v=null),0!=(4&i)&&(a._v=null),$t()&>(1780967894,c,-1,"org.jetbrains.compose.web.dom.Option$composable (Elements.kt:669)");var l=(Re(),Y),h=s._v,p=u;p.f12(-1124426577),Mt(p,"C(remember$composable)P(1,2):Composables.kt#9igjgp");var f,_=p,d=!!(p.g12(t)|p.g12(h)),v=_.h12();if(d||v===At().j12_1){var y=Fe(t,s);_.i12(y),f=y}else f=v;var m=f,g=null==m||Et(m)?m:ut();p.k12(),ae(l,g,a._v,u,896&c),$t()&&wt()}var $,b,w,x,k,j=u.p1d();null===j||j.k1e(($=t,b=s,w=a,x=r,k=i,function(t,n){return function(t,n,e,o,r,i,s){ze(t,n._v,e._v,i,1|o,r)}($,b,w,x,k,t),nt()}))}function Se(t,n,e,o,r){Re();var i={_v:t},s={_v:n},a=e;a=a.o1d(-583188148),Mt(a,"C(H1$composable)");var u=o;0!=(1&r)?u|=6:0==(14&o)&&(u|=a.g12(i._v)?4:2),0!=(2&r)?u|=48:0==(112&o)&&(u|=a.g12(s._v)?32:16),18==(91&u)&&a.w1b()?a.a18():(0!=(1&r)&&(i._v=null),0!=(2&r)&&(s._v=null),$t()&>(-583188148,u,-1,"org.jetbrains.compose.web.dom.H1$composable (Elements.kt:527)"),ae((Re(),L),i._v,s._v,a,112&u<<3|896&u<<3),$t()&&wt());var c,l,h,p,f=a.p1d();null===f||f.k1e((c=i,l=s,h=o,p=r,function(t,n){return function(t,n,e,o,r,i){Se(t._v,n._v,r,1|e,o)}(c,l,h,p,t),nt()}))}function qe(t,n,e,o,r){Re();var i={_v:t},s={_v:n},a=e;a=a.o1d(-100692211),Mt(a,"C(P$composable)");var u=o;0!=(1&r)?u|=6:0==(14&o)&&(u|=a.g12(i._v)?4:2),0!=(2&r)?u|=48:0==(112&o)&&(u|=a.g12(s._v)?32:16),18==(91&u)&&a.w1b()?a.a18():(0!=(1&r)&&(i._v=null),0!=(2&r)&&(s._v=null),$t()&>(-100692211,u,-1,"org.jetbrains.compose.web.dom.P$composable (Elements.kt:563)"),ae((Re(),R),i._v,s._v,a,112&u<<3|896&u<<3),$t()&&wt());var c,l,h,p,f=a.p1d();null===f||f.k1e((c=i,l=s,h=o,p=r,function(t,n){return function(t,n,e,o,r,i){qe(t._v,n._v,r,1|e,o)}(c,l,h,p,t),nt()}))}function Oe(t,n,e,o,r){Re();var i={_v:t},s={_v:n},a=e;a=a.o1d(-300232938),Mt(a,"C(Small$composable)");var u=o;0!=(1&r)?u|=6:0==(14&o)&&(u|=a.g12(i._v)?4:2),0!=(2&r)?u|=48:0==(112&o)&&(u|=a.g12(s._v)?32:16),18==(91&u)&&a.w1b()?a.a18():(0!=(1&r)&&(i._v=null),0!=(2&r)&&(s._v=null),$t()&>(-300232938,u,-1,"org.jetbrains.compose.web.dom.Small$composable (Elements.kt:587)"),ae((Re(),H),i._v,s._v,a,112&u<<3|896&u<<3),$t()&&wt());var c,l,h,p,f=a.p1d();null===f||f.k1e((c=i,l=s,h=o,p=r,function(t,n){return function(t,n,e,o,r,i){Oe(t._v,n._v,r,1|e,o)}(c,l,h,p,t),nt()}))}function Pe(t,n,e,o,r){Re();var i={_v:t},s={_v:n},a=e;a=a.o1d(-114341698),Mt(a,"C(Ul$composable)");var u=o;0!=(1&r)?u|=6:0==(14&o)&&(u|=a.g12(i._v)?4:2),0!=(2&r)?u|=48:0==(112&o)&&(u|=a.g12(s._v)?32:16),18==(91&u)&&a.w1b()?a.a18():(0!=(1&r)&&(i._v=null),0!=(2&r)&&(s._v=null),$t()&>(-114341698,u,-1,"org.jetbrains.compose.web.dom.Ul$composable (Elements.kt:603)"),ae((Re(),W),i._v,s._v,a,112&u<<3|896&u<<3),$t()&&wt());var c,l,h,p,f=a.p1d();null===f||f.k1e((c=i,l=s,h=o,p=r,function(t,n){return function(t,n,e,o,r,i){Pe(t._v,n._v,r,1|e,o)}(c,l,h,p,t),nt()}))}function Me(t,n,e,o,r){Re();var i={_v:t},s={_v:n},a=e;a=a.o1d(-456299496),Mt(a,"C(Li$composable)");var u=o;0!=(1&r)?u|=6:0==(14&o)&&(u|=a.g12(i._v)?4:2),0!=(2&r)?u|=48:0==(112&o)&&(u|=a.g12(s._v)?32:16),18==(91&u)&&a.w1b()?a.a18():(0!=(1&r)&&(i._v=null),0!=(2&r)&&(s._v=null),$t()&>(-456299496,u,-1,"org.jetbrains.compose.web.dom.Li$composable (Elements.kt:615)"),ae((Re(),J),i._v,s._v,a,112&u<<3|896&u<<3),$t()&&wt());var c,l,h,p,f=a.p1d();null===f||f.k1e((c=i,l=s,h=o,p=r,function(t,n){return function(t,n,e,o,r,i){Me(t._v,n._v,r,1|e,o)}(c,l,h,p,t),nt()}))}function Ae(t,n,e,o,r){Re();var i={_v:t},s={_v:n},a=e;a=a.o1d(-155327957),Mt(a,"C(Span$composable)");var u=o;0!=(1&r)?u|=6:0==(14&o)&&(u|=a.g12(i._v)?4:2),0!=(2&r)?u|=48:0==(112&o)&&(u|=a.g12(s._v)?32:16),18==(91&u)&&a.w1b()?a.a18():(0!=(1&r)&&(i._v=null),0!=(2&r)&&(s._v=null),$t()&>(-155327957,u,-1,"org.jetbrains.compose.web.dom.Span$composable (Elements.kt:593)"),ae((Re(),U),i._v,s._v,a,112&u<<3|896&u<<3),$t()&&wt());var c,l,h,p,f=a.p1d();null===f||f.k1e((c=i,l=s,h=o,p=r,function(t,n){return function(t,n,e,o,r,i){Ae(t._v,n._v,r,1|e,o)}(c,l,h,p,t),nt()}))}function Ee(){return Re(),new Lt(document.createTextNode(""))}function Ie(t,n){Re();var e=t.h1s();return(e instanceof Text?e:ut()).data=n,nt()}function De(t,n){return function(e){var o=t._v;return null==o||0===dt(o)||(function(t,n){Zt(),t.f20("action",n)}(e,t._v),nt()),null!=n._v&&n._v(e),nt()}}function Te(t,n){return function(e){return null!=t._v&&(function(t,n){Zt(),t.f20("for",n)}(e,t._v),nt()),null!=n._v&&n._v(e),nt()}}function Be(){}function Le(){}function Ne(t,n){return function(e){return t._v&&(o=e,Zt(),o.f20("multiple",""),nt()),null!=n._v&&n._v(new Gn(e)),nt();var o}}function Fe(t,n){return function(e){return function(t,n){Zt(),t.f20("value",n)}(e,t),null!=n._v&&n._v(e),nt()}}function Re(){Q||(Q=!0,new _e("address"),new _e("article"),new _e("aside"),new _e("header"),new _e("area"),new _e("audio"),new _e("map"),new _e("track"),new _e("video"),new _e("datalist"),new _e("fieldset"),new _e("legend"),new _e("meter"),new _e("output"),new _e("progress"),new _e("embed"),new _e("iframe"),new _e("object"),new _e("param"),new _e("picture"),new _e("source"),I=new _e("canvas"),new _e("dl"),new _e("dt"),new _e("dd"),D=new _e("div"),new _e("a"),T=new _e("input"),B=new _e("button"),L=new _e("h1"),new _e("h2"),N=new _e("h3"),F=new _e("h4"),new _e("h5"),new _e("h6"),R=new _e("p"),new _e("em"),new _e("i"),new _e("b"),H=new _e("small"),U=new _e("span"),V=new _e("br"),W=new _e("ul"),new _e("ol"),J=new _e("li"),new _e("img"),K=new _e("form"),G=new _e("select"),Y=new _e("option"),new _e("optgroup"),new _e("section"),X=new _e("textarea"),new _e("nav"),new _e("pre"),new _e("code"),new _e("main"),new _e("footer"),new _e("hr"),Z=new _e("label"),new _e("table"),new _e("caption"),new _e("col"),new _e("colgroup"),new _e("tr"),new _e("thead"),new _e("th"),new _e("td"),new _e("tbody"),new _e("tfoot"),new _e("style"))}function He(t,n){Ue.call(this,n),this.g2a_1=t,this.h2a_1=0}function Ue(t){this.i2a_1=t;var n;n=this.i2a_1.target,this.j2a_1=n,this.k2a_1=this.i2a_1.bubbles,this.l2a_1=this.i2a_1.cancelable,this.m2a_1=this.i2a_1.composed,this.n2a_1=this.i2a_1.currentTarget,this.o2a_1=this.i2a_1.eventPhase,this.p2a_1=this.i2a_1.defaultPrevented,this.q2a_1=this.i2a_1.timeStamp,this.r2a_1=this.i2a_1.type,this.s2a_1=this.i2a_1.isTrusted,this.t2a_1=8}function Ve(t,n){Ue.call(this,n),this.g2b_1=t;var e,o=n.data;e=null==o?null:o,this.h2b_1=e;var r,i=n.dataTransfer;r=null==i?null:i,this.i2b_1=r;var s,a=n.inputType;s=null==a?null:a,this.j2b_1=s;var u=n.isComposing,c=null==u?null:u;this.k2b_1=null!=c&&c,this.l2b_1=8}function We(t){Ue.call(this,t),this.y2b_1=t,this.z2b_1=t.altKey,this.a2c_1=t.button,this.b2c_1=t.buttons,this.c2c_1=t.clientX,this.d2c_1=t.clientY,this.e2c_1=t.ctrlKey,this.f2c_1=t.metaKey;var n=t.movementX,e=null!=n&&"number"==typeof n?n:null;this.g2c_1=null==e?0:e;var o=t.movementY,r=null!=o&&"number"==typeof o?o:null;this.h2c_1=null==r?0:r,this.i2c_1=t.offsetX,this.j2c_1=t.offsetY,this.k2c_1=t.pageX,this.l2c_1=t.pageY,this.m2c_1=t.region,this.n2c_1=t.relatedTarget,this.o2c_1=t.screenX,this.p2c_1=t.screenY,this.q2c_1=t.shiftKey,this.r2c_1=t.x,this.s2c_1=t.y,this.t2c_1=8}return un.prototype=Object.create(ht.prototype),un.prototype.constructor=un,En.prototype=Object.create(Ln.prototype),En.prototype.constructor=En,cn.prototype=Object.create(En.prototype),cn.prototype.constructor=cn,In.prototype=Object.create(Ln.prototype),In.prototype.constructor=In,ln.prototype=Object.create(In.prototype),ln.prototype.constructor=ln,An.prototype=Object.create(Ln.prototype),An.prototype.constructor=An,pn.prototype=Object.create(An.prototype),pn.prototype.constructor=pn,fn.prototype=Object.create(An.prototype),fn.prototype.constructor=fn,_n.prototype=Object.create(An.prototype),_n.prototype.constructor=_n,dn.prototype=Object.create(An.prototype),dn.prototype.constructor=dn,vn.prototype=Object.create(An.prototype),vn.prototype.constructor=vn,yn.prototype=Object.create(An.prototype),yn.prototype.constructor=yn,mn.prototype=Object.create(An.prototype),mn.prototype.constructor=mn,Dn.prototype=Object.create(Ln.prototype),Dn.prototype.constructor=Dn,gn.prototype=Object.create(Dn.prototype),gn.prototype.constructor=gn,$n.prototype=Object.create(An.prototype),$n.prototype.constructor=$n,bn.prototype=Object.create(In.prototype),bn.prototype.constructor=bn,xn.prototype=Object.create(Dn.prototype),xn.prototype.constructor=xn,kn.prototype=Object.create(An.prototype),kn.prototype.constructor=kn,jn.prototype=Object.create(En.prototype),jn.prototype.constructor=jn,Cn.prototype=Object.create(An.prototype),Cn.prototype.constructor=Cn,zn.prototype=Object.create(An.prototype),zn.prototype.constructor=zn,qn.prototype=Object.create(An.prototype),qn.prototype.constructor=qn,On.prototype=Object.create(An.prototype),On.prototype.constructor=On,Pn.prototype=Object.create(An.prototype),Pn.prototype.constructor=Pn,Fn.prototype=Object.create(Nn.prototype),Fn.prototype.constructor=Fn,Rn.prototype=Object.create(Nn.prototype),Rn.prototype.constructor=Rn,Yn.prototype=Object.create(Nn.prototype),Yn.prototype.constructor=Yn,Xn.prototype=Object.create(Nn.prototype),Xn.prototype.constructor=Xn,ue.prototype=Object.create(Lt.prototype),ue.prototype.constructor=ue,le.prototype=Object.create(he.prototype),le.prototype.constructor=le,He.prototype=Object.create(Ue.prototype),He.prototype.constructor=He,Ve.prototype=Object.create(Ue.prototype),Ve.prototype.constructor=Ve,We.prototype=Object.create(Ue.prototype),We.prototype.constructor=We,Qt.$metadata$=et("Companion"),tn.$metadata$=ot("AttrsScope",[sn]),en.prototype.k21=function(){return this.d21_1},en.prototype.b21=function(t){this.d21_1.b21(t)},en.prototype.c21=function(t){this.d21_1.c21(t)},en.prototype.a21=function(t){this.d21_1.a21(t)},en.prototype.n21=function(){return this.f21_1},en.prototype.o21=function(){return this.g21_1},en.prototype.p21=function(){return this.h21_1},en.prototype.q21=function(){return this.i21_1},en.prototype.w20=function(t){this.i21_1.k1(t)},en.prototype.x20=function(t){st(this.i21_1,t)},en.prototype.v20=function(t){t(this.f21_1)},en.prototype.f20=function(t,n){return this.e21_1.n(t,n),this},en.prototype.z20=function(t,n){var e=at(t,n);this.g21_1.a(e instanceof ct?e:ut())},en.prototype.r21=function(){return this.e21_1},en.$metadata$=lt("AttrsScopeBuilder",[tn,sn]),on.$metadata$=et("Companion"),sn.$metadata$=ot("EventsListenerScope"),an.prototype.a21=function(t){this.l21_1.a(t)},an.prototype.j23=function(){return this.l21_1},an.$metadata$=lt("EventsListenerScopeBuilder",[sn]),un.$metadata$=lt("ButtonType",void 0,void 0,void 0,void 0,ht.prototype),cn.$metadata$=et("Button",void 0,void 0,void 0,void 0,En.prototype),ln.$metadata$=et("Checkbox",void 0,void 0,void 0,void 0,In.prototype),pn.$metadata$=et("Color",void 0,void 0,void 0,void 0,An.prototype),fn.$metadata$=et("Date",void 0,void 0,void 0,void 0,An.prototype),_n.$metadata$=et("DateTimeLocal",void 0,void 0,void 0,void 0,An.prototype),dn.$metadata$=et("Email",void 0,void 0,void 0,void 0,An.prototype),vn.$metadata$=et("File",void 0,void 0,void 0,void 0,An.prototype),yn.$metadata$=et("Hidden",void 0,void 0,void 0,void 0,An.prototype),mn.$metadata$=et("Month",void 0,void 0,void 0,void 0,An.prototype),gn.$metadata$=et("Number",void 0,void 0,void 0,void 0,Dn.prototype),$n.$metadata$=et("Password",void 0,void 0,void 0,void 0,An.prototype),bn.$metadata$=et("Radio",void 0,void 0,void 0,void 0,In.prototype),xn.$metadata$=et("Range",void 0,void 0,void 0,void 0,Dn.prototype),kn.$metadata$=et("Search",void 0,void 0,void 0,void 0,An.prototype),jn.$metadata$=et("Submit",void 0,void 0,void 0,void 0,En.prototype),Cn.$metadata$=et("Tel",void 0,void 0,void 0,void 0,An.prototype),zn.$metadata$=et("Text",void 0,void 0,void 0,void 0,An.prototype),qn.$metadata$=et("Time",void 0,void 0,void 0,void 0,An.prototype),On.$metadata$=et("Url",void 0,void 0,void 0,void 0,An.prototype),Pn.$metadata$=et("Week",void 0,void 0,void 0,void 0,An.prototype),An.prototype.z23=function(t){return Mn().a27(t)},An.$metadata$=lt("InputTypeWithStringValue",void 0,void 0,void 0,void 0,Ln.prototype),En.prototype.r23=function(t){return nt()},En.prototype.z23=function(t){return this.r23(t),nt()},En.$metadata$=lt("InputTypeWithUnitValue",void 0,void 0,void 0,void 0,Ln.prototype),In.prototype.z23=function(t){var n,e,o=t.target,r=null==(n=null==o?null:o)?null:n.checked;return null!=(e=null==r?null:r)&&e},In.$metadata$=lt("InputTypeCheckedValue",void 0,void 0,void 0,void 0,Ln.prototype),Dn.prototype.z23=function(t){var n,e=t.target,o=null==(n=null==e?null:e)?null:n.valueAsNumber;return null==o?null:o},Dn.$metadata$=lt("InputTypeNumberValue",void 0,void 0,void 0,void 0,Ln.prototype),Tn.prototype.b27=function(t){var n;switch(t){case"button":null==l&&new cn,n=l;break;case"checkbox":n=hn();break;case"color":null==p&&new pn,n=p;break;case"date":null==f&&new fn,n=f;break;case"datetime-local":null==_&&new _n,n=_;break;case"email":null==d&&new dn,n=d;break;case"file":null==v&&new vn,n=v;break;case"hidden":null==y&&new yn,n=y;break;case"month":null==m&&new mn,n=m;break;case"number":null==g&&new gn,n=g;break;case"password":null==$&&new $n,n=$;break;case"radio":n=wn();break;case"range":null==w&&new xn,n=w;break;case"search":null==x&&new kn,n=x;break;case"submit":null==k&&new jn,n=k;break;case"tel":null==j&&new Cn,n=j;break;case"text":n=Sn();break;case"time":null==z&&new qn,n=z;break;case"url":null==S&&new On,n=S;break;case"week":n=Mn();break;default:throw ft(pt("fromString got unknown type - "+t))}return n},Tn.$metadata$=et("Companion"),Ln.prototype.a27=function(t){var n,e,o=t.target,r=null==(n=null==o?null:o)?null:n.value;return null==(e=null==r?null:r)?"":e},Ln.$metadata$=lt("InputType"),Nn.prototype.z1y=function(){return this.e27_1},Nn.prototype.g27=function(t){var n;n=new Ue(t),this.d27_1(n)},Nn.prototype.handleEvent=function(t){return this.g27(t)},Nn.$metadata$=lt("SyntheticEventListener",[_t]),Fn.prototype.g27=function(t){var n=this.l27_1.z23(t);this.d27_1(new Ve(n,t))},Fn.prototype.handleEvent=function(t){return this.g27(t)},Fn.$metadata$=lt("InputEventListener",void 0,void 0,void 0,void 0,Nn.prototype),Rn.prototype.g27=function(t){var n;n=t,this.d27_1(new We(n))},Rn.prototype.handleEvent=function(t){return this.g27(t)},Rn.$metadata$=lt("MouseEventListener",void 0,void 0,void 0,void 0,Nn.prototype),Hn.prototype.f20=function(t,n){return this.r27_1.f20(t,n)},Hn.prototype.x20=function(t){this.r27_1.x20(t)},Hn.prototype.w20=function(t){this.r27_1.w20(t)},Hn.prototype.y20=function(t){return this.r27_1.y20(t)},Hn.prototype.b21=function(t){this.r27_1.b21(t)},Hn.prototype.c21=function(t){this.r27_1.c21(t)},Hn.prototype.z20=function(t,n){this.r27_1.z20(t,n)},Hn.prototype.a21=function(t){this.r27_1.a21(t)},Hn.prototype.v20=function(t){this.r27_1.v20(t)},Hn.prototype.t27=function(t){rn(),this.a21(new Fn("input",this.q27_1,t))},Hn.$metadata$=lt("InputAttrsScope",[tn]),Jn.prototype.ks=function(){var t=Vn().b3(this.u27_1.name);null==t||t.kf(this.u27_1);var n=Vn().b3(this.u27_1.name);!0===(null==n?null:n.h())&&Vn().pg(this.u27_1.name)},Jn.$metadata$=lt(void 0,[jt]),Gn.prototype.f20=function(t,n){return this.w27_1.f20(t,n)},Gn.prototype.x20=function(t){this.w27_1.x20(t)},Gn.prototype.w20=function(t){this.w27_1.w20(t)},Gn.prototype.y20=function(t){return this.w27_1.y20(t)},Gn.prototype.b21=function(t){this.w27_1.b21(t)},Gn.prototype.c21=function(t){this.w27_1.c21(t)},Gn.prototype.z20=function(t,n){this.w27_1.z20(t,n)},Gn.prototype.a21=function(t){this.w27_1.a21(t)},Gn.prototype.v20=function(t){this.w27_1.v20(t)},Gn.prototype.y27=function(t){rn(),this.a21(new Yn("input",t))},Gn.prototype.z27=function(t){this.a21(new Xn(t))},Gn.$metadata$=lt("SelectAttrsScope",[tn]),Yn.prototype.g27=function(t){var n=t.target,e=(null==n?null:n).value,o=null==e?null:pt(e);this.d27_1(new Ve(o,t))},Yn.prototype.handleEvent=function(t){return this.g27(t)},Yn.$metadata$=lt("SelectInputEventListener",void 0,void 0,void 0,void 0,Nn.prototype),Xn.prototype.g27=function(t){var n=t.target,e=(null==n?null:n).value,o=null==e?null:pt(e);this.d27_1(new He(o,t))},Xn.prototype.handleEvent=function(t){return this.g27(t)},Xn.$metadata$=lt("SelectChangeEventListener",void 0,void 0,void 0,void 0,Nn.prototype),Zn.prototype.f20=function(t,n){return this.i28_1.f20(t,n)},Zn.prototype.x20=function(t){this.i28_1.x20(t)},Zn.prototype.w20=function(t){this.i28_1.w20(t)},Zn.prototype.y20=function(t){return this.i28_1.y20(t)},Zn.prototype.b21=function(t){this.i28_1.b21(t)},Zn.prototype.c21=function(t){this.i28_1.c21(t)},Zn.prototype.z20=function(t,n){this.i28_1.z20(t,n)},Zn.prototype.a21=function(t){this.i28_1.a21(t)},Zn.prototype.v20=function(t){this.i28_1.v20(t)},Zn.prototype.k28=function(t){return this.z20((Zt(),r),t),this},Zn.prototype.l28=function(t){rn(),this.a21(new Fn("input",Sn(),t))},Zn.$metadata$=lt("TextAreaAttrsScope",[tn]),Qn.prototype.m28=function(){return"%"},Qn.prototype.n28=function(){return"px"},Qn.$metadata$=et("Companion"),ne.prototype.n2=function(){return this.o28_1},ne.prototype.r28=function(){return this.p28_1},ne.prototype.toString=function(){return""+this.o28_1+this.p28_1},ne.prototype.hashCode=function(){var t=zt(this.o28_1);return tt(t,31)+St(this.p28_1)|0},ne.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof ne))return!1;var n=t instanceof ne?t:ut();return!!kt(this.o28_1,n.o28_1)&&!!kt(this.p28_1,n.p28_1)},ne.$metadata$=lt("CSSUnitValueTyped"),Object.defineProperty(ne.prototype,"value",{configurable:!0,get:function(){return this.n2()}}),Object.defineProperty(ne.prototype,"unit",{configurable:!0,get:function(){return this.r28()}}),ee.$metadata$=ot("StyleScope"),oe.prototype.x28=function(){return this.u28_1},oe.prototype.y28=function(){return this.v28_1},oe.prototype.s28=function(t,n){this.x28().a(new ie(t,n))},oe.prototype.equals=function(t){return!(null==t||!qt(t,re))&&!!se(this.x28(),t.x28())&&se(this.y28(),t.y28())},oe.$metadata$=lt("StyleScopeBuilder",[ee,re]),re.$metadata$=ot("StyleHolder"),ie.prototype.z1y=function(){return this.z28_1},ie.prototype.n2=function(){return this.a29_1},ie.prototype.l4=function(){return this.z28_1},ie.prototype.m4=function(){return this.a29_1},ie.prototype.toString=function(){return"StylePropertyDeclaration(name="+this.z28_1+", value="+this.a29_1+")"},ie.prototype.hashCode=function(){var t=Ot(this.z28_1);return tt(t,31)+St(this.a29_1)|0},ie.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof ie))return!1;var n=t instanceof ie?t:ut();return this.z28_1===n.z28_1&&!!kt(this.a29_1,n.a29_1)},ie.$metadata$=lt("StylePropertyDeclaration"),ue.prototype.h1s=function(){return this.e29_1},ue.prototype.g29=function(t){for(var n=this.f29_1.c();n.d();){var e=n.e();this.e29_1.removeEventListener(e.z1y(),e)}this.f29_1=t;for(var o=this.f29_1.c();o.d();){var r=o.e();this.e29_1.addEventListener(r.z1y(),r)}},ue.prototype.h29=function(t){for(var n=t.c();n.d();){var e=n.e(),o=e.l4(),r=e.m4();o(this.e29_1,r)}},ue.prototype.i29=function(t){var n=this.e29_1;if(n instanceof HTMLElement||n instanceof SVGElement){this.e29_1.removeAttribute("style");for(var e=this.e29_1.style,o=t.x28().c();o.d();){var r=o.e(),i=r.l4(),s=r.m4();e.setProperty(i,pt(s))}for(var a=t.y28().c();a.d();){var u=a.e(),c=u.l4(),l=u.m4();e.setProperty(c,pt(l))}}},ue.prototype.j29=function(t){for(var n=this.e29_1.getAttributeNames(),e=0,o=n.length;e{"use strict";function o(){}e.r(n),e.d(n,{Animation:()=>ye,Animations:()=>ge,ArcElement:()=>wr,BarController:()=>Ne,BarElement:()=>Br,BasePlatform:()=>Oo,BasicPlatform:()=>Po,BubbleController:()=>Fe,CategoryScale:()=>Ci,Chart:()=>vr,DatasetController:()=>Pe,Decimation:()=>Rr,DomPlatform:()=>Vo,DoughnutController:()=>Re,Element:()=>Je,Filler:()=>ri,Interaction:()=>yo,Legend:()=>ai,LineController:()=>He,LineElement:()=>Or,LinearScale:()=>qi,LogarithmicScale:()=>Pi,PieController:()=>Ve,PointElement:()=>Mr,PolarAreaController:()=>Ue,RadarController:()=>We,RadialLinearScale:()=>Bi,Scale:()=>oo,ScatterController:()=>so,SubTitle:()=>hi,Ticks:()=>Ge,TimeScale:()=>Wi,TimeSeriesScale:()=>Ki,Title:()=>ci,Tooltip:()=>ki,_adapters:()=>lo,_detectPlatform:()=>Wo,animator:()=>_e,controllers:()=>ao,defaults:()=>Xt,elements:()=>Lr,layouts:()=>qo,plugins:()=>ji,registerables:()=>Yi,registry:()=>io,scales:()=>Gi});const r=function(){let t=0;return function(){return t++}}();function i(t){return null==t}function s(t){if(Array.isArray&&Array.isArray(t))return!0;const n=Object.prototype.toString.call(t);return"[object"===n.slice(0,7)&&"Array]"===n.slice(-6)}function a(t){return null!==t&&"[object Object]"===Object.prototype.toString.call(t)}const u=t=>("number"==typeof t||t instanceof Number)&&isFinite(+t);function c(t,n){return u(t)?t:n}function l(t,n){return void 0===t?n:t}const h=(t,n)=>"string"==typeof t&&t.endsWith("%")?parseFloat(t)/100*n:+t;function p(t,n,e){if(t&&"function"==typeof t.call)return t.apply(e,n)}function f(t,n,e,o){let r,i,u;if(s(t))if(i=t.length,o)for(r=i-1;r>=0;r--)n.call(e,t[r],r);else for(r=0;rt,x:t=>t.x,y:t=>t.y};function w(t,n){const e=b[n]||(b[n]=function(t){const n=function(t){const n=t.split("."),e=[];let o="";for(const t of n)o+=t,o.endsWith("\\")?o=o.slice(0,-1)+".":(e.push(o),o="");return e}(t);return t=>{for(const e of n){if(""===e)break;t=t&&t[e]}return t}}(n));return e(t)}function x(t){return t.charAt(0).toUpperCase()+t.slice(1)}const k=t=>void 0!==t,j=t=>"function"==typeof t,C=(t,n)=>{if(t.size!==n.size)return!1;for(const e of t)if(!n.has(e))return!1;return!0},z=Math.PI,S=2*z,q=S+z,O=Number.POSITIVE_INFINITY,P=z/180,M=z/2,A=z/4,E=2*z/3,I=Math.log10,D=Math.sign;function T(t){const n=Math.round(t);t=L(t,n,t/1e3)?n:t;const e=Math.pow(10,Math.floor(I(t))),o=t/e;return(o<=1?1:o<=2?2:o<=5?5:10)*e}function B(t){return!isNaN(parseFloat(t))&&isFinite(t)}function L(t,n,e){return Math.abs(t-n)u&&c=Math.min(n,e)-o&&t<=Math.max(n,e)+o}function X(t,n,e){e=e||(e=>t[e]1;)o=i+r>>1,e(o)?i=o:r=o;return{lo:i,hi:r}}const Z=(t,n,e,o)=>X(t,e,o?o=>t[o][n]<=e:o=>t[o][n]X(t,e,(o=>t[o][n]>=e)),tt=["push","pop","shift","splice","unshift"];function nt(t,n){const e=t._chartjs;if(!e)return;const o=e.listeners,r=o.indexOf(n);-1!==r&&o.splice(r,1),o.length>0||(tt.forEach((n=>{delete t[n]})),delete t._chartjs)}function et(t){const n=new Set;let e,o;for(e=0,o=t.length;eArray.prototype.slice.call(t));let r=!1,i=[];return function(...e){i=o(e),r||(r=!0,ot.call(window,(()=>{r=!1,t.apply(n,i)})))}}const it=t=>"start"===t?"left":"end"===t?"right":"center",st=(t,n,e)=>"start"===t?n:"end"===t?e:(n+e)/2;function at(t,n,e){const o=n.length;let r=0,i=o;if(t._sorted){const{iScale:s,_parsed:a}=t,u=s.axis,{min:c,max:l,minDefined:h,maxDefined:p}=s.getUserBounds();h&&(r=G(Math.min(Z(a,s.axis,c).lo,e?o:Z(n,u,s.getPixelForValue(c)).lo),0,o-1)),i=p?G(Math.max(Z(a,s.axis,l,!0).hi+1,e?0:Z(n,u,s.getPixelForValue(l),!0).hi+1),r,o)-r:o-r}return{start:r,count:i}}function ut(t){const{xScale:n,yScale:e,_scaleRanges:o}=t,r={xmin:n.min,xmax:n.max,ymin:e.min,ymax:e.max};if(!o)return t._scaleRanges=r,!0;const i=o.xmin!==n.min||o.xmax!==n.max||o.ymin!==e.min||o.ymax!==e.max;return Object.assign(o,r),i}const ct=t=>0===t||1===t,lt=(t,n,e)=>-Math.pow(2,10*(t-=1))*Math.sin((t-n)*S/e),ht=(t,n,e)=>Math.pow(2,-10*t)*Math.sin((t-n)*S/e)+1,pt={linear:t=>t,easeInQuad:t=>t*t,easeOutQuad:t=>-t*(t-2),easeInOutQuad:t=>(t/=.5)<1?.5*t*t:-.5*(--t*(t-2)-1),easeInCubic:t=>t*t*t,easeOutCubic:t=>(t-=1)*t*t+1,easeInOutCubic:t=>(t/=.5)<1?.5*t*t*t:.5*((t-=2)*t*t+2),easeInQuart:t=>t*t*t*t,easeOutQuart:t=>-((t-=1)*t*t*t-1),easeInOutQuart:t=>(t/=.5)<1?.5*t*t*t*t:-.5*((t-=2)*t*t*t-2),easeInQuint:t=>t*t*t*t*t,easeOutQuint:t=>(t-=1)*t*t*t*t+1,easeInOutQuint:t=>(t/=.5)<1?.5*t*t*t*t*t:.5*((t-=2)*t*t*t*t+2),easeInSine:t=>1-Math.cos(t*M),easeOutSine:t=>Math.sin(t*M),easeInOutSine:t=>-.5*(Math.cos(z*t)-1),easeInExpo:t=>0===t?0:Math.pow(2,10*(t-1)),easeOutExpo:t=>1===t?1:1-Math.pow(2,-10*t),easeInOutExpo:t=>ct(t)?t:t<.5?.5*Math.pow(2,10*(2*t-1)):.5*(2-Math.pow(2,-10*(2*t-1))),easeInCirc:t=>t>=1?t:-(Math.sqrt(1-t*t)-1),easeOutCirc:t=>Math.sqrt(1-(t-=1)*t),easeInOutCirc:t=>(t/=.5)<1?-.5*(Math.sqrt(1-t*t)-1):.5*(Math.sqrt(1-(t-=2)*t)+1),easeInElastic:t=>ct(t)?t:lt(t,.075,.3),easeOutElastic:t=>ct(t)?t:ht(t,.075,.3),easeInOutElastic(t){const n=.1125;return ct(t)?t:t<.5?.5*lt(2*t,n,.45):.5+.5*ht(2*t-1,n,.45)},easeInBack(t){const n=1.70158;return t*t*((n+1)*t-n)},easeOutBack(t){const n=1.70158;return(t-=1)*t*((n+1)*t+n)+1},easeInOutBack(t){let n=1.70158;return(t/=.5)<1?t*t*((1+(n*=1.525))*t-n)*.5:.5*((t-=2)*t*((1+(n*=1.525))*t+n)+2)},easeInBounce:t=>1-pt.easeOutBounce(1-t),easeOutBounce(t){const n=7.5625,e=2.75;return t<1/e?n*t*t:t<2/e?n*(t-=1.5/e)*t+.75:t<2.5/e?n*(t-=2.25/e)*t+.9375:n*(t-=2.625/e)*t+.984375},easeInOutBounce:t=>t<.5?.5*pt.easeInBounce(2*t):.5*pt.easeOutBounce(2*t-1)+.5};function ft(t){return t+.5|0}const _t=(t,n,e)=>Math.max(Math.min(t,e),n);function dt(t){return _t(ft(2.55*t),0,255)}function vt(t){return _t(ft(255*t),0,255)}function yt(t){return _t(ft(t/2.55)/100,0,1)}function mt(t){return _t(ft(100*t),0,100)}const gt={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},$t=[..."0123456789ABCDEF"],bt=t=>$t[15&t],wt=t=>$t[(240&t)>>4]+$t[15&t],xt=t=>(240&t)>>4==(15&t);const kt=/^(hsla?|hwb|hsv)\(\s*([-+.e\d]+)(?:deg)?[\s,]+([-+.e\d]+)%[\s,]+([-+.e\d]+)%(?:[\s,]+([-+.e\d]+)(%)?)?\s*\)$/;function jt(t,n,e){const o=n*Math.min(e,1-e),r=(n,r=(n+t/30)%12)=>e-o*Math.max(Math.min(r-3,9-r,1),-1);return[r(0),r(8),r(4)]}function Ct(t,n,e){const o=(o,r=(o+t/60)%6)=>e-e*n*Math.max(Math.min(r,4-r,1),0);return[o(5),o(3),o(1)]}function zt(t,n,e){const o=jt(t,1,.5);let r;for(n+e>1&&(r=1/(n+e),n*=r,e*=r),r=0;r<3;r++)o[r]*=1-n-e,o[r]+=n;return o}function St(t){const n=t.r/255,e=t.g/255,o=t.b/255,r=Math.max(n,e,o),i=Math.min(n,e,o),s=(r+i)/2;let a,u,c;return r!==i&&(c=r-i,u=s>.5?c/(2-r-i):c/(r+i),a=function(t,n,e,o,r){return t===r?(n-e)/o+(nt<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055,Tt=t=>t<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4);function Bt(t,n,e){if(t){let o=St(t);o[n]=Math.max(0,Math.min(o[n]+o[n]*e,0===n?360:1)),o=Ot(o),t.r=o[0],t.g=o[1],t.b=o[2]}}function Lt(t,n){return t?Object.assign(n||{},t):t}function Nt(t){var n={r:0,g:0,b:0,a:255};return Array.isArray(t)?t.length>=3&&(n={r:t[0],g:t[1],b:t[2],a:255},t.length>3&&(n.a=vt(t[3]))):(n=Lt(t,{r:0,g:0,b:0,a:1})).a=vt(n.a),n}function Ft(t){return"r"===t.charAt(0)?function(t){const n=It.exec(t);let e,o,r,i=255;if(n){if(n[7]!==e){const t=+n[7];i=n[8]?dt(t):_t(255*t,0,255)}return e=+n[1],o=+n[3],r=+n[5],e=255&(n[2]?dt(e):_t(e,0,255)),o=255&(n[4]?dt(o):_t(o,0,255)),r=255&(n[6]?dt(r):_t(r,0,255)),{r:e,g:o,b:r,a:i}}}(t):function(t){const n=kt.exec(t);let e,o=255;if(!n)return;n[5]!==e&&(o=n[6]?dt(+n[5]):vt(+n[5]));const r=Pt(+n[2]),i=+n[3]/100,s=+n[4]/100;return e="hwb"===n[1]?function(t,n,e){return qt(zt,t,n,e)}(r,i,s):"hsv"===n[1]?function(t,n,e){return qt(Ct,t,n,e)}(r,i,s):Ot(r,i,s),{r:e[0],g:e[1],b:e[2],a:o}}(t)}class Rt{constructor(t){if(t instanceof Rt)return t;const n=typeof t;let e;var o,r,i;"object"===n?e=Nt(t):"string"===n&&(i=(o=t).length,"#"===o[0]&&(4===i||5===i?r={r:255&17*gt[o[1]],g:255&17*gt[o[2]],b:255&17*gt[o[3]],a:5===i?17*gt[o[4]]:255}:7!==i&&9!==i||(r={r:gt[o[1]]<<4|gt[o[2]],g:gt[o[3]]<<4|gt[o[4]],b:gt[o[5]]<<4|gt[o[6]],a:9===i?gt[o[7]]<<4|gt[o[8]]:255})),e=r||function(t){Et||(Et=function(){const t={},n=Object.keys(At),e=Object.keys(Mt);let o,r,i,s,a;for(o=0;o>16&255,i>>8&255,255&i]}return t}(),Et.transparent=[0,0,0,0]);const n=Et[t.toLowerCase()];return n&&{r:n[0],g:n[1],b:n[2],a:4===n.length?n[3]:255}}(t)||Ft(t)),this._rgb=e,this._valid=!!e}get valid(){return this._valid}get rgb(){var t=Lt(this._rgb);return t&&(t.a=yt(t.a)),t}set rgb(t){this._rgb=Nt(t)}rgbString(){return this._valid?(t=this._rgb)&&(t.a<255?`rgba(${t.r}, ${t.g}, ${t.b}, ${yt(t.a)})`:`rgb(${t.r}, ${t.g}, ${t.b})`):void 0;var t}hexString(){return this._valid?(t=this._rgb,n=(t=>xt(t.r)&&xt(t.g)&&xt(t.b)&&xt(t.a))(t)?bt:wt,t?"#"+n(t.r)+n(t.g)+n(t.b)+((t,n)=>t<255?n(t):"")(t.a,n):void 0):void 0;var t,n}hslString(){return this._valid?function(t){if(!t)return;const n=St(t),e=n[0],o=mt(n[1]),r=mt(n[2]);return t.a<255?`hsla(${e}, ${o}%, ${r}%, ${yt(t.a)})`:`hsl(${e}, ${o}%, ${r}%)`}(this._rgb):void 0}mix(t,n){if(t){const e=this.rgb,o=t.rgb;let r;const i=n===r?.5:n,s=2*i-1,a=e.a-o.a,u=((s*a==-1?s:(s+a)/(1+s*a))+1)/2;r=1-u,e.r=255&u*e.r+r*o.r+.5,e.g=255&u*e.g+r*o.g+.5,e.b=255&u*e.b+r*o.b+.5,e.a=i*e.a+(1-i)*o.a,this.rgb=e}return this}interpolate(t,n){return t&&(this._rgb=function(t,n,e){const o=Tt(yt(t.r)),r=Tt(yt(t.g)),i=Tt(yt(t.b));return{r:vt(Dt(o+e*(Tt(yt(n.r))-o))),g:vt(Dt(r+e*(Tt(yt(n.g))-r))),b:vt(Dt(i+e*(Tt(yt(n.b))-i))),a:t.a+e*(n.a-t.a)}}(this._rgb,t._rgb,n)),this}clone(){return new Rt(this.rgb)}alpha(t){return this._rgb.a=vt(t),this}clearer(t){return this._rgb.a*=1-t,this}greyscale(){const t=this._rgb,n=ft(.3*t.r+.59*t.g+.11*t.b);return t.r=t.g=t.b=n,this}opaquer(t){return this._rgb.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 Bt(this._rgb,2,t),this}darken(t){return Bt(this._rgb,2,-t),this}saturate(t){return Bt(this._rgb,1,t),this}desaturate(t){return Bt(this._rgb,1,-t),this}rotate(t){return function(t,n){var e=St(t);e[0]=Pt(e[0]+n),e=Ot(e),t.r=e[0],t.g=e[1],t.b=e[2]}(this._rgb,t),this}}function Ht(t){return new Rt(t)}function Ut(t){if(t&&"object"==typeof t){const n=t.toString();return"[object CanvasPattern]"===n||"[object CanvasGradient]"===n}return!1}function Vt(t){return Ut(t)?t:Ht(t)}function Wt(t){return Ut(t)?t:Ht(t).saturate(.5).darken(.1).hexString()}const Jt=Object.create(null),Kt=Object.create(null);function Gt(t,n){if(!n)return t;const e=n.split(".");for(let n=0,o=e.length;nt.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=(t,n)=>Wt(n.backgroundColor),this.hoverBorderColor=(t,n)=>Wt(n.borderColor),this.hoverColor=(t,n)=>Wt(n.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)}set(t,n){return Yt(this,t,n)}get(t){return Gt(this,t)}describe(t,n){return Yt(Kt,t,n)}override(t,n){return Yt(Jt,t,n)}route(t,n,e,o){const r=Gt(this,t),i=Gt(this,e),s="_"+n;Object.defineProperties(r,{[s]:{value:r[n],writable:!0},[n]:{enumerable:!0,get(){const t=this[s],n=i[o];return a(t)?Object.assign({},n,t):l(t,n)},set(t){this[s]=t}}})}}({_scriptable:t=>!t.startsWith("on"),_indexable:t=>"events"!==t,hover:{_fallback:"interaction"},interaction:{_scriptable:!1,_indexable:!1}});function Zt(t,n,e,o,r){let i=n[r];return i||(i=n[r]=t.measureText(r).width,e.push(r)),i>o&&(o=i),o}function Qt(t,n,e,o){let r=(o=o||{}).data=o.data||{},i=o.garbageCollect=o.garbageCollect||[];o.font!==n&&(r=o.data={},i=o.garbageCollect=[],o.font=n),t.save(),t.font=n;let a=0;const u=e.length;let c,l,h,p,f;for(c=0;ce.length){for(c=0;c<_;c++)delete r[i[c]];i.splice(0,_)}return a}function tn(t,n,e){const o=t.currentDevicePixelRatio,r=0!==e?Math.max(e/2,.5):0;return Math.round((n-r)*o)/o+r}function nn(t,n){(n=n||t.getContext("2d")).save(),n.resetTransform(),n.clearRect(0,0,t.width,t.height),n.restore()}function en(t,n,e,o){on(t,n,e,o,null)}function on(t,n,e,o,r){let i,s,a,u,c,l;const h=n.pointStyle,p=n.rotation,f=n.radius;let _=(p||0)*P;if(h&&"object"==typeof h&&(i=h.toString(),"[object HTMLImageElement]"===i||"[object HTMLCanvasElement]"===i))return t.save(),t.translate(e,o),t.rotate(_),t.drawImage(h,-h.width/2,-h.height/2,h.width,h.height),void t.restore();if(!(isNaN(f)||f<=0)){switch(t.beginPath(),h){default:r?t.ellipse(e,o,r/2,f,0,0,S):t.arc(e,o,f,0,S),t.closePath();break;case"triangle":t.moveTo(e+Math.sin(_)*f,o-Math.cos(_)*f),_+=E,t.lineTo(e+Math.sin(_)*f,o-Math.cos(_)*f),_+=E,t.lineTo(e+Math.sin(_)*f,o-Math.cos(_)*f),t.closePath();break;case"rectRounded":c=.516*f,u=f-c,s=Math.cos(_+A)*u,a=Math.sin(_+A)*u,t.arc(e-s,o-a,c,_-z,_-M),t.arc(e+a,o-s,c,_-M,_),t.arc(e+s,o+a,c,_,_+M),t.arc(e-a,o+s,c,_+M,_+z),t.closePath();break;case"rect":if(!p){u=Math.SQRT1_2*f,l=r?r/2:u,t.rect(e-l,o-u,2*l,2*u);break}_+=A;case"rectRot":s=Math.cos(_)*f,a=Math.sin(_)*f,t.moveTo(e-s,o-a),t.lineTo(e+a,o-s),t.lineTo(e+s,o+a),t.lineTo(e-a,o+s),t.closePath();break;case"crossRot":_+=A;case"cross":s=Math.cos(_)*f,a=Math.sin(_)*f,t.moveTo(e-s,o-a),t.lineTo(e+s,o+a),t.moveTo(e+a,o-s),t.lineTo(e-a,o+s);break;case"star":s=Math.cos(_)*f,a=Math.sin(_)*f,t.moveTo(e-s,o-a),t.lineTo(e+s,o+a),t.moveTo(e+a,o-s),t.lineTo(e-a,o+s),_+=A,s=Math.cos(_)*f,a=Math.sin(_)*f,t.moveTo(e-s,o-a),t.lineTo(e+s,o+a),t.moveTo(e+a,o-s),t.lineTo(e-a,o+s);break;case"line":s=r?r/2:Math.cos(_)*f,a=Math.sin(_)*f,t.moveTo(e-s,o-a),t.lineTo(e+s,o+a);break;case"dash":t.moveTo(e,o),t.lineTo(e+Math.cos(_)*f,o+Math.sin(_)*f)}t.fill(),n.borderWidth>0&&t.stroke()}}function rn(t,n,e){return e=e||.5,!n||t&&t.x>n.left-e&&t.xn.top-e&&t.y0&&""!==a.strokeColor;let l,h;for(t.save(),t.font=r.string,function(t,n){n.translation&&t.translate(n.translation[0],n.translation[1]),i(n.rotation)||t.rotate(n.rotation),n.color&&(t.fillStyle=n.color),n.textAlign&&(t.textAlign=n.textAlign),n.textBaseline&&(t.textBaseline=n.textBaseline)}(t,a),l=0;ll(t[e],t[n[e]]):n=>t[n]:()=>t;for(const t of r)e[t]=+i(t)||0;return e}function yn(t){return vn(t,{top:"y",right:"x",bottom:"y",left:"x"})}function mn(t){return vn(t,["topLeft","topRight","bottomLeft","bottomRight"])}function gn(t){const n=yn(t);return n.width=n.left+n.right,n.height=n.top+n.bottom,n}function $n(t,n){t=t||{},n=n||Xt.font;let e=l(t.size,n.size);"string"==typeof e&&(e=parseInt(e,10));let o=l(t.style,n.style);o&&!(""+o).match(_n)&&(console.warn('Invalid font style specified: "'+o+'"'),o="");const r={family:l(t.family,n.family),lineHeight:dn(l(t.lineHeight,n.lineHeight),e),size:e,style:o,weight:l(t.weight,n.weight),string:""};return r.string=function(t){return!t||i(t.size)||i(t.family)?null:(t.style?t.style+" ":"")+(t.weight?t.weight+" ":"")+t.size+"px "+t.family}(r),r}function bn(t,n,e,o){let r,i,a,u=!0;for(r=0,i=t.length;rt[0])){k(o)||(o=En("_fallback",t));const i={[Symbol.toStringTag]:"Object",_cacheable:!0,_scopes:t,_rootScopes:e,_fallback:o,_getTarget:r,override:r=>xn([r,...t],n,e,o)};return new Proxy(i,{deleteProperty:(n,e)=>(delete n[e],delete n._keys,delete t[0][e],!0),get:(e,o)=>Sn(e,o,(()=>function(t,n,e,o){let r;for(const i of n)if(r=En(Cn(i,t),e),k(r))return zn(t,r)?Mn(e,o,t,r):r}(o,n,t,e))),getOwnPropertyDescriptor:(t,n)=>Reflect.getOwnPropertyDescriptor(t._scopes[0],n),getPrototypeOf:()=>Reflect.getPrototypeOf(t[0]),has:(t,n)=>In(t).includes(n),ownKeys:t=>In(t),set(t,n,e){const o=t._storage||(t._storage=r());return t[n]=o[n]=e,delete t._keys,!0}})}function kn(t,n,e,o){const r={_cacheable:!1,_proxy:t,_context:n,_subProxy:e,_stack:new Set,_descriptors:jn(t,o),setContext:n=>kn(t,n,e,o),override:r=>kn(t.override(r),n,e,o)};return new Proxy(r,{deleteProperty:(n,e)=>(delete n[e],delete t[e],!0),get:(t,n,e)=>Sn(t,n,(()=>function(t,n,e){const{_proxy:o,_context:r,_subProxy:i,_descriptors:u}=t;let c=o[n];return j(c)&&u.isScriptable(n)&&(c=function(t,n,e,o){const{_proxy:r,_context:i,_subProxy:s,_stack:a}=e;if(a.has(t))throw new Error("Recursion detected: "+Array.from(a).join("->")+"->"+t);return a.add(t),n=n(i,s||o),a.delete(t),zn(t,n)&&(n=Mn(r._scopes,r,t,n)),n}(n,c,t,e)),s(c)&&c.length&&(c=function(t,n,e,o){const{_proxy:r,_context:i,_subProxy:s,_descriptors:u}=e;if(k(i.index)&&o(t))n=n[i.index%n.length];else if(a(n[0])){const e=n,o=r._scopes.filter((t=>t!==e));n=[];for(const a of e){const e=Mn(o,r,t,a);n.push(kn(e,i,s&&s[t],u))}}return n}(n,c,t,u.isIndexable)),zn(n,c)&&(c=kn(c,r,i&&i[n],u)),c}(t,n,e))),getOwnPropertyDescriptor:(n,e)=>n._descriptors.allKeys?Reflect.has(t,e)?{enumerable:!0,configurable:!0}:void 0:Reflect.getOwnPropertyDescriptor(t,e),getPrototypeOf:()=>Reflect.getPrototypeOf(t),has:(n,e)=>Reflect.has(t,e),ownKeys:()=>Reflect.ownKeys(t),set:(n,e,o)=>(t[e]=o,delete n[e],!0)})}function jn(t,n={scriptable:!0,indexable:!0}){const{_scriptable:e=n.scriptable,_indexable:o=n.indexable,_allKeys:r=n.allKeys}=t;return{allKeys:r,scriptable:e,indexable:o,isScriptable:j(e)?e:()=>e,isIndexable:j(o)?o:()=>o}}const Cn=(t,n)=>t?t+x(n):n,zn=(t,n)=>a(n)&&"adapters"!==t&&(null===Object.getPrototypeOf(n)||n.constructor===Object);function Sn(t,n,e){if(Object.prototype.hasOwnProperty.call(t,n))return t[n];const o=e();return t[n]=o,o}function qn(t,n,e){return j(t)?t(n,e):t}const On=(t,n)=>!0===t?n:"string"==typeof t?w(n,t):void 0;function Pn(t,n,e,o,r){for(const i of n){const n=On(e,i);if(n){t.add(n);const i=qn(n._fallback,e,r);if(k(i)&&i!==e&&i!==o)return i}else if(!1===n&&k(o)&&e!==o)return null}return!1}function Mn(t,n,e,o){const r=n._rootScopes,i=qn(n._fallback,e,o),u=[...t,...r],c=new Set;c.add(o);let l=An(c,u,e,i||e,o);return null!==l&&(!k(i)||i===e||(l=An(c,u,i,l,o),null!==l))&&xn(Array.from(c),[""],r,i,(()=>function(t,n,e){const o=t._getTarget();n in o||(o[n]={});const r=o[n];return s(r)&&a(e)?e:r}(n,e,o)))}function An(t,n,e,o,r){for(;e;)e=Pn(t,n,e,o,r);return e}function En(t,n){for(const e of n){if(!e)continue;const n=e[t];if(k(n))return n}}function In(t){let n=t._keys;return n||(n=t._keys=function(t){const n=new Set;for(const e of t)for(const t of Object.keys(e).filter((t=>!t.startsWith("_"))))n.add(t);return Array.from(n)}(t._scopes)),n}function Dn(t,n,e,o){const{iScale:r}=t,{key:i="r"}=this._parsing,s=new Array(o);let a,u,c,l;for(a=0,u=o;an"x"===t?"y":"x";function Nn(t,n,e,o){const r=t.skip?n:t,i=n,s=e.skip?n:e,a=V(i,r),u=V(s,i);let c=a/(a+u),l=u/(a+u);c=isNaN(c)?0:c,l=isNaN(l)?0:l;const h=o*c,p=o*l;return{previous:{x:i.x-h*(s.x-r.x),y:i.y-h*(s.y-r.y)},next:{x:i.x+p*(s.x-r.x),y:i.y+p*(s.y-r.y)}}}function Fn(t,n,e){return Math.max(Math.min(t,e),n)}function Rn(t,n,e,o,r){let i,s,a,u;if(n.spanGaps&&(t=t.filter((t=>!t.skip))),"monotone"===n.cubicInterpolationMode)!function(t,n="x"){const e=Ln(n),o=t.length,r=Array(o).fill(0),i=Array(o);let s,a,u,c=Bn(t,0);for(s=0;swindow.getComputedStyle(t,null),Jn=["top","right","bottom","left"];function Kn(t,n,e){const o={};e=e?"-"+e:"";for(let r=0;r<4;r++){const i=Jn[r];o[i]=parseFloat(t[n+"-"+i+e])||0}return o.width=o.left+o.right,o.height=o.top+o.bottom,o}function Gn(t,n){if("native"in t)return t;const{canvas:e,currentDevicePixelRatio:o}=n,r=Wn(e),i="border-box"===r.boxSizing,s=Kn(r,"padding"),a=Kn(r,"border","width"),{x:u,y:c,box:l}=function(t,n){const e=t.touches,o=e&&e.length?e[0]:t,{offsetX:r,offsetY:i}=o;let s,a,u=!1;if(((t,n,e)=>(t>0||n>0)&&(!e||!e.shadowRoot))(r,i,t.target))s=r,a=i;else{const t=n.getBoundingClientRect();s=o.clientX-t.left,a=o.clientY-t.top,u=!0}return{x:s,y:a,box:u}}(t,e),h=s.left+(l&&a.left),p=s.top+(l&&a.top);let{width:f,height:_}=n;return i&&(f-=s.width+a.width,_-=s.height+a.height),{x:Math.round((u-h)/f*e.width/o),y:Math.round((c-p)/_*e.height/o)}}const Yn=t=>Math.round(10*t)/10;function Xn(t,n,e){const o=n||1,r=Math.floor(t.height*o),i=Math.floor(t.width*o);t.height=r/o,t.width=i/o;const s=t.canvas;return s.style&&(e||!s.style.height&&!s.style.width)&&(s.style.height=`${t.height}px`,s.style.width=`${t.width}px`),(t.currentDevicePixelRatio!==o||s.height!==r||s.width!==i)&&(t.currentDevicePixelRatio=o,s.height=r,s.width=i,t.ctx.setTransform(o,0,0,o,0,0),!0)}const Zn=function(){let t=!1;try{const n={get passive(){return t=!0,!1}};window.addEventListener("test",null,n),window.removeEventListener("test",null,n)}catch(t){}return t}();function Qn(t,n){const e=function(t,n){return Wn(t).getPropertyValue(n)}(t,n),o=e&&e.match(/^(\d+)(\.\d+)?px$/);return o?+o[1]:void 0}function te(t,n,e,o){return{x:t.x+e*(n.x-t.x),y:t.y+e*(n.y-t.y)}}function ne(t,n,e,o){return{x:t.x+e*(n.x-t.x),y:"middle"===o?e<.5?t.y:n.y:"after"===o?e<1?t.y:n.y:e>0?n.y:t.y}}function ee(t,n,e,o){const r={x:t.cp2x,y:t.cp2y},i={x:n.cp1x,y:n.cp1y},s=te(t,r,e),a=te(r,i,e),u=te(i,n,e),c=te(s,a,e),l=te(a,u,e);return te(c,l,e)}const oe=new Map;function re(t,n,e){return function(t,n){n=n||{};const e=t+JSON.stringify(n);let o=oe.get(e);return o||(o=new Intl.NumberFormat(t,n),oe.set(e,o)),o}(n,e).format(t)}function ie(t,n,e){return t?function(t,n){return{x:e=>t+t+n-e,setWidth(t){n=t},textAlign:t=>"center"===t?t:"right"===t?"left":"right",xPlus:(t,n)=>t-n,leftForLtr:(t,n)=>t-n}}(n,e):{x:t=>t,setWidth(t){},textAlign:t=>t,xPlus:(t,n)=>t+n,leftForLtr:(t,n)=>t}}function se(t,n){let e,o;"ltr"!==n&&"rtl"!==n||(e=t.canvas.style,o=[e.getPropertyValue("direction"),e.getPropertyPriority("direction")],e.setProperty("direction",n,"important"),t.prevTextDirection=o)}function ae(t,n){void 0!==n&&(delete t.prevTextDirection,t.canvas.style.setProperty("direction",n[0],n[1]))}function ue(t){return"angle"===t?{between:K,compare:W,normalize:J}:{between:Y,compare:(t,n)=>t-n,normalize:t=>t}}function ce({start:t,end:n,count:e,loop:o,style:r}){return{start:t%e,end:n%e,loop:o&&(n-t+1)%e==0,style:r}}function le(t,n,e){if(!e)return[t];const{property:o,start:r,end:i}=e,s=n.length,{compare:a,between:u,normalize:c}=ue(o),{start:l,end:h,loop:p,style:f}=function(t,n,e){const{property:o,start:r,end:i}=e,{between:s,normalize:a}=ue(o),u=n.length;let c,l,{start:h,end:p,loop:f}=t;if(f){for(h+=u,p+=u,c=0,l=u;co({chart:t,initial:n.initial,numSteps:i,currentStep:Math.min(e-n.start,i)})))}_refresh(){this._request||(this._running=!0,this._request=ot.call(window,(()=>{this._update(),this._request=null,this._running&&this._refresh()})))}_update(t=Date.now()){let n=0;this._charts.forEach(((e,o)=>{if(!e.running||!e.items.length)return;const r=e.items;let i,s=r.length-1,a=!1;for(;s>=0;--s)i=r[s],i._active?(i._total>e.duration&&(e.duration=i._total),i.tick(t),a=!0):(r[s]=r[r.length-1],r.pop());a&&(o.draw(),this._notify(o,e,t,"progress")),r.length||(e.running=!1,this._notify(o,e,t,"complete"),e.initial=!1),n+=r.length})),this._lastDate=t,0===n&&(this._running=!1)}_getAnims(t){const n=this._charts;let e=n.get(t);return e||(e={running:!1,initial:!0,items:[],listeners:{complete:[],progress:[]}},n.set(t,e)),e}listen(t,n,e){this._getAnims(t).listeners[n].push(e)}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(((t,n)=>Math.max(t,n._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 e=n.items;let o=e.length-1;for(;o>=0;--o)e[o].cancel();n.items=[],this._notify(t,n,Date.now(),"complete")}remove(t){return this._charts.delete(t)}};const de="transparent",ve={boolean:(t,n,e)=>e>.5?n:t,color(t,n,e){const o=Vt(t||de),r=o.valid&&Vt(n||de);return r&&r.valid?r.mix(o,e).hexString():n},number:(t,n,e)=>t+(n-t)*e};class ye{constructor(t,n,e,o){const r=n[e];o=bn([t.to,o,r,t.from]);const i=bn([t.from,r,o]);this._active=!0,this._fn=t.fn||ve[t.type||typeof i],this._easing=pt[t.easing]||pt.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=e,this._from=i,this._to=o,this._promises=void 0}active(){return this._active}update(t,n,e){if(this._active){this._notify(!1);const o=this._target[this._prop],r=e-this._start,i=this._duration-r;this._start=e,this._duration=Math.floor(Math.max(i,t.duration)),this._total+=r,this._loop=!!t.loop,this._to=bn([t.to,n,o,t.from]),this._from=bn([t.from,o,n])}}cancel(){this._active&&(this.tick(Date.now()),this._active=!1,this._notify(!1))}tick(t){const n=t-this._start,e=this._duration,o=this._prop,r=this._from,i=this._loop,s=this._to;let a;if(this._active=r!==s&&(i||n1?2-a:a,a=this._easing(Math.min(1,Math.max(0,a))),this._target[o]=this._fn(r,s,a))}wait(){const t=this._promises||(this._promises=[]);return new Promise(((n,e)=>{t.push({res:n,rej:e})}))}_notify(t){const n=t?"res":"rej",e=this._promises||[];for(let t=0;t"onProgress"!==t&&"onComplete"!==t&&"fn"!==t}),Xt.set("animations",{colors:{type:"color",properties:["color","borderColor","backgroundColor"]},numbers:{type:"number",properties:["x","y","borderWidth","radius","tension"]}}),Xt.describe("animations",{_fallback:"animation"}),Xt.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=>0|t}}}});class ge{constructor(t,n){this._chart=t,this._properties=new Map,this.configure(n)}configure(t){if(!a(t))return;const n=this._properties;Object.getOwnPropertyNames(t).forEach((e=>{const o=t[e];if(!a(o))return;const r={};for(const t of me)r[t]=o[t];(s(o.properties)&&o.properties||[e]).forEach((t=>{t!==e&&n.has(t)||n.set(t,r)}))}))}_animateOptions(t,n){const e=n.options,o=function(t,n){if(!n)return;let e=t.options;if(e)return e.$shared&&(t.options=e=Object.assign({},e,{$shared:!1,$animations:{}})),e;t.options=n}(t,e);if(!o)return[];const r=this._createAnimations(o,e);return e.$shared&&function(t,n){const e=[],o=Object.keys(n);for(let n=0;n{t.options=e}),(()=>{})),r}_createAnimations(t,n){const e=this._properties,o=[],r=t.$animations||(t.$animations={}),i=Object.keys(n),s=Date.now();let a;for(a=i.length-1;a>=0;--a){const u=i[a];if("$"===u.charAt(0))continue;if("options"===u){o.push(...this._animateOptions(t,n));continue}const c=n[u];let l=r[u];const h=e.get(u);if(l){if(h&&l.active()){l.update(h,c,s);continue}l.cancel()}h&&h.duration?(r[u]=l=new ye(h,t,u,c),o.push(l)):t[u]=c}return o}update(t,n){if(0===this._properties.size)return void Object.assign(t,n);const e=this._createAnimations(t,n);return e.length?(_e.add(this._chart,e),!0):void 0}}function $e(t,n){const e=t&&t.options||{},o=e.reverse,r=void 0===e.min?n:0,i=void 0===e.max?n:0;return{start:o?i:r,end:o?r:i}}function be(t,n){const e=[],o=t._getSortedDatasetMetas(n);let r,i;for(r=0,i=o.length;r0||!e&&n<0)return r.index}return null}function Ce(t,n){const{chart:e,_cachedMeta:o}=t,r=e._stacks||(e._stacks={}),{iScale:i,vScale:s,index:a}=o,u=i.axis,c=s.axis,l=function(t,n,e){return`${t.id}.${n.id}.${e.stack||e.type}`}(i,s,o),h=n.length;let p;for(let t=0;te[t].axis===n)).shift()}function Se(t,n){const e=t.controller.index,o=t.vScale&&t.vScale.axis;if(o){n=n||t._parsed;for(const t of n){const n=t._stacks;if(!n||void 0===n[o]||void 0===n[o][e])return;delete n[o][e]}}}const qe=t=>"reset"===t||"none"===t,Oe=(t,n)=>n?t:Object.assign({},t);class Pe{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.initialize()}initialize(){const t=this._cachedMeta;this.configure(),this.linkScales(),t._stacked=xe(t.vScale,t),this.addElements()}updateIndex(t){this.index!==t&&Se(this._cachedMeta),this.index=t}linkScales(){const t=this.chart,n=this._cachedMeta,e=this.getDataset(),o=(t,n,e,o)=>"x"===t?n:"r"===t?o:e,r=n.xAxisID=l(e.xAxisID,ze(t,"x")),i=n.yAxisID=l(e.yAxisID,ze(t,"y")),s=n.rAxisID=l(e.rAxisID,ze(t,"r")),a=n.indexAxis,u=n.iAxisID=o(a,r,i,s),c=n.vAxisID=o(a,i,r,s);n.xScale=this.getScaleForId(r),n.yScale=this.getScaleForId(i),n.rScale=this.getScaleForId(s),n.iScale=this.getScaleForId(u),n.vScale=this.getScaleForId(c)}getDataset(){return this.chart.data.datasets[this.index]}getMeta(){return this.chart.getDatasetMeta(this.index)}getScaleForId(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&&nt(this._data,this),t._stacked&&Se(t)}_dataCheck(){const t=this.getDataset(),n=t.data||(t.data=[]),e=this._data;if(a(n))this._data=function(t){const n=Object.keys(t),e=new Array(n.length);let o,r,i;for(o=0,r=n.length;o{const n="_onData"+x(t),e=o[t];Object.defineProperty(o,t,{configurable:!0,enumerable:!1,value(...t){const r=e.apply(this,t);return o._chartjs.listeners.forEach((e=>{"function"==typeof e[n]&&e[n](...t)})),r}})})))),this._syncList=[],this._data=n}var o}addElements(){const t=this._cachedMeta;this._dataCheck(),this.datasetElementType&&(t.dataset=new this.datasetElementType)}buildOrUpdateElements(t){const n=this._cachedMeta,e=this.getDataset();let o=!1;this._dataCheck();const r=n._stacked;n._stacked=xe(n.vScale,n),n.stack!==e.stack&&(o=!0,Se(n),n.stack=e.stack),this._resyncElements(t),(o||r!==n._stacked)&&Ce(this,n._parsed)}configure(){const t=this.chart.config,n=t.datasetScopeKeys(this._type),e=t.getOptionScopes(this.getDataset(),n,!0);this.options=t.createResolver(e,this.getContext()),this._parsing=this.options.parsing,this._cachedDataOpts={}}parse(t,n){const{_cachedMeta:e,_data:o}=this,{iScale:r,_stacked:i}=e,u=r.axis;let c,l,h,p=0===t&&n===o.length||e._sorted,f=t>0&&e._parsed[t-1];if(!1===this._parsing)e._parsed=o,e._sorted=!0,h=o;else{h=s(o[t])?this.parseArrayData(e,o,t,n):a(o[t])?this.parseObjectData(e,o,t,n):this.parsePrimitiveData(e,o,t,n);const r=()=>null===l[u]||f&&l[u]t&&!n.hidden&&n._stacked&&{keys:be(e,!0),values:null})(n,e,this.chart),c={min:Number.POSITIVE_INFINITY,max:Number.NEGATIVE_INFINITY},{min:l,max:h}=function(t){const{min:n,max:e,minDefined:o,maxDefined:r}=t.getUserBounds();return{min:o?n:Number.NEGATIVE_INFINITY,max:r?e:Number.POSITIVE_INFINITY}}(s);let p,f;function _(){f=o[p];const n=f[s.axis];return!u(f[t.axis])||l>n||h=0;--p)if(!_()){this.updateRangeFromParsed(c,t,f,a);break}return c}getAllParsedValues(t){const n=this._cachedMeta._parsed,e=[];let o,r,i;for(o=0,r=n.length;o=0&&tthis.getContext(e,o)),l);return f.$shared&&(f.$shared=a,r[i]=Object.freeze(Oe(f,a))),f}_resolveAnimations(t,n,e){const o=this.chart,r=this._cachedDataOpts,i=`animation-${n}`,s=r[i];if(s)return s;let a;if(!1!==o.options.animation){const o=this.chart.config,r=o.datasetAnimationScopeKeys(this._type,n),i=o.getOptionScopes(this.getDataset(),r);a=o.createResolver(i,this.getContext(t,e,n))}const u=new ge(o,a&&a.animations);return a&&a._cacheable&&(r[i]=Object.freeze(u)),u}getSharedOptions(t){if(t.$shared)return this._sharedOptions||(this._sharedOptions=Object.assign({},t))}includeOptions(t,n){return!n||qe(t)||this.chart._animationsDisabled}_getSharedOptions(t,n){const e=this.resolveDataElementOptions(t,n),o=this._sharedOptions,r=this.getSharedOptions(e),i=this.includeOptions(n,r)||r!==o;return this.updateSharedOptions(r,n,e),{sharedOptions:r,includeOptions:i}}updateElement(t,n,e,o){qe(o)?Object.assign(t,e):this._resolveAnimations(n,o).update(t,e)}updateSharedOptions(t,n,e){t&&!qe(n)&&this._resolveAnimations(void 0,n).update(t,e)}_setStyle(t,n,e,o){t.active=o;const r=this.getStyle(n,o);this._resolveAnimations(n,e,o).update(t,{options:!o&&this.getSharedOptions(r)||r})}removeHoverStyle(t,n,e){this._setStyle(t,e,"active",!1)}setHoverStyle(t,n,e){this._setStyle(t,e,"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,e=this._cachedMeta.data;for(const[t,n,e]of this._syncList)this[t](n,e);this._syncList=[];const o=e.length,r=n.length,i=Math.min(r,o);i&&this.parse(0,i),r>o?this._insertElements(o,r-o,t):r{for(t.length+=n,s=t.length-1;s>=i;s--)t[s]=t[s-n]};for(a(r),s=t;st-n)))}return t._cache.$bar}(n,t.type);let o,r,i,s,a=n._length;const u=()=>{32767!==i&&-32768!==i&&(k(s)&&(a=Math.min(a,Math.abs(i-s)||a)),s=i)};for(o=0,r=e.length;oMath.abs(a)&&(u=a,c=s),n[e.axis]=c,n._custom={barStart:u,barEnd:c,start:r,end:i,min:s,max:a}}(t,n,e,o):n[e.axis]=e.parse(t,o),n}function Ee(t,n,e,o){const r=t.iScale,i=t.vScale,s=r.getLabels(),a=r===i,u=[];let c,l,h,p;for(c=e,l=e+o;ct.x,e="left",o="right"):(n=t.baset.controller.options.grouped)),r=e.options.stacked,s=[],a=t=>{const e=t.controller.getParsed(n),o=e&&e[t.vScale.axis];if(i(o)||isNaN(o))return!0};for(const e of o)if((void 0===n||!a(e))&&((!1===r||-1===s.indexOf(e.stack)||void 0===r&&void 0===e.stack)&&s.push(e.stack),e.index===t))break;return s.length||s.push(void 0),s}_getStackCount(t){return this._getStacks(void 0,t).length}_getStackIndex(t,n,e){const o=this._getStacks(t,e),r=void 0!==n?o.indexOf(n):-1;return-1===r?o.length-1:r}_getRuler(){const t=this.options,n=this._cachedMeta,e=n.iScale,o=[];let r,i;for(r=0,i=n.data.length;r=e?1:-1)}(h,n,s)*r,p===s&&(v-=h/2);const t=n.getPixelForDecimal(0),e=n.getPixelForDecimal(1),o=Math.min(t,e),i=Math.max(t,e);v=Math.max(Math.min(v,i),o),l=v+h}if(v===n.getPixelForValue(s)){const t=D(h)*n.getLineWidthForValue(s)/2;v+=t,h-=t}return{size:h,base:v,head:l,center:l+h/2}}_calculateBarIndexPixels(t,n){const e=n.scale,o=this.options,r=o.skipNull,s=l(o.maxBarThickness,1/0);let a,u;if(n.grouped){const e=r?this._getStackCount(t):n.stackCount,c="flex"===o.barThickness?function(t,n,e,o){const r=n.pixels,i=r[t];let s=t>0?r[t-1]:null,a=t=0;--e)n=Math.max(n,t[e].size(this.resolveDataElementOptions(e))/2);return n>0&&n}getLabelAndValue(t){const n=this._cachedMeta,{xScale:e,yScale:o}=n,r=this.getParsed(t),i=e.getLabelForValue(r.x),s=o.getLabelForValue(r.y),a=r._custom;return{label:n.label,value:"("+i+", "+s+(a?", "+a:"")+")"}}update(t){const n=this._cachedMeta.data;this.updateElements(n,0,n.length,t)}updateElements(t,n,e,o){const r="reset"===o,{iScale:i,vScale:s}=this._cachedMeta,{sharedOptions:a,includeOptions:u}=this._getSharedOptions(n,o),c=i.axis,l=s.axis;for(let h=n;h""}}}};class Re extends Pe{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 e=this.getDataset().data,o=this._cachedMeta;if(!1===this._parsing)o._parsed=e;else{let r,i,s=t=>+e[t];if(a(e[t])){const{key:t="value"}=this._parsing;s=n=>+w(e[n],t)}for(r=t,i=t+n;rK(t,a,u,!0)?1:Math.max(n,n*e,o,o*e),_=(t,n,o)=>K(t,a,u,!0)?-1:Math.min(n,n*e,o,o*e),d=f(0,c,h),v=f(M,l,p),y=_(z,c,h),m=_(z+M,l,p);o=(d-y)/2,r=(v-m)/2,i=-(d+y)/2,s=-(v+m)/2}return{ratioX:o,ratioY:r,offsetX:i,offsetY:s}}(f,p,a),m=(e.width-i)/_,g=(e.height-i)/d,$=Math.max(Math.min(m,g)/2,0),b=h(this.options.radius,$),w=(b-Math.max(b*a,0))/this._getVisibleDatasetWeightTotal();this.offsetX=v*b,this.offsetY=y*b,o.total=this.calculateTotal(),this.outerRadius=b-w*this._getRingWeightOffset(this.index),this.innerRadius=Math.max(this.outerRadius-w*l,0),this.updateElements(r,0,r.length,t)}_circumference(t,n){const e=this.options,o=this._cachedMeta,r=this._getCircumference();return n&&e.animation.animateRotate||!this.chart.getDataVisibility(t)||null===o._parsed[t]||o.data[t].hidden?0:this.calculateCircumference(o._parsed[t]*r/S)}updateElements(t,n,e,o){const r="reset"===o,i=this.chart,s=i.chartArea,a=i.options.animation,u=(s.left+s.right)/2,c=(s.top+s.bottom)/2,l=r&&a.animateScale,h=l?0:this.innerRadius,p=l?0:this.outerRadius,{sharedOptions:f,includeOptions:_}=this._getSharedOptions(n,o);let d,v=this._getRotation();for(d=0;d0&&!isNaN(t)?S*(Math.abs(t)/n):0}getLabelAndValue(t){const n=this._cachedMeta,e=this.chart,o=e.data.labels||[],r=re(n._parsed[t],e.options.locale);return{label:o[t]||"",value:r}}getMaxBorderWidth(t){let n=0;const e=this.chart;let o,r,i,s,a;if(!t)for(o=0,r=e.data.datasets.length;o"spacing"!==t,_indexable:t=>"spacing"!==t},Re.overrides={aspectRatio:1,plugins:{legend:{labels:{generateLabels(t){const n=t.data;if(n.labels.length&&n.datasets.length){const{labels:{pointStyle:e}}=t.legend.options;return n.labels.map(((n,o)=>{const r=t.getDatasetMeta(0).controller.getStyle(o);return{text:n,fillStyle:r.backgroundColor,strokeStyle:r.borderColor,lineWidth:r.borderWidth,pointStyle:e,hidden:!t.getDataVisibility(o),index:o}}))}return[]}},onClick(t,n,e){e.chart.toggleDataVisibility(n.index),e.chart.update()}},tooltip:{callbacks:{title:()=>"",label(t){let n=t.label;const e=": "+t.formattedValue;return s(n)?(n=n.slice(),n[0]+=e):n+=e,n}}}}};class He extends Pe{initialize(){this.enableOptionSharing=!0,this.supportsDecimation=!0,super.initialize()}update(t){const n=this._cachedMeta,{dataset:e,data:o=[],_dataset:r}=n,i=this.chart._animationsDisabled;let{start:s,count:a}=at(n,o,i);this._drawStart=s,this._drawCount=a,ut(n)&&(s=0,a=o.length),e._chart=this.chart,e._datasetIndex=this.index,e._decimated=!!r._decimated,e.points=o;const u=this.resolveDatasetElementOptions(t);this.options.showLine||(u.borderWidth=0),u.segment=this.options.segment,this.updateElement(e,void 0,{animated:!i,options:u},t),this.updateElements(o,s,a,t)}updateElements(t,n,e,o){const r="reset"===o,{iScale:s,vScale:a,_stacked:u,_dataset:c}=this._cachedMeta,{sharedOptions:l,includeOptions:h}=this._getSharedOptions(n,o),p=s.axis,f=a.axis,{spanGaps:_,segment:d}=this.options,v=B(_)?_:Number.POSITIVE_INFINITY,y=this.chart._animationsDisabled||r||"none"===o;let m=n>0&&this.getParsed(n-1);for(let _=n;_0&&Math.abs(e[p]-m[p])>v,d&&(g.parsed=e,g.raw=c.data[_]),h&&(g.options=l||this.resolveDataElementOptions(_,n.active?"active":o)),y||this.updateElement(n,_,g,o),m=e}}getMaxOverflow(){const t=this._cachedMeta,n=t.dataset,e=n.options&&n.options.borderWidth||0,o=t.data||[];if(!o.length)return e;const r=o[0].size(this.resolveDataElementOptions(0)),i=o[o.length-1].size(this.resolveDataElementOptions(o.length-1));return Math.max(e,r,i)/2}draw(){const t=this._cachedMeta;t.dataset.updateControlPoints(this.chart.chartArea,t.iScale.axis),super.draw()}}He.id="line",He.defaults={datasetElementType:"line",dataElementType:"point",showLine:!0,spanGaps:!1},He.overrides={scales:{_index_:{type:"category"},_value_:{type:"linear"}}};class Ue extends Pe{constructor(t,n){super(t,n),this.innerRadius=void 0,this.outerRadius=void 0}getLabelAndValue(t){const n=this._cachedMeta,e=this.chart,o=e.data.labels||[],r=re(n._parsed[t].r,e.options.locale);return{label:o[t]||"",value:r}}parseObjectData(t,n,e,o){return Dn.bind(this)(t,n,e,o)}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(((t,e)=>{const o=this.getParsed(e).r;!isNaN(o)&&this.chart.getDataVisibility(e)&&(on.max&&(n.max=o))})),n}_updateRadius(){const t=this.chart,n=t.chartArea,e=t.options,o=Math.min(n.right-n.left,n.bottom-n.top),r=Math.max(o/2,0),i=(r-Math.max(e.cutoutPercentage?r/100*e.cutoutPercentage:1,0))/t.getVisibleDatasetCount();this.outerRadius=r-i*this.index,this.innerRadius=this.outerRadius-i}updateElements(t,n,e,o){const r="reset"===o,i=this.chart,s=i.options.animation,a=this._cachedMeta.rScale,u=a.xCenter,c=a.yCenter,l=a.getIndexAngle(0)-.5*z;let h,p=l;const f=360/this.countVisibleElements();for(h=0;h{!isNaN(this.getParsed(e).r)&&this.chart.getDataVisibility(e)&&n++})),n}_computeAngle(t,n,e){return this.chart.getDataVisibility(t)?F(this.resolveDataElementOptions(t,n).angle||e):0}}Ue.id="polarArea",Ue.defaults={dataElementType:"arc",animation:{animateRotate:!0,animateScale:!0},animations:{numbers:{type:"number",properties:["x","y","startAngle","endAngle","innerRadius","outerRadius"]}},indexAxis:"r",startAngle:0},Ue.overrides={aspectRatio:1,plugins:{legend:{labels:{generateLabels(t){const n=t.data;if(n.labels.length&&n.datasets.length){const{labels:{pointStyle:e}}=t.legend.options;return n.labels.map(((n,o)=>{const r=t.getDatasetMeta(0).controller.getStyle(o);return{text:n,fillStyle:r.backgroundColor,strokeStyle:r.borderColor,lineWidth:r.borderWidth,pointStyle:e,hidden:!t.getDataVisibility(o),index:o}}))}return[]}},onClick(t,n,e){e.chart.toggleDataVisibility(n.index),e.chart.update()}},tooltip:{callbacks:{title:()=>"",label:t=>t.chart.data.labels[t.dataIndex]+": "+t.formattedValue}}},scales:{r:{type:"radialLinear",angleLines:{display:!1},beginAtZero:!0,grid:{circular:!0},pointLabels:{display:!1},startAngle:0}}};class Ve extends Re{}Ve.id="pie",Ve.defaults={cutout:0,rotation:0,circumference:360,radius:"100%"};class We extends Pe{getLabelAndValue(t){const n=this._cachedMeta.vScale,e=this.getParsed(t);return{label:n.getLabels()[t],value:""+n.getLabelForValue(e[n.axis])}}parseObjectData(t,n,e,o){return Dn.bind(this)(t,n,e,o)}update(t){const n=this._cachedMeta,e=n.dataset,o=n.data||[],r=n.iScale.getLabels();if(e.points=o,"resize"!==t){const n=this.resolveDatasetElementOptions(t);this.options.showLine||(n.borderWidth=0);const i={_loop:!0,_fullLoop:r.length===o.length,options:n};this.updateElement(e,void 0,i,t)}this.updateElements(o,0,o.length,t)}updateElements(t,n,e,o){const r=this._cachedMeta.rScale,i="reset"===o;for(let s=n;s{o[t]=e[t]&&e[t].active()?e[t]._to:this[t]})),o}}Je.defaults={},Je.defaultRoutes=void 0;const Ke={values:t=>s(t)?t:""+t,numeric(t,n,e){if(0===t)return"0";const o=this.chart.options.locale;let r,i=t;if(e.length>1){const n=Math.max(Math.abs(e[0].value),Math.abs(e[e.length-1].value));(n<1e-4||n>1e15)&&(r="scientific"),i=function(t,n){let e=n.length>3?n[2].value-n[1].value:n[1].value-n[0].value;return Math.abs(e)>=1&&t!==Math.floor(t)&&(e=t-Math.floor(t)),e}(t,e)}const s=I(Math.abs(i)),a=Math.max(Math.min(-1*Math.floor(s),20),0),u={notation:r,minimumFractionDigits:a,maximumFractionDigits:a};return Object.assign(u,this.options.ticks.format),re(t,o,u)},logarithmic(t,n,e){if(0===t)return"0";const o=t/Math.pow(10,Math.floor(I(t)));return 1===o||2===o||5===o?Ke.numeric.call(this,t,n,e):""}};var Ge={formatters:Ke};function Ye(t,n,e,o,r){const i=l(o,0),s=Math.min(l(r,t.length),t.length);let a,u,c,h=0;for(e=Math.ceil(e),r&&(a=r-o,e=a/Math.floor(a/e)),c=i;c<0;)h++,c=Math.round(i+h*e);for(u=Math.max(i,0);un.lineWidth,tickColor:(t,n)=>n.color,offset:!1,borderDash:[],borderDashOffset:0,borderWidth: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:Ge.formatters.values,minor:{},major:{},align:"center",crossAlign:"near",showLabelBackdrop:!1,backdropColor:"rgba(255, 255, 255, 0.75)",backdropPadding:2}}),Xt.route("scale.ticks","color","","color"),Xt.route("scale.grid","color","","borderColor"),Xt.route("scale.grid","borderColor","","borderColor"),Xt.route("scale.title","color","","color"),Xt.describe("scale",{_fallback:!1,_scriptable:t=>!t.startsWith("before")&&!t.startsWith("after")&&"callback"!==t&&"parser"!==t,_indexable:t=>"borderDash"!==t&&"tickBorderDash"!==t}),Xt.describe("scales",{_fallback:"scale"}),Xt.describe("scale.ticks",{_scriptable:t=>"backdropPadding"!==t&&"callback"!==t,_indexable:t=>"backdropPadding"!==t});const Xe=(t,n,e)=>"top"===n||"left"===n?t[n]+e:t[n]-e;function Ze(t,n){const e=[],o=t.length/n,r=t.length;let i=0;for(;is+a)))return c}function to(t){return t.drawTicks?t.tickLength:0}function no(t,n){if(!t.display)return 0;const e=$n(t.font,n),o=gn(t.padding);return(s(t.text)?t.text.length:1)*e.lineHeight+o.height}function eo(t,n,e){let o=it(t);return(e&&"right"!==n||!e&&"right"===n)&&(o=(t=>"left"===t?"right":"right"===t?"left":t)(o)),o}class oo extends Je{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:e,_suggestedMax:o}=this;return t=c(t,Number.POSITIVE_INFINITY),n=c(n,Number.NEGATIVE_INFINITY),e=c(e,Number.POSITIVE_INFINITY),o=c(o,Number.NEGATIVE_INFINITY),{min:c(t,e),max:c(n,o),minDefined:u(t),maxDefined:u(n)}}getMinMax(t){let n,{min:e,max:o,minDefined:r,maxDefined:i}=this.getUserBounds();if(r&&i)return{min:e,max:o};const s=this.getMatchingVisibleMetas();for(let a=0,u=s.length;ao?o:e,o=r&&e>o?e:o,{min:c(e,c(o,e)),max:c(o,c(e,o))}}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||[]}beforeLayout(){this._cache={},this._dataLimitsCached=!1}beforeUpdate(){p(this.options.beforeUpdate,[this])}update(t,n,e){const{beginAtZero:o,grace:r,ticks:s}=this.options,a=s.sampleSize;this.beforeUpdate(),this.maxWidth=t,this.maxHeight=n,this._margins=e=Object.assign({left:0,right:0,top:0,bottom:0},e),this.ticks=null,this._labelSizes=null,this._gridLineItems=null,this._labelItems=null,this.beforeSetDimensions(),this.setDimensions(),this.afterSetDimensions(),this._maxLength=this.isHorizontal()?this.width+e.left+e.right:this.height+e.top+e.bottom,this._dataLimitsCached||(this.beforeDataLimits(),this.determineDataLimits(),this.afterDataLimits(),this._range=function(t,n,e){const{min:o,max:r}=t,i=h(n,(r-o)/2),s=(t,n)=>e&&0===t?0:t+n;return{min:s(o,-Math.abs(i)),max:s(r,i)}}(this,r,o),this._dataLimitsCached=!0),this.beforeBuildTicks(),this.ticks=this.buildTicks()||[],this.afterBuildTicks();const u=ao)return function(t,n,e,o){let r,i=0,s=e[0];for(o=Math.ceil(o),r=0;rt-n)).pop(),n}(o);for(let t=0,n=i.length-1;tr)return n}return Math.max(r,1)}(r,n,o);if(s>0){let t,e;const o=s>1?Math.round((u-a)/(s-1)):null;for(Ye(n,c,l,i(o)?0:a-o,a),t=0,e=s-1;t=r||e<=1||!this.isHorizontal())return void(this.labelRotation=o);const c=this._getLabelSizes(),l=c.widest.width,h=c.highest.height,p=G(this.chart.width-l,0,this.maxWidth);i=t.offset?this.maxWidth/e:p/(e-1),l+6>i&&(i=p/(e-(t.offset?.5:1)),s=this.maxHeight-to(t.grid)-n.padding-no(t.title,this.chart.options.font),a=Math.sqrt(l*l+h*h),u=R(Math.min(Math.asin(G((c.highest.height+6)/i,-1,1)),Math.asin(G(s/a,-1,1))-Math.asin(G(h/a,-1,1)))),u=Math.max(o,Math.min(r,u))),this.labelRotation=u}afterCalculateLabelRotation(){p(this.options.afterCalculateLabelRotation,[this])}afterAutoSkip(){}beforeFit(){p(this.options.beforeFit,[this])}fit(){const t={width:0,height:0},{chart:n,options:{ticks:e,title:o,grid:r}}=this,i=this._isVisible(),s=this.isHorizontal();if(i){const i=no(o,n.options.font);if(s?(t.width=this.maxWidth,t.height=to(r)+i):(t.height=this.maxHeight,t.width=to(r)+i),e.display&&this.ticks.length){const{first:n,last:o,widest:r,highest:i}=this._getLabelSizes(),a=2*e.padding,u=F(this.labelRotation),c=Math.cos(u),l=Math.sin(u);if(s){const n=e.mirror?0:l*r.width+c*i.height;t.height=Math.min(this.maxHeight,t.height+n+a)}else{const n=e.mirror?0:c*r.width+l*i.height;t.width=Math.min(this.maxWidth,t.width+n+a)}this._calculatePadding(n,o,l,c)}}this._handleMargins(),s?(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,e,o){const{ticks:{align:r,padding:i},position:s}=this.options,a=0!==this.labelRotation,u="top"!==s&&"x"===this.axis;if(this.isHorizontal()){const s=this.getPixelForTick(0)-this.left,c=this.right-this.getPixelForTick(this.ticks.length-1);let l=0,h=0;a?u?(l=o*t.width,h=e*n.height):(l=e*t.height,h=o*n.width):"start"===r?h=n.width:"end"===r?l=t.width:"inner"!==r&&(l=t.width/2,h=n.width/2),this.paddingLeft=Math.max((l-s+i)*this.width/(this.width-s),0),this.paddingRight=Math.max((h-c+i)*this.width/(this.width-c),0)}else{let e=n.height/2,o=t.height/2;"start"===r?(e=0,o=t.height):"end"===r&&(e=n.height,o=0),this.paddingTop=e+i,this.paddingBottom=o+i}}_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(){p(this.options.afterFit,[this])}isHorizontal(){const{axis:t,position:n}=this.options;return"top"===n||"bottom"===n||"x"===t}isFullSize(){return this.options.fullSize}_convertTicksToLabels(t){let n,e;for(this.beforeTickToLabelConversion(),this.generateTickLabels(t),n=0,e=t.length;n{const e=t.gc,o=e.length/2;let r;if(o>n){for(r=0;r({width:r[t]||0,height:a[t]||0});return{first:k(0),last:k(n-1),widest:k(w),highest:k(x),widths:r,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 G(this._alignToPixels?tn(this.chart,n,0):n,-32768,32767)}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&&ts*o?s/e:a/o:a*o0}_computeGridLineItems(t){const n=this.axis,e=this.chart,o=this.options,{grid:r,position:i}=o,s=r.offset,u=this.isHorizontal(),c=this.ticks.length+(s?1:0),h=to(r),p=[],f=r.setContext(this.getContext()),_=f.drawBorder?f.borderWidth:0,d=_/2,v=function(t){return tn(e,t,_)};let y,m,g,$,b,w,x,k,j,C,z,S;if("top"===i)y=v(this.bottom),w=this.bottom-h,k=y-d,C=v(t.top)+d,S=t.bottom;else if("bottom"===i)y=v(this.top),C=t.top,S=v(t.bottom)-d,w=y+d,k=this.top+h;else if("left"===i)y=v(this.right),b=this.right-h,x=y-d,j=v(t.left)+d,z=t.right;else if("right"===i)y=v(this.left),j=t.left,z=v(t.right)-d,b=y+d,x=this.left+h;else if("x"===n){if("center"===i)y=v((t.top+t.bottom)/2+.5);else if(a(i)){const t=Object.keys(i)[0],n=i[t];y=v(this.chart.scales[t].getPixelForValue(n))}C=t.top,S=t.bottom,w=y+d,k=w+h}else if("y"===n){if("center"===i)y=v((t.left+t.right)/2);else if(a(i)){const t=Object.keys(i)[0],n=i[t];y=v(this.chart.scales[t].getPixelForValue(n))}b=y-d,x=b-h,j=t.left,z=t.right}const q=l(o.ticks.maxTicksLimit,c),O=Math.max(1,Math.ceil(c/q));for(m=0;mn.value===t));return e>=0?n.setContext(this.getContext(e)).lineWidth:0}drawGrid(t){const n=this.options.grid,e=this.ctx,o=this._gridLineItems||(this._gridLineItems=this._computeGridLineItems(t));let r,i;const s=(t,n,o)=>{o.width&&o.color&&(e.save(),e.lineWidth=o.width,e.strokeStyle=o.color,e.setLineDash(o.borderDash||[]),e.lineDashOffset=o.borderDashOffset,e.beginPath(),e.moveTo(t.x,t.y),e.lineTo(n.x,n.y),e.stroke(),e.restore())};if(n.display)for(r=0,i=o.length;r{this.drawBackground(),this.drawGrid(t),this.drawTitle()}},{z:e+1,draw:()=>{this.drawBorder()}},{z:n,draw:t=>{this.drawLabels(t)}}]:[{z:n,draw:t=>{this.draw(t)}}]}getMatchingVisibleMetas(t){const n=this.chart.getSortedVisibleDatasetMetas(),e=this.axis+"AxisID",o=[];let r,i;for(r=0,i=n.length;r{const o=e.split("."),r=o.pop(),i=[t].concat(o).join("."),s=n[e].split("."),a=s.pop(),u=s.join(".");Xt.route(i,r,u,a)}))}(n,t.defaultRoutes),t.descriptors&&Xt.describe(n,t.descriptors)}(t,i,e),this.override&&Xt.override(t.id,t.overrides)),i}get(t){return this.items[t]}unregister(t){const n=this.items,e=t.id,o=this.scope;e in n&&delete n[e],o&&e in Xt[o]&&(delete Xt[o][e],this.override&&delete Jt[e])}}var io=new class{constructor(){this.controllers=new ro(Pe,"datasets",!0),this.elements=new ro(Je,"elements"),this.plugins=new ro(Object,"plugins"),this.scales=new ro(oo,"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,e){[...n].forEach((n=>{const o=e||this._getRegistryForType(n);e||o.isForType(n)||o===this.plugins&&n.id?this._exec(t,o,n):f(n,(n=>{const o=e||this._getRegistryForType(n);this._exec(t,o,n)}))}))}_exec(t,n,e){const o=x(t);p(e["before"+o],[],e),n[t](e),p(e["after"+o],[],e)}_getRegistryForType(t){for(let n=0;n0&&this.getParsed(n-1);for(let l=n;l0&&Math.abs(e[f]-g[f])>y,v&&(d.parsed=e,d.raw=c.data[l]),p&&(d.options=h||this.resolveDataElementOptions(l,n.active?"active":o)),m||this.updateElement(n,l,d,o),g=e}this.updateSharedOptions(h,o,l)}getMaxOverflow(){const t=this._cachedMeta,n=t.data||[];if(!this.options.showLine){let t=0;for(let e=n.length-1;e>=0;--e)t=Math.max(t,n[e].size(this.resolveDataElementOptions(e))/2);return t>0&&t}const e=t.dataset,o=e.options&&e.options.borderWidth||0;if(!n.length)return o;const r=n[0].size(this.resolveDataElementOptions(0)),i=n[n.length-1].size(this.resolveDataElementOptions(n.length-1));return Math.max(o,r,i)/2}}so.id="scatter",so.defaults={datasetElementType:!1,dataElementType:"point",showLine:!1,fill:!1},so.overrides={interaction:{mode:"point"},plugins:{tooltip:{callbacks:{title:()=>"",label:t=>"("+t.label+", "+t.formattedValue+")"}}},scales:{x:{type:"linear"},y:{type:"linear"}}};var ao=Object.freeze({__proto__:null,BarController:Ne,BubbleController:Fe,DoughnutController:Re,LineController:He,PolarAreaController:Ue,PieController:Ve,RadarController:We,ScatterController:so});function uo(){throw new Error("This method is not implemented: Check that a complete date adapter is provided.")}class co{constructor(t){this.options=t||{}}init(t){}formats(){return uo()}parse(t,n){return uo()}format(t,n){return uo()}add(t,n,e){return uo()}diff(t,n,e){return uo()}startOf(t,n,e){return uo()}endOf(t,n){return uo()}}co.override=function(t){Object.assign(co.prototype,t)};var lo={_date:co};function ho(t,n,e,o){const{controller:r,data:i,_sorted:s}=t,a=r._cachedMeta.iScale;if(a&&n===a.axis&&"r"!==n&&s&&i.length){const t=a._reversePixels?Q:Z;if(!o)return t(i,n,e);if(r._sharedOptions){const o=i[0],r="function"==typeof o.getRange&&o.getRange(n);if(r){const o=t(i,n,e-r),s=t(i,n,e+r);return{lo:o.lo,hi:s.hi}}}}return{lo:0,hi:i.length-1}}function po(t,n,e,o,r){const i=t.getSortedVisibleDatasetMetas(),s=e[n];for(let t=0,e=i.length;t{t[s](n[e],r)&&(i.push({element:t,datasetIndex:o,index:u}),a=a||t.inRange(n.x,n.y,r))})),o&&!a?[]:i}var yo={evaluateInteractionItems:po,modes:{index(t,n,e,o){const r=Gn(n,t),i=e.axis||"x",s=e.includeInvisible||!1,a=e.intersect?fo(t,r,i,o,s):_o(t,r,i,!1,o,s),u=[];return a.length?(t.getSortedVisibleDatasetMetas().forEach((t=>{const n=a[0].index,e=t.data[n];e&&!e.skip&&u.push({element:e,datasetIndex:t.index,index:n})})),u):[]},dataset(t,n,e,o){const r=Gn(n,t),i=e.axis||"xy",s=e.includeInvisible||!1;let a=e.intersect?fo(t,r,i,o,s):_o(t,r,i,!1,o,s);if(a.length>0){const n=a[0].datasetIndex,e=t.getDatasetMeta(n).data;a=[];for(let t=0;tfo(t,Gn(n,t),e.axis||"xy",o,e.includeInvisible||!1),nearest(t,n,e,o){const r=Gn(n,t),i=e.axis||"xy",s=e.includeInvisible||!1;return _o(t,r,i,e.intersect,o,s)},x:(t,n,e,o)=>vo(t,Gn(n,t),"x",e.intersect,o),y:(t,n,e,o)=>vo(t,Gn(n,t),"y",e.intersect,o)}};const mo=["left","top","right","bottom"];function go(t,n){return t.filter((t=>t.pos===n))}function $o(t,n){return t.filter((t=>-1===mo.indexOf(t.pos)&&t.box.axis===n))}function bo(t,n){return t.sort(((t,e)=>{const o=n?e:t,r=n?t:e;return o.weight===r.weight?o.index-r.index:o.weight-r.weight}))}function wo(t,n,e,o){return Math.max(t[e],n[e])+Math.max(t[o],n[o])}function xo(t,n){t.top=Math.max(t.top,n.top),t.left=Math.max(t.left,n.left),t.bottom=Math.max(t.bottom,n.bottom),t.right=Math.max(t.right,n.right)}function ko(t,n,e,o){const{pos:r,box:i}=e,s=t.maxPadding;if(!a(r)){e.size&&(t[r]-=e.size);const n=o[e.stack]||{size:0,count:1};n.size=Math.max(n.size,e.horizontal?i.height:i.width),e.size=n.size/n.count,t[r]+=e.size}i.getPadding&&xo(s,i.getPadding());const u=Math.max(0,n.outerWidth-wo(s,t,"left","right")),c=Math.max(0,n.outerHeight-wo(s,t,"top","bottom")),l=u!==t.w,h=c!==t.h;return t.w=u,t.h=c,e.horizontal?{same:l,other:h}:{same:h,other:l}}function jo(t,n){const e=n.maxPadding;return function(t){const o={left:0,top:0,right:0,bottom:0};return t.forEach((t=>{o[t]=Math.max(n[t],e[t])})),o}(t?["left","right"]:["top","bottom"])}function Co(t,n,e,o){const r=[];let i,s,a,u,c,l;for(i=0,s=t.length,c=0;it.box.fullSize)),!0),o=bo(go(n,"left"),!0),r=bo(go(n,"right")),i=bo(go(n,"top"),!0),s=bo(go(n,"bottom")),a=$o(n,"x"),u=$o(n,"y");return{fullSize:e,leftAndTop:o.concat(i),rightAndBottom:r.concat(u).concat(s).concat(a),chartArea:go(n,"chartArea"),vertical:o.concat(r).concat(u),horizontal:i.concat(s).concat(a)}}(t.boxes),u=a.vertical,c=a.horizontal;f(t.boxes,(t=>{"function"==typeof t.beforeLayout&&t.beforeLayout()}));const l=u.reduce(((t,n)=>n.box.options&&!1===n.box.options.display?t:t+1),0)||1,h=Object.freeze({outerWidth:n,outerHeight:e,padding:r,availableWidth:i,availableHeight:s,vBoxMaxWidth:i/2/l,hBoxMaxHeight:s/2}),p=Object.assign({},r);xo(p,gn(o));const _=Object.assign({maxPadding:p,w:i,h:s,x:r.left,y:r.top},r),d=function(t,n){const e=function(t){const n={};for(const e of t){const{stack:t,pos:o,stackWeight:r}=e;if(!t||!mo.includes(o))continue;const i=n[t]||(n[t]={count:0,placed:0,weight:0,size:0});i.count++,i.weight+=r}return n}(t),{vBoxMaxWidth:o,hBoxMaxHeight:r}=n;let i,s,a;for(i=0,s=t.length;i{const e=n.box;Object.assign(e,t.chartArea),e.update(_.w,_.h,{left:0,top:0,right:0,bottom:0})}))}};class Oo{acquireContext(t,n){}releaseContext(t){return!1}addEventListener(t,n,e){}removeEventListener(t,n,e){}getDevicePixelRatio(){return 1}getMaximumSize(t,n,e,o){return n=Math.max(0,n||t.width),e=e||t.height,{width:n,height:Math.max(0,o?Math.floor(n/o):e)}}isAttached(t){return!0}updateConfig(t){}}class Po extends Oo{acquireContext(t){return t&&t.getContext&&t.getContext("2d")||null}updateConfig(t){t.options.animation=!1}}const Mo={touchstart:"mousedown",touchmove:"mousemove",touchend:"mouseup",pointerenter:"mouseenter",pointerdown:"mousedown",pointermove:"mousemove",pointerup:"mouseup",pointerleave:"mouseout",pointerout:"mouseout"},Ao=t=>null===t||""===t,Eo=!!Zn&&{passive:!0};function Io(t,n,e){t.canvas.removeEventListener(n,e,Eo)}function Do(t,n){for(const e of t)if(e===n||e.contains(n))return!0}function To(t,n,e){const o=t.canvas,r=new MutationObserver((t=>{let n=!1;for(const e of t)n=n||Do(e.addedNodes,o),n=n&&!Do(e.removedNodes,o);n&&e()}));return r.observe(document,{childList:!0,subtree:!0}),r}function Bo(t,n,e){const o=t.canvas,r=new MutationObserver((t=>{let n=!1;for(const e of t)n=n||Do(e.removedNodes,o),n=n&&!Do(e.addedNodes,o);n&&e()}));return r.observe(document,{childList:!0,subtree:!0}),r}const Lo=new Map;let No=0;function Fo(){const t=window.devicePixelRatio;t!==No&&(No=t,Lo.forEach(((n,e)=>{e.currentDevicePixelRatio!==t&&n()})))}function Ro(t,n,e){const o=t.canvas,r=o&&Un(o);if(!r)return;const i=rt(((t,n)=>{const o=r.clientWidth;e(t,n),o{const n=t[0],e=n.contentRect.width,o=n.contentRect.height;0===e&&0===o||i(e,o)}));return s.observe(r),function(t,n){Lo.size||window.addEventListener("resize",Fo),Lo.set(t,n)}(t,i),s}function Ho(t,n,e){e&&e.disconnect(),"resize"===n&&function(t){Lo.delete(t),Lo.size||window.removeEventListener("resize",Fo)}(t)}function Uo(t,n,e){const o=t.canvas,r=rt((n=>{null!==t.ctx&&e(function(t,n){const e=Mo[t.type]||t.type,{x:o,y:r}=Gn(t,n);return{type:e,chart:n,native:t,x:void 0!==o?o:null,y:void 0!==r?r:null}}(n,t))}),t,(t=>{const n=t[0];return[n,n.offsetX,n.offsetY]}));return function(t,n,e){t.addEventListener(n,e,Eo)}(o,n,r),r}class Vo extends Oo{acquireContext(t,n){const e=t&&t.getContext&&t.getContext("2d");return e&&e.canvas===t?(function(t,n){const e=t.style,o=t.getAttribute("height"),r=t.getAttribute("width");if(t.$chartjs={initial:{height:o,width:r,style:{display:e.display,height:e.height,width:e.width}}},e.display=e.display||"block",e.boxSizing=e.boxSizing||"border-box",Ao(r)){const n=Qn(t,"width");void 0!==n&&(t.width=n)}if(Ao(o))if(""===t.style.height)t.height=t.width/(n||2);else{const n=Qn(t,"height");void 0!==n&&(t.height=n)}}(t,n),e):null}releaseContext(t){const n=t.canvas;if(!n.$chartjs)return!1;const e=n.$chartjs.initial;["height","width"].forEach((t=>{const o=e[t];i(o)?n.removeAttribute(t):n.setAttribute(t,o)}));const o=e.style||{};return Object.keys(o).forEach((t=>{n.style[t]=o[t]})),n.width=n.width,delete n.$chartjs,!0}addEventListener(t,n,e){this.removeEventListener(t,n);const o=t.$proxies||(t.$proxies={}),r={attach:To,detach:Bo,resize:Ro}[n]||Uo;o[n]=r(t,n,e)}removeEventListener(t,n){const e=t.$proxies||(t.$proxies={}),o=e[n];o&&(({attach:Ho,detach:Ho,resize:Ho}[n]||Io)(t,n,o),e[n]=void 0)}getDevicePixelRatio(){return window.devicePixelRatio}getMaximumSize(t,n,e,o){return function(t,n,e,o){const r=Wn(t),i=Kn(r,"margin"),s=Vn(r.maxWidth,t,"clientWidth")||O,a=Vn(r.maxHeight,t,"clientHeight")||O,u=function(t,n,e){let o,r;if(void 0===n||void 0===e){const i=Un(t);if(i){const t=i.getBoundingClientRect(),s=Wn(i),a=Kn(s,"border","width"),u=Kn(s,"padding");n=t.width-u.width-a.width,e=t.height-u.height-a.height,o=Vn(s.maxWidth,i,"clientWidth"),r=Vn(s.maxHeight,i,"clientHeight")}else n=t.clientWidth,e=t.clientHeight}return{width:n,height:e,maxWidth:o||O,maxHeight:r||O}}(t,n,e);let{width:c,height:l}=u;if("content-box"===r.boxSizing){const t=Kn(r,"border","width"),n=Kn(r,"padding");c-=n.width+t.width,l-=n.height+t.height}return c=Math.max(0,c-i.width),l=Math.max(0,o?Math.floor(c/o):l-i.height),c=Yn(Math.min(c,s,u.maxWidth)),l=Yn(Math.min(l,a,u.maxHeight)),c&&!l&&(l=Yn(c/2)),{width:c,height:l}}(t,n,e,o)}isAttached(t){const n=Un(t);return!(!n||!n.isConnected)}}function Wo(t){return!Hn()||"undefined"!=typeof OffscreenCanvas&&t instanceof OffscreenCanvas?Po:Vo}class Jo{constructor(){this._init=[]}notify(t,n,e,o){"beforeInit"===n&&(this._init=this._createDescriptors(t,!0),this._notify(this._init,t,"install"));const r=o?this._descriptors(t).filter(o):this._descriptors(t),i=this._notify(r,t,n,e);return"afterDestroy"===n&&(this._notify(r,t,"stop"),this._notify(this._init,t,"uninstall")),i}_notify(t,n,e,o){o=o||{};for(const r of t){const t=r.plugin;if(!1===p(t[e],[n,o,r.options],t)&&o.cancelable)return!1}return!0}invalidate(){i(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 e=t&&t.config,o=l(e.options&&e.options.plugins,{}),r=function(t){const n={},e=[],o=Object.keys(io.plugins.items);for(let t=0;tt.filter((t=>!n.some((n=>t.plugin.id===n.plugin.id))));this._notify(o(n,e),t,"stop"),this._notify(o(e,n),t,"start")}}function Ko(t,n){return n||!1!==t?!0===t?{}:t:null}function Go(t,{plugin:n,local:e},o,r){const i=t.pluginScopeKeys(n),s=t.getOptionScopes(o,i);return e&&n.defaults&&s.push(n.defaults),t.createResolver(s,r,[""],{scriptable:!1,indexable:!1,allKeys:!0})}function Yo(t,n){const e=Xt.datasets[t]||{};return((n.datasets||{})[t]||{}).indexAxis||n.indexAxis||e.indexAxis||"x"}function Xo(t,n){return"x"===t||"y"===t?t:n.axis||("top"===(e=n.position)||"bottom"===e?"x":"left"===e||"right"===e?"y":void 0)||t.charAt(0).toLowerCase();var e}function Zo(t){const n=t.options||(t.options={});n.plugins=l(n.plugins,{}),n.scales=function(t,n){const e=Jt[t.type]||{scales:{}},o=n.scales||{},r=Yo(t.type,n),i=Object.create(null),s=Object.create(null);return Object.keys(o).forEach((t=>{const n=o[t];if(!a(n))return console.error(`Invalid scale configuration for scale: ${t}`);if(n._proxy)return console.warn(`Ignoring resolver passed as options for scale: ${t}`);const u=Xo(t,n),c=function(t,n){return t===n?"_index_":"_value_"}(u,r),l=e.scales||{};i[u]=i[u]||t,s[t]=g(Object.create(null),[{axis:u},n,l[u],l[c]])})),t.data.datasets.forEach((e=>{const r=e.type||t.type,a=e.indexAxis||Yo(r,n),u=(Jt[r]||{}).scales||{};Object.keys(u).forEach((t=>{const n=function(t,n){let e=t;return"_index_"===t?e=n:"_value_"===t&&(e="x"===n?"y":"x"),e}(t,a),r=e[n+"AxisID"]||i[n]||n;s[r]=s[r]||Object.create(null),g(s[r],[{axis:n},o[r],u[t]])}))})),Object.keys(s).forEach((t=>{const n=s[t];g(n,[Xt.scales[n.type],Xt.scale])})),s}(t,n)}function Qo(t){return(t=t||{}).datasets=t.datasets||[],t.labels=t.labels||[],t}const tr=new Map,nr=new Set;function er(t,n){let e=tr.get(t);return e||(e=n(),tr.set(t,e),nr.add(e)),e}const or=(t,n,e)=>{const o=w(n,e);void 0!==o&&t.add(o)};class rr{constructor(t){this._config=function(t){return(t=t||{}).data=Qo(t.data),Zo(t),t}(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=Qo(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(),Zo(t)}clearCache(){this._scopeCache.clear(),this._resolverCache.clear()}datasetScopeKeys(t){return er(t,(()=>[[`datasets.${t}`,""]]))}datasetAnimationScopeKeys(t,n){return er(`${t}.transition.${n}`,(()=>[[`datasets.${t}.transitions.${n}`,`transitions.${n}`],[`datasets.${t}`,""]]))}datasetElementScopeKeys(t,n){return er(`${t}-${n}`,(()=>[[`datasets.${t}.elements.${n}`,`datasets.${t}`,`elements.${n}`,""]]))}pluginScopeKeys(t){const n=t.id;return er(`${this.type}-plugin-${n}`,(()=>[[`plugins.${n}`,...t.additionalOptionScopes||[]]]))}_cachedScopes(t,n){const e=this._scopeCache;let o=e.get(t);return o&&!n||(o=new Map,e.set(t,o)),o}getOptionScopes(t,n,e){const{options:o,type:r}=this,i=this._cachedScopes(t,e),s=i.get(n);if(s)return s;const a=new Set;n.forEach((n=>{t&&(a.add(t),n.forEach((n=>or(a,t,n)))),n.forEach((t=>or(a,o,t))),n.forEach((t=>or(a,Jt[r]||{},t))),n.forEach((t=>or(a,Xt,t))),n.forEach((t=>or(a,Kt,t)))}));const u=Array.from(a);return 0===u.length&&u.push(Object.create(null)),nr.has(n)&&i.set(n,u),u}chartOptionScopes(){const{options:t,type:n}=this;return[t,Jt[n]||{},Xt.datasets[n]||{},{type:n},Xt,Kt]}resolveNamedOptions(t,n,e,o=[""]){const r={$shared:!0},{resolver:i,subPrefixes:a}=ir(this._resolverCache,t,o);let u=i;(function(t,n){const{isScriptable:e,isIndexable:o}=jn(t);for(const r of n){const n=e(r),i=o(r),a=(i||n)&&t[r];if(n&&(j(a)||sr(a))||i&&s(a))return!0}return!1})(i,n)&&(r.$shared=!1,u=kn(i,e=j(e)?e():e,this.createResolver(t,e,a)));for(const t of n)r[t]=u[t];return r}createResolver(t,n,e=[""],o){const{resolver:r}=ir(this._resolverCache,t,e);return a(n)?kn(r,n,void 0,o):r}}function ir(t,n,e){let o=t.get(n);o||(o=new Map,t.set(n,o));const r=e.join();let i=o.get(r);return i||(i={resolver:xn(n,e),subPrefixes:e.filter((t=>!t.toLowerCase().includes("hover")))},o.set(r,i)),i}const sr=t=>a(t)&&Object.getOwnPropertyNames(t).reduce(((n,e)=>n||j(t[e])),!1),ar=["top","bottom","left","right","chartArea"];function ur(t,n){return"top"===t||"bottom"===t||-1===ar.indexOf(t)&&"x"===n}function cr(t,n){return function(e,o){return e[t]===o[t]?e[n]-o[n]:e[t]-o[t]}}function lr(t){const n=t.chart,e=n.options.animation;n.notifyPlugins("afterRender"),p(e&&e.onComplete,[t],n)}function hr(t){const n=t.chart,e=n.options.animation;p(e&&e.onProgress,[t],n)}function pr(t){return Hn()&&"string"==typeof t?t=document.getElementById(t):t&&t.length&&(t=t[0]),t&&t.canvas&&(t=t.canvas),t}const fr={},_r=t=>{const n=pr(t);return Object.values(fr).filter((t=>t.canvas===n)).pop()};function dr(t,n,e){const o=Object.keys(t);for(const r of o){const o=+r;if(o>=n){const i=t[r];delete t[r],(e>0||o>n)&&(t[o+e]=i)}}}class vr{constructor(t,n){const e=this.config=new rr(n),o=pr(t),i=_r(o);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 s=e.createResolver(e.chartOptionScopes(),this.getContext());this.platform=new(e.platform||Wo(o)),this.platform.updateConfig(e);const a=this.platform.acquireContext(o,s.aspectRatio),u=a&&a.canvas,c=u&&u.height,l=u&&u.width;this.id=r(),this.ctx=a,this.canvas=u,this.width=l,this.height=c,this._options=s,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 Jo,this.$proxies={},this._hiddenIndices={},this.attached=!1,this._animationsDisabled=void 0,this.$context=void 0,this._doResize=function(t,n){let e;return function(...o){return n?(clearTimeout(e),e=setTimeout(t,n,o)):t.apply(this,o),n}}((t=>this.update(t)),s.resizeDelay||0),this._dataChanges=[],fr[this.id]=this,a&&u?(_e.listen(this,"complete",lr),_e.listen(this,"progress",hr),this._initialize(),this.attached&&this.update()):console.error("Failed to create chart: can't acquire context from the given item")}get aspectRatio(){const{options:{aspectRatio:t,maintainAspectRatio:n},width:e,height:o,_aspectRatio:r}=this;return i(t)?n&&r?r:o?e/o: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}_initialize(){return this.notifyPlugins("beforeInit"),this.options.responsive?this.resize():Xn(this,this.options.devicePixelRatio),this.bindEvents(),this.notifyPlugins("afterInit"),this}clear(){return nn(this.canvas,this.ctx),this}stop(){return _e.stop(this),this}resize(t,n){_e.running(this)?this._resizeBeforeDraw={width:t,height:n}:this._resize(t,n)}_resize(t,n){const e=this.options,o=this.canvas,r=e.maintainAspectRatio&&this.aspectRatio,i=this.platform.getMaximumSize(o,t,n,r),s=e.devicePixelRatio||this.platform.getDevicePixelRatio(),a=this.width?"resize":"attach";this.width=i.width,this.height=i.height,this._aspectRatio=this.aspectRatio,Xn(this,s,!0)&&(this.notifyPlugins("resize",{size:i}),p(e.onResize,[this,i],this),this.attached&&this._doResize(a)&&this.render())}ensureScalesHaveIDs(){f(this.options.scales||{},((t,n)=>{t.id=n}))}buildOrUpdateScales(){const t=this.options,n=t.scales,e=this.scales,o=Object.keys(e).reduce(((t,n)=>(t[n]=!1,t)),{});let r=[];n&&(r=r.concat(Object.keys(n).map((t=>{const e=n[t],o=Xo(t,e),r="r"===o,i="x"===o;return{options:e,dposition:r?"chartArea":i?"bottom":"left",dtype:r?"radialLinear":i?"category":"linear"}})))),f(r,(n=>{const r=n.options,i=r.id,s=Xo(i,r),a=l(r.type,n.dtype);void 0!==r.position&&ur(r.position,s)===ur(n.dposition)||(r.position=n.dposition),o[i]=!0;let u=null;i in e&&e[i].type===a?u=e[i]:(u=new(io.getScale(a))({id:i,type:a,ctx:this.ctx,chart:this}),e[u.id]=u),u.init(r,t)})),f(o,((t,n)=>{t||delete e[n]})),f(e,(t=>{qo.configure(this,t,t.options),qo.addBox(this,t)}))}_updateMetasets(){const t=this._metasets,n=this.data.datasets.length,e=t.length;if(t.sort(((t,n)=>t.index-n.index)),e>n){for(let t=n;tn.length&&delete this._stacks,t.forEach(((t,e)=>{0===n.filter((n=>n===t._dataset)).length&&this._destroyDatasetMeta(e)}))}buildOrUpdateControllers(){const t=[],n=this.data.datasets;let e,o;for(this._removeUnreferencedMetasets(),e=0,o=n.length;e{this.getDatasetMeta(n).controller.reset()}),this)}reset(){this._resetElements(),this.notifyPlugins("reset")}update(t){const n=this.config;n.update();const e=this._options=n.createResolver(n.chartOptionScopes(),this.getContext()),o=this._animationsDisabled=!e.animation;if(this._updateScales(),this._checkEventBindings(),this._updateHiddenIndices(),this._plugins.invalidate(),!1===this.notifyPlugins("beforeUpdate",{mode:t,cancelable:!0}))return;const r=this.buildOrUpdateControllers();this.notifyPlugins("beforeElementsUpdate");let i=0;for(let t=0,n=this.data.datasets.length;t{t.reset()})),this._updateDatasets(t),this.notifyPlugins("afterUpdate",{mode:t}),this._layers.sort(cr("z","_idx"));const{_active:s,_lastEvent:a}=this;a?this._eventHandler(a,!0):s.length&&this._updateHoverStyles(s,s,!0),this.render()}_updateScales(){f(this.scales,(t=>{qo.removeBox(this,t)})),this.ensureScalesHaveIDs(),this.buildOrUpdateScales()}_checkEventBindings(){const t=this.options,n=new Set(Object.keys(this._listeners)),e=new Set(t.events);C(n,e)&&!!this._responsiveListeners===t.responsive||(this.unbindEvents(),this.bindEvents())}_updateHiddenIndices(){const{_hiddenIndices:t}=this,n=this._getUniformDataChanges()||[];for(const{method:e,start:o,count:r}of n)dr(t,o,"_removeElements"===e?-r:r)}_getUniformDataChanges(){const t=this._dataChanges;if(!t||!t.length)return;this._dataChanges=[];const n=this.data.datasets.length,e=n=>new Set(t.filter((t=>t[0]===n)).map(((t,n)=>n+","+t.splice(1).join(",")))),o=e(0);for(let t=1;tt.split(","))).map((t=>({method:t[1],start:+t[2],count:+t[3]})))}_updateLayout(t){if(!1===this.notifyPlugins("beforeLayout",{cancelable:!0}))return;qo.update(this,this.width,this.height,t);const n=this.chartArea,e=n.width<=0||n.height<=0;this._layers=[],f(this.boxes,(t=>{e&&"chartArea"===t.position||(t.configure&&t.configure(),this._layers.push(...t._layers()))}),this),this._layers.forEach(((t,n)=>{t._idx=n})),this.notifyPlugins("afterLayout")}_updateDatasets(t){if(!1!==this.notifyPlugins("beforeDatasetsUpdate",{mode:t,cancelable:!0})){for(let t=0,n=this.data.datasets.length;t=0;--n)this._drawDataset(t[n]);this.notifyPlugins("afterDatasetsDraw")}_drawDataset(t){const n=this.ctx,e=t._clip,o=!e.disabled,r=this.chartArea,i={meta:t,index:t.index,cancelable:!0};!1!==this.notifyPlugins("beforeDatasetDraw",i)&&(o&&sn(n,{left:!1===e.left?0:r.left-e.left,right:!1===e.right?this.width:r.right+e.right,top:!1===e.top?0:r.top-e.top,bottom:!1===e.bottom?this.height:r.bottom+e.bottom}),t.controller.draw(),o&&an(n),i.cancelable=!1,this.notifyPlugins("afterDatasetDraw",i))}isPointInArea(t){return rn(t,this.chartArea,this._minPadding)}getElementsAtEventForMode(t,n,e,o){const r=yo.modes[n];return"function"==typeof r?r(this,t,e,o):[]}getDatasetMeta(t){const n=this.data.datasets[t],e=this._metasets;let o=e.filter((t=>t&&t._dataset===n)).pop();return o||(o={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},e.push(o)),o}getContext(){return this.$context||(this.$context=wn(null,{chart:this,type:"chart"}))}getVisibleDatasetCount(){return this.getSortedVisibleDatasetMetas().length}isDatasetVisible(t){const n=this.data.datasets[t];if(!n)return!1;const e=this.getDatasetMeta(t);return"boolean"==typeof e.hidden?!e.hidden:!n.hidden}setDatasetVisibility(t,n){this.getDatasetMeta(t).hidden=!n}toggleDataVisibility(t){this._hiddenIndices[t]=!this._hiddenIndices[t]}getDataVisibility(t){return!this._hiddenIndices[t]}_updateVisibility(t,n,e){const o=e?"show":"hide",r=this.getDatasetMeta(t),i=r.controller._resolveAnimations(void 0,o);k(n)?(r.data[n].hidden=!e,this.update()):(this.setDatasetVisibility(t,e),i.update(r,{visible:e}),this.update((n=>n.datasetIndex===t?o: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(),_e.remove(this),t=0,n=this.data.datasets.length;t{n.addEventListener(this,e,o),t[e]=o},o=(t,n,e)=>{t.offsetX=n,t.offsetY=e,this._eventHandler(t)};f(this.options.events,(t=>e(t,o)))}bindResponsiveEvents(){this._responsiveListeners||(this._responsiveListeners={});const t=this._responsiveListeners,n=this.platform,e=(e,o)=>{n.addEventListener(this,e,o),t[e]=o},o=(e,o)=>{t[e]&&(n.removeEventListener(this,e,o),delete t[e])},r=(t,n)=>{this.canvas&&this.resize(t,n)};let i;const s=()=>{o("attach",s),this.attached=!0,this.resize(),e("resize",r),e("detach",i)};i=()=>{this.attached=!1,o("resize",r),this._stop(),this._resize(0,0),e("attach",s)},n.isAttached(this.canvas)?s():i()}unbindEvents(){f(this._listeners,((t,n)=>{this.platform.removeEventListener(this,n,t)})),this._listeners={},f(this._responsiveListeners,((t,n)=>{this.platform.removeEventListener(this,n,t)})),this._responsiveListeners=void 0}updateHoverStyle(t,n,e){const o=e?"set":"remove";let r,i,s,a;for("dataset"===n&&(r=this.getDatasetMeta(t[0].datasetIndex),r.controller["_"+o+"DatasetHoverStyle"]()),s=0,a=t.length;s{const e=this.getDatasetMeta(t);if(!e)throw new Error("No dataset found at index "+t);return{datasetIndex:t,element:e.data[n],index:n}}));!_(e,n)&&(this._active=e,this._lastEvent=null,this._updateHoverStyles(e,n))}notifyPlugins(t,n,e){return this._plugins.notify(this,t,n,e)}_updateHoverStyles(t,n,e){const o=this.options.hover,r=(t,n)=>t.filter((t=>!n.some((n=>t.datasetIndex===n.datasetIndex&&t.index===n.index)))),i=r(n,t),s=e?t:r(t,n);i.length&&this.updateHoverStyle(i,o.mode,!1),s.length&&o.mode&&this.updateHoverStyle(s,o.mode,!0)}_eventHandler(t,n){const e={event:t,replay:n,cancelable:!0,inChartArea:this.isPointInArea(t)},o=n=>(n.options.events||this.options.events).includes(t.native.type);if(!1===this.notifyPlugins("beforeEvent",e,o))return;const r=this._handleEvent(t,n,e.inChartArea);return e.cancelable=!1,this.notifyPlugins("afterEvent",e,o),(r||e.changed)&&this.render(),this}_handleEvent(t,n,e){const{_active:o=[],options:r}=this,i=n,s=this._getActiveElements(t,o,e,i),a=function(t){return"mouseup"===t.type||"click"===t.type||"contextmenu"===t.type}(t),u=function(t,n,e,o){return e&&"mouseout"!==t.type?o?n:t:null}(t,this._lastEvent,e,a);e&&(this._lastEvent=null,p(r.onHover,[t,s,this],this),a&&p(r.onClick,[t,s,this],this));const c=!_(s,o);return(c||n)&&(this._active=s,this._updateHoverStyles(s,o,n)),this._lastEvent=u,c}_getActiveElements(t,n,e,o){if("mouseout"===t.type)return[];if(!e)return n;const r=this.options.hover;return this.getElementsAtEventForMode(t,r.mode,r,o)}}const yr=()=>f(vr.instances,(t=>t._plugins.invalidate())),mr=!0;function gr(t,n,e){const{startAngle:o,pixelMargin:r,x:i,y:s,outerRadius:a,innerRadius:u}=n;let c=r/a;t.beginPath(),t.arc(i,s,a,o-c,e+c),u>r?(c=r/u,t.arc(i,s,u,e+c,o-c,!0)):t.arc(i,s,r,e+M,o-M),t.closePath(),t.clip()}function $r(t,n,e,o){return{x:e+t*Math.cos(n),y:o+t*Math.sin(n)}}function br(t,n,e,o,r,i){const{x:s,y:a,startAngle:u,pixelMargin:c,innerRadius:l}=n,h=Math.max(n.outerRadius+o+e-c,0),p=l>0?l+o+e+c:0;let f=0;const _=r-u;if(o){const t=((l>0?l-o:0)+(h>0?h-o:0))/2;f=(_-(0!==t?_*t/(t+o):_))/2}const d=(_-Math.max(.001,_*h-e/z)/h)/2,v=u+d+f,y=r-d-f,{outerStart:m,outerEnd:g,innerStart:$,innerEnd:b}=function(t,n,e,o){const r=vn(t.options.borderRadius,["outerStart","outerEnd","innerStart","innerEnd"]),i=(e-n)/2,s=Math.min(i,o*n/2),a=t=>{const n=(e-Math.min(i,t))*o/2;return G(t,0,Math.min(i,n))};return{outerStart:a(r.outerStart),outerEnd:a(r.outerEnd),innerStart:G(r.innerStart,0,s),innerEnd:G(r.innerEnd,0,s)}}(n,p,h,y-v),w=h-m,x=h-g,k=v+m/w,j=y-g/x,C=p+$,S=p+b,q=v+$/C,O=y-b/S;if(t.beginPath(),i){if(t.arc(s,a,h,k,j),g>0){const n=$r(x,j,s,a);t.arc(n.x,n.y,g,j,y+M)}const n=$r(S,y,s,a);if(t.lineTo(n.x,n.y),b>0){const n=$r(S,O,s,a);t.arc(n.x,n.y,b,y+M,O+Math.PI)}if(t.arc(s,a,p,y-b/p,v+$/p,!0),$>0){const n=$r(C,q,s,a);t.arc(n.x,n.y,$,q+Math.PI,v-M)}const e=$r(w,v,s,a);if(t.lineTo(e.x,e.y),m>0){const n=$r(w,k,s,a);t.arc(n.x,n.y,m,v-M,k)}}else{t.moveTo(s,a);const n=Math.cos(k)*h+s,e=Math.sin(k)*h+a;t.lineTo(n,e);const o=Math.cos(j)*h+s,r=Math.sin(j)*h+a;t.lineTo(o,r)}t.closePath()}Object.defineProperties(vr,{defaults:{enumerable:mr,value:Xt},instances:{enumerable:mr,value:fr},overrides:{enumerable:mr,value:Jt},registry:{enumerable:mr,value:io},version:{enumerable:mr,value:"3.9.1"},getChart:{enumerable:mr,value:_r},register:{enumerable:mr,value:(...t)=>{io.add(...t),yr()}},unregister:{enumerable:mr,value:(...t)=>{io.remove(...t),yr()}}});class wr extends Je{constructor(t){super(),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,t&&Object.assign(this,t)}inRange(t,n,e){const o=this.getProps(["x","y"],e),{angle:r,distance:i}=U(o,{x:t,y:n}),{startAngle:s,endAngle:a,innerRadius:u,outerRadius:c,circumference:h}=this.getProps(["startAngle","endAngle","innerRadius","outerRadius","circumference"],e),p=this.options.spacing/2,f=l(h,a-s)>=S||K(r,s,a),_=Y(i,u+p,c+p);return f&&_}getCenterPoint(t){const{x:n,y:e,startAngle:o,endAngle:r,innerRadius:i,outerRadius:s}=this.getProps(["x","y","startAngle","endAngle","innerRadius","outerRadius","circumference"],t),{offset:a,spacing:u}=this.options,c=(o+r)/2,l=(i+s+u+a)/2;return{x:n+Math.cos(c)*l,y:e+Math.sin(c)*l}}tooltipPosition(t){return this.getCenterPoint(t)}draw(t){const{options:n,circumference:e}=this,o=(n.offset||0)/2,r=(n.spacing||0)/2,i=n.circular;if(this.pixelMargin="inner"===n.borderAlign?.33:0,this.fullCircles=e>S?Math.floor(e/S):0,0===e||this.innerRadius<0||this.outerRadius<0)return;t.save();let s=0;if(o){s=o/2;const n=(this.startAngle+this.endAngle)/2;t.translate(Math.cos(n)*s,Math.sin(n)*s),this.circumference>=z&&(s=o)}t.fillStyle=n.backgroundColor,t.strokeStyle=n.borderColor;const a=function(t,n,e,o,r){const{fullCircles:i,startAngle:s,circumference:a}=n;let u=n.endAngle;if(i){br(t,n,e,o,s+S,r);for(let n=0;na&&i>a;return{count:o,start:u,loop:n.loop,ilen:c(s+(c?a-t:t))%i,g=()=>{f!==_&&(t.lineTo(v,_),t.lineTo(v,f),t.lineTo(v,d))};for(u&&(h=r[m(0)],t.moveTo(h.x,h.y)),l=0;l<=a;++l){if(h=r[m(l)],h.skip)continue;const n=h.x,e=h.y,o=0|n;o===p?(e_&&(_=e),v=(y*v+n)/++y):(g(),t.lineTo(n,e),p=o,y=0,f=_=e),d=e}g()}function Sr(t){const n=t.options,e=n.borderDash&&n.borderDash.length;return t._decimated||t._loop||n.tension||"monotone"===n.cubicInterpolationMode||n.stepped||e?Cr:zr}wr.id="arc",wr.defaults={borderAlign:"center",borderColor:"#fff",borderJoinStyle:void 0,borderRadius:0,borderWidth:2,offset:0,spacing:0,angle:void 0,circular:!0},wr.defaultRoutes={backgroundColor:"backgroundColor"};const qr="function"==typeof Path2D;class Or extends Je{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 e=this.options;if((e.tension||"monotone"===e.cubicInterpolationMode)&&!e.stepped&&!this._pointsUpdated){const o=e.spanGaps?this._loop:this._fullLoop;Rn(this._points,e,t,o,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=function(t,n){const e=t.points,o=t.options.spanGaps,r=e.length;if(!r)return[];const i=!!t._loop,{start:s,end:a}=function(t,n,e,o){let r=0,i=n-1;if(e&&!o)for(;rr&&t[i%n].skip;)i--;return i%=n,{start:r,end:i}}(e,r,i,o);return function(t,n,e,o){return o&&o.setContext&&e?function(t,n,e,o){const r=t._chart.getContext(),i=pe(t.options),{_datasetIndex:s,options:{spanGaps:a}}=t,u=e.length,c=[];let l=i,h=n[0].start,p=h;function f(t,n,o,r){const i=a?-1:1;if(t!==n){for(t+=u;e[t%u].skip;)t-=i;for(;e[n%u].skip;)n+=i;t%u!=n%u&&(c.push({start:t%u,end:n%u,loop:o,style:r}),l=r,h=n%u)}}for(const t of n){h=a?h:t.start;let n,i=e[h%u];for(p=h+1;p<=t.end;p++){const a=e[p%u];n=pe(o.setContext(wn(r,{type:"segment",p0:i,p1:a,p0DataIndex:(p-1)%u,p1DataIndex:p%u,datasetIndex:s}))),fe(n,l)&&f(h,p-1,t.loop,l),i=a,l=n}h"borderDash"!==t&&"fill"!==t};class Mr extends Je{constructor(t){super(),this.options=void 0,this.parsed=void 0,this.skip=void 0,this.stop=void 0,t&&Object.assign(this,t)}inRange(t,n,e){const o=this.options,{x:r,y:i}=this.getProps(["x","y"],e);return Math.pow(t-r,2)+Math.pow(n-i,2){Nr(t)}))}var Rr={id:"decimation",defaults:{algorithm:"min-max",enabled:!1},beforeElementsUpdate:(t,n,e)=>{if(!e.enabled)return void Fr(t);const o=t.width;t.data.datasets.forEach(((n,r)=>{const{_data:s,indexAxis:a}=n,u=t.getDatasetMeta(r),c=s||n.data;if("y"===bn([a,t.options.indexAxis]))return;if(!u.controller.supportsDecimation)return;const l=t.scales[u.xAxisID];if("linear"!==l.type&&"time"!==l.type)return;if(t.options.parsing)return;let h,{start:p,count:f}=function(t,n){const e=n.length;let o,r=0;const{iScale:i}=t,{min:s,max:a,minDefined:u,maxDefined:c}=i.getUserBounds();return u&&(r=G(Z(n,i.axis,s).lo,0,e-1)),o=c?G(Z(n,i.axis,a).hi+1,r,e)-r:e-r,{start:r,count:o}}(u,c);if(f<=(e.threshold||4*o))Nr(n);else{switch(i(s)&&(n._data=c,delete n.data,Object.defineProperty(n,"data",{configurable:!0,enumerable:!0,get:function(){return this._decimated},set:function(t){this._data=t}})),e.algorithm){case"lttb":h=function(t,n,e,o,r){const i=r.samples||o;if(i>=e)return t.slice(n,n+e);const s=[],a=(e-2)/(i-2);let u=0;const c=n+e-1;let l,h,p,f,_,d=n;for(s[u++]=t[d],l=0;lp&&(p=f,h=t[o],_=o);s[u++]=h,d=_}return s[u++]=t[c],s}(c,p,f,o,e);break;case"min-max":h=function(t,n,e,o){let r,s,a,u,c,l,h,p,f,_,d=0,v=0;const y=[],m=n+e-1,g=t[n].x,$=t[m].x-g;for(r=n;r_&&(_=u,h=r),d=(v*d+s.x)/++v;else{const e=r-1;if(!i(l)&&!i(h)){const n=Math.min(l,h),o=Math.max(l,h);n!==p&&n!==e&&y.push({...t[n],x:d}),o!==p&&o!==e&&y.push({...t[o],x:d})}r>0&&e!==p&&y.push(t[e]),y.push(s),c=n,v=0,f=_=u,l=h=p=r}}return y}(c,p,f,o);break;default:throw new Error(`Unsupported decimation algorithm '${e.algorithm}'`)}n._decimated=h}}))},destroy(t){Fr(t)}};function Hr(t,n,e,o){if(o)return;let r=n[t],i=e[t];return"angle"===t&&(r=J(r),i=J(i)),{property:t,start:r,end:i}}function Ur(t,n,e){for(;n>t;n--){const t=e[n];if(!isNaN(t.x)&&!isNaN(t.y))break}return n}function Vr(t,n,e,o){return t&&n?o(t[e],n[e]):t?t[e]:n?n[e]:0}function Wr(t,n){let e=[],o=!1;return s(t)?(o=!0,e=t):e=function(t,n){const{x:e=null,y:o=null}=t||{},r=n.points,i=[];return n.segments.forEach((({start:t,end:n})=>{n=Ur(t,n,r);const s=r[t],a=r[n];null!==o?(i.push({x:s.x,y:o}),i.push({x:a.x,y:o})):null!==e&&(i.push({x:e,y:s.y}),i.push({x:e,y:a.y}))})),i}(t,n),e.length?new Or({points:e,options:{tension:0},_loop:o,_fullLoop:o}):null}function Jr(t){return t&&!1!==t.fill}function Kr(t,n,e){let o=t[n].fill;const r=[n];let i;if(!e)return o;for(;!1!==o&&-1===r.indexOf(o);){if(!u(o))return o;if(i=t[o],!i)return!1;if(i.visible)return o;r.push(o),o=i.fill}return!1}function Gr(t,n,e){const o=function(t){const n=t.options,e=n.fill;let o=l(e&&e.target,e);return void 0===o&&(o=!!n.backgroundColor),!1!==o&&null!==o&&(!0===o?"origin":o)}(t);if(a(o))return!isNaN(o.value)&&o;let r=parseFloat(o);return u(r)&&Math.floor(r)===r?function(t,n,e,o){return"-"!==t&&"+"!==t||(e=n+e),!(e===n||e<0||e>=o)&&e}(o[0],n,r,e):["origin","start","end","stack","shape"].indexOf(o)>=0&&o}function Yr(t,n,e){const o=[];for(let r=0;r=0;--n){const e=r[n].$filler;e&&(e.line.updateControlPoints(i,e.axis),o&&e.fill&&Qr(t.ctx,e,i))}},beforeDatasetsDraw(t,n,e){if("beforeDatasetsDraw"!==e.drawTime)return;const o=t.getSortedVisibleDatasetMetas();for(let n=o.length-1;n>=0;--n){const e=o[n].$filler;Jr(e)&&Qr(t.ctx,e,t.chartArea)}},beforeDatasetDraw(t,n,e){const o=n.meta.$filler;Jr(o)&&"beforeDatasetDraw"===e.drawTime&&Qr(t.ctx,o,t.chartArea)},defaults:{propagate:!0,drawTime:"beforeDatasetDraw"}};const ii=(t,n)=>{let{boxHeight:e=n,boxWidth:o=n}=t;return t.usePointStyle&&(e=Math.min(e,n),o=t.pointStyleWidth||Math.min(o,n)),{boxWidth:o,boxHeight:e,itemHeight:Math.max(n,e)}};class si extends Je{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,e){this.maxWidth=t,this.maxHeight=n,this._margins=e,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=p(t.generateLabels,[this.chart],this)||[];t.filter&&(n=n.filter((n=>t.filter(n,this.chart.data)))),t.sort&&(n=n.sort(((n,e)=>t.sort(n,e,this.chart.data)))),this.options.reverse&&n.reverse(),this.legendItems=n}fit(){const{options:t,ctx:n}=this;if(!t.display)return void(this.width=this.height=0);const e=t.labels,o=$n(e.font),r=o.size,i=this._computeTitleHeight(),{boxWidth:s,itemHeight:a}=ii(e,r);let u,c;n.font=o.string,this.isHorizontal()?(u=this.maxWidth,c=this._fitRows(i,r,s,a)+10):(c=this.maxHeight,u=this._fitCols(i,r,s,a)+10),this.width=Math.min(u,t.maxWidth||this.maxWidth),this.height=Math.min(c,t.maxHeight||this.maxHeight)}_fitRows(t,n,e,o){const{ctx:r,maxWidth:i,options:{labels:{padding:s}}}=this,a=this.legendHitBoxes=[],u=this.lineWidths=[0],c=o+s;let l=t;r.textAlign="left",r.textBaseline="middle";let h=-1,p=-c;return this.legendItems.forEach(((t,f)=>{const _=e+n/2+r.measureText(t.text).width;(0===f||u[u.length-1]+_+2*s>i)&&(l+=c,u[u.length-(f>0?0:1)]=0,p+=c,h++),a[f]={left:0,top:p,row:h,width:_,height:o},u[u.length-1]+=_+s})),l}_fitCols(t,n,e,o){const{ctx:r,maxHeight:i,options:{labels:{padding:s}}}=this,a=this.legendHitBoxes=[],u=this.columnSizes=[],c=i-t;let l=s,h=0,p=0,f=0,_=0;return this.legendItems.forEach(((t,i)=>{const d=e+n/2+r.measureText(t.text).width;i>0&&p+o+2*s>c&&(l+=h+s,u.push({width:h,height:p}),f+=h+s,_++,h=p=0),a[i]={left:f,top:p,col:_,width:d,height:o},h=Math.max(h,d),p+=o+s})),l+=h,u.push({width:h,height:p}),l}adjustHitBoxes(){if(!this.options.display)return;const t=this._computeTitleHeight(),{legendHitBoxes:n,options:{align:e,labels:{padding:o},rtl:r}}=this,i=ie(r,this.left,this.width);if(this.isHorizontal()){let r=0,s=st(e,this.left+o,this.right-this.lineWidths[r]);for(const a of n)r!==a.row&&(r=a.row,s=st(e,this.left+o,this.right-this.lineWidths[r])),a.top+=this.top+t+o,a.left=i.leftForLtr(i.x(s),a.width),s+=a.width+o}else{let r=0,s=st(e,this.top+t+o,this.bottom-this.columnSizes[r].height);for(const a of n)a.col!==r&&(r=a.col,s=st(e,this.top+t+o,this.bottom-this.columnSizes[r].height)),a.top=s,a.left+=this.left+o,a.left=i.leftForLtr(i.x(a.left),a.width),s+=a.height+o}}isHorizontal(){return"top"===this.options.position||"bottom"===this.options.position}draw(){if(this.options.display){const t=this.ctx;sn(t,this),this._draw(),an(t)}}_draw(){const{options:t,columnSizes:n,lineWidths:e,ctx:o}=this,{align:r,labels:i}=t,s=Xt.color,a=ie(t.rtl,this.left,this.width),u=$n(i.font),{color:c,padding:h}=i,p=u.size,f=p/2;let _;this.drawTitle(),o.textAlign=a.textAlign("left"),o.textBaseline="middle",o.lineWidth=.5,o.font=u.string;const{boxWidth:d,boxHeight:v,itemHeight:y}=ii(i,p),m=this.isHorizontal(),g=this._computeTitleHeight();_=m?{x:st(r,this.left+h,this.right-e[0]),y:this.top+h+g,line:0}:{x:this.left+h,y:st(r,this.top+g+h,this.bottom-n[0].height),line:0},se(this.ctx,t.textDirection);const $=y+h;this.legendItems.forEach(((b,w)=>{o.strokeStyle=b.fontColor||c,o.fillStyle=b.fontColor||c;const x=o.measureText(b.text).width,k=a.textAlign(b.textAlign||(b.textAlign=i.textAlign)),j=d+f+x;let C=_.x,z=_.y;a.setWidth(this.width),m?w>0&&C+j+h>this.right&&(z=_.y+=$,_.line++,C=_.x=st(r,this.left+h,this.right-e[_.line])):w>0&&z+$>this.bottom&&(C=_.x=C+n[_.line].width+h,_.line++,z=_.y=st(r,this.top+g+h,this.bottom-n[_.line].height)),function(t,n,e){if(isNaN(d)||d<=0||isNaN(v)||v<0)return;o.save();const r=l(e.lineWidth,1);if(o.fillStyle=l(e.fillStyle,s),o.lineCap=l(e.lineCap,"butt"),o.lineDashOffset=l(e.lineDashOffset,0),o.lineJoin=l(e.lineJoin,"miter"),o.lineWidth=r,o.strokeStyle=l(e.strokeStyle,s),o.setLineDash(l(e.lineDash,[])),i.usePointStyle){const s={radius:v*Math.SQRT2/2,pointStyle:e.pointStyle,rotation:e.rotation,borderWidth:r},u=a.xPlus(t,d/2);on(o,s,u,n+f,i.pointStyleWidth&&d)}else{const i=n+Math.max((p-v)/2,0),s=a.leftForLtr(t,d),u=mn(e.borderRadius);o.beginPath(),Object.values(u).some((t=>0!==t))?pn(o,{x:s,y:i,w:d,h:v,radius:u}):o.rect(s,i,d,v),o.fill(),0!==r&&o.stroke()}o.restore()}(a.x(C),z,b),C=((t,n,e,o)=>t===(o?"left":"right")?e:"center"===t?(n+e)/2:n)(k,C+d+f,m?C+j:this.right,t.rtl),function(t,n,e){ln(o,e.text,t,n+y/2,u,{strikethrough:e.hidden,textAlign:a.textAlign(e.textAlign)})}(a.x(C),z,b),m?_.x+=j+h:_.y+=$})),ae(this.ctx,t.textDirection)}drawTitle(){const t=this.options,n=t.title,e=$n(n.font),o=gn(n.padding);if(!n.display)return;const r=ie(t.rtl,this.left,this.width),i=this.ctx,s=n.position,a=e.size/2,u=o.top+a;let c,l=this.left,h=this.width;if(this.isHorizontal())h=Math.max(...this.lineWidths),c=this.top+u,l=st(t.align,l,this.right-h);else{const n=this.columnSizes.reduce(((t,n)=>Math.max(t,n.height)),0);c=u+st(t.align,this.top,this.bottom-n-t.labels.padding-this._computeTitleHeight())}const p=st(s,l,l+h);i.textAlign=r.textAlign(it(s)),i.textBaseline="middle",i.strokeStyle=n.color,i.fillStyle=n.color,i.font=e.string,ln(i,n.text,p,c,e)}_computeTitleHeight(){const t=this.options.title,n=$n(t.font),e=gn(t.padding);return t.display?n.lineHeight+e.height:0}_getLegendItemAt(t,n){let e,o,r;if(Y(t,this.left,this.right)&&Y(n,this.top,this.bottom))for(r=this.legendHitBoxes,e=0;et.chart.options.color,boxWidth:40,padding:10,generateLabels(t){const n=t.data.datasets,{labels:{usePointStyle:e,pointStyle:o,textAlign:r,color:i}}=t.legend.options;return t._getSortedDatasetMetas().map((t=>{const s=t.controller.getStyle(e?0:void 0),a=gn(s.borderWidth);return{text:n[t.index].label,fillStyle:s.backgroundColor,fontColor:i,hidden:!t.visible,lineCap:s.borderCapStyle,lineDash:s.borderDash,lineDashOffset:s.borderDashOffset,lineJoin:s.borderJoinStyle,lineWidth:(a.width+a.height)/4,strokeStyle:s.borderColor,pointStyle:o||s.pointStyle,rotation:s.rotation,textAlign:r||s.textAlign,borderRadius:0,datasetIndex:t.index}}),this)}},title:{color:t=>t.chart.options.color,display:!1,position:"center",text:""}},descriptors:{_scriptable:t=>!t.startsWith("on"),labels:{_scriptable:t=>!["generateLabels","filter","sort"].includes(t)}}};class ui extends Je{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 e=this.options;if(this.left=0,this.top=0,!e.display)return void(this.width=this.height=this.right=this.bottom=0);this.width=this.right=t,this.height=this.bottom=n;const o=s(e.text)?e.text.length:1;this._padding=gn(e.padding);const r=o*$n(e.font).lineHeight+this._padding.height;this.isHorizontal()?this.height=r:this.width=r}isHorizontal(){const t=this.options.position;return"top"===t||"bottom"===t}_drawArgs(t){const{top:n,left:e,bottom:o,right:r,options:i}=this,s=i.align;let a,u,c,l=0;return this.isHorizontal()?(u=st(s,e,r),c=n+t,a=r-e):("left"===i.position?(u=e+t,c=st(s,o,n),l=-.5*z):(u=r-t,c=st(s,n,o),l=.5*z),a=o-n),{titleX:u,titleY:c,maxWidth:a,rotation:l}}draw(){const t=this.ctx,n=this.options;if(!n.display)return;const e=$n(n.font),o=e.lineHeight/2+this._padding.top,{titleX:r,titleY:i,maxWidth:s,rotation:a}=this._drawArgs(o);ln(t,n.text,0,0,e,{color:n.color,maxWidth:s,rotation:a,textAlign:it(n.align),textBaseline:"middle",translation:[r,i]})}}var ci={id:"title",_element:ui,start(t,n,e){!function(t,n){const e=new ui({ctx:t.ctx,options:n,chart:t});qo.configure(t,e,n),qo.addBox(t,e),t.titleBlock=e}(t,e)},stop(t){const n=t.titleBlock;qo.removeBox(t,n),delete t.titleBlock},beforeUpdate(t,n,e){const o=t.titleBlock;qo.configure(t,o,e),o.options=e},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 li=new WeakMap;var hi={id:"subtitle",start(t,n,e){const o=new ui({ctx:t.ctx,options:e,chart:t});qo.configure(t,o,e),qo.addBox(t,o),li.set(t,o)},stop(t){qo.removeBox(t,li.get(t)),li.delete(t)},beforeUpdate(t,n,e){const o=li.get(t);qo.configure(t,o,e),o.options=e},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 pi={average(t){if(!t.length)return!1;let n,e,o=0,r=0,i=0;for(n=0,e=t.length;n-1?t.split("\n"):t}function di(t,n){const{element:e,datasetIndex:o,index:r}=n,i=t.getDatasetMeta(o).controller,{label:s,value:a}=i.getLabelAndValue(r);return{chart:t,label:s,parsed:i.getParsed(r),raw:t.data.datasets[o].data[r],formattedValue:a,dataset:i.getDataset(),dataIndex:r,datasetIndex:o,element:e}}function vi(t,n){const e=t.chart.ctx,{body:o,footer:r,title:i}=t,{boxWidth:s,boxHeight:a}=n,u=$n(n.bodyFont),c=$n(n.titleFont),l=$n(n.footerFont),h=i.length,p=r.length,_=o.length,d=gn(n.padding);let v=d.height,y=0,m=o.reduce(((t,n)=>t+n.before.length+n.lines.length+n.after.length),0);m+=t.beforeBody.length+t.afterBody.length,h&&(v+=h*c.lineHeight+(h-1)*n.titleSpacing+n.titleMarginBottom),m&&(v+=_*(n.displayColors?Math.max(a,u.lineHeight):u.lineHeight)+(m-_)*u.lineHeight+(m-1)*n.bodySpacing),p&&(v+=n.footerMarginTop+p*l.lineHeight+(p-1)*n.footerSpacing);let g=0;const $=function(t){y=Math.max(y,e.measureText(t).width+g)};return e.save(),e.font=c.string,f(t.title,$),e.font=u.string,f(t.beforeBody.concat(t.afterBody),$),g=n.displayColors?s+2+n.boxPadding:0,f(o,(t=>{f(t.before,$),f(t.lines,$),f(t.after,$)})),g=0,e.font=l.string,f(t.footer,$),e.restore(),y+=d.width,{width:y,height:v}}function yi(t,n,e,o){const{x:r,width:i}=e,{width:s,chartArea:{left:a,right:u}}=t;let c="center";return"center"===o?c=r<=(a+u)/2?"left":"right":r<=i/2?c="left":r>=s-i/2&&(c="right"),function(t,n,e,o){const{x:r,width:i}=o,s=e.caretSize+e.caretPadding;return"left"===t&&r+i+s>n.width||"right"===t&&r-i-s<0||void 0}(c,t,n,e)&&(c="center"),c}function mi(t,n,e){const o=e.yAlign||n.yAlign||function(t,n){const{y:e,height:o}=n;return et.height-o/2?"bottom":"center"}(t,e);return{xAlign:e.xAlign||n.xAlign||yi(t,n,e,o),yAlign:o}}function gi(t,n,e,o){const{caretSize:r,caretPadding:i,cornerRadius:s}=t,{xAlign:a,yAlign:u}=e,c=r+i,{topLeft:l,topRight:h,bottomLeft:p,bottomRight:f}=mn(s);let _=function(t,n){let{x:e,width:o}=t;return"right"===n?e-=o:"center"===n&&(e-=o/2),e}(n,a);const d=function(t,n,e){let{y:o,height:r}=t;return"top"===n?o+=e:o-="bottom"===n?r+e:r/2,o}(n,u,c);return"center"===u?"left"===a?_+=c:"right"===a&&(_-=c):"left"===a?_-=Math.max(l,p)+r:"right"===a&&(_+=Math.max(h,f)+r),{x:G(_,0,o.width-n.width),y:G(d,0,o.height-n.height)}}function $i(t,n,e){const o=gn(e.padding);return"center"===n?t.x+t.width/2:"right"===n?t.x+t.width-o.right:t.x+o.left}function bi(t){return fi([],_i(t))}function wi(t,n){const e=n&&n.dataset&&n.dataset.tooltip&&n.dataset.tooltip.callbacks;return e?t.override(e):t}class xi extends Je{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||t._chart,this._chart=this.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,e=this.options.setContext(this.getContext()),o=e.enabled&&n.options.animation&&e.animations,r=new ge(this.chart,o);return o._cacheable&&(this._cachedAnimations=Object.freeze(r)),r}getContext(){return this.$context||(this.$context=(this,wn(this.chart.getContext(),{tooltip:this,tooltipItems:this._tooltipItems,type:"tooltip"})))}getTitle(t,n){const{callbacks:e}=n,o=e.beforeTitle.apply(this,[t]),r=e.title.apply(this,[t]),i=e.afterTitle.apply(this,[t]);let s=[];return s=fi(s,_i(o)),s=fi(s,_i(r)),s=fi(s,_i(i)),s}getBeforeBody(t,n){return bi(n.callbacks.beforeBody.apply(this,[t]))}getBody(t,n){const{callbacks:e}=n,o=[];return f(t,(t=>{const n={before:[],lines:[],after:[]},r=wi(e,t);fi(n.before,_i(r.beforeLabel.call(this,t))),fi(n.lines,r.label.call(this,t)),fi(n.after,_i(r.afterLabel.call(this,t))),o.push(n)})),o}getAfterBody(t,n){return bi(n.callbacks.afterBody.apply(this,[t]))}getFooter(t,n){const{callbacks:e}=n,o=e.beforeFooter.apply(this,[t]),r=e.footer.apply(this,[t]),i=e.afterFooter.apply(this,[t]);let s=[];return s=fi(s,_i(o)),s=fi(s,_i(r)),s=fi(s,_i(i)),s}_createItems(t){const n=this._active,e=this.chart.data,o=[],r=[],i=[];let s,a,u=[];for(s=0,a=n.length;st.filter(n,o,r,e)))),t.itemSort&&(u=u.sort(((n,o)=>t.itemSort(n,o,e)))),f(u,(n=>{const e=wi(t.callbacks,n);o.push(e.labelColor.call(this,n)),r.push(e.labelPointStyle.call(this,n)),i.push(e.labelTextColor.call(this,n))})),this.labelColors=o,this.labelPointStyles=r,this.labelTextColors=i,this.dataPoints=u,u}update(t,n){const e=this.options.setContext(this.getContext()),o=this._active;let r,i=[];if(o.length){const t=pi[e.position].call(this,o,this._eventPosition);i=this._createItems(e),this.title=this.getTitle(i,e),this.beforeBody=this.getBeforeBody(i,e),this.body=this.getBody(i,e),this.afterBody=this.getAfterBody(i,e),this.footer=this.getFooter(i,e);const n=this._size=vi(this,e),s=Object.assign({},t,n),a=mi(this.chart,e,s),u=gi(e,s,a,this.chart);this.xAlign=a.xAlign,this.yAlign=a.yAlign,r={opacity:1,x:u.x,y:u.y,width:n.width,height:n.height,caretX:t.x,caretY:t.y}}else 0!==this.opacity&&(r={opacity:0});this._tooltipItems=i,this.$context=void 0,r&&this._resolveAnimations().update(this,r),t&&e.external&&e.external.call(this,{chart:this.chart,tooltip:this,replay:n})}drawCaret(t,n,e,o){const r=this.getCaretPosition(t,e,o);n.lineTo(r.x1,r.y1),n.lineTo(r.x2,r.y2),n.lineTo(r.x3,r.y3)}getCaretPosition(t,n,e){const{xAlign:o,yAlign:r}=this,{caretSize:i,cornerRadius:s}=e,{topLeft:a,topRight:u,bottomLeft:c,bottomRight:l}=mn(s),{x:h,y:p}=t,{width:f,height:_}=n;let d,v,y,m,g,$;return"center"===r?(g=p+_/2,"left"===o?(d=h,v=d-i,m=g+i,$=g-i):(d=h+f,v=d+i,m=g-i,$=g+i),y=d):(v="left"===o?h+Math.max(a,c)+i:"right"===o?h+f-Math.max(u,l)-i:this.caretX,"top"===r?(m=p,g=m-i,d=v-i,y=v+i):(m=p+_,g=m+i,d=v+i,y=v-i),$=m),{x1:d,x2:v,x3:y,y1:m,y2:g,y3:$}}drawTitle(t,n,e){const o=this.title,r=o.length;let i,s,a;if(r){const u=ie(e.rtl,this.x,this.width);for(t.x=$i(this,e.titleAlign,e),n.textAlign=u.textAlign(e.titleAlign),n.textBaseline="middle",i=$n(e.titleFont),s=e.titleSpacing,n.fillStyle=e.titleColor,n.font=i.string,a=0;a0!==t))?(t.beginPath(),t.fillStyle=r.multiKeyBackground,pn(t,{x:n,y:d,w:c,h:u,radius:s}),t.fill(),t.stroke(),t.fillStyle=i.backgroundColor,t.beginPath(),pn(t,{x:e,y:d+1,w:c-2,h:u-2,radius:s}),t.fill()):(t.fillStyle=r.multiKeyBackground,t.fillRect(n,d,c,u),t.strokeRect(n,d,c,u),t.fillStyle=i.backgroundColor,t.fillRect(e,d+1,c-2,u-2))}t.fillStyle=this.labelTextColors[e]}drawBody(t,n,e){const{body:o}=this,{bodySpacing:r,bodyAlign:i,displayColors:s,boxHeight:a,boxWidth:u,boxPadding:c}=e,l=$n(e.bodyFont);let h=l.lineHeight,p=0;const _=ie(e.rtl,this.x,this.width),d=function(e){n.fillText(e,_.x(t.x+p),t.y+h/2),t.y+=h+r},v=_.textAlign(i);let y,m,g,$,b,w,x;for(n.textAlign=i,n.textBaseline="middle",n.font=l.string,t.x=$i(this,v,e),n.fillStyle=e.bodyColor,f(this.beforeBody,d),p=s&&"right"!==v?"center"===i?u/2+c:u+2+c:0,$=0,w=o.length;$0&&n.stroke()}_updateAnimationTarget(t){const n=this.chart,e=this.$animations,o=e&&e.x,r=e&&e.y;if(o||r){const e=pi[t.position].call(this,this._active,this._eventPosition);if(!e)return;const i=this._size=vi(this,t),s=Object.assign({},e,this._size),a=mi(n,t,s),u=gi(t,s,a,n);o._to===u.x&&r._to===u.y||(this.xAlign=a.xAlign,this.yAlign=a.yAlign,this.width=i.width,this.height=i.height,this.caretX=e.x,this.caretY=e.y,this._resolveAnimations().update(this,u))}}_willRender(){return!!this.opacity}draw(t){const n=this.options.setContext(this.getContext());let e=this.opacity;if(!e)return;this._updateAnimationTarget(n);const o={width:this.width,height:this.height},r={x:this.x,y:this.y};e=Math.abs(e)<.001?0:e;const i=gn(n.padding),s=this.title.length||this.beforeBody.length||this.body.length||this.afterBody.length||this.footer.length;n.enabled&&s&&(t.save(),t.globalAlpha=e,this.drawBackground(r,t,o,n),se(t,n.textDirection),r.y+=i.top,this.drawTitle(r,t,n),this.drawBody(r,t,n),this.drawFooter(r,t,n),ae(t,n.textDirection),t.restore())}getActiveElements(){return this._active||[]}setActiveElements(t,n){const e=this._active,o=t.map((({datasetIndex:t,index:n})=>{const e=this.chart.getDatasetMeta(t);if(!e)throw new Error("Cannot find a dataset at index "+t);return{datasetIndex:t,element:e.data[n],index:n}})),r=!_(e,o),i=this._positionChanged(o,n);(r||i)&&(this._active=o,this._eventPosition=n,this._ignoreReplayEvents=!0,this.update(!0))}handleEvent(t,n,e=!0){if(n&&this._ignoreReplayEvents)return!1;this._ignoreReplayEvents=!1;const o=this.options,r=this._active||[],i=this._getActiveElements(t,r,n,e),s=this._positionChanged(i,t),a=n||!_(i,r)||s;return a&&(this._active=i,(o.enabled||o.external)&&(this._eventPosition={x:t.x,y:t.y},this.update(!0,n))),a}_getActiveElements(t,n,e,o){const r=this.options;if("mouseout"===t.type)return[];if(!o)return n;const i=this.chart.getElementsAtEventForMode(t,r.mode,r,e);return r.reverse&&i.reverse(),i}_positionChanged(t,n){const{caretX:e,caretY:o,options:r}=this,i=pi[r.position].call(this,t,n);return!1!==i&&(e!==i.x||o!==i.y)}}xi.positioners=pi;var ki={id:"tooltip",_element:xi,positioners:pi,afterInit(t,n,e){e&&(t.tooltip=new xi({chart:t,options:e}))},beforeUpdate(t,n,e){t.tooltip&&t.tooltip.initialize(e)},reset(t,n,e){t.tooltip&&t.tooltip.initialize(e)},afterDraw(t){const n=t.tooltip;if(n&&n._willRender()){const e={tooltip:n};if(!1===t.notifyPlugins("beforeTooltipDraw",e))return;n.draw(t.ctx),t.notifyPlugins("afterTooltipDraw",e)}},afterEvent(t,n){if(t.tooltip){const e=n.replay;t.tooltip.handleEvent(n.event,e,n.inChartArea)&&(n.changed=!0)}},defaults:{enabled:!0,external:null,position:"average",backgroundColor:"rgba(0,0,0,0.8)",titleColor:"#fff",titleFont:{weight:"bold"},titleSpacing:2,titleMarginBottom:6,titleAlign:"left",bodyColor:"#fff",bodySpacing:2,bodyFont:{},bodyAlign:"left",footerColor:"#fff",footerSpacing:2,footerMarginTop:6,footerFont:{weight:"bold"},footerAlign:"left",padding:6,caretPadding:2,caretSize:5,cornerRadius:6,boxHeight:(t,n)=>n.bodyFont.size,boxWidth:(t,n)=>n.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:{beforeTitle:o,title(t){if(t.length>0){const n=t[0],e=n.chart.data.labels,o=e?e.length:0;if(this&&this.options&&"dataset"===this.options.mode)return n.dataset.label||"";if(n.label)return n.label;if(o>0&&n.dataIndex"filter"!==t&&"itemSort"!==t&&"external"!==t,_indexable:!1,callbacks:{_scriptable:!1,_indexable:!1},animation:{_fallback:!1},animations:{_fallback:"animation"}},additionalOptionScopes:["interaction"]},ji=Object.freeze({__proto__:null,Decimation:Rr,Filler:ri,Legend:ai,SubTitle:hi,Title:ci,Tooltip:ki});class Ci extends oo{constructor(t){super(t),this._startValue=void 0,this._valueRange=0,this._addedLabels=[]}init(t){const n=this._addedLabels;if(n.length){const t=this.getLabels();for(const{index:e,label:o}of n)t[e]===o&&t.splice(e,1);this._addedLabels=[]}super.init(t)}parse(t,n){if(i(t))return null;const e=this.getLabels();return((t,n)=>null===t?null:G(Math.round(t),0,n))(n=isFinite(n)&&e[n]===t?n:function(t,n,e,o){const r=t.indexOf(n);return-1===r?((t,n,e,o)=>("string"==typeof n?(e=t.push(n)-1,o.unshift({index:e,label:n})):isNaN(n)&&(e=null),e))(t,n,e,o):r!==t.lastIndexOf(n)?e:r}(e,t,l(n,t),this._addedLabels),e.length-1)}determineDataLimits(){const{minDefined:t,maxDefined:n}=this.getUserBounds();let{min:e,max:o}=this.getMinMax(!0);"ticks"===this.options.bounds&&(t||(e=0),n||(o=this.getLabels().length-1)),this.min=e,this.max=o}buildTicks(){const t=this.min,n=this.max,e=this.options.offset,o=[];let r=this.getLabels();r=0===t&&n===r.length-1?r:r.slice(t,n+1),this._valueRange=Math.max(r.length-(e?0:1),1),this._startValue=this.min-(e?.5:0);for(let e=t;e<=n;e++)o.push({value:e});return o}getLabelForValue(t){const n=this.getLabels();return t>=0&&tn.length-1?null:this.getPixelForValue(n[t].value)}getValueForPixel(t){return Math.round(this._startValue+this.getDecimalForPixel(t)*this._valueRange)}getBasePixel(){return this.bottom}}function zi(t,n,{horizontal:e,minRotation:o}){const r=F(o),i=(e?Math.sin(r):Math.cos(r))||.001,s=.75*n*(""+t).length;return Math.min(n/i,s)}Ci.id="category",Ci.defaults={ticks:{callback:Ci.prototype.getLabelForValue}};class Si extends oo{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 i(t)||("number"==typeof t||t instanceof Number)&&!isFinite(+t)?null:+t}handleTickRangeOptions(){const{beginAtZero:t}=this.options,{minDefined:n,maxDefined:e}=this.getUserBounds();let{min:o,max:r}=this;const i=t=>o=n?o:t,s=t=>r=e?r:t;if(t){const t=D(o),n=D(r);t<0&&n<0?s(0):t>0&&n>0&&i(0)}if(o===r){let n=1;(r>=Number.MAX_SAFE_INTEGER||o<=Number.MIN_SAFE_INTEGER)&&(n=Math.abs(.05*r)),s(r+n),t||i(o-n)}this.min=o,this.max=r}getTickLimit(){const t=this.options.ticks;let n,{maxTicksLimit:e,stepSize:o}=t;return o?(n=Math.ceil(this.max/o)-Math.floor(this.min/o)+1,n>1e3&&(console.warn(`scales.${this.id}.ticks.stepSize: ${o} would result generating up to ${n} ticks. Limiting to 1000.`),n=1e3)):(n=this.computeTickLimit(),e=e||11),e&&(n=Math.min(e,n)),n}computeTickLimit(){return Number.POSITIVE_INFINITY}buildTicks(){const t=this.options,n=t.ticks;let e=this.getTickLimit();e=Math.max(2,e);const o=function(t,n){const e=[],{bounds:o,step:r,min:s,max:a,precision:u,count:c,maxTicks:l,maxDigits:h,includeBounds:p}=t,f=r||1,_=l-1,{min:d,max:v}=n,y=!i(s),m=!i(a),g=!i(c),$=(v-d)/(h+1);let b,w,x,k,j=T((v-d)/_/f)*f;if(j<1e-14&&!y&&!m)return[{value:d},{value:v}];k=Math.ceil(v/j)-Math.floor(d/j),k>_&&(j=T(k*j/_/f)*f),i(u)||(b=Math.pow(10,u),j=Math.ceil(j*b)/b),"ticks"===o?(w=Math.floor(d/j)*j,x=Math.ceil(v/j)*j):(w=d,x=v),y&&m&&r&&function(t,n){const e=Math.round(t);return e-n<=t&&e+n>=t}((a-s)/r,j/1e3)?(k=Math.round(Math.min((a-s)/j,l)),j=(a-s)/k,w=s,x=a):g?(w=y?s:w,x=m?a:x,k=c-1,j=(x-w)/k):(k=(x-w)/j,k=L(k,Math.round(k),j/1e3)?Math.round(k):Math.ceil(k));const C=Math.max(H(j),H(w));b=Math.pow(10,i(u)?C:u),w=Math.round(w*b)/b,x=Math.round(x*b)/b;let z=0;for(y&&(p&&w!==s?(e.push({value:s}),w0?e:null;this._zero=!0}determineDataLimits(){const{min:t,max:n}=this.getMinMax(!0);this.min=u(t)?Math.max(0,t):null,this.max=u(n)?Math.max(0,n):null,this.options.beginAtZero&&(this._zero=!0),this.handleTickRangeOptions()}handleTickRangeOptions(){const{minDefined:t,maxDefined:n}=this.getUserBounds();let e=this.min,o=this.max;const r=n=>e=t?e:n,i=t=>o=n?o:t,s=(t,n)=>Math.pow(10,Math.floor(I(t))+n);e===o&&(e<=0?(r(1),i(10)):(r(s(e,-1)),i(s(o,1)))),e<=0&&r(s(o,-1)),o<=0&&i(s(e,1)),this._zero&&this.min!==this._suggestedMin&&e===s(this.min,0)&&r(s(e,-1)),this.min=e,this.max=o}buildTicks(){const t=this.options,n=function(t,n){const e=Math.floor(I(n.max)),o=Math.ceil(n.max/Math.pow(10,e)),r=[];let i=c(t.min,Math.pow(10,Math.floor(I(n.min)))),s=Math.floor(I(i)),a=Math.floor(i/Math.pow(10,s)),u=s<0?Math.pow(10,Math.abs(s)):1;do{r.push({value:i,major:Oi(i)}),++a,10===a&&(a=1,++s,u=s>=0?1:u),i=Math.round(a*Math.pow(10,s)*u)/u}while(sr?{start:n-e,end:n}:{start:n,end:n+e}}function Ei(t,n,e,o,r){const i=Math.abs(Math.sin(e)),s=Math.abs(Math.cos(e));let a=0,u=0;o.startn.r&&(a=(o.end-n.r)/i,t.r=Math.max(t.r,n.r+a)),r.startn.b&&(u=(r.end-n.b)/s,t.b=Math.max(t.b,n.b+u))}function Ii(t){return 0===t||180===t?"center":t<180?"left":"right"}function Di(t,n,e){return 90===e||270===e?t-=n/2:(e>270||e<90)&&(t-=n),t}function Ti(t,n,e,o){const{ctx:r}=t;if(e)r.arc(t.xCenter,t.yCenter,n,0,S);else{let e=t.getPointPosition(0,n);r.moveTo(e.x,e.y);for(let i=1;i{const e=p(this.options.pointLabels.callback,[t,n],this);return e||0===e?e:""})).filter(((t,n)=>this.chart.getDataVisibility(n)))}fit(){const t=this.options;t.display&&t.pointLabels.display?function(t){const n={l:t.left+t._padding.left,r:t.right-t._padding.right,t:t.top+t._padding.top,b:t.bottom-t._padding.bottom},e=Object.assign({},n),o=[],r=[],i=t._pointLabels.length,a=t.options.pointLabels,u=a.centerPointLabels?z/i:0;for(let p=0;p=0&&t=0;r--){const n=o.setContext(t.getPointLabelContext(r)),s=$n(n.font),{x:a,y:u,textAlign:c,left:l,top:h,right:p,bottom:f}=t._pointLabelItems[r],{backdropColor:_}=n;if(!i(_)){const t=mn(n.borderRadius),o=gn(n.backdropPadding);e.fillStyle=_;const r=l-o.left,i=h-o.top,s=p-l+o.width,a=f-h+o.height;Object.values(t).some((t=>0!==t))?(e.beginPath(),pn(e,{x:r,y:i,w:s,h:a,radius:t}),e.fill()):e.fillRect(r,i,s,a)}ln(e,t._pointLabels[r],a,u+s.lineHeight/2,s,{color:n.color,textAlign:c,textBaseline:"middle"})}}(this,r),o.display&&this.ticks.forEach(((t,n)=>{0!==n&&(a=this.getDistanceFromCenterForValue(t.value),function(t,n,e,o){const r=t.ctx,i=n.circular,{color:s,lineWidth:a}=n;!i&&!o||!s||!a||e<0||(r.save(),r.strokeStyle=s,r.lineWidth=a,r.setLineDash(n.borderDash),r.lineDashOffset=n.borderDashOffset,r.beginPath(),Ti(t,e,i,o),r.closePath(),r.stroke(),r.restore())}(this,o.setContext(this.getContext(n-1)),a,r))})),e.display){for(t.save(),s=r-1;s>=0;s--){const o=e.setContext(this.getPointLabelContext(s)),{color:r,lineWidth:i}=o;i&&r&&(t.lineWidth=i,t.strokeStyle=r,t.setLineDash(o.borderDash),t.lineDashOffset=o.borderDashOffset,a=this.getDistanceFromCenterForValue(n.ticks.reverse?this.min:this.max),u=this.getPointPosition(s,a),t.beginPath(),t.moveTo(this.xCenter,this.yCenter),t.lineTo(u.x,u.y),t.stroke())}t.restore()}}drawBorder(){}drawLabels(){const t=this.ctx,n=this.options,e=n.ticks;if(!e.display)return;const o=this.getIndexAngle(0);let r,i;t.save(),t.translate(this.xCenter,this.yCenter),t.rotate(o),t.textAlign="center",t.textBaseline="middle",this.ticks.forEach(((o,s)=>{if(0===s&&!n.reverse)return;const a=e.setContext(this.getContext(s)),u=$n(a.font);if(r=this.getDistanceFromCenterForValue(this.ticks[s].value),a.showLabelBackdrop){t.font=u.string,i=t.measureText(o.label).width,t.fillStyle=a.backdropColor;const n=gn(a.backdropPadding);t.fillRect(-i/2-n.left,-r-u.size/2-n.top,i+n.width,u.size+n.height)}ln(t,o.label,0,-r,u,{color:a.color})})),t.restore()}drawTitle(){}}Bi.id="radialLinear",Bi.defaults={display:!0,animate:!0,position:"chartArea",angleLines:{display:!0,lineWidth:1,borderDash:[],borderDashOffset:0},grid:{circular:!1},startAngle:0,ticks:{showLabelBackdrop:!0,callback:Ge.formatters.numeric},pointLabels:{backdropColor:void 0,backdropPadding:2,display:!0,font:{size:10},callback:t=>t,padding:5,centerPointLabels:!1}},Bi.defaultRoutes={"angleLines.color":"borderColor","pointLabels.color":"color","ticks.color":"color"},Bi.descriptors={angleLines:{_fallback:"grid"}};const Li={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}},Ni=Object.keys(Li);function Fi(t,n){return t-n}function Ri(t,n){if(i(n))return null;const e=t._adapter,{parser:o,round:r,isoWeekday:s}=t._parseOpts;let a=n;return"function"==typeof o&&(a=o(a)),u(a)||(a="string"==typeof o?e.parse(a,o):e.parse(a)),null===a?null:(r&&(a="week"!==r||!B(s)&&!0!==s?e.startOf(a,r):e.startOf(a,"isoWeek",s)),+a)}function Hi(t,n,e,o){const r=Ni.length;for(let i=Ni.indexOf(t);i=n?e[o]:e[r]]=!0}}else t[n]=!0}function Vi(t,n,e){const o=[],r={},i=n.length;let s,a;for(s=0;s=0&&(n[u].major=!0);return n}(t,o,r,e):o}class Wi extends oo{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 e=t.time||(t.time={}),o=this._adapter=new lo._date(t.adapters.date);o.init(n),g(e.displayFormats,o.formats()),this._parseOpts={parser:e.parser,round:e.round,isoWeekday:e.isoWeekday},super.init(t),this._normalized=n.normalized}parse(t,n){return void 0===t?null:Ri(this,t)}beforeLayout(){super.beforeLayout(),this._cache={data:[],labels:[],all:[]}}determineDataLimits(){const t=this.options,n=this._adapter,e=t.time.unit||"day";let{min:o,max:r,minDefined:i,maxDefined:s}=this.getUserBounds();function a(t){i||isNaN(t.min)||(o=Math.min(o,t.min)),s||isNaN(t.max)||(r=Math.max(r,t.max))}i&&s||(a(this._getLabelBounds()),"ticks"===t.bounds&&"labels"===t.ticks.source||a(this.getMinMax(!1))),o=u(o)&&!isNaN(o)?o:+n.startOf(Date.now(),e),r=u(r)&&!isNaN(r)?r:+n.endOf(Date.now(),e)+1,this.min=Math.min(o,r-1),this.max=Math.max(o+1,r)}_getLabelBounds(){const t=this.getLabelTimestamps();let n=Number.POSITIVE_INFINITY,e=Number.NEGATIVE_INFINITY;return t.length&&(n=t[0],e=t[t.length-1]),{min:n,max:e}}buildTicks(){const t=this.options,n=t.time,e=t.ticks,o="labels"===e.source?this.getLabelTimestamps():this._generate();"ticks"===t.bounds&&o.length&&(this.min=this._userMin||o[0],this.max=this._userMax||o[o.length-1]);const r=this.min,i=function(t,n,e){let o=0,r=t.length;for(;oo&&t[r-1]>e;)r--;return o>0||r=Ni.indexOf(e);i--){const e=Ni[i];if(Li[e].common&&t._adapter.diff(r,o,e)>=n-1)return e}return Ni[e?Ni.indexOf(e):0]}(this,i.length,n.minUnit,this.min,this.max)),this._majorUnit=e.major.enabled&&"year"!==this._unit?function(t){for(let n=Ni.indexOf(t)+1,e=Ni.length;n+t.value)))}initOffsets(t){let n,e,o=0,r=0;this.options.offset&&t.length&&(n=this.getDecimalForValue(t[0]),o=1===t.length?1-n:(this.getDecimalForValue(t[1])-n)/2,e=this.getDecimalForValue(t[t.length-1]),r=1===t.length?e:(e-this.getDecimalForValue(t[t.length-2]))/2);const i=t.length<3?.5:.25;o=G(o,0,i),r=G(r,0,i),this._offsets={start:o,end:r,factor:1/(o+1+r)}}_generate(){const t=this._adapter,n=this.min,e=this.max,o=this.options,r=o.time,i=r.unit||Hi(r.minUnit,n,e,this._getLabelCapacity(n)),s=l(r.stepSize,1),a="week"===i&&r.isoWeekday,u=B(a)||!0===a,c={};let h,p,f=n;if(u&&(f=+t.startOf(f,"isoWeek",a)),f=+t.startOf(f,u?"day":i),t.diff(e,n,i)>1e5*s)throw new Error(n+" and "+e+" are too far apart with stepSize of "+s+" "+i);const _="data"===o.ticks.source&&this.getDataTimestamps();for(h=f,p=0;ht-n)).map((t=>+t))}getLabelForValue(t){const n=this._adapter,e=this.options.time;return e.tooltipFormat?n.format(t,e.tooltipFormat):n.format(t,e.displayFormats.datetime)}_tickFormatFunction(t,n,e,o){const r=this.options,i=r.time.displayFormats,s=this._unit,a=this._majorUnit,u=s&&i[s],c=a&&i[a],l=e[n],h=a&&c&&l&&l.major,f=this._adapter.format(t,o||(h?c:u)),_=r.ticks.callback;return _?p(_,[f,n,e],this):f}generateTickLabels(t){let n,e,o;for(n=0,e=t.length;n0?s:1}getDataTimestamps(){let t,n,e=this._cache.data||[];if(e.length)return e;const o=this.getMatchingVisibleMetas();if(this._normalized&&o.length)return this._cache.data=o[0].controller.getAllParsedValues(this);for(t=0,n=o.length;t=t[a].pos&&n<=t[u].pos&&({lo:a,hi:u}=Z(t,"pos",n)),({pos:o,time:i}=t[a]),({pos:r,time:s}=t[u])):(n>=t[a].time&&n<=t[u].time&&({lo:a,hi:u}=Z(t,"time",n)),({time:o,pos:i}=t[a]),({time:r,pos:s}=t[u]));const c=r-o;return c?i+(s-i)*(n-o)/c:i}Wi.id="time",Wi.defaults={bounds:"data",adapters:{},time:{parser:!1,unit:!1,round:!1,isoWeekday:!1,minUnit:"millisecond",displayFormats:{}},ticks:{source:"auto",major:{enabled:!1}}};class Ki extends Wi{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=Ji(n,this.min),this._tableRange=Ji(n,this.max)-this._minPos,super.initOffsets(t)}buildLookupTable(t){const{min:n,max:e}=this,o=[],r=[];let i,s,a,u,c;for(i=0,s=t.length;i=n&&u<=e&&o.push(u);if(o.length<2)return[{time:n,pos:0},{time:e,pos:1}];for(i=0,s=o.length;i{for(var o in n)e.o(n,o)&&!e.o(t,o)&&Object.defineProperty(t,o,{enumerable:!0,get:n[o]})},e.o=(t,n)=>Object.prototype.hasOwnProperty.call(t,n),e.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},e(608)})())); +!function(t,n){"object"==typeof exports&&"object"==typeof module?module.exports=n():"function"==typeof define&&define.amd?define([],n):"object"==typeof exports?exports.benchart=n():t.benchart=n()}(this,(()=>(()=>{var t={868:function(t,n,e){var o,r,i;r=[n,e(744)],void 0===(i="function"==typeof(o=function(t,n){"use strict";var e,o=n.$_$.la,r=n.$_$.h9,i=n.$_$.rd;function s(){e=this,u.call(this)}function a(){return null==e&&new s,e}function u(){}function c(t){this.ko_1=t}function l(t){this.oo_1=t}function h(t){this.lo_1=t}return s.prototype=Object.create(u.prototype),s.prototype.constructor=s,s.$metadata$=o("None",void 0,void 0,void 0,void 0,u.prototype),u.prototype.atomicfu$Trace$append$1=function(t){},u.prototype.atomicfu$Trace$append$2=function(t,n){},u.prototype.atomicfu$Trace$append$3=function(t,n,e){},u.prototype.atomicfu$Trace$append$4=function(t,n,e,o){},u.$metadata$=r("TraceBase"),c.prototype.mo=function(t){this.ko_1=t},c.prototype.no=function(){return this.ko_1},c.prototype.atomicfu$compareAndSet=function(t,n){return this.ko_1===t&&(this.ko_1=n,!0)},c.prototype.atomicfu$getAndSet=function(t){var n=this.ko_1;return this.ko_1=t,n},c.prototype.toString=function(){return i(this.ko_1)},c.$metadata$=r("AtomicRef"),Object.defineProperty(c.prototype,"kotlinx$atomicfu$value",{configurable:!0,get:c.prototype.no,set:c.prototype.mo}),l.prototype.po=function(t){this.oo_1=t},l.prototype.no=function(){return this.oo_1},l.prototype.atomicfu$compareAndSet=function(t,n){return this.oo_1===t&&(this.oo_1=n,!0)},l.prototype.atomicfu$getAndSet=function(t){var n=this.oo_1;return this.oo_1=t,n},l.prototype.toString=function(){return this.oo_1.toString()},l.$metadata$=r("AtomicBoolean"),Object.defineProperty(l.prototype,"kotlinx$atomicfu$value",{configurable:!0,get:l.prototype.no,set:l.prototype.po}),h.prototype.qo=function(t){this.lo_1=t},h.prototype.no=function(){return this.lo_1},h.prototype.atomicfu$compareAndSet=function(t,n){return this.lo_1===t&&(this.lo_1=n,!0)},h.prototype.atomicfu$getAndSet=function(t){var n=this.lo_1;return this.lo_1=t,n},h.prototype.atomicfu$getAndIncrement=function(){var t=this.lo_1;return this.lo_1=t+1|0,t},h.prototype.atomicfu$getAndDecrement=function(){var t=this.lo_1;return this.lo_1=t-1|0,t},h.prototype.atomicfu$getAndAdd=function(t){var n=this.lo_1;return this.lo_1=this.lo_1+t|0,n},h.prototype.atomicfu$addAndGet=function(t){return this.lo_1=this.lo_1+t|0,this.lo_1},h.prototype.atomicfu$incrementAndGet=function(){var t=this;return t.lo_1=t.lo_1+1|0,t.lo_1},h.prototype.atomicfu$decrementAndGet=function(){var t=this;return t.lo_1=t.lo_1-1|0,t.lo_1},h.prototype.toString=function(){return this.lo_1.toString()},h.$metadata$=r("AtomicInt"),Object.defineProperty(h.prototype,"kotlinx$atomicfu$value",{configurable:!0,get:h.prototype.no,set:h.prototype.qo}),r("ReentrantLock"),t.$_$=t.$_$||{},t.$_$.a=function(t){return function(t,n){return new l(t)}(t,a())},t.$_$.b=function(t){return function(t,n){return new c(t)}(t,a())},t.$_$.c=function(t){return function(t,n){return new h(t)}(t,a())},t})?o.apply(n,r):o)||(t.exports=i)},769:function(t,n,e){var o,r;o=[n,e(744),e(646)],void 0===(r=function(t,n,e){"use strict";var o,r,i,s,a,u,c,l,h,p,f,_,d,v,y,m,g,$,b,w,x,k,j,C,z,S,q,O,P,M,A,E,I,D,T,B,L,N,F,R,H,U,V,W,J,K,G,Y,X,Z,Q,tt,nt,et,ot,rt,it,st,at,ut,ct,lt,ht,pt,ft,_t,dt,vt,yt,mt,gt,$t=Math.imul,bt=n.$_$.s9,wt=n.$_$.r4,xt=n.$_$.pa,kt=n.$_$.h9,jt=n.$_$.t,Ct=n.$_$.nc,zt=n.$_$.da,St=n.$_$.w1,qt=n.$_$.od,Ot=n.$_$.pd,Pt=n.$_$.m4,Mt=n.$_$.k2,At=n.$_$.ed,Et=n.$_$.qd,It=n.$_$.h8,Dt=e.$_$.n,Tt=e.$_$.i,Bt=n.$_$.p8,Lt=n.$_$.o8,Nt=n.$_$.q8,Ft=n.$_$.t8,Rt=n.$_$.ba,Ht=n.$_$.j9,Ut=n.$_$.e1,Vt=n.$_$.j,Wt=n.$_$.w,Jt=n.$_$.q9,Kt=n.$_$.fc,Gt=n.$_$.k6,Yt=n.$_$.a8,Xt=n.$_$.r7,Zt=n.$_$.cc,Qt=n.$_$.s,tn=n.$_$.sd,nn=n.$_$.d8,en=n.$_$.la,on=n.$_$.t1,rn=n.$_$.kd,sn=n.$_$.p6,an=n.$_$.i9,un=n.$_$.ya,cn=n.$_$.o9,ln=n.$_$.t9,hn=n.$_$.o5,pn=n.$_$.fd,fn=n.$_$.z,_n=n.$_$.j7,dn=e.$_$.k,vn=e.$_$.e,yn=e.$_$.f,mn=n.$_$.rd,gn=n.$_$.s8,$n=n.$_$.r8,bn=n.$_$.p9,wn=n.$_$.y4,xn=n.$_$.q5,kn=n.$_$.u8,jn=e.$_$.l,Cn=n.$_$.f8,zn=e.$_$.c,Sn=n.$_$.v,qn=n.$_$.x7,On=n.$_$.s6,Pn=e.$_$.h,Mn=n.$_$.i1,An=n.$_$.e8,En=n.$_$.ad,In=e.$_$.o,Dn=e.$_$.b,Tn=n.$_$.i,Bn=n.$_$.jc,Ln=e.$_$.g,Nn=e.$_$.m,Fn=n.$_$.c1,Rn=n.$_$.m7,Hn=(n.$_$.v8,n.$_$.w8,n.$_$.r5),Un=n.$_$.n6,Vn=n.$_$.l9,Wn=n.$_$.e4,Jn=n.$_$.c5,Kn=n.$_$.b5,Gn=n.$_$.q6,Yn=n.$_$.b7,Xn=n.$_$.o1,Zn=n.$_$.i6,Qn=n.$_$.h6,te=n.$_$.j5,ne=n.$_$.l5,ee=n.$_$.g5,oe=n.$_$.i5,re=n.$_$.z1,ie=n.$_$.f5,se=n.$_$.t4,ae=n.$_$.ra,ue=n.$_$.a9,ce=n.$_$.v4,le=n.$_$.v1,he=n.$_$.k5,pe=n.$_$.u6,fe=n.$_$.z6,_e=n.$_$.u4,de=n.$_$.h5,ve=n.$_$.w4,ye=n.$_$.s4,me=n.$_$.ua,ge=n.$_$.ta,$e=n.$_$.cd,be=n.$_$.p1,we=n.$_$.y1,xe=n.$_$.n1,ke=n.$_$.y,je=n.$_$.bc,Ce=n.$_$.x9,ze=n.$_$.x5,Se=n.$_$.e,qe=n.$_$.q7,Oe=n.$_$.ab,Pe=n.$_$.r9,Me=n.$_$.l4,Ae=n.$_$.w7,Ee=n.$_$.cb,Ie=n.$_$.z8,De=n.$_$.w5,Te=n.$_$.c2,Be=n.$_$.g,Le=n.$_$.zb,Ne=n.$_$.f2,Fe=n.$_$.j1;function Re(){}function He(){}function Ue(){return Pi()}function Ve(){}function We(t,n){this.j11_1=t,this.k11_1=n,this.l11_1=0}function Je(t){this.m11_1=t;var n;n=jt(),this.n11_1=n,this.o11_1=this.m11_1,this.p11_1=8}function Ke(t,n){this.s11_1=t,this.t11_1=n}function Ge(t){this.w11_1=t,this.x11_1=Va(),this.y11_1=null;var n;n=jt(),this.z11_1=n;var e;e=jt(),this.a12_1=e,this.b12_1=8}function Ye(){return Kr(),o}function Xe(){return Kr(),s}function Ze(){return Kr(),c}function Qe(){return Kr(),l}function to(){}function no(t,n){Kr();for(var e=t.i13();e.d();){var o=e.e(),r=o;if(null!=r&&Rt(r,xs))n.m12(o);else if(r instanceof Ti){var i=o.k13_1;null!=i&&(i.d14_1=!0,o.pt())}}t.l14()}function eo(t){var n;t.s15_1=t.o14_1.u16(),ro(t,100),t.n14_1.w16(),t.g15_1=t.n14_1.x16(),t.j15_1.a17((n=t.i15_1,Kr(),n?1:0)),t.i15_1=t.g12(t.g15_1),t.w15_1=null,t.b15_1||(t.b15_1=t.n14_1.b17());var e=function(t,n,e){return function(t,n){return Kr(),t.v2(n instanceof vi?n:Ct())}(e,n)?function(t,n){Kr();var e=t.b3(n instanceof vi?n:Ct()),o=null==e?null:e.n2();return null==o||zt(o)?o:Ct()}(e,n):n.x17_1.n2()}(0,(Ah(),_t),t.g15_1);null==e||(e.a(t.o14_1),t.n14_1.c17(e),wt()),ro(t,t.n14_1.d17())}function oo(t){so(t),t.n14_1.e17(),so(t),function(t){t.e16_1&&(Ao(t,!1,Xe(),2),t.e16_1=!1)}(t),function(t){Eo(t),t.t14_1.h()||Pr(xt("Start/end imbalance")),t.g16_1.h()||Pr(xt("Missed recording an endGroup()")),Uo(t)}(t),t.s15_1.q17(),t.c15_1=!1}function ro(t,n){return lo(t,n,null,!1,null)}function io(t,n,e){return lo(t,n,e,!1,null)}function so(t){return po(t,!1)}function ao(t,n){if(null==n){var e=t.w15_1;if(null!=e)return e}if(t.z15_1&&t.v15_1)for(var o=t.u15_1.f13_1;o>0;){if(202===t.u15_1.v17(o)&&Ht(t.u15_1.u17(o),Qe())){var r=t.u15_1.t17(o),i=null!=r&&Rt(r,_u)?r:Ct();return t.w15_1=i,i}o=t.u15_1.w17(o)}if(t.s15_1.f()>0)for(var s=n,a=null==s?t.s15_1.m17_1:s;a>0;){if(202===t.s15_1.v17(a)&&Ht(t.s15_1.u17(a),Qe())){var u,c=t.h15_1.b3(a);if(null==c){var l=t.s15_1.t17(a);u=null!=l&&Rt(l,_u)?l:Ct()}else u=c;var h=u;return t.w15_1=h,h}a=t.s15_1.w17(a)}return t.w15_1=t.g15_1,t.g15_1}function uo(t){gr(t.u15_1.g13_1),t.t15_1=new oa;var n,e=t,o=t.t15_1.z17();o.q17(),n=o,e.u15_1=n}function co(t,n,e){var o;n?t.s15_1.d18():(null!=e&&t.s15_1.b18()!==e&&Ao(t,!1,(o=e,function(t,n,e){return n.s1b(o),wt()}),2),t.s15_1.c18())}function lo(t,n,e,o,r){if(So(t),Ko(t,n,e,r),t.z15_1){t.s15_1.e18();var i=t.u15_1.e13_1;if(o)t.u15_1.h18(_r().j12_1);else if(null!=r){var s=e;t.u15_1.g18(n,null==s?_r().j12_1:s,r)}else{var a=e;t.u15_1.f18(n,null==a?_r().j12_1:a)}var u=t.u14_1;if(null==u);else{var c=new Ma(n,-1,_o(0,i),-1,0);u.o18(c,t.v14_1-u.j18_1|0),u.p18(c)}return ho(t,o,null),wt()}null==t.u14_1&&(t.s15_1.q18()===n&&Ht(e,t.s15_1.s18())?co(t,o,r):t.u14_1=new jr(t.s15_1.r18(),t.v14_1));var l,h=t.u14_1,p=null;if(null!=h){var f=h.t18(n,e);if(null!=f){h.p18(f);var _=f.y18_1;t.v14_1=h.b19(f)+h.j18_1|0;var d=h.c19(f),v=d-h.k18_1|0;h.d19(d,h.k18_1),Ro(t,_),t.s15_1.e19(_),v>0&&Po(t,(l=v,function(t,n,e){return n.t1b(l),wt()})),co(t,o,r)}else{t.s15_1.e18(),t.z15_1=!0,t.w15_1=null,function(t){t.u15_1.g13_1&&(t.u15_1=t.t15_1.z17(),t.u15_1.a18(),t.v15_1=!1,t.w15_1=null)}(t),t.u15_1.u18();var y=t.u15_1.e13_1;if(o)t.u15_1.h18(_r().j12_1);else if(null!=r){var m=e;t.u15_1.g18(n,null==m?_r().j12_1:m,r)}else{var g=e;t.u15_1.f18(n,null==g?_r().j12_1:g)}t.x15_1=t.u15_1.v18(y);var $=new Ma(n,-1,_o(0,y),-1,0);h.o18($,t.v14_1-h.j18_1|0),h.p18($),p=new jr(jt(),o?0:t.v14_1)}}ho(t,o,p)}function ho(t,n,e){t.t14_1.f19(t.u14_1),t.u14_1=e,t.w14_1.a17(t.v14_1),n&&(t.v14_1=0),t.y14_1.a17(t.x14_1),t.x14_1=0}function po(t,n){if(t.z15_1){var e=t.u15_1.f13_1;Yo(t,t.u15_1.v17(e),t.u15_1.u17(e),t.u15_1.t17(e))}else{var o=t.s15_1.m17_1;Yo(t,t.s15_1.v17(o),t.s15_1.u17(o),t.s15_1.t17(o))}var r=t.x14_1,i=t.u14_1;if(null!=i&&i.i18_1.f()>0){for(var s=i.i18_1,a=i.h19(),u=function(t){var n=ke(t.f()),e=0,o=t.f()-1|0;if(e<=o)do{var r=e;e=e+1|0;var i=t.g(r);n.a(i)}while(e<=o);return n}(a),c=Ut(),l=0,h=a.f(),p=0,f=s.f(),_=0;p0&&(Ro(t,t.s15_1.m19()),t.s15_1.a18())}for(var g=t.v14_1;!t.s15_1.n19();){var $=t.s15_1.k17_1;Fo(t);var b=t.s15_1.s17();Vo(t,g,b),zr(t.e15_1,$,t.s15_1.k17_1)}var w=t.z15_1;if(w){n&&(function(t){t.y15_1.a(t.h16_1.g19())}(t),r=1),t.s15_1.p19();var x=t.u15_1.f13_1;if(t.u15_1.q19(),!t.s15_1.s19()){var k=_o(0,x);t.u15_1.r19(),t.u15_1.q17(),function(t,n){if(t.y15_1.h())Po(t,(o=t.t15_1,r=n,function(t,n,e){return n.u18(),n.n1c(o,r.m1c(o)),n.r19(),wt()}));else{var e=Yt(t.y15_1);t.y15_1.s7(),Eo(t),Do(t),Po(t,function(t,n,e){return function(o,r,i){var s=t.z17();try{var a=0,u=n.f()-1|0;if(a<=u){do{var c=a;a=a+1|0,n.g(c)(o,s,i)}while(a<=u);wt()}}finally{s.q17()}return r.u18(),r.n1c(t,e.m1c(t)),r.r19(),wt()}}(t.t15_1,e,n))}var o,r}(t,t.x15_1),t.z15_1=!1,t.o14_1.eu()||(go(t,k,0),vo(t,k,r))}}else{n&&Bo(t),function(t){var n=t.s15_1.m17_1;t.g16_1.r1a(-1)<=n||Pr(xt("Missed recording an endGroup")),t.g16_1.r1a(-1)===n&&(t.g16_1.g19(),Ao(t,!1,Xe(),2))}(t);var j=t.s15_1.m17_1;r!==mo(t,j)&&vo(t,j,r),n&&(r=1),t.s15_1.o19(),Jo(t)}!function(t,n,e){var o=t.t14_1.g19();if(null!=o&&!e){var r=o,i=r.k18_1;r.k18_1=i+1|0}t.u14_1=o,t.v14_1=t.w14_1.g19()+n|0,t.x14_1=t.y14_1.g19()+n|0}(t,r,w)}function fo(t){var n=t.q15_1;t.q15_1=!0;for(var e=!1,o=t.s15_1.m17_1,r=o+t.s15_1.j19(o)|0,i=t.v14_1,s=t.a16_1,a=t.x14_1,u=o,c=Sr(t.e15_1,t.s15_1.k17_1,r);null!=c;){var l=c.u19_1;if(qr(t.e15_1,l),c.z19()){e=!0,t.s15_1.e19(l);var h=t.s15_1.k17_1;$o(t,u,h,o),u=h,t.v14_1=yo(t,l,h,o,i),t.a16_1=wo(t,t.s15_1.w17(h),o,s),t.w15_1=null,c.t19_1.x19(t),t.w15_1=null,t.s15_1.y19(o)}else t.p15_1.f19(c.t19_1),c.t19_1.w19(),t.p15_1.g19();c=Sr(t.e15_1,t.s15_1.k17_1,r)}if(e){$o(t,u,o,o),t.s15_1.a18();var p=mo(t,o);t.v14_1=i+p|0,t.x14_1=a+p|0}else xo(t);t.a16_1=s,t.q15_1=n}function _o(t,n){return-2-n|0}function vo(t,n,e){var o=mo(t,n);if(o!==e){var r=e-o|0,i=n,s=t.t14_1.f()-1|0;t:for(;-1!==i;){var a=mo(t,i)+r|0;go(t,i,a);var u=s;if(0<=u)n:do{var c=u;u=u+-1|0;var l=t.t14_1.a1a(c);if(null!=l&&l.i19(i,a)){s=c-1|0;break n}}while(0<=u);if(i<0)i=t.s15_1.m17_1;else{if(t.s15_1.b1a(i))break t;i=t.s15_1.w17(i)}}}}function yo(t,n,e,o,r){for(var i=t.s15_1.w17(e);i!==o&&!t.s15_1.b1a(i);)i=t.s15_1.w17(i);var s=t.s15_1.b1a(i)?0:r;if(i===e)return s;var a=i,u=s+(mo(t,i)-t.s15_1.c1a(e)|0)|0;t:for(;s=0)return i}return t.s15_1.c1a(n)}function go(t,n,e){if(mo(t,n)!==e)if(n<0){var o,r=t.a15_1;if(null==r){var i=Wt();t.a15_1=i,o=i}else o=r;o.n(n,e)}else{var s,a=t.z14_1;if(null==a){var u=new Int32Array(t.s15_1.f());Vt(u,-1,0,0,6,null),t.z14_1=u,s=u}else s=a;s[n]=e}}function $o(t,n,e,o){for(var r=t.s15_1,i=function(t,n,e,o){if(Kr(),n===e)return n;if(n===o||e===o)return o;if(t.w17(n)===e)return e;if(t.w17(e)===n)return n;if(t.w17(n)===t.w17(e))return t.w17(n);var r=n,i=e,s=Tr(t,n,o),a=Tr(t,e,o),u=s-a|0,c=0;if(c0&&s!==i;)r.b1a(s)&&Bo(t),s=r.w17(s);bo(t,e,i)}function bo(t,n,e){var o,r;n>0&&n!==e&&(bo(t,t.s15_1.w17(n),e),t.s15_1.b1a(n)&&To(t,(o=t.s15_1,r=n,o.o1a(r))))}function wo(t,n,e,o){var r;if(n===e)r=o;else{var i,s=function(t,n,e){var o;if(t.d1a(e)){var r,i=t.u17(e);if(null==i)r=null;else{var s=i;r=s instanceof Kt?i.t1_1:s instanceof xr?Ai():Jt(i)}o=null==r?0:r}else{var a,u=t.v17(e);if(207===u){var c,l=t.t17(e);a=null==(c=null==l?null:Ht(l,_r().j12_1)?u:Jt(l))?u:c}else a=u;o=a}return o}(t.s15_1,0,n);if(s===Ai())i=s;else{var a=wo(t,t.s15_1.w17(n),e,o);i=qt(a,3)^s}r=i}return r}function xo(t){t.x14_1=t.s15_1.e1a(),t.s15_1.a18()}function ko(t,n,e,o,r){t.i1a(Ai(),n),t.g12(o);var i=t.a16_1;t.a16_1=Ai(),t.z15_1&&t.u15_1.j1a(0,1,null);var s,a,u,c=!t.z15_1&&!Ht(t.s15_1.b18(),e);if(c){var l=t.h15_1,h=t.s15_1.k17_1;l.n(h,e)}if(lo(t,202,Qe(),!1,e),t.z15_1&&!r){t.v15_1=!0,t.w15_1=null;var p=t.u15_1.v18(t.u15_1.w17(t.u15_1.f13_1)),f=t.t15_1,_=Gt(),d=new mr(n,o,t.s14_1,f,p,_,function(t,n,e,o){return 0!=(2&e)&&(n=null),ao(t,n)}(t,null,2));t.n14_1.k1a(d)}else{var v=t.i15_1;t.i15_1=c,Hh(t,(s=cl(1378964644,!0,(a=n,u=o,function(t,n){var e=t;return br(e,"C2821@107760L18:Composer.kt#9igjgp"),2==(11&n)&&e.w1b()?(e.a18(),wt()):a.v1b_1(u,e,0),wt()})),function(t,n){return s.u1b(t,n)})),t.i15_1=v}so(t),t.a16_1=i,t.l1a()}function jo(t,n,e,o,r,i){var s=t.f16_1,a=t.q15_1,u=t.v14_1;try{t.f16_1=!1,t.q15_1=!0,t.v14_1=0;var c,l=0,h=r.f()-1|0;if(l<=h)do{var p=l;l=l+1|0;var f=r.g(p),_=f.l4(),d=f.m4();if(null!=d)for(var v=d.c();v.d();){var y=v.e();t.m1a(_,y)}else t.m1a(_,null)}while(l<=h);if(null==n)c=null;else{var m=o;c=n.n1a(e,null==m?-1:m,i)}var g=c;return null==g?i():g}finally{t.f16_1=s,t.q15_1=a,t.v14_1=u}}function Co(t,n,e,o,r,i,s,a){return 0!=(2&s)&&(n=null),0!=(4&s)&&(e=null),0!=(8&s)&&(o=null),0!=(16&s)&&(r=Gt()),jo(t,n,e,o,r,i)}function zo(t){t.d15_1||Pr(xt("A call to createNode(), emitNode() or useNode() expected was not expected")),t.d15_1=!1}function So(t){!t.d15_1||Pr(xt("A call to createNode(), emitNode() or useNode() expected"))}function qo(t,n){t.q14_1.a(n)}function Oo(t,n){Eo(t),Do(t),qo(t,n)}function Po(t,n){(function(t,n,e,o){0!=(2&e)&&(n=!1),Lo(t,n)})(t,!1,2),Ho(t),qo(t,n)}function Mo(t,n,e){Lo(t,n),qo(t,e)}function Ao(t,n,e,o,r){return 0!=(2&o)&&(n=!1),Mo(t,n,e)}function Eo(t){var n,e=t.b16_1;e>0&&(t.b16_1=0,qo(t,(n=e,function(t,e,o){var r=0;if(r=0||Pr(xt("Tried to seek backward")),r>0&&(qo(t,(e=r,function(t,n,o){return n.l1c(e),wt()})),t.d16_1=o)}function No(t,n){t.y15_1.a(n)}function Fo(t){(function(t,n){nr(t,n,!1,0),Jo(t)})(t,t.s15_1.k17_1),Po(t,(Kr(),r));var n=t;n.d16_1=n.d16_1+t.s15_1.q1a()|0}function Ro(t,n){var e=t.s15_1.k17_1-t.d16_1|0;t.d16_1=n-e|0}function Ho(t){if(t.s15_1.f()>0){var n=t.s15_1,e=n.m17_1;if(t.g16_1.r1a(-1)!==e){!t.e16_1&&t.f16_1&&(Ao(t,!1,(Kr(),a),2),t.e16_1=!0);var o=n.v18(e);t.g16_1.a17(e),Ao(t,!1,(r=o,function(t,n,e){return n.o1c(r),wt()}),2)}}var r}function Uo(t){t.u14_1=null,t.v14_1=0,t.x14_1=0,t.d16_1=0,t.a16_1=0,t.d15_1=!1,t.e16_1=!1,t.g16_1.s7(),t.p15_1.s7(),function(t){t.z14_1=null,t.a15_1=null}(t)}function Vo(t,n,e){if(e>0)if(n>=0||Pr(xt("Invalid remove index "+n)),t.i16_1===n){var o=t;o.l16_1=o.l16_1+e|0}else Jo(t),t.i16_1=n,t.l16_1=e}function Wo(t,n,e,o){if(o>0)if(t.l16_1>0&&t.j16_1===(n-t.l16_1|0)&&t.k16_1===(e-t.l16_1|0)){var r=t;r.l16_1=r.l16_1+o|0}else Jo(t),t.j16_1=n,t.k16_1=e,t.l16_1=o}function Jo(t){var n,e,o=t.l16_1;if(t.l16_1=0,o>0)if(t.i16_1>=0){var r=t.i16_1;t.i16_1=-1,Oo(t,(n=r,e=o,function(t,o,r){return t.h11(n,e),wt()}))}else{var i=t.j16_1;t.j16_1=-1;var s=t.k16_1;t.k16_1=-1,Oo(t,function(t,n,e){return function(o,r,i){return o.i11(t,n,e),wt()}}(i,s,o))}}function Ko(t,n,e,o){null==e?null==o||207!==n||Ht(o,_r().j12_1)?Go(t,n):Go(t,Jt(o)):Go(t,e instanceof Kt?e.t1_1:Jt(e))}function Go(t,n){var e,o=t,r=t.a16_1;e=qt(r,3),o.a16_1=e^n}function Yo(t,n,e,o){null==e?null==o||207!==n||Ht(o,_r().j12_1)?Xo(t,n):Xo(t,Jt(o)):Xo(t,e instanceof Kt?e.t1_1:Jt(e))}function Xo(t,n){var e,o=t,r=t.a16_1^n;e=Ot(r,3),o.a16_1=e}function Zo(t,n,e){!t.q15_1||Pr(xt("Reentrant composition is not supported"));t:{var o=Rh().s1a("Compose:recompose");try{t.n15_1=Hl(),t.o15_1=t.n15_1.y1a(),t.h15_1.s7();var r=0,i=n.b1b_1;if(r1&&(_=new Qo(lr),Xt(d,_)),t.v14_1=0;var v=!1;t.q15_1=!0;try{eo(t);var y=t.d1b();y!==e&&null!=e&&t.f1a(null==e||zt(e)?e:Ct()),function(t,n,e){bi();var o=gi().lu();try{var r=gi(),i=gi().lu();r.r1h((null==i?gu():i).a(tn(t,n))),e()}finally{gi().r1h(o)}}((m=t,function(t){var n=m,e=n.m15_1;return n.m15_1=e+1|0,wt()}),function(t){return function(n){var e=t,o=e.m15_1;return e.m15_1=o-1|0,wt()}}(t),function(t,n,e){return function(){return null!=t?(io(n,200,Ze()),Hh(n,t),so(n),wt()):n.c15_1&&null!=e&&!Ht(e,_r().j12_1)?(io(n,200,Ze()),Hh(n,null!=e&&"function"==typeof e?e:Ct()),so(n),wt()):(n.p1c(),wt()),wt()}}(e,t,y)),oo(t),v=!0,wt()}finally{t.q15_1=!1,t.e15_1.s7(),v||function(t){Uo(t),t.t14_1.s7(),t.w14_1.s7(),t.y14_1.s7(),t.f15_1.s7(),t.j15_1.s7(),t.h15_1.s7(),t.s15_1.q17(),t.a16_1=0,t.m15_1=0,t.d15_1=!1,t.q15_1=!1,t.c15_1=!1}(t)}break t}finally{Rh().e1b(o)}}var m}function Qo(t){this.f1b_1=t}function tr(t,n,e){for(;!t.g1b(e);)t.a18(),t.b1a(t.f13_1)&&n.e11(),t.q19()}function nr(t,n,e,o){var r;if(t.s15_1.o1b(n)){var i=t.s15_1.u17(n),s=i instanceof xr?i:Ct(),a=t.s15_1.m1b(n,0),u=t.s15_1.v18(n),c=n+t.s15_1.j19(n)|0,l=function(t,n,e){Kr();var o=jt(),r=Ir(t,n);t:for(;r0&&Vo(t,o,$),y=0}else y=t.s15_1.c1a(n);r=y}else if(t.s15_1.l1b(n)){for(var b=n+t.s15_1.j19(n)|0,w=n+1|0,x=0;w=0&&!t.b1a(e);)e=t.w17(e);var o=0;for(e=e+1|0;e0?new We(e,t._v):e,s=0,a=n.f()-1|0;if(s<=a){do{var u=s;s=s+1|0,n.g(u)(i,o,r)}while(s<=a);wt()}return wt()}}function ir(t,n){return function(e,o,r){var i=t._v,s=0,a=n.f()-1|0;if(s<=a){do{var u=s;s=s+1|0;var c=n.g(u);Rt(e,Ve)||Ct(),e.g11(i+u|0,c),e.f11(i+u|0,c)}while(s<=a);wt()}return wt()}}function sr(t,n,e){return function(o,r,i){var s,a=t.n14_1.f1c(n);null==a?Pr("Could not resolve state for movable content"):s=a;var u=s,c=r.i1c(1,u.g1c_1,1);if(!c.h()){var l=e.z1b_1,h=l instanceof ai?l:Ct(),p=0,f=c.f()-1|0;if(p<=f){do{var _=p;p=p+1|0;var d=c.g(_),v=r.j1c(d,0),y=v instanceof Ti?v:null;null==y||y.k1c(h)}while(p<=f);wt()}}return wt()}}function ar(t,n){return function(){return ko(t,n.x1b_1,n.d1c_1,n.y1b_1,!0),wt()}}function ur(t,n){return function(e,o,r){var i=t._v>0?new We(e,t._v):e,s=0,a=n.f()-1|0;if(s<=a){do{var u=s;s=s+1|0,n.g(u)(i,o,r)}while(s<=a);wt()}return wt()}}function cr(t,n,e){return Rt(t,Ve)||Ct(),tr(n,t,0),n.q19(),wt()}function lr(t,n){var e,o=t.u19_1;return e=n.u19_1,nn(o,e)}function hr(t,n,e,o,r,i,s){this.m14_1=t,this.n14_1=n,this.o14_1=e,this.p14_1=o,this.q14_1=r,this.r14_1=i,this.s14_1=s,this.t14_1=new Ha,this.u14_1=null,this.v14_1=0,this.w14_1=new Ra,this.x14_1=0,this.y14_1=new Ra,this.z14_1=null,this.a15_1=null,this.b15_1=!1,this.c15_1=!1,this.d15_1=!1;var a;a=jt(),this.e15_1=a,this.f15_1=new Ra,this.g15_1=mu(),this.h15_1=Wt(),this.i15_1=!1,this.j15_1=new Ra,this.k15_1=!1,this.l15_1=-1,this.m15_1=0,this.n15_1=Hl(),this.o15_1=0,this.p15_1=new Ha,this.q15_1=!1,this.r15_1=!1;var u,c=this.o14_1.u16();c.q17(),u=c,this.s15_1=u,this.t15_1=new oa;var l,h=this.t15_1.z17();h.q17(),l=h,this.u15_1=l,this.v15_1=!1,this.w15_1=null;var p,f,_=this.t15_1.u16();try{f=_.v18(0)}finally{_.q17()}p=f,this.x15_1=p;var d;d=jt(),this.y15_1=d,this.z15_1=!1,this.a16_1=0,this.b16_1=0,this.c16_1=new Ha,this.d16_1=0,this.e16_1=!1,this.f16_1=!0,this.g16_1=new Ra,this.h16_1=new Ha,this.i16_1=-1,this.j16_1=-1,this.k16_1=-1,this.l16_1=0}function pr(){}function fr(){h=this,this.j12_1=new pr}function _r(){return null==h&&new fr,h}function dr(){}function vr(){if(v)return wt();v=!0,p=new yr("IGNORED",0),f=new yr("SCHEDULED",1),_=new yr("DEFERRED",2),d=new yr("IMMINENT",3)}function yr(t,n){Kt.call(this,t,n)}function mr(t,n,e,o,r,i,s){this.x1b_1=t,this.y1b_1=n,this.z1b_1=e,this.a1c_1=o,this.b1c_1=r,this.c1c_1=i,this.d1c_1=s,this.e1c_1=8}function gr(t){return Kr(),void(t||Pr(xt("Check failed")))}function $r(t){this.g1c_1=t,this.h1c_1=8}function br(t,n){Kr(),t.u1d(n)}function wr(){}function xr(){}function kr(t){return function(){var n,e=(Kr(),Wt()),o=0,r=t.i18_1.f();if(o=0))throw on(xt("Invalid start index"));var e;e=jt(),this.l18_1=e;var o,r=0,i=Wt(),s=0,a=this.i18_1.f();if(s=0?t.n4(e):null}function Or(t,n){Kr();var e=jt(),o=t.u16();try{Nr(o,e,t.i1b(n)),wt()}finally{o.q17()}return e}function Pr(t){throw Kr(),St(xt("Compose Runtime internal error. Unexpected or incorrect use of the Compose internal runtime API ("+t+"). Please report to Google or use https://goo.gle/compose-feedback"))}function Mr(t,n,e){this.o1e_1=t,this.p1e_1=n,this.q1e_1=e}function Ar(t,n,e){Kr();var o,r=t.b3(n);if(null==r){var i=Ut();t.n(n,i),o=i}else o=r;return o.a(e)}function Er(t,n){Kr();var e,o=t.b3(n),r=null==o?null:sn(o);return null==r?e=null:(function(t,n,e){Kr();var o,r=t.b3(n);null==r?o=null:(r.kf(e),r.h()&&(t.pg(n),wt()),o=wt())}(t,n,r),e=r),e}function Ir(t,n){Kr();var e=Dr(t,n);return e<0?0|-(e+1|0):e}function Dr(t,n){Kr();for(var e=0,o=t.f()-1|0;e<=o;){var r=(e+o|0)>>>1|0,i=t.g(r),s=an(i.u19_1,n);if(s<0)e=r+1|0;else{if(!(s>0))return r;o=r-1|0}}return 0|-(e+1|0)}function Tr(t,n,e){Kr();for(var o=0,r=n;r>0&&r!==e;)r=t.w17(r),o=o+1|0;return o}function Br(t){this.f1f_1=t}function Lr(t){this.g1f_1=t}function Nr(t,n,e){if(t.b1a(e))n.a(t.o1a(e));else for(var o=e+1|0,r=e+t.j19(e)|0;o=0)for(var u=ru(s,a).c();u.d();)si(t,e,o,u.e())}}if(e&&!t.x13_1.h()){var c=t.w13_1,l=0,h=0,p=c.q1f_1;if(h0){if(l!==f){var z=c.n1f_1[l];c.n1f_1[l]=_,c.n1f_1[f]=z}l=l+1|0}}while(h0){if(A!==D){var K=M.n1f_1[A];M.n1f_1[A]=T,M.n1f_1[D]=K}A=A+1|0}}while(E0){if(e!==i){var y=n.n1f_1[e];n.n1f_1[e]=s,n.n1f_1[i]=y}e=e+1|0}}while(o=0)for(var r=ru(e,o).c();r.d();){var i=r.e();i.m1f(n).equals(Jr())&&t.b14_1.t1f(n,i)}}function ei(t,n){var e=new ii(t.u13_1);try{if(n.h())return wt();t:{var o=Rh().s1a("Compose:applyChanges");try{t.r13_1.b11();var r=t.v13_1.z17();try{var i=t.r13_1,s=0,a=n.f()-1|0;if(s<=a)do{var u=s;s=s+1|0,n.g(u)(i,r,e)}while(s<=a);n.s7(),wt()}finally{r.q17()}t.r13_1.c11(),wt();break t}finally{Rh().e1b(o)}}if(e.y1f(),e.z1f(),t.d14_1)t:{var c=Rh().s1a("Compose:unobserve");try{t.d14_1=!1;var l=t.w13_1,h=0,p=0,f=l.q1f_1;if(p0){if(h!==_){var C=l.n1f_1[h];l.n1f_1[h]=d,l.n1f_1[_]=C}h=h+1|0}}while(p=0)for(var s=ru(r,i).c();s.d();){var a=s.e();if(!t.b14_1.j1g(o,a)&&!a.m1f(o).equals(Wr()))if(a.s1f()&&!n)t.x13_1.a(a);else{var u,c=e._v;if(null==c){var l=fn();e._v=l,u=l}else u=c;u.a(a)}}}function ai(t,n,e){this.q13_1=t,this.r13_1=n,this.s13_1=new Eh(null),this.t13_1=Va(),this.u13_1=fn(),this.v13_1=new oa,this.w13_1=new au,this.x13_1=fn(),this.y13_1=new au;var o;o=jt(),this.z13_1=o;var r;r=jt(),this.a14_1=r,this.b14_1=new au,this.c14_1=Ya(0,1,null),this.d14_1=!1,this.e14_1=null,this.f14_1=0;var i,s=new hr(this.r13_1,this.q13_1,this.v13_1,this.u13_1,this.z13_1,this.a14_1,this);this.q13_1.k1g(s),i=s,this.g14_1=i,this.h14_1=e;var a=this.q13_1;this.i14_1=a instanceof gs,this.j14_1=!1,this.k14_1=(null==g&&new hi,g).l1g_1}function ui(){}function ci(t,n){var e=t;return br(e,"C:Composition.kt#9igjgp"),2==(11&n)&&e.w1b()&&e.a18(),wt()}function li(t,n){var e=t;return br(e,"C:Composition.kt#9igjgp"),2==(11&n)&&e.w1b()&&e.a18(),wt()}function hi(){var t;g=this,this.l1g_1=(t=cl(954879418,!1,ci),function(n,e){return t.u1b(n,e)}),this.m1g_1=function(t){return function(n,e){return t.u1b(n,e)}}(cl(1918065384,!1,li))}function pi(){}function fi(){$||($=!0,m=new Object)}function _i(){return w||(w=!0,b=mu()),b}function di(){this.v16_1=0}function vi(t){this.x17_1=new Ja(t)}function yi(t){vi.call(this,t)}function mi(t){yi.call(this,t)}function gi(){return bi(),x}function $i(){}function bi(){k||(k=!0,x=new Ih,new Ih)}function wi(t){this.s1h_1=t}function xi(){this.t1h_1=0}function ki(){}function ji(t,n){this.v1h_1=n,this.w1h_1=dn(t),this.x1h_1=null}function Ci(t){this.y1h_1=t,this.z1h_1=null}function zi(){C||(C=!0,j=new xi)}function Si(t,n){var e;if(n instanceof Kt)e=n.t1_1;else{var o=null==n?null:Jt(n);e=null==o?0:o}return e}function qi(t,n){this.a1i_1=t,this.b1i_1=n}function Oi(){z=this}function Pi(){return null==z&&new Oi,z}function Mi(){}function Ai(){return S}function Ei(t){this.c1i_1=t}function Ii(t,n){t.j13_1=n?32|t.j13_1:-33&t.j13_1}function Di(t,n){t.j13_1=n?16|t.j13_1:-17&t.j13_1}function Ti(t){this.j13_1=0,this.k13_1=t,this.l13_1=null,this.m13_1=null,this.n13_1=0,this.o13_1=null,this.p13_1=null}function Bi(){}function Li(){if(I)return wt();I=!0,q=new Ji("ShutDown",0),O=new Ji("ShuttingDown",1),P=new Ji("Inactive",2),M=new Ji("InactivePendingWork",3),A=new Ji("Idle",4),E=new Ji("PendingWork",5)}function Ni(t,n){t:for(;;){var e=t.i1i_1.n2(),o=e.a(n);if(e===o||t.i1i_1.ly(e,o))break t}}function Fi(t,n){t:for(;;){var e=t.i1i_1.n2(),o=e.kf(n);if(e===o||t.i1i_1.ly(e,o))break t}}function Ri(t,n){t.s7(),n.o1i_1;var e=n.v1i_1,o=0,r=e.f()-1|0;if(o<=r)do{var i=o;o=o+1|0;var s=e.g(i);t.a(s)}while(o<=r);n.v1i_1.s7(),wt()}function Hi(t,n,e,o,r,i){return function(s){var a;if(t.l1i_1.c12())t:{var u=Rh().s1a("Recomposer:animation");try{t.l1i_1.d12(s),Ml().e1j(),wt();break t}finally{Rh().e1b(u)}}t:{var c=Rh().s1a("Recomposer:recompose");try{t.o1i_1,Xi(t);var l=t.t1i_1,h=0,p=l.f()-1|0;if(h<=p)do{var f=h;h=h+1|0;var _=l.g(f);n.a(_)}while(h<=p);t.t1i_1.s7(),wt();var d=new ou,v=new ou;n:for(;!n.h()||!e.h();){try{var y=0,m=n.f()-1|0;if(y<=m)do{var g=y;y=y+1|0;var $=n.g(g);v.x1e($);var b=ns(t,$,d);null==b||(o.a(b),wt())}while(y<=m)}finally{n.s7()}if(d.p1a()){t.o1i_1;var w=t.r1i_1,x=0,k=w.f()-1|0;if(x<=k){do{var j=x;x=x+1|0;var C=w.g(j);!v.m3(C)&&C.q1g(d)&&n.a(C)}while(x<=k);wt()}}if(n.h())for(Ri(e,t);!e.h();){var z=es(t,e,d);xn(r,z),Ri(e,t)}}if(!o.h()){var S=t,q=S.k1i_1;S.k1i_1=q.dn();try{xn(i,o);var O=0,P=o.f()-1|0;if(O<=P)do{var M=O;O=O+1|0,o.g(M).z1g()}while(O<=P)}finally{o.s7()}}if(!r.h())try{xn(i,r);for(var A=r.c();A.d();)A.e().a1h()}finally{r.s7()}if(!i.h())try{for(var E=i.c();E.d();)E.e().c1d()}finally{i.s7()}(function(t){var n;if(t.o1i_1,t.w1i_1.h())n=Gt();else{var e=On(t.w1i_1.d3());t.w1i_1.s7();var o=Qt(e.f()),r=0,i=e.f()-1|0;if(r<=i)do{var s=r;r=r+1|0;var a=e.g(s),u=tn(a,t.x1i_1.b3(a));o.a(u)}while(r<=i);var c=o;t.x1i_1.s7(),n=c}var l=n,h=0,p=l.f()-1|0;if(h<=p)do{var f=h;h=h+1|0;var _=l.g(f),d=_.l4(),v=_.m4();null!=v&&d.z1b_1.y1g(v)}while(h<=p)})(t),t.o1i_1,a=Ki(t);break t}finally{Rh().e1b(c)}}return a}}function Ui(t){return function(n,e){var o;t.o1i_1,t.b1j_1.n2().x1(vs())>=0?(t.s1i_1.a(n),o=Ki(t)):o=null;var r,i=o;return null==i||(Pt(),r=Mt(wt()),i.z4(r),wt()),wt()}}function Vi(t,n,e){this.n1j_1=t,this.o1j_1=n,kn.call(this,e)}function Wi(t,n,e){var o=new Vi(t,n,e),r=function(t,n){return o.q1j(t,n)};return r.$arity=1,r}function Ji(t,n){Kt.call(this,t,n)}function Ki(t){if(t.b1j_1.n2().x1(_s())<=0){t.r1i_1.s7(),t.s1i_1.s7(),t.t1i_1.s7(),t.u1i_1.s7(),t.v1i_1.s7();var n=t.y1i_1;return null==n||n.kr(null,1,null),t.y1i_1=null,null}var e;null==t.p1i_1?(t.s1i_1.s7(),t.t1i_1.s7(),e=t.l1i_1.c12()?(Li(),M):ds()):e=!!(!!(!t.t1i_1.h()||!t.s1i_1.h())||!t.u1i_1.h())||!t.v1i_1.h()||t.z1i_1>0||t.l1i_1.c12()?ys():vs();var o,r=e;if(t.b1j_1.ky(r),r.equals(ys())){var i=t.y1i_1;t.y1i_1=null,o=i}else o=null;return o}function Gi(t){var n;if(t.o1i_1,t.a1j_1){var e;t:{for(var o=t.m1i_1.jt().c();o.d();)if(o.e().yo()){e=!0;break t}e=!1}n=e}else n=!0;return n}function Yi(t){this.s1j_1=t}function Xi(t){if(!t.s1i_1.h()){var n=t.s1i_1,e=0,o=n.f()-1|0;if(e<=o)do{var r=e;e=e+1|0;var i=n.g(r),s=t.r1i_1,a=0,u=s.f()-1|0;if(a<=u)do{var c=a;a=a+1|0,s.g(c).o1g(i)}while(a<=u)}while(e<=o);if(t.s1i_1.s7(),null!=Ki(t))throw St("called outside of runRecomposeAndApplyChanges")}}function Zi(t,n){t.o1i_1;var e=t.q1i_1;if(null!=e)throw e;if(t.b1j_1.n2().x1(_s())<=0)throw St("Recomposer shut down");if(null!=t.p1i_1)throw St("Recomposer already running");t.p1i_1=n,Ki(t)}function Qi(t){return t.o1i_1,!(t.s1i_1.h()&&t.t1i_1.h())||t.l1i_1.c12()}function ts(t,n,e){var o,r,i=function(t){var n=t.z7(Pi());if(null==n)throw St(xt("A MonotonicFrameClock is not available in this CoroutineContext. Callers should supply an appropriate MonotonicFrameClock using withContext."));return n}(e.b5());return zn(t.l1i_1,(o=new ps(t,n,i,null),r=function(t,n){return o.q1j(t,n)},r.$arity=1,r),e)}function ns(t,n,e){if(n.d1g()||n.n1g())return null;var o,r,i;t:{var s=Ml().f1k(os(0,n),rs(0,n,e));try{var a;n:{var u=s.g1k();try{!0===(null==e?null:e.p1a())&&n.w1d((r=e,i=n,function(){for(var t=r.c();t.d();){var n=t.e();i.v1g(n)}return wt()})),a=n.w1g();break n}finally{s.h1k(u)}}o=a;break t}finally{is(0,s)}}return o?n:null}function es(t,n,e){var o=Sn(n.f()),r=0,i=n.f()-1|0;if(r<=i)do{var s=r;r=r+1|0;var a,u=n.g(s),c=u.z1b_1,l=o.b3(c);if(null==l){var h=jt();o.n(c,h),a=h}else a=l;a.a(u)}while(r<=i);for(var p=o,f=p.v().c();f.d();){var _=f.e(),d=_.l2(),v=_.n2();gr(!d.d1g());t:{var y=Ml().f1k(os(0,d),rs(0,d,e));try{n:{var m=y.g1k();try{t.o1i_1;var g=Qt(v.f()),$=0,b=v.f()-1|0;if($<=b)do{var w=$;$=$+1|0;var x=v.g(w),k=tn(x,bs(t.w1i_1,x.x1b_1));g.a(k)}while($<=b);var j=g;d.x1g(j),wt();break n}finally{y.h1k(m)}}break t}finally{is(0,y)}}}return qn(p.c3())}function os(t,n){return e=n,function(t){return e.r1g(t),wt()};var e}function rs(t,n,e){return o=n,r=e,function(t){return o.v1g(t),null==r||r.x1e(t),wt()};var o,r}function is(t,n){try{if(n.v1k()instanceof Bl)throw St(xt("Unsupported concurrent change during composition. A state object was modified by composition as well as being modified outside composition."))}finally{n.ks()}}function ss(t){return!t.t1i_1.h()||t.l1i_1.c12()}function as(){D=this,this.i1i_1=Pn(Zc().z1o())}function us(){return null==D&&new as,D}function cs(t,n,e){t.s7(),n.o1i_1;for(var o=n.v1i_1.c();o.d();){var r=o.e();Ht(r.z1b_1,e)&&(t.a(r),o.o4())}wt()}function ls(t){return function(n){var e=Mn("Recomposer effect job completed",n),o=null,r=(t.o1i_1,t.p1i_1);null!=r?(t.b1j_1.ky(_s()),t.a1j_1?null!=t.y1i_1&&(o=t.y1i_1):r.dq(e),t.y1i_1=null,r.yp(function(t,n){return function(e){t.o1i_1;var o,r,i=t,s=n;return null==s?o=null:(null==(r=null==e||e instanceof An?null:e)||(En(s,r),wt()),o=s),i.q1i_1=o,t.b1j_1.ky(fs()),wt(),wt()}}(t,n))):(t.q1i_1=e,t.b1j_1.ky(fs()),wt());var i,s=o;return null==s||(Pt(),i=Mt(wt()),s.z4(i),wt()),wt()}}function hs(t,n){this.e1l_1=t,kn.call(this,n)}function ps(t,n,e,o){this.x1l_1=t,this.y1l_1=n,this.z1l_1=e,kn.call(this,o)}function fs(){return Li(),q}function _s(){return Li(),O}function ds(){return Li(),P}function vs(){return Li(),A}function ys(){return Li(),E}function ms(t,n){kn.call(this,n),this.b1k_1=t}function gs(t){var n;us(),di.call(this),this.k1i_1=new Bn(0,0),this.l1i_1=new Ge((n=this,function(){n.o1i_1;var t=Ki(n);if(n.b1j_1.n2().x1(_s())<=0)throw Mn("Recomposer shutdown; frame clock awaiter will never resume",n.q1i_1);var e,o=t;return null==o||(Pt(),e=Mt(wt()),o.z4(e),wt()),wt()}));var e,o=Nn(t.z7(Ln()));o.yp(ls(this)),e=o,this.m1i_1=e,this.n1i_1=t.g8(this.l1i_1).g8(this.m1i_1),this.o1i_1=Va(),this.p1i_1=null,this.q1i_1=null;var r;r=jt(),this.r1i_1=r;var i;i=jt(),this.s1i_1=i;var s;s=jt(),this.t1i_1=s;var a;a=jt(),this.u1i_1=a;var u;u=jt(),this.v1i_1=u;var c;c=Fn(),this.w1i_1=c;var l;l=Fn(),this.x1i_1=l,this.y1i_1=null,this.z1i_1=0,this.a1j_1=!1,this.b1j_1=Pn(ds()),this.c1j_1=new Yi(this),this.d1j_1=8}function $s(){}function bs(t,n){ws();var e,o=t.b3(n);if(null==o)e=null;else{var r=Rn(o);o.h()&&t.pg(n),e=r}return e}function ws(){T||(T=!0,new Object,new Object)}function xs(){}function ks(t,n,e,o,r,i){var s=n.j19(e),a=e+s|0,u=Vs(n,e),c=Vs(n,a),l=c-u|0,h=function(t,n){return n>=0&&wa(t.o12_1,Rs(t,n))}(n,e);Ds(o,s),Ts(o,l,o.e13_1),n.r12_1=0;U&&(n.c18(),n.l1c(H-n.e13_1|0),n.c18()),n.l1c(e-n.e13_1|0);var V=n.l14();U&&(n.a18(),n.q19(),n.a18(),n.q19()),F=V}else{var W=Bs(n,e,s);Ls(n,u,l,e-1|0),F=W}!F||Pr(xt("Unexpectedly removed anchors"));var J=o;return J.a13_1=J.a13_1+(ia(p,f)?1:sa(p,f))|0,i&&(o.e13_1=f+s|0,o.u12_1=g+l|0),h&&qs(o,b),R}function js(t,n,e,o,r){var i=t.z12_1>0;t.d13_1.a17(t.a13_1);var s,a=t;if(i){Ds(t,1);var u=t.e13_1,c=Rs(t,u),l=!(e===_r().j12_1),h=!(o||r===_r().j12_1);(function(t,n,e,o,r,i,s,a){var u=o?1073741824:0,c=r?536870912:0,l=i?268435456:0,h=$t(n,5);t[h+0|0]=e,t[h+1|0]=u|c|l,t[h+2|0]=s,t[h+3|0]=0,t[h+4|0]=a})(t.o12_1,c,n,o,l,h,t.f13_1,t.u12_1),t.v12_1=t.u12_1;var p=((o?1:0)+(l?1:0)|0)+(h?1:0)|0;if(p>0){Ts(t,p,u);var f=t.p12_1,_=t.u12_1;if(o){var d=_;_=d+1|0,f[d]=r}if(l){var v=_;_=v+1|0,f[v]=e}if(h){var y=_;_=y+1|0,f[y]=r}t.u12_1=_}t.a13_1=0;var m=u+1|0;t.f13_1=u,t.e13_1=m,s=m}else{var g=t.f13_1;t.b13_1.a17(g),Ps(t);var $=t.e13_1,b=Rs(t,$);Ht(r,_r().j12_1)||(o?t.k1m(r):t.s1b(r)),t.u12_1=Js(t.o12_1,t,b),t.v12_1=Ws(t.o12_1,t,Rs(t,t.e13_1+1|0)),t.a13_1=sa(t.o12_1,b),t.f13_1=$,t.e13_1=$+1|0,s=$+la(t.o12_1,b)|0}a.t12_1=s}function Cs(){B=this}function zs(){return null==B&&new Cs,B}function Ss(t){var n=t.h13_1;if(null==n);else{for(;n.p1a();)Os(t,n.m1m(),n);wt()}}function qs(t,n){if(n>=0){var e,o=t.h13_1;if(null==o){var r=function(t,n,e,o){var r;return 0!=(1&n)&&(r=jt(),wt(),t=r),_a.call(o,t),o}(null,1,0,Object.create(_a.prototype));t.h13_1=r,e=r}else e=o;e.n1m(n)}}function Os(t,n,e){var o,r,i,s=Rs(t,n),a=function(t,n){for(var e=n+1|0,o=n+t.j19(n)|0;e=0&&e.n1m(u)}}function Ps(t){t.c13_1.a17((Fs(t)-t.s12_1|0)-t.t12_1|0)}function Ms(t){var n=(Fs(t)-t.s12_1|0)-t.c13_1.g19()|0;return t.t12_1=n,n}function As(t,n,e,o){for(var r=Qs(t,n,t.r12_1),i=o;i=0))break t;c.c1b_1=0|-(r-l|0),u=u+1|0}}}(t,o,n),e>0){var r=t.o12_1,i=$t(n,5),s=$t(e,5),a=$t(o,5);n=0||Pr(xt("Unexpected anchor value, expected a positive anchor")),ya(t.o12_1,h,0|-(1+(l-_|0)|0)),(h=h+1|0)===f&&(h=h+t.s12_1|0)}else for(var d=Rs(t,i),v=Rs(t,c);d0){var e=t.e13_1;Es(t,e);var o=t.r12_1,r=t.s12_1,i=t.o12_1.length/5|0,s=i-r|0;if(r=o&&(t.t12_1=$+n|0),t.r12_1=o+n|0,t.s12_1=r-n|0;var b=Xs(0,s>0?Vs(t,e+n|0):0,t.y12_1=o&&(t.y12_1=j+n|0)}}function Ts(t,n,e){if(n>0){Is(t,t.u12_1,e);var o=t.w12_1,r=t.x12_1;if(r=o&&(t.v12_1=g+n|0),t.w12_1=o+n|0,t.x12_1=r-n|0}}function Bs(t,n,e){var o;if(e>0){var r=!1,i=t.q12_1;Es(t,n),!i.h()&&(r=function(t,n,e){var o=t.s12_1,r=n+e|0,i=Fs(t)-o|0,s=ma(t.q12_1,n+e|0,i),a=s>=t.q12_1.f()?s-1|0:s,u=0,c=a+1|0;t:for(;a>=0;){var l=t.q12_1.g(a),h=t.i1b(l);if(!(h>=n))break t;hn){var u,c=t,l=a-e|0;u=Math.max(n,l),c.y12_1=u}if(t.t12_1>=t.r12_1){var h=t;h.t12_1=h.t12_1-e|0}(function(t,n){return n>=0&&ba(t.o12_1,Rs(t,n))})(t,t.f13_1)&&qs(t,t.f13_1),o=r}else o=!1;return o}function Ls(t,n,e,o){if(e>0){var r=t.x12_1;Is(t,n+e|0,o),t.w12_1=n,t.x12_1=r+e|0,Un(t.p12_1,null,n,n+e|0);var i=t.v12_1;i>=n&&(t.v12_1=i-e|0)}}function Ns(t,n,e){var o=Rs(t,n);o=Fs(n)?n.p12_1.length-n.x12_1|0:Zs(0,ga(t,e),n.x12_1,n.p12_1.length)}function Js(t,n,e){return e>=Fs(n)?n.p12_1.length-n.x12_1|0:Zs(0,xa(t,e),n.x12_1,n.p12_1.length)}function Ks(t,n,e,o){ya(t,e,Xs(0,o,n.w12_1,n.x12_1,n.p12_1.length))}function Gs(t,n,e){return Ws(t,n,e)}function Ys(t,n,e){return Ws(t,n,e)+ka(function(t,n){return t[$t(n,5)+1|0]}(t,e)>>29)|0}function Xs(t,n,e,o,r){return n>e?0|-(1+((r-o|0)-n|0)|0):n}function Zs(t,n,e,o){return n<0?1+((o-e|0)+n|0)|0:n}function Qs(t,n,e){return n-2?n:(t.f()+n|0)- -2|0}function na(t,n,e){this.p1m_1=n,this.q1m_1=e,this.o1m_1=t}function ea(t){zs(),this.n12_1=t,this.o12_1=this.n12_1.m16_1,this.p12_1=this.n12_1.o16_1,this.q12_1=this.n12_1.t16_1,this.r12_1=this.n12_1.n16_1,this.s12_1=(this.o12_1.length/5|0)-this.n12_1.n16_1|0,this.t12_1=this.n12_1.n16_1,this.u12_1=0,this.v12_1=0,this.w12_1=this.n12_1.p16_1,this.x12_1=this.p12_1.length-this.n12_1.p16_1|0,this.y12_1=this.n12_1.n16_1,this.z12_1=0,this.a13_1=0,this.b13_1=new Ra,this.c13_1=new Ra,this.d13_1=new Ra,this.e13_1=0,this.f13_1=-1,this.g13_1=!1,this.h13_1=null}function oa(){this.m16_1=new Int32Array(0),this.n16_1=0;for(var t=0,n=Vn(Array(0),null);t<0;){null,n[t]=null,t=t+1|0}this.o16_1=n,this.p16_1=0,this.q16_1=0,this.r16_1=!1,this.s16_1=0;var e;e=jt(),this.t16_1=e}function ra(t){this.c1b_1=t}function ia(t,n){return!(0==(1073741824&t[$t(n,5)+1|0]))}function sa(t,n){return 67108863&t[$t(n,5)+1|0]}function aa(t,n){return t[$t(n,5)]}function ua(t,n){return!(0==(536870912&t[$t(n,5)+1|0]))}function ca(t,n){var e=$t(n,5);return t[e+4|0]+ka(t[e+1|0]>>30)|0}function la(t,n){return t[$t(n,5)+3|0]}function ha(t,n){return!(0==(268435456&t[$t(n,5)+1|0]))}function pa(t,n,e){if(!(e>=0))throw on(xt("Failed requirement."));t[$t(n,5)+3|0]=e}function fa(t,n,e){if(!(e>=0&&e<67108863))throw on(xt("Failed requirement."));t[$t(n,5)+1|0]=-67108864&t[$t(n,5)+1|0]|e}function _a(t){this.l1m_1=t}function da(t,n,e){t[$t(n,5)+2|0]=e}function va(t,n){return t[$t(n,5)+2|0]}function ya(t,n,e){t[$t(n,5)+4|0]=e}function ma(t,n,e){var o=Aa(t,n,e);return o>=0?o:0|-(o+1|0)}function ga(t,n){return t[$t(n,5)+4|0]}function $a(t,n){return!(0==(134217728&t[$t(n,5)+1|0]))}function ba(t,n){return!(0==(67108864&t[$t(n,5)+1|0]))}function wa(t,n){return!(0==(201326592&t[$t(n,5)+1|0]))}function xa(t,n){var e=$t(n,5);return t[e+4|0]+ka(t[e+1|0]>>28)|0}function ka(t){switch(t){case 0:return 0;case 1:case 2:case 4:return 1;case 3:case 5:case 6:return 2;default:return 3}}function ja(t,n,e){return ia(t,e)?n.i17_1[function(t,n){return t[$t(n,5)+4|0]}(t,e)]:_r().j12_1}function Ca(t,n,e){return ha(t,e)?n.i17_1[function(t,n){var e=$t(n,5);return e>=t.length?t.length:t[e+4|0]+ka(t[e+1|0]>>29)|0}(t,e)]:_r().j12_1}function za(t,n,e){return ua(t,e)?n.i17_1[ca(t,e)]:null}function Sa(t){this.f17_1=t,this.g17_1=this.f17_1.m16_1,this.h17_1=this.f17_1.n16_1,this.i17_1=this.f17_1.o16_1,this.j17_1=this.f17_1.p16_1,this.k17_1=0,this.l17_1=this.h17_1,this.m17_1=-1,this.n17_1=0,this.o17_1=0,this.p17_1=0}function qa(t){if(t.g1n_1.s16_1!==t.j1n_1)throw Xn()}function Oa(t,n){this.k1n_1=t,this.l1n_1=n}function Pa(t,n,e){if(this.g1n_1=t,this.h1n_1=e,this.i1n_1=n,this.j1n_1=this.g1n_1.s16_1,this.g1n_1.r16_1)throw Xn()}function Ma(t,n,e,o,r){this.w18_1=t,this.x18_1=n,this.y18_1=e,this.z18_1=o,this.a19_1=r}function Aa(t,n,e){return function(t,n,e){for(var o=0,r=t.f()-1|0;o<=r;){var i=(o+r|0)>>>1|0,s=t.g(i).c1b_1,a=an(s<0?e+s|0:s,n);if(a<0)o=i+1|0;else{if(!(a>0))return i;r=i-1|0}}return 0|-(o+1|0)}(t,n,e)}function Ea(){}function Ia(){var t=(null==L&&new Da,L);return Rt(t,Ea)?t:Ct()}function Da(){L=this}function Ta(){}function Ba(){}function La(t,n){return function(t,n){return Nh(),new Fa(t,n)}(t,n)}function Na(t){Fl.call(this),this.t1n_1=t}function Fa(t,n){this.b1o_1=n,this.c1o_1=new Na(t)}function Ra(){this.y16_1=new Int32Array(10),this.z16_1=0}function Ha(){this.r17_1=jt()}function Ua(){}function Va(){return new Ua}function Wa(t){return cn("current",1,un,(function(t){return Wa(t)}),null),t.y17_1.n2()}function Ja(t){this.y17_1=rn(t)}function Ka(t,n,e,o){var r=n-1|0;if(0<=r)t:do{var i=r;r=r+-1|0;var s=t.e1i_1[i];if(s===e)return i;if(Dh(s)!==o)break t}while(0<=r);var a=n+1|0,u=t.d1i_1;if(a>>1|0,s=t.z1a_1[i],a=Dh(s);if(ae))return n===s?i:Za(t,i,n,e);r=i-1|0}}return 0|-(o+1|0)}function Za(t,n,e,o){var r=n-1|0;if(0<=r)t:do{var i=r;r=r+-1|0;var s=t.z1a_1[i];if(s===e)return i;if(Dh(s)!==o)break t}while(0<=r);var a=n+1|0,u=t.b1b_1;if(a>>1|0,s=t.g(i),a=Dh(s);if(ar))return s===n?i:nu(t,i,n,r);o=i-1|0}}return 0|-(e+1|0)}function nu(t,n,e,o){var r=n-1|0;if(0<=r)t:do{var i=r;r=r+-1|0;var s=t.w1e_1[i];if(s===e)return i;if(Dh(s)!==o)break t}while(0<=r);var a=n+1|0,u=t.v1e_1;if(a>>1|0,s=pn(t.o1f_1[t.n1f_1[i]]),a=Dh(s);if(ae))return n===s?i:su(t,i,n,e);r=i-1|0}}return 0|-(o+1|0)}function su(t,n,e,o){var r=n-1|0;if(0<=r)t:do{var i,s=r;if(r=r+-1|0,(i=pn(t.o1f_1[t.n1f_1[s]]))===e)return s;if(Dh(i)!==o)break t}while(0<=r);var a=n+1|0,u=t.q1f_1;if(a>hc()>1<ac()))throw r="Trie-based persistent vector should have at least "+(ac()+1|0)+" elements, got "+this.k1p_1,on(xt(r));this.k1p_1,lc(this.k1p_1),ae(this.j1p_1.length,ac())}function Au(t){return t.v1p_1<=ac()?0:lc(t.v1p_1)}function Eu(t){return n=t.v1p_1,n<=ac()?n:n-lc(n)|0;var n}function Iu(t,n){if(null==n)return Tu(t);if(function(t,n){return n.length===_c()&&n[_c()-1|0]===t.s1p_1}(t,n))return n;var e=Tu(t),o=ae(n.length,ac());return Hn(n,e,0,0,o),e}function Du(t,n){var e=_c(),o=Vn(Array(e),null);return o[0]=n,o[_c()-1|0]=t.s1p_1,o}function Tu(t){var n=_c(),e=Vn(Array(n),null);return e[_c()-1|0]=t.s1p_1,e}function Bu(t,n,e,o){var r;if(t.v1p_1>>hc()>1<=0))throw St(xt("Check failed."));if(0===o)return r.e();var i=Iu(t,n),s=pc(e,o),a=s,u=i[s];for(i[a]=Fu(t,null==u||ln(u)?u:Ct(),e,o-hc()|0,r);(s=s+1|0)0){var o=(t.d1q_1-1|0)-(e/hc()|0)|0;ec(t,t.a1p_1,o+1|0)}}function rc(t){var n=t.a1p_1&cc(),e=t.e1q_1[t.d1q_1-1|0];return(null!=e&&ln(e)?e:Ct())[n]}function ic(t,n,e,o){$u.call(this,n,e),this.d1q_1=o;var r,i=this.d1q_1;r=Vn(Array(i),null),this.e1q_1=r,this.f1q_1=n===e,this.e1q_1[0]=t,ec(this,n-(this.f1q_1?1:0)|0,1)}function sc(){return tc().n1q_1}function ac(){return F}function uc(t){var n=Vn(Array(32),null);return n[0]=t,n}function cc(){return R}function lc(t){return-32&(t-1|0)}function hc(){return H}function pc(t,n){return t>>n&31}function fc(t){this.m1p_1=t}function _c(){return U}function dc(){V=this,this.w1o_1=new yc(Vc().p1q_1,0)}function vc(){return null==V&&new dc,V}function yc(t,n){vc(),_e.call(this),this.s1q_1=t,this.t1q_1=n}function mc(t){for(var n=0,e=Vn(Array(8),null);n<8;){var o,r=n;o=new wc,e[r]=o,n=n+1|0}Cc.call(this,t,e)}function gc(t){for(var n=0,e=Vn(Array(8),null);n<8;){var o,r=n;o=new xc,e[r]=o,n=n+1|0}Cc.call(this,t,e)}function $c(t){for(var n=0,e=Vn(Array(8),null);n<8;){var o,r=n;o=new Sc,e[r]=o,n=n+1|0}Cc.call(this,t,e)}function bc(){this.h1r_1=Vc().p1q_1.x1q_1,this.i1r_1=0,this.j1r_1=0}function wc(){bc.call(this)}function xc(){bc.call(this)}function kc(t,n){if(t.e1r_1[n].m1r())return n;if(t.e1r_1[n].n1r()){var e=t.e1r_1[n].o1r();return 6===n?t.e1r_1[n+1|0].l1r(e.x1q_1,e.x1q_1.length):t.e1r_1[n+1|0].l1r(e.x1q_1,$t(Jc(),e.w1r())),kc(t,n+1|0)}return-1}function jc(t){if(t.e1r_1[t.f1r_1].m1r())return wt();var n=t.f1r_1;if(0<=n)do{var e=n;n=n+-1|0;var o=kc(t,e);if(-1===o&&t.e1r_1[e].n1r()&&(t.e1r_1[e].p1r(),o=kc(t,e)),-1!==o)return t.f1r_1=o,wt();e>0&&t.e1r_1[e-1|0].p1r(),t.e1r_1[e].l1r(Vc().p1q_1.x1q_1,0)}while(0<=n);t.g1r_1=!1}function Cc(t,n){this.e1r_1=n,this.f1r_1=0,this.g1r_1=!0,this.e1r_1[0].l1r(t.x1q_1,$t(Jc(),t.w1r())),this.f1r_1=0,jc(this)}function zc(t,n){this.x1r_1=t,this.y1r_1=n}function Sc(){bc.call(this)}function qc(t){ve.call(this),this.c1s_1=t}function Oc(t){ye.call(this),this.d1s_1=t}function Pc(t){ve.call(this),this.e1s_1=t}function Mc(t,n,e){return function(t,n,e,o){return Wc.call(o,t,n,e,null),o}(t,n,e,Object.create(Wc.prototype))}function Ac(t,n){this.b1r_1=t,this.c1r_1=n}function Ec(t){return new Ac(t,1)}function Ic(t){return new Ac(t,0)}function Dc(t,n){return!(0==(t.v1q_1&n))}function Tc(t,n){var e=t.x1q_1[n];return null==e||zt(e)?e:Ct()}function Bc(t,n){var e=t.x1q_1[n+1|0];return null==e||zt(e)?e:Ct()}function Lc(t,n,e,o){var r=o.x1q_1;if(2===r.length&&0===o.v1q_1){if(1===t.x1q_1.length)return o.u1q_1=t.v1q_1,o;var i=t.j1s(e),s=function(t,n,e,o,r){var i=Qn(t,t.length+1|0),s=n+2|0,a=n+1|0,u=t.length;return Hn(i,i,s,a,u),Hn(i,i,e+2|0,e,n),i[e]=o,i[e+1|0]=r,i}(t.x1q_1,n,i,r[0],r[1]);return Mc(t.u1q_1^e,t.v1q_1^e,s)}var a=Qn(t.x1q_1,t.x1q_1.length);return a[n]=o,Mc(t.u1q_1,t.v1q_1,a)}function Nc(t,n,e){if(1===t.x1q_1.length)return null;var o=function(t,n){var e=t.length-1|0,o=Vn(Array(e),null);Hn(t,o,0,0,n);var r=n+1|0,i=t.length;return Hn(t,o,n,r,i),o}(t.x1q_1,n);return Mc(t.u1q_1,t.v1q_1^e,o)}function Fc(t,n,e,o,r,i,s,a){var u=Tc(t,n),c=null==u?null:Jt(u),l=Rc(t,null==c?0:c,u,Bc(t,n),o,r,i,s+5|0,a),h=t.k1s(e)+1|0;return function(t,n,e,o){var r=e-2|0,i=1+(t.length-2|0)|0,s=Vn(Array(i),null);Hn(t,s,0,0,n),Hn(t,s,n,n+2|0,e),s[r]=o;var a=r+1|0,u=t.length;return Hn(t,s,a,e,u),s}(t.x1q_1,n,h,l)}function Rc(t,n,e,o,r,i,s,a,u){if(a>30)return new Wc(0,0,[e,o,i,s],u);var c=Gc(n,a),l=Gc(r,a);return c!==l?new Wc(1<>n&31}function Yc(t,n){var e=t.length-2|0,o=Vn(Array(e),null);Hn(t,o,0,0,n);var r=n+2|0,i=t.length;return Hn(t,o,n,r,i),o}function Xc(){K=this,this.y1o_1=new Qc(il(),il(),vc().x1o())}function Zc(){return null==K&&new Xc,K}function Qc(t,n,e){Zc(),ve.call(this),this.n1s_1=t,this.o1s_1=n,this.p1s_1=e}function tl(){return t=Object.create(el.prototype),el.call(t,il(),il()),t;var t}function nl(t){return function(t,n){return el.call(n,t,il()),n}(t,Object.create(el.prototype))}function el(t,n){this.q1s_1=t,this.r1s_1=n}function ol(t,n){this.w1s_1=t,this.x1s_1=n,this.y1s_1=0}function rl(){G=this}function il(){return null==G&&new rl,G}function sl(){Y=this}function al(){return null==Y&&new sl,Y}function ul(){}function cl(t,n,e){var o=new Wh(t,n);return o.e1t(e),o}function ll(t,n){return null==t||!!(t instanceof Ti&&n instanceof Ti)&&(!(t.a1g()&&!Ht(t,n))||Ht(t.l13_1,n.l13_1))}function hl(t){return fl(2,t)}function pl(t){return fl(1,t)}function fl(t,n){return t<<($t(n%10|0,3)+1|0)}function _l(t,n,e,o,r,i,s){return function(t,n,e,o,r,i,s,a){n.b(o);var u=0,c=0,l=t.f()-1|0;if(c<=l)t:do{var h=c;c=c+1|0;var p=t.g(h);if((u=u+1|0)>1&&n.b(e),!(i<0||u<=i))break t;dl(n,p,a)}while(c<=l);return i>=0&&u>i&&n.b(s),n.b(r),n}(t,xe(),n,e,o,r,i,s).toString()}function dl(t,n,e){null!=e?t.b(e(n)):null==n||Ce(n)?t.b(n):n instanceof je?t.r9(n.l1_1):t.b(mn(n))}function vl(){return hh(),X}function yl(){return hh(),Z}function ml(){return hh(),Q}function gl(t){hh(),tt=t}function $l(){return hh(),tt}function bl(t){hh(),nt=t}function wl(){return hh(),nt}function xl(){return hh(),et}function kl(){return hh(),ot}function jl(){return hh(),rt}function Cl(){return hh(),it}function zl(){return hh(),st}function Sl(){}function ql(t){this.f1t_1=t}function Ol(t){this.g1t_1=t}function Pl(){at=this}function Ml(){return null==at&&new Pl,at}function Al(t,n){Ml(),this.t1a_1=n,this.u1a_1=t,this.v1a_1=!1,this.w1a_1=0!==t?function(t,n){hh();var e=n.s1v(t);return ml(),xl().y1v(e)}(t,this.k1t()):-1,this.x1a_1=8}function El(){}function Il(t,n,e,o){Al.call(this,t,n),this.n1k_1=e,this.o1k_1=o,this.p1k_1=null,this.q1k_1=vh().h1u_1,this.r1k_1=new Int32Array(0),this.s1k_1=1,this.t1k_1=!1,this.u1k_1=8}function Dl(){ut=this,Ll.call(this),this.y1u_1=0}function Tl(){return null==ut&&new Dl,ut}function Bl(t){Ll.call(this),this.a1v_1=t,this.b1v_1=8}function Ll(){this.c1v_1=0}function Nl(t,n){ml();var e,o,r,i=jl().h()?null:Yt(jl());if(null==i)o=null;else{var s=qe(i);o=null==s?(r=i,function(t){var n=0,e=r.f()-1|0;if(n<=e){do{var o=n;n=n+1|0,r.g(o)(t)}while(n<=e);wt()}return wt()}):s}e=o,Il.call(this,t,n,null,e)}function Fl(){this.w1n_1=Hl().y1a(),this.x1n_1=null,this.y1n_1=8}function Rl(t){hh(),xl().z1v(t)}function Hl(){hh();var t=yl().lu();return null==t?Cl().lu():t}function Ul(t){hh();var n=Cl().lu(),e=(ml(),Ql(n,t)),o=n.j1t();if(null!=o){ml();var r=Yt(kl()),i=0,s=r.f()-1|0;if(i<=s)do{var a=i;i=i+1|0,r.g(a)(o,n)}while(i<=s)}return e}function Vl(){return hh(),Ul(lh)}function Wl(t){t.o1w_1||(t.o1w_1=!0,t.n1w_1.m1u(t))}function Jl(t,n,e,o,r){Il.call(this,t,n,e,o),this.n1w_1=r,this.o1w_1=!1,this.n1w_1.n1u(this)}function Kl(t,n,e){hh();var o=t,r=n;if(r0;){var i=((r+1|0)>>1)-1|0;if(!(e[i]>o))break t;fh(t,i,r),r=i}}function fh(t,n,e){var o=t.u1v_1,r=t.v1v_1,i=t.w1v_1,s=o[n];o[n]=o[e],o[e]=s,s=r[n],r[n]=r[e],r[e]=s,i[r[n]]=n,i[r[e]]=e}function _h(){this.t1v_1=0,this.u1v_1=new Int32Array(16),this.v1v_1=new Int32Array(16);for(var t=0,n=new Int32Array(16);t<16;){var e;e=t+1|0,n[t]=e,t=t+1|0}this.w1v_1=n,this.x1v_1=0}function dh(){lt=this,this.h1u_1=new mh(new Bn(0,0),new Bn(0,0),0,null)}function vh(){return null==lt&&new dh,lt}function yh(t,n){this.z1w_1=t,kn.call(this,n)}function mh(t,n,e,o){vh(),this.y1t_1=t,this.z1t_1=n,this.a1u_1=e,this.b1u_1=o}function gh(t,n){for(var e=0,o=t.length-1|0;e<=o;){var r=(e+o|0)>>>1|0,i=t[r];if(n>i)e=r+1|0;else{if(!(n0||Pr(xt("OffsetApplier up called with no corresponding down"));var t=this.l11_1;this.l11_1=t-1|0,this.j11_1.e11()},We.prototype.f11=function(t,n){this.j11_1.f11(t+(0===this.l11_1?this.k11_1:0)|0,n)},We.prototype.g11=function(t,n){this.j11_1.g11(t+(0===this.l11_1?this.k11_1:0)|0,n)},We.prototype.h11=function(t,n){this.j11_1.h11(t+(0===this.l11_1?this.k11_1:0)|0,n)},We.prototype.i11=function(t,n,e){var o=0===this.l11_1?this.k11_1:0;this.j11_1.i11(t+o|0,n+o|0,e)},We.$metadata$=kt("OffsetApplier",[Ve]),Je.prototype.q11=function(t){this.o11_1=t},Je.prototype.a11=function(){return this.o11_1},Je.prototype.r11=function(t){this.n11_1.a(this.a11()),this.q11(t)},Je.prototype.d11=function(t){return this.r11(null==t||zt(t)?t:Ct())},Je.prototype.e11=function(){if(this.n11_1.h())throw St(xt("Check failed."));this.q11(this.n11_1.n4(this.n11_1.f()-1|0))},Je.$metadata$=kt("AbstractApplier",[Ve]),Ke.prototype.u11=function(){return this.s11_1},Ke.prototype.yy=function(){return this.t11_1},Ke.prototype.v11=function(t){var n,e;try{var o;Pt(),o=this.s11_1(t),e=Mt(o)}catch(t){if(!(t instanceof Error))throw t;Pt(),e=Mt(At(t))}n=e,this.t11_1.z4(n)},Ke.$metadata$=kt("FrameAwaiter"),Ge.prototype.c12=function(){return this.x11_1,!this.z11_1.h()},Ge.prototype.d12=function(t){this.x11_1;var n=this.z11_1;this.z11_1=this.a12_1,this.a12_1=n;var e=0,o=n.f();if(e0},hr.prototype.u1c=function(){return this.t15_1},hr.prototype.v1c=function(){return this.n14_1.w1c()},hr.prototype.f12=function(t){return lo(this,t,null,!1,null)},hr.prototype.k12=function(){return so(this)},hr.prototype.x1c=function(){return lo(this,-127,null,!1,null)},hr.prototype.y1c=function(){so(this);var t=this.z1c();null!=t&&t.h19()&&t.a1d(!0)},hr.prototype.b1d=function(){var t;if(this.i15_1)t=!0;else{var n=this.z1c();t=!0===(null==n?null:n.b1d())}return t},hr.prototype.i1a=function(t,n){return lo(this,t,n,!1,null)},hr.prototype.l1a=function(){return so(this)},hr.prototype.c1d=function(){this.h15_1.s7()},hr.prototype.d1d=function(){return this.z15_1},hr.prototype.w1b=function(){var t;if(this.z15_1||this.k15_1||this.i15_1)t=!1;else{var n=this.z1c();t=!1===(null==n?null:n.e1d())}return!!t&&!this.c15_1},hr.prototype.d18=function(){lo(this,this.z15_1?125:this.k15_1?125===this.s15_1.q18()?126:125:126===this.s15_1.q18()?126:125,null,!0,null),this.d15_1=!0},hr.prototype.f1d=function(t){zo(this),this.z15_1||Pr(xt("createNode() can only be called when inserting"));var n,e,o,r,i,s=this.w14_1.g1d(),a=this.u15_1.v18(this.u15_1.f13_1),u=this.x14_1;this.x14_1=u+1|0,No(this,(o=t,r=a,i=s,function(t,n,e){var s=o();return n.p1b(r,s),(Rt(t,Ve)?t:Ct()).f11(i,s),t.d11(s),wt()})),n=this,e=function(t,n){return function(e,o,r){var i=o.q1b(t);return e.e11(),(Rt(e,Ve)?e:Ct()).g11(n,i),wt()}}(a,s),n.h16_1.f19(e)},hr.prototype.h1d=function(){var t;zo(this),!this.z15_1||Pr(xt("useNode() called while inserting")),To(this,(t=this.s15_1).o1a(t.m17_1))},hr.prototype.i1d=function(){return po(this,!0)},hr.prototype.j1d=function(t,n){var e,o,r=(e=n,o=t,function(t,n,r){var i=t.a11();return e(null==i||zt(i)?i:Ct(),o),wt()});this.z15_1?No(this,r):Oo(this,r)},hr.prototype.d1b=function(){var t;if(this.z15_1)So(this),t=_r().j12_1;else{var n=this.s15_1.e();t=this.k15_1?_r().j12_1:n}return t},hr.prototype.g12=function(t){var n;return Ht(this.d1b(),t)?n=!1:(this.f1a(t),n=!0),n},hr.prototype.k1d=function(t){var n=this.d1b();return(null==n||"boolean"!=typeof n||t!==n)&&(this.f1a(t),!0)},hr.prototype.f1a=function(t){if(this.z15_1)this.u15_1.m1d(t),null!=t&&Rt(t,xs)&&(qo(this,(e=t,function(t,n,o){return o.l12(e),wt()})),this.p14_1.a(t));else{var n=this.s15_1.l1d()-1|0;null!=t&&Rt(t,xs)&&this.p14_1.a(t),Mo(this,!0,function(t,n){return function(e,o,r){null!=t&&Rt(t,xs)&&(r.l12(t),wt());var i=o.r1b(n,t);if(null!=i&&Rt(i,xs))r.m12(i),wt();else if(i instanceof Ti){var s=i.k13_1;null!=s&&(i.pt(),s.d14_1=!0,wt())}return wt()}}(t,n))}var e},hr.prototype.z1c=function(){var t=this.p15_1;return 0===this.m15_1&&t.p1a()?t.g1d():null},hr.prototype.m1a=function(t,n){var e=t.l13_1;if(null==e)return!1;var o=e.m1c(this.o14_1);return!!(this.q15_1&&o>=this.s15_1.k17_1)&&(function(t,n,e,o){Kr();var r=Dr(t,n);if(r<0){var i,s=0|-(r+1|0),a=o;if(null==a)i=null;else{var u=new ou;u.x1e(a),i=u}t.zf(s,new Cr(e,n,i))}else if(null==o)t.g(r).v19_1=null;else{var c=t.g(r).v19_1;null==c||c.x1e(o)}}(this.e15_1,o,t,n),!0)},hr.prototype.p1c=function(){if(this.e15_1.h())(i=r=this).x14_1=i.x14_1+r.s15_1.s17()|0;else{var t=this.s15_1,n=t.q18(),e=t.s18(),o=t.b18();Ko(this,n,e,o),co(this,t.j1b(),null),fo(this),t.o19(),Yo(this,n,e,o)}var r,i},hr.prototype.a18=function(){0===this.x14_1||Pr(xt("No nodes can be emitted before calling skipAndEndGroup"));var t=this.z1c();null==t||t.n1d(),this.e15_1.h()?xo(this):fo(this)},hr.prototype.o1d=function(t){return lo(this,t,null,!1,null),function(t){if(t.z15_1){var n=t.s14_1,e=new Ti(n instanceof ai?n:Ct());t.p15_1.f19(e),t.f1a(e),e.h1a(t.o15_1)}else{var o,r=qr(t.e15_1,t.s15_1.m17_1),i=t.s15_1.e();if(Ht(i,_r().j12_1)){var s=t.s14_1,a=new Ti(s instanceof ai?s:Ct());t.f1a(a),o=a}else o=i instanceof Ti?i:Ct();var u=o;u.g1a(!(null==r)),t.p15_1.f19(u),u.h1a(t.o15_1)}}(this),this},hr.prototype.p1d=function(){var t=this.p15_1.p1a()?this.p15_1.g19():null;null==t||t.g1a(!1);var n,e,o,r=null==t?null:t.q1d(this.o15_1);if(null==r||(qo(this,(e=r,o=this,function(t,n,r){return e(o.s14_1),wt()})),wt()),null==t||t.s1d()||!t.h19()&&!this.b15_1)n=null;else{if(null==t.l13_1){var i,s=t;i=this.z15_1?this.u15_1.v18(this.u15_1.f13_1):this.s15_1.v18(this.s15_1.m17_1),s.l13_1=i}t.r1d(!1),n=t}var a=n;return po(this,!1),a},hr.prototype.t1d=function(t){t:{var n=this.r14_1,e=this.q14_1;try{this.q14_1=n,qo(this,(Kr(),u));var o=0,r=t.f()-1|0;if(o<=r)do{var s=o;o=o+1|0;var a=t.g(s),c=a.l4(),l=a.m4(),h=c.b1c_1,p=c.a1c_1.i1b(h),f={_v:0};if(Eo(this),qo(this,er(f,h)),null==l){var _=c.a1c_1;Ht(_,this.t15_1)&&uo(this);var d=c.a1c_1.u16();try{d.e19(p),this.d16_1=p;var v=jt();Co(this,null,null,null,null,or(this,v,d,c),30),!v.h()&&(qo(this,rr(f,v)),wt())}finally{d.q17()}}else{var y=Or(l.a1c_1,l.b1c_1);if(!y.h()){qo(this,ir(f,y));var m=this.o14_1.i1b(h);go(this,m,mo(this,m)+y.f()|0)}qo(this,sr(this,l,c));var g=l.a1c_1,$=g.u16();try{n:{var b=this.s15_1,w=this.z14_1;this.z14_1=null;try{this.s15_1=$;var x=g.i1b(l.b1c_1);$.e19(x),this.d16_1=x;var k,j=jt();e:{var C=this.q14_1;try{this.q14_1=j;var z=$.k17_1;jo(this,l.z1b_1,c.z1b_1,z,l.c1c_1,ar(this,c));break e}finally{this.q14_1=C}}!j.h()&&(qo(this,ur(f,j)),k=wt()),k;break n}finally{this.s15_1=b,this.z14_1=w}}}finally{$.q17()}}qo(this,(Kr(),i))}while(o<=r);qo(this,cr),this.d16_1=0,wt();break t}finally{this.q14_1=e}}Uo(this)},hr.prototype.u1d=function(t){this.z15_1&&this.u15_1.v1d(t)},hr.prototype.w1d=function(t){!this.q15_1||Pr(xt("Preparing a composition while composing is not supported")),this.q15_1=!0;try{t()}finally{this.q15_1=!1}},hr.prototype.x1d=function(t){return this.q14_1.h()||Pr(xt("Expected applyChanges() to have been called")),!(!t.p1a()&&this.e15_1.h()&&!this.c15_1||(Zo(this,t,null),this.q14_1.h()))},hr.prototype.y1d=function(){return this.z1c()},hr.prototype.h12=function(){return this.d1b()},hr.prototype.i12=function(t){return this.f1a(t)},hr.prototype.z1d=function(t){var n=t instanceof Ti?t:null;null==n||n.a1e(!0)},hr.prototype.b1e=function(t,n){this.q14_1.h()||Pr(xt("Expected applyChanges() to have been called")),Zo(this,t,n)},hr.$metadata$=kt("ComposerImpl",[dr]),pr.prototype.toString=function(){return"Empty"},pr.$metadata$=kt(),fr.prototype.c1e=function(){return this.j12_1},fr.$metadata$=en("Companion"),dr.$metadata$=bt("Composer"),yr.$metadata$=kt("InvalidationResult",void 0,void 0,void 0,void 0,Kt.prototype),mr.prototype.d1e=function(){return this.x1b_1},mr.prototype.e1e=function(){return this.y1b_1},mr.prototype.f1e=function(){return this.z1b_1},mr.prototype.g1e=function(){return this.a1c_1},mr.prototype.h1e=function(){return this.b1c_1},mr.prototype.i1e=function(){return this.c1c_1},mr.prototype.j1e=function(){return this.d1c_1},mr.$metadata$=kt("MovableContentStateReference"),$r.prototype.g1e=function(){return this.g1c_1},$r.$metadata$=kt("MovableContentState"),wr.$metadata$=bt("ScopeUpdateScope"),xr.$metadata$=kt("MovableContent"),jr.prototype.l1e=function(){return this.i18_1},jr.prototype.m1e=function(){return this.j18_1},jr.prototype.n1e=function(){return cn("keyMap",1,un,(function(t){return t.n1e()}),null),this.n18_1.n2()},jr.prototype.t18=function(t,n){var e=null!=n?new qi(t,n):t;return Er(this.n1e(),e)},jr.prototype.p18=function(t){return this.l18_1.a(t)},jr.prototype.h19=function(){return this.l18_1},jr.prototype.d19=function(t,n){if(t>n)for(var e=this.m18_1.d3().c();e.d();){var o=e.e(),r=o.o1e_1;r===t?o.o1e_1=n:n<=r&&rt)for(var i=this.m18_1.d3().c();i.d();){var s=i.e(),a=s.o1e_1;a===t?s.o1e_1=n:(t+1|0)<=a&&an)for(var o=this.m18_1.d3().c();o.d();){var r=o.e(),i=r.p1e_1;t<=i&&i<(t+e|0)?r.p1e_1=n+(i-t|0)|0:n<=i&&it)for(var s=this.m18_1.d3().c();s.d();){var a=s.e(),u=a.p1e_1;t<=u&&u<(t+e|0)?a.p1e_1=n+(u-t|0)|0:(t+1|0)<=u&&u=o&&!Ht(s,e)){var a=s.p1e_1+r|0;a>=0&&(s.p1e_1=a)}}return!0}return!1},jr.prototype.c19=function(t){var n=this.m18_1.b3(t.y18_1),e=null==n?null:n.o1e_1;return null==e?-1:e},jr.prototype.b19=function(t){var n=this.m18_1.b3(t.y18_1),e=null==n?null:n.p1e_1;return null==e?-1:e},jr.prototype.k19=function(t){var n=this.m18_1.b3(t.y18_1),e=null==n?null:n.q1e_1;return null==e?t.z18_1:e},jr.$metadata$=kt("Pending"),Cr.prototype.r1e=function(){return this.t19_1},Cr.prototype.s1e=function(){return this.u19_1},Cr.prototype.t1e=function(){return this.v19_1},Cr.prototype.z19=function(){return this.t19_1.u1e(this.v19_1)},Cr.$metadata$=kt("Invalidation"),Mr.prototype.y1e=function(t){this.o1e_1=t},Mr.prototype.z1e=function(){return this.o1e_1},Mr.prototype.a1f=function(t){this.p1e_1=t},Mr.prototype.b1f=function(){return this.p1e_1},Mr.$metadata$=kt("GroupInfo"),Br.prototype.toString=function(){return"Updater(composer="+this.f1f_1+")"},Br.prototype.hashCode=function(){return t=this.f1f_1,Jt(t);var t},Br.prototype.equals=function(t){return function(t,n){if(!(n instanceof Br))return!1;var e=n instanceof Br?n.f1f_1:Ct();return!!Ht(t,e)}(this.f1f_1,t)},Br.$metadata$=kt("Updater"),Lr.prototype.toString=function(){return"SkippableUpdater(composer="+this.g1f_1+")"},Lr.prototype.hashCode=function(){return t=this.g1f_1,Jt(t);var t},Lr.prototype.equals=function(t){return function(t,n){if(!(n instanceof Lr))return!1;var e=n instanceof Lr?n.g1f_1:Ct();return!!Ht(t,e)}(this.g1f_1,t)},Lr.$metadata$=kt("SkippableUpdater"),ii.prototype.l12=function(t){var n=this.w1f_1.j2(t);n>=0?(this.w1f_1.n4(n),this.u1f_1.kf(t)):this.v1f_1.a(t)},ii.prototype.m12=function(t){var n=this.v1f_1.j2(t);n>=0?(this.v1f_1.n4(n),this.u1f_1.kf(t)):this.w1f_1.a(t)},ii.prototype.y1f=function(){if(!this.w1f_1.h())t:{var t=Rh().s1a("Compose:onForgotten");try{var n=this.w1f_1.f()-1|0;if(0<=n){do{var e=n;n=n+-1|0;var o=this.w1f_1.g(e);this.u1f_1.i(o)||o.g1g()}while(0<=n);wt()}break t}finally{Rh().e1b(t)}}if(!this.v1f_1.h())t:{var r=Rh().s1a("Compose:onRemembered");try{var i=this.v1f_1,s=0,a=i.f()-1|0;if(s<=a){do{var u=s;s=s+1|0;var c=i.g(u);this.u1f_1.kf(c),c.h1g()}while(s<=a);wt()}break t}finally{Rh().e1b(r)}}},ii.prototype.z1f=function(){if(!this.x1f_1.h())t:{var t=Rh().s1a("Compose:sideeffects");try{var n=this.x1f_1,e=0,o=n.f()-1|0;if(e<=o)do{var r=e;e=e+1|0,n.g(r)()}while(e<=o);this.x1f_1.s7(),wt();break t}finally{Rh().e1b(t)}}},ii.prototype.b1g=function(){if(!this.u1f_1.h())t:{var t=Rh().s1a("Compose:abandons");try{for(var n=this.u1f_1.c();n.d();){var e=n.e();n.o4(),e.i1g()}wt();break t}finally{Rh().e1b(t)}}},ii.$metadata$=kt("RememberEventDispatcher",[to]),ai.prototype.g1e=function(){return this.v13_1},ai.prototype.d1g=function(){return this.g14_1.q15_1},ai.prototype.n1g=function(){return this.j14_1},ai.prototype.o1g=function(t){t:for(;;){var n,e=this.s13_1.lu(),o=e;if(null==o||Ht(o,Gr()))n=t;else if(null!=o&&Rt(o,hn))n=[e,t];else{if(null==o||!ln(o)){var r="corrupt pendingModifications: "+this.s13_1;throw St(xt(r))}n=_n(null!=e&&ln(e)?e:Ct(),t)}var i=n;if(this.s13_1.p1g(e,i)){null==e&&(this.t13_1,Zr(this),wt());break t}}},ai.prototype.q1g=function(t){for(var n=t.c();n.d();){var e=n.e();if(this.w13_1.r1f(e)||this.y13_1.r1f(e))return!0}return!1},ai.prototype.w1d=function(t){return this.g14_1.w1d(t)},ai.prototype.r1g=function(t){if(!this.g14_1.t1c()){var n=this.g14_1.z1c();if(null==n);else{if(n.a1e(!0),this.w13_1.t1f(t,n),Rt(t,$i)){this.y13_1.s1g(t);for(var e=t.t1g().c();e.d();){var o=e.e();this.y13_1.t1f(o,t)}}n.u1g(t),wt()}}},ai.prototype.v1g=function(t){this.t13_1,ni(this,t);var n,e=this.y13_1,o=iu(e,t);if(o>=0){for(var r=ru(e,o).c();r.d();)ni(this,r.e());n=wt()}return n},ai.prototype.w1g=function(){this.t13_1,Xr(this);var t,n=!1;try{var e=this.g14_1.x1d(ri(this));e||Zr(this),n=!0,t=e}finally{!n&&!this.u13_1.h()&&new ii(this.u13_1).b1g()}return t},ai.prototype.x1g=function(t){var n;t:{var e=0,o=t.f()-1|0;if(e<=o)do{var r=e;e=e+1|0;var i=t.g(r);if(!Ht(i.j4_1.z1b_1,this)){n=!1;break t}}while(e<=o);n=!0}gr(n);var s=!1;try{this.g14_1.t1d(t);wt();s=!0}finally{!s&&!this.u13_1.h()&&new ii(this.u13_1).b1g()}},ai.prototype.y1g=function(t){var n=new ii(this.u13_1),e=t.g1c_1.z17();try{no(e,n),wt()}finally{e.q17()}n.y1f()},ai.prototype.z1g=function(){this.t13_1,ei(this,this.z13_1),Zr(this),wt()},ai.prototype.a1h=function(){this.t13_1,!this.a14_1.h()&&(ei(this,this.a14_1),wt())},ai.prototype.c1d=function(){this.t13_1,this.g14_1.c1d(),!this.u13_1.h()&&(new ii(this.u13_1).b1g(),wt())},ai.prototype.b1h=function(){this.t13_1;for(var t=this.v13_1.o16_1,n=0,e=t.length;n=0){var r;this.e14_1=t instanceof ai?t:Ct(),this.f14_1=n;try{r=e()}finally{this.e14_1=null,this.f14_1=0}o=r}else o=e();return o},ai.prototype.d1h=function(t,n){t.e1h()&&t.r1d(!0);var e=t.l13_1;return null!=e&&this.v13_1.f1h(e)&&e.a1g()&&e.a1g()&&t.g1h()?oi(this,t,e,n):Wr()},ai.prototype.h1h=function(t,n){this.w13_1.j1g(t,n)},ai.prototype.i1h=function(t){this.w13_1.r1f(t)||this.y13_1.s1g(t)},ai.prototype.j1h=function(t){this.k14_1=t},ai.prototype.k1h=function(t){if(this.j14_1)throw St(xt("The composition is disposed"));this.j1h(t),this.q13_1.l1h(this,this.k14_1)},ai.prototype.m1h=function(t){var n=!1;try{this.t13_1,Xr(this),this.g14_1.b1e(ri(this),t),wt(),n=!0}finally{!n&&!this.u13_1.h()&&new ii(this.u13_1).b1g()}},ai.$metadata$=kt("CompositionImpl",[ui]),ui.$metadata$=bt("ControlledComposition",[pi]),hi.$metadata$=en("ComposableSingletons$CompositionKt"),pi.$metadata$=bt("Composition"),di.prototype.c17=function(t){},di.prototype.k1g=function(t){},di.prototype.x16=function(){return _i()},di.prototype.w16=function(){},di.prototype.e17=function(){},di.prototype.f1c=function(t){return null},di.$metadata$=kt("CompositionContext"),vi.$metadata$=kt("CompositionLocal"),yi.$metadata$=kt("ProvidableCompositionLocal",void 0,void 0,void 0,void 0,vi.prototype),mi.$metadata$=kt("StaticProvidableCompositionLocal",void 0,void 0,void 0,void 0,yi.prototype),$i.$metadata$=bt("DerivedState",[Ta]),wi.prototype.ks=function(){this.s1h_1()},wi.$metadata$=kt(void 0,[ki]),xi.prototype.u1h=function(t){return new wi(t)},xi.$metadata$=kt("DisposableEffectScope"),ki.$metadata$=bt("DisposableEffectResult"),ji.prototype.h1g=function(){var t=this.x1h_1;null==t||vn(t,"Old job was still running!",null,2,null),this.x1h_1=yn(this.w1h_1,null,null,this.v1h_1,3,null)},ji.prototype.g1g=function(){var t=this.x1h_1;null==t||t.eq(null,1,null),this.x1h_1=null},ji.prototype.i1g=function(){var t=this.x1h_1;null==t||t.eq(null,1,null),this.x1h_1=null},ji.$metadata$=kt("LaunchedEffectImpl",[xs]),Ci.prototype.h1g=function(){this.z1h_1=this.y1h_1((zi(),j))},Ci.prototype.g1g=function(){var t=this.z1h_1;null==t||t.ks(),this.z1h_1=null},Ci.prototype.i1g=function(){},Ci.$metadata$=kt("DisposableEffectImpl",[xs]),qi.prototype.hashCode=function(){return $t(Si(0,this.a1i_1),31)+Si(0,this.b1i_1)|0},qi.prototype.toString=function(){return"JoinedKey(left="+mn(this.a1i_1)+", right="+mn(this.b1i_1)+")"},qi.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof qi))return!1;var n=t instanceof qi?t:Ct();return!!Ht(this.a1i_1,n.a1i_1)&&!!Ht(this.b1i_1,n.b1i_1)},qi.$metadata$=kt("JoinedKey"),Oi.$metadata$=en("Key",[gn]),Mi.$metadata$=bt("MonotonicFrameClock",[$n]),Ei.prototype.toString=function(){return"OpaqueKey(key="+this.c1i_1+")"},Ei.prototype.hashCode=function(){return bn(this.c1i_1)},Ei.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof Ei))return!1;var n=t instanceof Ei?t:Ct();return this.c1i_1===n.c1i_1},Ei.$metadata$=kt("OpaqueKey"),Ti.prototype.h1e=function(){return this.l13_1},Ti.prototype.a1g=function(){var t;if(null!=this.k13_1){var n=this.l13_1,e=null==n?null:n.a1g();t=null!=e&&e}else t=!1;return t},Ti.prototype.g1h=function(){return!(null==this.m13_1)},Ti.prototype.a1e=function(t){this.j13_1=t?1|this.j13_1:-2&this.j13_1},Ti.prototype.h19=function(){return!(0==(1&this.j13_1))},Ti.prototype.a1d=function(t){this.j13_1=t?2|this.j13_1:-3&this.j13_1},Ti.prototype.e1h=function(){return!(0==(2&this.j13_1))},Ti.prototype.r1d=function(t){this.j13_1=t?4|this.j13_1:-5&this.j13_1},Ti.prototype.b1d=function(){return!(0==(4&this.j13_1))},Ti.prototype.g1a=function(t){this.j13_1=t?8|this.j13_1:-9&this.j13_1},Ti.prototype.e1d=function(){return!(0==(8&this.j13_1))},Ti.prototype.x19=function(t){var n=this.m13_1;if(null==(null==n?null:n(t,1)))throw St("Invalid restart scope")},Ti.prototype.m1f=function(t){var n=this.k13_1,e=null==n?null:n.d1h(this,t);return null==e?Wr():e},Ti.prototype.pt=function(){this.k13_1=null,this.o13_1=null,this.p13_1=null},Ti.prototype.k1c=function(t){this.k13_1=t},Ti.prototype.c1h=function(){var t=this.k13_1;null==t||t.d1h(this,null)},Ti.prototype.k1e=function(t){this.m13_1=t},Ti.prototype.s1d=function(){return!(0==(16&this.j13_1))},Ti.prototype.h1a=function(t){this.n13_1=t,Di(this,!1)},Ti.prototype.n1d=function(){Di(this,!0)},Ti.prototype.u1g=function(t){if(0!=(32&this.j13_1))return wt();var n,e=this.o13_1;if(null==e){var o=new Ga;this.o13_1=o,n=o}else n=e;if(n.h1i(t,this.n13_1),Rt(t,$i)){var r,i=this.p13_1;if(null==i){var s=Ya(0,1);this.p13_1=s,r=s}else r=i;r.e1g(t,t.p1h())}},Ti.prototype.s1f=function(){return!(null==this.p13_1)},Ti.prototype.u1e=function(t){if(null==t)return!0;var n=this.p13_1;if(null==n)return!0;var e,o=n;if(t.p1a()){var r;t:if(null!=t&&Rt(t,wn)&&t.h())r=!0;else{for(var i=t.c();i.d();){var s=i.e();if(!Rt(s,$i)||!Ht(o.n1h(s),s.p1h())){r=!1;break t}}r=!0}e=r}else e=!1;return!e},Ti.prototype.w19=function(){var t=this.k13_1;if(null==t);else{var n=this.o13_1;if(null==n);else{Ii(this,!0);try{var e=0,o=n.d1i_1;if(e0&&(this.r1i_1.i(t)||(this.r1i_1.a(t),wt())),function(t,n){var e;t.o1i_1;t:{var o=t.v1i_1,r=0,i=o.f()-1|0;if(r<=i)do{var s=r;r=r+1|0;var a=o.g(s);if(Ht(a.z1b_1,n)){e=!0;break t}}while(r<=i);e=!1}if(!e)return wt();var u=jt();for(cs(u,t,n);!u.h();)es(t,u,null),cs(u,t,n)}(this,t),t.z1g(),t.a1h(),e||Ml().j1m()},gs.$metadata$=kt("Recomposer",void 0,void 0,void 0,void 0,di.prototype),$s.$metadata$=bt("RecomposerInfo"),xs.$metadata$=bt("RememberObserver"),Cs.$metadata$=en("Companion"),na.prototype.d=function(){return this.o1m_1this.f13_1&&tthis.b13_1.r1a(0))e=n+this.j19(n)|0;else{var o=this.b13_1.s1m(n);e=o<0?n+this.j19(n)|0:(Fs(this)-this.s12_1|0)-this.c13_1.a1a(o)|0}return t>n&&t=0||Pr(xt("Cannot insert auxiliary data when not inserting"));var n=this.f13_1,e=Rs(this,n);!ha(this.o12_1,e)||Pr(xt("Group already has auxiliary data")),Ts(this,1,n);var o,r,i=Ys(this.o12_1,this,e),s=Hs(this,i);if(this.u12_1>i){var a=this.u12_1-i|0;if(!(a<3))throw St(xt("Moving more than two slot not supported"));a>1&&(this.p12_1[s+2|0]=this.p12_1[s+1|0]),this.p12_1[s+1|0]=this.p12_1[s]}o=this.o12_1,r=$t(e,5)+1|0,o[r]=268435456|o[r],this.p12_1[s]=t;var u=this.u12_1;this.u12_1=u+1|0},ea.prototype.k1m=function(t){return Ns(this,this.e13_1,t)},ea.prototype.p1b=function(t,n){return Ns(this,t.t1m(this),n)},ea.prototype.x1m=function(t){this.u12_1<=this.v12_1||Pr(xt("Writing to an invalid slot")),this.p12_1[Hs(this,this.u12_1-1|0)]=t},ea.prototype.r1b=function(t,n){var e,o=Rs(this,this.e13_1),r=Js(this.o12_1,this,o),i=Ws(this.o12_1,this,Rs(this,this.e13_1+1|0)),s=r+t|0;s>=r&&s0&&Ts(this,1,this.f13_1);var t=this.p12_1,n=this.u12_1;return this.u12_1=n+1|0,t[Hs(this,n)]},ea.prototype.j1c=function(t,n){return this.y1m(this.i1b(t),n)},ea.prototype.y1m=function(t,n){var e=Rs(this,t),o=Js(this.o12_1,this,e),r=Ws(this.o12_1,this,Rs(this,t+1|0)),i=o+n|0;if(!(o<=i&&i=0))throw on(xt("Cannot seek backwards"));if(!(this.z12_1<=0))throw St(xt("Cannot call seek() while inserting"));if(0===t)return wt();var n,e=this.e13_1+t|0;e>=this.f13_1&&e<=this.t12_1||(n="Cannot seek outside the current group ("+this.f13_1+"-"+this.t12_1+")",Pr(xt(n))),this.e13_1=e;var o=Ws(this.o12_1,this,Rs(this,e));this.u12_1=o,this.v12_1=o},ea.prototype.a18=function(){var t=this.t12_1;this.e13_1=t,this.u12_1=Ws(this.o12_1,this,Rs(this,t))},ea.prototype.u18=function(){var t=this.z12_1;this.z12_1=t+1|0,0===t&&Ps(this)},ea.prototype.r19=function(){if(!(this.z12_1>0))throw St(xt("Unbalanced begin/end insert"));var t=this;t.z12_1=t.z12_1-1|0,0===t.z12_1&&(this.d13_1.f()!==this.b13_1.f()&&Pr(xt("startGroup/endGroup mismatch while inserting")),Ms(this))},ea.prototype.c18=function(){if(0!==this.z12_1)throw on(xt("Key must be supplied when inserting"));js(this,0,_r().j12_1,!1,_r().j12_1)},ea.prototype.f18=function(t,n){return js(this,t,n,!1,_r().j12_1)},ea.prototype.h18=function(t){return js(this,125,t,!0,_r().j12_1)},ea.prototype.g18=function(t,n,e){return js(this,t,n,!1,e)},ea.prototype.q19=function(){var t=this.z12_1>0,n=this.e13_1,e=this.t12_1,o=this.f13_1,r=Rs(this,o),i=this.a13_1,s=n-o|0,a=ia(this.o12_1,r);if(t)pa(this.o12_1,r,s),fa(this.o12_1,r,i),this.a13_1=this.d13_1.g19()+(a?1:i)|0,this.f13_1=Us(this.o12_1,this,o);else{if(n!==e)throw on(xt("Expected to be at the end of a group"));var u=la(this.o12_1,r),c=sa(this.o12_1,r);pa(this.o12_1,r,s),fa(this.o12_1,r,i);var l=this.b13_1.g19();Ms(this),this.f13_1=l;var h=Us(this.o12_1,this,o);if(this.a13_1=this.d13_1.g19(),h===l){this.a13_1=this.a13_1+(a?0:i-c|0)|0}else{var p=s-u|0,f=a?0:i-c|0;if(0!==p||0!==f)for(var _=h;0!==_&&_!==l&&(0!==f||0!==p);){var d=Rs(this,_);if(0!==p){var v=la(this.o12_1,d)+p|0;pa(this.o12_1,d,v)}0!==f&&fa(this.o12_1,d,sa(this.o12_1,d)+f|0),ia(this.o12_1,d)&&(f=0),_=Us(this.o12_1,this,_)}this.a13_1=this.a13_1+f|0}}return i},ea.prototype.h1f=function(t){if(!(this.z12_1<=0))throw on(xt("Cannot call ensureStarted() while inserting"));var n=this.f13_1;if(n!==t){if(!(t>=n&&t=t;)o.m1m();wt()}var r=Bs(this,t,this.e13_1-t|0);Ls(this,n,this.u12_1-n|0,t-1|0),this.e13_1=t,this.u12_1=n;return this.a13_1=this.a13_1-e|0,r},ea.prototype.i13=function(){return new na(Ws(this.o12_1,this,Rs(this,this.e13_1)),Ws(this.o12_1,this,Rs(this,this.e13_1+this.j19(this.e13_1)|0)),this)},ea.prototype.t1b=function(t){if(0!==this.z12_1)throw on(xt("Cannot move a group while inserting"));if(!(t>=0))throw on(xt("Parameter offset is out of bounds"));if(0===t)return wt();for(var n=this.e13_1,e=this.f13_1,o=this.t12_1,r=t,i=n;r>0;){if(!((i=i+la(this.o12_1,Rs(this,i))|0)<=o))throw on(xt("Parameter offset is out of bounds"));r=r-1|0}var s=la(this.o12_1,Rs(this,i)),a=this.u12_1,u=Ws(this.o12_1,this,Rs(this,i)),c=Ws(this.o12_1,this,Rs(this,i+s|0)),l=c-u|0,h=this.e13_1-1|0;Ts(this,l,Math.max(h,0)),Ds(this,s);var p=this.o12_1,f=Rs(this,i+s|0),_=$t(f,5),d=Rs(this,n),v=$t(d,5),y=_+$t(s,5)|0;if(Hn(p,p,v,_,y),l>0){var m=this.p12_1,g=Hs(this,u+l|0),$=Hs(this,c+l|0);Hn(m,m,a,g,$)}var b=(u+l|0)-a|0,w=this.w12_1,x=this.x12_1,k=this.p12_1.length,j=this.y12_1,C=n,z=n+s|0;if(C=0)t:for(;s=n&&c=t.r12_1?_.c1b_1=0|-(i-d|0):_.c1b_1=d;var v=ma(t.q12_1,d,i);t.q12_1.zf(v,_)}while(h<=p)})(this,i+s|0,n,s),!Bs(this,i+s|0,s)||Pr(xt("Unexpectedly removed anchors")),As(this,e,this.t12_1,n),l>0&&Ls(this,u+l|0,l,(i+s|0)-1|0)},ea.prototype.q1c=function(t,n,e){if(!(e.z12_1>0))throw on(xt("Failed requirement."));if(0!==this.z12_1)throw on(xt("Failed requirement."));if(!t.a1g())throw on(xt("Failed requirement."));var o=this.i1b(t)+n|0,r=this.e13_1;if(!(r<=o&&o0;c>=r;){var h=Rs(this,c);pa(this.o12_1,h,la(this.o12_1,h)-s|0),l&&(ia(this.o12_1,h)?l=!1:fa(this.o12_1,h,sa(this.o12_1,h)-a|0)),c=this.w17(c)}if(l){gr(this.a13_1>=a);this.a13_1=this.a13_1-a|0}return u},ea.prototype.n1c=function(t,n){if(!(this.z12_1>0))throw on(xt("Failed requirement."));if(0===n&&0===this.e13_1&&0===this.n12_1.n16_1){var e=this.o12_1,o=this.p12_1,r=this.q12_1,i=t.m16_1,s=t.n16_1,a=t.o16_1,u=t.p16_1;return this.o12_1=i,this.p12_1=a,this.q12_1=t.t16_1,this.r12_1=s,this.s12_1=(i.length/5|0)-s|0,this.w12_1=u,this.x12_1=a.length-u|0,this.y12_1=s,t.z1m(e,0,o,0,r),this.q12_1}var c,l=t.z17();try{c=ks(zs(),l,n,this,!0,!0)}finally{l.q17()}return c},ea.prototype.i1c=function(t,n,e){gr(this.z12_1<=0&&1===this.j19(this.e13_1+t|0));var o=this.e13_1,r=this.u12_1,i=this.v12_1;this.l1c(t),this.c18(),this.u18();var s,a=n.z17();try{s=ks(zs(),a,e,this,!1,!0)}finally{a.q17()}var u=s;return this.r19(),this.q19(),this.e13_1=o,this.u12_1=r,this.v12_1=i,u},ea.prototype.v18=function(t){var n,e=this.q12_1,o=Aa(e,t,this.f());if(o<0){var r=new ra(t<=this.r12_1?t:0|-(this.f()-t|0));e.zf(0|-(o+1|0),r),n=r}else n=e.g(o);return n},ea.prototype.a1n=function(t){var n,e,o,r=Rs(this,t);$a(this.o12_1,r)||(n=this.o12_1,e=!0,o=$t(r,5)+1|0,n[o]=e?134217728|n[o]:-134217729&n[o],ba(this.o12_1,r)||qs(this,this.w17(t)))},ea.prototype.j1a=function(t,n,e){return 0!=(1&n)&&(t=this.f13_1),this.a1n(t)},ea.prototype.i1b=function(t){var n=t.c1b_1;return n<0?this.f()+n|0:n},ea.prototype.toString=function(){return"SlotWriter(current = "+this.e13_1+" end="+this.t12_1+" size = "+this.f()+" gap="+this.r12_1+"-"+(this.r12_1+this.s12_1|0)+")"},ea.prototype.f=function(){return Fs(this)-this.s12_1|0},ea.$metadata$=kt("SlotWriter"),oa.prototype.b1n=function(){return this.t16_1},oa.prototype.eu=function(){return 0===this.n16_1},oa.prototype.c1n=function(t){var n,e=this.u16();try{n=t(e)}finally{e.q17()}return n},oa.prototype.d1n=function(t){var n,e=this.z17();try{n=t(e)}finally{e.q17()}return n},oa.prototype.u16=function(){if(this.r16_1)throw St("Cannot read while a writer is pending");var t=this.q16_1;return this.q16_1=t+1|0,new Sa(this)},oa.prototype.z17=function(){!this.r16_1||Pr(xt("Cannot start a writer when another writer is pending")),this.q16_1<=0||Pr(xt("Cannot start a writer when a reader is pending")),this.r16_1=!0;var t=this.s16_1;return this.s16_1=t+1|0,new ea(this)},oa.prototype.i1b=function(t){if(!this.r16_1||Pr(xt("Use active SlotWriter to determine anchor location instead")),!t.a1g())throw on(xt("Anchor refers to a group that was removed"));return t.c1b_1},oa.prototype.f1h=function(t){var n;if(t.a1g()){var e=Aa(this.t16_1,t.c1b_1,this.n16_1);n=e>=0&&Ht(this.t16_1.g(e),t)}else n=!1;return n},oa.prototype.c1g=function(t,n){var e;if(!this.r16_1||Pr(xt("Writer is active")),0<=t&&t0))throw on(xt("Unexpected reader close()"));var n=this.q16_1;this.q16_1=n-1|0},oa.prototype.v1m=function(t,n,e,o,r,i){if(t.n12_1!==this||!this.r16_1)throw on(xt("Unexpected writer close()"));this.r16_1=!1,this.z1m(n,e,o,r,i)},oa.prototype.z1m=function(t,n,e,o,r){this.m16_1=t,this.n16_1=n,this.o16_1=e,this.p16_1=o,this.t16_1=r},oa.prototype.c=function(){return new Pa(this,0,this.n16_1)},oa.$metadata$=kt("SlotTable",[Oh,Kn]),ra.prototype.f1n=function(t){this.c1b_1=t},ra.prototype.s1e=function(){return this.c1b_1},ra.prototype.a1g=function(){return!(this.c1b_1===Wn().x_1)},ra.prototype.m1c=function(t){return t.i1b(this)},ra.prototype.t1m=function(t){return t.i1b(this)},ra.$metadata$=kt("Anchor"),_a.prototype.n1m=function(t){if(!this.l1m_1.h()&&(this.l1m_1.g(0)===t||this.l1m_1.g(this.l1m_1.f()-1|0)===t))return wt();var n=this.l1m_1.f();this.l1m_1.a(t);t:for(;n>0;){var e=((n+1|0)>>>1|0)-1|0,o=this.l1m_1.g(e);if(!(t>o))break t;this.l1m_1.p4(n,o),n=e}this.l1m_1.p4(n,t)},_a.prototype.p1a=function(){return!this.l1m_1.h()},_a.prototype.g1d=function(){return Gn(this.l1m_1)},_a.prototype.m1m=function(){this.l1m_1.f()>0||Pr(xt("Set is empty"));for(var t=this.l1m_1.g(0);!this.l1m_1.h()&&this.l1m_1.g(0)===t;){this.l1m_1.p4(0,Yn(this.l1m_1)),this.l1m_1.n4(this.l1m_1.f()-1|0);var n=0,e=this.l1m_1.f(),o=this.l1m_1.f()>>>1|0;t:for(;ns){if(u>r){this.l1m_1.p4(n,u),this.l1m_1.p4(a,r),n=a;continue t}break t}}if(!(s>r))break t;this.l1m_1.p4(n,s),this.l1m_1.p4(i,r),n=i}}return t},_a.$metadata$=kt("PrioritySet"),Sa.prototype.r1m=function(){return this.k17_1},Sa.prototype.f=function(){return this.h17_1},Sa.prototype.w17=function(t){return va(this.g17_1,t)},Sa.prototype.j1b=function(){return ia(this.g17_1,this.k17_1)},Sa.prototype.b1a=function(t){return ia(this.g17_1,t)},Sa.prototype.c1a=function(t){return sa(this.g17_1,t)},Sa.prototype.o1a=function(t){return ia(this.g17_1,t)?ja(this.g17_1,this,t):null},Sa.prototype.n19=function(){return!!this.s19()||this.k17_1===this.l17_1},Sa.prototype.s19=function(){return this.n17_1>0},Sa.prototype.q1a=function(){return la(this.g17_1,this.k17_1)},Sa.prototype.j19=function(t){return la(this.g17_1,t)},Sa.prototype.m19=function(){return this.l17_1},Sa.prototype.q18=function(){return this.k17_1=0?sa(this.g17_1,this.m17_1):0},Sa.prototype.m1b=function(t,n){var e=t+1|0,o=xa(this.g17_1,t)+n|0;return o<(e0||this.o17_1>=this.p17_1)return _r().j12_1;var t=this.o17_1;return this.o17_1=t+1|0,this.i17_1[t]},Sa.prototype.e18=function(){var t=this.n17_1;this.n17_1=t+1|0},Sa.prototype.p19=function(){if(!(this.n17_1>0))throw on(xt("Unbalanced begin/end empty"));var t=this.n17_1;this.n17_1=t-1|0},Sa.prototype.q17=function(){return this.f17_1.e1n(this)},Sa.prototype.c18=function(){if(this.n17_1<=0){if(va(this.g17_1,this.k17_1)!==this.m17_1)throw on(xt("Invalid slot table detected"));this.m17_1=this.k17_1,this.l17_1=this.k17_1+la(this.g17_1,this.k17_1)|0;var t=this.k17_1;this.k17_1=t+1|0;var n=t;this.o17_1=xa(this.g17_1,n),this.p17_1=n>=(this.h17_1-1|0)?this.j17_1:ga(this.g17_1,n+1|0)}},Sa.prototype.d18=function(){if(this.n17_1<=0){if(!ia(this.g17_1,this.k17_1))throw on(xt("Expected a node group"));this.c18()}},Sa.prototype.s17=function(){if(0!==this.n17_1)throw on(xt("Cannot skip while in an empty region"));var t=ia(this.g17_1,this.k17_1)?1:sa(this.g17_1,this.k17_1);return this.k17_1=this.k17_1+la(this.g17_1,this.k17_1)|0,t},Sa.prototype.a18=function(){if(0!==this.n17_1)throw on(xt("Cannot skip the enclosing group while in an empty region"));this.k17_1=this.l17_1},Sa.prototype.e19=function(t){if(0!==this.n17_1)throw on(xt("Cannot reposition while in an empty region"));this.k17_1=t;var n=t=t&&e<=n))throw on(xt("Index "+t+" is not a parent of "+e));this.m17_1=t,this.l17_1=n,this.o17_1=0,this.p17_1=0},Sa.prototype.o19=function(){if(0===this.n17_1){if(this.k17_1!==this.l17_1)throw on(xt("endGroup() not called at the end of a group"));var t=va(this.g17_1,this.m17_1);this.m17_1=t,this.l17_1=t<0?this.h17_1:t+la(this.g17_1,t)|0}},Sa.prototype.r18=function(){var t=jt();if(this.n17_1>0)return t;for(var n=0,e=this.k17_1;e=this.y16_1.length&&(this.y16_1=Zn(this.y16_1,$t(this.y16_1.length,2)));var n=this.y16_1,e=this.z16_1;this.z16_1=e+1|0,n[e]=t},Ra.prototype.g19=function(){var t=this.y16_1,n=this;return n.z16_1=n.z16_1-1|0,t[n.z16_1]},Ra.prototype.r1a=function(t){return this.z16_1>0?this.g1d():t},Ra.prototype.g1d=function(){return this.y16_1[this.z16_1-1|0]},Ra.prototype.a1a=function(t){return this.y16_1[t]},Ra.prototype.h=function(){return 0===this.z16_1},Ra.prototype.s7=function(){this.z16_1=0},Ra.prototype.s1m=function(t){var n=0,e=this.z16_1;if(n0){if((e=function(t,n){for(var e=0,o=t.d1i_1-1|0,r=Dh(n);e<=o;){var i=(e+o|0)>>>1|0,s=t.e1i_1[i],a=Dh(s);if(ar))return s===n?i:Ka(t,i,n,r);o=i-1|0}}return 0|-(e+1|0)}(this,t))>=0)return this.f1i_1[e]=n,wt()}else e=-1;var o=0|-(e+1|0);if(this.d1i_1===this.e1i_1.length){var r=$t(this.e1i_1.length,2),i=Vn(Array(r),null),s=new Int32Array($t(this.e1i_1.length,2)),a=this.e1i_1,u=o+1|0,c=this.d1i_1;Hn(a,i,u,o,c);var l=this.f1i_1,h=o+1|0,p=this.d1i_1;Hn(l,s,h,o,p);var f,_=this.e1i_1;Hn(_,i,0,0,o),f=this.f1i_1,Hn(f,s,0,0,o),this.e1i_1=i,this.f1i_1=s}else{var d=this.e1i_1,v=this.e1i_1,y=o+1|0,m=this.d1i_1;Hn(d,v,y,o,m);var g=this.f1i_1,$=this.f1i_1,b=o+1|0,w=this.d1i_1;Hn(g,$,b,o,w)}this.e1i_1[o]=t,this.f1i_1[o]=n;var x=this.d1i_1;this.d1i_1=x+1|0},Ga.prototype.i1o=function(t){var n=0,e=0,o=this.d1i_1;if(e0},Qa.prototype.o1h=function(t){return Xa(this,t)>=0},Qa.prototype.n1h=function(t){var n,e=Xa(this,t);if(e>=0){var o=this.a1b_1[e];n=null==o||zt(o)?o:Ct()}else n=null;return n},Qa.prototype.e1g=function(t,n){var e=Xa(this,t);if(e>=0)this.a1b_1[e]=n;else{var o,r=0|-(e+1|0),i=this.b1b_1===this.z1a_1.length;if(i){var s=$t(this.b1b_1,2);o=Vn(Array(s),null)}else o=this.z1a_1;var a,u=o,c=this.z1a_1,l=r+1|0,h=this.b1b_1;if(Hn(c,u,l,r,h),i){var p=this.z1a_1;Hn(p,u,0,0,r)}if(u[r]=t,this.z1a_1=u,i){var f=$t(this.b1b_1,2);a=Vn(Array(f),null)}else a=this.a1b_1;var _=a,d=this.a1b_1,v=r+1|0,y=this.b1b_1;if(Hn(d,_,v,r,y),i){var m=this.a1b_1;Hn(m,_,0,0,r)}_[r]=n,this.a1b_1=_;var g=this.b1b_1;this.b1b_1=g+1|0}},Qa.prototype.g1i=function(t){var n=Xa(this,t);if(n>=0){var e=this.b1b_1,o=this.z1a_1,r=this.a1b_1;Hn(o,o,n,n+1|0,e),Hn(r,r,n,n+1|0,e);var i=e-1|0;return o[i]=null,r[i]=null,this.b1b_1=i,!0}return!1},Qa.prototype.l1o=function(t){var n=0,e=this.b1b_1;if(n=0},ou.prototype.i=function(t){return!!zt(t)&&this.m3(zt(t)?t:Ct())},ou.prototype.g=function(t){var n=this.w1e_1[t];return zt(n)?n:Ct()},ou.prototype.x1e=function(t){var n;if(this.v1e_1>0){if((n=tu(this,t))>=0)return!1}else n=-1;var e=0|-(n+1|0);if(this.v1e_1===this.w1e_1.length){var o=$t(this.w1e_1.length,2),r=Vn(Array(o),null),i=this.w1e_1,s=e+1|0,a=this.v1e_1;Hn(i,r,s,e,a);var u=this.w1e_1;Hn(u,r,0,0,e),this.w1e_1=r}else{var c=this.w1e_1,l=this.w1e_1,h=e+1|0,p=this.v1e_1;Hn(c,l,h,e,p)}this.w1e_1[e]=t;var f=this.v1e_1;return this.v1e_1=f+1|0,!0},ou.prototype.h=function(){return 0===this.v1e_1},ou.prototype.p1a=function(){return this.v1e_1>0},ou.prototype.o1o=function(t){var n=tu(this,t);if(n>=0){if(n<(this.v1e_1-1|0)){var e=this.w1e_1,o=this.w1e_1,r=n+1|0,i=this.v1e_1;Hn(e,o,n,r,i)}var s=this.v1e_1;return this.v1e_1=s-1|0,this.w1e_1[this.v1e_1]=null,!0}return!1},ou.prototype.p1o=function(t){var n=0,e=0,o=this.v1e_1;if(e0){if((e=iu(t,n))>=0)return ru(t,e)}else e=-1;var o=0|-(e+1|0);if(t.q1f_10&&(m=t.n1f_1,Hn(m,g,0,0,o)),t.n1f_1=g;var j=t,C=j.q1f_1;return j.q1f_1=C+1|0,y}(this,t).x1e(n)},au.prototype.r1f=function(t){return iu(this,t)>=0},au.prototype.s1o=function(t,n){var e=iu(this,t);if(e>=0)for(var o=ru(this,e).c();o.d();)n(o.e())},au.prototype.j1g=function(t,n){var e=iu(this,t);if(e>=0){var o=this.n1f_1[e],r=this.p1f_1[o];if(null==r)return!1;var i=r,s=i.o1o(n);if(0===i.v1e_1){var a=e+1|0,u=this.q1f_1;if(a0){if(n!==r){var v=this.n1f_1[n];this.n1f_1[n]=i,this.n1f_1[r]=v}n=n+1|0}}while(e0){if(n!==r){var a=this.n1f_1[n];this.n1f_1[n]=i,this.n1f_1[r]=a}n=n+1|0}}while(e0},$u.prototype.q=function(){return this.a1p_1},$u.prototype.c1p=function(){if(!this.d())throw re()},$u.prototype.d1p=function(){if(!this.p())throw re()},$u.$metadata$=kt("AbstractListIterator",[ie]),bu.prototype.k1=function(t){var n=this.v1o();return n.k1(t),n.t1o()},bu.prototype.kf=function(t){var n=this.j(t);return-1!==n?this.n4(n):this},bu.prototype.i=function(t){return!(-1===this.j(t))},bu.prototype.o1=function(t){var n;t:if(Rt(t,wn)&&t.h())n=!0;else{for(var e=t.c();e.d();){var o=e.e();if(!this.i(o)){n=!1;break t}}n=!0}return n},bu.prototype.c=function(){return this.e1p()},bu.prototype.e1p=function(){return this.o(0)},bu.$metadata$=kt("AbstractPersistentList",[pu],void 0,void 0,void 0,se.prototype),wu.prototype.e=function(){if(!this.d())throw re();var t=this.a1p_1;return this.a1p_1=t+1|0,this.h1p_1[t]},wu.prototype.r=function(){if(!this.p())throw re();var t=this;return t.a1p_1=t.a1p_1-1|0,this.h1p_1[t.a1p_1]},wu.$metadata$=kt("BufferIterator",void 0,void 0,void 0,void 0,$u.prototype),Mu.prototype.f=function(){return this.k1p_1},Mu.prototype.a=function(t){var n=this.k1p_1-xu(this)|0;if(n=e)return Cu(this,this.i1p_1,t-e|0,n);var o=new fc(null);return Cu(this,zu(this,this.i1p_1,this.l1p_1,t,n,o),0,o.m1p_1)},Mu.prototype.n4=function(t){al().e2(t,this.k1p_1);var n=xu(this);return t>=n?Su(this,this.i1p_1,n,this.l1p_1,t-n|0):Su(this,Ou(this,this.i1p_1,this.l1p_1,t,new fc(this.j1p_1[0])),n,this.l1p_1,0)},Mu.prototype.v1o=function(){return new Ku(this,this.i1p_1,this.j1p_1,this.l1p_1)},Mu.prototype.o=function(t){al().d2(t,this.k1p_1);var n=this.j1p_1;return new Gu(this.i1p_1,ln(n)?n:Ct(),t,this.k1p_1,1+(this.l1p_1/hc()|0)|0)},Mu.prototype.g=function(t){al().e2(t,this.k1p_1);var n=function(t,n){if(xu(t)<=n)return t.j1p_1;for(var e=t.i1p_1,o=t.l1p_1;o>0;){var r=e[pc(n,o)];e=null!=r&&ln(r)?r:Ct(),o=o-hc()|0}return e}(this,t)[t&cc()];return null==n||zt(n)?n:Ct()},Mu.prototype.p4=function(t,n){if(al().e2(t,this.k1p_1),xu(this)<=t){var e=Qn(this.j1p_1,ac());return e[t&cc()]=n,new Mu(this.i1p_1,e,this.k1p_1,this.l1p_1)}return new Mu(Pu(this,this.i1p_1,this.l1p_1,t,n),this.j1p_1,this.k1p_1,this.l1p_1)},Mu.$metadata$=kt("PersistentVector",[pu],void 0,void 0,void 0,bu.prototype),Ku.prototype.f=function(){return this.v1p_1},Ku.prototype.w1p=function(){return this.qf_1},Ku.prototype.t1o=function(){var t;return this.t1p_1===this.p1p_1&&this.u1p_1===this.q1p_1?t=this.o1p_1:(this.s1p_1=new ul,this.p1p_1=this.t1p_1,this.q1p_1=this.u1p_1,t=null==this.t1p_1?0===this.u1p_1.length?sc():new nc(Qn(this.u1p_1,this.v1p_1)):new Mu(pn(this.t1p_1),this.u1p_1,this.v1p_1,this.r1p_1)),this.o1p_1=t,this.o1p_1},Ku.prototype.a=function(t){this.qf_1=this.qf_1+1|0;var n=Eu(this);if(n=t.f()){this.u1p_1=Nu(0,Iu(this,this.u1p_1),e,o);this.v1p_1=this.v1p_1+t.f()|0}else{var r=((t.f()+e|0)-1|0)/ac()|0,i=Vn(Array(r),null);i[0]=Nu(0,Iu(this,this.u1p_1),e,o);var s=1;if(s>hc()<1<=e)return Ru(this,this.t1p_1,t-e|0,n),wt();var o=new fc(null),r=Hu(this,pn(this.t1p_1),this.r1p_1,t,n,o),i=o.m1p_1;Ru(this,r,0,null==i||zt(i)?i:Ct())},Ku.prototype.g=function(t){al().e2(t,this.v1p_1);var n=function(t,n){if(Au(t)<=n)return t.u1p_1;for(var e=pn(t.t1p_1),o=t.r1p_1;o>0;){var r=e[pc(n,o)];e=null!=r&&ln(r)?r:Ct(),o=o-hc()|0}return e}(this,t)[t&cc()];return null==n||zt(n)?n:Ct()},Ku.prototype.n4=function(t){al().e2(t,this.v1p_1);this.qf_1=this.qf_1+1|0;var n=Au(this);if(t>=n){var e=Uu(this,this.t1p_1,n,this.r1p_1,t-n|0);return null==e||zt(e)?e:Ct()}var o=new fc(this.u1p_1[0]);Uu(this,Vu(this,pn(this.t1p_1),this.r1p_1,t,o),n,this.r1p_1,0);var r=o.m1p_1;return null==r||zt(r)?r:Ct()},Ku.prototype.p4=function(t,n){if(al().e2(t,this.v1p_1),Au(this)<=t){var e=Iu(this,this.u1p_1);if(e!==this.u1p_1){var o=this.qf_1;this.qf_1=o+1|0}var r=t&cc(),i=e[r];return e[r]=n,this.u1p_1=e,null==i||zt(i)?i:Ct()}var s=new fc(null);this.t1p_1=Ju(this,pn(this.t1p_1),this.r1p_1,t,n,s);var a=s.m1p_1;return null==a||zt(a)?a:Ct()},Ku.prototype.c=function(){return this.e1p()},Ku.prototype.e1p=function(){return this.o(0)},Ku.prototype.o=function(t){return al().d2(t,this.v1p_1),new Zu(this,t)},Ku.$metadata$=kt("PersistentVectorBuilder",[hu],void 0,void 0,void 0,ce.prototype),Gu.prototype.e=function(){if(this.c1p(),this.a1q_1.d()){var t=this.a1p_1;return this.a1p_1=t+1|0,this.a1q_1.e()}var n=this.a1p_1;return this.a1p_1=n+1|0,this.z1p_1[n-this.a1q_1.b1p_1|0]},Gu.prototype.r=function(){if(this.d1p(),this.a1p_1>this.a1q_1.b1p_1){var t=this;return t.a1p_1=t.a1p_1-1|0,this.z1p_1[t.a1p_1-this.a1q_1.b1p_1|0]}var n=this.a1p_1;return this.a1p_1=n-1|0,this.a1q_1.r()},Gu.$metadata$=kt("PersistentVectorIterator",void 0,void 0,void 0,void 0,$u.prototype),Zu.prototype.r=function(){Xu(this),this.d1p(),this.l1q_1=this.a1p_1-1|0;var t=this.k1q_1;if(null==t){var n=this.i1q_1.u1p_1,e=this;e.a1p_1=e.a1p_1-1|0;var o=n[e.a1p_1];return null==o||zt(o)?o:Ct()}var r=t;if(this.a1p_1>r.b1p_1){var i=this.i1q_1.u1p_1,s=this;s.a1p_1=s.a1p_1-1|0;var a=i[s.a1p_1-r.b1p_1|0];return null==a||zt(a)?a:Ct()}var u=this.a1p_1;return this.a1p_1=u-1|0,r.r()},Zu.prototype.e=function(){Xu(this),this.c1p(),this.l1q_1=this.a1p_1;var t=this.k1q_1;if(null==t){var n=this.i1q_1.u1p_1,e=this.a1p_1;this.a1p_1=e+1|0;var o=n[e];return null==o||zt(o)?o:Ct()}var r=t;if(r.d()){var i=this.a1p_1;return this.a1p_1=i+1|0,r.e()}var s=this.i1q_1.u1p_1,a=this.a1p_1;this.a1p_1=a+1|0;var u=s[a-r.b1p_1|0];return null==u||zt(u)?u:Ct()},Zu.prototype.o4=function(){var t;Xu(this),function(t){if(-1===t.l1q_1)throw le()}(this),this.i1q_1.n4(this.l1q_1),this.l1q_10&&o<=r||i<0&&r<=o)do{var s=o;if(o=o+i|0,Ht(n,t.x1q_1[s]))return!0}while(s!==r);return!1}(r,n):r.y1q(t,n,e+5|0)}return!1},Wc.prototype.z1q=function(t,n,e){var o=1<0&&o<=r||i<0&&r<=o)do{var s=o;if(o=o+i|0,Ht(n,Tc(t,s)))return Bc(t,s)}while(s!==r);return null}(i,n):i.z1q(t,n,e+5|0)}return null},Wc.prototype.a1r=function(t,n,e,o){var r=1<0&&r<=i||s<0&&i<=r)do{var a=r;if(r=r+s|0,Ht(n,Tc(t,a))){if(e===Bc(t,a))return null;var u=t.x1q_1.slice();return u[a+1|0]=e,Ic(Mc(0,0,u))}}while(a!==i);return Ec(Mc(0,0,Kc(t.x1q_1,0,n,e)))}(u,n,e);if(null==c)return null;s=c}else{var l=u.a1r(t,n,e,o+5|0);if(null==l)return null;s=l}var h,p=s,f=p;return h=Lc(this,a,r,p.b1r_1),f.b1r_1=h,p}return Ec(function(t,n,e,o){var r=t.j1s(n),i=Kc(t.x1q_1,r,e,o);return Mc(t.u1q_1|n,t.v1q_1,i)}(this,r,n,e))},Wc.prototype.d1r=function(t,n,e){var o=1<0&&o<=r||i<0&&r<=o)do{var s=o;if(o=o+i|0,Ht(n,Tc(t,s)))return Hc(t,s)}while(s!==r);return t}(a,n):a.d1r(t,n,e+5|0),function(t,n,e,o,r){return null==e?Nc(t,o,r):n!==e?Lc(t,o,r,e):t}(this,a,i,s,o)}return this},Wc.$metadata$=kt("TrieNode"),Xc.prototype.z1o=function(){return this.y1o_1},Xc.$metadata$=en("Companion"),Qc.prototype.f=function(){return this.p1s_1.t1q_1},Qc.prototype.i=function(t){return this.p1s_1.v2(t)},Qc.prototype.a=function(t){if(this.p1s_1.v2(t))return this;if(this.h())return new Qc(t,t,this.p1s_1.n(t,tl()));var n=this.o1s_1,e=null==n||zt(n)?n:Ct(),o=pn(this.p1s_1.b3(e)),r=this.p1s_1.n(e,o.s1s(t)).n(t,nl(e));return new Qc(this.n1s_1,t,r)},Qc.prototype.kf=function(t){var n=this.p1s_1.b3(t);if(null==n)return this;var e=n,o=this.p1s_1.pg(t);if(e.t1s()){var r,i=o,s=e.q1s_1;r=(Rt(i,oe)?i:Ct()).b3(s);var a=pn(r),u=o,c=e.q1s_1;o=u.n(null==c||zt(c)?c:Ct(),a.s1s(e.r1s_1))}if(e.v1s()){var l,h=o,p=e.r1s_1;l=(Rt(h,oe)?h:Ct()).b3(p);var f=pn(l),_=o,d=e.r1s_1;o=_.n(null==d||zt(d)?d:Ct(),f.u1s(e.q1s_1))}return new Qc(e.t1s()?this.n1s_1:e.r1s_1,e.v1s()?this.o1s_1:e.q1s_1,o)},Qc.prototype.c=function(){return new ol(this.n1s_1,this.p1s_1)},Qc.$metadata$=kt("PersistentOrderedSet",[vu],void 0,void 0,void 0,ve.prototype),el.prototype.s1s=function(t){return new el(this.q1s_1,t)},el.prototype.u1s=function(t){return new el(t,this.r1s_1)},el.prototype.v1s=function(){return!(this.r1s_1===il())},el.prototype.t1s=function(){return!(this.q1s_1===il())},el.$metadata$=kt("Links"),ol.prototype.d=function(){return this.y1s_1=n)throw we("index: "+t+", size: "+n)},sl.prototype.d2=function(t,n){if(t<0||t>n)throw we("index: "+t+", size: "+n)},sl.$metadata$=en("ListImplementation"),ul.$metadata$=kt("MutabilityOwnership"),Sl.$metadata$=bt("StateObject"),ql.prototype.ks=function(){return this.f1t_1()},ql.$metadata$=kt("sam$androidx_compose_runtime_snapshots_ObserverHandle$0",[El]),Ol.prototype.ks=function(){return this.g1t_1()},Ol.$metadata$=kt("sam$androidx_compose_runtime_snapshots_ObserverHandle$0",[El]),Pl.prototype.a11=function(){return Hl()},Pl.prototype.f1k=function(t,n){var e=Hl(),o=e instanceof Il?e:null,r=null==o?null:o.h1t(t,n);if(null==r)throw St("Cannot create a mutable snapshot of an read-only snapshot");return r},Pl.prototype.g1m=function(t){return Ul(vl()),ml(),kl().a(t),new ql((n=t,function(){return ml(),kl().kf(n),wt(),wt()}));var n},Pl.prototype.i1t=function(t){return ml(),jl().a(t),Vl(),new Ol((n=t,function(){return ml(),jl().kf(n),Vl(),wt()}));var n},Pl.prototype.j1m=function(){return Hl().j1m()},Pl.prototype.e1j=function(){ml();var t=Cl().lu().j1t();!0===(null==t?null:!t.h())&&Vl()},Pl.$metadata$=en("Companion"),Al.prototype.l1t=function(t){this.t1a_1=t},Al.prototype.k1t=function(){return this.t1a_1},Al.prototype.m1t=function(t){this.u1a_1=t},Al.prototype.y1a=function(){return this.u1a_1},Al.prototype.ks=function(){this.v1a_1=!0,ml(),this.o1t(),wt()},Al.prototype.p1t=function(t){var n=this.g1k();try{return t()}finally{this.h1k(n)}},Al.prototype.g1k=function(){var t=yl().lu();return yl().r1h(this),t},Al.prototype.h1k=function(t){yl().r1h(t)},Al.prototype.q1t=function(){return this.v1a_1},Al.prototype.r1t=function(){return this.w1a_1>=0},Al.prototype.v1t=function(){ml(),this.w1t(),this.x1t(),wt()},Al.prototype.w1t=function(){gl($l().c1u(this.y1a()))},Al.prototype.x1t=function(){this.o1t()},Al.prototype.d1u=function(){if(this.v1a_1)throw on(xt("Cannot use a disposed snapshot"))},Al.prototype.o1t=function(){this.w1a_1>=0&&(Rl(this.w1a_1),this.w1a_1=-1)},Al.prototype.e1u=function(){var t=this.w1a_1;return this.w1a_1=-1,t},Al.$metadata$=kt("Snapshot"),El.$metadata$=bt("ObserverHandle"),Il.prototype.s1t=function(){return this.n1k_1},Il.prototype.t1t=function(){return this.o1k_1},Il.prototype.h1t=function(t,n){this.d1u(),this.i1u(),this.j1u(this.y1a()),ml();var e=wl();bl(e+1|0);var o=e;gl($l().k1u(o));var r=this.k1t();this.l1t(r.k1u(o));var i=new Jl(o,Kl(r,this.y1a()+1|0,o),function(t,n,e,o,r){return 0!=(4&o)&&(e=!0),Gl(t,n,e)}(t,this.s1t(),!1,4),Yl(n,this.t1t()),this);if(!this.t1k_1&&!this.v1a_1){var s=this.y1a(),a=(ml(),wl());bl(a+1|0),this.m1t(a),gl($l().k1u(this.y1a())),wt(),this.l1t(Kl(this.k1t(),s+1|0,this.y1a()))}return i},Il.prototype.v1k=function(){var t,n=this.j1t(),e=null!=n?Xl(Cl().lu(),this,$l().c1u(Cl().lu().y1a())):null;if(ml(),Zl(this),null==n||0===n.f()){this.w1t();var o=Cl().lu();Ql(o,vl());var r=o.j1t();t=null!=r&&!r.h()?tn(Yt(kl()),r):tn(Gt(),null)}else{var i=Cl().lu(),s=this.l1u(wl(),e,$l().c1u(i.y1a()));if(!Ht(s,Tl()))return s;this.w1t(),Ql(i,vl());var a=i.j1t();this.g1u(null),i.g1u(null),t=tn(Yt(kl()),a)}var u=t,c=u.l4(),l=u.m4();if(this.t1k_1=!0,null!=l&&!l.h()){var h=0,p=c.f()-1|0;if(h<=p)do{var f=h;h=h+1|0,c.g(f)(l,this)}while(h<=p)}if(null!=n&&!n.h()){var _=0,d=c.f()-1|0;if(_<=d)do{var v=_;_=_+1|0,c.g(v)(n,this)}while(_<=d)}return ml(),this.x1t(),wt(),Tl()},Il.prototype.n1t=function(){return!1},Il.prototype.ks=function(){this.v1a_1||(Al.prototype.ks.call(this),this.m1u(this))},Il.prototype.n1u=function(t){var n=this.s1k_1;this.s1k_1=n+1|0},Il.prototype.m1u=function(t){if(!(this.s1k_1>0))throw on(xt("Failed requirement."));var n=this;n.s1k_1=n.s1k_1-1|0,0===n.s1k_1&&(this.t1k_1||function(t){var n=t.j1t();if(null!=n){t.f1u(),t.g1u(null);for(var e=t.y1a(),o=n.c();o.d();)for(var r=o.e().e1o();null!=r;)(r.w1n_1===e||ze(t.q1k_1,r.w1n_1))&&(r.w1n_1=0),r=r.x1n_1}t.v1t()}(this))},Il.prototype.j1m=function(){if(this.t1k_1||this.v1a_1)return wt();this.o1u()},Il.prototype.w1t=function(){gl($l().c1u(this.y1a()).p1u(this.q1k_1))},Il.prototype.x1t=function(){this.q1u(),Al.prototype.x1t.call(this)},Il.prototype.f1u=function(){if(this.t1k_1)throw St(xt("Unsupported operation on a snapshot that has been applied"))},Il.prototype.i1u=function(){if(this.t1k_1&&!(this.w1a_1>=0))throw St(xt("Unsupported operation on a disposed or applied snapshot"))},Il.prototype.l1u=function(t,n,e){for(var o=null,r=this.k1t().k1u(this.y1a()).r1u(this.q1k_1),i=pn(this.j1t()),s=null,a=i.c();a.d();){var u=a.e(),c=u.e1o(),l=th(c,t,e);if(null!=l){var h=l,p=th(c,this.y1a(),r);if(null!=p){var f=p;if(!Ht(h,f)){var _,d=th(c,this.y1a(),this.k1t());null==d?nh():_=d;var v=_,y=null==n?null:n.b3(h),m=null==y?u.g1o(f,h,v):y,g=m;if(null==g)return new Bl(this);if(Ht(g,v));else if(Ht(g,h)){var $,b,w=o;null==w?(o=b=jt(),$=b):$=w,$.a(tn(u,h.v1n()));var x,k,j=s;null==j?(s=k=jt(),x=k):x=j,x.a(u)}else{var C,z,S=o;null==S?(o=z=jt(),C=z):C=S,C.a(Ht(m,f)?tn(u,f.v1n()):tn(u,m))}}}}}var q=o;if(null==q);else{this.o1u();var O=0,P=q.f()-1|0;if(O<=P){do{var M=O;O=O+1|0;var A=q.g(M),E=A.l4(),I=A.m4();I.w1n_1=this.y1a(),ml(),I.x1n_1=E.e1o(),E.f1o(I),wt()}while(O<=P);wt()}}var D=s;return null==D||i.mf(D),Tl()},Il.prototype.s1u=function(t){this.j1u(this.y1a());var n=t();if(!this.t1k_1&&!this.v1a_1){var e=this.y1a(),o=(ml(),wl());bl(o+1|0),this.m1t(o),gl($l().k1u(this.y1a())),wt(),this.l1t(Kl(this.k1t(),e+1|0,this.y1a()))}return n},Il.prototype.o1u=function(){this.j1u(this.y1a());var t=wt();if(!this.t1k_1&&!this.v1a_1){var n=this.y1a(),e=(ml(),wl());bl(e+1|0),this.m1t(e),gl($l().k1u(this.y1a())),wt(),this.l1t(Kl(this.k1t(),n+1|0,this.y1a()))}return t},Il.prototype.j1u=function(t){ml(),this.q1k_1=this.q1k_1.k1u(t),wt()},Il.prototype.t1u=function(t){if(t>=0){var n,e,o=this.r1k_1;e=new Int32Array([t]),n=Se([o,e]),this.r1k_1=n}},Il.prototype.u1u=function(t){if(0===t.length)return wt();var n=this.r1k_1;if(0===n.length)this.r1k_1=t;else{var e;e=Se([n,t]),this.r1k_1=e}},Il.prototype.q1u=function(){var t=0,n=this.r1k_1.length-1|0;if(t<=n)do{var e=t;t=t+1|0,Rl(this.r1k_1[e])}while(t<=n)},Il.prototype.v1u=function(t){ml(),this.q1k_1=this.q1k_1.r1u(t),wt()},Il.prototype.u1t=function(t){var n,e=this.j1t();if(null==e){var o=fn();this.g1u(o),n=o}else n=e;n.a(t)},Il.prototype.g1u=function(t){this.p1k_1=t},Il.prototype.j1t=function(){return this.p1k_1},Il.prototype.w1u=function(){return this.t1k_1},Il.$metadata$=kt("MutableSnapshot",void 0,void 0,void 0,void 0,Al.prototype),Dl.$metadata$=en("Success",void 0,void 0,void 0,void 0,Ll.prototype),Bl.$metadata$=kt("Failure",void 0,void 0,void 0,void 0,Ll.prototype),Ll.$metadata$=kt("SnapshotApplyResult"),Nl.prototype.h1t=function(t,n){return eh((e=t,o=n,function(t){ml();var n=wl();return bl(n+1|0),new Il(n,t,e,o)}));var e,o},Nl.prototype.j1m=function(){Vl()},Nl.prototype.q1v=function(t){qh()},Nl.prototype.m1u=function(t){return this.q1v(t)},Nl.prototype.r1v=function(t){qh()},Nl.prototype.n1u=function(t){return this.r1v(t)},Nl.prototype.v1k=function(){throw St("Cannot apply the global snapshot directly. Call Snapshot.advanceGlobalSnapshot")},Nl.prototype.ks=function(){ml(),this.o1t(),wt()},Nl.$metadata$=kt("GlobalSnapshot",void 0,void 0,void 0,void 0,Il.prototype),Fl.prototype.z1n=function(t){this.w1n_1=t},Fl.prototype.a1o=function(t){this.x1n_1=t},Fl.$metadata$=kt("StateRecord"),Jl.prototype.u1m=function(){return this.n1w_1},Jl.prototype.ks=function(){this.v1a_1||(Il.prototype.ks.call(this),Wl(this))},Jl.prototype.v1k=function(){if(this.n1w_1.t1k_1||this.n1w_1.v1a_1)return new Bl(this);var t=this.j1t(),n=this.y1a(),e=null!=t?Xl(this.n1w_1,this,this.n1w_1.k1t()):null;if(ml(),Zl(this),null==t||0===t.f())this.v1t();else{var o=this.l1u(this.n1w_1.y1a(),e,this.n1w_1.k1t());if(!Ht(o,Tl()))return o;var r,i=this.n1w_1.j1t();if(null==i){var s=fn();this.n1w_1.g1u(s),r=s}else r=i;r.k1(t)}return this.n1w_1.y1a()0?this.u1v_1[0]:t},_h.prototype.y1v=function(t){!function(t,n){var e=t.u1v_1.length;if(n<=e)return wt();var o=$t(e,2),r=new Int32Array(o),i=new Int32Array(o),s=t.u1v_1,a=s.length;Hn(s,r,0,0,a);var u=t.v1v_1,c=u.length;Hn(u,i,0,0,c),t.u1v_1=r,t.v1v_1=i}(this,this.t1v_1+1|0);var n=this.t1v_1;this.t1v_1=n+1|0;var e=n,o=function(t){var n=t.w1v_1.length;if(t.x1v_1>=n){for(var e=0,o=$t(n,2),r=new Int32Array(o);e>1,r=n;r=0?(Me(),n=o<64):n=!1,n)return!new Bn(1,0).kb(o).xc(this.z1t_1).equals(new Bn(0,0));if(Me(),o>=64?(Me(),e=o<$t(64,2)):e=!1,e){var r=new Bn(1,0);return Me(),!r.kb(o-64|0).xc(this.y1t_1).equals(new Bn(0,0))}if(o>0)return!1;var i,s=this.b1u_1;return null!=(i=null==s?null:gh(s,t)>=0)&&i},mh.prototype.k1u=function(t){var n,e=t-this.a1u_1|0;if(e>=0?(Me(),n=e<64):n=!1,n){var o=new Bn(1,0).kb(e);if(this.z1t_1.xc(o).equals(new Bn(0,0)))return new mh(this.y1t_1,this.z1t_1.fn(o),this.a1u_1,this.b1u_1)}else{var r;if(Me(),e>=64?(Me(),r=e<$t(64,2)):r=!1,r){var i=new Bn(1,0);Me();var s=i.kb(e-64|0);if(this.y1t_1.xc(s).equals(new Bn(0,0)))return new mh(this.y1t_1.fn(s),this.z1t_1,this.a1u_1,this.b1u_1)}else if(Me(),e>=$t(64,2)){if(!this.g(t)){var a=this.y1t_1,u=this.z1t_1,c=this.a1u_1,l=null,h=t+1|0;Me();var p=h/64|0;Me();var f=$t(p,64);t:for(;c=0?(Me(),n=e<64):n=!1,n){var o=new Bn(1,0).kb(e);if(!this.z1t_1.xc(o).equals(new Bn(0,0)))return new mh(this.y1t_1,this.z1t_1.xc(o.en()),this.a1u_1,this.b1u_1)}else{var r;if(Me(),e>=64?(Me(),r=e<$t(64,2)):r=!1,r){var i=new Bn(1,0);Me();var s=i.kb(e-64|0);if(!this.y1t_1.xc(s).equals(new Bn(0,0)))return new mh(this.y1t_1.xc(s.en()),this.z1t_1,this.a1u_1,this.b1u_1)}else if(e<0){var a=this.b1u_1;if(null!=a){var u=gh(a,t);if(u>=0){var c=a.length-1|0;if(0===c)return new mh(this.y1t_1,this.z1t_1,this.a1u_1,null);var l=new Int32Array(c);return u>0&&Hn(a,l,0,0,u),u=0},jh.prototype.q=function(){return this.a1y_1+1|0},jh.prototype.r=function(){kh(this),Ch(this.a1y_1,this.z1x_1.f());var t=this.z1x_1.g(this.a1y_1),n=this.a1y_1;return this.a1y_1=n-1|0,t},jh.prototype.d=function(){return this.a1y_1<(this.z1x_1.f()-1|0)},jh.prototype.e=function(){kh(this);var t=this.a1y_1+1|0;Ch(t,this.z1x_1.f());var n=this.z1x_1.g(t);return this.a1y_1=t,n},jh.prototype.o4=function(){kh(this),this.z1x_1.n4(this.a1y_1);var t=this.a1y_1;this.a1y_1=t-1|0,this.b1y_1=this.z1x_1.r1x()},jh.$metadata$=kt("StateListIterator",[he]),Oh.$metadata$=bt("CompositionData"),Ph.$metadata$=bt("CompositionGroup",[Oh]),Eh.prototype.lu=function(){return this.j1f_1},Eh.prototype.p1w=function(t){this.j1f_1=t},Eh.prototype.l1f=function(t){var n=this.j1f_1;return this.j1f_1=t,n},Eh.prototype.p1g=function(t,n){var e;return Ht(t,this.j1f_1)?(this.j1f_1=n,e=!0):e=!1,e},Eh.$metadata$=kt("AtomicReference"),Ih.prototype.lu=function(){return this.q1h_1},Ih.prototype.r1h=function(t){this.q1h_1=t},Ih.$metadata$=kt("SnapshotThreadLocal"),Bh.prototype.q7=function(){var t=this.l7_1;t:for(;;)try{switch(this.j7_1){case 0:if(this.k7_1=2,this.j7_1=1,this.m1y_1=this,this.n1y_1=Fe(It(this.m1y_1)),window.requestAnimationFrame(Th(this.l1y_1,this.n1y_1)),(t=Tn(this.n1y_1.oi(),this))===Cn())return t;continue t;case 1:return t;case 2:throw this.m7_1}}catch(t){if(2===this.k7_1)throw t;this.j7_1=this.k7_1,this.m7_1=t}},Bh.$metadata$=kt("$withFrameNanosCOROUTINE$4",void 0,void 0,void 0,void 0,kn.prototype),Lh.prototype.e12=function(t,n){var e=new Bh(this,t,n);return e.l7_1=wt(),e.m7_1=null,e.q7()},Lh.$metadata$=kt("MonotonicClockImpl",[Mi]),Fh.prototype.s1a=function(t){return null},Fh.prototype.e1b=function(t){},Fh.$metadata$=en("Trace"),Uh.$metadata$=bt("ComposableLambda"),Wh.prototype.e1t=function(t){if(!Ht(this.b1t_1,t)){var n=null==this.b1t_1;this.b1t_1=t,n||function(t){if(t.a1t_1){var n=t.c1t_1;null!=n&&(n.c1h(),t.c1t_1=null);var e=t.d1t_1;if(null!=e){var o=0,r=e.f();if(o1&&i.a(P)}!function(t,n){if(n.f()>=2)for(var e=Kt(Jt(Wt(n).i35_1.c3())),o=n.c(),r=0;o.d();){var i=r;r=r+1|0;var s=o.e();if(0!==i){var a=Kt(Jt(s.i35_1.c3()));if(!qt(e,a))throw Vt(Lt("Invalid order. Expected '"+e+"', but found '"+a+"'"))}}for(var u=Nt(),c=n.c();c.d();)for(var l=c.e(),h=l.h35_1.v().c();h.d();){var p=h.e(),f=p.l2(),_=p.n2();if(u.v2(f)&&u.b3(f)!==_.f()){var d="Item count mismatch. For '"+f+"', "+u.b3(f)+" rows expected, but found "+_.f()+" in '"+l.g35_1+"' block";throw Vt(Lt(d))}var v=_.f();u.n(f,v)}}(0,r);var M=function(t,n){return Pt(n," vs ",null,null,0,null,Ao,30,null)}(0,r);return o.a(new Do(M,"",r)),"All"!==e&&i.i(e)?new Ft(i,function(t,n,e){for(var o=Mt(),r=n.c();r.d();){for(var i=r.e(),s=Mt(),a=i.e36_1.c();a.d();){var u,c=a.e(),l=c.h35_1.b3(e);if(null==l)u=null;else{for(var h=Dt(It(l,10)),p=0,f=l.c();f.d();){var _,d=f.e(),v=p;p=v+1|0;var y=Rt(v);_=new Ft(ko(Io(),y+1|0),Ht(d)),h.a(_)}u=h}var m,g=null==u?null:Ut(u);if(null==g){var $="Invalid focus group '"+e+"' for "+c.g35_1;throw Vt(Lt($))}m=g,s.a(new vo(c.g35_1,m))}o.a(new Do(e+" - "+i.c36_1,i.d36_1,s))}return o}(0,o,e)):new Ft(i,o)}(t,n,e),r=o.l4(),i=o.m4();return new wo(Bo(),i,r)}function ko(t,n){var e=n%100|0;return n+(11<=e&&e<=13?"th":1==(n%10|0)?"st":2==(n%10|0)?"nd":3==(n%10|0)?"rd":"th")}function jo(t,n){return t.l36_1.ea(n)}function Co(t,n){var e=t.j36_1.da(n," "),o=Gt("\\s{2,}").da(e," ");return Lt(Bt(Tt(o)?o:St()))}function zo(t,n){var e=t.k36_1.da(n," "),o=Gt("\\s{2,}").da(e," ");return Lt(Bt(Tt(o)?o:St()))}function So(t,n){return!function(t,n){return t.i36_1.ea(n)}(t,n)}function qo(t,n,e){var o;if(!Yt(e,n,!1,2,null))throw Vt(Lt("Invalid "+n+".Expected to start with '"+n+"' but found '"+e+"'"));var r=Xt(e,n,"",!1,4,null);o=Gt("\\s+").da(r," ");for(var i=Et(o,[", "],!1,0,6,null),s=Dt(It(i,10)),a=i.c();a.d();){var u,c,l=a.e(),h=Xt(l,",","",!1,4,null);c=Lt(Bt(Tt(h)?h:St())),u=Et(c,[" "],!1,0,6,null),s.a(u)}for(var p=s,f=Nt(),_=p.c();_.d();){var d=_.e(),v=d.g(0),y=d.g(1),m=Zt(y);f.n(v,m)}return f}function Oo(t,n){var e;t:{for(var o=n.h36_1.c();o.d();){var r=o.e();if(Yt(t,r,!1,2,null)){e=r;break t}}e=null}return e}function Po(t,n){switch(t){case"startup type is: cold":case"startup type is: warm":return!0;default:return"startup type is: hot"===t}}function Mo(t){return Lt(Bt(Tt(t)?t:St()))}function Ao(t){return t.g35_1}function Eo(){y=this,this.g36_1="All";for(var t,n=yo(),e=Dt(n.length),o=n,r=0,i=o.length;r "+_);for(var y=Nt(),m=pn(["rgba(255, 99, 132, 1)","rgba(54, 162, 235, 1)","rgba(255, 206, 86, 1)","rgba(75, 192, 192, 1)","rgba(153, 102, 255, 1)","rgba(255, 159, 64, 1)"]),g=f.c();g.d();){var $,b=g.e(),w=Et(b,[" "],!1,0,6,null).g(0),x=y.b3(w);if(null==x){m.h()&&m.a("rgba("+Ho()+", "+Ho()+", "+Ho()+", 1)");var k=Wt(m);m.kf(k);var j=k;y.n(w,j),$=j}else $=x;var C=$;o.n(b,C)}var z=new Fo(o,y);return en("groupMap: "+z),z}function Ho(){var t=fn(0,255);return dn(t,_n())}function Uo(){return $||($=!0,t=Gt("\\d+(.\\d+)?"),m=t),m;var t}function Vo(){g=this;var t;t=Gt("\\(input count : .+\\)$"),this.x35_1=t}function Wo(){return null==g&&new Vo,g}function Jo(t,n){Wo(),this.z35_1=t,this.a36_1=n,this.b36_1=0}function Ko(t,n){this.x36_1=t,this.y36_1=n,this.z36_1=8}function Go(t,n,e,o,r,i){return function(t,n,e,o,r,i,s){return 0!=(8&r)&&(o="col-lg-6"),Yo.call(s,t,n,e,o),s}(t,n,e,o,r,0,Object.create(Yo.prototype))}function Yo(t,n,e,o){this.c37_1=t,this.d37_1=n,this.e37_1=e,this.f37_1=o,this.g37_1=8}function Xo(t,n,e){this.n36_1=t,this.o36_1=n,this.p36_1=e,this.q36_1=0}function Zo(){b=this}function Qo(t,n,e){var o=n;return bn()&&$n(2098833845,e,-1,"components.ComposableSingletons$AutoFormUiKt.lambda-1. (AutoFormUi.kt:30)"),wn("⌨️ Input",o,6),bn()&&xn(),kt()}function tr(t,n,e){var o=n;return bn()&&$n(-1047390949,e,-1,"components.ComposableSingletons$AutoFormUiKt.lambda-2. (AutoFormUi.kt:58)"),wn("Benchmark :",o,6),bn()&&xn(),kt()}function nr(t,n,e){var o=n;return bn()&&$n(-1553178399,e,-1,"components.ComposableSingletons$AutoFormUiKt.lambda-3. (AutoFormUi.kt:89)"),wn("💾 SAVE",o,6),bn()&&xn(),kt()}function er(){var t;w=this,this.r37_1=(t=kn(2098833845,!1,Qo),function(n,e,o){return t.o1y(n,e,o)}),this.s37_1=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(kn(-1047390949,!1,tr)),this.t37_1=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(kn(-1553178399,!1,nr))}function or(){return null==w&&new er,w}function rr(t,n,e,o,r,i,s,a,u,c){var l=u;l=l.o1d(1546286992),jn(l,"C(FormUi$composable)P(!1,7,6,2,4,5,3)");var h,p=c;bn()&&$n(1546286992,p,-1,"components.FormUi$composable (AutoFormUi.kt:14)");var f=l;f.f12(-1124426577),jn(f,"C(remember$composable)P(1,2):Composables.kt#9igjgp");var _,d,v,y=f,m=!!(f.g12(o)|f.g12(t)),g=y.h12();if(m||g===Cn().j12_1){var $=(d=new ir(o,t,null),(v=function(t,n){return d.q1j(t,n)}).$arity=1,v);y.i12($),_=$}else _=g;var b=_,w=null==b||zn(b)?b:St();f.k12(),h=w,Sn(kt(),h,l,64),qn(null,or().r37_1,l,48,1);var x=On(l,950905109,!0,function(t,n,e,o,r,i,s,a,u){return function(c,l,h){var p=l;bn()&&$n(950905109,h,-1,"components.FormUi$composable. (AutoFormUi.kt:34)");var f=On(p,-1972588882,!0,function(t,n,e,o,r,i,s,a,u){return function(c,l,h){var p=l;bn()&&$n(-1972588882,h,-1,"components.FormUi$composable.. (AutoFormUi.kt:35)"),p.i1a(-1629932720,"inputForm"),di(t,n,e,o,r,p,64|14&i>>3|896&i>>9|7168&i>>9|57344&i>>9);var f=p;f.f12(547886695),jn(f,"C(remember$composable):Composables.kt#9igjgp");var _,d=f,v=d.h12();if(v===Cn().j12_1){var y=sr;d.i12(y),_=y}else _=v;var m=_,g=null==m||zn(m)?m:St();f.k12();var $=g,b=On(p,-1534844198,!0,function(t,n,e){return function(n,o,r){var i=o;bn()&&$n(-1534844198,r,-1,"components.FormUi$composable.... (AutoFormUi.kt:51)");var s=i;s.f12(547886695),jn(s,"C(remember$composable):Composables.kt#9igjgp");var a,u=s,c=u.h12();if(c===Cn().j12_1){var l=ar;u.i12(l),a=l}else a=c;var h,p=a,f=null==p||zn(p)?p:St();s.k12(),Tn("benchmark",f,or().s37_1,i,390,0);var _=i;_.f12(-1124426577),jn(_,"C(remember$composable)P(1,2):Composables.kt#9igjgp");var d,v=_,y=!!(_.g12(e)|_.g12(t)),m=v.h12();if(y||m===Cn().j12_1){var g=function(t,n){return function(e){return e.y20("benchmark"),e.x20(["form-control"]),In(e,"Benchmark data"),Dn(e,20),e.l28(function(t,n){return function(e){return t(n.p37(e.g2b_1,!1,!1,6,null)),kt()}}(t,n)),kt()}}(e,t);v.i12(g),d=g}else d=m;var $=d,b=null==$||zn($)?$:St();return _.k12(),h=b,Bn(t.n36_1,h,i,0,0),bn()&&(xn(),kt()),kt()}}(s,0,u)),w=p;w.f12(-838505973),jn(w,"C(remember$composable)P(1):Composables.kt#9igjgp");var x,k,j=w,C=w.g12(b),z=j.h12();if(C||z===Cn().j12_1){var S=(k=b,function(t,n,e){return k.o1y(t,n,e)});j.i12(S),x=S}else x=z;var q=x,O=null==q||zn(q)?q:St();w.k12(),Pn($,O,p,48,0);var P=p;P.f12(-1124426577),jn(P,"C(remember$composable)P(1,2):Composables.kt#9igjgp");var M,A=P,E=!!(P.g12(s)|P.g12(a)),I=A.h12();if(E||I===Cn().j12_1){var D=function(t,n){return function(e){return e.x20(["btn","btn-dark","float-end"]),e.v20(ur),nn(t.n36_1)&&(e.f20("disabled","true"),kt()),e.b21(function(t,n){return function(e){return t(n),kt()}}(n,t)),Rn(e,Fn()),kt()}}(s,a);A.i12(D),M=D}else M=I;var T=M,B=null==T||zn(T)?T:St();return P.k12(),Hn(B,or().t37_1,p,48,0),p.l1a(),bn()&&(xn(),kt()),kt()}}(t,n,e,o,r,i,s,a,u)),_=p;_.f12(-838505973),jn(_,"C(remember$composable)P(1):Composables.kt#9igjgp");var d,v,y=_,m=_.g12(f),g=y.h12();if(m||g===Cn().j12_1){var $=(v=f,function(t,n,e){return v.o1y(t,n,e)});y.i12($),d=$}else d=g;var b=d,w=null==b||zn(b)?b:St();return _.k12(),Un(null,null,w,p,384,3),bn()&&(xn(),kt()),kt()}}(n,e,i,s,a,p,t,r,o)),k=l;k.f12(-838505973),jn(k,"C(remember$composable)P(1):Composables.kt#9igjgp");var j,C,z=k,S=k.g12(x),q=z.h12();if(S||q===Cn().j12_1){var O=(C=x,function(t,n,e){return C.o1y(t,n,e)});z.i12(O),j=O}else j=q;var P=j,M=null==P||zn(P)?P:St();k.k12(),Pn(null,M,l,48,1),bn()&&xn();var A=l.p1d();null===A||A.k1e(function(t,n,e,o,r,i,s,a,u){return function(c,l){return function(t,n,e,o,r,i,s,a,u,c,l){rr(t,n,e,o,r,i,s,a,c,1|u)}(t,n,e,o,r,i,s,a,u,c),kt()}}(t,n,e,o,r,i,s,a,c))}function ir(t,n,e){this.e38_1=t,this.f38_1=n,Mn.call(this,e)}function sr(t){return t.x20(["form-group"]),kt()}function ar(t){return t.x20(["form-label"]),kt()}function ur(t){return Nn(t,Ln(10)),kt()}function cr(t,n,e){var o=n;return bn()&&$n(1529185564,e,-1,"components.ComposableSingletons$AutoGroupToggleKt.lambda-1. (AutoGroupToggle.kt:29)"),wn("Auto Group:",o,6),bn()&&xn(),kt()}function lr(){var t;x=this,this.h38_1=(t=kn(1529185564,!1,cr),function(n,e,o){return t.o1y(n,e,o)})}function hr(t,n,e,o){var r=e;r=r.o1d(442093563),jn(r,"C(AutoGroup$composable)");var i,s,a,u=o;if(0==(14&o)&&(u|=r.k1d(t)?4:2),0==(112&o)&&(u|=r.g12(n)?32:16),18==(91&u)&&r.w1b())r.a18();else{bn()&&$n(442093563,u,-1,"components.AutoGroup$composable (AutoGroupToggle.kt:10)");var c=r;c.f12(547886695),jn(c,"C(remember$composable):Composables.kt#9igjgp");var l,h=c,p=h.h12();if(p===Cn().j12_1){var f=pr;h.i12(f),l=f}else l=p;var _=l,d=null==_||zn(_)?_:St();c.k12();var v=d,y=On(r,1468648411,!0,(s=t,a=n,function(t,n,e){var o=n;bn()&&$n(1468648411,e,-1,"components.AutoGroup$composable. (AutoGroupToggle.kt:21)");var r=o;r.f12(547886695),jn(r,"C(remember$composable):Composables.kt#9igjgp");var i,u=r,c=u.h12();if(c===Cn().j12_1){var l=_r;u.i12(l),i=l}else i=c;var h=i,p=null==h||zn(h)?h:St();r.k12(),Tn("colorMap",p,(null==x&&new lr,x).h38_1,o,390,0),Wn(null,o,0,1);var f=o;f.f12(-1124426577),jn(f,"C(remember$composable)P(1,2):Composables.kt#9igjgp");var _,d=f,v=!!(f.g12(s)|f.g12(a)),y=d.h12();if(v||y===Cn().j12_1){var m=function(t,n){return function(e){return e.y20("colorMap"),e.x20(["btn",t?"btn-success":"btn-secondary"]),e.b21(function(t){return function(n){return t(),kt()}}(n)),Rn(e,Fn()),kt()}}(s,a);d.i12(m),_=m}else _=y;var g=_,$=null==g||zn(g)?g:St();f.k12();var b=$,w=On(o,-431302815,!0,function(t){return function(n,e,o){var r=e;return bn()&&$n(-431302815,o,-1,"components.AutoGroup$composable.. (AutoGroupToggle.kt:42)"),wn(t?"ON":"OFF",r,0),bn()&&(xn(),kt()),kt()}}(s)),k=o;k.f12(-838505973),jn(k,"C(remember$composable)P(1):Composables.kt#9igjgp");var j,C,z=k,S=k.g12(w),q=z.h12();if(S||q===Cn().j12_1){var O=(C=w,function(t,n,e){return C.o1y(t,n,e)});z.i12(O),j=O}else j=q;var P=j,M=null==P||zn(P)?P:St();return k.k12(),Hn(b,M,o,48,0),bn()&&(xn(),kt()),kt()})),m=r;m.f12(-838505973),jn(m,"C(remember$composable)P(1):Composables.kt#9igjgp");var g,$=m,b=m.g12(y),w=$.h12();if(b||w===Cn().j12_1){var k=(i=y,function(t,n,e){return i.o1y(t,n,e)});$.i12(k),g=k}else g=w;var j=g,C=null==j||zn(j)?j:St();m.k12(),Pn(v,C,r,48,0),bn()&&xn()}var z=r.p1d();null===z||z.k1e(function(t,n,e){return function(o,r){return function(t,n,e,o,r){hr(t,n,o,1|e)}(t,n,e,o),kt()}}(t,n,o))}function pr(t){return t.x20(["form-group"]),t.v20(fr),kt()}function fr(t){return Vn(t,Ln(10)),kt()}function _r(t){return t.x20(["form-label"]),kt()}function dr(t,n,e,o,r,i){var s=r;s=s.o1d(-1606680691),jn(s,"C(ChartUi$composable)P(2,1)");var a=i;bn()&&$n(-1606680691,a,-1,"components.ChartUi$composable (ChartUi.kt:19)");var u,c=On(s,708700421,!0,(u=e,function(t,n,e){var o=n;return bn()&&$n(708700421,e,-1,"components.ChartUi$composable. (ChartUi.kt:25)"),wn(u.c37_1+" "+u.d37_1,o,0),bn()&&(xn(),kt()),kt()})),l=s;l.f12(-838505973),jn(l,"C(remember$composable)P(1):Composables.kt#9igjgp");var h,p,f=l,_=l.g12(c),d=f.h12();if(_||d===Cn().j12_1){var v=(p=c,function(t,n,e){return p.o1y(t,n,e)});f.i12(v),h=v}else h=d;var y=h,m=null==y||zn(y)?y:St();l.k12(),qn(null,m,s,48,1);var g=s;g.f12(547886695),jn(g,"C(remember$composable):Composables.kt#9igjgp");var $,w=g,x=w.h12();if(x===Cn().j12_1){var k=vr;w.i12(k),$=k}else $=x;var j=$,C=null==j||zn(j)?j:St();g.k12();var z=C,S=On(s,586919320,!0,function(t,n,e,o,r){return function(i,s,a){var u=s;return bn()&&$n(586919320,a,-1,"components.ChartUi$composable. (ChartUi.kt:38)"),ee(t,n,function(t,n,e,o,r){return function(i){for(var s=Mt(),a=t.e37_1.v().c();a.d();){var u,c,l=a.e(),h=l.l2(),p=l.n2(),f={};f.label=h;var _,d=p.d3();if(c=te(d),f.data=c,n){var v=e.t36_1,y=f.label;_=(En(v,ne)?v:St()).b3(y)}else _=["rgba(255, 99, 132, 1)","rgba(54, 162, 235, 1)","rgba(255, 206, 86, 1)","rgba(75, 192, 192, 1)","rgba(153, 102, 255, 1)","rgba(255, 159, 64, 1)"];f.borderColor=_,f.borderWidth=3,u=f,s.a(u)}var m,g=o.v27(i),$={};null==b&&new Zo,m="line",$.type=m;for(var w=t.e37_1.d3(),x=Mt(),k=w.c();k.d();){var j;j=k.e().c3(),hn(x,j)}var C,z,S,q=cn(x),O=te(q),P={};P.labels=O,z=te(s),P.datasets=z,C=P,$.data=C;var M,A,E,I={},D={};A={display:!0},I.title=A,M=D,I.plugins=M;var T,B={};return T={beginAtZero:!0},B.y=T,E=B,I.scales=E,I.onClick=function(t,n){return function(e,o){if(0!==o.length){var r=o[0],i=(r.datasetIndex,r.index),s=t[null!=i&&"number"==typeof i?i:St()];n(s)}return kt()}}(O,r),S=I,$.options=S,new mr(new K(g,$))}}(t,n,o,i,r),u,8|112&e<<3),bn()&&(xn(),kt()),kt()}}(e,t,a,n,o)),q=s;q.f12(-838505973),jn(q,"C(remember$composable)P(1):Composables.kt#9igjgp");var O,P=q,M=q.g12(S),A=P.h12();if(M||A===Cn().j12_1){var E=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(S);P.i12(E),O=E}else O=A;var I=O,D=null==I||zn(I)?I:St();q.k12(),Jn(z,D,s,48,0),bn()&&xn();var T=s.p1d();null===T||T.k1e(function(t,n,e,o,r){return function(i,s){return function(t,n,e,o,r,i,s){dr(t,n,e,o,i,1|r)}(t,n,e,o,r,i),kt()}}(t,n,e,o,i))}function vr(t){return t.v20(yr),kt()}function yr(t){return Gn(t,Kn(100)),Yn(t,Kn(100)),Xn(t,Ln(700)),Zn(t,Ln(700)),kt()}function mr(t){this.j38_1=t}function gr(t,n,e){var o=n;return bn()&&$n(-646215327,e,-1,"components.ComposableSingletons$EditableTitleKt.lambda-1. (EditableTitle.kt:29)"),wn("Title :",o,6),bn()&&xn(),kt()}function $r(t,n,e){var o=n;bn()&&$n(1730974274,e,-1,"components.ComposableSingletons$EditableTitleKt.lambda-2. (EditableTitle.kt:23)");var r=o;r.f12(547886695),jn(r,"C(remember$composable):Composables.kt#9igjgp");var i,s=r,a=s.h12();if(a===Cn().j12_1){var u=br;s.i12(u),i=u}else i=a;var c=i,l=null==c||zn(c)?c:St();r.k12(),Tn("customTitle",l,zr().k38_1,o,390,0);var h=oe(),p=o;p.f12(547886695),jn(p,"C(remember$composable):Composables.kt#9igjgp");var f,_=p,d=_.h12();if(d===Cn().j12_1){var v=wr;_.i12(v),f=v}else f=d;var y=f,m=null==y||zn(y)?y:St();return p.k12(),re(h,m,o,8),bn()&&xn(),kt()}function br(t){return t.x20(["form-label"]),kt()}function wr(t){return t.y20("customTitle"),t.x20(["form-control"]),ie(t,"Custom title goes here"),t.v20(xr),kt()}function xr(t){return se(t,Ln(24)),kt()}function kr(t,n,e){var o=n;bn()&&$n(1174811809,e,-1,"components.ComposableSingletons$EditableTitleKt.lambda-3. (EditableTitle.kt:18)");var r=o;r.f12(547886695),jn(r,"C(remember$composable):Composables.kt#9igjgp");var i,s=r,a=s.h12();if(a===Cn().j12_1){var u=jr;s.i12(u),i=u}else i=a;var c=i,l=null==c||zn(c)?c:St();return r.k12(),Pn(l,zr().l38_1,o,48,0),bn()&&xn(),kt()}function jr(t){return t.x20(["form-group"]),kt()}function Cr(){var t;k=this,this.k38_1=(t=kn(-646215327,!1,gr),function(n,e,o){return t.o1y(n,e,o)}),this.l38_1=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(kn(1730974274,!1,$r)),this.m38_1=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(kn(1174811809,!1,kr))}function zr(){return null==k&&new Cr,k}function Sr(t,n){var e=t;if(e=e.o1d(1068528252),jn(e,"C(EditableTitle$composable)"),0===n&&e.w1b())e.a18();else{bn()&&$n(1068528252,n,-1,"components.EditableTitle$composable (EditableTitle.kt:13)");var o=e;o.f12(547886695),jn(o,"C(remember$composable):Composables.kt#9igjgp");var r,i=o,s=i.h12();if(s===Cn().j12_1){var a=qr;i.i12(a),r=a}else r=s;var u=r,c=null==u||zn(u)?u:St();o.k12(),Pn(c,zr().m38_1,e,48,0),bn()&&xn()}var l,h=e.p1d();null===h||h.k1e((l=n,function(t,n){return function(t,n,e){Sr(n,1|t)}(l,t),kt()}))}function qr(t){return t.x20(["row"]),kt()}function Or(t,n,e){var o=n;o=o.o1d(-1873638994),jn(o,"C(ErrorUi$composable)");var r,i,s=e;if(0==(14&e)&&(s|=o.g12(t)?4:2),2==(11&s)&&o.w1b())o.a18();else{bn()&&$n(-1873638994,e,-1,"components.ErrorUi$composable (Error.kt:8)");var a=o;a.f12(547886695),jn(a,"C(remember$composable):Composables.kt#9igjgp");var u,c=a,l=c.h12();if(l===Cn().j12_1){var h=Pr;c.i12(h),u=h}else u=l;var p=u,f=null==p||zn(p)?p:St();a.k12();var _=f,d=On(o,1938269174,!0,(i=t,function(t,n,e){var o=n;bn()&&$n(1938269174,e,-1,"components.ErrorUi$composable. (Error.kt:11)");var r=o;r.f12(547886695),jn(r,"C(remember$composable):Composables.kt#9igjgp");var s,a=r,u=a.h12();if(u===Cn().j12_1){var c=Mr;a.i12(c),s=c}else s=u;var l=s,h=null==l||zn(l)?l:St();r.k12();var p=h,f=On(o,-1978518889,!0,function(t){return function(n,e,o){var r=e;bn()&&$n(-1978518889,o,-1,"components.ErrorUi$composable.. (Error.kt:14)");var i=r;i.f12(547886695),jn(i,"C(remember$composable):Composables.kt#9igjgp");var s,a=i,u=a.h12();if(u===Cn().j12_1){var c=Ar;a.i12(c),s=c}else s=u;var l=s,h=null==l||zn(l)?l:St();i.k12();var p=h,f=On(r,153044343,!0,function(t){return function(n,e,o){var r=e;return bn()&&$n(153044343,o,-1,"components.ErrorUi$composable... (Error.kt:17)"),wn("❌ "+t,r,0),bn()&&(xn(),kt()),kt()}}(t)),_=r;_.f12(-838505973),jn(_,"C(remember$composable)P(1):Composables.kt#9igjgp");var d,v,y=_,m=_.g12(f),g=y.h12();if(m||g===Cn().j12_1){var $=(v=f,function(t,n,e){return v.o1y(t,n,e)});y.i12($),d=$}else d=g;var b=d,w=null==b||zn(b)?b:St();return _.k12(),ae(p,w,r,48,0),bn()&&(xn(),kt()),kt()}}(i)),_=o;_.f12(-838505973),jn(_,"C(remember$composable)P(1):Composables.kt#9igjgp");var d,v,y=_,m=_.g12(f),g=y.h12();if(m||g===Cn().j12_1){var $=(v=f,function(t,n,e){return v.o1y(t,n,e)});y.i12($),d=$}else d=g;var b=d,w=null==b||zn(b)?b:St();return _.k12(),Pn(p,w,o,48,0),bn()&&(xn(),kt()),kt()})),v=o;v.f12(-838505973),jn(v,"C(remember$composable)P(1):Composables.kt#9igjgp");var y,m=v,g=v.g12(d),$=m.h12();if(g||$===Cn().j12_1){var b=(r=d,function(t,n,e){return r.o1y(t,n,e)});m.i12(b),y=b}else y=$;var w=y,x=null==w||zn(w)?w:St();v.k12(),Pn(_,x,o,48,0),bn()&&xn()}var k=o.p1d();null===k||k.k1e(function(t,n){return function(e,o){return function(t,n,e,o){Or(t,e,1|n)}(t,n,e),kt()}}(t,e))}function Pr(t){return t.x20(["row"]),kt()}function Mr(t){return t.x20(["col-lg-12"]),kt()}function Ar(t){return t.x20(["text-center"]),kt()}function Er(t,n,e){var o=n;return bn()&&$n(242285827,e,-1,"components.ComposableSingletons$FocusGroupsKt.lambda-1. (FocusGroups.kt:24)"),wn("Focus Group :",o,6),bn()&&xn(),kt()}function Ir(){var t;j=this,this.n38_1=(t=kn(242285827,!1,Er),function(n,e,o){return t.o1y(n,e,o)})}function Dr(t,n,e,o,r){var i=o;i=i.o1d(1269797045),jn(i,"C(FocusGroups$composable)P(1)");var s,a,u,c,l=r;if(bn()&&$n(1269797045,l,-1,"components.FocusGroups$composable (FocusGroups.kt:8)"),!t.h()){var h=i;h.f12(547886695),jn(h,"C(remember$composable):Composables.kt#9igjgp");var p,f=h,_=f.h12();if(_===Cn().j12_1){var d=Tr;f.i12(d),p=d}else p=_;var v=p,y=null==v||zn(v)?v:St();h.k12();var m=y,g=On(i,1549671746,!0,(a=e,u=t,c=n,function(t,n,e){var o=n;bn()&&$n(1549671746,e,-1,"components.FocusGroups$composable. (FocusGroups.kt:18)");var r=o;r.f12(547886695),jn(r,"C(remember$composable):Composables.kt#9igjgp");var i,s=r,l=s.h12();if(l===Cn().j12_1){var h=Br;s.i12(h),i=h}else i=l;var p=i,f=null==p||zn(p)?p:St();r.k12(),Tn("focusGroups",f,(null==j&&new Ir,j).n38_1,o,390,0);var _=o;_.f12(-838505973),jn(_,"C(remember$composable)P(1):Composables.kt#9igjgp");var d,v=_,y=_.g12(a),m=v.h12();if(y||m===Cn().j12_1){var g=function(t){return function(n){return n.x20(["form-select"]),n.y20("focusGroups"),n.y27(function(t){return function(n){var e=n.g2b_1;return null==e||t(e),kt()}}(t)),kt()}}(a);v.i12(g),d=g}else d=m;var $=d,b=null==$||zn($)?$:St();_.k12();var w=b,x=On(o,1251988051,!0,function(t,n,e){return function(n,o,r){var i=o;bn()&&$n(1251988051,r,-1,"components.FocusGroups$composable.. (FocusGroups.kt:37)");for(var s=t.c();s.d();){var a=s.e(),u=i;u.f12(-1124426577),jn(u,"C(remember$composable)P(1,2):Composables.kt#9igjgp");var c,l=u,h=!!(u.g12(a)|u.g12(e)),p=l.h12();if(h||p===Cn().j12_1){var f=Lr(a,e);l.i12(f),c=f}else c=p;var _=c,d=null==_||zn(_)?_:St();u.k12();var v=d,y=On(i,736843431,!0,Nr(a)),m=i;m.f12(-838505973),jn(m,"C(remember$composable)P(1):Composables.kt#9igjgp");var g,$=m,b=m.g12(y),w=$.h12();if(b||w===Cn().j12_1){var x=Fr(y);$.i12(x),g=x}else g=w;var k=g,j=null==k||zn(k)?k:St();m.k12(),ce(a,v,j,i,384,0)}return bn()&&(xn(),kt()),kt()}}(u,0,c)),k=o;k.f12(-838505973),jn(k,"C(remember$composable)P(1):Composables.kt#9igjgp");var C,z,S=k,q=k.g12(x),O=S.h12();if(q||O===Cn().j12_1){var P=(z=x,function(t,n,e){return z.o1y(t,n,e)});S.i12(P),C=P}else C=O;var M=C,A=null==M||zn(M)?M:St();return k.k12(),le(w,!1,A,o,384,2),bn()&&(xn(),kt()),kt()})),$=i;$.f12(-838505973),jn($,"C(remember$composable)P(1):Composables.kt#9igjgp");var b,w=$,x=$.g12(g),k=w.h12();if(x||k===Cn().j12_1){var C=(s=g,function(t,n,e){return s.o1y(t,n,e)});w.i12(C),b=C}else b=k;var z=b,S=null==z||zn(z)?z:St();$.k12(),Pn(m,S,i,48,0)}bn()&&xn();var q=i.p1d();null===q||q.k1e(function(t,n,e,o){return function(r,i){return function(t,n,e,o,r,i){Dr(t,n,e,r,1|o)}(t,n,e,o,r),kt()}}(t,n,e,r))}function Tr(t){return t.x20(["form-group"]),kt()}function Br(t){return t.x20(["form-label"]),kt()}function Lr(t,n){return function(e){return t===n&&(ue(e),kt()),kt()}}function Nr(t){return function(n,e,o){var r=e;return bn()&&$n(736843431,o,-1,"components.FocusGroups$composable... (FocusGroups.kt:46)"),wn(t,r,0),bn()&&(xn(),kt()),kt()}}function Fr(t){return function(n,e,o){return t.o1y(n,e,o)}}function Rr(t,n,e){var o=n;return bn()&&$n(-1817257175,e,-1,"components.ComposableSingletons$HeadingKt.lambda-1. (Heading.kt:21)"),wn("📊 benchart",o,6),bn()&&xn(),kt()}function Hr(t,n,e){var o=n;bn()&&$n(-1445218266,e,-1,"components.ComposableSingletons$HeadingKt.lambda-2. (Heading.kt:18)");var r=o;r.f12(547886695),jn(r,"C(remember$composable):Composables.kt#9igjgp");var i,s=r,a=s.h12();if(a===Cn().j12_1){var u=Ur;s.i12(u),i=u}else i=a;var c=i,l=null==c||zn(c)?c:St();return r.k12(),he(l,Gr().o38_1,o,48,0),bn()&&xn(),kt()}function Ur(t){return t.x20(["text-center"]),kt()}function Vr(t,n,e){var o=n;bn()&&$n(-1522093819,e,-1,"components.ComposableSingletons$HeadingKt.lambda-3. (Heading.kt:11)");var r=o;r.f12(547886695),jn(r,"C(remember$composable):Composables.kt#9igjgp");var i,s=r,a=s.h12();if(a===Cn().j12_1){var u=Wr;s.i12(u),i=u}else i=a;var c=i,l=null==c||zn(c)?c:St();return r.k12(),Pn(l,Gr().p38_1,o,48,0),bn()&&xn(),kt()}function Wr(t){return t.x20(["col-lg-12"]),t.v20(Jr),kt()}function Jr(t){return pe(t,Ln(30)),Nn(t,Ln(30)),kt()}function Kr(){var t;C=this,this.o38_1=(t=kn(-1817257175,!1,Rr),function(n,e,o){return t.o1y(n,e,o)}),this.p38_1=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(kn(-1445218266,!1,Hr)),this.q38_1=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(kn(-1522093819,!1,Vr))}function Gr(){return null==C&&new Kr,C}function Yr(t,n){var e=t;if(e=e.o1d(1340484778),jn(e,"C(Heading$composable)"),0===n&&e.w1b())e.a18();else{bn()&&$n(1340484778,n,-1,"components.Heading$composable (Heading.kt:8)");var o=e;o.f12(547886695),jn(o,"C(remember$composable):Composables.kt#9igjgp");var r,i=o,s=i.h12();if(s===Cn().j12_1){var a=Xr;i.i12(a),r=a}else r=s;var u=r,c=null==u||zn(u)?u:St();o.k12(),Pn(c,Gr().q38_1,e,48,0),bn()&&xn()}var l,h=e.p1d();null===h||h.k1e((l=n,function(t,n){return function(t,n,e){Yr(n,1|t)}(l,t),kt()}))}function Xr(t){return t.x20(["row"]),kt()}function Zr(){z=this}function Qr(){S=this;var t=new fe("components.SavedBenchmarkNode",this,2);t.m2m("key",!1),t.m2m("value",!1),this.r38_1=t,this.s38_1=8}function ti(){return null==S&&new Qr,S}function ni(t,n,e,o){return function(t,n,e,o,r){return 3!=(3&t)&&me(t,3,ti().r38_1),r.u38_1=n,r.v38_1=e,r}(t,n,e,0,Object.create(ei.prototype))}function ei(t,n){null==z&&new Zr,this.u38_1=t,this.v38_1=n,this.w38_1=0}function oi(){q=this}function ri(){O=this;var t=new fe("components.SavedBenchmarks",this,1);t.m2m("items",!1),this.x38_1=t,this.y38_1=8}function ii(){return null==O&&new ri,O}function si(t,n,e){return function(t,n,e,o){return 1!=(1&t)&&me(t,1,ii().x38_1),o.a39_1=n,o}(t,n,0,Object.create(ai.prototype))}function ai(t){null==q&&new oi,this.a39_1=t,this.b39_1=8}function ui(){return Ci(),P}function ci(t,n,e){var o=n;return bn()&&$n(37561396,e,-1,"components.ComposableSingletons$SavedBenchmarksDropDownKt.lambda-1. (SavedBenchmarksDropDown.kt:35)"),wn("Load Benchmark :",o,6),bn()&&xn(),kt()}function li(t,n,e){var o=n;return bn()&&$n(-32633967,e,-1,"components.ComposableSingletons$SavedBenchmarksDropDownKt.lambda-2. (SavedBenchmarksDropDown.kt:88)"),wn("Unsaved benchmark",o,6),bn()&&xn(),kt()}function hi(t,n,e){var o=n;return bn()&&$n(-652929765,e,-1,"components.ComposableSingletons$SavedBenchmarksDropDownKt.lambda-3. (SavedBenchmarksDropDown.kt:114)"),wn("LOAD",o,6),bn()&&xn(),kt()}function pi(t,n,e){var o=n;return bn()&&$n(-1219865148,e,-1,"components.ComposableSingletons$SavedBenchmarksDropDownKt.lambda-4. (SavedBenchmarksDropDown.kt:130)"),wn("DELETE",o,6),bn()&&xn(),kt()}function fi(){var t;M=this,this.c39_1=(t=kn(37561396,!1,ci),function(n,e,o){return t.o1y(n,e,o)}),this.d39_1=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(kn(-32633967,!1,li)),this.e39_1=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(kn(-652929765,!1,hi)),this.f39_1=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(kn(-1219865148,!1,pi))}function _i(){return null==M&&new fi,M}function di(t,n,e,o,r,i,s){Ci();var a=i;a=a.o1d(-441302567),jn(a,"C(SavedBenchmarksDropDown$composable)P(4,3,2,1)");var u,c,l,h,p,f,_=s;if(bn()&&$n(-441302567,_,-1,"components.SavedBenchmarksDropDown$composable (SavedBenchmarksDropDown.kt:15)"),n.h()){bn()&&xn();var d=a.p1d();return null===d||d.k1e((u=t,c=n,l=e,h=o,p=r,f=s,function(t,n){return function(t,n,e,o,r,i,s,a){di(t,n,e,o,r,s,1|i)}(u,c,l,h,p,f,t),kt()})),kt()}var v=a;v.f12(-838505973),jn(v,"C(remember$composable)P(1):Composables.kt#9igjgp");var y,m=v,g=v.g12(n),$=m.h12();if(g||$===Cn().j12_1){var b=Wt(n),w=$e(b,null,2,null);m.i12(w),y=w}else y=$;var x=y,k=null==x||zn(x)?x:St();v.k12();var j=k,C=a;C.f12(547886695),jn(C,"C(remember$composable):Composables.kt#9igjgp");var z,S=C,q=S.h12();if(q===Cn().j12_1){var O=yi;S.i12(O),z=O}else z=q;var P=z,M=null==P||zn(P)?P:St();C.k12(),Tn("savedBenchmarks",M,_i().c39_1,a,390,0);var A=a;A.f12(547886695),jn(A,"C(remember$composable):Composables.kt#9igjgp");var E,I=A,D=I.h12();if(D===Cn().j12_1){var T=mi;I.i12(T),E=T}else E=D;var B=E,L=null==B||zn(B)?B:St();A.k12();var N=L,F=On(a,549151222,!0,function(t,n,e,o,r,i,s){return function(o,a,u){var c=a;bn()&&$n(549151222,u,-1,"components.SavedBenchmarksDropDown$composable. (SavedBenchmarksDropDown.kt:43)");var l=c;l.f12(547886695),jn(l,"C(remember$composable):Composables.kt#9igjgp");var h,p=l,f=p.h12();if(f===Cn().j12_1){var _=gi;p.i12(_),h=_}else h=f;var d=h,v=null==d||zn(d)?d:St();l.k12();var y=v,m=On(c,1940859863,!0,function(t,n,e,o,r,i,s){return function(o,a,u){var c=a;bn()&&$n(1940859863,u,-1,"components.SavedBenchmarksDropDown$composable.. (SavedBenchmarksDropDown.kt:48)");var l=c;l.f12(547886695),jn(l,"C(remember$composable):Composables.kt#9igjgp");var h,p=l,f=p.h12();if(f===Cn().j12_1){var _=$i;p.i12(_),h=_}else h=f;var d=h,v=null==d||zn(d)?d:St();l.k12();var y=v,m=On(c,461626232,!0,function(t,n,e,o,r){return function(o,i,s){var a=i;bn()&&$n(461626232,s,-1,"components.SavedBenchmarksDropDown$composable... (SavedBenchmarksDropDown.kt:54)");var u=function(t,n,e){return function(o){return o.x20(["form-select"]),o.y20("savedBenchmarks"),o.z27(function(t,n,e){return function(o){var r=o.g2a_1;if(null==r);else{var i;t(r);t:{for(var s=n.c();s.d();){var a=s.e();if(a.u38_1===r){i=a;break t}}i=null}(function(t,n){Ci(),xe("selectedBenchmark",be,!0,(function(){return we()})),t.ky(n)})(e,ke(i)),kt()}return kt()}}(t,n,e)),kt()}}(t,n,e),c=On(a,1692700999,!0,function(t,n,e,o){return function(n,r,i){var s=r;bn()&&$n(1692700999,i,-1,"components.SavedBenchmarksDropDown$composable.... (SavedBenchmarksDropDown.kt:67)");for(var a=t.c();a.d();){var u=a.e(),c=s;c.f12(-1058148781),jn(c,"C(remember$composable)P(1,2,3):Composables.kt#9igjgp");var l,h=c,p=!!(!!(c.g12(u)|c.g12(e))|c.g12(o)),f=h.h12();if(p||f===Cn().j12_1){var _=bi(u,o,e);h.i12(_),l=_}else l=f;var d=l,v=null==d||zn(d)?d:St();c.k12();var y,m=v,g=On(s,1052804723,!0,wi(u)),$=s;$.f12(-838505973),jn($,"C(remember$composable)P(1):Composables.kt#9igjgp");var b,w=$,x=$.g12(g),k=w.h12();if(x||k===Cn().j12_1){var j=xi(g);w.i12(j),b=j}else b=k;var C=b,z=null==C||zn(C)?C:St();$.k12(),y=z,ce(u.u38_1,m,y,s,384,0)}var S=ui(),q=s;q.f12(-838505973),jn(q,"C(remember$composable)P(1):Composables.kt#9igjgp");var O,P=q,M=q.g12(o),A=P.h12();if(M||A===Cn().j12_1){var E=function(t){return function(n){return t&&(ue(n),kt()),kt()}}(o);P.i12(E),O=E}else O=A;var I=O,D=null==I||zn(I)?I:St();return q.k12(),ce(S,D,_i().d39_1,s,390,0),bn()&&(xn(),kt()),kt()}}(n,0,e,r)),l=a;l.f12(-838505973),jn(l,"C(remember$composable)P(1):Composables.kt#9igjgp");var h,p,f=l,_=l.g12(c),d=f.h12();if(_||d===Cn().j12_1){var v=(p=c,function(t,n,e){return p.o1y(t,n,e)});f.i12(v),h=v}else h=d;var y=h,m=null==y||zn(y)?y:St();return l.k12(),le(u,!1,m,a,384,2),bn()&&(xn(),kt()),kt()}}(t,n,e,0,r)),g=c;g.f12(-838505973),jn(g,"C(remember$composable)P(1):Composables.kt#9igjgp");var $,b,w=g,x=g.g12(m),k=w.h12();if(x||k===Cn().j12_1){var j=(b=m,function(t,n,e){return b.o1y(t,n,e)});w.i12(j),$=j}else $=k;var C=$,z=null==C||zn(C)?C:St();g.k12(),Pn(y,z,c,48,0);var S=c;S.f12(547886695),jn(S,"C(remember$composable):Composables.kt#9igjgp");var q,O=S,P=O.h12();if(P===Cn().j12_1){var M=ki;O.i12(M),q=M}else q=P;var A=q,E=null==A||zn(A)?A:St();S.k12();var I=E,D=On(c,-282119967,!0,function(t,n,e,o,r){return function(t,i,s){var a=i;bn()&&$n(-282119967,s,-1,"components.SavedBenchmarksDropDown$composable... (SavedBenchmarksDropDown.kt:98)");var u=a;u.f12(-1058148781),jn(u,"C(remember$composable)P(1,2,3):Composables.kt#9igjgp");var c,l=u,h=!!(!!(u.g12(n)|u.g12(e))|u.g12(o)),p=l.h12();if(h||p===Cn().j12_1){var f=function(t,n,e){return function(o){return o.x20(["btn","btn-primary"]),o.v20(ji),o.b21(function(t,n){return function(e){return t(vi(n)),kt()}}(n,e)),Rn(o,Fn()),t&&(Ce(o),kt()),kt()}}(o,n,e);l.i12(f),c=f}else c=p;var _=c,d=null==_||zn(_)?_:St();u.k12(),Hn(d,_i().e39_1,a,48,0);var v=a;v.f12(-1058148781),jn(v,"C(remember$composable)P(1,2,3):Composables.kt#9igjgp");var y,m=v,g=!!(!!(v.g12(r)|v.g12(e))|v.g12(o)),$=m.h12();if(g||$===Cn().j12_1){var b=function(t,n,e){return function(o){return o.x20(["btn","btn-danger"]),o.b21(function(t,n){return function(e){return t(vi(n)),kt()}}(n,e)),Rn(o,Fn()),t&&(Ce(o),kt()),kt()}}(o,r,e);m.i12(b),y=b}else y=$;var w=y,x=null==w||zn(w)?w:St();return v.k12(),Hn(x,_i().f39_1,a,48,0),bn()&&(xn(),kt()),kt()}}(0,i,e,r,s)),T=c;T.f12(-838505973),jn(T,"C(remember$composable)P(1):Composables.kt#9igjgp");var B,L=T,N=T.g12(D),F=L.h12();if(N||F===Cn().j12_1){var R=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(D);L.i12(R),B=R}else B=F;var H=B,U=null==H||zn(H)?H:St();return T.k12(),Pn(I,U,c,48,0),bn()&&(xn(),kt()),kt()}}(t,n,e,0,r,i,s)),g=c;g.f12(-838505973),jn(g,"C(remember$composable)P(1):Composables.kt#9igjgp");var $,b,w=g,x=g.g12(m),k=w.h12();if(x||k===Cn().j12_1){var j=(b=m,function(t,n,e){return b.o1y(t,n,e)});w.i12(j),$=j}else $=k;var C=$,z=null==C||zn(C)?C:St();return g.k12(),Pn(y,z,c,48,0),bn()&&(xn(),kt()),kt()}}(e,n,j,0,t,o,r)),R=a;R.f12(-838505973),jn(R,"C(remember$composable)P(1):Composables.kt#9igjgp");var H,U,V=R,W=R.g12(F),J=V.h12();if(W||J===Cn().j12_1){var K=(U=F,function(t,n,e){return U.o1y(t,n,e)});V.i12(K),H=K}else H=J;var G=H,Y=null==G||zn(G)?G:St();R.k12(),Pn(N,Y,a,48,0),bn()&&xn();var X=a.p1d();null===X||X.k1e(function(t,n,e,o,r,i){return function(s,a){return function(t,n,e,o,r,i,s,a){di(t,n,e,o,r,s,1|i)}(t,n,e,o,r,i,s),kt()}}(t,n,e,o,r,s))}function vi(t){return Ci(),xe("selectedBenchmark",be,!0,(function(){return we()})),t.n2()}function yi(t){return Ci(),t.x20(["form-label"]),kt()}function mi(t){return Ci(),t.x20(["form-group"]),kt()}function gi(t){return Ci(),t.x20(["row"]),kt()}function $i(t){return Ci(),t.x20(["col"]),kt()}function bi(t,n,e){return function(o){return t.u38_1!==vi(e).u38_1||n||(ue(o),kt()),kt()}}function wi(t){return function(n,e,o){var r=e;return bn()&&$n(1052804723,o,-1,"components.SavedBenchmarksDropDown$composable..... (SavedBenchmarksDropDown.kt:76)"),wn(t.u38_1,r,0),bn()&&(xn(),kt()),kt()}}function xi(t){return function(n,e,o){return t.o1y(n,e,o)}}function ki(t){return Ci(),t.x20(["col"]),kt()}function ji(t){return Ci(),je(t,Ln(10)),kt()}function Ci(){A||(A=!0,P="unsavedBenchmark_"+(new Date).getMilliseconds())}function zi(t,n,e,o,r,i,s,a,u,c){this.h39_1=t,this.i39_1=n,this.j39_1=e,this.k39_1=o,this.l39_1=r,this.m39_1=i,this.n39_1=s,this.o39_1=a,this.p39_1=u,this.q39_1=c,this.r39_1=0}function Si(t,n){this.a3a_1=t,this.b3a_1=n,this.c3a_1=8}function qi(t){return Te("el",1,De,(function(t){return qi(t)}),null),t.e3a_1.n2()}function Oi(t){var n;this.d3a_1=t,this.e3a_1=ze((n=this,function(){return document.createElement(n.d3a_1)}))}function Pi(t,n,e){var o=n;return bn()&&$n(323270151,e,-1,"components.ComposableSingletons$SummaryKt.lambda-1. (Summary.kt:180)"),wn("vs",o,6),bn()&&xn(),kt()}function Mi(t,n,e){var o=n;return bn()&&$n(-1108287470,e,-1,"components.ComposableSingletons$SummaryKt.lambda-2. (Summary.kt:179)"),Bi(null,Ii().f3a_1,o,48,1),bn()&&xn(),kt()}function Ai(t,n,e){var o=n;return bn()&&$n(2132966384,e,-1,"components.ComposableSingletons$SummaryKt.lambda-3. (Summary.kt:178)"),qe(null,Ii().g3a_1,o,48,1),bn()&&xn(),kt()}function Ei(){var t;I=this,this.f3a_1=(t=kn(323270151,!1,Pi),function(n,e,o){return t.o1y(n,e,o)}),this.g3a_1=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(kn(-1108287470,!1,Mi)),this.h3a_1=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(kn(2132966384,!1,Ai))}function Ii(){return null==I&&new Ei,I}function Di(t,n,e,o,r){ss();var i=o;i=i.o1d(1689914162),jn(i,"C(SummaryContainer$composable)P(1,2)");var s=r;bn()&&$n(1689914162,s,-1,"components.SummaryContainer$composable (Summary.kt:52)"),t(i,14&s),Wn(null,i,0,1);for(var a=n.c();a.d();){var u=a.e();i.i1a(-380219352,u.a3a_1),Li(u.a3a_1,e,u.b3a_1,i,512|112&s>>3),Wn(null,i,0,1),i.l1a()}bn()&&xn();var c,l,h,p,f=i.p1d();null===f||f.k1e((c=t,l=n,h=e,p=r,function(t,n){return function(t,n,e,o,r,i){Di(t,n,e,r,1|o)}(c,l,h,p,t),kt()}))}function Ti(t,n,e,o,r,i,s,a,u,c,l){ss();var h=c;h=h.o1d(1501225216),jn(h,"C(SummarySelector$composable)P(!1,8,2,5!1,6,7)");var p=l;bn()&&$n(1501225216,p,-1,"components.SummarySelector$composable (Summary.kt:70)");var f=h;f.f12(547886695),jn(f,"C(remember$composable):Composables.kt#9igjgp");var _,d=f,v=d.h12();if(v===Cn().j12_1){var y=Fi;d.i12(y),_=y}else _=v;var m=_,g=null==m||zn(m)?m:St();f.k12();var $,b,w,x,k,j=g,C=On(h,2020978206,!0,($=p,b=e,w=t,x=o,k=n,function(t,n,e){var o=n;bn()&&$n(2020978206,e,-1,"components.SummarySelector$composable. (Summary.kt:86)");var r=o;r.f12(547886695),jn(r,"C(remember$composable):Composables.kt#9igjgp");var i,s=r,a=s.h12();if(a===Cn().j12_1){var u=Ri;s.i12(u),i=u}else i=a;var c=i,l=null==c||zn(c)?c:St();r.k12();var h=l,p=On(o,-871838913,!0,function(t,n,e){return function(o,r,i){var s=r;bn()&&$n(-871838913,i,-1,"components.SummarySelector$composable.. (Summary.kt:92)");var a=s;a.f12(-838505973),jn(a,"C(remember$composable)P(1):Composables.kt#9igjgp");var u,c=a,l=a.g12(n),h=c.h12();if(l||h===Cn().j12_1){var p=function(t){return function(n){return n.x20(["btn","btn-outline-dark","btn-sm"]),n.b21(function(t){return function(n){return t(),kt()}}(t)),Rn(n,Fn()),kt()}}(n);c.i12(p),u=p}else u=h;var f=u,_=null==f||zn(f)?f:St();a.k12();var d=_,v=On(s,-1132288775,!0,function(t,n){return function(e,o,r){var i=o;return bn()&&$n(-1132288775,r,-1,"components.SummarySelector$composable... (Summary.kt:102)"),wn(t,i,14&n),bn()&&(xn(),kt()),kt()}}(e,t)),y=s;y.f12(-838505973),jn(y,"C(remember$composable)P(1):Composables.kt#9igjgp");var m,g,$=y,b=y.g12(v),w=$.h12();if(b||w===Cn().j12_1){var x=(g=v,function(t,n,e){return g.o1y(t,n,e)});$.i12(x),m=x}else m=w;var k=m,j=null==k||zn(k)?k:St();return y.k12(),Hn(d,j,s,48,0),bn()&&(xn(),kt()),kt()}}($,b,w)),f=o;f.f12(-838505973),jn(f,"C(remember$composable)P(1):Composables.kt#9igjgp");var _,d,v=f,y=f.g12(p),m=v.h12();if(y||m===Cn().j12_1){var g=(d=p,function(t,n,e){return d.o1y(t,n,e)});v.i12(g),_=g}else _=m;var j=_,C=null==j||zn(j)?j:St();f.k12(),Pn(h,C,o,48,0);var z=o;z.f12(547886695),jn(z,"C(remember$composable):Composables.kt#9igjgp");var S,q=z,O=q.h12();if(O===Cn().j12_1){var P=Hi;q.i12(P),S=P}else S=O;var M=S,A=null==M||zn(M)?M:St();z.k12();var E=A,I=On(o,782244392,!0,function(t,n,e){return function(o,r,i){var s=r;bn()&&$n(782244392,i,-1,"components.SummarySelector$composable.. (Summary.kt:111)");var a=s;a.f12(-838505973),jn(a,"C(remember$composable)P(1):Composables.kt#9igjgp");var u,c=a,l=a.g12(n),h=c.h12();if(l||h===Cn().j12_1){var p=function(t){return function(n){return n.x20(["btn","btn-outline-dark","btn-sm"]),n.b21(function(t){return function(n){return t(),kt()}}(t)),Rn(n,Fn()),kt()}}(n);c.i12(p),u=p}else u=h;var f=u,_=null==f||zn(f)?f:St();a.k12();var d=_,v=On(s,-401969822,!0,function(t,n){return function(e,o,r){var i=o;return bn()&&$n(-401969822,r,-1,"components.SummarySelector$composable... (Summary.kt:121)"),wn(t,i,14&n>>3),bn()&&(xn(),kt()),kt()}}(e,t)),y=s;y.f12(-838505973),jn(y,"C(remember$composable)P(1):Composables.kt#9igjgp");var m,g=y,$=y.g12(v),b=g.h12();if($||b===Cn().j12_1){var w=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(v);g.i12(w),m=w}else m=b;var x=m,k=null==x||zn(x)?x:St();return y.k12(),Hn(d,k,s,48,0),bn()&&(xn(),kt()),kt()}}($,x,k)),D=o;D.f12(-838505973),jn(D,"C(remember$composable)P(1):Composables.kt#9igjgp");var T,B=D,L=D.g12(I),N=B.h12();if(L||N===Cn().j12_1){var F=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(I);B.i12(F),T=F}else T=N;var R=T,H=null==R||zn(R)?R:St();return D.k12(),Pn(E,H,o,48,0),bn()&&(xn(),kt()),kt()})),z=h;z.f12(-838505973),jn(z,"C(remember$composable)P(1):Composables.kt#9igjgp");var S,q,O=z,P=z.g12(C),M=O.h12();if(P||M===Cn().j12_1){var A=(q=C,function(t,n,e){return q.o1y(t,n,e)});O.i12(A),S=A}else S=M;var E=S,I=null==E||zn(E)?E:St();z.k12(),Pn(j,I,h,48,0);var D=h;D.f12(547886695),jn(D,"C(remember$composable):Composables.kt#9igjgp");var T,B=D,L=B.h12();if(L===Cn().j12_1){var N=Ui;B.i12(N),T=N}else T=L;var F=T,R=null==F||zn(F)?F:St();D.k12();var H,U,V,W,J,K=R,G=On(h,-569509561,!0,(H=a,U=u,V=r,W=i,J=s,function(t,n,e){var o=n;bn()&&$n(-569509561,e,-1,"components.SummarySelector$composable. (Summary.kt:132)");var r=0;if(r<2)do{var i=r;r=r+1|0,o.i1a(1520191834,"block-selector-"+i);var s=o;s.f12(547886695),jn(s,"C(remember$composable):Composables.kt#9igjgp");var a,u=s,c=u.h12();if(c===Cn().j12_1){var l=Vi;u.i12(l),a=l}else a=c;var h=a,p=null==h||zn(h)?h:St();s.k12();var f=p,_=On(o,-850201877,!0,Yi(0,i,H,U,V,W,J)),d=o;d.f12(-838505973),jn(d,"C(remember$composable)P(1):Composables.kt#9igjgp");var v,y=d,m=d.g12(_),g=y.h12();if(m||g===Cn().j12_1){var $=Xi(_);y.i12($),v=$}else v=g;var b=v,w=null==b||zn(b)?b:St();if(d.k12(),Pn(f,w,o,48,0),0===i){var x=o;x.f12(547886695),jn(x,"C(remember$composable):Composables.kt#9igjgp");var k,j=x,C=j.h12();if(C===Cn().j12_1){var z=Zi;j.i12(z),k=z}else k=C;var S=k,q=null==S||zn(S)?S:St();x.k12(),Pn(q,Ii().h3a_1,o,48,0)}o.l1a()}while(r<2);return bn()&&(xn(),kt()),kt()})),Y=h;Y.f12(-838505973),jn(Y,"C(remember$composable)P(1):Composables.kt#9igjgp");var X,Z=Y,Q=Y.g12(G),tt=Z.h12();if(Q||tt===Cn().j12_1){var nt=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(G);Z.i12(nt),X=nt}else X=tt;var et=X,ot=null==et||zn(et)?et:St();Y.k12(),Pn(K,ot,h,48,0),bn()&&xn();var rt=h.p1d();null===rt||rt.k1e(function(t,n,e,o,r,i,s,a,u,c){return function(l,h){return function(t,n,e,o,r,i,s,a,u,c,l,h){Ti(t,n,e,o,r,i,s,a,u,l,1|c)}(t,n,e,o,r,i,s,a,u,c,l),kt()}}(t,n,e,o,r,i,s,a,u,l))}function Bi(t,n,e,o,r){ss();var i={_v:t},s={_v:n},a=e;a=a.o1d(-1706683414),jn(a,"C(Strong$composable)");var u=o;0!=(1&r)?u|=6:0==(14&o)&&(u|=a.g12(i._v)?4:2),0!=(2&r)?u|=48:0==(112&o)&&(u|=a.g12(s._v)?32:16),18==(91&u)&&a.w1b()?a.a18():(0!=(1&r)&&(i._v=null),0!=(2&r)&&(s._v=null),bn()&&$n(-1706683414,u,-1,"components.Strong$composable (Summary.kt:206)"),Oe((ss(),E),i._v,s._v,a,8|112&u<<3|896&u<<3),bn()&&xn());var c,l,h,p,f=a.p1d();null===f||f.k1e((c=i,l=s,h=o,p=r,function(t,n){return function(t,n,e,o,r,i){Bi(t._v,n._v,r,1|e,o)}(c,l,h,p,t),kt()}))}function Li(t,n,e,o,r){ss();var i=o;i=i.o1d(-397929440),jn(i,"C(SummaryUi$composable)P(2)");var s=r;bn()&&$n(-397929440,s,-1,"components.SummaryUi$composable (Summary.kt:212)");var a=i;a.f12(547886695),jn(a,"C(remember$composable):Composables.kt#9igjgp");var u,c=a,l=c.h12();if(l===Cn().j12_1){var h=Qi;c.i12(h),u=h}else u=l;var p=u,f=null==p||zn(p)?p:St();a.k12();var _,d,v,y,m=f,g=On(i,122385029,!0,(_=t,d=s,v=n,y=e,function(t,n,e){var o=n;bn()&&$n(122385029,e,-1,"components.SummaryUi$composable. (Summary.kt:217)");var r=On(o,1987340836,!0,function(t,n,e){return function(o,r,i){var s,a=r;if(bn()&&$n(1987340836,i,-1,"components.SummaryUi$composable.. (Summary.kt:218)"),wn(t,a,14&n),e>1){var u=a;u.f12(547886695),jn(u,"C(remember$composable):Composables.kt#9igjgp");var c,l=u,h=l.h12();if(h===Cn().j12_1){var p=ts;l.i12(p),c=p}else c=h;var f=c,_=null==f||zn(f)?f:St();u.k12();var d=_,v=On(a,923568660,!0,function(t){return function(n,e,o){var r=e;return bn()&&$n(923568660,o,-1,"components.SummaryUi$composable... (Summary.kt:228)"),wn(" (average of "+t+")",r,0),bn()&&(xn(),kt()),kt()}}(e)),y=a;y.f12(-838505973),jn(y,"C(remember$composable)P(1):Composables.kt#9igjgp");var m,g=y,$=y.g12(v),b=g.h12();if($||b===Cn().j12_1){var w=(s=v,function(t,n,e){return s.o1y(t,n,e)});g.i12(w),m=w}else m=b;var x=m,k=null==x||zn(x)?x:St();y.k12(),Me(d,k,a,48,0)}return bn()&&(xn(),kt()),kt()}}(_,d,v)),i=o;i.f12(-838505973),jn(i,"C(remember$composable)P(1):Composables.kt#9igjgp");var s,a,u=i,c=i.g12(r),l=u.h12();if(c||l===Cn().j12_1){var h=(a=r,function(t,n,e){return a.o1y(t,n,e)});u.i12(h),s=h}else s=l;var p=s,f=null==p||zn(p)?p:St();i.k12(),qn(null,f,o,48,1);var m=On(o,1063714288,!0,function(t){return function(n,e,o){var r=e;bn()&&$n(1063714288,o,-1,"components.SummaryUi$composable.. (Summary.kt:233)");for(var i=t.c();i.d();){var s=i.e(),a=On(r,186798062,!0,os(s)),u=r;u.f12(-838505973),jn(u,"C(remember$composable)P(1):Composables.kt#9igjgp");var c,l=u,h=u.g12(a),p=l.h12();if(h||p===Cn().j12_1){var f=rs(a);l.i12(f),c=f}else c=p;var _=c,d=null==_||zn(_)?_:St();u.k12(),Ae(null,d,r,48,1)}return bn()&&(xn(),kt()),kt()}}(y)),g=o;g.f12(-838505973),jn(g,"C(remember$composable)P(1):Composables.kt#9igjgp");var $,b=g,w=g.g12(m),x=b.h12();if(w||x===Cn().j12_1){var k=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(m);b.i12(k),$=k}else $=x;var j=$,C=null==j||zn(j)?j:St();return g.k12(),Ee(null,C,o,48,1),bn()&&(xn(),kt()),kt()})),$=i;$.f12(-838505973),jn($,"C(remember$composable)P(1):Composables.kt#9igjgp");var b,w,x=$,k=$.g12(g),j=x.h12();if(k||j===Cn().j12_1){var C=(w=g,function(t,n,e){return w.o1y(t,n,e)});x.i12(C),b=C}else b=j;var z=b,S=null==z||zn(z)?z:St();$.k12(),Pn(m,S,i,48,0),bn()&&xn();var q=i.p1d();null===q||q.k1e(function(t,n,e,o){return function(r,i){return function(t,n,e,o,r,i){Li(t,n,e,r,1|o)}(t,n,e,o,r),kt()}}(t,n,e,r))}function Ni(t,n,e,o,r){ss();var i={_v:n},s=e;s=s.o1d(-1073265847);var a,u,c,l,h=o;if(0!=(1&r)?h|=6:0==(14&o)&&(h|=s.g12(t)?4:2),0!=(2&r)?h|=48:0==(112&o)&&(h|=s.g12(i._v)?32:16),18==(91&h)&&s.w1b())s.a18();else{0!=(2&r)&&(i._v=null),bn()&&$n(-1073265847,h,-1,"components.BoldText$composable (Summary.kt:274)");var p=i._v,f=s;f.f12(-838505973),jn(f,"C(remember$composable)P(1):Composables.kt#9igjgp");var _,d=f,v=f.g12(p),y=d.h12();if(v||y===Cn().j12_1){var m=(l=i,function(t){var n=l._v;return null==n||n(t),t.v20(is),kt()});d.i12(m),_=m}else _=y;var g=_,$=null==g||zn(g)?g:St();f.k12();var b=$,w=On(s,-374759312,!0,(u=t,c=h,function(t,n,e){var o=n;return bn()&&$n(-374759312,e,-1,"components.BoldText$composable. (Summary.kt:285)"),wn(u,o,14&c),bn()&&(xn(),kt()),kt()})),x=s;x.f12(-838505973),jn(x,"C(remember$composable)P(1):Composables.kt#9igjgp");var k,j=x,C=x.g12(w),z=j.h12();if(C||z===Cn().j12_1){var S=(a=w,function(t,n,e){return a.o1y(t,n,e)});j.i12(S),k=S}else k=z;var q=k,O=null==q||zn(q)?q:St();x.k12(),Pe(b,O,s,48,0),bn()&&xn()}var P=s.p1d();null===P||P.k1e(function(t,n,e,o){return function(r,i){return function(t,n,e,o,r,i){Ni(t,n._v,r,1|e,o)}(t,n,e,o,r),kt()}}(t,i,o,r))}function Fi(t){return ss(),t.x20(["row","mb-3"]),kt()}function Ri(t){return ss(),t.x20(["col-auto"]),kt()}function Hi(t){return ss(),t.x20(["col-auto"]),kt()}function Ui(t){return ss(),t.x20(["row"]),kt()}function Vi(t){return ss(),t.x20(["col"]),kt()}function Wi(t,n,e){return function(o){return o.x20(["form-select"]),o.y27(function(t,n,e){return function(o){var r=o.g2b_1;return null==r||(0===t?n(r):e(r)),kt()}}(t,n,e)),kt()}}function Ji(t,n,e,o){return function(r){return o===(0===t?n:e)&&(ue(r),kt()),kt()}}function Ki(t){return function(n,e,o){var r=e;return bn()&&$n(1538427302,o,-1,"components.SummarySelector$composable...... (Summary.kt:166)"),wn(t,r,0),bn()&&(xn(),kt()),kt()}}function Gi(t){return function(n,e,o){return t.o1y(n,e,o)}}function Yi(t,n,e,o,r,i,s){return function(t,a,u){var c=a;bn()&&$n(-850201877,u,-1,"components.SummarySelector$composable.... (Summary.kt:139)");var l=c;l.f12(-1058148781),jn(l,"C(remember$composable)P(1,2,3):Composables.kt#9igjgp");var h,p=l,f=!!(!!(l.g12(n)|l.g12(e))|l.g12(o)),_=p.h12();if(f||_===Cn().j12_1){var d=Wi(n,e,o);p.i12(d),h=d}else h=_;var v=h,y=null==v||zn(v)?v:St();l.k12();var m=y,g=On(c,1162597754,!0,function(t,n,e,o){return function(r,i,s){var a=i;bn()&&$n(1162597754,s,-1,"components.SummarySelector$composable..... (Summary.kt:155)");for(var u=t.c();u.d();){var c=u.e(),l=a;l.f12(-1603429786),jn(l,"C(remember$composable)P(1):Composables.kt#9igjgp");for(var h=!1,p=[n,e,o,c],f=0,_=p.length;f<_;){var d=p[f];f=f+1|0,h=!!(h|l.g12(d))}var v,y=l,m=h,g=y.h12();if(m||g===Cn().j12_1){var $=Ji(n,e,o,c);y.i12($),v=$}else v=g;var b=v,w=null==b||zn(b)?b:St();l.k12();var x=w,k=On(a,1538427302,!0,Ki(c)),j=a;j.f12(-838505973),jn(j,"C(remember$composable)P(1):Composables.kt#9igjgp");var C,z=j,S=j.g12(k),q=z.h12();if(S||q===Cn().j12_1){var O=Gi(k);z.i12(O),C=O}else C=q;var P=C,M=null==P||zn(P)?P:St();j.k12(),ce(c,x,M,a,384,0)}return bn()&&(xn(),kt()),kt()}}(r,n,i,s)),$=c;$.f12(-838505973),jn($,"C(remember$composable)P(1):Composables.kt#9igjgp");var b,w,x=$,k=$.g12(g),j=x.h12();if(k||j===Cn().j12_1){var C=(w=g,function(t,n,e){return w.o1y(t,n,e)});x.i12(C),b=C}else b=j;var z=b,S=null==z||zn(z)?z:St();return $.k12(),le(m,!1,S,c,384,2),bn()&&(xn(),kt()),kt()}}function Xi(t){return function(n,e,o){return t.o1y(n,e,o)}}function Zi(t){return ss(),t.x20(["col-auto"]),kt()}function Qi(t){return ss(),t.x20(["row"]),kt()}function ts(t){return ss(),t.x20(["text-muted"]),t.v20(ns),kt()}function ns(t){return ss(),se(t,Ln(18)),kt()}function es(t){return ss(),t.x20(["text-capitalize"]),kt()}function os(t){return function(n,e,o){var r,i=e;bn()&&$n(186798062,o,-1,"components.SummaryUi$composable.... (Summary.kt:235)"),wn(t.i39_1+" ",i,0);var s=i;s.f12(547886695),jn(s,"C(remember$composable):Composables.kt#9igjgp");var a,u=s,c=u.h12();if(c===Cn().j12_1){var l=es;u.i12(l),a=l}else a=c;var h=a,p=null==h||zn(h)?h:St();s.k12(),r=p,Ni(t.j39_1,r,i,0,0),wn(" : ",i,6),Ni(t.k39_1,null,i,0,2),wn(t.h39_1?" looks ":" performed ",i,0),Ni(t.l39_1+"% ",null,i,0,2);var f=t.h39_1?"":"ms",_=i;_.f12(-1124426577),jn(_,"C(remember$composable)P(1,2):Composables.kt#9igjgp");var d,v=_,y=!!(_.g12(t)|_.g12(f)),m=v.h12();if(y||m===Cn().j12_1){var g=function(t,n){return function(e){var o=0===t.n39_1?"secondary":t.n39_1>0?"danger":"success";return e.x20(["badge","bg-"+o]),e.f20("data-bs-toggle","tooltip"),e.f20("data-bs-placement","top"),e.f20("title",""+t.q39_1+n+" to "+t.p39_1+n),kt()}}(t,f);v.i12(g),d=g}else d=m;var $=d,b=null==$||zn($)?$:St();_.k12();var w=b,x=On(i,-387292852,!0,function(t){return function(n,e,o){var r=e;return bn()&&$n(-387292852,o,-1,"components.SummaryUi$composable..... (Summary.kt:263)"),wn(t.m39_1,r,0),bn()&&(xn(),kt()),kt()}}(t)),k=i;k.f12(-838505973),jn(k,"C(remember$composable)P(1):Composables.kt#9igjgp");var j,C,z=k,S=k.g12(x),q=z.h12();if(S||q===Cn().j12_1){var O=(C=x,function(t,n,e){return C.o1y(t,n,e)});z.i12(O),j=O}else j=q;var P=j,M=null==P||zn(P)?P:St();return k.k12(),Pe(w,M,i,48,0),wn(" ("+t.o39_1+t.n39_1+f+")",i,0),bn()&&(xn(),kt()),kt()}}function rs(t){return function(n,e,o){return t.o1y(n,e,o)}}function is(t){return ss(),Ie(t,"bold"),kt()}function ss(){D||(D=!0,E=new Oi("strong"))}function as(t,n,e){var o=n;return bn()&&$n(1817043984,e,-1,"components.ComposableSingletons$TestNameDetectionToggleKt.lambda-1. (TestNameDetectionToggle.kt:29)"),wn("Test Name Detection:",o,6),bn()&&xn(),kt()}function us(){var t;T=this,this.i3a_1=(t=kn(1817043984,!1,as),function(n,e,o){return t.o1y(n,e,o)})}function cs(t,n,e,o){var r=e;r=r.o1d(-1801806257),jn(r,"C(TestNameDetectionToggle$composable)");var i,s,a,u=o;if(0==(14&o)&&(u|=r.k1d(t)?4:2),0==(112&o)&&(u|=r.g12(n)?32:16),18==(91&u)&&r.w1b())r.a18();else{bn()&&$n(-1801806257,u,-1,"components.TestNameDetectionToggle$composable (TestNameDetectionToggle.kt:10)");var c=r;c.f12(547886695),jn(c,"C(remember$composable):Composables.kt#9igjgp");var l,h=c,p=h.h12();if(p===Cn().j12_1){var f=ls;h.i12(f),l=f}else l=p;var _=l,d=null==_||zn(_)?_:St();c.k12();var v=d,y=On(r,815464847,!0,(s=t,a=n,function(t,n,e){var o=n;bn()&&$n(815464847,e,-1,"components.TestNameDetectionToggle$composable. (TestNameDetectionToggle.kt:21)");var r=o;r.f12(547886695),jn(r,"C(remember$composable):Composables.kt#9igjgp");var i,u=r,c=u.h12();if(c===Cn().j12_1){var l=ps;u.i12(l),i=l}else i=c;var h=i,p=null==h||zn(h)?h:St();r.k12(),Tn("testNameDetection",p,(null==T&&new us,T).i3a_1,o,390,0),Wn(null,o,0,1);var f=o;f.f12(-1124426577),jn(f,"C(remember$composable)P(1,2):Composables.kt#9igjgp");var _,d=f,v=!!(f.g12(s)|f.g12(a)),y=d.h12();if(v||y===Cn().j12_1){var m=function(t,n){return function(e){return e.y20("testNameDetection"),e.x20(["btn",t?"btn-success":"btn-secondary"]),e.b21(function(t){return function(n){return t(),kt()}}(n)),Rn(e,Fn()),kt()}}(s,a);d.i12(m),_=m}else _=y;var g=_,$=null==g||zn(g)?g:St();f.k12();var b=$,w=On(o,-1071119211,!0,function(t){return function(n,e,o){var r=e;return bn()&&$n(-1071119211,o,-1,"components.TestNameDetectionToggle$composable.. (TestNameDetectionToggle.kt:42)"),wn(t?"ON":"OFF",r,0),bn()&&(xn(),kt()),kt()}}(s)),x=o;x.f12(-838505973),jn(x,"C(remember$composable)P(1):Composables.kt#9igjgp");var k,j,C=x,z=x.g12(w),S=C.h12();if(z||S===Cn().j12_1){var q=(j=w,function(t,n,e){return j.o1y(t,n,e)});C.i12(q),k=q}else k=S;var O=k,P=null==O||zn(O)?O:St();return x.k12(),Hn(b,P,o,48,0),bn()&&(xn(),kt()),kt()})),m=r;m.f12(-838505973),jn(m,"C(remember$composable)P(1):Composables.kt#9igjgp");var g,$=m,b=m.g12(y),w=$.h12();if(b||w===Cn().j12_1){var x=(i=y,function(t,n,e){return i.o1y(t,n,e)});$.i12(x),g=x}else g=w;var k=g,j=null==k||zn(k)?k:St();m.k12(),Pn(v,j,r,48,0),bn()&&xn()}var C=r.p1d();null===C||C.k1e(function(t,n,e){return function(o,r){return function(t,n,e,o,r){cs(t,n,o,1|e)}(t,n,e,o),kt()}}(t,n,o))}function ls(t){return t.x20(["form-group"]),t.v20(hs),kt()}function hs(t){return Vn(t,Ln(10)),kt()}function ps(t){return t.x20(["form-label"]),kt()}function fs(t,n,e){var o=n;return bn()&&$n(-130845949,e,-1,"components.ComposableSingletons$TestNamesKt.lambda-1. (TestNames.kt:24)"),wn("Test Name :",o,6),bn()&&xn(),kt()}function _s(){var t;B=this,this.j3a_1=(t=kn(-130845949,!1,fs),function(n,e,o){return t.o1y(n,e,o)})}function ds(t,n,e,o,r,i){var s={_v:n},a=o;a=a.o1d(246637604),jn(a,"C(TestNames$composable)P(2)");var u,c,l,h,p=r;if(0!=(2&i)&&(s._v=null),bn()&&$n(246637604,p,-1,"components.TestNames$composable (TestNames.kt:8)"),!t.h()){var f=a;f.f12(547886695),jn(f,"C(remember$composable):Composables.kt#9igjgp");var _,d=f,v=d.h12();if(v===Cn().j12_1){var y=vs;d.i12(y),_=y}else _=v;var m=_,g=null==m||zn(m)?m:St();f.k12();var $=g,b=On(a,-1509913918,!0,(c=e,l=t,h=s,function(t,n,e){var o=n;bn()&&$n(-1509913918,e,-1,"components.TestNames$composable. (TestNames.kt:18)");var r=o;r.f12(547886695),jn(r,"C(remember$composable):Composables.kt#9igjgp");var i,s=r,a=s.h12();if(a===Cn().j12_1){var u=ys;s.i12(u),i=u}else i=a;var p=i,f=null==p||zn(p)?p:St();r.k12(),Tn("testNames",f,(null==B&&new _s,B).j3a_1,o,390,0);var _=o;_.f12(-838505973),jn(_,"C(remember$composable)P(1):Composables.kt#9igjgp");var d,v=_,y=_.g12(c),m=v.h12();if(y||m===Cn().j12_1){var g=function(t){return function(n){return n.x20(["form-select"]),n.y20("testNames"),n.y27(function(t){return function(n){var e=n.g2b_1;return null==e||t(e),kt()}}(t)),kt()}}(c);v.i12(g),d=g}else d=m;var $=d,b=null==$||zn($)?$:St();_.k12();var w=b,x=On(o,-1857982381,!0,function(t,n,e){return function(e,o,r){var i=o;bn()&&$n(-1857982381,r,-1,"components.TestNames$composable.. (TestNames.kt:37)");for(var s=t.c();s.d();){var a=s.e(),u=n._v,c=i;c.f12(-1124426577),jn(c,"C(remember$composable)P(1,2):Composables.kt#9igjgp");var l,h=c,p=!!(c.g12(a)|c.g12(u)),f=h.h12();if(p||f===Cn().j12_1){var _=ms(a,n);h.i12(_),l=_}else l=f;var d=l,v=null==d||zn(d)?d:St();c.k12();var y=v,m=On(i,1208237735,!0,gs(a)),g=i;g.f12(-838505973),jn(g,"C(remember$composable)P(1):Composables.kt#9igjgp");var $,b=g,w=g.g12(m),x=b.h12();if(w||x===Cn().j12_1){var k=$s(m);b.i12(k),$=k}else $=x;var j=$,C=null==j||zn(j)?j:St();g.k12(),ce(a,y,C,i,384,0)}return bn()&&(xn(),kt()),kt()}}(l,h)),k=o;k.f12(-838505973),jn(k,"C(remember$composable)P(1):Composables.kt#9igjgp");var j,C,z=k,S=k.g12(x),q=z.h12();if(S||q===Cn().j12_1){var O=(C=x,function(t,n,e){return C.o1y(t,n,e)});z.i12(O),j=O}else j=q;var P=j,M=null==P||zn(P)?P:St();return k.k12(),le(w,!1,M,o,384,2),bn()&&(xn(),kt()),kt()})),w=a;w.f12(-838505973),jn(w,"C(remember$composable)P(1):Composables.kt#9igjgp");var x,k=w,j=w.g12(b),C=k.h12();if(j||C===Cn().j12_1){var z=(u=b,function(t,n,e){return u.o1y(t,n,e)});k.i12(z),x=z}else x=C;var S=x,q=null==S||zn(S)?S:St();w.k12(),Pn($,q,a,48,0)}bn()&&xn();var O=a.p1d();null===O||O.k1e(function(t,n,e,o,r){return function(i,s){return function(t,n,e,o,r,i,s){ds(t,n._v,e,i,1|o,r)}(t,n,e,o,r,i),kt()}}(t,s,e,r,i))}function vs(t){return t.x20(["form-group"]),kt()}function ys(t){return t.x20(["form-label"]),kt()}function ms(t,n){return function(e){return t===n._v&&(ue(e),kt()),kt()}}function gs(t){return function(n,e,o){var r=e;return bn()&&$n(1208237735,o,-1,"components.TestNames$composable... (TestNames.kt:46)"),wn(t,r,0),bn()&&(xn(),kt()),kt()}}function $s(t){return function(n,e,o){return t.o1y(n,e,o)}}function bs(t,n,e){var o=n;return bn()&&$n(1108811911,e,-1,"ComposableSingletons$MainKt.lambda-1. (main.kt:8)"),js(null,o,0,1),bn()&&xn(),kt()}function ws(){var t;L=this,this.k3a_1=(t=kn(1108811911,!1,bs),function(n,e,o){return t.o1y(n,e,o)})}function xs(t,n,e){var o=n;return bn()&&$n(-374992274,e,-1,"page.home.ComposableSingletons$HomePageKt.lambda-1. (HomePage.kt:112)"),wn("🖥 Output",o,6),bn()&&xn(),kt()}function ks(){var t;N=this,this.l3a_1=(t=kn(-374992274,!1,xs),function(n,e,o){return t.o1y(n,e,o)})}function js(t,n,e,o){var r={_v:t},i=n;i=i.o1d(-109696367),jn(i,"C(HomePageUi$composable)");var s,a,u=e;if(0==(14&e)&&(u|=0==(1&o)&&i.g12(r._v)?4:2),2==(11&u)&&i.w1b())i.a18();else{if(i.x1c(),0==(1&e)||i.b1d()){if(0!=(1&o)){var c,l=i;l.f12(547886695),jn(l,"C(remember$composable):Composables.kt#9igjgp");var h,p=l,f=p.h12();if(f===Cn().j12_1){var _=new ha(new va,new $a);p.i12(_),h=_}else h=f;var d=h,v=null==d||zn(d)?d:St();l.k12(),c=v,r._v=c,u&=-15}}else i.a18(),0!=(1&o)&&(u&=-15);i.y1c(),bn()&&$n(-109696367,u,-1,"page.home.HomePageUi$composable (HomePage.kt:29)");var y=i;y.f12(547886695),jn(y,"C(remember$composable):Composables.kt#9igjgp");var m,g=y,$=g.h12();if($===Cn().j12_1){var b=Cs;g.i12(b),m=b}else m=$;var w=m,x=null==w||zn(w)?w:St();y.k12();var k=x,j=On(i,1790973562,!0,(a=r,function(t,n,e){var o=n;bn()&&$n(1790973562,e,-1,"page.home.HomePageUi$composable. (HomePage.kt:36)"),Yr(o,0);var r=a._v.s3c();!nn(r)&&Or(a._v.s3c(),o,0);var i=o;i.f12(547886695),jn(i,"C(remember$composable):Composables.kt#9igjgp");var s,u=i,c=u.h12();if(c===Cn().j12_1){var l=zs;u.i12(l),s=l}else s=c;var h=s,p=null==h||zn(h)?h:St();i.k12();var f=p,_=On(o,-1337148517,!0,function(t,n){return function(n,e,o){var r=e;bn()&&$n(-1337148517,o,-1,"page.home.HomePageUi$composable.. (HomePage.kt:55)");var i=r;i.f12(547886695),jn(i,"C(remember$composable):Composables.kt#9igjgp");var s,a=i,u=a.h12();if(u===Cn().j12_1){var c=qs;a.i12(c),s=c}else s=u;var l=s,h=null==l||zn(l)?l:St();i.k12();var p=h,f=On(r,1509226108,!0,function(t,n){return function(n,e,o){var r=e;bn()&&$n(1509226108,o,-1,"page.home.HomePageUi$composable... (HomePage.kt:58)");var i,s=t._v.e3c(),a=t._v.f3c(),u=(i=t._v,function(t){return function(t,n){t.m3b(n,!1,2,null)}(i,t),kt()}),c=function(t){var n=function(n){return t.n3b(n),kt()};return n.callableName="onSaveClicked",n}(t._v);rr(s,a,t._v.g3c(),u,c,function(t){var n=function(n){return t.o3b(n),kt()};return n.callableName="onSavedBenchmarkChanged",n}(t._v),function(t){var n=function(n){return t.p3b(n),kt()};return n.callableName="onLoadBenchmarkClicked",n}(t._v),function(t){var n=function(n){return t.q3b(n),kt()};return n.callableName="onDeleteBenchmarkClicked",n}(t._v),r,520),Wn(null,r,0,1),Wn(null,r,0,1);var l=On(r,-1521832332,!0,function(t,n){return function(n,e){var o=n;if(2==(11&e)&&o.w1b())o.a18(),kt();else{if(bn()&&$n(-1521832332,e,-1,"page.home.HomePageUi$composable.... (HomePage.kt:74)"),en("block size "+t._v.z3a_1.f()),t._v.z3a_1.f()>2){var r=t._v.v3b(),i="BEST (-"+(null==r?null:r.y3b_1)+t._v.r28()+")",s=t._v.b3c(),a="WORST (+"+(null==s?null:s.z3b_1)+t._v.r28()+")",u=t._v,c=o;c.f12(-838505973),jn(c,"C(remember$composable)P(1):Composables.kt#9igjgp");var l,h=c,p=c.g12(u),f=h.h12();if(p||f===Cn().j12_1){var _=function(t){var n=function(){return t.r3b(),kt()};return n.callableName="onBestClicked",n}(u);h.i12(_),l=_}else l=f;var d=l,v=null==d||zn(d)?d:St();c.k12();var y=v,m=t._v,g=o;g.f12(-838505973),jn(g,"C(remember$composable)P(1):Composables.kt#9igjgp");var $,b=g,w=g.g12(m),x=b.h12();if(w||x===Cn().j12_1){var k=function(t){var n=function(){return t.s3b(),kt()};return n.callableName="onWorstClicked",n}(m);b.i12(k),$=k}else $=x;var j=$,C=null==j||zn(j)?j:St();g.k12(),Ti(i,a,y,C,t._v.z3a_1,t._v.c3c(),t._v.d3c(),function(t){var n=function(n){return t.t3b(n),kt()};return n.callableName="onBlockNameOneChanged",n}(t._v),function(t){var n=function(n){return t.u3b(n),kt()};return n.callableName="onBlockNameTwoChanged",n}(t._v),o,0)}bn()&&(xn(),kt())}return kt()}}(t)),h=r;h.f12(-838505973),jn(h,"C(remember$composable)P(1):Composables.kt#9igjgp");var p,f=h,_=h.g12(l),d=f.h12();if(_||d===Cn().j12_1){var v=function(t){return function(n,e){return t.u1b(n,e)}}(l);f.i12(v),p=v}else p=d;var y=p,m=null==y||zn(y)?y:St();return h.k12(),Di(m,t._v.b3b_1,t._v.h3c(),r,6),bn()&&(xn(),kt()),kt()}}(t)),_=r;_.f12(-838505973),jn(_,"C(remember$composable)P(1):Composables.kt#9igjgp");var d,v,y=_,m=_.g12(f),g=y.h12();if(m||g===Cn().j12_1){var $=(v=f,function(t,n,e){return v.o1y(t,n,e)});y.i12($),d=$}else d=g;var b=d,w=null==b||zn(b)?b:St();_.k12(),Pn(p,w,r,48,0);var x=t._v.r3c(),k=null==x?null:x.y36_1,j=null==k||k.h()?null:k;if(null==j);else{var C=t._v.r3c();if(null==C)throw Vt("TSH");var z=C,S=r;S.f12(547886695),jn(S,"C(remember$composable):Composables.kt#9igjgp");var q,O=S,P=O.h12();if(P===Cn().j12_1){var M=Os;O.i12(M),q=M}else q=P;var A=q,E=null==A||zn(A)?A:St();S.k12();var I=E,D=On(r,2092888171,!0,function(t,n,e,o){return function(n,r,i){var s=r;if(bn()&&$n(2092888171,i,-1,"page.home.HomePageUi$composable.... (HomePage.kt:101)"),t._v.q3c())s.f12(-1006755353),Sr(s,0),s.k12();else{s.f12(-1006755284);var a=t._v,u=s;u.f12(-838505973),jn(u,"C(remember$composable)P(1):Composables.kt#9igjgp");var c,l=u,h=u.g12(a),p=l.h12();if(h||p===Cn().j12_1){var f=function(t){return function(n){return n.c21(function(t){return function(n){return t._v.i3c(),kt()}}(t)),kt()}}(t);l.i12(f),c=f}else c=p;var _=c,d=null==_||zn(_)?_:St();u.k12(),qn(d,(null==N&&new ks,N).l3a_1,s,48,0),s.k12()}var v=s;v.f12(547886695),jn(v,"C(remember$composable):Composables.kt#9igjgp");var y,m=v,g=m.h12();if(g===Cn().j12_1){var $=Ps;m.i12($),y=$}else y=g;var b=y,w=null==b||zn(b)?b:St();v.k12();var x=w,k=On(s,-350149078,!0,function(t,n){return function(n,e,o){var r=e;bn()&&$n(-350149078,o,-1,"page.home.HomePageUi$composable..... (HomePage.kt:122)");var i=On(r,1688816067,!0,function(t,n){return function(n,e,o){var r=e;bn()&&$n(1688816067,o,-1,"page.home.HomePageUi$composable...... (HomePage.kt:123)");var i=r;i.f12(547886695),jn(i,"C(remember$composable):Composables.kt#9igjgp");var s,a=i,u=a.h12();if(u===Cn().j12_1){var c=Ms;a.i12(c),s=c}else s=u;var l=s,h=null==l||zn(l)?l:St();i.k12();var p=h,f=On(r,-1218869404,!0,function(t,n){return function(n,e,o){var r=e;bn()&&$n(-1218869404,o,-1,"page.home.HomePageUi$composable....... (HomePage.kt:128)");var i=r;i.f12(547886695),jn(i,"C(remember$composable):Composables.kt#9igjgp");var s,a=i,u=a.h12();if(u===Cn().j12_1){var c=As;a.i12(c),s=c}else s=u;var l=s,h=null==l||zn(l)?l:St();i.k12();var p=h,f=On(r,-1633797435,!0,function(t,n){return function(n,e,o){var r=e;bn()&&$n(-1633797435,o,-1,"page.home.HomePageUi$composable........ (HomePage.kt:134)");var i=t._v.e3c().p36_1,s=t._v,a=r;a.f12(-838505973),jn(a,"C(remember$composable)P(1):Composables.kt#9igjgp");var u,c=a,l=a.g12(s),h=c.h12();if(l||h===Cn().j12_1){var p=function(t){var n=function(){return t.j3c(),kt()};return n.callableName="onToggleAutoGroupClicked",n}(s);c.i12(p),u=p}else u=h;var f=u,_=null==f||zn(f)?f:St();return a.k12(),hr(i,_,r,0),bn()&&(xn(),kt()),kt()}}(t)),_=r;_.f12(-838505973),jn(_,"C(remember$composable)P(1):Composables.kt#9igjgp");var d,v=_,y=_.g12(f),m=v.h12();if(y||m===Cn().j12_1){var g=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(f);v.i12(g),d=g}else d=m;var $=d,b=null==$||zn($)?$:St();if(_.k12(),Pn(p,b,r,48,0),t._v.s3a_1.f()>1){var w=r;w.f12(547886695),jn(w,"C(remember$composable):Composables.kt#9igjgp");var x,k=w,j=k.h12();if(j===Cn().j12_1){var C=Es;k.i12(C),x=C}else x=j;var z=x,S=null==z||zn(z)?z:St();w.k12();var q=S,O=On(r,-1089967542,!0,function(t,n){return function(n,e,o){var r=e;bn()&&$n(-1089967542,o,-1,"page.home.HomePageUi$composable........ (HomePage.kt:146)");var i=t._v.s3a_1,s=t._v.l3c(),a=t._v,u=r;u.f12(-838505973),jn(u,"C(remember$composable)P(1):Composables.kt#9igjgp");var c,l=u,h=u.g12(a),p=l.h12();if(h||p===Cn().j12_1){var f=function(t){return function(n){return t._v.k3c(n),kt()}}(t);l.i12(f),c=f}else c=p;var _=c,d=null==_||zn(_)?_:St();return u.k12(),Dr(i,s,d,r,0),bn()&&(xn(),kt()),kt()}}(t)),P=r;P.f12(-838505973),jn(P,"C(remember$composable)P(1):Composables.kt#9igjgp");var M,A=P,E=P.g12(O),I=A.h12();if(E||I===Cn().j12_1){var D=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(O);A.i12(D),M=D}else M=I;var T=M,B=null==T||zn(T)?T:St();P.k12(),Pn(q,B,r,48,0)}if(qt(t._v.o3c(),Lo())){var L=r;L.f12(547886695),jn(L,"C(remember$composable):Composables.kt#9igjgp");var N,F=L,R=F.h12();if(R===Cn().j12_1){var H=Is;F.i12(H),N=H}else N=R;var U=N,V=null==U||zn(U)?U:St();L.k12();var W=V,J=On(r,1874650163,!0,function(t,n){return function(n,e,o){var r=e;bn()&&$n(1874650163,o,-1,"page.home.HomePageUi$composable........ (HomePage.kt:162)");var i=t._v.e3c().o36_1,s=t._v,a=r;a.f12(-838505973),jn(a,"C(remember$composable)P(1):Composables.kt#9igjgp");var u,c=a,l=a.g12(s),h=c.h12();if(l||h===Cn().j12_1){var p=function(t){var n=function(){return t.m3c(),kt()};return n.callableName="onToggleTestNameDetectionClicked",n}(s);c.i12(p),u=p}else u=h;var f=u,_=null==f||zn(f)?f:St();return a.k12(),cs(i,_,r,0),bn()&&(xn(),kt()),kt()}}(t)),K=r;K.f12(-838505973),jn(K,"C(remember$composable)P(1):Composables.kt#9igjgp");var G,Y=K,X=K.g12(J),Z=Y.h12();if(X||Z===Cn().j12_1){var Q=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(J);Y.i12(Q),G=Q}else G=Z;var tt=G,nt=null==tt||zn(tt)?tt:St();K.k12(),Pn(W,nt,r,48,0)}if(!t._v.q3a_1.h()){var et=r;et.f12(547886695),jn(et,"C(remember$composable):Composables.kt#9igjgp");var ot,rt=et,it=rt.h12();if(it===Cn().j12_1){var st=Ds;rt.i12(st),ot=st}else ot=it;var at=ot,ut=null==at||zn(at)?at:St();et.k12();var ct=ut,lt=On(r,628742226,!0,function(t,n){return function(n,e,o){var r=e;bn()&&$n(628742226,o,-1,"page.home.HomePageUi$composable........ (HomePage.kt:175)");var i=t._v.q3a_1,s=t._v,a=r;a.f12(-838505973),jn(a,"C(remember$composable)P(1):Composables.kt#9igjgp");var u,c=a,l=a.g12(s),h=c.h12();if(l||h===Cn().j12_1){var p=function(t){return function(n){return t._v.n3c(n),kt()}}(t);c.i12(p),u=p}else u=h;var f=u,_=null==f||zn(f)?f:St();return a.k12(),ds(i,null,_,r,0,2),bn()&&(xn(),kt()),kt()}}(t)),ht=r;ht.f12(-838505973),jn(ht,"C(remember$composable)P(1):Composables.kt#9igjgp");var pt,ft=ht,_t=ht.g12(lt),dt=ft.h12();if(_t||dt===Cn().j12_1){var vt=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(lt);ft.i12(vt),pt=vt}else pt=dt;var yt=pt,mt=null==yt||zn(yt)?yt:St();ht.k12(),Pn(ct,mt,r,48,0)}return bn()&&(xn(),kt()),kt()}}(t)),_=r;_.f12(-838505973),jn(_,"C(remember$composable)P(1):Composables.kt#9igjgp");var d,v=_,y=_.g12(f),m=v.h12();if(y||m===Cn().j12_1){var g=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(f);v.i12(g),d=g}else d=m;var $=d,b=null==$||zn($)?$:St();return _.k12(),Pn(p,b,r,48,0),bn()&&(xn(),kt()),kt()}}(t)),s=r;s.f12(-838505973),jn(s,"C(remember$composable)P(1):Composables.kt#9igjgp");var a,u=s,c=s.g12(i),l=u.h12();if(c||l===Cn().j12_1){var h=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(i);u.i12(h),a=h}else a=l;var p=a,f=null==p||zn(p)?p:St();return s.k12(),Un(null,null,f,r,384,3),bn()&&(xn(),kt()),kt()}}(t)),j=s;j.f12(-838505973),jn(j,"C(remember$composable)P(1):Composables.kt#9igjgp");var C,z=j,S=j.g12(k),q=z.h12();if(S||q===Cn().j12_1){var O=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(k);z.i12(O),C=O}else C=q;var P=C,M=null==P||zn(P)?P:St();j.k12(),Pn(x,M,s,48,0),Wn(null,s,0,1);var A=s;A.f12(-838505973),jn(A,"C(remember$composable)P(1):Composables.kt#9igjgp");var E,I=A,D=A.g12(e),T=I.h12();if(D||T===Cn().j12_1){var B=Re(e,2);I.i12(B),E=B}else E=T;var L=E,F=null==L||zn(L)?L:St();A.k12();for(var R=F.c();R.d();){var H=R.e(),U=s;U.f12(547886695),jn(U,"C(remember$composable):Composables.kt#9igjgp");var V,W=U,J=W.h12();if(J===Cn().j12_1){var K=Ts;W.i12(K),V=K}else V=J;var G=V,Y=null==G||zn(G)?G:St();U.k12();var X=Y,Z=On(s,-2034949684,!0,Fs(H,t,o)),Q=s;Q.f12(-838505973),jn(Q,"C(remember$composable)P(1):Composables.kt#9igjgp");var tt,nt=Q,et=Q.g12(Z),ot=nt.h12();if(et||ot===Cn().j12_1){var rt=Rs(Z);nt.i12(rt),tt=rt}else tt=ot;var it=tt,st=null==it||zn(it)?it:St();Q.k12(),Pn(X,st,s,48,0)}return bn()&&(xn(),kt()),kt()}}(t,0,j,z)),T=r;T.f12(-838505973),jn(T,"C(remember$composable)P(1):Composables.kt#9igjgp");var B,L=T,F=T.g12(D),R=L.h12();if(F||R===Cn().j12_1){var H=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(D);L.i12(H),B=H}else B=R;var U=B,V=null==U||zn(U)?U:St();T.k12(),Pn(I,V,r,48,0),kt(),kt()}return bn()&&(xn(),kt()),kt()}}(a)),d=o;d.f12(-838505973),jn(d,"C(remember$composable)P(1):Composables.kt#9igjgp");var v,y,m=d,g=d.g12(_),$=m.h12();if(g||$===Cn().j12_1){var b=(y=_,function(t,n,e){return y.o1y(t,n,e)});m.i12(b),v=b}else v=$;var w=v,x=null==w||zn(w)?w:St();return d.k12(),Pn(f,x,o,48,0),bn()&&(xn(),kt()),kt()})),C=i;C.f12(-838505973),jn(C,"C(remember$composable)P(1):Composables.kt#9igjgp");var z,S=C,q=C.g12(j),O=S.h12();if(q||O===Cn().j12_1){var P=(s=j,function(t,n,e){return s.o1y(t,n,e)});S.i12(P),z=P}else z=O;var M=z,A=null==M||zn(M)?M:St();C.k12(),Pn(k,A,i,48,0),bn()&&xn()}var E=i.p1d();null===E||E.k1e(function(t,n,e){return function(o,r){return function(t,n,e,o,r){js(t._v,o,1|n,e)}(t,n,e,o),kt()}}(r,e,o))}function Cs(t){return t.x20(["container-fluid"]),kt()}function zs(t){return t.x20(["row"]),t.v20(Ss),kt()}function Ss(t){return Le(t,Ln(40)),Ne(t,Ln(40)),Fe(t,Ln(40)),kt()}function qs(t){return t.x20(["col-lg-4"]),kt()}function Os(t){return t.x20(["col-lg-8"]),kt()}function Ps(t){return t.x20(["row"]),kt()}function Ms(t){return t.x20(["row"]),kt()}function As(t){return t.x20(["col-md-2"]),kt()}function Es(t){return t.x20(["col-md-4"]),kt()}function Is(t){return t.x20(["col-md-2"]),kt()}function Ds(t){return t.x20(["col-md-4"]),kt()}function Ts(t){return t.x20(["row"]),kt()}function Bs(t){return function(n){return n.x20([t.f37_1]),kt()}}function Ls(t,n,e){return function(o,r,i){var s,a,u=r;return bn()&&$n(1979032493,i,-1,"page.home.HomePageUi$composable...... (HomePage.kt:205)"),dr(t._v.e3c().p36_1,n.x36_1,e,(s=t._v,(a=function(t){return s.p3c(t),kt()}).callableName="onDotClicked",a),u,576),bn()&&(xn(),kt()),kt()}}function Ns(t){return function(n,e,o){return t.o1y(n,e,o)}}function Fs(t,n,e){return function(o,r,i){var s=r;bn()&&$n(-2034949684,i,-1,"page.home.HomePageUi$composable..... (HomePage.kt:200)");for(var a=t.c();a.d();){var u=a.e(),c=Bs(u),l=On(s,1979032493,!0,Ls(n,e,u)),h=s;h.f12(-838505973),jn(h,"C(remember$composable)P(1):Composables.kt#9igjgp");var p,f=h,_=h.g12(l),d=f.h12();if(_||d===Cn().j12_1){var v=Ns(l);f.i12(v),p=v}else p=d;var y=p,m=null==y||zn(y)?y:St();h.k12(),Pn(c,m,s,48,0)}return bn()&&(xn(),kt()),kt()}}function Rs(t){return function(n,e,o){return t.o1y(n,e,o)}}function Hs(){F=this,this.t3c_1="Something went wrong!"}function Us(){return null==F&&new Hs,F}function Vs(t,n){return Te("savedBenchmarks",1,Qe,(function(t){return t.g3c()}),(function(t,n){return Vs(t,n)})),t.o3a_1.ky(n)}function Ws(t,n){return Te("currentFocusedGroup",1,Qe,(function(t){return t.l3c()}),(function(t,n){return Ws(t,n)})),t.r3a_1.ky(n)}function Js(t,n){return Te("chartsBundle",1,Qe,(function(t){return t.r3c()}),(function(t,n){return Js(t,n)})),t.t3a_1.ky(n)}function Ks(t,n){return Te("errorMsg",1,Qe,(function(t){return t.s3c()}),(function(t,n){return Ks(t,n)})),t.u3a_1.ky(n)}function Gs(t,n){return Te("isEditableTitleEnabled",1,Qe,(function(t){return t.q3c()}),(function(t,n){return Gs(t,n)})),t.v3a_1.ky(n)}function Ys(t,n){return Te("shouldSelectUnsaved",1,Qe,(function(t){return t.f3c()}),(function(t,n){return Ys(t,n)})),t.w3a_1.ky(n)}function Xs(t,n){return Te("selectedBlockNameOne",1,Qe,(function(t){return t.c3c()}),(function(t,n){return Xs(t,n)})),t.x3a_1.ky(n)}function Zs(t,n){return Te("selectedBlockNameTwo",1,Qe,(function(t){return t.d3c()}),(function(t,n){return Zs(t,n)})),t.y3a_1.ky(n)}function Qs(t,n){return Te("avgOfCount",1,Qe,(function(t){return t.h3c()}),(function(t,n){return Qs(t,n)})),t.a3b_1.ky(n)}function ta(t,n){return Te("inputType",1,Qe,(function(t){return t.o3c()}),(function(t,n){return ta(t,n)})),t.c3b_1.ky(n)}function na(t,n){return Te("unit",1,Qe,(function(t){return t.r28()}),(function(t,n){return na(t,n)})),t.d3b_1.ky(n)}function ea(t,n){return Te("bestAggSummary",1,Qe,(function(t){return t.v3b()}),(function(t,n){return ea(t,n)})),t.e3b_1.ky(n)}function oa(t,n){return Te("worstAggSummary",1,Qe,(function(t){return t.b3c()}),(function(t,n){return oa(t,n)})),t.f3b_1.ky(n)}function ra(t,n){return Te("form",1,Qe,(function(t){return t.e3c()}),(function(t,n){return ra(t,n)})),t.g3b_1.ky(n)}function ia(t){Vs(t,t.m3a_1.u3c())}function sa(t,n){for(var e=Et(n,["\n"],!1,0,6,null),o=Mt(),r=e.c();r.d();){var i=r.e();He(i,"PROCESS ENDED",!1)||He(i,"PROCESS STARTED",!1)||o.a(i)}var s,a=Pt(o,"\n",null,null,0,null,(s=t,function(t){var n,e,o=s.j3b_1.da(t,""),r=Lt(Ge(Tt(o)?o:St())),i=r,a=s.k3b_1.da(i,"");if(n=Lt(Ge(Tt(a)?a:St())),Yt(r=n,"System.out ",!1,2,null)){var u=Xt(r,"System.out ","",!1,4,null);r=Lt(Ge(Tt(u)?u:St())),kt()}var c=r,l=s.l3b_1.da(c,"");e=Lt(Ge(Tt(l)?l:St()));var h=Ye(r=e,"startup type is: cold",!1,2,null)?"startup type is: cold":Ye(r,"startup type is: warm",!1,2,null)?"startup type is: warm":Ye(r,"startup type is: hot",!1,2,null)?"startup type is: hot":r;return Lt(Ge(Tt(h)?h:St()))}),30,null);return en("QuickTag: HomeViewModel:filterOutAndroidJunkLog: '"+a+"'"),a}function aa(t){Xs(t,null),Zs(t,null),t.z3a_1.s7(),Js(t,null),t.b3b_1.s7(),ea(t,null),oa(t,null),Qs(t,-1),ca(t)}function ua(t,n){t.z3a_1.s7();var e=Jt(n.x36_1.u36_1.c3());t.z3a_1.x1x(e),e.f()>=2?(Xs(t,e.g(0)),Zs(t,e.g(1))):(Xs(t,null),Zs(t,null)),ca(t)}function ca(t){t.b3b_1.s7();var n,e=qt(t.o3c(),Bo()),o=t.r3c(),r=null==o?null:o.y36_1;if(null==r)n=null;else{for(var i=Mt(),s=r.c();s.d();){var a=s.e(),u=Ca().w3c(e,a,t.c3c(),t.d3c());null==u||(i.a(u),kt())}n=i}var c=n;t.b3b_1.x1x(null==c?We():c),function(t){for(var n,e=qt(t.o3c(),Bo()),o=Mt(),r=t.z3a_1.c();r.d();)for(var i=r.e(),s=t.z3a_1.c();s.d();){var a=s.e();if(i!==a){var u,c=t.r3c(),l=null==c?null:c.y36_1;if(null==l)u=null;else{for(var h=Mt(),p=l.c();p.d();){var f=p.e(),_=Ca().w3c(e,f,i,a);null==_||(h.a(_),kt())}u=h}if(null==u);else{for(var d=0,v=0,y=u.c();y.d();)for(var m=y.e().b3a_1.c();m.d();){var g=m.e();g.n39_1>0?v=v+Ue(g.n39_1)|0:g.n39_1<0&&(d=d-Ue(g.n39_1)|0)}o.a(new pa(i,a,d,v))}}}var $,b=o.c();if(b.d()){var w=b.e();if(b.d()){var x=w.y3b_1;do{var k=b.e(),j=k.y3b_1;Ve(x,j)<0&&(w=k,x=j)}while(b.d());n=w}else n=w}else n=null;ea(t,n);var C=o.c();if(C.d()){var z=C.e();if(C.d()){var S=z.z3b_1;do{var q=C.e(),O=q.z3b_1;Ve(S,O)<0&&(z=q,S=O)}while(C.d());$=z}else $=z}else $=null;oa(t,$)}(t)}function la(t,n){return function(){Ys(t,n);try{t.h3b_1.s7(),t.q3a_1.s7(),t.s3a_1.s7(),t.z3a_1.s7();var e=Io().m36(t.e3c(),t.l3c());if(null==e)return en("failed to parse form"),aa(t),Ks(t,""),kt();var o,r=e,i=r.l4(),s=r.m4(),a=r.w35();ta(t,i),t.h3b_1.k1(s),t.s3a_1.x1x(a),a.i(t.l3c())||(Io(),Ws(t,"All"));for(var u=Mt(),c=s.c();c.d();){for(var l=c.e().e36_1,h=Dt(It(l,10)),p=l.c();p.d();){for(var f,_=p.e().h35_1,d=Dt(_.f()),v=_.v().c();v.d();){var y;y=v.e().n2().f(),d.a(y)}f=d,h.a(f)}hn(u,h)}var m=un(u),g=null==(o=m.h()?null:m)?null:Je(o);Qs(t,null==g?-1:g);var $=i.t1_1;if(0===$){var b=function(t){for(var n,e=Wt(t),o=Nt(),r=e.e36_1.c();r.d();){var i=r.e();o.n(i.g35_1,i.i35_1)}n=o;var s=new Yo("📊",e.c36_1,n,"col-lg-12");return new Ko(Ro(t,!0),Ht(s))}(t.h3b_1);Js(t,b),ua(t,b),na(t,"")}else if(1===$){for(var w,x=t.q3a_1,k=t.h3b_1,j=Mt(),C=k.c();C.d();){var z=C.e().d36_1;null==z||(j.a(z),kt())}w=j,x.x1x(cn(w));var S,q=t.q3a_1;t:{for(var O=q.c();O.d();){var P=O.e();if(P===t.p3a_1){S=P;break t}}S=null}var M,A=S,E=null==A?yn(t.q3a_1):A;if(null!=E){for(var I=t.h3b_1,D=Mt(),T=I.c();T.d();){var B=T.e();B.d36_1==E&&D.a(B)}M=D}else M=t.h3b_1;var L=No(M);Js(t,L),ua(t,L),na(t,"ms")}Ks(t,""),kt()}catch(n){if(!(n instanceof Error))throw n;Ke(n);var N,F=n.message;null==F?(Us(),N="Something went wrong!"):N=F,Ks(t,N),aa(t),kt()}return kt()}}function ha(t,n){Us(),this.m3a_1=t,this.n3a_1=n;var e=We();this.o3a_1=$e(e,null,2,null),this.p3a_1=null,this.q3a_1=Xe();Io(),this.r3a_1=$e("All",null,2,null),this.s3a_1=Xe(),this.t3a_1=$e(null,null,2,null),this.u3a_1=$e("",null,2,null),this.v3a_1=$e(!1,null,2,null),this.w3a_1=$e(!1,null,2,null),this.x3a_1=$e(null,null,2,null),this.y3a_1=$e(null,null,2,null),this.z3a_1=Xe(),this.a3b_1=$e(-1,null,2,null),this.b3b_1=Xe(),this.c3b_1=$e(null,null,2,null),this.d3b_1=$e("",null,2,null),this.e3b_1=$e(null,null,2,null),this.f3b_1=$e(null,null,2,null);var o,r=this.n3a_1.x3c(),i=null==r?new Xo((null==U&&new ba,U).y3c_1,!1,!1):r;this.g3b_1=$e(i,null,2,null),ia(this),window.addEventListener("keydown",(o=this,function(t){return"Escape"===t.key&&(Io(),o.k3c("All"),kt()),kt()}));var s;s=Mt(),this.h3b_1=s,this.i3b_1=null;var a;a=Gt("\\d{4}-\\d{2}-\\d{2} \\d{2}:\\d{2}:\\d{2}\\.\\d{3}"),this.j3b_1=a;var u;u=Gt("\\d{2}:\\d{2}:\\d{2}\\.\\d{3}"),this.k3b_1=u;var c;c=Gt("^(I|D|E|W|V) "),this.l3b_1=c}function pa(t,n,e,o){this.w3b_1=t,this.x3b_1=n,this.y3b_1=e,this.z3b_1=o,this.a3c_1=0}function fa(){}function _a(){R=this,this.l3d_1="savedBenchmarks"}function da(){return null==R&&new _a,R}function va(){da(),this.m3d_1=0}function ya(){}function ma(){H=this,this.p3d_1="auto_form_input",this.q3d_1="is_test_name_detection_enabled",this.r3d_1="is_auto_group_enabled"}function ga(){return null==H&&new ma,H}function $a(){ga(),this.s3d_1=0}function ba(){U=this,this.y3c_1="- Before 1\n# first line will be treated as title of the block\n special chars will be stripped from the title\nHomeScrollBenchmark_scrollTest\nframeDurationCpuMs P50 40.5, P90 45.8, P95 60.4, P99 80.4\nframeOverrunMs P50 -5.9, P90 7.0, P95 20.1, P99 64.4\nTraces: Iteration 0 1 2 3 4\n\n## Before 2\n# line breaks are used to separate the block\nHomeScrollBenchmark_scrollTest\nframeDurationCpuMs P50 45.5, P90 43.8, P95 58.4, P99 78.4\nframeOverrunMs P50 -6.5, P90 5.4, P95 15.0, P99 60.3\nTraces: Iteration 0 1 2 3 4\n\nAfter 1\nyou can include whatever text you want anywhere you want\nHomeScrollBenchmark_scrollTest\nframeDurationCpuMs P50 13.6, P90 21.8, P95 27.5, P99 49.4\nthe order doesn't matter\nframeOverrunMs P50 -6.2, P90 7.3, P95 19.5, P99 61.7\nTraces: Iteration 0 1 2 3 4\n\n> After 2\nHomeScrollBenchmark_scrollTest\nframeDurationCpuMs P50 13.8, P90 21.9, P95 27.3, P99 53.4\nsee.. am some random text\nframeOverrunMs P50 -5.7, P90 7.4, P95 22.4, P99 63.2\nTraces: Iteration 0 1 2 3 4",this.z3c_1=0}function wa(t){return t.b2w_1=!0,kt()}function xa(){V=this,this.n3d_1=co(null,wa,1,null),this.o3d_1=8}function ka(){return null==V&&new xa,V}function ja(){W=this,this.v3c_1=0}function Ca(){return null==W&&new ja,W}return fo.prototype=Object.create(Error.prototype),fo.prototype.constructor=fo,_o.prototype=Object.create(fo.prototype),_o.prototype.constructor=_o,go.prototype=Object.create(Ot.prototype),go.prototype.constructor=go,bo.prototype=Object.create(Ot.prototype),bo.prototype.constructor=bo,ir.prototype=Object.create(Mn.prototype),ir.prototype.constructor=ir,fo.$metadata$=bt("InvalidDataException",void 0,void 0,void 0,void 0,Error.prototype),_o.$metadata$=bt("InvalidBenchmarkDataException",void 0,void 0,void 0,void 0,fo.prototype),vo.prototype.k35=function(){return this.g35_1},vo.prototype.l35=function(){return this.h35_1},vo.prototype.m35=function(){return this.i35_1},vo.prototype.toString=function(){return"BlockRow(title="+this.g35_1+", fullData="+this.h35_1+")"},vo.prototype.hashCode=function(){var t=Ct(this.g35_1);return J(t,31)+zt(this.h35_1)|0},vo.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof vo))return!1;var n=t instanceof vo?t:St();return this.g35_1===n.g35_1&&!!qt(this.h35_1,n.h35_1)},vo.$metadata$=bt("BlockRow"),go.prototype.l2=function(){return this.p35_1},go.$metadata$=bt("SupportedMetrics",void 0,void 0,void 0,void 0,Ot.prototype),bo.$metadata$=bt("InputType",void 0,void 0,void 0,void 0,Ot.prototype),wo.prototype.l4=function(){return this.s35_1},wo.prototype.m4=function(){return this.t35_1},wo.prototype.w35=function(){return this.u35_1},wo.prototype.toString=function(){return"ResultContainer(inputType="+this.s35_1+", benchmarkResults="+this.t35_1+", focusGroups="+this.u35_1+")"},wo.prototype.hashCode=function(){var t=this.s35_1.hashCode();return t=J(t,31)+zt(this.t35_1)|0,J(t,31)+zt(this.u35_1)|0},wo.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof wo))return!1;var n=t instanceof wo?t:St();return!!this.s35_1.equals(n.s35_1)&&!!qt(this.t35_1,n.t35_1)&&!!qt(this.u35_1,n.u35_1)},wo.$metadata$=bt("ResultContainer"),Eo.prototype.m36=function(t,n){for(var e=Et(t.n36_1,["\n"],!1,0,6,null),o=Pt(e,"\n",null,null,0,null,Mo,30,null),r=Qt(),i=tn("^\\s+",r).ca(o,0),s=Dt(It(i,10)),a=i.c();a.d();){var u,c=a.e();u=Lt(Bt(Tt(c)?c:St())),s.a(u)}for(var l=s,h=Mt(),p=l.c();p.d();){var f=p.e();!nn(f)&&h.a(f)}var _=h;if(en("parsing input..."),_.h())return null;if(function(t){var n=t.n36_1,e=yo(),o=an(e,"|","(",")",0,null,To,24,null);return!Gt(o).fa(n)}(t))return xo(this,_,n);en("parsing machine generated benchmark input...");for(var d=Mt(),v=_.c(),y=0;v.d();){var m=y;y=y+1|0;var g=v.e();en("block: '"+g+"'");for(var $=Et(g,["\n"],!1,0,6,null),b=Dt(It($,10)),w=$.c();w.d();){var x,k=w.e();x=Lt(Bt(Tt(k)?k:St())),b.a(x)}for(var j=b,C=null,z=null,S=Mt(),q=j.c();q.d();){var O=q.e();null==C&&So(this,O)&&(C=O),t.o36_1&&jo(this,O)&&(null!=z&&!S.h()&&(null==C&&(C="benchmark "+m+" "+z),d.a(new Do(C,z,S)),S.s7()),z=O);var P=Oo(O,this);if(en("QuickTag: BenchmarkResult:parse: metric name is "+P),null!=P){var M,A;t:{for(var E=S.c();E.d();){var I=E.e();if(I.g35_1===P){M=I;break t}}M=null}if(null!=M)throw new _o("Two "+P+" found in block "+(m+1|0)+". Expected only one");for(var D=qo(0,P,O),T=Dt(D.f()),B=D.v().c();B.d();){var L,N,F=B.e(),R=F.l2();N=F.n2(),L=on(R,Ht(N)),T.a(L)}A=T,S.a(new vo(P,Ut(A)))}}null==C&&(C="benchmark "+m),C=Co(this,C),!S.h()&&d.a(new Do(C,z,S))}return new wo(Lo(),d,rn("All"))},Eo.$metadata$=sn("Companion"),Do.prototype.k35=function(){return this.c36_1},Do.prototype.r36=function(){return this.d36_1},Do.prototype.s36=function(){return this.e36_1},Do.prototype.toString=function(){return"BenchmarkResult(title="+this.c36_1+", testName="+this.d36_1+", blockRows="+this.e36_1+")"},Do.prototype.hashCode=function(){var t=Ct(this.c36_1);return t=J(t,31)+(null==this.d36_1?0:Ct(this.d36_1))|0,J(t,31)+zt(this.e36_1)|0},Do.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof Do))return!1;var n=t instanceof Do?t:St();return this.c36_1===n.c36_1&&this.d36_1==n.d36_1&&!!qt(this.e36_1,n.e36_1)},Do.$metadata$=bt("BenchmarkResult"),Fo.prototype.w36=function(){return this.t36_1},Fo.prototype.toString=function(){return"GroupMap(autoGroupMap="+this.t36_1+", wordColorMap="+this.u36_1+")"},Fo.prototype.hashCode=function(){var t=zt(this.t36_1);return J(t,31)+zt(this.u36_1)|0},Fo.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof Fo))return!1;var n=t instanceof Fo?t:St();return!!qt(this.t36_1,n.t36_1)&&!!qt(this.u36_1,n.u36_1)},Fo.$metadata$=bt("GroupMap"),Vo.prototype.y35=function(t,n){var e,o=this.x35_1.el(n,0,2,null);if(null!=o){var r=Wt(o.ta());e=Xt(n,r,"",!1,4,null)}else e=n;var i=e,s=Uo(),a=vn(s.gl(i,0,2,null)),u=null==a?null:a.ta(),c=null==u?null:yn(u);if(null==c)return null;var l=c,h=mn(i,l,0,!1,6,null);return new Jo(i.substring(0,h),Zt(l))},Vo.$metadata$=sn("Companion"),Jo.prototype.toString=function(){return"TextNumberLine(text="+this.z35_1+", number="+this.a36_1+")"},Jo.prototype.hashCode=function(){var t=Ct(this.z35_1);return J(t,31)+gn(this.a36_1)|0},Jo.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof Jo))return!1;var n=t instanceof Jo?t:St();return this.z35_1===n.z35_1&&!!qt(this.a36_1,n.a36_1)},Jo.$metadata$=bt("TextNumberLine"),Ko.prototype.a37=function(){return this.x36_1},Ko.prototype.b37=function(){return this.y36_1},Ko.prototype.toString=function(){return"ChartsBundle(groupMap="+this.x36_1+", charts="+this.y36_1+")"},Ko.prototype.hashCode=function(){var t=this.x36_1.hashCode();return J(t,31)+zt(this.y36_1)|0},Ko.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof Ko))return!1;var n=t instanceof Ko?t:St();return!!this.x36_1.equals(n.x36_1)&&!!qt(this.y36_1,n.y36_1)},Ko.$metadata$=bt("ChartsBundle"),Yo.prototype.h37=function(){return this.c37_1},Yo.prototype.i37=function(){return this.d37_1},Yo.prototype.j37=function(){return this.e37_1},Yo.prototype.k37=function(){return this.f37_1},Yo.prototype.toString=function(){return"Chart(emoji="+this.c37_1+", label="+this.d37_1+", dataSets="+this.e37_1+", bsClass="+this.f37_1+")"},Yo.prototype.hashCode=function(){var t=Ct(this.c37_1);return t=J(t,31)+Ct(this.d37_1)|0,t=J(t,31)+zt(this.e37_1)|0,J(t,31)+Ct(this.f37_1)|0},Yo.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof Yo))return!1;var n=t instanceof Yo?t:St();return this.c37_1===n.c37_1&&this.d37_1===n.d37_1&&!!qt(this.e37_1,n.e37_1)&&this.f37_1===n.f37_1},Yo.$metadata$=bt("Chart"),Xo.prototype.l37=function(){return this.n36_1},Xo.prototype.m37=function(){return this.o36_1},Xo.prototype.n37=function(){return this.p36_1},Xo.prototype.o37=function(t,n,e){return new Xo(t,n,e)},Xo.prototype.p37=function(t,n,e,o,r){return 0!=(1&o)&&(t=this.n36_1),0!=(2&o)&&(n=this.o36_1),0!=(4&o)&&(e=this.p36_1),this.o37(t,n,e)},Xo.prototype.toString=function(){return"FormData(data="+this.n36_1+", isTestNameDetectionEnabled="+this.o36_1+", isAutoGroupEnabled="+this.p36_1+")"},Xo.prototype.hashCode=function(){var t=Ct(this.n36_1);return t=J(t,31)+(0|this.o36_1)|0,J(t,31)+(0|this.p36_1)|0},Xo.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof Xo))return!1;var n=t instanceof Xo?t:St();return this.n36_1===n.n36_1&&this.o36_1===n.o36_1&&this.p36_1===n.p36_1},Xo.$metadata$=bt("FormData"),Zo.prototype.q37=function(){return"line"},Zo.$metadata$=sn("Companion"),er.prototype.u37=function(){return this.s37_1},er.prototype.v37=function(){return this.t37_1},er.$metadata$=sn("ComposableSingletons$AutoFormUiKt"),ir.prototype.q1j=function(t,n){var e=this.r1j(t,n);return e.l7_1=kt(),e.m7_1=null,e.q7()},ir.prototype.r7=function(t,n){return this.q1j(null!=t&&En(t,An)?t:St(),n)},ir.prototype.q7=function(){for(this.l7_1;;)try{var t=this.j7_1;if(0===t)return this.k7_1=1,this.e38_1(this.f38_1),kt();if(1===t)throw this.m7_1}catch(t){throw t}},ir.prototype.r1j=function(t,n){var e=new ir(this.e38_1,this.f38_1,n);return e.g38_1=t,e},ir.$metadata$=bt("FormUi$composable$slambda",void 0,void 0,void 0,[1],Mn.prototype),lr.prototype.i38=function(){return this.h38_1},lr.$metadata$=sn("ComposableSingletons$AutoGroupToggleKt"),mr.prototype.ks=function(){this.j38_1.destroy()},mr.$metadata$=bt(void 0,[Qn]),Cr.$metadata$=sn("ComposableSingletons$EditableTitleKt"),Ir.prototype.i38=function(){return this.n38_1},Ir.$metadata$=sn("ComposableSingletons$FocusGroupsKt"),Kr.$metadata$=sn("ComposableSingletons$HeadingKt"),Zr.$metadata$=sn("Companion"),Qr.prototype.u2c=function(){return this.r38_1},Qr.prototype.o2m=function(){return[_e(),_e()]},Qr.prototype.w2c=function(t){var n=this.r38_1,e=!0,o=0,r=0,i=null,s=null,a=t.t2f(n);if(a.h2g())i=a.d2g(n,0),r|=1,s=a.d2g(n,1),r|=2;else for(;e;)switch(o=a.i2g(n)){case-1:e=!1;break;case 0:i=a.d2g(n,0),r|=1;break;case 1:s=a.d2g(n,1),r|=2;break;default:throw de(o)}return a.u2f(n),ni(r,i,s)},Qr.prototype.t38=function(t,n){var e=this.r38_1,o=t.t2f(e);o.f2h(e,0,n.u38_1),o.f2h(e,1,n.v38_1),o.u2f(e)},Qr.prototype.v2c=function(t,n){return this.t38(t,n instanceof ei?n:St())},Qr.$metadata$=sn("$serializer",[ye]),ei.prototype.l2=function(){return this.u38_1},ei.prototype.toString=function(){return"SavedBenchmarkNode(key="+this.u38_1+", value="+this.v38_1+")"},ei.prototype.hashCode=function(){var t=Ct(this.u38_1);return J(t,31)+Ct(this.v38_1)|0},ei.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof ei))return!1;var n=t instanceof ei?t:St();return this.u38_1===n.u38_1&&this.v38_1===n.v38_1},ei.$metadata$=bt("SavedBenchmarkNode",void 0,void 0,{0:ti}),oi.$metadata$=sn("Companion"),ri.prototype.u2c=function(){return this.x38_1},ri.prototype.o2m=function(){return[new ge(ti())]},ri.prototype.w2c=function(t){var n=this.x38_1,e=!0,o=0,r=0,i=null,s=t.t2f(n);if(s.h2g())i=s.f2g(n,0,new ge(ti()),i),r|=1;else for(;e;)switch(o=s.i2g(n)){case-1:e=!1;break;case 0:i=s.f2g(n,0,new ge(ti()),i),r|=1;break;default:throw de(o)}return s.u2f(n),si(r,i)},ri.prototype.z38=function(t,n){var e=this.x38_1,o=t.t2f(e);o.h2h(e,0,new ge(ti()),n.a39_1),o.u2f(e)},ri.prototype.v2c=function(t,n){return this.z38(t,n instanceof ai?n:St())},ri.$metadata$=sn("$serializer",[ye]),ai.prototype.toString=function(){return"SavedBenchmarks(items="+this.a39_1+")"},ai.prototype.hashCode=function(){return zt(this.a39_1)},ai.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof ai))return!1;var n=t instanceof ai?t:St();return!!qt(this.a39_1,n.a39_1)},ai.$metadata$=bt("SavedBenchmarks",void 0,void 0,{0:ii}),fi.prototype.u37=function(){return this.d39_1},fi.prototype.v37=function(){return this.e39_1},fi.prototype.g39=function(){return this.f39_1},fi.$metadata$=sn("ComposableSingletons$SavedBenchmarksDropDownKt"),zi.prototype.s39=function(){return this.h39_1},zi.prototype.h37=function(){return this.i39_1},zi.prototype.t39=function(){return this.j39_1},zi.prototype.i37=function(){return this.k39_1},zi.prototype.u39=function(){return this.l39_1},zi.prototype.v39=function(){return this.m39_1},zi.prototype.w39=function(){return this.n39_1},zi.prototype.x39=function(){return this.o39_1},zi.prototype.y39=function(){return this.p39_1},zi.prototype.z39=function(){return this.q39_1},zi.$metadata$=bt("SummaryNode"),Si.prototype.m1n=function(){return this.b3a_1},Si.prototype.toString=function(){return"Summary(title="+this.a3a_1+", nodes="+this.b3a_1+")"},Si.prototype.hashCode=function(){var t=Ct(this.a3a_1);return J(t,31)+zt(this.b3a_1)|0},Si.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof Si))return!1;var n=t instanceof Si?t:St();return this.a3a_1===n.a3a_1&&!!qt(this.b3a_1,n.b3a_1)},Si.$metadata$=bt("Summary"),Oi.prototype.v1n=function(){var t=qi(this).cloneNode();return t instanceof Element?t:St()},Oi.$metadata$=bt("ElementBuilderImplementation",[Se]),Ei.prototype.v37=function(){return this.h3a_1},Ei.$metadata$=sn("ComposableSingletons$SummaryKt"),us.prototype.i38=function(){return this.i3a_1},us.$metadata$=sn("ComposableSingletons$TestNameDetectionToggleKt"),_s.prototype.i38=function(){return this.j3a_1},_s.$metadata$=sn("ComposableSingletons$TestNamesKt"),ws.$metadata$=sn("ComposableSingletons$MainKt"),ks.prototype.i38=function(){return this.l3a_1},ks.$metadata$=sn("ComposableSingletons$HomePageKt"),Hs.$metadata$=sn("Companion"),ha.prototype.g3c=function(){return Te("savedBenchmarks",1,Qe,(function(t){return t.g3c()}),(function(t,n){return Vs(t,n)})),this.o3a_1.n2()},ha.prototype.a3d=function(){return this.q3a_1},ha.prototype.l3c=function(){return Te("currentFocusedGroup",1,Qe,(function(t){return t.l3c()}),(function(t,n){return Ws(t,n)})),this.r3a_1.n2()},ha.prototype.b3d=function(){return this.s3a_1},ha.prototype.r3c=function(){return Te("chartsBundle",1,Qe,(function(t){return t.r3c()}),(function(t,n){return Js(t,n)})),this.t3a_1.n2()},ha.prototype.s3c=function(){return Te("errorMsg",1,Qe,(function(t){return t.s3c()}),(function(t,n){return Ks(t,n)})),this.u3a_1.n2()},ha.prototype.q3c=function(){return Te("isEditableTitleEnabled",1,Qe,(function(t){return t.q3c()}),(function(t,n){return Gs(t,n)})),this.v3a_1.n2()},ha.prototype.f3c=function(){return Te("shouldSelectUnsaved",1,Qe,(function(t){return t.f3c()}),(function(t,n){return Ys(t,n)})),this.w3a_1.n2()},ha.prototype.c3c=function(){return Te("selectedBlockNameOne",1,Qe,(function(t){return t.c3c()}),(function(t,n){return Xs(t,n)})),this.x3a_1.n2()},ha.prototype.d3c=function(){return Te("selectedBlockNameTwo",1,Qe,(function(t){return t.d3c()}),(function(t,n){return Zs(t,n)})),this.y3a_1.n2()},ha.prototype.c3d=function(){return this.z3a_1},ha.prototype.h3c=function(){return Te("avgOfCount",1,Qe,(function(t){return t.h3c()}),(function(t,n){return Qs(t,n)})),this.a3b_1.n2()},ha.prototype.d3d=function(){return this.b3b_1},ha.prototype.o3c=function(){return Te("inputType",1,Qe,(function(t){return t.o3c()}),(function(t,n){return ta(t,n)})),this.c3b_1.n2()},ha.prototype.r28=function(){return Te("unit",1,Qe,(function(t){return t.r28()}),(function(t,n){return na(t,n)})),this.d3b_1.n2()},ha.prototype.v3b=function(){return Te("bestAggSummary",1,Qe,(function(t){return t.v3b()}),(function(t,n){return ea(t,n)})),this.e3b_1.n2()},ha.prototype.b3c=function(){return Te("worstAggSummary",1,Qe,(function(t){return t.b3c()}),(function(t,n){return oa(t,n)})),this.f3b_1.n2()},ha.prototype.e3c=function(){return Te("form",1,Qe,(function(t){return t.e3c()}),(function(t,n){return ra(t,n)})),this.g3b_1.n2()},ha.prototype.e3d=function(t,n){var e,o=this.i3b_1;null==o||(clearTimeout(o),kt()),this.i3b_1=setTimeout((e=t,function(){return e(),kt()}),n)},ha.prototype.f3d=function(t,n){var e=sa(this,t.n36_1);ra(this,t.p37(e,!1,!1,6,null)),this.n3a_1.g3d(this.e3c()),this.e3d(la(this,n),300)},ha.prototype.m3b=function(t,n,e,o){return 0!=(2&e)&&(n=!0),this.f3d(t,n)},ha.prototype.n3c=function(t){try{var n;if(this.p3a_1=t,null!=this.p3a_1){for(var e=this.h3b_1,o=Mt(),r=e.c();r.d();){var i=r.e();i.d36_1==this.p3a_1&&o.a(i)}n=o}else n=this.h3b_1;Js(this,No(n)),ca(this),Ks(this,"")}catch(t){if(!(t instanceof Error))throw t;this.b3b_1.s7(),Ke(t);var s,a=t.message;null==a?(Us(),s="Something went wrong!"):s=a,Ks(this,s)}},ha.prototype.k3c=function(t){Ws(this,t);var n=this.e3c();this.m3b(n,!1,2,null)},ha.prototype.i3c=function(){Gs(this,!0)},ha.prototype.j3c=function(){var t=this.e3c().p37(null,!1,!this.e3c().p36_1,3,null);this.m3b(t,!1,2,null)},ha.prototype.m3c=function(){var t=this.e3c(),n=!this.e3c().o36_1,e=t.p37(null,n,!1,5,null);this.m3b(e,!1,2,null)},ha.prototype.n3b=function(t){var n,e=window.prompt("Name: ");if(null==e||nn(e))return kt();t:{for(var o=this.g3c().c();o.d();){var r=o.e();if(r.u38_1===e){n=r;break t}}n=null}if(null!=n)return window.alert("Bruhh.. "+e+" exists! Try something else"),kt();var i=Ze(this.g3c());i.zf(0,new ei(e,t.n36_1));var s=i;this.m3a_1.h3d(s),Ys(this,!1),ia(this)},ha.prototype.p3b=function(t){var n=this.e3c().p37(t.v38_1,!1,!1,6,null);this.f3d(n,!1)},ha.prototype.q3b=function(t){window.confirm("Do you want to delete `"+t.u38_1+"` ?")&&(this.m3a_1.i3d(t),Ys(this,!0),ia(this))},ha.prototype.o3b=function(t){if(Ys(this,t===ui()),this.f3c()){var n=this.n3a_1.x3c(),e=null==n?this.e3c():n;this.f3d(e,!1)}},ha.prototype.t3b=function(t){Xs(this,t),ca(this)},ha.prototype.u3b=function(t){Zs(this,t),ca(this)},ha.prototype.r3b=function(){var t=this.v3b();Xs(this,null==t?null:t.w3b_1);var n=this.v3b();Zs(this,null==n?null:n.x3b_1),ca(this)},ha.prototype.s3b=function(){var t=this.b3c();Xs(this,null==t?null:t.w3b_1);var n=this.b3c();Zs(this,null==n?null:n.x3b_1),ca(this)},ha.prototype.p3c=function(t){this.s3a_1.m3(t)&&this.k3c(t)},ha.$metadata$=bt("HomeViewModel"),pa.prototype.j3d=function(){return this.y3b_1},pa.prototype.k3d=function(){return this.z3b_1},pa.prototype.toString=function(){return"AggSummary(blockOneName="+this.w3b_1+", blockTwoName="+this.x3b_1+", sumOfGreen="+this.y3b_1+", sumOfRed="+this.z3b_1+")"},pa.prototype.hashCode=function(){var t=Ct(this.w3b_1);return t=J(t,31)+Ct(this.x3b_1)|0,t=J(t,31)+this.y3b_1|0,J(t,31)+this.z3b_1|0},pa.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof pa))return!1;var n=t instanceof pa?t:St();return this.w3b_1===n.w3b_1&&this.x3b_1===n.x3b_1&&this.y3b_1===n.y3b_1&&this.z3b_1===n.z3b_1},pa.$metadata$=bt("AggSummary"),fa.$metadata$=to("BenchmarkRepo"),_a.$metadata$=sn("Companion"),va.prototype.u3c=function(){var t=window.localStorage;da();var n,e=t.getItem("savedBenchmarks");if(null==e)n=new ai(We());else{var o;en("JSON is '"+e+"'");try{var r,i=ka().n3d_1,s=i.o2d(),a=ro(s,oo(no(ai),eo([]),!1));r=En(a,io)?a:St(),o=i.n2d(r,e)}catch(t){var u;if(!(t instanceof so))throw t;Ke(t),u=We(),this.h3d(u),o=new ai(We())}n=o}return Jt(n.a39_1)},va.prototype.h3d=function(t){var n,e=ka().n3d_1,o=new ai(t),r=e.o2d(),i=ro(r,oo(no(ai),eo([]),!1));n=En(i,io)?i:St();var s=e.m2d(n,o),a=window.localStorage;da(),a.setItem("savedBenchmarks",s)},va.prototype.i3d=function(t){var n,e=Ze(this.u3c());ao(e,(n=t,function(t){return t.u38_1===n.u38_1}));var o=e;this.h3d(o)},va.$metadata$=bt("BenchmarkRepoImpl",[fa]),ya.$metadata$=to("FormRepo"),ma.$metadata$=sn("Companion"),$a.prototype.g3d=function(t){var n=window.localStorage;ga(),n.setItem("auto_form_input",t.n36_1),ga(),n.setItem("is_test_name_detection_enabled",t.o36_1.toString()),ga(),n.setItem("is_auto_group_enabled",t.p36_1.toString())},$a.prototype.x3c=function(){var t=window.localStorage;ga();var n=t.getItem("auto_form_input");if(null==n)return null;var e=n;ga();var o=uo(t.getItem("is_test_name_detection_enabled"));return ga(),new Xo(e,o,uo(t.getItem("is_auto_group_enabled")))},$a.$metadata$=bt("FormRepoImpl",[ya]),ba.$metadata$=sn("DefaultValues"),xa.$metadata$=sn("JsonUtils"),ja.prototype.w3c=function(t,n,e,o){if(null==e||null==o)return en("blank block name detected. skipping summary"),null;var r=Nt(),i=lo([e,o]);en("words : "+i);for(var s=i.c();s.d();){for(var a=s.e(),u=n.e37_1,c=Nt(),l=u.v().c();l.d();){var h=l.e(),p=h.l2();Yt(p,a,!1,2,null)&&c.n(h.l2(),h.n2())}for(var f=c.d3(),_=Dt(It(f,10)),d=f.c();d.d();){var v,y=d.e();v=ho(y.d3()),_.a(v)}var m=_,g=Mt(),$=po(n.e37_1.d3()).f(),b=0;if(b<$)do{b=b+1|0,g.a(0)}while(b<$);for(var w=g,x=m.c();x.d();){var k=x.e(),j=0,C=w.f()-1|0;if(j<=C)do{var z=j;j=j+1|0,w.p4(z,w.g(z)+k[z])}while(j<=C)}var S=0,q=w.f()-1|0;if(S<=q)do{var O=S;S=S+1|0,w.p4(O,w.g(O)/m.f())}while(S<=q);var P=w;r.n(a,P)}for(var M=Dt(r.f()),A=r.v().c();A.d();){var E,I=A.e();E=Jt(I.n2()),M.a(E)}en("combinedMap : "+M);var D=Mt(),T=Jt(po(n.e37_1.d3()).c3());en("segments: "+T);var B,L=T.f(),N=0;if(N after: '"+V+"'");var G,Y=""+(V-K).toFixed(2),X=Zt(Y),Z=""+((K-V)/K*100).toFixed(2),Q=Zt(Z),tt=Math.abs(Q),nt=X>0?"worse":"better",et=X>0?"+":"",ot=X>0?"❌":"✅",rt=i.g(1),it=""+V.toFixed(2),st=Zt(it),at=""+K.toFixed(2);G=Zt(at),D.a(new zi(t,ot,R,rt,tt,nt,X,et,st,G))}while(N>>0,o=arguments[1],r=o>>0,i=r<0?Math.max(e+r,0):Math.min(r,e),s=arguments[2],a=void 0===s?e:s>>0,u=a<0?Math.max(e+a,0):Math.min(a,e);i>>0;return 0===n?32:31-(r(n)/i|0)|0})),void 0===String.prototype.startsWith&&Object.defineProperty(String.prototype,"startsWith",{value:function(t,n){return n=n||0,this.lastIndexOf(t,n)===n}}),void 0===Math.imul&&(Math.imul=function(t,n){return(4294901760&t)*(65535&n)+(65535&t)*(0|n)|0}),void 0===(o="function"==typeof(e=function(t){"use strict";var n,e,o,r,i,s,a,u,c,l,h,p,f,_,d,v,y,m,g,$,b,w,x,k,j,C,z,S,q,O,P,M,A,E,I,D,T,B,L,N,F,R,H,U,V,W,J,K,G,Y,X,Z,Q,tt,nt,et,ot,rt,it,st,at,ut,ct,lt,ht,pt,ft,_t,dt,vt,yt,mt,gt,$t,bt,wt,xt,kt,jt,Ct,zt,St,qt,Ot,Pt,Mt,At,Et,It=Math.imul,Dt=Math.clz32,Tt=ArrayBuffer.isView;function Bt(t){return t===Qe()?this:t.f8(this,Ye)}function Lt(t){return Nl(this.l2(),t)?Th(this,Ge)?this:Jl():null}function Nt(t,n){return n(t,this)}function Ft(t){return Nl(this.l2(),t)?Qe():this}function Rt(t,n){if(null==n){var e=0,o=t.length-1|0;if(e<=o)do{var r=e;if(e=e+1|0,null==t[r])return r}while(e<=o)}else{var i=0,s=t.length-1|0;if(i<=s)do{var a=i;if(i=i+1|0,Nl(n,t[a]))return a}while(i<=s)}return-1}function Ht(t,n){if(null==n){var e=t.length-1|0;if(0<=e)do{var o=e;if(e=e+-1|0,null==t[o])return o}while(0<=e)}else{var r=t.length-1|0;if(0<=r)do{var i=r;if(r=r+-1|0,Nl(n,t[i]))return i}while(0<=r)}return-1}function Ut(t,n,e,o,r,i,s){return function(t,n,e,o,r,i,s,a){n.b(o);var u=0,c=t,l=0,h=c.length;t:for(;l1&&n.b(e),!(i<0||u<=i))break t;To(n,p,a)}return i>=0&&u>i&&n.b(s),n.b(r),n}(t,rc(),n,e,o,r,i,s).toString()}function Vt(t,n,e,o,r,i,s,a,u){return 0!=(1&a)&&(n=", "),0!=(2&a)&&(e=""),0!=(4&a)&&(o=""),0!=(8&a)&&(r=-1),0!=(16&a)&&(i="..."),0!=(32&a)&&(s=null),Ut(t,n,e,o,r,i,s)}function Wt(t){return t.length-1|0}function Jt(t,n){for(var e=t,o=0,r=e.length;o=0}function Gt(t,n){return function(t,n){var e=0,o=t.length-1|0;if(e<=o)do{var r=e;if(e=e+1|0,n===t[r])return r}while(e<=o);return-1}(t,n)>=0}function Yt(t,n){return function(t,n){var e=0,o=t.length-1|0;if(e<=o)do{var r=e;if(e=e+1|0,n===t[r])return r}while(e<=o);return-1}(t,n)>=0}function Xt(t,n){return function(t,n){var e=0,o=t.length-1|0;if(e<=o)do{var r=e;if(e=e+1|0,n===t[r])return r}while(e<=o);return-1}(t,n)>=0}function Zt(t){if(Th(t,hl)){var n;switch(t.f()){case 0:n=Kn();break;case 1:n=Js(Th(t,el)?t.g(0):t.c().e());break;default:n=Qt(t)}return n}return Yn(rn(t))}function Qt(t){return da(t)}function tn(t){if(t.h())throw Rp("List is empty.");return t.g(0)}function nn(t,n){return Th(t,hl)?t.i(n):function(t,n){if(Th(t,el))return t.j(n);for(var e=0,o=t.c();o.d();){var r=o.e();if(Ys(e),Nl(n,r))return e;e=e+1|0}return-1}(t,n)>=0}function en(t,n,e,o,r,i,s,a,u){return 0!=(1&a)&&(n=", "),0!=(2&a)&&(e=""),0!=(4&a)&&(o=""),0!=(8&a)&&(r=-1),0!=(16&a)&&(i="..."),0!=(32&a)&&(s=null),function(t,n,e,o,r,i,s){return sn(t,rc(),n,e,o,r,i,s).toString()}(t,n,e,o,r,i,s)}function on(t){if(Th(t,hl)){var n;switch(t.f()){case 0:n=Ee();break;case 1:n=Ws(Th(t,el)?t.g(0):t.c().e());break;default:n=an(t,Za(t.f()))}return n}return function(t){switch(t.f()){case 0:return Ee();case 1:return Ws(t.c().e());default:return t}}(an(t,Ya()))}function rn(t){return Th(t,hl)?Qt(t):an(t,fa())}function sn(t,n,e,o,r,i,s,a){n.b(o);var u=0,c=t.c();t:for(;c.d();){var l=c.e();if((u=u+1|0)>1&&n.b(e),!(i<0||u<=i))break t;To(n,l,a)}return i>=0&&u>i&&n.b(s),n.b(r),n}function an(t,n){for(var e=t.c();e.d();){var o=e.e();n.a(o)}return n}function un(t){if(Th(t,el))return function(t){var n;switch(t.f()){case 0:throw Rp("List is empty.");case 1:n=t.g(0);break;default:throw Mp("List has more than one element.")}return n}(t);var n=t.c();if(!n.d())throw Rp("Collection is empty.");var e=n.e();if(n.d())throw Mp("Collection has more than one element.");return e}function cn(t){this.s_1=t}function ln(t){this.u_1=t}function hn(t){var n=Xc(t).toUpperCase();if(n.length>1){var e;if(Nl(new tl(t),new tl(329)))e=n;else{var o=Ol(n,0),r=n.substring(1).toLowerCase();e=Xc(o)+r}return e}return Xc(function(t){return function(t){var n=Yc(t);return 452<=n&&n<=460||497<=n&&n<=499?zh(It(3,(n+1|0)/3|0)):4304<=n&&n<=4346||4349<=n&&n<=4351?t:sc(t)}(t)}(t))}function pn(t,n){return n<=Bs().x_1?wo().w_1:qh(t,n-1|0)}function fn(t,n,e){if(n.d1(e)>0)throw Mp("Cannot coerce value to an empty range: maximum "+Ll(e)+" is less than minimum "+Ll(n)+".");return t.d1(n)<0?n:t.d1(e)>0?e:t}function _n(t,n){return qo().e1(t,n,-1)}function dn(t,n){return t>n?n:t}function vn(t,n){return t=0))throw Mp(Ll("Requested element count "+n+" is less than zero."));return 0===n?Me():Th(t,Se)?t.i1(n):new Oe(t,n)}function gn(t){return Yn(function(t){return function(t,n){for(var e=t.c();e.d();){var o=e.e();n.a(o)}return n}(t,fa())}(t))}function $n(t){this.j1_1=t}function bn(t,n){if(!(n>=0))throw Mp(Ll("Requested character count "+n+" is less than zero."));return function(t,n){if(!(n>=0))throw Mp(Ll("Requested character count "+n+" is less than zero."));var e=dn(n,t.length);return t.substring(0,e)}(t,vn(t.length-n|0,0))}function wn(t,n){if(!(n>=0))throw Mp(Ll("Requested character count "+n+" is less than zero."));var e=dn(n,t.length);return t.substring(e)}function xn(){Hl(this,xn)}function kn(){}function jn(){this.p1_1=qn(),this.q1_1=null}function Cn(){if(i)return Es();i=!0,n=new zn("Ready",0),e=new zn("NotReady",1),o=new zn("Done",2),r=new zn("Failed",3)}function zn(t,n){_l.call(this,t,n)}function Sn(){return Cn(),n}function qn(){return Cn(),e}function On(){return Cn(),r}function Pn(t){this.z1_1=t,this.y1_1=0}function Mn(t,n){this.c2_1=t,Pn.call(this,t),En().d2(n,this.c2_1.f()),this.y1_1=n}function An(){s=this}function En(){return null==s&&new An,s}function In(){En(),kn.call(this)}function Dn(t){this.k2_1=t}function Tn(t){this.m2_1=t}function Bn(t,n){return n===t?"(this Map)":dl(n)}function Ln(t,n){var e;t:{for(var o=t.v().c();o.d();){var r=o.e();if(Nl(r.l2(),n)){e=r;break t}}e=null}return e}function Nn(){a=this}function Fn(){return null==a&&new Nn,a}function Rn(t){this.r2_1=t,Jn.call(this)}function Hn(t){this.x2_1=t,kn.call(this)}function Un(){Fn(),this.t2_1=null,this.u2_1=null}function Vn(){u=this}function Wn(){return null==u&&new Vn,u}function Jn(){Wn(),kn.call(this)}function Kn(){return Qn()}function Gn(t){return 0===t.length?fa():da(new te(t,!0))}function Yn(t){switch(t.f()){case 0:return Kn();case 1:return Js(t.g(0));default:return t}}function Xn(t){return t.f()-1|0}function Zn(){c=this,this.g3_1=new Zl(-1478467534,-1720727600)}function Qn(){return null==c&&new Zn,c}function te(t,n){this.k3_1=t,this.l3_1=n}function ne(){l=this}function ee(){return null==l&&new ne,l}function oe(t,n){this.o3_1=t,this.p3_1=n}function re(t,n){return Th(t,hl)?t.f():n}function ie(t){this.r3_1=t}function se(t){this.s3_1=t}function ae(t){this.t3_1=t,this.u3_1=0}function ue(){}function ce(){var t=(null==h&&new le,h);return Th(t,cl)?t:Jl()}function le(){h=this,this.g4_1=new Zl(-888910638,1920087921)}function he(t,n){return function(t,n){for(var e=n.c();e.d();){var o=e.e(),r=o.l4(),i=o.m4();t.n(r,i)}}(n,t),n}function pe(t,n){for(var e=n,o=0,r=e.length;o=0))throw Mp(Ll("count must be non-negative, but was "+this.p5_1+"."))}function Pe(){p=this}function Me(){return null==p&&new Pe,p}function Ae(t){this.q5_1=t}function Ee(){return De()}function Ie(){f=this,this.r5_1=new Zl(1993859828,793161749)}function De(){return null==f&&new Ie,f}function Te(t){return function(t,n){var e;return e=yl(Array(t),null),Le.call(n,e,0),n}(t,Object.create(Le.prototype))}function Be(t){this.w5_1=t,jn.call(this),this.u5_1=t.a6_1,this.v5_1=t.z5_1}function Le(t,n){if(In.call(this),this.x5_1=t,!(n>=0))throw Mp(Ll("ring buffer filled size should not be negative but it is "+n));if(!(n<=this.x5_1.length))throw Mp(Ll("ring buffer filled size: "+n+" cannot be larger than the buffer size: "+this.x5_1.length));this.y5_1=this.x5_1.length,this.z5_1=0,this.a6_1=n}function Ne(t,n,e,o,r,i){this.p6_1=t,this.q6_1=n,this.r6_1=e,this.s6_1=o,this.t6_1=r,gp.call(this,i)}function Fe(){var t=(null==_&&new Re,_);return Th(t,Vs)?t:Jl()}function Re(){_=this}function He(t){this.w7_1=t}function Ue(){}function Ve(){d=this}function We(){return null==d&&new Ve,d}function Je(){}function Ke(){}function Ge(){}function Ye(t,n){var e,o=t.e8(n.l2());if(o===Qe())e=n;else{var r,i=o.z7(We());if(null==i)r=new oo(o,n);else{var s=o.e8(We());r=s===Qe()?new oo(n,i):new oo(new oo(s,n),i)}e=r}return e}function Xe(){}function Ze(){v=this,this.h8_1=new Zl(0,0)}function Qe(){return null==v&&new Ze,v}function to(t){for(var n=t,e=2;;){var o=n.i8_1,r=o instanceof oo?o:null;if(null==r)return e;n=r,e=e+1|0}}function no(t,n){return Nl(t.z7(n.l2()),n)}function eo(t,n){return 0===Ml(t)?Ll(n):t+", "+n}function oo(t,n){this.i8_1=t,this.j8_1=n}function ro(t,n){this.a8_1=n;var e;e=t instanceof ro?t.b8_1:t,this.b8_1=e}function io(t){this.k8_1=t}function so(){return ao(),y}function ao(){if($)return Es();$=!0,y=new uo("COROUTINE_SUSPENDED",0),m=new uo("UNDECIDED",1),g=new uo("RESUMED",2)}function uo(t,n){_l.call(this,t,n)}function co(){return ao(),m}function lo(){return ao(),g}function ho(t,n,e){var o;if(e>0)o=t>=n?n:n-po(n,t,e)|0;else{if(!(e<0))throw Mp("Step is zero.");o=t<=n?n:n+po(t,n,0|-e)|0}return o}function po(t,n,e){return fo(fo(t,e)-fo(n,e)|0,e)}function fo(t,n){var e=t%n|0;return e>=0?e:e+n|0}function _o(){var t;b=this,yo.call(this),this.l8_1=(Y||(Y=!0,Math.pow(2,-26),Math.pow(2,-53)),t=Math.random()*Math.pow(2,32)|0,function(t,n,e){return $o.call(e,t,n,0,0,~t,t<<10^(n>>>4|0)),e}(t,t>>31,Object.create($o.prototype)))}function vo(){return null==b&&new _o,b}function yo(){vo()}function mo(t,n){if(!(n>t))throw Mp(Ll(function(t,n){return"Random range is empty: ["+Ll(t)+", "+Ll(n)+")."}(t,n)))}function go(){w=this,this.r8_1=new Zl(0,0)}function $o(t,n,e,o,r,i){if(null==w&&new go,yo.call(this),this.s8_1=t,this.t8_1=n,this.u8_1=e,this.v8_1=o,this.w8_1=r,this.x8_1=i,0==(this.s8_1|this.t8_1|this.u8_1|this.v8_1|this.w8_1))throw Mp(Ll("Initial state must have at least one non-zero element."));var s=0;if(s<64)do{s=s+1|0,this.q4()}while(s<64)}function bo(){x=this,this.w_1=new xo(1,0)}function wo(){return null==x&&new bo,x}function xo(t,n){wo(),Oo.call(this,t,n,1)}function ko(){k=this,this.b9_1=new jo(1,0)}function jo(t,n){null==k&&new ko,Mo.call(this,t,n,1)}function Co(t,n,e){de.call(this),this.j9_1=e,this.k9_1=n,this.l9_1=this.j9_1>0?t<=n:t>=n,this.m9_1=this.l9_1?t:this.k9_1}function zo(t,n,e){ve.call(this),this.n9_1=e;var o;o=Yc(n),this.o9_1=o,this.p9_1=this.n9_1>0?Kc(t,n)<=0:Kc(t,n)>=0;var r;r=this.p9_1?Yc(t):this.o9_1,this.q9_1=r}function So(){j=this}function qo(){return null==j&&new So,j}function Oo(t,n,e){if(qo(),0===e)throw Mp("Step must be non-zero.");if(e===Bs().x_1)throw Mp("Step must be greater than Int.MIN_VALUE to avoid overflow on negation.");this.f1_1=t,this.g1_1=ho(t,n,e),this.h1_1=e}function Po(){C=this}function Mo(t,n,e){if(null==C&&new Po,0===e)throw Mp("Step must be non-zero.");if(e===Bs().x_1)throw Mp("Step must be greater than Int.MIN_VALUE to avoid overflow on negation.");this.g9_1=t;var o,r=Yc(t);o=Yc(n),this.h9_1=zh(ho(r,o,e)),this.i9_1=e}function Ao(){}function Eo(){}function Io(){}function Do(){}function To(t,n,e){null!=e?t.b(e(n)):null==n||Kh(n)?t.b(n):n instanceof tl?t.r9(n.l1_1):t.b(dl(n))}function Bo(t,n,e){if(Nl(new tl(t),new tl(n)))return!0;if(!e)return!1;var o=sc(t),r=sc(n);return!!Nl(new tl(o),new tl(r))||Nl(new tl(Ol(Xc(o).toLowerCase(),0)),new tl(Ol(Xc(r).toLowerCase(),0)))}function Lo(t){var n;t:{var e=0,o=Ml(t)-1|0;if(e<=o)do{var r=e;if(e=e+1|0,!ac(Ol(t,r))){n=r;break t}}while(e<=o);n=-1}var i=n;return-1===i?t.length:i}function No(t){return t}function Fo(t){return function(t,n){uc(n);var e,o,r,i=t.length;if(0===i)return null;var s=Ol(t,0);if(Kc(s,48)<0){if(1===i)return null;if(e=1,Nl(new tl(s),new tl(45)))o=!0,Xl(),r=new Zl(0,-2147483648);else{if(!Nl(new tl(s),new tl(43)))return null;o=!1,Xl(),r=new Zl(-1,2147483647).s9()}}else e=0,o=!1,Xl(),r=new Zl(-1,2147483647).s9();Xl();var a=new Zl(-1,2147483647).s9().t9(new Zl(36,0)),u=a,c=new Zl(0,0),l=e;if(l0,u=_a(a?dn(o,10):10);t:do{var c;if(c=Ll(Al(t,r,i)),u.a(c),r=i+n.length|0,a&&u.f()===(o-1|0))break t;i=Ko(t,n,r,e)}while(-1!==i);return s=Ll(Al(t,r,Ml(t))),u.a(s),u}(t,r,e,o)}for(var i=function(t){return new $n(t)}(ir(t,n,0,e,o,2)),s=_a(re(i,10)),a=i.c();a.d();){var u;u=or(t,a.e()),s.a(u)}return s}function Wo(t,n,e,o,r,i){return 0!=(2&r)&&(e=Xo(t)),0!=(4&r)&&(o=!1),function(t,n,e,o){return o||"string"!=typeof t?sr(t,n,e,0,o,!0):t.lastIndexOf(n,e)}(t,n,e,o)}function Jo(t,n,e){return"string"==typeof n?Go(t,n,0,e,2)>=0:ar(t,n,0,Ml(t),e,!1,16)>=0}function Ko(t,n,e,o){return o||"string"!=typeof t?ar(t,n,e,Ml(t),o,!1,16):t.indexOf(n,e)}function Go(t,n,e,o,r,i){return 0!=(2&r)&&(e=0),0!=(4&r)&&(o=!1),Ko(t,n,e,o)}function Yo(t){return function(t,n,e,o,r,i){return 0!=(2&r)&&(e=!1),0!=(4&r)&&(o=0),function(t,n,e,o){return yn(ir(t,n,0,e,o,2),(r=t,function(t){return or(r,t)}));var r}(t,n,e,o)}(t,["\r\n","\n","\r"],!1,0,6)}function Xo(t){return Ml(t)-1|0}function Zo(t,n,e){return Ll(function(t,n,e){if(n<0)throw Mp("Desired length "+n+" is less than zero.");if(n<=Ml(t))return Al(t,0,Ml(t));var o=ec(n),r=1,i=n-Ml(t)|0;if(r<=i)do{var s=r;r=r+1|0,o.r9(e)}while(s!==i);return o.b(t),o}(Kh(t)?t:Jl(),n,e))}function Qo(t,n,e,o,r){return 0!=(2&o)&&(e=!1),function(t,n,e){return Ml(t)>0&&Bo(Ol(t,0),n,e)}(t,n,e)}function tr(t,n,e,o,r){return 0!=(2&o)&&(e=!1),function(t,n,e){return er(t,n,0,e,2)>=0}(t,n,e)}function nr(t,n,e,o){var r,i;if(o||"string"!=typeof t)r=function(t,n,e,o){if(!o&&1===n.length&&"string"==typeof t){var r=t,i=Xc(function(t){var n;switch(t.length){case 0:throw Rp("Array is empty.");case 1:n=t[0];break;default:throw Mp("Array has more than one element.")}return n}(n));return r.indexOf(i,e)}var s=vn(e,0),a=Xo(t);if(s<=a)do{var u=s;s=s+1|0;var c,l=Ol(t,u);t:{for(var h=n,p=0,f=h.length;p0&&u<=c||l<0&&c<=u)do{var h,p=u;u=u+l|0;t:{for(var f=n.c();f.d();){var _=f.e();if(Mc(_,0,t,p,_.length,o)){h=_;break t}}h=null}if(null!=h)return vi(p,h)}while(p!==c)}else{var d=a.f1_1,v=a.g1_1,y=a.h1_1;if(y>0&&d<=v||y<0&&v<=d)do{var m,g=d;d=d+y|0;t:{for(var $=n.c();$.d();){var b=$.e();if(pr(b,0,t,g,b.length,o)){m=b;break t}}m=null}if(null!=m)return vi(g,m)}while(g!==v)}return null}(t,i,n,s,!1);return null==e?null:vi(e.j4_1,e.k4_1.length)}));var i,s}function ir(t,n,e,o,r,i,s){return 0!=(2&i)&&(e=0),0!=(4&i)&&(o=!1),0!=(8&i)&&(r=0),rr(t,n,e,o,r)}function sr(t,n,e,o,r,i){var s=i?_n(dn(e,Xo(t)),vn(o,0)):qh(vn(e,0),dn(o,Ml(t)));if("string"==typeof t&&"string"==typeof n){var a=s.f1_1,u=s.g1_1,c=s.h1_1;if(c>0&&a<=u||c<0&&u<=a)do{var l=a;if(a=a+c|0,Mc(n,0,t,l,Ml(n),r))return l}while(l!==u)}else{var h=s.f1_1,p=s.g1_1,f=s.h1_1;if(f>0&&h<=p||f<0&&p<=h)do{var _=h;if(h=h+f|0,pr(n,0,t,_,Ml(n),r))return _}while(_!==p)}return-1}function ar(t,n,e,o,r,i,s,a){return 0!=(16&s)&&(i=!1),sr(t,n,e,o,r,i)}function ur(t){if(!(t>=0))throw Mp(Ll("Limit must be non-negative, but was "+t))}function cr(t){if(t.ja_1<0)t.ha_1=0,t.ka_1=null;else{var n;if(t.ma_1.pa_1>0){var e=t;e.la_1=e.la_1+1|0,n=e.la_1>=t.ma_1.pa_1}else n=!1;if(n||t.ja_1>Ml(t.ma_1.na_1))t.ka_1=qh(t.ia_1,Xo(t.ma_1.na_1)),t.ja_1=-1;else{var o=t.ma_1.qa_1(t.ma_1.na_1,t.ja_1);if(null==o)t.ka_1=qh(t.ia_1,Xo(t.ma_1.na_1)),t.ja_1=-1;else{var r=o,i=r.l4(),s=r.m4();t.ka_1=pn(t.ia_1,i),t.ia_1=i+s|0,t.ja_1=t.ia_1+(0===s?1:0)|0}}t.ha_1=1}}function lr(t){this.ma_1=t,this.ha_1=-1,this.ia_1=function(t,n,e){if(n>e)throw Mp("Cannot coerce value to an empty range: maximum "+e+" is less than minimum "+n+".");return te?e:t}(t.oa_1,0,Ml(t.na_1)),this.ja_1=this.ia_1,this.ka_1=null,this.la_1=0}function hr(t,n,e,o){this.na_1=t,this.oa_1=n,this.pa_1=e,this.qa_1=o}function pr(t,n,e,o,r,i){if(o<0||n<0||n>(Ml(t)-r|0)||o>(Ml(e)-r|0))return!1;var s=0;if(s=0)return t;throw Mp("Summing infinite durations of different signs yields an undefined result.")}if(Cr(n))return n;var e,o,r;if((1&t.wa())==(1&n.wa())){var i=yr(t).v9(yr(n));e=mr(t)?(o=i,r=new Zl(387905,-1073741824),o.d1(new Zl(-387905,1073741823))<=0&&r.d1(o)<=0?Ur(o):Br(Rr(o))):Fr(i)}else e=gr(t)?kr(0,yr(t),yr(n)):kr(0,yr(n),yr(t));return e}function kr(t,n,e){var o,r=Rr(e),i=n.v9(r),s=new Zl(1108857478,-1074);if(i.d1(new Zl(-1108857478,1073))<=0&&s.d1(i)<=0){var a=e.w9(Hr(r));o=Ur(Hr(i).v9(a))}else o=Br(fn(i,new Zl(1,-1073741824),new Zl(-1,1073741823)));return o}function jr(t){return t.d1(new Zl(0,0))<0}function Cr(t){return!!t.equals(br().ya_1)||t.equals(br().za_1)}function zr(t){return jr(t)?wr(t):t}function Sr(t,n){var e=t.bb(n);if(e.d1(new Zl(0,0))<0||0==(1&e.wa()))return t.d1(n);var o=(1&t.wa())-(1&n.wa())|0;return jr(t)?0|-o:o}function qr(t){return Cr(t)?0:function(t){return Mr(t,Uc())}(t).db(new Zl(60,0)).wa()}function Or(t){return Cr(t)?0:function(t){return Mr(t,Hc())}(t).db(new Zl(60,0)).wa()}function Pr(t){return Cr(t)?0:gr(t)?Hr(yr(t).db(new Zl(1e3,0))).wa():yr(t).db(new Zl(1e9,0)).wa()}function Mr(t,n){var e,o=t;return o.equals(br().ya_1)?(Xl(),e=new Zl(-1,2147483647)):o.equals(br().za_1)?(Xl(),e=new Zl(0,-2147483648)):e=Lc(yr(t),function(t){return mr(t)?Fc():Rc()}(t),n),e}function Ar(t){return Mr(t,Vc())}function Er(t){var n,e=t;if(e.equals(new Zl(0,0)))n="0s";else if(e.equals(br().ya_1))n="Infinity";else if(e.equals(br().za_1))n="-Infinity";else{var o=jr(t),r=rc();o&&r.r9(45);var i=zr(t),s=function(t){return Mr(t,Wc())}(i),a=function(t){return Cr(t)?0:Ar(t).db(new Zl(24,0)).wa()}(i),u=qr(i),c=Or(i),l=Pr(i),h=!s.equals(new Zl(0,0)),p=!(0===a),f=!(0===u),_=0!==c||!(0===l),d=0;if(h&&(r.eb(s).r9(100),d=d+1|0),p||h&&(f||_)){var v=d;d=v+1|0,v>0&&r.r9(32),r.eb(a).r9(104)}if(f||_&&(p||h)){var y=d;d=y+1|0,y>0&&r.r9(32),r.eb(u).r9(109)}if(_){var m=d;d=m+1|0,m>0&&r.r9(32),0!==c||h||p||f?Ir(r,0,c,l,9,"s",!1):l>=1e6?Ir(r,0,l/1e6|0,l%1e6|0,6,"ms",!1):l>=1e3?Ir(r,0,l/1e3|0,l%1e3|0,3,"us",!1):r.eb(l).fb("ns")}o&&d>1&&(r.gb(1,40).r9(41),Es()),n=r.toString()}return n}function Ir(t,n,e,o,r,i,s){if(t.eb(e),0!==o){t.r9(46);var a,u=Zo(o.toString(),r,48);t:{var c=Ml(u)-1|0;if(0<=c)do{var l=c;if(c=c+-1|0,!Nl(new tl(Ol(u,l)),new tl(48))){a=l;break t}}while(0<=c);a=-1}var h=a+1|0;!s&&h<3?t.hb(u,0,h):t.hb(u,0,It((h+2|0)/3|0,3))}t.fb(i)}function Dr(t){br(),this.cb_1=t}function Tr(t,n){var e=Bc(t,n,Fc());if(hu(e))throw Mp(Ll("Duration value cannot be NaN."));var o=lu(e),r=new Zl(387905,-1073741824);return o.d1(new Zl(-387905,1073741823))<=0&&r.d1(o)<=0?Ur(o):Fr(lu(Bc(t,n,Rc())))}function Br(t){return vr(t.kb(1).v9(new Zl(1,0)))}function Lr(t,n){var e=Nc(new Zl(-387905,1073741823),Fc(),n);return e.s9().d1(t)<=0&&t.d1(e)<=0?Ur(Nc(t,n,Fc())):Br(fn(Lc(t,n,Rc()),new Zl(1,-1073741824),new Zl(-1,1073741823)))}function Nr(t,n){var e=t.length;if(0===e)throw Mp("The string is empty");var o=0,r=br().xa_1,i="Infinity",s=Ol(t,o);(Nl(new tl(s),new tl(43))||Nl(new tl(s),new tl(45)))&&(o=o+1|0);var a=o>0,u=!!a&&Qo(t,45,!1,2);if(e<=o)throw Mp("No components");if(Nl(new tl(Ol(t,o)),new tl(80))){if((o=o+1|0)===e)throw Op();for(var c=!1,l=null;o=0&&y<=Xo(t)))throw Mp("Missing unit for value "+v);o=o+1|0;var m=Wr(Ol(t,y),c);if(null!=l&&l.x1(m)<=0)throw Mp("Unexpected order of duration components");l=m;var g=er(v,46,0,!1,6);m.equals(Hc())&&g>0?(r=xr(r,Lr(Vr(v.substring(0,g)),m)),r=xr(r,Tr(lc(v.substring(g)),m))):r=xr(r,Lr(Vr(v),m))}}else{if(n)throw Op();var $=e-o|0,b=i.length;if(Mc(t,o,i,0,Math.max($,b),!0))r=br().ya_1;else{var w=null,x=!1,k=!a;if(a&&Nl(new tl(Ol(t,o)),new tl(40))&&Nl(new tl(function(t){if(0===Ml(t))throw Rp("Char sequence is empty.");return Ol(t,Xo(t))}(t)),new tl(41))&&(k=!0,(o=o+1|0)==(e=e-1|0)))throw Mp("No components");for(;o0){if(r=xr(r,Lr(hc(P.substring(0,L)),B)),r=xr(r,Tr(lc(P.substring(L)),B)),o0&&tr("+-",Ol(t,0),!1,2)&&(r=r+1|0),(o-r|0)>16){var i;t:{var s=qh(r,Xo(t));if(Th(s,hl)&&s.h())i=!0;else{var a=s.f1_1,u=s.g1_1;if(a<=u)do{var c=a;a=a+1|0;var l=Ol(t,c);if(!(48<=l&&l<=57)){i=!1;break t}}while(c!==u);i=!0}}n=i}else n=!1;return n?(Nl(new tl(Ol(t,0)),new tl(45))?(Xl(),e=new Zl(0,-2147483648)):(Xl(),e=new Zl(-1,2147483647)),e):Oc(t,"+",!1,2)?hc(wn(t,1)):hc(t)}function Wr(t,n){var e;if(n){var o,r=t;if(Nl(new tl(r),new tl(72)))o=Vc();else if(Nl(new tl(r),new tl(77)))o=Uc();else{if(!Nl(new tl(r),new tl(83)))throw Mp("Invalid duration ISO time unit: "+new tl(t));o=Hc()}e=o}else{if(!Nl(new tl(t),new tl(68)))throw Mp("Invalid or unsupported duration ISO non-time unit: "+new tl(t));e=Wc()}return e}function Jr(t){var n;switch(t){case"ns":n=Fc();break;case"us":Dc(),n=it;break;case"ms":n=Rc();break;case"s":n=Hc();break;case"m":n=Uc();break;case"h":n=Vc();break;case"d":n=Wc();break;default:throw Mp("Unknown duration unit short name: "+t)}return n}function Kr(){return Zr(),S}function Gr(){}function Yr(t){this.mb_1=t}function Xr(t,n){Gr.call(this),this.nb_1=function(t,n){if("function"==typeof t)return t.$arity===n;if("object"==typeof t&&df("$metadata$",t.constructor)){var e,o=t.constructor.$metadata$,r=null==o?null:o.suspendArity;if(null!=r){var i=!1,s=ml(r);t:for(;s.d();)if(n===s.e()){i=!0;break t}return i}return null!=(e=null)&&e}return!1}(t,2)?t:Jl(),this.ob_1=n,this.pb_1=Th(this,Ue)?this:Jl(),this.qb_1=Kr()}function Zr(){var t;q||(q=!0,ci(),t=so(),S=t)}function Qr(){}function ti(t,n){_l.call(this,t,n)}function ni(t){this.ub_1=t,this.vb_1=oi()}function ei(){M=this}function oi(){return null==M&&new ei,M}function ri(t){return t}function ii(t){return t}function si(t){return t instanceof li}function ai(t){return t instanceof li?t.xb_1:null}function ui(){A=this}function ci(){return null==A&&new ui,A}function li(t){this.xb_1=t}function hi(t){ci(),this.ac_1=t}function pi(t){return new li(t)}function fi(t){if(t instanceof li)throw t.xb_1}function _i(t){Sp(t,this),Hl(this,_i)}function di(t,n){this.j4_1=t,this.k4_1=n}function vi(t,n){return new di(t,n)}function yi(t,n,e){this.dc_1=t,this.ec_1=n,this.fc_1=e}function mi(t){return t}function gi(t){return t}function $i(){E=this,this.gc_1=0,this.hc_1=-1,this.ic_1=1,this.jc_1=8}function bi(){return null==E&&new $i,E}function wi(t,n){return Il(255&t,255&n)}function xi(t){return(255&t).toString()}function ki(t){bi(),this.kc_1=t}function ji(t){return t}function Ci(t){return t}function zi(t){return t.length}function Si(t){this.mc_1=t,this.nc_1=0}function qi(t,n){return(Vh(new ki(n))?new ki(n):Jl())instanceof ki&&Xt(t,n)}function Oi(t,n){var e;t:{var o=Th(n,hl)?n:Jl();if(Th(o,hl)&&o.h())e=!0;else{for(var r=o.c();r.d();){var i=r.e();if(!(i instanceof ki&&Xt(t,i.kc_1))){e=!1;break t}}e=!0}}return e}function Pi(t){this.pc_1=t}function Mi(t){return t}function Ai(t){return t}function Ei(){I=this,this.sc_1=0,this.tc_1=-1,this.uc_1=4,this.vc_1=32}function Ii(){return null==I&&new Ei,I}function Di(t,n){return ws(t,n)}function Ti(t){return Sh(t).xc(new Zl(-1,0)).toString()}function Bi(t){Ii(),this.wc_1=t}function Li(t){return t}function Ni(t){return t}function Fi(t){return t.length}function Ri(t){this.zc_1=t,this.ad_1=0}function Hi(t,n){return(Vh(new Bi(n))?new Bi(n):Jl())instanceof Bi&&Gt(t,n)}function Ui(t,n){var e;t:{var o=Th(n,hl)?n:Jl();if(Th(o,hl)&&o.h())e=!0;else{for(var r=o.c();r.d();){var i=r.e();if(!(i instanceof Bi&&Gt(t,i.wc_1))){e=!1;break t}}e=!0}}return e}function Vi(t){this.cd_1=t}function Wi(t){return t}function Ji(t){return t}function Ki(){D=this,this.fd_1=new Zl(0,0),this.gd_1=new Zl(-1,-1),this.hd_1=8,this.id_1=64}function Gi(){return null==D&&new Ki,D}function Yi(t,n){return xs(t,n)}function Xi(t){return function(t,n){if(t.d1(new Zl(0,0))>=0)return gf(t,n);var e,o=t.de(1).t9(Sh(n)).kb(1);e=o.u9(Sh(n));var r=t.w9(e);return r.d1(Sh(n))>=0&&(r=r.w9(Sh(n)),o=o.v9(new Zl(1,0))),gf(o,n)+gf(r,n)}(t,10)}function Zi(t){Gi(),this.jd_1=t}function Qi(t){return t}function ts(t){return t}function ns(t){return t.length}function es(t){this.ld_1=t,this.md_1=0}function os(t,n){return(Vh(new Zi(n))?new Zi(n):Jl())instanceof Zi&&Kt(t,n)}function rs(t,n){var e;t:{var o=Th(n,hl)?n:Jl();if(Th(o,hl)&&o.h())e=!0;else{for(var r=o.c();r.d();){var i=r.e();if(!(i instanceof Zi&&Kt(t,i.jd_1))){e=!1;break t}}e=!0}}return e}function is(t){this.od_1=t}function ss(t){return t}function as(t){return t}function us(){T=this,this.rd_1=0,this.sd_1=-1,this.td_1=2,this.ud_1=16}function cs(){return null==T&&new us,T}function ls(t,n){return Il(65535&t,65535&n)}function hs(t){return(65535&t).toString()}function ps(t){cs(),this.vd_1=t}function fs(t){return t}function _s(t){return t}function ds(t){return t.length}function vs(t){this.xd_1=t,this.yd_1=0}function ys(t,n){return(Vh(new ps(n))?new ps(n):Jl())instanceof ps&&Yt(t,n)}function ms(t,n){var e;t:{var o=Th(n,hl)?n:Jl();if(Th(o,hl)&&o.h())e=!0;else{for(var r=o.c();r.d();){var i=r.e();if(!(i instanceof ps&&Yt(t,i.vd_1))){e=!1;break t}}e=!0}}return e}function gs(t){this.ae_1=t}function $s(t){return function(t,n){uc(n);var e=t.length;if(0===e)return null;Gi();var o,r=new Zl(-1,-1),i=Ol(t,0);if(Kc(i,48)<0){if(1===e||!Nl(new tl(i),new tl(43)))return null;o=1}else o=0;var s=new Zl(477218588,119304647),a=s,u=Sh(n),c=new Zl(0,0),l=o;if(l0){if(!Nl(a,s))return null;if(xs(c,a=ks(r,u))>0)return null}var f=c=c.u9(u),_=c,d=Sh(p).xc(new Zl(-1,0));if(xs(c=_.v9(d),f)<0)return null}while(l0){if(c!==u)return null;if(ws(h,(i=l,s=void 0,a=void 0,a=Sh(-1).xc(new Zl(-1,0)),s=Sh(i).xc(new Zl(-1,0)),c=a.t9(s).wa()))>0)return null}var d=h=It(h,l);if(ws(h=h+_|0,d)<0)return null}while(p=0)return e.t9(o);var r=e.de(1).t9(o).kb(1),i=xs(e.w9(r.u9(o)),o)>=0?1:0;return r.v9(Sh(i))}function js(){}function Cs(){}function zs(){}function Ss(){}function qs(){}function Os(){}function Ps(){}function Ms(){}function As(){B=this}function Es(){return null==B&&new As,B}function Is(){L=this,this.he_1=-128,this.ie_1=127,this.je_1=1,this.ke_1=8}function Ds(){N=this,this.pe_1=-32768,this.qe_1=32767,this.re_1=2,this.se_1=16}function Ts(){F=this,this.x_1=-2147483648,this.y_1=2147483647,this.z_1=4,this.a1_1=32}function Bs(){return null==F&&new Ts,F}function Ls(){R=this,this.te_1=14e-46,this.ue_1=34028235e31,this.ve_1=1/0,this.we_1=-1/0,this.xe_1=NaN,this.ye_1=4,this.ze_1=32}function Ns(){return null==R&&new Ls,R}function Fs(){H=this,this.df_1=5e-324,this.ef_1=17976931348623157e292,this.ff_1=1/0,this.gf_1=-1/0,this.hf_1=NaN,this.if_1=8,this.jf_1=64}function Rs(){return null==H&&new Fs,H}function Hs(){U=this}function Us(){V=this}function Vs(){}function Ws(t){return Jt(n=[t],Aa(n.length));var n}function Js(t){return 0===(n=[t]).length?fa():da(new te(n,!0));var n}function Ks(t){return t}function Gs(t){return t<0&&function(){throw ef("Count overflow has happened.")}(),t}function Ys(t){return t<0&&function(){throw ef("Index overflow has happened.")}(),t}function Xs(t){return void 0!==t.toArray?t.toArray():Qs(t)}function Zs(t,n){if(t.f()<=1)return Es();var e=Xs(t);!function(t,n){if(ga()){var e=(o=n,function(t,n){return o.compare(t,n)});t.sort(e)}else $a(t,0,Wt(t),n);var o}(e,n);var o=0,r=e.length;if(o=u)return!1}while(r=0))throw Mp(Ll("Negative initial capacity: "+t));if(!(n>=0))throw Mp(Ll("Non-positive load factor: "+n));return e}function Oa(t){return function(t,n){return qa(t,0,n),n}(t,Object.create(Pa.prototype))}function Pa(){this.fh_1=null}function Ma(t,n,e){return pa.call(e),Ia.call(e),e.ih_1=function(t,n){return qa(t,n,Object.create(Pa.prototype))}(t,n),e}function Aa(t){return function(t,n){return Ma(t,0,n),n}(t,Object.create(Ia.prototype))}function Ea(t,n){return pa.call(n),Ia.call(n),n.ih_1=t,n}function Ia(){}function Da(t,n){var e=Ba(t,t.rh_1.wg(n));if(null==e)return null;var o=e;if(null!=o&&Uh(o))return Ta(o,t,n);var r=o;return t.rh_1.vg(r.l2(),n)?r:null}function Ta(t,n,e){var o;t:{for(var r=t,i=0,s=r.length;inew Zl(-1,2147483647).pi()?(Xl(),n=new Zl(-1,2147483647)):(Xl(),t1?t:Ol(n,0)}function ac(t){return function(t){var n;return 9<=(n=Yc(t))&&n<=13||28<=n&&n<=32||160===n||n>4096&&(5760===n||8192<=n&&n<=8202||8232===n||8233===n||8239===n||8287===n||12288===n)}(t)}function uc(t){if(!(2<=t&&t<=36))throw Mp("radix "+t+" was not in valid range 2..36");return t}function cc(t,n){var e,o,r,i=Kc(t,48)>=0&&Kc(t,57)<=0?Gc(t,48):Kc(t,65)>=0&&Kc(t,90)<=0?Gc(t,65)+10|0:Kc(t,97)>=0&&Kc(t,122)<=0?Gc(t,97)+10|0:Kc(t,128)<0?-1:Kc(t,65313)>=0&&Kc(t,65338)<=0?Gc(t,65313)+10|0:Kc(t,65345)>=0&&Kc(t,65370)<=0?Gc(t,65345)+10|0:(e=Yc(t),o=hp(fp().in_1,e),(r=e-fp().in_1[o]|0)<10?r:-1);return i>=n?-1:i}function lc(t){var n=+t;return(hu(n)&&!fc(t)||0===n&&Pc(t))&&Ho(t),n}function hc(t){var n,e=Fo(t);return null==e?Ho(t):n=e,n}function pc(t){var n,e=Ro(t);return null==e?Ho(t):n=e,n}function fc(t){switch(t.toLowerCase()){case"nan":case"+nan":case"-nan":return!0;default:return!1}}function _c(){nt=this,this.yk_1=new RegExp("[\\\\^$*+?.()|[\\]{}]","g"),this.zk_1=new RegExp("[\\\\$]","g"),this.al_1=new RegExp("\\$","g")}function dc(){return null==nt&&new _c,nt}function vc(t){return t.e()}function yc(t){return function(n){return function(t,n){for(var e=0,o=rc();e=f.f())throw Zp("Group with index "+v+" does not exist");var y=f.g(v),m=null==y?null:y.ll_1;o.fb(null==m?"":m),e=_}}else o.r9(i)}return o.toString()}(n,t)}}function mc(t,n){dc(),this.x9_1=t,this.y9_1=on(n),this.z9_1=new RegExp(t,en(n,"","gu",null,0,null,jc,28)),this.aa_1=null,this.ba_1=null}function gc(t,n,e){_l.call(this,t,n),this.kl_1=e}function $c(t,n,e,o){t.lastIndex=e;var r=t.exec(n);return null==r?null:new Sc(qh(r.index,t.lastIndex-1|0),r,o,n)}function bc(t){this.ll_1=t}function wc(t,n){for(var e=n;e0&&Nl(new tl(Ol(n,Xo(n)-(i-1|0)|0)),new tl(32));)i=i-1|0;return bn(n,i)+"... and "+(o-1|0)+" more common stack frames skipped"}(n,s,u),Ml(e)>0){var c;if(0===u)c=0;else{for(var l=0,h=r,p=0,f=h.length;p=d&&n.xl_1.fb(e),n.xl_1.fb(m).fb("\n")}}else n.xl_1.fb(s).fb("\n")}else n.xl_1.fb(r).fb("\n");var $=function(t){var n=t._suppressed,e=null==n?null:n;return null==e?Kn():e}(t);if(!$.h())for(var b=e+" ",w=$.c();w.d();)Ac(w.e(),n,b,"Suppressed: ");return!0}function Ic(){var t;this.xl_1=rc(),t=[],this.yl_1=t,this.zl_1="",this.am_1=0}function Dc(){if(ht)return Es();ht=!0,rt=new Tc("NANOSECONDS",0,1),it=new Tc("MICROSECONDS",1,1e3),st=new Tc("MILLISECONDS",2,1e6),at=new Tc("SECONDS",3,1e9),ut=new Tc("MINUTES",4,6e10),ct=new Tc("HOURS",5,36e11),lt=new Tc("DAYS",6,864e11)}function Tc(t,n,e){_l.call(this,t,n),this.em_1=e}function Bc(t,n,e){var o=Il(n.em_1,e.em_1);return o>0?t*(n.em_1/e.em_1):o<0?t/(e.em_1/n.em_1):t}function Lc(t,n,e){var o,r=Il(n.em_1,e.em_1);if(r>0){var i,s=Ch(n.em_1/e.em_1),a=t.u9(s);a.t9(s).equals(t)?i=a:t.d1(new Zl(0,0))>0?(Xl(),i=new Zl(-1,2147483647)):(Xl(),i=new Zl(0,-2147483648)),o=i}else o=r<0?t.t9(Ch(e.em_1/n.em_1)):t;return o}function Nc(t,n,e){var o=Il(n.em_1,e.em_1);return o>0?t.u9(Ch(n.em_1/e.em_1)):o<0?t.t9(Ch(e.em_1/n.em_1)):t}function Fc(){return Dc(),rt}function Rc(){return Dc(),st}function Hc(){return Dc(),at}function Uc(){return Dc(),ut}function Vc(){return Dc(),ct}function Wc(){return Dc(),lt}function Jc(t){return t}function Kc(t,n){return t-n|0}function Gc(t,n){return t-n|0}function Yc(t){return t}function Xc(t){return String.fromCharCode(t)}function Zc(){pt=this,this.fm_1=0,this.gm_1=65535,this.hm_1=55296,this.im_1=56319,this.jm_1=56320,this.km_1=57343,this.lm_1=55296,this.mm_1=57343,this.nm_1=2,this.om_1=16}function Qc(){return null==pt&&new Zc,pt}function tl(t){Qc(),this.l1_1=t}function nl(){}function el(){}function ol(){}function rl(){}function il(){}function sl(){}function al(){}function ul(){}function cl(){}function ll(){}function hl(){}function pl(){}function fl(){ft=this}function _l(t,n){null==ft&&new fl,this.s1_1=t,this.t1_1=n}function dl(t){var n=null==t?null:Ll(t);return null==n?"null":n}function vl(t,n){var e=null==t?null:Ll(t),o=null==e?"null":e,r=null==n?null:Ll(n);return o+(null==r?"null":r)}function yl(t,n){var e=0,o=t.length-1|0;if(e<=o)do{var r=e;e=e+1|0,t[r]=n}while(r!==o);return t}function ml(t){return new wl(t)}function gl(t){var n=yl(Array(t),!1);return n.$type$="BooleanArray",n}function $l(t){var n=new Uint16Array(t);return n.$type$="CharArray",n}function bl(t){var n=yl(Array(t),new Zl(0,0));return n.$type$="LongArray",n}function wl(t){this.rm_1=t,this.qm_1=0}function xl(t){this.tm_1=t,de.call(this),this.sm_1=0}function kl(){return ql(),_t}function jl(){return ql(),dt}function Cl(){return ql(),vt}function zl(){return ql(),yt}function Sl(t){return ql(),vf(t,0)===t?kh(t):(jl()[0]=t,It(Cl()[(ql(),mt)],31)+Cl()[zl()]|0)}function ql(){if(gt);else{gt=!0,_t=new ArrayBuffer(8);var t=new Float64Array(kl());dt=t,new Float32Array(kl());var n,e=new Int32Array(kl());vt=e,jl()[0]=-1,n=0!==Cl()[0]?1:0,yt=n,mt=1-zl()|0}}function Ol(t,n){var e;if(Pl(t)){var o,r=t.charCodeAt(n);if(Qc(),r<0?o=!0:(Qc(),o=r>65535),o)throw Mp("Invalid Char code: "+r);e=zh(r)}else e=t.fe(n);return e}function Pl(t){return"string"==typeof t}function Ml(t){return Pl(t)?t.length:t.ee()}function Al(t,n,e){return Pl(t)?t.substring(n,e):t.ge(n,e)}function El(t){return Ll(t)}function Il(t,n){var e;switch(typeof t){case"number":e="number"==typeof n?Dl(t,n):n instanceof Zl?Dl(t,n.pi()):Tl(t,n);break;case"string":case"boolean":e=Tl(t,n);break;default:e=function(t,n){return t.jb(n)}(t,n)}return e}function Dl(t,n){var e;if(tn)e=1;else if(t===n){var o;if(0!==t)o=0;else{var r=1/t;o=r===1/n?0:r<0?-1:1}e=o}else e=t!=t?n!=n?0:1:-1;return e}function Tl(t,n){return tn?1:0}function Bl(t){if(!df("kotlinHashCodeValue$",t)){var n=vf(4294967296*Math.random(),0),e=new Object;e.value=n,e.enumerable=!1,Object.defineProperty(t,"kotlinHashCodeValue$",e)}return t.kotlinHashCodeValue$}function Ll(t){return null==t?"null":Ih(t)?"[...]":t.toString()}function Nl(t,n){return null==t?null==n:null!=n&&("object"==typeof t&&"function"==typeof t.equals?t.equals(n):t!=t?n!=n:"number"==typeof t&&"number"==typeof n?t===n&&(0!==t||1/t==1/n):t===n)}function Fl(t){if(null==t)return 0;var n;switch(typeof t){case"object":n="function"==typeof t.hashCode?t.hashCode():Bl(t);break;case"function":n=Bl(t);break;case"number":n=Sl(t);break;case"boolean":n=t?1:0;break;default:n=Rl(String(t))}return n}function Rl(t){var n=0,e=0,o=t.length-1|0;if(e<=o)do{var r=e;e=e+1|0;var i=t.charCodeAt(r);n=It(n,31)+i|0}while(r!==o);return n}function Hl(t,n){null!=Error.captureStackTrace?Error.captureStackTrace(t,n):t.stack=(new Error).stack}function Ul(t,n,e){Error.call(t),function(t,n,e){if(!Vl(t,"message")){var o;if(null==n){var r;if(null!==n){var i=null==e?null:e.toString();r=null==i?void 0:i}else r=void 0;o=r}else o=n;t.message=o}Vl(t,"cause")||(t.cause=e),t.name=Object.getPrototypeOf(t).constructor.name}(t,n,e)}function Vl(t,n){return Object.getPrototypeOf(t).hasOwnProperty(n)}function Wl(t){var n;return null==t?function(){throw af()}():n=t,n}function Jl(){throw hf()}function Kl(t,n){for(var e=t.length,o=n.length,r=0,i=n;rr)for(o.length=n;r>>16|0,o=65535&t.c1_1,r=t.b1_1>>>16|0,i=65535&t.b1_1,s=n.c1_1>>>16|0,a=65535&n.c1_1,u=n.b1_1>>>16|0,c=0,l=0,h=0,p=0;return c=(c=c+((l=(l=l+((h=(h=h+((p=p+(i+(65535&n.b1_1)|0)|0)>>>16|0)|0)+(r+u|0)|0)>>>16|0)|0)+(o+a|0)|0)>>>16|0)|0)+(e+s|0)|0,new Zl((h&=65535)<<16|(p&=65535),(c&=65535)<<16|(l&=65535))}function sh(t,n){return wh(),ih(t,n.s9())}function ah(t,n){if(wh(),dh(t))return Ql();if(dh(n))return Ql();if(hh(t,eh()))return vh(n)?eh():Ql();if(hh(n,eh()))return vh(t)?eh():Ql();if(_h(t))return _h(n)?ah(yh(t),yh(n)):yh(ah(yh(t),n));if(_h(n))return yh(ah(t,yh(n)));if(mh(t,oh())&&mh(n,oh()))return gh(lh(t)*lh(n));var e=t.c1_1>>>16|0,o=65535&t.c1_1,r=t.b1_1>>>16|0,i=65535&t.b1_1,s=n.c1_1>>>16|0,a=65535&n.c1_1,u=n.b1_1>>>16|0,c=65535&n.b1_1,l=0,h=0,p=0,f=0;return p=p+((f=f+It(i,c)|0)>>>16|0)|0,f&=65535,h=(h=h+((p=p+It(r,c)|0)>>>16|0)|0)+((p=(p&=65535)+It(i,u)|0)>>>16|0)|0,p&=65535,l=(l=(l=l+((h=h+It(o,c)|0)>>>16|0)|0)+((h=(h&=65535)+It(r,u)|0)>>>16|0)|0)+((h=(h&=65535)+It(i,a)|0)>>>16|0)|0,h&=65535,l=l+(((It(e,c)+It(o,u)|0)+It(r,a)|0)+It(i,s)|0)|0,new Zl(p<<16|f,(l&=65535)<<16|h)}function uh(t,n){wh();var e=63&n;return 0===e?t:e<32?new Zl(t.b1_1<>>(32-e|0)|0):new Zl(0,t.b1_1<<(e-32|0))}function ch(t,n){wh();var e=63&n;return 0===e?t:e<32?new Zl(t.b1_1>>>e|0|t.c1_1<<(32-e|0),t.c1_1>>e):new Zl(t.c1_1>>(e-32|0),t.c1_1>=0?0:-1)}function lh(t){return wh(),4294967296*t.c1_1+function(t){return wh(),t.b1_1>=0?t.b1_1:4294967296+t.b1_1}(t)}function hh(t,n){return wh(),t.c1_1===n.c1_1&&t.b1_1===n.b1_1}function ph(t,n){if(wh(),n<2||36=0x8000000000000000)return wh(),kt;if(t<0)return yh(gh(-t));var n=4294967296;return new Zl(vf(t%n,0),vf(t/n,0))}function $h(t,n){return wh(),rh(t,n)>0}function bh(t,n){return wh(),rh(t,n)>=0}function wh(){zt||(zt=!0,bt=fh(0),wt=fh(1),xt=fh(-1),kt=new Zl(-1,2147483647),jt=new Zl(0,-2147483648),Ct=fh(16777216))}function xh(t){return t<<24>>24}function kh(t){return t instanceof Zl?t.wa():function(t){return t>2147483647?2147483647:t<-2147483648?-2147483648:vf(t,0)}(t)}function jh(t){return t<<16>>16}function Ch(t){return t instanceof Zl?t:gh(t)}function zh(t){return 65535&jh(kh(t))}function Sh(t){return fh(t)}function qh(t,n){return new xo(t,n)}function Oh(){Mh();var t=void 0;return Ah(t,t,t,t,t,t)}function Ph(t,n,e,o,r){return Mh(),o.get=o,o.set=r,o.callableName=t,i=o,s=function(t,n,e){Mh();var o=(Mh(),St)[t][null==n?0:1];return 0===o.interfaces.length&&(o.interfaces.push(e),null==o.interfacesCache?o.interfacesCache={isComplete:!1,implementInterfaceMemo:{}}:Wl(o.interfacesCache).isComplete=!1,Fh(Wl(o.interfacesCache),e)),o}(n,r,e),Mh(),i.$metadata$=s,i.constructor=i,i;var i,s}function Mh(){if(qt);else{qt=!0;var t,n=[Oh(),Oh()],e=[Oh(),Oh()];t=[Oh(),Oh()],St=[n,e,t]}}function Ah(t,n,e,o,r,i){return Eh("class",t,n,e,o,r,i)}function Eh(t,n,e,o,r,i,s){return{kind:t,simpleName:n,interfaceId:"interface"===t?-1:void 0,interfaces:e||[],associatedObjectKey:o,associatedObjects:r,suspendArity:i,fastPrototype:s,$kClass$:void 0,interfacesCache:{isComplete:void 0===s&&(void 0===e||0===e.length),implementInterfaceMemo:{}}}}function Ih(t){return!!Dh(t)||Tt(t)}function Dh(t){return Array.isArray(t)}function Th(t,n){var e=t.constructor;return null!=e&&Bh(e,n)}function Bh(t,n){if(t===n)return!0;var e=t.$metadata$;null!=e&&null==e.interfacesCache&&(e.interfacesCache={isComplete:!1,implementInterfaceMemo:{}});var o,r=null==e?null:e.interfacesCache;if(null!=r){r.isComplete||Lh(t);var i=n.$metadata$,s=null==i?null:i.interfaceId;if(null==s)return!1;var a=s;o=!!r.implementInterfaceMemo[a]}else{var u=Nh(t),c=null==u?null:u.constructor;if(null==c)return!1;o=Bh(c,n)}return o}function Lh(t){var n=t.$metadata$;null!=n&&null==n.interfacesCache&&(n.interfacesCache={isComplete:!1,implementInterfaceMemo:{}});var e=null==n?null:n.interfacesCache;if(null!=e){if(!0===e.isComplete)return e;for(var o=n.interfaces,r=0,i=o.length;r=0))throw Mp(Ll("Invalid new array size: "+n+"."));return Gl(t,n,null)}function up(t,n,e){return En().f2(n,e,t.length),t.slice(n,e)}function cp(t){return new ma(t)}function lp(t,n,e){for(var o=new Int32Array(e),r=0,i=0,s=0,a=t,u=0,c=a.length;u(i=t[r=(e+o|0)/2|0]))e=r+1|0;else{if(n===i)return r;o=r-1|0}return r-(n0},Mn.prototype.q=function(){return this.y1_1},Mn.prototype.r=function(){if(!this.p())throw Fp();var t=this;return t.y1_1=t.y1_1-1|0,this.c2_1.g(t.y1_1)},Mn.$metadata$=Ah("ListIteratorImpl",[Os],void 0,void 0,void 0,Pn.prototype),An.prototype.e2=function(t,n){if(t<0||t>=n)throw Zp("index: "+t+", size: "+n)},An.prototype.d2=function(t,n){if(t<0||t>n)throw Zp("index: "+t+", size: "+n)},An.prototype.f2=function(t,n,e){if(t<0||n>e)throw Zp("fromIndex: "+t+", toIndex: "+n+", size: "+e);if(t>n)throw Mp("fromIndex: "+t+" > toIndex: "+n)},An.prototype.g2=function(t,n,e){if(t<0||n>e)throw Zp("startIndex: "+t+", endIndex: "+n+", size: "+e);if(t>n)throw Mp("startIndex: "+t+" > endIndex: "+n)},An.prototype.h2=function(t){for(var n=1,e=t.c();e.d();){var o=e.e(),r=It(31,n),i=null==o?null:Fl(o);n=r+(null==i?0:i)|0}return n},An.prototype.i2=function(t,n){if(t.f()!==n.f())return!1;for(var e=n.c(),o=t.c();o.d();)if(!Nl(o.e(),e.e()))return!1;return!0},An.$metadata$=rp("Companion"),In.prototype.c=function(){return new Pn(this)},In.prototype.j=function(t){var n;t:{for(var e=0,o=this.c();o.d();){if(Nl(o.e(),t)){n=e;break t}e=e+1|0}n=-1}return n},In.prototype.j2=function(t){var n;t:{for(var e=this.o(this.f());e.p();)if(Nl(e.r(),t)){n=e.q();break t}n=-1}return n},In.prototype.o=function(t){return new Mn(this,t)},In.prototype.equals=function(t){return t===this||!(null==t||!Th(t,el))&&En().i2(this,t)},In.prototype.hashCode=function(){return En().h2(this)},In.$metadata$=Ah("AbstractList",[el],void 0,void 0,void 0,kn.prototype),Dn.prototype.d=function(){return this.k2_1.d()},Dn.prototype.e=function(){return this.k2_1.e().l2()},Dn.$metadata$=Ah(void 0,[Ss]),Tn.prototype.d=function(){return this.m2_1.d()},Tn.prototype.e=function(){return this.m2_1.e().n2()},Tn.$metadata$=Ah(void 0,[Ss]),Nn.prototype.o2=function(t){var n=t.l2(),e=null==n?null:Fl(n),o=null==e?0:e,r=t.n2(),i=null==r?null:Fl(r);return o^(null==i?0:i)},Nn.prototype.p2=function(t){return dl(t.l2())+"="+dl(t.n2())},Nn.prototype.q2=function(t,n){return!(null==n||!Th(n,ul))&&!!Nl(t.l2(),n.l2())&&Nl(t.n2(),n.n2())},Nn.$metadata$=rp("Companion"),Rn.prototype.s2=function(t){return this.r2_1.v2(t)},Rn.prototype.i=function(t){return!(null!=t&&!Vh(t))&&this.s2(null==t||Vh(t)?t:Jl())},Rn.prototype.c=function(){return new Dn(this.r2_1.v().c())},Rn.prototype.f=function(){return this.r2_1.f()},Rn.$metadata$=Ah(void 0,void 0,void 0,void 0,void 0,Jn.prototype),Hn.prototype.y2=function(t){return this.x2_1.z2(t)},Hn.prototype.i=function(t){return!(null!=t&&!Vh(t))&&this.y2(null==t||Vh(t)?t:Jl())},Hn.prototype.c=function(){return new Tn(this.x2_1.v().c())},Hn.prototype.f=function(){return this.x2_1.f()},Hn.$metadata$=Ah(void 0,void 0,void 0,void 0,void 0,kn.prototype),Un.prototype.v2=function(t){return!(null==Ln(this,t))},Un.prototype.z2=function(t){var n;t:{var e=this.v();if(Th(e,hl)&&e.h())n=!1;else{for(var o=e.c();o.d();)if(Nl(o.e().n2(),t)){n=!0;break t}n=!1}}return n},Un.prototype.a3=function(t){if(null==t||!Th(t,ul))return!1;var n=t.l2(),e=t.n2(),o=(Th(this,cl)?this:Jl()).b3(n);return!(!Nl(e,o)||null==o&&!(Th(this,cl)?this:Jl()).v2(n))},Un.prototype.equals=function(t){if(t===this)return!0;if(null==t||!Th(t,cl))return!1;if(this.f()!==t.f())return!1;var n;t:{var e=t.v();if(Th(e,hl)&&e.h())n=!0;else{for(var o=e.c();o.d();){var r=o.e();if(!this.a3(r)){n=!1;break t}}n=!0}}return n},Un.prototype.b3=function(t){var n=Ln(this,t);return null==n?null:n.n2()},Un.prototype.hashCode=function(){return Fl(this.v())},Un.prototype.h=function(){return 0===this.f()},Un.prototype.f=function(){return this.v().f()},Un.prototype.c3=function(){return null==this.t2_1&&(this.t2_1=new Rn(this)),Wl(this.t2_1)},Un.prototype.toString=function(){return en(this.v(),", ","{","}",0,null,(t=this,function(n){return t.w2(n)}),24);var t},Un.prototype.w2=function(t){return Bn(this,t.l2())+"="+Bn(this,t.n2())},Un.prototype.d3=function(){return null==this.u2_1&&(this.u2_1=new Hn(this)),Wl(this.u2_1)},Un.$metadata$=Ah("AbstractMap",[cl]),Vn.prototype.e3=function(t){for(var n=0,e=t.c();e.d();){var o=e.e(),r=n,i=null==o?null:Fl(o);n=r+(null==i?0:i)|0}return n},Vn.prototype.f3=function(t,n){return t.f()===n.f()&&t.o1(n)},Vn.$metadata$=rp("Companion"),Jn.prototype.equals=function(t){return t===this||!(null==t||!Th(t,il))&&Wn().f3(this,t)},Jn.prototype.hashCode=function(){return Wn().e3(this)},Jn.$metadata$=Ah("AbstractSet",[il],void 0,void 0,void 0,kn.prototype),Zn.prototype.equals=function(t){return!(null==t||!Th(t,el))&&t.h()},Zn.prototype.hashCode=function(){return 1},Zn.prototype.toString=function(){return"[]"},Zn.prototype.f=function(){return 0},Zn.prototype.h=function(){return!0},Zn.prototype.h3=function(t){return!1},Zn.prototype.i=function(t){return!1},Zn.prototype.i3=function(t){return t.h()},Zn.prototype.o1=function(t){return this.i3(t)},Zn.prototype.g=function(t){throw Zp("Empty list doesn't contain element at index "+t+".")},Zn.prototype.j3=function(t){return-1},Zn.prototype.j=function(t){return-1},Zn.prototype.c=function(){return ee()},Zn.prototype.o=function(t){if(0!==t)throw Zp("Index: "+t);return ee()},Zn.$metadata$=rp("EmptyList",[el,cu,tu]),te.prototype.f=function(){return this.k3_1.length},te.prototype.h=function(){return 0===this.k3_1.length},te.prototype.m3=function(t){return function(t,n){return Rt(t,n)>=0}(this.k3_1,t)},te.prototype.i=function(t){return!(null!=t&&!Vh(t))&&this.m3(null==t||Vh(t)?t:Jl())},te.prototype.n3=function(t){var n;t:if(Th(t,hl)&&t.h())n=!0;else{for(var e=t.c();e.d();){var o=e.e();if(!this.m3(o)){n=!1;break t}}n=!0}return n},te.prototype.o1=function(t){return this.n3(t)},te.prototype.c=function(){return ml(this.k3_1)},te.$metadata$=Ah("ArrayAsCollection",[hl]),ne.prototype.d=function(){return!1},ne.prototype.p=function(){return!1},ne.prototype.q=function(){return 0},ne.prototype.e=function(){throw Fp()},ne.prototype.r=function(){throw Fp()},ne.$metadata$=rp("EmptyIterator",[Os]),oe.prototype.q3=function(){return this.o3_1},oe.prototype.n2=function(){return this.p3_1},oe.prototype.toString=function(){return"IndexedValue(index="+this.o3_1+", value="+this.p3_1+")"},oe.prototype.hashCode=function(){var t=this.o3_1;return It(t,31)+(null==this.p3_1?0:Fl(this.p3_1))|0},oe.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof oe))return!1;var n=t instanceof oe?t:Jl();return this.o3_1===n.o3_1&&!!Nl(this.p3_1,n.p3_1)},oe.$metadata$=Ah("IndexedValue"),ie.prototype.c=function(){return new ae(this.r3_1())},ie.$metadata$=Ah("IndexingIterable",[nl]),se.prototype.c=function(){return this.s3_1()},se.$metadata$=Ah(void 0,[nl]),ae.prototype.d=function(){return this.t3_1.d()},ae.prototype.e=function(){var t=this.u3_1;return this.u3_1=t+1|0,new oe(Ys(t),this.t3_1.e())},ae.$metadata$=Ah("IndexingIterator",[Ss]),ue.$metadata$=op("MapWithDefault",[cl]),le.prototype.equals=function(t){return!(null==t||!Th(t,cl))&&t.h()},le.prototype.hashCode=function(){return 0},le.prototype.toString=function(){return"{}"},le.prototype.f=function(){return 0},le.prototype.h=function(){return!0},le.prototype.h4=function(t){return!1},le.prototype.v2=function(t){return!(null!=t&&!Vh(t))&&this.h4(null==t||Vh(t)?t:Jl())},le.prototype.i4=function(t){return null},le.prototype.b3=function(t){return null==t||Vh(t)?this.i4(null==t||Vh(t)?t:Jl()):null},le.prototype.v=function(){return De()},le.prototype.c3=function(){return De()},le.prototype.d3=function(){return Qn()},le.$metadata$=rp("EmptyMap",[cl,cu]),de.prototype.e=function(){return this.q4()},de.$metadata$=Ah("IntIterator",[Ss]),ve.prototype.r4=function(){return this.s4()},ve.prototype.e=function(){return new tl(this.r4())},ve.$metadata$=Ah("CharIterator",[Ss]),ye.$metadata$=op("Sequence"),me.$metadata$=Ah("SequenceScope"),be.prototype.y4=function(t){this.x4_1=t},be.prototype.d=function(){for(;;){switch(this.u4_1){case 0:break;case 1:if(Wl(this.w4_1).d())return this.u4_1=2,!0;this.w4_1=null;break;case 4:return!1;case 3:case 2:return!0;default:throw $e(this)}this.u4_1=5;var t,n=Wl(this.x4_1);this.x4_1=null,ci(),t=Es(),n.z4(t),Es()}},be.prototype.e=function(){switch(this.u4_1){case 0:case 1:return function(t){if(t.d())return t.e();throw Fp()}(this);case 2:return this.u4_1=1,Wl(this.w4_1).e();case 3:this.u4_1=0;var t=this.v4_1,n=null==t||Vh(t)?t:Jl();return this.v4_1=null,n;default:throw $e(this)}},be.prototype.t4=function(t,n){this.v4_1=t,this.u4_1=3;var e=n;return this.x4_1=e,so()},be.prototype.a5=function(t){fi(t);null==t||Vh(t)||Jl(),this.u4_1=4},be.prototype.z4=function(t){return this.a5(t)},be.prototype.b5=function(){return Qe()},be.$metadata$=Ah("SequenceBuilderIterator",[Ss,Ue],void 0,void 0,void 0,me.prototype),we.prototype.c=function(){return ge(this.c5_1)},we.$metadata$=Ah(void 0,[ye]),ke.prototype.e=function(){if(this.e5_1<0&&xe(this),0===this.e5_1)throw Fp();var t=this.d5_1,n=Vh(t)?t:Jl();return this.e5_1=-1,n},ke.prototype.d=function(){return this.e5_1<0&&xe(this),1===this.e5_1},ke.$metadata$=Ah(void 0,[Ss]),je.prototype.c=function(){return new ke(this)},je.$metadata$=Ah("GeneratorSequence",[ye]),Ce.prototype.e=function(){return this.j5_1.l5_1(this.i5_1.e())},Ce.prototype.d=function(){return this.i5_1.d()},Ce.$metadata$=Ah(void 0,[Ss]),ze.prototype.c=function(){return new Ce(this)},ze.$metadata$=Ah("TransformingSequence",[ye]),Se.$metadata$=op("DropTakeSequence",[ye]),qe.prototype.e=function(){if(0===this.m5_1)throw Fp();var t=this.m5_1;return this.m5_1=t-1|0,this.n5_1.e()},qe.prototype.d=function(){return this.m5_1>0&&this.n5_1.d()},qe.$metadata$=Ah(void 0,[Ss]),Oe.prototype.i1=function(t){return t>=this.p5_1?this:new Oe(this.o5_1,t)},Oe.prototype.c=function(){return new qe(this)},Oe.$metadata$=Ah("TakeSequence",[ye,Se]),Pe.prototype.c=function(){return ee()},Pe.prototype.i1=function(t){return Me()},Pe.$metadata$=rp("EmptySequence",[ye,Se]),Ae.prototype.c=function(){return this.q5_1()},Ae.$metadata$=Ah(void 0,[ye]),Ie.prototype.equals=function(t){return!(null==t||!Th(t,il))&&t.h()},Ie.prototype.hashCode=function(){return 0},Ie.prototype.toString=function(){return"[]"},Ie.prototype.f=function(){return 0},Ie.prototype.h=function(){return!0},Ie.prototype.h3=function(t){return!1},Ie.prototype.i=function(t){return!1},Ie.prototype.i3=function(t){return t.h()},Ie.prototype.o1=function(t){return this.i3(t)},Ie.prototype.c=function(){return ee()},Ie.$metadata$=rp("EmptySet",[il,cu]),Be.prototype.r1=function(){if(0===this.u5_1)this.v1();else{var t=this.w5_1.x5_1[this.v5_1];this.u1(null==t||Vh(t)?t:Jl());var n;n=(this.v5_1+1|0)%this.w5_1.y5_1|0,this.v5_1=n;var e=this.u5_1;this.u5_1=e-1|0}},Be.$metadata$=Ah(void 0,void 0,void 0,void 0,void 0,jn.prototype),Le.prototype.f=function(){return this.a6_1},Le.prototype.g=function(t){var n;En().e2(t,this.a6_1),n=(this.z5_1+t|0)%this.y5_1|0;var e=this.x5_1[n];return null==e||Vh(e)?e:Jl()},Le.prototype.b6=function(){return this.a6_1===this.y5_1},Le.prototype.c=function(){return new Be(this)},Le.prototype.c6=function(t){for(var n=t.lengththis.a6_1&&(n[this.a6_1]=null),Uh(n)?n:Jl()},Le.prototype.d6=function(){var t,n=this.a6_1;return t=yl(Array(n),null),this.c6(t)},Le.prototype.toArray=function(){return this.d6()},Le.prototype.e6=function(t){var n,e,o=dn(1+(this.y5_1+(this.y5_1>>1)|0)|0,t);return 0===this.z5_1?n=ap(this.x5_1,o):(e=yl(Array(o),null),n=this.c6(e)),new Le(n,this.a6_1)},Le.prototype.f6=function(t){if(this.b6())throw Bp("ring buffer is full");var n;n=(this.z5_1+this.a6_1|0)%this.y5_1|0,this.x5_1[n]=t;var e=this.a6_1;this.a6_1=e+1|0},Le.prototype.g6=function(t){if(!(t>=0))throw Mp(Ll("n shouldn't be negative but it is "+t));if(!(t<=this.a6_1))throw Mp(Ll("n shouldn't be greater than the buffer size: n = "+t+", size = "+this.a6_1));if(t>0){var n=this.z5_1,e=(n+t|0)%this.y5_1|0;n>e?(sp(this.x5_1,null,n,this.y5_1),sp(this.x5_1,null,0,e)):sp(this.x5_1,null,n,e),this.z5_1=e;this.a6_1=this.a6_1-t|0}},Le.$metadata$=Ah("RingBuffer",[tu],void 0,void 0,void 0,In.prototype),Ne.prototype.g7=function(t,n){var e=this.h7(t,n);return e.l7_1=Es(),e.m7_1=null,e.q7()},Ne.prototype.r7=function(t,n){return this.g7(t instanceof me?t:Jl(),n)},Ne.prototype.q7=function(){var t=this.l7_1;t:for(;;)try{switch(this.j7_1){case 0:if(this.k7_1=21,this.v6_1=dn(this.p6_1,1024),this.w6_1=this.q6_1-this.p6_1|0,this.w6_1>=0){this.x6_1=_a(this.v6_1),this.y6_1=0,this.z6_1=this.r6_1,this.j7_1=12;continue t}this.a7_1=Te(this.v6_1),this.b7_1=this.r6_1,this.j7_1=1;continue t;case 1:if(!this.b7_1.d()){this.j7_1=5;continue t}if(this.c7_1=this.b7_1.e(),this.a7_1.f6(this.c7_1),this.a7_1.b6()){if(this.a7_1.a6_1this.q6_1)){this.j7_1=8;continue t}if(this.j7_1=7,(t=this.u6_1.t4(this.s6_1?this.a7_1:da(this.a7_1),this))===so())return t;continue t;case 7:this.a7_1.g6(this.q6_1),this.j7_1=6;continue t;case 8:if(this.d7_1=this.a7_1,this.d7_1.h()){this.j7_1=10;continue t}if(this.j7_1=9,(t=this.u6_1.t4(this.a7_1,this))===so())return t;continue t;case 9:this.j7_1=10;continue t;case 10:this.j7_1=11;continue t;case 11:case 19:this.j7_1=20;continue t;case 12:if(!this.z6_1.d()){this.j7_1=16;continue t}if(this.e7_1=this.z6_1.e(),this.y6_1>0){this.y6_1=this.y6_1-1|0,this.j7_1=12;continue t}this.j7_1=13;continue t;case 13:if(this.x6_1.a(this.e7_1),this.x6_1.f()===this.p6_1){if(this.j7_1=14,(t=this.u6_1.t4(this.x6_1,this))===so())return t;continue t}this.j7_1=15;continue t;case 14:this.s6_1?this.x6_1.s7():this.x6_1=_a(this.p6_1),this.y6_1=this.w6_1,this.j7_1=15;continue t;case 15:this.j7_1=12;continue t;case 16:if(this.f7_1=this.x6_1,this.f7_1.h()){this.j7_1=19;continue t}if(this.t6_1||this.x6_1.f()===this.p6_1){if(this.j7_1=17,(t=this.u6_1.t4(this.x6_1,this))===so())return t;continue t}this.j7_1=18;continue t;case 17:this.j7_1=18;continue t;case 18:this.j7_1=19;continue t;case 20:return Es();case 21:throw this.m7_1}}catch(t){if(21===this.k7_1)throw t;this.j7_1=this.k7_1,this.m7_1=t}},Ne.prototype.h7=function(t,n){var e=new Ne(this.p6_1,this.q6_1,this.r6_1,this.s6_1,this.t6_1,n);return e.u6_1=t,e},Ne.$metadata$=Ah("windowedIterator$slambda",void 0,void 0,void 0,[1],gp.prototype),Re.prototype.v7=function(t,n){return Il(t,n)},Re.prototype.compare=function(t,n){var e=null!=t&&Jh(t)?t:Jl();return this.v7(e,null!=n&&Jh(n)?n:Jl())},Re.$metadata$=rp("NaturalOrderComparator",[Vs]),He.prototype.t=function(t,n){return this.w7_1(t,n)},He.prototype.compare=function(t,n){return this.t(t,n)},He.$metadata$=Ah("sam$kotlin_Comparator$0",[Vs]),Ue.$metadata$=op("Continuation"),Ve.$metadata$=rp("Key",[Ke]),Je.$metadata$=op("ContinuationInterceptor",[Ge]),Ke.$metadata$=op("Key"),Ge.$metadata$=op("Element",[Xe]),Xe.$metadata$=op("CoroutineContext"),Ze.prototype.z7=function(t){return null},Ze.prototype.f8=function(t,n){return t},Ze.prototype.g8=function(t){return t},Ze.prototype.e8=function(t){return this},Ze.prototype.hashCode=function(){return 0},Ze.prototype.toString=function(){return"EmptyCoroutineContext"},Ze.$metadata$=rp("EmptyCoroutineContext",[Xe,cu]),oo.prototype.z7=function(t){for(var n=this;;){var e=n.j8_1.z7(t);if(null!=e)return e;var o=n.i8_1;if(!(o instanceof oo))return o.z7(t);n=o}},oo.prototype.f8=function(t,n){return n(this.i8_1.f8(t,n),this.j8_1)},oo.prototype.e8=function(t){if(null!=this.j8_1.z7(t))return this.i8_1;var n=this.i8_1.e8(t);return n===this.i8_1?this:n===Qe()?this.j8_1:new oo(n,this.j8_1)},oo.prototype.equals=function(t){return this===t||!!(t instanceof oo&&to(t)===to(this))&&function(t,n){for(var e=n;;){if(!no(t,e.j8_1))return!1;var o=e.i8_1;if(!(o instanceof oo))return no(t,Th(o,Ge)?o:Jl());e=o}}(t,this)},oo.prototype.hashCode=function(){return Fl(this.i8_1)+Fl(this.j8_1)|0},oo.prototype.toString=function(){return"["+this.f8("",eo)+"]"},oo.$metadata$=Ah("CombinedContext",[Xe,cu]),ro.prototype.c8=function(t){return this.a8_1(t)},ro.prototype.d8=function(t){return t===this||this.b8_1===t},ro.$metadata$=Ah("AbstractCoroutineContextKey",[Ke]),io.prototype.l2=function(){return this.k8_1},io.$metadata$=Ah("AbstractCoroutineContextElement",[Ge]),uo.$metadata$=Ah("CoroutineSingletons",void 0,void 0,void 0,void 0,_l.prototype),_o.prototype.m8=function(t){return this.l8_1.m8(t)},_o.prototype.q4=function(){return this.l8_1.q4()},_o.prototype.n8=function(t,n){return this.l8_1.n8(t,n)},_o.$metadata$=rp("Default",[cu],void 0,void 0,void 0,yo.prototype),yo.prototype.q4=function(){return this.m8(32)},yo.prototype.n8=function(t,n){mo(t,n);var e=n-t|0;if(e>0||e===Bs().x_1){var o;if((e&(0|-e))===e){var r=31-Dt(e)|0;o=this.m8(r)}else{var i;do{var s=this.q4()>>>1|0;i=s%e|0}while(((s-i|0)+(e-1|0)|0)<0);o=i}return t+o|0}for(;;){var a=this.q4();if(t<=a&&a>>2|0,this.s8_1=this.t8_1,this.t8_1=this.u8_1,this.u8_1=this.v8_1;var n=this.w8_1;this.v8_1=n,t=t^t<<1^n^n<<4,this.w8_1=t;return this.x8_1=this.x8_1+362437|0,t+this.x8_1|0},$o.prototype.m8=function(t){return function(t,n){return(t>>>(32-n|0)|0)&(0|-n)>>31}(this.q4(),t)},$o.$metadata$=Ah("XorWowRandom",[cu],void 0,void 0,void 0,yo.prototype),bo.$metadata$=rp("Companion"),xo.prototype.y8=function(){return this.f1_1},xo.prototype.z8=function(){return this.g1_1},xo.prototype.a9=function(t){return this.f1_1<=t&&t<=this.g1_1},xo.prototype.h=function(){return this.f1_1>this.g1_1},xo.prototype.equals=function(t){return t instanceof xo&&(!(!this.h()||!t.h())||this.f1_1===t.f1_1&&this.g1_1===t.g1_1)},xo.prototype.hashCode=function(){return this.h()?-1:It(31,this.f1_1)+this.g1_1|0},xo.prototype.toString=function(){return this.f1_1+".."+this.g1_1},xo.$metadata$=Ah("IntRange",[Ao,Eo],void 0,void 0,void 0,Oo.prototype),ko.$metadata$=rp("Companion"),jo.prototype.f9=function(t){return Kc(this.g9_1,t)<=0&&Kc(t,this.h9_1)<=0},jo.prototype.h=function(){return Kc(this.g9_1,this.h9_1)>0},jo.prototype.equals=function(t){return t instanceof jo&&(!(!this.h()||!t.h())||!!Nl(new tl(this.g9_1),new tl(t.g9_1))&&Nl(new tl(this.h9_1),new tl(t.h9_1)))},jo.prototype.hashCode=function(){var t,n;return this.h()?t=-1:(n=this.g9_1,t=It(31,n)+this.h9_1|0),t},jo.prototype.toString=function(){return new tl(this.g9_1)+".."+new tl(this.h9_1)},jo.$metadata$=Ah("CharRange",[Ao,Eo],void 0,void 0,void 0,Mo.prototype),Co.prototype.d=function(){return this.l9_1},Co.prototype.q4=function(){var t=this.m9_1;if(t===this.k9_1){if(!this.l9_1)throw Fp();this.l9_1=!1}else{this.m9_1=this.m9_1+this.j9_1|0}return t},Co.$metadata$=Ah("IntProgressionIterator",void 0,void 0,void 0,void 0,de.prototype),zo.prototype.d=function(){return this.p9_1},zo.prototype.s4=function(){var t=this.q9_1;if(t===this.o9_1){if(!this.p9_1)throw Fp();this.p9_1=!1}else{this.q9_1=this.q9_1+this.n9_1|0}return zh(t)},zo.$metadata$=Ah("CharProgressionIterator",void 0,void 0,void 0,void 0,ve.prototype),So.prototype.e1=function(t,n,e){return new Oo(t,n,e)},So.$metadata$=rp("Companion"),Oo.prototype.c=function(){return new Co(this.f1_1,this.g1_1,this.h1_1)},Oo.prototype.h=function(){return this.h1_1>0?this.f1_1>this.g1_1:this.f1_10?this.f1_1+".."+this.g1_1+" step "+this.h1_1:this.f1_1+" downTo "+this.g1_1+" step "+(0|-this.h1_1)},Oo.$metadata$=Ah("IntProgression",[nl]),Po.$metadata$=rp("Companion"),Mo.prototype.c=function(){return new zo(this.g9_1,this.h9_1,this.i9_1)},Mo.prototype.h=function(){return this.i9_1>0?Kc(this.g9_1,this.h9_1)>0:Kc(this.g9_1,this.h9_1)<0},Mo.prototype.equals=function(t){return t instanceof Mo&&(!(!this.h()||!t.h())||!(!Nl(new tl(this.g9_1),new tl(t.g9_1))||!Nl(new tl(this.h9_1),new tl(t.h9_1)))&&this.i9_1===t.i9_1)},Mo.prototype.hashCode=function(){var t;if(this.h())t=-1;else{var n;n=this.g9_1;var e,o=It(31,n);e=this.h9_1,t=It(31,o+e|0)+this.i9_1|0}return t},Mo.prototype.toString=function(){return this.i9_1>0?new tl(this.g9_1)+".."+new tl(this.h9_1)+" step "+this.i9_1:new tl(this.g9_1)+" downTo "+new tl(this.h9_1)+" step "+(0|-this.i9_1)},Mo.$metadata$=Ah("CharProgression",[nl]),Ao.$metadata$=op("ClosedRange"),Eo.$metadata$=op("OpenEndRange"),Io.$metadata$=op("KClassifier"),Do.$metadata$=op("KTypeParameter",[Io]),lr.prototype.e=function(){if(-1===this.ha_1&&cr(this),0===this.ha_1)throw Fp();var t=this.ka_1,n=t instanceof xo?t:Jl();return this.ka_1=null,this.ha_1=-1,n},lr.prototype.d=function(){return-1===this.ha_1&&cr(this),1===this.ha_1},lr.$metadata$=Ah(void 0,[Ss]),hr.prototype.c=function(){return new lr(this)},hr.$metadata$=Ah("DelimitedRangesSequence",[ye]),fr.$metadata$=op("MatchResult"),_r.$metadata$=op("MatchGroupCollection",[hl]),dr.$metadata$=op("MatchNamedGroupCollection",[_r]),$r.prototype.ab=function(t){var n;try{n=Nr(t,!0)}catch(n){throw n instanceof Ip?Ep("Invalid ISO duration string format: '"+t+"'.",n):n}return n},$r.$metadata$=rp("Companion"),Dr.prototype.ib=function(t){return Sr(this.cb_1,t)},Dr.prototype.jb=function(t){return function(t,n){return Sr(t.cb_1,n instanceof Dr?n.cb_1:Jl())}(this,t)},Dr.prototype.toString=function(){return Er(this.cb_1)},Dr.prototype.hashCode=function(){return this.cb_1.hashCode()},Dr.prototype.equals=function(t){return function(t,n){if(!(n instanceof Dr))return!1;var e=n instanceof Dr?n.cb_1:Jl();return!!t.equals(e)}(this.cb_1,t)},Dr.$metadata$=Ah("Duration",[zs]),Gr.$metadata$=Ah("DeepRecursiveScope"),Yr.$metadata$=Ah("DeepRecursiveFunction"),Xr.prototype.b5=function(){return Qe()},Xr.prototype.sb=function(t){this.pb_1=null,this.qb_1=t},Xr.prototype.z4=function(t){return this.sb(t)},Xr.prototype.lb=function(t,n){var e=n;return this.pb_1=Th(e,Ue)?e:Jl(),this.ob_1=t,so()},Xr.prototype.rb=function(){t:for(;;){var t=this.qb_1,n=this.pb_1;if(null==n){var e=new hi(t)instanceof hi?t:Jl();fi(e);var o=e;return null==o||Vh(o)?o:Jl()}var r=n;if(Nl(Kr(),t)){var i;try{var s,a=this.nb_1,u=this.ob_1;i="function"==typeof(s=a)?s(this,u,r):a.tb(this,u,r)}catch(t){if(t instanceof Error){var c;ci(),c=pi(t),r.z4(c),Es();continue t}throw t}var l=i;if(l!==so()){var h,p=null==l||Vh(l)?l:Jl();ci(),h=p,r.z4(h),Es()}}else this.qb_1=Kr(),r.z4(t)}},Xr.$metadata$=Ah("DeepRecursiveScopeImpl",[Ue],void 0,void 0,void 0,Gr.prototype),Qr.$metadata$=op("Lazy"),ti.$metadata$=Ah("LazyThreadSafetyMode",void 0,void 0,void 0,void 0,_l.prototype),ni.prototype.n2=function(){this.vb_1===oi()&&(this.vb_1=Wl(this.ub_1)(),this.ub_1=null);var t=this.vb_1;return null==t||Vh(t)?t:Jl()},ni.prototype.wb=function(){return!(this.vb_1===oi())},ni.prototype.toString=function(){return this.wb()?dl(this.n2()):"Lazy value not initialized yet."},ni.$metadata$=Ah("UnsafeLazyImpl",[Qr,cu]),ei.$metadata$=rp("UNINITIALIZED_VALUE"),ui.prototype.yb=function(t){return t},ui.prototype.zb=function(t){return pi(t)},ui.$metadata$=rp("Companion"),li.prototype.equals=function(t){return t instanceof li&&Nl(this.xb_1,t.xb_1)},li.prototype.hashCode=function(){return Fl(this.xb_1)},li.prototype.toString=function(){return"Failure("+this.xb_1+")"},li.$metadata$=Ah("Failure",[cu]),hi.prototype.toString=function(){return(t=this.ac_1)instanceof li?Ll(t):"Success("+dl(t)+")";var t},hi.prototype.hashCode=function(){return null==(t=this.ac_1)?0:Fl(t);var t},hi.prototype.equals=function(t){return function(t,n){return n instanceof hi&&!!Nl(t,n instanceof hi?n.ac_1:Jl())}(this.ac_1,t)},hi.$metadata$=Ah("Result",[cu]),_i.$metadata$=Ah("NotImplementedError",void 0,void 0,void 0,void 0,qp.prototype),di.prototype.bc=function(){return this.j4_1},di.prototype.cc=function(){return this.k4_1},di.prototype.toString=function(){return"("+this.j4_1+", "+this.k4_1+")"},di.prototype.l4=function(){return this.j4_1},di.prototype.m4=function(){return this.k4_1},di.prototype.hashCode=function(){var t=null==this.j4_1?0:Fl(this.j4_1);return It(t,31)+(null==this.k4_1?0:Fl(this.k4_1))|0},di.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof di))return!1;var n=t instanceof di?t:Jl();return!!Nl(this.j4_1,n.j4_1)&&!!Nl(this.k4_1,n.k4_1)},di.$metadata$=Ah("Pair",[cu]),yi.prototype.toString=function(){return"("+this.dc_1+", "+this.ec_1+", "+this.fc_1+")"},yi.prototype.hashCode=function(){var t=null==this.dc_1?0:Fl(this.dc_1);return t=It(t,31)+(null==this.ec_1?0:Fl(this.ec_1))|0,It(t,31)+(null==this.fc_1?0:Fl(this.fc_1))|0},yi.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof yi))return!1;var n=t instanceof yi?t:Jl();return!!Nl(this.dc_1,n.dc_1)&&!!Nl(this.ec_1,n.ec_1)&&!!Nl(this.fc_1,n.fc_1)},yi.$metadata$=Ah("Triple",[cu]),$i.$metadata$=rp("Companion"),ki.prototype.lc=function(t){return wi(this.kc_1,t)},ki.prototype.jb=function(t){return function(t,n){return wi(t.kc_1,n instanceof ki?n.kc_1:Jl())}(this,t)},ki.prototype.toString=function(){return xi(this.kc_1)},ki.prototype.hashCode=function(){return this.kc_1},ki.prototype.equals=function(t){return function(t,n){return n instanceof ki&&t===(n instanceof ki?n.kc_1:Jl())}(this.kc_1,t)},ki.$metadata$=Ah("UByte",[zs]),Si.prototype.d=function(){return this.nc_10},ea.prototype.q=function(){return this.nf_1},ea.prototype.r=function(){if(!this.p())throw Fp();var t=this;return t.nf_1=t.nf_1-1|0,this.of_1=t.nf_1,this.uf_1.g(this.of_1)},ea.$metadata$=Ah("ListIteratorImpl",[Ps],void 0,void 0,void 0,na.prototype),oa.prototype.zf=function(t,n){En().d2(t,this.yf_1),this.wf_1.zf(this.xf_1+t|0,n);var e=this.yf_1;this.yf_1=e+1|0},oa.prototype.g=function(t){return En().e2(t,this.yf_1),this.wf_1.g(this.xf_1+t|0)},oa.prototype.n4=function(t){En().e2(t,this.yf_1);var n=this.wf_1.n4(this.xf_1+t|0),e=this.yf_1;return this.yf_1=e-1|0,n},oa.prototype.p4=function(t,n){return En().e2(t,this.yf_1),this.wf_1.p4(this.xf_1+t|0,n)},oa.prototype.f=function(){return this.yf_1},oa.prototype.lf=function(){return this.wf_1.lf()},oa.$metadata$=Ah("SubList",[tu],void 0,void 0,void 0,ra.prototype),ra.prototype.a=function(t){return this.lf(),this.zf(this.f(),t),!0},ra.prototype.s7=function(){this.lf(),this.ag(0,this.f())},ra.prototype.c=function(){return new na(this)},ra.prototype.i=function(t){return this.j(t)>=0},ra.prototype.j=function(t){var n=0,e=Xn(this);if(n<=e)do{var o=n;if(n=n+1|0,Nl(this.g(o),t))return o}while(o!==e);return-1},ra.prototype.j2=function(t){var n=Xn(this);if(0<=n)do{var e=n;if(n=n+-1|0,Nl(this.g(e),t))return e}while(0<=n);return-1},ra.prototype.o=function(t){return new ea(this,t)},ra.prototype.bg=function(t,n){return new oa(this,t,n)},ra.prototype.ag=function(t,n){var e=this.o(t),o=n-t|0,r=0;if(r=0){var o,r=this,i=this.ki_1;o=n.substring(0,e),r.ki_1=i+o,this.li();var s=e+1|0;n=n.substring(s)}this.ki_1=this.ki_1+n},ou.prototype.li=function(){console.log(this.ki_1),this.ki_1=""},ou.$metadata$=Ah("BufferedOutputToConsoleLog",void 0,void 0,void 0,void 0,ru.prototype),ru.prototype.gi=function(t){var n,e=this,o=this.ki_1;n=String(t),e.ki_1=o+n},ru.$metadata$=Ah("BufferedOutput",void 0,void 0,void 0,void 0,nu.prototype),su.prototype.b5=function(){return this.mi_1.b5()},su.prototype.z4=function(t){var n=this.ni_1;if(n===co())this.ni_1=t;else{if(n!==so())throw Bp("Already resumed");this.ni_1=lo(),this.mi_1.z4(t)}},su.prototype.oi=function(){if(this.ni_1===co())return this.ni_1=so(),so();var t,n=this.ni_1;if(n===lo())t=so();else{if(n instanceof li)throw n.xb_1;t=n}return t},su.$metadata$=Ah("SafeContinuation",[Ue]),uu.$metadata$=Ah("CancellationException",void 0,void 0,void 0,void 0,Np.prototype),cu.$metadata$=op("Serializable"),_u.$metadata$=op("KCallable"),du.$metadata$=op("KClass",[Io]),vu.prototype.ri=function(){return this.qi_1},vu.prototype.equals=function(t){return t instanceof vu&&Nl(this.ri(),t.ri())},vu.prototype.hashCode=function(){var t=this.si(),n=null==t?null:Rl(t);return null==n?0:n},vu.prototype.toString=function(){return"class "+this.si()},vu.$metadata$=Ah("KClassImpl",[du]),yu.prototype.equals=function(t){return t instanceof yu&&!!vu.prototype.equals.call(this,t)&&this.vi_1===t.vi_1},yu.prototype.si=function(){return this.vi_1},yu.prototype.ti=function(t){return this.wi_1(t)},yu.$metadata$=Ah("PrimitiveKClassImpl",void 0,void 0,void 0,void 0,vu.prototype),mu.prototype.si=function(){return this.yi_1},mu.prototype.ti=function(t){return!1},mu.prototype.ri=function(){throw Gp("There's no native JS class for Nothing type")},mu.prototype.equals=function(t){return t===this},mu.prototype.hashCode=function(){return 0},mu.$metadata$=rp("NothingKClassImpl",void 0,void 0,void 0,void 0,vu.prototype),$u.prototype.si=function(){throw Bp("Unknown simpleName for ErrorKClass")},$u.prototype.ti=function(t){throw Bp("Can's check isInstance on ErrorKClass")},$u.prototype.equals=function(t){return t===this},$u.prototype.hashCode=function(){return 0},$u.$metadata$=Ah("ErrorKClass",[du]),bu.prototype.si=function(){return this.aj_1},bu.prototype.ti=function(t){return ip(t,this.ri())},bu.$metadata$=Ah("SimpleKClassImpl",void 0,void 0,void 0,void 0,vu.prototype),wu.$metadata$=op("KProperty1",[ku]),xu.$metadata$=op("KMutableProperty1",[wu,Cu]),ku.$metadata$=op("KProperty",[_u]),ju.$metadata$=op("KMutableProperty0",[zu,Cu]),Cu.$metadata$=op("KMutableProperty",[ku]),zu.$metadata$=op("KProperty0",[ku]),Su.$metadata$=op("KType"),qu.prototype.bj=function(){return this.ej_1},qu.prototype.cj=function(){return this.fj_1},qu.prototype.dj=function(){return this.gj_1},qu.prototype.equals=function(t){return!!(t instanceof qu&&Nl(this.ej_1,t.ej_1)&&Nl(this.fj_1,t.fj_1))&&this.gj_1===t.gj_1},qu.prototype.hashCode=function(){return It(It(Fl(this.ej_1),31)+Fl(this.fj_1)|0,31)+(0|this.gj_1)|0},qu.prototype.toString=function(){var t=this.ej_1,n=Th(t,du)?t:null,e=null==n?Ll(this.ej_1):null!=n.si()?n.si():"(non-denotable type)",o=this.fj_1.h()?"":en(this.fj_1,", ","<",">",0,null,null,56),r=this.gj_1?"?":"";return vl(e,o)+r},qu.$metadata$=Ah("KTypeImpl",[Su]),Yu.prototype.bk=function(){return this.hj_1},Yu.prototype.ck=function(){return this.ij_1},Yu.prototype.dk=function(){return this.jj_1},Yu.prototype.ek=function(){return this.kj_1},Yu.prototype.fk=function(){return this.lj_1},Yu.prototype.gk=function(){return this.mj_1},Yu.prototype.hk=function(){return this.nj_1},Yu.prototype.ik=function(){return this.oj_1},Yu.prototype.jk=function(){return this.pj_1},Yu.prototype.kk=function(){return this.qj_1},Yu.prototype.lk=function(){return this.rj_1},Yu.prototype.mk=function(){return this.sj_1},Yu.prototype.nk=function(){return this.tj_1},Yu.prototype.ok=function(){return this.uj_1},Yu.prototype.pk=function(){return this.vj_1},Yu.prototype.qk=function(){return this.wj_1},Yu.prototype.rk=function(){return this.xj_1},Yu.prototype.sk=function(){return this.yj_1},Yu.prototype.tk=function(){return this.zj_1},Yu.prototype.uk=function(){return this.ak_1},Yu.prototype.functionClass=function(t){var n,e,o=Ou()[t];if(null==o){var r=new yu(Function,"Function"+t,(e=t,function(t){return"function"==typeof t&&t.length===e}));Ou()[t]=r,n=r}else n=o;return n},Yu.$metadata$=rp("PrimitiveClasses"),Object.defineProperty(Yu.prototype,"anyClass",{configurable:!0,get:Yu.prototype.bk}),Object.defineProperty(Yu.prototype,"numberClass",{configurable:!0,get:Yu.prototype.ck}),Object.defineProperty(Yu.prototype,"nothingClass",{configurable:!0,get:Yu.prototype.dk}),Object.defineProperty(Yu.prototype,"booleanClass",{configurable:!0,get:Yu.prototype.ek}),Object.defineProperty(Yu.prototype,"byteClass",{configurable:!0,get:Yu.prototype.fk}),Object.defineProperty(Yu.prototype,"shortClass",{configurable:!0,get:Yu.prototype.gk}),Object.defineProperty(Yu.prototype,"intClass",{configurable:!0,get:Yu.prototype.hk}),Object.defineProperty(Yu.prototype,"floatClass",{configurable:!0,get:Yu.prototype.ik}),Object.defineProperty(Yu.prototype,"doubleClass",{configurable:!0,get:Yu.prototype.jk}),Object.defineProperty(Yu.prototype,"arrayClass",{configurable:!0,get:Yu.prototype.kk}),Object.defineProperty(Yu.prototype,"stringClass",{configurable:!0,get:Yu.prototype.lk}),Object.defineProperty(Yu.prototype,"throwableClass",{configurable:!0,get:Yu.prototype.mk}),Object.defineProperty(Yu.prototype,"booleanArrayClass",{configurable:!0,get:Yu.prototype.nk}),Object.defineProperty(Yu.prototype,"charArrayClass",{configurable:!0,get:Yu.prototype.ok}),Object.defineProperty(Yu.prototype,"byteArrayClass",{configurable:!0,get:Yu.prototype.pk}),Object.defineProperty(Yu.prototype,"shortArrayClass",{configurable:!0,get:Yu.prototype.qk}),Object.defineProperty(Yu.prototype,"intArrayClass",{configurable:!0,get:Yu.prototype.rk}),Object.defineProperty(Yu.prototype,"longArrayClass",{configurable:!0,get:Yu.prototype.sk}),Object.defineProperty(Yu.prototype,"floatArrayClass",{configurable:!0,get:Yu.prototype.tk}),Object.defineProperty(Yu.prototype,"doubleArrayClass",{configurable:!0,get:Yu.prototype.uk}),nc.$metadata$=op("Appendable"),ic.prototype.ee=function(){return this.ga_1.length},ic.prototype.fe=function(t){var n=this.ga_1;if(!(t>=0&&t<=Xo(n)))throw Zp("index: "+t+", length: "+this.ee()+"}");return Ol(n,t)},ic.prototype.ge=function(t,n){return this.ga_1.substring(t,n)},ic.prototype.r9=function(t){return this.ga_1=this.ga_1+new tl(t),this},ic.prototype.b=function(t){return this.ga_1=this.ga_1+dl(t),this},ic.prototype.vk=function(t,n,e){var o=t;return this.hb(null==o?"null":o,n,e)},ic.prototype.eb=function(t){return this.ga_1=this.ga_1+dl(t),this},ic.prototype.fb=function(t){var n=this,e=this.ga_1,o=t;return n.ga_1=e+(null==o?"null":o),this},ic.prototype.gb=function(t,n){En().d2(t,this.ee());var e,o=this.ga_1.substring(0,t)+new tl(n);return e=this.ga_1.substring(t),this.ga_1=o+e,this},ic.prototype.wk=function(t){if(t<0)throw Mp("Negative new length: "+t+".");if(t<=this.ee()){var n;n=this.ga_1.substring(0,t),this.ga_1=n}else{var e=this.ee();if(eMl(t))throw Zp("Start index out of bounds: "+n+", input length: "+Ml(t));return $c(this.z9_1,Ll(t),n,this.z9_1)},mc.prototype.el=function(t,n,e,o){return 0!=(2&e)&&(n=0),this.dl(t,n)},mc.prototype.fl=function(t,n){if(n<0||n>Ml(t))throw Zp("Start index out of bounds: "+n+", input length: "+Ml(t));return e=this,o=t,r=n,new je((function(){return e.dl(o,r)}),vc);var e,o,r},mc.prototype.gl=function(t,n,e,o){return 0!=(2&e)&&(n=0),this.fl(t,n)},mc.prototype.da=function(t,n){if(!tr(n,92,!1,2)&&!tr(n,36,!1,2)){var e=Ll(t),o=this.z9_1;return e.replace(o,n)}return this.hl(t,yc(n))},mc.prototype.hl=function(t,n){var e=this.el(t,0,2,null);if(null==e)return Ll(t);var o=0,r=Ml(t),i=ec();do{var s=Wl(e);i.vk(t,o,s.ra().y8()),i.b(n(s)),o=s.ra().z8()+1|0,e=s.e()}while(o>>e|0|t.c1_1<<(32-e|0),t.c1_1>>>e|0):new Zl(32===e?t.c1_1:t.c1_1>>>(e-32|0)|0,0)}(this,t)},Zl.prototype.xc=function(t){return new Zl(this.b1_1&t.b1_1,this.c1_1&t.c1_1)},Zl.prototype.fn=function(t){return new Zl(this.b1_1|t.b1_1,this.c1_1|t.c1_1)},Zl.prototype.bb=function(t){return new Zl(this.b1_1^t.b1_1,this.c1_1^t.c1_1)},Zl.prototype.en=function(){return new Zl(~this.b1_1,~this.c1_1)},Zl.prototype.gn=function(){return xh(this.b1_1)},Zl.prototype.hn=function(){return jh(this.b1_1)},Zl.prototype.wa=function(){return this.b1_1},Zl.prototype.pi=function(){return lh(this)},Zl.prototype.valueOf=function(){return this.pi()},Zl.prototype.equals=function(t){return t instanceof Zl&&hh(this,t)},Zl.prototype.hashCode=function(){return t=this,wh(),t.b1_1^t.c1_1;var t},Zl.prototype.toString=function(){return ph(this,10)},Zl.$metadata$=Ah("Long",[zs],void 0,void 0,void 0,Ms.prototype),pp.$metadata$=rp("Digit"),_p.$metadata$=rp("Letter"),vp.$metadata$=rp("OtherLowercase"),gp.prototype.b5=function(){return Wl(this.o7_1)},gp.prototype.t7=function(){var t,n=this.p7_1;if(null==n){var e=this.b5().z7(We()),o=null==e?null:e.x7(this),r=null==o?this:o;this.p7_1=r,t=r}else t=n;return t},gp.prototype.u7=function(t){var n,e=this;if(si(t))n=null;else{var o=t;n=null==o||Vh(o)?o:Jl()}for(var r=n,i=ai(t);;){var s=e;null==i?s.l7_1=r:(s.j7_1=s.k7_1,s.m7_1=i);try{var a=s.q7();if(a===so())return Es();r=a,i=null}catch(t){r=null,i=t}mp(s);var u=Wl(s.i7_1);if(!(u instanceof gp)){if(null!=i){var c,l=Wl(i);ci(),c=pi(l),u.z4(c),Es()}else{var h,p=r;ci(),h=p,u.z4(h),Es()}return Es()}e=u,Es()}},gp.prototype.z4=function(t){return this.u7(t)},gp.$metadata$=Ah("CoroutineImpl",[Ue]),$p.prototype.b5=function(){throw Bp("This continuation is already complete")},$p.prototype.u7=function(t){throw Bp("This continuation is already complete")},$p.prototype.z4=function(t){return this.u7(t)},$p.prototype.toString=function(){return"This continuation is already complete"},$p.$metadata$=rp("CompletedContinuation",[Ue]),xp.prototype.q7=function(){if(null!=this.m7_1)throw this.m7_1;var t;return"function"==typeof(t=this.xn_1)?t(this.yn_1,this.wn_1):this.xn_1.r7(this.yn_1,this.wn_1)},xp.$metadata$=Ah(void 0,void 0,void 0,void 0,void 0,gp.prototype),kp.prototype.q7=function(){if(null!=this.m7_1)throw this.m7_1;return this.ho_1()},kp.$metadata$=Ah(void 0,void 0,void 0,void 0,void 0,gp.prototype),zp.$metadata$=Ah("Exception",void 0,void 0,void 0,void 0,Error.prototype),qp.$metadata$=Ah("Error",void 0,void 0,void 0,void 0,Error.prototype),Ip.$metadata$=Ah("IllegalArgumentException",void 0,void 0,void 0,void 0,Jp.prototype),Np.$metadata$=Ah("IllegalStateException",void 0,void 0,void 0,void 0,Jp.prototype),Hp.$metadata$=Ah("NoSuchElementException",void 0,void 0,void 0,void 0,Jp.prototype),Jp.$metadata$=Ah("RuntimeException",void 0,void 0,void 0,void 0,zp.prototype),Yp.$metadata$=Ah("UnsupportedOperationException",void 0,void 0,void 0,void 0,Jp.prototype),Xp.$metadata$=Ah("ConcurrentModificationException",void 0,void 0,void 0,void 0,Jp.prototype),Qp.$metadata$=Ah("IndexOutOfBoundsException",void 0,void 0,void 0,void 0,Jp.prototype),nf.$metadata$=Ah("AssertionError",void 0,void 0,void 0,void 0,qp.prototype),of.$metadata$=Ah("ArithmeticException",void 0,void 0,void 0,void 0,Jp.prototype),sf.$metadata$=Ah("NumberFormatException",void 0,void 0,void 0,void 0,Ip.prototype),uf.$metadata$=Ah("NullPointerException",void 0,void 0,void 0,void 0,Jp.prototype),lf.$metadata$=Ah("NoWhenBranchMatchedException",void 0,void 0,void 0,void 0,Jp.prototype),pf.$metadata$=Ah("ClassCastException",void 0,void 0,void 0,void 0,Jp.prototype),_f.$metadata$=Ah("UninitializedPropertyAccessException",void 0,void 0,void 0,void 0,Jp.prototype),op("Function1"),op("Function0"),$f.$metadata$=op("SuspendFunction1"),bf.$metadata$=op("SuspendFunction2"),oo.prototype.g8=Bt,io.prototype.z7=Lt,io.prototype.f8=Nt,io.prototype.e8=Ft,io.prototype.g8=Bt,Na.prototype.uh=function(){var t=Object.create(null);return t.foo=1,yf(t,"foo"),t},W=null,Ot=0,t.$_$=t.$_$||{},t.$_$.a=function(t,n,e){return new qu(t,cp(n),e)},t.$_$.b=function(t,n){if(t instanceof vu&&n instanceof vu){var e,o=n.ri().$metadata$,r=null==o?null:o.associatedObjectKey;if(null==(e=null==r?null:r))return null;var i=e,s=t.ri().$metadata$,a=null==s?null:s.associatedObjects;if(null==a)return null;var u=a[i];return null==u?null:u()}return null},t.$_$.c=function(t){var n;switch(typeof t){case"string":n=Xu().rj_1;break;case"number":n=vf(t,0)===t?Xu().nj_1:Xu().pj_1;break;case"boolean":n=Xu().kj_1;break;case"function":var e;e=t,n=Xu().functionClass(e.length);break;default:var o;if(Gh(t))o=Xu().tj_1;else if(Zh(t))o=Xu().uj_1;else if(Yh(t))o=Xu().vj_1;else if(Xh(t))o=Xu().wj_1;else if(Qh(t))o=Xu().xj_1;else if(np(t))o=Xu().yj_1;else if(tp(t))o=Xu().zj_1;else if(ep(t))o=Xu().ak_1;else if(Th(t,du))o=Zu(du);else if(Uh(t))o=Xu().qj_1;else{var r=Object.getPrototypeOf(t).constructor;o=r===Object?Xu().hj_1:r===Error?Xu().sj_1:Qu(r)}n=o}return n},t.$_$.d=Zu,t.$_$.e=function(t){var n=0,e=0,o=t.length-1|0;if(e<=o)do{var r=e;e=e+1|0,n=n+t[r].length|0}while(r!==o);var i=t[0],s=new i.constructor(n);if(null!=i.$type$){var a=i.$type$;s.$type$=a}n=0;var u=0,c=t.length-1|0;if(u<=c)do{var l=u;u=u+1|0;var h=t[l],p=0,f=h.length-1|0;if(p<=f)do{var _=p;p=p+1|0;var d=n;n=d+1|0,s[d]=h[_]}while(_!==f)}while(l!==c);return s},t.$_$.f=function(){return function(){if(ot)return Es();ot=!0,new gc("IGNORE_CASE",0,"i"),et=new gc("MULTILINE",1,"m")}(),et},t.$_$.g=Rc,t.$_$.h=function(){return function(){if(P)return Es();P=!0,new ti("SYNCHRONIZED",0),O=new ti("PUBLICATION",1),new ti("NONE",2)}(),O},t.$_$.i=function(t,n){return null==t||Vh(t)?t:Jl()},t.$_$.j=function(t,n,e,o,r,i){return 0!=(2&r)&&(e=0),0!=(4&r)&&(o=t.length),function(t,n,e,o){En().f2(e,o,t.length),t.fill(n,e,o)}(t,n,e,o)},t.$_$.k=en,t.$_$.l=Vt,t.$_$.m=function(t,n,e,o,r){return 0!=(2&o)&&(e=!1),Jo(t,n,e)},t.$_$.n=er,t.$_$.o=Wo,t.$_$.p=function(t,n,e,o,r,i){return 0!=(4&r)&&(o=!1),function(t,n,e,o){var r=new RegExp(dc().bl(n),o?"gui":"gu"),i=dc().cl(e);return t.replace(r,i)}(t,n,e,o)},t.$_$.q=function(t,n,e,o,r,i){return 0!=(2&r)&&(e=!1),0!=(4&r)&&(o=0),Vo(t,n,e,o)},t.$_$.r=Oc,t.$_$.s=_a,t.$_$.t=fa,t.$_$.u=da,t.$_$.v=Oa,t.$_$.w=Sa,t.$_$.x=function(t){return function(t,n){return za(n),n.sg(t),n}(t,Object.create(Pa.prototype))},t.$_$.y=Aa,t.$_$.z=function(){return t=Object.create(Ia.prototype),pa.call(t),Ia.call(t),t.ih_1=Sa(),t;var t},t.$_$.a1=function(t){return function(t,n){return pa.call(n),Ia.call(n),n.ih_1=Oa(t.f()),n.k1(t),n}(t,Object.create(Ia.prototype))},t.$_$.b1=Ka,t.$_$.c1=Wa,t.$_$.d1=function(t){return function(t,n){return za(n),Ga.call(n),n.e4_1=Sa(),n.sg(t),n}(t,Object.create(Ga.prototype))},t.$_$.e1=Ya,t.$_$.f1=function(t){return function(t,n){return Ea(Wa(),n),Qa.call(n),n.k1(t),n}(t,Object.create(Qa.prototype))},t.$_$.g1=function t(n){var e=function(t,n){return Tp(t,n),uu.call(n),n}(n,Object.create(uu.prototype));return Hl(e,t),e},t.$_$.h1=au,t.$_$.i1=function t(n,e){var o=au(n,e,Object.create(uu.prototype));return Hl(o,t),o},t.$_$.j1=function(t){return function(t,n){return su.call(n,t,co()),n}(t,Object.create(su.prototype))},t.$_$.k1=function(t){return function(t,n){return mc.call(n,t,Ee()),n}(t,Object.create(mc.prototype))},t.$_$.l1=function(t,n){return function(t,n,e){return mc.call(e,t,Ws(n)),e}(t,n,Object.create(mc.prototype))},t.$_$.m1=ec,t.$_$.n1=rc,t.$_$.o1=function t(){var n,e=(Up(n=Object.create(Xp.prototype)),Xp.call(n),n);return Hl(e,t),e},t.$_$.p1=function t(n){var e=function(t,n){return Vp(t,n),Xp.call(n),n}(n,Object.create(Xp.prototype));return Hl(e,t),e},t.$_$.q1=function(t,n,e){return Ul(e,t,n),qp.call(e),e},t.$_$.r1=Op,t.$_$.s1=Pp,t.$_$.t1=Mp,t.$_$.u1=Ap,t.$_$.v1=Dp,t.$_$.w1=Bp,t.$_$.x1=function t(n,e){var o=Lp(n,e,Object.create(Np.prototype));return Hl(o,t),o},t.$_$.y1=Zp,t.$_$.z1=Fp,t.$_$.a2=Wp,t.$_$.b2=function t(n,e){var o=Wp(n,e,Object.create(Jp.prototype));return Hl(o,t),o},t.$_$.c2=Kp,t.$_$.d2=Gp,t.$_$.e2=function(t){var n=rc();jr(t)&&n.r9(45),n.fb("PT");var e=zr(t),o=Ar(e),r=qr(e),i=Or(e),s=Pr(e),a=o;Cr(t)&&(a=new Zl(1316134911,2328));var u=!a.equals(new Zl(0,0)),c=0!==i||!(0===s),l=0!==r||!!c&&u;return u&&n.eb(a).r9(72),l&&n.eb(r).r9(77),(c||!u&&!l)&&(Ir(n,0,i,s,9,"S",!0),Es()),n.toString()},t.$_$.f2=function(t){return function(t){var n,e=yr(t);if(mr(t))n=e;else{var o,r;if(Xl(),o=new Zl(-1,2147483647).t9(Sh(1e6)),e.d1(o)>0)Xl(),n=new Zl(-1,2147483647);else Xl(),r=new Zl(0,-2147483648).t9(Sh(1e6)),e.d1(r)<0?(Xl(),n=new Zl(0,-2147483648)):n=Hr(e)}return n}(t)},t.$_$.g2=Jc,t.$_$.h2=Gc,t.$_$.i2=Yc,t.$_$.j2=Xc,t.$_$.k2=ri,t.$_$.l2=ai,t.$_$.m2=si,t.$_$.n2=ii,t.$_$.o2=mi,t.$_$.p2=gi,t.$_$.q2=xi,t.$_$.r2=ji,t.$_$.s2=function(t){return new Int8Array(t)},t.$_$.t2=function(t,n){return t[n]},t.$_$.u2=function(t,n,e){var o;o=e,t[n]=o},t.$_$.v2=zi,t.$_$.w2=Ci,t.$_$.x2=Mi,t.$_$.y2=Ai,t.$_$.z2=Ti,t.$_$.a3=function(t){return new Int32Array(t)},t.$_$.b3=Li,t.$_$.c3=function(t,n){return t[n]},t.$_$.d3=function(t,n,e){var o;o=e,t[n]=o},t.$_$.e3=Fi,t.$_$.f3=Ni,t.$_$.g3=Wi,t.$_$.h3=Ji,t.$_$.i3=Xi,t.$_$.j3=function(t){return bl(t)},t.$_$.k3=Qi,t.$_$.l3=function(t,n){return t[n]},t.$_$.m3=function(t,n,e){var o;o=e,t[n]=o},t.$_$.n3=ns,t.$_$.o3=ts,t.$_$.p3=ss,t.$_$.q3=as,t.$_$.r3=hs,t.$_$.s3=function(t){return new Int16Array(t)},t.$_$.t3=fs,t.$_$.u3=function(t,n){return t[n]},t.$_$.v3=function(t,n,e){var o;o=e,t[n]=o},t.$_$.w3=ds,t.$_$.x3=_s,t.$_$.y3=We,t.$_$.z3=Qe,t.$_$.a4=function(){return null==V&&new Us,V},t.$_$.b4=function(){return null==L&&new Is,L},t.$_$.c4=Rs,t.$_$.d4=Ns,t.$_$.e4=Bs,t.$_$.f4=function(){return null==N&&new Ds,N},t.$_$.g4=function(){return null==U&&new Hs,U},t.$_$.h4=vo,t.$_$.i4=Xu,t.$_$.j4=br,t.$_$.k4=Qc,t.$_$.l4=Xl,t.$_$.m4=ci,t.$_$.n4=bi,t.$_$.o4=Ii,t.$_$.p4=Gi,t.$_$.q4=cs,t.$_$.r4=Es,t.$_$.s4=kn,t.$_$.t4=In,t.$_$.u4=Un,t.$_$.v4=ra,t.$_$.w4=Jn,t.$_$.x4=ma,t.$_$.y4=hl,t.$_$.z4=Pa,t.$_$.a5=Ia,t.$_$.b5=nl,t.$_$.c5=Ss,t.$_$.d5=Ga,t.$_$.e5=Qa,t.$_$.f5=Os,t.$_$.g5=el,t.$_$.h5=ul,t.$_$.i5=cl,t.$_$.j5=ll,t.$_$.k5=Ps,t.$_$.l5=rl,t.$_$.m5=al,t.$_$.n5=ol,t.$_$.o5=il,t.$_$.p5=function(t,n){return t.k1(cp(n))},t.$_$.q5=fe,t.$_$.r5=function(t,n,e,o,r){En().f2(o,r,t.length);var i=r-o|0;if(En().f2(e,e+i|0,n.length),Tt(n)&&Tt(t)){var s=t.subarray(o,r);n.set(s,e)}else if(t!==n||e<=o){var a=0;if(a0&&n>0))throw Mp(Ll(t!==n?"Both size "+t+" and step "+n+" must be greater than zero.":"size "+t+" must be greater than zero."))}(n,e),Th(t,tu)&&Th(t,el)){var r=t.f(),i=_a((r/e|0)+(0==(r%e|0)?0:1)|0),s=0;t:for(;0<=s&&s=0))throw Mp(Ll("Invalid new array size: "+n+"."));return Kl(t,new Int16Array(n))},t.$_$.b6=function(t,n){if(!(n>=0))throw Mp(Ll("Invalid new array size: "+n+"."));var e=Gl(t,n,new Zl(0,0));return e.$type$="LongArray",e},t.$_$.c6=function(t,n){if(!(n>=0))throw Mp(Ll("Invalid new array size: "+n+"."));var e=Gl(t,n,!1);return e.$type$="BooleanArray",e},t.$_$.d6=function(t,n){if(!(n>=0))throw Mp(Ll("Invalid new array size: "+n+"."));var e=Kl(t,$l(n));return e.$type$="CharArray",e},t.$_$.e6=function(t,n){if(!(n>=0))throw Mp(Ll("Invalid new array size: "+n+"."));return Kl(t,new Int8Array(n))},t.$_$.f6=function(t,n){if(!(n>=0))throw Mp(Ll("Invalid new array size: "+n+"."));return Kl(t,new Float64Array(n))},t.$_$.g6=function(t,n){if(!(n>=0))throw Mp(Ll("Invalid new array size: "+n+"."));return Kl(t,new Float32Array(n))},t.$_$.h6=ap,t.$_$.i6=function(t,n){if(!(n>=0))throw Mp(Ll("Invalid new array size: "+n+"."));return Kl(t,new Int32Array(n))},t.$_$.j6=Xs,t.$_$.k6=Kn,t.$_$.l6=ce,t.$_$.m6=Ee,t.$_$.n6=sp,t.$_$.o6=function(t){return t.h()?null:t.g(0)},t.$_$.p6=function(t){if(Th(t,el))return t.h()?null:t.g(0);var n=t.c();return n.d()?n.e():null},t.$_$.q6=tn,t.$_$.r6=function(t){if(Th(t,el))return tn(t);var n=t.c();if(!n.d())throw Rp("Collection is empty.");return n.e()},t.$_$.s6=function(t){for(var n=fa(),e=t.c();e.d();)fe(n,e.e());return n},t.$_$.t6=function(t,n){return function(t,n){if(Th(t,ue))return t.v3(n);var e=t.b3(n);if(null==e&&!t.v2(n))throw Rp("Key "+n+" is missing in the map.");return null==e||Vh(e)?e:Jl()}(t,n)},t.$_$.u6=Rt,t.$_$.v6=function(t){return new xo(0,function(t){return t.length-1|0}(t))},t.$_$.w6=function(t){return new xo(0,Wt(t))},t.$_$.x6=function(t){return t.length-1|0},t.$_$.y6=Xn,t.$_$.z6=Ht,t.$_$.a7=function(t){return t.h()?null:t.g(t.f()-1|0)},t.$_$.b7=function(t){if(t.h())throw Rp("List is empty.");return t.g(Xn(t))},t.$_$.c7=Js,t.$_$.d7=function(t){return t.length>0?cp(t):Kn()},t.$_$.e7=Ks,t.$_$.f7=function(t){return t.length>0?(n=t,pe(e=Ka(t.length),n),e):ce();var n,e},t.$_$.g7=function(t){var n=t.c();if(!n.d())throw Fp();for(var e=n.e();n.d();){var o=n.e();Il(e,o)>0&&(e=o)}return e},t.$_$.h7=Gn,t.$_$.i7=function(t){return Jt(t,Za(t.length))},t.$_$.j7=function(t,n){return function(t,n){var e=t.slice();e.length=e.length+n.f()|0,void 0!==t.$type$&&(e.$type$=t.$type$);for(var o=t.length,r=n.c();r.d();){var i=r.e(),s=o;o=s+1|0,e[s]=i}return e}(t,n)},t.$_$.k7=function(t,n){var e=function(t){return Th(t,hl)?t.f():null}(n),o=null==e?null:t.f()+e|0,r=Za(null==o?It(t.f(),2):o);return r.k1(t),fe(r,n),r},t.$_$.l7=function(t,n){return function(t,n,e){if(!Th(t,tu))return _e(Th(t,pl)?t:Jl(),n,e);var o=0,r=0,i=Xn(t);if(r<=i)do{var s=r;r=r+1|0;var a=t.g(s);n(a)!==e&&(o!==s&&t.p4(o,a),o=o+1|0)}while(s!==i);if(o0?function(t){switch(t.length){case 0:return Ee();case 1:return Ws(t[0]);default:return Jt(t,Za(t.length))}}(t):Ee()},t.$_$.q7=function(t){return 1===t.f()?t.g(0):null},t.$_$.r7=function(t,n){Zs(t,n)},t.$_$.s7=function(t){if(Th(t,hl)){if(t.f()<=1)return Zt(t);var n=Xs(t),e=Uh(n)?n:Jl();return function(t){t.length>1&&function(t){if(ga()){var n=wa;t.sort(n)}else $a(t,0,Wt(t),Fe())}(t)}(e),cp(e)}var o=rn(t);return function(t){Zs(t,Fe())}(o),o},t.$_$.t7=function(t){for(var n=gl(t.f()),e=0,o=t.c();o.d();){var r=o.e(),i=e;e=i+1|0,n[i]=r}return n},t.$_$.u7=function(t){for(var n=new Float32Array(t.f()),e=0,o=t.c();o.d();){var r=o.e(),i=e;e=i+1|0,n[i]=r}return n},t.$_$.v7=function(t){return an(t,Aa(re(t,12)))},t.$_$.w7=function(t){for(var n=new Int32Array(t.f()),e=0,o=t.c();o.d();){var r=o.e(),i=e;e=i+1|0,n[i]=r}return n},t.$_$.x7=Zt,t.$_$.y7=function(t){switch(t.length){case 0:return Kn();case 1:return Js(t[0]);default:return function(t){return da(function(t){return new te(t,!1)}(t))}(t)}},t.$_$.z7=function(t){if(Th(t,hl)){var n;switch(t.f()){case 0:n=ce();break;case 1:e=Th(t,el)?t.g(0):t.c().e(),pe(r=Oa((o=[e]).length),o),n=r;break;default:n=he(t,Ka(t.f()))}return n}var e,o,r;return function(t){var n;n=0===t.f()?ce():t;return n}(he(t,Wa()))},t.$_$.a8=Qt,t.$_$.b8=on,t.$_$.c8=function(t){return new ie((n=t,function(){return ml(n)}));var n},t.$_$.d8=function(t,n){return t===n?0:null==t?-1:null==n?1:Il(null!=t&&Jh(t)?t:Jl(),n)},t.$_$.e8=uu,t.$_$.f8=so,t.$_$.g8=wp,t.$_$.h8=bp,t.$_$.i8=io,t.$_$.j8=ro,t.$_$.k8=function(t){if(t instanceof ro){var n;if(t.d8(this.l2())){var e=t.c8(this);n=null!=e&&Th(e,Ge)?e:null}else n=null;return n}return We()===t?Th(this,Ge)?this:Jl():null},t.$_$.l8=function(t){return t instanceof ro?t.d8(this.l2())&&null!=t.c8(this)?Qe():this:We()===t?Qe():this},t.$_$.m8=Je,t.$_$.n8=Ue,t.$_$.o8=Nt,t.$_$.p8=Lt,t.$_$.q8=Ft,t.$_$.r8=Ge,t.$_$.s8=Ke,t.$_$.t8=Bt,t.$_$.u8=gp,t.$_$.v8=$f,t.$_$.w8=bf,t.$_$.x8=function(t,n,e){var o,r=bp(wp(t,n,e));ci(),o=Es(),r.z4(o),Es()},t.$_$.y8=function(t){iu(),(iu(),K).hi(t)},t.$_$.z8=function(t){return Object.prototype.toString.call(t)},t.$_$.a9=ml,t.$_$.b9=gl,t.$_$.c9=Hl,t.$_$.d9=$l,t.$_$.e9=Ol,t.$_$.f9=Ml,t.$_$.g9=Al,t.$_$.h9=Ah,t.$_$.i9=Il,t.$_$.j9=Nl,t.$_$.k9=Ul,t.$_$.l9=yl,t.$_$.m9=function(t,n,e,o){return Mh(),Ph(t,0,n,o,e?o:null)},t.$_$.n9=Sl,t.$_$.o9=Ph,t.$_$.p9=Rl,t.$_$.q9=Fl,t.$_$.r9=function(t){return new xl(t)},t.$_$.s9=op,t.$_$.t9=Uh,t.$_$.u9=Gh,t.$_$.v9=Yh,t.$_$.w9=Zh,t.$_$.x9=Kh,t.$_$.y9=ep,t.$_$.z9=tp,t.$_$.aa=Qh,t.$_$.ba=Th,t.$_$.ca=np,t.$_$.da=Vh,t.$_$.ea=Xh,t.$_$.fa=fu,t.$_$.ga=bl,t.$_$.ha=qh,t.$_$.ia=zh,t.$_$.ja=function(t){return+t},t.$_$.ka=kh,t.$_$.la=rp,t.$_$.ma=xh,t.$_$.na=Sh,t.$_$.oa=jh,t.$_$.pa=Ll,t.$_$.qa=vn,t.$_$.ra=dn,t.$_$.sa=function(t,n){try{return function(t,n){if(n.h())throw Mp("Cannot get random in empty range: "+n);return n.g1_1Bs().x_1?t.n8(n.f1_1-1|0,n.g1_1)+1|0:t.q4()}(n,t)}catch(t){throw t instanceof Ip?Rp(t.message):t}},t.$_$.ta=function(t,n){return function(t,n){if(!t)throw Mp("Step must be positive, was: "+Ll(n)+".")}(n>0,n),qo().e1(t.f1_1,t.g1_1,t.h1_1>0?n:0|-n)},t.$_$.ua=pn,t.$_$.va=du,t.$_$.wa=ju,t.$_$.xa=xu,t.$_$.ya=wu,t.$_$.za=Do,t.$_$.ab=me,t.$_$.bb=function(t){var n=t.c();if(!n.d())return null;for(var e=n.e();n.d();)e=n.e();return e},t.$_$.cb=function(t){return new we(t)},t.$_$.db=Jo,t.$_$.eb=function(t,n,e){if(null==t)return null==n;if(null==n)return!1;if(!e)return t==n;if(t.length!==n.length)return!1;var o=0,r=t.length;if(or)return 0;var s=3&i;if(0===s){var a=2,u=o,c=0;if(c<=1)do{if(c=c+1|0,(u=u+(i>>a&127)|0)>n)return 3;if((u=u+(i>>(a=a+7|0)&127)|0)>n)return 0;a=a+7|0}while(c<=1);return 3}if(i<=7)return s;var l=n-o|0;return i>>It(2,i<=31?l%2|0:l)&3}(t)||function(t){var n=hp(yp().mn_1,t);return n>=0&&t<(yp().mn_1[n]+yp().nn_1[n]|0)}(Yc(t))}(t)},t.$_$.hb=function(t){var n;switch(Ml(t)){case 0:throw Rp("Char sequence is empty.");case 1:n=Ol(t,0);break;default:throw Mp("Char sequence has more than one element.")}return n},t.$_$.ib=function(t){return hn(t)},t.$_$.jb=function(t){return null!=t&&"true"===t.toLowerCase()},t.$_$.kb=function(t){var n=+t;return hu(n)&&!fc(t)||0===n&&Pc(t)?null:n},t.$_$.lb=lc,t.$_$.mb=Ro,t.$_$.nb=pc,t.$_$.ob=Fo,t.$_$.pb=hc,t.$_$.qb=function(t){var n,e=function(t){return function(t,n){var e=bs(t,n);if(null==(null==e?null:new Bi(e)))return null;var o=e;bi();var r=255;return ws(o,r)>0?null:xh(o)}(t,10)}(t);return null==(null==e?null:new ki(e))?Ho(t):n=e,n},t.$_$.rb=function(t){var n,e=function(t){return bs(t,10)}(t);return null==(null==e?null:new Bi(e))?Ho(t):n=e,n},t.$_$.sb=$s,t.$_$.tb=function(t){var n,e=$s(t);return null==(null==e?null:new Zi(e))?Ho(t):n=e,n},t.$_$.ub=function(t){var n,e=function(t){return function(t,n){var e=bs(t,n);if(null==(null==e?null:new Bi(e)))return null;var o=e;cs();var r=65535;return ws(o,r)>0?null:jh(o)}(t,10)}(t);return null==(null==e?null:new ps(e))?Ho(t):n=e,n},t.$_$.vb=function(t){return function(t,n){for(var e=function(t){return gn(Yo(t))}(t),o=fa(),r=e.c();r.d();){var i=r.e();Uo(i)&&o.a(i)}for(var s=o,a=_a(re(s,10)),u=s.c();u.d();){var c=u.e();a.a(Lo(c))}for(var l=function(t){var n=t.c();if(!n.d())return null;for(var e=n.e();n.d();){var o=n.e();Il(e,o)>0&&(e=o)}return e}(a),h=null==l?0:l,p=t.length+It(n.length,e.f())|0,f=function(t){return 0===Ml(t)?No:(n=t,function(t){return n+t});var n}(n),_=Xn(e),d=fa(),v=0,y=e.c();y.d();){var m=y.e(),g=v;v=g+1|0;var $,b,w,x=Ys(g);0!==x&&x!==_||!Pc(m)?$=null==(w=null==(b=wn(m,h))?null:f(b))?m:w:$=null;var k=$;null==k||(d.a(k),Es())}return function(t,n,e,o,r,i,s,a,u,c){return 0!=(2&u)&&(e=", "),0!=(4&u)&&(o=""),0!=(8&u)&&(r=""),0!=(16&u)&&(i=-1),0!=(32&u)&&(s="..."),0!=(64&u)&&(a=null),sn(t,n,e,o,r,i,s,a)}(d,ec(p),"\n",null,null,0,null,null,124).toString()}(t,"")},t.$_$.wb=function(t){var n;t:{var e=0,o=Ml(t)-1|0;if(e<=o)do{var r=e;if(e=e+1|0,!ac(Ol(t,r))){n=Al(t,r,Ml(t));break t}}while(e<=o);n=""}return n},t.$_$.xb=function(t){var n=0,e=Ml(t)-1|0,o=!1;t:for(;n<=e;){var r=ac(Ol(t,o?e:n));if(o){if(!r)break t;e=e-1|0}else r?n=n+1|0:o=!0}return Al(t,n,e+1|0)},t.$_$.yb=Dr,t.$_$.zb=Tr,t.$_$.ac=js,t.$_$.bc=tl,t.$_$.cc=Vs,t.$_$.dc=Yr,t.$_$.ec=Gr,t.$_$.fc=_l,t.$_$.gc=qp,t.$_$.hc=zp,t.$_$.ic=Ip,t.$_$.jc=Zl,t.$_$.kc=di,t.$_$.lc=hi,t.$_$.mc=Jp,t.$_$.nc=Jl,t.$_$.oc=function(){throw Dp()},t.$_$.pc=yi,t.$_$.qc=Pi,t.$_$.rc=ki,t.$_$.sc=Vi,t.$_$.tc=Bi,t.$_$.uc=is,t.$_$.vc=Zi,t.$_$.wc=gs,t.$_$.xc=ps,t.$_$.yc=As,t.$_$.zc=Yp,t.$_$.ad=function(t,n){if(t!==n){var e=t._suppressed;null==e?t._suppressed=Gn([n]):e.a(n)}},t.$_$.bd=function(t){return t},t.$_$.cd=function(t){var n=t;return(65535&(n=(16711935&(n=(252645135&(n=(858993459&(n=(1431655765&n)+(1431655765&(n>>>1|0))|0))+(858993459&(n>>>2|0))|0))+(252645135&(n>>>4|0))|0))+(16711935&(n>>>8|0))|0))+(n>>>16|0)|0},t.$_$.dd=function(t){var n,e=t.b1_1;return 0===e?(Bs(),n=32+pu(t.c1_1)|0):n=pu(e),n},t.$_$.ed=pi,t.$_$.fd=Wl,t.$_$.gd=function(t,n){return Zr(),new Xr(t.mb_1,n).rb()},t.$_$.hd=function(t){return!function(t){var n;return Rs(),t===1/0?n=!0:(Rs(),n=t===-1/0),n}(t)&&!hu(t)},t.$_$.id=function(t){return!function(t){var n;return Ns(),t===1/0?n=!0:(Ns(),n=t===-1/0),n}(t)&&!function(t){return!(t==t)}(t)},t.$_$.jd=function(t,n){return new ni(n)},t.$_$.kd=function(t){return new ni(t)},t.$_$.ld=function(){throw cf()},t.$_$.md=vl,t.$_$.nd=function(t){console.error(function(t){return(new Ic).bm(t)}(t))},t.$_$.od=function(t,n){var e=t<>>(32-n|0)|0},t.$_$.pd=function(t,n){return Bs(),t<<(32-n|0)|t>>>n|0},t.$_$.qd=function(t){throw ff("lateinit property "+t+" has not been initialized")},t.$_$.rd=dl,t.$_$.sd=vi,t})?e.apply(n,[n]):e)||(t.exports=o)},645:function(t,n,e){var o,r;o=[n,e(744)],void 0===(r=function(t,n){"use strict";var e,o,r,i,s,a,u,c,l,h,p,f,_,d,v,y,m,g,$,b,w,x,k,j,C,z,S,q,O,P,M,A,E,I,D,T,B,L,N,F,R,H,U,V,W,J,K,G,Y,X,Z,Q,tt,nt,et,ot,rt,it,st,at,ut,ct,lt=Math.imul,ht=n.$_$.s9,pt=n.$_$.g4,ft=n.$_$.r4,_t=n.$_$.k6,dt=n.$_$.h,vt=n.$_$.jd,yt=n.$_$.h9,mt=n.$_$.c,gt=n.$_$.ya,$t=n.$_$.o9,bt=n.$_$.s1,wt=n.$_$.c9,xt=n.$_$.u1,kt=n.$_$.ic,jt=n.$_$.w5,Ct=n.$_$.s,zt=n.$_$.nc,St=n.$_$.va,qt=n.$_$.ba,Ot=n.$_$.pc,Pt=n.$_$.d,Mt=n.$_$.kc,At=n.$_$.h5,Et=n.$_$.d5,It=n.$_$.m5,Dt=n.$_$.i5,Tt=n.$_$.z4,Bt=n.$_$.e5,Lt=n.$_$.n5,Nt=n.$_$.o5,Ft=n.$_$.a5,Rt=n.$_$.x4,Ht=n.$_$.l5,Ut=n.$_$.g5,Vt=n.$_$.y4,Wt=n.$_$.j6,Jt=n.$_$.pa,Kt=n.$_$.t1,Gt=n.$_$.l2,Yt=n.$_$.n2,Xt=n.$_$.da,Zt=n.$_$.m2,Qt=n.$_$.lc,tn=n.$_$.fd,nn=n.$_$.j9,en=n.$_$.p9,on=n.$_$.c5,rn=n.$_$.b5,sn=n.$_$.fb,an=n.$_$.y7,un=n.$_$.t,cn=n.$_$.z,ln=n.$_$.v7,hn=n.$_$.t7,pn=n.$_$.c8,fn=n.$_$.sd,_n=n.$_$.z7,dn=n.$_$.kd,vn=n.$_$.y5,yn=n.$_$.ua,mn=n.$_$.k,gn=n.$_$.la,$n=n.$_$.jc,bn=n.$_$.bc,wn=n.$_$.e2,xn=n.$_$.yb,kn=n.$_$.j4,jn=n.$_$.mb,Cn=n.$_$.q9,zn=n.$_$.w1,Sn=n.$_$.u,qn=n.$_$.a1,On=n.$_$.e1,Pn=n.$_$.f1,Mn=n.$_$.w,An=n.$_$.x,En=n.$_$.c1,In=n.$_$.d1,Dn=n.$_$.t9,Tn=n.$_$.a9,Bn=n.$_$.s5,Ln=n.$_$.ta,Nn=n.$_$.t6,Fn=n.$_$.ga,Rn=n.$_$.l4,Hn=n.$_$.x6,Un=n.$_$.dd,Vn=n.$_$.y,Wn=n.$_$.za,Jn=n.$_$.l9,Kn=n.$_$.b9,Gn=n.$_$.l6,Yn=n.$_$.z5,Xn=n.$_$.k4,Zn=n.$_$.w9,Qn=n.$_$.d9,te=n.$_$.c4,ne=n.$_$.y9,ee=n.$_$.d4,oe=n.$_$.z9,re=n.$_$.ca,ie=n.$_$.p4,se=n.$_$.n3,ae=n.$_$.uc,ue=n.$_$.j3,ce=n.$_$.g3,le=n.$_$.l3,he=n.$_$.h3,pe=n.$_$.e4,fe=n.$_$.aa,_e=n.$_$.o4,de=n.$_$.e3,ve=n.$_$.sc,ye=n.$_$.a3,me=n.$_$.x2,ge=n.$_$.c3,$e=n.$_$.y2,be=n.$_$.f4,we=n.$_$.ea,xe=n.$_$.q4,ke=n.$_$.w3,je=n.$_$.wc,Ce=n.$_$.s3,ze=n.$_$.p3,Se=n.$_$.u3,qe=n.$_$.q3,Oe=n.$_$.b4,Pe=n.$_$.v9,Me=n.$_$.n4,Ae=n.$_$.v2,Ee=n.$_$.qc,Ie=n.$_$.s2,De=n.$_$.o2,Te=n.$_$.t2,Be=n.$_$.p2,Le=n.$_$.a4,Ne=n.$_$.u9,Fe=n.$_$.qa,Re=n.$_$.d6,He=n.$_$.f6,Ue=n.$_$.g6,Ve=n.$_$.b6,We=n.$_$.o3,Je=n.$_$.k3,Ke=n.$_$.m3,Ge=n.$_$.i6,Ye=n.$_$.f3,Xe=n.$_$.b3,Ze=n.$_$.d3,Qe=n.$_$.a6,to=n.$_$.x3,no=n.$_$.t3,eo=n.$_$.v3,oo=n.$_$.e6,ro=n.$_$.w2,io=n.$_$.r2,so=n.$_$.u2,ao=n.$_$.c6,uo=n.$_$.yc,co=n.$_$.vb,lo=n.$_$.eb,ho=n.$_$.f9,po=n.$_$.e9,fo=n.$_$.j2,_o=n.$_$.ib,vo=n.$_$.gb,yo=n.$_$.i4,mo=n.$_$.vc,go=n.$_$.tc,$o=n.$_$.xc,bo=n.$_$.rc,wo=n.$_$.f7,xo=n.$_$.a7,ko=n.$_$.y6,jo=n.$_$.ac,Co=n.$_$.fa,zo=n.$_$.b,So=n.$_$.w6,qo=n.$_$.y1,Oo=n.$_$.v6,Po=n.$_$.m4,Mo=n.$_$.k2,Ao=n.$_$.ed;function Eo(){return!1}function Io(){return!1}function Do(){return _t()}function To(t){return t.w2c(this)}function Bo(){return!1}function Lo(t){return-1}function No(t,n,e,o,r,i){return 0!=(8&r)&&(o=null),null==i?this.f2g(t,n,e,o):i(t,n,e,o)}function Fo(){}function Ro(t,n){return this.t2f(t)}function Ho(t,n){t.v2c(this,n)}function Uo(){return Os()}function Vo(){}function Wo(){}function Jo(){}function Ko(t){return function(){return n=Xr("kotlinx.serialization.Polymorphic",(null==l&&new ci,l),[],function(t){return function(n){var e=gr(pt()).u2c();n.f2d("type",e,null,!1,12,null);var o=Xr("kotlinx.serialization.Polymorphic<"+t.g2d_1.si()+">",si(),[],null,12);return n.f2d("value",o,null,!1,12,null),n.z2c_1=t.h2d_1,ft()}}(t),4),e=t.g2d_1,new Wr(n,e);var n,e}}function Go(t){Bi.call(this),this.g2d_1=t,this.h2d_1=_t();var n=dt();this.i2d_1=vt(n,Ko(this))}function Yo(t,n,e){var o,r=t.l2d(n,e);return null==r?function(t,n){var e=t.si();Li(null==e?""+t:e,n)}(mt(e),t.j2d()):o=r,o}function Xo(t,n,e){var o,r=t.k2d(n,e);return null==r?Li(e,t.j2d()):o=r,o}function Zo(){}function Qo(){}function tr(){}function nr(t,n){return bt(t,n),or.call(n),n}function er(t){var n=nr(t,Object.create(or.prototype));return wt(n,er),n}function or(){wt(this,or)}function rr(t){nr(t,this),wt(this,rr)}function ir(t,n){var e=function(t,n,e){return sr.call(e,t,1===t.f()?"Field '"+t.g(0)+"' is required for type with serial name '"+n+"', but it was missing":"Fields "+t+" are required for type with serial name '"+n+"', but they were missing",null),e}(t,n,Object.create(sr.prototype));return wt(e,ir),e}function sr(t,n,e){(function(t,n,e){xt(t,n,e),or.call(e)})(n,e,this),this.p2d_1=t,wt(this,sr)}function ar(t){var n=function(t){var n,e=Ra(t,[]);if(null==e){var o=Co(t).Companion,r=null==o?null:o.serializer();n=null!=r&&qt(r,Vo)?r:null}else n=e;return n}(t);return null==n?function(t){ma();var n=oa().b3(t);return null==n||qt(n,Vo)?n:zt()}(t):n}function ur(t,n,e){var o;if(e){for(var r=Ct(jt(n,10)),i=n.c();i.d();){var s;s=lr(t,i.e()),r.a(s)}o=r}else{for(var a=Ct(jt(n,10)),u=n.c();u.d();){var c,l=hr(t,u.e());if(null==l)return null;c=l,a.a(c)}o=a}return o}function cr(t,n,e){var o=function(t,n,e){var o,r=t;if(r.equals(Pt(Vt))||r.equals(Pt(Ut))||r.equals(Pt(Ht))||r.equals(Pt(Rt)))o=new Xi(e.g(0));else if(r.equals(Pt(Ft)))o=new Zi(e.g(0));else if(r.equals(Pt(Nt))||r.equals(Pt(Lt))||r.equals(Pt(Bt)))o=new Qi(e.g(0));else if(r.equals(Pt(Tt)))o=new ts(e.g(0),e.g(1));else if(r.equals(Pt(Dt))||r.equals(Pt(It))||r.equals(Pt(Et)))o=new ns(e.g(0),e.g(1));else if(r.equals(Pt(At)))p=e.g(0),f=e.g(1),o=new xa(p,f);else if(r.equals(Pt(Mt)))o=function(t,n){return new ka(t,n)}(e.g(0),e.g(1));else if(r.equals(Pt(Ot)))c=e.g(0),l=e.g(1),h=e.g(2),o=new ja(c,l,h);else{var i;if(t.equals(yo().kk())){var s=n.g(0).bj();a=null!=s&&qt(s,St)?s:zt(),u=e.g(0),i=new es(a,u)}else i=null;o=i}var a,u;var c,l,h;var p,f;return o}(t,n,e);return null==o?function(t,n){return Ra(t,Wt(n).slice())}(t,e):o}function lr(t,n){var e,o=pr(t,n,!0);return null==o?function(t){throw er("Serializer for class '"+t.si()+"' is not found.\nMark the class as @Serializable or provide the serializer explicitly.\nOn Kotlin/JS explicitly declared serializer should be used for interfaces and enums without @Serializable annotation")}(xs(n)):e=o,e}function hr(t,n){return pr(t,n,!1)}function pr(t,n,s){for(var a=xs(n),u=n.dj(),c=n.cj(),l=Ct(jt(c,10)),h=c.c();h.d();){var p,f=h.e().r2d_1;if(null==f)throw Kt(Jt("Star projections in type arguments are not allowed, but had "+n));p=f,l.a(p)}var _,d,v=l;if(v.h())_=function(t,n){var r;if(yr(),n)r=(yr(),o).u2d(t);else{var i=(yr(),e).u2d(t);r=null==i?null:null!=i&&qt(i,Vo)?i:zt()}return r}(a,u);else{var y,m=function(t,n,e){var o;if(yr(),e)o=(yr(),i).v2d(t,n);else{var s=(yr(),r).v2d(t,n);o=new Qt(s)instanceof Qt?s:zt()}return o}(a,v,u);if(s){var g;if(Zt(m))g=null;else{var $=Yt(m);g=null==$||Xt($)?$:zt()}y=g}else{if(null!=Gt(m))return null;var b=Yt(m);y=null==b||Xt(b)?b:zt()}_=y}if(null!=_)return _;if(v.h())d=t.t2d(a,null,2,null);else{var w=ur(t,v,s);if(null==w)return null;var x=w,k=cr(a,v,x);d=null==k?t.s2d(a,x):k}var j,C=d;return null==(j=null==C?null:null!=C&&qt(C,Vo)?C:zt())?null:function(t,n){return n?mr(t):qt(t,Vo)?t:zt()}(j,u)}function fr(t){return yr(),ar(t)}function _r(t){yr();var n=ar(t),e=null==n?null:mr(n);return null==e?null:null!=e&&qt(e,Vo)?e:zt()}function dr(t,n){return yr(),cr(t,n,tn(ur(Ta(),n,!0)))}function vr(t,n){yr();var e=cr(t,n,tn(ur(Ta(),n,!0))),o=null==e?null:mr(e);return null==o?null:null!=o&&qt(o,Vo)?o:zt()}function yr(){s||(s=!0,e=Na(fr),o=Na(_r),r=Fa(dr),i=Fa(vr))}function mr(t){return t.u2c().w2d()?qt(t,Vo)?t:zt():new vs(t)}function gr(t){return ia()}function $r(t){return null==W&&new sa,W}function br(){return null==M&&new As,M}function wr(t){return null==J&&new aa,J}function xr(){return null==A&&new Es,A}function kr(t){return null==K&&new ua,K}function jr(){return null==E&&new Is,E}function Cr(t){return null==G&&new ca,G}function zr(){return null==I&&new Ds,I}function Sr(t){return null==rt&&new za,rt}function qr(){return null==D&&new Ts,D}function Or(t){return null==Y&&new la,Y}function Pr(){return null==T&&new Bs,T}function Mr(t){return null==it&&new Sa,it}function Ar(){return null==B&&new Ls,B}function Er(t){return null==X&&new ha,X}function Ir(){return null==L&&new Ns,L}function Dr(t){return null==st&&new qa,st}function Tr(){return null==N&&new Fs,N}function Br(t){return null==Z&&new pa,Z}function Lr(){return null==F&&new Rs,F}function Nr(t){return null==at&&new Oa,at}function Fr(){return null==R&&new Hs,R}function Rr(t){return null==Q&&new fa,Q}function Hr(){return null==H&&new Us,H}function Ur(t){return null==tt&&new _a,tt}function Vr(t){return null==j&&new Ni,j}function Wr(t,n){this.x2d_1=t,this.y2d_1=n,this.z2d_1=this.x2d_1.a2e()+"<"+this.y2d_1.si()+">"}function Jr(t){var n=t;return n instanceof Wr?t.y2d_1:n instanceof ys?Jr(t.k2e_1):null}function Kr(){}function Gr(t){this.o2e_1=t,this.n2e_1=t.c2e()}function Yr(t){this.p2e_1=t}function Xr(t,n,e,o,r,i){return 0!=(8&r)&&(o=ei),function(t,n,e,o){if(sn(t))throw Kt(Jt("Blank serial names are prohibited"));if(nn(n,xi()))throw Kt(Jt("For StructureKind.CLASS please use 'buildClassSerialDescriptor' instead"));var r=new Zr(t);return o(r),new ni(t,n,r.a2d_1.f(),an(e),r)}(t,n,e,o)}function Zr(t){this.x2c_1=t,this.y2c_1=!1,this.z2c_1=_t(),this.a2d_1=un(),this.b2d_1=cn(),this.c2d_1=un(),this.d2d_1=un(),this.e2d_1=un()}function Qr(t,n,e,o,r){return 0!=(4&o)&&(e=oi),function(t,n,e){if(sn(t))throw Kt(Jt("Blank serial names are prohibited"));var o=new Zr(t);return e(o),new ni(t,xi(),o.a2d_1.f(),an(n),o)}(t,n,e)}function ti(t){return $t("_hashCode",1,gt,(function(t){return ti(t)}),null),t.c2f_1.n2()}function ni(t,n,e,o,r){this.r2e_1=t,this.s2e_1=n,this.t2e_1=e,this.u2e_1=r.z2c_1,this.v2e_1=ln(r.a2d_1);var i,s=r.a2d_1;i=Wt(s),this.w2e_1=i,this.x2e_1=ks(r.c2d_1);var a,u,c=r.d2d_1;a=Wt(c),this.y2e_1=a,this.z2e_1=hn(r.e2d_1);for(var l,h=pn(this.w2e_1),p=Ct(jt(h,10)),f=h.c();f.d();){var _,d=f.e();_=fn(d.p3_1,d.o3_1),p.a(_)}l=p,this.a2f_1=_n(l),this.b2f_1=ks(o),this.c2f_1=dn((u=this,function(){return qs(u,u.b2f_1)}))}function ei(t){return ft()}function oi(t){return ft()}function ri(){a=this,ai.call(this)}function ii(){u=this,ai.call(this)}function si(){return null==u&&new ii,u}function ai(){}function ui(){c=this,li.call(this)}function ci(){l=this,li.call(this)}function li(){ai.call(this)}function hi(){h=this,bi.call(this)}function pi(){p=this,bi.call(this)}function fi(){f=this,bi.call(this)}function _i(){_=this,bi.call(this)}function di(){d=this,bi.call(this)}function vi(){v=this,bi.call(this)}function yi(){y=this,bi.call(this)}function mi(){m=this,bi.call(this)}function gi(){g=this,bi.call(this)}function $i(){return null==g&&new gi,g}function bi(){ai.call(this)}function wi(){$=this,qi.call(this)}function xi(){return null==$&&new wi,$}function ki(){b=this,qi.call(this)}function ji(){return null==b&&new ki,b}function Ci(){w=this,qi.call(this)}function zi(){return null==w&&new Ci,w}function Si(){x=this,qi.call(this)}function qi(){ai.call(this)}function Oi(){}function Pi(){}function Mi(){}function Ai(){k=this,this.l2h_1=-1,this.m2h_1=-3}function Ei(){return null==k&&new Ai,k}function Ii(){}function Di(){}function Ti(){}function Bi(){}function Li(t,n){var e="in the scope of '"+n.si()+"'";throw er(null==t?"Class discriminator was missing and no default polymorphic serializers were registered "+e:"Class '"+t+"' is not registered for polymorphic serialization "+e+".\nMark the base class as 'sealed' or register the serializer explicitly.")}function Ni(){j=this,this.q2h_1=new va("kotlin.time.Duration",$i())}function Fi(){}function Ri(t){Gi.call(this,t)}function Hi(t){Gi.call(this,t)}function Ui(t){Gi.call(this,t)}function Vi(t,n){Yi.call(this,"kotlin.collections.HashMap",t,n)}function Wi(t,n){Yi.call(this,"kotlin.collections.LinkedHashMap",t,n)}function Ji(t){Gi.call(this,t)}function Ki(t){Gi.call(this,t),this.j2i_1=t.a2e()+"Array"}function Gi(t){this.v2h_1=t,this.w2h_1=1}function Yi(t,n,e){this.b2i_1=t,this.c2i_1=n,this.d2i_1=e,this.e2i_1=2}function Xi(t){os.call(this,t),this.l2i_1=new Ri(t.u2c())}function Zi(t){os.call(this,t),this.g2j_1=new Hi(t.u2c())}function Qi(t){os.call(this,t),this.n2j_1=new Ui(t.u2c())}function ts(t,n){rs.call(this,t,n),this.u2j_1=new Vi(t.u2c(),n.u2c())}function ns(t,n){rs.call(this,t,n),this.j2k_1=new Wi(t.u2c(),n.u2c())}function es(t,n){is.call(this,n),this.o2k_1=t,this.p2k_1=new Ji(n.u2c())}function os(t){is.call(this,t)}function rs(t,n){ss.call(this),this.d2k_1=t,this.e2k_1=n}function is(t){ss.call(this),this.z2i_1=t}function ss(){}function as(t){is.call(this,t),this.y2k_1=new Ki(t.u2c())}function us(){}function cs(){C=this,this.f2l_1=Fn(0)}function ls(){return null==C&&new cs,C}function hs(t,n){ls(),this.g2l_1=t,this.h2l_1=n;var e=this.g2l_1.c2e();if(Rn(),e<=64){var o;Rn(),o=64===e?new $n(0,0):new $n(-1,-1).kb(e),this.i2l_1=o,this.j2l_1=ls().f2l_1}else this.i2l_1=new $n(0,0),this.j2l_1=function(t,n){var e=(n-1|0)>>>6|0;Rn();var o=63&n,r=Fn(e);return 0!==o&&(r[Hn(r)]=new $n(-1,-1).kb(n)),r}(0,e)}function ps(t,n){return new fs(t,new _s(n))}function fs(t,n){Ss.call(this,t,n,1),this.y2l_1=!0}function _s(t){this.n2m_1=t}function ds(){z=this,Pi.call(this),this.q2m_1=Ta()}function vs(t){this.r2m_1=t,this.s2m_1=new ys(this.r2m_1.u2c())}function ys(t){this.k2e_1=t,this.l2e_1=this.k2e_1.a2e()+"?",this.m2e_1=ws(this.k2e_1)}function ms(t,n){return function(){var e=(null==x&&new Si,x);return Xr(t,e,[],function(t){return function(n){return n.z2c_1=t.v2m_1,ft()}}(n),4)}}function gs(t,n){this.u2m_1=n,this.v2m_1=_t();var e=dt();this.w2m_1=vt(e,ms(t,this))}function $s(){}function bs(){}function ws(t){if(js(),qt(t,Fi))return t.d2f();var n=Vn(t.c2e()),e=0,o=t.c2e();if(e0){var e,o=po(t,0);e=vo(o)?_o(o):fo(o),n=Jt(e)+t.substring(1)}else n=t;return n}function ma(){nt||(nt=!0,U=wo([fn(yo().lk(),gr(pt())),fn(Pt(bn),$r(Xn())),fn(yo().ok(),br()),fn(yo().jk(),wr(te())),fn(yo().uk(),xr()),fn(yo().ik(),kr(ee())),fn(yo().tk(),jr()),fn(Pt($n),Cr(Rn())),fn(yo().sk(),zr()),fn(Pt(mo),Sr(ie())),fn(Pt(ae),qr()),fn(yo().hk(),Or(pe())),fn(yo().rk(),Pr()),fn(Pt(go),Mr(_e())),fn(Pt(ve),Ar()),fn(yo().gk(),Er(be())),fn(yo().qk(),Ir()),fn(Pt($o),Dr(xe())),fn(Pt(je),Tr()),fn(yo().fk(),Br(Oe())),fn(yo().pk(),Lr()),fn(Pt(bo),Nr(Me())),fn(Pt(Ee),Fr()),fn(yo().ek(),Rr(Le())),fn(yo().nk(),Hr()),fn(Pt(uo),Ur(ft())),fn(Pt(xn),Vr(kn()))]))}function ga(){$a.call(this)}function $a(){var t;t=un(),this.n2s_1=t,this.o2s_1=!1}function ba(){return ot||(ot=!0,et=new Object),et}function wa(t,n){this.f2t_1=t,this.g2t_1=n}function xa(t,n){Ca.call(this,t,n);var e,o,r=zi();this.j2t_1=Xr("kotlin.collections.Map.Entry",r,[],(e=t,o=n,function(t){var n=e.u2c();t.f2d("key",n,null,!1,12,null);var r=o.u2c();return t.f2d("value",r,null,!1,12,null),ft()}),4)}function ka(t,n){var e,o;Ca.call(this,t,n),this.u2t_1=Qr("kotlin.Pair",[],(e=t,o=n,function(t){var n=e.u2c();t.f2d("first",n,null,!1,12,null);var r=o.u2c();return t.f2d("second",r,null,!1,12,null),ft()}),2)}function ja(t,n,e){var o;this.x2t_1=t,this.y2t_1=n,this.z2t_1=e,this.a2u_1=Qr("kotlin.Triple",[],(o=this,function(t){var n=o.x2t_1.u2c();t.f2d("first",n,null,!1,12,null);var e=o.y2t_1.u2c();t.f2d("second",e,null,!1,12,null);var r=o.z2t_1.u2c();return t.f2d("third",r,null,!1,12,null),ft()}),2)}function Ca(t,n){this.p2t_1=t,this.q2t_1=n}function za(){rt=this,this.c2u_1=ps("kotlin.ULong",Cr(Rn()))}function Sa(){it=this,this.f2u_1=ps("kotlin.UInt",Or(pe()))}function qa(){st=this,this.i2u_1=ps("kotlin.UShort",Er(be()))}function Oa(){at=this,this.l2u_1=ps("kotlin.UByte",Br(Oe()))}function Pa(){return ct||(ct=!0,ut=new Aa(Gn(),Gn(),Gn(),Gn(),Gn())),ut}function Ma(){}function Aa(t,n,e,o,r){Ma.call(this),this.p2u_1=t,this.q2u_1=n,this.r2u_1=e,this.s2u_1=o,this.t2u_1=r}function Ea(){}function Ia(){}function Da(){}function Ta(){return Pa()}function Ba(){}function La(t){this.e2v_1=t}function Na(t){return new Va(t)}function Fa(t){return new Wa(t)}function Ra(t,n){var e;try{var o,r=zo(t,Pt(La));if(null!=r&&qt(r,Vo))o=null!=r&&qt(r,Vo)?r:zt();else if(null!=r&&qt(r,Ps)){var i=r.x2m(n.slice());o=qt(i,Vo)?i:zt()}else o=function(t){var n=Co(t).$metadata$;return"interface"==(null==n?null:n.kind)}(t)?new Go(t):null;e=o}catch(t){e=null}return e}function Ha(t,n){if(!(0<=n&&n<=(t.length-1|0)))throw qo("Index "+n+" out of bounds "+So(t));return t[n]}function Ua(t,n){if(!(0<=n&&n<=(t.length-1|0)))throw qo("Index "+n+" out of bounds "+Oo(t));return t[n]}function Va(t){this.f2v_1=t}function Wa(t){this.g2v_1=t}return Go.prototype=Object.create(Bi.prototype),Go.prototype.constructor=Go,Zo.prototype=Object.create(Bi.prototype),Zo.prototype.constructor=Zo,or.prototype=Object.create(kt.prototype),or.prototype.constructor=or,rr.prototype=Object.create(or.prototype),rr.prototype.constructor=rr,sr.prototype=Object.create(or.prototype),sr.prototype.constructor=sr,ri.prototype=Object.create(ai.prototype),ri.prototype.constructor=ri,ii.prototype=Object.create(ai.prototype),ii.prototype.constructor=ii,li.prototype=Object.create(ai.prototype),li.prototype.constructor=li,ui.prototype=Object.create(li.prototype),ui.prototype.constructor=ui,ci.prototype=Object.create(li.prototype),ci.prototype.constructor=ci,bi.prototype=Object.create(ai.prototype),bi.prototype.constructor=bi,hi.prototype=Object.create(bi.prototype),hi.prototype.constructor=hi,pi.prototype=Object.create(bi.prototype),pi.prototype.constructor=pi,fi.prototype=Object.create(bi.prototype),fi.prototype.constructor=fi,_i.prototype=Object.create(bi.prototype),_i.prototype.constructor=_i,di.prototype=Object.create(bi.prototype),di.prototype.constructor=di,vi.prototype=Object.create(bi.prototype),vi.prototype.constructor=vi,yi.prototype=Object.create(bi.prototype),yi.prototype.constructor=yi,mi.prototype=Object.create(bi.prototype),mi.prototype.constructor=mi,gi.prototype=Object.create(bi.prototype),gi.prototype.constructor=gi,qi.prototype=Object.create(ai.prototype),qi.prototype.constructor=qi,wi.prototype=Object.create(qi.prototype),wi.prototype.constructor=wi,ki.prototype=Object.create(qi.prototype),ki.prototype.constructor=ki,Ci.prototype=Object.create(qi.prototype),Ci.prototype.constructor=Ci,Si.prototype=Object.create(qi.prototype),Si.prototype.constructor=Si,Ri.prototype=Object.create(Gi.prototype),Ri.prototype.constructor=Ri,Hi.prototype=Object.create(Gi.prototype),Hi.prototype.constructor=Hi,Ui.prototype=Object.create(Gi.prototype),Ui.prototype.constructor=Ui,Vi.prototype=Object.create(Yi.prototype),Vi.prototype.constructor=Vi,Wi.prototype=Object.create(Yi.prototype),Wi.prototype.constructor=Wi,Ji.prototype=Object.create(Gi.prototype),Ji.prototype.constructor=Ji,Ki.prototype=Object.create(Gi.prototype),Ki.prototype.constructor=Ki,is.prototype=Object.create(ss.prototype),is.prototype.constructor=is,os.prototype=Object.create(is.prototype),os.prototype.constructor=os,Xi.prototype=Object.create(os.prototype),Xi.prototype.constructor=Xi,Zi.prototype=Object.create(os.prototype),Zi.prototype.constructor=Zi,Qi.prototype=Object.create(os.prototype),Qi.prototype.constructor=Qi,rs.prototype=Object.create(ss.prototype),rs.prototype.constructor=rs,ts.prototype=Object.create(rs.prototype),ts.prototype.constructor=ts,ns.prototype=Object.create(rs.prototype),ns.prototype.constructor=ns,es.prototype=Object.create(is.prototype),es.prototype.constructor=es,as.prototype=Object.create(is.prototype),as.prototype.constructor=as,fs.prototype=Object.create(Ss.prototype),fs.prototype.constructor=fs,ds.prototype=Object.create(Pi.prototype),ds.prototype.constructor=ds,As.prototype=Object.create(as.prototype),As.prototype.constructor=As,Es.prototype=Object.create(as.prototype),Es.prototype.constructor=Es,Is.prototype=Object.create(as.prototype),Is.prototype.constructor=Is,Ds.prototype=Object.create(as.prototype),Ds.prototype.constructor=Ds,Ts.prototype=Object.create(as.prototype),Ts.prototype.constructor=Ts,Bs.prototype=Object.create(as.prototype),Bs.prototype.constructor=Bs,Ls.prototype=Object.create(as.prototype),Ls.prototype.constructor=Ls,Ns.prototype=Object.create(as.prototype),Ns.prototype.constructor=Ns,Fs.prototype=Object.create(as.prototype),Fs.prototype.constructor=Fs,Rs.prototype=Object.create(as.prototype),Rs.prototype.constructor=Rs,Hs.prototype=Object.create(as.prototype),Hs.prototype.constructor=Hs,Us.prototype=Object.create(as.prototype),Us.prototype.constructor=Us,Vs.prototype=Object.create(us.prototype),Vs.prototype.constructor=Vs,Ws.prototype=Object.create(us.prototype),Ws.prototype.constructor=Ws,Js.prototype=Object.create(us.prototype),Js.prototype.constructor=Js,Ks.prototype=Object.create(us.prototype),Ks.prototype.constructor=Ks,Gs.prototype=Object.create(us.prototype),Gs.prototype.constructor=Gs,Ys.prototype=Object.create(us.prototype),Ys.prototype.constructor=Ys,Xs.prototype=Object.create(us.prototype),Xs.prototype.constructor=Xs,Zs.prototype=Object.create(us.prototype),Zs.prototype.constructor=Zs,Qs.prototype=Object.create(us.prototype),Qs.prototype.constructor=Qs,ta.prototype=Object.create(us.prototype),ta.prototype.constructor=ta,na.prototype=Object.create(us.prototype),na.prototype.constructor=na,ea.prototype=Object.create(us.prototype),ea.prototype.constructor=ea,ga.prototype=Object.create($a.prototype),ga.prototype.constructor=ga,xa.prototype=Object.create(Ca.prototype),xa.prototype.constructor=xa,ka.prototype=Object.create(Ca.prototype),ka.prototype.constructor=ka,Aa.prototype=Object.create(Ma.prototype),Aa.prototype.constructor=Aa,Ea.prototype=Object.create(Da.prototype),Ea.prototype.constructor=Ea,Ia.prototype=Object.create(Da.prototype),Ia.prototype.constructor=Ia,Vo.$metadata$=ht("KSerializer",[Wo,Jo]),Wo.$metadata$=ht("SerializationStrategy"),Jo.$metadata$=ht("DeserializationStrategy"),Go.prototype.j2d=function(){return this.g2d_1},Go.prototype.u2c=function(){return $t("descriptor",1,gt,(function(t){return t.u2c()}),null),this.i2d_1.n2()},Go.prototype.toString=function(){return"kotlinx.serialization.PolymorphicSerializer(baseClass: "+this.g2d_1+")"},Go.$metadata$=yt("PolymorphicSerializer",void 0,void 0,void 0,void 0,Bi.prototype),Zo.$metadata$=yt("SealedClassSerializer",void 0,void 0,void 0,void 0,Bi.prototype),Qo.$metadata$=ht("StringFormat",[tr]),tr.$metadata$=ht("SerialFormat"),or.$metadata$=yt("SerializationException",void 0,void 0,void 0,void 0,kt.prototype),rr.$metadata$=yt("UnknownFieldException",void 0,void 0,void 0,void 0,or.prototype),sr.$metadata$=yt("MissingFieldException",void 0,void 0,void 0,void 0,or.prototype),Wr.prototype.b2e=function(){return this.x2d_1.b2e()},Wr.prototype.c2e=function(){return this.x2d_1.c2e()},Wr.prototype.d2e=function(){return this.x2d_1.d2e()},Wr.prototype.w2d=function(){return this.x2d_1.w2d()},Wr.prototype.e2e=function(){return this.x2d_1.e2e()},Wr.prototype.f2e=function(t){return this.x2d_1.f2e(t)},Wr.prototype.g2e=function(t){return this.x2d_1.g2e(t)},Wr.prototype.h2e=function(t){return this.x2d_1.h2e(t)},Wr.prototype.i2e=function(t){return this.x2d_1.i2e(t)},Wr.prototype.j2e=function(t){return this.x2d_1.j2e(t)},Wr.prototype.a2e=function(){return this.z2d_1},Wr.prototype.equals=function(t){var n=t instanceof Wr?t:null;if(null==n)return!1;var e=n;return!!nn(this.x2d_1,e.x2d_1)&&e.y2d_1.equals(this.y2d_1)},Wr.prototype.hashCode=function(){var t=this.y2d_1.hashCode();return lt(31,t)+en(this.z2d_1)|0},Wr.prototype.toString=function(){return"ContextDescriptor(kClass: "+this.y2d_1+", original: "+this.x2d_1+")"},Wr.$metadata$=yt("ContextDescriptor",[Kr]),Kr.$metadata$=ht("SerialDescriptor"),Gr.prototype.d=function(){return this.n2e_1>0},Gr.prototype.e=function(){var t=this.o2e_1.c2e(),n=this.n2e_1;return this.n2e_1=n-1|0,this.o2e_1.g2e(t-n|0)},Gr.$metadata$=yt(void 0,[on]),Yr.prototype.c=function(){return new Gr(this.p2e_1)},Yr.$metadata$=yt(void 0,[rn]),Zr.prototype.q2e=function(t,n,e,o){if(!this.b2d_1.a(t))throw Kt(Jt("Element with name '"+t+"' is already registered"));this.a2d_1.a(t),this.c2d_1.a(n),this.d2d_1.a(e),this.e2d_1.a(o)},Zr.prototype.f2d=function(t,n,e,o,r,i){return 0!=(4&r)&&(e=_t()),0!=(8&r)&&(o=!1),this.q2e(t,n,e,o)},Zr.$metadata$=yt("ClassSerialDescriptorBuilder"),ni.prototype.a2e=function(){return this.r2e_1},ni.prototype.e2e=function(){return this.s2e_1},ni.prototype.c2e=function(){return this.t2e_1},ni.prototype.b2e=function(){return this.u2e_1},ni.prototype.d2f=function(){return this.v2e_1},ni.prototype.i2e=function(t){return Ha(this.w2e_1,t)},ni.prototype.h2e=function(t){var n,e=this.a2f_1.b3(t);return null==e?(Ei(),n=-3):n=e,n},ni.prototype.f2e=function(t){return Ha(this.y2e_1,t)},ni.prototype.g2e=function(t){return Ha(this.x2e_1,t)},ni.prototype.j2e=function(t){return Ua(this.z2e_1,t)},ni.prototype.equals=function(t){var n;t:if(this!==t)if(t instanceof ni)if(this.a2e()===t.a2e()){var e=t;if(vn(this.b2f_1,e.b2f_1))if(this.c2e()===t.c2e()){var o=0,r=this.c2e();if(o=0))throw n="Illegal index "+t+", "+this.a2e()+" expects only non-negative indices",Kt(Jt(n));return!1},Gi.prototype.f2e=function(t){var n;if(!(t>=0))throw n="Illegal index "+t+", "+this.a2e()+" expects only non-negative indices",Kt(Jt(n));return _t()},Gi.prototype.g2e=function(t){var n;if(!(t>=0))throw n="Illegal index "+t+", "+this.a2e()+" expects only non-negative indices",Kt(Jt(n));return this.v2h_1},Gi.prototype.equals=function(t){return this===t||t instanceof Gi&&!(!nn(this.v2h_1,t.v2h_1)||this.a2e()!==t.a2e())},Gi.prototype.hashCode=function(){return lt(Cn(this.v2h_1),31)+en(this.a2e())|0},Gi.prototype.toString=function(){return this.a2e()+"("+this.v2h_1+")"},Gi.$metadata$=yt("ListLikeDescriptor",[Kr]),Yi.prototype.a2e=function(){return this.b2i_1},Yi.prototype.e2e=function(){return zi()},Yi.prototype.c2e=function(){return this.e2i_1},Yi.prototype.i2e=function(t){return t.toString()},Yi.prototype.h2e=function(t){var n=jn(t);if(null==n)throw Kt(t+" is not a valid map index");return n},Yi.prototype.j2e=function(t){var n;if(!(t>=0))throw n="Illegal index "+t+", "+this.a2e()+" expects only non-negative indices",Kt(Jt(n));return!1},Yi.prototype.f2e=function(t){var n;if(!(t>=0))throw n="Illegal index "+t+", "+this.a2e()+" expects only non-negative indices",Kt(Jt(n));return _t()},Yi.prototype.g2e=function(t){var n,e;if(!(t>=0))throw n="Illegal index "+t+", "+this.a2e()+" expects only non-negative indices",Kt(Jt(n));switch(t%2|0){case 0:e=this.c2i_1;break;case 1:e=this.d2i_1;break;default:throw zn("Unreached")}return e},Yi.prototype.equals=function(t){return this===t||t instanceof Yi&&this.a2e()===t.a2e()&&!!nn(this.c2i_1,t.c2i_1)&&!!nn(this.d2i_1,t.d2i_1)},Yi.prototype.hashCode=function(){var t=en(this.a2e());return t=lt(31,t)+Cn(this.c2i_1)|0,lt(31,t)+Cn(this.d2i_1)|0},Yi.prototype.toString=function(){return this.a2e()+"("+this.c2i_1+", "+this.d2i_1+")"},Yi.$metadata$=yt("MapLikeDescriptor",[Kr]),Xi.prototype.u2c=function(){return this.l2i_1},Xi.prototype.v1o=function(){return un()},Xi.prototype.m2i=function(t){return t.f()},Xi.prototype.n2i=function(t){return this.m2i(t instanceof Rt?t:zt())},Xi.prototype.o2i=function(t){return t},Xi.prototype.p2i=function(t){return this.o2i(t instanceof Rt?t:zt())},Xi.prototype.q2i=function(t){var n=t instanceof Rt?t:null;return null==n?Sn(t):n},Xi.prototype.r2i=function(t){return this.q2i(null!=t&&qt(t,Ut)?t:zt())},Xi.prototype.s2i=function(t,n){return t.tg(n)},Xi.prototype.t2i=function(t,n){return this.s2i(t instanceof Rt?t:zt(),n)},Xi.prototype.u2i=function(t,n,e){t.zf(n,e)},Xi.prototype.v2i=function(t,n,e){var o=t instanceof Rt?t:zt();return this.u2i(o,n,null==e||Xt(e)?e:zt())},Xi.$metadata$=yt("ArrayListSerializer",void 0,void 0,void 0,void 0,os.prototype),Zi.prototype.u2c=function(){return this.g2j_1},Zi.prototype.v1o=function(){return cn()},Zi.prototype.h2j=function(t){return t.f()},Zi.prototype.n2i=function(t){return this.h2j(t instanceof Ft?t:zt())},Zi.prototype.i2j=function(t){return t},Zi.prototype.p2i=function(t){return this.i2j(t instanceof Ft?t:zt())},Zi.prototype.j2j=function(t){var n=t instanceof Ft?t:null;return null==n?qn(t):n},Zi.prototype.r2i=function(t){return this.j2j(null!=t&&qt(t,Nt)?t:zt())},Zi.prototype.k2j=function(t,n){},Zi.prototype.t2i=function(t,n){return this.k2j(t instanceof Ft?t:zt(),n)},Zi.prototype.l2j=function(t,n,e){t.a(e)},Zi.prototype.v2i=function(t,n,e){var o=t instanceof Ft?t:zt();return this.l2j(o,n,null==e||Xt(e)?e:zt())},Zi.$metadata$=yt("HashSetSerializer",void 0,void 0,void 0,void 0,os.prototype),Qi.prototype.u2c=function(){return this.n2j_1},Qi.prototype.v1o=function(){return On()},Qi.prototype.o2j=function(t){return t.f()},Qi.prototype.n2i=function(t){return this.o2j(t instanceof Bt?t:zt())},Qi.prototype.p2j=function(t){return t},Qi.prototype.p2i=function(t){return this.p2j(t instanceof Bt?t:zt())},Qi.prototype.j2j=function(t){var n=t instanceof Bt?t:null;return null==n?Pn(t):n},Qi.prototype.r2i=function(t){return this.j2j(null!=t&&qt(t,Nt)?t:zt())},Qi.prototype.q2j=function(t,n){},Qi.prototype.t2i=function(t,n){return this.q2j(t instanceof Bt?t:zt(),n)},Qi.prototype.r2j=function(t,n,e){t.a(e)},Qi.prototype.v2i=function(t,n,e){var o=t instanceof Bt?t:zt();return this.r2j(o,n,null==e||Xt(e)?e:zt())},Qi.$metadata$=yt("LinkedHashSetSerializer",void 0,void 0,void 0,void 0,os.prototype),ts.prototype.u2c=function(){return this.u2j_1},ts.prototype.v2j=function(t){return t.f()},ts.prototype.w2j=function(t){return this.v2j(null!=t&&qt(t,Dt)?t:zt())},ts.prototype.x2j=function(t){return t.v().c()},ts.prototype.y2j=function(t){return this.x2j(null!=t&&qt(t,Dt)?t:zt())},ts.prototype.v1o=function(){return Mn()},ts.prototype.z2j=function(t){return lt(t.f(),2)},ts.prototype.n2i=function(t){return this.z2j(t instanceof Tt?t:zt())},ts.prototype.a2k=function(t){return t},ts.prototype.p2i=function(t){return this.a2k(t instanceof Tt?t:zt())},ts.prototype.b2k=function(t){var n=t instanceof Tt?t:null;return null==n?An(t):n},ts.prototype.r2i=function(t){return this.b2k(null!=t&&qt(t,Dt)?t:zt())},ts.prototype.c2k=function(t,n){},ts.prototype.t2i=function(t,n){return this.c2k(t instanceof Tt?t:zt(),n)},ts.$metadata$=yt("HashMapSerializer",void 0,void 0,void 0,void 0,rs.prototype),ns.prototype.u2c=function(){return this.j2k_1},ns.prototype.v2j=function(t){return t.f()},ns.prototype.w2j=function(t){return this.v2j(null!=t&&qt(t,Dt)?t:zt())},ns.prototype.x2j=function(t){return t.v().c()},ns.prototype.y2j=function(t){return this.x2j(null!=t&&qt(t,Dt)?t:zt())},ns.prototype.v1o=function(){return En()},ns.prototype.k2k=function(t){return lt(t.f(),2)},ns.prototype.n2i=function(t){return this.k2k(t instanceof Et?t:zt())},ns.prototype.l2k=function(t){return t},ns.prototype.p2i=function(t){return this.l2k(t instanceof Et?t:zt())},ns.prototype.b2k=function(t){var n=t instanceof Et?t:null;return null==n?In(t):n},ns.prototype.r2i=function(t){return this.b2k(null!=t&&qt(t,Dt)?t:zt())},ns.prototype.m2k=function(t,n){},ns.prototype.t2i=function(t,n){return this.m2k(t instanceof Et?t:zt(),n)},ns.$metadata$=yt("LinkedHashMapSerializer",void 0,void 0,void 0,void 0,rs.prototype),es.prototype.u2c=function(){return this.p2k_1},es.prototype.q2k=function(t){return t.length},es.prototype.w2j=function(t){return this.q2k(null!=t&&Dn(t)?t:zt())},es.prototype.r2k=function(t){return Tn(t)},es.prototype.y2j=function(t){return this.r2k(null!=t&&Dn(t)?t:zt())},es.prototype.v1o=function(){return un()},es.prototype.s2k=function(t){return t.f()},es.prototype.n2i=function(t){return this.s2k(t instanceof Rt?t:zt())},es.prototype.t2k=function(t){return function(t,n){return Wt(t)}(t,this.o2k_1)},es.prototype.p2i=function(t){return this.t2k(t instanceof Rt?t:zt())},es.prototype.u2k=function(t){return Sn(Bn(t))},es.prototype.r2i=function(t){return this.u2k(null!=t&&Dn(t)?t:zt())},es.prototype.v2k=function(t,n){return t.tg(n)},es.prototype.t2i=function(t,n){return this.v2k(t instanceof Rt?t:zt(),n)},es.prototype.w2k=function(t,n,e){t.zf(n,e)},es.prototype.v2i=function(t,n,e){var o=t instanceof Rt?t:zt();return this.w2k(o,n,null==e||Xt(e)?e:zt())},es.$metadata$=yt("ReferenceArraySerializer",void 0,void 0,void 0,void 0,is.prototype),os.prototype.x2i=function(t){return t.f()},os.prototype.w2j=function(t){return this.x2i(null!=t&&qt(t,Vt)?t:zt())},os.prototype.y2i=function(t){return t.c()},os.prototype.y2j=function(t){return this.y2i(null!=t&&qt(t,Vt)?t:zt())},os.$metadata$=yt("CollectionSerializer",void 0,void 0,void 0,void 0,is.prototype),rs.prototype.f2k=function(){return this.d2k_1},rs.prototype.g2k=function(){return this.e2k_1},rs.prototype.b2j=function(t,n,e,o){if(!(o>=0))throw Kt(Jt("Size must be known in advance when using READ_ALL"));var r=Ln(yn(0,lt(o,2)),2),i=r.f1_1,s=r.g1_1,a=r.h1_1;if(a>0&&i<=s||a<0&&s<=i)do{var u=i;i=i+a|0,this.c2j(t,e+u|0,n,!1)}while(u!==s)},rs.prototype.c2j=function(t,n,e,o){var r,i=this.u2c(),s=t.g2g(i,n,this.d2k_1,null,8,null);if(o){var a=t.i2g(this.u2c());if(a!==(n+1|0))throw Kt(Jt("Value must follow key in a map, index for key: "+n+", returned index for value: "+a));r=a}else r=n+1|0;var u,c=r;if(!e.v2(s)||this.e2k_1.u2c().e2e()instanceof bi){var l=this.u2c();u=t.g2g(l,c,this.e2k_1,null,8,null)}else u=t.f2g(this.u2c(),c,this.e2k_1,Nn(e,s));var h=u;e.n(s,h)},rs.prototype.a2j=function(t,n){for(var e=this.w2j(n),o=this.u2c(),r=t.k2h(o,e),i=0,s=this.y2j(n);s.d();){var a=s.e(),u=a.l2(),c=a.n2(),l=this.u2c(),h=i;i=h+1|0,r.h2h(l,h,this.d2k_1,u);var p=this.u2c(),f=i;i=f+1|0,r.h2h(p,f,this.e2k_1,c)}r.u2f(o)},rs.prototype.v2c=function(t,n){return this.a2j(t,null==n||Xt(n)?n:zt())},rs.$metadata$=yt("MapLikeSerializer",void 0,void 0,void 0,void 0,ss.prototype),is.prototype.a2j=function(t,n){var e=this.w2j(n),o=this.u2c(),r=t.k2h(o,e),i=this.y2j(n),s=0;if(s=0))throw Kt(Jt("Size must be known in advance when using READ_ALL"));var r=0;if(r>>6|0)-1|0;Rn();var o=63&n;t.j2l_1[e]=t.j2l_1[e].fn(new $n(1,0).kb(o))}(this,t)},hs.prototype.l2l=function(){for(var t=this.g2l_1.c2e();!this.i2l_1.equals(new $n(-1,-1));){var n=Un(this.i2l_1.en());if(this.i2l_1=this.i2l_1.fn(new $n(1,0).kb(n)),this.h2l_1(this.g2l_1,n))return n}return Rn(),t>64?function(t){var n=0,e=t.j2l_1.length-1|0;if(n<=e)do{var o=n;n=n+1|0;var r=o+1|0;Rn();for(var i=lt(r,64),s=t.j2l_1[o];!s.equals(new $n(-1,-1));){var a=Un(s.en());s=s.fn(new $n(1,0).kb(a));var u=i+a|0;if(t.h2l_1(t.g2l_1,u))return t.j2l_1[o]=s,u}t.j2l_1[o]=s}while(n<=e);return Ei(),-1}(this):(Ei(),-1)},hs.$metadata$=yt("ElementMarker"),fs.prototype.d2e=function(){return this.y2l_1},fs.prototype.hashCode=function(){return lt(Ss.prototype.hashCode.call(this),31)},fs.prototype.equals=function(t){var n;t:if(this!==t)if(t instanceof fs)if(this.a2e()===t.a2e()){var e=t;if(e.y2l_1&&vn(this.l2m(),e.l2m()))if(this.c2e()===t.c2e()){var o=0,r=this.c2e();if(o>>1|0}while(i<32);throw ir(o,e.a2e())},t.$_$.x1=Ta,t.$_$.y1=function(t,n){return this.w2u(t,(e=n,function(t){return e}));var e},t.$_$.z1=Ba,t.$_$.a2=Jo,t.$_$.b2=Vo,t.$_$.c2=sr,t.$_$.d2=Zo,t.$_$.e2=or,t.$_$.f2=Qo,t.$_$.g2=Yo,t.$_$.h2=lr,t}.apply(n,o))||(t.exports=r)},730:function(t,n,e){var o,r,i;r=[n,e(645),e(744)],void 0===(i="function"==typeof(o=function(t,n,e){"use strict";var o,r,i,s,a,u,c,l,h,p,f,_,d,v,y,m,g,$,b,w,x,k,j,C,z,S,q,O,P,M,A,E,I,D,T,B,L,N,F,R,H,U,V,W,J,K,G,Y,X,Z,Q,tt=Math.imul,nt=n.$_$.x1,et=e.$_$.la,ot=n.$_$.f2,rt=e.$_$.h9,it=e.$_$.r4,st=e.$_$.pa,at=e.$_$.t1,ut=e.$_$.e9,ct=e.$_$.bc,lt=e.$_$.g2,ht=e.$_$.j9,pt=e.$_$.ac,ft=n.$_$.j1,_t=n.$_$.g1,dt=e.$_$.s9,vt=e.$_$.nc,yt=e.$_$.q9,mt=e.$_$.k,gt=e.$_$.g5,$t=e.$_$.n1,bt=e.$_$.i5,wt=e.$_$.c,xt=e.$_$.p9,kt=e.$_$.h,jt=e.$_$.jd,Ct=n.$_$.u1,zt=e.$_$.nb,St=e.$_$.pb,qt=e.$_$.lb,Ot=e.$_$.ob,Pt=e.$_$.kb,Mt=n.$_$.e,At=n.$_$.a,Et=n.$_$.b2,It=n.$_$.m,Dt=n.$_$.z,Tt=e.$_$.g4,Bt=n.$_$.o,Lt=n.$_$.n,Nt=n.$_$.f,Ft=n.$_$.h,Rt=n.$_$.v,Ht=e.$_$.sb,Ut=e.$_$.p4,Vt=n.$_$.s,Wt=e.$_$.h3,Jt=e.$_$.vc,Kt=e.$_$.ba,Gt=e.$_$.w1,Yt=e.$_$.kd,Xt=n.$_$.y,Zt=n.$_$.x,Qt=n.$_$.w,tn=e.$_$.ya,nn=e.$_$.o9,en=n.$_$.m1,on=n.$_$.h1,rn=e.$_$.na,sn=e.$_$.x2,an=e.$_$.z2,un=e.$_$.g3,cn=e.$_$.i3,ln=e.$_$.o2,hn=e.$_$.q2,pn=e.$_$.p3,fn=e.$_$.r3,_n=n.$_$.p1,dn=e.$_$.c9,vn=n.$_$.e2,yn=n.$_$.c,mn=e.$_$.f9,gn=e.$_$.g9,$n=e.$_$.qa,bn=e.$_$.ra,wn=n.$_$.k,xn=e.$_$.t,kn=e.$_$.q7,jn=e.$_$.a9,Cn=e.$_$.fd,zn=e.$_$.l6,Sn=e.$_$.t6,qn=e.$_$.h6,On=e.$_$.i6,Pn=e.$_$.l9,Mn=n.$_$.i,An=e.$_$.c1,En=e.$_$.dc,In=e.$_$.gd,Dn=e.$_$.u8,Tn=e.$_$.ec,Bn=e.$_$.yc,Ln=e.$_$.f8,Nn=(e.$_$.w8,n.$_$.n1),Fn=e.$_$.d,Rn=n.$_$.a2,Hn=e.$_$.da,Un=n.$_$.g2,Vn=n.$_$.d2,Wn=n.$_$.v1,Jn=n.$_$.a1,Kn=n.$_$.u,Gn=n.$_$.t,Yn=n.$_$.g,Xn=n.$_$.j,Zn=n.$_$.y1,Qn=n.$_$.z1,te=n.$_$.c1,ne=e.$_$.md,ee=n.$_$.c2,oe=n.$_$.b,re=e.$_$.ic,ie=e.$_$.id,se=e.$_$.hd,ae=n.$_$.f1,ue=n.$_$.e1,ce=e.$_$.rb,le=e.$_$.y2,he=e.$_$.tb,pe=e.$_$.qb,fe=e.$_$.p2,_e=e.$_$.ub,de=e.$_$.q3,ve=n.$_$.i1,ye=n.$_$.d1,me=e.$_$.j2,ge=n.$_$.l1,$e=n.$_$.k1,be=e.$_$.o4,we=n.$_$.q,xe=e.$_$.n4,ke=n.$_$.r,je=e.$_$.q4,Ce=n.$_$.p,ze=e.$_$.p7,Se=e.$_$.ia,qe=e.$_$.i2,Oe=e.$_$.eb,Pe=e.$_$.ma,Me=n.$_$.s1,Ae=e.$_$.r1,Ee=e.$_$.b4,Ie=e.$_$.f4,De=e.$_$.oa,Te=e.$_$.hb,Be=e.$_$.m6,Le=e.$_$.k7,Ne=e.$_$.x7,Fe=e.$_$.fc,Re=n.$_$.b1,He=e.$_$.b7,Ue=e.$_$.n7,Ve=e.$_$.o,We=e.$_$.jc,Je=e.$_$.h2,Ke=e.$_$.l4,Ge=e.$_$.d9,Ye=e.$_$.n,Xe=e.$_$.m1,Ze=e.$_$.v;function Qe(){o=this,no.call(this,function(t,n,e,o,r,i,s,a,u,c,l,h,p,f){return function(t,n,e,o,r,i,s,a,u,c,l,h,p,f,_){return 0!=(1&p)&&(t=!1),0!=(2&p)&&(n=!1),0!=(4&p)&&(e=!1),0!=(8&p)&&(o=!1),0!=(16&p)&&(r=!1),0!=(32&p)&&(i=!0),0!=(64&p)&&(s=" "),0!=(128&p)&&(a=!1),0!=(256&p)&&(u=!1),0!=(512&p)&&(c="type"),0!=(1024&p)&&(l=!1),0!=(2048&p)&&(h=!0),so.call(_,t,n,e,o,r,i,s,a,u,c,l,h),_}(t,n,e,o,r,i,s,a,u,c,l,h,p,0,Object.create(so.prototype))}(!1,!1,!1,!1,!1,!1,null,!1,!1,null,!1,!1,4095),nt())}function to(){return null==o&&new Qe,o}function no(t,n){to(),this.h2v_1=t,this.i2v_1=n,this.j2v_1=new Dr}function eo(t){this.z2v_1=t.h2v_1.m2w_1,this.a2w_1=t.h2v_1.r2w_1,this.b2w_1=t.h2v_1.n2w_1,this.c2w_1=t.h2v_1.o2w_1,this.d2w_1=t.h2v_1.p2w_1,this.e2w_1=t.h2v_1.q2w_1,this.f2w_1=t.h2v_1.s2w_1,this.g2w_1=t.h2v_1.t2w_1,this.h2w_1=t.h2v_1.u2w_1,this.i2w_1=t.h2v_1.v2w_1,this.j2w_1=t.h2v_1.w2w_1,this.k2w_1=t.h2v_1.x2w_1,this.l2w_1=t.o2d()}function oo(t,n){no.call(this,t,n),function(t){if(ht(t.o2d(),nt()))return it();var n=new Er(t.h2v_1.u2w_1,t.h2v_1.v2w_1);t.o2d().o2u(n)}(this)}function ro(){}function io(){}function so(t,n,e,o,r,i,s,a,u,c,l,h){this.m2w_1=t,this.n2w_1=n,this.o2w_1=e,this.p2w_1=o,this.q2w_1=r,this.r2w_1=i,this.s2w_1=s,this.t2w_1=a,this.u2w_1=u,this.v2w_1=c,this.w2w_1=l,this.x2w_1=h}function ao(){}function uo(){r=this}function co(){null==r&&new uo}function lo(){i=this}function ho(t){null==i&&new lo,co.call(this),this.c2x_1=t}function po(){s=this}function fo(t){var n=t.l2(),e=t.n2(),o=$t();return Kr(o,n),o.r9(lt(58)),o.eb(e),o.toString()}function _o(t){null==s&&new po,co.call(this),this.g2x_1=t}function vo(){a=this}function yo(){null==a&&new vo,co.call(this)}function mo(t,n){yo.call(this),this.i2x_1=n,this.j2x_1=st(t)}function go(){return Ro()}function $o(){u=this,yo.call(this),this.k2x_1="null";var t=kt();this.l2x_1=jt(t,go)}function bo(){return null==u&&new $o,u}function wo(t){return function(t){return Gr(),!!Oe(t,"true",!0)||!Oe(t,"false",!0)&&null}(t.d1e())}function xo(t){return zt(t.d1e())}function ko(t){var n,e=t instanceof yo?t:null;return null==e?function(t,n){throw at("Element "+wt(t)+" is not a "+n)}(t,"JsonPrimitive"):n=e,n}function jo(t){var n=Ho(Co);t.f2d("JsonPrimitive",n,null,!1,12,null);var e=Ho(zo);t.f2d("JsonNull",e,null,!1,12,null);var o=Ho(So);t.f2d("JsonLiteral",o,null,!1,12,null);var r=Ho(qo);t.f2d("JsonObject",r,null,!1,12,null);var i=Ho(Oo);return t.f2d("JsonArray",i,null,!1,12,null),it()}function Co(){return No().n2x_1}function zo(){return Ro().o2x_1}function So(){return Vo().p2x_1}function qo(){return Bo().q2x_1}function Oo(){return Io().r2x_1}function Po(){c=this;var t=Mt();this.s2x_1=At("kotlinx.serialization.json.JsonElement",t,[],jo,4,null)}function Mo(){return null==c&&new Po,c}function Ao(){l=this,this.u2x_1=It(Mo()).u2c(),this.v2x_1="kotlinx.serialization.json.JsonArray"}function Eo(){h=this,this.r2x_1=(null==l&&new Ao,l)}function Io(){return null==h&&new Eo,h}function Do(){p=this,this.x2x_1=Lt(Bt(Tt()),Mo()).u2c(),this.y2x_1="kotlinx.serialization.json.JsonObject"}function To(){f=this,this.q2x_1=(null==p&&new Do,p)}function Bo(){return null==f&&new To,f}function Lo(){_=this;var t=Nt();this.n2x_1=At("kotlinx.serialization.json.JsonPrimitive",t,[],null,12,null)}function No(){return null==_&&new Lo,_}function Fo(){d=this;var t=Ft();this.o2x_1=At("kotlinx.serialization.json.JsonNull",t,[],null,12,null)}function Ro(){return null==d&&new Fo,d}function Ho(t){return new Yo(t)}function Uo(){v=this,this.p2x_1=Rt("kotlinx.serialization.json.JsonLiteral",Nt())}function Vo(){return null==v&&new Uo,v}function Wo(t){!function(t){var n=Kt(t,Xo)?t:null;if(null==n)throw Gt("This serializer can be used only with Json format.Expected Encoder to be JsonEncoder, got "+wt(t))}(t)}function Jo(t){var n=Kt(t,ao)?t:null;if(null==n)throw Gt("This serializer can be used only with Json format.Expected Decoder to be JsonDecoder, got "+wt(t));return n}function Ko(t){Jo(t)}function Go(t){return nn("original",1,tn,(function(t){return Go(t)}),null),t.d2y_1.n2()}function Yo(t){this.d2y_1=Yt(t)}function Xo(){}function Zo(t){this.e2y_1=t,this.f2y_1=!0}function Qo(t,n){Zo.call(this,t),this.a2z_1=n}function tr(t,n){Zo.call(this,t),this.d2z_1=n,this.e2z_1=0}function nr(t){var n,e;this.f2z_1=new _n(t,(n=this,e=function(t,e){return r=t,i=e,(o=n).g2z_1=!r.j2e(i)&&r.g2e(i).w2d(),o.g2z_1;var o,r,i},e.callableName="readIfAbsent",e)),this.g2z_1=!1}function er(t,n){var e="Unexpected special floating-point value "+st(n)+". By default, non-finite floating point values are prohibited because they do not conform JSON specification";t.h2z(e,0,Ji(),2,null)}function or(t){hr.call(this,t),dn(this,or)}function rr(t){return new or("Value of type '"+t.a2e()+"' can't be used in JSON as a key in the map. It should have either primitive or enum kind, but its kind is '"+t.e2e()+"'.\n"+Q)}function ir(t){hr.call(this,t),dn(this,ir)}function sr(t,n,e){return ur(t,n+"\nJSON input: "+pr(e,t))}function ar(t,n,e){return ur(-1,function(t,n,e){return"Unexpected special floating-point value "+st(t)+" with key "+n+". By default, non-finite floating point values are prohibited because they do not conform JSON specification. "+Ji()+"\nCurrent output: "+fr(e,0,1)}(t,n,e))}function ur(t,n){return new ir(t>=0?"Unexpected JSON token at offset "+t+": "+n:n)}function cr(t,n){return ur(-1,"Encountered unknown key '"+t+"'.\n"+Y+"\nCurrent input: "+fr(n,0,1))}function lr(t,n){return new or("Unexpected special floating-point value "+st(t)+". By default, non-finite floating point values are prohibited because they do not conform JSON specification. "+Ji()+"\nCurrent output: "+fr(n,0,1))}function hr(t){yn(t,this),dn(this,hr)}function pr(t,n){if(mn(t)<200)return t;if(-1===n){var e=mn(t)-60|0;if(e<=0)return t;var o=mn(t);return"....."+st(gn(t,e,o))}var r=n-30|0,i=n+30|0,s=r<=0?"":".....",a=i>=mn(t)?"":".....",u=$n(r,0),c=bn(i,mn(t));return s+st(gn(t,u,c))+a}function fr(t,n,e,o){return 0!=(1&e)&&(n=-1),pr(t,n)}function _r(){return mr(),y}function dr(t,n,e){mr();var o=t.h2e(e);if(wn(),-3!==o)return o;if(!n.h2v_1.x2w_1)return o;var r,i,s,a=Gi(n),u=_r(),c=a.j2z(t,u,(i=t,s=function(){return vr(i)},s.callableName="buildAlternativeNamesMap",s)).b3(e);return null==c?(wn(),r=-3):r=c,r}function vr(t){mr();var n=null,e=0,o=t.c2e();if(e>12),r=Jr(e>>8),i=Jr(e>>4),s=Jr(e);t[e]="\\u"+new ct(o)+new ct(r)+new ct(i)+new ct(s)}while(n<=31);t[34]='\\"',t[92]="\\\\",t[9]="\\t",t[8]="\\b",t[10]="\\n",t[13]="\\r",t[12]="\\f",w=t;var a=new Int8Array(93),u=0;if(u<=31)do{var c=u;u=u+1|0,a[c]=1}while(u<=31);34,a[34]=Pe(34),92,a[92]=Pe(92),116,a[9]=Pe(116),98,a[8]=Pe(98),110,a[10]=Pe(110),114,a[13]=Pe(114),102,a[12]=Pe(102)}}function Yr(t){var n=t.p2s(),e=null==n?null:t.s32(n);return null==e?t.n2():e}function Xr(t,n){throw sr(-1,"Failed to parse '"+n+"'",st(Yr(t)))}function Zr(t,n,e){var o=t instanceof mo?t:null;if(null==o)throw ur(-1,"Unexpected 'null' when "+e+" was expected");return o}function Qr(t,n){Me.call(this),this.p32_1=t,this.q32_1=n,this.r32_1=this.a2x().h2v_1}function ti(t,n,e,o,r,i,s){return 0!=(4&r)&&(e=null),0!=(8&r)&&(o=null),oi.call(s,t,n,e,o),s}function ni(t,n,e,o){var r,i;t:{var s=t.a2x(),a=n.g2e(e);if(!a.w2d()&&t.s32(o)instanceof $o)r=!0;else{if(ht(a.e2e(),Ft())){var u=t.s32(o),c=u instanceof yo?u:null,l=null==c?null:(i=c)instanceof $o?null:i.d1e();if(null==l){r=!1;break t}var h=dr(a,s,l);if(wn(),-3===h){it(),r=!0;break t}}r=!1}}return r}function ei(t,n,e){return t.o33_1=!t.a2x().h2v_1.r2w_1&&!n.j2e(e)&&n.g2e(e).w2d(),t.o33_1}function oi(t,n,e,o){Qr.call(this,t,n),this.k33_1=n,this.l33_1=e,this.m33_1=o,this.n33_1=0,this.o33_1=!1}function ri(t,n){Qr.call(this,t,n),this.u33_1=n,this.v33_1=this.u33_1.f(),this.w33_1=-1}function ii(t,n){ti(t,n,null,null,12,0,this),this.h34_1=n,this.i34_1=Ne(this.h34_1.c3()),this.j34_1=tt(this.i34_1.f(),2),this.k34_1=-1}function si(){if(S)return it();S=!0,k=new ai("OBJ",0,qi(),Oi()),j=new ai("LIST",1,Pi(),Mi()),C=new ai("MAP",2,qi(),Oi()),z=new ai("POLY_OBJ",3,Pi(),Mi())}function ai(t,n,e,o){Fe.call(this,t,n),this.g32_1=e,this.h32_1=o}function ui(t,n){var e,o=n.e2e();if(o instanceof Gn)e=fi();else if(ht(o,Mn()))e=hi();else if(ht(o,Xn())){var r,i=ci(n.g2e(0),t.o2d()),s=i.e2e();if(s instanceof Kn||ht(s,Ft()))r=pi();else{if(!t.h2v_1.p2w_1)throw rr(i);r=hi()}e=r}else e=li();return e}function ci(t,n){var e;if(ht(t.e2e(),Yn())){var o=Re(n,t),r=null==o?null:ci(o,n);e=null==r?t:r}else e=t.d2e()?ci(t.g2e(0),n):t;return e}function li(){return si(),k}function hi(){return si(),j}function pi(){return si(),C}function fi(){return si(),z}function _i(t,n,e){return t.l34(n,e),function(t,n){var e=n;-1===(e=t.n34(e))&&t.h2z("Expected escape sequence to continue, got EOF",0,null,6,null);var o=t.m34(),r=e;e=r+1|0;var i=ut(o,r);if(ht(new ct(i),new ct(lt(117))))return yi(t,t.m34(),e);var s=function(t){return t<117?Wi().w34_1[t]:lt(0)}(qe(i));if(ht(new ct(s),new ct(lt(0)))){var a="Invalid escaped char '"+new ct(i)+"'";t.h2z(a,0,null,6,null)}return t.x2v_1.r9(s),e}(t,e+1|0)}function di(t,n,e){t.l34(n,e);var o=t.x2v_1.toString();return t.x2v_1.wk(0),o}function vi(t){var n=Cn(t.w2v_1);return t.w2v_1=null,n}function yi(t,n,e){return(e+4|0)>=mn(n)?(t.u2v_1=e,t.o34(),(t.u2v_1+4|0)>=mn(n)&&t.h2z("Unexpected EOF during unicode escape",0,null,6,null),yi(t,n,t.u2v_1)):(t.x2v_1.r9(Se((((mi(t,n,e)<<12)+(mi(t,n,e+1|0)<<8)|0)+(mi(t,n,e+2|0)<<4)|0)+mi(t,n,e+3|0)|0)),e+4|0)}function mi(t,n,e){var o,r=ut(n,e);if(lt(48)<=r&&r<=lt(57))o=qe(r)-48|0;else if(lt(97)<=r&&r<=lt(102))o=10+(qe(r)-97|0)|0;else if(lt(65)<=r&&r<=lt(70))o=10+(qe(r)-65|0)|0;else{var i="Invalid toHexChar char '"+new ct(r)+"' in unicode escape";t.h2z(i,0,null,6,null)}return o}function gi(t,n){var e=t.n34(n);(e>=mn(t.m34())||-1===e)&&t.h2z("EOF",0,null,6,null);var o=t.m34(),r=e;e=r+1|0;var i,s=ut(o,r),a=32|qe(s);if(116===a)$i(t,"rue",e),i=!0;else if(102===a)$i(t,"alse",e),i=!1;else{var u="Expected valid boolean literal prefix, but had '"+t.j30()+"'";t.h2z(u,0,null,6,null)}return i}function $i(t,n,e){(mn(t.m34())-e|0)=0&&(t.fb("."),t.fb(r.i2e(i)))}else r!==$r()&&(t.fb("["),t.fb("'"),t.eb(r),t.fb("'"),t.fb("]"))}while(e=0&&ht(new ct(t),new ct(lt(34)))&&"null"===this.j30()&&this.s34("Expected string literal but 'null' literal was found",this.u2v_1-4|0,"Use 'coerceInputValues = true' in 'Json {}` builder to coerce nulls to default values."),this.q34(wi(t))},bi.prototype.q34=function(t){var n="Expected "+(1===t?"quotation mark '\"'":4===t?"comma ','":5===t?"colon ':'":6===t?"start of the object '{'":7===t?"end of the object '}'":8===t?"start of the array '['":9===t?"end of the array ']'":"valid token")+", but had '"+(this.u2v_1===mn(this.m34())||this.u2v_1<=0?"EOF":me(ut(this.m34(),this.u2v_1-1|0)))+"' instead",e=this.u2v_1-1|0;this.h2z(n,e,null,4,null)},bi.prototype.g30=function(){for(var t=this.m34(),n=this.u2v_1;-1!==(n=this.n34(n));){var e=ut(t,n);if(!(ht(new ct(e),new ct(lt(32)))||ht(new ct(e),new ct(lt(10)))||ht(new ct(e),new ct(lt(13)))||ht(new ct(e),new ct(lt(9)))))return this.u2v_1=n,wi(e);n=n+1|0}return this.u2v_1=n,10},bi.prototype.w31=function(){var t=this.t34();t=this.n34(t);var n=mn(this.m34())-t|0;if(n<4||-1===t)return!0;var e=0;if(e<=3)do{var o=e;if(e=e+1|0,!ht(new ct(ut("null",o)),new ct(ut(this.m34(),t+o|0))))return!0}while(e<=3);return n>4&&0===wi(ut(this.m34(),t+4|0))||(this.u2v_1=t+4|0,!1)},bi.prototype.t34=function(){var t=this.u2v_1;t:for(;-1!==(t=this.n34(t));){var n=ut(this.m34(),t);if(!(ht(new ct(n),new ct(lt(32)))||ht(new ct(n),new ct(lt(10)))||ht(new ct(n),new ct(lt(13)))||ht(new ct(n),new ct(lt(9)))))break t;t=t+1|0}return this.u2v_1=t,t},bi.prototype.x31=function(t){var n,e=this.g30();if(t){if(1!==e&&0!==e)return null;n=this.j30()}else{if(1!==e)return null;n=this.i30()}var o=n;return this.w2v_1=o,o},bi.prototype.u34=function(t,n){var e=this.m34();return st(gn(e,t,n))},bi.prototype.i30=function(){return null!=this.w2v_1?vi(this):this.a32()},bi.prototype.consumeString2=function(t,n,e){for(var o=e,r=n,i=ut(t,o),s=!1;!ht(new ct(i),new ct(lt(34)));){if(ht(new ct(i),new ct(lt(92)))){if(s=!0,-1===(o=this.n34(_i(this,r,o)))){var a=o;this.h2z("EOF",a,null,4,null)}r=o}else if((o=o+1|0)>=mn(t)){if(s=!0,this.l34(r,o),-1===(o=this.n34(o))){var u=o;this.h2z("EOF",u,null,4,null)}r=o}i=ut(t,o)}var c=s?di(this,r,o):this.u34(r,o);return this.u2v_1=o+1|0,c},bi.prototype.b32=function(){var t,n=this.j30();return"null"===n&&!ht(new ct(ut((t=this).m34(),t.u2v_1-1|0)),new ct(lt(34)))&&this.h2z("Unexpected 'null' value instead of string literal",0,null,6,null),n},bi.prototype.j30=function(){if(null!=this.w2v_1)return vi(this);var t=this.t34();if(t>=mn(this.m34())||-1===t){var n=t;this.h2z("EOF",n,null,4,null)}var e=wi(ut(this.m34(),t));if(1===e)return this.i30();if(0!==e){var o="Expected beginning of the string, but got "+new ct(ut(this.m34(),t));this.h2z(o,0,null,6,null)}for(var r=!1;0===wi(ut(this.m34(),t));)if((t=t+1|0)>=mn(this.m34())){r=!0,this.l34(this.u2v_1,t);var i=this.n34(t);if(-1===i)return this.u2v_1=t,di(this,0,0);t=i}var s=r?di(this,this.u2v_1,t):this.u34(this.u2v_1,t);return this.u2v_1=t,s},bi.prototype.l34=function(t,n){this.x2v_1.vk(this.m34(),t,n)},bi.prototype.v34=function(t,n,e){if(!t){var o=e();this.h2z(o,n,null,4,null)}},bi.prototype.z31=function(t){var n=xn(),e=this.g30();if(8!==e&&6!==e)return this.j30(),it();for(;;)if(1!==(e=this.g30())){var o=e;if(8===o||6===o)n.a(e);else if(9===o){if(8!==He(n))throw sr(this.u2v_1,"found ] instead of } at path: "+this.v2v_1,this.m34());Ue(n)}else if(7===o){if(6!==He(n))throw sr(this.u2v_1,"found } instead of ] at path: "+this.v2v_1,this.m34());Ue(n)}else 10===o&&this.h2z("Unexpected end of input due to malformed JSON during ignoring unknown keys",0,null,6,null);if(this.l30(),0===n.f())return it()}else t?this.j30():this.a32()},bi.prototype.toString=function(){return"JsonReader(source='"+this.m34()+"', currentPosition="+this.u2v_1+")"},bi.prototype.y31=function(t){var n=this.u34(0,this.u2v_1),e=Ve(n,t,0,!1,6,null);this.s34("Encountered an unknown key '"+t+"'",e,"Use 'ignoreUnknownKeys = true' in 'Json {}' builder to ignore unknown keys.")},bi.prototype.s34=function(t,n,e){var o=0===mn(e)?"":"\n"+e;throw sr(n,t+" at path: "+this.v2v_1.t2z()+o,this.m34())},bi.prototype.h2z=function(t,n,e,o,r){return 0!=(2&o)&&(n=this.u2v_1),0!=(4&o)&&(e=""),this.s34(t,n,e)},bi.prototype.k32=function(){var t,n=this.t34();((n=this.n34(n))>=mn(this.m34())||-1===n)&&this.h2z("EOF",0,null,6,null),ht(new ct(ut(this.m34(),n)),new ct(lt(34)))?((n=n+1|0)===mn(this.m34())&&this.h2z("EOF",0,null,6,null),t=!0):t=!1;var e,o=t,r=new We(0,0),i=!1,s=n,a=!0;t:for(;a;){var u=ut(this.m34(),n);if(ht(new ct(u),new ct(lt(45))))n!==s&&this.h2z("Unexpected symbol '-' in numeric literal",0,null,6,null),i=!0,n=n+1|0;else{if(0!==wi(u))break t;a=!((n=n+1|0)===mn(this.m34()));var c=Je(u,lt(48));if(!(0<=c&&c<=9)){var l="Unexpected symbol '"+new ct(u)+"' in numeric literal";this.h2z(l,0,null,6,null)}(r=r.u9(new We(10,0)).w9(rn(c))).d1(new We(0,0))>0&&this.h2z("Numeric value overflow",0,null,6,null)}}if((s===n||i&&s===(n-1|0))&&this.h2z("Expected numeric literal",0,null,6,null),o&&(a||this.h2z("EOF",0,null,6,null),ht(new ct(ut(this.m34(),n)),new ct(lt(34)))||this.h2z("Expected closing quotation mark",0,null,6,null),n=n+1|0),this.u2v_1=n,i)e=r;else{var h=r;Ke(),h.equals(new We(0,-2147483648))?this.h2z("Numeric value overflow",0,null,6,null):e=r.s9()}return e},bi.prototype.i32=function(){return gi(this,this.t34())},bi.prototype.j32=function(){var t,n=this.t34();n===mn(this.m34())&&this.h2z("EOF",0,null,6,null),ht(new ct(ut(this.m34(),n)),new ct(lt(34)))?(n=n+1|0,t=!0):t=!1;var e=t,o=gi(this,n);if(e){this.u2v_1===mn(this.m34())&&this.h2z("EOF",0,null,6,null),ht(new ct(ut(this.m34(),this.u2v_1)),new ct(lt(34)))||this.h2z("Expected closing quotation mark",0,null,6,null);this.u2v_1=this.u2v_1+1|0}return o},bi.$metadata$=rt("AbstractJsonLexer"),Vi.$metadata$=et("CharMappings"),Ki.prototype.m34=function(){return this.c35_1},Ki.prototype.n34=function(t){return t=0},Wn.prototype.du=function(){var t=this.ut_1,n=null==t?null:t.eu();return null==n||n},Wn.prototype.fu=function(t){this.st_1=this.st_1.v9(Vn(0,t)),t||(this.tt_1=!0)},Wn.prototype.gu=function(t){if(this.st_1=this.st_1.w9(Vn(0,t)),this.st_1.d1(new jt(0,0))>0)return N();this.tt_1&&this.hu()},Wn.prototype.hu=function(){},Wn.$metadata$=W("EventLoop",void 0,void 0,void 0,void 0,Tn.prototype),Jn.prototype.ju=function(){var t,n=this.iu_1.lu();if(null==n){var e=new Jo;Kn().iu_1.mu(e),t=e}else t=n;return t},Jn.$metadata$=st("ThreadLocalEventLoop"),Gn.$metadata$=W("CompletionHandlerException",void 0,void 0,void 0,void 0,Ct.prototype),Yn.$metadata$=W("CoroutinesInternalError",void 0,void 0,void 0,void 0,qt.prototype),Xn.$metadata$=nt("DisposableHandle"),Zn.$metadata$=st("Key",[$t]),te.$metadata$=nt("Job",[Pt]),ne.$metadata$=nt("ChildJob",[te]),ee.$metadata$=nt("ParentJob",[te]),oe.$metadata$=nt("ChildHandle",[Xn]),re.prototype.ks=function(){},re.prototype.hq=function(t){return!1},re.prototype.toString=function(){return"NonDisposableHandle"},re.$metadata$=st("NonDisposableHandle",[Xn,oe]),fe.prototype.yo=function(){return this.nu_1},fe.prototype.ou=function(){return null},fe.prototype.toString=function(){return"Empty{"+(this.nu_1?"Active":"New")+"}"},fe.$metadata$=W("Empty",[_e]),_e.$metadata$=nt("Incomplete"),de.prototype.yo=function(){return!0},de.prototype.ou=function(){return this},de.prototype.su=function(t){var n=At();n.fb("List{"),n.fb(t),n.fb("}[");for(var e=!0,o=this.tu_1;!G(o,this);){if(o instanceof ve){var r=o;e?e=!1:n.fb(", "),n.eb(r)}o=o.tu_1}return n.fb("]"),n.toString()},de.prototype.toString=function(){return Fo()?this.su("Active"):ir.prototype.toString.call(this)},de.$metadata$=W("NodeList",[_e],void 0,void 0,void 0,ir.prototype),ve.prototype.hv=function(){var t=this.gv_1;if(null!=t)return t;Et("job")},ve.prototype.yo=function(){return!0},ve.prototype.ou=function(){return null},ve.prototype.ks=function(){return this.hv().bq(this)},ve.prototype.toString=function(){return Ro(this)+"@"+Ho(this)+"[job@"+Ho(this.hv())+"]"},ve.$metadata$=W("JobNode",[Xn,_e],void 0,void 0,void 0,Eo.prototype),Ie.prototype.ou=function(){return this.kv_1},Ie.prototype.vv=function(t){this.lv_1.oo_1=t},Ie.prototype.rv=function(){return this.lv_1.oo_1},Ie.prototype.bw=function(t){this.mv_1.ko_1=t},Ie.prototype.uv=function(){return this.mv_1.ko_1},Ie.prototype.sv=function(){return me(this)===he()},Ie.prototype.ov=function(){return!(null==this.uv())},Ie.prototype.yo=function(){return null==this.uv()},Ie.prototype.pv=function(t){var n,e=me(this);if(null==e)n=ge();else if(e instanceof Error){var o=ge();o.a(e),n=o}else{if(!(e instanceof Tt)){var r="State is "+ot(e);throw X(rt(r))}n=e instanceof Tt?e:B()}var i=n,s=this.uv(),a=s;return null==a||(i.zf(0,a),N()),null==t||G(t,s)||i.a(t),ye(this,he()),i},Ie.prototype.tv=function(t){var n=this.uv();if(null==n)return this.bw(t),N();if(t===n)return N();var e=me(this);if(null==e)ye(this,t);else if(e instanceof Error){if(t===e)return N();var o=ge();o.a(e),o.a(t),ye(this,o)}else{if(!(e instanceof Tt)){var r="State is "+ot(e);throw X(rt(r))}(e instanceof Tt?e:B()).a(t)}},Ie.prototype.toString=function(){return"Finishing[cancelling="+this.ov()+", completing="+this.rv()+", rootCause="+this.uv()+", exceptions="+ot(me(this))+", list="+this.kv_1+"]"},Ie.$metadata$=W("Finishing",[_e]),De.prototype.it=function(t){!function(t,n,e,o){var r=Ae(e);if(null!=r&&Me(t,n,r,o))return N();var i=$e(t,n,o);t.ip(i)}(this.gw_1,this.hw_1,this.iw_1,this.jw_1)},De.prototype.invoke=function(t){return this.it(t)},De.$metadata$=W("ChildCompletion",void 0,void 0,void 0,void 0,ve.prototype),Te.prototype.zw=function(t,n){var e=this.ax(t,n);return e.l7_1=N(),e.m7_1=null,e.q7()},Te.prototype.r7=function(t,n){return this.zw(t instanceof Lt?t:B(),n)},Te.prototype.q7=function(){var t=this.l7_1;t:for(;;)try{switch(this.j7_1){case 0:if(this.k7_1=8,this.uw_1=this.sw_1.rp(),this.uw_1 instanceof Re){if(this.j7_1=6,(t=this.tw_1.t4(this.uw_1.aw_1,this))===tt())return t;continue t}var n=this.uw_1;if(null!=n&&et(n,_e)){if(this.vw_1=this.uw_1.ou(),null==this.vw_1){this.ww_1=null,this.j7_1=5;continue t}this.xw_1=this.vw_1.tu_1,this.j7_1=1;continue t}this.j7_1=7;continue t;case 1:if(G(this.xw_1,this.vw_1)){this.j7_1=4;continue t}if(this.xw_1 instanceof Re){if(this.yw_1=this.xw_1,this.j7_1=2,(t=this.tw_1.t4(this.yw_1.aw_1,this))===tt())return t;continue t}this.j7_1=3;continue t;case 2:this.j7_1=3;continue t;case 3:this.xw_1=this.xw_1.tu_1,this.j7_1=1;continue t;case 4:this.ww_1=N(),this.j7_1=5;continue t;case 5:case 6:this.j7_1=7;continue t;case 7:return N();case 8:throw this.m7_1}}catch(t){if(8===this.k7_1)throw t;this.j7_1=this.k7_1,this.m7_1=t}},Te.prototype.ax=function(t,n){var e=new Te(this.sw_1,n);return e.tw_1=t,e},Te.$metadata$=W("JobSupport$$slambda",void 0,void 0,void 0,[1],Bt.prototype),Be.prototype.l2=function(){return Qn()},Be.prototype.pp=function(t){this.so_1.ko_1=t},Be.prototype.qp=function(){return this.so_1.ko_1},Be.prototype.to=function(t){if(null==t)return this.pp(ie()),N();t.tp();var n=t.lq(this);this.pp(n),this.sp()&&(n.ks(),this.pp(ie()))},Be.prototype.rp=function(){for(var t=this.ro_1;;){var n=t.ko_1;if(!(n instanceof _o))return n;n.bx(this)}},Be.prototype.yo=function(){var t=this.rp();return!(null==t||!et(t,_e))&&t.yo()},Be.prototype.sp=function(){var t=this.rp();return!(null!=t&&et(t,_e))},Be.prototype.tp=function(){for(;;){var t=ke(this,this.rp());if(0===t)return!1;if(1===t)return!0}},Be.prototype.up=function(){},Be.prototype.vp=function(){var t,n=this.rp();if(n instanceof Ie){var e=n.uv(),o=null==e?null:this.wp(e,Ro(this)+" is cancelling");if(null==o)throw X(rt("Job is still new or active: "+this));t=o}else{if(null!=n&&et(n,_e))throw X(rt("Job is still new or active: "+this));t=n instanceof qn?this.xp(n.dp_1,null,1,null):new Ko(Ro(this)+" has completed normally",null,this)}return t},Be.prototype.wp=function(t,n){var e,o=t instanceof Dt?t:null;if(null==o){var r=n;e=new Ko(null==r?this.bp():r,t,this)}else e=o;return e},Be.prototype.xp=function(t,n,e,o){return 0!=(1&e)&&(n=null),this.wp(t,n)},Be.prototype.yp=function(t){return this.zp(!1,!0,t)},Be.prototype.zp=function(t,n,e){for(var o=function(t,n,e){var o;if(e){var r=n instanceof Ne?n:null;o=null==r?new He(n):r}else{var i=n instanceof ve?n:null,s=null==i?null:i;o=null==s?new Ue(n):s}var a=o;return a.gv_1=t,a}(this,e,t);;)t:{var r=this.rp(),i=r;if(i instanceof fe)if(r.nu_1){if(this.ro_1.atomicfu$compareAndSet(r,o))return o}else Ce(this,r);else{if(null==i||!et(i,_e)){if(n){var s=r instanceof qn?r:null;Io(e,null==s?null:s.dp_1)}return ie()}var a=r.ou();if(null==a)ze(this,r instanceof ve?r:B());else{var u=null,c=ie();if(t&&r instanceof Ie&&(null==(u=r.uv())||e instanceof Re&&!r.rv())){if(!je(this,r,a,o)){N();break t}if(null==u)return o;c=o,N()}if(null!=u)return n&&Io(e,u),c;if(je(this,r,a,o))return o}}}},Be.prototype.bq=function(t){for(;;){var n=this.rp();if(!(n instanceof ve))return null!=n&&et(n,_e)?(null!=n.ou()&&t.iv(),N()):N();if(n!==t)return N();if(this.ro_1.atomicfu$compareAndSet(n,pe()))return N()}},Be.prototype.cq=function(){return!1},Be.prototype.dq=function(t){var n,e=t;if(null==e){n=new Ko(this.bp(),null,this)}else n=e;this.fq(n)},Be.prototype.bp=function(){return"Job was cancelled"},Be.prototype.fq=function(t){this.iq(t)},Be.prototype.gq=function(t){this.iq(t)},Be.prototype.hq=function(t){return t instanceof Dt||!!this.iq(t)&&this.oq()},Be.prototype.iq=function(t){var n,e=ae();return!(!this.cq()||(e=function(t,n){for(;;){var e=t.rp();if(null==e||!et(e,_e)||e instanceof Ie&&e.rv())return ae();var o=Pe(t,e,Sn(Se(t,n),!1,2));if(o!==ce())return o}}(this,t))!==ue())||(e===ae()&&(e=function(t,n){for(var e=null;;)t:{var o=t.rp(),r=o;if(r instanceof Ie){if(o.sv())return le();var i=o.ov();if(null!=n||!i){var s,a=e;if(null==a){var u=Se(t,n);e=u,s=u}else s=a;var c=s;o.tv(c)}var l=o.uv(),h=i?null:l;return null==h||(we(t,o.kv_1,h),N()),ae()}if(null==r||!et(r,_e))return le();var p,f=e;if(null==f){var _=Se(t,n);e=_,p=_}else p=f;var d=p;if(!o.yo()){var v=Pe(t,o,Sn(d,!1,2));if(v===ae()){var y="Cannot happen in "+ot(o);throw X(rt(y))}if(v===ce()){N();break t}return v}if(Oe(t,o,d))return ae()}}(this,t)),e===ae()||e===ue()?n=!0:e===le()?n=!1:(this.ip(e),n=!0),n)},Be.prototype.jq=function(t,n){var e=t;return new Ko(null==e?this.bp():e,n,this)},Be.prototype.kq=function(){var t,n=this.rp(),e=n;if(e instanceof Ie)t=n.uv();else if(e instanceof qn)t=n.dp_1;else{if(null!=e&&et(e,_e)){var o="Cannot be cancelling child in this state: "+ot(n);throw X(rt(o))}t=null}var r=t,i=r instanceof Dt?r:null;return null==i?new Ko("Parent job is "+Ee(0,n),r,this):i},Be.prototype.gp=function(t){for(;;){var n=Pe(this,this.rp(),t);if(n===ae())throw Nt("Job "+this+" is already complete or completing, but is being completed with "+ot(t),(o=void 0,null==(o=(e=t)instanceof qn?e:null)?null:o.dp_1));if(n!==ce())return n;N()}var e,o},Be.prototype.jt=function(){return Ft((t=new Te(this,null),(n=function(n,e){return t.zw(n,e)}).$arity=1,n));var t,n},Be.prototype.lq=function(t){var n;n=new Re(t);var e=this.aq(!0,!1,n,2,null);return et(e,oe)?e:B()},Be.prototype.jp=function(t){throw t},Be.prototype.mq=function(t){},Be.prototype.nq=function(){return!1},Be.prototype.oq=function(){return!0},Be.prototype.pq=function(t){return!1},Be.prototype.cp=function(t){},Be.prototype.ip=function(t){},Be.prototype.toString=function(){return this.qq()+"@"+Ho(this)},Be.prototype.qq=function(){return this.kp()+"{"+Ee(0,this.rp())+"}"},Be.prototype.kp=function(){return Ro(this)},Be.$metadata$=W("JobSupport",[te,ne,ee,Ao]),Ne.$metadata$=W("JobCancellingNode",void 0,void 0,void 0,void 0,ve.prototype),Fe.prototype.ou=function(){return this.qv_1},Fe.prototype.yo=function(){return!1},Fe.prototype.toString=function(){return Fo()?this.qv_1.su("New"):Rt(this)},Fe.$metadata$=W("InactiveNodeList",[_e]),Re.prototype.it=function(t){return this.aw_1.gq(this.hv())},Re.prototype.invoke=function(t){return this.it(t)},Re.prototype.hq=function(t){return this.hv().hq(t)},Re.$metadata$=W("ChildHandleNode",[oe],void 0,void 0,void 0,Ne.prototype),He.prototype.it=function(t){this.hx_1.atomicfu$compareAndSet(0,1)&&this.gx_1(t)},He.prototype.invoke=function(t){return this.it(t)},He.$metadata$=W("InvokeOnCancelling",void 0,void 0,void 0,void 0,Ne.prototype),Ue.prototype.it=function(t){return this.mx_1(t)},Ue.prototype.invoke=function(t){return this.it(t)},Ue.$metadata$=W("InvokeOnCompletion",void 0,void 0,void 0,void 0,ve.prototype),We.$metadata$=W("IncompleteStateBox"),Je.prototype.it=function(t){this.sx_1.ws(this.sx_1.xs(this.hv()))},Je.prototype.invoke=function(t){return this.it(t)},Je.$metadata$=W("ChildContinuation",void 0,void 0,void 0,void 0,Ne.prototype),Ke.prototype.cq=function(){return!0},Ke.prototype.oq=function(){return this.vx_1},Ke.$metadata$=W("JobImpl",[zn],void 0,void 0,void 0,Be.prototype),Ye.prototype.toString=function(){var t=this.yx();return null==t?Ro(this)+"@"+Ho(this):t},Ye.prototype.yx=function(){var t,n=Vo().dy();if(this===n)return"Dispatchers.Main";try{t=n.xx()}catch(n){if(!(n instanceof Ht))throw n;t=null}return this===t?"Dispatchers.Main.immediate":null},Ye.$metadata$=W("MainCoroutineDispatcher",void 0,void 0,void 0,void 0,Tn.prototype),Xe.prototype.hq=function(t){return!1},Xe.$metadata$=W("SupervisorJobImpl",void 0,void 0,void 0,void 0,Ke.prototype),Ze.$metadata$=W("TimeoutCancellationException",[Hn],void 0,void 0,void 0,Dt.prototype),Qe.prototype.nt=function(t){return!1},Qe.prototype.ot=function(t,n){var e=t.z7((null==w&&new to,w));if(null!=e)return e.jy_1=!0,N();throw Ut("Dispatchers.Unconfined.dispatch function can only be used by the yield function. If you wrap Unconfined dispatcher in your code, make sure you properly delegate isDispatchNeeded and dispatch calls.")},Qe.prototype.toString=function(){return"Dispatchers.Unconfined"},Qe.$metadata$=st("Unconfined",void 0,void 0,void 0,void 0,Tn.prototype),to.$metadata$=st("Key",[$t]),no.$metadata$=nt("Flow"),eo.$metadata$=nt("FlowCollector"),oo.$metadata$=nt("MutableSharedFlow",[ro,eo]),ro.$metadata$=nt("SharedFlow",[no]),io.$metadata$=nt("MutableStateFlow",[so,oo]),so.$metadata$=nt("StateFlow",[ro]),uo.prototype.ky=function(t){var n=t;ao(this,null,null==n?ho():n)},uo.prototype.n2=function(){var t=ho(),n=this.uy_1.ko_1;return n===t?null:L(n)?n:B()},uo.prototype.ly=function(t,n){var e=t,o=n;return ao(this,null==e?ho():e,null==o?ho():o)},uo.$metadata$=W("StateFlowImpl",[io,po,lo],void 0,void 0,void 0,co.prototype),co.$metadata$=W("AbstractSharedFlow"),lo.$metadata$=nt("FusibleFlow",[no]),po.$metadata$=nt("CancellableFlow",[no]),fo.prototype.eu=function(){return this.xt_1===this.yt_1},fo.prototype.bu=function(t){this.wt_1[this.yt_1]=t,this.yt_1=(this.yt_1+1|0)&(this.wt_1.length-1|0),this.yt_1===this.xt_1&&function(t){var n=t.wt_1.length,e=Wt(Array(n<<1),null),o=t.wt_1,r=t.xt_1,i=o.length;Jt(o,e,0,r,i);var s=t.wt_1,a=t.wt_1.length-t.xt_1|0,u=t.xt_1;Jt(s,e,a,0,u),t.wt_1=e,t.xt_1=0,t.yt_1=n}(this)},fo.prototype.zt=function(){if(this.xt_1===this.yt_1)return null;var t=this.wt_1[this.xt_1];return this.wt_1[this.xt_1]=null,this.xt_1=(this.xt_1+1|0)&(this.wt_1.length-1|0),L(t)?t:B()},fo.$metadata$=W("ArrayQueue"),_o.$metadata$=W("OpDescriptor"),$o.prototype.yy=function(){return this.ur_1},$o.prototype.b5=function(){return this.ur_1.b5()},$o.prototype.zy=function(){return this.wr_1},$o.prototype.yr=function(){return!(null==this.xr_1.ko_1)},$o.prototype.az=function(){for(var t=this.xr_1;;)if(t.ko_1!==yo())return N()},$o.prototype.pt=function(){this.az();var t,n=(t=this.xr_1.ko_1)instanceof gn?t:null;null==n||n.cs()},$o.prototype.bs=function(t){for(var n=this.xr_1;;){var e=n.ko_1;if(e!==yo()){if(e instanceof Error){if(!this.xr_1.atomicfu$compareAndSet(e,null))throw Kt(rt("Failed requirement."));return e}var o="Inconsistent state "+ot(e);throw X(rt(o))}if(this.xr_1.atomicfu$compareAndSet(yo(),t))return null}},$o.prototype.as=function(t){for(var n=this.xr_1;;){var e=n.ko_1,o=e;if(G(o,yo())){if(this.xr_1.atomicfu$compareAndSet(yo(),t))return!0}else{if(o instanceof Error)return!0;if(this.xr_1.atomicfu$compareAndSet(e,null))return!1}}},$o.prototype.ls=function(){var t=this.vr_1;return this.vr_1=vo(),t},$o.prototype.is=function(){return this},$o.prototype.z4=function(t){var n=this.ur_1.b5(),e=Mn(t,null,1);if(this.tr_1.nt(n))this.vr_1=e,this.zr_1=jo(),this.tr_1.ot(n,this);else{var o=jo(),r=Kn().ju();if(r.cu())this.vr_1=e,this.zr_1=o,r.au(this);else{r.fu(!0);try{for(this.b5(),this.wr_1,this.ur_1.z4(t),N();r.vt(););}catch(t){if(!(t instanceof Error))throw t;this.dt(t,null)}finally{r.gu(!0)}}}},$o.prototype.ms=function(t,n){t instanceof An&&t.lt_1(n)},$o.prototype.bz=function(t){var n=this.b5().z7(Qn());if(null!=n&&!n.yo()){var e,o=n.vp();return this.ms(t,o),pt(),e=ft(_t(o)),this.z4(e),N(),!0}return!1},$o.prototype.cz=function(t){this.ur_1,this.wr_1,this.ur_1.z4(t),N()},$o.prototype.toString=function(){return"DispatchedContinuation["+this.tr_1+", "+To(this.ur_1)+"]"},$o.$metadata$=W("DispatchedContinuation",[ar,V],void 0,void 0,void 0,xo.prototype),xo.prototype.bt=function(){return this.zr_1},xo.prototype.ms=function(t,n){},xo.prototype.ys=function(t){return null==t||L(t)?t:B()},xo.prototype.at=function(t){var n=t instanceof qn?t:null;return null==n?null:n.dp_1},xo.prototype.ct=function(){N(),N();var t=null;try{var n=this.is(),e=n instanceof $o?n:B(),o=e.ur_1,r=(e.wr_1,o.b5()),i=this.ls(),s=this.at(i),a=null==s&&ko(this.zr_1)?r.z7(Qn()):null;if(null==a||a.yo()){if(null!=s){var u;pt(),u=ft(_t(s)),o.z4(u),N()}else{var c,l=this.ys(i);pt(),c=ft(l),o.z4(c),N()}}else{var h,p=a.vp();this.ms(i,p),pt();var f=ur(p);h=ft(_t(f)),o.z4(h),N()}}catch(n){if(!(n instanceof Error))throw n;t=n}finally{var _;try{pt(),N(),_=ft(N())}catch(t){if(!(t instanceof Error))throw t;pt(),_=ft(_t(t))}var d=_;this.dt(t,lt(d))}},xo.prototype.dt=function(t,n){if(null===t&&null===n)return N();var e=new Yn("Fatal exception in coroutines machinery for "+this+". Please read KDoc to 'handleFatalException' method and report this incident to maintainers",Gt(null==t?n:t));Bn(this.is().b5(),e)},xo.$metadata$=W("DispatchedTask",void 0,void 0,void 0,void 0,rr.prototype),zo.prototype.xo=function(){return this.dz_1},zo.prototype.toString=function(){return"CoroutineScope(coroutineContext="+this.dz_1+")"},zo.$metadata$=W("ContextScope",[Nn]),So.prototype.nq=function(){return!0},So.prototype.ip=function(t){go(Q(this.ir_1),En(t,this.ir_1),null,2)},So.prototype.hp=function(t){this.ir_1.z4(En(t,this.ir_1))},So.$metadata$=W("ScopeCoroutine",[ar],void 0,void 0,void 0,en.prototype),qo.prototype.toString=function(){return"<"+this.ez_1+">"},qo.prototype.fz=function(t){return t===this?null:null==t||L(t)?t:B()},qo.$metadata$=W("Symbol"),Ao.$metadata$=nt("SelectClause0"),Eo.$metadata$=W("CompletionHandlerBase",void 0,void 0,void 0,void 0,sr.prototype),Do.$metadata$=W("CancelHandlerBase"),Lo.prototype.hp=function(t){return this.ir_1.z4(En(t,this.ir_1))},Lo.$metadata$=W("UndispatchedCoroutine",void 0,void 0,void 0,void 0,So.prototype),Uo.prototype.dy=function(){var t=this.cy_1;return null==t?this.by_1:t},Uo.$metadata$=st("Dispatchers"),Wo.prototype.xx=function(){return this.nz_1},Wo.prototype.nt=function(t){return!this.mz_1},Wo.prototype.ot=function(t,n){return this.lz_1.ot(t,n)},Wo.prototype.toString=function(){var t=this.yx();return null==t?this.lz_1.toString():t},Wo.$metadata$=W("JsMainDispatcher",void 0,void 0,void 0,void 0,Ye.prototype),Jo.prototype.ot=function(t,n){!function(){throw Ut("runBlocking event loop is not supported")}()},Jo.$metadata$=W("UnconfinedEventLoop",void 0,void 0,void 0,void 0,Wn.prototype),Ko.prototype.toString=function(){return Dt.prototype.toString.call(this)+"; job="+this.sz_1},Ko.prototype.equals=function(t){return t===this||!!(t instanceof Ko&&t.message==this.message&&G(t.sz_1,this.sz_1))&&G(t.cause,this.cause)},Ko.prototype.hashCode=function(){var t=T(T(Zt(Gt(this.message)),31)+at(this.sz_1)|0,31),n=this.cause,e=null==n?null:at(n);return t+(null==e?0:e)|0},Ko.$metadata$=W("JobCancellationException",void 0,void 0,void 0,void 0,Dt.prototype),Go.prototype.vz=function(){process.nextTick(this.e10_1.b10_1)},Go.$metadata$=st("NodeDispatcher",void 0,void 0,void 0,void 0,Qo.prototype),Xo.prototype.vz=function(){setTimeout(this.e10_1.b10_1,0)},Xo.$metadata$=st("SetTimeoutDispatcher",void 0,void 0,void 0,void 0,Qo.prototype),Zo.prototype.n10=function(){this.c10_1.vz()},Zo.prototype.o10=function(){setTimeout(this.b10_1,0)},Zo.$metadata$=W("ScheduledMessageQueue",void 0,void 0,void 0,void 0,tr.prototype),Qo.prototype.ot=function(t,n){this.e10_1.p10(n)},Qo.$metadata$=W("SetTimeoutBasedDispatcher",[Un],void 0,void 0,void 0,Tn.prototype),tr.prototype.p10=function(t){this.bu(t),this.l10_1||(this.l10_1=!0,this.n10())},tr.prototype.m10=function(){try{var t=this.k10_1,n=0;if(nn?t+r|0:t,c=t>n?n+r|0:(n+e|0)-2|0,l=this.h1s();i=this.h1s().childNodes[u];var h,p=l.removeChild(a(i)),f=this.h1s();h=this.h1s().childNodes[c],f.insertBefore(p,a(h))}while(o (renderComposable.kt:59)"),v(y,e,0),E()&&(I(),s())),s()})),function(t,n){return d.u1b(t,n)})),p;var d;var v,y}(t,n,e)}(a(document.getElementById(t)),null,n,2)},t}.apply(n,o))||(t.exports=r)},261:function(t,n,e){var o,r,i;r=[n,e(744),e(506),e(769)],void 0===(i="function"==typeof(o=function(t,n,e,o){"use strict";var r,i,s,a,u,c,l,h,p,f,_,d,v,y,m,g,$,b,w,x,k,j,C,z,S,q,O,P,M,A,E,I,D,T,B,L,N,F,R,H,U,V,W,J,K,G,Y,X,Z,Q,tt=Math.imul,nt=n.$_$.r4,et=n.$_$.la,ot=(n.$_$.s5,n.$_$.s9),rt=n.$_$.c1,it=n.$_$.t,st=n.$_$.p5,at=n.$_$.sd,ut=n.$_$.nc,ct=n.$_$.kc,lt=n.$_$.h9,ht=n.$_$.fc,pt=n.$_$.pa,ft=n.$_$.w1,_t=e.$_$.d,dt=n.$_$.f9,vt=n.$_$.e1,yt=n.$_$.fd,mt=n.$_$.rd,gt=o.$_$.s,$t=o.$_$.o,bt=o.$_$.i,wt=o.$_$.r,xt=n.$_$.jb,kt=n.$_$.j9,jt=o.$_$.j,Ct=n.$_$.ja,zt=n.$_$.n9,St=n.$_$.q9,qt=n.$_$.ba,Ot=n.$_$.p9,Pt=n.$_$.y4,Mt=o.$_$.q,At=o.$_$.z,Et=n.$_$.da,It=o.$_$.u,Dt=o.$_$.v,Tt=o.$_$.w,Bt=o.$_$.x,Lt=(o.$_$.m,e.$_$.c),Nt=n.$_$.k6,Ft=n.$_$.j6,Rt=e.$_$.a,Ht=n.$_$.qd,Ut=n.$_$.kd,Vt=o.$_$.n,Wt=e.$_$.b,Jt=o.$_$.t,Kt=o.$_$.b,Gt=n.$_$.ya,Yt=n.$_$.o9;function Xt(t,n){return Zt(),n!==t.value&&(t.value=n),function(t,n){Kn(),Un().set(t,n),t instanceof HTMLInputElement&&function(t){var n;if(Kn(),"radio"===t.type){var e=t.name;n=dt(e)>0}else n=!1;if(n){if(!Vn().v2(t.name)){var o=Vn(),r=t.name,i=vt();o.n(r,i)}yt(Vn().b3(t.name)).a(t)}}(t)}(t,n),nt()}function Zt(){i||(i=!0,r=Xt)}function Qt(){s=this,this.l20_1="class",this.m20_1="id",this.n20_1="hidden",this.o20_1="title",this.p20_1="dir",this.q20_1="draggable",this.r20_1="contenteditable",this.s20_1="lang",this.t20_1="tabindex",this.u20_1="spellcheck"}function tn(){}function nn(t,n,e){return function(t,n,e,o){return 0!=(1&n)&&(t=new an),en.call(o,t),o}(t,n,0,Object.create(en.prototype))}function en(t){this.d21_1=t;var n;n=rt(),this.e21_1=n,this.f21_1=new oe;var e;e=it(),this.g21_1=e,this.h21_1=null;var o;o=it(),this.i21_1=o,this.j21_1=8}function on(){a=this,this.s21_1="copy",this.t21_1="cut",this.u21_1="paste",this.v21_1="contextmenu",this.w21_1="click",this.x21_1="dblclick",this.y21_1="focus",this.z21_1="blur",this.a22_1="focusin",this.b22_1="focusout",this.c22_1="keydown",this.d22_1="keyup",this.e22_1="mousedown",this.f22_1="mouseup",this.g22_1="mouseenter",this.h22_1="mouseleave",this.i22_1="mousemove",this.j22_1="mouseout",this.k22_1="mouseover",this.l22_1="wheel",this.m22_1="scroll",this.n22_1="select",this.o22_1="touchcancel",this.p22_1="touchend",this.q22_1="touchmove",this.r22_1="touchstart",this.s22_1="animationcancel",this.t22_1="animationend",this.u22_1="animationiteration",this.v22_1="animationstart",this.w22_1="beforeinput",this.x22_1="input",this.y22_1="change",this.z22_1="invalid",this.a23_1="drag",this.b23_1="drop",this.c23_1="dragstart",this.d23_1="dragend",this.e23_1="dragover",this.f23_1="dragenter",this.g23_1="dragleave",this.h23_1="submit",this.i23_1="reset"}function rn(){return null==a&&new on,a}function sn(){}function an(){var t;t=it(),this.l21_1=t,this.m21_1=8}function un(t,n,e){ht.call(this,t,n),this.i20_1=e}function cn(){l=this,En.call(this,"button"),this.n23_1=0}function ln(){h=this,In.call(this,"checkbox"),this.v23_1=0}function hn(){return null==h&&new ln,h}function pn(){p=this,An.call(this,"color"),this.d24_1=0}function fn(){f=this,An.call(this,"date"),this.k24_1=0}function _n(){_=this,An.call(this,"datetime-local"),this.o24_1=0}function dn(){d=this,An.call(this,"email"),this.s24_1=0}function vn(){v=this,An.call(this,"file"),this.w24_1=0}function yn(){y=this,An.call(this,"hidden"),this.a25_1=0}function mn(){m=this,An.call(this,"month"),this.e25_1=0}function gn(){g=this,Dn.call(this,"number"),this.i25_1=0}function $n(){$=this,An.call(this,"password"),this.p25_1=0}function bn(){b=this,In.call(this,"radio"),this.t25_1=0}function wn(){return null==b&&new bn,b}function xn(){w=this,Dn.call(this,"range"),this.x25_1=0}function kn(){x=this,An.call(this,"search"),this.b26_1=0}function jn(){k=this,En.call(this,"submit"),this.f26_1=0}function Cn(){j=this,An.call(this,"tel"),this.j26_1=0}function zn(){C=this,An.call(this,"text"),this.n26_1=0}function Sn(){return null==C&&new zn,C}function qn(){z=this,An.call(this,"time"),this.r26_1=0}function On(){S=this,An.call(this,"url"),this.v26_1=0}function Pn(){q=this,An.call(this,"week"),this.z26_1=0}function Mn(){return null==q&&new Pn,q}function An(t){Ln.call(this,t),this.g24_1=0}function En(t){Ln.call(this,t),this.q23_1=0}function In(t){Ln.call(this,t),this.y23_1=0}function Dn(t){Ln.call(this,t),this.l25_1=0}function Tn(){O=this}function Bn(){return null==O&&new Tn,O}function Ln(t){Bn(),this.j20_1=t,this.k20_1=0}function Nn(t,n){this.c27_1=t,this.d27_1=n,this.e27_1=this.c27_1,this.f27_1=0}function Fn(t,n,e){Nn.call(this,t,e),this.l27_1=n}function Rn(t,n){Nn.call(this,t,n)}function Hn(t,n){this.q27_1=t,this.r27_1=n,this.s27_1=8}function Un(){return Kn(),P}function Vn(){return Kn(),M}function Wn(t,n,e){Kn();var o,r=n;r.f12(-1867048565),$t()&>(-1867048565,e,-1,"org.jetbrains.compose.web.attributes.builders.DisposeRadioGroupEffect$composable (InternalControlledInputUtils.kt:67)"),bt(null,(o=t,function(t){return new Jn(o.v27(t))}),r,6),$t()&&wt(),r.k12()}function Jn(t){this.u27_1=t}function Kn(){if(A);else{A=!0;var t,n=new WeakMap;P=n,t=rt(),M=t}}function Gn(t){this.w27_1=t,this.x27_1=8}function Yn(t,n){Nn.call(this,t,n)}function Xn(t){rn(),Nn.call(this,"change",t)}function Zn(t){this.i28_1=t,this.j28_1=8}function Qn(){E=this}function te(){return null==E&&new Qn,E}function ne(t,n){this.o28_1=t,this.p28_1=n,this.q28_1=0}function ee(){}function oe(){var t;t=it(),this.u28_1=t;var n;n=it(),this.v28_1=n,this.w28_1=8}function re(){}function ie(t,n){this.z28_1=t,this.a29_1=n,this.b29_1=8}function se(t,n){if(t.f()!==n.f())return!1;var e,o=0;t:if(qt(t,Pt)&&t.h())e=!0;else{for(var r=t.c();r.d();){var i=r.e(),s=o;o=s+1|0;var a=n.g(s);if(i.z28_1!==a.z28_1||pt(i.a29_1)!==pt(a.a29_1)){e=!1;break t}}e=!0}return e}function ae(t,n,e,o,r){var i=o;i=i.o1d(-1594897193),Mt(i,"C(TagElement$composable)P(2)");var s,a,u,c=r;if(0==(14&r)&&(c|=i.g12(t)?4:2),0==(112&r)&&(c|=i.g12(n)?32:16),0==(896&r)&&(c|=i.g12(e)?256:128),146==(731&c)&&i.w1b())i.a18();else{$t()&>(-1594897193,c,-1,"org.jetbrains.compose.web.dom.TagElement$composable (Base.kt:106)");var l=i;l.f12(547886695),Mt(l,"C(remember$composable):Composables.kt#9igjgp");var h,p=l,f=p.h12();if(f===At().j12_1){var _=new le;p.i12(_),h=_}else h=f;var d=h,v=null==d||Et(d)?d:ut();l.k12();var y,m=v,g=i;g.d18(),g.d1d()?g.f1d((a=t,u=m,function(){var t=a.v1n();return u.o29(t),new ue(t)})):g.h1d();var $=It(g),b=nn(null,1);null==n||n(b),y=b.h21_1,Dt($).f12(509942095);var w=Tt(Dt($));Bt(w,b.i21_1,((s=function(t,n){return t.k29(n),nt()}).callableName="updateClasses",s)),Bt(w,b.f21_1,function(){var t=function(t,n){return t.i29(n),nt()};return t.callableName="updateStyleDeclarations",t}());var x=b.r21();Bt(w,x,function(){var t=function(t,n){return t.j29(n),nt()};return t.callableName="updateAttrs",t}());var k=b.d21_1.j23();Bt(w,k,function(){var t=function(t,n){return t.g29(n),nt()};return t.callableName="updateEventListeners",t}()),Bt(w,b.g21_1,function(){var t=function(t,n){return t.h29(n),nt()};return t.callableName="updateProperties",t}()),Dt($).k12(),g.f12(2058660585);var j=g,C=8;if(18==(91&C)&&j.w1b())j.a18();else{var z=e;i.f12(-1128047990),null==z||z(m,j,14&C|112&c>>3),i.k12()}g.k12(),g.i1d(),null==y||(bt(null,function(t,n){return function(e){return t(e,n.p29())}}(y,m),i,6),nt(),nt()),$t()&&wt()}var S=i.p1d();null===S||S.k1e(function(t,n,e,o){return function(r,i){return function(t,n,e,o,r,i){ae(t,n,e,r,1|o)}(t,n,e,o,r),nt()}}(t,n,e,r))}function ue(t){Lt.call(this,t),this.e29_1=t,this.f29_1=Nt()}function ce(){}function le(){he.call(this)}function he(){this.q29_1=0,this.r29_1=8}function pe(){}function fe(t){return Yt("el",1,Gt,(function(t){return fe(t)}),null),t.t29_1.n2()}function _e(t){var n;this.s29_1=t,this.t29_1=Ut((n=this,function(){return document.createElement(n.s29_1)}))}function de(t,n,e){Re();var o=n;o=o.o1d(-363526853),Mt(o,"C(Text$composable)");var r,i=e;if(0==(14&e)&&(i|=o.g12(t)?4:2),2==(11&i)&&o.w1b())o.a18();else{$t()&>(-363526853,e,-1,"org.jetbrains.compose.web.dom.Text$composable (Elements.kt:479)");var s=o;s.f12(547886695),Mt(s,"C(remember$composable):Composables.kt#9igjgp");var a,u=s,c=u.h12();if(c===At().j12_1){var l=Ee;u.i12(l),a=l}else a=c;var h=a,p=null==h||Et(h)?h:ut();s.k12();var f=p,_=o;_.f12(-1846754774),Mt(_,"C(ComposeNode$composable):Composables.kt#9igjgp"),_.s1c()instanceof Wt||Vt(),_.d18(),_.d1d()?_.f1d((r=f,function(){return r()})):_.h1d();var d=Tt(_);Bt(d,t,Ie),_.i1d(),_.k12(),$t()&&wt()}var v,y,m=o.p1d();null===m||m.k1e((v=t,y=e,function(t,n){return function(t,n,e,o){de(t,e,1|n)}(v,y,t),nt()}))}function ve(t,n,e,o,r){Re();var i={_v:t},s={_v:n},a=e;a=a.o1d(-915831286),Mt(a,"C(H3$composable)");var u=o;0!=(1&r)?u|=6:0==(14&o)&&(u|=a.g12(i._v)?4:2),0!=(2&r)?u|=48:0==(112&o)&&(u|=a.g12(s._v)?32:16),18==(91&u)&&a.w1b()?a.a18():(0!=(1&r)&&(i._v=null),0!=(2&r)&&(s._v=null),$t()&>(-915831286,u,-1,"org.jetbrains.compose.web.dom.H3$composable (Elements.kt:539)"),ae((Re(),N),i._v,s._v,a,112&u<<3|896&u<<3),$t()&&wt());var c,l,h,p,f=a.p1d();null===f||f.k1e((c=i,l=s,h=o,p=r,function(t,n){return function(t,n,e,o,r,i){ve(t._v,n._v,r,1|e,o)}(c,l,h,p,t),nt()}))}function ye(t,n,e,o,r){Re();var i={_v:t},s={_v:n},a=e;a=a.o1d(1021009996),Mt(a,"C(Div$composable)");var u=o;0!=(1&r)?u|=6:0==(14&o)&&(u|=a.g12(i._v)?4:2),0!=(2&r)?u|=48:0==(112&o)&&(u|=a.g12(s._v)?32:16),18==(91&u)&&a.w1b()?a.a18():(0!=(1&r)&&(i._v=null),0!=(2&r)&&(s._v=null),$t()&>(1021009996,u,-1,"org.jetbrains.compose.web.dom.Div$composable (Elements.kt:489)"),ae((Re(),D),i._v,s._v,a,112&u<<3|896&u<<3),$t()&&wt());var c,l,h,p,f=a.p1d();null===f||f.k1e((c=i,l=s,h=o,p=r,function(t,n){return function(t,n,e,o,r,i){ye(t._v,n._v,r,1|e,o)}(c,l,h,p,t),nt()}))}function me(t,n,e,o,r,i){Re();var s={_v:t},a={_v:n},u={_v:e},c=o;c=c.o1d(-319539737),Mt(c,"C(Form$composable)");var l=r;if(0!=(1&i)?l|=6:0==(14&r)&&(l|=c.g12(s._v)?4:2),0!=(2&i)?l|=48:0==(112&r)&&(l|=c.g12(a._v)?32:16),0!=(4&i)?l|=384:0==(896&r)&&(l|=c.g12(u._v)?256:128),146==(731&l)&&c.w1b())c.a18();else{0!=(1&i)&&(s._v=null),0!=(2&i)&&(a._v=null),0!=(4&i)&&(u._v=null),$t()&>(-319539737,l,-1,"org.jetbrains.compose.web.dom.Form$composable (Elements.kt:637)");var h=(Re(),K),p=s._v,f=a._v,_=c;_.f12(-1124426577),Mt(_,"C(remember$composable)P(1,2):Composables.kt#9igjgp");var d,v=_,y=!!(_.g12(p)|_.g12(f)),m=v.h12();if(y||m===At().j12_1){var g=De(s,a);v.i12(g),d=g}else d=m;var $=d,b=null==$||Et($)?$:ut();_.k12(),ae(h,b,u._v,c,896&l),$t()&&wt()}var w,x,k,j,C,z=c.p1d();null===z||z.k1e((w=s,x=a,k=u,j=r,C=i,function(t,n){return function(t,n,e,o,r,i,s){me(t._v,n._v,e._v,i,1|o,r)}(w,x,k,j,C,t),nt()}))}function ge(t,n,e,o,r,i){Re();var s={_v:t},a={_v:n},u={_v:e},c=o;c=c.o1d(-493483649),Mt(c,"C(Label$composable)P(2)");var l=r;if(0!=(1&i)?l|=6:0==(14&r)&&(l|=c.g12(s._v)?4:2),0!=(2&i)?l|=48:0==(112&r)&&(l|=c.g12(a._v)?32:16),0!=(4&i)?l|=384:0==(896&r)&&(l|=c.g12(u._v)?256:128),146==(731&l)&&c.w1b())c.a18();else{0!=(1&i)&&(s._v=null),0!=(2&i)&&(a._v=null),0!=(4&i)&&(u._v=null),$t()&>(-493483649,l,-1,"org.jetbrains.compose.web.dom.Label$composable (Elements.kt:833)");var h=(Re(),Z),p=s._v,f=a._v,_=c;_.f12(-1124426577),Mt(_,"C(remember$composable)P(1,2):Composables.kt#9igjgp");var d,v=_,y=!!(_.g12(p)|_.g12(f)),m=v.h12();if(y||m===At().j12_1){var g=Te(s,a);v.i12(g),d=g}else d=m;var $=d,b=null==$||Et($)?$:ut();_.k12(),ae(h,b,u._v,c,896&l),$t()&&wt()}var w,x,k,j,C,z=c.p1d();null===z||z.k1e((w=s,x=a,k=u,j=r,C=i,function(t,n){return function(t,n,e,o,r,i,s){ge(t._v,n._v,e._v,i,1|o,r)}(w,x,k,j,C,t),nt()}))}function $e(t,n,e,o,r){Re();var i={_v:t},s={_v:n},a=e;a=a.o1d(-577256683),Mt(a,"C(TextArea$composable)P(1)");var u,c,l,h,p,f=o;if(0!=(1&r)?f|=6:0==(14&o)&&(f|=a.g12(i._v)?4:2),0!=(2&r)?f|=48:0==(112&o)&&(f|=a.g12(s._v)?32:16),18==(91&f)&&a.w1b())a.a18();else{0!=(1&r)&&(i._v=null),0!=(2&r)&&(s._v=null),$t()&>(-577256683,o,-1,"org.jetbrains.compose.web.dom.TextArea$composable (Elements.kt:729)");var _=a;_.f12(547886695),Mt(_,"C(remember$composable):Composables.kt#9igjgp");var d,v=_,y=v.h12();if(y===At().j12_1){var m=!(null==i._v);v.i12(m),d=m}else d=y;var g=d,$=null==g||Et(g)?g:ut();_.k12();var b=$,w=a;w.f12(547886695),Mt(w,"C(remember$composable):Composables.kt#9igjgp");var x,k=w,j=k.h12();if(j===At().j12_1){var C=Jt(0,null,2,null);k.i12(C),x=C}else x=j;var z=x,S=null==z||Et(z)?z:ut();w.k12();var q=S,O=(Re(),X),P=[q,s._v,b,i._v],M=a;M.f12(-1603429786),Mt(M,"C(remember$composable)P(1):Composables.kt#9igjgp");for(var A=!1,E=P,I=0,D=E.length;I (Elements.kt:754)");var a=t.n2();bt(a,(r=n,function(t){return n=r.v27(t),Kn(),Un().has(n)&&(n.value=mt(Un().get(n))),new Be;var n}),i,0),$t()&&(wt(),nt())}return nt()}}(q)),J=a;J.f12(-838505973),Mt(J,"C(remember$composable)P(1):Composables.kt#9igjgp");var K,G=J,Y=J.g12(W),Z=G.h12();if(Y||Z===At().j12_1){var Q=(u=W,function(t,n,e){return u.o1y(t,n,e)});G.i12(Q),K=Q}else K=Z;var tt=K,et=null==tt||Et(tt)?tt:ut();J.k12(),ae(O,V,et,a,384),$t()&&wt()}var ot=a.p1d();null===ot||ot.k1e(function(t,n,e,o){return function(r,i){return function(t,n,e,o,r,i){$e(t._v,n._v,r,1|e,o)}(t,n,e,o,r),nt()}}(i,s,o,r))}function be(t,n,e,o,r){Re();var i={_v:t},s={_v:n},a=e;a=a.o1d(-767970749),Mt(a,"C(Button$composable)");var u=o;0!=(1&r)?u|=6:0==(14&o)&&(u|=a.g12(i._v)?4:2),0!=(2&r)?u|=48:0==(112&o)&&(u|=a.g12(s._v)?32:16),18==(91&u)&&a.w1b()?a.a18():(0!=(1&r)&&(i._v=null),0!=(2&r)&&(s._v=null),$t()&>(-767970749,u,-1,"org.jetbrains.compose.web.dom.Button$composable (Elements.kt:521)"),ae((Re(),B),i._v,s._v,a,112&u<<3|896&u<<3),$t()&&wt());var c,l,h,p,f=a.p1d();null===f||f.k1e((c=i,l=s,h=o,p=r,function(t,n){return function(t,n,e,o,r,i){be(t._v,n._v,r,1|e,o)}(c,l,h,p,t),nt()}))}function we(t,n,e,o){Re();var r={_v:t},i=n;i=i.o1d(1126514281),Mt(i,"C(Br$composable)");var s=e;0!=(1&o)?s|=6:0==(14&e)&&(s|=i.g12(r._v)?4:2),2==(11&s)&&i.w1b()?i.a18():(0!=(1&o)&&(r._v=null),$t()&>(1126514281,s,-1,"org.jetbrains.compose.web.dom.Br$composable (Elements.kt:599)"),ae((Re(),V),r._v,null,i,384|112&s<<3),$t()&&wt());var a,u,c,l=i.p1d();null===l||l.k1e((a=r,u=e,c=o,function(t,n){return function(t,n,e,o,r){we(t._v,o,1|n,e)}(a,u,c,t),nt()}))}function xe(t,n,e,o,r){Re();var i={_v:t},s={_v:n},a=e;a=a.o1d(-2140946851),Mt(a,"C(Canvas$composable)");var u=o;0!=(1&r)?u|=6:0==(14&o)&&(u|=a.g12(i._v)?4:2),0!=(2&r)?u|=48:0==(112&o)&&(u|=a.g12(s._v)?32:16),18==(91&u)&&a.w1b()?a.a18():(0!=(1&r)&&(i._v=null),0!=(2&r)&&(s._v=null),$t()&>(-2140946851,u,-1,"org.jetbrains.compose.web.dom.Canvas$composable (Elements.kt:430)"),ae((Re(),I),i._v,s._v,a,112&u<<3|896&u<<3),$t()&&wt());var c,l,h,p,f=a.p1d();null===f||f.k1e((c=i,l=s,h=o,p=r,function(t,n){return function(t,n,e,o,r,i){xe(t._v,n._v,r,1|e,o)}(c,l,h,p,t),nt()}))}function ke(t,n,e,o){Re();var r=e;r=r.o1d(-1013116589),Mt(r,"C(Input$composable)P(1)");var i,s,a,u,c=o;if(0==(14&o)&&(c|=r.g12(t)?4:2),0==(112&o)&&(c|=r.g12(n)?32:16),18==(91&c)&&r.w1b())r.a18();else{$t()&>(-1013116589,c,-1,"org.jetbrains.compose.web.dom.Input$composable (Elements.kt:1054)");var l=r;l.f12(547886695),Mt(l,"C(remember$composable):Composables.kt#9igjgp");var h,p=l,f=p.h12();if(f===At().j12_1){var _=Jt(0,null,2,null);p.i12(_),h=_}else h=f;var d=h,v=null==d||Et(d)?d:ut();l.k12();var y=v,m=(Re(),T),g=r;g.f12(-1058148781),Mt(g,"C(remember$composable)P(1,2,3):Composables.kt#9igjgp");var $,b=g,w=!!(!!(g.g12(t)|g.g12(y))|g.g12(n)),x=b.h12();if(w||x===At().j12_1){var k=(s=t,a=n,u=y,function(t){var n=new Hn(s,t);return function(t,n){Zt(),t.f20("type",n.j20_1)}(n,s),n.t27(function(t){return function(n){return t.ky(t.n2()+1|0),nt()}}(u)),a(n),nt()});b.i12(k),$=k}else $=x;var j=$,C=null==j||Et(j)?j:ut();g.k12();var z=C,S=Kt(r,558133459,!0,function(t,n){return function(e,o,r){var i,s=o,a=r;if(0==(14&r)&&(a|=s.g12(e)?4:2,nt()),18==(91&a)&&s.w1b())s.a18(),nt();else{$t()&>(558133459,a,-1,"org.jetbrains.compose.web.dom.Input$composable. (Elements.kt:1073)"),s.f12(-1270925487),kt(t,wn())&&Wn(e,s,14&a),s.k12();var u=n.n2();bt(u,(i=e,function(t){return function(t){Kn();var n=Bn().b27(t.type);if(Un().has(t)){if(kt(n,wn())){var e=Vn().b3(t.name);if(null==e);else for(var o=e.c();o.d();){var r=o.e();r.checked=xt(mt(Un().get(r)))}return t.checked=xt(mt(Un().get(t))),nt()}kt(n,hn())?t.checked=xt(mt(Un().get(t))):t.value=mt(Un().get(t))}}(i.v27(t)),new Le}),s,0),$t()&&(wt(),nt())}return nt()}}(t,y)),q=r;q.f12(-838505973),Mt(q,"C(remember$composable)P(1):Composables.kt#9igjgp");var O,P=q,M=q.g12(S),A=P.h12();if(M||A===At().j12_1){var E=(i=S,function(t,n,e){return i.o1y(t,n,e)});P.i12(E),O=E}else O=A;var I=O,D=null==I||Et(I)?I:ut();q.k12(),ae(m,z,D,r,384),$t()&&wt()}var B=r.p1d();null===B||B.k1e(function(t,n,e){return function(o,r){return function(t,n,e,o,r){ke(t,n,o,1|e)}(t,n,e,o),nt()}}(t,n,o))}function je(t,n,e,o,r){Re();var i={_v:t},s={_v:n},a=e;a=a.o1d(1065330793),Mt(a,"C(H4$composable)");var u=o;0!=(1&r)?u|=6:0==(14&o)&&(u|=a.g12(i._v)?4:2),0!=(2&r)?u|=48:0==(112&o)&&(u|=a.g12(s._v)?32:16),18==(91&u)&&a.w1b()?a.a18():(0!=(1&r)&&(i._v=null),0!=(2&r)&&(s._v=null),$t()&>(1065330793,u,-1,"org.jetbrains.compose.web.dom.H4$composable (Elements.kt:545)"),ae((Re(),F),i._v,s._v,a,112&u<<3|896&u<<3),$t()&&wt());var c,l,h,p,f=a.p1d();null===f||f.k1e((c=i,l=s,h=o,p=r,function(t,n){return function(t,n,e,o,r,i){je(t._v,n._v,r,1|e,o)}(c,l,h,p,t),nt()}))}function Ce(t,n,e,o,r,i){Re();var s={_v:t},a={_v:n},u={_v:e},c=o;c=c.o1d(-140298183),Mt(c,"C(Select$composable)P(!1,2)");var l=r;if(0!=(1&i)?l|=6:0==(14&r)&&(l|=c.g12(s._v)?4:2),0!=(2&i)?l|=48:0==(112&r)&&(l|=c.k1d(a._v)?32:16),0!=(4&i)?l|=384:0==(896&r)&&(l|=c.g12(u._v)?256:128),146==(731&l)&&c.w1b())c.a18();else{0!=(1&i)&&(s._v=null),0!=(2&i)&&(a._v=!1),0!=(4&i)&&(u._v=null),$t()&>(-140298183,l,-1,"org.jetbrains.compose.web.dom.Select$composable (Elements.kt:653)");var h=(Re(),G),p=a._v,f=s._v,_=c;_.f12(-1124426577),Mt(_,"C(remember$composable)P(1,2):Composables.kt#9igjgp");var d,v=_,y=!!(_.g12(p)|_.g12(f)),m=v.h12();if(y||m===At().j12_1){var g=Ne(a,s);v.i12(g),d=g}else d=m;var $=d,b=null==$||Et($)?$:ut();_.k12(),ae(h,b,u._v,c,896&l),$t()&&wt()}var w,x,k,j,C,z=c.p1d();null===z||z.k1e((w=s,x=a,k=u,j=r,C=i,function(t,n){return function(t,n,e,o,r,i,s){Ce(t._v,n._v,e._v,i,1|o,r)}(w,x,k,j,C,t),nt()}))}function ze(t,n,e,o,r,i){Re();var s={_v:n},a={_v:e},u=o;u=u.o1d(1780967894),Mt(u,"C(Option$composable)P(2)");var c=r;if(0!=(1&i)?c|=6:0==(14&r)&&(c|=u.g12(t)?4:2),0!=(2&i)?c|=48:0==(112&r)&&(c|=u.g12(s._v)?32:16),0!=(4&i)?c|=384:0==(896&r)&&(c|=u.g12(a._v)?256:128),146==(731&c)&&u.w1b())u.a18();else{0!=(2&i)&&(s._v=null),0!=(4&i)&&(a._v=null),$t()&>(1780967894,c,-1,"org.jetbrains.compose.web.dom.Option$composable (Elements.kt:669)");var l=(Re(),Y),h=s._v,p=u;p.f12(-1124426577),Mt(p,"C(remember$composable)P(1,2):Composables.kt#9igjgp");var f,_=p,d=!!(p.g12(t)|p.g12(h)),v=_.h12();if(d||v===At().j12_1){var y=Fe(t,s);_.i12(y),f=y}else f=v;var m=f,g=null==m||Et(m)?m:ut();p.k12(),ae(l,g,a._v,u,896&c),$t()&&wt()}var $,b,w,x,k,j=u.p1d();null===j||j.k1e(($=t,b=s,w=a,x=r,k=i,function(t,n){return function(t,n,e,o,r,i,s){ze(t,n._v,e._v,i,1|o,r)}($,b,w,x,k,t),nt()}))}function Se(t,n,e,o,r){Re();var i={_v:t},s={_v:n},a=e;a=a.o1d(-583188148),Mt(a,"C(H1$composable)");var u=o;0!=(1&r)?u|=6:0==(14&o)&&(u|=a.g12(i._v)?4:2),0!=(2&r)?u|=48:0==(112&o)&&(u|=a.g12(s._v)?32:16),18==(91&u)&&a.w1b()?a.a18():(0!=(1&r)&&(i._v=null),0!=(2&r)&&(s._v=null),$t()&>(-583188148,u,-1,"org.jetbrains.compose.web.dom.H1$composable (Elements.kt:527)"),ae((Re(),L),i._v,s._v,a,112&u<<3|896&u<<3),$t()&&wt());var c,l,h,p,f=a.p1d();null===f||f.k1e((c=i,l=s,h=o,p=r,function(t,n){return function(t,n,e,o,r,i){Se(t._v,n._v,r,1|e,o)}(c,l,h,p,t),nt()}))}function qe(t,n,e,o,r){Re();var i={_v:t},s={_v:n},a=e;a=a.o1d(-100692211),Mt(a,"C(P$composable)");var u=o;0!=(1&r)?u|=6:0==(14&o)&&(u|=a.g12(i._v)?4:2),0!=(2&r)?u|=48:0==(112&o)&&(u|=a.g12(s._v)?32:16),18==(91&u)&&a.w1b()?a.a18():(0!=(1&r)&&(i._v=null),0!=(2&r)&&(s._v=null),$t()&>(-100692211,u,-1,"org.jetbrains.compose.web.dom.P$composable (Elements.kt:563)"),ae((Re(),R),i._v,s._v,a,112&u<<3|896&u<<3),$t()&&wt());var c,l,h,p,f=a.p1d();null===f||f.k1e((c=i,l=s,h=o,p=r,function(t,n){return function(t,n,e,o,r,i){qe(t._v,n._v,r,1|e,o)}(c,l,h,p,t),nt()}))}function Oe(t,n,e,o,r){Re();var i={_v:t},s={_v:n},a=e;a=a.o1d(-300232938),Mt(a,"C(Small$composable)");var u=o;0!=(1&r)?u|=6:0==(14&o)&&(u|=a.g12(i._v)?4:2),0!=(2&r)?u|=48:0==(112&o)&&(u|=a.g12(s._v)?32:16),18==(91&u)&&a.w1b()?a.a18():(0!=(1&r)&&(i._v=null),0!=(2&r)&&(s._v=null),$t()&>(-300232938,u,-1,"org.jetbrains.compose.web.dom.Small$composable (Elements.kt:587)"),ae((Re(),H),i._v,s._v,a,112&u<<3|896&u<<3),$t()&&wt());var c,l,h,p,f=a.p1d();null===f||f.k1e((c=i,l=s,h=o,p=r,function(t,n){return function(t,n,e,o,r,i){Oe(t._v,n._v,r,1|e,o)}(c,l,h,p,t),nt()}))}function Pe(t,n,e,o,r){Re();var i={_v:t},s={_v:n},a=e;a=a.o1d(-114341698),Mt(a,"C(Ul$composable)");var u=o;0!=(1&r)?u|=6:0==(14&o)&&(u|=a.g12(i._v)?4:2),0!=(2&r)?u|=48:0==(112&o)&&(u|=a.g12(s._v)?32:16),18==(91&u)&&a.w1b()?a.a18():(0!=(1&r)&&(i._v=null),0!=(2&r)&&(s._v=null),$t()&>(-114341698,u,-1,"org.jetbrains.compose.web.dom.Ul$composable (Elements.kt:603)"),ae((Re(),W),i._v,s._v,a,112&u<<3|896&u<<3),$t()&&wt());var c,l,h,p,f=a.p1d();null===f||f.k1e((c=i,l=s,h=o,p=r,function(t,n){return function(t,n,e,o,r,i){Pe(t._v,n._v,r,1|e,o)}(c,l,h,p,t),nt()}))}function Me(t,n,e,o,r){Re();var i={_v:t},s={_v:n},a=e;a=a.o1d(-456299496),Mt(a,"C(Li$composable)");var u=o;0!=(1&r)?u|=6:0==(14&o)&&(u|=a.g12(i._v)?4:2),0!=(2&r)?u|=48:0==(112&o)&&(u|=a.g12(s._v)?32:16),18==(91&u)&&a.w1b()?a.a18():(0!=(1&r)&&(i._v=null),0!=(2&r)&&(s._v=null),$t()&>(-456299496,u,-1,"org.jetbrains.compose.web.dom.Li$composable (Elements.kt:615)"),ae((Re(),J),i._v,s._v,a,112&u<<3|896&u<<3),$t()&&wt());var c,l,h,p,f=a.p1d();null===f||f.k1e((c=i,l=s,h=o,p=r,function(t,n){return function(t,n,e,o,r,i){Me(t._v,n._v,r,1|e,o)}(c,l,h,p,t),nt()}))}function Ae(t,n,e,o,r){Re();var i={_v:t},s={_v:n},a=e;a=a.o1d(-155327957),Mt(a,"C(Span$composable)");var u=o;0!=(1&r)?u|=6:0==(14&o)&&(u|=a.g12(i._v)?4:2),0!=(2&r)?u|=48:0==(112&o)&&(u|=a.g12(s._v)?32:16),18==(91&u)&&a.w1b()?a.a18():(0!=(1&r)&&(i._v=null),0!=(2&r)&&(s._v=null),$t()&>(-155327957,u,-1,"org.jetbrains.compose.web.dom.Span$composable (Elements.kt:593)"),ae((Re(),U),i._v,s._v,a,112&u<<3|896&u<<3),$t()&&wt());var c,l,h,p,f=a.p1d();null===f||f.k1e((c=i,l=s,h=o,p=r,function(t,n){return function(t,n,e,o,r,i){Ae(t._v,n._v,r,1|e,o)}(c,l,h,p,t),nt()}))}function Ee(){return Re(),new Lt(document.createTextNode(""))}function Ie(t,n){Re();var e=t.h1s();return(e instanceof Text?e:ut()).data=n,nt()}function De(t,n){return function(e){var o=t._v;return null==o||0===dt(o)||(function(t,n){Zt(),t.f20("action",n)}(e,t._v),nt()),null!=n._v&&n._v(e),nt()}}function Te(t,n){return function(e){return null!=t._v&&(function(t,n){Zt(),t.f20("for",n)}(e,t._v),nt()),null!=n._v&&n._v(e),nt()}}function Be(){}function Le(){}function Ne(t,n){return function(e){return t._v&&(o=e,Zt(),o.f20("multiple",""),nt()),null!=n._v&&n._v(new Gn(e)),nt();var o}}function Fe(t,n){return function(e){return function(t,n){Zt(),t.f20("value",n)}(e,t),null!=n._v&&n._v(e),nt()}}function Re(){Q||(Q=!0,new _e("address"),new _e("article"),new _e("aside"),new _e("header"),new _e("area"),new _e("audio"),new _e("map"),new _e("track"),new _e("video"),new _e("datalist"),new _e("fieldset"),new _e("legend"),new _e("meter"),new _e("output"),new _e("progress"),new _e("embed"),new _e("iframe"),new _e("object"),new _e("param"),new _e("picture"),new _e("source"),I=new _e("canvas"),new _e("dl"),new _e("dt"),new _e("dd"),D=new _e("div"),new _e("a"),T=new _e("input"),B=new _e("button"),L=new _e("h1"),new _e("h2"),N=new _e("h3"),F=new _e("h4"),new _e("h5"),new _e("h6"),R=new _e("p"),new _e("em"),new _e("i"),new _e("b"),H=new _e("small"),U=new _e("span"),V=new _e("br"),W=new _e("ul"),new _e("ol"),J=new _e("li"),new _e("img"),K=new _e("form"),G=new _e("select"),Y=new _e("option"),new _e("optgroup"),new _e("section"),X=new _e("textarea"),new _e("nav"),new _e("pre"),new _e("code"),new _e("main"),new _e("footer"),new _e("hr"),Z=new _e("label"),new _e("table"),new _e("caption"),new _e("col"),new _e("colgroup"),new _e("tr"),new _e("thead"),new _e("th"),new _e("td"),new _e("tbody"),new _e("tfoot"),new _e("style"))}function He(t,n){Ue.call(this,n),this.g2a_1=t,this.h2a_1=0}function Ue(t){this.i2a_1=t;var n;n=this.i2a_1.target,this.j2a_1=n,this.k2a_1=this.i2a_1.bubbles,this.l2a_1=this.i2a_1.cancelable,this.m2a_1=this.i2a_1.composed,this.n2a_1=this.i2a_1.currentTarget,this.o2a_1=this.i2a_1.eventPhase,this.p2a_1=this.i2a_1.defaultPrevented,this.q2a_1=this.i2a_1.timeStamp,this.r2a_1=this.i2a_1.type,this.s2a_1=this.i2a_1.isTrusted,this.t2a_1=8}function Ve(t,n){Ue.call(this,n),this.g2b_1=t;var e,o=n.data;e=null==o?null:o,this.h2b_1=e;var r,i=n.dataTransfer;r=null==i?null:i,this.i2b_1=r;var s,a=n.inputType;s=null==a?null:a,this.j2b_1=s;var u=n.isComposing,c=null==u?null:u;this.k2b_1=null!=c&&c,this.l2b_1=8}function We(t){Ue.call(this,t),this.y2b_1=t,this.z2b_1=t.altKey,this.a2c_1=t.button,this.b2c_1=t.buttons,this.c2c_1=t.clientX,this.d2c_1=t.clientY,this.e2c_1=t.ctrlKey,this.f2c_1=t.metaKey;var n=t.movementX,e=null!=n&&"number"==typeof n?n:null;this.g2c_1=null==e?0:e;var o=t.movementY,r=null!=o&&"number"==typeof o?o:null;this.h2c_1=null==r?0:r,this.i2c_1=t.offsetX,this.j2c_1=t.offsetY,this.k2c_1=t.pageX,this.l2c_1=t.pageY,this.m2c_1=t.region,this.n2c_1=t.relatedTarget,this.o2c_1=t.screenX,this.p2c_1=t.screenY,this.q2c_1=t.shiftKey,this.r2c_1=t.x,this.s2c_1=t.y,this.t2c_1=8}return un.prototype=Object.create(ht.prototype),un.prototype.constructor=un,En.prototype=Object.create(Ln.prototype),En.prototype.constructor=En,cn.prototype=Object.create(En.prototype),cn.prototype.constructor=cn,In.prototype=Object.create(Ln.prototype),In.prototype.constructor=In,ln.prototype=Object.create(In.prototype),ln.prototype.constructor=ln,An.prototype=Object.create(Ln.prototype),An.prototype.constructor=An,pn.prototype=Object.create(An.prototype),pn.prototype.constructor=pn,fn.prototype=Object.create(An.prototype),fn.prototype.constructor=fn,_n.prototype=Object.create(An.prototype),_n.prototype.constructor=_n,dn.prototype=Object.create(An.prototype),dn.prototype.constructor=dn,vn.prototype=Object.create(An.prototype),vn.prototype.constructor=vn,yn.prototype=Object.create(An.prototype),yn.prototype.constructor=yn,mn.prototype=Object.create(An.prototype),mn.prototype.constructor=mn,Dn.prototype=Object.create(Ln.prototype),Dn.prototype.constructor=Dn,gn.prototype=Object.create(Dn.prototype),gn.prototype.constructor=gn,$n.prototype=Object.create(An.prototype),$n.prototype.constructor=$n,bn.prototype=Object.create(In.prototype),bn.prototype.constructor=bn,xn.prototype=Object.create(Dn.prototype),xn.prototype.constructor=xn,kn.prototype=Object.create(An.prototype),kn.prototype.constructor=kn,jn.prototype=Object.create(En.prototype),jn.prototype.constructor=jn,Cn.prototype=Object.create(An.prototype),Cn.prototype.constructor=Cn,zn.prototype=Object.create(An.prototype),zn.prototype.constructor=zn,qn.prototype=Object.create(An.prototype),qn.prototype.constructor=qn,On.prototype=Object.create(An.prototype),On.prototype.constructor=On,Pn.prototype=Object.create(An.prototype),Pn.prototype.constructor=Pn,Fn.prototype=Object.create(Nn.prototype),Fn.prototype.constructor=Fn,Rn.prototype=Object.create(Nn.prototype),Rn.prototype.constructor=Rn,Yn.prototype=Object.create(Nn.prototype),Yn.prototype.constructor=Yn,Xn.prototype=Object.create(Nn.prototype),Xn.prototype.constructor=Xn,ue.prototype=Object.create(Lt.prototype),ue.prototype.constructor=ue,le.prototype=Object.create(he.prototype),le.prototype.constructor=le,He.prototype=Object.create(Ue.prototype),He.prototype.constructor=He,Ve.prototype=Object.create(Ue.prototype),Ve.prototype.constructor=Ve,We.prototype=Object.create(Ue.prototype),We.prototype.constructor=We,Qt.$metadata$=et("Companion"),tn.$metadata$=ot("AttrsScope",[sn]),en.prototype.k21=function(){return this.d21_1},en.prototype.b21=function(t){this.d21_1.b21(t)},en.prototype.c21=function(t){this.d21_1.c21(t)},en.prototype.a21=function(t){this.d21_1.a21(t)},en.prototype.n21=function(){return this.f21_1},en.prototype.o21=function(){return this.g21_1},en.prototype.p21=function(){return this.h21_1},en.prototype.q21=function(){return this.i21_1},en.prototype.w20=function(t){this.i21_1.k1(t)},en.prototype.x20=function(t){st(this.i21_1,t)},en.prototype.v20=function(t){t(this.f21_1)},en.prototype.f20=function(t,n){return this.e21_1.n(t,n),this},en.prototype.z20=function(t,n){var e=at(t,n);this.g21_1.a(e instanceof ct?e:ut())},en.prototype.r21=function(){return this.e21_1},en.$metadata$=lt("AttrsScopeBuilder",[tn,sn]),on.$metadata$=et("Companion"),sn.$metadata$=ot("EventsListenerScope"),an.prototype.a21=function(t){this.l21_1.a(t)},an.prototype.j23=function(){return this.l21_1},an.$metadata$=lt("EventsListenerScopeBuilder",[sn]),un.$metadata$=lt("ButtonType",void 0,void 0,void 0,void 0,ht.prototype),cn.$metadata$=et("Button",void 0,void 0,void 0,void 0,En.prototype),ln.$metadata$=et("Checkbox",void 0,void 0,void 0,void 0,In.prototype),pn.$metadata$=et("Color",void 0,void 0,void 0,void 0,An.prototype),fn.$metadata$=et("Date",void 0,void 0,void 0,void 0,An.prototype),_n.$metadata$=et("DateTimeLocal",void 0,void 0,void 0,void 0,An.prototype),dn.$metadata$=et("Email",void 0,void 0,void 0,void 0,An.prototype),vn.$metadata$=et("File",void 0,void 0,void 0,void 0,An.prototype),yn.$metadata$=et("Hidden",void 0,void 0,void 0,void 0,An.prototype),mn.$metadata$=et("Month",void 0,void 0,void 0,void 0,An.prototype),gn.$metadata$=et("Number",void 0,void 0,void 0,void 0,Dn.prototype),$n.$metadata$=et("Password",void 0,void 0,void 0,void 0,An.prototype),bn.$metadata$=et("Radio",void 0,void 0,void 0,void 0,In.prototype),xn.$metadata$=et("Range",void 0,void 0,void 0,void 0,Dn.prototype),kn.$metadata$=et("Search",void 0,void 0,void 0,void 0,An.prototype),jn.$metadata$=et("Submit",void 0,void 0,void 0,void 0,En.prototype),Cn.$metadata$=et("Tel",void 0,void 0,void 0,void 0,An.prototype),zn.$metadata$=et("Text",void 0,void 0,void 0,void 0,An.prototype),qn.$metadata$=et("Time",void 0,void 0,void 0,void 0,An.prototype),On.$metadata$=et("Url",void 0,void 0,void 0,void 0,An.prototype),Pn.$metadata$=et("Week",void 0,void 0,void 0,void 0,An.prototype),An.prototype.z23=function(t){return Mn().a27(t)},An.$metadata$=lt("InputTypeWithStringValue",void 0,void 0,void 0,void 0,Ln.prototype),En.prototype.r23=function(t){return nt()},En.prototype.z23=function(t){return this.r23(t),nt()},En.$metadata$=lt("InputTypeWithUnitValue",void 0,void 0,void 0,void 0,Ln.prototype),In.prototype.z23=function(t){var n,e,o=t.target,r=null==(n=null==o?null:o)?null:n.checked;return null!=(e=null==r?null:r)&&e},In.$metadata$=lt("InputTypeCheckedValue",void 0,void 0,void 0,void 0,Ln.prototype),Dn.prototype.z23=function(t){var n,e=t.target,o=null==(n=null==e?null:e)?null:n.valueAsNumber;return null==o?null:o},Dn.$metadata$=lt("InputTypeNumberValue",void 0,void 0,void 0,void 0,Ln.prototype),Tn.prototype.b27=function(t){var n;switch(t){case"button":null==l&&new cn,n=l;break;case"checkbox":n=hn();break;case"color":null==p&&new pn,n=p;break;case"date":null==f&&new fn,n=f;break;case"datetime-local":null==_&&new _n,n=_;break;case"email":null==d&&new dn,n=d;break;case"file":null==v&&new vn,n=v;break;case"hidden":null==y&&new yn,n=y;break;case"month":null==m&&new mn,n=m;break;case"number":null==g&&new gn,n=g;break;case"password":null==$&&new $n,n=$;break;case"radio":n=wn();break;case"range":null==w&&new xn,n=w;break;case"search":null==x&&new kn,n=x;break;case"submit":null==k&&new jn,n=k;break;case"tel":null==j&&new Cn,n=j;break;case"text":n=Sn();break;case"time":null==z&&new qn,n=z;break;case"url":null==S&&new On,n=S;break;case"week":n=Mn();break;default:throw ft(pt("fromString got unknown type - "+t))}return n},Tn.$metadata$=et("Companion"),Ln.prototype.a27=function(t){var n,e,o=t.target,r=null==(n=null==o?null:o)?null:n.value;return null==(e=null==r?null:r)?"":e},Ln.$metadata$=lt("InputType"),Nn.prototype.z1y=function(){return this.e27_1},Nn.prototype.g27=function(t){var n;n=new Ue(t),this.d27_1(n)},Nn.prototype.handleEvent=function(t){return this.g27(t)},Nn.$metadata$=lt("SyntheticEventListener",[_t]),Fn.prototype.g27=function(t){var n=this.l27_1.z23(t);this.d27_1(new Ve(n,t))},Fn.prototype.handleEvent=function(t){return this.g27(t)},Fn.$metadata$=lt("InputEventListener",void 0,void 0,void 0,void 0,Nn.prototype),Rn.prototype.g27=function(t){var n;n=t,this.d27_1(new We(n))},Rn.prototype.handleEvent=function(t){return this.g27(t)},Rn.$metadata$=lt("MouseEventListener",void 0,void 0,void 0,void 0,Nn.prototype),Hn.prototype.f20=function(t,n){return this.r27_1.f20(t,n)},Hn.prototype.x20=function(t){this.r27_1.x20(t)},Hn.prototype.w20=function(t){this.r27_1.w20(t)},Hn.prototype.y20=function(t){return this.r27_1.y20(t)},Hn.prototype.b21=function(t){this.r27_1.b21(t)},Hn.prototype.c21=function(t){this.r27_1.c21(t)},Hn.prototype.z20=function(t,n){this.r27_1.z20(t,n)},Hn.prototype.a21=function(t){this.r27_1.a21(t)},Hn.prototype.v20=function(t){this.r27_1.v20(t)},Hn.prototype.t27=function(t){rn(),this.a21(new Fn("input",this.q27_1,t))},Hn.$metadata$=lt("InputAttrsScope",[tn]),Jn.prototype.ks=function(){var t=Vn().b3(this.u27_1.name);null==t||t.kf(this.u27_1);var n=Vn().b3(this.u27_1.name);!0===(null==n?null:n.h())&&Vn().pg(this.u27_1.name)},Jn.$metadata$=lt(void 0,[jt]),Gn.prototype.f20=function(t,n){return this.w27_1.f20(t,n)},Gn.prototype.x20=function(t){this.w27_1.x20(t)},Gn.prototype.w20=function(t){this.w27_1.w20(t)},Gn.prototype.y20=function(t){return this.w27_1.y20(t)},Gn.prototype.b21=function(t){this.w27_1.b21(t)},Gn.prototype.c21=function(t){this.w27_1.c21(t)},Gn.prototype.z20=function(t,n){this.w27_1.z20(t,n)},Gn.prototype.a21=function(t){this.w27_1.a21(t)},Gn.prototype.v20=function(t){this.w27_1.v20(t)},Gn.prototype.y27=function(t){rn(),this.a21(new Yn("input",t))},Gn.prototype.z27=function(t){this.a21(new Xn(t))},Gn.$metadata$=lt("SelectAttrsScope",[tn]),Yn.prototype.g27=function(t){var n=t.target,e=(null==n?null:n).value,o=null==e?null:pt(e);this.d27_1(new Ve(o,t))},Yn.prototype.handleEvent=function(t){return this.g27(t)},Yn.$metadata$=lt("SelectInputEventListener",void 0,void 0,void 0,void 0,Nn.prototype),Xn.prototype.g27=function(t){var n=t.target,e=(null==n?null:n).value,o=null==e?null:pt(e);this.d27_1(new He(o,t))},Xn.prototype.handleEvent=function(t){return this.g27(t)},Xn.$metadata$=lt("SelectChangeEventListener",void 0,void 0,void 0,void 0,Nn.prototype),Zn.prototype.f20=function(t,n){return this.i28_1.f20(t,n)},Zn.prototype.x20=function(t){this.i28_1.x20(t)},Zn.prototype.w20=function(t){this.i28_1.w20(t)},Zn.prototype.y20=function(t){return this.i28_1.y20(t)},Zn.prototype.b21=function(t){this.i28_1.b21(t)},Zn.prototype.c21=function(t){this.i28_1.c21(t)},Zn.prototype.z20=function(t,n){this.i28_1.z20(t,n)},Zn.prototype.a21=function(t){this.i28_1.a21(t)},Zn.prototype.v20=function(t){this.i28_1.v20(t)},Zn.prototype.k28=function(t){return this.z20((Zt(),r),t),this},Zn.prototype.l28=function(t){rn(),this.a21(new Fn("input",Sn(),t))},Zn.$metadata$=lt("TextAreaAttrsScope",[tn]),Qn.prototype.m28=function(){return"%"},Qn.prototype.n28=function(){return"px"},Qn.$metadata$=et("Companion"),ne.prototype.n2=function(){return this.o28_1},ne.prototype.r28=function(){return this.p28_1},ne.prototype.toString=function(){return""+this.o28_1+this.p28_1},ne.prototype.hashCode=function(){var t=zt(this.o28_1);return tt(t,31)+St(this.p28_1)|0},ne.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof ne))return!1;var n=t instanceof ne?t:ut();return!!kt(this.o28_1,n.o28_1)&&!!kt(this.p28_1,n.p28_1)},ne.$metadata$=lt("CSSUnitValueTyped"),Object.defineProperty(ne.prototype,"value",{configurable:!0,get:function(){return this.n2()}}),Object.defineProperty(ne.prototype,"unit",{configurable:!0,get:function(){return this.r28()}}),ee.$metadata$=ot("StyleScope"),oe.prototype.x28=function(){return this.u28_1},oe.prototype.y28=function(){return this.v28_1},oe.prototype.s28=function(t,n){this.x28().a(new ie(t,n))},oe.prototype.equals=function(t){return!(null==t||!qt(t,re))&&!!se(this.x28(),t.x28())&&se(this.y28(),t.y28())},oe.$metadata$=lt("StyleScopeBuilder",[ee,re]),re.$metadata$=ot("StyleHolder"),ie.prototype.z1y=function(){return this.z28_1},ie.prototype.n2=function(){return this.a29_1},ie.prototype.l4=function(){return this.z28_1},ie.prototype.m4=function(){return this.a29_1},ie.prototype.toString=function(){return"StylePropertyDeclaration(name="+this.z28_1+", value="+this.a29_1+")"},ie.prototype.hashCode=function(){var t=Ot(this.z28_1);return tt(t,31)+St(this.a29_1)|0},ie.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof ie))return!1;var n=t instanceof ie?t:ut();return this.z28_1===n.z28_1&&!!kt(this.a29_1,n.a29_1)},ie.$metadata$=lt("StylePropertyDeclaration"),ue.prototype.h1s=function(){return this.e29_1},ue.prototype.g29=function(t){for(var n=this.f29_1.c();n.d();){var e=n.e();this.e29_1.removeEventListener(e.z1y(),e)}this.f29_1=t;for(var o=this.f29_1.c();o.d();){var r=o.e();this.e29_1.addEventListener(r.z1y(),r)}},ue.prototype.h29=function(t){for(var n=t.c();n.d();){var e=n.e(),o=e.l4(),r=e.m4();o(this.e29_1,r)}},ue.prototype.i29=function(t){var n=this.e29_1;if(n instanceof HTMLElement||n instanceof SVGElement){this.e29_1.removeAttribute("style");for(var e=this.e29_1.style,o=t.x28().c();o.d();){var r=o.e(),i=r.l4(),s=r.m4();e.setProperty(i,pt(s))}for(var a=t.y28().c();a.d();){var u=a.e(),c=u.l4(),l=u.m4();e.setProperty(c,pt(l))}}},ue.prototype.j29=function(t){for(var n=this.e29_1.getAttributeNames(),e=0,o=n.length;e{"use strict";function o(){}e.r(n),e.d(n,{Animation:()=>ye,Animations:()=>ge,ArcElement:()=>wr,BarController:()=>Ne,BarElement:()=>Br,BasePlatform:()=>Oo,BasicPlatform:()=>Po,BubbleController:()=>Fe,CategoryScale:()=>Ci,Chart:()=>vr,DatasetController:()=>Pe,Decimation:()=>Rr,DomPlatform:()=>Vo,DoughnutController:()=>Re,Element:()=>Je,Filler:()=>ri,Interaction:()=>yo,Legend:()=>ai,LineController:()=>He,LineElement:()=>Or,LinearScale:()=>qi,LogarithmicScale:()=>Pi,PieController:()=>Ve,PointElement:()=>Mr,PolarAreaController:()=>Ue,RadarController:()=>We,RadialLinearScale:()=>Bi,Scale:()=>oo,ScatterController:()=>so,SubTitle:()=>hi,Ticks:()=>Ge,TimeScale:()=>Wi,TimeSeriesScale:()=>Ki,Title:()=>ci,Tooltip:()=>ki,_adapters:()=>lo,_detectPlatform:()=>Wo,animator:()=>_e,controllers:()=>ao,defaults:()=>Xt,elements:()=>Lr,layouts:()=>qo,plugins:()=>ji,registerables:()=>Yi,registry:()=>io,scales:()=>Gi});const r=function(){let t=0;return function(){return t++}}();function i(t){return null==t}function s(t){if(Array.isArray&&Array.isArray(t))return!0;const n=Object.prototype.toString.call(t);return"[object"===n.slice(0,7)&&"Array]"===n.slice(-6)}function a(t){return null!==t&&"[object Object]"===Object.prototype.toString.call(t)}const u=t=>("number"==typeof t||t instanceof Number)&&isFinite(+t);function c(t,n){return u(t)?t:n}function l(t,n){return void 0===t?n:t}const h=(t,n)=>"string"==typeof t&&t.endsWith("%")?parseFloat(t)/100*n:+t;function p(t,n,e){if(t&&"function"==typeof t.call)return t.apply(e,n)}function f(t,n,e,o){let r,i,u;if(s(t))if(i=t.length,o)for(r=i-1;r>=0;r--)n.call(e,t[r],r);else for(r=0;rt,x:t=>t.x,y:t=>t.y};function w(t,n){const e=b[n]||(b[n]=function(t){const n=function(t){const n=t.split("."),e=[];let o="";for(const t of n)o+=t,o.endsWith("\\")?o=o.slice(0,-1)+".":(e.push(o),o="");return e}(t);return t=>{for(const e of n){if(""===e)break;t=t&&t[e]}return t}}(n));return e(t)}function x(t){return t.charAt(0).toUpperCase()+t.slice(1)}const k=t=>void 0!==t,j=t=>"function"==typeof t,C=(t,n)=>{if(t.size!==n.size)return!1;for(const e of t)if(!n.has(e))return!1;return!0},z=Math.PI,S=2*z,q=S+z,O=Number.POSITIVE_INFINITY,P=z/180,M=z/2,A=z/4,E=2*z/3,I=Math.log10,D=Math.sign;function T(t){const n=Math.round(t);t=L(t,n,t/1e3)?n:t;const e=Math.pow(10,Math.floor(I(t))),o=t/e;return(o<=1?1:o<=2?2:o<=5?5:10)*e}function B(t){return!isNaN(parseFloat(t))&&isFinite(t)}function L(t,n,e){return Math.abs(t-n)u&&c=Math.min(n,e)-o&&t<=Math.max(n,e)+o}function X(t,n,e){e=e||(e=>t[e]1;)o=i+r>>1,e(o)?i=o:r=o;return{lo:i,hi:r}}const Z=(t,n,e,o)=>X(t,e,o?o=>t[o][n]<=e:o=>t[o][n]X(t,e,(o=>t[o][n]>=e)),tt=["push","pop","shift","splice","unshift"];function nt(t,n){const e=t._chartjs;if(!e)return;const o=e.listeners,r=o.indexOf(n);-1!==r&&o.splice(r,1),o.length>0||(tt.forEach((n=>{delete t[n]})),delete t._chartjs)}function et(t){const n=new Set;let e,o;for(e=0,o=t.length;eArray.prototype.slice.call(t));let r=!1,i=[];return function(...e){i=o(e),r||(r=!0,ot.call(window,(()=>{r=!1,t.apply(n,i)})))}}const it=t=>"start"===t?"left":"end"===t?"right":"center",st=(t,n,e)=>"start"===t?n:"end"===t?e:(n+e)/2;function at(t,n,e){const o=n.length;let r=0,i=o;if(t._sorted){const{iScale:s,_parsed:a}=t,u=s.axis,{min:c,max:l,minDefined:h,maxDefined:p}=s.getUserBounds();h&&(r=G(Math.min(Z(a,s.axis,c).lo,e?o:Z(n,u,s.getPixelForValue(c)).lo),0,o-1)),i=p?G(Math.max(Z(a,s.axis,l,!0).hi+1,e?0:Z(n,u,s.getPixelForValue(l),!0).hi+1),r,o)-r:o-r}return{start:r,count:i}}function ut(t){const{xScale:n,yScale:e,_scaleRanges:o}=t,r={xmin:n.min,xmax:n.max,ymin:e.min,ymax:e.max};if(!o)return t._scaleRanges=r,!0;const i=o.xmin!==n.min||o.xmax!==n.max||o.ymin!==e.min||o.ymax!==e.max;return Object.assign(o,r),i}const ct=t=>0===t||1===t,lt=(t,n,e)=>-Math.pow(2,10*(t-=1))*Math.sin((t-n)*S/e),ht=(t,n,e)=>Math.pow(2,-10*t)*Math.sin((t-n)*S/e)+1,pt={linear:t=>t,easeInQuad:t=>t*t,easeOutQuad:t=>-t*(t-2),easeInOutQuad:t=>(t/=.5)<1?.5*t*t:-.5*(--t*(t-2)-1),easeInCubic:t=>t*t*t,easeOutCubic:t=>(t-=1)*t*t+1,easeInOutCubic:t=>(t/=.5)<1?.5*t*t*t:.5*((t-=2)*t*t+2),easeInQuart:t=>t*t*t*t,easeOutQuart:t=>-((t-=1)*t*t*t-1),easeInOutQuart:t=>(t/=.5)<1?.5*t*t*t*t:-.5*((t-=2)*t*t*t-2),easeInQuint:t=>t*t*t*t*t,easeOutQuint:t=>(t-=1)*t*t*t*t+1,easeInOutQuint:t=>(t/=.5)<1?.5*t*t*t*t*t:.5*((t-=2)*t*t*t*t+2),easeInSine:t=>1-Math.cos(t*M),easeOutSine:t=>Math.sin(t*M),easeInOutSine:t=>-.5*(Math.cos(z*t)-1),easeInExpo:t=>0===t?0:Math.pow(2,10*(t-1)),easeOutExpo:t=>1===t?1:1-Math.pow(2,-10*t),easeInOutExpo:t=>ct(t)?t:t<.5?.5*Math.pow(2,10*(2*t-1)):.5*(2-Math.pow(2,-10*(2*t-1))),easeInCirc:t=>t>=1?t:-(Math.sqrt(1-t*t)-1),easeOutCirc:t=>Math.sqrt(1-(t-=1)*t),easeInOutCirc:t=>(t/=.5)<1?-.5*(Math.sqrt(1-t*t)-1):.5*(Math.sqrt(1-(t-=2)*t)+1),easeInElastic:t=>ct(t)?t:lt(t,.075,.3),easeOutElastic:t=>ct(t)?t:ht(t,.075,.3),easeInOutElastic(t){const n=.1125;return ct(t)?t:t<.5?.5*lt(2*t,n,.45):.5+.5*ht(2*t-1,n,.45)},easeInBack(t){const n=1.70158;return t*t*((n+1)*t-n)},easeOutBack(t){const n=1.70158;return(t-=1)*t*((n+1)*t+n)+1},easeInOutBack(t){let n=1.70158;return(t/=.5)<1?t*t*((1+(n*=1.525))*t-n)*.5:.5*((t-=2)*t*((1+(n*=1.525))*t+n)+2)},easeInBounce:t=>1-pt.easeOutBounce(1-t),easeOutBounce(t){const n=7.5625,e=2.75;return t<1/e?n*t*t:t<2/e?n*(t-=1.5/e)*t+.75:t<2.5/e?n*(t-=2.25/e)*t+.9375:n*(t-=2.625/e)*t+.984375},easeInOutBounce:t=>t<.5?.5*pt.easeInBounce(2*t):.5*pt.easeOutBounce(2*t-1)+.5};function ft(t){return t+.5|0}const _t=(t,n,e)=>Math.max(Math.min(t,e),n);function dt(t){return _t(ft(2.55*t),0,255)}function vt(t){return _t(ft(255*t),0,255)}function yt(t){return _t(ft(t/2.55)/100,0,1)}function mt(t){return _t(ft(100*t),0,100)}const gt={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},$t=[..."0123456789ABCDEF"],bt=t=>$t[15&t],wt=t=>$t[(240&t)>>4]+$t[15&t],xt=t=>(240&t)>>4==(15&t);const kt=/^(hsla?|hwb|hsv)\(\s*([-+.e\d]+)(?:deg)?[\s,]+([-+.e\d]+)%[\s,]+([-+.e\d]+)%(?:[\s,]+([-+.e\d]+)(%)?)?\s*\)$/;function jt(t,n,e){const o=n*Math.min(e,1-e),r=(n,r=(n+t/30)%12)=>e-o*Math.max(Math.min(r-3,9-r,1),-1);return[r(0),r(8),r(4)]}function Ct(t,n,e){const o=(o,r=(o+t/60)%6)=>e-e*n*Math.max(Math.min(r,4-r,1),0);return[o(5),o(3),o(1)]}function zt(t,n,e){const o=jt(t,1,.5);let r;for(n+e>1&&(r=1/(n+e),n*=r,e*=r),r=0;r<3;r++)o[r]*=1-n-e,o[r]+=n;return o}function St(t){const n=t.r/255,e=t.g/255,o=t.b/255,r=Math.max(n,e,o),i=Math.min(n,e,o),s=(r+i)/2;let a,u,c;return r!==i&&(c=r-i,u=s>.5?c/(2-r-i):c/(r+i),a=function(t,n,e,o,r){return t===r?(n-e)/o+(nt<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055,Tt=t=>t<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4);function Bt(t,n,e){if(t){let o=St(t);o[n]=Math.max(0,Math.min(o[n]+o[n]*e,0===n?360:1)),o=Ot(o),t.r=o[0],t.g=o[1],t.b=o[2]}}function Lt(t,n){return t?Object.assign(n||{},t):t}function Nt(t){var n={r:0,g:0,b:0,a:255};return Array.isArray(t)?t.length>=3&&(n={r:t[0],g:t[1],b:t[2],a:255},t.length>3&&(n.a=vt(t[3]))):(n=Lt(t,{r:0,g:0,b:0,a:1})).a=vt(n.a),n}function Ft(t){return"r"===t.charAt(0)?function(t){const n=It.exec(t);let e,o,r,i=255;if(n){if(n[7]!==e){const t=+n[7];i=n[8]?dt(t):_t(255*t,0,255)}return e=+n[1],o=+n[3],r=+n[5],e=255&(n[2]?dt(e):_t(e,0,255)),o=255&(n[4]?dt(o):_t(o,0,255)),r=255&(n[6]?dt(r):_t(r,0,255)),{r:e,g:o,b:r,a:i}}}(t):function(t){const n=kt.exec(t);let e,o=255;if(!n)return;n[5]!==e&&(o=n[6]?dt(+n[5]):vt(+n[5]));const r=Pt(+n[2]),i=+n[3]/100,s=+n[4]/100;return e="hwb"===n[1]?function(t,n,e){return qt(zt,t,n,e)}(r,i,s):"hsv"===n[1]?function(t,n,e){return qt(Ct,t,n,e)}(r,i,s):Ot(r,i,s),{r:e[0],g:e[1],b:e[2],a:o}}(t)}class Rt{constructor(t){if(t instanceof Rt)return t;const n=typeof t;let e;var o,r,i;"object"===n?e=Nt(t):"string"===n&&(i=(o=t).length,"#"===o[0]&&(4===i||5===i?r={r:255&17*gt[o[1]],g:255&17*gt[o[2]],b:255&17*gt[o[3]],a:5===i?17*gt[o[4]]:255}:7!==i&&9!==i||(r={r:gt[o[1]]<<4|gt[o[2]],g:gt[o[3]]<<4|gt[o[4]],b:gt[o[5]]<<4|gt[o[6]],a:9===i?gt[o[7]]<<4|gt[o[8]]:255})),e=r||function(t){Et||(Et=function(){const t={},n=Object.keys(At),e=Object.keys(Mt);let o,r,i,s,a;for(o=0;o>16&255,i>>8&255,255&i]}return t}(),Et.transparent=[0,0,0,0]);const n=Et[t.toLowerCase()];return n&&{r:n[0],g:n[1],b:n[2],a:4===n.length?n[3]:255}}(t)||Ft(t)),this._rgb=e,this._valid=!!e}get valid(){return this._valid}get rgb(){var t=Lt(this._rgb);return t&&(t.a=yt(t.a)),t}set rgb(t){this._rgb=Nt(t)}rgbString(){return this._valid?(t=this._rgb)&&(t.a<255?`rgba(${t.r}, ${t.g}, ${t.b}, ${yt(t.a)})`:`rgb(${t.r}, ${t.g}, ${t.b})`):void 0;var t}hexString(){return this._valid?(t=this._rgb,n=(t=>xt(t.r)&&xt(t.g)&&xt(t.b)&&xt(t.a))(t)?bt:wt,t?"#"+n(t.r)+n(t.g)+n(t.b)+((t,n)=>t<255?n(t):"")(t.a,n):void 0):void 0;var t,n}hslString(){return this._valid?function(t){if(!t)return;const n=St(t),e=n[0],o=mt(n[1]),r=mt(n[2]);return t.a<255?`hsla(${e}, ${o}%, ${r}%, ${yt(t.a)})`:`hsl(${e}, ${o}%, ${r}%)`}(this._rgb):void 0}mix(t,n){if(t){const e=this.rgb,o=t.rgb;let r;const i=n===r?.5:n,s=2*i-1,a=e.a-o.a,u=((s*a==-1?s:(s+a)/(1+s*a))+1)/2;r=1-u,e.r=255&u*e.r+r*o.r+.5,e.g=255&u*e.g+r*o.g+.5,e.b=255&u*e.b+r*o.b+.5,e.a=i*e.a+(1-i)*o.a,this.rgb=e}return this}interpolate(t,n){return t&&(this._rgb=function(t,n,e){const o=Tt(yt(t.r)),r=Tt(yt(t.g)),i=Tt(yt(t.b));return{r:vt(Dt(o+e*(Tt(yt(n.r))-o))),g:vt(Dt(r+e*(Tt(yt(n.g))-r))),b:vt(Dt(i+e*(Tt(yt(n.b))-i))),a:t.a+e*(n.a-t.a)}}(this._rgb,t._rgb,n)),this}clone(){return new Rt(this.rgb)}alpha(t){return this._rgb.a=vt(t),this}clearer(t){return this._rgb.a*=1-t,this}greyscale(){const t=this._rgb,n=ft(.3*t.r+.59*t.g+.11*t.b);return t.r=t.g=t.b=n,this}opaquer(t){return this._rgb.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 Bt(this._rgb,2,t),this}darken(t){return Bt(this._rgb,2,-t),this}saturate(t){return Bt(this._rgb,1,t),this}desaturate(t){return Bt(this._rgb,1,-t),this}rotate(t){return function(t,n){var e=St(t);e[0]=Pt(e[0]+n),e=Ot(e),t.r=e[0],t.g=e[1],t.b=e[2]}(this._rgb,t),this}}function Ht(t){return new Rt(t)}function Ut(t){if(t&&"object"==typeof t){const n=t.toString();return"[object CanvasPattern]"===n||"[object CanvasGradient]"===n}return!1}function Vt(t){return Ut(t)?t:Ht(t)}function Wt(t){return Ut(t)?t:Ht(t).saturate(.5).darken(.1).hexString()}const Jt=Object.create(null),Kt=Object.create(null);function Gt(t,n){if(!n)return t;const e=n.split(".");for(let n=0,o=e.length;nt.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=(t,n)=>Wt(n.backgroundColor),this.hoverBorderColor=(t,n)=>Wt(n.borderColor),this.hoverColor=(t,n)=>Wt(n.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)}set(t,n){return Yt(this,t,n)}get(t){return Gt(this,t)}describe(t,n){return Yt(Kt,t,n)}override(t,n){return Yt(Jt,t,n)}route(t,n,e,o){const r=Gt(this,t),i=Gt(this,e),s="_"+n;Object.defineProperties(r,{[s]:{value:r[n],writable:!0},[n]:{enumerable:!0,get(){const t=this[s],n=i[o];return a(t)?Object.assign({},n,t):l(t,n)},set(t){this[s]=t}}})}}({_scriptable:t=>!t.startsWith("on"),_indexable:t=>"events"!==t,hover:{_fallback:"interaction"},interaction:{_scriptable:!1,_indexable:!1}});function Zt(t,n,e,o,r){let i=n[r];return i||(i=n[r]=t.measureText(r).width,e.push(r)),i>o&&(o=i),o}function Qt(t,n,e,o){let r=(o=o||{}).data=o.data||{},i=o.garbageCollect=o.garbageCollect||[];o.font!==n&&(r=o.data={},i=o.garbageCollect=[],o.font=n),t.save(),t.font=n;let a=0;const u=e.length;let c,l,h,p,f;for(c=0;ce.length){for(c=0;c<_;c++)delete r[i[c]];i.splice(0,_)}return a}function tn(t,n,e){const o=t.currentDevicePixelRatio,r=0!==e?Math.max(e/2,.5):0;return Math.round((n-r)*o)/o+r}function nn(t,n){(n=n||t.getContext("2d")).save(),n.resetTransform(),n.clearRect(0,0,t.width,t.height),n.restore()}function en(t,n,e,o){on(t,n,e,o,null)}function on(t,n,e,o,r){let i,s,a,u,c,l;const h=n.pointStyle,p=n.rotation,f=n.radius;let _=(p||0)*P;if(h&&"object"==typeof h&&(i=h.toString(),"[object HTMLImageElement]"===i||"[object HTMLCanvasElement]"===i))return t.save(),t.translate(e,o),t.rotate(_),t.drawImage(h,-h.width/2,-h.height/2,h.width,h.height),void t.restore();if(!(isNaN(f)||f<=0)){switch(t.beginPath(),h){default:r?t.ellipse(e,o,r/2,f,0,0,S):t.arc(e,o,f,0,S),t.closePath();break;case"triangle":t.moveTo(e+Math.sin(_)*f,o-Math.cos(_)*f),_+=E,t.lineTo(e+Math.sin(_)*f,o-Math.cos(_)*f),_+=E,t.lineTo(e+Math.sin(_)*f,o-Math.cos(_)*f),t.closePath();break;case"rectRounded":c=.516*f,u=f-c,s=Math.cos(_+A)*u,a=Math.sin(_+A)*u,t.arc(e-s,o-a,c,_-z,_-M),t.arc(e+a,o-s,c,_-M,_),t.arc(e+s,o+a,c,_,_+M),t.arc(e-a,o+s,c,_+M,_+z),t.closePath();break;case"rect":if(!p){u=Math.SQRT1_2*f,l=r?r/2:u,t.rect(e-l,o-u,2*l,2*u);break}_+=A;case"rectRot":s=Math.cos(_)*f,a=Math.sin(_)*f,t.moveTo(e-s,o-a),t.lineTo(e+a,o-s),t.lineTo(e+s,o+a),t.lineTo(e-a,o+s),t.closePath();break;case"crossRot":_+=A;case"cross":s=Math.cos(_)*f,a=Math.sin(_)*f,t.moveTo(e-s,o-a),t.lineTo(e+s,o+a),t.moveTo(e+a,o-s),t.lineTo(e-a,o+s);break;case"star":s=Math.cos(_)*f,a=Math.sin(_)*f,t.moveTo(e-s,o-a),t.lineTo(e+s,o+a),t.moveTo(e+a,o-s),t.lineTo(e-a,o+s),_+=A,s=Math.cos(_)*f,a=Math.sin(_)*f,t.moveTo(e-s,o-a),t.lineTo(e+s,o+a),t.moveTo(e+a,o-s),t.lineTo(e-a,o+s);break;case"line":s=r?r/2:Math.cos(_)*f,a=Math.sin(_)*f,t.moveTo(e-s,o-a),t.lineTo(e+s,o+a);break;case"dash":t.moveTo(e,o),t.lineTo(e+Math.cos(_)*f,o+Math.sin(_)*f)}t.fill(),n.borderWidth>0&&t.stroke()}}function rn(t,n,e){return e=e||.5,!n||t&&t.x>n.left-e&&t.xn.top-e&&t.y0&&""!==a.strokeColor;let l,h;for(t.save(),t.font=r.string,function(t,n){n.translation&&t.translate(n.translation[0],n.translation[1]),i(n.rotation)||t.rotate(n.rotation),n.color&&(t.fillStyle=n.color),n.textAlign&&(t.textAlign=n.textAlign),n.textBaseline&&(t.textBaseline=n.textBaseline)}(t,a),l=0;ll(t[e],t[n[e]]):n=>t[n]:()=>t;for(const t of r)e[t]=+i(t)||0;return e}function yn(t){return vn(t,{top:"y",right:"x",bottom:"y",left:"x"})}function mn(t){return vn(t,["topLeft","topRight","bottomLeft","bottomRight"])}function gn(t){const n=yn(t);return n.width=n.left+n.right,n.height=n.top+n.bottom,n}function $n(t,n){t=t||{},n=n||Xt.font;let e=l(t.size,n.size);"string"==typeof e&&(e=parseInt(e,10));let o=l(t.style,n.style);o&&!(""+o).match(_n)&&(console.warn('Invalid font style specified: "'+o+'"'),o="");const r={family:l(t.family,n.family),lineHeight:dn(l(t.lineHeight,n.lineHeight),e),size:e,style:o,weight:l(t.weight,n.weight),string:""};return r.string=function(t){return!t||i(t.size)||i(t.family)?null:(t.style?t.style+" ":"")+(t.weight?t.weight+" ":"")+t.size+"px "+t.family}(r),r}function bn(t,n,e,o){let r,i,a,u=!0;for(r=0,i=t.length;rt[0])){k(o)||(o=En("_fallback",t));const i={[Symbol.toStringTag]:"Object",_cacheable:!0,_scopes:t,_rootScopes:e,_fallback:o,_getTarget:r,override:r=>xn([r,...t],n,e,o)};return new Proxy(i,{deleteProperty:(n,e)=>(delete n[e],delete n._keys,delete t[0][e],!0),get:(e,o)=>Sn(e,o,(()=>function(t,n,e,o){let r;for(const i of n)if(r=En(Cn(i,t),e),k(r))return zn(t,r)?Mn(e,o,t,r):r}(o,n,t,e))),getOwnPropertyDescriptor:(t,n)=>Reflect.getOwnPropertyDescriptor(t._scopes[0],n),getPrototypeOf:()=>Reflect.getPrototypeOf(t[0]),has:(t,n)=>In(t).includes(n),ownKeys:t=>In(t),set(t,n,e){const o=t._storage||(t._storage=r());return t[n]=o[n]=e,delete t._keys,!0}})}function kn(t,n,e,o){const r={_cacheable:!1,_proxy:t,_context:n,_subProxy:e,_stack:new Set,_descriptors:jn(t,o),setContext:n=>kn(t,n,e,o),override:r=>kn(t.override(r),n,e,o)};return new Proxy(r,{deleteProperty:(n,e)=>(delete n[e],delete t[e],!0),get:(t,n,e)=>Sn(t,n,(()=>function(t,n,e){const{_proxy:o,_context:r,_subProxy:i,_descriptors:u}=t;let c=o[n];return j(c)&&u.isScriptable(n)&&(c=function(t,n,e,o){const{_proxy:r,_context:i,_subProxy:s,_stack:a}=e;if(a.has(t))throw new Error("Recursion detected: "+Array.from(a).join("->")+"->"+t);return a.add(t),n=n(i,s||o),a.delete(t),zn(t,n)&&(n=Mn(r._scopes,r,t,n)),n}(n,c,t,e)),s(c)&&c.length&&(c=function(t,n,e,o){const{_proxy:r,_context:i,_subProxy:s,_descriptors:u}=e;if(k(i.index)&&o(t))n=n[i.index%n.length];else if(a(n[0])){const e=n,o=r._scopes.filter((t=>t!==e));n=[];for(const a of e){const e=Mn(o,r,t,a);n.push(kn(e,i,s&&s[t],u))}}return n}(n,c,t,u.isIndexable)),zn(n,c)&&(c=kn(c,r,i&&i[n],u)),c}(t,n,e))),getOwnPropertyDescriptor:(n,e)=>n._descriptors.allKeys?Reflect.has(t,e)?{enumerable:!0,configurable:!0}:void 0:Reflect.getOwnPropertyDescriptor(t,e),getPrototypeOf:()=>Reflect.getPrototypeOf(t),has:(n,e)=>Reflect.has(t,e),ownKeys:()=>Reflect.ownKeys(t),set:(n,e,o)=>(t[e]=o,delete n[e],!0)})}function jn(t,n={scriptable:!0,indexable:!0}){const{_scriptable:e=n.scriptable,_indexable:o=n.indexable,_allKeys:r=n.allKeys}=t;return{allKeys:r,scriptable:e,indexable:o,isScriptable:j(e)?e:()=>e,isIndexable:j(o)?o:()=>o}}const Cn=(t,n)=>t?t+x(n):n,zn=(t,n)=>a(n)&&"adapters"!==t&&(null===Object.getPrototypeOf(n)||n.constructor===Object);function Sn(t,n,e){if(Object.prototype.hasOwnProperty.call(t,n))return t[n];const o=e();return t[n]=o,o}function qn(t,n,e){return j(t)?t(n,e):t}const On=(t,n)=>!0===t?n:"string"==typeof t?w(n,t):void 0;function Pn(t,n,e,o,r){for(const i of n){const n=On(e,i);if(n){t.add(n);const i=qn(n._fallback,e,r);if(k(i)&&i!==e&&i!==o)return i}else if(!1===n&&k(o)&&e!==o)return null}return!1}function Mn(t,n,e,o){const r=n._rootScopes,i=qn(n._fallback,e,o),u=[...t,...r],c=new Set;c.add(o);let l=An(c,u,e,i||e,o);return null!==l&&(!k(i)||i===e||(l=An(c,u,i,l,o),null!==l))&&xn(Array.from(c),[""],r,i,(()=>function(t,n,e){const o=t._getTarget();n in o||(o[n]={});const r=o[n];return s(r)&&a(e)?e:r}(n,e,o)))}function An(t,n,e,o,r){for(;e;)e=Pn(t,n,e,o,r);return e}function En(t,n){for(const e of n){if(!e)continue;const n=e[t];if(k(n))return n}}function In(t){let n=t._keys;return n||(n=t._keys=function(t){const n=new Set;for(const e of t)for(const t of Object.keys(e).filter((t=>!t.startsWith("_"))))n.add(t);return Array.from(n)}(t._scopes)),n}function Dn(t,n,e,o){const{iScale:r}=t,{key:i="r"}=this._parsing,s=new Array(o);let a,u,c,l;for(a=0,u=o;an"x"===t?"y":"x";function Nn(t,n,e,o){const r=t.skip?n:t,i=n,s=e.skip?n:e,a=V(i,r),u=V(s,i);let c=a/(a+u),l=u/(a+u);c=isNaN(c)?0:c,l=isNaN(l)?0:l;const h=o*c,p=o*l;return{previous:{x:i.x-h*(s.x-r.x),y:i.y-h*(s.y-r.y)},next:{x:i.x+p*(s.x-r.x),y:i.y+p*(s.y-r.y)}}}function Fn(t,n,e){return Math.max(Math.min(t,e),n)}function Rn(t,n,e,o,r){let i,s,a,u;if(n.spanGaps&&(t=t.filter((t=>!t.skip))),"monotone"===n.cubicInterpolationMode)!function(t,n="x"){const e=Ln(n),o=t.length,r=Array(o).fill(0),i=Array(o);let s,a,u,c=Bn(t,0);for(s=0;swindow.getComputedStyle(t,null),Jn=["top","right","bottom","left"];function Kn(t,n,e){const o={};e=e?"-"+e:"";for(let r=0;r<4;r++){const i=Jn[r];o[i]=parseFloat(t[n+"-"+i+e])||0}return o.width=o.left+o.right,o.height=o.top+o.bottom,o}function Gn(t,n){if("native"in t)return t;const{canvas:e,currentDevicePixelRatio:o}=n,r=Wn(e),i="border-box"===r.boxSizing,s=Kn(r,"padding"),a=Kn(r,"border","width"),{x:u,y:c,box:l}=function(t,n){const e=t.touches,o=e&&e.length?e[0]:t,{offsetX:r,offsetY:i}=o;let s,a,u=!1;if(((t,n,e)=>(t>0||n>0)&&(!e||!e.shadowRoot))(r,i,t.target))s=r,a=i;else{const t=n.getBoundingClientRect();s=o.clientX-t.left,a=o.clientY-t.top,u=!0}return{x:s,y:a,box:u}}(t,e),h=s.left+(l&&a.left),p=s.top+(l&&a.top);let{width:f,height:_}=n;return i&&(f-=s.width+a.width,_-=s.height+a.height),{x:Math.round((u-h)/f*e.width/o),y:Math.round((c-p)/_*e.height/o)}}const Yn=t=>Math.round(10*t)/10;function Xn(t,n,e){const o=n||1,r=Math.floor(t.height*o),i=Math.floor(t.width*o);t.height=r/o,t.width=i/o;const s=t.canvas;return s.style&&(e||!s.style.height&&!s.style.width)&&(s.style.height=`${t.height}px`,s.style.width=`${t.width}px`),(t.currentDevicePixelRatio!==o||s.height!==r||s.width!==i)&&(t.currentDevicePixelRatio=o,s.height=r,s.width=i,t.ctx.setTransform(o,0,0,o,0,0),!0)}const Zn=function(){let t=!1;try{const n={get passive(){return t=!0,!1}};window.addEventListener("test",null,n),window.removeEventListener("test",null,n)}catch(t){}return t}();function Qn(t,n){const e=function(t,n){return Wn(t).getPropertyValue(n)}(t,n),o=e&&e.match(/^(\d+)(\.\d+)?px$/);return o?+o[1]:void 0}function te(t,n,e,o){return{x:t.x+e*(n.x-t.x),y:t.y+e*(n.y-t.y)}}function ne(t,n,e,o){return{x:t.x+e*(n.x-t.x),y:"middle"===o?e<.5?t.y:n.y:"after"===o?e<1?t.y:n.y:e>0?n.y:t.y}}function ee(t,n,e,o){const r={x:t.cp2x,y:t.cp2y},i={x:n.cp1x,y:n.cp1y},s=te(t,r,e),a=te(r,i,e),u=te(i,n,e),c=te(s,a,e),l=te(a,u,e);return te(c,l,e)}const oe=new Map;function re(t,n,e){return function(t,n){n=n||{};const e=t+JSON.stringify(n);let o=oe.get(e);return o||(o=new Intl.NumberFormat(t,n),oe.set(e,o)),o}(n,e).format(t)}function ie(t,n,e){return t?function(t,n){return{x:e=>t+t+n-e,setWidth(t){n=t},textAlign:t=>"center"===t?t:"right"===t?"left":"right",xPlus:(t,n)=>t-n,leftForLtr:(t,n)=>t-n}}(n,e):{x:t=>t,setWidth(t){},textAlign:t=>t,xPlus:(t,n)=>t+n,leftForLtr:(t,n)=>t}}function se(t,n){let e,o;"ltr"!==n&&"rtl"!==n||(e=t.canvas.style,o=[e.getPropertyValue("direction"),e.getPropertyPriority("direction")],e.setProperty("direction",n,"important"),t.prevTextDirection=o)}function ae(t,n){void 0!==n&&(delete t.prevTextDirection,t.canvas.style.setProperty("direction",n[0],n[1]))}function ue(t){return"angle"===t?{between:K,compare:W,normalize:J}:{between:Y,compare:(t,n)=>t-n,normalize:t=>t}}function ce({start:t,end:n,count:e,loop:o,style:r}){return{start:t%e,end:n%e,loop:o&&(n-t+1)%e==0,style:r}}function le(t,n,e){if(!e)return[t];const{property:o,start:r,end:i}=e,s=n.length,{compare:a,between:u,normalize:c}=ue(o),{start:l,end:h,loop:p,style:f}=function(t,n,e){const{property:o,start:r,end:i}=e,{between:s,normalize:a}=ue(o),u=n.length;let c,l,{start:h,end:p,loop:f}=t;if(f){for(h+=u,p+=u,c=0,l=u;co({chart:t,initial:n.initial,numSteps:i,currentStep:Math.min(e-n.start,i)})))}_refresh(){this._request||(this._running=!0,this._request=ot.call(window,(()=>{this._update(),this._request=null,this._running&&this._refresh()})))}_update(t=Date.now()){let n=0;this._charts.forEach(((e,o)=>{if(!e.running||!e.items.length)return;const r=e.items;let i,s=r.length-1,a=!1;for(;s>=0;--s)i=r[s],i._active?(i._total>e.duration&&(e.duration=i._total),i.tick(t),a=!0):(r[s]=r[r.length-1],r.pop());a&&(o.draw(),this._notify(o,e,t,"progress")),r.length||(e.running=!1,this._notify(o,e,t,"complete"),e.initial=!1),n+=r.length})),this._lastDate=t,0===n&&(this._running=!1)}_getAnims(t){const n=this._charts;let e=n.get(t);return e||(e={running:!1,initial:!0,items:[],listeners:{complete:[],progress:[]}},n.set(t,e)),e}listen(t,n,e){this._getAnims(t).listeners[n].push(e)}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(((t,n)=>Math.max(t,n._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 e=n.items;let o=e.length-1;for(;o>=0;--o)e[o].cancel();n.items=[],this._notify(t,n,Date.now(),"complete")}remove(t){return this._charts.delete(t)}};const de="transparent",ve={boolean:(t,n,e)=>e>.5?n:t,color(t,n,e){const o=Vt(t||de),r=o.valid&&Vt(n||de);return r&&r.valid?r.mix(o,e).hexString():n},number:(t,n,e)=>t+(n-t)*e};class ye{constructor(t,n,e,o){const r=n[e];o=bn([t.to,o,r,t.from]);const i=bn([t.from,r,o]);this._active=!0,this._fn=t.fn||ve[t.type||typeof i],this._easing=pt[t.easing]||pt.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=e,this._from=i,this._to=o,this._promises=void 0}active(){return this._active}update(t,n,e){if(this._active){this._notify(!1);const o=this._target[this._prop],r=e-this._start,i=this._duration-r;this._start=e,this._duration=Math.floor(Math.max(i,t.duration)),this._total+=r,this._loop=!!t.loop,this._to=bn([t.to,n,o,t.from]),this._from=bn([t.from,o,n])}}cancel(){this._active&&(this.tick(Date.now()),this._active=!1,this._notify(!1))}tick(t){const n=t-this._start,e=this._duration,o=this._prop,r=this._from,i=this._loop,s=this._to;let a;if(this._active=r!==s&&(i||n1?2-a:a,a=this._easing(Math.min(1,Math.max(0,a))),this._target[o]=this._fn(r,s,a))}wait(){const t=this._promises||(this._promises=[]);return new Promise(((n,e)=>{t.push({res:n,rej:e})}))}_notify(t){const n=t?"res":"rej",e=this._promises||[];for(let t=0;t"onProgress"!==t&&"onComplete"!==t&&"fn"!==t}),Xt.set("animations",{colors:{type:"color",properties:["color","borderColor","backgroundColor"]},numbers:{type:"number",properties:["x","y","borderWidth","radius","tension"]}}),Xt.describe("animations",{_fallback:"animation"}),Xt.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=>0|t}}}});class ge{constructor(t,n){this._chart=t,this._properties=new Map,this.configure(n)}configure(t){if(!a(t))return;const n=this._properties;Object.getOwnPropertyNames(t).forEach((e=>{const o=t[e];if(!a(o))return;const r={};for(const t of me)r[t]=o[t];(s(o.properties)&&o.properties||[e]).forEach((t=>{t!==e&&n.has(t)||n.set(t,r)}))}))}_animateOptions(t,n){const e=n.options,o=function(t,n){if(!n)return;let e=t.options;if(e)return e.$shared&&(t.options=e=Object.assign({},e,{$shared:!1,$animations:{}})),e;t.options=n}(t,e);if(!o)return[];const r=this._createAnimations(o,e);return e.$shared&&function(t,n){const e=[],o=Object.keys(n);for(let n=0;n{t.options=e}),(()=>{})),r}_createAnimations(t,n){const e=this._properties,o=[],r=t.$animations||(t.$animations={}),i=Object.keys(n),s=Date.now();let a;for(a=i.length-1;a>=0;--a){const u=i[a];if("$"===u.charAt(0))continue;if("options"===u){o.push(...this._animateOptions(t,n));continue}const c=n[u];let l=r[u];const h=e.get(u);if(l){if(h&&l.active()){l.update(h,c,s);continue}l.cancel()}h&&h.duration?(r[u]=l=new ye(h,t,u,c),o.push(l)):t[u]=c}return o}update(t,n){if(0===this._properties.size)return void Object.assign(t,n);const e=this._createAnimations(t,n);return e.length?(_e.add(this._chart,e),!0):void 0}}function $e(t,n){const e=t&&t.options||{},o=e.reverse,r=void 0===e.min?n:0,i=void 0===e.max?n:0;return{start:o?i:r,end:o?r:i}}function be(t,n){const e=[],o=t._getSortedDatasetMetas(n);let r,i;for(r=0,i=o.length;r0||!e&&n<0)return r.index}return null}function Ce(t,n){const{chart:e,_cachedMeta:o}=t,r=e._stacks||(e._stacks={}),{iScale:i,vScale:s,index:a}=o,u=i.axis,c=s.axis,l=function(t,n,e){return`${t.id}.${n.id}.${e.stack||e.type}`}(i,s,o),h=n.length;let p;for(let t=0;te[t].axis===n)).shift()}function Se(t,n){const e=t.controller.index,o=t.vScale&&t.vScale.axis;if(o){n=n||t._parsed;for(const t of n){const n=t._stacks;if(!n||void 0===n[o]||void 0===n[o][e])return;delete n[o][e]}}}const qe=t=>"reset"===t||"none"===t,Oe=(t,n)=>n?t:Object.assign({},t);class Pe{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.initialize()}initialize(){const t=this._cachedMeta;this.configure(),this.linkScales(),t._stacked=xe(t.vScale,t),this.addElements()}updateIndex(t){this.index!==t&&Se(this._cachedMeta),this.index=t}linkScales(){const t=this.chart,n=this._cachedMeta,e=this.getDataset(),o=(t,n,e,o)=>"x"===t?n:"r"===t?o:e,r=n.xAxisID=l(e.xAxisID,ze(t,"x")),i=n.yAxisID=l(e.yAxisID,ze(t,"y")),s=n.rAxisID=l(e.rAxisID,ze(t,"r")),a=n.indexAxis,u=n.iAxisID=o(a,r,i,s),c=n.vAxisID=o(a,i,r,s);n.xScale=this.getScaleForId(r),n.yScale=this.getScaleForId(i),n.rScale=this.getScaleForId(s),n.iScale=this.getScaleForId(u),n.vScale=this.getScaleForId(c)}getDataset(){return this.chart.data.datasets[this.index]}getMeta(){return this.chart.getDatasetMeta(this.index)}getScaleForId(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&&nt(this._data,this),t._stacked&&Se(t)}_dataCheck(){const t=this.getDataset(),n=t.data||(t.data=[]),e=this._data;if(a(n))this._data=function(t){const n=Object.keys(t),e=new Array(n.length);let o,r,i;for(o=0,r=n.length;o{const n="_onData"+x(t),e=o[t];Object.defineProperty(o,t,{configurable:!0,enumerable:!1,value(...t){const r=e.apply(this,t);return o._chartjs.listeners.forEach((e=>{"function"==typeof e[n]&&e[n](...t)})),r}})})))),this._syncList=[],this._data=n}var o}addElements(){const t=this._cachedMeta;this._dataCheck(),this.datasetElementType&&(t.dataset=new this.datasetElementType)}buildOrUpdateElements(t){const n=this._cachedMeta,e=this.getDataset();let o=!1;this._dataCheck();const r=n._stacked;n._stacked=xe(n.vScale,n),n.stack!==e.stack&&(o=!0,Se(n),n.stack=e.stack),this._resyncElements(t),(o||r!==n._stacked)&&Ce(this,n._parsed)}configure(){const t=this.chart.config,n=t.datasetScopeKeys(this._type),e=t.getOptionScopes(this.getDataset(),n,!0);this.options=t.createResolver(e,this.getContext()),this._parsing=this.options.parsing,this._cachedDataOpts={}}parse(t,n){const{_cachedMeta:e,_data:o}=this,{iScale:r,_stacked:i}=e,u=r.axis;let c,l,h,p=0===t&&n===o.length||e._sorted,f=t>0&&e._parsed[t-1];if(!1===this._parsing)e._parsed=o,e._sorted=!0,h=o;else{h=s(o[t])?this.parseArrayData(e,o,t,n):a(o[t])?this.parseObjectData(e,o,t,n):this.parsePrimitiveData(e,o,t,n);const r=()=>null===l[u]||f&&l[u]t&&!n.hidden&&n._stacked&&{keys:be(e,!0),values:null})(n,e,this.chart),c={min:Number.POSITIVE_INFINITY,max:Number.NEGATIVE_INFINITY},{min:l,max:h}=function(t){const{min:n,max:e,minDefined:o,maxDefined:r}=t.getUserBounds();return{min:o?n:Number.NEGATIVE_INFINITY,max:r?e:Number.POSITIVE_INFINITY}}(s);let p,f;function _(){f=o[p];const n=f[s.axis];return!u(f[t.axis])||l>n||h=0;--p)if(!_()){this.updateRangeFromParsed(c,t,f,a);break}return c}getAllParsedValues(t){const n=this._cachedMeta._parsed,e=[];let o,r,i;for(o=0,r=n.length;o=0&&tthis.getContext(e,o)),l);return f.$shared&&(f.$shared=a,r[i]=Object.freeze(Oe(f,a))),f}_resolveAnimations(t,n,e){const o=this.chart,r=this._cachedDataOpts,i=`animation-${n}`,s=r[i];if(s)return s;let a;if(!1!==o.options.animation){const o=this.chart.config,r=o.datasetAnimationScopeKeys(this._type,n),i=o.getOptionScopes(this.getDataset(),r);a=o.createResolver(i,this.getContext(t,e,n))}const u=new ge(o,a&&a.animations);return a&&a._cacheable&&(r[i]=Object.freeze(u)),u}getSharedOptions(t){if(t.$shared)return this._sharedOptions||(this._sharedOptions=Object.assign({},t))}includeOptions(t,n){return!n||qe(t)||this.chart._animationsDisabled}_getSharedOptions(t,n){const e=this.resolveDataElementOptions(t,n),o=this._sharedOptions,r=this.getSharedOptions(e),i=this.includeOptions(n,r)||r!==o;return this.updateSharedOptions(r,n,e),{sharedOptions:r,includeOptions:i}}updateElement(t,n,e,o){qe(o)?Object.assign(t,e):this._resolveAnimations(n,o).update(t,e)}updateSharedOptions(t,n,e){t&&!qe(n)&&this._resolveAnimations(void 0,n).update(t,e)}_setStyle(t,n,e,o){t.active=o;const r=this.getStyle(n,o);this._resolveAnimations(n,e,o).update(t,{options:!o&&this.getSharedOptions(r)||r})}removeHoverStyle(t,n,e){this._setStyle(t,e,"active",!1)}setHoverStyle(t,n,e){this._setStyle(t,e,"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,e=this._cachedMeta.data;for(const[t,n,e]of this._syncList)this[t](n,e);this._syncList=[];const o=e.length,r=n.length,i=Math.min(r,o);i&&this.parse(0,i),r>o?this._insertElements(o,r-o,t):r{for(t.length+=n,s=t.length-1;s>=i;s--)t[s]=t[s-n]};for(a(r),s=t;st-n)))}return t._cache.$bar}(n,t.type);let o,r,i,s,a=n._length;const u=()=>{32767!==i&&-32768!==i&&(k(s)&&(a=Math.min(a,Math.abs(i-s)||a)),s=i)};for(o=0,r=e.length;oMath.abs(a)&&(u=a,c=s),n[e.axis]=c,n._custom={barStart:u,barEnd:c,start:r,end:i,min:s,max:a}}(t,n,e,o):n[e.axis]=e.parse(t,o),n}function Ee(t,n,e,o){const r=t.iScale,i=t.vScale,s=r.getLabels(),a=r===i,u=[];let c,l,h,p;for(c=e,l=e+o;ct.x,e="left",o="right"):(n=t.baset.controller.options.grouped)),r=e.options.stacked,s=[],a=t=>{const e=t.controller.getParsed(n),o=e&&e[t.vScale.axis];if(i(o)||isNaN(o))return!0};for(const e of o)if((void 0===n||!a(e))&&((!1===r||-1===s.indexOf(e.stack)||void 0===r&&void 0===e.stack)&&s.push(e.stack),e.index===t))break;return s.length||s.push(void 0),s}_getStackCount(t){return this._getStacks(void 0,t).length}_getStackIndex(t,n,e){const o=this._getStacks(t,e),r=void 0!==n?o.indexOf(n):-1;return-1===r?o.length-1:r}_getRuler(){const t=this.options,n=this._cachedMeta,e=n.iScale,o=[];let r,i;for(r=0,i=n.data.length;r=e?1:-1)}(h,n,s)*r,p===s&&(v-=h/2);const t=n.getPixelForDecimal(0),e=n.getPixelForDecimal(1),o=Math.min(t,e),i=Math.max(t,e);v=Math.max(Math.min(v,i),o),l=v+h}if(v===n.getPixelForValue(s)){const t=D(h)*n.getLineWidthForValue(s)/2;v+=t,h-=t}return{size:h,base:v,head:l,center:l+h/2}}_calculateBarIndexPixels(t,n){const e=n.scale,o=this.options,r=o.skipNull,s=l(o.maxBarThickness,1/0);let a,u;if(n.grouped){const e=r?this._getStackCount(t):n.stackCount,c="flex"===o.barThickness?function(t,n,e,o){const r=n.pixels,i=r[t];let s=t>0?r[t-1]:null,a=t=0;--e)n=Math.max(n,t[e].size(this.resolveDataElementOptions(e))/2);return n>0&&n}getLabelAndValue(t){const n=this._cachedMeta,{xScale:e,yScale:o}=n,r=this.getParsed(t),i=e.getLabelForValue(r.x),s=o.getLabelForValue(r.y),a=r._custom;return{label:n.label,value:"("+i+", "+s+(a?", "+a:"")+")"}}update(t){const n=this._cachedMeta.data;this.updateElements(n,0,n.length,t)}updateElements(t,n,e,o){const r="reset"===o,{iScale:i,vScale:s}=this._cachedMeta,{sharedOptions:a,includeOptions:u}=this._getSharedOptions(n,o),c=i.axis,l=s.axis;for(let h=n;h""}}}};class Re extends Pe{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 e=this.getDataset().data,o=this._cachedMeta;if(!1===this._parsing)o._parsed=e;else{let r,i,s=t=>+e[t];if(a(e[t])){const{key:t="value"}=this._parsing;s=n=>+w(e[n],t)}for(r=t,i=t+n;rK(t,a,u,!0)?1:Math.max(n,n*e,o,o*e),_=(t,n,o)=>K(t,a,u,!0)?-1:Math.min(n,n*e,o,o*e),d=f(0,c,h),v=f(M,l,p),y=_(z,c,h),m=_(z+M,l,p);o=(d-y)/2,r=(v-m)/2,i=-(d+y)/2,s=-(v+m)/2}return{ratioX:o,ratioY:r,offsetX:i,offsetY:s}}(f,p,a),m=(e.width-i)/_,g=(e.height-i)/d,$=Math.max(Math.min(m,g)/2,0),b=h(this.options.radius,$),w=(b-Math.max(b*a,0))/this._getVisibleDatasetWeightTotal();this.offsetX=v*b,this.offsetY=y*b,o.total=this.calculateTotal(),this.outerRadius=b-w*this._getRingWeightOffset(this.index),this.innerRadius=Math.max(this.outerRadius-w*l,0),this.updateElements(r,0,r.length,t)}_circumference(t,n){const e=this.options,o=this._cachedMeta,r=this._getCircumference();return n&&e.animation.animateRotate||!this.chart.getDataVisibility(t)||null===o._parsed[t]||o.data[t].hidden?0:this.calculateCircumference(o._parsed[t]*r/S)}updateElements(t,n,e,o){const r="reset"===o,i=this.chart,s=i.chartArea,a=i.options.animation,u=(s.left+s.right)/2,c=(s.top+s.bottom)/2,l=r&&a.animateScale,h=l?0:this.innerRadius,p=l?0:this.outerRadius,{sharedOptions:f,includeOptions:_}=this._getSharedOptions(n,o);let d,v=this._getRotation();for(d=0;d0&&!isNaN(t)?S*(Math.abs(t)/n):0}getLabelAndValue(t){const n=this._cachedMeta,e=this.chart,o=e.data.labels||[],r=re(n._parsed[t],e.options.locale);return{label:o[t]||"",value:r}}getMaxBorderWidth(t){let n=0;const e=this.chart;let o,r,i,s,a;if(!t)for(o=0,r=e.data.datasets.length;o"spacing"!==t,_indexable:t=>"spacing"!==t},Re.overrides={aspectRatio:1,plugins:{legend:{labels:{generateLabels(t){const n=t.data;if(n.labels.length&&n.datasets.length){const{labels:{pointStyle:e}}=t.legend.options;return n.labels.map(((n,o)=>{const r=t.getDatasetMeta(0).controller.getStyle(o);return{text:n,fillStyle:r.backgroundColor,strokeStyle:r.borderColor,lineWidth:r.borderWidth,pointStyle:e,hidden:!t.getDataVisibility(o),index:o}}))}return[]}},onClick(t,n,e){e.chart.toggleDataVisibility(n.index),e.chart.update()}},tooltip:{callbacks:{title:()=>"",label(t){let n=t.label;const e=": "+t.formattedValue;return s(n)?(n=n.slice(),n[0]+=e):n+=e,n}}}}};class He extends Pe{initialize(){this.enableOptionSharing=!0,this.supportsDecimation=!0,super.initialize()}update(t){const n=this._cachedMeta,{dataset:e,data:o=[],_dataset:r}=n,i=this.chart._animationsDisabled;let{start:s,count:a}=at(n,o,i);this._drawStart=s,this._drawCount=a,ut(n)&&(s=0,a=o.length),e._chart=this.chart,e._datasetIndex=this.index,e._decimated=!!r._decimated,e.points=o;const u=this.resolveDatasetElementOptions(t);this.options.showLine||(u.borderWidth=0),u.segment=this.options.segment,this.updateElement(e,void 0,{animated:!i,options:u},t),this.updateElements(o,s,a,t)}updateElements(t,n,e,o){const r="reset"===o,{iScale:s,vScale:a,_stacked:u,_dataset:c}=this._cachedMeta,{sharedOptions:l,includeOptions:h}=this._getSharedOptions(n,o),p=s.axis,f=a.axis,{spanGaps:_,segment:d}=this.options,v=B(_)?_:Number.POSITIVE_INFINITY,y=this.chart._animationsDisabled||r||"none"===o;let m=n>0&&this.getParsed(n-1);for(let _=n;_0&&Math.abs(e[p]-m[p])>v,d&&(g.parsed=e,g.raw=c.data[_]),h&&(g.options=l||this.resolveDataElementOptions(_,n.active?"active":o)),y||this.updateElement(n,_,g,o),m=e}}getMaxOverflow(){const t=this._cachedMeta,n=t.dataset,e=n.options&&n.options.borderWidth||0,o=t.data||[];if(!o.length)return e;const r=o[0].size(this.resolveDataElementOptions(0)),i=o[o.length-1].size(this.resolveDataElementOptions(o.length-1));return Math.max(e,r,i)/2}draw(){const t=this._cachedMeta;t.dataset.updateControlPoints(this.chart.chartArea,t.iScale.axis),super.draw()}}He.id="line",He.defaults={datasetElementType:"line",dataElementType:"point",showLine:!0,spanGaps:!1},He.overrides={scales:{_index_:{type:"category"},_value_:{type:"linear"}}};class Ue extends Pe{constructor(t,n){super(t,n),this.innerRadius=void 0,this.outerRadius=void 0}getLabelAndValue(t){const n=this._cachedMeta,e=this.chart,o=e.data.labels||[],r=re(n._parsed[t].r,e.options.locale);return{label:o[t]||"",value:r}}parseObjectData(t,n,e,o){return Dn.bind(this)(t,n,e,o)}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(((t,e)=>{const o=this.getParsed(e).r;!isNaN(o)&&this.chart.getDataVisibility(e)&&(on.max&&(n.max=o))})),n}_updateRadius(){const t=this.chart,n=t.chartArea,e=t.options,o=Math.min(n.right-n.left,n.bottom-n.top),r=Math.max(o/2,0),i=(r-Math.max(e.cutoutPercentage?r/100*e.cutoutPercentage:1,0))/t.getVisibleDatasetCount();this.outerRadius=r-i*this.index,this.innerRadius=this.outerRadius-i}updateElements(t,n,e,o){const r="reset"===o,i=this.chart,s=i.options.animation,a=this._cachedMeta.rScale,u=a.xCenter,c=a.yCenter,l=a.getIndexAngle(0)-.5*z;let h,p=l;const f=360/this.countVisibleElements();for(h=0;h{!isNaN(this.getParsed(e).r)&&this.chart.getDataVisibility(e)&&n++})),n}_computeAngle(t,n,e){return this.chart.getDataVisibility(t)?F(this.resolveDataElementOptions(t,n).angle||e):0}}Ue.id="polarArea",Ue.defaults={dataElementType:"arc",animation:{animateRotate:!0,animateScale:!0},animations:{numbers:{type:"number",properties:["x","y","startAngle","endAngle","innerRadius","outerRadius"]}},indexAxis:"r",startAngle:0},Ue.overrides={aspectRatio:1,plugins:{legend:{labels:{generateLabels(t){const n=t.data;if(n.labels.length&&n.datasets.length){const{labels:{pointStyle:e}}=t.legend.options;return n.labels.map(((n,o)=>{const r=t.getDatasetMeta(0).controller.getStyle(o);return{text:n,fillStyle:r.backgroundColor,strokeStyle:r.borderColor,lineWidth:r.borderWidth,pointStyle:e,hidden:!t.getDataVisibility(o),index:o}}))}return[]}},onClick(t,n,e){e.chart.toggleDataVisibility(n.index),e.chart.update()}},tooltip:{callbacks:{title:()=>"",label:t=>t.chart.data.labels[t.dataIndex]+": "+t.formattedValue}}},scales:{r:{type:"radialLinear",angleLines:{display:!1},beginAtZero:!0,grid:{circular:!0},pointLabels:{display:!1},startAngle:0}}};class Ve extends Re{}Ve.id="pie",Ve.defaults={cutout:0,rotation:0,circumference:360,radius:"100%"};class We extends Pe{getLabelAndValue(t){const n=this._cachedMeta.vScale,e=this.getParsed(t);return{label:n.getLabels()[t],value:""+n.getLabelForValue(e[n.axis])}}parseObjectData(t,n,e,o){return Dn.bind(this)(t,n,e,o)}update(t){const n=this._cachedMeta,e=n.dataset,o=n.data||[],r=n.iScale.getLabels();if(e.points=o,"resize"!==t){const n=this.resolveDatasetElementOptions(t);this.options.showLine||(n.borderWidth=0);const i={_loop:!0,_fullLoop:r.length===o.length,options:n};this.updateElement(e,void 0,i,t)}this.updateElements(o,0,o.length,t)}updateElements(t,n,e,o){const r=this._cachedMeta.rScale,i="reset"===o;for(let s=n;s{o[t]=e[t]&&e[t].active()?e[t]._to:this[t]})),o}}Je.defaults={},Je.defaultRoutes=void 0;const Ke={values:t=>s(t)?t:""+t,numeric(t,n,e){if(0===t)return"0";const o=this.chart.options.locale;let r,i=t;if(e.length>1){const n=Math.max(Math.abs(e[0].value),Math.abs(e[e.length-1].value));(n<1e-4||n>1e15)&&(r="scientific"),i=function(t,n){let e=n.length>3?n[2].value-n[1].value:n[1].value-n[0].value;return Math.abs(e)>=1&&t!==Math.floor(t)&&(e=t-Math.floor(t)),e}(t,e)}const s=I(Math.abs(i)),a=Math.max(Math.min(-1*Math.floor(s),20),0),u={notation:r,minimumFractionDigits:a,maximumFractionDigits:a};return Object.assign(u,this.options.ticks.format),re(t,o,u)},logarithmic(t,n,e){if(0===t)return"0";const o=t/Math.pow(10,Math.floor(I(t)));return 1===o||2===o||5===o?Ke.numeric.call(this,t,n,e):""}};var Ge={formatters:Ke};function Ye(t,n,e,o,r){const i=l(o,0),s=Math.min(l(r,t.length),t.length);let a,u,c,h=0;for(e=Math.ceil(e),r&&(a=r-o,e=a/Math.floor(a/e)),c=i;c<0;)h++,c=Math.round(i+h*e);for(u=Math.max(i,0);un.lineWidth,tickColor:(t,n)=>n.color,offset:!1,borderDash:[],borderDashOffset:0,borderWidth: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:Ge.formatters.values,minor:{},major:{},align:"center",crossAlign:"near",showLabelBackdrop:!1,backdropColor:"rgba(255, 255, 255, 0.75)",backdropPadding:2}}),Xt.route("scale.ticks","color","","color"),Xt.route("scale.grid","color","","borderColor"),Xt.route("scale.grid","borderColor","","borderColor"),Xt.route("scale.title","color","","color"),Xt.describe("scale",{_fallback:!1,_scriptable:t=>!t.startsWith("before")&&!t.startsWith("after")&&"callback"!==t&&"parser"!==t,_indexable:t=>"borderDash"!==t&&"tickBorderDash"!==t}),Xt.describe("scales",{_fallback:"scale"}),Xt.describe("scale.ticks",{_scriptable:t=>"backdropPadding"!==t&&"callback"!==t,_indexable:t=>"backdropPadding"!==t});const Xe=(t,n,e)=>"top"===n||"left"===n?t[n]+e:t[n]-e;function Ze(t,n){const e=[],o=t.length/n,r=t.length;let i=0;for(;is+a)))return c}function to(t){return t.drawTicks?t.tickLength:0}function no(t,n){if(!t.display)return 0;const e=$n(t.font,n),o=gn(t.padding);return(s(t.text)?t.text.length:1)*e.lineHeight+o.height}function eo(t,n,e){let o=it(t);return(e&&"right"!==n||!e&&"right"===n)&&(o=(t=>"left"===t?"right":"right"===t?"left":t)(o)),o}class oo extends Je{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:e,_suggestedMax:o}=this;return t=c(t,Number.POSITIVE_INFINITY),n=c(n,Number.NEGATIVE_INFINITY),e=c(e,Number.POSITIVE_INFINITY),o=c(o,Number.NEGATIVE_INFINITY),{min:c(t,e),max:c(n,o),minDefined:u(t),maxDefined:u(n)}}getMinMax(t){let n,{min:e,max:o,minDefined:r,maxDefined:i}=this.getUserBounds();if(r&&i)return{min:e,max:o};const s=this.getMatchingVisibleMetas();for(let a=0,u=s.length;ao?o:e,o=r&&e>o?e:o,{min:c(e,c(o,e)),max:c(o,c(e,o))}}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||[]}beforeLayout(){this._cache={},this._dataLimitsCached=!1}beforeUpdate(){p(this.options.beforeUpdate,[this])}update(t,n,e){const{beginAtZero:o,grace:r,ticks:s}=this.options,a=s.sampleSize;this.beforeUpdate(),this.maxWidth=t,this.maxHeight=n,this._margins=e=Object.assign({left:0,right:0,top:0,bottom:0},e),this.ticks=null,this._labelSizes=null,this._gridLineItems=null,this._labelItems=null,this.beforeSetDimensions(),this.setDimensions(),this.afterSetDimensions(),this._maxLength=this.isHorizontal()?this.width+e.left+e.right:this.height+e.top+e.bottom,this._dataLimitsCached||(this.beforeDataLimits(),this.determineDataLimits(),this.afterDataLimits(),this._range=function(t,n,e){const{min:o,max:r}=t,i=h(n,(r-o)/2),s=(t,n)=>e&&0===t?0:t+n;return{min:s(o,-Math.abs(i)),max:s(r,i)}}(this,r,o),this._dataLimitsCached=!0),this.beforeBuildTicks(),this.ticks=this.buildTicks()||[],this.afterBuildTicks();const u=ao)return function(t,n,e,o){let r,i=0,s=e[0];for(o=Math.ceil(o),r=0;rt-n)).pop(),n}(o);for(let t=0,n=i.length-1;tr)return n}return Math.max(r,1)}(r,n,o);if(s>0){let t,e;const o=s>1?Math.round((u-a)/(s-1)):null;for(Ye(n,c,l,i(o)?0:a-o,a),t=0,e=s-1;t=r||e<=1||!this.isHorizontal())return void(this.labelRotation=o);const c=this._getLabelSizes(),l=c.widest.width,h=c.highest.height,p=G(this.chart.width-l,0,this.maxWidth);i=t.offset?this.maxWidth/e:p/(e-1),l+6>i&&(i=p/(e-(t.offset?.5:1)),s=this.maxHeight-to(t.grid)-n.padding-no(t.title,this.chart.options.font),a=Math.sqrt(l*l+h*h),u=R(Math.min(Math.asin(G((c.highest.height+6)/i,-1,1)),Math.asin(G(s/a,-1,1))-Math.asin(G(h/a,-1,1)))),u=Math.max(o,Math.min(r,u))),this.labelRotation=u}afterCalculateLabelRotation(){p(this.options.afterCalculateLabelRotation,[this])}afterAutoSkip(){}beforeFit(){p(this.options.beforeFit,[this])}fit(){const t={width:0,height:0},{chart:n,options:{ticks:e,title:o,grid:r}}=this,i=this._isVisible(),s=this.isHorizontal();if(i){const i=no(o,n.options.font);if(s?(t.width=this.maxWidth,t.height=to(r)+i):(t.height=this.maxHeight,t.width=to(r)+i),e.display&&this.ticks.length){const{first:n,last:o,widest:r,highest:i}=this._getLabelSizes(),a=2*e.padding,u=F(this.labelRotation),c=Math.cos(u),l=Math.sin(u);if(s){const n=e.mirror?0:l*r.width+c*i.height;t.height=Math.min(this.maxHeight,t.height+n+a)}else{const n=e.mirror?0:c*r.width+l*i.height;t.width=Math.min(this.maxWidth,t.width+n+a)}this._calculatePadding(n,o,l,c)}}this._handleMargins(),s?(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,e,o){const{ticks:{align:r,padding:i},position:s}=this.options,a=0!==this.labelRotation,u="top"!==s&&"x"===this.axis;if(this.isHorizontal()){const s=this.getPixelForTick(0)-this.left,c=this.right-this.getPixelForTick(this.ticks.length-1);let l=0,h=0;a?u?(l=o*t.width,h=e*n.height):(l=e*t.height,h=o*n.width):"start"===r?h=n.width:"end"===r?l=t.width:"inner"!==r&&(l=t.width/2,h=n.width/2),this.paddingLeft=Math.max((l-s+i)*this.width/(this.width-s),0),this.paddingRight=Math.max((h-c+i)*this.width/(this.width-c),0)}else{let e=n.height/2,o=t.height/2;"start"===r?(e=0,o=t.height):"end"===r&&(e=n.height,o=0),this.paddingTop=e+i,this.paddingBottom=o+i}}_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(){p(this.options.afterFit,[this])}isHorizontal(){const{axis:t,position:n}=this.options;return"top"===n||"bottom"===n||"x"===t}isFullSize(){return this.options.fullSize}_convertTicksToLabels(t){let n,e;for(this.beforeTickToLabelConversion(),this.generateTickLabels(t),n=0,e=t.length;n{const e=t.gc,o=e.length/2;let r;if(o>n){for(r=0;r({width:r[t]||0,height:a[t]||0});return{first:k(0),last:k(n-1),widest:k(w),highest:k(x),widths:r,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 G(this._alignToPixels?tn(this.chart,n,0):n,-32768,32767)}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&&ts*o?s/e:a/o:a*o0}_computeGridLineItems(t){const n=this.axis,e=this.chart,o=this.options,{grid:r,position:i}=o,s=r.offset,u=this.isHorizontal(),c=this.ticks.length+(s?1:0),h=to(r),p=[],f=r.setContext(this.getContext()),_=f.drawBorder?f.borderWidth:0,d=_/2,v=function(t){return tn(e,t,_)};let y,m,g,$,b,w,x,k,j,C,z,S;if("top"===i)y=v(this.bottom),w=this.bottom-h,k=y-d,C=v(t.top)+d,S=t.bottom;else if("bottom"===i)y=v(this.top),C=t.top,S=v(t.bottom)-d,w=y+d,k=this.top+h;else if("left"===i)y=v(this.right),b=this.right-h,x=y-d,j=v(t.left)+d,z=t.right;else if("right"===i)y=v(this.left),j=t.left,z=v(t.right)-d,b=y+d,x=this.left+h;else if("x"===n){if("center"===i)y=v((t.top+t.bottom)/2+.5);else if(a(i)){const t=Object.keys(i)[0],n=i[t];y=v(this.chart.scales[t].getPixelForValue(n))}C=t.top,S=t.bottom,w=y+d,k=w+h}else if("y"===n){if("center"===i)y=v((t.left+t.right)/2);else if(a(i)){const t=Object.keys(i)[0],n=i[t];y=v(this.chart.scales[t].getPixelForValue(n))}b=y-d,x=b-h,j=t.left,z=t.right}const q=l(o.ticks.maxTicksLimit,c),O=Math.max(1,Math.ceil(c/q));for(m=0;mn.value===t));return e>=0?n.setContext(this.getContext(e)).lineWidth:0}drawGrid(t){const n=this.options.grid,e=this.ctx,o=this._gridLineItems||(this._gridLineItems=this._computeGridLineItems(t));let r,i;const s=(t,n,o)=>{o.width&&o.color&&(e.save(),e.lineWidth=o.width,e.strokeStyle=o.color,e.setLineDash(o.borderDash||[]),e.lineDashOffset=o.borderDashOffset,e.beginPath(),e.moveTo(t.x,t.y),e.lineTo(n.x,n.y),e.stroke(),e.restore())};if(n.display)for(r=0,i=o.length;r{this.drawBackground(),this.drawGrid(t),this.drawTitle()}},{z:e+1,draw:()=>{this.drawBorder()}},{z:n,draw:t=>{this.drawLabels(t)}}]:[{z:n,draw:t=>{this.draw(t)}}]}getMatchingVisibleMetas(t){const n=this.chart.getSortedVisibleDatasetMetas(),e=this.axis+"AxisID",o=[];let r,i;for(r=0,i=n.length;r{const o=e.split("."),r=o.pop(),i=[t].concat(o).join("."),s=n[e].split("."),a=s.pop(),u=s.join(".");Xt.route(i,r,u,a)}))}(n,t.defaultRoutes),t.descriptors&&Xt.describe(n,t.descriptors)}(t,i,e),this.override&&Xt.override(t.id,t.overrides)),i}get(t){return this.items[t]}unregister(t){const n=this.items,e=t.id,o=this.scope;e in n&&delete n[e],o&&e in Xt[o]&&(delete Xt[o][e],this.override&&delete Jt[e])}}var io=new class{constructor(){this.controllers=new ro(Pe,"datasets",!0),this.elements=new ro(Je,"elements"),this.plugins=new ro(Object,"plugins"),this.scales=new ro(oo,"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,e){[...n].forEach((n=>{const o=e||this._getRegistryForType(n);e||o.isForType(n)||o===this.plugins&&n.id?this._exec(t,o,n):f(n,(n=>{const o=e||this._getRegistryForType(n);this._exec(t,o,n)}))}))}_exec(t,n,e){const o=x(t);p(e["before"+o],[],e),n[t](e),p(e["after"+o],[],e)}_getRegistryForType(t){for(let n=0;n0&&this.getParsed(n-1);for(let l=n;l0&&Math.abs(e[f]-g[f])>y,v&&(d.parsed=e,d.raw=c.data[l]),p&&(d.options=h||this.resolveDataElementOptions(l,n.active?"active":o)),m||this.updateElement(n,l,d,o),g=e}this.updateSharedOptions(h,o,l)}getMaxOverflow(){const t=this._cachedMeta,n=t.data||[];if(!this.options.showLine){let t=0;for(let e=n.length-1;e>=0;--e)t=Math.max(t,n[e].size(this.resolveDataElementOptions(e))/2);return t>0&&t}const e=t.dataset,o=e.options&&e.options.borderWidth||0;if(!n.length)return o;const r=n[0].size(this.resolveDataElementOptions(0)),i=n[n.length-1].size(this.resolveDataElementOptions(n.length-1));return Math.max(o,r,i)/2}}so.id="scatter",so.defaults={datasetElementType:!1,dataElementType:"point",showLine:!1,fill:!1},so.overrides={interaction:{mode:"point"},plugins:{tooltip:{callbacks:{title:()=>"",label:t=>"("+t.label+", "+t.formattedValue+")"}}},scales:{x:{type:"linear"},y:{type:"linear"}}};var ao=Object.freeze({__proto__:null,BarController:Ne,BubbleController:Fe,DoughnutController:Re,LineController:He,PolarAreaController:Ue,PieController:Ve,RadarController:We,ScatterController:so});function uo(){throw new Error("This method is not implemented: Check that a complete date adapter is provided.")}class co{constructor(t){this.options=t||{}}init(t){}formats(){return uo()}parse(t,n){return uo()}format(t,n){return uo()}add(t,n,e){return uo()}diff(t,n,e){return uo()}startOf(t,n,e){return uo()}endOf(t,n){return uo()}}co.override=function(t){Object.assign(co.prototype,t)};var lo={_date:co};function ho(t,n,e,o){const{controller:r,data:i,_sorted:s}=t,a=r._cachedMeta.iScale;if(a&&n===a.axis&&"r"!==n&&s&&i.length){const t=a._reversePixels?Q:Z;if(!o)return t(i,n,e);if(r._sharedOptions){const o=i[0],r="function"==typeof o.getRange&&o.getRange(n);if(r){const o=t(i,n,e-r),s=t(i,n,e+r);return{lo:o.lo,hi:s.hi}}}}return{lo:0,hi:i.length-1}}function po(t,n,e,o,r){const i=t.getSortedVisibleDatasetMetas(),s=e[n];for(let t=0,e=i.length;t{t[s](n[e],r)&&(i.push({element:t,datasetIndex:o,index:u}),a=a||t.inRange(n.x,n.y,r))})),o&&!a?[]:i}var yo={evaluateInteractionItems:po,modes:{index(t,n,e,o){const r=Gn(n,t),i=e.axis||"x",s=e.includeInvisible||!1,a=e.intersect?fo(t,r,i,o,s):_o(t,r,i,!1,o,s),u=[];return a.length?(t.getSortedVisibleDatasetMetas().forEach((t=>{const n=a[0].index,e=t.data[n];e&&!e.skip&&u.push({element:e,datasetIndex:t.index,index:n})})),u):[]},dataset(t,n,e,o){const r=Gn(n,t),i=e.axis||"xy",s=e.includeInvisible||!1;let a=e.intersect?fo(t,r,i,o,s):_o(t,r,i,!1,o,s);if(a.length>0){const n=a[0].datasetIndex,e=t.getDatasetMeta(n).data;a=[];for(let t=0;tfo(t,Gn(n,t),e.axis||"xy",o,e.includeInvisible||!1),nearest(t,n,e,o){const r=Gn(n,t),i=e.axis||"xy",s=e.includeInvisible||!1;return _o(t,r,i,e.intersect,o,s)},x:(t,n,e,o)=>vo(t,Gn(n,t),"x",e.intersect,o),y:(t,n,e,o)=>vo(t,Gn(n,t),"y",e.intersect,o)}};const mo=["left","top","right","bottom"];function go(t,n){return t.filter((t=>t.pos===n))}function $o(t,n){return t.filter((t=>-1===mo.indexOf(t.pos)&&t.box.axis===n))}function bo(t,n){return t.sort(((t,e)=>{const o=n?e:t,r=n?t:e;return o.weight===r.weight?o.index-r.index:o.weight-r.weight}))}function wo(t,n,e,o){return Math.max(t[e],n[e])+Math.max(t[o],n[o])}function xo(t,n){t.top=Math.max(t.top,n.top),t.left=Math.max(t.left,n.left),t.bottom=Math.max(t.bottom,n.bottom),t.right=Math.max(t.right,n.right)}function ko(t,n,e,o){const{pos:r,box:i}=e,s=t.maxPadding;if(!a(r)){e.size&&(t[r]-=e.size);const n=o[e.stack]||{size:0,count:1};n.size=Math.max(n.size,e.horizontal?i.height:i.width),e.size=n.size/n.count,t[r]+=e.size}i.getPadding&&xo(s,i.getPadding());const u=Math.max(0,n.outerWidth-wo(s,t,"left","right")),c=Math.max(0,n.outerHeight-wo(s,t,"top","bottom")),l=u!==t.w,h=c!==t.h;return t.w=u,t.h=c,e.horizontal?{same:l,other:h}:{same:h,other:l}}function jo(t,n){const e=n.maxPadding;return function(t){const o={left:0,top:0,right:0,bottom:0};return t.forEach((t=>{o[t]=Math.max(n[t],e[t])})),o}(t?["left","right"]:["top","bottom"])}function Co(t,n,e,o){const r=[];let i,s,a,u,c,l;for(i=0,s=t.length,c=0;it.box.fullSize)),!0),o=bo(go(n,"left"),!0),r=bo(go(n,"right")),i=bo(go(n,"top"),!0),s=bo(go(n,"bottom")),a=$o(n,"x"),u=$o(n,"y");return{fullSize:e,leftAndTop:o.concat(i),rightAndBottom:r.concat(u).concat(s).concat(a),chartArea:go(n,"chartArea"),vertical:o.concat(r).concat(u),horizontal:i.concat(s).concat(a)}}(t.boxes),u=a.vertical,c=a.horizontal;f(t.boxes,(t=>{"function"==typeof t.beforeLayout&&t.beforeLayout()}));const l=u.reduce(((t,n)=>n.box.options&&!1===n.box.options.display?t:t+1),0)||1,h=Object.freeze({outerWidth:n,outerHeight:e,padding:r,availableWidth:i,availableHeight:s,vBoxMaxWidth:i/2/l,hBoxMaxHeight:s/2}),p=Object.assign({},r);xo(p,gn(o));const _=Object.assign({maxPadding:p,w:i,h:s,x:r.left,y:r.top},r),d=function(t,n){const e=function(t){const n={};for(const e of t){const{stack:t,pos:o,stackWeight:r}=e;if(!t||!mo.includes(o))continue;const i=n[t]||(n[t]={count:0,placed:0,weight:0,size:0});i.count++,i.weight+=r}return n}(t),{vBoxMaxWidth:o,hBoxMaxHeight:r}=n;let i,s,a;for(i=0,s=t.length;i{const e=n.box;Object.assign(e,t.chartArea),e.update(_.w,_.h,{left:0,top:0,right:0,bottom:0})}))}};class Oo{acquireContext(t,n){}releaseContext(t){return!1}addEventListener(t,n,e){}removeEventListener(t,n,e){}getDevicePixelRatio(){return 1}getMaximumSize(t,n,e,o){return n=Math.max(0,n||t.width),e=e||t.height,{width:n,height:Math.max(0,o?Math.floor(n/o):e)}}isAttached(t){return!0}updateConfig(t){}}class Po extends Oo{acquireContext(t){return t&&t.getContext&&t.getContext("2d")||null}updateConfig(t){t.options.animation=!1}}const Mo={touchstart:"mousedown",touchmove:"mousemove",touchend:"mouseup",pointerenter:"mouseenter",pointerdown:"mousedown",pointermove:"mousemove",pointerup:"mouseup",pointerleave:"mouseout",pointerout:"mouseout"},Ao=t=>null===t||""===t,Eo=!!Zn&&{passive:!0};function Io(t,n,e){t.canvas.removeEventListener(n,e,Eo)}function Do(t,n){for(const e of t)if(e===n||e.contains(n))return!0}function To(t,n,e){const o=t.canvas,r=new MutationObserver((t=>{let n=!1;for(const e of t)n=n||Do(e.addedNodes,o),n=n&&!Do(e.removedNodes,o);n&&e()}));return r.observe(document,{childList:!0,subtree:!0}),r}function Bo(t,n,e){const o=t.canvas,r=new MutationObserver((t=>{let n=!1;for(const e of t)n=n||Do(e.removedNodes,o),n=n&&!Do(e.addedNodes,o);n&&e()}));return r.observe(document,{childList:!0,subtree:!0}),r}const Lo=new Map;let No=0;function Fo(){const t=window.devicePixelRatio;t!==No&&(No=t,Lo.forEach(((n,e)=>{e.currentDevicePixelRatio!==t&&n()})))}function Ro(t,n,e){const o=t.canvas,r=o&&Un(o);if(!r)return;const i=rt(((t,n)=>{const o=r.clientWidth;e(t,n),o{const n=t[0],e=n.contentRect.width,o=n.contentRect.height;0===e&&0===o||i(e,o)}));return s.observe(r),function(t,n){Lo.size||window.addEventListener("resize",Fo),Lo.set(t,n)}(t,i),s}function Ho(t,n,e){e&&e.disconnect(),"resize"===n&&function(t){Lo.delete(t),Lo.size||window.removeEventListener("resize",Fo)}(t)}function Uo(t,n,e){const o=t.canvas,r=rt((n=>{null!==t.ctx&&e(function(t,n){const e=Mo[t.type]||t.type,{x:o,y:r}=Gn(t,n);return{type:e,chart:n,native:t,x:void 0!==o?o:null,y:void 0!==r?r:null}}(n,t))}),t,(t=>{const n=t[0];return[n,n.offsetX,n.offsetY]}));return function(t,n,e){t.addEventListener(n,e,Eo)}(o,n,r),r}class Vo extends Oo{acquireContext(t,n){const e=t&&t.getContext&&t.getContext("2d");return e&&e.canvas===t?(function(t,n){const e=t.style,o=t.getAttribute("height"),r=t.getAttribute("width");if(t.$chartjs={initial:{height:o,width:r,style:{display:e.display,height:e.height,width:e.width}}},e.display=e.display||"block",e.boxSizing=e.boxSizing||"border-box",Ao(r)){const n=Qn(t,"width");void 0!==n&&(t.width=n)}if(Ao(o))if(""===t.style.height)t.height=t.width/(n||2);else{const n=Qn(t,"height");void 0!==n&&(t.height=n)}}(t,n),e):null}releaseContext(t){const n=t.canvas;if(!n.$chartjs)return!1;const e=n.$chartjs.initial;["height","width"].forEach((t=>{const o=e[t];i(o)?n.removeAttribute(t):n.setAttribute(t,o)}));const o=e.style||{};return Object.keys(o).forEach((t=>{n.style[t]=o[t]})),n.width=n.width,delete n.$chartjs,!0}addEventListener(t,n,e){this.removeEventListener(t,n);const o=t.$proxies||(t.$proxies={}),r={attach:To,detach:Bo,resize:Ro}[n]||Uo;o[n]=r(t,n,e)}removeEventListener(t,n){const e=t.$proxies||(t.$proxies={}),o=e[n];o&&(({attach:Ho,detach:Ho,resize:Ho}[n]||Io)(t,n,o),e[n]=void 0)}getDevicePixelRatio(){return window.devicePixelRatio}getMaximumSize(t,n,e,o){return function(t,n,e,o){const r=Wn(t),i=Kn(r,"margin"),s=Vn(r.maxWidth,t,"clientWidth")||O,a=Vn(r.maxHeight,t,"clientHeight")||O,u=function(t,n,e){let o,r;if(void 0===n||void 0===e){const i=Un(t);if(i){const t=i.getBoundingClientRect(),s=Wn(i),a=Kn(s,"border","width"),u=Kn(s,"padding");n=t.width-u.width-a.width,e=t.height-u.height-a.height,o=Vn(s.maxWidth,i,"clientWidth"),r=Vn(s.maxHeight,i,"clientHeight")}else n=t.clientWidth,e=t.clientHeight}return{width:n,height:e,maxWidth:o||O,maxHeight:r||O}}(t,n,e);let{width:c,height:l}=u;if("content-box"===r.boxSizing){const t=Kn(r,"border","width"),n=Kn(r,"padding");c-=n.width+t.width,l-=n.height+t.height}return c=Math.max(0,c-i.width),l=Math.max(0,o?Math.floor(c/o):l-i.height),c=Yn(Math.min(c,s,u.maxWidth)),l=Yn(Math.min(l,a,u.maxHeight)),c&&!l&&(l=Yn(c/2)),{width:c,height:l}}(t,n,e,o)}isAttached(t){const n=Un(t);return!(!n||!n.isConnected)}}function Wo(t){return!Hn()||"undefined"!=typeof OffscreenCanvas&&t instanceof OffscreenCanvas?Po:Vo}class Jo{constructor(){this._init=[]}notify(t,n,e,o){"beforeInit"===n&&(this._init=this._createDescriptors(t,!0),this._notify(this._init,t,"install"));const r=o?this._descriptors(t).filter(o):this._descriptors(t),i=this._notify(r,t,n,e);return"afterDestroy"===n&&(this._notify(r,t,"stop"),this._notify(this._init,t,"uninstall")),i}_notify(t,n,e,o){o=o||{};for(const r of t){const t=r.plugin;if(!1===p(t[e],[n,o,r.options],t)&&o.cancelable)return!1}return!0}invalidate(){i(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 e=t&&t.config,o=l(e.options&&e.options.plugins,{}),r=function(t){const n={},e=[],o=Object.keys(io.plugins.items);for(let t=0;tt.filter((t=>!n.some((n=>t.plugin.id===n.plugin.id))));this._notify(o(n,e),t,"stop"),this._notify(o(e,n),t,"start")}}function Ko(t,n){return n||!1!==t?!0===t?{}:t:null}function Go(t,{plugin:n,local:e},o,r){const i=t.pluginScopeKeys(n),s=t.getOptionScopes(o,i);return e&&n.defaults&&s.push(n.defaults),t.createResolver(s,r,[""],{scriptable:!1,indexable:!1,allKeys:!0})}function Yo(t,n){const e=Xt.datasets[t]||{};return((n.datasets||{})[t]||{}).indexAxis||n.indexAxis||e.indexAxis||"x"}function Xo(t,n){return"x"===t||"y"===t?t:n.axis||("top"===(e=n.position)||"bottom"===e?"x":"left"===e||"right"===e?"y":void 0)||t.charAt(0).toLowerCase();var e}function Zo(t){const n=t.options||(t.options={});n.plugins=l(n.plugins,{}),n.scales=function(t,n){const e=Jt[t.type]||{scales:{}},o=n.scales||{},r=Yo(t.type,n),i=Object.create(null),s=Object.create(null);return Object.keys(o).forEach((t=>{const n=o[t];if(!a(n))return console.error(`Invalid scale configuration for scale: ${t}`);if(n._proxy)return console.warn(`Ignoring resolver passed as options for scale: ${t}`);const u=Xo(t,n),c=function(t,n){return t===n?"_index_":"_value_"}(u,r),l=e.scales||{};i[u]=i[u]||t,s[t]=g(Object.create(null),[{axis:u},n,l[u],l[c]])})),t.data.datasets.forEach((e=>{const r=e.type||t.type,a=e.indexAxis||Yo(r,n),u=(Jt[r]||{}).scales||{};Object.keys(u).forEach((t=>{const n=function(t,n){let e=t;return"_index_"===t?e=n:"_value_"===t&&(e="x"===n?"y":"x"),e}(t,a),r=e[n+"AxisID"]||i[n]||n;s[r]=s[r]||Object.create(null),g(s[r],[{axis:n},o[r],u[t]])}))})),Object.keys(s).forEach((t=>{const n=s[t];g(n,[Xt.scales[n.type],Xt.scale])})),s}(t,n)}function Qo(t){return(t=t||{}).datasets=t.datasets||[],t.labels=t.labels||[],t}const tr=new Map,nr=new Set;function er(t,n){let e=tr.get(t);return e||(e=n(),tr.set(t,e),nr.add(e)),e}const or=(t,n,e)=>{const o=w(n,e);void 0!==o&&t.add(o)};class rr{constructor(t){this._config=function(t){return(t=t||{}).data=Qo(t.data),Zo(t),t}(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=Qo(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(),Zo(t)}clearCache(){this._scopeCache.clear(),this._resolverCache.clear()}datasetScopeKeys(t){return er(t,(()=>[[`datasets.${t}`,""]]))}datasetAnimationScopeKeys(t,n){return er(`${t}.transition.${n}`,(()=>[[`datasets.${t}.transitions.${n}`,`transitions.${n}`],[`datasets.${t}`,""]]))}datasetElementScopeKeys(t,n){return er(`${t}-${n}`,(()=>[[`datasets.${t}.elements.${n}`,`datasets.${t}`,`elements.${n}`,""]]))}pluginScopeKeys(t){const n=t.id;return er(`${this.type}-plugin-${n}`,(()=>[[`plugins.${n}`,...t.additionalOptionScopes||[]]]))}_cachedScopes(t,n){const e=this._scopeCache;let o=e.get(t);return o&&!n||(o=new Map,e.set(t,o)),o}getOptionScopes(t,n,e){const{options:o,type:r}=this,i=this._cachedScopes(t,e),s=i.get(n);if(s)return s;const a=new Set;n.forEach((n=>{t&&(a.add(t),n.forEach((n=>or(a,t,n)))),n.forEach((t=>or(a,o,t))),n.forEach((t=>or(a,Jt[r]||{},t))),n.forEach((t=>or(a,Xt,t))),n.forEach((t=>or(a,Kt,t)))}));const u=Array.from(a);return 0===u.length&&u.push(Object.create(null)),nr.has(n)&&i.set(n,u),u}chartOptionScopes(){const{options:t,type:n}=this;return[t,Jt[n]||{},Xt.datasets[n]||{},{type:n},Xt,Kt]}resolveNamedOptions(t,n,e,o=[""]){const r={$shared:!0},{resolver:i,subPrefixes:a}=ir(this._resolverCache,t,o);let u=i;(function(t,n){const{isScriptable:e,isIndexable:o}=jn(t);for(const r of n){const n=e(r),i=o(r),a=(i||n)&&t[r];if(n&&(j(a)||sr(a))||i&&s(a))return!0}return!1})(i,n)&&(r.$shared=!1,u=kn(i,e=j(e)?e():e,this.createResolver(t,e,a)));for(const t of n)r[t]=u[t];return r}createResolver(t,n,e=[""],o){const{resolver:r}=ir(this._resolverCache,t,e);return a(n)?kn(r,n,void 0,o):r}}function ir(t,n,e){let o=t.get(n);o||(o=new Map,t.set(n,o));const r=e.join();let i=o.get(r);return i||(i={resolver:xn(n,e),subPrefixes:e.filter((t=>!t.toLowerCase().includes("hover")))},o.set(r,i)),i}const sr=t=>a(t)&&Object.getOwnPropertyNames(t).reduce(((n,e)=>n||j(t[e])),!1),ar=["top","bottom","left","right","chartArea"];function ur(t,n){return"top"===t||"bottom"===t||-1===ar.indexOf(t)&&"x"===n}function cr(t,n){return function(e,o){return e[t]===o[t]?e[n]-o[n]:e[t]-o[t]}}function lr(t){const n=t.chart,e=n.options.animation;n.notifyPlugins("afterRender"),p(e&&e.onComplete,[t],n)}function hr(t){const n=t.chart,e=n.options.animation;p(e&&e.onProgress,[t],n)}function pr(t){return Hn()&&"string"==typeof t?t=document.getElementById(t):t&&t.length&&(t=t[0]),t&&t.canvas&&(t=t.canvas),t}const fr={},_r=t=>{const n=pr(t);return Object.values(fr).filter((t=>t.canvas===n)).pop()};function dr(t,n,e){const o=Object.keys(t);for(const r of o){const o=+r;if(o>=n){const i=t[r];delete t[r],(e>0||o>n)&&(t[o+e]=i)}}}class vr{constructor(t,n){const e=this.config=new rr(n),o=pr(t),i=_r(o);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 s=e.createResolver(e.chartOptionScopes(),this.getContext());this.platform=new(e.platform||Wo(o)),this.platform.updateConfig(e);const a=this.platform.acquireContext(o,s.aspectRatio),u=a&&a.canvas,c=u&&u.height,l=u&&u.width;this.id=r(),this.ctx=a,this.canvas=u,this.width=l,this.height=c,this._options=s,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 Jo,this.$proxies={},this._hiddenIndices={},this.attached=!1,this._animationsDisabled=void 0,this.$context=void 0,this._doResize=function(t,n){let e;return function(...o){return n?(clearTimeout(e),e=setTimeout(t,n,o)):t.apply(this,o),n}}((t=>this.update(t)),s.resizeDelay||0),this._dataChanges=[],fr[this.id]=this,a&&u?(_e.listen(this,"complete",lr),_e.listen(this,"progress",hr),this._initialize(),this.attached&&this.update()):console.error("Failed to create chart: can't acquire context from the given item")}get aspectRatio(){const{options:{aspectRatio:t,maintainAspectRatio:n},width:e,height:o,_aspectRatio:r}=this;return i(t)?n&&r?r:o?e/o: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}_initialize(){return this.notifyPlugins("beforeInit"),this.options.responsive?this.resize():Xn(this,this.options.devicePixelRatio),this.bindEvents(),this.notifyPlugins("afterInit"),this}clear(){return nn(this.canvas,this.ctx),this}stop(){return _e.stop(this),this}resize(t,n){_e.running(this)?this._resizeBeforeDraw={width:t,height:n}:this._resize(t,n)}_resize(t,n){const e=this.options,o=this.canvas,r=e.maintainAspectRatio&&this.aspectRatio,i=this.platform.getMaximumSize(o,t,n,r),s=e.devicePixelRatio||this.platform.getDevicePixelRatio(),a=this.width?"resize":"attach";this.width=i.width,this.height=i.height,this._aspectRatio=this.aspectRatio,Xn(this,s,!0)&&(this.notifyPlugins("resize",{size:i}),p(e.onResize,[this,i],this),this.attached&&this._doResize(a)&&this.render())}ensureScalesHaveIDs(){f(this.options.scales||{},((t,n)=>{t.id=n}))}buildOrUpdateScales(){const t=this.options,n=t.scales,e=this.scales,o=Object.keys(e).reduce(((t,n)=>(t[n]=!1,t)),{});let r=[];n&&(r=r.concat(Object.keys(n).map((t=>{const e=n[t],o=Xo(t,e),r="r"===o,i="x"===o;return{options:e,dposition:r?"chartArea":i?"bottom":"left",dtype:r?"radialLinear":i?"category":"linear"}})))),f(r,(n=>{const r=n.options,i=r.id,s=Xo(i,r),a=l(r.type,n.dtype);void 0!==r.position&&ur(r.position,s)===ur(n.dposition)||(r.position=n.dposition),o[i]=!0;let u=null;i in e&&e[i].type===a?u=e[i]:(u=new(io.getScale(a))({id:i,type:a,ctx:this.ctx,chart:this}),e[u.id]=u),u.init(r,t)})),f(o,((t,n)=>{t||delete e[n]})),f(e,(t=>{qo.configure(this,t,t.options),qo.addBox(this,t)}))}_updateMetasets(){const t=this._metasets,n=this.data.datasets.length,e=t.length;if(t.sort(((t,n)=>t.index-n.index)),e>n){for(let t=n;tn.length&&delete this._stacks,t.forEach(((t,e)=>{0===n.filter((n=>n===t._dataset)).length&&this._destroyDatasetMeta(e)}))}buildOrUpdateControllers(){const t=[],n=this.data.datasets;let e,o;for(this._removeUnreferencedMetasets(),e=0,o=n.length;e{this.getDatasetMeta(n).controller.reset()}),this)}reset(){this._resetElements(),this.notifyPlugins("reset")}update(t){const n=this.config;n.update();const e=this._options=n.createResolver(n.chartOptionScopes(),this.getContext()),o=this._animationsDisabled=!e.animation;if(this._updateScales(),this._checkEventBindings(),this._updateHiddenIndices(),this._plugins.invalidate(),!1===this.notifyPlugins("beforeUpdate",{mode:t,cancelable:!0}))return;const r=this.buildOrUpdateControllers();this.notifyPlugins("beforeElementsUpdate");let i=0;for(let t=0,n=this.data.datasets.length;t{t.reset()})),this._updateDatasets(t),this.notifyPlugins("afterUpdate",{mode:t}),this._layers.sort(cr("z","_idx"));const{_active:s,_lastEvent:a}=this;a?this._eventHandler(a,!0):s.length&&this._updateHoverStyles(s,s,!0),this.render()}_updateScales(){f(this.scales,(t=>{qo.removeBox(this,t)})),this.ensureScalesHaveIDs(),this.buildOrUpdateScales()}_checkEventBindings(){const t=this.options,n=new Set(Object.keys(this._listeners)),e=new Set(t.events);C(n,e)&&!!this._responsiveListeners===t.responsive||(this.unbindEvents(),this.bindEvents())}_updateHiddenIndices(){const{_hiddenIndices:t}=this,n=this._getUniformDataChanges()||[];for(const{method:e,start:o,count:r}of n)dr(t,o,"_removeElements"===e?-r:r)}_getUniformDataChanges(){const t=this._dataChanges;if(!t||!t.length)return;this._dataChanges=[];const n=this.data.datasets.length,e=n=>new Set(t.filter((t=>t[0]===n)).map(((t,n)=>n+","+t.splice(1).join(",")))),o=e(0);for(let t=1;tt.split(","))).map((t=>({method:t[1],start:+t[2],count:+t[3]})))}_updateLayout(t){if(!1===this.notifyPlugins("beforeLayout",{cancelable:!0}))return;qo.update(this,this.width,this.height,t);const n=this.chartArea,e=n.width<=0||n.height<=0;this._layers=[],f(this.boxes,(t=>{e&&"chartArea"===t.position||(t.configure&&t.configure(),this._layers.push(...t._layers()))}),this),this._layers.forEach(((t,n)=>{t._idx=n})),this.notifyPlugins("afterLayout")}_updateDatasets(t){if(!1!==this.notifyPlugins("beforeDatasetsUpdate",{mode:t,cancelable:!0})){for(let t=0,n=this.data.datasets.length;t=0;--n)this._drawDataset(t[n]);this.notifyPlugins("afterDatasetsDraw")}_drawDataset(t){const n=this.ctx,e=t._clip,o=!e.disabled,r=this.chartArea,i={meta:t,index:t.index,cancelable:!0};!1!==this.notifyPlugins("beforeDatasetDraw",i)&&(o&&sn(n,{left:!1===e.left?0:r.left-e.left,right:!1===e.right?this.width:r.right+e.right,top:!1===e.top?0:r.top-e.top,bottom:!1===e.bottom?this.height:r.bottom+e.bottom}),t.controller.draw(),o&&an(n),i.cancelable=!1,this.notifyPlugins("afterDatasetDraw",i))}isPointInArea(t){return rn(t,this.chartArea,this._minPadding)}getElementsAtEventForMode(t,n,e,o){const r=yo.modes[n];return"function"==typeof r?r(this,t,e,o):[]}getDatasetMeta(t){const n=this.data.datasets[t],e=this._metasets;let o=e.filter((t=>t&&t._dataset===n)).pop();return o||(o={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},e.push(o)),o}getContext(){return this.$context||(this.$context=wn(null,{chart:this,type:"chart"}))}getVisibleDatasetCount(){return this.getSortedVisibleDatasetMetas().length}isDatasetVisible(t){const n=this.data.datasets[t];if(!n)return!1;const e=this.getDatasetMeta(t);return"boolean"==typeof e.hidden?!e.hidden:!n.hidden}setDatasetVisibility(t,n){this.getDatasetMeta(t).hidden=!n}toggleDataVisibility(t){this._hiddenIndices[t]=!this._hiddenIndices[t]}getDataVisibility(t){return!this._hiddenIndices[t]}_updateVisibility(t,n,e){const o=e?"show":"hide",r=this.getDatasetMeta(t),i=r.controller._resolveAnimations(void 0,o);k(n)?(r.data[n].hidden=!e,this.update()):(this.setDatasetVisibility(t,e),i.update(r,{visible:e}),this.update((n=>n.datasetIndex===t?o: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(),_e.remove(this),t=0,n=this.data.datasets.length;t{n.addEventListener(this,e,o),t[e]=o},o=(t,n,e)=>{t.offsetX=n,t.offsetY=e,this._eventHandler(t)};f(this.options.events,(t=>e(t,o)))}bindResponsiveEvents(){this._responsiveListeners||(this._responsiveListeners={});const t=this._responsiveListeners,n=this.platform,e=(e,o)=>{n.addEventListener(this,e,o),t[e]=o},o=(e,o)=>{t[e]&&(n.removeEventListener(this,e,o),delete t[e])},r=(t,n)=>{this.canvas&&this.resize(t,n)};let i;const s=()=>{o("attach",s),this.attached=!0,this.resize(),e("resize",r),e("detach",i)};i=()=>{this.attached=!1,o("resize",r),this._stop(),this._resize(0,0),e("attach",s)},n.isAttached(this.canvas)?s():i()}unbindEvents(){f(this._listeners,((t,n)=>{this.platform.removeEventListener(this,n,t)})),this._listeners={},f(this._responsiveListeners,((t,n)=>{this.platform.removeEventListener(this,n,t)})),this._responsiveListeners=void 0}updateHoverStyle(t,n,e){const o=e?"set":"remove";let r,i,s,a;for("dataset"===n&&(r=this.getDatasetMeta(t[0].datasetIndex),r.controller["_"+o+"DatasetHoverStyle"]()),s=0,a=t.length;s{const e=this.getDatasetMeta(t);if(!e)throw new Error("No dataset found at index "+t);return{datasetIndex:t,element:e.data[n],index:n}}));!_(e,n)&&(this._active=e,this._lastEvent=null,this._updateHoverStyles(e,n))}notifyPlugins(t,n,e){return this._plugins.notify(this,t,n,e)}_updateHoverStyles(t,n,e){const o=this.options.hover,r=(t,n)=>t.filter((t=>!n.some((n=>t.datasetIndex===n.datasetIndex&&t.index===n.index)))),i=r(n,t),s=e?t:r(t,n);i.length&&this.updateHoverStyle(i,o.mode,!1),s.length&&o.mode&&this.updateHoverStyle(s,o.mode,!0)}_eventHandler(t,n){const e={event:t,replay:n,cancelable:!0,inChartArea:this.isPointInArea(t)},o=n=>(n.options.events||this.options.events).includes(t.native.type);if(!1===this.notifyPlugins("beforeEvent",e,o))return;const r=this._handleEvent(t,n,e.inChartArea);return e.cancelable=!1,this.notifyPlugins("afterEvent",e,o),(r||e.changed)&&this.render(),this}_handleEvent(t,n,e){const{_active:o=[],options:r}=this,i=n,s=this._getActiveElements(t,o,e,i),a=function(t){return"mouseup"===t.type||"click"===t.type||"contextmenu"===t.type}(t),u=function(t,n,e,o){return e&&"mouseout"!==t.type?o?n:t:null}(t,this._lastEvent,e,a);e&&(this._lastEvent=null,p(r.onHover,[t,s,this],this),a&&p(r.onClick,[t,s,this],this));const c=!_(s,o);return(c||n)&&(this._active=s,this._updateHoverStyles(s,o,n)),this._lastEvent=u,c}_getActiveElements(t,n,e,o){if("mouseout"===t.type)return[];if(!e)return n;const r=this.options.hover;return this.getElementsAtEventForMode(t,r.mode,r,o)}}const yr=()=>f(vr.instances,(t=>t._plugins.invalidate())),mr=!0;function gr(t,n,e){const{startAngle:o,pixelMargin:r,x:i,y:s,outerRadius:a,innerRadius:u}=n;let c=r/a;t.beginPath(),t.arc(i,s,a,o-c,e+c),u>r?(c=r/u,t.arc(i,s,u,e+c,o-c,!0)):t.arc(i,s,r,e+M,o-M),t.closePath(),t.clip()}function $r(t,n,e,o){return{x:e+t*Math.cos(n),y:o+t*Math.sin(n)}}function br(t,n,e,o,r,i){const{x:s,y:a,startAngle:u,pixelMargin:c,innerRadius:l}=n,h=Math.max(n.outerRadius+o+e-c,0),p=l>0?l+o+e+c:0;let f=0;const _=r-u;if(o){const t=((l>0?l-o:0)+(h>0?h-o:0))/2;f=(_-(0!==t?_*t/(t+o):_))/2}const d=(_-Math.max(.001,_*h-e/z)/h)/2,v=u+d+f,y=r-d-f,{outerStart:m,outerEnd:g,innerStart:$,innerEnd:b}=function(t,n,e,o){const r=vn(t.options.borderRadius,["outerStart","outerEnd","innerStart","innerEnd"]),i=(e-n)/2,s=Math.min(i,o*n/2),a=t=>{const n=(e-Math.min(i,t))*o/2;return G(t,0,Math.min(i,n))};return{outerStart:a(r.outerStart),outerEnd:a(r.outerEnd),innerStart:G(r.innerStart,0,s),innerEnd:G(r.innerEnd,0,s)}}(n,p,h,y-v),w=h-m,x=h-g,k=v+m/w,j=y-g/x,C=p+$,S=p+b,q=v+$/C,O=y-b/S;if(t.beginPath(),i){if(t.arc(s,a,h,k,j),g>0){const n=$r(x,j,s,a);t.arc(n.x,n.y,g,j,y+M)}const n=$r(S,y,s,a);if(t.lineTo(n.x,n.y),b>0){const n=$r(S,O,s,a);t.arc(n.x,n.y,b,y+M,O+Math.PI)}if(t.arc(s,a,p,y-b/p,v+$/p,!0),$>0){const n=$r(C,q,s,a);t.arc(n.x,n.y,$,q+Math.PI,v-M)}const e=$r(w,v,s,a);if(t.lineTo(e.x,e.y),m>0){const n=$r(w,k,s,a);t.arc(n.x,n.y,m,v-M,k)}}else{t.moveTo(s,a);const n=Math.cos(k)*h+s,e=Math.sin(k)*h+a;t.lineTo(n,e);const o=Math.cos(j)*h+s,r=Math.sin(j)*h+a;t.lineTo(o,r)}t.closePath()}Object.defineProperties(vr,{defaults:{enumerable:mr,value:Xt},instances:{enumerable:mr,value:fr},overrides:{enumerable:mr,value:Jt},registry:{enumerable:mr,value:io},version:{enumerable:mr,value:"3.9.1"},getChart:{enumerable:mr,value:_r},register:{enumerable:mr,value:(...t)=>{io.add(...t),yr()}},unregister:{enumerable:mr,value:(...t)=>{io.remove(...t),yr()}}});class wr extends Je{constructor(t){super(),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,t&&Object.assign(this,t)}inRange(t,n,e){const o=this.getProps(["x","y"],e),{angle:r,distance:i}=U(o,{x:t,y:n}),{startAngle:s,endAngle:a,innerRadius:u,outerRadius:c,circumference:h}=this.getProps(["startAngle","endAngle","innerRadius","outerRadius","circumference"],e),p=this.options.spacing/2,f=l(h,a-s)>=S||K(r,s,a),_=Y(i,u+p,c+p);return f&&_}getCenterPoint(t){const{x:n,y:e,startAngle:o,endAngle:r,innerRadius:i,outerRadius:s}=this.getProps(["x","y","startAngle","endAngle","innerRadius","outerRadius","circumference"],t),{offset:a,spacing:u}=this.options,c=(o+r)/2,l=(i+s+u+a)/2;return{x:n+Math.cos(c)*l,y:e+Math.sin(c)*l}}tooltipPosition(t){return this.getCenterPoint(t)}draw(t){const{options:n,circumference:e}=this,o=(n.offset||0)/2,r=(n.spacing||0)/2,i=n.circular;if(this.pixelMargin="inner"===n.borderAlign?.33:0,this.fullCircles=e>S?Math.floor(e/S):0,0===e||this.innerRadius<0||this.outerRadius<0)return;t.save();let s=0;if(o){s=o/2;const n=(this.startAngle+this.endAngle)/2;t.translate(Math.cos(n)*s,Math.sin(n)*s),this.circumference>=z&&(s=o)}t.fillStyle=n.backgroundColor,t.strokeStyle=n.borderColor;const a=function(t,n,e,o,r){const{fullCircles:i,startAngle:s,circumference:a}=n;let u=n.endAngle;if(i){br(t,n,e,o,s+S,r);for(let n=0;na&&i>a;return{count:o,start:u,loop:n.loop,ilen:c(s+(c?a-t:t))%i,g=()=>{f!==_&&(t.lineTo(v,_),t.lineTo(v,f),t.lineTo(v,d))};for(u&&(h=r[m(0)],t.moveTo(h.x,h.y)),l=0;l<=a;++l){if(h=r[m(l)],h.skip)continue;const n=h.x,e=h.y,o=0|n;o===p?(e_&&(_=e),v=(y*v+n)/++y):(g(),t.lineTo(n,e),p=o,y=0,f=_=e),d=e}g()}function Sr(t){const n=t.options,e=n.borderDash&&n.borderDash.length;return t._decimated||t._loop||n.tension||"monotone"===n.cubicInterpolationMode||n.stepped||e?Cr:zr}wr.id="arc",wr.defaults={borderAlign:"center",borderColor:"#fff",borderJoinStyle:void 0,borderRadius:0,borderWidth:2,offset:0,spacing:0,angle:void 0,circular:!0},wr.defaultRoutes={backgroundColor:"backgroundColor"};const qr="function"==typeof Path2D;class Or extends Je{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 e=this.options;if((e.tension||"monotone"===e.cubicInterpolationMode)&&!e.stepped&&!this._pointsUpdated){const o=e.spanGaps?this._loop:this._fullLoop;Rn(this._points,e,t,o,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=function(t,n){const e=t.points,o=t.options.spanGaps,r=e.length;if(!r)return[];const i=!!t._loop,{start:s,end:a}=function(t,n,e,o){let r=0,i=n-1;if(e&&!o)for(;rr&&t[i%n].skip;)i--;return i%=n,{start:r,end:i}}(e,r,i,o);return function(t,n,e,o){return o&&o.setContext&&e?function(t,n,e,o){const r=t._chart.getContext(),i=pe(t.options),{_datasetIndex:s,options:{spanGaps:a}}=t,u=e.length,c=[];let l=i,h=n[0].start,p=h;function f(t,n,o,r){const i=a?-1:1;if(t!==n){for(t+=u;e[t%u].skip;)t-=i;for(;e[n%u].skip;)n+=i;t%u!=n%u&&(c.push({start:t%u,end:n%u,loop:o,style:r}),l=r,h=n%u)}}for(const t of n){h=a?h:t.start;let n,i=e[h%u];for(p=h+1;p<=t.end;p++){const a=e[p%u];n=pe(o.setContext(wn(r,{type:"segment",p0:i,p1:a,p0DataIndex:(p-1)%u,p1DataIndex:p%u,datasetIndex:s}))),fe(n,l)&&f(h,p-1,t.loop,l),i=a,l=n}h"borderDash"!==t&&"fill"!==t};class Mr extends Je{constructor(t){super(),this.options=void 0,this.parsed=void 0,this.skip=void 0,this.stop=void 0,t&&Object.assign(this,t)}inRange(t,n,e){const o=this.options,{x:r,y:i}=this.getProps(["x","y"],e);return Math.pow(t-r,2)+Math.pow(n-i,2){Nr(t)}))}var Rr={id:"decimation",defaults:{algorithm:"min-max",enabled:!1},beforeElementsUpdate:(t,n,e)=>{if(!e.enabled)return void Fr(t);const o=t.width;t.data.datasets.forEach(((n,r)=>{const{_data:s,indexAxis:a}=n,u=t.getDatasetMeta(r),c=s||n.data;if("y"===bn([a,t.options.indexAxis]))return;if(!u.controller.supportsDecimation)return;const l=t.scales[u.xAxisID];if("linear"!==l.type&&"time"!==l.type)return;if(t.options.parsing)return;let h,{start:p,count:f}=function(t,n){const e=n.length;let o,r=0;const{iScale:i}=t,{min:s,max:a,minDefined:u,maxDefined:c}=i.getUserBounds();return u&&(r=G(Z(n,i.axis,s).lo,0,e-1)),o=c?G(Z(n,i.axis,a).hi+1,r,e)-r:e-r,{start:r,count:o}}(u,c);if(f<=(e.threshold||4*o))Nr(n);else{switch(i(s)&&(n._data=c,delete n.data,Object.defineProperty(n,"data",{configurable:!0,enumerable:!0,get:function(){return this._decimated},set:function(t){this._data=t}})),e.algorithm){case"lttb":h=function(t,n,e,o,r){const i=r.samples||o;if(i>=e)return t.slice(n,n+e);const s=[],a=(e-2)/(i-2);let u=0;const c=n+e-1;let l,h,p,f,_,d=n;for(s[u++]=t[d],l=0;lp&&(p=f,h=t[o],_=o);s[u++]=h,d=_}return s[u++]=t[c],s}(c,p,f,o,e);break;case"min-max":h=function(t,n,e,o){let r,s,a,u,c,l,h,p,f,_,d=0,v=0;const y=[],m=n+e-1,g=t[n].x,$=t[m].x-g;for(r=n;r_&&(_=u,h=r),d=(v*d+s.x)/++v;else{const e=r-1;if(!i(l)&&!i(h)){const n=Math.min(l,h),o=Math.max(l,h);n!==p&&n!==e&&y.push({...t[n],x:d}),o!==p&&o!==e&&y.push({...t[o],x:d})}r>0&&e!==p&&y.push(t[e]),y.push(s),c=n,v=0,f=_=u,l=h=p=r}}return y}(c,p,f,o);break;default:throw new Error(`Unsupported decimation algorithm '${e.algorithm}'`)}n._decimated=h}}))},destroy(t){Fr(t)}};function Hr(t,n,e,o){if(o)return;let r=n[t],i=e[t];return"angle"===t&&(r=J(r),i=J(i)),{property:t,start:r,end:i}}function Ur(t,n,e){for(;n>t;n--){const t=e[n];if(!isNaN(t.x)&&!isNaN(t.y))break}return n}function Vr(t,n,e,o){return t&&n?o(t[e],n[e]):t?t[e]:n?n[e]:0}function Wr(t,n){let e=[],o=!1;return s(t)?(o=!0,e=t):e=function(t,n){const{x:e=null,y:o=null}=t||{},r=n.points,i=[];return n.segments.forEach((({start:t,end:n})=>{n=Ur(t,n,r);const s=r[t],a=r[n];null!==o?(i.push({x:s.x,y:o}),i.push({x:a.x,y:o})):null!==e&&(i.push({x:e,y:s.y}),i.push({x:e,y:a.y}))})),i}(t,n),e.length?new Or({points:e,options:{tension:0},_loop:o,_fullLoop:o}):null}function Jr(t){return t&&!1!==t.fill}function Kr(t,n,e){let o=t[n].fill;const r=[n];let i;if(!e)return o;for(;!1!==o&&-1===r.indexOf(o);){if(!u(o))return o;if(i=t[o],!i)return!1;if(i.visible)return o;r.push(o),o=i.fill}return!1}function Gr(t,n,e){const o=function(t){const n=t.options,e=n.fill;let o=l(e&&e.target,e);return void 0===o&&(o=!!n.backgroundColor),!1!==o&&null!==o&&(!0===o?"origin":o)}(t);if(a(o))return!isNaN(o.value)&&o;let r=parseFloat(o);return u(r)&&Math.floor(r)===r?function(t,n,e,o){return"-"!==t&&"+"!==t||(e=n+e),!(e===n||e<0||e>=o)&&e}(o[0],n,r,e):["origin","start","end","stack","shape"].indexOf(o)>=0&&o}function Yr(t,n,e){const o=[];for(let r=0;r=0;--n){const e=r[n].$filler;e&&(e.line.updateControlPoints(i,e.axis),o&&e.fill&&Qr(t.ctx,e,i))}},beforeDatasetsDraw(t,n,e){if("beforeDatasetsDraw"!==e.drawTime)return;const o=t.getSortedVisibleDatasetMetas();for(let n=o.length-1;n>=0;--n){const e=o[n].$filler;Jr(e)&&Qr(t.ctx,e,t.chartArea)}},beforeDatasetDraw(t,n,e){const o=n.meta.$filler;Jr(o)&&"beforeDatasetDraw"===e.drawTime&&Qr(t.ctx,o,t.chartArea)},defaults:{propagate:!0,drawTime:"beforeDatasetDraw"}};const ii=(t,n)=>{let{boxHeight:e=n,boxWidth:o=n}=t;return t.usePointStyle&&(e=Math.min(e,n),o=t.pointStyleWidth||Math.min(o,n)),{boxWidth:o,boxHeight:e,itemHeight:Math.max(n,e)}};class si extends Je{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,e){this.maxWidth=t,this.maxHeight=n,this._margins=e,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=p(t.generateLabels,[this.chart],this)||[];t.filter&&(n=n.filter((n=>t.filter(n,this.chart.data)))),t.sort&&(n=n.sort(((n,e)=>t.sort(n,e,this.chart.data)))),this.options.reverse&&n.reverse(),this.legendItems=n}fit(){const{options:t,ctx:n}=this;if(!t.display)return void(this.width=this.height=0);const e=t.labels,o=$n(e.font),r=o.size,i=this._computeTitleHeight(),{boxWidth:s,itemHeight:a}=ii(e,r);let u,c;n.font=o.string,this.isHorizontal()?(u=this.maxWidth,c=this._fitRows(i,r,s,a)+10):(c=this.maxHeight,u=this._fitCols(i,r,s,a)+10),this.width=Math.min(u,t.maxWidth||this.maxWidth),this.height=Math.min(c,t.maxHeight||this.maxHeight)}_fitRows(t,n,e,o){const{ctx:r,maxWidth:i,options:{labels:{padding:s}}}=this,a=this.legendHitBoxes=[],u=this.lineWidths=[0],c=o+s;let l=t;r.textAlign="left",r.textBaseline="middle";let h=-1,p=-c;return this.legendItems.forEach(((t,f)=>{const _=e+n/2+r.measureText(t.text).width;(0===f||u[u.length-1]+_+2*s>i)&&(l+=c,u[u.length-(f>0?0:1)]=0,p+=c,h++),a[f]={left:0,top:p,row:h,width:_,height:o},u[u.length-1]+=_+s})),l}_fitCols(t,n,e,o){const{ctx:r,maxHeight:i,options:{labels:{padding:s}}}=this,a=this.legendHitBoxes=[],u=this.columnSizes=[],c=i-t;let l=s,h=0,p=0,f=0,_=0;return this.legendItems.forEach(((t,i)=>{const d=e+n/2+r.measureText(t.text).width;i>0&&p+o+2*s>c&&(l+=h+s,u.push({width:h,height:p}),f+=h+s,_++,h=p=0),a[i]={left:f,top:p,col:_,width:d,height:o},h=Math.max(h,d),p+=o+s})),l+=h,u.push({width:h,height:p}),l}adjustHitBoxes(){if(!this.options.display)return;const t=this._computeTitleHeight(),{legendHitBoxes:n,options:{align:e,labels:{padding:o},rtl:r}}=this,i=ie(r,this.left,this.width);if(this.isHorizontal()){let r=0,s=st(e,this.left+o,this.right-this.lineWidths[r]);for(const a of n)r!==a.row&&(r=a.row,s=st(e,this.left+o,this.right-this.lineWidths[r])),a.top+=this.top+t+o,a.left=i.leftForLtr(i.x(s),a.width),s+=a.width+o}else{let r=0,s=st(e,this.top+t+o,this.bottom-this.columnSizes[r].height);for(const a of n)a.col!==r&&(r=a.col,s=st(e,this.top+t+o,this.bottom-this.columnSizes[r].height)),a.top=s,a.left+=this.left+o,a.left=i.leftForLtr(i.x(a.left),a.width),s+=a.height+o}}isHorizontal(){return"top"===this.options.position||"bottom"===this.options.position}draw(){if(this.options.display){const t=this.ctx;sn(t,this),this._draw(),an(t)}}_draw(){const{options:t,columnSizes:n,lineWidths:e,ctx:o}=this,{align:r,labels:i}=t,s=Xt.color,a=ie(t.rtl,this.left,this.width),u=$n(i.font),{color:c,padding:h}=i,p=u.size,f=p/2;let _;this.drawTitle(),o.textAlign=a.textAlign("left"),o.textBaseline="middle",o.lineWidth=.5,o.font=u.string;const{boxWidth:d,boxHeight:v,itemHeight:y}=ii(i,p),m=this.isHorizontal(),g=this._computeTitleHeight();_=m?{x:st(r,this.left+h,this.right-e[0]),y:this.top+h+g,line:0}:{x:this.left+h,y:st(r,this.top+g+h,this.bottom-n[0].height),line:0},se(this.ctx,t.textDirection);const $=y+h;this.legendItems.forEach(((b,w)=>{o.strokeStyle=b.fontColor||c,o.fillStyle=b.fontColor||c;const x=o.measureText(b.text).width,k=a.textAlign(b.textAlign||(b.textAlign=i.textAlign)),j=d+f+x;let C=_.x,z=_.y;a.setWidth(this.width),m?w>0&&C+j+h>this.right&&(z=_.y+=$,_.line++,C=_.x=st(r,this.left+h,this.right-e[_.line])):w>0&&z+$>this.bottom&&(C=_.x=C+n[_.line].width+h,_.line++,z=_.y=st(r,this.top+g+h,this.bottom-n[_.line].height)),function(t,n,e){if(isNaN(d)||d<=0||isNaN(v)||v<0)return;o.save();const r=l(e.lineWidth,1);if(o.fillStyle=l(e.fillStyle,s),o.lineCap=l(e.lineCap,"butt"),o.lineDashOffset=l(e.lineDashOffset,0),o.lineJoin=l(e.lineJoin,"miter"),o.lineWidth=r,o.strokeStyle=l(e.strokeStyle,s),o.setLineDash(l(e.lineDash,[])),i.usePointStyle){const s={radius:v*Math.SQRT2/2,pointStyle:e.pointStyle,rotation:e.rotation,borderWidth:r},u=a.xPlus(t,d/2);on(o,s,u,n+f,i.pointStyleWidth&&d)}else{const i=n+Math.max((p-v)/2,0),s=a.leftForLtr(t,d),u=mn(e.borderRadius);o.beginPath(),Object.values(u).some((t=>0!==t))?pn(o,{x:s,y:i,w:d,h:v,radius:u}):o.rect(s,i,d,v),o.fill(),0!==r&&o.stroke()}o.restore()}(a.x(C),z,b),C=((t,n,e,o)=>t===(o?"left":"right")?e:"center"===t?(n+e)/2:n)(k,C+d+f,m?C+j:this.right,t.rtl),function(t,n,e){ln(o,e.text,t,n+y/2,u,{strikethrough:e.hidden,textAlign:a.textAlign(e.textAlign)})}(a.x(C),z,b),m?_.x+=j+h:_.y+=$})),ae(this.ctx,t.textDirection)}drawTitle(){const t=this.options,n=t.title,e=$n(n.font),o=gn(n.padding);if(!n.display)return;const r=ie(t.rtl,this.left,this.width),i=this.ctx,s=n.position,a=e.size/2,u=o.top+a;let c,l=this.left,h=this.width;if(this.isHorizontal())h=Math.max(...this.lineWidths),c=this.top+u,l=st(t.align,l,this.right-h);else{const n=this.columnSizes.reduce(((t,n)=>Math.max(t,n.height)),0);c=u+st(t.align,this.top,this.bottom-n-t.labels.padding-this._computeTitleHeight())}const p=st(s,l,l+h);i.textAlign=r.textAlign(it(s)),i.textBaseline="middle",i.strokeStyle=n.color,i.fillStyle=n.color,i.font=e.string,ln(i,n.text,p,c,e)}_computeTitleHeight(){const t=this.options.title,n=$n(t.font),e=gn(t.padding);return t.display?n.lineHeight+e.height:0}_getLegendItemAt(t,n){let e,o,r;if(Y(t,this.left,this.right)&&Y(n,this.top,this.bottom))for(r=this.legendHitBoxes,e=0;et.chart.options.color,boxWidth:40,padding:10,generateLabels(t){const n=t.data.datasets,{labels:{usePointStyle:e,pointStyle:o,textAlign:r,color:i}}=t.legend.options;return t._getSortedDatasetMetas().map((t=>{const s=t.controller.getStyle(e?0:void 0),a=gn(s.borderWidth);return{text:n[t.index].label,fillStyle:s.backgroundColor,fontColor:i,hidden:!t.visible,lineCap:s.borderCapStyle,lineDash:s.borderDash,lineDashOffset:s.borderDashOffset,lineJoin:s.borderJoinStyle,lineWidth:(a.width+a.height)/4,strokeStyle:s.borderColor,pointStyle:o||s.pointStyle,rotation:s.rotation,textAlign:r||s.textAlign,borderRadius:0,datasetIndex:t.index}}),this)}},title:{color:t=>t.chart.options.color,display:!1,position:"center",text:""}},descriptors:{_scriptable:t=>!t.startsWith("on"),labels:{_scriptable:t=>!["generateLabels","filter","sort"].includes(t)}}};class ui extends Je{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 e=this.options;if(this.left=0,this.top=0,!e.display)return void(this.width=this.height=this.right=this.bottom=0);this.width=this.right=t,this.height=this.bottom=n;const o=s(e.text)?e.text.length:1;this._padding=gn(e.padding);const r=o*$n(e.font).lineHeight+this._padding.height;this.isHorizontal()?this.height=r:this.width=r}isHorizontal(){const t=this.options.position;return"top"===t||"bottom"===t}_drawArgs(t){const{top:n,left:e,bottom:o,right:r,options:i}=this,s=i.align;let a,u,c,l=0;return this.isHorizontal()?(u=st(s,e,r),c=n+t,a=r-e):("left"===i.position?(u=e+t,c=st(s,o,n),l=-.5*z):(u=r-t,c=st(s,n,o),l=.5*z),a=o-n),{titleX:u,titleY:c,maxWidth:a,rotation:l}}draw(){const t=this.ctx,n=this.options;if(!n.display)return;const e=$n(n.font),o=e.lineHeight/2+this._padding.top,{titleX:r,titleY:i,maxWidth:s,rotation:a}=this._drawArgs(o);ln(t,n.text,0,0,e,{color:n.color,maxWidth:s,rotation:a,textAlign:it(n.align),textBaseline:"middle",translation:[r,i]})}}var ci={id:"title",_element:ui,start(t,n,e){!function(t,n){const e=new ui({ctx:t.ctx,options:n,chart:t});qo.configure(t,e,n),qo.addBox(t,e),t.titleBlock=e}(t,e)},stop(t){const n=t.titleBlock;qo.removeBox(t,n),delete t.titleBlock},beforeUpdate(t,n,e){const o=t.titleBlock;qo.configure(t,o,e),o.options=e},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 li=new WeakMap;var hi={id:"subtitle",start(t,n,e){const o=new ui({ctx:t.ctx,options:e,chart:t});qo.configure(t,o,e),qo.addBox(t,o),li.set(t,o)},stop(t){qo.removeBox(t,li.get(t)),li.delete(t)},beforeUpdate(t,n,e){const o=li.get(t);qo.configure(t,o,e),o.options=e},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 pi={average(t){if(!t.length)return!1;let n,e,o=0,r=0,i=0;for(n=0,e=t.length;n-1?t.split("\n"):t}function di(t,n){const{element:e,datasetIndex:o,index:r}=n,i=t.getDatasetMeta(o).controller,{label:s,value:a}=i.getLabelAndValue(r);return{chart:t,label:s,parsed:i.getParsed(r),raw:t.data.datasets[o].data[r],formattedValue:a,dataset:i.getDataset(),dataIndex:r,datasetIndex:o,element:e}}function vi(t,n){const e=t.chart.ctx,{body:o,footer:r,title:i}=t,{boxWidth:s,boxHeight:a}=n,u=$n(n.bodyFont),c=$n(n.titleFont),l=$n(n.footerFont),h=i.length,p=r.length,_=o.length,d=gn(n.padding);let v=d.height,y=0,m=o.reduce(((t,n)=>t+n.before.length+n.lines.length+n.after.length),0);m+=t.beforeBody.length+t.afterBody.length,h&&(v+=h*c.lineHeight+(h-1)*n.titleSpacing+n.titleMarginBottom),m&&(v+=_*(n.displayColors?Math.max(a,u.lineHeight):u.lineHeight)+(m-_)*u.lineHeight+(m-1)*n.bodySpacing),p&&(v+=n.footerMarginTop+p*l.lineHeight+(p-1)*n.footerSpacing);let g=0;const $=function(t){y=Math.max(y,e.measureText(t).width+g)};return e.save(),e.font=c.string,f(t.title,$),e.font=u.string,f(t.beforeBody.concat(t.afterBody),$),g=n.displayColors?s+2+n.boxPadding:0,f(o,(t=>{f(t.before,$),f(t.lines,$),f(t.after,$)})),g=0,e.font=l.string,f(t.footer,$),e.restore(),y+=d.width,{width:y,height:v}}function yi(t,n,e,o){const{x:r,width:i}=e,{width:s,chartArea:{left:a,right:u}}=t;let c="center";return"center"===o?c=r<=(a+u)/2?"left":"right":r<=i/2?c="left":r>=s-i/2&&(c="right"),function(t,n,e,o){const{x:r,width:i}=o,s=e.caretSize+e.caretPadding;return"left"===t&&r+i+s>n.width||"right"===t&&r-i-s<0||void 0}(c,t,n,e)&&(c="center"),c}function mi(t,n,e){const o=e.yAlign||n.yAlign||function(t,n){const{y:e,height:o}=n;return et.height-o/2?"bottom":"center"}(t,e);return{xAlign:e.xAlign||n.xAlign||yi(t,n,e,o),yAlign:o}}function gi(t,n,e,o){const{caretSize:r,caretPadding:i,cornerRadius:s}=t,{xAlign:a,yAlign:u}=e,c=r+i,{topLeft:l,topRight:h,bottomLeft:p,bottomRight:f}=mn(s);let _=function(t,n){let{x:e,width:o}=t;return"right"===n?e-=o:"center"===n&&(e-=o/2),e}(n,a);const d=function(t,n,e){let{y:o,height:r}=t;return"top"===n?o+=e:o-="bottom"===n?r+e:r/2,o}(n,u,c);return"center"===u?"left"===a?_+=c:"right"===a&&(_-=c):"left"===a?_-=Math.max(l,p)+r:"right"===a&&(_+=Math.max(h,f)+r),{x:G(_,0,o.width-n.width),y:G(d,0,o.height-n.height)}}function $i(t,n,e){const o=gn(e.padding);return"center"===n?t.x+t.width/2:"right"===n?t.x+t.width-o.right:t.x+o.left}function bi(t){return fi([],_i(t))}function wi(t,n){const e=n&&n.dataset&&n.dataset.tooltip&&n.dataset.tooltip.callbacks;return e?t.override(e):t}class xi extends Je{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||t._chart,this._chart=this.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,e=this.options.setContext(this.getContext()),o=e.enabled&&n.options.animation&&e.animations,r=new ge(this.chart,o);return o._cacheable&&(this._cachedAnimations=Object.freeze(r)),r}getContext(){return this.$context||(this.$context=(this,wn(this.chart.getContext(),{tooltip:this,tooltipItems:this._tooltipItems,type:"tooltip"})))}getTitle(t,n){const{callbacks:e}=n,o=e.beforeTitle.apply(this,[t]),r=e.title.apply(this,[t]),i=e.afterTitle.apply(this,[t]);let s=[];return s=fi(s,_i(o)),s=fi(s,_i(r)),s=fi(s,_i(i)),s}getBeforeBody(t,n){return bi(n.callbacks.beforeBody.apply(this,[t]))}getBody(t,n){const{callbacks:e}=n,o=[];return f(t,(t=>{const n={before:[],lines:[],after:[]},r=wi(e,t);fi(n.before,_i(r.beforeLabel.call(this,t))),fi(n.lines,r.label.call(this,t)),fi(n.after,_i(r.afterLabel.call(this,t))),o.push(n)})),o}getAfterBody(t,n){return bi(n.callbacks.afterBody.apply(this,[t]))}getFooter(t,n){const{callbacks:e}=n,o=e.beforeFooter.apply(this,[t]),r=e.footer.apply(this,[t]),i=e.afterFooter.apply(this,[t]);let s=[];return s=fi(s,_i(o)),s=fi(s,_i(r)),s=fi(s,_i(i)),s}_createItems(t){const n=this._active,e=this.chart.data,o=[],r=[],i=[];let s,a,u=[];for(s=0,a=n.length;st.filter(n,o,r,e)))),t.itemSort&&(u=u.sort(((n,o)=>t.itemSort(n,o,e)))),f(u,(n=>{const e=wi(t.callbacks,n);o.push(e.labelColor.call(this,n)),r.push(e.labelPointStyle.call(this,n)),i.push(e.labelTextColor.call(this,n))})),this.labelColors=o,this.labelPointStyles=r,this.labelTextColors=i,this.dataPoints=u,u}update(t,n){const e=this.options.setContext(this.getContext()),o=this._active;let r,i=[];if(o.length){const t=pi[e.position].call(this,o,this._eventPosition);i=this._createItems(e),this.title=this.getTitle(i,e),this.beforeBody=this.getBeforeBody(i,e),this.body=this.getBody(i,e),this.afterBody=this.getAfterBody(i,e),this.footer=this.getFooter(i,e);const n=this._size=vi(this,e),s=Object.assign({},t,n),a=mi(this.chart,e,s),u=gi(e,s,a,this.chart);this.xAlign=a.xAlign,this.yAlign=a.yAlign,r={opacity:1,x:u.x,y:u.y,width:n.width,height:n.height,caretX:t.x,caretY:t.y}}else 0!==this.opacity&&(r={opacity:0});this._tooltipItems=i,this.$context=void 0,r&&this._resolveAnimations().update(this,r),t&&e.external&&e.external.call(this,{chart:this.chart,tooltip:this,replay:n})}drawCaret(t,n,e,o){const r=this.getCaretPosition(t,e,o);n.lineTo(r.x1,r.y1),n.lineTo(r.x2,r.y2),n.lineTo(r.x3,r.y3)}getCaretPosition(t,n,e){const{xAlign:o,yAlign:r}=this,{caretSize:i,cornerRadius:s}=e,{topLeft:a,topRight:u,bottomLeft:c,bottomRight:l}=mn(s),{x:h,y:p}=t,{width:f,height:_}=n;let d,v,y,m,g,$;return"center"===r?(g=p+_/2,"left"===o?(d=h,v=d-i,m=g+i,$=g-i):(d=h+f,v=d+i,m=g-i,$=g+i),y=d):(v="left"===o?h+Math.max(a,c)+i:"right"===o?h+f-Math.max(u,l)-i:this.caretX,"top"===r?(m=p,g=m-i,d=v-i,y=v+i):(m=p+_,g=m+i,d=v+i,y=v-i),$=m),{x1:d,x2:v,x3:y,y1:m,y2:g,y3:$}}drawTitle(t,n,e){const o=this.title,r=o.length;let i,s,a;if(r){const u=ie(e.rtl,this.x,this.width);for(t.x=$i(this,e.titleAlign,e),n.textAlign=u.textAlign(e.titleAlign),n.textBaseline="middle",i=$n(e.titleFont),s=e.titleSpacing,n.fillStyle=e.titleColor,n.font=i.string,a=0;a0!==t))?(t.beginPath(),t.fillStyle=r.multiKeyBackground,pn(t,{x:n,y:d,w:c,h:u,radius:s}),t.fill(),t.stroke(),t.fillStyle=i.backgroundColor,t.beginPath(),pn(t,{x:e,y:d+1,w:c-2,h:u-2,radius:s}),t.fill()):(t.fillStyle=r.multiKeyBackground,t.fillRect(n,d,c,u),t.strokeRect(n,d,c,u),t.fillStyle=i.backgroundColor,t.fillRect(e,d+1,c-2,u-2))}t.fillStyle=this.labelTextColors[e]}drawBody(t,n,e){const{body:o}=this,{bodySpacing:r,bodyAlign:i,displayColors:s,boxHeight:a,boxWidth:u,boxPadding:c}=e,l=$n(e.bodyFont);let h=l.lineHeight,p=0;const _=ie(e.rtl,this.x,this.width),d=function(e){n.fillText(e,_.x(t.x+p),t.y+h/2),t.y+=h+r},v=_.textAlign(i);let y,m,g,$,b,w,x;for(n.textAlign=i,n.textBaseline="middle",n.font=l.string,t.x=$i(this,v,e),n.fillStyle=e.bodyColor,f(this.beforeBody,d),p=s&&"right"!==v?"center"===i?u/2+c:u+2+c:0,$=0,w=o.length;$0&&n.stroke()}_updateAnimationTarget(t){const n=this.chart,e=this.$animations,o=e&&e.x,r=e&&e.y;if(o||r){const e=pi[t.position].call(this,this._active,this._eventPosition);if(!e)return;const i=this._size=vi(this,t),s=Object.assign({},e,this._size),a=mi(n,t,s),u=gi(t,s,a,n);o._to===u.x&&r._to===u.y||(this.xAlign=a.xAlign,this.yAlign=a.yAlign,this.width=i.width,this.height=i.height,this.caretX=e.x,this.caretY=e.y,this._resolveAnimations().update(this,u))}}_willRender(){return!!this.opacity}draw(t){const n=this.options.setContext(this.getContext());let e=this.opacity;if(!e)return;this._updateAnimationTarget(n);const o={width:this.width,height:this.height},r={x:this.x,y:this.y};e=Math.abs(e)<.001?0:e;const i=gn(n.padding),s=this.title.length||this.beforeBody.length||this.body.length||this.afterBody.length||this.footer.length;n.enabled&&s&&(t.save(),t.globalAlpha=e,this.drawBackground(r,t,o,n),se(t,n.textDirection),r.y+=i.top,this.drawTitle(r,t,n),this.drawBody(r,t,n),this.drawFooter(r,t,n),ae(t,n.textDirection),t.restore())}getActiveElements(){return this._active||[]}setActiveElements(t,n){const e=this._active,o=t.map((({datasetIndex:t,index:n})=>{const e=this.chart.getDatasetMeta(t);if(!e)throw new Error("Cannot find a dataset at index "+t);return{datasetIndex:t,element:e.data[n],index:n}})),r=!_(e,o),i=this._positionChanged(o,n);(r||i)&&(this._active=o,this._eventPosition=n,this._ignoreReplayEvents=!0,this.update(!0))}handleEvent(t,n,e=!0){if(n&&this._ignoreReplayEvents)return!1;this._ignoreReplayEvents=!1;const o=this.options,r=this._active||[],i=this._getActiveElements(t,r,n,e),s=this._positionChanged(i,t),a=n||!_(i,r)||s;return a&&(this._active=i,(o.enabled||o.external)&&(this._eventPosition={x:t.x,y:t.y},this.update(!0,n))),a}_getActiveElements(t,n,e,o){const r=this.options;if("mouseout"===t.type)return[];if(!o)return n;const i=this.chart.getElementsAtEventForMode(t,r.mode,r,e);return r.reverse&&i.reverse(),i}_positionChanged(t,n){const{caretX:e,caretY:o,options:r}=this,i=pi[r.position].call(this,t,n);return!1!==i&&(e!==i.x||o!==i.y)}}xi.positioners=pi;var ki={id:"tooltip",_element:xi,positioners:pi,afterInit(t,n,e){e&&(t.tooltip=new xi({chart:t,options:e}))},beforeUpdate(t,n,e){t.tooltip&&t.tooltip.initialize(e)},reset(t,n,e){t.tooltip&&t.tooltip.initialize(e)},afterDraw(t){const n=t.tooltip;if(n&&n._willRender()){const e={tooltip:n};if(!1===t.notifyPlugins("beforeTooltipDraw",e))return;n.draw(t.ctx),t.notifyPlugins("afterTooltipDraw",e)}},afterEvent(t,n){if(t.tooltip){const e=n.replay;t.tooltip.handleEvent(n.event,e,n.inChartArea)&&(n.changed=!0)}},defaults:{enabled:!0,external:null,position:"average",backgroundColor:"rgba(0,0,0,0.8)",titleColor:"#fff",titleFont:{weight:"bold"},titleSpacing:2,titleMarginBottom:6,titleAlign:"left",bodyColor:"#fff",bodySpacing:2,bodyFont:{},bodyAlign:"left",footerColor:"#fff",footerSpacing:2,footerMarginTop:6,footerFont:{weight:"bold"},footerAlign:"left",padding:6,caretPadding:2,caretSize:5,cornerRadius:6,boxHeight:(t,n)=>n.bodyFont.size,boxWidth:(t,n)=>n.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:{beforeTitle:o,title(t){if(t.length>0){const n=t[0],e=n.chart.data.labels,o=e?e.length:0;if(this&&this.options&&"dataset"===this.options.mode)return n.dataset.label||"";if(n.label)return n.label;if(o>0&&n.dataIndex"filter"!==t&&"itemSort"!==t&&"external"!==t,_indexable:!1,callbacks:{_scriptable:!1,_indexable:!1},animation:{_fallback:!1},animations:{_fallback:"animation"}},additionalOptionScopes:["interaction"]},ji=Object.freeze({__proto__:null,Decimation:Rr,Filler:ri,Legend:ai,SubTitle:hi,Title:ci,Tooltip:ki});class Ci extends oo{constructor(t){super(t),this._startValue=void 0,this._valueRange=0,this._addedLabels=[]}init(t){const n=this._addedLabels;if(n.length){const t=this.getLabels();for(const{index:e,label:o}of n)t[e]===o&&t.splice(e,1);this._addedLabels=[]}super.init(t)}parse(t,n){if(i(t))return null;const e=this.getLabels();return((t,n)=>null===t?null:G(Math.round(t),0,n))(n=isFinite(n)&&e[n]===t?n:function(t,n,e,o){const r=t.indexOf(n);return-1===r?((t,n,e,o)=>("string"==typeof n?(e=t.push(n)-1,o.unshift({index:e,label:n})):isNaN(n)&&(e=null),e))(t,n,e,o):r!==t.lastIndexOf(n)?e:r}(e,t,l(n,t),this._addedLabels),e.length-1)}determineDataLimits(){const{minDefined:t,maxDefined:n}=this.getUserBounds();let{min:e,max:o}=this.getMinMax(!0);"ticks"===this.options.bounds&&(t||(e=0),n||(o=this.getLabels().length-1)),this.min=e,this.max=o}buildTicks(){const t=this.min,n=this.max,e=this.options.offset,o=[];let r=this.getLabels();r=0===t&&n===r.length-1?r:r.slice(t,n+1),this._valueRange=Math.max(r.length-(e?0:1),1),this._startValue=this.min-(e?.5:0);for(let e=t;e<=n;e++)o.push({value:e});return o}getLabelForValue(t){const n=this.getLabels();return t>=0&&tn.length-1?null:this.getPixelForValue(n[t].value)}getValueForPixel(t){return Math.round(this._startValue+this.getDecimalForPixel(t)*this._valueRange)}getBasePixel(){return this.bottom}}function zi(t,n,{horizontal:e,minRotation:o}){const r=F(o),i=(e?Math.sin(r):Math.cos(r))||.001,s=.75*n*(""+t).length;return Math.min(n/i,s)}Ci.id="category",Ci.defaults={ticks:{callback:Ci.prototype.getLabelForValue}};class Si extends oo{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 i(t)||("number"==typeof t||t instanceof Number)&&!isFinite(+t)?null:+t}handleTickRangeOptions(){const{beginAtZero:t}=this.options,{minDefined:n,maxDefined:e}=this.getUserBounds();let{min:o,max:r}=this;const i=t=>o=n?o:t,s=t=>r=e?r:t;if(t){const t=D(o),n=D(r);t<0&&n<0?s(0):t>0&&n>0&&i(0)}if(o===r){let n=1;(r>=Number.MAX_SAFE_INTEGER||o<=Number.MIN_SAFE_INTEGER)&&(n=Math.abs(.05*r)),s(r+n),t||i(o-n)}this.min=o,this.max=r}getTickLimit(){const t=this.options.ticks;let n,{maxTicksLimit:e,stepSize:o}=t;return o?(n=Math.ceil(this.max/o)-Math.floor(this.min/o)+1,n>1e3&&(console.warn(`scales.${this.id}.ticks.stepSize: ${o} would result generating up to ${n} ticks. Limiting to 1000.`),n=1e3)):(n=this.computeTickLimit(),e=e||11),e&&(n=Math.min(e,n)),n}computeTickLimit(){return Number.POSITIVE_INFINITY}buildTicks(){const t=this.options,n=t.ticks;let e=this.getTickLimit();e=Math.max(2,e);const o=function(t,n){const e=[],{bounds:o,step:r,min:s,max:a,precision:u,count:c,maxTicks:l,maxDigits:h,includeBounds:p}=t,f=r||1,_=l-1,{min:d,max:v}=n,y=!i(s),m=!i(a),g=!i(c),$=(v-d)/(h+1);let b,w,x,k,j=T((v-d)/_/f)*f;if(j<1e-14&&!y&&!m)return[{value:d},{value:v}];k=Math.ceil(v/j)-Math.floor(d/j),k>_&&(j=T(k*j/_/f)*f),i(u)||(b=Math.pow(10,u),j=Math.ceil(j*b)/b),"ticks"===o?(w=Math.floor(d/j)*j,x=Math.ceil(v/j)*j):(w=d,x=v),y&&m&&r&&function(t,n){const e=Math.round(t);return e-n<=t&&e+n>=t}((a-s)/r,j/1e3)?(k=Math.round(Math.min((a-s)/j,l)),j=(a-s)/k,w=s,x=a):g?(w=y?s:w,x=m?a:x,k=c-1,j=(x-w)/k):(k=(x-w)/j,k=L(k,Math.round(k),j/1e3)?Math.round(k):Math.ceil(k));const C=Math.max(H(j),H(w));b=Math.pow(10,i(u)?C:u),w=Math.round(w*b)/b,x=Math.round(x*b)/b;let z=0;for(y&&(p&&w!==s?(e.push({value:s}),w0?e:null;this._zero=!0}determineDataLimits(){const{min:t,max:n}=this.getMinMax(!0);this.min=u(t)?Math.max(0,t):null,this.max=u(n)?Math.max(0,n):null,this.options.beginAtZero&&(this._zero=!0),this.handleTickRangeOptions()}handleTickRangeOptions(){const{minDefined:t,maxDefined:n}=this.getUserBounds();let e=this.min,o=this.max;const r=n=>e=t?e:n,i=t=>o=n?o:t,s=(t,n)=>Math.pow(10,Math.floor(I(t))+n);e===o&&(e<=0?(r(1),i(10)):(r(s(e,-1)),i(s(o,1)))),e<=0&&r(s(o,-1)),o<=0&&i(s(e,1)),this._zero&&this.min!==this._suggestedMin&&e===s(this.min,0)&&r(s(e,-1)),this.min=e,this.max=o}buildTicks(){const t=this.options,n=function(t,n){const e=Math.floor(I(n.max)),o=Math.ceil(n.max/Math.pow(10,e)),r=[];let i=c(t.min,Math.pow(10,Math.floor(I(n.min)))),s=Math.floor(I(i)),a=Math.floor(i/Math.pow(10,s)),u=s<0?Math.pow(10,Math.abs(s)):1;do{r.push({value:i,major:Oi(i)}),++a,10===a&&(a=1,++s,u=s>=0?1:u),i=Math.round(a*Math.pow(10,s)*u)/u}while(sr?{start:n-e,end:n}:{start:n,end:n+e}}function Ei(t,n,e,o,r){const i=Math.abs(Math.sin(e)),s=Math.abs(Math.cos(e));let a=0,u=0;o.startn.r&&(a=(o.end-n.r)/i,t.r=Math.max(t.r,n.r+a)),r.startn.b&&(u=(r.end-n.b)/s,t.b=Math.max(t.b,n.b+u))}function Ii(t){return 0===t||180===t?"center":t<180?"left":"right"}function Di(t,n,e){return 90===e||270===e?t-=n/2:(e>270||e<90)&&(t-=n),t}function Ti(t,n,e,o){const{ctx:r}=t;if(e)r.arc(t.xCenter,t.yCenter,n,0,S);else{let e=t.getPointPosition(0,n);r.moveTo(e.x,e.y);for(let i=1;i{const e=p(this.options.pointLabels.callback,[t,n],this);return e||0===e?e:""})).filter(((t,n)=>this.chart.getDataVisibility(n)))}fit(){const t=this.options;t.display&&t.pointLabels.display?function(t){const n={l:t.left+t._padding.left,r:t.right-t._padding.right,t:t.top+t._padding.top,b:t.bottom-t._padding.bottom},e=Object.assign({},n),o=[],r=[],i=t._pointLabels.length,a=t.options.pointLabels,u=a.centerPointLabels?z/i:0;for(let p=0;p=0&&t=0;r--){const n=o.setContext(t.getPointLabelContext(r)),s=$n(n.font),{x:a,y:u,textAlign:c,left:l,top:h,right:p,bottom:f}=t._pointLabelItems[r],{backdropColor:_}=n;if(!i(_)){const t=mn(n.borderRadius),o=gn(n.backdropPadding);e.fillStyle=_;const r=l-o.left,i=h-o.top,s=p-l+o.width,a=f-h+o.height;Object.values(t).some((t=>0!==t))?(e.beginPath(),pn(e,{x:r,y:i,w:s,h:a,radius:t}),e.fill()):e.fillRect(r,i,s,a)}ln(e,t._pointLabels[r],a,u+s.lineHeight/2,s,{color:n.color,textAlign:c,textBaseline:"middle"})}}(this,r),o.display&&this.ticks.forEach(((t,n)=>{0!==n&&(a=this.getDistanceFromCenterForValue(t.value),function(t,n,e,o){const r=t.ctx,i=n.circular,{color:s,lineWidth:a}=n;!i&&!o||!s||!a||e<0||(r.save(),r.strokeStyle=s,r.lineWidth=a,r.setLineDash(n.borderDash),r.lineDashOffset=n.borderDashOffset,r.beginPath(),Ti(t,e,i,o),r.closePath(),r.stroke(),r.restore())}(this,o.setContext(this.getContext(n-1)),a,r))})),e.display){for(t.save(),s=r-1;s>=0;s--){const o=e.setContext(this.getPointLabelContext(s)),{color:r,lineWidth:i}=o;i&&r&&(t.lineWidth=i,t.strokeStyle=r,t.setLineDash(o.borderDash),t.lineDashOffset=o.borderDashOffset,a=this.getDistanceFromCenterForValue(n.ticks.reverse?this.min:this.max),u=this.getPointPosition(s,a),t.beginPath(),t.moveTo(this.xCenter,this.yCenter),t.lineTo(u.x,u.y),t.stroke())}t.restore()}}drawBorder(){}drawLabels(){const t=this.ctx,n=this.options,e=n.ticks;if(!e.display)return;const o=this.getIndexAngle(0);let r,i;t.save(),t.translate(this.xCenter,this.yCenter),t.rotate(o),t.textAlign="center",t.textBaseline="middle",this.ticks.forEach(((o,s)=>{if(0===s&&!n.reverse)return;const a=e.setContext(this.getContext(s)),u=$n(a.font);if(r=this.getDistanceFromCenterForValue(this.ticks[s].value),a.showLabelBackdrop){t.font=u.string,i=t.measureText(o.label).width,t.fillStyle=a.backdropColor;const n=gn(a.backdropPadding);t.fillRect(-i/2-n.left,-r-u.size/2-n.top,i+n.width,u.size+n.height)}ln(t,o.label,0,-r,u,{color:a.color})})),t.restore()}drawTitle(){}}Bi.id="radialLinear",Bi.defaults={display:!0,animate:!0,position:"chartArea",angleLines:{display:!0,lineWidth:1,borderDash:[],borderDashOffset:0},grid:{circular:!1},startAngle:0,ticks:{showLabelBackdrop:!0,callback:Ge.formatters.numeric},pointLabels:{backdropColor:void 0,backdropPadding:2,display:!0,font:{size:10},callback:t=>t,padding:5,centerPointLabels:!1}},Bi.defaultRoutes={"angleLines.color":"borderColor","pointLabels.color":"color","ticks.color":"color"},Bi.descriptors={angleLines:{_fallback:"grid"}};const Li={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}},Ni=Object.keys(Li);function Fi(t,n){return t-n}function Ri(t,n){if(i(n))return null;const e=t._adapter,{parser:o,round:r,isoWeekday:s}=t._parseOpts;let a=n;return"function"==typeof o&&(a=o(a)),u(a)||(a="string"==typeof o?e.parse(a,o):e.parse(a)),null===a?null:(r&&(a="week"!==r||!B(s)&&!0!==s?e.startOf(a,r):e.startOf(a,"isoWeek",s)),+a)}function Hi(t,n,e,o){const r=Ni.length;for(let i=Ni.indexOf(t);i=n?e[o]:e[r]]=!0}}else t[n]=!0}function Vi(t,n,e){const o=[],r={},i=n.length;let s,a;for(s=0;s=0&&(n[u].major=!0);return n}(t,o,r,e):o}class Wi extends oo{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 e=t.time||(t.time={}),o=this._adapter=new lo._date(t.adapters.date);o.init(n),g(e.displayFormats,o.formats()),this._parseOpts={parser:e.parser,round:e.round,isoWeekday:e.isoWeekday},super.init(t),this._normalized=n.normalized}parse(t,n){return void 0===t?null:Ri(this,t)}beforeLayout(){super.beforeLayout(),this._cache={data:[],labels:[],all:[]}}determineDataLimits(){const t=this.options,n=this._adapter,e=t.time.unit||"day";let{min:o,max:r,minDefined:i,maxDefined:s}=this.getUserBounds();function a(t){i||isNaN(t.min)||(o=Math.min(o,t.min)),s||isNaN(t.max)||(r=Math.max(r,t.max))}i&&s||(a(this._getLabelBounds()),"ticks"===t.bounds&&"labels"===t.ticks.source||a(this.getMinMax(!1))),o=u(o)&&!isNaN(o)?o:+n.startOf(Date.now(),e),r=u(r)&&!isNaN(r)?r:+n.endOf(Date.now(),e)+1,this.min=Math.min(o,r-1),this.max=Math.max(o+1,r)}_getLabelBounds(){const t=this.getLabelTimestamps();let n=Number.POSITIVE_INFINITY,e=Number.NEGATIVE_INFINITY;return t.length&&(n=t[0],e=t[t.length-1]),{min:n,max:e}}buildTicks(){const t=this.options,n=t.time,e=t.ticks,o="labels"===e.source?this.getLabelTimestamps():this._generate();"ticks"===t.bounds&&o.length&&(this.min=this._userMin||o[0],this.max=this._userMax||o[o.length-1]);const r=this.min,i=function(t,n,e){let o=0,r=t.length;for(;oo&&t[r-1]>e;)r--;return o>0||r=Ni.indexOf(e);i--){const e=Ni[i];if(Li[e].common&&t._adapter.diff(r,o,e)>=n-1)return e}return Ni[e?Ni.indexOf(e):0]}(this,i.length,n.minUnit,this.min,this.max)),this._majorUnit=e.major.enabled&&"year"!==this._unit?function(t){for(let n=Ni.indexOf(t)+1,e=Ni.length;n+t.value)))}initOffsets(t){let n,e,o=0,r=0;this.options.offset&&t.length&&(n=this.getDecimalForValue(t[0]),o=1===t.length?1-n:(this.getDecimalForValue(t[1])-n)/2,e=this.getDecimalForValue(t[t.length-1]),r=1===t.length?e:(e-this.getDecimalForValue(t[t.length-2]))/2);const i=t.length<3?.5:.25;o=G(o,0,i),r=G(r,0,i),this._offsets={start:o,end:r,factor:1/(o+1+r)}}_generate(){const t=this._adapter,n=this.min,e=this.max,o=this.options,r=o.time,i=r.unit||Hi(r.minUnit,n,e,this._getLabelCapacity(n)),s=l(r.stepSize,1),a="week"===i&&r.isoWeekday,u=B(a)||!0===a,c={};let h,p,f=n;if(u&&(f=+t.startOf(f,"isoWeek",a)),f=+t.startOf(f,u?"day":i),t.diff(e,n,i)>1e5*s)throw new Error(n+" and "+e+" are too far apart with stepSize of "+s+" "+i);const _="data"===o.ticks.source&&this.getDataTimestamps();for(h=f,p=0;ht-n)).map((t=>+t))}getLabelForValue(t){const n=this._adapter,e=this.options.time;return e.tooltipFormat?n.format(t,e.tooltipFormat):n.format(t,e.displayFormats.datetime)}_tickFormatFunction(t,n,e,o){const r=this.options,i=r.time.displayFormats,s=this._unit,a=this._majorUnit,u=s&&i[s],c=a&&i[a],l=e[n],h=a&&c&&l&&l.major,f=this._adapter.format(t,o||(h?c:u)),_=r.ticks.callback;return _?p(_,[f,n,e],this):f}generateTickLabels(t){let n,e,o;for(n=0,e=t.length;n0?s:1}getDataTimestamps(){let t,n,e=this._cache.data||[];if(e.length)return e;const o=this.getMatchingVisibleMetas();if(this._normalized&&o.length)return this._cache.data=o[0].controller.getAllParsedValues(this);for(t=0,n=o.length;t=t[a].pos&&n<=t[u].pos&&({lo:a,hi:u}=Z(t,"pos",n)),({pos:o,time:i}=t[a]),({pos:r,time:s}=t[u])):(n>=t[a].time&&n<=t[u].time&&({lo:a,hi:u}=Z(t,"time",n)),({time:o,pos:i}=t[a]),({time:r,pos:s}=t[u]));const c=r-o;return c?i+(s-i)*(n-o)/c:i}Wi.id="time",Wi.defaults={bounds:"data",adapters:{},time:{parser:!1,unit:!1,round:!1,isoWeekday:!1,minUnit:"millisecond",displayFormats:{}},ticks:{source:"auto",major:{enabled:!1}}};class Ki extends Wi{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=Ji(n,this.min),this._tableRange=Ji(n,this.max)-this._minPos,super.initOffsets(t)}buildLookupTable(t){const{min:n,max:e}=this,o=[],r=[];let i,s,a,u,c;for(i=0,s=t.length;i=n&&u<=e&&o.push(u);if(o.length<2)return[{time:n,pos:0},{time:e,pos:1}];for(i=0,s=o.length;i{for(var o in n)e.o(n,o)&&!e.o(t,o)&&Object.defineProperty(t,o,{enumerable:!0,get:n[o]})},e.o=(t,n)=>Object.prototype.hasOwnProperty.call(t,n),e.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},e(608)})())); //# sourceMappingURL=benchart.js.map \ No newline at end of file diff --git a/benchart.js.map b/benchart.js.map index 2be6792..d5567b2 100644 --- a/benchart.js.map +++ b/benchart.js.map @@ -1 +1 @@ -{"version":3,"file":"benchart.js","mappings":"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","sources":["webpack://benchart/webpack/universalModuleDefinition","webpack://benchart/../../../../../Trace.common.kt","webpack://benchart/../../../../../AtomicFU.kt","webpack://benchart/../../../../../MonotonicFrameClock.kt","webpack://benchart/../../../../../Applier.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/collections/Collections.kt","webpack://benchart/../../../../../BroadcastFrameClock.kt","webpack://benchart/../../../../../Composer.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/collections/Iterators.kt","webpack://benchart/../../../../../InspectionTables.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/util/Standard.kt","webpack://benchart/../../../../../ListUtils.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/collections/Sets.kt","webpack://benchart/../../../../../SlotTable.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/collections/Maps.kt","webpack://benchart/../../../../../BitwiseOperators.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/common/src/generated/_Collections.kt","webpack://benchart/../../../../../Trace.kt","webpack://benchart/../../../../../IdentityArrayMap.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/comparisons/Comparisons.kt","webpack://benchart/../../../../../DerivedState.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/collections/MutableCollections.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/util/Preconditions.kt","webpack://benchart/../../../../../Composition.kt","webpack://benchart/../../../../../IdentityScopeMap.kt","webpack://benchart/../../../../../IdentityArraySet.kt","webpack://benchart/../../../../../Synchronization.kt","webpack://benchart/../../../../../CompositionContext.kt","webpack://benchart/../../../../../CompositionLocal.kt","webpack://benchart/../../../../../Effects.kt","webpack://benchart/../../../../../JoinedKey.kt","webpack://benchart/../../../../../MovableContent.kt","webpack://benchart/../../../../../OpaqueKey.kt","webpack://benchart/../../../../../RecomposeScopeImpl.kt","webpack://benchart/../../../../../Recomposer.kt","webpack://benchart/../../../../../Synchronized.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/util/Result.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/coroutines/Continuation.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/common/src/generated/_Sequences.kt","webpack://benchart/../../../../../runtime/coroutineInternalJS.kt","webpack://benchart/../../../../../Snapshot.kt","webpack://benchart/../../../../../extensions.kt","webpack://benchart/../../../../../src/generated/_ArraysJs.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/dynamic.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/math.kt","webpack://benchart/../../../../../builtins/Library.kt","webpack://benchart/../../../../../SnapshotMutationPolicy.kt","webpack://benchart/../../../../../SnapshotState.kt","webpack://benchart/../../../../../ActualJs.js.kt","webpack://benchart/../../../../../Stack.kt","webpack://benchart/../../../../../ValueHolders.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/util/Lazy.kt","webpack://benchart/../../../../../IdentityArrayIntMap.kt","webpack://benchart/../../../../../AbstractListIterator.kt","webpack://benchart/../../../../../AbstractPersistentList.kt","webpack://benchart/../../../../../BufferIterator.kt","webpack://benchart/../../../../../PersistentVector.kt","webpack://benchart/../../../../../PersistentVectorBuilder.kt","webpack://benchart/../../../../../runtime/kotlinHacks.kt","webpack://benchart/../../../../../PersistentVectorIterator.kt","webpack://benchart/../../../../../PersistentVectorMutableIterator.kt","webpack://benchart/../../../../../SmallPersistentVector.kt","webpack://benchart/../../../../../TrieIterator.kt","webpack://benchart/../../../../../Utils.kt","webpack://benchart/../../../../../PersistentHashMap.kt","webpack://benchart/../../../../../PersistentHashMapContentIterators.kt","webpack://benchart/../../../../../PersistentHashMapContentViews.kt","webpack://benchart/../../../../../TrieNode.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/util/HashCode.kt","webpack://benchart/../../../../../PersistentOrderedSet.kt","webpack://benchart/../../../../../PersistentOrderedSetIterator.kt","webpack://benchart/../../../../../ComposableLambda.kt","webpack://benchart/../../../../../SnapshotDoubleIndexHeap.kt","webpack://benchart/../../../../../SnapshotIdSet.kt","webpack://benchart/../../../../../SnapshotStateList.kt","webpack://benchart/../../../../../SnapshotStateMap.kt","webpack://benchart/../../../../../","webpack://benchart/../../../../../Composer.js.kt","webpack://benchart/../../../../../ComposableLambda.js.kt","webpack://benchart/../../../../../CancellableContinuation.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/common/src/generated/_Arrays.kt","webpack://benchart/../../../../../ListImplementation.kt","webpack://benchart/../../../../../ActualJsBrowser.js.kt","webpack://benchart/../../../../../Composables.kt","webpack://benchart/../../../../src/commonMain/kotlin/core/BenchmarkResult.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/text/Strings.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/common/src/generated/_Maps.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/text/regex/RegexExtensions.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/text/numberConversions.kt","webpack://benchart/../../../../src/commonMain/kotlin/core/ChartsTransformers.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/common/src/generated/_Ranges.kt","webpack://benchart/../../../../src/commonMain/kotlin/core/TextNumberLine.kt","webpack://benchart/../../../../src/commonMain/kotlin/model/Chart.kt","webpack://benchart/../../../../src/commonMain/kotlin/model/FormData.kt","webpack://benchart/../../../../src/jsMain/kotlin/components/AutoFormUi.kt","webpack://benchart/../../../../src/jsMain/kotlin/components/AutoGroupToggle.kt","webpack://benchart/../../../../src/jsMain/kotlin/components/ChartUi.kt","webpack://benchart/../../../../src/jsMain/kotlin/Utils.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/collections.kt","webpack://benchart/../../../../src/jsMain/kotlin/chartjs/Type.kt","webpack://benchart/../../../../src/jsMain/kotlin/components/EditableTitle.kt","webpack://benchart/../../../../src/jsMain/kotlin/components/Error.kt","webpack://benchart/../../../../src/jsMain/kotlin/components/FocusGroups.kt","webpack://benchart/../../../../src/jsMain/kotlin/components/Heading.kt","webpack://benchart/../../../../src/jsMain/kotlin/components/SavedBenchmarkNode.kt","webpack://benchart/../../../../src/jsMain/kotlin/components/SavedBenchmarksDropDown.kt","webpack://benchart/../../../../src/jsMain/kotlin/components/Summary.kt","webpack://benchart/../../../../src/jsMain/kotlin/components/TestNameDetectionToggle.kt","webpack://benchart/../../../../src/jsMain/kotlin/components/TestNames.kt","webpack://benchart/../../../../src/jsMain/kotlin/main.kt","webpack://benchart/../../../../src/jsMain/kotlin/page/home/HomePage.kt","webpack://benchart/../../../../src/jsMain/kotlin/page/home/HomeViewModel.kt","webpack://benchart/../../../../src/jsMain/kotlin/repo/BenchmarkRepo.kt","webpack://benchart/../../../../src/jsMain/kotlin/repo/FormRepo.kt","webpack://benchart/../../../../src/jsMain/kotlin/utils/DefaultValues.kt","webpack://benchart/../../../../src/jsMain/kotlin/utils/JsonUtils.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/text/string.kt","webpack://benchart/../../../../../SerialFormat.kt","webpack://benchart/../../../../../Serializers.kt","webpack://benchart/../../../../../Platform.common.kt","webpack://benchart/../../../../src/jsMain/kotlin/utils/SummaryUtils.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/coroutines/CoroutineContext.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/common/src/generated/_OneToManyTitlecaseMappings.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/text/Char.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/text/char.kt","webpack://benchart/../../../../../src/generated/_TitlecaseMappings.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/CharCode.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/collections/Sequences.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/common/src/generated/_Strings.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/collections/AbstractIterator.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/collections/AbstractList.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/collections/AbstractMap.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/collections/AbstractSet.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/collections/IndexedValue.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/collections/Iterables.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/collections/SequenceBuilder.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/collections/SlidingWindow.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/coroutines/CoroutineContextImpl.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/coroutines/intrinsics/Intrinsics.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/internal/progressionUtil.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/random/Random.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/random/XorWowRandom.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/ranges/PrimitiveRanges.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/ranges/ProgressionIterators.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/ranges/Progressions.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/text/Appendable.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/text/Indent.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/text/StringNumberConversions.kt","webpack://benchart/../../../../../runtime/long.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/text/stringsCode.kt","webpack://benchart/../../../../../runtime/noPackageHacks.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/time/Duration.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/text/StringBuilder.kt","webpack://benchart/../../../../../src/generated/_ComparisonsJs.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/time/DurationUnit.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/util/DeepRecursive.kt","webpack://benchart/../../../../../runtime/typeCheckUtils.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/util/Tuples.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/unsigned/src/kotlin/UByte.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/unsigned/src/kotlin/UByteArray.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/unsigned/src/kotlin/UInt.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/unsigned/src/kotlin/UIntArray.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/unsigned/src/kotlin/ULong.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/unsigned/src/kotlin/UnsignedUtils.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/unsigned/src/kotlin/ULongArray.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/unsigned/src/kotlin/UShort.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/unsigned/src/kotlin/UShortArray.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/unsigned/src/kotlin/UStrings.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/runtime/primitiveCompanionObjects.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/collections/ArraySorting.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/collections/AbstractMutableCollection.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/collections/AbstractMutableList.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/collections/AbstractMutableMap.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/collections/AbstractMutableSet.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/collections/ArrayList.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/collections/HashMap.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/collections/HashSet.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/collections/InternalHashCodeMap.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/collections/LinkedHashMap.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/collections/LinkedHashSet.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/console.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/coroutines/SafeContinuationJs.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/coroutines/cancellation/CancellationException.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/numbers.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/reflect/JsClass.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/reflect/KClassImpl.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/reflect/KTypeImpl.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/reflect/primitives.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/reflect/reflection.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/regexp.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/text/StringBuilderJs.kt","webpack://benchart/../../../../../src/generated/_WhitespaceChars.kt","webpack://benchart/../../../../../src/generated/_DigitChars.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/text/regex.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/throwableExtensions.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/time/DurationUnit.kt","webpack://benchart/../../../../../builtins/Char.kt","webpack://benchart/../../../../../builtins/Enum.kt","webpack://benchart/../../../../../runtime/arrays.kt","webpack://benchart/../../../../../runtime/bitUtils.kt","webpack://benchart/../../../../../runtime/charSequence.kt","webpack://benchart/../../../../../runtime/collectionsHacks.kt","webpack://benchart/../../../../../runtime/compareTo.kt","webpack://benchart/../../../../../runtime/coreRuntime.kt","webpack://benchart/../../../../../runtime/hacks.kt","webpack://benchart/../../../../../runtime/longjs.kt","webpack://benchart/../../../../../runtime/numberConversion.kt","webpack://benchart/../../../../../runtime/rangeTo.kt","webpack://benchart/../../../../../runtime/reflectRuntime.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/js.arrays/fill.kt","webpack://benchart/../../../../../src/generated/_CharCategories.kt","webpack://benchart/../../../../../src/generated/_LetterChars.kt","webpack://benchart/../../../../../src/generated/_OtherLowercaseChars.kt","webpack://benchart/../../../../../src/kotlin/coroutines_13/CoroutineImpl.kt","webpack://benchart/../../../../../src/kotlin/coroutines_13/IntrinsicsJs.kt","webpack://benchart/../../../../../src/kotlin/exceptions.kt","webpack://benchart/../../../../../src/kotlin/jsOperators.kt","webpack://benchart/../../../../../src/kotlin/text/numberConversions_js-ir.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/collections/AbstractCollection.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/collections/PrimitiveIterators.kt","webpack://benchart/../../../../../jsMainSources/core/builtins/src/kotlin/Unit.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/collections/EqualityComparator.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/collections/InternalMap.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/reflect/KTypeHelpers.kt","webpack://benchart/../../../../../src/kotlin/reflection_js-ir.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/collections/MapWithDefault.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/common/src/generated/_Sets.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/coroutines/ContinuationInterceptor.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/ranges/Ranges.kt","webpack://benchart/../../../../../SerialDescriptor.kt","webpack://benchart/../../../../../Decoding.kt","webpack://benchart/../../../../../Encoding.kt","webpack://benchart/../../../../../PluginHelperInterfaces.kt","webpack://benchart/../../../../../PolymorphicSerializer.kt","webpack://benchart/../../../../../ContextAware.kt","webpack://benchart/../../../../../AbstractPolymorphicSerializer.kt","webpack://benchart/../../../../../SerializationExceptions.kt","webpack://benchart/../../../../../Platform.kt","webpack://benchart/../../../../../Primitives.kt","webpack://benchart/../../../../../BuiltinSerializers.kt","webpack://benchart/../../../../../SerializersCache.kt","webpack://benchart/../../../../../SerialDescriptors.kt","webpack://benchart/../../../../../SerialKinds.kt","webpack://benchart/../../../../../BuiltInSerializers.kt","webpack://benchart/../../../../../CollectionDescriptors.kt","webpack://benchart/../../../../../CollectionSerializers.kt","webpack://benchart/../../../../../ElementMarker.kt","webpack://benchart/../../../../../InlineClassDescriptor.kt","webpack://benchart/../../../../../NoOpEncoder.kt","webpack://benchart/../../../../../NullableSerializer.kt","webpack://benchart/../../../../../ObjectSerializer.kt","webpack://benchart/../../../../../PluginGeneratedSerialDescriptor.kt","webpack://benchart/../../../../../PrimitiveArraysSerializers.kt","webpack://benchart/../../../../../Tagged.kt","webpack://benchart/../../../../../Tuples.kt","webpack://benchart/../../../../../ValueClasses.kt","webpack://benchart/../../../../../SerializersModule.kt","webpack://benchart/../../../../../SerializersModuleBuilders.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/reflect/AssociatedObjects.kt","webpack://benchart/../../../../../AbstractDecoder.kt","webpack://benchart/../../../../../AbstractEncoder.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/common/src/generated/_UArrays.kt","webpack://benchart/../../../../../JsonInternalDependencies.kt","webpack://benchart/../../../../../PluginExceptions.kt","webpack://benchart/../../../../../SerializersModuleCollector.kt","webpack://benchart/../../../../../Json.kt","webpack://benchart/../../../../../JsonConfiguration.kt","webpack://benchart/../../../../../JsonElement.kt","webpack://benchart/../../../../../StringOps.kt","webpack://benchart/../../../../../JsonElementSerializers.kt","webpack://benchart/../../../../../Composers.kt","webpack://benchart/../../../../../JsonElementMarker.kt","webpack://benchart/../../../../../JsonExceptions.kt","webpack://benchart/../../../../../AbstractJsonLexer.kt","webpack://benchart/../../../../../JsonNamesMap.kt","webpack://benchart/../../../../../JsonPath.kt","webpack://benchart/../../../../../JsonStreams.kt","webpack://benchart/../../../../../StreamingJsonEncoder.kt","webpack://benchart/../../../../../JsonTreeReader.kt","webpack://benchart/../../../../../Polymorphic.kt","webpack://benchart/../../../../../TreeJsonEncoder.kt","webpack://benchart/../../../../../TreeJsonDecoder.kt","webpack://benchart/../../../../../PolymorphismValidator.kt","webpack://benchart/../../../../../SchemaCache.kt","webpack://benchart/../../../../../StreamingJsonDecoder.kt","webpack://benchart/../../../../../WriteMode.kt","webpack://benchart/../../../../../StringJsonLexer.kt","webpack://benchart/../../../../../JsonSchemaCache.kt","webpack://benchart/../../../../../JsonToStringWriter.kt","webpack://benchart/../../../../../createMapForCache.kt","webpack://benchart/../../../../../Job.kt","webpack://benchart/../../../../../AbstractCoroutine.kt","webpack://benchart/../../../../../Builders.common.kt","webpack://benchart/../../../../../CoroutineContext.kt","webpack://benchart/../../../../../DispatchedTask.kt","webpack://benchart/../../../../../CancellableContinuationImpl.kt","webpack://benchart/../../../../../CompletionHandler.kt","webpack://benchart/../../../../../AtomicFU.common.kt","webpack://benchart/../../../../../CompletionState.kt","webpack://benchart/../../../../../CoroutineDispatcher.kt","webpack://benchart/../../../../../CoroutineExceptionHandler.kt","webpack://benchart/../../../../../EventLoop.common.kt","webpack://benchart/../../../../../Exceptions.common.kt","webpack://benchart/../../../../../JobSupport.kt","webpack://benchart/../../../../../Concurrent.kt","webpack://benchart/../../../../../LinkedList.kt","webpack://benchart/../../../../../MainCoroutineDispatcher.kt","webpack://benchart/../../../../../Supervisor.kt","webpack://benchart/../../../../../Unconfined.kt","webpack://benchart/../../../../../StateFlow.kt","webpack://benchart/../../../../../AbstractSharedFlow.kt","webpack://benchart/../../../../../NullSurrogate.kt","webpack://benchart/../../../../../ArrayQueue.kt","webpack://benchart/../../../../../DispatchedContinuation.kt","webpack://benchart/../../../../../ThreadContext.kt","webpack://benchart/../../../../../Scopes.kt","webpack://benchart/../../../../../Symbol.kt","webpack://benchart/../../../../../Cancellable.kt","webpack://benchart/../../../../../Undispatched.kt","webpack://benchart/../../../../../Window.kt","webpack://benchart/../../../../../CoroutineExceptionHandlerImpl.kt","webpack://benchart/../../../../../Debug.kt","webpack://benchart/../../../../../Dispatchers.kt","webpack://benchart/../../../../../EventLoop.kt","webpack://benchart/../../../../../Exceptions.kt","webpack://benchart/../../../../../JSDispatcher.kt","webpack://benchart/../../../../../StackTraceRecovery.kt","webpack://benchart/../../../../../ThreadLocal.kt","webpack://benchart/../../../../../CoroutineStart.kt","webpack://benchart/../../../../../ProbesSupport.kt","webpack://benchart/../../../../../CompletionHandler.common.kt","webpack://benchart/../../../../../SchedulerTask.kt","webpack://benchart/../../../../../CoroutineScope.kt","webpack://benchart/../../../../../DomApplier.kt","webpack://benchart/../../../../../GlobalSnapshotManager.kt","webpack://benchart/../../../../../JsMicrotasksDispatcher.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/org.w3c/org.w3c.dom.kt","webpack://benchart/../../../../../renderComposable.kt","webpack://benchart/../../../../../Attrs.kt","webpack://benchart/../../../../../InternalControlledInputUtils.kt","webpack://benchart/../../../../../AttrsScope.kt","webpack://benchart/../../../../../EventsListenerScope.kt","webpack://benchart/../../../../../PredefinedAttrValues.kt","webpack://benchart/../../../../../SyntheticEventListener.kt","webpack://benchart/../../../../../InputAttrsScope.kt","webpack://benchart/../../../../../SelectAttrsScope.kt","webpack://benchart/../../../../../TextAreaAttrsScope.kt","webpack://benchart/../../../../../CSSUnits.kt","webpack://benchart/../../../../../StyleScope.kt","webpack://benchart/../../../../../Base.kt","webpack://benchart/../../../../../ElementScope.kt","webpack://benchart/../../../../../Elements.kt","webpack://benchart/../../../../../SyntheticChangeEvent.kt","webpack://benchart/../../../../../SyntheticEvent.kt","webpack://benchart/../../../../../SyntheticInputEvent.kt","webpack://benchart/../../../../../SyntheticMouseEvent.kt","webpack://benchart/../../../../../StylePropertyValue.kt","webpack://benchart/../../../../../text.kt","webpack://benchart/../../../../../box.kt","webpack://benchart/../../../../../margin.kt","webpack://benchart/../../../../../padding.kt","webpack://benchart/../../node_modules/chart.js/dist/chunks/helpers.segment.mjs","webpack://benchart/../../node_modules/chart.js/dist/chart.mjs","webpack://benchart/webpack/bootstrap","webpack://benchart/webpack/runtime/define property getters","webpack://benchart/webpack/runtime/hasOwnProperty shorthand","webpack://benchart/webpack/runtime/make namespace object","webpack://benchart/webpack/startup"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"benchart\"] = factory();\n\telse\n\t\troot[\"benchart\"] = factory();\n})(this, () => {\nreturn ",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,"package core\n\nimport model.FormData\n\nopen class InvalidDataException(message: String?) : Throwable(message)\nclass InvalidBenchmarkDataException(message: String?) : InvalidDataException(message)\nclass InvalidGenericDataException(message: String?) : InvalidDataException(message)\n\ndata class BlockRow(\n val title: String,\n val fullData: Map>\n) {\n val avgData: Map = fullData.mapValues { it.value.average().toFloat() }\n}\n\nenum class SupportedMetrics(\n val key: String,\n val emoji: String,\n val title: String\n) {\n Duration(\n emoji = \"⏱\",\n key = \"frameDurationCpuMs\",\n title = \"Duration Summary\"\n ),\n Overrun(\n emoji = \"🏃🏻‍♂️\",\n key = \"frameOverrunMs\",\n title = \"Overrun Summary\"\n ),\n InitialDisplay(\n emoji = \"🌘\",\n key = \"timeToInitialDisplayMs\",\n title = \"Initial Display Summary\"\n ),\n FullDisplay(\n emoji = \"🌕\",\n key = \"timeToFullDisplayMs\",\n title = \"Full Display Summary\"\n ),\n}\n\nenum class InputType {\n GENERIC,\n NORMAL_BENCHMARK\n}\n\ndata class ResultContainer(\n val inputType: InputType,\n val benchmarkResults: List,\n val focusGroups: Set\n)\n\ndata class BenchmarkResult(\n val title: String,\n val testName: String?,\n val blockRows: List\n) {\n companion object {\n const val FOCUS_GROUP_ALL = \"All\"\n private val metricKeys = SupportedMetrics.values().map { it.key }\n\n private val machineLineRegEx = \"^(Traces|${metricKeys.joinToString(separator = \"|\")}).+\".toRegex()\n private val titleStripRegEx = \"\\\\W+\".toRegex()\n private val genericTitleStripRegEx = \"\\\\W+\".toRegex()\n private val testNameRegex = \"[A-Z].*_[a-z].*\".toRegex()\n\n fun parse(form: FormData, focusGroup: String): ResultContainer? {\n\n val blocks = form.data\n .split(\"\\n\").joinToString(separator = \"\\n\") { it.trim() }\n .split(\"^\\\\s+\".toRegex(RegexOption.MULTILINE)).map { it.trim() }\n .filter { it.isNotBlank() }\n\n println(\"parsing input...\")\n if (blocks.isEmpty()) return null\n if (form.isGenericInput()) return parseGenericInput(blocks, focusGroup)\n\n println(\"parsing machine generated benchmark input...\")\n val benchmarkResults = mutableListOf()\n\n for ((index, block) in blocks.withIndex()) {\n println(\"block: '$block'\")\n val lines = block.split(\"\\n\").map { it.trim() }\n var title: String? = null\n var testName: String? = null\n val blockRows = mutableListOf()\n for (line in lines) {\n\n if (title == null && isHumanLine(line)) {\n title = line\n }\n\n if (form.isTestNameDetectionEnabled && isTestName(line)) {\n if (testName != null && blockRows.isNotEmpty()) {\n\n if (title == null) {\n title = \"benchmark $index $testName\"\n }\n\n // We already have an unsaved testData, so let's save it\n benchmarkResults.add(\n BenchmarkResult(\n title = title,\n testName = testName,\n blockRows = blockRows\n )\n )\n\n blockRows.clear()\n }\n\n testName = line\n }\n\n val metricName = line.findMetricKeyOrNull()\n println(\"QuickTag: BenchmarkResult:parse: metric name is $metricName\")\n if (metricName != null) {\n val isMetricAlreadyAdded = blockRows.find { it.title == metricName } != null\n if (isMetricAlreadyAdded) {\n throw InvalidBenchmarkDataException(\"Two $metricName found in block ${index + 1}. Expected only one\")\n }\n\n blockRows.add(\n BlockRow(\n title = metricName,\n fullData = parseValues(metricName, line).map { (key, value) ->\n key to listOf(value)\n }.toMap()\n )\n )\n }\n }\n\n if (title == null) {\n title = \"benchmark $index\"\n }\n\n title = parseTitle(title)\n\n if (blockRows.isNotEmpty()) {\n benchmarkResults.add(\n BenchmarkResult(\n title = title,\n testName = testName,\n blockRows = blockRows\n )\n )\n }\n }\n\n return ResultContainer(InputType.NORMAL_BENCHMARK, benchmarkResults, setOf(FOCUS_GROUP_ALL))\n }\n\n private fun parseGenericInput(\n blocks: List,\n focusGroup: String\n ): ResultContainer {\n val (focusGroups, benchmarkResults) = parseMultiLineGenericInput(blocks, focusGroup)\n return ResultContainer(\n InputType.GENERIC,\n benchmarkResults,\n focusGroups\n )\n }\n\n private fun createChartTitle(blockRows: MutableList): String {\n return blockRows.joinToString(separator = \" vs \") { it.title }\n }\n\n private fun parseMultiLineGenericInput(\n blocks: List,\n focusGroup: String\n ): Pair, List> {\n val benchmarkResults = mutableListOf()\n val blockRows = mutableListOf()\n val focusGroups = mutableSetOf(FOCUS_GROUP_ALL)\n for ((index, block) in blocks.withIndex()) {\n val lines = block.split(\"\\n\").map { it.trim() }\n var title: String? = null\n val valuesMap = mutableMapOf>()\n for ((lineIndex, line) in lines.withIndex()) {\n\n if (title == null && isHumanLine(line)) {\n title = line\n continue\n }\n\n if (line.shouldSkip()) {\n continue\n }\n\n val textNumberLine = TextNumberLine.parse(lineIndex, line) ?: continue\n val genericTitle = parseGenericTitle(textNumberLine.text)\n valuesMap.getOrPut(genericTitle) { mutableListOf() }.add(textNumberLine.number)\n }\n\n if (title == null) {\n title = \"benchmark $index\"\n }\n\n title = parseGenericTitle(title)\n\n blockRows.add(\n BlockRow(\n title = title,\n fullData = valuesMap\n )\n )\n }\n\n for (blockRow in blockRows) {\n for ((key, value) in blockRow.fullData) {\n if (value.size > 1) {\n focusGroups.add(key)\n }\n }\n }\n\n checkDataIntegrity(blockRows)\n\n val chartTitle = createChartTitle(blockRows)\n\n benchmarkResults.add(\n BenchmarkResult(\n title = chartTitle,\n testName = \"\",\n blockRows = blockRows\n )\n )\n\n return if (focusGroup == FOCUS_GROUP_ALL || focusGroup !in focusGroups) {\n Pair(focusGroups, benchmarkResults)\n } else {\n Pair(focusGroups, focus(benchmarkResults, focusGroup))\n }\n }\n\n private fun focus(benchmarkResults: List, focusGroup: String): List {\n val newBenchmarkResult = mutableListOf()\n for (result in benchmarkResults) {\n val blockRows = mutableListOf()\n for (blockRow in result.blockRows) {\n blockRows.add(\n BlockRow(\n title = blockRow.title,\n fullData = blockRow.fullData[focusGroup]?.mapIndexed { index, value ->\n Pair(getPositionText(index + 1), listOf(value))\n }?.toMap() ?: error(\"Invalid focus group '$focusGroup' for ${blockRow.title}\")\n )\n )\n }\n newBenchmarkResult.add(\n BenchmarkResult(\n title = \"$focusGroup - ${result.title}\",\n testName = result.testName,\n blockRows = blockRows\n )\n )\n }\n return newBenchmarkResult\n }\n\n private fun getPositionText(index: Int): String {\n val suffix = when {\n index % 100 in 11..13 -> \"th\"\n index % 10 == 1 -> \"st\"\n index % 10 == 2 -> \"nd\"\n index % 10 == 3 -> \"rd\"\n else -> \"th\"\n }\n return \"$index$suffix\"\n }\n\n\n private fun checkDataIntegrity(blockRows: List) {\n if (blockRows.size >= 2) {\n val originalValueOrder = blockRows.first().avgData.keys.toList().sorted()\n for ((index, blockRow) in blockRows.withIndex()) {\n if (index == 0) {\n continue\n }\n val currentValueOrder = blockRow.avgData.keys.toList().sorted()\n if (originalValueOrder != currentValueOrder) {\n error(\"Invalid order. Expected '$originalValueOrder', but found '$currentValueOrder'\")\n }\n }\n }\n\n val keyLengthMap = mutableMapOf()\n blockRows.forEach { blockRow ->\n blockRow.fullData.forEach { (key, values) ->\n if (keyLengthMap.containsKey(key) && keyLengthMap[key] != values.size) {\n error(\"Item count mismatch. For '$key', ${keyLengthMap[key]} rows expected, but found ${values.size} in '${blockRow.title}' block\")\n } else {\n keyLengthMap[key] = values.size\n }\n }\n }\n }\n\n\n private fun isTestName(line: String): Boolean {\n return testNameRegex.matches(line)\n }\n\n private fun parseTitle(title: String): String {\n return title\n .replace(titleStripRegEx, \" \")\n .replace(\"\\\\s{2,}\".toRegex(), \" \")\n .trim()\n }\n\n private fun parseGenericTitle(title: String): String {\n return title\n .replace(genericTitleStripRegEx, \" \")\n .replace(\"\\\\s{2,}\".toRegex(), \" \")\n .trim()\n }\n\n private fun isHumanLine(line: String): Boolean {\n return !isMachineLine(line)\n }\n\n private fun isMachineLine(line: String): Boolean {\n return line.matches(machineLineRegEx)\n }\n\n private fun parseValues(key: String, data: String): Map {\n if (!data.startsWith(key)) {\n error(\"Invalid $key.Expected to start with '$key' but found '$data'\")\n }\n\n val transformedList = data.replace(key, \"\")\n .replace(\"\\\\s+\".toRegex(), \" \")\n .split(\", \")\n // remove commas in numbers\n .map { it.replace(\",\", \"\").trim().split(\" \") }\n\n val valueMap = mutableMapOf()\n for (item in transformedList) {\n valueMap[item[0]] = item[1].toFloat()\n }\n return valueMap\n }\n\n\n private fun String.findMetricKeyOrNull(): String? {\n return metricKeys.find { this.startsWith(it) }\n }\n\n private fun String.shouldSkip(): Boolean {\n return this == \"startup type is: cold\" || this == \"startup type is: warm\" || this == \"startup type is: hot\"\n }\n }\n\n\n}\n\n\nprivate fun FormData.isGenericInput(): Boolean {\n return !this.data.contains(\n SupportedMetrics.values().joinToString(separator = \"|\", prefix = \"(\", postfix = \")\") { it.key }.toRegex()\n )\n}\n\n",null,null,null,null,"package core\n\nimport model.Chart\nimport model.ChartsBundle\n\n\nfun List.toCharts(): ChartsBundle {\n val chartNames = this\n .map { result ->\n result.blockRows.map { dataPoint ->\n dataPoint.title\n }\n }\n .flatten()\n .toSet()\n\n val charts = mutableListOf()\n for (chartName in chartNames) {\n // before1 -> {P50=40.5, P90=45.8, P95=60.4, P99=80.4}\n val dataSets = mutableMapOf>()\n for (item in this) {\n dataSets[item.title] = item.blockRows.find { it.title == chartName }?.avgData ?: emptyMap()\n }\n\n charts.add(\n Chart(\n emoji = SupportedMetrics.values().find { it.key == chartName }?.emoji ?: \"📊\",\n label = chartName, // frameDurationCpuMs, frameOverrunMs, etc\n dataSets = dataSets\n )\n )\n }\n\n val groupMap = parseGroupMap(this, isGeneric = false)\n return ChartsBundle(\n groupMap = groupMap,\n charts = charts\n )\n}\n\n\nfun List.toGenericChart(): ChartsBundle {\n // Generic chart will be always 1\n val result = this.first()\n\n val chart = Chart(\n emoji = \"📊\",\n label = result.title,\n dataSets = mutableMapOf>().apply {\n for(blockRow in result.blockRows){\n put(blockRow.title, blockRow.avgData)\n }\n },\n bsClass = \"col-lg-12\"\n )\n\n return ChartsBundle(\n groupMap = parseGroupMap(this, isGeneric = true),\n charts = listOf(\n chart\n )\n )\n}\n\n\ndata class GroupMap(\n val autoGroupMap: Map,\n val wordColorMap: Map\n)\n\nfun parseGroupMap(\n benchmarkResults: List,\n isGeneric : Boolean\n): GroupMap {\n val autoGroupMap = mutableMapOf()\n val titles = if(isGeneric){\n benchmarkResults.flatMap { it.blockRows.map { blockRow -> blockRow.title } }\n }else {\n benchmarkResults.map { it.title }\n }\n println(\"titles: $titles -> ${benchmarkResults.map { it.blockRows }}\")\n val wordColorMap = mutableMapOf()\n // TODO: Add more colors\n val lineColors = mutableListOf(\n \"rgba(255, 99, 132, 1)\",\n \"rgba(54, 162, 235, 1)\",\n \"rgba(255, 206, 86, 1)\",\n \"rgba(75, 192, 192, 1)\",\n \"rgba(153, 102, 255, 1)\",\n \"rgba(255, 159, 64, 1)\",\n )\n for (title in titles) {\n val firstWord = title.split(\" \")[0]\n val color = wordColorMap.getOrPut(firstWord) {\n\n if (lineColors.isEmpty()) {\n lineColors.add(\"rgba(${randomRgb()}, ${randomRgb()}, ${randomRgb()}, 1)\")\n }\n\n val newColor = lineColors.first()\n lineColors.remove(newColor)\n newColor\n }\n autoGroupMap[title] = color\n }\n return GroupMap(\n autoGroupMap = autoGroupMap,\n wordColorMap = wordColorMap\n ).also {\n println(\"groupMap: $it\")\n }\n}\n\nprivate fun randomRgb() = (0..255).random()\n",null,"package core\n\nprivate val digitRegex = \"\\\\d+(.\\\\d+)?\".toRegex()\n\ndata class TextNumberLine(\n val text: String,\n val number: Float\n) {\n companion object {\n private val AVGIZER_REGEX = \"\\\\(input count : .+\\\\)\\$\".toRegex()\n fun parse(index : Int, iLine: String): TextNumberLine? {\n // Quick support for https://theapache64.github.io/avgizer/\n val match = AVGIZER_REGEX.find(iLine)\n val line = if (match != null){\n iLine.replace(match.groupValues.first(), \"\")\n } else {\n iLine\n }\n\n val number = digitRegex.findAll(line)\n .lastOrNull()\n ?.groupValues\n ?.firstOrNull()\n ?: return null\n val numberIndex = line.lastIndexOf(number)\n val newLine = line.substring(0, numberIndex)\n return TextNumberLine(newLine, number.toFloat())\n }\n }\n}","package model\n\nimport core.GroupMap\n\ndata class ChartsBundle(\n val groupMap: GroupMap,\n val charts: List\n)\n\ndata class Chart(\n val emoji: String,\n val label: String,\n // eg format: (before1 -> map { p50 -> 20, p90 -> 30 })\n val dataSets: Map>,\n val bsClass : String = \"col-lg-6\"\n)\n\n\n\n","package model\n\ndata class FormData(\n val data: String,\n val isTestNameDetectionEnabled : Boolean,\n val isAutoGroupEnabled : Boolean\n)\n","package components\n\nimport androidx.compose.runtime.*\nimport kotlinx.browser.window\nimport model.FormData\nimport org.jetbrains.compose.web.attributes.*\nimport org.jetbrains.compose.web.css.marginTop\nimport org.jetbrains.compose.web.css.px\nimport org.jetbrains.compose.web.dom.*\n\n\n\n\n@Composable\nfun FormUi(\n form: FormData,\n shouldSelectUnsaved : Boolean,\n savedBenchmarks: List,\n onFormChanged: (form: FormData) -> Unit,\n onSaveClicked: (form: FormData) -> Unit,\n onSavedBenchmarkChanged: (key :String) -> Unit,\n onLoadBenchmarkClicked: (SavedBenchmarkNode) -> Unit,\n onDeleteBenchmarkClicked: (SavedBenchmarkNode) -> Unit,\n) {\n\n\n LaunchedEffect(Unit) {\n onFormChanged(form)\n }\n\n H3 {\n Text(\"⌨️ Input\")\n }\n\n Div {\n Form {\n\n key(\"inputForm\") {\n\n SavedBenchmarksDropDown(\n shouldSelectUnsaved = shouldSelectUnsaved,\n savedBenchmarks = savedBenchmarks,\n onSavedBenchmarkChanged =onSavedBenchmarkChanged,\n onLoadBenchmarkClicked = onLoadBenchmarkClicked,\n onDeleteBenchmarkClicked = onDeleteBenchmarkClicked\n )\n\n Div(\n attrs = {\n classes(\"form-group\")\n }\n ) {\n\n Label(\n forId = \"benchmark\",\n attrs = {\n classes(\"form-label\")\n }\n ) {\n Text(\"Benchmark :\")\n }\n\n TextArea(\n value = form.data\n ) {\n id(\"benchmark\")\n classes(\"form-control\")\n placeholder(value = \"Benchmark data\")\n rows(20)\n onInput { textInput ->\n onFormChanged(form.copy(data = textInput.value))\n }\n }\n }\n\n Button(\n attrs = {\n classes(\"btn\", \"btn-dark\", \"float-end\")\n style {\n marginTop(10.px)\n }\n if (form.data.isBlank()) {\n attr(\"disabled\", \"true\")\n }\n onClick {\n onSaveClicked(form)\n }\n type(ButtonType.Button)\n }\n ) {\n Text(\"💾 SAVE\")\n }\n }\n }\n }\n}\n","package components\n\nimport androidx.compose.runtime.Composable\nimport org.jetbrains.compose.web.attributes.ButtonType\nimport org.jetbrains.compose.web.attributes.type\nimport org.jetbrains.compose.web.css.marginLeft\nimport org.jetbrains.compose.web.css.px\nimport org.jetbrains.compose.web.dom.*\n\n@Composable\nfun AutoGroup(\n isEnabled: Boolean,\n onButtonClicked: () -> Unit\n) {\n Div(\n attrs = {\n classes(\"form-group\")\n style {\n marginLeft(10.px)\n }\n }\n ) {\n // 🖌 Color map\n\n Label(\n forId = \"colorMap\",\n attrs = {\n classes(\"form-label\")\n }\n ) {\n Text(\"Auto Group:\")\n }\n Br()\n Button(\n attrs = {\n id(\"colorMap\")\n classes(\"btn\", if (isEnabled) \"btn-success\" else \"btn-secondary\")\n onClick {\n onButtonClicked()\n }\n type(ButtonType.Button)\n }\n ) {\n Text(if (isEnabled) \"ON\" else \"OFF\")\n }\n }\n}","package components\n\nimport Chart\nimport androidx.compose.runtime.Composable\nimport androidx.compose.runtime.DisposableEffect\nimport chartjs.Type\nimport core.GroupMap\nimport jso\nimport org.jetbrains.compose.web.css.height\nimport org.jetbrains.compose.web.css.maxHeight\nimport org.jetbrains.compose.web.css.maxWidth\nimport org.jetbrains.compose.web.css.percent\nimport org.jetbrains.compose.web.css.px\nimport org.jetbrains.compose.web.css.width\nimport org.jetbrains.compose.web.dom.Canvas\nimport org.jetbrains.compose.web.dom.H3\nimport org.jetbrains.compose.web.dom.Text\n\n@Composable\nfun ChartUi(\n isColorMapEnabled: Boolean,\n groupMap: GroupMap,\n chartModel: model.Chart,\n onDotClicked : (focusGroup : String) -> Unit\n) {\n H3 { Text(\"${chartModel.emoji} ${chartModel.label}\") }\n\n // Charts\n Canvas(\n attrs = {\n style {\n width(100.percent)\n maxWidth(100.percent)\n\n height(700.px)\n maxHeight(700.px)\n }\n }\n ) {\n DisposableEffect(chartModel, isColorMapEnabled) {\n val dataSets = mutableListOf()\n for ((legend, values) in chartModel.dataSets) {\n\n dataSets.add(\n jso {\n label = legend\n data = values.values.toTypedArray()\n borderColor = if (isColorMapEnabled) {\n groupMap.autoGroupMap[label]\n } else {\n arrayOf(\n \"rgba(255, 99, 132, 1)\",\n \"rgba(54, 162, 235, 1)\",\n \"rgba(255, 206, 86, 1)\",\n \"rgba(75, 192, 192, 1)\",\n \"rgba(153, 102, 255, 1)\",\n \"rgba(255, 159, 64, 1)\"\n )\n }\n borderWidth = 3\n }\n )\n }\n val chart = Chart(scopeElement, jso {\n type = Type.line\n val chartLabels = chartModel.dataSets.values.flatMap { it.keys }.toSet().toTypedArray()\n this.data = jso {\n labels = chartLabels\n datasets = dataSets.toTypedArray()\n\n }\n this.options = jso {\n plugins = jso {\n title = jso {\n display = true\n }\n }\n scales = jso {\n y = jso {\n beginAtZero = true\n }\n }\n onClick = { event: dynamic, elements: Array ->\n if (elements.isNotEmpty()) {\n val element = elements[0]\n val datasetIndex = element.datasetIndex\n val index = element.index\n val focusGroup = chartLabels[index as Int]\n onDotClicked(focusGroup)\n }\n }\n }\n\n\n })\n onDispose {\n chart.destroy()\n }\n }\n }\n\n}","inline fun jso(): T = js(\"({})\")\n\ninline fun jso(builder: T.() -> Unit): T = jso().apply(builder)",null,"package chartjs\n\ninterface Type {\n companion object {\n inline val line: Type get() = Type(\"line\")\n inline val bar: Type get() = Type(\"bar\")\n\n inline val horizontalBar: Type get() = Type(\"horizontalBar\")\n inline val radar: Type get() = Type(\"radar\")\n inline val doughnut: Type get() = Type(\"doughnut\")\n inline val polarArea: Type get() = Type(\"polarArea\")\n inline val bubble: Type get() = Type(\"bubble\")\n inline val pie: Type get() = Type(\"pie\")\n inline val scatter: Type get() = Type(\"scatter\")\n }\n}\n\ninline fun Type(value: String) = value.unsafeCast()","package components\n\nimport androidx.compose.runtime.Composable\nimport org.jetbrains.compose.web.attributes.InputType\nimport org.jetbrains.compose.web.attributes.placeholder\nimport org.jetbrains.compose.web.css.fontSize\nimport org.jetbrains.compose.web.css.px\nimport org.jetbrains.compose.web.dom.Div\nimport org.jetbrains.compose.web.dom.Input\nimport org.jetbrains.compose.web.dom.Label\nimport org.jetbrains.compose.web.dom.Text\n\n@Composable\nfun EditableTitle() {\n Div(\n attrs = {\n classes(\"row\")\n }\n ) {\n Div(\n attrs = {\n classes(\"form-group\")\n }\n ) {\n Label(\n forId = \"customTitle\",\n attrs = {\n classes(\"form-label\")\n }\n ) {\n Text(\"Title :\")\n }\n Input(\n type = InputType.Text,\n ) {\n id(\"customTitle\")\n classes(\"form-control\")\n placeholder(value = \"Custom title goes here\")\n style {\n fontSize(24.px)\n }\n }\n }\n }\n}","package components\n\nimport androidx.compose.runtime.Composable\nimport org.jetbrains.compose.web.dom.Div\nimport org.jetbrains.compose.web.dom.H4\nimport org.jetbrains.compose.web.dom.Text\n\n@Composable\nfun ErrorUi(message: String) {\n Div(attrs = {\n classes(\"row\")\n }) {\n Div(attrs = {\n classes(\"col-lg-12\")\n }) {\n H4(attrs = {\n classes(\"text-center\")\n }) {\n Text(\"❌ $message\")\n }\n }\n }\n}","package components\n\nimport androidx.compose.runtime.Composable\nimport org.jetbrains.compose.web.attributes.selected\nimport org.jetbrains.compose.web.dom.*\n\n\n@Composable\nfun FocusGroups(\n focusGroups: List,\n currentFocusGroup: String?,\n onFocusGroupSelected: (focusGroup: String) -> Unit\n){\n if(focusGroups.isNotEmpty()){\n Div(\n attrs = {\n classes(\"form-group\")\n }\n ) {\n Label(\n forId = \"focusGroups\",\n attrs = {\n classes(\"form-label\")\n }\n ) {\n Text(\"Focus Group :\")\n }\n Select(\n attrs = {\n classes(\"form-select\")\n id(\"focusGroups\")\n onInput {\n it.value?.let { focusGroup ->\n onFocusGroupSelected(focusGroup)\n }\n }\n }\n ) {\n for (focusGroup in focusGroups) {\n Option(\n value = focusGroup,\n attrs = {\n if (focusGroup == currentFocusGroup) {\n selected()\n }\n }\n ) {\n Text(focusGroup)\n }\n }\n }\n }\n }\n}","package components\n\nimport androidx.compose.runtime.Composable\nimport org.jetbrains.compose.web.css.*\nimport org.jetbrains.compose.web.dom.*\n\n\n@Composable\nfun Heading() {\n Div(attrs = {\n classes(\"row\")\n }) {\n Div(attrs = {\n classes(\"col-lg-12\")\n style {\n marginBottom(30.px)\n marginTop(30.px)\n }\n }) {\n H1(attrs = {\n classes(\"text-center\")\n }) { Text(\"📊 benchart\") }\n }\n }\n}","package components\n\nimport kotlinx.serialization.Serializable\n\n@Serializable\ndata class SavedBenchmarkNode(\n val key : String,\n val value : String\n)\n\n@Serializable\ndata class SavedBenchmarks(\n var items : List\n)","package components\n\nimport androidx.compose.runtime.*\nimport org.jetbrains.compose.web.attributes.ButtonType\nimport org.jetbrains.compose.web.attributes.disabled\nimport org.jetbrains.compose.web.attributes.selected\nimport org.jetbrains.compose.web.attributes.type\nimport org.jetbrains.compose.web.css.marginRight\nimport org.jetbrains.compose.web.css.px\nimport org.jetbrains.compose.web.dom.*\nimport kotlin.js.Date\n\nval KEY_UNSAVED_BENCHMARK = \"unsavedBenchmark_${Date().getMilliseconds()}\"\n\n@Composable\nfun SavedBenchmarksDropDown(\n shouldSelectUnsaved: Boolean,\n savedBenchmarks: List,\n onSavedBenchmarkChanged: (key: String) -> Unit,\n onLoadBenchmarkClicked: (SavedBenchmarkNode) -> Unit,\n onDeleteBenchmarkClicked: (SavedBenchmarkNode) -> Unit\n) {\n\n if (savedBenchmarks.isEmpty()) {\n return\n }\n\n var selectedBenchmark by remember(savedBenchmarks) { mutableStateOf(savedBenchmarks.first()) }\n\n\n Label(\n forId = \"savedBenchmarks\",\n attrs = {\n classes(\"form-label\")\n }\n ) {\n Text(\"Load Benchmark :\")\n }\n\n Div(\n attrs = {\n classes(\"form-group\")\n }\n ) {\n Div(\n attrs = {\n classes(\"row\")\n }\n ) {\n\n Div(\n attrs = {\n classes(\"col\")\n }\n ) {\n Select(\n attrs = {\n classes(\"form-select\")\n id(\"savedBenchmarks\")\n onChange {\n it.value?.let { benchmarkKey ->\n onSavedBenchmarkChanged(benchmarkKey)\n selectedBenchmark =\n savedBenchmarks.find { benchmark -> benchmark.key == benchmarkKey }!!\n }\n }\n }\n ) {\n for (savedBenchmark in savedBenchmarks) {\n Option(\n value = savedBenchmark.key,\n attrs = {\n if (savedBenchmark.key == selectedBenchmark.key && !shouldSelectUnsaved) {\n selected()\n }\n }\n ) {\n Text(savedBenchmark.key)\n }\n }\n\n Option(\n value = KEY_UNSAVED_BENCHMARK,\n attrs = {\n if (shouldSelectUnsaved) {\n selected()\n }\n }\n ) {\n Text(\"Unsaved benchmark\")\n }\n }\n }\n\n Div(\n attrs = {\n classes(\"col\")\n }\n ) {\n Button(\n attrs = {\n classes(\"btn\", \"btn-primary\")\n style {\n marginRight(10.px)\n }\n onClick {\n onLoadBenchmarkClicked(selectedBenchmark)\n }\n type(ButtonType.Button)\n\n if (shouldSelectUnsaved) {\n disabled()\n }\n }\n ) {\n Text(\"LOAD\")\n }\n\n Button(\n attrs = {\n classes(\"btn\", \"btn-danger\")\n onClick {\n onDeleteBenchmarkClicked(selectedBenchmark)\n }\n type(ButtonType.Button)\n\n if (shouldSelectUnsaved) {\n disabled()\n }\n }\n ) {\n Text(\"DELETE\")\n }\n }\n }\n }\n}","package components\n\nimport androidx.compose.runtime.Composable\nimport androidx.compose.runtime.key\nimport kotlinx.browser.document\nimport org.jetbrains.compose.web.attributes.AttrsScope\nimport org.jetbrains.compose.web.attributes.ButtonType\nimport org.jetbrains.compose.web.attributes.selected\nimport org.jetbrains.compose.web.attributes.type\nimport org.jetbrains.compose.web.css.fontSize\nimport org.jetbrains.compose.web.css.fontWeight\nimport org.jetbrains.compose.web.css.px\nimport org.jetbrains.compose.web.dom.AttrBuilderContext\nimport org.jetbrains.compose.web.dom.Br\nimport org.jetbrains.compose.web.dom.Button\nimport org.jetbrains.compose.web.dom.ContentBuilder\nimport org.jetbrains.compose.web.dom.Div\nimport org.jetbrains.compose.web.dom.ElementBuilder\nimport org.jetbrains.compose.web.dom.H3\nimport org.jetbrains.compose.web.dom.Li\nimport org.jetbrains.compose.web.dom.Option\nimport org.jetbrains.compose.web.dom.P\nimport org.jetbrains.compose.web.dom.Select\nimport org.jetbrains.compose.web.dom.Small\nimport org.jetbrains.compose.web.dom.Span\nimport org.jetbrains.compose.web.dom.TagElement\nimport org.jetbrains.compose.web.dom.Text\nimport org.jetbrains.compose.web.dom.Ul\nimport org.w3c.dom.Element\nimport org.w3c.dom.HTMLElement\nimport org.w3c.dom.HTMLSpanElement\n\n// P50 : After performed 25% better (-30ms)\nclass SummaryNode(\n val isGeneric: Boolean,\n val emoji: String,\n val segment: String,\n val label: String,\n val percentage: Float,\n val stateWord: String,\n val diff: Float,\n val diffSymbol: String,\n val after: Float,\n val before: Float\n)\n\ndata class Summary(\n val title: String,\n val nodes: List\n)\n\n@Composable\nfun SummaryContainer(\n selector: @Composable () -> Unit,\n summaries: List,\n avgOfCount: Int\n) {\n\n selector()\n Br()\n\n for (summary in summaries) {\n key(summary.title) {\n SummaryUi(summary.title, avgOfCount, summary.nodes)\n Br()\n }\n }\n}\n\n@Composable\nfun SummarySelector(\n bestButtonLabel: String,\n worstButtonLabel: String,\n onBestClicked: () -> Unit,\n onWorstClicked: () -> Unit,\n blockNames: List,\n selectedBlockNameOne: String?,\n selectedBlockNameTwo: String?,\n onBlockOneSelected: (String) -> Unit,\n onBlockTwoSelected: (String) -> Unit,\n) {\n\n Div(\n attrs = {\n classes(\"row\", \"mb-3\")\n }\n ) {\n\n Div(\n attrs = {\n classes(\"col-auto\")\n }\n ) {\n // Best\n Button(\n attrs = {\n classes(\"btn\", \"btn-outline-dark\", \"btn-sm\")\n onClick {\n onBestClicked()\n }\n type(ButtonType.Button)\n }\n ) {\n Text(bestButtonLabel)\n }\n\n }\n Div(\n attrs = {\n classes(\"col-auto\")\n }\n ) {\n // Best\n Button(\n attrs = {\n classes(\"btn\", \"btn-outline-dark\", \"btn-sm\")\n onClick {\n onWorstClicked()\n }\n type(ButtonType.Button)\n }\n ) {\n Text(worstButtonLabel)\n }\n }\n\n }\n\n Div(\n attrs = {\n classes(\"row\")\n }\n ) {\n repeat(2) { index ->\n key(\"block-selector-$index\") {\n Div(\n attrs = {\n classes(\"col\")\n }\n ) {\n Select(\n attrs = {\n classes(\"form-select\")\n onInput {\n it.value?.let { newBlockName ->\n if (index == 0) {\n // first block name\n onBlockOneSelected(newBlockName)\n } else {\n // second block name\n onBlockTwoSelected(newBlockName)\n }\n }\n }\n }\n ) {\n for (blockName in blockNames) {\n Option(\n value = blockName,\n attrs = {\n val selectedBlockName =\n if (index == 0) selectedBlockNameOne else selectedBlockNameTwo\n if (blockName == selectedBlockName) {\n selected()\n }\n }\n ) {\n Text(blockName)\n }\n }\n }\n }\n\n if (index == 0) {\n Div(\n attrs = {\n classes(\"col-auto\")\n }\n ) {\n P {\n Strong {\n Text(\"vs\")\n }\n }\n }\n\n }\n }\n }\n\n }\n\n\n}\n\nprivate open class ElementBuilderImplementation(private val tagName: String) :\n ElementBuilder {\n private val el: Element by lazy { document.createElement(tagName) }\n\n @Suppress(\"UNCHECKED_CAST\")\n override fun create(): TElement = el.cloneNode() as TElement\n}\n\nprivate val Strong: ElementBuilder = ElementBuilderImplementation(\"strong\")\n\n@Composable\nfun Strong(\n attrs: AttrBuilderContext? = null,\n content: ContentBuilder? = null\n) = TagElement(elementBuilder = Strong, applyAttrs = attrs, content = content)\n\n@Composable\nfun SummaryUi(title: String, avgOfCount: Int, summary: List) {\n Div(\n attrs = {\n classes(\"row\")\n }\n ) {\n H3 {\n Text(title)\n if (avgOfCount > 1) {\n Small(\n attrs = {\n classes(\"text-muted\")\n style {\n fontSize(18.px)\n }\n }\n ) {\n Text(\" (average of $avgOfCount)\")\n }\n }\n }\n Ul {\n summary.forEach { node ->\n Li {\n Text(\"${node.emoji} \")\n // ${node.segment} : ${node.label} performed ${node.percentage}%\n BoldText(\n text = node.segment,\n style = {\n classes(\"text-capitalize\")\n }\n )\n Text(\" : \")\n BoldText(node.label)\n Text(if (node.isGeneric) \" looks \" else \" performed \")\n BoldText(\"${node.percentage}% \")\n val postfix = if (node.isGeneric) \"\" else \"ms\"\n Span(\n attrs = {\n val badgeClass = when {\n node.diff == 0f -> \"secondary\"\n node.diff > 0 -> \"danger\"\n else -> \"success\"\n }\n classes(\"badge\", \"bg-$badgeClass\")\n\n attr(\"data-bs-toggle\", \"tooltip\")\n attr(\"data-bs-placement\", \"top\")\n\n attr(\"title\", \"${node.before}$postfix to ${node.after}$postfix\")\n }\n ) {\n Text(node.stateWord)\n }\n Text(\" (${node.diffSymbol}${node.diff}$postfix)\")\n }\n }\n }\n }\n}\n\n@Composable\nprivate fun BoldText(\n text: String,\n style: (AttrsScope.() -> Unit)? = null\n) {\n Span(\n attrs = {\n style?.invoke(this)\n style {\n fontWeight(\"bold\")\n }\n }\n ) {\n Text(text)\n }\n}\n","package components\n\nimport androidx.compose.runtime.Composable\nimport org.jetbrains.compose.web.attributes.ButtonType\nimport org.jetbrains.compose.web.attributes.type\nimport org.jetbrains.compose.web.css.marginLeft\nimport org.jetbrains.compose.web.css.px\nimport org.jetbrains.compose.web.dom.*\n\n@Composable\nfun TestNameDetectionToggle(\n isEnabled: Boolean,\n onButtonClicked: () -> Unit\n) {\n Div(\n attrs = {\n classes(\"form-group\")\n style {\n marginLeft(10.px)\n }\n }\n ) {\n // 🖌 Color map\n\n Label(\n forId = \"testNameDetection\",\n attrs = {\n classes(\"form-label\")\n }\n ) {\n Text(\"Test Name Detection:\")\n }\n Br()\n Button(\n attrs = {\n id(\"testNameDetection\")\n classes(\"btn\", if (isEnabled) \"btn-success\" else \"btn-secondary\")\n onClick {\n onButtonClicked()\n }\n type(ButtonType.Button)\n }\n ) {\n Text(if (isEnabled) \"ON\" else \"OFF\")\n }\n }\n}","package components\n\nimport androidx.compose.runtime.Composable\nimport org.jetbrains.compose.web.attributes.selected\nimport org.jetbrains.compose.web.dom.*\n\n\n@Composable\nfun TestNames(\n testNames: List,\n currentTestName: String? = null,\n onTestNameSelected: (option: String) -> Unit\n){\n if(testNames.isNotEmpty()){\n Div(\n attrs = {\n classes(\"form-group\")\n }\n ) {\n Label(\n forId = \"testNames\",\n attrs = {\n classes(\"form-label\")\n }\n ) {\n Text(\"Test Name :\")\n }\n Select(\n attrs = {\n classes(\"form-select\")\n id(\"testNames\")\n onInput {\n it.value?.let { newTestName ->\n onTestNameSelected(newTestName)\n }\n }\n }\n ) {\n for (testName in testNames) {\n Option(\n value = testName,\n attrs = {\n if (testName == currentTestName) {\n selected()\n }\n }\n ) {\n Text(testName)\n }\n }\n }\n }\n }\n}","import org.jetbrains.compose.web.renderComposable\nimport page.home.HomePageUi\n\nconst val IS_INJECT_DUMMY = true\n\nfun main() {\n\n initChartSettings()\n renderComposable(rootElementId = \"root\") {\n HomePageUi()\n }\n}\n\nprivate fun initChartSettings() {\n Chart.register(\n ArcElement,\n LineElement,\n BarElement,\n PointElement,\n BarController,\n BubbleController,\n DoughnutController,\n LineController,\n PieController,\n PolarAreaController,\n RadarController,\n ScatterController,\n CategoryScale,\n LinearScale,\n LogarithmicScale,\n RadialLinearScale,\n TimeScale,\n TimeSeriesScale,\n Decimation,\n Filler,\n Legend,\n Title,\n Tooltip,\n SubTitle\n )\n}\n","package page.home\n\nimport androidx.compose.runtime.Composable\nimport androidx.compose.runtime.remember\nimport components.AutoGroup\nimport components.ChartUi\nimport components.EditableTitle\nimport components.ErrorUi\nimport components.FocusGroups\nimport components.FormUi\nimport components.Heading\nimport components.SummaryContainer\nimport components.SummarySelector\nimport components.TestNameDetectionToggle\nimport components.TestNames\nimport core.InputType\nimport org.jetbrains.compose.web.css.paddingBottom\nimport org.jetbrains.compose.web.css.paddingLeft\nimport org.jetbrains.compose.web.css.paddingRight\nimport org.jetbrains.compose.web.css.px\nimport org.jetbrains.compose.web.dom.Br\nimport org.jetbrains.compose.web.dom.Div\nimport org.jetbrains.compose.web.dom.Form\nimport org.jetbrains.compose.web.dom.H3\nimport org.jetbrains.compose.web.dom.Text\nimport repo.BenchmarkRepoImpl\nimport repo.FormRepoImpl\n\n@Composable\nfun HomePageUi(\n viewModel: HomeViewModel = remember { HomeViewModel(BenchmarkRepoImpl(), FormRepoImpl()) }\n) {\n Div(\n attrs = {\n classes(\"container-fluid\")\n }\n ) {\n\n // Heading\n Heading()\n\n // Error\n if (viewModel.errorMsg.isNotBlank()) {\n ErrorUi(viewModel.errorMsg)\n }\n\n\n // Main\n Div(attrs = {\n classes(\"row\")\n style {\n paddingLeft(40.px)\n paddingRight(40.px)\n paddingBottom(40.px)\n }\n }) {\n Div(attrs = {\n classes(\"col-lg-4\")\n }) {\n FormUi(\n form = viewModel.form,\n shouldSelectUnsaved = viewModel.shouldSelectUnsaved,\n onFormChanged = viewModel::onFormChanged,\n onSaveClicked = viewModel::onSaveClicked,\n savedBenchmarks = viewModel.savedBenchmarks,\n onSavedBenchmarkChanged = viewModel::onSavedBenchmarkChanged,\n onLoadBenchmarkClicked = viewModel::onLoadBenchmarkClicked,\n onDeleteBenchmarkClicked = viewModel::onDeleteBenchmarkClicked,\n )\n\n Br()\n Br()\n\n SummaryContainer(\n selector = {\n println(\"block size ${viewModel.blockNames.size}\")\n if (viewModel.blockNames.size > 2) {\n SummarySelector(\n bestButtonLabel = \"BEST (-${viewModel.bestAggSummary?.sumOfGreen}${viewModel.unit})\",\n worstButtonLabel = \"WORST (+${viewModel.worstAggSummary?.sumOfRed}${viewModel.unit})\",\n onBestClicked = viewModel::onBestClicked,\n onWorstClicked = viewModel::onWorstClicked,\n blockNames = viewModel.blockNames,\n selectedBlockNameOne = viewModel.selectedBlockNameOne,\n selectedBlockNameTwo = viewModel.selectedBlockNameTwo,\n onBlockOneSelected = viewModel::onBlockNameOneChanged,\n onBlockTwoSelected = viewModel::onBlockNameTwoChanged\n )\n }\n },\n summaries = viewModel.summaries,\n avgOfCount = viewModel.avgOfCount\n )\n }\n\n viewModel.chartsBundle?.charts?.takeIf { it.isNotEmpty() }?.let { fullChartsList ->\n val mainCharts = viewModel.chartsBundle ?: error(\"TSH\")\n Div(\n attrs = {\n classes(\"col-lg-8\")\n }\n ) {\n\n if (viewModel.isEditableTitleEnabled) {\n EditableTitle()\n } else {\n H3(\n attrs = {\n onDoubleClick {\n viewModel.onTitleDoubleClicked()\n }\n }\n ) {\n Text(\"🖥 Output\")\n }\n }\n\n // 🧪 ToolBar\n Div(\n attrs = {\n classes(\"row\")\n }\n ) {\n Form {\n Div(\n attrs = {\n classes(\"row\")\n }\n ) {\n\n Div(\n attrs = {\n classes(\"col-md-2\")\n }\n ) {\n AutoGroup(\n isEnabled = viewModel.form.isAutoGroupEnabled,\n onButtonClicked = viewModel::onToggleAutoGroupClicked\n )\n }\n\n if (viewModel.focusGroups.size > 1) {\n Div(\n attrs = {\n classes(\"col-md-4\")\n }\n ) {\n FocusGroups(\n focusGroups = viewModel.focusGroups,\n currentFocusGroup = viewModel.currentFocusedGroup,\n onFocusGroupSelected = { focusGroup ->\n viewModel.onFocusGroupSelected(focusGroup)\n }\n )\n }\n }\n\n if (viewModel.inputType == InputType.NORMAL_BENCHMARK) {\n Div(\n attrs = {\n classes(\"col-md-2\")\n }\n ) {\n TestNameDetectionToggle(\n isEnabled = viewModel.form.isTestNameDetectionEnabled,\n onButtonClicked = viewModel::onToggleTestNameDetectionClicked\n )\n }\n }\n\n if (viewModel.testNames.isNotEmpty()) {\n Div(\n attrs = {\n classes(\"col-md-4\")\n }\n ) {\n TestNames(\n testNames = viewModel.testNames,\n onTestNameSelected = { newTestName ->\n viewModel.onTestNameSelected(newTestName)\n }\n )\n }\n\n }\n\n }\n }\n }\n\n Br()\n val chunkedCharts = remember(fullChartsList) { fullChartsList.chunked(2) }\n\n\n // 📊 Charts\n for (charts in chunkedCharts) {\n Div(\n attrs = {\n classes(\"row\")\n }\n ) {\n for (chart in charts) {\n // 📊 duration chart\n Div(attrs = {\n classes(chart.bsClass)\n }) {\n ChartUi(\n isColorMapEnabled = viewModel.form.isAutoGroupEnabled,\n groupMap = mainCharts.groupMap,\n chartModel = chart,\n onDotClicked = viewModel::onDotClicked\n ,)\n }\n }\n }\n }\n }\n }\n\n\n }\n }\n}\n","package page.home\n\nimport androidx.compose.runtime.Stable\nimport androidx.compose.runtime.getValue\nimport androidx.compose.runtime.mutableStateListOf\nimport androidx.compose.runtime.mutableStateOf\nimport androidx.compose.runtime.setValue\nimport components.KEY_UNSAVED_BENCHMARK\nimport components.SavedBenchmarkNode\nimport components.Summary\nimport core.BenchmarkResult\nimport core.BenchmarkResult.Companion.FOCUS_GROUP_ALL\nimport core.InputType\nimport core.toCharts\nimport core.toGenericChart\nimport kotlinx.browser.window\nimport model.ChartsBundle\nimport model.FormData\nimport repo.BenchmarkRepo\nimport repo.FormRepo\nimport utils.DefaultValues\nimport utils.SummaryUtils\n\nexternal fun setTimeout(handler: dynamic, timeout: Int): Int\nexternal fun clearTimeout(timeoutId: Int)\n\n\n@Stable\nclass HomeViewModel(\n private val benchmarkRepo: BenchmarkRepo,\n private val formRepo: FormRepo\n) {\n\n companion object {\n private const val ERROR_GENERIC = \"Something went wrong!\"\n\n // keys\n }\n\n var savedBenchmarks by mutableStateOf>(emptyList())\n private set\n\n // States\n private var currentTestName: String? = null\n\n var testNames = mutableStateListOf()\n private set\n\n\n var currentFocusedGroup by mutableStateOf(FOCUS_GROUP_ALL)\n private set\n\n var focusGroups = mutableStateListOf()\n private set\n\n var chartsBundle by mutableStateOf(null)\n private set\n\n var errorMsg by mutableStateOf(\"\")\n private set\n\n var isEditableTitleEnabled by mutableStateOf(false)\n private set\n\n var shouldSelectUnsaved by mutableStateOf(false)\n private set\n\n var selectedBlockNameOne by mutableStateOf(null)\n private set\n\n var selectedBlockNameTwo by mutableStateOf(null)\n private set\n\n var blockNames = mutableStateListOf()\n private set\n\n var avgOfCount by mutableStateOf(-1)\n private set\n\n var summaries = mutableStateListOf()\n private set\n\n var inputType by mutableStateOf(null)\n private set\n\n var unit by mutableStateOf(\"\")\n private set\n\n var bestAggSummary by mutableStateOf(null)\n private set\n\n var worstAggSummary by mutableStateOf(null)\n private set\n\n var form by mutableStateOf(\n formRepo.getFormData() ?: FormData(\n DefaultValues.form,\n isTestNameDetectionEnabled = false,\n isAutoGroupEnabled = false\n )\n )\n private set\n\n init {\n refreshBenchmarks()\n }\n\n\n private fun refreshBenchmarks() {\n savedBenchmarks = benchmarkRepo.getSavedBenchmarks()\n }\n\n // Normal fields\n private val fullBenchmarkResults = mutableListOf()\n\n\n var timeoutId: Int? = null\n fun debounce(func: () -> Unit, delay: Int) {\n timeoutId?.let { clearTimeout(it) }\n timeoutId = setTimeout({\n func()\n }, delay)\n }\n\n fun onFormChanged(unfilteredForm: FormData, shouldSelectUnsaved: Boolean = true) {\n // filtering android log\n form = unfilteredForm.copy(data = filterOutAndroidJunkLog(unfilteredForm.data))\n formRepo.storeFormData(form)\n\n debounce(\n func = {\n\n this.shouldSelectUnsaved = shouldSelectUnsaved\n try {\n // clearing old data\n fullBenchmarkResults.clear()\n testNames.clear()\n focusGroups.clear()\n blockNames.clear()\n\n // refill\n val (inputType, benchmarkResults, focusGroups) = BenchmarkResult.parse(form, currentFocusedGroup)\n ?: run {\n println(\"failed to parse form\")\n reset()\n errorMsg = \"\"\n return@debounce\n }\n this.inputType = inputType\n fullBenchmarkResults.addAll(benchmarkResults)\n this.focusGroups.addAll(focusGroups)\n\n if (!focusGroups.contains(currentFocusedGroup)) {\n currentFocusedGroup = FOCUS_GROUP_ALL\n }\n\n\n avgOfCount = benchmarkResults\n .flatMap {\n it.blockRows.map { blockRow ->\n blockRow.fullData.map { fullData ->\n fullData.value.size\n }\n }\n }.flatten().takeIf { it.isNotEmpty() }?.min() ?: -1\n\n\n when (inputType) {\n InputType.GENERIC -> {\n val newCharts = fullBenchmarkResults.toGenericChart()\n chartsBundle = newCharts\n onChartsBundleUpdated(newCharts)\n unit = \"\"\n }\n\n InputType.NORMAL_BENCHMARK -> {\n\n testNames.addAll(fullBenchmarkResults.mapNotNull { it.testName }.toSet())\n\n val currentTestName = testNames.find { it == currentTestName } ?: testNames.firstOrNull()\n val filteredBenchmarkResult = if (currentTestName != null) {\n fullBenchmarkResults.filter { it.testName == currentTestName }\n } else {\n fullBenchmarkResults\n }\n val newCharts = filteredBenchmarkResult.toCharts()\n chartsBundle = newCharts\n onChartsBundleUpdated(newCharts)\n unit = \"ms\"\n }\n }\n\n\n errorMsg = \"\"\n } catch (e: Throwable) {\n e.printStackTrace()\n errorMsg = e.message ?: ERROR_GENERIC\n reset()\n }\n },\n 300\n )\n }\n\n\n // timestamp eg : 2024-06-29 11:30:46.641\n val fullTimestampRegex = \"\\\\d{4}-\\\\d{2}-\\\\d{2} \\\\d{2}:\\\\d{2}:\\\\d{2}\\\\.\\\\d{3}\".toRegex()\n\n // compact timestamp eg: 11:30:46.865\n val compactTimestampRegex = \"\\\\d{2}:\\\\d{2}:\\\\d{2}\\\\.\\\\d{3}\".toRegex()\n\n val logLevelRegex = \"^(I|D|E|W|V) \".toRegex()\n\n /**\n * this is a custom logic to filter out android junk logs (personal)\n */\n private fun filterOutAndroidJunkLog(data: String): String {\n return data.split(\"\\n\")\n .filterNot { line ->\n // line removal\n line.contains(\"PROCESS ENDED\", ignoreCase = false) ||\n line.contains(\"PROCESS STARTED\", ignoreCase = false)\n }.joinToString(separator = \"\\n\") {\n // line manipulation\n var line = it.replace(fullTimestampRegex, \"\").trimStart()\n line = line.replace(compactTimestampRegex, \"\").trimStart()\n if (line.startsWith(\"System.out \")) {\n line = line.replace(\"System.out \", \"\").trimStart()\n }\n line = line.replace(logLevelRegex, \"\").trimStart()\n line = when {\n line.contains(\"startup type is: cold\") -> {\n \"startup type is: cold\"\n }\n\n line.contains(\"startup type is: warm\") -> {\n \"startup type is: warm\"\n }\n\n line.contains(\"startup type is: hot\") -> {\n \"startup type is: hot\"\n }\n\n else -> {\n line\n }\n }.trimStart()\n line\n }.also {\n println(\"QuickTag: HomeViewModel:filterOutAndroidJunkLog: '$it'\")\n }\n }\n\n private fun reset() {\n selectedBlockNameOne = null\n selectedBlockNameTwo = null\n blockNames.clear()\n chartsBundle = null\n summaries.clear()\n bestAggSummary = null\n worstAggSummary = null\n avgOfCount = -1\n updateSummary()\n }\n\n private fun calcAggSummary() {\n val isGeneric = inputType == InputType.GENERIC\n val newAggSums = mutableListOf()\n for (blockNameOuter in blockNames) {\n for (blockNameInner in blockNames) {\n if (blockNameOuter == blockNameInner) {\n continue\n }\n chartsBundle?.charts?.mapNotNull { chart ->\n SummaryUtils.getSummaryOrThrow(\n isGeneric = isGeneric,\n chart = chart,\n selectedBlockNameOne = blockNameOuter,\n selectedBlockNameTwo = blockNameInner\n )\n }?.let { summaries ->\n var greenSum = 0\n var redSum = 0\n for (summary in summaries) {\n for (node in summary.nodes) {\n when {\n node.diff > 0 -> {\n // bad\n redSum += node.diff.toInt()\n }\n\n node.diff < 0 -> {\n // green\n greenSum -= node.diff.toInt()\n }\n }\n }\n }\n newAggSums.add(AggSummary(blockNameOuter, blockNameInner, sumOfGreen = greenSum, sumOfRed = redSum))\n }\n }\n }\n\n bestAggSummary = newAggSums.maxByOrNull { it.sumOfGreen }\n worstAggSummary = newAggSums.maxByOrNull { it.sumOfRed }\n }\n\n private fun onChartsBundleUpdated(chartsBundle: ChartsBundle) {\n blockNames.clear()\n val blockNames = chartsBundle.groupMap.wordColorMap.keys.toList()\n this.blockNames.addAll(blockNames)\n if (blockNames.size >= 2) {\n selectedBlockNameOne = blockNames[0]\n selectedBlockNameTwo = blockNames[1]\n } else {\n selectedBlockNameOne = null\n selectedBlockNameTwo = null\n }\n updateSummary()\n }\n\n private fun updateSummary() {\n // Calculating duration summary\n summaries.clear()\n\n val isGeneric = inputType == InputType.GENERIC\n val allSummaries = chartsBundle?.charts?.mapNotNull { chart ->\n SummaryUtils.getSummaryOrThrow(\n isGeneric = isGeneric,\n chart = chart,\n selectedBlockNameOne = selectedBlockNameOne,\n selectedBlockNameTwo = selectedBlockNameTwo\n )\n }\n summaries.addAll(allSummaries ?: emptyList())\n calcAggSummary()\n }\n\n fun onTestNameSelected(newTestName: String) {\n try {\n currentTestName = newTestName\n val filteredBenchmarkResult = if (currentTestName != null) {\n fullBenchmarkResults.filter { it.testName == currentTestName }\n } else {\n fullBenchmarkResults\n }\n val newCharts = filteredBenchmarkResult.toCharts()\n chartsBundle = newCharts\n updateSummary()\n errorMsg = \"\"\n } catch (e: Throwable) {\n summaries.clear()\n e.printStackTrace()\n errorMsg = e.message ?: ERROR_GENERIC\n }\n }\n\n fun onFocusGroupSelected(focusGroup: String) {\n currentFocusedGroup = focusGroup\n onFormChanged(form)\n }\n\n fun onTitleDoubleClicked() {\n isEditableTitleEnabled = true\n }\n\n fun onToggleAutoGroupClicked() {\n onFormChanged(form.copy(isAutoGroupEnabled = !form.isAutoGroupEnabled))\n }\n\n fun onToggleTestNameDetectionClicked() {\n onFormChanged(form.copy(isTestNameDetectionEnabled = !form.isTestNameDetectionEnabled))\n }\n\n fun onSaveClicked(formData: FormData) {\n val bName = window.prompt(\"Name: \")\n if (bName.isNullOrBlank()) {\n return\n }\n\n val isExist = savedBenchmarks.find { it.key == bName } != null\n if (isExist) {\n window.alert(\"Bruhh.. $bName exists! Try something else\")\n return\n }\n\n // Appending new benchmark\n val newList = savedBenchmarks.toMutableList().apply {\n add(\n index = 0,\n element = SavedBenchmarkNode(\n key = bName, value = formData.data\n )\n )\n }\n benchmarkRepo.saveBenchmarks(newList)\n shouldSelectUnsaved = false\n refreshBenchmarks()\n }\n\n fun onLoadBenchmarkClicked(savedBenchmarkNode: SavedBenchmarkNode) {\n val newForm = form.copy(data = savedBenchmarkNode.value)\n onFormChanged(newForm, shouldSelectUnsaved = false)\n }\n\n fun onDeleteBenchmarkClicked(deletedBenchmarkNode: SavedBenchmarkNode) {\n val isYes = window.confirm(\n \"Do you want to delete `${deletedBenchmarkNode.key}` ?\"\n )\n\n if (isYes) {\n benchmarkRepo.delete(deletedBenchmarkNode)\n shouldSelectUnsaved = true\n refreshBenchmarks()\n }\n }\n\n fun onSavedBenchmarkChanged(key: String) {\n shouldSelectUnsaved = key == KEY_UNSAVED_BENCHMARK\n if (shouldSelectUnsaved) {\n val newForm = formRepo.getFormData() ?: form\n onFormChanged(newForm, shouldSelectUnsaved = false)\n }\n }\n\n fun onBlockNameOneChanged(newBlockName: String) {\n selectedBlockNameOne = newBlockName\n updateSummary()\n }\n\n fun onBlockNameTwoChanged(newBlockName: String) {\n selectedBlockNameTwo = newBlockName\n updateSummary()\n }\n\n fun onBestClicked() {\n selectedBlockNameOne = bestAggSummary?.blockOneName\n selectedBlockNameTwo = bestAggSummary?.blockTwoName\n updateSummary()\n }\n\n fun onWorstClicked() {\n selectedBlockNameOne = worstAggSummary?.blockOneName\n selectedBlockNameTwo = worstAggSummary?.blockTwoName\n updateSummary()\n }\n\n fun onDotClicked(focusGroup: String) {\n if(focusGroups.contains(focusGroup)){\n onFocusGroupSelected(focusGroup)\n }\n }\n}\n\ndata class AggSummary(\n val blockOneName: String,\n val blockTwoName: String,\n val sumOfGreen: Int,\n val sumOfRed: Int\n)\n","package repo\n\nimport components.SavedBenchmarkNode\nimport components.SavedBenchmarks\nimport kotlinx.browser.window\nimport kotlinx.serialization.decodeFromString\nimport kotlinx.serialization.encodeToString\nimport utils.JsonUtils\n\ninterface BenchmarkRepo {\n fun getSavedBenchmarks(): List\n fun saveBenchmarks(newList: List)\n fun delete(deletedBenchmarkNode: SavedBenchmarkNode)\n}\n\nclass BenchmarkRepoImpl : BenchmarkRepo {\n\n companion object {\n private const val KEY_SAVED_BENCHMARKS = \"savedBenchmarks\"\n }\n\n\n override fun getSavedBenchmarks(): List {\n val savedBenchmarksString = window.localStorage.getItem(KEY_SAVED_BENCHMARKS)\n val savedBenchmark = if (savedBenchmarksString == null) {\n // Creating first saved benchmark\n SavedBenchmarks(items = listOf())\n } else {\n println(\"JSON is '$savedBenchmarksString'\")\n try {\n JsonUtils.json.decodeFromString(savedBenchmarksString)\n }catch (e: Exception){\n e.printStackTrace()\n saveBenchmarks(listOf()) // reset\n SavedBenchmarks(items = listOf())\n }\n }\n\n return savedBenchmark.items.toList()\n }\n\n override fun saveBenchmarks(newList: List) {\n val savedBenchmarks = JsonUtils.json.encodeToString(SavedBenchmarks(newList))\n window.localStorage.setItem(KEY_SAVED_BENCHMARKS, savedBenchmarks)\n }\n\n override fun delete(deletedBenchmarkNode: SavedBenchmarkNode) {\n // Appending new benchmark\n val newList = getSavedBenchmarks().toMutableList().apply {\n removeAll { it.key == deletedBenchmarkNode.key }\n }\n saveBenchmarks(newList)\n }\n\n}","package repo\n\nimport kotlinx.browser.window\nimport model.FormData\n\ninterface FormRepo {\n fun storeFormData(newForm: FormData)\n fun getFormData(): FormData?\n}\n\nclass FormRepoImpl : FormRepo {\n companion object {\n private const val KEY_AUTO_FORM_INPUT = \"auto_form_input\"\n private const val KEY_IS_TEST_NAME_DETECTION_ENABLED = \"is_test_name_detection_enabled\"\n private const val KEY_IS_AUTO_GROUP_ENABLED = \"is_auto_group_enabled\"\n }\n\n override fun storeFormData(newForm: FormData) {\n window.localStorage.apply {\n setItem(KEY_AUTO_FORM_INPUT, newForm.data)\n setItem(KEY_IS_TEST_NAME_DETECTION_ENABLED, newForm.isTestNameDetectionEnabled.toString())\n setItem(KEY_IS_AUTO_GROUP_ENABLED, newForm.isAutoGroupEnabled.toString())\n }\n }\n\n override fun getFormData(): FormData? {\n val localStorage = window.localStorage\n val data = localStorage.getItem(KEY_AUTO_FORM_INPUT) ?: return null\n val isTestNameDetectionEnabled = localStorage.getItem(KEY_IS_TEST_NAME_DETECTION_ENABLED).toBoolean()\n val isAutoGroupEnabled = localStorage.getItem(KEY_IS_AUTO_GROUP_ENABLED).toBoolean()\n return FormData(data, isTestNameDetectionEnabled, isAutoGroupEnabled)\n }\n\n}","package utils\n\nobject DefaultValues {\n val form = \"\"\"\n - Before 1\n # first line will be treated as title of the block\n special chars will be stripped from the title\n HomeScrollBenchmark_scrollTest\n frameDurationCpuMs P50 40.5, P90 45.8, P95 60.4, P99 80.4\n frameOverrunMs P50 -5.9, P90 7.0, P95 20.1, P99 64.4\n Traces: Iteration 0 1 2 3 4\n\n ## Before 2\n # line breaks are used to separate the block\n HomeScrollBenchmark_scrollTest\n frameDurationCpuMs P50 45.5, P90 43.8, P95 58.4, P99 78.4\n frameOverrunMs P50 -6.5, P90 5.4, P95 15.0, P99 60.3\n Traces: Iteration 0 1 2 3 4\n\n After 1\n you can include whatever text you want anywhere you want\n HomeScrollBenchmark_scrollTest\n frameDurationCpuMs P50 13.6, P90 21.8, P95 27.5, P99 49.4\n the order doesn't matter\n frameOverrunMs P50 -6.2, P90 7.3, P95 19.5, P99 61.7\n Traces: Iteration 0 1 2 3 4\n\n > After 2\n HomeScrollBenchmark_scrollTest\n frameDurationCpuMs P50 13.8, P90 21.9, P95 27.3, P99 53.4\n see.. am some random text\n frameOverrunMs P50 -5.7, P90 7.4, P95 22.4, P99 63.2\n Traces: Iteration 0 1 2 3 4\n\"\"\".trimIndent()\n}","package utils\n\nimport kotlinx.serialization.json.Json\n\nobject JsonUtils {\n val json = Json {\n ignoreUnknownKeys = true\n }\n}",null,null,null,null,"package utils\n\nimport components.Summary\nimport components.SummaryNode\nimport core.SupportedMetrics\nimport model.Chart\nimport kotlin.math.absoluteValue\n\nobject SummaryUtils {\n\n fun getSummaryOrThrow(\n isGeneric: Boolean,\n chart: Chart,\n selectedBlockNameOne: String?,\n selectedBlockNameTwo: String?,\n ): Summary? {\n if (selectedBlockNameOne == null || selectedBlockNameTwo == null) {\n println(\"blank block name detected. skipping summary\")\n return null\n }\n\n val combinedMap = mutableMapOf>()\n val words = listOf(selectedBlockNameOne, selectedBlockNameTwo)\n println(\"words : $words\")\n for (word in words) {\n\n combinedMap[word] =\n chart.dataSets.filterKeys { it.startsWith(word) }.values.map { it.values.toFloatArray() }\n .let { arrays ->\n // Sum\n val newArray = mutableListOf().apply {\n repeat(chart.dataSets.values.first().size) {\n add(0f)\n }\n }\n for (array in arrays) {\n for (i in newArray.indices) {\n newArray[i] = newArray[i] + array[i]\n }\n }\n // Average\n for (i in newArray.indices) {\n newArray[i] = newArray[i] / arrays.size\n }\n newArray\n }\n }\n println(\"combinedMap : ${combinedMap.map { it.value.toList() }}\")\n\n val summaryNodes = mutableListOf()\n val segments = chart.dataSets.values.first().keys.toList()\n println(\"segments: $segments\")\n repeat(segments.size) { index ->\n val segment = segments[index]\n val after = combinedMap[words[1]]?.get(index) ?: 0f\n val before = combinedMap[words[0]]?.get(index) ?: 0f\n println(\"before : '$before' -> after: '$after'\")\n val diff = \"${(after - before).asDynamic().toFixed(2)}\".toFloat()\n val percDiff =\n \"${(((before - after) / before) * 100).asDynamic().toFixed(2)}\".toFloat().absoluteValue\n\n val resultWord = if (diff > 0) \"worse\" else \"better\"\n val symbol = if (diff > 0) \"+\" else \"\"\n val emoji = if (diff > 0) \"❌\" else \"✅\"\n\n summaryNodes.add(\n SummaryNode(\n isGeneric = isGeneric,\n emoji = emoji,\n segment = segment,\n label = words[1],\n percentage = percDiff,\n stateWord = resultWord,\n diff = diff,\n diffSymbol = symbol,\n after = \"${after.asDynamic().toFixed(2)}\".toFloat(),\n before = \"${before.asDynamic().toFixed(2)}\".toFloat()\n )\n )\n }\n val title = if (isGeneric) {\n \"📊$selectedBlockNameOne vs $selectedBlockNameTwo\"\n } else {\n val metricConfig = SupportedMetrics.values().find { it.key == chart.label }\n ?: error(\"Unsupported metric name `${chart.label}`\")\n \"${metricConfig.emoji} ${metricConfig.title}\"\n }\n\n return Summary(title = title, summaryNodes)\n }\n}",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,"/*!\n * Chart.js v3.9.1\n * https://www.chartjs.org\n * (c) 2022 Chart.js Contributors\n * Released under the MIT License\n */\nfunction noop() {}\nconst uid = (function() {\n let id = 0;\n return function() {\n return id++;\n };\n}());\nfunction isNullOrUndef(value) {\n return value === null || typeof value === 'undefined';\n}\nfunction isArray(value) {\n if (Array.isArray && Array.isArray(value)) {\n return true;\n }\n const type = Object.prototype.toString.call(value);\n if (type.slice(0, 7) === '[object' && type.slice(-6) === 'Array]') {\n return true;\n }\n return false;\n}\nfunction isObject(value) {\n return value !== null && Object.prototype.toString.call(value) === '[object Object]';\n}\nconst isNumberFinite = (value) => (typeof value === 'number' || value instanceof Number) && isFinite(+value);\nfunction finiteOrDefault(value, defaultValue) {\n return isNumberFinite(value) ? value : defaultValue;\n}\nfunction valueOrDefault(value, defaultValue) {\n return typeof value === 'undefined' ? defaultValue : value;\n}\nconst toPercentage = (value, dimension) =>\n typeof value === 'string' && value.endsWith('%') ?\n parseFloat(value) / 100\n : value / dimension;\nconst toDimension = (value, dimension) =>\n typeof value === 'string' && value.endsWith('%') ?\n parseFloat(value) / 100 * dimension\n : +value;\nfunction callback(fn, args, thisArg) {\n if (fn && typeof fn.call === 'function') {\n return fn.apply(thisArg, args);\n }\n}\nfunction each(loopable, fn, thisArg, reverse) {\n let i, len, keys;\n if (isArray(loopable)) {\n len = loopable.length;\n if (reverse) {\n for (i = len - 1; i >= 0; i--) {\n fn.call(thisArg, loopable[i], i);\n }\n } else {\n for (i = 0; i < len; i++) {\n fn.call(thisArg, loopable[i], i);\n }\n }\n } else if (isObject(loopable)) {\n keys = Object.keys(loopable);\n len = keys.length;\n for (i = 0; i < len; i++) {\n fn.call(thisArg, loopable[keys[i]], keys[i]);\n }\n }\n}\nfunction _elementsEqual(a0, a1) {\n let i, ilen, v0, v1;\n if (!a0 || !a1 || a0.length !== a1.length) {\n return false;\n }\n for (i = 0, ilen = a0.length; i < ilen; ++i) {\n v0 = a0[i];\n v1 = a1[i];\n if (v0.datasetIndex !== v1.datasetIndex || v0.index !== v1.index) {\n return false;\n }\n }\n return true;\n}\nfunction clone$1(source) {\n if (isArray(source)) {\n return source.map(clone$1);\n }\n if (isObject(source)) {\n const target = Object.create(null);\n const keys = Object.keys(source);\n const klen = keys.length;\n let k = 0;\n for (; k < klen; ++k) {\n target[keys[k]] = clone$1(source[keys[k]]);\n }\n return target;\n }\n return source;\n}\nfunction isValidKey(key) {\n return ['__proto__', 'prototype', 'constructor'].indexOf(key) === -1;\n}\nfunction _merger(key, target, source, options) {\n if (!isValidKey(key)) {\n return;\n }\n const tval = target[key];\n const sval = source[key];\n if (isObject(tval) && isObject(sval)) {\n merge(tval, sval, options);\n } else {\n target[key] = clone$1(sval);\n }\n}\nfunction merge(target, source, options) {\n const sources = isArray(source) ? source : [source];\n const ilen = sources.length;\n if (!isObject(target)) {\n return target;\n }\n options = options || {};\n const merger = options.merger || _merger;\n for (let i = 0; i < ilen; ++i) {\n source = sources[i];\n if (!isObject(source)) {\n continue;\n }\n const keys = Object.keys(source);\n for (let k = 0, klen = keys.length; k < klen; ++k) {\n merger(keys[k], target, source, options);\n }\n }\n return target;\n}\nfunction mergeIf(target, source) {\n return merge(target, source, {merger: _mergerIf});\n}\nfunction _mergerIf(key, target, source) {\n if (!isValidKey(key)) {\n return;\n }\n const tval = target[key];\n const sval = source[key];\n if (isObject(tval) && isObject(sval)) {\n mergeIf(tval, sval);\n } else if (!Object.prototype.hasOwnProperty.call(target, key)) {\n target[key] = clone$1(sval);\n }\n}\nfunction _deprecated(scope, value, previous, current) {\n if (value !== undefined) {\n console.warn(scope + ': \"' + previous +\n\t\t\t'\" is deprecated. Please use \"' + current + '\" instead');\n }\n}\nconst keyResolvers = {\n '': v => v,\n x: o => o.x,\n y: o => o.y\n};\nfunction resolveObjectKey(obj, key) {\n const resolver = keyResolvers[key] || (keyResolvers[key] = _getKeyResolver(key));\n return resolver(obj);\n}\nfunction _getKeyResolver(key) {\n const keys = _splitKey(key);\n return obj => {\n for (const k of keys) {\n if (k === '') {\n break;\n }\n obj = obj && obj[k];\n }\n return obj;\n };\n}\nfunction _splitKey(key) {\n const parts = key.split('.');\n const keys = [];\n let tmp = '';\n for (const part of parts) {\n tmp += part;\n if (tmp.endsWith('\\\\')) {\n tmp = tmp.slice(0, -1) + '.';\n } else {\n keys.push(tmp);\n tmp = '';\n }\n }\n return keys;\n}\nfunction _capitalize(str) {\n return str.charAt(0).toUpperCase() + str.slice(1);\n}\nconst defined = (value) => typeof value !== 'undefined';\nconst isFunction = (value) => typeof value === 'function';\nconst setsEqual = (a, b) => {\n if (a.size !== b.size) {\n return false;\n }\n for (const item of a) {\n if (!b.has(item)) {\n return false;\n }\n }\n return true;\n};\nfunction _isClickEvent(e) {\n return e.type === 'mouseup' || e.type === 'click' || e.type === 'contextmenu';\n}\n\nconst PI = Math.PI;\nconst TAU = 2 * PI;\nconst PITAU = TAU + PI;\nconst INFINITY = Number.POSITIVE_INFINITY;\nconst RAD_PER_DEG = PI / 180;\nconst HALF_PI = PI / 2;\nconst QUARTER_PI = PI / 4;\nconst TWO_THIRDS_PI = PI * 2 / 3;\nconst log10 = Math.log10;\nconst sign = Math.sign;\nfunction niceNum(range) {\n const roundedRange = Math.round(range);\n range = almostEquals(range, roundedRange, range / 1000) ? roundedRange : range;\n const niceRange = Math.pow(10, Math.floor(log10(range)));\n const fraction = range / niceRange;\n const niceFraction = fraction <= 1 ? 1 : fraction <= 2 ? 2 : fraction <= 5 ? 5 : 10;\n return niceFraction * niceRange;\n}\nfunction _factorize(value) {\n const result = [];\n const sqrt = Math.sqrt(value);\n let i;\n for (i = 1; i < sqrt; i++) {\n if (value % i === 0) {\n result.push(i);\n result.push(value / i);\n }\n }\n if (sqrt === (sqrt | 0)) {\n result.push(sqrt);\n }\n result.sort((a, b) => a - b).pop();\n return result;\n}\nfunction isNumber(n) {\n return !isNaN(parseFloat(n)) && isFinite(n);\n}\nfunction almostEquals(x, y, epsilon) {\n return Math.abs(x - y) < epsilon;\n}\nfunction almostWhole(x, epsilon) {\n const rounded = Math.round(x);\n return ((rounded - epsilon) <= x) && ((rounded + epsilon) >= x);\n}\nfunction _setMinAndMaxByKey(array, target, property) {\n let i, ilen, value;\n for (i = 0, ilen = array.length; i < ilen; i++) {\n value = array[i][property];\n if (!isNaN(value)) {\n target.min = Math.min(target.min, value);\n target.max = Math.max(target.max, value);\n }\n }\n}\nfunction toRadians(degrees) {\n return degrees * (PI / 180);\n}\nfunction toDegrees(radians) {\n return radians * (180 / PI);\n}\nfunction _decimalPlaces(x) {\n if (!isNumberFinite(x)) {\n return;\n }\n let e = 1;\n let p = 0;\n while (Math.round(x * e) / e !== x) {\n e *= 10;\n p++;\n }\n return p;\n}\nfunction getAngleFromPoint(centrePoint, anglePoint) {\n const distanceFromXCenter = anglePoint.x - centrePoint.x;\n const distanceFromYCenter = anglePoint.y - centrePoint.y;\n const radialDistanceFromCenter = Math.sqrt(distanceFromXCenter * distanceFromXCenter + distanceFromYCenter * distanceFromYCenter);\n let angle = Math.atan2(distanceFromYCenter, distanceFromXCenter);\n if (angle < (-0.5 * PI)) {\n angle += TAU;\n }\n return {\n angle,\n distance: radialDistanceFromCenter\n };\n}\nfunction distanceBetweenPoints(pt1, pt2) {\n return Math.sqrt(Math.pow(pt2.x - pt1.x, 2) + Math.pow(pt2.y - pt1.y, 2));\n}\nfunction _angleDiff(a, b) {\n return (a - b + PITAU) % TAU - PI;\n}\nfunction _normalizeAngle(a) {\n return (a % TAU + TAU) % TAU;\n}\nfunction _angleBetween(angle, start, end, sameAngleIsFullCircle) {\n const a = _normalizeAngle(angle);\n const s = _normalizeAngle(start);\n const e = _normalizeAngle(end);\n const angleToStart = _normalizeAngle(s - a);\n const angleToEnd = _normalizeAngle(e - a);\n const startToAngle = _normalizeAngle(a - s);\n const endToAngle = _normalizeAngle(a - e);\n return a === s || a === e || (sameAngleIsFullCircle && s === e)\n || (angleToStart > angleToEnd && startToAngle < endToAngle);\n}\nfunction _limitValue(value, min, max) {\n return Math.max(min, Math.min(max, value));\n}\nfunction _int16Range(value) {\n return _limitValue(value, -32768, 32767);\n}\nfunction _isBetween(value, start, end, epsilon = 1e-6) {\n return value >= Math.min(start, end) - epsilon && value <= Math.max(start, end) + epsilon;\n}\n\nfunction _lookup(table, value, cmp) {\n cmp = cmp || ((index) => table[index] < value);\n let hi = table.length - 1;\n let lo = 0;\n let mid;\n while (hi - lo > 1) {\n mid = (lo + hi) >> 1;\n if (cmp(mid)) {\n lo = mid;\n } else {\n hi = mid;\n }\n }\n return {lo, hi};\n}\nconst _lookupByKey = (table, key, value, last) =>\n _lookup(table, value, last\n ? index => table[index][key] <= value\n : index => table[index][key] < value);\nconst _rlookupByKey = (table, key, value) =>\n _lookup(table, value, index => table[index][key] >= value);\nfunction _filterBetween(values, min, max) {\n let start = 0;\n let end = values.length;\n while (start < end && values[start] < min) {\n start++;\n }\n while (end > start && values[end - 1] > max) {\n end--;\n }\n return start > 0 || end < values.length\n ? values.slice(start, end)\n : values;\n}\nconst arrayEvents = ['push', 'pop', 'shift', 'splice', 'unshift'];\nfunction listenArrayEvents(array, listener) {\n if (array._chartjs) {\n array._chartjs.listeners.push(listener);\n return;\n }\n Object.defineProperty(array, '_chartjs', {\n configurable: true,\n enumerable: false,\n value: {\n listeners: [listener]\n }\n });\n arrayEvents.forEach((key) => {\n const method = '_onData' + _capitalize(key);\n const base = array[key];\n Object.defineProperty(array, key, {\n configurable: true,\n enumerable: false,\n value(...args) {\n const res = base.apply(this, args);\n array._chartjs.listeners.forEach((object) => {\n if (typeof object[method] === 'function') {\n object[method](...args);\n }\n });\n return res;\n }\n });\n });\n}\nfunction unlistenArrayEvents(array, listener) {\n const stub = array._chartjs;\n if (!stub) {\n return;\n }\n const listeners = stub.listeners;\n const index = listeners.indexOf(listener);\n if (index !== -1) {\n listeners.splice(index, 1);\n }\n if (listeners.length > 0) {\n return;\n }\n arrayEvents.forEach((key) => {\n delete array[key];\n });\n delete array._chartjs;\n}\nfunction _arrayUnique(items) {\n const set = new Set();\n let i, ilen;\n for (i = 0, ilen = items.length; i < ilen; ++i) {\n set.add(items[i]);\n }\n if (set.size === ilen) {\n return items;\n }\n return Array.from(set);\n}\n\nfunction fontString(pixelSize, fontStyle, fontFamily) {\n return fontStyle + ' ' + pixelSize + 'px ' + fontFamily;\n}\nconst requestAnimFrame = (function() {\n if (typeof window === 'undefined') {\n return function(callback) {\n return callback();\n };\n }\n return window.requestAnimationFrame;\n}());\nfunction throttled(fn, thisArg, updateFn) {\n const updateArgs = updateFn || ((args) => Array.prototype.slice.call(args));\n let ticking = false;\n let args = [];\n return function(...rest) {\n args = updateArgs(rest);\n if (!ticking) {\n ticking = true;\n requestAnimFrame.call(window, () => {\n ticking = false;\n fn.apply(thisArg, args);\n });\n }\n };\n}\nfunction debounce(fn, delay) {\n let timeout;\n return function(...args) {\n if (delay) {\n clearTimeout(timeout);\n timeout = setTimeout(fn, delay, args);\n } else {\n fn.apply(this, args);\n }\n return delay;\n };\n}\nconst _toLeftRightCenter = (align) => align === 'start' ? 'left' : align === 'end' ? 'right' : 'center';\nconst _alignStartEnd = (align, start, end) => align === 'start' ? start : align === 'end' ? end : (start + end) / 2;\nconst _textX = (align, left, right, rtl) => {\n const check = rtl ? 'left' : 'right';\n return align === check ? right : align === 'center' ? (left + right) / 2 : left;\n};\nfunction _getStartAndCountOfVisiblePoints(meta, points, animationsDisabled) {\n const pointCount = points.length;\n let start = 0;\n let count = pointCount;\n if (meta._sorted) {\n const {iScale, _parsed} = meta;\n const axis = iScale.axis;\n const {min, max, minDefined, maxDefined} = iScale.getUserBounds();\n if (minDefined) {\n start = _limitValue(Math.min(\n _lookupByKey(_parsed, iScale.axis, min).lo,\n animationsDisabled ? pointCount : _lookupByKey(points, axis, iScale.getPixelForValue(min)).lo),\n 0, pointCount - 1);\n }\n if (maxDefined) {\n count = _limitValue(Math.max(\n _lookupByKey(_parsed, iScale.axis, max, true).hi + 1,\n animationsDisabled ? 0 : _lookupByKey(points, axis, iScale.getPixelForValue(max), true).hi + 1),\n start, pointCount) - start;\n } else {\n count = pointCount - start;\n }\n }\n return {start, count};\n}\nfunction _scaleRangesChanged(meta) {\n const {xScale, yScale, _scaleRanges} = meta;\n const newRanges = {\n xmin: xScale.min,\n xmax: xScale.max,\n ymin: yScale.min,\n ymax: yScale.max\n };\n if (!_scaleRanges) {\n meta._scaleRanges = newRanges;\n return true;\n }\n const changed = _scaleRanges.xmin !== xScale.min\n\t\t|| _scaleRanges.xmax !== xScale.max\n\t\t|| _scaleRanges.ymin !== yScale.min\n\t\t|| _scaleRanges.ymax !== yScale.max;\n Object.assign(_scaleRanges, newRanges);\n return changed;\n}\n\nconst atEdge = (t) => t === 0 || t === 1;\nconst elasticIn = (t, s, p) => -(Math.pow(2, 10 * (t -= 1)) * Math.sin((t - s) * TAU / p));\nconst elasticOut = (t, s, p) => Math.pow(2, -10 * t) * Math.sin((t - s) * TAU / p) + 1;\nconst effects = {\n linear: t => t,\n easeInQuad: t => t * t,\n easeOutQuad: t => -t * (t - 2),\n easeInOutQuad: t => ((t /= 0.5) < 1)\n ? 0.5 * t * t\n : -0.5 * ((--t) * (t - 2) - 1),\n easeInCubic: t => t * t * t,\n easeOutCubic: t => (t -= 1) * t * t + 1,\n easeInOutCubic: t => ((t /= 0.5) < 1)\n ? 0.5 * t * t * t\n : 0.5 * ((t -= 2) * t * t + 2),\n easeInQuart: t => t * t * t * t,\n easeOutQuart: t => -((t -= 1) * t * t * t - 1),\n easeInOutQuart: t => ((t /= 0.5) < 1)\n ? 0.5 * t * t * t * t\n : -0.5 * ((t -= 2) * t * t * t - 2),\n easeInQuint: t => t * t * t * t * t,\n easeOutQuint: t => (t -= 1) * t * t * t * t + 1,\n easeInOutQuint: t => ((t /= 0.5) < 1)\n ? 0.5 * t * t * t * t * t\n : 0.5 * ((t -= 2) * t * t * t * t + 2),\n easeInSine: t => -Math.cos(t * HALF_PI) + 1,\n easeOutSine: t => Math.sin(t * HALF_PI),\n easeInOutSine: t => -0.5 * (Math.cos(PI * t) - 1),\n easeInExpo: t => (t === 0) ? 0 : Math.pow(2, 10 * (t - 1)),\n easeOutExpo: t => (t === 1) ? 1 : -Math.pow(2, -10 * t) + 1,\n easeInOutExpo: t => atEdge(t) ? t : t < 0.5\n ? 0.5 * Math.pow(2, 10 * (t * 2 - 1))\n : 0.5 * (-Math.pow(2, -10 * (t * 2 - 1)) + 2),\n easeInCirc: t => (t >= 1) ? t : -(Math.sqrt(1 - t * t) - 1),\n easeOutCirc: t => Math.sqrt(1 - (t -= 1) * t),\n easeInOutCirc: t => ((t /= 0.5) < 1)\n ? -0.5 * (Math.sqrt(1 - t * t) - 1)\n : 0.5 * (Math.sqrt(1 - (t -= 2) * t) + 1),\n easeInElastic: t => atEdge(t) ? t : elasticIn(t, 0.075, 0.3),\n easeOutElastic: t => atEdge(t) ? t : elasticOut(t, 0.075, 0.3),\n easeInOutElastic(t) {\n const s = 0.1125;\n const p = 0.45;\n return atEdge(t) ? t :\n t < 0.5\n ? 0.5 * elasticIn(t * 2, s, p)\n : 0.5 + 0.5 * elasticOut(t * 2 - 1, s, p);\n },\n easeInBack(t) {\n const s = 1.70158;\n return t * t * ((s + 1) * t - s);\n },\n easeOutBack(t) {\n const s = 1.70158;\n return (t -= 1) * t * ((s + 1) * t + s) + 1;\n },\n easeInOutBack(t) {\n let s = 1.70158;\n if ((t /= 0.5) < 1) {\n return 0.5 * (t * t * (((s *= (1.525)) + 1) * t - s));\n }\n return 0.5 * ((t -= 2) * t * (((s *= (1.525)) + 1) * t + s) + 2);\n },\n easeInBounce: t => 1 - effects.easeOutBounce(1 - t),\n easeOutBounce(t) {\n const m = 7.5625;\n const d = 2.75;\n if (t < (1 / d)) {\n return m * t * t;\n }\n if (t < (2 / d)) {\n return m * (t -= (1.5 / d)) * t + 0.75;\n }\n if (t < (2.5 / d)) {\n return m * (t -= (2.25 / d)) * t + 0.9375;\n }\n return m * (t -= (2.625 / d)) * t + 0.984375;\n },\n easeInOutBounce: t => (t < 0.5)\n ? effects.easeInBounce(t * 2) * 0.5\n : effects.easeOutBounce(t * 2 - 1) * 0.5 + 0.5,\n};\n\n/*!\n * @kurkle/color v0.2.1\n * https://github.com/kurkle/color#readme\n * (c) 2022 Jukka Kurkela\n * Released under the MIT License\n */\nfunction round(v) {\n return v + 0.5 | 0;\n}\nconst lim = (v, l, h) => Math.max(Math.min(v, h), l);\nfunction p2b(v) {\n return lim(round(v * 2.55), 0, 255);\n}\nfunction n2b(v) {\n return lim(round(v * 255), 0, 255);\n}\nfunction b2n(v) {\n return lim(round(v / 2.55) / 100, 0, 1);\n}\nfunction n2p(v) {\n return lim(round(v * 100), 0, 100);\n}\nconst map$1 = {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};\nconst hex = [...'0123456789ABCDEF'];\nconst h1 = b => hex[b & 0xF];\nconst h2 = b => hex[(b & 0xF0) >> 4] + hex[b & 0xF];\nconst eq = b => ((b & 0xF0) >> 4) === (b & 0xF);\nconst isShort = v => eq(v.r) && eq(v.g) && eq(v.b) && eq(v.a);\nfunction hexParse(str) {\n var len = str.length;\n var ret;\n if (str[0] === '#') {\n if (len === 4 || len === 5) {\n ret = {\n r: 255 & map$1[str[1]] * 17,\n g: 255 & map$1[str[2]] * 17,\n b: 255 & map$1[str[3]] * 17,\n a: len === 5 ? map$1[str[4]] * 17 : 255\n };\n } else if (len === 7 || len === 9) {\n ret = {\n r: map$1[str[1]] << 4 | map$1[str[2]],\n g: map$1[str[3]] << 4 | map$1[str[4]],\n b: map$1[str[5]] << 4 | map$1[str[6]],\n a: len === 9 ? (map$1[str[7]] << 4 | map$1[str[8]]) : 255\n };\n }\n }\n return ret;\n}\nconst alpha = (a, f) => a < 255 ? f(a) : '';\nfunction hexString(v) {\n var f = isShort(v) ? h1 : h2;\n return v\n ? '#' + f(v.r) + f(v.g) + f(v.b) + alpha(v.a, f)\n : undefined;\n}\nconst HUE_RE = /^(hsla?|hwb|hsv)\\(\\s*([-+.e\\d]+)(?:deg)?[\\s,]+([-+.e\\d]+)%[\\s,]+([-+.e\\d]+)%(?:[\\s,]+([-+.e\\d]+)(%)?)?\\s*\\)$/;\nfunction hsl2rgbn(h, s, l) {\n const a = s * Math.min(l, 1 - l);\n const f = (n, k = (n + h / 30) % 12) => l - a * Math.max(Math.min(k - 3, 9 - k, 1), -1);\n return [f(0), f(8), f(4)];\n}\nfunction hsv2rgbn(h, s, v) {\n const f = (n, k = (n + h / 60) % 6) => v - v * s * Math.max(Math.min(k, 4 - k, 1), 0);\n return [f(5), f(3), f(1)];\n}\nfunction hwb2rgbn(h, w, b) {\n const rgb = hsl2rgbn(h, 1, 0.5);\n let i;\n if (w + b > 1) {\n i = 1 / (w + b);\n w *= i;\n b *= i;\n }\n for (i = 0; i < 3; i++) {\n rgb[i] *= 1 - w - b;\n rgb[i] += w;\n }\n return rgb;\n}\nfunction hueValue(r, g, b, d, max) {\n if (r === max) {\n return ((g - b) / d) + (g < b ? 6 : 0);\n }\n if (g === max) {\n return (b - r) / d + 2;\n }\n return (r - g) / d + 4;\n}\nfunction rgb2hsl(v) {\n const range = 255;\n const r = v.r / range;\n const g = v.g / range;\n const b = v.b / range;\n const max = Math.max(r, g, b);\n const min = Math.min(r, g, b);\n const l = (max + min) / 2;\n let h, s, d;\n if (max !== min) {\n d = max - min;\n s = l > 0.5 ? d / (2 - max - min) : d / (max + min);\n h = hueValue(r, g, b, d, max);\n h = h * 60 + 0.5;\n }\n return [h | 0, s || 0, l];\n}\nfunction calln(f, a, b, c) {\n return (\n Array.isArray(a)\n ? f(a[0], a[1], a[2])\n : f(a, b, c)\n ).map(n2b);\n}\nfunction hsl2rgb(h, s, l) {\n return calln(hsl2rgbn, h, s, l);\n}\nfunction hwb2rgb(h, w, b) {\n return calln(hwb2rgbn, h, w, b);\n}\nfunction hsv2rgb(h, s, v) {\n return calln(hsv2rgbn, h, s, v);\n}\nfunction hue(h) {\n return (h % 360 + 360) % 360;\n}\nfunction hueParse(str) {\n const m = HUE_RE.exec(str);\n let a = 255;\n let v;\n if (!m) {\n return;\n }\n if (m[5] !== v) {\n a = m[6] ? p2b(+m[5]) : n2b(+m[5]);\n }\n const h = hue(+m[2]);\n const p1 = +m[3] / 100;\n const p2 = +m[4] / 100;\n if (m[1] === 'hwb') {\n v = hwb2rgb(h, p1, p2);\n } else if (m[1] === 'hsv') {\n v = hsv2rgb(h, p1, p2);\n } else {\n v = hsl2rgb(h, p1, p2);\n }\n return {\n r: v[0],\n g: v[1],\n b: v[2],\n a: a\n };\n}\nfunction rotate(v, deg) {\n var h = rgb2hsl(v);\n h[0] = hue(h[0] + deg);\n h = hsl2rgb(h);\n v.r = h[0];\n v.g = h[1];\n v.b = h[2];\n}\nfunction hslString(v) {\n if (!v) {\n return;\n }\n const a = rgb2hsl(v);\n const h = a[0];\n const s = n2p(a[1]);\n const l = n2p(a[2]);\n return v.a < 255\n ? `hsla(${h}, ${s}%, ${l}%, ${b2n(v.a)})`\n : `hsl(${h}, ${s}%, ${l}%)`;\n}\nconst map = {\n x: 'dark',\n Z: 'light',\n Y: 're',\n X: 'blu',\n W: 'gr',\n V: 'medium',\n U: 'slate',\n A: 'ee',\n T: 'ol',\n S: 'or',\n B: 'ra',\n C: 'lateg',\n D: 'ights',\n R: 'in',\n Q: 'turquois',\n E: 'hi',\n P: 'ro',\n O: 'al',\n N: 'le',\n M: 'de',\n L: 'yello',\n F: 'en',\n K: 'ch',\n G: 'arks',\n H: 'ea',\n I: 'ightg',\n J: 'wh'\n};\nconst names$1 = {\n OiceXe: 'f0f8ff',\n antiquewEte: 'faebd7',\n aqua: 'ffff',\n aquamarRe: '7fffd4',\n azuY: 'f0ffff',\n beige: 'f5f5dc',\n bisque: 'ffe4c4',\n black: '0',\n blanKedOmond: 'ffebcd',\n Xe: 'ff',\n XeviTet: '8a2be2',\n bPwn: 'a52a2a',\n burlywood: 'deb887',\n caMtXe: '5f9ea0',\n KartYuse: '7fff00',\n KocTate: 'd2691e',\n cSO: 'ff7f50',\n cSnflowerXe: '6495ed',\n cSnsilk: 'fff8dc',\n crimson: 'dc143c',\n cyan: 'ffff',\n xXe: '8b',\n xcyan: '8b8b',\n xgTMnPd: 'b8860b',\n xWay: 'a9a9a9',\n xgYF: '6400',\n xgYy: 'a9a9a9',\n xkhaki: 'bdb76b',\n xmagFta: '8b008b',\n xTivegYF: '556b2f',\n xSange: 'ff8c00',\n xScEd: '9932cc',\n xYd: '8b0000',\n xsOmon: 'e9967a',\n xsHgYF: '8fbc8f',\n xUXe: '483d8b',\n xUWay: '2f4f4f',\n xUgYy: '2f4f4f',\n xQe: 'ced1',\n xviTet: '9400d3',\n dAppRk: 'ff1493',\n dApskyXe: 'bfff',\n dimWay: '696969',\n dimgYy: '696969',\n dodgerXe: '1e90ff',\n fiYbrick: 'b22222',\n flSOwEte: 'fffaf0',\n foYstWAn: '228b22',\n fuKsia: 'ff00ff',\n gaRsbSo: 'dcdcdc',\n ghostwEte: 'f8f8ff',\n gTd: 'ffd700',\n gTMnPd: 'daa520',\n Way: '808080',\n gYF: '8000',\n gYFLw: 'adff2f',\n gYy: '808080',\n honeyMw: 'f0fff0',\n hotpRk: 'ff69b4',\n RdianYd: 'cd5c5c',\n Rdigo: '4b0082',\n ivSy: 'fffff0',\n khaki: 'f0e68c',\n lavFMr: 'e6e6fa',\n lavFMrXsh: 'fff0f5',\n lawngYF: '7cfc00',\n NmoncEffon: 'fffacd',\n ZXe: 'add8e6',\n ZcSO: 'f08080',\n Zcyan: 'e0ffff',\n ZgTMnPdLw: 'fafad2',\n ZWay: 'd3d3d3',\n ZgYF: '90ee90',\n ZgYy: 'd3d3d3',\n ZpRk: 'ffb6c1',\n ZsOmon: 'ffa07a',\n ZsHgYF: '20b2aa',\n ZskyXe: '87cefa',\n ZUWay: '778899',\n ZUgYy: '778899',\n ZstAlXe: 'b0c4de',\n ZLw: 'ffffe0',\n lime: 'ff00',\n limegYF: '32cd32',\n lRF: 'faf0e6',\n magFta: 'ff00ff',\n maPon: '800000',\n VaquamarRe: '66cdaa',\n VXe: 'cd',\n VScEd: 'ba55d3',\n VpurpN: '9370db',\n VsHgYF: '3cb371',\n VUXe: '7b68ee',\n VsprRggYF: 'fa9a',\n VQe: '48d1cc',\n VviTetYd: 'c71585',\n midnightXe: '191970',\n mRtcYam: 'f5fffa',\n mistyPse: 'ffe4e1',\n moccasR: 'ffe4b5',\n navajowEte: 'ffdead',\n navy: '80',\n Tdlace: 'fdf5e6',\n Tive: '808000',\n TivedBb: '6b8e23',\n Sange: 'ffa500',\n SangeYd: 'ff4500',\n ScEd: 'da70d6',\n pOegTMnPd: 'eee8aa',\n pOegYF: '98fb98',\n pOeQe: 'afeeee',\n pOeviTetYd: 'db7093',\n papayawEp: 'ffefd5',\n pHKpuff: 'ffdab9',\n peru: 'cd853f',\n pRk: 'ffc0cb',\n plum: 'dda0dd',\n powMrXe: 'b0e0e6',\n purpN: '800080',\n YbeccapurpN: '663399',\n Yd: 'ff0000',\n Psybrown: 'bc8f8f',\n PyOXe: '4169e1',\n saddNbPwn: '8b4513',\n sOmon: 'fa8072',\n sandybPwn: 'f4a460',\n sHgYF: '2e8b57',\n sHshell: 'fff5ee',\n siFna: 'a0522d',\n silver: 'c0c0c0',\n skyXe: '87ceeb',\n UXe: '6a5acd',\n UWay: '708090',\n UgYy: '708090',\n snow: 'fffafa',\n sprRggYF: 'ff7f',\n stAlXe: '4682b4',\n tan: 'd2b48c',\n teO: '8080',\n tEstN: 'd8bfd8',\n tomato: 'ff6347',\n Qe: '40e0d0',\n viTet: 'ee82ee',\n JHt: 'f5deb3',\n wEte: 'ffffff',\n wEtesmoke: 'f5f5f5',\n Lw: 'ffff00',\n LwgYF: '9acd32'\n};\nfunction unpack() {\n const unpacked = {};\n const keys = Object.keys(names$1);\n const tkeys = Object.keys(map);\n let i, j, k, ok, nk;\n for (i = 0; i < keys.length; i++) {\n ok = nk = keys[i];\n for (j = 0; j < tkeys.length; j++) {\n k = tkeys[j];\n nk = nk.replace(k, map[k]);\n }\n k = parseInt(names$1[ok], 16);\n unpacked[nk] = [k >> 16 & 0xFF, k >> 8 & 0xFF, k & 0xFF];\n }\n return unpacked;\n}\nlet names;\nfunction nameParse(str) {\n if (!names) {\n names = unpack();\n names.transparent = [0, 0, 0, 0];\n }\n const a = names[str.toLowerCase()];\n return a && {\n r: a[0],\n g: a[1],\n b: a[2],\n a: a.length === 4 ? a[3] : 255\n };\n}\nconst RGB_RE = /^rgba?\\(\\s*([-+.\\d]+)(%)?[\\s,]+([-+.e\\d]+)(%)?[\\s,]+([-+.e\\d]+)(%)?(?:[\\s,/]+([-+.e\\d]+)(%)?)?\\s*\\)$/;\nfunction rgbParse(str) {\n const m = RGB_RE.exec(str);\n let a = 255;\n let r, g, b;\n if (!m) {\n return;\n }\n if (m[7] !== r) {\n const v = +m[7];\n a = m[8] ? p2b(v) : lim(v * 255, 0, 255);\n }\n r = +m[1];\n g = +m[3];\n b = +m[5];\n r = 255 & (m[2] ? p2b(r) : lim(r, 0, 255));\n g = 255 & (m[4] ? p2b(g) : lim(g, 0, 255));\n b = 255 & (m[6] ? p2b(b) : lim(b, 0, 255));\n return {\n r: r,\n g: g,\n b: b,\n a: a\n };\n}\nfunction rgbString(v) {\n return v && (\n v.a < 255\n ? `rgba(${v.r}, ${v.g}, ${v.b}, ${b2n(v.a)})`\n : `rgb(${v.r}, ${v.g}, ${v.b})`\n );\n}\nconst to = v => v <= 0.0031308 ? v * 12.92 : Math.pow(v, 1.0 / 2.4) * 1.055 - 0.055;\nconst from = v => v <= 0.04045 ? v / 12.92 : Math.pow((v + 0.055) / 1.055, 2.4);\nfunction interpolate(rgb1, rgb2, t) {\n const r = from(b2n(rgb1.r));\n const g = from(b2n(rgb1.g));\n const b = from(b2n(rgb1.b));\n return {\n r: n2b(to(r + t * (from(b2n(rgb2.r)) - r))),\n g: n2b(to(g + t * (from(b2n(rgb2.g)) - g))),\n b: n2b(to(b + t * (from(b2n(rgb2.b)) - b))),\n a: rgb1.a + t * (rgb2.a - rgb1.a)\n };\n}\nfunction modHSL(v, i, ratio) {\n if (v) {\n let tmp = rgb2hsl(v);\n tmp[i] = Math.max(0, Math.min(tmp[i] + tmp[i] * ratio, i === 0 ? 360 : 1));\n tmp = hsl2rgb(tmp);\n v.r = tmp[0];\n v.g = tmp[1];\n v.b = tmp[2];\n }\n}\nfunction clone(v, proto) {\n return v ? Object.assign(proto || {}, v) : v;\n}\nfunction fromObject(input) {\n var v = {r: 0, g: 0, b: 0, a: 255};\n if (Array.isArray(input)) {\n if (input.length >= 3) {\n v = {r: input[0], g: input[1], b: input[2], a: 255};\n if (input.length > 3) {\n v.a = n2b(input[3]);\n }\n }\n } else {\n v = clone(input, {r: 0, g: 0, b: 0, a: 1});\n v.a = n2b(v.a);\n }\n return v;\n}\nfunction functionParse(str) {\n if (str.charAt(0) === 'r') {\n return rgbParse(str);\n }\n return hueParse(str);\n}\nclass Color {\n constructor(input) {\n if (input instanceof Color) {\n return input;\n }\n const type = typeof input;\n let v;\n if (type === 'object') {\n v = fromObject(input);\n } else if (type === 'string') {\n v = hexParse(input) || nameParse(input) || functionParse(input);\n }\n this._rgb = v;\n this._valid = !!v;\n }\n get valid() {\n return this._valid;\n }\n get rgb() {\n var v = clone(this._rgb);\n if (v) {\n v.a = b2n(v.a);\n }\n return v;\n }\n set rgb(obj) {\n this._rgb = fromObject(obj);\n }\n rgbString() {\n return this._valid ? rgbString(this._rgb) : undefined;\n }\n hexString() {\n return this._valid ? hexString(this._rgb) : undefined;\n }\n hslString() {\n return this._valid ? hslString(this._rgb) : undefined;\n }\n mix(color, weight) {\n if (color) {\n const c1 = this.rgb;\n const c2 = color.rgb;\n let w2;\n const p = weight === w2 ? 0.5 : weight;\n const w = 2 * p - 1;\n const a = c1.a - c2.a;\n const w1 = ((w * a === -1 ? w : (w + a) / (1 + w * a)) + 1) / 2.0;\n w2 = 1 - w1;\n c1.r = 0xFF & w1 * c1.r + w2 * c2.r + 0.5;\n c1.g = 0xFF & w1 * c1.g + w2 * c2.g + 0.5;\n c1.b = 0xFF & w1 * c1.b + w2 * c2.b + 0.5;\n c1.a = p * c1.a + (1 - p) * c2.a;\n this.rgb = c1;\n }\n return this;\n }\n interpolate(color, t) {\n if (color) {\n this._rgb = interpolate(this._rgb, color._rgb, t);\n }\n return this;\n }\n clone() {\n return new Color(this.rgb);\n }\n alpha(a) {\n this._rgb.a = n2b(a);\n return this;\n }\n clearer(ratio) {\n const rgb = this._rgb;\n rgb.a *= 1 - ratio;\n return this;\n }\n greyscale() {\n const rgb = this._rgb;\n const val = round(rgb.r * 0.3 + rgb.g * 0.59 + rgb.b * 0.11);\n rgb.r = rgb.g = rgb.b = val;\n return this;\n }\n opaquer(ratio) {\n const rgb = this._rgb;\n rgb.a *= 1 + ratio;\n return this;\n }\n negate() {\n const v = this._rgb;\n v.r = 255 - v.r;\n v.g = 255 - v.g;\n v.b = 255 - v.b;\n return this;\n }\n lighten(ratio) {\n modHSL(this._rgb, 2, ratio);\n return this;\n }\n darken(ratio) {\n modHSL(this._rgb, 2, -ratio);\n return this;\n }\n saturate(ratio) {\n modHSL(this._rgb, 1, ratio);\n return this;\n }\n desaturate(ratio) {\n modHSL(this._rgb, 1, -ratio);\n return this;\n }\n rotate(deg) {\n rotate(this._rgb, deg);\n return this;\n }\n}\nfunction index_esm(input) {\n return new Color(input);\n}\n\nfunction isPatternOrGradient(value) {\n if (value && typeof value === 'object') {\n const type = value.toString();\n return type === '[object CanvasPattern]' || type === '[object CanvasGradient]';\n }\n return false;\n}\nfunction color(value) {\n return isPatternOrGradient(value) ? value : index_esm(value);\n}\nfunction getHoverColor(value) {\n return isPatternOrGradient(value)\n ? value\n : index_esm(value).saturate(0.5).darken(0.1).hexString();\n}\n\nconst overrides = Object.create(null);\nconst descriptors = Object.create(null);\nfunction getScope$1(node, key) {\n if (!key) {\n return node;\n }\n const keys = key.split('.');\n for (let i = 0, n = keys.length; i < n; ++i) {\n const k = keys[i];\n node = node[k] || (node[k] = Object.create(null));\n }\n return node;\n}\nfunction set(root, scope, values) {\n if (typeof scope === 'string') {\n return merge(getScope$1(root, scope), values);\n }\n return merge(getScope$1(root, ''), scope);\n}\nclass Defaults {\n constructor(_descriptors) {\n this.animation = undefined;\n this.backgroundColor = 'rgba(0,0,0,0.1)';\n this.borderColor = 'rgba(0,0,0,0.1)';\n this.color = '#666';\n this.datasets = {};\n this.devicePixelRatio = (context) => context.chart.platform.getDevicePixelRatio();\n this.elements = {};\n this.events = [\n 'mousemove',\n 'mouseout',\n 'click',\n 'touchstart',\n 'touchmove'\n ];\n this.font = {\n family: \"'Helvetica Neue', 'Helvetica', 'Arial', sans-serif\",\n size: 12,\n style: 'normal',\n lineHeight: 1.2,\n weight: null\n };\n this.hover = {};\n this.hoverBackgroundColor = (ctx, options) => getHoverColor(options.backgroundColor);\n this.hoverBorderColor = (ctx, options) => getHoverColor(options.borderColor);\n this.hoverColor = (ctx, options) => getHoverColor(options.color);\n this.indexAxis = 'x';\n this.interaction = {\n mode: 'nearest',\n intersect: true,\n includeInvisible: false\n };\n this.maintainAspectRatio = true;\n this.onHover = null;\n this.onClick = null;\n this.parsing = true;\n this.plugins = {};\n this.responsive = true;\n this.scale = undefined;\n this.scales = {};\n this.showLine = true;\n this.drawActiveElementsOnTop = true;\n this.describe(_descriptors);\n }\n set(scope, values) {\n return set(this, scope, values);\n }\n get(scope) {\n return getScope$1(this, scope);\n }\n describe(scope, values) {\n return set(descriptors, scope, values);\n }\n override(scope, values) {\n return set(overrides, scope, values);\n }\n route(scope, name, targetScope, targetName) {\n const scopeObject = getScope$1(this, scope);\n const targetScopeObject = getScope$1(this, targetScope);\n const privateName = '_' + name;\n Object.defineProperties(scopeObject, {\n [privateName]: {\n value: scopeObject[name],\n writable: true\n },\n [name]: {\n enumerable: true,\n get() {\n const local = this[privateName];\n const target = targetScopeObject[targetName];\n if (isObject(local)) {\n return Object.assign({}, target, local);\n }\n return valueOrDefault(local, target);\n },\n set(value) {\n this[privateName] = value;\n }\n }\n });\n }\n}\nvar defaults = new Defaults({\n _scriptable: (name) => !name.startsWith('on'),\n _indexable: (name) => name !== 'events',\n hover: {\n _fallback: 'interaction'\n },\n interaction: {\n _scriptable: false,\n _indexable: false,\n }\n});\n\nfunction toFontString(font) {\n if (!font || isNullOrUndef(font.size) || isNullOrUndef(font.family)) {\n return null;\n }\n return (font.style ? font.style + ' ' : '')\n\t\t+ (font.weight ? font.weight + ' ' : '')\n\t\t+ font.size + 'px '\n\t\t+ font.family;\n}\nfunction _measureText(ctx, data, gc, longest, string) {\n let textWidth = data[string];\n if (!textWidth) {\n textWidth = data[string] = ctx.measureText(string).width;\n gc.push(string);\n }\n if (textWidth > longest) {\n longest = textWidth;\n }\n return longest;\n}\nfunction _longestText(ctx, font, arrayOfThings, cache) {\n cache = cache || {};\n let data = cache.data = cache.data || {};\n let gc = cache.garbageCollect = cache.garbageCollect || [];\n if (cache.font !== font) {\n data = cache.data = {};\n gc = cache.garbageCollect = [];\n cache.font = font;\n }\n ctx.save();\n ctx.font = font;\n let longest = 0;\n const ilen = arrayOfThings.length;\n let i, j, jlen, thing, nestedThing;\n for (i = 0; i < ilen; i++) {\n thing = arrayOfThings[i];\n if (thing !== undefined && thing !== null && isArray(thing) !== true) {\n longest = _measureText(ctx, data, gc, longest, thing);\n } else if (isArray(thing)) {\n for (j = 0, jlen = thing.length; j < jlen; j++) {\n nestedThing = thing[j];\n if (nestedThing !== undefined && nestedThing !== null && !isArray(nestedThing)) {\n longest = _measureText(ctx, data, gc, longest, nestedThing);\n }\n }\n }\n }\n ctx.restore();\n const gcLen = gc.length / 2;\n if (gcLen > arrayOfThings.length) {\n for (i = 0; i < gcLen; i++) {\n delete data[gc[i]];\n }\n gc.splice(0, gcLen);\n }\n return longest;\n}\nfunction _alignPixel(chart, pixel, width) {\n const devicePixelRatio = chart.currentDevicePixelRatio;\n const halfWidth = width !== 0 ? Math.max(width / 2, 0.5) : 0;\n return Math.round((pixel - halfWidth) * devicePixelRatio) / devicePixelRatio + halfWidth;\n}\nfunction clearCanvas(canvas, ctx) {\n ctx = ctx || canvas.getContext('2d');\n ctx.save();\n ctx.resetTransform();\n ctx.clearRect(0, 0, canvas.width, canvas.height);\n ctx.restore();\n}\nfunction drawPoint(ctx, options, x, y) {\n drawPointLegend(ctx, options, x, y, null);\n}\nfunction drawPointLegend(ctx, options, x, y, w) {\n let type, xOffset, yOffset, size, cornerRadius, width;\n const style = options.pointStyle;\n const rotation = options.rotation;\n const radius = options.radius;\n let rad = (rotation || 0) * RAD_PER_DEG;\n if (style && typeof style === 'object') {\n type = style.toString();\n if (type === '[object HTMLImageElement]' || type === '[object HTMLCanvasElement]') {\n ctx.save();\n ctx.translate(x, y);\n ctx.rotate(rad);\n ctx.drawImage(style, -style.width / 2, -style.height / 2, style.width, style.height);\n ctx.restore();\n return;\n }\n }\n if (isNaN(radius) || radius <= 0) {\n return;\n }\n ctx.beginPath();\n switch (style) {\n default:\n if (w) {\n ctx.ellipse(x, y, w / 2, radius, 0, 0, TAU);\n } else {\n ctx.arc(x, y, radius, 0, TAU);\n }\n ctx.closePath();\n break;\n case 'triangle':\n ctx.moveTo(x + Math.sin(rad) * radius, y - Math.cos(rad) * radius);\n rad += TWO_THIRDS_PI;\n ctx.lineTo(x + Math.sin(rad) * radius, y - Math.cos(rad) * radius);\n rad += TWO_THIRDS_PI;\n ctx.lineTo(x + Math.sin(rad) * radius, y - Math.cos(rad) * radius);\n ctx.closePath();\n break;\n case 'rectRounded':\n cornerRadius = radius * 0.516;\n size = radius - cornerRadius;\n xOffset = Math.cos(rad + QUARTER_PI) * size;\n yOffset = Math.sin(rad + QUARTER_PI) * size;\n ctx.arc(x - xOffset, y - yOffset, cornerRadius, rad - PI, rad - HALF_PI);\n ctx.arc(x + yOffset, y - xOffset, cornerRadius, rad - HALF_PI, rad);\n ctx.arc(x + xOffset, y + yOffset, cornerRadius, rad, rad + HALF_PI);\n ctx.arc(x - yOffset, y + xOffset, cornerRadius, rad + HALF_PI, rad + PI);\n ctx.closePath();\n break;\n case 'rect':\n if (!rotation) {\n size = Math.SQRT1_2 * radius;\n width = w ? w / 2 : size;\n ctx.rect(x - width, y - size, 2 * width, 2 * size);\n break;\n }\n rad += QUARTER_PI;\n case 'rectRot':\n xOffset = Math.cos(rad) * radius;\n yOffset = Math.sin(rad) * radius;\n ctx.moveTo(x - xOffset, y - yOffset);\n ctx.lineTo(x + yOffset, y - xOffset);\n ctx.lineTo(x + xOffset, y + yOffset);\n ctx.lineTo(x - yOffset, y + xOffset);\n ctx.closePath();\n break;\n case 'crossRot':\n rad += QUARTER_PI;\n case 'cross':\n xOffset = Math.cos(rad) * radius;\n yOffset = Math.sin(rad) * radius;\n ctx.moveTo(x - xOffset, y - yOffset);\n ctx.lineTo(x + xOffset, y + yOffset);\n ctx.moveTo(x + yOffset, y - xOffset);\n ctx.lineTo(x - yOffset, y + xOffset);\n break;\n case 'star':\n xOffset = Math.cos(rad) * radius;\n yOffset = Math.sin(rad) * radius;\n ctx.moveTo(x - xOffset, y - yOffset);\n ctx.lineTo(x + xOffset, y + yOffset);\n ctx.moveTo(x + yOffset, y - xOffset);\n ctx.lineTo(x - yOffset, y + xOffset);\n rad += QUARTER_PI;\n xOffset = Math.cos(rad) * radius;\n yOffset = Math.sin(rad) * radius;\n ctx.moveTo(x - xOffset, y - yOffset);\n ctx.lineTo(x + xOffset, y + yOffset);\n ctx.moveTo(x + yOffset, y - xOffset);\n ctx.lineTo(x - yOffset, y + xOffset);\n break;\n case 'line':\n xOffset = w ? w / 2 : Math.cos(rad) * radius;\n yOffset = Math.sin(rad) * radius;\n ctx.moveTo(x - xOffset, y - yOffset);\n ctx.lineTo(x + xOffset, y + yOffset);\n break;\n case 'dash':\n ctx.moveTo(x, y);\n ctx.lineTo(x + Math.cos(rad) * radius, y + Math.sin(rad) * radius);\n break;\n }\n ctx.fill();\n if (options.borderWidth > 0) {\n ctx.stroke();\n }\n}\nfunction _isPointInArea(point, area, margin) {\n margin = margin || 0.5;\n return !area || (point && point.x > area.left - margin && point.x < area.right + margin &&\n\t\tpoint.y > area.top - margin && point.y < area.bottom + margin);\n}\nfunction clipArea(ctx, area) {\n ctx.save();\n ctx.beginPath();\n ctx.rect(area.left, area.top, area.right - area.left, area.bottom - area.top);\n ctx.clip();\n}\nfunction unclipArea(ctx) {\n ctx.restore();\n}\nfunction _steppedLineTo(ctx, previous, target, flip, mode) {\n if (!previous) {\n return ctx.lineTo(target.x, target.y);\n }\n if (mode === 'middle') {\n const midpoint = (previous.x + target.x) / 2.0;\n ctx.lineTo(midpoint, previous.y);\n ctx.lineTo(midpoint, target.y);\n } else if (mode === 'after' !== !!flip) {\n ctx.lineTo(previous.x, target.y);\n } else {\n ctx.lineTo(target.x, previous.y);\n }\n ctx.lineTo(target.x, target.y);\n}\nfunction _bezierCurveTo(ctx, previous, target, flip) {\n if (!previous) {\n return ctx.lineTo(target.x, target.y);\n }\n ctx.bezierCurveTo(\n flip ? previous.cp1x : previous.cp2x,\n flip ? previous.cp1y : previous.cp2y,\n flip ? target.cp2x : target.cp1x,\n flip ? target.cp2y : target.cp1y,\n target.x,\n target.y);\n}\nfunction renderText(ctx, text, x, y, font, opts = {}) {\n const lines = isArray(text) ? text : [text];\n const stroke = opts.strokeWidth > 0 && opts.strokeColor !== '';\n let i, line;\n ctx.save();\n ctx.font = font.string;\n setRenderOpts(ctx, opts);\n for (i = 0; i < lines.length; ++i) {\n line = lines[i];\n if (stroke) {\n if (opts.strokeColor) {\n ctx.strokeStyle = opts.strokeColor;\n }\n if (!isNullOrUndef(opts.strokeWidth)) {\n ctx.lineWidth = opts.strokeWidth;\n }\n ctx.strokeText(line, x, y, opts.maxWidth);\n }\n ctx.fillText(line, x, y, opts.maxWidth);\n decorateText(ctx, x, y, line, opts);\n y += font.lineHeight;\n }\n ctx.restore();\n}\nfunction setRenderOpts(ctx, opts) {\n if (opts.translation) {\n ctx.translate(opts.translation[0], opts.translation[1]);\n }\n if (!isNullOrUndef(opts.rotation)) {\n ctx.rotate(opts.rotation);\n }\n if (opts.color) {\n ctx.fillStyle = opts.color;\n }\n if (opts.textAlign) {\n ctx.textAlign = opts.textAlign;\n }\n if (opts.textBaseline) {\n ctx.textBaseline = opts.textBaseline;\n }\n}\nfunction decorateText(ctx, x, y, line, opts) {\n if (opts.strikethrough || opts.underline) {\n const metrics = ctx.measureText(line);\n const left = x - metrics.actualBoundingBoxLeft;\n const right = x + metrics.actualBoundingBoxRight;\n const top = y - metrics.actualBoundingBoxAscent;\n const bottom = y + metrics.actualBoundingBoxDescent;\n const yDecoration = opts.strikethrough ? (top + bottom) / 2 : bottom;\n ctx.strokeStyle = ctx.fillStyle;\n ctx.beginPath();\n ctx.lineWidth = opts.decorationWidth || 2;\n ctx.moveTo(left, yDecoration);\n ctx.lineTo(right, yDecoration);\n ctx.stroke();\n }\n}\nfunction addRoundedRectPath(ctx, rect) {\n const {x, y, w, h, radius} = rect;\n ctx.arc(x + radius.topLeft, y + radius.topLeft, radius.topLeft, -HALF_PI, PI, true);\n ctx.lineTo(x, y + h - radius.bottomLeft);\n ctx.arc(x + radius.bottomLeft, y + h - radius.bottomLeft, radius.bottomLeft, PI, HALF_PI, true);\n ctx.lineTo(x + w - radius.bottomRight, y + h);\n ctx.arc(x + w - radius.bottomRight, y + h - radius.bottomRight, radius.bottomRight, HALF_PI, 0, true);\n ctx.lineTo(x + w, y + radius.topRight);\n ctx.arc(x + w - radius.topRight, y + radius.topRight, radius.topRight, 0, -HALF_PI, true);\n ctx.lineTo(x + radius.topLeft, y);\n}\n\nconst LINE_HEIGHT = new RegExp(/^(normal|(\\d+(?:\\.\\d+)?)(px|em|%)?)$/);\nconst FONT_STYLE = new RegExp(/^(normal|italic|initial|inherit|unset|(oblique( -?[0-9]?[0-9]deg)?))$/);\nfunction toLineHeight(value, size) {\n const matches = ('' + value).match(LINE_HEIGHT);\n if (!matches || matches[1] === 'normal') {\n return size * 1.2;\n }\n value = +matches[2];\n switch (matches[3]) {\n case 'px':\n return value;\n case '%':\n value /= 100;\n break;\n }\n return size * value;\n}\nconst numberOrZero = v => +v || 0;\nfunction _readValueToProps(value, props) {\n const ret = {};\n const objProps = isObject(props);\n const keys = objProps ? Object.keys(props) : props;\n const read = isObject(value)\n ? objProps\n ? prop => valueOrDefault(value[prop], value[props[prop]])\n : prop => value[prop]\n : () => value;\n for (const prop of keys) {\n ret[prop] = numberOrZero(read(prop));\n }\n return ret;\n}\nfunction toTRBL(value) {\n return _readValueToProps(value, {top: 'y', right: 'x', bottom: 'y', left: 'x'});\n}\nfunction toTRBLCorners(value) {\n return _readValueToProps(value, ['topLeft', 'topRight', 'bottomLeft', 'bottomRight']);\n}\nfunction toPadding(value) {\n const obj = toTRBL(value);\n obj.width = obj.left + obj.right;\n obj.height = obj.top + obj.bottom;\n return obj;\n}\nfunction toFont(options, fallback) {\n options = options || {};\n fallback = fallback || defaults.font;\n let size = valueOrDefault(options.size, fallback.size);\n if (typeof size === 'string') {\n size = parseInt(size, 10);\n }\n let style = valueOrDefault(options.style, fallback.style);\n if (style && !('' + style).match(FONT_STYLE)) {\n console.warn('Invalid font style specified: \"' + style + '\"');\n style = '';\n }\n const font = {\n family: valueOrDefault(options.family, fallback.family),\n lineHeight: toLineHeight(valueOrDefault(options.lineHeight, fallback.lineHeight), size),\n size,\n style,\n weight: valueOrDefault(options.weight, fallback.weight),\n string: ''\n };\n font.string = toFontString(font);\n return font;\n}\nfunction resolve(inputs, context, index, info) {\n let cacheable = true;\n let i, ilen, value;\n for (i = 0, ilen = inputs.length; i < ilen; ++i) {\n value = inputs[i];\n if (value === undefined) {\n continue;\n }\n if (context !== undefined && typeof value === 'function') {\n value = value(context);\n cacheable = false;\n }\n if (index !== undefined && isArray(value)) {\n value = value[index % value.length];\n cacheable = false;\n }\n if (value !== undefined) {\n if (info && !cacheable) {\n info.cacheable = false;\n }\n return value;\n }\n }\n}\nfunction _addGrace(minmax, grace, beginAtZero) {\n const {min, max} = minmax;\n const change = toDimension(grace, (max - min) / 2);\n const keepZero = (value, add) => beginAtZero && value === 0 ? 0 : value + add;\n return {\n min: keepZero(min, -Math.abs(change)),\n max: keepZero(max, change)\n };\n}\nfunction createContext(parentContext, context) {\n return Object.assign(Object.create(parentContext), context);\n}\n\nfunction _createResolver(scopes, prefixes = [''], rootScopes = scopes, fallback, getTarget = () => scopes[0]) {\n if (!defined(fallback)) {\n fallback = _resolve('_fallback', scopes);\n }\n const cache = {\n [Symbol.toStringTag]: 'Object',\n _cacheable: true,\n _scopes: scopes,\n _rootScopes: rootScopes,\n _fallback: fallback,\n _getTarget: getTarget,\n override: (scope) => _createResolver([scope, ...scopes], prefixes, rootScopes, fallback),\n };\n return new Proxy(cache, {\n deleteProperty(target, prop) {\n delete target[prop];\n delete target._keys;\n delete scopes[0][prop];\n return true;\n },\n get(target, prop) {\n return _cached(target, prop,\n () => _resolveWithPrefixes(prop, prefixes, scopes, target));\n },\n getOwnPropertyDescriptor(target, prop) {\n return Reflect.getOwnPropertyDescriptor(target._scopes[0], prop);\n },\n getPrototypeOf() {\n return Reflect.getPrototypeOf(scopes[0]);\n },\n has(target, prop) {\n return getKeysFromAllScopes(target).includes(prop);\n },\n ownKeys(target) {\n return getKeysFromAllScopes(target);\n },\n set(target, prop, value) {\n const storage = target._storage || (target._storage = getTarget());\n target[prop] = storage[prop] = value;\n delete target._keys;\n return true;\n }\n });\n}\nfunction _attachContext(proxy, context, subProxy, descriptorDefaults) {\n const cache = {\n _cacheable: false,\n _proxy: proxy,\n _context: context,\n _subProxy: subProxy,\n _stack: new Set(),\n _descriptors: _descriptors(proxy, descriptorDefaults),\n setContext: (ctx) => _attachContext(proxy, ctx, subProxy, descriptorDefaults),\n override: (scope) => _attachContext(proxy.override(scope), context, subProxy, descriptorDefaults)\n };\n return new Proxy(cache, {\n deleteProperty(target, prop) {\n delete target[prop];\n delete proxy[prop];\n return true;\n },\n get(target, prop, receiver) {\n return _cached(target, prop,\n () => _resolveWithContext(target, prop, receiver));\n },\n getOwnPropertyDescriptor(target, prop) {\n return target._descriptors.allKeys\n ? Reflect.has(proxy, prop) ? {enumerable: true, configurable: true} : undefined\n : Reflect.getOwnPropertyDescriptor(proxy, prop);\n },\n getPrototypeOf() {\n return Reflect.getPrototypeOf(proxy);\n },\n has(target, prop) {\n return Reflect.has(proxy, prop);\n },\n ownKeys() {\n return Reflect.ownKeys(proxy);\n },\n set(target, prop, value) {\n proxy[prop] = value;\n delete target[prop];\n return true;\n }\n });\n}\nfunction _descriptors(proxy, defaults = {scriptable: true, indexable: true}) {\n const {_scriptable = defaults.scriptable, _indexable = defaults.indexable, _allKeys = defaults.allKeys} = proxy;\n return {\n allKeys: _allKeys,\n scriptable: _scriptable,\n indexable: _indexable,\n isScriptable: isFunction(_scriptable) ? _scriptable : () => _scriptable,\n isIndexable: isFunction(_indexable) ? _indexable : () => _indexable\n };\n}\nconst readKey = (prefix, name) => prefix ? prefix + _capitalize(name) : name;\nconst needsSubResolver = (prop, value) => isObject(value) && prop !== 'adapters' &&\n (Object.getPrototypeOf(value) === null || value.constructor === Object);\nfunction _cached(target, prop, resolve) {\n if (Object.prototype.hasOwnProperty.call(target, prop)) {\n return target[prop];\n }\n const value = resolve();\n target[prop] = value;\n return value;\n}\nfunction _resolveWithContext(target, prop, receiver) {\n const {_proxy, _context, _subProxy, _descriptors: descriptors} = target;\n let value = _proxy[prop];\n if (isFunction(value) && descriptors.isScriptable(prop)) {\n value = _resolveScriptable(prop, value, target, receiver);\n }\n if (isArray(value) && value.length) {\n value = _resolveArray(prop, value, target, descriptors.isIndexable);\n }\n if (needsSubResolver(prop, value)) {\n value = _attachContext(value, _context, _subProxy && _subProxy[prop], descriptors);\n }\n return value;\n}\nfunction _resolveScriptable(prop, value, target, receiver) {\n const {_proxy, _context, _subProxy, _stack} = target;\n if (_stack.has(prop)) {\n throw new Error('Recursion detected: ' + Array.from(_stack).join('->') + '->' + prop);\n }\n _stack.add(prop);\n value = value(_context, _subProxy || receiver);\n _stack.delete(prop);\n if (needsSubResolver(prop, value)) {\n value = createSubResolver(_proxy._scopes, _proxy, prop, value);\n }\n return value;\n}\nfunction _resolveArray(prop, value, target, isIndexable) {\n const {_proxy, _context, _subProxy, _descriptors: descriptors} = target;\n if (defined(_context.index) && isIndexable(prop)) {\n value = value[_context.index % value.length];\n } else if (isObject(value[0])) {\n const arr = value;\n const scopes = _proxy._scopes.filter(s => s !== arr);\n value = [];\n for (const item of arr) {\n const resolver = createSubResolver(scopes, _proxy, prop, item);\n value.push(_attachContext(resolver, _context, _subProxy && _subProxy[prop], descriptors));\n }\n }\n return value;\n}\nfunction resolveFallback(fallback, prop, value) {\n return isFunction(fallback) ? fallback(prop, value) : fallback;\n}\nconst getScope = (key, parent) => key === true ? parent\n : typeof key === 'string' ? resolveObjectKey(parent, key) : undefined;\nfunction addScopes(set, parentScopes, key, parentFallback, value) {\n for (const parent of parentScopes) {\n const scope = getScope(key, parent);\n if (scope) {\n set.add(scope);\n const fallback = resolveFallback(scope._fallback, key, value);\n if (defined(fallback) && fallback !== key && fallback !== parentFallback) {\n return fallback;\n }\n } else if (scope === false && defined(parentFallback) && key !== parentFallback) {\n return null;\n }\n }\n return false;\n}\nfunction createSubResolver(parentScopes, resolver, prop, value) {\n const rootScopes = resolver._rootScopes;\n const fallback = resolveFallback(resolver._fallback, prop, value);\n const allScopes = [...parentScopes, ...rootScopes];\n const set = new Set();\n set.add(value);\n let key = addScopesFromKey(set, allScopes, prop, fallback || prop, value);\n if (key === null) {\n return false;\n }\n if (defined(fallback) && fallback !== prop) {\n key = addScopesFromKey(set, allScopes, fallback, key, value);\n if (key === null) {\n return false;\n }\n }\n return _createResolver(Array.from(set), [''], rootScopes, fallback,\n () => subGetTarget(resolver, prop, value));\n}\nfunction addScopesFromKey(set, allScopes, key, fallback, item) {\n while (key) {\n key = addScopes(set, allScopes, key, fallback, item);\n }\n return key;\n}\nfunction subGetTarget(resolver, prop, value) {\n const parent = resolver._getTarget();\n if (!(prop in parent)) {\n parent[prop] = {};\n }\n const target = parent[prop];\n if (isArray(target) && isObject(value)) {\n return value;\n }\n return target;\n}\nfunction _resolveWithPrefixes(prop, prefixes, scopes, proxy) {\n let value;\n for (const prefix of prefixes) {\n value = _resolve(readKey(prefix, prop), scopes);\n if (defined(value)) {\n return needsSubResolver(prop, value)\n ? createSubResolver(scopes, proxy, prop, value)\n : value;\n }\n }\n}\nfunction _resolve(key, scopes) {\n for (const scope of scopes) {\n if (!scope) {\n continue;\n }\n const value = scope[key];\n if (defined(value)) {\n return value;\n }\n }\n}\nfunction getKeysFromAllScopes(target) {\n let keys = target._keys;\n if (!keys) {\n keys = target._keys = resolveKeysFromAllScopes(target._scopes);\n }\n return keys;\n}\nfunction resolveKeysFromAllScopes(scopes) {\n const set = new Set();\n for (const scope of scopes) {\n for (const key of Object.keys(scope).filter(k => !k.startsWith('_'))) {\n set.add(key);\n }\n }\n return Array.from(set);\n}\nfunction _parseObjectDataRadialScale(meta, data, start, count) {\n const {iScale} = meta;\n const {key = 'r'} = this._parsing;\n const parsed = new Array(count);\n let i, ilen, index, item;\n for (i = 0, ilen = count; i < ilen; ++i) {\n index = i + start;\n item = data[index];\n parsed[i] = {\n r: iScale.parse(resolveObjectKey(item, key), index)\n };\n }\n return parsed;\n}\n\nconst EPSILON = Number.EPSILON || 1e-14;\nconst getPoint = (points, i) => i < points.length && !points[i].skip && points[i];\nconst getValueAxis = (indexAxis) => indexAxis === 'x' ? 'y' : 'x';\nfunction splineCurve(firstPoint, middlePoint, afterPoint, t) {\n const previous = firstPoint.skip ? middlePoint : firstPoint;\n const current = middlePoint;\n const next = afterPoint.skip ? middlePoint : afterPoint;\n const d01 = distanceBetweenPoints(current, previous);\n const d12 = distanceBetweenPoints(next, current);\n let s01 = d01 / (d01 + d12);\n let s12 = d12 / (d01 + d12);\n s01 = isNaN(s01) ? 0 : s01;\n s12 = isNaN(s12) ? 0 : s12;\n const fa = t * s01;\n const fb = t * s12;\n return {\n previous: {\n x: current.x - fa * (next.x - previous.x),\n y: current.y - fa * (next.y - previous.y)\n },\n next: {\n x: current.x + fb * (next.x - previous.x),\n y: current.y + fb * (next.y - previous.y)\n }\n };\n}\nfunction monotoneAdjust(points, deltaK, mK) {\n const pointsLen = points.length;\n let alphaK, betaK, tauK, squaredMagnitude, pointCurrent;\n let pointAfter = getPoint(points, 0);\n for (let i = 0; i < pointsLen - 1; ++i) {\n pointCurrent = pointAfter;\n pointAfter = getPoint(points, i + 1);\n if (!pointCurrent || !pointAfter) {\n continue;\n }\n if (almostEquals(deltaK[i], 0, EPSILON)) {\n mK[i] = mK[i + 1] = 0;\n continue;\n }\n alphaK = mK[i] / deltaK[i];\n betaK = mK[i + 1] / deltaK[i];\n squaredMagnitude = Math.pow(alphaK, 2) + Math.pow(betaK, 2);\n if (squaredMagnitude <= 9) {\n continue;\n }\n tauK = 3 / Math.sqrt(squaredMagnitude);\n mK[i] = alphaK * tauK * deltaK[i];\n mK[i + 1] = betaK * tauK * deltaK[i];\n }\n}\nfunction monotoneCompute(points, mK, indexAxis = 'x') {\n const valueAxis = getValueAxis(indexAxis);\n const pointsLen = points.length;\n let delta, pointBefore, pointCurrent;\n let pointAfter = getPoint(points, 0);\n for (let i = 0; i < pointsLen; ++i) {\n pointBefore = pointCurrent;\n pointCurrent = pointAfter;\n pointAfter = getPoint(points, i + 1);\n if (!pointCurrent) {\n continue;\n }\n const iPixel = pointCurrent[indexAxis];\n const vPixel = pointCurrent[valueAxis];\n if (pointBefore) {\n delta = (iPixel - pointBefore[indexAxis]) / 3;\n pointCurrent[`cp1${indexAxis}`] = iPixel - delta;\n pointCurrent[`cp1${valueAxis}`] = vPixel - delta * mK[i];\n }\n if (pointAfter) {\n delta = (pointAfter[indexAxis] - iPixel) / 3;\n pointCurrent[`cp2${indexAxis}`] = iPixel + delta;\n pointCurrent[`cp2${valueAxis}`] = vPixel + delta * mK[i];\n }\n }\n}\nfunction splineCurveMonotone(points, indexAxis = 'x') {\n const valueAxis = getValueAxis(indexAxis);\n const pointsLen = points.length;\n const deltaK = Array(pointsLen).fill(0);\n const mK = Array(pointsLen);\n let i, pointBefore, pointCurrent;\n let pointAfter = getPoint(points, 0);\n for (i = 0; i < pointsLen; ++i) {\n pointBefore = pointCurrent;\n pointCurrent = pointAfter;\n pointAfter = getPoint(points, i + 1);\n if (!pointCurrent) {\n continue;\n }\n if (pointAfter) {\n const slopeDelta = pointAfter[indexAxis] - pointCurrent[indexAxis];\n deltaK[i] = slopeDelta !== 0 ? (pointAfter[valueAxis] - pointCurrent[valueAxis]) / slopeDelta : 0;\n }\n mK[i] = !pointBefore ? deltaK[i]\n : !pointAfter ? deltaK[i - 1]\n : (sign(deltaK[i - 1]) !== sign(deltaK[i])) ? 0\n : (deltaK[i - 1] + deltaK[i]) / 2;\n }\n monotoneAdjust(points, deltaK, mK);\n monotoneCompute(points, mK, indexAxis);\n}\nfunction capControlPoint(pt, min, max) {\n return Math.max(Math.min(pt, max), min);\n}\nfunction capBezierPoints(points, area) {\n let i, ilen, point, inArea, inAreaPrev;\n let inAreaNext = _isPointInArea(points[0], area);\n for (i = 0, ilen = points.length; i < ilen; ++i) {\n inAreaPrev = inArea;\n inArea = inAreaNext;\n inAreaNext = i < ilen - 1 && _isPointInArea(points[i + 1], area);\n if (!inArea) {\n continue;\n }\n point = points[i];\n if (inAreaPrev) {\n point.cp1x = capControlPoint(point.cp1x, area.left, area.right);\n point.cp1y = capControlPoint(point.cp1y, area.top, area.bottom);\n }\n if (inAreaNext) {\n point.cp2x = capControlPoint(point.cp2x, area.left, area.right);\n point.cp2y = capControlPoint(point.cp2y, area.top, area.bottom);\n }\n }\n}\nfunction _updateBezierControlPoints(points, options, area, loop, indexAxis) {\n let i, ilen, point, controlPoints;\n if (options.spanGaps) {\n points = points.filter((pt) => !pt.skip);\n }\n if (options.cubicInterpolationMode === 'monotone') {\n splineCurveMonotone(points, indexAxis);\n } else {\n let prev = loop ? points[points.length - 1] : points[0];\n for (i = 0, ilen = points.length; i < ilen; ++i) {\n point = points[i];\n controlPoints = splineCurve(\n prev,\n point,\n points[Math.min(i + 1, ilen - (loop ? 0 : 1)) % ilen],\n options.tension\n );\n point.cp1x = controlPoints.previous.x;\n point.cp1y = controlPoints.previous.y;\n point.cp2x = controlPoints.next.x;\n point.cp2y = controlPoints.next.y;\n prev = point;\n }\n }\n if (options.capBezierPoints) {\n capBezierPoints(points, area);\n }\n}\n\nfunction _isDomSupported() {\n return typeof window !== 'undefined' && typeof document !== 'undefined';\n}\nfunction _getParentNode(domNode) {\n let parent = domNode.parentNode;\n if (parent && parent.toString() === '[object ShadowRoot]') {\n parent = parent.host;\n }\n return parent;\n}\nfunction parseMaxStyle(styleValue, node, parentProperty) {\n let valueInPixels;\n if (typeof styleValue === 'string') {\n valueInPixels = parseInt(styleValue, 10);\n if (styleValue.indexOf('%') !== -1) {\n valueInPixels = valueInPixels / 100 * node.parentNode[parentProperty];\n }\n } else {\n valueInPixels = styleValue;\n }\n return valueInPixels;\n}\nconst getComputedStyle = (element) => window.getComputedStyle(element, null);\nfunction getStyle(el, property) {\n return getComputedStyle(el).getPropertyValue(property);\n}\nconst positions = ['top', 'right', 'bottom', 'left'];\nfunction getPositionedStyle(styles, style, suffix) {\n const result = {};\n suffix = suffix ? '-' + suffix : '';\n for (let i = 0; i < 4; i++) {\n const pos = positions[i];\n result[pos] = parseFloat(styles[style + '-' + pos + suffix]) || 0;\n }\n result.width = result.left + result.right;\n result.height = result.top + result.bottom;\n return result;\n}\nconst useOffsetPos = (x, y, target) => (x > 0 || y > 0) && (!target || !target.shadowRoot);\nfunction getCanvasPosition(e, canvas) {\n const touches = e.touches;\n const source = touches && touches.length ? touches[0] : e;\n const {offsetX, offsetY} = source;\n let box = false;\n let x, y;\n if (useOffsetPos(offsetX, offsetY, e.target)) {\n x = offsetX;\n y = offsetY;\n } else {\n const rect = canvas.getBoundingClientRect();\n x = source.clientX - rect.left;\n y = source.clientY - rect.top;\n box = true;\n }\n return {x, y, box};\n}\nfunction getRelativePosition(evt, chart) {\n if ('native' in evt) {\n return evt;\n }\n const {canvas, currentDevicePixelRatio} = chart;\n const style = getComputedStyle(canvas);\n const borderBox = style.boxSizing === 'border-box';\n const paddings = getPositionedStyle(style, 'padding');\n const borders = getPositionedStyle(style, 'border', 'width');\n const {x, y, box} = getCanvasPosition(evt, canvas);\n const xOffset = paddings.left + (box && borders.left);\n const yOffset = paddings.top + (box && borders.top);\n let {width, height} = chart;\n if (borderBox) {\n width -= paddings.width + borders.width;\n height -= paddings.height + borders.height;\n }\n return {\n x: Math.round((x - xOffset) / width * canvas.width / currentDevicePixelRatio),\n y: Math.round((y - yOffset) / height * canvas.height / currentDevicePixelRatio)\n };\n}\nfunction getContainerSize(canvas, width, height) {\n let maxWidth, maxHeight;\n if (width === undefined || height === undefined) {\n const container = _getParentNode(canvas);\n if (!container) {\n width = canvas.clientWidth;\n height = canvas.clientHeight;\n } else {\n const rect = container.getBoundingClientRect();\n const containerStyle = getComputedStyle(container);\n const containerBorder = getPositionedStyle(containerStyle, 'border', 'width');\n const containerPadding = getPositionedStyle(containerStyle, 'padding');\n width = rect.width - containerPadding.width - containerBorder.width;\n height = rect.height - containerPadding.height - containerBorder.height;\n maxWidth = parseMaxStyle(containerStyle.maxWidth, container, 'clientWidth');\n maxHeight = parseMaxStyle(containerStyle.maxHeight, container, 'clientHeight');\n }\n }\n return {\n width,\n height,\n maxWidth: maxWidth || INFINITY,\n maxHeight: maxHeight || INFINITY\n };\n}\nconst round1 = v => Math.round(v * 10) / 10;\nfunction getMaximumSize(canvas, bbWidth, bbHeight, aspectRatio) {\n const style = getComputedStyle(canvas);\n const margins = getPositionedStyle(style, 'margin');\n const maxWidth = parseMaxStyle(style.maxWidth, canvas, 'clientWidth') || INFINITY;\n const maxHeight = parseMaxStyle(style.maxHeight, canvas, 'clientHeight') || INFINITY;\n const containerSize = getContainerSize(canvas, bbWidth, bbHeight);\n let {width, height} = containerSize;\n if (style.boxSizing === 'content-box') {\n const borders = getPositionedStyle(style, 'border', 'width');\n const paddings = getPositionedStyle(style, 'padding');\n width -= paddings.width + borders.width;\n height -= paddings.height + borders.height;\n }\n width = Math.max(0, width - margins.width);\n height = Math.max(0, aspectRatio ? Math.floor(width / aspectRatio) : height - margins.height);\n width = round1(Math.min(width, maxWidth, containerSize.maxWidth));\n height = round1(Math.min(height, maxHeight, containerSize.maxHeight));\n if (width && !height) {\n height = round1(width / 2);\n }\n return {\n width,\n height\n };\n}\nfunction retinaScale(chart, forceRatio, forceStyle) {\n const pixelRatio = forceRatio || 1;\n const deviceHeight = Math.floor(chart.height * pixelRatio);\n const deviceWidth = Math.floor(chart.width * pixelRatio);\n chart.height = deviceHeight / pixelRatio;\n chart.width = deviceWidth / pixelRatio;\n const canvas = chart.canvas;\n if (canvas.style && (forceStyle || (!canvas.style.height && !canvas.style.width))) {\n canvas.style.height = `${chart.height}px`;\n canvas.style.width = `${chart.width}px`;\n }\n if (chart.currentDevicePixelRatio !== pixelRatio\n || canvas.height !== deviceHeight\n || canvas.width !== deviceWidth) {\n chart.currentDevicePixelRatio = pixelRatio;\n canvas.height = deviceHeight;\n canvas.width = deviceWidth;\n chart.ctx.setTransform(pixelRatio, 0, 0, pixelRatio, 0, 0);\n return true;\n }\n return false;\n}\nconst supportsEventListenerOptions = (function() {\n let passiveSupported = false;\n try {\n const options = {\n get passive() {\n passiveSupported = true;\n return false;\n }\n };\n window.addEventListener('test', null, options);\n window.removeEventListener('test', null, options);\n } catch (e) {\n }\n return passiveSupported;\n}());\nfunction readUsedSize(element, property) {\n const value = getStyle(element, property);\n const matches = value && value.match(/^(\\d+)(\\.\\d+)?px$/);\n return matches ? +matches[1] : undefined;\n}\n\nfunction _pointInLine(p1, p2, t, mode) {\n return {\n x: p1.x + t * (p2.x - p1.x),\n y: p1.y + t * (p2.y - p1.y)\n };\n}\nfunction _steppedInterpolation(p1, p2, t, mode) {\n return {\n x: p1.x + t * (p2.x - p1.x),\n y: mode === 'middle' ? t < 0.5 ? p1.y : p2.y\n : mode === 'after' ? t < 1 ? p1.y : p2.y\n : t > 0 ? p2.y : p1.y\n };\n}\nfunction _bezierInterpolation(p1, p2, t, mode) {\n const cp1 = {x: p1.cp2x, y: p1.cp2y};\n const cp2 = {x: p2.cp1x, y: p2.cp1y};\n const a = _pointInLine(p1, cp1, t);\n const b = _pointInLine(cp1, cp2, t);\n const c = _pointInLine(cp2, p2, t);\n const d = _pointInLine(a, b, t);\n const e = _pointInLine(b, c, t);\n return _pointInLine(d, e, t);\n}\n\nconst intlCache = new Map();\nfunction getNumberFormat(locale, options) {\n options = options || {};\n const cacheKey = locale + JSON.stringify(options);\n let formatter = intlCache.get(cacheKey);\n if (!formatter) {\n formatter = new Intl.NumberFormat(locale, options);\n intlCache.set(cacheKey, formatter);\n }\n return formatter;\n}\nfunction formatNumber(num, locale, options) {\n return getNumberFormat(locale, options).format(num);\n}\n\nconst getRightToLeftAdapter = function(rectX, width) {\n return {\n x(x) {\n return rectX + rectX + width - x;\n },\n setWidth(w) {\n width = w;\n },\n textAlign(align) {\n if (align === 'center') {\n return align;\n }\n return align === 'right' ? 'left' : 'right';\n },\n xPlus(x, value) {\n return x - value;\n },\n leftForLtr(x, itemWidth) {\n return x - itemWidth;\n },\n };\n};\nconst getLeftToRightAdapter = function() {\n return {\n x(x) {\n return x;\n },\n setWidth(w) {\n },\n textAlign(align) {\n return align;\n },\n xPlus(x, value) {\n return x + value;\n },\n leftForLtr(x, _itemWidth) {\n return x;\n },\n };\n};\nfunction getRtlAdapter(rtl, rectX, width) {\n return rtl ? getRightToLeftAdapter(rectX, width) : getLeftToRightAdapter();\n}\nfunction overrideTextDirection(ctx, direction) {\n let style, original;\n if (direction === 'ltr' || direction === 'rtl') {\n style = ctx.canvas.style;\n original = [\n style.getPropertyValue('direction'),\n style.getPropertyPriority('direction'),\n ];\n style.setProperty('direction', direction, 'important');\n ctx.prevTextDirection = original;\n }\n}\nfunction restoreTextDirection(ctx, original) {\n if (original !== undefined) {\n delete ctx.prevTextDirection;\n ctx.canvas.style.setProperty('direction', original[0], original[1]);\n }\n}\n\nfunction propertyFn(property) {\n if (property === 'angle') {\n return {\n between: _angleBetween,\n compare: _angleDiff,\n normalize: _normalizeAngle,\n };\n }\n return {\n between: _isBetween,\n compare: (a, b) => a - b,\n normalize: x => x\n };\n}\nfunction normalizeSegment({start, end, count, loop, style}) {\n return {\n start: start % count,\n end: end % count,\n loop: loop && (end - start + 1) % count === 0,\n style\n };\n}\nfunction getSegment(segment, points, bounds) {\n const {property, start: startBound, end: endBound} = bounds;\n const {between, normalize} = propertyFn(property);\n const count = points.length;\n let {start, end, loop} = segment;\n let i, ilen;\n if (loop) {\n start += count;\n end += count;\n for (i = 0, ilen = count; i < ilen; ++i) {\n if (!between(normalize(points[start % count][property]), startBound, endBound)) {\n break;\n }\n start--;\n end--;\n }\n start %= count;\n end %= count;\n }\n if (end < start) {\n end += count;\n }\n return {start, end, loop, style: segment.style};\n}\nfunction _boundSegment(segment, points, bounds) {\n if (!bounds) {\n return [segment];\n }\n const {property, start: startBound, end: endBound} = bounds;\n const count = points.length;\n const {compare, between, normalize} = propertyFn(property);\n const {start, end, loop, style} = getSegment(segment, points, bounds);\n const result = [];\n let inside = false;\n let subStart = null;\n let value, point, prevValue;\n const startIsBefore = () => between(startBound, prevValue, value) && compare(startBound, prevValue) !== 0;\n const endIsBefore = () => compare(endBound, value) === 0 || between(endBound, prevValue, value);\n const shouldStart = () => inside || startIsBefore();\n const shouldStop = () => !inside || endIsBefore();\n for (let i = start, prev = start; i <= end; ++i) {\n point = points[i % count];\n if (point.skip) {\n continue;\n }\n value = normalize(point[property]);\n if (value === prevValue) {\n continue;\n }\n inside = between(value, startBound, endBound);\n if (subStart === null && shouldStart()) {\n subStart = compare(value, startBound) === 0 ? i : prev;\n }\n if (subStart !== null && shouldStop()) {\n result.push(normalizeSegment({start: subStart, end: i, loop, count, style}));\n subStart = null;\n }\n prev = i;\n prevValue = value;\n }\n if (subStart !== null) {\n result.push(normalizeSegment({start: subStart, end, loop, count, style}));\n }\n return result;\n}\nfunction _boundSegments(line, bounds) {\n const result = [];\n const segments = line.segments;\n for (let i = 0; i < segments.length; i++) {\n const sub = _boundSegment(segments[i], line.points, bounds);\n if (sub.length) {\n result.push(...sub);\n }\n }\n return result;\n}\nfunction findStartAndEnd(points, count, loop, spanGaps) {\n let start = 0;\n let end = count - 1;\n if (loop && !spanGaps) {\n while (start < count && !points[start].skip) {\n start++;\n }\n }\n while (start < count && points[start].skip) {\n start++;\n }\n start %= count;\n if (loop) {\n end += start;\n }\n while (end > start && points[end % count].skip) {\n end--;\n }\n end %= count;\n return {start, end};\n}\nfunction solidSegments(points, start, max, loop) {\n const count = points.length;\n const result = [];\n let last = start;\n let prev = points[start];\n let end;\n for (end = start + 1; end <= max; ++end) {\n const cur = points[end % count];\n if (cur.skip || cur.stop) {\n if (!prev.skip) {\n loop = false;\n result.push({start: start % count, end: (end - 1) % count, loop});\n start = last = cur.stop ? end : null;\n }\n } else {\n last = end;\n if (prev.skip) {\n start = end;\n }\n }\n prev = cur;\n }\n if (last !== null) {\n result.push({start: start % count, end: last % count, loop});\n }\n return result;\n}\nfunction _computeSegments(line, segmentOptions) {\n const points = line.points;\n const spanGaps = line.options.spanGaps;\n const count = points.length;\n if (!count) {\n return [];\n }\n const loop = !!line._loop;\n const {start, end} = findStartAndEnd(points, count, loop, spanGaps);\n if (spanGaps === true) {\n return splitByStyles(line, [{start, end, loop}], points, segmentOptions);\n }\n const max = end < start ? end + count : end;\n const completeLoop = !!line._fullLoop && start === 0 && end === count - 1;\n return splitByStyles(line, solidSegments(points, start, max, completeLoop), points, segmentOptions);\n}\nfunction splitByStyles(line, segments, points, segmentOptions) {\n if (!segmentOptions || !segmentOptions.setContext || !points) {\n return segments;\n }\n return doSplitByStyles(line, segments, points, segmentOptions);\n}\nfunction doSplitByStyles(line, segments, points, segmentOptions) {\n const chartContext = line._chart.getContext();\n const baseStyle = readStyle(line.options);\n const {_datasetIndex: datasetIndex, options: {spanGaps}} = line;\n const count = points.length;\n const result = [];\n let prevStyle = baseStyle;\n let start = segments[0].start;\n let i = start;\n function addStyle(s, e, l, st) {\n const dir = spanGaps ? -1 : 1;\n if (s === e) {\n return;\n }\n s += count;\n while (points[s % count].skip) {\n s -= dir;\n }\n while (points[e % count].skip) {\n e += dir;\n }\n if (s % count !== e % count) {\n result.push({start: s % count, end: e % count, loop: l, style: st});\n prevStyle = st;\n start = e % count;\n }\n }\n for (const segment of segments) {\n start = spanGaps ? start : segment.start;\n let prev = points[start % count];\n let style;\n for (i = start + 1; i <= segment.end; i++) {\n const pt = points[i % count];\n style = readStyle(segmentOptions.setContext(createContext(chartContext, {\n type: 'segment',\n p0: prev,\n p1: pt,\n p0DataIndex: (i - 1) % count,\n p1DataIndex: i % count,\n datasetIndex\n })));\n if (styleChanged(style, prevStyle)) {\n addStyle(start, i - 1, segment.loop, prevStyle);\n }\n prev = pt;\n prevStyle = style;\n }\n if (start < i - 1) {\n addStyle(start, i - 1, segment.loop, prevStyle);\n }\n }\n return result;\n}\nfunction readStyle(options) {\n return {\n backgroundColor: options.backgroundColor,\n borderCapStyle: options.borderCapStyle,\n borderDash: options.borderDash,\n borderDashOffset: options.borderDashOffset,\n borderJoinStyle: options.borderJoinStyle,\n borderWidth: options.borderWidth,\n borderColor: options.borderColor\n };\n}\nfunction styleChanged(style, prevStyle) {\n return prevStyle && JSON.stringify(style) !== JSON.stringify(prevStyle);\n}\n\nexport { _isPointInArea as $, _factorize as A, finiteOrDefault as B, callback as C, _addGrace as D, _limitValue as E, toDegrees as F, _measureText as G, HALF_PI as H, _int16Range as I, _alignPixel as J, toPadding as K, clipArea as L, renderText as M, unclipArea as N, toFont as O, PI as P, each as Q, _toLeftRightCenter as R, _alignStartEnd as S, TAU as T, overrides as U, merge as V, _capitalize as W, getRelativePosition as X, _rlookupByKey as Y, _lookupByKey as Z, _arrayUnique as _, resolve as a, toLineHeight as a$, getAngleFromPoint as a0, getMaximumSize as a1, _getParentNode as a2, readUsedSize as a3, throttled as a4, supportsEventListenerOptions as a5, _isDomSupported as a6, descriptors as a7, isFunction as a8, _attachContext as a9, getRtlAdapter as aA, overrideTextDirection as aB, _textX as aC, restoreTextDirection as aD, drawPointLegend as aE, noop as aF, distanceBetweenPoints as aG, _setMinAndMaxByKey as aH, niceNum as aI, almostWhole as aJ, almostEquals as aK, _decimalPlaces as aL, _longestText as aM, _filterBetween as aN, _lookup as aO, isPatternOrGradient as aP, getHoverColor as aQ, clone$1 as aR, _merger as aS, _mergerIf as aT, _deprecated as aU, _splitKey as aV, toFontString as aW, splineCurve as aX, splineCurveMonotone as aY, getStyle as aZ, fontString as a_, _createResolver as aa, _descriptors as ab, mergeIf as ac, uid as ad, debounce as ae, retinaScale as af, clearCanvas as ag, setsEqual as ah, _elementsEqual as ai, _isClickEvent as aj, _isBetween as ak, _readValueToProps as al, _updateBezierControlPoints as am, _computeSegments as an, _boundSegments as ao, _steppedInterpolation as ap, _bezierInterpolation as aq, _pointInLine as ar, _steppedLineTo as as, _bezierCurveTo as at, drawPoint as au, addRoundedRectPath as av, toTRBL as aw, toTRBLCorners as ax, _boundSegment as ay, _normalizeAngle as az, isArray as b, PITAU as b0, INFINITY as b1, RAD_PER_DEG as b2, QUARTER_PI as b3, TWO_THIRDS_PI as b4, _angleDiff as b5, color as c, defaults as d, effects as e, resolveObjectKey as f, isNumberFinite as g, createContext as h, isObject as i, defined as j, isNullOrUndef as k, listenArrayEvents as l, toPercentage as m, toDimension as n, formatNumber as o, _angleBetween as p, _getStartAndCountOfVisiblePoints as q, requestAnimFrame as r, sign as s, toRadians as t, unlistenArrayEvents as u, valueOrDefault as v, _scaleRangesChanged as w, isNumber as x, _parseObjectDataRadialScale as y, log10 as z };\n","/*!\n * Chart.js v3.9.1\n * https://www.chartjs.org\n * (c) 2022 Chart.js Contributors\n * Released under the MIT License\n */\nimport { r as requestAnimFrame, a as resolve, e as effects, c as color, d as defaults, i as isObject, b as isArray, v as valueOrDefault, u as unlistenArrayEvents, l as listenArrayEvents, f as resolveObjectKey, g as isNumberFinite, h as createContext, j as defined, s as sign, k as isNullOrUndef, _ as _arrayUnique, t as toRadians, m as toPercentage, n as toDimension, T as TAU, o as formatNumber, p as _angleBetween, H as HALF_PI, P as PI, q as _getStartAndCountOfVisiblePoints, w as _scaleRangesChanged, x as isNumber, y as _parseObjectDataRadialScale, z as log10, A as _factorize, B as finiteOrDefault, C as callback, D as _addGrace, E as _limitValue, F as toDegrees, G as _measureText, I as _int16Range, J as _alignPixel, K as toPadding, L as clipArea, M as renderText, N as unclipArea, O as toFont, Q as each, R as _toLeftRightCenter, S as _alignStartEnd, U as overrides, V as merge, W as _capitalize, X as getRelativePosition, Y as _rlookupByKey, Z as _lookupByKey, $ as _isPointInArea, a0 as getAngleFromPoint, a1 as getMaximumSize, a2 as _getParentNode, a3 as readUsedSize, a4 as throttled, a5 as supportsEventListenerOptions, a6 as _isDomSupported, a7 as descriptors, a8 as isFunction, a9 as _attachContext, aa as _createResolver, ab as _descriptors, ac as mergeIf, ad as uid, ae as debounce, af as retinaScale, ag as clearCanvas, ah as setsEqual, ai as _elementsEqual, aj as _isClickEvent, ak as _isBetween, al as _readValueToProps, am as _updateBezierControlPoints, an as _computeSegments, ao as _boundSegments, ap as _steppedInterpolation, aq as _bezierInterpolation, ar as _pointInLine, as as _steppedLineTo, at as _bezierCurveTo, au as drawPoint, av as addRoundedRectPath, aw as toTRBL, ax as toTRBLCorners, ay as _boundSegment, az as _normalizeAngle, aA as getRtlAdapter, aB as overrideTextDirection, aC as _textX, aD as restoreTextDirection, aE as drawPointLegend, aF as noop, aG as distanceBetweenPoints, aH as _setMinAndMaxByKey, aI as niceNum, aJ as almostWhole, aK as almostEquals, aL as _decimalPlaces, aM as _longestText, aN as _filterBetween, aO as _lookup } from './chunks/helpers.segment.mjs';\nexport { d as defaults } from './chunks/helpers.segment.mjs';\n\nclass Animator {\n constructor() {\n this._request = null;\n this._charts = new Map();\n this._running = false;\n this._lastDate = undefined;\n }\n _notify(chart, anims, date, type) {\n const callbacks = anims.listeners[type];\n const numSteps = anims.duration;\n callbacks.forEach(fn => fn({\n chart,\n initial: anims.initial,\n numSteps,\n currentStep: Math.min(date - anims.start, numSteps)\n }));\n }\n _refresh() {\n if (this._request) {\n return;\n }\n this._running = true;\n this._request = requestAnimFrame.call(window, () => {\n this._update();\n this._request = null;\n if (this._running) {\n this._refresh();\n }\n });\n }\n _update(date = Date.now()) {\n let remaining = 0;\n this._charts.forEach((anims, chart) => {\n if (!anims.running || !anims.items.length) {\n return;\n }\n const items = anims.items;\n let i = items.length - 1;\n let draw = false;\n let item;\n for (; i >= 0; --i) {\n item = items[i];\n if (item._active) {\n if (item._total > anims.duration) {\n anims.duration = item._total;\n }\n item.tick(date);\n draw = true;\n } else {\n items[i] = items[items.length - 1];\n items.pop();\n }\n }\n if (draw) {\n chart.draw();\n this._notify(chart, anims, date, 'progress');\n }\n if (!items.length) {\n anims.running = false;\n this._notify(chart, anims, date, 'complete');\n anims.initial = false;\n }\n remaining += items.length;\n });\n this._lastDate = date;\n if (remaining === 0) {\n this._running = false;\n }\n }\n _getAnims(chart) {\n const charts = this._charts;\n let anims = charts.get(chart);\n if (!anims) {\n anims = {\n running: false,\n initial: true,\n items: [],\n listeners: {\n complete: [],\n progress: []\n }\n };\n charts.set(chart, anims);\n }\n return anims;\n }\n listen(chart, event, cb) {\n this._getAnims(chart).listeners[event].push(cb);\n }\n add(chart, items) {\n if (!items || !items.length) {\n return;\n }\n this._getAnims(chart).items.push(...items);\n }\n has(chart) {\n return this._getAnims(chart).items.length > 0;\n }\n start(chart) {\n const anims = this._charts.get(chart);\n if (!anims) {\n return;\n }\n anims.running = true;\n anims.start = Date.now();\n anims.duration = anims.items.reduce((acc, cur) => Math.max(acc, cur._duration), 0);\n this._refresh();\n }\n running(chart) {\n if (!this._running) {\n return false;\n }\n const anims = this._charts.get(chart);\n if (!anims || !anims.running || !anims.items.length) {\n return false;\n }\n return true;\n }\n stop(chart) {\n const anims = this._charts.get(chart);\n if (!anims || !anims.items.length) {\n return;\n }\n const items = anims.items;\n let i = items.length - 1;\n for (; i >= 0; --i) {\n items[i].cancel();\n }\n anims.items = [];\n this._notify(chart, anims, Date.now(), 'complete');\n }\n remove(chart) {\n return this._charts.delete(chart);\n }\n}\nvar animator = new Animator();\n\nconst transparent = 'transparent';\nconst interpolators = {\n boolean(from, to, factor) {\n return factor > 0.5 ? to : from;\n },\n color(from, to, factor) {\n const c0 = color(from || transparent);\n const c1 = c0.valid && color(to || transparent);\n return c1 && c1.valid\n ? c1.mix(c0, factor).hexString()\n : to;\n },\n number(from, to, factor) {\n return from + (to - from) * factor;\n }\n};\nclass Animation {\n constructor(cfg, target, prop, to) {\n const currentValue = target[prop];\n to = resolve([cfg.to, to, currentValue, cfg.from]);\n const from = resolve([cfg.from, currentValue, to]);\n this._active = true;\n this._fn = cfg.fn || interpolators[cfg.type || typeof from];\n this._easing = effects[cfg.easing] || effects.linear;\n this._start = Math.floor(Date.now() + (cfg.delay || 0));\n this._duration = this._total = Math.floor(cfg.duration);\n this._loop = !!cfg.loop;\n this._target = target;\n this._prop = prop;\n this._from = from;\n this._to = to;\n this._promises = undefined;\n }\n active() {\n return this._active;\n }\n update(cfg, to, date) {\n if (this._active) {\n this._notify(false);\n const currentValue = this._target[this._prop];\n const elapsed = date - this._start;\n const remain = this._duration - elapsed;\n this._start = date;\n this._duration = Math.floor(Math.max(remain, cfg.duration));\n this._total += elapsed;\n this._loop = !!cfg.loop;\n this._to = resolve([cfg.to, to, currentValue, cfg.from]);\n this._from = resolve([cfg.from, currentValue, to]);\n }\n }\n cancel() {\n if (this._active) {\n this.tick(Date.now());\n this._active = false;\n this._notify(false);\n }\n }\n tick(date) {\n const elapsed = date - this._start;\n const duration = this._duration;\n const prop = this._prop;\n const from = this._from;\n const loop = this._loop;\n const to = this._to;\n let factor;\n this._active = from !== to && (loop || (elapsed < duration));\n if (!this._active) {\n this._target[prop] = to;\n this._notify(true);\n return;\n }\n if (elapsed < 0) {\n this._target[prop] = from;\n return;\n }\n factor = (elapsed / duration) % 2;\n factor = loop && factor > 1 ? 2 - factor : factor;\n factor = this._easing(Math.min(1, Math.max(0, factor)));\n this._target[prop] = this._fn(from, to, factor);\n }\n wait() {\n const promises = this._promises || (this._promises = []);\n return new Promise((res, rej) => {\n promises.push({res, rej});\n });\n }\n _notify(resolved) {\n const method = resolved ? 'res' : 'rej';\n const promises = this._promises || [];\n for (let i = 0; i < promises.length; i++) {\n promises[i][method]();\n }\n }\n}\n\nconst numbers = ['x', 'y', 'borderWidth', 'radius', 'tension'];\nconst colors = ['color', 'borderColor', 'backgroundColor'];\ndefaults.set('animation', {\n delay: undefined,\n duration: 1000,\n easing: 'easeOutQuart',\n fn: undefined,\n from: undefined,\n loop: undefined,\n to: undefined,\n type: undefined,\n});\nconst animationOptions = Object.keys(defaults.animation);\ndefaults.describe('animation', {\n _fallback: false,\n _indexable: false,\n _scriptable: (name) => name !== 'onProgress' && name !== 'onComplete' && name !== 'fn',\n});\ndefaults.set('animations', {\n colors: {\n type: 'color',\n properties: colors\n },\n numbers: {\n type: 'number',\n properties: numbers\n },\n});\ndefaults.describe('animations', {\n _fallback: 'animation',\n});\ndefaults.set('transitions', {\n active: {\n animation: {\n duration: 400\n }\n },\n resize: {\n animation: {\n duration: 0\n }\n },\n show: {\n animations: {\n colors: {\n from: 'transparent'\n },\n visible: {\n type: 'boolean',\n duration: 0\n },\n }\n },\n hide: {\n animations: {\n colors: {\n to: 'transparent'\n },\n visible: {\n type: 'boolean',\n easing: 'linear',\n fn: v => v | 0\n },\n }\n }\n});\nclass Animations {\n constructor(chart, config) {\n this._chart = chart;\n this._properties = new Map();\n this.configure(config);\n }\n configure(config) {\n if (!isObject(config)) {\n return;\n }\n const animatedProps = this._properties;\n Object.getOwnPropertyNames(config).forEach(key => {\n const cfg = config[key];\n if (!isObject(cfg)) {\n return;\n }\n const resolved = {};\n for (const option of animationOptions) {\n resolved[option] = cfg[option];\n }\n (isArray(cfg.properties) && cfg.properties || [key]).forEach((prop) => {\n if (prop === key || !animatedProps.has(prop)) {\n animatedProps.set(prop, resolved);\n }\n });\n });\n }\n _animateOptions(target, values) {\n const newOptions = values.options;\n const options = resolveTargetOptions(target, newOptions);\n if (!options) {\n return [];\n }\n const animations = this._createAnimations(options, newOptions);\n if (newOptions.$shared) {\n awaitAll(target.options.$animations, newOptions).then(() => {\n target.options = newOptions;\n }, () => {\n });\n }\n return animations;\n }\n _createAnimations(target, values) {\n const animatedProps = this._properties;\n const animations = [];\n const running = target.$animations || (target.$animations = {});\n const props = Object.keys(values);\n const date = Date.now();\n let i;\n for (i = props.length - 1; i >= 0; --i) {\n const prop = props[i];\n if (prop.charAt(0) === '$') {\n continue;\n }\n if (prop === 'options') {\n animations.push(...this._animateOptions(target, values));\n continue;\n }\n const value = values[prop];\n let animation = running[prop];\n const cfg = animatedProps.get(prop);\n if (animation) {\n if (cfg && animation.active()) {\n animation.update(cfg, value, date);\n continue;\n } else {\n animation.cancel();\n }\n }\n if (!cfg || !cfg.duration) {\n target[prop] = value;\n continue;\n }\n running[prop] = animation = new Animation(cfg, target, prop, value);\n animations.push(animation);\n }\n return animations;\n }\n update(target, values) {\n if (this._properties.size === 0) {\n Object.assign(target, values);\n return;\n }\n const animations = this._createAnimations(target, values);\n if (animations.length) {\n animator.add(this._chart, animations);\n return true;\n }\n }\n}\nfunction awaitAll(animations, properties) {\n const running = [];\n const keys = Object.keys(properties);\n for (let i = 0; i < keys.length; i++) {\n const anim = animations[keys[i]];\n if (anim && anim.active()) {\n running.push(anim.wait());\n }\n }\n return Promise.all(running);\n}\nfunction resolveTargetOptions(target, newOptions) {\n if (!newOptions) {\n return;\n }\n let options = target.options;\n if (!options) {\n target.options = newOptions;\n return;\n }\n if (options.$shared) {\n target.options = options = Object.assign({}, options, {$shared: false, $animations: {}});\n }\n return options;\n}\n\nfunction scaleClip(scale, allowedOverflow) {\n const opts = scale && scale.options || {};\n const reverse = opts.reverse;\n const min = opts.min === undefined ? allowedOverflow : 0;\n const max = opts.max === undefined ? allowedOverflow : 0;\n return {\n start: reverse ? max : min,\n end: reverse ? min : max\n };\n}\nfunction defaultClip(xScale, yScale, allowedOverflow) {\n if (allowedOverflow === false) {\n return false;\n }\n const x = scaleClip(xScale, allowedOverflow);\n const y = scaleClip(yScale, allowedOverflow);\n return {\n top: y.end,\n right: x.end,\n bottom: y.start,\n left: x.start\n };\n}\nfunction toClip(value) {\n let t, r, b, l;\n if (isObject(value)) {\n t = value.top;\n r = value.right;\n b = value.bottom;\n l = value.left;\n } else {\n t = r = b = l = value;\n }\n return {\n top: t,\n right: r,\n bottom: b,\n left: l,\n disabled: value === false\n };\n}\nfunction getSortedDatasetIndices(chart, filterVisible) {\n const keys = [];\n const metasets = chart._getSortedDatasetMetas(filterVisible);\n let i, ilen;\n for (i = 0, ilen = metasets.length; i < ilen; ++i) {\n keys.push(metasets[i].index);\n }\n return keys;\n}\nfunction applyStack(stack, value, dsIndex, options = {}) {\n const keys = stack.keys;\n const singleMode = options.mode === 'single';\n let i, ilen, datasetIndex, otherValue;\n if (value === null) {\n return;\n }\n for (i = 0, ilen = keys.length; i < ilen; ++i) {\n datasetIndex = +keys[i];\n if (datasetIndex === dsIndex) {\n if (options.all) {\n continue;\n }\n break;\n }\n otherValue = stack.values[datasetIndex];\n if (isNumberFinite(otherValue) && (singleMode || (value === 0 || sign(value) === sign(otherValue)))) {\n value += otherValue;\n }\n }\n return value;\n}\nfunction convertObjectDataToArray(data) {\n const keys = Object.keys(data);\n const adata = new Array(keys.length);\n let i, ilen, key;\n for (i = 0, ilen = keys.length; i < ilen; ++i) {\n key = keys[i];\n adata[i] = {\n x: key,\n y: data[key]\n };\n }\n return adata;\n}\nfunction isStacked(scale, meta) {\n const stacked = scale && scale.options.stacked;\n return stacked || (stacked === undefined && meta.stack !== undefined);\n}\nfunction getStackKey(indexScale, valueScale, meta) {\n return `${indexScale.id}.${valueScale.id}.${meta.stack || meta.type}`;\n}\nfunction getUserBounds(scale) {\n const {min, max, minDefined, maxDefined} = scale.getUserBounds();\n return {\n min: minDefined ? min : Number.NEGATIVE_INFINITY,\n max: maxDefined ? max : Number.POSITIVE_INFINITY\n };\n}\nfunction getOrCreateStack(stacks, stackKey, indexValue) {\n const subStack = stacks[stackKey] || (stacks[stackKey] = {});\n return subStack[indexValue] || (subStack[indexValue] = {});\n}\nfunction getLastIndexInStack(stack, vScale, positive, type) {\n for (const meta of vScale.getMatchingVisibleMetas(type).reverse()) {\n const value = stack[meta.index];\n if ((positive && value > 0) || (!positive && value < 0)) {\n return meta.index;\n }\n }\n return null;\n}\nfunction updateStacks(controller, parsed) {\n const {chart, _cachedMeta: meta} = controller;\n const stacks = chart._stacks || (chart._stacks = {});\n const {iScale, vScale, index: datasetIndex} = meta;\n const iAxis = iScale.axis;\n const vAxis = vScale.axis;\n const key = getStackKey(iScale, vScale, meta);\n const ilen = parsed.length;\n let stack;\n for (let i = 0; i < ilen; ++i) {\n const item = parsed[i];\n const {[iAxis]: index, [vAxis]: value} = item;\n const itemStacks = item._stacks || (item._stacks = {});\n stack = itemStacks[vAxis] = getOrCreateStack(stacks, key, index);\n stack[datasetIndex] = value;\n stack._top = getLastIndexInStack(stack, vScale, true, meta.type);\n stack._bottom = getLastIndexInStack(stack, vScale, false, meta.type);\n }\n}\nfunction getFirstScaleId(chart, axis) {\n const scales = chart.scales;\n return Object.keys(scales).filter(key => scales[key].axis === axis).shift();\n}\nfunction createDatasetContext(parent, index) {\n return createContext(parent,\n {\n active: false,\n dataset: undefined,\n datasetIndex: index,\n index,\n mode: 'default',\n type: 'dataset'\n }\n );\n}\nfunction createDataContext(parent, index, element) {\n return createContext(parent, {\n active: false,\n dataIndex: index,\n parsed: undefined,\n raw: undefined,\n element,\n index,\n mode: 'default',\n type: 'data'\n });\n}\nfunction clearStacks(meta, items) {\n const datasetIndex = meta.controller.index;\n const axis = meta.vScale && meta.vScale.axis;\n if (!axis) {\n return;\n }\n items = items || meta._parsed;\n for (const parsed of items) {\n const stacks = parsed._stacks;\n if (!stacks || stacks[axis] === undefined || stacks[axis][datasetIndex] === undefined) {\n return;\n }\n delete stacks[axis][datasetIndex];\n }\n}\nconst isDirectUpdateMode = (mode) => mode === 'reset' || mode === 'none';\nconst cloneIfNotShared = (cached, shared) => shared ? cached : Object.assign({}, cached);\nconst createStack = (canStack, meta, chart) => canStack && !meta.hidden && meta._stacked\n && {keys: getSortedDatasetIndices(chart, true), values: null};\nclass DatasetController {\n constructor(chart, datasetIndex) {\n this.chart = chart;\n this._ctx = chart.ctx;\n this.index = datasetIndex;\n this._cachedDataOpts = {};\n this._cachedMeta = this.getMeta();\n this._type = this._cachedMeta.type;\n this.options = undefined;\n this._parsing = false;\n this._data = undefined;\n this._objectData = undefined;\n this._sharedOptions = undefined;\n this._drawStart = undefined;\n this._drawCount = undefined;\n this.enableOptionSharing = false;\n this.supportsDecimation = false;\n this.$context = undefined;\n this._syncList = [];\n this.initialize();\n }\n initialize() {\n const meta = this._cachedMeta;\n this.configure();\n this.linkScales();\n meta._stacked = isStacked(meta.vScale, meta);\n this.addElements();\n }\n updateIndex(datasetIndex) {\n if (this.index !== datasetIndex) {\n clearStacks(this._cachedMeta);\n }\n this.index = datasetIndex;\n }\n linkScales() {\n const chart = this.chart;\n const meta = this._cachedMeta;\n const dataset = this.getDataset();\n const chooseId = (axis, x, y, r) => axis === 'x' ? x : axis === 'r' ? r : y;\n const xid = meta.xAxisID = valueOrDefault(dataset.xAxisID, getFirstScaleId(chart, 'x'));\n const yid = meta.yAxisID = valueOrDefault(dataset.yAxisID, getFirstScaleId(chart, 'y'));\n const rid = meta.rAxisID = valueOrDefault(dataset.rAxisID, getFirstScaleId(chart, 'r'));\n const indexAxis = meta.indexAxis;\n const iid = meta.iAxisID = chooseId(indexAxis, xid, yid, rid);\n const vid = meta.vAxisID = chooseId(indexAxis, yid, xid, rid);\n meta.xScale = this.getScaleForId(xid);\n meta.yScale = this.getScaleForId(yid);\n meta.rScale = this.getScaleForId(rid);\n meta.iScale = this.getScaleForId(iid);\n meta.vScale = this.getScaleForId(vid);\n }\n getDataset() {\n return this.chart.data.datasets[this.index];\n }\n getMeta() {\n return this.chart.getDatasetMeta(this.index);\n }\n getScaleForId(scaleID) {\n return this.chart.scales[scaleID];\n }\n _getOtherScale(scale) {\n const meta = this._cachedMeta;\n return scale === meta.iScale\n ? meta.vScale\n : meta.iScale;\n }\n reset() {\n this._update('reset');\n }\n _destroy() {\n const meta = this._cachedMeta;\n if (this._data) {\n unlistenArrayEvents(this._data, this);\n }\n if (meta._stacked) {\n clearStacks(meta);\n }\n }\n _dataCheck() {\n const dataset = this.getDataset();\n const data = dataset.data || (dataset.data = []);\n const _data = this._data;\n if (isObject(data)) {\n this._data = convertObjectDataToArray(data);\n } else if (_data !== data) {\n if (_data) {\n unlistenArrayEvents(_data, this);\n const meta = this._cachedMeta;\n clearStacks(meta);\n meta._parsed = [];\n }\n if (data && Object.isExtensible(data)) {\n listenArrayEvents(data, this);\n }\n this._syncList = [];\n this._data = data;\n }\n }\n addElements() {\n const meta = this._cachedMeta;\n this._dataCheck();\n if (this.datasetElementType) {\n meta.dataset = new this.datasetElementType();\n }\n }\n buildOrUpdateElements(resetNewElements) {\n const meta = this._cachedMeta;\n const dataset = this.getDataset();\n let stackChanged = false;\n this._dataCheck();\n const oldStacked = meta._stacked;\n meta._stacked = isStacked(meta.vScale, meta);\n if (meta.stack !== dataset.stack) {\n stackChanged = true;\n clearStacks(meta);\n meta.stack = dataset.stack;\n }\n this._resyncElements(resetNewElements);\n if (stackChanged || oldStacked !== meta._stacked) {\n updateStacks(this, meta._parsed);\n }\n }\n configure() {\n const config = this.chart.config;\n const scopeKeys = config.datasetScopeKeys(this._type);\n const scopes = config.getOptionScopes(this.getDataset(), scopeKeys, true);\n this.options = config.createResolver(scopes, this.getContext());\n this._parsing = this.options.parsing;\n this._cachedDataOpts = {};\n }\n parse(start, count) {\n const {_cachedMeta: meta, _data: data} = this;\n const {iScale, _stacked} = meta;\n const iAxis = iScale.axis;\n let sorted = start === 0 && count === data.length ? true : meta._sorted;\n let prev = start > 0 && meta._parsed[start - 1];\n let i, cur, parsed;\n if (this._parsing === false) {\n meta._parsed = data;\n meta._sorted = true;\n parsed = data;\n } else {\n if (isArray(data[start])) {\n parsed = this.parseArrayData(meta, data, start, count);\n } else if (isObject(data[start])) {\n parsed = this.parseObjectData(meta, data, start, count);\n } else {\n parsed = this.parsePrimitiveData(meta, data, start, count);\n }\n const isNotInOrderComparedToPrev = () => cur[iAxis] === null || (prev && cur[iAxis] < prev[iAxis]);\n for (i = 0; i < count; ++i) {\n meta._parsed[i + start] = cur = parsed[i];\n if (sorted) {\n if (isNotInOrderComparedToPrev()) {\n sorted = false;\n }\n prev = cur;\n }\n }\n meta._sorted = sorted;\n }\n if (_stacked) {\n updateStacks(this, parsed);\n }\n }\n parsePrimitiveData(meta, data, start, count) {\n const {iScale, vScale} = meta;\n const iAxis = iScale.axis;\n const vAxis = vScale.axis;\n const labels = iScale.getLabels();\n const singleScale = iScale === vScale;\n const parsed = new Array(count);\n let i, ilen, index;\n for (i = 0, ilen = count; i < ilen; ++i) {\n index = i + start;\n parsed[i] = {\n [iAxis]: singleScale || iScale.parse(labels[index], index),\n [vAxis]: vScale.parse(data[index], index)\n };\n }\n return parsed;\n }\n parseArrayData(meta, data, start, count) {\n const {xScale, yScale} = meta;\n const parsed = new Array(count);\n let i, ilen, index, item;\n for (i = 0, ilen = count; i < ilen; ++i) {\n index = i + start;\n item = data[index];\n parsed[i] = {\n x: xScale.parse(item[0], index),\n y: yScale.parse(item[1], index)\n };\n }\n return parsed;\n }\n parseObjectData(meta, data, start, count) {\n const {xScale, yScale} = meta;\n const {xAxisKey = 'x', yAxisKey = 'y'} = this._parsing;\n const parsed = new Array(count);\n let i, ilen, index, item;\n for (i = 0, ilen = count; i < ilen; ++i) {\n index = i + start;\n item = data[index];\n parsed[i] = {\n x: xScale.parse(resolveObjectKey(item, xAxisKey), index),\n y: yScale.parse(resolveObjectKey(item, yAxisKey), index)\n };\n }\n return parsed;\n }\n getParsed(index) {\n return this._cachedMeta._parsed[index];\n }\n getDataElement(index) {\n return this._cachedMeta.data[index];\n }\n applyStack(scale, parsed, mode) {\n const chart = this.chart;\n const meta = this._cachedMeta;\n const value = parsed[scale.axis];\n const stack = {\n keys: getSortedDatasetIndices(chart, true),\n values: parsed._stacks[scale.axis]\n };\n return applyStack(stack, value, meta.index, {mode});\n }\n updateRangeFromParsed(range, scale, parsed, stack) {\n const parsedValue = parsed[scale.axis];\n let value = parsedValue === null ? NaN : parsedValue;\n const values = stack && parsed._stacks[scale.axis];\n if (stack && values) {\n stack.values = values;\n value = applyStack(stack, parsedValue, this._cachedMeta.index);\n }\n range.min = Math.min(range.min, value);\n range.max = Math.max(range.max, value);\n }\n getMinMax(scale, canStack) {\n const meta = this._cachedMeta;\n const _parsed = meta._parsed;\n const sorted = meta._sorted && scale === meta.iScale;\n const ilen = _parsed.length;\n const otherScale = this._getOtherScale(scale);\n const stack = createStack(canStack, meta, this.chart);\n const range = {min: Number.POSITIVE_INFINITY, max: Number.NEGATIVE_INFINITY};\n const {min: otherMin, max: otherMax} = getUserBounds(otherScale);\n let i, parsed;\n function _skip() {\n parsed = _parsed[i];\n const otherValue = parsed[otherScale.axis];\n return !isNumberFinite(parsed[scale.axis]) || otherMin > otherValue || otherMax < otherValue;\n }\n for (i = 0; i < ilen; ++i) {\n if (_skip()) {\n continue;\n }\n this.updateRangeFromParsed(range, scale, parsed, stack);\n if (sorted) {\n break;\n }\n }\n if (sorted) {\n for (i = ilen - 1; i >= 0; --i) {\n if (_skip()) {\n continue;\n }\n this.updateRangeFromParsed(range, scale, parsed, stack);\n break;\n }\n }\n return range;\n }\n getAllParsedValues(scale) {\n const parsed = this._cachedMeta._parsed;\n const values = [];\n let i, ilen, value;\n for (i = 0, ilen = parsed.length; i < ilen; ++i) {\n value = parsed[i][scale.axis];\n if (isNumberFinite(value)) {\n values.push(value);\n }\n }\n return values;\n }\n getMaxOverflow() {\n return false;\n }\n getLabelAndValue(index) {\n const meta = this._cachedMeta;\n const iScale = meta.iScale;\n const vScale = meta.vScale;\n const parsed = this.getParsed(index);\n return {\n label: iScale ? '' + iScale.getLabelForValue(parsed[iScale.axis]) : '',\n value: vScale ? '' + vScale.getLabelForValue(parsed[vScale.axis]) : ''\n };\n }\n _update(mode) {\n const meta = this._cachedMeta;\n this.update(mode || 'default');\n meta._clip = toClip(valueOrDefault(this.options.clip, defaultClip(meta.xScale, meta.yScale, this.getMaxOverflow())));\n }\n update(mode) {}\n draw() {\n const ctx = this._ctx;\n const chart = this.chart;\n const meta = this._cachedMeta;\n const elements = meta.data || [];\n const area = chart.chartArea;\n const active = [];\n const start = this._drawStart || 0;\n const count = this._drawCount || (elements.length - start);\n const drawActiveElementsOnTop = this.options.drawActiveElementsOnTop;\n let i;\n if (meta.dataset) {\n meta.dataset.draw(ctx, area, start, count);\n }\n for (i = start; i < start + count; ++i) {\n const element = elements[i];\n if (element.hidden) {\n continue;\n }\n if (element.active && drawActiveElementsOnTop) {\n active.push(element);\n } else {\n element.draw(ctx, area);\n }\n }\n for (i = 0; i < active.length; ++i) {\n active[i].draw(ctx, area);\n }\n }\n getStyle(index, active) {\n const mode = active ? 'active' : 'default';\n return index === undefined && this._cachedMeta.dataset\n ? this.resolveDatasetElementOptions(mode)\n : this.resolveDataElementOptions(index || 0, mode);\n }\n getContext(index, active, mode) {\n const dataset = this.getDataset();\n let context;\n if (index >= 0 && index < this._cachedMeta.data.length) {\n const element = this._cachedMeta.data[index];\n context = element.$context ||\n (element.$context = createDataContext(this.getContext(), index, element));\n context.parsed = this.getParsed(index);\n context.raw = dataset.data[index];\n context.index = context.dataIndex = index;\n } else {\n context = this.$context ||\n (this.$context = createDatasetContext(this.chart.getContext(), this.index));\n context.dataset = dataset;\n context.index = context.datasetIndex = this.index;\n }\n context.active = !!active;\n context.mode = mode;\n return context;\n }\n resolveDatasetElementOptions(mode) {\n return this._resolveElementOptions(this.datasetElementType.id, mode);\n }\n resolveDataElementOptions(index, mode) {\n return this._resolveElementOptions(this.dataElementType.id, mode, index);\n }\n _resolveElementOptions(elementType, mode = 'default', index) {\n const active = mode === 'active';\n const cache = this._cachedDataOpts;\n const cacheKey = elementType + '-' + mode;\n const cached = cache[cacheKey];\n const sharing = this.enableOptionSharing && defined(index);\n if (cached) {\n return cloneIfNotShared(cached, sharing);\n }\n const config = this.chart.config;\n const scopeKeys = config.datasetElementScopeKeys(this._type, elementType);\n const prefixes = active ? [`${elementType}Hover`, 'hover', elementType, ''] : [elementType, ''];\n const scopes = config.getOptionScopes(this.getDataset(), scopeKeys);\n const names = Object.keys(defaults.elements[elementType]);\n const context = () => this.getContext(index, active);\n const values = config.resolveNamedOptions(scopes, names, context, prefixes);\n if (values.$shared) {\n values.$shared = sharing;\n cache[cacheKey] = Object.freeze(cloneIfNotShared(values, sharing));\n }\n return values;\n }\n _resolveAnimations(index, transition, active) {\n const chart = this.chart;\n const cache = this._cachedDataOpts;\n const cacheKey = `animation-${transition}`;\n const cached = cache[cacheKey];\n if (cached) {\n return cached;\n }\n let options;\n if (chart.options.animation !== false) {\n const config = this.chart.config;\n const scopeKeys = config.datasetAnimationScopeKeys(this._type, transition);\n const scopes = config.getOptionScopes(this.getDataset(), scopeKeys);\n options = config.createResolver(scopes, this.getContext(index, active, transition));\n }\n const animations = new Animations(chart, options && options.animations);\n if (options && options._cacheable) {\n cache[cacheKey] = Object.freeze(animations);\n }\n return animations;\n }\n getSharedOptions(options) {\n if (!options.$shared) {\n return;\n }\n return this._sharedOptions || (this._sharedOptions = Object.assign({}, options));\n }\n includeOptions(mode, sharedOptions) {\n return !sharedOptions || isDirectUpdateMode(mode) || this.chart._animationsDisabled;\n }\n _getSharedOptions(start, mode) {\n const firstOpts = this.resolveDataElementOptions(start, mode);\n const previouslySharedOptions = this._sharedOptions;\n const sharedOptions = this.getSharedOptions(firstOpts);\n const includeOptions = this.includeOptions(mode, sharedOptions) || (sharedOptions !== previouslySharedOptions);\n this.updateSharedOptions(sharedOptions, mode, firstOpts);\n return {sharedOptions, includeOptions};\n }\n updateElement(element, index, properties, mode) {\n if (isDirectUpdateMode(mode)) {\n Object.assign(element, properties);\n } else {\n this._resolveAnimations(index, mode).update(element, properties);\n }\n }\n updateSharedOptions(sharedOptions, mode, newOptions) {\n if (sharedOptions && !isDirectUpdateMode(mode)) {\n this._resolveAnimations(undefined, mode).update(sharedOptions, newOptions);\n }\n }\n _setStyle(element, index, mode, active) {\n element.active = active;\n const options = this.getStyle(index, active);\n this._resolveAnimations(index, mode, active).update(element, {\n options: (!active && this.getSharedOptions(options)) || options\n });\n }\n removeHoverStyle(element, datasetIndex, index) {\n this._setStyle(element, index, 'active', false);\n }\n setHoverStyle(element, datasetIndex, index) {\n this._setStyle(element, index, 'active', true);\n }\n _removeDatasetHoverStyle() {\n const element = this._cachedMeta.dataset;\n if (element) {\n this._setStyle(element, undefined, 'active', false);\n }\n }\n _setDatasetHoverStyle() {\n const element = this._cachedMeta.dataset;\n if (element) {\n this._setStyle(element, undefined, 'active', true);\n }\n }\n _resyncElements(resetNewElements) {\n const data = this._data;\n const elements = this._cachedMeta.data;\n for (const [method, arg1, arg2] of this._syncList) {\n this[method](arg1, arg2);\n }\n this._syncList = [];\n const numMeta = elements.length;\n const numData = data.length;\n const count = Math.min(numData, numMeta);\n if (count) {\n this.parse(0, count);\n }\n if (numData > numMeta) {\n this._insertElements(numMeta, numData - numMeta, resetNewElements);\n } else if (numData < numMeta) {\n this._removeElements(numData, numMeta - numData);\n }\n }\n _insertElements(start, count, resetNewElements = true) {\n const meta = this._cachedMeta;\n const data = meta.data;\n const end = start + count;\n let i;\n const move = (arr) => {\n arr.length += count;\n for (i = arr.length - 1; i >= end; i--) {\n arr[i] = arr[i - count];\n }\n };\n move(data);\n for (i = start; i < end; ++i) {\n data[i] = new this.dataElementType();\n }\n if (this._parsing) {\n move(meta._parsed);\n }\n this.parse(start, count);\n if (resetNewElements) {\n this.updateElements(data, start, count, 'reset');\n }\n }\n updateElements(element, start, count, mode) {}\n _removeElements(start, count) {\n const meta = this._cachedMeta;\n if (this._parsing) {\n const removed = meta._parsed.splice(start, count);\n if (meta._stacked) {\n clearStacks(meta, removed);\n }\n }\n meta.data.splice(start, count);\n }\n _sync(args) {\n if (this._parsing) {\n this._syncList.push(args);\n } else {\n const [method, arg1, arg2] = args;\n this[method](arg1, arg2);\n }\n this.chart._dataChanges.push([this.index, ...args]);\n }\n _onDataPush() {\n const count = arguments.length;\n this._sync(['_insertElements', this.getDataset().data.length - count, count]);\n }\n _onDataPop() {\n this._sync(['_removeElements', this._cachedMeta.data.length - 1, 1]);\n }\n _onDataShift() {\n this._sync(['_removeElements', 0, 1]);\n }\n _onDataSplice(start, count) {\n if (count) {\n this._sync(['_removeElements', start, count]);\n }\n const newCount = arguments.length - 2;\n if (newCount) {\n this._sync(['_insertElements', start, newCount]);\n }\n }\n _onDataUnshift() {\n this._sync(['_insertElements', 0, arguments.length]);\n }\n}\nDatasetController.defaults = {};\nDatasetController.prototype.datasetElementType = null;\nDatasetController.prototype.dataElementType = null;\n\nfunction getAllScaleValues(scale, type) {\n if (!scale._cache.$bar) {\n const visibleMetas = scale.getMatchingVisibleMetas(type);\n let values = [];\n for (let i = 0, ilen = visibleMetas.length; i < ilen; i++) {\n values = values.concat(visibleMetas[i].controller.getAllParsedValues(scale));\n }\n scale._cache.$bar = _arrayUnique(values.sort((a, b) => a - b));\n }\n return scale._cache.$bar;\n}\nfunction computeMinSampleSize(meta) {\n const scale = meta.iScale;\n const values = getAllScaleValues(scale, meta.type);\n let min = scale._length;\n let i, ilen, curr, prev;\n const updateMinAndPrev = () => {\n if (curr === 32767 || curr === -32768) {\n return;\n }\n if (defined(prev)) {\n min = Math.min(min, Math.abs(curr - prev) || min);\n }\n prev = curr;\n };\n for (i = 0, ilen = values.length; i < ilen; ++i) {\n curr = scale.getPixelForValue(values[i]);\n updateMinAndPrev();\n }\n prev = undefined;\n for (i = 0, ilen = scale.ticks.length; i < ilen; ++i) {\n curr = scale.getPixelForTick(i);\n updateMinAndPrev();\n }\n return min;\n}\nfunction computeFitCategoryTraits(index, ruler, options, stackCount) {\n const thickness = options.barThickness;\n let size, ratio;\n if (isNullOrUndef(thickness)) {\n size = ruler.min * options.categoryPercentage;\n ratio = options.barPercentage;\n } else {\n size = thickness * stackCount;\n ratio = 1;\n }\n return {\n chunk: size / stackCount,\n ratio,\n start: ruler.pixels[index] - (size / 2)\n };\n}\nfunction computeFlexCategoryTraits(index, ruler, options, stackCount) {\n const pixels = ruler.pixels;\n const curr = pixels[index];\n let prev = index > 0 ? pixels[index - 1] : null;\n let next = index < pixels.length - 1 ? pixels[index + 1] : null;\n const percent = options.categoryPercentage;\n if (prev === null) {\n prev = curr - (next === null ? ruler.end - ruler.start : next - curr);\n }\n if (next === null) {\n next = curr + curr - prev;\n }\n const start = curr - (curr - Math.min(prev, next)) / 2 * percent;\n const size = Math.abs(next - prev) / 2 * percent;\n return {\n chunk: size / stackCount,\n ratio: options.barPercentage,\n start\n };\n}\nfunction parseFloatBar(entry, item, vScale, i) {\n const startValue = vScale.parse(entry[0], i);\n const endValue = vScale.parse(entry[1], i);\n const min = Math.min(startValue, endValue);\n const max = Math.max(startValue, endValue);\n let barStart = min;\n let barEnd = max;\n if (Math.abs(min) > Math.abs(max)) {\n barStart = max;\n barEnd = min;\n }\n item[vScale.axis] = barEnd;\n item._custom = {\n barStart,\n barEnd,\n start: startValue,\n end: endValue,\n min,\n max\n };\n}\nfunction parseValue(entry, item, vScale, i) {\n if (isArray(entry)) {\n parseFloatBar(entry, item, vScale, i);\n } else {\n item[vScale.axis] = vScale.parse(entry, i);\n }\n return item;\n}\nfunction parseArrayOrPrimitive(meta, data, start, count) {\n const iScale = meta.iScale;\n const vScale = meta.vScale;\n const labels = iScale.getLabels();\n const singleScale = iScale === vScale;\n const parsed = [];\n let i, ilen, item, entry;\n for (i = start, ilen = start + count; i < ilen; ++i) {\n entry = data[i];\n item = {};\n item[iScale.axis] = singleScale || iScale.parse(labels[i], i);\n parsed.push(parseValue(entry, item, vScale, i));\n }\n return parsed;\n}\nfunction isFloatBar(custom) {\n return custom && custom.barStart !== undefined && custom.barEnd !== undefined;\n}\nfunction barSign(size, vScale, actualBase) {\n if (size !== 0) {\n return sign(size);\n }\n return (vScale.isHorizontal() ? 1 : -1) * (vScale.min >= actualBase ? 1 : -1);\n}\nfunction borderProps(properties) {\n let reverse, start, end, top, bottom;\n if (properties.horizontal) {\n reverse = properties.base > properties.x;\n start = 'left';\n end = 'right';\n } else {\n reverse = properties.base < properties.y;\n start = 'bottom';\n end = 'top';\n }\n if (reverse) {\n top = 'end';\n bottom = 'start';\n } else {\n top = 'start';\n bottom = 'end';\n }\n return {start, end, reverse, top, bottom};\n}\nfunction setBorderSkipped(properties, options, stack, index) {\n let edge = options.borderSkipped;\n const res = {};\n if (!edge) {\n properties.borderSkipped = res;\n return;\n }\n if (edge === true) {\n properties.borderSkipped = {top: true, right: true, bottom: true, left: true};\n return;\n }\n const {start, end, reverse, top, bottom} = borderProps(properties);\n if (edge === 'middle' && stack) {\n properties.enableBorderRadius = true;\n if ((stack._top || 0) === index) {\n edge = top;\n } else if ((stack._bottom || 0) === index) {\n edge = bottom;\n } else {\n res[parseEdge(bottom, start, end, reverse)] = true;\n edge = top;\n }\n }\n res[parseEdge(edge, start, end, reverse)] = true;\n properties.borderSkipped = res;\n}\nfunction parseEdge(edge, a, b, reverse) {\n if (reverse) {\n edge = swap(edge, a, b);\n edge = startEnd(edge, b, a);\n } else {\n edge = startEnd(edge, a, b);\n }\n return edge;\n}\nfunction swap(orig, v1, v2) {\n return orig === v1 ? v2 : orig === v2 ? v1 : orig;\n}\nfunction startEnd(v, start, end) {\n return v === 'start' ? start : v === 'end' ? end : v;\n}\nfunction setInflateAmount(properties, {inflateAmount}, ratio) {\n properties.inflateAmount = inflateAmount === 'auto'\n ? ratio === 1 ? 0.33 : 0\n : inflateAmount;\n}\nclass BarController extends DatasetController {\n parsePrimitiveData(meta, data, start, count) {\n return parseArrayOrPrimitive(meta, data, start, count);\n }\n parseArrayData(meta, data, start, count) {\n return parseArrayOrPrimitive(meta, data, start, count);\n }\n parseObjectData(meta, data, start, count) {\n const {iScale, vScale} = meta;\n const {xAxisKey = 'x', yAxisKey = 'y'} = this._parsing;\n const iAxisKey = iScale.axis === 'x' ? xAxisKey : yAxisKey;\n const vAxisKey = vScale.axis === 'x' ? xAxisKey : yAxisKey;\n const parsed = [];\n let i, ilen, item, obj;\n for (i = start, ilen = start + count; i < ilen; ++i) {\n obj = data[i];\n item = {};\n item[iScale.axis] = iScale.parse(resolveObjectKey(obj, iAxisKey), i);\n parsed.push(parseValue(resolveObjectKey(obj, vAxisKey), item, vScale, i));\n }\n return parsed;\n }\n updateRangeFromParsed(range, scale, parsed, stack) {\n super.updateRangeFromParsed(range, scale, parsed, stack);\n const custom = parsed._custom;\n if (custom && scale === this._cachedMeta.vScale) {\n range.min = Math.min(range.min, custom.min);\n range.max = Math.max(range.max, custom.max);\n }\n }\n getMaxOverflow() {\n return 0;\n }\n getLabelAndValue(index) {\n const meta = this._cachedMeta;\n const {iScale, vScale} = meta;\n const parsed = this.getParsed(index);\n const custom = parsed._custom;\n const value = isFloatBar(custom)\n ? '[' + custom.start + ', ' + custom.end + ']'\n : '' + vScale.getLabelForValue(parsed[vScale.axis]);\n return {\n label: '' + iScale.getLabelForValue(parsed[iScale.axis]),\n value\n };\n }\n initialize() {\n this.enableOptionSharing = true;\n super.initialize();\n const meta = this._cachedMeta;\n meta.stack = this.getDataset().stack;\n }\n update(mode) {\n const meta = this._cachedMeta;\n this.updateElements(meta.data, 0, meta.data.length, mode);\n }\n updateElements(bars, start, count, mode) {\n const reset = mode === 'reset';\n const {index, _cachedMeta: {vScale}} = this;\n const base = vScale.getBasePixel();\n const horizontal = vScale.isHorizontal();\n const ruler = this._getRuler();\n const {sharedOptions, includeOptions} = this._getSharedOptions(start, mode);\n for (let i = start; i < start + count; i++) {\n const parsed = this.getParsed(i);\n const vpixels = reset || isNullOrUndef(parsed[vScale.axis]) ? {base, head: base} : this._calculateBarValuePixels(i);\n const ipixels = this._calculateBarIndexPixels(i, ruler);\n const stack = (parsed._stacks || {})[vScale.axis];\n const properties = {\n horizontal,\n base: vpixels.base,\n enableBorderRadius: !stack || isFloatBar(parsed._custom) || (index === stack._top || index === stack._bottom),\n x: horizontal ? vpixels.head : ipixels.center,\n y: horizontal ? ipixels.center : vpixels.head,\n height: horizontal ? ipixels.size : Math.abs(vpixels.size),\n width: horizontal ? Math.abs(vpixels.size) : ipixels.size\n };\n if (includeOptions) {\n properties.options = sharedOptions || this.resolveDataElementOptions(i, bars[i].active ? 'active' : mode);\n }\n const options = properties.options || bars[i].options;\n setBorderSkipped(properties, options, stack, index);\n setInflateAmount(properties, options, ruler.ratio);\n this.updateElement(bars[i], i, properties, mode);\n }\n }\n _getStacks(last, dataIndex) {\n const {iScale} = this._cachedMeta;\n const metasets = iScale.getMatchingVisibleMetas(this._type)\n .filter(meta => meta.controller.options.grouped);\n const stacked = iScale.options.stacked;\n const stacks = [];\n const skipNull = (meta) => {\n const parsed = meta.controller.getParsed(dataIndex);\n const val = parsed && parsed[meta.vScale.axis];\n if (isNullOrUndef(val) || isNaN(val)) {\n return true;\n }\n };\n for (const meta of metasets) {\n if (dataIndex !== undefined && skipNull(meta)) {\n continue;\n }\n if (stacked === false || stacks.indexOf(meta.stack) === -1 ||\n\t\t\t\t(stacked === undefined && meta.stack === undefined)) {\n stacks.push(meta.stack);\n }\n if (meta.index === last) {\n break;\n }\n }\n if (!stacks.length) {\n stacks.push(undefined);\n }\n return stacks;\n }\n _getStackCount(index) {\n return this._getStacks(undefined, index).length;\n }\n _getStackIndex(datasetIndex, name, dataIndex) {\n const stacks = this._getStacks(datasetIndex, dataIndex);\n const index = (name !== undefined)\n ? stacks.indexOf(name)\n : -1;\n return (index === -1)\n ? stacks.length - 1\n : index;\n }\n _getRuler() {\n const opts = this.options;\n const meta = this._cachedMeta;\n const iScale = meta.iScale;\n const pixels = [];\n let i, ilen;\n for (i = 0, ilen = meta.data.length; i < ilen; ++i) {\n pixels.push(iScale.getPixelForValue(this.getParsed(i)[iScale.axis], i));\n }\n const barThickness = opts.barThickness;\n const min = barThickness || computeMinSampleSize(meta);\n return {\n min,\n pixels,\n start: iScale._startPixel,\n end: iScale._endPixel,\n stackCount: this._getStackCount(),\n scale: iScale,\n grouped: opts.grouped,\n ratio: barThickness ? 1 : opts.categoryPercentage * opts.barPercentage\n };\n }\n _calculateBarValuePixels(index) {\n const {_cachedMeta: {vScale, _stacked}, options: {base: baseValue, minBarLength}} = this;\n const actualBase = baseValue || 0;\n const parsed = this.getParsed(index);\n const custom = parsed._custom;\n const floating = isFloatBar(custom);\n let value = parsed[vScale.axis];\n let start = 0;\n let length = _stacked ? this.applyStack(vScale, parsed, _stacked) : value;\n let head, size;\n if (length !== value) {\n start = length - value;\n length = value;\n }\n if (floating) {\n value = custom.barStart;\n length = custom.barEnd - custom.barStart;\n if (value !== 0 && sign(value) !== sign(custom.barEnd)) {\n start = 0;\n }\n start += value;\n }\n const startValue = !isNullOrUndef(baseValue) && !floating ? baseValue : start;\n let base = vScale.getPixelForValue(startValue);\n if (this.chart.getDataVisibility(index)) {\n head = vScale.getPixelForValue(start + length);\n } else {\n head = base;\n }\n size = head - base;\n if (Math.abs(size) < minBarLength) {\n size = barSign(size, vScale, actualBase) * minBarLength;\n if (value === actualBase) {\n base -= size / 2;\n }\n const startPixel = vScale.getPixelForDecimal(0);\n const endPixel = vScale.getPixelForDecimal(1);\n const min = Math.min(startPixel, endPixel);\n const max = Math.max(startPixel, endPixel);\n base = Math.max(Math.min(base, max), min);\n head = base + size;\n }\n if (base === vScale.getPixelForValue(actualBase)) {\n const halfGrid = sign(size) * vScale.getLineWidthForValue(actualBase) / 2;\n base += halfGrid;\n size -= halfGrid;\n }\n return {\n size,\n base,\n head,\n center: head + size / 2\n };\n }\n _calculateBarIndexPixels(index, ruler) {\n const scale = ruler.scale;\n const options = this.options;\n const skipNull = options.skipNull;\n const maxBarThickness = valueOrDefault(options.maxBarThickness, Infinity);\n let center, size;\n if (ruler.grouped) {\n const stackCount = skipNull ? this._getStackCount(index) : ruler.stackCount;\n const range = options.barThickness === 'flex'\n ? computeFlexCategoryTraits(index, ruler, options, stackCount)\n : computeFitCategoryTraits(index, ruler, options, stackCount);\n const stackIndex = this._getStackIndex(this.index, this._cachedMeta.stack, skipNull ? index : undefined);\n center = range.start + (range.chunk * stackIndex) + (range.chunk / 2);\n size = Math.min(maxBarThickness, range.chunk * range.ratio);\n } else {\n center = scale.getPixelForValue(this.getParsed(index)[scale.axis], index);\n size = Math.min(maxBarThickness, ruler.min * ruler.ratio);\n }\n return {\n base: center - size / 2,\n head: center + size / 2,\n center,\n size\n };\n }\n draw() {\n const meta = this._cachedMeta;\n const vScale = meta.vScale;\n const rects = meta.data;\n const ilen = rects.length;\n let i = 0;\n for (; i < ilen; ++i) {\n if (this.getParsed(i)[vScale.axis] !== null) {\n rects[i].draw(this._ctx);\n }\n }\n }\n}\nBarController.id = 'bar';\nBarController.defaults = {\n datasetElementType: false,\n dataElementType: 'bar',\n categoryPercentage: 0.8,\n barPercentage: 0.9,\n grouped: true,\n animations: {\n numbers: {\n type: 'number',\n properties: ['x', 'y', 'base', 'width', 'height']\n }\n }\n};\nBarController.overrides = {\n scales: {\n _index_: {\n type: 'category',\n offset: true,\n grid: {\n offset: true\n }\n },\n _value_: {\n type: 'linear',\n beginAtZero: true,\n }\n }\n};\n\nclass BubbleController extends DatasetController {\n initialize() {\n this.enableOptionSharing = true;\n super.initialize();\n }\n parsePrimitiveData(meta, data, start, count) {\n const parsed = super.parsePrimitiveData(meta, data, start, count);\n for (let i = 0; i < parsed.length; i++) {\n parsed[i]._custom = this.resolveDataElementOptions(i + start).radius;\n }\n return parsed;\n }\n parseArrayData(meta, data, start, count) {\n const parsed = super.parseArrayData(meta, data, start, count);\n for (let i = 0; i < parsed.length; i++) {\n const item = data[start + i];\n parsed[i]._custom = valueOrDefault(item[2], this.resolveDataElementOptions(i + start).radius);\n }\n return parsed;\n }\n parseObjectData(meta, data, start, count) {\n const parsed = super.parseObjectData(meta, data, start, count);\n for (let i = 0; i < parsed.length; i++) {\n const item = data[start + i];\n parsed[i]._custom = valueOrDefault(item && item.r && +item.r, this.resolveDataElementOptions(i + start).radius);\n }\n return parsed;\n }\n getMaxOverflow() {\n const data = this._cachedMeta.data;\n let max = 0;\n for (let i = data.length - 1; i >= 0; --i) {\n max = Math.max(max, data[i].size(this.resolveDataElementOptions(i)) / 2);\n }\n return max > 0 && max;\n }\n getLabelAndValue(index) {\n const meta = this._cachedMeta;\n const {xScale, yScale} = meta;\n const parsed = this.getParsed(index);\n const x = xScale.getLabelForValue(parsed.x);\n const y = yScale.getLabelForValue(parsed.y);\n const r = parsed._custom;\n return {\n label: meta.label,\n value: '(' + x + ', ' + y + (r ? ', ' + r : '') + ')'\n };\n }\n update(mode) {\n const points = this._cachedMeta.data;\n this.updateElements(points, 0, points.length, mode);\n }\n updateElements(points, start, count, mode) {\n const reset = mode === 'reset';\n const {iScale, vScale} = this._cachedMeta;\n const {sharedOptions, includeOptions} = this._getSharedOptions(start, mode);\n const iAxis = iScale.axis;\n const vAxis = vScale.axis;\n for (let i = start; i < start + count; i++) {\n const point = points[i];\n const parsed = !reset && this.getParsed(i);\n const properties = {};\n const iPixel = properties[iAxis] = reset ? iScale.getPixelForDecimal(0.5) : iScale.getPixelForValue(parsed[iAxis]);\n const vPixel = properties[vAxis] = reset ? vScale.getBasePixel() : vScale.getPixelForValue(parsed[vAxis]);\n properties.skip = isNaN(iPixel) || isNaN(vPixel);\n if (includeOptions) {\n properties.options = sharedOptions || this.resolveDataElementOptions(i, point.active ? 'active' : mode);\n if (reset) {\n properties.options.radius = 0;\n }\n }\n this.updateElement(point, i, properties, mode);\n }\n }\n resolveDataElementOptions(index, mode) {\n const parsed = this.getParsed(index);\n let values = super.resolveDataElementOptions(index, mode);\n if (values.$shared) {\n values = Object.assign({}, values, {$shared: false});\n }\n const radius = values.radius;\n if (mode !== 'active') {\n values.radius = 0;\n }\n values.radius += valueOrDefault(parsed && parsed._custom, radius);\n return values;\n }\n}\nBubbleController.id = 'bubble';\nBubbleController.defaults = {\n datasetElementType: false,\n dataElementType: 'point',\n animations: {\n numbers: {\n type: 'number',\n properties: ['x', 'y', 'borderWidth', 'radius']\n }\n }\n};\nBubbleController.overrides = {\n scales: {\n x: {\n type: 'linear'\n },\n y: {\n type: 'linear'\n }\n },\n plugins: {\n tooltip: {\n callbacks: {\n title() {\n return '';\n }\n }\n }\n }\n};\n\nfunction getRatioAndOffset(rotation, circumference, cutout) {\n let ratioX = 1;\n let ratioY = 1;\n let offsetX = 0;\n let offsetY = 0;\n if (circumference < TAU) {\n const startAngle = rotation;\n const endAngle = startAngle + circumference;\n const startX = Math.cos(startAngle);\n const startY = Math.sin(startAngle);\n const endX = Math.cos(endAngle);\n const endY = Math.sin(endAngle);\n const calcMax = (angle, a, b) => _angleBetween(angle, startAngle, endAngle, true) ? 1 : Math.max(a, a * cutout, b, b * cutout);\n const calcMin = (angle, a, b) => _angleBetween(angle, startAngle, endAngle, true) ? -1 : Math.min(a, a * cutout, b, b * cutout);\n const maxX = calcMax(0, startX, endX);\n const maxY = calcMax(HALF_PI, startY, endY);\n const minX = calcMin(PI, startX, endX);\n const minY = calcMin(PI + HALF_PI, startY, endY);\n ratioX = (maxX - minX) / 2;\n ratioY = (maxY - minY) / 2;\n offsetX = -(maxX + minX) / 2;\n offsetY = -(maxY + minY) / 2;\n }\n return {ratioX, ratioY, offsetX, offsetY};\n}\nclass DoughnutController extends DatasetController {\n constructor(chart, datasetIndex) {\n super(chart, datasetIndex);\n this.enableOptionSharing = true;\n this.innerRadius = undefined;\n this.outerRadius = undefined;\n this.offsetX = undefined;\n this.offsetY = undefined;\n }\n linkScales() {}\n parse(start, count) {\n const data = this.getDataset().data;\n const meta = this._cachedMeta;\n if (this._parsing === false) {\n meta._parsed = data;\n } else {\n let getter = (i) => +data[i];\n if (isObject(data[start])) {\n const {key = 'value'} = this._parsing;\n getter = (i) => +resolveObjectKey(data[i], key);\n }\n let i, ilen;\n for (i = start, ilen = start + count; i < ilen; ++i) {\n meta._parsed[i] = getter(i);\n }\n }\n }\n _getRotation() {\n return toRadians(this.options.rotation - 90);\n }\n _getCircumference() {\n return toRadians(this.options.circumference);\n }\n _getRotationExtents() {\n let min = TAU;\n let max = -TAU;\n for (let i = 0; i < this.chart.data.datasets.length; ++i) {\n if (this.chart.isDatasetVisible(i)) {\n const controller = this.chart.getDatasetMeta(i).controller;\n const rotation = controller._getRotation();\n const circumference = controller._getCircumference();\n min = Math.min(min, rotation);\n max = Math.max(max, rotation + circumference);\n }\n }\n return {\n rotation: min,\n circumference: max - min,\n };\n }\n update(mode) {\n const chart = this.chart;\n const {chartArea} = chart;\n const meta = this._cachedMeta;\n const arcs = meta.data;\n const spacing = this.getMaxBorderWidth() + this.getMaxOffset(arcs) + this.options.spacing;\n const maxSize = Math.max((Math.min(chartArea.width, chartArea.height) - spacing) / 2, 0);\n const cutout = Math.min(toPercentage(this.options.cutout, maxSize), 1);\n const chartWeight = this._getRingWeight(this.index);\n const {circumference, rotation} = this._getRotationExtents();\n const {ratioX, ratioY, offsetX, offsetY} = getRatioAndOffset(rotation, circumference, cutout);\n const maxWidth = (chartArea.width - spacing) / ratioX;\n const maxHeight = (chartArea.height - spacing) / ratioY;\n const maxRadius = Math.max(Math.min(maxWidth, maxHeight) / 2, 0);\n const outerRadius = toDimension(this.options.radius, maxRadius);\n const innerRadius = Math.max(outerRadius * cutout, 0);\n const radiusLength = (outerRadius - innerRadius) / this._getVisibleDatasetWeightTotal();\n this.offsetX = offsetX * outerRadius;\n this.offsetY = offsetY * outerRadius;\n meta.total = this.calculateTotal();\n this.outerRadius = outerRadius - radiusLength * this._getRingWeightOffset(this.index);\n this.innerRadius = Math.max(this.outerRadius - radiusLength * chartWeight, 0);\n this.updateElements(arcs, 0, arcs.length, mode);\n }\n _circumference(i, reset) {\n const opts = this.options;\n const meta = this._cachedMeta;\n const circumference = this._getCircumference();\n if ((reset && opts.animation.animateRotate) || !this.chart.getDataVisibility(i) || meta._parsed[i] === null || meta.data[i].hidden) {\n return 0;\n }\n return this.calculateCircumference(meta._parsed[i] * circumference / TAU);\n }\n updateElements(arcs, start, count, mode) {\n const reset = mode === 'reset';\n const chart = this.chart;\n const chartArea = chart.chartArea;\n const opts = chart.options;\n const animationOpts = opts.animation;\n const centerX = (chartArea.left + chartArea.right) / 2;\n const centerY = (chartArea.top + chartArea.bottom) / 2;\n const animateScale = reset && animationOpts.animateScale;\n const innerRadius = animateScale ? 0 : this.innerRadius;\n const outerRadius = animateScale ? 0 : this.outerRadius;\n const {sharedOptions, includeOptions} = this._getSharedOptions(start, mode);\n let startAngle = this._getRotation();\n let i;\n for (i = 0; i < start; ++i) {\n startAngle += this._circumference(i, reset);\n }\n for (i = start; i < start + count; ++i) {\n const circumference = this._circumference(i, reset);\n const arc = arcs[i];\n const properties = {\n x: centerX + this.offsetX,\n y: centerY + this.offsetY,\n startAngle,\n endAngle: startAngle + circumference,\n circumference,\n outerRadius,\n innerRadius\n };\n if (includeOptions) {\n properties.options = sharedOptions || this.resolveDataElementOptions(i, arc.active ? 'active' : mode);\n }\n startAngle += circumference;\n this.updateElement(arc, i, properties, mode);\n }\n }\n calculateTotal() {\n const meta = this._cachedMeta;\n const metaData = meta.data;\n let total = 0;\n let i;\n for (i = 0; i < metaData.length; i++) {\n const value = meta._parsed[i];\n if (value !== null && !isNaN(value) && this.chart.getDataVisibility(i) && !metaData[i].hidden) {\n total += Math.abs(value);\n }\n }\n return total;\n }\n calculateCircumference(value) {\n const total = this._cachedMeta.total;\n if (total > 0 && !isNaN(value)) {\n return TAU * (Math.abs(value) / total);\n }\n return 0;\n }\n getLabelAndValue(index) {\n const meta = this._cachedMeta;\n const chart = this.chart;\n const labels = chart.data.labels || [];\n const value = formatNumber(meta._parsed[index], chart.options.locale);\n return {\n label: labels[index] || '',\n value,\n };\n }\n getMaxBorderWidth(arcs) {\n let max = 0;\n const chart = this.chart;\n let i, ilen, meta, controller, options;\n if (!arcs) {\n for (i = 0, ilen = chart.data.datasets.length; i < ilen; ++i) {\n if (chart.isDatasetVisible(i)) {\n meta = chart.getDatasetMeta(i);\n arcs = meta.data;\n controller = meta.controller;\n break;\n }\n }\n }\n if (!arcs) {\n return 0;\n }\n for (i = 0, ilen = arcs.length; i < ilen; ++i) {\n options = controller.resolveDataElementOptions(i);\n if (options.borderAlign !== 'inner') {\n max = Math.max(max, options.borderWidth || 0, options.hoverBorderWidth || 0);\n }\n }\n return max;\n }\n getMaxOffset(arcs) {\n let max = 0;\n for (let i = 0, ilen = arcs.length; i < ilen; ++i) {\n const options = this.resolveDataElementOptions(i);\n max = Math.max(max, options.offset || 0, options.hoverOffset || 0);\n }\n return max;\n }\n _getRingWeightOffset(datasetIndex) {\n let ringWeightOffset = 0;\n for (let i = 0; i < datasetIndex; ++i) {\n if (this.chart.isDatasetVisible(i)) {\n ringWeightOffset += this._getRingWeight(i);\n }\n }\n return ringWeightOffset;\n }\n _getRingWeight(datasetIndex) {\n return Math.max(valueOrDefault(this.chart.data.datasets[datasetIndex].weight, 1), 0);\n }\n _getVisibleDatasetWeightTotal() {\n return this._getRingWeightOffset(this.chart.data.datasets.length) || 1;\n }\n}\nDoughnutController.id = 'doughnut';\nDoughnutController.defaults = {\n datasetElementType: false,\n dataElementType: 'arc',\n animation: {\n animateRotate: true,\n animateScale: false\n },\n animations: {\n numbers: {\n type: 'number',\n properties: ['circumference', 'endAngle', 'innerRadius', 'outerRadius', 'startAngle', 'x', 'y', 'offset', 'borderWidth', 'spacing']\n },\n },\n cutout: '50%',\n rotation: 0,\n circumference: 360,\n radius: '100%',\n spacing: 0,\n indexAxis: 'r',\n};\nDoughnutController.descriptors = {\n _scriptable: (name) => name !== 'spacing',\n _indexable: (name) => name !== 'spacing',\n};\nDoughnutController.overrides = {\n aspectRatio: 1,\n plugins: {\n legend: {\n labels: {\n generateLabels(chart) {\n const data = chart.data;\n if (data.labels.length && data.datasets.length) {\n const {labels: {pointStyle}} = chart.legend.options;\n return data.labels.map((label, i) => {\n const meta = chart.getDatasetMeta(0);\n const style = meta.controller.getStyle(i);\n return {\n text: label,\n fillStyle: style.backgroundColor,\n strokeStyle: style.borderColor,\n lineWidth: style.borderWidth,\n pointStyle: pointStyle,\n hidden: !chart.getDataVisibility(i),\n index: i\n };\n });\n }\n return [];\n }\n },\n onClick(e, legendItem, legend) {\n legend.chart.toggleDataVisibility(legendItem.index);\n legend.chart.update();\n }\n },\n tooltip: {\n callbacks: {\n title() {\n return '';\n },\n label(tooltipItem) {\n let dataLabel = tooltipItem.label;\n const value = ': ' + tooltipItem.formattedValue;\n if (isArray(dataLabel)) {\n dataLabel = dataLabel.slice();\n dataLabel[0] += value;\n } else {\n dataLabel += value;\n }\n return dataLabel;\n }\n }\n }\n }\n};\n\nclass LineController extends DatasetController {\n initialize() {\n this.enableOptionSharing = true;\n this.supportsDecimation = true;\n super.initialize();\n }\n update(mode) {\n const meta = this._cachedMeta;\n const {dataset: line, data: points = [], _dataset} = meta;\n const animationsDisabled = this.chart._animationsDisabled;\n let {start, count} = _getStartAndCountOfVisiblePoints(meta, points, animationsDisabled);\n this._drawStart = start;\n this._drawCount = count;\n if (_scaleRangesChanged(meta)) {\n start = 0;\n count = points.length;\n }\n line._chart = this.chart;\n line._datasetIndex = this.index;\n line._decimated = !!_dataset._decimated;\n line.points = points;\n const options = this.resolveDatasetElementOptions(mode);\n if (!this.options.showLine) {\n options.borderWidth = 0;\n }\n options.segment = this.options.segment;\n this.updateElement(line, undefined, {\n animated: !animationsDisabled,\n options\n }, mode);\n this.updateElements(points, start, count, mode);\n }\n updateElements(points, start, count, mode) {\n const reset = mode === 'reset';\n const {iScale, vScale, _stacked, _dataset} = this._cachedMeta;\n const {sharedOptions, includeOptions} = this._getSharedOptions(start, mode);\n const iAxis = iScale.axis;\n const vAxis = vScale.axis;\n const {spanGaps, segment} = this.options;\n const maxGapLength = isNumber(spanGaps) ? spanGaps : Number.POSITIVE_INFINITY;\n const directUpdate = this.chart._animationsDisabled || reset || mode === 'none';\n let prevParsed = start > 0 && this.getParsed(start - 1);\n for (let i = start; i < start + count; ++i) {\n const point = points[i];\n const parsed = this.getParsed(i);\n const properties = directUpdate ? point : {};\n const nullData = isNullOrUndef(parsed[vAxis]);\n const iPixel = properties[iAxis] = iScale.getPixelForValue(parsed[iAxis], i);\n const vPixel = properties[vAxis] = reset || nullData ? vScale.getBasePixel() : vScale.getPixelForValue(_stacked ? this.applyStack(vScale, parsed, _stacked) : parsed[vAxis], i);\n properties.skip = isNaN(iPixel) || isNaN(vPixel) || nullData;\n properties.stop = i > 0 && (Math.abs(parsed[iAxis] - prevParsed[iAxis])) > maxGapLength;\n if (segment) {\n properties.parsed = parsed;\n properties.raw = _dataset.data[i];\n }\n if (includeOptions) {\n properties.options = sharedOptions || this.resolveDataElementOptions(i, point.active ? 'active' : mode);\n }\n if (!directUpdate) {\n this.updateElement(point, i, properties, mode);\n }\n prevParsed = parsed;\n }\n }\n getMaxOverflow() {\n const meta = this._cachedMeta;\n const dataset = meta.dataset;\n const border = dataset.options && dataset.options.borderWidth || 0;\n const data = meta.data || [];\n if (!data.length) {\n return border;\n }\n const firstPoint = data[0].size(this.resolveDataElementOptions(0));\n const lastPoint = data[data.length - 1].size(this.resolveDataElementOptions(data.length - 1));\n return Math.max(border, firstPoint, lastPoint) / 2;\n }\n draw() {\n const meta = this._cachedMeta;\n meta.dataset.updateControlPoints(this.chart.chartArea, meta.iScale.axis);\n super.draw();\n }\n}\nLineController.id = 'line';\nLineController.defaults = {\n datasetElementType: 'line',\n dataElementType: 'point',\n showLine: true,\n spanGaps: false,\n};\nLineController.overrides = {\n scales: {\n _index_: {\n type: 'category',\n },\n _value_: {\n type: 'linear',\n },\n }\n};\n\nclass PolarAreaController extends DatasetController {\n constructor(chart, datasetIndex) {\n super(chart, datasetIndex);\n this.innerRadius = undefined;\n this.outerRadius = undefined;\n }\n getLabelAndValue(index) {\n const meta = this._cachedMeta;\n const chart = this.chart;\n const labels = chart.data.labels || [];\n const value = formatNumber(meta._parsed[index].r, chart.options.locale);\n return {\n label: labels[index] || '',\n value,\n };\n }\n parseObjectData(meta, data, start, count) {\n return _parseObjectDataRadialScale.bind(this)(meta, data, start, count);\n }\n update(mode) {\n const arcs = this._cachedMeta.data;\n this._updateRadius();\n this.updateElements(arcs, 0, arcs.length, mode);\n }\n getMinMax() {\n const meta = this._cachedMeta;\n const range = {min: Number.POSITIVE_INFINITY, max: Number.NEGATIVE_INFINITY};\n meta.data.forEach((element, index) => {\n const parsed = this.getParsed(index).r;\n if (!isNaN(parsed) && this.chart.getDataVisibility(index)) {\n if (parsed < range.min) {\n range.min = parsed;\n }\n if (parsed > range.max) {\n range.max = parsed;\n }\n }\n });\n return range;\n }\n _updateRadius() {\n const chart = this.chart;\n const chartArea = chart.chartArea;\n const opts = chart.options;\n const minSize = Math.min(chartArea.right - chartArea.left, chartArea.bottom - chartArea.top);\n const outerRadius = Math.max(minSize / 2, 0);\n const innerRadius = Math.max(opts.cutoutPercentage ? (outerRadius / 100) * (opts.cutoutPercentage) : 1, 0);\n const radiusLength = (outerRadius - innerRadius) / chart.getVisibleDatasetCount();\n this.outerRadius = outerRadius - (radiusLength * this.index);\n this.innerRadius = this.outerRadius - radiusLength;\n }\n updateElements(arcs, start, count, mode) {\n const reset = mode === 'reset';\n const chart = this.chart;\n const opts = chart.options;\n const animationOpts = opts.animation;\n const scale = this._cachedMeta.rScale;\n const centerX = scale.xCenter;\n const centerY = scale.yCenter;\n const datasetStartAngle = scale.getIndexAngle(0) - 0.5 * PI;\n let angle = datasetStartAngle;\n let i;\n const defaultAngle = 360 / this.countVisibleElements();\n for (i = 0; i < start; ++i) {\n angle += this._computeAngle(i, mode, defaultAngle);\n }\n for (i = start; i < start + count; i++) {\n const arc = arcs[i];\n let startAngle = angle;\n let endAngle = angle + this._computeAngle(i, mode, defaultAngle);\n let outerRadius = chart.getDataVisibility(i) ? scale.getDistanceFromCenterForValue(this.getParsed(i).r) : 0;\n angle = endAngle;\n if (reset) {\n if (animationOpts.animateScale) {\n outerRadius = 0;\n }\n if (animationOpts.animateRotate) {\n startAngle = endAngle = datasetStartAngle;\n }\n }\n const properties = {\n x: centerX,\n y: centerY,\n innerRadius: 0,\n outerRadius,\n startAngle,\n endAngle,\n options: this.resolveDataElementOptions(i, arc.active ? 'active' : mode)\n };\n this.updateElement(arc, i, properties, mode);\n }\n }\n countVisibleElements() {\n const meta = this._cachedMeta;\n let count = 0;\n meta.data.forEach((element, index) => {\n if (!isNaN(this.getParsed(index).r) && this.chart.getDataVisibility(index)) {\n count++;\n }\n });\n return count;\n }\n _computeAngle(index, mode, defaultAngle) {\n return this.chart.getDataVisibility(index)\n ? toRadians(this.resolveDataElementOptions(index, mode).angle || defaultAngle)\n : 0;\n }\n}\nPolarAreaController.id = 'polarArea';\nPolarAreaController.defaults = {\n dataElementType: 'arc',\n animation: {\n animateRotate: true,\n animateScale: true\n },\n animations: {\n numbers: {\n type: 'number',\n properties: ['x', 'y', 'startAngle', 'endAngle', 'innerRadius', 'outerRadius']\n },\n },\n indexAxis: 'r',\n startAngle: 0,\n};\nPolarAreaController.overrides = {\n aspectRatio: 1,\n plugins: {\n legend: {\n labels: {\n generateLabels(chart) {\n const data = chart.data;\n if (data.labels.length && data.datasets.length) {\n const {labels: {pointStyle}} = chart.legend.options;\n return data.labels.map((label, i) => {\n const meta = chart.getDatasetMeta(0);\n const style = meta.controller.getStyle(i);\n return {\n text: label,\n fillStyle: style.backgroundColor,\n strokeStyle: style.borderColor,\n lineWidth: style.borderWidth,\n pointStyle: pointStyle,\n hidden: !chart.getDataVisibility(i),\n index: i\n };\n });\n }\n return [];\n }\n },\n onClick(e, legendItem, legend) {\n legend.chart.toggleDataVisibility(legendItem.index);\n legend.chart.update();\n }\n },\n tooltip: {\n callbacks: {\n title() {\n return '';\n },\n label(context) {\n return context.chart.data.labels[context.dataIndex] + ': ' + context.formattedValue;\n }\n }\n }\n },\n scales: {\n r: {\n type: 'radialLinear',\n angleLines: {\n display: false\n },\n beginAtZero: true,\n grid: {\n circular: true\n },\n pointLabels: {\n display: false\n },\n startAngle: 0\n }\n }\n};\n\nclass PieController extends DoughnutController {\n}\nPieController.id = 'pie';\nPieController.defaults = {\n cutout: 0,\n rotation: 0,\n circumference: 360,\n radius: '100%'\n};\n\nclass RadarController extends DatasetController {\n getLabelAndValue(index) {\n const vScale = this._cachedMeta.vScale;\n const parsed = this.getParsed(index);\n return {\n label: vScale.getLabels()[index],\n value: '' + vScale.getLabelForValue(parsed[vScale.axis])\n };\n }\n parseObjectData(meta, data, start, count) {\n return _parseObjectDataRadialScale.bind(this)(meta, data, start, count);\n }\n update(mode) {\n const meta = this._cachedMeta;\n const line = meta.dataset;\n const points = meta.data || [];\n const labels = meta.iScale.getLabels();\n line.points = points;\n if (mode !== 'resize') {\n const options = this.resolveDatasetElementOptions(mode);\n if (!this.options.showLine) {\n options.borderWidth = 0;\n }\n const properties = {\n _loop: true,\n _fullLoop: labels.length === points.length,\n options\n };\n this.updateElement(line, undefined, properties, mode);\n }\n this.updateElements(points, 0, points.length, mode);\n }\n updateElements(points, start, count, mode) {\n const scale = this._cachedMeta.rScale;\n const reset = mode === 'reset';\n for (let i = start; i < start + count; i++) {\n const point = points[i];\n const options = this.resolveDataElementOptions(i, point.active ? 'active' : mode);\n const pointPosition = scale.getPointPositionForValue(i, this.getParsed(i).r);\n const x = reset ? scale.xCenter : pointPosition.x;\n const y = reset ? scale.yCenter : pointPosition.y;\n const properties = {\n x,\n y,\n angle: pointPosition.angle,\n skip: isNaN(x) || isNaN(y),\n options\n };\n this.updateElement(point, i, properties, mode);\n }\n }\n}\nRadarController.id = 'radar';\nRadarController.defaults = {\n datasetElementType: 'line',\n dataElementType: 'point',\n indexAxis: 'r',\n showLine: true,\n elements: {\n line: {\n fill: 'start'\n }\n },\n};\nRadarController.overrides = {\n aspectRatio: 1,\n scales: {\n r: {\n type: 'radialLinear',\n }\n }\n};\n\nclass Element {\n constructor() {\n this.x = undefined;\n this.y = undefined;\n this.active = false;\n this.options = undefined;\n this.$animations = undefined;\n }\n tooltipPosition(useFinalPosition) {\n const {x, y} = this.getProps(['x', 'y'], useFinalPosition);\n return {x, y};\n }\n hasValue() {\n return isNumber(this.x) && isNumber(this.y);\n }\n getProps(props, final) {\n const anims = this.$animations;\n if (!final || !anims) {\n return this;\n }\n const ret = {};\n props.forEach(prop => {\n ret[prop] = anims[prop] && anims[prop].active() ? anims[prop]._to : this[prop];\n });\n return ret;\n }\n}\nElement.defaults = {};\nElement.defaultRoutes = undefined;\n\nconst formatters = {\n values(value) {\n return isArray(value) ? value : '' + value;\n },\n numeric(tickValue, index, ticks) {\n if (tickValue === 0) {\n return '0';\n }\n const locale = this.chart.options.locale;\n let notation;\n let delta = tickValue;\n if (ticks.length > 1) {\n const maxTick = Math.max(Math.abs(ticks[0].value), Math.abs(ticks[ticks.length - 1].value));\n if (maxTick < 1e-4 || maxTick > 1e+15) {\n notation = 'scientific';\n }\n delta = calculateDelta(tickValue, ticks);\n }\n const logDelta = log10(Math.abs(delta));\n const numDecimal = Math.max(Math.min(-1 * Math.floor(logDelta), 20), 0);\n const options = {notation, minimumFractionDigits: numDecimal, maximumFractionDigits: numDecimal};\n Object.assign(options, this.options.ticks.format);\n return formatNumber(tickValue, locale, options);\n },\n logarithmic(tickValue, index, ticks) {\n if (tickValue === 0) {\n return '0';\n }\n const remain = tickValue / (Math.pow(10, Math.floor(log10(tickValue))));\n if (remain === 1 || remain === 2 || remain === 5) {\n return formatters.numeric.call(this, tickValue, index, ticks);\n }\n return '';\n }\n};\nfunction calculateDelta(tickValue, ticks) {\n let delta = ticks.length > 3 ? ticks[2].value - ticks[1].value : ticks[1].value - ticks[0].value;\n if (Math.abs(delta) >= 1 && tickValue !== Math.floor(tickValue)) {\n delta = tickValue - Math.floor(tickValue);\n }\n return delta;\n}\nvar Ticks = {formatters};\n\ndefaults.set('scale', {\n display: true,\n offset: false,\n reverse: false,\n beginAtZero: false,\n bounds: 'ticks',\n grace: 0,\n grid: {\n display: true,\n lineWidth: 1,\n drawBorder: true,\n drawOnChartArea: true,\n drawTicks: true,\n tickLength: 8,\n tickWidth: (_ctx, options) => options.lineWidth,\n tickColor: (_ctx, options) => options.color,\n offset: false,\n borderDash: [],\n borderDashOffset: 0.0,\n borderWidth: 1\n },\n title: {\n display: false,\n text: '',\n padding: {\n top: 4,\n bottom: 4\n }\n },\n ticks: {\n minRotation: 0,\n maxRotation: 50,\n mirror: false,\n textStrokeWidth: 0,\n textStrokeColor: '',\n padding: 3,\n display: true,\n autoSkip: true,\n autoSkipPadding: 3,\n labelOffset: 0,\n callback: Ticks.formatters.values,\n minor: {},\n major: {},\n align: 'center',\n crossAlign: 'near',\n showLabelBackdrop: false,\n backdropColor: 'rgba(255, 255, 255, 0.75)',\n backdropPadding: 2,\n }\n});\ndefaults.route('scale.ticks', 'color', '', 'color');\ndefaults.route('scale.grid', 'color', '', 'borderColor');\ndefaults.route('scale.grid', 'borderColor', '', 'borderColor');\ndefaults.route('scale.title', 'color', '', 'color');\ndefaults.describe('scale', {\n _fallback: false,\n _scriptable: (name) => !name.startsWith('before') && !name.startsWith('after') && name !== 'callback' && name !== 'parser',\n _indexable: (name) => name !== 'borderDash' && name !== 'tickBorderDash',\n});\ndefaults.describe('scales', {\n _fallback: 'scale',\n});\ndefaults.describe('scale.ticks', {\n _scriptable: (name) => name !== 'backdropPadding' && name !== 'callback',\n _indexable: (name) => name !== 'backdropPadding',\n});\n\nfunction autoSkip(scale, ticks) {\n const tickOpts = scale.options.ticks;\n const ticksLimit = tickOpts.maxTicksLimit || determineMaxTicks(scale);\n const majorIndices = tickOpts.major.enabled ? getMajorIndices(ticks) : [];\n const numMajorIndices = majorIndices.length;\n const first = majorIndices[0];\n const last = majorIndices[numMajorIndices - 1];\n const newTicks = [];\n if (numMajorIndices > ticksLimit) {\n skipMajors(ticks, newTicks, majorIndices, numMajorIndices / ticksLimit);\n return newTicks;\n }\n const spacing = calculateSpacing(majorIndices, ticks, ticksLimit);\n if (numMajorIndices > 0) {\n let i, ilen;\n const avgMajorSpacing = numMajorIndices > 1 ? Math.round((last - first) / (numMajorIndices - 1)) : null;\n skip(ticks, newTicks, spacing, isNullOrUndef(avgMajorSpacing) ? 0 : first - avgMajorSpacing, first);\n for (i = 0, ilen = numMajorIndices - 1; i < ilen; i++) {\n skip(ticks, newTicks, spacing, majorIndices[i], majorIndices[i + 1]);\n }\n skip(ticks, newTicks, spacing, last, isNullOrUndef(avgMajorSpacing) ? ticks.length : last + avgMajorSpacing);\n return newTicks;\n }\n skip(ticks, newTicks, spacing);\n return newTicks;\n}\nfunction determineMaxTicks(scale) {\n const offset = scale.options.offset;\n const tickLength = scale._tickSize();\n const maxScale = scale._length / tickLength + (offset ? 0 : 1);\n const maxChart = scale._maxLength / tickLength;\n return Math.floor(Math.min(maxScale, maxChart));\n}\nfunction calculateSpacing(majorIndices, ticks, ticksLimit) {\n const evenMajorSpacing = getEvenSpacing(majorIndices);\n const spacing = ticks.length / ticksLimit;\n if (!evenMajorSpacing) {\n return Math.max(spacing, 1);\n }\n const factors = _factorize(evenMajorSpacing);\n for (let i = 0, ilen = factors.length - 1; i < ilen; i++) {\n const factor = factors[i];\n if (factor > spacing) {\n return factor;\n }\n }\n return Math.max(spacing, 1);\n}\nfunction getMajorIndices(ticks) {\n const result = [];\n let i, ilen;\n for (i = 0, ilen = ticks.length; i < ilen; i++) {\n if (ticks[i].major) {\n result.push(i);\n }\n }\n return result;\n}\nfunction skipMajors(ticks, newTicks, majorIndices, spacing) {\n let count = 0;\n let next = majorIndices[0];\n let i;\n spacing = Math.ceil(spacing);\n for (i = 0; i < ticks.length; i++) {\n if (i === next) {\n newTicks.push(ticks[i]);\n count++;\n next = majorIndices[count * spacing];\n }\n }\n}\nfunction skip(ticks, newTicks, spacing, majorStart, majorEnd) {\n const start = valueOrDefault(majorStart, 0);\n const end = Math.min(valueOrDefault(majorEnd, ticks.length), ticks.length);\n let count = 0;\n let length, i, next;\n spacing = Math.ceil(spacing);\n if (majorEnd) {\n length = majorEnd - majorStart;\n spacing = length / Math.floor(length / spacing);\n }\n next = start;\n while (next < 0) {\n count++;\n next = Math.round(start + count * spacing);\n }\n for (i = Math.max(start, 0); i < end; i++) {\n if (i === next) {\n newTicks.push(ticks[i]);\n count++;\n next = Math.round(start + count * spacing);\n }\n }\n}\nfunction getEvenSpacing(arr) {\n const len = arr.length;\n let i, diff;\n if (len < 2) {\n return false;\n }\n for (diff = arr[0], i = 1; i < len; ++i) {\n if (arr[i] - arr[i - 1] !== diff) {\n return false;\n }\n }\n return diff;\n}\n\nconst reverseAlign = (align) => align === 'left' ? 'right' : align === 'right' ? 'left' : align;\nconst offsetFromEdge = (scale, edge, offset) => edge === 'top' || edge === 'left' ? scale[edge] + offset : scale[edge] - offset;\nfunction sample(arr, numItems) {\n const result = [];\n const increment = arr.length / numItems;\n const len = arr.length;\n let i = 0;\n for (; i < len; i += increment) {\n result.push(arr[Math.floor(i)]);\n }\n return result;\n}\nfunction getPixelForGridLine(scale, index, offsetGridLines) {\n const length = scale.ticks.length;\n const validIndex = Math.min(index, length - 1);\n const start = scale._startPixel;\n const end = scale._endPixel;\n const epsilon = 1e-6;\n let lineValue = scale.getPixelForTick(validIndex);\n let offset;\n if (offsetGridLines) {\n if (length === 1) {\n offset = Math.max(lineValue - start, end - lineValue);\n } else if (index === 0) {\n offset = (scale.getPixelForTick(1) - lineValue) / 2;\n } else {\n offset = (lineValue - scale.getPixelForTick(validIndex - 1)) / 2;\n }\n lineValue += validIndex < index ? offset : -offset;\n if (lineValue < start - epsilon || lineValue > end + epsilon) {\n return;\n }\n }\n return lineValue;\n}\nfunction garbageCollect(caches, length) {\n each(caches, (cache) => {\n const gc = cache.gc;\n const gcLen = gc.length / 2;\n let i;\n if (gcLen > length) {\n for (i = 0; i < gcLen; ++i) {\n delete cache.data[gc[i]];\n }\n gc.splice(0, gcLen);\n }\n });\n}\nfunction getTickMarkLength(options) {\n return options.drawTicks ? options.tickLength : 0;\n}\nfunction getTitleHeight(options, fallback) {\n if (!options.display) {\n return 0;\n }\n const font = toFont(options.font, fallback);\n const padding = toPadding(options.padding);\n const lines = isArray(options.text) ? options.text.length : 1;\n return (lines * font.lineHeight) + padding.height;\n}\nfunction createScaleContext(parent, scale) {\n return createContext(parent, {\n scale,\n type: 'scale'\n });\n}\nfunction createTickContext(parent, index, tick) {\n return createContext(parent, {\n tick,\n index,\n type: 'tick'\n });\n}\nfunction titleAlign(align, position, reverse) {\n let ret = _toLeftRightCenter(align);\n if ((reverse && position !== 'right') || (!reverse && position === 'right')) {\n ret = reverseAlign(ret);\n }\n return ret;\n}\nfunction titleArgs(scale, offset, position, align) {\n const {top, left, bottom, right, chart} = scale;\n const {chartArea, scales} = chart;\n let rotation = 0;\n let maxWidth, titleX, titleY;\n const height = bottom - top;\n const width = right - left;\n if (scale.isHorizontal()) {\n titleX = _alignStartEnd(align, left, right);\n if (isObject(position)) {\n const positionAxisID = Object.keys(position)[0];\n const value = position[positionAxisID];\n titleY = scales[positionAxisID].getPixelForValue(value) + height - offset;\n } else if (position === 'center') {\n titleY = (chartArea.bottom + chartArea.top) / 2 + height - offset;\n } else {\n titleY = offsetFromEdge(scale, position, offset);\n }\n maxWidth = right - left;\n } else {\n if (isObject(position)) {\n const positionAxisID = Object.keys(position)[0];\n const value = position[positionAxisID];\n titleX = scales[positionAxisID].getPixelForValue(value) - width + offset;\n } else if (position === 'center') {\n titleX = (chartArea.left + chartArea.right) / 2 - width + offset;\n } else {\n titleX = offsetFromEdge(scale, position, offset);\n }\n titleY = _alignStartEnd(align, bottom, top);\n rotation = position === 'left' ? -HALF_PI : HALF_PI;\n }\n return {titleX, titleY, maxWidth, rotation};\n}\nclass Scale extends Element {\n constructor(cfg) {\n super();\n this.id = cfg.id;\n this.type = cfg.type;\n this.options = undefined;\n this.ctx = cfg.ctx;\n this.chart = cfg.chart;\n this.top = undefined;\n this.bottom = undefined;\n this.left = undefined;\n this.right = undefined;\n this.width = undefined;\n this.height = undefined;\n this._margins = {\n left: 0,\n right: 0,\n top: 0,\n bottom: 0\n };\n this.maxWidth = undefined;\n this.maxHeight = undefined;\n this.paddingTop = undefined;\n this.paddingBottom = undefined;\n this.paddingLeft = undefined;\n this.paddingRight = undefined;\n this.axis = undefined;\n this.labelRotation = undefined;\n this.min = undefined;\n this.max = undefined;\n this._range = undefined;\n this.ticks = [];\n this._gridLineItems = null;\n this._labelItems = null;\n this._labelSizes = null;\n this._length = 0;\n this._maxLength = 0;\n this._longestTextCache = {};\n this._startPixel = undefined;\n this._endPixel = undefined;\n this._reversePixels = false;\n this._userMax = undefined;\n this._userMin = undefined;\n this._suggestedMax = undefined;\n this._suggestedMin = undefined;\n this._ticksLength = 0;\n this._borderValue = 0;\n this._cache = {};\n this._dataLimitsCached = false;\n this.$context = undefined;\n }\n init(options) {\n this.options = options.setContext(this.getContext());\n this.axis = options.axis;\n this._userMin = this.parse(options.min);\n this._userMax = this.parse(options.max);\n this._suggestedMin = this.parse(options.suggestedMin);\n this._suggestedMax = this.parse(options.suggestedMax);\n }\n parse(raw, index) {\n return raw;\n }\n getUserBounds() {\n let {_userMin, _userMax, _suggestedMin, _suggestedMax} = this;\n _userMin = finiteOrDefault(_userMin, Number.POSITIVE_INFINITY);\n _userMax = finiteOrDefault(_userMax, Number.NEGATIVE_INFINITY);\n _suggestedMin = finiteOrDefault(_suggestedMin, Number.POSITIVE_INFINITY);\n _suggestedMax = finiteOrDefault(_suggestedMax, Number.NEGATIVE_INFINITY);\n return {\n min: finiteOrDefault(_userMin, _suggestedMin),\n max: finiteOrDefault(_userMax, _suggestedMax),\n minDefined: isNumberFinite(_userMin),\n maxDefined: isNumberFinite(_userMax)\n };\n }\n getMinMax(canStack) {\n let {min, max, minDefined, maxDefined} = this.getUserBounds();\n let range;\n if (minDefined && maxDefined) {\n return {min, max};\n }\n const metas = this.getMatchingVisibleMetas();\n for (let i = 0, ilen = metas.length; i < ilen; ++i) {\n range = metas[i].controller.getMinMax(this, canStack);\n if (!minDefined) {\n min = Math.min(min, range.min);\n }\n if (!maxDefined) {\n max = Math.max(max, range.max);\n }\n }\n min = maxDefined && min > max ? max : min;\n max = minDefined && min > max ? min : max;\n return {\n min: finiteOrDefault(min, finiteOrDefault(max, min)),\n max: finiteOrDefault(max, finiteOrDefault(min, max))\n };\n }\n getPadding() {\n return {\n left: this.paddingLeft || 0,\n top: this.paddingTop || 0,\n right: this.paddingRight || 0,\n bottom: this.paddingBottom || 0\n };\n }\n getTicks() {\n return this.ticks;\n }\n getLabels() {\n const data = this.chart.data;\n return this.options.labels || (this.isHorizontal() ? data.xLabels : data.yLabels) || data.labels || [];\n }\n beforeLayout() {\n this._cache = {};\n this._dataLimitsCached = false;\n }\n beforeUpdate() {\n callback(this.options.beforeUpdate, [this]);\n }\n update(maxWidth, maxHeight, margins) {\n const {beginAtZero, grace, ticks: tickOpts} = this.options;\n const sampleSize = tickOpts.sampleSize;\n this.beforeUpdate();\n this.maxWidth = maxWidth;\n this.maxHeight = maxHeight;\n this._margins = margins = Object.assign({\n left: 0,\n right: 0,\n top: 0,\n bottom: 0\n }, margins);\n this.ticks = null;\n this._labelSizes = null;\n this._gridLineItems = null;\n this._labelItems = null;\n this.beforeSetDimensions();\n this.setDimensions();\n this.afterSetDimensions();\n this._maxLength = this.isHorizontal()\n ? this.width + margins.left + margins.right\n : this.height + margins.top + margins.bottom;\n if (!this._dataLimitsCached) {\n this.beforeDataLimits();\n this.determineDataLimits();\n this.afterDataLimits();\n this._range = _addGrace(this, grace, beginAtZero);\n this._dataLimitsCached = true;\n }\n this.beforeBuildTicks();\n this.ticks = this.buildTicks() || [];\n this.afterBuildTicks();\n const samplingEnabled = sampleSize < this.ticks.length;\n this._convertTicksToLabels(samplingEnabled ? sample(this.ticks, sampleSize) : this.ticks);\n this.configure();\n this.beforeCalculateLabelRotation();\n this.calculateLabelRotation();\n this.afterCalculateLabelRotation();\n if (tickOpts.display && (tickOpts.autoSkip || tickOpts.source === 'auto')) {\n this.ticks = autoSkip(this, this.ticks);\n this._labelSizes = null;\n this.afterAutoSkip();\n }\n if (samplingEnabled) {\n this._convertTicksToLabels(this.ticks);\n }\n this.beforeFit();\n this.fit();\n this.afterFit();\n this.afterUpdate();\n }\n configure() {\n let reversePixels = this.options.reverse;\n let startPixel, endPixel;\n if (this.isHorizontal()) {\n startPixel = this.left;\n endPixel = this.right;\n } else {\n startPixel = this.top;\n endPixel = this.bottom;\n reversePixels = !reversePixels;\n }\n this._startPixel = startPixel;\n this._endPixel = endPixel;\n this._reversePixels = reversePixels;\n this._length = endPixel - startPixel;\n this._alignToPixels = this.options.alignToPixels;\n }\n afterUpdate() {\n callback(this.options.afterUpdate, [this]);\n }\n beforeSetDimensions() {\n callback(this.options.beforeSetDimensions, [this]);\n }\n setDimensions() {\n if (this.isHorizontal()) {\n this.width = this.maxWidth;\n this.left = 0;\n this.right = this.width;\n } else {\n this.height = this.maxHeight;\n this.top = 0;\n this.bottom = this.height;\n }\n this.paddingLeft = 0;\n this.paddingTop = 0;\n this.paddingRight = 0;\n this.paddingBottom = 0;\n }\n afterSetDimensions() {\n callback(this.options.afterSetDimensions, [this]);\n }\n _callHooks(name) {\n this.chart.notifyPlugins(name, this.getContext());\n callback(this.options[name], [this]);\n }\n beforeDataLimits() {\n this._callHooks('beforeDataLimits');\n }\n determineDataLimits() {}\n afterDataLimits() {\n this._callHooks('afterDataLimits');\n }\n beforeBuildTicks() {\n this._callHooks('beforeBuildTicks');\n }\n buildTicks() {\n return [];\n }\n afterBuildTicks() {\n this._callHooks('afterBuildTicks');\n }\n beforeTickToLabelConversion() {\n callback(this.options.beforeTickToLabelConversion, [this]);\n }\n generateTickLabels(ticks) {\n const tickOpts = this.options.ticks;\n let i, ilen, tick;\n for (i = 0, ilen = ticks.length; i < ilen; i++) {\n tick = ticks[i];\n tick.label = callback(tickOpts.callback, [tick.value, i, ticks], this);\n }\n }\n afterTickToLabelConversion() {\n callback(this.options.afterTickToLabelConversion, [this]);\n }\n beforeCalculateLabelRotation() {\n callback(this.options.beforeCalculateLabelRotation, [this]);\n }\n calculateLabelRotation() {\n const options = this.options;\n const tickOpts = options.ticks;\n const numTicks = this.ticks.length;\n const minRotation = tickOpts.minRotation || 0;\n const maxRotation = tickOpts.maxRotation;\n let labelRotation = minRotation;\n let tickWidth, maxHeight, maxLabelDiagonal;\n if (!this._isVisible() || !tickOpts.display || minRotation >= maxRotation || numTicks <= 1 || !this.isHorizontal()) {\n this.labelRotation = minRotation;\n return;\n }\n const labelSizes = this._getLabelSizes();\n const maxLabelWidth = labelSizes.widest.width;\n const maxLabelHeight = labelSizes.highest.height;\n const maxWidth = _limitValue(this.chart.width - maxLabelWidth, 0, this.maxWidth);\n tickWidth = options.offset ? this.maxWidth / numTicks : maxWidth / (numTicks - 1);\n if (maxLabelWidth + 6 > tickWidth) {\n tickWidth = maxWidth / (numTicks - (options.offset ? 0.5 : 1));\n maxHeight = this.maxHeight - getTickMarkLength(options.grid)\n\t\t\t\t- tickOpts.padding - getTitleHeight(options.title, this.chart.options.font);\n maxLabelDiagonal = Math.sqrt(maxLabelWidth * maxLabelWidth + maxLabelHeight * maxLabelHeight);\n labelRotation = toDegrees(Math.min(\n Math.asin(_limitValue((labelSizes.highest.height + 6) / tickWidth, -1, 1)),\n Math.asin(_limitValue(maxHeight / maxLabelDiagonal, -1, 1)) - Math.asin(_limitValue(maxLabelHeight / maxLabelDiagonal, -1, 1))\n ));\n labelRotation = Math.max(minRotation, Math.min(maxRotation, labelRotation));\n }\n this.labelRotation = labelRotation;\n }\n afterCalculateLabelRotation() {\n callback(this.options.afterCalculateLabelRotation, [this]);\n }\n afterAutoSkip() {}\n beforeFit() {\n callback(this.options.beforeFit, [this]);\n }\n fit() {\n const minSize = {\n width: 0,\n height: 0\n };\n const {chart, options: {ticks: tickOpts, title: titleOpts, grid: gridOpts}} = this;\n const display = this._isVisible();\n const isHorizontal = this.isHorizontal();\n if (display) {\n const titleHeight = getTitleHeight(titleOpts, chart.options.font);\n if (isHorizontal) {\n minSize.width = this.maxWidth;\n minSize.height = getTickMarkLength(gridOpts) + titleHeight;\n } else {\n minSize.height = this.maxHeight;\n minSize.width = getTickMarkLength(gridOpts) + titleHeight;\n }\n if (tickOpts.display && this.ticks.length) {\n const {first, last, widest, highest} = this._getLabelSizes();\n const tickPadding = tickOpts.padding * 2;\n const angleRadians = toRadians(this.labelRotation);\n const cos = Math.cos(angleRadians);\n const sin = Math.sin(angleRadians);\n if (isHorizontal) {\n const labelHeight = tickOpts.mirror ? 0 : sin * widest.width + cos * highest.height;\n minSize.height = Math.min(this.maxHeight, minSize.height + labelHeight + tickPadding);\n } else {\n const labelWidth = tickOpts.mirror ? 0 : cos * widest.width + sin * highest.height;\n minSize.width = Math.min(this.maxWidth, minSize.width + labelWidth + tickPadding);\n }\n this._calculatePadding(first, last, sin, cos);\n }\n }\n this._handleMargins();\n if (isHorizontal) {\n this.width = this._length = chart.width - this._margins.left - this._margins.right;\n this.height = minSize.height;\n } else {\n this.width = minSize.width;\n this.height = this._length = chart.height - this._margins.top - this._margins.bottom;\n }\n }\n _calculatePadding(first, last, sin, cos) {\n const {ticks: {align, padding}, position} = this.options;\n const isRotated = this.labelRotation !== 0;\n const labelsBelowTicks = position !== 'top' && this.axis === 'x';\n if (this.isHorizontal()) {\n const offsetLeft = this.getPixelForTick(0) - this.left;\n const offsetRight = this.right - this.getPixelForTick(this.ticks.length - 1);\n let paddingLeft = 0;\n let paddingRight = 0;\n if (isRotated) {\n if (labelsBelowTicks) {\n paddingLeft = cos * first.width;\n paddingRight = sin * last.height;\n } else {\n paddingLeft = sin * first.height;\n paddingRight = cos * last.width;\n }\n } else if (align === 'start') {\n paddingRight = last.width;\n } else if (align === 'end') {\n paddingLeft = first.width;\n } else if (align !== 'inner') {\n paddingLeft = first.width / 2;\n paddingRight = last.width / 2;\n }\n this.paddingLeft = Math.max((paddingLeft - offsetLeft + padding) * this.width / (this.width - offsetLeft), 0);\n this.paddingRight = Math.max((paddingRight - offsetRight + padding) * this.width / (this.width - offsetRight), 0);\n } else {\n let paddingTop = last.height / 2;\n let paddingBottom = first.height / 2;\n if (align === 'start') {\n paddingTop = 0;\n paddingBottom = first.height;\n } else if (align === 'end') {\n paddingTop = last.height;\n paddingBottom = 0;\n }\n this.paddingTop = paddingTop + padding;\n this.paddingBottom = paddingBottom + padding;\n }\n }\n _handleMargins() {\n if (this._margins) {\n this._margins.left = Math.max(this.paddingLeft, this._margins.left);\n this._margins.top = Math.max(this.paddingTop, this._margins.top);\n this._margins.right = Math.max(this.paddingRight, this._margins.right);\n this._margins.bottom = Math.max(this.paddingBottom, this._margins.bottom);\n }\n }\n afterFit() {\n callback(this.options.afterFit, [this]);\n }\n isHorizontal() {\n const {axis, position} = this.options;\n return position === 'top' || position === 'bottom' || axis === 'x';\n }\n isFullSize() {\n return this.options.fullSize;\n }\n _convertTicksToLabels(ticks) {\n this.beforeTickToLabelConversion();\n this.generateTickLabels(ticks);\n let i, ilen;\n for (i = 0, ilen = ticks.length; i < ilen; i++) {\n if (isNullOrUndef(ticks[i].label)) {\n ticks.splice(i, 1);\n ilen--;\n i--;\n }\n }\n this.afterTickToLabelConversion();\n }\n _getLabelSizes() {\n let labelSizes = this._labelSizes;\n if (!labelSizes) {\n const sampleSize = this.options.ticks.sampleSize;\n let ticks = this.ticks;\n if (sampleSize < ticks.length) {\n ticks = sample(ticks, sampleSize);\n }\n this._labelSizes = labelSizes = this._computeLabelSizes(ticks, ticks.length);\n }\n return labelSizes;\n }\n _computeLabelSizes(ticks, length) {\n const {ctx, _longestTextCache: caches} = this;\n const widths = [];\n const heights = [];\n let widestLabelSize = 0;\n let highestLabelSize = 0;\n let i, j, jlen, label, tickFont, fontString, cache, lineHeight, width, height, nestedLabel;\n for (i = 0; i < length; ++i) {\n label = ticks[i].label;\n tickFont = this._resolveTickFontOptions(i);\n ctx.font = fontString = tickFont.string;\n cache = caches[fontString] = caches[fontString] || {data: {}, gc: []};\n lineHeight = tickFont.lineHeight;\n width = height = 0;\n if (!isNullOrUndef(label) && !isArray(label)) {\n width = _measureText(ctx, cache.data, cache.gc, width, label);\n height = lineHeight;\n } else if (isArray(label)) {\n for (j = 0, jlen = label.length; j < jlen; ++j) {\n nestedLabel = label[j];\n if (!isNullOrUndef(nestedLabel) && !isArray(nestedLabel)) {\n width = _measureText(ctx, cache.data, cache.gc, width, nestedLabel);\n height += lineHeight;\n }\n }\n }\n widths.push(width);\n heights.push(height);\n widestLabelSize = Math.max(width, widestLabelSize);\n highestLabelSize = Math.max(height, highestLabelSize);\n }\n garbageCollect(caches, length);\n const widest = widths.indexOf(widestLabelSize);\n const highest = heights.indexOf(highestLabelSize);\n const valueAt = (idx) => ({width: widths[idx] || 0, height: heights[idx] || 0});\n return {\n first: valueAt(0),\n last: valueAt(length - 1),\n widest: valueAt(widest),\n highest: valueAt(highest),\n widths,\n heights,\n };\n }\n getLabelForValue(value) {\n return value;\n }\n getPixelForValue(value, index) {\n return NaN;\n }\n getValueForPixel(pixel) {}\n getPixelForTick(index) {\n const ticks = this.ticks;\n if (index < 0 || index > ticks.length - 1) {\n return null;\n }\n return this.getPixelForValue(ticks[index].value);\n }\n getPixelForDecimal(decimal) {\n if (this._reversePixels) {\n decimal = 1 - decimal;\n }\n const pixel = this._startPixel + decimal * this._length;\n return _int16Range(this._alignToPixels ? _alignPixel(this.chart, pixel, 0) : pixel);\n }\n getDecimalForPixel(pixel) {\n const decimal = (pixel - this._startPixel) / this._length;\n return this._reversePixels ? 1 - decimal : decimal;\n }\n getBasePixel() {\n return this.getPixelForValue(this.getBaseValue());\n }\n getBaseValue() {\n const {min, max} = this;\n return min < 0 && max < 0 ? max :\n min > 0 && max > 0 ? min :\n 0;\n }\n getContext(index) {\n const ticks = this.ticks || [];\n if (index >= 0 && index < ticks.length) {\n const tick = ticks[index];\n return tick.$context ||\n\t\t\t\t(tick.$context = createTickContext(this.getContext(), index, tick));\n }\n return this.$context ||\n\t\t\t(this.$context = createScaleContext(this.chart.getContext(), this));\n }\n _tickSize() {\n const optionTicks = this.options.ticks;\n const rot = toRadians(this.labelRotation);\n const cos = Math.abs(Math.cos(rot));\n const sin = Math.abs(Math.sin(rot));\n const labelSizes = this._getLabelSizes();\n const padding = optionTicks.autoSkipPadding || 0;\n const w = labelSizes ? labelSizes.widest.width + padding : 0;\n const h = labelSizes ? labelSizes.highest.height + padding : 0;\n return this.isHorizontal()\n ? h * cos > w * sin ? w / cos : h / sin\n : h * sin < w * cos ? h / cos : w / sin;\n }\n _isVisible() {\n const display = this.options.display;\n if (display !== 'auto') {\n return !!display;\n }\n return this.getMatchingVisibleMetas().length > 0;\n }\n _computeGridLineItems(chartArea) {\n const axis = this.axis;\n const chart = this.chart;\n const options = this.options;\n const {grid, position} = options;\n const offset = grid.offset;\n const isHorizontal = this.isHorizontal();\n const ticks = this.ticks;\n const ticksLength = ticks.length + (offset ? 1 : 0);\n const tl = getTickMarkLength(grid);\n const items = [];\n const borderOpts = grid.setContext(this.getContext());\n const axisWidth = borderOpts.drawBorder ? borderOpts.borderWidth : 0;\n const axisHalfWidth = axisWidth / 2;\n const alignBorderValue = function(pixel) {\n return _alignPixel(chart, pixel, axisWidth);\n };\n let borderValue, i, lineValue, alignedLineValue;\n let tx1, ty1, tx2, ty2, x1, y1, x2, y2;\n if (position === 'top') {\n borderValue = alignBorderValue(this.bottom);\n ty1 = this.bottom - tl;\n ty2 = borderValue - axisHalfWidth;\n y1 = alignBorderValue(chartArea.top) + axisHalfWidth;\n y2 = chartArea.bottom;\n } else if (position === 'bottom') {\n borderValue = alignBorderValue(this.top);\n y1 = chartArea.top;\n y2 = alignBorderValue(chartArea.bottom) - axisHalfWidth;\n ty1 = borderValue + axisHalfWidth;\n ty2 = this.top + tl;\n } else if (position === 'left') {\n borderValue = alignBorderValue(this.right);\n tx1 = this.right - tl;\n tx2 = borderValue - axisHalfWidth;\n x1 = alignBorderValue(chartArea.left) + axisHalfWidth;\n x2 = chartArea.right;\n } else if (position === 'right') {\n borderValue = alignBorderValue(this.left);\n x1 = chartArea.left;\n x2 = alignBorderValue(chartArea.right) - axisHalfWidth;\n tx1 = borderValue + axisHalfWidth;\n tx2 = this.left + tl;\n } else if (axis === 'x') {\n if (position === 'center') {\n borderValue = alignBorderValue((chartArea.top + chartArea.bottom) / 2 + 0.5);\n } else if (isObject(position)) {\n const positionAxisID = Object.keys(position)[0];\n const value = position[positionAxisID];\n borderValue = alignBorderValue(this.chart.scales[positionAxisID].getPixelForValue(value));\n }\n y1 = chartArea.top;\n y2 = chartArea.bottom;\n ty1 = borderValue + axisHalfWidth;\n ty2 = ty1 + tl;\n } else if (axis === 'y') {\n if (position === 'center') {\n borderValue = alignBorderValue((chartArea.left + chartArea.right) / 2);\n } else if (isObject(position)) {\n const positionAxisID = Object.keys(position)[0];\n const value = position[positionAxisID];\n borderValue = alignBorderValue(this.chart.scales[positionAxisID].getPixelForValue(value));\n }\n tx1 = borderValue - axisHalfWidth;\n tx2 = tx1 - tl;\n x1 = chartArea.left;\n x2 = chartArea.right;\n }\n const limit = valueOrDefault(options.ticks.maxTicksLimit, ticksLength);\n const step = Math.max(1, Math.ceil(ticksLength / limit));\n for (i = 0; i < ticksLength; i += step) {\n const optsAtIndex = grid.setContext(this.getContext(i));\n const lineWidth = optsAtIndex.lineWidth;\n const lineColor = optsAtIndex.color;\n const borderDash = optsAtIndex.borderDash || [];\n const borderDashOffset = optsAtIndex.borderDashOffset;\n const tickWidth = optsAtIndex.tickWidth;\n const tickColor = optsAtIndex.tickColor;\n const tickBorderDash = optsAtIndex.tickBorderDash || [];\n const tickBorderDashOffset = optsAtIndex.tickBorderDashOffset;\n lineValue = getPixelForGridLine(this, i, offset);\n if (lineValue === undefined) {\n continue;\n }\n alignedLineValue = _alignPixel(chart, lineValue, lineWidth);\n if (isHorizontal) {\n tx1 = tx2 = x1 = x2 = alignedLineValue;\n } else {\n ty1 = ty2 = y1 = y2 = alignedLineValue;\n }\n items.push({\n tx1,\n ty1,\n tx2,\n ty2,\n x1,\n y1,\n x2,\n y2,\n width: lineWidth,\n color: lineColor,\n borderDash,\n borderDashOffset,\n tickWidth,\n tickColor,\n tickBorderDash,\n tickBorderDashOffset,\n });\n }\n this._ticksLength = ticksLength;\n this._borderValue = borderValue;\n return items;\n }\n _computeLabelItems(chartArea) {\n const axis = this.axis;\n const options = this.options;\n const {position, ticks: optionTicks} = options;\n const isHorizontal = this.isHorizontal();\n const ticks = this.ticks;\n const {align, crossAlign, padding, mirror} = optionTicks;\n const tl = getTickMarkLength(options.grid);\n const tickAndPadding = tl + padding;\n const hTickAndPadding = mirror ? -padding : tickAndPadding;\n const rotation = -toRadians(this.labelRotation);\n const items = [];\n let i, ilen, tick, label, x, y, textAlign, pixel, font, lineHeight, lineCount, textOffset;\n let textBaseline = 'middle';\n if (position === 'top') {\n y = this.bottom - hTickAndPadding;\n textAlign = this._getXAxisLabelAlignment();\n } else if (position === 'bottom') {\n y = this.top + hTickAndPadding;\n textAlign = this._getXAxisLabelAlignment();\n } else if (position === 'left') {\n const ret = this._getYAxisLabelAlignment(tl);\n textAlign = ret.textAlign;\n x = ret.x;\n } else if (position === 'right') {\n const ret = this._getYAxisLabelAlignment(tl);\n textAlign = ret.textAlign;\n x = ret.x;\n } else if (axis === 'x') {\n if (position === 'center') {\n y = ((chartArea.top + chartArea.bottom) / 2) + tickAndPadding;\n } else if (isObject(position)) {\n const positionAxisID = Object.keys(position)[0];\n const value = position[positionAxisID];\n y = this.chart.scales[positionAxisID].getPixelForValue(value) + tickAndPadding;\n }\n textAlign = this._getXAxisLabelAlignment();\n } else if (axis === 'y') {\n if (position === 'center') {\n x = ((chartArea.left + chartArea.right) / 2) - tickAndPadding;\n } else if (isObject(position)) {\n const positionAxisID = Object.keys(position)[0];\n const value = position[positionAxisID];\n x = this.chart.scales[positionAxisID].getPixelForValue(value);\n }\n textAlign = this._getYAxisLabelAlignment(tl).textAlign;\n }\n if (axis === 'y') {\n if (align === 'start') {\n textBaseline = 'top';\n } else if (align === 'end') {\n textBaseline = 'bottom';\n }\n }\n const labelSizes = this._getLabelSizes();\n for (i = 0, ilen = ticks.length; i < ilen; ++i) {\n tick = ticks[i];\n label = tick.label;\n const optsAtIndex = optionTicks.setContext(this.getContext(i));\n pixel = this.getPixelForTick(i) + optionTicks.labelOffset;\n font = this._resolveTickFontOptions(i);\n lineHeight = font.lineHeight;\n lineCount = isArray(label) ? label.length : 1;\n const halfCount = lineCount / 2;\n const color = optsAtIndex.color;\n const strokeColor = optsAtIndex.textStrokeColor;\n const strokeWidth = optsAtIndex.textStrokeWidth;\n let tickTextAlign = textAlign;\n if (isHorizontal) {\n x = pixel;\n if (textAlign === 'inner') {\n if (i === ilen - 1) {\n tickTextAlign = !this.options.reverse ? 'right' : 'left';\n } else if (i === 0) {\n tickTextAlign = !this.options.reverse ? 'left' : 'right';\n } else {\n tickTextAlign = 'center';\n }\n }\n if (position === 'top') {\n if (crossAlign === 'near' || rotation !== 0) {\n textOffset = -lineCount * lineHeight + lineHeight / 2;\n } else if (crossAlign === 'center') {\n textOffset = -labelSizes.highest.height / 2 - halfCount * lineHeight + lineHeight;\n } else {\n textOffset = -labelSizes.highest.height + lineHeight / 2;\n }\n } else {\n if (crossAlign === 'near' || rotation !== 0) {\n textOffset = lineHeight / 2;\n } else if (crossAlign === 'center') {\n textOffset = labelSizes.highest.height / 2 - halfCount * lineHeight;\n } else {\n textOffset = labelSizes.highest.height - lineCount * lineHeight;\n }\n }\n if (mirror) {\n textOffset *= -1;\n }\n } else {\n y = pixel;\n textOffset = (1 - lineCount) * lineHeight / 2;\n }\n let backdrop;\n if (optsAtIndex.showLabelBackdrop) {\n const labelPadding = toPadding(optsAtIndex.backdropPadding);\n const height = labelSizes.heights[i];\n const width = labelSizes.widths[i];\n let top = y + textOffset - labelPadding.top;\n let left = x - labelPadding.left;\n switch (textBaseline) {\n case 'middle':\n top -= height / 2;\n break;\n case 'bottom':\n top -= height;\n break;\n }\n switch (textAlign) {\n case 'center':\n left -= width / 2;\n break;\n case 'right':\n left -= width;\n break;\n }\n backdrop = {\n left,\n top,\n width: width + labelPadding.width,\n height: height + labelPadding.height,\n color: optsAtIndex.backdropColor,\n };\n }\n items.push({\n rotation,\n label,\n font,\n color,\n strokeColor,\n strokeWidth,\n textOffset,\n textAlign: tickTextAlign,\n textBaseline,\n translation: [x, y],\n backdrop,\n });\n }\n return items;\n }\n _getXAxisLabelAlignment() {\n const {position, ticks} = this.options;\n const rotation = -toRadians(this.labelRotation);\n if (rotation) {\n return position === 'top' ? 'left' : 'right';\n }\n let align = 'center';\n if (ticks.align === 'start') {\n align = 'left';\n } else if (ticks.align === 'end') {\n align = 'right';\n } else if (ticks.align === 'inner') {\n align = 'inner';\n }\n return align;\n }\n _getYAxisLabelAlignment(tl) {\n const {position, ticks: {crossAlign, mirror, padding}} = this.options;\n const labelSizes = this._getLabelSizes();\n const tickAndPadding = tl + padding;\n const widest = labelSizes.widest.width;\n let textAlign;\n let x;\n if (position === 'left') {\n if (mirror) {\n x = this.right + padding;\n if (crossAlign === 'near') {\n textAlign = 'left';\n } else if (crossAlign === 'center') {\n textAlign = 'center';\n x += (widest / 2);\n } else {\n textAlign = 'right';\n x += widest;\n }\n } else {\n x = this.right - tickAndPadding;\n if (crossAlign === 'near') {\n textAlign = 'right';\n } else if (crossAlign === 'center') {\n textAlign = 'center';\n x -= (widest / 2);\n } else {\n textAlign = 'left';\n x = this.left;\n }\n }\n } else if (position === 'right') {\n if (mirror) {\n x = this.left + padding;\n if (crossAlign === 'near') {\n textAlign = 'right';\n } else if (crossAlign === 'center') {\n textAlign = 'center';\n x -= (widest / 2);\n } else {\n textAlign = 'left';\n x -= widest;\n }\n } else {\n x = this.left + tickAndPadding;\n if (crossAlign === 'near') {\n textAlign = 'left';\n } else if (crossAlign === 'center') {\n textAlign = 'center';\n x += widest / 2;\n } else {\n textAlign = 'right';\n x = this.right;\n }\n }\n } else {\n textAlign = 'right';\n }\n return {textAlign, x};\n }\n _computeLabelArea() {\n if (this.options.ticks.mirror) {\n return;\n }\n const chart = this.chart;\n const position = this.options.position;\n if (position === 'left' || position === 'right') {\n return {top: 0, left: this.left, bottom: chart.height, right: this.right};\n } if (position === 'top' || position === 'bottom') {\n return {top: this.top, left: 0, bottom: this.bottom, right: chart.width};\n }\n }\n drawBackground() {\n const {ctx, options: {backgroundColor}, left, top, width, height} = this;\n if (backgroundColor) {\n ctx.save();\n ctx.fillStyle = backgroundColor;\n ctx.fillRect(left, top, width, height);\n ctx.restore();\n }\n }\n getLineWidthForValue(value) {\n const grid = this.options.grid;\n if (!this._isVisible() || !grid.display) {\n return 0;\n }\n const ticks = this.ticks;\n const index = ticks.findIndex(t => t.value === value);\n if (index >= 0) {\n const opts = grid.setContext(this.getContext(index));\n return opts.lineWidth;\n }\n return 0;\n }\n drawGrid(chartArea) {\n const grid = this.options.grid;\n const ctx = this.ctx;\n const items = this._gridLineItems || (this._gridLineItems = this._computeGridLineItems(chartArea));\n let i, ilen;\n const drawLine = (p1, p2, style) => {\n if (!style.width || !style.color) {\n return;\n }\n ctx.save();\n ctx.lineWidth = style.width;\n ctx.strokeStyle = style.color;\n ctx.setLineDash(style.borderDash || []);\n ctx.lineDashOffset = style.borderDashOffset;\n ctx.beginPath();\n ctx.moveTo(p1.x, p1.y);\n ctx.lineTo(p2.x, p2.y);\n ctx.stroke();\n ctx.restore();\n };\n if (grid.display) {\n for (i = 0, ilen = items.length; i < ilen; ++i) {\n const item = items[i];\n if (grid.drawOnChartArea) {\n drawLine(\n {x: item.x1, y: item.y1},\n {x: item.x2, y: item.y2},\n item\n );\n }\n if (grid.drawTicks) {\n drawLine(\n {x: item.tx1, y: item.ty1},\n {x: item.tx2, y: item.ty2},\n {\n color: item.tickColor,\n width: item.tickWidth,\n borderDash: item.tickBorderDash,\n borderDashOffset: item.tickBorderDashOffset\n }\n );\n }\n }\n }\n }\n drawBorder() {\n const {chart, ctx, options: {grid}} = this;\n const borderOpts = grid.setContext(this.getContext());\n const axisWidth = grid.drawBorder ? borderOpts.borderWidth : 0;\n if (!axisWidth) {\n return;\n }\n const lastLineWidth = grid.setContext(this.getContext(0)).lineWidth;\n const borderValue = this._borderValue;\n let x1, x2, y1, y2;\n if (this.isHorizontal()) {\n x1 = _alignPixel(chart, this.left, axisWidth) - axisWidth / 2;\n x2 = _alignPixel(chart, this.right, lastLineWidth) + lastLineWidth / 2;\n y1 = y2 = borderValue;\n } else {\n y1 = _alignPixel(chart, this.top, axisWidth) - axisWidth / 2;\n y2 = _alignPixel(chart, this.bottom, lastLineWidth) + lastLineWidth / 2;\n x1 = x2 = borderValue;\n }\n ctx.save();\n ctx.lineWidth = borderOpts.borderWidth;\n ctx.strokeStyle = borderOpts.borderColor;\n ctx.beginPath();\n ctx.moveTo(x1, y1);\n ctx.lineTo(x2, y2);\n ctx.stroke();\n ctx.restore();\n }\n drawLabels(chartArea) {\n const optionTicks = this.options.ticks;\n if (!optionTicks.display) {\n return;\n }\n const ctx = this.ctx;\n const area = this._computeLabelArea();\n if (area) {\n clipArea(ctx, area);\n }\n const items = this._labelItems || (this._labelItems = this._computeLabelItems(chartArea));\n let i, ilen;\n for (i = 0, ilen = items.length; i < ilen; ++i) {\n const item = items[i];\n const tickFont = item.font;\n const label = item.label;\n if (item.backdrop) {\n ctx.fillStyle = item.backdrop.color;\n ctx.fillRect(item.backdrop.left, item.backdrop.top, item.backdrop.width, item.backdrop.height);\n }\n let y = item.textOffset;\n renderText(ctx, label, 0, y, tickFont, item);\n }\n if (area) {\n unclipArea(ctx);\n }\n }\n drawTitle() {\n const {ctx, options: {position, title, reverse}} = this;\n if (!title.display) {\n return;\n }\n const font = toFont(title.font);\n const padding = toPadding(title.padding);\n const align = title.align;\n let offset = font.lineHeight / 2;\n if (position === 'bottom' || position === 'center' || isObject(position)) {\n offset += padding.bottom;\n if (isArray(title.text)) {\n offset += font.lineHeight * (title.text.length - 1);\n }\n } else {\n offset += padding.top;\n }\n const {titleX, titleY, maxWidth, rotation} = titleArgs(this, offset, position, align);\n renderText(ctx, title.text, 0, 0, font, {\n color: title.color,\n maxWidth,\n rotation,\n textAlign: titleAlign(align, position, reverse),\n textBaseline: 'middle',\n translation: [titleX, titleY],\n });\n }\n draw(chartArea) {\n if (!this._isVisible()) {\n return;\n }\n this.drawBackground();\n this.drawGrid(chartArea);\n this.drawBorder();\n this.drawTitle();\n this.drawLabels(chartArea);\n }\n _layers() {\n const opts = this.options;\n const tz = opts.ticks && opts.ticks.z || 0;\n const gz = valueOrDefault(opts.grid && opts.grid.z, -1);\n if (!this._isVisible() || this.draw !== Scale.prototype.draw) {\n return [{\n z: tz,\n draw: (chartArea) => {\n this.draw(chartArea);\n }\n }];\n }\n return [{\n z: gz,\n draw: (chartArea) => {\n this.drawBackground();\n this.drawGrid(chartArea);\n this.drawTitle();\n }\n }, {\n z: gz + 1,\n draw: () => {\n this.drawBorder();\n }\n }, {\n z: tz,\n draw: (chartArea) => {\n this.drawLabels(chartArea);\n }\n }];\n }\n getMatchingVisibleMetas(type) {\n const metas = this.chart.getSortedVisibleDatasetMetas();\n const axisID = this.axis + 'AxisID';\n const result = [];\n let i, ilen;\n for (i = 0, ilen = metas.length; i < ilen; ++i) {\n const meta = metas[i];\n if (meta[axisID] === this.id && (!type || meta.type === type)) {\n result.push(meta);\n }\n }\n return result;\n }\n _resolveTickFontOptions(index) {\n const opts = this.options.ticks.setContext(this.getContext(index));\n return toFont(opts.font);\n }\n _maxDigits() {\n const fontSize = this._resolveTickFontOptions(0).lineHeight;\n return (this.isHorizontal() ? this.width : this.height) / fontSize;\n }\n}\n\nclass TypedRegistry {\n constructor(type, scope, override) {\n this.type = type;\n this.scope = scope;\n this.override = override;\n this.items = Object.create(null);\n }\n isForType(type) {\n return Object.prototype.isPrototypeOf.call(this.type.prototype, type.prototype);\n }\n register(item) {\n const proto = Object.getPrototypeOf(item);\n let parentScope;\n if (isIChartComponent(proto)) {\n parentScope = this.register(proto);\n }\n const items = this.items;\n const id = item.id;\n const scope = this.scope + '.' + id;\n if (!id) {\n throw new Error('class does not have id: ' + item);\n }\n if (id in items) {\n return scope;\n }\n items[id] = item;\n registerDefaults(item, scope, parentScope);\n if (this.override) {\n defaults.override(item.id, item.overrides);\n }\n return scope;\n }\n get(id) {\n return this.items[id];\n }\n unregister(item) {\n const items = this.items;\n const id = item.id;\n const scope = this.scope;\n if (id in items) {\n delete items[id];\n }\n if (scope && id in defaults[scope]) {\n delete defaults[scope][id];\n if (this.override) {\n delete overrides[id];\n }\n }\n }\n}\nfunction registerDefaults(item, scope, parentScope) {\n const itemDefaults = merge(Object.create(null), [\n parentScope ? defaults.get(parentScope) : {},\n defaults.get(scope),\n item.defaults\n ]);\n defaults.set(scope, itemDefaults);\n if (item.defaultRoutes) {\n routeDefaults(scope, item.defaultRoutes);\n }\n if (item.descriptors) {\n defaults.describe(scope, item.descriptors);\n }\n}\nfunction routeDefaults(scope, routes) {\n Object.keys(routes).forEach(property => {\n const propertyParts = property.split('.');\n const sourceName = propertyParts.pop();\n const sourceScope = [scope].concat(propertyParts).join('.');\n const parts = routes[property].split('.');\n const targetName = parts.pop();\n const targetScope = parts.join('.');\n defaults.route(sourceScope, sourceName, targetScope, targetName);\n });\n}\nfunction isIChartComponent(proto) {\n return 'id' in proto && 'defaults' in proto;\n}\n\nclass Registry {\n constructor() {\n this.controllers = new TypedRegistry(DatasetController, 'datasets', true);\n this.elements = new TypedRegistry(Element, 'elements');\n this.plugins = new TypedRegistry(Object, 'plugins');\n this.scales = new TypedRegistry(Scale, 'scales');\n this._typedRegistries = [this.controllers, this.scales, this.elements];\n }\n add(...args) {\n this._each('register', args);\n }\n remove(...args) {\n this._each('unregister', args);\n }\n addControllers(...args) {\n this._each('register', args, this.controllers);\n }\n addElements(...args) {\n this._each('register', args, this.elements);\n }\n addPlugins(...args) {\n this._each('register', args, this.plugins);\n }\n addScales(...args) {\n this._each('register', args, this.scales);\n }\n getController(id) {\n return this._get(id, this.controllers, 'controller');\n }\n getElement(id) {\n return this._get(id, this.elements, 'element');\n }\n getPlugin(id) {\n return this._get(id, this.plugins, 'plugin');\n }\n getScale(id) {\n return this._get(id, this.scales, 'scale');\n }\n removeControllers(...args) {\n this._each('unregister', args, this.controllers);\n }\n removeElements(...args) {\n this._each('unregister', args, this.elements);\n }\n removePlugins(...args) {\n this._each('unregister', args, this.plugins);\n }\n removeScales(...args) {\n this._each('unregister', args, this.scales);\n }\n _each(method, args, typedRegistry) {\n [...args].forEach(arg => {\n const reg = typedRegistry || this._getRegistryForType(arg);\n if (typedRegistry || reg.isForType(arg) || (reg === this.plugins && arg.id)) {\n this._exec(method, reg, arg);\n } else {\n each(arg, item => {\n const itemReg = typedRegistry || this._getRegistryForType(item);\n this._exec(method, itemReg, item);\n });\n }\n });\n }\n _exec(method, registry, component) {\n const camelMethod = _capitalize(method);\n callback(component['before' + camelMethod], [], component);\n registry[method](component);\n callback(component['after' + camelMethod], [], component);\n }\n _getRegistryForType(type) {\n for (let i = 0; i < this._typedRegistries.length; i++) {\n const reg = this._typedRegistries[i];\n if (reg.isForType(type)) {\n return reg;\n }\n }\n return this.plugins;\n }\n _get(id, typedRegistry, type) {\n const item = typedRegistry.get(id);\n if (item === undefined) {\n throw new Error('\"' + id + '\" is not a registered ' + type + '.');\n }\n return item;\n }\n}\nvar registry = new Registry();\n\nclass ScatterController extends DatasetController {\n update(mode) {\n const meta = this._cachedMeta;\n const {data: points = []} = meta;\n const animationsDisabled = this.chart._animationsDisabled;\n let {start, count} = _getStartAndCountOfVisiblePoints(meta, points, animationsDisabled);\n this._drawStart = start;\n this._drawCount = count;\n if (_scaleRangesChanged(meta)) {\n start = 0;\n count = points.length;\n }\n if (this.options.showLine) {\n const {dataset: line, _dataset} = meta;\n line._chart = this.chart;\n line._datasetIndex = this.index;\n line._decimated = !!_dataset._decimated;\n line.points = points;\n const options = this.resolveDatasetElementOptions(mode);\n options.segment = this.options.segment;\n this.updateElement(line, undefined, {\n animated: !animationsDisabled,\n options\n }, mode);\n }\n this.updateElements(points, start, count, mode);\n }\n addElements() {\n const {showLine} = this.options;\n if (!this.datasetElementType && showLine) {\n this.datasetElementType = registry.getElement('line');\n }\n super.addElements();\n }\n updateElements(points, start, count, mode) {\n const reset = mode === 'reset';\n const {iScale, vScale, _stacked, _dataset} = this._cachedMeta;\n const firstOpts = this.resolveDataElementOptions(start, mode);\n const sharedOptions = this.getSharedOptions(firstOpts);\n const includeOptions = this.includeOptions(mode, sharedOptions);\n const iAxis = iScale.axis;\n const vAxis = vScale.axis;\n const {spanGaps, segment} = this.options;\n const maxGapLength = isNumber(spanGaps) ? spanGaps : Number.POSITIVE_INFINITY;\n const directUpdate = this.chart._animationsDisabled || reset || mode === 'none';\n let prevParsed = start > 0 && this.getParsed(start - 1);\n for (let i = start; i < start + count; ++i) {\n const point = points[i];\n const parsed = this.getParsed(i);\n const properties = directUpdate ? point : {};\n const nullData = isNullOrUndef(parsed[vAxis]);\n const iPixel = properties[iAxis] = iScale.getPixelForValue(parsed[iAxis], i);\n const vPixel = properties[vAxis] = reset || nullData ? vScale.getBasePixel() : vScale.getPixelForValue(_stacked ? this.applyStack(vScale, parsed, _stacked) : parsed[vAxis], i);\n properties.skip = isNaN(iPixel) || isNaN(vPixel) || nullData;\n properties.stop = i > 0 && (Math.abs(parsed[iAxis] - prevParsed[iAxis])) > maxGapLength;\n if (segment) {\n properties.parsed = parsed;\n properties.raw = _dataset.data[i];\n }\n if (includeOptions) {\n properties.options = sharedOptions || this.resolveDataElementOptions(i, point.active ? 'active' : mode);\n }\n if (!directUpdate) {\n this.updateElement(point, i, properties, mode);\n }\n prevParsed = parsed;\n }\n this.updateSharedOptions(sharedOptions, mode, firstOpts);\n }\n getMaxOverflow() {\n const meta = this._cachedMeta;\n const data = meta.data || [];\n if (!this.options.showLine) {\n let max = 0;\n for (let i = data.length - 1; i >= 0; --i) {\n max = Math.max(max, data[i].size(this.resolveDataElementOptions(i)) / 2);\n }\n return max > 0 && max;\n }\n const dataset = meta.dataset;\n const border = dataset.options && dataset.options.borderWidth || 0;\n if (!data.length) {\n return border;\n }\n const firstPoint = data[0].size(this.resolveDataElementOptions(0));\n const lastPoint = data[data.length - 1].size(this.resolveDataElementOptions(data.length - 1));\n return Math.max(border, firstPoint, lastPoint) / 2;\n }\n}\nScatterController.id = 'scatter';\nScatterController.defaults = {\n datasetElementType: false,\n dataElementType: 'point',\n showLine: false,\n fill: false\n};\nScatterController.overrides = {\n interaction: {\n mode: 'point'\n },\n plugins: {\n tooltip: {\n callbacks: {\n title() {\n return '';\n },\n label(item) {\n return '(' + item.label + ', ' + item.formattedValue + ')';\n }\n }\n }\n },\n scales: {\n x: {\n type: 'linear'\n },\n y: {\n type: 'linear'\n }\n }\n};\n\nvar controllers = /*#__PURE__*/Object.freeze({\n__proto__: null,\nBarController: BarController,\nBubbleController: BubbleController,\nDoughnutController: DoughnutController,\nLineController: LineController,\nPolarAreaController: PolarAreaController,\nPieController: PieController,\nRadarController: RadarController,\nScatterController: ScatterController\n});\n\nfunction abstract() {\n throw new Error('This method is not implemented: Check that a complete date adapter is provided.');\n}\nclass DateAdapter {\n constructor(options) {\n this.options = options || {};\n }\n init(chartOptions) {}\n formats() {\n return abstract();\n }\n parse(value, format) {\n return abstract();\n }\n format(timestamp, format) {\n return abstract();\n }\n add(timestamp, amount, unit) {\n return abstract();\n }\n diff(a, b, unit) {\n return abstract();\n }\n startOf(timestamp, unit, weekday) {\n return abstract();\n }\n endOf(timestamp, unit) {\n return abstract();\n }\n}\nDateAdapter.override = function(members) {\n Object.assign(DateAdapter.prototype, members);\n};\nvar adapters = {\n _date: DateAdapter\n};\n\nfunction binarySearch(metaset, axis, value, intersect) {\n const {controller, data, _sorted} = metaset;\n const iScale = controller._cachedMeta.iScale;\n if (iScale && axis === iScale.axis && axis !== 'r' && _sorted && data.length) {\n const lookupMethod = iScale._reversePixels ? _rlookupByKey : _lookupByKey;\n if (!intersect) {\n return lookupMethod(data, axis, value);\n } else if (controller._sharedOptions) {\n const el = data[0];\n const range = typeof el.getRange === 'function' && el.getRange(axis);\n if (range) {\n const start = lookupMethod(data, axis, value - range);\n const end = lookupMethod(data, axis, value + range);\n return {lo: start.lo, hi: end.hi};\n }\n }\n }\n return {lo: 0, hi: data.length - 1};\n}\nfunction evaluateInteractionItems(chart, axis, position, handler, intersect) {\n const metasets = chart.getSortedVisibleDatasetMetas();\n const value = position[axis];\n for (let i = 0, ilen = metasets.length; i < ilen; ++i) {\n const {index, data} = metasets[i];\n const {lo, hi} = binarySearch(metasets[i], axis, value, intersect);\n for (let j = lo; j <= hi; ++j) {\n const element = data[j];\n if (!element.skip) {\n handler(element, index, j);\n }\n }\n }\n}\nfunction getDistanceMetricForAxis(axis) {\n const useX = axis.indexOf('x') !== -1;\n const useY = axis.indexOf('y') !== -1;\n return function(pt1, pt2) {\n const deltaX = useX ? Math.abs(pt1.x - pt2.x) : 0;\n const deltaY = useY ? Math.abs(pt1.y - pt2.y) : 0;\n return Math.sqrt(Math.pow(deltaX, 2) + Math.pow(deltaY, 2));\n };\n}\nfunction getIntersectItems(chart, position, axis, useFinalPosition, includeInvisible) {\n const items = [];\n if (!includeInvisible && !chart.isPointInArea(position)) {\n return items;\n }\n const evaluationFunc = function(element, datasetIndex, index) {\n if (!includeInvisible && !_isPointInArea(element, chart.chartArea, 0)) {\n return;\n }\n if (element.inRange(position.x, position.y, useFinalPosition)) {\n items.push({element, datasetIndex, index});\n }\n };\n evaluateInteractionItems(chart, axis, position, evaluationFunc, true);\n return items;\n}\nfunction getNearestRadialItems(chart, position, axis, useFinalPosition) {\n let items = [];\n function evaluationFunc(element, datasetIndex, index) {\n const {startAngle, endAngle} = element.getProps(['startAngle', 'endAngle'], useFinalPosition);\n const {angle} = getAngleFromPoint(element, {x: position.x, y: position.y});\n if (_angleBetween(angle, startAngle, endAngle)) {\n items.push({element, datasetIndex, index});\n }\n }\n evaluateInteractionItems(chart, axis, position, evaluationFunc);\n return items;\n}\nfunction getNearestCartesianItems(chart, position, axis, intersect, useFinalPosition, includeInvisible) {\n let items = [];\n const distanceMetric = getDistanceMetricForAxis(axis);\n let minDistance = Number.POSITIVE_INFINITY;\n function evaluationFunc(element, datasetIndex, index) {\n const inRange = element.inRange(position.x, position.y, useFinalPosition);\n if (intersect && !inRange) {\n return;\n }\n const center = element.getCenterPoint(useFinalPosition);\n const pointInArea = !!includeInvisible || chart.isPointInArea(center);\n if (!pointInArea && !inRange) {\n return;\n }\n const distance = distanceMetric(position, center);\n if (distance < minDistance) {\n items = [{element, datasetIndex, index}];\n minDistance = distance;\n } else if (distance === minDistance) {\n items.push({element, datasetIndex, index});\n }\n }\n evaluateInteractionItems(chart, axis, position, evaluationFunc);\n return items;\n}\nfunction getNearestItems(chart, position, axis, intersect, useFinalPosition, includeInvisible) {\n if (!includeInvisible && !chart.isPointInArea(position)) {\n return [];\n }\n return axis === 'r' && !intersect\n ? getNearestRadialItems(chart, position, axis, useFinalPosition)\n : getNearestCartesianItems(chart, position, axis, intersect, useFinalPosition, includeInvisible);\n}\nfunction getAxisItems(chart, position, axis, intersect, useFinalPosition) {\n const items = [];\n const rangeMethod = axis === 'x' ? 'inXRange' : 'inYRange';\n let intersectsItem = false;\n evaluateInteractionItems(chart, axis, position, (element, datasetIndex, index) => {\n if (element[rangeMethod](position[axis], useFinalPosition)) {\n items.push({element, datasetIndex, index});\n intersectsItem = intersectsItem || element.inRange(position.x, position.y, useFinalPosition);\n }\n });\n if (intersect && !intersectsItem) {\n return [];\n }\n return items;\n}\nvar Interaction = {\n evaluateInteractionItems,\n modes: {\n index(chart, e, options, useFinalPosition) {\n const position = getRelativePosition(e, chart);\n const axis = options.axis || 'x';\n const includeInvisible = options.includeInvisible || false;\n const items = options.intersect\n ? getIntersectItems(chart, position, axis, useFinalPosition, includeInvisible)\n : getNearestItems(chart, position, axis, false, useFinalPosition, includeInvisible);\n const elements = [];\n if (!items.length) {\n return [];\n }\n chart.getSortedVisibleDatasetMetas().forEach((meta) => {\n const index = items[0].index;\n const element = meta.data[index];\n if (element && !element.skip) {\n elements.push({element, datasetIndex: meta.index, index});\n }\n });\n return elements;\n },\n dataset(chart, e, options, useFinalPosition) {\n const position = getRelativePosition(e, chart);\n const axis = options.axis || 'xy';\n const includeInvisible = options.includeInvisible || false;\n let items = options.intersect\n ? getIntersectItems(chart, position, axis, useFinalPosition, includeInvisible) :\n getNearestItems(chart, position, axis, false, useFinalPosition, includeInvisible);\n if (items.length > 0) {\n const datasetIndex = items[0].datasetIndex;\n const data = chart.getDatasetMeta(datasetIndex).data;\n items = [];\n for (let i = 0; i < data.length; ++i) {\n items.push({element: data[i], datasetIndex, index: i});\n }\n }\n return items;\n },\n point(chart, e, options, useFinalPosition) {\n const position = getRelativePosition(e, chart);\n const axis = options.axis || 'xy';\n const includeInvisible = options.includeInvisible || false;\n return getIntersectItems(chart, position, axis, useFinalPosition, includeInvisible);\n },\n nearest(chart, e, options, useFinalPosition) {\n const position = getRelativePosition(e, chart);\n const axis = options.axis || 'xy';\n const includeInvisible = options.includeInvisible || false;\n return getNearestItems(chart, position, axis, options.intersect, useFinalPosition, includeInvisible);\n },\n x(chart, e, options, useFinalPosition) {\n const position = getRelativePosition(e, chart);\n return getAxisItems(chart, position, 'x', options.intersect, useFinalPosition);\n },\n y(chart, e, options, useFinalPosition) {\n const position = getRelativePosition(e, chart);\n return getAxisItems(chart, position, 'y', options.intersect, useFinalPosition);\n }\n }\n};\n\nconst STATIC_POSITIONS = ['left', 'top', 'right', 'bottom'];\nfunction filterByPosition(array, position) {\n return array.filter(v => v.pos === position);\n}\nfunction filterDynamicPositionByAxis(array, axis) {\n return array.filter(v => STATIC_POSITIONS.indexOf(v.pos) === -1 && v.box.axis === axis);\n}\nfunction sortByWeight(array, reverse) {\n return array.sort((a, b) => {\n const v0 = reverse ? b : a;\n const v1 = reverse ? a : b;\n return v0.weight === v1.weight ?\n v0.index - v1.index :\n v0.weight - v1.weight;\n });\n}\nfunction wrapBoxes(boxes) {\n const layoutBoxes = [];\n let i, ilen, box, pos, stack, stackWeight;\n for (i = 0, ilen = (boxes || []).length; i < ilen; ++i) {\n box = boxes[i];\n ({position: pos, options: {stack, stackWeight = 1}} = box);\n layoutBoxes.push({\n index: i,\n box,\n pos,\n horizontal: box.isHorizontal(),\n weight: box.weight,\n stack: stack && (pos + stack),\n stackWeight\n });\n }\n return layoutBoxes;\n}\nfunction buildStacks(layouts) {\n const stacks = {};\n for (const wrap of layouts) {\n const {stack, pos, stackWeight} = wrap;\n if (!stack || !STATIC_POSITIONS.includes(pos)) {\n continue;\n }\n const _stack = stacks[stack] || (stacks[stack] = {count: 0, placed: 0, weight: 0, size: 0});\n _stack.count++;\n _stack.weight += stackWeight;\n }\n return stacks;\n}\nfunction setLayoutDims(layouts, params) {\n const stacks = buildStacks(layouts);\n const {vBoxMaxWidth, hBoxMaxHeight} = params;\n let i, ilen, layout;\n for (i = 0, ilen = layouts.length; i < ilen; ++i) {\n layout = layouts[i];\n const {fullSize} = layout.box;\n const stack = stacks[layout.stack];\n const factor = stack && layout.stackWeight / stack.weight;\n if (layout.horizontal) {\n layout.width = factor ? factor * vBoxMaxWidth : fullSize && params.availableWidth;\n layout.height = hBoxMaxHeight;\n } else {\n layout.width = vBoxMaxWidth;\n layout.height = factor ? factor * hBoxMaxHeight : fullSize && params.availableHeight;\n }\n }\n return stacks;\n}\nfunction buildLayoutBoxes(boxes) {\n const layoutBoxes = wrapBoxes(boxes);\n const fullSize = sortByWeight(layoutBoxes.filter(wrap => wrap.box.fullSize), true);\n const left = sortByWeight(filterByPosition(layoutBoxes, 'left'), true);\n const right = sortByWeight(filterByPosition(layoutBoxes, 'right'));\n const top = sortByWeight(filterByPosition(layoutBoxes, 'top'), true);\n const bottom = sortByWeight(filterByPosition(layoutBoxes, 'bottom'));\n const centerHorizontal = filterDynamicPositionByAxis(layoutBoxes, 'x');\n const centerVertical = filterDynamicPositionByAxis(layoutBoxes, 'y');\n return {\n fullSize,\n leftAndTop: left.concat(top),\n rightAndBottom: right.concat(centerVertical).concat(bottom).concat(centerHorizontal),\n chartArea: filterByPosition(layoutBoxes, 'chartArea'),\n vertical: left.concat(right).concat(centerVertical),\n horizontal: top.concat(bottom).concat(centerHorizontal)\n };\n}\nfunction getCombinedMax(maxPadding, chartArea, a, b) {\n return Math.max(maxPadding[a], chartArea[a]) + Math.max(maxPadding[b], chartArea[b]);\n}\nfunction updateMaxPadding(maxPadding, boxPadding) {\n maxPadding.top = Math.max(maxPadding.top, boxPadding.top);\n maxPadding.left = Math.max(maxPadding.left, boxPadding.left);\n maxPadding.bottom = Math.max(maxPadding.bottom, boxPadding.bottom);\n maxPadding.right = Math.max(maxPadding.right, boxPadding.right);\n}\nfunction updateDims(chartArea, params, layout, stacks) {\n const {pos, box} = layout;\n const maxPadding = chartArea.maxPadding;\n if (!isObject(pos)) {\n if (layout.size) {\n chartArea[pos] -= layout.size;\n }\n const stack = stacks[layout.stack] || {size: 0, count: 1};\n stack.size = Math.max(stack.size, layout.horizontal ? box.height : box.width);\n layout.size = stack.size / stack.count;\n chartArea[pos] += layout.size;\n }\n if (box.getPadding) {\n updateMaxPadding(maxPadding, box.getPadding());\n }\n const newWidth = Math.max(0, params.outerWidth - getCombinedMax(maxPadding, chartArea, 'left', 'right'));\n const newHeight = Math.max(0, params.outerHeight - getCombinedMax(maxPadding, chartArea, 'top', 'bottom'));\n const widthChanged = newWidth !== chartArea.w;\n const heightChanged = newHeight !== chartArea.h;\n chartArea.w = newWidth;\n chartArea.h = newHeight;\n return layout.horizontal\n ? {same: widthChanged, other: heightChanged}\n : {same: heightChanged, other: widthChanged};\n}\nfunction handleMaxPadding(chartArea) {\n const maxPadding = chartArea.maxPadding;\n function updatePos(pos) {\n const change = Math.max(maxPadding[pos] - chartArea[pos], 0);\n chartArea[pos] += change;\n return change;\n }\n chartArea.y += updatePos('top');\n chartArea.x += updatePos('left');\n updatePos('right');\n updatePos('bottom');\n}\nfunction getMargins(horizontal, chartArea) {\n const maxPadding = chartArea.maxPadding;\n function marginForPositions(positions) {\n const margin = {left: 0, top: 0, right: 0, bottom: 0};\n positions.forEach((pos) => {\n margin[pos] = Math.max(chartArea[pos], maxPadding[pos]);\n });\n return margin;\n }\n return horizontal\n ? marginForPositions(['left', 'right'])\n : marginForPositions(['top', 'bottom']);\n}\nfunction fitBoxes(boxes, chartArea, params, stacks) {\n const refitBoxes = [];\n let i, ilen, layout, box, refit, changed;\n for (i = 0, ilen = boxes.length, refit = 0; i < ilen; ++i) {\n layout = boxes[i];\n box = layout.box;\n box.update(\n layout.width || chartArea.w,\n layout.height || chartArea.h,\n getMargins(layout.horizontal, chartArea)\n );\n const {same, other} = updateDims(chartArea, params, layout, stacks);\n refit |= same && refitBoxes.length;\n changed = changed || other;\n if (!box.fullSize) {\n refitBoxes.push(layout);\n }\n }\n return refit && fitBoxes(refitBoxes, chartArea, params, stacks) || changed;\n}\nfunction setBoxDims(box, left, top, width, height) {\n box.top = top;\n box.left = left;\n box.right = left + width;\n box.bottom = top + height;\n box.width = width;\n box.height = height;\n}\nfunction placeBoxes(boxes, chartArea, params, stacks) {\n const userPadding = params.padding;\n let {x, y} = chartArea;\n for (const layout of boxes) {\n const box = layout.box;\n const stack = stacks[layout.stack] || {count: 1, placed: 0, weight: 1};\n const weight = (layout.stackWeight / stack.weight) || 1;\n if (layout.horizontal) {\n const width = chartArea.w * weight;\n const height = stack.size || box.height;\n if (defined(stack.start)) {\n y = stack.start;\n }\n if (box.fullSize) {\n setBoxDims(box, userPadding.left, y, params.outerWidth - userPadding.right - userPadding.left, height);\n } else {\n setBoxDims(box, chartArea.left + stack.placed, y, width, height);\n }\n stack.start = y;\n stack.placed += width;\n y = box.bottom;\n } else {\n const height = chartArea.h * weight;\n const width = stack.size || box.width;\n if (defined(stack.start)) {\n x = stack.start;\n }\n if (box.fullSize) {\n setBoxDims(box, x, userPadding.top, width, params.outerHeight - userPadding.bottom - userPadding.top);\n } else {\n setBoxDims(box, x, chartArea.top + stack.placed, width, height);\n }\n stack.start = x;\n stack.placed += height;\n x = box.right;\n }\n }\n chartArea.x = x;\n chartArea.y = y;\n}\ndefaults.set('layout', {\n autoPadding: true,\n padding: {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0\n }\n});\nvar layouts = {\n addBox(chart, item) {\n if (!chart.boxes) {\n chart.boxes = [];\n }\n item.fullSize = item.fullSize || false;\n item.position = item.position || 'top';\n item.weight = item.weight || 0;\n item._layers = item._layers || function() {\n return [{\n z: 0,\n draw(chartArea) {\n item.draw(chartArea);\n }\n }];\n };\n chart.boxes.push(item);\n },\n removeBox(chart, layoutItem) {\n const index = chart.boxes ? chart.boxes.indexOf(layoutItem) : -1;\n if (index !== -1) {\n chart.boxes.splice(index, 1);\n }\n },\n configure(chart, item, options) {\n item.fullSize = options.fullSize;\n item.position = options.position;\n item.weight = options.weight;\n },\n update(chart, width, height, minPadding) {\n if (!chart) {\n return;\n }\n const padding = toPadding(chart.options.layout.padding);\n const availableWidth = Math.max(width - padding.width, 0);\n const availableHeight = Math.max(height - padding.height, 0);\n const boxes = buildLayoutBoxes(chart.boxes);\n const verticalBoxes = boxes.vertical;\n const horizontalBoxes = boxes.horizontal;\n each(chart.boxes, box => {\n if (typeof box.beforeLayout === 'function') {\n box.beforeLayout();\n }\n });\n const visibleVerticalBoxCount = verticalBoxes.reduce((total, wrap) =>\n wrap.box.options && wrap.box.options.display === false ? total : total + 1, 0) || 1;\n const params = Object.freeze({\n outerWidth: width,\n outerHeight: height,\n padding,\n availableWidth,\n availableHeight,\n vBoxMaxWidth: availableWidth / 2 / visibleVerticalBoxCount,\n hBoxMaxHeight: availableHeight / 2\n });\n const maxPadding = Object.assign({}, padding);\n updateMaxPadding(maxPadding, toPadding(minPadding));\n const chartArea = Object.assign({\n maxPadding,\n w: availableWidth,\n h: availableHeight,\n x: padding.left,\n y: padding.top\n }, padding);\n const stacks = setLayoutDims(verticalBoxes.concat(horizontalBoxes), params);\n fitBoxes(boxes.fullSize, chartArea, params, stacks);\n fitBoxes(verticalBoxes, chartArea, params, stacks);\n if (fitBoxes(horizontalBoxes, chartArea, params, stacks)) {\n fitBoxes(verticalBoxes, chartArea, params, stacks);\n }\n handleMaxPadding(chartArea);\n placeBoxes(boxes.leftAndTop, chartArea, params, stacks);\n chartArea.x += chartArea.w;\n chartArea.y += chartArea.h;\n placeBoxes(boxes.rightAndBottom, chartArea, params, stacks);\n chart.chartArea = {\n left: chartArea.left,\n top: chartArea.top,\n right: chartArea.left + chartArea.w,\n bottom: chartArea.top + chartArea.h,\n height: chartArea.h,\n width: chartArea.w,\n };\n each(boxes.chartArea, (layout) => {\n const box = layout.box;\n Object.assign(box, chart.chartArea);\n box.update(chartArea.w, chartArea.h, {left: 0, top: 0, right: 0, bottom: 0});\n });\n }\n};\n\nclass BasePlatform {\n acquireContext(canvas, aspectRatio) {}\n releaseContext(context) {\n return false;\n }\n addEventListener(chart, type, listener) {}\n removeEventListener(chart, type, listener) {}\n getDevicePixelRatio() {\n return 1;\n }\n getMaximumSize(element, width, height, aspectRatio) {\n width = Math.max(0, width || element.width);\n height = height || element.height;\n return {\n width,\n height: Math.max(0, aspectRatio ? Math.floor(width / aspectRatio) : height)\n };\n }\n isAttached(canvas) {\n return true;\n }\n updateConfig(config) {\n }\n}\n\nclass BasicPlatform extends BasePlatform {\n acquireContext(item) {\n return item && item.getContext && item.getContext('2d') || null;\n }\n updateConfig(config) {\n config.options.animation = false;\n }\n}\n\nconst EXPANDO_KEY = '$chartjs';\nconst EVENT_TYPES = {\n touchstart: 'mousedown',\n touchmove: 'mousemove',\n touchend: 'mouseup',\n pointerenter: 'mouseenter',\n pointerdown: 'mousedown',\n pointermove: 'mousemove',\n pointerup: 'mouseup',\n pointerleave: 'mouseout',\n pointerout: 'mouseout'\n};\nconst isNullOrEmpty = value => value === null || value === '';\nfunction initCanvas(canvas, aspectRatio) {\n const style = canvas.style;\n const renderHeight = canvas.getAttribute('height');\n const renderWidth = canvas.getAttribute('width');\n canvas[EXPANDO_KEY] = {\n initial: {\n height: renderHeight,\n width: renderWidth,\n style: {\n display: style.display,\n height: style.height,\n width: style.width\n }\n }\n };\n style.display = style.display || 'block';\n style.boxSizing = style.boxSizing || 'border-box';\n if (isNullOrEmpty(renderWidth)) {\n const displayWidth = readUsedSize(canvas, 'width');\n if (displayWidth !== undefined) {\n canvas.width = displayWidth;\n }\n }\n if (isNullOrEmpty(renderHeight)) {\n if (canvas.style.height === '') {\n canvas.height = canvas.width / (aspectRatio || 2);\n } else {\n const displayHeight = readUsedSize(canvas, 'height');\n if (displayHeight !== undefined) {\n canvas.height = displayHeight;\n }\n }\n }\n return canvas;\n}\nconst eventListenerOptions = supportsEventListenerOptions ? {passive: true} : false;\nfunction addListener(node, type, listener) {\n node.addEventListener(type, listener, eventListenerOptions);\n}\nfunction removeListener(chart, type, listener) {\n chart.canvas.removeEventListener(type, listener, eventListenerOptions);\n}\nfunction fromNativeEvent(event, chart) {\n const type = EVENT_TYPES[event.type] || event.type;\n const {x, y} = getRelativePosition(event, chart);\n return {\n type,\n chart,\n native: event,\n x: x !== undefined ? x : null,\n y: y !== undefined ? y : null,\n };\n}\nfunction nodeListContains(nodeList, canvas) {\n for (const node of nodeList) {\n if (node === canvas || node.contains(canvas)) {\n return true;\n }\n }\n}\nfunction createAttachObserver(chart, type, listener) {\n const canvas = chart.canvas;\n const observer = new MutationObserver(entries => {\n let trigger = false;\n for (const entry of entries) {\n trigger = trigger || nodeListContains(entry.addedNodes, canvas);\n trigger = trigger && !nodeListContains(entry.removedNodes, canvas);\n }\n if (trigger) {\n listener();\n }\n });\n observer.observe(document, {childList: true, subtree: true});\n return observer;\n}\nfunction createDetachObserver(chart, type, listener) {\n const canvas = chart.canvas;\n const observer = new MutationObserver(entries => {\n let trigger = false;\n for (const entry of entries) {\n trigger = trigger || nodeListContains(entry.removedNodes, canvas);\n trigger = trigger && !nodeListContains(entry.addedNodes, canvas);\n }\n if (trigger) {\n listener();\n }\n });\n observer.observe(document, {childList: true, subtree: true});\n return observer;\n}\nconst drpListeningCharts = new Map();\nlet oldDevicePixelRatio = 0;\nfunction onWindowResize() {\n const dpr = window.devicePixelRatio;\n if (dpr === oldDevicePixelRatio) {\n return;\n }\n oldDevicePixelRatio = dpr;\n drpListeningCharts.forEach((resize, chart) => {\n if (chart.currentDevicePixelRatio !== dpr) {\n resize();\n }\n });\n}\nfunction listenDevicePixelRatioChanges(chart, resize) {\n if (!drpListeningCharts.size) {\n window.addEventListener('resize', onWindowResize);\n }\n drpListeningCharts.set(chart, resize);\n}\nfunction unlistenDevicePixelRatioChanges(chart) {\n drpListeningCharts.delete(chart);\n if (!drpListeningCharts.size) {\n window.removeEventListener('resize', onWindowResize);\n }\n}\nfunction createResizeObserver(chart, type, listener) {\n const canvas = chart.canvas;\n const container = canvas && _getParentNode(canvas);\n if (!container) {\n return;\n }\n const resize = throttled((width, height) => {\n const w = container.clientWidth;\n listener(width, height);\n if (w < container.clientWidth) {\n listener();\n }\n }, window);\n const observer = new ResizeObserver(entries => {\n const entry = entries[0];\n const width = entry.contentRect.width;\n const height = entry.contentRect.height;\n if (width === 0 && height === 0) {\n return;\n }\n resize(width, height);\n });\n observer.observe(container);\n listenDevicePixelRatioChanges(chart, resize);\n return observer;\n}\nfunction releaseObserver(chart, type, observer) {\n if (observer) {\n observer.disconnect();\n }\n if (type === 'resize') {\n unlistenDevicePixelRatioChanges(chart);\n }\n}\nfunction createProxyAndListen(chart, type, listener) {\n const canvas = chart.canvas;\n const proxy = throttled((event) => {\n if (chart.ctx !== null) {\n listener(fromNativeEvent(event, chart));\n }\n }, chart, (args) => {\n const event = args[0];\n return [event, event.offsetX, event.offsetY];\n });\n addListener(canvas, type, proxy);\n return proxy;\n}\nclass DomPlatform extends BasePlatform {\n acquireContext(canvas, aspectRatio) {\n const context = canvas && canvas.getContext && canvas.getContext('2d');\n if (context && context.canvas === canvas) {\n initCanvas(canvas, aspectRatio);\n return context;\n }\n return null;\n }\n releaseContext(context) {\n const canvas = context.canvas;\n if (!canvas[EXPANDO_KEY]) {\n return false;\n }\n const initial = canvas[EXPANDO_KEY].initial;\n ['height', 'width'].forEach((prop) => {\n const value = initial[prop];\n if (isNullOrUndef(value)) {\n canvas.removeAttribute(prop);\n } else {\n canvas.setAttribute(prop, value);\n }\n });\n const style = initial.style || {};\n Object.keys(style).forEach((key) => {\n canvas.style[key] = style[key];\n });\n canvas.width = canvas.width;\n delete canvas[EXPANDO_KEY];\n return true;\n }\n addEventListener(chart, type, listener) {\n this.removeEventListener(chart, type);\n const proxies = chart.$proxies || (chart.$proxies = {});\n const handlers = {\n attach: createAttachObserver,\n detach: createDetachObserver,\n resize: createResizeObserver\n };\n const handler = handlers[type] || createProxyAndListen;\n proxies[type] = handler(chart, type, listener);\n }\n removeEventListener(chart, type) {\n const proxies = chart.$proxies || (chart.$proxies = {});\n const proxy = proxies[type];\n if (!proxy) {\n return;\n }\n const handlers = {\n attach: releaseObserver,\n detach: releaseObserver,\n resize: releaseObserver\n };\n const handler = handlers[type] || removeListener;\n handler(chart, type, proxy);\n proxies[type] = undefined;\n }\n getDevicePixelRatio() {\n return window.devicePixelRatio;\n }\n getMaximumSize(canvas, width, height, aspectRatio) {\n return getMaximumSize(canvas, width, height, aspectRatio);\n }\n isAttached(canvas) {\n const container = _getParentNode(canvas);\n return !!(container && container.isConnected);\n }\n}\n\nfunction _detectPlatform(canvas) {\n if (!_isDomSupported() || (typeof OffscreenCanvas !== 'undefined' && canvas instanceof OffscreenCanvas)) {\n return BasicPlatform;\n }\n return DomPlatform;\n}\n\nclass PluginService {\n constructor() {\n this._init = [];\n }\n notify(chart, hook, args, filter) {\n if (hook === 'beforeInit') {\n this._init = this._createDescriptors(chart, true);\n this._notify(this._init, chart, 'install');\n }\n const descriptors = filter ? this._descriptors(chart).filter(filter) : this._descriptors(chart);\n const result = this._notify(descriptors, chart, hook, args);\n if (hook === 'afterDestroy') {\n this._notify(descriptors, chart, 'stop');\n this._notify(this._init, chart, 'uninstall');\n }\n return result;\n }\n _notify(descriptors, chart, hook, args) {\n args = args || {};\n for (const descriptor of descriptors) {\n const plugin = descriptor.plugin;\n const method = plugin[hook];\n const params = [chart, args, descriptor.options];\n if (callback(method, params, plugin) === false && args.cancelable) {\n return false;\n }\n }\n return true;\n }\n invalidate() {\n if (!isNullOrUndef(this._cache)) {\n this._oldCache = this._cache;\n this._cache = undefined;\n }\n }\n _descriptors(chart) {\n if (this._cache) {\n return this._cache;\n }\n const descriptors = this._cache = this._createDescriptors(chart);\n this._notifyStateChanges(chart);\n return descriptors;\n }\n _createDescriptors(chart, all) {\n const config = chart && chart.config;\n const options = valueOrDefault(config.options && config.options.plugins, {});\n const plugins = allPlugins(config);\n return options === false && !all ? [] : createDescriptors(chart, plugins, options, all);\n }\n _notifyStateChanges(chart) {\n const previousDescriptors = this._oldCache || [];\n const descriptors = this._cache;\n const diff = (a, b) => a.filter(x => !b.some(y => x.plugin.id === y.plugin.id));\n this._notify(diff(previousDescriptors, descriptors), chart, 'stop');\n this._notify(diff(descriptors, previousDescriptors), chart, 'start');\n }\n}\nfunction allPlugins(config) {\n const localIds = {};\n const plugins = [];\n const keys = Object.keys(registry.plugins.items);\n for (let i = 0; i < keys.length; i++) {\n plugins.push(registry.getPlugin(keys[i]));\n }\n const local = config.plugins || [];\n for (let i = 0; i < local.length; i++) {\n const plugin = local[i];\n if (plugins.indexOf(plugin) === -1) {\n plugins.push(plugin);\n localIds[plugin.id] = true;\n }\n }\n return {plugins, localIds};\n}\nfunction getOpts(options, all) {\n if (!all && options === false) {\n return null;\n }\n if (options === true) {\n return {};\n }\n return options;\n}\nfunction createDescriptors(chart, {plugins, localIds}, options, all) {\n const result = [];\n const context = chart.getContext();\n for (const plugin of plugins) {\n const id = plugin.id;\n const opts = getOpts(options[id], all);\n if (opts === null) {\n continue;\n }\n result.push({\n plugin,\n options: pluginOpts(chart.config, {plugin, local: localIds[id]}, opts, context)\n });\n }\n return result;\n}\nfunction pluginOpts(config, {plugin, local}, opts, context) {\n const keys = config.pluginScopeKeys(plugin);\n const scopes = config.getOptionScopes(opts, keys);\n if (local && plugin.defaults) {\n scopes.push(plugin.defaults);\n }\n return config.createResolver(scopes, context, [''], {\n scriptable: false,\n indexable: false,\n allKeys: true\n });\n}\n\nfunction getIndexAxis(type, options) {\n const datasetDefaults = defaults.datasets[type] || {};\n const datasetOptions = (options.datasets || {})[type] || {};\n return datasetOptions.indexAxis || options.indexAxis || datasetDefaults.indexAxis || 'x';\n}\nfunction getAxisFromDefaultScaleID(id, indexAxis) {\n let axis = id;\n if (id === '_index_') {\n axis = indexAxis;\n } else if (id === '_value_') {\n axis = indexAxis === 'x' ? 'y' : 'x';\n }\n return axis;\n}\nfunction getDefaultScaleIDFromAxis(axis, indexAxis) {\n return axis === indexAxis ? '_index_' : '_value_';\n}\nfunction axisFromPosition(position) {\n if (position === 'top' || position === 'bottom') {\n return 'x';\n }\n if (position === 'left' || position === 'right') {\n return 'y';\n }\n}\nfunction determineAxis(id, scaleOptions) {\n if (id === 'x' || id === 'y') {\n return id;\n }\n return scaleOptions.axis || axisFromPosition(scaleOptions.position) || id.charAt(0).toLowerCase();\n}\nfunction mergeScaleConfig(config, options) {\n const chartDefaults = overrides[config.type] || {scales: {}};\n const configScales = options.scales || {};\n const chartIndexAxis = getIndexAxis(config.type, options);\n const firstIDs = Object.create(null);\n const scales = Object.create(null);\n Object.keys(configScales).forEach(id => {\n const scaleConf = configScales[id];\n if (!isObject(scaleConf)) {\n return console.error(`Invalid scale configuration for scale: ${id}`);\n }\n if (scaleConf._proxy) {\n return console.warn(`Ignoring resolver passed as options for scale: ${id}`);\n }\n const axis = determineAxis(id, scaleConf);\n const defaultId = getDefaultScaleIDFromAxis(axis, chartIndexAxis);\n const defaultScaleOptions = chartDefaults.scales || {};\n firstIDs[axis] = firstIDs[axis] || id;\n scales[id] = mergeIf(Object.create(null), [{axis}, scaleConf, defaultScaleOptions[axis], defaultScaleOptions[defaultId]]);\n });\n config.data.datasets.forEach(dataset => {\n const type = dataset.type || config.type;\n const indexAxis = dataset.indexAxis || getIndexAxis(type, options);\n const datasetDefaults = overrides[type] || {};\n const defaultScaleOptions = datasetDefaults.scales || {};\n Object.keys(defaultScaleOptions).forEach(defaultID => {\n const axis = getAxisFromDefaultScaleID(defaultID, indexAxis);\n const id = dataset[axis + 'AxisID'] || firstIDs[axis] || axis;\n scales[id] = scales[id] || Object.create(null);\n mergeIf(scales[id], [{axis}, configScales[id], defaultScaleOptions[defaultID]]);\n });\n });\n Object.keys(scales).forEach(key => {\n const scale = scales[key];\n mergeIf(scale, [defaults.scales[scale.type], defaults.scale]);\n });\n return scales;\n}\nfunction initOptions(config) {\n const options = config.options || (config.options = {});\n options.plugins = valueOrDefault(options.plugins, {});\n options.scales = mergeScaleConfig(config, options);\n}\nfunction initData(data) {\n data = data || {};\n data.datasets = data.datasets || [];\n data.labels = data.labels || [];\n return data;\n}\nfunction initConfig(config) {\n config = config || {};\n config.data = initData(config.data);\n initOptions(config);\n return config;\n}\nconst keyCache = new Map();\nconst keysCached = new Set();\nfunction cachedKeys(cacheKey, generate) {\n let keys = keyCache.get(cacheKey);\n if (!keys) {\n keys = generate();\n keyCache.set(cacheKey, keys);\n keysCached.add(keys);\n }\n return keys;\n}\nconst addIfFound = (set, obj, key) => {\n const opts = resolveObjectKey(obj, key);\n if (opts !== undefined) {\n set.add(opts);\n }\n};\nclass Config {\n constructor(config) {\n this._config = initConfig(config);\n this._scopeCache = new Map();\n this._resolverCache = new Map();\n }\n get platform() {\n return this._config.platform;\n }\n get type() {\n return this._config.type;\n }\n set type(type) {\n this._config.type = type;\n }\n get data() {\n return this._config.data;\n }\n set data(data) {\n this._config.data = initData(data);\n }\n get options() {\n return this._config.options;\n }\n set options(options) {\n this._config.options = options;\n }\n get plugins() {\n return this._config.plugins;\n }\n update() {\n const config = this._config;\n this.clearCache();\n initOptions(config);\n }\n clearCache() {\n this._scopeCache.clear();\n this._resolverCache.clear();\n }\n datasetScopeKeys(datasetType) {\n return cachedKeys(datasetType,\n () => [[\n `datasets.${datasetType}`,\n ''\n ]]);\n }\n datasetAnimationScopeKeys(datasetType, transition) {\n return cachedKeys(`${datasetType}.transition.${transition}`,\n () => [\n [\n `datasets.${datasetType}.transitions.${transition}`,\n `transitions.${transition}`,\n ],\n [\n `datasets.${datasetType}`,\n ''\n ]\n ]);\n }\n datasetElementScopeKeys(datasetType, elementType) {\n return cachedKeys(`${datasetType}-${elementType}`,\n () => [[\n `datasets.${datasetType}.elements.${elementType}`,\n `datasets.${datasetType}`,\n `elements.${elementType}`,\n ''\n ]]);\n }\n pluginScopeKeys(plugin) {\n const id = plugin.id;\n const type = this.type;\n return cachedKeys(`${type}-plugin-${id}`,\n () => [[\n `plugins.${id}`,\n ...plugin.additionalOptionScopes || [],\n ]]);\n }\n _cachedScopes(mainScope, resetCache) {\n const _scopeCache = this._scopeCache;\n let cache = _scopeCache.get(mainScope);\n if (!cache || resetCache) {\n cache = new Map();\n _scopeCache.set(mainScope, cache);\n }\n return cache;\n }\n getOptionScopes(mainScope, keyLists, resetCache) {\n const {options, type} = this;\n const cache = this._cachedScopes(mainScope, resetCache);\n const cached = cache.get(keyLists);\n if (cached) {\n return cached;\n }\n const scopes = new Set();\n keyLists.forEach(keys => {\n if (mainScope) {\n scopes.add(mainScope);\n keys.forEach(key => addIfFound(scopes, mainScope, key));\n }\n keys.forEach(key => addIfFound(scopes, options, key));\n keys.forEach(key => addIfFound(scopes, overrides[type] || {}, key));\n keys.forEach(key => addIfFound(scopes, defaults, key));\n keys.forEach(key => addIfFound(scopes, descriptors, key));\n });\n const array = Array.from(scopes);\n if (array.length === 0) {\n array.push(Object.create(null));\n }\n if (keysCached.has(keyLists)) {\n cache.set(keyLists, array);\n }\n return array;\n }\n chartOptionScopes() {\n const {options, type} = this;\n return [\n options,\n overrides[type] || {},\n defaults.datasets[type] || {},\n {type},\n defaults,\n descriptors\n ];\n }\n resolveNamedOptions(scopes, names, context, prefixes = ['']) {\n const result = {$shared: true};\n const {resolver, subPrefixes} = getResolver(this._resolverCache, scopes, prefixes);\n let options = resolver;\n if (needContext(resolver, names)) {\n result.$shared = false;\n context = isFunction(context) ? context() : context;\n const subResolver = this.createResolver(scopes, context, subPrefixes);\n options = _attachContext(resolver, context, subResolver);\n }\n for (const prop of names) {\n result[prop] = options[prop];\n }\n return result;\n }\n createResolver(scopes, context, prefixes = [''], descriptorDefaults) {\n const {resolver} = getResolver(this._resolverCache, scopes, prefixes);\n return isObject(context)\n ? _attachContext(resolver, context, undefined, descriptorDefaults)\n : resolver;\n }\n}\nfunction getResolver(resolverCache, scopes, prefixes) {\n let cache = resolverCache.get(scopes);\n if (!cache) {\n cache = new Map();\n resolverCache.set(scopes, cache);\n }\n const cacheKey = prefixes.join();\n let cached = cache.get(cacheKey);\n if (!cached) {\n const resolver = _createResolver(scopes, prefixes);\n cached = {\n resolver,\n subPrefixes: prefixes.filter(p => !p.toLowerCase().includes('hover'))\n };\n cache.set(cacheKey, cached);\n }\n return cached;\n}\nconst hasFunction = value => isObject(value)\n && Object.getOwnPropertyNames(value).reduce((acc, key) => acc || isFunction(value[key]), false);\nfunction needContext(proxy, names) {\n const {isScriptable, isIndexable} = _descriptors(proxy);\n for (const prop of names) {\n const scriptable = isScriptable(prop);\n const indexable = isIndexable(prop);\n const value = (indexable || scriptable) && proxy[prop];\n if ((scriptable && (isFunction(value) || hasFunction(value)))\n || (indexable && isArray(value))) {\n return true;\n }\n }\n return false;\n}\n\nvar version = \"3.9.1\";\n\nconst KNOWN_POSITIONS = ['top', 'bottom', 'left', 'right', 'chartArea'];\nfunction positionIsHorizontal(position, axis) {\n return position === 'top' || position === 'bottom' || (KNOWN_POSITIONS.indexOf(position) === -1 && axis === 'x');\n}\nfunction compare2Level(l1, l2) {\n return function(a, b) {\n return a[l1] === b[l1]\n ? a[l2] - b[l2]\n : a[l1] - b[l1];\n };\n}\nfunction onAnimationsComplete(context) {\n const chart = context.chart;\n const animationOptions = chart.options.animation;\n chart.notifyPlugins('afterRender');\n callback(animationOptions && animationOptions.onComplete, [context], chart);\n}\nfunction onAnimationProgress(context) {\n const chart = context.chart;\n const animationOptions = chart.options.animation;\n callback(animationOptions && animationOptions.onProgress, [context], chart);\n}\nfunction getCanvas(item) {\n if (_isDomSupported() && typeof item === 'string') {\n item = document.getElementById(item);\n } else if (item && item.length) {\n item = item[0];\n }\n if (item && item.canvas) {\n item = item.canvas;\n }\n return item;\n}\nconst instances = {};\nconst getChart = (key) => {\n const canvas = getCanvas(key);\n return Object.values(instances).filter((c) => c.canvas === canvas).pop();\n};\nfunction moveNumericKeys(obj, start, move) {\n const keys = Object.keys(obj);\n for (const key of keys) {\n const intKey = +key;\n if (intKey >= start) {\n const value = obj[key];\n delete obj[key];\n if (move > 0 || intKey > start) {\n obj[intKey + move] = value;\n }\n }\n }\n}\nfunction determineLastEvent(e, lastEvent, inChartArea, isClick) {\n if (!inChartArea || e.type === 'mouseout') {\n return null;\n }\n if (isClick) {\n return lastEvent;\n }\n return e;\n}\nclass Chart {\n constructor(item, userConfig) {\n const config = this.config = new Config(userConfig);\n const initialCanvas = getCanvas(item);\n const existingChart = getChart(initialCanvas);\n if (existingChart) {\n throw new Error(\n 'Canvas is already in use. Chart with ID \\'' + existingChart.id + '\\'' +\n\t\t\t\t' must be destroyed before the canvas with ID \\'' + existingChart.canvas.id + '\\' can be reused.'\n );\n }\n const options = config.createResolver(config.chartOptionScopes(), this.getContext());\n this.platform = new (config.platform || _detectPlatform(initialCanvas))();\n this.platform.updateConfig(config);\n const context = this.platform.acquireContext(initialCanvas, options.aspectRatio);\n const canvas = context && context.canvas;\n const height = canvas && canvas.height;\n const width = canvas && canvas.width;\n this.id = uid();\n this.ctx = context;\n this.canvas = canvas;\n this.width = width;\n this.height = height;\n this._options = options;\n this._aspectRatio = this.aspectRatio;\n this._layers = [];\n this._metasets = [];\n this._stacks = undefined;\n this.boxes = [];\n this.currentDevicePixelRatio = undefined;\n this.chartArea = undefined;\n this._active = [];\n this._lastEvent = undefined;\n this._listeners = {};\n this._responsiveListeners = undefined;\n this._sortedMetasets = [];\n this.scales = {};\n this._plugins = new PluginService();\n this.$proxies = {};\n this._hiddenIndices = {};\n this.attached = false;\n this._animationsDisabled = undefined;\n this.$context = undefined;\n this._doResize = debounce(mode => this.update(mode), options.resizeDelay || 0);\n this._dataChanges = [];\n instances[this.id] = this;\n if (!context || !canvas) {\n console.error(\"Failed to create chart: can't acquire context from the given item\");\n return;\n }\n animator.listen(this, 'complete', onAnimationsComplete);\n animator.listen(this, 'progress', onAnimationProgress);\n this._initialize();\n if (this.attached) {\n this.update();\n }\n }\n get aspectRatio() {\n const {options: {aspectRatio, maintainAspectRatio}, width, height, _aspectRatio} = this;\n if (!isNullOrUndef(aspectRatio)) {\n return aspectRatio;\n }\n if (maintainAspectRatio && _aspectRatio) {\n return _aspectRatio;\n }\n return height ? width / height : null;\n }\n get data() {\n return this.config.data;\n }\n set data(data) {\n this.config.data = data;\n }\n get options() {\n return this._options;\n }\n set options(options) {\n this.config.options = options;\n }\n _initialize() {\n this.notifyPlugins('beforeInit');\n if (this.options.responsive) {\n this.resize();\n } else {\n retinaScale(this, this.options.devicePixelRatio);\n }\n this.bindEvents();\n this.notifyPlugins('afterInit');\n return this;\n }\n clear() {\n clearCanvas(this.canvas, this.ctx);\n return this;\n }\n stop() {\n animator.stop(this);\n return this;\n }\n resize(width, height) {\n if (!animator.running(this)) {\n this._resize(width, height);\n } else {\n this._resizeBeforeDraw = {width, height};\n }\n }\n _resize(width, height) {\n const options = this.options;\n const canvas = this.canvas;\n const aspectRatio = options.maintainAspectRatio && this.aspectRatio;\n const newSize = this.platform.getMaximumSize(canvas, width, height, aspectRatio);\n const newRatio = options.devicePixelRatio || this.platform.getDevicePixelRatio();\n const mode = this.width ? 'resize' : 'attach';\n this.width = newSize.width;\n this.height = newSize.height;\n this._aspectRatio = this.aspectRatio;\n if (!retinaScale(this, newRatio, true)) {\n return;\n }\n this.notifyPlugins('resize', {size: newSize});\n callback(options.onResize, [this, newSize], this);\n if (this.attached) {\n if (this._doResize(mode)) {\n this.render();\n }\n }\n }\n ensureScalesHaveIDs() {\n const options = this.options;\n const scalesOptions = options.scales || {};\n each(scalesOptions, (axisOptions, axisID) => {\n axisOptions.id = axisID;\n });\n }\n buildOrUpdateScales() {\n const options = this.options;\n const scaleOpts = options.scales;\n const scales = this.scales;\n const updated = Object.keys(scales).reduce((obj, id) => {\n obj[id] = false;\n return obj;\n }, {});\n let items = [];\n if (scaleOpts) {\n items = items.concat(\n Object.keys(scaleOpts).map((id) => {\n const scaleOptions = scaleOpts[id];\n const axis = determineAxis(id, scaleOptions);\n const isRadial = axis === 'r';\n const isHorizontal = axis === 'x';\n return {\n options: scaleOptions,\n dposition: isRadial ? 'chartArea' : isHorizontal ? 'bottom' : 'left',\n dtype: isRadial ? 'radialLinear' : isHorizontal ? 'category' : 'linear'\n };\n })\n );\n }\n each(items, (item) => {\n const scaleOptions = item.options;\n const id = scaleOptions.id;\n const axis = determineAxis(id, scaleOptions);\n const scaleType = valueOrDefault(scaleOptions.type, item.dtype);\n if (scaleOptions.position === undefined || positionIsHorizontal(scaleOptions.position, axis) !== positionIsHorizontal(item.dposition)) {\n scaleOptions.position = item.dposition;\n }\n updated[id] = true;\n let scale = null;\n if (id in scales && scales[id].type === scaleType) {\n scale = scales[id];\n } else {\n const scaleClass = registry.getScale(scaleType);\n scale = new scaleClass({\n id,\n type: scaleType,\n ctx: this.ctx,\n chart: this\n });\n scales[scale.id] = scale;\n }\n scale.init(scaleOptions, options);\n });\n each(updated, (hasUpdated, id) => {\n if (!hasUpdated) {\n delete scales[id];\n }\n });\n each(scales, (scale) => {\n layouts.configure(this, scale, scale.options);\n layouts.addBox(this, scale);\n });\n }\n _updateMetasets() {\n const metasets = this._metasets;\n const numData = this.data.datasets.length;\n const numMeta = metasets.length;\n metasets.sort((a, b) => a.index - b.index);\n if (numMeta > numData) {\n for (let i = numData; i < numMeta; ++i) {\n this._destroyDatasetMeta(i);\n }\n metasets.splice(numData, numMeta - numData);\n }\n this._sortedMetasets = metasets.slice(0).sort(compare2Level('order', 'index'));\n }\n _removeUnreferencedMetasets() {\n const {_metasets: metasets, data: {datasets}} = this;\n if (metasets.length > datasets.length) {\n delete this._stacks;\n }\n metasets.forEach((meta, index) => {\n if (datasets.filter(x => x === meta._dataset).length === 0) {\n this._destroyDatasetMeta(index);\n }\n });\n }\n buildOrUpdateControllers() {\n const newControllers = [];\n const datasets = this.data.datasets;\n let i, ilen;\n this._removeUnreferencedMetasets();\n for (i = 0, ilen = datasets.length; i < ilen; i++) {\n const dataset = datasets[i];\n let meta = this.getDatasetMeta(i);\n const type = dataset.type || this.config.type;\n if (meta.type && meta.type !== type) {\n this._destroyDatasetMeta(i);\n meta = this.getDatasetMeta(i);\n }\n meta.type = type;\n meta.indexAxis = dataset.indexAxis || getIndexAxis(type, this.options);\n meta.order = dataset.order || 0;\n meta.index = i;\n meta.label = '' + dataset.label;\n meta.visible = this.isDatasetVisible(i);\n if (meta.controller) {\n meta.controller.updateIndex(i);\n meta.controller.linkScales();\n } else {\n const ControllerClass = registry.getController(type);\n const {datasetElementType, dataElementType} = defaults.datasets[type];\n Object.assign(ControllerClass.prototype, {\n dataElementType: registry.getElement(dataElementType),\n datasetElementType: datasetElementType && registry.getElement(datasetElementType)\n });\n meta.controller = new ControllerClass(this, i);\n newControllers.push(meta.controller);\n }\n }\n this._updateMetasets();\n return newControllers;\n }\n _resetElements() {\n each(this.data.datasets, (dataset, datasetIndex) => {\n this.getDatasetMeta(datasetIndex).controller.reset();\n }, this);\n }\n reset() {\n this._resetElements();\n this.notifyPlugins('reset');\n }\n update(mode) {\n const config = this.config;\n config.update();\n const options = this._options = config.createResolver(config.chartOptionScopes(), this.getContext());\n const animsDisabled = this._animationsDisabled = !options.animation;\n this._updateScales();\n this._checkEventBindings();\n this._updateHiddenIndices();\n this._plugins.invalidate();\n if (this.notifyPlugins('beforeUpdate', {mode, cancelable: true}) === false) {\n return;\n }\n const newControllers = this.buildOrUpdateControllers();\n this.notifyPlugins('beforeElementsUpdate');\n let minPadding = 0;\n for (let i = 0, ilen = this.data.datasets.length; i < ilen; i++) {\n const {controller} = this.getDatasetMeta(i);\n const reset = !animsDisabled && newControllers.indexOf(controller) === -1;\n controller.buildOrUpdateElements(reset);\n minPadding = Math.max(+controller.getMaxOverflow(), minPadding);\n }\n minPadding = this._minPadding = options.layout.autoPadding ? minPadding : 0;\n this._updateLayout(minPadding);\n if (!animsDisabled) {\n each(newControllers, (controller) => {\n controller.reset();\n });\n }\n this._updateDatasets(mode);\n this.notifyPlugins('afterUpdate', {mode});\n this._layers.sort(compare2Level('z', '_idx'));\n const {_active, _lastEvent} = this;\n if (_lastEvent) {\n this._eventHandler(_lastEvent, true);\n } else if (_active.length) {\n this._updateHoverStyles(_active, _active, true);\n }\n this.render();\n }\n _updateScales() {\n each(this.scales, (scale) => {\n layouts.removeBox(this, scale);\n });\n this.ensureScalesHaveIDs();\n this.buildOrUpdateScales();\n }\n _checkEventBindings() {\n const options = this.options;\n const existingEvents = new Set(Object.keys(this._listeners));\n const newEvents = new Set(options.events);\n if (!setsEqual(existingEvents, newEvents) || !!this._responsiveListeners !== options.responsive) {\n this.unbindEvents();\n this.bindEvents();\n }\n }\n _updateHiddenIndices() {\n const {_hiddenIndices} = this;\n const changes = this._getUniformDataChanges() || [];\n for (const {method, start, count} of changes) {\n const move = method === '_removeElements' ? -count : count;\n moveNumericKeys(_hiddenIndices, start, move);\n }\n }\n _getUniformDataChanges() {\n const _dataChanges = this._dataChanges;\n if (!_dataChanges || !_dataChanges.length) {\n return;\n }\n this._dataChanges = [];\n const datasetCount = this.data.datasets.length;\n const makeSet = (idx) => new Set(\n _dataChanges\n .filter(c => c[0] === idx)\n .map((c, i) => i + ',' + c.splice(1).join(','))\n );\n const changeSet = makeSet(0);\n for (let i = 1; i < datasetCount; i++) {\n if (!setsEqual(changeSet, makeSet(i))) {\n return;\n }\n }\n return Array.from(changeSet)\n .map(c => c.split(','))\n .map(a => ({method: a[1], start: +a[2], count: +a[3]}));\n }\n _updateLayout(minPadding) {\n if (this.notifyPlugins('beforeLayout', {cancelable: true}) === false) {\n return;\n }\n layouts.update(this, this.width, this.height, minPadding);\n const area = this.chartArea;\n const noArea = area.width <= 0 || area.height <= 0;\n this._layers = [];\n each(this.boxes, (box) => {\n if (noArea && box.position === 'chartArea') {\n return;\n }\n if (box.configure) {\n box.configure();\n }\n this._layers.push(...box._layers());\n }, this);\n this._layers.forEach((item, index) => {\n item._idx = index;\n });\n this.notifyPlugins('afterLayout');\n }\n _updateDatasets(mode) {\n if (this.notifyPlugins('beforeDatasetsUpdate', {mode, cancelable: true}) === false) {\n return;\n }\n for (let i = 0, ilen = this.data.datasets.length; i < ilen; ++i) {\n this.getDatasetMeta(i).controller.configure();\n }\n for (let i = 0, ilen = this.data.datasets.length; i < ilen; ++i) {\n this._updateDataset(i, isFunction(mode) ? mode({datasetIndex: i}) : mode);\n }\n this.notifyPlugins('afterDatasetsUpdate', {mode});\n }\n _updateDataset(index, mode) {\n const meta = this.getDatasetMeta(index);\n const args = {meta, index, mode, cancelable: true};\n if (this.notifyPlugins('beforeDatasetUpdate', args) === false) {\n return;\n }\n meta.controller._update(mode);\n args.cancelable = false;\n this.notifyPlugins('afterDatasetUpdate', args);\n }\n render() {\n if (this.notifyPlugins('beforeRender', {cancelable: true}) === false) {\n return;\n }\n if (animator.has(this)) {\n if (this.attached && !animator.running(this)) {\n animator.start(this);\n }\n } else {\n this.draw();\n onAnimationsComplete({chart: this});\n }\n }\n draw() {\n let i;\n if (this._resizeBeforeDraw) {\n const {width, height} = this._resizeBeforeDraw;\n this._resize(width, height);\n this._resizeBeforeDraw = null;\n }\n this.clear();\n if (this.width <= 0 || this.height <= 0) {\n return;\n }\n if (this.notifyPlugins('beforeDraw', {cancelable: true}) === false) {\n return;\n }\n const layers = this._layers;\n for (i = 0; i < layers.length && layers[i].z <= 0; ++i) {\n layers[i].draw(this.chartArea);\n }\n this._drawDatasets();\n for (; i < layers.length; ++i) {\n layers[i].draw(this.chartArea);\n }\n this.notifyPlugins('afterDraw');\n }\n _getSortedDatasetMetas(filterVisible) {\n const metasets = this._sortedMetasets;\n const result = [];\n let i, ilen;\n for (i = 0, ilen = metasets.length; i < ilen; ++i) {\n const meta = metasets[i];\n if (!filterVisible || meta.visible) {\n result.push(meta);\n }\n }\n return result;\n }\n getSortedVisibleDatasetMetas() {\n return this._getSortedDatasetMetas(true);\n }\n _drawDatasets() {\n if (this.notifyPlugins('beforeDatasetsDraw', {cancelable: true}) === false) {\n return;\n }\n const metasets = this.getSortedVisibleDatasetMetas();\n for (let i = metasets.length - 1; i >= 0; --i) {\n this._drawDataset(metasets[i]);\n }\n this.notifyPlugins('afterDatasetsDraw');\n }\n _drawDataset(meta) {\n const ctx = this.ctx;\n const clip = meta._clip;\n const useClip = !clip.disabled;\n const area = this.chartArea;\n const args = {\n meta,\n index: meta.index,\n cancelable: true\n };\n if (this.notifyPlugins('beforeDatasetDraw', args) === false) {\n return;\n }\n if (useClip) {\n clipArea(ctx, {\n left: clip.left === false ? 0 : area.left - clip.left,\n right: clip.right === false ? this.width : area.right + clip.right,\n top: clip.top === false ? 0 : area.top - clip.top,\n bottom: clip.bottom === false ? this.height : area.bottom + clip.bottom\n });\n }\n meta.controller.draw();\n if (useClip) {\n unclipArea(ctx);\n }\n args.cancelable = false;\n this.notifyPlugins('afterDatasetDraw', args);\n }\n isPointInArea(point) {\n return _isPointInArea(point, this.chartArea, this._minPadding);\n }\n getElementsAtEventForMode(e, mode, options, useFinalPosition) {\n const method = Interaction.modes[mode];\n if (typeof method === 'function') {\n return method(this, e, options, useFinalPosition);\n }\n return [];\n }\n getDatasetMeta(datasetIndex) {\n const dataset = this.data.datasets[datasetIndex];\n const metasets = this._metasets;\n let meta = metasets.filter(x => x && x._dataset === dataset).pop();\n if (!meta) {\n meta = {\n type: null,\n data: [],\n dataset: null,\n controller: null,\n hidden: null,\n xAxisID: null,\n yAxisID: null,\n order: dataset && dataset.order || 0,\n index: datasetIndex,\n _dataset: dataset,\n _parsed: [],\n _sorted: false\n };\n metasets.push(meta);\n }\n return meta;\n }\n getContext() {\n return this.$context || (this.$context = createContext(null, {chart: this, type: 'chart'}));\n }\n getVisibleDatasetCount() {\n return this.getSortedVisibleDatasetMetas().length;\n }\n isDatasetVisible(datasetIndex) {\n const dataset = this.data.datasets[datasetIndex];\n if (!dataset) {\n return false;\n }\n const meta = this.getDatasetMeta(datasetIndex);\n return typeof meta.hidden === 'boolean' ? !meta.hidden : !dataset.hidden;\n }\n setDatasetVisibility(datasetIndex, visible) {\n const meta = this.getDatasetMeta(datasetIndex);\n meta.hidden = !visible;\n }\n toggleDataVisibility(index) {\n this._hiddenIndices[index] = !this._hiddenIndices[index];\n }\n getDataVisibility(index) {\n return !this._hiddenIndices[index];\n }\n _updateVisibility(datasetIndex, dataIndex, visible) {\n const mode = visible ? 'show' : 'hide';\n const meta = this.getDatasetMeta(datasetIndex);\n const anims = meta.controller._resolveAnimations(undefined, mode);\n if (defined(dataIndex)) {\n meta.data[dataIndex].hidden = !visible;\n this.update();\n } else {\n this.setDatasetVisibility(datasetIndex, visible);\n anims.update(meta, {visible});\n this.update((ctx) => ctx.datasetIndex === datasetIndex ? mode : undefined);\n }\n }\n hide(datasetIndex, dataIndex) {\n this._updateVisibility(datasetIndex, dataIndex, false);\n }\n show(datasetIndex, dataIndex) {\n this._updateVisibility(datasetIndex, dataIndex, true);\n }\n _destroyDatasetMeta(datasetIndex) {\n const meta = this._metasets[datasetIndex];\n if (meta && meta.controller) {\n meta.controller._destroy();\n }\n delete this._metasets[datasetIndex];\n }\n _stop() {\n let i, ilen;\n this.stop();\n animator.remove(this);\n for (i = 0, ilen = this.data.datasets.length; i < ilen; ++i) {\n this._destroyDatasetMeta(i);\n }\n }\n destroy() {\n this.notifyPlugins('beforeDestroy');\n const {canvas, ctx} = this;\n this._stop();\n this.config.clearCache();\n if (canvas) {\n this.unbindEvents();\n clearCanvas(canvas, ctx);\n this.platform.releaseContext(ctx);\n this.canvas = null;\n this.ctx = null;\n }\n this.notifyPlugins('destroy');\n delete instances[this.id];\n this.notifyPlugins('afterDestroy');\n }\n toBase64Image(...args) {\n return this.canvas.toDataURL(...args);\n }\n bindEvents() {\n this.bindUserEvents();\n if (this.options.responsive) {\n this.bindResponsiveEvents();\n } else {\n this.attached = true;\n }\n }\n bindUserEvents() {\n const listeners = this._listeners;\n const platform = this.platform;\n const _add = (type, listener) => {\n platform.addEventListener(this, type, listener);\n listeners[type] = listener;\n };\n const listener = (e, x, y) => {\n e.offsetX = x;\n e.offsetY = y;\n this._eventHandler(e);\n };\n each(this.options.events, (type) => _add(type, listener));\n }\n bindResponsiveEvents() {\n if (!this._responsiveListeners) {\n this._responsiveListeners = {};\n }\n const listeners = this._responsiveListeners;\n const platform = this.platform;\n const _add = (type, listener) => {\n platform.addEventListener(this, type, listener);\n listeners[type] = listener;\n };\n const _remove = (type, listener) => {\n if (listeners[type]) {\n platform.removeEventListener(this, type, listener);\n delete listeners[type];\n }\n };\n const listener = (width, height) => {\n if (this.canvas) {\n this.resize(width, height);\n }\n };\n let detached;\n const attached = () => {\n _remove('attach', attached);\n this.attached = true;\n this.resize();\n _add('resize', listener);\n _add('detach', detached);\n };\n detached = () => {\n this.attached = false;\n _remove('resize', listener);\n this._stop();\n this._resize(0, 0);\n _add('attach', attached);\n };\n if (platform.isAttached(this.canvas)) {\n attached();\n } else {\n detached();\n }\n }\n unbindEvents() {\n each(this._listeners, (listener, type) => {\n this.platform.removeEventListener(this, type, listener);\n });\n this._listeners = {};\n each(this._responsiveListeners, (listener, type) => {\n this.platform.removeEventListener(this, type, listener);\n });\n this._responsiveListeners = undefined;\n }\n updateHoverStyle(items, mode, enabled) {\n const prefix = enabled ? 'set' : 'remove';\n let meta, item, i, ilen;\n if (mode === 'dataset') {\n meta = this.getDatasetMeta(items[0].datasetIndex);\n meta.controller['_' + prefix + 'DatasetHoverStyle']();\n }\n for (i = 0, ilen = items.length; i < ilen; ++i) {\n item = items[i];\n const controller = item && this.getDatasetMeta(item.datasetIndex).controller;\n if (controller) {\n controller[prefix + 'HoverStyle'](item.element, item.datasetIndex, item.index);\n }\n }\n }\n getActiveElements() {\n return this._active || [];\n }\n setActiveElements(activeElements) {\n const lastActive = this._active || [];\n const active = activeElements.map(({datasetIndex, index}) => {\n const meta = this.getDatasetMeta(datasetIndex);\n if (!meta) {\n throw new Error('No dataset found at index ' + datasetIndex);\n }\n return {\n datasetIndex,\n element: meta.data[index],\n index,\n };\n });\n const changed = !_elementsEqual(active, lastActive);\n if (changed) {\n this._active = active;\n this._lastEvent = null;\n this._updateHoverStyles(active, lastActive);\n }\n }\n notifyPlugins(hook, args, filter) {\n return this._plugins.notify(this, hook, args, filter);\n }\n _updateHoverStyles(active, lastActive, replay) {\n const hoverOptions = this.options.hover;\n const diff = (a, b) => a.filter(x => !b.some(y => x.datasetIndex === y.datasetIndex && x.index === y.index));\n const deactivated = diff(lastActive, active);\n const activated = replay ? active : diff(active, lastActive);\n if (deactivated.length) {\n this.updateHoverStyle(deactivated, hoverOptions.mode, false);\n }\n if (activated.length && hoverOptions.mode) {\n this.updateHoverStyle(activated, hoverOptions.mode, true);\n }\n }\n _eventHandler(e, replay) {\n const args = {\n event: e,\n replay,\n cancelable: true,\n inChartArea: this.isPointInArea(e)\n };\n const eventFilter = (plugin) => (plugin.options.events || this.options.events).includes(e.native.type);\n if (this.notifyPlugins('beforeEvent', args, eventFilter) === false) {\n return;\n }\n const changed = this._handleEvent(e, replay, args.inChartArea);\n args.cancelable = false;\n this.notifyPlugins('afterEvent', args, eventFilter);\n if (changed || args.changed) {\n this.render();\n }\n return this;\n }\n _handleEvent(e, replay, inChartArea) {\n const {_active: lastActive = [], options} = this;\n const useFinalPosition = replay;\n const active = this._getActiveElements(e, lastActive, inChartArea, useFinalPosition);\n const isClick = _isClickEvent(e);\n const lastEvent = determineLastEvent(e, this._lastEvent, inChartArea, isClick);\n if (inChartArea) {\n this._lastEvent = null;\n callback(options.onHover, [e, active, this], this);\n if (isClick) {\n callback(options.onClick, [e, active, this], this);\n }\n }\n const changed = !_elementsEqual(active, lastActive);\n if (changed || replay) {\n this._active = active;\n this._updateHoverStyles(active, lastActive, replay);\n }\n this._lastEvent = lastEvent;\n return changed;\n }\n _getActiveElements(e, lastActive, inChartArea, useFinalPosition) {\n if (e.type === 'mouseout') {\n return [];\n }\n if (!inChartArea) {\n return lastActive;\n }\n const hoverOptions = this.options.hover;\n return this.getElementsAtEventForMode(e, hoverOptions.mode, hoverOptions, useFinalPosition);\n }\n}\nconst invalidatePlugins = () => each(Chart.instances, (chart) => chart._plugins.invalidate());\nconst enumerable = true;\nObject.defineProperties(Chart, {\n defaults: {\n enumerable,\n value: defaults\n },\n instances: {\n enumerable,\n value: instances\n },\n overrides: {\n enumerable,\n value: overrides\n },\n registry: {\n enumerable,\n value: registry\n },\n version: {\n enumerable,\n value: version\n },\n getChart: {\n enumerable,\n value: getChart\n },\n register: {\n enumerable,\n value: (...items) => {\n registry.add(...items);\n invalidatePlugins();\n }\n },\n unregister: {\n enumerable,\n value: (...items) => {\n registry.remove(...items);\n invalidatePlugins();\n }\n }\n});\n\nfunction clipArc(ctx, element, endAngle) {\n const {startAngle, pixelMargin, x, y, outerRadius, innerRadius} = element;\n let angleMargin = pixelMargin / outerRadius;\n ctx.beginPath();\n ctx.arc(x, y, outerRadius, startAngle - angleMargin, endAngle + angleMargin);\n if (innerRadius > pixelMargin) {\n angleMargin = pixelMargin / innerRadius;\n ctx.arc(x, y, innerRadius, endAngle + angleMargin, startAngle - angleMargin, true);\n } else {\n ctx.arc(x, y, pixelMargin, endAngle + HALF_PI, startAngle - HALF_PI);\n }\n ctx.closePath();\n ctx.clip();\n}\nfunction toRadiusCorners(value) {\n return _readValueToProps(value, ['outerStart', 'outerEnd', 'innerStart', 'innerEnd']);\n}\nfunction parseBorderRadius$1(arc, innerRadius, outerRadius, angleDelta) {\n const o = toRadiusCorners(arc.options.borderRadius);\n const halfThickness = (outerRadius - innerRadius) / 2;\n const innerLimit = Math.min(halfThickness, angleDelta * innerRadius / 2);\n const computeOuterLimit = (val) => {\n const outerArcLimit = (outerRadius - Math.min(halfThickness, val)) * angleDelta / 2;\n return _limitValue(val, 0, Math.min(halfThickness, outerArcLimit));\n };\n return {\n outerStart: computeOuterLimit(o.outerStart),\n outerEnd: computeOuterLimit(o.outerEnd),\n innerStart: _limitValue(o.innerStart, 0, innerLimit),\n innerEnd: _limitValue(o.innerEnd, 0, innerLimit),\n };\n}\nfunction rThetaToXY(r, theta, x, y) {\n return {\n x: x + r * Math.cos(theta),\n y: y + r * Math.sin(theta),\n };\n}\nfunction pathArc(ctx, element, offset, spacing, end, circular) {\n const {x, y, startAngle: start, pixelMargin, innerRadius: innerR} = element;\n const outerRadius = Math.max(element.outerRadius + spacing + offset - pixelMargin, 0);\n const innerRadius = innerR > 0 ? innerR + spacing + offset + pixelMargin : 0;\n let spacingOffset = 0;\n const alpha = end - start;\n if (spacing) {\n const noSpacingInnerRadius = innerR > 0 ? innerR - spacing : 0;\n const noSpacingOuterRadius = outerRadius > 0 ? outerRadius - spacing : 0;\n const avNogSpacingRadius = (noSpacingInnerRadius + noSpacingOuterRadius) / 2;\n const adjustedAngle = avNogSpacingRadius !== 0 ? (alpha * avNogSpacingRadius) / (avNogSpacingRadius + spacing) : alpha;\n spacingOffset = (alpha - adjustedAngle) / 2;\n }\n const beta = Math.max(0.001, alpha * outerRadius - offset / PI) / outerRadius;\n const angleOffset = (alpha - beta) / 2;\n const startAngle = start + angleOffset + spacingOffset;\n const endAngle = end - angleOffset - spacingOffset;\n const {outerStart, outerEnd, innerStart, innerEnd} = parseBorderRadius$1(element, innerRadius, outerRadius, endAngle - startAngle);\n const outerStartAdjustedRadius = outerRadius - outerStart;\n const outerEndAdjustedRadius = outerRadius - outerEnd;\n const outerStartAdjustedAngle = startAngle + outerStart / outerStartAdjustedRadius;\n const outerEndAdjustedAngle = endAngle - outerEnd / outerEndAdjustedRadius;\n const innerStartAdjustedRadius = innerRadius + innerStart;\n const innerEndAdjustedRadius = innerRadius + innerEnd;\n const innerStartAdjustedAngle = startAngle + innerStart / innerStartAdjustedRadius;\n const innerEndAdjustedAngle = endAngle - innerEnd / innerEndAdjustedRadius;\n ctx.beginPath();\n if (circular) {\n ctx.arc(x, y, outerRadius, outerStartAdjustedAngle, outerEndAdjustedAngle);\n if (outerEnd > 0) {\n const pCenter = rThetaToXY(outerEndAdjustedRadius, outerEndAdjustedAngle, x, y);\n ctx.arc(pCenter.x, pCenter.y, outerEnd, outerEndAdjustedAngle, endAngle + HALF_PI);\n }\n const p4 = rThetaToXY(innerEndAdjustedRadius, endAngle, x, y);\n ctx.lineTo(p4.x, p4.y);\n if (innerEnd > 0) {\n const pCenter = rThetaToXY(innerEndAdjustedRadius, innerEndAdjustedAngle, x, y);\n ctx.arc(pCenter.x, pCenter.y, innerEnd, endAngle + HALF_PI, innerEndAdjustedAngle + Math.PI);\n }\n ctx.arc(x, y, innerRadius, endAngle - (innerEnd / innerRadius), startAngle + (innerStart / innerRadius), true);\n if (innerStart > 0) {\n const pCenter = rThetaToXY(innerStartAdjustedRadius, innerStartAdjustedAngle, x, y);\n ctx.arc(pCenter.x, pCenter.y, innerStart, innerStartAdjustedAngle + Math.PI, startAngle - HALF_PI);\n }\n const p8 = rThetaToXY(outerStartAdjustedRadius, startAngle, x, y);\n ctx.lineTo(p8.x, p8.y);\n if (outerStart > 0) {\n const pCenter = rThetaToXY(outerStartAdjustedRadius, outerStartAdjustedAngle, x, y);\n ctx.arc(pCenter.x, pCenter.y, outerStart, startAngle - HALF_PI, outerStartAdjustedAngle);\n }\n } else {\n ctx.moveTo(x, y);\n const outerStartX = Math.cos(outerStartAdjustedAngle) * outerRadius + x;\n const outerStartY = Math.sin(outerStartAdjustedAngle) * outerRadius + y;\n ctx.lineTo(outerStartX, outerStartY);\n const outerEndX = Math.cos(outerEndAdjustedAngle) * outerRadius + x;\n const outerEndY = Math.sin(outerEndAdjustedAngle) * outerRadius + y;\n ctx.lineTo(outerEndX, outerEndY);\n }\n ctx.closePath();\n}\nfunction drawArc(ctx, element, offset, spacing, circular) {\n const {fullCircles, startAngle, circumference} = element;\n let endAngle = element.endAngle;\n if (fullCircles) {\n pathArc(ctx, element, offset, spacing, startAngle + TAU, circular);\n for (let i = 0; i < fullCircles; ++i) {\n ctx.fill();\n }\n if (!isNaN(circumference)) {\n endAngle = startAngle + circumference % TAU;\n if (circumference % TAU === 0) {\n endAngle += TAU;\n }\n }\n }\n pathArc(ctx, element, offset, spacing, endAngle, circular);\n ctx.fill();\n return endAngle;\n}\nfunction drawFullCircleBorders(ctx, element, inner) {\n const {x, y, startAngle, pixelMargin, fullCircles} = element;\n const outerRadius = Math.max(element.outerRadius - pixelMargin, 0);\n const innerRadius = element.innerRadius + pixelMargin;\n let i;\n if (inner) {\n clipArc(ctx, element, startAngle + TAU);\n }\n ctx.beginPath();\n ctx.arc(x, y, innerRadius, startAngle + TAU, startAngle, true);\n for (i = 0; i < fullCircles; ++i) {\n ctx.stroke();\n }\n ctx.beginPath();\n ctx.arc(x, y, outerRadius, startAngle, startAngle + TAU);\n for (i = 0; i < fullCircles; ++i) {\n ctx.stroke();\n }\n}\nfunction drawBorder(ctx, element, offset, spacing, endAngle, circular) {\n const {options} = element;\n const {borderWidth, borderJoinStyle} = options;\n const inner = options.borderAlign === 'inner';\n if (!borderWidth) {\n return;\n }\n if (inner) {\n ctx.lineWidth = borderWidth * 2;\n ctx.lineJoin = borderJoinStyle || 'round';\n } else {\n ctx.lineWidth = borderWidth;\n ctx.lineJoin = borderJoinStyle || 'bevel';\n }\n if (element.fullCircles) {\n drawFullCircleBorders(ctx, element, inner);\n }\n if (inner) {\n clipArc(ctx, element, endAngle);\n }\n pathArc(ctx, element, offset, spacing, endAngle, circular);\n ctx.stroke();\n}\nclass ArcElement extends Element {\n constructor(cfg) {\n super();\n this.options = undefined;\n this.circumference = undefined;\n this.startAngle = undefined;\n this.endAngle = undefined;\n this.innerRadius = undefined;\n this.outerRadius = undefined;\n this.pixelMargin = 0;\n this.fullCircles = 0;\n if (cfg) {\n Object.assign(this, cfg);\n }\n }\n inRange(chartX, chartY, useFinalPosition) {\n const point = this.getProps(['x', 'y'], useFinalPosition);\n const {angle, distance} = getAngleFromPoint(point, {x: chartX, y: chartY});\n const {startAngle, endAngle, innerRadius, outerRadius, circumference} = this.getProps([\n 'startAngle',\n 'endAngle',\n 'innerRadius',\n 'outerRadius',\n 'circumference'\n ], useFinalPosition);\n const rAdjust = this.options.spacing / 2;\n const _circumference = valueOrDefault(circumference, endAngle - startAngle);\n const betweenAngles = _circumference >= TAU || _angleBetween(angle, startAngle, endAngle);\n const withinRadius = _isBetween(distance, innerRadius + rAdjust, outerRadius + rAdjust);\n return (betweenAngles && withinRadius);\n }\n getCenterPoint(useFinalPosition) {\n const {x, y, startAngle, endAngle, innerRadius, outerRadius} = this.getProps([\n 'x',\n 'y',\n 'startAngle',\n 'endAngle',\n 'innerRadius',\n 'outerRadius',\n 'circumference',\n ], useFinalPosition);\n const {offset, spacing} = this.options;\n const halfAngle = (startAngle + endAngle) / 2;\n const halfRadius = (innerRadius + outerRadius + spacing + offset) / 2;\n return {\n x: x + Math.cos(halfAngle) * halfRadius,\n y: y + Math.sin(halfAngle) * halfRadius\n };\n }\n tooltipPosition(useFinalPosition) {\n return this.getCenterPoint(useFinalPosition);\n }\n draw(ctx) {\n const {options, circumference} = this;\n const offset = (options.offset || 0) / 2;\n const spacing = (options.spacing || 0) / 2;\n const circular = options.circular;\n this.pixelMargin = (options.borderAlign === 'inner') ? 0.33 : 0;\n this.fullCircles = circumference > TAU ? Math.floor(circumference / TAU) : 0;\n if (circumference === 0 || this.innerRadius < 0 || this.outerRadius < 0) {\n return;\n }\n ctx.save();\n let radiusOffset = 0;\n if (offset) {\n radiusOffset = offset / 2;\n const halfAngle = (this.startAngle + this.endAngle) / 2;\n ctx.translate(Math.cos(halfAngle) * radiusOffset, Math.sin(halfAngle) * radiusOffset);\n if (this.circumference >= PI) {\n radiusOffset = offset;\n }\n }\n ctx.fillStyle = options.backgroundColor;\n ctx.strokeStyle = options.borderColor;\n const endAngle = drawArc(ctx, this, radiusOffset, spacing, circular);\n drawBorder(ctx, this, radiusOffset, spacing, endAngle, circular);\n ctx.restore();\n }\n}\nArcElement.id = 'arc';\nArcElement.defaults = {\n borderAlign: 'center',\n borderColor: '#fff',\n borderJoinStyle: undefined,\n borderRadius: 0,\n borderWidth: 2,\n offset: 0,\n spacing: 0,\n angle: undefined,\n circular: true,\n};\nArcElement.defaultRoutes = {\n backgroundColor: 'backgroundColor'\n};\n\nfunction setStyle(ctx, options, style = options) {\n ctx.lineCap = valueOrDefault(style.borderCapStyle, options.borderCapStyle);\n ctx.setLineDash(valueOrDefault(style.borderDash, options.borderDash));\n ctx.lineDashOffset = valueOrDefault(style.borderDashOffset, options.borderDashOffset);\n ctx.lineJoin = valueOrDefault(style.borderJoinStyle, options.borderJoinStyle);\n ctx.lineWidth = valueOrDefault(style.borderWidth, options.borderWidth);\n ctx.strokeStyle = valueOrDefault(style.borderColor, options.borderColor);\n}\nfunction lineTo(ctx, previous, target) {\n ctx.lineTo(target.x, target.y);\n}\nfunction getLineMethod(options) {\n if (options.stepped) {\n return _steppedLineTo;\n }\n if (options.tension || options.cubicInterpolationMode === 'monotone') {\n return _bezierCurveTo;\n }\n return lineTo;\n}\nfunction pathVars(points, segment, params = {}) {\n const count = points.length;\n const {start: paramsStart = 0, end: paramsEnd = count - 1} = params;\n const {start: segmentStart, end: segmentEnd} = segment;\n const start = Math.max(paramsStart, segmentStart);\n const end = Math.min(paramsEnd, segmentEnd);\n const outside = paramsStart < segmentStart && paramsEnd < segmentStart || paramsStart > segmentEnd && paramsEnd > segmentEnd;\n return {\n count,\n start,\n loop: segment.loop,\n ilen: end < start && !outside ? count + end - start : end - start\n };\n}\nfunction pathSegment(ctx, line, segment, params) {\n const {points, options} = line;\n const {count, start, loop, ilen} = pathVars(points, segment, params);\n const lineMethod = getLineMethod(options);\n let {move = true, reverse} = params || {};\n let i, point, prev;\n for (i = 0; i <= ilen; ++i) {\n point = points[(start + (reverse ? ilen - i : i)) % count];\n if (point.skip) {\n continue;\n } else if (move) {\n ctx.moveTo(point.x, point.y);\n move = false;\n } else {\n lineMethod(ctx, prev, point, reverse, options.stepped);\n }\n prev = point;\n }\n if (loop) {\n point = points[(start + (reverse ? ilen : 0)) % count];\n lineMethod(ctx, prev, point, reverse, options.stepped);\n }\n return !!loop;\n}\nfunction fastPathSegment(ctx, line, segment, params) {\n const points = line.points;\n const {count, start, ilen} = pathVars(points, segment, params);\n const {move = true, reverse} = params || {};\n let avgX = 0;\n let countX = 0;\n let i, point, prevX, minY, maxY, lastY;\n const pointIndex = (index) => (start + (reverse ? ilen - index : index)) % count;\n const drawX = () => {\n if (minY !== maxY) {\n ctx.lineTo(avgX, maxY);\n ctx.lineTo(avgX, minY);\n ctx.lineTo(avgX, lastY);\n }\n };\n if (move) {\n point = points[pointIndex(0)];\n ctx.moveTo(point.x, point.y);\n }\n for (i = 0; i <= ilen; ++i) {\n point = points[pointIndex(i)];\n if (point.skip) {\n continue;\n }\n const x = point.x;\n const y = point.y;\n const truncX = x | 0;\n if (truncX === prevX) {\n if (y < minY) {\n minY = y;\n } else if (y > maxY) {\n maxY = y;\n }\n avgX = (countX * avgX + x) / ++countX;\n } else {\n drawX();\n ctx.lineTo(x, y);\n prevX = truncX;\n countX = 0;\n minY = maxY = y;\n }\n lastY = y;\n }\n drawX();\n}\nfunction _getSegmentMethod(line) {\n const opts = line.options;\n const borderDash = opts.borderDash && opts.borderDash.length;\n const useFastPath = !line._decimated && !line._loop && !opts.tension && opts.cubicInterpolationMode !== 'monotone' && !opts.stepped && !borderDash;\n return useFastPath ? fastPathSegment : pathSegment;\n}\nfunction _getInterpolationMethod(options) {\n if (options.stepped) {\n return _steppedInterpolation;\n }\n if (options.tension || options.cubicInterpolationMode === 'monotone') {\n return _bezierInterpolation;\n }\n return _pointInLine;\n}\nfunction strokePathWithCache(ctx, line, start, count) {\n let path = line._path;\n if (!path) {\n path = line._path = new Path2D();\n if (line.path(path, start, count)) {\n path.closePath();\n }\n }\n setStyle(ctx, line.options);\n ctx.stroke(path);\n}\nfunction strokePathDirect(ctx, line, start, count) {\n const {segments, options} = line;\n const segmentMethod = _getSegmentMethod(line);\n for (const segment of segments) {\n setStyle(ctx, options, segment.style);\n ctx.beginPath();\n if (segmentMethod(ctx, line, segment, {start, end: start + count - 1})) {\n ctx.closePath();\n }\n ctx.stroke();\n }\n}\nconst usePath2D = typeof Path2D === 'function';\nfunction draw(ctx, line, start, count) {\n if (usePath2D && !line.options.segment) {\n strokePathWithCache(ctx, line, start, count);\n } else {\n strokePathDirect(ctx, line, start, count);\n }\n}\nclass LineElement extends Element {\n constructor(cfg) {\n super();\n this.animated = true;\n this.options = undefined;\n this._chart = undefined;\n this._loop = undefined;\n this._fullLoop = undefined;\n this._path = undefined;\n this._points = undefined;\n this._segments = undefined;\n this._decimated = false;\n this._pointsUpdated = false;\n this._datasetIndex = undefined;\n if (cfg) {\n Object.assign(this, cfg);\n }\n }\n updateControlPoints(chartArea, indexAxis) {\n const options = this.options;\n if ((options.tension || options.cubicInterpolationMode === 'monotone') && !options.stepped && !this._pointsUpdated) {\n const loop = options.spanGaps ? this._loop : this._fullLoop;\n _updateBezierControlPoints(this._points, options, chartArea, loop, indexAxis);\n this._pointsUpdated = true;\n }\n }\n set points(points) {\n this._points = points;\n delete this._segments;\n delete this._path;\n this._pointsUpdated = false;\n }\n get points() {\n return this._points;\n }\n get segments() {\n return this._segments || (this._segments = _computeSegments(this, this.options.segment));\n }\n first() {\n const segments = this.segments;\n const points = this.points;\n return segments.length && points[segments[0].start];\n }\n last() {\n const segments = this.segments;\n const points = this.points;\n const count = segments.length;\n return count && points[segments[count - 1].end];\n }\n interpolate(point, property) {\n const options = this.options;\n const value = point[property];\n const points = this.points;\n const segments = _boundSegments(this, {property, start: value, end: value});\n if (!segments.length) {\n return;\n }\n const result = [];\n const _interpolate = _getInterpolationMethod(options);\n let i, ilen;\n for (i = 0, ilen = segments.length; i < ilen; ++i) {\n const {start, end} = segments[i];\n const p1 = points[start];\n const p2 = points[end];\n if (p1 === p2) {\n result.push(p1);\n continue;\n }\n const t = Math.abs((value - p1[property]) / (p2[property] - p1[property]));\n const interpolated = _interpolate(p1, p2, t, options.stepped);\n interpolated[property] = point[property];\n result.push(interpolated);\n }\n return result.length === 1 ? result[0] : result;\n }\n pathSegment(ctx, segment, params) {\n const segmentMethod = _getSegmentMethod(this);\n return segmentMethod(ctx, this, segment, params);\n }\n path(ctx, start, count) {\n const segments = this.segments;\n const segmentMethod = _getSegmentMethod(this);\n let loop = this._loop;\n start = start || 0;\n count = count || (this.points.length - start);\n for (const segment of segments) {\n loop &= segmentMethod(ctx, this, segment, {start, end: start + count - 1});\n }\n return !!loop;\n }\n draw(ctx, chartArea, start, count) {\n const options = this.options || {};\n const points = this.points || [];\n if (points.length && options.borderWidth) {\n ctx.save();\n draw(ctx, this, start, count);\n ctx.restore();\n }\n if (this.animated) {\n this._pointsUpdated = false;\n this._path = undefined;\n }\n }\n}\nLineElement.id = 'line';\nLineElement.defaults = {\n borderCapStyle: 'butt',\n borderDash: [],\n borderDashOffset: 0,\n borderJoinStyle: 'miter',\n borderWidth: 3,\n capBezierPoints: true,\n cubicInterpolationMode: 'default',\n fill: false,\n spanGaps: false,\n stepped: false,\n tension: 0,\n};\nLineElement.defaultRoutes = {\n backgroundColor: 'backgroundColor',\n borderColor: 'borderColor'\n};\nLineElement.descriptors = {\n _scriptable: true,\n _indexable: (name) => name !== 'borderDash' && name !== 'fill',\n};\n\nfunction inRange$1(el, pos, axis, useFinalPosition) {\n const options = el.options;\n const {[axis]: value} = el.getProps([axis], useFinalPosition);\n return (Math.abs(pos - value) < options.radius + options.hitRadius);\n}\nclass PointElement extends Element {\n constructor(cfg) {\n super();\n this.options = undefined;\n this.parsed = undefined;\n this.skip = undefined;\n this.stop = undefined;\n if (cfg) {\n Object.assign(this, cfg);\n }\n }\n inRange(mouseX, mouseY, useFinalPosition) {\n const options = this.options;\n const {x, y} = this.getProps(['x', 'y'], useFinalPosition);\n return ((Math.pow(mouseX - x, 2) + Math.pow(mouseY - y, 2)) < Math.pow(options.hitRadius + options.radius, 2));\n }\n inXRange(mouseX, useFinalPosition) {\n return inRange$1(this, mouseX, 'x', useFinalPosition);\n }\n inYRange(mouseY, useFinalPosition) {\n return inRange$1(this, mouseY, 'y', useFinalPosition);\n }\n getCenterPoint(useFinalPosition) {\n const {x, y} = this.getProps(['x', 'y'], useFinalPosition);\n return {x, y};\n }\n size(options) {\n options = options || this.options || {};\n let radius = options.radius || 0;\n radius = Math.max(radius, radius && options.hoverRadius || 0);\n const borderWidth = radius && options.borderWidth || 0;\n return (radius + borderWidth) * 2;\n }\n draw(ctx, area) {\n const options = this.options;\n if (this.skip || options.radius < 0.1 || !_isPointInArea(this, area, this.size(options) / 2)) {\n return;\n }\n ctx.strokeStyle = options.borderColor;\n ctx.lineWidth = options.borderWidth;\n ctx.fillStyle = options.backgroundColor;\n drawPoint(ctx, options, this.x, this.y);\n }\n getRange() {\n const options = this.options || {};\n return options.radius + options.hitRadius;\n }\n}\nPointElement.id = 'point';\nPointElement.defaults = {\n borderWidth: 1,\n hitRadius: 1,\n hoverBorderWidth: 1,\n hoverRadius: 4,\n pointStyle: 'circle',\n radius: 3,\n rotation: 0\n};\nPointElement.defaultRoutes = {\n backgroundColor: 'backgroundColor',\n borderColor: 'borderColor'\n};\n\nfunction getBarBounds(bar, useFinalPosition) {\n const {x, y, base, width, height} = bar.getProps(['x', 'y', 'base', 'width', 'height'], useFinalPosition);\n let left, right, top, bottom, half;\n if (bar.horizontal) {\n half = height / 2;\n left = Math.min(x, base);\n right = Math.max(x, base);\n top = y - half;\n bottom = y + half;\n } else {\n half = width / 2;\n left = x - half;\n right = x + half;\n top = Math.min(y, base);\n bottom = Math.max(y, base);\n }\n return {left, top, right, bottom};\n}\nfunction skipOrLimit(skip, value, min, max) {\n return skip ? 0 : _limitValue(value, min, max);\n}\nfunction parseBorderWidth(bar, maxW, maxH) {\n const value = bar.options.borderWidth;\n const skip = bar.borderSkipped;\n const o = toTRBL(value);\n return {\n t: skipOrLimit(skip.top, o.top, 0, maxH),\n r: skipOrLimit(skip.right, o.right, 0, maxW),\n b: skipOrLimit(skip.bottom, o.bottom, 0, maxH),\n l: skipOrLimit(skip.left, o.left, 0, maxW)\n };\n}\nfunction parseBorderRadius(bar, maxW, maxH) {\n const {enableBorderRadius} = bar.getProps(['enableBorderRadius']);\n const value = bar.options.borderRadius;\n const o = toTRBLCorners(value);\n const maxR = Math.min(maxW, maxH);\n const skip = bar.borderSkipped;\n const enableBorder = enableBorderRadius || isObject(value);\n return {\n topLeft: skipOrLimit(!enableBorder || skip.top || skip.left, o.topLeft, 0, maxR),\n topRight: skipOrLimit(!enableBorder || skip.top || skip.right, o.topRight, 0, maxR),\n bottomLeft: skipOrLimit(!enableBorder || skip.bottom || skip.left, o.bottomLeft, 0, maxR),\n bottomRight: skipOrLimit(!enableBorder || skip.bottom || skip.right, o.bottomRight, 0, maxR)\n };\n}\nfunction boundingRects(bar) {\n const bounds = getBarBounds(bar);\n const width = bounds.right - bounds.left;\n const height = bounds.bottom - bounds.top;\n const border = parseBorderWidth(bar, width / 2, height / 2);\n const radius = parseBorderRadius(bar, width / 2, height / 2);\n return {\n outer: {\n x: bounds.left,\n y: bounds.top,\n w: width,\n h: height,\n radius\n },\n inner: {\n x: bounds.left + border.l,\n y: bounds.top + border.t,\n w: width - border.l - border.r,\n h: height - border.t - border.b,\n radius: {\n topLeft: Math.max(0, radius.topLeft - Math.max(border.t, border.l)),\n topRight: Math.max(0, radius.topRight - Math.max(border.t, border.r)),\n bottomLeft: Math.max(0, radius.bottomLeft - Math.max(border.b, border.l)),\n bottomRight: Math.max(0, radius.bottomRight - Math.max(border.b, border.r)),\n }\n }\n };\n}\nfunction inRange(bar, x, y, useFinalPosition) {\n const skipX = x === null;\n const skipY = y === null;\n const skipBoth = skipX && skipY;\n const bounds = bar && !skipBoth && getBarBounds(bar, useFinalPosition);\n return bounds\n\t\t&& (skipX || _isBetween(x, bounds.left, bounds.right))\n\t\t&& (skipY || _isBetween(y, bounds.top, bounds.bottom));\n}\nfunction hasRadius(radius) {\n return radius.topLeft || radius.topRight || radius.bottomLeft || radius.bottomRight;\n}\nfunction addNormalRectPath(ctx, rect) {\n ctx.rect(rect.x, rect.y, rect.w, rect.h);\n}\nfunction inflateRect(rect, amount, refRect = {}) {\n const x = rect.x !== refRect.x ? -amount : 0;\n const y = rect.y !== refRect.y ? -amount : 0;\n const w = (rect.x + rect.w !== refRect.x + refRect.w ? amount : 0) - x;\n const h = (rect.y + rect.h !== refRect.y + refRect.h ? amount : 0) - y;\n return {\n x: rect.x + x,\n y: rect.y + y,\n w: rect.w + w,\n h: rect.h + h,\n radius: rect.radius\n };\n}\nclass BarElement extends Element {\n constructor(cfg) {\n super();\n this.options = undefined;\n this.horizontal = undefined;\n this.base = undefined;\n this.width = undefined;\n this.height = undefined;\n this.inflateAmount = undefined;\n if (cfg) {\n Object.assign(this, cfg);\n }\n }\n draw(ctx) {\n const {inflateAmount, options: {borderColor, backgroundColor}} = this;\n const {inner, outer} = boundingRects(this);\n const addRectPath = hasRadius(outer.radius) ? addRoundedRectPath : addNormalRectPath;\n ctx.save();\n if (outer.w !== inner.w || outer.h !== inner.h) {\n ctx.beginPath();\n addRectPath(ctx, inflateRect(outer, inflateAmount, inner));\n ctx.clip();\n addRectPath(ctx, inflateRect(inner, -inflateAmount, outer));\n ctx.fillStyle = borderColor;\n ctx.fill('evenodd');\n }\n ctx.beginPath();\n addRectPath(ctx, inflateRect(inner, inflateAmount));\n ctx.fillStyle = backgroundColor;\n ctx.fill();\n ctx.restore();\n }\n inRange(mouseX, mouseY, useFinalPosition) {\n return inRange(this, mouseX, mouseY, useFinalPosition);\n }\n inXRange(mouseX, useFinalPosition) {\n return inRange(this, mouseX, null, useFinalPosition);\n }\n inYRange(mouseY, useFinalPosition) {\n return inRange(this, null, mouseY, useFinalPosition);\n }\n getCenterPoint(useFinalPosition) {\n const {x, y, base, horizontal} = this.getProps(['x', 'y', 'base', 'horizontal'], useFinalPosition);\n return {\n x: horizontal ? (x + base) / 2 : x,\n y: horizontal ? y : (y + base) / 2\n };\n }\n getRange(axis) {\n return axis === 'x' ? this.width / 2 : this.height / 2;\n }\n}\nBarElement.id = 'bar';\nBarElement.defaults = {\n borderSkipped: 'start',\n borderWidth: 0,\n borderRadius: 0,\n inflateAmount: 'auto',\n pointStyle: undefined\n};\nBarElement.defaultRoutes = {\n backgroundColor: 'backgroundColor',\n borderColor: 'borderColor'\n};\n\nvar elements = /*#__PURE__*/Object.freeze({\n__proto__: null,\nArcElement: ArcElement,\nLineElement: LineElement,\nPointElement: PointElement,\nBarElement: BarElement\n});\n\nfunction lttbDecimation(data, start, count, availableWidth, options) {\n const samples = options.samples || availableWidth;\n if (samples >= count) {\n return data.slice(start, start + count);\n }\n const decimated = [];\n const bucketWidth = (count - 2) / (samples - 2);\n let sampledIndex = 0;\n const endIndex = start + count - 1;\n let a = start;\n let i, maxAreaPoint, maxArea, area, nextA;\n decimated[sampledIndex++] = data[a];\n for (i = 0; i < samples - 2; i++) {\n let avgX = 0;\n let avgY = 0;\n let j;\n const avgRangeStart = Math.floor((i + 1) * bucketWidth) + 1 + start;\n const avgRangeEnd = Math.min(Math.floor((i + 2) * bucketWidth) + 1, count) + start;\n const avgRangeLength = avgRangeEnd - avgRangeStart;\n for (j = avgRangeStart; j < avgRangeEnd; j++) {\n avgX += data[j].x;\n avgY += data[j].y;\n }\n avgX /= avgRangeLength;\n avgY /= avgRangeLength;\n const rangeOffs = Math.floor(i * bucketWidth) + 1 + start;\n const rangeTo = Math.min(Math.floor((i + 1) * bucketWidth) + 1, count) + start;\n const {x: pointAx, y: pointAy} = data[a];\n maxArea = area = -1;\n for (j = rangeOffs; j < rangeTo; j++) {\n area = 0.5 * Math.abs(\n (pointAx - avgX) * (data[j].y - pointAy) -\n (pointAx - data[j].x) * (avgY - pointAy)\n );\n if (area > maxArea) {\n maxArea = area;\n maxAreaPoint = data[j];\n nextA = j;\n }\n }\n decimated[sampledIndex++] = maxAreaPoint;\n a = nextA;\n }\n decimated[sampledIndex++] = data[endIndex];\n return decimated;\n}\nfunction minMaxDecimation(data, start, count, availableWidth) {\n let avgX = 0;\n let countX = 0;\n let i, point, x, y, prevX, minIndex, maxIndex, startIndex, minY, maxY;\n const decimated = [];\n const endIndex = start + count - 1;\n const xMin = data[start].x;\n const xMax = data[endIndex].x;\n const dx = xMax - xMin;\n for (i = start; i < start + count; ++i) {\n point = data[i];\n x = (point.x - xMin) / dx * availableWidth;\n y = point.y;\n const truncX = x | 0;\n if (truncX === prevX) {\n if (y < minY) {\n minY = y;\n minIndex = i;\n } else if (y > maxY) {\n maxY = y;\n maxIndex = i;\n }\n avgX = (countX * avgX + point.x) / ++countX;\n } else {\n const lastIndex = i - 1;\n if (!isNullOrUndef(minIndex) && !isNullOrUndef(maxIndex)) {\n const intermediateIndex1 = Math.min(minIndex, maxIndex);\n const intermediateIndex2 = Math.max(minIndex, maxIndex);\n if (intermediateIndex1 !== startIndex && intermediateIndex1 !== lastIndex) {\n decimated.push({\n ...data[intermediateIndex1],\n x: avgX,\n });\n }\n if (intermediateIndex2 !== startIndex && intermediateIndex2 !== lastIndex) {\n decimated.push({\n ...data[intermediateIndex2],\n x: avgX\n });\n }\n }\n if (i > 0 && lastIndex !== startIndex) {\n decimated.push(data[lastIndex]);\n }\n decimated.push(point);\n prevX = truncX;\n countX = 0;\n minY = maxY = y;\n minIndex = maxIndex = startIndex = i;\n }\n }\n return decimated;\n}\nfunction cleanDecimatedDataset(dataset) {\n if (dataset._decimated) {\n const data = dataset._data;\n delete dataset._decimated;\n delete dataset._data;\n Object.defineProperty(dataset, 'data', {value: data});\n }\n}\nfunction cleanDecimatedData(chart) {\n chart.data.datasets.forEach((dataset) => {\n cleanDecimatedDataset(dataset);\n });\n}\nfunction getStartAndCountOfVisiblePointsSimplified(meta, points) {\n const pointCount = points.length;\n let start = 0;\n let count;\n const {iScale} = meta;\n const {min, max, minDefined, maxDefined} = iScale.getUserBounds();\n if (minDefined) {\n start = _limitValue(_lookupByKey(points, iScale.axis, min).lo, 0, pointCount - 1);\n }\n if (maxDefined) {\n count = _limitValue(_lookupByKey(points, iScale.axis, max).hi + 1, start, pointCount) - start;\n } else {\n count = pointCount - start;\n }\n return {start, count};\n}\nvar plugin_decimation = {\n id: 'decimation',\n defaults: {\n algorithm: 'min-max',\n enabled: false,\n },\n beforeElementsUpdate: (chart, args, options) => {\n if (!options.enabled) {\n cleanDecimatedData(chart);\n return;\n }\n const availableWidth = chart.width;\n chart.data.datasets.forEach((dataset, datasetIndex) => {\n const {_data, indexAxis} = dataset;\n const meta = chart.getDatasetMeta(datasetIndex);\n const data = _data || dataset.data;\n if (resolve([indexAxis, chart.options.indexAxis]) === 'y') {\n return;\n }\n if (!meta.controller.supportsDecimation) {\n return;\n }\n const xAxis = chart.scales[meta.xAxisID];\n if (xAxis.type !== 'linear' && xAxis.type !== 'time') {\n return;\n }\n if (chart.options.parsing) {\n return;\n }\n let {start, count} = getStartAndCountOfVisiblePointsSimplified(meta, data);\n const threshold = options.threshold || 4 * availableWidth;\n if (count <= threshold) {\n cleanDecimatedDataset(dataset);\n return;\n }\n if (isNullOrUndef(_data)) {\n dataset._data = data;\n delete dataset.data;\n Object.defineProperty(dataset, 'data', {\n configurable: true,\n enumerable: true,\n get: function() {\n return this._decimated;\n },\n set: function(d) {\n this._data = d;\n }\n });\n }\n let decimated;\n switch (options.algorithm) {\n case 'lttb':\n decimated = lttbDecimation(data, start, count, availableWidth, options);\n break;\n case 'min-max':\n decimated = minMaxDecimation(data, start, count, availableWidth);\n break;\n default:\n throw new Error(`Unsupported decimation algorithm '${options.algorithm}'`);\n }\n dataset._decimated = decimated;\n });\n },\n destroy(chart) {\n cleanDecimatedData(chart);\n }\n};\n\nfunction _segments(line, target, property) {\n const segments = line.segments;\n const points = line.points;\n const tpoints = target.points;\n const parts = [];\n for (const segment of segments) {\n let {start, end} = segment;\n end = _findSegmentEnd(start, end, points);\n const bounds = _getBounds(property, points[start], points[end], segment.loop);\n if (!target.segments) {\n parts.push({\n source: segment,\n target: bounds,\n start: points[start],\n end: points[end]\n });\n continue;\n }\n const targetSegments = _boundSegments(target, bounds);\n for (const tgt of targetSegments) {\n const subBounds = _getBounds(property, tpoints[tgt.start], tpoints[tgt.end], tgt.loop);\n const fillSources = _boundSegment(segment, points, subBounds);\n for (const fillSource of fillSources) {\n parts.push({\n source: fillSource,\n target: tgt,\n start: {\n [property]: _getEdge(bounds, subBounds, 'start', Math.max)\n },\n end: {\n [property]: _getEdge(bounds, subBounds, 'end', Math.min)\n }\n });\n }\n }\n }\n return parts;\n}\nfunction _getBounds(property, first, last, loop) {\n if (loop) {\n return;\n }\n let start = first[property];\n let end = last[property];\n if (property === 'angle') {\n start = _normalizeAngle(start);\n end = _normalizeAngle(end);\n }\n return {property, start, end};\n}\nfunction _pointsFromSegments(boundary, line) {\n const {x = null, y = null} = boundary || {};\n const linePoints = line.points;\n const points = [];\n line.segments.forEach(({start, end}) => {\n end = _findSegmentEnd(start, end, linePoints);\n const first = linePoints[start];\n const last = linePoints[end];\n if (y !== null) {\n points.push({x: first.x, y});\n points.push({x: last.x, y});\n } else if (x !== null) {\n points.push({x, y: first.y});\n points.push({x, y: last.y});\n }\n });\n return points;\n}\nfunction _findSegmentEnd(start, end, points) {\n for (;end > start; end--) {\n const point = points[end];\n if (!isNaN(point.x) && !isNaN(point.y)) {\n break;\n }\n }\n return end;\n}\nfunction _getEdge(a, b, prop, fn) {\n if (a && b) {\n return fn(a[prop], b[prop]);\n }\n return a ? a[prop] : b ? b[prop] : 0;\n}\n\nfunction _createBoundaryLine(boundary, line) {\n let points = [];\n let _loop = false;\n if (isArray(boundary)) {\n _loop = true;\n points = boundary;\n } else {\n points = _pointsFromSegments(boundary, line);\n }\n return points.length ? new LineElement({\n points,\n options: {tension: 0},\n _loop,\n _fullLoop: _loop\n }) : null;\n}\nfunction _shouldApplyFill(source) {\n return source && source.fill !== false;\n}\n\nfunction _resolveTarget(sources, index, propagate) {\n const source = sources[index];\n let fill = source.fill;\n const visited = [index];\n let target;\n if (!propagate) {\n return fill;\n }\n while (fill !== false && visited.indexOf(fill) === -1) {\n if (!isNumberFinite(fill)) {\n return fill;\n }\n target = sources[fill];\n if (!target) {\n return false;\n }\n if (target.visible) {\n return fill;\n }\n visited.push(fill);\n fill = target.fill;\n }\n return false;\n}\nfunction _decodeFill(line, index, count) {\n const fill = parseFillOption(line);\n if (isObject(fill)) {\n return isNaN(fill.value) ? false : fill;\n }\n let target = parseFloat(fill);\n if (isNumberFinite(target) && Math.floor(target) === target) {\n return decodeTargetIndex(fill[0], index, target, count);\n }\n return ['origin', 'start', 'end', 'stack', 'shape'].indexOf(fill) >= 0 && fill;\n}\nfunction decodeTargetIndex(firstCh, index, target, count) {\n if (firstCh === '-' || firstCh === '+') {\n target = index + target;\n }\n if (target === index || target < 0 || target >= count) {\n return false;\n }\n return target;\n}\nfunction _getTargetPixel(fill, scale) {\n let pixel = null;\n if (fill === 'start') {\n pixel = scale.bottom;\n } else if (fill === 'end') {\n pixel = scale.top;\n } else if (isObject(fill)) {\n pixel = scale.getPixelForValue(fill.value);\n } else if (scale.getBasePixel) {\n pixel = scale.getBasePixel();\n }\n return pixel;\n}\nfunction _getTargetValue(fill, scale, startValue) {\n let value;\n if (fill === 'start') {\n value = startValue;\n } else if (fill === 'end') {\n value = scale.options.reverse ? scale.min : scale.max;\n } else if (isObject(fill)) {\n value = fill.value;\n } else {\n value = scale.getBaseValue();\n }\n return value;\n}\nfunction parseFillOption(line) {\n const options = line.options;\n const fillOption = options.fill;\n let fill = valueOrDefault(fillOption && fillOption.target, fillOption);\n if (fill === undefined) {\n fill = !!options.backgroundColor;\n }\n if (fill === false || fill === null) {\n return false;\n }\n if (fill === true) {\n return 'origin';\n }\n return fill;\n}\n\nfunction _buildStackLine(source) {\n const {scale, index, line} = source;\n const points = [];\n const segments = line.segments;\n const sourcePoints = line.points;\n const linesBelow = getLinesBelow(scale, index);\n linesBelow.push(_createBoundaryLine({x: null, y: scale.bottom}, line));\n for (let i = 0; i < segments.length; i++) {\n const segment = segments[i];\n for (let j = segment.start; j <= segment.end; j++) {\n addPointsBelow(points, sourcePoints[j], linesBelow);\n }\n }\n return new LineElement({points, options: {}});\n}\nfunction getLinesBelow(scale, index) {\n const below = [];\n const metas = scale.getMatchingVisibleMetas('line');\n for (let i = 0; i < metas.length; i++) {\n const meta = metas[i];\n if (meta.index === index) {\n break;\n }\n if (!meta.hidden) {\n below.unshift(meta.dataset);\n }\n }\n return below;\n}\nfunction addPointsBelow(points, sourcePoint, linesBelow) {\n const postponed = [];\n for (let j = 0; j < linesBelow.length; j++) {\n const line = linesBelow[j];\n const {first, last, point} = findPoint(line, sourcePoint, 'x');\n if (!point || (first && last)) {\n continue;\n }\n if (first) {\n postponed.unshift(point);\n } else {\n points.push(point);\n if (!last) {\n break;\n }\n }\n }\n points.push(...postponed);\n}\nfunction findPoint(line, sourcePoint, property) {\n const point = line.interpolate(sourcePoint, property);\n if (!point) {\n return {};\n }\n const pointValue = point[property];\n const segments = line.segments;\n const linePoints = line.points;\n let first = false;\n let last = false;\n for (let i = 0; i < segments.length; i++) {\n const segment = segments[i];\n const firstValue = linePoints[segment.start][property];\n const lastValue = linePoints[segment.end][property];\n if (_isBetween(pointValue, firstValue, lastValue)) {\n first = pointValue === firstValue;\n last = pointValue === lastValue;\n break;\n }\n }\n return {first, last, point};\n}\n\nclass simpleArc {\n constructor(opts) {\n this.x = opts.x;\n this.y = opts.y;\n this.radius = opts.radius;\n }\n pathSegment(ctx, bounds, opts) {\n const {x, y, radius} = this;\n bounds = bounds || {start: 0, end: TAU};\n ctx.arc(x, y, radius, bounds.end, bounds.start, true);\n return !opts.bounds;\n }\n interpolate(point) {\n const {x, y, radius} = this;\n const angle = point.angle;\n return {\n x: x + Math.cos(angle) * radius,\n y: y + Math.sin(angle) * radius,\n angle\n };\n }\n}\n\nfunction _getTarget(source) {\n const {chart, fill, line} = source;\n if (isNumberFinite(fill)) {\n return getLineByIndex(chart, fill);\n }\n if (fill === 'stack') {\n return _buildStackLine(source);\n }\n if (fill === 'shape') {\n return true;\n }\n const boundary = computeBoundary(source);\n if (boundary instanceof simpleArc) {\n return boundary;\n }\n return _createBoundaryLine(boundary, line);\n}\nfunction getLineByIndex(chart, index) {\n const meta = chart.getDatasetMeta(index);\n const visible = meta && chart.isDatasetVisible(index);\n return visible ? meta.dataset : null;\n}\nfunction computeBoundary(source) {\n const scale = source.scale || {};\n if (scale.getPointPositionForValue) {\n return computeCircularBoundary(source);\n }\n return computeLinearBoundary(source);\n}\nfunction computeLinearBoundary(source) {\n const {scale = {}, fill} = source;\n const pixel = _getTargetPixel(fill, scale);\n if (isNumberFinite(pixel)) {\n const horizontal = scale.isHorizontal();\n return {\n x: horizontal ? pixel : null,\n y: horizontal ? null : pixel\n };\n }\n return null;\n}\nfunction computeCircularBoundary(source) {\n const {scale, fill} = source;\n const options = scale.options;\n const length = scale.getLabels().length;\n const start = options.reverse ? scale.max : scale.min;\n const value = _getTargetValue(fill, scale, start);\n const target = [];\n if (options.grid.circular) {\n const center = scale.getPointPositionForValue(0, start);\n return new simpleArc({\n x: center.x,\n y: center.y,\n radius: scale.getDistanceFromCenterForValue(value)\n });\n }\n for (let i = 0; i < length; ++i) {\n target.push(scale.getPointPositionForValue(i, value));\n }\n return target;\n}\n\nfunction _drawfill(ctx, source, area) {\n const target = _getTarget(source);\n const {line, scale, axis} = source;\n const lineOpts = line.options;\n const fillOption = lineOpts.fill;\n const color = lineOpts.backgroundColor;\n const {above = color, below = color} = fillOption || {};\n if (target && line.points.length) {\n clipArea(ctx, area);\n doFill(ctx, {line, target, above, below, area, scale, axis});\n unclipArea(ctx);\n }\n}\nfunction doFill(ctx, cfg) {\n const {line, target, above, below, area, scale} = cfg;\n const property = line._loop ? 'angle' : cfg.axis;\n ctx.save();\n if (property === 'x' && below !== above) {\n clipVertical(ctx, target, area.top);\n fill(ctx, {line, target, color: above, scale, property});\n ctx.restore();\n ctx.save();\n clipVertical(ctx, target, area.bottom);\n }\n fill(ctx, {line, target, color: below, scale, property});\n ctx.restore();\n}\nfunction clipVertical(ctx, target, clipY) {\n const {segments, points} = target;\n let first = true;\n let lineLoop = false;\n ctx.beginPath();\n for (const segment of segments) {\n const {start, end} = segment;\n const firstPoint = points[start];\n const lastPoint = points[_findSegmentEnd(start, end, points)];\n if (first) {\n ctx.moveTo(firstPoint.x, firstPoint.y);\n first = false;\n } else {\n ctx.lineTo(firstPoint.x, clipY);\n ctx.lineTo(firstPoint.x, firstPoint.y);\n }\n lineLoop = !!target.pathSegment(ctx, segment, {move: lineLoop});\n if (lineLoop) {\n ctx.closePath();\n } else {\n ctx.lineTo(lastPoint.x, clipY);\n }\n }\n ctx.lineTo(target.first().x, clipY);\n ctx.closePath();\n ctx.clip();\n}\nfunction fill(ctx, cfg) {\n const {line, target, property, color, scale} = cfg;\n const segments = _segments(line, target, property);\n for (const {source: src, target: tgt, start, end} of segments) {\n const {style: {backgroundColor = color} = {}} = src;\n const notShape = target !== true;\n ctx.save();\n ctx.fillStyle = backgroundColor;\n clipBounds(ctx, scale, notShape && _getBounds(property, start, end));\n ctx.beginPath();\n const lineLoop = !!line.pathSegment(ctx, src);\n let loop;\n if (notShape) {\n if (lineLoop) {\n ctx.closePath();\n } else {\n interpolatedLineTo(ctx, target, end, property);\n }\n const targetLoop = !!target.pathSegment(ctx, tgt, {move: lineLoop, reverse: true});\n loop = lineLoop && targetLoop;\n if (!loop) {\n interpolatedLineTo(ctx, target, start, property);\n }\n }\n ctx.closePath();\n ctx.fill(loop ? 'evenodd' : 'nonzero');\n ctx.restore();\n }\n}\nfunction clipBounds(ctx, scale, bounds) {\n const {top, bottom} = scale.chart.chartArea;\n const {property, start, end} = bounds || {};\n if (property === 'x') {\n ctx.beginPath();\n ctx.rect(start, top, end - start, bottom - top);\n ctx.clip();\n }\n}\nfunction interpolatedLineTo(ctx, target, point, property) {\n const interpolatedPoint = target.interpolate(point, property);\n if (interpolatedPoint) {\n ctx.lineTo(interpolatedPoint.x, interpolatedPoint.y);\n }\n}\n\nvar index = {\n id: 'filler',\n afterDatasetsUpdate(chart, _args, options) {\n const count = (chart.data.datasets || []).length;\n const sources = [];\n let meta, i, line, source;\n for (i = 0; i < count; ++i) {\n meta = chart.getDatasetMeta(i);\n line = meta.dataset;\n source = null;\n if (line && line.options && line instanceof LineElement) {\n source = {\n visible: chart.isDatasetVisible(i),\n index: i,\n fill: _decodeFill(line, i, count),\n chart,\n axis: meta.controller.options.indexAxis,\n scale: meta.vScale,\n line,\n };\n }\n meta.$filler = source;\n sources.push(source);\n }\n for (i = 0; i < count; ++i) {\n source = sources[i];\n if (!source || source.fill === false) {\n continue;\n }\n source.fill = _resolveTarget(sources, i, options.propagate);\n }\n },\n beforeDraw(chart, _args, options) {\n const draw = options.drawTime === 'beforeDraw';\n const metasets = chart.getSortedVisibleDatasetMetas();\n const area = chart.chartArea;\n for (let i = metasets.length - 1; i >= 0; --i) {\n const source = metasets[i].$filler;\n if (!source) {\n continue;\n }\n source.line.updateControlPoints(area, source.axis);\n if (draw && source.fill) {\n _drawfill(chart.ctx, source, area);\n }\n }\n },\n beforeDatasetsDraw(chart, _args, options) {\n if (options.drawTime !== 'beforeDatasetsDraw') {\n return;\n }\n const metasets = chart.getSortedVisibleDatasetMetas();\n for (let i = metasets.length - 1; i >= 0; --i) {\n const source = metasets[i].$filler;\n if (_shouldApplyFill(source)) {\n _drawfill(chart.ctx, source, chart.chartArea);\n }\n }\n },\n beforeDatasetDraw(chart, args, options) {\n const source = args.meta.$filler;\n if (!_shouldApplyFill(source) || options.drawTime !== 'beforeDatasetDraw') {\n return;\n }\n _drawfill(chart.ctx, source, chart.chartArea);\n },\n defaults: {\n propagate: true,\n drawTime: 'beforeDatasetDraw'\n }\n};\n\nconst getBoxSize = (labelOpts, fontSize) => {\n let {boxHeight = fontSize, boxWidth = fontSize} = labelOpts;\n if (labelOpts.usePointStyle) {\n boxHeight = Math.min(boxHeight, fontSize);\n boxWidth = labelOpts.pointStyleWidth || Math.min(boxWidth, fontSize);\n }\n return {\n boxWidth,\n boxHeight,\n itemHeight: Math.max(fontSize, boxHeight)\n };\n};\nconst itemsEqual = (a, b) => a !== null && b !== null && a.datasetIndex === b.datasetIndex && a.index === b.index;\nclass Legend extends Element {\n constructor(config) {\n super();\n this._added = false;\n this.legendHitBoxes = [];\n this._hoveredItem = null;\n this.doughnutMode = false;\n this.chart = config.chart;\n this.options = config.options;\n this.ctx = config.ctx;\n this.legendItems = undefined;\n this.columnSizes = undefined;\n this.lineWidths = undefined;\n this.maxHeight = undefined;\n this.maxWidth = undefined;\n this.top = undefined;\n this.bottom = undefined;\n this.left = undefined;\n this.right = undefined;\n this.height = undefined;\n this.width = undefined;\n this._margins = undefined;\n this.position = undefined;\n this.weight = undefined;\n this.fullSize = undefined;\n }\n update(maxWidth, maxHeight, margins) {\n this.maxWidth = maxWidth;\n this.maxHeight = maxHeight;\n this._margins = margins;\n this.setDimensions();\n this.buildLabels();\n this.fit();\n }\n setDimensions() {\n if (this.isHorizontal()) {\n this.width = this.maxWidth;\n this.left = this._margins.left;\n this.right = this.width;\n } else {\n this.height = this.maxHeight;\n this.top = this._margins.top;\n this.bottom = this.height;\n }\n }\n buildLabels() {\n const labelOpts = this.options.labels || {};\n let legendItems = callback(labelOpts.generateLabels, [this.chart], this) || [];\n if (labelOpts.filter) {\n legendItems = legendItems.filter((item) => labelOpts.filter(item, this.chart.data));\n }\n if (labelOpts.sort) {\n legendItems = legendItems.sort((a, b) => labelOpts.sort(a, b, this.chart.data));\n }\n if (this.options.reverse) {\n legendItems.reverse();\n }\n this.legendItems = legendItems;\n }\n fit() {\n const {options, ctx} = this;\n if (!options.display) {\n this.width = this.height = 0;\n return;\n }\n const labelOpts = options.labels;\n const labelFont = toFont(labelOpts.font);\n const fontSize = labelFont.size;\n const titleHeight = this._computeTitleHeight();\n const {boxWidth, itemHeight} = getBoxSize(labelOpts, fontSize);\n let width, height;\n ctx.font = labelFont.string;\n if (this.isHorizontal()) {\n width = this.maxWidth;\n height = this._fitRows(titleHeight, fontSize, boxWidth, itemHeight) + 10;\n } else {\n height = this.maxHeight;\n width = this._fitCols(titleHeight, fontSize, boxWidth, itemHeight) + 10;\n }\n this.width = Math.min(width, options.maxWidth || this.maxWidth);\n this.height = Math.min(height, options.maxHeight || this.maxHeight);\n }\n _fitRows(titleHeight, fontSize, boxWidth, itemHeight) {\n const {ctx, maxWidth, options: {labels: {padding}}} = this;\n const hitboxes = this.legendHitBoxes = [];\n const lineWidths = this.lineWidths = [0];\n const lineHeight = itemHeight + padding;\n let totalHeight = titleHeight;\n ctx.textAlign = 'left';\n ctx.textBaseline = 'middle';\n let row = -1;\n let top = -lineHeight;\n this.legendItems.forEach((legendItem, i) => {\n const itemWidth = boxWidth + (fontSize / 2) + ctx.measureText(legendItem.text).width;\n if (i === 0 || lineWidths[lineWidths.length - 1] + itemWidth + 2 * padding > maxWidth) {\n totalHeight += lineHeight;\n lineWidths[lineWidths.length - (i > 0 ? 0 : 1)] = 0;\n top += lineHeight;\n row++;\n }\n hitboxes[i] = {left: 0, top, row, width: itemWidth, height: itemHeight};\n lineWidths[lineWidths.length - 1] += itemWidth + padding;\n });\n return totalHeight;\n }\n _fitCols(titleHeight, fontSize, boxWidth, itemHeight) {\n const {ctx, maxHeight, options: {labels: {padding}}} = this;\n const hitboxes = this.legendHitBoxes = [];\n const columnSizes = this.columnSizes = [];\n const heightLimit = maxHeight - titleHeight;\n let totalWidth = padding;\n let currentColWidth = 0;\n let currentColHeight = 0;\n let left = 0;\n let col = 0;\n this.legendItems.forEach((legendItem, i) => {\n const itemWidth = boxWidth + (fontSize / 2) + ctx.measureText(legendItem.text).width;\n if (i > 0 && currentColHeight + itemHeight + 2 * padding > heightLimit) {\n totalWidth += currentColWidth + padding;\n columnSizes.push({width: currentColWidth, height: currentColHeight});\n left += currentColWidth + padding;\n col++;\n currentColWidth = currentColHeight = 0;\n }\n hitboxes[i] = {left, top: currentColHeight, col, width: itemWidth, height: itemHeight};\n currentColWidth = Math.max(currentColWidth, itemWidth);\n currentColHeight += itemHeight + padding;\n });\n totalWidth += currentColWidth;\n columnSizes.push({width: currentColWidth, height: currentColHeight});\n return totalWidth;\n }\n adjustHitBoxes() {\n if (!this.options.display) {\n return;\n }\n const titleHeight = this._computeTitleHeight();\n const {legendHitBoxes: hitboxes, options: {align, labels: {padding}, rtl}} = this;\n const rtlHelper = getRtlAdapter(rtl, this.left, this.width);\n if (this.isHorizontal()) {\n let row = 0;\n let left = _alignStartEnd(align, this.left + padding, this.right - this.lineWidths[row]);\n for (const hitbox of hitboxes) {\n if (row !== hitbox.row) {\n row = hitbox.row;\n left = _alignStartEnd(align, this.left + padding, this.right - this.lineWidths[row]);\n }\n hitbox.top += this.top + titleHeight + padding;\n hitbox.left = rtlHelper.leftForLtr(rtlHelper.x(left), hitbox.width);\n left += hitbox.width + padding;\n }\n } else {\n let col = 0;\n let top = _alignStartEnd(align, this.top + titleHeight + padding, this.bottom - this.columnSizes[col].height);\n for (const hitbox of hitboxes) {\n if (hitbox.col !== col) {\n col = hitbox.col;\n top = _alignStartEnd(align, this.top + titleHeight + padding, this.bottom - this.columnSizes[col].height);\n }\n hitbox.top = top;\n hitbox.left += this.left + padding;\n hitbox.left = rtlHelper.leftForLtr(rtlHelper.x(hitbox.left), hitbox.width);\n top += hitbox.height + padding;\n }\n }\n }\n isHorizontal() {\n return this.options.position === 'top' || this.options.position === 'bottom';\n }\n draw() {\n if (this.options.display) {\n const ctx = this.ctx;\n clipArea(ctx, this);\n this._draw();\n unclipArea(ctx);\n }\n }\n _draw() {\n const {options: opts, columnSizes, lineWidths, ctx} = this;\n const {align, labels: labelOpts} = opts;\n const defaultColor = defaults.color;\n const rtlHelper = getRtlAdapter(opts.rtl, this.left, this.width);\n const labelFont = toFont(labelOpts.font);\n const {color: fontColor, padding} = labelOpts;\n const fontSize = labelFont.size;\n const halfFontSize = fontSize / 2;\n let cursor;\n this.drawTitle();\n ctx.textAlign = rtlHelper.textAlign('left');\n ctx.textBaseline = 'middle';\n ctx.lineWidth = 0.5;\n ctx.font = labelFont.string;\n const {boxWidth, boxHeight, itemHeight} = getBoxSize(labelOpts, fontSize);\n const drawLegendBox = function(x, y, legendItem) {\n if (isNaN(boxWidth) || boxWidth <= 0 || isNaN(boxHeight) || boxHeight < 0) {\n return;\n }\n ctx.save();\n const lineWidth = valueOrDefault(legendItem.lineWidth, 1);\n ctx.fillStyle = valueOrDefault(legendItem.fillStyle, defaultColor);\n ctx.lineCap = valueOrDefault(legendItem.lineCap, 'butt');\n ctx.lineDashOffset = valueOrDefault(legendItem.lineDashOffset, 0);\n ctx.lineJoin = valueOrDefault(legendItem.lineJoin, 'miter');\n ctx.lineWidth = lineWidth;\n ctx.strokeStyle = valueOrDefault(legendItem.strokeStyle, defaultColor);\n ctx.setLineDash(valueOrDefault(legendItem.lineDash, []));\n if (labelOpts.usePointStyle) {\n const drawOptions = {\n radius: boxHeight * Math.SQRT2 / 2,\n pointStyle: legendItem.pointStyle,\n rotation: legendItem.rotation,\n borderWidth: lineWidth\n };\n const centerX = rtlHelper.xPlus(x, boxWidth / 2);\n const centerY = y + halfFontSize;\n drawPointLegend(ctx, drawOptions, centerX, centerY, labelOpts.pointStyleWidth && boxWidth);\n } else {\n const yBoxTop = y + Math.max((fontSize - boxHeight) / 2, 0);\n const xBoxLeft = rtlHelper.leftForLtr(x, boxWidth);\n const borderRadius = toTRBLCorners(legendItem.borderRadius);\n ctx.beginPath();\n if (Object.values(borderRadius).some(v => v !== 0)) {\n addRoundedRectPath(ctx, {\n x: xBoxLeft,\n y: yBoxTop,\n w: boxWidth,\n h: boxHeight,\n radius: borderRadius,\n });\n } else {\n ctx.rect(xBoxLeft, yBoxTop, boxWidth, boxHeight);\n }\n ctx.fill();\n if (lineWidth !== 0) {\n ctx.stroke();\n }\n }\n ctx.restore();\n };\n const fillText = function(x, y, legendItem) {\n renderText(ctx, legendItem.text, x, y + (itemHeight / 2), labelFont, {\n strikethrough: legendItem.hidden,\n textAlign: rtlHelper.textAlign(legendItem.textAlign)\n });\n };\n const isHorizontal = this.isHorizontal();\n const titleHeight = this._computeTitleHeight();\n if (isHorizontal) {\n cursor = {\n x: _alignStartEnd(align, this.left + padding, this.right - lineWidths[0]),\n y: this.top + padding + titleHeight,\n line: 0\n };\n } else {\n cursor = {\n x: this.left + padding,\n y: _alignStartEnd(align, this.top + titleHeight + padding, this.bottom - columnSizes[0].height),\n line: 0\n };\n }\n overrideTextDirection(this.ctx, opts.textDirection);\n const lineHeight = itemHeight + padding;\n this.legendItems.forEach((legendItem, i) => {\n ctx.strokeStyle = legendItem.fontColor || fontColor;\n ctx.fillStyle = legendItem.fontColor || fontColor;\n const textWidth = ctx.measureText(legendItem.text).width;\n const textAlign = rtlHelper.textAlign(legendItem.textAlign || (legendItem.textAlign = labelOpts.textAlign));\n const width = boxWidth + halfFontSize + textWidth;\n let x = cursor.x;\n let y = cursor.y;\n rtlHelper.setWidth(this.width);\n if (isHorizontal) {\n if (i > 0 && x + width + padding > this.right) {\n y = cursor.y += lineHeight;\n cursor.line++;\n x = cursor.x = _alignStartEnd(align, this.left + padding, this.right - lineWidths[cursor.line]);\n }\n } else if (i > 0 && y + lineHeight > this.bottom) {\n x = cursor.x = x + columnSizes[cursor.line].width + padding;\n cursor.line++;\n y = cursor.y = _alignStartEnd(align, this.top + titleHeight + padding, this.bottom - columnSizes[cursor.line].height);\n }\n const realX = rtlHelper.x(x);\n drawLegendBox(realX, y, legendItem);\n x = _textX(textAlign, x + boxWidth + halfFontSize, isHorizontal ? x + width : this.right, opts.rtl);\n fillText(rtlHelper.x(x), y, legendItem);\n if (isHorizontal) {\n cursor.x += width + padding;\n } else {\n cursor.y += lineHeight;\n }\n });\n restoreTextDirection(this.ctx, opts.textDirection);\n }\n drawTitle() {\n const opts = this.options;\n const titleOpts = opts.title;\n const titleFont = toFont(titleOpts.font);\n const titlePadding = toPadding(titleOpts.padding);\n if (!titleOpts.display) {\n return;\n }\n const rtlHelper = getRtlAdapter(opts.rtl, this.left, this.width);\n const ctx = this.ctx;\n const position = titleOpts.position;\n const halfFontSize = titleFont.size / 2;\n const topPaddingPlusHalfFontSize = titlePadding.top + halfFontSize;\n let y;\n let left = this.left;\n let maxWidth = this.width;\n if (this.isHorizontal()) {\n maxWidth = Math.max(...this.lineWidths);\n y = this.top + topPaddingPlusHalfFontSize;\n left = _alignStartEnd(opts.align, left, this.right - maxWidth);\n } else {\n const maxHeight = this.columnSizes.reduce((acc, size) => Math.max(acc, size.height), 0);\n y = topPaddingPlusHalfFontSize + _alignStartEnd(opts.align, this.top, this.bottom - maxHeight - opts.labels.padding - this._computeTitleHeight());\n }\n const x = _alignStartEnd(position, left, left + maxWidth);\n ctx.textAlign = rtlHelper.textAlign(_toLeftRightCenter(position));\n ctx.textBaseline = 'middle';\n ctx.strokeStyle = titleOpts.color;\n ctx.fillStyle = titleOpts.color;\n ctx.font = titleFont.string;\n renderText(ctx, titleOpts.text, x, y, titleFont);\n }\n _computeTitleHeight() {\n const titleOpts = this.options.title;\n const titleFont = toFont(titleOpts.font);\n const titlePadding = toPadding(titleOpts.padding);\n return titleOpts.display ? titleFont.lineHeight + titlePadding.height : 0;\n }\n _getLegendItemAt(x, y) {\n let i, hitBox, lh;\n if (_isBetween(x, this.left, this.right)\n && _isBetween(y, this.top, this.bottom)) {\n lh = this.legendHitBoxes;\n for (i = 0; i < lh.length; ++i) {\n hitBox = lh[i];\n if (_isBetween(x, hitBox.left, hitBox.left + hitBox.width)\n && _isBetween(y, hitBox.top, hitBox.top + hitBox.height)) {\n return this.legendItems[i];\n }\n }\n }\n return null;\n }\n handleEvent(e) {\n const opts = this.options;\n if (!isListened(e.type, opts)) {\n return;\n }\n const hoveredItem = this._getLegendItemAt(e.x, e.y);\n if (e.type === 'mousemove' || e.type === 'mouseout') {\n const previous = this._hoveredItem;\n const sameItem = itemsEqual(previous, hoveredItem);\n if (previous && !sameItem) {\n callback(opts.onLeave, [e, previous, this], this);\n }\n this._hoveredItem = hoveredItem;\n if (hoveredItem && !sameItem) {\n callback(opts.onHover, [e, hoveredItem, this], this);\n }\n } else if (hoveredItem) {\n callback(opts.onClick, [e, hoveredItem, this], this);\n }\n }\n}\nfunction isListened(type, opts) {\n if ((type === 'mousemove' || type === 'mouseout') && (opts.onHover || opts.onLeave)) {\n return true;\n }\n if (opts.onClick && (type === 'click' || type === 'mouseup')) {\n return true;\n }\n return false;\n}\nvar plugin_legend = {\n id: 'legend',\n _element: Legend,\n start(chart, _args, options) {\n const legend = chart.legend = new Legend({ctx: chart.ctx, options, chart});\n layouts.configure(chart, legend, options);\n layouts.addBox(chart, legend);\n },\n stop(chart) {\n layouts.removeBox(chart, chart.legend);\n delete chart.legend;\n },\n beforeUpdate(chart, _args, options) {\n const legend = chart.legend;\n layouts.configure(chart, legend, options);\n legend.options = options;\n },\n afterUpdate(chart) {\n const legend = chart.legend;\n legend.buildLabels();\n legend.adjustHitBoxes();\n },\n afterEvent(chart, args) {\n if (!args.replay) {\n chart.legend.handleEvent(args.event);\n }\n },\n defaults: {\n display: true,\n position: 'top',\n align: 'center',\n fullSize: true,\n reverse: false,\n weight: 1000,\n onClick(e, legendItem, legend) {\n const index = legendItem.datasetIndex;\n const ci = legend.chart;\n if (ci.isDatasetVisible(index)) {\n ci.hide(index);\n legendItem.hidden = true;\n } else {\n ci.show(index);\n legendItem.hidden = false;\n }\n },\n onHover: null,\n onLeave: null,\n labels: {\n color: (ctx) => ctx.chart.options.color,\n boxWidth: 40,\n padding: 10,\n generateLabels(chart) {\n const datasets = chart.data.datasets;\n const {labels: {usePointStyle, pointStyle, textAlign, color}} = chart.legend.options;\n return chart._getSortedDatasetMetas().map((meta) => {\n const style = meta.controller.getStyle(usePointStyle ? 0 : undefined);\n const borderWidth = toPadding(style.borderWidth);\n return {\n text: datasets[meta.index].label,\n fillStyle: style.backgroundColor,\n fontColor: color,\n hidden: !meta.visible,\n lineCap: style.borderCapStyle,\n lineDash: style.borderDash,\n lineDashOffset: style.borderDashOffset,\n lineJoin: style.borderJoinStyle,\n lineWidth: (borderWidth.width + borderWidth.height) / 4,\n strokeStyle: style.borderColor,\n pointStyle: pointStyle || style.pointStyle,\n rotation: style.rotation,\n textAlign: textAlign || style.textAlign,\n borderRadius: 0,\n datasetIndex: meta.index\n };\n }, this);\n }\n },\n title: {\n color: (ctx) => ctx.chart.options.color,\n display: false,\n position: 'center',\n text: '',\n }\n },\n descriptors: {\n _scriptable: (name) => !name.startsWith('on'),\n labels: {\n _scriptable: (name) => !['generateLabels', 'filter', 'sort'].includes(name),\n }\n },\n};\n\nclass Title extends Element {\n constructor(config) {\n super();\n this.chart = config.chart;\n this.options = config.options;\n this.ctx = config.ctx;\n this._padding = undefined;\n this.top = undefined;\n this.bottom = undefined;\n this.left = undefined;\n this.right = undefined;\n this.width = undefined;\n this.height = undefined;\n this.position = undefined;\n this.weight = undefined;\n this.fullSize = undefined;\n }\n update(maxWidth, maxHeight) {\n const opts = this.options;\n this.left = 0;\n this.top = 0;\n if (!opts.display) {\n this.width = this.height = this.right = this.bottom = 0;\n return;\n }\n this.width = this.right = maxWidth;\n this.height = this.bottom = maxHeight;\n const lineCount = isArray(opts.text) ? opts.text.length : 1;\n this._padding = toPadding(opts.padding);\n const textSize = lineCount * toFont(opts.font).lineHeight + this._padding.height;\n if (this.isHorizontal()) {\n this.height = textSize;\n } else {\n this.width = textSize;\n }\n }\n isHorizontal() {\n const pos = this.options.position;\n return pos === 'top' || pos === 'bottom';\n }\n _drawArgs(offset) {\n const {top, left, bottom, right, options} = this;\n const align = options.align;\n let rotation = 0;\n let maxWidth, titleX, titleY;\n if (this.isHorizontal()) {\n titleX = _alignStartEnd(align, left, right);\n titleY = top + offset;\n maxWidth = right - left;\n } else {\n if (options.position === 'left') {\n titleX = left + offset;\n titleY = _alignStartEnd(align, bottom, top);\n rotation = PI * -0.5;\n } else {\n titleX = right - offset;\n titleY = _alignStartEnd(align, top, bottom);\n rotation = PI * 0.5;\n }\n maxWidth = bottom - top;\n }\n return {titleX, titleY, maxWidth, rotation};\n }\n draw() {\n const ctx = this.ctx;\n const opts = this.options;\n if (!opts.display) {\n return;\n }\n const fontOpts = toFont(opts.font);\n const lineHeight = fontOpts.lineHeight;\n const offset = lineHeight / 2 + this._padding.top;\n const {titleX, titleY, maxWidth, rotation} = this._drawArgs(offset);\n renderText(ctx, opts.text, 0, 0, fontOpts, {\n color: opts.color,\n maxWidth,\n rotation,\n textAlign: _toLeftRightCenter(opts.align),\n textBaseline: 'middle',\n translation: [titleX, titleY],\n });\n }\n}\nfunction createTitle(chart, titleOpts) {\n const title = new Title({\n ctx: chart.ctx,\n options: titleOpts,\n chart\n });\n layouts.configure(chart, title, titleOpts);\n layouts.addBox(chart, title);\n chart.titleBlock = title;\n}\nvar plugin_title = {\n id: 'title',\n _element: Title,\n start(chart, _args, options) {\n createTitle(chart, options);\n },\n stop(chart) {\n const titleBlock = chart.titleBlock;\n layouts.removeBox(chart, titleBlock);\n delete chart.titleBlock;\n },\n beforeUpdate(chart, _args, options) {\n const title = chart.titleBlock;\n layouts.configure(chart, title, options);\n title.options = options;\n },\n defaults: {\n align: 'center',\n display: false,\n font: {\n weight: 'bold',\n },\n fullSize: true,\n padding: 10,\n position: 'top',\n text: '',\n weight: 2000\n },\n defaultRoutes: {\n color: 'color'\n },\n descriptors: {\n _scriptable: true,\n _indexable: false,\n },\n};\n\nconst map = new WeakMap();\nvar plugin_subtitle = {\n id: 'subtitle',\n start(chart, _args, options) {\n const title = new Title({\n ctx: chart.ctx,\n options,\n chart\n });\n layouts.configure(chart, title, options);\n layouts.addBox(chart, title);\n map.set(chart, title);\n },\n stop(chart) {\n layouts.removeBox(chart, map.get(chart));\n map.delete(chart);\n },\n beforeUpdate(chart, _args, options) {\n const title = map.get(chart);\n layouts.configure(chart, title, options);\n title.options = options;\n },\n defaults: {\n align: 'center',\n display: false,\n font: {\n weight: 'normal',\n },\n fullSize: true,\n padding: 0,\n position: 'top',\n text: '',\n weight: 1500\n },\n defaultRoutes: {\n color: 'color'\n },\n descriptors: {\n _scriptable: true,\n _indexable: false,\n },\n};\n\nconst positioners = {\n average(items) {\n if (!items.length) {\n return false;\n }\n let i, len;\n let x = 0;\n let y = 0;\n let count = 0;\n for (i = 0, len = items.length; i < len; ++i) {\n const el = items[i].element;\n if (el && el.hasValue()) {\n const pos = el.tooltipPosition();\n x += pos.x;\n y += pos.y;\n ++count;\n }\n }\n return {\n x: x / count,\n y: y / count\n };\n },\n nearest(items, eventPosition) {\n if (!items.length) {\n return false;\n }\n let x = eventPosition.x;\n let y = eventPosition.y;\n let minDistance = Number.POSITIVE_INFINITY;\n let i, len, nearestElement;\n for (i = 0, len = items.length; i < len; ++i) {\n const el = items[i].element;\n if (el && el.hasValue()) {\n const center = el.getCenterPoint();\n const d = distanceBetweenPoints(eventPosition, center);\n if (d < minDistance) {\n minDistance = d;\n nearestElement = el;\n }\n }\n }\n if (nearestElement) {\n const tp = nearestElement.tooltipPosition();\n x = tp.x;\n y = tp.y;\n }\n return {\n x,\n y\n };\n }\n};\nfunction pushOrConcat(base, toPush) {\n if (toPush) {\n if (isArray(toPush)) {\n Array.prototype.push.apply(base, toPush);\n } else {\n base.push(toPush);\n }\n }\n return base;\n}\nfunction splitNewlines(str) {\n if ((typeof str === 'string' || str instanceof String) && str.indexOf('\\n') > -1) {\n return str.split('\\n');\n }\n return str;\n}\nfunction createTooltipItem(chart, item) {\n const {element, datasetIndex, index} = item;\n const controller = chart.getDatasetMeta(datasetIndex).controller;\n const {label, value} = controller.getLabelAndValue(index);\n return {\n chart,\n label,\n parsed: controller.getParsed(index),\n raw: chart.data.datasets[datasetIndex].data[index],\n formattedValue: value,\n dataset: controller.getDataset(),\n dataIndex: index,\n datasetIndex,\n element\n };\n}\nfunction getTooltipSize(tooltip, options) {\n const ctx = tooltip.chart.ctx;\n const {body, footer, title} = tooltip;\n const {boxWidth, boxHeight} = options;\n const bodyFont = toFont(options.bodyFont);\n const titleFont = toFont(options.titleFont);\n const footerFont = toFont(options.footerFont);\n const titleLineCount = title.length;\n const footerLineCount = footer.length;\n const bodyLineItemCount = body.length;\n const padding = toPadding(options.padding);\n let height = padding.height;\n let width = 0;\n let combinedBodyLength = body.reduce((count, bodyItem) => count + bodyItem.before.length + bodyItem.lines.length + bodyItem.after.length, 0);\n combinedBodyLength += tooltip.beforeBody.length + tooltip.afterBody.length;\n if (titleLineCount) {\n height += titleLineCount * titleFont.lineHeight\n\t\t\t+ (titleLineCount - 1) * options.titleSpacing\n\t\t\t+ options.titleMarginBottom;\n }\n if (combinedBodyLength) {\n const bodyLineHeight = options.displayColors ? Math.max(boxHeight, bodyFont.lineHeight) : bodyFont.lineHeight;\n height += bodyLineItemCount * bodyLineHeight\n\t\t\t+ (combinedBodyLength - bodyLineItemCount) * bodyFont.lineHeight\n\t\t\t+ (combinedBodyLength - 1) * options.bodySpacing;\n }\n if (footerLineCount) {\n height += options.footerMarginTop\n\t\t\t+ footerLineCount * footerFont.lineHeight\n\t\t\t+ (footerLineCount - 1) * options.footerSpacing;\n }\n let widthPadding = 0;\n const maxLineWidth = function(line) {\n width = Math.max(width, ctx.measureText(line).width + widthPadding);\n };\n ctx.save();\n ctx.font = titleFont.string;\n each(tooltip.title, maxLineWidth);\n ctx.font = bodyFont.string;\n each(tooltip.beforeBody.concat(tooltip.afterBody), maxLineWidth);\n widthPadding = options.displayColors ? (boxWidth + 2 + options.boxPadding) : 0;\n each(body, (bodyItem) => {\n each(bodyItem.before, maxLineWidth);\n each(bodyItem.lines, maxLineWidth);\n each(bodyItem.after, maxLineWidth);\n });\n widthPadding = 0;\n ctx.font = footerFont.string;\n each(tooltip.footer, maxLineWidth);\n ctx.restore();\n width += padding.width;\n return {width, height};\n}\nfunction determineYAlign(chart, size) {\n const {y, height} = size;\n if (y < height / 2) {\n return 'top';\n } else if (y > (chart.height - height / 2)) {\n return 'bottom';\n }\n return 'center';\n}\nfunction doesNotFitWithAlign(xAlign, chart, options, size) {\n const {x, width} = size;\n const caret = options.caretSize + options.caretPadding;\n if (xAlign === 'left' && x + width + caret > chart.width) {\n return true;\n }\n if (xAlign === 'right' && x - width - caret < 0) {\n return true;\n }\n}\nfunction determineXAlign(chart, options, size, yAlign) {\n const {x, width} = size;\n const {width: chartWidth, chartArea: {left, right}} = chart;\n let xAlign = 'center';\n if (yAlign === 'center') {\n xAlign = x <= (left + right) / 2 ? 'left' : 'right';\n } else if (x <= width / 2) {\n xAlign = 'left';\n } else if (x >= chartWidth - width / 2) {\n xAlign = 'right';\n }\n if (doesNotFitWithAlign(xAlign, chart, options, size)) {\n xAlign = 'center';\n }\n return xAlign;\n}\nfunction determineAlignment(chart, options, size) {\n const yAlign = size.yAlign || options.yAlign || determineYAlign(chart, size);\n return {\n xAlign: size.xAlign || options.xAlign || determineXAlign(chart, options, size, yAlign),\n yAlign\n };\n}\nfunction alignX(size, xAlign) {\n let {x, width} = size;\n if (xAlign === 'right') {\n x -= width;\n } else if (xAlign === 'center') {\n x -= (width / 2);\n }\n return x;\n}\nfunction alignY(size, yAlign, paddingAndSize) {\n let {y, height} = size;\n if (yAlign === 'top') {\n y += paddingAndSize;\n } else if (yAlign === 'bottom') {\n y -= height + paddingAndSize;\n } else {\n y -= (height / 2);\n }\n return y;\n}\nfunction getBackgroundPoint(options, size, alignment, chart) {\n const {caretSize, caretPadding, cornerRadius} = options;\n const {xAlign, yAlign} = alignment;\n const paddingAndSize = caretSize + caretPadding;\n const {topLeft, topRight, bottomLeft, bottomRight} = toTRBLCorners(cornerRadius);\n let x = alignX(size, xAlign);\n const y = alignY(size, yAlign, paddingAndSize);\n if (yAlign === 'center') {\n if (xAlign === 'left') {\n x += paddingAndSize;\n } else if (xAlign === 'right') {\n x -= paddingAndSize;\n }\n } else if (xAlign === 'left') {\n x -= Math.max(topLeft, bottomLeft) + caretSize;\n } else if (xAlign === 'right') {\n x += Math.max(topRight, bottomRight) + caretSize;\n }\n return {\n x: _limitValue(x, 0, chart.width - size.width),\n y: _limitValue(y, 0, chart.height - size.height)\n };\n}\nfunction getAlignedX(tooltip, align, options) {\n const padding = toPadding(options.padding);\n return align === 'center'\n ? tooltip.x + tooltip.width / 2\n : align === 'right'\n ? tooltip.x + tooltip.width - padding.right\n : tooltip.x + padding.left;\n}\nfunction getBeforeAfterBodyLines(callback) {\n return pushOrConcat([], splitNewlines(callback));\n}\nfunction createTooltipContext(parent, tooltip, tooltipItems) {\n return createContext(parent, {\n tooltip,\n tooltipItems,\n type: 'tooltip'\n });\n}\nfunction overrideCallbacks(callbacks, context) {\n const override = context && context.dataset && context.dataset.tooltip && context.dataset.tooltip.callbacks;\n return override ? callbacks.override(override) : callbacks;\n}\nclass Tooltip extends Element {\n constructor(config) {\n super();\n this.opacity = 0;\n this._active = [];\n this._eventPosition = undefined;\n this._size = undefined;\n this._cachedAnimations = undefined;\n this._tooltipItems = [];\n this.$animations = undefined;\n this.$context = undefined;\n this.chart = config.chart || config._chart;\n this._chart = this.chart;\n this.options = config.options;\n this.dataPoints = undefined;\n this.title = undefined;\n this.beforeBody = undefined;\n this.body = undefined;\n this.afterBody = undefined;\n this.footer = undefined;\n this.xAlign = undefined;\n this.yAlign = undefined;\n this.x = undefined;\n this.y = undefined;\n this.height = undefined;\n this.width = undefined;\n this.caretX = undefined;\n this.caretY = undefined;\n this.labelColors = undefined;\n this.labelPointStyles = undefined;\n this.labelTextColors = undefined;\n }\n initialize(options) {\n this.options = options;\n this._cachedAnimations = undefined;\n this.$context = undefined;\n }\n _resolveAnimations() {\n const cached = this._cachedAnimations;\n if (cached) {\n return cached;\n }\n const chart = this.chart;\n const options = this.options.setContext(this.getContext());\n const opts = options.enabled && chart.options.animation && options.animations;\n const animations = new Animations(this.chart, opts);\n if (opts._cacheable) {\n this._cachedAnimations = Object.freeze(animations);\n }\n return animations;\n }\n getContext() {\n return this.$context ||\n\t\t\t(this.$context = createTooltipContext(this.chart.getContext(), this, this._tooltipItems));\n }\n getTitle(context, options) {\n const {callbacks} = options;\n const beforeTitle = callbacks.beforeTitle.apply(this, [context]);\n const title = callbacks.title.apply(this, [context]);\n const afterTitle = callbacks.afterTitle.apply(this, [context]);\n let lines = [];\n lines = pushOrConcat(lines, splitNewlines(beforeTitle));\n lines = pushOrConcat(lines, splitNewlines(title));\n lines = pushOrConcat(lines, splitNewlines(afterTitle));\n return lines;\n }\n getBeforeBody(tooltipItems, options) {\n return getBeforeAfterBodyLines(options.callbacks.beforeBody.apply(this, [tooltipItems]));\n }\n getBody(tooltipItems, options) {\n const {callbacks} = options;\n const bodyItems = [];\n each(tooltipItems, (context) => {\n const bodyItem = {\n before: [],\n lines: [],\n after: []\n };\n const scoped = overrideCallbacks(callbacks, context);\n pushOrConcat(bodyItem.before, splitNewlines(scoped.beforeLabel.call(this, context)));\n pushOrConcat(bodyItem.lines, scoped.label.call(this, context));\n pushOrConcat(bodyItem.after, splitNewlines(scoped.afterLabel.call(this, context)));\n bodyItems.push(bodyItem);\n });\n return bodyItems;\n }\n getAfterBody(tooltipItems, options) {\n return getBeforeAfterBodyLines(options.callbacks.afterBody.apply(this, [tooltipItems]));\n }\n getFooter(tooltipItems, options) {\n const {callbacks} = options;\n const beforeFooter = callbacks.beforeFooter.apply(this, [tooltipItems]);\n const footer = callbacks.footer.apply(this, [tooltipItems]);\n const afterFooter = callbacks.afterFooter.apply(this, [tooltipItems]);\n let lines = [];\n lines = pushOrConcat(lines, splitNewlines(beforeFooter));\n lines = pushOrConcat(lines, splitNewlines(footer));\n lines = pushOrConcat(lines, splitNewlines(afterFooter));\n return lines;\n }\n _createItems(options) {\n const active = this._active;\n const data = this.chart.data;\n const labelColors = [];\n const labelPointStyles = [];\n const labelTextColors = [];\n let tooltipItems = [];\n let i, len;\n for (i = 0, len = active.length; i < len; ++i) {\n tooltipItems.push(createTooltipItem(this.chart, active[i]));\n }\n if (options.filter) {\n tooltipItems = tooltipItems.filter((element, index, array) => options.filter(element, index, array, data));\n }\n if (options.itemSort) {\n tooltipItems = tooltipItems.sort((a, b) => options.itemSort(a, b, data));\n }\n each(tooltipItems, (context) => {\n const scoped = overrideCallbacks(options.callbacks, context);\n labelColors.push(scoped.labelColor.call(this, context));\n labelPointStyles.push(scoped.labelPointStyle.call(this, context));\n labelTextColors.push(scoped.labelTextColor.call(this, context));\n });\n this.labelColors = labelColors;\n this.labelPointStyles = labelPointStyles;\n this.labelTextColors = labelTextColors;\n this.dataPoints = tooltipItems;\n return tooltipItems;\n }\n update(changed, replay) {\n const options = this.options.setContext(this.getContext());\n const active = this._active;\n let properties;\n let tooltipItems = [];\n if (!active.length) {\n if (this.opacity !== 0) {\n properties = {\n opacity: 0\n };\n }\n } else {\n const position = positioners[options.position].call(this, active, this._eventPosition);\n tooltipItems = this._createItems(options);\n this.title = this.getTitle(tooltipItems, options);\n this.beforeBody = this.getBeforeBody(tooltipItems, options);\n this.body = this.getBody(tooltipItems, options);\n this.afterBody = this.getAfterBody(tooltipItems, options);\n this.footer = this.getFooter(tooltipItems, options);\n const size = this._size = getTooltipSize(this, options);\n const positionAndSize = Object.assign({}, position, size);\n const alignment = determineAlignment(this.chart, options, positionAndSize);\n const backgroundPoint = getBackgroundPoint(options, positionAndSize, alignment, this.chart);\n this.xAlign = alignment.xAlign;\n this.yAlign = alignment.yAlign;\n properties = {\n opacity: 1,\n x: backgroundPoint.x,\n y: backgroundPoint.y,\n width: size.width,\n height: size.height,\n caretX: position.x,\n caretY: position.y\n };\n }\n this._tooltipItems = tooltipItems;\n this.$context = undefined;\n if (properties) {\n this._resolveAnimations().update(this, properties);\n }\n if (changed && options.external) {\n options.external.call(this, {chart: this.chart, tooltip: this, replay});\n }\n }\n drawCaret(tooltipPoint, ctx, size, options) {\n const caretPosition = this.getCaretPosition(tooltipPoint, size, options);\n ctx.lineTo(caretPosition.x1, caretPosition.y1);\n ctx.lineTo(caretPosition.x2, caretPosition.y2);\n ctx.lineTo(caretPosition.x3, caretPosition.y3);\n }\n getCaretPosition(tooltipPoint, size, options) {\n const {xAlign, yAlign} = this;\n const {caretSize, cornerRadius} = options;\n const {topLeft, topRight, bottomLeft, bottomRight} = toTRBLCorners(cornerRadius);\n const {x: ptX, y: ptY} = tooltipPoint;\n const {width, height} = size;\n let x1, x2, x3, y1, y2, y3;\n if (yAlign === 'center') {\n y2 = ptY + (height / 2);\n if (xAlign === 'left') {\n x1 = ptX;\n x2 = x1 - caretSize;\n y1 = y2 + caretSize;\n y3 = y2 - caretSize;\n } else {\n x1 = ptX + width;\n x2 = x1 + caretSize;\n y1 = y2 - caretSize;\n y3 = y2 + caretSize;\n }\n x3 = x1;\n } else {\n if (xAlign === 'left') {\n x2 = ptX + Math.max(topLeft, bottomLeft) + (caretSize);\n } else if (xAlign === 'right') {\n x2 = ptX + width - Math.max(topRight, bottomRight) - caretSize;\n } else {\n x2 = this.caretX;\n }\n if (yAlign === 'top') {\n y1 = ptY;\n y2 = y1 - caretSize;\n x1 = x2 - caretSize;\n x3 = x2 + caretSize;\n } else {\n y1 = ptY + height;\n y2 = y1 + caretSize;\n x1 = x2 + caretSize;\n x3 = x2 - caretSize;\n }\n y3 = y1;\n }\n return {x1, x2, x3, y1, y2, y3};\n }\n drawTitle(pt, ctx, options) {\n const title = this.title;\n const length = title.length;\n let titleFont, titleSpacing, i;\n if (length) {\n const rtlHelper = getRtlAdapter(options.rtl, this.x, this.width);\n pt.x = getAlignedX(this, options.titleAlign, options);\n ctx.textAlign = rtlHelper.textAlign(options.titleAlign);\n ctx.textBaseline = 'middle';\n titleFont = toFont(options.titleFont);\n titleSpacing = options.titleSpacing;\n ctx.fillStyle = options.titleColor;\n ctx.font = titleFont.string;\n for (i = 0; i < length; ++i) {\n ctx.fillText(title[i], rtlHelper.x(pt.x), pt.y + titleFont.lineHeight / 2);\n pt.y += titleFont.lineHeight + titleSpacing;\n if (i + 1 === length) {\n pt.y += options.titleMarginBottom - titleSpacing;\n }\n }\n }\n }\n _drawColorBox(ctx, pt, i, rtlHelper, options) {\n const labelColors = this.labelColors[i];\n const labelPointStyle = this.labelPointStyles[i];\n const {boxHeight, boxWidth, boxPadding} = options;\n const bodyFont = toFont(options.bodyFont);\n const colorX = getAlignedX(this, 'left', options);\n const rtlColorX = rtlHelper.x(colorX);\n const yOffSet = boxHeight < bodyFont.lineHeight ? (bodyFont.lineHeight - boxHeight) / 2 : 0;\n const colorY = pt.y + yOffSet;\n if (options.usePointStyle) {\n const drawOptions = {\n radius: Math.min(boxWidth, boxHeight) / 2,\n pointStyle: labelPointStyle.pointStyle,\n rotation: labelPointStyle.rotation,\n borderWidth: 1\n };\n const centerX = rtlHelper.leftForLtr(rtlColorX, boxWidth) + boxWidth / 2;\n const centerY = colorY + boxHeight / 2;\n ctx.strokeStyle = options.multiKeyBackground;\n ctx.fillStyle = options.multiKeyBackground;\n drawPoint(ctx, drawOptions, centerX, centerY);\n ctx.strokeStyle = labelColors.borderColor;\n ctx.fillStyle = labelColors.backgroundColor;\n drawPoint(ctx, drawOptions, centerX, centerY);\n } else {\n ctx.lineWidth = isObject(labelColors.borderWidth) ? Math.max(...Object.values(labelColors.borderWidth)) : (labelColors.borderWidth || 1);\n ctx.strokeStyle = labelColors.borderColor;\n ctx.setLineDash(labelColors.borderDash || []);\n ctx.lineDashOffset = labelColors.borderDashOffset || 0;\n const outerX = rtlHelper.leftForLtr(rtlColorX, boxWidth - boxPadding);\n const innerX = rtlHelper.leftForLtr(rtlHelper.xPlus(rtlColorX, 1), boxWidth - boxPadding - 2);\n const borderRadius = toTRBLCorners(labelColors.borderRadius);\n if (Object.values(borderRadius).some(v => v !== 0)) {\n ctx.beginPath();\n ctx.fillStyle = options.multiKeyBackground;\n addRoundedRectPath(ctx, {\n x: outerX,\n y: colorY,\n w: boxWidth,\n h: boxHeight,\n radius: borderRadius,\n });\n ctx.fill();\n ctx.stroke();\n ctx.fillStyle = labelColors.backgroundColor;\n ctx.beginPath();\n addRoundedRectPath(ctx, {\n x: innerX,\n y: colorY + 1,\n w: boxWidth - 2,\n h: boxHeight - 2,\n radius: borderRadius,\n });\n ctx.fill();\n } else {\n ctx.fillStyle = options.multiKeyBackground;\n ctx.fillRect(outerX, colorY, boxWidth, boxHeight);\n ctx.strokeRect(outerX, colorY, boxWidth, boxHeight);\n ctx.fillStyle = labelColors.backgroundColor;\n ctx.fillRect(innerX, colorY + 1, boxWidth - 2, boxHeight - 2);\n }\n }\n ctx.fillStyle = this.labelTextColors[i];\n }\n drawBody(pt, ctx, options) {\n const {body} = this;\n const {bodySpacing, bodyAlign, displayColors, boxHeight, boxWidth, boxPadding} = options;\n const bodyFont = toFont(options.bodyFont);\n let bodyLineHeight = bodyFont.lineHeight;\n let xLinePadding = 0;\n const rtlHelper = getRtlAdapter(options.rtl, this.x, this.width);\n const fillLineOfText = function(line) {\n ctx.fillText(line, rtlHelper.x(pt.x + xLinePadding), pt.y + bodyLineHeight / 2);\n pt.y += bodyLineHeight + bodySpacing;\n };\n const bodyAlignForCalculation = rtlHelper.textAlign(bodyAlign);\n let bodyItem, textColor, lines, i, j, ilen, jlen;\n ctx.textAlign = bodyAlign;\n ctx.textBaseline = 'middle';\n ctx.font = bodyFont.string;\n pt.x = getAlignedX(this, bodyAlignForCalculation, options);\n ctx.fillStyle = options.bodyColor;\n each(this.beforeBody, fillLineOfText);\n xLinePadding = displayColors && bodyAlignForCalculation !== 'right'\n ? bodyAlign === 'center' ? (boxWidth / 2 + boxPadding) : (boxWidth + 2 + boxPadding)\n : 0;\n for (i = 0, ilen = body.length; i < ilen; ++i) {\n bodyItem = body[i];\n textColor = this.labelTextColors[i];\n ctx.fillStyle = textColor;\n each(bodyItem.before, fillLineOfText);\n lines = bodyItem.lines;\n if (displayColors && lines.length) {\n this._drawColorBox(ctx, pt, i, rtlHelper, options);\n bodyLineHeight = Math.max(bodyFont.lineHeight, boxHeight);\n }\n for (j = 0, jlen = lines.length; j < jlen; ++j) {\n fillLineOfText(lines[j]);\n bodyLineHeight = bodyFont.lineHeight;\n }\n each(bodyItem.after, fillLineOfText);\n }\n xLinePadding = 0;\n bodyLineHeight = bodyFont.lineHeight;\n each(this.afterBody, fillLineOfText);\n pt.y -= bodySpacing;\n }\n drawFooter(pt, ctx, options) {\n const footer = this.footer;\n const length = footer.length;\n let footerFont, i;\n if (length) {\n const rtlHelper = getRtlAdapter(options.rtl, this.x, this.width);\n pt.x = getAlignedX(this, options.footerAlign, options);\n pt.y += options.footerMarginTop;\n ctx.textAlign = rtlHelper.textAlign(options.footerAlign);\n ctx.textBaseline = 'middle';\n footerFont = toFont(options.footerFont);\n ctx.fillStyle = options.footerColor;\n ctx.font = footerFont.string;\n for (i = 0; i < length; ++i) {\n ctx.fillText(footer[i], rtlHelper.x(pt.x), pt.y + footerFont.lineHeight / 2);\n pt.y += footerFont.lineHeight + options.footerSpacing;\n }\n }\n }\n drawBackground(pt, ctx, tooltipSize, options) {\n const {xAlign, yAlign} = this;\n const {x, y} = pt;\n const {width, height} = tooltipSize;\n const {topLeft, topRight, bottomLeft, bottomRight} = toTRBLCorners(options.cornerRadius);\n ctx.fillStyle = options.backgroundColor;\n ctx.strokeStyle = options.borderColor;\n ctx.lineWidth = options.borderWidth;\n ctx.beginPath();\n ctx.moveTo(x + topLeft, y);\n if (yAlign === 'top') {\n this.drawCaret(pt, ctx, tooltipSize, options);\n }\n ctx.lineTo(x + width - topRight, y);\n ctx.quadraticCurveTo(x + width, y, x + width, y + topRight);\n if (yAlign === 'center' && xAlign === 'right') {\n this.drawCaret(pt, ctx, tooltipSize, options);\n }\n ctx.lineTo(x + width, y + height - bottomRight);\n ctx.quadraticCurveTo(x + width, y + height, x + width - bottomRight, y + height);\n if (yAlign === 'bottom') {\n this.drawCaret(pt, ctx, tooltipSize, options);\n }\n ctx.lineTo(x + bottomLeft, y + height);\n ctx.quadraticCurveTo(x, y + height, x, y + height - bottomLeft);\n if (yAlign === 'center' && xAlign === 'left') {\n this.drawCaret(pt, ctx, tooltipSize, options);\n }\n ctx.lineTo(x, y + topLeft);\n ctx.quadraticCurveTo(x, y, x + topLeft, y);\n ctx.closePath();\n ctx.fill();\n if (options.borderWidth > 0) {\n ctx.stroke();\n }\n }\n _updateAnimationTarget(options) {\n const chart = this.chart;\n const anims = this.$animations;\n const animX = anims && anims.x;\n const animY = anims && anims.y;\n if (animX || animY) {\n const position = positioners[options.position].call(this, this._active, this._eventPosition);\n if (!position) {\n return;\n }\n const size = this._size = getTooltipSize(this, options);\n const positionAndSize = Object.assign({}, position, this._size);\n const alignment = determineAlignment(chart, options, positionAndSize);\n const point = getBackgroundPoint(options, positionAndSize, alignment, chart);\n if (animX._to !== point.x || animY._to !== point.y) {\n this.xAlign = alignment.xAlign;\n this.yAlign = alignment.yAlign;\n this.width = size.width;\n this.height = size.height;\n this.caretX = position.x;\n this.caretY = position.y;\n this._resolveAnimations().update(this, point);\n }\n }\n }\n _willRender() {\n return !!this.opacity;\n }\n draw(ctx) {\n const options = this.options.setContext(this.getContext());\n let opacity = this.opacity;\n if (!opacity) {\n return;\n }\n this._updateAnimationTarget(options);\n const tooltipSize = {\n width: this.width,\n height: this.height\n };\n const pt = {\n x: this.x,\n y: this.y\n };\n opacity = Math.abs(opacity) < 1e-3 ? 0 : opacity;\n const padding = toPadding(options.padding);\n const hasTooltipContent = this.title.length || this.beforeBody.length || this.body.length || this.afterBody.length || this.footer.length;\n if (options.enabled && hasTooltipContent) {\n ctx.save();\n ctx.globalAlpha = opacity;\n this.drawBackground(pt, ctx, tooltipSize, options);\n overrideTextDirection(ctx, options.textDirection);\n pt.y += padding.top;\n this.drawTitle(pt, ctx, options);\n this.drawBody(pt, ctx, options);\n this.drawFooter(pt, ctx, options);\n restoreTextDirection(ctx, options.textDirection);\n ctx.restore();\n }\n }\n getActiveElements() {\n return this._active || [];\n }\n setActiveElements(activeElements, eventPosition) {\n const lastActive = this._active;\n const active = activeElements.map(({datasetIndex, index}) => {\n const meta = this.chart.getDatasetMeta(datasetIndex);\n if (!meta) {\n throw new Error('Cannot find a dataset at index ' + datasetIndex);\n }\n return {\n datasetIndex,\n element: meta.data[index],\n index,\n };\n });\n const changed = !_elementsEqual(lastActive, active);\n const positionChanged = this._positionChanged(active, eventPosition);\n if (changed || positionChanged) {\n this._active = active;\n this._eventPosition = eventPosition;\n this._ignoreReplayEvents = true;\n this.update(true);\n }\n }\n handleEvent(e, replay, inChartArea = true) {\n if (replay && this._ignoreReplayEvents) {\n return false;\n }\n this._ignoreReplayEvents = false;\n const options = this.options;\n const lastActive = this._active || [];\n const active = this._getActiveElements(e, lastActive, replay, inChartArea);\n const positionChanged = this._positionChanged(active, e);\n const changed = replay || !_elementsEqual(active, lastActive) || positionChanged;\n if (changed) {\n this._active = active;\n if (options.enabled || options.external) {\n this._eventPosition = {\n x: e.x,\n y: e.y\n };\n this.update(true, replay);\n }\n }\n return changed;\n }\n _getActiveElements(e, lastActive, replay, inChartArea) {\n const options = this.options;\n if (e.type === 'mouseout') {\n return [];\n }\n if (!inChartArea) {\n return lastActive;\n }\n const active = this.chart.getElementsAtEventForMode(e, options.mode, options, replay);\n if (options.reverse) {\n active.reverse();\n }\n return active;\n }\n _positionChanged(active, e) {\n const {caretX, caretY, options} = this;\n const position = positioners[options.position].call(this, active, e);\n return position !== false && (caretX !== position.x || caretY !== position.y);\n }\n}\nTooltip.positioners = positioners;\nvar plugin_tooltip = {\n id: 'tooltip',\n _element: Tooltip,\n positioners,\n afterInit(chart, _args, options) {\n if (options) {\n chart.tooltip = new Tooltip({chart, options});\n }\n },\n beforeUpdate(chart, _args, options) {\n if (chart.tooltip) {\n chart.tooltip.initialize(options);\n }\n },\n reset(chart, _args, options) {\n if (chart.tooltip) {\n chart.tooltip.initialize(options);\n }\n },\n afterDraw(chart) {\n const tooltip = chart.tooltip;\n if (tooltip && tooltip._willRender()) {\n const args = {\n tooltip\n };\n if (chart.notifyPlugins('beforeTooltipDraw', args) === false) {\n return;\n }\n tooltip.draw(chart.ctx);\n chart.notifyPlugins('afterTooltipDraw', args);\n }\n },\n afterEvent(chart, args) {\n if (chart.tooltip) {\n const useFinalPosition = args.replay;\n if (chart.tooltip.handleEvent(args.event, useFinalPosition, args.inChartArea)) {\n args.changed = true;\n }\n }\n },\n defaults: {\n enabled: true,\n external: null,\n position: 'average',\n backgroundColor: 'rgba(0,0,0,0.8)',\n titleColor: '#fff',\n titleFont: {\n weight: 'bold',\n },\n titleSpacing: 2,\n titleMarginBottom: 6,\n titleAlign: 'left',\n bodyColor: '#fff',\n bodySpacing: 2,\n bodyFont: {\n },\n bodyAlign: 'left',\n footerColor: '#fff',\n footerSpacing: 2,\n footerMarginTop: 6,\n footerFont: {\n weight: 'bold',\n },\n footerAlign: 'left',\n padding: 6,\n caretPadding: 2,\n caretSize: 5,\n cornerRadius: 6,\n boxHeight: (ctx, opts) => opts.bodyFont.size,\n boxWidth: (ctx, opts) => opts.bodyFont.size,\n multiKeyBackground: '#fff',\n displayColors: true,\n boxPadding: 0,\n borderColor: 'rgba(0,0,0,0)',\n borderWidth: 0,\n animation: {\n duration: 400,\n easing: 'easeOutQuart',\n },\n animations: {\n numbers: {\n type: 'number',\n properties: ['x', 'y', 'width', 'height', 'caretX', 'caretY'],\n },\n opacity: {\n easing: 'linear',\n duration: 200\n }\n },\n callbacks: {\n beforeTitle: noop,\n title(tooltipItems) {\n if (tooltipItems.length > 0) {\n const item = tooltipItems[0];\n const labels = item.chart.data.labels;\n const labelCount = labels ? labels.length : 0;\n if (this && this.options && this.options.mode === 'dataset') {\n return item.dataset.label || '';\n } else if (item.label) {\n return item.label;\n } else if (labelCount > 0 && item.dataIndex < labelCount) {\n return labels[item.dataIndex];\n }\n }\n return '';\n },\n afterTitle: noop,\n beforeBody: noop,\n beforeLabel: noop,\n label(tooltipItem) {\n if (this && this.options && this.options.mode === 'dataset') {\n return tooltipItem.label + ': ' + tooltipItem.formattedValue || tooltipItem.formattedValue;\n }\n let label = tooltipItem.dataset.label || '';\n if (label) {\n label += ': ';\n }\n const value = tooltipItem.formattedValue;\n if (!isNullOrUndef(value)) {\n label += value;\n }\n return label;\n },\n labelColor(tooltipItem) {\n const meta = tooltipItem.chart.getDatasetMeta(tooltipItem.datasetIndex);\n const options = meta.controller.getStyle(tooltipItem.dataIndex);\n return {\n borderColor: options.borderColor,\n backgroundColor: options.backgroundColor,\n borderWidth: options.borderWidth,\n borderDash: options.borderDash,\n borderDashOffset: options.borderDashOffset,\n borderRadius: 0,\n };\n },\n labelTextColor() {\n return this.options.bodyColor;\n },\n labelPointStyle(tooltipItem) {\n const meta = tooltipItem.chart.getDatasetMeta(tooltipItem.datasetIndex);\n const options = meta.controller.getStyle(tooltipItem.dataIndex);\n return {\n pointStyle: options.pointStyle,\n rotation: options.rotation,\n };\n },\n afterLabel: noop,\n afterBody: noop,\n beforeFooter: noop,\n footer: noop,\n afterFooter: noop\n }\n },\n defaultRoutes: {\n bodyFont: 'font',\n footerFont: 'font',\n titleFont: 'font'\n },\n descriptors: {\n _scriptable: (name) => name !== 'filter' && name !== 'itemSort' && name !== 'external',\n _indexable: false,\n callbacks: {\n _scriptable: false,\n _indexable: false,\n },\n animation: {\n _fallback: false\n },\n animations: {\n _fallback: 'animation'\n }\n },\n additionalOptionScopes: ['interaction']\n};\n\nvar plugins = /*#__PURE__*/Object.freeze({\n__proto__: null,\nDecimation: plugin_decimation,\nFiller: index,\nLegend: plugin_legend,\nSubTitle: plugin_subtitle,\nTitle: plugin_title,\nTooltip: plugin_tooltip\n});\n\nconst addIfString = (labels, raw, index, addedLabels) => {\n if (typeof raw === 'string') {\n index = labels.push(raw) - 1;\n addedLabels.unshift({index, label: raw});\n } else if (isNaN(raw)) {\n index = null;\n }\n return index;\n};\nfunction findOrAddLabel(labels, raw, index, addedLabels) {\n const first = labels.indexOf(raw);\n if (first === -1) {\n return addIfString(labels, raw, index, addedLabels);\n }\n const last = labels.lastIndexOf(raw);\n return first !== last ? index : first;\n}\nconst validIndex = (index, max) => index === null ? null : _limitValue(Math.round(index), 0, max);\nclass CategoryScale extends Scale {\n constructor(cfg) {\n super(cfg);\n this._startValue = undefined;\n this._valueRange = 0;\n this._addedLabels = [];\n }\n init(scaleOptions) {\n const added = this._addedLabels;\n if (added.length) {\n const labels = this.getLabels();\n for (const {index, label} of added) {\n if (labels[index] === label) {\n labels.splice(index, 1);\n }\n }\n this._addedLabels = [];\n }\n super.init(scaleOptions);\n }\n parse(raw, index) {\n if (isNullOrUndef(raw)) {\n return null;\n }\n const labels = this.getLabels();\n index = isFinite(index) && labels[index] === raw ? index\n : findOrAddLabel(labels, raw, valueOrDefault(index, raw), this._addedLabels);\n return validIndex(index, labels.length - 1);\n }\n determineDataLimits() {\n const {minDefined, maxDefined} = this.getUserBounds();\n let {min, max} = this.getMinMax(true);\n if (this.options.bounds === 'ticks') {\n if (!minDefined) {\n min = 0;\n }\n if (!maxDefined) {\n max = this.getLabels().length - 1;\n }\n }\n this.min = min;\n this.max = max;\n }\n buildTicks() {\n const min = this.min;\n const max = this.max;\n const offset = this.options.offset;\n const ticks = [];\n let labels = this.getLabels();\n labels = (min === 0 && max === labels.length - 1) ? labels : labels.slice(min, max + 1);\n this._valueRange = Math.max(labels.length - (offset ? 0 : 1), 1);\n this._startValue = this.min - (offset ? 0.5 : 0);\n for (let value = min; value <= max; value++) {\n ticks.push({value});\n }\n return ticks;\n }\n getLabelForValue(value) {\n const labels = this.getLabels();\n if (value >= 0 && value < labels.length) {\n return labels[value];\n }\n return value;\n }\n configure() {\n super.configure();\n if (!this.isHorizontal()) {\n this._reversePixels = !this._reversePixels;\n }\n }\n getPixelForValue(value) {\n if (typeof value !== 'number') {\n value = this.parse(value);\n }\n return value === null ? NaN : this.getPixelForDecimal((value - this._startValue) / this._valueRange);\n }\n getPixelForTick(index) {\n const ticks = this.ticks;\n if (index < 0 || index > ticks.length - 1) {\n return null;\n }\n return this.getPixelForValue(ticks[index].value);\n }\n getValueForPixel(pixel) {\n return Math.round(this._startValue + this.getDecimalForPixel(pixel) * this._valueRange);\n }\n getBasePixel() {\n return this.bottom;\n }\n}\nCategoryScale.id = 'category';\nCategoryScale.defaults = {\n ticks: {\n callback: CategoryScale.prototype.getLabelForValue\n }\n};\n\nfunction generateTicks$1(generationOptions, dataRange) {\n const ticks = [];\n const MIN_SPACING = 1e-14;\n const {bounds, step, min, max, precision, count, maxTicks, maxDigits, includeBounds} = generationOptions;\n const unit = step || 1;\n const maxSpaces = maxTicks - 1;\n const {min: rmin, max: rmax} = dataRange;\n const minDefined = !isNullOrUndef(min);\n const maxDefined = !isNullOrUndef(max);\n const countDefined = !isNullOrUndef(count);\n const minSpacing = (rmax - rmin) / (maxDigits + 1);\n let spacing = niceNum((rmax - rmin) / maxSpaces / unit) * unit;\n let factor, niceMin, niceMax, numSpaces;\n if (spacing < MIN_SPACING && !minDefined && !maxDefined) {\n return [{value: rmin}, {value: rmax}];\n }\n numSpaces = Math.ceil(rmax / spacing) - Math.floor(rmin / spacing);\n if (numSpaces > maxSpaces) {\n spacing = niceNum(numSpaces * spacing / maxSpaces / unit) * unit;\n }\n if (!isNullOrUndef(precision)) {\n factor = Math.pow(10, precision);\n spacing = Math.ceil(spacing * factor) / factor;\n }\n if (bounds === 'ticks') {\n niceMin = Math.floor(rmin / spacing) * spacing;\n niceMax = Math.ceil(rmax / spacing) * spacing;\n } else {\n niceMin = rmin;\n niceMax = rmax;\n }\n if (minDefined && maxDefined && step && almostWhole((max - min) / step, spacing / 1000)) {\n numSpaces = Math.round(Math.min((max - min) / spacing, maxTicks));\n spacing = (max - min) / numSpaces;\n niceMin = min;\n niceMax = max;\n } else if (countDefined) {\n niceMin = minDefined ? min : niceMin;\n niceMax = maxDefined ? max : niceMax;\n numSpaces = count - 1;\n spacing = (niceMax - niceMin) / numSpaces;\n } else {\n numSpaces = (niceMax - niceMin) / spacing;\n if (almostEquals(numSpaces, Math.round(numSpaces), spacing / 1000)) {\n numSpaces = Math.round(numSpaces);\n } else {\n numSpaces = Math.ceil(numSpaces);\n }\n }\n const decimalPlaces = Math.max(\n _decimalPlaces(spacing),\n _decimalPlaces(niceMin)\n );\n factor = Math.pow(10, isNullOrUndef(precision) ? decimalPlaces : precision);\n niceMin = Math.round(niceMin * factor) / factor;\n niceMax = Math.round(niceMax * factor) / factor;\n let j = 0;\n if (minDefined) {\n if (includeBounds && niceMin !== min) {\n ticks.push({value: min});\n if (niceMin < min) {\n j++;\n }\n if (almostEquals(Math.round((niceMin + j * spacing) * factor) / factor, min, relativeLabelSize(min, minSpacing, generationOptions))) {\n j++;\n }\n } else if (niceMin < min) {\n j++;\n }\n }\n for (; j < numSpaces; ++j) {\n ticks.push({value: Math.round((niceMin + j * spacing) * factor) / factor});\n }\n if (maxDefined && includeBounds && niceMax !== max) {\n if (ticks.length && almostEquals(ticks[ticks.length - 1].value, max, relativeLabelSize(max, minSpacing, generationOptions))) {\n ticks[ticks.length - 1].value = max;\n } else {\n ticks.push({value: max});\n }\n } else if (!maxDefined || niceMax === max) {\n ticks.push({value: niceMax});\n }\n return ticks;\n}\nfunction relativeLabelSize(value, minSpacing, {horizontal, minRotation}) {\n const rad = toRadians(minRotation);\n const ratio = (horizontal ? Math.sin(rad) : Math.cos(rad)) || 0.001;\n const length = 0.75 * minSpacing * ('' + value).length;\n return Math.min(minSpacing / ratio, length);\n}\nclass LinearScaleBase extends Scale {\n constructor(cfg) {\n super(cfg);\n this.start = undefined;\n this.end = undefined;\n this._startValue = undefined;\n this._endValue = undefined;\n this._valueRange = 0;\n }\n parse(raw, index) {\n if (isNullOrUndef(raw)) {\n return null;\n }\n if ((typeof raw === 'number' || raw instanceof Number) && !isFinite(+raw)) {\n return null;\n }\n return +raw;\n }\n handleTickRangeOptions() {\n const {beginAtZero} = this.options;\n const {minDefined, maxDefined} = this.getUserBounds();\n let {min, max} = this;\n const setMin = v => (min = minDefined ? min : v);\n const setMax = v => (max = maxDefined ? max : v);\n if (beginAtZero) {\n const minSign = sign(min);\n const maxSign = sign(max);\n if (minSign < 0 && maxSign < 0) {\n setMax(0);\n } else if (minSign > 0 && maxSign > 0) {\n setMin(0);\n }\n }\n if (min === max) {\n let offset = 1;\n if (max >= Number.MAX_SAFE_INTEGER || min <= Number.MIN_SAFE_INTEGER) {\n offset = Math.abs(max * 0.05);\n }\n setMax(max + offset);\n if (!beginAtZero) {\n setMin(min - offset);\n }\n }\n this.min = min;\n this.max = max;\n }\n getTickLimit() {\n const tickOpts = this.options.ticks;\n let {maxTicksLimit, stepSize} = tickOpts;\n let maxTicks;\n if (stepSize) {\n maxTicks = Math.ceil(this.max / stepSize) - Math.floor(this.min / stepSize) + 1;\n if (maxTicks > 1000) {\n console.warn(`scales.${this.id}.ticks.stepSize: ${stepSize} would result generating up to ${maxTicks} ticks. Limiting to 1000.`);\n maxTicks = 1000;\n }\n } else {\n maxTicks = this.computeTickLimit();\n maxTicksLimit = maxTicksLimit || 11;\n }\n if (maxTicksLimit) {\n maxTicks = Math.min(maxTicksLimit, maxTicks);\n }\n return maxTicks;\n }\n computeTickLimit() {\n return Number.POSITIVE_INFINITY;\n }\n buildTicks() {\n const opts = this.options;\n const tickOpts = opts.ticks;\n let maxTicks = this.getTickLimit();\n maxTicks = Math.max(2, maxTicks);\n const numericGeneratorOptions = {\n maxTicks,\n bounds: opts.bounds,\n min: opts.min,\n max: opts.max,\n precision: tickOpts.precision,\n step: tickOpts.stepSize,\n count: tickOpts.count,\n maxDigits: this._maxDigits(),\n horizontal: this.isHorizontal(),\n minRotation: tickOpts.minRotation || 0,\n includeBounds: tickOpts.includeBounds !== false\n };\n const dataRange = this._range || this;\n const ticks = generateTicks$1(numericGeneratorOptions, dataRange);\n if (opts.bounds === 'ticks') {\n _setMinAndMaxByKey(ticks, this, 'value');\n }\n if (opts.reverse) {\n ticks.reverse();\n this.start = this.max;\n this.end = this.min;\n } else {\n this.start = this.min;\n this.end = this.max;\n }\n return ticks;\n }\n configure() {\n const ticks = this.ticks;\n let start = this.min;\n let end = this.max;\n super.configure();\n if (this.options.offset && ticks.length) {\n const offset = (end - start) / Math.max(ticks.length - 1, 1) / 2;\n start -= offset;\n end += offset;\n }\n this._startValue = start;\n this._endValue = end;\n this._valueRange = end - start;\n }\n getLabelForValue(value) {\n return formatNumber(value, this.chart.options.locale, this.options.ticks.format);\n }\n}\n\nclass LinearScale extends LinearScaleBase {\n determineDataLimits() {\n const {min, max} = this.getMinMax(true);\n this.min = isNumberFinite(min) ? min : 0;\n this.max = isNumberFinite(max) ? max : 1;\n this.handleTickRangeOptions();\n }\n computeTickLimit() {\n const horizontal = this.isHorizontal();\n const length = horizontal ? this.width : this.height;\n const minRotation = toRadians(this.options.ticks.minRotation);\n const ratio = (horizontal ? Math.sin(minRotation) : Math.cos(minRotation)) || 0.001;\n const tickFont = this._resolveTickFontOptions(0);\n return Math.ceil(length / Math.min(40, tickFont.lineHeight / ratio));\n }\n getPixelForValue(value) {\n return value === null ? NaN : this.getPixelForDecimal((value - this._startValue) / this._valueRange);\n }\n getValueForPixel(pixel) {\n return this._startValue + this.getDecimalForPixel(pixel) * this._valueRange;\n }\n}\nLinearScale.id = 'linear';\nLinearScale.defaults = {\n ticks: {\n callback: Ticks.formatters.numeric\n }\n};\n\nfunction isMajor(tickVal) {\n const remain = tickVal / (Math.pow(10, Math.floor(log10(tickVal))));\n return remain === 1;\n}\nfunction generateTicks(generationOptions, dataRange) {\n const endExp = Math.floor(log10(dataRange.max));\n const endSignificand = Math.ceil(dataRange.max / Math.pow(10, endExp));\n const ticks = [];\n let tickVal = finiteOrDefault(generationOptions.min, Math.pow(10, Math.floor(log10(dataRange.min))));\n let exp = Math.floor(log10(tickVal));\n let significand = Math.floor(tickVal / Math.pow(10, exp));\n let precision = exp < 0 ? Math.pow(10, Math.abs(exp)) : 1;\n do {\n ticks.push({value: tickVal, major: isMajor(tickVal)});\n ++significand;\n if (significand === 10) {\n significand = 1;\n ++exp;\n precision = exp >= 0 ? 1 : precision;\n }\n tickVal = Math.round(significand * Math.pow(10, exp) * precision) / precision;\n } while (exp < endExp || (exp === endExp && significand < endSignificand));\n const lastTick = finiteOrDefault(generationOptions.max, tickVal);\n ticks.push({value: lastTick, major: isMajor(tickVal)});\n return ticks;\n}\nclass LogarithmicScale extends Scale {\n constructor(cfg) {\n super(cfg);\n this.start = undefined;\n this.end = undefined;\n this._startValue = undefined;\n this._valueRange = 0;\n }\n parse(raw, index) {\n const value = LinearScaleBase.prototype.parse.apply(this, [raw, index]);\n if (value === 0) {\n this._zero = true;\n return undefined;\n }\n return isNumberFinite(value) && value > 0 ? value : null;\n }\n determineDataLimits() {\n const {min, max} = this.getMinMax(true);\n this.min = isNumberFinite(min) ? Math.max(0, min) : null;\n this.max = isNumberFinite(max) ? Math.max(0, max) : null;\n if (this.options.beginAtZero) {\n this._zero = true;\n }\n this.handleTickRangeOptions();\n }\n handleTickRangeOptions() {\n const {minDefined, maxDefined} = this.getUserBounds();\n let min = this.min;\n let max = this.max;\n const setMin = v => (min = minDefined ? min : v);\n const setMax = v => (max = maxDefined ? max : v);\n const exp = (v, m) => Math.pow(10, Math.floor(log10(v)) + m);\n if (min === max) {\n if (min <= 0) {\n setMin(1);\n setMax(10);\n } else {\n setMin(exp(min, -1));\n setMax(exp(max, +1));\n }\n }\n if (min <= 0) {\n setMin(exp(max, -1));\n }\n if (max <= 0) {\n setMax(exp(min, +1));\n }\n if (this._zero && this.min !== this._suggestedMin && min === exp(this.min, 0)) {\n setMin(exp(min, -1));\n }\n this.min = min;\n this.max = max;\n }\n buildTicks() {\n const opts = this.options;\n const generationOptions = {\n min: this._userMin,\n max: this._userMax\n };\n const ticks = generateTicks(generationOptions, this);\n if (opts.bounds === 'ticks') {\n _setMinAndMaxByKey(ticks, this, 'value');\n }\n if (opts.reverse) {\n ticks.reverse();\n this.start = this.max;\n this.end = this.min;\n } else {\n this.start = this.min;\n this.end = this.max;\n }\n return ticks;\n }\n getLabelForValue(value) {\n return value === undefined\n ? '0'\n : formatNumber(value, this.chart.options.locale, this.options.ticks.format);\n }\n configure() {\n const start = this.min;\n super.configure();\n this._startValue = log10(start);\n this._valueRange = log10(this.max) - log10(start);\n }\n getPixelForValue(value) {\n if (value === undefined || value === 0) {\n value = this.min;\n }\n if (value === null || isNaN(value)) {\n return NaN;\n }\n return this.getPixelForDecimal(value === this.min\n ? 0\n : (log10(value) - this._startValue) / this._valueRange);\n }\n getValueForPixel(pixel) {\n const decimal = this.getDecimalForPixel(pixel);\n return Math.pow(10, this._startValue + decimal * this._valueRange);\n }\n}\nLogarithmicScale.id = 'logarithmic';\nLogarithmicScale.defaults = {\n ticks: {\n callback: Ticks.formatters.logarithmic,\n major: {\n enabled: true\n }\n }\n};\n\nfunction getTickBackdropHeight(opts) {\n const tickOpts = opts.ticks;\n if (tickOpts.display && opts.display) {\n const padding = toPadding(tickOpts.backdropPadding);\n return valueOrDefault(tickOpts.font && tickOpts.font.size, defaults.font.size) + padding.height;\n }\n return 0;\n}\nfunction measureLabelSize(ctx, font, label) {\n label = isArray(label) ? label : [label];\n return {\n w: _longestText(ctx, font.string, label),\n h: label.length * font.lineHeight\n };\n}\nfunction determineLimits(angle, pos, size, min, max) {\n if (angle === min || angle === max) {\n return {\n start: pos - (size / 2),\n end: pos + (size / 2)\n };\n } else if (angle < min || angle > max) {\n return {\n start: pos - size,\n end: pos\n };\n }\n return {\n start: pos,\n end: pos + size\n };\n}\nfunction fitWithPointLabels(scale) {\n const orig = {\n l: scale.left + scale._padding.left,\n r: scale.right - scale._padding.right,\n t: scale.top + scale._padding.top,\n b: scale.bottom - scale._padding.bottom\n };\n const limits = Object.assign({}, orig);\n const labelSizes = [];\n const padding = [];\n const valueCount = scale._pointLabels.length;\n const pointLabelOpts = scale.options.pointLabels;\n const additionalAngle = pointLabelOpts.centerPointLabels ? PI / valueCount : 0;\n for (let i = 0; i < valueCount; i++) {\n const opts = pointLabelOpts.setContext(scale.getPointLabelContext(i));\n padding[i] = opts.padding;\n const pointPosition = scale.getPointPosition(i, scale.drawingArea + padding[i], additionalAngle);\n const plFont = toFont(opts.font);\n const textSize = measureLabelSize(scale.ctx, plFont, scale._pointLabels[i]);\n labelSizes[i] = textSize;\n const angleRadians = _normalizeAngle(scale.getIndexAngle(i) + additionalAngle);\n const angle = Math.round(toDegrees(angleRadians));\n const hLimits = determineLimits(angle, pointPosition.x, textSize.w, 0, 180);\n const vLimits = determineLimits(angle, pointPosition.y, textSize.h, 90, 270);\n updateLimits(limits, orig, angleRadians, hLimits, vLimits);\n }\n scale.setCenterPoint(\n orig.l - limits.l,\n limits.r - orig.r,\n orig.t - limits.t,\n limits.b - orig.b\n );\n scale._pointLabelItems = buildPointLabelItems(scale, labelSizes, padding);\n}\nfunction updateLimits(limits, orig, angle, hLimits, vLimits) {\n const sin = Math.abs(Math.sin(angle));\n const cos = Math.abs(Math.cos(angle));\n let x = 0;\n let y = 0;\n if (hLimits.start < orig.l) {\n x = (orig.l - hLimits.start) / sin;\n limits.l = Math.min(limits.l, orig.l - x);\n } else if (hLimits.end > orig.r) {\n x = (hLimits.end - orig.r) / sin;\n limits.r = Math.max(limits.r, orig.r + x);\n }\n if (vLimits.start < orig.t) {\n y = (orig.t - vLimits.start) / cos;\n limits.t = Math.min(limits.t, orig.t - y);\n } else if (vLimits.end > orig.b) {\n y = (vLimits.end - orig.b) / cos;\n limits.b = Math.max(limits.b, orig.b + y);\n }\n}\nfunction buildPointLabelItems(scale, labelSizes, padding) {\n const items = [];\n const valueCount = scale._pointLabels.length;\n const opts = scale.options;\n const extra = getTickBackdropHeight(opts) / 2;\n const outerDistance = scale.drawingArea;\n const additionalAngle = opts.pointLabels.centerPointLabels ? PI / valueCount : 0;\n for (let i = 0; i < valueCount; i++) {\n const pointLabelPosition = scale.getPointPosition(i, outerDistance + extra + padding[i], additionalAngle);\n const angle = Math.round(toDegrees(_normalizeAngle(pointLabelPosition.angle + HALF_PI)));\n const size = labelSizes[i];\n const y = yForAngle(pointLabelPosition.y, size.h, angle);\n const textAlign = getTextAlignForAngle(angle);\n const left = leftForTextAlign(pointLabelPosition.x, size.w, textAlign);\n items.push({\n x: pointLabelPosition.x,\n y,\n textAlign,\n left,\n top: y,\n right: left + size.w,\n bottom: y + size.h\n });\n }\n return items;\n}\nfunction getTextAlignForAngle(angle) {\n if (angle === 0 || angle === 180) {\n return 'center';\n } else if (angle < 180) {\n return 'left';\n }\n return 'right';\n}\nfunction leftForTextAlign(x, w, align) {\n if (align === 'right') {\n x -= w;\n } else if (align === 'center') {\n x -= (w / 2);\n }\n return x;\n}\nfunction yForAngle(y, h, angle) {\n if (angle === 90 || angle === 270) {\n y -= (h / 2);\n } else if (angle > 270 || angle < 90) {\n y -= h;\n }\n return y;\n}\nfunction drawPointLabels(scale, labelCount) {\n const {ctx, options: {pointLabels}} = scale;\n for (let i = labelCount - 1; i >= 0; i--) {\n const optsAtIndex = pointLabels.setContext(scale.getPointLabelContext(i));\n const plFont = toFont(optsAtIndex.font);\n const {x, y, textAlign, left, top, right, bottom} = scale._pointLabelItems[i];\n const {backdropColor} = optsAtIndex;\n if (!isNullOrUndef(backdropColor)) {\n const borderRadius = toTRBLCorners(optsAtIndex.borderRadius);\n const padding = toPadding(optsAtIndex.backdropPadding);\n ctx.fillStyle = backdropColor;\n const backdropLeft = left - padding.left;\n const backdropTop = top - padding.top;\n const backdropWidth = right - left + padding.width;\n const backdropHeight = bottom - top + padding.height;\n if (Object.values(borderRadius).some(v => v !== 0)) {\n ctx.beginPath();\n addRoundedRectPath(ctx, {\n x: backdropLeft,\n y: backdropTop,\n w: backdropWidth,\n h: backdropHeight,\n radius: borderRadius,\n });\n ctx.fill();\n } else {\n ctx.fillRect(backdropLeft, backdropTop, backdropWidth, backdropHeight);\n }\n }\n renderText(\n ctx,\n scale._pointLabels[i],\n x,\n y + (plFont.lineHeight / 2),\n plFont,\n {\n color: optsAtIndex.color,\n textAlign: textAlign,\n textBaseline: 'middle'\n }\n );\n }\n}\nfunction pathRadiusLine(scale, radius, circular, labelCount) {\n const {ctx} = scale;\n if (circular) {\n ctx.arc(scale.xCenter, scale.yCenter, radius, 0, TAU);\n } else {\n let pointPosition = scale.getPointPosition(0, radius);\n ctx.moveTo(pointPosition.x, pointPosition.y);\n for (let i = 1; i < labelCount; i++) {\n pointPosition = scale.getPointPosition(i, radius);\n ctx.lineTo(pointPosition.x, pointPosition.y);\n }\n }\n}\nfunction drawRadiusLine(scale, gridLineOpts, radius, labelCount) {\n const ctx = scale.ctx;\n const circular = gridLineOpts.circular;\n const {color, lineWidth} = gridLineOpts;\n if ((!circular && !labelCount) || !color || !lineWidth || radius < 0) {\n return;\n }\n ctx.save();\n ctx.strokeStyle = color;\n ctx.lineWidth = lineWidth;\n ctx.setLineDash(gridLineOpts.borderDash);\n ctx.lineDashOffset = gridLineOpts.borderDashOffset;\n ctx.beginPath();\n pathRadiusLine(scale, radius, circular, labelCount);\n ctx.closePath();\n ctx.stroke();\n ctx.restore();\n}\nfunction createPointLabelContext(parent, index, label) {\n return createContext(parent, {\n label,\n index,\n type: 'pointLabel'\n });\n}\nclass RadialLinearScale extends LinearScaleBase {\n constructor(cfg) {\n super(cfg);\n this.xCenter = undefined;\n this.yCenter = undefined;\n this.drawingArea = undefined;\n this._pointLabels = [];\n this._pointLabelItems = [];\n }\n setDimensions() {\n const padding = this._padding = toPadding(getTickBackdropHeight(this.options) / 2);\n const w = this.width = this.maxWidth - padding.width;\n const h = this.height = this.maxHeight - padding.height;\n this.xCenter = Math.floor(this.left + w / 2 + padding.left);\n this.yCenter = Math.floor(this.top + h / 2 + padding.top);\n this.drawingArea = Math.floor(Math.min(w, h) / 2);\n }\n determineDataLimits() {\n const {min, max} = this.getMinMax(false);\n this.min = isNumberFinite(min) && !isNaN(min) ? min : 0;\n this.max = isNumberFinite(max) && !isNaN(max) ? max : 0;\n this.handleTickRangeOptions();\n }\n computeTickLimit() {\n return Math.ceil(this.drawingArea / getTickBackdropHeight(this.options));\n }\n generateTickLabels(ticks) {\n LinearScaleBase.prototype.generateTickLabels.call(this, ticks);\n this._pointLabels = this.getLabels()\n .map((value, index) => {\n const label = callback(this.options.pointLabels.callback, [value, index], this);\n return label || label === 0 ? label : '';\n })\n .filter((v, i) => this.chart.getDataVisibility(i));\n }\n fit() {\n const opts = this.options;\n if (opts.display && opts.pointLabels.display) {\n fitWithPointLabels(this);\n } else {\n this.setCenterPoint(0, 0, 0, 0);\n }\n }\n setCenterPoint(leftMovement, rightMovement, topMovement, bottomMovement) {\n this.xCenter += Math.floor((leftMovement - rightMovement) / 2);\n this.yCenter += Math.floor((topMovement - bottomMovement) / 2);\n this.drawingArea -= Math.min(this.drawingArea / 2, Math.max(leftMovement, rightMovement, topMovement, bottomMovement));\n }\n getIndexAngle(index) {\n const angleMultiplier = TAU / (this._pointLabels.length || 1);\n const startAngle = this.options.startAngle || 0;\n return _normalizeAngle(index * angleMultiplier + toRadians(startAngle));\n }\n getDistanceFromCenterForValue(value) {\n if (isNullOrUndef(value)) {\n return NaN;\n }\n const scalingFactor = this.drawingArea / (this.max - this.min);\n if (this.options.reverse) {\n return (this.max - value) * scalingFactor;\n }\n return (value - this.min) * scalingFactor;\n }\n getValueForDistanceFromCenter(distance) {\n if (isNullOrUndef(distance)) {\n return NaN;\n }\n const scaledDistance = distance / (this.drawingArea / (this.max - this.min));\n return this.options.reverse ? this.max - scaledDistance : this.min + scaledDistance;\n }\n getPointLabelContext(index) {\n const pointLabels = this._pointLabels || [];\n if (index >= 0 && index < pointLabels.length) {\n const pointLabel = pointLabels[index];\n return createPointLabelContext(this.getContext(), index, pointLabel);\n }\n }\n getPointPosition(index, distanceFromCenter, additionalAngle = 0) {\n const angle = this.getIndexAngle(index) - HALF_PI + additionalAngle;\n return {\n x: Math.cos(angle) * distanceFromCenter + this.xCenter,\n y: Math.sin(angle) * distanceFromCenter + this.yCenter,\n angle\n };\n }\n getPointPositionForValue(index, value) {\n return this.getPointPosition(index, this.getDistanceFromCenterForValue(value));\n }\n getBasePosition(index) {\n return this.getPointPositionForValue(index || 0, this.getBaseValue());\n }\n getPointLabelPosition(index) {\n const {left, top, right, bottom} = this._pointLabelItems[index];\n return {\n left,\n top,\n right,\n bottom,\n };\n }\n drawBackground() {\n const {backgroundColor, grid: {circular}} = this.options;\n if (backgroundColor) {\n const ctx = this.ctx;\n ctx.save();\n ctx.beginPath();\n pathRadiusLine(this, this.getDistanceFromCenterForValue(this._endValue), circular, this._pointLabels.length);\n ctx.closePath();\n ctx.fillStyle = backgroundColor;\n ctx.fill();\n ctx.restore();\n }\n }\n drawGrid() {\n const ctx = this.ctx;\n const opts = this.options;\n const {angleLines, grid} = opts;\n const labelCount = this._pointLabels.length;\n let i, offset, position;\n if (opts.pointLabels.display) {\n drawPointLabels(this, labelCount);\n }\n if (grid.display) {\n this.ticks.forEach((tick, index) => {\n if (index !== 0) {\n offset = this.getDistanceFromCenterForValue(tick.value);\n const optsAtIndex = grid.setContext(this.getContext(index - 1));\n drawRadiusLine(this, optsAtIndex, offset, labelCount);\n }\n });\n }\n if (angleLines.display) {\n ctx.save();\n for (i = labelCount - 1; i >= 0; i--) {\n const optsAtIndex = angleLines.setContext(this.getPointLabelContext(i));\n const {color, lineWidth} = optsAtIndex;\n if (!lineWidth || !color) {\n continue;\n }\n ctx.lineWidth = lineWidth;\n ctx.strokeStyle = color;\n ctx.setLineDash(optsAtIndex.borderDash);\n ctx.lineDashOffset = optsAtIndex.borderDashOffset;\n offset = this.getDistanceFromCenterForValue(opts.ticks.reverse ? this.min : this.max);\n position = this.getPointPosition(i, offset);\n ctx.beginPath();\n ctx.moveTo(this.xCenter, this.yCenter);\n ctx.lineTo(position.x, position.y);\n ctx.stroke();\n }\n ctx.restore();\n }\n }\n drawBorder() {}\n drawLabels() {\n const ctx = this.ctx;\n const opts = this.options;\n const tickOpts = opts.ticks;\n if (!tickOpts.display) {\n return;\n }\n const startAngle = this.getIndexAngle(0);\n let offset, width;\n ctx.save();\n ctx.translate(this.xCenter, this.yCenter);\n ctx.rotate(startAngle);\n ctx.textAlign = 'center';\n ctx.textBaseline = 'middle';\n this.ticks.forEach((tick, index) => {\n if (index === 0 && !opts.reverse) {\n return;\n }\n const optsAtIndex = tickOpts.setContext(this.getContext(index));\n const tickFont = toFont(optsAtIndex.font);\n offset = this.getDistanceFromCenterForValue(this.ticks[index].value);\n if (optsAtIndex.showLabelBackdrop) {\n ctx.font = tickFont.string;\n width = ctx.measureText(tick.label).width;\n ctx.fillStyle = optsAtIndex.backdropColor;\n const padding = toPadding(optsAtIndex.backdropPadding);\n ctx.fillRect(\n -width / 2 - padding.left,\n -offset - tickFont.size / 2 - padding.top,\n width + padding.width,\n tickFont.size + padding.height\n );\n }\n renderText(ctx, tick.label, 0, -offset, tickFont, {\n color: optsAtIndex.color,\n });\n });\n ctx.restore();\n }\n drawTitle() {}\n}\nRadialLinearScale.id = 'radialLinear';\nRadialLinearScale.defaults = {\n display: true,\n animate: true,\n position: 'chartArea',\n angleLines: {\n display: true,\n lineWidth: 1,\n borderDash: [],\n borderDashOffset: 0.0\n },\n grid: {\n circular: false\n },\n startAngle: 0,\n ticks: {\n showLabelBackdrop: true,\n callback: Ticks.formatters.numeric\n },\n pointLabels: {\n backdropColor: undefined,\n backdropPadding: 2,\n display: true,\n font: {\n size: 10\n },\n callback(label) {\n return label;\n },\n padding: 5,\n centerPointLabels: false\n }\n};\nRadialLinearScale.defaultRoutes = {\n 'angleLines.color': 'borderColor',\n 'pointLabels.color': 'color',\n 'ticks.color': 'color'\n};\nRadialLinearScale.descriptors = {\n angleLines: {\n _fallback: 'grid'\n }\n};\n\nconst INTERVALS = {\n millisecond: {common: true, size: 1, steps: 1000},\n second: {common: true, size: 1000, steps: 60},\n minute: {common: true, size: 60000, steps: 60},\n hour: {common: true, size: 3600000, steps: 24},\n day: {common: true, size: 86400000, steps: 30},\n week: {common: false, size: 604800000, steps: 4},\n month: {common: true, size: 2.628e9, steps: 12},\n quarter: {common: false, size: 7.884e9, steps: 4},\n year: {common: true, size: 3.154e10}\n};\nconst UNITS = (Object.keys(INTERVALS));\nfunction sorter(a, b) {\n return a - b;\n}\nfunction parse(scale, input) {\n if (isNullOrUndef(input)) {\n return null;\n }\n const adapter = scale._adapter;\n const {parser, round, isoWeekday} = scale._parseOpts;\n let value = input;\n if (typeof parser === 'function') {\n value = parser(value);\n }\n if (!isNumberFinite(value)) {\n value = typeof parser === 'string'\n ? adapter.parse(value, parser)\n : adapter.parse(value);\n }\n if (value === null) {\n return null;\n }\n if (round) {\n value = round === 'week' && (isNumber(isoWeekday) || isoWeekday === true)\n ? adapter.startOf(value, 'isoWeek', isoWeekday)\n : adapter.startOf(value, round);\n }\n return +value;\n}\nfunction determineUnitForAutoTicks(minUnit, min, max, capacity) {\n const ilen = UNITS.length;\n for (let i = UNITS.indexOf(minUnit); i < ilen - 1; ++i) {\n const interval = INTERVALS[UNITS[i]];\n const factor = interval.steps ? interval.steps : Number.MAX_SAFE_INTEGER;\n if (interval.common && Math.ceil((max - min) / (factor * interval.size)) <= capacity) {\n return UNITS[i];\n }\n }\n return UNITS[ilen - 1];\n}\nfunction determineUnitForFormatting(scale, numTicks, minUnit, min, max) {\n for (let i = UNITS.length - 1; i >= UNITS.indexOf(minUnit); i--) {\n const unit = UNITS[i];\n if (INTERVALS[unit].common && scale._adapter.diff(max, min, unit) >= numTicks - 1) {\n return unit;\n }\n }\n return UNITS[minUnit ? UNITS.indexOf(minUnit) : 0];\n}\nfunction determineMajorUnit(unit) {\n for (let i = UNITS.indexOf(unit) + 1, ilen = UNITS.length; i < ilen; ++i) {\n if (INTERVALS[UNITS[i]].common) {\n return UNITS[i];\n }\n }\n}\nfunction addTick(ticks, time, timestamps) {\n if (!timestamps) {\n ticks[time] = true;\n } else if (timestamps.length) {\n const {lo, hi} = _lookup(timestamps, time);\n const timestamp = timestamps[lo] >= time ? timestamps[lo] : timestamps[hi];\n ticks[timestamp] = true;\n }\n}\nfunction setMajorTicks(scale, ticks, map, majorUnit) {\n const adapter = scale._adapter;\n const first = +adapter.startOf(ticks[0].value, majorUnit);\n const last = ticks[ticks.length - 1].value;\n let major, index;\n for (major = first; major <= last; major = +adapter.add(major, 1, majorUnit)) {\n index = map[major];\n if (index >= 0) {\n ticks[index].major = true;\n }\n }\n return ticks;\n}\nfunction ticksFromTimestamps(scale, values, majorUnit) {\n const ticks = [];\n const map = {};\n const ilen = values.length;\n let i, value;\n for (i = 0; i < ilen; ++i) {\n value = values[i];\n map[value] = i;\n ticks.push({\n value,\n major: false\n });\n }\n return (ilen === 0 || !majorUnit) ? ticks : setMajorTicks(scale, ticks, map, majorUnit);\n}\nclass TimeScale extends Scale {\n constructor(props) {\n super(props);\n this._cache = {\n data: [],\n labels: [],\n all: []\n };\n this._unit = 'day';\n this._majorUnit = undefined;\n this._offsets = {};\n this._normalized = false;\n this._parseOpts = undefined;\n }\n init(scaleOpts, opts) {\n const time = scaleOpts.time || (scaleOpts.time = {});\n const adapter = this._adapter = new adapters._date(scaleOpts.adapters.date);\n adapter.init(opts);\n mergeIf(time.displayFormats, adapter.formats());\n this._parseOpts = {\n parser: time.parser,\n round: time.round,\n isoWeekday: time.isoWeekday\n };\n super.init(scaleOpts);\n this._normalized = opts.normalized;\n }\n parse(raw, index) {\n if (raw === undefined) {\n return null;\n }\n return parse(this, raw);\n }\n beforeLayout() {\n super.beforeLayout();\n this._cache = {\n data: [],\n labels: [],\n all: []\n };\n }\n determineDataLimits() {\n const options = this.options;\n const adapter = this._adapter;\n const unit = options.time.unit || 'day';\n let {min, max, minDefined, maxDefined} = this.getUserBounds();\n function _applyBounds(bounds) {\n if (!minDefined && !isNaN(bounds.min)) {\n min = Math.min(min, bounds.min);\n }\n if (!maxDefined && !isNaN(bounds.max)) {\n max = Math.max(max, bounds.max);\n }\n }\n if (!minDefined || !maxDefined) {\n _applyBounds(this._getLabelBounds());\n if (options.bounds !== 'ticks' || options.ticks.source !== 'labels') {\n _applyBounds(this.getMinMax(false));\n }\n }\n min = isNumberFinite(min) && !isNaN(min) ? min : +adapter.startOf(Date.now(), unit);\n max = isNumberFinite(max) && !isNaN(max) ? max : +adapter.endOf(Date.now(), unit) + 1;\n this.min = Math.min(min, max - 1);\n this.max = Math.max(min + 1, max);\n }\n _getLabelBounds() {\n const arr = this.getLabelTimestamps();\n let min = Number.POSITIVE_INFINITY;\n let max = Number.NEGATIVE_INFINITY;\n if (arr.length) {\n min = arr[0];\n max = arr[arr.length - 1];\n }\n return {min, max};\n }\n buildTicks() {\n const options = this.options;\n const timeOpts = options.time;\n const tickOpts = options.ticks;\n const timestamps = tickOpts.source === 'labels' ? this.getLabelTimestamps() : this._generate();\n if (options.bounds === 'ticks' && timestamps.length) {\n this.min = this._userMin || timestamps[0];\n this.max = this._userMax || timestamps[timestamps.length - 1];\n }\n const min = this.min;\n const max = this.max;\n const ticks = _filterBetween(timestamps, min, max);\n this._unit = timeOpts.unit || (tickOpts.autoSkip\n ? determineUnitForAutoTicks(timeOpts.minUnit, this.min, this.max, this._getLabelCapacity(min))\n : determineUnitForFormatting(this, ticks.length, timeOpts.minUnit, this.min, this.max));\n this._majorUnit = !tickOpts.major.enabled || this._unit === 'year' ? undefined\n : determineMajorUnit(this._unit);\n this.initOffsets(timestamps);\n if (options.reverse) {\n ticks.reverse();\n }\n return ticksFromTimestamps(this, ticks, this._majorUnit);\n }\n afterAutoSkip() {\n if (this.options.offsetAfterAutoskip) {\n this.initOffsets(this.ticks.map(tick => +tick.value));\n }\n }\n initOffsets(timestamps) {\n let start = 0;\n let end = 0;\n let first, last;\n if (this.options.offset && timestamps.length) {\n first = this.getDecimalForValue(timestamps[0]);\n if (timestamps.length === 1) {\n start = 1 - first;\n } else {\n start = (this.getDecimalForValue(timestamps[1]) - first) / 2;\n }\n last = this.getDecimalForValue(timestamps[timestamps.length - 1]);\n if (timestamps.length === 1) {\n end = last;\n } else {\n end = (last - this.getDecimalForValue(timestamps[timestamps.length - 2])) / 2;\n }\n }\n const limit = timestamps.length < 3 ? 0.5 : 0.25;\n start = _limitValue(start, 0, limit);\n end = _limitValue(end, 0, limit);\n this._offsets = {start, end, factor: 1 / (start + 1 + end)};\n }\n _generate() {\n const adapter = this._adapter;\n const min = this.min;\n const max = this.max;\n const options = this.options;\n const timeOpts = options.time;\n const minor = timeOpts.unit || determineUnitForAutoTicks(timeOpts.minUnit, min, max, this._getLabelCapacity(min));\n const stepSize = valueOrDefault(timeOpts.stepSize, 1);\n const weekday = minor === 'week' ? timeOpts.isoWeekday : false;\n const hasWeekday = isNumber(weekday) || weekday === true;\n const ticks = {};\n let first = min;\n let time, count;\n if (hasWeekday) {\n first = +adapter.startOf(first, 'isoWeek', weekday);\n }\n first = +adapter.startOf(first, hasWeekday ? 'day' : minor);\n if (adapter.diff(max, min, minor) > 100000 * stepSize) {\n throw new Error(min + ' and ' + max + ' are too far apart with stepSize of ' + stepSize + ' ' + minor);\n }\n const timestamps = options.ticks.source === 'data' && this.getDataTimestamps();\n for (time = first, count = 0; time < max; time = +adapter.add(time, stepSize, minor), count++) {\n addTick(ticks, time, timestamps);\n }\n if (time === max || options.bounds === 'ticks' || count === 1) {\n addTick(ticks, time, timestamps);\n }\n return Object.keys(ticks).sort((a, b) => a - b).map(x => +x);\n }\n getLabelForValue(value) {\n const adapter = this._adapter;\n const timeOpts = this.options.time;\n if (timeOpts.tooltipFormat) {\n return adapter.format(value, timeOpts.tooltipFormat);\n }\n return adapter.format(value, timeOpts.displayFormats.datetime);\n }\n _tickFormatFunction(time, index, ticks, format) {\n const options = this.options;\n const formats = options.time.displayFormats;\n const unit = this._unit;\n const majorUnit = this._majorUnit;\n const minorFormat = unit && formats[unit];\n const majorFormat = majorUnit && formats[majorUnit];\n const tick = ticks[index];\n const major = majorUnit && majorFormat && tick && tick.major;\n const label = this._adapter.format(time, format || (major ? majorFormat : minorFormat));\n const formatter = options.ticks.callback;\n return formatter ? callback(formatter, [label, index, ticks], this) : label;\n }\n generateTickLabels(ticks) {\n let i, ilen, tick;\n for (i = 0, ilen = ticks.length; i < ilen; ++i) {\n tick = ticks[i];\n tick.label = this._tickFormatFunction(tick.value, i, ticks);\n }\n }\n getDecimalForValue(value) {\n return value === null ? NaN : (value - this.min) / (this.max - this.min);\n }\n getPixelForValue(value) {\n const offsets = this._offsets;\n const pos = this.getDecimalForValue(value);\n return this.getPixelForDecimal((offsets.start + pos) * offsets.factor);\n }\n getValueForPixel(pixel) {\n const offsets = this._offsets;\n const pos = this.getDecimalForPixel(pixel) / offsets.factor - offsets.end;\n return this.min + pos * (this.max - this.min);\n }\n _getLabelSize(label) {\n const ticksOpts = this.options.ticks;\n const tickLabelWidth = this.ctx.measureText(label).width;\n const angle = toRadians(this.isHorizontal() ? ticksOpts.maxRotation : ticksOpts.minRotation);\n const cosRotation = Math.cos(angle);\n const sinRotation = Math.sin(angle);\n const tickFontSize = this._resolveTickFontOptions(0).size;\n return {\n w: (tickLabelWidth * cosRotation) + (tickFontSize * sinRotation),\n h: (tickLabelWidth * sinRotation) + (tickFontSize * cosRotation)\n };\n }\n _getLabelCapacity(exampleTime) {\n const timeOpts = this.options.time;\n const displayFormats = timeOpts.displayFormats;\n const format = displayFormats[timeOpts.unit] || displayFormats.millisecond;\n const exampleLabel = this._tickFormatFunction(exampleTime, 0, ticksFromTimestamps(this, [exampleTime], this._majorUnit), format);\n const size = this._getLabelSize(exampleLabel);\n const capacity = Math.floor(this.isHorizontal() ? this.width / size.w : this.height / size.h) - 1;\n return capacity > 0 ? capacity : 1;\n }\n getDataTimestamps() {\n let timestamps = this._cache.data || [];\n let i, ilen;\n if (timestamps.length) {\n return timestamps;\n }\n const metas = this.getMatchingVisibleMetas();\n if (this._normalized && metas.length) {\n return (this._cache.data = metas[0].controller.getAllParsedValues(this));\n }\n for (i = 0, ilen = metas.length; i < ilen; ++i) {\n timestamps = timestamps.concat(metas[i].controller.getAllParsedValues(this));\n }\n return (this._cache.data = this.normalize(timestamps));\n }\n getLabelTimestamps() {\n const timestamps = this._cache.labels || [];\n let i, ilen;\n if (timestamps.length) {\n return timestamps;\n }\n const labels = this.getLabels();\n for (i = 0, ilen = labels.length; i < ilen; ++i) {\n timestamps.push(parse(this, labels[i]));\n }\n return (this._cache.labels = this._normalized ? timestamps : this.normalize(timestamps));\n }\n normalize(values) {\n return _arrayUnique(values.sort(sorter));\n }\n}\nTimeScale.id = 'time';\nTimeScale.defaults = {\n bounds: 'data',\n adapters: {},\n time: {\n parser: false,\n unit: false,\n round: false,\n isoWeekday: false,\n minUnit: 'millisecond',\n displayFormats: {}\n },\n ticks: {\n source: 'auto',\n major: {\n enabled: false\n }\n }\n};\n\nfunction interpolate(table, val, reverse) {\n let lo = 0;\n let hi = table.length - 1;\n let prevSource, nextSource, prevTarget, nextTarget;\n if (reverse) {\n if (val >= table[lo].pos && val <= table[hi].pos) {\n ({lo, hi} = _lookupByKey(table, 'pos', val));\n }\n ({pos: prevSource, time: prevTarget} = table[lo]);\n ({pos: nextSource, time: nextTarget} = table[hi]);\n } else {\n if (val >= table[lo].time && val <= table[hi].time) {\n ({lo, hi} = _lookupByKey(table, 'time', val));\n }\n ({time: prevSource, pos: prevTarget} = table[lo]);\n ({time: nextSource, pos: nextTarget} = table[hi]);\n }\n const span = nextSource - prevSource;\n return span ? prevTarget + (nextTarget - prevTarget) * (val - prevSource) / span : prevTarget;\n}\nclass TimeSeriesScale extends TimeScale {\n constructor(props) {\n super(props);\n this._table = [];\n this._minPos = undefined;\n this._tableRange = undefined;\n }\n initOffsets() {\n const timestamps = this._getTimestampsForTable();\n const table = this._table = this.buildLookupTable(timestamps);\n this._minPos = interpolate(table, this.min);\n this._tableRange = interpolate(table, this.max) - this._minPos;\n super.initOffsets(timestamps);\n }\n buildLookupTable(timestamps) {\n const {min, max} = this;\n const items = [];\n const table = [];\n let i, ilen, prev, curr, next;\n for (i = 0, ilen = timestamps.length; i < ilen; ++i) {\n curr = timestamps[i];\n if (curr >= min && curr <= max) {\n items.push(curr);\n }\n }\n if (items.length < 2) {\n return [\n {time: min, pos: 0},\n {time: max, pos: 1}\n ];\n }\n for (i = 0, ilen = items.length; i < ilen; ++i) {\n next = items[i + 1];\n prev = items[i - 1];\n curr = items[i];\n if (Math.round((next + prev) / 2) !== curr) {\n table.push({time: curr, pos: i / (ilen - 1)});\n }\n }\n return table;\n }\n _getTimestampsForTable() {\n let timestamps = this._cache.all || [];\n if (timestamps.length) {\n return timestamps;\n }\n const data = this.getDataTimestamps();\n const label = this.getLabelTimestamps();\n if (data.length && label.length) {\n timestamps = this.normalize(data.concat(label));\n } else {\n timestamps = data.length ? data : label;\n }\n timestamps = this._cache.all = timestamps;\n return timestamps;\n }\n getDecimalForValue(value) {\n return (interpolate(this._table, value) - this._minPos) / this._tableRange;\n }\n getValueForPixel(pixel) {\n const offsets = this._offsets;\n const decimal = this.getDecimalForPixel(pixel) / offsets.factor - offsets.end;\n return interpolate(this._table, decimal * this._tableRange + this._minPos, true);\n }\n}\nTimeSeriesScale.id = 'timeseries';\nTimeSeriesScale.defaults = TimeScale.defaults;\n\nvar scales = /*#__PURE__*/Object.freeze({\n__proto__: null,\nCategoryScale: CategoryScale,\nLinearScale: LinearScale,\nLogarithmicScale: LogarithmicScale,\nRadialLinearScale: RadialLinearScale,\nTimeScale: TimeScale,\nTimeSeriesScale: TimeSeriesScale\n});\n\nconst registerables = [\n controllers,\n elements,\n plugins,\n scales,\n];\n\nexport { Animation, Animations, ArcElement, BarController, BarElement, BasePlatform, BasicPlatform, BubbleController, CategoryScale, Chart, DatasetController, plugin_decimation as Decimation, DomPlatform, DoughnutController, Element, index as Filler, Interaction, plugin_legend as Legend, LineController, LineElement, LinearScale, LogarithmicScale, PieController, PointElement, PolarAreaController, RadarController, RadialLinearScale, Scale, ScatterController, plugin_subtitle as SubTitle, Ticks, TimeScale, TimeSeriesScale, plugin_title as Title, plugin_tooltip as Tooltip, adapters as _adapters, _detectPlatform, animator, controllers, elements, layouts, plugins, registerables, registry, scales };\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","// startup\n// Load entry module and return exports\n// This entry module is referenced by other modules so it can't be inlined\nvar __webpack_exports__ = __webpack_require__(608);\n"],"names":["root","factory","exports","module","define","amd","this","message","InvalidDataException","average","mutableSetOf","blocks","block","title","lines","lineIndex","line","isHumanLine","shouldSkip","parseGenericTitle","textNumberLine","a","blockRows","BlockRow","valuesMap","key","focusGroups","sorted","toList","first","blockRow","originalValueOrder","currentValueOrder","values","keyLengthMap","checkDataIntegrity","createChartTitle","benchmarkResults","BenchmarkResult","chartTitle","focusGroup","Pair","result","getPositionText","listOf","toMap","newBenchmarkResult","focus","parseMultiLineGenericInput","ResultContainer","index","isMachineLine","data","transformedList","valueMap","it","toSet","flatten","chartNames","c","chartName","charts","dataSets","ChartsBundle","parseGroupMap","isGeneric","println","titles","mutableListOf","lineColors","randomRgb","newColor","placeholder","rows","textInput","isBlank","type","marginTop","marginLeft","legend","label","borderColor","borderWidth","labels","chartLabels","datasets","plugins","y","scales","onClick","elements","element","datasetIndex","Chart","width","maxWidth","height","maxHeight","fontSize","selected","marginBottom","savedBenchmarks","savedBenchmark","disabled","marginRight","Date","getMilliseconds","lazy","document","createElement","selector","summaries","summary","avgOfCount","blockName","badgeClass","postfix","fontWeight","ElementBuilderImplementation","testName","HomeViewModel","BenchmarkRepoImpl","FormRepoImpl","newTestName","chunked","paddingLeft","paddingRight","paddingBottom","chart","contains","updateSummary","chartsBundle","blockNames","emptyList","blockNameOuter","blockNameInner","greenSum","redSum","node","newAggSums","AggSummary","calcAggSummary","inputType","min","toGenericChart","newCharts","onChartsBundleUpdated","firstOrNull","currentTestName","toCharts","printStackTrace","reset","mutableStateListOf","FormData","refreshBenchmarks","isGenericInput","form","parseGenericInput","isTestName","findMetricKeyOrNull","metricName","InvalidBenchmarkDataException","parseTitle","setOf","iLine","match","lastOrNull","number","TextNumberLine","destroy","cloneNode","setTimeout","delay","filterOutAndroidJunkLog","unfilteredForm","window","prompt","bName","alert","SavedBenchmarkNode","formData","newList","savedBenchmarkNode","newForm","confirm","deletedBenchmarkNode","newBlockName","localStorage","getItem","savedBenchmarksString","SavedBenchmarks","setItem","removeAll","toString","toBoolean","isTestNameDetectionEnabled","selectedBlockNameOne","selectedBlockNameTwo","words","word","toFloatArray","array","newArray","i","segments","combinedMap","g","before","after","diff","summaryNodes","SummaryNode","emoji","segment","percDiff","resultWord","symbol","metricConfig","Summary","register","ArcElement","LineElement","BarElement","PointElement","BarController","BubbleController","DoughnutController","LineController","PieController","PolarAreaController","RadarController","ScatterController","CategoryScale","LinearScale","LogarithmicScale","RadialLinearScale","TimeScale","TimeSeriesScale","Decimation","Filler","Legend","Title","Tooltip","SubTitle","noop","uid","id","isNullOrUndef","value","isArray","Array","Object","prototype","call","slice","isObject","isNumberFinite","Number","isFinite","finiteOrDefault","defaultValue","valueOrDefault","toDimension","dimension","endsWith","parseFloat","callback","fn","args","thisArg","apply","each","loopable","reverse","len","keys","length","_elementsEqual","a0","a1","ilen","v0","v1","clone$1","source","map","target","create","klen","k","isValidKey","indexOf","_merger","options","tval","sval","merge","sources","merger","mergeIf","_mergerIf","hasOwnProperty","keyResolvers","v","x","o","resolveObjectKey","obj","resolver","parts","split","tmp","part","push","_splitKey","_getKeyResolver","_capitalize","str","charAt","toUpperCase","defined","isFunction","setsEqual","b","size","item","has","PI","Math","TAU","PITAU","INFINITY","POSITIVE_INFINITY","RAD_PER_DEG","HALF_PI","QUARTER_PI","TWO_THIRDS_PI","log10","sign","niceNum","range","roundedRange","round","almostEquals","niceRange","pow","floor","fraction","isNumber","n","isNaN","epsilon","abs","_setMinAndMaxByKey","property","max","toRadians","degrees","toDegrees","radians","_decimalPlaces","e","p","getAngleFromPoint","centrePoint","anglePoint","distanceFromXCenter","distanceFromYCenter","radialDistanceFromCenter","sqrt","angle","atan2","distance","distanceBetweenPoints","pt1","pt2","_angleDiff","_normalizeAngle","_angleBetween","start","end","sameAngleIsFullCircle","s","angleToStart","angleToEnd","startToAngle","endToAngle","_limitValue","_isBetween","_lookup","table","cmp","mid","hi","lo","_lookupByKey","last","_rlookupByKey","arrayEvents","unlistenArrayEvents","listener","stub","_chartjs","listeners","splice","forEach","_arrayUnique","items","set","Set","add","from","requestAnimFrame","requestAnimationFrame","throttled","updateFn","updateArgs","ticking","rest","_toLeftRightCenter","align","_alignStartEnd","_getStartAndCountOfVisiblePoints","meta","points","animationsDisabled","pointCount","count","_sorted","iScale","_parsed","axis","minDefined","maxDefined","getUserBounds","getPixelForValue","_scaleRangesChanged","xScale","yScale","_scaleRanges","newRanges","xmin","xmax","ymin","ymax","changed","assign","atEdge","t","elasticIn","sin","elasticOut","effects","linear","easeInQuad","easeOutQuad","easeInOutQuad","easeInCubic","easeOutCubic","easeInOutCubic","easeInQuart","easeOutQuart","easeInOutQuart","easeInQuint","easeOutQuint","easeInOutQuint","easeInSine","cos","easeOutSine","easeInOutSine","easeInExpo","easeOutExpo","easeInOutExpo","easeInCirc","easeOutCirc","easeInOutCirc","easeInElastic","easeOutElastic","easeInOutElastic","easeInBack","easeOutBack","easeInOutBack","easeInBounce","easeOutBounce","m","d","easeInOutBounce","lim","l","h","p2b","n2b","b2n","n2p","map$1","A","B","C","D","E","F","f","hex","h1","h2","eq","HUE_RE","hsl2rgbn","hsv2rgbn","hwb2rgbn","w","rgb","rgb2hsl","r","hueValue","calln","hsl2rgb","hue","Z","Y","X","W","V","U","T","S","R","Q","P","O","N","M","L","K","G","H","I","J","names$1","OiceXe","antiquewEte","aqua","aquamarRe","azuY","beige","bisque","black","blanKedOmond","Xe","XeviTet","bPwn","burlywood","caMtXe","KartYuse","KocTate","cSO","cSnflowerXe","cSnsilk","crimson","cyan","xXe","xcyan","xgTMnPd","xWay","xgYF","xgYy","xkhaki","xmagFta","xTivegYF","xSange","xScEd","xYd","xsOmon","xsHgYF","xUXe","xUWay","xUgYy","xQe","xviTet","dAppRk","dApskyXe","dimWay","dimgYy","dodgerXe","fiYbrick","flSOwEte","foYstWAn","fuKsia","gaRsbSo","ghostwEte","gTd","gTMnPd","Way","gYF","gYFLw","gYy","honeyMw","hotpRk","RdianYd","Rdigo","ivSy","khaki","lavFMr","lavFMrXsh","lawngYF","NmoncEffon","ZXe","ZcSO","Zcyan","ZgTMnPdLw","ZWay","ZgYF","ZgYy","ZpRk","ZsOmon","ZsHgYF","ZskyXe","ZUWay","ZUgYy","ZstAlXe","ZLw","lime","limegYF","lRF","magFta","maPon","VaquamarRe","VXe","VScEd","VpurpN","VsHgYF","VUXe","VsprRggYF","VQe","VviTetYd","midnightXe","mRtcYam","mistyPse","moccasR","navajowEte","navy","Tdlace","Tive","TivedBb","Sange","SangeYd","ScEd","pOegTMnPd","pOegYF","pOeQe","pOeviTetYd","papayawEp","pHKpuff","peru","pRk","plum","powMrXe","purpN","YbeccapurpN","Yd","Psybrown","PyOXe","saddNbPwn","sOmon","sandybPwn","sHgYF","sHshell","siFna","silver","skyXe","UXe","UWay","UgYy","snow","sprRggYF","stAlXe","tan","teO","tEstN","tomato","Qe","viTet","JHt","wEte","wEtesmoke","Lw","LwgYF","names","RGB_RE","to","modHSL","ratio","clone","proto","fromObject","input","functionParse","exec","rgbParse","p1","p2","hwb2rgb","hsv2rgb","hueParse","Color","constructor","ret","unpacked","tkeys","j","ok","nk","replace","parseInt","unpack","transparent","toLowerCase","nameParse","_rgb","_valid","valid","rgbString","undefined","hexString","isShort","alpha","hslString","mix","color","weight","c1","c2","w2","w1","interpolate","rgb1","rgb2","clearer","greyscale","val","opaquer","negate","lighten","darken","saturate","desaturate","rotate","deg","index_esm","isPatternOrGradient","getHoverColor","overrides","descriptors","getScope$1","scope","defaults","_descriptors","animation","backgroundColor","devicePixelRatio","context","platform","getDevicePixelRatio","events","font","family","style","lineHeight","hover","hoverBackgroundColor","ctx","hoverBorderColor","hoverColor","indexAxis","interaction","mode","intersect","includeInvisible","maintainAspectRatio","onHover","parsing","responsive","scale","showLine","drawActiveElementsOnTop","describe","get","override","route","name","targetScope","targetName","scopeObject","targetScopeObject","privateName","defineProperties","writable","enumerable","local","_scriptable","startsWith","_indexable","_fallback","_measureText","gc","longest","string","textWidth","measureText","_longestText","arrayOfThings","cache","garbageCollect","save","jlen","thing","nestedThing","restore","gcLen","_alignPixel","pixel","currentDevicePixelRatio","halfWidth","clearCanvas","canvas","getContext","resetTransform","clearRect","drawPoint","drawPointLegend","xOffset","yOffset","cornerRadius","pointStyle","rotation","radius","rad","translate","drawImage","beginPath","ellipse","arc","closePath","moveTo","lineTo","SQRT1_2","rect","fill","stroke","_isPointInArea","point","area","margin","left","right","top","bottom","clipArea","clip","unclipArea","_steppedLineTo","previous","flip","midpoint","_bezierCurveTo","bezierCurveTo","cp1x","cp2x","cp1y","cp2y","renderText","text","opts","strokeWidth","strokeColor","translation","fillStyle","textAlign","textBaseline","setRenderOpts","strokeStyle","lineWidth","strokeText","fillText","decorateText","strikethrough","underline","metrics","actualBoundingBoxLeft","actualBoundingBoxRight","actualBoundingBoxAscent","actualBoundingBoxDescent","yDecoration","decorationWidth","addRoundedRectPath","topLeft","bottomLeft","bottomRight","topRight","LINE_HEIGHT","RegExp","FONT_STYLE","toLineHeight","matches","_readValueToProps","props","objProps","read","prop","toTRBL","toTRBLCorners","toPadding","toFont","fallback","console","warn","toFontString","resolve","inputs","info","cacheable","createContext","parentContext","_createResolver","scopes","prefixes","rootScopes","getTarget","_resolve","Symbol","toStringTag","_cacheable","_scopes","_rootScopes","_getTarget","Proxy","deleteProperty","_keys","_cached","proxy","prefix","readKey","needsSubResolver","createSubResolver","_resolveWithPrefixes","getOwnPropertyDescriptor","Reflect","getPrototypeOf","getKeysFromAllScopes","includes","ownKeys","storage","_storage","_attachContext","subProxy","descriptorDefaults","_proxy","_context","_subProxy","_stack","setContext","receiver","isScriptable","Error","join","delete","_resolveScriptable","isIndexable","arr","filter","_resolveArray","_resolveWithContext","allKeys","configurable","scriptable","indexable","_allKeys","resolveFallback","getScope","parent","addScopes","parentScopes","parentFallback","allScopes","addScopesFromKey","subGetTarget","resolveKeysFromAllScopes","_parseObjectDataRadialScale","_parsing","parsed","parse","EPSILON","getPoint","skip","getValueAxis","splineCurve","firstPoint","middlePoint","afterPoint","current","next","d01","d12","s01","s12","fa","fb","capControlPoint","pt","_updateBezierControlPoints","loop","controlPoints","spanGaps","cubicInterpolationMode","valueAxis","pointsLen","deltaK","mK","pointBefore","pointCurrent","pointAfter","slopeDelta","alphaK","betaK","tauK","squaredMagnitude","monotoneAdjust","delta","iPixel","vPixel","monotoneCompute","splineCurveMonotone","prev","tension","capBezierPoints","inArea","inAreaPrev","inAreaNext","_isDomSupported","_getParentNode","domNode","parentNode","host","parseMaxStyle","styleValue","parentProperty","valueInPixels","getComputedStyle","positions","getPositionedStyle","styles","suffix","pos","getRelativePosition","evt","borderBox","boxSizing","paddings","borders","box","touches","offsetX","offsetY","shadowRoot","useOffsetPos","getBoundingClientRect","clientX","clientY","getCanvasPosition","round1","retinaScale","forceRatio","forceStyle","pixelRatio","deviceHeight","deviceWidth","setTransform","supportsEventListenerOptions","passiveSupported","passive","addEventListener","removeEventListener","readUsedSize","el","getPropertyValue","getStyle","_pointInLine","_steppedInterpolation","_bezierInterpolation","cp1","cp2","intlCache","Map","formatNumber","num","locale","cacheKey","JSON","stringify","formatter","Intl","NumberFormat","getNumberFormat","format","getRtlAdapter","rtl","rectX","setWidth","xPlus","leftForLtr","itemWidth","getRightToLeftAdapter","_itemWidth","overrideTextDirection","direction","original","getPropertyPriority","setProperty","prevTextDirection","restoreTextDirection","propertyFn","between","compare","normalize","normalizeSegment","_boundSegment","bounds","startBound","endBound","getSegment","prevValue","inside","subStart","_boundSegments","sub","readStyle","borderCapStyle","borderDash","borderDashOffset","borderJoinStyle","styleChanged","prevStyle","animator","_request","_charts","_running","_lastDate","_notify","anims","date","callbacks","numSteps","duration","initial","currentStep","_refresh","_update","now","remaining","running","draw","_active","_total","tick","pop","_getAnims","complete","progress","listen","event","cb","reduce","acc","cur","_duration","stop","cancel","remove","interpolators","boolean","factor","c0","Animation","cfg","currentValue","_fn","_easing","easing","_start","_loop","_target","_prop","_from","_to","_promises","active","update","elapsed","remain","wait","promises","Promise","res","rej","resolved","method","animationOptions","colors","properties","numbers","resize","show","animations","visible","hide","Animations","config","_chart","_properties","configure","animatedProps","getOwnPropertyNames","option","_animateOptions","newOptions","$shared","$animations","resolveTargetOptions","_createAnimations","anim","all","awaitAll","then","scaleClip","allowedOverflow","getSortedDatasetIndices","filterVisible","metasets","_getSortedDatasetMetas","applyStack","stack","dsIndex","singleMode","otherValue","isStacked","stacked","getOrCreateStack","stacks","stackKey","indexValue","subStack","getLastIndexInStack","vScale","positive","getMatchingVisibleMetas","updateStacks","controller","_cachedMeta","_stacks","iAxis","vAxis","indexScale","valueScale","getStackKey","_top","_bottom","getFirstScaleId","shift","clearStacks","isDirectUpdateMode","cloneIfNotShared","cached","shared","DatasetController","_ctx","_cachedDataOpts","getMeta","_type","_data","_objectData","_sharedOptions","_drawStart","_drawCount","enableOptionSharing","supportsDecimation","$context","_syncList","initialize","linkScales","_stacked","addElements","updateIndex","dataset","getDataset","chooseId","xid","xAxisID","yid","yAxisID","rid","rAxisID","iid","iAxisID","vid","vAxisID","getScaleForId","rScale","getDatasetMeta","scaleID","_getOtherScale","_destroy","_dataCheck","adata","convertObjectDataToArray","isExtensible","defineProperty","base","object","datasetElementType","buildOrUpdateElements","resetNewElements","stackChanged","oldStacked","_resyncElements","scopeKeys","datasetScopeKeys","getOptionScopes","createResolver","parseArrayData","parseObjectData","parsePrimitiveData","isNotInOrderComparedToPrev","getLabels","singleScale","xAxisKey","yAxisKey","getParsed","getDataElement","updateRangeFromParsed","parsedValue","NaN","getMinMax","canStack","otherScale","hidden","createStack","NEGATIVE_INFINITY","otherMin","otherMax","_skip","getAllParsedValues","getMaxOverflow","getLabelAndValue","getLabelForValue","_clip","toClip","defaultClip","chartArea","resolveDatasetElementOptions","resolveDataElementOptions","dataIndex","raw","createDataContext","createDatasetContext","_resolveElementOptions","dataElementType","elementType","sharing","datasetElementScopeKeys","resolveNamedOptions","freeze","_resolveAnimations","transition","datasetAnimationScopeKeys","getSharedOptions","includeOptions","sharedOptions","_animationsDisabled","_getSharedOptions","firstOpts","previouslySharedOptions","updateSharedOptions","updateElement","_setStyle","removeHoverStyle","setHoverStyle","_removeDatasetHoverStyle","_setDatasetHoverStyle","arg1","arg2","numMeta","numData","_insertElements","_removeElements","move","updateElements","removed","_sync","_dataChanges","_onDataPush","arguments","_onDataPop","_onDataShift","_onDataSplice","newCount","_onDataUnshift","computeMinSampleSize","_cache","$bar","visibleMetas","concat","sort","getAllScaleValues","curr","_length","updateMinAndPrev","ticks","getPixelForTick","parseValue","entry","startValue","endValue","barStart","barEnd","_custom","parseFloatBar","parseArrayOrPrimitive","isFloatBar","custom","setBorderSkipped","edge","borderSkipped","horizontal","borderProps","enableBorderRadius","parseEdge","orig","v2","startEnd","setInflateAmount","inflateAmount","iAxisKey","vAxisKey","super","bars","getBasePixel","isHorizontal","ruler","_getRuler","vpixels","head","_calculateBarValuePixels","ipixels","_calculateBarIndexPixels","center","_getStacks","grouped","skipNull","_getStackCount","_getStackIndex","pixels","barThickness","_startPixel","_endPixel","stackCount","categoryPercentage","barPercentage","baseValue","minBarLength","actualBase","floating","getDataVisibility","barSign","startPixel","getPixelForDecimal","endPixel","halfGrid","getLineWidthForValue","maxBarThickness","Infinity","percent","chunk","computeFlexCategoryTraits","thickness","computeFitCategoryTraits","stackIndex","rects","_index_","offset","grid","_value_","beginAtZero","tooltip","innerRadius","outerRadius","getter","_getRotation","_getCircumference","circumference","_getRotationExtents","isDatasetVisible","arcs","spacing","getMaxBorderWidth","getMaxOffset","maxSize","cutout","chartWeight","_getRingWeight","ratioX","ratioY","startAngle","endAngle","startX","startY","endX","endY","calcMax","calcMin","maxX","maxY","minX","minY","getRatioAndOffset","maxRadius","radiusLength","_getVisibleDatasetWeightTotal","total","calculateTotal","_getRingWeightOffset","_circumference","animateRotate","calculateCircumference","animationOpts","centerX","centerY","animateScale","metaData","borderAlign","hoverBorderWidth","hoverOffset","ringWeightOffset","aspectRatio","generateLabels","legendItem","toggleDataVisibility","tooltipItem","dataLabel","formattedValue","_dataset","_datasetIndex","_decimated","animated","maxGapLength","directUpdate","prevParsed","nullData","border","lastPoint","updateControlPoints","bind","_updateRadius","minSize","cutoutPercentage","getVisibleDatasetCount","xCenter","yCenter","datasetStartAngle","getIndexAngle","defaultAngle","countVisibleElements","_computeAngle","getDistanceFromCenterForValue","angleLines","display","circular","pointLabels","_fullLoop","pointPosition","getPointPositionForValue","Element","tooltipPosition","useFinalPosition","getProps","hasValue","final","defaultRoutes","formatters","numeric","tickValue","notation","maxTick","calculateDelta","logDelta","numDecimal","minimumFractionDigits","maximumFractionDigits","logarithmic","Ticks","newTicks","majorStart","majorEnd","ceil","grace","drawBorder","drawOnChartArea","drawTicks","tickLength","tickWidth","tickColor","padding","minRotation","maxRotation","mirror","textStrokeWidth","textStrokeColor","autoSkip","autoSkipPadding","labelOffset","minor","major","crossAlign","showLabelBackdrop","backdropColor","backdropPadding","offsetFromEdge","sample","numItems","increment","getPixelForGridLine","offsetGridLines","validIndex","lineValue","getTickMarkLength","getTitleHeight","titleAlign","position","reverseAlign","Scale","_margins","paddingTop","labelRotation","_range","_gridLineItems","_labelItems","_labelSizes","_maxLength","_longestTextCache","_reversePixels","_userMax","_userMin","_suggestedMax","_suggestedMin","_ticksLength","_borderValue","_dataLimitsCached","init","suggestedMin","suggestedMax","metas","getPadding","getTicks","xLabels","yLabels","beforeLayout","beforeUpdate","margins","tickOpts","sampleSize","beforeSetDimensions","setDimensions","afterSetDimensions","beforeDataLimits","determineDataLimits","afterDataLimits","minmax","change","keepZero","_addGrace","beforeBuildTicks","buildTicks","afterBuildTicks","samplingEnabled","_convertTicksToLabels","beforeCalculateLabelRotation","calculateLabelRotation","afterCalculateLabelRotation","ticksLimit","maxTicksLimit","_tickSize","maxScale","maxChart","determineMaxTicks","majorIndices","enabled","getMajorIndices","numMajorIndices","skipMajors","evenMajorSpacing","getEvenSpacing","factors","_factorize","calculateSpacing","avgMajorSpacing","afterAutoSkip","beforeFit","fit","afterFit","afterUpdate","reversePixels","_alignToPixels","alignToPixels","_callHooks","notifyPlugins","beforeTickToLabelConversion","generateTickLabels","afterTickToLabelConversion","numTicks","maxLabelDiagonal","_isVisible","labelSizes","_getLabelSizes","maxLabelWidth","widest","maxLabelHeight","highest","asin","titleOpts","gridOpts","titleHeight","tickPadding","angleRadians","labelHeight","labelWidth","_calculatePadding","_handleMargins","isRotated","labelsBelowTicks","offsetLeft","offsetRight","isFullSize","fullSize","_computeLabelSizes","caches","widths","heights","tickFont","fontString","nestedLabel","widestLabelSize","highestLabelSize","_resolveTickFontOptions","valueAt","idx","getValueForPixel","decimal","getDecimalForPixel","getBaseValue","createTickContext","optionTicks","rot","_computeGridLineItems","ticksLength","tl","borderOpts","axisWidth","axisHalfWidth","alignBorderValue","borderValue","alignedLineValue","tx1","ty1","tx2","ty2","x1","y1","x2","y2","positionAxisID","limit","step","optsAtIndex","lineColor","tickBorderDash","tickBorderDashOffset","_computeLabelItems","tickAndPadding","hTickAndPadding","lineCount","textOffset","_getXAxisLabelAlignment","_getYAxisLabelAlignment","halfCount","backdrop","tickTextAlign","labelPadding","_computeLabelArea","drawBackground","fillRect","findIndex","drawGrid","drawLine","setLineDash","lineDashOffset","lastLineWidth","drawLabels","drawTitle","titleX","titleY","titleArgs","_layers","tz","z","gz","getSortedVisibleDatasetMetas","axisID","_maxDigits","TypedRegistry","isForType","isPrototypeOf","parentScope","isIChartComponent","itemDefaults","routes","propertyParts","sourceName","sourceScope","routeDefaults","registerDefaults","unregister","registry","controllers","_typedRegistries","_each","addControllers","addPlugins","addScales","getController","_get","getElement","getPlugin","getScale","removeControllers","removeElements","removePlugins","removeScales","typedRegistry","arg","reg","_getRegistryForType","_exec","itemReg","component","camelMethod","__proto__","DateAdapter","chartOptions","formats","timestamp","amount","unit","startOf","weekday","endOf","members","adapters","_date","binarySearch","metaset","lookupMethod","getRange","evaluateInteractionItems","handler","getIntersectItems","isPointInArea","inRange","getNearestItems","distanceMetric","useX","useY","deltaX","deltaY","getDistanceMetricForAxis","minDistance","getCenterPoint","getNearestCartesianItems","getNearestRadialItems","getAxisItems","rangeMethod","intersectsItem","Interaction","modes","nearest","STATIC_POSITIONS","filterByPosition","filterDynamicPositionByAxis","sortByWeight","getCombinedMax","maxPadding","updateMaxPadding","boxPadding","updateDims","params","layout","newWidth","outerWidth","newHeight","outerHeight","widthChanged","heightChanged","same","other","getMargins","marginForPositions","fitBoxes","boxes","refitBoxes","refit","setBoxDims","placeBoxes","userPadding","placed","stackWeight","autoPadding","layouts","addBox","removeBox","layoutItem","minPadding","availableWidth","availableHeight","layoutBoxes","wrapBoxes","wrap","centerHorizontal","centerVertical","leftAndTop","rightAndBottom","vertical","buildLayoutBoxes","verticalBoxes","horizontalBoxes","visibleVerticalBoxCount","vBoxMaxWidth","hBoxMaxHeight","buildStacks","setLayoutDims","updatePos","handleMaxPadding","BasePlatform","acquireContext","releaseContext","getMaximumSize","isAttached","updateConfig","BasicPlatform","EVENT_TYPES","touchstart","touchmove","touchend","pointerenter","pointerdown","pointermove","pointerup","pointerleave","pointerout","isNullOrEmpty","eventListenerOptions","removeListener","nodeListContains","nodeList","createAttachObserver","observer","MutationObserver","entries","trigger","addedNodes","removedNodes","observe","childList","subtree","createDetachObserver","drpListeningCharts","oldDevicePixelRatio","onWindowResize","dpr","createResizeObserver","container","clientWidth","ResizeObserver","contentRect","listenDevicePixelRatioChanges","releaseObserver","disconnect","unlistenDevicePixelRatioChanges","createProxyAndListen","native","fromNativeEvent","addListener","DomPlatform","renderHeight","getAttribute","renderWidth","displayWidth","displayHeight","initCanvas","removeAttribute","setAttribute","proxies","$proxies","attach","detach","bbWidth","bbHeight","containerSize","containerStyle","containerBorder","containerPadding","clientHeight","getContainerSize","isConnected","_detectPlatform","OffscreenCanvas","PluginService","_init","notify","hook","_createDescriptors","descriptor","plugin","cancelable","invalidate","_oldCache","_notifyStateChanges","localIds","allPlugins","getOpts","pluginOpts","createDescriptors","previousDescriptors","some","pluginScopeKeys","getIndexAxis","datasetDefaults","determineAxis","scaleOptions","initOptions","chartDefaults","configScales","chartIndexAxis","firstIDs","scaleConf","error","defaultId","getDefaultScaleIDFromAxis","defaultScaleOptions","defaultID","getAxisFromDefaultScaleID","mergeScaleConfig","initData","keyCache","keysCached","cachedKeys","generate","addIfFound","Config","_config","initConfig","_scopeCache","_resolverCache","clearCache","clear","datasetType","additionalOptionScopes","_cachedScopes","mainScope","resetCache","keyLists","chartOptionScopes","subPrefixes","getResolver","hasFunction","needContext","resolverCache","KNOWN_POSITIONS","positionIsHorizontal","compare2Level","l1","l2","onAnimationsComplete","onComplete","onAnimationProgress","onProgress","getCanvas","getElementById","instances","getChart","moveNumericKeys","intKey","userConfig","initialCanvas","existingChart","_options","_aspectRatio","_metasets","_lastEvent","_listeners","_responsiveListeners","_sortedMetasets","_plugins","_hiddenIndices","attached","_doResize","timeout","clearTimeout","debounce","resizeDelay","_initialize","bindEvents","_resizeBeforeDraw","_resize","newSize","newRatio","onResize","render","ensureScalesHaveIDs","axisOptions","buildOrUpdateScales","scaleOpts","updated","isRadial","dposition","dtype","scaleType","hasUpdated","_updateMetasets","_destroyDatasetMeta","_removeUnreferencedMetasets","buildOrUpdateControllers","newControllers","order","ControllerClass","_resetElements","animsDisabled","_updateScales","_checkEventBindings","_updateHiddenIndices","_minPadding","_updateLayout","_updateDatasets","_eventHandler","_updateHoverStyles","existingEvents","newEvents","unbindEvents","changes","_getUniformDataChanges","datasetCount","makeSet","changeSet","noArea","_idx","_updateDataset","layers","_drawDatasets","_drawDataset","useClip","getElementsAtEventForMode","setDatasetVisibility","_updateVisibility","_stop","toBase64Image","toDataURL","bindUserEvents","bindResponsiveEvents","_add","_remove","detached","updateHoverStyle","getActiveElements","setActiveElements","activeElements","lastActive","replay","hoverOptions","deactivated","activated","inChartArea","eventFilter","_handleEvent","_getActiveElements","isClick","_isClickEvent","lastEvent","determineLastEvent","invalidatePlugins","clipArc","pixelMargin","angleMargin","rThetaToXY","theta","pathArc","innerR","spacingOffset","avNogSpacingRadius","angleOffset","outerStart","outerEnd","innerStart","innerEnd","angleDelta","borderRadius","halfThickness","innerLimit","computeOuterLimit","outerArcLimit","parseBorderRadius$1","outerStartAdjustedRadius","outerEndAdjustedRadius","outerStartAdjustedAngle","outerEndAdjustedAngle","innerStartAdjustedRadius","innerEndAdjustedRadius","innerStartAdjustedAngle","innerEndAdjustedAngle","pCenter","p4","p8","outerStartX","outerStartY","outerEndX","outerEndY","version","fullCircles","chartX","chartY","rAdjust","betweenAngles","withinRadius","halfAngle","halfRadius","radiusOffset","drawArc","inner","lineJoin","drawFullCircleBorders","setStyle","lineCap","pathVars","paramsStart","paramsEnd","segmentStart","segmentEnd","outside","pathSegment","lineMethod","stepped","getLineMethod","fastPathSegment","prevX","lastY","avgX","countX","pointIndex","drawX","truncX","_getSegmentMethod","usePath2D","Path2D","_path","_points","_segments","_pointsUpdated","segmentOptions","findStartAndEnd","chartContext","baseStyle","addStyle","st","dir","p0","p0DataIndex","p1DataIndex","doSplitByStyles","splitByStyles","solidSegments","_computeSegments","_interpolate","_getInterpolationMethod","interpolated","segmentMethod","path","strokePathWithCache","strokePathDirect","inRange$1","hitRadius","mouseX","mouseY","inXRange","inYRange","hoverRadius","getBarBounds","bar","half","skipOrLimit","skipX","skipY","addNormalRectPath","inflateRect","refRect","outer","maxW","maxH","parseBorderWidth","maxR","enableBorder","parseBorderRadius","boundingRects","addRectPath","cleanDecimatedDataset","cleanDecimatedData","plugin_decimation","algorithm","beforeElementsUpdate","xAxis","decimated","getStartAndCountOfVisiblePointsSimplified","threshold","samples","bucketWidth","sampledIndex","endIndex","maxAreaPoint","maxArea","nextA","avgY","avgRangeStart","avgRangeEnd","avgRangeLength","rangeOffs","rangeTo","pointAx","pointAy","lttbDecimation","minIndex","maxIndex","startIndex","xMin","dx","lastIndex","intermediateIndex1","intermediateIndex2","minMaxDecimation","_getBounds","_findSegmentEnd","_getEdge","_createBoundaryLine","boundary","linePoints","_pointsFromSegments","_shouldApplyFill","_resolveTarget","propagate","visited","_decodeFill","fillOption","parseFillOption","firstCh","decodeTargetIndex","addPointsBelow","sourcePoint","linesBelow","postponed","findPoint","unshift","pointValue","firstValue","lastValue","simpleArc","_drawfill","getLineByIndex","sourcePoints","below","getLinesBelow","_buildStackLine","_getTargetValue","computeCircularBoundary","_getTargetPixel","computeLinearBoundary","computeBoundary","lineOpts","above","clipVertical","doFill","clipY","lineLoop","tpoints","targetSegments","tgt","subBounds","fillSources","fillSource","src","notShape","clipBounds","interpolatedLineTo","targetLoop","interpolatedPoint","afterDatasetsUpdate","_args","$filler","beforeDraw","drawTime","beforeDatasetsDraw","beforeDatasetDraw","getBoxSize","labelOpts","boxHeight","boxWidth","usePointStyle","pointStyleWidth","itemHeight","_added","legendHitBoxes","_hoveredItem","doughnutMode","legendItems","columnSizes","lineWidths","buildLabels","labelFont","_computeTitleHeight","_fitRows","_fitCols","hitboxes","totalHeight","row","heightLimit","totalWidth","currentColWidth","currentColHeight","col","adjustHitBoxes","rtlHelper","hitbox","_draw","defaultColor","fontColor","halfFontSize","cursor","textDirection","lineDash","drawOptions","SQRT2","yBoxTop","xBoxLeft","drawLegendBox","_textX","titleFont","titlePadding","topPaddingPlusHalfFontSize","_getLegendItemAt","hitBox","lh","handleEvent","onLeave","isListened","hoveredItem","sameItem","plugin_legend","_element","afterEvent","ci","_padding","textSize","_drawArgs","fontOpts","plugin_title","titleBlock","createTitle","WeakMap","plugin_subtitle","positioners","eventPosition","nearestElement","tp","pushOrConcat","toPush","splitNewlines","String","createTooltipItem","getTooltipSize","body","footer","bodyFont","footerFont","titleLineCount","footerLineCount","bodyLineItemCount","combinedBodyLength","bodyItem","beforeBody","afterBody","titleSpacing","titleMarginBottom","displayColors","bodySpacing","footerMarginTop","footerSpacing","widthPadding","maxLineWidth","determineXAlign","yAlign","chartWidth","xAlign","caret","caretSize","caretPadding","doesNotFitWithAlign","determineAlignment","determineYAlign","getBackgroundPoint","alignment","paddingAndSize","alignX","alignY","getAlignedX","getBeforeAfterBodyLines","overrideCallbacks","opacity","_eventPosition","_size","_cachedAnimations","_tooltipItems","dataPoints","caretX","caretY","labelColors","labelPointStyles","labelTextColors","tooltipItems","getTitle","beforeTitle","afterTitle","getBeforeBody","getBody","bodyItems","scoped","beforeLabel","afterLabel","getAfterBody","getFooter","beforeFooter","afterFooter","_createItems","itemSort","labelColor","labelPointStyle","labelTextColor","positionAndSize","backgroundPoint","external","drawCaret","tooltipPoint","caretPosition","getCaretPosition","x3","y3","ptX","ptY","titleColor","_drawColorBox","colorX","rtlColorX","yOffSet","colorY","multiKeyBackground","outerX","innerX","strokeRect","drawBody","bodyAlign","bodyLineHeight","xLinePadding","fillLineOfText","bodyAlignForCalculation","textColor","bodyColor","drawFooter","footerAlign","footerColor","tooltipSize","quadraticCurveTo","_updateAnimationTarget","animX","animY","_willRender","hasTooltipContent","globalAlpha","positionChanged","_positionChanged","_ignoreReplayEvents","plugin_tooltip","afterInit","afterDraw","labelCount","_startValue","_valueRange","_addedLabels","added","addedLabels","addIfString","lastIndexOf","findOrAddLabel","relativeLabelSize","minSpacing","LinearScaleBase","_endValue","handleTickRangeOptions","setMin","setMax","minSign","maxSign","MAX_SAFE_INTEGER","MIN_SAFE_INTEGER","getTickLimit","maxTicks","stepSize","computeTickLimit","generationOptions","dataRange","precision","maxDigits","includeBounds","maxSpaces","rmin","rmax","countDefined","niceMin","niceMax","numSpaces","rounded","almostWhole","decimalPlaces","generateTicks$1","isMajor","tickVal","_zero","exp","endExp","endSignificand","significand","lastTick","generateTicks","getTickBackdropHeight","determineLimits","updateLimits","limits","hLimits","vLimits","getTextAlignForAngle","yForAngle","pathRadiusLine","getPointPosition","drawingArea","_pointLabels","_pointLabelItems","valueCount","pointLabelOpts","additionalAngle","centerPointLabels","getPointLabelContext","plFont","setCenterPoint","extra","outerDistance","pointLabelPosition","buildPointLabelItems","fitWithPointLabels","leftMovement","rightMovement","topMovement","bottomMovement","scalingFactor","getValueForDistanceFromCenter","scaledDistance","pointLabel","createPointLabelContext","distanceFromCenter","getBasePosition","getPointLabelPosition","backdropLeft","backdropTop","backdropWidth","backdropHeight","drawPointLabels","gridLineOpts","drawRadiusLine","animate","INTERVALS","millisecond","common","steps","second","minute","hour","day","week","month","quarter","year","UNITS","sorter","adapter","_adapter","parser","isoWeekday","_parseOpts","determineUnitForAutoTicks","minUnit","capacity","interval","addTick","time","timestamps","ticksFromTimestamps","majorUnit","setMajorTicks","_unit","_majorUnit","_offsets","_normalized","displayFormats","normalized","_applyBounds","_getLabelBounds","getLabelTimestamps","timeOpts","_generate","_filterBetween","_getLabelCapacity","determineUnitForFormatting","determineMajorUnit","initOffsets","offsetAfterAutoskip","getDecimalForValue","hasWeekday","getDataTimestamps","tooltipFormat","datetime","_tickFormatFunction","minorFormat","majorFormat","offsets","_getLabelSize","ticksOpts","tickLabelWidth","cosRotation","sinRotation","tickFontSize","exampleTime","exampleLabel","prevSource","nextSource","prevTarget","nextTarget","span","_table","_minPos","_tableRange","_getTimestampsForTable","buildLookupTable","registerables","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","definition"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"benchart.js","mappings":"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","sources":["webpack://benchart/webpack/universalModuleDefinition","webpack://benchart/../../../../../Trace.common.kt","webpack://benchart/../../../../../AtomicFU.kt","webpack://benchart/../../../../../MonotonicFrameClock.kt","webpack://benchart/../../../../../Applier.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/collections/Collections.kt","webpack://benchart/../../../../../BroadcastFrameClock.kt","webpack://benchart/../../../../../Composer.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/collections/Iterators.kt","webpack://benchart/../../../../../InspectionTables.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/util/Standard.kt","webpack://benchart/../../../../../ListUtils.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/collections/Sets.kt","webpack://benchart/../../../../../SlotTable.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/collections/Maps.kt","webpack://benchart/../../../../../BitwiseOperators.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/common/src/generated/_Collections.kt","webpack://benchart/../../../../../Trace.kt","webpack://benchart/../../../../../IdentityArrayMap.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/comparisons/Comparisons.kt","webpack://benchart/../../../../../DerivedState.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/collections/MutableCollections.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/util/Preconditions.kt","webpack://benchart/../../../../../Composition.kt","webpack://benchart/../../../../../IdentityScopeMap.kt","webpack://benchart/../../../../../IdentityArraySet.kt","webpack://benchart/../../../../../Synchronization.kt","webpack://benchart/../../../../../CompositionContext.kt","webpack://benchart/../../../../../CompositionLocal.kt","webpack://benchart/../../../../../Effects.kt","webpack://benchart/../../../../../JoinedKey.kt","webpack://benchart/../../../../../MovableContent.kt","webpack://benchart/../../../../../OpaqueKey.kt","webpack://benchart/../../../../../RecomposeScopeImpl.kt","webpack://benchart/../../../../../Recomposer.kt","webpack://benchart/../../../../../Synchronized.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/util/Result.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/coroutines/Continuation.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/common/src/generated/_Sequences.kt","webpack://benchart/../../../../../runtime/coroutineInternalJS.kt","webpack://benchart/../../../../../Snapshot.kt","webpack://benchart/../../../../../extensions.kt","webpack://benchart/../../../../../src/generated/_ArraysJs.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/dynamic.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/math.kt","webpack://benchart/../../../../../builtins/Library.kt","webpack://benchart/../../../../../SnapshotMutationPolicy.kt","webpack://benchart/../../../../../SnapshotState.kt","webpack://benchart/../../../../../ActualJs.js.kt","webpack://benchart/../../../../../Stack.kt","webpack://benchart/../../../../../ValueHolders.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/util/Lazy.kt","webpack://benchart/../../../../../IdentityArrayIntMap.kt","webpack://benchart/../../../../../AbstractListIterator.kt","webpack://benchart/../../../../../AbstractPersistentList.kt","webpack://benchart/../../../../../BufferIterator.kt","webpack://benchart/../../../../../PersistentVector.kt","webpack://benchart/../../../../../PersistentVectorBuilder.kt","webpack://benchart/../../../../../runtime/kotlinHacks.kt","webpack://benchart/../../../../../PersistentVectorIterator.kt","webpack://benchart/../../../../../PersistentVectorMutableIterator.kt","webpack://benchart/../../../../../SmallPersistentVector.kt","webpack://benchart/../../../../../TrieIterator.kt","webpack://benchart/../../../../../Utils.kt","webpack://benchart/../../../../../PersistentHashMap.kt","webpack://benchart/../../../../../PersistentHashMapContentIterators.kt","webpack://benchart/../../../../../PersistentHashMapContentViews.kt","webpack://benchart/../../../../../TrieNode.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/util/HashCode.kt","webpack://benchart/../../../../../PersistentOrderedSet.kt","webpack://benchart/../../../../../PersistentOrderedSetIterator.kt","webpack://benchart/../../../../../ComposableLambda.kt","webpack://benchart/../../../../../SnapshotDoubleIndexHeap.kt","webpack://benchart/../../../../../SnapshotIdSet.kt","webpack://benchart/../../../../../SnapshotStateList.kt","webpack://benchart/../../../../../SnapshotStateMap.kt","webpack://benchart/../../../../../","webpack://benchart/../../../../../Composer.js.kt","webpack://benchart/../../../../../ComposableLambda.js.kt","webpack://benchart/../../../../../CancellableContinuation.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/common/src/generated/_Arrays.kt","webpack://benchart/../../../../../ListImplementation.kt","webpack://benchart/../../../../../ActualJsBrowser.js.kt","webpack://benchart/../../../../../Composables.kt","webpack://benchart/../../../../src/commonMain/kotlin/core/BenchmarkResult.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/text/Strings.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/common/src/generated/_Maps.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/text/regex/RegexExtensions.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/text/numberConversions.kt","webpack://benchart/../../../../src/commonMain/kotlin/core/ChartsTransformers.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/common/src/generated/_Ranges.kt","webpack://benchart/../../../../src/commonMain/kotlin/core/TextNumberLine.kt","webpack://benchart/../../../../src/commonMain/kotlin/model/Chart.kt","webpack://benchart/../../../../src/commonMain/kotlin/model/FormData.kt","webpack://benchart/../../../../src/jsMain/kotlin/components/AutoFormUi.kt","webpack://benchart/../../../../src/jsMain/kotlin/components/AutoGroupToggle.kt","webpack://benchart/../../../../src/jsMain/kotlin/components/ChartUi.kt","webpack://benchart/../../../../src/jsMain/kotlin/Utils.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/collections.kt","webpack://benchart/../../../../src/jsMain/kotlin/chartjs/Type.kt","webpack://benchart/../../../../src/jsMain/kotlin/components/EditableTitle.kt","webpack://benchart/../../../../src/jsMain/kotlin/components/Error.kt","webpack://benchart/../../../../src/jsMain/kotlin/components/FocusGroups.kt","webpack://benchart/../../../../src/jsMain/kotlin/components/Heading.kt","webpack://benchart/../../../../src/jsMain/kotlin/components/SavedBenchmarkNode.kt","webpack://benchart/../../../../src/jsMain/kotlin/components/SavedBenchmarksDropDown.kt","webpack://benchart/../../../../src/jsMain/kotlin/components/Summary.kt","webpack://benchart/../../../../src/jsMain/kotlin/components/TestNameDetectionToggle.kt","webpack://benchart/../../../../src/jsMain/kotlin/components/TestNames.kt","webpack://benchart/../../../../src/jsMain/kotlin/main.kt","webpack://benchart/../../../../src/jsMain/kotlin/page/home/HomePage.kt","webpack://benchart/../../../../src/jsMain/kotlin/page/home/HomeViewModel.kt","webpack://benchart/../../../../src/jsMain/kotlin/repo/BenchmarkRepo.kt","webpack://benchart/../../../../src/jsMain/kotlin/repo/FormRepo.kt","webpack://benchart/../../../../src/jsMain/kotlin/utils/DefaultValues.kt","webpack://benchart/../../../../src/jsMain/kotlin/utils/JsonUtils.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/text/string.kt","webpack://benchart/../../../../../SerialFormat.kt","webpack://benchart/../../../../../Serializers.kt","webpack://benchart/../../../../../Platform.common.kt","webpack://benchart/../../../../src/jsMain/kotlin/utils/SummaryUtils.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/coroutines/CoroutineContext.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/common/src/generated/_OneToManyTitlecaseMappings.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/text/Char.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/text/char.kt","webpack://benchart/../../../../../src/generated/_TitlecaseMappings.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/CharCode.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/collections/Sequences.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/common/src/generated/_Strings.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/collections/AbstractIterator.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/collections/AbstractList.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/collections/AbstractMap.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/collections/AbstractSet.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/collections/IndexedValue.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/collections/Iterables.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/collections/SequenceBuilder.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/collections/SlidingWindow.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/coroutines/CoroutineContextImpl.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/coroutines/intrinsics/Intrinsics.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/internal/progressionUtil.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/random/Random.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/random/XorWowRandom.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/ranges/PrimitiveRanges.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/ranges/ProgressionIterators.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/ranges/Progressions.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/text/Appendable.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/text/Indent.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/text/StringNumberConversions.kt","webpack://benchart/../../../../../runtime/long.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/text/stringsCode.kt","webpack://benchart/../../../../../runtime/noPackageHacks.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/time/Duration.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/text/StringBuilder.kt","webpack://benchart/../../../../../src/generated/_ComparisonsJs.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/time/DurationUnit.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/util/DeepRecursive.kt","webpack://benchart/../../../../../runtime/typeCheckUtils.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/util/Tuples.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/unsigned/src/kotlin/UByte.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/unsigned/src/kotlin/UByteArray.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/unsigned/src/kotlin/UInt.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/unsigned/src/kotlin/UIntArray.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/unsigned/src/kotlin/ULong.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/unsigned/src/kotlin/UnsignedUtils.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/unsigned/src/kotlin/ULongArray.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/unsigned/src/kotlin/UShort.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/unsigned/src/kotlin/UShortArray.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/unsigned/src/kotlin/UStrings.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/runtime/primitiveCompanionObjects.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/collections/ArraySorting.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/collections/AbstractMutableCollection.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/collections/AbstractMutableList.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/collections/AbstractMutableMap.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/collections/AbstractMutableSet.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/collections/ArrayList.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/collections/HashMap.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/collections/HashSet.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/collections/InternalHashCodeMap.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/collections/LinkedHashMap.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/collections/LinkedHashSet.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/console.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/coroutines/SafeContinuationJs.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/coroutines/cancellation/CancellationException.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/numbers.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/reflect/JsClass.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/reflect/KClassImpl.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/reflect/KTypeImpl.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/reflect/primitives.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/reflect/reflection.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/regexp.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/text/StringBuilderJs.kt","webpack://benchart/../../../../../src/generated/_WhitespaceChars.kt","webpack://benchart/../../../../../src/generated/_DigitChars.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/text/regex.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/throwableExtensions.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/time/DurationUnit.kt","webpack://benchart/../../../../../builtins/Char.kt","webpack://benchart/../../../../../builtins/Enum.kt","webpack://benchart/../../../../../runtime/arrays.kt","webpack://benchart/../../../../../runtime/bitUtils.kt","webpack://benchart/../../../../../runtime/charSequence.kt","webpack://benchart/../../../../../runtime/collectionsHacks.kt","webpack://benchart/../../../../../runtime/compareTo.kt","webpack://benchart/../../../../../runtime/coreRuntime.kt","webpack://benchart/../../../../../runtime/hacks.kt","webpack://benchart/../../../../../runtime/longjs.kt","webpack://benchart/../../../../../runtime/numberConversion.kt","webpack://benchart/../../../../../runtime/rangeTo.kt","webpack://benchart/../../../../../runtime/reflectRuntime.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/js.arrays/fill.kt","webpack://benchart/../../../../../src/generated/_CharCategories.kt","webpack://benchart/../../../../../src/generated/_LetterChars.kt","webpack://benchart/../../../../../src/generated/_OtherLowercaseChars.kt","webpack://benchart/../../../../../src/kotlin/coroutines_13/CoroutineImpl.kt","webpack://benchart/../../../../../src/kotlin/coroutines_13/IntrinsicsJs.kt","webpack://benchart/../../../../../src/kotlin/exceptions.kt","webpack://benchart/../../../../../src/kotlin/jsOperators.kt","webpack://benchart/../../../../../src/kotlin/text/numberConversions_js-ir.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/collections/AbstractCollection.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/collections/PrimitiveIterators.kt","webpack://benchart/../../../../../jsMainSources/core/builtins/src/kotlin/Unit.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/collections/EqualityComparator.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/collections/InternalMap.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/reflect/KTypeHelpers.kt","webpack://benchart/../../../../../src/kotlin/reflection_js-ir.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/collections/MapWithDefault.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/common/src/generated/_Sets.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/coroutines/ContinuationInterceptor.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/src/kotlin/ranges/Ranges.kt","webpack://benchart/../../../../../SerialDescriptor.kt","webpack://benchart/../../../../../Decoding.kt","webpack://benchart/../../../../../Encoding.kt","webpack://benchart/../../../../../PluginHelperInterfaces.kt","webpack://benchart/../../../../../PolymorphicSerializer.kt","webpack://benchart/../../../../../ContextAware.kt","webpack://benchart/../../../../../AbstractPolymorphicSerializer.kt","webpack://benchart/../../../../../SerializationExceptions.kt","webpack://benchart/../../../../../Platform.kt","webpack://benchart/../../../../../Primitives.kt","webpack://benchart/../../../../../BuiltinSerializers.kt","webpack://benchart/../../../../../SerializersCache.kt","webpack://benchart/../../../../../SerialDescriptors.kt","webpack://benchart/../../../../../SerialKinds.kt","webpack://benchart/../../../../../BuiltInSerializers.kt","webpack://benchart/../../../../../CollectionDescriptors.kt","webpack://benchart/../../../../../CollectionSerializers.kt","webpack://benchart/../../../../../ElementMarker.kt","webpack://benchart/../../../../../InlineClassDescriptor.kt","webpack://benchart/../../../../../NoOpEncoder.kt","webpack://benchart/../../../../../NullableSerializer.kt","webpack://benchart/../../../../../ObjectSerializer.kt","webpack://benchart/../../../../../PluginGeneratedSerialDescriptor.kt","webpack://benchart/../../../../../PrimitiveArraysSerializers.kt","webpack://benchart/../../../../../Tagged.kt","webpack://benchart/../../../../../Tuples.kt","webpack://benchart/../../../../../ValueClasses.kt","webpack://benchart/../../../../../SerializersModule.kt","webpack://benchart/../../../../../SerializersModuleBuilders.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/reflect/AssociatedObjects.kt","webpack://benchart/../../../../../AbstractDecoder.kt","webpack://benchart/../../../../../AbstractEncoder.kt","webpack://benchart/../../../../../commonMainSources/libraries/stdlib/common/src/generated/_UArrays.kt","webpack://benchart/../../../../../JsonInternalDependencies.kt","webpack://benchart/../../../../../PluginExceptions.kt","webpack://benchart/../../../../../SerializersModuleCollector.kt","webpack://benchart/../../../../../Json.kt","webpack://benchart/../../../../../JsonConfiguration.kt","webpack://benchart/../../../../../JsonElement.kt","webpack://benchart/../../../../../StringOps.kt","webpack://benchart/../../../../../JsonElementSerializers.kt","webpack://benchart/../../../../../Composers.kt","webpack://benchart/../../../../../JsonElementMarker.kt","webpack://benchart/../../../../../JsonExceptions.kt","webpack://benchart/../../../../../AbstractJsonLexer.kt","webpack://benchart/../../../../../JsonNamesMap.kt","webpack://benchart/../../../../../JsonPath.kt","webpack://benchart/../../../../../JsonStreams.kt","webpack://benchart/../../../../../StreamingJsonEncoder.kt","webpack://benchart/../../../../../JsonTreeReader.kt","webpack://benchart/../../../../../Polymorphic.kt","webpack://benchart/../../../../../TreeJsonEncoder.kt","webpack://benchart/../../../../../TreeJsonDecoder.kt","webpack://benchart/../../../../../PolymorphismValidator.kt","webpack://benchart/../../../../../SchemaCache.kt","webpack://benchart/../../../../../StreamingJsonDecoder.kt","webpack://benchart/../../../../../WriteMode.kt","webpack://benchart/../../../../../StringJsonLexer.kt","webpack://benchart/../../../../../JsonSchemaCache.kt","webpack://benchart/../../../../../JsonToStringWriter.kt","webpack://benchart/../../../../../createMapForCache.kt","webpack://benchart/../../../../../Job.kt","webpack://benchart/../../../../../AbstractCoroutine.kt","webpack://benchart/../../../../../Builders.common.kt","webpack://benchart/../../../../../CoroutineContext.kt","webpack://benchart/../../../../../DispatchedTask.kt","webpack://benchart/../../../../../CancellableContinuationImpl.kt","webpack://benchart/../../../../../CompletionHandler.kt","webpack://benchart/../../../../../AtomicFU.common.kt","webpack://benchart/../../../../../CompletionState.kt","webpack://benchart/../../../../../CoroutineDispatcher.kt","webpack://benchart/../../../../../CoroutineExceptionHandler.kt","webpack://benchart/../../../../../EventLoop.common.kt","webpack://benchart/../../../../../Exceptions.common.kt","webpack://benchart/../../../../../JobSupport.kt","webpack://benchart/../../../../../Concurrent.kt","webpack://benchart/../../../../../LinkedList.kt","webpack://benchart/../../../../../MainCoroutineDispatcher.kt","webpack://benchart/../../../../../Supervisor.kt","webpack://benchart/../../../../../Unconfined.kt","webpack://benchart/../../../../../StateFlow.kt","webpack://benchart/../../../../../AbstractSharedFlow.kt","webpack://benchart/../../../../../NullSurrogate.kt","webpack://benchart/../../../../../ArrayQueue.kt","webpack://benchart/../../../../../DispatchedContinuation.kt","webpack://benchart/../../../../../ThreadContext.kt","webpack://benchart/../../../../../Scopes.kt","webpack://benchart/../../../../../Symbol.kt","webpack://benchart/../../../../../Cancellable.kt","webpack://benchart/../../../../../Undispatched.kt","webpack://benchart/../../../../../Window.kt","webpack://benchart/../../../../../CoroutineExceptionHandlerImpl.kt","webpack://benchart/../../../../../Debug.kt","webpack://benchart/../../../../../Dispatchers.kt","webpack://benchart/../../../../../EventLoop.kt","webpack://benchart/../../../../../Exceptions.kt","webpack://benchart/../../../../../JSDispatcher.kt","webpack://benchart/../../../../../StackTraceRecovery.kt","webpack://benchart/../../../../../ThreadLocal.kt","webpack://benchart/../../../../../CoroutineStart.kt","webpack://benchart/../../../../../ProbesSupport.kt","webpack://benchart/../../../../../CompletionHandler.common.kt","webpack://benchart/../../../../../SchedulerTask.kt","webpack://benchart/../../../../../CoroutineScope.kt","webpack://benchart/../../../../../DomApplier.kt","webpack://benchart/../../../../../GlobalSnapshotManager.kt","webpack://benchart/../../../../../JsMicrotasksDispatcher.kt","webpack://benchart/../../../../../jsMainSources/libraries/stdlib/js/src/org.w3c/org.w3c.dom.kt","webpack://benchart/../../../../../renderComposable.kt","webpack://benchart/../../../../../Attrs.kt","webpack://benchart/../../../../../InternalControlledInputUtils.kt","webpack://benchart/../../../../../AttrsScope.kt","webpack://benchart/../../../../../EventsListenerScope.kt","webpack://benchart/../../../../../PredefinedAttrValues.kt","webpack://benchart/../../../../../SyntheticEventListener.kt","webpack://benchart/../../../../../InputAttrsScope.kt","webpack://benchart/../../../../../SelectAttrsScope.kt","webpack://benchart/../../../../../TextAreaAttrsScope.kt","webpack://benchart/../../../../../CSSUnits.kt","webpack://benchart/../../../../../StyleScope.kt","webpack://benchart/../../../../../Base.kt","webpack://benchart/../../../../../ElementScope.kt","webpack://benchart/../../../../../Elements.kt","webpack://benchart/../../../../../SyntheticChangeEvent.kt","webpack://benchart/../../../../../SyntheticEvent.kt","webpack://benchart/../../../../../SyntheticInputEvent.kt","webpack://benchart/../../../../../SyntheticMouseEvent.kt","webpack://benchart/../../../../../StylePropertyValue.kt","webpack://benchart/../../../../../text.kt","webpack://benchart/../../../../../box.kt","webpack://benchart/../../../../../margin.kt","webpack://benchart/../../../../../padding.kt","webpack://benchart/../../node_modules/chart.js/dist/chunks/helpers.segment.mjs","webpack://benchart/../../node_modules/chart.js/dist/chart.mjs","webpack://benchart/webpack/bootstrap","webpack://benchart/webpack/runtime/define property getters","webpack://benchart/webpack/runtime/hasOwnProperty shorthand","webpack://benchart/webpack/runtime/make namespace object","webpack://benchart/webpack/startup"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"benchart\"] = factory();\n\telse\n\t\troot[\"benchart\"] = factory();\n})(this, () => {\nreturn ",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,"package core\n\nimport model.FormData\n\nopen class InvalidDataException(message: String?) : Throwable(message)\nclass InvalidBenchmarkDataException(message: String?) : InvalidDataException(message)\nclass InvalidGenericDataException(message: String?) : InvalidDataException(message)\n\ndata class BlockRow(\n val title: String,\n val fullData: Map>\n) {\n val avgData: Map = fullData.mapValues { it.value.average().toFloat() }\n}\n\nenum class SupportedMetrics(\n val key: String,\n val emoji: String,\n val title: String\n) {\n Duration(\n emoji = \"⏱\",\n key = \"frameDurationCpuMs\",\n title = \"Duration Summary\"\n ),\n Overrun(\n emoji = \"🏃🏻‍♂️\",\n key = \"frameOverrunMs\",\n title = \"Overrun Summary\"\n ),\n InitialDisplay(\n emoji = \"🌘\",\n key = \"timeToInitialDisplayMs\",\n title = \"Initial Display Summary\"\n ),\n FullDisplay(\n emoji = \"🌕\",\n key = \"timeToFullDisplayMs\",\n title = \"Full Display Summary\"\n ),\n}\n\nenum class InputType {\n GENERIC,\n NORMAL_BENCHMARK\n}\n\ndata class ResultContainer(\n val inputType: InputType,\n val benchmarkResults: List,\n val focusGroups: Set\n)\n\ndata class BenchmarkResult(\n val title: String,\n val testName: String?,\n val blockRows: List\n) {\n companion object {\n const val FOCUS_GROUP_ALL = \"All\"\n private val metricKeys = SupportedMetrics.values().map { it.key }\n\n private val machineLineRegEx = \"^(Traces|${metricKeys.joinToString(separator = \"|\")}).+\".toRegex()\n private val titleStripRegEx = \"\\\\W+\".toRegex()\n private val genericTitleStripRegEx = \"\\\\W+\".toRegex()\n private val testNameRegex = \"[A-Z].*_[a-z].*\".toRegex()\n\n fun parse(form: FormData, focusGroup: String): ResultContainer? {\n\n val blocks = form.data\n .split(\"\\n\").joinToString(separator = \"\\n\") { it.trim() }\n .split(\"^\\\\s+\".toRegex(RegexOption.MULTILINE)).map { it.trim() }\n .filter { it.isNotBlank() }\n\n println(\"parsing input...\")\n if (blocks.isEmpty()) return null\n if (form.isGenericInput()) return parseGenericInput(blocks, focusGroup)\n\n println(\"parsing machine generated benchmark input...\")\n val benchmarkResults = mutableListOf()\n\n for ((index, block) in blocks.withIndex()) {\n println(\"block: '$block'\")\n val lines = block.split(\"\\n\").map { it.trim() }\n var title: String? = null\n var testName: String? = null\n val blockRows = mutableListOf()\n for (line in lines) {\n\n if (title == null && isHumanLine(line)) {\n title = line\n }\n\n if (form.isTestNameDetectionEnabled && isTestName(line)) {\n if (testName != null && blockRows.isNotEmpty()) {\n\n if (title == null) {\n title = \"benchmark $index $testName\"\n }\n\n // We already have an unsaved testData, so let's save it\n benchmarkResults.add(\n BenchmarkResult(\n title = title,\n testName = testName,\n blockRows = blockRows\n )\n )\n\n blockRows.clear()\n }\n\n testName = line\n }\n\n val metricName = line.findMetricKeyOrNull()\n println(\"QuickTag: BenchmarkResult:parse: metric name is $metricName\")\n if (metricName != null) {\n val isMetricAlreadyAdded = blockRows.find { it.title == metricName } != null\n if (isMetricAlreadyAdded) {\n throw InvalidBenchmarkDataException(\"Two $metricName found in block ${index + 1}. Expected only one\")\n }\n\n blockRows.add(\n BlockRow(\n title = metricName,\n fullData = parseValues(metricName, line).map { (key, value) ->\n key to listOf(value)\n }.toMap()\n )\n )\n }\n }\n\n if (title == null) {\n title = \"benchmark $index\"\n }\n\n title = parseTitle(title)\n\n if (blockRows.isNotEmpty()) {\n benchmarkResults.add(\n BenchmarkResult(\n title = title,\n testName = testName,\n blockRows = blockRows\n )\n )\n }\n }\n\n return ResultContainer(InputType.NORMAL_BENCHMARK, benchmarkResults, setOf(FOCUS_GROUP_ALL))\n }\n\n private fun parseGenericInput(\n blocks: List,\n focusGroup: String\n ): ResultContainer {\n val (focusGroups, benchmarkResults) = parseMultiLineGenericInput(blocks, focusGroup)\n return ResultContainer(\n InputType.GENERIC,\n benchmarkResults,\n focusGroups\n )\n }\n\n private fun createChartTitle(blockRows: MutableList): String {\n return blockRows.joinToString(separator = \" vs \") { it.title }\n }\n\n private fun parseMultiLineGenericInput(\n blocks: List,\n focusGroup: String\n ): Pair, List> {\n val benchmarkResults = mutableListOf()\n val blockRows = mutableListOf()\n val focusGroups = mutableSetOf(FOCUS_GROUP_ALL)\n for ((index, block) in blocks.withIndex()) {\n val lines = block.split(\"\\n\").map { it.trim() }\n var title: String? = null\n val valuesMap = mutableMapOf>()\n for ((lineIndex, line) in lines.withIndex()) {\n\n if (title == null && isHumanLine(line)) {\n title = line\n continue\n }\n\n if (line.shouldSkip()) {\n continue\n }\n\n val textNumberLine = TextNumberLine.parse(lineIndex, line) ?: continue\n val genericTitle = parseGenericTitle(textNumberLine.text)\n valuesMap.getOrPut(genericTitle) { mutableListOf() }.add(textNumberLine.number)\n }\n\n if (title == null) {\n title = \"benchmark $index\"\n }\n\n title = parseGenericTitle(title)\n\n blockRows.add(\n BlockRow(\n title = title,\n fullData = valuesMap\n )\n )\n }\n\n for (blockRow in blockRows) {\n for ((key, value) in blockRow.fullData) {\n if (value.size > 1) {\n focusGroups.add(key)\n }\n }\n }\n\n checkDataIntegrity(blockRows)\n\n val chartTitle = createChartTitle(blockRows)\n\n benchmarkResults.add(\n BenchmarkResult(\n title = chartTitle,\n testName = \"\",\n blockRows = blockRows\n )\n )\n\n return if (focusGroup == FOCUS_GROUP_ALL || focusGroup !in focusGroups) {\n Pair(focusGroups, benchmarkResults)\n } else {\n Pair(focusGroups, focus(benchmarkResults, focusGroup))\n }\n }\n\n private fun focus(benchmarkResults: List, focusGroup: String): List {\n val newBenchmarkResult = mutableListOf()\n for (result in benchmarkResults) {\n val blockRows = mutableListOf()\n for (blockRow in result.blockRows) {\n blockRows.add(\n BlockRow(\n title = blockRow.title,\n fullData = blockRow.fullData[focusGroup]?.mapIndexed { index, value ->\n Pair(getPositionText(index + 1), listOf(value))\n }?.toMap() ?: error(\"Invalid focus group '$focusGroup' for ${blockRow.title}\")\n )\n )\n }\n newBenchmarkResult.add(\n BenchmarkResult(\n title = \"$focusGroup - ${result.title}\",\n testName = result.testName,\n blockRows = blockRows\n )\n )\n }\n return newBenchmarkResult\n }\n\n private fun getPositionText(index: Int): String {\n val suffix = when {\n index % 100 in 11..13 -> \"th\"\n index % 10 == 1 -> \"st\"\n index % 10 == 2 -> \"nd\"\n index % 10 == 3 -> \"rd\"\n else -> \"th\"\n }\n return \"$index$suffix\"\n }\n\n\n private fun checkDataIntegrity(blockRows: List) {\n if (blockRows.size >= 2) {\n val originalValueOrder = blockRows.first().avgData.keys.toList().sorted()\n for ((index, blockRow) in blockRows.withIndex()) {\n if (index == 0) {\n continue\n }\n val currentValueOrder = blockRow.avgData.keys.toList().sorted()\n if (originalValueOrder != currentValueOrder) {\n error(\"Invalid order. Expected '$originalValueOrder', but found '$currentValueOrder'\")\n }\n }\n }\n\n val keyLengthMap = mutableMapOf()\n blockRows.forEach { blockRow ->\n blockRow.fullData.forEach { (key, values) ->\n if (keyLengthMap.containsKey(key) && keyLengthMap[key] != values.size) {\n error(\"Item count mismatch. For '$key', ${keyLengthMap[key]} rows expected, but found ${values.size} in '${blockRow.title}' block\")\n } else {\n keyLengthMap[key] = values.size\n }\n }\n }\n }\n\n\n private fun isTestName(line: String): Boolean {\n return testNameRegex.matches(line)\n }\n\n private fun parseTitle(title: String): String {\n return title\n .replace(titleStripRegEx, \" \")\n .replace(\"\\\\s{2,}\".toRegex(), \" \")\n .trim()\n }\n\n private fun parseGenericTitle(title: String): String {\n return title\n .replace(genericTitleStripRegEx, \" \")\n .replace(\"\\\\s{2,}\".toRegex(), \" \")\n .trim()\n }\n\n private fun isHumanLine(line: String): Boolean {\n return !isMachineLine(line)\n }\n\n private fun isMachineLine(line: String): Boolean {\n return line.matches(machineLineRegEx)\n }\n\n private fun parseValues(key: String, data: String): Map {\n if (!data.startsWith(key)) {\n error(\"Invalid $key.Expected to start with '$key' but found '$data'\")\n }\n\n val transformedList = data.replace(key, \"\")\n .replace(\"\\\\s+\".toRegex(), \" \")\n .split(\", \")\n // remove commas in numbers\n .map { it.replace(\",\", \"\").trim().split(\" \") }\n\n val valueMap = mutableMapOf()\n for (item in transformedList) {\n valueMap[item[0]] = item[1].toFloat()\n }\n return valueMap\n }\n\n\n private fun String.findMetricKeyOrNull(): String? {\n return metricKeys.find { this.startsWith(it) }\n }\n\n private fun String.shouldSkip(): Boolean {\n return this == \"startup type is: cold\" || this == \"startup type is: warm\" || this == \"startup type is: hot\"\n }\n }\n\n\n}\n\n\nprivate fun FormData.isGenericInput(): Boolean {\n return !this.data.contains(\n SupportedMetrics.values().joinToString(separator = \"|\", prefix = \"(\", postfix = \")\") { it.key }.toRegex()\n )\n}\n\n",null,null,null,null,"package core\n\nimport model.Chart\nimport model.ChartsBundle\n\n\nfun List.toCharts(): ChartsBundle {\n val chartNames = this\n .map { result ->\n result.blockRows.map { dataPoint ->\n dataPoint.title\n }\n }\n .flatten()\n .toSet()\n\n val charts = mutableListOf()\n for (chartName in chartNames) {\n // before1 -> {P50=40.5, P90=45.8, P95=60.4, P99=80.4}\n val dataSets = mutableMapOf>()\n for (item in this) {\n dataSets[item.title] = item.blockRows.find { it.title == chartName }?.avgData ?: emptyMap()\n }\n\n charts.add(\n Chart(\n emoji = SupportedMetrics.values().find { it.key == chartName }?.emoji ?: \"📊\",\n label = chartName, // frameDurationCpuMs, frameOverrunMs, etc\n dataSets = dataSets\n )\n )\n }\n\n val groupMap = parseGroupMap(this, isGeneric = false)\n return ChartsBundle(\n groupMap = groupMap,\n charts = charts\n )\n}\n\n\nfun List.toGenericChart(): ChartsBundle {\n // Generic chart will be always 1\n val result = this.first()\n\n val chart = Chart(\n emoji = \"📊\",\n label = result.title,\n dataSets = mutableMapOf>().apply {\n for(blockRow in result.blockRows){\n put(blockRow.title, blockRow.avgData)\n }\n },\n bsClass = \"col-lg-12\"\n )\n\n return ChartsBundle(\n groupMap = parseGroupMap(this, isGeneric = true),\n charts = listOf(\n chart\n )\n )\n}\n\n\ndata class GroupMap(\n val autoGroupMap: Map,\n val wordColorMap: Map\n)\n\nfun parseGroupMap(\n benchmarkResults: List,\n isGeneric : Boolean\n): GroupMap {\n val autoGroupMap = mutableMapOf()\n val titles = if(isGeneric){\n benchmarkResults.flatMap { it.blockRows.map { blockRow -> blockRow.title } }\n }else {\n benchmarkResults.map { it.title }\n }\n println(\"titles: $titles -> ${benchmarkResults.map { it.blockRows }}\")\n val wordColorMap = mutableMapOf()\n // TODO: Add more colors\n val lineColors = mutableListOf(\n \"rgba(255, 99, 132, 1)\",\n \"rgba(54, 162, 235, 1)\",\n \"rgba(255, 206, 86, 1)\",\n \"rgba(75, 192, 192, 1)\",\n \"rgba(153, 102, 255, 1)\",\n \"rgba(255, 159, 64, 1)\",\n )\n for (title in titles) {\n val firstWord = title.split(\" \")[0]\n val color = wordColorMap.getOrPut(firstWord) {\n\n if (lineColors.isEmpty()) {\n lineColors.add(\"rgba(${randomRgb()}, ${randomRgb()}, ${randomRgb()}, 1)\")\n }\n\n val newColor = lineColors.first()\n lineColors.remove(newColor)\n newColor\n }\n autoGroupMap[title] = color\n }\n return GroupMap(\n autoGroupMap = autoGroupMap,\n wordColorMap = wordColorMap\n ).also {\n println(\"groupMap: $it\")\n }\n}\n\nprivate fun randomRgb() = (0..255).random()\n",null,"package core\n\nprivate val digitRegex = \"\\\\d+(.\\\\d+)?\".toRegex()\n\ndata class TextNumberLine(\n val text: String,\n val number: Float\n) {\n companion object {\n private val AVGIZER_REGEX = \"\\\\(input count : .+\\\\)\\$\".toRegex()\n fun parse(index : Int, iLine: String): TextNumberLine? {\n // Quick support for https://theapache64.github.io/avgizer/\n val match = AVGIZER_REGEX.find(iLine)\n val line = if (match != null){\n iLine.replace(match.groupValues.first(), \"\")\n } else {\n iLine\n }\n\n val number = digitRegex.findAll(line)\n .lastOrNull()\n ?.groupValues\n ?.firstOrNull()\n ?: return null\n val numberIndex = line.lastIndexOf(number)\n val newLine = line.substring(0, numberIndex)\n return TextNumberLine(newLine, number.toFloat())\n }\n }\n}","package model\n\nimport core.GroupMap\n\ndata class ChartsBundle(\n val groupMap: GroupMap,\n val charts: List\n)\n\ndata class Chart(\n val emoji: String,\n val label: String,\n // eg format: (before1 -> map { p50 -> 20, p90 -> 30 })\n val dataSets: Map>,\n val bsClass : String = \"col-lg-6\"\n)\n\n\n\n","package model\n\ndata class FormData(\n val data: String,\n val isTestNameDetectionEnabled : Boolean,\n val isAutoGroupEnabled : Boolean\n)\n","package components\n\nimport androidx.compose.runtime.*\nimport kotlinx.browser.window\nimport model.FormData\nimport org.jetbrains.compose.web.attributes.*\nimport org.jetbrains.compose.web.css.marginTop\nimport org.jetbrains.compose.web.css.px\nimport org.jetbrains.compose.web.dom.*\n\n\n\n\n@Composable\nfun FormUi(\n form: FormData,\n shouldSelectUnsaved : Boolean,\n savedBenchmarks: List,\n onFormChanged: (form: FormData) -> Unit,\n onSaveClicked: (form: FormData) -> Unit,\n onSavedBenchmarkChanged: (key :String) -> Unit,\n onLoadBenchmarkClicked: (SavedBenchmarkNode) -> Unit,\n onDeleteBenchmarkClicked: (SavedBenchmarkNode) -> Unit,\n) {\n\n\n LaunchedEffect(Unit) {\n onFormChanged(form)\n }\n\n H3 {\n Text(\"⌨️ Input\")\n }\n\n Div {\n Form {\n\n key(\"inputForm\") {\n\n SavedBenchmarksDropDown(\n shouldSelectUnsaved = shouldSelectUnsaved,\n savedBenchmarks = savedBenchmarks,\n onSavedBenchmarkChanged =onSavedBenchmarkChanged,\n onLoadBenchmarkClicked = onLoadBenchmarkClicked,\n onDeleteBenchmarkClicked = onDeleteBenchmarkClicked\n )\n\n Div(\n attrs = {\n classes(\"form-group\")\n }\n ) {\n\n Label(\n forId = \"benchmark\",\n attrs = {\n classes(\"form-label\")\n }\n ) {\n Text(\"Benchmark :\")\n }\n\n TextArea(\n value = form.data\n ) {\n id(\"benchmark\")\n classes(\"form-control\")\n placeholder(value = \"Benchmark data\")\n rows(20)\n onInput { textInput ->\n onFormChanged(form.copy(data = textInput.value))\n }\n }\n }\n\n Button(\n attrs = {\n classes(\"btn\", \"btn-dark\", \"float-end\")\n style {\n marginTop(10.px)\n }\n if (form.data.isBlank()) {\n attr(\"disabled\", \"true\")\n }\n onClick {\n onSaveClicked(form)\n }\n type(ButtonType.Button)\n }\n ) {\n Text(\"💾 SAVE\")\n }\n }\n }\n }\n}\n","package components\n\nimport androidx.compose.runtime.Composable\nimport org.jetbrains.compose.web.attributes.ButtonType\nimport org.jetbrains.compose.web.attributes.type\nimport org.jetbrains.compose.web.css.marginLeft\nimport org.jetbrains.compose.web.css.px\nimport org.jetbrains.compose.web.dom.*\n\n@Composable\nfun AutoGroup(\n isEnabled: Boolean,\n onButtonClicked: () -> Unit\n) {\n Div(\n attrs = {\n classes(\"form-group\")\n style {\n marginLeft(10.px)\n }\n }\n ) {\n // 🖌 Color map\n\n Label(\n forId = \"colorMap\",\n attrs = {\n classes(\"form-label\")\n }\n ) {\n Text(\"Auto Group:\")\n }\n Br()\n Button(\n attrs = {\n id(\"colorMap\")\n classes(\"btn\", if (isEnabled) \"btn-success\" else \"btn-secondary\")\n onClick {\n onButtonClicked()\n }\n type(ButtonType.Button)\n }\n ) {\n Text(if (isEnabled) \"ON\" else \"OFF\")\n }\n }\n}","package components\n\nimport Chart\nimport androidx.compose.runtime.Composable\nimport androidx.compose.runtime.DisposableEffect\nimport chartjs.Type\nimport core.GroupMap\nimport jso\nimport org.jetbrains.compose.web.css.height\nimport org.jetbrains.compose.web.css.maxHeight\nimport org.jetbrains.compose.web.css.maxWidth\nimport org.jetbrains.compose.web.css.percent\nimport org.jetbrains.compose.web.css.px\nimport org.jetbrains.compose.web.css.width\nimport org.jetbrains.compose.web.dom.Canvas\nimport org.jetbrains.compose.web.dom.H3\nimport org.jetbrains.compose.web.dom.Text\n\n@Composable\nfun ChartUi(\n isColorMapEnabled: Boolean,\n groupMap: GroupMap,\n chartModel: model.Chart,\n onDotClicked : (focusGroup : String) -> Unit\n) {\n H3 { Text(\"${chartModel.emoji} ${chartModel.label}\") }\n\n // Charts\n Canvas(\n attrs = {\n style {\n width(100.percent)\n maxWidth(100.percent)\n\n height(700.px)\n maxHeight(700.px)\n }\n }\n ) {\n DisposableEffect(chartModel, isColorMapEnabled) {\n val dataSets = mutableListOf()\n for ((legend, values) in chartModel.dataSets) {\n\n dataSets.add(\n jso {\n label = legend\n data = values.values.toTypedArray()\n borderColor = if (isColorMapEnabled) {\n groupMap.autoGroupMap[label]\n } else {\n arrayOf(\n \"rgba(255, 99, 132, 1)\",\n \"rgba(54, 162, 235, 1)\",\n \"rgba(255, 206, 86, 1)\",\n \"rgba(75, 192, 192, 1)\",\n \"rgba(153, 102, 255, 1)\",\n \"rgba(255, 159, 64, 1)\"\n )\n }\n borderWidth = 3\n }\n )\n }\n val chart = Chart(scopeElement, jso {\n type = Type.line\n val chartLabels = chartModel.dataSets.values.flatMap { it.keys }.toSet().toTypedArray()\n this.data = jso {\n labels = chartLabels\n datasets = dataSets.toTypedArray()\n\n }\n this.options = jso {\n plugins = jso {\n title = jso {\n display = true\n }\n }\n scales = jso {\n y = jso {\n beginAtZero = true\n }\n }\n onClick = { event: dynamic, elements: Array ->\n if (elements.isNotEmpty()) {\n val element = elements[0]\n val datasetIndex = element.datasetIndex\n val index = element.index\n val focusGroup = chartLabels[index as Int]\n onDotClicked(focusGroup)\n }\n }\n }\n\n\n })\n onDispose {\n chart.destroy()\n }\n }\n }\n\n}","inline fun jso(): T = js(\"({})\")\n\ninline fun jso(builder: T.() -> Unit): T = jso().apply(builder)",null,"package chartjs\n\ninterface Type {\n companion object {\n inline val line: Type get() = Type(\"line\")\n inline val bar: Type get() = Type(\"bar\")\n\n inline val horizontalBar: Type get() = Type(\"horizontalBar\")\n inline val radar: Type get() = Type(\"radar\")\n inline val doughnut: Type get() = Type(\"doughnut\")\n inline val polarArea: Type get() = Type(\"polarArea\")\n inline val bubble: Type get() = Type(\"bubble\")\n inline val pie: Type get() = Type(\"pie\")\n inline val scatter: Type get() = Type(\"scatter\")\n }\n}\n\ninline fun Type(value: String) = value.unsafeCast()","package components\n\nimport androidx.compose.runtime.Composable\nimport org.jetbrains.compose.web.attributes.InputType\nimport org.jetbrains.compose.web.attributes.placeholder\nimport org.jetbrains.compose.web.css.fontSize\nimport org.jetbrains.compose.web.css.px\nimport org.jetbrains.compose.web.dom.Div\nimport org.jetbrains.compose.web.dom.Input\nimport org.jetbrains.compose.web.dom.Label\nimport org.jetbrains.compose.web.dom.Text\n\n@Composable\nfun EditableTitle() {\n Div(\n attrs = {\n classes(\"row\")\n }\n ) {\n Div(\n attrs = {\n classes(\"form-group\")\n }\n ) {\n Label(\n forId = \"customTitle\",\n attrs = {\n classes(\"form-label\")\n }\n ) {\n Text(\"Title :\")\n }\n Input(\n type = InputType.Text,\n ) {\n id(\"customTitle\")\n classes(\"form-control\")\n placeholder(value = \"Custom title goes here\")\n style {\n fontSize(24.px)\n }\n }\n }\n }\n}","package components\n\nimport androidx.compose.runtime.Composable\nimport org.jetbrains.compose.web.dom.Div\nimport org.jetbrains.compose.web.dom.H4\nimport org.jetbrains.compose.web.dom.Text\n\n@Composable\nfun ErrorUi(message: String) {\n Div(attrs = {\n classes(\"row\")\n }) {\n Div(attrs = {\n classes(\"col-lg-12\")\n }) {\n H4(attrs = {\n classes(\"text-center\")\n }) {\n Text(\"❌ $message\")\n }\n }\n }\n}","package components\n\nimport androidx.compose.runtime.Composable\nimport org.jetbrains.compose.web.attributes.selected\nimport org.jetbrains.compose.web.dom.*\n\n\n@Composable\nfun FocusGroups(\n focusGroups: List,\n currentFocusGroup: String?,\n onFocusGroupSelected: (focusGroup: String) -> Unit\n){\n if(focusGroups.isNotEmpty()){\n Div(\n attrs = {\n classes(\"form-group\")\n }\n ) {\n Label(\n forId = \"focusGroups\",\n attrs = {\n classes(\"form-label\")\n }\n ) {\n Text(\"Focus Group :\")\n }\n Select(\n attrs = {\n classes(\"form-select\")\n id(\"focusGroups\")\n onInput {\n it.value?.let { focusGroup ->\n onFocusGroupSelected(focusGroup)\n }\n }\n }\n ) {\n for (focusGroup in focusGroups) {\n Option(\n value = focusGroup,\n attrs = {\n if (focusGroup == currentFocusGroup) {\n selected()\n }\n }\n ) {\n Text(focusGroup)\n }\n }\n }\n }\n }\n}","package components\n\nimport androidx.compose.runtime.Composable\nimport org.jetbrains.compose.web.css.*\nimport org.jetbrains.compose.web.dom.*\n\n\n@Composable\nfun Heading() {\n Div(attrs = {\n classes(\"row\")\n }) {\n Div(attrs = {\n classes(\"col-lg-12\")\n style {\n marginBottom(30.px)\n marginTop(30.px)\n }\n }) {\n H1(attrs = {\n classes(\"text-center\")\n }) { Text(\"📊 benchart\") }\n }\n }\n}","package components\n\nimport kotlinx.serialization.Serializable\n\n@Serializable\ndata class SavedBenchmarkNode(\n val key : String,\n val value : String\n)\n\n@Serializable\ndata class SavedBenchmarks(\n var items : List\n)","package components\n\nimport androidx.compose.runtime.*\nimport org.jetbrains.compose.web.attributes.ButtonType\nimport org.jetbrains.compose.web.attributes.disabled\nimport org.jetbrains.compose.web.attributes.selected\nimport org.jetbrains.compose.web.attributes.type\nimport org.jetbrains.compose.web.css.marginRight\nimport org.jetbrains.compose.web.css.px\nimport org.jetbrains.compose.web.dom.*\nimport kotlin.js.Date\n\nval KEY_UNSAVED_BENCHMARK = \"unsavedBenchmark_${Date().getMilliseconds()}\"\n\n@Composable\nfun SavedBenchmarksDropDown(\n shouldSelectUnsaved: Boolean,\n savedBenchmarks: List,\n onSavedBenchmarkChanged: (key: String) -> Unit,\n onLoadBenchmarkClicked: (SavedBenchmarkNode) -> Unit,\n onDeleteBenchmarkClicked: (SavedBenchmarkNode) -> Unit\n) {\n\n if (savedBenchmarks.isEmpty()) {\n return\n }\n\n var selectedBenchmark by remember(savedBenchmarks) { mutableStateOf(savedBenchmarks.first()) }\n\n\n Label(\n forId = \"savedBenchmarks\",\n attrs = {\n classes(\"form-label\")\n }\n ) {\n Text(\"Load Benchmark :\")\n }\n\n Div(\n attrs = {\n classes(\"form-group\")\n }\n ) {\n Div(\n attrs = {\n classes(\"row\")\n }\n ) {\n\n Div(\n attrs = {\n classes(\"col\")\n }\n ) {\n Select(\n attrs = {\n classes(\"form-select\")\n id(\"savedBenchmarks\")\n onChange {\n it.value?.let { benchmarkKey ->\n onSavedBenchmarkChanged(benchmarkKey)\n selectedBenchmark =\n savedBenchmarks.find { benchmark -> benchmark.key == benchmarkKey }!!\n }\n }\n }\n ) {\n for (savedBenchmark in savedBenchmarks) {\n Option(\n value = savedBenchmark.key,\n attrs = {\n if (savedBenchmark.key == selectedBenchmark.key && !shouldSelectUnsaved) {\n selected()\n }\n }\n ) {\n Text(savedBenchmark.key)\n }\n }\n\n Option(\n value = KEY_UNSAVED_BENCHMARK,\n attrs = {\n if (shouldSelectUnsaved) {\n selected()\n }\n }\n ) {\n Text(\"Unsaved benchmark\")\n }\n }\n }\n\n Div(\n attrs = {\n classes(\"col\")\n }\n ) {\n Button(\n attrs = {\n classes(\"btn\", \"btn-primary\")\n style {\n marginRight(10.px)\n }\n onClick {\n onLoadBenchmarkClicked(selectedBenchmark)\n }\n type(ButtonType.Button)\n\n if (shouldSelectUnsaved) {\n disabled()\n }\n }\n ) {\n Text(\"LOAD\")\n }\n\n Button(\n attrs = {\n classes(\"btn\", \"btn-danger\")\n onClick {\n onDeleteBenchmarkClicked(selectedBenchmark)\n }\n type(ButtonType.Button)\n\n if (shouldSelectUnsaved) {\n disabled()\n }\n }\n ) {\n Text(\"DELETE\")\n }\n }\n }\n }\n}","package components\n\nimport androidx.compose.runtime.Composable\nimport androidx.compose.runtime.key\nimport kotlinx.browser.document\nimport org.jetbrains.compose.web.attributes.AttrsScope\nimport org.jetbrains.compose.web.attributes.ButtonType\nimport org.jetbrains.compose.web.attributes.selected\nimport org.jetbrains.compose.web.attributes.type\nimport org.jetbrains.compose.web.css.fontSize\nimport org.jetbrains.compose.web.css.fontWeight\nimport org.jetbrains.compose.web.css.px\nimport org.jetbrains.compose.web.dom.AttrBuilderContext\nimport org.jetbrains.compose.web.dom.Br\nimport org.jetbrains.compose.web.dom.Button\nimport org.jetbrains.compose.web.dom.ContentBuilder\nimport org.jetbrains.compose.web.dom.Div\nimport org.jetbrains.compose.web.dom.ElementBuilder\nimport org.jetbrains.compose.web.dom.H3\nimport org.jetbrains.compose.web.dom.Li\nimport org.jetbrains.compose.web.dom.Option\nimport org.jetbrains.compose.web.dom.P\nimport org.jetbrains.compose.web.dom.Select\nimport org.jetbrains.compose.web.dom.Small\nimport org.jetbrains.compose.web.dom.Span\nimport org.jetbrains.compose.web.dom.TagElement\nimport org.jetbrains.compose.web.dom.Text\nimport org.jetbrains.compose.web.dom.Ul\nimport org.w3c.dom.Element\nimport org.w3c.dom.HTMLElement\nimport org.w3c.dom.HTMLSpanElement\n\n// P50 : After performed 25% better (-30ms)\nclass SummaryNode(\n val isGeneric: Boolean,\n val emoji: String,\n val segment: String,\n val label: String,\n val percentage: Float,\n val stateWord: String,\n val diff: Float,\n val diffSymbol: String,\n val after: Float,\n val before: Float\n)\n\ndata class Summary(\n val title: String,\n val nodes: List\n)\n\n@Composable\nfun SummaryContainer(\n selector: @Composable () -> Unit,\n summaries: List,\n avgOfCount: Int\n) {\n\n selector()\n Br()\n\n for (summary in summaries) {\n key(summary.title) {\n SummaryUi(summary.title, avgOfCount, summary.nodes)\n Br()\n }\n }\n}\n\n@Composable\nfun SummarySelector(\n bestButtonLabel: String,\n worstButtonLabel: String,\n onBestClicked: () -> Unit,\n onWorstClicked: () -> Unit,\n blockNames: List,\n selectedBlockNameOne: String?,\n selectedBlockNameTwo: String?,\n onBlockOneSelected: (String) -> Unit,\n onBlockTwoSelected: (String) -> Unit,\n) {\n\n Div(\n attrs = {\n classes(\"row\", \"mb-3\")\n }\n ) {\n\n Div(\n attrs = {\n classes(\"col-auto\")\n }\n ) {\n // Best\n Button(\n attrs = {\n classes(\"btn\", \"btn-outline-dark\", \"btn-sm\")\n onClick {\n onBestClicked()\n }\n type(ButtonType.Button)\n }\n ) {\n Text(bestButtonLabel)\n }\n\n }\n Div(\n attrs = {\n classes(\"col-auto\")\n }\n ) {\n // Best\n Button(\n attrs = {\n classes(\"btn\", \"btn-outline-dark\", \"btn-sm\")\n onClick {\n onWorstClicked()\n }\n type(ButtonType.Button)\n }\n ) {\n Text(worstButtonLabel)\n }\n }\n\n }\n\n Div(\n attrs = {\n classes(\"row\")\n }\n ) {\n repeat(2) { index ->\n key(\"block-selector-$index\") {\n Div(\n attrs = {\n classes(\"col\")\n }\n ) {\n Select(\n attrs = {\n classes(\"form-select\")\n onInput {\n it.value?.let { newBlockName ->\n if (index == 0) {\n // first block name\n onBlockOneSelected(newBlockName)\n } else {\n // second block name\n onBlockTwoSelected(newBlockName)\n }\n }\n }\n }\n ) {\n for (blockName in blockNames) {\n Option(\n value = blockName,\n attrs = {\n val selectedBlockName =\n if (index == 0) selectedBlockNameOne else selectedBlockNameTwo\n if (blockName == selectedBlockName) {\n selected()\n }\n }\n ) {\n Text(blockName)\n }\n }\n }\n }\n\n if (index == 0) {\n Div(\n attrs = {\n classes(\"col-auto\")\n }\n ) {\n P {\n Strong {\n Text(\"vs\")\n }\n }\n }\n\n }\n }\n }\n\n }\n\n\n}\n\nprivate open class ElementBuilderImplementation(private val tagName: String) :\n ElementBuilder {\n private val el: Element by lazy { document.createElement(tagName) }\n\n @Suppress(\"UNCHECKED_CAST\")\n override fun create(): TElement = el.cloneNode() as TElement\n}\n\nprivate val Strong: ElementBuilder = ElementBuilderImplementation(\"strong\")\n\n@Composable\nfun Strong(\n attrs: AttrBuilderContext? = null,\n content: ContentBuilder? = null\n) = TagElement(elementBuilder = Strong, applyAttrs = attrs, content = content)\n\n@Composable\nfun SummaryUi(title: String, avgOfCount: Int, summary: List) {\n Div(\n attrs = {\n classes(\"row\")\n }\n ) {\n H3 {\n Text(title)\n if (avgOfCount > 1) {\n Small(\n attrs = {\n classes(\"text-muted\")\n style {\n fontSize(18.px)\n }\n }\n ) {\n Text(\" (average of $avgOfCount)\")\n }\n }\n }\n Ul {\n summary.forEach { node ->\n Li {\n Text(\"${node.emoji} \")\n // ${node.segment} : ${node.label} performed ${node.percentage}%\n BoldText(\n text = node.segment,\n style = {\n classes(\"text-capitalize\")\n }\n )\n Text(\" : \")\n BoldText(node.label)\n Text(if (node.isGeneric) \" looks \" else \" performed \")\n BoldText(\"${node.percentage}% \")\n val postfix = if (node.isGeneric) \"\" else \"ms\"\n Span(\n attrs = {\n val badgeClass = when {\n node.diff == 0f -> \"secondary\"\n node.diff > 0 -> \"danger\"\n else -> \"success\"\n }\n classes(\"badge\", \"bg-$badgeClass\")\n\n attr(\"data-bs-toggle\", \"tooltip\")\n attr(\"data-bs-placement\", \"top\")\n\n attr(\"title\", \"${node.before}$postfix to ${node.after}$postfix\")\n }\n ) {\n Text(node.stateWord)\n }\n Text(\" (${node.diffSymbol}${node.diff}$postfix)\")\n }\n }\n }\n }\n}\n\n@Composable\nprivate fun BoldText(\n text: String,\n style: (AttrsScope.() -> Unit)? = null\n) {\n Span(\n attrs = {\n style?.invoke(this)\n style {\n fontWeight(\"bold\")\n }\n }\n ) {\n Text(text)\n }\n}\n","package components\n\nimport androidx.compose.runtime.Composable\nimport org.jetbrains.compose.web.attributes.ButtonType\nimport org.jetbrains.compose.web.attributes.type\nimport org.jetbrains.compose.web.css.marginLeft\nimport org.jetbrains.compose.web.css.px\nimport org.jetbrains.compose.web.dom.*\n\n@Composable\nfun TestNameDetectionToggle(\n isEnabled: Boolean,\n onButtonClicked: () -> Unit\n) {\n Div(\n attrs = {\n classes(\"form-group\")\n style {\n marginLeft(10.px)\n }\n }\n ) {\n // 🖌 Color map\n\n Label(\n forId = \"testNameDetection\",\n attrs = {\n classes(\"form-label\")\n }\n ) {\n Text(\"Test Name Detection:\")\n }\n Br()\n Button(\n attrs = {\n id(\"testNameDetection\")\n classes(\"btn\", if (isEnabled) \"btn-success\" else \"btn-secondary\")\n onClick {\n onButtonClicked()\n }\n type(ButtonType.Button)\n }\n ) {\n Text(if (isEnabled) \"ON\" else \"OFF\")\n }\n }\n}","package components\n\nimport androidx.compose.runtime.Composable\nimport org.jetbrains.compose.web.attributes.selected\nimport org.jetbrains.compose.web.dom.*\n\n\n@Composable\nfun TestNames(\n testNames: List,\n currentTestName: String? = null,\n onTestNameSelected: (option: String) -> Unit\n){\n if(testNames.isNotEmpty()){\n Div(\n attrs = {\n classes(\"form-group\")\n }\n ) {\n Label(\n forId = \"testNames\",\n attrs = {\n classes(\"form-label\")\n }\n ) {\n Text(\"Test Name :\")\n }\n Select(\n attrs = {\n classes(\"form-select\")\n id(\"testNames\")\n onInput {\n it.value?.let { newTestName ->\n onTestNameSelected(newTestName)\n }\n }\n }\n ) {\n for (testName in testNames) {\n Option(\n value = testName,\n attrs = {\n if (testName == currentTestName) {\n selected()\n }\n }\n ) {\n Text(testName)\n }\n }\n }\n }\n }\n}","import org.jetbrains.compose.web.renderComposable\nimport page.home.HomePageUi\n\nconst val IS_INJECT_DUMMY = true\n\nfun main() {\n\n initChartSettings()\n renderComposable(rootElementId = \"root\") {\n HomePageUi()\n }\n}\n\nprivate fun initChartSettings() {\n Chart.register(\n ArcElement,\n LineElement,\n BarElement,\n PointElement,\n BarController,\n BubbleController,\n DoughnutController,\n LineController,\n PieController,\n PolarAreaController,\n RadarController,\n ScatterController,\n CategoryScale,\n LinearScale,\n LogarithmicScale,\n RadialLinearScale,\n TimeScale,\n TimeSeriesScale,\n Decimation,\n Filler,\n Legend,\n Title,\n Tooltip,\n SubTitle\n )\n}\n","package page.home\n\nimport androidx.compose.runtime.Composable\nimport androidx.compose.runtime.remember\nimport components.AutoGroup\nimport components.ChartUi\nimport components.EditableTitle\nimport components.ErrorUi\nimport components.FocusGroups\nimport components.FormUi\nimport components.Heading\nimport components.SummaryContainer\nimport components.SummarySelector\nimport components.TestNameDetectionToggle\nimport components.TestNames\nimport core.InputType\nimport org.jetbrains.compose.web.css.paddingBottom\nimport org.jetbrains.compose.web.css.paddingLeft\nimport org.jetbrains.compose.web.css.paddingRight\nimport org.jetbrains.compose.web.css.px\nimport org.jetbrains.compose.web.dom.Br\nimport org.jetbrains.compose.web.dom.Div\nimport org.jetbrains.compose.web.dom.Form\nimport org.jetbrains.compose.web.dom.H3\nimport org.jetbrains.compose.web.dom.Text\nimport repo.BenchmarkRepoImpl\nimport repo.FormRepoImpl\n\n@Composable\nfun HomePageUi(\n viewModel: HomeViewModel = remember { HomeViewModel(BenchmarkRepoImpl(), FormRepoImpl()) }\n) {\n Div(\n attrs = {\n classes(\"container-fluid\")\n }\n ) {\n\n // Heading\n Heading()\n\n // Error\n if (viewModel.errorMsg.isNotBlank()) {\n ErrorUi(viewModel.errorMsg)\n }\n\n\n // Main\n Div(attrs = {\n classes(\"row\")\n style {\n paddingLeft(40.px)\n paddingRight(40.px)\n paddingBottom(40.px)\n }\n }) {\n Div(attrs = {\n classes(\"col-lg-4\")\n }) {\n FormUi(\n form = viewModel.form,\n shouldSelectUnsaved = viewModel.shouldSelectUnsaved,\n onFormChanged = viewModel::onFormChanged,\n onSaveClicked = viewModel::onSaveClicked,\n savedBenchmarks = viewModel.savedBenchmarks,\n onSavedBenchmarkChanged = viewModel::onSavedBenchmarkChanged,\n onLoadBenchmarkClicked = viewModel::onLoadBenchmarkClicked,\n onDeleteBenchmarkClicked = viewModel::onDeleteBenchmarkClicked,\n )\n\n Br()\n Br()\n\n SummaryContainer(\n selector = {\n println(\"block size ${viewModel.blockNames.size}\")\n if (viewModel.blockNames.size > 2) {\n SummarySelector(\n bestButtonLabel = \"BEST (-${viewModel.bestAggSummary?.sumOfGreen}${viewModel.unit})\",\n worstButtonLabel = \"WORST (+${viewModel.worstAggSummary?.sumOfRed}${viewModel.unit})\",\n onBestClicked = viewModel::onBestClicked,\n onWorstClicked = viewModel::onWorstClicked,\n blockNames = viewModel.blockNames,\n selectedBlockNameOne = viewModel.selectedBlockNameOne,\n selectedBlockNameTwo = viewModel.selectedBlockNameTwo,\n onBlockOneSelected = viewModel::onBlockNameOneChanged,\n onBlockTwoSelected = viewModel::onBlockNameTwoChanged\n )\n }\n },\n summaries = viewModel.summaries,\n avgOfCount = viewModel.avgOfCount\n )\n }\n\n viewModel.chartsBundle?.charts?.takeIf { it.isNotEmpty() }?.let { fullChartsList ->\n val mainCharts = viewModel.chartsBundle ?: error(\"TSH\")\n Div(\n attrs = {\n classes(\"col-lg-8\")\n }\n ) {\n\n if (viewModel.isEditableTitleEnabled) {\n EditableTitle()\n } else {\n H3(\n attrs = {\n onDoubleClick {\n viewModel.onTitleDoubleClicked()\n }\n }\n ) {\n Text(\"🖥 Output\")\n }\n }\n\n // 🧪 ToolBar\n Div(\n attrs = {\n classes(\"row\")\n }\n ) {\n Form {\n Div(\n attrs = {\n classes(\"row\")\n }\n ) {\n\n Div(\n attrs = {\n classes(\"col-md-2\")\n }\n ) {\n AutoGroup(\n isEnabled = viewModel.form.isAutoGroupEnabled,\n onButtonClicked = viewModel::onToggleAutoGroupClicked\n )\n }\n\n if (viewModel.focusGroups.size > 1) {\n Div(\n attrs = {\n classes(\"col-md-4\")\n }\n ) {\n FocusGroups(\n focusGroups = viewModel.focusGroups,\n currentFocusGroup = viewModel.currentFocusedGroup,\n onFocusGroupSelected = { focusGroup ->\n viewModel.onFocusGroupSelected(focusGroup)\n }\n )\n }\n }\n\n if (viewModel.inputType == InputType.NORMAL_BENCHMARK) {\n Div(\n attrs = {\n classes(\"col-md-2\")\n }\n ) {\n TestNameDetectionToggle(\n isEnabled = viewModel.form.isTestNameDetectionEnabled,\n onButtonClicked = viewModel::onToggleTestNameDetectionClicked\n )\n }\n }\n\n if (viewModel.testNames.isNotEmpty()) {\n Div(\n attrs = {\n classes(\"col-md-4\")\n }\n ) {\n TestNames(\n testNames = viewModel.testNames,\n onTestNameSelected = { newTestName ->\n viewModel.onTestNameSelected(newTestName)\n }\n )\n }\n\n }\n\n }\n }\n }\n\n Br()\n val chunkedCharts = remember(fullChartsList) { fullChartsList.chunked(2) }\n\n\n // 📊 Charts\n for (charts in chunkedCharts) {\n Div(\n attrs = {\n classes(\"row\")\n }\n ) {\n for (chart in charts) {\n // 📊 duration chart\n Div(attrs = {\n classes(chart.bsClass)\n }) {\n ChartUi(\n isColorMapEnabled = viewModel.form.isAutoGroupEnabled,\n groupMap = mainCharts.groupMap,\n chartModel = chart,\n onDotClicked = viewModel::onDotClicked\n ,)\n }\n }\n }\n }\n }\n }\n\n\n }\n }\n}\n","package page.home\n\nimport androidx.compose.runtime.Stable\nimport androidx.compose.runtime.getValue\nimport androidx.compose.runtime.mutableStateListOf\nimport androidx.compose.runtime.mutableStateOf\nimport androidx.compose.runtime.setValue\nimport components.KEY_UNSAVED_BENCHMARK\nimport components.SavedBenchmarkNode\nimport components.Summary\nimport core.BenchmarkResult\nimport core.BenchmarkResult.Companion.FOCUS_GROUP_ALL\nimport core.InputType\nimport core.toCharts\nimport core.toGenericChart\nimport kotlinx.browser.window\nimport model.ChartsBundle\nimport model.FormData\nimport org.w3c.dom.events.KeyboardEvent\nimport repo.BenchmarkRepo\nimport repo.FormRepo\nimport utils.DefaultValues\nimport utils.SummaryUtils\n\nexternal fun setTimeout(handler: dynamic, timeout: Int): Int\nexternal fun clearTimeout(timeoutId: Int)\n\n\n@Stable\nclass HomeViewModel(\n private val benchmarkRepo: BenchmarkRepo,\n private val formRepo: FormRepo\n) {\n\n companion object {\n private const val ERROR_GENERIC = \"Something went wrong!\"\n\n // keys\n }\n\n var savedBenchmarks by mutableStateOf>(emptyList())\n private set\n\n // States\n private var currentTestName: String? = null\n\n var testNames = mutableStateListOf()\n private set\n\n\n var currentFocusedGroup by mutableStateOf(FOCUS_GROUP_ALL)\n private set\n\n var focusGroups = mutableStateListOf()\n private set\n\n var chartsBundle by mutableStateOf(null)\n private set\n\n var errorMsg by mutableStateOf(\"\")\n private set\n\n var isEditableTitleEnabled by mutableStateOf(false)\n private set\n\n var shouldSelectUnsaved by mutableStateOf(false)\n private set\n\n var selectedBlockNameOne by mutableStateOf(null)\n private set\n\n var selectedBlockNameTwo by mutableStateOf(null)\n private set\n\n var blockNames = mutableStateListOf()\n private set\n\n var avgOfCount by mutableStateOf(-1)\n private set\n\n var summaries = mutableStateListOf()\n private set\n\n var inputType by mutableStateOf(null)\n private set\n\n var unit by mutableStateOf(\"\")\n private set\n\n var bestAggSummary by mutableStateOf(null)\n private set\n\n var worstAggSummary by mutableStateOf(null)\n private set\n\n var form by mutableStateOf(\n formRepo.getFormData() ?: FormData(\n DefaultValues.form,\n isTestNameDetectionEnabled = false,\n isAutoGroupEnabled = false\n )\n )\n private set\n\n init {\n refreshBenchmarks()\n\n // set key press listener on window\n window.addEventListener(\"keydown\", {\n val event = it.unsafeCast()\n if (event.key == \"Escape\") {\n onFocusGroupSelected(FOCUS_GROUP_ALL)\n }\n })\n }\n\n\n private fun refreshBenchmarks() {\n savedBenchmarks = benchmarkRepo.getSavedBenchmarks()\n }\n\n // Normal fields\n private val fullBenchmarkResults = mutableListOf()\n\n\n var timeoutId: Int? = null\n fun debounce(func: () -> Unit, delay: Int) {\n timeoutId?.let { clearTimeout(it) }\n timeoutId = setTimeout({\n func()\n }, delay)\n }\n\n fun onFormChanged(unfilteredForm: FormData, shouldSelectUnsaved: Boolean = true) {\n // filtering android log\n form = unfilteredForm.copy(data = filterOutAndroidJunkLog(unfilteredForm.data))\n formRepo.storeFormData(form)\n\n debounce(\n func = {\n\n this.shouldSelectUnsaved = shouldSelectUnsaved\n try {\n // clearing old data\n fullBenchmarkResults.clear()\n testNames.clear()\n focusGroups.clear()\n blockNames.clear()\n\n // refill\n val (inputType, benchmarkResults, focusGroups) = BenchmarkResult.parse(form, currentFocusedGroup)\n ?: run {\n println(\"failed to parse form\")\n reset()\n errorMsg = \"\"\n return@debounce\n }\n this.inputType = inputType\n fullBenchmarkResults.addAll(benchmarkResults)\n this.focusGroups.addAll(focusGroups)\n\n if (!focusGroups.contains(currentFocusedGroup)) {\n currentFocusedGroup = FOCUS_GROUP_ALL\n }\n\n\n avgOfCount = benchmarkResults\n .flatMap {\n it.blockRows.map { blockRow ->\n blockRow.fullData.map { fullData ->\n fullData.value.size\n }\n }\n }.flatten().takeIf { it.isNotEmpty() }?.min() ?: -1\n\n\n when (inputType) {\n InputType.GENERIC -> {\n val newCharts = fullBenchmarkResults.toGenericChart()\n chartsBundle = newCharts\n onChartsBundleUpdated(newCharts)\n unit = \"\"\n }\n\n InputType.NORMAL_BENCHMARK -> {\n\n testNames.addAll(fullBenchmarkResults.mapNotNull { it.testName }.toSet())\n\n val currentTestName = testNames.find { it == currentTestName } ?: testNames.firstOrNull()\n val filteredBenchmarkResult = if (currentTestName != null) {\n fullBenchmarkResults.filter { it.testName == currentTestName }\n } else {\n fullBenchmarkResults\n }\n val newCharts = filteredBenchmarkResult.toCharts()\n chartsBundle = newCharts\n onChartsBundleUpdated(newCharts)\n unit = \"ms\"\n }\n }\n\n\n errorMsg = \"\"\n } catch (e: Throwable) {\n e.printStackTrace()\n errorMsg = e.message ?: ERROR_GENERIC\n reset()\n }\n },\n 300\n )\n }\n\n\n // timestamp eg : 2024-06-29 11:30:46.641\n val fullTimestampRegex = \"\\\\d{4}-\\\\d{2}-\\\\d{2} \\\\d{2}:\\\\d{2}:\\\\d{2}\\\\.\\\\d{3}\".toRegex()\n\n // compact timestamp eg: 11:30:46.865\n val compactTimestampRegex = \"\\\\d{2}:\\\\d{2}:\\\\d{2}\\\\.\\\\d{3}\".toRegex()\n\n val logLevelRegex = \"^(I|D|E|W|V) \".toRegex()\n\n /**\n * this is a custom logic to filter out android junk logs (personal)\n */\n private fun filterOutAndroidJunkLog(data: String): String {\n return data.split(\"\\n\")\n .filterNot { line ->\n // line removal\n line.contains(\"PROCESS ENDED\", ignoreCase = false) ||\n line.contains(\"PROCESS STARTED\", ignoreCase = false)\n }.joinToString(separator = \"\\n\") {\n // line manipulation\n var line = it.replace(fullTimestampRegex, \"\").trimStart()\n line = line.replace(compactTimestampRegex, \"\").trimStart()\n if (line.startsWith(\"System.out \")) {\n line = line.replace(\"System.out \", \"\").trimStart()\n }\n line = line.replace(logLevelRegex, \"\").trimStart()\n line = when {\n line.contains(\"startup type is: cold\") -> {\n \"startup type is: cold\"\n }\n\n line.contains(\"startup type is: warm\") -> {\n \"startup type is: warm\"\n }\n\n line.contains(\"startup type is: hot\") -> {\n \"startup type is: hot\"\n }\n\n else -> {\n line\n }\n }.trimStart()\n line\n }.also {\n println(\"QuickTag: HomeViewModel:filterOutAndroidJunkLog: '$it'\")\n }\n }\n\n private fun reset() {\n selectedBlockNameOne = null\n selectedBlockNameTwo = null\n blockNames.clear()\n chartsBundle = null\n summaries.clear()\n bestAggSummary = null\n worstAggSummary = null\n avgOfCount = -1\n updateSummary()\n }\n\n private fun calcAggSummary() {\n val isGeneric = inputType == InputType.GENERIC\n val newAggSums = mutableListOf()\n for (blockNameOuter in blockNames) {\n for (blockNameInner in blockNames) {\n if (blockNameOuter == blockNameInner) {\n continue\n }\n chartsBundle?.charts?.mapNotNull { chart ->\n SummaryUtils.getSummaryOrThrow(\n isGeneric = isGeneric,\n chart = chart,\n selectedBlockNameOne = blockNameOuter,\n selectedBlockNameTwo = blockNameInner\n )\n }?.let { summaries ->\n var greenSum = 0\n var redSum = 0\n for (summary in summaries) {\n for (node in summary.nodes) {\n when {\n node.diff > 0 -> {\n // bad\n redSum += node.diff.toInt()\n }\n\n node.diff < 0 -> {\n // green\n greenSum -= node.diff.toInt()\n }\n }\n }\n }\n newAggSums.add(AggSummary(blockNameOuter, blockNameInner, sumOfGreen = greenSum, sumOfRed = redSum))\n }\n }\n }\n\n bestAggSummary = newAggSums.maxByOrNull { it.sumOfGreen }\n worstAggSummary = newAggSums.maxByOrNull { it.sumOfRed }\n }\n\n private fun onChartsBundleUpdated(chartsBundle: ChartsBundle) {\n blockNames.clear()\n val blockNames = chartsBundle.groupMap.wordColorMap.keys.toList()\n this.blockNames.addAll(blockNames)\n if (blockNames.size >= 2) {\n selectedBlockNameOne = blockNames[0]\n selectedBlockNameTwo = blockNames[1]\n } else {\n selectedBlockNameOne = null\n selectedBlockNameTwo = null\n }\n updateSummary()\n }\n\n private fun updateSummary() {\n // Calculating duration summary\n summaries.clear()\n\n val isGeneric = inputType == InputType.GENERIC\n val allSummaries = chartsBundle?.charts?.mapNotNull { chart ->\n SummaryUtils.getSummaryOrThrow(\n isGeneric = isGeneric,\n chart = chart,\n selectedBlockNameOne = selectedBlockNameOne,\n selectedBlockNameTwo = selectedBlockNameTwo\n )\n }\n summaries.addAll(allSummaries ?: emptyList())\n calcAggSummary()\n }\n\n fun onTestNameSelected(newTestName: String) {\n try {\n currentTestName = newTestName\n val filteredBenchmarkResult = if (currentTestName != null) {\n fullBenchmarkResults.filter { it.testName == currentTestName }\n } else {\n fullBenchmarkResults\n }\n val newCharts = filteredBenchmarkResult.toCharts()\n chartsBundle = newCharts\n updateSummary()\n errorMsg = \"\"\n } catch (e: Throwable) {\n summaries.clear()\n e.printStackTrace()\n errorMsg = e.message ?: ERROR_GENERIC\n }\n }\n\n fun onFocusGroupSelected(focusGroup: String) {\n currentFocusedGroup = focusGroup\n onFormChanged(form)\n }\n\n fun onTitleDoubleClicked() {\n isEditableTitleEnabled = true\n }\n\n fun onToggleAutoGroupClicked() {\n onFormChanged(form.copy(isAutoGroupEnabled = !form.isAutoGroupEnabled))\n }\n\n fun onToggleTestNameDetectionClicked() {\n onFormChanged(form.copy(isTestNameDetectionEnabled = !form.isTestNameDetectionEnabled))\n }\n\n fun onSaveClicked(formData: FormData) {\n val bName = window.prompt(\"Name: \")\n if (bName.isNullOrBlank()) {\n return\n }\n\n val isExist = savedBenchmarks.find { it.key == bName } != null\n if (isExist) {\n window.alert(\"Bruhh.. $bName exists! Try something else\")\n return\n }\n\n // Appending new benchmark\n val newList = savedBenchmarks.toMutableList().apply {\n add(\n index = 0,\n element = SavedBenchmarkNode(\n key = bName, value = formData.data\n )\n )\n }\n benchmarkRepo.saveBenchmarks(newList)\n shouldSelectUnsaved = false\n refreshBenchmarks()\n }\n\n fun onLoadBenchmarkClicked(savedBenchmarkNode: SavedBenchmarkNode) {\n val newForm = form.copy(data = savedBenchmarkNode.value)\n onFormChanged(newForm, shouldSelectUnsaved = false)\n }\n\n fun onDeleteBenchmarkClicked(deletedBenchmarkNode: SavedBenchmarkNode) {\n val isYes = window.confirm(\n \"Do you want to delete `${deletedBenchmarkNode.key}` ?\"\n )\n\n if (isYes) {\n benchmarkRepo.delete(deletedBenchmarkNode)\n shouldSelectUnsaved = true\n refreshBenchmarks()\n }\n }\n\n fun onSavedBenchmarkChanged(key: String) {\n shouldSelectUnsaved = key == KEY_UNSAVED_BENCHMARK\n if (shouldSelectUnsaved) {\n val newForm = formRepo.getFormData() ?: form\n onFormChanged(newForm, shouldSelectUnsaved = false)\n }\n }\n\n fun onBlockNameOneChanged(newBlockName: String) {\n selectedBlockNameOne = newBlockName\n updateSummary()\n }\n\n fun onBlockNameTwoChanged(newBlockName: String) {\n selectedBlockNameTwo = newBlockName\n updateSummary()\n }\n\n fun onBestClicked() {\n selectedBlockNameOne = bestAggSummary?.blockOneName\n selectedBlockNameTwo = bestAggSummary?.blockTwoName\n updateSummary()\n }\n\n fun onWorstClicked() {\n selectedBlockNameOne = worstAggSummary?.blockOneName\n selectedBlockNameTwo = worstAggSummary?.blockTwoName\n updateSummary()\n }\n\n fun onDotClicked(focusGroup: String) {\n if (focusGroups.contains(focusGroup)) {\n onFocusGroupSelected(focusGroup)\n }\n }\n}\n\ndata class AggSummary(\n val blockOneName: String,\n val blockTwoName: String,\n val sumOfGreen: Int,\n val sumOfRed: Int\n)\n","package repo\n\nimport components.SavedBenchmarkNode\nimport components.SavedBenchmarks\nimport kotlinx.browser.window\nimport kotlinx.serialization.decodeFromString\nimport kotlinx.serialization.encodeToString\nimport utils.JsonUtils\n\ninterface BenchmarkRepo {\n fun getSavedBenchmarks(): List\n fun saveBenchmarks(newList: List)\n fun delete(deletedBenchmarkNode: SavedBenchmarkNode)\n}\n\nclass BenchmarkRepoImpl : BenchmarkRepo {\n\n companion object {\n private const val KEY_SAVED_BENCHMARKS = \"savedBenchmarks\"\n }\n\n\n override fun getSavedBenchmarks(): List {\n val savedBenchmarksString = window.localStorage.getItem(KEY_SAVED_BENCHMARKS)\n val savedBenchmark = if (savedBenchmarksString == null) {\n // Creating first saved benchmark\n SavedBenchmarks(items = listOf())\n } else {\n println(\"JSON is '$savedBenchmarksString'\")\n try {\n JsonUtils.json.decodeFromString(savedBenchmarksString)\n }catch (e: Exception){\n e.printStackTrace()\n saveBenchmarks(listOf()) // reset\n SavedBenchmarks(items = listOf())\n }\n }\n\n return savedBenchmark.items.toList()\n }\n\n override fun saveBenchmarks(newList: List) {\n val savedBenchmarks = JsonUtils.json.encodeToString(SavedBenchmarks(newList))\n window.localStorage.setItem(KEY_SAVED_BENCHMARKS, savedBenchmarks)\n }\n\n override fun delete(deletedBenchmarkNode: SavedBenchmarkNode) {\n // Appending new benchmark\n val newList = getSavedBenchmarks().toMutableList().apply {\n removeAll { it.key == deletedBenchmarkNode.key }\n }\n saveBenchmarks(newList)\n }\n\n}","package repo\n\nimport kotlinx.browser.window\nimport model.FormData\n\ninterface FormRepo {\n fun storeFormData(newForm: FormData)\n fun getFormData(): FormData?\n}\n\nclass FormRepoImpl : FormRepo {\n companion object {\n private const val KEY_AUTO_FORM_INPUT = \"auto_form_input\"\n private const val KEY_IS_TEST_NAME_DETECTION_ENABLED = \"is_test_name_detection_enabled\"\n private const val KEY_IS_AUTO_GROUP_ENABLED = \"is_auto_group_enabled\"\n }\n\n override fun storeFormData(newForm: FormData) {\n window.localStorage.apply {\n setItem(KEY_AUTO_FORM_INPUT, newForm.data)\n setItem(KEY_IS_TEST_NAME_DETECTION_ENABLED, newForm.isTestNameDetectionEnabled.toString())\n setItem(KEY_IS_AUTO_GROUP_ENABLED, newForm.isAutoGroupEnabled.toString())\n }\n }\n\n override fun getFormData(): FormData? {\n val localStorage = window.localStorage\n val data = localStorage.getItem(KEY_AUTO_FORM_INPUT) ?: return null\n val isTestNameDetectionEnabled = localStorage.getItem(KEY_IS_TEST_NAME_DETECTION_ENABLED).toBoolean()\n val isAutoGroupEnabled = localStorage.getItem(KEY_IS_AUTO_GROUP_ENABLED).toBoolean()\n return FormData(data, isTestNameDetectionEnabled, isAutoGroupEnabled)\n }\n\n}","package utils\n\nobject DefaultValues {\n val form = \"\"\"\n - Before 1\n # first line will be treated as title of the block\n special chars will be stripped from the title\n HomeScrollBenchmark_scrollTest\n frameDurationCpuMs P50 40.5, P90 45.8, P95 60.4, P99 80.4\n frameOverrunMs P50 -5.9, P90 7.0, P95 20.1, P99 64.4\n Traces: Iteration 0 1 2 3 4\n\n ## Before 2\n # line breaks are used to separate the block\n HomeScrollBenchmark_scrollTest\n frameDurationCpuMs P50 45.5, P90 43.8, P95 58.4, P99 78.4\n frameOverrunMs P50 -6.5, P90 5.4, P95 15.0, P99 60.3\n Traces: Iteration 0 1 2 3 4\n\n After 1\n you can include whatever text you want anywhere you want\n HomeScrollBenchmark_scrollTest\n frameDurationCpuMs P50 13.6, P90 21.8, P95 27.5, P99 49.4\n the order doesn't matter\n frameOverrunMs P50 -6.2, P90 7.3, P95 19.5, P99 61.7\n Traces: Iteration 0 1 2 3 4\n\n > After 2\n HomeScrollBenchmark_scrollTest\n frameDurationCpuMs P50 13.8, P90 21.9, P95 27.3, P99 53.4\n see.. am some random text\n frameOverrunMs P50 -5.7, P90 7.4, P95 22.4, P99 63.2\n Traces: Iteration 0 1 2 3 4\n\"\"\".trimIndent()\n}","package utils\n\nimport kotlinx.serialization.json.Json\n\nobject JsonUtils {\n val json = Json {\n ignoreUnknownKeys = true\n }\n}",null,null,null,null,"package utils\n\nimport components.Summary\nimport components.SummaryNode\nimport core.SupportedMetrics\nimport model.Chart\nimport kotlin.math.absoluteValue\n\nobject SummaryUtils {\n\n fun getSummaryOrThrow(\n isGeneric: Boolean,\n chart: Chart,\n selectedBlockNameOne: String?,\n selectedBlockNameTwo: String?,\n ): Summary? {\n if (selectedBlockNameOne == null || selectedBlockNameTwo == null) {\n println(\"blank block name detected. skipping summary\")\n return null\n }\n\n val combinedMap = mutableMapOf>()\n val words = listOf(selectedBlockNameOne, selectedBlockNameTwo)\n println(\"words : $words\")\n for (word in words) {\n\n combinedMap[word] =\n chart.dataSets.filterKeys { it.startsWith(word) }.values.map { it.values.toFloatArray() }\n .let { arrays ->\n // Sum\n val newArray = mutableListOf().apply {\n repeat(chart.dataSets.values.first().size) {\n add(0f)\n }\n }\n for (array in arrays) {\n for (i in newArray.indices) {\n newArray[i] = newArray[i] + array[i]\n }\n }\n // Average\n for (i in newArray.indices) {\n newArray[i] = newArray[i] / arrays.size\n }\n newArray\n }\n }\n println(\"combinedMap : ${combinedMap.map { it.value.toList() }}\")\n\n val summaryNodes = mutableListOf()\n val segments = chart.dataSets.values.first().keys.toList()\n println(\"segments: $segments\")\n repeat(segments.size) { index ->\n val segment = segments[index]\n val after = combinedMap[words[1]]?.get(index) ?: 0f\n val before = combinedMap[words[0]]?.get(index) ?: 0f\n println(\"before : '$before' -> after: '$after'\")\n val diff = \"${(after - before).asDynamic().toFixed(2)}\".toFloat()\n val percDiff =\n \"${(((before - after) / before) * 100).asDynamic().toFixed(2)}\".toFloat().absoluteValue\n\n val resultWord = if (diff > 0) \"worse\" else \"better\"\n val symbol = if (diff > 0) \"+\" else \"\"\n val emoji = if (diff > 0) \"❌\" else \"✅\"\n\n summaryNodes.add(\n SummaryNode(\n isGeneric = isGeneric,\n emoji = emoji,\n segment = segment,\n label = words[1],\n percentage = percDiff,\n stateWord = resultWord,\n diff = diff,\n diffSymbol = symbol,\n after = \"${after.asDynamic().toFixed(2)}\".toFloat(),\n before = \"${before.asDynamic().toFixed(2)}\".toFloat()\n )\n )\n }\n val title = if (isGeneric) {\n \"📊$selectedBlockNameOne vs $selectedBlockNameTwo\"\n } else {\n val metricConfig = SupportedMetrics.values().find { it.key == chart.label }\n ?: error(\"Unsupported metric name `${chart.label}`\")\n \"${metricConfig.emoji} ${metricConfig.title}\"\n }\n\n return Summary(title = title, summaryNodes)\n }\n}",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,"/*!\n * Chart.js v3.9.1\n * https://www.chartjs.org\n * (c) 2022 Chart.js Contributors\n * Released under the MIT License\n */\nfunction noop() {}\nconst uid = (function() {\n let id = 0;\n return function() {\n return id++;\n };\n}());\nfunction isNullOrUndef(value) {\n return value === null || typeof value === 'undefined';\n}\nfunction isArray(value) {\n if (Array.isArray && Array.isArray(value)) {\n return true;\n }\n const type = Object.prototype.toString.call(value);\n if (type.slice(0, 7) === '[object' && type.slice(-6) === 'Array]') {\n return true;\n }\n return false;\n}\nfunction isObject(value) {\n return value !== null && Object.prototype.toString.call(value) === '[object Object]';\n}\nconst isNumberFinite = (value) => (typeof value === 'number' || value instanceof Number) && isFinite(+value);\nfunction finiteOrDefault(value, defaultValue) {\n return isNumberFinite(value) ? value : defaultValue;\n}\nfunction valueOrDefault(value, defaultValue) {\n return typeof value === 'undefined' ? defaultValue : value;\n}\nconst toPercentage = (value, dimension) =>\n typeof value === 'string' && value.endsWith('%') ?\n parseFloat(value) / 100\n : value / dimension;\nconst toDimension = (value, dimension) =>\n typeof value === 'string' && value.endsWith('%') ?\n parseFloat(value) / 100 * dimension\n : +value;\nfunction callback(fn, args, thisArg) {\n if (fn && typeof fn.call === 'function') {\n return fn.apply(thisArg, args);\n }\n}\nfunction each(loopable, fn, thisArg, reverse) {\n let i, len, keys;\n if (isArray(loopable)) {\n len = loopable.length;\n if (reverse) {\n for (i = len - 1; i >= 0; i--) {\n fn.call(thisArg, loopable[i], i);\n }\n } else {\n for (i = 0; i < len; i++) {\n fn.call(thisArg, loopable[i], i);\n }\n }\n } else if (isObject(loopable)) {\n keys = Object.keys(loopable);\n len = keys.length;\n for (i = 0; i < len; i++) {\n fn.call(thisArg, loopable[keys[i]], keys[i]);\n }\n }\n}\nfunction _elementsEqual(a0, a1) {\n let i, ilen, v0, v1;\n if (!a0 || !a1 || a0.length !== a1.length) {\n return false;\n }\n for (i = 0, ilen = a0.length; i < ilen; ++i) {\n v0 = a0[i];\n v1 = a1[i];\n if (v0.datasetIndex !== v1.datasetIndex || v0.index !== v1.index) {\n return false;\n }\n }\n return true;\n}\nfunction clone$1(source) {\n if (isArray(source)) {\n return source.map(clone$1);\n }\n if (isObject(source)) {\n const target = Object.create(null);\n const keys = Object.keys(source);\n const klen = keys.length;\n let k = 0;\n for (; k < klen; ++k) {\n target[keys[k]] = clone$1(source[keys[k]]);\n }\n return target;\n }\n return source;\n}\nfunction isValidKey(key) {\n return ['__proto__', 'prototype', 'constructor'].indexOf(key) === -1;\n}\nfunction _merger(key, target, source, options) {\n if (!isValidKey(key)) {\n return;\n }\n const tval = target[key];\n const sval = source[key];\n if (isObject(tval) && isObject(sval)) {\n merge(tval, sval, options);\n } else {\n target[key] = clone$1(sval);\n }\n}\nfunction merge(target, source, options) {\n const sources = isArray(source) ? source : [source];\n const ilen = sources.length;\n if (!isObject(target)) {\n return target;\n }\n options = options || {};\n const merger = options.merger || _merger;\n for (let i = 0; i < ilen; ++i) {\n source = sources[i];\n if (!isObject(source)) {\n continue;\n }\n const keys = Object.keys(source);\n for (let k = 0, klen = keys.length; k < klen; ++k) {\n merger(keys[k], target, source, options);\n }\n }\n return target;\n}\nfunction mergeIf(target, source) {\n return merge(target, source, {merger: _mergerIf});\n}\nfunction _mergerIf(key, target, source) {\n if (!isValidKey(key)) {\n return;\n }\n const tval = target[key];\n const sval = source[key];\n if (isObject(tval) && isObject(sval)) {\n mergeIf(tval, sval);\n } else if (!Object.prototype.hasOwnProperty.call(target, key)) {\n target[key] = clone$1(sval);\n }\n}\nfunction _deprecated(scope, value, previous, current) {\n if (value !== undefined) {\n console.warn(scope + ': \"' + previous +\n\t\t\t'\" is deprecated. Please use \"' + current + '\" instead');\n }\n}\nconst keyResolvers = {\n '': v => v,\n x: o => o.x,\n y: o => o.y\n};\nfunction resolveObjectKey(obj, key) {\n const resolver = keyResolvers[key] || (keyResolvers[key] = _getKeyResolver(key));\n return resolver(obj);\n}\nfunction _getKeyResolver(key) {\n const keys = _splitKey(key);\n return obj => {\n for (const k of keys) {\n if (k === '') {\n break;\n }\n obj = obj && obj[k];\n }\n return obj;\n };\n}\nfunction _splitKey(key) {\n const parts = key.split('.');\n const keys = [];\n let tmp = '';\n for (const part of parts) {\n tmp += part;\n if (tmp.endsWith('\\\\')) {\n tmp = tmp.slice(0, -1) + '.';\n } else {\n keys.push(tmp);\n tmp = '';\n }\n }\n return keys;\n}\nfunction _capitalize(str) {\n return str.charAt(0).toUpperCase() + str.slice(1);\n}\nconst defined = (value) => typeof value !== 'undefined';\nconst isFunction = (value) => typeof value === 'function';\nconst setsEqual = (a, b) => {\n if (a.size !== b.size) {\n return false;\n }\n for (const item of a) {\n if (!b.has(item)) {\n return false;\n }\n }\n return true;\n};\nfunction _isClickEvent(e) {\n return e.type === 'mouseup' || e.type === 'click' || e.type === 'contextmenu';\n}\n\nconst PI = Math.PI;\nconst TAU = 2 * PI;\nconst PITAU = TAU + PI;\nconst INFINITY = Number.POSITIVE_INFINITY;\nconst RAD_PER_DEG = PI / 180;\nconst HALF_PI = PI / 2;\nconst QUARTER_PI = PI / 4;\nconst TWO_THIRDS_PI = PI * 2 / 3;\nconst log10 = Math.log10;\nconst sign = Math.sign;\nfunction niceNum(range) {\n const roundedRange = Math.round(range);\n range = almostEquals(range, roundedRange, range / 1000) ? roundedRange : range;\n const niceRange = Math.pow(10, Math.floor(log10(range)));\n const fraction = range / niceRange;\n const niceFraction = fraction <= 1 ? 1 : fraction <= 2 ? 2 : fraction <= 5 ? 5 : 10;\n return niceFraction * niceRange;\n}\nfunction _factorize(value) {\n const result = [];\n const sqrt = Math.sqrt(value);\n let i;\n for (i = 1; i < sqrt; i++) {\n if (value % i === 0) {\n result.push(i);\n result.push(value / i);\n }\n }\n if (sqrt === (sqrt | 0)) {\n result.push(sqrt);\n }\n result.sort((a, b) => a - b).pop();\n return result;\n}\nfunction isNumber(n) {\n return !isNaN(parseFloat(n)) && isFinite(n);\n}\nfunction almostEquals(x, y, epsilon) {\n return Math.abs(x - y) < epsilon;\n}\nfunction almostWhole(x, epsilon) {\n const rounded = Math.round(x);\n return ((rounded - epsilon) <= x) && ((rounded + epsilon) >= x);\n}\nfunction _setMinAndMaxByKey(array, target, property) {\n let i, ilen, value;\n for (i = 0, ilen = array.length; i < ilen; i++) {\n value = array[i][property];\n if (!isNaN(value)) {\n target.min = Math.min(target.min, value);\n target.max = Math.max(target.max, value);\n }\n }\n}\nfunction toRadians(degrees) {\n return degrees * (PI / 180);\n}\nfunction toDegrees(radians) {\n return radians * (180 / PI);\n}\nfunction _decimalPlaces(x) {\n if (!isNumberFinite(x)) {\n return;\n }\n let e = 1;\n let p = 0;\n while (Math.round(x * e) / e !== x) {\n e *= 10;\n p++;\n }\n return p;\n}\nfunction getAngleFromPoint(centrePoint, anglePoint) {\n const distanceFromXCenter = anglePoint.x - centrePoint.x;\n const distanceFromYCenter = anglePoint.y - centrePoint.y;\n const radialDistanceFromCenter = Math.sqrt(distanceFromXCenter * distanceFromXCenter + distanceFromYCenter * distanceFromYCenter);\n let angle = Math.atan2(distanceFromYCenter, distanceFromXCenter);\n if (angle < (-0.5 * PI)) {\n angle += TAU;\n }\n return {\n angle,\n distance: radialDistanceFromCenter\n };\n}\nfunction distanceBetweenPoints(pt1, pt2) {\n return Math.sqrt(Math.pow(pt2.x - pt1.x, 2) + Math.pow(pt2.y - pt1.y, 2));\n}\nfunction _angleDiff(a, b) {\n return (a - b + PITAU) % TAU - PI;\n}\nfunction _normalizeAngle(a) {\n return (a % TAU + TAU) % TAU;\n}\nfunction _angleBetween(angle, start, end, sameAngleIsFullCircle) {\n const a = _normalizeAngle(angle);\n const s = _normalizeAngle(start);\n const e = _normalizeAngle(end);\n const angleToStart = _normalizeAngle(s - a);\n const angleToEnd = _normalizeAngle(e - a);\n const startToAngle = _normalizeAngle(a - s);\n const endToAngle = _normalizeAngle(a - e);\n return a === s || a === e || (sameAngleIsFullCircle && s === e)\n || (angleToStart > angleToEnd && startToAngle < endToAngle);\n}\nfunction _limitValue(value, min, max) {\n return Math.max(min, Math.min(max, value));\n}\nfunction _int16Range(value) {\n return _limitValue(value, -32768, 32767);\n}\nfunction _isBetween(value, start, end, epsilon = 1e-6) {\n return value >= Math.min(start, end) - epsilon && value <= Math.max(start, end) + epsilon;\n}\n\nfunction _lookup(table, value, cmp) {\n cmp = cmp || ((index) => table[index] < value);\n let hi = table.length - 1;\n let lo = 0;\n let mid;\n while (hi - lo > 1) {\n mid = (lo + hi) >> 1;\n if (cmp(mid)) {\n lo = mid;\n } else {\n hi = mid;\n }\n }\n return {lo, hi};\n}\nconst _lookupByKey = (table, key, value, last) =>\n _lookup(table, value, last\n ? index => table[index][key] <= value\n : index => table[index][key] < value);\nconst _rlookupByKey = (table, key, value) =>\n _lookup(table, value, index => table[index][key] >= value);\nfunction _filterBetween(values, min, max) {\n let start = 0;\n let end = values.length;\n while (start < end && values[start] < min) {\n start++;\n }\n while (end > start && values[end - 1] > max) {\n end--;\n }\n return start > 0 || end < values.length\n ? values.slice(start, end)\n : values;\n}\nconst arrayEvents = ['push', 'pop', 'shift', 'splice', 'unshift'];\nfunction listenArrayEvents(array, listener) {\n if (array._chartjs) {\n array._chartjs.listeners.push(listener);\n return;\n }\n Object.defineProperty(array, '_chartjs', {\n configurable: true,\n enumerable: false,\n value: {\n listeners: [listener]\n }\n });\n arrayEvents.forEach((key) => {\n const method = '_onData' + _capitalize(key);\n const base = array[key];\n Object.defineProperty(array, key, {\n configurable: true,\n enumerable: false,\n value(...args) {\n const res = base.apply(this, args);\n array._chartjs.listeners.forEach((object) => {\n if (typeof object[method] === 'function') {\n object[method](...args);\n }\n });\n return res;\n }\n });\n });\n}\nfunction unlistenArrayEvents(array, listener) {\n const stub = array._chartjs;\n if (!stub) {\n return;\n }\n const listeners = stub.listeners;\n const index = listeners.indexOf(listener);\n if (index !== -1) {\n listeners.splice(index, 1);\n }\n if (listeners.length > 0) {\n return;\n }\n arrayEvents.forEach((key) => {\n delete array[key];\n });\n delete array._chartjs;\n}\nfunction _arrayUnique(items) {\n const set = new Set();\n let i, ilen;\n for (i = 0, ilen = items.length; i < ilen; ++i) {\n set.add(items[i]);\n }\n if (set.size === ilen) {\n return items;\n }\n return Array.from(set);\n}\n\nfunction fontString(pixelSize, fontStyle, fontFamily) {\n return fontStyle + ' ' + pixelSize + 'px ' + fontFamily;\n}\nconst requestAnimFrame = (function() {\n if (typeof window === 'undefined') {\n return function(callback) {\n return callback();\n };\n }\n return window.requestAnimationFrame;\n}());\nfunction throttled(fn, thisArg, updateFn) {\n const updateArgs = updateFn || ((args) => Array.prototype.slice.call(args));\n let ticking = false;\n let args = [];\n return function(...rest) {\n args = updateArgs(rest);\n if (!ticking) {\n ticking = true;\n requestAnimFrame.call(window, () => {\n ticking = false;\n fn.apply(thisArg, args);\n });\n }\n };\n}\nfunction debounce(fn, delay) {\n let timeout;\n return function(...args) {\n if (delay) {\n clearTimeout(timeout);\n timeout = setTimeout(fn, delay, args);\n } else {\n fn.apply(this, args);\n }\n return delay;\n };\n}\nconst _toLeftRightCenter = (align) => align === 'start' ? 'left' : align === 'end' ? 'right' : 'center';\nconst _alignStartEnd = (align, start, end) => align === 'start' ? start : align === 'end' ? end : (start + end) / 2;\nconst _textX = (align, left, right, rtl) => {\n const check = rtl ? 'left' : 'right';\n return align === check ? right : align === 'center' ? (left + right) / 2 : left;\n};\nfunction _getStartAndCountOfVisiblePoints(meta, points, animationsDisabled) {\n const pointCount = points.length;\n let start = 0;\n let count = pointCount;\n if (meta._sorted) {\n const {iScale, _parsed} = meta;\n const axis = iScale.axis;\n const {min, max, minDefined, maxDefined} = iScale.getUserBounds();\n if (minDefined) {\n start = _limitValue(Math.min(\n _lookupByKey(_parsed, iScale.axis, min).lo,\n animationsDisabled ? pointCount : _lookupByKey(points, axis, iScale.getPixelForValue(min)).lo),\n 0, pointCount - 1);\n }\n if (maxDefined) {\n count = _limitValue(Math.max(\n _lookupByKey(_parsed, iScale.axis, max, true).hi + 1,\n animationsDisabled ? 0 : _lookupByKey(points, axis, iScale.getPixelForValue(max), true).hi + 1),\n start, pointCount) - start;\n } else {\n count = pointCount - start;\n }\n }\n return {start, count};\n}\nfunction _scaleRangesChanged(meta) {\n const {xScale, yScale, _scaleRanges} = meta;\n const newRanges = {\n xmin: xScale.min,\n xmax: xScale.max,\n ymin: yScale.min,\n ymax: yScale.max\n };\n if (!_scaleRanges) {\n meta._scaleRanges = newRanges;\n return true;\n }\n const changed = _scaleRanges.xmin !== xScale.min\n\t\t|| _scaleRanges.xmax !== xScale.max\n\t\t|| _scaleRanges.ymin !== yScale.min\n\t\t|| _scaleRanges.ymax !== yScale.max;\n Object.assign(_scaleRanges, newRanges);\n return changed;\n}\n\nconst atEdge = (t) => t === 0 || t === 1;\nconst elasticIn = (t, s, p) => -(Math.pow(2, 10 * (t -= 1)) * Math.sin((t - s) * TAU / p));\nconst elasticOut = (t, s, p) => Math.pow(2, -10 * t) * Math.sin((t - s) * TAU / p) + 1;\nconst effects = {\n linear: t => t,\n easeInQuad: t => t * t,\n easeOutQuad: t => -t * (t - 2),\n easeInOutQuad: t => ((t /= 0.5) < 1)\n ? 0.5 * t * t\n : -0.5 * ((--t) * (t - 2) - 1),\n easeInCubic: t => t * t * t,\n easeOutCubic: t => (t -= 1) * t * t + 1,\n easeInOutCubic: t => ((t /= 0.5) < 1)\n ? 0.5 * t * t * t\n : 0.5 * ((t -= 2) * t * t + 2),\n easeInQuart: t => t * t * t * t,\n easeOutQuart: t => -((t -= 1) * t * t * t - 1),\n easeInOutQuart: t => ((t /= 0.5) < 1)\n ? 0.5 * t * t * t * t\n : -0.5 * ((t -= 2) * t * t * t - 2),\n easeInQuint: t => t * t * t * t * t,\n easeOutQuint: t => (t -= 1) * t * t * t * t + 1,\n easeInOutQuint: t => ((t /= 0.5) < 1)\n ? 0.5 * t * t * t * t * t\n : 0.5 * ((t -= 2) * t * t * t * t + 2),\n easeInSine: t => -Math.cos(t * HALF_PI) + 1,\n easeOutSine: t => Math.sin(t * HALF_PI),\n easeInOutSine: t => -0.5 * (Math.cos(PI * t) - 1),\n easeInExpo: t => (t === 0) ? 0 : Math.pow(2, 10 * (t - 1)),\n easeOutExpo: t => (t === 1) ? 1 : -Math.pow(2, -10 * t) + 1,\n easeInOutExpo: t => atEdge(t) ? t : t < 0.5\n ? 0.5 * Math.pow(2, 10 * (t * 2 - 1))\n : 0.5 * (-Math.pow(2, -10 * (t * 2 - 1)) + 2),\n easeInCirc: t => (t >= 1) ? t : -(Math.sqrt(1 - t * t) - 1),\n easeOutCirc: t => Math.sqrt(1 - (t -= 1) * t),\n easeInOutCirc: t => ((t /= 0.5) < 1)\n ? -0.5 * (Math.sqrt(1 - t * t) - 1)\n : 0.5 * (Math.sqrt(1 - (t -= 2) * t) + 1),\n easeInElastic: t => atEdge(t) ? t : elasticIn(t, 0.075, 0.3),\n easeOutElastic: t => atEdge(t) ? t : elasticOut(t, 0.075, 0.3),\n easeInOutElastic(t) {\n const s = 0.1125;\n const p = 0.45;\n return atEdge(t) ? t :\n t < 0.5\n ? 0.5 * elasticIn(t * 2, s, p)\n : 0.5 + 0.5 * elasticOut(t * 2 - 1, s, p);\n },\n easeInBack(t) {\n const s = 1.70158;\n return t * t * ((s + 1) * t - s);\n },\n easeOutBack(t) {\n const s = 1.70158;\n return (t -= 1) * t * ((s + 1) * t + s) + 1;\n },\n easeInOutBack(t) {\n let s = 1.70158;\n if ((t /= 0.5) < 1) {\n return 0.5 * (t * t * (((s *= (1.525)) + 1) * t - s));\n }\n return 0.5 * ((t -= 2) * t * (((s *= (1.525)) + 1) * t + s) + 2);\n },\n easeInBounce: t => 1 - effects.easeOutBounce(1 - t),\n easeOutBounce(t) {\n const m = 7.5625;\n const d = 2.75;\n if (t < (1 / d)) {\n return m * t * t;\n }\n if (t < (2 / d)) {\n return m * (t -= (1.5 / d)) * t + 0.75;\n }\n if (t < (2.5 / d)) {\n return m * (t -= (2.25 / d)) * t + 0.9375;\n }\n return m * (t -= (2.625 / d)) * t + 0.984375;\n },\n easeInOutBounce: t => (t < 0.5)\n ? effects.easeInBounce(t * 2) * 0.5\n : effects.easeOutBounce(t * 2 - 1) * 0.5 + 0.5,\n};\n\n/*!\n * @kurkle/color v0.2.1\n * https://github.com/kurkle/color#readme\n * (c) 2022 Jukka Kurkela\n * Released under the MIT License\n */\nfunction round(v) {\n return v + 0.5 | 0;\n}\nconst lim = (v, l, h) => Math.max(Math.min(v, h), l);\nfunction p2b(v) {\n return lim(round(v * 2.55), 0, 255);\n}\nfunction n2b(v) {\n return lim(round(v * 255), 0, 255);\n}\nfunction b2n(v) {\n return lim(round(v / 2.55) / 100, 0, 1);\n}\nfunction n2p(v) {\n return lim(round(v * 100), 0, 100);\n}\nconst map$1 = {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};\nconst hex = [...'0123456789ABCDEF'];\nconst h1 = b => hex[b & 0xF];\nconst h2 = b => hex[(b & 0xF0) >> 4] + hex[b & 0xF];\nconst eq = b => ((b & 0xF0) >> 4) === (b & 0xF);\nconst isShort = v => eq(v.r) && eq(v.g) && eq(v.b) && eq(v.a);\nfunction hexParse(str) {\n var len = str.length;\n var ret;\n if (str[0] === '#') {\n if (len === 4 || len === 5) {\n ret = {\n r: 255 & map$1[str[1]] * 17,\n g: 255 & map$1[str[2]] * 17,\n b: 255 & map$1[str[3]] * 17,\n a: len === 5 ? map$1[str[4]] * 17 : 255\n };\n } else if (len === 7 || len === 9) {\n ret = {\n r: map$1[str[1]] << 4 | map$1[str[2]],\n g: map$1[str[3]] << 4 | map$1[str[4]],\n b: map$1[str[5]] << 4 | map$1[str[6]],\n a: len === 9 ? (map$1[str[7]] << 4 | map$1[str[8]]) : 255\n };\n }\n }\n return ret;\n}\nconst alpha = (a, f) => a < 255 ? f(a) : '';\nfunction hexString(v) {\n var f = isShort(v) ? h1 : h2;\n return v\n ? '#' + f(v.r) + f(v.g) + f(v.b) + alpha(v.a, f)\n : undefined;\n}\nconst HUE_RE = /^(hsla?|hwb|hsv)\\(\\s*([-+.e\\d]+)(?:deg)?[\\s,]+([-+.e\\d]+)%[\\s,]+([-+.e\\d]+)%(?:[\\s,]+([-+.e\\d]+)(%)?)?\\s*\\)$/;\nfunction hsl2rgbn(h, s, l) {\n const a = s * Math.min(l, 1 - l);\n const f = (n, k = (n + h / 30) % 12) => l - a * Math.max(Math.min(k - 3, 9 - k, 1), -1);\n return [f(0), f(8), f(4)];\n}\nfunction hsv2rgbn(h, s, v) {\n const f = (n, k = (n + h / 60) % 6) => v - v * s * Math.max(Math.min(k, 4 - k, 1), 0);\n return [f(5), f(3), f(1)];\n}\nfunction hwb2rgbn(h, w, b) {\n const rgb = hsl2rgbn(h, 1, 0.5);\n let i;\n if (w + b > 1) {\n i = 1 / (w + b);\n w *= i;\n b *= i;\n }\n for (i = 0; i < 3; i++) {\n rgb[i] *= 1 - w - b;\n rgb[i] += w;\n }\n return rgb;\n}\nfunction hueValue(r, g, b, d, max) {\n if (r === max) {\n return ((g - b) / d) + (g < b ? 6 : 0);\n }\n if (g === max) {\n return (b - r) / d + 2;\n }\n return (r - g) / d + 4;\n}\nfunction rgb2hsl(v) {\n const range = 255;\n const r = v.r / range;\n const g = v.g / range;\n const b = v.b / range;\n const max = Math.max(r, g, b);\n const min = Math.min(r, g, b);\n const l = (max + min) / 2;\n let h, s, d;\n if (max !== min) {\n d = max - min;\n s = l > 0.5 ? d / (2 - max - min) : d / (max + min);\n h = hueValue(r, g, b, d, max);\n h = h * 60 + 0.5;\n }\n return [h | 0, s || 0, l];\n}\nfunction calln(f, a, b, c) {\n return (\n Array.isArray(a)\n ? f(a[0], a[1], a[2])\n : f(a, b, c)\n ).map(n2b);\n}\nfunction hsl2rgb(h, s, l) {\n return calln(hsl2rgbn, h, s, l);\n}\nfunction hwb2rgb(h, w, b) {\n return calln(hwb2rgbn, h, w, b);\n}\nfunction hsv2rgb(h, s, v) {\n return calln(hsv2rgbn, h, s, v);\n}\nfunction hue(h) {\n return (h % 360 + 360) % 360;\n}\nfunction hueParse(str) {\n const m = HUE_RE.exec(str);\n let a = 255;\n let v;\n if (!m) {\n return;\n }\n if (m[5] !== v) {\n a = m[6] ? p2b(+m[5]) : n2b(+m[5]);\n }\n const h = hue(+m[2]);\n const p1 = +m[3] / 100;\n const p2 = +m[4] / 100;\n if (m[1] === 'hwb') {\n v = hwb2rgb(h, p1, p2);\n } else if (m[1] === 'hsv') {\n v = hsv2rgb(h, p1, p2);\n } else {\n v = hsl2rgb(h, p1, p2);\n }\n return {\n r: v[0],\n g: v[1],\n b: v[2],\n a: a\n };\n}\nfunction rotate(v, deg) {\n var h = rgb2hsl(v);\n h[0] = hue(h[0] + deg);\n h = hsl2rgb(h);\n v.r = h[0];\n v.g = h[1];\n v.b = h[2];\n}\nfunction hslString(v) {\n if (!v) {\n return;\n }\n const a = rgb2hsl(v);\n const h = a[0];\n const s = n2p(a[1]);\n const l = n2p(a[2]);\n return v.a < 255\n ? `hsla(${h}, ${s}%, ${l}%, ${b2n(v.a)})`\n : `hsl(${h}, ${s}%, ${l}%)`;\n}\nconst map = {\n x: 'dark',\n Z: 'light',\n Y: 're',\n X: 'blu',\n W: 'gr',\n V: 'medium',\n U: 'slate',\n A: 'ee',\n T: 'ol',\n S: 'or',\n B: 'ra',\n C: 'lateg',\n D: 'ights',\n R: 'in',\n Q: 'turquois',\n E: 'hi',\n P: 'ro',\n O: 'al',\n N: 'le',\n M: 'de',\n L: 'yello',\n F: 'en',\n K: 'ch',\n G: 'arks',\n H: 'ea',\n I: 'ightg',\n J: 'wh'\n};\nconst names$1 = {\n OiceXe: 'f0f8ff',\n antiquewEte: 'faebd7',\n aqua: 'ffff',\n aquamarRe: '7fffd4',\n azuY: 'f0ffff',\n beige: 'f5f5dc',\n bisque: 'ffe4c4',\n black: '0',\n blanKedOmond: 'ffebcd',\n Xe: 'ff',\n XeviTet: '8a2be2',\n bPwn: 'a52a2a',\n burlywood: 'deb887',\n caMtXe: '5f9ea0',\n KartYuse: '7fff00',\n KocTate: 'd2691e',\n cSO: 'ff7f50',\n cSnflowerXe: '6495ed',\n cSnsilk: 'fff8dc',\n crimson: 'dc143c',\n cyan: 'ffff',\n xXe: '8b',\n xcyan: '8b8b',\n xgTMnPd: 'b8860b',\n xWay: 'a9a9a9',\n xgYF: '6400',\n xgYy: 'a9a9a9',\n xkhaki: 'bdb76b',\n xmagFta: '8b008b',\n xTivegYF: '556b2f',\n xSange: 'ff8c00',\n xScEd: '9932cc',\n xYd: '8b0000',\n xsOmon: 'e9967a',\n xsHgYF: '8fbc8f',\n xUXe: '483d8b',\n xUWay: '2f4f4f',\n xUgYy: '2f4f4f',\n xQe: 'ced1',\n xviTet: '9400d3',\n dAppRk: 'ff1493',\n dApskyXe: 'bfff',\n dimWay: '696969',\n dimgYy: '696969',\n dodgerXe: '1e90ff',\n fiYbrick: 'b22222',\n flSOwEte: 'fffaf0',\n foYstWAn: '228b22',\n fuKsia: 'ff00ff',\n gaRsbSo: 'dcdcdc',\n ghostwEte: 'f8f8ff',\n gTd: 'ffd700',\n gTMnPd: 'daa520',\n Way: '808080',\n gYF: '8000',\n gYFLw: 'adff2f',\n gYy: '808080',\n honeyMw: 'f0fff0',\n hotpRk: 'ff69b4',\n RdianYd: 'cd5c5c',\n Rdigo: '4b0082',\n ivSy: 'fffff0',\n khaki: 'f0e68c',\n lavFMr: 'e6e6fa',\n lavFMrXsh: 'fff0f5',\n lawngYF: '7cfc00',\n NmoncEffon: 'fffacd',\n ZXe: 'add8e6',\n ZcSO: 'f08080',\n Zcyan: 'e0ffff',\n ZgTMnPdLw: 'fafad2',\n ZWay: 'd3d3d3',\n ZgYF: '90ee90',\n ZgYy: 'd3d3d3',\n ZpRk: 'ffb6c1',\n ZsOmon: 'ffa07a',\n ZsHgYF: '20b2aa',\n ZskyXe: '87cefa',\n ZUWay: '778899',\n ZUgYy: '778899',\n ZstAlXe: 'b0c4de',\n ZLw: 'ffffe0',\n lime: 'ff00',\n limegYF: '32cd32',\n lRF: 'faf0e6',\n magFta: 'ff00ff',\n maPon: '800000',\n VaquamarRe: '66cdaa',\n VXe: 'cd',\n VScEd: 'ba55d3',\n VpurpN: '9370db',\n VsHgYF: '3cb371',\n VUXe: '7b68ee',\n VsprRggYF: 'fa9a',\n VQe: '48d1cc',\n VviTetYd: 'c71585',\n midnightXe: '191970',\n mRtcYam: 'f5fffa',\n mistyPse: 'ffe4e1',\n moccasR: 'ffe4b5',\n navajowEte: 'ffdead',\n navy: '80',\n Tdlace: 'fdf5e6',\n Tive: '808000',\n TivedBb: '6b8e23',\n Sange: 'ffa500',\n SangeYd: 'ff4500',\n ScEd: 'da70d6',\n pOegTMnPd: 'eee8aa',\n pOegYF: '98fb98',\n pOeQe: 'afeeee',\n pOeviTetYd: 'db7093',\n papayawEp: 'ffefd5',\n pHKpuff: 'ffdab9',\n peru: 'cd853f',\n pRk: 'ffc0cb',\n plum: 'dda0dd',\n powMrXe: 'b0e0e6',\n purpN: '800080',\n YbeccapurpN: '663399',\n Yd: 'ff0000',\n Psybrown: 'bc8f8f',\n PyOXe: '4169e1',\n saddNbPwn: '8b4513',\n sOmon: 'fa8072',\n sandybPwn: 'f4a460',\n sHgYF: '2e8b57',\n sHshell: 'fff5ee',\n siFna: 'a0522d',\n silver: 'c0c0c0',\n skyXe: '87ceeb',\n UXe: '6a5acd',\n UWay: '708090',\n UgYy: '708090',\n snow: 'fffafa',\n sprRggYF: 'ff7f',\n stAlXe: '4682b4',\n tan: 'd2b48c',\n teO: '8080',\n tEstN: 'd8bfd8',\n tomato: 'ff6347',\n Qe: '40e0d0',\n viTet: 'ee82ee',\n JHt: 'f5deb3',\n wEte: 'ffffff',\n wEtesmoke: 'f5f5f5',\n Lw: 'ffff00',\n LwgYF: '9acd32'\n};\nfunction unpack() {\n const unpacked = {};\n const keys = Object.keys(names$1);\n const tkeys = Object.keys(map);\n let i, j, k, ok, nk;\n for (i = 0; i < keys.length; i++) {\n ok = nk = keys[i];\n for (j = 0; j < tkeys.length; j++) {\n k = tkeys[j];\n nk = nk.replace(k, map[k]);\n }\n k = parseInt(names$1[ok], 16);\n unpacked[nk] = [k >> 16 & 0xFF, k >> 8 & 0xFF, k & 0xFF];\n }\n return unpacked;\n}\nlet names;\nfunction nameParse(str) {\n if (!names) {\n names = unpack();\n names.transparent = [0, 0, 0, 0];\n }\n const a = names[str.toLowerCase()];\n return a && {\n r: a[0],\n g: a[1],\n b: a[2],\n a: a.length === 4 ? a[3] : 255\n };\n}\nconst RGB_RE = /^rgba?\\(\\s*([-+.\\d]+)(%)?[\\s,]+([-+.e\\d]+)(%)?[\\s,]+([-+.e\\d]+)(%)?(?:[\\s,/]+([-+.e\\d]+)(%)?)?\\s*\\)$/;\nfunction rgbParse(str) {\n const m = RGB_RE.exec(str);\n let a = 255;\n let r, g, b;\n if (!m) {\n return;\n }\n if (m[7] !== r) {\n const v = +m[7];\n a = m[8] ? p2b(v) : lim(v * 255, 0, 255);\n }\n r = +m[1];\n g = +m[3];\n b = +m[5];\n r = 255 & (m[2] ? p2b(r) : lim(r, 0, 255));\n g = 255 & (m[4] ? p2b(g) : lim(g, 0, 255));\n b = 255 & (m[6] ? p2b(b) : lim(b, 0, 255));\n return {\n r: r,\n g: g,\n b: b,\n a: a\n };\n}\nfunction rgbString(v) {\n return v && (\n v.a < 255\n ? `rgba(${v.r}, ${v.g}, ${v.b}, ${b2n(v.a)})`\n : `rgb(${v.r}, ${v.g}, ${v.b})`\n );\n}\nconst to = v => v <= 0.0031308 ? v * 12.92 : Math.pow(v, 1.0 / 2.4) * 1.055 - 0.055;\nconst from = v => v <= 0.04045 ? v / 12.92 : Math.pow((v + 0.055) / 1.055, 2.4);\nfunction interpolate(rgb1, rgb2, t) {\n const r = from(b2n(rgb1.r));\n const g = from(b2n(rgb1.g));\n const b = from(b2n(rgb1.b));\n return {\n r: n2b(to(r + t * (from(b2n(rgb2.r)) - r))),\n g: n2b(to(g + t * (from(b2n(rgb2.g)) - g))),\n b: n2b(to(b + t * (from(b2n(rgb2.b)) - b))),\n a: rgb1.a + t * (rgb2.a - rgb1.a)\n };\n}\nfunction modHSL(v, i, ratio) {\n if (v) {\n let tmp = rgb2hsl(v);\n tmp[i] = Math.max(0, Math.min(tmp[i] + tmp[i] * ratio, i === 0 ? 360 : 1));\n tmp = hsl2rgb(tmp);\n v.r = tmp[0];\n v.g = tmp[1];\n v.b = tmp[2];\n }\n}\nfunction clone(v, proto) {\n return v ? Object.assign(proto || {}, v) : v;\n}\nfunction fromObject(input) {\n var v = {r: 0, g: 0, b: 0, a: 255};\n if (Array.isArray(input)) {\n if (input.length >= 3) {\n v = {r: input[0], g: input[1], b: input[2], a: 255};\n if (input.length > 3) {\n v.a = n2b(input[3]);\n }\n }\n } else {\n v = clone(input, {r: 0, g: 0, b: 0, a: 1});\n v.a = n2b(v.a);\n }\n return v;\n}\nfunction functionParse(str) {\n if (str.charAt(0) === 'r') {\n return rgbParse(str);\n }\n return hueParse(str);\n}\nclass Color {\n constructor(input) {\n if (input instanceof Color) {\n return input;\n }\n const type = typeof input;\n let v;\n if (type === 'object') {\n v = fromObject(input);\n } else if (type === 'string') {\n v = hexParse(input) || nameParse(input) || functionParse(input);\n }\n this._rgb = v;\n this._valid = !!v;\n }\n get valid() {\n return this._valid;\n }\n get rgb() {\n var v = clone(this._rgb);\n if (v) {\n v.a = b2n(v.a);\n }\n return v;\n }\n set rgb(obj) {\n this._rgb = fromObject(obj);\n }\n rgbString() {\n return this._valid ? rgbString(this._rgb) : undefined;\n }\n hexString() {\n return this._valid ? hexString(this._rgb) : undefined;\n }\n hslString() {\n return this._valid ? hslString(this._rgb) : undefined;\n }\n mix(color, weight) {\n if (color) {\n const c1 = this.rgb;\n const c2 = color.rgb;\n let w2;\n const p = weight === w2 ? 0.5 : weight;\n const w = 2 * p - 1;\n const a = c1.a - c2.a;\n const w1 = ((w * a === -1 ? w : (w + a) / (1 + w * a)) + 1) / 2.0;\n w2 = 1 - w1;\n c1.r = 0xFF & w1 * c1.r + w2 * c2.r + 0.5;\n c1.g = 0xFF & w1 * c1.g + w2 * c2.g + 0.5;\n c1.b = 0xFF & w1 * c1.b + w2 * c2.b + 0.5;\n c1.a = p * c1.a + (1 - p) * c2.a;\n this.rgb = c1;\n }\n return this;\n }\n interpolate(color, t) {\n if (color) {\n this._rgb = interpolate(this._rgb, color._rgb, t);\n }\n return this;\n }\n clone() {\n return new Color(this.rgb);\n }\n alpha(a) {\n this._rgb.a = n2b(a);\n return this;\n }\n clearer(ratio) {\n const rgb = this._rgb;\n rgb.a *= 1 - ratio;\n return this;\n }\n greyscale() {\n const rgb = this._rgb;\n const val = round(rgb.r * 0.3 + rgb.g * 0.59 + rgb.b * 0.11);\n rgb.r = rgb.g = rgb.b = val;\n return this;\n }\n opaquer(ratio) {\n const rgb = this._rgb;\n rgb.a *= 1 + ratio;\n return this;\n }\n negate() {\n const v = this._rgb;\n v.r = 255 - v.r;\n v.g = 255 - v.g;\n v.b = 255 - v.b;\n return this;\n }\n lighten(ratio) {\n modHSL(this._rgb, 2, ratio);\n return this;\n }\n darken(ratio) {\n modHSL(this._rgb, 2, -ratio);\n return this;\n }\n saturate(ratio) {\n modHSL(this._rgb, 1, ratio);\n return this;\n }\n desaturate(ratio) {\n modHSL(this._rgb, 1, -ratio);\n return this;\n }\n rotate(deg) {\n rotate(this._rgb, deg);\n return this;\n }\n}\nfunction index_esm(input) {\n return new Color(input);\n}\n\nfunction isPatternOrGradient(value) {\n if (value && typeof value === 'object') {\n const type = value.toString();\n return type === '[object CanvasPattern]' || type === '[object CanvasGradient]';\n }\n return false;\n}\nfunction color(value) {\n return isPatternOrGradient(value) ? value : index_esm(value);\n}\nfunction getHoverColor(value) {\n return isPatternOrGradient(value)\n ? value\n : index_esm(value).saturate(0.5).darken(0.1).hexString();\n}\n\nconst overrides = Object.create(null);\nconst descriptors = Object.create(null);\nfunction getScope$1(node, key) {\n if (!key) {\n return node;\n }\n const keys = key.split('.');\n for (let i = 0, n = keys.length; i < n; ++i) {\n const k = keys[i];\n node = node[k] || (node[k] = Object.create(null));\n }\n return node;\n}\nfunction set(root, scope, values) {\n if (typeof scope === 'string') {\n return merge(getScope$1(root, scope), values);\n }\n return merge(getScope$1(root, ''), scope);\n}\nclass Defaults {\n constructor(_descriptors) {\n this.animation = undefined;\n this.backgroundColor = 'rgba(0,0,0,0.1)';\n this.borderColor = 'rgba(0,0,0,0.1)';\n this.color = '#666';\n this.datasets = {};\n this.devicePixelRatio = (context) => context.chart.platform.getDevicePixelRatio();\n this.elements = {};\n this.events = [\n 'mousemove',\n 'mouseout',\n 'click',\n 'touchstart',\n 'touchmove'\n ];\n this.font = {\n family: \"'Helvetica Neue', 'Helvetica', 'Arial', sans-serif\",\n size: 12,\n style: 'normal',\n lineHeight: 1.2,\n weight: null\n };\n this.hover = {};\n this.hoverBackgroundColor = (ctx, options) => getHoverColor(options.backgroundColor);\n this.hoverBorderColor = (ctx, options) => getHoverColor(options.borderColor);\n this.hoverColor = (ctx, options) => getHoverColor(options.color);\n this.indexAxis = 'x';\n this.interaction = {\n mode: 'nearest',\n intersect: true,\n includeInvisible: false\n };\n this.maintainAspectRatio = true;\n this.onHover = null;\n this.onClick = null;\n this.parsing = true;\n this.plugins = {};\n this.responsive = true;\n this.scale = undefined;\n this.scales = {};\n this.showLine = true;\n this.drawActiveElementsOnTop = true;\n this.describe(_descriptors);\n }\n set(scope, values) {\n return set(this, scope, values);\n }\n get(scope) {\n return getScope$1(this, scope);\n }\n describe(scope, values) {\n return set(descriptors, scope, values);\n }\n override(scope, values) {\n return set(overrides, scope, values);\n }\n route(scope, name, targetScope, targetName) {\n const scopeObject = getScope$1(this, scope);\n const targetScopeObject = getScope$1(this, targetScope);\n const privateName = '_' + name;\n Object.defineProperties(scopeObject, {\n [privateName]: {\n value: scopeObject[name],\n writable: true\n },\n [name]: {\n enumerable: true,\n get() {\n const local = this[privateName];\n const target = targetScopeObject[targetName];\n if (isObject(local)) {\n return Object.assign({}, target, local);\n }\n return valueOrDefault(local, target);\n },\n set(value) {\n this[privateName] = value;\n }\n }\n });\n }\n}\nvar defaults = new Defaults({\n _scriptable: (name) => !name.startsWith('on'),\n _indexable: (name) => name !== 'events',\n hover: {\n _fallback: 'interaction'\n },\n interaction: {\n _scriptable: false,\n _indexable: false,\n }\n});\n\nfunction toFontString(font) {\n if (!font || isNullOrUndef(font.size) || isNullOrUndef(font.family)) {\n return null;\n }\n return (font.style ? font.style + ' ' : '')\n\t\t+ (font.weight ? font.weight + ' ' : '')\n\t\t+ font.size + 'px '\n\t\t+ font.family;\n}\nfunction _measureText(ctx, data, gc, longest, string) {\n let textWidth = data[string];\n if (!textWidth) {\n textWidth = data[string] = ctx.measureText(string).width;\n gc.push(string);\n }\n if (textWidth > longest) {\n longest = textWidth;\n }\n return longest;\n}\nfunction _longestText(ctx, font, arrayOfThings, cache) {\n cache = cache || {};\n let data = cache.data = cache.data || {};\n let gc = cache.garbageCollect = cache.garbageCollect || [];\n if (cache.font !== font) {\n data = cache.data = {};\n gc = cache.garbageCollect = [];\n cache.font = font;\n }\n ctx.save();\n ctx.font = font;\n let longest = 0;\n const ilen = arrayOfThings.length;\n let i, j, jlen, thing, nestedThing;\n for (i = 0; i < ilen; i++) {\n thing = arrayOfThings[i];\n if (thing !== undefined && thing !== null && isArray(thing) !== true) {\n longest = _measureText(ctx, data, gc, longest, thing);\n } else if (isArray(thing)) {\n for (j = 0, jlen = thing.length; j < jlen; j++) {\n nestedThing = thing[j];\n if (nestedThing !== undefined && nestedThing !== null && !isArray(nestedThing)) {\n longest = _measureText(ctx, data, gc, longest, nestedThing);\n }\n }\n }\n }\n ctx.restore();\n const gcLen = gc.length / 2;\n if (gcLen > arrayOfThings.length) {\n for (i = 0; i < gcLen; i++) {\n delete data[gc[i]];\n }\n gc.splice(0, gcLen);\n }\n return longest;\n}\nfunction _alignPixel(chart, pixel, width) {\n const devicePixelRatio = chart.currentDevicePixelRatio;\n const halfWidth = width !== 0 ? Math.max(width / 2, 0.5) : 0;\n return Math.round((pixel - halfWidth) * devicePixelRatio) / devicePixelRatio + halfWidth;\n}\nfunction clearCanvas(canvas, ctx) {\n ctx = ctx || canvas.getContext('2d');\n ctx.save();\n ctx.resetTransform();\n ctx.clearRect(0, 0, canvas.width, canvas.height);\n ctx.restore();\n}\nfunction drawPoint(ctx, options, x, y) {\n drawPointLegend(ctx, options, x, y, null);\n}\nfunction drawPointLegend(ctx, options, x, y, w) {\n let type, xOffset, yOffset, size, cornerRadius, width;\n const style = options.pointStyle;\n const rotation = options.rotation;\n const radius = options.radius;\n let rad = (rotation || 0) * RAD_PER_DEG;\n if (style && typeof style === 'object') {\n type = style.toString();\n if (type === '[object HTMLImageElement]' || type === '[object HTMLCanvasElement]') {\n ctx.save();\n ctx.translate(x, y);\n ctx.rotate(rad);\n ctx.drawImage(style, -style.width / 2, -style.height / 2, style.width, style.height);\n ctx.restore();\n return;\n }\n }\n if (isNaN(radius) || radius <= 0) {\n return;\n }\n ctx.beginPath();\n switch (style) {\n default:\n if (w) {\n ctx.ellipse(x, y, w / 2, radius, 0, 0, TAU);\n } else {\n ctx.arc(x, y, radius, 0, TAU);\n }\n ctx.closePath();\n break;\n case 'triangle':\n ctx.moveTo(x + Math.sin(rad) * radius, y - Math.cos(rad) * radius);\n rad += TWO_THIRDS_PI;\n ctx.lineTo(x + Math.sin(rad) * radius, y - Math.cos(rad) * radius);\n rad += TWO_THIRDS_PI;\n ctx.lineTo(x + Math.sin(rad) * radius, y - Math.cos(rad) * radius);\n ctx.closePath();\n break;\n case 'rectRounded':\n cornerRadius = radius * 0.516;\n size = radius - cornerRadius;\n xOffset = Math.cos(rad + QUARTER_PI) * size;\n yOffset = Math.sin(rad + QUARTER_PI) * size;\n ctx.arc(x - xOffset, y - yOffset, cornerRadius, rad - PI, rad - HALF_PI);\n ctx.arc(x + yOffset, y - xOffset, cornerRadius, rad - HALF_PI, rad);\n ctx.arc(x + xOffset, y + yOffset, cornerRadius, rad, rad + HALF_PI);\n ctx.arc(x - yOffset, y + xOffset, cornerRadius, rad + HALF_PI, rad + PI);\n ctx.closePath();\n break;\n case 'rect':\n if (!rotation) {\n size = Math.SQRT1_2 * radius;\n width = w ? w / 2 : size;\n ctx.rect(x - width, y - size, 2 * width, 2 * size);\n break;\n }\n rad += QUARTER_PI;\n case 'rectRot':\n xOffset = Math.cos(rad) * radius;\n yOffset = Math.sin(rad) * radius;\n ctx.moveTo(x - xOffset, y - yOffset);\n ctx.lineTo(x + yOffset, y - xOffset);\n ctx.lineTo(x + xOffset, y + yOffset);\n ctx.lineTo(x - yOffset, y + xOffset);\n ctx.closePath();\n break;\n case 'crossRot':\n rad += QUARTER_PI;\n case 'cross':\n xOffset = Math.cos(rad) * radius;\n yOffset = Math.sin(rad) * radius;\n ctx.moveTo(x - xOffset, y - yOffset);\n ctx.lineTo(x + xOffset, y + yOffset);\n ctx.moveTo(x + yOffset, y - xOffset);\n ctx.lineTo(x - yOffset, y + xOffset);\n break;\n case 'star':\n xOffset = Math.cos(rad) * radius;\n yOffset = Math.sin(rad) * radius;\n ctx.moveTo(x - xOffset, y - yOffset);\n ctx.lineTo(x + xOffset, y + yOffset);\n ctx.moveTo(x + yOffset, y - xOffset);\n ctx.lineTo(x - yOffset, y + xOffset);\n rad += QUARTER_PI;\n xOffset = Math.cos(rad) * radius;\n yOffset = Math.sin(rad) * radius;\n ctx.moveTo(x - xOffset, y - yOffset);\n ctx.lineTo(x + xOffset, y + yOffset);\n ctx.moveTo(x + yOffset, y - xOffset);\n ctx.lineTo(x - yOffset, y + xOffset);\n break;\n case 'line':\n xOffset = w ? w / 2 : Math.cos(rad) * radius;\n yOffset = Math.sin(rad) * radius;\n ctx.moveTo(x - xOffset, y - yOffset);\n ctx.lineTo(x + xOffset, y + yOffset);\n break;\n case 'dash':\n ctx.moveTo(x, y);\n ctx.lineTo(x + Math.cos(rad) * radius, y + Math.sin(rad) * radius);\n break;\n }\n ctx.fill();\n if (options.borderWidth > 0) {\n ctx.stroke();\n }\n}\nfunction _isPointInArea(point, area, margin) {\n margin = margin || 0.5;\n return !area || (point && point.x > area.left - margin && point.x < area.right + margin &&\n\t\tpoint.y > area.top - margin && point.y < area.bottom + margin);\n}\nfunction clipArea(ctx, area) {\n ctx.save();\n ctx.beginPath();\n ctx.rect(area.left, area.top, area.right - area.left, area.bottom - area.top);\n ctx.clip();\n}\nfunction unclipArea(ctx) {\n ctx.restore();\n}\nfunction _steppedLineTo(ctx, previous, target, flip, mode) {\n if (!previous) {\n return ctx.lineTo(target.x, target.y);\n }\n if (mode === 'middle') {\n const midpoint = (previous.x + target.x) / 2.0;\n ctx.lineTo(midpoint, previous.y);\n ctx.lineTo(midpoint, target.y);\n } else if (mode === 'after' !== !!flip) {\n ctx.lineTo(previous.x, target.y);\n } else {\n ctx.lineTo(target.x, previous.y);\n }\n ctx.lineTo(target.x, target.y);\n}\nfunction _bezierCurveTo(ctx, previous, target, flip) {\n if (!previous) {\n return ctx.lineTo(target.x, target.y);\n }\n ctx.bezierCurveTo(\n flip ? previous.cp1x : previous.cp2x,\n flip ? previous.cp1y : previous.cp2y,\n flip ? target.cp2x : target.cp1x,\n flip ? target.cp2y : target.cp1y,\n target.x,\n target.y);\n}\nfunction renderText(ctx, text, x, y, font, opts = {}) {\n const lines = isArray(text) ? text : [text];\n const stroke = opts.strokeWidth > 0 && opts.strokeColor !== '';\n let i, line;\n ctx.save();\n ctx.font = font.string;\n setRenderOpts(ctx, opts);\n for (i = 0; i < lines.length; ++i) {\n line = lines[i];\n if (stroke) {\n if (opts.strokeColor) {\n ctx.strokeStyle = opts.strokeColor;\n }\n if (!isNullOrUndef(opts.strokeWidth)) {\n ctx.lineWidth = opts.strokeWidth;\n }\n ctx.strokeText(line, x, y, opts.maxWidth);\n }\n ctx.fillText(line, x, y, opts.maxWidth);\n decorateText(ctx, x, y, line, opts);\n y += font.lineHeight;\n }\n ctx.restore();\n}\nfunction setRenderOpts(ctx, opts) {\n if (opts.translation) {\n ctx.translate(opts.translation[0], opts.translation[1]);\n }\n if (!isNullOrUndef(opts.rotation)) {\n ctx.rotate(opts.rotation);\n }\n if (opts.color) {\n ctx.fillStyle = opts.color;\n }\n if (opts.textAlign) {\n ctx.textAlign = opts.textAlign;\n }\n if (opts.textBaseline) {\n ctx.textBaseline = opts.textBaseline;\n }\n}\nfunction decorateText(ctx, x, y, line, opts) {\n if (opts.strikethrough || opts.underline) {\n const metrics = ctx.measureText(line);\n const left = x - metrics.actualBoundingBoxLeft;\n const right = x + metrics.actualBoundingBoxRight;\n const top = y - metrics.actualBoundingBoxAscent;\n const bottom = y + metrics.actualBoundingBoxDescent;\n const yDecoration = opts.strikethrough ? (top + bottom) / 2 : bottom;\n ctx.strokeStyle = ctx.fillStyle;\n ctx.beginPath();\n ctx.lineWidth = opts.decorationWidth || 2;\n ctx.moveTo(left, yDecoration);\n ctx.lineTo(right, yDecoration);\n ctx.stroke();\n }\n}\nfunction addRoundedRectPath(ctx, rect) {\n const {x, y, w, h, radius} = rect;\n ctx.arc(x + radius.topLeft, y + radius.topLeft, radius.topLeft, -HALF_PI, PI, true);\n ctx.lineTo(x, y + h - radius.bottomLeft);\n ctx.arc(x + radius.bottomLeft, y + h - radius.bottomLeft, radius.bottomLeft, PI, HALF_PI, true);\n ctx.lineTo(x + w - radius.bottomRight, y + h);\n ctx.arc(x + w - radius.bottomRight, y + h - radius.bottomRight, radius.bottomRight, HALF_PI, 0, true);\n ctx.lineTo(x + w, y + radius.topRight);\n ctx.arc(x + w - radius.topRight, y + radius.topRight, radius.topRight, 0, -HALF_PI, true);\n ctx.lineTo(x + radius.topLeft, y);\n}\n\nconst LINE_HEIGHT = new RegExp(/^(normal|(\\d+(?:\\.\\d+)?)(px|em|%)?)$/);\nconst FONT_STYLE = new RegExp(/^(normal|italic|initial|inherit|unset|(oblique( -?[0-9]?[0-9]deg)?))$/);\nfunction toLineHeight(value, size) {\n const matches = ('' + value).match(LINE_HEIGHT);\n if (!matches || matches[1] === 'normal') {\n return size * 1.2;\n }\n value = +matches[2];\n switch (matches[3]) {\n case 'px':\n return value;\n case '%':\n value /= 100;\n break;\n }\n return size * value;\n}\nconst numberOrZero = v => +v || 0;\nfunction _readValueToProps(value, props) {\n const ret = {};\n const objProps = isObject(props);\n const keys = objProps ? Object.keys(props) : props;\n const read = isObject(value)\n ? objProps\n ? prop => valueOrDefault(value[prop], value[props[prop]])\n : prop => value[prop]\n : () => value;\n for (const prop of keys) {\n ret[prop] = numberOrZero(read(prop));\n }\n return ret;\n}\nfunction toTRBL(value) {\n return _readValueToProps(value, {top: 'y', right: 'x', bottom: 'y', left: 'x'});\n}\nfunction toTRBLCorners(value) {\n return _readValueToProps(value, ['topLeft', 'topRight', 'bottomLeft', 'bottomRight']);\n}\nfunction toPadding(value) {\n const obj = toTRBL(value);\n obj.width = obj.left + obj.right;\n obj.height = obj.top + obj.bottom;\n return obj;\n}\nfunction toFont(options, fallback) {\n options = options || {};\n fallback = fallback || defaults.font;\n let size = valueOrDefault(options.size, fallback.size);\n if (typeof size === 'string') {\n size = parseInt(size, 10);\n }\n let style = valueOrDefault(options.style, fallback.style);\n if (style && !('' + style).match(FONT_STYLE)) {\n console.warn('Invalid font style specified: \"' + style + '\"');\n style = '';\n }\n const font = {\n family: valueOrDefault(options.family, fallback.family),\n lineHeight: toLineHeight(valueOrDefault(options.lineHeight, fallback.lineHeight), size),\n size,\n style,\n weight: valueOrDefault(options.weight, fallback.weight),\n string: ''\n };\n font.string = toFontString(font);\n return font;\n}\nfunction resolve(inputs, context, index, info) {\n let cacheable = true;\n let i, ilen, value;\n for (i = 0, ilen = inputs.length; i < ilen; ++i) {\n value = inputs[i];\n if (value === undefined) {\n continue;\n }\n if (context !== undefined && typeof value === 'function') {\n value = value(context);\n cacheable = false;\n }\n if (index !== undefined && isArray(value)) {\n value = value[index % value.length];\n cacheable = false;\n }\n if (value !== undefined) {\n if (info && !cacheable) {\n info.cacheable = false;\n }\n return value;\n }\n }\n}\nfunction _addGrace(minmax, grace, beginAtZero) {\n const {min, max} = minmax;\n const change = toDimension(grace, (max - min) / 2);\n const keepZero = (value, add) => beginAtZero && value === 0 ? 0 : value + add;\n return {\n min: keepZero(min, -Math.abs(change)),\n max: keepZero(max, change)\n };\n}\nfunction createContext(parentContext, context) {\n return Object.assign(Object.create(parentContext), context);\n}\n\nfunction _createResolver(scopes, prefixes = [''], rootScopes = scopes, fallback, getTarget = () => scopes[0]) {\n if (!defined(fallback)) {\n fallback = _resolve('_fallback', scopes);\n }\n const cache = {\n [Symbol.toStringTag]: 'Object',\n _cacheable: true,\n _scopes: scopes,\n _rootScopes: rootScopes,\n _fallback: fallback,\n _getTarget: getTarget,\n override: (scope) => _createResolver([scope, ...scopes], prefixes, rootScopes, fallback),\n };\n return new Proxy(cache, {\n deleteProperty(target, prop) {\n delete target[prop];\n delete target._keys;\n delete scopes[0][prop];\n return true;\n },\n get(target, prop) {\n return _cached(target, prop,\n () => _resolveWithPrefixes(prop, prefixes, scopes, target));\n },\n getOwnPropertyDescriptor(target, prop) {\n return Reflect.getOwnPropertyDescriptor(target._scopes[0], prop);\n },\n getPrototypeOf() {\n return Reflect.getPrototypeOf(scopes[0]);\n },\n has(target, prop) {\n return getKeysFromAllScopes(target).includes(prop);\n },\n ownKeys(target) {\n return getKeysFromAllScopes(target);\n },\n set(target, prop, value) {\n const storage = target._storage || (target._storage = getTarget());\n target[prop] = storage[prop] = value;\n delete target._keys;\n return true;\n }\n });\n}\nfunction _attachContext(proxy, context, subProxy, descriptorDefaults) {\n const cache = {\n _cacheable: false,\n _proxy: proxy,\n _context: context,\n _subProxy: subProxy,\n _stack: new Set(),\n _descriptors: _descriptors(proxy, descriptorDefaults),\n setContext: (ctx) => _attachContext(proxy, ctx, subProxy, descriptorDefaults),\n override: (scope) => _attachContext(proxy.override(scope), context, subProxy, descriptorDefaults)\n };\n return new Proxy(cache, {\n deleteProperty(target, prop) {\n delete target[prop];\n delete proxy[prop];\n return true;\n },\n get(target, prop, receiver) {\n return _cached(target, prop,\n () => _resolveWithContext(target, prop, receiver));\n },\n getOwnPropertyDescriptor(target, prop) {\n return target._descriptors.allKeys\n ? Reflect.has(proxy, prop) ? {enumerable: true, configurable: true} : undefined\n : Reflect.getOwnPropertyDescriptor(proxy, prop);\n },\n getPrototypeOf() {\n return Reflect.getPrototypeOf(proxy);\n },\n has(target, prop) {\n return Reflect.has(proxy, prop);\n },\n ownKeys() {\n return Reflect.ownKeys(proxy);\n },\n set(target, prop, value) {\n proxy[prop] = value;\n delete target[prop];\n return true;\n }\n });\n}\nfunction _descriptors(proxy, defaults = {scriptable: true, indexable: true}) {\n const {_scriptable = defaults.scriptable, _indexable = defaults.indexable, _allKeys = defaults.allKeys} = proxy;\n return {\n allKeys: _allKeys,\n scriptable: _scriptable,\n indexable: _indexable,\n isScriptable: isFunction(_scriptable) ? _scriptable : () => _scriptable,\n isIndexable: isFunction(_indexable) ? _indexable : () => _indexable\n };\n}\nconst readKey = (prefix, name) => prefix ? prefix + _capitalize(name) : name;\nconst needsSubResolver = (prop, value) => isObject(value) && prop !== 'adapters' &&\n (Object.getPrototypeOf(value) === null || value.constructor === Object);\nfunction _cached(target, prop, resolve) {\n if (Object.prototype.hasOwnProperty.call(target, prop)) {\n return target[prop];\n }\n const value = resolve();\n target[prop] = value;\n return value;\n}\nfunction _resolveWithContext(target, prop, receiver) {\n const {_proxy, _context, _subProxy, _descriptors: descriptors} = target;\n let value = _proxy[prop];\n if (isFunction(value) && descriptors.isScriptable(prop)) {\n value = _resolveScriptable(prop, value, target, receiver);\n }\n if (isArray(value) && value.length) {\n value = _resolveArray(prop, value, target, descriptors.isIndexable);\n }\n if (needsSubResolver(prop, value)) {\n value = _attachContext(value, _context, _subProxy && _subProxy[prop], descriptors);\n }\n return value;\n}\nfunction _resolveScriptable(prop, value, target, receiver) {\n const {_proxy, _context, _subProxy, _stack} = target;\n if (_stack.has(prop)) {\n throw new Error('Recursion detected: ' + Array.from(_stack).join('->') + '->' + prop);\n }\n _stack.add(prop);\n value = value(_context, _subProxy || receiver);\n _stack.delete(prop);\n if (needsSubResolver(prop, value)) {\n value = createSubResolver(_proxy._scopes, _proxy, prop, value);\n }\n return value;\n}\nfunction _resolveArray(prop, value, target, isIndexable) {\n const {_proxy, _context, _subProxy, _descriptors: descriptors} = target;\n if (defined(_context.index) && isIndexable(prop)) {\n value = value[_context.index % value.length];\n } else if (isObject(value[0])) {\n const arr = value;\n const scopes = _proxy._scopes.filter(s => s !== arr);\n value = [];\n for (const item of arr) {\n const resolver = createSubResolver(scopes, _proxy, prop, item);\n value.push(_attachContext(resolver, _context, _subProxy && _subProxy[prop], descriptors));\n }\n }\n return value;\n}\nfunction resolveFallback(fallback, prop, value) {\n return isFunction(fallback) ? fallback(prop, value) : fallback;\n}\nconst getScope = (key, parent) => key === true ? parent\n : typeof key === 'string' ? resolveObjectKey(parent, key) : undefined;\nfunction addScopes(set, parentScopes, key, parentFallback, value) {\n for (const parent of parentScopes) {\n const scope = getScope(key, parent);\n if (scope) {\n set.add(scope);\n const fallback = resolveFallback(scope._fallback, key, value);\n if (defined(fallback) && fallback !== key && fallback !== parentFallback) {\n return fallback;\n }\n } else if (scope === false && defined(parentFallback) && key !== parentFallback) {\n return null;\n }\n }\n return false;\n}\nfunction createSubResolver(parentScopes, resolver, prop, value) {\n const rootScopes = resolver._rootScopes;\n const fallback = resolveFallback(resolver._fallback, prop, value);\n const allScopes = [...parentScopes, ...rootScopes];\n const set = new Set();\n set.add(value);\n let key = addScopesFromKey(set, allScopes, prop, fallback || prop, value);\n if (key === null) {\n return false;\n }\n if (defined(fallback) && fallback !== prop) {\n key = addScopesFromKey(set, allScopes, fallback, key, value);\n if (key === null) {\n return false;\n }\n }\n return _createResolver(Array.from(set), [''], rootScopes, fallback,\n () => subGetTarget(resolver, prop, value));\n}\nfunction addScopesFromKey(set, allScopes, key, fallback, item) {\n while (key) {\n key = addScopes(set, allScopes, key, fallback, item);\n }\n return key;\n}\nfunction subGetTarget(resolver, prop, value) {\n const parent = resolver._getTarget();\n if (!(prop in parent)) {\n parent[prop] = {};\n }\n const target = parent[prop];\n if (isArray(target) && isObject(value)) {\n return value;\n }\n return target;\n}\nfunction _resolveWithPrefixes(prop, prefixes, scopes, proxy) {\n let value;\n for (const prefix of prefixes) {\n value = _resolve(readKey(prefix, prop), scopes);\n if (defined(value)) {\n return needsSubResolver(prop, value)\n ? createSubResolver(scopes, proxy, prop, value)\n : value;\n }\n }\n}\nfunction _resolve(key, scopes) {\n for (const scope of scopes) {\n if (!scope) {\n continue;\n }\n const value = scope[key];\n if (defined(value)) {\n return value;\n }\n }\n}\nfunction getKeysFromAllScopes(target) {\n let keys = target._keys;\n if (!keys) {\n keys = target._keys = resolveKeysFromAllScopes(target._scopes);\n }\n return keys;\n}\nfunction resolveKeysFromAllScopes(scopes) {\n const set = new Set();\n for (const scope of scopes) {\n for (const key of Object.keys(scope).filter(k => !k.startsWith('_'))) {\n set.add(key);\n }\n }\n return Array.from(set);\n}\nfunction _parseObjectDataRadialScale(meta, data, start, count) {\n const {iScale} = meta;\n const {key = 'r'} = this._parsing;\n const parsed = new Array(count);\n let i, ilen, index, item;\n for (i = 0, ilen = count; i < ilen; ++i) {\n index = i + start;\n item = data[index];\n parsed[i] = {\n r: iScale.parse(resolveObjectKey(item, key), index)\n };\n }\n return parsed;\n}\n\nconst EPSILON = Number.EPSILON || 1e-14;\nconst getPoint = (points, i) => i < points.length && !points[i].skip && points[i];\nconst getValueAxis = (indexAxis) => indexAxis === 'x' ? 'y' : 'x';\nfunction splineCurve(firstPoint, middlePoint, afterPoint, t) {\n const previous = firstPoint.skip ? middlePoint : firstPoint;\n const current = middlePoint;\n const next = afterPoint.skip ? middlePoint : afterPoint;\n const d01 = distanceBetweenPoints(current, previous);\n const d12 = distanceBetweenPoints(next, current);\n let s01 = d01 / (d01 + d12);\n let s12 = d12 / (d01 + d12);\n s01 = isNaN(s01) ? 0 : s01;\n s12 = isNaN(s12) ? 0 : s12;\n const fa = t * s01;\n const fb = t * s12;\n return {\n previous: {\n x: current.x - fa * (next.x - previous.x),\n y: current.y - fa * (next.y - previous.y)\n },\n next: {\n x: current.x + fb * (next.x - previous.x),\n y: current.y + fb * (next.y - previous.y)\n }\n };\n}\nfunction monotoneAdjust(points, deltaK, mK) {\n const pointsLen = points.length;\n let alphaK, betaK, tauK, squaredMagnitude, pointCurrent;\n let pointAfter = getPoint(points, 0);\n for (let i = 0; i < pointsLen - 1; ++i) {\n pointCurrent = pointAfter;\n pointAfter = getPoint(points, i + 1);\n if (!pointCurrent || !pointAfter) {\n continue;\n }\n if (almostEquals(deltaK[i], 0, EPSILON)) {\n mK[i] = mK[i + 1] = 0;\n continue;\n }\n alphaK = mK[i] / deltaK[i];\n betaK = mK[i + 1] / deltaK[i];\n squaredMagnitude = Math.pow(alphaK, 2) + Math.pow(betaK, 2);\n if (squaredMagnitude <= 9) {\n continue;\n }\n tauK = 3 / Math.sqrt(squaredMagnitude);\n mK[i] = alphaK * tauK * deltaK[i];\n mK[i + 1] = betaK * tauK * deltaK[i];\n }\n}\nfunction monotoneCompute(points, mK, indexAxis = 'x') {\n const valueAxis = getValueAxis(indexAxis);\n const pointsLen = points.length;\n let delta, pointBefore, pointCurrent;\n let pointAfter = getPoint(points, 0);\n for (let i = 0; i < pointsLen; ++i) {\n pointBefore = pointCurrent;\n pointCurrent = pointAfter;\n pointAfter = getPoint(points, i + 1);\n if (!pointCurrent) {\n continue;\n }\n const iPixel = pointCurrent[indexAxis];\n const vPixel = pointCurrent[valueAxis];\n if (pointBefore) {\n delta = (iPixel - pointBefore[indexAxis]) / 3;\n pointCurrent[`cp1${indexAxis}`] = iPixel - delta;\n pointCurrent[`cp1${valueAxis}`] = vPixel - delta * mK[i];\n }\n if (pointAfter) {\n delta = (pointAfter[indexAxis] - iPixel) / 3;\n pointCurrent[`cp2${indexAxis}`] = iPixel + delta;\n pointCurrent[`cp2${valueAxis}`] = vPixel + delta * mK[i];\n }\n }\n}\nfunction splineCurveMonotone(points, indexAxis = 'x') {\n const valueAxis = getValueAxis(indexAxis);\n const pointsLen = points.length;\n const deltaK = Array(pointsLen).fill(0);\n const mK = Array(pointsLen);\n let i, pointBefore, pointCurrent;\n let pointAfter = getPoint(points, 0);\n for (i = 0; i < pointsLen; ++i) {\n pointBefore = pointCurrent;\n pointCurrent = pointAfter;\n pointAfter = getPoint(points, i + 1);\n if (!pointCurrent) {\n continue;\n }\n if (pointAfter) {\n const slopeDelta = pointAfter[indexAxis] - pointCurrent[indexAxis];\n deltaK[i] = slopeDelta !== 0 ? (pointAfter[valueAxis] - pointCurrent[valueAxis]) / slopeDelta : 0;\n }\n mK[i] = !pointBefore ? deltaK[i]\n : !pointAfter ? deltaK[i - 1]\n : (sign(deltaK[i - 1]) !== sign(deltaK[i])) ? 0\n : (deltaK[i - 1] + deltaK[i]) / 2;\n }\n monotoneAdjust(points, deltaK, mK);\n monotoneCompute(points, mK, indexAxis);\n}\nfunction capControlPoint(pt, min, max) {\n return Math.max(Math.min(pt, max), min);\n}\nfunction capBezierPoints(points, area) {\n let i, ilen, point, inArea, inAreaPrev;\n let inAreaNext = _isPointInArea(points[0], area);\n for (i = 0, ilen = points.length; i < ilen; ++i) {\n inAreaPrev = inArea;\n inArea = inAreaNext;\n inAreaNext = i < ilen - 1 && _isPointInArea(points[i + 1], area);\n if (!inArea) {\n continue;\n }\n point = points[i];\n if (inAreaPrev) {\n point.cp1x = capControlPoint(point.cp1x, area.left, area.right);\n point.cp1y = capControlPoint(point.cp1y, area.top, area.bottom);\n }\n if (inAreaNext) {\n point.cp2x = capControlPoint(point.cp2x, area.left, area.right);\n point.cp2y = capControlPoint(point.cp2y, area.top, area.bottom);\n }\n }\n}\nfunction _updateBezierControlPoints(points, options, area, loop, indexAxis) {\n let i, ilen, point, controlPoints;\n if (options.spanGaps) {\n points = points.filter((pt) => !pt.skip);\n }\n if (options.cubicInterpolationMode === 'monotone') {\n splineCurveMonotone(points, indexAxis);\n } else {\n let prev = loop ? points[points.length - 1] : points[0];\n for (i = 0, ilen = points.length; i < ilen; ++i) {\n point = points[i];\n controlPoints = splineCurve(\n prev,\n point,\n points[Math.min(i + 1, ilen - (loop ? 0 : 1)) % ilen],\n options.tension\n );\n point.cp1x = controlPoints.previous.x;\n point.cp1y = controlPoints.previous.y;\n point.cp2x = controlPoints.next.x;\n point.cp2y = controlPoints.next.y;\n prev = point;\n }\n }\n if (options.capBezierPoints) {\n capBezierPoints(points, area);\n }\n}\n\nfunction _isDomSupported() {\n return typeof window !== 'undefined' && typeof document !== 'undefined';\n}\nfunction _getParentNode(domNode) {\n let parent = domNode.parentNode;\n if (parent && parent.toString() === '[object ShadowRoot]') {\n parent = parent.host;\n }\n return parent;\n}\nfunction parseMaxStyle(styleValue, node, parentProperty) {\n let valueInPixels;\n if (typeof styleValue === 'string') {\n valueInPixels = parseInt(styleValue, 10);\n if (styleValue.indexOf('%') !== -1) {\n valueInPixels = valueInPixels / 100 * node.parentNode[parentProperty];\n }\n } else {\n valueInPixels = styleValue;\n }\n return valueInPixels;\n}\nconst getComputedStyle = (element) => window.getComputedStyle(element, null);\nfunction getStyle(el, property) {\n return getComputedStyle(el).getPropertyValue(property);\n}\nconst positions = ['top', 'right', 'bottom', 'left'];\nfunction getPositionedStyle(styles, style, suffix) {\n const result = {};\n suffix = suffix ? '-' + suffix : '';\n for (let i = 0; i < 4; i++) {\n const pos = positions[i];\n result[pos] = parseFloat(styles[style + '-' + pos + suffix]) || 0;\n }\n result.width = result.left + result.right;\n result.height = result.top + result.bottom;\n return result;\n}\nconst useOffsetPos = (x, y, target) => (x > 0 || y > 0) && (!target || !target.shadowRoot);\nfunction getCanvasPosition(e, canvas) {\n const touches = e.touches;\n const source = touches && touches.length ? touches[0] : e;\n const {offsetX, offsetY} = source;\n let box = false;\n let x, y;\n if (useOffsetPos(offsetX, offsetY, e.target)) {\n x = offsetX;\n y = offsetY;\n } else {\n const rect = canvas.getBoundingClientRect();\n x = source.clientX - rect.left;\n y = source.clientY - rect.top;\n box = true;\n }\n return {x, y, box};\n}\nfunction getRelativePosition(evt, chart) {\n if ('native' in evt) {\n return evt;\n }\n const {canvas, currentDevicePixelRatio} = chart;\n const style = getComputedStyle(canvas);\n const borderBox = style.boxSizing === 'border-box';\n const paddings = getPositionedStyle(style, 'padding');\n const borders = getPositionedStyle(style, 'border', 'width');\n const {x, y, box} = getCanvasPosition(evt, canvas);\n const xOffset = paddings.left + (box && borders.left);\n const yOffset = paddings.top + (box && borders.top);\n let {width, height} = chart;\n if (borderBox) {\n width -= paddings.width + borders.width;\n height -= paddings.height + borders.height;\n }\n return {\n x: Math.round((x - xOffset) / width * canvas.width / currentDevicePixelRatio),\n y: Math.round((y - yOffset) / height * canvas.height / currentDevicePixelRatio)\n };\n}\nfunction getContainerSize(canvas, width, height) {\n let maxWidth, maxHeight;\n if (width === undefined || height === undefined) {\n const container = _getParentNode(canvas);\n if (!container) {\n width = canvas.clientWidth;\n height = canvas.clientHeight;\n } else {\n const rect = container.getBoundingClientRect();\n const containerStyle = getComputedStyle(container);\n const containerBorder = getPositionedStyle(containerStyle, 'border', 'width');\n const containerPadding = getPositionedStyle(containerStyle, 'padding');\n width = rect.width - containerPadding.width - containerBorder.width;\n height = rect.height - containerPadding.height - containerBorder.height;\n maxWidth = parseMaxStyle(containerStyle.maxWidth, container, 'clientWidth');\n maxHeight = parseMaxStyle(containerStyle.maxHeight, container, 'clientHeight');\n }\n }\n return {\n width,\n height,\n maxWidth: maxWidth || INFINITY,\n maxHeight: maxHeight || INFINITY\n };\n}\nconst round1 = v => Math.round(v * 10) / 10;\nfunction getMaximumSize(canvas, bbWidth, bbHeight, aspectRatio) {\n const style = getComputedStyle(canvas);\n const margins = getPositionedStyle(style, 'margin');\n const maxWidth = parseMaxStyle(style.maxWidth, canvas, 'clientWidth') || INFINITY;\n const maxHeight = parseMaxStyle(style.maxHeight, canvas, 'clientHeight') || INFINITY;\n const containerSize = getContainerSize(canvas, bbWidth, bbHeight);\n let {width, height} = containerSize;\n if (style.boxSizing === 'content-box') {\n const borders = getPositionedStyle(style, 'border', 'width');\n const paddings = getPositionedStyle(style, 'padding');\n width -= paddings.width + borders.width;\n height -= paddings.height + borders.height;\n }\n width = Math.max(0, width - margins.width);\n height = Math.max(0, aspectRatio ? Math.floor(width / aspectRatio) : height - margins.height);\n width = round1(Math.min(width, maxWidth, containerSize.maxWidth));\n height = round1(Math.min(height, maxHeight, containerSize.maxHeight));\n if (width && !height) {\n height = round1(width / 2);\n }\n return {\n width,\n height\n };\n}\nfunction retinaScale(chart, forceRatio, forceStyle) {\n const pixelRatio = forceRatio || 1;\n const deviceHeight = Math.floor(chart.height * pixelRatio);\n const deviceWidth = Math.floor(chart.width * pixelRatio);\n chart.height = deviceHeight / pixelRatio;\n chart.width = deviceWidth / pixelRatio;\n const canvas = chart.canvas;\n if (canvas.style && (forceStyle || (!canvas.style.height && !canvas.style.width))) {\n canvas.style.height = `${chart.height}px`;\n canvas.style.width = `${chart.width}px`;\n }\n if (chart.currentDevicePixelRatio !== pixelRatio\n || canvas.height !== deviceHeight\n || canvas.width !== deviceWidth) {\n chart.currentDevicePixelRatio = pixelRatio;\n canvas.height = deviceHeight;\n canvas.width = deviceWidth;\n chart.ctx.setTransform(pixelRatio, 0, 0, pixelRatio, 0, 0);\n return true;\n }\n return false;\n}\nconst supportsEventListenerOptions = (function() {\n let passiveSupported = false;\n try {\n const options = {\n get passive() {\n passiveSupported = true;\n return false;\n }\n };\n window.addEventListener('test', null, options);\n window.removeEventListener('test', null, options);\n } catch (e) {\n }\n return passiveSupported;\n}());\nfunction readUsedSize(element, property) {\n const value = getStyle(element, property);\n const matches = value && value.match(/^(\\d+)(\\.\\d+)?px$/);\n return matches ? +matches[1] : undefined;\n}\n\nfunction _pointInLine(p1, p2, t, mode) {\n return {\n x: p1.x + t * (p2.x - p1.x),\n y: p1.y + t * (p2.y - p1.y)\n };\n}\nfunction _steppedInterpolation(p1, p2, t, mode) {\n return {\n x: p1.x + t * (p2.x - p1.x),\n y: mode === 'middle' ? t < 0.5 ? p1.y : p2.y\n : mode === 'after' ? t < 1 ? p1.y : p2.y\n : t > 0 ? p2.y : p1.y\n };\n}\nfunction _bezierInterpolation(p1, p2, t, mode) {\n const cp1 = {x: p1.cp2x, y: p1.cp2y};\n const cp2 = {x: p2.cp1x, y: p2.cp1y};\n const a = _pointInLine(p1, cp1, t);\n const b = _pointInLine(cp1, cp2, t);\n const c = _pointInLine(cp2, p2, t);\n const d = _pointInLine(a, b, t);\n const e = _pointInLine(b, c, t);\n return _pointInLine(d, e, t);\n}\n\nconst intlCache = new Map();\nfunction getNumberFormat(locale, options) {\n options = options || {};\n const cacheKey = locale + JSON.stringify(options);\n let formatter = intlCache.get(cacheKey);\n if (!formatter) {\n formatter = new Intl.NumberFormat(locale, options);\n intlCache.set(cacheKey, formatter);\n }\n return formatter;\n}\nfunction formatNumber(num, locale, options) {\n return getNumberFormat(locale, options).format(num);\n}\n\nconst getRightToLeftAdapter = function(rectX, width) {\n return {\n x(x) {\n return rectX + rectX + width - x;\n },\n setWidth(w) {\n width = w;\n },\n textAlign(align) {\n if (align === 'center') {\n return align;\n }\n return align === 'right' ? 'left' : 'right';\n },\n xPlus(x, value) {\n return x - value;\n },\n leftForLtr(x, itemWidth) {\n return x - itemWidth;\n },\n };\n};\nconst getLeftToRightAdapter = function() {\n return {\n x(x) {\n return x;\n },\n setWidth(w) {\n },\n textAlign(align) {\n return align;\n },\n xPlus(x, value) {\n return x + value;\n },\n leftForLtr(x, _itemWidth) {\n return x;\n },\n };\n};\nfunction getRtlAdapter(rtl, rectX, width) {\n return rtl ? getRightToLeftAdapter(rectX, width) : getLeftToRightAdapter();\n}\nfunction overrideTextDirection(ctx, direction) {\n let style, original;\n if (direction === 'ltr' || direction === 'rtl') {\n style = ctx.canvas.style;\n original = [\n style.getPropertyValue('direction'),\n style.getPropertyPriority('direction'),\n ];\n style.setProperty('direction', direction, 'important');\n ctx.prevTextDirection = original;\n }\n}\nfunction restoreTextDirection(ctx, original) {\n if (original !== undefined) {\n delete ctx.prevTextDirection;\n ctx.canvas.style.setProperty('direction', original[0], original[1]);\n }\n}\n\nfunction propertyFn(property) {\n if (property === 'angle') {\n return {\n between: _angleBetween,\n compare: _angleDiff,\n normalize: _normalizeAngle,\n };\n }\n return {\n between: _isBetween,\n compare: (a, b) => a - b,\n normalize: x => x\n };\n}\nfunction normalizeSegment({start, end, count, loop, style}) {\n return {\n start: start % count,\n end: end % count,\n loop: loop && (end - start + 1) % count === 0,\n style\n };\n}\nfunction getSegment(segment, points, bounds) {\n const {property, start: startBound, end: endBound} = bounds;\n const {between, normalize} = propertyFn(property);\n const count = points.length;\n let {start, end, loop} = segment;\n let i, ilen;\n if (loop) {\n start += count;\n end += count;\n for (i = 0, ilen = count; i < ilen; ++i) {\n if (!between(normalize(points[start % count][property]), startBound, endBound)) {\n break;\n }\n start--;\n end--;\n }\n start %= count;\n end %= count;\n }\n if (end < start) {\n end += count;\n }\n return {start, end, loop, style: segment.style};\n}\nfunction _boundSegment(segment, points, bounds) {\n if (!bounds) {\n return [segment];\n }\n const {property, start: startBound, end: endBound} = bounds;\n const count = points.length;\n const {compare, between, normalize} = propertyFn(property);\n const {start, end, loop, style} = getSegment(segment, points, bounds);\n const result = [];\n let inside = false;\n let subStart = null;\n let value, point, prevValue;\n const startIsBefore = () => between(startBound, prevValue, value) && compare(startBound, prevValue) !== 0;\n const endIsBefore = () => compare(endBound, value) === 0 || between(endBound, prevValue, value);\n const shouldStart = () => inside || startIsBefore();\n const shouldStop = () => !inside || endIsBefore();\n for (let i = start, prev = start; i <= end; ++i) {\n point = points[i % count];\n if (point.skip) {\n continue;\n }\n value = normalize(point[property]);\n if (value === prevValue) {\n continue;\n }\n inside = between(value, startBound, endBound);\n if (subStart === null && shouldStart()) {\n subStart = compare(value, startBound) === 0 ? i : prev;\n }\n if (subStart !== null && shouldStop()) {\n result.push(normalizeSegment({start: subStart, end: i, loop, count, style}));\n subStart = null;\n }\n prev = i;\n prevValue = value;\n }\n if (subStart !== null) {\n result.push(normalizeSegment({start: subStart, end, loop, count, style}));\n }\n return result;\n}\nfunction _boundSegments(line, bounds) {\n const result = [];\n const segments = line.segments;\n for (let i = 0; i < segments.length; i++) {\n const sub = _boundSegment(segments[i], line.points, bounds);\n if (sub.length) {\n result.push(...sub);\n }\n }\n return result;\n}\nfunction findStartAndEnd(points, count, loop, spanGaps) {\n let start = 0;\n let end = count - 1;\n if (loop && !spanGaps) {\n while (start < count && !points[start].skip) {\n start++;\n }\n }\n while (start < count && points[start].skip) {\n start++;\n }\n start %= count;\n if (loop) {\n end += start;\n }\n while (end > start && points[end % count].skip) {\n end--;\n }\n end %= count;\n return {start, end};\n}\nfunction solidSegments(points, start, max, loop) {\n const count = points.length;\n const result = [];\n let last = start;\n let prev = points[start];\n let end;\n for (end = start + 1; end <= max; ++end) {\n const cur = points[end % count];\n if (cur.skip || cur.stop) {\n if (!prev.skip) {\n loop = false;\n result.push({start: start % count, end: (end - 1) % count, loop});\n start = last = cur.stop ? end : null;\n }\n } else {\n last = end;\n if (prev.skip) {\n start = end;\n }\n }\n prev = cur;\n }\n if (last !== null) {\n result.push({start: start % count, end: last % count, loop});\n }\n return result;\n}\nfunction _computeSegments(line, segmentOptions) {\n const points = line.points;\n const spanGaps = line.options.spanGaps;\n const count = points.length;\n if (!count) {\n return [];\n }\n const loop = !!line._loop;\n const {start, end} = findStartAndEnd(points, count, loop, spanGaps);\n if (spanGaps === true) {\n return splitByStyles(line, [{start, end, loop}], points, segmentOptions);\n }\n const max = end < start ? end + count : end;\n const completeLoop = !!line._fullLoop && start === 0 && end === count - 1;\n return splitByStyles(line, solidSegments(points, start, max, completeLoop), points, segmentOptions);\n}\nfunction splitByStyles(line, segments, points, segmentOptions) {\n if (!segmentOptions || !segmentOptions.setContext || !points) {\n return segments;\n }\n return doSplitByStyles(line, segments, points, segmentOptions);\n}\nfunction doSplitByStyles(line, segments, points, segmentOptions) {\n const chartContext = line._chart.getContext();\n const baseStyle = readStyle(line.options);\n const {_datasetIndex: datasetIndex, options: {spanGaps}} = line;\n const count = points.length;\n const result = [];\n let prevStyle = baseStyle;\n let start = segments[0].start;\n let i = start;\n function addStyle(s, e, l, st) {\n const dir = spanGaps ? -1 : 1;\n if (s === e) {\n return;\n }\n s += count;\n while (points[s % count].skip) {\n s -= dir;\n }\n while (points[e % count].skip) {\n e += dir;\n }\n if (s % count !== e % count) {\n result.push({start: s % count, end: e % count, loop: l, style: st});\n prevStyle = st;\n start = e % count;\n }\n }\n for (const segment of segments) {\n start = spanGaps ? start : segment.start;\n let prev = points[start % count];\n let style;\n for (i = start + 1; i <= segment.end; i++) {\n const pt = points[i % count];\n style = readStyle(segmentOptions.setContext(createContext(chartContext, {\n type: 'segment',\n p0: prev,\n p1: pt,\n p0DataIndex: (i - 1) % count,\n p1DataIndex: i % count,\n datasetIndex\n })));\n if (styleChanged(style, prevStyle)) {\n addStyle(start, i - 1, segment.loop, prevStyle);\n }\n prev = pt;\n prevStyle = style;\n }\n if (start < i - 1) {\n addStyle(start, i - 1, segment.loop, prevStyle);\n }\n }\n return result;\n}\nfunction readStyle(options) {\n return {\n backgroundColor: options.backgroundColor,\n borderCapStyle: options.borderCapStyle,\n borderDash: options.borderDash,\n borderDashOffset: options.borderDashOffset,\n borderJoinStyle: options.borderJoinStyle,\n borderWidth: options.borderWidth,\n borderColor: options.borderColor\n };\n}\nfunction styleChanged(style, prevStyle) {\n return prevStyle && JSON.stringify(style) !== JSON.stringify(prevStyle);\n}\n\nexport { _isPointInArea as $, _factorize as A, finiteOrDefault as B, callback as C, _addGrace as D, _limitValue as E, toDegrees as F, _measureText as G, HALF_PI as H, _int16Range as I, _alignPixel as J, toPadding as K, clipArea as L, renderText as M, unclipArea as N, toFont as O, PI as P, each as Q, _toLeftRightCenter as R, _alignStartEnd as S, TAU as T, overrides as U, merge as V, _capitalize as W, getRelativePosition as X, _rlookupByKey as Y, _lookupByKey as Z, _arrayUnique as _, resolve as a, toLineHeight as a$, getAngleFromPoint as a0, getMaximumSize as a1, _getParentNode as a2, readUsedSize as a3, throttled as a4, supportsEventListenerOptions as a5, _isDomSupported as a6, descriptors as a7, isFunction as a8, _attachContext as a9, getRtlAdapter as aA, overrideTextDirection as aB, _textX as aC, restoreTextDirection as aD, drawPointLegend as aE, noop as aF, distanceBetweenPoints as aG, _setMinAndMaxByKey as aH, niceNum as aI, almostWhole as aJ, almostEquals as aK, _decimalPlaces as aL, _longestText as aM, _filterBetween as aN, _lookup as aO, isPatternOrGradient as aP, getHoverColor as aQ, clone$1 as aR, _merger as aS, _mergerIf as aT, _deprecated as aU, _splitKey as aV, toFontString as aW, splineCurve as aX, splineCurveMonotone as aY, getStyle as aZ, fontString as a_, _createResolver as aa, _descriptors as ab, mergeIf as ac, uid as ad, debounce as ae, retinaScale as af, clearCanvas as ag, setsEqual as ah, _elementsEqual as ai, _isClickEvent as aj, _isBetween as ak, _readValueToProps as al, _updateBezierControlPoints as am, _computeSegments as an, _boundSegments as ao, _steppedInterpolation as ap, _bezierInterpolation as aq, _pointInLine as ar, _steppedLineTo as as, _bezierCurveTo as at, drawPoint as au, addRoundedRectPath as av, toTRBL as aw, toTRBLCorners as ax, _boundSegment as ay, _normalizeAngle as az, isArray as b, PITAU as b0, INFINITY as b1, RAD_PER_DEG as b2, QUARTER_PI as b3, TWO_THIRDS_PI as b4, _angleDiff as b5, color as c, defaults as d, effects as e, resolveObjectKey as f, isNumberFinite as g, createContext as h, isObject as i, defined as j, isNullOrUndef as k, listenArrayEvents as l, toPercentage as m, toDimension as n, formatNumber as o, _angleBetween as p, _getStartAndCountOfVisiblePoints as q, requestAnimFrame as r, sign as s, toRadians as t, unlistenArrayEvents as u, valueOrDefault as v, _scaleRangesChanged as w, isNumber as x, _parseObjectDataRadialScale as y, log10 as z };\n","/*!\n * Chart.js v3.9.1\n * https://www.chartjs.org\n * (c) 2022 Chart.js Contributors\n * Released under the MIT License\n */\nimport { r as requestAnimFrame, a as resolve, e as effects, c as color, d as defaults, i as isObject, b as isArray, v as valueOrDefault, u as unlistenArrayEvents, l as listenArrayEvents, f as resolveObjectKey, g as isNumberFinite, h as createContext, j as defined, s as sign, k as isNullOrUndef, _ as _arrayUnique, t as toRadians, m as toPercentage, n as toDimension, T as TAU, o as formatNumber, p as _angleBetween, H as HALF_PI, P as PI, q as _getStartAndCountOfVisiblePoints, w as _scaleRangesChanged, x as isNumber, y as _parseObjectDataRadialScale, z as log10, A as _factorize, B as finiteOrDefault, C as callback, D as _addGrace, E as _limitValue, F as toDegrees, G as _measureText, I as _int16Range, J as _alignPixel, K as toPadding, L as clipArea, M as renderText, N as unclipArea, O as toFont, Q as each, R as _toLeftRightCenter, S as _alignStartEnd, U as overrides, V as merge, W as _capitalize, X as getRelativePosition, Y as _rlookupByKey, Z as _lookupByKey, $ as _isPointInArea, a0 as getAngleFromPoint, a1 as getMaximumSize, a2 as _getParentNode, a3 as readUsedSize, a4 as throttled, a5 as supportsEventListenerOptions, a6 as _isDomSupported, a7 as descriptors, a8 as isFunction, a9 as _attachContext, aa as _createResolver, ab as _descriptors, ac as mergeIf, ad as uid, ae as debounce, af as retinaScale, ag as clearCanvas, ah as setsEqual, ai as _elementsEqual, aj as _isClickEvent, ak as _isBetween, al as _readValueToProps, am as _updateBezierControlPoints, an as _computeSegments, ao as _boundSegments, ap as _steppedInterpolation, aq as _bezierInterpolation, ar as _pointInLine, as as _steppedLineTo, at as _bezierCurveTo, au as drawPoint, av as addRoundedRectPath, aw as toTRBL, ax as toTRBLCorners, ay as _boundSegment, az as _normalizeAngle, aA as getRtlAdapter, aB as overrideTextDirection, aC as _textX, aD as restoreTextDirection, aE as drawPointLegend, aF as noop, aG as distanceBetweenPoints, aH as _setMinAndMaxByKey, aI as niceNum, aJ as almostWhole, aK as almostEquals, aL as _decimalPlaces, aM as _longestText, aN as _filterBetween, aO as _lookup } from './chunks/helpers.segment.mjs';\nexport { d as defaults } from './chunks/helpers.segment.mjs';\n\nclass Animator {\n constructor() {\n this._request = null;\n this._charts = new Map();\n this._running = false;\n this._lastDate = undefined;\n }\n _notify(chart, anims, date, type) {\n const callbacks = anims.listeners[type];\n const numSteps = anims.duration;\n callbacks.forEach(fn => fn({\n chart,\n initial: anims.initial,\n numSteps,\n currentStep: Math.min(date - anims.start, numSteps)\n }));\n }\n _refresh() {\n if (this._request) {\n return;\n }\n this._running = true;\n this._request = requestAnimFrame.call(window, () => {\n this._update();\n this._request = null;\n if (this._running) {\n this._refresh();\n }\n });\n }\n _update(date = Date.now()) {\n let remaining = 0;\n this._charts.forEach((anims, chart) => {\n if (!anims.running || !anims.items.length) {\n return;\n }\n const items = anims.items;\n let i = items.length - 1;\n let draw = false;\n let item;\n for (; i >= 0; --i) {\n item = items[i];\n if (item._active) {\n if (item._total > anims.duration) {\n anims.duration = item._total;\n }\n item.tick(date);\n draw = true;\n } else {\n items[i] = items[items.length - 1];\n items.pop();\n }\n }\n if (draw) {\n chart.draw();\n this._notify(chart, anims, date, 'progress');\n }\n if (!items.length) {\n anims.running = false;\n this._notify(chart, anims, date, 'complete');\n anims.initial = false;\n }\n remaining += items.length;\n });\n this._lastDate = date;\n if (remaining === 0) {\n this._running = false;\n }\n }\n _getAnims(chart) {\n const charts = this._charts;\n let anims = charts.get(chart);\n if (!anims) {\n anims = {\n running: false,\n initial: true,\n items: [],\n listeners: {\n complete: [],\n progress: []\n }\n };\n charts.set(chart, anims);\n }\n return anims;\n }\n listen(chart, event, cb) {\n this._getAnims(chart).listeners[event].push(cb);\n }\n add(chart, items) {\n if (!items || !items.length) {\n return;\n }\n this._getAnims(chart).items.push(...items);\n }\n has(chart) {\n return this._getAnims(chart).items.length > 0;\n }\n start(chart) {\n const anims = this._charts.get(chart);\n if (!anims) {\n return;\n }\n anims.running = true;\n anims.start = Date.now();\n anims.duration = anims.items.reduce((acc, cur) => Math.max(acc, cur._duration), 0);\n this._refresh();\n }\n running(chart) {\n if (!this._running) {\n return false;\n }\n const anims = this._charts.get(chart);\n if (!anims || !anims.running || !anims.items.length) {\n return false;\n }\n return true;\n }\n stop(chart) {\n const anims = this._charts.get(chart);\n if (!anims || !anims.items.length) {\n return;\n }\n const items = anims.items;\n let i = items.length - 1;\n for (; i >= 0; --i) {\n items[i].cancel();\n }\n anims.items = [];\n this._notify(chart, anims, Date.now(), 'complete');\n }\n remove(chart) {\n return this._charts.delete(chart);\n }\n}\nvar animator = new Animator();\n\nconst transparent = 'transparent';\nconst interpolators = {\n boolean(from, to, factor) {\n return factor > 0.5 ? to : from;\n },\n color(from, to, factor) {\n const c0 = color(from || transparent);\n const c1 = c0.valid && color(to || transparent);\n return c1 && c1.valid\n ? c1.mix(c0, factor).hexString()\n : to;\n },\n number(from, to, factor) {\n return from + (to - from) * factor;\n }\n};\nclass Animation {\n constructor(cfg, target, prop, to) {\n const currentValue = target[prop];\n to = resolve([cfg.to, to, currentValue, cfg.from]);\n const from = resolve([cfg.from, currentValue, to]);\n this._active = true;\n this._fn = cfg.fn || interpolators[cfg.type || typeof from];\n this._easing = effects[cfg.easing] || effects.linear;\n this._start = Math.floor(Date.now() + (cfg.delay || 0));\n this._duration = this._total = Math.floor(cfg.duration);\n this._loop = !!cfg.loop;\n this._target = target;\n this._prop = prop;\n this._from = from;\n this._to = to;\n this._promises = undefined;\n }\n active() {\n return this._active;\n }\n update(cfg, to, date) {\n if (this._active) {\n this._notify(false);\n const currentValue = this._target[this._prop];\n const elapsed = date - this._start;\n const remain = this._duration - elapsed;\n this._start = date;\n this._duration = Math.floor(Math.max(remain, cfg.duration));\n this._total += elapsed;\n this._loop = !!cfg.loop;\n this._to = resolve([cfg.to, to, currentValue, cfg.from]);\n this._from = resolve([cfg.from, currentValue, to]);\n }\n }\n cancel() {\n if (this._active) {\n this.tick(Date.now());\n this._active = false;\n this._notify(false);\n }\n }\n tick(date) {\n const elapsed = date - this._start;\n const duration = this._duration;\n const prop = this._prop;\n const from = this._from;\n const loop = this._loop;\n const to = this._to;\n let factor;\n this._active = from !== to && (loop || (elapsed < duration));\n if (!this._active) {\n this._target[prop] = to;\n this._notify(true);\n return;\n }\n if (elapsed < 0) {\n this._target[prop] = from;\n return;\n }\n factor = (elapsed / duration) % 2;\n factor = loop && factor > 1 ? 2 - factor : factor;\n factor = this._easing(Math.min(1, Math.max(0, factor)));\n this._target[prop] = this._fn(from, to, factor);\n }\n wait() {\n const promises = this._promises || (this._promises = []);\n return new Promise((res, rej) => {\n promises.push({res, rej});\n });\n }\n _notify(resolved) {\n const method = resolved ? 'res' : 'rej';\n const promises = this._promises || [];\n for (let i = 0; i < promises.length; i++) {\n promises[i][method]();\n }\n }\n}\n\nconst numbers = ['x', 'y', 'borderWidth', 'radius', 'tension'];\nconst colors = ['color', 'borderColor', 'backgroundColor'];\ndefaults.set('animation', {\n delay: undefined,\n duration: 1000,\n easing: 'easeOutQuart',\n fn: undefined,\n from: undefined,\n loop: undefined,\n to: undefined,\n type: undefined,\n});\nconst animationOptions = Object.keys(defaults.animation);\ndefaults.describe('animation', {\n _fallback: false,\n _indexable: false,\n _scriptable: (name) => name !== 'onProgress' && name !== 'onComplete' && name !== 'fn',\n});\ndefaults.set('animations', {\n colors: {\n type: 'color',\n properties: colors\n },\n numbers: {\n type: 'number',\n properties: numbers\n },\n});\ndefaults.describe('animations', {\n _fallback: 'animation',\n});\ndefaults.set('transitions', {\n active: {\n animation: {\n duration: 400\n }\n },\n resize: {\n animation: {\n duration: 0\n }\n },\n show: {\n animations: {\n colors: {\n from: 'transparent'\n },\n visible: {\n type: 'boolean',\n duration: 0\n },\n }\n },\n hide: {\n animations: {\n colors: {\n to: 'transparent'\n },\n visible: {\n type: 'boolean',\n easing: 'linear',\n fn: v => v | 0\n },\n }\n }\n});\nclass Animations {\n constructor(chart, config) {\n this._chart = chart;\n this._properties = new Map();\n this.configure(config);\n }\n configure(config) {\n if (!isObject(config)) {\n return;\n }\n const animatedProps = this._properties;\n Object.getOwnPropertyNames(config).forEach(key => {\n const cfg = config[key];\n if (!isObject(cfg)) {\n return;\n }\n const resolved = {};\n for (const option of animationOptions) {\n resolved[option] = cfg[option];\n }\n (isArray(cfg.properties) && cfg.properties || [key]).forEach((prop) => {\n if (prop === key || !animatedProps.has(prop)) {\n animatedProps.set(prop, resolved);\n }\n });\n });\n }\n _animateOptions(target, values) {\n const newOptions = values.options;\n const options = resolveTargetOptions(target, newOptions);\n if (!options) {\n return [];\n }\n const animations = this._createAnimations(options, newOptions);\n if (newOptions.$shared) {\n awaitAll(target.options.$animations, newOptions).then(() => {\n target.options = newOptions;\n }, () => {\n });\n }\n return animations;\n }\n _createAnimations(target, values) {\n const animatedProps = this._properties;\n const animations = [];\n const running = target.$animations || (target.$animations = {});\n const props = Object.keys(values);\n const date = Date.now();\n let i;\n for (i = props.length - 1; i >= 0; --i) {\n const prop = props[i];\n if (prop.charAt(0) === '$') {\n continue;\n }\n if (prop === 'options') {\n animations.push(...this._animateOptions(target, values));\n continue;\n }\n const value = values[prop];\n let animation = running[prop];\n const cfg = animatedProps.get(prop);\n if (animation) {\n if (cfg && animation.active()) {\n animation.update(cfg, value, date);\n continue;\n } else {\n animation.cancel();\n }\n }\n if (!cfg || !cfg.duration) {\n target[prop] = value;\n continue;\n }\n running[prop] = animation = new Animation(cfg, target, prop, value);\n animations.push(animation);\n }\n return animations;\n }\n update(target, values) {\n if (this._properties.size === 0) {\n Object.assign(target, values);\n return;\n }\n const animations = this._createAnimations(target, values);\n if (animations.length) {\n animator.add(this._chart, animations);\n return true;\n }\n }\n}\nfunction awaitAll(animations, properties) {\n const running = [];\n const keys = Object.keys(properties);\n for (let i = 0; i < keys.length; i++) {\n const anim = animations[keys[i]];\n if (anim && anim.active()) {\n running.push(anim.wait());\n }\n }\n return Promise.all(running);\n}\nfunction resolveTargetOptions(target, newOptions) {\n if (!newOptions) {\n return;\n }\n let options = target.options;\n if (!options) {\n target.options = newOptions;\n return;\n }\n if (options.$shared) {\n target.options = options = Object.assign({}, options, {$shared: false, $animations: {}});\n }\n return options;\n}\n\nfunction scaleClip(scale, allowedOverflow) {\n const opts = scale && scale.options || {};\n const reverse = opts.reverse;\n const min = opts.min === undefined ? allowedOverflow : 0;\n const max = opts.max === undefined ? allowedOverflow : 0;\n return {\n start: reverse ? max : min,\n end: reverse ? min : max\n };\n}\nfunction defaultClip(xScale, yScale, allowedOverflow) {\n if (allowedOverflow === false) {\n return false;\n }\n const x = scaleClip(xScale, allowedOverflow);\n const y = scaleClip(yScale, allowedOverflow);\n return {\n top: y.end,\n right: x.end,\n bottom: y.start,\n left: x.start\n };\n}\nfunction toClip(value) {\n let t, r, b, l;\n if (isObject(value)) {\n t = value.top;\n r = value.right;\n b = value.bottom;\n l = value.left;\n } else {\n t = r = b = l = value;\n }\n return {\n top: t,\n right: r,\n bottom: b,\n left: l,\n disabled: value === false\n };\n}\nfunction getSortedDatasetIndices(chart, filterVisible) {\n const keys = [];\n const metasets = chart._getSortedDatasetMetas(filterVisible);\n let i, ilen;\n for (i = 0, ilen = metasets.length; i < ilen; ++i) {\n keys.push(metasets[i].index);\n }\n return keys;\n}\nfunction applyStack(stack, value, dsIndex, options = {}) {\n const keys = stack.keys;\n const singleMode = options.mode === 'single';\n let i, ilen, datasetIndex, otherValue;\n if (value === null) {\n return;\n }\n for (i = 0, ilen = keys.length; i < ilen; ++i) {\n datasetIndex = +keys[i];\n if (datasetIndex === dsIndex) {\n if (options.all) {\n continue;\n }\n break;\n }\n otherValue = stack.values[datasetIndex];\n if (isNumberFinite(otherValue) && (singleMode || (value === 0 || sign(value) === sign(otherValue)))) {\n value += otherValue;\n }\n }\n return value;\n}\nfunction convertObjectDataToArray(data) {\n const keys = Object.keys(data);\n const adata = new Array(keys.length);\n let i, ilen, key;\n for (i = 0, ilen = keys.length; i < ilen; ++i) {\n key = keys[i];\n adata[i] = {\n x: key,\n y: data[key]\n };\n }\n return adata;\n}\nfunction isStacked(scale, meta) {\n const stacked = scale && scale.options.stacked;\n return stacked || (stacked === undefined && meta.stack !== undefined);\n}\nfunction getStackKey(indexScale, valueScale, meta) {\n return `${indexScale.id}.${valueScale.id}.${meta.stack || meta.type}`;\n}\nfunction getUserBounds(scale) {\n const {min, max, minDefined, maxDefined} = scale.getUserBounds();\n return {\n min: minDefined ? min : Number.NEGATIVE_INFINITY,\n max: maxDefined ? max : Number.POSITIVE_INFINITY\n };\n}\nfunction getOrCreateStack(stacks, stackKey, indexValue) {\n const subStack = stacks[stackKey] || (stacks[stackKey] = {});\n return subStack[indexValue] || (subStack[indexValue] = {});\n}\nfunction getLastIndexInStack(stack, vScale, positive, type) {\n for (const meta of vScale.getMatchingVisibleMetas(type).reverse()) {\n const value = stack[meta.index];\n if ((positive && value > 0) || (!positive && value < 0)) {\n return meta.index;\n }\n }\n return null;\n}\nfunction updateStacks(controller, parsed) {\n const {chart, _cachedMeta: meta} = controller;\n const stacks = chart._stacks || (chart._stacks = {});\n const {iScale, vScale, index: datasetIndex} = meta;\n const iAxis = iScale.axis;\n const vAxis = vScale.axis;\n const key = getStackKey(iScale, vScale, meta);\n const ilen = parsed.length;\n let stack;\n for (let i = 0; i < ilen; ++i) {\n const item = parsed[i];\n const {[iAxis]: index, [vAxis]: value} = item;\n const itemStacks = item._stacks || (item._stacks = {});\n stack = itemStacks[vAxis] = getOrCreateStack(stacks, key, index);\n stack[datasetIndex] = value;\n stack._top = getLastIndexInStack(stack, vScale, true, meta.type);\n stack._bottom = getLastIndexInStack(stack, vScale, false, meta.type);\n }\n}\nfunction getFirstScaleId(chart, axis) {\n const scales = chart.scales;\n return Object.keys(scales).filter(key => scales[key].axis === axis).shift();\n}\nfunction createDatasetContext(parent, index) {\n return createContext(parent,\n {\n active: false,\n dataset: undefined,\n datasetIndex: index,\n index,\n mode: 'default',\n type: 'dataset'\n }\n );\n}\nfunction createDataContext(parent, index, element) {\n return createContext(parent, {\n active: false,\n dataIndex: index,\n parsed: undefined,\n raw: undefined,\n element,\n index,\n mode: 'default',\n type: 'data'\n });\n}\nfunction clearStacks(meta, items) {\n const datasetIndex = meta.controller.index;\n const axis = meta.vScale && meta.vScale.axis;\n if (!axis) {\n return;\n }\n items = items || meta._parsed;\n for (const parsed of items) {\n const stacks = parsed._stacks;\n if (!stacks || stacks[axis] === undefined || stacks[axis][datasetIndex] === undefined) {\n return;\n }\n delete stacks[axis][datasetIndex];\n }\n}\nconst isDirectUpdateMode = (mode) => mode === 'reset' || mode === 'none';\nconst cloneIfNotShared = (cached, shared) => shared ? cached : Object.assign({}, cached);\nconst createStack = (canStack, meta, chart) => canStack && !meta.hidden && meta._stacked\n && {keys: getSortedDatasetIndices(chart, true), values: null};\nclass DatasetController {\n constructor(chart, datasetIndex) {\n this.chart = chart;\n this._ctx = chart.ctx;\n this.index = datasetIndex;\n this._cachedDataOpts = {};\n this._cachedMeta = this.getMeta();\n this._type = this._cachedMeta.type;\n this.options = undefined;\n this._parsing = false;\n this._data = undefined;\n this._objectData = undefined;\n this._sharedOptions = undefined;\n this._drawStart = undefined;\n this._drawCount = undefined;\n this.enableOptionSharing = false;\n this.supportsDecimation = false;\n this.$context = undefined;\n this._syncList = [];\n this.initialize();\n }\n initialize() {\n const meta = this._cachedMeta;\n this.configure();\n this.linkScales();\n meta._stacked = isStacked(meta.vScale, meta);\n this.addElements();\n }\n updateIndex(datasetIndex) {\n if (this.index !== datasetIndex) {\n clearStacks(this._cachedMeta);\n }\n this.index = datasetIndex;\n }\n linkScales() {\n const chart = this.chart;\n const meta = this._cachedMeta;\n const dataset = this.getDataset();\n const chooseId = (axis, x, y, r) => axis === 'x' ? x : axis === 'r' ? r : y;\n const xid = meta.xAxisID = valueOrDefault(dataset.xAxisID, getFirstScaleId(chart, 'x'));\n const yid = meta.yAxisID = valueOrDefault(dataset.yAxisID, getFirstScaleId(chart, 'y'));\n const rid = meta.rAxisID = valueOrDefault(dataset.rAxisID, getFirstScaleId(chart, 'r'));\n const indexAxis = meta.indexAxis;\n const iid = meta.iAxisID = chooseId(indexAxis, xid, yid, rid);\n const vid = meta.vAxisID = chooseId(indexAxis, yid, xid, rid);\n meta.xScale = this.getScaleForId(xid);\n meta.yScale = this.getScaleForId(yid);\n meta.rScale = this.getScaleForId(rid);\n meta.iScale = this.getScaleForId(iid);\n meta.vScale = this.getScaleForId(vid);\n }\n getDataset() {\n return this.chart.data.datasets[this.index];\n }\n getMeta() {\n return this.chart.getDatasetMeta(this.index);\n }\n getScaleForId(scaleID) {\n return this.chart.scales[scaleID];\n }\n _getOtherScale(scale) {\n const meta = this._cachedMeta;\n return scale === meta.iScale\n ? meta.vScale\n : meta.iScale;\n }\n reset() {\n this._update('reset');\n }\n _destroy() {\n const meta = this._cachedMeta;\n if (this._data) {\n unlistenArrayEvents(this._data, this);\n }\n if (meta._stacked) {\n clearStacks(meta);\n }\n }\n _dataCheck() {\n const dataset = this.getDataset();\n const data = dataset.data || (dataset.data = []);\n const _data = this._data;\n if (isObject(data)) {\n this._data = convertObjectDataToArray(data);\n } else if (_data !== data) {\n if (_data) {\n unlistenArrayEvents(_data, this);\n const meta = this._cachedMeta;\n clearStacks(meta);\n meta._parsed = [];\n }\n if (data && Object.isExtensible(data)) {\n listenArrayEvents(data, this);\n }\n this._syncList = [];\n this._data = data;\n }\n }\n addElements() {\n const meta = this._cachedMeta;\n this._dataCheck();\n if (this.datasetElementType) {\n meta.dataset = new this.datasetElementType();\n }\n }\n buildOrUpdateElements(resetNewElements) {\n const meta = this._cachedMeta;\n const dataset = this.getDataset();\n let stackChanged = false;\n this._dataCheck();\n const oldStacked = meta._stacked;\n meta._stacked = isStacked(meta.vScale, meta);\n if (meta.stack !== dataset.stack) {\n stackChanged = true;\n clearStacks(meta);\n meta.stack = dataset.stack;\n }\n this._resyncElements(resetNewElements);\n if (stackChanged || oldStacked !== meta._stacked) {\n updateStacks(this, meta._parsed);\n }\n }\n configure() {\n const config = this.chart.config;\n const scopeKeys = config.datasetScopeKeys(this._type);\n const scopes = config.getOptionScopes(this.getDataset(), scopeKeys, true);\n this.options = config.createResolver(scopes, this.getContext());\n this._parsing = this.options.parsing;\n this._cachedDataOpts = {};\n }\n parse(start, count) {\n const {_cachedMeta: meta, _data: data} = this;\n const {iScale, _stacked} = meta;\n const iAxis = iScale.axis;\n let sorted = start === 0 && count === data.length ? true : meta._sorted;\n let prev = start > 0 && meta._parsed[start - 1];\n let i, cur, parsed;\n if (this._parsing === false) {\n meta._parsed = data;\n meta._sorted = true;\n parsed = data;\n } else {\n if (isArray(data[start])) {\n parsed = this.parseArrayData(meta, data, start, count);\n } else if (isObject(data[start])) {\n parsed = this.parseObjectData(meta, data, start, count);\n } else {\n parsed = this.parsePrimitiveData(meta, data, start, count);\n }\n const isNotInOrderComparedToPrev = () => cur[iAxis] === null || (prev && cur[iAxis] < prev[iAxis]);\n for (i = 0; i < count; ++i) {\n meta._parsed[i + start] = cur = parsed[i];\n if (sorted) {\n if (isNotInOrderComparedToPrev()) {\n sorted = false;\n }\n prev = cur;\n }\n }\n meta._sorted = sorted;\n }\n if (_stacked) {\n updateStacks(this, parsed);\n }\n }\n parsePrimitiveData(meta, data, start, count) {\n const {iScale, vScale} = meta;\n const iAxis = iScale.axis;\n const vAxis = vScale.axis;\n const labels = iScale.getLabels();\n const singleScale = iScale === vScale;\n const parsed = new Array(count);\n let i, ilen, index;\n for (i = 0, ilen = count; i < ilen; ++i) {\n index = i + start;\n parsed[i] = {\n [iAxis]: singleScale || iScale.parse(labels[index], index),\n [vAxis]: vScale.parse(data[index], index)\n };\n }\n return parsed;\n }\n parseArrayData(meta, data, start, count) {\n const {xScale, yScale} = meta;\n const parsed = new Array(count);\n let i, ilen, index, item;\n for (i = 0, ilen = count; i < ilen; ++i) {\n index = i + start;\n item = data[index];\n parsed[i] = {\n x: xScale.parse(item[0], index),\n y: yScale.parse(item[1], index)\n };\n }\n return parsed;\n }\n parseObjectData(meta, data, start, count) {\n const {xScale, yScale} = meta;\n const {xAxisKey = 'x', yAxisKey = 'y'} = this._parsing;\n const parsed = new Array(count);\n let i, ilen, index, item;\n for (i = 0, ilen = count; i < ilen; ++i) {\n index = i + start;\n item = data[index];\n parsed[i] = {\n x: xScale.parse(resolveObjectKey(item, xAxisKey), index),\n y: yScale.parse(resolveObjectKey(item, yAxisKey), index)\n };\n }\n return parsed;\n }\n getParsed(index) {\n return this._cachedMeta._parsed[index];\n }\n getDataElement(index) {\n return this._cachedMeta.data[index];\n }\n applyStack(scale, parsed, mode) {\n const chart = this.chart;\n const meta = this._cachedMeta;\n const value = parsed[scale.axis];\n const stack = {\n keys: getSortedDatasetIndices(chart, true),\n values: parsed._stacks[scale.axis]\n };\n return applyStack(stack, value, meta.index, {mode});\n }\n updateRangeFromParsed(range, scale, parsed, stack) {\n const parsedValue = parsed[scale.axis];\n let value = parsedValue === null ? NaN : parsedValue;\n const values = stack && parsed._stacks[scale.axis];\n if (stack && values) {\n stack.values = values;\n value = applyStack(stack, parsedValue, this._cachedMeta.index);\n }\n range.min = Math.min(range.min, value);\n range.max = Math.max(range.max, value);\n }\n getMinMax(scale, canStack) {\n const meta = this._cachedMeta;\n const _parsed = meta._parsed;\n const sorted = meta._sorted && scale === meta.iScale;\n const ilen = _parsed.length;\n const otherScale = this._getOtherScale(scale);\n const stack = createStack(canStack, meta, this.chart);\n const range = {min: Number.POSITIVE_INFINITY, max: Number.NEGATIVE_INFINITY};\n const {min: otherMin, max: otherMax} = getUserBounds(otherScale);\n let i, parsed;\n function _skip() {\n parsed = _parsed[i];\n const otherValue = parsed[otherScale.axis];\n return !isNumberFinite(parsed[scale.axis]) || otherMin > otherValue || otherMax < otherValue;\n }\n for (i = 0; i < ilen; ++i) {\n if (_skip()) {\n continue;\n }\n this.updateRangeFromParsed(range, scale, parsed, stack);\n if (sorted) {\n break;\n }\n }\n if (sorted) {\n for (i = ilen - 1; i >= 0; --i) {\n if (_skip()) {\n continue;\n }\n this.updateRangeFromParsed(range, scale, parsed, stack);\n break;\n }\n }\n return range;\n }\n getAllParsedValues(scale) {\n const parsed = this._cachedMeta._parsed;\n const values = [];\n let i, ilen, value;\n for (i = 0, ilen = parsed.length; i < ilen; ++i) {\n value = parsed[i][scale.axis];\n if (isNumberFinite(value)) {\n values.push(value);\n }\n }\n return values;\n }\n getMaxOverflow() {\n return false;\n }\n getLabelAndValue(index) {\n const meta = this._cachedMeta;\n const iScale = meta.iScale;\n const vScale = meta.vScale;\n const parsed = this.getParsed(index);\n return {\n label: iScale ? '' + iScale.getLabelForValue(parsed[iScale.axis]) : '',\n value: vScale ? '' + vScale.getLabelForValue(parsed[vScale.axis]) : ''\n };\n }\n _update(mode) {\n const meta = this._cachedMeta;\n this.update(mode || 'default');\n meta._clip = toClip(valueOrDefault(this.options.clip, defaultClip(meta.xScale, meta.yScale, this.getMaxOverflow())));\n }\n update(mode) {}\n draw() {\n const ctx = this._ctx;\n const chart = this.chart;\n const meta = this._cachedMeta;\n const elements = meta.data || [];\n const area = chart.chartArea;\n const active = [];\n const start = this._drawStart || 0;\n const count = this._drawCount || (elements.length - start);\n const drawActiveElementsOnTop = this.options.drawActiveElementsOnTop;\n let i;\n if (meta.dataset) {\n meta.dataset.draw(ctx, area, start, count);\n }\n for (i = start; i < start + count; ++i) {\n const element = elements[i];\n if (element.hidden) {\n continue;\n }\n if (element.active && drawActiveElementsOnTop) {\n active.push(element);\n } else {\n element.draw(ctx, area);\n }\n }\n for (i = 0; i < active.length; ++i) {\n active[i].draw(ctx, area);\n }\n }\n getStyle(index, active) {\n const mode = active ? 'active' : 'default';\n return index === undefined && this._cachedMeta.dataset\n ? this.resolveDatasetElementOptions(mode)\n : this.resolveDataElementOptions(index || 0, mode);\n }\n getContext(index, active, mode) {\n const dataset = this.getDataset();\n let context;\n if (index >= 0 && index < this._cachedMeta.data.length) {\n const element = this._cachedMeta.data[index];\n context = element.$context ||\n (element.$context = createDataContext(this.getContext(), index, element));\n context.parsed = this.getParsed(index);\n context.raw = dataset.data[index];\n context.index = context.dataIndex = index;\n } else {\n context = this.$context ||\n (this.$context = createDatasetContext(this.chart.getContext(), this.index));\n context.dataset = dataset;\n context.index = context.datasetIndex = this.index;\n }\n context.active = !!active;\n context.mode = mode;\n return context;\n }\n resolveDatasetElementOptions(mode) {\n return this._resolveElementOptions(this.datasetElementType.id, mode);\n }\n resolveDataElementOptions(index, mode) {\n return this._resolveElementOptions(this.dataElementType.id, mode, index);\n }\n _resolveElementOptions(elementType, mode = 'default', index) {\n const active = mode === 'active';\n const cache = this._cachedDataOpts;\n const cacheKey = elementType + '-' + mode;\n const cached = cache[cacheKey];\n const sharing = this.enableOptionSharing && defined(index);\n if (cached) {\n return cloneIfNotShared(cached, sharing);\n }\n const config = this.chart.config;\n const scopeKeys = config.datasetElementScopeKeys(this._type, elementType);\n const prefixes = active ? [`${elementType}Hover`, 'hover', elementType, ''] : [elementType, ''];\n const scopes = config.getOptionScopes(this.getDataset(), scopeKeys);\n const names = Object.keys(defaults.elements[elementType]);\n const context = () => this.getContext(index, active);\n const values = config.resolveNamedOptions(scopes, names, context, prefixes);\n if (values.$shared) {\n values.$shared = sharing;\n cache[cacheKey] = Object.freeze(cloneIfNotShared(values, sharing));\n }\n return values;\n }\n _resolveAnimations(index, transition, active) {\n const chart = this.chart;\n const cache = this._cachedDataOpts;\n const cacheKey = `animation-${transition}`;\n const cached = cache[cacheKey];\n if (cached) {\n return cached;\n }\n let options;\n if (chart.options.animation !== false) {\n const config = this.chart.config;\n const scopeKeys = config.datasetAnimationScopeKeys(this._type, transition);\n const scopes = config.getOptionScopes(this.getDataset(), scopeKeys);\n options = config.createResolver(scopes, this.getContext(index, active, transition));\n }\n const animations = new Animations(chart, options && options.animations);\n if (options && options._cacheable) {\n cache[cacheKey] = Object.freeze(animations);\n }\n return animations;\n }\n getSharedOptions(options) {\n if (!options.$shared) {\n return;\n }\n return this._sharedOptions || (this._sharedOptions = Object.assign({}, options));\n }\n includeOptions(mode, sharedOptions) {\n return !sharedOptions || isDirectUpdateMode(mode) || this.chart._animationsDisabled;\n }\n _getSharedOptions(start, mode) {\n const firstOpts = this.resolveDataElementOptions(start, mode);\n const previouslySharedOptions = this._sharedOptions;\n const sharedOptions = this.getSharedOptions(firstOpts);\n const includeOptions = this.includeOptions(mode, sharedOptions) || (sharedOptions !== previouslySharedOptions);\n this.updateSharedOptions(sharedOptions, mode, firstOpts);\n return {sharedOptions, includeOptions};\n }\n updateElement(element, index, properties, mode) {\n if (isDirectUpdateMode(mode)) {\n Object.assign(element, properties);\n } else {\n this._resolveAnimations(index, mode).update(element, properties);\n }\n }\n updateSharedOptions(sharedOptions, mode, newOptions) {\n if (sharedOptions && !isDirectUpdateMode(mode)) {\n this._resolveAnimations(undefined, mode).update(sharedOptions, newOptions);\n }\n }\n _setStyle(element, index, mode, active) {\n element.active = active;\n const options = this.getStyle(index, active);\n this._resolveAnimations(index, mode, active).update(element, {\n options: (!active && this.getSharedOptions(options)) || options\n });\n }\n removeHoverStyle(element, datasetIndex, index) {\n this._setStyle(element, index, 'active', false);\n }\n setHoverStyle(element, datasetIndex, index) {\n this._setStyle(element, index, 'active', true);\n }\n _removeDatasetHoverStyle() {\n const element = this._cachedMeta.dataset;\n if (element) {\n this._setStyle(element, undefined, 'active', false);\n }\n }\n _setDatasetHoverStyle() {\n const element = this._cachedMeta.dataset;\n if (element) {\n this._setStyle(element, undefined, 'active', true);\n }\n }\n _resyncElements(resetNewElements) {\n const data = this._data;\n const elements = this._cachedMeta.data;\n for (const [method, arg1, arg2] of this._syncList) {\n this[method](arg1, arg2);\n }\n this._syncList = [];\n const numMeta = elements.length;\n const numData = data.length;\n const count = Math.min(numData, numMeta);\n if (count) {\n this.parse(0, count);\n }\n if (numData > numMeta) {\n this._insertElements(numMeta, numData - numMeta, resetNewElements);\n } else if (numData < numMeta) {\n this._removeElements(numData, numMeta - numData);\n }\n }\n _insertElements(start, count, resetNewElements = true) {\n const meta = this._cachedMeta;\n const data = meta.data;\n const end = start + count;\n let i;\n const move = (arr) => {\n arr.length += count;\n for (i = arr.length - 1; i >= end; i--) {\n arr[i] = arr[i - count];\n }\n };\n move(data);\n for (i = start; i < end; ++i) {\n data[i] = new this.dataElementType();\n }\n if (this._parsing) {\n move(meta._parsed);\n }\n this.parse(start, count);\n if (resetNewElements) {\n this.updateElements(data, start, count, 'reset');\n }\n }\n updateElements(element, start, count, mode) {}\n _removeElements(start, count) {\n const meta = this._cachedMeta;\n if (this._parsing) {\n const removed = meta._parsed.splice(start, count);\n if (meta._stacked) {\n clearStacks(meta, removed);\n }\n }\n meta.data.splice(start, count);\n }\n _sync(args) {\n if (this._parsing) {\n this._syncList.push(args);\n } else {\n const [method, arg1, arg2] = args;\n this[method](arg1, arg2);\n }\n this.chart._dataChanges.push([this.index, ...args]);\n }\n _onDataPush() {\n const count = arguments.length;\n this._sync(['_insertElements', this.getDataset().data.length - count, count]);\n }\n _onDataPop() {\n this._sync(['_removeElements', this._cachedMeta.data.length - 1, 1]);\n }\n _onDataShift() {\n this._sync(['_removeElements', 0, 1]);\n }\n _onDataSplice(start, count) {\n if (count) {\n this._sync(['_removeElements', start, count]);\n }\n const newCount = arguments.length - 2;\n if (newCount) {\n this._sync(['_insertElements', start, newCount]);\n }\n }\n _onDataUnshift() {\n this._sync(['_insertElements', 0, arguments.length]);\n }\n}\nDatasetController.defaults = {};\nDatasetController.prototype.datasetElementType = null;\nDatasetController.prototype.dataElementType = null;\n\nfunction getAllScaleValues(scale, type) {\n if (!scale._cache.$bar) {\n const visibleMetas = scale.getMatchingVisibleMetas(type);\n let values = [];\n for (let i = 0, ilen = visibleMetas.length; i < ilen; i++) {\n values = values.concat(visibleMetas[i].controller.getAllParsedValues(scale));\n }\n scale._cache.$bar = _arrayUnique(values.sort((a, b) => a - b));\n }\n return scale._cache.$bar;\n}\nfunction computeMinSampleSize(meta) {\n const scale = meta.iScale;\n const values = getAllScaleValues(scale, meta.type);\n let min = scale._length;\n let i, ilen, curr, prev;\n const updateMinAndPrev = () => {\n if (curr === 32767 || curr === -32768) {\n return;\n }\n if (defined(prev)) {\n min = Math.min(min, Math.abs(curr - prev) || min);\n }\n prev = curr;\n };\n for (i = 0, ilen = values.length; i < ilen; ++i) {\n curr = scale.getPixelForValue(values[i]);\n updateMinAndPrev();\n }\n prev = undefined;\n for (i = 0, ilen = scale.ticks.length; i < ilen; ++i) {\n curr = scale.getPixelForTick(i);\n updateMinAndPrev();\n }\n return min;\n}\nfunction computeFitCategoryTraits(index, ruler, options, stackCount) {\n const thickness = options.barThickness;\n let size, ratio;\n if (isNullOrUndef(thickness)) {\n size = ruler.min * options.categoryPercentage;\n ratio = options.barPercentage;\n } else {\n size = thickness * stackCount;\n ratio = 1;\n }\n return {\n chunk: size / stackCount,\n ratio,\n start: ruler.pixels[index] - (size / 2)\n };\n}\nfunction computeFlexCategoryTraits(index, ruler, options, stackCount) {\n const pixels = ruler.pixels;\n const curr = pixels[index];\n let prev = index > 0 ? pixels[index - 1] : null;\n let next = index < pixels.length - 1 ? pixels[index + 1] : null;\n const percent = options.categoryPercentage;\n if (prev === null) {\n prev = curr - (next === null ? ruler.end - ruler.start : next - curr);\n }\n if (next === null) {\n next = curr + curr - prev;\n }\n const start = curr - (curr - Math.min(prev, next)) / 2 * percent;\n const size = Math.abs(next - prev) / 2 * percent;\n return {\n chunk: size / stackCount,\n ratio: options.barPercentage,\n start\n };\n}\nfunction parseFloatBar(entry, item, vScale, i) {\n const startValue = vScale.parse(entry[0], i);\n const endValue = vScale.parse(entry[1], i);\n const min = Math.min(startValue, endValue);\n const max = Math.max(startValue, endValue);\n let barStart = min;\n let barEnd = max;\n if (Math.abs(min) > Math.abs(max)) {\n barStart = max;\n barEnd = min;\n }\n item[vScale.axis] = barEnd;\n item._custom = {\n barStart,\n barEnd,\n start: startValue,\n end: endValue,\n min,\n max\n };\n}\nfunction parseValue(entry, item, vScale, i) {\n if (isArray(entry)) {\n parseFloatBar(entry, item, vScale, i);\n } else {\n item[vScale.axis] = vScale.parse(entry, i);\n }\n return item;\n}\nfunction parseArrayOrPrimitive(meta, data, start, count) {\n const iScale = meta.iScale;\n const vScale = meta.vScale;\n const labels = iScale.getLabels();\n const singleScale = iScale === vScale;\n const parsed = [];\n let i, ilen, item, entry;\n for (i = start, ilen = start + count; i < ilen; ++i) {\n entry = data[i];\n item = {};\n item[iScale.axis] = singleScale || iScale.parse(labels[i], i);\n parsed.push(parseValue(entry, item, vScale, i));\n }\n return parsed;\n}\nfunction isFloatBar(custom) {\n return custom && custom.barStart !== undefined && custom.barEnd !== undefined;\n}\nfunction barSign(size, vScale, actualBase) {\n if (size !== 0) {\n return sign(size);\n }\n return (vScale.isHorizontal() ? 1 : -1) * (vScale.min >= actualBase ? 1 : -1);\n}\nfunction borderProps(properties) {\n let reverse, start, end, top, bottom;\n if (properties.horizontal) {\n reverse = properties.base > properties.x;\n start = 'left';\n end = 'right';\n } else {\n reverse = properties.base < properties.y;\n start = 'bottom';\n end = 'top';\n }\n if (reverse) {\n top = 'end';\n bottom = 'start';\n } else {\n top = 'start';\n bottom = 'end';\n }\n return {start, end, reverse, top, bottom};\n}\nfunction setBorderSkipped(properties, options, stack, index) {\n let edge = options.borderSkipped;\n const res = {};\n if (!edge) {\n properties.borderSkipped = res;\n return;\n }\n if (edge === true) {\n properties.borderSkipped = {top: true, right: true, bottom: true, left: true};\n return;\n }\n const {start, end, reverse, top, bottom} = borderProps(properties);\n if (edge === 'middle' && stack) {\n properties.enableBorderRadius = true;\n if ((stack._top || 0) === index) {\n edge = top;\n } else if ((stack._bottom || 0) === index) {\n edge = bottom;\n } else {\n res[parseEdge(bottom, start, end, reverse)] = true;\n edge = top;\n }\n }\n res[parseEdge(edge, start, end, reverse)] = true;\n properties.borderSkipped = res;\n}\nfunction parseEdge(edge, a, b, reverse) {\n if (reverse) {\n edge = swap(edge, a, b);\n edge = startEnd(edge, b, a);\n } else {\n edge = startEnd(edge, a, b);\n }\n return edge;\n}\nfunction swap(orig, v1, v2) {\n return orig === v1 ? v2 : orig === v2 ? v1 : orig;\n}\nfunction startEnd(v, start, end) {\n return v === 'start' ? start : v === 'end' ? end : v;\n}\nfunction setInflateAmount(properties, {inflateAmount}, ratio) {\n properties.inflateAmount = inflateAmount === 'auto'\n ? ratio === 1 ? 0.33 : 0\n : inflateAmount;\n}\nclass BarController extends DatasetController {\n parsePrimitiveData(meta, data, start, count) {\n return parseArrayOrPrimitive(meta, data, start, count);\n }\n parseArrayData(meta, data, start, count) {\n return parseArrayOrPrimitive(meta, data, start, count);\n }\n parseObjectData(meta, data, start, count) {\n const {iScale, vScale} = meta;\n const {xAxisKey = 'x', yAxisKey = 'y'} = this._parsing;\n const iAxisKey = iScale.axis === 'x' ? xAxisKey : yAxisKey;\n const vAxisKey = vScale.axis === 'x' ? xAxisKey : yAxisKey;\n const parsed = [];\n let i, ilen, item, obj;\n for (i = start, ilen = start + count; i < ilen; ++i) {\n obj = data[i];\n item = {};\n item[iScale.axis] = iScale.parse(resolveObjectKey(obj, iAxisKey), i);\n parsed.push(parseValue(resolveObjectKey(obj, vAxisKey), item, vScale, i));\n }\n return parsed;\n }\n updateRangeFromParsed(range, scale, parsed, stack) {\n super.updateRangeFromParsed(range, scale, parsed, stack);\n const custom = parsed._custom;\n if (custom && scale === this._cachedMeta.vScale) {\n range.min = Math.min(range.min, custom.min);\n range.max = Math.max(range.max, custom.max);\n }\n }\n getMaxOverflow() {\n return 0;\n }\n getLabelAndValue(index) {\n const meta = this._cachedMeta;\n const {iScale, vScale} = meta;\n const parsed = this.getParsed(index);\n const custom = parsed._custom;\n const value = isFloatBar(custom)\n ? '[' + custom.start + ', ' + custom.end + ']'\n : '' + vScale.getLabelForValue(parsed[vScale.axis]);\n return {\n label: '' + iScale.getLabelForValue(parsed[iScale.axis]),\n value\n };\n }\n initialize() {\n this.enableOptionSharing = true;\n super.initialize();\n const meta = this._cachedMeta;\n meta.stack = this.getDataset().stack;\n }\n update(mode) {\n const meta = this._cachedMeta;\n this.updateElements(meta.data, 0, meta.data.length, mode);\n }\n updateElements(bars, start, count, mode) {\n const reset = mode === 'reset';\n const {index, _cachedMeta: {vScale}} = this;\n const base = vScale.getBasePixel();\n const horizontal = vScale.isHorizontal();\n const ruler = this._getRuler();\n const {sharedOptions, includeOptions} = this._getSharedOptions(start, mode);\n for (let i = start; i < start + count; i++) {\n const parsed = this.getParsed(i);\n const vpixels = reset || isNullOrUndef(parsed[vScale.axis]) ? {base, head: base} : this._calculateBarValuePixels(i);\n const ipixels = this._calculateBarIndexPixels(i, ruler);\n const stack = (parsed._stacks || {})[vScale.axis];\n const properties = {\n horizontal,\n base: vpixels.base,\n enableBorderRadius: !stack || isFloatBar(parsed._custom) || (index === stack._top || index === stack._bottom),\n x: horizontal ? vpixels.head : ipixels.center,\n y: horizontal ? ipixels.center : vpixels.head,\n height: horizontal ? ipixels.size : Math.abs(vpixels.size),\n width: horizontal ? Math.abs(vpixels.size) : ipixels.size\n };\n if (includeOptions) {\n properties.options = sharedOptions || this.resolveDataElementOptions(i, bars[i].active ? 'active' : mode);\n }\n const options = properties.options || bars[i].options;\n setBorderSkipped(properties, options, stack, index);\n setInflateAmount(properties, options, ruler.ratio);\n this.updateElement(bars[i], i, properties, mode);\n }\n }\n _getStacks(last, dataIndex) {\n const {iScale} = this._cachedMeta;\n const metasets = iScale.getMatchingVisibleMetas(this._type)\n .filter(meta => meta.controller.options.grouped);\n const stacked = iScale.options.stacked;\n const stacks = [];\n const skipNull = (meta) => {\n const parsed = meta.controller.getParsed(dataIndex);\n const val = parsed && parsed[meta.vScale.axis];\n if (isNullOrUndef(val) || isNaN(val)) {\n return true;\n }\n };\n for (const meta of metasets) {\n if (dataIndex !== undefined && skipNull(meta)) {\n continue;\n }\n if (stacked === false || stacks.indexOf(meta.stack) === -1 ||\n\t\t\t\t(stacked === undefined && meta.stack === undefined)) {\n stacks.push(meta.stack);\n }\n if (meta.index === last) {\n break;\n }\n }\n if (!stacks.length) {\n stacks.push(undefined);\n }\n return stacks;\n }\n _getStackCount(index) {\n return this._getStacks(undefined, index).length;\n }\n _getStackIndex(datasetIndex, name, dataIndex) {\n const stacks = this._getStacks(datasetIndex, dataIndex);\n const index = (name !== undefined)\n ? stacks.indexOf(name)\n : -1;\n return (index === -1)\n ? stacks.length - 1\n : index;\n }\n _getRuler() {\n const opts = this.options;\n const meta = this._cachedMeta;\n const iScale = meta.iScale;\n const pixels = [];\n let i, ilen;\n for (i = 0, ilen = meta.data.length; i < ilen; ++i) {\n pixels.push(iScale.getPixelForValue(this.getParsed(i)[iScale.axis], i));\n }\n const barThickness = opts.barThickness;\n const min = barThickness || computeMinSampleSize(meta);\n return {\n min,\n pixels,\n start: iScale._startPixel,\n end: iScale._endPixel,\n stackCount: this._getStackCount(),\n scale: iScale,\n grouped: opts.grouped,\n ratio: barThickness ? 1 : opts.categoryPercentage * opts.barPercentage\n };\n }\n _calculateBarValuePixels(index) {\n const {_cachedMeta: {vScale, _stacked}, options: {base: baseValue, minBarLength}} = this;\n const actualBase = baseValue || 0;\n const parsed = this.getParsed(index);\n const custom = parsed._custom;\n const floating = isFloatBar(custom);\n let value = parsed[vScale.axis];\n let start = 0;\n let length = _stacked ? this.applyStack(vScale, parsed, _stacked) : value;\n let head, size;\n if (length !== value) {\n start = length - value;\n length = value;\n }\n if (floating) {\n value = custom.barStart;\n length = custom.barEnd - custom.barStart;\n if (value !== 0 && sign(value) !== sign(custom.barEnd)) {\n start = 0;\n }\n start += value;\n }\n const startValue = !isNullOrUndef(baseValue) && !floating ? baseValue : start;\n let base = vScale.getPixelForValue(startValue);\n if (this.chart.getDataVisibility(index)) {\n head = vScale.getPixelForValue(start + length);\n } else {\n head = base;\n }\n size = head - base;\n if (Math.abs(size) < minBarLength) {\n size = barSign(size, vScale, actualBase) * minBarLength;\n if (value === actualBase) {\n base -= size / 2;\n }\n const startPixel = vScale.getPixelForDecimal(0);\n const endPixel = vScale.getPixelForDecimal(1);\n const min = Math.min(startPixel, endPixel);\n const max = Math.max(startPixel, endPixel);\n base = Math.max(Math.min(base, max), min);\n head = base + size;\n }\n if (base === vScale.getPixelForValue(actualBase)) {\n const halfGrid = sign(size) * vScale.getLineWidthForValue(actualBase) / 2;\n base += halfGrid;\n size -= halfGrid;\n }\n return {\n size,\n base,\n head,\n center: head + size / 2\n };\n }\n _calculateBarIndexPixels(index, ruler) {\n const scale = ruler.scale;\n const options = this.options;\n const skipNull = options.skipNull;\n const maxBarThickness = valueOrDefault(options.maxBarThickness, Infinity);\n let center, size;\n if (ruler.grouped) {\n const stackCount = skipNull ? this._getStackCount(index) : ruler.stackCount;\n const range = options.barThickness === 'flex'\n ? computeFlexCategoryTraits(index, ruler, options, stackCount)\n : computeFitCategoryTraits(index, ruler, options, stackCount);\n const stackIndex = this._getStackIndex(this.index, this._cachedMeta.stack, skipNull ? index : undefined);\n center = range.start + (range.chunk * stackIndex) + (range.chunk / 2);\n size = Math.min(maxBarThickness, range.chunk * range.ratio);\n } else {\n center = scale.getPixelForValue(this.getParsed(index)[scale.axis], index);\n size = Math.min(maxBarThickness, ruler.min * ruler.ratio);\n }\n return {\n base: center - size / 2,\n head: center + size / 2,\n center,\n size\n };\n }\n draw() {\n const meta = this._cachedMeta;\n const vScale = meta.vScale;\n const rects = meta.data;\n const ilen = rects.length;\n let i = 0;\n for (; i < ilen; ++i) {\n if (this.getParsed(i)[vScale.axis] !== null) {\n rects[i].draw(this._ctx);\n }\n }\n }\n}\nBarController.id = 'bar';\nBarController.defaults = {\n datasetElementType: false,\n dataElementType: 'bar',\n categoryPercentage: 0.8,\n barPercentage: 0.9,\n grouped: true,\n animations: {\n numbers: {\n type: 'number',\n properties: ['x', 'y', 'base', 'width', 'height']\n }\n }\n};\nBarController.overrides = {\n scales: {\n _index_: {\n type: 'category',\n offset: true,\n grid: {\n offset: true\n }\n },\n _value_: {\n type: 'linear',\n beginAtZero: true,\n }\n }\n};\n\nclass BubbleController extends DatasetController {\n initialize() {\n this.enableOptionSharing = true;\n super.initialize();\n }\n parsePrimitiveData(meta, data, start, count) {\n const parsed = super.parsePrimitiveData(meta, data, start, count);\n for (let i = 0; i < parsed.length; i++) {\n parsed[i]._custom = this.resolveDataElementOptions(i + start).radius;\n }\n return parsed;\n }\n parseArrayData(meta, data, start, count) {\n const parsed = super.parseArrayData(meta, data, start, count);\n for (let i = 0; i < parsed.length; i++) {\n const item = data[start + i];\n parsed[i]._custom = valueOrDefault(item[2], this.resolveDataElementOptions(i + start).radius);\n }\n return parsed;\n }\n parseObjectData(meta, data, start, count) {\n const parsed = super.parseObjectData(meta, data, start, count);\n for (let i = 0; i < parsed.length; i++) {\n const item = data[start + i];\n parsed[i]._custom = valueOrDefault(item && item.r && +item.r, this.resolveDataElementOptions(i + start).radius);\n }\n return parsed;\n }\n getMaxOverflow() {\n const data = this._cachedMeta.data;\n let max = 0;\n for (let i = data.length - 1; i >= 0; --i) {\n max = Math.max(max, data[i].size(this.resolveDataElementOptions(i)) / 2);\n }\n return max > 0 && max;\n }\n getLabelAndValue(index) {\n const meta = this._cachedMeta;\n const {xScale, yScale} = meta;\n const parsed = this.getParsed(index);\n const x = xScale.getLabelForValue(parsed.x);\n const y = yScale.getLabelForValue(parsed.y);\n const r = parsed._custom;\n return {\n label: meta.label,\n value: '(' + x + ', ' + y + (r ? ', ' + r : '') + ')'\n };\n }\n update(mode) {\n const points = this._cachedMeta.data;\n this.updateElements(points, 0, points.length, mode);\n }\n updateElements(points, start, count, mode) {\n const reset = mode === 'reset';\n const {iScale, vScale} = this._cachedMeta;\n const {sharedOptions, includeOptions} = this._getSharedOptions(start, mode);\n const iAxis = iScale.axis;\n const vAxis = vScale.axis;\n for (let i = start; i < start + count; i++) {\n const point = points[i];\n const parsed = !reset && this.getParsed(i);\n const properties = {};\n const iPixel = properties[iAxis] = reset ? iScale.getPixelForDecimal(0.5) : iScale.getPixelForValue(parsed[iAxis]);\n const vPixel = properties[vAxis] = reset ? vScale.getBasePixel() : vScale.getPixelForValue(parsed[vAxis]);\n properties.skip = isNaN(iPixel) || isNaN(vPixel);\n if (includeOptions) {\n properties.options = sharedOptions || this.resolveDataElementOptions(i, point.active ? 'active' : mode);\n if (reset) {\n properties.options.radius = 0;\n }\n }\n this.updateElement(point, i, properties, mode);\n }\n }\n resolveDataElementOptions(index, mode) {\n const parsed = this.getParsed(index);\n let values = super.resolveDataElementOptions(index, mode);\n if (values.$shared) {\n values = Object.assign({}, values, {$shared: false});\n }\n const radius = values.radius;\n if (mode !== 'active') {\n values.radius = 0;\n }\n values.radius += valueOrDefault(parsed && parsed._custom, radius);\n return values;\n }\n}\nBubbleController.id = 'bubble';\nBubbleController.defaults = {\n datasetElementType: false,\n dataElementType: 'point',\n animations: {\n numbers: {\n type: 'number',\n properties: ['x', 'y', 'borderWidth', 'radius']\n }\n }\n};\nBubbleController.overrides = {\n scales: {\n x: {\n type: 'linear'\n },\n y: {\n type: 'linear'\n }\n },\n plugins: {\n tooltip: {\n callbacks: {\n title() {\n return '';\n }\n }\n }\n }\n};\n\nfunction getRatioAndOffset(rotation, circumference, cutout) {\n let ratioX = 1;\n let ratioY = 1;\n let offsetX = 0;\n let offsetY = 0;\n if (circumference < TAU) {\n const startAngle = rotation;\n const endAngle = startAngle + circumference;\n const startX = Math.cos(startAngle);\n const startY = Math.sin(startAngle);\n const endX = Math.cos(endAngle);\n const endY = Math.sin(endAngle);\n const calcMax = (angle, a, b) => _angleBetween(angle, startAngle, endAngle, true) ? 1 : Math.max(a, a * cutout, b, b * cutout);\n const calcMin = (angle, a, b) => _angleBetween(angle, startAngle, endAngle, true) ? -1 : Math.min(a, a * cutout, b, b * cutout);\n const maxX = calcMax(0, startX, endX);\n const maxY = calcMax(HALF_PI, startY, endY);\n const minX = calcMin(PI, startX, endX);\n const minY = calcMin(PI + HALF_PI, startY, endY);\n ratioX = (maxX - minX) / 2;\n ratioY = (maxY - minY) / 2;\n offsetX = -(maxX + minX) / 2;\n offsetY = -(maxY + minY) / 2;\n }\n return {ratioX, ratioY, offsetX, offsetY};\n}\nclass DoughnutController extends DatasetController {\n constructor(chart, datasetIndex) {\n super(chart, datasetIndex);\n this.enableOptionSharing = true;\n this.innerRadius = undefined;\n this.outerRadius = undefined;\n this.offsetX = undefined;\n this.offsetY = undefined;\n }\n linkScales() {}\n parse(start, count) {\n const data = this.getDataset().data;\n const meta = this._cachedMeta;\n if (this._parsing === false) {\n meta._parsed = data;\n } else {\n let getter = (i) => +data[i];\n if (isObject(data[start])) {\n const {key = 'value'} = this._parsing;\n getter = (i) => +resolveObjectKey(data[i], key);\n }\n let i, ilen;\n for (i = start, ilen = start + count; i < ilen; ++i) {\n meta._parsed[i] = getter(i);\n }\n }\n }\n _getRotation() {\n return toRadians(this.options.rotation - 90);\n }\n _getCircumference() {\n return toRadians(this.options.circumference);\n }\n _getRotationExtents() {\n let min = TAU;\n let max = -TAU;\n for (let i = 0; i < this.chart.data.datasets.length; ++i) {\n if (this.chart.isDatasetVisible(i)) {\n const controller = this.chart.getDatasetMeta(i).controller;\n const rotation = controller._getRotation();\n const circumference = controller._getCircumference();\n min = Math.min(min, rotation);\n max = Math.max(max, rotation + circumference);\n }\n }\n return {\n rotation: min,\n circumference: max - min,\n };\n }\n update(mode) {\n const chart = this.chart;\n const {chartArea} = chart;\n const meta = this._cachedMeta;\n const arcs = meta.data;\n const spacing = this.getMaxBorderWidth() + this.getMaxOffset(arcs) + this.options.spacing;\n const maxSize = Math.max((Math.min(chartArea.width, chartArea.height) - spacing) / 2, 0);\n const cutout = Math.min(toPercentage(this.options.cutout, maxSize), 1);\n const chartWeight = this._getRingWeight(this.index);\n const {circumference, rotation} = this._getRotationExtents();\n const {ratioX, ratioY, offsetX, offsetY} = getRatioAndOffset(rotation, circumference, cutout);\n const maxWidth = (chartArea.width - spacing) / ratioX;\n const maxHeight = (chartArea.height - spacing) / ratioY;\n const maxRadius = Math.max(Math.min(maxWidth, maxHeight) / 2, 0);\n const outerRadius = toDimension(this.options.radius, maxRadius);\n const innerRadius = Math.max(outerRadius * cutout, 0);\n const radiusLength = (outerRadius - innerRadius) / this._getVisibleDatasetWeightTotal();\n this.offsetX = offsetX * outerRadius;\n this.offsetY = offsetY * outerRadius;\n meta.total = this.calculateTotal();\n this.outerRadius = outerRadius - radiusLength * this._getRingWeightOffset(this.index);\n this.innerRadius = Math.max(this.outerRadius - radiusLength * chartWeight, 0);\n this.updateElements(arcs, 0, arcs.length, mode);\n }\n _circumference(i, reset) {\n const opts = this.options;\n const meta = this._cachedMeta;\n const circumference = this._getCircumference();\n if ((reset && opts.animation.animateRotate) || !this.chart.getDataVisibility(i) || meta._parsed[i] === null || meta.data[i].hidden) {\n return 0;\n }\n return this.calculateCircumference(meta._parsed[i] * circumference / TAU);\n }\n updateElements(arcs, start, count, mode) {\n const reset = mode === 'reset';\n const chart = this.chart;\n const chartArea = chart.chartArea;\n const opts = chart.options;\n const animationOpts = opts.animation;\n const centerX = (chartArea.left + chartArea.right) / 2;\n const centerY = (chartArea.top + chartArea.bottom) / 2;\n const animateScale = reset && animationOpts.animateScale;\n const innerRadius = animateScale ? 0 : this.innerRadius;\n const outerRadius = animateScale ? 0 : this.outerRadius;\n const {sharedOptions, includeOptions} = this._getSharedOptions(start, mode);\n let startAngle = this._getRotation();\n let i;\n for (i = 0; i < start; ++i) {\n startAngle += this._circumference(i, reset);\n }\n for (i = start; i < start + count; ++i) {\n const circumference = this._circumference(i, reset);\n const arc = arcs[i];\n const properties = {\n x: centerX + this.offsetX,\n y: centerY + this.offsetY,\n startAngle,\n endAngle: startAngle + circumference,\n circumference,\n outerRadius,\n innerRadius\n };\n if (includeOptions) {\n properties.options = sharedOptions || this.resolveDataElementOptions(i, arc.active ? 'active' : mode);\n }\n startAngle += circumference;\n this.updateElement(arc, i, properties, mode);\n }\n }\n calculateTotal() {\n const meta = this._cachedMeta;\n const metaData = meta.data;\n let total = 0;\n let i;\n for (i = 0; i < metaData.length; i++) {\n const value = meta._parsed[i];\n if (value !== null && !isNaN(value) && this.chart.getDataVisibility(i) && !metaData[i].hidden) {\n total += Math.abs(value);\n }\n }\n return total;\n }\n calculateCircumference(value) {\n const total = this._cachedMeta.total;\n if (total > 0 && !isNaN(value)) {\n return TAU * (Math.abs(value) / total);\n }\n return 0;\n }\n getLabelAndValue(index) {\n const meta = this._cachedMeta;\n const chart = this.chart;\n const labels = chart.data.labels || [];\n const value = formatNumber(meta._parsed[index], chart.options.locale);\n return {\n label: labels[index] || '',\n value,\n };\n }\n getMaxBorderWidth(arcs) {\n let max = 0;\n const chart = this.chart;\n let i, ilen, meta, controller, options;\n if (!arcs) {\n for (i = 0, ilen = chart.data.datasets.length; i < ilen; ++i) {\n if (chart.isDatasetVisible(i)) {\n meta = chart.getDatasetMeta(i);\n arcs = meta.data;\n controller = meta.controller;\n break;\n }\n }\n }\n if (!arcs) {\n return 0;\n }\n for (i = 0, ilen = arcs.length; i < ilen; ++i) {\n options = controller.resolveDataElementOptions(i);\n if (options.borderAlign !== 'inner') {\n max = Math.max(max, options.borderWidth || 0, options.hoverBorderWidth || 0);\n }\n }\n return max;\n }\n getMaxOffset(arcs) {\n let max = 0;\n for (let i = 0, ilen = arcs.length; i < ilen; ++i) {\n const options = this.resolveDataElementOptions(i);\n max = Math.max(max, options.offset || 0, options.hoverOffset || 0);\n }\n return max;\n }\n _getRingWeightOffset(datasetIndex) {\n let ringWeightOffset = 0;\n for (let i = 0; i < datasetIndex; ++i) {\n if (this.chart.isDatasetVisible(i)) {\n ringWeightOffset += this._getRingWeight(i);\n }\n }\n return ringWeightOffset;\n }\n _getRingWeight(datasetIndex) {\n return Math.max(valueOrDefault(this.chart.data.datasets[datasetIndex].weight, 1), 0);\n }\n _getVisibleDatasetWeightTotal() {\n return this._getRingWeightOffset(this.chart.data.datasets.length) || 1;\n }\n}\nDoughnutController.id = 'doughnut';\nDoughnutController.defaults = {\n datasetElementType: false,\n dataElementType: 'arc',\n animation: {\n animateRotate: true,\n animateScale: false\n },\n animations: {\n numbers: {\n type: 'number',\n properties: ['circumference', 'endAngle', 'innerRadius', 'outerRadius', 'startAngle', 'x', 'y', 'offset', 'borderWidth', 'spacing']\n },\n },\n cutout: '50%',\n rotation: 0,\n circumference: 360,\n radius: '100%',\n spacing: 0,\n indexAxis: 'r',\n};\nDoughnutController.descriptors = {\n _scriptable: (name) => name !== 'spacing',\n _indexable: (name) => name !== 'spacing',\n};\nDoughnutController.overrides = {\n aspectRatio: 1,\n plugins: {\n legend: {\n labels: {\n generateLabels(chart) {\n const data = chart.data;\n if (data.labels.length && data.datasets.length) {\n const {labels: {pointStyle}} = chart.legend.options;\n return data.labels.map((label, i) => {\n const meta = chart.getDatasetMeta(0);\n const style = meta.controller.getStyle(i);\n return {\n text: label,\n fillStyle: style.backgroundColor,\n strokeStyle: style.borderColor,\n lineWidth: style.borderWidth,\n pointStyle: pointStyle,\n hidden: !chart.getDataVisibility(i),\n index: i\n };\n });\n }\n return [];\n }\n },\n onClick(e, legendItem, legend) {\n legend.chart.toggleDataVisibility(legendItem.index);\n legend.chart.update();\n }\n },\n tooltip: {\n callbacks: {\n title() {\n return '';\n },\n label(tooltipItem) {\n let dataLabel = tooltipItem.label;\n const value = ': ' + tooltipItem.formattedValue;\n if (isArray(dataLabel)) {\n dataLabel = dataLabel.slice();\n dataLabel[0] += value;\n } else {\n dataLabel += value;\n }\n return dataLabel;\n }\n }\n }\n }\n};\n\nclass LineController extends DatasetController {\n initialize() {\n this.enableOptionSharing = true;\n this.supportsDecimation = true;\n super.initialize();\n }\n update(mode) {\n const meta = this._cachedMeta;\n const {dataset: line, data: points = [], _dataset} = meta;\n const animationsDisabled = this.chart._animationsDisabled;\n let {start, count} = _getStartAndCountOfVisiblePoints(meta, points, animationsDisabled);\n this._drawStart = start;\n this._drawCount = count;\n if (_scaleRangesChanged(meta)) {\n start = 0;\n count = points.length;\n }\n line._chart = this.chart;\n line._datasetIndex = this.index;\n line._decimated = !!_dataset._decimated;\n line.points = points;\n const options = this.resolveDatasetElementOptions(mode);\n if (!this.options.showLine) {\n options.borderWidth = 0;\n }\n options.segment = this.options.segment;\n this.updateElement(line, undefined, {\n animated: !animationsDisabled,\n options\n }, mode);\n this.updateElements(points, start, count, mode);\n }\n updateElements(points, start, count, mode) {\n const reset = mode === 'reset';\n const {iScale, vScale, _stacked, _dataset} = this._cachedMeta;\n const {sharedOptions, includeOptions} = this._getSharedOptions(start, mode);\n const iAxis = iScale.axis;\n const vAxis = vScale.axis;\n const {spanGaps, segment} = this.options;\n const maxGapLength = isNumber(spanGaps) ? spanGaps : Number.POSITIVE_INFINITY;\n const directUpdate = this.chart._animationsDisabled || reset || mode === 'none';\n let prevParsed = start > 0 && this.getParsed(start - 1);\n for (let i = start; i < start + count; ++i) {\n const point = points[i];\n const parsed = this.getParsed(i);\n const properties = directUpdate ? point : {};\n const nullData = isNullOrUndef(parsed[vAxis]);\n const iPixel = properties[iAxis] = iScale.getPixelForValue(parsed[iAxis], i);\n const vPixel = properties[vAxis] = reset || nullData ? vScale.getBasePixel() : vScale.getPixelForValue(_stacked ? this.applyStack(vScale, parsed, _stacked) : parsed[vAxis], i);\n properties.skip = isNaN(iPixel) || isNaN(vPixel) || nullData;\n properties.stop = i > 0 && (Math.abs(parsed[iAxis] - prevParsed[iAxis])) > maxGapLength;\n if (segment) {\n properties.parsed = parsed;\n properties.raw = _dataset.data[i];\n }\n if (includeOptions) {\n properties.options = sharedOptions || this.resolveDataElementOptions(i, point.active ? 'active' : mode);\n }\n if (!directUpdate) {\n this.updateElement(point, i, properties, mode);\n }\n prevParsed = parsed;\n }\n }\n getMaxOverflow() {\n const meta = this._cachedMeta;\n const dataset = meta.dataset;\n const border = dataset.options && dataset.options.borderWidth || 0;\n const data = meta.data || [];\n if (!data.length) {\n return border;\n }\n const firstPoint = data[0].size(this.resolveDataElementOptions(0));\n const lastPoint = data[data.length - 1].size(this.resolveDataElementOptions(data.length - 1));\n return Math.max(border, firstPoint, lastPoint) / 2;\n }\n draw() {\n const meta = this._cachedMeta;\n meta.dataset.updateControlPoints(this.chart.chartArea, meta.iScale.axis);\n super.draw();\n }\n}\nLineController.id = 'line';\nLineController.defaults = {\n datasetElementType: 'line',\n dataElementType: 'point',\n showLine: true,\n spanGaps: false,\n};\nLineController.overrides = {\n scales: {\n _index_: {\n type: 'category',\n },\n _value_: {\n type: 'linear',\n },\n }\n};\n\nclass PolarAreaController extends DatasetController {\n constructor(chart, datasetIndex) {\n super(chart, datasetIndex);\n this.innerRadius = undefined;\n this.outerRadius = undefined;\n }\n getLabelAndValue(index) {\n const meta = this._cachedMeta;\n const chart = this.chart;\n const labels = chart.data.labels || [];\n const value = formatNumber(meta._parsed[index].r, chart.options.locale);\n return {\n label: labels[index] || '',\n value,\n };\n }\n parseObjectData(meta, data, start, count) {\n return _parseObjectDataRadialScale.bind(this)(meta, data, start, count);\n }\n update(mode) {\n const arcs = this._cachedMeta.data;\n this._updateRadius();\n this.updateElements(arcs, 0, arcs.length, mode);\n }\n getMinMax() {\n const meta = this._cachedMeta;\n const range = {min: Number.POSITIVE_INFINITY, max: Number.NEGATIVE_INFINITY};\n meta.data.forEach((element, index) => {\n const parsed = this.getParsed(index).r;\n if (!isNaN(parsed) && this.chart.getDataVisibility(index)) {\n if (parsed < range.min) {\n range.min = parsed;\n }\n if (parsed > range.max) {\n range.max = parsed;\n }\n }\n });\n return range;\n }\n _updateRadius() {\n const chart = this.chart;\n const chartArea = chart.chartArea;\n const opts = chart.options;\n const minSize = Math.min(chartArea.right - chartArea.left, chartArea.bottom - chartArea.top);\n const outerRadius = Math.max(minSize / 2, 0);\n const innerRadius = Math.max(opts.cutoutPercentage ? (outerRadius / 100) * (opts.cutoutPercentage) : 1, 0);\n const radiusLength = (outerRadius - innerRadius) / chart.getVisibleDatasetCount();\n this.outerRadius = outerRadius - (radiusLength * this.index);\n this.innerRadius = this.outerRadius - radiusLength;\n }\n updateElements(arcs, start, count, mode) {\n const reset = mode === 'reset';\n const chart = this.chart;\n const opts = chart.options;\n const animationOpts = opts.animation;\n const scale = this._cachedMeta.rScale;\n const centerX = scale.xCenter;\n const centerY = scale.yCenter;\n const datasetStartAngle = scale.getIndexAngle(0) - 0.5 * PI;\n let angle = datasetStartAngle;\n let i;\n const defaultAngle = 360 / this.countVisibleElements();\n for (i = 0; i < start; ++i) {\n angle += this._computeAngle(i, mode, defaultAngle);\n }\n for (i = start; i < start + count; i++) {\n const arc = arcs[i];\n let startAngle = angle;\n let endAngle = angle + this._computeAngle(i, mode, defaultAngle);\n let outerRadius = chart.getDataVisibility(i) ? scale.getDistanceFromCenterForValue(this.getParsed(i).r) : 0;\n angle = endAngle;\n if (reset) {\n if (animationOpts.animateScale) {\n outerRadius = 0;\n }\n if (animationOpts.animateRotate) {\n startAngle = endAngle = datasetStartAngle;\n }\n }\n const properties = {\n x: centerX,\n y: centerY,\n innerRadius: 0,\n outerRadius,\n startAngle,\n endAngle,\n options: this.resolveDataElementOptions(i, arc.active ? 'active' : mode)\n };\n this.updateElement(arc, i, properties, mode);\n }\n }\n countVisibleElements() {\n const meta = this._cachedMeta;\n let count = 0;\n meta.data.forEach((element, index) => {\n if (!isNaN(this.getParsed(index).r) && this.chart.getDataVisibility(index)) {\n count++;\n }\n });\n return count;\n }\n _computeAngle(index, mode, defaultAngle) {\n return this.chart.getDataVisibility(index)\n ? toRadians(this.resolveDataElementOptions(index, mode).angle || defaultAngle)\n : 0;\n }\n}\nPolarAreaController.id = 'polarArea';\nPolarAreaController.defaults = {\n dataElementType: 'arc',\n animation: {\n animateRotate: true,\n animateScale: true\n },\n animations: {\n numbers: {\n type: 'number',\n properties: ['x', 'y', 'startAngle', 'endAngle', 'innerRadius', 'outerRadius']\n },\n },\n indexAxis: 'r',\n startAngle: 0,\n};\nPolarAreaController.overrides = {\n aspectRatio: 1,\n plugins: {\n legend: {\n labels: {\n generateLabels(chart) {\n const data = chart.data;\n if (data.labels.length && data.datasets.length) {\n const {labels: {pointStyle}} = chart.legend.options;\n return data.labels.map((label, i) => {\n const meta = chart.getDatasetMeta(0);\n const style = meta.controller.getStyle(i);\n return {\n text: label,\n fillStyle: style.backgroundColor,\n strokeStyle: style.borderColor,\n lineWidth: style.borderWidth,\n pointStyle: pointStyle,\n hidden: !chart.getDataVisibility(i),\n index: i\n };\n });\n }\n return [];\n }\n },\n onClick(e, legendItem, legend) {\n legend.chart.toggleDataVisibility(legendItem.index);\n legend.chart.update();\n }\n },\n tooltip: {\n callbacks: {\n title() {\n return '';\n },\n label(context) {\n return context.chart.data.labels[context.dataIndex] + ': ' + context.formattedValue;\n }\n }\n }\n },\n scales: {\n r: {\n type: 'radialLinear',\n angleLines: {\n display: false\n },\n beginAtZero: true,\n grid: {\n circular: true\n },\n pointLabels: {\n display: false\n },\n startAngle: 0\n }\n }\n};\n\nclass PieController extends DoughnutController {\n}\nPieController.id = 'pie';\nPieController.defaults = {\n cutout: 0,\n rotation: 0,\n circumference: 360,\n radius: '100%'\n};\n\nclass RadarController extends DatasetController {\n getLabelAndValue(index) {\n const vScale = this._cachedMeta.vScale;\n const parsed = this.getParsed(index);\n return {\n label: vScale.getLabels()[index],\n value: '' + vScale.getLabelForValue(parsed[vScale.axis])\n };\n }\n parseObjectData(meta, data, start, count) {\n return _parseObjectDataRadialScale.bind(this)(meta, data, start, count);\n }\n update(mode) {\n const meta = this._cachedMeta;\n const line = meta.dataset;\n const points = meta.data || [];\n const labels = meta.iScale.getLabels();\n line.points = points;\n if (mode !== 'resize') {\n const options = this.resolveDatasetElementOptions(mode);\n if (!this.options.showLine) {\n options.borderWidth = 0;\n }\n const properties = {\n _loop: true,\n _fullLoop: labels.length === points.length,\n options\n };\n this.updateElement(line, undefined, properties, mode);\n }\n this.updateElements(points, 0, points.length, mode);\n }\n updateElements(points, start, count, mode) {\n const scale = this._cachedMeta.rScale;\n const reset = mode === 'reset';\n for (let i = start; i < start + count; i++) {\n const point = points[i];\n const options = this.resolveDataElementOptions(i, point.active ? 'active' : mode);\n const pointPosition = scale.getPointPositionForValue(i, this.getParsed(i).r);\n const x = reset ? scale.xCenter : pointPosition.x;\n const y = reset ? scale.yCenter : pointPosition.y;\n const properties = {\n x,\n y,\n angle: pointPosition.angle,\n skip: isNaN(x) || isNaN(y),\n options\n };\n this.updateElement(point, i, properties, mode);\n }\n }\n}\nRadarController.id = 'radar';\nRadarController.defaults = {\n datasetElementType: 'line',\n dataElementType: 'point',\n indexAxis: 'r',\n showLine: true,\n elements: {\n line: {\n fill: 'start'\n }\n },\n};\nRadarController.overrides = {\n aspectRatio: 1,\n scales: {\n r: {\n type: 'radialLinear',\n }\n }\n};\n\nclass Element {\n constructor() {\n this.x = undefined;\n this.y = undefined;\n this.active = false;\n this.options = undefined;\n this.$animations = undefined;\n }\n tooltipPosition(useFinalPosition) {\n const {x, y} = this.getProps(['x', 'y'], useFinalPosition);\n return {x, y};\n }\n hasValue() {\n return isNumber(this.x) && isNumber(this.y);\n }\n getProps(props, final) {\n const anims = this.$animations;\n if (!final || !anims) {\n return this;\n }\n const ret = {};\n props.forEach(prop => {\n ret[prop] = anims[prop] && anims[prop].active() ? anims[prop]._to : this[prop];\n });\n return ret;\n }\n}\nElement.defaults = {};\nElement.defaultRoutes = undefined;\n\nconst formatters = {\n values(value) {\n return isArray(value) ? value : '' + value;\n },\n numeric(tickValue, index, ticks) {\n if (tickValue === 0) {\n return '0';\n }\n const locale = this.chart.options.locale;\n let notation;\n let delta = tickValue;\n if (ticks.length > 1) {\n const maxTick = Math.max(Math.abs(ticks[0].value), Math.abs(ticks[ticks.length - 1].value));\n if (maxTick < 1e-4 || maxTick > 1e+15) {\n notation = 'scientific';\n }\n delta = calculateDelta(tickValue, ticks);\n }\n const logDelta = log10(Math.abs(delta));\n const numDecimal = Math.max(Math.min(-1 * Math.floor(logDelta), 20), 0);\n const options = {notation, minimumFractionDigits: numDecimal, maximumFractionDigits: numDecimal};\n Object.assign(options, this.options.ticks.format);\n return formatNumber(tickValue, locale, options);\n },\n logarithmic(tickValue, index, ticks) {\n if (tickValue === 0) {\n return '0';\n }\n const remain = tickValue / (Math.pow(10, Math.floor(log10(tickValue))));\n if (remain === 1 || remain === 2 || remain === 5) {\n return formatters.numeric.call(this, tickValue, index, ticks);\n }\n return '';\n }\n};\nfunction calculateDelta(tickValue, ticks) {\n let delta = ticks.length > 3 ? ticks[2].value - ticks[1].value : ticks[1].value - ticks[0].value;\n if (Math.abs(delta) >= 1 && tickValue !== Math.floor(tickValue)) {\n delta = tickValue - Math.floor(tickValue);\n }\n return delta;\n}\nvar Ticks = {formatters};\n\ndefaults.set('scale', {\n display: true,\n offset: false,\n reverse: false,\n beginAtZero: false,\n bounds: 'ticks',\n grace: 0,\n grid: {\n display: true,\n lineWidth: 1,\n drawBorder: true,\n drawOnChartArea: true,\n drawTicks: true,\n tickLength: 8,\n tickWidth: (_ctx, options) => options.lineWidth,\n tickColor: (_ctx, options) => options.color,\n offset: false,\n borderDash: [],\n borderDashOffset: 0.0,\n borderWidth: 1\n },\n title: {\n display: false,\n text: '',\n padding: {\n top: 4,\n bottom: 4\n }\n },\n ticks: {\n minRotation: 0,\n maxRotation: 50,\n mirror: false,\n textStrokeWidth: 0,\n textStrokeColor: '',\n padding: 3,\n display: true,\n autoSkip: true,\n autoSkipPadding: 3,\n labelOffset: 0,\n callback: Ticks.formatters.values,\n minor: {},\n major: {},\n align: 'center',\n crossAlign: 'near',\n showLabelBackdrop: false,\n backdropColor: 'rgba(255, 255, 255, 0.75)',\n backdropPadding: 2,\n }\n});\ndefaults.route('scale.ticks', 'color', '', 'color');\ndefaults.route('scale.grid', 'color', '', 'borderColor');\ndefaults.route('scale.grid', 'borderColor', '', 'borderColor');\ndefaults.route('scale.title', 'color', '', 'color');\ndefaults.describe('scale', {\n _fallback: false,\n _scriptable: (name) => !name.startsWith('before') && !name.startsWith('after') && name !== 'callback' && name !== 'parser',\n _indexable: (name) => name !== 'borderDash' && name !== 'tickBorderDash',\n});\ndefaults.describe('scales', {\n _fallback: 'scale',\n});\ndefaults.describe('scale.ticks', {\n _scriptable: (name) => name !== 'backdropPadding' && name !== 'callback',\n _indexable: (name) => name !== 'backdropPadding',\n});\n\nfunction autoSkip(scale, ticks) {\n const tickOpts = scale.options.ticks;\n const ticksLimit = tickOpts.maxTicksLimit || determineMaxTicks(scale);\n const majorIndices = tickOpts.major.enabled ? getMajorIndices(ticks) : [];\n const numMajorIndices = majorIndices.length;\n const first = majorIndices[0];\n const last = majorIndices[numMajorIndices - 1];\n const newTicks = [];\n if (numMajorIndices > ticksLimit) {\n skipMajors(ticks, newTicks, majorIndices, numMajorIndices / ticksLimit);\n return newTicks;\n }\n const spacing = calculateSpacing(majorIndices, ticks, ticksLimit);\n if (numMajorIndices > 0) {\n let i, ilen;\n const avgMajorSpacing = numMajorIndices > 1 ? Math.round((last - first) / (numMajorIndices - 1)) : null;\n skip(ticks, newTicks, spacing, isNullOrUndef(avgMajorSpacing) ? 0 : first - avgMajorSpacing, first);\n for (i = 0, ilen = numMajorIndices - 1; i < ilen; i++) {\n skip(ticks, newTicks, spacing, majorIndices[i], majorIndices[i + 1]);\n }\n skip(ticks, newTicks, spacing, last, isNullOrUndef(avgMajorSpacing) ? ticks.length : last + avgMajorSpacing);\n return newTicks;\n }\n skip(ticks, newTicks, spacing);\n return newTicks;\n}\nfunction determineMaxTicks(scale) {\n const offset = scale.options.offset;\n const tickLength = scale._tickSize();\n const maxScale = scale._length / tickLength + (offset ? 0 : 1);\n const maxChart = scale._maxLength / tickLength;\n return Math.floor(Math.min(maxScale, maxChart));\n}\nfunction calculateSpacing(majorIndices, ticks, ticksLimit) {\n const evenMajorSpacing = getEvenSpacing(majorIndices);\n const spacing = ticks.length / ticksLimit;\n if (!evenMajorSpacing) {\n return Math.max(spacing, 1);\n }\n const factors = _factorize(evenMajorSpacing);\n for (let i = 0, ilen = factors.length - 1; i < ilen; i++) {\n const factor = factors[i];\n if (factor > spacing) {\n return factor;\n }\n }\n return Math.max(spacing, 1);\n}\nfunction getMajorIndices(ticks) {\n const result = [];\n let i, ilen;\n for (i = 0, ilen = ticks.length; i < ilen; i++) {\n if (ticks[i].major) {\n result.push(i);\n }\n }\n return result;\n}\nfunction skipMajors(ticks, newTicks, majorIndices, spacing) {\n let count = 0;\n let next = majorIndices[0];\n let i;\n spacing = Math.ceil(spacing);\n for (i = 0; i < ticks.length; i++) {\n if (i === next) {\n newTicks.push(ticks[i]);\n count++;\n next = majorIndices[count * spacing];\n }\n }\n}\nfunction skip(ticks, newTicks, spacing, majorStart, majorEnd) {\n const start = valueOrDefault(majorStart, 0);\n const end = Math.min(valueOrDefault(majorEnd, ticks.length), ticks.length);\n let count = 0;\n let length, i, next;\n spacing = Math.ceil(spacing);\n if (majorEnd) {\n length = majorEnd - majorStart;\n spacing = length / Math.floor(length / spacing);\n }\n next = start;\n while (next < 0) {\n count++;\n next = Math.round(start + count * spacing);\n }\n for (i = Math.max(start, 0); i < end; i++) {\n if (i === next) {\n newTicks.push(ticks[i]);\n count++;\n next = Math.round(start + count * spacing);\n }\n }\n}\nfunction getEvenSpacing(arr) {\n const len = arr.length;\n let i, diff;\n if (len < 2) {\n return false;\n }\n for (diff = arr[0], i = 1; i < len; ++i) {\n if (arr[i] - arr[i - 1] !== diff) {\n return false;\n }\n }\n return diff;\n}\n\nconst reverseAlign = (align) => align === 'left' ? 'right' : align === 'right' ? 'left' : align;\nconst offsetFromEdge = (scale, edge, offset) => edge === 'top' || edge === 'left' ? scale[edge] + offset : scale[edge] - offset;\nfunction sample(arr, numItems) {\n const result = [];\n const increment = arr.length / numItems;\n const len = arr.length;\n let i = 0;\n for (; i < len; i += increment) {\n result.push(arr[Math.floor(i)]);\n }\n return result;\n}\nfunction getPixelForGridLine(scale, index, offsetGridLines) {\n const length = scale.ticks.length;\n const validIndex = Math.min(index, length - 1);\n const start = scale._startPixel;\n const end = scale._endPixel;\n const epsilon = 1e-6;\n let lineValue = scale.getPixelForTick(validIndex);\n let offset;\n if (offsetGridLines) {\n if (length === 1) {\n offset = Math.max(lineValue - start, end - lineValue);\n } else if (index === 0) {\n offset = (scale.getPixelForTick(1) - lineValue) / 2;\n } else {\n offset = (lineValue - scale.getPixelForTick(validIndex - 1)) / 2;\n }\n lineValue += validIndex < index ? offset : -offset;\n if (lineValue < start - epsilon || lineValue > end + epsilon) {\n return;\n }\n }\n return lineValue;\n}\nfunction garbageCollect(caches, length) {\n each(caches, (cache) => {\n const gc = cache.gc;\n const gcLen = gc.length / 2;\n let i;\n if (gcLen > length) {\n for (i = 0; i < gcLen; ++i) {\n delete cache.data[gc[i]];\n }\n gc.splice(0, gcLen);\n }\n });\n}\nfunction getTickMarkLength(options) {\n return options.drawTicks ? options.tickLength : 0;\n}\nfunction getTitleHeight(options, fallback) {\n if (!options.display) {\n return 0;\n }\n const font = toFont(options.font, fallback);\n const padding = toPadding(options.padding);\n const lines = isArray(options.text) ? options.text.length : 1;\n return (lines * font.lineHeight) + padding.height;\n}\nfunction createScaleContext(parent, scale) {\n return createContext(parent, {\n scale,\n type: 'scale'\n });\n}\nfunction createTickContext(parent, index, tick) {\n return createContext(parent, {\n tick,\n index,\n type: 'tick'\n });\n}\nfunction titleAlign(align, position, reverse) {\n let ret = _toLeftRightCenter(align);\n if ((reverse && position !== 'right') || (!reverse && position === 'right')) {\n ret = reverseAlign(ret);\n }\n return ret;\n}\nfunction titleArgs(scale, offset, position, align) {\n const {top, left, bottom, right, chart} = scale;\n const {chartArea, scales} = chart;\n let rotation = 0;\n let maxWidth, titleX, titleY;\n const height = bottom - top;\n const width = right - left;\n if (scale.isHorizontal()) {\n titleX = _alignStartEnd(align, left, right);\n if (isObject(position)) {\n const positionAxisID = Object.keys(position)[0];\n const value = position[positionAxisID];\n titleY = scales[positionAxisID].getPixelForValue(value) + height - offset;\n } else if (position === 'center') {\n titleY = (chartArea.bottom + chartArea.top) / 2 + height - offset;\n } else {\n titleY = offsetFromEdge(scale, position, offset);\n }\n maxWidth = right - left;\n } else {\n if (isObject(position)) {\n const positionAxisID = Object.keys(position)[0];\n const value = position[positionAxisID];\n titleX = scales[positionAxisID].getPixelForValue(value) - width + offset;\n } else if (position === 'center') {\n titleX = (chartArea.left + chartArea.right) / 2 - width + offset;\n } else {\n titleX = offsetFromEdge(scale, position, offset);\n }\n titleY = _alignStartEnd(align, bottom, top);\n rotation = position === 'left' ? -HALF_PI : HALF_PI;\n }\n return {titleX, titleY, maxWidth, rotation};\n}\nclass Scale extends Element {\n constructor(cfg) {\n super();\n this.id = cfg.id;\n this.type = cfg.type;\n this.options = undefined;\n this.ctx = cfg.ctx;\n this.chart = cfg.chart;\n this.top = undefined;\n this.bottom = undefined;\n this.left = undefined;\n this.right = undefined;\n this.width = undefined;\n this.height = undefined;\n this._margins = {\n left: 0,\n right: 0,\n top: 0,\n bottom: 0\n };\n this.maxWidth = undefined;\n this.maxHeight = undefined;\n this.paddingTop = undefined;\n this.paddingBottom = undefined;\n this.paddingLeft = undefined;\n this.paddingRight = undefined;\n this.axis = undefined;\n this.labelRotation = undefined;\n this.min = undefined;\n this.max = undefined;\n this._range = undefined;\n this.ticks = [];\n this._gridLineItems = null;\n this._labelItems = null;\n this._labelSizes = null;\n this._length = 0;\n this._maxLength = 0;\n this._longestTextCache = {};\n this._startPixel = undefined;\n this._endPixel = undefined;\n this._reversePixels = false;\n this._userMax = undefined;\n this._userMin = undefined;\n this._suggestedMax = undefined;\n this._suggestedMin = undefined;\n this._ticksLength = 0;\n this._borderValue = 0;\n this._cache = {};\n this._dataLimitsCached = false;\n this.$context = undefined;\n }\n init(options) {\n this.options = options.setContext(this.getContext());\n this.axis = options.axis;\n this._userMin = this.parse(options.min);\n this._userMax = this.parse(options.max);\n this._suggestedMin = this.parse(options.suggestedMin);\n this._suggestedMax = this.parse(options.suggestedMax);\n }\n parse(raw, index) {\n return raw;\n }\n getUserBounds() {\n let {_userMin, _userMax, _suggestedMin, _suggestedMax} = this;\n _userMin = finiteOrDefault(_userMin, Number.POSITIVE_INFINITY);\n _userMax = finiteOrDefault(_userMax, Number.NEGATIVE_INFINITY);\n _suggestedMin = finiteOrDefault(_suggestedMin, Number.POSITIVE_INFINITY);\n _suggestedMax = finiteOrDefault(_suggestedMax, Number.NEGATIVE_INFINITY);\n return {\n min: finiteOrDefault(_userMin, _suggestedMin),\n max: finiteOrDefault(_userMax, _suggestedMax),\n minDefined: isNumberFinite(_userMin),\n maxDefined: isNumberFinite(_userMax)\n };\n }\n getMinMax(canStack) {\n let {min, max, minDefined, maxDefined} = this.getUserBounds();\n let range;\n if (minDefined && maxDefined) {\n return {min, max};\n }\n const metas = this.getMatchingVisibleMetas();\n for (let i = 0, ilen = metas.length; i < ilen; ++i) {\n range = metas[i].controller.getMinMax(this, canStack);\n if (!minDefined) {\n min = Math.min(min, range.min);\n }\n if (!maxDefined) {\n max = Math.max(max, range.max);\n }\n }\n min = maxDefined && min > max ? max : min;\n max = minDefined && min > max ? min : max;\n return {\n min: finiteOrDefault(min, finiteOrDefault(max, min)),\n max: finiteOrDefault(max, finiteOrDefault(min, max))\n };\n }\n getPadding() {\n return {\n left: this.paddingLeft || 0,\n top: this.paddingTop || 0,\n right: this.paddingRight || 0,\n bottom: this.paddingBottom || 0\n };\n }\n getTicks() {\n return this.ticks;\n }\n getLabels() {\n const data = this.chart.data;\n return this.options.labels || (this.isHorizontal() ? data.xLabels : data.yLabels) || data.labels || [];\n }\n beforeLayout() {\n this._cache = {};\n this._dataLimitsCached = false;\n }\n beforeUpdate() {\n callback(this.options.beforeUpdate, [this]);\n }\n update(maxWidth, maxHeight, margins) {\n const {beginAtZero, grace, ticks: tickOpts} = this.options;\n const sampleSize = tickOpts.sampleSize;\n this.beforeUpdate();\n this.maxWidth = maxWidth;\n this.maxHeight = maxHeight;\n this._margins = margins = Object.assign({\n left: 0,\n right: 0,\n top: 0,\n bottom: 0\n }, margins);\n this.ticks = null;\n this._labelSizes = null;\n this._gridLineItems = null;\n this._labelItems = null;\n this.beforeSetDimensions();\n this.setDimensions();\n this.afterSetDimensions();\n this._maxLength = this.isHorizontal()\n ? this.width + margins.left + margins.right\n : this.height + margins.top + margins.bottom;\n if (!this._dataLimitsCached) {\n this.beforeDataLimits();\n this.determineDataLimits();\n this.afterDataLimits();\n this._range = _addGrace(this, grace, beginAtZero);\n this._dataLimitsCached = true;\n }\n this.beforeBuildTicks();\n this.ticks = this.buildTicks() || [];\n this.afterBuildTicks();\n const samplingEnabled = sampleSize < this.ticks.length;\n this._convertTicksToLabels(samplingEnabled ? sample(this.ticks, sampleSize) : this.ticks);\n this.configure();\n this.beforeCalculateLabelRotation();\n this.calculateLabelRotation();\n this.afterCalculateLabelRotation();\n if (tickOpts.display && (tickOpts.autoSkip || tickOpts.source === 'auto')) {\n this.ticks = autoSkip(this, this.ticks);\n this._labelSizes = null;\n this.afterAutoSkip();\n }\n if (samplingEnabled) {\n this._convertTicksToLabels(this.ticks);\n }\n this.beforeFit();\n this.fit();\n this.afterFit();\n this.afterUpdate();\n }\n configure() {\n let reversePixels = this.options.reverse;\n let startPixel, endPixel;\n if (this.isHorizontal()) {\n startPixel = this.left;\n endPixel = this.right;\n } else {\n startPixel = this.top;\n endPixel = this.bottom;\n reversePixels = !reversePixels;\n }\n this._startPixel = startPixel;\n this._endPixel = endPixel;\n this._reversePixels = reversePixels;\n this._length = endPixel - startPixel;\n this._alignToPixels = this.options.alignToPixels;\n }\n afterUpdate() {\n callback(this.options.afterUpdate, [this]);\n }\n beforeSetDimensions() {\n callback(this.options.beforeSetDimensions, [this]);\n }\n setDimensions() {\n if (this.isHorizontal()) {\n this.width = this.maxWidth;\n this.left = 0;\n this.right = this.width;\n } else {\n this.height = this.maxHeight;\n this.top = 0;\n this.bottom = this.height;\n }\n this.paddingLeft = 0;\n this.paddingTop = 0;\n this.paddingRight = 0;\n this.paddingBottom = 0;\n }\n afterSetDimensions() {\n callback(this.options.afterSetDimensions, [this]);\n }\n _callHooks(name) {\n this.chart.notifyPlugins(name, this.getContext());\n callback(this.options[name], [this]);\n }\n beforeDataLimits() {\n this._callHooks('beforeDataLimits');\n }\n determineDataLimits() {}\n afterDataLimits() {\n this._callHooks('afterDataLimits');\n }\n beforeBuildTicks() {\n this._callHooks('beforeBuildTicks');\n }\n buildTicks() {\n return [];\n }\n afterBuildTicks() {\n this._callHooks('afterBuildTicks');\n }\n beforeTickToLabelConversion() {\n callback(this.options.beforeTickToLabelConversion, [this]);\n }\n generateTickLabels(ticks) {\n const tickOpts = this.options.ticks;\n let i, ilen, tick;\n for (i = 0, ilen = ticks.length; i < ilen; i++) {\n tick = ticks[i];\n tick.label = callback(tickOpts.callback, [tick.value, i, ticks], this);\n }\n }\n afterTickToLabelConversion() {\n callback(this.options.afterTickToLabelConversion, [this]);\n }\n beforeCalculateLabelRotation() {\n callback(this.options.beforeCalculateLabelRotation, [this]);\n }\n calculateLabelRotation() {\n const options = this.options;\n const tickOpts = options.ticks;\n const numTicks = this.ticks.length;\n const minRotation = tickOpts.minRotation || 0;\n const maxRotation = tickOpts.maxRotation;\n let labelRotation = minRotation;\n let tickWidth, maxHeight, maxLabelDiagonal;\n if (!this._isVisible() || !tickOpts.display || minRotation >= maxRotation || numTicks <= 1 || !this.isHorizontal()) {\n this.labelRotation = minRotation;\n return;\n }\n const labelSizes = this._getLabelSizes();\n const maxLabelWidth = labelSizes.widest.width;\n const maxLabelHeight = labelSizes.highest.height;\n const maxWidth = _limitValue(this.chart.width - maxLabelWidth, 0, this.maxWidth);\n tickWidth = options.offset ? this.maxWidth / numTicks : maxWidth / (numTicks - 1);\n if (maxLabelWidth + 6 > tickWidth) {\n tickWidth = maxWidth / (numTicks - (options.offset ? 0.5 : 1));\n maxHeight = this.maxHeight - getTickMarkLength(options.grid)\n\t\t\t\t- tickOpts.padding - getTitleHeight(options.title, this.chart.options.font);\n maxLabelDiagonal = Math.sqrt(maxLabelWidth * maxLabelWidth + maxLabelHeight * maxLabelHeight);\n labelRotation = toDegrees(Math.min(\n Math.asin(_limitValue((labelSizes.highest.height + 6) / tickWidth, -1, 1)),\n Math.asin(_limitValue(maxHeight / maxLabelDiagonal, -1, 1)) - Math.asin(_limitValue(maxLabelHeight / maxLabelDiagonal, -1, 1))\n ));\n labelRotation = Math.max(minRotation, Math.min(maxRotation, labelRotation));\n }\n this.labelRotation = labelRotation;\n }\n afterCalculateLabelRotation() {\n callback(this.options.afterCalculateLabelRotation, [this]);\n }\n afterAutoSkip() {}\n beforeFit() {\n callback(this.options.beforeFit, [this]);\n }\n fit() {\n const minSize = {\n width: 0,\n height: 0\n };\n const {chart, options: {ticks: tickOpts, title: titleOpts, grid: gridOpts}} = this;\n const display = this._isVisible();\n const isHorizontal = this.isHorizontal();\n if (display) {\n const titleHeight = getTitleHeight(titleOpts, chart.options.font);\n if (isHorizontal) {\n minSize.width = this.maxWidth;\n minSize.height = getTickMarkLength(gridOpts) + titleHeight;\n } else {\n minSize.height = this.maxHeight;\n minSize.width = getTickMarkLength(gridOpts) + titleHeight;\n }\n if (tickOpts.display && this.ticks.length) {\n const {first, last, widest, highest} = this._getLabelSizes();\n const tickPadding = tickOpts.padding * 2;\n const angleRadians = toRadians(this.labelRotation);\n const cos = Math.cos(angleRadians);\n const sin = Math.sin(angleRadians);\n if (isHorizontal) {\n const labelHeight = tickOpts.mirror ? 0 : sin * widest.width + cos * highest.height;\n minSize.height = Math.min(this.maxHeight, minSize.height + labelHeight + tickPadding);\n } else {\n const labelWidth = tickOpts.mirror ? 0 : cos * widest.width + sin * highest.height;\n minSize.width = Math.min(this.maxWidth, minSize.width + labelWidth + tickPadding);\n }\n this._calculatePadding(first, last, sin, cos);\n }\n }\n this._handleMargins();\n if (isHorizontal) {\n this.width = this._length = chart.width - this._margins.left - this._margins.right;\n this.height = minSize.height;\n } else {\n this.width = minSize.width;\n this.height = this._length = chart.height - this._margins.top - this._margins.bottom;\n }\n }\n _calculatePadding(first, last, sin, cos) {\n const {ticks: {align, padding}, position} = this.options;\n const isRotated = this.labelRotation !== 0;\n const labelsBelowTicks = position !== 'top' && this.axis === 'x';\n if (this.isHorizontal()) {\n const offsetLeft = this.getPixelForTick(0) - this.left;\n const offsetRight = this.right - this.getPixelForTick(this.ticks.length - 1);\n let paddingLeft = 0;\n let paddingRight = 0;\n if (isRotated) {\n if (labelsBelowTicks) {\n paddingLeft = cos * first.width;\n paddingRight = sin * last.height;\n } else {\n paddingLeft = sin * first.height;\n paddingRight = cos * last.width;\n }\n } else if (align === 'start') {\n paddingRight = last.width;\n } else if (align === 'end') {\n paddingLeft = first.width;\n } else if (align !== 'inner') {\n paddingLeft = first.width / 2;\n paddingRight = last.width / 2;\n }\n this.paddingLeft = Math.max((paddingLeft - offsetLeft + padding) * this.width / (this.width - offsetLeft), 0);\n this.paddingRight = Math.max((paddingRight - offsetRight + padding) * this.width / (this.width - offsetRight), 0);\n } else {\n let paddingTop = last.height / 2;\n let paddingBottom = first.height / 2;\n if (align === 'start') {\n paddingTop = 0;\n paddingBottom = first.height;\n } else if (align === 'end') {\n paddingTop = last.height;\n paddingBottom = 0;\n }\n this.paddingTop = paddingTop + padding;\n this.paddingBottom = paddingBottom + padding;\n }\n }\n _handleMargins() {\n if (this._margins) {\n this._margins.left = Math.max(this.paddingLeft, this._margins.left);\n this._margins.top = Math.max(this.paddingTop, this._margins.top);\n this._margins.right = Math.max(this.paddingRight, this._margins.right);\n this._margins.bottom = Math.max(this.paddingBottom, this._margins.bottom);\n }\n }\n afterFit() {\n callback(this.options.afterFit, [this]);\n }\n isHorizontal() {\n const {axis, position} = this.options;\n return position === 'top' || position === 'bottom' || axis === 'x';\n }\n isFullSize() {\n return this.options.fullSize;\n }\n _convertTicksToLabels(ticks) {\n this.beforeTickToLabelConversion();\n this.generateTickLabels(ticks);\n let i, ilen;\n for (i = 0, ilen = ticks.length; i < ilen; i++) {\n if (isNullOrUndef(ticks[i].label)) {\n ticks.splice(i, 1);\n ilen--;\n i--;\n }\n }\n this.afterTickToLabelConversion();\n }\n _getLabelSizes() {\n let labelSizes = this._labelSizes;\n if (!labelSizes) {\n const sampleSize = this.options.ticks.sampleSize;\n let ticks = this.ticks;\n if (sampleSize < ticks.length) {\n ticks = sample(ticks, sampleSize);\n }\n this._labelSizes = labelSizes = this._computeLabelSizes(ticks, ticks.length);\n }\n return labelSizes;\n }\n _computeLabelSizes(ticks, length) {\n const {ctx, _longestTextCache: caches} = this;\n const widths = [];\n const heights = [];\n let widestLabelSize = 0;\n let highestLabelSize = 0;\n let i, j, jlen, label, tickFont, fontString, cache, lineHeight, width, height, nestedLabel;\n for (i = 0; i < length; ++i) {\n label = ticks[i].label;\n tickFont = this._resolveTickFontOptions(i);\n ctx.font = fontString = tickFont.string;\n cache = caches[fontString] = caches[fontString] || {data: {}, gc: []};\n lineHeight = tickFont.lineHeight;\n width = height = 0;\n if (!isNullOrUndef(label) && !isArray(label)) {\n width = _measureText(ctx, cache.data, cache.gc, width, label);\n height = lineHeight;\n } else if (isArray(label)) {\n for (j = 0, jlen = label.length; j < jlen; ++j) {\n nestedLabel = label[j];\n if (!isNullOrUndef(nestedLabel) && !isArray(nestedLabel)) {\n width = _measureText(ctx, cache.data, cache.gc, width, nestedLabel);\n height += lineHeight;\n }\n }\n }\n widths.push(width);\n heights.push(height);\n widestLabelSize = Math.max(width, widestLabelSize);\n highestLabelSize = Math.max(height, highestLabelSize);\n }\n garbageCollect(caches, length);\n const widest = widths.indexOf(widestLabelSize);\n const highest = heights.indexOf(highestLabelSize);\n const valueAt = (idx) => ({width: widths[idx] || 0, height: heights[idx] || 0});\n return {\n first: valueAt(0),\n last: valueAt(length - 1),\n widest: valueAt(widest),\n highest: valueAt(highest),\n widths,\n heights,\n };\n }\n getLabelForValue(value) {\n return value;\n }\n getPixelForValue(value, index) {\n return NaN;\n }\n getValueForPixel(pixel) {}\n getPixelForTick(index) {\n const ticks = this.ticks;\n if (index < 0 || index > ticks.length - 1) {\n return null;\n }\n return this.getPixelForValue(ticks[index].value);\n }\n getPixelForDecimal(decimal) {\n if (this._reversePixels) {\n decimal = 1 - decimal;\n }\n const pixel = this._startPixel + decimal * this._length;\n return _int16Range(this._alignToPixels ? _alignPixel(this.chart, pixel, 0) : pixel);\n }\n getDecimalForPixel(pixel) {\n const decimal = (pixel - this._startPixel) / this._length;\n return this._reversePixels ? 1 - decimal : decimal;\n }\n getBasePixel() {\n return this.getPixelForValue(this.getBaseValue());\n }\n getBaseValue() {\n const {min, max} = this;\n return min < 0 && max < 0 ? max :\n min > 0 && max > 0 ? min :\n 0;\n }\n getContext(index) {\n const ticks = this.ticks || [];\n if (index >= 0 && index < ticks.length) {\n const tick = ticks[index];\n return tick.$context ||\n\t\t\t\t(tick.$context = createTickContext(this.getContext(), index, tick));\n }\n return this.$context ||\n\t\t\t(this.$context = createScaleContext(this.chart.getContext(), this));\n }\n _tickSize() {\n const optionTicks = this.options.ticks;\n const rot = toRadians(this.labelRotation);\n const cos = Math.abs(Math.cos(rot));\n const sin = Math.abs(Math.sin(rot));\n const labelSizes = this._getLabelSizes();\n const padding = optionTicks.autoSkipPadding || 0;\n const w = labelSizes ? labelSizes.widest.width + padding : 0;\n const h = labelSizes ? labelSizes.highest.height + padding : 0;\n return this.isHorizontal()\n ? h * cos > w * sin ? w / cos : h / sin\n : h * sin < w * cos ? h / cos : w / sin;\n }\n _isVisible() {\n const display = this.options.display;\n if (display !== 'auto') {\n return !!display;\n }\n return this.getMatchingVisibleMetas().length > 0;\n }\n _computeGridLineItems(chartArea) {\n const axis = this.axis;\n const chart = this.chart;\n const options = this.options;\n const {grid, position} = options;\n const offset = grid.offset;\n const isHorizontal = this.isHorizontal();\n const ticks = this.ticks;\n const ticksLength = ticks.length + (offset ? 1 : 0);\n const tl = getTickMarkLength(grid);\n const items = [];\n const borderOpts = grid.setContext(this.getContext());\n const axisWidth = borderOpts.drawBorder ? borderOpts.borderWidth : 0;\n const axisHalfWidth = axisWidth / 2;\n const alignBorderValue = function(pixel) {\n return _alignPixel(chart, pixel, axisWidth);\n };\n let borderValue, i, lineValue, alignedLineValue;\n let tx1, ty1, tx2, ty2, x1, y1, x2, y2;\n if (position === 'top') {\n borderValue = alignBorderValue(this.bottom);\n ty1 = this.bottom - tl;\n ty2 = borderValue - axisHalfWidth;\n y1 = alignBorderValue(chartArea.top) + axisHalfWidth;\n y2 = chartArea.bottom;\n } else if (position === 'bottom') {\n borderValue = alignBorderValue(this.top);\n y1 = chartArea.top;\n y2 = alignBorderValue(chartArea.bottom) - axisHalfWidth;\n ty1 = borderValue + axisHalfWidth;\n ty2 = this.top + tl;\n } else if (position === 'left') {\n borderValue = alignBorderValue(this.right);\n tx1 = this.right - tl;\n tx2 = borderValue - axisHalfWidth;\n x1 = alignBorderValue(chartArea.left) + axisHalfWidth;\n x2 = chartArea.right;\n } else if (position === 'right') {\n borderValue = alignBorderValue(this.left);\n x1 = chartArea.left;\n x2 = alignBorderValue(chartArea.right) - axisHalfWidth;\n tx1 = borderValue + axisHalfWidth;\n tx2 = this.left + tl;\n } else if (axis === 'x') {\n if (position === 'center') {\n borderValue = alignBorderValue((chartArea.top + chartArea.bottom) / 2 + 0.5);\n } else if (isObject(position)) {\n const positionAxisID = Object.keys(position)[0];\n const value = position[positionAxisID];\n borderValue = alignBorderValue(this.chart.scales[positionAxisID].getPixelForValue(value));\n }\n y1 = chartArea.top;\n y2 = chartArea.bottom;\n ty1 = borderValue + axisHalfWidth;\n ty2 = ty1 + tl;\n } else if (axis === 'y') {\n if (position === 'center') {\n borderValue = alignBorderValue((chartArea.left + chartArea.right) / 2);\n } else if (isObject(position)) {\n const positionAxisID = Object.keys(position)[0];\n const value = position[positionAxisID];\n borderValue = alignBorderValue(this.chart.scales[positionAxisID].getPixelForValue(value));\n }\n tx1 = borderValue - axisHalfWidth;\n tx2 = tx1 - tl;\n x1 = chartArea.left;\n x2 = chartArea.right;\n }\n const limit = valueOrDefault(options.ticks.maxTicksLimit, ticksLength);\n const step = Math.max(1, Math.ceil(ticksLength / limit));\n for (i = 0; i < ticksLength; i += step) {\n const optsAtIndex = grid.setContext(this.getContext(i));\n const lineWidth = optsAtIndex.lineWidth;\n const lineColor = optsAtIndex.color;\n const borderDash = optsAtIndex.borderDash || [];\n const borderDashOffset = optsAtIndex.borderDashOffset;\n const tickWidth = optsAtIndex.tickWidth;\n const tickColor = optsAtIndex.tickColor;\n const tickBorderDash = optsAtIndex.tickBorderDash || [];\n const tickBorderDashOffset = optsAtIndex.tickBorderDashOffset;\n lineValue = getPixelForGridLine(this, i, offset);\n if (lineValue === undefined) {\n continue;\n }\n alignedLineValue = _alignPixel(chart, lineValue, lineWidth);\n if (isHorizontal) {\n tx1 = tx2 = x1 = x2 = alignedLineValue;\n } else {\n ty1 = ty2 = y1 = y2 = alignedLineValue;\n }\n items.push({\n tx1,\n ty1,\n tx2,\n ty2,\n x1,\n y1,\n x2,\n y2,\n width: lineWidth,\n color: lineColor,\n borderDash,\n borderDashOffset,\n tickWidth,\n tickColor,\n tickBorderDash,\n tickBorderDashOffset,\n });\n }\n this._ticksLength = ticksLength;\n this._borderValue = borderValue;\n return items;\n }\n _computeLabelItems(chartArea) {\n const axis = this.axis;\n const options = this.options;\n const {position, ticks: optionTicks} = options;\n const isHorizontal = this.isHorizontal();\n const ticks = this.ticks;\n const {align, crossAlign, padding, mirror} = optionTicks;\n const tl = getTickMarkLength(options.grid);\n const tickAndPadding = tl + padding;\n const hTickAndPadding = mirror ? -padding : tickAndPadding;\n const rotation = -toRadians(this.labelRotation);\n const items = [];\n let i, ilen, tick, label, x, y, textAlign, pixel, font, lineHeight, lineCount, textOffset;\n let textBaseline = 'middle';\n if (position === 'top') {\n y = this.bottom - hTickAndPadding;\n textAlign = this._getXAxisLabelAlignment();\n } else if (position === 'bottom') {\n y = this.top + hTickAndPadding;\n textAlign = this._getXAxisLabelAlignment();\n } else if (position === 'left') {\n const ret = this._getYAxisLabelAlignment(tl);\n textAlign = ret.textAlign;\n x = ret.x;\n } else if (position === 'right') {\n const ret = this._getYAxisLabelAlignment(tl);\n textAlign = ret.textAlign;\n x = ret.x;\n } else if (axis === 'x') {\n if (position === 'center') {\n y = ((chartArea.top + chartArea.bottom) / 2) + tickAndPadding;\n } else if (isObject(position)) {\n const positionAxisID = Object.keys(position)[0];\n const value = position[positionAxisID];\n y = this.chart.scales[positionAxisID].getPixelForValue(value) + tickAndPadding;\n }\n textAlign = this._getXAxisLabelAlignment();\n } else if (axis === 'y') {\n if (position === 'center') {\n x = ((chartArea.left + chartArea.right) / 2) - tickAndPadding;\n } else if (isObject(position)) {\n const positionAxisID = Object.keys(position)[0];\n const value = position[positionAxisID];\n x = this.chart.scales[positionAxisID].getPixelForValue(value);\n }\n textAlign = this._getYAxisLabelAlignment(tl).textAlign;\n }\n if (axis === 'y') {\n if (align === 'start') {\n textBaseline = 'top';\n } else if (align === 'end') {\n textBaseline = 'bottom';\n }\n }\n const labelSizes = this._getLabelSizes();\n for (i = 0, ilen = ticks.length; i < ilen; ++i) {\n tick = ticks[i];\n label = tick.label;\n const optsAtIndex = optionTicks.setContext(this.getContext(i));\n pixel = this.getPixelForTick(i) + optionTicks.labelOffset;\n font = this._resolveTickFontOptions(i);\n lineHeight = font.lineHeight;\n lineCount = isArray(label) ? label.length : 1;\n const halfCount = lineCount / 2;\n const color = optsAtIndex.color;\n const strokeColor = optsAtIndex.textStrokeColor;\n const strokeWidth = optsAtIndex.textStrokeWidth;\n let tickTextAlign = textAlign;\n if (isHorizontal) {\n x = pixel;\n if (textAlign === 'inner') {\n if (i === ilen - 1) {\n tickTextAlign = !this.options.reverse ? 'right' : 'left';\n } else if (i === 0) {\n tickTextAlign = !this.options.reverse ? 'left' : 'right';\n } else {\n tickTextAlign = 'center';\n }\n }\n if (position === 'top') {\n if (crossAlign === 'near' || rotation !== 0) {\n textOffset = -lineCount * lineHeight + lineHeight / 2;\n } else if (crossAlign === 'center') {\n textOffset = -labelSizes.highest.height / 2 - halfCount * lineHeight + lineHeight;\n } else {\n textOffset = -labelSizes.highest.height + lineHeight / 2;\n }\n } else {\n if (crossAlign === 'near' || rotation !== 0) {\n textOffset = lineHeight / 2;\n } else if (crossAlign === 'center') {\n textOffset = labelSizes.highest.height / 2 - halfCount * lineHeight;\n } else {\n textOffset = labelSizes.highest.height - lineCount * lineHeight;\n }\n }\n if (mirror) {\n textOffset *= -1;\n }\n } else {\n y = pixel;\n textOffset = (1 - lineCount) * lineHeight / 2;\n }\n let backdrop;\n if (optsAtIndex.showLabelBackdrop) {\n const labelPadding = toPadding(optsAtIndex.backdropPadding);\n const height = labelSizes.heights[i];\n const width = labelSizes.widths[i];\n let top = y + textOffset - labelPadding.top;\n let left = x - labelPadding.left;\n switch (textBaseline) {\n case 'middle':\n top -= height / 2;\n break;\n case 'bottom':\n top -= height;\n break;\n }\n switch (textAlign) {\n case 'center':\n left -= width / 2;\n break;\n case 'right':\n left -= width;\n break;\n }\n backdrop = {\n left,\n top,\n width: width + labelPadding.width,\n height: height + labelPadding.height,\n color: optsAtIndex.backdropColor,\n };\n }\n items.push({\n rotation,\n label,\n font,\n color,\n strokeColor,\n strokeWidth,\n textOffset,\n textAlign: tickTextAlign,\n textBaseline,\n translation: [x, y],\n backdrop,\n });\n }\n return items;\n }\n _getXAxisLabelAlignment() {\n const {position, ticks} = this.options;\n const rotation = -toRadians(this.labelRotation);\n if (rotation) {\n return position === 'top' ? 'left' : 'right';\n }\n let align = 'center';\n if (ticks.align === 'start') {\n align = 'left';\n } else if (ticks.align === 'end') {\n align = 'right';\n } else if (ticks.align === 'inner') {\n align = 'inner';\n }\n return align;\n }\n _getYAxisLabelAlignment(tl) {\n const {position, ticks: {crossAlign, mirror, padding}} = this.options;\n const labelSizes = this._getLabelSizes();\n const tickAndPadding = tl + padding;\n const widest = labelSizes.widest.width;\n let textAlign;\n let x;\n if (position === 'left') {\n if (mirror) {\n x = this.right + padding;\n if (crossAlign === 'near') {\n textAlign = 'left';\n } else if (crossAlign === 'center') {\n textAlign = 'center';\n x += (widest / 2);\n } else {\n textAlign = 'right';\n x += widest;\n }\n } else {\n x = this.right - tickAndPadding;\n if (crossAlign === 'near') {\n textAlign = 'right';\n } else if (crossAlign === 'center') {\n textAlign = 'center';\n x -= (widest / 2);\n } else {\n textAlign = 'left';\n x = this.left;\n }\n }\n } else if (position === 'right') {\n if (mirror) {\n x = this.left + padding;\n if (crossAlign === 'near') {\n textAlign = 'right';\n } else if (crossAlign === 'center') {\n textAlign = 'center';\n x -= (widest / 2);\n } else {\n textAlign = 'left';\n x -= widest;\n }\n } else {\n x = this.left + tickAndPadding;\n if (crossAlign === 'near') {\n textAlign = 'left';\n } else if (crossAlign === 'center') {\n textAlign = 'center';\n x += widest / 2;\n } else {\n textAlign = 'right';\n x = this.right;\n }\n }\n } else {\n textAlign = 'right';\n }\n return {textAlign, x};\n }\n _computeLabelArea() {\n if (this.options.ticks.mirror) {\n return;\n }\n const chart = this.chart;\n const position = this.options.position;\n if (position === 'left' || position === 'right') {\n return {top: 0, left: this.left, bottom: chart.height, right: this.right};\n } if (position === 'top' || position === 'bottom') {\n return {top: this.top, left: 0, bottom: this.bottom, right: chart.width};\n }\n }\n drawBackground() {\n const {ctx, options: {backgroundColor}, left, top, width, height} = this;\n if (backgroundColor) {\n ctx.save();\n ctx.fillStyle = backgroundColor;\n ctx.fillRect(left, top, width, height);\n ctx.restore();\n }\n }\n getLineWidthForValue(value) {\n const grid = this.options.grid;\n if (!this._isVisible() || !grid.display) {\n return 0;\n }\n const ticks = this.ticks;\n const index = ticks.findIndex(t => t.value === value);\n if (index >= 0) {\n const opts = grid.setContext(this.getContext(index));\n return opts.lineWidth;\n }\n return 0;\n }\n drawGrid(chartArea) {\n const grid = this.options.grid;\n const ctx = this.ctx;\n const items = this._gridLineItems || (this._gridLineItems = this._computeGridLineItems(chartArea));\n let i, ilen;\n const drawLine = (p1, p2, style) => {\n if (!style.width || !style.color) {\n return;\n }\n ctx.save();\n ctx.lineWidth = style.width;\n ctx.strokeStyle = style.color;\n ctx.setLineDash(style.borderDash || []);\n ctx.lineDashOffset = style.borderDashOffset;\n ctx.beginPath();\n ctx.moveTo(p1.x, p1.y);\n ctx.lineTo(p2.x, p2.y);\n ctx.stroke();\n ctx.restore();\n };\n if (grid.display) {\n for (i = 0, ilen = items.length; i < ilen; ++i) {\n const item = items[i];\n if (grid.drawOnChartArea) {\n drawLine(\n {x: item.x1, y: item.y1},\n {x: item.x2, y: item.y2},\n item\n );\n }\n if (grid.drawTicks) {\n drawLine(\n {x: item.tx1, y: item.ty1},\n {x: item.tx2, y: item.ty2},\n {\n color: item.tickColor,\n width: item.tickWidth,\n borderDash: item.tickBorderDash,\n borderDashOffset: item.tickBorderDashOffset\n }\n );\n }\n }\n }\n }\n drawBorder() {\n const {chart, ctx, options: {grid}} = this;\n const borderOpts = grid.setContext(this.getContext());\n const axisWidth = grid.drawBorder ? borderOpts.borderWidth : 0;\n if (!axisWidth) {\n return;\n }\n const lastLineWidth = grid.setContext(this.getContext(0)).lineWidth;\n const borderValue = this._borderValue;\n let x1, x2, y1, y2;\n if (this.isHorizontal()) {\n x1 = _alignPixel(chart, this.left, axisWidth) - axisWidth / 2;\n x2 = _alignPixel(chart, this.right, lastLineWidth) + lastLineWidth / 2;\n y1 = y2 = borderValue;\n } else {\n y1 = _alignPixel(chart, this.top, axisWidth) - axisWidth / 2;\n y2 = _alignPixel(chart, this.bottom, lastLineWidth) + lastLineWidth / 2;\n x1 = x2 = borderValue;\n }\n ctx.save();\n ctx.lineWidth = borderOpts.borderWidth;\n ctx.strokeStyle = borderOpts.borderColor;\n ctx.beginPath();\n ctx.moveTo(x1, y1);\n ctx.lineTo(x2, y2);\n ctx.stroke();\n ctx.restore();\n }\n drawLabels(chartArea) {\n const optionTicks = this.options.ticks;\n if (!optionTicks.display) {\n return;\n }\n const ctx = this.ctx;\n const area = this._computeLabelArea();\n if (area) {\n clipArea(ctx, area);\n }\n const items = this._labelItems || (this._labelItems = this._computeLabelItems(chartArea));\n let i, ilen;\n for (i = 0, ilen = items.length; i < ilen; ++i) {\n const item = items[i];\n const tickFont = item.font;\n const label = item.label;\n if (item.backdrop) {\n ctx.fillStyle = item.backdrop.color;\n ctx.fillRect(item.backdrop.left, item.backdrop.top, item.backdrop.width, item.backdrop.height);\n }\n let y = item.textOffset;\n renderText(ctx, label, 0, y, tickFont, item);\n }\n if (area) {\n unclipArea(ctx);\n }\n }\n drawTitle() {\n const {ctx, options: {position, title, reverse}} = this;\n if (!title.display) {\n return;\n }\n const font = toFont(title.font);\n const padding = toPadding(title.padding);\n const align = title.align;\n let offset = font.lineHeight / 2;\n if (position === 'bottom' || position === 'center' || isObject(position)) {\n offset += padding.bottom;\n if (isArray(title.text)) {\n offset += font.lineHeight * (title.text.length - 1);\n }\n } else {\n offset += padding.top;\n }\n const {titleX, titleY, maxWidth, rotation} = titleArgs(this, offset, position, align);\n renderText(ctx, title.text, 0, 0, font, {\n color: title.color,\n maxWidth,\n rotation,\n textAlign: titleAlign(align, position, reverse),\n textBaseline: 'middle',\n translation: [titleX, titleY],\n });\n }\n draw(chartArea) {\n if (!this._isVisible()) {\n return;\n }\n this.drawBackground();\n this.drawGrid(chartArea);\n this.drawBorder();\n this.drawTitle();\n this.drawLabels(chartArea);\n }\n _layers() {\n const opts = this.options;\n const tz = opts.ticks && opts.ticks.z || 0;\n const gz = valueOrDefault(opts.grid && opts.grid.z, -1);\n if (!this._isVisible() || this.draw !== Scale.prototype.draw) {\n return [{\n z: tz,\n draw: (chartArea) => {\n this.draw(chartArea);\n }\n }];\n }\n return [{\n z: gz,\n draw: (chartArea) => {\n this.drawBackground();\n this.drawGrid(chartArea);\n this.drawTitle();\n }\n }, {\n z: gz + 1,\n draw: () => {\n this.drawBorder();\n }\n }, {\n z: tz,\n draw: (chartArea) => {\n this.drawLabels(chartArea);\n }\n }];\n }\n getMatchingVisibleMetas(type) {\n const metas = this.chart.getSortedVisibleDatasetMetas();\n const axisID = this.axis + 'AxisID';\n const result = [];\n let i, ilen;\n for (i = 0, ilen = metas.length; i < ilen; ++i) {\n const meta = metas[i];\n if (meta[axisID] === this.id && (!type || meta.type === type)) {\n result.push(meta);\n }\n }\n return result;\n }\n _resolveTickFontOptions(index) {\n const opts = this.options.ticks.setContext(this.getContext(index));\n return toFont(opts.font);\n }\n _maxDigits() {\n const fontSize = this._resolveTickFontOptions(0).lineHeight;\n return (this.isHorizontal() ? this.width : this.height) / fontSize;\n }\n}\n\nclass TypedRegistry {\n constructor(type, scope, override) {\n this.type = type;\n this.scope = scope;\n this.override = override;\n this.items = Object.create(null);\n }\n isForType(type) {\n return Object.prototype.isPrototypeOf.call(this.type.prototype, type.prototype);\n }\n register(item) {\n const proto = Object.getPrototypeOf(item);\n let parentScope;\n if (isIChartComponent(proto)) {\n parentScope = this.register(proto);\n }\n const items = this.items;\n const id = item.id;\n const scope = this.scope + '.' + id;\n if (!id) {\n throw new Error('class does not have id: ' + item);\n }\n if (id in items) {\n return scope;\n }\n items[id] = item;\n registerDefaults(item, scope, parentScope);\n if (this.override) {\n defaults.override(item.id, item.overrides);\n }\n return scope;\n }\n get(id) {\n return this.items[id];\n }\n unregister(item) {\n const items = this.items;\n const id = item.id;\n const scope = this.scope;\n if (id in items) {\n delete items[id];\n }\n if (scope && id in defaults[scope]) {\n delete defaults[scope][id];\n if (this.override) {\n delete overrides[id];\n }\n }\n }\n}\nfunction registerDefaults(item, scope, parentScope) {\n const itemDefaults = merge(Object.create(null), [\n parentScope ? defaults.get(parentScope) : {},\n defaults.get(scope),\n item.defaults\n ]);\n defaults.set(scope, itemDefaults);\n if (item.defaultRoutes) {\n routeDefaults(scope, item.defaultRoutes);\n }\n if (item.descriptors) {\n defaults.describe(scope, item.descriptors);\n }\n}\nfunction routeDefaults(scope, routes) {\n Object.keys(routes).forEach(property => {\n const propertyParts = property.split('.');\n const sourceName = propertyParts.pop();\n const sourceScope = [scope].concat(propertyParts).join('.');\n const parts = routes[property].split('.');\n const targetName = parts.pop();\n const targetScope = parts.join('.');\n defaults.route(sourceScope, sourceName, targetScope, targetName);\n });\n}\nfunction isIChartComponent(proto) {\n return 'id' in proto && 'defaults' in proto;\n}\n\nclass Registry {\n constructor() {\n this.controllers = new TypedRegistry(DatasetController, 'datasets', true);\n this.elements = new TypedRegistry(Element, 'elements');\n this.plugins = new TypedRegistry(Object, 'plugins');\n this.scales = new TypedRegistry(Scale, 'scales');\n this._typedRegistries = [this.controllers, this.scales, this.elements];\n }\n add(...args) {\n this._each('register', args);\n }\n remove(...args) {\n this._each('unregister', args);\n }\n addControllers(...args) {\n this._each('register', args, this.controllers);\n }\n addElements(...args) {\n this._each('register', args, this.elements);\n }\n addPlugins(...args) {\n this._each('register', args, this.plugins);\n }\n addScales(...args) {\n this._each('register', args, this.scales);\n }\n getController(id) {\n return this._get(id, this.controllers, 'controller');\n }\n getElement(id) {\n return this._get(id, this.elements, 'element');\n }\n getPlugin(id) {\n return this._get(id, this.plugins, 'plugin');\n }\n getScale(id) {\n return this._get(id, this.scales, 'scale');\n }\n removeControllers(...args) {\n this._each('unregister', args, this.controllers);\n }\n removeElements(...args) {\n this._each('unregister', args, this.elements);\n }\n removePlugins(...args) {\n this._each('unregister', args, this.plugins);\n }\n removeScales(...args) {\n this._each('unregister', args, this.scales);\n }\n _each(method, args, typedRegistry) {\n [...args].forEach(arg => {\n const reg = typedRegistry || this._getRegistryForType(arg);\n if (typedRegistry || reg.isForType(arg) || (reg === this.plugins && arg.id)) {\n this._exec(method, reg, arg);\n } else {\n each(arg, item => {\n const itemReg = typedRegistry || this._getRegistryForType(item);\n this._exec(method, itemReg, item);\n });\n }\n });\n }\n _exec(method, registry, component) {\n const camelMethod = _capitalize(method);\n callback(component['before' + camelMethod], [], component);\n registry[method](component);\n callback(component['after' + camelMethod], [], component);\n }\n _getRegistryForType(type) {\n for (let i = 0; i < this._typedRegistries.length; i++) {\n const reg = this._typedRegistries[i];\n if (reg.isForType(type)) {\n return reg;\n }\n }\n return this.plugins;\n }\n _get(id, typedRegistry, type) {\n const item = typedRegistry.get(id);\n if (item === undefined) {\n throw new Error('\"' + id + '\" is not a registered ' + type + '.');\n }\n return item;\n }\n}\nvar registry = new Registry();\n\nclass ScatterController extends DatasetController {\n update(mode) {\n const meta = this._cachedMeta;\n const {data: points = []} = meta;\n const animationsDisabled = this.chart._animationsDisabled;\n let {start, count} = _getStartAndCountOfVisiblePoints(meta, points, animationsDisabled);\n this._drawStart = start;\n this._drawCount = count;\n if (_scaleRangesChanged(meta)) {\n start = 0;\n count = points.length;\n }\n if (this.options.showLine) {\n const {dataset: line, _dataset} = meta;\n line._chart = this.chart;\n line._datasetIndex = this.index;\n line._decimated = !!_dataset._decimated;\n line.points = points;\n const options = this.resolveDatasetElementOptions(mode);\n options.segment = this.options.segment;\n this.updateElement(line, undefined, {\n animated: !animationsDisabled,\n options\n }, mode);\n }\n this.updateElements(points, start, count, mode);\n }\n addElements() {\n const {showLine} = this.options;\n if (!this.datasetElementType && showLine) {\n this.datasetElementType = registry.getElement('line');\n }\n super.addElements();\n }\n updateElements(points, start, count, mode) {\n const reset = mode === 'reset';\n const {iScale, vScale, _stacked, _dataset} = this._cachedMeta;\n const firstOpts = this.resolveDataElementOptions(start, mode);\n const sharedOptions = this.getSharedOptions(firstOpts);\n const includeOptions = this.includeOptions(mode, sharedOptions);\n const iAxis = iScale.axis;\n const vAxis = vScale.axis;\n const {spanGaps, segment} = this.options;\n const maxGapLength = isNumber(spanGaps) ? spanGaps : Number.POSITIVE_INFINITY;\n const directUpdate = this.chart._animationsDisabled || reset || mode === 'none';\n let prevParsed = start > 0 && this.getParsed(start - 1);\n for (let i = start; i < start + count; ++i) {\n const point = points[i];\n const parsed = this.getParsed(i);\n const properties = directUpdate ? point : {};\n const nullData = isNullOrUndef(parsed[vAxis]);\n const iPixel = properties[iAxis] = iScale.getPixelForValue(parsed[iAxis], i);\n const vPixel = properties[vAxis] = reset || nullData ? vScale.getBasePixel() : vScale.getPixelForValue(_stacked ? this.applyStack(vScale, parsed, _stacked) : parsed[vAxis], i);\n properties.skip = isNaN(iPixel) || isNaN(vPixel) || nullData;\n properties.stop = i > 0 && (Math.abs(parsed[iAxis] - prevParsed[iAxis])) > maxGapLength;\n if (segment) {\n properties.parsed = parsed;\n properties.raw = _dataset.data[i];\n }\n if (includeOptions) {\n properties.options = sharedOptions || this.resolveDataElementOptions(i, point.active ? 'active' : mode);\n }\n if (!directUpdate) {\n this.updateElement(point, i, properties, mode);\n }\n prevParsed = parsed;\n }\n this.updateSharedOptions(sharedOptions, mode, firstOpts);\n }\n getMaxOverflow() {\n const meta = this._cachedMeta;\n const data = meta.data || [];\n if (!this.options.showLine) {\n let max = 0;\n for (let i = data.length - 1; i >= 0; --i) {\n max = Math.max(max, data[i].size(this.resolveDataElementOptions(i)) / 2);\n }\n return max > 0 && max;\n }\n const dataset = meta.dataset;\n const border = dataset.options && dataset.options.borderWidth || 0;\n if (!data.length) {\n return border;\n }\n const firstPoint = data[0].size(this.resolveDataElementOptions(0));\n const lastPoint = data[data.length - 1].size(this.resolveDataElementOptions(data.length - 1));\n return Math.max(border, firstPoint, lastPoint) / 2;\n }\n}\nScatterController.id = 'scatter';\nScatterController.defaults = {\n datasetElementType: false,\n dataElementType: 'point',\n showLine: false,\n fill: false\n};\nScatterController.overrides = {\n interaction: {\n mode: 'point'\n },\n plugins: {\n tooltip: {\n callbacks: {\n title() {\n return '';\n },\n label(item) {\n return '(' + item.label + ', ' + item.formattedValue + ')';\n }\n }\n }\n },\n scales: {\n x: {\n type: 'linear'\n },\n y: {\n type: 'linear'\n }\n }\n};\n\nvar controllers = /*#__PURE__*/Object.freeze({\n__proto__: null,\nBarController: BarController,\nBubbleController: BubbleController,\nDoughnutController: DoughnutController,\nLineController: LineController,\nPolarAreaController: PolarAreaController,\nPieController: PieController,\nRadarController: RadarController,\nScatterController: ScatterController\n});\n\nfunction abstract() {\n throw new Error('This method is not implemented: Check that a complete date adapter is provided.');\n}\nclass DateAdapter {\n constructor(options) {\n this.options = options || {};\n }\n init(chartOptions) {}\n formats() {\n return abstract();\n }\n parse(value, format) {\n return abstract();\n }\n format(timestamp, format) {\n return abstract();\n }\n add(timestamp, amount, unit) {\n return abstract();\n }\n diff(a, b, unit) {\n return abstract();\n }\n startOf(timestamp, unit, weekday) {\n return abstract();\n }\n endOf(timestamp, unit) {\n return abstract();\n }\n}\nDateAdapter.override = function(members) {\n Object.assign(DateAdapter.prototype, members);\n};\nvar adapters = {\n _date: DateAdapter\n};\n\nfunction binarySearch(metaset, axis, value, intersect) {\n const {controller, data, _sorted} = metaset;\n const iScale = controller._cachedMeta.iScale;\n if (iScale && axis === iScale.axis && axis !== 'r' && _sorted && data.length) {\n const lookupMethod = iScale._reversePixels ? _rlookupByKey : _lookupByKey;\n if (!intersect) {\n return lookupMethod(data, axis, value);\n } else if (controller._sharedOptions) {\n const el = data[0];\n const range = typeof el.getRange === 'function' && el.getRange(axis);\n if (range) {\n const start = lookupMethod(data, axis, value - range);\n const end = lookupMethod(data, axis, value + range);\n return {lo: start.lo, hi: end.hi};\n }\n }\n }\n return {lo: 0, hi: data.length - 1};\n}\nfunction evaluateInteractionItems(chart, axis, position, handler, intersect) {\n const metasets = chart.getSortedVisibleDatasetMetas();\n const value = position[axis];\n for (let i = 0, ilen = metasets.length; i < ilen; ++i) {\n const {index, data} = metasets[i];\n const {lo, hi} = binarySearch(metasets[i], axis, value, intersect);\n for (let j = lo; j <= hi; ++j) {\n const element = data[j];\n if (!element.skip) {\n handler(element, index, j);\n }\n }\n }\n}\nfunction getDistanceMetricForAxis(axis) {\n const useX = axis.indexOf('x') !== -1;\n const useY = axis.indexOf('y') !== -1;\n return function(pt1, pt2) {\n const deltaX = useX ? Math.abs(pt1.x - pt2.x) : 0;\n const deltaY = useY ? Math.abs(pt1.y - pt2.y) : 0;\n return Math.sqrt(Math.pow(deltaX, 2) + Math.pow(deltaY, 2));\n };\n}\nfunction getIntersectItems(chart, position, axis, useFinalPosition, includeInvisible) {\n const items = [];\n if (!includeInvisible && !chart.isPointInArea(position)) {\n return items;\n }\n const evaluationFunc = function(element, datasetIndex, index) {\n if (!includeInvisible && !_isPointInArea(element, chart.chartArea, 0)) {\n return;\n }\n if (element.inRange(position.x, position.y, useFinalPosition)) {\n items.push({element, datasetIndex, index});\n }\n };\n evaluateInteractionItems(chart, axis, position, evaluationFunc, true);\n return items;\n}\nfunction getNearestRadialItems(chart, position, axis, useFinalPosition) {\n let items = [];\n function evaluationFunc(element, datasetIndex, index) {\n const {startAngle, endAngle} = element.getProps(['startAngle', 'endAngle'], useFinalPosition);\n const {angle} = getAngleFromPoint(element, {x: position.x, y: position.y});\n if (_angleBetween(angle, startAngle, endAngle)) {\n items.push({element, datasetIndex, index});\n }\n }\n evaluateInteractionItems(chart, axis, position, evaluationFunc);\n return items;\n}\nfunction getNearestCartesianItems(chart, position, axis, intersect, useFinalPosition, includeInvisible) {\n let items = [];\n const distanceMetric = getDistanceMetricForAxis(axis);\n let minDistance = Number.POSITIVE_INFINITY;\n function evaluationFunc(element, datasetIndex, index) {\n const inRange = element.inRange(position.x, position.y, useFinalPosition);\n if (intersect && !inRange) {\n return;\n }\n const center = element.getCenterPoint(useFinalPosition);\n const pointInArea = !!includeInvisible || chart.isPointInArea(center);\n if (!pointInArea && !inRange) {\n return;\n }\n const distance = distanceMetric(position, center);\n if (distance < minDistance) {\n items = [{element, datasetIndex, index}];\n minDistance = distance;\n } else if (distance === minDistance) {\n items.push({element, datasetIndex, index});\n }\n }\n evaluateInteractionItems(chart, axis, position, evaluationFunc);\n return items;\n}\nfunction getNearestItems(chart, position, axis, intersect, useFinalPosition, includeInvisible) {\n if (!includeInvisible && !chart.isPointInArea(position)) {\n return [];\n }\n return axis === 'r' && !intersect\n ? getNearestRadialItems(chart, position, axis, useFinalPosition)\n : getNearestCartesianItems(chart, position, axis, intersect, useFinalPosition, includeInvisible);\n}\nfunction getAxisItems(chart, position, axis, intersect, useFinalPosition) {\n const items = [];\n const rangeMethod = axis === 'x' ? 'inXRange' : 'inYRange';\n let intersectsItem = false;\n evaluateInteractionItems(chart, axis, position, (element, datasetIndex, index) => {\n if (element[rangeMethod](position[axis], useFinalPosition)) {\n items.push({element, datasetIndex, index});\n intersectsItem = intersectsItem || element.inRange(position.x, position.y, useFinalPosition);\n }\n });\n if (intersect && !intersectsItem) {\n return [];\n }\n return items;\n}\nvar Interaction = {\n evaluateInteractionItems,\n modes: {\n index(chart, e, options, useFinalPosition) {\n const position = getRelativePosition(e, chart);\n const axis = options.axis || 'x';\n const includeInvisible = options.includeInvisible || false;\n const items = options.intersect\n ? getIntersectItems(chart, position, axis, useFinalPosition, includeInvisible)\n : getNearestItems(chart, position, axis, false, useFinalPosition, includeInvisible);\n const elements = [];\n if (!items.length) {\n return [];\n }\n chart.getSortedVisibleDatasetMetas().forEach((meta) => {\n const index = items[0].index;\n const element = meta.data[index];\n if (element && !element.skip) {\n elements.push({element, datasetIndex: meta.index, index});\n }\n });\n return elements;\n },\n dataset(chart, e, options, useFinalPosition) {\n const position = getRelativePosition(e, chart);\n const axis = options.axis || 'xy';\n const includeInvisible = options.includeInvisible || false;\n let items = options.intersect\n ? getIntersectItems(chart, position, axis, useFinalPosition, includeInvisible) :\n getNearestItems(chart, position, axis, false, useFinalPosition, includeInvisible);\n if (items.length > 0) {\n const datasetIndex = items[0].datasetIndex;\n const data = chart.getDatasetMeta(datasetIndex).data;\n items = [];\n for (let i = 0; i < data.length; ++i) {\n items.push({element: data[i], datasetIndex, index: i});\n }\n }\n return items;\n },\n point(chart, e, options, useFinalPosition) {\n const position = getRelativePosition(e, chart);\n const axis = options.axis || 'xy';\n const includeInvisible = options.includeInvisible || false;\n return getIntersectItems(chart, position, axis, useFinalPosition, includeInvisible);\n },\n nearest(chart, e, options, useFinalPosition) {\n const position = getRelativePosition(e, chart);\n const axis = options.axis || 'xy';\n const includeInvisible = options.includeInvisible || false;\n return getNearestItems(chart, position, axis, options.intersect, useFinalPosition, includeInvisible);\n },\n x(chart, e, options, useFinalPosition) {\n const position = getRelativePosition(e, chart);\n return getAxisItems(chart, position, 'x', options.intersect, useFinalPosition);\n },\n y(chart, e, options, useFinalPosition) {\n const position = getRelativePosition(e, chart);\n return getAxisItems(chart, position, 'y', options.intersect, useFinalPosition);\n }\n }\n};\n\nconst STATIC_POSITIONS = ['left', 'top', 'right', 'bottom'];\nfunction filterByPosition(array, position) {\n return array.filter(v => v.pos === position);\n}\nfunction filterDynamicPositionByAxis(array, axis) {\n return array.filter(v => STATIC_POSITIONS.indexOf(v.pos) === -1 && v.box.axis === axis);\n}\nfunction sortByWeight(array, reverse) {\n return array.sort((a, b) => {\n const v0 = reverse ? b : a;\n const v1 = reverse ? a : b;\n return v0.weight === v1.weight ?\n v0.index - v1.index :\n v0.weight - v1.weight;\n });\n}\nfunction wrapBoxes(boxes) {\n const layoutBoxes = [];\n let i, ilen, box, pos, stack, stackWeight;\n for (i = 0, ilen = (boxes || []).length; i < ilen; ++i) {\n box = boxes[i];\n ({position: pos, options: {stack, stackWeight = 1}} = box);\n layoutBoxes.push({\n index: i,\n box,\n pos,\n horizontal: box.isHorizontal(),\n weight: box.weight,\n stack: stack && (pos + stack),\n stackWeight\n });\n }\n return layoutBoxes;\n}\nfunction buildStacks(layouts) {\n const stacks = {};\n for (const wrap of layouts) {\n const {stack, pos, stackWeight} = wrap;\n if (!stack || !STATIC_POSITIONS.includes(pos)) {\n continue;\n }\n const _stack = stacks[stack] || (stacks[stack] = {count: 0, placed: 0, weight: 0, size: 0});\n _stack.count++;\n _stack.weight += stackWeight;\n }\n return stacks;\n}\nfunction setLayoutDims(layouts, params) {\n const stacks = buildStacks(layouts);\n const {vBoxMaxWidth, hBoxMaxHeight} = params;\n let i, ilen, layout;\n for (i = 0, ilen = layouts.length; i < ilen; ++i) {\n layout = layouts[i];\n const {fullSize} = layout.box;\n const stack = stacks[layout.stack];\n const factor = stack && layout.stackWeight / stack.weight;\n if (layout.horizontal) {\n layout.width = factor ? factor * vBoxMaxWidth : fullSize && params.availableWidth;\n layout.height = hBoxMaxHeight;\n } else {\n layout.width = vBoxMaxWidth;\n layout.height = factor ? factor * hBoxMaxHeight : fullSize && params.availableHeight;\n }\n }\n return stacks;\n}\nfunction buildLayoutBoxes(boxes) {\n const layoutBoxes = wrapBoxes(boxes);\n const fullSize = sortByWeight(layoutBoxes.filter(wrap => wrap.box.fullSize), true);\n const left = sortByWeight(filterByPosition(layoutBoxes, 'left'), true);\n const right = sortByWeight(filterByPosition(layoutBoxes, 'right'));\n const top = sortByWeight(filterByPosition(layoutBoxes, 'top'), true);\n const bottom = sortByWeight(filterByPosition(layoutBoxes, 'bottom'));\n const centerHorizontal = filterDynamicPositionByAxis(layoutBoxes, 'x');\n const centerVertical = filterDynamicPositionByAxis(layoutBoxes, 'y');\n return {\n fullSize,\n leftAndTop: left.concat(top),\n rightAndBottom: right.concat(centerVertical).concat(bottom).concat(centerHorizontal),\n chartArea: filterByPosition(layoutBoxes, 'chartArea'),\n vertical: left.concat(right).concat(centerVertical),\n horizontal: top.concat(bottom).concat(centerHorizontal)\n };\n}\nfunction getCombinedMax(maxPadding, chartArea, a, b) {\n return Math.max(maxPadding[a], chartArea[a]) + Math.max(maxPadding[b], chartArea[b]);\n}\nfunction updateMaxPadding(maxPadding, boxPadding) {\n maxPadding.top = Math.max(maxPadding.top, boxPadding.top);\n maxPadding.left = Math.max(maxPadding.left, boxPadding.left);\n maxPadding.bottom = Math.max(maxPadding.bottom, boxPadding.bottom);\n maxPadding.right = Math.max(maxPadding.right, boxPadding.right);\n}\nfunction updateDims(chartArea, params, layout, stacks) {\n const {pos, box} = layout;\n const maxPadding = chartArea.maxPadding;\n if (!isObject(pos)) {\n if (layout.size) {\n chartArea[pos] -= layout.size;\n }\n const stack = stacks[layout.stack] || {size: 0, count: 1};\n stack.size = Math.max(stack.size, layout.horizontal ? box.height : box.width);\n layout.size = stack.size / stack.count;\n chartArea[pos] += layout.size;\n }\n if (box.getPadding) {\n updateMaxPadding(maxPadding, box.getPadding());\n }\n const newWidth = Math.max(0, params.outerWidth - getCombinedMax(maxPadding, chartArea, 'left', 'right'));\n const newHeight = Math.max(0, params.outerHeight - getCombinedMax(maxPadding, chartArea, 'top', 'bottom'));\n const widthChanged = newWidth !== chartArea.w;\n const heightChanged = newHeight !== chartArea.h;\n chartArea.w = newWidth;\n chartArea.h = newHeight;\n return layout.horizontal\n ? {same: widthChanged, other: heightChanged}\n : {same: heightChanged, other: widthChanged};\n}\nfunction handleMaxPadding(chartArea) {\n const maxPadding = chartArea.maxPadding;\n function updatePos(pos) {\n const change = Math.max(maxPadding[pos] - chartArea[pos], 0);\n chartArea[pos] += change;\n return change;\n }\n chartArea.y += updatePos('top');\n chartArea.x += updatePos('left');\n updatePos('right');\n updatePos('bottom');\n}\nfunction getMargins(horizontal, chartArea) {\n const maxPadding = chartArea.maxPadding;\n function marginForPositions(positions) {\n const margin = {left: 0, top: 0, right: 0, bottom: 0};\n positions.forEach((pos) => {\n margin[pos] = Math.max(chartArea[pos], maxPadding[pos]);\n });\n return margin;\n }\n return horizontal\n ? marginForPositions(['left', 'right'])\n : marginForPositions(['top', 'bottom']);\n}\nfunction fitBoxes(boxes, chartArea, params, stacks) {\n const refitBoxes = [];\n let i, ilen, layout, box, refit, changed;\n for (i = 0, ilen = boxes.length, refit = 0; i < ilen; ++i) {\n layout = boxes[i];\n box = layout.box;\n box.update(\n layout.width || chartArea.w,\n layout.height || chartArea.h,\n getMargins(layout.horizontal, chartArea)\n );\n const {same, other} = updateDims(chartArea, params, layout, stacks);\n refit |= same && refitBoxes.length;\n changed = changed || other;\n if (!box.fullSize) {\n refitBoxes.push(layout);\n }\n }\n return refit && fitBoxes(refitBoxes, chartArea, params, stacks) || changed;\n}\nfunction setBoxDims(box, left, top, width, height) {\n box.top = top;\n box.left = left;\n box.right = left + width;\n box.bottom = top + height;\n box.width = width;\n box.height = height;\n}\nfunction placeBoxes(boxes, chartArea, params, stacks) {\n const userPadding = params.padding;\n let {x, y} = chartArea;\n for (const layout of boxes) {\n const box = layout.box;\n const stack = stacks[layout.stack] || {count: 1, placed: 0, weight: 1};\n const weight = (layout.stackWeight / stack.weight) || 1;\n if (layout.horizontal) {\n const width = chartArea.w * weight;\n const height = stack.size || box.height;\n if (defined(stack.start)) {\n y = stack.start;\n }\n if (box.fullSize) {\n setBoxDims(box, userPadding.left, y, params.outerWidth - userPadding.right - userPadding.left, height);\n } else {\n setBoxDims(box, chartArea.left + stack.placed, y, width, height);\n }\n stack.start = y;\n stack.placed += width;\n y = box.bottom;\n } else {\n const height = chartArea.h * weight;\n const width = stack.size || box.width;\n if (defined(stack.start)) {\n x = stack.start;\n }\n if (box.fullSize) {\n setBoxDims(box, x, userPadding.top, width, params.outerHeight - userPadding.bottom - userPadding.top);\n } else {\n setBoxDims(box, x, chartArea.top + stack.placed, width, height);\n }\n stack.start = x;\n stack.placed += height;\n x = box.right;\n }\n }\n chartArea.x = x;\n chartArea.y = y;\n}\ndefaults.set('layout', {\n autoPadding: true,\n padding: {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0\n }\n});\nvar layouts = {\n addBox(chart, item) {\n if (!chart.boxes) {\n chart.boxes = [];\n }\n item.fullSize = item.fullSize || false;\n item.position = item.position || 'top';\n item.weight = item.weight || 0;\n item._layers = item._layers || function() {\n return [{\n z: 0,\n draw(chartArea) {\n item.draw(chartArea);\n }\n }];\n };\n chart.boxes.push(item);\n },\n removeBox(chart, layoutItem) {\n const index = chart.boxes ? chart.boxes.indexOf(layoutItem) : -1;\n if (index !== -1) {\n chart.boxes.splice(index, 1);\n }\n },\n configure(chart, item, options) {\n item.fullSize = options.fullSize;\n item.position = options.position;\n item.weight = options.weight;\n },\n update(chart, width, height, minPadding) {\n if (!chart) {\n return;\n }\n const padding = toPadding(chart.options.layout.padding);\n const availableWidth = Math.max(width - padding.width, 0);\n const availableHeight = Math.max(height - padding.height, 0);\n const boxes = buildLayoutBoxes(chart.boxes);\n const verticalBoxes = boxes.vertical;\n const horizontalBoxes = boxes.horizontal;\n each(chart.boxes, box => {\n if (typeof box.beforeLayout === 'function') {\n box.beforeLayout();\n }\n });\n const visibleVerticalBoxCount = verticalBoxes.reduce((total, wrap) =>\n wrap.box.options && wrap.box.options.display === false ? total : total + 1, 0) || 1;\n const params = Object.freeze({\n outerWidth: width,\n outerHeight: height,\n padding,\n availableWidth,\n availableHeight,\n vBoxMaxWidth: availableWidth / 2 / visibleVerticalBoxCount,\n hBoxMaxHeight: availableHeight / 2\n });\n const maxPadding = Object.assign({}, padding);\n updateMaxPadding(maxPadding, toPadding(minPadding));\n const chartArea = Object.assign({\n maxPadding,\n w: availableWidth,\n h: availableHeight,\n x: padding.left,\n y: padding.top\n }, padding);\n const stacks = setLayoutDims(verticalBoxes.concat(horizontalBoxes), params);\n fitBoxes(boxes.fullSize, chartArea, params, stacks);\n fitBoxes(verticalBoxes, chartArea, params, stacks);\n if (fitBoxes(horizontalBoxes, chartArea, params, stacks)) {\n fitBoxes(verticalBoxes, chartArea, params, stacks);\n }\n handleMaxPadding(chartArea);\n placeBoxes(boxes.leftAndTop, chartArea, params, stacks);\n chartArea.x += chartArea.w;\n chartArea.y += chartArea.h;\n placeBoxes(boxes.rightAndBottom, chartArea, params, stacks);\n chart.chartArea = {\n left: chartArea.left,\n top: chartArea.top,\n right: chartArea.left + chartArea.w,\n bottom: chartArea.top + chartArea.h,\n height: chartArea.h,\n width: chartArea.w,\n };\n each(boxes.chartArea, (layout) => {\n const box = layout.box;\n Object.assign(box, chart.chartArea);\n box.update(chartArea.w, chartArea.h, {left: 0, top: 0, right: 0, bottom: 0});\n });\n }\n};\n\nclass BasePlatform {\n acquireContext(canvas, aspectRatio) {}\n releaseContext(context) {\n return false;\n }\n addEventListener(chart, type, listener) {}\n removeEventListener(chart, type, listener) {}\n getDevicePixelRatio() {\n return 1;\n }\n getMaximumSize(element, width, height, aspectRatio) {\n width = Math.max(0, width || element.width);\n height = height || element.height;\n return {\n width,\n height: Math.max(0, aspectRatio ? Math.floor(width / aspectRatio) : height)\n };\n }\n isAttached(canvas) {\n return true;\n }\n updateConfig(config) {\n }\n}\n\nclass BasicPlatform extends BasePlatform {\n acquireContext(item) {\n return item && item.getContext && item.getContext('2d') || null;\n }\n updateConfig(config) {\n config.options.animation = false;\n }\n}\n\nconst EXPANDO_KEY = '$chartjs';\nconst EVENT_TYPES = {\n touchstart: 'mousedown',\n touchmove: 'mousemove',\n touchend: 'mouseup',\n pointerenter: 'mouseenter',\n pointerdown: 'mousedown',\n pointermove: 'mousemove',\n pointerup: 'mouseup',\n pointerleave: 'mouseout',\n pointerout: 'mouseout'\n};\nconst isNullOrEmpty = value => value === null || value === '';\nfunction initCanvas(canvas, aspectRatio) {\n const style = canvas.style;\n const renderHeight = canvas.getAttribute('height');\n const renderWidth = canvas.getAttribute('width');\n canvas[EXPANDO_KEY] = {\n initial: {\n height: renderHeight,\n width: renderWidth,\n style: {\n display: style.display,\n height: style.height,\n width: style.width\n }\n }\n };\n style.display = style.display || 'block';\n style.boxSizing = style.boxSizing || 'border-box';\n if (isNullOrEmpty(renderWidth)) {\n const displayWidth = readUsedSize(canvas, 'width');\n if (displayWidth !== undefined) {\n canvas.width = displayWidth;\n }\n }\n if (isNullOrEmpty(renderHeight)) {\n if (canvas.style.height === '') {\n canvas.height = canvas.width / (aspectRatio || 2);\n } else {\n const displayHeight = readUsedSize(canvas, 'height');\n if (displayHeight !== undefined) {\n canvas.height = displayHeight;\n }\n }\n }\n return canvas;\n}\nconst eventListenerOptions = supportsEventListenerOptions ? {passive: true} : false;\nfunction addListener(node, type, listener) {\n node.addEventListener(type, listener, eventListenerOptions);\n}\nfunction removeListener(chart, type, listener) {\n chart.canvas.removeEventListener(type, listener, eventListenerOptions);\n}\nfunction fromNativeEvent(event, chart) {\n const type = EVENT_TYPES[event.type] || event.type;\n const {x, y} = getRelativePosition(event, chart);\n return {\n type,\n chart,\n native: event,\n x: x !== undefined ? x : null,\n y: y !== undefined ? y : null,\n };\n}\nfunction nodeListContains(nodeList, canvas) {\n for (const node of nodeList) {\n if (node === canvas || node.contains(canvas)) {\n return true;\n }\n }\n}\nfunction createAttachObserver(chart, type, listener) {\n const canvas = chart.canvas;\n const observer = new MutationObserver(entries => {\n let trigger = false;\n for (const entry of entries) {\n trigger = trigger || nodeListContains(entry.addedNodes, canvas);\n trigger = trigger && !nodeListContains(entry.removedNodes, canvas);\n }\n if (trigger) {\n listener();\n }\n });\n observer.observe(document, {childList: true, subtree: true});\n return observer;\n}\nfunction createDetachObserver(chart, type, listener) {\n const canvas = chart.canvas;\n const observer = new MutationObserver(entries => {\n let trigger = false;\n for (const entry of entries) {\n trigger = trigger || nodeListContains(entry.removedNodes, canvas);\n trigger = trigger && !nodeListContains(entry.addedNodes, canvas);\n }\n if (trigger) {\n listener();\n }\n });\n observer.observe(document, {childList: true, subtree: true});\n return observer;\n}\nconst drpListeningCharts = new Map();\nlet oldDevicePixelRatio = 0;\nfunction onWindowResize() {\n const dpr = window.devicePixelRatio;\n if (dpr === oldDevicePixelRatio) {\n return;\n }\n oldDevicePixelRatio = dpr;\n drpListeningCharts.forEach((resize, chart) => {\n if (chart.currentDevicePixelRatio !== dpr) {\n resize();\n }\n });\n}\nfunction listenDevicePixelRatioChanges(chart, resize) {\n if (!drpListeningCharts.size) {\n window.addEventListener('resize', onWindowResize);\n }\n drpListeningCharts.set(chart, resize);\n}\nfunction unlistenDevicePixelRatioChanges(chart) {\n drpListeningCharts.delete(chart);\n if (!drpListeningCharts.size) {\n window.removeEventListener('resize', onWindowResize);\n }\n}\nfunction createResizeObserver(chart, type, listener) {\n const canvas = chart.canvas;\n const container = canvas && _getParentNode(canvas);\n if (!container) {\n return;\n }\n const resize = throttled((width, height) => {\n const w = container.clientWidth;\n listener(width, height);\n if (w < container.clientWidth) {\n listener();\n }\n }, window);\n const observer = new ResizeObserver(entries => {\n const entry = entries[0];\n const width = entry.contentRect.width;\n const height = entry.contentRect.height;\n if (width === 0 && height === 0) {\n return;\n }\n resize(width, height);\n });\n observer.observe(container);\n listenDevicePixelRatioChanges(chart, resize);\n return observer;\n}\nfunction releaseObserver(chart, type, observer) {\n if (observer) {\n observer.disconnect();\n }\n if (type === 'resize') {\n unlistenDevicePixelRatioChanges(chart);\n }\n}\nfunction createProxyAndListen(chart, type, listener) {\n const canvas = chart.canvas;\n const proxy = throttled((event) => {\n if (chart.ctx !== null) {\n listener(fromNativeEvent(event, chart));\n }\n }, chart, (args) => {\n const event = args[0];\n return [event, event.offsetX, event.offsetY];\n });\n addListener(canvas, type, proxy);\n return proxy;\n}\nclass DomPlatform extends BasePlatform {\n acquireContext(canvas, aspectRatio) {\n const context = canvas && canvas.getContext && canvas.getContext('2d');\n if (context && context.canvas === canvas) {\n initCanvas(canvas, aspectRatio);\n return context;\n }\n return null;\n }\n releaseContext(context) {\n const canvas = context.canvas;\n if (!canvas[EXPANDO_KEY]) {\n return false;\n }\n const initial = canvas[EXPANDO_KEY].initial;\n ['height', 'width'].forEach((prop) => {\n const value = initial[prop];\n if (isNullOrUndef(value)) {\n canvas.removeAttribute(prop);\n } else {\n canvas.setAttribute(prop, value);\n }\n });\n const style = initial.style || {};\n Object.keys(style).forEach((key) => {\n canvas.style[key] = style[key];\n });\n canvas.width = canvas.width;\n delete canvas[EXPANDO_KEY];\n return true;\n }\n addEventListener(chart, type, listener) {\n this.removeEventListener(chart, type);\n const proxies = chart.$proxies || (chart.$proxies = {});\n const handlers = {\n attach: createAttachObserver,\n detach: createDetachObserver,\n resize: createResizeObserver\n };\n const handler = handlers[type] || createProxyAndListen;\n proxies[type] = handler(chart, type, listener);\n }\n removeEventListener(chart, type) {\n const proxies = chart.$proxies || (chart.$proxies = {});\n const proxy = proxies[type];\n if (!proxy) {\n return;\n }\n const handlers = {\n attach: releaseObserver,\n detach: releaseObserver,\n resize: releaseObserver\n };\n const handler = handlers[type] || removeListener;\n handler(chart, type, proxy);\n proxies[type] = undefined;\n }\n getDevicePixelRatio() {\n return window.devicePixelRatio;\n }\n getMaximumSize(canvas, width, height, aspectRatio) {\n return getMaximumSize(canvas, width, height, aspectRatio);\n }\n isAttached(canvas) {\n const container = _getParentNode(canvas);\n return !!(container && container.isConnected);\n }\n}\n\nfunction _detectPlatform(canvas) {\n if (!_isDomSupported() || (typeof OffscreenCanvas !== 'undefined' && canvas instanceof OffscreenCanvas)) {\n return BasicPlatform;\n }\n return DomPlatform;\n}\n\nclass PluginService {\n constructor() {\n this._init = [];\n }\n notify(chart, hook, args, filter) {\n if (hook === 'beforeInit') {\n this._init = this._createDescriptors(chart, true);\n this._notify(this._init, chart, 'install');\n }\n const descriptors = filter ? this._descriptors(chart).filter(filter) : this._descriptors(chart);\n const result = this._notify(descriptors, chart, hook, args);\n if (hook === 'afterDestroy') {\n this._notify(descriptors, chart, 'stop');\n this._notify(this._init, chart, 'uninstall');\n }\n return result;\n }\n _notify(descriptors, chart, hook, args) {\n args = args || {};\n for (const descriptor of descriptors) {\n const plugin = descriptor.plugin;\n const method = plugin[hook];\n const params = [chart, args, descriptor.options];\n if (callback(method, params, plugin) === false && args.cancelable) {\n return false;\n }\n }\n return true;\n }\n invalidate() {\n if (!isNullOrUndef(this._cache)) {\n this._oldCache = this._cache;\n this._cache = undefined;\n }\n }\n _descriptors(chart) {\n if (this._cache) {\n return this._cache;\n }\n const descriptors = this._cache = this._createDescriptors(chart);\n this._notifyStateChanges(chart);\n return descriptors;\n }\n _createDescriptors(chart, all) {\n const config = chart && chart.config;\n const options = valueOrDefault(config.options && config.options.plugins, {});\n const plugins = allPlugins(config);\n return options === false && !all ? [] : createDescriptors(chart, plugins, options, all);\n }\n _notifyStateChanges(chart) {\n const previousDescriptors = this._oldCache || [];\n const descriptors = this._cache;\n const diff = (a, b) => a.filter(x => !b.some(y => x.plugin.id === y.plugin.id));\n this._notify(diff(previousDescriptors, descriptors), chart, 'stop');\n this._notify(diff(descriptors, previousDescriptors), chart, 'start');\n }\n}\nfunction allPlugins(config) {\n const localIds = {};\n const plugins = [];\n const keys = Object.keys(registry.plugins.items);\n for (let i = 0; i < keys.length; i++) {\n plugins.push(registry.getPlugin(keys[i]));\n }\n const local = config.plugins || [];\n for (let i = 0; i < local.length; i++) {\n const plugin = local[i];\n if (plugins.indexOf(plugin) === -1) {\n plugins.push(plugin);\n localIds[plugin.id] = true;\n }\n }\n return {plugins, localIds};\n}\nfunction getOpts(options, all) {\n if (!all && options === false) {\n return null;\n }\n if (options === true) {\n return {};\n }\n return options;\n}\nfunction createDescriptors(chart, {plugins, localIds}, options, all) {\n const result = [];\n const context = chart.getContext();\n for (const plugin of plugins) {\n const id = plugin.id;\n const opts = getOpts(options[id], all);\n if (opts === null) {\n continue;\n }\n result.push({\n plugin,\n options: pluginOpts(chart.config, {plugin, local: localIds[id]}, opts, context)\n });\n }\n return result;\n}\nfunction pluginOpts(config, {plugin, local}, opts, context) {\n const keys = config.pluginScopeKeys(plugin);\n const scopes = config.getOptionScopes(opts, keys);\n if (local && plugin.defaults) {\n scopes.push(plugin.defaults);\n }\n return config.createResolver(scopes, context, [''], {\n scriptable: false,\n indexable: false,\n allKeys: true\n });\n}\n\nfunction getIndexAxis(type, options) {\n const datasetDefaults = defaults.datasets[type] || {};\n const datasetOptions = (options.datasets || {})[type] || {};\n return datasetOptions.indexAxis || options.indexAxis || datasetDefaults.indexAxis || 'x';\n}\nfunction getAxisFromDefaultScaleID(id, indexAxis) {\n let axis = id;\n if (id === '_index_') {\n axis = indexAxis;\n } else if (id === '_value_') {\n axis = indexAxis === 'x' ? 'y' : 'x';\n }\n return axis;\n}\nfunction getDefaultScaleIDFromAxis(axis, indexAxis) {\n return axis === indexAxis ? '_index_' : '_value_';\n}\nfunction axisFromPosition(position) {\n if (position === 'top' || position === 'bottom') {\n return 'x';\n }\n if (position === 'left' || position === 'right') {\n return 'y';\n }\n}\nfunction determineAxis(id, scaleOptions) {\n if (id === 'x' || id === 'y') {\n return id;\n }\n return scaleOptions.axis || axisFromPosition(scaleOptions.position) || id.charAt(0).toLowerCase();\n}\nfunction mergeScaleConfig(config, options) {\n const chartDefaults = overrides[config.type] || {scales: {}};\n const configScales = options.scales || {};\n const chartIndexAxis = getIndexAxis(config.type, options);\n const firstIDs = Object.create(null);\n const scales = Object.create(null);\n Object.keys(configScales).forEach(id => {\n const scaleConf = configScales[id];\n if (!isObject(scaleConf)) {\n return console.error(`Invalid scale configuration for scale: ${id}`);\n }\n if (scaleConf._proxy) {\n return console.warn(`Ignoring resolver passed as options for scale: ${id}`);\n }\n const axis = determineAxis(id, scaleConf);\n const defaultId = getDefaultScaleIDFromAxis(axis, chartIndexAxis);\n const defaultScaleOptions = chartDefaults.scales || {};\n firstIDs[axis] = firstIDs[axis] || id;\n scales[id] = mergeIf(Object.create(null), [{axis}, scaleConf, defaultScaleOptions[axis], defaultScaleOptions[defaultId]]);\n });\n config.data.datasets.forEach(dataset => {\n const type = dataset.type || config.type;\n const indexAxis = dataset.indexAxis || getIndexAxis(type, options);\n const datasetDefaults = overrides[type] || {};\n const defaultScaleOptions = datasetDefaults.scales || {};\n Object.keys(defaultScaleOptions).forEach(defaultID => {\n const axis = getAxisFromDefaultScaleID(defaultID, indexAxis);\n const id = dataset[axis + 'AxisID'] || firstIDs[axis] || axis;\n scales[id] = scales[id] || Object.create(null);\n mergeIf(scales[id], [{axis}, configScales[id], defaultScaleOptions[defaultID]]);\n });\n });\n Object.keys(scales).forEach(key => {\n const scale = scales[key];\n mergeIf(scale, [defaults.scales[scale.type], defaults.scale]);\n });\n return scales;\n}\nfunction initOptions(config) {\n const options = config.options || (config.options = {});\n options.plugins = valueOrDefault(options.plugins, {});\n options.scales = mergeScaleConfig(config, options);\n}\nfunction initData(data) {\n data = data || {};\n data.datasets = data.datasets || [];\n data.labels = data.labels || [];\n return data;\n}\nfunction initConfig(config) {\n config = config || {};\n config.data = initData(config.data);\n initOptions(config);\n return config;\n}\nconst keyCache = new Map();\nconst keysCached = new Set();\nfunction cachedKeys(cacheKey, generate) {\n let keys = keyCache.get(cacheKey);\n if (!keys) {\n keys = generate();\n keyCache.set(cacheKey, keys);\n keysCached.add(keys);\n }\n return keys;\n}\nconst addIfFound = (set, obj, key) => {\n const opts = resolveObjectKey(obj, key);\n if (opts !== undefined) {\n set.add(opts);\n }\n};\nclass Config {\n constructor(config) {\n this._config = initConfig(config);\n this._scopeCache = new Map();\n this._resolverCache = new Map();\n }\n get platform() {\n return this._config.platform;\n }\n get type() {\n return this._config.type;\n }\n set type(type) {\n this._config.type = type;\n }\n get data() {\n return this._config.data;\n }\n set data(data) {\n this._config.data = initData(data);\n }\n get options() {\n return this._config.options;\n }\n set options(options) {\n this._config.options = options;\n }\n get plugins() {\n return this._config.plugins;\n }\n update() {\n const config = this._config;\n this.clearCache();\n initOptions(config);\n }\n clearCache() {\n this._scopeCache.clear();\n this._resolverCache.clear();\n }\n datasetScopeKeys(datasetType) {\n return cachedKeys(datasetType,\n () => [[\n `datasets.${datasetType}`,\n ''\n ]]);\n }\n datasetAnimationScopeKeys(datasetType, transition) {\n return cachedKeys(`${datasetType}.transition.${transition}`,\n () => [\n [\n `datasets.${datasetType}.transitions.${transition}`,\n `transitions.${transition}`,\n ],\n [\n `datasets.${datasetType}`,\n ''\n ]\n ]);\n }\n datasetElementScopeKeys(datasetType, elementType) {\n return cachedKeys(`${datasetType}-${elementType}`,\n () => [[\n `datasets.${datasetType}.elements.${elementType}`,\n `datasets.${datasetType}`,\n `elements.${elementType}`,\n ''\n ]]);\n }\n pluginScopeKeys(plugin) {\n const id = plugin.id;\n const type = this.type;\n return cachedKeys(`${type}-plugin-${id}`,\n () => [[\n `plugins.${id}`,\n ...plugin.additionalOptionScopes || [],\n ]]);\n }\n _cachedScopes(mainScope, resetCache) {\n const _scopeCache = this._scopeCache;\n let cache = _scopeCache.get(mainScope);\n if (!cache || resetCache) {\n cache = new Map();\n _scopeCache.set(mainScope, cache);\n }\n return cache;\n }\n getOptionScopes(mainScope, keyLists, resetCache) {\n const {options, type} = this;\n const cache = this._cachedScopes(mainScope, resetCache);\n const cached = cache.get(keyLists);\n if (cached) {\n return cached;\n }\n const scopes = new Set();\n keyLists.forEach(keys => {\n if (mainScope) {\n scopes.add(mainScope);\n keys.forEach(key => addIfFound(scopes, mainScope, key));\n }\n keys.forEach(key => addIfFound(scopes, options, key));\n keys.forEach(key => addIfFound(scopes, overrides[type] || {}, key));\n keys.forEach(key => addIfFound(scopes, defaults, key));\n keys.forEach(key => addIfFound(scopes, descriptors, key));\n });\n const array = Array.from(scopes);\n if (array.length === 0) {\n array.push(Object.create(null));\n }\n if (keysCached.has(keyLists)) {\n cache.set(keyLists, array);\n }\n return array;\n }\n chartOptionScopes() {\n const {options, type} = this;\n return [\n options,\n overrides[type] || {},\n defaults.datasets[type] || {},\n {type},\n defaults,\n descriptors\n ];\n }\n resolveNamedOptions(scopes, names, context, prefixes = ['']) {\n const result = {$shared: true};\n const {resolver, subPrefixes} = getResolver(this._resolverCache, scopes, prefixes);\n let options = resolver;\n if (needContext(resolver, names)) {\n result.$shared = false;\n context = isFunction(context) ? context() : context;\n const subResolver = this.createResolver(scopes, context, subPrefixes);\n options = _attachContext(resolver, context, subResolver);\n }\n for (const prop of names) {\n result[prop] = options[prop];\n }\n return result;\n }\n createResolver(scopes, context, prefixes = [''], descriptorDefaults) {\n const {resolver} = getResolver(this._resolverCache, scopes, prefixes);\n return isObject(context)\n ? _attachContext(resolver, context, undefined, descriptorDefaults)\n : resolver;\n }\n}\nfunction getResolver(resolverCache, scopes, prefixes) {\n let cache = resolverCache.get(scopes);\n if (!cache) {\n cache = new Map();\n resolverCache.set(scopes, cache);\n }\n const cacheKey = prefixes.join();\n let cached = cache.get(cacheKey);\n if (!cached) {\n const resolver = _createResolver(scopes, prefixes);\n cached = {\n resolver,\n subPrefixes: prefixes.filter(p => !p.toLowerCase().includes('hover'))\n };\n cache.set(cacheKey, cached);\n }\n return cached;\n}\nconst hasFunction = value => isObject(value)\n && Object.getOwnPropertyNames(value).reduce((acc, key) => acc || isFunction(value[key]), false);\nfunction needContext(proxy, names) {\n const {isScriptable, isIndexable} = _descriptors(proxy);\n for (const prop of names) {\n const scriptable = isScriptable(prop);\n const indexable = isIndexable(prop);\n const value = (indexable || scriptable) && proxy[prop];\n if ((scriptable && (isFunction(value) || hasFunction(value)))\n || (indexable && isArray(value))) {\n return true;\n }\n }\n return false;\n}\n\nvar version = \"3.9.1\";\n\nconst KNOWN_POSITIONS = ['top', 'bottom', 'left', 'right', 'chartArea'];\nfunction positionIsHorizontal(position, axis) {\n return position === 'top' || position === 'bottom' || (KNOWN_POSITIONS.indexOf(position) === -1 && axis === 'x');\n}\nfunction compare2Level(l1, l2) {\n return function(a, b) {\n return a[l1] === b[l1]\n ? a[l2] - b[l2]\n : a[l1] - b[l1];\n };\n}\nfunction onAnimationsComplete(context) {\n const chart = context.chart;\n const animationOptions = chart.options.animation;\n chart.notifyPlugins('afterRender');\n callback(animationOptions && animationOptions.onComplete, [context], chart);\n}\nfunction onAnimationProgress(context) {\n const chart = context.chart;\n const animationOptions = chart.options.animation;\n callback(animationOptions && animationOptions.onProgress, [context], chart);\n}\nfunction getCanvas(item) {\n if (_isDomSupported() && typeof item === 'string') {\n item = document.getElementById(item);\n } else if (item && item.length) {\n item = item[0];\n }\n if (item && item.canvas) {\n item = item.canvas;\n }\n return item;\n}\nconst instances = {};\nconst getChart = (key) => {\n const canvas = getCanvas(key);\n return Object.values(instances).filter((c) => c.canvas === canvas).pop();\n};\nfunction moveNumericKeys(obj, start, move) {\n const keys = Object.keys(obj);\n for (const key of keys) {\n const intKey = +key;\n if (intKey >= start) {\n const value = obj[key];\n delete obj[key];\n if (move > 0 || intKey > start) {\n obj[intKey + move] = value;\n }\n }\n }\n}\nfunction determineLastEvent(e, lastEvent, inChartArea, isClick) {\n if (!inChartArea || e.type === 'mouseout') {\n return null;\n }\n if (isClick) {\n return lastEvent;\n }\n return e;\n}\nclass Chart {\n constructor(item, userConfig) {\n const config = this.config = new Config(userConfig);\n const initialCanvas = getCanvas(item);\n const existingChart = getChart(initialCanvas);\n if (existingChart) {\n throw new Error(\n 'Canvas is already in use. Chart with ID \\'' + existingChart.id + '\\'' +\n\t\t\t\t' must be destroyed before the canvas with ID \\'' + existingChart.canvas.id + '\\' can be reused.'\n );\n }\n const options = config.createResolver(config.chartOptionScopes(), this.getContext());\n this.platform = new (config.platform || _detectPlatform(initialCanvas))();\n this.platform.updateConfig(config);\n const context = this.platform.acquireContext(initialCanvas, options.aspectRatio);\n const canvas = context && context.canvas;\n const height = canvas && canvas.height;\n const width = canvas && canvas.width;\n this.id = uid();\n this.ctx = context;\n this.canvas = canvas;\n this.width = width;\n this.height = height;\n this._options = options;\n this._aspectRatio = this.aspectRatio;\n this._layers = [];\n this._metasets = [];\n this._stacks = undefined;\n this.boxes = [];\n this.currentDevicePixelRatio = undefined;\n this.chartArea = undefined;\n this._active = [];\n this._lastEvent = undefined;\n this._listeners = {};\n this._responsiveListeners = undefined;\n this._sortedMetasets = [];\n this.scales = {};\n this._plugins = new PluginService();\n this.$proxies = {};\n this._hiddenIndices = {};\n this.attached = false;\n this._animationsDisabled = undefined;\n this.$context = undefined;\n this._doResize = debounce(mode => this.update(mode), options.resizeDelay || 0);\n this._dataChanges = [];\n instances[this.id] = this;\n if (!context || !canvas) {\n console.error(\"Failed to create chart: can't acquire context from the given item\");\n return;\n }\n animator.listen(this, 'complete', onAnimationsComplete);\n animator.listen(this, 'progress', onAnimationProgress);\n this._initialize();\n if (this.attached) {\n this.update();\n }\n }\n get aspectRatio() {\n const {options: {aspectRatio, maintainAspectRatio}, width, height, _aspectRatio} = this;\n if (!isNullOrUndef(aspectRatio)) {\n return aspectRatio;\n }\n if (maintainAspectRatio && _aspectRatio) {\n return _aspectRatio;\n }\n return height ? width / height : null;\n }\n get data() {\n return this.config.data;\n }\n set data(data) {\n this.config.data = data;\n }\n get options() {\n return this._options;\n }\n set options(options) {\n this.config.options = options;\n }\n _initialize() {\n this.notifyPlugins('beforeInit');\n if (this.options.responsive) {\n this.resize();\n } else {\n retinaScale(this, this.options.devicePixelRatio);\n }\n this.bindEvents();\n this.notifyPlugins('afterInit');\n return this;\n }\n clear() {\n clearCanvas(this.canvas, this.ctx);\n return this;\n }\n stop() {\n animator.stop(this);\n return this;\n }\n resize(width, height) {\n if (!animator.running(this)) {\n this._resize(width, height);\n } else {\n this._resizeBeforeDraw = {width, height};\n }\n }\n _resize(width, height) {\n const options = this.options;\n const canvas = this.canvas;\n const aspectRatio = options.maintainAspectRatio && this.aspectRatio;\n const newSize = this.platform.getMaximumSize(canvas, width, height, aspectRatio);\n const newRatio = options.devicePixelRatio || this.platform.getDevicePixelRatio();\n const mode = this.width ? 'resize' : 'attach';\n this.width = newSize.width;\n this.height = newSize.height;\n this._aspectRatio = this.aspectRatio;\n if (!retinaScale(this, newRatio, true)) {\n return;\n }\n this.notifyPlugins('resize', {size: newSize});\n callback(options.onResize, [this, newSize], this);\n if (this.attached) {\n if (this._doResize(mode)) {\n this.render();\n }\n }\n }\n ensureScalesHaveIDs() {\n const options = this.options;\n const scalesOptions = options.scales || {};\n each(scalesOptions, (axisOptions, axisID) => {\n axisOptions.id = axisID;\n });\n }\n buildOrUpdateScales() {\n const options = this.options;\n const scaleOpts = options.scales;\n const scales = this.scales;\n const updated = Object.keys(scales).reduce((obj, id) => {\n obj[id] = false;\n return obj;\n }, {});\n let items = [];\n if (scaleOpts) {\n items = items.concat(\n Object.keys(scaleOpts).map((id) => {\n const scaleOptions = scaleOpts[id];\n const axis = determineAxis(id, scaleOptions);\n const isRadial = axis === 'r';\n const isHorizontal = axis === 'x';\n return {\n options: scaleOptions,\n dposition: isRadial ? 'chartArea' : isHorizontal ? 'bottom' : 'left',\n dtype: isRadial ? 'radialLinear' : isHorizontal ? 'category' : 'linear'\n };\n })\n );\n }\n each(items, (item) => {\n const scaleOptions = item.options;\n const id = scaleOptions.id;\n const axis = determineAxis(id, scaleOptions);\n const scaleType = valueOrDefault(scaleOptions.type, item.dtype);\n if (scaleOptions.position === undefined || positionIsHorizontal(scaleOptions.position, axis) !== positionIsHorizontal(item.dposition)) {\n scaleOptions.position = item.dposition;\n }\n updated[id] = true;\n let scale = null;\n if (id in scales && scales[id].type === scaleType) {\n scale = scales[id];\n } else {\n const scaleClass = registry.getScale(scaleType);\n scale = new scaleClass({\n id,\n type: scaleType,\n ctx: this.ctx,\n chart: this\n });\n scales[scale.id] = scale;\n }\n scale.init(scaleOptions, options);\n });\n each(updated, (hasUpdated, id) => {\n if (!hasUpdated) {\n delete scales[id];\n }\n });\n each(scales, (scale) => {\n layouts.configure(this, scale, scale.options);\n layouts.addBox(this, scale);\n });\n }\n _updateMetasets() {\n const metasets = this._metasets;\n const numData = this.data.datasets.length;\n const numMeta = metasets.length;\n metasets.sort((a, b) => a.index - b.index);\n if (numMeta > numData) {\n for (let i = numData; i < numMeta; ++i) {\n this._destroyDatasetMeta(i);\n }\n metasets.splice(numData, numMeta - numData);\n }\n this._sortedMetasets = metasets.slice(0).sort(compare2Level('order', 'index'));\n }\n _removeUnreferencedMetasets() {\n const {_metasets: metasets, data: {datasets}} = this;\n if (metasets.length > datasets.length) {\n delete this._stacks;\n }\n metasets.forEach((meta, index) => {\n if (datasets.filter(x => x === meta._dataset).length === 0) {\n this._destroyDatasetMeta(index);\n }\n });\n }\n buildOrUpdateControllers() {\n const newControllers = [];\n const datasets = this.data.datasets;\n let i, ilen;\n this._removeUnreferencedMetasets();\n for (i = 0, ilen = datasets.length; i < ilen; i++) {\n const dataset = datasets[i];\n let meta = this.getDatasetMeta(i);\n const type = dataset.type || this.config.type;\n if (meta.type && meta.type !== type) {\n this._destroyDatasetMeta(i);\n meta = this.getDatasetMeta(i);\n }\n meta.type = type;\n meta.indexAxis = dataset.indexAxis || getIndexAxis(type, this.options);\n meta.order = dataset.order || 0;\n meta.index = i;\n meta.label = '' + dataset.label;\n meta.visible = this.isDatasetVisible(i);\n if (meta.controller) {\n meta.controller.updateIndex(i);\n meta.controller.linkScales();\n } else {\n const ControllerClass = registry.getController(type);\n const {datasetElementType, dataElementType} = defaults.datasets[type];\n Object.assign(ControllerClass.prototype, {\n dataElementType: registry.getElement(dataElementType),\n datasetElementType: datasetElementType && registry.getElement(datasetElementType)\n });\n meta.controller = new ControllerClass(this, i);\n newControllers.push(meta.controller);\n }\n }\n this._updateMetasets();\n return newControllers;\n }\n _resetElements() {\n each(this.data.datasets, (dataset, datasetIndex) => {\n this.getDatasetMeta(datasetIndex).controller.reset();\n }, this);\n }\n reset() {\n this._resetElements();\n this.notifyPlugins('reset');\n }\n update(mode) {\n const config = this.config;\n config.update();\n const options = this._options = config.createResolver(config.chartOptionScopes(), this.getContext());\n const animsDisabled = this._animationsDisabled = !options.animation;\n this._updateScales();\n this._checkEventBindings();\n this._updateHiddenIndices();\n this._plugins.invalidate();\n if (this.notifyPlugins('beforeUpdate', {mode, cancelable: true}) === false) {\n return;\n }\n const newControllers = this.buildOrUpdateControllers();\n this.notifyPlugins('beforeElementsUpdate');\n let minPadding = 0;\n for (let i = 0, ilen = this.data.datasets.length; i < ilen; i++) {\n const {controller} = this.getDatasetMeta(i);\n const reset = !animsDisabled && newControllers.indexOf(controller) === -1;\n controller.buildOrUpdateElements(reset);\n minPadding = Math.max(+controller.getMaxOverflow(), minPadding);\n }\n minPadding = this._minPadding = options.layout.autoPadding ? minPadding : 0;\n this._updateLayout(minPadding);\n if (!animsDisabled) {\n each(newControllers, (controller) => {\n controller.reset();\n });\n }\n this._updateDatasets(mode);\n this.notifyPlugins('afterUpdate', {mode});\n this._layers.sort(compare2Level('z', '_idx'));\n const {_active, _lastEvent} = this;\n if (_lastEvent) {\n this._eventHandler(_lastEvent, true);\n } else if (_active.length) {\n this._updateHoverStyles(_active, _active, true);\n }\n this.render();\n }\n _updateScales() {\n each(this.scales, (scale) => {\n layouts.removeBox(this, scale);\n });\n this.ensureScalesHaveIDs();\n this.buildOrUpdateScales();\n }\n _checkEventBindings() {\n const options = this.options;\n const existingEvents = new Set(Object.keys(this._listeners));\n const newEvents = new Set(options.events);\n if (!setsEqual(existingEvents, newEvents) || !!this._responsiveListeners !== options.responsive) {\n this.unbindEvents();\n this.bindEvents();\n }\n }\n _updateHiddenIndices() {\n const {_hiddenIndices} = this;\n const changes = this._getUniformDataChanges() || [];\n for (const {method, start, count} of changes) {\n const move = method === '_removeElements' ? -count : count;\n moveNumericKeys(_hiddenIndices, start, move);\n }\n }\n _getUniformDataChanges() {\n const _dataChanges = this._dataChanges;\n if (!_dataChanges || !_dataChanges.length) {\n return;\n }\n this._dataChanges = [];\n const datasetCount = this.data.datasets.length;\n const makeSet = (idx) => new Set(\n _dataChanges\n .filter(c => c[0] === idx)\n .map((c, i) => i + ',' + c.splice(1).join(','))\n );\n const changeSet = makeSet(0);\n for (let i = 1; i < datasetCount; i++) {\n if (!setsEqual(changeSet, makeSet(i))) {\n return;\n }\n }\n return Array.from(changeSet)\n .map(c => c.split(','))\n .map(a => ({method: a[1], start: +a[2], count: +a[3]}));\n }\n _updateLayout(minPadding) {\n if (this.notifyPlugins('beforeLayout', {cancelable: true}) === false) {\n return;\n }\n layouts.update(this, this.width, this.height, minPadding);\n const area = this.chartArea;\n const noArea = area.width <= 0 || area.height <= 0;\n this._layers = [];\n each(this.boxes, (box) => {\n if (noArea && box.position === 'chartArea') {\n return;\n }\n if (box.configure) {\n box.configure();\n }\n this._layers.push(...box._layers());\n }, this);\n this._layers.forEach((item, index) => {\n item._idx = index;\n });\n this.notifyPlugins('afterLayout');\n }\n _updateDatasets(mode) {\n if (this.notifyPlugins('beforeDatasetsUpdate', {mode, cancelable: true}) === false) {\n return;\n }\n for (let i = 0, ilen = this.data.datasets.length; i < ilen; ++i) {\n this.getDatasetMeta(i).controller.configure();\n }\n for (let i = 0, ilen = this.data.datasets.length; i < ilen; ++i) {\n this._updateDataset(i, isFunction(mode) ? mode({datasetIndex: i}) : mode);\n }\n this.notifyPlugins('afterDatasetsUpdate', {mode});\n }\n _updateDataset(index, mode) {\n const meta = this.getDatasetMeta(index);\n const args = {meta, index, mode, cancelable: true};\n if (this.notifyPlugins('beforeDatasetUpdate', args) === false) {\n return;\n }\n meta.controller._update(mode);\n args.cancelable = false;\n this.notifyPlugins('afterDatasetUpdate', args);\n }\n render() {\n if (this.notifyPlugins('beforeRender', {cancelable: true}) === false) {\n return;\n }\n if (animator.has(this)) {\n if (this.attached && !animator.running(this)) {\n animator.start(this);\n }\n } else {\n this.draw();\n onAnimationsComplete({chart: this});\n }\n }\n draw() {\n let i;\n if (this._resizeBeforeDraw) {\n const {width, height} = this._resizeBeforeDraw;\n this._resize(width, height);\n this._resizeBeforeDraw = null;\n }\n this.clear();\n if (this.width <= 0 || this.height <= 0) {\n return;\n }\n if (this.notifyPlugins('beforeDraw', {cancelable: true}) === false) {\n return;\n }\n const layers = this._layers;\n for (i = 0; i < layers.length && layers[i].z <= 0; ++i) {\n layers[i].draw(this.chartArea);\n }\n this._drawDatasets();\n for (; i < layers.length; ++i) {\n layers[i].draw(this.chartArea);\n }\n this.notifyPlugins('afterDraw');\n }\n _getSortedDatasetMetas(filterVisible) {\n const metasets = this._sortedMetasets;\n const result = [];\n let i, ilen;\n for (i = 0, ilen = metasets.length; i < ilen; ++i) {\n const meta = metasets[i];\n if (!filterVisible || meta.visible) {\n result.push(meta);\n }\n }\n return result;\n }\n getSortedVisibleDatasetMetas() {\n return this._getSortedDatasetMetas(true);\n }\n _drawDatasets() {\n if (this.notifyPlugins('beforeDatasetsDraw', {cancelable: true}) === false) {\n return;\n }\n const metasets = this.getSortedVisibleDatasetMetas();\n for (let i = metasets.length - 1; i >= 0; --i) {\n this._drawDataset(metasets[i]);\n }\n this.notifyPlugins('afterDatasetsDraw');\n }\n _drawDataset(meta) {\n const ctx = this.ctx;\n const clip = meta._clip;\n const useClip = !clip.disabled;\n const area = this.chartArea;\n const args = {\n meta,\n index: meta.index,\n cancelable: true\n };\n if (this.notifyPlugins('beforeDatasetDraw', args) === false) {\n return;\n }\n if (useClip) {\n clipArea(ctx, {\n left: clip.left === false ? 0 : area.left - clip.left,\n right: clip.right === false ? this.width : area.right + clip.right,\n top: clip.top === false ? 0 : area.top - clip.top,\n bottom: clip.bottom === false ? this.height : area.bottom + clip.bottom\n });\n }\n meta.controller.draw();\n if (useClip) {\n unclipArea(ctx);\n }\n args.cancelable = false;\n this.notifyPlugins('afterDatasetDraw', args);\n }\n isPointInArea(point) {\n return _isPointInArea(point, this.chartArea, this._minPadding);\n }\n getElementsAtEventForMode(e, mode, options, useFinalPosition) {\n const method = Interaction.modes[mode];\n if (typeof method === 'function') {\n return method(this, e, options, useFinalPosition);\n }\n return [];\n }\n getDatasetMeta(datasetIndex) {\n const dataset = this.data.datasets[datasetIndex];\n const metasets = this._metasets;\n let meta = metasets.filter(x => x && x._dataset === dataset).pop();\n if (!meta) {\n meta = {\n type: null,\n data: [],\n dataset: null,\n controller: null,\n hidden: null,\n xAxisID: null,\n yAxisID: null,\n order: dataset && dataset.order || 0,\n index: datasetIndex,\n _dataset: dataset,\n _parsed: [],\n _sorted: false\n };\n metasets.push(meta);\n }\n return meta;\n }\n getContext() {\n return this.$context || (this.$context = createContext(null, {chart: this, type: 'chart'}));\n }\n getVisibleDatasetCount() {\n return this.getSortedVisibleDatasetMetas().length;\n }\n isDatasetVisible(datasetIndex) {\n const dataset = this.data.datasets[datasetIndex];\n if (!dataset) {\n return false;\n }\n const meta = this.getDatasetMeta(datasetIndex);\n return typeof meta.hidden === 'boolean' ? !meta.hidden : !dataset.hidden;\n }\n setDatasetVisibility(datasetIndex, visible) {\n const meta = this.getDatasetMeta(datasetIndex);\n meta.hidden = !visible;\n }\n toggleDataVisibility(index) {\n this._hiddenIndices[index] = !this._hiddenIndices[index];\n }\n getDataVisibility(index) {\n return !this._hiddenIndices[index];\n }\n _updateVisibility(datasetIndex, dataIndex, visible) {\n const mode = visible ? 'show' : 'hide';\n const meta = this.getDatasetMeta(datasetIndex);\n const anims = meta.controller._resolveAnimations(undefined, mode);\n if (defined(dataIndex)) {\n meta.data[dataIndex].hidden = !visible;\n this.update();\n } else {\n this.setDatasetVisibility(datasetIndex, visible);\n anims.update(meta, {visible});\n this.update((ctx) => ctx.datasetIndex === datasetIndex ? mode : undefined);\n }\n }\n hide(datasetIndex, dataIndex) {\n this._updateVisibility(datasetIndex, dataIndex, false);\n }\n show(datasetIndex, dataIndex) {\n this._updateVisibility(datasetIndex, dataIndex, true);\n }\n _destroyDatasetMeta(datasetIndex) {\n const meta = this._metasets[datasetIndex];\n if (meta && meta.controller) {\n meta.controller._destroy();\n }\n delete this._metasets[datasetIndex];\n }\n _stop() {\n let i, ilen;\n this.stop();\n animator.remove(this);\n for (i = 0, ilen = this.data.datasets.length; i < ilen; ++i) {\n this._destroyDatasetMeta(i);\n }\n }\n destroy() {\n this.notifyPlugins('beforeDestroy');\n const {canvas, ctx} = this;\n this._stop();\n this.config.clearCache();\n if (canvas) {\n this.unbindEvents();\n clearCanvas(canvas, ctx);\n this.platform.releaseContext(ctx);\n this.canvas = null;\n this.ctx = null;\n }\n this.notifyPlugins('destroy');\n delete instances[this.id];\n this.notifyPlugins('afterDestroy');\n }\n toBase64Image(...args) {\n return this.canvas.toDataURL(...args);\n }\n bindEvents() {\n this.bindUserEvents();\n if (this.options.responsive) {\n this.bindResponsiveEvents();\n } else {\n this.attached = true;\n }\n }\n bindUserEvents() {\n const listeners = this._listeners;\n const platform = this.platform;\n const _add = (type, listener) => {\n platform.addEventListener(this, type, listener);\n listeners[type] = listener;\n };\n const listener = (e, x, y) => {\n e.offsetX = x;\n e.offsetY = y;\n this._eventHandler(e);\n };\n each(this.options.events, (type) => _add(type, listener));\n }\n bindResponsiveEvents() {\n if (!this._responsiveListeners) {\n this._responsiveListeners = {};\n }\n const listeners = this._responsiveListeners;\n const platform = this.platform;\n const _add = (type, listener) => {\n platform.addEventListener(this, type, listener);\n listeners[type] = listener;\n };\n const _remove = (type, listener) => {\n if (listeners[type]) {\n platform.removeEventListener(this, type, listener);\n delete listeners[type];\n }\n };\n const listener = (width, height) => {\n if (this.canvas) {\n this.resize(width, height);\n }\n };\n let detached;\n const attached = () => {\n _remove('attach', attached);\n this.attached = true;\n this.resize();\n _add('resize', listener);\n _add('detach', detached);\n };\n detached = () => {\n this.attached = false;\n _remove('resize', listener);\n this._stop();\n this._resize(0, 0);\n _add('attach', attached);\n };\n if (platform.isAttached(this.canvas)) {\n attached();\n } else {\n detached();\n }\n }\n unbindEvents() {\n each(this._listeners, (listener, type) => {\n this.platform.removeEventListener(this, type, listener);\n });\n this._listeners = {};\n each(this._responsiveListeners, (listener, type) => {\n this.platform.removeEventListener(this, type, listener);\n });\n this._responsiveListeners = undefined;\n }\n updateHoverStyle(items, mode, enabled) {\n const prefix = enabled ? 'set' : 'remove';\n let meta, item, i, ilen;\n if (mode === 'dataset') {\n meta = this.getDatasetMeta(items[0].datasetIndex);\n meta.controller['_' + prefix + 'DatasetHoverStyle']();\n }\n for (i = 0, ilen = items.length; i < ilen; ++i) {\n item = items[i];\n const controller = item && this.getDatasetMeta(item.datasetIndex).controller;\n if (controller) {\n controller[prefix + 'HoverStyle'](item.element, item.datasetIndex, item.index);\n }\n }\n }\n getActiveElements() {\n return this._active || [];\n }\n setActiveElements(activeElements) {\n const lastActive = this._active || [];\n const active = activeElements.map(({datasetIndex, index}) => {\n const meta = this.getDatasetMeta(datasetIndex);\n if (!meta) {\n throw new Error('No dataset found at index ' + datasetIndex);\n }\n return {\n datasetIndex,\n element: meta.data[index],\n index,\n };\n });\n const changed = !_elementsEqual(active, lastActive);\n if (changed) {\n this._active = active;\n this._lastEvent = null;\n this._updateHoverStyles(active, lastActive);\n }\n }\n notifyPlugins(hook, args, filter) {\n return this._plugins.notify(this, hook, args, filter);\n }\n _updateHoverStyles(active, lastActive, replay) {\n const hoverOptions = this.options.hover;\n const diff = (a, b) => a.filter(x => !b.some(y => x.datasetIndex === y.datasetIndex && x.index === y.index));\n const deactivated = diff(lastActive, active);\n const activated = replay ? active : diff(active, lastActive);\n if (deactivated.length) {\n this.updateHoverStyle(deactivated, hoverOptions.mode, false);\n }\n if (activated.length && hoverOptions.mode) {\n this.updateHoverStyle(activated, hoverOptions.mode, true);\n }\n }\n _eventHandler(e, replay) {\n const args = {\n event: e,\n replay,\n cancelable: true,\n inChartArea: this.isPointInArea(e)\n };\n const eventFilter = (plugin) => (plugin.options.events || this.options.events).includes(e.native.type);\n if (this.notifyPlugins('beforeEvent', args, eventFilter) === false) {\n return;\n }\n const changed = this._handleEvent(e, replay, args.inChartArea);\n args.cancelable = false;\n this.notifyPlugins('afterEvent', args, eventFilter);\n if (changed || args.changed) {\n this.render();\n }\n return this;\n }\n _handleEvent(e, replay, inChartArea) {\n const {_active: lastActive = [], options} = this;\n const useFinalPosition = replay;\n const active = this._getActiveElements(e, lastActive, inChartArea, useFinalPosition);\n const isClick = _isClickEvent(e);\n const lastEvent = determineLastEvent(e, this._lastEvent, inChartArea, isClick);\n if (inChartArea) {\n this._lastEvent = null;\n callback(options.onHover, [e, active, this], this);\n if (isClick) {\n callback(options.onClick, [e, active, this], this);\n }\n }\n const changed = !_elementsEqual(active, lastActive);\n if (changed || replay) {\n this._active = active;\n this._updateHoverStyles(active, lastActive, replay);\n }\n this._lastEvent = lastEvent;\n return changed;\n }\n _getActiveElements(e, lastActive, inChartArea, useFinalPosition) {\n if (e.type === 'mouseout') {\n return [];\n }\n if (!inChartArea) {\n return lastActive;\n }\n const hoverOptions = this.options.hover;\n return this.getElementsAtEventForMode(e, hoverOptions.mode, hoverOptions, useFinalPosition);\n }\n}\nconst invalidatePlugins = () => each(Chart.instances, (chart) => chart._plugins.invalidate());\nconst enumerable = true;\nObject.defineProperties(Chart, {\n defaults: {\n enumerable,\n value: defaults\n },\n instances: {\n enumerable,\n value: instances\n },\n overrides: {\n enumerable,\n value: overrides\n },\n registry: {\n enumerable,\n value: registry\n },\n version: {\n enumerable,\n value: version\n },\n getChart: {\n enumerable,\n value: getChart\n },\n register: {\n enumerable,\n value: (...items) => {\n registry.add(...items);\n invalidatePlugins();\n }\n },\n unregister: {\n enumerable,\n value: (...items) => {\n registry.remove(...items);\n invalidatePlugins();\n }\n }\n});\n\nfunction clipArc(ctx, element, endAngle) {\n const {startAngle, pixelMargin, x, y, outerRadius, innerRadius} = element;\n let angleMargin = pixelMargin / outerRadius;\n ctx.beginPath();\n ctx.arc(x, y, outerRadius, startAngle - angleMargin, endAngle + angleMargin);\n if (innerRadius > pixelMargin) {\n angleMargin = pixelMargin / innerRadius;\n ctx.arc(x, y, innerRadius, endAngle + angleMargin, startAngle - angleMargin, true);\n } else {\n ctx.arc(x, y, pixelMargin, endAngle + HALF_PI, startAngle - HALF_PI);\n }\n ctx.closePath();\n ctx.clip();\n}\nfunction toRadiusCorners(value) {\n return _readValueToProps(value, ['outerStart', 'outerEnd', 'innerStart', 'innerEnd']);\n}\nfunction parseBorderRadius$1(arc, innerRadius, outerRadius, angleDelta) {\n const o = toRadiusCorners(arc.options.borderRadius);\n const halfThickness = (outerRadius - innerRadius) / 2;\n const innerLimit = Math.min(halfThickness, angleDelta * innerRadius / 2);\n const computeOuterLimit = (val) => {\n const outerArcLimit = (outerRadius - Math.min(halfThickness, val)) * angleDelta / 2;\n return _limitValue(val, 0, Math.min(halfThickness, outerArcLimit));\n };\n return {\n outerStart: computeOuterLimit(o.outerStart),\n outerEnd: computeOuterLimit(o.outerEnd),\n innerStart: _limitValue(o.innerStart, 0, innerLimit),\n innerEnd: _limitValue(o.innerEnd, 0, innerLimit),\n };\n}\nfunction rThetaToXY(r, theta, x, y) {\n return {\n x: x + r * Math.cos(theta),\n y: y + r * Math.sin(theta),\n };\n}\nfunction pathArc(ctx, element, offset, spacing, end, circular) {\n const {x, y, startAngle: start, pixelMargin, innerRadius: innerR} = element;\n const outerRadius = Math.max(element.outerRadius + spacing + offset - pixelMargin, 0);\n const innerRadius = innerR > 0 ? innerR + spacing + offset + pixelMargin : 0;\n let spacingOffset = 0;\n const alpha = end - start;\n if (spacing) {\n const noSpacingInnerRadius = innerR > 0 ? innerR - spacing : 0;\n const noSpacingOuterRadius = outerRadius > 0 ? outerRadius - spacing : 0;\n const avNogSpacingRadius = (noSpacingInnerRadius + noSpacingOuterRadius) / 2;\n const adjustedAngle = avNogSpacingRadius !== 0 ? (alpha * avNogSpacingRadius) / (avNogSpacingRadius + spacing) : alpha;\n spacingOffset = (alpha - adjustedAngle) / 2;\n }\n const beta = Math.max(0.001, alpha * outerRadius - offset / PI) / outerRadius;\n const angleOffset = (alpha - beta) / 2;\n const startAngle = start + angleOffset + spacingOffset;\n const endAngle = end - angleOffset - spacingOffset;\n const {outerStart, outerEnd, innerStart, innerEnd} = parseBorderRadius$1(element, innerRadius, outerRadius, endAngle - startAngle);\n const outerStartAdjustedRadius = outerRadius - outerStart;\n const outerEndAdjustedRadius = outerRadius - outerEnd;\n const outerStartAdjustedAngle = startAngle + outerStart / outerStartAdjustedRadius;\n const outerEndAdjustedAngle = endAngle - outerEnd / outerEndAdjustedRadius;\n const innerStartAdjustedRadius = innerRadius + innerStart;\n const innerEndAdjustedRadius = innerRadius + innerEnd;\n const innerStartAdjustedAngle = startAngle + innerStart / innerStartAdjustedRadius;\n const innerEndAdjustedAngle = endAngle - innerEnd / innerEndAdjustedRadius;\n ctx.beginPath();\n if (circular) {\n ctx.arc(x, y, outerRadius, outerStartAdjustedAngle, outerEndAdjustedAngle);\n if (outerEnd > 0) {\n const pCenter = rThetaToXY(outerEndAdjustedRadius, outerEndAdjustedAngle, x, y);\n ctx.arc(pCenter.x, pCenter.y, outerEnd, outerEndAdjustedAngle, endAngle + HALF_PI);\n }\n const p4 = rThetaToXY(innerEndAdjustedRadius, endAngle, x, y);\n ctx.lineTo(p4.x, p4.y);\n if (innerEnd > 0) {\n const pCenter = rThetaToXY(innerEndAdjustedRadius, innerEndAdjustedAngle, x, y);\n ctx.arc(pCenter.x, pCenter.y, innerEnd, endAngle + HALF_PI, innerEndAdjustedAngle + Math.PI);\n }\n ctx.arc(x, y, innerRadius, endAngle - (innerEnd / innerRadius), startAngle + (innerStart / innerRadius), true);\n if (innerStart > 0) {\n const pCenter = rThetaToXY(innerStartAdjustedRadius, innerStartAdjustedAngle, x, y);\n ctx.arc(pCenter.x, pCenter.y, innerStart, innerStartAdjustedAngle + Math.PI, startAngle - HALF_PI);\n }\n const p8 = rThetaToXY(outerStartAdjustedRadius, startAngle, x, y);\n ctx.lineTo(p8.x, p8.y);\n if (outerStart > 0) {\n const pCenter = rThetaToXY(outerStartAdjustedRadius, outerStartAdjustedAngle, x, y);\n ctx.arc(pCenter.x, pCenter.y, outerStart, startAngle - HALF_PI, outerStartAdjustedAngle);\n }\n } else {\n ctx.moveTo(x, y);\n const outerStartX = Math.cos(outerStartAdjustedAngle) * outerRadius + x;\n const outerStartY = Math.sin(outerStartAdjustedAngle) * outerRadius + y;\n ctx.lineTo(outerStartX, outerStartY);\n const outerEndX = Math.cos(outerEndAdjustedAngle) * outerRadius + x;\n const outerEndY = Math.sin(outerEndAdjustedAngle) * outerRadius + y;\n ctx.lineTo(outerEndX, outerEndY);\n }\n ctx.closePath();\n}\nfunction drawArc(ctx, element, offset, spacing, circular) {\n const {fullCircles, startAngle, circumference} = element;\n let endAngle = element.endAngle;\n if (fullCircles) {\n pathArc(ctx, element, offset, spacing, startAngle + TAU, circular);\n for (let i = 0; i < fullCircles; ++i) {\n ctx.fill();\n }\n if (!isNaN(circumference)) {\n endAngle = startAngle + circumference % TAU;\n if (circumference % TAU === 0) {\n endAngle += TAU;\n }\n }\n }\n pathArc(ctx, element, offset, spacing, endAngle, circular);\n ctx.fill();\n return endAngle;\n}\nfunction drawFullCircleBorders(ctx, element, inner) {\n const {x, y, startAngle, pixelMargin, fullCircles} = element;\n const outerRadius = Math.max(element.outerRadius - pixelMargin, 0);\n const innerRadius = element.innerRadius + pixelMargin;\n let i;\n if (inner) {\n clipArc(ctx, element, startAngle + TAU);\n }\n ctx.beginPath();\n ctx.arc(x, y, innerRadius, startAngle + TAU, startAngle, true);\n for (i = 0; i < fullCircles; ++i) {\n ctx.stroke();\n }\n ctx.beginPath();\n ctx.arc(x, y, outerRadius, startAngle, startAngle + TAU);\n for (i = 0; i < fullCircles; ++i) {\n ctx.stroke();\n }\n}\nfunction drawBorder(ctx, element, offset, spacing, endAngle, circular) {\n const {options} = element;\n const {borderWidth, borderJoinStyle} = options;\n const inner = options.borderAlign === 'inner';\n if (!borderWidth) {\n return;\n }\n if (inner) {\n ctx.lineWidth = borderWidth * 2;\n ctx.lineJoin = borderJoinStyle || 'round';\n } else {\n ctx.lineWidth = borderWidth;\n ctx.lineJoin = borderJoinStyle || 'bevel';\n }\n if (element.fullCircles) {\n drawFullCircleBorders(ctx, element, inner);\n }\n if (inner) {\n clipArc(ctx, element, endAngle);\n }\n pathArc(ctx, element, offset, spacing, endAngle, circular);\n ctx.stroke();\n}\nclass ArcElement extends Element {\n constructor(cfg) {\n super();\n this.options = undefined;\n this.circumference = undefined;\n this.startAngle = undefined;\n this.endAngle = undefined;\n this.innerRadius = undefined;\n this.outerRadius = undefined;\n this.pixelMargin = 0;\n this.fullCircles = 0;\n if (cfg) {\n Object.assign(this, cfg);\n }\n }\n inRange(chartX, chartY, useFinalPosition) {\n const point = this.getProps(['x', 'y'], useFinalPosition);\n const {angle, distance} = getAngleFromPoint(point, {x: chartX, y: chartY});\n const {startAngle, endAngle, innerRadius, outerRadius, circumference} = this.getProps([\n 'startAngle',\n 'endAngle',\n 'innerRadius',\n 'outerRadius',\n 'circumference'\n ], useFinalPosition);\n const rAdjust = this.options.spacing / 2;\n const _circumference = valueOrDefault(circumference, endAngle - startAngle);\n const betweenAngles = _circumference >= TAU || _angleBetween(angle, startAngle, endAngle);\n const withinRadius = _isBetween(distance, innerRadius + rAdjust, outerRadius + rAdjust);\n return (betweenAngles && withinRadius);\n }\n getCenterPoint(useFinalPosition) {\n const {x, y, startAngle, endAngle, innerRadius, outerRadius} = this.getProps([\n 'x',\n 'y',\n 'startAngle',\n 'endAngle',\n 'innerRadius',\n 'outerRadius',\n 'circumference',\n ], useFinalPosition);\n const {offset, spacing} = this.options;\n const halfAngle = (startAngle + endAngle) / 2;\n const halfRadius = (innerRadius + outerRadius + spacing + offset) / 2;\n return {\n x: x + Math.cos(halfAngle) * halfRadius,\n y: y + Math.sin(halfAngle) * halfRadius\n };\n }\n tooltipPosition(useFinalPosition) {\n return this.getCenterPoint(useFinalPosition);\n }\n draw(ctx) {\n const {options, circumference} = this;\n const offset = (options.offset || 0) / 2;\n const spacing = (options.spacing || 0) / 2;\n const circular = options.circular;\n this.pixelMargin = (options.borderAlign === 'inner') ? 0.33 : 0;\n this.fullCircles = circumference > TAU ? Math.floor(circumference / TAU) : 0;\n if (circumference === 0 || this.innerRadius < 0 || this.outerRadius < 0) {\n return;\n }\n ctx.save();\n let radiusOffset = 0;\n if (offset) {\n radiusOffset = offset / 2;\n const halfAngle = (this.startAngle + this.endAngle) / 2;\n ctx.translate(Math.cos(halfAngle) * radiusOffset, Math.sin(halfAngle) * radiusOffset);\n if (this.circumference >= PI) {\n radiusOffset = offset;\n }\n }\n ctx.fillStyle = options.backgroundColor;\n ctx.strokeStyle = options.borderColor;\n const endAngle = drawArc(ctx, this, radiusOffset, spacing, circular);\n drawBorder(ctx, this, radiusOffset, spacing, endAngle, circular);\n ctx.restore();\n }\n}\nArcElement.id = 'arc';\nArcElement.defaults = {\n borderAlign: 'center',\n borderColor: '#fff',\n borderJoinStyle: undefined,\n borderRadius: 0,\n borderWidth: 2,\n offset: 0,\n spacing: 0,\n angle: undefined,\n circular: true,\n};\nArcElement.defaultRoutes = {\n backgroundColor: 'backgroundColor'\n};\n\nfunction setStyle(ctx, options, style = options) {\n ctx.lineCap = valueOrDefault(style.borderCapStyle, options.borderCapStyle);\n ctx.setLineDash(valueOrDefault(style.borderDash, options.borderDash));\n ctx.lineDashOffset = valueOrDefault(style.borderDashOffset, options.borderDashOffset);\n ctx.lineJoin = valueOrDefault(style.borderJoinStyle, options.borderJoinStyle);\n ctx.lineWidth = valueOrDefault(style.borderWidth, options.borderWidth);\n ctx.strokeStyle = valueOrDefault(style.borderColor, options.borderColor);\n}\nfunction lineTo(ctx, previous, target) {\n ctx.lineTo(target.x, target.y);\n}\nfunction getLineMethod(options) {\n if (options.stepped) {\n return _steppedLineTo;\n }\n if (options.tension || options.cubicInterpolationMode === 'monotone') {\n return _bezierCurveTo;\n }\n return lineTo;\n}\nfunction pathVars(points, segment, params = {}) {\n const count = points.length;\n const {start: paramsStart = 0, end: paramsEnd = count - 1} = params;\n const {start: segmentStart, end: segmentEnd} = segment;\n const start = Math.max(paramsStart, segmentStart);\n const end = Math.min(paramsEnd, segmentEnd);\n const outside = paramsStart < segmentStart && paramsEnd < segmentStart || paramsStart > segmentEnd && paramsEnd > segmentEnd;\n return {\n count,\n start,\n loop: segment.loop,\n ilen: end < start && !outside ? count + end - start : end - start\n };\n}\nfunction pathSegment(ctx, line, segment, params) {\n const {points, options} = line;\n const {count, start, loop, ilen} = pathVars(points, segment, params);\n const lineMethod = getLineMethod(options);\n let {move = true, reverse} = params || {};\n let i, point, prev;\n for (i = 0; i <= ilen; ++i) {\n point = points[(start + (reverse ? ilen - i : i)) % count];\n if (point.skip) {\n continue;\n } else if (move) {\n ctx.moveTo(point.x, point.y);\n move = false;\n } else {\n lineMethod(ctx, prev, point, reverse, options.stepped);\n }\n prev = point;\n }\n if (loop) {\n point = points[(start + (reverse ? ilen : 0)) % count];\n lineMethod(ctx, prev, point, reverse, options.stepped);\n }\n return !!loop;\n}\nfunction fastPathSegment(ctx, line, segment, params) {\n const points = line.points;\n const {count, start, ilen} = pathVars(points, segment, params);\n const {move = true, reverse} = params || {};\n let avgX = 0;\n let countX = 0;\n let i, point, prevX, minY, maxY, lastY;\n const pointIndex = (index) => (start + (reverse ? ilen - index : index)) % count;\n const drawX = () => {\n if (minY !== maxY) {\n ctx.lineTo(avgX, maxY);\n ctx.lineTo(avgX, minY);\n ctx.lineTo(avgX, lastY);\n }\n };\n if (move) {\n point = points[pointIndex(0)];\n ctx.moveTo(point.x, point.y);\n }\n for (i = 0; i <= ilen; ++i) {\n point = points[pointIndex(i)];\n if (point.skip) {\n continue;\n }\n const x = point.x;\n const y = point.y;\n const truncX = x | 0;\n if (truncX === prevX) {\n if (y < minY) {\n minY = y;\n } else if (y > maxY) {\n maxY = y;\n }\n avgX = (countX * avgX + x) / ++countX;\n } else {\n drawX();\n ctx.lineTo(x, y);\n prevX = truncX;\n countX = 0;\n minY = maxY = y;\n }\n lastY = y;\n }\n drawX();\n}\nfunction _getSegmentMethod(line) {\n const opts = line.options;\n const borderDash = opts.borderDash && opts.borderDash.length;\n const useFastPath = !line._decimated && !line._loop && !opts.tension && opts.cubicInterpolationMode !== 'monotone' && !opts.stepped && !borderDash;\n return useFastPath ? fastPathSegment : pathSegment;\n}\nfunction _getInterpolationMethod(options) {\n if (options.stepped) {\n return _steppedInterpolation;\n }\n if (options.tension || options.cubicInterpolationMode === 'monotone') {\n return _bezierInterpolation;\n }\n return _pointInLine;\n}\nfunction strokePathWithCache(ctx, line, start, count) {\n let path = line._path;\n if (!path) {\n path = line._path = new Path2D();\n if (line.path(path, start, count)) {\n path.closePath();\n }\n }\n setStyle(ctx, line.options);\n ctx.stroke(path);\n}\nfunction strokePathDirect(ctx, line, start, count) {\n const {segments, options} = line;\n const segmentMethod = _getSegmentMethod(line);\n for (const segment of segments) {\n setStyle(ctx, options, segment.style);\n ctx.beginPath();\n if (segmentMethod(ctx, line, segment, {start, end: start + count - 1})) {\n ctx.closePath();\n }\n ctx.stroke();\n }\n}\nconst usePath2D = typeof Path2D === 'function';\nfunction draw(ctx, line, start, count) {\n if (usePath2D && !line.options.segment) {\n strokePathWithCache(ctx, line, start, count);\n } else {\n strokePathDirect(ctx, line, start, count);\n }\n}\nclass LineElement extends Element {\n constructor(cfg) {\n super();\n this.animated = true;\n this.options = undefined;\n this._chart = undefined;\n this._loop = undefined;\n this._fullLoop = undefined;\n this._path = undefined;\n this._points = undefined;\n this._segments = undefined;\n this._decimated = false;\n this._pointsUpdated = false;\n this._datasetIndex = undefined;\n if (cfg) {\n Object.assign(this, cfg);\n }\n }\n updateControlPoints(chartArea, indexAxis) {\n const options = this.options;\n if ((options.tension || options.cubicInterpolationMode === 'monotone') && !options.stepped && !this._pointsUpdated) {\n const loop = options.spanGaps ? this._loop : this._fullLoop;\n _updateBezierControlPoints(this._points, options, chartArea, loop, indexAxis);\n this._pointsUpdated = true;\n }\n }\n set points(points) {\n this._points = points;\n delete this._segments;\n delete this._path;\n this._pointsUpdated = false;\n }\n get points() {\n return this._points;\n }\n get segments() {\n return this._segments || (this._segments = _computeSegments(this, this.options.segment));\n }\n first() {\n const segments = this.segments;\n const points = this.points;\n return segments.length && points[segments[0].start];\n }\n last() {\n const segments = this.segments;\n const points = this.points;\n const count = segments.length;\n return count && points[segments[count - 1].end];\n }\n interpolate(point, property) {\n const options = this.options;\n const value = point[property];\n const points = this.points;\n const segments = _boundSegments(this, {property, start: value, end: value});\n if (!segments.length) {\n return;\n }\n const result = [];\n const _interpolate = _getInterpolationMethod(options);\n let i, ilen;\n for (i = 0, ilen = segments.length; i < ilen; ++i) {\n const {start, end} = segments[i];\n const p1 = points[start];\n const p2 = points[end];\n if (p1 === p2) {\n result.push(p1);\n continue;\n }\n const t = Math.abs((value - p1[property]) / (p2[property] - p1[property]));\n const interpolated = _interpolate(p1, p2, t, options.stepped);\n interpolated[property] = point[property];\n result.push(interpolated);\n }\n return result.length === 1 ? result[0] : result;\n }\n pathSegment(ctx, segment, params) {\n const segmentMethod = _getSegmentMethod(this);\n return segmentMethod(ctx, this, segment, params);\n }\n path(ctx, start, count) {\n const segments = this.segments;\n const segmentMethod = _getSegmentMethod(this);\n let loop = this._loop;\n start = start || 0;\n count = count || (this.points.length - start);\n for (const segment of segments) {\n loop &= segmentMethod(ctx, this, segment, {start, end: start + count - 1});\n }\n return !!loop;\n }\n draw(ctx, chartArea, start, count) {\n const options = this.options || {};\n const points = this.points || [];\n if (points.length && options.borderWidth) {\n ctx.save();\n draw(ctx, this, start, count);\n ctx.restore();\n }\n if (this.animated) {\n this._pointsUpdated = false;\n this._path = undefined;\n }\n }\n}\nLineElement.id = 'line';\nLineElement.defaults = {\n borderCapStyle: 'butt',\n borderDash: [],\n borderDashOffset: 0,\n borderJoinStyle: 'miter',\n borderWidth: 3,\n capBezierPoints: true,\n cubicInterpolationMode: 'default',\n fill: false,\n spanGaps: false,\n stepped: false,\n tension: 0,\n};\nLineElement.defaultRoutes = {\n backgroundColor: 'backgroundColor',\n borderColor: 'borderColor'\n};\nLineElement.descriptors = {\n _scriptable: true,\n _indexable: (name) => name !== 'borderDash' && name !== 'fill',\n};\n\nfunction inRange$1(el, pos, axis, useFinalPosition) {\n const options = el.options;\n const {[axis]: value} = el.getProps([axis], useFinalPosition);\n return (Math.abs(pos - value) < options.radius + options.hitRadius);\n}\nclass PointElement extends Element {\n constructor(cfg) {\n super();\n this.options = undefined;\n this.parsed = undefined;\n this.skip = undefined;\n this.stop = undefined;\n if (cfg) {\n Object.assign(this, cfg);\n }\n }\n inRange(mouseX, mouseY, useFinalPosition) {\n const options = this.options;\n const {x, y} = this.getProps(['x', 'y'], useFinalPosition);\n return ((Math.pow(mouseX - x, 2) + Math.pow(mouseY - y, 2)) < Math.pow(options.hitRadius + options.radius, 2));\n }\n inXRange(mouseX, useFinalPosition) {\n return inRange$1(this, mouseX, 'x', useFinalPosition);\n }\n inYRange(mouseY, useFinalPosition) {\n return inRange$1(this, mouseY, 'y', useFinalPosition);\n }\n getCenterPoint(useFinalPosition) {\n const {x, y} = this.getProps(['x', 'y'], useFinalPosition);\n return {x, y};\n }\n size(options) {\n options = options || this.options || {};\n let radius = options.radius || 0;\n radius = Math.max(radius, radius && options.hoverRadius || 0);\n const borderWidth = radius && options.borderWidth || 0;\n return (radius + borderWidth) * 2;\n }\n draw(ctx, area) {\n const options = this.options;\n if (this.skip || options.radius < 0.1 || !_isPointInArea(this, area, this.size(options) / 2)) {\n return;\n }\n ctx.strokeStyle = options.borderColor;\n ctx.lineWidth = options.borderWidth;\n ctx.fillStyle = options.backgroundColor;\n drawPoint(ctx, options, this.x, this.y);\n }\n getRange() {\n const options = this.options || {};\n return options.radius + options.hitRadius;\n }\n}\nPointElement.id = 'point';\nPointElement.defaults = {\n borderWidth: 1,\n hitRadius: 1,\n hoverBorderWidth: 1,\n hoverRadius: 4,\n pointStyle: 'circle',\n radius: 3,\n rotation: 0\n};\nPointElement.defaultRoutes = {\n backgroundColor: 'backgroundColor',\n borderColor: 'borderColor'\n};\n\nfunction getBarBounds(bar, useFinalPosition) {\n const {x, y, base, width, height} = bar.getProps(['x', 'y', 'base', 'width', 'height'], useFinalPosition);\n let left, right, top, bottom, half;\n if (bar.horizontal) {\n half = height / 2;\n left = Math.min(x, base);\n right = Math.max(x, base);\n top = y - half;\n bottom = y + half;\n } else {\n half = width / 2;\n left = x - half;\n right = x + half;\n top = Math.min(y, base);\n bottom = Math.max(y, base);\n }\n return {left, top, right, bottom};\n}\nfunction skipOrLimit(skip, value, min, max) {\n return skip ? 0 : _limitValue(value, min, max);\n}\nfunction parseBorderWidth(bar, maxW, maxH) {\n const value = bar.options.borderWidth;\n const skip = bar.borderSkipped;\n const o = toTRBL(value);\n return {\n t: skipOrLimit(skip.top, o.top, 0, maxH),\n r: skipOrLimit(skip.right, o.right, 0, maxW),\n b: skipOrLimit(skip.bottom, o.bottom, 0, maxH),\n l: skipOrLimit(skip.left, o.left, 0, maxW)\n };\n}\nfunction parseBorderRadius(bar, maxW, maxH) {\n const {enableBorderRadius} = bar.getProps(['enableBorderRadius']);\n const value = bar.options.borderRadius;\n const o = toTRBLCorners(value);\n const maxR = Math.min(maxW, maxH);\n const skip = bar.borderSkipped;\n const enableBorder = enableBorderRadius || isObject(value);\n return {\n topLeft: skipOrLimit(!enableBorder || skip.top || skip.left, o.topLeft, 0, maxR),\n topRight: skipOrLimit(!enableBorder || skip.top || skip.right, o.topRight, 0, maxR),\n bottomLeft: skipOrLimit(!enableBorder || skip.bottom || skip.left, o.bottomLeft, 0, maxR),\n bottomRight: skipOrLimit(!enableBorder || skip.bottom || skip.right, o.bottomRight, 0, maxR)\n };\n}\nfunction boundingRects(bar) {\n const bounds = getBarBounds(bar);\n const width = bounds.right - bounds.left;\n const height = bounds.bottom - bounds.top;\n const border = parseBorderWidth(bar, width / 2, height / 2);\n const radius = parseBorderRadius(bar, width / 2, height / 2);\n return {\n outer: {\n x: bounds.left,\n y: bounds.top,\n w: width,\n h: height,\n radius\n },\n inner: {\n x: bounds.left + border.l,\n y: bounds.top + border.t,\n w: width - border.l - border.r,\n h: height - border.t - border.b,\n radius: {\n topLeft: Math.max(0, radius.topLeft - Math.max(border.t, border.l)),\n topRight: Math.max(0, radius.topRight - Math.max(border.t, border.r)),\n bottomLeft: Math.max(0, radius.bottomLeft - Math.max(border.b, border.l)),\n bottomRight: Math.max(0, radius.bottomRight - Math.max(border.b, border.r)),\n }\n }\n };\n}\nfunction inRange(bar, x, y, useFinalPosition) {\n const skipX = x === null;\n const skipY = y === null;\n const skipBoth = skipX && skipY;\n const bounds = bar && !skipBoth && getBarBounds(bar, useFinalPosition);\n return bounds\n\t\t&& (skipX || _isBetween(x, bounds.left, bounds.right))\n\t\t&& (skipY || _isBetween(y, bounds.top, bounds.bottom));\n}\nfunction hasRadius(radius) {\n return radius.topLeft || radius.topRight || radius.bottomLeft || radius.bottomRight;\n}\nfunction addNormalRectPath(ctx, rect) {\n ctx.rect(rect.x, rect.y, rect.w, rect.h);\n}\nfunction inflateRect(rect, amount, refRect = {}) {\n const x = rect.x !== refRect.x ? -amount : 0;\n const y = rect.y !== refRect.y ? -amount : 0;\n const w = (rect.x + rect.w !== refRect.x + refRect.w ? amount : 0) - x;\n const h = (rect.y + rect.h !== refRect.y + refRect.h ? amount : 0) - y;\n return {\n x: rect.x + x,\n y: rect.y + y,\n w: rect.w + w,\n h: rect.h + h,\n radius: rect.radius\n };\n}\nclass BarElement extends Element {\n constructor(cfg) {\n super();\n this.options = undefined;\n this.horizontal = undefined;\n this.base = undefined;\n this.width = undefined;\n this.height = undefined;\n this.inflateAmount = undefined;\n if (cfg) {\n Object.assign(this, cfg);\n }\n }\n draw(ctx) {\n const {inflateAmount, options: {borderColor, backgroundColor}} = this;\n const {inner, outer} = boundingRects(this);\n const addRectPath = hasRadius(outer.radius) ? addRoundedRectPath : addNormalRectPath;\n ctx.save();\n if (outer.w !== inner.w || outer.h !== inner.h) {\n ctx.beginPath();\n addRectPath(ctx, inflateRect(outer, inflateAmount, inner));\n ctx.clip();\n addRectPath(ctx, inflateRect(inner, -inflateAmount, outer));\n ctx.fillStyle = borderColor;\n ctx.fill('evenodd');\n }\n ctx.beginPath();\n addRectPath(ctx, inflateRect(inner, inflateAmount));\n ctx.fillStyle = backgroundColor;\n ctx.fill();\n ctx.restore();\n }\n inRange(mouseX, mouseY, useFinalPosition) {\n return inRange(this, mouseX, mouseY, useFinalPosition);\n }\n inXRange(mouseX, useFinalPosition) {\n return inRange(this, mouseX, null, useFinalPosition);\n }\n inYRange(mouseY, useFinalPosition) {\n return inRange(this, null, mouseY, useFinalPosition);\n }\n getCenterPoint(useFinalPosition) {\n const {x, y, base, horizontal} = this.getProps(['x', 'y', 'base', 'horizontal'], useFinalPosition);\n return {\n x: horizontal ? (x + base) / 2 : x,\n y: horizontal ? y : (y + base) / 2\n };\n }\n getRange(axis) {\n return axis === 'x' ? this.width / 2 : this.height / 2;\n }\n}\nBarElement.id = 'bar';\nBarElement.defaults = {\n borderSkipped: 'start',\n borderWidth: 0,\n borderRadius: 0,\n inflateAmount: 'auto',\n pointStyle: undefined\n};\nBarElement.defaultRoutes = {\n backgroundColor: 'backgroundColor',\n borderColor: 'borderColor'\n};\n\nvar elements = /*#__PURE__*/Object.freeze({\n__proto__: null,\nArcElement: ArcElement,\nLineElement: LineElement,\nPointElement: PointElement,\nBarElement: BarElement\n});\n\nfunction lttbDecimation(data, start, count, availableWidth, options) {\n const samples = options.samples || availableWidth;\n if (samples >= count) {\n return data.slice(start, start + count);\n }\n const decimated = [];\n const bucketWidth = (count - 2) / (samples - 2);\n let sampledIndex = 0;\n const endIndex = start + count - 1;\n let a = start;\n let i, maxAreaPoint, maxArea, area, nextA;\n decimated[sampledIndex++] = data[a];\n for (i = 0; i < samples - 2; i++) {\n let avgX = 0;\n let avgY = 0;\n let j;\n const avgRangeStart = Math.floor((i + 1) * bucketWidth) + 1 + start;\n const avgRangeEnd = Math.min(Math.floor((i + 2) * bucketWidth) + 1, count) + start;\n const avgRangeLength = avgRangeEnd - avgRangeStart;\n for (j = avgRangeStart; j < avgRangeEnd; j++) {\n avgX += data[j].x;\n avgY += data[j].y;\n }\n avgX /= avgRangeLength;\n avgY /= avgRangeLength;\n const rangeOffs = Math.floor(i * bucketWidth) + 1 + start;\n const rangeTo = Math.min(Math.floor((i + 1) * bucketWidth) + 1, count) + start;\n const {x: pointAx, y: pointAy} = data[a];\n maxArea = area = -1;\n for (j = rangeOffs; j < rangeTo; j++) {\n area = 0.5 * Math.abs(\n (pointAx - avgX) * (data[j].y - pointAy) -\n (pointAx - data[j].x) * (avgY - pointAy)\n );\n if (area > maxArea) {\n maxArea = area;\n maxAreaPoint = data[j];\n nextA = j;\n }\n }\n decimated[sampledIndex++] = maxAreaPoint;\n a = nextA;\n }\n decimated[sampledIndex++] = data[endIndex];\n return decimated;\n}\nfunction minMaxDecimation(data, start, count, availableWidth) {\n let avgX = 0;\n let countX = 0;\n let i, point, x, y, prevX, minIndex, maxIndex, startIndex, minY, maxY;\n const decimated = [];\n const endIndex = start + count - 1;\n const xMin = data[start].x;\n const xMax = data[endIndex].x;\n const dx = xMax - xMin;\n for (i = start; i < start + count; ++i) {\n point = data[i];\n x = (point.x - xMin) / dx * availableWidth;\n y = point.y;\n const truncX = x | 0;\n if (truncX === prevX) {\n if (y < minY) {\n minY = y;\n minIndex = i;\n } else if (y > maxY) {\n maxY = y;\n maxIndex = i;\n }\n avgX = (countX * avgX + point.x) / ++countX;\n } else {\n const lastIndex = i - 1;\n if (!isNullOrUndef(minIndex) && !isNullOrUndef(maxIndex)) {\n const intermediateIndex1 = Math.min(minIndex, maxIndex);\n const intermediateIndex2 = Math.max(minIndex, maxIndex);\n if (intermediateIndex1 !== startIndex && intermediateIndex1 !== lastIndex) {\n decimated.push({\n ...data[intermediateIndex1],\n x: avgX,\n });\n }\n if (intermediateIndex2 !== startIndex && intermediateIndex2 !== lastIndex) {\n decimated.push({\n ...data[intermediateIndex2],\n x: avgX\n });\n }\n }\n if (i > 0 && lastIndex !== startIndex) {\n decimated.push(data[lastIndex]);\n }\n decimated.push(point);\n prevX = truncX;\n countX = 0;\n minY = maxY = y;\n minIndex = maxIndex = startIndex = i;\n }\n }\n return decimated;\n}\nfunction cleanDecimatedDataset(dataset) {\n if (dataset._decimated) {\n const data = dataset._data;\n delete dataset._decimated;\n delete dataset._data;\n Object.defineProperty(dataset, 'data', {value: data});\n }\n}\nfunction cleanDecimatedData(chart) {\n chart.data.datasets.forEach((dataset) => {\n cleanDecimatedDataset(dataset);\n });\n}\nfunction getStartAndCountOfVisiblePointsSimplified(meta, points) {\n const pointCount = points.length;\n let start = 0;\n let count;\n const {iScale} = meta;\n const {min, max, minDefined, maxDefined} = iScale.getUserBounds();\n if (minDefined) {\n start = _limitValue(_lookupByKey(points, iScale.axis, min).lo, 0, pointCount - 1);\n }\n if (maxDefined) {\n count = _limitValue(_lookupByKey(points, iScale.axis, max).hi + 1, start, pointCount) - start;\n } else {\n count = pointCount - start;\n }\n return {start, count};\n}\nvar plugin_decimation = {\n id: 'decimation',\n defaults: {\n algorithm: 'min-max',\n enabled: false,\n },\n beforeElementsUpdate: (chart, args, options) => {\n if (!options.enabled) {\n cleanDecimatedData(chart);\n return;\n }\n const availableWidth = chart.width;\n chart.data.datasets.forEach((dataset, datasetIndex) => {\n const {_data, indexAxis} = dataset;\n const meta = chart.getDatasetMeta(datasetIndex);\n const data = _data || dataset.data;\n if (resolve([indexAxis, chart.options.indexAxis]) === 'y') {\n return;\n }\n if (!meta.controller.supportsDecimation) {\n return;\n }\n const xAxis = chart.scales[meta.xAxisID];\n if (xAxis.type !== 'linear' && xAxis.type !== 'time') {\n return;\n }\n if (chart.options.parsing) {\n return;\n }\n let {start, count} = getStartAndCountOfVisiblePointsSimplified(meta, data);\n const threshold = options.threshold || 4 * availableWidth;\n if (count <= threshold) {\n cleanDecimatedDataset(dataset);\n return;\n }\n if (isNullOrUndef(_data)) {\n dataset._data = data;\n delete dataset.data;\n Object.defineProperty(dataset, 'data', {\n configurable: true,\n enumerable: true,\n get: function() {\n return this._decimated;\n },\n set: function(d) {\n this._data = d;\n }\n });\n }\n let decimated;\n switch (options.algorithm) {\n case 'lttb':\n decimated = lttbDecimation(data, start, count, availableWidth, options);\n break;\n case 'min-max':\n decimated = minMaxDecimation(data, start, count, availableWidth);\n break;\n default:\n throw new Error(`Unsupported decimation algorithm '${options.algorithm}'`);\n }\n dataset._decimated = decimated;\n });\n },\n destroy(chart) {\n cleanDecimatedData(chart);\n }\n};\n\nfunction _segments(line, target, property) {\n const segments = line.segments;\n const points = line.points;\n const tpoints = target.points;\n const parts = [];\n for (const segment of segments) {\n let {start, end} = segment;\n end = _findSegmentEnd(start, end, points);\n const bounds = _getBounds(property, points[start], points[end], segment.loop);\n if (!target.segments) {\n parts.push({\n source: segment,\n target: bounds,\n start: points[start],\n end: points[end]\n });\n continue;\n }\n const targetSegments = _boundSegments(target, bounds);\n for (const tgt of targetSegments) {\n const subBounds = _getBounds(property, tpoints[tgt.start], tpoints[tgt.end], tgt.loop);\n const fillSources = _boundSegment(segment, points, subBounds);\n for (const fillSource of fillSources) {\n parts.push({\n source: fillSource,\n target: tgt,\n start: {\n [property]: _getEdge(bounds, subBounds, 'start', Math.max)\n },\n end: {\n [property]: _getEdge(bounds, subBounds, 'end', Math.min)\n }\n });\n }\n }\n }\n return parts;\n}\nfunction _getBounds(property, first, last, loop) {\n if (loop) {\n return;\n }\n let start = first[property];\n let end = last[property];\n if (property === 'angle') {\n start = _normalizeAngle(start);\n end = _normalizeAngle(end);\n }\n return {property, start, end};\n}\nfunction _pointsFromSegments(boundary, line) {\n const {x = null, y = null} = boundary || {};\n const linePoints = line.points;\n const points = [];\n line.segments.forEach(({start, end}) => {\n end = _findSegmentEnd(start, end, linePoints);\n const first = linePoints[start];\n const last = linePoints[end];\n if (y !== null) {\n points.push({x: first.x, y});\n points.push({x: last.x, y});\n } else if (x !== null) {\n points.push({x, y: first.y});\n points.push({x, y: last.y});\n }\n });\n return points;\n}\nfunction _findSegmentEnd(start, end, points) {\n for (;end > start; end--) {\n const point = points[end];\n if (!isNaN(point.x) && !isNaN(point.y)) {\n break;\n }\n }\n return end;\n}\nfunction _getEdge(a, b, prop, fn) {\n if (a && b) {\n return fn(a[prop], b[prop]);\n }\n return a ? a[prop] : b ? b[prop] : 0;\n}\n\nfunction _createBoundaryLine(boundary, line) {\n let points = [];\n let _loop = false;\n if (isArray(boundary)) {\n _loop = true;\n points = boundary;\n } else {\n points = _pointsFromSegments(boundary, line);\n }\n return points.length ? new LineElement({\n points,\n options: {tension: 0},\n _loop,\n _fullLoop: _loop\n }) : null;\n}\nfunction _shouldApplyFill(source) {\n return source && source.fill !== false;\n}\n\nfunction _resolveTarget(sources, index, propagate) {\n const source = sources[index];\n let fill = source.fill;\n const visited = [index];\n let target;\n if (!propagate) {\n return fill;\n }\n while (fill !== false && visited.indexOf(fill) === -1) {\n if (!isNumberFinite(fill)) {\n return fill;\n }\n target = sources[fill];\n if (!target) {\n return false;\n }\n if (target.visible) {\n return fill;\n }\n visited.push(fill);\n fill = target.fill;\n }\n return false;\n}\nfunction _decodeFill(line, index, count) {\n const fill = parseFillOption(line);\n if (isObject(fill)) {\n return isNaN(fill.value) ? false : fill;\n }\n let target = parseFloat(fill);\n if (isNumberFinite(target) && Math.floor(target) === target) {\n return decodeTargetIndex(fill[0], index, target, count);\n }\n return ['origin', 'start', 'end', 'stack', 'shape'].indexOf(fill) >= 0 && fill;\n}\nfunction decodeTargetIndex(firstCh, index, target, count) {\n if (firstCh === '-' || firstCh === '+') {\n target = index + target;\n }\n if (target === index || target < 0 || target >= count) {\n return false;\n }\n return target;\n}\nfunction _getTargetPixel(fill, scale) {\n let pixel = null;\n if (fill === 'start') {\n pixel = scale.bottom;\n } else if (fill === 'end') {\n pixel = scale.top;\n } else if (isObject(fill)) {\n pixel = scale.getPixelForValue(fill.value);\n } else if (scale.getBasePixel) {\n pixel = scale.getBasePixel();\n }\n return pixel;\n}\nfunction _getTargetValue(fill, scale, startValue) {\n let value;\n if (fill === 'start') {\n value = startValue;\n } else if (fill === 'end') {\n value = scale.options.reverse ? scale.min : scale.max;\n } else if (isObject(fill)) {\n value = fill.value;\n } else {\n value = scale.getBaseValue();\n }\n return value;\n}\nfunction parseFillOption(line) {\n const options = line.options;\n const fillOption = options.fill;\n let fill = valueOrDefault(fillOption && fillOption.target, fillOption);\n if (fill === undefined) {\n fill = !!options.backgroundColor;\n }\n if (fill === false || fill === null) {\n return false;\n }\n if (fill === true) {\n return 'origin';\n }\n return fill;\n}\n\nfunction _buildStackLine(source) {\n const {scale, index, line} = source;\n const points = [];\n const segments = line.segments;\n const sourcePoints = line.points;\n const linesBelow = getLinesBelow(scale, index);\n linesBelow.push(_createBoundaryLine({x: null, y: scale.bottom}, line));\n for (let i = 0; i < segments.length; i++) {\n const segment = segments[i];\n for (let j = segment.start; j <= segment.end; j++) {\n addPointsBelow(points, sourcePoints[j], linesBelow);\n }\n }\n return new LineElement({points, options: {}});\n}\nfunction getLinesBelow(scale, index) {\n const below = [];\n const metas = scale.getMatchingVisibleMetas('line');\n for (let i = 0; i < metas.length; i++) {\n const meta = metas[i];\n if (meta.index === index) {\n break;\n }\n if (!meta.hidden) {\n below.unshift(meta.dataset);\n }\n }\n return below;\n}\nfunction addPointsBelow(points, sourcePoint, linesBelow) {\n const postponed = [];\n for (let j = 0; j < linesBelow.length; j++) {\n const line = linesBelow[j];\n const {first, last, point} = findPoint(line, sourcePoint, 'x');\n if (!point || (first && last)) {\n continue;\n }\n if (first) {\n postponed.unshift(point);\n } else {\n points.push(point);\n if (!last) {\n break;\n }\n }\n }\n points.push(...postponed);\n}\nfunction findPoint(line, sourcePoint, property) {\n const point = line.interpolate(sourcePoint, property);\n if (!point) {\n return {};\n }\n const pointValue = point[property];\n const segments = line.segments;\n const linePoints = line.points;\n let first = false;\n let last = false;\n for (let i = 0; i < segments.length; i++) {\n const segment = segments[i];\n const firstValue = linePoints[segment.start][property];\n const lastValue = linePoints[segment.end][property];\n if (_isBetween(pointValue, firstValue, lastValue)) {\n first = pointValue === firstValue;\n last = pointValue === lastValue;\n break;\n }\n }\n return {first, last, point};\n}\n\nclass simpleArc {\n constructor(opts) {\n this.x = opts.x;\n this.y = opts.y;\n this.radius = opts.radius;\n }\n pathSegment(ctx, bounds, opts) {\n const {x, y, radius} = this;\n bounds = bounds || {start: 0, end: TAU};\n ctx.arc(x, y, radius, bounds.end, bounds.start, true);\n return !opts.bounds;\n }\n interpolate(point) {\n const {x, y, radius} = this;\n const angle = point.angle;\n return {\n x: x + Math.cos(angle) * radius,\n y: y + Math.sin(angle) * radius,\n angle\n };\n }\n}\n\nfunction _getTarget(source) {\n const {chart, fill, line} = source;\n if (isNumberFinite(fill)) {\n return getLineByIndex(chart, fill);\n }\n if (fill === 'stack') {\n return _buildStackLine(source);\n }\n if (fill === 'shape') {\n return true;\n }\n const boundary = computeBoundary(source);\n if (boundary instanceof simpleArc) {\n return boundary;\n }\n return _createBoundaryLine(boundary, line);\n}\nfunction getLineByIndex(chart, index) {\n const meta = chart.getDatasetMeta(index);\n const visible = meta && chart.isDatasetVisible(index);\n return visible ? meta.dataset : null;\n}\nfunction computeBoundary(source) {\n const scale = source.scale || {};\n if (scale.getPointPositionForValue) {\n return computeCircularBoundary(source);\n }\n return computeLinearBoundary(source);\n}\nfunction computeLinearBoundary(source) {\n const {scale = {}, fill} = source;\n const pixel = _getTargetPixel(fill, scale);\n if (isNumberFinite(pixel)) {\n const horizontal = scale.isHorizontal();\n return {\n x: horizontal ? pixel : null,\n y: horizontal ? null : pixel\n };\n }\n return null;\n}\nfunction computeCircularBoundary(source) {\n const {scale, fill} = source;\n const options = scale.options;\n const length = scale.getLabels().length;\n const start = options.reverse ? scale.max : scale.min;\n const value = _getTargetValue(fill, scale, start);\n const target = [];\n if (options.grid.circular) {\n const center = scale.getPointPositionForValue(0, start);\n return new simpleArc({\n x: center.x,\n y: center.y,\n radius: scale.getDistanceFromCenterForValue(value)\n });\n }\n for (let i = 0; i < length; ++i) {\n target.push(scale.getPointPositionForValue(i, value));\n }\n return target;\n}\n\nfunction _drawfill(ctx, source, area) {\n const target = _getTarget(source);\n const {line, scale, axis} = source;\n const lineOpts = line.options;\n const fillOption = lineOpts.fill;\n const color = lineOpts.backgroundColor;\n const {above = color, below = color} = fillOption || {};\n if (target && line.points.length) {\n clipArea(ctx, area);\n doFill(ctx, {line, target, above, below, area, scale, axis});\n unclipArea(ctx);\n }\n}\nfunction doFill(ctx, cfg) {\n const {line, target, above, below, area, scale} = cfg;\n const property = line._loop ? 'angle' : cfg.axis;\n ctx.save();\n if (property === 'x' && below !== above) {\n clipVertical(ctx, target, area.top);\n fill(ctx, {line, target, color: above, scale, property});\n ctx.restore();\n ctx.save();\n clipVertical(ctx, target, area.bottom);\n }\n fill(ctx, {line, target, color: below, scale, property});\n ctx.restore();\n}\nfunction clipVertical(ctx, target, clipY) {\n const {segments, points} = target;\n let first = true;\n let lineLoop = false;\n ctx.beginPath();\n for (const segment of segments) {\n const {start, end} = segment;\n const firstPoint = points[start];\n const lastPoint = points[_findSegmentEnd(start, end, points)];\n if (first) {\n ctx.moveTo(firstPoint.x, firstPoint.y);\n first = false;\n } else {\n ctx.lineTo(firstPoint.x, clipY);\n ctx.lineTo(firstPoint.x, firstPoint.y);\n }\n lineLoop = !!target.pathSegment(ctx, segment, {move: lineLoop});\n if (lineLoop) {\n ctx.closePath();\n } else {\n ctx.lineTo(lastPoint.x, clipY);\n }\n }\n ctx.lineTo(target.first().x, clipY);\n ctx.closePath();\n ctx.clip();\n}\nfunction fill(ctx, cfg) {\n const {line, target, property, color, scale} = cfg;\n const segments = _segments(line, target, property);\n for (const {source: src, target: tgt, start, end} of segments) {\n const {style: {backgroundColor = color} = {}} = src;\n const notShape = target !== true;\n ctx.save();\n ctx.fillStyle = backgroundColor;\n clipBounds(ctx, scale, notShape && _getBounds(property, start, end));\n ctx.beginPath();\n const lineLoop = !!line.pathSegment(ctx, src);\n let loop;\n if (notShape) {\n if (lineLoop) {\n ctx.closePath();\n } else {\n interpolatedLineTo(ctx, target, end, property);\n }\n const targetLoop = !!target.pathSegment(ctx, tgt, {move: lineLoop, reverse: true});\n loop = lineLoop && targetLoop;\n if (!loop) {\n interpolatedLineTo(ctx, target, start, property);\n }\n }\n ctx.closePath();\n ctx.fill(loop ? 'evenodd' : 'nonzero');\n ctx.restore();\n }\n}\nfunction clipBounds(ctx, scale, bounds) {\n const {top, bottom} = scale.chart.chartArea;\n const {property, start, end} = bounds || {};\n if (property === 'x') {\n ctx.beginPath();\n ctx.rect(start, top, end - start, bottom - top);\n ctx.clip();\n }\n}\nfunction interpolatedLineTo(ctx, target, point, property) {\n const interpolatedPoint = target.interpolate(point, property);\n if (interpolatedPoint) {\n ctx.lineTo(interpolatedPoint.x, interpolatedPoint.y);\n }\n}\n\nvar index = {\n id: 'filler',\n afterDatasetsUpdate(chart, _args, options) {\n const count = (chart.data.datasets || []).length;\n const sources = [];\n let meta, i, line, source;\n for (i = 0; i < count; ++i) {\n meta = chart.getDatasetMeta(i);\n line = meta.dataset;\n source = null;\n if (line && line.options && line instanceof LineElement) {\n source = {\n visible: chart.isDatasetVisible(i),\n index: i,\n fill: _decodeFill(line, i, count),\n chart,\n axis: meta.controller.options.indexAxis,\n scale: meta.vScale,\n line,\n };\n }\n meta.$filler = source;\n sources.push(source);\n }\n for (i = 0; i < count; ++i) {\n source = sources[i];\n if (!source || source.fill === false) {\n continue;\n }\n source.fill = _resolveTarget(sources, i, options.propagate);\n }\n },\n beforeDraw(chart, _args, options) {\n const draw = options.drawTime === 'beforeDraw';\n const metasets = chart.getSortedVisibleDatasetMetas();\n const area = chart.chartArea;\n for (let i = metasets.length - 1; i >= 0; --i) {\n const source = metasets[i].$filler;\n if (!source) {\n continue;\n }\n source.line.updateControlPoints(area, source.axis);\n if (draw && source.fill) {\n _drawfill(chart.ctx, source, area);\n }\n }\n },\n beforeDatasetsDraw(chart, _args, options) {\n if (options.drawTime !== 'beforeDatasetsDraw') {\n return;\n }\n const metasets = chart.getSortedVisibleDatasetMetas();\n for (let i = metasets.length - 1; i >= 0; --i) {\n const source = metasets[i].$filler;\n if (_shouldApplyFill(source)) {\n _drawfill(chart.ctx, source, chart.chartArea);\n }\n }\n },\n beforeDatasetDraw(chart, args, options) {\n const source = args.meta.$filler;\n if (!_shouldApplyFill(source) || options.drawTime !== 'beforeDatasetDraw') {\n return;\n }\n _drawfill(chart.ctx, source, chart.chartArea);\n },\n defaults: {\n propagate: true,\n drawTime: 'beforeDatasetDraw'\n }\n};\n\nconst getBoxSize = (labelOpts, fontSize) => {\n let {boxHeight = fontSize, boxWidth = fontSize} = labelOpts;\n if (labelOpts.usePointStyle) {\n boxHeight = Math.min(boxHeight, fontSize);\n boxWidth = labelOpts.pointStyleWidth || Math.min(boxWidth, fontSize);\n }\n return {\n boxWidth,\n boxHeight,\n itemHeight: Math.max(fontSize, boxHeight)\n };\n};\nconst itemsEqual = (a, b) => a !== null && b !== null && a.datasetIndex === b.datasetIndex && a.index === b.index;\nclass Legend extends Element {\n constructor(config) {\n super();\n this._added = false;\n this.legendHitBoxes = [];\n this._hoveredItem = null;\n this.doughnutMode = false;\n this.chart = config.chart;\n this.options = config.options;\n this.ctx = config.ctx;\n this.legendItems = undefined;\n this.columnSizes = undefined;\n this.lineWidths = undefined;\n this.maxHeight = undefined;\n this.maxWidth = undefined;\n this.top = undefined;\n this.bottom = undefined;\n this.left = undefined;\n this.right = undefined;\n this.height = undefined;\n this.width = undefined;\n this._margins = undefined;\n this.position = undefined;\n this.weight = undefined;\n this.fullSize = undefined;\n }\n update(maxWidth, maxHeight, margins) {\n this.maxWidth = maxWidth;\n this.maxHeight = maxHeight;\n this._margins = margins;\n this.setDimensions();\n this.buildLabels();\n this.fit();\n }\n setDimensions() {\n if (this.isHorizontal()) {\n this.width = this.maxWidth;\n this.left = this._margins.left;\n this.right = this.width;\n } else {\n this.height = this.maxHeight;\n this.top = this._margins.top;\n this.bottom = this.height;\n }\n }\n buildLabels() {\n const labelOpts = this.options.labels || {};\n let legendItems = callback(labelOpts.generateLabels, [this.chart], this) || [];\n if (labelOpts.filter) {\n legendItems = legendItems.filter((item) => labelOpts.filter(item, this.chart.data));\n }\n if (labelOpts.sort) {\n legendItems = legendItems.sort((a, b) => labelOpts.sort(a, b, this.chart.data));\n }\n if (this.options.reverse) {\n legendItems.reverse();\n }\n this.legendItems = legendItems;\n }\n fit() {\n const {options, ctx} = this;\n if (!options.display) {\n this.width = this.height = 0;\n return;\n }\n const labelOpts = options.labels;\n const labelFont = toFont(labelOpts.font);\n const fontSize = labelFont.size;\n const titleHeight = this._computeTitleHeight();\n const {boxWidth, itemHeight} = getBoxSize(labelOpts, fontSize);\n let width, height;\n ctx.font = labelFont.string;\n if (this.isHorizontal()) {\n width = this.maxWidth;\n height = this._fitRows(titleHeight, fontSize, boxWidth, itemHeight) + 10;\n } else {\n height = this.maxHeight;\n width = this._fitCols(titleHeight, fontSize, boxWidth, itemHeight) + 10;\n }\n this.width = Math.min(width, options.maxWidth || this.maxWidth);\n this.height = Math.min(height, options.maxHeight || this.maxHeight);\n }\n _fitRows(titleHeight, fontSize, boxWidth, itemHeight) {\n const {ctx, maxWidth, options: {labels: {padding}}} = this;\n const hitboxes = this.legendHitBoxes = [];\n const lineWidths = this.lineWidths = [0];\n const lineHeight = itemHeight + padding;\n let totalHeight = titleHeight;\n ctx.textAlign = 'left';\n ctx.textBaseline = 'middle';\n let row = -1;\n let top = -lineHeight;\n this.legendItems.forEach((legendItem, i) => {\n const itemWidth = boxWidth + (fontSize / 2) + ctx.measureText(legendItem.text).width;\n if (i === 0 || lineWidths[lineWidths.length - 1] + itemWidth + 2 * padding > maxWidth) {\n totalHeight += lineHeight;\n lineWidths[lineWidths.length - (i > 0 ? 0 : 1)] = 0;\n top += lineHeight;\n row++;\n }\n hitboxes[i] = {left: 0, top, row, width: itemWidth, height: itemHeight};\n lineWidths[lineWidths.length - 1] += itemWidth + padding;\n });\n return totalHeight;\n }\n _fitCols(titleHeight, fontSize, boxWidth, itemHeight) {\n const {ctx, maxHeight, options: {labels: {padding}}} = this;\n const hitboxes = this.legendHitBoxes = [];\n const columnSizes = this.columnSizes = [];\n const heightLimit = maxHeight - titleHeight;\n let totalWidth = padding;\n let currentColWidth = 0;\n let currentColHeight = 0;\n let left = 0;\n let col = 0;\n this.legendItems.forEach((legendItem, i) => {\n const itemWidth = boxWidth + (fontSize / 2) + ctx.measureText(legendItem.text).width;\n if (i > 0 && currentColHeight + itemHeight + 2 * padding > heightLimit) {\n totalWidth += currentColWidth + padding;\n columnSizes.push({width: currentColWidth, height: currentColHeight});\n left += currentColWidth + padding;\n col++;\n currentColWidth = currentColHeight = 0;\n }\n hitboxes[i] = {left, top: currentColHeight, col, width: itemWidth, height: itemHeight};\n currentColWidth = Math.max(currentColWidth, itemWidth);\n currentColHeight += itemHeight + padding;\n });\n totalWidth += currentColWidth;\n columnSizes.push({width: currentColWidth, height: currentColHeight});\n return totalWidth;\n }\n adjustHitBoxes() {\n if (!this.options.display) {\n return;\n }\n const titleHeight = this._computeTitleHeight();\n const {legendHitBoxes: hitboxes, options: {align, labels: {padding}, rtl}} = this;\n const rtlHelper = getRtlAdapter(rtl, this.left, this.width);\n if (this.isHorizontal()) {\n let row = 0;\n let left = _alignStartEnd(align, this.left + padding, this.right - this.lineWidths[row]);\n for (const hitbox of hitboxes) {\n if (row !== hitbox.row) {\n row = hitbox.row;\n left = _alignStartEnd(align, this.left + padding, this.right - this.lineWidths[row]);\n }\n hitbox.top += this.top + titleHeight + padding;\n hitbox.left = rtlHelper.leftForLtr(rtlHelper.x(left), hitbox.width);\n left += hitbox.width + padding;\n }\n } else {\n let col = 0;\n let top = _alignStartEnd(align, this.top + titleHeight + padding, this.bottom - this.columnSizes[col].height);\n for (const hitbox of hitboxes) {\n if (hitbox.col !== col) {\n col = hitbox.col;\n top = _alignStartEnd(align, this.top + titleHeight + padding, this.bottom - this.columnSizes[col].height);\n }\n hitbox.top = top;\n hitbox.left += this.left + padding;\n hitbox.left = rtlHelper.leftForLtr(rtlHelper.x(hitbox.left), hitbox.width);\n top += hitbox.height + padding;\n }\n }\n }\n isHorizontal() {\n return this.options.position === 'top' || this.options.position === 'bottom';\n }\n draw() {\n if (this.options.display) {\n const ctx = this.ctx;\n clipArea(ctx, this);\n this._draw();\n unclipArea(ctx);\n }\n }\n _draw() {\n const {options: opts, columnSizes, lineWidths, ctx} = this;\n const {align, labels: labelOpts} = opts;\n const defaultColor = defaults.color;\n const rtlHelper = getRtlAdapter(opts.rtl, this.left, this.width);\n const labelFont = toFont(labelOpts.font);\n const {color: fontColor, padding} = labelOpts;\n const fontSize = labelFont.size;\n const halfFontSize = fontSize / 2;\n let cursor;\n this.drawTitle();\n ctx.textAlign = rtlHelper.textAlign('left');\n ctx.textBaseline = 'middle';\n ctx.lineWidth = 0.5;\n ctx.font = labelFont.string;\n const {boxWidth, boxHeight, itemHeight} = getBoxSize(labelOpts, fontSize);\n const drawLegendBox = function(x, y, legendItem) {\n if (isNaN(boxWidth) || boxWidth <= 0 || isNaN(boxHeight) || boxHeight < 0) {\n return;\n }\n ctx.save();\n const lineWidth = valueOrDefault(legendItem.lineWidth, 1);\n ctx.fillStyle = valueOrDefault(legendItem.fillStyle, defaultColor);\n ctx.lineCap = valueOrDefault(legendItem.lineCap, 'butt');\n ctx.lineDashOffset = valueOrDefault(legendItem.lineDashOffset, 0);\n ctx.lineJoin = valueOrDefault(legendItem.lineJoin, 'miter');\n ctx.lineWidth = lineWidth;\n ctx.strokeStyle = valueOrDefault(legendItem.strokeStyle, defaultColor);\n ctx.setLineDash(valueOrDefault(legendItem.lineDash, []));\n if (labelOpts.usePointStyle) {\n const drawOptions = {\n radius: boxHeight * Math.SQRT2 / 2,\n pointStyle: legendItem.pointStyle,\n rotation: legendItem.rotation,\n borderWidth: lineWidth\n };\n const centerX = rtlHelper.xPlus(x, boxWidth / 2);\n const centerY = y + halfFontSize;\n drawPointLegend(ctx, drawOptions, centerX, centerY, labelOpts.pointStyleWidth && boxWidth);\n } else {\n const yBoxTop = y + Math.max((fontSize - boxHeight) / 2, 0);\n const xBoxLeft = rtlHelper.leftForLtr(x, boxWidth);\n const borderRadius = toTRBLCorners(legendItem.borderRadius);\n ctx.beginPath();\n if (Object.values(borderRadius).some(v => v !== 0)) {\n addRoundedRectPath(ctx, {\n x: xBoxLeft,\n y: yBoxTop,\n w: boxWidth,\n h: boxHeight,\n radius: borderRadius,\n });\n } else {\n ctx.rect(xBoxLeft, yBoxTop, boxWidth, boxHeight);\n }\n ctx.fill();\n if (lineWidth !== 0) {\n ctx.stroke();\n }\n }\n ctx.restore();\n };\n const fillText = function(x, y, legendItem) {\n renderText(ctx, legendItem.text, x, y + (itemHeight / 2), labelFont, {\n strikethrough: legendItem.hidden,\n textAlign: rtlHelper.textAlign(legendItem.textAlign)\n });\n };\n const isHorizontal = this.isHorizontal();\n const titleHeight = this._computeTitleHeight();\n if (isHorizontal) {\n cursor = {\n x: _alignStartEnd(align, this.left + padding, this.right - lineWidths[0]),\n y: this.top + padding + titleHeight,\n line: 0\n };\n } else {\n cursor = {\n x: this.left + padding,\n y: _alignStartEnd(align, this.top + titleHeight + padding, this.bottom - columnSizes[0].height),\n line: 0\n };\n }\n overrideTextDirection(this.ctx, opts.textDirection);\n const lineHeight = itemHeight + padding;\n this.legendItems.forEach((legendItem, i) => {\n ctx.strokeStyle = legendItem.fontColor || fontColor;\n ctx.fillStyle = legendItem.fontColor || fontColor;\n const textWidth = ctx.measureText(legendItem.text).width;\n const textAlign = rtlHelper.textAlign(legendItem.textAlign || (legendItem.textAlign = labelOpts.textAlign));\n const width = boxWidth + halfFontSize + textWidth;\n let x = cursor.x;\n let y = cursor.y;\n rtlHelper.setWidth(this.width);\n if (isHorizontal) {\n if (i > 0 && x + width + padding > this.right) {\n y = cursor.y += lineHeight;\n cursor.line++;\n x = cursor.x = _alignStartEnd(align, this.left + padding, this.right - lineWidths[cursor.line]);\n }\n } else if (i > 0 && y + lineHeight > this.bottom) {\n x = cursor.x = x + columnSizes[cursor.line].width + padding;\n cursor.line++;\n y = cursor.y = _alignStartEnd(align, this.top + titleHeight + padding, this.bottom - columnSizes[cursor.line].height);\n }\n const realX = rtlHelper.x(x);\n drawLegendBox(realX, y, legendItem);\n x = _textX(textAlign, x + boxWidth + halfFontSize, isHorizontal ? x + width : this.right, opts.rtl);\n fillText(rtlHelper.x(x), y, legendItem);\n if (isHorizontal) {\n cursor.x += width + padding;\n } else {\n cursor.y += lineHeight;\n }\n });\n restoreTextDirection(this.ctx, opts.textDirection);\n }\n drawTitle() {\n const opts = this.options;\n const titleOpts = opts.title;\n const titleFont = toFont(titleOpts.font);\n const titlePadding = toPadding(titleOpts.padding);\n if (!titleOpts.display) {\n return;\n }\n const rtlHelper = getRtlAdapter(opts.rtl, this.left, this.width);\n const ctx = this.ctx;\n const position = titleOpts.position;\n const halfFontSize = titleFont.size / 2;\n const topPaddingPlusHalfFontSize = titlePadding.top + halfFontSize;\n let y;\n let left = this.left;\n let maxWidth = this.width;\n if (this.isHorizontal()) {\n maxWidth = Math.max(...this.lineWidths);\n y = this.top + topPaddingPlusHalfFontSize;\n left = _alignStartEnd(opts.align, left, this.right - maxWidth);\n } else {\n const maxHeight = this.columnSizes.reduce((acc, size) => Math.max(acc, size.height), 0);\n y = topPaddingPlusHalfFontSize + _alignStartEnd(opts.align, this.top, this.bottom - maxHeight - opts.labels.padding - this._computeTitleHeight());\n }\n const x = _alignStartEnd(position, left, left + maxWidth);\n ctx.textAlign = rtlHelper.textAlign(_toLeftRightCenter(position));\n ctx.textBaseline = 'middle';\n ctx.strokeStyle = titleOpts.color;\n ctx.fillStyle = titleOpts.color;\n ctx.font = titleFont.string;\n renderText(ctx, titleOpts.text, x, y, titleFont);\n }\n _computeTitleHeight() {\n const titleOpts = this.options.title;\n const titleFont = toFont(titleOpts.font);\n const titlePadding = toPadding(titleOpts.padding);\n return titleOpts.display ? titleFont.lineHeight + titlePadding.height : 0;\n }\n _getLegendItemAt(x, y) {\n let i, hitBox, lh;\n if (_isBetween(x, this.left, this.right)\n && _isBetween(y, this.top, this.bottom)) {\n lh = this.legendHitBoxes;\n for (i = 0; i < lh.length; ++i) {\n hitBox = lh[i];\n if (_isBetween(x, hitBox.left, hitBox.left + hitBox.width)\n && _isBetween(y, hitBox.top, hitBox.top + hitBox.height)) {\n return this.legendItems[i];\n }\n }\n }\n return null;\n }\n handleEvent(e) {\n const opts = this.options;\n if (!isListened(e.type, opts)) {\n return;\n }\n const hoveredItem = this._getLegendItemAt(e.x, e.y);\n if (e.type === 'mousemove' || e.type === 'mouseout') {\n const previous = this._hoveredItem;\n const sameItem = itemsEqual(previous, hoveredItem);\n if (previous && !sameItem) {\n callback(opts.onLeave, [e, previous, this], this);\n }\n this._hoveredItem = hoveredItem;\n if (hoveredItem && !sameItem) {\n callback(opts.onHover, [e, hoveredItem, this], this);\n }\n } else if (hoveredItem) {\n callback(opts.onClick, [e, hoveredItem, this], this);\n }\n }\n}\nfunction isListened(type, opts) {\n if ((type === 'mousemove' || type === 'mouseout') && (opts.onHover || opts.onLeave)) {\n return true;\n }\n if (opts.onClick && (type === 'click' || type === 'mouseup')) {\n return true;\n }\n return false;\n}\nvar plugin_legend = {\n id: 'legend',\n _element: Legend,\n start(chart, _args, options) {\n const legend = chart.legend = new Legend({ctx: chart.ctx, options, chart});\n layouts.configure(chart, legend, options);\n layouts.addBox(chart, legend);\n },\n stop(chart) {\n layouts.removeBox(chart, chart.legend);\n delete chart.legend;\n },\n beforeUpdate(chart, _args, options) {\n const legend = chart.legend;\n layouts.configure(chart, legend, options);\n legend.options = options;\n },\n afterUpdate(chart) {\n const legend = chart.legend;\n legend.buildLabels();\n legend.adjustHitBoxes();\n },\n afterEvent(chart, args) {\n if (!args.replay) {\n chart.legend.handleEvent(args.event);\n }\n },\n defaults: {\n display: true,\n position: 'top',\n align: 'center',\n fullSize: true,\n reverse: false,\n weight: 1000,\n onClick(e, legendItem, legend) {\n const index = legendItem.datasetIndex;\n const ci = legend.chart;\n if (ci.isDatasetVisible(index)) {\n ci.hide(index);\n legendItem.hidden = true;\n } else {\n ci.show(index);\n legendItem.hidden = false;\n }\n },\n onHover: null,\n onLeave: null,\n labels: {\n color: (ctx) => ctx.chart.options.color,\n boxWidth: 40,\n padding: 10,\n generateLabels(chart) {\n const datasets = chart.data.datasets;\n const {labels: {usePointStyle, pointStyle, textAlign, color}} = chart.legend.options;\n return chart._getSortedDatasetMetas().map((meta) => {\n const style = meta.controller.getStyle(usePointStyle ? 0 : undefined);\n const borderWidth = toPadding(style.borderWidth);\n return {\n text: datasets[meta.index].label,\n fillStyle: style.backgroundColor,\n fontColor: color,\n hidden: !meta.visible,\n lineCap: style.borderCapStyle,\n lineDash: style.borderDash,\n lineDashOffset: style.borderDashOffset,\n lineJoin: style.borderJoinStyle,\n lineWidth: (borderWidth.width + borderWidth.height) / 4,\n strokeStyle: style.borderColor,\n pointStyle: pointStyle || style.pointStyle,\n rotation: style.rotation,\n textAlign: textAlign || style.textAlign,\n borderRadius: 0,\n datasetIndex: meta.index\n };\n }, this);\n }\n },\n title: {\n color: (ctx) => ctx.chart.options.color,\n display: false,\n position: 'center',\n text: '',\n }\n },\n descriptors: {\n _scriptable: (name) => !name.startsWith('on'),\n labels: {\n _scriptable: (name) => !['generateLabels', 'filter', 'sort'].includes(name),\n }\n },\n};\n\nclass Title extends Element {\n constructor(config) {\n super();\n this.chart = config.chart;\n this.options = config.options;\n this.ctx = config.ctx;\n this._padding = undefined;\n this.top = undefined;\n this.bottom = undefined;\n this.left = undefined;\n this.right = undefined;\n this.width = undefined;\n this.height = undefined;\n this.position = undefined;\n this.weight = undefined;\n this.fullSize = undefined;\n }\n update(maxWidth, maxHeight) {\n const opts = this.options;\n this.left = 0;\n this.top = 0;\n if (!opts.display) {\n this.width = this.height = this.right = this.bottom = 0;\n return;\n }\n this.width = this.right = maxWidth;\n this.height = this.bottom = maxHeight;\n const lineCount = isArray(opts.text) ? opts.text.length : 1;\n this._padding = toPadding(opts.padding);\n const textSize = lineCount * toFont(opts.font).lineHeight + this._padding.height;\n if (this.isHorizontal()) {\n this.height = textSize;\n } else {\n this.width = textSize;\n }\n }\n isHorizontal() {\n const pos = this.options.position;\n return pos === 'top' || pos === 'bottom';\n }\n _drawArgs(offset) {\n const {top, left, bottom, right, options} = this;\n const align = options.align;\n let rotation = 0;\n let maxWidth, titleX, titleY;\n if (this.isHorizontal()) {\n titleX = _alignStartEnd(align, left, right);\n titleY = top + offset;\n maxWidth = right - left;\n } else {\n if (options.position === 'left') {\n titleX = left + offset;\n titleY = _alignStartEnd(align, bottom, top);\n rotation = PI * -0.5;\n } else {\n titleX = right - offset;\n titleY = _alignStartEnd(align, top, bottom);\n rotation = PI * 0.5;\n }\n maxWidth = bottom - top;\n }\n return {titleX, titleY, maxWidth, rotation};\n }\n draw() {\n const ctx = this.ctx;\n const opts = this.options;\n if (!opts.display) {\n return;\n }\n const fontOpts = toFont(opts.font);\n const lineHeight = fontOpts.lineHeight;\n const offset = lineHeight / 2 + this._padding.top;\n const {titleX, titleY, maxWidth, rotation} = this._drawArgs(offset);\n renderText(ctx, opts.text, 0, 0, fontOpts, {\n color: opts.color,\n maxWidth,\n rotation,\n textAlign: _toLeftRightCenter(opts.align),\n textBaseline: 'middle',\n translation: [titleX, titleY],\n });\n }\n}\nfunction createTitle(chart, titleOpts) {\n const title = new Title({\n ctx: chart.ctx,\n options: titleOpts,\n chart\n });\n layouts.configure(chart, title, titleOpts);\n layouts.addBox(chart, title);\n chart.titleBlock = title;\n}\nvar plugin_title = {\n id: 'title',\n _element: Title,\n start(chart, _args, options) {\n createTitle(chart, options);\n },\n stop(chart) {\n const titleBlock = chart.titleBlock;\n layouts.removeBox(chart, titleBlock);\n delete chart.titleBlock;\n },\n beforeUpdate(chart, _args, options) {\n const title = chart.titleBlock;\n layouts.configure(chart, title, options);\n title.options = options;\n },\n defaults: {\n align: 'center',\n display: false,\n font: {\n weight: 'bold',\n },\n fullSize: true,\n padding: 10,\n position: 'top',\n text: '',\n weight: 2000\n },\n defaultRoutes: {\n color: 'color'\n },\n descriptors: {\n _scriptable: true,\n _indexable: false,\n },\n};\n\nconst map = new WeakMap();\nvar plugin_subtitle = {\n id: 'subtitle',\n start(chart, _args, options) {\n const title = new Title({\n ctx: chart.ctx,\n options,\n chart\n });\n layouts.configure(chart, title, options);\n layouts.addBox(chart, title);\n map.set(chart, title);\n },\n stop(chart) {\n layouts.removeBox(chart, map.get(chart));\n map.delete(chart);\n },\n beforeUpdate(chart, _args, options) {\n const title = map.get(chart);\n layouts.configure(chart, title, options);\n title.options = options;\n },\n defaults: {\n align: 'center',\n display: false,\n font: {\n weight: 'normal',\n },\n fullSize: true,\n padding: 0,\n position: 'top',\n text: '',\n weight: 1500\n },\n defaultRoutes: {\n color: 'color'\n },\n descriptors: {\n _scriptable: true,\n _indexable: false,\n },\n};\n\nconst positioners = {\n average(items) {\n if (!items.length) {\n return false;\n }\n let i, len;\n let x = 0;\n let y = 0;\n let count = 0;\n for (i = 0, len = items.length; i < len; ++i) {\n const el = items[i].element;\n if (el && el.hasValue()) {\n const pos = el.tooltipPosition();\n x += pos.x;\n y += pos.y;\n ++count;\n }\n }\n return {\n x: x / count,\n y: y / count\n };\n },\n nearest(items, eventPosition) {\n if (!items.length) {\n return false;\n }\n let x = eventPosition.x;\n let y = eventPosition.y;\n let minDistance = Number.POSITIVE_INFINITY;\n let i, len, nearestElement;\n for (i = 0, len = items.length; i < len; ++i) {\n const el = items[i].element;\n if (el && el.hasValue()) {\n const center = el.getCenterPoint();\n const d = distanceBetweenPoints(eventPosition, center);\n if (d < minDistance) {\n minDistance = d;\n nearestElement = el;\n }\n }\n }\n if (nearestElement) {\n const tp = nearestElement.tooltipPosition();\n x = tp.x;\n y = tp.y;\n }\n return {\n x,\n y\n };\n }\n};\nfunction pushOrConcat(base, toPush) {\n if (toPush) {\n if (isArray(toPush)) {\n Array.prototype.push.apply(base, toPush);\n } else {\n base.push(toPush);\n }\n }\n return base;\n}\nfunction splitNewlines(str) {\n if ((typeof str === 'string' || str instanceof String) && str.indexOf('\\n') > -1) {\n return str.split('\\n');\n }\n return str;\n}\nfunction createTooltipItem(chart, item) {\n const {element, datasetIndex, index} = item;\n const controller = chart.getDatasetMeta(datasetIndex).controller;\n const {label, value} = controller.getLabelAndValue(index);\n return {\n chart,\n label,\n parsed: controller.getParsed(index),\n raw: chart.data.datasets[datasetIndex].data[index],\n formattedValue: value,\n dataset: controller.getDataset(),\n dataIndex: index,\n datasetIndex,\n element\n };\n}\nfunction getTooltipSize(tooltip, options) {\n const ctx = tooltip.chart.ctx;\n const {body, footer, title} = tooltip;\n const {boxWidth, boxHeight} = options;\n const bodyFont = toFont(options.bodyFont);\n const titleFont = toFont(options.titleFont);\n const footerFont = toFont(options.footerFont);\n const titleLineCount = title.length;\n const footerLineCount = footer.length;\n const bodyLineItemCount = body.length;\n const padding = toPadding(options.padding);\n let height = padding.height;\n let width = 0;\n let combinedBodyLength = body.reduce((count, bodyItem) => count + bodyItem.before.length + bodyItem.lines.length + bodyItem.after.length, 0);\n combinedBodyLength += tooltip.beforeBody.length + tooltip.afterBody.length;\n if (titleLineCount) {\n height += titleLineCount * titleFont.lineHeight\n\t\t\t+ (titleLineCount - 1) * options.titleSpacing\n\t\t\t+ options.titleMarginBottom;\n }\n if (combinedBodyLength) {\n const bodyLineHeight = options.displayColors ? Math.max(boxHeight, bodyFont.lineHeight) : bodyFont.lineHeight;\n height += bodyLineItemCount * bodyLineHeight\n\t\t\t+ (combinedBodyLength - bodyLineItemCount) * bodyFont.lineHeight\n\t\t\t+ (combinedBodyLength - 1) * options.bodySpacing;\n }\n if (footerLineCount) {\n height += options.footerMarginTop\n\t\t\t+ footerLineCount * footerFont.lineHeight\n\t\t\t+ (footerLineCount - 1) * options.footerSpacing;\n }\n let widthPadding = 0;\n const maxLineWidth = function(line) {\n width = Math.max(width, ctx.measureText(line).width + widthPadding);\n };\n ctx.save();\n ctx.font = titleFont.string;\n each(tooltip.title, maxLineWidth);\n ctx.font = bodyFont.string;\n each(tooltip.beforeBody.concat(tooltip.afterBody), maxLineWidth);\n widthPadding = options.displayColors ? (boxWidth + 2 + options.boxPadding) : 0;\n each(body, (bodyItem) => {\n each(bodyItem.before, maxLineWidth);\n each(bodyItem.lines, maxLineWidth);\n each(bodyItem.after, maxLineWidth);\n });\n widthPadding = 0;\n ctx.font = footerFont.string;\n each(tooltip.footer, maxLineWidth);\n ctx.restore();\n width += padding.width;\n return {width, height};\n}\nfunction determineYAlign(chart, size) {\n const {y, height} = size;\n if (y < height / 2) {\n return 'top';\n } else if (y > (chart.height - height / 2)) {\n return 'bottom';\n }\n return 'center';\n}\nfunction doesNotFitWithAlign(xAlign, chart, options, size) {\n const {x, width} = size;\n const caret = options.caretSize + options.caretPadding;\n if (xAlign === 'left' && x + width + caret > chart.width) {\n return true;\n }\n if (xAlign === 'right' && x - width - caret < 0) {\n return true;\n }\n}\nfunction determineXAlign(chart, options, size, yAlign) {\n const {x, width} = size;\n const {width: chartWidth, chartArea: {left, right}} = chart;\n let xAlign = 'center';\n if (yAlign === 'center') {\n xAlign = x <= (left + right) / 2 ? 'left' : 'right';\n } else if (x <= width / 2) {\n xAlign = 'left';\n } else if (x >= chartWidth - width / 2) {\n xAlign = 'right';\n }\n if (doesNotFitWithAlign(xAlign, chart, options, size)) {\n xAlign = 'center';\n }\n return xAlign;\n}\nfunction determineAlignment(chart, options, size) {\n const yAlign = size.yAlign || options.yAlign || determineYAlign(chart, size);\n return {\n xAlign: size.xAlign || options.xAlign || determineXAlign(chart, options, size, yAlign),\n yAlign\n };\n}\nfunction alignX(size, xAlign) {\n let {x, width} = size;\n if (xAlign === 'right') {\n x -= width;\n } else if (xAlign === 'center') {\n x -= (width / 2);\n }\n return x;\n}\nfunction alignY(size, yAlign, paddingAndSize) {\n let {y, height} = size;\n if (yAlign === 'top') {\n y += paddingAndSize;\n } else if (yAlign === 'bottom') {\n y -= height + paddingAndSize;\n } else {\n y -= (height / 2);\n }\n return y;\n}\nfunction getBackgroundPoint(options, size, alignment, chart) {\n const {caretSize, caretPadding, cornerRadius} = options;\n const {xAlign, yAlign} = alignment;\n const paddingAndSize = caretSize + caretPadding;\n const {topLeft, topRight, bottomLeft, bottomRight} = toTRBLCorners(cornerRadius);\n let x = alignX(size, xAlign);\n const y = alignY(size, yAlign, paddingAndSize);\n if (yAlign === 'center') {\n if (xAlign === 'left') {\n x += paddingAndSize;\n } else if (xAlign === 'right') {\n x -= paddingAndSize;\n }\n } else if (xAlign === 'left') {\n x -= Math.max(topLeft, bottomLeft) + caretSize;\n } else if (xAlign === 'right') {\n x += Math.max(topRight, bottomRight) + caretSize;\n }\n return {\n x: _limitValue(x, 0, chart.width - size.width),\n y: _limitValue(y, 0, chart.height - size.height)\n };\n}\nfunction getAlignedX(tooltip, align, options) {\n const padding = toPadding(options.padding);\n return align === 'center'\n ? tooltip.x + tooltip.width / 2\n : align === 'right'\n ? tooltip.x + tooltip.width - padding.right\n : tooltip.x + padding.left;\n}\nfunction getBeforeAfterBodyLines(callback) {\n return pushOrConcat([], splitNewlines(callback));\n}\nfunction createTooltipContext(parent, tooltip, tooltipItems) {\n return createContext(parent, {\n tooltip,\n tooltipItems,\n type: 'tooltip'\n });\n}\nfunction overrideCallbacks(callbacks, context) {\n const override = context && context.dataset && context.dataset.tooltip && context.dataset.tooltip.callbacks;\n return override ? callbacks.override(override) : callbacks;\n}\nclass Tooltip extends Element {\n constructor(config) {\n super();\n this.opacity = 0;\n this._active = [];\n this._eventPosition = undefined;\n this._size = undefined;\n this._cachedAnimations = undefined;\n this._tooltipItems = [];\n this.$animations = undefined;\n this.$context = undefined;\n this.chart = config.chart || config._chart;\n this._chart = this.chart;\n this.options = config.options;\n this.dataPoints = undefined;\n this.title = undefined;\n this.beforeBody = undefined;\n this.body = undefined;\n this.afterBody = undefined;\n this.footer = undefined;\n this.xAlign = undefined;\n this.yAlign = undefined;\n this.x = undefined;\n this.y = undefined;\n this.height = undefined;\n this.width = undefined;\n this.caretX = undefined;\n this.caretY = undefined;\n this.labelColors = undefined;\n this.labelPointStyles = undefined;\n this.labelTextColors = undefined;\n }\n initialize(options) {\n this.options = options;\n this._cachedAnimations = undefined;\n this.$context = undefined;\n }\n _resolveAnimations() {\n const cached = this._cachedAnimations;\n if (cached) {\n return cached;\n }\n const chart = this.chart;\n const options = this.options.setContext(this.getContext());\n const opts = options.enabled && chart.options.animation && options.animations;\n const animations = new Animations(this.chart, opts);\n if (opts._cacheable) {\n this._cachedAnimations = Object.freeze(animations);\n }\n return animations;\n }\n getContext() {\n return this.$context ||\n\t\t\t(this.$context = createTooltipContext(this.chart.getContext(), this, this._tooltipItems));\n }\n getTitle(context, options) {\n const {callbacks} = options;\n const beforeTitle = callbacks.beforeTitle.apply(this, [context]);\n const title = callbacks.title.apply(this, [context]);\n const afterTitle = callbacks.afterTitle.apply(this, [context]);\n let lines = [];\n lines = pushOrConcat(lines, splitNewlines(beforeTitle));\n lines = pushOrConcat(lines, splitNewlines(title));\n lines = pushOrConcat(lines, splitNewlines(afterTitle));\n return lines;\n }\n getBeforeBody(tooltipItems, options) {\n return getBeforeAfterBodyLines(options.callbacks.beforeBody.apply(this, [tooltipItems]));\n }\n getBody(tooltipItems, options) {\n const {callbacks} = options;\n const bodyItems = [];\n each(tooltipItems, (context) => {\n const bodyItem = {\n before: [],\n lines: [],\n after: []\n };\n const scoped = overrideCallbacks(callbacks, context);\n pushOrConcat(bodyItem.before, splitNewlines(scoped.beforeLabel.call(this, context)));\n pushOrConcat(bodyItem.lines, scoped.label.call(this, context));\n pushOrConcat(bodyItem.after, splitNewlines(scoped.afterLabel.call(this, context)));\n bodyItems.push(bodyItem);\n });\n return bodyItems;\n }\n getAfterBody(tooltipItems, options) {\n return getBeforeAfterBodyLines(options.callbacks.afterBody.apply(this, [tooltipItems]));\n }\n getFooter(tooltipItems, options) {\n const {callbacks} = options;\n const beforeFooter = callbacks.beforeFooter.apply(this, [tooltipItems]);\n const footer = callbacks.footer.apply(this, [tooltipItems]);\n const afterFooter = callbacks.afterFooter.apply(this, [tooltipItems]);\n let lines = [];\n lines = pushOrConcat(lines, splitNewlines(beforeFooter));\n lines = pushOrConcat(lines, splitNewlines(footer));\n lines = pushOrConcat(lines, splitNewlines(afterFooter));\n return lines;\n }\n _createItems(options) {\n const active = this._active;\n const data = this.chart.data;\n const labelColors = [];\n const labelPointStyles = [];\n const labelTextColors = [];\n let tooltipItems = [];\n let i, len;\n for (i = 0, len = active.length; i < len; ++i) {\n tooltipItems.push(createTooltipItem(this.chart, active[i]));\n }\n if (options.filter) {\n tooltipItems = tooltipItems.filter((element, index, array) => options.filter(element, index, array, data));\n }\n if (options.itemSort) {\n tooltipItems = tooltipItems.sort((a, b) => options.itemSort(a, b, data));\n }\n each(tooltipItems, (context) => {\n const scoped = overrideCallbacks(options.callbacks, context);\n labelColors.push(scoped.labelColor.call(this, context));\n labelPointStyles.push(scoped.labelPointStyle.call(this, context));\n labelTextColors.push(scoped.labelTextColor.call(this, context));\n });\n this.labelColors = labelColors;\n this.labelPointStyles = labelPointStyles;\n this.labelTextColors = labelTextColors;\n this.dataPoints = tooltipItems;\n return tooltipItems;\n }\n update(changed, replay) {\n const options = this.options.setContext(this.getContext());\n const active = this._active;\n let properties;\n let tooltipItems = [];\n if (!active.length) {\n if (this.opacity !== 0) {\n properties = {\n opacity: 0\n };\n }\n } else {\n const position = positioners[options.position].call(this, active, this._eventPosition);\n tooltipItems = this._createItems(options);\n this.title = this.getTitle(tooltipItems, options);\n this.beforeBody = this.getBeforeBody(tooltipItems, options);\n this.body = this.getBody(tooltipItems, options);\n this.afterBody = this.getAfterBody(tooltipItems, options);\n this.footer = this.getFooter(tooltipItems, options);\n const size = this._size = getTooltipSize(this, options);\n const positionAndSize = Object.assign({}, position, size);\n const alignment = determineAlignment(this.chart, options, positionAndSize);\n const backgroundPoint = getBackgroundPoint(options, positionAndSize, alignment, this.chart);\n this.xAlign = alignment.xAlign;\n this.yAlign = alignment.yAlign;\n properties = {\n opacity: 1,\n x: backgroundPoint.x,\n y: backgroundPoint.y,\n width: size.width,\n height: size.height,\n caretX: position.x,\n caretY: position.y\n };\n }\n this._tooltipItems = tooltipItems;\n this.$context = undefined;\n if (properties) {\n this._resolveAnimations().update(this, properties);\n }\n if (changed && options.external) {\n options.external.call(this, {chart: this.chart, tooltip: this, replay});\n }\n }\n drawCaret(tooltipPoint, ctx, size, options) {\n const caretPosition = this.getCaretPosition(tooltipPoint, size, options);\n ctx.lineTo(caretPosition.x1, caretPosition.y1);\n ctx.lineTo(caretPosition.x2, caretPosition.y2);\n ctx.lineTo(caretPosition.x3, caretPosition.y3);\n }\n getCaretPosition(tooltipPoint, size, options) {\n const {xAlign, yAlign} = this;\n const {caretSize, cornerRadius} = options;\n const {topLeft, topRight, bottomLeft, bottomRight} = toTRBLCorners(cornerRadius);\n const {x: ptX, y: ptY} = tooltipPoint;\n const {width, height} = size;\n let x1, x2, x3, y1, y2, y3;\n if (yAlign === 'center') {\n y2 = ptY + (height / 2);\n if (xAlign === 'left') {\n x1 = ptX;\n x2 = x1 - caretSize;\n y1 = y2 + caretSize;\n y3 = y2 - caretSize;\n } else {\n x1 = ptX + width;\n x2 = x1 + caretSize;\n y1 = y2 - caretSize;\n y3 = y2 + caretSize;\n }\n x3 = x1;\n } else {\n if (xAlign === 'left') {\n x2 = ptX + Math.max(topLeft, bottomLeft) + (caretSize);\n } else if (xAlign === 'right') {\n x2 = ptX + width - Math.max(topRight, bottomRight) - caretSize;\n } else {\n x2 = this.caretX;\n }\n if (yAlign === 'top') {\n y1 = ptY;\n y2 = y1 - caretSize;\n x1 = x2 - caretSize;\n x3 = x2 + caretSize;\n } else {\n y1 = ptY + height;\n y2 = y1 + caretSize;\n x1 = x2 + caretSize;\n x3 = x2 - caretSize;\n }\n y3 = y1;\n }\n return {x1, x2, x3, y1, y2, y3};\n }\n drawTitle(pt, ctx, options) {\n const title = this.title;\n const length = title.length;\n let titleFont, titleSpacing, i;\n if (length) {\n const rtlHelper = getRtlAdapter(options.rtl, this.x, this.width);\n pt.x = getAlignedX(this, options.titleAlign, options);\n ctx.textAlign = rtlHelper.textAlign(options.titleAlign);\n ctx.textBaseline = 'middle';\n titleFont = toFont(options.titleFont);\n titleSpacing = options.titleSpacing;\n ctx.fillStyle = options.titleColor;\n ctx.font = titleFont.string;\n for (i = 0; i < length; ++i) {\n ctx.fillText(title[i], rtlHelper.x(pt.x), pt.y + titleFont.lineHeight / 2);\n pt.y += titleFont.lineHeight + titleSpacing;\n if (i + 1 === length) {\n pt.y += options.titleMarginBottom - titleSpacing;\n }\n }\n }\n }\n _drawColorBox(ctx, pt, i, rtlHelper, options) {\n const labelColors = this.labelColors[i];\n const labelPointStyle = this.labelPointStyles[i];\n const {boxHeight, boxWidth, boxPadding} = options;\n const bodyFont = toFont(options.bodyFont);\n const colorX = getAlignedX(this, 'left', options);\n const rtlColorX = rtlHelper.x(colorX);\n const yOffSet = boxHeight < bodyFont.lineHeight ? (bodyFont.lineHeight - boxHeight) / 2 : 0;\n const colorY = pt.y + yOffSet;\n if (options.usePointStyle) {\n const drawOptions = {\n radius: Math.min(boxWidth, boxHeight) / 2,\n pointStyle: labelPointStyle.pointStyle,\n rotation: labelPointStyle.rotation,\n borderWidth: 1\n };\n const centerX = rtlHelper.leftForLtr(rtlColorX, boxWidth) + boxWidth / 2;\n const centerY = colorY + boxHeight / 2;\n ctx.strokeStyle = options.multiKeyBackground;\n ctx.fillStyle = options.multiKeyBackground;\n drawPoint(ctx, drawOptions, centerX, centerY);\n ctx.strokeStyle = labelColors.borderColor;\n ctx.fillStyle = labelColors.backgroundColor;\n drawPoint(ctx, drawOptions, centerX, centerY);\n } else {\n ctx.lineWidth = isObject(labelColors.borderWidth) ? Math.max(...Object.values(labelColors.borderWidth)) : (labelColors.borderWidth || 1);\n ctx.strokeStyle = labelColors.borderColor;\n ctx.setLineDash(labelColors.borderDash || []);\n ctx.lineDashOffset = labelColors.borderDashOffset || 0;\n const outerX = rtlHelper.leftForLtr(rtlColorX, boxWidth - boxPadding);\n const innerX = rtlHelper.leftForLtr(rtlHelper.xPlus(rtlColorX, 1), boxWidth - boxPadding - 2);\n const borderRadius = toTRBLCorners(labelColors.borderRadius);\n if (Object.values(borderRadius).some(v => v !== 0)) {\n ctx.beginPath();\n ctx.fillStyle = options.multiKeyBackground;\n addRoundedRectPath(ctx, {\n x: outerX,\n y: colorY,\n w: boxWidth,\n h: boxHeight,\n radius: borderRadius,\n });\n ctx.fill();\n ctx.stroke();\n ctx.fillStyle = labelColors.backgroundColor;\n ctx.beginPath();\n addRoundedRectPath(ctx, {\n x: innerX,\n y: colorY + 1,\n w: boxWidth - 2,\n h: boxHeight - 2,\n radius: borderRadius,\n });\n ctx.fill();\n } else {\n ctx.fillStyle = options.multiKeyBackground;\n ctx.fillRect(outerX, colorY, boxWidth, boxHeight);\n ctx.strokeRect(outerX, colorY, boxWidth, boxHeight);\n ctx.fillStyle = labelColors.backgroundColor;\n ctx.fillRect(innerX, colorY + 1, boxWidth - 2, boxHeight - 2);\n }\n }\n ctx.fillStyle = this.labelTextColors[i];\n }\n drawBody(pt, ctx, options) {\n const {body} = this;\n const {bodySpacing, bodyAlign, displayColors, boxHeight, boxWidth, boxPadding} = options;\n const bodyFont = toFont(options.bodyFont);\n let bodyLineHeight = bodyFont.lineHeight;\n let xLinePadding = 0;\n const rtlHelper = getRtlAdapter(options.rtl, this.x, this.width);\n const fillLineOfText = function(line) {\n ctx.fillText(line, rtlHelper.x(pt.x + xLinePadding), pt.y + bodyLineHeight / 2);\n pt.y += bodyLineHeight + bodySpacing;\n };\n const bodyAlignForCalculation = rtlHelper.textAlign(bodyAlign);\n let bodyItem, textColor, lines, i, j, ilen, jlen;\n ctx.textAlign = bodyAlign;\n ctx.textBaseline = 'middle';\n ctx.font = bodyFont.string;\n pt.x = getAlignedX(this, bodyAlignForCalculation, options);\n ctx.fillStyle = options.bodyColor;\n each(this.beforeBody, fillLineOfText);\n xLinePadding = displayColors && bodyAlignForCalculation !== 'right'\n ? bodyAlign === 'center' ? (boxWidth / 2 + boxPadding) : (boxWidth + 2 + boxPadding)\n : 0;\n for (i = 0, ilen = body.length; i < ilen; ++i) {\n bodyItem = body[i];\n textColor = this.labelTextColors[i];\n ctx.fillStyle = textColor;\n each(bodyItem.before, fillLineOfText);\n lines = bodyItem.lines;\n if (displayColors && lines.length) {\n this._drawColorBox(ctx, pt, i, rtlHelper, options);\n bodyLineHeight = Math.max(bodyFont.lineHeight, boxHeight);\n }\n for (j = 0, jlen = lines.length; j < jlen; ++j) {\n fillLineOfText(lines[j]);\n bodyLineHeight = bodyFont.lineHeight;\n }\n each(bodyItem.after, fillLineOfText);\n }\n xLinePadding = 0;\n bodyLineHeight = bodyFont.lineHeight;\n each(this.afterBody, fillLineOfText);\n pt.y -= bodySpacing;\n }\n drawFooter(pt, ctx, options) {\n const footer = this.footer;\n const length = footer.length;\n let footerFont, i;\n if (length) {\n const rtlHelper = getRtlAdapter(options.rtl, this.x, this.width);\n pt.x = getAlignedX(this, options.footerAlign, options);\n pt.y += options.footerMarginTop;\n ctx.textAlign = rtlHelper.textAlign(options.footerAlign);\n ctx.textBaseline = 'middle';\n footerFont = toFont(options.footerFont);\n ctx.fillStyle = options.footerColor;\n ctx.font = footerFont.string;\n for (i = 0; i < length; ++i) {\n ctx.fillText(footer[i], rtlHelper.x(pt.x), pt.y + footerFont.lineHeight / 2);\n pt.y += footerFont.lineHeight + options.footerSpacing;\n }\n }\n }\n drawBackground(pt, ctx, tooltipSize, options) {\n const {xAlign, yAlign} = this;\n const {x, y} = pt;\n const {width, height} = tooltipSize;\n const {topLeft, topRight, bottomLeft, bottomRight} = toTRBLCorners(options.cornerRadius);\n ctx.fillStyle = options.backgroundColor;\n ctx.strokeStyle = options.borderColor;\n ctx.lineWidth = options.borderWidth;\n ctx.beginPath();\n ctx.moveTo(x + topLeft, y);\n if (yAlign === 'top') {\n this.drawCaret(pt, ctx, tooltipSize, options);\n }\n ctx.lineTo(x + width - topRight, y);\n ctx.quadraticCurveTo(x + width, y, x + width, y + topRight);\n if (yAlign === 'center' && xAlign === 'right') {\n this.drawCaret(pt, ctx, tooltipSize, options);\n }\n ctx.lineTo(x + width, y + height - bottomRight);\n ctx.quadraticCurveTo(x + width, y + height, x + width - bottomRight, y + height);\n if (yAlign === 'bottom') {\n this.drawCaret(pt, ctx, tooltipSize, options);\n }\n ctx.lineTo(x + bottomLeft, y + height);\n ctx.quadraticCurveTo(x, y + height, x, y + height - bottomLeft);\n if (yAlign === 'center' && xAlign === 'left') {\n this.drawCaret(pt, ctx, tooltipSize, options);\n }\n ctx.lineTo(x, y + topLeft);\n ctx.quadraticCurveTo(x, y, x + topLeft, y);\n ctx.closePath();\n ctx.fill();\n if (options.borderWidth > 0) {\n ctx.stroke();\n }\n }\n _updateAnimationTarget(options) {\n const chart = this.chart;\n const anims = this.$animations;\n const animX = anims && anims.x;\n const animY = anims && anims.y;\n if (animX || animY) {\n const position = positioners[options.position].call(this, this._active, this._eventPosition);\n if (!position) {\n return;\n }\n const size = this._size = getTooltipSize(this, options);\n const positionAndSize = Object.assign({}, position, this._size);\n const alignment = determineAlignment(chart, options, positionAndSize);\n const point = getBackgroundPoint(options, positionAndSize, alignment, chart);\n if (animX._to !== point.x || animY._to !== point.y) {\n this.xAlign = alignment.xAlign;\n this.yAlign = alignment.yAlign;\n this.width = size.width;\n this.height = size.height;\n this.caretX = position.x;\n this.caretY = position.y;\n this._resolveAnimations().update(this, point);\n }\n }\n }\n _willRender() {\n return !!this.opacity;\n }\n draw(ctx) {\n const options = this.options.setContext(this.getContext());\n let opacity = this.opacity;\n if (!opacity) {\n return;\n }\n this._updateAnimationTarget(options);\n const tooltipSize = {\n width: this.width,\n height: this.height\n };\n const pt = {\n x: this.x,\n y: this.y\n };\n opacity = Math.abs(opacity) < 1e-3 ? 0 : opacity;\n const padding = toPadding(options.padding);\n const hasTooltipContent = this.title.length || this.beforeBody.length || this.body.length || this.afterBody.length || this.footer.length;\n if (options.enabled && hasTooltipContent) {\n ctx.save();\n ctx.globalAlpha = opacity;\n this.drawBackground(pt, ctx, tooltipSize, options);\n overrideTextDirection(ctx, options.textDirection);\n pt.y += padding.top;\n this.drawTitle(pt, ctx, options);\n this.drawBody(pt, ctx, options);\n this.drawFooter(pt, ctx, options);\n restoreTextDirection(ctx, options.textDirection);\n ctx.restore();\n }\n }\n getActiveElements() {\n return this._active || [];\n }\n setActiveElements(activeElements, eventPosition) {\n const lastActive = this._active;\n const active = activeElements.map(({datasetIndex, index}) => {\n const meta = this.chart.getDatasetMeta(datasetIndex);\n if (!meta) {\n throw new Error('Cannot find a dataset at index ' + datasetIndex);\n }\n return {\n datasetIndex,\n element: meta.data[index],\n index,\n };\n });\n const changed = !_elementsEqual(lastActive, active);\n const positionChanged = this._positionChanged(active, eventPosition);\n if (changed || positionChanged) {\n this._active = active;\n this._eventPosition = eventPosition;\n this._ignoreReplayEvents = true;\n this.update(true);\n }\n }\n handleEvent(e, replay, inChartArea = true) {\n if (replay && this._ignoreReplayEvents) {\n return false;\n }\n this._ignoreReplayEvents = false;\n const options = this.options;\n const lastActive = this._active || [];\n const active = this._getActiveElements(e, lastActive, replay, inChartArea);\n const positionChanged = this._positionChanged(active, e);\n const changed = replay || !_elementsEqual(active, lastActive) || positionChanged;\n if (changed) {\n this._active = active;\n if (options.enabled || options.external) {\n this._eventPosition = {\n x: e.x,\n y: e.y\n };\n this.update(true, replay);\n }\n }\n return changed;\n }\n _getActiveElements(e, lastActive, replay, inChartArea) {\n const options = this.options;\n if (e.type === 'mouseout') {\n return [];\n }\n if (!inChartArea) {\n return lastActive;\n }\n const active = this.chart.getElementsAtEventForMode(e, options.mode, options, replay);\n if (options.reverse) {\n active.reverse();\n }\n return active;\n }\n _positionChanged(active, e) {\n const {caretX, caretY, options} = this;\n const position = positioners[options.position].call(this, active, e);\n return position !== false && (caretX !== position.x || caretY !== position.y);\n }\n}\nTooltip.positioners = positioners;\nvar plugin_tooltip = {\n id: 'tooltip',\n _element: Tooltip,\n positioners,\n afterInit(chart, _args, options) {\n if (options) {\n chart.tooltip = new Tooltip({chart, options});\n }\n },\n beforeUpdate(chart, _args, options) {\n if (chart.tooltip) {\n chart.tooltip.initialize(options);\n }\n },\n reset(chart, _args, options) {\n if (chart.tooltip) {\n chart.tooltip.initialize(options);\n }\n },\n afterDraw(chart) {\n const tooltip = chart.tooltip;\n if (tooltip && tooltip._willRender()) {\n const args = {\n tooltip\n };\n if (chart.notifyPlugins('beforeTooltipDraw', args) === false) {\n return;\n }\n tooltip.draw(chart.ctx);\n chart.notifyPlugins('afterTooltipDraw', args);\n }\n },\n afterEvent(chart, args) {\n if (chart.tooltip) {\n const useFinalPosition = args.replay;\n if (chart.tooltip.handleEvent(args.event, useFinalPosition, args.inChartArea)) {\n args.changed = true;\n }\n }\n },\n defaults: {\n enabled: true,\n external: null,\n position: 'average',\n backgroundColor: 'rgba(0,0,0,0.8)',\n titleColor: '#fff',\n titleFont: {\n weight: 'bold',\n },\n titleSpacing: 2,\n titleMarginBottom: 6,\n titleAlign: 'left',\n bodyColor: '#fff',\n bodySpacing: 2,\n bodyFont: {\n },\n bodyAlign: 'left',\n footerColor: '#fff',\n footerSpacing: 2,\n footerMarginTop: 6,\n footerFont: {\n weight: 'bold',\n },\n footerAlign: 'left',\n padding: 6,\n caretPadding: 2,\n caretSize: 5,\n cornerRadius: 6,\n boxHeight: (ctx, opts) => opts.bodyFont.size,\n boxWidth: (ctx, opts) => opts.bodyFont.size,\n multiKeyBackground: '#fff',\n displayColors: true,\n boxPadding: 0,\n borderColor: 'rgba(0,0,0,0)',\n borderWidth: 0,\n animation: {\n duration: 400,\n easing: 'easeOutQuart',\n },\n animations: {\n numbers: {\n type: 'number',\n properties: ['x', 'y', 'width', 'height', 'caretX', 'caretY'],\n },\n opacity: {\n easing: 'linear',\n duration: 200\n }\n },\n callbacks: {\n beforeTitle: noop,\n title(tooltipItems) {\n if (tooltipItems.length > 0) {\n const item = tooltipItems[0];\n const labels = item.chart.data.labels;\n const labelCount = labels ? labels.length : 0;\n if (this && this.options && this.options.mode === 'dataset') {\n return item.dataset.label || '';\n } else if (item.label) {\n return item.label;\n } else if (labelCount > 0 && item.dataIndex < labelCount) {\n return labels[item.dataIndex];\n }\n }\n return '';\n },\n afterTitle: noop,\n beforeBody: noop,\n beforeLabel: noop,\n label(tooltipItem) {\n if (this && this.options && this.options.mode === 'dataset') {\n return tooltipItem.label + ': ' + tooltipItem.formattedValue || tooltipItem.formattedValue;\n }\n let label = tooltipItem.dataset.label || '';\n if (label) {\n label += ': ';\n }\n const value = tooltipItem.formattedValue;\n if (!isNullOrUndef(value)) {\n label += value;\n }\n return label;\n },\n labelColor(tooltipItem) {\n const meta = tooltipItem.chart.getDatasetMeta(tooltipItem.datasetIndex);\n const options = meta.controller.getStyle(tooltipItem.dataIndex);\n return {\n borderColor: options.borderColor,\n backgroundColor: options.backgroundColor,\n borderWidth: options.borderWidth,\n borderDash: options.borderDash,\n borderDashOffset: options.borderDashOffset,\n borderRadius: 0,\n };\n },\n labelTextColor() {\n return this.options.bodyColor;\n },\n labelPointStyle(tooltipItem) {\n const meta = tooltipItem.chart.getDatasetMeta(tooltipItem.datasetIndex);\n const options = meta.controller.getStyle(tooltipItem.dataIndex);\n return {\n pointStyle: options.pointStyle,\n rotation: options.rotation,\n };\n },\n afterLabel: noop,\n afterBody: noop,\n beforeFooter: noop,\n footer: noop,\n afterFooter: noop\n }\n },\n defaultRoutes: {\n bodyFont: 'font',\n footerFont: 'font',\n titleFont: 'font'\n },\n descriptors: {\n _scriptable: (name) => name !== 'filter' && name !== 'itemSort' && name !== 'external',\n _indexable: false,\n callbacks: {\n _scriptable: false,\n _indexable: false,\n },\n animation: {\n _fallback: false\n },\n animations: {\n _fallback: 'animation'\n }\n },\n additionalOptionScopes: ['interaction']\n};\n\nvar plugins = /*#__PURE__*/Object.freeze({\n__proto__: null,\nDecimation: plugin_decimation,\nFiller: index,\nLegend: plugin_legend,\nSubTitle: plugin_subtitle,\nTitle: plugin_title,\nTooltip: plugin_tooltip\n});\n\nconst addIfString = (labels, raw, index, addedLabels) => {\n if (typeof raw === 'string') {\n index = labels.push(raw) - 1;\n addedLabels.unshift({index, label: raw});\n } else if (isNaN(raw)) {\n index = null;\n }\n return index;\n};\nfunction findOrAddLabel(labels, raw, index, addedLabels) {\n const first = labels.indexOf(raw);\n if (first === -1) {\n return addIfString(labels, raw, index, addedLabels);\n }\n const last = labels.lastIndexOf(raw);\n return first !== last ? index : first;\n}\nconst validIndex = (index, max) => index === null ? null : _limitValue(Math.round(index), 0, max);\nclass CategoryScale extends Scale {\n constructor(cfg) {\n super(cfg);\n this._startValue = undefined;\n this._valueRange = 0;\n this._addedLabels = [];\n }\n init(scaleOptions) {\n const added = this._addedLabels;\n if (added.length) {\n const labels = this.getLabels();\n for (const {index, label} of added) {\n if (labels[index] === label) {\n labels.splice(index, 1);\n }\n }\n this._addedLabels = [];\n }\n super.init(scaleOptions);\n }\n parse(raw, index) {\n if (isNullOrUndef(raw)) {\n return null;\n }\n const labels = this.getLabels();\n index = isFinite(index) && labels[index] === raw ? index\n : findOrAddLabel(labels, raw, valueOrDefault(index, raw), this._addedLabels);\n return validIndex(index, labels.length - 1);\n }\n determineDataLimits() {\n const {minDefined, maxDefined} = this.getUserBounds();\n let {min, max} = this.getMinMax(true);\n if (this.options.bounds === 'ticks') {\n if (!minDefined) {\n min = 0;\n }\n if (!maxDefined) {\n max = this.getLabels().length - 1;\n }\n }\n this.min = min;\n this.max = max;\n }\n buildTicks() {\n const min = this.min;\n const max = this.max;\n const offset = this.options.offset;\n const ticks = [];\n let labels = this.getLabels();\n labels = (min === 0 && max === labels.length - 1) ? labels : labels.slice(min, max + 1);\n this._valueRange = Math.max(labels.length - (offset ? 0 : 1), 1);\n this._startValue = this.min - (offset ? 0.5 : 0);\n for (let value = min; value <= max; value++) {\n ticks.push({value});\n }\n return ticks;\n }\n getLabelForValue(value) {\n const labels = this.getLabels();\n if (value >= 0 && value < labels.length) {\n return labels[value];\n }\n return value;\n }\n configure() {\n super.configure();\n if (!this.isHorizontal()) {\n this._reversePixels = !this._reversePixels;\n }\n }\n getPixelForValue(value) {\n if (typeof value !== 'number') {\n value = this.parse(value);\n }\n return value === null ? NaN : this.getPixelForDecimal((value - this._startValue) / this._valueRange);\n }\n getPixelForTick(index) {\n const ticks = this.ticks;\n if (index < 0 || index > ticks.length - 1) {\n return null;\n }\n return this.getPixelForValue(ticks[index].value);\n }\n getValueForPixel(pixel) {\n return Math.round(this._startValue + this.getDecimalForPixel(pixel) * this._valueRange);\n }\n getBasePixel() {\n return this.bottom;\n }\n}\nCategoryScale.id = 'category';\nCategoryScale.defaults = {\n ticks: {\n callback: CategoryScale.prototype.getLabelForValue\n }\n};\n\nfunction generateTicks$1(generationOptions, dataRange) {\n const ticks = [];\n const MIN_SPACING = 1e-14;\n const {bounds, step, min, max, precision, count, maxTicks, maxDigits, includeBounds} = generationOptions;\n const unit = step || 1;\n const maxSpaces = maxTicks - 1;\n const {min: rmin, max: rmax} = dataRange;\n const minDefined = !isNullOrUndef(min);\n const maxDefined = !isNullOrUndef(max);\n const countDefined = !isNullOrUndef(count);\n const minSpacing = (rmax - rmin) / (maxDigits + 1);\n let spacing = niceNum((rmax - rmin) / maxSpaces / unit) * unit;\n let factor, niceMin, niceMax, numSpaces;\n if (spacing < MIN_SPACING && !minDefined && !maxDefined) {\n return [{value: rmin}, {value: rmax}];\n }\n numSpaces = Math.ceil(rmax / spacing) - Math.floor(rmin / spacing);\n if (numSpaces > maxSpaces) {\n spacing = niceNum(numSpaces * spacing / maxSpaces / unit) * unit;\n }\n if (!isNullOrUndef(precision)) {\n factor = Math.pow(10, precision);\n spacing = Math.ceil(spacing * factor) / factor;\n }\n if (bounds === 'ticks') {\n niceMin = Math.floor(rmin / spacing) * spacing;\n niceMax = Math.ceil(rmax / spacing) * spacing;\n } else {\n niceMin = rmin;\n niceMax = rmax;\n }\n if (minDefined && maxDefined && step && almostWhole((max - min) / step, spacing / 1000)) {\n numSpaces = Math.round(Math.min((max - min) / spacing, maxTicks));\n spacing = (max - min) / numSpaces;\n niceMin = min;\n niceMax = max;\n } else if (countDefined) {\n niceMin = minDefined ? min : niceMin;\n niceMax = maxDefined ? max : niceMax;\n numSpaces = count - 1;\n spacing = (niceMax - niceMin) / numSpaces;\n } else {\n numSpaces = (niceMax - niceMin) / spacing;\n if (almostEquals(numSpaces, Math.round(numSpaces), spacing / 1000)) {\n numSpaces = Math.round(numSpaces);\n } else {\n numSpaces = Math.ceil(numSpaces);\n }\n }\n const decimalPlaces = Math.max(\n _decimalPlaces(spacing),\n _decimalPlaces(niceMin)\n );\n factor = Math.pow(10, isNullOrUndef(precision) ? decimalPlaces : precision);\n niceMin = Math.round(niceMin * factor) / factor;\n niceMax = Math.round(niceMax * factor) / factor;\n let j = 0;\n if (minDefined) {\n if (includeBounds && niceMin !== min) {\n ticks.push({value: min});\n if (niceMin < min) {\n j++;\n }\n if (almostEquals(Math.round((niceMin + j * spacing) * factor) / factor, min, relativeLabelSize(min, minSpacing, generationOptions))) {\n j++;\n }\n } else if (niceMin < min) {\n j++;\n }\n }\n for (; j < numSpaces; ++j) {\n ticks.push({value: Math.round((niceMin + j * spacing) * factor) / factor});\n }\n if (maxDefined && includeBounds && niceMax !== max) {\n if (ticks.length && almostEquals(ticks[ticks.length - 1].value, max, relativeLabelSize(max, minSpacing, generationOptions))) {\n ticks[ticks.length - 1].value = max;\n } else {\n ticks.push({value: max});\n }\n } else if (!maxDefined || niceMax === max) {\n ticks.push({value: niceMax});\n }\n return ticks;\n}\nfunction relativeLabelSize(value, minSpacing, {horizontal, minRotation}) {\n const rad = toRadians(minRotation);\n const ratio = (horizontal ? Math.sin(rad) : Math.cos(rad)) || 0.001;\n const length = 0.75 * minSpacing * ('' + value).length;\n return Math.min(minSpacing / ratio, length);\n}\nclass LinearScaleBase extends Scale {\n constructor(cfg) {\n super(cfg);\n this.start = undefined;\n this.end = undefined;\n this._startValue = undefined;\n this._endValue = undefined;\n this._valueRange = 0;\n }\n parse(raw, index) {\n if (isNullOrUndef(raw)) {\n return null;\n }\n if ((typeof raw === 'number' || raw instanceof Number) && !isFinite(+raw)) {\n return null;\n }\n return +raw;\n }\n handleTickRangeOptions() {\n const {beginAtZero} = this.options;\n const {minDefined, maxDefined} = this.getUserBounds();\n let {min, max} = this;\n const setMin = v => (min = minDefined ? min : v);\n const setMax = v => (max = maxDefined ? max : v);\n if (beginAtZero) {\n const minSign = sign(min);\n const maxSign = sign(max);\n if (minSign < 0 && maxSign < 0) {\n setMax(0);\n } else if (minSign > 0 && maxSign > 0) {\n setMin(0);\n }\n }\n if (min === max) {\n let offset = 1;\n if (max >= Number.MAX_SAFE_INTEGER || min <= Number.MIN_SAFE_INTEGER) {\n offset = Math.abs(max * 0.05);\n }\n setMax(max + offset);\n if (!beginAtZero) {\n setMin(min - offset);\n }\n }\n this.min = min;\n this.max = max;\n }\n getTickLimit() {\n const tickOpts = this.options.ticks;\n let {maxTicksLimit, stepSize} = tickOpts;\n let maxTicks;\n if (stepSize) {\n maxTicks = Math.ceil(this.max / stepSize) - Math.floor(this.min / stepSize) + 1;\n if (maxTicks > 1000) {\n console.warn(`scales.${this.id}.ticks.stepSize: ${stepSize} would result generating up to ${maxTicks} ticks. Limiting to 1000.`);\n maxTicks = 1000;\n }\n } else {\n maxTicks = this.computeTickLimit();\n maxTicksLimit = maxTicksLimit || 11;\n }\n if (maxTicksLimit) {\n maxTicks = Math.min(maxTicksLimit, maxTicks);\n }\n return maxTicks;\n }\n computeTickLimit() {\n return Number.POSITIVE_INFINITY;\n }\n buildTicks() {\n const opts = this.options;\n const tickOpts = opts.ticks;\n let maxTicks = this.getTickLimit();\n maxTicks = Math.max(2, maxTicks);\n const numericGeneratorOptions = {\n maxTicks,\n bounds: opts.bounds,\n min: opts.min,\n max: opts.max,\n precision: tickOpts.precision,\n step: tickOpts.stepSize,\n count: tickOpts.count,\n maxDigits: this._maxDigits(),\n horizontal: this.isHorizontal(),\n minRotation: tickOpts.minRotation || 0,\n includeBounds: tickOpts.includeBounds !== false\n };\n const dataRange = this._range || this;\n const ticks = generateTicks$1(numericGeneratorOptions, dataRange);\n if (opts.bounds === 'ticks') {\n _setMinAndMaxByKey(ticks, this, 'value');\n }\n if (opts.reverse) {\n ticks.reverse();\n this.start = this.max;\n this.end = this.min;\n } else {\n this.start = this.min;\n this.end = this.max;\n }\n return ticks;\n }\n configure() {\n const ticks = this.ticks;\n let start = this.min;\n let end = this.max;\n super.configure();\n if (this.options.offset && ticks.length) {\n const offset = (end - start) / Math.max(ticks.length - 1, 1) / 2;\n start -= offset;\n end += offset;\n }\n this._startValue = start;\n this._endValue = end;\n this._valueRange = end - start;\n }\n getLabelForValue(value) {\n return formatNumber(value, this.chart.options.locale, this.options.ticks.format);\n }\n}\n\nclass LinearScale extends LinearScaleBase {\n determineDataLimits() {\n const {min, max} = this.getMinMax(true);\n this.min = isNumberFinite(min) ? min : 0;\n this.max = isNumberFinite(max) ? max : 1;\n this.handleTickRangeOptions();\n }\n computeTickLimit() {\n const horizontal = this.isHorizontal();\n const length = horizontal ? this.width : this.height;\n const minRotation = toRadians(this.options.ticks.minRotation);\n const ratio = (horizontal ? Math.sin(minRotation) : Math.cos(minRotation)) || 0.001;\n const tickFont = this._resolveTickFontOptions(0);\n return Math.ceil(length / Math.min(40, tickFont.lineHeight / ratio));\n }\n getPixelForValue(value) {\n return value === null ? NaN : this.getPixelForDecimal((value - this._startValue) / this._valueRange);\n }\n getValueForPixel(pixel) {\n return this._startValue + this.getDecimalForPixel(pixel) * this._valueRange;\n }\n}\nLinearScale.id = 'linear';\nLinearScale.defaults = {\n ticks: {\n callback: Ticks.formatters.numeric\n }\n};\n\nfunction isMajor(tickVal) {\n const remain = tickVal / (Math.pow(10, Math.floor(log10(tickVal))));\n return remain === 1;\n}\nfunction generateTicks(generationOptions, dataRange) {\n const endExp = Math.floor(log10(dataRange.max));\n const endSignificand = Math.ceil(dataRange.max / Math.pow(10, endExp));\n const ticks = [];\n let tickVal = finiteOrDefault(generationOptions.min, Math.pow(10, Math.floor(log10(dataRange.min))));\n let exp = Math.floor(log10(tickVal));\n let significand = Math.floor(tickVal / Math.pow(10, exp));\n let precision = exp < 0 ? Math.pow(10, Math.abs(exp)) : 1;\n do {\n ticks.push({value: tickVal, major: isMajor(tickVal)});\n ++significand;\n if (significand === 10) {\n significand = 1;\n ++exp;\n precision = exp >= 0 ? 1 : precision;\n }\n tickVal = Math.round(significand * Math.pow(10, exp) * precision) / precision;\n } while (exp < endExp || (exp === endExp && significand < endSignificand));\n const lastTick = finiteOrDefault(generationOptions.max, tickVal);\n ticks.push({value: lastTick, major: isMajor(tickVal)});\n return ticks;\n}\nclass LogarithmicScale extends Scale {\n constructor(cfg) {\n super(cfg);\n this.start = undefined;\n this.end = undefined;\n this._startValue = undefined;\n this._valueRange = 0;\n }\n parse(raw, index) {\n const value = LinearScaleBase.prototype.parse.apply(this, [raw, index]);\n if (value === 0) {\n this._zero = true;\n return undefined;\n }\n return isNumberFinite(value) && value > 0 ? value : null;\n }\n determineDataLimits() {\n const {min, max} = this.getMinMax(true);\n this.min = isNumberFinite(min) ? Math.max(0, min) : null;\n this.max = isNumberFinite(max) ? Math.max(0, max) : null;\n if (this.options.beginAtZero) {\n this._zero = true;\n }\n this.handleTickRangeOptions();\n }\n handleTickRangeOptions() {\n const {minDefined, maxDefined} = this.getUserBounds();\n let min = this.min;\n let max = this.max;\n const setMin = v => (min = minDefined ? min : v);\n const setMax = v => (max = maxDefined ? max : v);\n const exp = (v, m) => Math.pow(10, Math.floor(log10(v)) + m);\n if (min === max) {\n if (min <= 0) {\n setMin(1);\n setMax(10);\n } else {\n setMin(exp(min, -1));\n setMax(exp(max, +1));\n }\n }\n if (min <= 0) {\n setMin(exp(max, -1));\n }\n if (max <= 0) {\n setMax(exp(min, +1));\n }\n if (this._zero && this.min !== this._suggestedMin && min === exp(this.min, 0)) {\n setMin(exp(min, -1));\n }\n this.min = min;\n this.max = max;\n }\n buildTicks() {\n const opts = this.options;\n const generationOptions = {\n min: this._userMin,\n max: this._userMax\n };\n const ticks = generateTicks(generationOptions, this);\n if (opts.bounds === 'ticks') {\n _setMinAndMaxByKey(ticks, this, 'value');\n }\n if (opts.reverse) {\n ticks.reverse();\n this.start = this.max;\n this.end = this.min;\n } else {\n this.start = this.min;\n this.end = this.max;\n }\n return ticks;\n }\n getLabelForValue(value) {\n return value === undefined\n ? '0'\n : formatNumber(value, this.chart.options.locale, this.options.ticks.format);\n }\n configure() {\n const start = this.min;\n super.configure();\n this._startValue = log10(start);\n this._valueRange = log10(this.max) - log10(start);\n }\n getPixelForValue(value) {\n if (value === undefined || value === 0) {\n value = this.min;\n }\n if (value === null || isNaN(value)) {\n return NaN;\n }\n return this.getPixelForDecimal(value === this.min\n ? 0\n : (log10(value) - this._startValue) / this._valueRange);\n }\n getValueForPixel(pixel) {\n const decimal = this.getDecimalForPixel(pixel);\n return Math.pow(10, this._startValue + decimal * this._valueRange);\n }\n}\nLogarithmicScale.id = 'logarithmic';\nLogarithmicScale.defaults = {\n ticks: {\n callback: Ticks.formatters.logarithmic,\n major: {\n enabled: true\n }\n }\n};\n\nfunction getTickBackdropHeight(opts) {\n const tickOpts = opts.ticks;\n if (tickOpts.display && opts.display) {\n const padding = toPadding(tickOpts.backdropPadding);\n return valueOrDefault(tickOpts.font && tickOpts.font.size, defaults.font.size) + padding.height;\n }\n return 0;\n}\nfunction measureLabelSize(ctx, font, label) {\n label = isArray(label) ? label : [label];\n return {\n w: _longestText(ctx, font.string, label),\n h: label.length * font.lineHeight\n };\n}\nfunction determineLimits(angle, pos, size, min, max) {\n if (angle === min || angle === max) {\n return {\n start: pos - (size / 2),\n end: pos + (size / 2)\n };\n } else if (angle < min || angle > max) {\n return {\n start: pos - size,\n end: pos\n };\n }\n return {\n start: pos,\n end: pos + size\n };\n}\nfunction fitWithPointLabels(scale) {\n const orig = {\n l: scale.left + scale._padding.left,\n r: scale.right - scale._padding.right,\n t: scale.top + scale._padding.top,\n b: scale.bottom - scale._padding.bottom\n };\n const limits = Object.assign({}, orig);\n const labelSizes = [];\n const padding = [];\n const valueCount = scale._pointLabels.length;\n const pointLabelOpts = scale.options.pointLabels;\n const additionalAngle = pointLabelOpts.centerPointLabels ? PI / valueCount : 0;\n for (let i = 0; i < valueCount; i++) {\n const opts = pointLabelOpts.setContext(scale.getPointLabelContext(i));\n padding[i] = opts.padding;\n const pointPosition = scale.getPointPosition(i, scale.drawingArea + padding[i], additionalAngle);\n const plFont = toFont(opts.font);\n const textSize = measureLabelSize(scale.ctx, plFont, scale._pointLabels[i]);\n labelSizes[i] = textSize;\n const angleRadians = _normalizeAngle(scale.getIndexAngle(i) + additionalAngle);\n const angle = Math.round(toDegrees(angleRadians));\n const hLimits = determineLimits(angle, pointPosition.x, textSize.w, 0, 180);\n const vLimits = determineLimits(angle, pointPosition.y, textSize.h, 90, 270);\n updateLimits(limits, orig, angleRadians, hLimits, vLimits);\n }\n scale.setCenterPoint(\n orig.l - limits.l,\n limits.r - orig.r,\n orig.t - limits.t,\n limits.b - orig.b\n );\n scale._pointLabelItems = buildPointLabelItems(scale, labelSizes, padding);\n}\nfunction updateLimits(limits, orig, angle, hLimits, vLimits) {\n const sin = Math.abs(Math.sin(angle));\n const cos = Math.abs(Math.cos(angle));\n let x = 0;\n let y = 0;\n if (hLimits.start < orig.l) {\n x = (orig.l - hLimits.start) / sin;\n limits.l = Math.min(limits.l, orig.l - x);\n } else if (hLimits.end > orig.r) {\n x = (hLimits.end - orig.r) / sin;\n limits.r = Math.max(limits.r, orig.r + x);\n }\n if (vLimits.start < orig.t) {\n y = (orig.t - vLimits.start) / cos;\n limits.t = Math.min(limits.t, orig.t - y);\n } else if (vLimits.end > orig.b) {\n y = (vLimits.end - orig.b) / cos;\n limits.b = Math.max(limits.b, orig.b + y);\n }\n}\nfunction buildPointLabelItems(scale, labelSizes, padding) {\n const items = [];\n const valueCount = scale._pointLabels.length;\n const opts = scale.options;\n const extra = getTickBackdropHeight(opts) / 2;\n const outerDistance = scale.drawingArea;\n const additionalAngle = opts.pointLabels.centerPointLabels ? PI / valueCount : 0;\n for (let i = 0; i < valueCount; i++) {\n const pointLabelPosition = scale.getPointPosition(i, outerDistance + extra + padding[i], additionalAngle);\n const angle = Math.round(toDegrees(_normalizeAngle(pointLabelPosition.angle + HALF_PI)));\n const size = labelSizes[i];\n const y = yForAngle(pointLabelPosition.y, size.h, angle);\n const textAlign = getTextAlignForAngle(angle);\n const left = leftForTextAlign(pointLabelPosition.x, size.w, textAlign);\n items.push({\n x: pointLabelPosition.x,\n y,\n textAlign,\n left,\n top: y,\n right: left + size.w,\n bottom: y + size.h\n });\n }\n return items;\n}\nfunction getTextAlignForAngle(angle) {\n if (angle === 0 || angle === 180) {\n return 'center';\n } else if (angle < 180) {\n return 'left';\n }\n return 'right';\n}\nfunction leftForTextAlign(x, w, align) {\n if (align === 'right') {\n x -= w;\n } else if (align === 'center') {\n x -= (w / 2);\n }\n return x;\n}\nfunction yForAngle(y, h, angle) {\n if (angle === 90 || angle === 270) {\n y -= (h / 2);\n } else if (angle > 270 || angle < 90) {\n y -= h;\n }\n return y;\n}\nfunction drawPointLabels(scale, labelCount) {\n const {ctx, options: {pointLabels}} = scale;\n for (let i = labelCount - 1; i >= 0; i--) {\n const optsAtIndex = pointLabels.setContext(scale.getPointLabelContext(i));\n const plFont = toFont(optsAtIndex.font);\n const {x, y, textAlign, left, top, right, bottom} = scale._pointLabelItems[i];\n const {backdropColor} = optsAtIndex;\n if (!isNullOrUndef(backdropColor)) {\n const borderRadius = toTRBLCorners(optsAtIndex.borderRadius);\n const padding = toPadding(optsAtIndex.backdropPadding);\n ctx.fillStyle = backdropColor;\n const backdropLeft = left - padding.left;\n const backdropTop = top - padding.top;\n const backdropWidth = right - left + padding.width;\n const backdropHeight = bottom - top + padding.height;\n if (Object.values(borderRadius).some(v => v !== 0)) {\n ctx.beginPath();\n addRoundedRectPath(ctx, {\n x: backdropLeft,\n y: backdropTop,\n w: backdropWidth,\n h: backdropHeight,\n radius: borderRadius,\n });\n ctx.fill();\n } else {\n ctx.fillRect(backdropLeft, backdropTop, backdropWidth, backdropHeight);\n }\n }\n renderText(\n ctx,\n scale._pointLabels[i],\n x,\n y + (plFont.lineHeight / 2),\n plFont,\n {\n color: optsAtIndex.color,\n textAlign: textAlign,\n textBaseline: 'middle'\n }\n );\n }\n}\nfunction pathRadiusLine(scale, radius, circular, labelCount) {\n const {ctx} = scale;\n if (circular) {\n ctx.arc(scale.xCenter, scale.yCenter, radius, 0, TAU);\n } else {\n let pointPosition = scale.getPointPosition(0, radius);\n ctx.moveTo(pointPosition.x, pointPosition.y);\n for (let i = 1; i < labelCount; i++) {\n pointPosition = scale.getPointPosition(i, radius);\n ctx.lineTo(pointPosition.x, pointPosition.y);\n }\n }\n}\nfunction drawRadiusLine(scale, gridLineOpts, radius, labelCount) {\n const ctx = scale.ctx;\n const circular = gridLineOpts.circular;\n const {color, lineWidth} = gridLineOpts;\n if ((!circular && !labelCount) || !color || !lineWidth || radius < 0) {\n return;\n }\n ctx.save();\n ctx.strokeStyle = color;\n ctx.lineWidth = lineWidth;\n ctx.setLineDash(gridLineOpts.borderDash);\n ctx.lineDashOffset = gridLineOpts.borderDashOffset;\n ctx.beginPath();\n pathRadiusLine(scale, radius, circular, labelCount);\n ctx.closePath();\n ctx.stroke();\n ctx.restore();\n}\nfunction createPointLabelContext(parent, index, label) {\n return createContext(parent, {\n label,\n index,\n type: 'pointLabel'\n });\n}\nclass RadialLinearScale extends LinearScaleBase {\n constructor(cfg) {\n super(cfg);\n this.xCenter = undefined;\n this.yCenter = undefined;\n this.drawingArea = undefined;\n this._pointLabels = [];\n this._pointLabelItems = [];\n }\n setDimensions() {\n const padding = this._padding = toPadding(getTickBackdropHeight(this.options) / 2);\n const w = this.width = this.maxWidth - padding.width;\n const h = this.height = this.maxHeight - padding.height;\n this.xCenter = Math.floor(this.left + w / 2 + padding.left);\n this.yCenter = Math.floor(this.top + h / 2 + padding.top);\n this.drawingArea = Math.floor(Math.min(w, h) / 2);\n }\n determineDataLimits() {\n const {min, max} = this.getMinMax(false);\n this.min = isNumberFinite(min) && !isNaN(min) ? min : 0;\n this.max = isNumberFinite(max) && !isNaN(max) ? max : 0;\n this.handleTickRangeOptions();\n }\n computeTickLimit() {\n return Math.ceil(this.drawingArea / getTickBackdropHeight(this.options));\n }\n generateTickLabels(ticks) {\n LinearScaleBase.prototype.generateTickLabels.call(this, ticks);\n this._pointLabels = this.getLabels()\n .map((value, index) => {\n const label = callback(this.options.pointLabels.callback, [value, index], this);\n return label || label === 0 ? label : '';\n })\n .filter((v, i) => this.chart.getDataVisibility(i));\n }\n fit() {\n const opts = this.options;\n if (opts.display && opts.pointLabels.display) {\n fitWithPointLabels(this);\n } else {\n this.setCenterPoint(0, 0, 0, 0);\n }\n }\n setCenterPoint(leftMovement, rightMovement, topMovement, bottomMovement) {\n this.xCenter += Math.floor((leftMovement - rightMovement) / 2);\n this.yCenter += Math.floor((topMovement - bottomMovement) / 2);\n this.drawingArea -= Math.min(this.drawingArea / 2, Math.max(leftMovement, rightMovement, topMovement, bottomMovement));\n }\n getIndexAngle(index) {\n const angleMultiplier = TAU / (this._pointLabels.length || 1);\n const startAngle = this.options.startAngle || 0;\n return _normalizeAngle(index * angleMultiplier + toRadians(startAngle));\n }\n getDistanceFromCenterForValue(value) {\n if (isNullOrUndef(value)) {\n return NaN;\n }\n const scalingFactor = this.drawingArea / (this.max - this.min);\n if (this.options.reverse) {\n return (this.max - value) * scalingFactor;\n }\n return (value - this.min) * scalingFactor;\n }\n getValueForDistanceFromCenter(distance) {\n if (isNullOrUndef(distance)) {\n return NaN;\n }\n const scaledDistance = distance / (this.drawingArea / (this.max - this.min));\n return this.options.reverse ? this.max - scaledDistance : this.min + scaledDistance;\n }\n getPointLabelContext(index) {\n const pointLabels = this._pointLabels || [];\n if (index >= 0 && index < pointLabels.length) {\n const pointLabel = pointLabels[index];\n return createPointLabelContext(this.getContext(), index, pointLabel);\n }\n }\n getPointPosition(index, distanceFromCenter, additionalAngle = 0) {\n const angle = this.getIndexAngle(index) - HALF_PI + additionalAngle;\n return {\n x: Math.cos(angle) * distanceFromCenter + this.xCenter,\n y: Math.sin(angle) * distanceFromCenter + this.yCenter,\n angle\n };\n }\n getPointPositionForValue(index, value) {\n return this.getPointPosition(index, this.getDistanceFromCenterForValue(value));\n }\n getBasePosition(index) {\n return this.getPointPositionForValue(index || 0, this.getBaseValue());\n }\n getPointLabelPosition(index) {\n const {left, top, right, bottom} = this._pointLabelItems[index];\n return {\n left,\n top,\n right,\n bottom,\n };\n }\n drawBackground() {\n const {backgroundColor, grid: {circular}} = this.options;\n if (backgroundColor) {\n const ctx = this.ctx;\n ctx.save();\n ctx.beginPath();\n pathRadiusLine(this, this.getDistanceFromCenterForValue(this._endValue), circular, this._pointLabels.length);\n ctx.closePath();\n ctx.fillStyle = backgroundColor;\n ctx.fill();\n ctx.restore();\n }\n }\n drawGrid() {\n const ctx = this.ctx;\n const opts = this.options;\n const {angleLines, grid} = opts;\n const labelCount = this._pointLabels.length;\n let i, offset, position;\n if (opts.pointLabels.display) {\n drawPointLabels(this, labelCount);\n }\n if (grid.display) {\n this.ticks.forEach((tick, index) => {\n if (index !== 0) {\n offset = this.getDistanceFromCenterForValue(tick.value);\n const optsAtIndex = grid.setContext(this.getContext(index - 1));\n drawRadiusLine(this, optsAtIndex, offset, labelCount);\n }\n });\n }\n if (angleLines.display) {\n ctx.save();\n for (i = labelCount - 1; i >= 0; i--) {\n const optsAtIndex = angleLines.setContext(this.getPointLabelContext(i));\n const {color, lineWidth} = optsAtIndex;\n if (!lineWidth || !color) {\n continue;\n }\n ctx.lineWidth = lineWidth;\n ctx.strokeStyle = color;\n ctx.setLineDash(optsAtIndex.borderDash);\n ctx.lineDashOffset = optsAtIndex.borderDashOffset;\n offset = this.getDistanceFromCenterForValue(opts.ticks.reverse ? this.min : this.max);\n position = this.getPointPosition(i, offset);\n ctx.beginPath();\n ctx.moveTo(this.xCenter, this.yCenter);\n ctx.lineTo(position.x, position.y);\n ctx.stroke();\n }\n ctx.restore();\n }\n }\n drawBorder() {}\n drawLabels() {\n const ctx = this.ctx;\n const opts = this.options;\n const tickOpts = opts.ticks;\n if (!tickOpts.display) {\n return;\n }\n const startAngle = this.getIndexAngle(0);\n let offset, width;\n ctx.save();\n ctx.translate(this.xCenter, this.yCenter);\n ctx.rotate(startAngle);\n ctx.textAlign = 'center';\n ctx.textBaseline = 'middle';\n this.ticks.forEach((tick, index) => {\n if (index === 0 && !opts.reverse) {\n return;\n }\n const optsAtIndex = tickOpts.setContext(this.getContext(index));\n const tickFont = toFont(optsAtIndex.font);\n offset = this.getDistanceFromCenterForValue(this.ticks[index].value);\n if (optsAtIndex.showLabelBackdrop) {\n ctx.font = tickFont.string;\n width = ctx.measureText(tick.label).width;\n ctx.fillStyle = optsAtIndex.backdropColor;\n const padding = toPadding(optsAtIndex.backdropPadding);\n ctx.fillRect(\n -width / 2 - padding.left,\n -offset - tickFont.size / 2 - padding.top,\n width + padding.width,\n tickFont.size + padding.height\n );\n }\n renderText(ctx, tick.label, 0, -offset, tickFont, {\n color: optsAtIndex.color,\n });\n });\n ctx.restore();\n }\n drawTitle() {}\n}\nRadialLinearScale.id = 'radialLinear';\nRadialLinearScale.defaults = {\n display: true,\n animate: true,\n position: 'chartArea',\n angleLines: {\n display: true,\n lineWidth: 1,\n borderDash: [],\n borderDashOffset: 0.0\n },\n grid: {\n circular: false\n },\n startAngle: 0,\n ticks: {\n showLabelBackdrop: true,\n callback: Ticks.formatters.numeric\n },\n pointLabels: {\n backdropColor: undefined,\n backdropPadding: 2,\n display: true,\n font: {\n size: 10\n },\n callback(label) {\n return label;\n },\n padding: 5,\n centerPointLabels: false\n }\n};\nRadialLinearScale.defaultRoutes = {\n 'angleLines.color': 'borderColor',\n 'pointLabels.color': 'color',\n 'ticks.color': 'color'\n};\nRadialLinearScale.descriptors = {\n angleLines: {\n _fallback: 'grid'\n }\n};\n\nconst INTERVALS = {\n millisecond: {common: true, size: 1, steps: 1000},\n second: {common: true, size: 1000, steps: 60},\n minute: {common: true, size: 60000, steps: 60},\n hour: {common: true, size: 3600000, steps: 24},\n day: {common: true, size: 86400000, steps: 30},\n week: {common: false, size: 604800000, steps: 4},\n month: {common: true, size: 2.628e9, steps: 12},\n quarter: {common: false, size: 7.884e9, steps: 4},\n year: {common: true, size: 3.154e10}\n};\nconst UNITS = (Object.keys(INTERVALS));\nfunction sorter(a, b) {\n return a - b;\n}\nfunction parse(scale, input) {\n if (isNullOrUndef(input)) {\n return null;\n }\n const adapter = scale._adapter;\n const {parser, round, isoWeekday} = scale._parseOpts;\n let value = input;\n if (typeof parser === 'function') {\n value = parser(value);\n }\n if (!isNumberFinite(value)) {\n value = typeof parser === 'string'\n ? adapter.parse(value, parser)\n : adapter.parse(value);\n }\n if (value === null) {\n return null;\n }\n if (round) {\n value = round === 'week' && (isNumber(isoWeekday) || isoWeekday === true)\n ? adapter.startOf(value, 'isoWeek', isoWeekday)\n : adapter.startOf(value, round);\n }\n return +value;\n}\nfunction determineUnitForAutoTicks(minUnit, min, max, capacity) {\n const ilen = UNITS.length;\n for (let i = UNITS.indexOf(minUnit); i < ilen - 1; ++i) {\n const interval = INTERVALS[UNITS[i]];\n const factor = interval.steps ? interval.steps : Number.MAX_SAFE_INTEGER;\n if (interval.common && Math.ceil((max - min) / (factor * interval.size)) <= capacity) {\n return UNITS[i];\n }\n }\n return UNITS[ilen - 1];\n}\nfunction determineUnitForFormatting(scale, numTicks, minUnit, min, max) {\n for (let i = UNITS.length - 1; i >= UNITS.indexOf(minUnit); i--) {\n const unit = UNITS[i];\n if (INTERVALS[unit].common && scale._adapter.diff(max, min, unit) >= numTicks - 1) {\n return unit;\n }\n }\n return UNITS[minUnit ? UNITS.indexOf(minUnit) : 0];\n}\nfunction determineMajorUnit(unit) {\n for (let i = UNITS.indexOf(unit) + 1, ilen = UNITS.length; i < ilen; ++i) {\n if (INTERVALS[UNITS[i]].common) {\n return UNITS[i];\n }\n }\n}\nfunction addTick(ticks, time, timestamps) {\n if (!timestamps) {\n ticks[time] = true;\n } else if (timestamps.length) {\n const {lo, hi} = _lookup(timestamps, time);\n const timestamp = timestamps[lo] >= time ? timestamps[lo] : timestamps[hi];\n ticks[timestamp] = true;\n }\n}\nfunction setMajorTicks(scale, ticks, map, majorUnit) {\n const adapter = scale._adapter;\n const first = +adapter.startOf(ticks[0].value, majorUnit);\n const last = ticks[ticks.length - 1].value;\n let major, index;\n for (major = first; major <= last; major = +adapter.add(major, 1, majorUnit)) {\n index = map[major];\n if (index >= 0) {\n ticks[index].major = true;\n }\n }\n return ticks;\n}\nfunction ticksFromTimestamps(scale, values, majorUnit) {\n const ticks = [];\n const map = {};\n const ilen = values.length;\n let i, value;\n for (i = 0; i < ilen; ++i) {\n value = values[i];\n map[value] = i;\n ticks.push({\n value,\n major: false\n });\n }\n return (ilen === 0 || !majorUnit) ? ticks : setMajorTicks(scale, ticks, map, majorUnit);\n}\nclass TimeScale extends Scale {\n constructor(props) {\n super(props);\n this._cache = {\n data: [],\n labels: [],\n all: []\n };\n this._unit = 'day';\n this._majorUnit = undefined;\n this._offsets = {};\n this._normalized = false;\n this._parseOpts = undefined;\n }\n init(scaleOpts, opts) {\n const time = scaleOpts.time || (scaleOpts.time = {});\n const adapter = this._adapter = new adapters._date(scaleOpts.adapters.date);\n adapter.init(opts);\n mergeIf(time.displayFormats, adapter.formats());\n this._parseOpts = {\n parser: time.parser,\n round: time.round,\n isoWeekday: time.isoWeekday\n };\n super.init(scaleOpts);\n this._normalized = opts.normalized;\n }\n parse(raw, index) {\n if (raw === undefined) {\n return null;\n }\n return parse(this, raw);\n }\n beforeLayout() {\n super.beforeLayout();\n this._cache = {\n data: [],\n labels: [],\n all: []\n };\n }\n determineDataLimits() {\n const options = this.options;\n const adapter = this._adapter;\n const unit = options.time.unit || 'day';\n let {min, max, minDefined, maxDefined} = this.getUserBounds();\n function _applyBounds(bounds) {\n if (!minDefined && !isNaN(bounds.min)) {\n min = Math.min(min, bounds.min);\n }\n if (!maxDefined && !isNaN(bounds.max)) {\n max = Math.max(max, bounds.max);\n }\n }\n if (!minDefined || !maxDefined) {\n _applyBounds(this._getLabelBounds());\n if (options.bounds !== 'ticks' || options.ticks.source !== 'labels') {\n _applyBounds(this.getMinMax(false));\n }\n }\n min = isNumberFinite(min) && !isNaN(min) ? min : +adapter.startOf(Date.now(), unit);\n max = isNumberFinite(max) && !isNaN(max) ? max : +adapter.endOf(Date.now(), unit) + 1;\n this.min = Math.min(min, max - 1);\n this.max = Math.max(min + 1, max);\n }\n _getLabelBounds() {\n const arr = this.getLabelTimestamps();\n let min = Number.POSITIVE_INFINITY;\n let max = Number.NEGATIVE_INFINITY;\n if (arr.length) {\n min = arr[0];\n max = arr[arr.length - 1];\n }\n return {min, max};\n }\n buildTicks() {\n const options = this.options;\n const timeOpts = options.time;\n const tickOpts = options.ticks;\n const timestamps = tickOpts.source === 'labels' ? this.getLabelTimestamps() : this._generate();\n if (options.bounds === 'ticks' && timestamps.length) {\n this.min = this._userMin || timestamps[0];\n this.max = this._userMax || timestamps[timestamps.length - 1];\n }\n const min = this.min;\n const max = this.max;\n const ticks = _filterBetween(timestamps, min, max);\n this._unit = timeOpts.unit || (tickOpts.autoSkip\n ? determineUnitForAutoTicks(timeOpts.minUnit, this.min, this.max, this._getLabelCapacity(min))\n : determineUnitForFormatting(this, ticks.length, timeOpts.minUnit, this.min, this.max));\n this._majorUnit = !tickOpts.major.enabled || this._unit === 'year' ? undefined\n : determineMajorUnit(this._unit);\n this.initOffsets(timestamps);\n if (options.reverse) {\n ticks.reverse();\n }\n return ticksFromTimestamps(this, ticks, this._majorUnit);\n }\n afterAutoSkip() {\n if (this.options.offsetAfterAutoskip) {\n this.initOffsets(this.ticks.map(tick => +tick.value));\n }\n }\n initOffsets(timestamps) {\n let start = 0;\n let end = 0;\n let first, last;\n if (this.options.offset && timestamps.length) {\n first = this.getDecimalForValue(timestamps[0]);\n if (timestamps.length === 1) {\n start = 1 - first;\n } else {\n start = (this.getDecimalForValue(timestamps[1]) - first) / 2;\n }\n last = this.getDecimalForValue(timestamps[timestamps.length - 1]);\n if (timestamps.length === 1) {\n end = last;\n } else {\n end = (last - this.getDecimalForValue(timestamps[timestamps.length - 2])) / 2;\n }\n }\n const limit = timestamps.length < 3 ? 0.5 : 0.25;\n start = _limitValue(start, 0, limit);\n end = _limitValue(end, 0, limit);\n this._offsets = {start, end, factor: 1 / (start + 1 + end)};\n }\n _generate() {\n const adapter = this._adapter;\n const min = this.min;\n const max = this.max;\n const options = this.options;\n const timeOpts = options.time;\n const minor = timeOpts.unit || determineUnitForAutoTicks(timeOpts.minUnit, min, max, this._getLabelCapacity(min));\n const stepSize = valueOrDefault(timeOpts.stepSize, 1);\n const weekday = minor === 'week' ? timeOpts.isoWeekday : false;\n const hasWeekday = isNumber(weekday) || weekday === true;\n const ticks = {};\n let first = min;\n let time, count;\n if (hasWeekday) {\n first = +adapter.startOf(first, 'isoWeek', weekday);\n }\n first = +adapter.startOf(first, hasWeekday ? 'day' : minor);\n if (adapter.diff(max, min, minor) > 100000 * stepSize) {\n throw new Error(min + ' and ' + max + ' are too far apart with stepSize of ' + stepSize + ' ' + minor);\n }\n const timestamps = options.ticks.source === 'data' && this.getDataTimestamps();\n for (time = first, count = 0; time < max; time = +adapter.add(time, stepSize, minor), count++) {\n addTick(ticks, time, timestamps);\n }\n if (time === max || options.bounds === 'ticks' || count === 1) {\n addTick(ticks, time, timestamps);\n }\n return Object.keys(ticks).sort((a, b) => a - b).map(x => +x);\n }\n getLabelForValue(value) {\n const adapter = this._adapter;\n const timeOpts = this.options.time;\n if (timeOpts.tooltipFormat) {\n return adapter.format(value, timeOpts.tooltipFormat);\n }\n return adapter.format(value, timeOpts.displayFormats.datetime);\n }\n _tickFormatFunction(time, index, ticks, format) {\n const options = this.options;\n const formats = options.time.displayFormats;\n const unit = this._unit;\n const majorUnit = this._majorUnit;\n const minorFormat = unit && formats[unit];\n const majorFormat = majorUnit && formats[majorUnit];\n const tick = ticks[index];\n const major = majorUnit && majorFormat && tick && tick.major;\n const label = this._adapter.format(time, format || (major ? majorFormat : minorFormat));\n const formatter = options.ticks.callback;\n return formatter ? callback(formatter, [label, index, ticks], this) : label;\n }\n generateTickLabels(ticks) {\n let i, ilen, tick;\n for (i = 0, ilen = ticks.length; i < ilen; ++i) {\n tick = ticks[i];\n tick.label = this._tickFormatFunction(tick.value, i, ticks);\n }\n }\n getDecimalForValue(value) {\n return value === null ? NaN : (value - this.min) / (this.max - this.min);\n }\n getPixelForValue(value) {\n const offsets = this._offsets;\n const pos = this.getDecimalForValue(value);\n return this.getPixelForDecimal((offsets.start + pos) * offsets.factor);\n }\n getValueForPixel(pixel) {\n const offsets = this._offsets;\n const pos = this.getDecimalForPixel(pixel) / offsets.factor - offsets.end;\n return this.min + pos * (this.max - this.min);\n }\n _getLabelSize(label) {\n const ticksOpts = this.options.ticks;\n const tickLabelWidth = this.ctx.measureText(label).width;\n const angle = toRadians(this.isHorizontal() ? ticksOpts.maxRotation : ticksOpts.minRotation);\n const cosRotation = Math.cos(angle);\n const sinRotation = Math.sin(angle);\n const tickFontSize = this._resolveTickFontOptions(0).size;\n return {\n w: (tickLabelWidth * cosRotation) + (tickFontSize * sinRotation),\n h: (tickLabelWidth * sinRotation) + (tickFontSize * cosRotation)\n };\n }\n _getLabelCapacity(exampleTime) {\n const timeOpts = this.options.time;\n const displayFormats = timeOpts.displayFormats;\n const format = displayFormats[timeOpts.unit] || displayFormats.millisecond;\n const exampleLabel = this._tickFormatFunction(exampleTime, 0, ticksFromTimestamps(this, [exampleTime], this._majorUnit), format);\n const size = this._getLabelSize(exampleLabel);\n const capacity = Math.floor(this.isHorizontal() ? this.width / size.w : this.height / size.h) - 1;\n return capacity > 0 ? capacity : 1;\n }\n getDataTimestamps() {\n let timestamps = this._cache.data || [];\n let i, ilen;\n if (timestamps.length) {\n return timestamps;\n }\n const metas = this.getMatchingVisibleMetas();\n if (this._normalized && metas.length) {\n return (this._cache.data = metas[0].controller.getAllParsedValues(this));\n }\n for (i = 0, ilen = metas.length; i < ilen; ++i) {\n timestamps = timestamps.concat(metas[i].controller.getAllParsedValues(this));\n }\n return (this._cache.data = this.normalize(timestamps));\n }\n getLabelTimestamps() {\n const timestamps = this._cache.labels || [];\n let i, ilen;\n if (timestamps.length) {\n return timestamps;\n }\n const labels = this.getLabels();\n for (i = 0, ilen = labels.length; i < ilen; ++i) {\n timestamps.push(parse(this, labels[i]));\n }\n return (this._cache.labels = this._normalized ? timestamps : this.normalize(timestamps));\n }\n normalize(values) {\n return _arrayUnique(values.sort(sorter));\n }\n}\nTimeScale.id = 'time';\nTimeScale.defaults = {\n bounds: 'data',\n adapters: {},\n time: {\n parser: false,\n unit: false,\n round: false,\n isoWeekday: false,\n minUnit: 'millisecond',\n displayFormats: {}\n },\n ticks: {\n source: 'auto',\n major: {\n enabled: false\n }\n }\n};\n\nfunction interpolate(table, val, reverse) {\n let lo = 0;\n let hi = table.length - 1;\n let prevSource, nextSource, prevTarget, nextTarget;\n if (reverse) {\n if (val >= table[lo].pos && val <= table[hi].pos) {\n ({lo, hi} = _lookupByKey(table, 'pos', val));\n }\n ({pos: prevSource, time: prevTarget} = table[lo]);\n ({pos: nextSource, time: nextTarget} = table[hi]);\n } else {\n if (val >= table[lo].time && val <= table[hi].time) {\n ({lo, hi} = _lookupByKey(table, 'time', val));\n }\n ({time: prevSource, pos: prevTarget} = table[lo]);\n ({time: nextSource, pos: nextTarget} = table[hi]);\n }\n const span = nextSource - prevSource;\n return span ? prevTarget + (nextTarget - prevTarget) * (val - prevSource) / span : prevTarget;\n}\nclass TimeSeriesScale extends TimeScale {\n constructor(props) {\n super(props);\n this._table = [];\n this._minPos = undefined;\n this._tableRange = undefined;\n }\n initOffsets() {\n const timestamps = this._getTimestampsForTable();\n const table = this._table = this.buildLookupTable(timestamps);\n this._minPos = interpolate(table, this.min);\n this._tableRange = interpolate(table, this.max) - this._minPos;\n super.initOffsets(timestamps);\n }\n buildLookupTable(timestamps) {\n const {min, max} = this;\n const items = [];\n const table = [];\n let i, ilen, prev, curr, next;\n for (i = 0, ilen = timestamps.length; i < ilen; ++i) {\n curr = timestamps[i];\n if (curr >= min && curr <= max) {\n items.push(curr);\n }\n }\n if (items.length < 2) {\n return [\n {time: min, pos: 0},\n {time: max, pos: 1}\n ];\n }\n for (i = 0, ilen = items.length; i < ilen; ++i) {\n next = items[i + 1];\n prev = items[i - 1];\n curr = items[i];\n if (Math.round((next + prev) / 2) !== curr) {\n table.push({time: curr, pos: i / (ilen - 1)});\n }\n }\n return table;\n }\n _getTimestampsForTable() {\n let timestamps = this._cache.all || [];\n if (timestamps.length) {\n return timestamps;\n }\n const data = this.getDataTimestamps();\n const label = this.getLabelTimestamps();\n if (data.length && label.length) {\n timestamps = this.normalize(data.concat(label));\n } else {\n timestamps = data.length ? data : label;\n }\n timestamps = this._cache.all = timestamps;\n return timestamps;\n }\n getDecimalForValue(value) {\n return (interpolate(this._table, value) - this._minPos) / this._tableRange;\n }\n getValueForPixel(pixel) {\n const offsets = this._offsets;\n const decimal = this.getDecimalForPixel(pixel) / offsets.factor - offsets.end;\n return interpolate(this._table, decimal * this._tableRange + this._minPos, true);\n }\n}\nTimeSeriesScale.id = 'timeseries';\nTimeSeriesScale.defaults = TimeScale.defaults;\n\nvar scales = /*#__PURE__*/Object.freeze({\n__proto__: null,\nCategoryScale: CategoryScale,\nLinearScale: LinearScale,\nLogarithmicScale: LogarithmicScale,\nRadialLinearScale: RadialLinearScale,\nTimeScale: TimeScale,\nTimeSeriesScale: TimeSeriesScale\n});\n\nconst registerables = [\n controllers,\n elements,\n plugins,\n scales,\n];\n\nexport { Animation, Animations, ArcElement, BarController, BarElement, BasePlatform, BasicPlatform, BubbleController, CategoryScale, Chart, DatasetController, plugin_decimation as Decimation, DomPlatform, DoughnutController, Element, index as Filler, Interaction, plugin_legend as Legend, LineController, LineElement, LinearScale, LogarithmicScale, PieController, PointElement, PolarAreaController, RadarController, RadialLinearScale, Scale, ScatterController, plugin_subtitle as SubTitle, Ticks, TimeScale, TimeSeriesScale, plugin_title as Title, plugin_tooltip as Tooltip, adapters as _adapters, _detectPlatform, animator, controllers, elements, layouts, plugins, registerables, registry, scales };\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","// startup\n// Load entry module and return exports\n// This entry module is referenced by other modules so it can't be inlined\nvar __webpack_exports__ = __webpack_require__(608);\n"],"names":["root","factory","exports","module","define","amd","this","message","InvalidDataException","average","mutableSetOf","blocks","block","title","lines","lineIndex","line","isHumanLine","shouldSkip","parseGenericTitle","textNumberLine","a","blockRows","BlockRow","valuesMap","key","focusGroups","sorted","toList","first","blockRow","originalValueOrder","currentValueOrder","values","keyLengthMap","checkDataIntegrity","createChartTitle","benchmarkResults","BenchmarkResult","chartTitle","focusGroup","Pair","result","getPositionText","listOf","toMap","newBenchmarkResult","focus","parseMultiLineGenericInput","ResultContainer","index","isMachineLine","data","transformedList","valueMap","it","toSet","flatten","chartNames","c","chartName","charts","dataSets","ChartsBundle","parseGroupMap","isGeneric","println","titles","mutableListOf","lineColors","randomRgb","newColor","placeholder","rows","textInput","isBlank","type","marginTop","marginLeft","legend","label","borderColor","borderWidth","labels","chartLabels","datasets","plugins","y","scales","onClick","elements","element","datasetIndex","Chart","width","maxWidth","height","maxHeight","fontSize","selected","marginBottom","savedBenchmarks","savedBenchmark","disabled","marginRight","Date","getMilliseconds","lazy","document","createElement","selector","summaries","summary","avgOfCount","blockName","badgeClass","postfix","fontWeight","ElementBuilderImplementation","testName","HomeViewModel","BenchmarkRepoImpl","FormRepoImpl","newTestName","chunked","paddingLeft","paddingRight","paddingBottom","chart","contains","updateSummary","chartsBundle","blockNames","emptyList","blockNameOuter","blockNameInner","greenSum","redSum","node","newAggSums","AggSummary","calcAggSummary","inputType","min","toGenericChart","newCharts","onChartsBundleUpdated","firstOrNull","currentTestName","toCharts","printStackTrace","reset","mutableStateListOf","FormData","refreshBenchmarks","window","addEventListener","isGenericInput","form","parseGenericInput","isTestName","findMetricKeyOrNull","metricName","InvalidBenchmarkDataException","parseTitle","setOf","iLine","match","lastOrNull","number","TextNumberLine","destroy","cloneNode","setTimeout","delay","filterOutAndroidJunkLog","unfilteredForm","prompt","bName","alert","SavedBenchmarkNode","formData","newList","savedBenchmarkNode","newForm","confirm","deletedBenchmarkNode","newBlockName","localStorage","getItem","savedBenchmarksString","SavedBenchmarks","setItem","removeAll","toString","toBoolean","isTestNameDetectionEnabled","selectedBlockNameOne","selectedBlockNameTwo","words","word","toFloatArray","array","newArray","i","segments","combinedMap","g","before","after","diff","summaryNodes","SummaryNode","emoji","segment","percDiff","resultWord","symbol","metricConfig","Summary","register","ArcElement","LineElement","BarElement","PointElement","BarController","BubbleController","DoughnutController","LineController","PieController","PolarAreaController","RadarController","ScatterController","CategoryScale","LinearScale","LogarithmicScale","RadialLinearScale","TimeScale","TimeSeriesScale","Decimation","Filler","Legend","Title","Tooltip","SubTitle","noop","uid","id","isNullOrUndef","value","isArray","Array","Object","prototype","call","slice","isObject","isNumberFinite","Number","isFinite","finiteOrDefault","defaultValue","valueOrDefault","toDimension","dimension","endsWith","parseFloat","callback","fn","args","thisArg","apply","each","loopable","reverse","len","keys","length","_elementsEqual","a0","a1","ilen","v0","v1","clone$1","source","map","target","create","klen","k","isValidKey","indexOf","_merger","options","tval","sval","merge","sources","merger","mergeIf","_mergerIf","hasOwnProperty","keyResolvers","v","x","o","resolveObjectKey","obj","resolver","parts","split","tmp","part","push","_splitKey","_getKeyResolver","_capitalize","str","charAt","toUpperCase","defined","isFunction","setsEqual","b","size","item","has","PI","Math","TAU","PITAU","INFINITY","POSITIVE_INFINITY","RAD_PER_DEG","HALF_PI","QUARTER_PI","TWO_THIRDS_PI","log10","sign","niceNum","range","roundedRange","round","almostEquals","niceRange","pow","floor","fraction","isNumber","n","isNaN","epsilon","abs","_setMinAndMaxByKey","property","max","toRadians","degrees","toDegrees","radians","_decimalPlaces","e","p","getAngleFromPoint","centrePoint","anglePoint","distanceFromXCenter","distanceFromYCenter","radialDistanceFromCenter","sqrt","angle","atan2","distance","distanceBetweenPoints","pt1","pt2","_angleDiff","_normalizeAngle","_angleBetween","start","end","sameAngleIsFullCircle","s","angleToStart","angleToEnd","startToAngle","endToAngle","_limitValue","_isBetween","_lookup","table","cmp","mid","hi","lo","_lookupByKey","last","_rlookupByKey","arrayEvents","unlistenArrayEvents","listener","stub","_chartjs","listeners","splice","forEach","_arrayUnique","items","set","Set","add","from","requestAnimFrame","requestAnimationFrame","throttled","updateFn","updateArgs","ticking","rest","_toLeftRightCenter","align","_alignStartEnd","_getStartAndCountOfVisiblePoints","meta","points","animationsDisabled","pointCount","count","_sorted","iScale","_parsed","axis","minDefined","maxDefined","getUserBounds","getPixelForValue","_scaleRangesChanged","xScale","yScale","_scaleRanges","newRanges","xmin","xmax","ymin","ymax","changed","assign","atEdge","t","elasticIn","sin","elasticOut","effects","linear","easeInQuad","easeOutQuad","easeInOutQuad","easeInCubic","easeOutCubic","easeInOutCubic","easeInQuart","easeOutQuart","easeInOutQuart","easeInQuint","easeOutQuint","easeInOutQuint","easeInSine","cos","easeOutSine","easeInOutSine","easeInExpo","easeOutExpo","easeInOutExpo","easeInCirc","easeOutCirc","easeInOutCirc","easeInElastic","easeOutElastic","easeInOutElastic","easeInBack","easeOutBack","easeInOutBack","easeInBounce","easeOutBounce","m","d","easeInOutBounce","lim","l","h","p2b","n2b","b2n","n2p","map$1","A","B","C","D","E","F","f","hex","h1","h2","eq","HUE_RE","hsl2rgbn","hsv2rgbn","hwb2rgbn","w","rgb","rgb2hsl","r","hueValue","calln","hsl2rgb","hue","Z","Y","X","W","V","U","T","S","R","Q","P","O","N","M","L","K","G","H","I","J","names$1","OiceXe","antiquewEte","aqua","aquamarRe","azuY","beige","bisque","black","blanKedOmond","Xe","XeviTet","bPwn","burlywood","caMtXe","KartYuse","KocTate","cSO","cSnflowerXe","cSnsilk","crimson","cyan","xXe","xcyan","xgTMnPd","xWay","xgYF","xgYy","xkhaki","xmagFta","xTivegYF","xSange","xScEd","xYd","xsOmon","xsHgYF","xUXe","xUWay","xUgYy","xQe","xviTet","dAppRk","dApskyXe","dimWay","dimgYy","dodgerXe","fiYbrick","flSOwEte","foYstWAn","fuKsia","gaRsbSo","ghostwEte","gTd","gTMnPd","Way","gYF","gYFLw","gYy","honeyMw","hotpRk","RdianYd","Rdigo","ivSy","khaki","lavFMr","lavFMrXsh","lawngYF","NmoncEffon","ZXe","ZcSO","Zcyan","ZgTMnPdLw","ZWay","ZgYF","ZgYy","ZpRk","ZsOmon","ZsHgYF","ZskyXe","ZUWay","ZUgYy","ZstAlXe","ZLw","lime","limegYF","lRF","magFta","maPon","VaquamarRe","VXe","VScEd","VpurpN","VsHgYF","VUXe","VsprRggYF","VQe","VviTetYd","midnightXe","mRtcYam","mistyPse","moccasR","navajowEte","navy","Tdlace","Tive","TivedBb","Sange","SangeYd","ScEd","pOegTMnPd","pOegYF","pOeQe","pOeviTetYd","papayawEp","pHKpuff","peru","pRk","plum","powMrXe","purpN","YbeccapurpN","Yd","Psybrown","PyOXe","saddNbPwn","sOmon","sandybPwn","sHgYF","sHshell","siFna","silver","skyXe","UXe","UWay","UgYy","snow","sprRggYF","stAlXe","tan","teO","tEstN","tomato","Qe","viTet","JHt","wEte","wEtesmoke","Lw","LwgYF","names","RGB_RE","to","modHSL","ratio","clone","proto","fromObject","input","functionParse","exec","rgbParse","p1","p2","hwb2rgb","hsv2rgb","hueParse","Color","constructor","ret","unpacked","tkeys","j","ok","nk","replace","parseInt","unpack","transparent","toLowerCase","nameParse","_rgb","_valid","valid","rgbString","undefined","hexString","isShort","alpha","hslString","mix","color","weight","c1","c2","w2","w1","interpolate","rgb1","rgb2","clearer","greyscale","val","opaquer","negate","lighten","darken","saturate","desaturate","rotate","deg","index_esm","isPatternOrGradient","getHoverColor","overrides","descriptors","getScope$1","scope","defaults","_descriptors","animation","backgroundColor","devicePixelRatio","context","platform","getDevicePixelRatio","events","font","family","style","lineHeight","hover","hoverBackgroundColor","ctx","hoverBorderColor","hoverColor","indexAxis","interaction","mode","intersect","includeInvisible","maintainAspectRatio","onHover","parsing","responsive","scale","showLine","drawActiveElementsOnTop","describe","get","override","route","name","targetScope","targetName","scopeObject","targetScopeObject","privateName","defineProperties","writable","enumerable","local","_scriptable","startsWith","_indexable","_fallback","_measureText","gc","longest","string","textWidth","measureText","_longestText","arrayOfThings","cache","garbageCollect","save","jlen","thing","nestedThing","restore","gcLen","_alignPixel","pixel","currentDevicePixelRatio","halfWidth","clearCanvas","canvas","getContext","resetTransform","clearRect","drawPoint","drawPointLegend","xOffset","yOffset","cornerRadius","pointStyle","rotation","radius","rad","translate","drawImage","beginPath","ellipse","arc","closePath","moveTo","lineTo","SQRT1_2","rect","fill","stroke","_isPointInArea","point","area","margin","left","right","top","bottom","clipArea","clip","unclipArea","_steppedLineTo","previous","flip","midpoint","_bezierCurveTo","bezierCurveTo","cp1x","cp2x","cp1y","cp2y","renderText","text","opts","strokeWidth","strokeColor","translation","fillStyle","textAlign","textBaseline","setRenderOpts","strokeStyle","lineWidth","strokeText","fillText","decorateText","strikethrough","underline","metrics","actualBoundingBoxLeft","actualBoundingBoxRight","actualBoundingBoxAscent","actualBoundingBoxDescent","yDecoration","decorationWidth","addRoundedRectPath","topLeft","bottomLeft","bottomRight","topRight","LINE_HEIGHT","RegExp","FONT_STYLE","toLineHeight","matches","_readValueToProps","props","objProps","read","prop","toTRBL","toTRBLCorners","toPadding","toFont","fallback","console","warn","toFontString","resolve","inputs","info","cacheable","createContext","parentContext","_createResolver","scopes","prefixes","rootScopes","getTarget","_resolve","Symbol","toStringTag","_cacheable","_scopes","_rootScopes","_getTarget","Proxy","deleteProperty","_keys","_cached","proxy","prefix","readKey","needsSubResolver","createSubResolver","_resolveWithPrefixes","getOwnPropertyDescriptor","Reflect","getPrototypeOf","getKeysFromAllScopes","includes","ownKeys","storage","_storage","_attachContext","subProxy","descriptorDefaults","_proxy","_context","_subProxy","_stack","setContext","receiver","isScriptable","Error","join","delete","_resolveScriptable","isIndexable","arr","filter","_resolveArray","_resolveWithContext","allKeys","configurable","scriptable","indexable","_allKeys","resolveFallback","getScope","parent","addScopes","parentScopes","parentFallback","allScopes","addScopesFromKey","subGetTarget","resolveKeysFromAllScopes","_parseObjectDataRadialScale","_parsing","parsed","parse","EPSILON","getPoint","skip","getValueAxis","splineCurve","firstPoint","middlePoint","afterPoint","current","next","d01","d12","s01","s12","fa","fb","capControlPoint","pt","_updateBezierControlPoints","loop","controlPoints","spanGaps","cubicInterpolationMode","valueAxis","pointsLen","deltaK","mK","pointBefore","pointCurrent","pointAfter","slopeDelta","alphaK","betaK","tauK","squaredMagnitude","monotoneAdjust","delta","iPixel","vPixel","monotoneCompute","splineCurveMonotone","prev","tension","capBezierPoints","inArea","inAreaPrev","inAreaNext","_isDomSupported","_getParentNode","domNode","parentNode","host","parseMaxStyle","styleValue","parentProperty","valueInPixels","getComputedStyle","positions","getPositionedStyle","styles","suffix","pos","getRelativePosition","evt","borderBox","boxSizing","paddings","borders","box","touches","offsetX","offsetY","shadowRoot","useOffsetPos","getBoundingClientRect","clientX","clientY","getCanvasPosition","round1","retinaScale","forceRatio","forceStyle","pixelRatio","deviceHeight","deviceWidth","setTransform","supportsEventListenerOptions","passiveSupported","passive","removeEventListener","readUsedSize","el","getPropertyValue","getStyle","_pointInLine","_steppedInterpolation","_bezierInterpolation","cp1","cp2","intlCache","Map","formatNumber","num","locale","cacheKey","JSON","stringify","formatter","Intl","NumberFormat","getNumberFormat","format","getRtlAdapter","rtl","rectX","setWidth","xPlus","leftForLtr","itemWidth","getRightToLeftAdapter","_itemWidth","overrideTextDirection","direction","original","getPropertyPriority","setProperty","prevTextDirection","restoreTextDirection","propertyFn","between","compare","normalize","normalizeSegment","_boundSegment","bounds","startBound","endBound","getSegment","prevValue","inside","subStart","_boundSegments","sub","readStyle","borderCapStyle","borderDash","borderDashOffset","borderJoinStyle","styleChanged","prevStyle","animator","_request","_charts","_running","_lastDate","_notify","anims","date","callbacks","numSteps","duration","initial","currentStep","_refresh","_update","now","remaining","running","draw","_active","_total","tick","pop","_getAnims","complete","progress","listen","event","cb","reduce","acc","cur","_duration","stop","cancel","remove","interpolators","boolean","factor","c0","Animation","cfg","currentValue","_fn","_easing","easing","_start","_loop","_target","_prop","_from","_to","_promises","active","update","elapsed","remain","wait","promises","Promise","res","rej","resolved","method","animationOptions","colors","properties","numbers","resize","show","animations","visible","hide","Animations","config","_chart","_properties","configure","animatedProps","getOwnPropertyNames","option","_animateOptions","newOptions","$shared","$animations","resolveTargetOptions","_createAnimations","anim","all","awaitAll","then","scaleClip","allowedOverflow","getSortedDatasetIndices","filterVisible","metasets","_getSortedDatasetMetas","applyStack","stack","dsIndex","singleMode","otherValue","isStacked","stacked","getOrCreateStack","stacks","stackKey","indexValue","subStack","getLastIndexInStack","vScale","positive","getMatchingVisibleMetas","updateStacks","controller","_cachedMeta","_stacks","iAxis","vAxis","indexScale","valueScale","getStackKey","_top","_bottom","getFirstScaleId","shift","clearStacks","isDirectUpdateMode","cloneIfNotShared","cached","shared","DatasetController","_ctx","_cachedDataOpts","getMeta","_type","_data","_objectData","_sharedOptions","_drawStart","_drawCount","enableOptionSharing","supportsDecimation","$context","_syncList","initialize","linkScales","_stacked","addElements","updateIndex","dataset","getDataset","chooseId","xid","xAxisID","yid","yAxisID","rid","rAxisID","iid","iAxisID","vid","vAxisID","getScaleForId","rScale","getDatasetMeta","scaleID","_getOtherScale","_destroy","_dataCheck","adata","convertObjectDataToArray","isExtensible","defineProperty","base","object","datasetElementType","buildOrUpdateElements","resetNewElements","stackChanged","oldStacked","_resyncElements","scopeKeys","datasetScopeKeys","getOptionScopes","createResolver","parseArrayData","parseObjectData","parsePrimitiveData","isNotInOrderComparedToPrev","getLabels","singleScale","xAxisKey","yAxisKey","getParsed","getDataElement","updateRangeFromParsed","parsedValue","NaN","getMinMax","canStack","otherScale","hidden","createStack","NEGATIVE_INFINITY","otherMin","otherMax","_skip","getAllParsedValues","getMaxOverflow","getLabelAndValue","getLabelForValue","_clip","toClip","defaultClip","chartArea","resolveDatasetElementOptions","resolveDataElementOptions","dataIndex","raw","createDataContext","createDatasetContext","_resolveElementOptions","dataElementType","elementType","sharing","datasetElementScopeKeys","resolveNamedOptions","freeze","_resolveAnimations","transition","datasetAnimationScopeKeys","getSharedOptions","includeOptions","sharedOptions","_animationsDisabled","_getSharedOptions","firstOpts","previouslySharedOptions","updateSharedOptions","updateElement","_setStyle","removeHoverStyle","setHoverStyle","_removeDatasetHoverStyle","_setDatasetHoverStyle","arg1","arg2","numMeta","numData","_insertElements","_removeElements","move","updateElements","removed","_sync","_dataChanges","_onDataPush","arguments","_onDataPop","_onDataShift","_onDataSplice","newCount","_onDataUnshift","computeMinSampleSize","_cache","$bar","visibleMetas","concat","sort","getAllScaleValues","curr","_length","updateMinAndPrev","ticks","getPixelForTick","parseValue","entry","startValue","endValue","barStart","barEnd","_custom","parseFloatBar","parseArrayOrPrimitive","isFloatBar","custom","setBorderSkipped","edge","borderSkipped","horizontal","borderProps","enableBorderRadius","parseEdge","orig","v2","startEnd","setInflateAmount","inflateAmount","iAxisKey","vAxisKey","super","bars","getBasePixel","isHorizontal","ruler","_getRuler","vpixels","head","_calculateBarValuePixels","ipixels","_calculateBarIndexPixels","center","_getStacks","grouped","skipNull","_getStackCount","_getStackIndex","pixels","barThickness","_startPixel","_endPixel","stackCount","categoryPercentage","barPercentage","baseValue","minBarLength","actualBase","floating","getDataVisibility","barSign","startPixel","getPixelForDecimal","endPixel","halfGrid","getLineWidthForValue","maxBarThickness","Infinity","percent","chunk","computeFlexCategoryTraits","thickness","computeFitCategoryTraits","stackIndex","rects","_index_","offset","grid","_value_","beginAtZero","tooltip","innerRadius","outerRadius","getter","_getRotation","_getCircumference","circumference","_getRotationExtents","isDatasetVisible","arcs","spacing","getMaxBorderWidth","getMaxOffset","maxSize","cutout","chartWeight","_getRingWeight","ratioX","ratioY","startAngle","endAngle","startX","startY","endX","endY","calcMax","calcMin","maxX","maxY","minX","minY","getRatioAndOffset","maxRadius","radiusLength","_getVisibleDatasetWeightTotal","total","calculateTotal","_getRingWeightOffset","_circumference","animateRotate","calculateCircumference","animationOpts","centerX","centerY","animateScale","metaData","borderAlign","hoverBorderWidth","hoverOffset","ringWeightOffset","aspectRatio","generateLabels","legendItem","toggleDataVisibility","tooltipItem","dataLabel","formattedValue","_dataset","_datasetIndex","_decimated","animated","maxGapLength","directUpdate","prevParsed","nullData","border","lastPoint","updateControlPoints","bind","_updateRadius","minSize","cutoutPercentage","getVisibleDatasetCount","xCenter","yCenter","datasetStartAngle","getIndexAngle","defaultAngle","countVisibleElements","_computeAngle","getDistanceFromCenterForValue","angleLines","display","circular","pointLabels","_fullLoop","pointPosition","getPointPositionForValue","Element","tooltipPosition","useFinalPosition","getProps","hasValue","final","defaultRoutes","formatters","numeric","tickValue","notation","maxTick","calculateDelta","logDelta","numDecimal","minimumFractionDigits","maximumFractionDigits","logarithmic","Ticks","newTicks","majorStart","majorEnd","ceil","grace","drawBorder","drawOnChartArea","drawTicks","tickLength","tickWidth","tickColor","padding","minRotation","maxRotation","mirror","textStrokeWidth","textStrokeColor","autoSkip","autoSkipPadding","labelOffset","minor","major","crossAlign","showLabelBackdrop","backdropColor","backdropPadding","offsetFromEdge","sample","numItems","increment","getPixelForGridLine","offsetGridLines","validIndex","lineValue","getTickMarkLength","getTitleHeight","titleAlign","position","reverseAlign","Scale","_margins","paddingTop","labelRotation","_range","_gridLineItems","_labelItems","_labelSizes","_maxLength","_longestTextCache","_reversePixels","_userMax","_userMin","_suggestedMax","_suggestedMin","_ticksLength","_borderValue","_dataLimitsCached","init","suggestedMin","suggestedMax","metas","getPadding","getTicks","xLabels","yLabels","beforeLayout","beforeUpdate","margins","tickOpts","sampleSize","beforeSetDimensions","setDimensions","afterSetDimensions","beforeDataLimits","determineDataLimits","afterDataLimits","minmax","change","keepZero","_addGrace","beforeBuildTicks","buildTicks","afterBuildTicks","samplingEnabled","_convertTicksToLabels","beforeCalculateLabelRotation","calculateLabelRotation","afterCalculateLabelRotation","ticksLimit","maxTicksLimit","_tickSize","maxScale","maxChart","determineMaxTicks","majorIndices","enabled","getMajorIndices","numMajorIndices","skipMajors","evenMajorSpacing","getEvenSpacing","factors","_factorize","calculateSpacing","avgMajorSpacing","afterAutoSkip","beforeFit","fit","afterFit","afterUpdate","reversePixels","_alignToPixels","alignToPixels","_callHooks","notifyPlugins","beforeTickToLabelConversion","generateTickLabels","afterTickToLabelConversion","numTicks","maxLabelDiagonal","_isVisible","labelSizes","_getLabelSizes","maxLabelWidth","widest","maxLabelHeight","highest","asin","titleOpts","gridOpts","titleHeight","tickPadding","angleRadians","labelHeight","labelWidth","_calculatePadding","_handleMargins","isRotated","labelsBelowTicks","offsetLeft","offsetRight","isFullSize","fullSize","_computeLabelSizes","caches","widths","heights","tickFont","fontString","nestedLabel","widestLabelSize","highestLabelSize","_resolveTickFontOptions","valueAt","idx","getValueForPixel","decimal","getDecimalForPixel","getBaseValue","createTickContext","optionTicks","rot","_computeGridLineItems","ticksLength","tl","borderOpts","axisWidth","axisHalfWidth","alignBorderValue","borderValue","alignedLineValue","tx1","ty1","tx2","ty2","x1","y1","x2","y2","positionAxisID","limit","step","optsAtIndex","lineColor","tickBorderDash","tickBorderDashOffset","_computeLabelItems","tickAndPadding","hTickAndPadding","lineCount","textOffset","_getXAxisLabelAlignment","_getYAxisLabelAlignment","halfCount","backdrop","tickTextAlign","labelPadding","_computeLabelArea","drawBackground","fillRect","findIndex","drawGrid","drawLine","setLineDash","lineDashOffset","lastLineWidth","drawLabels","drawTitle","titleX","titleY","titleArgs","_layers","tz","z","gz","getSortedVisibleDatasetMetas","axisID","_maxDigits","TypedRegistry","isForType","isPrototypeOf","parentScope","isIChartComponent","itemDefaults","routes","propertyParts","sourceName","sourceScope","routeDefaults","registerDefaults","unregister","registry","controllers","_typedRegistries","_each","addControllers","addPlugins","addScales","getController","_get","getElement","getPlugin","getScale","removeControllers","removeElements","removePlugins","removeScales","typedRegistry","arg","reg","_getRegistryForType","_exec","itemReg","component","camelMethod","__proto__","DateAdapter","chartOptions","formats","timestamp","amount","unit","startOf","weekday","endOf","members","adapters","_date","binarySearch","metaset","lookupMethod","getRange","evaluateInteractionItems","handler","getIntersectItems","isPointInArea","inRange","getNearestItems","distanceMetric","useX","useY","deltaX","deltaY","getDistanceMetricForAxis","minDistance","getCenterPoint","getNearestCartesianItems","getNearestRadialItems","getAxisItems","rangeMethod","intersectsItem","Interaction","modes","nearest","STATIC_POSITIONS","filterByPosition","filterDynamicPositionByAxis","sortByWeight","getCombinedMax","maxPadding","updateMaxPadding","boxPadding","updateDims","params","layout","newWidth","outerWidth","newHeight","outerHeight","widthChanged","heightChanged","same","other","getMargins","marginForPositions","fitBoxes","boxes","refitBoxes","refit","setBoxDims","placeBoxes","userPadding","placed","stackWeight","autoPadding","layouts","addBox","removeBox","layoutItem","minPadding","availableWidth","availableHeight","layoutBoxes","wrapBoxes","wrap","centerHorizontal","centerVertical","leftAndTop","rightAndBottom","vertical","buildLayoutBoxes","verticalBoxes","horizontalBoxes","visibleVerticalBoxCount","vBoxMaxWidth","hBoxMaxHeight","buildStacks","setLayoutDims","updatePos","handleMaxPadding","BasePlatform","acquireContext","releaseContext","getMaximumSize","isAttached","updateConfig","BasicPlatform","EVENT_TYPES","touchstart","touchmove","touchend","pointerenter","pointerdown","pointermove","pointerup","pointerleave","pointerout","isNullOrEmpty","eventListenerOptions","removeListener","nodeListContains","nodeList","createAttachObserver","observer","MutationObserver","entries","trigger","addedNodes","removedNodes","observe","childList","subtree","createDetachObserver","drpListeningCharts","oldDevicePixelRatio","onWindowResize","dpr","createResizeObserver","container","clientWidth","ResizeObserver","contentRect","listenDevicePixelRatioChanges","releaseObserver","disconnect","unlistenDevicePixelRatioChanges","createProxyAndListen","native","fromNativeEvent","addListener","DomPlatform","renderHeight","getAttribute","renderWidth","displayWidth","displayHeight","initCanvas","removeAttribute","setAttribute","proxies","$proxies","attach","detach","bbWidth","bbHeight","containerSize","containerStyle","containerBorder","containerPadding","clientHeight","getContainerSize","isConnected","_detectPlatform","OffscreenCanvas","PluginService","_init","notify","hook","_createDescriptors","descriptor","plugin","cancelable","invalidate","_oldCache","_notifyStateChanges","localIds","allPlugins","getOpts","pluginOpts","createDescriptors","previousDescriptors","some","pluginScopeKeys","getIndexAxis","datasetDefaults","determineAxis","scaleOptions","initOptions","chartDefaults","configScales","chartIndexAxis","firstIDs","scaleConf","error","defaultId","getDefaultScaleIDFromAxis","defaultScaleOptions","defaultID","getAxisFromDefaultScaleID","mergeScaleConfig","initData","keyCache","keysCached","cachedKeys","generate","addIfFound","Config","_config","initConfig","_scopeCache","_resolverCache","clearCache","clear","datasetType","additionalOptionScopes","_cachedScopes","mainScope","resetCache","keyLists","chartOptionScopes","subPrefixes","getResolver","hasFunction","needContext","resolverCache","KNOWN_POSITIONS","positionIsHorizontal","compare2Level","l1","l2","onAnimationsComplete","onComplete","onAnimationProgress","onProgress","getCanvas","getElementById","instances","getChart","moveNumericKeys","intKey","userConfig","initialCanvas","existingChart","_options","_aspectRatio","_metasets","_lastEvent","_listeners","_responsiveListeners","_sortedMetasets","_plugins","_hiddenIndices","attached","_doResize","timeout","clearTimeout","debounce","resizeDelay","_initialize","bindEvents","_resizeBeforeDraw","_resize","newSize","newRatio","onResize","render","ensureScalesHaveIDs","axisOptions","buildOrUpdateScales","scaleOpts","updated","isRadial","dposition","dtype","scaleType","hasUpdated","_updateMetasets","_destroyDatasetMeta","_removeUnreferencedMetasets","buildOrUpdateControllers","newControllers","order","ControllerClass","_resetElements","animsDisabled","_updateScales","_checkEventBindings","_updateHiddenIndices","_minPadding","_updateLayout","_updateDatasets","_eventHandler","_updateHoverStyles","existingEvents","newEvents","unbindEvents","changes","_getUniformDataChanges","datasetCount","makeSet","changeSet","noArea","_idx","_updateDataset","layers","_drawDatasets","_drawDataset","useClip","getElementsAtEventForMode","setDatasetVisibility","_updateVisibility","_stop","toBase64Image","toDataURL","bindUserEvents","bindResponsiveEvents","_add","_remove","detached","updateHoverStyle","getActiveElements","setActiveElements","activeElements","lastActive","replay","hoverOptions","deactivated","activated","inChartArea","eventFilter","_handleEvent","_getActiveElements","isClick","_isClickEvent","lastEvent","determineLastEvent","invalidatePlugins","clipArc","pixelMargin","angleMargin","rThetaToXY","theta","pathArc","innerR","spacingOffset","avNogSpacingRadius","angleOffset","outerStart","outerEnd","innerStart","innerEnd","angleDelta","borderRadius","halfThickness","innerLimit","computeOuterLimit","outerArcLimit","parseBorderRadius$1","outerStartAdjustedRadius","outerEndAdjustedRadius","outerStartAdjustedAngle","outerEndAdjustedAngle","innerStartAdjustedRadius","innerEndAdjustedRadius","innerStartAdjustedAngle","innerEndAdjustedAngle","pCenter","p4","p8","outerStartX","outerStartY","outerEndX","outerEndY","version","fullCircles","chartX","chartY","rAdjust","betweenAngles","withinRadius","halfAngle","halfRadius","radiusOffset","drawArc","inner","lineJoin","drawFullCircleBorders","setStyle","lineCap","pathVars","paramsStart","paramsEnd","segmentStart","segmentEnd","outside","pathSegment","lineMethod","stepped","getLineMethod","fastPathSegment","prevX","lastY","avgX","countX","pointIndex","drawX","truncX","_getSegmentMethod","usePath2D","Path2D","_path","_points","_segments","_pointsUpdated","segmentOptions","findStartAndEnd","chartContext","baseStyle","addStyle","st","dir","p0","p0DataIndex","p1DataIndex","doSplitByStyles","splitByStyles","solidSegments","_computeSegments","_interpolate","_getInterpolationMethod","interpolated","segmentMethod","path","strokePathWithCache","strokePathDirect","inRange$1","hitRadius","mouseX","mouseY","inXRange","inYRange","hoverRadius","getBarBounds","bar","half","skipOrLimit","skipX","skipY","addNormalRectPath","inflateRect","refRect","outer","maxW","maxH","parseBorderWidth","maxR","enableBorder","parseBorderRadius","boundingRects","addRectPath","cleanDecimatedDataset","cleanDecimatedData","plugin_decimation","algorithm","beforeElementsUpdate","xAxis","decimated","getStartAndCountOfVisiblePointsSimplified","threshold","samples","bucketWidth","sampledIndex","endIndex","maxAreaPoint","maxArea","nextA","avgY","avgRangeStart","avgRangeEnd","avgRangeLength","rangeOffs","rangeTo","pointAx","pointAy","lttbDecimation","minIndex","maxIndex","startIndex","xMin","dx","lastIndex","intermediateIndex1","intermediateIndex2","minMaxDecimation","_getBounds","_findSegmentEnd","_getEdge","_createBoundaryLine","boundary","linePoints","_pointsFromSegments","_shouldApplyFill","_resolveTarget","propagate","visited","_decodeFill","fillOption","parseFillOption","firstCh","decodeTargetIndex","addPointsBelow","sourcePoint","linesBelow","postponed","findPoint","unshift","pointValue","firstValue","lastValue","simpleArc","_drawfill","getLineByIndex","sourcePoints","below","getLinesBelow","_buildStackLine","_getTargetValue","computeCircularBoundary","_getTargetPixel","computeLinearBoundary","computeBoundary","lineOpts","above","clipVertical","doFill","clipY","lineLoop","tpoints","targetSegments","tgt","subBounds","fillSources","fillSource","src","notShape","clipBounds","interpolatedLineTo","targetLoop","interpolatedPoint","afterDatasetsUpdate","_args","$filler","beforeDraw","drawTime","beforeDatasetsDraw","beforeDatasetDraw","getBoxSize","labelOpts","boxHeight","boxWidth","usePointStyle","pointStyleWidth","itemHeight","_added","legendHitBoxes","_hoveredItem","doughnutMode","legendItems","columnSizes","lineWidths","buildLabels","labelFont","_computeTitleHeight","_fitRows","_fitCols","hitboxes","totalHeight","row","heightLimit","totalWidth","currentColWidth","currentColHeight","col","adjustHitBoxes","rtlHelper","hitbox","_draw","defaultColor","fontColor","halfFontSize","cursor","textDirection","lineDash","drawOptions","SQRT2","yBoxTop","xBoxLeft","drawLegendBox","_textX","titleFont","titlePadding","topPaddingPlusHalfFontSize","_getLegendItemAt","hitBox","lh","handleEvent","onLeave","isListened","hoveredItem","sameItem","plugin_legend","_element","afterEvent","ci","_padding","textSize","_drawArgs","fontOpts","plugin_title","titleBlock","createTitle","WeakMap","plugin_subtitle","positioners","eventPosition","nearestElement","tp","pushOrConcat","toPush","splitNewlines","String","createTooltipItem","getTooltipSize","body","footer","bodyFont","footerFont","titleLineCount","footerLineCount","bodyLineItemCount","combinedBodyLength","bodyItem","beforeBody","afterBody","titleSpacing","titleMarginBottom","displayColors","bodySpacing","footerMarginTop","footerSpacing","widthPadding","maxLineWidth","determineXAlign","yAlign","chartWidth","xAlign","caret","caretSize","caretPadding","doesNotFitWithAlign","determineAlignment","determineYAlign","getBackgroundPoint","alignment","paddingAndSize","alignX","alignY","getAlignedX","getBeforeAfterBodyLines","overrideCallbacks","opacity","_eventPosition","_size","_cachedAnimations","_tooltipItems","dataPoints","caretX","caretY","labelColors","labelPointStyles","labelTextColors","tooltipItems","getTitle","beforeTitle","afterTitle","getBeforeBody","getBody","bodyItems","scoped","beforeLabel","afterLabel","getAfterBody","getFooter","beforeFooter","afterFooter","_createItems","itemSort","labelColor","labelPointStyle","labelTextColor","positionAndSize","backgroundPoint","external","drawCaret","tooltipPoint","caretPosition","getCaretPosition","x3","y3","ptX","ptY","titleColor","_drawColorBox","colorX","rtlColorX","yOffSet","colorY","multiKeyBackground","outerX","innerX","strokeRect","drawBody","bodyAlign","bodyLineHeight","xLinePadding","fillLineOfText","bodyAlignForCalculation","textColor","bodyColor","drawFooter","footerAlign","footerColor","tooltipSize","quadraticCurveTo","_updateAnimationTarget","animX","animY","_willRender","hasTooltipContent","globalAlpha","positionChanged","_positionChanged","_ignoreReplayEvents","plugin_tooltip","afterInit","afterDraw","labelCount","_startValue","_valueRange","_addedLabels","added","addedLabels","addIfString","lastIndexOf","findOrAddLabel","relativeLabelSize","minSpacing","LinearScaleBase","_endValue","handleTickRangeOptions","setMin","setMax","minSign","maxSign","MAX_SAFE_INTEGER","MIN_SAFE_INTEGER","getTickLimit","maxTicks","stepSize","computeTickLimit","generationOptions","dataRange","precision","maxDigits","includeBounds","maxSpaces","rmin","rmax","countDefined","niceMin","niceMax","numSpaces","rounded","almostWhole","decimalPlaces","generateTicks$1","isMajor","tickVal","_zero","exp","endExp","endSignificand","significand","lastTick","generateTicks","getTickBackdropHeight","determineLimits","updateLimits","limits","hLimits","vLimits","getTextAlignForAngle","yForAngle","pathRadiusLine","getPointPosition","drawingArea","_pointLabels","_pointLabelItems","valueCount","pointLabelOpts","additionalAngle","centerPointLabels","getPointLabelContext","plFont","setCenterPoint","extra","outerDistance","pointLabelPosition","buildPointLabelItems","fitWithPointLabels","leftMovement","rightMovement","topMovement","bottomMovement","scalingFactor","getValueForDistanceFromCenter","scaledDistance","pointLabel","createPointLabelContext","distanceFromCenter","getBasePosition","getPointLabelPosition","backdropLeft","backdropTop","backdropWidth","backdropHeight","drawPointLabels","gridLineOpts","drawRadiusLine","animate","INTERVALS","millisecond","common","steps","second","minute","hour","day","week","month","quarter","year","UNITS","sorter","adapter","_adapter","parser","isoWeekday","_parseOpts","determineUnitForAutoTicks","minUnit","capacity","interval","addTick","time","timestamps","ticksFromTimestamps","majorUnit","setMajorTicks","_unit","_majorUnit","_offsets","_normalized","displayFormats","normalized","_applyBounds","_getLabelBounds","getLabelTimestamps","timeOpts","_generate","_filterBetween","_getLabelCapacity","determineUnitForFormatting","determineMajorUnit","initOffsets","offsetAfterAutoskip","getDecimalForValue","hasWeekday","getDataTimestamps","tooltipFormat","datetime","_tickFormatFunction","minorFormat","majorFormat","offsets","_getLabelSize","ticksOpts","tickLabelWidth","cosRotation","sinRotation","tickFontSize","exampleTime","exampleLabel","prevSource","nextSource","prevTarget","nextTarget","span","_table","_minPos","_tableRange","_getTimestampsForTable","buildLookupTable","registerables","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","definition"],"sourceRoot":""} \ No newline at end of file